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函数~

 

posted @ 2017-08-30 18:35  Joanna-In-Hdu&Hust  阅读(1425)  评论(0编辑  收藏  举报