ultralytics 8.3.55__tar.gz → 8.3.56__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.
Files changed (245) hide show
  1. {ultralytics-8.3.55/ultralytics.egg-info → ultralytics-8.3.56}/PKG-INFO +1 -2
  2. {ultralytics-8.3.55 → ultralytics-8.3.56}/pyproject.toml +0 -1
  3. {ultralytics-8.3.55 → ultralytics-8.3.56}/tests/test_solutions.py +14 -7
  4. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/__init__.py +1 -1
  5. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/__init__.py +1 -1
  6. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/data/converter.py +1 -1
  7. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/data/dataset.py +2 -1
  8. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/engine/exporter.py +4 -3
  9. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/sam/predict.py +7 -7
  10. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/nn/autobackend.py +1 -1
  11. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/plotting.py +1 -1
  12. {ultralytics-8.3.55 → ultralytics-8.3.56/ultralytics.egg-info}/PKG-INFO +1 -2
  13. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics.egg-info/requires.txt +0 -1
  14. {ultralytics-8.3.55 → ultralytics-8.3.56}/LICENSE +0 -0
  15. {ultralytics-8.3.55 → ultralytics-8.3.56}/README.md +0 -0
  16. {ultralytics-8.3.55 → ultralytics-8.3.56}/setup.cfg +0 -0
  17. {ultralytics-8.3.55 → ultralytics-8.3.56}/tests/__init__.py +0 -0
  18. {ultralytics-8.3.55 → ultralytics-8.3.56}/tests/conftest.py +0 -0
  19. {ultralytics-8.3.55 → ultralytics-8.3.56}/tests/test_cli.py +0 -0
  20. {ultralytics-8.3.55 → ultralytics-8.3.56}/tests/test_cuda.py +0 -0
  21. {ultralytics-8.3.55 → ultralytics-8.3.56}/tests/test_engine.py +0 -0
  22. {ultralytics-8.3.55 → ultralytics-8.3.56}/tests/test_exports.py +0 -0
  23. {ultralytics-8.3.55 → ultralytics-8.3.56}/tests/test_integrations.py +0 -0
  24. {ultralytics-8.3.55 → ultralytics-8.3.56}/tests/test_python.py +0 -0
  25. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/assets/bus.jpg +0 -0
  26. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/assets/zidane.jpg +0 -0
  27. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
  28. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
  29. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
  30. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
  31. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
  32. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
  33. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
  34. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/VOC.yaml +0 -0
  35. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
  36. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/african-wildlife.yaml +0 -0
  37. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/brain-tumor.yaml +0 -0
  38. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
  39. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
  40. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/coco.yaml +0 -0
  41. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
  42. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/coco128.yaml +0 -0
  43. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
  44. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
  45. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/coco8.yaml +0 -0
  46. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
  47. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/dog-pose.yaml +0 -0
  48. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/dota8.yaml +0 -0
  49. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/hand-keypoints.yaml +0 -0
  50. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/lvis.yaml +0 -0
  51. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/medical-pills.yaml +0 -0
  52. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
  53. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
  54. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/signature.yaml +0 -0
  55. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
  56. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/datasets/xView.yaml +0 -0
  57. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/default.yaml +0 -0
  58. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/11/yolo11-cls.yaml +0 -0
  59. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/11/yolo11-obb.yaml +0 -0
  60. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/11/yolo11-pose.yaml +0 -0
  61. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/11/yolo11-seg.yaml +0 -0
  62. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/11/yolo11.yaml +0 -0
  63. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
  64. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
  65. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
  66. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
  67. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v10/yolov10b.yaml +0 -0
  68. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v10/yolov10l.yaml +0 -0
  69. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v10/yolov10m.yaml +0 -0
  70. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v10/yolov10n.yaml +0 -0
  71. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v10/yolov10s.yaml +0 -0
  72. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v10/yolov10x.yaml +0 -0
  73. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
  74. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
  75. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
  76. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
  77. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
  78. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
  79. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +0 -0
  80. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +0 -0
  81. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
  82. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
  83. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
  84. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
  85. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
  86. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
  87. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
  88. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
  89. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
  90. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
  91. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
  92. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
  93. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-world.yaml +0 -0
  94. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +0 -0
  95. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
  96. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v9/yolov9c-seg.yaml +0 -0
  97. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v9/yolov9c.yaml +0 -0
  98. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v9/yolov9e-seg.yaml +0 -0
  99. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v9/yolov9e.yaml +0 -0
  100. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v9/yolov9m.yaml +0 -0
  101. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v9/yolov9s.yaml +0 -0
  102. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/models/v9/yolov9t.yaml +0 -0
  103. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/solutions/default.yaml +0 -0
  104. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/trackers/botsort.yaml +0 -0
  105. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
  106. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/data/__init__.py +0 -0
  107. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/data/annotator.py +0 -0
  108. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/data/augment.py +0 -0
  109. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/data/base.py +0 -0
  110. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/data/build.py +0 -0
  111. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/data/loaders.py +0 -0
  112. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/data/split_dota.py +0 -0
  113. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/data/utils.py +0 -0
  114. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/engine/__init__.py +0 -0
  115. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/engine/model.py +0 -0
  116. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/engine/predictor.py +0 -0
  117. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/engine/results.py +0 -0
  118. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/engine/trainer.py +0 -0
  119. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/engine/tuner.py +0 -0
  120. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/engine/validator.py +0 -0
  121. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/hub/__init__.py +0 -0
  122. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/hub/auth.py +0 -0
  123. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/hub/google/__init__.py +0 -0
  124. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/hub/session.py +0 -0
  125. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/hub/utils.py +0 -0
  126. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/__init__.py +0 -0
  127. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/fastsam/__init__.py +0 -0
  128. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/fastsam/model.py +0 -0
  129. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/fastsam/predict.py +0 -0
  130. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/fastsam/utils.py +0 -0
  131. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/fastsam/val.py +0 -0
  132. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/nas/__init__.py +0 -0
  133. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/nas/model.py +0 -0
  134. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/nas/predict.py +0 -0
  135. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/nas/val.py +0 -0
  136. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/rtdetr/__init__.py +0 -0
  137. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/rtdetr/model.py +0 -0
  138. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/rtdetr/predict.py +0 -0
  139. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/rtdetr/train.py +0 -0
  140. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/rtdetr/val.py +0 -0
  141. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/sam/__init__.py +0 -0
  142. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/sam/amg.py +0 -0
  143. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/sam/build.py +0 -0
  144. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/sam/model.py +0 -0
  145. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/sam/modules/__init__.py +0 -0
  146. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/sam/modules/blocks.py +0 -0
  147. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/sam/modules/decoders.py +0 -0
  148. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/sam/modules/encoders.py +0 -0
  149. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/sam/modules/memory_attention.py +0 -0
  150. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/sam/modules/sam.py +0 -0
  151. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
  152. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/sam/modules/transformer.py +0 -0
  153. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/sam/modules/utils.py +0 -0
  154. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/utils/__init__.py +0 -0
  155. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/utils/loss.py +0 -0
  156. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/utils/ops.py +0 -0
  157. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/__init__.py +0 -0
  158. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/classify/__init__.py +0 -0
  159. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/classify/predict.py +0 -0
  160. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/classify/train.py +0 -0
  161. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/classify/val.py +0 -0
  162. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/detect/__init__.py +0 -0
  163. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/detect/predict.py +0 -0
  164. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/detect/train.py +0 -0
  165. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/detect/val.py +0 -0
  166. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/model.py +0 -0
  167. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/obb/__init__.py +0 -0
  168. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/obb/predict.py +0 -0
  169. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/obb/train.py +0 -0
  170. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/obb/val.py +0 -0
  171. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/pose/__init__.py +0 -0
  172. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/pose/predict.py +0 -0
  173. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/pose/train.py +0 -0
  174. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/pose/val.py +0 -0
  175. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/segment/__init__.py +0 -0
  176. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/segment/predict.py +0 -0
  177. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/segment/train.py +0 -0
  178. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/segment/val.py +0 -0
  179. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/world/__init__.py +0 -0
  180. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/world/train.py +0 -0
  181. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/models/yolo/world/train_world.py +0 -0
  182. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/nn/__init__.py +0 -0
  183. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/nn/modules/__init__.py +0 -0
  184. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/nn/modules/activation.py +0 -0
  185. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/nn/modules/block.py +0 -0
  186. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/nn/modules/conv.py +0 -0
  187. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/nn/modules/head.py +0 -0
  188. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/nn/modules/transformer.py +0 -0
  189. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/nn/modules/utils.py +0 -0
  190. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/nn/tasks.py +0 -0
  191. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/solutions/__init__.py +0 -0
  192. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/solutions/ai_gym.py +0 -0
  193. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/solutions/analytics.py +0 -0
  194. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/solutions/distance_calculation.py +0 -0
  195. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/solutions/heatmap.py +0 -0
  196. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/solutions/object_counter.py +0 -0
  197. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/solutions/parking_management.py +0 -0
  198. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/solutions/queue_management.py +0 -0
  199. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/solutions/region_counter.py +0 -0
  200. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/solutions/security_alarm.py +0 -0
  201. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/solutions/solutions.py +0 -0
  202. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/solutions/speed_estimation.py +0 -0
  203. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/solutions/streamlit_inference.py +0 -0
  204. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/solutions/trackzone.py +0 -0
  205. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/trackers/__init__.py +0 -0
  206. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/trackers/basetrack.py +0 -0
  207. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/trackers/bot_sort.py +0 -0
  208. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/trackers/byte_tracker.py +0 -0
  209. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/trackers/track.py +0 -0
  210. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/trackers/utils/__init__.py +0 -0
  211. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/trackers/utils/gmc.py +0 -0
  212. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/trackers/utils/kalman_filter.py +0 -0
  213. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/trackers/utils/matching.py +0 -0
  214. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/__init__.py +0 -0
  215. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/autobatch.py +0 -0
  216. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/benchmarks.py +0 -0
  217. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/callbacks/__init__.py +0 -0
  218. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/callbacks/base.py +0 -0
  219. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/callbacks/clearml.py +0 -0
  220. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/callbacks/comet.py +0 -0
  221. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/callbacks/dvc.py +0 -0
  222. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/callbacks/hub.py +0 -0
  223. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/callbacks/mlflow.py +0 -0
  224. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/callbacks/neptune.py +0 -0
  225. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/callbacks/raytune.py +0 -0
  226. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/callbacks/tensorboard.py +0 -0
  227. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/callbacks/wb.py +0 -0
  228. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/checks.py +0 -0
  229. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/dist.py +0 -0
  230. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/downloads.py +0 -0
  231. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/errors.py +0 -0
  232. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/files.py +0 -0
  233. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/instance.py +0 -0
  234. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/loss.py +0 -0
  235. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/metrics.py +0 -0
  236. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/ops.py +0 -0
  237. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/patches.py +0 -0
  238. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/tal.py +0 -0
  239. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/torch_utils.py +0 -0
  240. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/triton.py +0 -0
  241. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics/utils/tuner.py +0 -0
  242. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics.egg-info/SOURCES.txt +0 -0
  243. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics.egg-info/dependency_links.txt +0 -0
  244. {ultralytics-8.3.55 → ultralytics-8.3.56}/ultralytics.egg-info/entry_points.txt +0 -0
  245. {ultralytics-8.3.55 → ultralytics-8.3.56}/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.3.55
