В эпоху стремительного развития цифровых технологий, когда изображения стали одним из ключевых источников информации во всех сферах жизни — от медицины и аэрокосмической промышленности до систем безопасности и развлечений — проблема качества визуальных данных приобретает первостепенное значение. Несовершенство датчиков, условия съемки и помехи при передаче часто приводят к появлению нежелательных шумов, которые могут искажать критически важные детали и затруднять последующий анализ или интерпретацию. Именно здесь на авансцену выходит цифровая обработка изображений (ЦОИ), предлагающая мощный арсенал инструментов для улучшения качества визуального контента. Среди этих инструментов особое место занимают фильтры, способные целенаправленно воздействовать на различные частотные составляющие изображения.
Настоящая курсовая работа посвящена глубокому изучению и систематизации информации о фильтрах низких частот Баттерворта, которые, благодаря своей уникальной максимально-плоской амплитудно-частотной характеристике, являются одним из наиболее эффективных и широко применяемых средств для подавления высокочастотных шумов и сглаживания изображений. Актуальность выбранной темы обусловлена не только непреходящей потребностью в высококачественных изображениях, но и необходимостью освоения студентами технических специальностей фундаментальных принципов цифровой обработки сигналов и изображений, которые лежат в основе современных технологий компьютерного зрения и анализа данных.
Целью данной работы является создание исчерпывающего академического руководства, охватывающего как теоретические аспекты, так и практические подходы к реализации фильтров Баттерворта в ЦОИ. Для достижения этой цели были поставлены следующие задачи:
- Раскрыть фундаментальные математические основы и принципы построения фильтров Баттерворта.
- Детально рассмотреть методы цифровой реализации этих фильтров, включая пошаговый расчет коэффициентов.
- Проанализировать влияние порядка фильтра и частоты среза на результирующие характеристики обработанного изображения, систематически визуализируя эти эффекты.
- Провести сравнительный анализ фильтров Баттерворта с другими популярными низкочастотными фильтрами.
- Представить типовую архитектуру программного обеспечения и примеры практической реализации фильтров Баттерворта в ЦОИ.
Представленная структура работы последовательно проведет читателя от абстрактных математических концепций к конкретным алгоритмическим решениям и практическим примерам, демонстрируя научную и практическую ценность фильтров Баттерворта как незаменимого инструмента в арсенале специалиста по цифровой обработке изображений.
Фундаментальные математические основы фильтров Баттерворта
В мире, где информация все чаще представлена в виде сигналов и изображений, способность избирательно воздействовать на их компоненты становится критически важной. Эта способность лежит в основе частотно-избирательной фильтрации — процесса, который позволяет выделять или подавлять определенные частотные составляющие сигнала. Среди множества архитектур фильтров, фильтр Баттерворта занимает особое место благодаря своим уникальным математическим свойствам, делающим его идеальным кандидатом для широкого спектра задач, включая цифровую обработку изображений. В конечном счете, понимание этих основ обеспечивает надежную базу для инженеров, позволяя им эффективно настраивать и применять фильтры в реальных системах, где требуется точный контроль над спектральными компонентами.
Понятие частотно-избирательной фильтрации и ФНЧ
Прежде чем углубляться в специфику фильтров Баттерворта, необходимо четко определить базовые термины.
- Фильтр Баттерворта — это тип линейного аналогового или цифрового фильтра, разработанный для обеспечения максимально плоской амплитудно-частотной характеристики в полосе пропускания. Он относится к классу фильтров с бесконечной импульсной характеристикой (БИХ-фильтров) при цифровой реализации.
- Цифровая обработка изображений (ЦОИ) — это совокупность методов и алгоритмов для манипулирования цифровыми изображениями с целью улучшения их качества, извлечения информации или подготовки к дальнейшему анализу.
- Частотная характеристика — это комплексная функция, описывающая реакцию фильтра на синусоидальные сигналы различных частот. Она состоит из амплитудно-частотной характеристики (АЧХ), которая показывает, как фильтр изменяет амплитуду сигнала, и фазочастотной характеристики (ФЧХ), описывающей изменение фазы.
- Порядок фильтра (n) — это число, определяющее сложность фильтра и крутизну спада его АЧХ. Чем выше порядок, тем резче переход от полосы пропускания к полосе задерживания.
- Частота среза (Ωс) — это граничная частота, на которой ослабление сигнала фильтром достигает определенного значения, обычно -3 дБ (или примерно 0.707 от максимальной амплитуды). Она определяет, какие частоты пропускаются, а какие подавляются.
В контексте цифровой обработки сигналов и изображений, фильтр низких частот (ФНЧ) предназначен для передачи с минимальным ослаблением колебаний, частоты которых не превосходят заданной граничной частоты (частоты среза Ωс), и существенного ослабления колебаний с более высокими частотами. В ЦОИ ФНЧ используются для сглаживания изображений, подавления высокочастотного шума, который часто проявляется в виде мелких, резких деталей или зернистости, а также для уменьшения резкости и удаления контуров.
Аппроксимация идеально-прямоугольной характеристики: Максимально-плоская АЧХ
Идеальный ФНЧ имел бы абсолютно плоскую АЧХ в полосе пропускания (с коэффициентом передачи равным 1) и нулевую АЧХ в полосе задерживания (с коэффициентом передачи равным 0), с бесконечно крутым переходом на частоте среза. Однако создание таких фильтров физически невозможно. Поэтому в процессе синтеза частотно-избирательных цепей формулируются технические требования к частотным характеристикам, а затем идеальная характеристика аппроксимируется функцией, которая может быть реализована физической цепью.
ФНЧ Баттерворта относится к фильтрам с максимально-плоской характеристикой. Это означает, что его амплитудно-частотная характеристика в полосе пропускания является максимально гладкой, особенно вблизи нулевой частоты (Ω = 0), где первые (2n — 1) производных АЧХ равны нулю. Такое свойство минимизирует пульсации в полосе пропускания, обеспечивая равномерное ослабление всех пропускаемых частот.
Передаточная функция и ее свойства
Математическим сердцем фильтра является его передаточная функция. Для аналогового фильтра Баттерворта передаточная функция H(s) в комплексной s-плоскости имеет вид:
H(s) = 1 / (sn + an-1sn-1 + ... + a1s + a0)
где n — это порядок фильтра. Коэффициенты aᵢ определяются таким образом, чтобы обеспечить максимально плоскую АЧХ в полосе пропускания.
Квадрат модуля передаточной функции, который напрямую связан с АЧХ, для нормированной частоты Ω (где Ω = ω/Ωс) определяется следующим образом:
|H(Ω)|2 = 1 / (1 + Ω2n)
Этот вид функции демонстрирует ключевые свойства фильтра Баттерворта:
- Монотонность: АЧХ монотонно убывает с ростом частоты и никогда не возрастает, что исключает нежелательные пульсации.
- Постоянство на частоте среза: На частоте среза (Ω = 1, то есть ω = Ωс), значение
|H(Ω)|2 = 1 / (1 + 12n) = 1/2. Это означает, что амплитуда на частоте среза всегда составляет1/√2 ≈ 0.707от максимальной (или -3 дБ), независимо от порядка фильтра. - Зависимость крутизны от порядка: Порядок фильтра (n) напрямую определяет крутизну спада АЧХ в полосе задерживания. Наклон переходного участка характеристики фильтра Баттерворта равен 6 дБ/октава на полюс. Чем выше n, тем круче спад и тем ближе характеристика к идеальной.
Полюсы передаточной функции фильтра Баттерворта расположены на окружности единичного радиуса на комплексной s-плоскости, равномерно распределенные. Для n-го порядка фильтра имеется 2n полюсов, симметрично расположенных относительно действительной и мнимой осей. Для обеспечения устойчивости фильтра выбираются только полюсы, лежащие в левой полуплоскости s-плоскости.
Фазочастотная характеристика (ФЧХ)
В дополнение к АЧХ, важной характеристикой любого фильтра является его фазочастотная характеристика (ФЧХ), которая описывает сдвиг фазы, вносимый фильтром на разных частотах. Нелинейная ФЧХ может приводить к фазовым искажениям, что проявляется как изменение формы сигнала, особенно при обработке импульсных сигналов или изображений, где важно сохранение контуров и мелких деталей.
Фильтры Баттерворта обладают более близкой к линейной ФЧХ по сравнению с другими популярными типами фильтров, такими как Чебышевские или эллиптические, при сравнимом порядке. Линейная ФЧХ означает, что все частотные компоненты сигнала задерживаются на одно и то же время, что минимизирует фазовые искажения и позволяет сохранять форму обрабатываемого сигнала. Это свойство особенно ценно в ЦОИ, где фазовые искажения могут приводить к появлению нежелательных артефактов и искажению геометрических форм объектов на изображении. Как следствие, изображение сохраняет свою визуальную целостность, что критически важно для точной интерпретации и анализа.
Таким образом, фильтры Баттерворта представляют собой элегантное решение для задач низкочастотной фильтрации, сочетая в себе гладкую АЧХ и относительно линейную ФЧХ, что делает их универсальным инструментом в арсенале инженера, работающего с цифровыми сигналами и изображениями.
Цифровая реализация фильтров Баттерворта в контексте ЦОИ
Переход от непрерывного аналогового мира к дискретной цифровой реальности — это краеугольный камень цифровой обработки сигналов. Цифровые фильтры, в отличие от своих аналоговых предшественников, не содержат индуктивностей, конденсаторов или резисторов; вместо этого они оперируют дискретными отсчетами сигнала и реализуются с помощью алгоритмов. Однако их проектирование часто начинается с аналоговых прототипов, чьи проверенные математические модели служат основой для создания цифровых эквивалентов.
Основы проектирования цифровых фильтров на базе аналоговых прототипов
Исторически сложилось так, что теория аналоговых фильтров развивалась десятилетиями, предлагая элегантные решения для синтеза частотно-избирательных цепей. Когда возникла необходимость в цифровой фильтрации, инженеры столкнулись с задачей перенести эти наработки в дискретную область. Наиболее распространенный подход заключается в использовании аналоговых фильтров-прототипов, таких как Баттерворта, Чебышева или эллиптические, и последующем преобразовании их передаточных функций в цифровой эквивалент.
Этот метод позволяет воспользоваться преимуществами уже разработанных и хорошо изученных методов аппроксимации идеальных частотных характеристик. Процесс проектирования рекурсивных цифровых фильтров (РЦФ), также известных как БИХ-фильтры (фильтры с бесконечной импульсной характеристикой), часто включает аппроксимацию требуемой частотной характеристики аналогового фильтра с последующим Z-преобразованием для перехода в Z-область. Цифровые фильтры Баттерворта как раз и являются БИХ-фильтрами, что означает, что их импульсная характеристика теоретически бесконечна, поскольку выходной сигнал зависит не только от текущих и прошлых входных отсчетов, но и от прошлых выходных отсчетов.
Билинейное преобразование: Теория и особенности применения
Ключевым инструментом для перехода от аналоговой передаточной функции H(s) к цифровой H(z) является билинейное преобразование. Это конформное отображение, которое переносит всю левую полуплоскость s-плоскости (где расположены полюсы устойчивого аналогового фильтра) внутрь единичного круга z-плоскости (где расположены полюсы устойчивого цифрового фильтра). Замена переменной s осуществляется по формуле:
s = (2/T) ⋅ (1 - z-1) / (1 + z-1)
где T — период дискретизации.
Билинейное преобразование имеет ряд важных свойств:
- Сохранение устойчивости: Оно гарантирует, что устойчивый аналоговый фильтр будет преобразован в устойчивый цифровой фильтр.
- Однозначность отображения: Каждой точке на мнимой оси s-плоскости (jΩ) соответствует точка на единичной окружности z-плоскости (ejωT).
- Нелинейность частотной характеристики («заворачивание частоты»): Это самый значительный эффект билинейного преобразования. Оно нелинейно отображает аналоговые частоты в цифровые. В результате, аналоговый частотный диапазон от -∞ до +∞ сжимается в цифровой диапазон от -π/T до +π/T (или от -π до +π в нормированных частотах). Эта нелинейность, известная как «заворачивание частоты» (frequency warping), приводит к тому, что частотная характеристика цифрового фильтра будет отличаться от аналогового прототипа, особенно на высоких частотах. Чтобы компенсировать этот эффект, применяется метод предыскажения (pre-warping).
Детальный алгоритм расчета коэффициентов цифрового БИХ-фильтра Баттерворта
Для обеспечения точного соответствия требуемой цифровой частотной характеристике аналоговому прототипу, процесс расчета коэффициентов цифрового БИХ-фильтра Баттерворта по заданному коридору АЧХ включает следующие основные этапы:
- Пересчет параметров коридора АЧХ цифрового фильтра в параметры коридора АЧХ аналогового фильтра (с использованием предыскажения).
Прежде чем применить билинейное преобразование, необходимо «исказить» желаемую цифровую частоту среза Ωс_ц (в радианах в секунду) так, чтобы после нелинейного «заворачивания» частоты она точно соответствовала целевой точке. Это достигается путем пересчета желаемой цифровой частоты среза Ωс_ц в соответствующую аналоговую частоту Ωс_а по формуле:Ωс_а = (2/T) ⋅ tg(Ωс_цT/2)Здесь T — период дискретизации (обратный частоте дискретизации Fд, T = 1/Fд). Аналогично пересчитываются и другие граничные частоты (например, частота полосы задерживания).
- Расчет порядка фильтра на основе параметров коридора АЧХ аналогового фильтра (если порядок не задан).
Если порядок фильтра не задан явно, его можно определить, исходя из требований к АЧХ, таких как максимальное ослабление в полосе пропускания (δп) и минимальное ослабление в полосе задерживания (δз), а также граничных частот. Для фильтра Баттерворта порядок ‘n’ может быть найден по формуле:n ≥ log10[(100.1δз - 1) / (100.1δп - 1)] / (2log10(Ωз / Ωп))где Ωп и Ωз — нормированные аналоговые частоты полосы пропускания и полосы задерживания соответственно.
- Определение передаточной характеристики аналогового нормированного фильтра нижних частот требуемого порядка.
На этом этапе формируется передаточная функция аналогового ФНЧ Баттерворта с нормированной частотой среза Ωс = 1 рад/с. Полюсы этого фильтра расположены на единичной окружности в левой полуплоскости s-плоскости. Передаточная функция выражается как произведение множителей (s — pᵢ), где pᵢ — это корни знаменателя. - Выполнение частотного преобразования передаточной характеристики аналогового нормированного ФНЧ для соответствия целевому типу и частотным параметрам.
После получения нормированного аналогового ФНЧ, его необходимо преобразовать в целевой фильтр (например, ФНЧ с требуемой частотой среза, ФВЧ, полосовой или режекторный). Для ФНЧ это просто масштабирование частоты, когда s заменяется на s/Ωс_а (где Ωс_а — предыскаженная аналоговая частота среза). - Завершающий шаг — расчет передаточной характеристики цифрового фильтра путем применения билинейного преобразования к аналоговой передаточной функции.
Наконец, в полученную аналоговую передаточную функцию H(s) подставляется выражение для s через z из билинейного преобразования:s = (2/T) ⋅ (1 - z-1) / (1 + z-1)Это алгебраическое преобразование приводит к рациональной функции по z, которая имеет вид:
H(z) = B(z) / A(z) = (b0 + b1z-1 + ... + bnz-n) / (a0 + a1z-1 + ... + anz-n)где aᵢ и bᵢ — коэффициенты цифрового БИХ-фильтра. Эти коэффициенты затем используются для реализации фильтра в виде разностного уравнения:
y[k] = (1/a0) ⋅ [∑i=0n bᵢx[k-i] - ∑j=1n aⱼy[k-j]]где x[k] — входной сигнал, y[k] — выходной сигнал, а k — индекс дискретного времени.
Этот детализированный подход обеспечивает максимальную точность при переходе от теоретических моделей аналоговых фильтров к их практической цифровой реализации, что критически важно для эффективной обработки изображений.
Влияние порядка фильтра и частоты среза на характеристики обработанного изображения
Выбор параметров фильтра — это всегда компромисс. В случае фильтров Баттерворта, как и любых других, ключевыми регулируемыми параметрами являются порядок фильтра (n) и частота среза (Ωс). Эти два показателя оказывают фундаментальное влияние на то, как фильтр будет сглаживать изображение, подавлять шум и сохранять или размывать важные детали. Понимание их взаимосвязи критически важно для эффективного применения фильтров в цифровой обработке изображений.
Зависимость крутизны спада АЧХ от порядка фильтра
Вспомним, что АЧХ фильтра Баттерворта описывается выражением |H(Ω)|2 = 1 / (1 + Ω2n). Здесь ‘n’ — это порядок фильтра.
Чем выше порядок фильтра Баттерворта, тем точнее аппроксимируется идеальная прямоугольная форма частотной характеристики, что приводит к более крутому спаду АЧХ. Это означает, что переход от полосы пропускания, где сигнал проходит практически без ослабления, к полосе задерживания, где сигнал сильно подавляется, становится более резким и «острым». Фильтр с высоким порядком лучше разделяет низкие и высокие частоты, позволяя эффективно подавлять шум, не затрагивая значительно низкочастотные компоненты изображения. В результате, изображение сохраняет свои основные структурные элементы, при этом избавляясь от нежелательных высокочастотных шумов.
Однако увеличение порядка фильтра несет и свои издержки:
- Усложнение реализации: Чем выше порядок, тем больше коэффициентов необходимо вычислить и сохранить, и тем сложнее становится схемная или программная реализация фильтра. Для цифровых БИХ-фильтров это означает увеличение числа умножений и сложений на каждый отсчет, что повышает вычислительные затраты.
- Повышение стоимости: В аппаратных реализациях, увеличение порядка фильтра прямо пропорционально увеличивает количество компонентов и, соответственно, стоимость.
- Возможность появления артефактов: Чрезмерно крутой спад АЧХ, свойственный фильтрам высокого порядка, может приводить к появлению так называемого «эффекта звона» (ringing artifacts) на изображении. Это проявляется в виде осцилляций или «ряби» вокруг резких перепадов яркости (контуров), поскольку фильтр пытается резко обрезать частотный спектр, что по теореме о свертке эквивалентно умножению на функцию с резкими переходами в частотной области.
Выбор минимально необходимого порядка фильтра становится важной задачей. Необходимо найти баланс между желаемой крутизной спада АЧХ (эффективностью шумоподавления) и избеганием чрезмерного усложнения или введения нежелательных артефактов. Следует ли жертвовать некоторой резкостью ради снижения вычислительной нагрузки и предотвращения нежелательных артефактов?
Роль частоты среза в полосах пропускания и задерживания
Частота среза (Ωс), как было сказано ранее, определяет границу между полосой пропускания и полосой задерживания. На этой частоте ослабление сигнала составляет -3 дБ.
- Низкая частота среза: Если Ωс выбирается низкой, то фильтр пропускает очень ограниченный диапазон низких частот и сильно подавляет большинство высокочастотных компонентов. Это приводит к сильному сглаживанию изображения и эффективному подавлению шума, поскольку шум часто является высокочастотной составляющей. Однако обратной стороной является значительное размытие изображения, потеря мелких деталей и контуров, так как они также содержат высокочастотные компоненты.
- Высокая частота среза: Если Ωс выбирается высокой, фильтр пропускает более широкий диапазон частот, и лишь самые высокие частоты будут подавлены. В этом случае шумоподавление будет менее выраженным, но изображение сохранит больше резкости и деталей. Компромисс состоит в том, что некоторые остаточные шумы могут остаться.
Таким образом, частота среза является прямым регулятором баланса между шумоподавлением и сохранением деталей. В контексте обработки изображений, частота среза часто интерпретируется как «степень размытия».
Визуализация эффектов на изображениях
Чтобы наглядно проиллюстрировать влияние порядка фильтра и частоты среза, представим себе гипотетический эксперимент с изображением, содержащим как мелкие детали, так и значительный шум.
| Параметр / Результат | Низкий Порядок (n = 1-2) | Средний Порядок (n = 3-5) | Высокий Порядок (n > 5) |
|---|---|---|---|
| Низкая Ωс | Очень сильное размытие, но шум заметно подавлен. Некоторые контуры все еще видны, но очень мягкие. | Эффективное шумоподавление, но сильное размытие. Контуры значительно сглажены. | Отличное шумоподавление, но с риском «звона» вокруг оставшихся резких контуров. Сильное размытие. |
| Средняя Ωс | Умеренное размытие, часть шума остается. Детали частично сохраняются, но становятся мягче. | Хорошее шумоподавление, с сохранением умеренного количества деталей. Изображение выглядит «чистым», но не слишком резким. | Очень хорошее шумоподавление, детали хорошо сохраняются, но риск «звона» у контуров возрастает. |
| Высокая Ωс | Незначительное размытие, но большая часть шума остается. Детали практически не затрагиваются. | Незначительное шумоподавление. Детали и контуры хорошо сохраняются. Может быть использован для легкого сглаживания. | Минимальное шумоподавление, практически без размытия. Высокий риск «звона» и искажений на контурах из-за резкого обрезания высоких частот. |
Графические иллюстрации (гипотетические):
- Оригинальное изображение с шумом: Представьте изображение с заметной зернистостью и четкими контурами.
- Изображение после фильтрации (n=2, низкая Ωс): Изображение становится очень гладким, шум почти полностью исчезает, но все контуры сильно размыты, мелкие детали потеряны. Выглядит «акварельно».
- Изображение после фильтрации (n=4, средняя Ωс): Шум значительно уменьшен, контуры сглажены, но все еще различимы. Изображение выглядит чище, но не так резко, как оригинал.
- Изображение после фильтрации (n=8, высокая Ωс): Шум уменьшен минимально, но контуры остаются очень резкими. Вокруг ярких границ могут появиться легкие ореолы или «звон».
Выбор оптимальных значений n и Ωс всегда зависит от конкретной задачи ЦОИ. Для задач, где важно полное удаление шума ценой размытия (например, предварительная обработка для сегментации), можно использовать высокий порядок и низкую частоту среза. Для задач, где необходимо сохранить мелкие детали (например, улучшение изображения для визуального анализа), предпочтительнее меньший порядок и более высокая частота среза, или даже адаптивные методы фильтрации.
Сравнительный анализ фильтров Баттерворта с альтернативными низкочастотными фильтрами для ЦОИ
В мире цифровой обработки сигналов и изображений существует множество подходов к низкочастотной фильтрации, каждый из которых обладает своими уникальными характеристиками и областями применения. Фильтры Баттерворта, Чебышева, Гаусса и усредняющие фильтры представляют собой лишь часть этого спектра. Понимание их сильных и слабых сторон позволяет инженеру сделать осознанный выбор в зависимости от конкретных требований задачи и допустимых компромиссов.
Сравнение с фильтрами Чебышева
Фильтры Баттерворта и Чебышева — два столба классической теории фильтров, предназначенных для аппроксимации идеальной прямоугольной АЧХ. Однако их подход к аппроксимации существенно различается.
- Амплитудно-частотная характеристика (АЧХ):
- Фильтр Баттерворта: Обладает максимально плоской АЧХ в полосе пропускания. Это означает отсутствие пульсаций (равномерный отклик) в этой полосе, что обеспечивает минимальные искажения амплитуды пропускаемых частот. Спад АЧХ монотонный.
- Фильтр Чебышева: Обеспечивает равноволновую аппроксимацию в полосе пропускания (фильтр Чебышева I рода) или в полосе задерживания (фильтр Чебышева II рода). Это означает наличие пульсаций (неравномерностей) в полосе пропускания (I рода) или в полосе задерживания (II рода). Однако за счет этих пульсаций фильтр Чебышева обеспечивает более крутой спад АЧХ по сравнению с фильтром Баттерворта того же порядка. Это позволяет получить большую селективность (быстрее переходить от пропускания к задерживанию) при том же порядке фильтра.
- Фазочастотная характеристика (ФЧХ):
- Фильтр Баттерворта: Отличается более близкой к линейной ФЧХ по сравнению с фильтрами Чебышева сравнимого порядка. Это критически важно для сохранения формы сигнала и предотвращения фазовых искажений, которые могут приводить к «звону» или искажению геометрии объектов на изображении.
- Фильтр Чебышева: Имеет значительно более нелинейную ФЧХ в полосе пропускания. Эта нелинейность вносит существенные фазовые искажения, что делает его менее подходящим для приложений, где сохранение формы сигнала имеет первостепенное значение.
- Импульсная характеристика и временные характеристики:
- Из-за более линейной ФЧХ, фильтры Баттерворта обычно демонстрируют лучшие временные характеристики, то есть меньше искажают временную форму сигнала.
- Фильтры Чебышева, из-за нелинейности ФЧХ и более крутого спада АЧХ, могут вызывать более выраженный «звон» во временной области в ответ на резкие изменения сигнала.
Вывод: Если требуется максимально гладкая АЧХ без пульсаций и относительно линейная ФЧХ для минимизации фазовых искажений (что важно для сохранения контуров изображений), фильтр Баттерворта будет предпочтительнее. Если же приоритетом является максимальная крутизна спада АЧХ при данном порядке фильтра, и можно пренебречь пульсациями в полосе пропускания и нелинейностью ФЧХ, то Чебышевский фильтр может быть более эффективным.
Сравнение с фильтрами Гаусса и усредняющими
Эти типы фильтров представляют собой более простые, часто реализуемые в пространственной области, решения для сглаживания изображений.
- Усредняющий фильтр (прямоугольный/боксовый фильтр):
- Принцип: Простейший фильтр, заменяющий значение каждого пикселя средним арифметическим значений пикселей в его окрестности (окне).
- Эффект: Эффективно подавляет случайный шум, но сильно размывает изображение, особенно контуры. В частотной области его АЧХ имеет вид sinc-функции, что приводит к значительным боковым лепесткам и эффектам «звона».
- Вычислительная эффективность: Очень высокая, особенно при использовании оптимизированных алгоритмов.
- Фильтр Гаусса:
- Принцип: Использует взвешенное усреднение, где веса пикселей определяются функцией Гаусса. Пиксели, расположенные ближе к центру окна, получают больший вес.
- Эффект: Обеспечивает более мягкое и естественное сглаживание по сравнению с усредняющим фильтром. Эффективно подавляет шум, при этом сохраняя контуры лучше, чем усредняющий. АЧХ фильтра Гаусса также имеет форму Гаусса, что означает отсутствие боковых лепестков и «звона».
- Вычислительная эффективность: Немного ниже, чем у усредняющего, но все еще достаточно высокая, так как он разделим (может быть реализован как последовательность одномерных фильтров).
- Фильтр Баттерворта (в сравнении):
- Преимущества: В отличие от усредняющего, фильтр Баттерворта обладает более гибкой и предсказуемой АЧХ, которая может быть точно настроена с помощью порядка и частоты среза. Он лучше контролирует переход от пропускаемых к задерживаемым частотам, что позволяет добиться более эффективного шумоподавления без излишнего размытия или с заданным уровнем размытия. В отличие от Гаусса, который всегда имеет плавный спад, Баттерворт может обеспечить более резкое отсечение частот при высоком порядке.
- Недостатки: Цифровая реализация БИХ-фильтра Баттерворта сложнее, чем простое усреднение или Гаусс. Также, при высоких порядках, есть риск «звона» на контурах из-за резкости АЧХ, чего практически нет у Гаусса.
Вывод: Для простого и быстрого сглаживания, особенно если важна вычислительная эффективность, подойдут усредняющие и Гаусса фильтры. Гаусс предпочтительнее для более естественного сглаживания без артефактов. Фильтр Баттерворта обеспечивает более точный контроль над частотной характеристикой и селективностью, что делает его мощным инструментом для более сложных задач, где требуется строго определенный частотный отклик.
Обзор эллиптических фильтров
Эллиптические фильтры (или фильтры Кауэра) являются наиболее эффективными с точки зрения крутизны спада АЧХ среди всех классических фильтров того же порядка. Они характеризуются равноволновым видом АЧХ как в полосе пропускания, так и в полосе задерживания, что позволяет достичь заданных требований к АЧХ при минимальном порядке.
- Преимущества: Максимальная крутизна спада АЧХ, что позволяет получить очень высокую селективность при наименьшем порядке фильтра.
- Недостатки: Имеют наиболее нелинейную ФЧХ среди всех классических фильтров, что приводит к наибольшим фазовым искажениям и, как следствие, к сильному «звону» во временной области.
Место в ЦОИ: Эллиптические фильтры редко используются для прямой обработки изображений, так как их сильные фазовые искажения приводят к неприемлемым артефактам и искажению контуров. Они находят применение там, где критически важна максимальная селективность и можно пренебречь фазовыми характеристиками (например, в некоторых задачах спектрального анализа).
Практические компромиссы и выбор фильтра
Выбор фильтра для конкретной задачи ЦОИ всегда является результатом компромисса между несколькими факторами:
- Требования к шумоподавлению: Насколько сильно нужно подавить шум?
- Требования к сохранению деталей/резкости: Насколько важно сохранить мелкие детали и контуры?
- Допустимость артефактов: Можно ли допустить «звон» или фазовые искажения?
- Вычислительные ресурсы: Насколько важна скорость обработки?
- Фильтр Баттерворта является оптимальным выбором, когда требуется хороший баланс между эффективным шумоподавлением и минимальными фазовыми искажениями, при этом обеспечивая относительно гладкую АЧХ без пульсаций. Он хорошо подходит для общего сглаживания и подавления шума, когда важно сохранить форму объектов на изображении.
- Фильтр Гаусса предпочтительнее, когда требуется очень мягкое и естественное сглаживание без артефактов, особенно для предварительной обработки в задачах компьютерного зрения, где шум не должен искажать признаки.
- Фильтр Чебышева может быть выбран, если приоритетом является максимальная селективность (крутой спад АЧХ) при заданном порядке, и можно смириться с пульсациями в полосе пропускания и нелинейностью ФЧХ (например, в задачах, где важны только амплитудные характеристики спектра).
- Усредняющий фильтр используется для быстрого и грубого сглаживания при крайне ограниченных вычислительных ресурсах.
Окончательный выбор всегда определяется спецификой задачи ЦОИ и тщательным анализом всех «за» и «против» каждого типа фильтра.
Применение низкочастотных фильтров Баттерворта в цифровой обработке изображений и программная реализация
Переход от теоретических изысканий к практической реализации — это ключевой этап в освоении любой инженерной дисциплины. Фильтры Баттерворта, с их математической элегантностью и предсказуемыми характеристиками, находят широкое применение в реальных системах цифровой обработки изображений. Их способность эффективно подавлять высокочастотный шум, минимизируя фазовые искажения, делает их ценным инструментом в арсенале разработчика.
Области применения фильтров Баттерворта в ЦОИ
Низкочастотные фильтры Баттерворта играют значительную роль в самых разнообразных сферах цифровой обработки изображений:
- Медицинская визуализация: В рентгенографии, МРТ, КТ и УЗИ изображения часто страдают от шумов, возникающих из-за особенностей оборудования или биологических процессов. Фильтры Баттерворта используются для сглаживания этих шумов, улучшая видимость анатомических структур и патологий, что критически важно для точной диагностики.
- Аэрокосмическая и спутниковая съемка: Изображения, полученные со спутников или беспилотных летательных аппаратов, часто содержат атмосферные помехи, шумы сенсоров или артефакты передачи. Фильтрация Баттерворта помогает «очистить» эти изображения, делая их более пригодными для картографии, мониторинга окружающей среды, сельского хозяйства и оборонных задач.
- Системы безопасности и видеонаблюдения: В условиях низкой освещенности или при использовании недорогих камер изображения с систем видеонаблюдения могут быть сильно зашумлены. Применение ФНЧ Баттерворта позволяет улучшить распознаваемость объектов, лиц и номерных знаков, повышая эффективность ��истем безопасности.
- Обработка фотографий и видео: В фотографии и видеопроизводстве фильтры Баттерворта могут использоваться для художественного размытия, сглаживания текстур, удаления мелких дефектов или зернистости, а также для создания эффектов «мягкого фокуса».
- Предварительная обработка для компьютерного зрения: Перед подачей изображений на вход алгоритмов компьютерного зрения (например, распознавания образов, сегментации, отслеживания объектов), часто требуется предварительное сглаживание для удаления шума, который может мешать работе этих алгоритмов. Фильтры Баттерворта эффективно выполняют эту задачу, улучшая надежность и точность последующих этапов обработки.
- Спектральный анализ и преобразование Фурье: В более широком контексте цифровой обработки сигналов, фильтры Баттерворта используются для выделения или подавления определенных частотных диапазонов в спектрах сигналов, что находит применение и в анализе изображений.
Типовая структура программного обеспечения для обработки изображений
Программное обеспечение для цифровой обработки изображений обычно строится по модульному принципу, где каждый этап обработки выполняет свою специфическую функцию. Типовая архитектура включает следующие основные этапы:
- Ввод изображения (Image Input): Загрузка изображения из файла (JPEG, PNG, BMP и так далее) или получение данных с камеры/сканера.
- Аналого-цифровое преобразование (АЦП): Если источник аналоговый (например, видеокамера), сигнал сначала дискретизируется (превращается в последовательность отсчетов) и квантуется (амплитуда отсчетов приводится к конечному набору значений) для формирования цифрового изображения.
- Предварительная обработка (Preprocessing): На этом этапе могут выполняться различные операции, такие как:
- Коррекция яркости и контраста.
- Цветовая коррекция.
- Геометрические преобразования (масштабирование, поворот).
- Шумоподавление/Фильтрация (Noise Reduction/Filtering): Именно здесь находят применение низкочастотные фильтры Баттерворта. Изображение, возможно, после преобразования в частотную область (с помощью ДПФ), обрабатывается фильтром для подавления высокочастотного шума.
- Сегментация (Segmentation): Разделение изображения на смысловые области или объекты.
- Извлечение признаков (Feature Extraction): Выделение характерных свойств объектов (контуры, текстуры, формы).
- Классификация/Распознавание (Classification/Recognition): Идентификация объектов на изображении.
- Визуализация и вывод (Visualization & Output): Отображение обработанного изображения на экране, сохранение в файл или передача в другую систему.
Блок-схема типовой структуры ПО для ЦОИ:
[Источник изображения (Камера/Файл)]
↓
[Аналого-цифровое преобразование (АЦП)]
↓
[Загрузка/Представление изображения в памяти]
↓
[Преобразование цветового пространства (при необходимости)]
↓
[БЛОК ПРЕДВАРИТЕЛЬНОЙ ОБРАБОТКИ]
↓
[Шумоподавление (с использованием ФНЧ Баттерворта)]
↓
[Другие операции (коррекция яркости, контраста)]
↓
[Сегментация]
↓
[Извлечение признаков]
↓
[Классификация/Распознавание]
↓
[Вывод/Сохранение результата]
Алгоритмические особенности реализации 2D-фильтрации
Фильтры Баттерворта, как и большинство классических фильтров, изначально разрабатывались для одномерных сигналов. Применение их к двумерным изображениям требует определенных адаптаций. Изображение можно рассматривать как двумерный дискретный сигнал, и фильтрация может осуществляться в пространственной или частотной области.
- Фильтрация в частотной области:
- Изображение (например, в градациях серого) преобразуется в частотную область с помощью двумерного дискретного преобразования Фурье (ДПФ или БПФ).
- В частотной области создается двумерная передаточная функция фильтра Баттерворта. Для кругового симметричного ФНЧ Баттерворта, функция имеет вид:
H(u,v) = 1 / (1 + (D(u,v)/D0)2n)где
D(u,v) = √((u - M/2)2 + (v - N/2)2)— расстояние от центра частотного спектра (M/2, N/2) до точки (u,v),D0— частота среза, аn— порядок фильтра. - Полученный частотный спектр изображения поэлементно умножается на передаточную функцию фильтра.
- Результат обратного двумерного преобразования Фурье дает отфильтрованное изображение.
- Разделяемая фильтрация (Separable Filtering):
Многие 2D-фильтры, включая Гауссовские, могут быть разложены на последовательность двух 1D-фильтров — сначала применяется одномерный фильтр вдоль строк, а затем другой одномерный фильтр вдоль столбцов. Эта техника значительно снижает вычислительную сложность. Однако не все фильтры Баттерворта являются строго разделяемыми в том же смысле, что и Гауссовские, если речь идет о прямой свертке. Тем не менее, общую идею можно применить: сначала фильтровать изображение по горизонтали, а затем результат по вертикали, используя одномерный цифровой фильтр Баттерворта. - Особенности обработки граничных условий изображения при свертке:
При выполнении свертки (применения фильтра в пространственной области) возникает проблема обработки пикселей, находящихся у границ изображения. Ядро фильтра выходит за пределы изображения. Существует несколько стандартных подходов:- Заполнение нулями (Zero Padding): Добавление нулей вокруг изображения. Это может создавать темные границы и артефакты.
- Повторение границ (Replicate Padding): Повторение значений крайних пикселей.
- Зеркальное отражение (Mirror Padding): Отражение изображения относительно границ. Обычно дает лучшие результаты.
- Циклическое расширение (Wrap Around): Использование пикселей с противоположной стороны изображения. Подходит для периодических сигналов.
- Обрезка (Crop): Просто игнорировать граничные пиксели, которые не могут быть полностью обработаны. Это уменьшает размер выходного изображения.
Практическая реализация на примере MATLAB/Python (с OpenCV)
Программные пакеты, такие как MATLAB и Python с библиотеками SciPy и OpenCV, предоставляют мощные инструменты для проектирования, анализа и применения цифровых фильтров.
Пример на MATLAB
MATLAB (MATrixLABoratatory) — это система инженерных и научных расчетов, где основным объектом является матрица, и все вычисления осуществляются в арифметике с плавающей точкой. Он предоставляет встроенные функции для работы с фильтрами.
% Проектирование и применение низкочастотного фильтра Баттерворта в MATLAB
% 1. Загрузка изображения
img = imread('test_image_noisy.jpg'); % Загрузка зашумленного изображения
img_gray = rgb2gray(img); % Преобразование в оттенки серого, если необходимо
% 2. Параметры фильтра Баттерворта
order = 5; % Порядок фильтра
cutoff_freq = 0.1; % Нормированная частота среза (от 0 до 1, где 1 соответствует Nyquist freq)
% 3. Проектирование фильтра (для 2D фильтрации в частотной области)
% Создаем двумерную передаточную функцию фильтра Баттерворта
[M, N] = size(img_gray);
[u, v] = meshgrid(1:N, 1:M);
% Смещение центра на (M/2, N/2)
u = u - (N/2 + 1);
v = v - (M/2 + 1);
% Расстояние от центра
D = sqrt(u.^2 + v.^2);
% Нормированная частота среза для 2D
D0 = cutoff_freq * (min(M,N)/2); % Адаптируем к размерам изображения
% Передаточная функция ФНЧ Баттерворта
H = 1 ./ (1 + (D ./ D0).^(2*order));
% 4. Применение фильтра в частотной области
% Выполняем 2D БПФ изображения
F = fft2(double(img_gray));
F_shifted = fftshift(F); % Сдвиг нулевой частоты в центр
% Применяем фильтр (умножаем спектр на передаточную функцию)
G_shifted = F_shifted .* H;
% Обратное смещение нулевой частоты
G = ifftshift(G_shifted);
% Выполняем обратное 2D БПФ
img_filtered = real(ifft2(G)); % Берем только действительную часть
% 5. Отображение результатов
figure;
subplot(1, 2, 1); imshow(img_gray); title('Оригинальное изображение с шумом');
subplot(1, 2, 2); imshow(uint8(img_filtered)); title(['Фильтр Баттерворта (Порядок = ', num2str(order), ', Срез = ', num2str(cutoff_freq), ')']);
% Можно также использовать встроенные функции для 1D фильтрации, а затем применять их к строкам/столбцам
% Для 1D БИХ-фильтра:
% [b, a] = butter(order, cutoff_freq, 'low'); % Коэффициенты БИХ-фильтра
% filtered_row = filtfilt(b, a, double(img_gray(100,:))); % Пример применения к одной строке
Пример на Python (с SciPy и OpenCV)
Python, в сочетании с библиотеками scipy.signal для проектирования фильтров и opencv-python (cv2) для обработки изображений, предоставляет гибкую и мощную среду.
import cv2
import numpy as np
from scipy import signal
from matplotlib import pyplot as plt
# 1. Загрузка изображения
img = cv2.imread('test_image_noisy.jpg', cv2.IMREAD_GRAYSCALE) # Загрузка в оттенках серого
# Проверка загрузки изображения
if img is None:
print("Ошибка: Не удалось загрузить изображение.")
exit()
# Конвертация в float32 для обработки
img_float = img.astype(np.float32)
# 2. Параметры фильтра Баттерворта
order = 5 # Порядок фильтра
cutoff_freq_norm = 0.1 # Нормированная частота среза (от 0 до 1, где 1 - Nyquist freq)
# Примечание: scipy.signal.butter принимает нормированную частоту среза
# в диапазоне [0, 1], где 1 соответствует частоте Найквиста (половине частоты дискретизации).
# 3. Проектирование фильтра (для 2D фильтрации в частотной области)
# Вычисляем 2D БПФ
dft = cv2.dft(img_float, flags=cv2.DFT_COMPLEX_OUTPUT)
dft_shift = np.fft.fftshift(dft)
magnitude_spectrum = 20 * np.log(cv2.magnitude(dft_shift[:,:,0], dft_shift[:,:,1]))
rows, cols = img.shape
crow, ccol = rows // 2, cols // 2
# Создаем сетку расстояний
u = np.arange(cols) - ccol
v = np.arange(rows) - crow
U, V = np.meshgrid(u, v)
D = np.sqrt(U**2 + V**2)
# Передаточная функция ФНЧ Баттерворта
# D0 - частота среза. Для нормированной частоты cutoff_freq_norm,
# D0 = cutoff_freq_norm * (rows/2) или (cols/2) в зависимости от контекста.
# Здесь используем более общий подход, связанный с максимальным расстоянием
max_D = np.max(D)
D0 = cutoff_freq_norm * (max_D / np.sqrt(2)) # Адаптируем к нормированной частоте
H = 1 / (1 + (D / D0)**(2 * order))
# Добавляем измерение для комплексных чисел, чтобы соответствовать dft_shift
H = np.stack([H, H], axis=-1)
# 4. Применение фильтра (умножаем спектр на передаточную функцию)
filtered_dft_shift = dft_shift * H
# Обратное смещение и обратное БПФ
idft_shift = np.fft.ifftshift(filtered_dft_shift)
img_filtered_complex = cv2.idft(idft_shift)
img_filtered = cv2.magnitude(img_filtered_complex[:,:,0], img_filtered_complex[:,:,1])
# Нормализация для отображения
img_filtered_norm = cv2.normalize(img_filtered, None, 0, 255, cv2.NORM_MINMAX)
img_filtered_norm = img_filtered_norm.astype(np.uint8)
# 5. Отображение результатов
plt.figure(figsize=(10, 5))
plt.subplot(121), plt.imshow(img, cmap='gray')
plt.title('Оригинальное изображение с шумом'), plt.xticks([]), plt.yticks([])
plt.subplot(122), plt.imshow(img_filtered_norm, cmap='gray')
plt.title(f'Фильтр Баттерворта (Порядок={order}, Срез={cutoff_freq_norm})'), plt.xticks([]), plt.yticks([])
plt.show()
# Пример использования 1D фильтра Баттерворта через scipy.signal.butter и filtfilt
# Для 1D фильтрации (применяется к каждой строке, затем к каждому столбцу)
# Это более сложный подход для 2D, но демонстрирует использование 1D БИХ-фильтра
# b, a = signal.butter(order, cutoff_freq_norm, btype='low', analog=False)
# Применение к строкам
# img_filtered_rows = np.zeros_like(img_float)
# for i in range(rows):
# img_filtered_rows[i, :] = signal.filtfilt(b, a, img_float[i, :])
# Применение к столбцам
# img_filtered_cols = np.zeros_like(img_float)
# for j in range(cols):
# img_filtered_cols[:, j] = signal.filtfilt(b, a, img_filtered_rows[:, j])
# img_filtered_spatial = cv2.normalize(img_filtered_cols, None, 0, 255, cv2.NORM_MINMAX).astype(np.uint8)
# plt.figure(figsize=(10, 5))
# plt.subplot(121), plt.imshow(img, cmap='gray')
# plt.title('Оригинальное изображение с шумом'), plt.xticks([]), plt.yticks([])
# plt.subplot(122), plt.imshow(img_filtered_spatial, cmap='gray')
# plt.title(f'Фильтр Баттерворта (пространственная 1D-фильтрация)'), plt.xticks([]), plt.yticks([])
# plt.show()
В этих примерах демонстрируется подход к 2D-фильтрации в частотной области, который является наиболее распространенным для фильтров, определяемых своей частотной характеристикой. Он позволяет точно контролировать спектральные компоненты изображения. В случае, если требуется более традиционная пространственная свертка, можно использовать ядро фильтра, полученное обратным преобразованием Фурье от передаточной функции фильтра Баттерворта, а затем применить его к изображению с помощью функции cv2.filter2D.
Заключение
В рамках данной курсовой работы было проведено всестороннее исследование фильтров низких частот Баттерворта, охватывающее их теоретические основы, алгоритмы цифровой реализации и практическое применение в цифровой обработке изображений. Мы начали с погружения в фундаментальные математические концепции, определив ФНЧ как краеугольный камень в устранении высокочастотных шумов, и детально проанализировали уникальные свойства фильтра Баттерворта, такие как его максимально-плоская амплитудно-частотная характеристика и относительно линейная фазочастотная характеристика.
Особое внимание было уделено сложным, но критически важным аспектам цифровой реализации. Подробно рассмотрены методы перехода от аналогового прототипа к цифровому фильтру с использованием билинейного преобразования, а также детализирован пошаговый алгоритм расчета коэффициентов БИХ-фильтра Баттерворта, включая незаменимый метод предыскажения (pre-warping) для компенсации нелинейности частоты. Эти шаги являются основой для точного и эффективного проектирования цифровых фильтров.
Анализ влияния порядка фильтра и частоты среза на характеристики обработанного изображения позволил установить прямую зависимость между этими параметрами и степенью шумоподавления, размытия и сохранения деталей. Систематическая визуализация гипотетических эффектов показала, что выбор оптимальных значений всегда является компромиссом между эффективностью подавления шума и сохранением важной визуальной информации.
Сравнительный анализ фильтров Баттерворта с альтернативными низкочастотными решениями — такими как фильтры Чебышева, Гаусса и усредняющие — выявил их сильные и слабые стороны. Было показано, что фильтры Баттерворта превосходят Чебышевские в линейности фазы, что критично для сохранения формы сигнала, и обеспечивают более гибкий контроль над частотной характеристикой по сравнению с Гауссовыми и усредняющими фильтрами, предлагая сбалансированное решение для многих задач ЦОИ.
Наконец, были рассмотрены обширные области применения фильтров Баттерворта в цифровой обработке изображений, от медицины до систем безопасности, а также представлена типовая архитектура программного обеспечения. Примеры реализации на MATLAB и Python с библиотекой OpenCV продемонстрировали практические аспекты проектирования и применения 2D-фильтров в частотной области, подчеркивая алгоритмические особенности обработки изображений. Как показывают эти примеры, современные инструменты значительно упрощают процесс, позволяя разработчикам сосредоточиться на тонкой настройке параметров для достижения наилучшего результата.
Подводя итог, фильтры Баттерворта представляют собой мощный и универсальный инструмент в арсенале специалиста по цифровой обработке изображений. Их глубокая теоретическая база в сочетании с предсказуемыми и настраиваемыми характеристиками делает их незаменимыми для задач шумоподавления и сглаживания, где требуется высокий уровень контроля над частотным откликом при минимальных фазовых искажениях.
Для дальнейших исследований можно рассмотреть адаптивные методы фильтрации Баттерворта, где параметры фильтра (порядок или частота среза) динамически изменяются в зависимости от локальных характеристик изображения, а также изучение влияния различных методов обработки граничных условий на качество фильтрации. Кроме того, углубленное сравнение с современными методами шумоподавления на основе машинного обучения и нейронных сетей могло бы выявить новые перспективы для гибридных подходов.
Список использованной литературы
- Гашников М. В. Методы обработки изображений: Учебное пособие / Под ред. В. А. Сойфьера. М.: Феникс, 2001. 784 с.
- Гонсалес Р. Цифровая обработка изображений. М.: Техносфера, 2005. 1073 с.
- Рабинер Л. Теория и применение цифровой обработки сигналов. М.: Мир, 1978. 232 с.
- Современная теория фильтров и их проектирование / Под ред. Г. Темеша и С. Митра. М.: Мир, 1977. 327 с.
- Матвеев Ю. Н., Симончик К. К., Тропченко А. Ю., Хитров М. В. ЦИФРОВАЯ ОБРАБОТКА СИГНАЛОВ: Учебное пособие. СПб: СПбНИУ ИТМО, 2013. 166 с.
- Коберниченко В. Г. Основы цифровой обработки сигналов: учеб. пособие. Екатеринбург: Изд-во Урал. ун-та, 2018. 150 с.
- Оппенгейм А., Шафер Р. Цифровая обработка сигналов. Москва: Техносфера, 2012.
- Расчет и проектирование цифровых фильтров: Уральский федеральный университет. 2022. URL: https://elar.urfu.ru/bitstream/10995/103986/1/978-5-7996-3398-4_2022.pdf (дата обращения: 07.11.2025).
- Пример расчета цифрового фильтра нижних частот Баттерворта. dsplib.ru. URL: https://dsplib.ru/content/butterworth-digital-lpf.html (дата обращения: 07.11.2025).
- Федосов В. П., Нестеренко А. К. Цифровая обработка сигналов в LabVIEW: учеб. пособие / под ред. В. П. Федосова. М.: ДМК Пресс, 2007. 456 с.
- Аппроксимация АЧХ фильтров: Цифровая техника в радиосвязи. URL: http://www.radioconf.ru/wp-content/uploads/2015/03/%D0%90%D0%BF%D0%BF%D1%80%D0%BE%D0%BA%D1%81%D0%B8%D0%BC%D0%B0%D1%86%D0%B8%D1%8F-%D0%90%D0%A7%D0%A5-%D1%84%D0%B8%D0%BB%D1%8C%D1%82%D1%80%D0%BE%D0%B2.pdf (дата обращения: 07.11.2025).
- Богачев А. В., Соколова В. С., Якунин С. Г. Методические указания к лабораторным работам по дисциплине «Цифровая обработка сигналов». Часть 2. Цифровые фильтры. Тамбов: Изд-во ФГБОУ ВПО «ТГТУ», 2013. 52 с.
- ФНЧ. Фильтр Баттерворта. URL: https://window.edu.ru/resource/666/75666/files/tgu034.pdf (дата обращения: 07.11.2025).
- Мошиц Г. П., Хорн П. Проектирование активных фильтров: пер. с англ. М.: Мир, 1984. 320 с.