DeepLab:带深度卷积网、空洞卷积和全连接CRF的语义图像分割 论文 讲解
测试单张图片
- 下载源码,修改源码文件夹名称为DeepLabv2。基于Caffe的源码在这。
- 下载模型,解压缩得到deeplab_resnet.ckpt和deeplab_resnet_init.ckpt,把这两个文件放入DeepLabv2/output文件夹。找一个图片1.jpg也放入该文件夹。
- 在DeepLabv2创建1infer.sh:
python inference.py output/1.jpg output/deeplab_resnet.ckpt #使用自己训练的结果:训练的输出目录是output/snapshots python inference.py output/1.jpg output/snapshots/model.ckpt-20000
- 运行1infer.sh即生成DeepLabv2/output/mask.png。
训练
- 下载数据集,和增广数据集。根据运行错误稍微调整一下文件夹位置。
- 修改DeepLabv2/train.py中的路径。注意如果RESTORE_FROM指向下载的'output/deeplab_resnet.ckpt'路径,就是在作者的训练结果上继续训练,这样开始训练就是收敛的。
- 执行:python train.py --random-mirror --random-scale。
可视化
- 在train.py中设置了:SNAPSHOT_DIR = 'output/snapshots/'。
- 在DeepLabv2中打开终端,输入:tensorboard --logdir=output/snapshots,按提示打开链接。