ultralytics 8.3.74__tar.gz → 8.3.75__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.
Files changed (246) hide show
  1. {ultralytics-8.3.74/ultralytics.egg-info → ultralytics-8.3.75}/PKG-INFO +1 -1
  2. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/__init__.py +1 -1
  3. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/data/utils.py +2 -2
  4. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/engine/exporter.py +8 -5
  5. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/callbacks/comet.py +31 -20
  6. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/metrics.py +1 -1
  7. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/ops.py +1 -1
  8. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/torch_utils.py +1 -1
  9. {ultralytics-8.3.74 → ultralytics-8.3.75/ultralytics.egg-info}/PKG-INFO +1 -1
  10. {ultralytics-8.3.74 → ultralytics-8.3.75}/LICENSE +0 -0
  11. {ultralytics-8.3.74 → ultralytics-8.3.75}/README.md +0 -0
  12. {ultralytics-8.3.74 → ultralytics-8.3.75}/pyproject.toml +0 -0
  13. {ultralytics-8.3.74 → ultralytics-8.3.75}/setup.cfg +0 -0
  14. {ultralytics-8.3.74 → ultralytics-8.3.75}/tests/__init__.py +0 -0
  15. {ultralytics-8.3.74 → ultralytics-8.3.75}/tests/conftest.py +0 -0
  16. {ultralytics-8.3.74 → ultralytics-8.3.75}/tests/test_cli.py +0 -0
  17. {ultralytics-8.3.74 → ultralytics-8.3.75}/tests/test_cuda.py +0 -0
  18. {ultralytics-8.3.74 → ultralytics-8.3.75}/tests/test_engine.py +0 -0
  19. {ultralytics-8.3.74 → ultralytics-8.3.75}/tests/test_exports.py +0 -0
  20. {ultralytics-8.3.74 → ultralytics-8.3.75}/tests/test_integrations.py +0 -0
  21. {ultralytics-8.3.74 → ultralytics-8.3.75}/tests/test_python.py +0 -0
  22. {ultralytics-8.3.74 → ultralytics-8.3.75}/tests/test_solutions.py +0 -0
  23. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/assets/bus.jpg +0 -0
  24. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/assets/zidane.jpg +0 -0
  25. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/__init__.py +0 -0
  26. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
  27. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
  28. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
  29. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
  30. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
  31. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
  32. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
  33. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/VOC.yaml +0 -0
  34. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
  35. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/african-wildlife.yaml +0 -0
  36. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/brain-tumor.yaml +0 -0
  37. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
  38. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
  39. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/coco.yaml +0 -0
  40. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
  41. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/coco128.yaml +0 -0
  42. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
  43. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
  44. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/coco8.yaml +0 -0
  45. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
  46. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/dog-pose.yaml +0 -0
  47. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/dota8.yaml +0 -0
  48. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/hand-keypoints.yaml +0 -0
  49. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/lvis.yaml +0 -0
  50. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/medical-pills.yaml +0 -0
  51. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
  52. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
  53. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/signature.yaml +0 -0
  54. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
  55. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/datasets/xView.yaml +0 -0
  56. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/default.yaml +0 -0
  57. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/11/yolo11-cls-resnet18.yaml +0 -0
  58. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/11/yolo11-cls.yaml +0 -0
  59. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/11/yolo11-obb.yaml +0 -0
  60. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/11/yolo11-pose.yaml +0 -0
  61. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/11/yolo11-seg.yaml +0 -0
  62. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/11/yolo11.yaml +0 -0
  63. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
  64. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
  65. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
  66. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
  67. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v10/yolov10b.yaml +0 -0
  68. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v10/yolov10l.yaml +0 -0
  69. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v10/yolov10m.yaml +0 -0
  70. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v10/yolov10n.yaml +0 -0
  71. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v10/yolov10s.yaml +0 -0
  72. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v10/yolov10x.yaml +0 -0
  73. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
  74. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
  75. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
  76. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
  77. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
  78. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
  79. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +0 -0
  80. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +0 -0
  81. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
  82. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
  83. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
  84. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
  85. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
  86. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
  87. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
  88. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
  89. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
  90. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
  91. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
  92. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
  93. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-world.yaml +0 -0
  94. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +0 -0
  95. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
  96. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v9/yolov9c-seg.yaml +0 -0
  97. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v9/yolov9c.yaml +0 -0
  98. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v9/yolov9e-seg.yaml +0 -0
  99. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v9/yolov9e.yaml +0 -0
  100. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v9/yolov9m.yaml +0 -0
  101. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v9/yolov9s.yaml +0 -0
  102. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/models/v9/yolov9t.yaml +0 -0
  103. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/solutions/default.yaml +0 -0
  104. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/trackers/botsort.yaml +0 -0
  105. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
  106. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/data/__init__.py +0 -0
  107. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/data/annotator.py +0 -0
  108. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/data/augment.py +0 -0
  109. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/data/base.py +0 -0
  110. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/data/build.py +0 -0
  111. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/data/converter.py +0 -0
  112. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/data/dataset.py +0 -0
  113. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/data/loaders.py +0 -0
  114. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/data/split_dota.py +0 -0
  115. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/engine/__init__.py +0 -0
  116. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/engine/model.py +0 -0
  117. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/engine/predictor.py +0 -0
  118. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/engine/results.py +0 -0
  119. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/engine/trainer.py +0 -0
  120. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/engine/tuner.py +0 -0
  121. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/engine/validator.py +0 -0
  122. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/hub/__init__.py +0 -0
  123. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/hub/auth.py +0 -0
  124. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/hub/google/__init__.py +0 -0
  125. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/hub/session.py +0 -0
  126. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/hub/utils.py +0 -0
  127. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/__init__.py +0 -0
  128. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/fastsam/__init__.py +0 -0
  129. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/fastsam/model.py +0 -0
  130. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/fastsam/predict.py +0 -0
  131. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/fastsam/utils.py +0 -0
  132. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/fastsam/val.py +0 -0
  133. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/nas/__init__.py +0 -0
  134. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/nas/model.py +0 -0
  135. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/nas/predict.py +0 -0
  136. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/nas/val.py +0 -0
  137. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/rtdetr/__init__.py +0 -0
  138. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/rtdetr/model.py +0 -0
  139. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/rtdetr/predict.py +0 -0
  140. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/rtdetr/train.py +0 -0
  141. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/rtdetr/val.py +0 -0
  142. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/sam/__init__.py +0 -0
  143. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/sam/amg.py +0 -0
  144. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/sam/build.py +0 -0
  145. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/sam/model.py +0 -0
  146. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/sam/modules/__init__.py +0 -0
  147. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/sam/modules/blocks.py +0 -0
  148. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/sam/modules/decoders.py +0 -0
  149. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/sam/modules/encoders.py +0 -0
  150. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/sam/modules/memory_attention.py +0 -0
  151. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/sam/modules/sam.py +0 -0
  152. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
  153. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/sam/modules/transformer.py +0 -0
  154. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/sam/modules/utils.py +0 -0
  155. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/sam/predict.py +0 -0
  156. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/utils/__init__.py +0 -0
  157. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/utils/loss.py +0 -0
  158. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/utils/ops.py +0 -0
  159. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/__init__.py +0 -0
  160. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/classify/__init__.py +0 -0
  161. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/classify/predict.py +0 -0
  162. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/classify/train.py +0 -0
  163. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/classify/val.py +0 -0
  164. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/detect/__init__.py +0 -0
  165. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/detect/predict.py +0 -0
  166. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/detect/train.py +0 -0
  167. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/detect/val.py +0 -0
  168. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/model.py +0 -0
  169. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/obb/__init__.py +0 -0
  170. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/obb/predict.py +0 -0
  171. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/obb/train.py +0 -0
  172. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/obb/val.py +0 -0
  173. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/pose/__init__.py +0 -0
  174. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/pose/predict.py +0 -0
  175. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/pose/train.py +0 -0
  176. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/pose/val.py +0 -0
  177. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/segment/__init__.py +0 -0
  178. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/segment/predict.py +0 -0
  179. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/segment/train.py +0 -0
  180. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/segment/val.py +0 -0
  181. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/world/__init__.py +0 -0
  182. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/world/train.py +0 -0
  183. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/models/yolo/world/train_world.py +0 -0
  184. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/nn/__init__.py +0 -0
  185. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/nn/autobackend.py +0 -0
  186. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/nn/modules/__init__.py +0 -0
  187. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/nn/modules/activation.py +0 -0
  188. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/nn/modules/block.py +0 -0
  189. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/nn/modules/conv.py +0 -0
  190. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/nn/modules/head.py +0 -0
  191. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/nn/modules/transformer.py +0 -0
  192. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/nn/modules/utils.py +0 -0
  193. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/nn/tasks.py +0 -0
  194. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/solutions/__init__.py +0 -0
  195. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/solutions/ai_gym.py +0 -0
  196. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/solutions/analytics.py +0 -0
  197. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/solutions/distance_calculation.py +0 -0
  198. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/solutions/heatmap.py +0 -0
  199. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/solutions/object_counter.py +0 -0
  200. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/solutions/parking_management.py +0 -0
  201. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/solutions/queue_management.py +0 -0
  202. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/solutions/region_counter.py +0 -0
  203. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/solutions/security_alarm.py +0 -0
  204. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/solutions/solutions.py +0 -0
  205. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/solutions/speed_estimation.py +0 -0
  206. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/solutions/streamlit_inference.py +0 -0
  207. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/solutions/trackzone.py +0 -0
  208. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/trackers/__init__.py +0 -0
  209. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/trackers/basetrack.py +0 -0
  210. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/trackers/bot_sort.py +0 -0
  211. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/trackers/byte_tracker.py +0 -0
  212. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/trackers/track.py +0 -0
  213. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/trackers/utils/__init__.py +0 -0
  214. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/trackers/utils/gmc.py +0 -0
  215. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/trackers/utils/kalman_filter.py +0 -0
  216. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/trackers/utils/matching.py +0 -0
  217. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/__init__.py +0 -0
  218. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/autobatch.py +0 -0
  219. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/benchmarks.py +0 -0
  220. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/callbacks/__init__.py +0 -0
  221. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/callbacks/base.py +0 -0
  222. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/callbacks/clearml.py +0 -0
  223. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/callbacks/dvc.py +0 -0
  224. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/callbacks/hub.py +0 -0
  225. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/callbacks/mlflow.py +0 -0
  226. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/callbacks/neptune.py +0 -0
  227. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/callbacks/raytune.py +0 -0
  228. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/callbacks/tensorboard.py +0 -0
  229. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/callbacks/wb.py +0 -0
  230. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/checks.py +0 -0
  231. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/dist.py +0 -0
  232. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/downloads.py +0 -0
  233. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/errors.py +0 -0
  234. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/files.py +0 -0
  235. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/instance.py +0 -0
  236. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/loss.py +0 -0
  237. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/patches.py +0 -0
  238. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/plotting.py +0 -0
  239. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/tal.py +0 -0
  240. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/triton.py +0 -0
  241. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics/utils/tuner.py +0 -0
  242. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics.egg-info/SOURCES.txt +0 -0
  243. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics.egg-info/dependency_links.txt +0 -0
  244. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics.egg-info/entry_points.txt +0 -0
  245. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics.egg-info/requires.txt +0 -0
  246. {ultralytics-8.3.74 → ultralytics-8.3.75}/ultralytics.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: ultralytics
