ame421 0 21 апреля, 2009 Опубликовано 21 апреля, 2009 · Жалоба Здравствуйте! Помогите пожалуйста разобраться со следующим вопросом. Надо сделать октавный эквалайзер. Частота дискретизации сигнала 24кГц. По идее надо выделить каждую полосу, уменьшить\увеличить в ней сигнал, а потом все сложить в выходной сигнал. Хочу все сделать на КИХ фильтрах. Но отфильтровать нижние полосы 250, 500. 1000Гц сложно, так как при частоте дискретизации 24кГц получаются большие порядки фильтров. Следовательно, понижаем частоту: например для полосы 500Гц надо фильтровать полосу 350-710Гц. Понижаем частоту дискретизации с 24кГц до 1,5кГц, то есть в 16 раз, то есть (как я это понимаю) на линию задержки фильтра для 500Гц подаем каждый 16 отсчет входного сигнала. Дальше надо обратно увеличить частоту с 1,5 до 24кГц, для этого: 1. Сразу интерполировать в 16 раз нельзя, так как потом придется подавлять зеркальные частоты, то есть опять же делать узкополосный фильтр при 24кГц 2. Использовать многокаскадную интерполяцию, но имхо это не айс 3. В книжках что то говорится про полифазные фильтры в контексте многоскоростной обработки сигнала, типа они разбивают входной сигнал на полосы, снижают количество операций. Но я не могу понять, как же они разбивают сигнал на полосы (((( Собственно вопрос в том, как нормальные люди делают эквалайзеры, правильны ли мои рассуждения (см выше) и в чем фишка полифазных фильтров, как разбить входной сигнал на октавные полосы и потом собрать его? Может какие книжки посоветуете? Т.к. те, что я читала, мне не совсем понятны (( Надеюсь на вашу помощь Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DRUID3 0 21 апреля, 2009 Опубликовано 21 апреля, 2009 · Жалоба Долго объяснять, но так как Вы предлагаете эквалайзеры не делают. Тем более что это для обработки звука, я так понял. Да и методика Ваша с децимацией-интерполяцией имеет изъяны - фильтры не полосовые получаются - ФВЧ все-равно FIR делать :( , появление гребенок частот Найквиста-Котельникова - как их потом "душить" :( , еще неизвестно насколько "меньше" будут ресурсозатраты и т.д. Не нравится порядок FIR, сядьте почитайте, что есть IIR, методику их расчета и те или иные особенности АЧХ в зависимости от методики синтеза. Книгу не посоветую т.к. это из цикла - "хочу стать программистом, посоветуйте книжку но что-бы кратко и про все"... :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ame421 0 21 апреля, 2009 Опубликовано 21 апреля, 2009 · Жалоба а как их делают? http://www.dj.ru/djlab/studio/djlab_eq.phtml а вот тут написано что полосовыми фильтрами, или я где-то очень сильно ошибаюсь? расскажите все же про полифазные фильтры, в чем соль? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vlad27 0 21 апреля, 2009 Опубликовано 21 апреля, 2009 · Жалоба Здравствуйте! Помогите пожалуйста разобраться со следующим вопросом. Надо сделать октавный эквалайзер. Частота дискретизации сигнала 24кГц. По идее надо выделить каждую полосу, уменьшить\увеличить в ней сигнал, а потом все сложить в выходной сигнал. Хочу все сделать на КИХ фильтрах. Но отфильтровать нижние полосы 250, 500. 1000Гц сложно, так как при частоте дискретизации 24кГц получаются большие порядки фильтров. --- skipped Собственно вопрос в том, как нормальные люди делают эквалайзеры, правильны ли мои рассуждения (см выше) и в чем фишка полифазных фильтров, как разбить входной сигнал на октавные полосы и потом собрать его? Может какие книжки посоветуете? Т.к. те, что я читала, мне не совсем понятны (( Надеюсь на вашу помощь Может быть эта книжка поможет? - "Multirate Filtering for Digital Signal Processing: MATLAB Applications", Ljiljana Milić, University of Belgrade, Serbia Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ame421 0 21 апреля, 2009 Опубликовано 21 апреля, 2009 · Жалоба Vlad27, спасибо, посмотрю )) но я по русски то с трудом понимаю в теме ДСП, не то что по английски... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vlad27 0 21 апреля, 2009 Опубликовано 21 апреля, 2009 · Жалоба Vlad27, спасибо, посмотрю )) но я по русски то с трудом понимаю в теме ДСП, не то что по английски... Здесь еще посмотрите. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ame421 0 21 апреля, 2009 Опубликовано 21 апреля, 2009 · Жалоба а что никто тут не делал эквалайзеры? я думала это довольно распространенная штука... у меня такое чувство, что я сейчас велосипед изобретаю)) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DRUID3 0 21 апреля, 2009 Опубликовано 21 апреля, 2009 · Жалоба Ну Вы все-таки почитайте про фильтры с бесконечной импульсной характеристикой, я же не просто так "от балды" предложил... :( То, что предлагаете Вы так или иначе сведется еще и к дополнительной FIR фильтрации - чисто вылитые вейвлеты Добеши... А в этой брошюре на странице 36-37 как вариант "того что Вам нужно"... 21065L_Audio_Tutorial.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
west 0 22 апреля, 2009 Опубликовано 22 апреля, 2009 · Жалоба Предлагаю автору оценить порядок фильтров, найти суммарное количество коэффициентов и на основании этого определить требования к быстродействию процессора. К сожалению, матлаба сейчас нет под рукой, могу только привести свой пример : ФНЧ 10 Гц, полоса расфильтровки столько-же, при частоте дискретизации 16 кГц содержит 2360 коэффициентов. У вас полоса много шире, может быть, требования к расфильтровке немного пожестче, так что число коэффициентов будет меньше, или сравнимо. Теперь можно взять ADSP-BF532, производительность 800 MMAC, с учетом накладных расходов реально будет меньше, допустим, 500. В терминах отсчетов получается 500/0.024 = 20833. Следовательно, данный далеко не самый быстрый процессор сможет посчитать не меньше 8 таких фильтров за период одной выборки, на основании чего могу сказать, что эквалайзер в него влезет гарантированно, без всяких дополнительных мытарств с интерполяцией. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
blackfin 21 22 апреля, 2009 Опубликовано 22 апреля, 2009 · Жалоба Надо сделать октавный эквалайзер. Если надо, делайте! А.Б.Сергиенко, "Цифровая обработка сигналов", Питер, 2006. Глава 10. "Многоскоростная обработка сигналов". Стр. 631, "Банки фильтров" Или: Vaidyanathan, P. P Всё через БПФ. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexkok 0 23 апреля, 2009 Опубликовано 23 апреля, 2009 · Жалоба Надо сделать октавный эквалайзер. Здесь есть октавный эквалайзер. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alex_os 0 23 апреля, 2009 Опубликовано 23 апреля, 2009 · Жалоба Или: Vaidyanathan, P. P Всё через БПФ. +100. ИМХО это наименее ресурсоемкий подход и ффт там маленькое... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ame421 0 29 апреля, 2009 Опубликовано 29 апреля, 2009 · Жалоба кто-нибудь пользовался IIRCanonic библиотекb дсп в С30? эта функция рабочая? почему то у меня в Асс все время 0... О_О Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
genadiy 0 30 апреля, 2009 Опубликовано 30 апреля, 2009 · Жалоба Вот почитайте. Я недавно делал виброанализатор для полосы 10-1000Гц. Тоже сразу сделал IIR как вам предлагали здесь на формуе, но как оказалось после квантования в формат 16.15 характеристика фильтра очень исказилась, А уже плату сделали по ДСПИК с достаточно маленькими ресурсами, та и количество каналов которое он должен был обрабатывать было 8 что критично сказывалось на время. Но всё оказалось проще - три КИХ фильтра, децимация и сумма квадратов на выходе фильтров. Вообщем смотрите рисунок который я прикрепил. Мне после него стало понятно как нужно делать. Надеюсь и у вас получиться. PS. Да чуть не забыл. Сделал свой сайт http://www.nemczov.com/ На котором есть и будут размещаться мои статьи по ЦОС. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vlad27 0 2 мая, 2009 Опубликовано 2 мая, 2009 · Жалоба кто-нибудь пользовался IIRCanonic библиотекb дсп в С30? эта функция рабочая? почему то у меня в Асс все время 0... О_О Привели бы Ваш код, был бы более предметный разговор. А библиотеки вполне рабочие. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться