ultralytics 8.3.25__tar.gz → 8.3.27__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 (240) hide show
  1. {ultralytics-8.3.25/ultralytics.egg-info → ultralytics-8.3.27}/PKG-INFO +1 -1
  2. {ultralytics-8.3.25 → ultralytics-8.3.27}/tests/test_exports.py +7 -6
  3. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/__init__.py +1 -1
  4. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/data/annotator.py +7 -2
  5. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/engine/exporter.py +3 -0
  6. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/engine/trainer.py +5 -4
  7. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/nn/autobackend.py +3 -0
  8. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/nn/modules/head.py +15 -3
  9. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/checks.py +2 -6
  10. {ultralytics-8.3.25 → ultralytics-8.3.27/ultralytics.egg-info}/PKG-INFO +1 -1
  11. {ultralytics-8.3.25 → ultralytics-8.3.27}/LICENSE +0 -0
  12. {ultralytics-8.3.25 → ultralytics-8.3.27}/README.md +0 -0
  13. {ultralytics-8.3.25 → ultralytics-8.3.27}/pyproject.toml +0 -0
  14. {ultralytics-8.3.25 → ultralytics-8.3.27}/setup.cfg +0 -0
  15. {ultralytics-8.3.25 → ultralytics-8.3.27}/tests/__init__.py +0 -0
  16. {ultralytics-8.3.25 → ultralytics-8.3.27}/tests/conftest.py +0 -0
  17. {ultralytics-8.3.25 → ultralytics-8.3.27}/tests/test_cli.py +0 -0
  18. {ultralytics-8.3.25 → ultralytics-8.3.27}/tests/test_cuda.py +0 -0
  19. {ultralytics-8.3.25 → ultralytics-8.3.27}/tests/test_engine.py +0 -0
  20. {ultralytics-8.3.25 → ultralytics-8.3.27}/tests/test_integrations.py +0 -0
  21. {ultralytics-8.3.25 → ultralytics-8.3.27}/tests/test_python.py +0 -0
  22. {ultralytics-8.3.25 → ultralytics-8.3.27}/tests/test_solutions.py +0 -0
  23. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/assets/bus.jpg +0 -0
  24. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/assets/zidane.jpg +0 -0
  25. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/__init__.py +0 -0
  26. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
  27. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
  28. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
  29. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
  30. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
  31. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
  32. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
  33. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/VOC.yaml +0 -0
  34. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
  35. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/african-wildlife.yaml +0 -0
  36. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/brain-tumor.yaml +0 -0
  37. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
  38. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
  39. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/coco.yaml +0 -0
  40. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
  41. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/coco128.yaml +0 -0
  42. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
  43. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
  44. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/coco8.yaml +0 -0
  45. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
  46. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/dota8.yaml +0 -0
  47. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/hand-keypoints.yaml +0 -0
  48. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/lvis.yaml +0 -0
  49. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
  50. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
  51. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/signature.yaml +0 -0
  52. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
  53. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/datasets/xView.yaml +0 -0
  54. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/default.yaml +0 -0
  55. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/11/yolo11-cls.yaml +0 -0
  56. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/11/yolo11-obb.yaml +0 -0
  57. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/11/yolo11-pose.yaml +0 -0
  58. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/11/yolo11-seg.yaml +0 -0
  59. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/11/yolo11.yaml +0 -0
  60. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
  61. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
  62. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
  63. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
  64. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v10/yolov10b.yaml +0 -0
  65. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v10/yolov10l.yaml +0 -0
  66. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v10/yolov10m.yaml +0 -0
  67. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v10/yolov10n.yaml +0 -0
  68. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v10/yolov10s.yaml +0 -0
  69. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v10/yolov10x.yaml +0 -0
  70. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
  71. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
  72. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
  73. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
  74. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
  75. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
  76. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +0 -0
  77. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +0 -0
  78. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
  79. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
  80. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
  81. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
  82. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
  83. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
  84. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
  85. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
  86. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
  87. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
  88. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
  89. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
  90. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-world.yaml +0 -0
  91. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +0 -0
  92. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
  93. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v9/yolov9c-seg.yaml +0 -0
  94. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v9/yolov9c.yaml +0 -0
  95. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v9/yolov9e-seg.yaml +0 -0
  96. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v9/yolov9e.yaml +0 -0
  97. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v9/yolov9m.yaml +0 -0
  98. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v9/yolov9s.yaml +0 -0
  99. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/models/v9/yolov9t.yaml +0 -0
  100. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/solutions/default.yaml +0 -0
  101. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/trackers/botsort.yaml +0 -0
  102. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
  103. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/data/__init__.py +0 -0
  104. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/data/augment.py +0 -0
  105. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/data/base.py +0 -0
  106. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/data/build.py +0 -0
  107. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/data/converter.py +0 -0
  108. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/data/dataset.py +0 -0
  109. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/data/loaders.py +0 -0
  110. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/data/split_dota.py +0 -0
  111. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/data/utils.py +0 -0
  112. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/engine/__init__.py +0 -0
  113. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/engine/model.py +0 -0
  114. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/engine/predictor.py +0 -0
  115. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/engine/results.py +0 -0
  116. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/engine/tuner.py +0 -0
  117. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/engine/validator.py +0 -0
  118. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/hub/__init__.py +0 -0
  119. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/hub/auth.py +0 -0
  120. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/hub/google/__init__.py +0 -0
  121. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/hub/session.py +0 -0
  122. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/hub/utils.py +0 -0
  123. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/__init__.py +0 -0
  124. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/fastsam/__init__.py +0 -0
  125. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/fastsam/model.py +0 -0
  126. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/fastsam/predict.py +0 -0
  127. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/fastsam/utils.py +0 -0
  128. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/fastsam/val.py +0 -0
  129. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/nas/__init__.py +0 -0
  130. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/nas/model.py +0 -0
  131. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/nas/predict.py +0 -0
  132. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/nas/val.py +0 -0
  133. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/rtdetr/__init__.py +0 -0
  134. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/rtdetr/model.py +0 -0
  135. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/rtdetr/predict.py +0 -0
  136. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/rtdetr/train.py +0 -0
  137. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/rtdetr/val.py +0 -0
  138. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/sam/__init__.py +0 -0
  139. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/sam/amg.py +0 -0
  140. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/sam/build.py +0 -0
  141. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/sam/model.py +0 -0
  142. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/sam/modules/__init__.py +0 -0
  143. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/sam/modules/blocks.py +0 -0
  144. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/sam/modules/decoders.py +0 -0
  145. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/sam/modules/encoders.py +0 -0
  146. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/sam/modules/memory_attention.py +0 -0
  147. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/sam/modules/sam.py +0 -0
  148. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
  149. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/sam/modules/transformer.py +0 -0
  150. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/sam/modules/utils.py +0 -0
  151. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/sam/predict.py +0 -0
  152. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/utils/__init__.py +0 -0
  153. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/utils/loss.py +0 -0
  154. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/utils/ops.py +0 -0
  155. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/__init__.py +0 -0
  156. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/classify/__init__.py +0 -0
  157. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/classify/predict.py +0 -0
  158. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/classify/train.py +0 -0
  159. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/classify/val.py +0 -0
  160. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/detect/__init__.py +0 -0
  161. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/detect/predict.py +0 -0
  162. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/detect/train.py +0 -0
  163. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/detect/val.py +0 -0
  164. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/model.py +0 -0
  165. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/obb/__init__.py +0 -0
  166. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/obb/predict.py +0 -0
  167. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/obb/train.py +0 -0
  168. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/obb/val.py +0 -0
  169. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/pose/__init__.py +0 -0
  170. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/pose/predict.py +0 -0
  171. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/pose/train.py +0 -0
  172. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/pose/val.py +0 -0
  173. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/segment/__init__.py +0 -0
  174. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/segment/predict.py +0 -0
  175. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/segment/train.py +0 -0
  176. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/segment/val.py +0 -0
  177. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/world/__init__.py +0 -0
  178. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/world/train.py +0 -0
  179. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/models/yolo/world/train_world.py +0 -0
  180. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/nn/__init__.py +0 -0
  181. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/nn/modules/__init__.py +0 -0
  182. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/nn/modules/activation.py +0 -0
  183. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/nn/modules/block.py +0 -0
  184. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/nn/modules/conv.py +0 -0
  185. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/nn/modules/transformer.py +0 -0
  186. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/nn/modules/utils.py +0 -0
  187. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/nn/tasks.py +0 -0
  188. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/solutions/__init__.py +0 -0
  189. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/solutions/ai_gym.py +0 -0
  190. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/solutions/analytics.py +0 -0
  191. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/solutions/distance_calculation.py +0 -0
  192. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/solutions/heatmap.py +0 -0
  193. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/solutions/object_counter.py +0 -0
  194. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/solutions/parking_management.py +0 -0
  195. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/solutions/queue_management.py +0 -0
  196. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/solutions/solutions.py +0 -0
  197. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/solutions/speed_estimation.py +0 -0
  198. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/solutions/streamlit_inference.py +0 -0
  199. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/trackers/__init__.py +0 -0
  200. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/trackers/basetrack.py +0 -0
  201. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/trackers/bot_sort.py +0 -0
  202. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/trackers/byte_tracker.py +0 -0
  203. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/trackers/track.py +0 -0
  204. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/trackers/utils/__init__.py +0 -0
  205. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/trackers/utils/gmc.py +0 -0
  206. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/trackers/utils/kalman_filter.py +0 -0
  207. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/trackers/utils/matching.py +0 -0
  208. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/__init__.py +0 -0
  209. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/autobatch.py +0 -0
  210. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/benchmarks.py +0 -0
  211. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/callbacks/__init__.py +0 -0
  212. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/callbacks/base.py +0 -0
  213. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/callbacks/clearml.py +0 -0
  214. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/callbacks/comet.py +0 -0
  215. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/callbacks/dvc.py +0 -0
  216. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/callbacks/hub.py +0 -0
  217. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/callbacks/mlflow.py +0 -0
  218. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/callbacks/neptune.py +0 -0
  219. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/callbacks/raytune.py +0 -0
  220. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/callbacks/tensorboard.py +0 -0
  221. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/callbacks/wb.py +0 -0
  222. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/dist.py +0 -0
  223. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/downloads.py +0 -0
  224. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/errors.py +0 -0
  225. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/files.py +0 -0
  226. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/instance.py +0 -0
  227. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/loss.py +0 -0
  228. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/metrics.py +0 -0
  229. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/ops.py +0 -0
  230. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/patches.py +0 -0
  231. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/plotting.py +0 -0
  232. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/tal.py +0 -0
  233. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/torch_utils.py +0 -0
  234. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/triton.py +0 -0
  235. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics/utils/tuner.py +0 -0
  236. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics.egg-info/SOURCES.txt +0 -0
  237. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics.egg-info/dependency_links.txt +0 -0
  238. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics.egg-info/entry_points.txt +0 -0
  239. {ultralytics-8.3.25 → ultralytics-8.3.27}/ultralytics.egg-info/requires.txt +0 -0
  240. {ultralytics-8.3.25 → ultralytics-8.3.27}/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.25
