ultralytics 8.2.24__py3-none-any.whl → 8.2.25__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.

tests/test_exports.py CHANGED
@@ -129,6 +129,31 @@ def test_export_coreml_matrix(task, dynamic, int8, half, batch):
129
129
  shutil.rmtree(file) # cleanup
130
130
 
131
131
 
132
+ @pytest.mark.slow
133
+ @pytest.mark.skipif(not checks.IS_PYTHON_MINIMUM_3_10, reason="TFLite export requires Python>=3.10")
134
+ @pytest.mark.skipif(not LINUX, reason="Test disabled as TF suffers from install conflicts on Windows and macOS")
135
+ @pytest.mark.parametrize(
136
+ "task, dynamic, int8, half, batch",
137
+ [ # generate all combinations but exclude those where both int8 and half are True
138
+ (task, dynamic, int8, half, batch)
139
+ for task, dynamic, int8, half, batch in product(TASKS, [False], [True, False], [True, False], [1])
140
+ if not (int8 and half) # exclude cases where both int8 and half are True
141
+ ],
142
+ )
143
+ def test_export_tflite_matrix(task, dynamic, int8, half, batch):
144
+ """Test YOLO exports to TFLite format."""
145
+ file = YOLO(TASK2MODEL[task]).export(
146
+ format="tflite",
147
+ imgsz=32,
148
+ dynamic=dynamic,
149
+ int8=int8,
150
+ half=half,
151
+ batch=batch,
152
+ )
153
+ YOLO(file)([SOURCE] * batch, imgsz=32) # exported model inference at batch=3
154
+ Path(file).unlink() # cleanup
155
+
156
+
132
157
  @pytest.mark.skipif(not TORCH_1_9, reason="CoreML>=7.2 not supported with PyTorch<=1.8")
133
158
  @pytest.mark.skipif(WINDOWS, reason="CoreML not supported on Windows") # RuntimeError: BlobWriter not loaded
134
159
  @pytest.mark.skipif(IS_RASPBERRYPI, reason="CoreML not supported on Raspberry Pi")
@@ -142,6 +167,7 @@ def test_export_coreml():
142
167
  YOLO(MODEL).export(format="coreml", nms=True, imgsz=32)
143
168
 
144
169
 
170
+ @pytest.mark.skipif(not checks.IS_PYTHON_MINIMUM_3_10, reason="TFLite export requires Python>=3.10")
145
171
  @pytest.mark.skipif(not LINUX, reason="Test disabled as TF suffers from install conflicts on Windows and macOS")
146
172
  def test_export_tflite():