3
+ Version: 8.3.56
4
4
  Summary: Ultralytics YOLO 🚀 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
5
5
  Author-email: Glenn Jocher <glenn.jocher@ultralytics.com>, Jing Qiu <jing.qiu@ultralytics.com>
6
6
  Maintainer-email: Ultralytics <hello@ultralytics.com>
@@ -57,7 +57,6 @@ Requires-Dist: coverage[toml]; extra == "dev"
57
57
  Requires-Dist: mkdocs>=1.6.0; extra == "dev"
58
58
  Requires-Dist: mkdocs-material>=9.5.9; extra == "dev"
59
59
  Requires-Dist: mkdocstrings[python]; extra == "dev"
60
- Requires-Dist: mkdocs-jupyter; extra == "dev"
61
60
  Requires-Dist: mkdocs-redirects; extra == "dev"
62
61
  Requires-Dist: mkdocs-ultralytics-plugin>=0.1.8; extra == "dev"
63
62
  Requires-Dist: mkdocs-macros-plugin>=1.0.5; extra == "dev"
@@ -90,7 +90,6 @@ dev = [
90
90
  "mkdocs>=1.6.0",
91
91
  "mkdocs-material>=9.5.9",
92
92
  "mkdocstrings[python]",
93
- "mkdocs-jupyter", # notebooks
94
93
  "mkdocs-redirects", # 301 redirects
95
94
  "mkdocs-ultralytics-plugin>=0.1.8", # for meta descriptions and images, dates and authors
96
95
  "mkdocs-macros-plugin>=1.0.5" # duplicating content (i.e. export tables) in multiple places
@@ -14,46 +14,53 @@ POSE_VIDEO = "solution_ci_pose_demo.mp4"
14
14
 
15
15
  @pytest.mark.slow
16
16
  def test_major_solutions():
17
- """Test the object counting, heatmap, speed estimation and queue management solution."""
17
+ """Test the object counting, heatmap, speed estimation, trackzone and queue management solution."""
18
18
  safe_download(url=f"{ASSETS_URL}/{DEMO_VIDEO}", dir=TMP)
19
19
  cap = cv2.VideoCapture(str(TMP / DEMO_VIDEO))
20
20
  assert cap.isOpened(), "Error reading video file"
21
21
  region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]
