![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Image Processing Toolbox» в програмному середовищі MatLab
Застосування стандартних просторових фільтрів із пакету Мета: вивчення основних можливостей пакету «Image Processing» системи Matlab, як ефективного засобу цифрової обробки ілюстрацій. Теоретичні відомості: Операції лінійної просторової фільтрації безпосередньо пов’язаний із обробкою пікселів зображення. Лінійні операції, полягають у помноженні кожного оточуючого пікселя і на відповідний коефіцієнт і підрахунок цих добутків для отримання результуючого відгуку процесу в кожній точці (х, у). Якщо оточення має розмір n× m, то буде потрібно nm коефіцієнтів. Ці коефіцієнти згруповані у вигляді матриці, яка називається фільтром, маскою, фільтруючої маскою, ядром, шаблоном або вікном, причому перші три терміни є найбільш поширеними. Механізм лінійної просторової фільтрації полягає у переміщенні центру фільтруючої маски w від точки до точки зображення f. У кожній точці (х, у) відгуком фільтра є сума добутків коефіцієнтів фільтра і відповідних пікселів оточуючих ділянок, які накриваються фільтруючої маскою. Для маски розміру n× m зазвичай передбачається, що m = 2а + 1 і n = 26 + 1, де а і b - невід'ємні цілі числа, тобто основна увага приділяється маскам, що мають непарні розмыри, причому найменшим прийнятним розміром маски вважається розмір 3× 3 (маска 1× 1 виключається), оскільки в цьому випадку у маски є виражена центральна точка. У пакеті IРТ програми MatLab лінійна просторова фільтрація реалізована функцією imfilter, яка має наступний синтаксис: > > g=imfilter(f, w, filtering_mode, boundary_option, size_options); де f ― це вхідне зображення, w фільтруюча маска, g ― результат фільтрації, а інші параметри наведені та пояснені в табл. 5.1. Так параметр ‘ filtering_mode ’ визначає, що здійснює фільтр, кореляцію (' corr ') або згортку (‘ conv ’). Опція ‘ boundary_option ’ відповідає за розширення кордонів, причому розміри разширення визначаються розмірами фільтра.
Таблиця 5.1. — Опції функції imfilter
Опція size_options ― це або 'full ', або ' same ', що вказують на методику збільшення розміру зміненого зображення. Найчастіше функція imfilter застосовується у вигляді команди: > > g = imfilter (f, w, 'replicate'). При роботі з фільтрами, які не були попередньо перевернуті чи були несиметричними, коли потрібно побудувати згортку, можна поступати двома способами. Один з них використовує синтаксис > > g = imfilter (f, v, 'conv', ' replicate '). Інший підхід полягає в попередній обробці маски w за допомогою функції rot90 (w, 2), яка повертає w на 180 °. Після цього застосовується команда imfilter (f, w, 'replicate'). Звичайно, ці два кроки можна записати в одній формулі. В результаті вийде зображення, розмір котрого збігається з розміром вихідного (тобто за умовчанням прийнята опція ' same '). Також, у пакеті IPT є деякі стандартні двовимірні лінійні просторові фільтри, які можна отримати з функції fspecial, яка генерує маску фільтра w при виконанні команди > > w = fspecial ('type', parameters), де ' type ' позначає тип фільтра, а в аргументах parameters задаються параметри обраного фільтра. Просторові фільтри, одержувані цієї командою, наведено в табл. 5.2 разом з відповідними параметрами кожного фільтра.
Таблиця 5.2. — Просторові фільтри функції fspecial
|