我试图通过Harris Detector在我的图像中找到角落,但是当我运行此代码时遇到问题:
int blockSize = 2;
int apertureSize = 3;
double k = 0.04;
IplImage* binMaxMatchContourImage = cvCreateImage( cvGetSize(maxMatchContourImage), 8, 1);
IplImage* afterHarrisImage = cvCreateImage( cvGetSize(maxMatchContourImage), 8, 1);
cvCanny(maxMatchContourImage, binMaxMatchContourImage, 50, 200);
cvCornerHarris( binMaxMatchContourImage, afterHarrisImage, blockSize, apertureSize, k);
但我的节目失败了:
OpenCV Error: Bad argument (Unknown array type) in unknown function, file ..\..\..\src\opencv\modules\core\src\matrix.cpp, line 698
请解释一下,我的问题在哪里?
答案 0 :(得分:0)
检查maxMatchContourImage的类型和大小是否与maxMatchContourImage相同。两者都应该是用于Canny边缘检测的单通道图像。
如果满足此条件,cvCornerHarris应该可以正常工作。