1. 说明
本文是关于《百度AIStudio_目标检测7日打卡营》,作业三 YOLO系列模型baseline得分低的解决方案。
2. 提升方法
问题:
- 训练图像比较大,目标又比较小,baseline的图像输入太小;增大输入图像尺寸效果会不会好一些。
- 怎么设置anchor?聚类命令参数意义。
关于问题1:
训练图像横纵分辨率都在2000-3000左右,按照yml配置文件中的608的输入尺寸训练时很难达到0.6。通过改变训练尺寸输入、评估尺寸和测试尺寸可以很容易将分数提高到0.6以上。
具体设置为:
batch_transforms:
- !RandomShape
sizes: [ 896 , 960 , 1024, 1088, 1152 ]
random_inter: True
- !ResizeImage
target_size: 1024 #608
interp: 2
TestReader:
inputs_def:
image_shape: [3, 1024, 1024]
fields: ['image', 'im_size', 'im_id']
关于问题2:
anchor聚类命令为:
python tools/anchor_cluster.py -c ../yolov3_darknet_baseline.yml -n 9 -s 608 -m v2 -i 1000
其中 -n 9:是anchor聚类的输出个数,-n 9说明输出9个anchor。
-s 608:是图像的输入尺寸,用608的输入尺寸训练时,就用-s 608;用1024的尺寸训练时,就用-s 1024.
3. 结果
在不修改其它训练参数时,训练结果能达到0.9左右。