ultralytics 8.1.33__tar.gz → 8.1.34__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 (210) hide show
  1. {ultralytics-8.1.33/ultralytics.egg-info → ultralytics-8.1.34}/PKG-INFO +1 -1
  2. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/__init__.py +1 -1
  3. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/engine/results.py +21 -11
  4. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/solutions/ai_gym.py +0 -8
  5. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/solutions/object_counter.py +1 -1
  6. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/checks.py +2 -0
  7. {ultralytics-8.1.33 → ultralytics-8.1.34/ultralytics.egg-info}/PKG-INFO +1 -1
  8. {ultralytics-8.1.33 → ultralytics-8.1.34}/LICENSE +0 -0
  9. {ultralytics-8.1.33 → ultralytics-8.1.34}/README.md +0 -0
  10. {ultralytics-8.1.33 → ultralytics-8.1.34}/pyproject.toml +0 -0
  11. {ultralytics-8.1.33 → ultralytics-8.1.34}/setup.cfg +0 -0
  12. {ultralytics-8.1.33 → ultralytics-8.1.34}/tests/test_cli.py +0 -0
  13. {ultralytics-8.1.33 → ultralytics-8.1.34}/tests/test_cuda.py +0 -0
  14. {ultralytics-8.1.33 → ultralytics-8.1.34}/tests/test_engine.py +0 -0
  15. {ultralytics-8.1.33 → ultralytics-8.1.34}/tests/test_explorer.py +0 -0
  16. {ultralytics-8.1.33 → ultralytics-8.1.34}/tests/test_integrations.py +0 -0
  17. {ultralytics-8.1.33 → ultralytics-8.1.34}/tests/test_python.py +0 -0
  18. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/assets/bus.jpg +0 -0
  19. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/assets/zidane.jpg +0 -0
  20. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/__init__.py +0 -0
  21. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
  22. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
  23. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
  24. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
  25. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
  26. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
  27. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
  28. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/VOC.yaml +0 -0
  29. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
  30. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/african-wildlife.yaml +0 -0
  31. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/brain-tumor.yaml +0 -0
  32. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
  33. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
  34. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/coco.yaml +0 -0
  35. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
  36. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/coco128.yaml +0 -0
  37. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
  38. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
  39. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/coco8.yaml +0 -0
  40. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
  41. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/dota8.yaml +0 -0
  42. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
  43. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
  44. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
  45. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/datasets/xView.yaml +0 -0
  46. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/default.yaml +0 -0
  47. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
  48. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
  49. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
  50. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
  51. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
  52. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
  53. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
  54. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
  55. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
  56. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
  57. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +0 -0
  58. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +0 -0
  59. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
  60. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
  61. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
  62. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
  63. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
  64. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
  65. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
  66. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
  67. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
  68. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
  69. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
  70. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
  71. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-world.yaml +0 -0
  72. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +0 -0
  73. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
  74. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v9/yolov9c.yaml +0 -0
  75. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/models/v9/yolov9e.yaml +0 -0
  76. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/trackers/botsort.yaml +0 -0
  77. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
  78. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/__init__.py +0 -0
  79. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/annotator.py +0 -0
  80. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/augment.py +0 -0
  81. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/base.py +0 -0
  82. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/build.py +0 -0
  83. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/converter.py +0 -0
  84. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/dataset.py +0 -0
  85. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/explorer/__init__.py +0 -0
  86. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/explorer/explorer.py +0 -0
  87. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/explorer/gui/__init__.py +0 -0
  88. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/explorer/gui/dash.py +0 -0
  89. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/explorer/utils.py +0 -0
  90. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/loaders.py +0 -0
  91. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/split_dota.py +0 -0
  92. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/data/utils.py +0 -0
  93. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/engine/__init__.py +0 -0
  94. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/engine/exporter.py +0 -0
  95. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/engine/model.py +0 -0
  96. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/engine/predictor.py +0 -0
  97. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/engine/trainer.py +0 -0
  98. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/engine/tuner.py +0 -0
  99. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/engine/validator.py +0 -0
  100. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/hub/__init__.py +0 -0
  101. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/hub/auth.py +0 -0
  102. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/hub/session.py +0 -0
  103. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/hub/utils.py +0 -0
  104. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/__init__.py +0 -0
  105. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/fastsam/__init__.py +0 -0
  106. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/fastsam/model.py +0 -0
  107. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/fastsam/predict.py +0 -0
  108. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/fastsam/prompt.py +0 -0
  109. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/fastsam/utils.py +0 -0
  110. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/fastsam/val.py +0 -0
  111. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/nas/__init__.py +0 -0
  112. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/nas/model.py +0 -0
  113. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/nas/predict.py +0 -0
  114. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/nas/val.py +0 -0
  115. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/rtdetr/__init__.py +0 -0
  116. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/rtdetr/model.py +0 -0
  117. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/rtdetr/predict.py +0 -0
  118. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/rtdetr/train.py +0 -0
  119. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/rtdetr/val.py +0 -0
  120. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/sam/__init__.py +0 -0
  121. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/sam/amg.py +0 -0
  122. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/sam/build.py +0 -0
  123. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/sam/model.py +0 -0
  124. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/sam/modules/__init__.py +0 -0
  125. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/sam/modules/decoders.py +0 -0
  126. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/sam/modules/encoders.py +0 -0
  127. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/sam/modules/sam.py +0 -0
  128. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
  129. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/sam/modules/transformer.py +0 -0
  130. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/sam/predict.py +0 -0
  131. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/utils/__init__.py +0 -0
  132. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/utils/loss.py +0 -0
  133. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/utils/ops.py +0 -0
  134. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/__init__.py +0 -0
  135. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/classify/__init__.py +0 -0
  136. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/classify/predict.py +0 -0
  137. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/classify/train.py +0 -0
  138. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/classify/val.py +0 -0
  139. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/detect/__init__.py +0 -0
  140. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/detect/predict.py +0 -0
  141. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/detect/train.py +0 -0
  142. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/detect/val.py +0 -0
  143. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/model.py +0 -0
  144. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/obb/__init__.py +0 -0
  145. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/obb/predict.py +0 -0
  146. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/obb/train.py +0 -0
  147. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/obb/val.py +0 -0
  148. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/pose/__init__.py +0 -0
  149. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/pose/predict.py +0 -0
  150. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/pose/train.py +0 -0
  151. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/pose/val.py +0 -0
  152. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/segment/__init__.py +0 -0
  153. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/segment/predict.py +0 -0
  154. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/segment/train.py +0 -0
  155. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/models/yolo/segment/val.py +0 -0
  156. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/nn/__init__.py +0 -0
  157. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/nn/autobackend.py +0 -0
  158. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/nn/modules/__init__.py +0 -0
  159. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/nn/modules/block.py +0 -0
  160. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/nn/modules/conv.py +0 -0
  161. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/nn/modules/head.py +0 -0
  162. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/nn/modules/transformer.py +0 -0
  163. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/nn/modules/utils.py +0 -0
  164. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/nn/tasks.py +0 -0
  165. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/solutions/__init__.py +0 -0
  166. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/solutions/distance_calculation.py +0 -0
  167. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/solutions/heatmap.py +0 -0
  168. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/solutions/speed_estimation.py +0 -0
  169. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/trackers/__init__.py +0 -0
  170. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/trackers/basetrack.py +0 -0
  171. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/trackers/bot_sort.py +0 -0
  172. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/trackers/byte_tracker.py +0 -0
  173. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/trackers/track.py +0 -0
  174. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/trackers/utils/__init__.py +0 -0
  175. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/trackers/utils/gmc.py +0 -0
  176. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/trackers/utils/kalman_filter.py +0 -0
  177. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/trackers/utils/matching.py +0 -0
  178. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/__init__.py +0 -0
  179. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/autobatch.py +0 -0
  180. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/benchmarks.py +0 -0
  181. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/callbacks/__init__.py +0 -0
  182. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/callbacks/base.py +0 -0
  183. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/callbacks/clearml.py +0 -0
  184. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/callbacks/comet.py +0 -0
  185. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/callbacks/dvc.py +0 -0
  186. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/callbacks/hub.py +0 -0
  187. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/callbacks/mlflow.py +0 -0
  188. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/callbacks/neptune.py +0 -0
  189. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/callbacks/raytune.py +0 -0
  190. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/callbacks/tensorboard.py +0 -0
  191. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/callbacks/wb.py +0 -0
  192. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/dist.py +0 -0
  193. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/downloads.py +0 -0
  194. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/errors.py +0 -0
  195. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/files.py +0 -0
  196. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/instance.py +0 -0
  197. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/loss.py +0 -0
  198. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/metrics.py +0 -0
  199. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/ops.py +0 -0
  200. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/patches.py +0 -0
  201. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/plotting.py +0 -0
  202. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/tal.py +0 -0
  203. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/torch_utils.py +0 -0
  204. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/triton.py +0 -0
  205. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics/utils/tuner.py +0 -0
  206. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics.egg-info/SOURCES.txt +0 -0
  207. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics.egg-info/dependency_links.txt +0 -0
  208. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics.egg-info/entry_points.txt +0 -0
  209. {ultralytics-8.1.33 → ultralytics-8.1.34}/ultralytics.egg-info/requires.txt +0 -0
  210. {ultralytics-8.1.33 → ultralytics-8.1.34}/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.1.33
