目录
FCN论文简述
FCN代码实现
FCN论文简述
FCN是Fully Convolutional Networks的缩写,论文的全称是Fully Convolutional Networks for Semantic Segmentation。我觉得论文的主要贡献在于两点:
- 提出了一种全卷积网络,去掉了以前VGG网络常规的FC连接
- 使用像素级别的比较来进行语义分割
全卷积网络
用卷积计算替代FC计算
这个部分其实比较容易理解,假设我们通过一系列卷积计算后得到一个7x7x512的数据,按照以前FC的方式,需要先对这个矩阵进行flatten得到长度为25088的向量,然后对这个向量与4096个向量进行全连接。如果将这个部分用卷积计算来替代,就是对7x7x512的数据,进行kernel为7x7x512的卷积计算,kernel个数为4096个,那么计算会得到1x1x4096的矩阵,与FC得到长度为4096的向量是一样的意思。
为什么要用卷积计算来替代FC计算?
如果使用FC计算,我们必须要知道输入的尺寸和输出的尺寸,因为中间的参数个数是由输入和输出尺寸共同决定的,但是如果使用卷积,kernel的尺寸可以固定,并不受输入和输出尺寸影响,这样不同的输入尺寸都可以计算。