Skip to main content

Four-Camera Real-Time Display

The Walker S2 simulator supports real-time previews from four RGB cameras. The HeadStereoVisualizer class displays the two head-camera feeds side by side. Camera visualization is available in teleoperation, data collection, replay, and inference modes.

1. Camera Configuration

ParameterDescriptionDefault
--robot.head_viz_enabledEnables camera visualizationtrue
--robot.head_viz_window_nameSets the visualization window title"walker_s2_cameras"
--robot.head_viz_scaleSets the window scale factor1.0
--robot.head_viz_every_nRefreshes the display every N frames10
--robot.head_viz_window_xSets the window's X-coordinate40
--robot.head_viz_window_ySets the window's Y-coordinate40
--robot.head_viz_show_labelsShows camera labelstrue
--display_dataPrints data in the terminalfalse

Parameter details:

  • head_viz_enabled: Controls whether the camera visualization window is enabled.
  • head_viz_every_n: Controls the visualization refresh rate. A larger value can reduce CPU usage.
  • display_data: Controls whether joint-state data is printed in the terminal.

2. Camera Names and Locations

CameraLocationPurpose
head_leftLeft side of the headForward-facing wide-angle view
head_rightRight side of the headForward-facing wide-angle view
wrist_leftLeft wristEye-in-hand view
wrist_rightRight wristEye-in-hand view

3. Visualization Window Layout

+-----------------------------------------+
| walker_s2_cameras |
+--------------------+--------------------+
| | |
| head_left | head_right |
| | |
+--------------------+--------------------+
| wrist_left | wrist_right |
+--------------------+--------------------+

4. Example Commands

4.1 Teleoperation

/isaac-sim/python.sh src/lerobot/scripts/lerobot_teleoperate.py \
--robot.type=walker_s2_sim \
--robot.headless=false \
--task=Packing_Box \
--teleop.type=walker_s2_keyboard \
--robot.head_viz_enabled=true \
--robot.head_viz_window_name="walker_s2_cameras" \
--robot.head_viz_every_n=1 \
--display_data=false

4.2 Data Collection

/isaac-sim/python.sh src/lerobot/scripts/lerobot_record.py \
--robot.type=walker_s2_sim \
--robot.headless=false \
--task=Packing_Box \
--teleop.type=walker_s2_keyboard \
--dataset.root=./datasets/packing_box \
--dataset.num_episodes=10 \
--dataset.single_task="Packing box task" \
--dataset.video=true \
--robot.head_viz_enabled=true \
--robot.head_viz_every_n=10 \
--display_data=false \
--play_sounds=false

4.3 Data Replay

/isaac-sim/python.sh src/lerobot/scripts/lerobot_replay.py \
--robot.type=walker_s2_sim \
--task=Packing_Box \
--dataset.root=./datasets/packing_box \
--dataset.episode=0 \
--robot.head_viz_enabled=true \
--robot.head_viz_every_n=5 \
--display_data=false \
--play_sounds=false

4.4 Policy Inference

/isaac-sim/python.sh src/lerobot/scripts/lerobot_record.py \
--robot.type=walker_s2_sim \
--robot.headless=false \
--task=Packing_Box \
--policy.path=your_checkpoint_dir \
--dataset.root=./datasets/packing_box/inference \
--dataset.num_episodes=10 \
--dataset.video=true \
--robot.head_viz_enabled=true \
--robot.head_viz_every_n=5 \
--display_data=false \
--play_sounds=false