ultralytics 8.3.85__py3-none-any.whl → 8.3.87__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.
- tests/test_solutions.py +21 -2
- ultralytics/__init__.py +1 -1
- ultralytics/cfg/__init__.py +17 -25
- ultralytics/cfg/datasets/Argoverse.yaml +15 -13
- ultralytics/cfg/datasets/GlobalWheat2020.yaml +24 -10
- ultralytics/cfg/datasets/ImageNet.yaml +1 -1
- ultralytics/cfg/datasets/Objects365.yaml +21 -21
- ultralytics/cfg/datasets/SKU-110K.yaml +11 -11
- ultralytics/cfg/datasets/VOC.yaml +34 -28
- ultralytics/cfg/datasets/VisDrone.yaml +19 -15
- ultralytics/cfg/datasets/coco-pose.yaml +11 -8
- ultralytics/cfg/datasets/coco.yaml +11 -8
- ultralytics/cfg/datasets/lvis.yaml +12 -8
- ultralytics/cfg/datasets/open-images-v7.yaml +25 -20
- ultralytics/cfg/datasets/xView.yaml +28 -26
- ultralytics/cfg/models/11/yolo11-cls-resnet18.yaml +1 -1
- ultralytics/cfg/models/11/yolo11-cls.yaml +6 -6
- ultralytics/data/annotator.py +1 -1
- ultralytics/data/base.py +1 -1
- ultralytics/data/converter.py +6 -6
- ultralytics/data/loaders.py +1 -1
- ultralytics/data/split_dota.py +2 -2
- ultralytics/data/utils.py +4 -4
- ultralytics/engine/exporter.py +3 -3
- ultralytics/engine/results.py +77 -42
- ultralytics/engine/trainer.py +12 -6
- ultralytics/engine/tuner.py +4 -3
- ultralytics/engine/validator.py +1 -1
- ultralytics/models/yolo/obb/val.py +2 -2
- ultralytics/nn/autobackend.py +3 -2
- ultralytics/nn/tasks.py +1 -1
- ultralytics/solutions/parking_management.py +19 -4
- ultralytics/utils/__init__.py +3 -4
- ultralytics/utils/benchmarks.py +5 -5
- ultralytics/utils/callbacks/comet.py +37 -5
- ultralytics/utils/loss.py +1 -1
- {ultralytics-8.3.85.dist-info → ultralytics-8.3.87.dist-info}/METADATA +8 -8
- {ultralytics-8.3.85.dist-info → ultralytics-8.3.87.dist-info}/RECORD +42 -42
- {ultralytics-8.3.85.dist-info → ultralytics-8.3.87.dist-info}/WHEEL +1 -1
- {ultralytics-8.3.85.dist-info → ultralytics-8.3.87.dist-info}/LICENSE +0 -0
- {ultralytics-8.3.85.dist-info → ultralytics-8.3.87.dist-info}/entry_points.txt +0 -0
- {ultralytics-8.3.85.dist-info → ultralytics-8.3.87.dist-info}/top_level.txt +0 -0
@@ -149,7 +149,7 @@ class OBBValidator(DetectionValidator):
|
|
149
149
|
classname = self.names[d["category_id"] - 1].replace(" ", "-")
|
150
150
|
p = d["poly"]
|
151
151
|
|
152
|
-
with open(f"{pred_txt / f'Task1_{classname}'}.txt", "a") as f:
|
152
|
+
with open(f"{pred_txt / f'Task1_{classname}'}.txt", "a", encoding="utf-8") as f:
|
153
153
|
f.writelines(f"{image_id} {score} {p[0]} {p[1]} {p[2]} {p[3]} {p[4]} {p[5]} {p[6]} {p[7]}\n")
|
154
154
|
# Save merged results, this could result slightly lower map than using official merging script,
|
155
155
|
# because of the probiou calculation.
|
@@ -183,7 +183,7 @@ class OBBValidator(DetectionValidator):
|
|
183
183
|
p = [round(i, 3) for i in x[:-2]] # poly
|
184
184
|
score = round(x[-2], 3)
|
185
185
|
|
186
|
-
with open(f"{pred_merged_txt / f'Task1_{classname}'}.txt", "a") as f:
|
186
|
+
with open(f"{pred_merged_txt / f'Task1_{classname}'}.txt", "a", encoding="utf-8") as f:
|
187
187
|
f.writelines(f"{image_id} {score} {p[0]} {p[1]} {p[2]} {p[3]} {p[4]} {p[5]} {p[6]} {p[7]}\n")
|
188
188
|
|
189
189
|
return stats
|
ultralytics/nn/autobackend.py
CHANGED
@@ -132,7 +132,7 @@ class AutoBackend(nn.Module):
|
|
132
132
|
fp16 &= pt or jit or onnx or xml or engine or nn_module or triton # FP16
|
133
133
|
nhwc = coreml or saved_model or pb or tflite or edgetpu or rknn # BHWC formats (vs torch BCWH)
|
134
134
|
stride = 32 # default stride
|
135
|
-
end2end = False
|
135
|
+
end2end, dynamic = False, False
|
136
136
|
model, metadata, task = None, None, None
|
137
137
|
|
138
138
|
# Set device
|
@@ -244,7 +244,7 @@ class AutoBackend(nn.Module):
|
|
244
244
|
# OpenVINO
|
245
245
|
elif xml:
|
246
246
|
LOGGER.info(f"Loading {w} for OpenVINO inference...")
|
247
|
-
check_requirements("openvino>=2024.0.0
|
247
|
+
check_requirements("openvino>=2024.0.0,!=2025.0.0")
|
248
248
|
import openvino as ov
|
249
249
|
|
250
250
|
core = ov.Core()
|
@@ -517,6 +517,7 @@ class AutoBackend(nn.Module):
|
|
517
517
|
names = metadata["names"]
|
518
518
|
kpt_shape = metadata.get("kpt_shape")
|
519
519
|
end2end = metadata.get("args", {}).get("nms", False)
|
520
|
+
dynamic = metadata.get("args", {}).get("dynamic", dynamic)
|
520
521
|
elif not (pt or triton or nn_module):
|
521
522
|
LOGGER.warning(f"WARNING ⚠️ Metadata not found for 'model={weights}'")
|
522
523
|
|
ultralytics/nn/tasks.py
CHANGED
@@ -1119,7 +1119,7 @@ def guess_model_scale(model_path):
|
|
1119
1119
|
(str): The size character of the model's scale, which can be n, s, m, l, or x.
|
1120
1120
|
"""
|
1121
1121
|
try:
|
1122
|
-
return re.search(r"yolo[v]?\d+([nslmx])", Path(model_path).stem).group(1) #
|
1122
|
+
return re.search(r"yolo[v]?\d+([nslmx])", Path(model_path).stem).group(1) # returns n, s, m, l, or x
|
1123
1123
|
except AttributeError:
|
1124
1124
|
return ""
|
1125
1125
|
|
@@ -7,7 +7,7 @@ import numpy as np
|
|
7
7
|
|
8
8
|
from ultralytics.solutions.solutions import BaseSolution
|
9
9
|
from ultralytics.utils import LOGGER
|
10
|
-
from ultralytics.utils.checks import
|
10
|
+
from ultralytics.utils.checks import check_imshow
|
11
11
|
from ultralytics.utils.plotting import Annotator
|
12
12
|
|
13
13
|
|
@@ -49,9 +49,24 @@ class ParkingPtsSelection:
|
|
49
49
|
|
50
50
|
def __init__(self):
|
51
51
|
"""Initializes the ParkingPtsSelection class, setting up UI and properties for parking zone point selection."""
|
52
|
-
|
53
|
-
|
54
|
-
|
52
|
+
try: # check if tkinter installed
|
53
|
+
import tkinter as tk
|
54
|
+
from tkinter import filedialog, messagebox
|
55
|
+
except ImportError: # Display error with recommendations
|
56
|
+
import platform
|
57
|
+
|
58
|
+
install_cmd = {
|
59
|
+
"Linux": "sudo apt install python3-tk (Debian/Ubuntu) | sudo dnf install python3-tkinter (Fedora) | "
|
60
|
+
"sudo pacman -S tk (Arch)",
|
61
|
+
"Windows": "reinstall Python and enable the checkbox `tcl/tk and IDLE` on **Optional Features** during installation",
|
62
|
+
"Darwin": "reinstall Python from https://www.python.org/downloads/mac-osx/ or `brew install python-tk`",
|
63
|
+
}.get(platform.system(), "Unknown OS. Check your Python installation.")
|
64
|
+
|
65
|
+
LOGGER.warning(f"WARNING ⚠️ Tkinter is not configured or supported. Potential fix: {install_cmd}")
|
66
|
+
return
|
67
|
+
|
68
|
+
if not check_imshow(warn=True):
|
69
|
+
return
|
55
70
|
|
56
71
|
self.tk, self.filedialog, self.messagebox = tk, filedialog, messagebox
|
57
72
|
self.master = self.tk.Tk() # Reference to the main application window or parent widget
|
ultralytics/utils/__init__.py
CHANGED
@@ -28,6 +28,7 @@ import tqdm
|
|
28
28
|
import yaml
|
29
29
|
|
30
30
|
from ultralytics import __version__
|
31
|
+
from ultralytics.utils.patches import imread, imshow, imwrite, torch_load, torch_save # for patches
|
31
32
|
|
32
33
|
# PyTorch Multi-GPU DDP Constants
|
33
34
|
RANK = int(os.getenv("RANK", -1))
|
@@ -125,7 +126,7 @@ HELP_MSG = """
|
|
125
126
|
|
126
127
|
# Settings and Environment Variables
|
127
128
|
torch.set_printoptions(linewidth=320, precision=4, profile="default")
|
128
|
-
np.set_printoptions(linewidth=320, formatter=
|
129
|
+
np.set_printoptions(linewidth=320, formatter=dict(float_kind="{:11.5g}".format)) # format short g, %precision=5
|
129
130
|
cv2.setNumThreads(0) # prevent OpenCV from multithreading (incompatible with PyTorch DataLoader)
|
130
131
|
os.environ["NUMEXPR_MAX_THREADS"] = str(NUM_THREADS) # NumExpr max threads
|
131
132
|
os.environ["TF_CPP_MIN_LOG_LEVEL"] = "3" # suppress verbose TF compiler warnings in Colab
|
@@ -1128,7 +1129,7 @@ class JSONDict(dict):
|
|
1128
1129
|
"""Save the current state of the dictionary to the JSON file."""
|
1129
1130
|
try:
|
1130
1131
|
self.file_path.parent.mkdir(parents=True, exist_ok=True)
|
1131
|
-
with open(self.file_path, "w") as f:
|
1132
|
+
with open(self.file_path, "w", encoding="utf-8") as f:
|
1132
1133
|
json.dump(dict(self), f, indent=2, default=self._json_default)
|
1133
1134
|
except Exception as e:
|
1134
1135
|
print(f"Error writing to {self.file_path}: {e}")
|
@@ -1340,8 +1341,6 @@ TESTS_RUNNING = is_pytest_running() or is_github_action_running()
|
|
1340
1341
|
set_sentry()
|
1341
1342
|
|
1342
1343
|
# Apply monkey patches
|
1343
|
-
from ultralytics.utils.patches import imread, imshow, imwrite, torch_load, torch_save
|
1344
|
-
|
1345
1344
|
torch.load = torch_load
|
1346
1345
|
torch.save = torch_save
|
1347
1346
|
if WINDOWS:
|
ultralytics/utils/benchmarks.py
CHANGED
@@ -244,7 +244,7 @@ class RF100Benchmark:
|
|
244
244
|
os.mkdir("ultralytics-benchmarks")
|
245
245
|
safe_download("https://github.com/ultralytics/assets/releases/download/v0.0.0/datasets_links.txt")
|
246
246
|
|
247
|
-
with open(ds_link_txt) as file:
|
247
|
+
with open(ds_link_txt, encoding="utf-8") as file:
|
248
248
|
for line in file:
|
249
249
|
try:
|
250
250
|
_, url, workspace, project, version = re.split("/+", line.strip())
|
@@ -271,11 +271,11 @@ class RF100Benchmark:
|
|
271
271
|
Examples:
|
272
272
|
>>> RF100Benchmark.fix_yaml("path/to/data.yaml")
|
273
273
|
"""
|
274
|
-
with open(path) as file:
|
274
|
+
with open(path, encoding="utf-8") as file:
|
275
275
|
yaml_data = yaml.safe_load(file)
|
276
276
|
yaml_data["train"] = "train/images"
|
277
277
|
yaml_data["val"] = "valid/images"
|
278
|
-
with open(path, "w") as file:
|
278
|
+
with open(path, "w", encoding="utf-8") as file:
|
279
279
|
yaml.safe_dump(yaml_data, file)
|
280
280
|
|
281
281
|
def evaluate(self, yaml_path, val_log_file, eval_log_file, list_ind):
|
@@ -297,7 +297,7 @@ class RF100Benchmark:
|
|
297
297
|
>>> benchmark.evaluate("path/to/data.yaml", "path/to/val_log.txt", "path/to/eval_log.txt", 0)
|
298
298
|
"""
|
299
299
|
skip_symbols = ["🚀", "⚠️", "💡", "❌"]
|
300
|
-
with open(yaml_path) as stream:
|
300
|
+
with open(yaml_path, encoding="utf-8") as stream:
|
301
301
|
class_names = yaml.safe_load(stream)["names"]
|
302
302
|
with open(val_log_file, encoding="utf-8") as f:
|
303
303
|
lines = f.readlines()
|
@@ -331,7 +331,7 @@ class RF100Benchmark:
|
|
331
331
|
print("There's only one dict res")
|
332
332
|
map_val = [res["map50"] for res in eval_lines][0]
|
333
333
|
|
334
|
-
with open(eval_log_file, "a") as f:
|
334
|
+
with open(eval_log_file, "a", encoding="utf-8") as f:
|
335
335
|
f.write(f"{self.ds_names[list_ind]}: {map_val}\n")
|
336
336
|
|
337
337
|
|
@@ -1,6 +1,10 @@
|
|
1
1
|
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
|
2
|
-
|
2
|
+
from collections.abc import Callable
|
3
3
|
from types import SimpleNamespace
|
4
|
+
from typing import Any, List, Optional
|
5
|
+
|
6
|
+
import cv2
|
7
|
+
import numpy as np
|
4
8
|
|
5
9
|
from ultralytics.utils import LOGGER, RANK, SETTINGS, TESTS_RUNNING, ops
|
6
10
|
from ultralytics.utils.metrics import ClassifyMetrics, DetMetrics, OBBMetrics, PoseMetrics, SegmentMetrics
|
@@ -16,7 +20,7 @@ try:
|
|
16
20
|
from pathlib import Path
|
17
21
|
|
18
22
|
# Ensures certain logging functions only run for supported tasks
|
19
|
-
COMET_SUPPORTED_TASKS = ["detect"]
|
23
|
+
COMET_SUPPORTED_TASKS = ["detect", "segment"]
|
20
24
|
|
21
25
|
# Names of plots created by Ultralytics that are logged to Comet
|
22
26
|
CONFUSION_MATRIX_PLOT_NAMES = "confusion_matrix", "confusion_matrix_normalized"
|
@@ -177,7 +181,7 @@ def _format_ground_truth_annotations_for_detection(img_idx, image_path, batch, c
|
|
177
181
|
return {"name": "ground_truth", "data": data}
|
178
182
|
|
179
183
|
|
180
|
-
def
|
184
|
+
def _format_prediction_annotations(image_path, metadata, class_label_map=None, class_map=None):
|
181
185
|
"""Format YOLO predictions for object detection visualization."""
|
182
186
|
stem = image_path.stem
|
183
187
|
image_id = int(stem) if stem.isnumeric() else stem
|
@@ -193,6 +197,12 @@ def _format_prediction_annotations_for_detection(image_path, metadata, class_lab
|
|
193
197
|
# with prediction's category ID indices (can start from one)
|
194
198
|
label_index_offset = sorted(class_map)[0]
|
195
199
|
|
200
|
+
try:
|
201
|
+
# import pycotools utilities to decompress annotations for various tasks, e.g. segmentation
|
202
|
+
from pycocotools.mask import decode # noqa
|
203
|
+
except ImportError:
|
204
|
+
decode = None
|
205
|
+
|
196
206
|
data = []
|
197
207
|
for prediction in predictions:
|
198
208
|
boxes = prediction["bbox"]
|
@@ -201,17 +211,39 @@ def _format_prediction_annotations_for_detection(image_path, metadata, class_lab
|
|
201
211
|
if class_label_map:
|
202
212
|
cls_label = str(class_label_map[cls_label - label_index_offset])
|
203
213
|
|
204
|
-
|
214
|
+
annotation_data = {"boxes": [boxes], "label": cls_label, "score": score}
|
215
|
+
|
216
|
+
if decode is not None:
|
217
|
+
# do segmentation processing only if we are able to decode it
|
218
|
+
segments = prediction.get("segmentation", None)
|
219
|
+
if segments is not None:
|
220
|
+
segments = _extract_segmentation_annotation(segments, decode)
|
221
|
+
if segments is not None:
|
222
|
+
annotation_data["points"] = segments
|
223
|
+
|
224
|
+
data.append(annotation_data)
|
205
225
|
|
206
226
|
return {"name": "prediction", "data": data}
|
207
227
|
|
208
228
|
|
229
|
+
def _extract_segmentation_annotation(segmentation_raw: str, decode: Callable) -> Optional[List[List[Any]]]:
|
230
|
+
"""Extracts segmentation annotation from compressed segmentations as list of polygons."""
|
231
|
+
try:
|
232
|
+
mask = decode(segmentation_raw)
|
233
|
+
contours, _ = cv2.findContours(mask, cv2.RETR_LIST, cv2.CHAIN_APPROX_SIMPLE)
|
234
|
+
annotations = [np.array(polygon).squeeze() for polygon in contours if len(polygon) >= 3]
|
235
|
+
return [annotation.ravel().tolist() for annotation in annotations]
|
236
|
+
except Exception as e:
|
237
|
+
LOGGER.warning(f"COMET WARNING: Failed to extract segmentation annotation: {e}")
|
238
|
+
return None
|
239
|
+
|
240
|
+
|
209
241
|
def _fetch_annotations(img_idx, image_path, batch, prediction_metadata_map, class_label_map, class_map):
|
210
242
|
"""Join the ground truth and prediction annotations if they exist."""
|
211
243
|
ground_truth_annotations = _format_ground_truth_annotations_for_detection(
|
212
244
|
img_idx, image_path, batch, class_label_map
|
213
245
|
)
|
214
|
-
prediction_annotations =
|
246
|
+
prediction_annotations = _format_prediction_annotations(
|
215
247
|
image_path, prediction_metadata_map, class_label_map, class_map
|
216
248
|
)
|
217
249
|
|
ultralytics/utils/loss.py
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: ultralytics
|
3
|
-
Version: 8.3.
|
3
|
+
Version: 8.3.87
|
4
4
|
Summary: Ultralytics YOLO 🚀 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
|
5
5
|
Author-email: Glenn Jocher <glenn.jocher@ultralytics.com>, Jing Qiu <jing.qiu@ultralytics.com>
|
6
6
|
Maintainer-email: Ultralytics <hello@ultralytics.com>
|
@@ -63,7 +63,7 @@ Provides-Extra: export
|
|
63
63
|
Requires-Dist: onnx>=1.12.0; extra == "export"
|
64
64
|
Requires-Dist: coremltools>=7.0; (platform_system != "Windows" and python_version <= "3.11") and extra == "export"
|
65
65
|
Requires-Dist: scikit-learn>=1.3.2; (platform_system != "Windows" and python_version <= "3.11") and extra == "export"
|
66
|
-
Requires-Dist: openvino
|
66
|
+
Requires-Dist: openvino!=2025.0.0,>=2024.0.0; extra == "export"
|
67
67
|
Requires-Dist: tensorflow>=2.0.0; extra == "export"
|
68
68
|
Requires-Dist: tensorflowjs>=3.9.0; extra == "export"
|
69
69
|
Requires-Dist: tensorstore>=0.1.63; (platform_machine == "aarch64" and python_version >= "3.9") and extra == "export"
|
@@ -248,13 +248,13 @@ See [Segmentation Docs](https://docs.ultralytics.com/tasks/segment/) for usage e
|
|
248
248
|
|
249
249
|
See [Classification Docs](https://docs.ultralytics.com/tasks/classify/) for usage examples with these models trained on [ImageNet](https://docs.ultralytics.com/datasets/classify/imagenet/), which include 1000 pretrained classes.
|
250
250
|
|
251
|
-
| Model | size<br><sup>(pixels) | acc<br><sup>top1 | acc<br><sup>top5 | Speed<br><sup>CPU ONNX<br>(ms) | Speed<br><sup>T4 TensorRT10<br>(ms) | params<br><sup>(M) | FLOPs<br><sup>(B) at
|
251
|
+
| Model | size<br><sup>(pixels) | acc<br><sup>top1 | acc<br><sup>top5 | Speed<br><sup>CPU ONNX<br>(ms) | Speed<br><sup>T4 TensorRT10<br>(ms) | params<br><sup>(M) | FLOPs<br><sup>(B) at 224 |
|
252
252
|
| -------------------------------------------------------------------------------------------- | --------------------- | ---------------- | ---------------- | ------------------------------ | ----------------------------------- | ------------------ | ------------------------ |
|
253
|
-
| [YOLO11n-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-cls.pt) | 224 | 70.0 | 89.4 | 5.0 ± 0.3 | 1.1 ± 0.0 | 1.6 |
|
254
|
-
| [YOLO11s-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-cls.pt) | 224 | 75.4 | 92.7 | 7.9 ± 0.2 | 1.3 ± 0.0 | 5.5 |
|
255
|
-
| [YOLO11m-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-cls.pt) | 224 | 77.3 | 93.9 | 17.2 ± 0.4 | 2.0 ± 0.0 | 10.4 |
|
256
|
-
| [YOLO11l-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-cls.pt) | 224 | 78.3 | 94.3 | 23.2 ± 0.3 | 2.8 ± 0.0 | 12.9 |
|
257
|
-
| [YOLO11x-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-cls.pt) | 224 | 79.5 | 94.9 | 41.4 ± 0.9 | 3.8 ± 0.0 | 28.4 |
|
253
|
+
| [YOLO11n-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n-cls.pt) | 224 | 70.0 | 89.4 | 5.0 ± 0.3 | 1.1 ± 0.0 | 1.6 | 0.5 |
|
254
|
+
| [YOLO11s-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11s-cls.pt) | 224 | 75.4 | 92.7 | 7.9 ± 0.2 | 1.3 ± 0.0 | 5.5 | 1.6 |
|
255
|
+
| [YOLO11m-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11m-cls.pt) | 224 | 77.3 | 93.9 | 17.2 ± 0.4 | 2.0 ± 0.0 | 10.4 | 5.0 |
|
256
|
+
| [YOLO11l-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11l-cls.pt) | 224 | 78.3 | 94.3 | 23.2 ± 0.3 | 2.8 ± 0.0 | 12.9 | 6.2 |
|
257
|
+
| [YOLO11x-cls](https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11x-cls.pt) | 224 | 79.5 | 94.9 | 41.4 ± 0.9 | 3.8 ± 0.0 | 28.4 | 13.7 |
|
258
258
|
|
259
259
|
- **acc** values are model accuracies on the [ImageNet](https://www.image-net.org/) dataset validation set. <br>Reproduce by `yolo val classify data=path/to/ImageNet device=0`
|
260
260
|
- **Speed** averaged over ImageNet val images using an [Amazon EC2 P4d](https://aws.amazon.com/ec2/instance-types/p4/) instance. <br>Reproduce by `yolo val classify data=path/to/ImageNet batch=1 device=0|cpu`
|
@@ -6,26 +6,26 @@ tests/test_engine.py,sha256=aGqZ8P7QO5C_nOa1b4FOyk92Ysdk5WiP-ST310Vyxys,4962
|
|
6
6
|
tests/test_exports.py,sha256=dpUT_FXFXzFoItfZwbxkPFXgEfaVqyfYwkIQW4teL38,9223
|
7
7
|
tests/test_integrations.py,sha256=p3DMnnPMKsV0Qm82JVJUIY1UZ67xRgF9E8AaL76TEHE,6154
|
8
8
|
tests/test_python.py,sha256=tW-EFJC2rjl_DvAa8khXGWYdypseQjrLjGHhe2p9r9A,23238
|
9
|
-
tests/test_solutions.py,sha256=
|
10
|
-
ultralytics/__init__.py,sha256=
|
9
|
+
tests/test_solutions.py,sha256=eCModsx8xxyMbuW_-7or8VnSEKgZQ3jrjAAqTwDKLDM,5216
|
10
|
+
ultralytics/__init__.py,sha256=ULHLXV_sdIQXbMm1Cvr8KnV1Myvi3Wd3Do7FizdhyB8,709
|
11
11
|
ultralytics/assets/bus.jpg,sha256=wCAZxJecGR63Od3ZRERe9Aja1Weayrb9Ug751DS_vGM,137419
|
12
12
|
ultralytics/assets/zidane.jpg,sha256=Ftc4aeMmen1O0A3o6GCDO9FlfBslLpTAw0gnetx7bts,50427
|
13
|
-
ultralytics/cfg/__init__.py,sha256=
|
13
|
+
ultralytics/cfg/__init__.py,sha256=AsNdyprXnrqdqnaBsUg1pdip-U96lVcjemswrlviwSY,39626
|
14
14
|
ultralytics/cfg/default.yaml,sha256=tHE_VB_tzq5K1BntCCukmFIViwiRv0R-H6ZNucCnYsY,8469
|
15
|
-
ultralytics/cfg/datasets/Argoverse.yaml,sha256=
|
15
|
+
ultralytics/cfg/datasets/Argoverse.yaml,sha256=_xlEDIJ9XkUo0v_iNL7FW079BoSeZtKSuLteKTtGbA8,3275
|
16
16
|
ultralytics/cfg/datasets/DOTAv1.5.yaml,sha256=SHND_CFkojxw5iQD5Mcgju2kCZIl0gW2ajuzv1cqoL0,1224
|
17
17
|
ultralytics/cfg/datasets/DOTAv1.yaml,sha256=j_DvXVQzZ4dQmf8I7oPX4v9xO3WZXztxV4Xo9VhUTsM,1194
|
18
|
-
ultralytics/cfg/datasets/GlobalWheat2020.yaml,sha256=
|
19
|
-
ultralytics/cfg/datasets/ImageNet.yaml,sha256=
|
20
|
-
ultralytics/cfg/datasets/Objects365.yaml,sha256=
|
21
|
-
ultralytics/cfg/datasets/SKU-110K.yaml,sha256=
|
22
|
-
ultralytics/cfg/datasets/VOC.yaml,sha256=
|
23
|
-
ultralytics/cfg/datasets/VisDrone.yaml,sha256=
|
18
|
+
ultralytics/cfg/datasets/GlobalWheat2020.yaml,sha256=TgPAhAnQAwviZcWRkuVTEww3u9VJ86rBlJvjj58ENu4,2157
|
19
|
+
ultralytics/cfg/datasets/ImageNet.yaml,sha256=6F1GXJg80iS8PJTcbAVbZX7Eb25NdJAAZ4UIS8mmrhk,42543
|
20
|
+
ultralytics/cfg/datasets/Objects365.yaml,sha256=E0WmOVH22cKpgyWSiuLxmAMd35x2O--kS8VLW-ONoqU,9370
|
21
|
+
ultralytics/cfg/datasets/SKU-110K.yaml,sha256=EmYFUdlxmF4SnijaifO3dHaP_uf95Vgz4FdckHeEVEM,2558
|
22
|
+
ultralytics/cfg/datasets/VOC.yaml,sha256=xQOx67XQaYCgUjHxp4HjY94zx7ZOphDGlwgzxYfaed0,3800
|
23
|
+
ultralytics/cfg/datasets/VisDrone.yaml,sha256=jONp3ws_RL1Iccnp81ho-zVhLUE63QfcvdUJ395h-GY,3263
|
24
24
|
ultralytics/cfg/datasets/african-wildlife.yaml,sha256=pENEc4cO8A-uAk1dLn1Kul9ofDGcUmeGuQARs13Plhg,930
|
25
25
|
ultralytics/cfg/datasets/brain-tumor.yaml,sha256=wDRZVNZ9Z_p2KRMaFpqrFY00riQ-GGfGYk7N4bDkGFw,856
|
26
26
|
ultralytics/cfg/datasets/carparts-seg.yaml,sha256=5fJKD-bLoio9-LUC09bPrt5qEYbCIQ7i5TAZ1VADeL8,1268
|
27
|
-
ultralytics/cfg/datasets/coco-pose.yaml,sha256=
|
28
|
-
ultralytics/cfg/datasets/coco.yaml,sha256=
|
27
|
+
ultralytics/cfg/datasets/coco-pose.yaml,sha256=NHdgSsGkHS0-X636p2-hExTJGdoWUSP1TPshH2nVRPk,1636
|
28
|
+
ultralytics/cfg/datasets/coco.yaml,sha256=chdzyIHLfekjOcng-G2_bpC57VUcHPjVvW8ENJfiQao,2619
|
29
29
|
ultralytics/cfg/datasets/coco128-seg.yaml,sha256=ifDPbVuuN7N2_3e8e_YBdTVcANYIOKORQMgXlsPS6D4,1995
|
30
30
|
ultralytics/cfg/datasets/coco128.yaml,sha256=udymG6qzF9Bvh_JYC7BOSXOUeA1Ia8ZmR2EzNGsY6YY,1978
|
31
31
|
ultralytics/cfg/datasets/coco8-pose.yaml,sha256=yfw2_SkCZO3ttPLiI0mfjxv5gr4-CA3i0elYP5PY71k,1022
|
@@ -35,15 +35,15 @@ ultralytics/cfg/datasets/crack-seg.yaml,sha256=QEnxOouOKQ3TM6Cl8pBnX5QLPWdChZEBA
|
|
35
35
|
ultralytics/cfg/datasets/dog-pose.yaml,sha256=Cr-J7dPhHmNfW9TKH48L22WPYmJFtWH-lbOAxLHnjKU,907
|
36
36
|
ultralytics/cfg/datasets/dota8.yaml,sha256=W43bp_6yUUVjs6vpogNrGI9vU7rLbEsSx6vyfIkDyj8,1073
|
37
37
|
ultralytics/cfg/datasets/hand-keypoints.yaml,sha256=5vue4kvPrAdd6ZyB90rZgtGUUHvSi3s_ht7jBBqX7a4,989
|
38
|
-
ultralytics/cfg/datasets/lvis.yaml,sha256=
|
38
|
+
ultralytics/cfg/datasets/lvis.yaml,sha256=jD-z6cny0l_Cl7xN6RqiFAc7a7odcVwr3E8_jmH-wzA,29716
|
39
39
|
ultralytics/cfg/datasets/medical-pills.yaml,sha256=3ho9VW8p5Hm1TuicguiL-akfC9dCZO5nwthO4sUR3k0,848
|
40
|
-
ultralytics/cfg/datasets/open-images-v7.yaml,sha256=
|
40
|
+
ultralytics/cfg/datasets/open-images-v7.yaml,sha256=ulWjGZG1zEVgOnZaqa3BbrEtsAEFDVEO7AgwL0p6OyU,12417
|
41
41
|
ultralytics/cfg/datasets/package-seg.yaml,sha256=uechtCYfX8OrJrO5zV1-uGwbr69lUSuon1oXguEkLGg,864
|
42
42
|
ultralytics/cfg/datasets/signature.yaml,sha256=eABYny9n4w3RleR3RQmb505DiBll8R5cvcjWj8wkuf0,789
|
43
43
|
ultralytics/cfg/datasets/tiger-pose.yaml,sha256=gCQc1AX04Xfhnms4czm7R_XnT2XFL2u-t3M8Yya20ds,925
|
44
|
-
ultralytics/cfg/datasets/xView.yaml,sha256=
|
45
|
-
ultralytics/cfg/models/11/yolo11-cls-resnet18.yaml,sha256=
|
46
|
-
ultralytics/cfg/models/11/yolo11-cls.yaml,sha256=
|
44
|
+
ultralytics/cfg/datasets/xView.yaml,sha256=3PRpBl6q53SUZ09u5efuhaKyeob45EUcxF4nQQqKnUQ,5353
|
45
|
+
ultralytics/cfg/models/11/yolo11-cls-resnet18.yaml,sha256=1Ycp9qMrwpb8rq7cqht3Q-1gMN0R87U35nm2j_isdro,524
|
46
|
+
ultralytics/cfg/models/11/yolo11-cls.yaml,sha256=KmI6FDQhGr3o1qvgCoLXwyPAF0VBFOZq2va-BKgWtyE,1414
|
47
47
|
ultralytics/cfg/models/11/yolo11-obb.yaml,sha256=x8XDI2WvbBDre79eslYafBDvu6AmdGbOzTfnq5UhmVM,2034
|
48
48
|
ultralytics/cfg/models/11/yolo11-pose.yaml,sha256=RUe-8rIrrYWItv0GMo_VaO9JfrK2NJSXfbhv0NOq9dk,2128
|
49
49
|
ultralytics/cfg/models/11/yolo11-seg.yaml,sha256=ozw5daUucWFCnJNVApK8TIijSe2qAlFmq_VoPyVu9Oo,2045
|
@@ -97,23 +97,23 @@ ultralytics/cfg/solutions/default.yaml,sha256=c-9thwI7y7VmIoIM6AW70Z0r825SToH2h7
|
|
97
97
|
ultralytics/cfg/trackers/botsort.yaml,sha256=D9doE5GQUe6HrAFzr7OfQFIGPFk0M_vJ0B_n7VjxH6Q,1080
|
98
98
|
ultralytics/cfg/trackers/bytetrack.yaml,sha256=6u-tiZlk16EqEwkNXaMrza6PAQmWj_ypgv26LGCtPDg,886
|
99
99
|
ultralytics/data/__init__.py,sha256=nAXaL1puCc7z_NjzQNlJnhbVhT9Fla2u7Dsqo7q1dAc,644
|
100
|
-
ultralytics/data/annotator.py,sha256=
|
100
|
+
ultralytics/data/annotator.py,sha256=88Qf4CPhmmKJi99VQiKNrLQMP4kPAX799_iftScfh2g,3085
|
101
101
|
ultralytics/data/augment.py,sha256=scrCrF_NUdB8gfxEqdVDTiSwkKR8FYN6bWZL_BXMKGU,120957
|
102
|
-
ultralytics/data/base.py,sha256=
|
102
|
+
ultralytics/data/base.py,sha256=JBmVrbrbvk0ImFVCMj3mDQ1GPY0PHak0LEFfw79iIX0,15214
|
103
103
|
ultralytics/data/build.py,sha256=gOU5SNABBNxwo5012N--WhjEnLK2ewycXIryMpbHg6U,7685
|
104
|
-
ultralytics/data/converter.py,sha256=
|
104
|
+
ultralytics/data/converter.py,sha256=tKPTtleDkDfPO0XbisQfa7SBwyTL4Sx19k2sZDWu3S4,24552
|
105
105
|
ultralytics/data/dataset.py,sha256=lxtH3JytNu6nsiPAIhe0uGuGGpkZ4ZRqvXM6eJw9rXU,23244
|
106
|
-
ultralytics/data/loaders.py,sha256=
|
107
|
-
ultralytics/data/split_dota.py,sha256=
|
108
|
-
ultralytics/data/utils.py,sha256=
|
106
|
+
ultralytics/data/loaders.py,sha256=YDaljB8u4bIwcU3eXRggsDlE78Jjpq_PeqZzOKQ_9qQ,28555
|
107
|
+
ultralytics/data/split_dota.py,sha256=c9fQWCVSKjlxCcktwSsCT6Ql-Md2qxnsEn4jAm02Yd0,10769
|
108
|
+
ultralytics/data/utils.py,sha256=AwFfSYAyjMmZ3mscwGTC99Sb4tzqSFxX23Fp1_lRHpc,33911
|
109
109
|
ultralytics/engine/__init__.py,sha256=lm6MckFYCPTbqIoX7w0s_daxdjNeBeKW6DXppv1-QUM,70
|
110
|
-
ultralytics/engine/exporter.py,sha256=
|
110
|
+
ultralytics/engine/exporter.py,sha256=JzczKGKr77IWet-DOCOhuduvTIErE75kqoJ66DMn_28,77471
|
111
111
|
ultralytics/engine/model.py,sha256=s8HsSBvdRgSbnKGULr7YW-ZWJKJsQpOoHd9Aih_nMt0,53427
|
112
112
|
ultralytics/engine/predictor.py,sha256=jiYDAjupOlRUpPvw9tu7or9PjXtLm-YCRiawANtWxj0,17881
|
113
|
-
ultralytics/engine/results.py,sha256=
|
114
|
-
ultralytics/engine/trainer.py,sha256=
|
115
|
-
ultralytics/engine/tuner.py,sha256=
|
116
|
-
ultralytics/engine/validator.py,sha256=
|
113
|
+
ultralytics/engine/results.py,sha256=NdnBvWCNDyfOPe7XwSWqhBppV2GmXEMH9LBbkeJ4Vjc,79620
|
114
|
+
ultralytics/engine/trainer.py,sha256=9T5Oo4H0nQCN62mxQClxScv_jlhb02Kre5tDMW7ZtTo,38005
|
115
|
+
ultralytics/engine/tuner.py,sha256=irydonYsAsW_hzK3JwSkiGOH51Uwcc9z-MqRhQrUTas,12092
|
116
|
+
ultralytics/engine/validator.py,sha256=_rND1qfLC9u3CNS2211i6vZJ7WNv0HYRITALPY-3KCc,15052
|
117
117
|
ultralytics/hub/__init__.py,sha256=1ifzSYV0PIT4ZWOm2V7HnpGyY3G3hCz0malw3AXHFlY,5660
|
118
118
|
ultralytics/hub/auth.py,sha256=akS7QMg93L_cBjDGOc0Jns5-m3ao_VzBCcyKLb4f0sI,5569
|
119
119
|
ultralytics/hub/session.py,sha256=us_8fZkBa2XyTGNyIjWiSSesJwMRXQv9P0sf12gh30U,16439
|
@@ -164,7 +164,7 @@ ultralytics/models/yolo/detect/val.py,sha256=jGfdp5cLibuE1-WJAHL1Gjw7BeLfDBDShkJ
|
|
164
164
|
ultralytics/models/yolo/obb/__init__.py,sha256=tQmpG8wVHsajWkZdmD6cjGohJ4ki64iSXQT8JY_dydo,221
|
165
165
|
ultralytics/models/yolo/obb/predict.py,sha256=SUgLzsxg1O77KxIeCj9IlSiqB9SfIwcoRtNZViqPS2E,1880
|
166
166
|
ultralytics/models/yolo/obb/train.py,sha256=7LJ04dYENfjdt1Jet0Cxh0nyIpmgIUtmz425ZEuZSn8,1550
|
167
|
-
ultralytics/models/yolo/obb/val.py,sha256=
|
167
|
+
ultralytics/models/yolo/obb/val.py,sha256=Tq5OCFHAsDWkUJP1DXMOfYJgwP0uGpalg-1JLk-OwNM,8937
|
168
168
|
ultralytics/models/yolo/pose/__init__.py,sha256=63xmuHZLNzV8I76HhVXAq4f2W0KTk8Oi9eL-Y204LyQ,227
|
169
169
|
ultralytics/models/yolo/pose/predict.py,sha256=O-LI_acPh_xoXd7ZcxpxAUbIzfj5FkrwEXLuN16Rl7c,2120
|
170
170
|
ultralytics/models/yolo/pose/train.py,sha256=472BgOjvDdNXe9GN68zO1ddRh5Cbmfg5m9_JZyHrTxY,2954
|
@@ -177,8 +177,8 @@ ultralytics/models/yolo/world/__init__.py,sha256=nlh8I6t8hMGz_vZg8QSlsUW1R-2eKvn
|
|
177
177
|
ultralytics/models/yolo/world/train.py,sha256=6PVmQ0G-22OOPPwP_rqSobe2LM6e2b_lC7lJCdW3UIk,3714
|
178
178
|
ultralytics/models/yolo/world/train_world.py,sha256=sCtg4Hnq9Y7amYjlQsdvTHXH8cKSooipvcXu_1Iyb2k,4885
|
179
179
|
ultralytics/nn/__init__.py,sha256=rjociYD9lo_K-d-1s6TbdWklPLjTcEHk7OIlRDJstIE,615
|
180
|
-
ultralytics/nn/autobackend.py,sha256=
|
181
|
-
ultralytics/nn/tasks.py,sha256=
|
180
|
+
ultralytics/nn/autobackend.py,sha256=aoM2n7FtWDqVqE-13kUlqJK7E4KRkD4eXh-hMGSs4i0,37448
|
181
|
+
ultralytics/nn/tasks.py,sha256=501y_Cmb3qkHJqMCq9THxTrulgtbkkLKX-_-UbCKzsg,49024
|
182
182
|
ultralytics/nn/modules/__init__.py,sha256=pVV5SSu6ktOusdVFr1kHK_WOkVLjCLO2W5XaLH-NF8w,2737
|
183
183
|
ultralytics/nn/modules/activation.py,sha256=oRkhMdqlNpIxQb35pTSUeHV-h0VyLl96GOqvIZ4OvT8,923
|
184
184
|
ultralytics/nn/modules/block.py,sha256=z0F0YD07C31VyMdYCeT5KoTgTpazIYW34xH7xgy02J4,52166
|
@@ -192,7 +192,7 @@ ultralytics/solutions/analytics.py,sha256=gIte8AnesGQ4YRGfQ05q0DF7q0wlFvFT7JC06D
|
|
192
192
|
ultralytics/solutions/distance_calculation.py,sha256=o20C78DNV5PbIKwM_TR5jMx8FyEUioBDcQ_1VnxJFzc,5562
|
193
193
|
ultralytics/solutions/heatmap.py,sha256=euiM7VbkblyFYFLM2oygamI-lIZvKQ-iQURhSE2MJl0,5331
|
194
194
|
ultralytics/solutions/object_counter.py,sha256=OL8gx5cQvEfCWwTPM0Nbk0YS42v7ySBWVU5WTFTLq1g,9641
|
195
|
-
ultralytics/solutions/parking_management.py,sha256=
|
195
|
+
ultralytics/solutions/parking_management.py,sha256=lywEbVAzu_P_Hhv-yrbD7DYaYfVAZjlUveknjDxPFjg,12788
|
196
196
|
ultralytics/solutions/queue_management.py,sha256=Jl9cq9aTmUPGxn-uT6DNRSsVGB8y4yU3C2VDynAPlMU,4959
|
197
197
|
ultralytics/solutions/region_counter.py,sha256=oc3iVn-oWfVvpqUD8zCZexibTjgwMSyutduk8JMaWpI,5245
|
198
198
|
ultralytics/solutions/security_alarm.py,sha256=OqFgoYZZImBBvUXInYNijiCpPaKbvZr8lAljwM7KsuU,5695
|
@@ -209,16 +209,16 @@ ultralytics/trackers/utils/__init__.py,sha256=lm6MckFYCPTbqIoX7w0s_daxdjNeBeKW6D
|
|
209
209
|
ultralytics/trackers/utils/gmc.py,sha256=kU54RozuGJcAVlyb5_HjXiNIUIX5VuH613AMc6Gdnwg,14597
|
210
210
|
ultralytics/trackers/utils/kalman_filter.py,sha256=OBvemZXptgn9v1sgBLvFomCqOWwjIB3-8wBbc8nakHo,21377
|
211
211
|
ultralytics/trackers/utils/matching.py,sha256=64PKHGoETwXhuZ9udE217hbjJHygLOPaYA66J2qMSno,7130
|
212
|
-
ultralytics/utils/__init__.py,sha256=
|
212
|
+
ultralytics/utils/__init__.py,sha256=p3-iu1q2mzeKGjb4S2aSx3QmSgv6cDT3rEf1RvHEwZM,49941
|
213
213
|
ultralytics/utils/autobatch.py,sha256=zc81HlAMArPASEbExty0E_zpITF8PVwin7w-xBFFZ5w,5048
|
214
|
-
ultralytics/utils/benchmarks.py,sha256=
|
214
|
+
ultralytics/utils/benchmarks.py,sha256=1ezgIDAyCZ4o3p963BEhc7zs23Hql_KwoEndI0OTr3Q,26841
|
215
215
|
ultralytics/utils/checks.py,sha256=WIQPdWtD2NhdKgrHTnqun6FDr73l4ejp0nsLtya_iOs,31038
|
216
216
|
ultralytics/utils/dist.py,sha256=fuiJQEnyyL-SighlI3hUlZPaaSreUl4Q39snF6OhQtI,2386
|
217
217
|
ultralytics/utils/downloads.py,sha256=5B1uwRr6Urb5ShZAAni5_tq9a-3o0fSAH3xNCULktFY,22100
|
218
218
|
ultralytics/utils/errors.py,sha256=sXKDEd8ws3L-yIfG_-P_h86axbm37sJNha7kFBJbQMQ,844
|
219
219
|
ultralytics/utils/files.py,sha256=c85NRofjGPMcpkV-yUo1Cwk8ZVquBGCEKlzbSVtXkQA,8252
|
220
220
|
ultralytics/utils/instance.py,sha256=z1oyyvz7wnCSUW_bvi0TbgAL0VxJtAWWXV9KWCoyJ_k,16887
|
221
|
-
ultralytics/utils/loss.py,sha256=
|
221
|
+
ultralytics/utils/loss.py,sha256=rL_jUOxcxL7kPTJKVLQsgwsJybnPbtDAE8FzftcOAHs,34188
|
222
222
|
ultralytics/utils/metrics.py,sha256=6VfTtPzPppuX2RfXr84GoI_ABPfHPhXbbMKkH2HvUVc,53672
|
223
223
|
ultralytics/utils/ops.py,sha256=e7HNeufSrOnaHaie8w-QHNnyaClcHuiGZvr3CXRABsU,34621
|
224
224
|
ultralytics/utils/patches.py,sha256=ARR89dP4YKq7Dd3g2eU-ukbnc2lo3BELukL_1c_d854,3298
|
@@ -230,7 +230,7 @@ ultralytics/utils/tuner.py,sha256=gySDBzTlq_klTOq6CGEyUN58HXzPCulObaMBHacXzHo,62
|
|
230
230
|
ultralytics/utils/callbacks/__init__.py,sha256=hzL63Rce6VkZhP4Lcim9LKjadixaQG86nKqPhk7IkS0,242
|
231
231
|
ultralytics/utils/callbacks/base.py,sha256=nbeSPjPCOb0M6FsFQ5-uFxXVzUYwmFyE4wFoA66Jpug,5803
|
232
232
|
ultralytics/utils/callbacks/clearml.py,sha256=JH70T1OLPd9GSvC6HnaKkZHTr8fyE9RRcz3ukL62QPw,5961
|
233
|
-
ultralytics/utils/callbacks/comet.py,sha256=
|
233
|
+
ultralytics/utils/callbacks/comet.py,sha256=P9U9yja9BXeMwBV76OP-6_VoQixgkOO_9bnyXTSOTY4,17366
|
234
234
|
ultralytics/utils/callbacks/dvc.py,sha256=4ln4wqU3ZZTK5JfvUmbKfQuIdO6QohDSnFVV4v5Pl8E,5073
|
235
235
|
ultralytics/utils/callbacks/hub.py,sha256=bqU83kBnNZ0U9qjm0I9xvM4DWA0VMxSLxQDgjuTZbKM,3977
|
236
236
|
ultralytics/utils/callbacks/mlflow.py,sha256=3y4xOPLZe1bES0ETWGJYywulTEUGv8I849e2TNms8yI,5420
|
@@ -238,9 +238,9 @@ ultralytics/utils/callbacks/neptune.py,sha256=waZ_bRu0-qBKujTLuqonC2gx2DkgBuVnfq
|
|
238
238
|
ultralytics/utils/callbacks/raytune.py,sha256=A_NVWjyPNf2m6iB-mbW7SMpyqM9QBvpbPa-MCMFMtdk,727
|
239
239
|
ultralytics/utils/callbacks/tensorboard.py,sha256=JHOEVlNQ5dYJPd4Z-EvqbXowuK5uA0p8wPgyyaIUQs0,4194
|
240
240
|
ultralytics/utils/callbacks/wb.py,sha256=ayhT2y62AcSOacnawshATU0rWrlSFQ77mrGgBdRl3W4,7086
|
241
|
-
ultralytics-8.3.
|
242
|
-
ultralytics-8.3.
|
243
|
-
ultralytics-8.3.
|
244
|
-
ultralytics-8.3.
|
245
|
-
ultralytics-8.3.
|
246
|
-
ultralytics-8.3.
|
241
|
+
ultralytics-8.3.87.dist-info/LICENSE,sha256=DZak_2itbUtvHzD3E7GNUYSRK6jdOJ-GqncQ2weavLA,34523
|
242
|
+
ultralytics-8.3.87.dist-info/METADATA,sha256=llD7ywfVWn6K8vDAm587x9M_43IZ9qKZWNQS-qiLHUU,35169
|
243
|
+
ultralytics-8.3.87.dist-info/WHEEL,sha256=52BFRY2Up02UkjOa29eZOS2VxUrpPORXg1pkohGGUS8,91
|
244
|
+
ultralytics-8.3.87.dist-info/entry_points.txt,sha256=YM_wiKyTe9yRrsEfqvYolNO5ngwfoL4-NwgKzc8_7sI,93
|
245
|
+
ultralytics-8.3.87.dist-info/top_level.txt,sha256=XP49TwiMw4QGsvTLSYiJhz1xF_k7ev5mQ8jJXaXi45Q,12
|
246
|
+
ultralytics-8.3.87.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|