ultralytics 8.0.238__tar.gz → 8.0.239__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 (207) hide show
  1. {ultralytics-8.0.238 → ultralytics-8.0.239}/PKG-INFO +2 -1
  2. {ultralytics-8.0.238 → ultralytics-8.0.239}/pyproject.toml +6 -5
  3. {ultralytics-8.0.238 → ultralytics-8.0.239}/tests/test_explorer.py +11 -6
  4. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/__init__.py +2 -2
  5. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/__init__.py +241 -138
  6. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/data/__init__.py +9 -2
  7. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/data/annotator.py +4 -4
  8. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/data/augment.py +186 -169
  9. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/data/base.py +54 -48
  10. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/data/build.py +34 -23
  11. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/data/converter.py +242 -70
  12. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/data/dataset.py +117 -95
  13. ultralytics-8.0.239/ultralytics/data/explorer/__init__.py +5 -0
  14. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/data/explorer/explorer.py +120 -100
  15. ultralytics-8.0.239/ultralytics/data/explorer/gui/dash.py +248 -0
  16. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/data/explorer/utils.py +37 -39
  17. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/data/loaders.py +75 -62
  18. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/data/split_dota.py +44 -36
  19. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/data/utils.py +160 -142
  20. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/engine/exporter.py +348 -292
  21. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/engine/model.py +102 -66
  22. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/engine/predictor.py +74 -55
  23. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/engine/results.py +61 -41
  24. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/engine/trainer.py +192 -144
  25. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/engine/tuner.py +66 -59
  26. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/engine/validator.py +31 -26
  27. ultralytics-8.0.239/ultralytics/hub/__init__.py +123 -0
  28. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/hub/auth.py +28 -25
  29. ultralytics-8.0.239/ultralytics/hub/session.py +340 -0
  30. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/hub/utils.py +64 -42
  31. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/__init__.py +1 -1
  32. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/fastsam/__init__.py +1 -1
  33. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/fastsam/model.py +6 -6
  34. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/fastsam/predict.py +3 -2
  35. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/fastsam/prompt.py +55 -48
  36. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/fastsam/val.py +1 -1
  37. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/nas/__init__.py +1 -1
  38. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/nas/model.py +9 -8
  39. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/nas/predict.py +8 -6
  40. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/nas/val.py +11 -9
  41. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/rtdetr/__init__.py +1 -1
  42. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/rtdetr/model.py +11 -9
  43. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/rtdetr/train.py +18 -16
  44. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/rtdetr/val.py +25 -19
  45. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/sam/__init__.py +1 -1
  46. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/sam/amg.py +13 -14
  47. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/sam/build.py +44 -42
  48. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/sam/model.py +6 -6
  49. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/sam/modules/decoders.py +6 -4
  50. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/sam/modules/encoders.py +37 -35
  51. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/sam/modules/sam.py +5 -4
  52. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/sam/modules/tiny_encoder.py +95 -73
  53. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/sam/modules/transformer.py +3 -2
  54. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/sam/predict.py +39 -27
  55. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/utils/loss.py +99 -95
  56. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/utils/ops.py +34 -31
  57. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/__init__.py +1 -1
  58. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/classify/__init__.py +1 -1
  59. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/classify/predict.py +8 -6
  60. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/classify/train.py +37 -31
  61. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/classify/val.py +26 -24
  62. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/detect/__init__.py +1 -1
  63. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/detect/predict.py +8 -6
  64. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/detect/train.py +47 -37
  65. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/detect/val.py +100 -82
  66. ultralytics-8.0.239/ultralytics/models/yolo/model.py +45 -0
  67. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/obb/__init__.py +1 -1
  68. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/obb/predict.py +13 -11
  69. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/obb/train.py +3 -3
  70. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/obb/val.py +70 -59
  71. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/pose/__init__.py +1 -1
  72. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/pose/predict.py +17 -12
  73. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/pose/train.py +28 -25
  74. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/pose/val.py +91 -64
  75. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/segment/__init__.py +1 -1
  76. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/segment/predict.py +10 -8
  77. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/segment/train.py +16 -15
  78. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/yolo/segment/val.py +90 -68
  79. ultralytics-8.0.239/ultralytics/nn/__init__.py +29 -0
  80. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/nn/autobackend.py +144 -112
  81. ultralytics-8.0.239/ultralytics/nn/modules/__init__.py +117 -0
  82. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/nn/modules/block.py +28 -7
  83. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/nn/modules/conv.py +41 -23
  84. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/nn/modules/head.py +60 -52
  85. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/nn/modules/transformer.py +49 -32
  86. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/nn/modules/utils.py +20 -15
  87. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/nn/tasks.py +215 -141
  88. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/solutions/ai_gym.py +59 -47
  89. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/solutions/distance_calculation.py +17 -14
  90. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/solutions/heatmap.py +57 -55
  91. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/solutions/object_counter.py +46 -39
  92. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/solutions/speed_estimation.py +13 -16
  93. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/trackers/__init__.py +1 -1
  94. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/trackers/basetrack.py +1 -0
  95. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/trackers/bot_sort.py +2 -1
  96. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/trackers/byte_tracker.py +10 -7
  97. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/trackers/track.py +7 -7
  98. ultralytics-8.0.239/ultralytics/trackers/utils/__init__.py +1 -0
  99. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/trackers/utils/gmc.py +25 -25
  100. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/trackers/utils/kalman_filter.py +85 -42
  101. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/trackers/utils/matching.py +8 -7
  102. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/__init__.py +173 -152
  103. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/autobatch.py +10 -10
  104. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/benchmarks.py +76 -86
  105. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/callbacks/__init__.py +1 -1
  106. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/callbacks/base.py +29 -29
  107. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/callbacks/clearml.py +51 -43
  108. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/callbacks/comet.py +81 -66
  109. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/callbacks/dvc.py +33 -26
  110. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/callbacks/hub.py +44 -26
  111. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/callbacks/mlflow.py +31 -24
  112. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/callbacks/neptune.py +35 -25
  113. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/callbacks/raytune.py +9 -4
  114. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/callbacks/tensorboard.py +16 -11
  115. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/callbacks/wb.py +39 -33
  116. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/checks.py +189 -141
  117. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/dist.py +15 -12
  118. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/downloads.py +112 -96
  119. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/errors.py +1 -1
  120. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/files.py +11 -11
  121. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/instance.py +22 -22
  122. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/loss.py +117 -67
  123. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/metrics.py +224 -158
  124. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/ops.py +38 -28
  125. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/patches.py +3 -3
  126. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/plotting.py +217 -120
  127. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/tal.py +19 -13
  128. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/torch_utils.py +138 -109
  129. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/triton.py +12 -10
  130. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/utils/tuner.py +49 -47
  131. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics.egg-info/PKG-INFO +2 -1
  132. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics.egg-info/requires.txt +1 -0
  133. ultralytics-8.0.238/ultralytics/data/explorer/__init__.py +0 -3
  134. ultralytics-8.0.238/ultralytics/data/explorer/gui/__init__.py +0 -0
  135. ultralytics-8.0.238/ultralytics/data/explorer/gui/dash.py +0 -214
  136. ultralytics-8.0.238/ultralytics/hub/__init__.py +0 -100
  137. ultralytics-8.0.238/ultralytics/hub/session.py +0 -191
  138. ultralytics-8.0.238/ultralytics/models/yolo/model.py +0 -39
  139. ultralytics-8.0.238/ultralytics/nn/__init__.py +0 -9
  140. ultralytics-8.0.238/ultralytics/nn/modules/__init__.py +0 -34
  141. {ultralytics-8.0.238 → ultralytics-8.0.239}/LICENSE +0 -0
  142. {ultralytics-8.0.238 → ultralytics-8.0.239}/README.md +0 -0
  143. {ultralytics-8.0.238 → ultralytics-8.0.239}/setup.cfg +0 -0
  144. {ultralytics-8.0.238 → ultralytics-8.0.239}/tests/test_cli.py +0 -0
  145. {ultralytics-8.0.238 → ultralytics-8.0.239}/tests/test_cuda.py +0 -0
  146. {ultralytics-8.0.238 → ultralytics-8.0.239}/tests/test_engine.py +0 -0
  147. {ultralytics-8.0.238 → ultralytics-8.0.239}/tests/test_integrations.py +0 -0
  148. {ultralytics-8.0.238 → ultralytics-8.0.239}/tests/test_python.py +0 -0
  149. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/assets/bus.jpg +0 -0
  150. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/assets/zidane.jpg +0 -0
  151. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
  152. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
  153. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
  154. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
  155. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
  156. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
  157. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
  158. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/VOC.yaml +0 -0
  159. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
  160. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
  161. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/coco.yaml +0 -0
  162. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
  163. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/coco128.yaml +0 -0
  164. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
  165. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
  166. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/coco8.yaml +0 -0
  167. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/dota8.yaml +0 -0
  168. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
  169. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
  170. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/datasets/xView.yaml +0 -0
  171. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/default.yaml +0 -0
  172. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
  173. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
  174. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
  175. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
  176. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
  177. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
  178. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
  179. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
  180. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
  181. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
  182. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
  183. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
  184. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
  185. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
  186. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
  187. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
  188. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
  189. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
  190. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
  191. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
  192. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
  193. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
  194. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
  195. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/trackers/botsort.yaml +0 -0
  196. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
  197. {ultralytics-8.0.238/ultralytics/engine → ultralytics-8.0.239/ultralytics/data/explorer/gui}/__init__.py +0 -0
  198. {ultralytics-8.0.238/ultralytics/models/sam/modules → ultralytics-8.0.239/ultralytics/engine}/__init__.py +0 -0
  199. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/fastsam/utils.py +0 -0
  200. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics/models/rtdetr/predict.py +0 -0
  201. {ultralytics-8.0.238/ultralytics/models/utils → ultralytics-8.0.239/ultralytics/models/sam/modules}/__init__.py +0 -0
  202. {ultralytics-8.0.238/ultralytics/solutions → ultralytics-8.0.239/ultralytics/models/utils}/__init__.py +0 -0
  203. {ultralytics-8.0.238/ultralytics/trackers/utils → ultralytics-8.0.239/ultralytics/solutions}/__init__.py +0 -0
  204. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics.egg-info/SOURCES.txt +0 -0
  205. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics.egg-info/dependency_links.txt +0 -0
  206. {ultralytics-8.0.238 → ultralytics-8.0.239}/ultralytics.egg-info/entry_points.txt +0 -0
  207. {ultralytics-8.0.238 → ultralytics-8.0.239}/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.0.238
