dgenerate-ultralytics-headless 8.3.196__py3-none-any.whl → 8.3.198__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {dgenerate_ultralytics_headless-8.3.196.dist-info → dgenerate_ultralytics_headless-8.3.198.dist-info}/METADATA +1 -1
- {dgenerate_ultralytics_headless-8.3.196.dist-info → dgenerate_ultralytics_headless-8.3.198.dist-info}/RECORD +46 -45
- tests/test_engine.py +9 -1
- ultralytics/__init__.py +1 -1
- ultralytics/cfg/__init__.py +0 -1
- ultralytics/cfg/datasets/construction-ppe.yaml +32 -0
- ultralytics/cfg/default.yaml +96 -94
- ultralytics/cfg/trackers/botsort.yaml +16 -17
- ultralytics/cfg/trackers/bytetrack.yaml +9 -11
- ultralytics/data/augment.py +1 -1
- ultralytics/data/dataset.py +1 -1
- ultralytics/engine/exporter.py +36 -35
- ultralytics/engine/model.py +1 -2
- ultralytics/engine/predictor.py +1 -2
- ultralytics/engine/results.py +1 -1
- ultralytics/engine/trainer.py +8 -10
- ultralytics/engine/tuner.py +54 -32
- ultralytics/models/sam/modules/decoders.py +3 -3
- ultralytics/models/sam/modules/sam.py +5 -5
- ultralytics/models/sam/predict.py +11 -11
- ultralytics/models/yolo/classify/train.py +2 -7
- ultralytics/models/yolo/classify/val.py +2 -2
- ultralytics/models/yolo/detect/predict.py +1 -1
- ultralytics/models/yolo/detect/train.py +1 -11
- ultralytics/models/yolo/detect/val.py +4 -4
- ultralytics/models/yolo/obb/val.py +3 -3
- ultralytics/models/yolo/pose/predict.py +1 -1
- ultralytics/models/yolo/pose/train.py +0 -7
- ultralytics/models/yolo/pose/val.py +2 -2
- ultralytics/models/yolo/segment/predict.py +2 -2
- ultralytics/models/yolo/segment/train.py +0 -6
- ultralytics/models/yolo/segment/val.py +13 -11
- ultralytics/models/yolo/yoloe/val.py +1 -1
- ultralytics/nn/modules/block.py +1 -1
- ultralytics/nn/modules/head.py +1 -2
- ultralytics/nn/tasks.py +2 -2
- ultralytics/utils/checks.py +1 -1
- ultralytics/utils/loss.py +1 -2
- ultralytics/utils/metrics.py +6 -6
- ultralytics/utils/nms.py +8 -14
- ultralytics/utils/plotting.py +22 -36
- ultralytics/utils/torch_utils.py +9 -27
- {dgenerate_ultralytics_headless-8.3.196.dist-info → dgenerate_ultralytics_headless-8.3.198.dist-info}/WHEEL +0 -0
- {dgenerate_ultralytics_headless-8.3.196.dist-info → dgenerate_ultralytics_headless-8.3.198.dist-info}/entry_points.txt +0 -0
- {dgenerate_ultralytics_headless-8.3.196.dist-info → dgenerate_ultralytics_headless-8.3.198.dist-info}/licenses/LICENSE +0 -0
- {dgenerate_ultralytics_headless-8.3.196.dist-info → dgenerate_ultralytics_headless-8.3.198.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: dgenerate-ultralytics-headless
|
3
|
-
Version: 8.3.
|
3
|
+
Version: 8.3.198
|
4
4
|
Summary: Automatically built Ultralytics package with python-opencv-headless dependency instead of python-opencv
|
5
5
|
Author-email: Glenn Jocher <glenn.jocher@ultralytics.com>, Jing Qiu <jing.qiu@ultralytics.com>
|
6
6
|
Maintainer-email: Ultralytics <hello@ultralytics.com>
|
@@ -1,19 +1,19 @@
|
|
1
|
-
dgenerate_ultralytics_headless-8.3.
|
1
|
+
dgenerate_ultralytics_headless-8.3.198.dist-info/licenses/LICENSE,sha256=DZak_2itbUtvHzD3E7GNUYSRK6jdOJ-GqncQ2weavLA,34523
|
2
2
|
tests/__init__.py,sha256=b4KP5_q-2IO8Br8YHOSLYnn7IwZS81l_vfEF2YPa2lM,894
|
3
3
|
tests/conftest.py,sha256=LXtQJcFNWPGuzauTGkiXgsvVC3llJKfg22WcmhRzuQc,2593
|
4
4
|
tests/test_cli.py,sha256=EMf5gTAopOnIz8VvzaM-Qb044o7D0flnUHYQ-2ffOM4,5670
|
5
5
|
tests/test_cuda.py,sha256=Z-MX1aIBQyt_fAAgKxBEznE0Mj7caSwrctW9z__NGzU,8240
|
6
|
-
tests/test_engine.py,sha256=
|
6
|
+
tests/test_engine.py,sha256=8W4_D48ZBUp-DsUlRYxHTXzougycY8yggvpbVwQDLPg,5025
|
7
7
|
tests/test_exports.py,sha256=dWuroSyqXnrc0lE-RNTf7pZoXXXEkOs31u7nhOiEHS0,10994
|
8
8
|
tests/test_integrations.py,sha256=kl_AKmE_Qs1GB0_91iVwbzNxofm_hFTt0zzU6JF-pg4,6323
|
9
9
|
tests/test_python.py,sha256=2V23f2-JQsO-K4p1kj0IkCRxHykGwgd0edKJzRsBgdI,27911
|
10
10
|
tests/test_solutions.py,sha256=6wJ9-lhyWSAm7zaR4D9L_DrUA3iJU1NgqmbQO6PIuvo,13211
|
11
|
-
ultralytics/__init__.py,sha256=
|
11
|
+
ultralytics/__init__.py,sha256=CJCtY5CCo6PMK1UGpJetRmcryk-2hqIbQI0Qy7O723Q,730
|
12
12
|
ultralytics/py.typed,sha256=la67KBlbjXN-_-DfGNcdOcjYumVpKG_Tkw-8n5dnGB4,8
|
13
13
|
ultralytics/assets/bus.jpg,sha256=wCAZxJecGR63Od3ZRERe9Aja1Weayrb9Ug751DS_vGM,137419
|
14
14
|
ultralytics/assets/zidane.jpg,sha256=Ftc4aeMmen1O0A3o6GCDO9FlfBslLpTAw0gnetx7bts,50427
|
15
|
-
ultralytics/cfg/__init__.py,sha256=
|
16
|
-
ultralytics/cfg/default.yaml,sha256=
|
15
|
+
ultralytics/cfg/__init__.py,sha256=xX7qUxdcDgcjCKoQFEVQgzrwZodeKTF88CTKZe05d0Y,39955
|
16
|
+
ultralytics/cfg/default.yaml,sha256=awOQl-PS3Rb6prD0IjbFh0lOhKSjqEvroOmJB3W0AS0,8887
|
17
17
|
ultralytics/cfg/datasets/Argoverse.yaml,sha256=J4ItoUlE_EiYTmp1DFKYHfbqHkj8j4wUtRJQhaMIlBM,3275
|
18
18
|
ultralytics/cfg/datasets/DOTAv1.5.yaml,sha256=VZ_KKFX0H2YvlFVJ8JHcLWYBZ2xiQ6Z-ROSTiKWpS7c,1211
|
19
19
|
ultralytics/cfg/datasets/DOTAv1.yaml,sha256=JrDuYcQ0JU9lJlCA-dCkMNko_jaj6MAVGHjsfjeZ_u0,1181
|
@@ -36,6 +36,7 @@ ultralytics/cfg/datasets/coco8-multispectral.yaml,sha256=nlU4W0d8rl1cVChthOk0NIm
|
|
36
36
|
ultralytics/cfg/datasets/coco8-pose.yaml,sha256=GfSONSl-Oh4QErto91E_ws3im9ZTEYmDMaPOaSLLdV8,1009
|
37
37
|
ultralytics/cfg/datasets/coco8-seg.yaml,sha256=Ez42ZE6xHlj8lcjtMBJJP2Y460q2BuiwRfk090XnBgE,1913
|
38
38
|
ultralytics/cfg/datasets/coco8.yaml,sha256=tzrDY1KW82AHsgpCxte_yPkgMIIpNY6Pb4F46TDPxkk,1888
|
39
|
+
ultralytics/cfg/datasets/construction-ppe.yaml,sha256=pSU9yaAXV369EYQJymNtFQbS_XH4V369gPKKjDrb4ho,1008
|
39
40
|
ultralytics/cfg/datasets/crack-seg.yaml,sha256=fqvSIq1fRXO55V_g2T92hcYAVoKBHZsSZQR7CokoPUI,837
|
40
41
|
ultralytics/cfg/datasets/dog-pose.yaml,sha256=sRU1JDtEC4nLVf2vkn7lxbp4ILWNcgE-ok96rxZv2lc,908
|
41
42
|
ultralytics/cfg/datasets/dota8-multispectral.yaml,sha256=2lMBi1Q3_pc0auK00yX80oF7oUMo0bUlwjkOrp33hvs,1216
|
@@ -103,15 +104,15 @@ ultralytics/cfg/models/v9/yolov9e.yaml,sha256=Olr2PlADpkD6N1TiVyAJEMzkrA7SbNul1n
|
|
103
104
|
ultralytics/cfg/models/v9/yolov9m.yaml,sha256=WcKQ3xRsC1JMgA42Hx4xzr4FZmtE6B3wKvqhlQxkqw8,1411
|
104
105
|
ultralytics/cfg/models/v9/yolov9s.yaml,sha256=j_v3JWaPtiuM8aKJt15Z_4HPRCoHWn_G6Z07t8CZyjk,1391
|
105
106
|
ultralytics/cfg/models/v9/yolov9t.yaml,sha256=Q8GpSXE7fumhuJiQg4a2SkuS_UmnXqp-eoZxW_C0vEo,1375
|
106
|
-
ultralytics/cfg/trackers/botsort.yaml,sha256=
|
107
|
-
ultralytics/cfg/trackers/bytetrack.yaml,sha256=
|
107
|
+
ultralytics/cfg/trackers/botsort.yaml,sha256=tRxC-qT4Wz0mLn5x7ZEwrqgGKrmTDVY7gMge-mhpe7U,1431
|
108
|
+
ultralytics/cfg/trackers/bytetrack.yaml,sha256=7LS1ObP5u7BUFcmeY6L2m3bRuPUktnpJspFKd_ElVWc,908
|
108
109
|
ultralytics/data/__init__.py,sha256=nAXaL1puCc7z_NjzQNlJnhbVhT9Fla2u7Dsqo7q1dAc,644
|
109
110
|
ultralytics/data/annotator.py,sha256=f15TCDEM8SuuzHiFB8oyhTy9vfywKmPTLSPAgsZQP9I,2990
|
110
|
-
ultralytics/data/augment.py,sha256=
|
111
|
+
ultralytics/data/augment.py,sha256=7NsRCYu_uM6KkpU0F03NC9Ra_GQVGp2dRO1RksrrU38,132897
|
111
112
|
ultralytics/data/base.py,sha256=gWoGFifyNe1TCwtGdGp5jzKOQ9sh4b-XrfyN0PPvRaY,19661
|
112
113
|
ultralytics/data/build.py,sha256=Bhu8E-FNSkTbz6YpNXeUBmQtN91ZtZxOCUiKYXgzV-c,11778
|
113
114
|
ultralytics/data/converter.py,sha256=N1YFD0mG7uwL12wMcuVtF2zbISBIzTsGiy1QioDTDGs,32049
|
114
|
-
ultralytics/data/dataset.py,sha256=
|
115
|
+
ultralytics/data/dataset.py,sha256=GL6J_fvluaF2Ck1in3W5q3Xm7lRcUd6Amgd_uu6r_FM,36772
|
115
116
|
ultralytics/data/loaders.py,sha256=sfQ0C86uBg9QQbN3aU0W8FIjGQmMdJTQAMK4DA1bjk8,31748
|
116
117
|
ultralytics/data/split.py,sha256=5ubnL_wsEutFQOj4I4K01L9UpZrrO_vO3HrydSLJyIY,5107
|
117
118
|
ultralytics/data/split_dota.py,sha256=Lz04qVufTvHn4cTyo3VkqoIM93rb-Ymr8uOIXeSsaJI,12910
|
@@ -121,12 +122,12 @@ ultralytics/data/scripts/get_coco.sh,sha256=UuJpJeo3qQpTHVINeOpmP0NYmg8PhEFE3A8J
|
|
121
122
|
ultralytics/data/scripts/get_coco128.sh,sha256=qmRQl_hOKrsdHrTrnyQuFIH01oDz3lfaz138OgGfLt8,650
|
122
123
|
ultralytics/data/scripts/get_imagenet.sh,sha256=hr42H16bM47iT27rgS7MpEo-GeOZAYUQXgr0B2cwn48,1705
|
123
124
|
ultralytics/engine/__init__.py,sha256=lm6MckFYCPTbqIoX7w0s_daxdjNeBeKW6DXppv1-QUM,70
|
124
|
-
ultralytics/engine/exporter.py,sha256=
|
125
|
-
ultralytics/engine/model.py,sha256=
|
126
|
-
ultralytics/engine/predictor.py,sha256=
|
127
|
-
ultralytics/engine/results.py,sha256=
|
128
|
-
ultralytics/engine/trainer.py,sha256=
|
129
|
-
ultralytics/engine/tuner.py,sha256=
|
125
|
+
ultralytics/engine/exporter.py,sha256=rz0CAzezUXdQuL1UUhgSIl4-TUu5eVuB6CBA4wh7HTc,74836
|
126
|
+
ultralytics/engine/model.py,sha256=iwwaL2NR5NSwQ7R3juHzS3ds9W-CfhC_CjUcwMvcgsk,53426
|
127
|
+
ultralytics/engine/predictor.py,sha256=4lfw2RbBDE7939011FcSCuznscrcnMuabZtc8GXaKO4,22735
|
128
|
+
ultralytics/engine/results.py,sha256=uQ_tgvdxKAg28pRgb5WCHiqx9Ktu7wYiVbwZy_IJ5bo,71499
|
129
|
+
ultralytics/engine/trainer.py,sha256=aFGnBYH9xgS2qgZc-QdgRaiMxGOeeu27dWc31hsOAvo,41030
|
130
|
+
ultralytics/engine/tuner.py,sha256=__OaI1oS3J37iqwruojxcnCYi6L7bgXmZ3bzNvinZk4,21409
|
130
131
|
ultralytics/engine/validator.py,sha256=7tADPOXRZz0Yi7F-Z5SxcUnwytaa2MfbtuSdO8pp_l4,16966
|
131
132
|
ultralytics/hub/__init__.py,sha256=xCF02lzlPKbdmGfO3NxLuXl5Kb0MaBZp_-fAWDHZ8zw,6698
|
132
133
|
ultralytics/hub/auth.py,sha256=RIwZDWfW6vS2yGpZKR0xVl0-38itJYEFtmqY_M70bl8,6304
|
@@ -152,13 +153,13 @@ ultralytics/models/sam/__init__.py,sha256=4VtjxrbrSsqBvteaD_CwA4Nj3DdSUG1MknymtW
|
|
152
153
|
ultralytics/models/sam/amg.py,sha256=sNSBMacS5VKx4NnzdYwBPKJniMNuhpi8VzOMjitGwvo,11821
|
153
154
|
ultralytics/models/sam/build.py,sha256=JEGNXDtBtzp7VIcaYyup7Rwqf1ETSEcX1E1mqBmbMgU,12629
|
154
155
|
ultralytics/models/sam/model.py,sha256=qV8tlHQA1AHUqGkWbwtI7cLw0Rgy3a4X9S2c_wu5fh4,7237
|
155
|
-
ultralytics/models/sam/predict.py,sha256=
|
156
|
+
ultralytics/models/sam/predict.py,sha256=jjAIrwEUsNZoQyZwDCRcCwNoPTbfi1FXEkw7HP-eK40,105001
|
156
157
|
ultralytics/models/sam/modules/__init__.py,sha256=lm6MckFYCPTbqIoX7w0s_daxdjNeBeKW6DXppv1-QUM,70
|
157
158
|
ultralytics/models/sam/modules/blocks.py,sha256=KATWIut_HO4E_8dGdvv5gt1_r8yUVXw1jkyN_bvRAYQ,46055
|
158
|
-
ultralytics/models/sam/modules/decoders.py,sha256=
|
159
|
+
ultralytics/models/sam/modules/decoders.py,sha256=PGNNpy1ttAy6xV_ERW1Ld3Kf9LGDG3mibOss0SeHAis,25623
|
159
160
|
ultralytics/models/sam/modules/encoders.py,sha256=VOgwSDFep_zqssESz8mNDPDdJfQmP97kHVN-MrExGnk,37326
|
160
161
|
ultralytics/models/sam/modules/memory_attention.py,sha256=BOkV6ULHc0Iiw_tHcNYosYrZ1tAXyC0DG46ktQzR91E,13638
|
161
|
-
ultralytics/models/sam/modules/sam.py,sha256=
|
162
|
+
ultralytics/models/sam/modules/sam.py,sha256=Ys9sSfRIhP3sxgZolGynpJQhJQgU6ydEW8Wb07HneYg,55624
|
162
163
|
ultralytics/models/sam/modules/tiny_encoder.py,sha256=fSxTByC7OSmHYg93KylsFayh6nPdlidRk1BORh6X-p0,42199
|
163
164
|
ultralytics/models/sam/modules/transformer.py,sha256=UdZdhGQYYPTU6R4A4Yyy-hElQLCG7nX726iTKaV977A,14958
|
164
165
|
ultralytics/models/sam/modules/utils.py,sha256=XReheR5K0jbTKYy5k_iSC1vocUndi8aBkesz-n6Pl9g,16045
|
@@ -169,24 +170,24 @@ ultralytics/models/yolo/__init__.py,sha256=or0j5xvcM0usMlsFTYhNAOcQUri7reD0cD9JR
|
|
169
170
|
ultralytics/models/yolo/model.py,sha256=b_F1AeBUgiSssRxZ-rGQVdB0a37rDG92h_03o0N29B8,18761
|
170
171
|
ultralytics/models/yolo/classify/__init__.py,sha256=9--HVaNOfI1K7rn_rRqclL8FUAnpfeBrRqEQIaQw2xM,383
|
171
172
|
ultralytics/models/yolo/classify/predict.py,sha256=o7pDE8xwjkHUUIIOph7ZVQZyGZyob24dYDQ460v_7R0,4149
|
172
|
-
ultralytics/models/yolo/classify/train.py,sha256=
|
173
|
-
ultralytics/models/yolo/classify/val.py,sha256=
|
173
|
+
ultralytics/models/yolo/classify/train.py,sha256=BpzPNBJ3F_cg4VqnIiDZVwdUslTTZB9FoDAywhGqbXg,9612
|
174
|
+
ultralytics/models/yolo/classify/val.py,sha256=SslmUSnOAgw1vvFQ4hFbdxuOq8dgfAgGd4D6mpZphZA,10047
|
174
175
|
ultralytics/models/yolo/detect/__init__.py,sha256=GIRsLYR-kT4JJx7lh4ZZAFGBZj0aebokuU0A7JbjDVA,257
|
175
|
-
ultralytics/models/yolo/detect/predict.py,sha256=
|
176
|
-
ultralytics/models/yolo/detect/train.py,sha256=
|
177
|
-
ultralytics/models/yolo/detect/val.py,sha256=
|
176
|
+
ultralytics/models/yolo/detect/predict.py,sha256=Vtpqb2gHI7hv9TaBBXsnoScQ8HrSnj0PPOkEu07MwLc,5394
|
177
|
+
ultralytics/models/yolo/detect/train.py,sha256=QT_ItVx1ss6Iui8LIV4n0rY9QZKIKYTnQnFkTRo5cLo,10532
|
178
|
+
ultralytics/models/yolo/detect/val.py,sha256=xjfkgeiTRG_m-0hlAZrIyklxB6-ApCBLaC-R_Te8fP8,21329
|
178
179
|
ultralytics/models/yolo/obb/__init__.py,sha256=tQmpG8wVHsajWkZdmD6cjGohJ4ki64iSXQT8JY_dydo,221
|
179
180
|
ultralytics/models/yolo/obb/predict.py,sha256=4r1eSld6TNJlk9JG56e-DX6oPL8uBBqiuztyBpxWlHE,2888
|
180
181
|
ultralytics/models/yolo/obb/train.py,sha256=BbehrsKP0lHRV3v7rrw8wAeiDdc-szbhHAmDy0OdhoM,3461
|
181
|
-
ultralytics/models/yolo/obb/val.py,sha256=
|
182
|
+
ultralytics/models/yolo/obb/val.py,sha256=9jMnBRIqPkCzY21CSiuP3LL4qpBEY-pnEgKQSi4bEJ0,14187
|
182
183
|
ultralytics/models/yolo/pose/__init__.py,sha256=63xmuHZLNzV8I76HhVXAq4f2W0KTk8Oi9eL-Y204LyQ,227
|
183
|
-
ultralytics/models/yolo/pose/predict.py,sha256=
|
184
|
-
ultralytics/models/yolo/pose/train.py,sha256=
|
185
|
-
ultralytics/models/yolo/pose/val.py,sha256=
|
184
|
+
ultralytics/models/yolo/pose/predict.py,sha256=3fgu4EKcVRKlP7fySDVsngl4ufk2f71P8SLbfRU2KgE,3747
|
185
|
+
ultralytics/models/yolo/pose/train.py,sha256=AstxnvJcoF5qnDEZSs45U2cGdMdSltX1HuSVwCZqMHQ,4712
|
186
|
+
ultralytics/models/yolo/pose/val.py,sha256=MK-GueXmXrl7eZ5WHYjJMghE4AYJTEut7AuS-G5D1gw,12650
|
186
187
|
ultralytics/models/yolo/segment/__init__.py,sha256=3IThhZ1wlkY9FvmWm9cE-5-ZyE6F1FgzAtQ6jOOFzzw,275
|
187
|
-
ultralytics/models/yolo/segment/predict.py,sha256=
|
188
|
-
ultralytics/models/yolo/segment/train.py,sha256=
|
189
|
-
ultralytics/models/yolo/segment/val.py,sha256=
|
188
|
+
ultralytics/models/yolo/segment/predict.py,sha256=HePes5rQ9v3iTCpn3vrIee0SsAsJuJm-X7tHA8Tixc8,5384
|
189
|
+
ultralytics/models/yolo/segment/train.py,sha256=5aPK5FDHLzbXb3R5TCpsAr1O6-8rtupOIoDokY8bSDs,3032
|
190
|
+
ultralytics/models/yolo/segment/val.py,sha256=fJLDJpK1RZgeMvmtf47BjHhZ9lzX_4QfUuBzGXZqIhA,11289
|
190
191
|
ultralytics/models/yolo/world/__init__.py,sha256=nlh8I6t8hMGz_vZg8QSlsUW1R-2eKvn9CGUoPPQEGhA,131
|
191
192
|
ultralytics/models/yolo/world/train.py,sha256=zVPtVoBedberGkth3tPuIH665HjGNJvTMLw_wLZQM84,7870
|
192
193
|
ultralytics/models/yolo/world/train_world.py,sha256=9p9YIckrATaJjGOrpmuC8MbZX9qdoCPCEV9EGZ0sExg,9553
|
@@ -194,16 +195,16 @@ ultralytics/models/yolo/yoloe/__init__.py,sha256=6SLytdJtwu37qewf7CobG7C7Wl1m-xt
|
|
194
195
|
ultralytics/models/yolo/yoloe/predict.py,sha256=pcbAUbosr1Xc436MfQi6ah3MQ6kkPzjOcltmdA3VMDE,7124
|
195
196
|
ultralytics/models/yolo/yoloe/train.py,sha256=jcXqGm8CReOCVMFLk-1bNe0Aw5PWaaQa8xBWxtrt5TY,13571
|
196
197
|
ultralytics/models/yolo/yoloe/train_seg.py,sha256=aCV7M8oQOvODFnU4piZdJh3tIrBJYAzZfRVRx1vRgxo,4956
|
197
|
-
ultralytics/models/yolo/yoloe/val.py,sha256=
|
198
|
+
ultralytics/models/yolo/yoloe/val.py,sha256=5Gd9EoFH0FmKKvWXBl4J7gBe9DVxIczN-s3ceHwdUDo,9458
|
198
199
|
ultralytics/nn/__init__.py,sha256=PJgOn2phQTTBR2P3s_JWvGeGXQpvw1znsumKow4tCuE,545
|
199
200
|
ultralytics/nn/autobackend.py,sha256=WWHIFvCI47Wpe3NCDkoUg3esjOTJ0XGEzG3luA_uG-8,41063
|
200
|
-
ultralytics/nn/tasks.py,sha256=
|
201
|
+
ultralytics/nn/tasks.py,sha256=M8l92qxDEi_-PqX2xbIrvMBi_5cSwr8wPod0BxJIZ4I,70416
|
201
202
|
ultralytics/nn/text_model.py,sha256=pHqnKe8UueR1MuwJcIE_IvrnYIlt68QL796xjcRJs2A,15275
|
202
203
|
ultralytics/nn/modules/__init__.py,sha256=BPMbEm1daI7Tuds3zph2_afAX7Gq1uAqK8BfiCfKTZs,3198
|
203
204
|
ultralytics/nn/modules/activation.py,sha256=75JcIMH2Cu9GTC2Uf55r_5YLpxcrXQDaVoeGQ0hlUAU,2233
|
204
|
-
ultralytics/nn/modules/block.py,sha256
|
205
|
+
ultralytics/nn/modules/block.py,sha256=-5RfsA_ljekL8_bQPGupSn9dVcZ8V_lVsOGlhzIW1kg,70622
|
205
206
|
ultralytics/nn/modules/conv.py,sha256=U6P1ZuzQmIf09noKwp7syuWn-M98Tly2wMWOsDT3kOI,21457
|
206
|
-
ultralytics/nn/modules/head.py,sha256=
|
207
|
+
ultralytics/nn/modules/head.py,sha256=7-WuatR32jpuqR5IhwHuheAwAn_izX7e7cPOHEg7MmI,53556
|
207
208
|
ultralytics/nn/modules/transformer.py,sha256=l6NuuFF7j_bogcNULHBBdj5l6sf7MwiVEGz8XcRyTUM,31366
|
208
209
|
ultralytics/nn/modules/utils.py,sha256=rn8yTObZGkQoqVzjbZWLaHiytppG4ffjMME4Lw60glM,6092
|
209
210
|
ultralytics/solutions/__init__.py,sha256=ZoeAQavTLp8aClnhZ9tbl6lxy86GxofyGvZWTx2aWkI,1209
|
@@ -240,7 +241,7 @@ ultralytics/utils/__init__.py,sha256=whSIuj-0lV0SAp4YjOeBJZ2emP1Qa8pqLnrhRiwl2Qs
|
|
240
241
|
ultralytics/utils/autobatch.py,sha256=i6KYLLSItKP1Q2IUlTPHrZhjcxl7UOjs0Seb8bF8pvM,5124
|
241
242
|
ultralytics/utils/autodevice.py,sha256=d9yq6eEn05fdfzfpxeSECd0YEO61er5f7T-0kjLdofg,8843
|
242
243
|
ultralytics/utils/benchmarks.py,sha256=lcIr--oKK0TCjUVbvrm-NtYrnszrEMuHJC9__ziM7y8,31458
|
243
|
-
ultralytics/utils/checks.py,sha256=
|
244
|
+
ultralytics/utils/checks.py,sha256=Uigc10tev2z9pLjjdYwCYkQ4BrjKmurOX2nYd6liqvU,34510
|
244
245
|
ultralytics/utils/cpu.py,sha256=OPlVxROWhQp-kEa9EkeNRKRQ-jz0KwySu5a-h91JZjk,3634
|
245
246
|
ultralytics/utils/dist.py,sha256=g7OKPrSgjIB2wgcncSFYtFuR-uW6J0-Y1z76k4gDSz0,4170
|
246
247
|
ultralytics/utils/downloads.py,sha256=JIlHfUg-qna5aOHRJupH7d5zob2qGZtRrs86Cp3zOJs,23029
|
@@ -251,14 +252,14 @@ ultralytics/utils/files.py,sha256=kxE2rkBuZL288nSN7jxLljmDnBgc16rekEXeRjhbUoo,82
|
|
251
252
|
ultralytics/utils/git.py,sha256=DcaxKNQfCiG3cxdzuw7M6l_VXgaSVqkERQt_vl8UyXM,5512
|
252
253
|
ultralytics/utils/instance.py,sha256=_b_jMTECWJGzncCiTg7FtTDSSeXGnbiAhaJhIsqbn9k,19043
|
253
254
|
ultralytics/utils/logger.py,sha256=o_vH4CCgQat6_Sbmwm1sUAJ4muAgVcsUed-WqpGNQZw,15129
|
254
|
-
ultralytics/utils/loss.py,sha256=
|
255
|
-
ultralytics/utils/metrics.py,sha256=
|
256
|
-
ultralytics/utils/nms.py,sha256=
|
255
|
+
ultralytics/utils/loss.py,sha256=wJ0F2DpRTI9-e9adxIm2io0zcXRa0RTWFTOc7WmS1-A,39827
|
256
|
+
ultralytics/utils/metrics.py,sha256=42zu-qeSvtL4JtvFDQy-7_5OJLwU4M8b5V8uRHBPFUQ,68829
|
257
|
+
ultralytics/utils/nms.py,sha256=AVOmPuUTEJqmq2J6rvjq-nHNxYIyabgzHdc41siyA0w,14161
|
257
258
|
ultralytics/utils/ops.py,sha256=PW3fgw1d18CA2ZNQZVJqUy054cJ_9tIcxd1XnA0FPgU,26905
|
258
259
|
ultralytics/utils/patches.py,sha256=0-2G4jXCIPnMonlft-cPcjfFcOXQS6ODwUDNUwanfg4,6541
|
259
|
-
ultralytics/utils/plotting.py,sha256=
|
260
|
+
ultralytics/utils/plotting.py,sha256=7nnd6Idd8h5c-IUYBQkd-ESy0v_MEME5-s_nom60geU,46931
|
260
261
|
ultralytics/utils/tal.py,sha256=LrziY_ZHz4wln3oOnqAzgyPaXKoup17Sa103BpuaQFU,20935
|
261
|
-
ultralytics/utils/torch_utils.py,sha256=
|
262
|
+
ultralytics/utils/torch_utils.py,sha256=sJe55d23vjnqte9nRipaJu6I9hdWRHdQqoUz8axEWOA,43072
|
262
263
|
ultralytics/utils/tqdm.py,sha256=ny5RIg2OTkWQ7gdaXfYaoIgR0Xn2_hNGB6tUpO2Unns,16137
|
263
264
|
ultralytics/utils/triton.py,sha256=fbMfTAUyoGiyslWtySzLZw53XmZJa7rF31CYFot0Wjs,5422
|
264
265
|
ultralytics/utils/tuner.py,sha256=9D4dSIvwwxcNSJcH2QJ92qiIVi9zu-1L7_PBZ8okDyE,6816
|
@@ -274,8 +275,8 @@ ultralytics/utils/callbacks/platform.py,sha256=a7T_8htoBB0uX1WIc392UJnhDjxkRyQMv
|
|
274
275
|
ultralytics/utils/callbacks/raytune.py,sha256=S6Bq16oQDQ8BQgnZzA0zJHGN_BBr8iAM_WtGoLiEcwg,1283
|
275
276
|
ultralytics/utils/callbacks/tensorboard.py,sha256=_4nfGK1dDLn6ijpvphBDhc-AS8qhS3jjY2CAWB7SNF0,5283
|
276
277
|
ultralytics/utils/callbacks/wb.py,sha256=ngQO8EJ1kxJDF1YajScVtzBbm26jGuejA0uWeOyvf5A,7685
|
277
|
-
dgenerate_ultralytics_headless-8.3.
|
278
|
-
dgenerate_ultralytics_headless-8.3.
|
279
|
-
dgenerate_ultralytics_headless-8.3.
|
280
|
-
dgenerate_ultralytics_headless-8.3.
|
281
|
-
dgenerate_ultralytics_headless-8.3.
|
278
|
+
dgenerate_ultralytics_headless-8.3.198.dist-info/METADATA,sha256=Ah2RPt1W9VVSvT_SmmMYgjpNLJwqQzgA98Ofzn7OYpY,38763
|
279
|
+
dgenerate_ultralytics_headless-8.3.198.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
280
|
+
dgenerate_ultralytics_headless-8.3.198.dist-info/entry_points.txt,sha256=YM_wiKyTe9yRrsEfqvYolNO5ngwfoL4-NwgKzc8_7sI,93
|
281
|
+
dgenerate_ultralytics_headless-8.3.198.dist-info/top_level.txt,sha256=XP49TwiMw4QGsvTLSYiJhz1xF_k7ev5mQ8jJXaXi45Q,12
|
282
|
+
dgenerate_ultralytics_headless-8.3.198.dist-info/RECORD,,
|
tests/test_engine.py
CHANGED
@@ -67,7 +67,15 @@ def test_detect():
|
|
67
67
|
|
68
68
|
def test_segment():
|
69
69
|
"""Test image segmentation training, validation, and prediction pipelines using YOLO models."""
|
70
|
-
overrides = {
|
70
|
+
overrides = {
|
71
|
+
"data": "coco8-seg.yaml",
|
72
|
+
"model": "yolo11n-seg.yaml",
|
73
|
+
"imgsz": 32,
|
74
|
+
"epochs": 1,
|
75
|
+
"save": False,
|
76
|
+
"mask_ratio": 1,
|
77
|
+
"overlap_mask": False,
|
78
|
+
}
|
71
79
|
cfg = get_cfg(DEFAULT_CFG)
|
72
80
|
cfg.data = "coco8-seg.yaml"
|
73
81
|
cfg.imgsz = 32
|
ultralytics/__init__.py
CHANGED
ultralytics/cfg/__init__.py
CHANGED
@@ -0,0 +1,32 @@
|
|
1
|
+
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
+
|
3
|
+
# Construction-PPE dataset by Ultralytics
|
4
|
+
# Documentation: https://docs.ultralytics.com/datasets/detect/construction-ppe/
|
5
|
+
# Example usage: yolo train data=construction-ppe.yaml
|
6
|
+
# parent
|
7
|
+
# ├── ultralytics
|
8
|
+
# └── datasets
|
9
|
+
# └── construction-ppe ← downloads here (178.4 MB)
|
10
|
+
|
11
|
+
# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
|
12
|
+
path: construction-ppe # dataset root dir
|
13
|
+
train: images/train # train images (relative to 'path') 1132 images
|
14
|
+
val: images/val # val images (relative to 'path') 143 images
|
15
|
+
test: images/test # test images (relative to 'path') 141 images
|
16
|
+
|
17
|
+
# Classes
|
18
|
+
names:
|
19
|
+
0: helmet
|
20
|
+
1: gloves
|
21
|
+
2: vest
|
22
|
+
3: boots
|
23
|
+
4: goggles
|
24
|
+
5: none
|
25
|
+
6: Person
|
26
|
+
7: no_helmet
|
27
|
+
8: no_goggle
|
28
|
+
9: no_gloves
|
29
|
+
10: no_boots
|
30
|
+
|
31
|
+
# Download script/URL (optional)
|
32
|
+
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/construction-ppe.zip
|
ultralytics/cfg/default.yaml
CHANGED
@@ -7,122 +7,124 @@ task: detect # (str) YOLO task, i.e. detect, segment, classify, pose, obb
|
|
7
7
|
mode: train # (str) YOLO mode, i.e. train, val, predict, export, track, benchmark
|
8
8
|
|
9
9
|
# Train settings -------------------------------------------------------------------------------------------------------
|
10
|
-
model: # (str, optional) path to model file, i.e. yolov8n.pt
|
10
|
+
model: # (str, optional) path to model file, i.e. yolov8n.pt or yolov8n.yaml
|
11
11
|
data: # (str, optional) path to data file, i.e. coco8.yaml
|
12
12
|
epochs: 100 # (int) number of epochs to train for
|
13
|
-
time: # (float, optional)
|
14
|
-
patience: 100 # (int)
|
15
|
-
batch: 16 # (int)
|
16
|
-
imgsz: 640 # (int | list)
|
13
|
+
time: # (float, optional) max hours to train; overrides epochs if set
|
14
|
+
patience: 100 # (int) early stop after N epochs without val improvement
|
15
|
+
batch: 16 # (int) batch size; use -1 for AutoBatch
|
16
|
+
imgsz: 640 # (int | list) train/val use int (square); predict/export may use [h,w]
|
17
17
|
save: True # (bool) save train checkpoints and predict results
|
18
|
-
save_period: -1 # (int)
|
19
|
-
cache: False # (bool) True/ram
|
20
|
-
device: # (int | str | list) device:
|
21
|
-
workers: 8 # (int)
|
22
|
-
project: # (str, optional) project name
|
23
|
-
name: # (str, optional) experiment name
|
24
|
-
exist_ok: False # (bool)
|
25
|
-
pretrained: True # (bool | str)
|
26
|
-
optimizer: auto # (str) optimizer
|
27
|
-
verbose: True # (bool)
|
18
|
+
save_period: -1 # (int) save checkpoint every N epochs; disabled if < 1
|
19
|
+
cache: False # (bool | str) cache images in RAM (True/'ram') or on 'disk' to speed dataloading; False disables
|
20
|
+
device: # (int | str | list) device: 0 or [0,1,2,3] for CUDA, 'cpu'/'mps', or -1/[-1,-1] to auto-select idle GPUs
|
21
|
+
workers: 8 # (int) dataloader workers (per RANK if DDP)
|
22
|
+
project: # (str, optional) project name for results root
|
23
|
+
name: # (str, optional) experiment name; results in 'project/name'
|
24
|
+
exist_ok: False # (bool) overwrite existing 'project/name' if True
|
25
|
+
pretrained: True # (bool | str) use pretrained weights (bool) or load weights from path (str)
|
26
|
+
optimizer: auto # (str) optimizer: SGD, Adam, Adamax, AdamW, NAdam, RAdam, RMSProp, or auto
|
27
|
+
verbose: True # (bool) print verbose logs during training/val
|
28
28
|
seed: 0 # (int) random seed for reproducibility
|
29
|
-
deterministic: True # (bool)
|
30
|
-
single_cls: False # (bool)
|
31
|
-
rect: False # (bool) rectangular
|
32
|
-
cos_lr: False # (bool)
|
33
|
-
close_mosaic: 10 # (int) disable mosaic augmentation for final epochs (0 to
|
34
|
-
resume: False # (bool) resume training from last checkpoint
|
35
|
-
amp: True # (bool) Automatic Mixed Precision (AMP) training
|
36
|
-
fraction: 1.0 # (float)
|
37
|
-
profile: False # (bool) profile ONNX
|
38
|
-
freeze: # (int | list, optional) freeze first
|
39
|
-
multi_scale: False # (bool)
|
40
|
-
compile: False # (bool)
|
29
|
+
deterministic: True # (bool) enable deterministic ops; reproducible but may be slower
|
30
|
+
single_cls: False # (bool) treat all classes as a single class
|
31
|
+
rect: False # (bool) rectangular batches for train; rectangular batching for val when mode='val'
|
32
|
+
cos_lr: False # (bool) cosine learning rate scheduler
|
33
|
+
close_mosaic: 10 # (int) disable mosaic augmentation for final N epochs (0 to keep enabled)
|
34
|
+
resume: False # (bool) resume training from last checkpoint in the run dir
|
35
|
+
amp: True # (bool) Automatic Mixed Precision (AMP) training; True runs AMP capability check
|
36
|
+
fraction: 1.0 # (float) fraction of training dataset to use (1.0 = all)
|
37
|
+
profile: False # (bool) profile ONNX/TensorRT speeds during training for loggers
|
38
|
+
freeze: # (int | list, optional) freeze first N layers (int) or specific layer indices (list)
|
39
|
+
multi_scale: False # (bool) multiscale training by varying image size
|
40
|
+
compile: False # (bool | str) enable torch.compile() backend='inductor'; True="default", False=off, or "default|reduce-overhead|max-autotune"
|
41
|
+
|
41
42
|
# Segmentation
|
42
|
-
overlap_mask: True # (bool) merge
|
43
|
-
mask_ratio: 4 # (int) mask downsample ratio (segment
|
43
|
+
overlap_mask: True # (bool) merge instance masks into one mask during training (segment only)
|
44
|
+
mask_ratio: 4 # (int) mask downsample ratio (segment only)
|
45
|
+
|
44
46
|
# Classification
|
45
|
-
dropout: 0.0 # (float)
|
47
|
+
dropout: 0.0 # (float) dropout for classification head (classify only)
|
46
48
|
|
47
49
|
# Val/Test settings ----------------------------------------------------------------------------------------------------
|
48
|
-
val: True # (bool)
|
49
|
-
split: val # (str) dataset split to
|
50
|
-
save_json: False # (bool) save results to JSON
|
51
|
-
conf: # (float, optional)
|
52
|
-
iou: 0.7 # (float)
|
50
|
+
val: True # (bool) run validation/testing during training
|
51
|
+
split: val # (str) dataset split to evaluate: 'val', 'test' or 'train'
|
52
|
+
save_json: False # (bool) save results to COCO JSON for external evaluation
|
53
|
+
conf: # (float, optional) confidence threshold; defaults: predict=0.25, val=0.001
|
54
|
+
iou: 0.7 # (float) IoU threshold used for NMS
|
53
55
|
max_det: 300 # (int) maximum number of detections per image
|
54
|
-
half: False # (bool) use half precision (FP16)
|
56
|
+
half: False # (bool) use half precision (FP16) if supported
|
55
57
|
dnn: False # (bool) use OpenCV DNN for ONNX inference
|
56
58
|
plots: True # (bool) save plots and images during train/val
|
57
59
|
|
58
60
|
# Predict settings -----------------------------------------------------------------------------------------------------
|
59
|
-
source: # (str, optional)
|
60
|
-
vid_stride: 1 # (int)
|
61
|
-
stream_buffer: False # (bool)
|
62
|
-
visualize: False # (bool) visualize model features (predict) or
|
63
|
-
augment: False # (bool) apply
|
61
|
+
source: # (str, optional) path/dir/URL/stream for images or videos; e.g. 'ultralytics/assets' or '0' for webcam
|
62
|
+
vid_stride: 1 # (int) read every Nth frame for video sources
|
63
|
+
stream_buffer: False # (bool) True buffers all frames; False keeps the most recent frame for low-latency streams
|
64
|
+
visualize: False # (bool) visualize model features (predict) or TP/FP/FN confusion (val)
|
65
|
+
augment: False # (bool) apply test-time augmentation during prediction
|
64
66
|
agnostic_nms: False # (bool) class-agnostic NMS
|
65
|
-
classes: # (int | list[int], optional) filter
|
66
|
-
retina_masks: False # (bool) use high-resolution segmentation masks
|
67
|
-
embed: # (list[int], optional) return feature
|
67
|
+
classes: # (int | list[int], optional) filter by class id(s), e.g. 0 or [0,2,3]
|
68
|
+
retina_masks: False # (bool) use high-resolution segmentation masks (segment)
|
69
|
+
embed: # (list[int], optional) return feature embeddings from given layer indices
|
68
70
|
|
69
71
|
# Visualize settings ---------------------------------------------------------------------------------------------------
|
70
|
-
show: False # (bool) show
|
71
|
-
save_frames: False # (bool) save
|
72
|
-
save_txt: False # (bool) save results as .txt
|
73
|
-
save_conf: False # (bool) save
|
74
|
-
save_crop: False # (bool) save cropped
|
75
|
-
show_labels: True # (bool)
|
76
|
-
show_conf: True # (bool)
|
77
|
-
show_boxes: True # (bool)
|
78
|
-
line_width: # (int, optional) line width of
|
72
|
+
show: False # (bool) show images/videos in a window if supported
|
73
|
+
save_frames: False # (bool) save individual frames from video predictions
|
74
|
+
save_txt: False # (bool) save results as .txt files (xywh format)
|
75
|
+
save_conf: False # (bool) save confidence scores with results
|
76
|
+
save_crop: False # (bool) save cropped prediction regions to files
|
77
|
+
show_labels: True # (bool) draw class labels on images, e.g. 'person'
|
78
|
+
show_conf: True # (bool) draw confidence values on images, e.g. '0.99'
|
79
|
+
show_boxes: True # (bool) draw bounding boxes on images
|
80
|
+
line_width: # (int, optional) line width of boxes; auto-scales with image size if not set
|
79
81
|
|
80
82
|
# Export settings ------------------------------------------------------------------------------------------------------
|
81
|
-
format: torchscript # (str) format
|
82
|
-
keras: False # (bool)
|
83
|
-
optimize: False # (bool) TorchScript
|
84
|
-
int8: False # (bool)
|
85
|
-
dynamic: False # (bool)
|
86
|
-
simplify: True # (bool) ONNX
|
87
|
-
opset: # (int, optional) ONNX
|
88
|
-
workspace: # (float, optional) TensorRT
|
89
|
-
nms: False # (bool)
|
83
|
+
format: torchscript # (str) target format, e.g. torchscript|onnx|openvino|engine|coreml|saved_model|pb|tflite|edgetpu|tfjs|paddle|mnn|ncnn|imx|rknn
|
84
|
+
keras: False # (bool) TF SavedModel only (format=saved_model); enable Keras layers during export
|
85
|
+
optimize: False # (bool) TorchScript only; apply mobile optimizations to the scripted model
|
86
|
+
int8: False # (bool) INT8/PTQ where supported (openvino, tflite, tfjs, engine, imx); needs calibration data/fraction
|
87
|
+
dynamic: False # (bool) dynamic shapes for torchscript, onnx, openvino, engine; enable variable image sizes
|
88
|
+
simplify: True # (bool) ONNX/engine only; run graph simplifier for cleaner ONNX before runtime conversion
|
89
|
+
opset: # (int, optional) ONNX/engine only; opset version for export; leave unset to use a tested default
|
90
|
+
workspace: # (float, optional) engine (TensorRT) only; workspace size in GiB, e.g. 4
|
91
|
+
nms: False # (bool) fuse NMS into exported model when backend supports; if True, conf/iou apply (agnostic_nms except coreml)
|
90
92
|
|
91
93
|
# Hyperparameters ------------------------------------------------------------------------------------------------------
|
92
|
-
lr0: 0.01 # (float) initial learning rate (
|
93
|
-
lrf: 0.01 # (float) final
|
94
|
-
momentum: 0.937 # (float) SGD momentum
|
95
|
-
weight_decay: 0.0005 # (float)
|
96
|
-
warmup_epochs: 3.0 # (float) warmup epochs (fractions
|
97
|
-
warmup_momentum: 0.8 # (float)
|
98
|
-
warmup_bias_lr: 0.1 # (float)
|
94
|
+
lr0: 0.01 # (float) initial learning rate (SGD=1e-2, Adam/AdamW=1e-3)
|
95
|
+
lrf: 0.01 # (float) final LR fraction; final LR = lr0 * lrf
|
96
|
+
momentum: 0.937 # (float) SGD momentum or Adam beta1
|
97
|
+
weight_decay: 0.0005 # (float) weight decay (L2 regularization)
|
98
|
+
warmup_epochs: 3.0 # (float) warmup epochs (fractions allowed)
|
99
|
+
warmup_momentum: 0.8 # (float) initial momentum during warmup
|
100
|
+
warmup_bias_lr: 0.1 # (float) bias learning rate during warmup
|
99
101
|
box: 7.5 # (float) box loss gain
|
100
|
-
cls: 0.5 # (float)
|
101
|
-
dfl: 1.5 # (float)
|
102
|
-
pose: 12.0 # (float) pose loss gain
|
103
|
-
kobj: 1.0 # (float) keypoint
|
104
|
-
nbs: 64 # (int) nominal batch size
|
105
|
-
hsv_h: 0.015 # (float)
|
106
|
-
hsv_s: 0.7 # (float)
|
107
|
-
hsv_v: 0.4 # (float)
|
108
|
-
degrees: 0.0 # (float)
|
109
|
-
translate: 0.1 # (float)
|
110
|
-
scale: 0.5 # (float)
|
111
|
-
shear: 0.0 # (float)
|
112
|
-
perspective: 0.0 # (float)
|
113
|
-
flipud: 0.0 # (float)
|
114
|
-
fliplr: 0.5 # (float)
|
115
|
-
bgr: 0.0 # (float)
|
116
|
-
mosaic: 1.0 # (float)
|
117
|
-
mixup: 0.0 # (float)
|
118
|
-
cutmix: 0.0 # (float)
|
119
|
-
copy_paste: 0.0 # (float)
|
120
|
-
copy_paste_mode:
|
121
|
-
auto_augment: randaugment # (str) auto augmentation policy
|
122
|
-
erasing: 0.4 # (float)
|
102
|
+
cls: 0.5 # (float) classification loss gain
|
103
|
+
dfl: 1.5 # (float) distribution focal loss gain
|
104
|
+
pose: 12.0 # (float) pose loss gain (pose tasks)
|
105
|
+
kobj: 1.0 # (float) keypoint objectness loss gain (pose tasks)
|
106
|
+
nbs: 64 # (int) nominal batch size used for loss normalization
|
107
|
+
hsv_h: 0.015 # (float) HSV hue augmentation fraction
|
108
|
+
hsv_s: 0.7 # (float) HSV saturation augmentation fraction
|
109
|
+
hsv_v: 0.4 # (float) HSV value (brightness) augmentation fraction
|
110
|
+
degrees: 0.0 # (float) rotation degrees (+/-)
|
111
|
+
translate: 0.1 # (float) translation fraction (+/-)
|
112
|
+
scale: 0.5 # (float) scale gain (+/-)
|
113
|
+
shear: 0.0 # (float) shear degrees (+/-)
|
114
|
+
perspective: 0.0 # (float) perspective fraction (0–0.001 typical)
|
115
|
+
flipud: 0.0 # (float) vertical flip probability
|
116
|
+
fliplr: 0.5 # (float) horizontal flip probability
|
117
|
+
bgr: 0.0 # (float) RGB↔BGR channel swap probability
|
118
|
+
mosaic: 1.0 # (float) mosaic augmentation probability
|
119
|
+
mixup: 0.0 # (float) MixUp augmentation probability
|
120
|
+
cutmix: 0.0 # (float) CutMix augmentation probability
|
121
|
+
copy_paste: 0.0 # (float) segmentation copy-paste probability
|
122
|
+
copy_paste_mode: flip # (str) copy-paste strategy for segmentation: flip or mixup
|
123
|
+
auto_augment: randaugment # (str) classification auto augmentation policy: randaugment, autoaugment, augmix
|
124
|
+
erasing: 0.4 # (float) random erasing probability for classification (0–0.9), <1.0
|
123
125
|
|
124
126
|
# Custom config.yaml ---------------------------------------------------------------------------------------------------
|
125
|
-
cfg: # (str, optional)
|
127
|
+
cfg: # (str, optional) path to a config.yaml that overrides defaults
|
126
128
|
|
127
129
|
# Tracker settings ------------------------------------------------------------------------------------------------------
|
128
|
-
tracker: botsort.yaml # (str) tracker
|
130
|
+
tracker: botsort.yaml # (str) tracker config file: botsort.yaml or bytetrack.yaml
|
@@ -1,22 +1,21 @@
|
|
1
1
|
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
2
|
|
3
|
-
#
|
4
|
-
#
|
5
|
-
# For BoT-SORT source code see https://github.com/NirAharon/BoT-SORT
|
3
|
+
# BoT-SORT tracker defaults for mode="track"
|
4
|
+
# Docs: https://docs.ultralytics.com/modes/track/
|
6
5
|
|
7
|
-
tracker_type: botsort #
|
8
|
-
track_high_thresh: 0.25 # threshold for
|
9
|
-
track_low_thresh: 0.1 # threshold for
|
10
|
-
new_track_thresh: 0.25 #
|
11
|
-
track_buffer: 30 #
|
12
|
-
match_thresh: 0.8 # threshold
|
13
|
-
fuse_score: True #
|
14
|
-
|
6
|
+
tracker_type: botsort # (str) Tracker backend: botsort|bytetrack; choose botsort to enable BoT-SORT features
|
7
|
+
track_high_thresh: 0.25 # (float) First-stage match threshold; raise for cleaner tracks, lower to keep more
|
8
|
+
track_low_thresh: 0.1 # (float) Second-stage threshold for low-score matches; balances recovery vs drift
|
9
|
+
new_track_thresh: 0.25 # (float) Start a new track if no match ≥ this; higher reduces false tracks
|
10
|
+
track_buffer: 30 # (int) Frames to keep lost tracks alive; higher handles occlusion, increases ID switches risk
|
11
|
+
match_thresh: 0.8 # (float) Association similarity threshold (IoU/cost); tune with detector quality
|
12
|
+
fuse_score: True # (bool) Fuse detection score with motion/IoU for matching; stabilizes weak detections
|
13
|
+
|
14
|
+
# BoT-SORT specifics
|
15
|
+
gmc_method: sparseOptFlow # (str) Global motion compensation: sparseOptFlow|orb|none; helps moving camera scenes
|
15
16
|
|
16
|
-
# BoT-SORT settings
|
17
|
-
gmc_method: sparseOptFlow # method of global motion compensation
|
18
17
|
# ReID model related thresh
|
19
|
-
proximity_thresh: 0.5 #
|
20
|
-
appearance_thresh: 0.8 #
|
21
|
-
with_reid: False
|
22
|
-
model: auto #
|
18
|
+
proximity_thresh: 0.5 # (float) Min IoU to consider tracks proximate for ReID; higher is stricter
|
19
|
+
appearance_thresh: 0.8 # (float) Min appearance similarity for ReID; raise to avoid identity swaps
|
20
|
+
with_reid: False # (bool) Enable ReID model use; needs extra model and compute
|
21
|
+
model: auto # (str) ReID model name/path; "auto" uses detector features if available
|
@@ -1,14 +1,12 @@
|
|
1
1
|
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
2
|
|
3
|
-
#
|
4
|
-
#
|
5
|
-
# For ByteTrack source code see https://github.com/ifzhang/ByteTrack
|
3
|
+
# ByteTrack tracker defaults for mode="track"
|
4
|
+
# Docs: https://docs.ultralytics.com/modes/track/
|
6
5
|
|
7
|
-
tracker_type: bytetrack #
|
8
|
-
track_high_thresh: 0.25 # threshold for
|
9
|
-
track_low_thresh: 0.1 # threshold for
|
10
|
-
new_track_thresh: 0.25 #
|
11
|
-
track_buffer: 30 #
|
12
|
-
match_thresh: 0.8 # threshold
|
13
|
-
fuse_score: True #
|
14
|
-
# min_box_area: 10 # threshold for min box areas(for tracker evaluation, not used for now)
|
6
|
+
tracker_type: bytetrack # (str) Tracker backend: botsort|bytetrack; choose bytetrack for the classic baseline
|
7
|
+
track_high_thresh: 0.25 # (float) First-stage match threshold; raise for cleaner tracks, lower to keep more
|
8
|
+
track_low_thresh: 0.1 # (float) Second-stage threshold for low-score matches; balances recovery vs drift
|
9
|
+
new_track_thresh: 0.25 # (float) Start a new track if no match ≥ this; higher reduces false tracks
|
10
|
+
track_buffer: 30 # (int) Frames to keep lost tracks alive; higher handles occlusion, increases ID switches risk
|
11
|
+
match_thresh: 0.8 # (float) Association similarity threshold (IoU/cost); tune with detector quality
|
12
|
+
fuse_score: True # (bool) Fuse detection score with motion/IoU for matching; stabilizes weak detections
|
ultralytics/data/augment.py
CHANGED
@@ -2382,7 +2382,7 @@ class LoadVisualPrompt:
|
|
2382
2382
|
# assert len(cls_unique) == cls_unique[-1] + 1, (
|
2383
2383
|
# f"Expected a continuous range of class indices, but got {cls_unique}"
|
2384
2384
|
# )
|
2385
|
-
visuals = torch.zeros(
|
2385
|
+
visuals = torch.zeros(cls_unique.shape[0], *masksz)
|
2386
2386
|
for idx, mask in zip(inverse_indices, masks):
|
2387
2387
|
visuals[idx] = torch.logical_or(visuals[idx], mask)
|
2388
2388
|
return visuals
|
ultralytics/data/dataset.py
CHANGED
@@ -172,7 +172,7 @@ class YOLODataset(BaseDataset):
|
|
172
172
|
cache, exists = load_dataset_cache_file(cache_path), True # attempt to load a *.cache file
|
173
173
|
assert cache["version"] == DATASET_CACHE_VERSION # matches current version
|
174
174
|
assert cache["hash"] == get_hash(self.label_files + self.im_files) # identical hash
|
175
|
-
except (FileNotFoundError, AssertionError, AttributeError):
|
175
|
+
except (FileNotFoundError, AssertionError, AttributeError, ModuleNotFoundError):
|
176
176
|
cache, exists = self.cache_labels(cache_path), False # run cache ops
|
177
177
|
|
178
178
|
# Display cache
|