
Z9411_Чурилов_ММ_ЛР6
.docxМИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное автономное образовательное учреждение высшего образования
«САНКТ-ПЕТЕРБУРГСКИЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»
КАФЕДРА № 41
ЛАБОРАТОРНАЯ РАБОТА
ЗАЩИЩЕНА С ОЦЕНКОЙ
РУКОВОДИТЕЛЬ
доц., канд. техн. наук, доц. |
|
|
|
О. О. Жаринов |
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
ОТЧЁТ О ЛАБОРАТОРНОЙ РАБОТЕ №6 |
Основы цифровой фильтрации изображений средствами MATLAB. Метод фильтрации в спектральном пространстве |
по курсу: Мультимедиа технологии |
|
|
РАБОТУ ВЫПОЛНИЛ
СТУДЕНТ ГР. № |
Z9411 |
|
|
|
А. С. Чурилов |
|
|
|
подпись, дата |
|
инициалы, фамилия |
Санкт-Петербург
2024
Цель работы
Изучить основы обработки изображений на примере методов фильтрации, реализуемых в спектральном пространстве.
Ход работы:
Выберем изображение и выполним его преобразования с настройками из методических указаний. Код программы приведён в листинге 1.
Листинг 1 – Преобразование изображения по общему заданию
img = imread('1427663514_898053012.jpg'); % импорт изображения figure('Name','Исходное изображение'); imshow(img); % вывод изображения на экран figure('Name','Гистограмма исходного изображения'); imhist(rgb2gray(img)); % формирование гистограммы распред. яркостей и вывод на экран
% Применение функции HISTEQ() с выделением матрицы яркости h = 64; % количество столбцов желаемой гистограммы img_hstq = rgb2hsv(img); % перевод изображения в цветовое пр-во HSV hist_hstq = img_hstq; % подготовка данных результирующего изображения V = img_hstq(:,:,3); % формирование матрицы яркости V_out = histeq(V, h); % эквализация гистограммы hist_hstq(:,:,3) = V_out; % изменение матрицы яркости в соответствии с итогом эквализации J1 = im2uint8(hsv2rgb(hist_hstq)); % создание обновленного изображения % печать изображения и гистограммы figure('Name','Изображение после эквализации (HISTEQ)'); imshow(J1); figure('Name','Гистограмма после применения HISTEQ'); imhist(im2uint8(V_out)); imwrite(J1, 'output_image1.jpg') % запись изображения в файл
% Применение функции IMADJUST() MinMaxValues = stretchlim(img); % выделение диапазона яркости J2 = imadjust(img, MinMaxValues, []); % видоизменение изображения % печать изображения и гистограммы figure('Name', 'Линейно-контрастированное изображение (IMADJUST)'); imshow(J2); figure('Name','Гистограмма после применения IMADJUST'); imhist(J2); imwrite(J2, 'output_image2.jpg') % запись изображения в файл
% Применение функции ADAPTHISTEQ() param = rgb2lab(img); % перевод изображения в цветовое пр-во CIELAB norm_param = param(:,:,1)/100; % нормировка значений параметров под диапазон от 0 до 1 norm_param = adapthisteq(norm_param, 'ClipLimit', 0.02, 'Distribution', 'rayleigh'); % видоизменение изображения param(:,:,1) = norm_param * 100; % реализация денормировки J3 = lab2rgb(param); % обратное преобразование в изображение % печать изображения и гистограммы figure('Name','Изображение после адапт. выравнивания (ADAPTHISTEQ)'); imshow(J3); figure('Name','Гистограмма после применения ADAPTHISTEQ'); imhist(uint8(norm_param.*255)); % построение гистограммы imwrite(J3, 'output_image3.jpg'); % запись изображения в файл
|
Исходное изображение показано на рисунке 1.
Рисунок 1. Исходное изображение
Вывод
В ходе выполнения лабораторного задания были получены теоретические знания о методологиях управления контрастностью изображений с целью улучшения их визуального восприятия и приобретены практические навыки работы с типовыми функциями настройки параметров графических объектов в среде технических вычислений MATLAB.
С целью решения поставленных задач было реализовано три программных модуля на языке MATLAB. В рамках первого производилось импортирование выбранного изображения, вычисление и построение его гистограммы распределения яркостей элементов. Данные действия были реализованы путем применения операторов imread(), rgb2gray() и imhist().
Второй блок отвечал за обработку фотографии путём обращения к трём функциям: histeq(), imadjust() и adapthisteq(). С помощью первой производилась эквализация гистограммы яркостей, в результате чего объект стал значительно светлее, однако на нём были обнаружены лишние контуры и пятна. Второй оператор позволил осуществить линейное контрастирование, но в случае загруженного изображения, у которого в столбиковой диаграмме на концах наблюдались ненулевые колонки, указанный метод привел только к нарушению изначальной цветовой схемы. Инструментом adapthisteq() было реализовано адаптивное выравнивание гистограммы. Итоговое изображение обладало большой неестественностью: вокруг темных объектов появились светлые контуры, в однотонных областях возникли шумовые эффекты. Так, для выбранной фотографии более подходящим вариантом стало использование метода histeq().
Третий этап заключался в подробном изучении влияния значения параметра D в конструкции вида: imadjust(I, [A B], [C D], gam). Было определено, что чем меньше величина указанной характеристики, тем на более узком интервале осуществляется распределение яркости, что приводит к неравномерной настройке контрастности изображения.
Список использованных источников
1. Основы цифровой обработки изображений: учеб. Пособие / Жаринов О.О. ГУАП. СПб, 2023. 122 с.
2. Работа с изображениями в среде Matlab. // URL: https://studbooks.net/2140144/informatika/rabota_izobrazheniyami_srede_matlab
3. Список функций Image Processing Toolbox // URL: https://hub.exponenta.ru/post/spisok-funktsiy-image-processing-toolbox152?ysclid=l8vjnq87jn578408698