是什么
视觉里程计(visual odometry)是一种让机器人靠看地面来判断自己究竟走了多远的方法,而不是靠数车轮转了几圈。NASA 喷气推进实验室(Jet Propulsion Laboratory, JPL)把它描述为:自主检测并跟踪附近地形中的特征,用来测量巡视器在松软或坡度较大的地面上行驶时打滑了多少 [1]。这两者的区别很关键。轮子转了,不等于车真的往前走了:在松散沙土上或陡坡上,车轮可能空转或侧滑,这时单纯累计车轮转数会把行驶距离算多。
怎么工作
巡视器的相机先拍一张照片,向前行驶一小段,再拍一张。软件把两张照片对比,自动找出几十个特征,例如岩石的角点、车辙里对比度高的角点、土壤质地的明显变化,并跟踪每一个特征在两张图像之间如何移动 [2]。每个被跟踪到的特征都提供一点关于相机自身运动的线索;把所有这类地形特征测到的三维运动合起来,巡视器就能算出自己实际移动和转动了多少,比单纯数车轮转数精确得多 [2]。因为这个估计来自图像而不是车轮,所以在车轮打滑时它恰恰最有价值。
从哪来
视觉里程计被用在火星探测车(Mars Exploration Rover, MER)上,JPL 认为这两台巡视器是第一次实际演示这项技术的任务 [1]。它并不在任务最初的软件基线设计之中。JPL 一篇关于 MER 自主导航结果的论文记载,用于位置估计的视觉里程计是作为一项额外加分的内容集成进来的,随着地面作业的推进,它的重要性不断上升 [3]。在打滑严重的区域,用的正是基于立体视觉的视觉里程计来估计巡视器的运动 [3]。
带来了什么
最直接的收益是爬坡。有了视觉里程计自主补偿意料之外的打滑,两台巡视器能够行驶在 15 度到 30 度的坡面上 [1]。在机遇号(Opportunity)上,视觉里程计软件还使得巡视器即使在不规则打滑的坡面上也能精确接近目标 [1],从而可以贴近科学家想细看的岩石或土壤,而不是停在离目标还有一段距离的地方。
局限
这套方法依赖有东西可看。它靠找出几十个可跟踪的特征来工作,例如岩石角点、车辙角点和土壤质地的突变 [2];如果地面缺少明显、高对比度的特征,软件可利用的信息就变少了。另外,测出打滑并不等于消除打滑:视觉里程计告诉巡视器它实际移动了多少,从而让它修正自己的位置估计,但车轮仍然在滑,坡仍然在那里。这项技术换来的是对自己在哪里更准确的判断,正是这一点让在不确定地面上行驶从一次冒险变成一件可以管理的风险。
20041
-
2004 年 1 月,勇气号与机遇号两辆火星车登陆火星,并首次在太空使用多项自主导航能力。任务原本只计划行驶约 1 公里,实际里程远超于此,其中相当一部分路程由火星车自己决定怎么走。
注释与来源
- MER Surface Navigationhttps://www-robotics.jpl.nasa.gov/what-we-do/flight-projects/mars-exploration-rovers/surface-navigation/
- Opportunity has a look around - Driving on Marshttps://mars.nasa.gov/files/resources/OpportunityPoster.pdf
- Autonomous Navigation Results from the Mars Exploration Rover (MER) Missionhttps://www-robotics.jpl.nasa.gov/media/documents/MER_ISER2004.pdf
引用本页: 视觉里程计. TellWorld, https://www.tellworld.net/zh/learn/visual-odometry. 更新于 2026-11-07