matrice 1.0.99121__py3-none-any.whl → 1.0.99122__py3-none-any.whl

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.
@@ -164,11 +164,24 @@ class AssemblyLineUseCase(BaseProcessor):
164
164
  from ..advanced_tracker.config import TrackerConfig
165
165
 
166
166
  # Create tracker instance if it doesn't exist (preserves state across frames)
167
+
167
168
  if self.tracker is None:
168
- tracker_config = TrackerConfig()
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()
169
178
  self.tracker = AdvancedTracker(tracker_config)
170
- self.logger.info("Initialized AdvancedTracker for Monitoring and tracking")
171
-
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
  # The tracker expects the data in the same format as input
173
186
  # It will add track_id and frame_id to each detection
174
187
  processed_data = self.tracker.update(processed_data)
@@ -152,12 +152,24 @@ class CropWeedDetectionUseCase(BaseProcessor):
152
152
  from ..advanced_tracker import AdvancedTracker
153
153
  from ..advanced_tracker.config import TrackerConfig
154
154
 
155
- # Create tracker instance if it doesn't exist (preserves state across frames)
155
+
156
156
  if self.tracker is None:
157
- tracker_config = TrackerConfig()
157
+ if config.confidence_threshold is not None:
158
+ tracker_config = TrackerConfig(
159
+ track_high_thresh=float(config.confidence_threshold),
160
+ # Allow even lower detections to participate in secondary association
161
+ track_low_thresh=max(0.05, float(config.confidence_threshold) / 2),
162
+ new_track_thresh=float(config.confidence_threshold)
163
+ )
164
+ else:
165
+ tracker_config = TrackerConfig()
158
166
  self.tracker = AdvancedTracker(tracker_config)
159
- self.logger.info("Initialized AdvancedTracker for Monitoring and tracking")
160
-
167
+ self.logger.info(
168
+ "Initialized AdvancedTracker for Monitoring and tracking with thresholds: "
169
+ f"high={tracker_config.track_high_thresh}, "
170
+ f"low={tracker_config.track_low_thresh}, "
171
+ f"new={tracker_config.new_track_thresh}"
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
163
175
  processed_data = self.tracker.update(processed_data)
@@ -151,12 +151,24 @@ class EmergencyVehicleUseCase(BaseProcessor):
151
151
  from ..advanced_tracker import AdvancedTracker
152
152
  from ..advanced_tracker.config import TrackerConfig
153
153
 
154
- # Create tracker instance if it doesn't exist (preserves state across frames)
154
+
155
155
  if self.tracker is None:
156
- tracker_config = TrackerConfig()
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()
157
165
  self.tracker = AdvancedTracker(tracker_config)
158
- self.logger.info("Initialized AdvancedTracker for Monitoring and tracking")
159
-
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
  # The tracker expects the data in the same format as input
161
173
  # It will add track_id and frame_id to each detection
162
174
  processed_data = self.tracker.update(processed_data)
@@ -156,12 +156,24 @@ class FashionDetectionUseCase(BaseProcessor):
156
156
  from ..advanced_tracker import AdvancedTracker
157
157
  from ..advanced_tracker.config import TrackerConfig
158
158
 
159
- # Create tracker instance if it doesn't exist (preserves state across frames)
159
+
160
160
  if self.tracker is None:
161
- tracker_config = TrackerConfig()
161
+ if config.confidence_threshold is not None:
162
+ tracker_config = TrackerConfig(
163
+ track_high_thresh=float(config.confidence_threshold),
164
+ # Allow even lower detections to participate in secondary association
165
+ track_low_thresh=max(0.05, float(config.confidence_threshold) / 2),
166
+ new_track_thresh=float(config.confidence_threshold)
167
+ )
168
+ else:
169
+ tracker_config = TrackerConfig()
162
170
  self.tracker = AdvancedTracker(tracker_config)
163
- self.logger.info("Initialized AdvancedTracker for Monitoring and tracking")
164
-
171
+ self.logger.info(
172
+ "Initialized AdvancedTracker for Monitoring and tracking with thresholds: "
173
+ f"high={tracker_config.track_high_thresh}, "
174
+ f"low={tracker_config.track_low_thresh}, "
175
+ f"new={tracker_config.new_track_thresh}"
176
+ )
165
177
  # The tracker expects the data in the same format as input
166
178
  # It will add track_id and frame_id to each detection
167
179
  processed_data = self.tracker.update(processed_data)
@@ -152,11 +152,24 @@ class GenderDetectionUseCase(BaseProcessor):
152
152
  from ..advanced_tracker import AdvancedTracker
153
153
  from ..advanced_tracker.config import TrackerConfig
154
154
 
155
- # Create tracker instance if it doesn't exist (preserves state across frames)
155
+
156
156
  if self.tracker is None:
157
- tracker_config = TrackerConfig()
157
+ if config.confidence_threshold is not None:
158
+ tracker_config = TrackerConfig(
159
+ track_high_thresh=float(config.confidence_threshold),
160
+ # Allow even lower detections to participate in secondary association
161
+ track_low_thresh=max(0.05, float(config.confidence_threshold) / 2),
162
+ new_track_thresh=float(config.confidence_threshold)
163
+ )
164
+ else:
165
+ tracker_config = TrackerConfig()
158
166
  self.tracker = AdvancedTracker(tracker_config)
159
- self.logger.info("Initialized AdvancedTracker for Monitoring and tracking")
167
+ self.logger.info(
168
+ "Initialized AdvancedTracker for Monitoring and tracking with thresholds: "
169
+ f"high={tracker_config.track_high_thresh}, "
170
+ f"low={tracker_config.track_low_thresh}, "
171
+ f"new={tracker_config.new_track_thresh}"
172
+ )
160
173
 
161
174
  # The tracker expects the data in the same format as input
162
175
  # It will add track_id and frame_id to each detection
@@ -143,12 +143,24 @@ class PriceTagUseCase(BaseProcessor):
143
143
  from ..advanced_tracker import AdvancedTracker
144
144
  from ..advanced_tracker.config import TrackerConfig
145
145
 
146
- # Create tracker instance if it doesn't exist (preserves state across frames)
146
+
147
147
  if self.tracker is None:
148
- tracker_config = TrackerConfig()
148
+ if config.confidence_threshold is not None:
149
+ tracker_config = TrackerConfig(
150
+ track_high_thresh=float(config.confidence_threshold),
151
+ # Allow even lower detections to participate in secondary association
152
+ track_low_thresh=max(0.05, float(config.confidence_threshold) / 2),
153
+ new_track_thresh=float(config.confidence_threshold)
154
+ )
155
+ else:
156
+ tracker_config = TrackerConfig()
149
157
  self.tracker = AdvancedTracker(tracker_config)
150
- self.logger.info("Initialized AdvancedTracker for Monitoring and tracking")
151
-
158
+ self.logger.info(
159
+ "Initialized AdvancedTracker for Monitoring and tracking with thresholds: "
160
+ f"high={tracker_config.track_high_thresh}, "
161
+ f"low={tracker_config.track_low_thresh}, "
162
+ f"new={tracker_config.new_track_thresh}"
163
+ )
152
164
  # The tracker expects the data in the same format as input
153
165
  # It will add track_id and frame_id to each detection
154
166
  processed_data = self.tracker.update(processed_data)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: matrice
3
- Version: 1.0.99121
3
+ Version: 1.0.99122
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
@@ -156,7 +156,7 @@ matrice/deploy/utils/post_processing/usecases/__init__.py,sha256=Nb13P5IZSs7tl9j
156
156
  matrice/deploy/utils/post_processing/usecases/advanced_customer_service.py,sha256=ELt5euxr6P4X2s8-YGngmj27QscOHefjOsx3774sNFk,75914
157
157
  matrice/deploy/utils/post_processing/usecases/age_detection.py,sha256=cgOIx2zqPd_OWQMfTDV_4HSlvXlI8eKcZSEZ85SnZWA,35263
158
158
  matrice/deploy/utils/post_processing/usecases/anti_spoofing_detection.py,sha256=XdtDdXGzZMLQdWcoOoiE5t4LPYHhgOtJ7tZCNlq1A2E,31329
159
- matrice/deploy/utils/post_processing/usecases/assembly_line_detection.py,sha256=b87TAv5718l2E22BIKK4VbHdNR1gJA9jMR9lE0x4H4U,39654
159
+ matrice/deploy/utils/post_processing/usecases/assembly_line_detection.py,sha256=I_oeuec84KJnGMg_A8Wgs9U6h_IiopkDz9FbM1JG110,40410
160
160
  matrice/deploy/utils/post_processing/usecases/banana_defect_detection.py,sha256=OgkqYP8-LkCt3bg4x7V0VvlqvSE8I38SeKr_Wtb63B8,29532
161
161
  matrice/deploy/utils/post_processing/usecases/basic_counting_tracking.py,sha256=-vr2z0J-qMh5wOoGubqeTWPttJ4NOYtGqKSV-_8PaKw,28311
162
162
  matrice/deploy/utils/post_processing/usecases/blood_cancer_detection_img.py,sha256=Ay_0OC9gM1dTQHWC5wL8XLZjl7ulHzd0zdhNzGH4JKU,42128
@@ -167,18 +167,18 @@ matrice/deploy/utils/post_processing/usecases/child_monitoring.py,sha256=pHt3uth
167
167
  matrice/deploy/utils/post_processing/usecases/color_detection.py,sha256=Z8-akjy8a7f8YyiOzXu_Zi1Km30v-TRrymDqQOPpJ_8,43277
168
168
  matrice/deploy/utils/post_processing/usecases/color_map_utils.py,sha256=SP-AEVcjLmL8rxblu-ixqUJC2fqlcr7ab4hWo4Fcr_k,2677
169
169
  matrice/deploy/utils/post_processing/usecases/concrete_crack_detection.py,sha256=jl3INFXNjEGS5qha1NP9xrDYPMXNlacKI1Z98zFjo0Q,34358
170
- matrice/deploy/utils/post_processing/usecases/crop_weed_detection.py,sha256=GLgKjq0qCJzSjgleHvBvanaEjj4nREa6t_4GkeSAUYA,39656
170
+ matrice/deploy/utils/post_processing/usecases/crop_weed_detection.py,sha256=i7BWhC-D7liOg9fzFHFg_upd1fdvXlVHYzDRyHL-AdM,40322
171
171
  matrice/deploy/utils/post_processing/usecases/customer_service.py,sha256=UWS83qxguyAyhh8a0JF5QH9DtKxO8I-gI2BPOjLPxBw,44642
172
172
  matrice/deploy/utils/post_processing/usecases/defect_detection_products.py,sha256=flvTWv6vxa3q4zXD8_e8TW0pqNE5z3LIuvU9ceVKuXg,34481
173
173
  matrice/deploy/utils/post_processing/usecases/distracted_driver_detection.py,sha256=lkBc7zcq_9WPvxdIiCgA8ESTpnkMxtcIBWVWEzB_IV8,38044
174
- matrice/deploy/utils/post_processing/usecases/emergency_vehicle_detection.py,sha256=xse9f_DpO1VK-9Lv79ZmzblO8UaWWtSbAXd3R41NTSw,39309
174
+ matrice/deploy/utils/post_processing/usecases/emergency_vehicle_detection.py,sha256=3Mim_JvynHEkOtFRjh4dNTznwCqMgbdia4Iyk8RoPTc,39975
175
175
  matrice/deploy/utils/post_processing/usecases/face_emotion.py,sha256=eRfqBdryB0uNoOlz_y-JMuZL1BhPWrI-odqgx_9LT7s,39132
176
- matrice/deploy/utils/post_processing/usecases/fashion_detection.py,sha256=yB0ggoY1Lm7TGf0FSNMwQgSS24qXmd3C3GwPaMdExCU,39791
176
+ matrice/deploy/utils/post_processing/usecases/fashion_detection.py,sha256=f9gpzMDhIW-gyn46k9jgf8nY7YeoqAnTxGOzksabFbE,40457
177
177
  matrice/deploy/utils/post_processing/usecases/field_mapping.py,sha256=JDwYX8pd2W-waDvBh98Y_o_uchJu7wEYbFxOliA4Iq4,39822
178
178
  matrice/deploy/utils/post_processing/usecases/fire_detection.py,sha256=rLaUvU5ygvjGbOmjncEJCl_Oe52SRycS1Ar23LbRssM,32863
179
179
  matrice/deploy/utils/post_processing/usecases/flare_analysis.py,sha256=90UmC5ji12VvQa1OcQdXZIm9JYN9LOLLjm8JxCREncM,43267
180
180
  matrice/deploy/utils/post_processing/usecases/flower_segmentation.py,sha256=4I7qMx9Ztxg_hy9KTVX-3qBhAN-QwDt_Yigf9fFjLus,52017
181
- matrice/deploy/utils/post_processing/usecases/gender_detection.py,sha256=UTbS_TUltupJ27_-oe8MtG0WC3HyjvtiKeX-hRIperI,39440
181
+ matrice/deploy/utils/post_processing/usecases/gender_detection.py,sha256=DEnCTRew6B7DtPcBQVCTtpd_IQMvMusBcu6nadUg2oM,40107
182
182
  matrice/deploy/utils/post_processing/usecases/leaf.py,sha256=cwgB1ZNxkQFtkk-thSJrkXOGou1ghJr1kqtopb3sLD4,37036
183
183
  matrice/deploy/utils/post_processing/usecases/leaf_disease.py,sha256=bkiLccTdf4KUq3he4eCpBlKXb5exr-WBhQ_oWQ7os68,36225
184
184
  matrice/deploy/utils/post_processing/usecases/license_plate_detection.py,sha256=-HWqEL5jn7KXI20fTmKLHn3kGMopiDLngcEpeVbvGpE,34680
@@ -190,7 +190,7 @@ matrice/deploy/utils/post_processing/usecases/people_counting.py,sha256=mDJOwcrs
190
190
  matrice/deploy/utils/post_processing/usecases/plaque_segmentation_img.py,sha256=d__a0PkkObYVoC-Q5-2bFVfeyKnQHtB5xVAKVOCeFyk,41925
191
191
  matrice/deploy/utils/post_processing/usecases/pothole_segmentation.py,sha256=6Mv8SoEE5CGItY7S0g-SY5Lb3DV-WWVMlpEp04a86a8,43197
192
192
  matrice/deploy/utils/post_processing/usecases/ppe_compliance.py,sha256=koLwrPtLerXM9vV-Lk_nj3BWVzZXcGtenpFm79Rl7l0,30147
193
- matrice/deploy/utils/post_processing/usecases/price_tag_detection.py,sha256=evMC8pU_bVw5TbKUz3_LxyGSG6Yo0RGlrVhjBkHwUIc,39214
193
+ matrice/deploy/utils/post_processing/usecases/price_tag_detection.py,sha256=Sn_Dvwf5f_dcfaiPIl-pqckgP8z96CeNIJ4hfeab3FM,39880
194
194
  matrice/deploy/utils/post_processing/usecases/road_lane_detection.py,sha256=vTe0svmI7ztuSSh--Orv4MAFvP7DIkd2AA_Kzq67LeA,27050
195
195
  matrice/deploy/utils/post_processing/usecases/shelf_inventory_detection.py,sha256=HvDWWz3O5XsmWoyKduQToiS8epKz2Hn7DQ7ZgsheleA,28558
196
196
  matrice/deploy/utils/post_processing/usecases/shoplifting_detection.py,sha256=zqeV_ARV5gJqMY2sJGBjlU6UOb0SthGGbC8UNj_mycs,34701
@@ -225,8 +225,8 @@ matrice/deployment/camera_manager.py,sha256=ReBZqm1CNXRImKcbcZ4uWAT3TUWkof1D28oB
225
225
  matrice/deployment/deployment.py,sha256=PLIUD-PxTaC2Zxb3Y12wUddsryV-OJetjCjLoSUh7S4,48103
226
226
  matrice/deployment/inference_pipeline.py,sha256=bXLgd29ViA7o0c7YWLFJl1otBUQfTPb61jS6VawQB0Y,37918
227
227
  matrice/deployment/streaming_gateway_manager.py,sha256=w5swGsuFVfZIdOm2ZuBHRHlRdYYJMLopLsf2gb91lQ8,20946
228
- matrice-1.0.99121.dist-info/licenses/LICENSE.txt,sha256=2bm9uFabQZ3Ykb_SaSU_uUbAj2-htc6WJQmS_65qD00,1073
229
- matrice-1.0.99121.dist-info/METADATA,sha256=EBXVbD51fwqg16LEqYK0anItHUEvAcHQOSSeBU0PWMs,14624
230
- matrice-1.0.99121.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
231
- matrice-1.0.99121.dist-info/top_level.txt,sha256=P97js8ur6o5ClRqMH3Cjoab_NqbJ6sOQ3rJmVzKBvMc,8
232
- matrice-1.0.99121.dist-info/RECORD,,
228
+ matrice-1.0.99122.dist-info/licenses/LICENSE.txt,sha256=2bm9uFabQZ3Ykb_SaSU_uUbAj2-htc6WJQmS_65qD00,1073
229
+ matrice-1.0.99122.dist-info/METADATA,sha256=Fb2Nd8bxJLDOtVvgZ9DUlVmlGvjzyLm19xonwvX7PYg,14624
230
+ matrice-1.0.99122.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
231
+ matrice-1.0.99122.dist-info/top_level.txt,sha256=P97js8ur6o5ClRqMH3Cjoab_NqbJ6sOQ3rJmVzKBvMc,8
232
+ matrice-1.0.99122.dist-info/RECORD,,