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

В этом примере показано, как расширить изображение с помощью imdilate функция. Морфологическая операция расширения расширяет или утолщает основные объекты в изображении.

Создайте бинарное изображение простой выборки, содержащее один основной объект: квадратная область 1's посреди изображения.

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'))

Figure contains an axes object. The axes object contains an object of type image.

Создайте элемент структурирования, чтобы использовать с imdilate. Чтобы расширить геометрический объект, вы обычно создаете элемент структурирования, который является той же формой как объект.

SE = strel('square',3)
SE = 
strel is a square shaped structuring element with properties:

      Neighborhood: [3x3 logical]
    Dimensionality: 2

Расширьте изображение, передав входное изображение и элемент структурирования к imdilate. Отметьте, как расширение добавляет ранг 1's всем сторонам основного объекта.

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'))

Figure contains an axes object. The axes object contains an object of type image.

Для сравнения создайте элемент структурирования, который является различной формой. Расширьте оригинальное изображение с помощью нового элемента структурирования.

SE2 = strel('diamond',1);
BW3 = imdilate(BW,SE2);
imshow(imresize(BW3,40,'nearest'))

Figure contains an axes object. The axes object contains an object of type image.