dronefreak commited on
Commit
1a4a6f1
·
verified ·
1 Parent(s): eafe723

Upload model artifacts

Browse files
.gitattributes CHANGED
@@ -33,3 +33,9 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ BoxF1_curve.png filter=lfs diff=lfs merge=lfs -text
37
+ BoxP_curve.png filter=lfs diff=lfs merge=lfs -text
38
+ BoxPR_curve.png filter=lfs diff=lfs merge=lfs -text
39
+ BoxR_curve.png filter=lfs diff=lfs merge=lfs -text
40
+ confusion_matrix.png filter=lfs diff=lfs merge=lfs -text
41
+ visdrone_showcase.gif filter=lfs diff=lfs merge=lfs -text
BoxF1_curve.png ADDED

Git LFS Details

  • SHA256: c24a2395346db01c84a3000adae89ba57d55bd4f598813c11d2ff2f010a377ab
  • Pointer size: 131 Bytes
  • Size of remote file: 344 kB
BoxPR_curve.png ADDED

Git LFS Details

  • SHA256: f15a24690ecaee9820019b6b82b5349545a0992a5841674769b860aaf049dddd
  • Pointer size: 131 Bytes
  • Size of remote file: 341 kB
BoxP_curve.png ADDED

Git LFS Details

  • SHA256: fbc46da491c31955aa4c9afc36bd8a800b9d68fc29e8b0e2d4d71acd299d50b9
  • Pointer size: 131 Bytes
  • Size of remote file: 379 kB
BoxR_curve.png ADDED

Git LFS Details

  • SHA256: a44e1acdd0d7d0ab2eccd9516cdaf1324977d9416281a7539b2f1c06df31f2a4
  • Pointer size: 131 Bytes
  • Size of remote file: 329 kB
