1

哈里斯 以上是使用 Harris Corner Detection Algorithm 计算图像中角点的表示。我已经执行了第 5 步,但是,在第 6 步中,我无法决定如何为计算中获得的值设置阈值R = det(H) - k(trace(H))^2。此屏幕截图取自 Robert Collins 的幻灯片http://www.cse.psu.edu/~rcollins/CSE486/lecture06.pdf,他在其中提到了弯道和设置-1000 for edges and 10000 for corners. 介于两者之间的值没有任何意义。

我的问题是他对他的实验和样本图像的选择是主观的,对于特定的图像,-10000 and 10000工作的价值。在现实生活中,没有办法知道期待什么样的图像,如何选择阈值。

PS:我已经尝试过使用 Matlab 的rice.png,阈值很差。

编辑:我看过这个关于 Harris Corner 实现 Harris 角检测器的问题 ,上面写着“只需收集所有像素值高于周围 5x5 邻域中所有其他像素的像素”。我想要一些更数学的东西来实现。

谢谢。

4

1 回答 1

4

更数学?好的,“找到过滤图像的所有局部最大值,然后选择最高的 N”怎么样,这是该问题的响应者所推荐的。至于 N,请使用您对场景的任何先验信息。例如,您对具有 100 个角的棋盘感兴趣吗?然后设置 N=200 以确保您获得其中的大部分。

顺便说一句,一种方便的方法是在过滤后的图像中查找未更改的值及其膨胀版本,膨胀是使用 5x5 平面结构元素完成的。

于 2013-08-17T14:12:05.947 回答