matrice 1.0.99179__tar.gz → 1.0.99181__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 (239) hide show
  1. {matrice-1.0.99179/src/matrice.egg-info → matrice-1.0.99181}/PKG-INFO +1 -1
  2. {matrice-1.0.99179 → matrice-1.0.99181}/setup.py +1 -1
  3. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/license_plate_detection.py +18 -6
  4. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/pothole_segmentation.py +59 -41
  5. {matrice-1.0.99179 → matrice-1.0.99181/src/matrice.egg-info}/PKG-INFO +1 -1
  6. {matrice-1.0.99179 → matrice-1.0.99181}/LICENSE.txt +0 -0
  7. {matrice-1.0.99179 → matrice-1.0.99181}/README.md +0 -0
  8. {matrice-1.0.99179 → matrice-1.0.99181}/setup.cfg +0 -0
  9. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/__init__.py +0 -0
  10. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/action.py +0 -0
  11. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/actionTracker.py +0 -0
  12. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/action_tracker.py +0 -0
  13. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/annotation.py +0 -0
  14. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/app_store.py +0 -0
  15. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/application.py +0 -0
  16. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/compute.py +0 -0
  17. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/compute_manager/__init__.py +0 -0
  18. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/compute_manager/action_instance.py +0 -0
  19. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/compute_manager/actions_manager.py +0 -0
  20. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/compute_manager/actions_scaledown_manager.py +0 -0
  21. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/compute_manager/instance_manager.py +0 -0
  22. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/compute_manager/instance_utils.py +0 -0
  23. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/compute_manager/prechecks.py +0 -0
  24. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/compute_manager/resources_tracker.py +0 -0
  25. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/compute_manager/scaling.py +0 -0
  26. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/compute_manager/shutdown_manager.py +0 -0
  27. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/compute_manager/task_utils.py +0 -0
  28. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/__init__.py +0 -0
  29. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/__init__.py +0 -0
  30. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/base.py +0 -0
  31. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/__init__.py +0 -0
  32. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/bit_depth_reduction.py +0 -0
  33. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/blur.py +0 -0
  34. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/brightness_contrast.py +0 -0
  35. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/color_jitter.py +0 -0
  36. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/compression_artifacts.py +0 -0
  37. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/downscale_upscale.py +0 -0
  38. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/film_grain.py +0 -0
  39. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/flip.py +0 -0
  40. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/fog.py +0 -0
  41. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/horizontal_flip.py +0 -0
  42. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/hsv.py +0 -0
  43. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/iso_noise.py +0 -0
  44. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/low_light.py +0 -0
  45. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/posterize.py +0 -0
  46. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/rain.py +0 -0
  47. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/random_affine.py +0 -0
  48. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/salt_pepper.py +0 -0
  49. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/shadows.py +0 -0
  50. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/snow.py +0 -0
  51. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/speckle.py +0 -0
  52. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/augmentation_utils/strategies/sunflare.py +0 -0
  53. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/client.py +0 -0
  54. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/client_utils.py +0 -0
  55. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/create_dataset.py +0 -0
  56. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_augmentation.py +0 -0
  57. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_augmentor.py +0 -0
  58. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/__init__.py +0 -0
  59. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/imagenet_classification.py +0 -0
  60. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/labelbox_classification.py +0 -0
  61. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/labelbox_detection.py +0 -0
  62. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/mscoco_detection.py +0 -0
  63. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/pascalvoc_detection.py +0 -0
  64. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/unlabelled.py +0 -0
  65. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/video_davis_segmentation.py +0 -0
  66. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/video_detection_mscoco.py +0 -0
  67. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/video_imagenet_classification.py +0 -0
  68. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/video_kinetics_activity_recognition.py +0 -0
  69. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/video_mot_tracking.py +0 -0
  70. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/video_mscoco_detection.py +0 -0
  71. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/video_youtube_bb_tracking.py +0 -0
  72. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_formats/yolo_detection.py +0 -0
  73. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_labelling.py +0 -0
  74. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_prep.py +0 -0
  75. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/data_processor.py +0 -0
  76. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/image_augmentations.py +0 -0
  77. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/image_data_augmentation.py +0 -0
  78. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/new_data_augmentation.py +0 -0
  79. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/pipeline.py +0 -0
  80. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/server.py +0 -0
  81. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/server_utils.py +0 -0
  82. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/data_processing/video_server.py +0 -0
  83. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/dataset.py +0 -0
  84. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/__init__.py +0 -0
  85. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/aggregator/__init__.py +0 -0
  86. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/aggregator/aggregator.py +0 -0
  87. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/aggregator/ingestor.py +0 -0
  88. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/aggregator/pipeline.py +0 -0
  89. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/aggregator/publisher.py +0 -0
  90. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/aggregator/synchronizer.py +0 -0
  91. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/client/__init__.py +0 -0
  92. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/client/auto_streaming/__init__.py +0 -0
  93. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/client/auto_streaming/auto_streaming.py +0 -0
  94. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/client/auto_streaming/auto_streaming_utils.py +0 -0
  95. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/client/client.py +0 -0
  96. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/client/client_stream_utils.py +0 -0
  97. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/client/client_utils.py +0 -0
  98. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/client/frame_comparators.py +0 -0
  99. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/client/streaming_gateway/__init__.py +0 -0
  100. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/client/streaming_gateway/streaming_gateway.py +0 -0
  101. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/client/streaming_gateway/streaming_gateway_utils.py +0 -0
  102. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/client/streaming_gateway/streaming_results_handler.py +0 -0
  103. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/server/__init__.py +0 -0
  104. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/server/inference/__init__.py +0 -0
  105. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/server/inference/batch_manager.py +0 -0
  106. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/server/inference/cache_manager.py +0 -0
  107. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/server/inference/inference_interface.py +0 -0
  108. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/server/inference/model_manager.py +0 -0
  109. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/server/inference/triton_utils.py +0 -0
  110. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/server/proxy/__init__.py +0 -0
  111. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/server/proxy/proxy_interface.py +0 -0
  112. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/server/proxy/proxy_utils.py +0 -0
  113. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/server/server.py +0 -0
  114. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/server/stream_worker.py +0 -0
  115. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/__init__.py +0 -0
  116. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/boundary_drawing_internal/__init__.py +0 -0
  117. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/boundary_drawing_internal/boundary_drawing_internal.py +0 -0
  118. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/boundary_drawing_internal/boundary_drawing_tool.py +0 -0
  119. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/boundary_drawing_internal/example_usage.py +0 -0
  120. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/kafka_utils.py +0 -0
  121. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/__init__.py +0 -0
  122. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/advanced_tracker/__init__.py +0 -0
  123. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/advanced_tracker/base.py +0 -0
  124. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/advanced_tracker/config.py +0 -0
  125. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/advanced_tracker/kalman_filter.py +0 -0
  126. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/advanced_tracker/matching.py +0 -0
  127. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/advanced_tracker/strack.py +0 -0
  128. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/advanced_tracker/tracker.py +0 -0
  129. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/config.py +0 -0
  130. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/core/__init__.py +0 -0
  131. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/core/base.py +0 -0
  132. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/core/config.py +0 -0
  133. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/core/config_utils.py +0 -0
  134. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/processor.py +0 -0
  135. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/test_cases/__init__.py +0 -0
  136. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/test_cases/run_tests.py +0 -0
  137. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/test_cases/test_advanced_customer_service.py +0 -0
  138. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/test_cases/test_basic_counting_tracking.py +0 -0
  139. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/test_cases/test_comprehensive.py +0 -0
  140. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/test_cases/test_config.py +0 -0
  141. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/test_cases/test_customer_service.py +0 -0
  142. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/test_cases/test_data_generators.py +0 -0
  143. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/test_cases/test_people_counting.py +0 -0
  144. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/test_cases/test_processor.py +0 -0
  145. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/test_cases/test_utilities.py +0 -0
  146. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/test_cases/test_utils.py +0 -0
  147. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/__init__.py +0 -0
  148. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/advanced_customer_service.py +0 -0
  149. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/age_detection.py +0 -0
  150. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/anti_spoofing_detection.py +0 -0
  151. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/assembly_line_detection.py +0 -0
  152. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/banana_defect_detection.py +0 -0
  153. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/basic_counting_tracking.py +0 -0
  154. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/blood_cancer_detection_img.py +0 -0
  155. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/car_damage_detection.py +0 -0
  156. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/car_part_segmentation.py +0 -0
  157. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/chicken_pose_detection.py +0 -0
  158. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/child_monitoring.py +0 -0
  159. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/color_detection.py +0 -0
  160. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/color_map_utils.py +0 -0
  161. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/concrete_crack_detection.py +0 -0
  162. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/crop_weed_detection.py +0 -0
  163. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/customer_service.py +0 -0
  164. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/defect_detection_products.py +0 -0
  165. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/distracted_driver_detection.py +0 -0
  166. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/emergency_vehicle_detection.py +0 -0
  167. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/face_emotion.py +0 -0
  168. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/fashion_detection.py +0 -0
  169. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/field_mapping.py +0 -0
  170. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/fire_detection.py +0 -0
  171. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/flare_analysis.py +0 -0
  172. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/flower_segmentation.py +0 -0
  173. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/gender_detection.py +0 -0
  174. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/leaf.py +0 -0
  175. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/leaf_disease.py +0 -0
  176. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/mask_detection.py +0 -0
  177. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/parking.py +0 -0
  178. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/parking_space_detection.py +0 -0
  179. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/pedestrian_detection.py +0 -0
  180. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/people_counting.py +0 -0
  181. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/pipeline_detection.py +0 -0
  182. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/plaque_segmentation_img.py +0 -0
  183. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/ppe_compliance.py +0 -0
  184. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/price_tag_detection.py +0 -0
  185. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/road_lane_detection.py +0 -0
  186. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/shelf_inventory_detection.py +0 -0
  187. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/shoplifting_detection.py +0 -0
  188. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/shopping_cart_analysis.py +0 -0
  189. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/skin_cancer_classification_img.py +0 -0
  190. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/smoker_detection.py +0 -0
  191. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/solar_panel.py +0 -0
  192. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/template_usecase.py +0 -0
  193. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/theft_detection.py +0 -0
  194. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/traffic_sign_monitoring.py +0 -0
  195. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/underwater_pollution_detection.py +0 -0
  196. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/vehicle_monitoring.py +0 -0
  197. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/warehouse_object_segmentation.py +0 -0
  198. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/weapon_detection.py +0 -0
  199. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/weld_defect_detection.py +0 -0
  200. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/windmill_maintenance.py +0 -0
  201. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/usecases/wound_segmentation.py +0 -0
  202. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/utils/__init__.py +0 -0
  203. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/utils/advanced_counting_utils.py +0 -0
  204. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/utils/advanced_helper_utils.py +0 -0
  205. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/utils/advanced_tracking_utils.py +0 -0
  206. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/utils/alerting_utils.py +0 -0
  207. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/utils/category_mapping_utils.py +0 -0
  208. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/utils/color_utils.py +0 -0
  209. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/utils/counting_utils.py +0 -0
  210. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/utils/filter_utils.py +0 -0
  211. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/utils/format_utils.py +0 -0
  212. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/utils/geometry_utils.py +0 -0
  213. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/utils/smoothing_utils.py +0 -0
  214. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deploy/utils/post_processing/utils/tracking_utils.py +0 -0
  215. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deployment/__init__.py +0 -0
  216. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deployment/camera_manager.py +0 -0
  217. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deployment/deployment.py +0 -0
  218. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deployment/inference_pipeline.py +0 -0
  219. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/deployment/streaming_gateway_manager.py +0 -0
  220. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/docker_utils.py +0 -0
  221. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/drift_monitor.py +0 -0
  222. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/exported_model.py +0 -0
  223. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/local_test.py +0 -0
  224. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/metrics_calculator.py +0 -0
  225. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/metrics_calculator_oop.py +0 -0
  226. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/model_store.py +0 -0
  227. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/models.py +0 -0
  228. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/pipeline.py +0 -0
  229. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/projects.py +0 -0
  230. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/rpc.py +0 -0
  231. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/scaling.py +0 -0
  232. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/session.py +0 -0
  233. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/testing.py +0 -0
  234. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/token_auth.py +0 -0
  235. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice/utils.py +0 -0
  236. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice.egg-info/SOURCES.txt +0 -0
  237. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice.egg-info/dependency_links.txt +0 -0
  238. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice.egg-info/requires.txt +0 -0
  239. {matrice-1.0.99179 → matrice-1.0.99181}/src/matrice.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: matrice