3
+ Version: 8.1.34
4
4
  Summary: Ultralytics YOLOv8 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
5
5
  Author: Glenn Jocher, Ayush Chaurasia, Jing Qiu
6
6
  Maintainer: Glenn Jocher, Ayush Chaurasia, Jing Qiu
@@ -1,6 +1,6 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
2
 
3
- __version__ = "8.1.33"
3
+ __version__ = "8.1.34"
4
4
 
5
5
  from ultralytics.data.explorer.explorer import Explorer
6
6
  from ultralytics.models import RTDETR, SAM, YOLO, YOLOWorld
@@ -385,10 +385,10 @@ class Results(SimpleClass):
385
385
  BGR=True,
386
386
  )
387
387
 
388
- def summary(self, normalize=False):
388
+ def summary(self, normalize=False, decimals=5):
389
389
  """Convert the results to a summarized format."""
390
390
  if self.probs is not None:
391
- LOGGER.warning("Warning: Classify task do not support `summary` and `tojson` yet.")
391
+ LOGGER.warning("Warning: Classify results do not support the `summary()` method yet.")
392
392
  return
393
393
 
394
394
  # Create list of detection dictionaries
@@ -396,28 +396,38 @@ class Results(SimpleClass):
396
396
  data = self.boxes.data.cpu().tolist()
397
397
  h, w = self.orig_shape if normalize else (1, 1)
398
398
  for i, row in enumerate(data): # xyxy, track_id if tracking, conf, class_id
399
- box = {"x1": row[0] / w, "y1": row[1] / h, "x2": row[2] / w, "y2": row[3] / h}
400
- conf = row[-2]
399
+ box = {
400
+ "x1": round(row[0] / w, decimals),
401
+ "y1": round(row[1] / h, decimals),
402
+ "x2": round(row[2] / w, decimals),
403
+ "y2": round(row[3] / h, decimals),
404
+ }
405
+ conf = round(row[-2], decimals)
401
406
  class_id = int(row[-1])
402
- name = self.names[class_id]
403
- result = {"name": name, "class": class_id, "confidence": conf, "box": box}
407
+ result = {"name": self.names[class_id], "class": class_id, "confidence": conf, "box": box}
404
408
  if self.boxes.is_track:
405
409
  result["track_id"] = int(row[-3]) # track ID
406
410
  if self.masks:
407
- x, y = self.masks.xy[i][:, 0], self.masks.xy[i][:, 1] # numpy array
408
- result["segments"] = {"x": (x / w).tolist(), "y": (y / h).tolist()}
411
+ result["segments"] = {
412
+ "x": (self.masks.xy[i][:, 0] / w).round(decimals).tolist(),
413
+ "y": (self.masks.xy[i][:, 1] / h).round(decimals).tolist(),
414
+ }
409
415
  if self.keypoints is not None:
