ultralytics 8.3.216__tar.gz → 8.3.217__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 (288) hide show
  1. {ultralytics-8.3.216 → ultralytics-8.3.217}/PKG-INFO +1 -1
  2. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/__init__.py +1 -1
  3. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/build.py +11 -2
  4. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/engine/results.py +1 -1
  5. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/detect/val.py +7 -1
  6. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/segment/val.py +1 -1
  7. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/nn/autobackend.py +5 -1
  8. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/ops.py +4 -4
  9. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics.egg-info/PKG-INFO +1 -1
  10. {ultralytics-8.3.216 → ultralytics-8.3.217}/LICENSE +0 -0
  11. {ultralytics-8.3.216 → ultralytics-8.3.217}/README.md +0 -0
  12. {ultralytics-8.3.216 → ultralytics-8.3.217}/pyproject.toml +0 -0
  13. {ultralytics-8.3.216 → ultralytics-8.3.217}/setup.cfg +0 -0
  14. {ultralytics-8.3.216 → ultralytics-8.3.217}/tests/__init__.py +0 -0
  15. {ultralytics-8.3.216 → ultralytics-8.3.217}/tests/conftest.py +0 -0
  16. {ultralytics-8.3.216 → ultralytics-8.3.217}/tests/test_cli.py +0 -0
  17. {ultralytics-8.3.216 → ultralytics-8.3.217}/tests/test_cuda.py +0 -0
  18. {ultralytics-8.3.216 → ultralytics-8.3.217}/tests/test_engine.py +0 -0
  19. {ultralytics-8.3.216 → ultralytics-8.3.217}/tests/test_exports.py +0 -0
  20. {ultralytics-8.3.216 → ultralytics-8.3.217}/tests/test_integrations.py +0 -0
  21. {ultralytics-8.3.216 → ultralytics-8.3.217}/tests/test_python.py +0 -0
  22. {ultralytics-8.3.216 → ultralytics-8.3.217}/tests/test_solutions.py +0 -0
  23. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/assets/bus.jpg +0 -0
  24. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/assets/zidane.jpg +0 -0
  25. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/__init__.py +0 -0
  26. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
  27. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
  28. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
  29. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
  30. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/HomeObjects-3K.yaml +0 -0
  31. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
  32. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
  33. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
  34. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/VOC.yaml +0 -0
  35. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
  36. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/african-wildlife.yaml +0 -0
  37. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/brain-tumor.yaml +0 -0
  38. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
  39. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
  40. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/coco.yaml +0 -0
  41. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
  42. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/coco128.yaml +0 -0
  43. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/coco8-grayscale.yaml +0 -0
  44. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/coco8-multispectral.yaml +0 -0
  45. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
  46. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
  47. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/coco8.yaml +0 -0
  48. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/construction-ppe.yaml +0 -0
  49. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
  50. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/dog-pose.yaml +0 -0
  51. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/dota8-multispectral.yaml +0 -0
  52. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/dota8.yaml +0 -0
  53. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/hand-keypoints.yaml +0 -0
  54. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/lvis.yaml +0 -0
  55. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/medical-pills.yaml +0 -0
  56. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
  57. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
  58. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/signature.yaml +0 -0
  59. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
  60. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/datasets/xView.yaml +0 -0
  61. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/default.yaml +0 -0
  62. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/11/yolo11-cls-resnet18.yaml +0 -0
  63. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/11/yolo11-cls.yaml +0 -0
  64. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/11/yolo11-obb.yaml +0 -0
  65. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/11/yolo11-pose.yaml +0 -0
  66. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/11/yolo11-seg.yaml +0 -0
  67. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/11/yolo11.yaml +0 -0
  68. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/11/yoloe-11-seg.yaml +0 -0
  69. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/11/yoloe-11.yaml +0 -0
  70. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/12/yolo12-cls.yaml +0 -0
  71. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/12/yolo12-obb.yaml +0 -0
  72. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/12/yolo12-pose.yaml +0 -0
  73. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/12/yolo12-seg.yaml +0 -0
  74. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/12/yolo12.yaml +0 -0
  75. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
  76. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
  77. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
  78. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
  79. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v10/yolov10b.yaml +0 -0
  80. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v10/yolov10l.yaml +0 -0
  81. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v10/yolov10m.yaml +0 -0
  82. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v10/yolov10n.yaml +0 -0
  83. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v10/yolov10s.yaml +0 -0
  84. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v10/yolov10x.yaml +0 -0
  85. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
  86. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
  87. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
  88. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
  89. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
  90. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
  91. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yoloe-v8-seg.yaml +0 -0
  92. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yoloe-v8.yaml +0 -0
  93. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +0 -0
  94. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +0 -0
  95. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
  96. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
  97. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
  98. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
  99. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
  100. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
  101. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
  102. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
  103. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
  104. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
  105. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
  106. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
  107. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-world.yaml +0 -0
  108. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +0 -0
  109. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
  110. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v9/yolov9c-seg.yaml +0 -0
  111. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v9/yolov9c.yaml +0 -0
  112. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v9/yolov9e-seg.yaml +0 -0
  113. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v9/yolov9e.yaml +0 -0
  114. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v9/yolov9m.yaml +0 -0
  115. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v9/yolov9s.yaml +0 -0
  116. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/models/v9/yolov9t.yaml +0 -0
  117. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/trackers/botsort.yaml +0 -0
  118. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
  119. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/__init__.py +0 -0
  120. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/annotator.py +0 -0
  121. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/augment.py +0 -0
  122. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/base.py +0 -0
  123. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/converter.py +0 -0
  124. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/dataset.py +0 -0
  125. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/loaders.py +0 -0
  126. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/scripts/download_weights.sh +0 -0
  127. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/scripts/get_coco.sh +0 -0
  128. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/scripts/get_coco128.sh +0 -0
  129. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/scripts/get_imagenet.sh +0 -0
  130. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/split.py +0 -0
  131. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/split_dota.py +0 -0
  132. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/data/utils.py +0 -0
  133. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/engine/__init__.py +0 -0
  134. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/engine/exporter.py +0 -0
  135. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/engine/model.py +0 -0
  136. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/engine/predictor.py +0 -0
  137. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/engine/trainer.py +0 -0
  138. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/engine/tuner.py +0 -0
  139. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/engine/validator.py +0 -0
  140. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/hub/__init__.py +0 -0
  141. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/hub/auth.py +0 -0
  142. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/hub/google/__init__.py +0 -0
  143. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/hub/session.py +0 -0
  144. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/hub/utils.py +0 -0
  145. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/__init__.py +0 -0
  146. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/fastsam/__init__.py +0 -0
  147. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/fastsam/model.py +0 -0
  148. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/fastsam/predict.py +0 -0
  149. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/fastsam/utils.py +0 -0
  150. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/fastsam/val.py +0 -0
  151. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/nas/__init__.py +0 -0
  152. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/nas/model.py +0 -0
  153. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/nas/predict.py +0 -0
  154. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/nas/val.py +0 -0
  155. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/rtdetr/__init__.py +0 -0
  156. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/rtdetr/model.py +0 -0
  157. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/rtdetr/predict.py +0 -0
  158. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/rtdetr/train.py +0 -0
  159. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/rtdetr/val.py +0 -0
  160. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/sam/__init__.py +0 -0
  161. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/sam/amg.py +0 -0
  162. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/sam/build.py +0 -0
  163. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/sam/model.py +0 -0
  164. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/sam/modules/__init__.py +0 -0
  165. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/sam/modules/blocks.py +0 -0
  166. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/sam/modules/decoders.py +0 -0
  167. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/sam/modules/encoders.py +0 -0
  168. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/sam/modules/memory_attention.py +0 -0
  169. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/sam/modules/sam.py +0 -0
  170. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
  171. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/sam/modules/transformer.py +0 -0
  172. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/sam/modules/utils.py +0 -0
  173. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/sam/predict.py +0 -0
  174. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/utils/__init__.py +0 -0
  175. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/utils/loss.py +0 -0
  176. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/utils/ops.py +0 -0
  177. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/__init__.py +0 -0
  178. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/classify/__init__.py +0 -0
  179. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/classify/predict.py +0 -0
  180. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/classify/train.py +0 -0
  181. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/classify/val.py +0 -0
  182. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/detect/__init__.py +0 -0
  183. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/detect/predict.py +0 -0
  184. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/detect/train.py +0 -0
  185. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/model.py +0 -0
  186. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/obb/__init__.py +0 -0
  187. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/obb/predict.py +0 -0
  188. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/obb/train.py +0 -0
  189. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/obb/val.py +0 -0
  190. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/pose/__init__.py +0 -0
  191. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/pose/predict.py +0 -0
  192. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/pose/train.py +0 -0
  193. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/pose/val.py +0 -0
  194. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/segment/__init__.py +0 -0
  195. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/segment/predict.py +0 -0
  196. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/segment/train.py +0 -0
  197. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/world/__init__.py +0 -0
  198. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/world/train.py +0 -0
  199. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/world/train_world.py +0 -0
  200. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/yoloe/__init__.py +0 -0
  201. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/yoloe/predict.py +0 -0
  202. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/yoloe/train.py +0 -0
  203. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/yoloe/train_seg.py +0 -0
  204. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/models/yolo/yoloe/val.py +0 -0
  205. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/nn/__init__.py +0 -0
  206. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/nn/modules/__init__.py +0 -0
  207. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/nn/modules/activation.py +0 -0
  208. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/nn/modules/block.py +0 -0
  209. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/nn/modules/conv.py +0 -0
  210. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/nn/modules/head.py +0 -0
  211. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/nn/modules/transformer.py +0 -0
  212. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/nn/modules/utils.py +0 -0
  213. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/nn/tasks.py +0 -0
  214. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/nn/text_model.py +0 -0
  215. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/py.typed +0 -0
  216. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/__init__.py +0 -0
  217. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/ai_gym.py +0 -0
  218. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/analytics.py +0 -0
  219. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/config.py +0 -0
  220. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/distance_calculation.py +0 -0
  221. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/heatmap.py +0 -0
  222. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/instance_segmentation.py +0 -0
  223. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/object_blurrer.py +0 -0
  224. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/object_counter.py +0 -0
  225. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/object_cropper.py +0 -0
  226. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/parking_management.py +0 -0
  227. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/queue_management.py +0 -0
  228. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/region_counter.py +0 -0
  229. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/security_alarm.py +0 -0
  230. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/similarity_search.py +0 -0
  231. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/solutions.py +0 -0
  232. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/speed_estimation.py +0 -0
  233. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/streamlit_inference.py +0 -0
  234. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/templates/similarity-search.html +0 -0
  235. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/trackzone.py +0 -0
  236. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/solutions/vision_eye.py +0 -0
  237. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/trackers/__init__.py +0 -0
  238. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/trackers/basetrack.py +0 -0
  239. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/trackers/bot_sort.py +0 -0
  240. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/trackers/byte_tracker.py +0 -0
  241. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/trackers/track.py +0 -0
  242. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/trackers/utils/__init__.py +0 -0
  243. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/trackers/utils/gmc.py +0 -0
  244. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/trackers/utils/kalman_filter.py +0 -0
  245. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/trackers/utils/matching.py +0 -0
  246. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/__init__.py +0 -0
  247. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/autobatch.py +0 -0
  248. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/autodevice.py +0 -0
  249. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/benchmarks.py +0 -0
  250. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/callbacks/__init__.py +0 -0
  251. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/callbacks/base.py +0 -0
  252. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/callbacks/clearml.py +0 -0
  253. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/callbacks/comet.py +0 -0
  254. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/callbacks/dvc.py +0 -0
  255. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/callbacks/hub.py +0 -0
  256. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/callbacks/mlflow.py +0 -0
  257. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/callbacks/neptune.py +0 -0
  258. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/callbacks/platform.py +0 -0
  259. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/callbacks/raytune.py +0 -0
  260. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/callbacks/tensorboard.py +0 -0
  261. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/callbacks/wb.py +0 -0
  262. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/checks.py +0 -0
  263. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/cpu.py +0 -0
  264. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/dist.py +0 -0
  265. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/downloads.py +0 -0
  266. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/errors.py +0 -0
  267. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/events.py +0 -0
  268. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/export/__init__.py +0 -0
  269. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/export/imx.py +0 -0
  270. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/files.py +0 -0
  271. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/git.py +0 -0
  272. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/instance.py +0 -0
  273. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/logger.py +0 -0
  274. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/loss.py +0 -0
  275. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/metrics.py +0 -0
  276. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/nms.py +0 -0
  277. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/patches.py +0 -0
  278. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/plotting.py +0 -0
  279. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/tal.py +0 -0
  280. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/torch_utils.py +0 -0
  281. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/tqdm.py +0 -0
  282. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/triton.py +0 -0
  283. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics/utils/tuner.py +0 -0
  284. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics.egg-info/SOURCES.txt +0 -0
  285. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics.egg-info/dependency_links.txt +0 -0
  286. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics.egg-info/entry_points.txt +0 -0
  287. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics.egg-info/requires.txt +0 -0
  288. {ultralytics-8.3.216 → ultralytics-8.3.217}/ultralytics.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ultralytics
