计图(Jittor)是清华大学自主研发的深度学习框架,是中国科学院空天信息创新研究院主办的第五届“中科星图杯”国际高分遥感图像解译大赛官方指定深度学习框架之一,Jittor团队针对大赛所使用的数据集和提交方式提供了相关支持和工具。
大赛地址:http://gaofen-challenge.com
本次发布的是Jittor的遥感图像库JDet对“高分辨率可见光图像中多类目标细粒度检测识别”赛道的支持。
1. JD et手把手带你打目标检测赛道
近日,第五届“中科星图杯”国际高分遥感图像解译大赛已经开放了评测通道,在“高分辨率可见光图像中多类目标细粒度检测识别”赛道中,Jittor提供了遥感目标检测算法库JDet供选手使用,JDet集成了比赛数据集的处理工具,库中包含了若干主流和基础的遥感目标检测模型,并且可以一键训练+测试+生成可在比赛中提交的结果。
截止至发稿,使用JDet训练的模型(队名:“一个基线”)在该赛道中排名第一。接下来我们将简要介绍如何使用JDet参加比赛,欢迎各位选手使用!
2. 安装JDet
进入JDet的github主页:
按照README的提示安装JDet及其所需环境。
3. 下载数据库&数据预处理
- 下载&解压
首先在高分大赛主页中下载数据集:
下载后会得到以下五个文件:
train/part1/images.zip
train/part1/labelXml.zip
train/part2/images.zip
train/part2/labelXmls.zip
test/images.zip
将其解压为以下形式:
其中
{FAIR_PATH}为数据集路径,用户可以自行选择。
{FAIR_PATH}/origin_data/train/images中的文件为
train/part1/images.zip 和
train/part2/images.zip解压得到。
{FAIR_PATH}/origin_data/train/labelXml中的文件为
train/part1/labelXml.zip 和
train/part2/labelXmls.zip解压得到。
{FAIR_PATH}/origin_data/test/images中的文件为test/images.zip解压得到。
2)数据预处理
由于遥感图像尺寸较大,我们需要先使用JDet中的工具对其进行预处理:
进入 JDet/python/jdet/data/devkits/preprocess
,
修改fair_preprocess_config.py文件中的三个路径参数为:
然后运行
python preprocess.py --config-file=fair_preprocess_config.py
即可自动进行数据预处理。
4. 训练&测试
在完成数据预处理后,我们就可以对模型进行训练和测试。JDet目前提供了4个主流遥感目标检测:S2ANet、Gliding、RetinaNet和Faster R-CNN。我们以RetinaNet为例进行介绍。
首先进入目录JDet/projects/retinanet,按照README下载预训练权重。然后将配置文件configs/gaofen.py中的{FAIR_PATH}替换为用户的赛道数据集路径。之后运行训练命令
python run_net.py --config-file=configs/retinanet_gaofen.py --task=train
即可进行训练。JDet会在训练完成后自动使用训练后的模型对测试集进行测试,并生成可提交的结果。
5. 提交结果
JDet会将模型在测试集上的运行结果会自动处理并压缩后存放在JDet/projects/retinanet/submit_zips/中,用户可以直接将里面zip文件提交到比赛官网查看成绩。
更多使用技巧请查看JDet文档,如有任何问题欢迎进行交流。
6. 比赛Tips
各位选手在比赛时可以通过以下技巧尝试提升比赛的分数:
1)由于比赛提交次数有限,可以通过随机划分交叉验证集调整模型参数。
2)可以尽量多尝试不同的模型,并对多种模型的结果进行合并。
3)可以移植性能更好的新模型/新骨干网络。
7. 结语
最后预祝各位选手取得满意的成绩!
JDet全部代码已开源在:
欢迎大家使用Jittor的遥感目标检测库JDet开展研究工作。
如果大家在使用过程中发现有什么问题,请大家在github提交issue或者PR。也可以加入Jittor开发者的QQ交流群,期待您提出宝贵的意见。
**预告:**后续计图还将推出针对高分大赛中“高分辨率SAR图像中近海养殖场分割”和“面向海洋一号可见光图像中海冰目标监测”赛道的算法库及使用教程,敬请期待!