宋舒然|斯隆奖新晋得主宋舒然:从视觉出发,打造机器人之「眼」( 三 )
文章插图
图注:3D ShapeNets(2015)的转换原理
这是第一个成功通过深度学习方法将2.5D延伸到3D上的视觉工作。在此之前,深度学习多用在2D图像或自然语言处理上。「3D ShapeNets」首次展示了深度学习系统如何学习形状表征的过程,且通用性强,可以应用在多个不同的任务上,在计算机视觉领域产生了深远的影响。
对于宋舒然来说,这个工作既是她研究生涯中的一个里程碑,也是启发她在研究中采用「简单而高效」的方法论的起点:
「它很简单,但非常高效,唯一的限制是对算力的需求加大,因为数据的维度提升,计算量也会随之增长。此外,这是我第一次研究3D,我之后的许多工作都延续了这个项目的idea(观点),即用3D深度学习系统做形状表征。」
凭借在计算机视觉方向(尤其是数据驱动的3D场景理解)的一系列出色工作,宋舒然获得2015年Facebook博士生奖学金。她的工作登上普林斯顿研究校刊,还入选了「普林斯顿25岁以下创新25人」。
文章插图
图注:宋舒然在普林斯顿读博期间
3、从视觉到机器人
机器人对现实世界的感知准确率依赖于视觉中的3D语义场景完成技术。宋舒然在3D视觉上的研究突破奠定了她从事机器人视觉研究的基础。
从2016年提出「Deep Sliding Shapes」后,她就开始在研究视觉之余探索如何用3D视觉提高机器人推理周围环境的物体的能力。彼时,计算机视觉正越来越多地从分析单个静止图像转向理解视频和空间数据,对机器人的智能提升是一大利好。
文章插图
图注:宋舒然在普林斯顿大学研究的机器人(“Robot In a Room: Toward Perfect Object Recognition in Closed Environments”)
想象一下,如果一个机器人要打扫房间,那么它既需要有空间导航能力、知道移动到哪里,也需要识别出房间中的不同物体,才可以执行扫地、收拾、整理等任务。
这时,机器人就需要理解两个层级的信息:第一层级是帮助机器人与周围环境互动,可以识别移动的开放空间,并定位要操作的物体对象;第二层级及以上的信息则使机器人了解一个物体是什么,并使用该物体来执行任务。
在这个问题上,以往的研究趋于将两者分开,划分为「场景完成」与「对象标记」。但2017年,宋舒然与团队提出了「SSCNet」系统,通过从单个2D图像生成场景的完整3D表示与场景对象的标记,将两者结合起来,取得了更佳的算法效果。
尽管仍是从3D视觉出发,但这项工作预示了宋舒然之后在研究机器人视觉上的一个重要理念:机器人通过与现实世界的互动中了解世界。比如,即使一个房间里的椅子视线部分被桌子挡住,但如果机器人能够将其对椅子形状的基本识别与房间布局相结合,那么它也能判断桌子旁边的形状是椅子。这类预测的准确率会大幅度提升。
文章插图
图注:在「SSCNet」中,只需要输入「桌子」的图像,就可以预测桌子周围的物体摆放
在3D物体检测与追踪上做了许多工作后,2017年,宋舒然与MIT的机器人团队合作,一起参加了亚马逊机器人挑战赛——Amazon Picking Challenge,开始尝试视觉与机器人的「软硬结合」。
「我们最开始合作的想法非常简单。他们是做机器人的,我们是做视觉的,我们把两边的系统合起来就可以去参加比赛。我们第一年也确实是这么做的。」宋舒然对AI科技评论讲道。
不过,这种「粗鲁搭配」的做法并没有取得很好的效果。
2017年,他们合作的方式是:由宋舒然的计算机视觉组先定义一个要输出的算法结果(如物体姿势),然后再由MIT的机器人组通过视觉输出的算法去做动作规划(motion planning),计算机器人如何可以抓取目标物体。
但这次的合作并不高效。普林斯顿与MIT位于不同的城市,两个团队之间的交流主要是通过邮件传代码,宋舒然团队的视觉算法过了一个月后才放在MIT的机器人上试验。
在试验的过程中,他们也发现了许多问题,比如:宋舒然团队所提出的视觉算法非常慢,导致整个系统也很慢;可用于训练的标注数据极其有限,模型跑不起来;算法精度不够,对于计算机视觉来说,误差在5度5厘米以内的算法精度已是效果极佳,但当这个误差被真正应用在机器人操作上时,却可能造成整个机器人环境的崩溃。