3
+ Version: 8.3.27
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>
@@ -193,14 +193,15 @@ def test_export_paddle():
193
193
 
194
194
 
195
195
  @pytest.mark.slow
196
- def test_export_ncnn():
197
- """Test YOLO exports to NCNN format."""
198
- file = YOLO(MODEL).export(format="ncnn", imgsz=32)
196
+ @pytest.mark.skipif(IS_RASPBERRYPI, reason="MNN not supported on Raspberry Pi")
197
+ def test_export_mnn():
198
+ """Test YOLO exports to MNN format (WARNING: MNN test must precede NCNN test or CI error on Windows)."""
199
+ file = YOLO(MODEL).export(format="mnn", imgsz=32)
199
200
  YOLO(file)(SOURCE, imgsz=32) # exported model inference
200
201
 
201
202
 
202
203
  @pytest.mark.slow
203
- def test_export_mnn():
204
- """Test YOLO exports to MNN format."""
205
- file = YOLO(MODEL).export(format="mnn", imgsz=32)
204
+ def test_export_ncnn():
205
+ """Test YOLO exports to NCNN format."""
206
+ file = YOLO(MODEL).export(format="ncnn", imgsz=32)
206
207
  YOLO(file)(SOURCE, imgsz=32) # exported model inference
@@ -1,6 +1,6 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
2
 
3
- __version__ = "8.3.25"
3
+ __version__ = "8.3.27"
4
4
 
5
5
  import os
6
6
 
@@ -5,7 +5,9 @@ from pathlib import Path
5
5
  from ultralytics import SAM, YOLO
6
6
 
7
7
 
8
- def auto_annotate(data, det_model="yolov8x.pt", sam_model="sam_b.pt", device="", output_dir=None):
8
+ def auto_annotate(
9
+ data, det_model="yolo11x.pt", sam_model="sam_b.pt", device="", conf=0.25, iou=0.45, imgsz=640, output_dir=None
10
+ ):
9
11
  """
10
12
  Automatically annotates images using a YOLO object detection model and a SAM segmentation model.
11
13
 
@@ -17,6 +19,9 @@ def auto_annotate(data, det_model="yolov8x.pt", sam_model="sam_b.pt", device="",
17
19
  det_model (str): Path or name of the pre-trained YOLO detection model.
18
20
  sam_model (str): Path or name of the pre-trained SAM segmentation model.
19
21
  device (str): Device to run the models on (e.g., 'cpu', 'cuda', '0').
22
+ conf (float): Confidence threshold for detection model; default is 0.25.
23
+ iou (float): IoU threshold for filtering overlapping boxes in detection results; default is 0.45.
24
+ imgsz (int): Input image resize dimension; default is 640.
20
25
  output_dir (str | None): Directory to save the annotated results. If None, a default directory is created.
21
26
 
22
27
  Examples:
@@ -36,7 +41,7 @@ def auto_annotate(data, det_model="yolov8x.pt", sam_model="sam_b.pt", device="",
36
41
  output_dir = data.parent / f"{data.stem}_auto_annotate_labels"
37
42
  Path(output_dir).mkdir(exist_ok=True, parents=True)
38
43
 
39
- det_results = det_model(data, stream=True, device=device)
44
+ det_results = det_model(data, stream=True, device=device, conf=conf, iou=iou, imgsz=imgsz)
40
45
 
41
46
  for result in det_results:
42
47
  class_ids = result.boxes.cls.int().tolist() # noqa
@@ -77,6 +77,7 @@ from ultralytics.utils import (
77
77
  ARM64,
78
78
  DEFAULT_CFG,
79
79
  IS_JETSON,
80
+ IS_RASPBERRYPI,
80
81
  LINUX,
81
82
  LOGGER,
82
83
  MACOS,
@@ -244,6 +245,8 @@ class Exporter:
244
245
  "WARNING ⚠️ INT8 export requires a missing 'data' arg for calibration. "
245
246
  f"Using default 'data={self.args.data}'."
246
247
  )
248
+ if mnn and (IS_RASPBERRYPI or IS_JETSON):
249
+ raise SystemError("MNN export not supported on Raspberry Pi and NVIDIA Jetson")
247
250
  # Input
248
251
  im = torch.zeros(self.args.batch, 3, *self.imgsz).to(self.device)
249
252
  file = Path(
@@ -118,7 +118,7 @@ class BaseTrainer:
118
118
  self.save_period = self.args.save_period
119
119
 
120
120
  self.batch_size = self.args.batch
121
- self.epochs = self.args.epochs
121
+ self.epochs = self.args.epochs or 100 # in case users accidentally pass epochs=None with timed training
122
122
  self.start_epoch = 0
123
123
  if RANK == -1:
124
124
  print_args(vars(self.args))
@@ -791,6 +791,8 @@ class BaseTrainer:
791
791
  else: # weight (with decay)
792
792
  g[0].append(param)
793
793
 
794
+ optimizers = {"Adam", "Adamax", "AdamW", "NAdam", "RAdam", "RMSProp", "SGD", "auto"}
795
+ name = {x.lower(): x for x in optimizers}.get(name.lower(), None)
794
796
  if name in {"Adam", "Adamax", "AdamW", "NAdam", "RAdam"}:
795
797
  optimizer = getattr(optim, name, optim.Adam)(g[2], lr=lr, betas=(momentum, 0.999), weight_decay=0.0)
796
798
  elif name == "RMSProp":
@@ -799,9 +801,8 @@ class BaseTrainer:
799
801
  optimizer = optim.SGD(g[2], lr=lr, momentum=momentum, nesterov=True)
800
802
  else:
801
803
  raise NotImplementedError(
802
- f"Optimizer '{name}' not found in list of available optimizers "
803
- f"[Adam, AdamW, NAdam, RAdam, RMSProp, SGD, auto]."
804
- "To request support for addition optimizers please visit https://github.com/ultralytics/ultralytics."
804
+ f"Optimizer '{name}' not found in list of available optimizers {optimizers}. "
805
+ "Request support for addition optimizers at https://github.com/ultralytics/ultralytics."
805
806
  )
806
807
 
807
808
  optimizer.add_param_group({"params": g[0], "weight_decay": decay}) # add g0 with weight_decay
@@ -663,6 +663,9 @@ class AutoBackend(nn.Module):
663
663
  else:
664
664
  x[:, [0, 2]] *= w
665
665
  x[:, [1, 3]] *= h
666
+ if self.task == "pose":
667
+ x[:, 5::3] *= w
668
+ x[:, 6::3] *= h
666
669
  y.append(x)
667
670
  # TF segment fixes: export is reversed vs ONNX export and protos are transposed
668
671
  if len(y) == 2: # segment with (det, proto) output order reversed
@@ -246,9 +246,21 @@ class Pose(Detect):
246
246
  def kpts_decode(self, bs, kpts):
247
247
  """Decodes keypoints."""
248
248
  ndim = self.kpt_shape[1]
249
- if self.export: # required for TFLite export to avoid 'PLACEHOLDER_FOR_GREATER_OP_CODES' bug
250
- y = kpts.view(bs, *self.kpt_shape, -1)
251
- a = (y[:, :, :2] * 2.0 + (self.anchors - 0.5)) * self.strides
249
+ if self.export:
250
+ if self.format in {
251
+ "tflite",
252
+ "edgetpu",
253
+ }: # required for TFLite export to avoid 'PLACEHOLDER_FOR_GREATER_OP_CODES' bug
254
+ # Precompute normalization factor to increase numerical stability
255
+ y = kpts.view(bs, *self.kpt_shape, -1)
256
+ grid_h, grid_w = self.shape[2], self.shape[3]
257
+ grid_size = torch.tensor([grid_w, grid_h], device=y.device).reshape(1, 2, 1)
258
+ norm = self.strides / (self.stride[0] * grid_size)
259
+ a = (y[:, :, :2] * 2.0 + (self.anchors - 0.5)) * norm
260
+ else:
261
+ # NCNN fix
262
+ y = kpts.view(bs, *self.kpt_shape, -1)
263
+ a = (y[:, :, :2] * 2.0 + (self.anchors - 0.5)) * self.strides
252
264
  if ndim == 3:
253
265
  a = torch.cat((a, y[:, :, 2:3].sigmoid()), 2)
254
266
  return a.view(bs, self.nk, -1)
@@ -23,7 +23,6 @@ from ultralytics.utils import (
23
23
  AUTOINSTALL,
24
24
  IS_COLAB,
25
25
  IS_GIT_DIR,
26
- IS_JUPYTER,
27
26
  IS_KAGGLE,
28
27
  IS_PIP_PACKAGE,
29
28
  LINUX,
@@ -569,11 +568,8 @@ def check_yolo(verbose=True, device=""):
569
568
 
570
569
  from ultralytics.utils.torch_utils import select_device
571
570
 
572
- if IS_JUPYTER:
573
- if check_requirements("wandb", install=False):
574
- os.system("pip uninstall -y wandb") # uninstall wandb: unwanted account creation prompt with infinite hang
575
- if IS_COLAB:
576
- shutil.rmtree("sample_data", ignore_errors=True) # remove colab /sample_data directory
571
+ if IS_COLAB:
572
+ shutil.rmtree("sample_data", ignore_errors=True) # remove colab /sample_data directory
577
573
 
578
574
  if verbose:
579
575
  # System info
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ultralytics
3
- Version: 8.3.25
3
+ Version: 8.3.27
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>
File without changes
File without changes
File without changes