ultralytics 8.1.28__tar.gz → 8.1.30__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 (209) hide show
  1. {ultralytics-8.1.28/ultralytics.egg-info → ultralytics-8.1.30}/PKG-INFO +1 -1
  2. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/__init__.py +1 -1
  3. ultralytics-8.1.30/ultralytics/cfg/datasets/brain-tumor.yaml +22 -0
  4. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/engine/model.py +1 -1
  5. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/hub/session.py +17 -18
  6. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/nn/modules/block.py +1 -1
  7. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/downloads.py +5 -4
  8. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/loss.py +1 -1
  9. {ultralytics-8.1.28 → ultralytics-8.1.30/ultralytics.egg-info}/PKG-INFO +1 -1
  10. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics.egg-info/SOURCES.txt +1 -0
  11. {ultralytics-8.1.28 → ultralytics-8.1.30}/LICENSE +0 -0
  12. {ultralytics-8.1.28 → ultralytics-8.1.30}/README.md +0 -0
  13. {ultralytics-8.1.28 → ultralytics-8.1.30}/pyproject.toml +0 -0
  14. {ultralytics-8.1.28 → ultralytics-8.1.30}/setup.cfg +0 -0
  15. {ultralytics-8.1.28 → ultralytics-8.1.30}/tests/test_cli.py +0 -0
  16. {ultralytics-8.1.28 → ultralytics-8.1.30}/tests/test_cuda.py +0 -0
  17. {ultralytics-8.1.28 → ultralytics-8.1.30}/tests/test_engine.py +0 -0
  18. {ultralytics-8.1.28 → ultralytics-8.1.30}/tests/test_explorer.py +0 -0
  19. {ultralytics-8.1.28 → ultralytics-8.1.30}/tests/test_integrations.py +0 -0
  20. {ultralytics-8.1.28 → ultralytics-8.1.30}/tests/test_python.py +0 -0
  21. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/assets/bus.jpg +0 -0
  22. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/assets/zidane.jpg +0 -0
  23. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/__init__.py +0 -0
  24. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
  25. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
  26. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
  27. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
  28. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
  29. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
  30. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
  31. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/VOC.yaml +0 -0
  32. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
  33. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
  34. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
  35. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/coco.yaml +0 -0
  36. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
  37. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/coco128.yaml +0 -0
  38. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
  39. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
  40. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/coco8.yaml +0 -0
  41. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
  42. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/dota8.yaml +0 -0
  43. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
  44. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
  45. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
  46. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/datasets/xView.yaml +0 -0
  47. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/default.yaml +0 -0
  48. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
  49. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
  50. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
  51. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
  52. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
  53. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
  54. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
  55. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
  56. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
  57. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
  58. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +0 -0
  59. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +0 -0
  60. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
  61. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
  62. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
  63. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
  64. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
  65. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
  66. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
  67. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
  68. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
  69. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
  70. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
  71. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
  72. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-world.yaml +0 -0
  73. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +0 -0
  74. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
  75. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v9/yolov9c.yaml +0 -0
  76. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/models/v9/yolov9e.yaml +0 -0
  77. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/trackers/botsort.yaml +0 -0
  78. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
  79. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/__init__.py +0 -0
  80. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/annotator.py +0 -0
  81. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/augment.py +0 -0
  82. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/base.py +0 -0
  83. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/build.py +0 -0
  84. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/converter.py +0 -0
  85. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/dataset.py +0 -0
  86. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/explorer/__init__.py +0 -0
  87. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/explorer/explorer.py +0 -0
  88. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/explorer/gui/__init__.py +0 -0
  89. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/explorer/gui/dash.py +0 -0
  90. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/explorer/utils.py +0 -0
  91. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/loaders.py +0 -0
  92. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/split_dota.py +0 -0
  93. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/data/utils.py +0 -0
  94. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/engine/__init__.py +0 -0
  95. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/engine/exporter.py +0 -0
  96. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/engine/predictor.py +0 -0
  97. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/engine/results.py +0 -0
  98. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/engine/trainer.py +0 -0
  99. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/engine/tuner.py +0 -0
  100. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/engine/validator.py +0 -0
  101. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/hub/__init__.py +0 -0
  102. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/hub/auth.py +0 -0
  103. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/hub/utils.py +0 -0
  104. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/__init__.py +0 -0
  105. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/fastsam/__init__.py +0 -0
  106. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/fastsam/model.py +0 -0
  107. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/fastsam/predict.py +0 -0
  108. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/fastsam/prompt.py +0 -0
  109. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/fastsam/utils.py +0 -0
  110. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/fastsam/val.py +0 -0
  111. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/nas/__init__.py +0 -0
  112. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/nas/model.py +0 -0
  113. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/nas/predict.py +0 -0
  114. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/nas/val.py +0 -0
  115. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/rtdetr/__init__.py +0 -0
  116. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/rtdetr/model.py +0 -0
  117. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/rtdetr/predict.py +0 -0
  118. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/rtdetr/train.py +0 -0
  119. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/rtdetr/val.py +0 -0
  120. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/sam/__init__.py +0 -0
  121. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/sam/amg.py +0 -0
  122. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/sam/build.py +0 -0
  123. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/sam/model.py +0 -0
  124. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/sam/modules/__init__.py +0 -0
  125. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/sam/modules/decoders.py +0 -0
  126. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/sam/modules/encoders.py +0 -0
  127. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/sam/modules/sam.py +0 -0
  128. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
  129. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/sam/modules/transformer.py +0 -0
  130. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/sam/predict.py +0 -0
  131. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/utils/__init__.py +0 -0
  132. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/utils/loss.py +0 -0
  133. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/utils/ops.py +0 -0
  134. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/__init__.py +0 -0
  135. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/classify/__init__.py +0 -0
  136. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/classify/predict.py +0 -0
  137. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/classify/train.py +0 -0
  138. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/classify/val.py +0 -0
  139. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/detect/__init__.py +0 -0
  140. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/detect/predict.py +0 -0
  141. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/detect/train.py +0 -0
  142. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/detect/val.py +0 -0
  143. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/model.py +0 -0
  144. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/obb/__init__.py +0 -0
  145. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/obb/predict.py +0 -0
  146. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/obb/train.py +0 -0
  147. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/obb/val.py +0 -0
  148. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/pose/__init__.py +0 -0
  149. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/pose/predict.py +0 -0
  150. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/pose/train.py +0 -0
  151. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/pose/val.py +0 -0
  152. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/segment/__init__.py +0 -0
  153. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/segment/predict.py +0 -0
  154. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/segment/train.py +0 -0
  155. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/models/yolo/segment/val.py +0 -0
  156. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/nn/__init__.py +0 -0
  157. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/nn/autobackend.py +0 -0
  158. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/nn/modules/__init__.py +0 -0
  159. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/nn/modules/conv.py +0 -0
  160. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/nn/modules/head.py +0 -0
  161. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/nn/modules/transformer.py +0 -0
  162. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/nn/modules/utils.py +0 -0
  163. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/nn/tasks.py +0 -0
  164. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/solutions/__init__.py +0 -0
  165. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/solutions/ai_gym.py +0 -0
  166. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/solutions/distance_calculation.py +0 -0
  167. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/solutions/heatmap.py +0 -0
  168. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/solutions/object_counter.py +0 -0
  169. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/solutions/speed_estimation.py +0 -0
  170. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/trackers/__init__.py +0 -0
  171. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/trackers/basetrack.py +0 -0
  172. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/trackers/bot_sort.py +0 -0
  173. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/trackers/byte_tracker.py +0 -0
  174. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/trackers/track.py +0 -0
  175. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/trackers/utils/__init__.py +0 -0
  176. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/trackers/utils/gmc.py +0 -0
  177. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/trackers/utils/kalman_filter.py +0 -0
  178. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/trackers/utils/matching.py +0 -0
  179. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/__init__.py +0 -0
  180. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/autobatch.py +0 -0
  181. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/benchmarks.py +0 -0
  182. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/callbacks/__init__.py +0 -0
  183. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/callbacks/base.py +0 -0
  184. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/callbacks/clearml.py +0 -0
  185. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/callbacks/comet.py +0 -0
  186. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/callbacks/dvc.py +0 -0
  187. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/callbacks/hub.py +0 -0
  188. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/callbacks/mlflow.py +0 -0
  189. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/callbacks/neptune.py +0 -0
  190. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/callbacks/raytune.py +0 -0
  191. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/callbacks/tensorboard.py +0 -0
  192. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/callbacks/wb.py +0 -0
  193. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/checks.py +0 -0
  194. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/dist.py +0 -0
  195. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/errors.py +0 -0
  196. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/files.py +0 -0
  197. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/instance.py +0 -0
  198. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/metrics.py +0 -0
  199. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/ops.py +0 -0
  200. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/patches.py +0 -0
  201. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/plotting.py +0 -0
  202. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/tal.py +0 -0
  203. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/torch_utils.py +0 -0
  204. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/triton.py +0 -0
  205. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics/utils/tuner.py +0 -0
  206. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics.egg-info/dependency_links.txt +0 -0
  207. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics.egg-info/entry_points.txt +0 -0
  208. {ultralytics-8.1.28 → ultralytics-8.1.30}/ultralytics.egg-info/requires.txt +0 -0
  209. {ultralytics-8.1.28 → ultralytics-8.1.30}/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.28