3
+ Version: 8.0.239
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
@@ -44,6 +44,7 @@ Requires-Dist: py-cpuinfo
44
44
  Requires-Dist: thop>=0.1.1
45
45
  Requires-Dist: pandas>=1.1.4
46
46
  Requires-Dist: seaborn>=0.11.0
47
+ Requires-Dist: hub-sdk>=0.0.2
47
48
  Provides-Extra: dev
48
49
  Requires-Dist: ipython; extra == "dev"
49
50
  Requires-Dist: check-manifest; extra == "dev"
@@ -78,6 +78,7 @@ dependencies = [
78
78
  "thop>=0.1.1", # FLOPs computation
79
79
  "pandas>=1.1.4",
80
80
  "seaborn>=0.11.0", # plotting
81
+ "hub-sdk>=0.0.2", # Ultralytics HUB
81
82
  ]
82
83
 
83
84
  # Optional dependencies ------------------------------------------------------------------------------------------------
@@ -106,9 +107,9 @@ export = [
106
107
  ]
107
108
 
108
109
  explorer = [
109
- "lancedb", # vector search
110
- "duckdb", # SQL queries, supports lancedb tables
111
- "streamlit", # visualizing with GUI
110
+ "lancedb", # vector search
111
+ "duckdb", # SQL queries, supports lancedb tables
112
+ "streamlit", # visualizing with GUI
112
113
  ]