3
- Version: 8.3.74
3
+ Version: 8.3.75
4
4
  Summary: Ultralytics YOLO 🚀 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
5
5
  Author-email: Glenn Jocher <glenn.jocher@ultralytics.com>, Jing Qiu <jing.qiu@ultralytics.com>
6
6
  Maintainer-email: Ultralytics <hello@ultralytics.com>
@@ -1,6 +1,6 @@
1
1
  # Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
2
2
 
3
- __version__ = "8.3.74"
3
+ __version__ = "8.3.75"
4
4
 
5
5
  import os
6
6
 
@@ -714,8 +714,8 @@ def save_dataset_cache_file(prefix, path, x, version):
714
714
  if is_dir_writeable(path.parent):
715
715
  if path.exists():
716
716
  path.unlink() # remove *.cache file if exists
717
- np.save(str(path), x) # save cache for next time
718
- path.with_suffix(".cache.npy").rename(path) # remove .npy suffix
717
+ with open(str(path), "wb") as file: # context manager here fixes windows async np.save bug
718
+ np.save(file, x)
719
719
  LOGGER.info(f"{prefix}New cache created: {path}")
720
720
  else:
721
721
  LOGGER.warning(f"{prefix}WARNING ⚠️ Cache directory {path.parent} is not writeable, cache not saved.")
@@ -288,8 +288,10 @@ class Exporter:
288
288
  self.args.nms = False
289
289
  self.args.conf = self.args.conf or 0.25 # set conf default value for nms export
290
290
  if edgetpu:
291
- if not LINUX:
292
- raise SystemError("Edge TPU export only supported on Linux. See https://coral.ai/docs/edgetpu/compiler")
291
+ if ARM64 and not LINUX:
292
+ raise SystemError(
293
+ "Edge TPU export only supported on non-aarch64 Linux. See https://coral.ai/docs/edgetpu/compiler"
294
+ )
293
295
  elif self.args.batch != 1: # see github.com/ultralytics/ultralytics/pull/13420
294
296
  LOGGER.warning("WARNING ⚠️ Edge TPU export requires batch size 1, setting batch=1.")
295
297
  self.args.batch = 1
@@ -307,6 +309,9 @@ class Exporter:
307
309
  "WARNING ⚠️ INT8 export requires a missing 'data' arg for calibration. "
308
310
  f"Using default 'data={self.args.data}'."
309
311
  )
312
+ if tfjs:
313
+ if ARM64 and LINUX:
314
+ raise SystemError("TensorFlow.js export not supported on ARM64 Linux")
310
315
 
311
316
  # Input
312
317
  im = torch.zeros(self.args.batch, 3, *self.imgsz).to(self.device)
@@ -986,6 +991,7 @@ class Exporter:
986
991
  "tflite_support<=0.4.3" if IS_JETSON else "tflite_support", # fix ImportError 'GLIBCXX_3.4.29'
987
992
  "flatbuffers>=23.5.26,<100", # update old 'flatbuffers' included inside tensorflow package
988
993
  "onnxruntime-gpu" if cuda else "onnxruntime",
994
+ "protobuf>=5", # tflite_support pins <=4 but >=5 works
989
995
  ),
990
996
  cmds="--extra-index-url https://pypi.ngc.nvidia.com", # onnx_graphsurgeon only on NVIDIA
991
997
  )
@@ -1127,9 +1133,6 @@ class Exporter:
1127
1133
  def export_tfjs(self, prefix=colorstr("TensorFlow.js:")):
1128
1134
  """YOLO TensorFlow.js export."""
1129
1135
  check_requirements("tensorflowjs")
1130
- if ARM64:
1131
- # Fix error: `np.object` was a deprecated alias for the builtin `object` when exporting to TF.js on ARM64
1132
- check_requirements("numpy==1.23.5")
1133
1136
  import tensorflow as tf
1134
1137
  import tensorflowjs as tfjs # noqa
1135
1138
 
@@ -1,5 +1,7 @@
1
1
  # Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
2
2
 
3
+ from types import SimpleNamespace
4
+
3
5
  from ultralytics.utils import LOGGER, RANK, SETTINGS, TESTS_RUNNING, ops
4
6
  from ultralytics.utils.metrics import ClassifyMetrics, DetMetrics, OBBMetrics, PoseMetrics, SegmentMetrics
5
7
 
@@ -29,9 +31,19 @@ except (ImportError, AssertionError):
29
31
  comet_ml = None
30
32
 
31
33
 
32
- def _get_comet_mode():
34
+ def _get_comet_mode() -> str:
33
35
  """Returns the mode of comet set in the environment variables, defaults to 'online' if not set."""
34
- return os.getenv("COMET_MODE", "online")
36
+ comet_mode = os.getenv("COMET_MODE")
37
+ if comet_mode is not None:
38
+ LOGGER.warning(
39
+ "WARNING ⚠️ The COMET_MODE environment variable is deprecated. "
40
+ "Please use COMET_START_ONLINE to set the Comet experiment mode. "
41
+ "To start an offline Comet experiment, use 'export COMET_START_ONLINE=0'. "
42
+ "If COMET_START_ONLINE is not set or is set to '1', an online Comet experiment will be created."
43
+ )
44
+ return comet_mode
45
+
46
+ return "online"
35
47
 
36
48
 
37
49
  def _get_comet_model_name():
@@ -65,22 +77,24 @@ def _should_log_image_predictions():
65
77
  return os.getenv("COMET_EVAL_LOG_IMAGE_PREDICTIONS", "true").lower() == "true"
66
78
 
67
79
 
68
- def _get_experiment_type(mode, project_name):
69
- """Return an experiment based on mode and project name."""
70
- if mode == "offline":
71
- return comet_ml.OfflineExperiment(project_name=project_name)
72
-
73
- return comet_ml.Experiment(project_name=project_name)
74
-
80
+ def _resume_or_create_experiment(args: SimpleNamespace) -> None:
81
+ """
82
+ Resumes CometML experiment or creates a new experiment based on args.
75
83
 
76
- def _create_experiment(args):
77
- """Ensures that the experiment object is only created in a single process during distributed training."""
84
+ Ensures that the experiment object is only created in a single process during distributed training.
85
+ """
78
86
  if RANK not in {-1, 0}:
