使用matlab在图像上选取圆形,并删除其内部图像,设置为黑色
时间: 2023-12-29 18:02:47 浏览: 127
Fast_matlab图像处理_
可以使用MATLAB中的imfindcircles函数来检测图像中的圆形,然后使用roipoly函数选择圆形内部区域并将其设置为黑色。下面是一个示例代码:
```matlab
% 读取图像
img = imread('image.jpg');
% 转成灰度图像
gray = rgb2gray(img);
% 检测圆形
[centers, radii] = imfindcircles(gray, [10 20]);
% 显示圆形
imshow(img);
viscircles(centers, radii, 'EdgeColor', 'b');
% 选择圆形内部区域并将其设置为黑色
mask = roipoly(img);
img(mask) = 0;
% 显示处理后的图像
figure;
imshow(img);
```
在这个例子中,我们首先读取一张图像,并将其转化为灰度图像。然后使用imfindcircles函数检测图像中的圆形,并使用viscircles函数在图像上显示出来。接下来,使用roipoly函数选择圆形内部区域,并将其设置为黑色。最后,我们显示处理后的图像。
阅读全文