feat(benchmark): add dynamic robot-object relationship video POC - #3001
Draft
fengweit wants to merge 32 commits into
Draft
feat(benchmark): add dynamic robot-object relationship video POC#3001fengweit wants to merge 32 commits into
fengweit wants to merge 32 commits into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
POC 2 — stacked on #2989
This is the second video-relation POC and is stacked on #2989 at
a4fb14069c67c0dd7b83ef17c927356bf9183e4b. POC 1 builds the replayable evaluator; this POC makes robot-to-object relationships continuously visible in a playable video and handles brief detector misses without hiding uncertainty.Until #2989 lands, GitHub's
main-based file view also contains the parent evaluator changes. Review the isolated POC 2 increment with this stacked comparison. After #2989 merges, this branch will be rebased onto updatedmainso the upstream diff becomes clean.What this adds
A small, directly visible evaluation surface:
The command is intentionally separate from benchmark question generation and scoring. It makes the evaluator's pseudo-label behavior inspectable as the video plays.
Evaluation idea
The reference run samples 46 one-second refresh opportunities across a 46-second source. Real YOLO-E inference produced robot-to-object relationships at 26 refreshes. The three moments below show the evaluation state changing over time.
These are YOLO-E pseudo-labels. Box-center geometry is deterministic, but semantic labels can be missed or wrong; the output must not be treated as human-verified 3D ground truth.
Bounded-retention POC
The baseline has valid relationships at 26/46 refreshes (56.5%). A two-second hold fills 10 isolated misses and displays relationships at 36/46 refreshes (78.3%). Retained boxes never masquerade as fresh inference: the panel says
STALE, shows the exact age, and returns toRobot not detectedafter the bounded window. No motion is interpolated.Run it
After materializing the LFS video/model assets:
Reference artifact verification:
Safety and failure behavior
Verification
Independent read-only code review returned PASS with no blockers. Follow-up polish from that review is included: box labels now print the same object IDs used by relation text, detector cleanup covers capture-construction failure, new outputs use a shareable mode while replacements preserve an existing mode, and setup explicitly materializes the model directory. The visual audit passes artifact integrity and box-center geometry; semantic labels remain an intentional
WARNbecause they are YOLO-E pseudo-labels.Scope and limitations