Санкт-Петербург

ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО КУЛЬТУРЕ И КИНЕМАТОГРАФИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

КИНО И ТЕЛЕВИДЕНИЯ»


ЛАБОРАТОРНАЯ РАБОТА № 3

«Пространственная фильтрация»

выполнил:

Судаков Владимир

Студент 112 группы

проверила:

Буль М.П.

Санкт-Петербург

Цель работы:

· Изучить методы линейной и нелинейной пространственной фильтрации функциями MATLAB с целью улучшения изображений.

· Изучить возможности построения частотных характеристик фильтров.

Теоретические сведения:

Под фильтрацией изображений понимают операцию, имеющую своим результатом

изображение того же размера, полученное из исходного изображения по некоторым

правилам. Обычно интенсивность (цвет) каждого пикселя результирующего изображения

обусловлена интенсивностями (цветами) пикселей, расположенных в некоторой его

окрестности в исходном изображении.

Пространственная фильтрация

Окрестностная обработка изображений состоит из следующих действий:

1. определение центральной точки (x, y) окрестности;

2. совершение операции, которая использует лишь значения пикселей в заранее

оговоренной окрестности вокруг центральной точки;

3. назначение результата этой операции «откликом» совершаемого процесса в

центральной точке окрестности;

4. повторение всего процесса для каждой точки изображения.

В результате перемещения центральной точки образуются новые окрестности,

отвечающие каждому пикселю изображения.

– ‘g’ – границы изображения расширяются значением Р. По умолчанию значение Р=0;
– ‘replicate’ – размер изображения увеличивается повторением величин на его боковых границах;
– ‘symmetric’ – размер изображения увеличивается путем зеркального отражения через границы;
– ‘circular’ – размер изображения увеличивается периодическим повторением двумерной функции;

Медианная фильтрация является удобным инструментом обработки информации, особенно двухмерной информации.Медианный фильтр удаляет из сигнала фрагменты с размерами, меньшими чем половина размера окна фильтра, и при этом мало искажает или почти совсем не искажает остальные участки сигнала.
Задание 1. Применение функции imfilter.

clear;

file=imread('test_pattern.tif');

%чтение tif файла

w=ones(31)/31^(2);

%создание фильта 31х31

g=imfilter(file,w);

%осуществление пространственной фильтрации

subplot(2,2,1);

imshow(file);title('file');

%вывод на экран исходное изображение

subplot(2,2,2);

imshow(g);title('g');

%вывод на экран изображение с применением фильтра

clear;

file=imread('test_pattern.tif');

%чтение tif файла

w=ones(31)/31^(2);

%создание фильта 31х31

g=imfilter(file,w);

%осуществление пространственной фильтрации

subplot(3,2,1);

imshow(file);title('file');

%вывод на экран исходное изображение

subplot(3,2,2);

imshow(g);title('g');

%вывод на экран изображение с применением фильтра

g1=imfilter(file,w,'replicate');

%применение к исходнику функцию imfilter c опции replicate

subplot(3,2,3);

imshow(g1);title('replicate');

%выводнаэкранэтогодобра

g2=imfilter(file,w,'symmetric');

%применение к исходнику функцию imfilter c опции symmetric

subplot(3,2,4);

imshow(g2);title('symmetric');

%выводнаэкранэтогодобра

g3=imfilter(file,w,'circular');

%применение к исходнику функцию imfilter c опции circular

subplot(3,2,5);

imshow(g3);title('circular');

%вывод на экран этого добра

w=ones(31);

%используем ненормированный фильтр

g4=imfilter(file,w);

subplot(3,2,6);

imshow(g4);title('ne normirovan');

Вывод: При применении фильтрации возможно значительное

улучшение изображения – повышение резкости, снижение уровня шумов и т.п. Кроме того,фильтрация – универсальное средство для повышения качества изображения.

Задание 2. Задание маски предопределенного двумерного линейного фильтра

clear;

file=imread('test_pattern.tif');

%чтениеtifфайла

w=fspecial('gaussian',5,0.5);

%маска фильтра Гаусса размера 5х5 для среднеквадратичного отклонения 0.5

figure(1); freqz2(w,[64 64]);

%disp(w);

clear;

file=imread('test_pattern.tif');

%чтениеtifфайла

w1=fspecial('gaussian',5,0.7);

%маска фильтра Гаусса размера 5х5 для среднеквадратичного отклонения 0.5

figure(2); freqz2(w1,[64 64]);

%disp(w1);

Вывод: Маска фильтра такова, что центральный элемент маски имеет наибольшее значение, он соответствует пику распределения Гаусса. Значения остальных элементов уменьшаются по мере удаления от центрального элемента. Уменьшение происходит в соответствии с распределением Гаусса.

3 задание. Фильтры повышения резкости изображения. Улучшение изображения с помощью фильтра Лапласа.

clear;

%чтение tif файла

file=imread('moon.tif');

a=0;

%постоянное значение яркости

w=fspecial('laplacian',a);

%генерация фильтра

g=imfilter(file,w);

%применение фильтра к файлу

figure

subplot(1,3,1);

imshow(file)

subplot(1,3,2);

imshow(g)

title('Результат фильтрации')

subplot(1,3,3);

imshow(file-g)

title('После фильтрации')

w1=[1 1 1;1 -8 1; 1 1 1 ];

%создание матрицы фильтра лапласа размеров 3x3 в центре которогом -8,

%окруженное со всех сторон 1(для того чтобы получить большую резкость

%изображения

g=imfilter(file,w1);

figure

subplot(1,3,1);

imshow(file)

subplot(1,3,2);

imshow(g)

title('Результат фильтрации')

subplot(1,3,3);

imshow(file-g)

title('После фильтрации')

figure 1

figure 2


4 задание. Применение медианной фильтрации.

clear;

%чтение tif файла

file=imread('crt_board.tif');

g=imnoise(file,'salt & pepper',0.2);

%добавление к изображению импульсный шум(вероятность появления 0.2)

g1=medfilt2(file,[3,3],'symmetric');

%применение к изображению, испорченному шумом медианную фильтрацию

g2=medfilt2(file,[3,3],'symmetric');

%применение к изображению, испорченному шумом медианную фильтрацию

figure

subplot(1,4,1);

imshow(file)

title('исходный')


subplot(1,4,2);

imshow(g)

title('зашумленный')

subplot(1,4,3);

imshow(g1)

title('фильтр по умолчанию')

subplot(1,4,4);

imshow(g2)

title('фильтр с параметрами')

Вывод: Медианная фильтрация эффективна для устранения шума. Одно из основных преимуществ медианной фильтрации состоит в том, что она приводит к устранению импульсных выбросов, не размывая границ объектов.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: