exponenta event banner

regionfill

Заполнение указанных областей изображения с помощью внутренней интерполяции

Описание

пример

J = regionfill(I,mask) заполняет области на изображении I указано mask. Ненулевые пикселы в mask обозначить пикселы изображения I для заполнения. Вы можете использовать regionfill удаление объектов в изображении или замена недопустимых значений пикселов с помощью соседних объектов.

пример

J = regionfill(I,x,y) заполняет область изображением I соответствует многоугольнику с вершинами, заданными x и y.

Примеры

свернуть все

Чтение и отображение изображения в градациях серого.

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

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

Укажите координаты x и y многоугольника, который полностью окружает одну из монет на изображении.

x = [222 272 300 270 221 194];
y = [21 21 75 121 121 75];

Заполните многоугольник с помощью regionfill функция.

J = regionfill(I,x,y);

Отображение закрашенного изображения.

imshow(J)
title('Filled Image with One Fewer Coin')

Figure contains an axes. The axes with title Filled Image with One Fewer Coin contains an object of type image.

Чтение и отображение изображения в градациях серого.

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

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

Укажите вершины многоугольника ROI, который полностью окружает две монеты, используя drawpolygon функция. Укажите аргумент пары имя-значение «Позиция» в качестве координат x и y вершин многоугольника. Если требуется нарисовать многоугольник в интерактивном режиме, опустите аргумент пары имя-значение Position.

x = [68 296 296 113 68];
y = [12 12 120 120 66];
roi = drawpolygon(gca,'Position',[x;y]');

Figure contains an axes. The axes contains 2 objects of type image, images.roi.polygon.

Создание маскирующего изображения, в котором находится ROI true и фон false. Отображение маски.

mask = createMask(roi);
imshow(mask)

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

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

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

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

Входные аргументы

свернуть все

Изображение в градациях серого, указанное как 2-D числовая матрица размером, большим или равным 3 на 3.

Пример: I = imread('eight.tif');

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Двоичный образ маски, заданный как логический массив того же размера, что и I.

Типы данных: logical

Координаты X вершин многоугольника, заданные как числовой вектор. Длина x должна быть той же длины, что и y.

Пример: x = [222 272 300 270 221 194];

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Y-координаты вершин многоугольника, заданные как числовой вектор. Длина x должна быть той же длины, что и y.

Пример: y = [21 21 75 121 121 75];

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Выходные аргументы

свернуть все

Закрашенное изображение в оттенках серого, возвращаемое в виде 2-D числового массива. J имеет тот же размер и класс, что и I.

Совет

  • Интерактивное создание маски окупаемости инвестиций mask, вы можете использовать roipoly функции или drawpolygon функция, за которой следует createMask.

Алгоритмы

regionfill плавно интерполируется внутрь от значений пикселей на внешней границе областей. regionfill вычисляет дискретный лапласиан по областям и решает задачу граничного значения Дирихле.

Представлен в R2015a