dgenerate-ultralytics-headless 8.3.232__py3-none-any.whl → 8.3.234__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.232.dist-info → dgenerate_ultralytics_headless-8.3.234.dist-info}/METADATA +2 -2
- {dgenerate_ultralytics_headless-8.3.232.dist-info → dgenerate_ultralytics_headless-8.3.234.dist-info}/RECORD +13 -13
- ultralytics/__init__.py +1 -1
- ultralytics/data/augment.py +1 -1
- ultralytics/engine/exporter.py +14 -2
- ultralytics/nn/autobackend.py +1 -1
- ultralytics/nn/tasks.py +2 -2
- ultralytics/solutions/templates/similarity-search.html +3 -1
- ultralytics/utils/__init__.py +28 -0
- {dgenerate_ultralytics_headless-8.3.232.dist-info → dgenerate_ultralytics_headless-8.3.234.dist-info}/WHEEL +0 -0
- {dgenerate_ultralytics_headless-8.3.232.dist-info → dgenerate_ultralytics_headless-8.3.234.dist-info}/entry_points.txt +0 -0
- {dgenerate_ultralytics_headless-8.3.232.dist-info → dgenerate_ultralytics_headless-8.3.234.dist-info}/licenses/LICENSE +0 -0
- {dgenerate_ultralytics_headless-8.3.232.dist-info → dgenerate_ultralytics_headless-8.3.234.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.234
|
|
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>
|
|
@@ -50,7 +50,7 @@ Requires-Dist: ipython; extra == "dev"
|
|
|
50
50
|
Requires-Dist: pytest; extra == "dev"
|
|
51
51
|
Requires-Dist: pytest-cov; extra == "dev"
|
|
52
52
|
Requires-Dist: coverage[toml]; extra == "dev"
|
|
53
|
-
Requires-Dist: zensical>=0.0.9; extra == "dev"
|
|
53
|
+
Requires-Dist: zensical>=0.0.9; python_version >= "3.10" and extra == "dev"
|
|
54
54
|
Requires-Dist: mkdocs-ultralytics-plugin>=0.2.3; extra == "dev"
|
|
55
55
|
Requires-Dist: minijinja>=2.0.0; extra == "dev"
|
|
56
56
|
Provides-Extra: export
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
dgenerate_ultralytics_headless-8.3.
|
|
1
|
+
dgenerate_ultralytics_headless-8.3.234.dist-info/licenses/LICENSE,sha256=DZak_2itbUtvHzD3E7GNUYSRK6jdOJ-GqncQ2weavLA,34523
|
|
2
2
|
tests/__init__.py,sha256=bCox_hLdGRFYGLb2kd722VdNP2zEXNYNuLLYtqZSrbw,804
|
|
3
3
|
tests/conftest.py,sha256=mOy9lGpNp7lk1hHl6_pVE0f9cU-72gnkoSm4TO-CNZU,2318
|
|
4
4
|
tests/test_cli.py,sha256=GhIFHi-_WIJpDgoGNRi0DnjbfwP1wHbklBMnkCM-P_4,5464
|
|
@@ -8,7 +8,7 @@ tests/test_exports.py,sha256=OMLio2uUhyqo8D8qB5xUwmk7Po2rMeAACRc8WYoxbj4,13147
|
|
|
8
8
|
tests/test_integrations.py,sha256=6QgSh9n0J04RdUYz08VeVOnKmf4S5MDEQ0chzS7jo_c,6220
|
|
9
9
|
tests/test_python.py,sha256=jhnN-Oie3euE3kfHzUqvnadkWOsQyvFmdmEcse9Rsto,29253
|
|
10
10
|
tests/test_solutions.py,sha256=j_PZZ5tMR1Y5ararY-OTXZr1hYJ7vEVr8H3w4O1tbQs,14153
|
|
11
|
-
ultralytics/__init__.py,sha256=
|
|
11
|
+
ultralytics/__init__.py,sha256=a_HMVA4o-9DN2vt7nIDkBq2U8E3oKkccQ9dw4UQ861I,1302
|
|
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
|
|
@@ -109,7 +109,7 @@ ultralytics/cfg/trackers/botsort.yaml,sha256=tRxC-qT4Wz0mLn5x7ZEwrqgGKrmTDVY7gMg
|
|
|
109
109
|
ultralytics/cfg/trackers/bytetrack.yaml,sha256=7LS1ObP5u7BUFcmeY6L2m3bRuPUktnpJspFKd_ElVWc,908
|
|
110
110
|
ultralytics/data/__init__.py,sha256=ToR8zl0JhBHy42ZvV7zIwO_F3lbi5oNlGQNPK3dlddU,644
|
|
111
111
|
ultralytics/data/annotator.py,sha256=kbfSPBesKEVK6ys3dilTdMh7rCKyp0xV7tGQeEDbpWI,2985
|
|
112
|
-
ultralytics/data/augment.py,sha256=
|
|
112
|
+
ultralytics/data/augment.py,sha256=t5kWY6IjnnHz0ly5RTSiJRYWnoNh1rFiT8A8zVEFUkA,127496
|
|
113
113
|
ultralytics/data/base.py,sha256=2sJmh1VUCvxjfdvEAQldK9PLVsw-pDVjcyo8gCLlbuo,19575
|
|
114
114
|
ultralytics/data/build.py,sha256=86pnRpiFDHrm_ZvwN9DTSjTwLT9is2sO_tyXiqya7Wk,17205
|
|
115
115
|
ultralytics/data/converter.py,sha256=_54Xw78TLRswJ9nUVCd2lfEP5riQ82rM0_g_Gad4PAI,31893
|
|
@@ -123,7 +123,7 @@ ultralytics/data/scripts/get_coco.sh,sha256=UuJpJeo3qQpTHVINeOpmP0NYmg8PhEFE3A8J
|
|
|
123
123
|
ultralytics/data/scripts/get_coco128.sh,sha256=qmRQl_hOKrsdHrTrnyQuFIH01oDz3lfaz138OgGfLt8,650
|
|
124
124
|
ultralytics/data/scripts/get_imagenet.sh,sha256=hr42H16bM47iT27rgS7MpEo-GeOZAYUQXgr0B2cwn48,1705
|
|
125
125
|
ultralytics/engine/__init__.py,sha256=lm6MckFYCPTbqIoX7w0s_daxdjNeBeKW6DXppv1-QUM,70
|
|
126
|
-
ultralytics/engine/exporter.py,sha256=
|
|
126
|
+
ultralytics/engine/exporter.py,sha256=nq14G-oL8iFSckIji9-GQunWUtp8qyUGuD8jI5a6Ixc,68720
|
|
127
127
|
ultralytics/engine/model.py,sha256=RkjMWXkyGmYjmMYIG8mPX8Cf1cJvn0ccOsXt03g7tIk,52999
|
|
128
128
|
ultralytics/engine/predictor.py,sha256=eu0sVo3PTt4zKH6SntzdO1E8cgFj9PFOJrfQO6VNqCE,22698
|
|
129
129
|
ultralytics/engine/results.py,sha256=zHPX3j36SnbHHRzAtF5wv_IhugEHf-zEPUqpQwdgZxA,68029
|
|
@@ -198,8 +198,8 @@ ultralytics/models/yolo/yoloe/train.py,sha256=giX6zDu5Z3z48PCaBHzu7v9NH3BrpUaGAY
|
|
|
198
198
|
ultralytics/models/yolo/yoloe/train_seg.py,sha256=0hRByMXsEJA-J2B1wXDMVhiW9f9MOTj3LlrGTibN6Ww,4919
|
|
199
199
|
ultralytics/models/yolo/yoloe/val.py,sha256=utUFWeFKRFWZrPr1y3A8ztbTwdoWMYqzlwBN7CQ0tCA,9418
|
|
200
200
|
ultralytics/nn/__init__.py,sha256=538LZPUKKvc3JCMgiQ4VLGqRN2ZAaVLFcQbeNNHFkEA,545
|
|
201
|
-
ultralytics/nn/autobackend.py,sha256=
|
|
202
|
-
ultralytics/nn/tasks.py,sha256=
|
|
201
|
+
ultralytics/nn/autobackend.py,sha256=G89XeTrt7WSd-yNZ8vHRQBCGLgkVveh-E5He6W4ditw,42685
|
|
202
|
+
ultralytics/nn/tasks.py,sha256=LBBrSENKAQ1kpRLavjQ4kbBgpCQPqiSkfOmxCt2xQIw,70467
|
|
203
203
|
ultralytics/nn/text_model.py,sha256=doU80pYuhc7GYtALVN8ZjetMmdTJTheuIP65riKnT48,15358
|
|
204
204
|
ultralytics/nn/modules/__init__.py,sha256=5Sg_28MDfKwdu14Ty_WCaiIXZyjBSQ-xCNCwnoz_w-w,3198
|
|
205
205
|
ultralytics/nn/modules/activation.py,sha256=J6n-CJKFK0YbhwcRDqm9zEJM9pSAEycj5quQss_3x6E,2219
|
|
@@ -228,7 +228,7 @@ ultralytics/solutions/speed_estimation.py,sha256=ph_5MFObDGz05uFZm1zmpLYw-YyLlKQ
|
|
|
228
228
|
ultralytics/solutions/streamlit_inference.py,sha256=utJOe0Weu44_ABF9rDnAjwLjKyn3gwfaYaxFfFbx-9c,13060
|
|
229
229
|
ultralytics/solutions/trackzone.py,sha256=oqv-zZL99RVUMcN5ViAPmadzX6QNdAEozYrrg2pqO6k,3903
|
|
230
230
|
ultralytics/solutions/vision_eye.py,sha256=bSXmJ93DyLu4_CWgbF3GkHzh_VpiEmkK5vVJDPPGzI4,2982
|
|
231
|
-
ultralytics/solutions/templates/similarity-search.html,sha256=
|
|
231
|
+
ultralytics/solutions/templates/similarity-search.html,sha256=mYuJI8H84cmu4kwPq2aEsmzazimFEEiLhOXZ08lXQgA,4165
|
|
232
232
|
ultralytics/trackers/__init__.py,sha256=n3BOO0TR-Sz5ANDYOkKDipM9nSHOePMEwqafbk-YEPs,255
|
|
233
233
|
ultralytics/trackers/basetrack.py,sha256=57kL3R9s50GrXTAR0QfBLk0ea2VAXTBWJ6TSk3iCMrY,4374
|
|
234
234
|
ultralytics/trackers/bot_sort.py,sha256=nViAG2jjl4T9X4WZjHBW-xzfR9TpJJXvgsjjzE8HeW0,11701
|
|
@@ -238,7 +238,7 @@ ultralytics/trackers/utils/__init__.py,sha256=lm6MckFYCPTbqIoX7w0s_daxdjNeBeKW6D
|
|
|
238
238
|
ultralytics/trackers/utils/gmc.py,sha256=B07unzpprc_vSpAcBGPR1i2fcgFlBMC5pzTAoP9osTc,13800
|
|
239
239
|
ultralytics/trackers/utils/kalman_filter.py,sha256=iO3WEGu9AWWpVwe0AfgMqXZCzO0sgQC8lGt8KpLnPN4,21485
|
|
240
240
|
ultralytics/trackers/utils/matching.py,sha256=7lyDXEw6w5iEKeb9CARlAoPbvT35VnCc9hkjD6ZcIqs,7144
|
|
241
|
-
ultralytics/utils/__init__.py,sha256=
|
|
241
|
+
ultralytics/utils/__init__.py,sha256=mumSvouTfDk9SnlGPiZCiuO52rpIUh6dpUbV8MfJXKE,54400
|
|
242
242
|
ultralytics/utils/autobatch.py,sha256=jiE4m_--H9UkXFDm_FqzcZk_hSTCGpS72XdVEKgZwAo,5114
|
|
243
243
|
ultralytics/utils/autodevice.py,sha256=rXlPuo-iX-vZ4BabmMGEGh9Uxpau4R7Zlt1KCo9Xfyc,8892
|
|
244
244
|
ultralytics/utils/benchmarks.py,sha256=B6Q55qtZri2EWOKldXnEhGrFe2BjHsAQEt7juPN4m1s,32279
|
|
@@ -279,8 +279,8 @@ ultralytics/utils/export/__init__.py,sha256=Cfh-PwVfTF_lwPp-Ss4wiX4z8Sm1XRPklsqd
|
|
|
279
279
|
ultralytics/utils/export/engine.py,sha256=23-lC6dNsmz5vprSJzaN7UGNXrFlVedNcqhlOH_IXes,9956
|
|
280
280
|
ultralytics/utils/export/imx.py,sha256=9UPA4CwTPADzvJx9dOsh_8fQ-LMeqG7eI9EYIn5ojkc,11621
|
|
281
281
|
ultralytics/utils/export/tensorflow.py,sha256=PyAp0_rXSUcXiqV2RY0H9b_-oFaZ7hZBiSM42X53t0Q,9374
|
|
282
|
-
dgenerate_ultralytics_headless-8.3.
|
|
283
|
-
dgenerate_ultralytics_headless-8.3.
|
|
284
|
-
dgenerate_ultralytics_headless-8.3.
|
|
285
|
-
dgenerate_ultralytics_headless-8.3.
|
|
286
|
-
dgenerate_ultralytics_headless-8.3.
|
|
282
|
+
dgenerate_ultralytics_headless-8.3.234.dist-info/METADATA,sha256=gitNLEewgRpBk8OannYe12orATd0KmloihM2MzosidA,38747
|
|
283
|
+
dgenerate_ultralytics_headless-8.3.234.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
284
|
+
dgenerate_ultralytics_headless-8.3.234.dist-info/entry_points.txt,sha256=YM_wiKyTe9yRrsEfqvYolNO5ngwfoL4-NwgKzc8_7sI,93
|
|
285
|
+
dgenerate_ultralytics_headless-8.3.234.dist-info/top_level.txt,sha256=XP49TwiMw4QGsvTLSYiJhz1xF_k7ev5mQ8jJXaXi45Q,12
|
|
286
|
+
dgenerate_ultralytics_headless-8.3.234.dist-info/RECORD,,
|
ultralytics/__init__.py
CHANGED
ultralytics/data/augment.py
CHANGED
|
@@ -1946,7 +1946,7 @@ class Albumentations:
|
|
|
1946
1946
|
new = self.transform(image=im, bboxes=bboxes, class_labels=cls) # transformed
|
|
1947
1947
|
if len(new["class_labels"]) > 0: # skip update if no bbox in new im
|
|
1948
1948
|
labels["img"] = new["image"]
|
|
1949
|
-
labels["cls"] = np.array(new["class_labels"])
|
|
1949
|
+
labels["cls"] = np.array(new["class_labels"]).reshape(-1, 1)
|
|
1950
1950
|
bboxes = np.array(new["bboxes"], dtype=np.float32)
|
|
1951
1951
|
labels["instances"].update(bboxes=bboxes)
|
|
1952
1952
|
else:
|
ultralytics/engine/exporter.py
CHANGED
|
@@ -84,7 +84,11 @@ from ultralytics.utils import (
|
|
|
84
84
|
ARM64,
|
|
85
85
|
DEFAULT_CFG,
|
|
86
86
|
IS_COLAB,
|
|
87
|
+
IS_DEBIAN_BOOKWORM,
|
|
88
|
+
IS_DEBIAN_TRIXIE,
|
|
87
89
|
IS_JETSON,
|
|
90
|
+
IS_RASPBERRYPI,
|
|
91
|
+
IS_UBUNTU,
|
|
88
92
|
LINUX,
|
|
89
93
|
LOGGER,
|
|
90
94
|
MACOS,
|
|
@@ -1193,8 +1197,16 @@ class Exporter:
|
|
|
1193
1197
|
java_version = int(version_match.group(1)) if version_match else 0
|
|
1194
1198
|
assert java_version >= 17, "Java version too old"
|
|
1195
1199
|
except (FileNotFoundError, subprocess.CalledProcessError, AssertionError):
|
|
1196
|
-
cmd =
|
|
1197
|
-
|
|
1200
|
+
cmd = None
|
|
1201
|
+
if IS_UBUNTU or IS_DEBIAN_TRIXIE:
|
|
1202
|
+
LOGGER.info(f"\n{prefix} installing Java 21 for Ubuntu...")
|
|
1203
|
+
cmd = (["sudo"] if is_sudo_available() else []) + ["apt", "install", "-y", "openjdk-21-jre"]
|
|
1204
|
+
elif IS_RASPBERRYPI or IS_DEBIAN_BOOKWORM:
|
|
1205
|
+
LOGGER.info(f"\n{prefix} installing Java 17 for Raspberry Pi or Debian ...")
|
|
1206
|
+
cmd = (["sudo"] if is_sudo_available() else []) + ["apt", "install", "-y", "openjdk-17-jre"]
|
|
1207
|
+
|
|
1208
|
+
if cmd:
|
|
1209
|
+
subprocess.run(cmd, check=True)
|
|
1198
1210
|
|
|
1199
1211
|
return torch2imx(
|
|
1200
1212
|
self.model,
|
ultralytics/nn/autobackend.py
CHANGED
|
@@ -606,7 +606,7 @@ class AutoBackend(nn.Module):
|
|
|
606
606
|
if k in {"stride", "batch", "channels"}:
|
|
607
607
|
metadata[k] = int(v)
|
|
608
608
|
elif k in {"imgsz", "names", "kpt_shape", "kpt_names", "args"} and isinstance(v, str):
|
|
609
|
-
metadata[k] =
|
|
609
|
+
metadata[k] = ast.literal_eval(v)
|
|
610
610
|
stride = metadata["stride"]
|
|
611
611
|
task = metadata["task"]
|
|
612
612
|
batch = metadata["batch"]
|
ultralytics/nn/tasks.py
CHANGED
|
@@ -1730,10 +1730,10 @@ def guess_model_task(model):
|
|
|
1730
1730
|
if isinstance(model, torch.nn.Module): # PyTorch model
|
|
1731
1731
|
for x in "model.args", "model.model.args", "model.model.model.args":
|
|
1732
1732
|
with contextlib.suppress(Exception):
|
|
1733
|
-
return eval(x)["task"]
|
|
1733
|
+
return eval(x)["task"] # nosec B307: safe eval of known attribute paths
|
|
1734
1734
|
for x in "model.yaml", "model.model.yaml", "model.model.model.yaml":
|
|
1735
1735
|
with contextlib.suppress(Exception):
|
|
1736
|
-
return cfg2task(eval(x))
|
|
1736
|
+
return cfg2task(eval(x)) # nosec B307: safe eval of known attribute paths
|
|
1737
1737
|
for m in model.modules():
|
|
1738
1738
|
if isinstance(m, (Segment, YOLOESegment)):
|
|
1739
1739
|
return "segment"
|
|
@@ -106,7 +106,9 @@
|
|
|
106
106
|
card.style.display = idx < k ? "block" : "none";
|
|
107
107
|
});
|
|
108
108
|
const buttons = document.querySelectorAll(".topk-btn");
|
|
109
|
-
buttons.forEach((btn) =>
|
|
109
|
+
buttons.forEach((btn) => {
|
|
110
|
+
btn.classList.remove("active");
|
|
111
|
+
});
|
|
110
112
|
event.target.classList.add("active");
|
|
111
113
|
}
|
|
112
114
|
document.addEventListener("DOMContentLoaded", () => {
|
ultralytics/utils/__init__.py
CHANGED
|
@@ -651,6 +651,32 @@ def is_ubuntu() -> bool:
|
|
|
651
651
|
return False
|
|
652
652
|
|
|
653
653
|
|
|
654
|
+
def is_debian(codenames: list[str] | None | str = None) -> list[bool] | bool:
|
|
655
|
+
"""Check if the OS is Debian.
|
|
656
|
+
|
|
657
|
+
Args:
|
|
658
|
+
codenames (list[str] | None | str): Specific Debian codename to check for (e.g., 'buster', 'bullseye'). If None,
|
|
659
|
+
only checks for Debian.
|
|
660
|
+
|
|
661
|
+
Returns:
|
|
662
|
+
(list[bool] | bool): List of booleans indicating if OS matches each Debian codename, or a single boolean if no
|
|
663
|
+
codenames provided.
|
|
664
|
+
"""
|
|
665
|
+
try:
|
|
666
|
+
with open("/etc/os-release") as f:
|
|
667
|
+
content = f.read()
|
|
668
|
+
if codenames is None:
|
|
669
|
+
return "ID=debian" in content
|
|
670
|
+
if isinstance(codenames, str):
|
|
671
|
+
codenames = [codenames]
|
|
672
|
+
return [
|
|
673
|
+
f"VERSION_CODENAME={codename}" in content if codename else "ID=debian" in content
|
|
674
|
+
for codename in codenames
|
|
675
|
+
]
|
|
676
|
+
except FileNotFoundError:
|
|
677
|
+
return [False] * len(codenames) if codenames else False
|
|
678
|
+
|
|
679
|
+
|
|
654
680
|
def is_colab():
|
|
655
681
|
"""Check if the current script is running inside a Google Colab notebook.
|
|
656
682
|
|
|
@@ -879,6 +905,8 @@ IS_JETSON = is_jetson()
|
|
|
879
905
|
IS_JUPYTER = is_jupyter()
|
|
880
906
|
IS_PIP_PACKAGE = is_pip_package()
|
|
881
907
|
IS_RASPBERRYPI = is_raspberrypi()
|
|
908
|
+
IS_DEBIAN, IS_DEBIAN_BOOKWORM, IS_DEBIAN_TRIXIE = is_debian([None, "bookworm", "trixie"])
|
|
909
|
+
IS_UBUNTU = is_ubuntu()
|
|
882
910
|
GIT = GitRepo()
|
|
883
911
|
USER_CONFIG_DIR = get_user_config_dir() # Ultralytics settings dir
|
|
884
912
|
SETTINGS_FILE = USER_CONFIG_DIR / "settings.json"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|