FCN 全卷积网络

FCN 全卷积网络

FCN  Fully Convolutional Networks for Semantic Segmentation 是2015年语义分割里程碑。后续SegNet,DeepLab v1,v2,v3,v3+, RefineNet, PSPNet。将学习要点归纳总结。


语义分割, 实例分割, 全景分割

首先需要明确概念:

语义分割:对每一类别使用不同颜色进行区分。

实例分割:实例分割只关注目标对象,不关注背景。类别和每个实例都需要不同颜色区分。

全景分割:可以看做语义分割 + 实例分割。

下面的图可以很好解释他们间的不同:


FCN 的网络结构

FCN 的网络结构比较简单,可以分为两个部分:卷积 + 上采样。 卷积时采用不同深度的跳级结构,和卷积提取的特征进行累加。我们代码实现是可以尝试不同的基础网络(例如:VGG, Inception, ResNet)进行特征提取。

上采样一般2种:1. Resize  2. 反卷积。他们的功能都是讲小尺寸图片特征映射到大尺度的特征。


FCN 训练技巧:

  • 卷积特征加载预训练模型 
  • bilinear初始化反卷积参数
  • 至少175 epoch 迭代
  • 学习率在100次后调整
  • pool3 之前的特征图不需要融合。


代码

基于https://github.com/pochih/FCN-pytorch修改了一版可运行的程序,代码地址为: https://github.com/shanyiWang/FCN-pytorch 

  • 1. 数据集准备:

701_StillsRaw_full.zip 下载链接:
http://web4.cs.ucl.ac.uk/staff/g.brostow/MotionSegRecData/files/701_StillsRaw_full.zip

LabeledApproved_full 下载链接:
http://mi.eng.cam.ac.uk/research/projects/VideoRec/CamVid/data/LabeledApproved_full.zip

label_colors 链接:
http://mi.eng.cam.ac.uk/research/projects/VideoRec/CamVid/data/label_colors.txt

注意:label_colors 最后有一个空行

  • 2. 生成数据集:

python3 python/CamVid_utils.py

  • 3. 训练生成模型:

python3 python/train.py CamVid

  • 4. 推理代码:

python3 python/inference.py


参考内容:

https://zhuanlan.zhihu.com/p/31428783

https://space.bilibili.com/365093772/video

https://github.com/pochih/FCN-pytorch

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值