ultralytics 8.3.114__py3-none-any.whl → 8.3.115__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.
ultralytics/__init__.py CHANGED
@@ -1,6 +1,6 @@
1
1
  # Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
2
2
 
3
- __version__ = "8.3.114"
3
+ __version__ = "8.3.115"
4
4
 
5
5
  import os
6
6
 
ultralytics/data/utils.py CHANGED
@@ -47,7 +47,7 @@ def img2label_paths(img_paths):
47
47
  return [sb.join(x.rsplit(sa, 1)).rsplit(".", 1)[0] + ".txt" for x in img_paths]
48
48
 
49
49
 
50
- def check_file_speeds(files, threshold_ms=10, max_files=5, prefix=""):
50
+ def check_file_speeds(files, threshold_ms=10, threshold_mb=50, max_files=5, prefix=""):
51
51
  """
52
52
  Check dataset file access speed and provide performance feedback.
53
53
 
@@ -57,6 +57,7 @@ def check_file_speeds(files, threshold_ms=10, max_files=5, prefix=""):
57
57
  Args:
58
58
  files (list): List of file paths to check for access speed.
59
59
  threshold_ms (float, optional): Threshold in milliseconds for ping time warnings.
60
+ threshold_mb (float, optional): Threshold in megabytes per second for read speed warnings.
60
61
  max_files (int, optional): The maximum number of files to check.
61
62
  prefix (str, optional): Prefix string to add to log messages.
62
63
 
@@ -112,7 +113,7 @@ def check_file_speeds(files, threshold_ms=10, max_files=5, prefix=""):
112
113
  else:
113
114
  speed_msg = ""
114
115
 
115
- if avg_ping < threshold_ms:
116
+ if avg_ping < threshold_ms or avg_speed < threshold_mb:
116
117
  LOGGER.info(f"{prefix}Fast image access ✅ ({ping_msg}{speed_msg}{size_msg})")
117
118
  else:
118
119
  LOGGER.warning(
@@ -1261,7 +1261,7 @@ class SettingsManager(JSONDict):
1261
1261
  "For help see https://docs.ultralytics.com/quickstart/#ultralytics-settings."
1262
1262
  )
1263
1263
 
1264
- with torch_distributed_zero_first(RANK):
1264
+ with torch_distributed_zero_first(LOCAL_RANK):
1265
1265
  super().__init__(self.file)
1266
1266
 
1267
1267
  if not self.file.exists() or not self: # Check if file doesn't exist or is empty
@@ -31,7 +31,8 @@ def imread(filename: str, flags: int = cv2.IMREAD_COLOR):
31
31
  if filename.endswith((".tiff", ".tif")):
32
32
  success, frames = cv2.imdecodemulti(file_bytes, cv2.IMREAD_UNCHANGED)
33
33
  if success:
34
- return np.stack(frames, axis=2) # or np.asarray(frames).transpose(1,2,0)
34
+ # handle RGB images in tif/tiff format
35
+ return frames[0] if len(frames) == 1 and frames[0].ndim == 3 else np.stack(frames, axis=2)
35
36
  return None
36
37
  else:
37
38
  return cv2.imdecode(file_bytes, flags)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ultralytics
3
- Version: 8.3.114
3
+ Version: 8.3.115
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>
@@ -1,4 +1,4 @@
1
- ultralytics/__init__.py,sha256=WBfQJaKm6-2YTizBGkwFR26SwOipY7Xf-o89_L_k6GE,730
1
+ ultralytics/__init__.py,sha256=5_It_NFtWsEmQfPoBKF_EizYL00IIzHhERi_Y3Hx-hM,730
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=-66Vtli1XqcRUJ9F_gYyEoKTO3gDMmOrDDnUEa5G84s,39646
@@ -103,7 +103,7 @@ ultralytics/data/dataset.py,sha256=3hcnCBBb5C_m4l5E1m2uf_2hQFhMv31FmvTfvWed8ek,3
103
103
  ultralytics/data/loaders.py,sha256=kl3gHkcIcNHqLKuQ5fyAlDo9WYBsCPjLcnFbRpk6KVw,28494
104
104
  ultralytics/data/split.py,sha256=6LHB1z8woXurWjXfM-Zm2thRr1KXvzR18CFJA-SDUvE,4677
105
105
  ultralytics/data/split_dota.py,sha256=p8eVGht9tABSVbf9vwvxA_AQYEva3IGHePKlMeNrn64,11872
106
- ultralytics/data/utils.py,sha256=yzYHZor0E1JU5RjC5dKYSqQx1uYHorDtzZK_Qi2dz6E,35124
106
+ ultralytics/data/utils.py,sha256=3hx0YvotLn_Luy6fu7DTLpQJr6ZFhr2PhDbXhCdAO0Q,35268
107
107
  ultralytics/data/scripts/download_weights.sh,sha256=0y8XtZxOru7dVThXDFUXLHBuICgOIqZNUwpyL4Rh6lg,595
108
108
  ultralytics/data/scripts/get_coco.sh,sha256=UuJpJeo3qQpTHVINeOpmP0NYmg8PhEFE3A8J3jKrnPw,1768
109
109
  ultralytics/data/scripts/get_coco128.sh,sha256=qmRQl_hOKrsdHrTrnyQuFIH01oDz3lfaz138OgGfLt8,650
@@ -221,7 +221,7 @@ ultralytics/trackers/utils/__init__.py,sha256=lm6MckFYCPTbqIoX7w0s_daxdjNeBeKW6D
221
221
  ultralytics/trackers/utils/gmc.py,sha256=dz3I5LbIv7h1__Xg7rGHecQFE32VFTe54tUnxb8F0Z8,14466
222
222
  ultralytics/trackers/utils/kalman_filter.py,sha256=A0CqOnnaKH6kr0XwuHzyHmIU6aJAjJYxF9jVlNBKZHo,21326
223
223
  ultralytics/trackers/utils/matching.py,sha256=7eIufSdeN7cXuFMjvcfvz0Ldq84m4YKZl5IGxBR8IIo,7169
224
- ultralytics/utils/__init__.py,sha256=oH-D2pJrrOzZuYNUrnBlJhwnSz5WUcud8_pAZs1M8KA,50423
224
+ ultralytics/utils/__init__.py,sha256=ZtidK2cfc4G3z9EfG2oDuJRjWaf9rIl2CnWyz5vP2q8,50429
225
225
  ultralytics/utils/autobatch.py,sha256=VZTIKLWeFZFwBHJmbiCn3MaxoFp89hLR0DSCR_iLXJg,4913
226
226
  ultralytics/utils/benchmarks.py,sha256=L7rpcnVAnk2doGNJMhXcDqypPLiz0taZ3bDv850IZkU,30404
227
227
  ultralytics/utils/checks.py,sha256=lE1V-lkvEd8sUYKYfgt3YJoqWd3dJT5-1DeHAQTMm88,32541
@@ -234,7 +234,7 @@ ultralytics/utils/instance.py,sha256=UOEsXR9V-bXNRk6BTonASBEgeMqvzzAk4S7VdXZJUAM
234
234
  ultralytics/utils/loss.py,sha256=us3lwmSlIwEzoMztNjpet7Kb1r1-sMGyESykqgYPDVo,36945
235
235
  ultralytics/utils/metrics.py,sha256=uv5O-2Ft8wYfTvDedFxiUqMZ6Nr2CL6I9ybGZiK3e2s,53773
236
236
  ultralytics/utils/ops.py,sha256=Fkbd91djIdf8npXRTLzUQMWsNak3aQKANFTTnOxl77Y,34783
237
- ultralytics/utils/patches.py,sha256=qArRoYscf7jph-OwIYJAAkOB5bAM6pcktgXKc76A8HE,4860
237
+ ultralytics/utils/patches.py,sha256=6rVT-l8WDp_Py3O-gZdv9t3PnrYRRkrX_lF3mZ1XS8c,4928
238
238
  ultralytics/utils/plotting.py,sha256=5QPK1y-gm4T1mK3sjfRZhIUJAyP05D1cJ7h9wHPTifU,46616
239
239
  ultralytics/utils/tal.py,sha256=P5nPoR9qNnFuDIda0fsn8WP6m1V8r7EbvXUuhNRFFTA,20805
240
240
  ultralytics/utils/torch_utils.py,sha256=OqH2yNSghs0JSq16Br_PDBnVed5ZRs0C58zDZDk_bqA,38888
@@ -251,9 +251,9 @@ ultralytics/utils/callbacks/neptune.py,sha256=JaI95Cj2kIjUhlEEOiDN0-Drc-fDelLhNI
251
251
  ultralytics/utils/callbacks/raytune.py,sha256=A8amUGpux7dYES-L1iSeMoMXBySGWCD1aUqT7vcG-pU,1284
252
252
  ultralytics/utils/callbacks/tensorboard.py,sha256=jgYnym3cUQFAgN1GzTyO7l3jINtfAh8zhrllDvnLuVQ,5339
253
253
  ultralytics/utils/callbacks/wb.py,sha256=iDRFXI4IIDm8R5OI89DMTmjs8aHLo1HRCLkOFKdaMG4,7507
254
- ultralytics-8.3.114.dist-info/licenses/LICENSE,sha256=DZak_2itbUtvHzD3E7GNUYSRK6jdOJ-GqncQ2weavLA,34523
255
- ultralytics-8.3.114.dist-info/METADATA,sha256=tMAyCuNauy-ZB4hDNUQT3FJ453ZeCRGXTc5G2MddF3Y,37354
256
- ultralytics-8.3.114.dist-info/WHEEL,sha256=pxyMxgL8-pra_rKaQ4drOZAegBVuX-G_4nRHjjgWbmo,91
257
- ultralytics-8.3.114.dist-info/entry_points.txt,sha256=YM_wiKyTe9yRrsEfqvYolNO5ngwfoL4-NwgKzc8_7sI,93
258
- ultralytics-8.3.114.dist-info/top_level.txt,sha256=XP49TwiMw4QGsvTLSYiJhz1xF_k7ev5mQ8jJXaXi45Q,12
259
- ultralytics-8.3.114.dist-info/RECORD,,
254
+ ultralytics-8.3.115.dist-info/licenses/LICENSE,sha256=DZak_2itbUtvHzD3E7GNUYSRK6jdOJ-GqncQ2weavLA,34523
255
+ ultralytics-8.3.115.dist-info/METADATA,sha256=cFP6Jz-a_fClMOLnnR5gYESPzaAkWeSsLZ_c7n536ks,37354
256
+ ultralytics-8.3.115.dist-info/WHEEL,sha256=pxyMxgL8-pra_rKaQ4drOZAegBVuX-G_4nRHjjgWbmo,91
257
+ ultralytics-8.3.115.dist-info/entry_points.txt,sha256=YM_wiKyTe9yRrsEfqvYolNO5ngwfoL4-NwgKzc8_7sI,93
258
+ ultralytics-8.3.115.dist-info/top_level.txt,sha256=XP49TwiMw4QGsvTLSYiJhz1xF_k7ev5mQ8jJXaXi45Q,12
259
+ ultralytics-8.3.115.dist-info/RECORD,,