3
- Version: 8.3.216
3
+ Version: 8.3.217
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>
@@ -1,6 +1,6 @@
1
1
  # Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
2
2
 
3
- __version__ = "8.3.216"
3
+ __version__ = "8.3.217"
4
4
 
5
5
  import importlib
6
6
  import os
@@ -181,7 +181,15 @@ def build_grounding(
181
181
  )
182
182
 
183
183
 
184
- def build_dataloader(dataset, batch: int, workers: int, shuffle: bool = True, rank: int = -1, drop_last: bool = False):
184
+ def build_dataloader(
185
+ dataset,
186
+ batch: int,
187
+ workers: int,
188
+ shuffle: bool = True,
189
+ rank: int = -1,
190
+ drop_last: bool = False,
191
+ pin_memory: bool = True,
192
+ ):
185
193
  """
186
194
  Create and return an InfiniteDataLoader or DataLoader for training or validation.
187
195
 
@@ -192,6 +200,7 @@ def build_dataloader(dataset, batch: int, workers: int, shuffle: bool = True, ra
192
200
  shuffle (bool, optional): Whether to shuffle the dataset.
193
201
  rank (int, optional): Process rank in distributed training. -1 for single-GPU training.
194
202
  drop_last (bool, optional): Whether to drop the last incomplete batch.
203
+ pin_memory (bool, optional): Whether to use pinned memory for dataloader.
195
204
 
196
205
  Returns:
197
206
  (InfiniteDataLoader): A dataloader that can be used for training or validation.
@@ -214,7 +223,7 @@ def build_dataloader(dataset, batch: int, workers: int, shuffle: bool = True, ra
214
223
  num_workers=nw,
215
224
  sampler=sampler,
216
225
  prefetch_factor=4 if nw > 0 else None, # increase over default 2
217
- pin_memory=nd > 0,
226
+ pin_memory=nd > 0 and pin_memory,
218
227
  collate_fn=getattr(dataset, "collate_fn", None),
219
228
  worker_init_fn=seed_worker,
220
229
  generator=generator,
@@ -527,7 +527,7 @@ class Results(SimpleClass, DataExportMixin):
527
527
  """
