В этом примере показано, как расширить изображение с помощью imdilate
функция. Операция морфологического расширения расширяет или утолщает объекты переднего плана в изображении.
Создайте простой образец бинарного изображения, содержащего один объект переднего плана: квадратную область 1 в середине изображения.
BW = zeros(9,10); BW(4:6,4:7) = 1
BW = 9×10
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 1 1 1 1 0 0 0
0 0 0 1 1 1 1 0 0 0
0 0 0 1 1 1 1 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
imshow(imresize(BW,40,'nearest'))
Создайте элемент структурирования для использования с imdilate
. Чтобы расширить геометрический объект, вы обычно создаете элемент структурирования, который является такой же формой, как и объект.
SE = strel('square',3)
SE = strel is a square shaped structuring element with properties: Neighborhood: [3x3 logical] Dimensionality: 2
Расширьте изображение, передав входу изображение и элемент структурирования, чтобы imdilate
. Обратите внимание, как расширение добавляет ранг 1 для всех сторон объекта переднего плана.
BW2 = imdilate(BW,SE)
BW2 = 9×10
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 1 1 1 1 1 1 0 0
0 0 1 1 1 1 1 1 0 0
0 0 1 1 1 1 1 1 0 0
0 0 1 1 1 1 1 1 0 0
0 0 1 1 1 1 1 1 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
imshow(imresize(BW2,40,'nearest'))
Для сравнения создайте элемент структурирования, который является другой формой. Расширьте оригинальное изображение с помощью нового элемента структурирования.
SE2 = strel('diamond',1); BW3 = imdilate(BW,SE2); imshow(imresize(BW3,40,'nearest'))