(20)图像分割——FCN

    FCN是全卷积神经网络,用于图像语义分割,将图像级别的分类扩展到像素级别的分类。FCN将传统网络后面的全连接层换成了卷积层,这样网络输出不再是类别而是 heatmap;同时为了解决因为卷积和池化对图像尺寸的影响,提出使用上采样的方式恢复。其网络结构如图:


FCN网络结构

    此处的上采样即是反卷积(Deconvolution)。反卷积和卷积类似,都是相乘相加的运算。只不过后者是多对一,前者是一对多。而反卷积的前向和后向传播,只用颠倒卷积的前后向传播即可。反卷积操作如下所示:


卷积与反卷积

    文章采用的网络经过5次卷积+池化后,图像尺寸依次缩小了 2、4、8、16、32倍,对最后一层做32倍上采样,就可以得到与原图一样的大小。但是仅对第5层做32倍反卷积(deconvolution),得到的结果不太精确。于是将第 4 层和第 3 层的输出也依次反卷积。并将最终结果合在一起。如图:


不同层均做反卷积


不同层反卷积效果

    可以看出从第3层开始做上采样的插值结果最精细。

     其他模型细节参考https://zhuanlan.zhihu.com/p/22976342;https://blog.csdn.net/zizi7/article/details/77093447

延伸:

    FCN得到的图像分割比较粗糙,目前用的比较多的有前端使用FCN进行特征的粗略提取,后端使用CRF/MRF优化前端的输出,最后得到分割图。

    1、全连接条件随机场

    对于每个像素i,具有类别标签,还有对应的观测值,这样每个像素点作为节点,像素与像素间的关系作为边,即构成了一个条件随机场。而且我们通过观测变量来推测像素i,对应的类别标签。条件随机场如下:

条件随机场

    条件随机场符合吉布斯分布:(此处的x即上面说的观测值)

    其中E(x|I )是能量函数,I 为全局观测量。

能量函数

    等式右边第一项为一元势函数,即来自于前端FCN的输出;第二项为二元势函数,描述像素点与像素点之间的关系,鼓励相似像素分配相同的标签,而相差较大的像素分配不同标签,而这个“距离”的定义与颜色值和实际相对距离有关。所以这样CRF能够使图片尽量在边界处分割。二元势函数描述的是每一个像素与其他所有像素的关系,所以叫“全连接”。

    深度学习+概率图模型(PGM)是一种趋势。其实DL说白了就是进行特征提取,而PGM能够从数学理论很好的解释事物本质间的联系。

    概率图模型的网络化。因为PGM通常不太方便加入DL的模型中,将PGM网络化后能够是PGM参数自学习,同时构成end-to-end的系统。

你可能感兴趣的:((20)图像分割——FCN)