Skip to content

dexsim visualize for per point yoshikawa score - #659

Merged
Yuan-Xinyi merged 1 commit into
xinyi/workspace-vizfrom
cj/add-dexsim-visualize-per-point-yoshikawa-score
Sep 21, 2026
Merged

Yuan-Xinyi merged 1 commit into
xinyi/workspace-vizfrom
cj/add-dexsim-visualize-per-point-yoshikawa-score

Conversation

@matafela

@matafela matafela commented Sep 19, 2026 •

Copy link
Copy Markdown
Collaborator

Description

Add workspace manipulability visualization with DexSim support

Visualize per-point Yoshikawa manipulability across the robot workspace, with linear/log color mapping and distinct styling for unreachable samples. Add selected-point diagnostics and translational velocity ellipsoids in Matplotlib.

Include a simulation example that creates a UR5 and displays its colored workspace alongside the robot in DexSim or Viser, with offscreen image export support.

Run the example from the repository root:

conda activate embodichain2

# Open the native DexSim viewer
python -m scripts.tutorials.sim.visualize_robot_workspace

# Use the Viser browser viewer
python -m scripts.tutorials.sim.visualize_robot_workspace --backend viser

# Analyze Cartesian reachability and save an offscreen image
python -m scripts.tutorials.sim.visualize_robot_workspace \
    --mode cartesian_space --headless

Optional flags: --num-samples 6000 and --log-scale.

image

Type of change

  • Enhancement (non-breaking change which improves an existing functionality)

Checklist

  • I have run the black . command to format the code base.
  • I reviewed affected documentation and agent context, updated it where needed, or explained why no update was needed.
  • Public API changes are reflected in the API docs (python docs/scripts/check_api_docs.py), if applicable
  • I have added tests that prove my fix is effective or that my feature works
  • Dependencies have been updated, if applicable.

@matafela
matafela requested a review from Yuan-Xinyi September 19, 2026 10:32
@greptile-apps

greptile-apps Bot commented Sep 19, 2026

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

The PR appears safe to merge; no concrete behavioral, security, or repository-rule violations remain.

Summary

This PR adds a runnable UR5 workspace visualization tutorial that analyzes manipulability, aligns scores with reachable and rejected samples, and publishes the resulting colored point cloud through native DexSim or Viser.

  • Supports joint-space and Cartesian-space analysis with linear or logarithmic color mapping.
  • Supports native interactive viewing, browser visualization, and offscreen PNG capture.
  • Adds focused tests for score alignment, arena translation, backend routing, lifecycle ordering, and cleanup.
  • Updates robot-workspace context documentation to describe the new tutorial and coordinate-frame behavior.
Diagram
%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[Parse tutorial options] --> B[Create SimulationManager]
    B --> C[Add and prepare UR5]
    C --> D[Run WorkspaceAnalyzer]
    D --> E[Align points, scores, and reachability]
    E --> F[Map Yoshikawa scores to RGB]
    F --> G{Selected backend}
    G -->|DexSim| H[Create native point cloud]
    G -->|Viser| I[Publish point-cloud overlay]
    H --> J{Headless?}
    J -->|Yes| K[Render and save PNG]
    J -->|No| L[Open native viewer and update]
    I --> M[Serve browser viewer and update]
Loading

Reviews (1) · Last reviewed commit: "update"

@Yuan-Xinyi Yuan-Xinyi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

ready to merge

@Yuan-Xinyi
Yuan-Xinyi merged commit 5162d01 into xinyi/workspace-viz Sep 21, 2026
1 check passed
@Yuan-Xinyi
Yuan-Xinyi deleted the cj/add-dexsim-visualize-per-point-yoshikawa-score branch September 21, 2026 04:08
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