提交 84f78059 编写于 作者: S Smirnov Egor

add reproducer and bugfix

上级 b335fe67
......@@ -122,6 +122,12 @@ void HOGDescriptor::setSVMDetector(InputArray _svmDetector)
_svmDetector.getMat().convertTo(svmDetector, CV_32F);
CV_Assert(checkDetectorSize());
if (_svmDetector.empty())
{
oclSvmDetector = UMat();
return;
}
Mat detector_reordered(1, (int)svmDetector.size(), CV_32FC1);
size_t block_hist_size = getBlockHistogramSize(blockSize, cellSize, nbins);
......
......@@ -93,6 +93,25 @@ OCL_TEST_P(HOG, GetDescriptors)
EXPECT_MAT_SIMILAR(cpu_desc, gpu_desc, 1e-1);
}
OCL_TEST_P(HOG, SVMDetector)
{
HOGDescriptor hog_first, hog_second;
// empty -> empty
hog_first.copyTo(hog_second);
// first -> both
hog_first.setSVMDetector(hog_first.getDefaultPeopleDetector());
hog_first.copyTo(hog_second);
// both -> both
hog_first.copyTo(hog_second);
// second -> empty
hog_first.setSVMDetector(cv::noArray());
hog_first.copyTo(hog_second);
}
OCL_TEST_P(HOG, Detect)
{
HOGDescriptor hog;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册