ENet —一种针对实时语义分割的深度神经架构

ENet —一种针对实时语义分割的深度神经架构

本文为 AI 研习社编译的技术博客,原标题 :

ENet — A Deep Neural Architecture for Real-Time Semantic Segmentation

作者 | Arunava

翻译 | callofduty890              

校对 | 酱番梨        审核 | Pita       整理 | 立鱼王

原文链接:

https://towardsdatascience.com/enet-a-deep-neural-architecture-for-real-time-semantic-segmentation-2baa59cf97e9

ENet —一种针对实时语义分割的深度神经架构

Fig 1. A conversation between a semantic segmented guy and a toon

这是该论文的论文摘要:

ENet:用于实时语义分割的深度神经网络体系结构

作者:Adam Paszke

论文:https://arxiv.org/abs/1606.02147

  概论

ENet(高效神经网络)提供了实时按像素进行语义分割的能力。 ENet的速度提高了18倍,FLOP要求减少了75倍,参数减少了79倍,并且为现有模型提供了类似或更好的精度。 在CamVid,CityScapes和SUN数据集上测试。

ENet —一种针对实时语义分割的深度神经架构

ENet —一种针对实时语义分割的深度神经架构

  方法:

ENet —一种针对实时语义分割的深度神经架构

图3. ENet架构

以上是完整的网络架构。

它分为几个阶段,由表格中的水平线和每个块名称后的第一个数字突出显示。
报告输出尺寸为输入图像分辨率512 * 512

ENet —一种针对实时语义分割的深度神经架构

图4. ENet的每个模块都有详细说明

视觉表现:

– 初始模块是(a)中所示的模块
– 并且瓶颈模块显示在(b)

每个瓶颈模块包括:

– 1×1投影,降低了维度
– 主卷积层(conv)( – 常规,扩张或完整)(3×3)
– 1×1扩展
– 并且它们在所有卷积层之间放置批量标准化和PReLU

如果瓶颈模块是下采样,则将最大池化层添加到主分支。 此外,第一个1×1投影被替换为2×2卷积,stride = 2。

它们将激活无填充以匹配要素图的数量。
conv有时是不对称卷积,即5 * 1和1 * 5卷积的序列。

对于正则化器,他们使用Spatial Dropout:
– 在瓶颈2.0之前p = 0.01
– 完成之后p = 0.1

所以,

  1. 阶段1,2,3-编码器 – 由5个瓶颈模块组成(除了阶段3没有下采样)。

  2. 阶段4,5-解码器 – 阶段4包含3个瓶颈,阶段5包含2个瓶颈模块

  3. 接下来是一个fullconv,它以尺寸输出最终输出 – C * 512 * 512,其中C是滤波器的数量。

还有一些事实:

– 他们没有在任何预测中使用偏见项
– 在每个卷积层和激活之间,它们使用批量标准化
– 在解码器中,MaxPooling被MaxUnpooling取代
– 在解码器中,Padding被替换为Spatial Convolution而没有偏差
– 在最后一个(5.0)上采样模块中不使用池化索引
– 网络的最后一个模块是一个裸完全卷积,它占据了处理时间的大部分解码器。
– 每个侧支有一个空间丢失,第1阶段p = 0.01,之后阶段p = 0.1。

  结果

对ENet的表现进行了基准测试

– CamVid(道路场景)
– CityScapes(道路场景)
– SUN RGB-D(室内场景)

使用SegNet [2]作为基线,因为它是最快的分割模型之一。 使用cuDNN后端使用Torch7库。

使用NVIDIA Titan X GPU以及NVIDIA TX1嵌入式系统模块记录推理速度。 输入图像大小为640×360,速度超过10fps。

ENet —一种针对实时语义分割的深度神经架构      图5.使用SegNet作为基线的两个不同GPU的推理时间比较

ENet —一种针对实时语义分割的深度神经架构图6. SegNet和ENet的硬件要求

  基准

使用  Adam.ENet非常快速地融合,在每个数据集上,使用4个Titan X GPU,训练只需要3-6个小时。

分两个阶段进行:

– 首先,他们训练编码器对输入图像的下采样区域进行分类。

– 然后附加解码器并训练网络以执行上采样和像素分类。

学习率 – 5e-4

L2重量衰减为2e-4

批量大小为10

自定义类权重方案定义为

ENet —一种针对实时语义分割的深度神经架构图7所示。自定义类权重方案的公式

其中c = 1.02
并且类权重被限制在[1,50]的区间内

ENet —一种针对实时语义分割的深度神经架构 图8. CityScapes数据集的性能

ENet —一种针对实时语义分割的深度神经架构图9. CamVid数据集的性能

  参考:

A. Paszke, A. Chaurasia, S. Kim, and E. Culurciello. Enet: A deep neural network architecture for real-time semantic segmentation. arXiv preprint arXiv:1606.02147, 2016.

V. Badrinarayanan, A. Kendall, and R. Cipolla, “Segnet: A deep convolutional encoder-decoder architecture for image segmentation,” arXiv preprint arXiv:1511.00561, 2015.

我最近还转载了这篇论文,可以在这里找到:

https://github.com/iArunava/ENet-Real-Time-Semantic-Segmentation

想要继续查看该篇文章相关链接和参考文献?

点击【ENet——一种针对实时语义分割的深度神经架构】或长按下方地址访问:

https://ai.yanxishe.com/page/TextTranslation/1468

AI研习社今日推荐:雷锋网雷锋网雷锋网(公众号:雷锋网)

耐基梅隆大学 2019 春季《神经网络自然语言处理》是CMU语言技术学院和计算机学院联合开课,主要内容是教学生如何用神经网络做自然语言处理。神经网络对于语言建模任务而言,可以称得上是提供了一种强大的新工具,与此同时,神经网络能够改进诸多任务中的最新技术,将过去不容易解决的问题变得轻松简单。

加入小组免费观看视频:https://ai.yanxishe.com/page/groupDetail/33

ENet —一种针对实时语义分割的深度神经架构


ENet —一种针对实时语义分割的深度神经架构

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/134975.html

(0)
上一篇 2021年9月1日
下一篇 2021年9月1日

相关推荐

发表回复

登录后才能评论