图像分割基础及经典网络结构

目录

一、图像分割简介

(一)图像分割类型

1. 根据不同的任务和数据类型:

(二)语义分割性能指标:

二、FCN网络简介

(一)FCN网络如何工作?

(二)feature map的上采样(Upsample)操作:

(三)什么是FCN?

(四)FCN的优缺点

 三、U-Net模型

(一)什么是U-Net?

       1.  U-Net网络的结构​

        2. 具体操作和实现原理

(二)如何实现一个U-Net网络

        1. 构建U-Net网络的主要operations:

四、PSPNet模型

(一)什么是PSP网络(backbone采用Dilated ResNet)

        1. 基础知识

        2. PSP网络的基本结构:Pyramid Scene Parsing Network

        3. PSP模块的具体形式

        4. PSP网络搭建:

(二)什么是空洞卷积(Dilated Conv)   

五、DeepLab系列

(一)DeepLab V1

1. DeepLab V1网络结构

(二)DeepLab V2

1. DeepLab V2 的网络结构​

2. 什么是ASPPmodule?

(三)DeepLab V3

1. DeepLab V3网络结构​

2. ASPP module


一、图像分割简介

(一)图像分割类型

  (23条消息) 图像分割汇总_好啊啊啊啊的博客-CSDN博客

1. 根据不同的任务和数据类型:

  1. 人像分割(头发分割、人脸分割、背景分割)
  2. 自动驾驶(行人、车辆分割,车道线检测)
  3. 医学图像(病理、CT、MRl )
  4. 工业质检、分拣机器人

语义分割算法的基本流程:

1. 输入:图像(RGB)

2. 算法:深度学习模型

3. 输出:分类结果(与输入大小—致的单通道图)

4. 训练过程∶

  • 输入∶image + label
  • 前向︰out = model ( image )
  • -计算损失:loss = loss_func ( out, label )
  • 反向︰loss.backward()
  • 更新权重:optimizer.minimize(loss)

(二)语义分割性能指标:

  • MIOU:mean intersection-over-union,可有多种理解,如:分割每一类别的交并比
  • MACC:mean accuracy,即prediction和ground truth对应位置的分类准确率


二、FCN网络简介

paper:

Fully Convolutional Networks for Semantic Segmentation (cv-foundation.org)

(23条消息) 【论文翻译】Fully Convolutional Networks for Semantic Segmentation_风信子的博客-CSDN博客

(一)FCN网络如何工作?

        1. FCN分割网络的基本概念:FCN=fully convolutional networks,简而言之全卷积没有FC(fully connected layer),由上知:语义分割~=像素级分类(输入:RGB图像,输出:原图中每个像素对应的类别,即输入输出size不变),我们使用传统的CNN来进行图像分类,那FCN和CNN如何联系起来呢?答案:替换FC,换成Conv。

        2. 如何理解FC层:(此时指已替换的1X1 Conv),只改变channel的大小,即N x C' x W x H,此时的channel指是你总共的类别数,比如你的类别总共有59个,则:channel=59。再往后通过一个classifier和softmax,取最大值即是它对应的类别,从而进行语义分割。

       

