ultralytics 8.2.2__tar.gz → 8.2.4__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 (217) hide show
  1. {ultralytics-8.2.2/ultralytics.egg-info → ultralytics-8.2.4}/PKG-INFO +3 -2
  2. {ultralytics-8.2.2 → ultralytics-8.2.4}/README.md +1 -1
  3. {ultralytics-8.2.2 → ultralytics-8.2.4}/pyproject.toml +1 -0
  4. {ultralytics-8.2.2 → ultralytics-8.2.4}/tests/test_python.py +1 -0
  5. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/__init__.py +1 -1
  6. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/byte_tracker.py +2 -2
  7. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/benchmarks.py +132 -0
  8. {ultralytics-8.2.2 → ultralytics-8.2.4/ultralytics.egg-info}/PKG-INFO +3 -2
  9. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics.egg-info/requires.txt +1 -0
  10. {ultralytics-8.2.2 → ultralytics-8.2.4}/LICENSE +0 -0
  11. {ultralytics-8.2.2 → ultralytics-8.2.4}/setup.cfg +0 -0
  12. {ultralytics-8.2.2 → ultralytics-8.2.4}/tests/test_cli.py +0 -0
  13. {ultralytics-8.2.2 → ultralytics-8.2.4}/tests/test_cuda.py +0 -0
  14. {ultralytics-8.2.2 → ultralytics-8.2.4}/tests/test_engine.py +0 -0
  15. {ultralytics-8.2.2 → ultralytics-8.2.4}/tests/test_explorer.py +0 -0
  16. {ultralytics-8.2.2 → ultralytics-8.2.4}/tests/test_integrations.py +0 -0
  17. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/assets/bus.jpg +0 -0
  18. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/assets/zidane.jpg +0 -0
  19. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/__init__.py +0 -0
  20. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
  21. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
  22. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
  23. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
  24. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
  25. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
  26. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
  27. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/VOC.yaml +0 -0
  28. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
  29. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/african-wildlife.yaml +0 -0
  30. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/brain-tumor.yaml +0 -0
  31. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
  32. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
  33. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/coco.yaml +0 -0
  34. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
  35. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/coco128.yaml +0 -0
  36. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
  37. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
  38. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/coco8.yaml +0 -0
  39. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
  40. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/dota8.yaml +0 -0
  41. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/lvis.yaml +0 -0
  42. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
  43. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
  44. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
  45. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/xView.yaml +0 -0
  46. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/default.yaml +0 -0
  47. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
  48. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
  49. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
  50. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
  51. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
  52. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
  53. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
  54. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
  55. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
  56. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
  57. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +0 -0
  58. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +0 -0
  59. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
  60. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
  61. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
  62. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
  63. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
  64. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
  65. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
  66. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
  67. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
  68. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
  69. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
  70. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
  71. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-world.yaml +0 -0
  72. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +0 -0
  73. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
  74. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v9/yolov9c-seg.yaml +0 -0
  75. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v9/yolov9c.yaml +0 -0
  76. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v9/yolov9e-seg.yaml +0 -0
  77. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v9/yolov9e.yaml +0 -0
  78. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/trackers/botsort.yaml +0 -0
  79. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
  80. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/__init__.py +0 -0
  81. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/annotator.py +0 -0
  82. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/augment.py +0 -0
  83. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/base.py +0 -0
  84. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/build.py +0 -0
  85. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/converter.py +0 -0
  86. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/dataset.py +0 -0
  87. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/explorer/__init__.py +0 -0
  88. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/explorer/explorer.py +0 -0
  89. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/explorer/gui/__init__.py +0 -0
  90. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/explorer/gui/dash.py +0 -0
  91. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/explorer/utils.py +0 -0
  92. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/loaders.py +0 -0
  93. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/split_dota.py +0 -0
  94. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/utils.py +0 -0
  95. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/__init__.py +0 -0
  96. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/exporter.py +0 -0
  97. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/model.py +0 -0
  98. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/predictor.py +0 -0
  99. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/results.py +0 -0
  100. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/trainer.py +0 -0
  101. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/tuner.py +0 -0
  102. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/validator.py +0 -0
  103. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/hub/__init__.py +0 -0
  104. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/hub/auth.py +0 -0
  105. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/hub/session.py +0 -0
  106. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/hub/utils.py +0 -0
  107. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/__init__.py +0 -0
  108. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/fastsam/__init__.py +0 -0
  109. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/fastsam/model.py +0 -0
  110. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/fastsam/predict.py +0 -0
  111. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/fastsam/prompt.py +0 -0
  112. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/fastsam/utils.py +0 -0
  113. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/fastsam/val.py +0 -0
  114. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/nas/__init__.py +0 -0
  115. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/nas/model.py +0 -0
  116. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/nas/predict.py +0 -0
  117. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/nas/val.py +0 -0
  118. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/rtdetr/__init__.py +0 -0
  119. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/rtdetr/model.py +0 -0
  120. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/rtdetr/predict.py +0 -0
  121. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/rtdetr/train.py +0 -0
  122. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/rtdetr/val.py +0 -0
  123. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/__init__.py +0 -0
  124. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/amg.py +0 -0
  125. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/build.py +0 -0
  126. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/model.py +0 -0
  127. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/modules/__init__.py +0 -0
  128. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/modules/decoders.py +0 -0
  129. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/modules/encoders.py +0 -0
  130. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/modules/sam.py +0 -0
  131. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
  132. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/modules/transformer.py +0 -0
  133. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/predict.py +0 -0
  134. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/utils/__init__.py +0 -0
  135. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/utils/loss.py +0 -0
  136. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/utils/ops.py +0 -0
  137. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/__init__.py +0 -0
  138. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/classify/__init__.py +0 -0
  139. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/classify/predict.py +0 -0
  140. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/classify/train.py +0 -0
  141. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/classify/val.py +0 -0
  142. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/detect/__init__.py +0 -0
  143. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/detect/predict.py +0 -0
  144. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/detect/train.py +0 -0
  145. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/detect/val.py +0 -0
  146. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/model.py +0 -0
  147. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/obb/__init__.py +0 -0
  148. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/obb/predict.py +0 -0
  149. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/obb/train.py +0 -0
  150. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/obb/val.py +0 -0
  151. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/pose/__init__.py +0 -0
  152. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/pose/predict.py +0 -0
  153. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/pose/train.py +0 -0
  154. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/pose/val.py +0 -0
  155. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/segment/__init__.py +0 -0
  156. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/segment/predict.py +0 -0
  157. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/segment/train.py +0 -0
  158. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/segment/val.py +0 -0
  159. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/world/__init__.py +0 -0
  160. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/world/train.py +0 -0
  161. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/world/train_world.py +0 -0
  162. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/__init__.py +0 -0
  163. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/autobackend.py +0 -0
  164. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/modules/__init__.py +0 -0
  165. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/modules/block.py +0 -0
  166. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/modules/conv.py +0 -0
  167. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/modules/head.py +0 -0
  168. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/modules/transformer.py +0 -0
  169. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/modules/utils.py +0 -0
  170. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/tasks.py +0 -0
  171. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/solutions/__init__.py +0 -0
  172. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/solutions/ai_gym.py +0 -0
  173. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/solutions/distance_calculation.py +0 -0
  174. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/solutions/heatmap.py +0 -0
  175. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/solutions/object_counter.py +0 -0
  176. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/solutions/queue_management.py +0 -0
  177. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/solutions/speed_estimation.py +0 -0
  178. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/__init__.py +0 -0
  179. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/basetrack.py +0 -0
  180. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/bot_sort.py +0 -0
  181. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/track.py +0 -0
  182. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/utils/__init__.py +0 -0
  183. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/utils/gmc.py +0 -0
  184. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/utils/kalman_filter.py +0 -0
  185. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/utils/matching.py +0 -0
  186. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/__init__.py +0 -0
  187. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/autobatch.py +0 -0
  188. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/__init__.py +0 -0
  189. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/base.py +0 -0
  190. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/clearml.py +0 -0
  191. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/comet.py +0 -0
  192. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/dvc.py +0 -0
  193. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/hub.py +0 -0
  194. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/mlflow.py +0 -0
  195. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/neptune.py +0 -0
  196. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/raytune.py +0 -0
  197. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/tensorboard.py +0 -0
  198. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/wb.py +0 -0
  199. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/checks.py +0 -0
  200. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/dist.py +0 -0
  201. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/downloads.py +0 -0
  202. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/errors.py +0 -0
  203. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/files.py +0 -0
  204. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/instance.py +0 -0
  205. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/loss.py +0 -0
  206. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/metrics.py +0 -0
  207. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/ops.py +0 -0
  208. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/patches.py +0 -0
  209. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/plotting.py +0 -0
  210. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/tal.py +0 -0
  211. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/torch_utils.py +0 -0
  212. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/triton.py +0 -0
  213. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/tuner.py +0 -0
  214. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics.egg-info/SOURCES.txt +0 -0
  215. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics.egg-info/dependency_links.txt +0 -0
  216. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics.egg-info/entry_points.txt +0 -0
  217. {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ultralytics
3
- Version: 8.2.2
3
+ Version: 8.2.4
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
@@ -51,6 +51,7 @@ Requires-Dist: pre-commit; extra == "dev"
51
51
  Requires-Dist: pytest; extra == "dev"
52
52
  Requires-Dist: pytest-cov; extra == "dev"
53
53
  Requires-Dist: coverage[toml]; extra == "dev"
54
+ Requires-Dist: mkdocs>=1.6.0; extra == "dev"
54
55
  Requires-Dist: mkdocs-material>=9.5.9; extra == "dev"
55
56
  Requires-Dist: mkdocstrings[python]; extra == "dev"
56
57
  Requires-Dist: mkdocs-jupyter; extra == "dev"
@@ -84,7 +85,7 @@ Requires-Dist: pycocotools>=2.0.7; extra == "extra"
84
85
  <img width="100%" src="https://raw.githubusercontent.com/ultralytics/assets/main/yolov8/banner-yolov8.png" alt="YOLO Vision banner"></a>
85
86
  </p>
86
87
 
87
- [中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/) <br>
88
+ [中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [Türkçe](https://docs.ultralytics.com/tr/) | [Tiếng Việt](https://docs.ultralytics.com/vi/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/) <br>
88
89
 
89
90
  <div>
90
91
  <a href="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml"><img src="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml/badge.svg" alt="Ultralytics CI"></a>
@@ -4,7 +4,7 @@
4
4
  <img width="100%" src="https://raw.githubusercontent.com/ultralytics/assets/main/yolov8/banner-yolov8.png" alt="YOLO Vision banner"></a>
5
5
  </p>
6
6
 
7
- [中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/) <br>
7
+ [中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [Türkçe](https://docs.ultralytics.com/tr/) | [Tiếng Việt](https://docs.ultralytics.com/vi/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/) <br>
8
8
 
9
9
  <div>
10
10
  <a href="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml"><img src="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml/badge.svg" alt="Ultralytics CI"></a>
@@ -89,6 +89,7 @@ dev = [
89
89
  "pytest",
90
90
  "pytest-cov",
91
91
  "coverage[toml]",
92
+ "mkdocs>=1.6.0",
92
93
  "mkdocs-material>=9.5.9",
93
94
  "mkdocstrings[python]",
94
95
  "mkdocs-jupyter", # for notebooks
@@ -222,6 +222,7 @@ def test_export_openvino():
222
222
  YOLO(f)(SOURCE) # exported model inference
223
223
 
224
224
 
225
+ @pytest.mark.skipif(not TORCH_1_9, reason="CoreML>=7.2 not supported with PyTorch<=1.8")
225
226
  @pytest.mark.skipif(WINDOWS, reason="CoreML not supported on Windows") # RuntimeError: BlobWriter not loaded
226
227
  @pytest.mark.skipif(IS_RASPBERRYPI, reason="CoreML not supported on Raspberry Pi")
227
228
  @pytest.mark.skipif(checks.IS_PYTHON_3_12, reason="CoreML not supported in Python 3.12")
@@ -1,6 +1,6 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
2
 
3
- __version__ = "8.2.2"
3
+ __version__ = "8.2.4"
4
4
 
5
5
  from ultralytics.data.explorer.explorer import Explorer
6
6
  from ultralytics.models import RTDETR, SAM, YOLO, YOLOWorld
@@ -264,11 +264,11 @@ class BYTETracker:
264
264
  bboxes = np.concatenate([bboxes, np.arange(len(bboxes)).reshape(-1, 1)], axis=-1)
265
265
  cls = results.cls
266
266
 
267
- remain_inds = scores > self.args.track_high_thresh
267
+ remain_inds = scores >= self.args.track_high_thresh
268
268
  inds_low = scores > self.args.track_low_thresh
269
269
  inds_high = scores < self.args.track_high_thresh
270
270
 
271
- inds_second = np.logical_and(inds_low, inds_high)
271
+ inds_second = inds_low & inds_high
272
272
  dets_second = bboxes[inds_second]
273
273
  dets = bboxes[remain_inds]
274
274
  scores_keep = scores[remain_inds]
@@ -25,18 +25,23 @@ NCNN | `ncnn` | yolov8n_ncnn_model/
25
25
  """
26
26
 
27
27
  import glob
28
+ import os
28
29
  import platform
30
+ import re
31
+ import shutil
29
32
  import time
30
33
  from pathlib import Path
31
34
 
32
35
  import numpy as np
33
36
  import torch.cuda
37
+ import yaml
34
38
 
35
39
  from ultralytics import YOLO, YOLOWorld
36
40
  from ultralytics.cfg import TASK2DATA, TASK2METRIC
37
41
  from ultralytics.engine.exporter import export_formats
38
42
  from ultralytics.utils import ARM64, ASSETS, IS_JETSON, IS_RASPBERRYPI, LINUX, LOGGER, MACOS, TQDM, WEIGHTS_DIR
39
43
  from ultralytics.utils.checks import IS_PYTHON_3_12, check_requirements, check_yolo
44
+ from ultralytics.utils.downloads import safe_download
40
45
  from ultralytics.utils.files import file_size
41
46
  from ultralytics.utils.torch_utils import select_device
42
47
 
@@ -152,6 +157,133 @@ def benchmark(
152
157
  return df
153
158
 
154
159
 
160
+ class RF100Benchmark:
161
+ def __init__(self):
162
+ """Function for initialization of RF100Benchmark."""
163
+ self.ds_names = []
164
+ self.ds_cfg_list = []
165
+ self.rf = None
166
+ self.val_metrics = ["class", "images", "targets", "precision", "recall", "map50", "map95"]
167
+
168
+ def set_key(self, api_key):
169
+ """
170
+ Set Roboflow API key for processing.
171
+
172
+ Args:
173
+ api_key (str): The API key.
174
+ """
175
+
176
+ check_requirements("roboflow")
177
+ from roboflow import Roboflow
178
+
179
+ self.rf = Roboflow(api_key=api_key)
180
+
181
+ def parse_dataset(self, ds_link_txt="datasets_links.txt"):
182
+ """
183
+ Parse dataset links and downloads datasets.
184
+
185
+ Args:
186
+ ds_link_txt (str): Path to dataset_links file.
187
+ """
188
+
189
+ (shutil.rmtree("rf-100"), os.mkdir("rf-100")) if os.path.exists("rf-100") else os.mkdir("rf-100")
190
+ os.chdir("rf-100")
191
+ os.mkdir("ultralytics-benchmarks")
192
+ safe_download("https://ultralytics.com/assets/datasets_links.txt")
193
+
194
+ with open(ds_link_txt, "r") as file:
195
+ for line in file:
196
+ try:
197
+ _, url, workspace, project, version = re.split("/+", line.strip())
198
+ self.ds_names.append(project)
199
+ proj_version = f"{project}-{version}"
200
+ if not Path(proj_version).exists():
201
+ self.rf.workspace(workspace).project(project).version(version).download("yolov8")
202
+ else:
203
+ print("Dataset already downloaded.")
204
+ self.ds_cfg_list.append(Path.cwd() / proj_version / "data.yaml")
205
+ except Exception:
206
+ continue
207
+
208
+ return self.ds_names, self.ds_cfg_list
209
+
210
+ def fix_yaml(self, path):
211
+ """
212
+ Function to fix yaml train and val path.
213
+
214
+ Args:
215
+ path (str): YAML file path.
216
+ """
217
+
218
+ with open(path, "r") as file:
219
+ yaml_data = yaml.safe_load(file)
220
+ yaml_data["train"] = "train/images"
221
+ yaml_data["val"] = "valid/images"
222
+ with open(path, "w") as file:
223
+ yaml.safe_dump(yaml_data, file)
224
+
225
+ def evaluate(self, yaml_path, val_log_file, eval_log_file, list_ind):
226
+ """
227
+ Model evaluation on validation results.
228
+
229
+ Args:
230
+ yaml_path (str): YAML file path.
231
+ val_log_file (str): val_log_file path.
232
+ eval_log_file (str): eval_log_file path.
233
+ list_ind (int): Index for current dataset.
234
+ """
235
+ skip_symbols = ["🚀", "⚠️", "💡", "❌"]
236
+ with open(yaml_path) as stream:
237
+ class_names = yaml.safe_load(stream)["names"]
238
+ with open(val_log_file, "r", encoding="utf-8") as f:
239
+ lines = f.readlines()
240
+ eval_lines = []
241
+ for line in lines:
242
+ if any(symbol in line for symbol in skip_symbols):
243
+ continue
244
+ entries = line.split(" ")
245
+ entries = list(filter(lambda val: val != "", entries))
246
+ entries = [e.strip("\n") for e in entries]
247
+ start_class = False
248
+ for e in entries:
249
+ if e == "all":
250
+ if "(AP)" not in entries:
251
+ if "(AR)" not in entries:
252
+ # parse all
253
+ eval = {}
254
+ eval["class"] = entries[0]
255
+ eval["images"] = entries[1]
256
+ eval["targets"] = entries[2]
257
+ eval["precision"] = entries[3]
258
+ eval["recall"] = entries[4]
259
+ eval["map50"] = entries[5]
260
+ eval["map95"] = entries[6]
261
+ eval_lines.append(eval)
262
+
263
+ if e in class_names:
264
+ eval = {}
265
+ eval["class"] = entries[0]
266
+ eval["images"] = entries[1]
267
+ eval["targets"] = entries[2]
268
+ eval["precision"] = entries[3]
269
+ eval["recall"] = entries[4]
270
+ eval["map50"] = entries[5]
271
+ eval["map95"] = entries[6]
272
+ eval_lines.append(eval)
273
+ map_val = 0.0
274
+ if len(eval_lines) > 1:
275
+ print("There's more dicts")
276
+ for lst in eval_lines:
277
+ if lst["class"] == "all":
278
+ map_val = lst["map50"]
279
+ else:
280
+ print("There's only one dict res")
281
+ map_val = [res["map50"] for res in eval_lines][0]
282
+
283
+ with open(eval_log_file, "a") as f:
284
+ f.write(f"{self.ds_names[list_ind]}: {map_val}\n")
285
+
286
+
155
287
  class ProfileModels:
156
288
  """
157
289
  ProfileModels class for profiling different models on ONNX and TensorRT.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ultralytics
3
- Version: 8.2.2
3
+ Version: 8.2.4
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
@@ -51,6 +51,7 @@ Requires-Dist: pre-commit; extra == "dev"
51
51
  Requires-Dist: pytest; extra == "dev"
52
52
  Requires-Dist: pytest-cov; extra == "dev"
53
53
  Requires-Dist: coverage[toml]; extra == "dev"
54
+ Requires-Dist: mkdocs>=1.6.0; extra == "dev"
54
55
  Requires-Dist: mkdocs-material>=9.5.9; extra == "dev"
55
56
  Requires-Dist: mkdocstrings[python]; extra == "dev"
56
57
  Requires-Dist: mkdocs-jupyter; extra == "dev"
@@ -84,7 +85,7 @@ Requires-Dist: pycocotools>=2.0.7; extra == "extra"
84
85
  <img width="100%" src="https://raw.githubusercontent.com/ultralytics/assets/main/yolov8/banner-yolov8.png" alt="YOLO Vision banner"></a>
85
86
  </p>
86
87
 
87
- [中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/) <br>
88
+ [中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [Türkçe](https://docs.ultralytics.com/tr/) | [Tiếng Việt](https://docs.ultralytics.com/vi/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/) <br>
88
89
 
89
90
  <div>
90
91
  <a href="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml"><img src="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml/badge.svg" alt="Ultralytics CI"></a>
@@ -20,6 +20,7 @@ pre-commit
20
20
  pytest
21
21
  pytest-cov
22
22
  coverage[toml]
23
+ mkdocs>=1.6.0
23
24
  mkdocs-material>=9.5.9
24
25
  mkdocstrings[python]
25
26
  mkdocs-jupyter
File without changes
File without changes