README.md ADDED
@@ -0,0 +1,299 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+
4
+ pipeline_tag: object-detection
5
+
6
+ library_name: ultralytics
7
+
8
+ datasets:
9
+ - Voxel51/VisDrone2019-DET
10
+
11
+ tags:
12
+ - object-detection
13
+ - aerial-imagery
14
+ - drone
15
+ - visdrone
16
+ - ultralytics
17
+ - pytorch
18
+ - computer-vision
19
+
20
+ metrics:
21
+ - map50
22
+ - map50-95
23
+ - precision
24
+ - recall
25
+ - f1
26
+
27
+ base_model: "Ultralytics/YOLOv9"
28
+ ---
29
+
30
+
31
+ # YOLOv9m Finetuned on VisDrone
32
+
33
+ Fine-tuned YOLOv9m object detector for aerial imagery using the VisDrone benchmark dataset.
34
+
35
+ This model is part of the **VisDrone Detection Model Zoo**, a collection of YOLO models trained and evaluated under a common pipeline for aerial object detection.
36
+
37
+ ## Detection Showcase
38
+
39
+ <p align="center">
40
+ <img src="visdrone_showcase.gif" alt="VisDrone Detection Demo">
41
+ </p>
42
+
43
+ ---
44
+
45
+ ## Performance
46
+
47
+ | Metric | Score (%) |
48
+ | ---------- | --------------- |
49
+ | mAP@50 | 36.19 |
50
+ | mAP@50-95 | 20.95 |
51
+ | Precision | 51.05 |
52
+ | Recall | 39.12 |
53
+ | F1 Score | 44.3 |
54
+ | Parameters | - |
55
+ | FLOPs | - |
56
+
57
+ ---
58
+
59
+ ## Evaluation Protocol
60
+
61
+ Metrics reported in this model card are computed on the VisDrone test set with ground-truth annotations available for evaluation.
62
+
63
+ ---
64
+
65
+ ## VisDrone Model Zoo
66
+
67
+ | Rank | Model | mAP@50 | mAP@50-95 | Precision | Recall |
68
+ | -------------------------- | -------------------- | ------------- | --------------- | ----------------- | -------------- |
69
+ | | | | | | |
70
+ | 1 | YOLOv9e | 40.02 | 23.73 | 54.78 | 42.42 |
71
+ | | | | | | |
72
+ | 2 | YOLOv11x | 38.44 | 22.6 | 52.41 | 41.43 |
73
+ | | | | | | |
74
+ | 3 | YOLOv26x | 38.33 | 22.48 | 52.91 | 41.06 |
75
+ | | | | | | |
76
+ | 4 | YOLOv11l | 37.14 | 21.85 | 51.87 | 40.33 |
77
+ | | | | | | |
78
+ | 5 | YOLOv10x | 37.24 | 21.81 | 52.59 | 39.84 |
79
+ | | | | | | |
80
+ | 6 | YOLOv26l | 37.65 | 21.75 | 51.6 | 40.42 |
81
+ | | | | | | |
82
+ | 7 | YOLOv9c | 37.22 | 21.73 | 51.99 | 39.77 |
83
+ | | | | | | |
84
+ | 8 | YOLOv8x | 36.81 | 21.52 | 51.91 | 39.78 |
85
+ | | | | | | |
86
+ | 9 | YOLOv10l | 35.95 | 21.09 | 52.13 | 38.48 |
87
+ | | | | | | |
88
+ | 10 | YOLOv9m | 36.19 | 20.95 | 51.05 | 39.12 |
89
+ | | | | | | |
90
+ | 11 | YOLOv8m | 34.39 | 19.95 | 48.18 | 38.2 |
91
+ | | | | | | |
92
+ | 12 | YOLOv8s | 31.95 | 18.24 | 45.99 | 35.49 |
93
+ | | | | | | |
94
+ | 13 | YOLOv8n | 28.18 | 15.77 | 40.86 | 31.81 |
95
+ | | | | | | |
96
+ | 14 | YOLOv11n | 27.59 | 15.46 | 39.58 | 31.74 |
97
+ | | | | | | |
98
+ | 15 | YOLOv10n | 27.65 | 15.32 | 41.02 | 31.68 |
99
+ | | | | | | |
100
+ | 16 | YOLOv26n | 26.73 | 14.64 | 38.6 | 31.14 |
101
+ | | | | | | |
102
+
103
+ ---
104
+
105
+ ## Per-Class Performance
106
+
107
+ | Class | mAP@50 | mAP@50-95 |
108
+ | -------------------------- | --------------- | ----------------- |
109
+ | | | |
110
+ | pedestrian | 31.55 | 12.7 |
111
+ | | | |
112
+ | people | 17.29 | 5.86 |
113
+ | | | |
114
+ | bicycle | 14.21 | 6.0 |
115
+ | | | |
116
+ | car | 75.48 | 48.36 |
117
+ | | | |
118
+ | van | 40.72 | 27.28 |
119
+ | | | |
120
+ | truck | 45.28 | 29.8 |
121
+ | | | |
122
+ | tricycle | 23.65 | 12.25 |
123
+ | | | |
124
+ | awning-tricycle | 19.51 | 11.21 |
125
+ | | | |
126
+ | bus | 58.4 | 41.77 |
127
+ | | | |
128
+ | motor | 35.83 | 14.29 |
129
+ | | | |
130
+
131
+ ---
132
+
133
+ ## Evaluation Visualizations
134
+
135
+ ### Precision-Recall Curve
136
+
137
+ ![PR Curve](BoxPR_curve.png)
138
+
139
+ ### F1 Curve
140
+
141
+ ![F1 Curve](BoxF1_curve.png)
142
+
143
+ ### Confusion Matrix
144
+
145
+ ![Confusion Matrix](confusion_matrix.png)
146
+
147
+ ---
148
+
149
+ ## Dataset
150
+
151
+ VisDrone is a large-scale benchmark for object detection in aerial imagery captured from unmanned aerial vehicles (UAVs).
152
+
153
+ The dataset contains diverse scenes including:
154
+
155
+ * Urban environments
156
+ * Residential areas
157
+ * Traffic intersections
158
+ * Crowded pedestrian regions
159
+
160
+ ### Classes
161
+
162
+ * pedestrian
163
+ * people
164
+ * bicycle
165
+ * car
166
+ * van
167
+ * truck
168
+ * tricycle
169
+ * awning-tricycle
170
+ * bus
171
+ * motor
172
+
173
+ ---
174
+
175
+ ## Usage
176
+
177
+ ### Install Dependencies
178
+
179
+ ```bash
180
+ pip install ultralytics huggingface_hub
181
+ ```
182
+
183
+ ### Load Model from Hugging Face
184
+
185
+ ```python
186
+ from huggingface_hub import hf_hub_download
187
+ from ultralytics import YOLO
188
+
189
+ weights = hf_hub_download(
190
+ repo_id="dronefreak/yolov9m-visdrone",
191
+ filename="best.pt"
192
+ )
193
+
194
+ model = YOLO(weights)
195
+ ```
196
+
197
+ ### Run Inference
198
+
199
+ ```python
200
+ results = model.predict(
201
+ source="image.jpg",
202
+ conf=0.25
203
+ )
204
+
205
+ results[0].show()
206
+ ```
207
+
208
+ ---
209
+
210
+ ## Training Configuration
211
+
212
+ | Setting | Value |
213
+ | ---------------- | ------------------------------- |
214
+ | Epochs | 300 |
215
+ | Dataset | VisDrone2019-DET |
216
+ | Framework | Ultralytics YOLO |
217
+ | Training Toolkit | VisDrone Dataset Python Toolkit |
218
+
219
+ ---
220
+
221
+ ## Repository Contents
222
+
223
+ ```text
224
+ best.pt
225
+ results.csv
226
+ args.yaml
227
+ BoxPR_curve.png
228
+ BoxF1_curve.png
229
+ confusion_matrix.png
230
+ assets/visdrone_showcase.gif
231
+ README.md
232
+ ```
233
+
234
+ ---
235
+
236
+ ## Related Resources
237
+
238
+ * VisDrone Detection Model Zoo (Hugging Face Collection)
239
+ * VisDrone Dataset Python Toolkit: https://github.com/dronefreak/VisDrone-dataset-python-toolkit
240
+ * VisDrone Dataset: https://github.com/VisDrone/VisDrone-Dataset
241
+
242
+ ---
243
+
244
+ ## Training Framework
245
+
246
+ These models were trained using the VisDrone Dataset Python Toolkit, an open-source framework for aerial object detection research and benchmarking on the VisDrone dataset.
247
+
248
+ Features include:
249
+
250
+ * Dataset preparation and conversion utilities
251
+ * Training and evaluation pipelines
252
+ * Detection benchmarking
253
+ * Visualization tools
254
+ * Support for multiple YOLO model families
255
+
256
+ Repository:
257
+
258
+ https://github.com/dronefreak/VisDrone-dataset-python-toolkit
259
+
260
+ If you find these models useful, please consider starring the repository.
261
+
262
+ ---
263
+
264
+ ## Known Limitations
265
+
266
+ Performance may degrade in:
267
+
268
+ * Extremely dense crowds
269
+ * Heavy occlusions
270
+ * Severe motion blur
271
+ * Very small objects occupying only a few pixels
272
+ * Night-time or low-light aerial imagery
273
+
274
+ ---
275
+
276
+ ## Citation
277
+
278
+ If you use this model in your research, please consider citing:
279
+
280
+ 1. The VisDrone dataset
281
+ 2. The original YOLO architecture
282
+ 3. The VisDrone Detection Toolkit
283
+
284
+ ```bibtex
285
+ @article{visdrone2019,
286
+ title={Vision Meets Drones: A Challenge},
287
+ author={Zhu, Pengfei and Wen, Longyin and Du, Dawei and Bian, Xiao and Ling, Haibin and Hu, Qinghua},
288
+ journal={International Journal of Computer Vision},
289
+ year={2021}
290
+ }
291
+
292
+ @software{Saksena_VisDrone_Detection_Toolkit_2025,
293
+ author = {Saksena, Saumya Kumaar},
294
+ title = {VisDrone Detection Toolkit: Modern PyTorch Implementation for Aerial Object Detection},
295
+ url = {https://github.com/dronefreak/VisDrone-dataset-python-toolkit},
296
+ version = {2.0.0},
297
+ year = {2025}
298
+ }
299
+ ```
args.yaml ADDED
@@ -0,0 +1,110 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ task: detect
2
+ mode: train
3
+ model: yolov9m.pt
4
+ data: /tmp/visdrone_yolo_taxb635w/dataset.yaml
5
+ epochs: 300
6
+ time: null
7
+ patience: 100
8
+ batch: 16
9
+ imgsz: 640
10
+ save: true
11
+ save_period: -1
12
+ cache: false
13
+ device: '0'
14
+ workers: 4
15
+ project: /home/saumya.saksena/projects/VisDrone-dataset-python-toolkit/outputs/yolov9m_300ep
16
+ name: yolov9m
17
+ exist_ok: true
18
+ pretrained: true
19
+ optimizer: auto
20
+ verbose: true
21
+ seed: 0
22
+ deterministic: true
23
+ single_cls: false
24
+ rect: false
25
+ cos_lr: false
26
+ close_mosaic: 10
27
+ resume: false
28
+ amp: true
29
+ fraction: 1.0
30
+ profile: false
31
+ freeze: null
32
+ multi_scale: 0.0
33
+ compile: false
34
+ overlap_mask: true
35
+ mask_ratio: 4
36
+ dropout: 0.0
37
+ val: true
38
+ split: val
39
+ save_json: false
40
+ conf: null
41
+ iou: 0.7
42
+ max_det: 300
43
+ half: false
44
+ dnn: false
45
+ plots: true
46
+ end2end: null
47
+ source: null
48
+ vid_stride: 1
49
+ stream_buffer: false
50
+ visualize: false
51
+ augment: false
52
+ agnostic_nms: false
53
+ classes: null
54
+ retina_masks: false
55
+ embed: null
56
+ show: false
57
+ save_frames: false
58
+ save_txt: false
59
+ save_conf: false
60
+ save_crop: false
61
+ show_labels: true
62
+ show_conf: true
63
+ show_boxes: true
64
+ line_width: null
65
+ format: torchscript
66
+ keras: false
67
+ optimize: false
68
+ int8: false
69
+ dynamic: false
70
+ simplify: true
71
+ opset: null
72
+ workspace: null
73
+ nms: false
74
+ lr0: 0.005
75
+ lrf: 0.01
76
+ momentum: 0.937
77
+ weight_decay: 0.0005
78
+ warmup_epochs: 3.0
79
+ warmup_momentum: 0.8
80
+ warmup_bias_lr: 0.1
81
+ box: 7.5
82
+ cls: 0.5
83
+ cls_pw: 0.0
84
+ dfl: 1.5
85
+ pose: 12.0
86
+ kobj: 1.0
87
+ rle: 1.0
88
+ angle: 1.0
89
+ nbs: 64
90
+ hsv_h: 0.015
91
+ hsv_s: 0.7
92
+ hsv_v: 0.4
93
+ degrees: 0.0
94
+ translate: 0.1
95
+ scale: 0.5
96
+ shear: 0.0
97
+ perspective: 0.0
98
+ flipud: 0.0
99
+ fliplr: 0.5
100
+ bgr: 0.0
101
+ mosaic: 1.0
102
+ mixup: 0.0
103
+ cutmix: 0.0
104
+ copy_paste: 0.0
105
+ copy_paste_mode: flip
106
+ auto_augment: randaugment
107
+ erasing: 0.4
108
+ cfg: null
109
+ tracker: botsort.yaml
110
+ save_dir: /home/saumya.saksena/projects/VisDrone-dataset-python-toolkit/outputs/yolov9m_300ep/yolov9m
best.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2578710ee554b9a220534afaf599a7f4387d8a41c4a503891cc98154d81af601
3
+ size 40847586
confusion_matrix.png ADDED

Git LFS Details

  • SHA256: 6dd1357cdef8f2a125b2c1974f9cfe262a0e02d305b6fa6175c47f648e85ce90
  • Pointer size: 131 Bytes
  • Size of remote file: 297 kB
visdrone_showcase.gif ADDED

Git LFS Details

  • SHA256: 4e48f511283b711b5a951fedb71d53fd0a519c3938fd10d3fd01de869e16b2ee
  • Pointer size: 133 Bytes
  • Size of remote file: 43.6 MB