
МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
федеральное государственное автономное образовательное учреждение высшего образования
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»
ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ
КАФЕДРА 41 |
ОЦЕНКА
ПРЕПОДАВАТЕЛЬ
доц., канд. техн. наук, доц. |
|
|
|
О. О. Жаринов |
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
ЛАБОРАТОРНАЯ РАБОТА №7
|
ОСНОВЫ ЦИФРОВОЙ ФИЛЬТРАЦИИ ИЗОБРАЖЕНИЙ СРЕДСТВАМИ MATLAB. ПРОСТРАНСТВЕННЫЕ ФИЛЬТРЫ |
по дисциплине: Мультимедиа технологии |
РАБОТУ ВЫПОЛНИЛ
СТУДЕНТ гр. № |
Z9411 |
|
|
|
Р. С. Кафка |
|
номер группы |
|
подпись, дата |
|
инициалы, фамилия |
Студенческий билет № |
2019/3603 |
|
|
|
Шифр ИНДО |
|
Санкт-Петербург 2024
Цель работы: изучить основы обработки изображений на примере методов фильтрации с использованием пространственных фильтров.
Краткие теоретические сведения о задачах обработки изображений и их практическом применении, а также об изученных методах фильтрации.
Обработка изображений включает в себя различные техники и методы, направленные на улучшение визуального качества изображений, а также на извлечение информации и аналитику. Эти методы находят широкое применение во многих областях, включая медицину (например, визуализация для диагностики), безопасность (распознавание лиц), автоматизацию производственных процессов, дистанционное зондирование и многие другие. Основная цель обработки — повышение четкости, коррекция искажений, уменьшение шума, сегментация изображений и обнаружение объектов.
Изученные методы фильтрации:
Пространственная фильтрация:
Пространственные фильтры используются для непосредственной работы с пикселями изображения. Основной математический принцип заключается в применении маски (или ядра) фильтра к каждому пикселю изображения для вычисления нового значения на основе локального взвешенного суммирования значений пикселей.
Один из наиболее часто используемых фильтров — фильтр Лапласа, который подчеркивает границы объектов на изображении и используется для повышения резкости. Маска фильтра обычно имеет размер 3x3, и веса в этой маске определяются характером желаемого эффекта.
Методы восстановления изображений:
Фильтр Винера: применяется для восстановления изображения из-под влияния искажений, таких как шум и размытие. Этот метод использует статистические характеристики для оптимальной оценки искажения.
Регуляризация Тихонова: еще один подход к восстановлению изображений, который помогает управлять проблемой неустойчивости в инверсной фильтрации за счет введения дополнительного параметра регуляризации, что делает решение более устойчивым к шуму.
Компенсация искажений (дефокусировка и смазывание):
Часто встречающиеся искажения, такие как размытие из-за движения камеры или неправильной фокусировки, могут быть скомпенсированы через обратную фильтрацию, используя априорно известные или оцененные характеристики искажающего фильтра (PSF — Point Spread Function).
Программная реализация включает моделирование искажений для тестирования алгоритмов восстановления и оптимизации параметров фильтров.
Индивидуальный вариант
Вариант «3 и 2» приведён в таблицах 1-2.
Таблица 1 – Вариант искажений, вносимых в искаженное изображение
Вариант |
Вид искажений |
3 |
%% сферическая расфокусировка радиусом в P пикселей PSF = fspecial('disk',P); S = imfilter(input_image, PSF,'replicate'); |
Таблица 2 – Вариант шумов, вносимых в искаженное изображение
Вариант |
Вид шума |
2 |
% гауссовский шум (с нормированной дисперсией 0.0001) distorted_image = imnoise(S,'gaussian',0,0.0001); % т.о. нормированное СКО равно 0.01 отн. ед., % значит без нормировки это дает 2.55 ед. яркости |
Ход работы:
Сферическая расфокусировка без шума.
Цель: искажение исходного качественного изображения сферической расфокусировкой и последующее восстановление без дополнительного шума.
Шаги:
Прочитали исходное изображение.
Применили сферическую расфокусировку с заданным радиусом P.
Сохранили исходное и искаженное изображения.
Применили методы восстановления изображения и сравнили результаты.
Код программы представлен в листинге 1.
Листинг 1 – MATLAB-программа, реализующая расфокусировку изображения и восстановление полученного изображения
clc; clear; close all;
% Чтение исходного изображения input_image = imread('image.jpg'); % путь к изображению
% Радиус расфокусировки P = 5; % радиус сферической расфокусировки
% Создание маски расфокусировки PSF = fspecial('disk', P);
% Применение расфокусировки blurred_image = imfilter(input_image, PSF, 'replicate');
% Сохранение изображений imwrite(input_image, 'original_image.jpg'); imwrite(blurred_image, 'blurred_image.jpg');
% Параметры для восстановления noise_var = 0.01; % Дисперсия шума
% Восстановление методом Тихонова restored_Tikhonov = deconvreg(blurred_image, PSF, [], noise_var);
% Восстановление методом Винера restored_Wiener = deconvwnr(blurred_image, PSF, noise_var);
% Сохранение результатов imwrite(restored_Tikhonov, 'restored_Tikhonov.jpg'); imwrite(restored_Wiener, 'restored_Wiener.jpg'); |
Результат выполнения кода представлен на рисунке 1.
|
|
|
|
Рисунок 1 – Результат компенсации смазывания изображения: а) исходное изображение; б) расфокусированное изображение, искаженное программой, текст которой приведен в листинге 1; в) результат фильтрации по методу регуляризации Тихонова; г) результат фильтрации по методу инверсной винеровской фильтрации.
После применения сферической расфокусировки с радиусом в 5 пикселей детали стали менее отчетливыми. Контраст между объектами уменьшился, что привело к заметному снижению чёткости границ объектов.
Изображение после обработки методом Тихонова показывает улучшенную чёткость по сравнению с расфокусированным. Однако, наблюдается некоторая потеря деталей и появление артефактов, что свойственно этому методу регуляризации.
Метод Винера дал схожие улучшения в чёткости, но с меньшими искажениями, чем метод Тихонова. Контраст улучшился, и многие детали, которые были утеряны из-за расфокусировки, стали более различимыми.
Сферическая расфокусировка с гауссовским шумом.
Цель: искажение изображения сферической расфокусировкой и гауссовским шумом, последующее восстановление.
Шаги:
Применили к расфокусированному изображению гауссовский шум.
Восстановили изображение и сравнили результаты восстановления с предыдущим заданием.
Код представлен в листинге 2.
Листинг 2 – MATLAB-программа, реализующая добавление гауссовского шума и восстановление полученного изображения
% Добавление гауссовского шума noisy_blurred_image = imnoise(blurred_image, 'gaussian', 0, 0.0001);
% Сохранение зашумленного искаженного изображения imwrite(noisy_blurred_image, 'noisy_blurred_image.jpg');
% Восстановление зашумленного искаженного изображения restored_Tikhonov_noisy = deconvreg(noisy_blurred_image, PSF, [], noise_var); restored_Wiener_noisy = deconvwnr(noisy_blurred_image, PSF, noise_var);
% Сохранение результатов imwrite(restored_Tikhonov_noisy, 'restored_Tikhonov_noisy.jpg'); imwrite(restored_Wiener_noisy, 'restored_Wiener_noisy.jpg'); |
а) исходное изображение |
|
в) предыдущее восстановление методом Тихонова |
|
д) предыдущее восстановление методом Винера |
|
Рисунок 2 – Результат компенсации смазывания изображения: а) исходное изображение; б) расфокусированное изображение, искаженное программой, текст которой приведен в листинге 2; в) предыдущий результат фильтрации по методу регуляризации Тихонова; г) д) предыдущий результат фильтрации по методу инверсной винеровской фильтрации. е)
В отличие от предыдущих результатов, теперь при восстановлении зашумленного изображения видно больше шумов, деталей.