作者:Shreeyak Sajjan

机器之心编译

参与:王子嘉、蛋酱

业界已经广泛运用的光学 3D 间隔传感器,一贯有个办理不了的问题——每次遇见透明物体就会失落灵。
最近,谷歌与来自 Synthesis AI 和哥伦比亚大学的研究职员互助开拓了一种机器学习算法 ClearGrasp,能够从 RGB-D 图像中估计透明物体的准确 3D 数据。

让光学3D传感器看见透明杯子这是来自谷歌哥大年夜的新研究

从自动驾驶汽车到自动机器人等领域,光学 3D 间隔传感器与 RGB-D 相机的运用一样广泛,它可以天生丰富而精确的 3D 环境舆图。

但它也有个「天敌」,透明的物体就可以让一套常用的昂贵传感器挠头,哪怕只是一个普通的玻璃容器。

这是由于光学三维传感器的算法都是基于一个条件——假设所有表面都是 Lambertian 的,也便是说这个表面反射的光芒是均匀的,从而从各个角度看,表面的亮度都是同等的。
然而,透明物体显然不符合这个假设,由于它们的表面除了反射光芒,还会折射光芒。
因此,大多数透明工具的深度数据是无效的,或者是包含不可预测的噪声。

光学三维传感器常日无法探测到透明物体。
右上:例如,Intel®RealSense™D415 RGB-D 摄像机拍到的 3D 深度图像中没有显示玻璃瓶。
底部:对深度图像点云的三维可视化。

让机器更好地感知透明的表面,不仅能提高安全性,还能在非构造化运用中开辟新的交互——比如处理厨房用具或对塑料进行回收分类的机器人,或是在室底细况中导航或在玻璃桌面上天生增强现实 (AR) 可视化效果。

为理解决这个问题,谷歌与来自 Synthesis AI 和哥伦比亚大学的研究职员互助开拓了 ClearGrasp。
ClearGrasp 是一种机器学习算法,它能够从 RGB-D 图像中估计透明物体的准确 3D 数据。

这种效果的实现紧张得益于谷歌同时公开的一个大规模的合成数据集。
ClearGrasp 的输入可以来自任何标准的 RGB-D 摄像机,然后它会利用深度学习来精确地重修透明物体的深度,并将其泛化成一种全新的物体,这种物体在演习过程中是看不到的。
这与以前的方法不同,以前的方法须要事先理解透明物体(如它们的 3D 模型),然后结合背景照明和摄像机位置图来进行建模。
在这项事情中,谷歌还证明了 ClearGrasp 可以通过将其整合到其 pick and place 机器人的掌握系统中,来提高机器人的操作效率,在该系统中透明塑料物体的抓取成功率有了显著的提高。

ClearGrasp 通过深度学习来重修透明表面的精确三维深度数据。

透明工具的可视化数据集

任何有效的深度学习模型都须要须要大量的数据来演习(如视觉领域的 ImageNet 和 BERT 利用的 wikipedia),ClearGrasp 也不例外。
不幸的是,并没有这种带透明物体 3D 数据的数据集。
现有的 3D 数据集(如 Matterport3D、ScanNet 等)都没有透明表面的记录,由于这种标记过程耗时耗力。

为了战胜这个问题,谷歌创建了自己的大型透明工具数据集,个中包含 5 万多个具有相应表面法线(表示表面曲率)、分割掩模、边缘和深度的真实感渲染,这对付演习各种 2D 和 3D 检测任务非常有用。
每个图像包含的透明物体多达 5 个,有的在一个平面上,有的在一个手提袋里,而且包含了各种背景和照明的场景。

ClearGrasp 合成数据集的一些透明物体实例。

谷歌还在数据集中网络了 286 张实景图的测试集,这些图像都有深度标注。
实景图的拍摄过程是艰巨的,拍摄时须要在场景中的每个透明物体的位置上绘制一个跟其位置大小完备同等的图像。
这些图像是在许多不同的室内照明条件下拍摄的,利用了各种不同的布和饰面背景,而且包含了散落在场景周围的随机不透明物体。
它们既包含合成演习集中已有的工具,也包含新工具。

左:实景图拍摄设置;中:自定义用户界面支持精确地用喷漆复制更换每个透明工具;右:捕获数据的示例。

寻衅

虽然通过透明物体看到的扭曲的背景视图稠浊了范例的深度估计方法,但是也有一些线索暗示了物体的形状。
透明的表面也有镜面反射,这种反射跟镜子一样,在光芒充足的环境中就变成亮点了。
由于这些视觉线索在 RGB 图像中比较突出,并且紧张受到物体形状的影响,因此卷积神经网络可以利用这些反射来推断出准确的表面法线,然后再用于深度估计。

