Используйте морфологическое открытие, чтобы извлечь большие функции изображений

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

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

Откройте изображение за один шаг

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

Считайте изображение в рабочую область и отобразите его.

BW1 = imread('circbw.tif');
figure
imshow(BW1)

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

SE = strel('rectangle',[40 30]);

Откройте изображение.

BW2 = imopen(BW1, SE);
imshow(BW2);

Откройте изображение путем выполнения эрозии затем расширение

Можно также выполнить эрозию и расширение последовательно.

Разрушьте изображение с элементом структурирования. Это удаляет все линии, но также и уменьшает прямоугольники.

BW3 = imerode(BW1,SE);
imshow(BW3)

Чтобы восстановить прямоугольники к их первоначальным размерам, расширьте разрушенное изображение с помощью того же элемента структурирования, SE.

BW4 = imdilate(BW3,SE);
imshow(BW4)

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

SE = strel('diamond',15);
BW5 = imdilate(BW3,SE);
imshow(BW5)

Смотрите также

| | | |

Похожие темы