113
114
 
114
115
  # tensorflow>=2.4.1,<=2.13.1 # TF exports (-cpu, -aarch64, -macos)
@@ -178,5 +179,5 @@ pre-summary-newline = true
178
179
  close-quotes-on-newline = true
179
180
 
180
181
  [tool.codespell]
181
- ignore-words-list = "crate,nd,strack,dota,ane,segway,fo,gool,winn,commend"
182
- skip = '*.csv,*venv*,docs/??/,docs/mkdocs_??.yml'
182
+ ignore-words-list = "crate,nd,ned,strack,dota,ane,segway,fo,gool,winn,commend,bloc,nam,afterall"
183
+ skip = "*.pt,*.pth,*.torchscript,*.onnx,*.tflite,*.pb,*.bin,*.param,*.mlmodel,*.engine,*.npy,*.data*,*.csv,*pnnx*,*venv*,__pycache__*,*.ico,*.jpg,*.png,*.mp4,*.mov,/runs,/.git,./docs/??/*.md,./docs/mkdocs_??.yml"
@@ -1,8 +1,13 @@
1
+ import PIL
2
+
1
3
  from ultralytics import Explorer
2
4
  from ultralytics.utils import ASSETS
3
5
 
6
+ import PIL
7
+
4
8
 
5
9
  def test_similarity():
