mblt-vision-python 0.0.2__tar.gz → 0.0.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (458) hide show
  1. mblt_vision_python-0.0.4/MANIFEST.in +6 -0
  2. {mblt_vision_python-0.0.2/mblt_vision_python.egg-info → mblt_vision_python-0.0.4}/PKG-INFO +26 -4
  3. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/README.md +25 -3
  4. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/__init__.py +4 -1
  5. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/_tasks.py +1 -0
  6. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/cli/_vision.py +177 -0
  7. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/cli/predict.py +52 -2
  8. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/cli/val.py +137 -3
  9. mblt_vision_python-0.0.4/mblt_vision/datasets/sa-v.yaml +27 -0
  10. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/face_detection/__init__.py +18 -4
  11. mblt_vision_python-0.0.4/mblt_vision/mask_generation/__init__.py +7 -0
  12. mblt_vision_python-0.0.4/mblt_vision/mask_generation/_sam2_contracts.py +328 -0
  13. mblt_vision_python-0.0.4/mblt_vision/mask_generation/_sam2_host.py +403 -0
  14. mblt_vision_python-0.0.4/mblt_vision/mask_generation/_sam2_prompt.py +223 -0
  15. mblt_vision_python-0.0.4/mblt_vision/mask_generation/sam2.py +780 -0
  16. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/CoAtNet_0_RW_224.yaml +1 -1
  17. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/CoAtNet_1_RW_224.yaml +1 -1
  18. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/CoAtNet_2_RW_224.yaml +1 -1
  19. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DeiT3_Base_Patch16_224.yaml +1 -1
  20. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DeiT3_Large_Patch16_224.yaml +1 -1
  21. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DeiT3_Medium_Patch16_224.yaml +1 -1
  22. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DeiT3_Small_Patch16_224.yaml +1 -1
  23. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DeiT_Base_Patch16_224.yaml +1 -1
  24. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DeiT_Small_Patch16_224.yaml +1 -1
  25. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DeiT_Tiny_Patch16_224.yaml +1 -1
  26. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/EfficientFormer_L1.yaml +1 -1
  27. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/EfficientFormer_L3.yaml +1 -1
  28. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/EfficientFormer_L7.yaml +1 -1
  29. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/LeViT_Conv_128.yaml +1 -1
  30. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/LeViT_Conv_128S.yaml +1 -1
  31. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/LeViT_Conv_192.yaml +1 -1
  32. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/LeViT_Conv_256.yaml +1 -1
  33. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/LeViT_Conv_384.yaml +1 -1
  34. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RepViT_M0_9.yaml +1 -1
  35. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RepViT_M1.yaml +1 -1
  36. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RepViT_M1_0.yaml +1 -1
  37. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RepViT_M1_1.yaml +1 -1
  38. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RepViT_M1_5.yaml +1 -1
  39. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RepViT_M2.yaml +1 -1
  40. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RepViT_M2_3.yaml +1 -1
  41. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RepViT_M3.yaml +1 -1
  42. mblt_vision_python-0.0.4/mblt_vision/models/SAM2HieraLarge.yaml +18 -0
  43. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_Base_Patch16_224.yaml +1 -1
  44. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_Base_Patch32_224.yaml +1 -1
  45. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_Base_Patch8_224.yaml +1 -1
  46. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_Large_Patch16_224.yaml +1 -1
  47. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_Small_Patch16_224.yaml +1 -1
  48. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_Small_Patch32_224.yaml +1 -1
  49. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_Tiny_Patch16_224.yaml +1 -1
  50. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/VisFormer_Small.yaml +1 -1
  51. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/VisFormer_Tiny.yaml +1 -1
  52. mblt_vision_python-0.0.4/mblt_vision/models/YOLOv5m-face.yaml +44 -0
  53. mblt_vision_python-0.0.4/mblt_vision/models/YOLOv5n-0.5-face.yaml +44 -0
  54. mblt_vision_python-0.0.4/mblt_vision/models/YOLOv5n-face.yaml +44 -0
  55. mblt_vision_python-0.0.4/mblt_vision/models/YOLOv5s-face.yaml +44 -0
  56. mblt_vision_python-0.0.4/mblt_vision/models/YOLOv7-face.yaml +44 -0
  57. mblt_vision_python-0.0.4/mblt_vision/models/YOLOv7-lite-s-face.yaml +44 -0
  58. mblt_vision_python-0.0.4/mblt_vision/models/YOLOv7-lite-t-face.yaml +44 -0
  59. mblt_vision_python-0.0.4/mblt_vision/models/YOLOv7-tiny-face.yaml +44 -0
  60. mblt_vision_python-0.0.4/mblt_vision/models/YOLOv7s-face.yaml +44 -0
  61. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8l-face.yaml +4 -2
  62. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8m-face.yaml +4 -2
  63. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/datasets/__init__.py +4 -0
  64. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/datasets/dataloader.py +87 -0
  65. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/datasets/organizer.py +231 -0
  66. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/datasets/readiness.py +133 -0
  67. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/evaluation/__init__.py +10 -0
  68. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/evaluation/eval_ade20k.py +28 -18
  69. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/evaluation/eval_dota.py +40 -13
  70. mblt_vision_python-0.0.4/mblt_vision/utils/evaluation/eval_sav.py +467 -0
  71. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/evaluation/eval_widerface.py +139 -70
  72. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/postprocess/build_post.py +33 -3
  73. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/postprocess/common.py +176 -28
  74. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/postprocess/yolo_anchor_post.py +5 -1
  75. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/postprocess/yolo_anchorless_post.py +13 -1
  76. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/postprocess/yolo_dflfree_post.py +13 -2
  77. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/postprocess/yolo_nmsfree_post.py +82 -1
  78. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/preprocess/letterbox.py +12 -1
  79. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/results.py +100 -5
  80. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/wrapper.py +45 -22
  81. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4/mblt_vision_python.egg-info}/PKG-INFO +26 -4
  82. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision_python.egg-info/SOURCES.txt +23 -2
  83. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_api.py +1 -0
  84. mblt_vision_python-0.0.4/tests/test_cli.py +439 -0
  85. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_dataset_organizer.py +116 -0
  86. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_dataset_readiness.py +166 -0
  87. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_eval_dota.py +57 -0
  88. mblt_vision_python-0.0.4/tests/test_eval_sav.py +326 -0
  89. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_eval_widerface.py +67 -0
  90. mblt_vision_python-0.0.4/tests/test_face_detection.py +230 -0
  91. mblt_vision_python-0.0.4/tests/test_mask_generation.py +1171 -0
  92. mblt_vision_python-0.0.4/tests/test_mask_generation_hardware.py +155 -0
  93. mblt_vision_python-0.0.4/tests/test_mask_generation_onnx.py +50 -0
  94. mblt_vision_python-0.0.4/tests/test_mask_generation_prompt_encoding.py +161 -0
  95. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_model_metadata.py +1 -0
  96. mblt_vision_python-0.0.2/mblt_vision/models/YOLOv6m-face.yaml +0 -27
  97. mblt_vision_python-0.0.2/mblt_vision/models/YOLOv6n-face.yaml +0 -27
  98. mblt_vision_python-0.0.2/tests/test_cli.py +0 -107
  99. mblt_vision_python-0.0.2/tests/test_face_detection.py +0 -123
  100. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/LICENSE +0 -0
  101. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/_api.py +0 -0
  102. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/_compat.py +0 -0
  103. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/_model_paths.py +0 -0
  104. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/benchmark/__init__.py +0 -0
  105. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/benchmark/argparse_utils.py +0 -0
  106. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/benchmark/chart_utils.py +0 -0
  107. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/benchmark/io_utils.py +0 -0
  108. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/benchmark/summary_utils.py +0 -0
  109. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/cli/__init__.py +0 -0
  110. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/cli/__main__.py +0 -0
  111. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/cli/compile.py +0 -0
  112. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/cli/main.py +0 -0
  113. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/compile/__init__.py +0 -0
  114. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/compile/vision.py +0 -0
  115. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/datasets/__init__.py +0 -0
  116. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/datasets/ade20k.yaml +0 -0
  117. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/datasets/cityscapes.yaml +0 -0
  118. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/datasets/coco.yaml +0 -0
  119. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/datasets/dotav1.yaml +0 -0
  120. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/datasets/imagenet.yaml +0 -0
  121. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/datasets/imagenet_synsets.txt +0 -0
  122. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/datasets/nyu-depth.yaml +0 -0
  123. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/datasets/registry.py +0 -0
  124. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/datasets/widerface.yaml +0 -0
  125. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/depth_estimation/__init__.py +0 -0
  126. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/image_classification/__init__.py +0 -0
  127. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/instance_segmentation/__init__.py +0 -0
  128. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/AlexNet.yaml +0 -0
  129. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/CAFormer_B36.yaml +0 -0
  130. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/CAFormer_M36.yaml +0 -0
  131. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/CAFormer_S18.yaml +0 -0
  132. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/CAFormer_S36.yaml +0 -0
  133. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ConvFormer_B36.yaml +0 -0
  134. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ConvFormer_M36.yaml +0 -0
  135. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ConvFormer_S18.yaml +0 -0
  136. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ConvFormer_S36.yaml +0 -0
  137. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ConvNext_Base.yaml +0 -0
  138. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ConvNext_Large.yaml +0 -0
  139. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ConvNext_Small.yaml +0 -0
  140. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ConvNext_Tiny.yaml +0 -0
  141. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DeiT3_Base_Patch16_384.yaml +0 -0
  142. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DeiT3_Large_Patch16_384.yaml +0 -0
  143. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DeiT3_Small_Patch16_384.yaml +0 -0
  144. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DeiT_Base_Patch16_384.yaml +0 -0
  145. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DenseNet121.yaml +0 -0
  146. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DenseNet161.yaml +0 -0
  147. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DenseNet169.yaml +0 -0
  148. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/DenseNet201.yaml +0 -0
  149. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/EfficientNet_B0.yaml +0 -0
  150. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/EfficientNet_B1.yaml +0 -0
  151. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/EfficientNet_B2.yaml +0 -0
  152. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/EfficientNet_B3.yaml +0 -0
  153. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/EfficientNet_B4.yaml +0 -0
  154. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/EfficientNet_B5.yaml +0 -0
  155. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/EfficientNet_B6.yaml +0 -0
  156. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/EfficientNet_B7.yaml +0 -0
  157. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/EfficientNet_V2_L.yaml +0 -0
  158. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/EfficientNet_V2_M.yaml +0 -0
  159. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/EfficientNet_V2_S.yaml +0 -0
  160. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/FlexiVit_Base.yaml +0 -0
  161. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/FlexiVit_Large.yaml +0 -0
  162. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/FlexiVit_Small.yaml +0 -0
  163. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/GELANc-seg.yaml +0 -0
  164. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/GELANc.yaml +0 -0
  165. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/GELANe.yaml +0 -0
  166. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/GELANm.yaml +0 -0
  167. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/GELANs.yaml +0 -0
  168. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/GoogLeNet.yaml +0 -0
  169. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/Inception_V3.yaml +0 -0
  170. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/MNASNet0_5.yaml +0 -0
  171. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/MNASNet0_75.yaml +0 -0
  172. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/MNASNet1_0.yaml +0 -0
  173. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/MNASNet1_3.yaml +0 -0
  174. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/MobileNet_V2.yaml +0 -0
  175. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/MobileNet_V3_Large.yaml +0 -0
  176. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/MobileNet_V3_Small.yaml +0 -0
  177. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RegNet_X_16GF.yaml +0 -0
  178. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RegNet_X_1_6GF.yaml +0 -0
  179. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RegNet_X_32GF.yaml +0 -0
  180. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RegNet_X_3_2GF.yaml +0 -0
  181. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RegNet_X_400MF.yaml +0 -0
  182. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RegNet_X_800MF.yaml +0 -0
  183. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RegNet_X_8GF.yaml +0 -0
  184. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RegNet_Y_16GF.yaml +0 -0
  185. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RegNet_Y_1_6GF.yaml +0 -0
  186. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RegNet_Y_32GF.yaml +0 -0
  187. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RegNet_Y_3_2GF.yaml +0 -0
  188. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RegNet_Y_400MF.yaml +0 -0
  189. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RegNet_Y_800MF.yaml +0 -0
  190. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/RegNet_Y_8GF.yaml +0 -0
  191. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ResNeXt101_32X8D.yaml +0 -0
  192. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ResNeXt101_64X4D.yaml +0 -0
  193. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ResNeXt50_32X4D.yaml +0 -0
  194. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ResNet101.yaml +0 -0
  195. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ResNet152.yaml +0 -0
  196. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ResNet18.yaml +0 -0
  197. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ResNet34.yaml +0 -0
  198. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ResNet50.yaml +0 -0
  199. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ShuffleNet_V2_X0_5.yaml +0 -0
  200. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ShuffleNet_V2_X1_0.yaml +0 -0
  201. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ShuffleNet_V2_X1_5.yaml +0 -0
  202. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ShuffleNet_V2_X2_0.yaml +0 -0
  203. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/SqueezeNet1_0.yaml +0 -0
  204. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/SqueezeNet1_1.yaml +0 -0
  205. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/Swin_B.yaml +0 -0
  206. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/Swin_S.yaml +0 -0
  207. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/Swin_T.yaml +0 -0
  208. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/VGG11.yaml +0 -0
  209. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/VGG11_BN.yaml +0 -0
  210. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/VGG13.yaml +0 -0
  211. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/VGG13_BN.yaml +0 -0
  212. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/VGG16.yaml +0 -0
  213. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/VGG16_BN.yaml +0 -0
  214. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/VGG19.yaml +0 -0
  215. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/VGG19_BN.yaml +0 -0
  216. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_B_16.yaml +0 -0
  217. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_B_32.yaml +0 -0
  218. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_Base_Patch16_384.yaml +0 -0
  219. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_Base_Patch32_384.yaml +0 -0
  220. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_L_16.yaml +0 -0
  221. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_L_32.yaml +0 -0
  222. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_Large_Patch16_384.yaml +0 -0
  223. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_Large_Patch32_384.yaml +0 -0
  224. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_Small_Patch16_384.yaml +0 -0
  225. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_Small_Patch32_384.yaml +0 -0
  226. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/ViT_Tiny_Patch16_384.yaml +0 -0
  227. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/Wide_ResNet101_2.yaml +0 -0
  228. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/Wide_ResNet50_2.yaml +0 -0
  229. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11l-cls.yaml +0 -0
  230. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11l-face.yaml +0 -0
  231. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11l-obb.yaml +0 -0
  232. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11l-pose.yaml +0 -0
  233. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11l-seg.yaml +0 -0
  234. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11l.yaml +0 -0
  235. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11m-cls.yaml +0 -0
  236. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11m-face.yaml +0 -0
  237. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11m-obb.yaml +0 -0
  238. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11m-pose.yaml +0 -0
  239. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11m-seg.yaml +0 -0
  240. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11m.yaml +0 -0
  241. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11n-cls.yaml +0 -0
  242. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11n-face.yaml +0 -0
  243. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11n-obb.yaml +0 -0
  244. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11n-pose.yaml +0 -0
  245. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11n-seg.yaml +0 -0
  246. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11n.yaml +0 -0
  247. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11s-cls.yaml +0 -0
  248. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11s-face.yaml +0 -0
  249. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11s-obb.yaml +0 -0
  250. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11s-pose.yaml +0 -0
  251. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11s-seg.yaml +0 -0
  252. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11s.yaml +0 -0
  253. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11x-cls.yaml +0 -0
  254. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11x-obb.yaml +0 -0
  255. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11x-pose.yaml +0 -0
  256. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11x-seg.yaml +0 -0
  257. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO11x.yaml +0 -0
  258. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO12l-face.yaml +0 -0
  259. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO12l-seg.yaml +0 -0
  260. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO12l.yaml +0 -0
  261. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO12m-face.yaml +0 -0
  262. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO12m-seg.yaml +0 -0
  263. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO12m.yaml +0 -0
  264. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO12n-face.yaml +0 -0
  265. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO12n-seg.yaml +0 -0
  266. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO12n.yaml +0 -0
  267. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO12s-face.yaml +0 -0
  268. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO12s-seg.yaml +0 -0
  269. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO12s.yaml +0 -0
  270. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO12x-seg.yaml +0 -0
  271. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO12x.yaml +0 -0
  272. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26l-cls.yaml +0 -0
  273. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26l-depth.yaml +0 -0
  274. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26l-distill.yaml +0 -0
  275. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26l-obb.yaml +0 -0
  276. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26l-pose.yaml +0 -0
  277. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26l-seg.yaml +0 -0
  278. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26l-sem-ade20k.yaml +0 -0
  279. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26l-sem.yaml +0 -0
  280. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26l.yaml +0 -0
  281. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26m-cls.yaml +0 -0
  282. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26m-depth.yaml +0 -0
  283. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26m-distill.yaml +0 -0
  284. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26m-obb.yaml +0 -0
  285. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26m-pose.yaml +0 -0
  286. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26m-seg.yaml +0 -0
  287. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26m-sem-ade20k.yaml +0 -0
  288. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26m-sem.yaml +0 -0
  289. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26m.yaml +0 -0
  290. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26n-cls.yaml +0 -0
  291. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26n-depth.yaml +0 -0
  292. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26n-distill.yaml +0 -0
  293. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26n-obb.yaml +0 -0
  294. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26n-pose.yaml +0 -0
  295. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26n-seg.yaml +0 -0
  296. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26n-sem-ade20k.yaml +0 -0
  297. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26n-sem.yaml +0 -0
  298. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26n.yaml +0 -0
  299. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26s-cls.yaml +0 -0
  300. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26s-depth.yaml +0 -0
  301. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26s-distill.yaml +0 -0
  302. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26s-obb.yaml +0 -0
  303. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26s-pose.yaml +0 -0
  304. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26s-seg.yaml +0 -0
  305. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26s-sem-ade20k.yaml +0 -0
  306. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26s-sem.yaml +0 -0
  307. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26s.yaml +0 -0
  308. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26x-cls.yaml +0 -0
  309. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26x-depth.yaml +0 -0
  310. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26x-distill.yaml +0 -0
  311. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26x-obb.yaml +0 -0
  312. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26x-pose.yaml +0 -0
  313. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26x-seg.yaml +0 -0
  314. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26x-sem-ade20k.yaml +0 -0
  315. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26x-sem.yaml +0 -0
  316. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLO26x.yaml +0 -0
  317. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv10b.yaml +0 -0
  318. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv10l-face.yaml +0 -0
  319. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv10l.yaml +0 -0
  320. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv10m-face.yaml +0 -0
  321. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv10m.yaml +0 -0
  322. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv10n-face.yaml +0 -0
  323. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv10n.yaml +0 -0
  324. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv10s-face.yaml +0 -0
  325. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv10s.yaml +0 -0
  326. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv10x.yaml +0 -0
  327. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv3-spp.yaml +0 -0
  328. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv3-sppu.yaml +0 -0
  329. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv3-tiny.yaml +0 -0
  330. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv3-tinyu.yaml +0 -0
  331. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv3.yaml +0 -0
  332. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv3u.yaml +0 -0
  333. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5l-cls.yaml +0 -0
  334. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5l-seg.yaml +0 -0
  335. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5l.yaml +0 -0
  336. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5l6.yaml +0 -0
  337. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5l6u.yaml +0 -0
  338. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5lu.yaml +0 -0
  339. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5m-cls.yaml +0 -0
  340. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5m-seg.yaml +0 -0
  341. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5m.yaml +0 -0
  342. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5m6.yaml +0 -0
  343. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5m6u.yaml +0 -0
  344. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5mu.yaml +0 -0
  345. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5n-cls.yaml +0 -0
  346. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5n-seg.yaml +0 -0
  347. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5n.yaml +0 -0
  348. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5n6.yaml +0 -0
  349. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5n6u.yaml +0 -0
  350. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5nu.yaml +0 -0
  351. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5s-cls.yaml +0 -0
  352. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5s-seg.yaml +0 -0
  353. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5s.yaml +0 -0
  354. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5s6.yaml +0 -0
  355. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5s6u.yaml +0 -0
  356. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5su.yaml +0 -0
  357. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5x-cls.yaml +0 -0
  358. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5x-seg.yaml +0 -0
  359. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5x.yaml +0 -0
  360. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5x6.yaml +0 -0
  361. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5x6u.yaml +0 -0
  362. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv5xu.yaml +0 -0
  363. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv7.yaml +0 -0
  364. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv7d6.yaml +0 -0
  365. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv7e6.yaml +0 -0
  366. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv7e6e.yaml +0 -0
  367. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv7w6.yaml +0 -0
  368. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv7x.yaml +0 -0
  369. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8l-cls.yaml +0 -0
  370. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8l-obb.yaml +0 -0
  371. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8l-pose.yaml +0 -0
  372. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8l-seg.yaml +0 -0
  373. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8l.yaml +0 -0
  374. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8m-cls.yaml +0 -0
  375. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8m-obb.yaml +0 -0
  376. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8m-pose.yaml +0 -0
  377. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8m-seg.yaml +0 -0
  378. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8m.yaml +0 -0
  379. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8n-cls.yaml +0 -0
  380. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8n-face.yaml +0 -0
  381. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8n-obb.yaml +0 -0
  382. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8n-pose.yaml +0 -0
  383. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8n-seg.yaml +0 -0
  384. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8n.yaml +0 -0
  385. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8s-cls.yaml +0 -0
  386. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8s-obb.yaml +0 -0
  387. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8s-pose.yaml +0 -0
  388. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8s-seg.yaml +0 -0
  389. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8s.yaml +0 -0
  390. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8x-cls.yaml +0 -0
  391. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8x-obb.yaml +0 -0
  392. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8x-pose-p6.yaml +0 -0
  393. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8x-pose.yaml +0 -0
  394. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8x-seg.yaml +0 -0
  395. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv8x.yaml +0 -0
  396. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv9c-seg.yaml +0 -0
  397. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv9c.yaml +0 -0
  398. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv9e-seg.yaml +0 -0
  399. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv9e.yaml +0 -0
  400. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv9m.yaml +0 -0
  401. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv9s.yaml +0 -0
  402. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/models/YOLOv9t.yaml +0 -0
  403. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/obb/__init__.py +0 -0
  404. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/object_detection/__init__.py +0 -0
  405. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/pose_estimation/__init__.py +0 -0
  406. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/py.typed +0 -0
  407. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/semantic_segmentation/__init__.py +0 -0
  408. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/__init__.py +0 -0
  409. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/datasets/ade20k.py +0 -0
  410. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/datasets/cityscapes.py +0 -0
  411. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/datasets/coco.py +0 -0
  412. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/datasets/dotav1.py +0 -0
  413. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/datasets/imagenet.py +0 -0
  414. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/evaluation/_result.py +0 -0
  415. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/evaluation/eval_cityscapes.py +0 -0
  416. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/evaluation/eval_coco.py +0 -0
  417. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/evaluation/eval_imagenet.py +0 -0
  418. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/evaluation/eval_nyu_depth.py +0 -0
  419. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/letterbox.py +0 -0
  420. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/postprocess/__init__.py +0 -0
  421. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/postprocess/_letterbox.py +0 -0
  422. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/postprocess/base.py +0 -0
  423. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/postprocess/cls_post.py +0 -0
  424. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/postprocess/depth_post.py +0 -0
  425. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/postprocess/semantic_seg_post.py +0 -0
  426. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/preprocess/__init__.py +0 -0
  427. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/preprocess/_validation.py +0 -0
  428. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/preprocess/base.py +0 -0
  429. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/preprocess/build_pre.py +0 -0
  430. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/preprocess/center_crop.py +0 -0
  431. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/preprocess/normalize.py +0 -0
  432. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/preprocess/order.py +0 -0
  433. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/preprocess/reader.py +0 -0
  434. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/preprocess/resize.py +0 -0
  435. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/preprocess/yolo_pre.py +0 -0
  436. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision/utils/types.py +0 -0
  437. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision_python.egg-info/dependency_links.txt +0 -0
  438. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision_python.egg-info/entry_points.txt +0 -0
  439. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision_python.egg-info/requires.txt +0 -0
  440. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/mblt_vision_python.egg-info/top_level.txt +0 -0
  441. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/pyproject.toml +0 -0
  442. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/setup.cfg +0 -0
  443. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_benchmark_vision.py +0 -0
  444. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_compile_vision.py +0 -0
  445. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_dataloader.py +0 -0
  446. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_depth_estimation.py +0 -0
  447. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_eval_coco.py +0 -0
  448. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_eval_imagenet.py +0 -0
  449. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_eval_nyu_depth.py +0 -0
  450. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_model_aliasing.py +0 -0
  451. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_mxq_inference.py +0 -0
  452. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_onnx_classification.py +0 -0
  453. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_onnx_yolo.py +0 -0
  454. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_postprocess_hierarchy.py +0 -0
  455. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_preprocess_validation.py +0 -0
  456. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_results.py +0 -0
  457. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_semantic_segmentation.py +0 -0
  458. {mblt_vision_python-0.0.2 → mblt_vision_python-0.0.4}/tests/test_wrapper.py +0 -0
