Skip to content

Conversation

@spomichter
Copy link
Contributor

…tash changes

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines 80 to 88
),
match_tolerance=0.0,
buffer_size=2.0,
).pipe(ops.map(lambda pair: ImageDetections2D.from_ros_detection2d_array(*pair))) # type: ignore[misc]
).pipe(
ops.map(
lambda pair: (
ImageDetections2D.from_ros_detection2d_array(*pair), # type: ignore[misc]
)
)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P0 Badge Return both streams when aligning detections

The new detections_stream() advertises an Observable[tuple[ImageDetections2D, Detection2DArray]], but the mapper now returns a single-element tuple (ImageDetections2D.from_ros_detection2d_array(*pair),) while ingress unpacks the data into two variables. At runtime the first emission will raise “not enough values to unpack” and unsubscribe the pipeline, so the ReID module will never publish detections or annotations. The lambda should return both the converted ImageDetections2D and the raw Detection2DArray so ingress receives the expected pair.

Useful? React with 👍 / 👎.

Comment on lines 145 to 148
for detection in imageDetections:
detection.id = self.idsystem.register_detection(detection)

self.enriched_detections.publish(imageDetections.to_ros_detection2d_array())

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Publish enriched detections with ReID IDs

Inside ingress the loop populates enriched_array with long‑term IDs, but the message that is actually published is imageDetections.to_ros_detection2d_array(). This conversion rebuilds messages from the original detections, which never had their track_id updated, so downstream consumers (e.g. the updated PersonTracker that filters on det.track_id) continue to see the short‑term tracker IDs and the new follow‑specific-person API cannot work. Publish enriched_array (or update each detection’s track_id) once per frame instead of re-registering every detection inside the loop.

Useful? React with 👍 / 👎.

…tash changes

Former-commit-id: c4de897 [formerly 2891de5]
Former-commit-id: d155ed7
Former-commit-id: daa3728 [formerly 43ed37e]
Former-commit-id: 6caebbc
@spomichter spomichter force-pushed the dynamic-person-tracking-new-detections-REID branch from 43ed37e to 6caebbc Compare January 8, 2026 13:59
@spomichter spomichter force-pushed the dynamic-person-tracking-new-detections branch from 0057747 to e40f213 Compare January 8, 2026 22:59
@spomichter spomichter force-pushed the dynamic-person-tracking-new-detections-REID branch 2 times, most recently from 5de2d8d to c3b1c77 Compare January 8, 2026 23:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants