1
- # PP-YOLOE 小目标检测模型(PP-YOLOE Small Object Detection)
1
+ # PP-YOLOE-SOD 小目标检测模型(PP-YOLOE Small Object Detection)
2
2
3
3
<img src =" https://user-images.githubusercontent.com/82303451/182520025-f6bd1c76-a9f9-4f8c-af9b-b37a403258d8.png " title =" VisDrone " alt =" VisDrone " width =" 300 " ><img src =" https://user-images.githubusercontent.com/82303451/182521833-4aa0314c-b3f2-4711-9a65-cabece612737.png " title =" VisDrone " alt =" VisDrone " width =" 300 " ><img src =" https://user-images.githubusercontent.com/82303451/182520038-cacd5d09-0b85-475c-8e59-72f1fc48eef8.png " title =" DOTA " alt =" DOTA " height =" 168 " ><img src =" https://user-images.githubusercontent.com/82303451/182524123-dcba55a2-ce2d-4ba1-9d5b-eb99cb440715.jpeg " title =" Xview " alt =" Xview " height =" 168 " >
4
4
5
5
## 内容
6
6
- [ 简介] ( #简介 )
7
7
- [ 模型库] ( #模型库 )
8
8
- [ VisDrone模型] ( #VisDrone模型 )
9
- - [ 基础模型] ( #基础模型 )
9
+ - [ COCO模型] ( #COCO模型 )
10
+ - [ 切图模型] ( #切图模型 )
10
11
- [ 拼图模型] ( #拼图模型 )
11
12
- [ 数据集准备] ( #数据集准备 )
12
13
- [ 模型库使用说明] ( #模型库使用说明 )
22
23
## 简介
23
24
PaddleDetection团队提供了针对VisDrone-DET、DOTA水平框、Xview等小目标场景数据集的基于PP-YOLOE的检测模型,以及提供了一套使用[ SAHI] ( https://github.com/obss/sahi ) (Slicing Aided Hyper Inference)工具切图和拼图的方案,用户可以下载模型进行使用。
24
25
26
+ AI Studio 官方教程案例请参考[ 基于PP-YOLOE-SOD的无人机航拍图像检测案例全流程实操] ( https://aistudio.baidu.com/aistudio/projectdetail/5036782 ) ,欢迎一起动手实践学习。
27
+
25
28
** 注意:**
26
- - ** 是否需要切图** ,建议参照[ 切图使用说明] ( #切图使用说明 ) 中的[ 统计数据集分布] ( #统计数据集分布 ) 先分析一下数据集再确定,一般数据集所有目标均极小的时候推荐切图训练和切图预测 。
27
- - 不通过切图拼图而直接使用原图的方案也可以参照 [ visdrone] ( ./visdrone ) 。
28
- - 第三方AI Studio教程案例可参考[ PPYOLOE:遥感场景下的小目标检测与部署( 切图版) ] ( https://aistudio.baidu.com/aistudio/projectdetail/4493701 ) 和 [ 涨分神器!基于PPYOLOE的切图和拼图解决方案] ( https://aistudio.baidu.com/aistudio/projectdetail/4438275 ) 。
29
+ - ** 是否需要切图** ,建议参照[ 切图使用说明] ( #切图使用说明 ) 中的[ 统计数据集分布] ( #统计数据集分布 ) 先分析一下数据集再确定,一般数据集中 ** 所有目标均极小 ** 的情况下推荐切图训练和切图预测 。
30
+ - 不通过切图拼图而 ** 直接使用原图 ** 的方案也可以参照 [ visdrone] ( ./visdrone ) 。
31
+ - 第三方AI Studio教程案例可参考 [ PPYOLOE:遥感场景下的小目标检测与部署( 切图版) ] ( https://aistudio.baidu.com/aistudio/projectdetail/4493701 ) 和 [ 涨分神器!基于PPYOLOE的切图和拼图解决方案] ( https://aistudio.baidu.com/aistudio/projectdetail/4438275 ) 。
29
32
30
33
31
34
## 模型库
@@ -36,25 +39,38 @@ PaddleDetection团队提供了针对VisDrone-DET、DOTA水平框、Xview等小
36
39
| :---------| :------:| :------:| :----: | :------:| :------: | :------:| :----: | :------:|
37
40
| PP-YOLOE-s| 23.5 | 39.9 | 19.4 | 33.6 | 23.68 | 40.66 | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_crn_s_80e_visdrone.pdparams ) | [ 配置文件] ( visdrone/ppyoloe_crn_s_80e_visdrone.yml ) |
38
41
| PP-YOLOE-P2-Alpha-s| 24.4 | 41.6 | 20.1 | 34.7 | 24.55 | 42.19 | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_crn_s_p2_alpha_80e_visdrone.pdparams ) | [ 配置文件] ( visdrone/ppyoloe_crn_s_p2_alpha_80e_visdrone.yml ) |
39
- | PP_YOLOE_plus_sod_s | 25.1 | 42.8 | 20.7 | 36.2 | 25.16 | 43.86 | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_plus_sod_crn_s_80e_visdrone.pdparams ) | [ 配置文件] ( visdrone/ppyoloe_plus_sod_crn_s_80e_visdrone.yml ) |
42
+ | ** PP-YOLOE+ _ SOD-s ** | ** 25.1** | ** 42.8** | ** 20.7** | ** 36.2** | ** 25.16** | ** 43.86** | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_plus_sod_crn_s_80e_visdrone.pdparams ) | [ 配置文件] ( visdrone/ppyoloe_plus_sod_crn_s_80e_visdrone.yml ) |
40
43
| PP-YOLOE-l| 29.2 | 47.3 | 23.5 | 39.1 | 28.00 | 46.20 | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_crn_l_80e_visdrone.pdparams ) | [ 配置文件] ( visdrone/ppyoloe_crn_l_80e_visdrone.yml ) |
41
44
| PP-YOLOE-P2-Alpha-l| 30.1 | 48.9 | 24.3 | 40.8 | 28.47 | 48.16 | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_crn_l_p2_alpha_80e_visdrone.pdparams ) | [ 配置文件] ( visdrone/ppyoloe_crn_l_p2_alpha_80e_visdrone.yml ) |
42
- | PP_YOLOE_plus_sod_l | 31.9 | 52.1 | 25.6 | 43.5 | 30.25 | 51.18 | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_plus_sod_crn_l_80e_visdrone.pdparams ) | [ 配置文件] ( visdrone/ppyoloe_plus_sod_crn_l_80e_visdrone.yml ) |
45
+ | ** PP-YOLOE+ _ SOD-l ** | ** 31.9** | ** 52.1** | ** 25.6** | ** 43.5** | ** 30.25** | ** 51.18** | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_plus_sod_crn_l_80e_visdrone.pdparams ) | [ 配置文件] ( visdrone/ppyoloe_plus_sod_crn_l_80e_visdrone.yml ) |
43
46
| PP-YOLOE-Alpha-largesize-l| 41.9 | 65.0 | 32.3 | 53.0 | 37.13 | 61.15 | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_crn_l_alpha_largesize_80e_visdrone.pdparams ) | [ 配置文件] ( visdrone/ppyoloe_crn_l_alpha_largesize_80e_visdrone.yml ) |
44
47
| PP-YOLOE-P2-Alpha-largesize-l| 41.3 | 64.5 | 32.4 | 53.1 | 37.49 | 51.54 | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_crn_l_p2_alpha_largesize_80e_visdrone.pdparams ) | [ 配置文件] ( visdrone/ppyoloe_crn_l_p2_alpha_largesize_80e_visdrone.yml ) |
45
- | PP-YOLOE-plus-largesize -l | 43.3 | 66.7 | 33.5 | 54.7 | 38.24 | 62.76 | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_plus_crn_l_largesize_80e_visdrone.pdparams ) | [ 配置文件] ( visdrone/ppyoloe_plus_crn_l_largesize_80e_visdrone.yml ) |
46
- | PP-YOLOE-plus_sod-largesize_l | 42.7 | 65.9 | 33.6 | 55.1 | 38.4 | 63.07 | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_plus_sod_crn_l_largesize_80e_visdrone.pdparams ) | [ 配置文件] ( visdrone/ppyoloe_plus_sod_crn_l_largesize_80e_visdrone.yml ) |
48
+ | PP-YOLOE+ _ largesize -l | 43.3 | 66.7 | 33.5 | 54.7 | 38.24 | 62.76 | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_plus_crn_l_largesize_80e_visdrone.pdparams ) | [ 配置文件] ( visdrone/ppyoloe_plus_crn_l_largesize_80e_visdrone.yml ) |
49
+ | ** PP-YOLOE+ _ SOD-largesize-l ** | 42.7 | 65.9 | ** 33.6** | ** 55.1** | ** 38.4** | ** 63.07** | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_plus_sod_crn_l_largesize_80e_visdrone.pdparams ) | [ 配置文件] ( visdrone/ppyoloe_plus_sod_crn_l_largesize_80e_visdrone.yml ) |
47
50
48
51
** 注意:**
49
- - VisDrone-DET数据集** 可使用原图训练,也可使用切图后训练** ,上表中的模型均为** 使用原图训练** ,也使用** 原图评估预测** ,推荐直接使用带** sod** 的模型配置文件去训练评估和预测部署。
52
+ - 上表中的模型均为** 使用原图训练** ,也** 使用原图评估预测** ,AP精度均为** 原图验证集** 上评估的结果。
53
+ - VisDrone-DET数据集** 可使用原图训练,也可使用切图后训练** ,通过数据集统计分布分析,推荐使用** 原图训练** ,推荐直接使用带** SOD** 的模型配置文件去训练评估和预测部署,在显卡算力有限时也可使用切图后训练。
50
54
- 上表中的模型指标均是使用VisDrone-DET的train子集作为训练集,使用VisDrone-DET的val子集和test_dev子集作为验证集。
51
- - ** sod ** 表示使用** 基于向量的DFL算法** 和针对小目标的** 中心先验优化策略** ,并** 在模型的Neck结构中加入transformer** 。
55
+ - ** SOD ** 表示使用** 基于向量的DFL算法** 和针对小目标的** 中心先验优化策略** ,并** 在模型的Neck结构中加入transformer** 。
52
56
- ** P2** 表示增加P2层(1/4下采样层)的特征,共输出4个PPYOLOEHead。
53
57
- ** Alpha** 表示对CSPResNet骨干网络增加可一个学习权重参数Alpha参与训练。
54
58
- ** largesize** 表示使用** 以1600尺度为基础的多尺度训练** 和** 1920尺度预测** ,相应的训练batch_size也减小,以速度来换取高精度。
55
59
56
60
57
- ### 基础模型
61
+ ### COCO模型
62
+
63
+ | 模型 | mAP<sup >val<br >0.5:0.95 | AP<sup >0.5 | AP<sup >0.75 | AP<sup >small | AP<sup >medium | AP<sup >large | AR<sup >small | AR<sup >medium | AR<sup >large | 下载链接 | 配置文件 |
64
+ | :--------:| :-----------------------:| :----------:| :-----------:| :------------:| :-------------:| :-----------:| :------------:| :-------------:| :------------:| :-------:| :-------:|
65
+ | PP-YOLOE+_ l| 52.9 | 70.1 | 57.9 | 35.2 | 57.5 | 69.1 | 56.0 | 77.9 | 86.9 | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_plus_crn_l_80e_coco.pdparams ) | [ 配置文件] ( ../ppyoloe/ppyoloe_plus_crn_l_80e_coco.yml ) |
66
+ | ** PP-YOLOE+_ SOD-l** | 53.0 | ** 70.4** | 57.7 | ** 37.1** | 57.5 | 69.0 | ** 56.5** | 77.5 | 86.7 | [ 下载链接] ( https://paddledet.bj.bcebos.com/models/ppyoloe_plus_sod_crn_l_80e_coco.pdparams ) | [ 配置文件] ( ./ppyoloe_plus_sod_crn_l_80e_coco.yml ) |
67
+
68
+ ** 注意:**
69
+ - 上表中的模型均为** 使用原图训练** ,也** 原图评估预测** ,网络输入尺度为640x640,训练集为COCO的train2017,验证集为val2017,均为8卡总batch_size为64训练80 epoch。
70
+ - ** SOD** 表示使用** 基于向量的DFL算法** 和针对小目标的** 中心先验优化策略** ,并** 在模型的Neck结构中加入transformer** ,可在 AP<sup >small 上提升1.9。
71
+
72
+
73
+ ### 切图模型
58
74
59
75
| 模型 | 数据集 | SLICE_SIZE | OVERLAP_RATIO | 类别数 | mAP<sup >val<br >0.5:0.95 | AP<sup >val<br >0.5 | 下载链接 | 配置文件 |
60
76
| :---------| :---------------:| :---------------:| :---------------:| :------:| :-----------------------:| :-------------------:| :---------:| :-----: |
@@ -63,7 +79,9 @@ PaddleDetection团队提供了针对VisDrone-DET、DOTA水平框、Xview等小
63
79
| PP-YOLOE-l| VisDrone-DET| 640 | 0.25 | 10 | 38.5 | 60.2 | [ 下载链接] ( https://bj.bcebos.com/v1/paddledet/models/ppyoloe_crn_l_80e_sliced_visdrone_640_025.pdparams ) | [ 配置文件] ( ./ppyoloe_crn_l_80e_sliced_visdrone_640_025.yml ) |
64
80
65
81
** 注意:**
66
- - 上表中的模型均为使用** 切图后的子图训练** ,使用** 子图评估预测** 。
82
+ - 上表中的模型均为使用** 切图后的子图训练** ,且使用** 切图后的子图评估预测** ,AP精度均为** 子图验证集** 上评估的结果。
83
+ - ** SLICE_SIZE** 表示使用SAHI工具切图后子图的边长大小,** OVERLAP_RATIO** 表示切图的子图之间的重叠率。
84
+ - VisDrone-DET的模型与[ 拼图模型] ( #拼图模型 ) 表格中的VisDrone-DET是** 同一个模型权重** ,但此处AP精度是在** 切图后的子图验证集** 上评估的结果。
67
85
68
86
69
87
### 拼图模型
@@ -74,8 +92,9 @@ PaddleDetection团队提供了针对VisDrone-DET、DOTA水平框、Xview等小
74
92
| PP-YOLOE-l (拼图评估)| VisDrone-DET| 640 | 0.25 | 10 | 37.2 | 59.4 | [ 下载链接] ( https://bj.bcebos.com/v1/paddledet/models/ppyoloe_crn_l_80e_sliced_visdrone_640_025.pdparams ) | [ 配置文件] ( ./ppyoloe_crn_l_80e_sliced_visdrone_640_025_slice_infer.yml ) |
75
93
76
94
** 注意:**
77
- - 上表中的模型均为使用** 切图后的子图** 训练,评估预测时分为两种,使用原图评估预测,和使用子图拼图评估预测 。
95
+ - 上表中的模型均为使用** 切图后的子图** 训练,评估预测时分为两种,** 直接使用原图 ** 评估预测,和 ** 使用子图自动拼成原图 ** 评估预测,AP精度均为 ** 原图验证集 ** 上评估的结果。 。
78
96
- ** SLICE_SIZE** 表示使用SAHI工具切图后子图的边长大小,** OVERLAP_RATIO** 表示切图的子图之间的重叠率。
97
+ - VisDrone-DET的模型与[ 切图模型] ( #切图模型 ) 表格中的VisDrone-DET是** 同一个模型权重** ,但此处AP精度是在** 原图验证集** 上评估的结果。
79
98
80
99
81
100
### 注意事项
0 commit comments