Skip to content

Commit

Permalink
added sequence numbers to messages (#158)
Browse files Browse the repository at this point in the history
  • Loading branch information
aljazkonec1 authored Jan 13, 2025
1 parent 7821118 commit 7529260
Show file tree
Hide file tree
Showing 21 changed files with 35 additions and 3 deletions.
4 changes: 3 additions & 1 deletion depthai_nodes/ml/messages/creators/classification.py
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,9 @@ def create_classification_sequence_message(
raise ValueError("Scores should be in the range [0, 1].")

if np.any(~np.isclose(scores.sum(axis=1), 1.0, atol=1e-2)):
raise ValueError("Each row of scores should sum to 1.")
raise ValueError(
f"Each row of scores should sum to 1, got {scores.sum(axis=1)}."
)

scores = scores.astype(np.float32)

Expand Down
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/classification.py
Original file line number Diff line number Diff line change
Expand Up @@ -143,5 +143,6 @@ def run(self):
msg = create_classification_message(self.classes, scores)
msg.transformation = output.getTransformation()
msg.setTimestamp(output.getTimestamp())
msg.setSequenceNum(output.getSequenceNum())

self.out.send(msg)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/classification_sequence.py
Original file line number Diff line number Diff line change
Expand Up @@ -180,5 +180,6 @@ def run(self):
)
msg.transformation = output.getTransformation()
msg.setTimestamp(output.getTimestamp())
msg.setSequenceNum(output.getSequenceNum())

self.out.send(msg)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/embeddings.py
Original file line number Diff line number Diff line change
Expand Up @@ -64,5 +64,6 @@ def run(self):
assert (
len(output_names) == 1
), "Embeddings head should have only one output layer"
output.setSequenceNum(output.getSequenceNum())

self.out.send(output)
2 changes: 2 additions & 0 deletions depthai_nodes/ml/parsers/fastsam.py
Original file line number Diff line number Diff line change
Expand Up @@ -355,4 +355,6 @@ def run(self):
segmentation_message = create_segmentation_message(results_masks)
segmentation_message.transformation = output.getTransformation()
segmentation_message.setTimestamp(output.getTimestamp())
segmentation_message.setSequenceNum(output.getSequenceNum())

self.out.send(segmentation_message)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/hrnet.py
Original file line number Diff line number Diff line change
Expand Up @@ -114,5 +114,6 @@ def run(self):
)
keypoints_message.setTimestamp(output.getTimestamp())
keypoints_message.transformation = output.getTransformation()
keypoints_message.setSequenceNum(output.getSequenceNum())

self.out.send(keypoints_message)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/image_output.py
Original file line number Diff line number Diff line change
Expand Up @@ -115,5 +115,6 @@ def run(self):
image_message.setTimestamp(output.getTimestamp())
if output.getTransformation():
image_message.setTransformation(output.getTransformation())
image_message.setSequenceNum(output.getSequenceNum())

self.out.send(image_message)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/keypoints.py
Original file line number Diff line number Diff line change
Expand Up @@ -173,5 +173,6 @@ def run(self):
msg = create_keypoints_message(keypoints)
msg.setTimestamp(output.getTimestamp())
msg.transformation = output.getTransformation()
msg.setSequenceNum(output.getSequenceNum())

self.out.send(msg)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/lane_detection.py
Original file line number Diff line number Diff line change
Expand Up @@ -204,5 +204,6 @@ def run(self):
msg = create_cluster_message(points)
msg.setTimestamp(output.getTimestamp())
msg.transformation = output.getTransformation()
msg.setSequenceNum(output.getSequenceNum())

self.out.send(msg)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/map_output.py
Original file line number Diff line number Diff line change
Expand Up @@ -107,5 +107,6 @@ def run(self):
)
map_message.setTimestamp(output.getTimestamp())
map_message.transformation = output.getTransformation()
map_message.setSequenceNum(output.getSequenceNum())

self.out.send(map_message)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/mediapipe_palm_detection.py
Original file line number Diff line number Diff line change
Expand Up @@ -199,5 +199,6 @@ def run(self):
)
detections_msg.setTimestamp(output.getTimestamp())
detections_msg.transformation = output.getTransformation()
detections_msg.setSequenceNum(output.getSequenceNum())

self.out.send(detections_msg)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/mlsd.py
Original file line number Diff line number Diff line change
Expand Up @@ -172,5 +172,6 @@ def run(self):
message = create_line_detection_message(lines, np.array(scores))
message.setTimestamp(output.getTimestamp())
message.transformation = output.getTransformation()
message.setSequenceNum(output.getSequenceNum())

self.out.send(message)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/ppdet.py
Original file line number Diff line number Diff line change
Expand Up @@ -127,5 +127,6 @@ def run(self):
)
message.setTimestamp(output.getTimestamp())
message.transformation = output.getTransformation()
message.setSequenceNum(output.getSequenceNum())

self.out.send(message)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/regression.py
Original file line number Diff line number Diff line change
Expand Up @@ -89,5 +89,6 @@ def run(self):
regression_message = create_regression_message(predictions=predictions)
regression_message.setTimestamp(output.getTimestamp())
regression_message.transformation = output.getTransformation()
regression_message.setSequenceNum(output.getSequenceNum())

self.out.send(regression_message)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/scrfd.py
Original file line number Diff line number Diff line change
Expand Up @@ -218,5 +218,6 @@ def run(self):
)
message.setTimestamp(output.getTimestamp())
message.transformation = output.getTransformation()
message.setSequenceNum(output.getSequenceNum())

self.out.send(message)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/segmentation.py
Original file line number Diff line number Diff line change
Expand Up @@ -154,5 +154,6 @@ def run(self):
mask_message = create_segmentation_message(class_map)
mask_message.setTimestamp(output.getTimestamp())
mask_message.transformation = output.getTransformation()
mask_message.setSequenceNum(output.getSequenceNum())

self.out.send(mask_message)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/superanimal_landmarker.py
Original file line number Diff line number Diff line change
Expand Up @@ -100,5 +100,6 @@ def run(self):
msg = create_keypoints_message(keypoints, scores, self.score_threshold)
msg.setTimestamp(output.getTimestamp())
msg.transformation = output.getTransformation()
msg.setSequenceNum(output.getSequenceNum())

self.out.send(msg)
4 changes: 2 additions & 2 deletions depthai_nodes/ml/parsers/utils/ppdet.py
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ def _box_score(predictions: np.ndarray, _corners: np.ndarray) -> float:

def _unclip(
box: np.ndarray,
unclip_ratio: float = 3,
unclip_ratio: float = 2,
) -> Tuple[np.ndarray, np.ndarray]:
"""Internal function to dilate the bounding box area by a specified ratio.
Expand All @@ -94,7 +94,7 @@ def _unclip(
"""

box[2] = box[2] * np.sqrt(unclip_ratio)
box[3] = box[3] * unclip_ratio
box[3] = box[3] * np.sqrt(unclip_ratio)

return box

Expand Down
11 changes: 11 additions & 0 deletions depthai_nodes/ml/parsers/xfeat.py
Original file line number Diff line number Diff line change
Expand Up @@ -335,17 +335,22 @@ def run(self):
else:
matched_points = dai.TrackedFeatures()
matched_points.setTimestamp(output.getTimestamp())
matched_points.setSequenceNum(output.getSequenceNum())
self.out.send(matched_points)
continue

if self.previous_results is not None:
mkpts0, mkpts1 = match(self.previous_results, result)
matched_points = create_tracked_features_message(mkpts0, mkpts1)
matched_points.setTimestamp(output.getTimestamp())
matched_points.setSequenceNum(output.getSequenceNum())

self.out.send(matched_points)
else:
matched_points = dai.TrackedFeatures()
matched_points.setTimestamp(output.getTimestamp())
matched_points.setSequenceNum(output.getSequenceNum())

self.out.send(matched_points)

if self.trigger:
Expand Down Expand Up @@ -473,6 +478,8 @@ def run(self):
else:
matched_points = dai.TrackedFeatures()
matched_points.setTimestamp(reference_output.getTimestamp())
matched_points.setSequenceNum(reference_output.getSequenceNum())

self.out.send(matched_points)
continue

Expand All @@ -481,10 +488,14 @@ def run(self):
else:
matched_points = dai.TrackedFeatures()
matched_points.setTimestamp(target_output.getTimestamp())
matched_points.setSequenceNum(reference_output.getSequenceNum())

self.out.send(matched_points)
continue

mkpts0, mkpts1 = match(reference_result, target_result)
matched_points = create_tracked_features_message(mkpts0, mkpts1)
matched_points.setTimestamp(target_output.getTimestamp())
matched_points.setSequenceNum(reference_output.getSequenceNum())

self.out.send(matched_points)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/yolo.py
Original file line number Diff line number Diff line change
Expand Up @@ -398,5 +398,6 @@ def run(self):

detections_message.setTimestamp(output.getTimestamp())
detections_message.transformation = output.getTransformation()
detections_message.setSequenceNum(output.getSequenceNum())

self.out.send(detections_message)
1 change: 1 addition & 0 deletions depthai_nodes/ml/parsers/yunet.py
Original file line number Diff line number Diff line change
Expand Up @@ -297,5 +297,6 @@ def run(self):

detections_message.setTimestamp(output.getTimestamp())
detections_message.transformation = output.getTransformation()
detections_message.setSequenceNum(output.getSequenceNum())

self.out.send(detections_message)

0 comments on commit 7529260

Please sign in to comment.