detectMultiScale 读取冲突的一个解决方法

Posted 和优秀的人一起成长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了detectMultiScale 读取冲突的一个解决方法相关的知识,希望对你有一定的参考价值。

背景:用的是opencv的HOGDescriptor检测行人,实例化为hog;使用默认的行人检测器:

1 hog.setSVMDetector(cv::HOGDescriptor::getDefaultPeopleDetector())

错误:

引发错误的代码:

hog.detectMultiScale(moving_area, human_regions);

解决:opencv自带的函数本身是没有问题的,那么错误的就只能是使用,即参数。

opencv的cv::HOGDescriptor::getDefaultPeopleDetector()对传入的图片有大小方面的要求:

宽度>=64;
长度>=128;

将输入图片的大小调整为上述长度即可。比如用cv::resize函数~

 

以上是关于detectMultiScale 读取冲突的一个解决方法的主要内容,如果未能解决你的问题,请参考以下文章

读取 gzip 的 zlib 错误时访问冲突

cv::CascadeClassifier::detectMultiScale 中的断言失败 (!empty())

Git 解冲突

OpenCV中detectMultiScale的参数使用Python

Cuda CascadeClassifier detectMultiScale 输出不可读

OpenCV:如何将 HOGDescriptor::detectMultiScale() 与自定义 SVM 一起使用?