图像分割
-
语义分割
给每个像素分配类别标签,不区分实例,只考虑像素类别。
传统的分割思路利用滑动窗口机制,对每个像素点提取周围像素对中心像素分类,这种方法效率太低,多个区域被重复计算。
2014年出现的FCN,去掉了传统卷积神经网络末端的全连接层,实现了端到端的对每个像素的分类。随后的语义分割模型基本都采用这种结构。除了全连接层,语义分割另一个重要的问题是池化层。池化层能进一步提取抽象特征增加感受域,但是丢弃了像素的位置信息。而语义分割需要类别标签和原图像对齐,因此需要从新引入像素的位置信息。有两种不同的架构可以解决此像素定位问题。
1.编码-译码架构。编码过程通过池化层逐渐减少位置信息、抽取抽象特征;译码过程逐渐恢复位置信息。一般译码与编码间有直接的连接。该类架构中U-net 是最流行的。
第二种架构是膨胀卷积 ( dilated convolutions ) ,抛弃了池化层。使用的卷积核如下图。
FCN 2014年
主要的贡献:
1.为语义分割引入了 端到端 的全卷积网络,并流行开来
2.重新利用 ImageNet 的预训练网络用于语义分割
3.使用反卷积层进行上采样
4.引入跳跃连接来改善上采样粗糙的像素定位
反池化操作
‘Unpooling’
'Max Unpooling ’
可学习的上采样
转置卷积(Transpose Convolution) -
实例分割
给每个像素分配类别标签,并用不同的颜色对同一类别进行区分