社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

【深度学习】AMFNet: 用于道路和负障碍物分割的自适应掩码融合网络

机器学习初学者 • 1 年前 • 480 次点击  



导读

今天带来的解读文章是《Adaptive-Mask Fusion Network for Segmentation of Drivable Road and Negative Obstacle With Untrustworthy Features》

作者:Zhen Feng,Yuchao Feng,Yanning Guo,Yuxiang Sun

单位:香港理工大学&哈尔滨工业大学



代码和数据集:https://github.com/labsun/AMFNet


摘要— 可驾驶道路和负障碍物的分割对于自动驾驶汽车的安全驾驶至关重要。目前,已经提出了许多多模态融合方法来提高分割的准确性,例如融合RGB和深度图像。然而,我们发现当融合具有不可信特征的两种数据模态时,多模态网络的性能可能会下降,甚至低于使用单一模态的性能。在本文中,不可信特征指的是从深度图像中具有无效深度数据(即0像素值)的区域提取的特征(例如,超出深度测量范围的远处物体)。不可信特征会混淆分割结果,从而导致较差的结果。为了提供解决此问题的解决方案,我们提出了自适应掩码融合网络(AMFNet),通过在融合模块中引入自适应权重掩码来融合来自RGB和深度图像的具有不一致性的特征。此外,我们基于NPO数据集发布了一个大规模RGB-深度数据集,其中包含可驾驶道路和负障碍物的手动标记地面真实值。大量的实验结果表明,与其他网络相比,我们的网络实现了最先进的性能。


背景

我们提出了一种新颖的自适应掩码融合网络(AMFNet),其中包括自适应掩码融合(AMF)模块。为此,我们从深度图像中生成掩码图像,以区分可信区域和不可信区域。AMF模块用于生成RGB和深度特征图的自适应权重掩码,以减少融合过程中不可信特征引起的影响。此外,我们发布了一个基于NPO数据集的大规模RGB-深度(RGB-D)数据集,其中包含可驾驶道路和负障碍物的手动标记地面真实值。我们的贡献总结如下:

l提出了自适应掩码融合(AMF)模块,以减少特征融合过程中不可信特征的影响。

l提出了一种名为AMFNet的新型融合网络,其中包含AMF模块,用于可驾驶道路和负障碍物的分割。

l发布了一个基于NPO数据集的大规模RGB-D数据集。我们的数据集包含8,752个RGBD图像,具有可驾驶道路和负障碍物的手动标记地面真实值。


图1:我们提出的AMFNet的整体架构。我们的AMFNet采用了两编码器一解码器结构:五阶RGB编码器、五阶深度编码器和五阶解码器。编码器采用自BotNet-50[20]。我们提出的自适应掩码融合(AMF)模块放置在RGB编码器的每个阶段后面。掩码是通过将深度图像的像素值0进行阈值处理生成的。通过最近邻方法下采样生成与RGB编码器5个阶段的输出具有相同分辨率的五个不同掩码(即 M1、M2 M3、M4 、 和M5 )。图片最佳以彩色查看。


图2:AMF模块的结构。AMF和自适应掩码生成(AMG)模块具有相同的三个输入:RGB特征图、深度特征图和掩码。AMG的输出是RGB特征图和深度特征图的两个自适应权重掩码。


提出的方法


A. 整体架构

图II显示了我们提出的AMFNet的整体架构。AMFNet采用的结构包括一个五阶段的RGB编码器,一个五阶段的深度编码器和一个五阶段的解码器。RGB编码器和深度编码器是从BotNet-50 [20]中借用的。深度图像用于生成阈值为0的掩码。当深度图像中的像素值大于0时,掩码中的像素值为1。我们认为深度图像中的0值是不可信的,因为真实环境点与摄像机之间的距离不是0。掩码是一张地图,用于区分可信像素和不可信像素。掩码被降采样以生成五个不同的掩码(即 、 、 、 和 ),它们的分辨率与RGB编码器的5个阶段的输出相同。掩码被馈送到第n个AMF模块中,其中n∈[0,5]。RGB编码器和深度编码器相同阶段的输出被馈送到相同级别的AMF模块中。第n个AMF模块的输出被馈送到RGB编码器的第(n+1)个阶段,并通过逐元素相加融合到解码器的第(n+1)个阶段的输出中。


B. AMF 模块

AMF 模块的结构如图2所示。第n个 AMF 模块有三个输入:RGB 编码器第n个阶段的输出(RGB 特征图)、深度编码器第n个阶段的输出(深度特征图)和第n个掩码 。在每个 AMF 模块中,首先将掩码馈送到自适应掩码生成(AMG)模块中,以生成 RGB 特征图和深度特征图的两个自适应权重掩码。其次,自适应权重掩码通过逐元素相乘与 RGB 特征图和深度特征图融合,然后通过逐元素相加融合以生成 RGB 特征图和深度特征图的融合结果。最后,通过通道注意力块和空间注意力块调整 RGB 特征图和深度特征图的融合结果的权重。在通道注意力块中,融合结果依次通过自适应平均池化层、全连接(FC)-批归一化(BN)-ReLU层、FC 层和 Sigmoid 层,生成每个通道的权重。每个通道的权重通过逐元素相乘融合到融合结果中,以生成通过逐元素相乘调整的结果。在空间注意力块中,通过卷积层和 Sigmoid 层依次传递调整后的结果,生成空间权重。空间权重通过逐元素相乘融合到调整后的结果中,以生成 AMF 模块的输出。


