Immersives aktives visuelles Feedback
Xuxin cheng* · jialong li* · shiqi yang
Ge yang · xiaolong wang



Dieser Code enthält die Implementierung für Teleoperation und Nachahmung von Open-Television-Lernen.
conda create -n tv python=3.8
conda activate tv
pip install -r requirements.txt
cd act/detr && pip install -e .Installieren Sie ZED SDK: https://www.stereolabs.com/developers/release/
Installieren Sie die API von Zed Python:
cd /usr/local/zed/ && python get_python_api.py
Wenn Sie ein Teleoperationsbeispiel in einer simulierten Umgebung (teleop_hand.py) ausprobieren möchten:
Installieren Sie ISAAC Gym: https://developer.nvidia.com/isaac-gym/
Befolgen Sie für Quest Local Streaming dieses Problem.
Apple erlaubt nicht WebXR auf Nicht-HTTPS-Verbindungen. Um die Anwendung lokal zu testen, müssen wir ein selbstsigniertes Zertifikat erstellen und auf dem Client installieren. Sie brauchen eine Ubuntu -Maschine und einen Router. Verbinden Sie die VisionPro und die Ubuntu -Maschine mit demselben Router.
ifconfig | grep inet
Angenommen, die lokale IP -Adresse der Ubuntu -Maschine beträgt 192.168.8.102 .
mkcert -install && mkcert -cert-file cert.pem -key-file key.pem 192.168.8.102 localhost 127.0.0.1
ps. Platzieren Sie die generierten cert.pem und key.pem -Dateien in teleop .
sudo iptables -A INPUT -p tcp --dport 8012 -j ACCEPT
sudo iptables-save
sudo iptables -L
oder kann mit ufw durchgeführt werden:
sudo ufw allow 8012
tv = OpenTeleVision(self.resolution_cropped, shm.name, image_queue, toggle_streaming, ngrok=False)
mkcert -CAROOT
Kopieren Sie den Rootca.pem über Airdrop in VisionPro und installieren Sie es.
Einstellungen> Allgemein> Über> Zertifikatvertrauenseinstellungen. Schalten Sie das Vertrauen für das Zertifikat ein.
Einstellungen> Apps> Safari> Erweiterte> Feature Flags> WebXR -verwandte Funktionen aktivieren
Öffnen Sie den Browser auf Safari auf VisionPro und gehen Sie zu https://192.168.8.102:8012?ws=wss://192.168.8.102:8012
Klicken Sie Enter VR und Allow die VR -Sitzung starten.
Für Meta Quest3 ist die Installation des Zertifikats nicht trivial. Wir müssen eine Netzwerk -Streaming -Lösung verwenden. Wir verwenden ngrok , um einen sicheren Tunnel zum Server zu erstellen. Diese Methode funktioniert sowohl für VisionPro als auch für Meta Quest3.
ngrok http 8012
ps. Wenn Sie NGROK für das Streaming von Netzwerkstreaming verwenden, können Sie OpenTeleVision mit:
self.tv = OpenTeleVision(self.resolution_cropped, self.shm.name, image_queue, toggle_streaming, ngrok=True)
cd teleop && python teleop_hand.py
Gehen Sie zu Ihrer Vuer -Site auf VisionPro, klicken Sie Enter VR und Allow die Eingabe der in die Eingabe von Umgebungen.
Sehen Sie Ihre Hände in 3D!

Laden Sie den Datensatz von https://drive.google.com/drive/folders/11wo96mumjmxro9hpvm4adz7thuugnemy herunter.
Platzieren Sie den heruntergeladenen Datensatz in data/recordings/ .
Verarbeiten Sie den angegebenen Datensatz für das Training mithilfe von scripts/post_process.py .
Sie können die Bild- und Aktionssequenzen einer bestimmten Episode im Datensatz mithilfe von scripts/replay_demo.py überprüfen.
ACT zu trainieren, rennen:
python imitate_episodes.py --policy_class ACT --kl_weight 10 --chunk_size 60 --hidden_dim 512 --batch_size 45 --dim_feedforward 3200 --num_epochs 50000 --lr 5e-5 --seed 0 --taskid 00 --exptid 01-sample-expt
python imitate_episodes.py --policy_class ACT --kl_weight 10 --chunk_size 60 --hidden_dim 512 --batch_size 45 --dim_feedforward 3200 --num_epochs 50000 --lr 5e-5 --seed 0 --taskid 00 --exptid 01-sample-expt
--save_jit --resume_ckpt 25000
scripts/deploy_sim.py , Beispiel verwendet, visualisieren: python deploy_sim.py --taskid 00 --exptid 01 --resume_ckpt 25000
@article{cheng2024tv,
title={Open-TeleVision: Teleoperation with Immersive Active Visual Feedback},
author={Cheng, Xuxin and Li, Jialong and Yang, Shiqi and Yang, Ge and Wang, Xiaolong},
journal={arXiv preprint arXiv:2407.01512},
year={2024}
}