@@ -0,0 +1,6 @@
1
+ # Sample images under assets/ are development-only inputs for manual QA and
2
+ # documented CLI examples. They are deliberately tracked in git but must never
3
+ # reach a distributed artifact. setuptools already excludes them (only
4
+ # `mblt_vision*` packages are built), so this prunes them explicitly to pin the
5
+ # intent against future packaging changes rather than to fix a current leak.
6
+ prune assets
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mblt-vision-python
3
- Version: 0.0.2
3
+ Version: 0.0.4
4
4
  Summary: Mobilint NPU vision models: classification, detection, segmentation, pose
5
5
  Author: Mobilint
6
6
  License: BSD-3-Clause
@@ -84,7 +84,8 @@ pip install "mblt-vision-python[onnxruntime-gpu]"
84
84
 
85
85
  ## Quick start
86
86
 
87
- Each model includes its matching preprocess and postprocess behavior:
87
+ Most models include matching `preprocess`/`postprocess` behavior around a raw
88
+ call (mask generation is the exception -- see below):
88
89
 
89
90
  ```python
90
91
  from mblt_vision import ResNet50
@@ -114,6 +115,20 @@ code should use the task subpackages (for example,
114
115
 
115
116
  `obb` is the canonical oriented-bounding-box task name.
116
117
 
118
+ Mask generation is promptable, so `SAM2HieraLarge` takes point prompts and
119
+ returns candidate masks from a single `predict()` call instead of the separate
120
+ `preprocess`/raw-call/`postprocess` steps above:
121
+
122
+ ```python
123
+ from mblt_vision.mask_generation import SAM2HieraLarge
124
+
125
+ model = SAM2HieraLarge() # framework="onnx" for ONNX Runtime inference
126
+ result = model.predict("image.jpg", points=[[320, 240]], labels=[1])
127
+ ```
128
+
129
+ See the [mask generation section](mblt_vision/README.md#mask-generation) for the
130
+ prompt contract, the two-artifact layout, and SA-V validation.
131
+
117
132
  ## Model Zoo migration
118
133
 
119
134
  Vision is now maintained in this package. `mblt-model-zoo` retains
@@ -131,17 +146,24 @@ mblt-vision predict --source image.jpg --model resnet50
131
146
  ```