79
87
  return
80
- try:
88
+
89
+ # Set environment variable (if not set by the user) to configure the Comet experiment's online mode under the hood.
90
+ # IF COMET_START_ONLINE is set by the user it will override COMET_MODE value.
91
+ if os.getenv("COMET_START_ONLINE") is None:
81
92
  comet_mode = _get_comet_mode()
93
+ os.environ["COMET_START_ONLINE"] = "1" if comet_mode != "offline" else "0"
94
+
95
+ try:
82
96
  _project_name = os.getenv("COMET_PROJECT_NAME", args.project)
83
- experiment = _get_experiment_type(comet_mode, _project_name)
97
+ experiment = comet_ml.start(project_name=_project_name)
84
98
  experiment.log_parameters(vars(args))
85
99
  experiment.log_others(
86
100
  {
@@ -313,15 +327,12 @@ def _log_model(experiment, trainer):
313
327
 
314
328
  def on_pretrain_routine_start(trainer):
315
329
  """Creates or resumes a CometML experiment at the start of a YOLO pre-training routine."""
316
- experiment = comet_ml.get_global_experiment()
317
- is_alive = getattr(experiment, "alive", False)
318
- if not experiment or not is_alive:
319
- _create_experiment(trainer.args)
330
+ _resume_or_create_experiment(trainer.args)
320
331
 
321
332
 
322
333
  def on_train_epoch_end(trainer):
323
334
  """Log metrics and save batch images at the end of training epochs."""
324
- experiment = comet_ml.get_global_experiment()
335
+ experiment = comet_ml.get_running_experiment()
325
336
  if not experiment:
326
337
  return
327
338
 
@@ -334,7 +345,7 @@ def on_train_epoch_end(trainer):
334
345
 
335
346
  def on_fit_epoch_end(trainer):
336
347
  """Logs model assets at the end of each epoch."""
337
- experiment = comet_ml.get_global_experiment()
348
+ experiment = comet_ml.get_running_experiment()
338
349
  if not experiment:
339
350
  return
340
351
 
@@ -362,7 +373,7 @@ def on_fit_epoch_end(trainer):
362
373
 
363
374
  def on_train_end(trainer):
364
375
  """Perform operations at the end of training."""
365
- experiment = comet_ml.get_global_experiment()
376
+ experiment = comet_ml.get_running_experiment()
366
377
  if not experiment:
367
378
  return
368
379
 
@@ -440,7 +440,7 @@ class ConfusionMatrix:
440
440
 
441
441
  def print(self):
442
442
  """Print the confusion matrix to the console."""
443
- for i in range(self.nc + 1):
443
+ for i in range(self.matrix.shape[0]):
444
444
  LOGGER.info(" ".join(map(str, self.matrix[i])))
445
445
 
446
446
 
@@ -59,7 +59,7 @@ class Profile(contextlib.ContextDecorator):
59
59
  """Get current time."""
60
60
  if self.cuda:
61
61
  torch.cuda.synchronize(self.device)
62
- return time.time()
62
+ return time.perf_counter()
63
63
 
64
64
 
65
65
  def segment2box(segment, width=640, height=640):
@@ -746,7 +746,7 @@ class EarlyStopping:
746
746
  if fitness is None: # check if fitness=None (happens when val=False)
747
747
  return False
748
748
 
749
- if fitness >= self.best_fitness: # >= 0 to allow for early zero-fitness stage of training
749
+ if fitness > self.best_fitness or self.best_fitness == 0: # allow for early zero-fitness stage of training
750
750
  self.best_epoch = epoch
751
751
  self.best_fitness = fitness
752
752
  delta = epoch - self.best_epoch # epochs without improvement
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: ultralytics
3
- Version: 8.3.74
3
+ Version: 8.3.75
4
4
  Summary: Ultralytics YOLO 🚀 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
5
5
  Author-email: Glenn Jocher <glenn.jocher@ultralytics.com>, Jing Qiu <jing.qiu@ultralytics.com>
6
6
  Maintainer-email: Ultralytics <hello@ultralytics.com>
File without changes
File without changes
File without changes