LSD-SLAM在深度地图refine部分采用了极线匹配的方法,在代码中极线方向求取比较复杂。我在这里做了简单的推导,方便大家对代码的理解。
在对极几何中极线表达式为[A B C],其中A,B,C满足如下公式
Ax+By+C=0
极线表达式计算公式如下(忽略了旋转部分):
平面中一条直线的方向向量可以表示为:
kx=y
所以针对Ax+By+C=0,我们可以得到它的方向向量可以表示为[-B,A],从而满足
A*(-B)+B*A=0
代入得到方向向量为:
简化后得到:
也就匹配到了代码中的
更多代码内容欢迎参考我的github,我已经添加了比较详细的中文注释: https://github.com/Wangxuefeng92/LSDaddexplain.git
EMAIL:wangxf92_hit@163.com