132
147
 
133
148
  `predict` is the single inference command for classification, depth estimation,
134
- object and face detection, instance and semantic segmentation, OBB, and pose
135
- estimation. The selected model determines its task and processing pipeline.
149
+ object and face detection, instance and semantic segmentation, OBB, pose
150
+ estimation, and point-prompted mask generation. The selected model determines
151
+ its task and processing pipeline.
136
152
  By default it downloads the model artifact and saves a plotted result under
137
153
  `runs/vision/predict/`. Use `--output` to choose the result-image path,
138
154
  `--topk` for classification labels, and `--conf-thres`/`--iou-thres` for
139
155
  detection-style tasks. `--framework onnx` selects ONNX Runtime inference;
140
156
  `--target-device` and `--core-mode` select the MXQ board/runtime mode.
141
157
 
158
+ Mask generation models require 1-3 point prompts (`--point X,Y,LABEL`, where
159
+ LABEL is 1 for positive and 0 for negative) and load two artifacts, overridden
160
+ with `--encoder-mxq-path`/`--decoder-mxq-path` (or the `--encoder-onnx-path`/
161
+ `--decoder-onnx-path` pair) rather than `--model-path`/`--mxq-path`/`--onnx-path`.
162
+
142
163
  ```bash
143
164
  mblt-vision predict --source image.jpg --model yolo11m --conf-thres 0.4 --output result.jpg
144
165
  mblt-vision predict --source image.jpg --model yolo11m-pose --target-device regulus-ra --core-mode single
166
+ mblt-vision predict --source image.jpg --model sam2-hiera-large --point 320,240,1
145
167
  ```
