Добавил:
t.me Инфо для ГУАП студентов от меня: https://kafaka.notion.site/99e6d9b70ca74f7baef3daea17839e5a Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LR6 / Z9411_КафкаРС_ММТ_ЛР6.docx
Скачиваний:
1
Добавлен:
18.06.2024
Размер:
1.94 Mб
Скачать

МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

федеральное государственное автономное образовательное учреждение высшего образования

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»

ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ

КАФЕДРА 41

ОЦЕНКА

ПРЕПОДАВАТЕЛЬ

доц., канд. техн. наук, доц.

О. О. Жаринов

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

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

ОСНОВЫ ЦИФРОВОЙ ФИЛЬТРАЦИИ ИЗОБРАЖЕНИЙ СРЕДСТВАМИ MATLAB. МЕТОД ФИЛЬТРАЦИИ В СПЕКТРАЛЬНОМ ПРОСТРАНСТВЕ

по дисциплине: Мультимедиа технологии

РАБОТУ ВЫПОЛНИЛ

СТУДЕНТ гр. №

Z9411

Р. С. Кафка

номер группы

подпись, дата

инициалы, фамилия

Студенческий билет №

2019/3603

Шифр ИНДО

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

Цель работы: изучить основы обработки изображений на примере методов фильтрации, реализуемых в спектральном пространстве.

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

Обработка изображений — это форма сигнальной обработки, где входной сигнал является изображением, например фотография или видео. Цели могут включать улучшение изображений для человеческого восприятия, обработку для автономной интерпретации, извлечение информации и создание графических представлений.

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

Один из методов обработки изображений — фильтрация в спектральном пространстве, часто используемая для улучшения качества изображений (увеличения резкости, уменьшения смазанности) или для выделения границ объектов.

Принципы работы:

  • Преобразование Фурье: изображение преобразуется из пространственного представления в частотное с помощью двумерного быстрого преобразования Фурье (2D-БПФ).

  • Модификация спектра: спектр исходного изображения модифицируется путём умножения на передаточную функцию фильтра, которая может действовать как фильтр нижних (ФНЧ), высоких (ФВЧ) или полосовых частот.

  • Обратное преобразование: после изменения спектра применяется обратное 2D-БПФ для получения финального изображения.

Применение фильтров:

  • Фильтр нижних частот (ФНЧ): используется для сглаживания изображения, уменьшения детализации и шума.

  • Фильтр высоких частот (ФВЧ): применяется для усиления или выделения деталей и границ объектов на изображении.

  • Полосовые и режекторные фильтры: находят применение в задачах, где нужно выделить или подавить определенные частотные составляющие изображения.

Технические аспекты:

  • Центрирование спектра: используется функция fftshift для центрирования спектра, что упрощает работу с ФНЧ и ФВЧ.

  • Проблемы и решения: спектральные методы могут вводить искажения, такие как эффекты "звонов" или "Гиббса", которые могут быть уменьшены с использованием более гладких функций для фильтра.

Практическое применение:

  • Медицина: обработка рентгеновских снимков, МРТ и УЗИ изображений для более точной диагностики.

  • Безопасность: распознавание лиц, анализ видеонаблюдения для обеспечения безопасности.

  • Промышленность: автоматический контроль качества, сортировка и упаковка товаров.

  • Научные исследования: обработка изображений с космических аппаратов, микроскопических снимков и т.д.

Ход работы:

Тестовое изображение представлено на рисунке 1.

Рисунок 1 – Исходное изображение

  1. Выполнили фильтрацию тестового изображение с целью выделения краев объектов при помощи алгоритмов, реализованных в программах, приведенных в листинге 1.

Подобрали значения параметра space_freq, при котором результат работы получился субъективно наилучшим. Сохранили несколько изображений, полученных при различных значениях параметра space_freq.

Листинг 1 - MATLAB-программа, реализующая простейший способ реализации метода Фурье-фильтрации изображения с целью выделения краев объектов

clc, clear, close all %очистка памяти

I = imread('image.jpg');

% перевод изображения в оттенки серого

% (получение матрицы яркости):

if (size(I,3) == 3) I = rgb2gray(I); end

I = im2double(I);

% Вычисление 2D-БПФ изображения:

%(получение матрицы центрированного спектра):

Spectr_input_image = fftshift(fft2(I));

A = abs(Spectr_input_image); % амплитудный спектр

A_max = max(max(A));

eps = A_max*10^(-6); %добавка, чтобы не вычислить lg(0)

A_dB = 20*log10(A + eps); % перевод в дБ

figure(1)

% вывод графика спектра изображения

imagesc(A_dB)

[M,N] = size(Spectr_input_image); % получение размера массива

% *********************************************************

% настраиваем пространственную частоту среза фильтра:

space_freq = 1;

% массив из единиц для маски фильтрации в частотной области

mask=ones([M, N]);

% задание маски ФВЧ (обнуляем элементы

% в прямоугольной области в окрестности центра):

mask(round(M/2) - space_freq : round(M/2) + space_freq, ...

round(N/2) - space_freq : round(N/2) + space_freq)=0;

% **********************************************************

% изменение спектра по формуле (1):

Spectr_output_image = Spectr_input_image.* mask;

figure(2)

% визуализация измененного спектра:

imagesc(20*log10(abs(Spectr_output_image)+eps))

% обратное 2D-БПФ:

J = (ifft2(ifftshift(Spectr_output_image), ...

'symmetric')); %обратное 2D-БПФ

% нормировка значений пикселей:

max_J = max(max(J));

output_image = im2uint8((J./max_J));

% инверсия яркостей пикселей,

% чтобы получить черные границы на белом фоне

output_image = 255 - output_image;

figure(3), imshow(I)

figure(4), imshow(output_image)

imwrite(output_image, 'edges_image.jpg');

Результат фильтрации методом Фурье представлен на рисунке 2.

Рисунок 2 – Результат Фурье-фильтрации изображения при помощи

фильтра, выделяющего края объектов (см. программу на листинге 1): слева

исходное изображение, справа – результат фильтрации, под каждым визуализирован амплитудный спектр

Попробовали разные значения параметра space_freq в диапазоне от 2 до 100 и заметили, что при слишком большом значении изображение выцветает и грани становятся нечёткими, а при малых появляется больше артефактов. Эмпирически пришли к оптимальному для нашего изображения значению равному 1, при котором получается изображение с оптимальным количеством деталей и без артефактов.

Неудачные варианты параметра space_freq при значениях 10, 50 и 100 соответственно представлены на рисунке 3.

а)

б)

в)

Рисунок 3 – Неудачные результаты обработки при space_freq равным: а) 10, б) 50, в)100

Соседние файлы в папке LR6