计图(Jittor)是清华大学自主研发的深度学习框架,是中国科学院空天信息创新研究院主办的第五届“中科星图杯”国际高分遥感图像解译大赛官方指定深度学习框架之一,Jittor团队针对大赛所使用的数据集和提交方式提供了相关支持和工具。
大赛地址:
继计图团队推出遥感检测库JDet,支持中科星图遥感检测赛道,取得好成绩之后,9月1日,计图团队进一步发布了Jittor对”面向海洋一号可见光图像中海冰目标监测”和“高分辨率SAR图像中近海养殖场分割”两个分割赛道的支持。
1. Jittor 手把手带你打 遥感大赛分割赛道
近日,第五届“中科星图杯”国际高分遥感图像解译大赛已经开放了评测通道,在 "面向海洋一号可见光图像中海冰目标监测” 和 “高分辨率SAR图像中近海养殖场分割"赛道中,Jittor提供了遥感分割模型PFNet-Jittor以及docker封装教程供选手使用。
截止至发稿,如下图所示,使用改进后的PFNet-Jittor训练的模型,在高分辨率SAR图像中近海养殖场分割 (队名:星星之火) 和面向海洋一号可见光图像中海冰目标监测 (队名:glotwo) 两个赛道拿下双第一,接下来我们将简要介绍如何使用PFNet-Jittor参加比赛,欢迎各位选手使用!
图1 改进的PFNet-Jittor取得两个赛道双第一
2. 下载代码
进入PFNet-Jittor的代码仓库主页:
或
按照README的提示安装PFNet-Jittor及其所需环境。
本次公布的模型是使用了Res2Net-101骨干网络和 PFNet 的结合。
3. 下载数据库&数据预处理
访问大赛的官网,点击“下载数据集”。
图2 下载海冰目标监测数据集
图3 下载养殖场分割数据集
将数据集做成以下形式:
图3 数据集格式
其中img文件夹为可见光海冰分割的数据,sar为sar渔场分割的数据。All为所有数据,train和val为按照一定比例划分的训练集和验证集(自行划分即可)。Image为对应的图片,后缀为tif(可见光分割)或png(sar分割),gt为对应的标注文件后缀为png。
4. 训练&测试
将config文件中的数据路径修改为正确路径即可开始训练 (如果只训练SAR,可以只修改SAR)。
__C.DATASET.GAOFENSAR = 'gaofen/sar'
__C.DATASET.GAOFENIMG = 'gaofen/img'
4.1 训练
参加哪个比赛,使用对应的脚本训练即可。
train_gfimg_pfnet_r2n101.sh
train_gfsar_pfnet_r2n101.sh
面向海洋一号可见光图像中海冰目标监测比赛中,提交后,得到了96.1223的分数(该分数截止发稿,排名第五)。
高分辨率SAR图像中近海养殖场分割数据集中,提交后,得到了97.0155的分数(该分数截止发稿,排名第二)。
4.2 测试
将run.py中的模型路径填为正确路径(不同赛道都只需要修改这一个地方就可以,参数args.dataset_cls=GAOFENIMG,只是为了传类别数)。即为按比赛要求的模型测试。
本机测试时示例
python run.py gaofen/img/val/image test_img/
5. docker提交示例
结果需要打包成docker,按照官方提示来提交,下面以sar赛道为例,给予说明。
5.1 将镜像打包(Dockerfile在当前目录下)
sudo docker build -t pfnet_sar .
5.2(可选)本地测试
# sudo docker run --rm -it --network none --gpus all -v gaofen/sar/val/image:/input_path -vtest_img:/output_path pfnet_sar
5.3 上传到阿里云
sudo docker tag pfnet_sar registry.cn-beijing.aliyuncs.com/xxx/xxx:pfnet_sar
sudo docker push registry.cn-beijing.aliyuncs.com/xxx/xxx:pfnet_sar
6. 结语
最后预祝各位选手取得满意的成绩!
欢迎大家使用Jittor的遥感分割模型PFNet-Jitto参加比赛,或开展研究工作。
如果大家在使用过程中发现有什么问题,请大家在github提交issue或者PR。也可以加入Jittor开发者的QQ交流群,期待您提出宝贵的意见。
**致谢:**特别感谢计图开源贡献者uyzhang,欢迎各位提交代码,参与计图开源社区贡献。