我有一张图像,在该图像中检测到所有红色物体。如何检测图像中只有红色物体的边缘
下面是具有两个图像的示例:
http://img.weiku.com/waterpicture/2011/10/30/18/road_Traffic_signs_634577283637977297_4.jpg
但是,当我继续进行该图像的边缘检测方法我得到的输出作为唯一的黑色。但是,我想检测那个红色物体的边缘。
r=im(:,:,1); g=im(:,:,2); b=im(:,:,3);
diff=imsubtract(r,rgb2gray(im));
bw=im2bw(diff,0.18);
area=bwareaopen(bw,300);
rm=immultiply(area,r); gm=g.*0; bm=b.*0;
image=cat(3,rm,gm,bm);
axes(handles.Image);
imshow(image);
I=image;
Thresholding=im2bw(I);
axes(handles.Image);
imshow(Thresholding)
fontSize=20;
edgeimage=Thresholding;
BW = edge(edgeimage,'canny');
axes(handles.Image);
imshow(BW);
请告诉我们原始的,未经修改的图像。也不要使用'image'作为内建函数的变量名称。谢谢! –
http://img.weiku.com/waterpicture/2011/10/30/18/road_Traffic_signs_634577283637977297_4.jpg –
这些都是一些示例图片。我主要关注招牌。 –