Matlab:查找和处理图像中的对象

Matlab : find and processing object in image

我有这样一张图片

我想找到这个图像的对象并处理那个对象。 这是我的代码

bw = im2bw(myImage);
bw = invertedBW(bw);
bw = bwperim(bw);
bwlabelimg = bwlabel(bw);

是否可以对图像中的每个对象进行处理? 谢谢

当然可以。只需循环遍历每个对象并对其进行处理。您可以做的是创建一个等于每个唯一标签的掩码并处理该掩码。我将使用 bwlabel 的双输出版本,其中第二个输出告诉您 我们有多少对象 。类似于:

% // Your code
bw = im2bw(myImage);
bw = invertedBW(bw);
bw = bwperim(bw);
[bwlabelimg, num] = bwlabel(bw); %// Slightly modified

for idx = 1 : num %// For each object...
    mask = bwlabelimg == idx; %// Create mask that only contains the object

    %// Process your object, stored in the mask variable....

end