Функции Image Toolbox / imimposemin.php
.htmСписок функций Image Processing Toolbox. Описание функции IMIMPOSEMIN Семинары Обучение Лицензирование Разработка Подписка Форум Регистрация Matlab Toolboxes Simulink Blocksets Femlab Полезное Вход Обработка сигналов и изображений\image Processing ToolboxСписок функций Image Processing Toolbox: Морфологические операции над бинарным изображением
В оглавление \ К следующему разделу \ К предыдущему разделу
IMIMPOSEMIN Установка минимума Синтаксис:
I2=imimposemin(I, BW)
Описание:
Функция I2=imimposemin(I, BW) проводит преобразование яркостей изображения I с использованием метода морфологического восстановления таким образом, чтобы все локальные минимумы BW были отличны от нуля. Результирующий массив BW является бинарным изображением, размерность которого совпадает с размерностью исходного изображения I.
По умолчанию, функция imimposemin использует 8–связную окрестность для двумерных изображений и 26–связную окрестность для трехмерных изображений. Для размерностей высших порядков, функция imimposemin использует выражение CONNDEF(ndims(I), 'mimimum').
Функция I2=imimposemin(I, H, CONN) определяется связностью, где параметр CONN может принимать следующие значения.
Значение параметра CONN Описание Двумерная связность 4 4 – связная окрестность 8 8 – связная окрестность Трехмерная связность 6 6 – связная окрестность 18 18 – связная окрестность 26 26 – связная окрестность Связность может быть определена иным путем для любой размерности с использованием CONN в виде матрицы нулей и единиц с размерностью 33...3. Единичное значение элемента определяет соседнюю окрестность относительно центрального элемента CONN. Объект CONN должен быть симметричным относительно центрального элемента.
Требования к исходным данным:
Исходное изображение I может быть представлено неразреженным числовым массивом произвольной размерности в любом формате представления данных. Изображение BW представляет собой неразреженный числовой массив, размерность которого совпадает с размерностью исходного изображения I. Размерность и формат представления изображения I2 также совпадает с исходным изображением I.
Пример:
Преобразование изображения bonemarr.tif на основе локальных минимумов.
1. Сначала считывается и визуализируется исходное изображение и выбирается маска.
I=imread('bonemarr.tif');
imshow(I)
2. Создадим маркер изображения, который используется при дальнейшей обработке. Далее создадим бинарное изображение, совпадающее по размерах с исходным и состоящее из нулей. Также создадим некоторую локальную маску из единиц.
bw=zeros(size(I));
bw(98:102,101:105)=1;
Покажем какие пикселы исходного изображения выпали, вследствие наложения маски. Маркер представляет собой небольшое прямоугольное пятно.
J=I;
J(bw~=0)=255;
figure, imshow(J)
3. Установим минимум на исходном изображении, выполняя морфологическое восстановление изображения в локальной окрестности маркера. Отметим, что темная область исходного изображения, отмеченная маркером, стала светлее.
K=imimposemin(I, bw);
figure, imshow(K)
При выполнении операции преобразования минимумов исходного изображения используется функция IMREGIONALMIN для поиска всех локальных минимумов на изображении.
bw2=IMREGIONALMIN(K);
figure, imshow(bw2)
Алгоритм:
Функция imimposemin использует технологию, которая базируется на морфологической реконструкции.
Сопутствующие функции: CONNDEF, IMRECONSTRUCT, IMREGIONALMIN.
В оглавление \ К следующему разделу \ К предыдущему разделу
I Всероссийская научная конференция "Проектирование научных и инженерных приложений в среде MATLAB" (май 2002 г.)
II Всероссийская научная конференция "Проектирование научных и инженерных приложений в среде MATLAB" (май 2004 г.) На первую страницу \ Сотрудничество \ MathWorks \ SoftLine \ Exponenta.ru \ Exponenta Pro E-mail: matlab@exponenta.ru Информация на сайте была обновлена 14.05.05 Copyright 2001-2005 SoftLine Co
Наши баннеры hotlog_js="1.0"; hotlog_r=""+Math.random()+"&s=58396&im=33&r="+escape(document.referrer)+"&pg="+ escape(window.location.href); document.cookie="hotlog=1; path=/"; hotlog_r+="&c="+(document.cookie?"Y":"N"); hotlog_js="1.1";hotlog_r+="&j="+(navigator.javaEnabled()?"Y":"N") hotlog_js="1.2"; hotlog_r+="&wh="+screen.width+'x'+screen.height+"&px="+ (((navigator.appName.substring(0,3)=="Mic"))? screen.colorDepth:screen.pixelDepth) hotlog_js="1.3" hotlog_r+="&js="+hotlog_js; document.write("") >