22
22
  counter = solutions.ObjectCounter(region=region_points, model="yolo11n.pt", show=False) # Test object counter
23
23
  heatmap = solutions.Heatmap(colormap=cv2.COLORMAP_PARULA, model="yolo11n.pt", show=False) # Test heatmaps
24
+ heatmap_count = solutions.Heatmap(
25
+ colormap=cv2.COLORMAP_PARULA, model="yolo11n.pt", show=False, region=region_points
26
+ ) # Test heatmaps with object counting
24
27
  speed = solutions.SpeedEstimator(region=region_points, model="yolo11n.pt", show=False) # Test queue manager
25
28
  queue = solutions.QueueManager(region=region_points, model="yolo11n.pt", show=False) # Test speed estimation
26
29
  line_analytics = solutions.Analytics(analytics_type="line", model="yolo11n.pt", show=False) # line analytics
27
30
  pie_analytics = solutions.Analytics(analytics_type="pie", model="yolo11n.pt", show=False) # line analytics
28
31
  bar_analytics = solutions.Analytics(analytics_type="bar", model="yolo11n.pt", show=False) # line analytics
29
32
  area_analytics = solutions.Analytics(analytics_type="area", model="yolo11n.pt", show=False) # line analytics
33
+ trackzone = solutions.TrackZone(region=region_points, model="yolo11n.pt", show=False) # Test trackzone
30
34
  frame_count = 0 # Required for analytics
