2

我想使用级联分类器方法来比较找到的圆形(来自检测到人脸的图像集)和我首先定义的参考圆,以便我可以匹配这两个圆/椭圆:图像中的那个,第二个用作参考。

目标是在最后说,头部与参考相比更大或更小。

如何才能做到这一点?

4

1 回答 1

0

CascadeClassifier 将返回一个 cv::Rect 向量。如果您只是想将检测的相对大小与参考的大小进行比较,您可能只使用 Rect 而不必担心圆圈。您知道参考的大小,因为您定义了它,然后将其与每个检测到的 Rect 的大小进行比较。

cv::Size referenceSize(24,24); //you know this before hand
cv::Rect detectedObject = detectedObjects[0];//look at first Rect from cascade
if(referenceSize.area() > detectedObject.area())
{ // detection is smaller than reference
}
else
{ // detection is larger than reference
}

您还可以使用 detectMultiScale 的最小/最大尺寸参数来查找仅比您的参考值更小或更大的对象。

于 2013-05-30T18:32:54.210 回答