ultralytics 8.0.211__tar.gz → 8.0.213__tar.gz

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.

Files changed (179) hide show
  1. {ultralytics-8.0.211/ultralytics.egg-info → ultralytics-8.0.213}/PKG-INFO +10 -10
  2. {ultralytics-8.0.211 → ultralytics-8.0.213}/README.md +8 -8
  3. {ultralytics-8.0.211 → ultralytics-8.0.213}/README.zh-CN.md +8 -8
  4. {ultralytics-8.0.211 → ultralytics-8.0.213}/setup.py +1 -1
  5. {ultralytics-8.0.211 → ultralytics-8.0.213}/tests/test_python.py +13 -1
  6. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/__init__.py +1 -1
  7. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/engine/model.py +1 -1
  8. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/nn/autobackend.py +1 -1
  9. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/__init__.py +20 -39
  10. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/checks.py +2 -1
  11. {ultralytics-8.0.211 → ultralytics-8.0.213/ultralytics.egg-info}/PKG-INFO +10 -10
  12. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics.egg-info/requires.txt +1 -1
  13. {ultralytics-8.0.211 → ultralytics-8.0.213}/CONTRIBUTING.md +0 -0
  14. {ultralytics-8.0.211 → ultralytics-8.0.213}/LICENSE +0 -0
  15. {ultralytics-8.0.211 → ultralytics-8.0.213}/MANIFEST.in +0 -0
  16. {ultralytics-8.0.211 → ultralytics-8.0.213}/requirements.txt +0 -0
  17. {ultralytics-8.0.211 → ultralytics-8.0.213}/setup.cfg +0 -0
  18. {ultralytics-8.0.211 → ultralytics-8.0.213}/tests/conftest.py +0 -0
  19. {ultralytics-8.0.211 → ultralytics-8.0.213}/tests/test_cli.py +0 -0
  20. {ultralytics-8.0.211 → ultralytics-8.0.213}/tests/test_cuda.py +0 -0
  21. {ultralytics-8.0.211 → ultralytics-8.0.213}/tests/test_engine.py +0 -0
  22. {ultralytics-8.0.211 → ultralytics-8.0.213}/tests/test_integrations.py +0 -0
  23. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/assets/bus.jpg +0 -0
  24. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/assets/zidane.jpg +0 -0
  25. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/__init__.py +0 -0
  26. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
  27. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/DOTAv2.yaml +0 -0
  28. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
  29. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
  30. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
  31. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
  32. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/VOC.yaml +0 -0
  33. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
  34. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
  35. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/coco.yaml +0 -0
  36. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
  37. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/coco128.yaml +0 -0
  38. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
  39. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
  40. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/coco8.yaml +0 -0
  41. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
  42. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
  43. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/datasets/xView.yaml +0 -0
  44. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/default.yaml +0 -0
  45. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
  46. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
  47. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
  48. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
  49. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
  50. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
  51. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
  52. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
  53. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
  54. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
  55. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
  56. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
  57. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
  58. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
  59. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
  60. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
  61. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
  62. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/trackers/botsort.yaml +0 -0
  63. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
  64. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/data/__init__.py +0 -0
  65. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/data/annotator.py +0 -0
  66. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/data/augment.py +0 -0
  67. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/data/base.py +0 -0
  68. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/data/build.py +0 -0
  69. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/data/converter.py +0 -0
  70. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/data/dataset.py +0 -0
  71. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/data/loaders.py +0 -0
  72. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/data/utils.py +0 -0
  73. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/engine/__init__.py +0 -0
  74. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/engine/exporter.py +0 -0
  75. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/engine/predictor.py +0 -0
  76. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/engine/results.py +0 -0
  77. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/engine/trainer.py +0 -0
  78. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/engine/tuner.py +0 -0
  79. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/engine/validator.py +0 -0
  80. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/hub/__init__.py +0 -0
  81. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/hub/auth.py +0 -0
  82. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/hub/session.py +0 -0
  83. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/hub/utils.py +0 -0
  84. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/__init__.py +0 -0
  85. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/fastsam/__init__.py +0 -0
  86. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/fastsam/model.py +0 -0
  87. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/fastsam/predict.py +0 -0
  88. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/fastsam/prompt.py +0 -0
  89. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/fastsam/utils.py +0 -0
  90. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/fastsam/val.py +0 -0
  91. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/nas/__init__.py +0 -0
  92. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/nas/model.py +0 -0
  93. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/nas/predict.py +0 -0
  94. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/nas/val.py +0 -0
  95. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/rtdetr/__init__.py +0 -0
  96. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/rtdetr/model.py +0 -0
  97. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/rtdetr/predict.py +0 -0
  98. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/rtdetr/train.py +0 -0
  99. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/rtdetr/val.py +0 -0
  100. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/sam/__init__.py +0 -0
  101. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/sam/amg.py +0 -0
  102. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/sam/build.py +0 -0
  103. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/sam/model.py +0 -0
  104. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/sam/modules/__init__.py +0 -0
  105. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/sam/modules/decoders.py +0 -0
  106. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/sam/modules/encoders.py +0 -0
  107. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/sam/modules/sam.py +0 -0
  108. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
  109. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/sam/modules/transformer.py +0 -0
  110. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/sam/predict.py +0 -0
  111. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/utils/__init__.py +0 -0
  112. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/utils/loss.py +0 -0
  113. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/utils/ops.py +0 -0
  114. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/__init__.py +0 -0
  115. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/classify/__init__.py +0 -0
  116. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/classify/predict.py +0 -0
  117. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/classify/train.py +0 -0
  118. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/classify/val.py +0 -0
  119. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/detect/__init__.py +0 -0
  120. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/detect/predict.py +0 -0
  121. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/detect/train.py +0 -0
  122. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/detect/val.py +0 -0
  123. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/model.py +0 -0
  124. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/pose/__init__.py +0 -0
  125. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/pose/predict.py +0 -0
  126. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/pose/train.py +0 -0
  127. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/pose/val.py +0 -0
  128. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/segment/__init__.py +0 -0
  129. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/segment/predict.py +0 -0
  130. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/segment/train.py +0 -0
  131. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/models/yolo/segment/val.py +0 -0
  132. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/nn/__init__.py +0 -0
  133. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/nn/modules/__init__.py +0 -0
  134. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/nn/modules/block.py +0 -0
  135. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/nn/modules/conv.py +0 -0
  136. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/nn/modules/head.py +0 -0
  137. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/nn/modules/transformer.py +0 -0
  138. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/nn/modules/utils.py +0 -0
  139. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/nn/tasks.py +0 -0
  140. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/trackers/__init__.py +0 -0
  141. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/trackers/basetrack.py +0 -0
  142. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/trackers/bot_sort.py +0 -0
  143. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/trackers/byte_tracker.py +0 -0
  144. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/trackers/track.py +0 -0
  145. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/trackers/utils/__init__.py +0 -0
  146. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/trackers/utils/gmc.py +0 -0
  147. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/trackers/utils/kalman_filter.py +0 -0
  148. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/trackers/utils/matching.py +0 -0
  149. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/autobatch.py +0 -0
  150. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/benchmarks.py +0 -0
  151. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/callbacks/__init__.py +0 -0
  152. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/callbacks/base.py +0 -0
  153. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/callbacks/clearml.py +0 -0
  154. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/callbacks/comet.py +0 -0
  155. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/callbacks/dvc.py +0 -0
  156. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/callbacks/hub.py +0 -0
  157. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/callbacks/mlflow.py +0 -0
  158. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/callbacks/neptune.py +0 -0
  159. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/callbacks/raytune.py +0 -0
  160. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/callbacks/tensorboard.py +0 -0
  161. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/callbacks/wb.py +0 -0
  162. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/dist.py +0 -0
  163. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/downloads.py +0 -0
  164. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/errors.py +0 -0
  165. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/files.py +0 -0
  166. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/instance.py +0 -0
  167. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/loss.py +0 -0
  168. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/metrics.py +0 -0
  169. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/ops.py +0 -0
  170. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/patches.py +0 -0
  171. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/plotting.py +0 -0
  172. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/tal.py +0 -0
  173. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/torch_utils.py +0 -0
  174. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/triton.py +0 -0
  175. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics/utils/tuner.py +0 -0
  176. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics.egg-info/SOURCES.txt +0 -0
  177. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics.egg-info/dependency_links.txt +0 -0
  178. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics.egg-info/entry_points.txt +0 -0
  179. {ultralytics-8.0.211 → ultralytics-8.0.213}/ultralytics.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ultralytics
3
- Version: 8.0.211
3
+ Version: 8.0.213
4
4
  Summary: Ultralytics YOLOv8 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
5
5
  Home-page: https://github.com/ultralytics/ultralytics
6
6
  Author: Ultralytics
@@ -55,7 +55,7 @@ Requires-Dist: coverage; extra == "dev"
55
55
  Requires-Dist: mkdocs-material; extra == "dev"
56
56
  Requires-Dist: mkdocstrings[python]; extra == "dev"
57
57
  Requires-Dist: mkdocs-redirects; extra == "dev"
58
- Requires-Dist: mkdocs-ultralytics-plugin>=0.0.32; extra == "dev"
58
+ Requires-Dist: mkdocs-ultralytics-plugin>=0.0.34; extra == "dev"
59
59
  Provides-Extra: export
60
60
  Requires-Dist: coremltools>=7.0; extra == "export"
61
61
  Requires-Dist: openvino-dev>=2023.0; extra == "export"
@@ -68,7 +68,7 @@ Requires-Dist: tensorflowjs; extra == "export"
68
68
  <img width="100%" src="https://raw.githubusercontent.com/ultralytics/assets/main/im/banner-yolo-vision-2023.png"></a>
69
69
  </p>
70
70
 
71
- [中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/)
71
+ [中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/)
72
72
  <br>
73
73
 
74
74
  <div>
