检测图像中的对象

时间:2017-08-29 15:43:59

标签: python opencv image-processing computer-vision

enter image description here

我附上了一个由物体组成的图像。问题是找到图像中存在的对象的计数。我试过opencv找到轮廓功能和模板匹配,但它不能很好地工作。图像中存在的对象不必相同。

有没有更好的方法来解决这类问题。

im2, contours, hierarchy = cv2.findContours(bilateral_filtered_image,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)
new_cnts=[]
for c in contours:
    area = cv2.contourArea(c)
    k = cv2.isContourConvex(c)
    if (20<area<200):
        new_cnts.append(c)

1 个答案:

答案 0 :(得分:0)

1:blob查找阈值(blob大小和形状的一些细化更具体)。

或2:Canny边缘过滤到圆圈查找。它们看起来都很圆,并且或多或少都有干净的边缘。

话虽这么说,我只是基于你给定的图像,成像的第一步总是在可以的时候用照明和摄像机角度堆叠甲板。您可以通过多种方式为此设置添加一些亮点,以便无论您选择哪种模式,都可以使视觉设置更加强大。