使用华为mindspore模型框架下DeepLabv3+,DeepLab是一系列图像语义分割模型,DeepLabv3+通过encoder-decoder进行多尺度信息的融合,同时保留了原来的空洞卷积和ASSP层,其骨干网络使用了Resnet模型,提高了语义分割的健壮性和运行速率。并在不同数据集下训练和推理(这里使用无人机航拍数据集semantic drone dataset)。
利用原始数据集PASCAL VOC 2012进行训练和推理
数据预处理:
python src/tools/get_dataset_list.py --data_dir=[DATA_ROOT]
[DATA_ROOT]为数据集的绝对路径。执行完后将在[DATA_ROOT]目录下生成三个数据清单文件: vocaug_train_lst.txt、voc_train_lst.txt和voc_val_lst.txt
bash get_dataset_mindrecord.sh
export DEVICE_ID=7 python /PATH/TO/MODEL_ZOO_CODE/src/tools/get_dataset_mindrecord.py
--data_root=/PATH/TO/DATA_ROOT \
--data_lst=/PATH/TO/DATA_lst.txt \
--dst_path=/PATH/TO/MINDRECORED_NAME.mindrecord \
--num_shards=8\
--shuffle=True
将数据集转换为MindRecord格式,作为接下来的训练输入数据和测试数据
2. 模型训练
bash run_alone_train.sh单卡训练
参数:
bash run_eval_s8.sh 评估脚本
4. semantic drone dataset数据预处理
修改训练图片的格式,使其与PASCAL VOC 2012保存一致
数据预处理之后,重复上述操作,重新训练和推理
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!