透明物体上的镜面反射反响了不同的特色,这些特色根据物体的形状而变革,并为估计表面法线供应了极其有用的视觉线索。

大多数机器学习算法试图直接从单目 RGB 图像中估计深度。
然而,即便对人类来说,单目深度估计也是一个非适定(ill-posed)的任务。
团队不雅观察到,在估计平坦背景表面的深度时存在较大的偏差,这就增加了对位于其上的透明物体深度估计的偏差。
因此,与直接估计所有几何图形的深度不同,纠正 RGB-D 3D 相机的初始深度估计值可能更实用——能够利用非透明表面的深度来关照透明表面的深度。

ClearGrasp 算法

ClearGrasp 用了 3 种神经网络:一种网络用于估计表面法线,一种用于遮挡边界(深度上不连续),另一种用于遮挡透明工具。
遮挡会删除跟透明工具有关的所有像素,以便添补其精确的深度。
然后,利用一个全局优化模块,从已知的表面开始扩展深度,并利用预测的表面法线来辅导重修的形状,然后利用预测的遮挡边界来保持不同工具之间的分离。

方法概述:点云首先根据输出深度天生,然后根据其表面法线着色。

每个神经网络都在透明的合成数据集上演习,它们在实景图中的透明物体上表现良好。
然而,对付其他表面,如墙壁或水果,表面的法线估计是很差的。
这个合成数据集还存在局限性,它只包含地面上的透明工具。
为了减轻这个问题的影响,团队在表面法线演习循环中加入了一些来自 Matterport3D 和 ScanNet 数据集的真实室内场景。
通过对域内的合成数据集和域外的实景数据集的演习,该模型在测试集中表现良好。

在 a) Matterport3D 和 ScanNet (MP+SN),b) 谷歌的合成数据集,c) MP+SN 以及谷歌的合成数据集演习后的表面法线估计。
把稳,在 MP+SN 上演习的模型没有检测到透明的物体。
只演习合成数据的模型能很好地识别真实的塑料瓶,但却无法识别其他物体和物体表面。
当模型同时在这两中数据集上演习时,就可以同时知足这两方面的需求。

结果

总体而言,定量实验表明 ClearGrasp 能够重修透明物体的深度,且比其他方法有更高的保真度。
只管模型只在合成透明物体上演习,但能够很好地适应真实天下的领域,比如在跨领域的已知物体上实现了险些一样的定量重修性能。
这个模型还可以很好地推广到具有从未见过的繁芜形状的新工具。

为了考验 ClearGrasp 的定量性能,团队基于输入和输出深度图像构建了 3D 点云,如下图所示(更多的例子可以在项目页面上找到:https://sites.google.com/view/cleargrasp/results)。
由此估计出的三维表面具有干净且连贯的重修形状——这对三维制图和三维物体检测等运用来说很主要,也没有在单目深度估计方法中看到的锯齿噪声。
可以证明模型是稳健的,并在繁芜的条件下(如识别位于图案背景中的透明工具或区分部分遮挡的透明工具)表现良好.

对真实图像的定量结果。
前两行:已知工具的结果。
底部两行:对新工具的结果。
点云是基于其相应的深度图像天生天生的,用其表面法线着色。

最主要的是,ClearGrasp 的输出深度可以直接用作利用 RGB-D 图像的最前辈的操作算法的输入。
用 ClearGrasp 的输出深度估计更换原始的传感器数据后,UR5 机器人手臂抓取算法在抓取透明物体的成功率上有了显著的提高。
当利用平行颌夹持器时,成功率从基线的 12% 提高到 74%,吸物时从 64% 提高到 86%。

利用 ClearGrasp 操作新的透明工具。
值得把稳的是,这些条件是有寻衅性的:没有纹理的背景,繁芜的物体形状和定向光,同样有令人困惑的阴影和焦散(当光芒从表面反射或折射时产生的光的模式)。

局限性及未来的事情

这一合成数据集的限定之一是它不能准确地表示焦散,这个问题同样来自于传统的路径跟踪算法渲染的限定。
因此,模型忽略了通亮焦散和阴影是独立的透明物体这一点。
只管有这些缺陷,谷歌与 ClearGrasp 的互助表明,合成数据仍旧是一种可行的方法,可以得到基于学习的深度重修方法的有效结果。
未来事情中一个比较好的方向是通过天生物理上精确的焦散和表面毛病(如指纹)来改进到真实天下图像的域迁移。

ClearGrasp 证明了高质量的渲染可以成功地演习出在现实天下中表现良好的模型。
团队还希望该数据集可以推动对数据驱动的透明工具感知算法的进一步研究。
下载链接和更多的示例图像可以在谷歌的项目网站(前文提过)和谷歌的 GitHub 页面(https://github.com/Shreeyak/cleargrasp)中找到。