使用Python的OpenCV中detectMultiScale的参数
我无法理解传递给detectMultiScale的参数。我知道一般语法是detectMultiScale(图像、拒绝级别、级别权重) 但是,级别和级别权重的参数意味着什么?用于检测对象的最佳值是什么使用Python的OpenCV中detectMultiScale的参数,python,opencv,object-detection,Python,Opencv,Object Detection,我无法理解传递给detectMultiScale的参数。我知道一般语法是detectMultiScale(图像、拒绝级别、级别权重) 但是,级别和级别权重的参数意味着什么?用于检测对象的最佳值是什么 我想用它来检测眼睛的瞳孔这里可以找到一个代码示例: 关于参数说明,您可能引用了旧的参数定义,事实上,您可能面临以下参数: scaleFactor:指定图像大小减小多少的参数 在每个图像比例下 minNeighbors:指定每个候选矩形必须保留多少邻居的参数 在这里,您可以找到关于这些参数的很好
我想用它来检测眼睛的瞳孔这里可以找到一个代码示例: 关于参数说明,您可能引用了旧的参数定义,事实上,您可能面临以下参数:
- scaleFactor:指定图像大小减小多少的参数 在每个图像比例下
- minNeighbors:指定每个候选矩形必须保留多少邻居的参数
- haarcascade_frontalface_default.xml
- haarcascade_eye.xml
–指定在每个图像比例下图像大小减小多少的参数scaleFactor
–指定每个候选矩形必须保留多少个邻居的参数minNeighbors
–可能的最小对象大小。小于该值的对象将被忽略minSize
–最大可能对象大小。大于此值的对象将被忽略maxSize
objects=cv.CascadeClassifier.detectMultiScale(图像[,缩放因子[,minNeighbors[,标志[,minSize[,maxSize]]]]
参数:
包含对象所在图像的CV_8U类型的图像矩阵
被检测到。
矩形的对象向量,其中每个矩形包含
检测到的对象,矩形可能部分位于外部
原始图像。
scaleFactor参数,指定图像大小的减小程度
在每个图像比例下。
minNeighbors参数,指定每个候选对象有多少个邻居
矩形应该保留它。
为旧级联标记与中相同含义的参数
函数cvHaarDetectObjects。它不用于
新瀑布。
最小可能对象大小。小于该大小的对象
都被忽略了。
最大可能对象大小。大于该值的对象
忽略。如果计算maxSize==minSize模型
在单一尺度上。
注意
- (Python)使用级联分类器的人脸检测示例可以在opencv_source_code/samples/Python/facedetect.py中找到
rects=cascade.detectMultiScale(img,
scaleFactor=1.3,
minNeighbors=4,
minSize=(30,30),
标志=cv.CASCADE\u SCALE\u图像)
检测多尺度函数用于检测面。该函数将返回一个矩形,其中包含检测面周围的坐标(x、y、w、h)
它有3个常用参数-输入图像、scaleFactor和minNeighbours
scaleFactor
指定图像大小随每个比例减小的程度。在合影中,可能有一些脸靠近相机,而不是其他脸。自然,这些脸会比后面的脸显得更突出。此因素会对此进行补偿
minNeighbours
指定每个候选矩形必须保留多少邻居。您可以在此处详细了解它。您可能需要调整这些值以获得最佳结果。此参数指定矩形必须称为面的邻居数
我们在特定范围内进行试验和测试后获得这些值。您的参数非常错误。我想指出,您应该为
minSize
指定一个元组(30,30)
,而不是[30,30]
。因此,示例用法是faces=face\u cascade.detectMultiScale(image=gray,