2. 三维视觉基础

在机器人三维目标检测与姿态估计任务中,算法看到的从来不是“物体本身”,而是传感器对空间几何与外观的离散采样。理解相机如何把三维世界投影成二维图像、点云如何表达空间结构、深度图与RGB-D数据各自携带什么信息,是后续标定、配准、检测与位姿求解的基础。本节围绕这条数据链路,建立从物理世界到算法输入的完整认知。

一、相机模型:从三维点到像素的投影

最常用的成像模型是针孔模型。设相机坐标系下一点为 P_c = (X_c, Y_c, Z_c),归一化平面坐标为 (X_c/Z_c, Y_c/Z_c),再经焦距 f_x, f_y 与主点 c_x, c_y 映射到像素坐标:

u = f_x * X_c / Z_c + c_x
v = f_y * Y_c / Z_c + c_y

齐次形式:
[ u ]   [ f_x  0   c_x ] [ X_c ]
[ v ] = [  0  f_y  c_y ] [ Y_c ]
[ 1 ]   [  0   0    1  ] [ Z_c ]

内参矩阵 K 描述相机自身属性,畸变参数则修正径向与切向误差。真实镜头常存在桶形或枕形畸变,标定后需先做去畸变,否则边缘区域的像素与空间射线不再严格对应。对机器人抓取而言,内参误差会直接放大到三维定位误差,因此标定质量必须优先保证。

二、坐标系变换:外参与手眼关系

三维视觉中至少涉及世界、相机、图像、机器人基座、末端执行器等坐标系。点从世界系到相机系的变换为:

P_c = R_cw * P_w + t_cw
T_cw = [ R_cw  t_cw ]
       [  0     1  ]

其中 R_cw 与 t_cw 构成外参。若相机固定在机械臂末端,则还需手眼标定矩阵 T_ce,把相机观测转换到末端或基座系。实际系统中,外参一旦漂移,检测框在图像上看似正确,投影到机器人工作空间却会整体偏移,这是抓取失败的高频原因。

针孔投影与坐标系链路 世界坐标系 P_w = (X_w, Y_w, Z_w) 物体/标定板位置 相机坐标系 P_c = R·P_w + t 外参 R, t 归一化平面 (X_c/Z_c, Y_c/Z_c) 透视除法 像素坐标 (u, v) 内参 K 机器人系统中的坐标变换链 世界系 W 工作台/地图 基座系 B 机器人本体 末端系 E 法兰/夹爪 相机系 C RGB-D 传感器 T_bw T_eb T_ce 手眼标定求 T_ce,外参标定求 T_cw,二者共同决定像素到机器人坐标的映射精度

三、点云表示、深度图与RGB-D数据

深度图是每个像素记录到相机距离的二维数组,结构规整、便于卷积处理;点云则是三维点集合 {(x_i, y_i, z_i)},可附加颜色、法向、强度等属性。RGB-D 数据把彩色图与深度图对齐,使每个像素同时拥有颜色和深度。三者关系可概括为:深度图 + 内参 → 点云;点云 + 外参 → 世界坐标;RGB-D 对齐后 → 彩色点云。

点云常见表示包括无序点集、体素栅格、深度图投影和有序点云。无序点集灵活但计算量大;体素化可降低密度并提取三维卷积特征;深度图投影保留图像邻域关系,适合实时网络。机器人抓取中,常先对深度图做滤波与补洞,再反投影为点云,最后用 RANSAC 或聚类分割出目标。

数据形式核心信息优点典型用途
RGB 图像颜色、纹理、边缘分辨率高、成本低二维检测、语义分割
深度图逐像素距离结构规整、易卷积平面检测、避障、抓取点估计
点云三维坐标与属性直接表达空间几何配准、分割、6D 位姿
RGB-D颜色 + 深度对齐信息互补、便于融合三维目标检测、姿态估计

四、常见传感器原理与选型

机器人三维视觉常用传感器包括结构光、飞行时间(ToF)、双目立体视觉和激光雷达。结构光通过投射编码图案并观察形变恢复深度,近距离精度高,但受环境光和反光材质影响明显;ToF 通过测量光飞行时间获得深度,帧率高、中远距离表现稳定,但多路径干扰和边缘噪声较突出;双目依赖纹理匹配,成本低、被动测量,但在弱纹理和重复纹理区域易失效;激光雷达精度高、视野广,适合导航与室外场景,但成本与体积较大。

选型时优先明确三个问题:工作距离与视野是否覆盖任务空间;目标材质是否反光、透明或弱纹理;系统对实时性、精度和成本的约束。抓取小零件常选结构光或高分辨率双目,移动机器人避障常选 ToF 或激光雷达,室外大场景则倾向激光雷达与双目融合。

五、案例与常见误区

以机械臂抓取桌面零件为例:先用 RGB-D 相机采集对齐的彩色与深度图,依据内参把深度图反投影为相机系点云;再通过手眼标定矩阵把点云变换到机器人基座系;随后在点云中分割目标并估计 6D 位姿,最后生成抓取位姿。若深度图存在缺失,点云会出现空洞,位姿估计容易偏向可见表面,导致夹爪碰撞或抓空。

常见误区有三:一是忽略畸变校正,直接用原始像素反投影;二是把深度图与彩色图未对齐就融合,造成颜色与几何错位;三是外参标定后长期不校验,机器人振动或碰撞后仍沿用旧参数。建议每次任务前用标定板或已知工件做一次快速验证,并记录重投影误差。

掌握相机模型、坐标变换、点云与 RGB-D 表示以及传感器特性后,才能为后续的三维检测网络、点云配准和姿态估计提供可靠输入。实际工程中,数据质量与标定精度往往比网络结构更决定最终效果。