From c435d3cebc6395538158bee6d2919e6ee1f930ac Mon Sep 17 00:00:00 2001 From: Steven Palma Date: Tue, 23 Sep 2025 18:46:27 +0200 Subject: [PATCH] feat(script): add entry point for dataset viz (#2006) * chore(scripts): rename script dataset viz * feat(scripts): add entry point for dataset-viz --------- Signed-off-by: Steven Palma --- README.md | 6 +++--- pyproject.toml | 1 + src/lerobot/robots/viperx/README.md | 2 +- .../{visualize_dataset.py => lerobot_dataset_viz.py} | 6 +++--- tests/datasets/test_visualize_dataset.py | 2 +- 5 files changed, 9 insertions(+), 8 deletions(-) rename src/lerobot/scripts/{visualize_dataset.py => lerobot_dataset_viz.py} (98%) diff --git a/README.md b/README.md index a3f28f55..a59f96de 100644 --- a/README.md +++ b/README.md @@ -202,7 +202,7 @@ Check out [example 1](https://github.com/huggingface/lerobot/blob/main/examples/ You can also locally visualize episodes from a dataset on the hub by executing our script from the command line: ```bash -python -m lerobot.scripts.visualize_dataset \ +lerobot-dataset-viz \ --repo-id lerobot/pusht \ --episode-index 0 ``` @@ -210,7 +210,7 @@ python -m lerobot.scripts.visualize_dataset \ or from a dataset in a local folder with the `root` option and the `--local-files-only` (in the following case the dataset will be searched for in `./my_local_data_dir/lerobot/pusht`) ```bash -python -m lerobot.scripts.visualize_dataset \ +lerobot-dataset-viz \ --repo-id lerobot/pusht \ --root ./my_local_data_dir \ --local-files-only 1 \ @@ -221,7 +221,7 @@ It will open `rerun.io` and display the camera streams, robot states and actions https://github-production-user-asset-6210df.s3.amazonaws.com/4681518/328035972-fd46b787-b532-47e2-bb6f-fd536a55a7ed.mov?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240505%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240505T172924Z&X-Amz-Expires=300&X-Amz-Signature=d680b26c532eeaf80740f08af3320d22ad0b8a4e4da1bcc4f33142c15b509eda&X-Amz-SignedHeaders=host&actor_id=24889239&key_id=0&repo_id=748713144 -Our script can also visualize datasets stored on a distant server. See `python -m lerobot.scripts.visualize_dataset --help` for more instructions. +Our script can also visualize datasets stored on a distant server. See `lerobot-dataset-viz --help` for more instructions. ### The `LeRobotDataset` format diff --git a/pyproject.toml b/pyproject.toml index 9ee3c962..6fa054cd 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -171,6 +171,7 @@ lerobot-setup-motors="lerobot.setup_motors:main" lerobot-teleoperate="lerobot.teleoperate:main" lerobot-eval="lerobot.scripts.eval:main" lerobot-train="lerobot.scripts.train:main" +lerobot-dataset-viz="lerobot.scripts.lerobot_dataset_viz:main" lerobot-info="lerobot.scripts.lerobot_info:main" # ---------------- Tool Configurations ---------------- diff --git a/src/lerobot/robots/viperx/README.md b/src/lerobot/robots/viperx/README.md index f6386215..2e8fc728 100644 --- a/src/lerobot/robots/viperx/README.md +++ b/src/lerobot/robots/viperx/README.md @@ -118,7 +118,7 @@ echo ${HF_USER}/aloha_test If you didn't upload with `--control.push_to_hub=false`, you can also visualize it locally with [Rerun](https://github.com/rerun-io/rerun): ```bash -python -m lerobot.scripts.visualize_dataset \ +lerobot-dataset-viz \ --repo-id ${HF_USER}/aloha_test --episode 0 ``` diff --git a/src/lerobot/scripts/visualize_dataset.py b/src/lerobot/scripts/lerobot_dataset_viz.py similarity index 98% rename from src/lerobot/scripts/visualize_dataset.py rename to src/lerobot/scripts/lerobot_dataset_viz.py index dda12594..2033b36b 100644 --- a/src/lerobot/scripts/visualize_dataset.py +++ b/src/lerobot/scripts/lerobot_dataset_viz.py @@ -29,14 +29,14 @@ Examples: - Visualize data stored on a local machine: ``` -local$ python -m lerobot.scripts.visualize_dataset \ +local$ lerobot-dataset-viz \ --repo-id lerobot/pusht \ --episode-index 0 ``` - Visualize data stored on a distant machine with a local viewer: ``` -distant$ python -m lerobot.scripts.visualize_dataset \ +distant$ lerobot-dataset-viz \ --repo-id lerobot/pusht \ --episode-index 0 \ --save 1 \ @@ -50,7 +50,7 @@ local$ rerun lerobot_pusht_episode_0.rrd (You need to forward the websocket port to the distant machine, with `ssh -L 9087:localhost:9087 username@remote-host`) ``` -distant$ python -m lerobot.scripts.visualize_dataset \ +distant$ lerobot-dataset-viz \ --repo-id lerobot/pusht \ --episode-index 0 \ --mode distant \ diff --git a/tests/datasets/test_visualize_dataset.py b/tests/datasets/test_visualize_dataset.py index 303342e3..8e92ec82 100644 --- a/tests/datasets/test_visualize_dataset.py +++ b/tests/datasets/test_visualize_dataset.py @@ -15,7 +15,7 @@ # limitations under the License. import pytest -from lerobot.scripts.visualize_dataset import visualize_dataset +from lerobot.scripts.lerobot_dataset_viz import visualize_dataset @pytest.mark.skip("TODO: add dummy videos")