我同时在OpenCV中使用两种Haar级联算法(正面和轮廓)来改善人脸检测。
很遗憾,该检测无法正常工作,我也不知道如何解决。返回值为2(在具有5张面孔的图片上,通常可以检测到),并且所有矩形都消失了。
这是预期的结果(没有重叠的矩形):
This is the original picture (and also the result.jpg) if you want to make your own test.
这是代码:
countOfRowsFiltered
答案 0 :(得分:0)
openCV函数groupRectangles需要3个输入。
1)rectList:矩形向量
2)groupthreshold:最小矩形数减去1
3)eps:将矩形合并为一组的矩形之间的相对差
您的代码:
result=cv2.groupRectangles(combined_list,1,0.85)
在您的代码中,将groupthreshold参数设置为1,该参数拒绝所有具有一个矩形的聚类。将此参数设置为0,您将获得所需的结果。
解决方案:
result=cv2.groupRectangles(combined_list,0,0.85)
详细说明如下: (https://docs.opencv.org/3.4/d5/d54/group__objdetect.html#ga3dba897ade8aa8227edda66508e16ab9)
答案 1 :(得分:0)
非最大抑制算法用于解决检测结果重叠的问题。 pyimagesearch上有一篇非常不错的文章,并提供了代码,可帮助您朝正确的方向前进。