Deeeplearning模型-ImageSegmentation-DeepLab
条评论DeepLabv1是在2015年发表,在此之前,图像分类、目标检测、语义分割等都基于DCNN模型发展,但DCNN会存在重复池化导致分辨率下降;位置信息丢失,难以恢复,分割结果粗糙,丢失细节等问题;故DeepLab系列对DCNN等问题进行改进。
DeepLab v1
论文:Semantic image segmentation with deep convolutional nets and fully connected CRFs
DeepLab v2
DeepLab v3
论文:Rethinking Atrous Convolution for SemanticImage Segmentation
DeepLab v3+
论文:Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation
系列论文的主线思路
DeepLab系列一直在解决同一个问题:卷积网络经过多次池化后,语义信息变强了,但特征图分辨率下降,边界会变糊,目标尺度变化大时也不容易处理。
所以DeepLab的演进路线,可以概括成三件事:尽量少丢空间信息、尽量看更大上下文、尽量把边界修得更准。
DeepLab v1 解读
v1的关键想法是把深层卷积网络和全连接CRF结合起来。前者负责给出较强的语义分割结果,后者负责把边界细节再修一遍。
简单理解,v1是在说:CNN已经足够会“认东西”了,但还不够会“抠边界”,所以需要CRF来补这一刀。
DeepLab v2 解读
v2进一步把空洞卷积和ASPP引入进来。空洞卷积的意义在于,不额外增加太多参数,就能扩大感受野;ASPP则通过多种膨胀率并行卷积,让模型同时看到不同尺度的上下文。
这一版的价值在于,它不只是“后处理补边界”,而是开始从网络结构本身增强多尺度语义建模能力。
DeepLab v3 解读
v3把对空洞卷积和ASPP的使用进一步系统化,并加入图像级全局特征,让模型在不依赖DenseCRF后处理的情况下,也能得到很强的分割结果。
可以把它理解成:DeepLab到了这一版,重点已经从“后处理修补”转向“网络内部直接学到更好的上下文表达”。
DeepLab v3+ 解读
v3+在v3基础上又引入了encoder-decoder思想,并使用atrous separable convolution提升效率。它在保留大感受野和多尺度上下文的同时,进一步增强了对边界和细节区域的恢复能力。
这也是为什么很多人把v3+看成DeepLab系列里兼顾效果、结构完整性和工程可用性的一版。
简单理解与局限
我对DeepLab系列的理解是:它几乎定义了现代语义分割里“空洞卷积 + 多尺度上下文 + 边界恢复”这一整套思路。
它的局限在于,空洞卷积和多分支结构会带来一定计算开销,对小目标和极复杂场景也并非总是最优,所以后来很多工作继续在解码器、多尺度融合和Transformer方向上迭代。