ultralytics 8.2.35__tar.gz → 8.2.36__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 (226) hide show
  1. {ultralytics-8.2.35 → ultralytics-8.2.36}/PKG-INFO +7 -7
  2. {ultralytics-8.2.35 → ultralytics-8.2.36}/README.md +6 -6
  3. {ultralytics-8.2.35 → ultralytics-8.2.36}/pyproject.toml +0 -1
  4. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/__init__.py +1 -1
  5. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v9/yolov9c-seg.yaml +3 -3
  6. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v9/yolov9c.yaml +3 -3
  7. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v9/yolov9e-seg.yaml +4 -4
  8. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v9/yolov9e.yaml +4 -4
  9. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v9/yolov9m.yaml +3 -3
  10. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v9/yolov9s.yaml +3 -3
  11. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v9/yolov9t.yaml +3 -3
  12. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/nn/tasks.py +6 -0
  13. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/callbacks/mlflow.py +2 -0
  14. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/plotting.py +47 -20
  15. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics.egg-info/PKG-INFO +7 -7
  16. {ultralytics-8.2.35 → ultralytics-8.2.36}/LICENSE +0 -0
  17. {ultralytics-8.2.35 → ultralytics-8.2.36}/setup.cfg +0 -0
  18. {ultralytics-8.2.35 → ultralytics-8.2.36}/tests/__init__.py +0 -0
  19. {ultralytics-8.2.35 → ultralytics-8.2.36}/tests/conftest.py +0 -0
  20. {ultralytics-8.2.35 → ultralytics-8.2.36}/tests/test_cli.py +0 -0
  21. {ultralytics-8.2.35 → ultralytics-8.2.36}/tests/test_cuda.py +0 -0
  22. {ultralytics-8.2.35 → ultralytics-8.2.36}/tests/test_engine.py +0 -0
  23. {ultralytics-8.2.35 → ultralytics-8.2.36}/tests/test_explorer.py +0 -0
  24. {ultralytics-8.2.35 → ultralytics-8.2.36}/tests/test_exports.py +0 -0
  25. {ultralytics-8.2.35 → ultralytics-8.2.36}/tests/test_integrations.py +0 -0
  26. {ultralytics-8.2.35 → ultralytics-8.2.36}/tests/test_python.py +0 -0
  27. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/assets/bus.jpg +0 -0
  28. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/assets/zidane.jpg +0 -0
  29. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/__init__.py +0 -0
  30. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
  31. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
  32. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
  33. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
  34. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
  35. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
  36. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
  37. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/VOC.yaml +0 -0
  38. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
  39. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/african-wildlife.yaml +0 -0
  40. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/brain-tumor.yaml +0 -0
  41. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
  42. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
  43. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/coco.yaml +0 -0
  44. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
  45. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/coco128.yaml +0 -0
  46. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
  47. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
  48. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/coco8.yaml +0 -0
  49. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
  50. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/dota8.yaml +0 -0
  51. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/lvis.yaml +0 -0
  52. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
  53. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
  54. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/signature.yaml +0 -0
  55. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
  56. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/datasets/xView.yaml +0 -0
  57. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/default.yaml +0 -0
  58. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
  59. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
  60. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
  61. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
  62. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
  63. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
  64. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
  65. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
  66. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
  67. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
  68. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +0 -0
  69. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +0 -0
  70. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
  71. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
  72. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
  73. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
  74. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
  75. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
  76. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
  77. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
  78. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
  79. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
  80. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
  81. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
  82. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-world.yaml +0 -0
  83. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +0 -0
  84. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
  85. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/trackers/botsort.yaml +0 -0
  86. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
  87. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/__init__.py +0 -0
  88. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/annotator.py +0 -0
  89. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/augment.py +0 -0
  90. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/base.py +0 -0
  91. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/build.py +0 -0
  92. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/converter.py +0 -0
  93. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/dataset.py +0 -0
  94. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/explorer/__init__.py +0 -0
  95. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/explorer/explorer.py +0 -0
  96. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/explorer/gui/__init__.py +0 -0
  97. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/explorer/gui/dash.py +0 -0
  98. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/explorer/utils.py +0 -0
  99. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/loaders.py +0 -0
  100. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/split_dota.py +0 -0
  101. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/data/utils.py +0 -0
  102. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/engine/__init__.py +0 -0
  103. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/engine/exporter.py +0 -0
  104. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/engine/model.py +0 -0
  105. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/engine/predictor.py +0 -0
  106. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/engine/results.py +0 -0
  107. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/engine/trainer.py +0 -0
  108. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/engine/tuner.py +0 -0
  109. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/engine/validator.py +0 -0
  110. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/hub/__init__.py +0 -0
  111. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/hub/auth.py +0 -0
  112. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/hub/session.py +0 -0
  113. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/hub/utils.py +0 -0
  114. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/__init__.py +0 -0
  115. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/fastsam/__init__.py +0 -0
  116. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/fastsam/model.py +0 -0
  117. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/fastsam/predict.py +0 -0
  118. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/fastsam/prompt.py +0 -0
  119. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/fastsam/utils.py +0 -0
  120. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/fastsam/val.py +0 -0
  121. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/nas/__init__.py +0 -0
  122. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/nas/model.py +0 -0
  123. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/nas/predict.py +0 -0
  124. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/nas/val.py +0 -0
  125. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/rtdetr/__init__.py +0 -0
  126. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/rtdetr/model.py +0 -0
  127. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/rtdetr/predict.py +0 -0
  128. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/rtdetr/train.py +0 -0
  129. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/rtdetr/val.py +0 -0
  130. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/sam/__init__.py +0 -0
  131. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/sam/amg.py +0 -0
  132. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/sam/build.py +0 -0
  133. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/sam/model.py +0 -0
  134. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/sam/modules/__init__.py +0 -0
  135. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/sam/modules/decoders.py +0 -0
  136. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/sam/modules/encoders.py +0 -0
  137. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/sam/modules/sam.py +0 -0
  138. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
  139. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/sam/modules/transformer.py +0 -0
  140. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/sam/predict.py +0 -0
  141. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/utils/__init__.py +0 -0
  142. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/utils/loss.py +0 -0
  143. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/utils/ops.py +0 -0
  144. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/__init__.py +0 -0
  145. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/classify/__init__.py +0 -0
  146. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/classify/predict.py +0 -0
  147. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/classify/train.py +0 -0
  148. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/classify/val.py +0 -0
  149. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/detect/__init__.py +0 -0
  150. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/detect/predict.py +0 -0
  151. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/detect/train.py +0 -0
  152. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/detect/val.py +0 -0
  153. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/model.py +0 -0
  154. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/obb/__init__.py +0 -0
  155. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/obb/predict.py +0 -0
  156. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/obb/train.py +0 -0
  157. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/obb/val.py +0 -0
  158. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/pose/__init__.py +0 -0
  159. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/pose/predict.py +0 -0
  160. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/pose/train.py +0 -0
  161. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/pose/val.py +0 -0
  162. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/segment/__init__.py +0 -0
  163. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/segment/predict.py +0 -0
  164. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/segment/train.py +0 -0
  165. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/segment/val.py +0 -0
  166. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/world/__init__.py +0 -0
  167. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/world/train.py +0 -0
  168. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/models/yolo/world/train_world.py +0 -0
  169. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/nn/__init__.py +0 -0
  170. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/nn/autobackend.py +0 -0
  171. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/nn/modules/__init__.py +0 -0
  172. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/nn/modules/block.py +0 -0
  173. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/nn/modules/conv.py +0 -0
  174. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/nn/modules/head.py +0 -0
  175. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/nn/modules/transformer.py +0 -0
  176. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/nn/modules/utils.py +0 -0
  177. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/solutions/__init__.py +0 -0
  178. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/solutions/ai_gym.py +0 -0
  179. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/solutions/analytics.py +0 -0
  180. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/solutions/distance_calculation.py +0 -0
  181. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/solutions/heatmap.py +0 -0
  182. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/solutions/object_counter.py +0 -0
  183. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/solutions/parking_management.py +0 -0
  184. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/solutions/queue_management.py +0 -0
  185. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/solutions/speed_estimation.py +0 -0
  186. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/trackers/__init__.py +0 -0
  187. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/trackers/basetrack.py +0 -0
  188. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/trackers/bot_sort.py +0 -0
  189. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/trackers/byte_tracker.py +0 -0
  190. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/trackers/track.py +0 -0
  191. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/trackers/utils/__init__.py +0 -0
  192. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/trackers/utils/gmc.py +0 -0
  193. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/trackers/utils/kalman_filter.py +0 -0
  194. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/trackers/utils/matching.py +0 -0
  195. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/__init__.py +0 -0
  196. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/autobatch.py +0 -0
  197. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/benchmarks.py +0 -0
  198. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/callbacks/__init__.py +0 -0
  199. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/callbacks/base.py +0 -0
  200. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/callbacks/clearml.py +0 -0
  201. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/callbacks/comet.py +0 -0
  202. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/callbacks/dvc.py +0 -0
  203. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/callbacks/hub.py +0 -0
  204. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/callbacks/neptune.py +0 -0
  205. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/callbacks/raytune.py +0 -0
  206. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/callbacks/tensorboard.py +0 -0
  207. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/callbacks/wb.py +0 -0
  208. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/checks.py +0 -0
  209. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/dist.py +0 -0
  210. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/downloads.py +0 -0
  211. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/errors.py +0 -0
  212. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/files.py +0 -0
  213. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/instance.py +0 -0
  214. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/loss.py +0 -0
  215. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/metrics.py +0 -0
  216. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/ops.py +0 -0
  217. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/patches.py +0 -0
  218. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/tal.py +0 -0
  219. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/torch_utils.py +0 -0
  220. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/triton.py +0 -0
  221. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics/utils/tuner.py +0 -0
  222. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics.egg-info/SOURCES.txt +0 -0
  223. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics.egg-info/dependency_links.txt +0 -0
  224. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics.egg-info/entry_points.txt +0 -0
  225. {ultralytics-8.2.35 → ultralytics-8.2.36}/ultralytics.egg-info/requires.txt +0 -0
  226. {ultralytics-8.2.35 → ultralytics-8.2.36}/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.2.35
3
+ Version: 8.2.36
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
@@ -93,13 +93,13 @@ Requires-Dist: pycocotools>=2.0.7; extra == "extra"
93
93
  <div>
94
94
  <a href="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml"><img src="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml/badge.svg" alt="Ultralytics CI"></a>
95
95
  <a href="https://codecov.io/github/ultralytics/ultralytics"><img src="https://codecov.io/github/ultralytics/ultralytics/branch/main/graph/badge.svg?token=HHW7IIVFVY" alt="Ultralytics Code Coverage"></a>
96
- <a href="https://zenodo.org/badge/latestdoi/264818686"><img src="https://zenodo.org/badge/264818686.svg" alt="YOLOv8 Citation"></a>
97
- <a href="https://hub.docker.com/r/ultralytics/ultralytics"><img src="https://img.shields.io/docker/pulls/ultralytics/ultralytics?logo=docker" alt="Docker Pulls"></a>
98
- <a href="https://ultralytics.com/discord"><img alt="Discord" src="https://img.shields.io/discord/1089800235347353640?logo=discord&logoColor=white&label=Discord&color=blue"></a>
96
+ <a href="https://zenodo.org/badge/latestdoi/264818686"><img src="https://zenodo.org/badge/264818686.svg" alt="Ultralytics YOLOv8 Citation"></a>
97
+ <a href="https://hub.docker.com/r/ultralytics/ultralytics"><img src="https://img.shields.io/docker/pulls/ultralytics/ultralytics?logo=docker" alt="Ultralytics Docker Pulls"></a>
98
+ <a href="https://ultralytics.com/discord"><img alt="Ultralytics Discord" src="https://img.shields.io/discord/1089800235347353640?logo=discord&logoColor=white&label=Discord&color=blue"></a>
99
99
  <br>
