ultralytics 8.2.34__tar.gz → 8.2.35__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 (226) hide show
  1. {ultralytics-8.2.34 → ultralytics-8.2.35}/PKG-INFO +1 -1
  2. {ultralytics-8.2.34 → ultralytics-8.2.35}/tests/test_cuda.py +1 -0
  3. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/__init__.py +1 -1
  4. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/lvis.yaml +4 -8
  5. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v9/yolov9e-seg.yaml +1 -1
  6. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v9/yolov9e.yaml +1 -1
  7. ultralytics-8.2.35/ultralytics/cfg/models/v9/yolov9m.yaml +38 -0
  8. ultralytics-8.2.35/ultralytics/cfg/models/v9/yolov9s.yaml +38 -0
  9. ultralytics-8.2.35/ultralytics/cfg/models/v9/yolov9t.yaml +38 -0
  10. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/explorer/gui/dash.py +1 -1
  11. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/nn/modules/__init__.py +4 -2
  12. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/nn/modules/block.py +29 -0
  13. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/nn/tasks.py +10 -3
  14. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/callbacks/mlflow.py +6 -4
  15. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics.egg-info/PKG-INFO +1 -1
  16. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics.egg-info/SOURCES.txt +3 -0
  17. {ultralytics-8.2.34 → ultralytics-8.2.35}/LICENSE +0 -0
  18. {ultralytics-8.2.34 → ultralytics-8.2.35}/README.md +0 -0
  19. {ultralytics-8.2.34 → ultralytics-8.2.35}/pyproject.toml +0 -0
  20. {ultralytics-8.2.34 → ultralytics-8.2.35}/setup.cfg +0 -0
  21. {ultralytics-8.2.34 → ultralytics-8.2.35}/tests/__init__.py +0 -0
  22. {ultralytics-8.2.34 → ultralytics-8.2.35}/tests/conftest.py +0 -0
  23. {ultralytics-8.2.34 → ultralytics-8.2.35}/tests/test_cli.py +0 -0
  24. {ultralytics-8.2.34 → ultralytics-8.2.35}/tests/test_engine.py +0 -0
  25. {ultralytics-8.2.34 → ultralytics-8.2.35}/tests/test_explorer.py +0 -0
  26. {ultralytics-8.2.34 → ultralytics-8.2.35}/tests/test_exports.py +0 -0
  27. {ultralytics-8.2.34 → ultralytics-8.2.35}/tests/test_integrations.py +0 -0
  28. {ultralytics-8.2.34 → ultralytics-8.2.35}/tests/test_python.py +0 -0
  29. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/assets/bus.jpg +0 -0
  30. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/assets/zidane.jpg +0 -0
  31. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/__init__.py +0 -0
  32. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
  33. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
  34. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
  35. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
  36. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
  37. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
  38. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
  39. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/VOC.yaml +0 -0
  40. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
  41. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/african-wildlife.yaml +0 -0
  42. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/brain-tumor.yaml +0 -0
  43. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
  44. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
  45. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/coco.yaml +0 -0
  46. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
  47. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/coco128.yaml +0 -0
  48. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
  49. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
  50. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/coco8.yaml +0 -0
  51. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
  52. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/dota8.yaml +0 -0
  53. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
  54. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
  55. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/signature.yaml +0 -0
  56. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
  57. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/datasets/xView.yaml +0 -0
  58. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/default.yaml +0 -0
  59. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
  60. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
  61. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
  62. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
  63. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
  64. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
  65. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
  66. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
  67. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
  68. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
  69. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +0 -0
  70. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +0 -0
  71. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
  72. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
  73. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
  74. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
  75. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
  76. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
  77. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
  78. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
  79. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
  80. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
  81. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
  82. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
  83. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-world.yaml +0 -0
  84. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +0 -0
  85. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
  86. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v9/yolov9c-seg.yaml +0 -0
  87. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/models/v9/yolov9c.yaml +0 -0
  88. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/trackers/botsort.yaml +0 -0
  89. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
  90. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/__init__.py +0 -0
  91. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/annotator.py +0 -0
  92. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/augment.py +0 -0
  93. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/base.py +0 -0
  94. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/build.py +0 -0
  95. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/converter.py +0 -0
  96. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/dataset.py +0 -0
  97. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/explorer/__init__.py +0 -0
  98. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/explorer/explorer.py +0 -0
  99. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/explorer/gui/__init__.py +0 -0
  100. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/explorer/utils.py +0 -0
  101. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/loaders.py +0 -0
  102. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/split_dota.py +0 -0
  103. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/data/utils.py +0 -0
  104. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/engine/__init__.py +0 -0
  105. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/engine/exporter.py +0 -0
  106. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/engine/model.py +0 -0
  107. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/engine/predictor.py +0 -0
  108. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/engine/results.py +0 -0
  109. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/engine/trainer.py +0 -0
  110. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/engine/tuner.py +0 -0
  111. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/engine/validator.py +0 -0
  112. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/hub/__init__.py +0 -0
  113. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/hub/auth.py +0 -0
  114. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/hub/session.py +0 -0
  115. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/hub/utils.py +0 -0
  116. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/__init__.py +0 -0
  117. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/fastsam/__init__.py +0 -0
  118. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/fastsam/model.py +0 -0
  119. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/fastsam/predict.py +0 -0
  120. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/fastsam/prompt.py +0 -0
  121. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/fastsam/utils.py +0 -0
  122. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/fastsam/val.py +0 -0
  123. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/nas/__init__.py +0 -0
  124. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/nas/model.py +0 -0
  125. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/nas/predict.py +0 -0
  126. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/nas/val.py +0 -0
  127. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/rtdetr/__init__.py +0 -0
  128. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/rtdetr/model.py +0 -0
  129. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/rtdetr/predict.py +0 -0
  130. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/rtdetr/train.py +0 -0
  131. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/rtdetr/val.py +0 -0
  132. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/sam/__init__.py +0 -0
  133. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/sam/amg.py +0 -0
  134. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/sam/build.py +0 -0
  135. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/sam/model.py +0 -0
  136. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/sam/modules/__init__.py +0 -0
  137. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/sam/modules/decoders.py +0 -0
  138. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/sam/modules/encoders.py +0 -0
  139. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/sam/modules/sam.py +0 -0
  140. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
  141. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/sam/modules/transformer.py +0 -0
  142. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/sam/predict.py +0 -0
  143. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/utils/__init__.py +0 -0
  144. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/utils/loss.py +0 -0
  145. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/utils/ops.py +0 -0
  146. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/__init__.py +0 -0
  147. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/classify/__init__.py +0 -0
  148. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/classify/predict.py +0 -0
  149. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/classify/train.py +0 -0
  150. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/classify/val.py +0 -0
  151. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/detect/__init__.py +0 -0
  152. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/detect/predict.py +0 -0
  153. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/detect/train.py +0 -0
  154. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/detect/val.py +0 -0
  155. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/model.py +0 -0
  156. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/obb/__init__.py +0 -0
  157. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/obb/predict.py +0 -0
  158. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/obb/train.py +0 -0
  159. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/obb/val.py +0 -0
  160. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/pose/__init__.py +0 -0
  161. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/pose/predict.py +0 -0
  162. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/pose/train.py +0 -0
  163. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/pose/val.py +0 -0
  164. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/segment/__init__.py +0 -0
  165. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/segment/predict.py +0 -0
  166. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/segment/train.py +0 -0
  167. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/segment/val.py +0 -0
  168. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/world/__init__.py +0 -0
  169. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/world/train.py +0 -0
  170. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/models/yolo/world/train_world.py +0 -0
  171. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/nn/__init__.py +0 -0
  172. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/nn/autobackend.py +0 -0
  173. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/nn/modules/conv.py +0 -0
  174. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/nn/modules/head.py +0 -0
  175. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/nn/modules/transformer.py +0 -0
  176. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/nn/modules/utils.py +0 -0
  177. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/solutions/__init__.py +0 -0
  178. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/solutions/ai_gym.py +0 -0
  179. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/solutions/analytics.py +0 -0
  180. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/solutions/distance_calculation.py +0 -0
  181. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/solutions/heatmap.py +0 -0
  182. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/solutions/object_counter.py +0 -0
  183. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/solutions/parking_management.py +0 -0
  184. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/solutions/queue_management.py +0 -0
  185. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/solutions/speed_estimation.py +0 -0
  186. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/trackers/__init__.py +0 -0
  187. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/trackers/basetrack.py +0 -0
  188. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/trackers/bot_sort.py +0 -0
  189. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/trackers/byte_tracker.py +0 -0
  190. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/trackers/track.py +0 -0
  191. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/trackers/utils/__init__.py +0 -0
  192. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/trackers/utils/gmc.py +0 -0
  193. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/trackers/utils/kalman_filter.py +0 -0
  194. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/trackers/utils/matching.py +0 -0
  195. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/__init__.py +0 -0
  196. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/autobatch.py +0 -0
  197. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/benchmarks.py +0 -0
  198. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/callbacks/__init__.py +0 -0
  199. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/callbacks/base.py +0 -0
  200. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/callbacks/clearml.py +0 -0
  201. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/callbacks/comet.py +0 -0
  202. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/callbacks/dvc.py +0 -0
  203. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/callbacks/hub.py +0 -0
  204. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/callbacks/neptune.py +0 -0
  205. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/callbacks/raytune.py +0 -0
  206. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/callbacks/tensorboard.py +0 -0
  207. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/callbacks/wb.py +0 -0
  208. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/checks.py +0 -0
  209. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/dist.py +0 -0
  210. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/downloads.py +0 -0
  211. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/errors.py +0 -0
  212. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/files.py +0 -0
  213. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/instance.py +0 -0
  214. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/loss.py +0 -0
  215. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/metrics.py +0 -0
  216. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/ops.py +0 -0
  217. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/patches.py +0 -0
  218. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/plotting.py +0 -0
  219. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/tal.py +0 -0
  220. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/torch_utils.py +0 -0
  221. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/triton.py +0 -0
  222. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics/utils/tuner.py +0 -0
  223. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics.egg-info/dependency_links.txt +0 -0
  224. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics.egg-info/entry_points.txt +0 -0
  225. {ultralytics-8.2.34 → ultralytics-8.2.35}/ultralytics.egg-info/requires.txt +0 -0
  226. {ultralytics-8.2.34 → ultralytics-8.2.35}/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.34
3
+ Version: 8.2.35
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
@@ -19,6 +19,7 @@ def test_checks():
19
19
 
20
20
 
21
21
  @pytest.mark.slow
22
+ @pytest.mark.skipif(True, reason="CUDA export tests disabled pending additional Ultralytics GPU server availability")
22
23
  @pytest.mark.skipif(not CUDA_IS_AVAILABLE, reason="CUDA is not available")
23
24
  @pytest.mark.parametrize(
24
25
  "task, dynamic, int8, half, batch",
@@ -1,6 +1,6 @@
1
1
  # Ultralytics YOLO 🚀, AGPL-3.0 license
2
2
 
3
- __version__ = "8.2.34"
3
+ __version__ = "8.2.35"
4
4
 
5
5
  import os
6
6
 
@@ -221,8 +221,7 @@ names:
221
221
  204: cape
222
222
  205: cappuccino/coffee cappuccino
223
223
  206: car/car automobile/auto/auto automobile/automobile
224
- 207: railcar/railcar part of a train/railway car/railway car part of a train/railroad
225
- car/railroad car part of a train
224
+ 207: railcar/railcar part of a train/railway car/railway car part of a train/railroad car/railroad car part of a train
226
225
  208: elevator car
227
226
  209: car battery/automobile battery
228
227
  210: identity card
@@ -241,8 +240,7 @@ names:
241
240
  223: cast/plaster cast/plaster bandage
242
241
  224: cat
243
242
  225: cauliflower
244
- 226: cayenne/cayenne spice/cayenne pepper/cayenne pepper spice/red pepper/red pepper
245
- spice
243
+ 226: cayenne/cayenne spice/cayenne pepper/cayenne pepper spice/red pepper/red pepper spice
246
244
  227: CD player
247
245
  228: celery
248
246
  229: cellular telephone/cellular phone/cellphone/mobile phone/smart phone
@@ -258,8 +256,7 @@ names:
258
256
  239: chessboard
259
257
  240: chicken/chicken animal
260
258
  241: chickpea/garbanzo
261
- 242: chili/chili vegetable/chili pepper/chili pepper vegetable/chilli/chilli vegetable/chilly/chilly
262
- vegetable/chile/chile vegetable
259
+ 242: chili/chili vegetable/chili pepper/chili pepper vegetable/chilli/chilli vegetable/chilly/chilly vegetable/chile/chile vegetable
263
260
  243: chime/gong
264
261
  244: chinaware
265
262
  245: crisp/crisp potato chip/potato chip
@@ -1061,8 +1058,7 @@ names:
1061
1058
  1041: sweater
1062
1059
  1042: sweatshirt
1063
1060
  1043: sweet potato
1064
- 1044: swimsuit/swimwear/bathing suit/swimming costume/bathing costume/swimming trunks/bathing
1065
- trunks
1061
+ 1044: swimsuit/swimwear/bathing suit/swimming costume/bathing costume/swimming trunks/bathing trunks
1066
1062
  1045: sword
1067
1063
  1046: syringe
1068
1064
  1047: Tabasco sauce
@@ -7,7 +7,7 @@ nc: 80 # number of classes
7
7
 
8
8
  # gelan backbone
9
9
  backbone:
10
- - [-1, 1, Silence, []]
10
+ - [-1, 1, nn.Identity, []]
11
11
  - [-1, 1, Conv, [64, 3, 2]] # 1-P1/2
12
12
  - [-1, 1, Conv, [128, 3, 2]] # 2-P2/4
13
13
  - [-1, 1, RepNCSPELAN4, [256, 128, 64, 2]] # 3
@@ -7,7 +7,7 @@ nc: 80 # number of classes
7
7
 
8
8
  # gelan backbone
9
9
  backbone:
10
- - [-1, 1, Silence, []]
10
+ - [-1, 1, nn.Identity, []]
11
11
  - [-1, 1, Conv, [64, 3, 2]] # 1-P1/2
12
12
  - [-1, 1, Conv, [128, 3, 2]] # 2-P2/4
13
13
  - [-1, 1, RepNCSPELAN4, [256, 128, 64, 2]] # 3
@@ -0,0 +1,38 @@
1
+ # Ultralytics YOLO 🚀, AGPL-3.0 license
2
+ # YOLOv9t
3
+ # 603 layers, 20216160 parameters, 77.9 GFLOPs
4
+
5
+ # parameters
6
+ nc: 80 # number of classes
7
+
8
+ # gelan backbone
9
+ backbone:
10
+ - [-1, 1, Conv, [32, 3, 2]] # 0-P1/2
11
+ - [-1, 1, Conv, [64, 3, 2]] # 1-P2/4
12
+ - [-1, 1, RepNCSPELAN4, [128, 128, 64, 1]] # 2
13
+ - [-1, 1, AConv, [240]] # 3-P3/8
14
+ - [-1, 1, RepNCSPELAN4, [240, 240, 120, 1]] # 4
15
+ - [-1, 1, AConv, [360]] # 5-P4/16
16
+ - [-1, 1, RepNCSPELAN4, [360, 360, 180, 1]] # 6
17
+ - [-1, 1, AConv, [480]] # 7-P5/32
18
+ - [-1, 1, RepNCSPELAN4, [480, 480, 240, 1]] # 8
19
+ - [-1, 1, SPPELAN, [480, 240]] # 9
20
+
21
+ head:
22
+ - [-1, 1, nn.Upsample, [None, 2, "nearest"]]
23
+ - [[-1, 6], 1, Concat, [1]] # cat backbone P4
24
+ - [-1, 1, RepNCSPELAN4, [360, 360, 180, 1]] # 12
25
+
26
+ - [-1, 1, nn.Upsample, [None, 2, "nearest"]]
27
+ - [[-1, 4], 1, Concat, [1]] # cat backbone P3
28
+ - [-1, 1, RepNCSPELAN4, [240, 240, 120, 1]] # 15
29
+
30
+ - [-1, 1, AConv, [180]]
31
+ - [[-1, 12], 1, Concat, [1]] # cat head P4
32
+ - [-1, 1, RepNCSPELAN4, [360, 360, 180, 1]] # 18 (P4/16-medium)
33
+
34
+ - [-1, 1, AConv, [240]]
35
+ - [[-1, 9], 1, Concat, [1]] # cat head P5
36
+ - [-1, 1, RepNCSPELAN4, [480, 480, 240, 1]] # 21 (P5/32-large)
37
+
38
+ - [[15, 18, 21], 1, Detect, [nc]] # Detect(P3, P4, P5)
@@ -0,0 +1,38 @@
1
+ # Ultralytics YOLO 🚀, AGPL-3.0 license
2
+ # YOLOv9s
3
+ # 917 layers, 7318368 parameters, 27.6 GFLOPs
4
+
5
+ # parameters
6
+ nc: 80 # number of classes
7
+
8
+ # gelan backbone
9
+ backbone:
10
+ - [-1, 1, Conv, [32, 3, 2]] # 0-P1/2
11
+ - [-1, 1, Conv, [64, 3, 2]] # 1-P2/4
12
+ - [-1, 1, ELAN1, [64, 64, 32]] # 2
13
+ - [-1, 1, AConv, [128]] # 3-P3/8
14
+ - [-1, 1, RepNCSPELAN4, [128, 128, 64, 3]] # 4
15
+ - [-1, 1, AConv, [192]] # 5-P4/16
16
+ - [-1, 1, RepNCSPELAN4, [192, 192, 96, 3]] # 6
17
+ - [-1, 1, AConv, [256]] # 7-P5/32
18
+ - [-1, 1, RepNCSPELAN4, [256, 256, 128, 3]] # 8
19
+ - [-1, 1, SPPELAN, [256, 128]] # 9
20
+
21
+ head:
22
+ - [-1, 1, nn.Upsample, [None, 2, "nearest"]]
23
+ - [[-1, 6], 1, Concat, [1]] # cat backbone P4
24
+ - [-1, 1, RepNCSPELAN4, [192, 192, 96, 3]] # 12
25
+
26
+ - [-1, 1, nn.Upsample, [None, 2, "nearest"]]
27
+ - [[-1, 4], 1, Concat, [1]] # cat backbone P3
28
+ - [-1, 1, RepNCSPELAN4, [128, 128, 64, 3]] # 15
29
+
30
+ - [-1, 1, AConv, [96]]
31
+ - [[-1, 12], 1, Concat, [1]] # cat head P4
32
+ - [-1, 1, RepNCSPELAN4, [192, 192, 96, 3]] # 18 (P4/16-medium)
33
+
34
+ - [-1, 1, AConv, [128]]
35
+ - [[-1, 9], 1, Concat, [1]] # cat head P5
36
+ - [-1, 1, RepNCSPELAN4, [256, 256, 128, 3]] # 21 (P5/32-large)
37
+
38
+ - [[15, 18, 21], 1, Detect, [nc]] # Detect(P3, P4 P5)
@@ -0,0 +1,38 @@
1
+ # Ultralytics YOLO 🚀, AGPL-3.0 license
2
+ # YOLOv9t
3
+ # 917 layers, 2128720 parameters, 8.5 GFLOPs
4
+
5
+ # parameters
6
+ nc: 80 # number of classes
7
+
8
+ # gelan backbone
9
+ backbone:
10
+ - [-1, 1, Conv, [16, 3, 2]] # 0-P1/2
11
+ - [-1, 1, Conv, [32, 3, 2]] # 1-P2/4
12
+ - [-1, 1, ELAN1, [32, 32, 16]] # 2
13
+ - [-1, 1, AConv, [64]] # 3-P3/8
14
+ - [-1, 1, RepNCSPELAN4, [64, 64, 32, 3]] # 4
15
+ - [-1, 1, AConv, [96]] # 5-P4/16
16
+ - [-1, 1, RepNCSPELAN4, [96, 96, 48, 3]] # 6
17
+ - [-1, 1, AConv, [128]] # 7-P5/32
18
+ - [-1, 1, RepNCSPELAN4, [128, 128, 64, 3]] # 8
19
+ - [-1, 1, SPPELAN, [128, 64]] # 9
20
+
21
+ head:
22
+ - [-1, 1, nn.Upsample, [None, 2, "nearest"]]
23
+ - [[-1, 6], 1, Concat, [1]] # cat backbone P4
24
+ - [-1, 1, RepNCSPELAN4, [96, 96, 48, 3]] # 12
25
+
26
+ - [-1, 1, nn.Upsample, [None, 2, "nearest"]]
27
+ - [[-1, 4], 1, Concat, [1]] # cat backbone P3
28
+ - [-1, 1, RepNCSPELAN4, [64, 64, 32, 3]] # 15
29
+
30
+ - [-1, 1, AConv, [48]]
31
+ - [[-1, 12], 1, Concat, [1]] # cat head P4
32
+ - [-1, 1, RepNCSPELAN4, [96, 96, 48, 3]] # 18 (P4/16-medium)
33
+
34
+ - [-1, 1, AConv, [64]]
35
+ - [[-1, 9], 1, Concat, [1]] # cat head P5
36
+ - [-1, 1, RepNCSPELAN4, [128, 128, 64, 3]] # 21 (P5/32-large)
37
+
38
+ - [[15, 18, 21], 1, Detect, [nc]] # Detect(P3, P4, P5)
@@ -259,7 +259,7 @@ def layout():
259
259
 
260
260
  with col2:
261
261
  similarity_form(selected_imgs)
262
- display_labels = st.checkbox("Labels", value=False, key="display_labels")
262
+ st.checkbox("Labels", value=False, key="display_labels")
263
263
  utralytics_explorer_docs_callback()
264
264
 
265
265
 
@@ -23,9 +23,11 @@ from .block import (
23
23
  C3,
24
24
  C3TR,
25
25
  DFL,
26
+ ELAN1,
26
27
  SPP,
27
28
  SPPELAN,
28
29
  SPPF,
30
+ AConv,
29
31
  ADown,
30
32
  BNContrastiveHead,
31
33
  Bottleneck,
@@ -45,7 +47,6 @@ from .block import (
45
47
  RepC3,
46
48
  RepNCSPELAN4,
47
49
  ResNetLayer,
48
- Silence,
49
50
  )
50
51
  from .conv import (
51
52
  CBAM,
@@ -134,5 +135,6 @@ __all__ = (
134
135
  "SPPELAN",
135
136
  "CBFuse",
136
137
  "CBLinear",
137
- "Silence",
138
+ "AConv",
139
+ "ELAN1",
138
140
  )
@@ -32,7 +32,9 @@ __all__ = (
32
32
  "RepC3",
33
33
  "ResNetLayer",
34
34
  "RepNCSPELAN4",
35
+ "ELAN1",
35
36
  "ADown",
37
+ "AConv",
36
38
  "SPPELAN",
37
39
  "CBFuse",
38
40
  "CBLinear",
@@ -603,6 +605,33 @@ class RepNCSPELAN4(nn.Module):
603
605
  return self.cv4(torch.cat(y, 1))
604
606
 
605
607
 
608
+ class ELAN1(RepNCSPELAN4):
609
+ """ELAN1 module with 4 convolutions."""
610
+
611
+ def __init__(self, c1, c2, c3, c4):
612
+ """Initializes ELAN1 layer with specified channel sizes."""
613
+ super().__init__(c1, c2, c3, c4)
614
+ self.c = c3 // 2
615
+ self.cv1 = Conv(c1, c3, 1, 1)
616
+ self.cv2 = Conv(c3 // 2, c4, 3, 1)
617
+ self.cv3 = Conv(c4, c4, 3, 1)
618
+ self.cv4 = Conv(c3 + (2 * c4), c2, 1, 1)
619
+
620
+
621
+ class AConv(nn.Module):
622
+ """AConv."""
623
+
624
+ def __init__(self, c1, c2):
625
+ """Initializes AConv module with convolution layers."""
626
+ super().__init__()
627
+ self.cv1 = Conv(c1, c2, 3, 2, 1)
628
+
629
+ def forward(self, x):
630
+ """Forward pass through AConv layer."""
631
+ x = torch.nn.functional.avg_pool2d(x, 2, 1, 0, False, True)
632
+ return self.cv1(x)
633
+
634
+
606
635
  class ADown(nn.Module):
607
636
  """ADown."""
608
637
 
@@ -13,10 +13,12 @@ from ultralytics.nn.modules import (
13
13
  C2,
14
14
  C3,
15
15
  C3TR,
16
+ ELAN1,
16
17
  OBB,
17
18
  SPP,
18
19
  SPPELAN,
19
20
  SPPF,
21
+ AConv,
20
22
  ADown,
21
23
  Bottleneck,
22
24
  BottleneckCSP,
@@ -47,7 +49,6 @@ from ultralytics.nn.modules import (
47
49
  ResNetLayer,
48
50
  RTDETRDecoder,
49
51
  Segment,
50
- Silence, # noqa (equivalent to nn.Identity, unused in file but required to load YOLOv9 models)
51
52
  WorldDetect,
52
53
  )
53
54
  from ultralytics.utils import DEFAULT_CFG_DICT, DEFAULT_CFG_KEYS, LOGGER, colorstr, emojis, yaml_load
@@ -293,8 +294,12 @@ class DetectionModel(BaseModel):
293
294
  if isinstance(m, Detect): # includes all Detect subclasses like Segment, Pose, OBB, WorldDetect
294
295
  s = 256 # 2x min stride
295
296
  m.inplace = self.inplace
296
- forward = lambda x: self.forward(x)[0] if isinstance(m, (Segment, Pose, OBB)) else self.forward(x)
297
- m.stride = torch.tensor([s / x.shape[-2] for x in forward(torch.zeros(1, ch, s, s))]) # forward
297
+
298
+ def _forward(x):
299
+ """Performs a forward pass through the model, handling different Detect subclass types accordingly."""
300
+ return self.forward(x)[0] if isinstance(m, (Segment, Pose, OBB)) else self.forward(x)
301
+
302
+ m.stride = torch.tensor([s / x.shape[-2] for x in _forward(torch.zeros(1, ch, s, s))]) # forward
298
303
  self.stride = m.stride
299
304
  m.bias_init() # only run once
300
305
  else:
@@ -875,7 +880,9 @@ def parse_model(d, ch, verbose=True): # model_dict, input_channels(3)
875
880
  C2,
876
881
  C2f,
877
882
  RepNCSPELAN4,
883
+ ELAN1,
878
884
  ADown,
885
+ AConv,
879
886
  SPPELAN,
880
887
  C2fAttn,
881
888
  C3,
@@ -34,11 +34,13 @@ try:
34
34
  from pathlib import Path
35
35
 
36
36
  PREFIX = colorstr("MLflow: ")
37
- SANITIZE = lambda x: {k.replace("(", "").replace(")", ""): float(v) for k, v in x.items()}
38
37
 
39
38
  except (ImportError, AssertionError):
40
39
  mlflow = None
41
40
 
41
+ def sanitize_dict(x):
42
+ """Sanitize dictionary keys by removing parentheses and converting values to floats."""
43
+ return {k.replace("(", "").replace(")", ""): float(v) for k, v in x.items()}
42
44
 
43
45
  def on_pretrain_routine_end(trainer):
44
46
  """
@@ -88,8 +90,8 @@ def on_train_epoch_end(trainer):
88
90
  if mlflow:
89
91
  mlflow.log_metrics(
90
92
  metrics={
91
- **SANITIZE(trainer.lr),
92
- **SANITIZE(trainer.label_loss_items(trainer.tloss, prefix="train")),
93
+ **sanitize_dict(trainer.lr),
94
+ **sanitize_dict(trainer.label_loss_items(trainer.tloss, prefix="train")),
93
95
  },
94
96
  step=trainer.epoch,
95
97
  )
@@ -98,7 +100,7 @@ def on_train_epoch_end(trainer):
98
100
  def on_fit_epoch_end(trainer):
99
101
  """Log training metrics at the end of each fit epoch to MLflow."""
100
102
  if mlflow:
101
- mlflow.log_metrics(metrics=SANITIZE(trainer.metrics), step=trainer.epoch)
103
+ mlflow.log_metrics(metrics=sanitize_dict(trainer.metrics), step=trainer.epoch)
102
104
 
103
105
 
104
106
  def on_train_end(trainer):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ultralytics
3
- Version: 8.2.34
3
+ Version: 8.2.35
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
@@ -86,6 +86,9 @@ ultralytics/cfg/models/v9/yolov9c-seg.yaml
86
86
  ultralytics/cfg/models/v9/yolov9c.yaml
87
87
  ultralytics/cfg/models/v9/yolov9e-seg.yaml
88
88
  ultralytics/cfg/models/v9/yolov9e.yaml
89
+ ultralytics/cfg/models/v9/yolov9m.yaml
90
+ ultralytics/cfg/models/v9/yolov9s.yaml
91
+ ultralytics/cfg/models/v9/yolov9t.yaml
89
92
  ultralytics/cfg/trackers/botsort.yaml
90
93
  ultralytics/cfg/trackers/bytetrack.yaml
91
94
  ultralytics/data/__init__.py
File without changes
File without changes
File without changes