ultralytics 8.2.7__py3-none-any.whl → 8.2.8__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.
Potentially problematic release.
This version of ultralytics might be problematic. Click here for more details.
- ultralytics/__init__.py +1 -1
- ultralytics/data/augment.py +0 -1
- ultralytics/data/build.py +3 -2
- ultralytics/engine/trainer.py +1 -1
- ultralytics/solutions/parking_management.py +2 -1
- ultralytics/utils/instance.py +6 -7
- {ultralytics-8.2.7.dist-info → ultralytics-8.2.8.dist-info}/METADATA +2 -2
- {ultralytics-8.2.7.dist-info → ultralytics-8.2.8.dist-info}/RECORD +12 -12
- {ultralytics-8.2.7.dist-info → ultralytics-8.2.8.dist-info}/LICENSE +0 -0
- {ultralytics-8.2.7.dist-info → ultralytics-8.2.8.dist-info}/WHEEL +0 -0
- {ultralytics-8.2.7.dist-info → ultralytics-8.2.8.dist-info}/entry_points.txt +0 -0
- {ultralytics-8.2.7.dist-info → ultralytics-8.2.8.dist-info}/top_level.txt +0 -0
ultralytics/__init__.py
CHANGED
ultralytics/data/augment.py
CHANGED
|
@@ -917,7 +917,6 @@ class Albumentations:
|
|
|
917
917
|
return labels
|
|
918
918
|
|
|
919
919
|
|
|
920
|
-
# TODO: technically this is not an augmentation, maybe we should put this to another files
|
|
921
920
|
class Format:
|
|
922
921
|
"""
|
|
923
922
|
Formats image annotations for object detection, instance segmentation, and pose estimation tasks. The class
|
ultralytics/data/build.py
CHANGED
|
@@ -20,7 +20,7 @@ from ultralytics.data.loaders import (
|
|
|
20
20
|
autocast_list,
|
|
21
21
|
)
|
|
22
22
|
from ultralytics.data.utils import IMG_FORMATS, VID_FORMATS
|
|
23
|
-
from ultralytics.utils import NUM_THREADS, RANK, colorstr
|
|
23
|
+
from ultralytics.utils import LINUX, NUM_THREADS, RANK, colorstr
|
|
24
24
|
from ultralytics.utils.checks import check_file
|
|
25
25
|
|
|
26
26
|
from .dataset import GroundingDataset, YOLODataset, YOLOMultiModalDataset
|
|
@@ -81,7 +81,8 @@ def seed_worker(worker_id): # noqa
|
|
|
81
81
|
worker_seed = torch.initial_seed() % 2**32
|
|
82
82
|
np.random.seed(worker_seed)
|
|
83
83
|
random.seed(worker_seed)
|
|
84
|
-
os
|
|
84
|
+
if LINUX and hasattr(os, "sched_setaffinity"): # unsupported on macOS and Windows
|
|
85
|
+
os.sched_setaffinity(0, range(NUM_THREADS)) # fix https://github.com/ultralytics/ultralytics/pull/11195
|
|
85
86
|
|
|
86
87
|
|
|
87
88
|
def build_yolo_dataset(cfg, img_path, batch, data, mode="train", rect=False, stride=32, multi_modal=False):
|
ultralytics/engine/trainer.py
CHANGED
|
@@ -329,6 +329,7 @@ class BaseTrainer:
|
|
|
329
329
|
base_idx = (self.epochs - self.args.close_mosaic) * nb
|
|
330
330
|
self.plot_idx.extend([base_idx, base_idx + 1, base_idx + 2])
|
|
331
331
|
epoch = self.start_epoch
|
|
332
|
+
self.optimizer.zero_grad() # zero any resumed gradients to ensure stability on train start
|
|
332
333
|
while True:
|
|
333
334
|
self.epoch = epoch
|
|
334
335
|
self.run_callbacks("on_train_epoch_start")
|
|
@@ -349,7 +350,6 @@ class BaseTrainer:
|
|
|
349
350
|
LOGGER.info(self.progress_string())
|
|
350
351
|
pbar = TQDM(enumerate(self.train_loader), total=nb)
|
|
351
352
|
self.tloss = None
|
|
352
|
-
self.optimizer.zero_grad()
|
|
353
353
|
for i, batch in pbar:
|
|
354
354
|
self.run_callbacks("on_train_batch_start")
|
|
355
355
|
# Warmup
|
|
@@ -14,7 +14,7 @@ import tkinter as tk
|
|
|
14
14
|
|
|
15
15
|
class ParkingPtsSelection:
|
|
16
16
|
def __init__(self, master):
|
|
17
|
-
|
|
17
|
+
"""Initializes the UI for selecting parking zone points in a tkinter window."""
|
|
18
18
|
self.master = master
|
|
19
19
|
master.title("Ultralytics Parking Zones Points Selector")
|
|
20
20
|
self.initialize_ui()
|
|
@@ -109,6 +109,7 @@ class ParkingPtsSelection:
|
|
|
109
109
|
messagebox.showwarning("Warning", "No bounding boxes to remove.")
|
|
110
110
|
|
|
111
111
|
def save_to_json(self):
|
|
112
|
+
"""Saves rescaled bounding boxes to 'bounding_boxes.json' based on image-to-canvas size ratio."""
|
|
112
113
|
canvas_width, canvas_height = self.canvas.winfo_width(), self.canvas.winfo_height()
|
|
113
114
|
width_scaling_factor = self.img_width / canvas_width
|
|
114
115
|
height_scaling_factor = self.img_height / canvas_height
|
ultralytics/utils/instance.py
CHANGED
|
@@ -72,8 +72,11 @@ class Bboxes:
|
|
|
72
72
|
|
|
73
73
|
def areas(self):
|
|
74
74
|
"""Return box areas."""
|
|
75
|
-
|
|
76
|
-
|
|
75
|
+
return (
|
|
76
|
+
(self.bboxes[:, 2] - self.bboxes[:, 0]) * (self.bboxes[:, 3] - self.bboxes[:, 1]) # format xyxy
|
|
77
|
+
if self.format == "xyxy"
|
|
78
|
+
else self.bboxes[:, 3] * self.bboxes[:, 2] # format xywh or ltwh
|
|
79
|
+
)
|
|
77
80
|
|
|
78
81
|
# def denormalize(self, w, h):
|
|
79
82
|
# if not self.normalized:
|
|
@@ -340,11 +343,7 @@ class Instances:
|
|
|
340
343
|
self.keypoints[..., 1] = self.keypoints[..., 1].clip(0, h)
|
|
341
344
|
|
|
342
345
|
def remove_zero_area_boxes(self):
|
|
343
|
-
"""
|
|
344
|
-
Remove zero-area boxes, i.e. after clipping some boxes may have zero width or height.
|
|
345
|
-
|
|
346
|
-
This removes them.
|
|
347
|
-
"""
|
|
346
|
+
"""Remove zero-area boxes, i.e. after clipping some boxes may have zero width or height."""
|
|
348
347
|
good = self.bbox_areas > 0
|
|
349
348
|
if not all(good):
|
|
350
349
|
self._bboxes = self._bboxes[good]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: ultralytics
|
|
3
|
-
Version: 8.2.
|
|
3
|
+
Version: 8.2.8
|
|
4
4
|
Summary: Ultralytics YOLOv8 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
|
|
5
5
|
Author: Glenn Jocher, Ayush Chaurasia, Jing Qiu
|
|
6
6
|
Maintainer: Glenn Jocher, Ayush Chaurasia, Jing Qiu
|
|
@@ -73,7 +73,7 @@ Requires-Dist: tensorflowjs >=3.9.0 ; (python_version <= "3.11") and extra == 'e
|
|
|
73
73
|
Provides-Extra: extra
|
|
74
74
|
Requires-Dist: hub-sdk >=0.0.5 ; extra == 'extra'
|
|
75
75
|
Requires-Dist: ipython ; extra == 'extra'
|
|
76
|
-
Requires-Dist: albumentations
|
|
76
|
+
Requires-Dist: albumentations <=1.4.4,>=1.0.3 ; extra == 'extra'
|
|
77
77
|
Requires-Dist: pycocotools >=2.0.7 ; extra == 'extra'
|
|
78
78
|
Provides-Extra: logging
|
|
79
79
|
Requires-Dist: comet ; extra == 'logging'
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
ultralytics/__init__.py,sha256=
|
|
1
|
+
ultralytics/__init__.py,sha256=n816rXwWPnPOPJ_vyk16ge6P1BJOJg1x8rBo30fvZ6U,632
|
|
2
2
|
ultralytics/assets/bus.jpg,sha256=wCAZxJecGR63Od3ZRERe9Aja1Weayrb9Ug751DS_vGM,137419
|
|
3
3
|
ultralytics/assets/zidane.jpg,sha256=Ftc4aeMmen1O0A3o6GCDO9FlfBslLpTAw0gnetx7bts,50427
|
|
4
4
|
ultralytics/cfg/__init__.py,sha256=4ZnvY2ULMGofFhjaRIzKQlGC5YVkvWkEAYAhnsKC1Po,21312
|
|
@@ -64,9 +64,9 @@ ultralytics/cfg/trackers/botsort.yaml,sha256=YrPmj18p1UU40kJH5NRdL_4S8f7knggkk_q
|
|
|
64
64
|
ultralytics/cfg/trackers/bytetrack.yaml,sha256=QvHmtuwulK4X6j3T5VEqtCm0sbWWBUVmWPcCcM20qe0,688
|
|
65
65
|
ultralytics/data/__init__.py,sha256=VGe-ATG7j35F4A4r8Jmzffjlhve4JAJPgRa5ahKTU18,616
|
|
66
66
|
ultralytics/data/annotator.py,sha256=evXQzARVerc0hb9ol-n_GrrHf-dlXO4lCMMWEZoJ2UM,2117
|
|
67
|
-
ultralytics/data/augment.py,sha256=
|
|
67
|
+
ultralytics/data/augment.py,sha256=tPnqJAP85-Ei9BnyJhd4liLjRn_8s-289mNc8adXpdk,57650
|
|
68
68
|
ultralytics/data/base.py,sha256=9dZcoXtczloWSsbU-sOa9NlJ7lIGoarEUAp2rzP1jMI,13481
|
|
69
|
-
ultralytics/data/build.py,sha256=
|
|
69
|
+
ultralytics/data/build.py,sha256=i_akfoF5ZrDCzXNpBeZDPvkLo61LN-GiYWjM7C5dKYA,7486
|
|
70
70
|
ultralytics/data/converter.py,sha256=NLDiV67RshbKQnMJUiQQF11boVzEqgi2Hz39nKVAI4U,17528
|
|
71
71
|
ultralytics/data/dataset.py,sha256=NFaXyHRn64TyTEbtSkr7SkqWXK8bEJl6lZ6M1JwO3MY,22201
|
|
72
72
|
ultralytics/data/loaders.py,sha256=UxNLLV6rwUDog9MSOkHpDn52TO-X2g2P4a5ZwvB7Ii8,23142
|
|
@@ -82,7 +82,7 @@ ultralytics/engine/exporter.py,sha256=5dgkElp8YfZXWp6yOXPLVVD650atg59UbWoFtpKgtP
|
|
|
82
82
|
ultralytics/engine/model.py,sha256=4zSVSBP8Ex49bJjnOXm7g3Qr_NgbplHPCjdnVfZwfxM,40019
|
|
83
83
|
ultralytics/engine/predictor.py,sha256=wQRKdWGDTP5A6CS0gTC6U3RPDMhP3QkEzWSPm6eqCkU,17022
|
|
84
84
|
ultralytics/engine/results.py,sha256=MvrOBrBlRF7kbL-QwysMf9mIDy_lwQBTTYvy1x1FMME,30667
|
|
85
|
-
ultralytics/engine/trainer.py,sha256=
|
|
85
|
+
ultralytics/engine/trainer.py,sha256=GpseAovVKLRgAoqG4bEVtQqemWdDcxrY7gE3vGRU9gs,35048
|
|
86
86
|
ultralytics/engine/tuner.py,sha256=iZrgMmXSDpfuDu4bdFRflmAsscys2-8W8qAGxSyOVJE,11844
|
|
87
87
|
ultralytics/engine/validator.py,sha256=Y21Uo8_Zto4qjk_YqQk6k7tyfpq_Qk9cfjeXeyDRxs8,14643
|
|
88
88
|
ultralytics/hub/__init__.py,sha256=U4j-2QPdwSDlxw6RgFYnnJXOoIzLtwke4TkY2A8q4ws,5068
|
|
@@ -158,7 +158,7 @@ ultralytics/solutions/ai_gym.py,sha256=IZHpvmNyEQT_aqMTrA5sIjCsl3_5Zl2WG31HxGT6K
|
|
|
158
158
|
ultralytics/solutions/distance_calculation.py,sha256=N1QB5uDG_6sp8jD5uSwp_NTPmyP4UCqJm9G2lNrgpr8,6334
|
|
159
159
|
ultralytics/solutions/heatmap.py,sha256=LDY8cpmsenkaWgDmaKuOPMyQcPCH4jQeMvgbZlTx2fc,11970
|
|
160
160
|
ultralytics/solutions/object_counter.py,sha256=nYwUN_9M5azW9zET_hnV7wIY8gDNR4LtUoWo4C2cbXw,11287
|
|
161
|
-
ultralytics/solutions/parking_management.py,sha256=
|
|
161
|
+
ultralytics/solutions/parking_management.py,sha256=x7td7B_K600PZASikbRxwvPiv-xbm1quLpJE82Q3DmQ,8809
|
|
162
162
|
ultralytics/solutions/queue_management.py,sha256=TBQ2dIKYtymBjhdw0Enxa22KHyH3IdXf2C-1Se21siA,6684
|
|
163
163
|
ultralytics/solutions/speed_estimation.py,sha256=lvaU-F8f3V4KFVKFaNS7isIdYtMSFjh_zF9gl0Mals8,6714
|
|
164
164
|
ultralytics/trackers/__init__.py,sha256=j72IgH2dZHQArMPK4YwcV5ieIw94fYvlGdQjB9cOQKw,227
|
|
@@ -178,7 +178,7 @@ ultralytics/utils/dist.py,sha256=3HeNbY2gp7vYhcvVhsrvTrQXpQmgT8tpmnzApf3eQRA,226
|
|
|
178
178
|
ultralytics/utils/downloads.py,sha256=Rx32imHkKyVltEDMiCtCT2N5aA9Cud_0PyIUoTh4ru0,21496
|
|
179
179
|
ultralytics/utils/errors.py,sha256=GqP_Jgj_n0paxn8OMhn3DTCgoNkB2WjUcUaqs-M6SQk,816
|
|
180
180
|
ultralytics/utils/files.py,sha256=TVfY0Wi5IsUc4YdsDzC0dAg-jAP5exYvwqB3VmXhDLY,6761
|
|
181
|
-
ultralytics/utils/instance.py,sha256=
|
|
181
|
+
ultralytics/utils/instance.py,sha256=5daM5nkxBv9hr5QzyII8zmuFj24hHuNtcr4EMCHAtpY,15654
|
|
182
182
|
ultralytics/utils/loss.py,sha256=ejXnPEIAzNEoNz2UjW0_fcdeUs9Hy-jPzUrJ3FiIIwE,32717
|
|
183
183
|
ultralytics/utils/metrics.py,sha256=XPD-xP0fchR8KgCuTcihV2-n0EK1cWi3-53BWN_pLuA,53518
|
|
184
184
|
ultralytics/utils/ops.py,sha256=wZCWx7dm5GJNIJHyZaFJRetGcQ7prdv-anplqq9figQ,33309
|
|
@@ -199,9 +199,9 @@ ultralytics/utils/callbacks/neptune.py,sha256=5Z3ua5YBTUS56FH8VQKQG1aaIo9fH8GEyz
|
|
|
199
199
|
ultralytics/utils/callbacks/raytune.py,sha256=ODVYzy-CoM4Uge0zjkh3Hnh9nF2M0vhDrSenXnvcizw,705
|
|
200
200
|
ultralytics/utils/callbacks/tensorboard.py,sha256=Z1veCVcn9THPhdplWuIzwlsW2yF7y-On9IZIk3khM0Y,4135
|
|
201
201
|
ultralytics/utils/callbacks/wb.py,sha256=woCQVuZzqtM5KnwxIibcfM3sFBYojeMPnv11jrRaIQA,6674
|
|
202
|
-
ultralytics-8.2.
|
|
203
|
-
ultralytics-8.2.
|
|
204
|
-
ultralytics-8.2.
|
|
205
|
-
ultralytics-8.2.
|
|
206
|
-
ultralytics-8.2.
|
|
207
|
-
ultralytics-8.2.
|
|
202
|
+
ultralytics-8.2.8.dist-info/LICENSE,sha256=DZak_2itbUtvHzD3E7GNUYSRK6jdOJ-GqncQ2weavLA,34523
|
|
203
|
+
ultralytics-8.2.8.dist-info/METADATA,sha256=0_6ZyqamPH8rNnzU4V6g9fCmvyreK9r_QX8OuLfXlTw,40701
|
|
204
|
+
ultralytics-8.2.8.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
205
|
+
ultralytics-8.2.8.dist-info/entry_points.txt,sha256=YM_wiKyTe9yRrsEfqvYolNO5ngwfoL4-NwgKzc8_7sI,93
|
|
206
|
+
ultralytics-8.2.8.dist-info/top_level.txt,sha256=XP49TwiMw4QGsvTLSYiJhz1xF_k7ev5mQ8jJXaXi45Q,12
|
|
207
|
+
ultralytics-8.2.8.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|