3
+ Version: 8.1.30
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.28"
3
+ __version__ = "8.1.30"
4
4
 
5
5
  from ultralytics.data.explorer.explorer import Explorer
6
6
  from ultralytics.models import RTDETR, SAM, YOLO, YOLOWorld
@@ -0,0 +1,22 @@
1
+ # Ultralytics YOLO 🚀, AGPL-3.0 license
2
+ # Brain-tumor dataset by Ultralytics
3
+ # Documentation: https://docs.ultralytics.com/datasets/detect/brain-tumor/
4
+ # Example usage: yolo train data=brain-tumor.yaml
5
+ # parent
6
+ # ├── ultralytics
7
+ # └── datasets
8
+ # └── brain-tumor ← downloads here (4.05 MB)
9
+
10
+ # Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
11
+ path: ../datasets/brain-tumor # dataset root dir
12
+ train: train/images # train images (relative to 'path') 893 images
13
+ val: valid/images # val images (relative to 'path') 223 images
14
+ test: # test images (relative to 'path')
15
+
16
+ # Classes
17
+ names:
18
+ 0: negative
19
+ 1: positive
20
+
21
+ # Download script/URL (optional)
22
+ download: https://ultralytics.com/assets/brain-tumor.zip
@@ -124,7 +124,7 @@ class Model(nn.Module):
124
124
  # Check if Ultralytics HUB model from https://hub.ultralytics.com
125
125
  if self.is_hub_model(model):
126
126
  # Fetch model from HUB
127
- checks.check_requirements("hub-sdk>0.0.2")
127
+ checks.check_requirements("hub-sdk>=0.0.5")
128
128
  self.session = self._get_hub_session(model)
129
129
  model = self.session.model_file
130
130
 
@@ -170,10 +170,19 @@ class HUBTrainingSession:
170
170
 
171
171
  return api_key, model_id, filename
172
172
 
173
- def _set_train_args(self, **kwargs):
174
- """Initializes training arguments and creates a model entry on the Ultralytics HUB."""
173
+ def _set_train_args(self):
174
+ """
175
+ Initializes training arguments and creates a model entry on the Ultralytics HUB.
176
+
177
+ This method sets up training arguments based on the model's state and updates them with any additional
178
+ arguments provided. It handles different states of the model, such as whether it's resumable, pretrained,
179
+ or requires specific file setup.
180
+
181
+ Raises:
182
+ ValueError: If the model is already trained, if required dataset information is missing, or if there are
183
+ issues with the provided training arguments.
184
+ """
175
185
  if self.model.is_trained():
176
- # Model is already trained
177
186
  raise ValueError(emojis(f"Model is already trained and uploaded to {self.model_url} 🚀"))
178
187
 
179
188
  if self.model.is_resumable():
@@ -182,26 +191,16 @@ class HUBTrainingSession:
182
191
  self.model_file = self.model.get_weights_url("last")
183
192
  else:
184
193
  # Model has no saved weights
185
- def get_train_args(config):
186
- """Parses an identifier to extract API key, model ID, and filename if applicable."""
187
- return {
188
- "batch": config["batchSize"],
189
- "epochs": config["epochs"],
190
- "imgsz": config["imageSize"],
191
- "patience": config["patience"],
192
- "device": config["device"],
193
- "cache": config["cache"],
194
- "data": self.model.get_dataset_url(),
195
- }
196
-
197
- self.train_args = get_train_args(self.model.data.get("config"))
194
+ self.train_args = self.model.data.get("train_args") # new response
195
+
198
196
  # Set the model file as either a *.pt or *.yaml file
199
197
  self.model_file = (
200
198
  self.model.get_weights_url("parent") if self.model.is_pretrained() else self.model.get_architecture()
201
199
  )
202
200
 
203
- if not self.train_args.get("data"):
204
- raise ValueError("Dataset may still be processing. Please wait a minute and try again.") # RF fix
201
+ if "data" not in self.train_args:
202
+ # RF bug - datasets are sometimes not exported
203
+ raise ValueError("Dataset may still be processing. Please wait a minute and try again.")
205
204
 
206
205
  self.model_file = checks.check_yolov5u_filename(self.model_file, verbose=False) # YOLOv5->YOLOv5u
207
206
  self.model_id = self.model.id
@@ -57,7 +57,7 @@ class DFL(nn.Module):
57
57
 
58
58
  def forward(self, x):
