熟悉Homographies的人会知道你必须将其标准化除以任何矩阵分量,以保持齐次坐标。单应性是3x3矩阵,通常归一化除以(3,3)处的元素。
当该值非常小(例如0.0000008)时,问题就出现了,并且将一个被上述的值除以零(0.0000007)。当它被假定为零时,结果值几乎为0.875,并且得到的投影没有任何意义。
我想知道解决这个问题的常用方法。我使用C ++和浮点运算。
答案 0 :(得分:3)
所以,如果我理解这个问题:
0/0.000000001 = 0 = CORRECT
和
0.000000001/0.000000001 ~ 1 INCORRECT
我将使用参数sigma定义一个检查错误的函数。
如果值< sigma = 0.001,假设为零,并返回0,否则返回值。
因此,它总是在sigma错误上有效,如果没有则为0。