Гонсалес Р., Вудс Р., Эддинс С. Цифровая обработка изображений в среде Matlab (2006) (1246139), страница 27
Текст из файла (страница 27)
Обработпка в частпотпной области н(14у) н114у) '/ Сошриге СЬе шевЬБг14 аггаув. [Ч, Щ = шевЬБг14(н, и); Пример 4.3. Употребление функции Юсин. В качестве иллюстрации рассмотрим следующие команды для вычисления квад- рата расстояния от начала координат до всех точек частотного прямоугольника размеров 8хб. » Й, у) » 0 = 8."2 Э = 0 1 4 9 16 9 4 1 Ыгин(8, 5); + 'т'. "2 Обратите внимание на то, что расстояние до левой верхней точки равно О, а наибольшее расстояние — до центра прямоугольника, что соответствует формату, который объяснялся на рис. 4.2, а).
Чтобы найти расстояния от центра прямоугольника до всех его точек, достаточно применить к массиву 0 функцию ггсвЬ1Хс; » гггвЬ1гс(0); 17 16 17 20 10 9 10 13 5 4 5 8 2 1 2 5 1 0 1 4 2 1 2 Б 5 4 Б 8 10 9 10 13 Расстояние до точки (5, 3) равно нулю, и массив симметричен относительно этой точки. П 4.5.2. Низкочастотные фильтры Идеальный низкочастотный фильтр (1ЬРЕ, 1т1еа1 Еоиравэ Ейгег) имеет передаточную функцию ( 1 при Р(и,и) ( Ро Н(и,о) =1 1 0 при Р(и,о) > Ро, 20 13 8 Б 4 5 8 13 1 4 2 Б 5 8 10 13 17 20 10 13 Б 8 2 5 4 1 5 2 8 Б 13 10 20 17 13 10 8 5 Б 2 ««О «б 1«~3 где Ро — это заданное неотрицательное число, а Р(и, о) — расстояние от центра фильтра до точки (и,и).
Геометрическое место точек (и,и), для которых Р(и, и) = Ро, является окружностью. Помня о том, что фильтр Н умножается на преобразование Фурье изображения, можно заключить, что идеальный фильтр «срезает> (умножает на ноль) все компоненты Е, лежащие вне этой окружности. и оставляет неизменными (умножает на 1) все компоненты, находящиеся внутри или на границе окружности.
Несмотря на то, что этот фильтр невозможно реализовать на практике в аналоговой форме с помощью электронных компонент, его, безусловно, можно смоделировать на компьютере с помощью заданной передаточной функции. Свойства идеального фильтра часто бывают полезными при объяснении таких явлений, как ошибки перекрытия. Низкочастотный фильтр Баттсрворта (ВЬРЕ, Вп11егчгог1п Ьо««резв Е111ег) порядка н с обрезанием частот на расстоянии Ро от начала координат имеет передаточную функцию Н(и,и) = 1 1+ [Р(и,о)(Ро) " В отличие от идеального низкочастотного фильтра, функция фильтра ВЬРР' не имеет разрыва в пороговой точке Ро.
Для фильтров с гладкой передаточной функцией принято задавать частоту срезания, которая определяется положением точек, для которых функция Н(и,о) меньше определенной доли ее максимального значения. В предыдущем уравнении значение Н(и, и) = 0.5 (т. е., 50% от максимального значения, которое равно 1), когда Р(и, о) = Ро. Передаточная функция гауссова низкочастотного фильтра (СЬРЕ, Сацзз1ап Ьо«чреве Е1!гег) задается формулой Н(и,и) = с где о — это стандартное отклонение. Если положить а = Ро, то получится сле- дующее выражение в терминах срезающего параметра Ро.
Н( ) — О«1и,«))зоо При Р(и, и) = Ро значение фильтра в этих точках меньше, чем 0.607 от макси- мального значения, которое равно 1. Пример 4.4. Низкочастотн я фильтрация. Для пояснения введенных понятий мы применим гауссов низкочастотный фильтр к изображению й размера 500 х 500 пикселов, приведенному на рис. 4.13, а). Мы взяли Ро, равное 5% от ширины расширения изображения.
Совершая шаги фильтрации, приведенные в 3 4.3.2, имеем » РЦ = раааеав1яе(в1яе И)); » [О, У) = 6«Сии(РЦ(1), РЦ(2)); » 00 = 0.05«РЦ(2); » Р = ИС2(1, РЦ(1), РЦ(2)); » Н = ехр(-И. 2 + У. 2)/(2«(00 2))); % Ча114 ча1иея 1ог ТУРЕ, 00, злй и аге: % % 'Ыеа1' % % % 'ЬСю' ВиССегиогСЬ 1ояраяв 111Сег о1 огоег п, ало сисогг % 00.
ТЬе деуаи1С ча1ие 1ог и 1в 1.0, 00 шияС Ье % роз1С1че. % % 'Еаияв1ап' Оаияя1ал 1очраяя 111Сег ю1СЬ сисогг (ясалйагд % оеч1аС1оп) 00. и пеей поС Ье вирр11еб. 00 шивС Ье % роз1С1че. % Ряе 1ипсС1оп огсич Со зеС ир СЬе шевЬягЫ аггаув пееоео Хог % сошриС1пй СЬе геои1гей о1зсапсез. ГР, Ч) = <1ХСич(М, И); % Сошрисе СЬе о1яСапсея РЯ, Ч). Р = япгС(0.-2 + Ч.-г); % ВеЕ1п 111сег сошриСаС1опв. яч1ССЬ Суре сазе 'Ыеа1' Н = 6оиЬ1е(Р <= 00); саяе 'ЬСв' 11 пагя1п == 4 и=1; епи Н = 1./(1 + И./00) . (2еп)); саве 'Еаияя1ап' Н = ехр((Р."2)./(2и(00-2))); оСЬегч1яе еггог('Рп)сповп 111Сег Суре.') епо 14еа1 1овраяя 111Сег и1СЬ сисогт Угециепсу 00.
и пеев поС Ье яирр11ед. 00 шивС Ье роя1С1че. Функция 1РХ11Сег будот использоваться в 3 4.6 как основа для построения высокочастотных фильтров. 4.5.3. Построение графиков каркасных контуров и поверхностей шеяЬ(Н). Построение графиков функций одной переменной рассматривалось в 3 3.3.1.
В этом параграфе мы обсудим методы построения трехмерных каркасных (сеточных) контуров н поверхностей, которые могут быть полезными при визуализации передаточных функций двумерных изображений. Самый простой способ нарисовать сеточный график данной двумерной функции Н состоит в применении функции шевЬ, которая имеет базовый синтаксис ~~~ 146 Глава 4. Обрабвтииа в часттиинивй области Эта функция рисует каркасный контур для точек х = 1:И и у = 1тй, где [И, И) в1яе (Н) . Вид каркасного контура становится очень плотным и неудобным для глаза, когда числа И и М вЂ” велики.
В этом случае удобно строить только кажную Й-ую точку по каждой оси с помощью команды шев)т(Н(1т)степб, 1т1степб)) Как правило, если использовать при построении каркасного контура от 40 до 60 точек по каждой оси, то результат будет вполне приемлемым компромиссом между разрешением и внешним видом изображения. По умолчанию МАТЬАВ строит сеточные графики в цвете. Команда со1огшар([0 0 О)) устанавливает черную сетку (более подробно функция со1огшар будет рассматриваться в гл. 6).
МАТЬАВ также накладывает оси и линии координатной сетки на сеточный график. Эти атрибуты отключаются командой яг16 огг ах1в огг . Снова включить их можно соответствующей командой, в которой огг заменено на оп. Наконец, точка обзора (местоположение наблюдателя) контролируется функцией иаеч, которая имеет синтаксис ч(еч(ах, е1) На рис.
4.14 показано, что ах н е1 представляют собой, соответственно, азимут и угол возвышения (измеренные в градусах). Стрелками обозначены положительные направления. Значения по умолчанию; ах = -37. б и е1 = 30, которые помещают наблюдателя в квадрант, задаваемый полуосями — х и — у, откуда он смотрит на квадрант, определяемый положительными полуосями х и у на рис. 4.14. Чтобы узнать текущее значение углов обзора, следует набрать )) [ах, е1] = ч1еч; зоре А чтобы присвоить этим параметрам значения по умолчанию, надо набрать » члетт(3) Точку обзора лтожно менять интерактивно, если нажать мышью на кнопку Носасе ЗР в строке инструментов окна графиков, а за- У тем действовать мышью в окне графика.
В гл. 6 будет показано, как можно задаРис. 4.14. Геометрия функции егеч вать точку обзора с помощью декартовых координат, что весьма удобно при работе с цветными данными в формате НОВ. Однако при построении общих графиков удобно использовать описанный выше метод, т. к. в нем используется всего два параметра и он является более наглядным. р.г г б ~4~~1) Пример 4.5. Построение сеточных графиков. Рассмотрим гауссов низкочастотный фильтр из примера 4.4. » Н = хтхвЬ1хх[1Рт11хет('бацвв1ап', 500, 500, 50)); На рис. 4.15, а) показан сеточный (каркасный) график, построенный командами » гаевЬ[Н[1:10:500, 1:10:500)) » ах1в[[0 50 0 50 0 1]) Команда ах1в была описана в 8 3.3.1 в двумерном случае.
Здесь же обозначен третий диапазон для координат по оси г. б) л) 1 0.8 0.6 Оя 02 0 80 в) Рис. 4.10. е) График, построеииый функцией аеаЬ. б) Удалены оси и координатная сетка. г) Другая точка обзора, заданная функцией нтеи. г) Третья точка обзора, заданная той же функцией Как уже ранее отмечалось, сеточный график по умолчанию рисуется в цвете, причем цвета меняются от синего в основании до красного в вершине. Преобразуем цвет линий графика в черный и отменим нанесение осей и координатных линий командами » со1отиар[[0 0 0] ) » ахти отх » Нг1с1 озз На рис.
4.15, б) дан результат. На рис. 4.15, в) приведен результат выполнения команды » п1еи[-25, 30) (~!48 5".5а и .Н 5165ОГНГилн ! 5НГиилниио обиГ~ГГи! К! ТГ555НЯ ГЪННГНГТ ННГГГНГ!!Н Г!':1Я ГН МНОГО ВНГ5ННО, О( ГНН !ЯЯ !и Н !Л5ГННЫК! ! ! Г51 К!5!ГН ! сцп РФ С4~9 в интервале от — 2 до 2 с шагом 0.1 по обоим аргументам г и у. Пишем » 1У, Х] = шевЬяг14(-2:0.1:2, -2:0.1:2); » 2 = Х.*ехр(-Х. 2-У. 2); 4.6.
Повышение резкости при частотной фильтрации В противоположность низкочастотной фильтрации, которая приводит к размытию изображений, высокочастотная фильтрация повьппает резкость изображения, ослабляя низкие частоты и оставляя высокие частоты преобразования Фурье относительно неизменными. В ятом параграфе будут рассмотрены некоторые подходы к высокочастотной фильтрации.
4.6.1. Основы высокочастотной фильтрации Имея передаточную функцию Н1р(и,и) низкочастотного фильтра, можно получить передаточную функцию соответствующего высокочастотного фильтра с поыогцью формулы Нар(и, и) = 1 — Н|р(и, и) . Значит, функцию 1р111сег, разработанную в предыдущем параграфе, можно использовать для построения генератора высокочастотных фильтров: 1ппсС1оп Н = Ьр111Сег(Суре, М, Н, РО, и) %НРР11ТЕК Сошрцсея Угеапепсу йоша1п ЬСЕЬраяя 111сегв.
% Н = НРР11ТЕК(ТУРЕ, М, Н, РО, и) сгеаСев СЬе Сгапв1ег Уппсс1оп оХ % а ЫяЬраяз 111сег, Н, о1 СЬе врес111ес) ТУРЕ апй в1яе (М-Ьу-М). % Ча116 ча1пез Уог ТУРЕ, РО, апа п аге: '/ % '1с)еа1' 14еа1 ЬХЕЬравз 111сег и1СЬ спсогг Угеопепсу РО. и % пеео поС Ье япрр11еа. РО шпяС Ье ров1Стче. % % 'Ься' % % % '/ 'иапзв1ап' Оаивз1ап ЬХЕЬраяв 111Сег в1СЬ спсо11 (всапаагс) % беч1ас1оп) РО.
и пеес) поС Ье япрр11еа. РО шпвС Ье % ровастче. % ТЬе СгепзУег 1ппсссоп НЬр о1 а ЫЕЬразя 111Сег Ся 1 Н1р, % вЬеге Н1р 1в СЬе сгапвУег 1ппсс1оп о1 СЬе соггевропП1пЕ 1овраяз % 111сег. ТЬпв, ве сап пве Уипсс1оп 1Р111Сег Со яепегасе Ывьразя '/ 111Сегз. 11 пагЕ1п == 4 ВпссегяогсЬ ЬСЕЬравя 111сег от огоег и, епо сиСо11 РО. ТЬе йеУап1С ча1пе Уог п 1я 1.0. РО шпвс Ье ровтС1че.
после чего применяем шевЬ(2) или зпг1(2), как описано выше. На1юмниы, что в выходных параметрах функции шеяЬЕг1с) сначала следует обозначать столб- цы (У), а затем строки (Х). ~~~~~0 Глава 4 06работлха о 'ьасти~~ной о~и<и:т~~ ~ д = 1,,:,,Х,Ре5ац1у,~д1~~е,оХ„д., , „: 1...,Ъ $"Ъ„'...;ф":""'." Ъ .,'.,"'"' ' ф ":""..., „: 1...,Ъ $"Ъ„, „: 1...,Ъ $"„;„"'Ь,'., ~ ',":."' ';;, "".,'.,"'"' ' ф ":""..., „: 1...,Ъ $"Ъ„«' 1.,«Ъ $":,." '." Ч о Поенгггсиггт резни тгггг прп частотной, фигггпрацгггг 1%1) Цггипгер 4.7. тЗгчтйойг тпи тггопгиия фггпгг тгггпггггт и ~~~352 !лжи ~. Йбр~боткп в «астот~~он обигюи Цоцджр 4.И.,Кдмбцп~яоиа ~~ил фц,,вулумуццм ~, н ил~ил:.~~ оисрк....;~, -; В....д. ПЗ) » НВН = Ьр111сегОЬсн', РЦ(1), РЦ(2), РО, 2); » Н = 0.5 + 2ьНВН; » Ньи = Нтт~11С(т, НВН); » кЬн = Нвса1е(НЬи); » кпт = Н~С111С(1, Н); » НЫ = Нвса1е(НЬт); » НЬе = Ьйвсес~(НМ, 256); Как отмечалось в 3 3.3.2, изображение, характеризующееся узким диапазоном яркости, является идеальным кандидатом для гистограммной эквализации.
Из рис. 4.19, г) видно, что этот метод действительно продолжает улучшать изображение. Обратите внимание на четкое выявление структур костей и других деталей, которых даже не видно на трех предыдущих изображениях. В последнем изображении можно обнаружить некоторое усиление шумов, но это явление весьма характерно для рентгеновских снимков при растяжении диапазона их яркости.
Результат, полученный при совместном использовании фильтрации с усилением высоких частот и метода гистограммной эквализации, превосходит любой результат, который можно было бы получить, применяя каждый из этих методов по отдельности.О Выводы Материалы этой и предыдущей главы были проиллюстрированы приложениями по улучшению изображений. Однако разработанные при этом методы и концепции можно с успехом применять и в других областях цифровой обработки изображений, которые будут последовательно излагаться далее в этой книге. Преобразования яркости будут часто использоваться при растяжении и сжатии диапазонов яркости, пространственная фильтрация найдет применение в задачах восстановления изображений в следующей гл. 5, а также при обработке цветных изображений (гл.