Считайте полутоновое изображение в рабочую область.
I = imread('pout.tif');
imshow(I)
Чертите видимую область по изображению, чтобы задать область, которую вы хотите отфильтровать. Используйте функцию drawcircle
, чтобы создать видимую область, задавая центр круга и радиус круга. Также, если вы хотите нарисовать круг в интерактивном режиме, затем не задавайте центр или радиус круга.
hax = drawcircle(gca,'Center',[115 69],'Radius', 60);
Создайте маску с помощью функции createMask
и задав ROI.
mask = createMask(hax);
Задайте функцию, которую вы хотите использовать в качестве фильтра. Эта функция, названная f
, передает входное изображение, x
к imsharpen
функционирует, и задает силу эффекта увеличения резкости при помощи аргумента пары "имя-значение" 'Amount'
.
f = @(x)imsharpen(x,'Amount',3)
f = function_handle with value:
@(x)imsharpen(x,'Amount',3)
Отфильтруйте ROI с помощью функции roifilt2
и задав изображение, маску, и фильтруя функцию.
J = roifilt2(I,mask,f);
Отобразите результат.
imshow(J)
createMask
| drawcircle
| images.roi.Circle
| imsharpen
| roifilt2