您的位置 首页 新品

深度:自动驾驶特斯拉背面核心技术解析

深度:自动驾驶特斯拉背后核心技术解析-无人驾驶系统中的一项重要核心技术——图像语义分割(semantic image segmentation)。图像语义分割作为计算机视觉(computer visi

咱们就来谈谈无人驾驶体系中的一项重要核心技能——图画语义切割(semanTIc image segmentaTIon)。图画语义切割作为核算机视觉(computer vision)中图画了解(image understanding)的重要一环,不只在工业界的需求日益凸显,一起语义切割也是当下学术界的研讨抢手之一。

说起特斯拉,咱们或许立马会想到本年 5 月份产生在特斯拉 Model S 无人驾驶上的一宗夺命事故。开端的查询标明,在激烈的日照条件下,驾驶员和无人驾驶体系都未能注意到牵引式挂车的白色车身,因而未能及时发动刹车体系。而因为牵引式挂车正在横穿公路,且车身较高,这一特殊情况导致 Model S 从挂车底部经过期,其前挡风玻璃与挂车底部产生碰击,导致驾驶员不幸遇难。

无独有偶,8 月 8 日美国密苏里州的一名男人、特斯拉 Model X 车主约书亚?尼利(Joshua Neally)在上班途中突发肺栓塞。在 Model X 的 Autopilot 无人驾驶功用的协助下,他安全抵达了医院。这「一抑一扬」着实让人耐人寻味,略有些「败也萧何,成也萧何」之意。

猎奇的读者必定会有疑问:这「一成一败」背面的原理究竟是什么?是无人驾驶体系中的哪个部分产生了失误而形成事故?又是哪部分技能支撑了无人驾驶进程呢?

今日,咱们就来谈谈无人驾驶体系中的一项重要核心技能——图画语义切割(semanTIc image segmentaTIon)。图画语义切割作为核算机视觉(computer vision)中图画了解(image understanding)的重要一环,不只在工业界的需求日益凸显,一起语义切割也是当下学术界的研讨抢手之一。

什么是图画语义切割?

图画语义切割能够说是图画了解的柱石性技能,在无人驾驶体系(详细为街景辨认与了解)、无人机使用(着陆点判别)以及穿戴式设备使用中无足轻重。

咱们都知道,图画是由许多像素(pixel)组成,而「语义切割」望文生义便是将像素依照图画中表达语义意义的不同进行分组(grouping)/切割(segmentation)。下图取自图画切割范畴的规范数据集之一 PASCAL VOC。其间,左图为原始图画,右图为切割使命的实在符号(ground truth):赤色区域表明语义为「person」的图画像素区域,蓝绿色代表「motorbike」语义区域,黑色表明「background」,白色(边)则表明未符号区域。

显着,在图画语义切割使命中,其输入为一张 H×W×3 的三通道五颜六色图画,输出则是对应的一个 H × W 矩阵,矩阵的每一个元素标明晰原图中对应方位像素所表明的语义类别(semantic label)。因而,图画语义切割也称为「图画语义标明」(image semantic labeling)、「像素语义标明」(semantic pixel labeling)或「像素语义分组」(semantic pixel grouping)。

从上图和题图中,咱们能够显着看出图画语义切割使命的难点便在于这「语义」二字。在实在图画中,表达某一语义的同一物体常由不同部件组成(如,building,motorbike,person 等),一起这些部分往往有着不同的色彩、纹路乃至亮度(如building),这给图画语义的准确切割带来了困难和应战。

前 DL 年代的语义切割

从最简略的像素等级「阈值法」(thresholding methods)、依据像素聚类的切割办法(clustering-based segmentation methods)到「图区分」的切割办法(graph partitioning segmentation methods),在深度学习(deep learning, DL)「一统江湖」之前,图画语义切割方面的作业可谓「百家争鸣」。在此,咱们仅以「normalized cut」[1]和「grab cut」 [2]这两个依据图区分的经典切割办法为例,介绍一下前 DL 年代语义切割方面的研讨。

Normalized cut (N-cut)办法是依据图区分(graph partitioning)的语义切割办法中最闻名的办法之一,于 2000 年 Jianbo Shi 和 Jitendra Malik 发表于相关范畴尖端期刊 TPAMI。一般,传统依据图区分的语义切割办法都是将图画笼统为图(graph)的办法 G=(V,E) (V 为图节点,E 为图的边),然后凭借图理论(graph theory)中的理论和算法进行图画的语义切割。

常用的办法为经典的最小割算法(min-cut algorithm)。不过,在边的权重核算时,经典 min-cut 算法只考虑了部分信息。如下图所示,以二分图为例(将 G 分为不相交的 , 两部分),若只考虑部分信息,那么别离出一个点显着是一个 min-cut,因而图区分的成果便是相似 或 这样离群点,而从大局来看,实践想分红的组却是左右两大部分。

针对这一景象,N-cut 则提出了一种考虑大局信息的办法来进行图区分(graph partitioning),即,将两个切割部分 A,B , 与全图节点的衔接权重(assoc(A,V) 和 assoc(B,V))考虑进去:

如此一来,在离群点区分中,中的某一项会挨近 1,而这样的图区分显着不能使得是一个较小的值,故到达考虑大局信息而摒弃区别离群点的意图。这样的操作相似于机器学习中特征的规范化(normalization)操作,故称为normalized cut。N-cut不只能够处理二类语义切割,并且将二分图扩展为 K 路( -way)图区分即可完结多语义的图画语义切割,如下图例。

Grab cut 是微软剑桥研讨院于 2004 年提出的闻名交互式图画语义切割办法。与 N-cut 相同,grab cut 相同也是依据图区分,不过 grab cut 是其改善版别,能够看作迭代式的语义切割算法。Grab cut 使用了图画中的纹路(色彩)信息和鸿沟(反差)信息,只需少数的用户交互操作即可得到比较好的前后布景切割成果。

在 grab cut 中,RGB 图画的远景和布景别离用一个高斯混合模型(gaussian mixture model, GMM)来建模。两个 GMM 别离用以描写某像素归于远景或布景的概率,每个 GMM 高斯部件(gaussian component)个数一般设为 。

接下来,使用吉布斯能量方程(gibbs energy function)对整张图画进行大局描写,然后迭代求取使得能量方程到达最优值的参数作为两个 GMM 的最优参数。GMM 确认后,某像素归于远景或布景的概率就随之确认下来。

在与用户交互的进程中,grab cut 供给两种交互办法:一种以围住框(bounding box)为辅佐信息;另一种以涂写的线条(scribbled line)作为辅佐信息。以下图为例,用户在开端时供给一个围住框,grab cut 默许的以为框中像素中包括首要物体/远景,尔后经过迭代图区分求解,即可回来扣出的远景成果,能够发现即便是关于布景略微杂乱一些的图画,grab cut 仍有不俗体现。

不过,在处理下图时,grab cut 的切割作用则不能令人满足。此刻,需求额定人为的供给更强的辅佐信息:用赤色线条/点标明布景区域,一起用白色线条标明远景区域。在此基础上,再次运转 grab cut 算法求取最优解即可得到较为满足的语义切割成果。grab cut 虽作用优秀,但缺陷也十分显着,一是仅能处理二类语义切割问题,二是需求人为干涉而不能做到彻底自动化。

DL 年代的语义切割

其实咱们不难看出,前 DL 年代的语义切割作业多是依据图画像素本身的低阶视觉信息(low-level visual cues)来进行图画切割。因为这样的办法没有算法练习阶段,因而往往核算杂乱度不高,可是在较困难的切割使命上(假如不供给人为的辅佐信息),其切割作用并不能令人满足。

在核算机视觉步入深度学习年代之后,语义切割相同也进入了全新的发展阶段,以全卷积神经网络(fully convolutional networks,FCN)为代表的一系列依据卷积神经网络「练习」的语义切割办法相继提出,屡次改写图画语义切割精度。下面就介绍三种在 DL年代语义切割范畴的代表性做法。

全卷积神经网络

全卷积神经网络 FCN 能够说是深度学习在图画语义切割使命上的开创性作业,出自 UC Berkeley 的 Trevor Darrell 组,发表于核算机视觉范畴尖端会议 CVPR 2015,并荣获best paper honorable mention。

FCN 的思维很直观,即直接进行像素等级端到端(end-to-end)的语义切割,它能够依据干流的深度卷积神经网络模型(CNN)来完成。正所谓「全卷积神经网络」,在FCN中,传统的全衔接层 fc6 和 fc7 均是由卷积层完成,而终究的 fc8 层则被替代为一个 21 通道(channel)的 1×1 卷积层,作为网络的终究输出。之所以有 21 个通道是因为 PASCAL VOC 的数据中包括 21 个类别(20个object类别和一个「background」类别)。

下图为 FCN 的网络结构,若原图为 H×W×3,在经过若干堆叠的卷积和池化层操作后能够得到原图对应的呼应张量(activation tensor) ,其间, 为第i层的通道数。能够发现,因为池化层的下采样作用,使得呼应张量的长和宽远小于原图的长和宽,这便给像素等级的直接练习带来问题。

为了处理下采样带来的问题,FCN 使用双线性插值将呼应张亮的长宽上采样到原图巨细,别的为了更好的猜测图画中的细节部分,FCN 还将网络中浅层的呼应也考虑进来。详细来说,便是将 Pool4 和 Pool3 的呼应也拿来,别离作为模型 FCN-16s 和 FCN-8s 的输出,与本来 FCN-32s 的输出结合在一起做终究的语义切割猜测(如下图所示)。

下图是不同层作为输出的语义切割成果,能够显着看出,因为池化层的下采样倍数的不同导致不同的语义切割精密程度。如 FCN-32s,因为是 FCN 的终究一层卷积和池化的输出,该模型的下采样倍数最高,其对应的语义切割成果最为大略;而 FCN-8s 则因下采样倍数较小能够获得较为精密的切割成果。

Dilated Convolutions

FCN 的一个不足之处在于,因为池化层的存在,呼应张量的巨细(长和宽)越来越小,可是FCN的规划初衷则需求和输入巨细共同的输出,因而 FCN 做了上采样。可是上采样并不能将丢掉的信息悉数无损地找回来。

对此,dilated convolution 是一种很好的处理方案——已然池化的下采样操作会带来信息丢失,那么就把池化层去掉。可是池化层去掉随之带来的是网络各层的感触野(receptive field)变小,这样会下降整个模型的猜测精度。Dilated convolution 的首要奉献便是,如安在去掉池化下采样操作的一起,而不下降网络的感触野。

以 3×3 的卷积核为例,传统卷积核在做卷积操作时,是将卷积核与输入张量中「接连」的 3×3 的 patch 逐点相乘再求和(如下图a,赤色圆点为卷积核对应的输入「像素」,绿色为其在原输入中的感知野)。而 dilated convolution 中的卷积核则是将输入张量的 3×3 patch 隔必定的像素进行卷积运算。

如下图 b 所示,在去掉一层池化层后,需求在去掉的池化层后将传统卷积层换做一个「dilation=2」的 dilated convolution 层,此刻卷积核将输入张量每隔一个「像素」的方位作为输入 patch 进行卷积核算,能够发现这时对应到原输入的感知野现已扩展(dilate)为 ;同理,假如再去掉一个池化层,就要将其之后的卷积层换成「dilation=4」的 dilated convolution 层,如图 c 所示。这样一来,即便去掉池化层也能保证网络的感触野,然后保证图画语义切割的精度。

从下面的几个图画语义切割作用图能够看出,在使用了 dilated convolution 这一技能后能够大幅进步语义类别的辨识度以及切割细节的精密度。

以条件随机场为代表的后处理操作

当下许多以深度学习为结构的图画语义切割作业都是用了条件随机场(conditional random field,CRF)作为终究的后处理操作来对语义猜测成果进行优化。

一般来讲,CRF 将图画中每个像素点所属的类别都看作一个变量 ,然后考虑恣意两个变量之间的联络,树立一个彻底图(如下图所示)。

在全链接的 CRF 模型中,对应的能量函数为:

其间是一元项,表明像素对应的语义类别,其类别能够由 FCN 或许其他语义切割模型的猜测成果得到;而第二项为二元项,二元项可将像素之间的语义联络/联络考虑进去。例如,「天空」和「鸟」这样的像素在物理空间是相邻的概率,应该要比「天空」和「鱼」这样像素的相邻概率大。终究经过对 CRF 能量函数的优化求解,得到对 FCN 的图画语义猜测成果进行优化,得到终究的语义切割成果。

值得一提的是,现已有作业[5]将本来与深度模型练习割裂开的 CRF 进程嵌入到神经网络内部,即,将 FCN+CRF 的进程整合到一个端到端的体系中,这样做的优点是 CRF 终究猜测成果的能量函数能够直接用来辅导 FCN 模型参数的练习,而获得更好的图画语义切割成果。

展望

俗话说,「没有免费的午饭」(no free lunch)。依据深度学习的图画语义切割技能尽管能够获得比较传统办法日新月异的切割作用,可是其对数据标明的要求过高:不只需求海量图画数据,一起这些图画还需供给准确到像素等级的符号信息(semantic labels)。因而,越来越多的研讨者开端将注意力转移到弱监督(weakly-supervised)条件下的图画语义切割问题上。在这类问题中,图画仅需供给图画等级标明(如,有「人」,有「车」,无「电视」)而不需求贵重的像素等级信息即可获得与现有办法可比的语义切割精度。

别的,示例等级(instance level)的图画语义切割问题也相同抢手。该类问题不只需求对不同语义物体进行图画切割,一起还要求对同一语义的不同个别进行切割(例如需求对图中呈现的九把椅子的像素用不同色彩别离标明出来)。

终究,依据视频的远景/物体切割(video segmentation)也是往后核算机视觉语义切割范畴的新抢手之一,这一设定其实愈加贴合无人驾驶体系的实在使用环境。

按:本文作者魏秀参,谢晨伟南京大学核算机系机器学习与数据发掘所(LAMDA),研讨方向为核算机视觉和机器学习。

References:

[1] Jianbo Shi and Jitendra Malik. Normalized Cuts and Image Segmentation, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 22, No. 8, 2000.

[2] Carsten Rother, Vladimir Kolmogorov and Andrew Blake. GrabCut–Interactive Foreground Extraction using Iterated Graph Cuts, ACM Transactions on Graphics, 2004.

[3] Jonathan Long, Evan Shelhamer and Trevor Darrell. Fully Convolutional Networks for Semantic Segmentation. IEEE Conference on Computer Vision and Pattern Recognition, 2015.

[4] Fisher Yu and Vladlen Koltun. Multi-scale Context Aggregation by Dilated Convolutions. International Conference on Representation Learning, 2016.

[5] Shuai Zheng, Sadeep Jayasumana, Bernardino Romera-Paredes, Vibhav Vineet, Zhizhong Su, Dalong Du, Chang Huang and Philip H. S. Torr. Conditional Random Fields as Recurrent Neural Networks. International Conference on Computer Vision, 2015.

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/169347.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部