528
528
  assert color_mode in {"instance", "class"}, f"Expected color_mode='instance' or 'class', not {color_mode}."
529
529
  if img is None and isinstance(self.orig_img, torch.Tensor):
530
- img = (self.orig_img[0].detach().permute(1, 2, 0).contiguous() * 255).to(torch.uint8).cpu().numpy()
530
+ img = (self.orig_img[0].detach().permute(1, 2, 0).contiguous() * 255).byte().cpu().numpy()
531
531
 
532
532
  names = self.names
533
533
  is_obb = self.obb is not None
@@ -300,7 +300,13 @@ class DetectionValidator(BaseValidator):
300
300
  """
301
301
  dataset = self.build_dataset(dataset_path, batch=batch_size, mode="val")
302
302
  return build_dataloader(
303
- dataset, batch_size, self.args.workers, shuffle=False, rank=-1, drop_last=self.args.compile
303
+ dataset,
304
+ batch_size,
305
+ self.args.workers,
306
+ shuffle=False,
307
+ rank=-1,
308
+ drop_last=self.args.compile,
309
+ pin_memory=self.training,
304
310
  )
305
311
 
306
312
  def plot_val_samples(self, batch: dict[str, Any], ni: int) -> None:
@@ -173,7 +173,7 @@ class SegmentationValidator(DetectionValidator):
173
173
  if gt_cls.shape[0] == 0 or preds["cls"].shape[0] == 0:
174
174
  tp_m = np.zeros((preds["cls"].shape[0], self.niou), dtype=bool)
175
175
  else:
176
- iou = mask_iou(batch["masks"].flatten(1), preds["masks"].flatten(1))
176
+ iou = mask_iou(batch["masks"].flatten(1), preds["masks"].flatten(1).float()) # float, uint8
177
177
  tp_m = self.match_predictions(preds["cls"], gt_cls, iou).cpu().numpy()
178
178
  tp.update({"tp_m": tp_m}) # update tp with mask IoU
179
179
  return tp
@@ -19,6 +19,7 @@ from PIL import Image
19
19
  from ultralytics.utils import ARM64, IS_JETSON, LINUX, LOGGER, PYTHON_VERSION, ROOT, YAML, is_jetson
20
20
  from ultralytics.utils.checks import check_requirements, check_suffix, check_version, check_yaml, is_rockchip
21
21
  from ultralytics.utils.downloads import attempt_download_asset, is_url
22
+ from ultralytics.utils.nms import non_max_suppression
22
23
 
23
24
 
24
25
  def check_class_names(names: list | dict) -> dict[int, str]:
@@ -854,7 +855,10 @@ class AutoBackend(nn.Module):
854
855
  if any(warmup_types) and (self.device.type != "cpu" or self.triton):
855
856
  im = torch.empty(*imgsz, dtype=torch.half if self.fp16 else torch.float, device=self.device) # input
856
857
  for _ in range(2 if self.jit else 1):
857
- self.forward(im) # warmup
858
+ self.forward(im) # warmup model
859
+ warmup_boxes = torch.rand(1, 84, 16, device=self.device) # 16 boxes works best empirically
860
+ warmup_boxes[:, :4] *= imgsz[-1]
861
+ non_max_suppression(warmup_boxes) # warmup NMS
858
862
 
859
863
  @staticmethod
860
864
  def _model_type(p: str = "path/to/model.pt") -> list[bool]:
@@ -557,7 +557,7 @@ def process_mask(protos, masks_in, bboxes, shape, upsample: bool = False):
557
557
  masks = crop_mask(masks, boxes=bboxes * ratios) # CHW
558
558
  if upsample:
559
559
  masks = F.interpolate(masks[None], shape, mode="bilinear")[0] # CHW
560
- return masks.gt_(0.0)
560
+ return masks.gt_(0.0).byte()
561
561
 
562
562
 
563
563
  def process_mask_native(protos, masks_in, bboxes, shape):
@@ -577,7 +577,7 @@ def process_mask_native(protos, masks_in, bboxes, shape):
577
577
  masks = (masks_in @ protos.float().view(c, -1)).view(-1, mh, mw)
578
578
  masks = scale_masks(masks[None], shape)[0] # CHW
579
579
  masks = crop_mask(masks, bboxes) # CHW
580
- return masks.gt_(0.0)
580
+ return masks.gt_(0.0).byte()
581
581
 
582
582
 
583
583
  def scale_masks(masks, shape, padding: bool = True):
@@ -674,7 +674,7 @@ def masks2segments(masks, strategy: str = "all"):
674
674
  from ultralytics.data.converter import merge_multi_segment
675
675
 
676
676
  segments = []
677
- for x in masks.int().cpu().numpy().astype("uint8"):
677
+ for x in masks.byte().cpu().numpy():
678
678
  c = cv2.findContours(x, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)[0]
679
679
  if c:
680
680
  if strategy == "all": # merge and concatenate all segments
@@ -701,7 +701,7 @@ def convert_torch2numpy_batch(batch: torch.Tensor) -> np.ndarray:
701
701
  Returns:
702
702
  (np.ndarray): Output NumPy array batch with shape (Batch, Height, Width, Channels) and dtype uint8.
703
703
  """
704
- return (batch.permute(0, 2, 3, 1).contiguous() * 255).clamp(0, 255).to(torch.uint8).cpu().numpy()
704
+ return (batch.permute(0, 2, 3, 1).contiguous() * 255).clamp(0, 255).byte().cpu().numpy()
705
705
 
706
706
 
707
707
  def clean_str(s):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ultralytics
3
- Version: 8.3.216
3
+ Version: 8.3.217
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