This commit is contained in:
scutan90 2019-04-26 20:38:06 +08:00
parent 96898d7deb
commit ed063697d8
245 changed files with 14 additions and 89 deletions

View File

@ -2,25 +2,11 @@
[TOC]
作者scutan90
编辑者shw2018UESTC_孙洪卫_硕Wechatsunhwee
提交2018.10.25
更新2018.10.31
<----cfj-2019-01-07---->
1. 新增什么是图像分割?图像分割算法类别
2. 新增图像分割数据集
# 第九章 图像分割
## 9.1 什么是图像分割?
## 9.1 图像分割算法分类?
图像分割是预测图像中每一个像素所属的类别或者物体。
## 9.2 图像分割算法分类?
基于深度学习的图像分割算法主要分为两类:
图像分割是预测图像中每一个像素所属的类别或者物体。基于深度学习的图像分割算法主要分为两类:
**1.语义分割**
@ -34,57 +20,45 @@
![](./img/ch9/Instance-01.png)
## 9.3 传统的基于CNN的分割方法缺点
## 9.2 传统的基于CNN的分割方法缺点
&emsp;&emsp;
传统的基于CNN的分割方法为了对一个像素分类使用该像素周围的一个图像块作为CNN的输入用于训练与预测这种方法主要有几个缺点
&emsp;&emsp;
1存储开销大例如对每个像素使用15 * 15的图像块然后不断滑动窗口将图像块输入到CNN中进行类别判断因此需要的存储空间随滑动窗口的次数和大小急剧上升
&emsp;&emsp;
2效率低下相邻像素块基本上是重复的针对每个像素块逐个计算卷积这种计算有很大程度上的重复
&emsp;&emsp;
3像素块的大小限制了感受区域的大小通常像素块的大小比整幅图像的大小小很多只能提取一些局部特征从而导致分类性能受到限制。
&emsp;&emsp;
而全卷积网络(FCN)则是从抽象的特征中恢复出每个像素所属的类别。即从图像级别的分类进一步延伸到像素级别的分类。
## 9.2 FCN
## 9.3 FCN
### 9.2.1 FCN改变了什么?
### 9.3.1 FCN改变了什么?
&emsp;&emsp;
对于一般的分类CNN网络如VGG和Resnet都会在网络的最后加入一些全连接层经过softmax后就可以获得类别概率信息。但是这个概率信息是1维的即只能标识整个图片的类别不能标识每个像素点的类别所以这种全连接方法不适用于图像分割。
![](./img/ch9/figure_9.1.1_1.jpg)
&emsp;&emsp;
而FCN提出可以把后面几个全连接都换成卷积这样就可以获得一张2维的feature map后接softmax获得每个像素点的分类信息从而解决了分割问题如图4。
对于一般的分类CNN网络如VGG和Resnet都会在网络的最后加入一些全连接层经过softmax后就可以获得类别概率信息。但是这个概率信息是1维的即只能标识整个图片的类别不能标识每个像素点的类别所以这种全连接方法不适用于图像分割。
而FCN提出可以把后面几个全连接都换成卷积这样就可以获得一张2维的feature map后接softmax层获得每个像素点的分类信息从而解决了分割问题如图4。
![](./img/ch9/figure_9.1.1_2.jpg)
<center>图 4</center>
### 9.2.2 FCN网络结构
### 9.3.2 FCN网络结构
&emsp;&emsp;
FCN对图像进行像素级的分类从而解决了语义级别的图像分割semantic segmentation问题。与经典的CNN在卷积层之后使用全连接层得到固定长度的特征向量进行分类全联接层softmax输出不同FCN可以接受任意尺寸的输入图像采用反卷积层对最后一个卷积层的feature map进行上采样, 使它恢复到输入图像相同的尺寸,从而可以对每个像素都产生了一个预测, 同时保留了原始输入图像中的空间信息, 最后在上采样的特征图上进行逐像素分类。
下图是语义分割所采用的全卷积网络(FCN)的结构示意图:
FCN对图像进行像素级的分类从而解决了语义级别的图像分割semantic segmentation问题。与经典的CNN在卷积层之后使用全连接层得到固定长度的特征向量进行分类全联接层softmax输出不同FCN可以接受任意尺寸的输入图像采用反卷积层对最后一个卷积层的feature map进行上采样, 使它恢复到输入图像相同的尺寸,从而可以对每个像素都产生了一个预测, 同时保留了原始输入图像中的空间信息, 最后在上采样的特征图上进行逐像素分类。
下图是语义分割所采用的全卷积网络(FCN)的结构示意图:
![](./img/ch9/figure_9.1.2_1.jpg)
### 9.2.3 全卷积网络举例?
### 9.3.3 全卷积网络举例?
&emsp;&emsp;
通常CNN网络在卷积层之后会接上若干个全连接层, 将卷积层产生的特征图(feature map)映射成一个固定长度的特征向量。以AlexNet为代表的经典CNN结构适合于图像级的分类和回归任务因为它们最后都得到整个输入图像的一个概率向量比如AlexNet的ImageNet模型输出一个1000维的向量表示输入图像属于每一类的概率(softmax归一化)。
通常CNN网络在卷积层之后会接上若干个全连接层, 将卷积层产生的特征图(feature map)映射成一个固定长度的特征向量。以AlexNet为代表的经典CNN结构适合于图像级的分类和回归任务因为它们最后都得到整个输入图像的一个概率向量。
![](./img/ch9/figure_9.1.3_1.jpg)
&emsp;&emsp;
如图所示:
图所示:
&emsp;&emsp;
1在CNN中, 猫的图片输入到AlexNet, 得到一个长为1000的输出向量, 表示输入图像属于每一类的概率, 其中在“tabby cat”这一类统计概率最高, 用来做分类任务。
&emsp;&emsp;
2FCN与CNN的区别在于把CNN最后的全连接层转换成卷积层输出的是一张已经Label好的图片, 而这个图片就可以做语义分割。
2FCN与CNN的区别在于把CNN最后的全连接层转换成卷积层输出的是一张已经带有标签的图片, 而这个图片就可以做语义分割。
&emsp;&emsp;
3CNN的强大之处在于它的多层结构能自动学习特征并且可以学习到多个层次的特征: 较浅的卷积层感知域较小,学习到一些局部区域的特征;较深的卷积层具有较大的感知域,能够学习到更加抽象一些的特征。高层的抽象特征对物体的大小、位置和方向等敏感性更低,从而有助于识别性能的提高, 所以我们常常可以将卷积层看作是特征提取器。

Some files were not shown because too many files have changed in this diff Show More