реклама на сайте
подробности

 
 
5 страниц V  < 1 2 3 4 5 >  
Reply to this topicStart new topic
> есть ли методы дизеринга (dithering) для линейной интерполяции при повышении тактовой частоты (upsampling), хочется что-то аналогичное дизерингу при генерации синуса
Fat Robot
сообщение Apr 16 2015, 09:37
Сообщение #31


ʕʘ̅͜ʘ̅ʔ
*****

Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691



Когда у нас будет нужна консультация о том, что мне делать, и где мне писать, я к вам обязательно обращусь. Пока такой момент не наступил.

Цитата(Krys @ Apr 16 2015, 10:30) *
Если у вас больше нечего написать по теме, то просто не пишите сообщений.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 16 2015, 10:28
Сообщение #32


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Krys, вы добавили шум ко входному сигналу. А что будет, если добавить на выход?
Вообще, интерполяцию нужно как делать - добавить нулей в недостающие точки, и пропустить через ФНЧ, подавляющий частоты Fs_old, 2Fs_old...
У вас так мало выборок на период сигнала, что линейная интерполяция дает гармоники, доходящие до Fs_new. То есть, линейная интерполяция здесь не работает (или работает очень плохо).

Цитата(Fat Robot @ Apr 16 2015, 11:49) *
Есть также быстрые схемы деления, например на 3.

Подскажите, где подсмотреть.
Go to the top of the page
 
+Quote Post
blackfin
сообщение Apr 16 2015, 10:33
Сообщение #33


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(ViKo @ Apr 16 2015, 13:28) *
Подскажите, где подсмотреть.

В учебнике по арифметике?

A/3 = A*(65536/3)/65536 = [A*(15'b101010101010101)]>>16;
Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 16 2015, 10:42
Сообщение #34


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(blackfin @ Apr 16 2015, 13:33) *
В учебнике по арифметике?
A/3 = A*(65536/3)/65536 = [A*(15'b101010101010101)]>>16;

Дывысь, яка гарна формула!
А на 10 поделить, не подскажете, где почитать? sm.gif А на 11? 12?
Go to the top of the page
 
+Quote Post
blackfin
сообщение Apr 16 2015, 10:45
Сообщение #35


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(ViKo @ Apr 16 2015, 13:42) *
А на 10 поделить, не подскажете, где почитать? sm.gif А на 11? 12?

С какой целью интересуетесь? biggrin.gif
Go to the top of the page
 
+Quote Post
Fat Robot
сообщение Apr 16 2015, 10:50
Сообщение #36


ʕʘ̅͜ʘ̅ʔ
*****

Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691



Здесь, например.

Цитата(ViKo @ Apr 16 2015, 11:28) *
Подскажите, где подсмотреть.
Go to the top of the page
 
+Quote Post
petrov
сообщение Apr 16 2015, 20:04
Сообщение #37


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(Krys @ Apr 16 2015, 12:30) *
Так что перед интерполяцией у меня имеется возможность либо задать требования на полосу сигнала, либо произвести предварительное апсемплирование на 2 или даже на 4 (на другом устройстве, в котором есть ресурсы)


Так и интерполируйте в 4 раза на другом устройстве, в FPGA параболический интерполятор Фарроу, раза в 2 сложнее чем ваш линейный.
Go to the top of the page
 
+Quote Post
Krys
сообщение Apr 17 2015, 02:54
Сообщение #38


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



petrov, Фарроу не годится в любом случае по ресурсам - сложнее он не раза в 2. Учитывая, что в линейной интерполяции нет умножителей вообще, а в Фарроу их 3 только на полином, да плюс ещё на коэффициенты.

Цитата(ViKo @ Apr 16 2015, 17:28) *
Krys, вы добавили шум ко входному сигналу. А что будет, если добавить на выход?
Это и в уме нетрудно представить: у красного графика на спектральной картинке просто добавится горизонтальная полка шума ))


Цитата(ViKo @ Apr 16 2015, 17:28) *
Вообще, интерполяцию нужно как делать - добавить нулей в недостающие точки, и пропустить через ФНЧ, подавляющий частоты Fs_old, 2Fs_old...
У вас так мало выборок на период сигнала, что линейная интерполяция дает гармоники, доходящие до Fs_new. То есть, линейная интерполяция здесь не работает (или работает очень плохо).
Всё, что Вы написали, совершенно очевидно, уж не обижайтесь ))


--------------------
Зная себе цену, нужно ещё и пользоваться спросом...
Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 17 2015, 04:33
Сообщение #39


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Зачем обижаться? И почему вы не принимаете во внимание очевидное (что линейная интерполяция не подходит)?
Самая первая картинка в теме, зеленый график, полоса сигнала зарезана - разве это интерполяция?
Go to the top of the page
 
+Quote Post
Hose
сообщение Apr 17 2015, 04:57
Сообщение #40


Частый гость
**

Группа: Участник
Сообщений: 82
Регистрация: 7-01-15
Пользователь №: 84 450



Первое что видно из картинок: первичный спектр имеет уровни на краях -55дб, если экстраполировать, то далее идет зеркальный канал. если вы хотите заглянуть ниже чем -55, то вам необходимо додумать исходный сигнал.
Далее из картинки очевидно, что при первичном повышении частоты дискретизации было копирование отчетов вместо добивания нулями, что уже дало искажения спектра в основной полосе. Красная картинка это правильное повышение частоты + сик фильтр с полюсом в центре зеркала. Зато эффект от цика виден... Предлагаю поставить несколько циков с разными по частоте полюсами в зеркалах. Понятно, что при таких коэффициентах интерполяции шаг полюсов будет крупным, поэтому можно предварительно сделать повышение часоты на больше чем нужно, можно не кратно 2 и после фильтрации понизить.

В ддс шум подмешивается к фазе сигнала. В вашем случае вам необходимо подмешать шум к коэффициентам фильтра, если это цик, то заставить двигаться полюс в небольших пределах, с часотой выше чем полоса анализатора спектра, тогда случится визуальное подавление, но это не более чем самообман)
Go to the top of the page
 
+Quote Post
Krys
сообщение Apr 17 2015, 05:18
Сообщение #41


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



Цитата(ViKo @ Apr 17 2015, 11:33) *
Зачем обижаться?
за сказанное другими словами "спасибо, Кэп" ))))


Цитата(ViKo @ Apr 17 2015, 11:33) *
И почему вы не принимаете во внимание очевидное (что линейная интерполяция не подходит)?
Потому что все в этой теме пытаются подменить вопрос. Мне не нужен ответ на вопрос, какой тип интерполяции здесь подойдёт. Мне нужен ответ, как размазать спектр. Потому что этот вопрос может быть актуален и для других типов интерполяции. Пусть используем более качественную интерполяцию, получим лучше результат. Но пусть он нас по SFDR не устраивает. Зато мы видим, что спектр ошибки неравномерен, откуда возникает желание его размазать, как это сделано в DDS. Неважно какая интерполяция, т.к. нет предела совершенству.


Цитата(ViKo @ Apr 17 2015, 11:33) *
Самая первая картинка в теме, зеленый график, полоса сигнала зарезана - разве это интерполяция?
Ну там подписано. Это классическая интерполяция через КИХ-фильтр. Полоса зарезана - что Вы имеете в виду? Я использовал ЛЧМ с полосой в половину возможной, я об этом где-то выше упомянул.

Цитата(Hose @ Apr 17 2015, 11:57) *
Далее из картинки очевидно, что при первичном повышении частоты дискретизации было копирование отчетов вместо добивания нулями, что уже дало искажения спектра в основной полосе.
Копирования не было, была линейная интерполяция. Это показывает картинка во временной области. Там и подписи есть, что где.



Цитата(Hose @ Apr 17 2015, 11:57) *
Красная картинка это правильное повышение частоты + сик фильтр с полюсом в центре зеркала. Зато эффект от цика виден...
Это обычный КИХ через fdatool. Он больше нужен, чтобы его считать эталонным, а потом вычесть его из линейно-интерполированного, чтобы увидеть ошибку.


Цитата(Hose @ Apr 17 2015, 11:57) *
Предлагаю поставить несколько циков с разными по частоте полюсами в зеркалах.
Спасибо, идея понятна, но по ресурсам фильтры не годятся. Это во много раз сложнее, чем реализованная линейная интерполяция.


--------------------
Зная себе цену, нужно ещё и пользоваться спросом...
Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 17 2015, 06:52
Сообщение #42


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(Krys @ Apr 17 2015, 08:18) *
за сказанное другими словами "спасибо, Кэп" ))))

Я не спрашивал, за что. rolleyes.gif
Цитата
Ну там подписано. Это классическая через КИХ-фильтр. Полоса зарезана - что Вы имеете в виду? Я использовал ЛЧМ с полосой в половину возможной, я об этом где-то выше упомянул.

А, у вас там частота относительная, и полоса синего сигнала равна полосе зеленого. Это же очевидно!
Go to the top of the page
 
+Quote Post
serjj
сообщение Apr 17 2015, 06:55
Сообщение #43


Знающий
****

Группа: Участник
Сообщений: 527
Регистрация: 4-06-14
Из: Санкт-Петербург
Пользователь №: 81 866



Цитата
Мне нужен ответ, как размазать спектр.

Я наверное пессимист потому что наверное никак.
Цитата
Спасибо, идея понятна, но по ресурсам фильтры не годятся. Это во много раз сложнее, чем реализованная линейная интерполяция.

В LE/память/умножители/какие_еще_у_нас_там_ресурсы желательно приведите подтверждение этому удтверждению. А то не конструктивно как-то rolleyes.gif
Go to the top of the page
 
+Quote Post
Fat Robot
сообщение Apr 17 2015, 07:09
Сообщение #44


ʕʘ̅͜ʘ̅ʔ
*****

Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691



А как же amplitude dithering?
Он, правда, по очевидным причинам, мало где используется на практике.

Цитата(Hose @ Apr 17 2015, 05:57) *
В ддс шум подмешивается к фазе сигнала.

Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 17 2015, 07:25
Сообщение #45


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Добавили промежуточных выборок, добавьте к ним шум, пропустите через фильтр. Что мешает проверить?
Go to the top of the page
 
+Quote Post

5 страниц V  < 1 2 3 4 5 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 11th August 2025 - 14:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.02337 секунд с 7
ELECTRONIX ©2004-2016