_sda 0 25 января, 2021 Опубликовано 25 января, 2021 · Жалоба Коллеги, попалось мне тут одно описание работы фильтра MAF. Первый проход.Окно усреднения – n точек. Вычисляется среднее по ним значение и присваивается всем точкам в текущем окне. Окно сдвигается вперед на n точек, опять усредняется, присваивается, сдвигается и т.д. Второй проход. Начало окна усреднения сдвигается на n/2 точек вперед относительно начала окна 1го прохода. Вся дальнейшая процедура кусочно-осредненного присваивания такая же. Третий проход. Линейная интерполяция между конечными точками каждого постоянного участка кусочной функции. Хочу проанализировать его работу и сравнить с обычным MAF. Для этого нужно написать его передаточную функцию. H(z) = f(H1(z),H2(z),H3(z)) Для первого прохода H1(z) = (1 + Z-1 + Z-2 + Z-3 …+ Z-n-1) / n Для второго прохода H2(z) = Z-n/2 * H1(z) После этого нужно,видимо, как то ввести децимацию на n. Корифеи z-преобразования - верны ли эти два выражения? Если вдруг верны то как их объединить с третьим проходом? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Tarbal 4 26 января, 2021 Опубликовано 26 января, 2021 · Жалоба Я правильно понял, что в первом проходе децимация получается из н точек одна? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 26 января, 2021 Опубликовано 26 января, 2021 · Жалоба 5 часов назад, Tarbal сказал: Я правильно понял, что в первом проходе децимация получается из н точек одна? Да, выполняется децимация на n(в третьем проходе берётся один отсчёт из n). Думаю что в третьем проходе вместо линейной интерполяции можно использовать двух таповый MAF. Или нет? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Самурай 12 26 января, 2021 Опубликовано 26 января, 2021 · Жалоба 25.01.2021 в 13:29, _sda сказал: Третий проход. Линейная интерполяция между конечными точками каждого постоянного участка кусочной функции. Как это будет звучать в переводе на русский? Что это, просто среднее между двумя фильтрами? Тогда H(z) = 0.5*H1(z)*(1+z^(-n/2)). А потом децимация. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 26 января, 2021 Опубликовано 26 января, 2021 · Жалоба 24 минуты назад, Самурай сказал: Что это, просто среднее между двумя фильтрами? Тогда H(z) = 0.5*H1(z)*(1+z^(-n/2)). А потом децимация. Спасибо! Насколько я понял там сначала в каждом фильтре находится среднее для n отсчётов (децимация на n),потом линейная интерполяция в n раз отсчётов с выхода фильтров. Если делать так как вы предложили то вроде децимация с интерполяцией не нужны, сразу получаем выходные отсчёты. Только будет ли эта конструкция полностью эквивалентна исходной? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Самурай 12 26 января, 2021 Опубликовано 26 января, 2021 · Жалоба 20 минут назад, _sda сказал: Только будет ли эта конструкция полностью эквивалентна исходной? Если честно, работа исходной конструкции лично для меня все еще в тумане... Можете привести ссылку на описание или выложить какие-либо рабочие файлы? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 26 января, 2021 Опубликовано 26 января, 2021 · Жалоба 58 минут назад, Самурай сказал: Если честно, работа исходной конструкции лично для меня все еще в тумане... Можете привести ссылку на описание или выложить какие-либо рабочие файлы? Не,ссылки нет. Это шеф в своих старых записях нашёл и попросил сравнить характеристики этой конструкции с характеристиками MAF такого же порядка. Не остаётся ничего другого как попытаться своими словами ещё раз изложить суть, как я сам её понял. 1). Первый каскад. Из входного потока выбираются N отсчётов,вычисляется их среднее и результат отправляется на выход. Затем берутся следующие N входных отсчётов, вычисляется их среднее и результат отправляется на выход. И т.д. Таким образом частота отсчётов на выходе первого каскада в N раз ниже частоты входных отсчётов. 2). Второй каскад - точная копия первого, только у него на входе стоит линия задержки на N/2 тактов. Входы первого и второго каскадов объединены и являются входом всей конструкции. 3). Третий каскад. Здесь, как я понял, находится среднее значение выходов двух фильтров. Ваше описание соответствует "скользящему" режиму работы, а оригинальная конструкция работает в "блочном" режиме. На мой взгляд это и все отличия. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Самурай 12 27 января, 2021 Опубликовано 27 января, 2021 · Жалоба 13 часов назад, _sda сказал: 3). Третий каскад. Здесь, как я понял, находится среднее значение выходов двух фильтров. Все еще не уверен, что правильно понял принцип работы 3-го каскада. Но если это действительно просто вычисление среднего значения, то все три варианта на рисунке ниже тождественны. Т.е. все сводится к обычному фильтру-дециматору, построение АЧХ которого не должно вызвать трудностей. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 27 января, 2021 Опубликовано 27 января, 2021 · Жалоба 32 минуты назад, Самурай сказал: Все еще не уверен, что правильно понял принцип работы 3-го каскада. Но если это действительно просто вычисление среднего значения, то все три варианта на рисунке ниже тождественны. Т.е. все сводится к обычному фильтру-дециматору, построение АЧХ которого не должно вызвать трудностей. Спасибо за неравнодушие! Я уже получил АЧХ этого фильтра, на картинке синий - обычный MAF, оранжевый - эта конструкция. Все фильтры - 32 тапа, децимацию пока отключил. Теперь буду менять параметры и смотреть результат. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Самурай 12 27 января, 2021 Опубликовано 27 января, 2021 · Жалоба 1 час назад, _sda сказал: Я уже получил АЧХ этого фильтра, на картинке синий - обычный MAF, оранжевый - эта конструкция. Все фильтры - 32 тапа, децимацию пока отключил. Теперь буду менять параметры и смотреть результат. Это и есть АЧХ фильтра, который я привел выше: H(z) = 0.5*H1(z)*(1+z^(-n/2)), где H1(z) это MAF. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 27 января, 2021 Опубликовано 27 января, 2021 · Жалоба 20 минут назад, Самурай сказал: Это и есть АЧХ фильтра, который я привел выше: H(z) = 0.5*H1(z)*(1+z^(-n/2)), где H1(z) это MAF. Ну да, я её построил , выше написал "оранжевый - эта конструкция". Ещё раз большое спасибо! p.s. А на последок не подскажете как в эту формулу добавить децимацию? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 27 января, 2021 Опубликовано 27 января, 2021 · Жалоба 3 часа назад, Самурай сказал: И ещё - в каком редакторе рисовали картинки? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Самурай 12 27 января, 2021 Опубликовано 27 января, 2021 · Жалоба 4 часа назад, _sda сказал: А на последок не подскажете как в эту формулу добавить децимацию? А зачем?:) 3 часа назад, _sda сказал: И ещё - в каком редакторе рисовали картинки? Visio Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 27 января, 2021 Опубликовано 27 января, 2021 · Жалоба 1 час назад, Самурай сказал: А зачем?:) Ну, пригодится когда нибудь в других конструкциях... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Самурай 12 27 января, 2021 Опубликовано 27 января, 2021 · Жалоба 4 минуты назад, _sda сказал: Ну, пригодится когда нибудь в других конструкциях... Я не совсем об этом... Какая конечная цель с технической точки зрения? Для построения АЧХ больше ничего не нужно делать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться