IPB

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V  < 1 2  
Ответить в данную темуНачать новую тему
> Линейная интерполяция - вносит что-нибудь?, о передискретизации
orthodox
сообщение 9.9.2010, 19:41
Сообщение #21


ДИКТАТОР
Иконка группы

Группа: Мод
Сообщений: 23105
Регистрация: 20.11.2009
Из: Житомир
Пользователь №: 3



Цитата(Designer56 @ 9.9.2010, 20:17) *
Собственно, поэтому так и делают.

Я не спорил, что вы описали корректное решение.
Но есть сомнения насчет выгодности.
не более ли выгодно попробовать угадать заранее полученную кривую,
исходя из среднеарифметического с какими-то еще там простыми перевычислениями,
забить промежуточные отсчеты близкой к "результату" предсказательной херней,
и уж после дофильтровать чуток.

Суть в была в подозрении, что не так ли и делается в серийных CD -плеерах, например....
Перейти в начало страницы
 
+Цитировать сообщение
Designer56
сообщение 9.9.2010, 19:48
Сообщение #22


Активный участник
***

Группа: Пользователи
Сообщений: 7045
Регистрация: 22.11.2009
Из: Уфа
Пользователь №: 18



Цитата
не более ли выгодно попробовать угадать заранее полученную кривую,

вот фильтр её сразу и угадывает... Я понимаю, это сразу вызывает протест- взять и повыломать зубья у расчески. Но, тем не менее- если предполагается передискретизация с целью упрощения аналогового фильтра ( а другой цели у этой операции нет и не может быть), то заполнение нулями- оптимально. Кстати, вот всякие ДВД- аудио с дискретизацией до 192 квб/сек этот вопрос в лоб решают. Можно вообще безо всего все делать, в примитивным аналоговым фильтром, если последующая аппаратура выдерживает весь лишний шум на ВЧ, и не генерирует продукиов интермодуляции.
Перейти в начало страницы
 
+Цитировать сообщение
A.T.Tappman
сообщение 10.9.2010, 9:31
Сообщение #23


ЕРЖ-антисемит
***

Группа: Пользователи
Сообщений: 1893
Регистрация: 24.11.2009
Из: Великий Новгород
Пользователь №: 23



А вот ещё другая хреня есть. Upsampling называется http://www.n-audio.com/articles/upsampling.htm
Перейти в начало страницы
 
+Цитировать сообщение
orthodox
сообщение 10.9.2010, 12:39
Сообщение #24


ДИКТАТОР
Иконка группы

Группа: Мод
Сообщений: 23105
Регистрация: 20.11.2009
Из: Житомир
Пользователь №: 3



Цитата(A.T.Tappman @ 10.9.2010, 10:31) *
А вот ещё другая хреня есть. Upsampling называется http://www.n-audio.com/articles/upsampling.htm

Это наоборот, как раз оно и есть.
Но хорошая статья, кое-что становится более понятным.
остается один только один вопрос - фильтры эти рекурсивные или нет, кто знает?
Перейти в начало страницы
 
+Цитировать сообщение
zzzzzzzz
сообщение 10.9.2010, 14:00
Сообщение #25


начинающий нейрохирург-любитель и очень добрый таксидермист
***

Группа: Пользователи
Сообщений: 2578
Регистрация: 21.11.2009
Из: РФ, Земля
Пользователь №: 14



Я когда-то давно занимался интерполяцией по нескольким отсчетам. До четырех исходных точек еще вполне простые алгебраические формулы получаются. И получаемая аналитическая функция вида у=к1*х3 + к2*х2 + к3*х + к4 позволяет восстановить ЛЮБОЕ количество точек внутри функции из четырех физических отсчетов с "сумасшедшей точностью"(с) для аудио. Любой микроконтроллер осилит такие простые расчеты. Если нужно, могу отсканерить свои старенькие записки с выведенными формулками.

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

Т.е. интерполяцию целесообразно проводить не по двум отсчетам, а по нескольким соседним. Без итерационных процессов, а тупой арифметикой. Сразу получая кучу (нужное количество) внутренних точек.
Перейти в начало страницы
 
+Цитировать сообщение
Designer56
сообщение 10.9.2010, 14:00
Сообщение #26


Активный участник
***

Группа: Пользователи
Сообщений: 7045
Регистрация: 22.11.2009
Из: Уфа
Пользователь №: 18



Цитата
остается один только один вопрос - фильтры эти рекурсивные или нет, кто знает?

Исключительно нерекурсивные. Рекурсивные таких вещей не позволяют
Перейти в начало страницы
 
+Цитировать сообщение
zzzzzzzz
сообщение 10.9.2010, 18:35
Сообщение #27


начинающий нейрохирург-любитель и очень добрый таксидермист
***

Группа: Пользователи
Сообщений: 2578
Регистрация: 21.11.2009
Из: РФ, Земля
Пользователь №: 14



Цитата(Огурцов @ 10.9.2010, 18:39) *
Нужно! Не звука для, а приводов ради.

Если пригодится, - буду только рад. smile.gif

Прикрепленный файл  Интерполяция.doc ( 33 килобайт ) Кол-во скачиваний: 43
Перейти в начало страницы
 
+Цитировать сообщение
Designer56
сообщение 10.9.2010, 19:17
Сообщение #28


Активный участник
***

Группа: Пользователи
Сообщений: 7045
Регистрация: 22.11.2009
Из: Уфа
Пользователь №: 18



И мне так же кажется
Перейти в начало страницы
 
+Цитировать сообщение
orthodox
сообщение 10.9.2010, 19:37
Сообщение #29


ДИКТАТОР
Иконка группы

Группа: Мод
Сообщений: 23105
Регистрация: 20.11.2009
Из: Житомир
Пользователь №: 3



Цитата(Designer56 @ 10.9.2010, 15:00) *
Исключительно нерекурсивные. Рекурсивные таких вещей не позволяют

Каких вещей?
Мне казалось, что у нерекурсивных с КИХ - как раз проблемы получить хорошее подавление и
проблемы с получить ЧХ с резким обрывом.

Другое дело, что рекурсивные звук обгадят, но сейчас как раз и интересно, что ж его гадит в промышленных устройствах-то...


Цитата(zzzzzzzz @ 10.9.2010, 19:35) *
Если пригодится, - буду только рад. smile.gif

Прикрепленный файл  Интерполяция.doc ( 33 килобайт ) Кол-во скачиваний: 43

Ну и что я увидел?
Мне показалось, что математики тут меньше, чем было бы
в ЦФ высокого порядка, если они нерекурсивные на самом деле - то порядок был бы высоким, да?

И это кажется не фильтр, да?

Отсюда опять же вопрос знатокам - не могли ли производители такой методой соблазниться, чтобы уменьшить общее число расчетов и облегчить работу фильтров?
Перейти в начало страницы
 
+Цитировать сообщение
Designer56
сообщение 10.9.2010, 20:23
Сообщение #30


Активный участник
***

Группа: Пользователи
Сообщений: 7045
Регистрация: 22.11.2009
Из: Уфа
Пользователь №: 18



да и там и там проблемы одинаковы- в конечном итоге определяются точностью коэффициентов, или их размерностью, по другому.
Цитата
Каких вещей?

передискретизацию и децимацию

Цитата(orthodox @ 10.9.2010, 23:37) *
Другое дело, что рекурсивные звук обгадят, но сейчас как раз и интересно, что ж его гадит в промышленных устройствах-то...


с чего они должны обгадить звук особенно? если правильно все сделано, то ничего не гадят
Перейти в начало страницы
 
+Цитировать сообщение
zzzzzzzz
сообщение 11.9.2010, 0:01
Сообщение #31


начинающий нейрохирург-любитель и очень добрый таксидермист
***

Группа: Пользователи
Сообщений: 2578
Регистрация: 21.11.2009
Из: РФ, Земля
Пользователь №: 14



Цитата(GuruKiller @ 10.9.2010, 21:14) *
8-битник может ниасилить (в рилтайме). Порвёт себе чего-нить в процессе smile.gif
Для 4-ёх точех математика нехилая. Может оказаться, что синк по +-5 точкам будет проще. Хотя кол-во точек может быть и большим. По 10 точкам в расчётах всего 10 умножений и 10 сложений. А здесь по 4 точкам туева хуча и умножений и сложений (и ещё делений ?).
Да ладно, не так уж и страшно.
К тому же, отвечая и Ортодоксу, - это ж аналитическая функция, которая точно проходит через полученные точки. И прелесть её как раз в точности. Плюс, можно посчитать, например, хоть 1000 промежуточных точек, облегчив последующую фильтрацию. Эти точки-то потом считаются очень быстро, когда коэффициенты определены.
Перейти в начало страницы
 
+Цитировать сообщение
Designer56
сообщение 11.9.2010, 8:23
Сообщение #32


Активный участник
***

