ultralytics 8.1.32__py3-none-any.whl → 8.1.33__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 CHANGED
@@ -1,6 +1,6 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
2
 
3
- __version__ = "8.1.32"
3
+ __version__ = "8.1.33"
4
4
 
5
5
  from ultralytics.data.explorer.explorer import Explorer
6
6
  from ultralytics.models import RTDETR, SAM, YOLO, YOLOWorld
@@ -112,6 +112,7 @@ CFG_FRACTION_KEYS = {
112
112
  "perspective",
113
113
  "flipud",
114
114
  "fliplr",
115
+ "bgr",
115
116
  "mosaic",
116
117
  "mixup",
117
118
  "copy_paste",
@@ -111,6 +111,7 @@ shear: 0.0 # (float) image shear (+/- deg)
111
111
  perspective: 0.0 # (float) image perspective (+/- fraction), range 0-0.001
112
112
  flipud: 0.0 # (float) image flip up-down (probability)
113
113
  fliplr: 0.5 # (float) image flip left-right (probability)
114
+ bgr: 0.0 # (float) image channel BGR (probability)
114
115
  mosaic: 1.0 # (float) image mosaic (probability)
115
116
  mixup: 0.0 # (float) image mixup (probability)
116
117
  copy_paste: 0.0 # (float) segment copy-paste (probability)
@@ -886,6 +886,7 @@ class Format:
886
886
  mask_ratio (int): Downsample ratio for masks. Default is 4.
887
887
  mask_overlap (bool): Whether to overlap masks. Default is True.
888
888
  batch_idx (bool): Keep batch indexes. Default is True.
889
+ bgr (float): The probability to return BGR images. Default is 0.0.
889
890
  """
890
891
 
891
892
  def __init__(
@@ -898,6 +899,7 @@ class Format:
898
899
  mask_ratio=4,
899
900
  mask_overlap=True,
900
901
  batch_idx=True,
902
+ bgr=0.0,
901
903
  ):
902
904
  """Initializes the Format class with given parameters."""
903
905
  self.bbox_format = bbox_format
@@ -908,6 +910,7 @@ class Format:
908
910
  self.mask_ratio = mask_ratio
909
911
  self.mask_overlap = mask_overlap
910
912
  self.batch_idx = batch_idx # keep the batch indexes
913
+ self.bgr = bgr
911
914
 
912
915
  def __call__(self, labels):
913
916
  """Return formatted image, classes, bounding boxes & keypoints to be used by 'collate_fn'."""
@@ -948,7 +951,8 @@ class Format:
948
951
  """Format the image for YOLO from Numpy array to PyTorch tensor."""
949
952
  if len(img.shape) < 3:
950
953
  img = np.expand_dims(img, -1)
951
- img = np.ascontiguousarray(img.transpose(2, 0, 1)[::-1])
954
+ img = img.transpose(2, 0, 1)
955
+ img = np.ascontiguousarray(img[::-1] if random.uniform(0, 1) > self.bgr else img)
952
956
  img = torch.from_numpy(img)
953
957
  return img
954
958
 
@@ -167,6 +167,7 @@ class YOLODataset(BaseDataset):
167
167
  batch_idx=True,
168
168
  mask_ratio=hyp.mask_ratio,
169
169
  mask_overlap=hyp.overlap_mask,
170
+ bgr=hyp.bgr if self.augment else 0.0, # only affect training.
170
171
  )
171
172
  )
172
173
  return transforms
@@ -119,30 +119,27 @@ class Model(nn.Module):
119
119
  self.metrics = None # validation/training metrics
120
120
  self.session = None # HUB session
121
121
  self.task = task # task type
122
- self.model_name = model = str(model).strip() # strip spaces
122
+ model = str(model).strip()
123
123
 
124
124
  # Check if Ultralytics HUB model from https://hub.ultralytics.com
125
125
  if self.is_hub_model(model):
126
126
  # Fetch model from HUB
127
- checks.check_requirements("hub-sdk>=0.0.5")
127
+ checks.check_requirements("hub-sdk>=0.0.6")
128
128
  self.session = self._get_hub_session(model)
129
129
  model = self.session.model_file
130
130
 
131
131
  # Check if Triton Server model
132
132
  elif self.is_triton_model(model):
133
- self.model = model
133
+ self.model_name = self.model = model
134
134
  self.task = task
135
135
  return
136
136
 
137
137
  # Load or create new YOLO model
138
- model = checks.check_model_file_from_stem(model) # add suffix, i.e. yolov8n -> yolov8n.pt
139
138
  if Path(model).suffix in (".yaml", ".yml"):
140
139
  self._new(model, task=task, verbose=verbose)
141
140
  else:
142
141
  self._load(model, task=task)
143
142
 
144
- self.model_name = model
145
-
146
143
  def __call__(
147
144
  self,
148
145
  source: Union[str, Path, int, list, tuple, np.ndarray, torch.Tensor] = None,
@@ -190,8 +187,8 @@ class Model(nn.Module):
190
187
  return any(
191
188
  (
192
189
  model.startswith(f"{HUB_WEB_ROOT}/models/"), # i.e. https://hub.ultralytics.com/models/MODEL_ID
193
- [len(x) for x in model.split("_")] == [42, 20], # APIKEY_MODELID
194
- len(model) == 20 and not Path(model).exists() and all(x not in model for x in "./\\"), # MODELID
190
+ [len(x) for x in model.split("_")] == [42, 20], # APIKEY_MODEL
191
+ len(model) == 20 and not Path(model).exists() and all(x not in model for x in "./\\"), # MODEL
195
192
  )
196
193
  )
197
194
 
@@ -215,6 +212,7 @@ class Model(nn.Module):
215
212
  # Below added to allow export from YAMLs
216
213
  self.model.args = {**DEFAULT_CFG_DICT, **self.overrides} # combine default and model args (prefer model args)
217
214
  self.model.task = self.task
215
+ self.model_name = cfg
218
216
 
219
217
  def _load(self, weights: str, task=None) -> None:
220
218
  """
@@ -224,19 +222,23 @@ class Model(nn.Module):
224
222
  weights (str): model checkpoint to be loaded
225
223
  task (str | None): model task
226
224
  """
227
- suffix = Path(weights).suffix
228
- if suffix == ".pt":
225
+ if weights.lower().startswith(("https://", "http://", "rtsp://", "rtmp://", "tcp://")):
226
+ weights = checks.check_file(weights) # automatically download and return local filename
227
+ weights = checks.check_model_file_from_stem(weights) # add suffix, i.e. yolov8n -> yolov8n.pt
228
+
229
+ if Path(weights).suffix == ".pt":
229
230
  self.model, self.ckpt = attempt_load_one_weight(weights)
230
231
  self.task = self.model.args["task"]
231
232
  self.overrides = self.model.args = self._reset_ckpt_args(self.model.args)
232
233
  self.ckpt_path = self.model.pt_path
233
234
  else:
234
- weights = checks.check_file(weights)
235
+ weights = checks.check_file(weights) # runs in all cases, not redundant with above call
235
236
  self.model, self.ckpt = weights, None
236
237
  self.task = task or guess_model_task(weights)
237
238
  self.ckpt_path = weights
238
239
  self.overrides["model"] = weights
239
240
  self.overrides["task"] = self.task
241
+ self.model_name = weights
240
242
 
241
243
  def _check_is_pytorch_model(self) -> None:
242
244
  """Raises TypeError is model is not a PyTorch model."""
@@ -95,6 +95,7 @@ class Tuner:
95
95
  "perspective": (0.0, 0.001), # image perspective (+/- fraction), range 0-0.001
96
96
  "flipud": (0.0, 1.0), # image flip up-down (probability)
97
97
  "fliplr": (0.0, 1.0), # image flip left-right (probability)
98
+ "bgr": (0.0, 1.0), # image channel bgr (probability)
98
99
  "mosaic": (0.0, 1.0), # image mixup (probability)
99
100
  "mixup": (0.0, 1.0), # image mixup (probability)
100
101
  "copy_paste": (0.0, 1.0), # segment copy-paste (probability)
@@ -23,7 +23,7 @@ def login(api_key: str = None, save=True) -> bool:
23
23
  Returns:
24
24
  (bool): True if authentication is successful, False otherwise.
25
25
  """
26
- checks.check_requirements("hub-sdk>=0.0.2")
26
+ checks.check_requirements("hub-sdk>=0.0.6")
27
27
  from hub_sdk import HUBClient
28
28
 
29
29
  api_key_url = f"{HUB_WEB_ROOT}/settings?tab=api+keys" # set the redirect URL
@@ -202,13 +202,10 @@ class AutoBackend(nn.Module):
202
202
  ov_model = core.read_model(model=str(w), weights=w.with_suffix(".bin"))
203
203
  if ov_model.get_parameters()[0].get_layout().empty:
204
204
  ov_model.get_parameters()[0].set_layout(ov.Layout("NCHW"))
205
- batch_dim = ov.get_batch(ov_model)
206
- if batch_dim.is_static:
207
- batch_size = batch_dim.get_length()
208
205
 
209
206
  # OpenVINO inference modes are 'LATENCY', 'THROUGHPUT' (not recommended), or 'CUMULATIVE_THROUGHPUT'
210
207
  inference_mode = "CUMULATIVE_THROUGHPUT" if batch > 1 else "LATENCY"
211
- LOGGER.info(f"Using OpenVINO {inference_mode} mode for batch-size={batch_size} inference...")
208
+ LOGGER.info(f"Using OpenVINO {inference_mode} mode for batch={batch} inference...")
212
209
  ov_compiled_model = core.compile_model(
213
210
  ov_model,
214
211
  device_name="AUTO", # AUTO selects best available device, do not modify
@@ -606,7 +603,7 @@ class AutoBackend(nn.Module):
606
603
  from ultralytics.engine.exporter import export_formats
607
604
 
608
605
  sf = list(export_formats().Suffix) # export suffixes
609
- if not is_url(p, check=False) and not isinstance(p, str):
606
+ if not is_url(p) and not isinstance(p, str):
610
607
  check_suffix(p, sf) # checks
611
608
  name = Path(p).name
612
609
  types = [s in name for s in sf]
@@ -315,7 +315,7 @@ def check_font(font="Arial.ttf"):
315
315
 
316
316
  # Download to USER_CONFIG_DIR if missing
317
317
  url = f"https://ultralytics.com/assets/{name}"
318
- if downloads.is_url(url):
318
+ if downloads.is_url(url, check=True):
319
319
  downloads.safe_download(url=url, file=file)
320
320
  return file
321
321
 
@@ -498,7 +498,7 @@ def check_file(file, suffix="", download=True, hard=True):
498
498
  raise FileNotFoundError(f"'{file}' does not exist")
499
499
  elif len(files) > 1 and hard:
500
500
  raise FileNotFoundError(f"Multiple files match '{file}', specify exact path: {files}")
501
- return files[0] if len(files) else [] # return file
501
+ return files[0] if len(files) else [] if hard else file # return file
502
502
 
503
503
 
504
504
  def check_yaml(file, suffix=(".yaml", ".yml"), hard=True):
@@ -726,4 +726,4 @@ def cuda_is_available() -> bool:
726
726
 
727
727
 
728
728
  # Define constants
729
- IS_PYTHON_3_12 = check_version(PYTHON_VERSION, "==3.12", name="Python ", hard=False)
729
+ IS_PYTHON_3_12 = PYTHON_VERSION.startswith("3.12")
@@ -33,7 +33,7 @@ GITHUB_ASSETS_NAMES = (
33
33
  GITHUB_ASSETS_STEMS = [Path(k).stem for k in GITHUB_ASSETS_NAMES]
34
34
 
35
35
 
36
- def is_url(url, check=True):
36
+ def is_url(url, check=False):
37
37
  """
38
38
  Validates if the given string is a URL and optionally checks if the URL exists online.
39
39
 
@@ -24,6 +24,7 @@ try:
24
24
  except ImportError:
25
25
  thop = None
26
26
 
27
+ # Version checks (all default to version>=min_version)
27
28
  TORCH_1_9 = check_version(torch.__version__, "1.9.0")
28
29
  TORCH_1_13 = check_version(torch.__version__, "1.13.0")
29
30
  TORCH_2_0 = check_version(torch.__version__, "2.0.0")
@@ -78,6 +78,7 @@ def run_ray_tune(
78
78
  "perspective": tune.uniform(0.0, 0.001), # image perspective (+/- fraction), range 0-0.001
79
79
  "flipud": tune.uniform(0.0, 1.0), # image flip up-down (probability)
80
80
  "fliplr": tune.uniform(0.0, 1.0), # image flip left-right (probability)
81
+ "bgr": tune.uniform(0.0, 1.0), # image channel BGR (probability)
81
82
  "mosaic": tune.uniform(0.0, 1.0), # image mixup (probability)
82
83
  "mixup": tune.uniform(0.0, 1.0), # image mixup (probability)
83
84
  "copy_paste": tune.uniform(0.0, 1.0), # segment copy-paste (probability)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ultralytics
3
- Version: 8.1.32
3
+ Version: 8.1.33
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
@@ -67,7 +67,7 @@ Requires-Dist: coremltools >=7.0 ; (platform_system != "Windows" and python_vers
67
67
  Requires-Dist: tensorflow <=2.13.1 ; (python_version <= "3.11") and extra == 'export'
68
68
  Requires-Dist: tensorflowjs >=3.9.0 ; (python_version <= "3.11") and extra == 'export'
69
69
  Provides-Extra: extra
70
- Requires-Dist: hub-sdk >=0.0.2 ; extra == 'extra'
70
+ Requires-Dist: hub-sdk >=0.0.5 ; extra == 'extra'
71
71
  Requires-Dist: ipython ; extra == 'extra'
72
72
  Requires-Dist: albumentations >=1.0.3 ; extra == 'extra'
73
73
  Requires-Dist: pycocotools >=2.0.7 ; extra == 'extra'
@@ -1,8 +1,8 @@
1
- ultralytics/__init__.py,sha256=olAbfZvhpDNTg98r-aFv6S42b7g-APSxekGTY6Cmayc,625
1
+ ultralytics/__init__.py,sha256=nSJaKs51Mt6vlyRUP0OTpfUYjkjmRpOu1eukiArzyqo,625
2
2
  ultralytics/assets/bus.jpg,sha256=wCAZxJecGR63Od3ZRERe9Aja1Weayrb9Ug751DS_vGM,137419
3
3
  ultralytics/assets/zidane.jpg,sha256=Ftc4aeMmen1O0A3o6GCDO9FlfBslLpTAw0gnetx7bts,50427
4
- ultralytics/cfg/__init__.py,sha256=DGqNA0FT2zZnkI09S0ttagkKopP97dQ3TVHo2nA8yFQ,21262
5
- ultralytics/cfg/default.yaml,sha256=jc6iBzaQIg_uohd5hHPBtYp6gJIRtYqsChwYVTRjIkI,8091
4
+ ultralytics/cfg/__init__.py,sha256=4DFeQcRmsOUUJtP49MezHhWKlE52mUSHI7bKFglOq4k,21273
5
+ ultralytics/cfg/default.yaml,sha256=zHRtcoaFUp6LSHRFtOzaj1GCLmVHLS1ymNhnIffcWGM,8142
6
6
  ultralytics/cfg/datasets/Argoverse.yaml,sha256=FyeuJT5CHq_9d4hlfAf0kpZlnbUMO0S--UJ1yIqcdKk,3134
7
7
  ultralytics/cfg/datasets/DOTAv1.5.yaml,sha256=YDsyFPI6F6-OQXLBM3hOXo3vADYREwZzmMQfJNdpWyM,1193
8
8
  ultralytics/cfg/datasets/DOTAv1.yaml,sha256=dxLUliHvJOW4q4vJRu5qIYVvNfjvXWB7GVh_Fhk--dM,1163
@@ -61,11 +61,11 @@ ultralytics/cfg/trackers/botsort.yaml,sha256=YrPmj18p1UU40kJH5NRdL_4S8f7knggkk_q
61
61
  ultralytics/cfg/trackers/bytetrack.yaml,sha256=QvHmtuwulK4X6j3T5VEqtCm0sbWWBUVmWPcCcM20qe0,688
62
62
  ultralytics/data/__init__.py,sha256=A3i0n-2MnNzSdYqhM8xynBO2HJNKGSXWhPvRyO0_u1I,409
63
63
  ultralytics/data/annotator.py,sha256=evXQzARVerc0hb9ol-n_GrrHf-dlXO4lCMMWEZoJ2UM,2117
64
- ultralytics/data/augment.py,sha256=ORotqUN-qulkHxzoW5hFF_CZDlBhuaqGgAsiPUVIf4I,52000
64
+ ultralytics/data/augment.py,sha256=fKqaWKk-EEy-imtMD8fIzmPvH4gt4X7oEGDBWU5ocpQ,52177
65
65
  ultralytics/data/base.py,sha256=_rbKt666SKVUqQtoMyzmYMCEE4rDNryPM_uweRqE4hA,13363
66
66
  ultralytics/data/build.py,sha256=ktZEi8RJ93kYdLWBlX7R4Hx1M2XrpHl833CdC6Hav9I,6406
67
67
  ultralytics/data/converter.py,sha256=DJ5aSk7w-RBKqrrABUoOahP_Lgccn7ujJSmVufOkBps,16503
68
- ultralytics/data/dataset.py,sha256=aBia_ZUUqynstW2BRS1sGp2ggnhUkeUSZ_QC2nyJmvo,17616
68
+ ultralytics/data/dataset.py,sha256=0d0Q8ORYkDOQyaemsJAq_jvZckK_QLpky_K52KIkrCo,17695
69
69
  ultralytics/data/loaders.py,sha256=zrfxXQ5CMFXKTR_FUPk3oKHwXruKmoXfuJq4B0vcSyA,23045
70
70
  ultralytics/data/split_dota.py,sha256=1q2FZC0SE4deRpXUSbKTbUAjX9VeejUIFM2DBLF8Cco,9961
71
71
  ultralytics/data/utils.py,sha256=5R-GRSvyyrZ2yOnTZ4utuek3NSHYAsjW_4aURgMkeG8,29782
@@ -76,13 +76,13 @@ ultralytics/data/explorer/gui/__init__.py,sha256=mHtJuK4hwF8cuV-VHDc7tp6u6D1gHz2
76
76
  ultralytics/data/explorer/gui/dash.py,sha256=a2s8oJKI8kqnWEcIyqCCzvIyvM_uZmfMaxrOdwmiq7k,10044
77
77
  ultralytics/engine/__init__.py,sha256=mHtJuK4hwF8cuV-VHDc7tp6u6D1gHz2Z7JI8grmQDTs,42
78
78
  ultralytics/engine/exporter.py,sha256=pwTQCo88Sd41NqYKx5Jp15fSqhFgaY3Z5gfLm8uzLR0,53882
79
- ultralytics/engine/model.py,sha256=SD9bLH30PGqnIxXT1uxgHu5xlrgca8jV2luErK9Fh8w,39194
79
+ ultralytics/engine/model.py,sha256=uemH3-CTwKTMbbiJnIqtReCNy-5TEK9VD737v3VIqxg,39435
80
80
  ultralytics/engine/predictor.py,sha256=wQRKdWGDTP5A6CS0gTC6U3RPDMhP3QkEzWSPm6eqCkU,17022
81
81
  ultralytics/engine/results.py,sha256=njylLUuhZQE0ry9IPH0uN8zXV_q89ZfRqghNEF5PQw0,30246
82
82
  ultralytics/engine/trainer.py,sha256=C04cEN9v-kvR2dIIjgAN8dBAx8XSTChlQkDxAxfwTlU,34527
83
- ultralytics/engine/tuner.py,sha256=DzgTH3uk-VUUVoJ0K3tM4N5TJ6A3fMNlcDYr5g2I9lA,11763
83
+ ultralytics/engine/tuner.py,sha256=zttHrQkvXuUVTB7jmM4Z85GgIsQ2hjpW9YrMccrQ4wo,11829
84
84
  ultralytics/engine/validator.py,sha256=rcmJSGrsAfj-ryQktv6-fe0hAT7Z8CLNhUUUf0VsPYI,14645
85
- ultralytics/hub/__init__.py,sha256=hNKAjBFZAi8_ZYasurDpDMlEOmFw0GrXCV7kLb2A-zE,5068
85
+ ultralytics/hub/__init__.py,sha256=U4j-2QPdwSDlxw6RgFYnnJXOoIzLtwke4TkY2A8q4ws,5068
86
86
  ultralytics/hub/auth.py,sha256=hc97pJ01OfI8oQ7uw3ubKbiVCDSGxSGJHoo9W6hrrNw,5403
87
87
  ultralytics/hub/session.py,sha256=kFwufDIY7TeV79DdEQBKYrU5883WxgCrpJoTr1S5QuE,14649
88
88
  ultralytics/hub/utils.py,sha256=BoqNvi7yLUGrTNVEugFALhJkmpobW87gMVZ2dzDckRk,9734
@@ -139,7 +139,7 @@ ultralytics/models/yolo/segment/predict.py,sha256=xtA0ZZyuh9WVpX7zZFdAeCkWnxhQ30
139
139
  ultralytics/models/yolo/segment/train.py,sha256=aOQpDIptZfKSl9mFa6B-3W3QccMRlmBINBkI9K8-3sQ,2298
140
140
  ultralytics/models/yolo/segment/val.py,sha256=njiF6RWddS-HOWxVvlk5PXRw6UOgEt_HEOZVPF7rruQ,11745
141
141
  ultralytics/nn/__init__.py,sha256=4BPLHY89xEM_al5uK0aOmFgiML6CMGEZbezxOvTjOEs,587
142
- ultralytics/nn/autobackend.py,sha256=ldDepfx4mfQVgk4w6lAqhLtxng3kchJRNSb35qMrpUg,28836
142
+ ultralytics/nn/autobackend.py,sha256=Z9sDchChAqJ-sSQlUNwoGHTFxFRay1-i76MNUz0qZU8,28678
143
143
  ultralytics/nn/tasks.py,sha256=k6cl1H1hWtQXLxO_s5D6fa_DYyFzIekAMigh3lD36_A,42894
144
144
  ultralytics/nn/modules/__init__.py,sha256=Ga3MDpwX6DeI7VSH8joti5uleP4mgkQGolbe8RLZ2T8,2326
145
145
  ultralytics/nn/modules/block.py,sha256=n0ilrK3Vjdoc9-OwvY_Bp8Hw5N2BMHwgt-jfH4CzxFQ,25589
@@ -165,9 +165,9 @@ ultralytics/trackers/utils/matching.py,sha256=c_pthBfu9sWeMVYe-dSecdWcQxUey-mQT2
165
165
  ultralytics/utils/__init__.py,sha256=SN7wyoJP8zaDzqUoDIHTyV3tqprIgCTfT738kge0EPI,37500
166
166
  ultralytics/utils/autobatch.py,sha256=ygZ3f2ByIkcujB89ENcTnGWWnAQw5Pbg6nBuShg-5t4,3863
167
167
  ultralytics/utils/benchmarks.py,sha256=cj_sztcI-hzfvRX8vzfXo4wmQe2CuQUcDHBO9THBbco,18285
168
- ultralytics/utils/checks.py,sha256=eTgj9HBxo677iehOrkIaiCRfeERRJhWAHHGmIPYntvQ,27815
168
+ ultralytics/utils/checks.py,sha256=ENayYz6TIb7Uuf6fLYoPuZC5ITLcbCabbpwpLBoT89c,27811
169
169
  ultralytics/utils/dist.py,sha256=3HeNbY2gp7vYhcvVhsrvTrQXpQmgT8tpmnzApf3eQRA,2267
170
- ultralytics/utils/downloads.py,sha256=KfGCmL1lwetMOZTYqvz-NkIdIA8fxFYxBGxF3-leZQ0,21495
170
+ ultralytics/utils/downloads.py,sha256=IVuwBodagj7GOGnzy868TBq4TC8O2d9TlV94_Uzi_KA,21496
171
171
  ultralytics/utils/errors.py,sha256=GqP_Jgj_n0paxn8OMhn3DTCgoNkB2WjUcUaqs-M6SQk,816
172
172
  ultralytics/utils/files.py,sha256=TVfY0Wi5IsUc4YdsDzC0dAg-jAP5exYvwqB3VmXhDLY,6761
173
173
  ultralytics/utils/instance.py,sha256=fPClvPPtTk8VeXWiRv90DrFk1j1lTUKdYJtpZKUDDtA,15575
@@ -177,9 +177,9 @@ ultralytics/utils/ops.py,sha256=GFe_tx8MVKT56xelbAuQjiJ28ohpzARpD6BzGyJ1yMk,3326
177
177
  ultralytics/utils/patches.py,sha256=SgMqeMsq2K6JoBJP1NplXMl9C6rK0JeJUChjBrJOneo,2750
178
178
  ultralytics/utils/plotting.py,sha256=YVJvEDozm1vm_Yf39jLPQ24Qst_f_lzEm-NeDjMElfQ,44705
179
179
  ultralytics/utils/tal.py,sha256=xuIyryUjaaYHkHPG9GvBwh1xxN2Hq4y3hXOtuERehwY,16017
180
- ultralytics/utils/torch_utils.py,sha256=LgArI6s5wUhoDR0RBe3CoUkAkq3WpAg0YQPcL__rr_o,25182
180
+ ultralytics/utils/torch_utils.py,sha256=0Uuv7xERiwZWBwD89L3MzGaqNAlxoW27bGLS5ymqVME,25237
181
181
  ultralytics/utils/triton.py,sha256=gg1finxno_tY2Ge9PMhmu7PI9wvoFZoiicdT4Bhqv3w,3936
182
- ultralytics/utils/tuner.py,sha256=DTgMvg4kxCos-du5mqTGW5lPSXs-NF3YuAL0qpI5nQc,6111
182
+ ultralytics/utils/tuner.py,sha256=bQE80f4p6PKb0iuSu4rSrXkS6LDGGUvGbyKB52nyVIA,6185
183
183
  ultralytics/utils/callbacks/__init__.py,sha256=YrWqC3BVVaTLob4iCPR6I36mUxIUOpPJW7B_LjT78Qw,214
184
184
  ultralytics/utils/callbacks/base.py,sha256=sOe3JvyBFmRwVZ8_Q03u7JwTeOOm9CI4s9-UEhnG0xA,5777
185
185
  ultralytics/utils/callbacks/clearml.py,sha256=K7bDf5tS8xL4KeFMkoVDL2kKkil3f4qoKy8KfZkD854,5897
@@ -191,9 +191,9 @@ ultralytics/utils/callbacks/neptune.py,sha256=5Z3ua5YBTUS56FH8VQKQG1aaIo9fH8GEyz
191
191
  ultralytics/utils/callbacks/raytune.py,sha256=6OgGNuC35F29lw8Dl_d0lue4-iBR6dqrBVQnIRQDx4E,632
192
192
  ultralytics/utils/callbacks/tensorboard.py,sha256=hRmWjbqdA4RNaLuSZznuDcpOBW-_-_Ga0u-B8UU-7ZI,4134
193
193
  ultralytics/utils/callbacks/wb.py,sha256=4QI81nHdzgwhXHlmTiRxLqunvkKakLXYUhHTUY1ZeHA,6635
194
- ultralytics-8.1.32.dist-info/LICENSE,sha256=DZak_2itbUtvHzD3E7GNUYSRK6jdOJ-GqncQ2weavLA,34523
195
- ultralytics-8.1.32.dist-info/METADATA,sha256=jQD4IWf9SXoTyZXKMyjFuNp8SrMPGdITqqNoQkRG-QI,40330
196
- ultralytics-8.1.32.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
197
- ultralytics-8.1.32.dist-info/entry_points.txt,sha256=YM_wiKyTe9yRrsEfqvYolNO5ngwfoL4-NwgKzc8_7sI,93
198
- ultralytics-8.1.32.dist-info/top_level.txt,sha256=XP49TwiMw4QGsvTLSYiJhz1xF_k7ev5mQ8jJXaXi45Q,12
199
- ultralytics-8.1.32.dist-info/RECORD,,
194
+ ultralytics-8.1.33.dist-info/LICENSE,sha256=DZak_2itbUtvHzD3E7GNUYSRK6jdOJ-GqncQ2weavLA,34523
195
+ ultralytics-8.1.33.dist-info/METADATA,sha256=dmv1kbJLjGfIZXm0bAPxZVYRC0NZa9KZhO0Pn2HK9Zc,40330
196
+ ultralytics-8.1.33.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
197
+ ultralytics-8.1.33.dist-info/entry_points.txt,sha256=YM_wiKyTe9yRrsEfqvYolNO5ngwfoL4-NwgKzc8_7sI,93
198
+ ultralytics-8.1.33.dist-info/top_level.txt,sha256=XP49TwiMw4QGsvTLSYiJhz1xF_k7ev5mQ8jJXaXi45Q,12
199
+ ultralytics-8.1.33.dist-info/RECORD,,