100
- <a href="https://console.paperspace.com/github/ultralytics/ultralytics"><img src="https://assets.paperspace.io/img/gradient-badge.svg" alt="Run on Gradient"></a>
101
- <a href="https://colab.research.google.com/github/ultralytics/ultralytics/blob/main/examples/tutorial.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"></a>
102
- <a href="https://www.kaggle.com/ultralytics/yolov8"><img src="https://kaggle.com/static/images/open-in-kaggle.svg" alt="Open In Kaggle"></a>
100
+ <a href="https://console.paperspace.com/github/ultralytics/ultralytics"><img src="https://assets.paperspace.io/img/gradient-badge.svg" alt="Run Ultralytics on Gradient"></a>
101
+ <a href="https://colab.research.google.com/github/ultralytics/ultralytics/blob/main/examples/tutorial.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open Ultralytics In Colab"></a>
102
+ <a href="https://www.kaggle.com/ultralytics/yolov8"><img src="https://kaggle.com/static/images/open-in-kaggle.svg" alt="Open Ultralytics In Kaggle"></a>
103
103
  </div>
104
104
  <br>
105
105
 
@@ -9,13 +9,13 @@
9
9
  <div>
10
10
  <a href="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml"><img src="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml/badge.svg" alt="Ultralytics CI"></a>
11
11
  <a href="https://codecov.io/github/ultralytics/ultralytics"><img src="https://codecov.io/github/ultralytics/ultralytics/branch/main/graph/badge.svg?token=HHW7IIVFVY" alt="Ultralytics Code Coverage"></a>
12
- <a href="https://zenodo.org/badge/latestdoi/264818686"><img src="https://zenodo.org/badge/264818686.svg" alt="YOLOv8 Citation"></a>
13
- <a href="https://hub.docker.com/r/ultralytics/ultralytics"><img src="https://img.shields.io/docker/pulls/ultralytics/ultralytics?logo=docker" alt="Docker Pulls"></a>
14
- <a href="https://ultralytics.com/discord"><img alt="Discord" src="https://img.shields.io/discord/1089800235347353640?logo=discord&logoColor=white&label=Discord&color=blue"></a>
12
+ <a href="https://zenodo.org/badge/latestdoi/264818686"><img src="https://zenodo.org/badge/264818686.svg" alt="Ultralytics YOLOv8 Citation"></a>
13
+ <a href="https://hub.docker.com/r/ultralytics/ultralytics"><img src="https://img.shields.io/docker/pulls/ultralytics/ultralytics?logo=docker" alt="Ultralytics Docker Pulls"></a>
14
+ <a href="https://ultralytics.com/discord"><img alt="Ultralytics Discord" src="https://img.shields.io/discord/1089800235347353640?logo=discord&logoColor=white&label=Discord&color=blue"></a>
15
15
  <br>
16
- <a href="https://console.paperspace.com/github/ultralytics/ultralytics"><img src="https://assets.paperspace.io/img/gradient-badge.svg" alt="Run on Gradient"></a>
17
- <a href="https://colab.research.google.com/github/ultralytics/ultralytics/blob/main/examples/tutorial.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"></a>
18
- <a href="https://www.kaggle.com/ultralytics/yolov8"><img src="https://kaggle.com/static/images/open-in-kaggle.svg" alt="Open In Kaggle"></a>
16
+ <a href="https://console.paperspace.com/github/ultralytics/ultralytics"><img src="https://assets.paperspace.io/img/gradient-badge.svg" alt="Run Ultralytics on Gradient"></a>
17
+ <a href="https://colab.research.google.com/github/ultralytics/ultralytics/blob/main/examples/tutorial.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open Ultralytics In Colab"></a>
18
+ <a href="https://www.kaggle.com/ultralytics/yolov8"><img src="https://kaggle.com/static/images/open-in-kaggle.svg" alt="Open Ultralytics In Kaggle"></a>
19
19
  </div>
20
20
  <br>
21
21
 
@@ -149,7 +149,6 @@ markers = [
149
149
  ]
150
150
  norecursedirs = [".git", "dist", "build"]
151
151
 
152
-
153
152
  [tool.coverage.run]
154
153
  source = ["ultralytics/"]
155
154
  data_file = "tests/.coverage"
@@ -1,6 +1,6 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
2
 
3
- __version__ = "8.2.35"
3
+ __version__ = "8.2.36"
4
4
 
5
5
  import os
6
6
 
@@ -1,11 +1,11 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
- # YOLOv9c-seg
2
+ # YOLOv9c-seg instance segmentation model. For Usage examples see https://docs.ultralytics.com/models/yolov9
3
3
  # 654 layers, 27897120 parameters, 159.4 GFLOPs
