我有一个应用程序,可以识别水果。到目前为止,我已经让你可以裁剪图像并获得你想要的水果的颜色。现在我正在尝试获得水果的圆度,但我需要水果是黑色的,背景是白色的,这样我就可以找到面积和圆度值。到目前为止,这是我为该部分编写的代码:
crop_temp = rgb2gray(crop);
threshold = graythresh(crop_temp);
bw = im2bw(crop_temp,threshold);
imshow(bw)裁剪当我裁剪图像时,我会通过。当水果有相机闪光灯,并且那部分保持白色时,问题就出现了。
lemon图片就是一个例子:

问题是lemon中的白色区域在代码之后仍然是白色的,但我想要它,这样整个lemon就是黑色的。但不仅仅是柠檬,还有其他水果。
问题是lemon中的白色区域在代码之后仍然是白色的,但我想要它,这样整个lemon就是黑色的。但不仅仅是柠檬,还有其他水果。
是啊,你怎么才能让水果是白色的,背景是黑色的。我是图像处理的新手,所以不要对我指手画脚。我就是找不到具体的东西。
发布于 2012-07-19 04:15:00
试试这个:
fbw = ones(size(bw))-imfill(ones(size(bw))-bw);
imshow(fbw)发布于 2012-07-19 03:40:33
一种暴力方法是检查图像中的每个白色像素,并查看它是否被X和Y方向上的黑色像素包围,如果是,则将其变为黑色。这将照顾到你的水果内部的斑点,并且不会给你太多的假阳性,除非你的水果形状奇怪,或者你的图像边缘有很多噪音。
https://stackoverflow.com/questions/11548572
复制相似问题