
Функции Image Toolbox / ftrans2.php
.htmСписок функцийImage Processing Toolbox. Описание функции FTRANS2 Семинары Обучение Лицензирование Разработка Подписка Форум Регистрация Matlab Toolboxes Simulink Blocksets Femlab Полезное Вход Обработка сигналов и изображений\image Processing ToolboxСписок функций Image Processing Toolbox: Фильтрация изображений
В оглавление \ К следующему разделу \ К предыдущему разделу
FTRANS2 Формирование маски линейного фильтра
методом преобразования частот Синтаксис:
h=ftrans2(b)
h=ftrans2(b, t)
Описание:
Функция h=ftrans2(b) формирует маску h линейного двумерного КИХ-фильтра, используя метод преобразования частот для трансформации одномерного КИХ-фильтра с коэффициентом b. Вектор b коэффициентов фильтра возвращают функции fir1, fir2, remez из Signal Processing Toolbox. Метод преобразования частот трансформирует одномерный КИХ-фильтр в двумерный [5]. Для преобразования частот используется специальная матрица трансформации t. По умолчанию применяется матрица Мак-Клеллана:
.
В функции h=ftrans2(b, t) можно указать иную матрицу трансформации t.
Маска h предназначена для передачи в функции filter2 или conv2, которые выполняют двумерную линейную фильтрацию.
Алгоритм:
Метод преобразования частот [2-4] заключается в том, что АЧХ двумерного фильтра формируется как
,
где - ДПФ одномерного фильтра b:
;
- двумерное ДПФ матрицы трансформации t:
.
Для вычисления маски фильтра h выполняется обратное ПФ АЧХ [1]:
.
Пример:
Рассмотрим, как формируется двумерный ФНЧ по одномерному с помощью метода преобразования частот. Создадим одномерный КИХ ФНЧ 14-го порядка с частотой среза 0.2. АЧХ и ФНЧ такого фильтра приведены на рис. 1, а. С помощью функции ftrans2 одномерный ФНЧ трансформируется в двумерный. АЧХ двумерного ФНЧ приведена на рис. 1, б.
На рис. 1, в показано исходное изображение, полученное в результате сканирования полиграфической иллюстрации. Данное изображение имеет характерный дефект - паразитную регулярную структуру, которая возникает в результате сканирования. Подобные дефекты называют муаром. Для подавления муара исходное изображение необходимо размыть. Это можно сделать с помощью созданного двумерного ФНЧ. Результат фильтрации показан на рис. 1, г.
%Пример демонстрирует размытие изображения
%с целью подавления муара.
%Размытие выполняется с помощью линейного двумерного КИХ ФНЧ,
%сформированного из одномерного ФНЧ
%методом преобразования частот.
%Создание одномерного КИХ ФНЧ 14-го порядка
%с частотой среза 0.2.
b=fir1(14, 0.2);
%Вывод на экран АЧХ и ФНЧ созданного одномерного фильтра.
freqz(b, 1, 256);
%Формирование двумерного фильтра из одномерного.
h=ftrans2(b);
%Вывод на экран АЧХ двумерного фильтра.
figure, freqz2(h);
%Чтение исходного изображения из файла и вывод его на экран.
I=imread(‘image1.bmp’);
I=im2double(I);
figure, imshow(I);
%Фильтрация изображения и вывод на экран результата фильтрации.
I=filter2(h,I);
figure, imshow(I);
а) б) в) г) Рис.1.
Сопутствующие функции: FILTER2, CONV2, FSAMP2, FWIND1, FWIND2.
Ссылки на литературу: Лэм Г. Аналоговые и цифровые фильтры: расчет и реализация. М.: Мир, 1982.
Lim, Jae S. Two-Dimensional Signal and Image Processing // Englewood Cliffs. New Jersey: Prentice Hall, 1990.
Антонью А. Цифровые фильтры: Анализ и проектирование. - М.: Радио и связь, 1983. - 320 с.
Бронников А.Б., Воскобойников Ю.Е. Комбинированные алгоритмы нелинейной фильтрации зашумленных сигналов и изображений // Автометрия. - 1990. - № 1. - С. 21-26.
Кронрод М.А. Несколько задач обработки изображений / Вопросы кибернетики. - Вып. 38 : Иконика. Цифровая обработка и фильтрация изображений. - М.: ВИНИТИ, 1978. - С. 49-59.
В оглавление \ К следующему разделу \ К предыдущему разделу
I Всероссийская научная конференция "Проектирование научных и инженерных приложений в среде MATLAB" (май 2002 г.)
II Всероссийская научная конференция "Проектирование научных и инженерных приложений в среде MATLAB" (май 2004 г.) На первую страницу \ Сотрудничество \ MathWorks \ SoftLine \ Exponenta.ru \ Exponenta Pro E-mail: matlab@exponenta.ru Информация на сайте была обновлена 14.05.05 Copyright 2001-2005 SoftLine Co
Наши баннеры hotlog_js="1.0"; hotlog_r=""+Math.random()+"&s=58396&im=33&r="+escape(document.referrer)+"&pg="+ escape(window.location.href); document.cookie="hotlog=1; path=/"; hotlog_r+="&c="+(document.cookie?"Y":"N"); hotlog_js="1.1";hotlog_r+="&j="+(navigator.javaEnabled()?"Y":"N") hotlog_js="1.2"; hotlog_r+="&wh="+screen.width+'x'+screen.height+"&px="+ (((navigator.appName.substring(0,3)=="Mic"))? screen.colorDepth:screen.pixelDepth) hotlog_js="1.3" hotlog_r+="&js="+hotlog_js; document.write("") >