4
4
 
5
- # parameters
5
+ # Parameters
6
6
  nc: 80 # number of classes
7
7
 
8
- # gelan backbone
8
+ # GELAN backbone
9
9
  backbone:
10
10
  - [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
11
11
  - [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
@@ -1,11 +1,11 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
- # YOLOv9c
2
+ # YOLOv9c object detection model. For Usage examples see https://docs.ultralytics.com/models/yolov9
3
3
  # 618 layers, 25590912 parameters, 104.0 GFLOPs
4
4
 
5
- # parameters
5
+ # Parameters
6
6
  nc: 80 # number of classes
7
7
 
8
- # gelan backbone
8
+ # GELAN backbone
9
9
  backbone:
10
10
  - [-1, 1, Conv, [64, 3, 2]] # 0-P1/2
11
11
  - [-1, 1, Conv, [128, 3, 2]] # 1-P2/4
@@ -1,11 +1,11 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
- # YOLOv9c-seg
2
+ # YOLOv9e-seg instance segmentation model. For Usage examples see https://docs.ultralytics.com/models/yolov9
3
3
  # 1261 layers, 60512800 parameters, 248.4 GFLOPs
4
4
 
5
- # parameters
5
+ # Parameters
6
6
  nc: 80 # number of classes
7
7
 
8
- # gelan backbone
8
+ # GELAN backbone
9
9
  backbone:
10
10
  - [-1, 1, nn.Identity, []]
11
11
  - [-1, 1, Conv, [64, 3, 2]] # 1-P1/2
@@ -40,7 +40,7 @@ backbone:
40
40
  - [-1, 1, RepNCSPELAN4, [1024, 512, 256, 2]] # 28
41
41
  - [-1, 1, SPPELAN, [512, 256]] # 29
42
42
 
43
- # gelan head
43
+ # GELAN head
44
44
  head:
45
45
  - [-1, 1, nn.Upsample, [None, 2, "nearest"]]
46
46
  - [[-1, 25], 1, Concat, [1]] # cat backbone P4
@@ -1,11 +1,11 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
- # YOLOv9e
2
+ # YOLOv9e object detection model. For Usage examples see https://docs.ultralytics.com/models/yolov9
3
3
  # 1225 layers, 58206592 parameters, 193.0 GFLOPs
4
4
 
5
- # parameters
5
+ # Parameters
6
6
  nc: 80 # number of classes
7
7
 
8
- # gelan backbone
8
+ # GELAN backbone
9
9
  backbone:
10
10
  - [-1, 1, nn.Identity, []]
11
11
  - [-1, 1, Conv, [64, 3, 2]] # 1-P1/2
@@ -40,7 +40,7 @@ backbone:
40
40
  - [-1, 1, RepNCSPELAN4, [1024, 512, 256, 2]] # 28
41
41
  - [-1, 1, SPPELAN, [512, 256]] # 29
42
42
 
43
- # gelan head
43
+ # GELAN head
44
44
  head:
45
45
  - [-1, 1, nn.Upsample, [None, 2, "nearest"]]
46
46
  - [[-1, 25], 1, Concat, [1]] # cat backbone P4
@@ -1,11 +1,11 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
- # YOLOv9t
2
+ # YOLOv9m object detection model. For Usage examples see https://docs.ultralytics.com/models/yolov9
3
3
  # 603 layers, 20216160 parameters, 77.9 GFLOPs
4
4
 
5
- # parameters
5
+ # Parameters
6
6
  nc: 80 # number of classes
7
7
 
8
- # gelan backbone
8
+ # GELAN backbone
9
9
  backbone:
10
10
  - [-1, 1, Conv, [32, 3, 2]] # 0-P1/2
11
11
  - [-1, 1, Conv, [64, 3, 2]] # 1-P2/4
@@ -1,11 +1,11 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
- # YOLOv9s
2
+ # YOLOv9s object detection model. For Usage examples see https://docs.ultralytics.com/models/yolov9
3
3
  # 917 layers, 7318368 parameters, 27.6 GFLOPs
4
4
 
5
- # parameters
5
+ # Parameters
6
6
  nc: 80 # number of classes
7
7
 
8
- # gelan backbone
8
+ # GELAN backbone
9
9
  backbone:
10
10
  - [-1, 1, Conv, [32, 3, 2]] # 0-P1/2
11
11
  - [-1, 1, Conv, [64, 3, 2]] # 1-P2/4
@@ -1,11 +1,11 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
- # YOLOv9t
2
+ # YOLOv9t object detection model. For Usage examples see https://docs.ultralytics.com/models/yolov9
3
3
  # 917 layers, 2128720 parameters, 8.5 GFLOPs
4
4
 
5
- # parameters
5
+ # Parameters
6
6
  nc: 80 # number of classes
7
7
 
8
- # gelan backbone
8
+ # GELAN backbone
9
9
  backbone:
10
10
  - [-1, 1, Conv, [16, 3, 2]] # 0-P1/2
11
11
  - [-1, 1, Conv, [32, 3, 2]] # 1-P2/4
@@ -279,6 +279,12 @@ class DetectionModel(BaseModel):
279
279
  """Initialize the YOLOv8 detection model with the given config and parameters."""
280
280
  super().__init__()
281
281
  self.yaml = cfg if isinstance(cfg, dict) else yaml_model_load(cfg) # cfg dict
282
+ if self.yaml["backbone"][0][2] == "Silence":
283
+ LOGGER.warning(
284
+ "WARNING ⚠️ YOLOv9 `Silence` module is deprecated in favor of nn.Identity. "
285
+ "Please delete local *.pt file and re-download the latest model checkpoint."
286
+ )
287
+ self.yaml["backbone"][0][2] = "nn.Identity"
282
288
 
283
289
  # Define model
284
290
  ch = self.yaml["ch"] = self.yaml.get("ch", ch) # input channels
@@ -38,10 +38,12 @@ try:
38
38
  except (ImportError, AssertionError):
39
39
  mlflow = None
40
40
 
41
+
41
42
  def sanitize_dict(x):
42
43
  """Sanitize dictionary keys by removing parentheses and converting values to floats."""
43
44
  return {k.replace("(", "").replace(")", ""): float(v) for k, v in x.items()}
44
45
 
46
+
45
47
  def on_pretrain_routine_end(trainer):
46
48
  """
47
49
  Log training parameters to MLflow at the end of the pretraining routine.
@@ -33,26 +33,26 @@ class Colors:
33
33
  def __init__(self):
34
34
  """Initialize colors as hex = matplotlib.colors.TABLEAU_COLORS.values()."""
35
35
  hexs = (
36
- "FF3838",
37
- "FF9D97",
38
- "FF701F",
39
- "FFB21D",
40
- "CFD231",
41
- "48F90A",
42
- "92CC17",
43
- "3DDB86",
44
- "1A9334",
45
- "00D4BB",
46
- "2C99A8",
47
- "00C2FF",
48
- "344593",
49
- "6473FF",
50
- "0018EC",
51
- "8438FF",
52
- "520085",
53
- "CB38FF",
54
- "FF95C8",
55
- "FF37C7",
36
+ "042AFF",
37
+ "0BDBEB",
38
+ "F3F3F3",
39
+ "00DFB7",
40
+ "111F68",
41
+ "FF6FDD",
42
+ "FF444F",
43
+ "CCED00",
44
+ "00F344",
45
+ "BD00FF",
46
+ "00B4FF",
47
+ "DD00BA",
48
+ "00FFFF",
49
+ "26C000",
50
+ "01FFB3",
51
+ "7D24FF",
52
+ "7B0068",
53
+ "FF1B6C",
54
+ "FC6D2F",
55
+ "A2FF0B",
56
56
  )
57
57
  self.palette = [self.hex2rgb(f"#{c}") for c in hexs]
58
58
  self.n = len(self.palette)
@@ -158,9 +158,36 @@ class Annotator:
158
158
 
159
159
  self.limb_color = colors.pose_palette[[9, 9, 9, 9, 7, 7, 7, 0, 0, 0, 0, 0, 16, 16, 16, 16, 16, 16, 16]]
160
160
  self.kpt_color = colors.pose_palette[[16, 16, 16, 16, 16, 0, 0, 0, 0, 0, 0, 9, 9, 9, 9, 9, 9]]
161
+ self.dark_colors = {
162
+ (235, 219, 11),
163
+ (243, 243, 243),
164
+ (183, 223, 0),
165
+ (221, 111, 255),
166
+ (0, 237, 204),
167
+ (68, 243, 0),
168
+ (255, 255, 0),
169
+ (179, 255, 1),
170
+ (11, 255, 162),
171
+ }
172
+ self.light_colors = {
173
+ (255, 42, 4),
174
+ (79, 68, 255),
175
+ (255, 0, 189),
176
+ (255, 180, 0),
177
+ (186, 0, 221),
178
+ (0, 192, 38),
179
+ (255, 36, 125),
180
+ (104, 0, 123),
181
+ (108, 27, 255),
182
+ (47, 109, 252),
183
+ (104, 31, 17),
184
+ }
161
185
 
162
186
  def box_label(self, box, label="", color=(128, 128, 128), txt_color=(255, 255, 255), rotated=False):
163
187
  """Add one xyxy box to image with label."""
188
+ txt_color = (
189
+ (104, 31, 17) if color in self.dark_colors else (255, 255, 255) if color in self.light_colors else txt_color
190
+ )
164
191
  if isinstance(box, torch.Tensor):
165
192
  box = box.tolist()
166
193
  if self.pil or not is_ascii(label):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ultralytics
3
- Version: 8.2.35
3
+ Version: 8.2.36
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
@@ -93,13 +93,13 @@ Requires-Dist: pycocotools>=2.0.7; extra == "extra"
93
93
  <div>
94
94
  <a href="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml"><img src="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml/badge.svg" alt="Ultralytics CI"></a>
95
95
  <a href="https://codecov.io/github/ultralytics/ultralytics"><img src="https://codecov.io/github/ultralytics/ultralytics/branch/main/graph/badge.svg?token=HHW7IIVFVY" alt="Ultralytics Code Coverage"></a>
96
- <a href="https://zenodo.org/badge/latestdoi/264818686"><img src="https://zenodo.org/badge/264818686.svg" alt="YOLOv8 Citation"></a>
97
- <a href="https://hub.docker.com/r/ultralytics/ultralytics"><img src="https://img.shields.io/docker/pulls/ultralytics/ultralytics?logo=docker" alt="Docker Pulls"></a>
98
- <a href="https://ultralytics.com/discord"><img alt="Discord" src="https://img.shields.io/discord/1089800235347353640?logo=discord&logoColor=white&label=Discord&color=blue"></a>
96
+ <a href="https://zenodo.org/badge/latestdoi/264818686"><img src="https://zenodo.org/badge/264818686.svg" alt="Ultralytics YOLOv8 Citation"></a>
97
+ <a href="https://hub.docker.com/r/ultralytics/ultralytics"><img src="https://img.shields.io/docker/pulls/ultralytics/ultralytics?logo=docker" alt="Ultralytics Docker Pulls"></a>
98
+ <a href="https://ultralytics.com/discord"><img alt="Ultralytics Discord" src="https://img.shields.io/discord/1089800235347353640?logo=discord&logoColor=white&label=Discord&color=blue"></a>
99
99
  <br>
100
- <a href="https://console.paperspace.com/github/ultralytics/ultralytics"><img src="https://assets.paperspace.io/img/gradient-badge.svg" alt="Run on Gradient"></a>
101
- <a href="https://colab.research.google.com/github/ultralytics/ultralytics/blob/main/examples/tutorial.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"></a>
102
- <a href="https://www.kaggle.com/ultralytics/yolov8"><img src="https://kaggle.com/static/images/open-in-kaggle.svg" alt="Open In Kaggle"></a>
100
+ <a href="https://console.paperspace.com/github/ultralytics/ultralytics"><img src="https://assets.paperspace.io/img/gradient-badge.svg" alt="Run Ultralytics on Gradient"></a>
101
+ <a href="https://colab.research.google.com/github/ultralytics/ultralytics/blob/main/examples/tutorial.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open Ultralytics In Colab"></a>
102
+ <a href="https://www.kaggle.com/ultralytics/yolov8"><img src="https://kaggle.com/static/images/open-in-kaggle.svg" alt="Open Ultralytics In Kaggle"></a>
103
103
  </div>
104
104
  <br>
105
105
 
File without changes
File without changes