Заполните необходимую область в изображении

В этом примере показано, как использовать regionfill заполнять видимую область (ROI) в изображении. Пример использует roipoly функция, чтобы задать необходимую область в интерактивном режиме с мышью. regionfill гладко интерполирует внутрь в область от пиксельных значений на контуре многоугольника. Можно использовать эту функцию в редактировании изображение, включая удаление посторонних деталей или артефактов. Процесс заполнения заменяет значения в области со значениями, которые смешиваются с фоном.

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

I = imread('eight.tif');
imshow(I)

Создайте рисунок маски, чтобы задать видимую область (ROI), которую вы хотите заполнить. Используйте roipoly функция, чтобы задать область в интерактивном режиме. Вызовите roipoly и переместите указатель через изображение. Форма указателя превращается в крест нитей. Задайте ROI путем щелчка мышью, чтобы задать вершины многоугольника. Можно использовать мышь, чтобы настроить размер и положение ROI.

mask = roipoly(I);

Дважды кликните, чтобы закончить задавать область. roipoly создает двухуровневое изображение с областью, заполненной 1- ценные пиксели.

Отобразите рисунок маски.

figure
imshow(mask)

Заполните область, с помощью regionfill, определение изображения, чтобы быть заполненным и рисунок маски как входные параметры. Отобразите результат. Обратите внимание, что изображение содержит тот меньше монеты.

J = regionfill(I,mask);
figure
imshow(J)

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

| | |