Я собираюсь перечислить несколько «фильтров, которые не выходят за пределы». Я надеюсь, что вы найдете этот частичный ответ лучше, чем вообще никакого ответа. Надеемся, что люди, которые ищут «фильтр, который не выходит за пределы», найдут этот список таких фильтров полезным. Возможно, один из этих фильтров будет адекватно работать в вашем приложении, даже если мы еще не нашли математически оптимальный фильтр.
причинно-следственные фильтры первого и второго порядка
Шаговый отклик фильтра первого порядка («RC-фильтр») никогда не отклоняется.
Шаговый отклик фильтра второго порядка («биквад») может быть спроектирован таким образом, чтобы он никогда не превышал допустимых значений. Существует несколько эквивалентных способов описания этого класса фильтра второго порядка, который не выходит за пределы шага ввода:
- он сильно затухает или перегружен.
- это не занижено.
- коэффициент демпфирования (дзета) составляет 1 или более
- добротность (Q) составляет 1/2 или менее
- параметр скорости затухания (альфа) - это, по крайней мере, естественная угловая частота без демпфирования (omega_0) или более
В частности, топология фильтра Sallen-Key с единичным коэффициентом усиления с равными конденсаторами и равными резисторами критически затухает: Q = 1/2, и, следовательно, не перепадает на шаговом входе.
Фильтр Бесселя второго порядка слегка недемпфирован: Q = 1 / sqrt (3), поэтому он имеет небольшой выброс.
Фильтр Баттерворта второго порядка более слабый: Q = 1 / sqrt (2), поэтому у него больше перерегулирования.
Из всех возможных LTI-фильтров первого и второго порядка, которые являются причинными и не превышают допустимых значений, фильтр с «наилучшей» (самой крутой) частотной характеристикой - это «критически затухающие» фильтры второго порядка.
причинно-следственные фильтры высшего порядка LTI
Наиболее часто используемый причинный фильтр более высокого порядка, который имеет импульсную характеристику, которая никогда не бывает отрицательной (и, следовательно, никогда не выходит за пределы на шаговом входе), представляет собой «фильтр скользящего среднего», также называемый «фильтром скользящей средней » или « фильтром скользящего среднего». ».
Некоторым людям нравится пропускать данные через один фильтр с блок-каром, а выходные данные этого фильтра - с другим фильтром с блок-каром. После нескольких таких фильтров результат является хорошим приближением гауссовского фильтра. (Чем больше фильтров вы каскадируете, тем ближе конечный результат приближается к гауссовскому, независимо от того, с какого фильтра вы начинаете - прямоугольник, треугольник, RC первого порядка или любой другой - из-за центральной теоремы о пределе).
Практически все оконные функции имеют импульсную характеристику, которая никогда не бывает отрицательной, и поэтому в принципе может использоваться в качестве КИХ-фильтров, которые никогда не выходят за пределы шага ввода. В частности, я слышал хорошие вещи об окне Lanczos , которое является центральным (положительным) лепестком функции sinc () (и нулем за пределами этого лепестка). Несколько фильтров формирования импульсов имеют импульсную характеристику, которая никогда не бывает отрицательной, и поэтому могут использоваться в качестве фильтров, которые никогда не выходят за пределы на шаговом входе.
Я не знаю, какой из этих фильтров лучше всего подходит для вашего приложения, и я подозреваю, что математически оптимальный фильтр может быть немного лучше, чем любой из них.
нелинейные причинно-следственные фильтры
Медианный фильтр является популярным нелинейным фильтром , который никогда не проскакивает на входе ступенчатой функции.
РЕДАКТИРОВАТЬ: LTI не причинно-следственных фильтров
Функция sech (t) = 2 / (e ^ (- t) + e ^ t) является собственным преобразованием Фурье, и я полагаю, что ее можно использовать в качестве некаузального фильтра нижних частот LTI, который никогда не срабатывает на пошаговый ввод.
Непричинный фильтр LTI, имеющий импульсную характеристику (sinc (t / k)) ^ 2, имеет частотную характеристику «abs (k) * triangle (k * w)». Когда вводится шаг, он имеет много пульсаций во временной области, но никогда не выходит за пределы конечной точки расчета. Выше высокочастотного угла этого треугольника он дает идеальное подавление в полосе останова (бесконечное затухание). Таким образом, в области полосы останова он имеет лучшую частотную характеристику, чем фильтр Гаусса.
Поэтому я сомневаюсь, что фильтр Гаусса дает «оптимальную частотную характеристику».
Я подозреваю, что в наборе всех возможных «фильтров, которые не выходят за пределы» не существует единственного «оптимального частотного отклика» - некоторые имеют лучшее подавление в полосе задержания, в то время как другие имеют более узкие полосы перехода и т. Д.