Группа: Пользователи
Сообщений: 7045
Регистрация: 22.11.2009
Из: Уфа
Пользователь №: 18



я вот как- то издевался над системой. Пропустил сигнал в филипсовском плеере на TDA 1541 мимо интерполирующего ЦФ прямо на ЦАП без всякой передискретизации, а с него выход уже фильтровался АФ 3- го порядка. И ничего не услышал. Да и не должен был, или нужно было очень долго тестировать разные программы. Сам по себе ВЧ мусор на слух не мешает. Другое дело, что он может порождать продукты интермодуляции в последующих усилителях, да и ГГ тоже. И в усилителе активного фильтра в т.ч.
Перейти в начало страницы
 
+Цитировать сообщение
zzzzzzzz
сообщение 11.9.2010, 8:52
Сообщение #33


начинающий нейрохирург-любитель и очень добрый таксидермист
***

Группа: Пользователи
Сообщений: 2578
Регистрация: 21.11.2009
Из: РФ, Земля
Пользователь №: 14



Цитата(GuruKiller @ 11.9.2010, 3:55) *
С одной стороны, "тупая" линейная интерполяция тоже точно проходит через точки. В идеале функция должна быть не "аналитическая", а "гармоническая" чтобы в ней не было посторонних гармоник. Например синк - это настоящая гармоническая функция. Наверное только при устремлении степени полиномов в бесконечность они будут приближаться к гармонической функции. На практике же критерий - лишь бы на слух не было слышно. Ну и второй (или первый) критерий - кол-во расчётов. Всё таки у полиномов многовато. Вот интересно, если взять несколько сэмплов и сравнить алгоритмы двойного upsampling-а полиномом на 4 точки и с таким же по затратам свёртке синком (ессно на большее число точек), какой из них даст лучшее качество.
Ну да, вопрос практики первичен, как завещал ильичЪ.
Могу лишь добавить, что существует простой упрощающий приемчик для вычислений:
так как отсчеты по х, как правило, стабильны по времени, можно делать рассчеты коэффициентов, используя подстановку, например, такую x1=0 x2=4 x3=8 x4=12.
Это сильно упростит формулы и реализацию в МК. Найдя коэффициенты, находим значения Y при х=1,2,3,5,6,7,9,10,11. Потом обратно подменяем х на конкретные времена, например, х1=2025мкс, х2=2030мкс и т.д.
Не берусь судить что проще, Фурье или степенные полиномы. Это вопрос к практикам. Мне не пришлось сравнивать.

А "тупая" линейная интерполяция как раз содержит бесконечное количество гармоник, ибо есть точки изломов и прямые.
Ну, в известном смысле, в любой функции бесконечное кол-во гармоник, если это не синус-косинус. Вопрос в их величине.
НО, совсем не факт, что на входе - гармоническая функция! Кто сказал, что после пилы или дисторшн-эффекта мало гармоник? smile.gif

Вот, проделал подобное упрощение.
Если нигде не налажал. Что может быть проще-то?!!!


ПС. Если что - всё нужно проверять тщательнее, делалось очень быстро. Могут вкрасться неточности.
ПС2. Если всё делать правильно, со сдвигом выборки и интерполяцией с одной новой точкой, то итоговая функция всегда будет предельно "гладкой", без изломов. То есть, минимизация гармоник высших порядков будет автоматическая. То есть, это и фильтр отчасти, конечно. Честный фильтр.
Причина редактирования: заглючило чего-то с файлами

Прикрепленные файлы
Прикрепленный файл  Интерполяция2.doc ( 37,5 килобайт ) Кол-во скачиваний: 18
Прикрепленный файл  Интерполяция2.doc ( 38 килобайт ) Кол-во скачиваний: 14
 
Перейти в начало страницы
 
+Цитировать сообщение
zzzzzzzz
сообщение 22.9.2010, 15:33
Сообщение #34


начинающий нейрохирург-любитель и очень добрый таксидермист
***

Группа: Пользователи
Сообщений: 2578
Регистрация: 21.11.2009
Из: РФ, Земля
Пользователь №: 14



