ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

机器人空间感知与定位技术:从激光SLAM到无标记自主导航

机器人空间感知与定位技术:从激光SLAM到无标记自主导航 近两年讨论机器人大家聊得最多的往往是人形机器人、大模型、端到端。但一个容易被忽略的事实是机器人在实验室里能跑得很漂亮一旦进了仓库、工厂、医院最容易出问题的反而不是“大脑”而是“方向感”。定位漂移、地图错乱、动态障碍物误判每一个都足以让一台机器人从“智能设备”退化成一个需要人盯着的昂贵玩具。这就要说到今天想聊的主角Ommo Technologies。近日这家公司完成了数千万美元A轮融资核心方向是赋予机器人“空间直觉”。36氪在首发报道中给出的判断非常直接——这不是又一家做大模型或做机械臂的机器人公司而是一家在空间感知与定位技术上做底层突破的公司。从技术视角来看这件事值得所有做机器人开发、工业自动化、AMR 导航、ROS 开发的工程师关注。因为它的技术路线直指一个行业级痛点工业级稳定定位。本文不打算只复述融资新闻而是结合机器人定位技术现状、传统方案的局限、以及实际工程落地时遇到的坑聊聊 Ommo 这类技术背后到底意味着什么以及工程师应该用怎样的视角去理解这场融资背后的技术价值。1. 机器人行业不缺“大脑”缺的是“空间直觉”过去几年机器人技术的叙事主力一直在“智能化”上。大模型让机器人学会了对话、规划、理解指令强化学习让机械臂学会了复杂操作端到端模型让双足机器人跑得越来越稳。这些技术解决的核心问题是机器人该做什么、怎么做。但机器人终究是要在物理世界里移动和作业的。这就引出了第二个问题机器人在哪、周围是什么、怎么安全到达目标点。这个问题在技术栈里有一个明确的归类——定位、建图、导航、空间感知。它看似比“大脑”低一个层次却决定了机器人能否脱离实验室环境在仓储物流场景里AMR 需要连续 8 小时、保持厘米级精度运行信号遮挡、动态货架、叉车穿行都会干扰定位。在工业巡检场景里机器人必须知道自己“在哪条通道、哪个工位”哪怕偏差 5 厘米就可能错过检测点位。在商用服务场景里机器人要面对玻璃幕墙、大面积白墙、反光地面——这些恰恰是传统激光定位的“天敌”。行业里习惯把这部分能力称为“空间智能”但 Ommo 团队用了更物理的表达空间直觉。这个词很准确因为它在强调的不是“感知”而是“理解”——机器人不应该只是“看”到环境更应该在无外部标记、无 GPS、无高精地图的前提下本能地感知自己与环境的关系。从 A 轮融资规模来看资本方押注的显然不是“多一台机器人”而是“让所有机器人都能更可靠地理解空间”的底层能力。2. “空间直觉”的技术本质不靠外部标记靠物理推算要理解 Ommo 的技术价值先得看传统机器人定位技术是怎么工作的。当前工业移动机器人最主流的定位方式是2D 激光 SLAM 反光板/二维码/磁条。这套方案已经非常成熟却有一个结构性弱点它依赖外部人工标识。反光板需要在厂房里精密部署改变产线布局时需要重新标定。二维码/磁条需要铺设在地面长期被重载 AGV 碾压会磨损、污染、破坏。激光 SLAM 在动态变化大、对称结构多的场景里容易产生“相似场景误匹配”导致定位跳变。也就是说传统方案解决的是“在基础设施完善的环境里稳定定位”而不是“在没有人工标识的环境里自主定位”。Ommo 的“空间直觉”技术路线本质上是把定位从“地标依赖型”转为“物理推算型”。这种技术不依赖外部反射物、不依赖卫星信号、不依赖预建地图而是通过传感器数据与物理模型的融合持续推算机器人自身的位置与姿态。如果画一条技术演进线大致是第一代磁条/导轨/机械限位 —— 刚性路径改造成本高 第二代二维码/反光板/Laser SLAM —— 需要人工部署外部特征 第三代视觉激光IMU 多传感器融合 —— 降低对特征的依赖 第四代物理推算环境理解 —— 无标记、无预建、自适应Ommo 更像是在第三、四代之间把“传感器融合”这件事做到了更深的物理层。这种技术路线最大的想象空间在于它让机器人在完全陌生的环境里也能建立空间模型而不需要先有人去做环境改造和铺设工作。3. 为什么传统定位技术在动态场景里容易翻车很多朋友在机器人项目里都遇到过类似问题机器人白天跑了 10 个小时都很稳到了晚上某个区域突然原地打转或者换了一批货架之后机器人频繁报“定位丢失”。这不是偶发故障而是传统定位方案的机制性缺陷。我们先看激光 SLAM 的工作原理。Laser SLAM 通过激光雷达扫描环境轮廓与已建立的地图进行匹配再通过粒子滤波或图优化来估计机器人位姿。它的核心假设是环境的结构是稳定且可区分的。但现实是仓库的货架经常变动扫描到的轮廓和地图对不上通道两侧如果高度对称算法无法区分“这条通道”和“旁边那条通道”动态物体托盘、人员、叉车遮挡了墙面结构导致匹配点减少位姿漂移反光地面、玻璃墙体、金属货架会让激光点云产生噪点。这些场景在工业和商业环境中是常态而不是异常。所以出现了这样一个矛盾传统方案在“环境越规范”时越可靠而真实场景恰恰是“环境越动态、越混乱、越需要机器人发挥作用”。而视觉 SLAM 在纹理丰富环境里效果不错但遇到白墙、暗光、抖动时图像特征会大量丢失。IMU 可以提供短时运动增量却会产生积分漂移长时间运行后必须靠其他传感器修正。这也是为什么多传感器融合在工业机器人里几乎是标配——单纯靠任何单一传感器都很难同时满足高精度、长周期、动态环境这三个需求。4. 从融资热词看行业演进机器人定位正在从“必修课”变成“基本功”从近期的热词变化能明显感受到机器人定位已经成为社区讨论的焦点。在 ROS 开发群里高频问题从“URDF 怎么写”变成了“导航到目标点总偏移怎么办”。工业机器人售后论坛里出现大量像“ABB 机器人怎么优化条件等待卡顿”“发那科机器人干涉区 DI 信号触发时反应”这类问题——这说明定位、安全区域、信号交互已经成了实际产线上的核心痛点。在移动机器人领域“定位丢失”“动态避障误判”“叉车与 AGV 混行调度”几乎是每个项目群里必然出现的话题。这些现象背后是一个判断机器人行业的竞争重点正在从“能不能动”转向“能不能稳定地在复杂空间里工作”。过去几年行业最大的技术瓶颈在感知层面大家花大量成本在传感器选型激光雷达、深度相机、编码器、IMU和算法调参上。而现在头部玩家已经意识到单靠堆传感器和堆算力并不能解决所有问题必须从物理模型层面去提升机器人的空间理解能力。这恰好是 Ommo 这类公司切入的缝隙它不做整车不做机械臂不做“大脑”专注做空间感知与推算技术。它以技术方案形式开放给机器人厂商相当于给行业提供了一套“空间直觉”能力模块。它强调不依赖外部基础设施适合机器人公司在更广泛场景里快速落地。在商业上这类角色的价值很像芯片行业里的“IP 授权”模式——不直接面对终端用户却决定了下游产品的核心性能上限。5. 工程师视角如果要在机器人里实现“空间直觉”需要哪些技术栈对工程师来说与其只看融资新闻不如思考一个问题如果我们要在自己的机器人项目里借鉴这套思路技术栈应该怎么搭先说结论实现“空间直觉”不等于替换掉所有传感器而是用算法把传感器数据变成“物理推断”。一个典型的空间感知技术栈应该包含下面几层5.1 感知层传感器选型与标定空间直觉的输入是“多源感知”。常见组合包括激光雷达2D/3D负责环境轮廓与远距离测距双目/深度相机负责纹理特征与近距离精细建模IMU负责高频姿态增量弥补激光和视觉低帧率的问题轮式编码器在轮式机器人上提供里程计先验气压计/TOF 传感器在复杂地形或多层环境中提供高度参考。关键不是“传感器越多越好”而是标定质量。外参标定不准确多传感器融合反而比单传感器更差。工程上建议先用lidar-camera-calibration或kalibr这类开源工具做外参标定再做时间同步尤其是激光雷达与相机之间。以下是标定阶段的常见思路伪代码# 1. 采集标定数据约30-60秒缓慢移动传感器平台 rosbag record /scan /camera/image_raw /imu/data # 2. 使用 kalibr 做相机-IMU 外参标定 kalibr_calibrate_imu_camera \ --target aprilgrid.yaml \ --cam camchain.yaml \ --imu imu.yaml \ --bag calibration.bag # 3. 使用 velo2cam_calibration 做激光-相机外参标定 roslaunch velo2cam_calibration calibration.launch这段流程的目的是生成传感器之间的变换矩阵T_cam_lidar、T_imu_cam等。只有这些变换关系精确后期融合才能成立。5.2 融合层状态估计与位姿推算在机器人领域空间直觉的核心算法是状态估计State Estimation。主流实现有两种基于滤波的扩展卡尔曼滤波EKF适用于嵌入式平台计算量小基于图优化的因子图Factor Graph适用于算力充足的平台精度更高。对于 Ommo 这类“物理推算型”技术本质上就是利用运动学约束如轮速、IMU 预积分 传感器观测如激光扫描匹配、视觉特征匹配在统一的状态空间里估计位姿。下面是基于 ROS 2 的robot_localization做多传感器融合的配置示例它适合快速搭建一个工业级状态估计原型# 文件路径src/config/ekf.yaml # robot_localization EKF 配置部分 frequency: 30.0 sensor_timeout: 0.1 two_d_mode: true odom0: /wheel_odom odom0_config: [true, true, false, false, false, false, false, false, false, false, false, false, false, false, false] imu0: /imu/data imu0_config: [false, false, false, true, true, true, false, false, false, false, false, false, false, false, false]这份配置的意思是轮式里程计提供 x、y 方向的位置增量IMU 提供 roll、pitch、yaw 的姿态角。融合后输出的odometry/filtered比单一传感器稳定得多。5.3 理解层从“估计位姿”到“理解空间”有了稳定的位姿估计下一步是“空间建模”。这里要从两个维度来看几何维度通过 SLAM 构建地图告诉机器人“哪里有墙哪里有空地”。语义维度识别物体与区域功能告诉机器人“这里是什么区域有什么约束”。真正的空间直觉必须同时具备几何与语义两层理解。比如巡检机器人不仅要避开障碍物还要知道“配电柜区域不能进入”“狭窄通道需要减速”“这里是一个可能的叉车交汇点”。在实际工程中语义地图可以基于深度学习目标检测 栅格地图叠加来实现# 文件路径src/labeling/语义区域标注示例.py import numpy as np # 假设栅格地图0空闲, 100障碍物, 200未知 # 用检测框给指定区域打上语义标签 semantic_map np.zeros((100, 100), dtypenp.int8) def mark_zone(map_grid, bbox, label_id): x_min, y_min, x_max, y_max bbox map_grid[y_min:y_max, x_min:x_max] label_id return map_grid # 示例把检测到的配电柜区域标记为 1限制区域 semantic_map mark_zone(semantic_map, (30, 20, 45, 35), label_id1) print(语义地图已更新区域数量, len(np.unique(semantic_map)))这段代码虽然简单但表达了一个核心思想空间直觉不仅仅是“我在哪”更是“哪里能走、哪里要小心、哪里是禁区”。5.4 决策层结合成本地图做路径规划当机器人具备了“位姿 语义地图”的实时感知后路径规划就有了更丰富的约束条件。可以使用 ROS 2 的nav2框架并在代价地图中叠加语义信息。例如通过修改costmap_2d的插件把语义标记区域映射为代价层# 文件路径src/config/global_costmap.yaml部分 plugins: - name: static_layer type: nav2_costmap_2d::StaticLayer - name: semantic_layer type: nav2_costmap_2d::ObstacleLayer params: enabled: True combination_method: 1这样机器人在规划全局路径时不再把所有非障碍物区域看作等价可通行区域而是会结合语义约束选择更安全的路径。6. 现场落地时的可行性验证无标记环境定位能不能跑通纸上谈兵意义不大关键是验证“无外部标记、无预建高精地图”的定位方案在真实环境里能不能跑通。这里给出一个可复现的最小验证方案。前提是有一台带激光雷达、IMU 和轮式里程计的轮式机器人运行 ROS 2。第一步安装依赖。sudo apt install ros-$ROS_DISTRO-robot-localization sudo apt install ros-$ROS_DISTRO-nav2 sudo apt install ros-$ROS_DISTRO-slam-toolbox第二步启动传感器驱动和 robot_localization。# 终端1启动底盘的轮式里程计和 IMU 驱动 ros2 launch scout_base scout_base_launch.py # 终端2启动 EKF 融合 ros2 launch robot_localization ekf_launch.py第三步启动 SLAM 建图。# 终端3启动 SLAM Toolbox 在线建图 ros2 launch slam_toolbox online_async_launch.py第四步让机器人手动遥控移动覆盖测试区域。# 终端4使用 keyboard_teleop 控制机器人 ros2 run teleop_twist_keyboard teleop_twist_keyboard完成后观察 Rviz 里的机器人轨迹和地图是否平滑、是否有跳变。如果机器人经过长走廊或对称区域时依然稳定说明这套方案在轻量级无标记环境里具备可行性。如果出现以下现象需要重点排查定位漂移明显优先检查里程计标定、IMU 噪声参数建图出现重影往往是激光雷达运动畸变需要降低移动速度或启用畸变校正定位丢失检查动态物体是否过多或当前区域缺乏足够几何特征。这个验证流程不会立刻达到 Ommo 这类公司的精度水平但足以建立对“无标记定位”技术的基本感觉。7. 机器人定位相关的常见问题与排查思路在实际项目和社区交流中我整理了机器人定位相关的高频问题下面用表格形式列出方便现场排查问题现象可能原因排查方式解决方案机器人运行半小时后位置偏移轮式里程计标定不准或轮胎磨损对比编码器里程与真值检查轮胎气压/磨损重新标定轮径和轮距增加传感器融合权重激光建图出现重影移动速度过快或激光雷达运动畸变放慢移动速度观察点云是否错位启用激光运动畸变校正或降低扫描频率在长走廊/对称区域定位丢失几何特征不足激光匹配退化查看粒子分布或协方差确认是否发散融合视觉特征或增加地标约束动态物体导致导航急停代价地图动态障碍未及时更新检查 costmap 更新频率和传感器遮挡调大 obstacle range优化动态层参数视觉 SLAM 在暗光环境失效图像特征不足观察特征点数量是否过低增加红外补光或切换激光为主传感器多传感器时间戳不同步各传感器消息时间源不一致检查 topic 帧间隔和时钟源统一使用 ROS time 或硬件同步这张表并不覆盖所有问题但它代表了一个工程态度排查定位问题不是看单一传感器数据而是看数据流和约束关系。8. 对机器人开发者的实用建议读完这则融资新闻如果只记住一点那就是机器人行业的长期竞争力不只是大模型的推理能力更包括机器人在物理世界中的稳定空间感知能力。对普通开发者来说可以朝五个方向储备能力强化传感器融合基础EKF、因子图、IMU 预积分、外参标定这些知识在未来几年越来越重要。重视无标记定位技术未来产线部署不可能永远依赖反光板或二维码无标记、自适应方案会是趋势。关注语义地图与几何地图的融合单纯画墙和障碍物的时代正在过去语义理解会在导航与安全策略中占据更高比重。在真实场景中长期测试不要只满足于仿真或短时测试一周以上的连续运行、不同光照、不同人流密度才能暴露真实问题。保持对底层物理模型的敬畏数据驱动的方法可以解决感知问题但工程级稳定仍需要物理模型做底。对更远一步的思考如果 Ommo 这类公司能够把“空间直觉”做成标准化的底层能力模块机器人厂商就不需要每家公司都从零开始死磕定位算法。整个行业的上限会因此抬高机器人在非结构化环境里的落地速度也会明显加快。这件事对行业的影响可能比融资数字本身更值得关注。
返回列表