AMF 模块的主要目的是根据掩码将特征图分为可信区域和不可信区域。在可信区域,RGB 特征和可信的深度特征通过自适应权重进行融合。在不可信区域,深度图像的不可信特征被丢弃,RGB 特征直接用作融合结果。AMG 模块被设计用于实现这一目的。AMG 模块有三个输入:掩码、RGB 特征图和深度特征图。这三个输入具有相同的分辨率。首先,RGB 特征图和深度特征图被连接在一起。其次,连接后的特征图通过自适应平均池化层、两个 FC-BN-ReLU 层和一个 FC-BN-Softmax 层。FC-BN-Softmax 层的输出是 RGB 特征图和深度特征图的两个权重。然后,深度特征图的权重通过逐元素相乘与掩码融合,生成深度特征图的掩码。最后,深度特征图的掩码从全为一的矩阵中减去,生成 RGB 特征图的掩码。


C.解码器

解码器由具有相同结构的五个阶段组成。图II显示了一个阶段的结构。一个阶段的输入首先被馈送到一个双重残差块。其次,双重残差块的输出被馈送到通道注意力块,以调整每个通道的权重。最后,使用一个反卷积-BN-ReLU(CBR)层来生成该阶段的输出。


双重残差块中有四个CBR层。输入被馈送到第一个CBR层和第四个CBR层。第一个CBR层的输出被馈送到第二个CBR层并与第二个CBR层的输出融合。融合结果被馈送到第三个CBR层。第三个CBR层和第四个CBR层的输出被融合在一起,作为双重残差块的输出。


实验结果与讨论


A.数据集与实验

我们基于NPO数据集发布了一个用于可行驶道路和负障碍物分割的大规模RGB-D数据集。NPO数据集的原始图像是使用安装在车辆上的ZED立体摄像机记录的。NPO数据集的原始数据包括20个图像序列。我们手动标记了一些图像序列中每5张图像,其中包括近44,000对图像(左图像、右图像和深度图像),分辨率为1,242×2,208。因此,我们的数据集中共标记了8,752张图像。为了减轻标注任务,我们直接使用NPO数据集中的负障碍物掩码作为我们标注的掩码。我们将我们的数据集命名为可行驶道路和负障碍物(DRNO)数据集。我们的数据集包含各种光照条件、天气条件和场景,如正常光照、大面积阴影、多雪、阳光明媚、多云、城市场景和乡村场景。数据集中还包括各种道路表面类型,如水、雪和普通道路表面。


据我们所知,我们的DRNO数据集是用于可行驶道路和负障碍物语义分割的最大数据集。我们的数据集示例如图3所示。在我们的DRNO数据集中,有8,752张图像包括可行驶道路,748张图像包括负障碍物。


图3:我们的DRNO数据集中的样本图像。我们使用jet颜色映射可视化深度图像。深度数值从红色到蓝色递增。紫色和红色分别代表可行驶道路和负障碍物。最佳效果以彩色显示。


我们的AMFNet是使用PyTorch实现的。网络在配备NVIDIA RTX 3090(24 GB RAM)显卡的计算机上进行训练和测试。AMFNet的前四个编码器阶段的参数使用PyTorch的预训练权重进行初始化。我们使用随机梯度下降(SGD)优化器来训练网络。初始学习率设置为0.01,动量设置为0.9,衰减策略设置为0.95。


B.消融研究

表格I:消融研究的结果(%)。'✓' 表示AMF模块放置在RGB编码器的第n阶段。'−' 表示RGB编码器和深度编码器的第n阶段的输出通过逐元素相加进行融合。最佳结果以粗体字突出显示。


结果显示在表I中。从结果中,我们可以看出,没有任何AMF模块的变体获得了较差的结果。比较变体A和变体F,我们可以发现,无论AMF放置在何处,它都可以改善网络的性能。比较四个变体G、H、I和J,一个变体中有更多的AMF模块会导致更好的性能。这表明我们提出的AMF模块可以在融合过程中去除不可信的特征,从而提高融合性能。根据实验结果,我们在AMFNet的RGB编码器的每个阶段后面放置了五个AMF模块。


C.对比研究

表格 II:在我们的DRNO数据集的测试集上的对比结果(%)。'模态' 表示网络训练的模态类型。'年份' 表示网络发布的年份。'RGB和深度' 表示网络使用RGB深度融合模态进行训练和测试。结果表明了我们的AMFNet的卓越性能。最佳结果以粗体字突出显示。

定量结果:所有网络的结果显示在表II中。比较所有结果,我们的网络在所有指标方面几乎都取得了最佳结果。这说明了我们的AMFNet的卓越性。

图4:使用最佳mIoU度量的前3个多模态融合网络的样本定性演示。从第4行到第6行分别是我们的AMFNet、MAFNet [5]和RoadSeg [7]的演示。红、黄、绿分别代表阴性障碍、阴性障碍的假阳性、阴性障碍的假阴性。紫色、蓝色、棕色分别代表可驾驶道路、可驾驶道路的假阳性和可驾驶道路的假阴性。这个数字最好用颜色来观看。


图4显示了具有最佳mIoU指标的前三个多模态融合网络(即我们的AMFNet、MAFNet和RoadSeg)的一些样本定性结果。从第五列的结果中,我们可以看到我们的AMFNet正确地分割了大多数负障碍物区域。这些结果说明了AMFNet的卓越性。


往期精彩回顾




  • 交流群

欢迎加入机器学习爱好者微信群一起和同行交流,目前有机器学习交流群、博士群、博士申报交流、CV、NLP等微信群,请扫描下面的微信号加群,备注:”昵称-学校/公司-研究方向“,例如:”张小明-浙大-CV“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~(也可以加入机器学习交流qq群772479961


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/164979
 
480 次点击