ZhekSooN 0 6 января, 2011 Опубликовано 6 января, 2011 (изменено) · Жалоба Короче говоря вопрос в чем: можно ли уменьшать частоту дискретизации в целое кол-во раз просто усредняя N отсчетов и выдавая его за один? Не будет ли сильного ализинга? Изменено 6 января, 2011 пользователем ZhekSooN Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
phantom 0 6 января, 2011 Опубликовано 6 января, 2011 · Жалоба Лучше наверное выбрасывать а не усреднять. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ZhekSooN 0 6 января, 2011 Опубликовано 6 января, 2011 (изменено) · Жалоба Так вроде это сильно, очень сильно будет вонять ализингом... Тем более что коэффицент децимации что-то около 20-40. Изменено 6 января, 2011 пользователем ZhekSooN Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vadimuzzz 0 7 января, 2011 Опубликовано 7 января, 2011 · Жалоба Не будет ли сильного ализинга? http://www.dspguide.com/ch15/3.htm дело не в алиазинге, а в АЧХ в полезной полосе Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Lmx2315 5 7 января, 2011 Опубликовано 7 января, 2011 · Жалоба Будет ли альязинг - зависит от соотношения исходной частоты сэмплирования и ширины спектра сигнала , чтобы альязинг исбежать ставят децимирующие фильтры. Они обрезают полосу так что-бы не было лишнего ничего а потом убирают "лишние" отсчёты . Вроде так . Чтобы по вашему способу сделать и не получить альязинга надо так : есть спектр шириной например 100 гц , если его просемплировать с частотой 500 гц а потом децимировать в два раза , то альязинга не будет . А если тот же спектр просемплировать 300 гц , а потом децемировать в два раза - то будет приличный альязинг. http://www.dsplib.ru/content/cicid/cicid.html ...как-то так . Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ZhekSooN 0 7 января, 2011 Опубликовано 7 января, 2011 (изменено) · Жалоба http://www.dspguide.com/ch15/3.htm дело не в алиазинге, а в АЧХ в полезной полосе Так при моем усреднении даже и этого плавающего среднего не будет, к примеру при k=5 первая выборка результата будет определяться так: b[1]=(a[1]+a[2]+a[3]+a[4]+a[5])/5 , вторая - b[2]=(a[6]+a[7]+a[8]+a[9]+a[10])/5 , то есть вторая никак не зависит от предыдущих отсчетов. А в плавающем среднем будет зависеть. Изменено 7 января, 2011 пользователем ZhekSooN Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vadimuzzz 0 7 января, 2011 Опубликовано 7 января, 2011 · Жалоба Так при моем усреднении даже и этого плавающего среднего не будет, к примеру при k=5 первая выборка результата будет определяться так: b[1]=(a[1]+a[2]+a[3]+a[4]+a[5])/5 , вторая - b[2]=(a[6]+a[7]+a[8]+a[9]+a[10])/5 , то есть вторая никак не зависит от предыдущих отсчетов. А в плавающем среднем будет зависеть. это и есть скользящее среднее с децимацией (отбрасыванием) отсчетов Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Alexey Lukin 0 7 января, 2011 Опубликовано 7 января, 2011 · Жалоба Короче говоря вопрос в чем: можно ли уменьшать частоту дискретизации в целое кол-во раз просто усредняя N отсчетов и выдавая его за один? Не будет ли сильного ализинга? Усреднять лучше, чем просто отбрасывать отсчёты. Сильный при этом алиасинг или не сильный — зависит от задачи. Если это обработка изображений, то усреднение почти идеально. Если обработка звука — обычно используются более крутые фильтры. Вот спектр прямоугольного окна: спектр. Судите сами... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ZhekSooN 0 7 января, 2011 Опубликовано 7 января, 2011 (изменено) · Жалоба это и есть скользящее среднее с децимацией (отбрасыванием) отсчетов Да, спасибо, не заметил - сразу наложил скользящее среднее на такое усреднение. Если обработка звука — обычно используются более крутые фильтры. Вот спектр прямоугольного окна: спектр. Судите сами... Да, будет именно "обработка" звука на МК - чтобы не переключать АЦП на более низкую частоту отсчетов (надо получать семплы с большой и с маленькой частотой дискретизации) и не городить аналоговые фильтры. Требования сильные не нужны - чтобы у ресемплированого сигнала был реалистичный спектр. Может есть другие хорошие способы? (восьмибитная арифметика и минимум промежуточных данных приветствуются) Изменено 7 января, 2011 пользователем ZhekSooN Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Alexey Lukin 0 7 января, 2011 Опубликовано 7 января, 2011 · Жалоба Стандартный способ для звука — фильтр типа windowed sinc: w(t) * sin(t) / t. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ZhekSooN 0 7 января, 2011 Опубликовано 7 января, 2011 · Жалоба Стандартный способ для звука — фильтр типа windowed sinc: w(t) * sin(t) / t. Он-то хорош, но сильно много таблиц выходит, да и коэффиценты на порядки отличаются в различных местах - на МК AVR будет тяжко... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
phantom 0 8 января, 2011 Опубликовано 8 января, 2011 · Жалоба Он-то хорош, но сильно много таблиц выходит, да и коэффиценты на порядки отличаются в различных местах - на МК AVR будет тяжко... Ну так используйте АРМ, все ж не ДСП, а можно нечто типа ПЛМ-ки, туда тоже не очень сложно перейти. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 8 января, 2011 Опубликовано 8 января, 2011 · Жалоба Требования сильные не нужны - чтобы у ресемплированого сигнала был реалистичный спектр. Может есть другие хорошие способы? (восьмибитная арифметика и минимум промежуточных данных приветствуются) Перед децимацией вам нужен фильтр, который предотвратит наложение спектра из-за того, что частота дискретизации уменьшилась в 20..40 раз. Т.е., он должен отрезать все, что больше (Fs/20)/2 ... (Fs/40)/2. Фильтром КИХ с 5-ю отводами это сделать невозможно. Наверное, нужно иметь не менее 20...40 отводов. Другое дело, если спектр входного сигнала изначально уже обрезан. Можно попытаться сделать децимацию в 2 этапа, например, сначала в 8 раз, потом в 5. А форма окна - даже треугольная будет лучше прямоугольной. Боковые лепестки АЧХ уменьшатся, за счет расширения, к сожалению, основного лепестка. Можете выбрать коэффициенты, ближайшие к кратным степени 2, простейший пример: 0.25 0.5 0.25 (конечно, этот фильтр не для вашего случая). А что, если сделать не в 2 этапа, а в 5, например? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ZhekSooN 0 8 января, 2011 Опубликовано 8 января, 2011 · Жалоба Спасибо всем за развернутые ответы, но чувствую, что от цифровой децимации придется отказаться, так как для нормальных характеристик это будет сравнимо по сложности с самим БПФ, которое тоже будет выполнятся на МК. Проще уж переключать входы/скорость АЦП и сделать аналоговый фильтр (все равно АРУ понадабится), чем тратить половину времени и памяти на обработку "быстрых" выборок. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alex_os 0 8 января, 2011 Опубликовано 8 января, 2011 · Жалоба ...но чувствую, что от цифровой децимации придется отказаться, так как для нормальных характеристик это будет сравнимо по сложности с самим БПФ, которое тоже будет выполнятся на МК. ... А нормальные характеристики это сколько в цифрах ? При СIC фильтры чего-нибудь слышали-читали? Удобная штука для больших коэффициентов децимации. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться