哈里斯角检测

信息处理 计算机视觉 角落
2022-02-18 07:15:23

在哈里斯角检测中,选择此功能是否有任何特殊原因:

R=det(M)ktrace(M)2

我们想要一个函数来评估 E(u,v) 在不同方向上的波动速度,但我们不能使用其他函数,例如:

R=1(λ1+λ2)2

2个回答

我们不能使用其他函数吗,例如:R=1(λ1+λ2)2

这个公式没有那么有用,因为它不能区分两个同样大的特征值(一个角)和一个两倍大的特征值加上一个非常小的特征值(一条直线)。因此,例如相同的结果,尽管前者可能不是角落。λ1=2,λ2=0λ1=1,λ2=1

但一般来说:是的,哈里斯公式不是唯一的。例如,您可以使用特征值之间的调和平均值,即或者您可以直接使用较小的特征值。2/(1/λ1+1/λ2)=2det(M)/trace(M)

Harris 角点检测器是在浮点除法和平方根仍然是昂贵操作的时候开发的。我猜这就是为什么首选只使用乘法的检测器的原因之一。

这些天来,在 PC 上,我很确定您可以更快地划分浮点数,而不是将它们传送到 CPU 或 GPU,因此考虑其他角检测器是有意义的。在其他硬件上,如移动设备或智能相机,低成本仍然是 Harris 角点检测器的重要优势。

M是结构张量。信号在两个方向变化的点是的两个特征值都很大的点。,所以都很大时很大。MR=det(M)ktrace2(M)=λ1λ2k(λ1+λ2)2Rλ1λ2