10
+ """Test similarity calculations and SQL queries for correctness and response length."""
6
11
  exp = Explorer()
7
12
  exp.create_embeddings_table()
8
13
  similar = exp.get_similar(idx=1)
@@ -18,6 +23,7 @@ def test_similarity():
18
23
 
19
24
 
20
25
  def test_det():
26
+ """Test detection functionalities and ensure the embedding table has bounding boxes."""
21
27
  exp = Explorer(data='coco8.yaml', model='yolov8n.pt')
22
28
  exp.create_embeddings_table(force=True)
23
29
  assert len(exp.table.head()['bboxes']) > 0
@@ -25,27 +31,26 @@ def test_det():
25
31
  assert len(similar) > 0
26
32
  # This is a loose test, just checks errors not correctness
27
33
  similar = exp.plot_similar(idx=[1, 2], limit=10)
28
- assert similar is not None
29
- similar.show()
34
+ assert isinstance(similar, PIL.Image.Image)
30
35
 
31
36
 
32
37
  def test_seg():
38
+ """Test segmentation functionalities and verify the embedding table includes masks."""
33
39
  exp = Explorer(data='coco8-seg.yaml', model='yolov8n-seg.pt')
34
40
  exp.create_embeddings_table(force=True)
35
41
  assert len(exp.table.head()['masks']) > 0
36
42
  similar = exp.get_similar(idx=[1, 2], limit=10)
37
43
  assert len(similar) > 0
38
44
  similar = exp.plot_similar(idx=[1, 2], limit=10)
39
- assert similar is not None
40
- similar.show()
45
+ assert isinstance(similar, PIL.Image.Image)
41
46
 
42
47
 
43
48
  def test_pose():
49
+ """Test pose estimation functionalities and check the embedding table for keypoints."""
44
50
  exp = Explorer(data='coco8-pose.yaml', model='yolov8n-pose.pt')
45
51
  exp.create_embeddings_table(force=True)
46
52
  assert len(exp.table.head()['keypoints']) > 0
47
53
  similar = exp.get_similar(idx=[1, 2], limit=10)
48
54
  assert len(similar) > 0
49
55
  similar = exp.plot_similar(idx=[1, 2], limit=10)
50
- assert similar is not None
51
- similar.show()
56
+ assert isinstance(similar, PIL.Image.Image)
@@ -1,6 +1,6 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
2
 
3
- __version__ = '8.0.238'
3
+ __version__ = "8.0.239"
4
4
 
5
5
  from ultralytics.data.explorer.explorer import Explorer
6
6
  from ultralytics.models import RTDETR, SAM, YOLO
@@ -10,4 +10,4 @@ from ultralytics.utils import SETTINGS as settings
10
10
  from ultralytics.utils.checks import check_yolo as checks
11
11
  from ultralytics.utils.downloads import download
12
12
 
13
- __all__ = '__version__', 'YOLO', 'NAS', 'SAM', 'FastSAM', 'RTDETR', 'checks', 'download', 'settings', 'Explorer'
13
+ __all__ = "__version__", "YOLO", "NAS", "SAM", "FastSAM", "RTDETR", "checks", "download", "settings", "Explorer"