|
1 | 1 | from typing import Any |
2 | 2 |
|
| 3 | +from inference.core.workflows.core_steps.analytics.line_counter.v2 import ( |
| 4 | + DETECTIONS_IN_OUT_PARAM, |
| 5 | +) |
| 6 | +from inference.core.workflows.core_steps.analytics.velocity.v1 import ( |
| 7 | + SMOOTHED_SPEED_KEY_IN_SV_DETECTIONS, |
| 8 | + SMOOTHED_VELOCITY_KEY_IN_SV_DETECTIONS, |
| 9 | + SPEED_KEY_IN_SV_DETECTIONS, |
| 10 | + VELOCITY_KEY_IN_SV_DETECTIONS, |
| 11 | +) |
3 | 12 | from inference.core.workflows.core_steps.common.query_language.entities.enums import ( |
4 | 13 | DetectionsProperty, |
5 | 14 | ) |
|
9 | 18 | from inference.core.workflows.core_steps.common.query_language.operations.utils import ( |
10 | 19 | safe_stringify, |
11 | 20 | ) |
| 21 | +from inference.core.workflows.execution_engine.constants import ( |
| 22 | + BOUNDING_RECT_ANGLE_KEY_IN_SV_DETECTIONS, |
| 23 | + BOUNDING_RECT_HEIGHT_KEY_IN_SV_DETECTIONS, |
| 24 | + BOUNDING_RECT_RECT_KEY_IN_SV_DETECTIONS, |
| 25 | + BOUNDING_RECT_WIDTH_KEY_IN_SV_DETECTIONS, |
| 26 | + IMAGE_DIMENSIONS_KEY, |
| 27 | + KEYPOINTS_XY_KEY_IN_SV_DETECTIONS, |
| 28 | + PATH_DEVIATION_KEY_IN_SV_DETECTIONS, |
| 29 | + PREDICTION_TYPE_KEY, |
| 30 | + TIME_IN_ZONE_KEY_IN_SV_DETECTIONS, |
| 31 | +) |
12 | 32 |
|
13 | 33 | DETECTION_PROPERTY_EXTRACTION = { |
14 | 34 | DetectionsProperty.X_MIN: lambda x: x[0][0].item(), |
|
29 | 49 | DetectionsProperty.TOP_RIGHT: lambda xyxy: (xyxy[2], xyxy[1]), |
30 | 50 | DetectionsProperty.BOTTOM_LEFT: lambda xyxy: (xyxy[0], xyxy[3]), |
31 | 51 | DetectionsProperty.BOTTOM_RIGHT: lambda xyxy: (xyxy[2], xyxy[3]), |
| 52 | + DetectionsProperty.IN_OUT: lambda x: x[5].get(DETECTIONS_IN_OUT_PARAM), |
| 53 | + DetectionsProperty.PATH_DEVIATION: lambda x: x[5].get( |
| 54 | + PATH_DEVIATION_KEY_IN_SV_DETECTIONS |
| 55 | + ), |
| 56 | + DetectionsProperty.TIME_IN_ZONE: lambda x: x[5].get( |
| 57 | + TIME_IN_ZONE_KEY_IN_SV_DETECTIONS |
| 58 | + ), |
| 59 | + DetectionsProperty.TRACKER_ID: lambda x: x[5].get("tracker_id"), |
| 60 | + DetectionsProperty.VELOCITY: lambda x: x[5].get(VELOCITY_KEY_IN_SV_DETECTIONS), |
| 61 | + DetectionsProperty.SPEED: lambda x: x[5].get(SPEED_KEY_IN_SV_DETECTIONS), |
| 62 | + DetectionsProperty.SMOOTHED_VELOCITY: lambda x: x[5].get( |
| 63 | + SMOOTHED_VELOCITY_KEY_IN_SV_DETECTIONS |
| 64 | + ), |
| 65 | + DetectionsProperty.SMOOTHED_SPEED: lambda x: x[5].get( |
| 66 | + SMOOTHED_SPEED_KEY_IN_SV_DETECTIONS |
| 67 | + ), |
| 68 | + DetectionsProperty.DIMENSIONS: lambda x: x[5].get(IMAGE_DIMENSIONS_KEY), |
| 69 | + DetectionsProperty.PREDICTION_TYPE: lambda x: x[5].get(PREDICTION_TYPE_KEY), |
| 70 | + DetectionsProperty.KEYPOINTS_XY: lambda x: x[5].get( |
| 71 | + KEYPOINTS_XY_KEY_IN_SV_DETECTIONS |
| 72 | + ), |
| 73 | + DetectionsProperty.BOUNDING_RECT: lambda x: x[5].get( |
| 74 | + BOUNDING_RECT_RECT_KEY_IN_SV_DETECTIONS |
| 75 | + ), |
| 76 | + DetectionsProperty.BOUNDING_RECT_WIDTH: lambda x: x[5].get( |
| 77 | + BOUNDING_RECT_WIDTH_KEY_IN_SV_DETECTIONS |
| 78 | + ), |
| 79 | + DetectionsProperty.BOUNDING_RECT_HEIGHT: lambda x: x[5].get( |
| 80 | + BOUNDING_RECT_HEIGHT_KEY_IN_SV_DETECTIONS |
| 81 | + ), |
| 82 | + DetectionsProperty.BOUNDING_RECT_ANGLE: lambda x: x[5].get( |
| 83 | + BOUNDING_RECT_ANGLE_KEY_IN_SV_DETECTIONS |
| 84 | + ), |
32 | 85 | } |
33 | 86 |
|
34 | 87 |
|
|
0 commit comments