白墙、空旷车间、长走廊这类弱纹理环境,是视觉里程计最容易丢定位的场景。单目和双目在这里的短板不一样,选型前先想清楚。
一、单目的尺度问题:单目 VO 本身没有绝对尺度,靠初始化和运动估计尺度,弱纹理下特征点少,尺度漂移会被放大。直线运动为主的场景尤其难,因为缺少视差积累。
二、双目的基线取舍:基线越长远处深度越准,但近处重叠视野变小、遮挡变多;室内小场景用短基线更稳,室外大场景才需要长基线。基线不是越大越好。
三、特征策略:弱纹理下点特征不够用,可以补线特征和面特征,走廊的墙线、地面的边缘线都是有效约束。只依赖 ORB 点特征的方案,在白墙环境基本跑不远。
四、融合是正道:视觉加 IMU 紧耦合能在特征短暂丢失时靠惯性递推顶过去,但 IMU 零偏标定要做好,否则视觉一回来反而把轨迹拉偏。融合前先保证时间同步,毫秒级偏差在快速转弯时会很明显。
五、评估别只看轨迹图:分段算相对位姿误差和绝对轨迹误差,重点看弱纹理段的漂移,而不是全程平均值被好路段拉平。
大家在弱纹理环境做视觉定位时,是靠补特征、加 IMU,还是直接上激光雷达融合?