147
173
  """
ultralytics/__init__.py CHANGED
@@ -1,6 +1,6 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
2
 
3
- __version__ = "8.2.24"
3
+ __version__ = "8.2.25"
4
4
 
5
5
  import os
6
6
 
@@ -83,7 +83,6 @@ from ultralytics.utils import (
83
83
  WINDOWS,
84
84
  __version__,
85
85
  callbacks,
86
- checks,
87
86
  colorstr,
88
87
  get_default_args,
89
88
  yaml_save,
@@ -813,15 +812,16 @@ class Exporter:
813
812
  import tensorflow as tf # noqa
814
813
  except ImportError:
815
814
  suffix = "-macos" if MACOS else "-aarch64" if ARM64 else "" if cuda else "-cpu"
816
- version = "" if ARM64 else "<=2.13.1"
817
- check_requirements((f"tensorflow{suffix}{version}", "keras"))
815
+ version = ">=2.0.0"
816
+ check_requirements(f"tensorflow{suffix}{version}")
818
817
  import tensorflow as tf # noqa
819
818
  if ARM64:
820
819
  check_requirements("cmake") # 'cmake' is needed to build onnxsim on aarch64
821
820
  check_requirements(
822
821
  (
822
+ "keras",
823
823
  "onnx>=1.12.0",
824
- "onnx2tf>=1.15.4,<=1.17.5",
824
+ "onnx2tf>1.17.5,<=1.22.3",
825
825
  "sng4onnx>=1.0.1",
826
826
  "onnxsim>=0.4.33",
827
827
  "onnx_graphsurgeon>=0.3.26",
@@ -835,7 +835,7 @@ class Exporter:
835
835
  LOGGER.info(f"\n{prefix} starting export with tensorflow {tf.__version__}...")
836
836
  check_version(
837
837
  tf.__version__,
838
- "<=2.13.1",
838
+ ">=2.0.0",
839
839
  name="tensorflow",
840
840
  verbose=True,
841
841
  msg="https://github.com/ultralytics/ultralytics/issues/5161",
@@ -88,14 +88,14 @@ def benchmark(
88
88
  emoji, filename = "❌", None # export defaults
89
89
  try:
90
90
  # Checks
91
- if i == 5: # CoreML
92
- assert not (IS_RASPBERRYPI or IS_JETSON), "CoreML export not supported on Raspberry Pi or NVIDIA Jetson"
93
- if i == 9: # Edge TPU
94
- assert LINUX and not ARM64, "Edge TPU export only supported on non-aarch64 Linux"
95
- elif i == 7: # TF GraphDef
91
+ if i == 7: # TF GraphDef
96
92
  assert model.task != "obb", "TensorFlow GraphDef not supported for OBB task"
93
+ elif i == 9: # Edge TPU
94
+ assert LINUX and not ARM64, "Edge TPU export only supported on non-aarch64 Linux"
97
95
  elif i in {5, 10}: # CoreML and TF.js
98
- assert MACOS or LINUX, "export only supported on macOS and Linux"
96
+ assert MACOS or LINUX, "CoreML and TF.js export only supported on macOS and Linux"
97
+ assert not IS_RASPBERRYPI, "CoreML and TF.js export not supported on Raspberry Pi"
98
+ assert not IS_JETSON, "CoreML and TF.js export not supported on NVIDIA Jetson"
99
99
  if i in {3, 5}: # CoreML and OpenVINO
100
100
  assert not IS_PYTHON_3_12, "CoreML and OpenVINO not supported on Python 3.12"
101
101
  if i in {6, 7, 8, 9, 10}: # All TF formats
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ultralytics
3
- Version: 8.2.24
3
+ Version: 8.2.25
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
@@ -64,12 +64,13 @@ Requires-Dist: streamlit ; extra == 'explorer'
64
64
  Provides-Extra: export
65
65
  Requires-Dist: onnx >=1.12.0 ; extra == 'export'
66
66
  Requires-Dist: openvino >=2024.0.0 ; extra == 'export'
67
+ Requires-Dist: tensorflow >=2.0.0 ; extra == 'export'
68
+ Requires-Dist: tensorflowjs >=3.9.0 ; extra == 'export'
69
+ Requires-Dist: keras ; extra == 'export'
67
70
  Requires-Dist: flatbuffers <100,>=23.5.26 ; (platform_machine == "aarch64") and extra == 'export'
68
71
  Requires-Dist: numpy ==1.23.5 ; (platform_machine == "aarch64") and extra == 'export'
69
72
  Requires-Dist: h5py !=3.11.0 ; (platform_machine == "aarch64") and extra == 'export'
70
73
  Requires-Dist: coremltools >=7.0 ; (platform_system != "Windows" and python_version <= "3.11") and extra == 'export'
71
- Requires-Dist: tensorflow <=2.13.1 ; (python_version <= "3.11") and extra == 'export'
72
- Requires-Dist: tensorflowjs >=3.9.0 ; (python_version <= "3.11") and extra == 'export'
73
74
  Provides-Extra: extra
74
75
  Requires-Dist: hub-sdk >=0.0.5 ; extra == 'extra'
75
76
  Requires-Dist: ipython ; extra == 'extra'
@@ -116,7 +117,7 @@ To request an Enterprise License please complete the form at [Ultralytics Licens
116
117
  <img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
117
118
  <a href="https://twitter.com/ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-twitter.png" width="2%" alt="Ultralytics Twitter"></a>
118
119
  <img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
119
- <a href="https://youtube.com/ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="2%" alt="Ultralytics YouTube"></a>
120
+ <a href="https://youtube.com/ultralytics?sub_confirmation=1"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="2%" alt="Ultralytics YouTube"></a>
120
121
  <img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
121
122
  <a href="https://www.tiktok.com/@ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-tiktok.png" width="2%" alt="Ultralytics TikTok"></a>
122
123
  <img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="2%" alt="space">
@@ -184,7 +185,7 @@ See YOLOv8 [Python Docs](https://docs.ultralytics.com/usage/python) for more exa
184
185
 
185
186
  ### Notebooks
186
187
 
187
- Ultralytics provides interactive notebooks for YOLOv8, covering training, validation, tracking, and more. Each notebook is paired with a [YouTube](https://youtube.com/ultralytics) tutorial, making it easy to learn and implement advanced YOLOv8 features.
188
+ Ultralytics provides interactive notebooks for YOLOv8, covering training, validation, tracking, and more. Each notebook is paired with a [YouTube](https://youtube.com/ultralytics?sub_confirmation=1) tutorial, making it easy to learn and implement advanced YOLOv8 features.
188
189
 
189
190
  | Docs | Notebook | YouTube |
190
191
  | --------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
@@ -369,7 +370,7 @@ For Ultralytics bug reports and feature requests please visit [GitHub Issues](ht
369
370
  <img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
370
371
  <a href="https://twitter.com/ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-twitter.png" width="3%" alt="Ultralytics Twitter"></a>
371
372
  <img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
372
- <a href="https://youtube.com/ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="3%" alt="Ultralytics YouTube"></a>
373
+ <a href="https://youtube.com/ultralytics?sub_confirmation=1"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png" width="3%" alt="Ultralytics YouTube"></a>
373
374
  <img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
374
375
  <a href="https://www.tiktok.com/@ultralytics"><img src="https://github.com/ultralytics/assets/raw/main/social/logo-social-tiktok.png" width="3%" alt="Ultralytics TikTok"></a>
375
376
  <img src="https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png" width="3%" alt="space">
@@ -4,10 +4,10 @@ tests/test_cli.py,sha256=VPvaVO8POqA9RiG3doO_WpK3VwloSp7qvhCXbeiC10k,4865
4
4
  tests/test_cuda.py,sha256=m2OS06a9aiYs60vK58gpOPiIpCnggNhhgeiJwbAKFQY,4798
5
5
  tests/test_engine.py,sha256=fFzcbqZuMkzZHjA5FMddWcqVE703iq8HB_a0Q2lcBKM,4705
6
6
  tests/test_explorer.py,sha256=r1pWer2y290Y0DqsM-La7egfEY0497YCdC4rwq3URV4,2178
7
- tests/test_exports.py,sha256=eIxlaXGlGAuxPUBO5ELqnub9iS8SCz_ZK9R1OyVl9GI,6834
7
+ tests/test_exports.py,sha256=TC4Ckp7OefOv4qS9NR2D1K7PQIf_P-vb_BelMmhqC48,7966
8
8
  tests/test_integrations.py,sha256=8Ru7GyKV8j44EEc8X9_E7q7aR4CTOIMPuSagXjSGUxw,5847
9
9
  tests/test_python.py,sha256=3qV963KPGGnYwSiEG5YcDf6g_ozo3NtQEjDDtH32rV4,20212
10
- ultralytics/__init__.py,sha256=crXlBfjFF_lc3pjOIf0iPCpyp4ze6rNQZn9cdq-mynU,694
10
+ ultralytics/__init__.py,sha256=LPJl-hE2E7lpDxTOSXHYyTV_K-w1XOP_Fn6Ez7-KJx4,694
11
11
  ultralytics/assets/bus.jpg,sha256=wCAZxJecGR63Od3ZRERe9Aja1Weayrb9Ug751DS_vGM,137419
12
12
  ultralytics/assets/zidane.jpg,sha256=Ftc4aeMmen1O0A3o6GCDO9FlfBslLpTAw0gnetx7bts,50427
13
13
  ultralytics/cfg/__init__.py,sha256=lR6jykSO_0cigsjrqSyFj_8JG_LvYi796viasyWhcfs,21358
@@ -88,7 +88,7 @@ ultralytics/data/explorer/utils.py,sha256=EvvukQiQUTBrsZznmMnyEX2EqTuwZo_Geyc8yf
88
88
  ultralytics/data/explorer/gui/__init__.py,sha256=mHtJuK4hwF8cuV-VHDc7tp6u6D1gHz2Z7JI8grmQDTs,42
89
89
  ultralytics/data/explorer/gui/dash.py,sha256=3mLrH0h-k_AthlgqVNXOHdlKoqjwNwFlnMYiMPAdL6Q,10059
90
90
  ultralytics/engine/__init__.py,sha256=mHtJuK4hwF8cuV-VHDc7tp6u6D1gHz2Z7JI8grmQDTs,42
91
- ultralytics/engine/exporter.py,sha256=c5Ky8_cElAjPm8y3-2-pJgn0bMGyqivvC2XhFH5gDsY,58222
91
+ ultralytics/engine/exporter.py,sha256=IRGwdGG704QvU1VzOOxrV7QK9ptrTk8qU1hSHjdNTEI,58204
92
92
  ultralytics/engine/model.py,sha256=IE6HE9VIzqO3DscxSLexub0LUR673eiPFrCPCt6ozEE,40103
93
93
  ultralytics/engine/predictor.py,sha256=wQRKdWGDTP5A6CS0gTC6U3RPDMhP3QkEzWSPm6eqCkU,17022
94
94
  ultralytics/engine/results.py,sha256=zRuEIrBtpoCQ3M6a_YscnyXrWSP-zpL3ACv0gTdrDaw,30987
@@ -183,7 +183,7 @@ ultralytics/trackers/utils/kalman_filter.py,sha256=0oqhk59NKEiwcJ2FXnw6_sT4bIFC6
183
183
  ultralytics/trackers/utils/matching.py,sha256=UxhSGa5pN6WoYwYSBAkkt-O7xMxUR47VuUB6PfVNkb4,5404
184
184
  ultralytics/utils/__init__.py,sha256=dlKr7P0h2Ez3Q-WLQ49p0jsjjWkKq3CRkhlCJLGKlMk,38620
185
185
  ultralytics/utils/autobatch.py,sha256=ygZ3f2ByIkcujB89ENcTnGWWnAQw5Pbg6nBuShg-5t4,3863
186
- ultralytics/utils/benchmarks.py,sha256=PlnUqhl2Om7jp7bKICDj9a2ABpJSl31VFI3ESnGdme8,23552
186
+ ultralytics/utils/benchmarks.py,sha256=oCngvKzfZu4dFFd3U3ZcNR-BKM1kJLbWuR_egg_qSRw,23609
187
187
  ultralytics/utils/checks.py,sha256=XtUrZvw7_pUcSGAUCOtjqJ5KilZy6IXGHdBxG64WMV0,28172
188
188
  ultralytics/utils/dist.py,sha256=3HeNbY2gp7vYhcvVhsrvTrQXpQmgT8tpmnzApf3eQRA,2267
189
189
  ultralytics/utils/downloads.py,sha256=cmO2Ev1DV1m_lYgQ2yGDG5xVRIBVS_z9nS_Frec_NeU,21496
@@ -210,9 +210,9 @@ ultralytics/utils/callbacks/neptune.py,sha256=5Z3ua5YBTUS56FH8VQKQG1aaIo9fH8GEyz
210
210
  ultralytics/utils/callbacks/raytune.py,sha256=ODVYzy-CoM4Uge0zjkh3Hnh9nF2M0vhDrSenXnvcizw,705
211
211
  ultralytics/utils/callbacks/tensorboard.py,sha256=Z1veCVcn9THPhdplWuIzwlsW2yF7y-On9IZIk3khM0Y,4135
212
212
  ultralytics/utils/callbacks/wb.py,sha256=DViD0KeXH_i3eVT_CLR4bZFs1TMMUZBVBBYIS3aUfp0,6745
213
- ultralytics-8.2.24.dist-info/LICENSE,sha256=DZak_2itbUtvHzD3E7GNUYSRK6jdOJ-GqncQ2weavLA,34523
214
- ultralytics-8.2.24.dist-info/METADATA,sha256=5e8gmUV6sS7OUtUTA_NxpXV_PEo_FHnO5-GloC_gpO0,41165
215
- ultralytics-8.2.24.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
216
- ultralytics-8.2.24.dist-info/entry_points.txt,sha256=YM_wiKyTe9yRrsEfqvYolNO5ngwfoL4-NwgKzc8_7sI,93
217
- ultralytics-8.2.24.dist-info/top_level.txt,sha256=XP49TwiMw4QGsvTLSYiJhz1xF_k7ev5mQ8jJXaXi45Q,12
218
- ultralytics-8.2.24.dist-info/RECORD,,
213
+ ultralytics-8.2.25.dist-info/LICENSE,sha256=DZak_2itbUtvHzD3E7GNUYSRK6jdOJ-GqncQ2weavLA,34523
214
+ ultralytics-8.2.25.dist-info/METADATA,sha256=JQiMXANVtQaN0BvbDPxF1Lni9G8_GWW73gQaqi-4tWs,41200
215
+ ultralytics-8.2.25.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
216
+ ultralytics-8.2.25.dist-info/entry_points.txt,sha256=YM_wiKyTe9yRrsEfqvYolNO5ngwfoL4-NwgKzc8_7sI,93
217
+ ultralytics-8.2.25.dist-info/top_level.txt,sha256=XP49TwiMw4QGsvTLSYiJhz1xF_k7ev5mQ8jJXaXi45Q,12
218
+ ultralytics-8.2.25.dist-info/RECORD,,