Спасибо за работу для "души".
1. А не кажется ли Вам, что в третьем случае присутствует не "облегчение жизни" фильтра, а явная "отсебятина" процесса интерполяции? Ведь вводные данные (рис.1) как раз не предполагают никаких более высокочастотных переходов в этом месте. И интерполяция (рис.3) выглядит убедительнее, чем на рис.2 только потому, что Вы изначально задали синусы, и "восстанавливали" сигнал ими же. В реальном аудио-сигнале это совсем не обязательно так.
Вот если Вы зададите не сумму синусов, а, например, сумму "пил", то ситуация изменится на полную противоположность. Полиномы сумеют "опознать" линейную функцию, а синки дадут "нервную дрожь" (суть, призвуки).
2.
Цитата
Очень остренький излом линейной интерполяции - всего лишь результат влияния наличия очень высоких гармоник. У полиномиального излом сглажен , эти ВЧ гармоники поменьше будут, но те , которые ближе к границе полезного спектра имеют все шансы быть плохо отфильтрованы аналоговым фильтром.
У линейной интерполяции и низкие гармоники будут гораздо больше, и, естественно, более высокие. Чем у полиноминальной, и у фурье.
3. А Вы не видели этих самих формул Фэрроу? Там то же, что и я навыводил? Просто любопытно. А то уже забыл всё.
Перейти в начало страницы
 
+Цитировать сообщение
zzzzzzzz
сообщение 22.9.2010, 15:50
Сообщение #35


начинающий нейрохирург-любитель и очень добрый таксидермист
***

Группа: Пользователи
Сообщений: 2578
Регистрация: 21.11.2009
Из: РФ, Земля
Пользователь №: 14



Цитата(GuruKiller @ 22.9.2010, 17:42) *
ИМХО тут всё по чесноку. Можно взять любой аудио сигнал, намеренно обрезанный почти впритык к верхней частоте в сигнале и синк восстановит его как был.
Я когда-то тоже понять не мог приколы, когда на картинке (дискретном сигнале) совсем не то, что в реале. И совсем уже полный прикол в том, что можно восстанавливать то, что якобы было потеряно/обрезано.
Как работает фурье понятно. И "выезжает" он в данном случае только за счет большего числа анализируемых отсчетов. Если взять полином того же порядка, то он сможет отобразить ничуть не хуже синка. Вот обсчитывать его, действительно, будет туговато.
Я вот в свое время на вывод полинома четвертой степени уже не отважился, слишком развесистые выкладки с матрицей. Но, возможно, что в эту степь просто никто особо не бегал, и там есть возможности какой-то оптимизации и упрощения процесса (например, параллельные матричные вычисления). А господин Фурье всё, что нужно, своевременно сказал. smile.gif
Перейти в начало страницы
 
+Цитировать сообщение
zzzzzzzz
сообщение 22.9.2010, 18:02
Сообщение #36


начинающий нейрохирург-любитель и очень добрый таксидермист
***

Группа: Пользователи
Сообщений: 2578
Регистрация: 21.11.2009
Из: РФ, Земля
Пользователь №: 14



Цитата(GuruKiller @ 22.9.2010, 18:26) *
Кстати, не объясните мне, как работает в данном конкретном примере синк?
Ну, если на "пальцах", то проводится, по сути, аналогичное определение коэффициентов. Только для другого ряда (Фурье). Членами этого ряда являются синусы с пропорциональными частотами и сдвигами фазы. Так, для данного случая, в интервале нас заинтересовавшем, коэффициент при соответствующем синусе определился исходя из 20 анализируемых точек.
Прикрепленное изображение

http://www.radioradar.net/articles/technic...oscope_int.html
А вот получить таким образом прямую весьма проблематично. Ибо число членов ряда конечно, а для такой задачи требуется бесконечное.
Цитата(GuruKiller @ 22.9.2010, 18:26) *
Моё имхо - синк по тем же 4 точкам будет лучше работать. И гоораздо быстрее.
Это вряд ли, что лучше. Быстрее - возможно. Но, а если заняться оптимизацией расчетов для степенных полиномов? smile.gif
Перейти в начало страницы
 
+Цитировать сообщение
zzzzzzzz
сообщение 22.9.2010, 20:57
Сообщение #37


начинающий нейрохирург-любитель и очень добрый таксидермист
***

Группа: Пользователи
Сообщений: 2578
Регистрация: 21.11.2009
Из: РФ, Земля
Пользователь №: 14



Цитата(тау @ 22.9.2010, 21:34) *
дык я их в программу вводил, вот по этой методе . Формулы для коэффициентов полинома третьей степени получаются проще чем у Вас - всего 3 умножения для 4 коэффициентов полинома.
Спасибо. Это круто. Поизучаю на досуге. А ведь кто-то роет потихоньку эту тему!
Перейти в начало страницы
 
+Цитировать сообщение

2 страниц V  < 1 2
Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 21.10.2018, 8:02