玻璃检测|送餐送货机器人、自动驾驶车,再也不担心撞上玻璃橱窗了


萧箫 发自 凹非寺
量子位 报道
玻璃检测|送餐送货机器人、自动驾驶车,再也不担心撞上玻璃橱窗了
本文插图

自动送货车撞上玻璃、扫地机器人撞碎玻璃伤行人……如今这些事件也即将成为过去式 。
大连理工大学等单位研发了一个玻璃检测神经网络 , 能够利用AI在真实环境下检测玻璃 。
玻璃检测|送餐送货机器人、自动驾驶车,再也不担心撞上玻璃橱窗了
本文插图

△ 图左为目标场景 , 图右黄色部分为玻璃检测
从图中可见 , 神经网络能很好地将玻璃从实际场景中分割出来 。
但事实上 , 玻璃检测绝非想象中那般简单 , 不仅因为它几乎是透明的 , 而且还具有反射性 。
更何况 , 玻璃并没有固定的形状 , 无法根据外形判定某一区域是否存在玻璃 。
既然如此 , 为什么人眼能这么准确地判定出玻璃的存在呢?
全新的神经网络GDNet
研究发现 , 人眼不仅能通过玻璃内外部颜色的差异来判断玻璃的存在 , 还能根据反射产生的光斑或重影发现玻璃 。
这给了研究者们很大的启发 , 并最终设计了名为大视场上下文特征融合(Large-field Contextual Feature Integration, 下简称LCFI)的模块 。
玻璃检测|送餐送货机器人、自动驾驶车,再也不担心撞上玻璃橱窗了
本文插图

△ LCFI模块构造
LCFI模块用来同时提取高级语义特征和颜色纹理等低级特征两种上下文特征 , 用于检测真实场景中玻璃的存在 。
为了提取大量上下文信息 , 通常的做法是采用大卷积核或进行扩张卷积 , 但前者会导致大计算量 , 后者则会稀疏采样 。
而且 , 这两种方法并非最优 。
玻璃检测|送餐送货机器人、自动驾驶车,再也不担心撞上玻璃橱窗了
本文插图

△ 实验对比效果
研究发现 , 采用非局部运算(non-local)可以同时解决这两个问题 , 便有了LCFI模块 。
LCFI模块采用空间可分离卷积 , 从水平和垂直两个维度分别对图像进行卷积 。
由于图像中玻璃区域的信息非常复杂 , 且与非玻璃区域有一定的相似度 , 为了消除这种歧义 , 模块将再进行一遍卷积 , 不过这次是先从垂直、再从水平维度提取互补的上下文特征 。
最后 , 将提取的特征进行融合 。
而这个LCFI模块 , 是玻璃检测神经网络GDNet中最核心的部分 。
玻璃检测|送餐送货机器人、自动驾驶车,再也不担心撞上玻璃橱窗了
本文插图

△ GDNet网络示意图
GDNet网络整体工作原理如下:
第一步 , 使用预训练的ResNeXt101网络用于多级特征提取 , 目的是获得各种级别的特征 。
第二步 , 在网络最后嵌入四层LCFI模块 , 目的是进行各级别大视场内上下文的特征学习 。
第三步 , 将其中三个LCFI模块的输出通过注意模块(Attention Module)进行连接和融合 , 目的是生成大视场内上下文的高级特征 。
第四步 , 从这些高级特征中学习Attention Map , 目的是引导大视场内上下文的低级特征(例如第一个LCFI模块的输出) , 以将更多注意力集中在玻璃区域 。
最后 , 通过级联和注意力机制 , 融合高级与低级特征 , 目的是生成最终的玻璃特征图 。
GDNet的创新之处在于 , 它设计的LCFI模块采用空间可分离卷积 , 更好地获取了图像中有关玻璃的特征 。
虽然此前也有关于玻璃的目标检测研究 , 但基本集中在玻璃杯、器皿这样的小型玻璃物体上 , 检测方法也多从物体的形状入手 。
这次研究通过玻璃本身的特征 , 设计了具普适性的玻璃检测网络 , 能有效防止自动驾驶车辆对玻璃幕墙或玻璃门进行误判 , 避免发生碰撞事故 。
除此之外 , 对于机器学习中的深度预测、场景理解和去反射等技术任务 , 也有着重要的意义 。
玻璃检测|送餐送货机器人、自动驾驶车,再也不担心撞上玻璃橱窗了
本文插图

△ 从上到下分别是深度预测、场景理解和去反射
当然 , 真正要让GDNet在实际玻璃检测中发挥能力 , 离不开数据集的制作 。
为了使GDNet在实际应用中能发挥出更好的效果 , 研究者们完成了世界上第一个大规模玻璃检测数据集GDD 。
首个大规模玻璃检测数据集GDD
在玻璃检测数据集(Glass Detection Dataset, GDD)中 , 共有3916张带玻璃的图片 , 其中2980张被随机抽出 , 用于网络训练 , 剩余936张作为测试集 。
这三千多张玻璃图片多来自浴室、办公室、超市等地方 , 其中玻璃幕墙占多 , 其次是玻璃展示橱窗、玻璃门、陈列柜、窗户和玻璃护栏 。
经统计 , 玻璃通常占据整张图像20%~80%的大小 , 且整体分布倾向于图像中央 , 这是由玻璃使用特性所决定的 。
玻璃检测|送餐送货机器人、自动驾驶车,再也不担心撞上玻璃橱窗了
本文插图

△ GDD数据集部分图像展示
上图为数据集中部分图像的展示 , 可以看见 , 图像对玻璃和非玻璃部分进行了分割 , 白色区域为玻璃所在区域 。
【玻璃检测|送餐送货机器人、自动驾驶车,再也不担心撞上玻璃橱窗了】从图例中就能看见 , 无论是玻璃上贴着的标签、刮蹭的污渍 , 还是玻璃上透射和反射的图像 , 都可能会在训练时对网络产生影响 。
与此同时 , 数据集中也存在着只占图像20%不到的边角玻璃、或是几乎充斥整个图像的大玻璃块 , 目的在于增加图像的随机性 , 使得神经网络具有更好的检测效果 。
检测效果
事实上 , 测试也证明 , 无论是实际检测效果、还是从数据分析来看 , 采用GDD数据集训练后的GDNet都达到了目前研究中玻璃检测网络的最好效果 。 (下图中 , 所展示网络均已用GDD数据集进行训练)
从下图来看 , 相较于其他较前沿的神经网络 , GDNet对玻璃区域的检测准确度明显更高 。
玻璃检测|送餐送货机器人、自动驾驶车,再也不担心撞上玻璃橱窗了
本文插图

△ 与最右边的真值相比 , 目前最前沿的部分网络和GDNet对玻璃的检测效果
在准确度上 , 相较于MirrorNet的85.07%和EGNet的85.04% , GDNet达到了87.63%的IoU 。 (IoU:真值与预测值交集/真值与预测值并集)
相比之下 , 其平均绝对误差MAE则达到了0.063 。
玻璃检测|送餐送货机器人、自动驾驶车,再也不担心撞上玻璃橱窗了
本文插图

△ 与其他神经网络相比 , GDNet的各项指标均处前列
可以想见 , 在这样的效果下 , GDNet未来在玻璃检测方向上还会有更进一步的发展及应用 。
作者介绍
玻璃检测|送餐送货机器人、自动驾驶车,再也不担心撞上玻璃橱窗了
本文插图

梅海洋 , 论文第一作者 , 目前在大连理工大学计算机科学与技术学院的攻读博士 , 主要研究方向为图像处理、计算机视觉与深度学习 。


    推荐阅读