(二)feature map的上采样(Upsample)操作:

        1. Up-sampling最常用,使用双线性插值(Bilinear Interpolation),进行feature map的变换可以看作图像到图像的resize,如:Fc7shape = [N x C x H x W] 到 Fupscoreshape = [N x C' x H' x W']

     2. Un-pooling

         3. Transpose Conv

(三)什么是FCN?

       1.  FCN网络的结构:采用encoder+decoder架构,主要有三个block:convolution、down-sampling、up-sampling,backbone采用VGG,只将两个FC替换成1x1的Conv,再经过上采样到和输入一样,再classifier和softmax进行像素分类。

        2. FCN每层的具体操作

        3. FCN的 layer fusion

(四)FCN的优缺点

优点:

  • 任意尺寸输入
  • 效率高(相较以前)
  • 结合浅层信息

缺点:

  • 分割结果不够精细
  • 没有考虑上下文信息


 三、U-Net模型

paper:

https://arxiv.org/pdf/1505.04597.pdf 论文链接

(23条消息) 《U-Net: Convolutional Networks for Biomedical Image Segmentation》论文阅读之UNet_Gavinmiaoc的博客-CSDN博客_unet 参考文献

(一)什么是U-Net?

U-Net:采用encoder和decoder的U形结构,输入输出大小不变,采用Skip结合方式:Concatenation,以结合上下文信息即左顾右盼,U-Net的输出层与FCN网络相同,都是1x1Conv变换为给定的类别=Channel数,再过一个softmax和argmax得到最终结果。crop和resize操作区别 - wemo - 博客园 (cnblogs.com)

       1.  U-Net网络的结构

        2. 具体操作和实现原理

(二)如何实现一个U-Net网络

        1. 构建U-Net网络的主要operations:

  • Conv 3x3,(with batchnorm, relu)
  • Pool 2D Conv 3x3,(含batchnorm,relu)
  • Pool2D
  • Transpose Conv 2x2
  • Crop,Concat(或Eltwise_Add,感觉差不多,前者会花费更多的算力,后者直接加方便;不同场景下效果可能有些不同)
  • Conv 1×1
  • SoftMax,argmax,squeeze 


四、PSPNet模型

paper:

https://arxiv.org/pdf/1612.01105.pdf 论文链接

(23条消息) 【个人整理】深入详解金字塔场景解析网络(PSPNet)_MIss-Y的博客-CSDN博客_pspnet网络

为什么有PSP?在语义分割处理时,我们可以发现,许多错误都与不同感受野获取的全局信息和语境关系有着部分甚至是完全的关联。因此,一个拥有适当场景级全局信息的深度网络可以大大提高场景解析的能力。 而PSP的出现,表明其能够聚合不同区域的上下文信息,从而可以有效获取全局语境信息。

(一)什么是PSP网络(backbone采用Dilated ResNet)

        1. 基础知识

        什么是感受野?用于产生特征的输入图像中的区域大小;只针对于局部操作,例如:Conv和pooling。

        PSP网络如何获取上下文信息?增大感受野(Receptive Field),以 获取更多的信息。

        如何增大感受野?通过使用不同scale的kernel对相同的feature map进行conv,将得到的不同scale的feature map经过上采样后和原feature map进行concat,得到最后的feature pyramid汇聚了全局的语境信息。(后面这部分的描述是针对PSP模块)

        2. PSP网络的基本结构:Pyramid Scene Parsing Network

        3. PSP模块的具体形式

        4. PSP网络搭建:

        其中的Adaptive Pool最大的特点是:无论输入input的size是多少,输出的size总为指定的size,这个就是为PSPmodule中得到feature pyramid做准备。

(二)什么是空洞卷积(Dilated Conv)   

        为什么引入空洞卷积?在FCN中通过pooling增大感受野缩小图像尺寸,然后通过upsampling还原图像尺寸,但是这个过程中造成了精度的损失,那么为了减小这种损失理所当然想到的是去掉pooling层,然而这样就导致特征图感受野太小,因此空洞卷积应运而生。

         Dilated Conv的优点:可以增大感受野;不降低分辨率;不引入额外参数和计算。

         Dilated Conv操作的原理:2种理解,第一种:空洞处为0,即卷积核的拓展;第二种:在feature map上每隔一行或一列取数与kernel进行卷积。



五、DeepLab系列

paper:

https://arxiv.org/pdf/1412.7062v3.pdf   V1论文

https://arxiv.org/abs/1606.00915  V2论文

https://arxiv.org/abs/1706.05587 V3论文

 https://arxiv.org/abs/1802.02611  V3+论文

(23条消息) DeepLab系列总结_fanxuelian的博客-CSDN博客_deeplab系列

DeepLab series关键结构对比:

(一)DeepLab V1

1. DeepLab V1网络结构

(二)DeepLab V2

1. DeepLab V2 的网络结构

2. 什么是ASPPmodule?

SPP是空间金字塔池化(A为atrous,空洞;ASPP利用了空洞卷积的优势,从不同尺度上提取特征,因为相同的事物在同一张图或不同图像中存在尺度上的差异(23条消息) 多尺度 理解_Dorothy_Xue-CSDN博客_多尺度是什么意思),前面提到的PSP是金字塔场景解析,两者都是为了提取全局语境信息,非常相似,不同点我还没有感受出来,感觉思想是一样的,咳咳只是我感觉,有大神看见错误或者有想法尽管说尽量留言,我是菜鸟入门。😅

(三)DeepLab V3

1. DeepLab V3网络结构

2. ASPP module

升级版的ASPP,adaptive pool参照PSP部分,interpolation参照上文

提示:以上纯粹为个人学习记录,个人理解看法,有问题请大家不吝赐教,感谢大家。

参考链接:

(23条消息) 【语义分割】语义分割评估指标mIOU_筱-CSDN博客_miou语义分割空洞卷积(dilated Convolution) - 知乎 (zhihu.com)(23条消息) 【语义分割】语义分割评估指标mIOU_筱-CSDN博客_miou语义分割

  • 12
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值