59
59
  """Applies a transformer layer on input tensor 'x' and returns a tensor."""
60
- b, c, a = x.shape # batch, channels, anchors
60
+ b, _, a = x.shape # batch, channels, anchors
61
61
  return self.conv(x.view(b, 4, self.c1, a).transpose(2, 1).softmax(1)).view(b, 4, a)
62
62
  # return self.conv(x.view(b, self.c1, 4, a).softmax(1)).view(b, 4, a)
63
63
 
@@ -43,7 +43,7 @@ def is_url(url, check=True):
43
43
  Defaults to True.
44
44
 
45
45
  Returns:
46
- (bool): Returns True if the string is a valid URL. If 'check' is True, also returns True if the URL exists online.
46
+ (bool): Returns True for a valid URL. If 'check' is True, also returns True if the URL exists online.
47
47
  Returns False otherwise.
48
48
 
49
49
  Example:
@@ -191,12 +191,13 @@ def unzip_file(file, path=None, exclude=(".DS_Store", "__MACOSX"), exist_ok=Fals
191
191
  return path # return unzip dir
192
192
 
193
193
 
194
- def check_disk_space(url="https://ultralytics.com/assets/coco128.zip", sf=1.5, hard=True):
194
+ def check_disk_space(url="https://ultralytics.com/assets/coco128.zip", path=Path.cwd(), sf=1.5, hard=True):
195
195
  """
196
196
  Check if there is sufficient disk space to download and store a file.
197
197
 
198
198
  Args:
199
199
  url (str, optional): The URL to the file. Defaults to 'https://ultralytics.com/assets/coco128.zip'.
200
+ path (str | Path, optional): The path or drive to check the available free space on.
200
201
  sf (float, optional): Safety factor, the multiplier for the required free space. Defaults to 2.0.
201
202
  hard (bool, optional): Whether to throw an error or not on insufficient disk space. Defaults to True.
202
203
 
@@ -212,7 +213,7 @@ def check_disk_space(url="https://ultralytics.com/assets/coco128.zip", sf=1.5, h
212
213
  # Check file size
213
214
  gib = 1 << 30 # bytes per GiB
214
215
  data = int(r.headers.get("Content-Length", 0)) / gib # file size (GB)
215
- total, used, free = (x / gib for x in shutil.disk_usage(Path.cwd())) # bytes
216
+ total, used, free = (x / gib for x in shutil.disk_usage(path)) # bytes
216
217
 
217
218
  if data * sf < free:
218
219
  return True # sufficient space
@@ -319,7 +320,7 @@ def safe_download(
319
320
  desc = f"Downloading {url if gdrive else clean_url(url)} to '{f}'"
320
321
  LOGGER.info(f"{desc}...")
321
322
  f.parent.mkdir(parents=True, exist_ok=True) # make directory if missing
322
- check_disk_space(url)
323
+ check_disk_space(url, path=f.parent)
323
324
  for i in range(retry + 1):
324
325
  try:
325
326
  if curl or i > 0: # curl download with retry, continue
@@ -140,7 +140,7 @@ class KeypointLoss(nn.Module):
140
140
  d = (pred_kpts[..., 0] - gt_kpts[..., 0]).pow(2) + (pred_kpts[..., 1] - gt_kpts[..., 1]).pow(2)
141
141
  kpt_loss_factor = kpt_mask.shape[1] / (torch.sum(kpt_mask != 0, dim=1) + 1e-9)
142
142
  # e = d / (2 * (area * self.sigmas) ** 2 + 1e-9) # from formula
143
- e = d / (2 * self.sigmas).pow(2) / (area + 1e-9) / 2 # from cocoeval
143
+ e = d / ((2 * self.sigmas).pow(2) * (area + 1e-9) * 2) # from cocoeval
144
144
  return (kpt_loss_factor.view(-1, 1) * ((1 - torch.exp(-e)) * kpt_mask)).mean()
145
145
 
146
146
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ultralytics
3
- Version: 8.1.28
3
+ Version: 8.1.30
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
@@ -27,6 +27,7 @@ ultralytics/cfg/datasets/Objects365.yaml
27
27
  ultralytics/cfg/datasets/SKU-110K.yaml
28
28
  ultralytics/cfg/datasets/VOC.yaml
29
29
  ultralytics/cfg/datasets/VisDrone.yaml
30
+ ultralytics/cfg/datasets/brain-tumor.yaml
30
31
  ultralytics/cfg/datasets/carparts-seg.yaml
31
32
  ultralytics/cfg/datasets/coco-pose.yaml
32
33
  ultralytics/cfg/datasets/coco.yaml
File without changes
File without changes
File without changes