Примените пользовательский фильтр к видимой области в изображении

Этот пример показывает, как отфильтровать видимую область (ROI), с помощью функции roifilt2, чтобы задать фильтр. roifilt2 позволяет вам задать свою собственную функцию, чтобы работать с ROI. Этот пример использует функцию imadjust, чтобы осветить части изображения.

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

I = imread('cameraman.tif');
figure
imshow(I)

Создайте рисунок маски. Этот пример использует двухуровневое изображение текста как рисунок маски. Все 1-значные пиксели задают видимые области. Обрезки в качестве примера изображение, потому что рисунок маски должен быть одного размера как изображение, которое будет отфильтровано.

BW = imread('text.png');
mask = BW(1:256,1:256);
figure
imshow(mask)

Создайте функцию, которую вы хотите использовать в качестве фильтра.

f = @(x) imadjust(x,[],[],0.3);

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

I2 = roifilt2(I,mask,f);

Отобразите результат.

figure
imshow(I2)

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

|