3
- Version: 1.0.99179
3
+ Version: 1.0.99181
4
4
  Summary: SDK for connecting to matrice.ai services
5
5
  Home-page: https://github.com/matrice-ai/python-sdk
6
6
  Author: Matrice.ai
@@ -14,7 +14,7 @@ long_description = (here / "README.md").read_text(encoding="utf-8")
14
14
  setup(
15
15
  name="matrice",
16
16
 
17
- version = "1.0.99179",
17
+ version = "1.0.99181",
18
18
 
19
19
  description="SDK for connecting to matrice.ai services",
20
20
  long_description=long_description,
@@ -149,14 +149,26 @@ class LicensePlateUseCase(BaseProcessor):
149
149
 
150
150
  # Advanced tracking (BYTETracker-like)
151
151
  try:
152
- from ..advanced_tracker import AdvancedTracker
153
- from ..advanced_tracker.config import TrackerConfig
154
-
155
- # Create tracker instance if it doesn't exist (preserves state across frames)
156
152
  if self.tracker is None:
157
- tracker_config = TrackerConfig()
153
+ # Configure tracker thresholds based on the use-case confidence threshold so that
154
+ # low-confidence detections (e.g. < 0.7) can still be initialised as tracks when
155
+ # the user passes a lower `confidence_threshold` in the post-processing config.
156
+ if config.confidence_threshold is not None:
157
+ tracker_config = TrackerConfig(
158
+ track_high_thresh=float(config.confidence_threshold),
159
+ # Allow even lower detections to participate in secondary association
160
+ track_low_thresh=max(0.05, float(config.confidence_threshold) / 2),
161
+ new_track_thresh=float(config.confidence_threshold)
162
+ )
163
+ else:
164
+ tracker_config = TrackerConfig()
158
165
  self.tracker = AdvancedTracker(tracker_config)
159
- self.logger.info("Initialized AdvancedTracker for Monitoring and tracking")
166
+ self.logger.info(
167
+ "Initialized AdvancedTracker for Monitoring and tracking with thresholds: "
168
+ f"high={tracker_config.track_high_thresh}, "
169
+ f"low={tracker_config.track_low_thresh}, "
170
+ f"new={tracker_config.new_track_thresh}"
171
+ )
160
172
 
161
173
  # The tracker expects the data in the same format as input
162
174
  # It will add track_id and frame_id to each detection
@@ -6,6 +6,7 @@ zone analysis, and alert generation.
6
6
 
7
7
  """
8
8
 
9
+
9
10
  from typing import Any, Dict, List, Optional
10
11
  from dataclasses import asdict
11
12
  import time
@@ -40,7 +41,7 @@ class PotholeConfig(BaseConfig):
40
41
  smoothing_confidence_range_factor: float = 0.5
41
42
 
42
43
  #confidence thresholds
43
- confidence_threshold: float = 0.6
44
+ confidence_threshold: float = 0.3
44
45
 
45
46
  usecase_categories: List[str] = field(
46
47
  default_factory=lambda: ['pothole']
@@ -54,8 +55,7 @@ class PotholeConfig(BaseConfig):
54
55
 
55
56
  index_to_category: Optional[Dict[int, str]] = field(
56
57
  default_factory=lambda: {
57
- 0:"pothole"
58
-
58
+ 0: 'pothole'
59
59
  }
60
60
  )
61
61
 
@@ -66,14 +66,15 @@ class PotholeSegmentationUseCase(BaseProcessor):
66
66
  CATEGORY_DISPLAY = {
67
67
  "pothole": "pothole"
68
68
  }
69
+
69
70
  def __init__(self):
70
71
  super().__init__("pothole_segmentation")
71
72
  self.category = "infrastructure"
72
73
 
73
74
  # List of categories to track
74
- self.target_categories = ["pothole"]
75
+ self.target_categories = ['pothole']
75
76
 
76
- self.CASE_TYPE: Optional[str] = 'Pothole_detection'
77
+ self.CASE_TYPE: Optional[str] = 'pothole_segmentation'
77
78
  self.CASE_VERSION: Optional[str] = '1.3'
78
79
 
79
80
  # Initialize smoothing tracker
@@ -161,14 +162,26 @@ class PotholeSegmentationUseCase(BaseProcessor):
161
162
 
162
163
  # Step 5: Advanced tracking (BYTETracker-like)
163
164
  try:
164
- from ..advanced_tracker import AdvancedTracker
165
- from ..advanced_tracker.config import TrackerConfig
166
-
167
- # Create tracker instance if it doesn't exist (preserves state across frames)
168
165
  if self.tracker is None:
169
- tracker_config = TrackerConfig()
166
+ # Configure tracker thresholds based on the use-case confidence threshold so that
167
+ # low-confidence detections (e.g. < 0.7) can still be initialised as tracks when
168
+ # the user passes a lower `confidence_threshold` in the post-processing config.
169
+ if config.confidence_threshold is not None:
170
+ tracker_config = TrackerConfig(
171
+ track_high_thresh=float(config.confidence_threshold),
172
+ # Allow even lower detections to participate in secondary association
173
+ track_low_thresh=max(0.05, float(config.confidence_threshold) / 2),
174
+ new_track_thresh=float(config.confidence_threshold)
175
+ )
176
+ else:
177
+ tracker_config = TrackerConfig()
170
178
  self.tracker = AdvancedTracker(tracker_config)
171
- self.logger.info("Initialized AdvancedTracker for Monitoring and tracking")
179
+ self.logger.info(
180
+ "Initialized AdvancedTracker for Monitoring and tracking with thresholds: "
181
+ f"high={tracker_config.track_high_thresh}, "
182
+ f"low={tracker_config.track_low_thresh}, "
183
+ f"new={tracker_config.new_track_thresh}"
184
+ )
172
185
 
173
186
  processed_data = self.tracker.update(processed_data)
174
187
  except Exception as e:
@@ -227,7 +240,7 @@ class PotholeSegmentationUseCase(BaseProcessor):
227
240
  "business_analytics": business_analytics,
228
241
  "alerts": alerts,
229
242
  "human_text": summary}
230
- }
243
+ }
231
244
 
232
245
  context.mark_completed()
233
246
 
@@ -389,9 +402,9 @@ class PotholeSegmentationUseCase(BaseProcessor):
389
402
  })
390
403
 
391
404
  event= self.create_incident(incident_id=self.CASE_TYPE+'_'+str(frame_number), incident_type=self.CASE_TYPE,
392
- severity_level=level, human_text=human_text, camera_info=camera_info, alerts=alerts, alert_settings=alert_settings,
393
- start_time=start_timestamp, end_time=self.current_incident_end_timestamp,
394
- level_settings= {"low": 1, "medium": 3, "significant":4, "critical": 7})
405
+ severity_level=level, human_text=human_text, camera_info=camera_info, alerts=alerts, alert_settings=alert_settings,
406
+ start_time=start_timestamp, end_time=self.current_incident_end_timestamp,
407
+ level_settings= {"low": 1, "medium": 3, "significant":4, "critical": 7})
395
408
  incidents.append(event)
396
409
 
397
410
  else:
@@ -409,9 +422,10 @@ class PotholeSegmentationUseCase(BaseProcessor):
409
422
  stream_info: Optional[Dict[str, Any]] = None
410
423
  ) -> List[Dict]:
411
424
  """Generate structured tracking stats for the output format with frame-based keys, including track_ids_info and detections with masks."""
412
- #frame_key = str(frame_number) if frame_number is not None else "current_frame"
413
- tracking_stats = [] #[{frame_key: []}]
414
- #frame_tracking_stats = tracking_stats[0][frame_key]
425
+ # frame_key = str(frame_number) if frame_number is not None else "current_frame"
426
+ # tracking_stats = [{frame_key: []}]
427
+ # frame_tracking_stats = tracking_stats[0][frame_key]
428
+ tracking_stats = []
415
429
 
416
430
  total_detections = counting_summary.get("total_count", 0)
417
431
  total_counts = counting_summary.get("total_counts", {})
@@ -494,8 +508,8 @@ class PotholeSegmentationUseCase(BaseProcessor):
494
508
  "threshold_level": config.alert_config.count_thresholds if hasattr(config.alert_config, 'count_thresholds') else {},
495
509
  "ascending": True,
496
510
  "settings": {t: v for t, v in zip(getattr(config.alert_config, 'alert_type', ['Default']) if hasattr(config.alert_config, 'alert_type') else ['Default'],
497
- getattr(config.alert_config, 'alert_value', ['JSON']) if hasattr(config.alert_config, 'alert_value') else ['JSON'])
498
- }
511
+ getattr(config.alert_config, 'alert_value', ['JSON']) if hasattr(config.alert_config, 'alert_value') else ['JSON'])
512
+ }
499
513
  })
500
514
 
501
515
  if alerts:
@@ -516,9 +530,9 @@ class PotholeSegmentationUseCase(BaseProcessor):
516
530
  ]
517
531
 
518
532
  tracking_stat=self.create_tracking_stats(total_counts=total_counts, current_counts=current_counts,
519
- detections=detections, human_text=human_text, camera_info=camera_info, alerts=alerts, alert_settings=alert_settings,
520
- reset_settings=reset_settings, start_time=high_precision_start_timestamp ,
521
- reset_time=high_precision_reset_timestamp)
533
+ detections=detections, human_text=human_text, camera_info=camera_info, alerts=alerts, alert_settings=alert_settings,
534
+ reset_settings=reset_settings, start_time=high_precision_start_timestamp ,
535
+ reset_time=high_precision_reset_timestamp)
522
536
 
523
537
  tracking_stats.append(tracking_stat)
524
538
  return tracking_stats
@@ -641,33 +655,40 @@ class PotholeSegmentationUseCase(BaseProcessor):
641
655
  """Format timestamp for video chunks (HH:MM:SS.ms format)."""
642
656
  hours = int(timestamp // 3600)
643
657
  minutes = int((timestamp % 3600) // 60)
644
- seconds = timestamp % 60
645
- return f"{hours:02d}:{minutes:02d}:{seconds:06.2f}"
658
+ seconds = round(float(timestamp % 60),2)
659
+ return f"{hours:02d}:{minutes:02d}:{seconds:.1f}"
646
660
 
647
661
  def _format_timestamp_for_stream(self, timestamp: float) -> str:
648
662
  """Format timestamp for streams (YYYY:MM:DD HH:MM:SS format)."""
649
663
  dt = datetime.fromtimestamp(timestamp, tz=timezone.utc)
650
664
  return dt.strftime('%Y:%m:%d %H:%M:%S')
651
665
 
652
- def _get_current_timestamp_str(self, stream_info: Optional[Dict[str, Any]], precision=False) -> str:
666
+ def _get_current_timestamp_str(self, stream_info: Optional[Dict[str, Any]], precision=False, frame_id: Optional[str]=None) -> str:
653
667
  """Get formatted current timestamp based on stream type."""
654
668
  if not stream_info:
655
669
  return "00:00:00.00"
656
-
670
+ # is_video_chunk = stream_info.get("input_settings", {}).get("is_video_chunk", False)
657
671
  if precision:
658
- if stream_info.get("input_settings", {}).get("stream_type", "video_file") == "video_file":
659
- stream_time_str = stream_info.get("video_timestamp", "")
660
- return stream_time_str[:8]
672
+ if stream_info.get("input_settings", {}).get("start_frame", "na") != "na":
673
+ if frame_id:
674
+ start_time = int(frame_id)/stream_info.get("input_settings", {}).get("original_fps", 30)
675
+ else:
676
+ start_time = stream_info.get("input_settings", {}).get("start_frame", 30)/stream_info.get("input_settings", {}).get("original_fps", 30)
677
+ stream_time_str = self._format_timestamp_for_video(start_time)
678
+ return stream_time_str
661
679
  else:
662
680
  return datetime.now(timezone.utc).strftime("%Y-%m-%d-%H:%M:%S.%f UTC")
663
681
 
664
- if stream_info.get("input_settings", {}).get("stream_type", "video_file") == "video_file":
665
- # If video format, return video timestamp
666
- stream_time_str = stream_info.get("video_timestamp", "")
667
- return stream_time_str[:8]
682
+ if stream_info.get("input_settings", {}).get("start_frame", "na") != "na":
683
+ if frame_id:
684
+ start_time = int(frame_id)/stream_info.get("input_settings", {}).get("original_fps", 30)
685
+ else:
686
+ start_time = stream_info.get("input_settings", {}).get("start_frame", 30)/stream_info.get("input_settings", {}).get("original_fps", 30)
687
+ stream_time_str = self._format_timestamp_for_video(start_time)
688
+ return stream_time_str
668
689
  else:
669
690
  # For streams, use stream_time from stream_info
670
- stream_time_str = stream_info.get("stream_time", "")
691
+ stream_time_str = stream_info.get("input_settings", {}).get("stream_info", {}).get("stream_time", "")
671
692
  if stream_time_str:
672
693
  # Parse the high precision timestamp string to get timestamp
673
694
  try:
@@ -686,23 +707,20 @@ class PotholeSegmentationUseCase(BaseProcessor):
686
707
  """Get formatted start timestamp for 'TOTAL SINCE' based on stream type."""
687
708
  if not stream_info:
688
709
  return "00:00:00"
689
-
690
- is_video_chunk = stream_info.get("input_settings", {}).get("is_video_chunk", False)
691
710
  if precision:
692
- if stream_info.get("input_settings", {}).get("stream_type", "video_file") == "video_file":
711
+ if stream_info.get("input_settings", {}).get("start_frame", "na") != "na":
693
712
  return "00:00:00"
694
713
  else:
695
714
  return datetime.now(timezone.utc).strftime("%Y-%m-%d-%H:%M:%S.%f UTC")
696
715
 
697
-
698
- if stream_info.get("input_settings", {}).get("stream_type", "video_file") == "video_file":
716
+ if stream_info.get("input_settings", {}).get("start_frame", "na") != "na":
699
717
  # If video format, start from 00:00:00
700
718
  return "00:00:00"
701
719
  else:
702
720
  # For streams, use tracking start time or current time with minutes/seconds reset
703
721
  if self._tracking_start_time is None:
704
722
  # Try to extract timestamp from stream_time string
705
- stream_time_str = stream_info.get("stream_time", "")
723
+ stream_time_str = stream_info.get("input_settings", {}).get("stream_info", {}).get("stream_time", "")
706
724
  if stream_time_str:
707
725
  try:
708
726
  # Remove " UTC" suffix and parse
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: matrice
3
- Version: 1.0.99179
3
+ Version: 1.0.99181
4
4
  Summary: SDK for connecting to matrice.ai services
5
5
  Home-page: https://github.com/matrice-ai/python-sdk
6
6
  Author: Matrice.ai
File without changes
File without changes
File without changes