pollen-robotics/grabette-slam
3
Grabette SLAM → LeRobot
A HuggingFace Space that turns a raw Grabette recording dataset into a LeRobot dataset and pushes it to the Hub.
- Sign in with your Hugging Face account (OAuth).
- Give a source dataset
repo_id(raw OAK-D recording on the Hub), a targetrepo_idto create, and a task description. - For each episode the Space runs, in-process:
convert_episode— expand the recording into theoak/layoutrun_oak_slam— RGBD-inertial odometry via the bundledoffline_vslambinarybuild_dataset— assemble a LeRobot v3 datasetpush_to_hub— upload under your account- A link + embedded view of the LeRobot visualizer is shown for the result (the dataset must be public to be visualized).
Access the spaces
Why a Docker Space
The SLAM step is a compiled C++ binary (offline_vslam, built on RTAB-Map). Locally it runs in the pollenrobotics/oak-vslam Docker image, but Spaces cannot run Docker-in-Docker. So this Space is that image: it builds the binary at image-build time and run_oak_slam(..., binary=...) calls it directly.
Self-contained build
The grabette-postprocess package (with offline_vslam.cpp) is vendored into the build context as ./grabette-postprocess — no git clone, no private-repo secret. deploy.sh assembles that layout from the working tree and uploads it.
HF="uv run --project ../../packages/grabette-postprocess hf" \
./deploy.sh pollen-robotics/grabette-slamNote: RTAB-Map is compiled with --parallel 2 to stay within the HF build runner's memory (full parallelism OOMs it).