Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Opencv 改进harris角点检测结果_Opencv_Feature Detection - Fatal编程技术网

Opencv 改进harris角点检测结果

Opencv 改进harris角点检测结果,opencv,feature-detection,Opencv,Feature Detection,我一直在读关于特征检测的书,想试试哈里斯角点检测器。我意识到这是通过打电话来实现的 void cornerHarris(InputArray src、OutputArray dst、int blockSize、int ksize、double k、int borderType=BORDER\u默认值) 其中,dst是在每个像素处包含角强度的浮点图像 我想看到它工作,所以我想把它应用到下面的图片中: 结果是: 正如你所知,结果并不好。在我看来,它只是拾取了噪音,甚至没有检测到主角 这是我用来在

我一直在读关于特征检测的书,想试试哈里斯角点检测器。我意识到这是通过打电话来实现的

void cornerHarris(InputArray src、OutputArray dst、int blockSize、int ksize、double k、int borderType=BORDER\u默认值)

其中,dst是在每个像素处包含角强度的浮点图像

我想看到它工作,所以我想把它应用到下面的图片中:

结果是:

正如你所知,结果并不好。在我看来,它只是拾取了噪音,甚至没有检测到主角

这是我用来在图像上打印角点的代码,我使用了阈值并为阈值设置了任意值

int _tmain(int argc, _TCHAR* argv[])
{

Mat img, dst, threshed;
img = imread("c:\\laptop.jpg",0);

dst = Mat::zeros(img.size(), CV_32FC1);

cornerHarris(img, dst, 2, 3, 0.04, BORDER_DEFAULT);



threshold(dst, threshed, 0.00001, 255, THRESH_BINARY_INV);

namedWindow("meh", CV_WINDOW_AUTOSIZE);
imshow("meh", threshed);
//imwrite("harris.jpg", threshed);
waitKey(0);

return 0;
如果我降低阈值,结果是白色的,只有几个黑点(检测),增加阈值只会产生更像噪声的图像。

我错过什么了吗?如何提高此功能的质量


谢谢

您可以尝试一个功能。它建立在Harris角点检测器的基础上,但会过滤噪音,只返回强角点。

谢谢,这与corener检测文档不符,您(或一位学习者)是如何获得这一点的?