146
168
 
147
169
  The corresponding `mblt-model-zoo` commands use the same standalone handlers for
@@ -40,7 +40,8 @@ pip install "mblt-vision-python[onnxruntime-gpu]"
40
40
 
41
41
  ## Quick start
42
42
 
43
- Each model includes its matching preprocess and postprocess behavior:
43
+ Most models include matching `preprocess`/`postprocess` behavior around a raw
44
+ call (mask generation is the exception -- see below):
44
45
 
45
46
  ```python
46
47
  from mblt_vision import ResNet50
@@ -70,6 +71,20 @@ code should use the task subpackages (for example,
70
71
 
71
72
  `obb` is the canonical oriented-bounding-box task name.
72
73
 
74
+ Mask generation is promptable, so `SAM2HieraLarge` takes point prompts and
75
+ returns candidate masks from a single `predict()` call instead of the separate
76
+ `preprocess`/raw-call/`postprocess` steps above:
77
+
78
+ ```python
79
+ from mblt_vision.mask_generation import SAM2HieraLarge
80
+
81
+ model = SAM2HieraLarge() # framework="onnx" for ONNX Runtime inference
82
+ result = model.predict("image.jpg", points=[[320, 240]], labels=[1])
83
+ ```
84
+
85
+ See the [mask generation section](mblt_vision/README.md#mask-generation) for the
86
+ prompt contract, the two-artifact layout, and SA-V validation.
87
+
73
88
  ## Model Zoo migration
74
89
 
75
90
  Vision is now maintained in this package. `mblt-model-zoo` retains
@@ -87,17 +102,24 @@ mblt-vision predict --source image.jpg --model resnet50
87
102
  ```
88
103
 
89
104
  `predict` is the single inference command for classification, depth estimation,
90
- object and face detection, instance and semantic segmentation, OBB, and pose
91
- estimation. The selected model determines its task and processing pipeline.
105
+ object and face detection, instance and semantic segmentation, OBB, pose
106
+ estimation, and point-prompted mask generation. The selected model determines
107
+ its task and processing pipeline.
92
108
  By default it downloads the model artifact and saves a plotted result under
93
109
  `runs/vision/predict/`. Use `--output` to choose the result-image path,
94
110
  `--topk` for classification labels, and `--conf-thres`/`--iou-thres` for
95
111
  detection-style tasks. `--framework onnx` selects ONNX Runtime inference;
96
112
  `--target-device` and `--core-mode` select the MXQ board/runtime mode.
97
113
 
114
+ Mask generation models require 1-3 point prompts (`--point X,Y,LABEL`, where
115
+ LABEL is 1 for positive and 0 for negative) and load two artifacts, overridden
116
+ with `--encoder-mxq-path`/`--decoder-mxq-path` (or the `--encoder-onnx-path`/
117
+ `--decoder-onnx-path` pair) rather than `--model-path`/`--mxq-path`/`--onnx-path`.
118
+
98
119
  ```bash
99
120
  mblt-vision predict --source image.jpg --model yolo11m --conf-thres 0.4 --output result.jpg
100
121
  mblt-vision predict --source image.jpg --model yolo11m-pose --target-device regulus-ra --core-mode single
122
+ mblt-vision predict --source image.jpg --model sam2-hiera-large --point 320,240,1
101
123
  ```
102
124
 
103
125
  The corresponding `mblt-model-zoo` commands use the same standalone handlers for
@@ -11,6 +11,7 @@ from . import depth_estimation as depth_estimation
11
11
  from . import face_detection as face_detection
12
12
  from . import image_classification as image_classification
13
13
  from . import instance_segmentation as instance_segmentation
14
+ from . import mask_generation as mask_generation
14
15
  from . import obb as obb
15
16
  from . import object_detection as object_detection
16
17
  from . import pose_estimation as pose_estimation
@@ -19,13 +20,14 @@ from ._api import list_models as list_models
19
20
  from ._api import list_tasks as list_tasks
20
21
  from .wrapper import MBLT_Engine as MBLT_Engine
21
22
 
22
- __version__ = "0.0.2"
23
+ __version__ = "0.0.4"
23
24
 