410
416
  x, y, visible = self.keypoints[i].data[0].cpu().unbind(dim=1) # torch Tensor
411
- result["keypoints"] = {"x": (x / w).tolist(), "y": (y / h).tolist(), "visible": visible.tolist()}
417
+ result["keypoints"] = {
418
+ "x": (x / w).numpy().round(decimals).tolist(), # decimals named argument required
419
+ "y": (y / h).numpy().round(decimals).tolist(),
420
+ "visible": visible.numpy().round(decimals).tolist(),
421
+ }
412
422
  results.append(result)
413
423
 
414
424
  return results
415
425
 
416
- def tojson(self, normalize=False):
426
+ def tojson(self, normalize=False, decimals=5):
417
427
  """Convert the results to JSON format."""
418
428
  import json
419
429
 
420
- return json.dumps(self.summary(normalize=normalize), indent=2)
430
+ return json.dumps(self.summary(normalize=normalize, decimals=decimals), indent=2)
421
431
 
422
432
 
423
433
  class Boxes(BaseTensor):
@@ -80,14 +80,6 @@ class AIGym:
80
80
  self.keypoints = results[0].keypoints.data
81
81
  self.annotator = Annotator(im0, line_width=2)
82
82
 
83
- num_keypoints = len(results[0])
84
-
85
- # Resize self.angle, self.count, and self.stage if the number of keypoints has changed
86
- if len(self.angle) != num_keypoints:
87
- self.angle = [0] * num_keypoints
88
- self.count = [0] * num_keypoints
89
- self.stage = ["-" for _ in range(num_keypoints)]
90
-
91
83
  for ind, k in enumerate(reversed(self.keypoints)):
92
84
  if self.pose_type in ["pushup", "pullup"]:
93
85
  self.angle[ind] = self.annotator.estimate_pose_angle(
@@ -171,7 +171,7 @@ class ObjectCounter:
171
171
  # Extract tracks
172
172
  for box, track_id, cls in zip(boxes, track_ids, clss):
173
173
  # Draw bounding box
174
- self.annotator.box_label(box, label=f"{track_id}:{self.names[cls]}", color=colors(int(cls), True))
174
+ self.annotator.box_label(box, label=f"{track_id}:{self.names[cls]}", color=colors(int(track_id), True))
175
175
 
176
176
  # Draw Tracks
177
177
  track_line = self.track_history[track_id]
@@ -142,6 +142,8 @@ def check_imgsz(imgsz, stride=32, min_dim=1, max_dim=2, floor=0):
142
142
  imgsz = [imgsz]
143
143
  elif isinstance(imgsz, (list, tuple)):
144
144
  imgsz = list(imgsz)
145
+ elif isinstance(imgsz, str): # i.e. '640' or '[640,640]'
146
+ imgsz = [int(imgsz)] if imgsz.isnumeric() else eval(imgsz)
145
147
  else:
146
148
  raise TypeError(
147
149
  f"'imgsz={imgsz}' is of invalid type {type(imgsz).__name__}. "
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ultralytics
3
- Version: 8.1.33
3
+ Version: 8.1.34
4
4
  Summary: Ultralytics YOLOv8 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
5
5
  Author: Glenn Jocher, Ayush Chaurasia, Jing Qiu
6
6
  Maintainer: Glenn Jocher, Ayush Chaurasia, Jing Qiu
File without changes
File without changes
File without changes