opencv删除边缘的白色像素

时间:2019-05-17 02:32:02

标签: python image opencv

大家好,我正在尝试对柠檬水果进行正确的细分。 我正在使用大津的方法从背景中提取柠檬, 但是我的结果并不好。 “成熟”级柠檬的边缘边缘有白色像素 ¿我该怎么做才能解决它?

image = cv2.imread(imagePath)
        original = image
        #(blur)
        image = cv2.blur(image,(31,31),0)
        #convert to hsv
        image = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)
        #(CV_RGB2GRAY)
        image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
        #Otsu.
        ret, otsu = cv2.threshold(image,0,255,cv2.THRESH_BINARY+cv2.THRESH_OTSU)

        #Apply mask
        result = cv2.bitwise_and(original, original, mask=otsu)

original lemon image:

柠檬结果

Lemon result.

PD:我用腐蚀方法修复了它。它可以工作,但是却使柠檬的形状变形了。。谢谢。

腐蚀后的柠檬翘曲

warped lemon after erosion operation

1 个答案:

答案 0 :(得分:0)

我会尝试在高斯模糊上进行蒙版:

name2::sample<int>
name2::sample<int>
name2::sample<int>
name2::sample<int>
name2::sample<int>
name2::sample<int>

结果(由于您的图片是jpg,因此可能会有所不同)

enter image description here

相关问题