24
25
  _TASK_MODULES = (
25
26
  face_detection,
26
27
  depth_estimation,
27
28
  image_classification,
28
29
  instance_segmentation,
30
+ mask_generation,
29
31
  object_detection,
30
32
  obb,
31
33
  pose_estimation,
@@ -49,6 +51,7 @@ _PUBLIC_EXPORTS = [
49
51
  "depth_estimation",
50
52
  "image_classification",
51
53
  "instance_segmentation",
54
+ "mask_generation",
52
55
  "object_detection",
53
56
  "obb",
54
57
  "pose_estimation",
@@ -13,6 +13,7 @@ VISION_TASKS: tuple[str, ...] = (
13
13
  "obb",
14
14
  "pose_estimation",
15
15
  "face_detection",
16
+ "mask_generation",
16
17
  )
17
18
 
18
19
 
@@ -3,6 +3,7 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  import argparse
6
+ import math
6
7
  import os
7
8
  import sys
8
9
  from pathlib import Path
@@ -53,6 +54,39 @@ def parse_target_clusters(value: str | None) -> list[int] | None:
53
54
  return clusters or None
54
55
 
55
56
 
57
+ def parse_point(value: str) -> tuple[float, float, int]:
58
+ """Parses an `X,Y,LABEL` point prompt for mask generation models."""
59
+
60
+ parts = value.split(",")
61
+ if len(parts) != 3:
62
+ raise argparse.ArgumentTypeError("expected a point as X,Y,LABEL")
63
+ try:
64
+ x, y = float(parts[0]), float(parts[1])
65
+ label = int(parts[2])
66
+ except ValueError as exc:
67
+ raise argparse.ArgumentTypeError(
68
+ "expected numeric X,Y coordinates and an integer LABEL"
69
+ ) from exc
70
+ # `float()` accepts "nan"/"inf", which would otherwise reach Fourier prompt
71
+ # encoding and contaminate the resulting tokens, masks, and IoU scores.
72
+ if not (math.isfinite(x) and math.isfinite(y)):
73
+ raise argparse.ArgumentTypeError("expected finite X,Y coordinates")
74
+ if label not in (0, 1):
75
+ raise argparse.ArgumentTypeError(
76
+ "point LABEL must be 1 (positive) or 0 (negative)"
77
+ )
78
+ return (x, y, label)
79
+
80
+
81
+ def resolve_cli_task(args: argparse.Namespace) -> str:
82
+ """Resolves the selected model's task without constructing a runtime."""
83
+
84
+ from mblt_vision.wrapper import resolve_model_config
85
+
86
+ config = resolve_model_config(args.model, args.model_type)
87
+ return normalize_vision_task(config["post_cfg"]["task"])
88
+
89
+
56
90
  def add_common_vision_args(parser: argparse.ArgumentParser) -> None:
57
91
  """Adds arguments shared by all vision inference commands."""
58
92
 
@@ -275,6 +309,141 @@ def create_vision_engine(args: argparse.Namespace) -> Any:
275
309
  )
276
310
 
277
311
 
312
+ def reject_single_artifact_paths(args: argparse.Namespace) -> None:
313
+ """Rejects single-artifact model paths for two-artifact mask generation models.
314
+
315
+ Raises:
316
+ SystemExit: If `--model-path`, `--mxq-path`, or `--onnx-path` is set.
317
+ """
318
+
319
+ if (
320
+ getattr(args, "model_path", "")
321
+ or getattr(args, "mxq_path", "")
322
+ or getattr(args, "onnx_path", "")
323
+ ):
324
+ raise SystemExit(
325
+ "Mask generation models load two artifacts; use "
326
+ "`--encoder-mxq-path`/`--decoder-mxq-path` (or "
327
+ "`--encoder-onnx-path`/`--decoder-onnx-path` with `--framework onnx`) "
328
+ "instead of `--model-path`/`--mxq-path`/`--onnx-path`."
329
+ )
330
+
331
+
332
+ MASK_GENERATION_ONLY_OPTIONS: tuple[tuple[str, str], ...] = (
333
+ ("encoder_mxq_path", "--encoder-mxq-path"),
334
+ ("decoder_mxq_path", "--decoder-mxq-path"),
335
+ ("encoder_onnx_path", "--encoder-onnx-path"),
336
+ ("decoder_onnx_path", "--decoder-onnx-path"),
337
+ ("prompt_weights_path", "--prompt-weights-path"),
338
+ )
339
+
340
+
341
+ def reject_mask_generation_only_options(args: argparse.Namespace) -> None:
342
+ """Rejects two-artifact overrides for models that do not accept them.
343
+
344
+ The generic engine never receives these paths, so accepting them silently
345
+ downloads and runs the default single artifact instead of the requested
346
+ local one.
347
+
348
+ Raises:
349
+ SystemExit: If any mask-generation-only artifact override is set.
350
+ """
351
+
352
+ supplied = [
353
+ flag
354
+ for attribute, flag in MASK_GENERATION_ONLY_OPTIONS
355
+ if getattr(args, attribute, "")
356
+ ]
357
+ if supplied:
358
+ raise SystemExit(
359
+ f"{', '.join(supplied)} is only supported for mask generation models "
360
+ "such as SAM2HieraLarge. Use `--model-path`, `--mxq-path`, or "
361
+ "`--onnx-path` for this model."
362
+ )
363
+
364
+
365
+ def create_mask_generation_engine(args: argparse.Namespace) -> Any:
366
+ """Creates a promptable mask generation engine from shared CLI model options.
367
+
368
+ Mask generation models load two artifacts (encoder + decoder): MXQ by
369
+ default, or ONNX with `--framework onnx`. The shared NPU options
370
+ (`--dev-no`, `--core-mode`, `--target-cores`, `--target-clusters`) apply
371
+ to both MXQ backends and are ignored for ONNX inference.
372
+
373
+ The single-artifact path options are rejected here rather than in one
374
+ command's handler, so every command that builds a mask generation engine
375
+ fails loudly instead of silently evaluating the downloaded default in
376
+ place of an explicitly requested local artifact.
377
+ """
378
+
379
+ reject_single_artifact_paths(args)
380
+
381
+ try:
382
+ import mblt_vision.mask_generation as mask_generation_module
383
+ from mblt_vision.wrapper import _model_name_aliasing
384
+ except ImportError as exc:
385
+ print(f"Missing dependencies for vision CLI: {exc}", file=sys.stderr)
386
+ raise SystemExit(2) from exc
387
+
388
+ class_name = Path(_model_name_aliasing(args.model)).stem
389
+ model_class = getattr(mask_generation_module, class_name, None)
390
+ if model_class is None:
391
+ raise SystemExit(
392
+ f"Mask generation model class '{class_name}' is not exported by "
393
+ "mblt_vision.mask_generation."
394
+ )
395
+ return model_class(
396
+ encoder_mxq_path=getattr(args, "encoder_mxq_path", None) or None,
397
+ decoder_mxq_path=getattr(args, "decoder_mxq_path", None) or None,
398
+ prompt_weights_path=getattr(args, "prompt_weights_path", None) or None,
399
+ encoder_dev_no=args.dev_no,
400
+ decoder_dev_no=args.dev_no,
401
+ encoder_core_mode=args.core_mode,
402
+ decoder_core_mode=args.core_mode,
403
+ encoder_target_cores=args.target_cores,
404
+ decoder_target_cores=args.target_cores,
405
+ encoder_target_clusters=args.target_clusters,
406
+ decoder_target_clusters=args.target_clusters,
407
+ target_device=args.target_device,
408
+ framework=args.framework,
409
+ encoder_onnx_path=getattr(args, "encoder_onnx_path", None) or None,
410
+ decoder_onnx_path=getattr(args, "decoder_onnx_path", None) or None,
411
+ )
412
+
413
+
414
+ def run_mask_generation_inference(
415
+ args: argparse.Namespace,
416
+ *,
417
+ command: str,
418
+ ) -> Any:
419
+ """Runs point-prompted mask generation for a CLI command."""
420
+
421
+ point_prompts = getattr(args, "points", None) or []
422
+ if not 1 <= len(point_prompts) <= 3:
423
+ raise SystemExit(
424
+ "Mask generation requires 1 to 3 point prompts; pass `--point X,Y,LABEL` "
425
+ "(LABEL 1 positive, 0 negative) up to three times."
426
+ )
427
+ reject_single_artifact_paths(args)
428
+
429
+ points = [[x, y] for x, y, _ in point_prompts]
430
+ labels = [label for _, _, label in point_prompts]
431
+ model = create_mask_generation_engine(args)
432
+ try:
433
+ result = model.predict(args.source, points, labels)
434
+ save_path = resolve_output_path(args.output, command, args.source, args.model)
435
+ result.plot(source_path=args.source, save_path=save_path)
436
+ iou_text = ", ".join(f"{float(value):.4f}" for value in result.iou_predictions)
437
+ print(
438
+ f"Predicted IoU per mask candidate: [{iou_text}]; "
439
+ f"selected mask index: {result.selected}"
440
+ )
441
+ print(f"Saved result to {os.path.relpath(save_path)}")
442
+ return result
443
+ finally:
444
+ model.dispose()
445
+
446
+
278
447
  def run_vision_inference(
279
448
  args: argparse.Namespace,
280
449
  *,
@@ -283,6 +452,14 @@ def run_vision_inference(
283
452
  """Runs a complete vision inference pipeline for a CLI command."""
284
453
 
285
454
  require_source_file(args.source)
455
+ if resolve_cli_task(args) == "mask_generation":
456
+ return run_mask_generation_inference(args, command=command)
457
+ if getattr(args, "points", None):
458
+ raise SystemExit(
459
+ "`--point` is only supported for mask generation models such as "
460
+ "SAM2HieraLarge."
461
+ )
462
+ reject_mask_generation_only_options(args)
286
463
  model = create_vision_engine(args)
287
464
  try:
288
465
  actual_task = normalize_vision_task(model.post_cfg.get("task", ""))
@@ -8,6 +8,7 @@ from ._vision import (
8
8
  add_e2e_arg,
9
9
  add_threshold_args,
10
10
  add_vision_parser,
11
+ parse_point,
11
12
  run_vision_inference,
12
13
  )
13
14
 
@@ -29,7 +30,7 @@ def add_predict_parser(
29
30
  command="predict",
30
31
  help_text=(
31
32
  "Run vision inference for classification, depth estimation, detection, instance or semantic "
32
- "segmentation, OBB, pose, and face detection."
33
+ "segmentation, OBB, pose, face detection, and point-prompted mask generation."
33
34
  ),
34
35
  description=(
35
36
  "Run a configured Vision model on one image. The selected model determines the task, "
@@ -37,18 +38,26 @@ def add_predict_parser(
37
38
  ),
38
39
  epilog="""Supported tasks:
39
40
  image classification, depth estimation, object and face detection, instance
40
- and semantic segmentation, oriented bounding boxes (OBB), and pose estimation.
41
+ and semantic segmentation, oriented bounding boxes (OBB), pose estimation,
42
+ and point-prompted mask generation (SAM2).
41
43
 
42
44
  The command downloads the default MXQ artifact when no local model path is supplied,
43
45
  then writes a plotted result under runs/vision/predict/ by default. Use --output to
44
46
  choose the image destination. Use --framework onnx with --model-path or --onnx-path
45
47
  for ONNX Runtime inference; MXQ is the default framework.
46
48
 
49
+ Mask generation models take 1-3 point prompts (--point X,Y,LABEL; LABEL 1 positive,
50
+ 0 negative) and load two artifacts: MXQ by default (overridable with
51
+ --encoder-mxq-path/--decoder-mxq-path) or ONNX with --framework onnx (overridable
52
+ with --encoder-onnx-path/--decoder-onnx-path) instead of --model-path/--mxq-path.
53
+
47
54
  Examples:
48
55
  mblt-vision predict --source image.jpg --model resnet50 --topk 3
49
56
  mblt-vision predict --source image.jpg --model yolo11m --conf-thres 0.4 --output result.jpg
50
57
  mblt-vision predict --source image.jpg --model yolo11m --framework onnx
51
58
  mblt-vision predict --source image.jpg --model yolo11m-pose --target-device regulus-ra --core-mode single
59
+ mblt-vision predict --source image.jpg --model sam2-hiera-large --point 320,240,1
60
+ mblt-vision predict --source image.jpg --model sam2-hiera-large --point 320,240,1 --framework onnx
52
61
 
53
62
  For export-style YOLO output, use --e2e false and optionally save it with --raw-output.""",
54
63
  handler=_cmd_predict,
@@ -60,5 +69,46 @@ For export-style YOLO output, use --e2e false and optionally save it with --raw-
60
69
  "--raw-output",
61
70
  help="Path to save raw export-style output with `--e2e false`.",
62
71
  )
72
+ parser.add_argument(
73
+ "--point",
74
+ action="append",
75
+ dest="points",
76
+ type=parse_point,
77
+ metavar="X,Y,LABEL",
78
+ help=(
79
+ "Point prompt for mask generation models: pixel X,Y in the source image "
80
+ "and LABEL (1 positive, 0 negative). Repeat up to 3 times."
81
+ ),
82
+ )
83
+ parser.add_argument(
84
+ "--encoder-mxq-path",
85
+ dest="encoder_mxq_path",
86
+ default="",
87
+ help="Optional local encoder MXQ path for mask generation models.",
88
+ )
89
+ parser.add_argument(
90
+ "--decoder-mxq-path",
91
+ dest="decoder_mxq_path",
92
+ default="",
93
+ help="Optional local decoder MXQ path for mask generation models.",
94
+ )
95
+ parser.add_argument(
96
+ "--encoder-onnx-path",
97
+ dest="encoder_onnx_path",
98
+ default="",
99
+ help="Optional local encoder ONNX path for mask generation models.",
100
+ )
101
+ parser.add_argument(
102
+ "--decoder-onnx-path",
103
+ dest="decoder_onnx_path",
104
+ default="",
105
+ help="Optional local decoder ONNX path for mask generation models.",
106
+ )
107
+ parser.add_argument(
108
+ "--prompt-weights-path",
109
+ dest="prompt_weights_path",
110
+ default="",
111
+ help="Optional local prompt-encoder weights path for mask generation models.",
112
+ )
63
113
  add_threshold_args(parser, conf_default=0.25, iou_default=None)
64
114
  add_e2e_arg(parser)
@@ -16,9 +16,12 @@ from mblt_vision.wrapper import get_mobilint_cache_dir
16
16
  from ._vision import (
17
17
  add_e2e_arg,
18
18
  add_threshold_args,
19
+ create_mask_generation_engine,
19
20
  create_vision_engine,
20
21
  parse_target_clusters,
21
22
  parse_target_cores,
23
+ reject_mask_generation_only_options,
24
+ resolve_cli_task,
22
25
  )
23
26
 
24
27
  DEFAULT_IMAGENET_IMAGE_SOURCE = get_dataset_config("imagenet")["download"]["images"]
@@ -32,6 +35,7 @@ DEFAULT_WIDERFACE_ANNOTATION_SOURCE = get_dataset_config("widerface")["download"
32
35
  DEFAULT_DOTAV1_SOURCE = get_dataset_config("dotav1")["download"]["url"]
33
36
  DEFAULT_NYU_DEPTH_SOURCE = get_dataset_config("nyu-depth")["download"]["url"]
34
37
  DEFAULT_ADE20K_SOURCE = get_dataset_config("ade20k")["download"]["url"]
38
+ SAV_DOWNLOAD_CONFIG = get_dataset_config("sa-v")["download"]
35
39
  CITYSCAPES_DOWNLOAD_CONFIG = get_dataset_config("cityscapes")["download"]
36
40
  CITYSCAPES_IMAGE_ARCHIVE = CITYSCAPES_DOWNLOAD_CONFIG["images_archive"]
37
41
  CITYSCAPES_ANNOTATION_ARCHIVE = CITYSCAPES_DOWNLOAD_CONFIG["annotations_archive"]
@@ -54,12 +58,21 @@ def _candidate_search_roots(data_path: str) -> list[Path]:
54
58
 
55
59
 
56
60
  def _find_existing_source(data_path: str, candidate_names: list[str]) -> str | None:
57
- """Finds a nearby raw archive or extracted dataset directory."""
61
+ """Finds a nearby raw archive or extracted dataset directory.
62
+
63
+ Never returns the organized output directory itself. Several datasets use a
64
+ cache directory whose name also appears in their source-candidate list (for
65
+ example `sa-v` and `nyu-depth`), so `data_path.parent / name` can resolve
66
+ back to `data_path`. Handing that to an organizer as a raw source makes
67
+ source resolution fail on the incomplete cache instead of downloading the
68
+ default archive and repairing it.
69
+ """
58
70
 
71
+ organized_root = Path(data_path).expanduser().resolve()
59
72
  for root in _candidate_search_roots(data_path):
60
73
  for name in candidate_names:
61
74
  candidate = root / name
62
- if candidate.exists():
75
+ if candidate.exists() and candidate.resolve() != organized_root:
63
76
  return str(candidate)
64
77
  return None
65
78
 
@@ -171,6 +184,49 @@ def _resolve_nyu_depth_source(args: argparse.Namespace, data_path: str) -> str:
171
184
  return dataset_path or DEFAULT_NYU_DEPTH_SOURCE
172
185
 
173
186
 
187
+ def _resolve_sav_source(args: argparse.Namespace, data_path: str) -> str:
188
+ """Resolve the manually downloaded SA-V validation archive or directory.
189
+
190
+ SA-V is distributed through Meta's form-gated portal and is not mirrored by
191
+ this package, so unlike the auto-downloading datasets there is no default
192
+ source to fall back to.
193
+
194
+ Args:
195
+ args: Parsed validation CLI arguments.
196
+ data_path: Organized SA-V output path used as a discovery anchor.
197
+
198
+ Returns:
199
+ Path to the ``sav_val.tar`` archive or its extracted directory.
200
+
201
+ Raises:
202
+ SystemExit: If the archive or extracted directory cannot be found.
203
+ """
204
+
205
+ # Discovery runs even under --force-organize, unlike the auto-downloading
206
+ # datasets. There the flag skips discovery so a rebuild re-fetches from the
207
+ # canonical URL; SA-V has no such fallback, so skipping it would fail on a
208
+ # manual archive sitting in the documented discovery location -- the very
209
+ # place the error below tells the user to put it. `_find_existing_source`
210
+ # already refuses to return the organized output, so this cannot resolve to
211
+ # the stale cache that --force-organize exists to rebuild.
212
+ dataset_path = (
213
+ args.annotation_dir
214
+ or args.image_dir
215
+ or _find_existing_source(data_path, [SAV_DOWNLOAD_CONFIG["archive"], "sav_val"])
216
+ )
217
+ if not dataset_path:
218
+ raise SystemExit(
219
+ "SA-V organization requires the official validation archive, which Meta "
220
+ "distributes through a gated download form and this package does not mirror.\n"
221
+ f" Download it at {SAV_DOWNLOAD_CONFIG['source']}\n"
222
+ f" Layout reference: {SAV_DOWNLOAD_CONFIG['documentation']}\n"
223
+ f"Pass the resulting {SAV_DOWNLOAD_CONFIG['archive']} (or its extracted "
224
+ "`sav_val` directory) with --annotation-dir or --image-dir, or place it "
225
+ "near the dataset path."
226
+ )
227
+ return dataset_path
228
+
229
+
174
230
  def _resolve_ade20k_source(args: argparse.Namespace, data_path: str) -> str:
175
231
  """Resolve a local archive, extracted directory, or URL for ADE20K organization."""
176
232
 
@@ -259,6 +315,7 @@ def _ensure_dataset(
259
315
  organize_dotav1,
260
316
  organize_imagenet,
261
317
  organize_nyu_depth,
318
+ organize_sav,
262
319
  organize_widerface,
263
320
  )
264
321
  except ImportError as exc:
@@ -300,6 +357,11 @@ def _ensure_dataset(
300
357
  dataset_path=_resolve_nyu_depth_source(args, data_path),
301
358
  output_dir=data_path,
302
359
  )
360
+ elif task == "mask_generation":
361
+ organize_sav(
362
+ dataset_path=_resolve_sav_source(args, data_path),
363
+ output_dir=data_path,
364
+ )
303
365
  elif task == "semantic_segmentation":
304
366
  if dataset == "cityscapes":
305
367
  image_dir, annotation_dir = _resolve_cityscapes_sources(args, data_path)
@@ -335,13 +397,18 @@ def _run_validation(args: argparse.Namespace) -> float:
335
397
  eval_dota,
336
398
  eval_imagenet_metrics,
337
399
  eval_nyu_depth,
400
+ eval_sav,
338
401
  eval_widerface,
339
402
  )
340
403
  except ImportError as exc:
341
404
  print(f"Missing dependencies for vision CLI: {exc}", file=sys.stderr)
342
405
  raise SystemExit(2) from exc
343
406
 
344
- model = create_vision_engine(args)
407
+ if resolve_cli_task(args) == "mask_generation":
408
+ model = create_mask_generation_engine(args)
409
+ else:
410
+ reject_mask_generation_only_options(args)
411
+ model = create_vision_engine(args)
345
412
  try:
346
413
  if not getattr(getattr(model, "postprocessor", None), "e2e", True):
347
414
  raise SystemExit(
@@ -381,6 +448,24 @@ def _run_validation(args: argparse.Namespace) -> float:
381
448
  )
382
449
  return depth_result.primary_score
383
450
 
451
+ if task == "mask_generation":
452
+ sav_result = eval_sav(
453
+ model=model,
454
+ data_path=data_path,
455
+ num_samples=args.num_samples,
456
+ num_points=args.num_points,
457
+ seed=args.seed,
458
+ )
459
+ print(
460
+ "Validation score "
461
+ f"(mIoU): {sav_result.miou:.5f} "
462
+ f"(+-95%CI {sav_result.miou_ci95:.5f}), "
463
+ f"(mIoU best-of-3): {sav_result.miou_best_of_3:.5f}, "
464
+ f"samples: {sav_result.num_samples}, "
465
+ f"videos: {sav_result.distinct_videos}"
466
+ )
467
+ return sav_result.primary_score
468
+
384
469
  if task == "semantic_segmentation":
385
470
  if taxonomy == "cityscapes":
386
471
  semantic_result = eval_cityscapes(
@@ -557,5 +642,54 @@ def add_val_parser(
557
642
  "Local archive path or download URL for dataset annotations. Cityscapes requires gtFine_trainvaltest.zip."
558
643
  ),
559
644
  )
645
+ parser.add_argument(
646
+ "--num-samples",
647
+ type=parse_positive_int,
648
+ default=200,
649
+ help="Mask generation only: number of prompted SA-V samples to evaluate.",
650
+ )
651
+ parser.add_argument(
652
+ "--num-points",
653
+ type=int,
654
+ default=1,
655
+ choices=[1, 2, 3],
656
+ help="Mask generation only: points per synthetic prompt.",
657
+ )
658
+ parser.add_argument(
659
+ "--seed",
660
+ type=int,
661
+ default=0,
662
+ help="Mask generation only: sampling and prompt-synthesis seed.",
663
+ )
664
+ parser.add_argument(
665
+ "--encoder-mxq-path",
666
+ dest="encoder_mxq_path",
667
+ default="",
668
+ help="Optional local encoder MXQ path for mask generation models.",
669
+ )
670
+ parser.add_argument(
671
+ "--decoder-mxq-path",
672
+ dest="decoder_mxq_path",
673
+ default="",
674
+ help="Optional local decoder MXQ path for mask generation models.",
675
+ )
676
+ parser.add_argument(
677
+ "--encoder-onnx-path",
678
+ dest="encoder_onnx_path",
679
+ default="",
680
+ help="Optional local encoder ONNX path for mask generation models.",
681
+ )
682
+ parser.add_argument(
683
+ "--decoder-onnx-path",
684
+ dest="decoder_onnx_path",
685
+ default="",
686
+ help="Optional local decoder ONNX path for mask generation models.",
687
+ )
688
+ parser.add_argument(
689
+ "--prompt-weights-path",
690
+ dest="prompt_weights_path",
691
+ default="",
692
+ help="Optional local prompt-encoder weights path for mask generation models.",
693
+ )
560
694
  add_threshold_args(parser, conf_default=None, iou_default=None)
561
695
  add_e2e_arg(parser)