参考:https://github.com/tensorflow/models/blob/master/research/deeplab/g3doc/cityscapes.md
https://github.com/tensorflow/models/blob/master/research/deeplab/local_test.sh
1、下载数据
cd models/research/deeplab/datasets
mkdir cityscapes
下载原始5000张图片leftImg8bit_trainvaltest.zip(11GB)并解压在leftImg8bit文件夹下;
下载惊标5000张图片gtFine_trainvaltest.zip(241MB)并解压在gtFine文件下下;
特别说明:发现下载一段时间就会出现服务器中断,国内有CSDN博客分享了百度云下载链接。
https://blog.csdn.net/zym19941119/article/details/81198315
链接: https://pan.baidu.com/s/108_NgFheDIpnQRrwz5uhmw 提取码: dhr8
2、转换数据
cd models/research/deeplab/datasets
sh convert_cityscapes.sh
执行后会在cityscapes目录下出现tfrecord文件夹。
3、下载checkpoint
https://github.com/tensorflow/models/blob/master/research/deeplab/g3doc/model_zoo.md
选择xception65_cityscapes_trainfine,下载并解压到cityscapes文件夹下
4、准备工作
加载py包路径,记住目录要用绝对路径:
export PYTHONPATH=$PYTHONPATH:/data/comcode/models/research/:/data/comcode/models/research/slim
创建输出文件夹
cd models/research/deeplab/datasets/cityscapes
mkdir exp
cd exp
mkdir train_on_train_set
cd train_on_train_set
mkdir train --保存训练输出结果
mkdir val --保存评价输出结果
mkdir vis --保存可视化输出结果
mkdir export --保存模型输出
当前目录结构如下图:
5、训练模型
cd models/research
python deeplab/train.py \
--logtostderr \
--training_number_of_steps=30000 \
--fine_tune_batch_norm=False \
--train_split="train" \
--model_variant="xception_65" \
--atrous_rates=6 \
--atrous_rates=12 \
--atrous_rates=18 \
--output_stride=16 \
--decoder_output_stride=4 \
--train_crop_size="769,769" \
--train_batch_size=1 \
--dataset="cityscapes" \
--tf_initial_checkpoint=deeplab/datasets/cityscapes/deeplabv3_cityscapes_train/model.ckpt \
--train_logdir=deeplab/datasets/cityscapes/exp/train_on_trainval_set/train \
--dataset_dir=deeplab/datasets/cityscapes/tfrecord
5、评价模型
python deeplab/eval.py \
--logtostderr \
--eval_split="val" \
--model_variant="xception_65" \
--atrous_rates=6 \
--atrous_rates=12 \
--atrous_rates=18 \
--output_stride=16 \
--decoder_output_stride=4 \
--eval_crop_size="1025,2049" \
--dataset="cityscapes" \
--checkpoint_dir=deeplab/datasets/cityscapes/exp/train_on_trainval_set/train \
--eval_logdir=deeplab/datasets/cityscapes/exp/train_on_trainval_set/val \
--dataset_dir=deeplab/datasets/cityscapes/tfrecord \
--max_number_of_evaluations=1
6、可视化输出
python deeplab/vis.py \
--logtostderr \
--vis_split="val" \
--model_variant="xception_65" \
--atrous_rates=6 \
--atrous_rates=12 \
--atrous_rates=18 \
--output_stride=16 \
--decoder_output_stride=4 \
--vis_crop_size="1025,2049" \
--dataset="cityscapes" \
--colormap_type="cityscapes" \
--checkpoint_dir=deeplab/datasets/cityscapes/exp/train_on_trainval_set/train \
--vis_logdir=deeplab/datasets/cityscapes/exp/train_on_trainval_set/vis \
--dataset_dir=deeplab/datasets/cityscapes/tfrecord
tensorboard看运行结果:
tensorboard --port=10072 --logdir=/data/comcode/models/research/deeplab/datasets/cityscapes/exp/train_on_trainval_set/val