虽然在透明物体上,RGB-D 经典的深度估算方法无法给出准确数据,但仍然有一些蛛丝马迹暗示了物体的形状。最重要的一点是,透明表面会出现镜面反射,在光线充足的环境中会显示成亮点,在 RGB 图像中非常明显,而且主要受到物体形状的影响。
因此,卷积神经网络可以利用这些反射数据推断出准确的表面法线,然后将其用于深度估算。
另一方面,大多数机器学习算法都尝试直接从单眼 RGB 图像中估计深度,不过即使对于人类而言,这也是一个困难的任务。尤其在背景表面比较平滑时,现有算法对深度的估计会出现很大的误差。这也会进一步加大透明物体深度的估算误差。
基于此,研究人员认为与其直接估算透明物体深度,不如矫正 RGB-D 相机的初始深度估算数据。这样更容易实现,还可以通过非透明表面的深度来推算透明表面的深度。
ClearGrasp 算法
ClearGrasp 算法使用了三个神经网络:一个用于估计表面法线,一个用于分析受遮挡边界(深度不连续),另一个给透明对象罩上蒙版。蒙版负责删除透明对象的所有像素,以便填充上正确的深度数据。
研究人员使用了一种全局优化模块,可以预测表面法线并利用其来引导形状的重建,实现对已知表面深度的拓展,还可以利用推算出的遮挡边界来保持不同物体之间的分离状态。
由于研究人员创建的数据集存在局限性,比如训练图片只包含放在地平面上的透明物体,因此初期的ClearGrasp 算法判断墙壁等其他表面法线的表现很差。为了改善这一问题,他们在表面法线估算训练中加入了 Matterport3D 和 ScanNet 数据集中的真实室内场景,虽然没有透明物体,但针对真实场景的训练有效提高了算法估算表面法线的准确率。
图 | 三套神经网络各有不同分工(来源:谷歌 AI)
为了系统分析 ClearGrasp 的性能,研究人员分别利用 RGB-D 数据和 ClearGrasp 数据构造了 3D 点云。点云显示了算法所生成的 3D 表面形状干净且连贯,没有原始单眼深度估算法中常见的锯齿状噪声,而且还可以分辨复杂图案背景下的透明物体,以及区分相互遮挡的透明物体。
最重要的是,ClearGrasp 输出深度数据可以直接控制依赖于 RGB-D 图像的机械臂。
研究人员使用了 UR5 工业机械臂进行测试,将其原始传感器数据替换成 ClearGrasp 输出深度数据后,它的透明物体抓取成功率得到了显著改善:平行夹爪的成功率从 12% 大幅提升到 74%,吸爪的成功率从 64% 提升到 86%。
图 | UR5 机械臂拾取透明物体(来源:谷歌 AI)
虽然分辨透明物体的准确率已经有了大幅提升,但新算法仍然有很大的进步空间。
研究人员认为,受到训练数据集和传统路径跟踪及渲染算法的局限性影响,ClearGrasp 仍然不能准确分辨散焦线,经常会把明亮的散焦线和物体阴影混淆为独立的透明物体。这将是未来的重要研究方向之一。
研究人员相信,这项研究成果证明了,基于深度学习的深度数据重建方法足以胜过传统方法,使机器能够更好地感知透明表面,不仅有望提高 LIDAR 无人驾驶等技术的安全性,而且还可以在多变的应用场景中开启新的交互方式,让分类机器人或者室内导航等技术更加高效和可靠。