31
35
  while cap.isOpened():
32
36
  success, im0 = cap.read()
33
37
  if not success:
34
38
  break
39
+ frame_count += 1
35
40
  original_im0 = im0.copy()
36
41
  _ = counter.count(original_im0.copy())
37
42
  _ = heatmap.generate_heatmap(original_im0.copy())
43
+ _ = heatmap_count.generate_heatmap(original_im0.copy())
38
44
  _ = speed.estimate_speed(original_im0.copy())
39
45
  _ = queue.process_queue(original_im0.copy())
40
46
  _ = line_analytics.process_data(original_im0.copy(), frame_count)
41
47
  _ = pie_analytics.process_data(original_im0.copy(), frame_count)
42
48
  _ = bar_analytics.process_data(original_im0.copy(), frame_count)
43
49
  _ = area_analytics.process_data(original_im0.copy(), frame_count)
50
+ _ = trackzone.trackzone(original_im0.copy())
44
51
  cap.release()
45
52
 
46
53
  # Test workouts monitoring
47
54
  safe_download(url=f"{ASSETS_URL}/{POSE_VIDEO}", dir=TMP)
48
- cap1 = cv2.VideoCapture(str(TMP / POSE_VIDEO))
49
- assert cap1.isOpened(), "Error reading video file"
50
- gym = solutions.AIGym(line_width=2, kpts=[5, 11, 13], show=False)
51
- while cap1.isOpened():
52
- success, im0 = cap1.read()
55
+ cap = cv2.VideoCapture(str(TMP / POSE_VIDEO))
56
+ assert cap.isOpened(), "Error reading video file"
57
+ gym = solutions.AIGym(kpts=[5, 11, 13], show=False)
58
+ while cap.isOpened():
59
+ success, im0 = cap.read()
53
60
  if not success:
54
61
  break
55
62
  _ = gym.monitor(im0)
56
- cap1.release()
63
+ cap.release()
57
64
 
58
65
 
59
66
  @pytest.mark.slow
@@ -1,6 +1,6 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
2
 
3
- __version__ = "8.3.55"
3
+ __version__ = "8.3.56"
4
4
 
5
5
  import os
6
6
 
@@ -303,7 +303,7 @@ def get_cfg(cfg: Union[str, Path, Dict, SimpleNamespace] = DEFAULT_CFG_DICT, ove
303
303
  if k in cfg and isinstance(cfg[k], (int, float)):
304
304
  cfg[k] = str(cfg[k])
305
305
  if cfg.get("name") == "model": # assign model to 'name' arg
306
- cfg["name"] = cfg.get("model", "").split(".")[0]
306
+ cfg["name"] = str(cfg.get("model", "")).split(".")[0]
307
307
  LOGGER.warning(f"WARNING ⚠️ 'name=model' automatically updated to 'name={cfg['name']}'.")
308
308
 
309
309
  # Type and Value checks
@@ -266,7 +266,7 @@ def convert_coco(
266
266
  # since LVIS val set contains images from COCO 2017 train in addition to the COCO 2017 val split.
267
267
  (fn / "train2017").mkdir(parents=True, exist_ok=True)
268
268
  (fn / "val2017").mkdir(parents=True, exist_ok=True)
269
- with open(json_file) as f:
269
+ with open(json_file, encoding="utf-8") as f:
270
270
  data = json.load(f)
271
271
 
272
272
  # Create image dict
@@ -323,7 +323,8 @@ class GroundingDataset(YOLODataset):
323
323
  if box[2] <= 0 or box[3] <= 0:
324
324
  continue
325
325
 
326
- cat_name = " ".join([img["caption"][t[0] : t[1]] for t in ann["tokens_positive"]])
326
+ caption = img["caption"]
327
+ cat_name = " ".join([caption[t[0] : t[1]] for t in ann["tokens_positive"]])
327
328
  if cat_name not in cat2id:
328
329
  cat2id[cat_name] = len(cat2id)
329
330
  texts.append([cat_name])
@@ -285,6 +285,7 @@ class Exporter:
285
285
  "(torchscript, onnx, openvino, engine, coreml) formats. "
286
286
  "See https://docs.ultralytics.com/models/yolo-world for details."
287
287
  )
288
+ model.clip_model = None # openvino int8 export error: https://github.com/ultralytics/ultralytics/pull/18445
288
289
  if self.args.int8 and not self.args.data:
289
290
  self.args.data = DEFAULT_CFG.data or TASK2DATA[getattr(model, "task", "detect")] # assign default data
290
291
  LOGGER.warning(
@@ -602,7 +603,7 @@ class Exporter:
602
603
  @try_export
603
604
  def export_paddle(self, prefix=colorstr("PaddlePaddle:")):
604
605
  """YOLO Paddle export."""
605
- check_requirements(("paddlepaddle", "x2paddle"))
606
+ check_requirements(("paddlepaddle-gpu" if torch.cuda.is_available() else "paddlepaddle", "x2paddle"))
606
607
  import x2paddle # noqa
607
608
  from x2paddle.convert import pytorch2paddle # noqa
608
609
 
@@ -949,7 +950,7 @@ class Exporter:
949
950
  "sng4onnx>=1.0.1", # required by 'onnx2tf' package
950
951
  "onnx_graphsurgeon>=0.3.26", # required by 'onnx2tf' package
951
952
  "onnx>=1.12.0",
952
- "onnx2tf>1.17.5,<=1.22.3",
953
+ "onnx2tf>1.17.5,<=1.26.3",
953
954
  "onnxslim>=0.1.31",
954
955
  "tflite_support<=0.4.3" if IS_JETSON else "tflite_support", # fix ImportError 'GLIBCXX_3.4.29'
955
956
  "flatbuffers>=23.5.26,<100", # update old 'flatbuffers' included inside tensorflow package
@@ -1136,7 +1137,7 @@ class Exporter:
1136
1137
  if getattr(self.model, "end2end", False):
1137
1138
  raise ValueError("IMX export is not supported for end2end models.")
1138
1139
  if "C2f" not in self.model.__str__():
1139
- raise ValueError("IMX export is only supported for YOLOv8 detection models")
1140
+ raise ValueError("IMX export is only supported for YOLOv8n detection models")
1140
1141
  check_requirements(("model-compression-toolkit==2.1.1", "sony-custom-layers==0.2.0", "tensorflow==2.12.0"))
1141
1142
  check_requirements("imx500-converter[pt]==3.14.3") # Separate requirements for imx500-converter
1142
1143
 
@@ -91,9 +91,9 @@ class Predictor(BasePredictor):
91
91
  _callbacks (Dict | None): Dictionary of callback functions to customize behavior.
92
92
 
93
93
  Examples:
94
- >>> predictor = Predictor(cfg=DEFAULT_CFG)
95
- >>> predictor = Predictor(overrides={"imgsz": 640})
96
- >>> predictor = Predictor(_callbacks={"on_predict_start": custom_callback})
94
+ >>> predictor_example = Predictor(cfg=DEFAULT_CFG)
95
+ >>> predictor_example_with_imgsz = Predictor(overrides={"imgsz": 640})
96
+ >>> predictor_example_with_callback = Predictor(_callbacks={"on_predict_start": custom_callback})
97
97
  """
98
98
  if overrides is None:
99
99
  overrides = {}
@@ -215,7 +215,7 @@ class Predictor(BasePredictor):
215
215
  im (torch.Tensor): Preprocessed input image tensor with shape (N, C, H, W).
216
216
  bboxes (np.ndarray | List | None): Bounding boxes in XYXY format with shape (N, 4).
217
217
  points (np.ndarray | List | None): Points indicating object locations with shape (N, 2) or (N, num_points, 2), in pixels.
218
- labels (np.ndarray | List | None): Point prompt labels with shape (N,) or (N, num_points). 1 for foreground, 0 for background.
218
+ labels (np.ndarray | List | None): Point prompt labels with shape (N) or (N, num_points). 1 for foreground, 0 for background.
219
219
  masks (np.ndarray | None): Low-res masks from previous predictions with shape (N, H, W). For SAM, H=W=256.
220
220
  multimask_output (bool): Flag to return multiple masks for ambiguous prompts.
221
221
 
@@ -260,7 +260,7 @@ class Predictor(BasePredictor):
260
260
  dst_shape (tuple): The target shape (height, width) for the prompts.
261
261
  bboxes (np.ndarray | List | None): Bounding boxes in XYXY format with shape (N, 4).
262
262
  points (np.ndarray | List | None): Points indicating object locations with shape (N, 2) or (N, num_points, 2), in pixels.
263
- labels (np.ndarray | List | None): Point prompt labels with shape (N,) or (N, num_points). 1 for foreground, 0 for background.
263
+ labels (np.ndarray | List | None): Point prompt labels with shape (N) or (N, num_points). 1 for foreground, 0 for background.
264
264
  masks (List | np.ndarray, Optional): Masks for the objects, where each mask is a 2D array.
265
265
 
266
266
  Raises:
@@ -853,8 +853,8 @@ class SAM2VideoPredictor(SAM2Predictor):
853
853
 
854
854
  Examples:
855
855
  >>> predictor = SAM2VideoPredictor(cfg=DEFAULT_CFG)
856
- >>> predictor = SAM2VideoPredictor(overrides={"imgsz": 640})
857
- >>> predictor = SAM2VideoPredictor(_callbacks={"on_predict_start": custom_callback})
856
+ >>> predictor_example_with_imgsz = SAM2VideoPredictor(overrides={"imgsz": 640})
857
+ >>> predictor_example_with_callback = SAM2VideoPredictor(_callbacks={"on_predict_start": custom_callback})
858
858
  """
859
859
  super().__init__(cfg, overrides, _callbacks)
860
860
  self.inference_state = {}
@@ -133,7 +133,7 @@ class AutoBackend(nn.Module):
133
133
 
134
134
  # Set device
135
135
  cuda = torch.cuda.is_available() and device.type != "cpu" # use CUDA
136
- if cuda and not any([nn_module, pt, jit, engine, onnx]): # GPU dataloader formats
136
+ if cuda and not any([nn_module, pt, jit, engine, onnx, paddle]): # GPU dataloader formats
137
137
  device = torch.device("cpu")
138
138
  cuda = False
139
139
 
@@ -1269,7 +1269,7 @@ def plt_color_scatter(v, f, bins=20, cmap="viridis", alpha=0.8, edgecolors="none
1269
1269
 
1270
1270
  def plot_tune_results(csv_file="tune_results.csv"):
1271
1271
  """
1272
- Plot the evolution results stored in an 'tune_results.csv' file. The function generates a scatter plot for each key
1272
+ Plot the evolution results stored in a 'tune_results.csv' file. The function generates a scatter plot for each key
1273
1273
  in the CSV, color-coded based on fitness scores. The best-performing configurations are highlighted on the plots.
1274
1274
 
1275
1275
  Args:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ultralytics
3
- Version: 8.3.55
3
+ Version: 8.3.56
4
4
  Summary: Ultralytics YOLO 🚀 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
5
5
  Author-email: Glenn Jocher <glenn.jocher@ultralytics.com>, Jing Qiu <jing.qiu@ultralytics.com>
6
6
  Maintainer-email: Ultralytics <hello@ultralytics.com>
@@ -57,7 +57,6 @@ Requires-Dist: coverage[toml]; extra == "dev"
57
57
  Requires-Dist: mkdocs>=1.6.0; extra == "dev"
58
58
  Requires-Dist: mkdocs-material>=9.5.9; extra == "dev"
59
59
  Requires-Dist: mkdocstrings[python]; extra == "dev"
60
- Requires-Dist: mkdocs-jupyter; extra == "dev"
61
60
  Requires-Dist: mkdocs-redirects; extra == "dev"
62
61
  Requires-Dist: mkdocs-ultralytics-plugin>=0.1.8; extra == "dev"
63
62
  Requires-Dist: mkdocs-macros-plugin>=1.0.5; extra == "dev"
@@ -28,7 +28,6 @@ coverage[toml]
28
28
  mkdocs>=1.6.0
29
29
  mkdocs-material>=9.5.9
30
30
  mkdocstrings[python]
31
- mkdocs-jupyter
32
31
  mkdocs-redirects
33
32
  mkdocs-ultralytics-plugin>=0.1.8
34
33
  mkdocs-macros-plugin>=1.0.5
File without changes
File without changes
File without changes