@@ -108,7 +108,7 @@ To request an Enterprise License please complete the form at [Ultralytics Licens
108
108
  </div>
109
109
  </div>
110
110
 
111
- ## Documentation
111
+ ## <div align="center">Documentation</div>
112
112
 
113
113
  See below for a quickstart installation and usage example, and see the [YOLOv8 Docs](https://docs.ultralytics.com) for full documentation on training, validation, prediction and deployment.
114
114
 
@@ -162,7 +162,7 @@ See YOLOv8 [Python Docs](https://docs.ultralytics.com/usage/python) for more exa
162
162
 
163
163
  </details>
164
164
 
165
- ## Models
165
+ ## <div align="center">Models</div>
166
166
 
167
167
  YOLOv8 [Detect](https://docs.ultralytics.com/tasks/detect), [Segment](https://docs.ultralytics.com/tasks/segment) and [Pose](https://docs.ultralytics.com/tasks/pose) models pretrained on the [COCO](https://docs.ultralytics.com/datasets/detect/coco) dataset are available here, as well as YOLOv8 [Classify](https://docs.ultralytics.com/tasks/classify) models pretrained on the [ImageNet](https://docs.ultralytics.com/datasets/classify/imagenet) dataset. [Track](https://docs.ultralytics.com/modes/track) mode is available for all Detect, Segment and Pose models.
168
168
 
@@ -267,7 +267,7 @@ See [Classification Docs](https://docs.ultralytics.com/tasks/classify/) for usag
267
267
 
268
268
  </details>
269
269
 
270
- ## Integrations
270
+ ## <div align="center">Integrations</div>
271
271
 
272
272
  Our key integrations with leading AI platforms extend the functionality of Ultralytics' offerings, enhancing tasks like dataset labeling, training, visualization, and model management. Discover how Ultralytics, in collaboration with [Roboflow](https://roboflow.com/?ref=ultralytics), ClearML, [Comet](https://bit.ly/yolov8-readme-comet), Neural Magic and [OpenVINO](https://docs.ultralytics.com/integrations/openvino), can optimize your AI workflow.
273
273
 
@@ -295,14 +295,14 @@ Our key integrations with leading AI platforms extend the functionality of Ultra
295
295
  | :--------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------: |
296
296
  | Label and export your custom datasets directly to YOLOv8 for training with [Roboflow](https://roboflow.com/?ref=ultralytics) | Automatically track, visualize and even remotely train YOLOv8 using [ClearML](https://cutt.ly/yolov5-readme-clearml) (open-source!) | Free forever, [Comet](https://bit.ly/yolov8-readme-comet) lets you save YOLOv8 models, resume training, and interactively visualize and debug predictions | Run YOLOv8 inference up to 6x faster with [Neural Magic DeepSparse](https://bit.ly/yolov5-neuralmagic) |
297
297
 
298
- ## Ultralytics HUB
298
+ ## <div align="center">Ultralytics HUB</div>
299
299
 
300
300
  Experience seamless AI with [Ultralytics HUB](https://bit.ly/ultralytics_hub) ⭐, the all-in-one solution for data visualization, YOLOv5 and YOLOv8 🚀 model training and deployment, without any coding. Transform images into actionable insights and bring your AI visions to life with ease using our cutting-edge platform and user-friendly [Ultralytics App](https://ultralytics.com/app_install). Start your journey for **Free** now!
301
301
 
302
302
  <a href="https://bit.ly/ultralytics_hub" target="_blank">
303
303
  <img width="100%" src="https://github.com/ultralytics/assets/raw/main/im/ultralytics-hub.png" alt="Ultralytics HUB preview image"></a>
304
304
 
305
- ## Contribute
305
+ ## <div align="center">Contribute</div>
306
306
 
307
307
  We love your input! YOLOv5 and YOLOv8 would not be possible without help from our community. Please see our [Contributing Guide](https://docs.ultralytics.com/help/contributing) to get started, and fill out our [Survey](https://ultralytics.com/survey?utm_source=github&utm_medium=social&utm_campaign=Survey) to send us feedback on your experience. Thank you 🙏 to all our contributors!
308
308
 
@@ -311,14 +311,14 @@ We love your input! YOLOv5 and YOLOv8 would not be possible without help from ou
311
311
  <a href="https://github.com/ultralytics/yolov5/graphs/contributors">
312
312
  <img width="100%" src="https://github.com/ultralytics/assets/raw/main/im/image-contributors.png"></a>
313
313
 
314
- ## License
314
+ ## <div align="center">License</div>
315
315
 
316
316
  Ultralytics offers two licensing options to accommodate diverse use cases:
317
317
 
318
318
  - **AGPL-3.0 License**: This [OSI-approved](https://opensource.org/licenses/) open-source license is ideal for students and enthusiasts, promoting open collaboration and knowledge sharing. See the [LICENSE](https://github.com/ultralytics/ultralytics/blob/main/LICENSE) file for more details.
319
319
  - **Enterprise License**: Designed for commercial use, this license permits seamless integration of Ultralytics software and AI models into commercial goods and services, bypassing the open-source requirements of AGPL-3.0. If your scenario involves embedding our solutions into a commercial offering, reach out through [Ultralytics Licensing](https://ultralytics.com/license).
320
320
 
321
- ## Contact
321
+ ## <div align="center">Contact</div>
322
322
 
323
323
  For Ultralytics bug reports and feature requests please visit [GitHub Issues](https://github.com/ultralytics/ultralytics/issues), and join our [Discord](https://ultralytics.com/discord) community for questions and discussions!
324
324
 
@@ -4,7 +4,7 @@
4
4
  <img width="100%" src="https://raw.githubusercontent.com/ultralytics/assets/main/im/banner-yolo-vision-2023.png"></a>
5
5
  </p>
6
6
 
7
- [中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/)
7
+ [中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/)
8
8
  <br>
9
9
 
10
10
  <div>
@@ -44,7 +44,7 @@ To request an Enterprise License please complete the form at [Ultralytics Licens
44
44
  </div>
45
45
  </div>
46
46
 
47
- ## Documentation
47
+ ## <div align="center">Documentation</div>
48
48
 
49
49
  See below for a quickstart installation and usage example, and see the [YOLOv8 Docs](https://docs.ultralytics.com) for full documentation on training, validation, prediction and deployment.
50
50
 
@@ -98,7 +98,7 @@ See YOLOv8 [Python Docs](https://docs.ultralytics.com/usage/python) for more exa
98
98
 
99
99
  </details>
100
100
 
101
- ## Models
101
+ ## <div align="center">Models</div>
102
102
 
103
103
  YOLOv8 [Detect](https://docs.ultralytics.com/tasks/detect), [Segment](https://docs.ultralytics.com/tasks/segment) and [Pose](https://docs.ultralytics.com/tasks/pose) models pretrained on the [COCO](https://docs.ultralytics.com/datasets/detect/coco) dataset are available here, as well as YOLOv8 [Classify](https://docs.ultralytics.com/tasks/classify) models pretrained on the [ImageNet](https://docs.ultralytics.com/datasets/classify/imagenet) dataset. [Track](https://docs.ultralytics.com/modes/track) mode is available for all Detect, Segment and Pose models.
104
104
 
@@ -203,7 +203,7 @@ See [Classification Docs](https://docs.ultralytics.com/tasks/classify/) for usag
203
203
 
204
204
  </details>
205
205
 
206
- ## Integrations
206
+ ## <div align="center">Integrations</div>
207
207
 
208
208
  Our key integrations with leading AI platforms extend the functionality of Ultralytics' offerings, enhancing tasks like dataset labeling, training, visualization, and model management. Discover how Ultralytics, in collaboration with [Roboflow](https://roboflow.com/?ref=ultralytics), ClearML, [Comet](https://bit.ly/yolov8-readme-comet), Neural Magic and [OpenVINO](https://docs.ultralytics.com/integrations/openvino), can optimize your AI workflow.
209
209
 
@@ -231,14 +231,14 @@ Our key integrations with leading AI platforms extend the functionality of Ultra
231
231
  | :--------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------: |
232
232
  | Label and export your custom datasets directly to YOLOv8 for training with [Roboflow](https://roboflow.com/?ref=ultralytics) | Automatically track, visualize and even remotely train YOLOv8 using [ClearML](https://cutt.ly/yolov5-readme-clearml) (open-source!) | Free forever, [Comet](https://bit.ly/yolov8-readme-comet) lets you save YOLOv8 models, resume training, and interactively visualize and debug predictions | Run YOLOv8 inference up to 6x faster with [Neural Magic DeepSparse](https://bit.ly/yolov5-neuralmagic) |
233
233
 
234
- ## Ultralytics HUB
234
+ ## <div align="center">Ultralytics HUB</div>
235
235
 
236
236
  Experience seamless AI with [Ultralytics HUB](https://bit.ly/ultralytics_hub) ⭐, the all-in-one solution for data visualization, YOLOv5 and YOLOv8 🚀 model training and deployment, without any coding. Transform images into actionable insights and bring your AI visions to life with ease using our cutting-edge platform and user-friendly [Ultralytics App](https://ultralytics.com/app_install). Start your journey for **Free** now!
237
237
 
238
238
  <a href="https://bit.ly/ultralytics_hub" target="_blank">
239
239
  <img width="100%" src="https://github.com/ultralytics/assets/raw/main/im/ultralytics-hub.png" alt="Ultralytics HUB preview image"></a>
240
240
 
241
- ## Contribute
241
+ ## <div align="center">Contribute</div>
242
242
 
243
243
  We love your input! YOLOv5 and YOLOv8 would not be possible without help from our community. Please see our [Contributing Guide](https://docs.ultralytics.com/help/contributing) to get started, and fill out our [Survey](https://ultralytics.com/survey?utm_source=github&utm_medium=social&utm_campaign=Survey) to send us feedback on your experience. Thank you 🙏 to all our contributors!
244
244
 
@@ -247,14 +247,14 @@ We love your input! YOLOv5 and YOLOv8 would not be possible without help from ou
247
247
  <a href="https://github.com/ultralytics/yolov5/graphs/contributors">
248
248
  <img width="100%" src="https://github.com/ultralytics/assets/raw/main/im/image-contributors.png"></a>
249
249
 
250
- ## License
250
+ ## <div align="center">License</div>
251
251
 
252
252
  Ultralytics offers two licensing options to accommodate diverse use cases:
253
253
 
254
254
  - **AGPL-3.0 License**: This [OSI-approved](https://opensource.org/licenses/) open-source license is ideal for students and enthusiasts, promoting open collaboration and knowledge sharing. See the [LICENSE](https://github.com/ultralytics/ultralytics/blob/main/LICENSE) file for more details.
255
255
  - **Enterprise License**: Designed for commercial use, this license permits seamless integration of Ultralytics software and AI models into commercial goods and services, bypassing the open-source requirements of AGPL-3.0. If your scenario involves embedding our solutions into a commercial offering, reach out through [Ultralytics Licensing](https://ultralytics.com/license).
256
256
 
257
- ## Contact
257
+ ## <div align="center">Contact</div>
258
258
 
259
259
  For Ultralytics bug reports and feature requests please visit [GitHub Issues](https://github.com/ultralytics/ultralytics/issues), and join our [Discord](https://ultralytics.com/discord) community for questions and discussions!
260
260
 
@@ -4,7 +4,7 @@
4
4
  <img width="100%" src="https://raw.githubusercontent.com/ultralytics/assets/main/im/banner-yolo-vision-2023.png"></a>
5
5
  </p>
6
6
 
7
- [中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/)
7
+ [中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/)
8
8
  <br>
9
9
 
10
10
  <div>
@@ -44,7 +44,7 @@
44
44
  </div>
45
45
  </div>
46
46
 
47
- ## 文档
47
+ ## <div align="center">文档</div>
48
48
 
49
49
  请参阅下面的快速安装和使用示例,以及 [YOLOv8 文档](https://docs.ultralytics.com) 上有关训练、验证、预测和部署的完整文档。
50
50
 
@@ -98,7 +98,7 @@ success = model.export(format="onnx") # 将模型导出为 ONNX 格式
98
98
 
99
99
  </details>
100
100
 
101
- ## 模型
101
+ ## <div align="center">模型</div>
102
102
 
103
103
  在[COCO](https://docs.ultralytics.com/datasets/detect/coco)数据集上预训练的YOLOv8 [检测](https://docs.ultralytics.com/tasks/detect),[分割](https://docs.ultralytics.com/tasks/segment)和[姿态](https://docs.ultralytics.com/tasks/pose)模型可以在这里找到,以及在[ImageNet](https://docs.ultralytics.com/datasets/classify/imagenet)数据集上预训练的YOLOv8 [分类](https://docs.ultralytics.com/tasks/classify)模型。所有的检测,分割和姿态模型都支持[追踪](https://docs.ultralytics.com/modes/track)模式。
104
104
 
@@ -202,7 +202,7 @@ success = model.export(format="onnx") # 将模型导出为 ONNX 格式
202
202
 
203
203
  </details>
204
204
 
205
- ## 集成
205
+ ## <div align="center">集成</div>
206
206
 
207
207
  我们与领先的AI平台的关键整合扩展了Ultralytics产品的功能,增强了数据集标签化、训练、可视化和模型管理等任务。探索Ultralytics如何与[Roboflow](https://roboflow.com/?ref=ultralytics)、ClearML、[Comet](https://bit.ly/yolov8-readme-comet)、Neural Magic以及[OpenVINO](https://docs.ultralytics.com/integrations/openvino)合作,优化您的AI工作流程。
208
208
 
@@ -230,14 +230,14 @@ success = model.export(format="onnx") # 将模型导出为 ONNX 格式
230
230
  | :--------------------------------------------------------------------------------: | :----------------------------------------------------------------------------: | :----------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------: |
231
231
  | 使用 [Roboflow](https://roboflow.com/?ref=ultralytics) 将您的自定义数据集直接标记并导出至 YOLOv8 进行训练 | 使用 [ClearML](https://cutt.ly/yolov5-readme-clearml)(开源!)自动跟踪、可视化,甚至远程训练 YOLOv8 | 免费且永久,[Comet](https://bit.ly/yolov8-readme-comet) 让您保存 YOLOv8 模型、恢复训练,并以交互式方式查看和调试预测 | 使用 [Neural Magic DeepSparse](https://bit.ly/yolov5-neuralmagic) 使 YOLOv8 推理速度提高多达 6 倍 |
232
232
 
233
- ## Ultralytics HUB
233
+ ## <div align="center">Ultralytics HUB</div>
234
234
 
235
235
  体验 [Ultralytics HUB](https://bit.ly/ultralytics_hub) ⭐ 带来的无缝 AI,这是一个一体化解决方案,用于数据可视化、YOLOv5 和即将推出的 YOLOv8 🚀 模型训练和部署,无需任何编码。通过我们先进的平台和用户友好的 [Ultralytics 应用程序](https://ultralytics.com/app_install),轻松将图像转化为可操作的见解,并实现您的 AI 愿景。现在就开始您的**免费**之旅!
236
236
 
237
237
  <a href="https://bit.ly/ultralytics_hub" target="_blank">
238
238
  <img width="100%" src="https://github.com/ultralytics/assets/raw/main/im/ultralytics-hub.png" alt="Ultralytics HUB preview image"></a>
239
239
 
240
- ## 贡献
240
+ ## <div align="center">贡献</div>
241
241
 
242
242
  我们喜欢您的参与!没有社区的帮助,YOLOv5 和 YOLOv8 将无法实现。请参阅我们的[贡献指南](https://docs.ultralytics.com/help/contributing)以开始使用,并填写我们的[调查问卷](https://ultralytics.com/survey?utm_source=github&utm_medium=social&utm_campaign=Survey)向我们提供您的使用体验反馈。感谢所有贡献者的支持!🙏
243
243
 
@@ -246,14 +246,14 @@ success = model.export(format="onnx") # 将模型导出为 ONNX 格式
246
246
  <a href="https://github.com/ultralytics/yolov5/graphs/contributors">
247
247
  <img width="100%" src="https://github.com/ultralytics/assets/raw/main/im/image-contributors.png"></a>
248
248
 
249
- ## 许可证
249
+ ## <div align="center">许可证</div>
250
250
 
251
251
  Ultralytics 提供两种许可证选项以适应各种使用场景:
252
252
 
253
253
  - **AGPL-3.0 许可证**:这个[OSI 批准](https://opensource.org/licenses/)的开源许可证非常适合学生和爱好者,可以推动开放的协作和知识分享。请查看[LICENSE](https://github.com/ultralytics/ultralytics/blob/main/LICENSE) 文件以了解更多细节。
254
254
  - **企业许可证**:专为商业用途设计,该许可证允许将 Ultralytics 的软件和 AI 模型无缝集成到商业产品和服务中,从而绕过 AGPL-3.0 的开源要求。如果您的场景涉及将我们的解决方案嵌入到商业产品中,请通过 [Ultralytics Licensing](https://ultralytics.com/license)与我们联系。
255
255
 
256
- ## 联系方式
256
+ ## <div align="center">联系方式</div>
257
257
 
258
258
  对于 Ultralytics 的错误报告和功能请求,请访问 [GitHub Issues](https://github.com/ultralytics/ultralytics/issues),并加入我们的 [Discord](https://ultralytics.com/discord) 社区进行问题和讨论!
259
259
 
@@ -75,7 +75,7 @@ setup(
75
75
  'mkdocs-material',
76
76
  'mkdocstrings[python]',
77
77
  'mkdocs-redirects', # for 301 redirects
78
- 'mkdocs-ultralytics-plugin>=0.0.32', # for meta descriptions and images, dates and authors
78
+ 'mkdocs-ultralytics-plugin>=0.0.34', # for meta descriptions and images, dates and authors
79
79
  ],
80
80
  'export': [
81
81
  'coremltools>=7.0',
@@ -132,11 +132,23 @@ def test_predict_grey_and_4ch():
132
132
  f.unlink() # cleanup
133
133
 
134
134
 
135
+ @pytest.mark.slow
136
+ @pytest.mark.skipif(not ONLINE, reason='environment is offline')
137
+ def test_youtube():
138
+ """
139
+ Test YouTube inference.
140
+
141
+ Marked --slow to reduce YouTube API rate limits risk.
142
+ """
143
+ model = YOLO(MODEL)
144
+ model.predict('https://youtu.be/G17sBkb38XQ', imgsz=96, save=True)
145
+
146
+
135
147
  @pytest.mark.skipif(not ONLINE, reason='environment is offline')
136
148
  @pytest.mark.skipif(not IS_TMP_WRITEABLE, reason='directory is not writeable')
137
149
  def test_track_stream():
138
150
  """
139
- Test YouTube streaming tracking (short 10 frame video) with non-default ByteTrack tracker.
151
+ Test streaming tracking (short 10 frame video) with non-default ByteTrack tracker.
140
152
 
141
153
  Note imgsz=160 required for tracking for higher confidence and better matches
142
154
  """
@@ -1,6 +1,6 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
2
 
3
- __version__ = '8.0.211'
3
+ __version__ = '8.0.213'
4
4
 
5
5
  from ultralytics.models import RTDETR, SAM, YOLO
6
6
  from ultralytics.models.fastsam import FastSAM
@@ -102,7 +102,7 @@ class Model(nn.Module):
102
102
  """Is model a Triton Server URL string, i.e. <scheme>://<netloc>/<endpoint>/<task_name>"""
103
103
  from urllib.parse import urlsplit
104
104
  url = urlsplit(model)
105
- return url.netloc and url.path and url.scheme in {'http', 'grfc'}
105
+ return url.netloc and url.path and url.scheme in {'http', 'grpc'}
106
106
 
107
107
  @staticmethod
108
108
  def is_hub_model(model):
@@ -509,6 +509,6 @@ class AutoBackend(nn.Module):
509
509
  else:
510
510
  from urllib.parse import urlsplit
511
511
  url = urlsplit(p)
512
- triton = url.netloc and url.path and url.scheme in {'http', 'grfc'}
512
+ triton = url.netloc and url.path and url.scheme in {'http', 'grpc'}
513
513
 
514
514
  return types + [triton]
@@ -225,55 +225,36 @@ def plt_settings(rcparams=None, backend='Agg'):
225
225
 
226
226
 
227
227
  def set_logging(name=LOGGING_NAME, verbose=True):
228
- """Sets up logging for the given name."""
229
- rank = int(os.getenv('RANK', -1)) # rank in world for Multi-GPU trainings
230
- level = logging.INFO if verbose and rank in {-1, 0} else logging.ERROR
231
- logging.config.dictConfig({
232
- 'version': 1,
233
- 'disable_existing_loggers': False,
234
- 'formatters': {
235
- name: {
236
- 'format': '%(message)s'}},
237
- 'handlers': {
238
- name: {
239
- 'class': 'logging.StreamHandler',
240
- 'formatter': name,
241
- 'level': level}},
242
- 'loggers': {
243
- name: {
244
- 'level': level,
245
- 'handlers': [name],
246
- 'propagate': False}}})
228
+ """Sets up logging for the given name with UTF-8 encoding support."""
229
+ level = logging.INFO if verbose and RANK in {-1, 0} else logging.ERROR # rank in world for Multi-GPU trainings
247
230
 
231
+ # Configure the console (stdout) encoding to UTF-8
232
+ if WINDOWS: # for Windows
233
+ sys.stdout.reconfigure(encoding='utf-8')
248
234
 
249
- def emojis(string=''):
250
- """Return platform-dependent emoji-safe version of string."""
251
- return string.encode().decode('ascii', 'ignore') if WINDOWS else string
252
-
235
+ # Create and configure the StreamHandler
236
+ stream_handler = logging.StreamHandler(sys.stdout)
237
+ stream_handler.setFormatter(logging.Formatter('%(message)s'))
238
+ stream_handler.setLevel(level)
253
239
 
254
- class EmojiFilter(logging.Filter):
255
- """
256
- A custom logging filter class for removing emojis in log messages.
257
-
258
- This filter is particularly useful for ensuring compatibility with Windows terminals that may not support the
259
- display of emojis in log messages.
260
- """
261
-
262
- def filter(self, record):
263
- """Filter logs by emoji unicode characters on windows."""
264
- record.msg = emojis(record.msg)
265
- return super().filter(record)
240
+ logger = logging.getLogger(name)
241
+ logger.setLevel(level)
242
+ logger.addHandler(stream_handler)
243
+ logger.propagate = False
244
+ return logger
266
245
 
267
246
 
268
247
  # Set logger
269
- set_logging(LOGGING_NAME, verbose=VERBOSE) # run before defining LOGGER
270
- LOGGER = logging.getLogger(LOGGING_NAME) # define globally (used in train.py, val.py, detect.py, etc.)
271
- if WINDOWS: # emoji-safe logging
272
- LOGGER.addFilter(EmojiFilter())
248
+ LOGGER = set_logging(LOGGING_NAME, verbose=VERBOSE) # define globally (used in train.py, val.py, predict.py, etc.)
273
249
  for logger in 'sentry_sdk', 'urllib3.connectionpool':
274
250
  logging.getLogger(logger).setLevel(logging.CRITICAL)
275
251
 
276
252
 
253
+ def emojis(string=''):
254
+ """Return platform-dependent emoji-safe version of string."""
255
+ return string.encode().decode('ascii', 'ignore') if WINDOWS else string
256
+
257
+
277
258
  class ThreadingLocked:
278
259
  """
279
260
  A decorator class for ensuring thread-safe execution of a function or method. This class can be used as a decorator
@@ -439,7 +439,8 @@ def check_file(file, suffix='', download=True, hard=True):
439
439
  check_suffix(file, suffix) # optional
440
440
  file = str(file).strip() # convert to string and strip spaces
441
441
  file = check_yolov5u_filename(file) # yolov5n -> yolov5nu
442
- if not file or ('://' not in file and Path(file).exists()): # exists ('://' check required in Windows Python<3.10)
442
+ if (not file or ('://' not in file and Path(file).exists()) or # '://' check required in Windows Python<3.10
443
+ file.lower().startswith('grpc://')): # file exists or gRPC Triton images
443
444
  return file
444
445
  elif download and file.lower().startswith(('https://', 'http://', 'rtsp://', 'rtmp://', 'tcp://')): # download
445
446
  url = file # warning: Pathlib turns :// -> :/
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ultralytics
3
- Version: 8.0.211
3
+ Version: 8.0.213
4
4
  Summary: Ultralytics YOLOv8 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
5
5
  Home-page: https://github.com/ultralytics/ultralytics
6
6
  Author: Ultralytics
@@ -55,7 +55,7 @@ Requires-Dist: coverage; extra == "dev"
55
55
  Requires-Dist: mkdocs-material; extra == "dev"
56
56
  Requires-Dist: mkdocstrings[python]; extra == "dev"
57
57
  Requires-Dist: mkdocs-redirects; extra == "dev"
58
- Requires-Dist: mkdocs-ultralytics-plugin>=0.0.32; extra == "dev"
58
+ Requires-Dist: mkdocs-ultralytics-plugin>=0.0.34; extra == "dev"
59
59
  Provides-Extra: export
60
60
  Requires-Dist: coremltools>=7.0; extra == "export"
61
61
  Requires-Dist: openvino-dev>=2023.0; extra == "export"
@@ -68,7 +68,7 @@ Requires-Dist: tensorflowjs; extra == "export"
68
68
  <img width="100%" src="https://raw.githubusercontent.com/ultralytics/assets/main/im/banner-yolo-vision-2023.png"></a>
69
69
  </p>
70
70
 
71
- [中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/)
71
+ [中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/)
72
72
  <br>
73
73
 
74
74
  <div>
@@ -108,7 +108,7 @@ To request an Enterprise License please complete the form at [Ultralytics Licens
108
108
  </div>
109
109
  </div>
110
110
 
111
- ## Documentation
111
+ ## <div align="center">Documentation</div>
112
112
 
113
113
  See below for a quickstart installation and usage example, and see the [YOLOv8 Docs](https://docs.ultralytics.com) for full documentation on training, validation, prediction and deployment.
114
114
 
@@ -162,7 +162,7 @@ See YOLOv8 [Python Docs](https://docs.ultralytics.com/usage/python) for more exa
162
162
 
163
163
  </details>
164
164
 
165
- ## Models
165
+ ## <div align="center">Models</div>
166
166
 
167
167
  YOLOv8 [Detect](https://docs.ultralytics.com/tasks/detect), [Segment](https://docs.ultralytics.com/tasks/segment) and [Pose](https://docs.ultralytics.com/tasks/pose) models pretrained on the [COCO](https://docs.ultralytics.com/datasets/detect/coco) dataset are available here, as well as YOLOv8 [Classify](https://docs.ultralytics.com/tasks/classify) models pretrained on the [ImageNet](https://docs.ultralytics.com/datasets/classify/imagenet) dataset. [Track](https://docs.ultralytics.com/modes/track) mode is available for all Detect, Segment and Pose models.
168
168
 
@@ -267,7 +267,7 @@ See [Classification Docs](https://docs.ultralytics.com/tasks/classify/) for usag
267
267
 
268
268
  </details>
269
269
 
270
- ## Integrations
270
+ ## <div align="center">Integrations</div>
271
271
 
272
272
  Our key integrations with leading AI platforms extend the functionality of Ultralytics' offerings, enhancing tasks like dataset labeling, training, visualization, and model management. Discover how Ultralytics, in collaboration with [Roboflow](https://roboflow.com/?ref=ultralytics), ClearML, [Comet](https://bit.ly/yolov8-readme-comet), Neural Magic and [OpenVINO](https://docs.ultralytics.com/integrations/openvino), can optimize your AI workflow.
273
273
 
@@ -295,14 +295,14 @@ Our key integrations with leading AI platforms extend the functionality of Ultra
295
295
  | :--------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------: |
296
296
  | Label and export your custom datasets directly to YOLOv8 for training with [Roboflow](https://roboflow.com/?ref=ultralytics) | Automatically track, visualize and even remotely train YOLOv8 using [ClearML](https://cutt.ly/yolov5-readme-clearml) (open-source!) | Free forever, [Comet](https://bit.ly/yolov8-readme-comet) lets you save YOLOv8 models, resume training, and interactively visualize and debug predictions | Run YOLOv8 inference up to 6x faster with [Neural Magic DeepSparse](https://bit.ly/yolov5-neuralmagic) |
297
297
 
298
- ## Ultralytics HUB
298
+ ## <div align="center">Ultralytics HUB</div>
299
299
 
300
300
  Experience seamless AI with [Ultralytics HUB](https://bit.ly/ultralytics_hub) ⭐, the all-in-one solution for data visualization, YOLOv5 and YOLOv8 🚀 model training and deployment, without any coding. Transform images into actionable insights and bring your AI visions to life with ease using our cutting-edge platform and user-friendly [Ultralytics App](https://ultralytics.com/app_install). Start your journey for **Free** now!
301
301
 
302
302
  <a href="https://bit.ly/ultralytics_hub" target="_blank">
303
303
  <img width="100%" src="https://github.com/ultralytics/assets/raw/main/im/ultralytics-hub.png" alt="Ultralytics HUB preview image"></a>
304
304
 
305
- ## Contribute
305
+ ## <div align="center">Contribute</div>
306
306
 
307
307
  We love your input! YOLOv5 and YOLOv8 would not be possible without help from our community. Please see our [Contributing Guide](https://docs.ultralytics.com/help/contributing) to get started, and fill out our [Survey](https://ultralytics.com/survey?utm_source=github&utm_medium=social&utm_campaign=Survey) to send us feedback on your experience. Thank you 🙏 to all our contributors!
308
308
 
@@ -311,14 +311,14 @@ We love your input! YOLOv5 and YOLOv8 would not be possible without help from ou
311
311
  <a href="https://github.com/ultralytics/yolov5/graphs/contributors">
312
312
  <img width="100%" src="https://github.com/ultralytics/assets/raw/main/im/image-contributors.png"></a>
313
313
 
314
- ## License
314
+ ## <div align="center">License</div>
315
315
 
316
316
  Ultralytics offers two licensing options to accommodate diverse use cases:
317
317
 
318
318
  - **AGPL-3.0 License**: This [OSI-approved](https://opensource.org/licenses/) open-source license is ideal for students and enthusiasts, promoting open collaboration and knowledge sharing. See the [LICENSE](https://github.com/ultralytics/ultralytics/blob/main/LICENSE) file for more details.
319
319
  - **Enterprise License**: Designed for commercial use, this license permits seamless integration of Ultralytics software and AI models into commercial goods and services, bypassing the open-source requirements of AGPL-3.0. If your scenario involves embedding our solutions into a commercial offering, reach out through [Ultralytics Licensing](https://ultralytics.com/license).
320
320
 
321
- ## Contact
321
+ ## <div align="center">Contact</div>
322
322
 
323
323
  For Ultralytics bug reports and feature requests please visit [GitHub Issues](https://github.com/ultralytics/ultralytics/issues), and join our [Discord](https://ultralytics.com/discord) community for questions and discussions!
324
324
 
@@ -24,7 +24,7 @@ coverage
24
24
  mkdocs-material
25
25
  mkdocstrings[python]
26
26
  mkdocs-redirects
27
- mkdocs-ultralytics-plugin>=0.0.32
27
+ mkdocs-ultralytics-plugin>=0.0.34
28
28
 
29
29
  [export]
30
30
  coremltools>=7.0
File without changes
File without changes
File without changes