Skip to content
xxm19Public

About

[CoRL'26] PanoVine: Whole-Body Visuomotor Control for Soft Growing Vine Robot

Resources

Stars

5 stars

Watchers

0 watching

Forks

Repository files navigation

PanoVine: Whole-Body Visuomotor Control for Soft Growing Vine Robot

[Project page] [Paper] [Video]

Yimeng Qin*, Xiaomeng Xu*, William Heap, Aditi Oak, Shuran Song†, Allison Okamura†

*Equal Contribution, †Equal Advising

Stanford University

Image

🛠️ Installation

Clone this repo:

git clone https://github.com/xxm19/panovine.git
cd panovine

Create the mamba environment (We recommend Mambaforge over the standard Anaconda distribution for a faster environment solve):

mamba env create -f conda_environment.yaml
conda activate panovine

On-robot data collection and inference (unified_data_logger.py, policy_inference.py) additionally require a ROS Noetic installation providing rospy/std_msgs, plus the vine robot motor and sensor drivers. These are not needed for offline data processing or policy training, which run from the conda environment alone.

Demonstration Collection and Processing

Data recording

python unified_data_logger.py

saved file structure:

  • robot_logs/baseStation/<id>/*_sensors.npz (base encoder, pressure, torque)
  • robot_logs/controller2/<id>/*_sensors.npz (imu_id, encoder1/2, roll/pitch/yaw)
  • robot_logs/camera/<id>/cam_*.{mp4,avi} + timestamp csv/json

Data post-processing

python process_data_parallel.py \
  --log-root robot_logs \
  --output-path dataset.zarr.zip \
  --num-workers 16 \
  --action-repr angle

Policy Training

The training config is:

diffusion_policy/config/train_diffusion_transformer_free_space_vine_workspace.yaml

Run training:

python train.py \
  --config-name train_diffusion_transformer_free_space_vine_workspace \
  task.dataset_path=dataset.zarr.zip

multi-gpu

accelerate launch --num_processes 4 \
  train.py --config-name train_diffusion_transformer_free_space_vine_workspace \
  task.dataset_path=dataset.zarr.zip

Inference on Robot

python policy_inference.py \
  --config-name train_diffusion_transformer_free_space_vine_workspace \
  input=/path/to/ckpt.ckpt

📜 Citation

@article{qin2026panovine,
  title={PanoVine: Whole-Body Visuomotor Control for Soft Growing Vine Robot},
  author={Qin, Yimeng and Xu, Xiaomeng and Heap, William and Oak, Aditi and Song, Shuran and Okamura, Allison},
  journal={arXiv preprint arXiv:2606.22923},
  year={2026}
}

🏷️ License

This repository is released under the MIT license. See LICENSE for more details.

🙏 Acknowledgement

About

[CoRL'26] PanoVine: Whole-Body Visuomotor Control for Soft Growing Vine Robot

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages