maniskill_dataset_converted_externally_to_rlds

  • Descrizione :

Simula Franka mentre esegue vari compiti di manipolazione

Diviso Esempi
'train' 30.213
  • Struttura delle caratteristiche :
FeaturesDict({
    'episode_metadata': FeaturesDict({
        'episode_id': Text(shape=(), dtype=string),
        'file_path': Text(shape=(), dtype=string),
    }),
    'steps': Dataset({
        'action': Tensor(shape=(7,), dtype=float32),
        'discount': Scalar(shape=(), dtype=float32),
        'is_first': bool,
        'is_last': bool,
        'is_terminal': bool,
        'language_embedding': Tensor(shape=(512,), dtype=float32),
        'language_instruction': Text(shape=(), dtype=string),
        'observation': FeaturesDict({
            'base_pose': Tensor(shape=(7,), dtype=float32),
            'depth': Image(shape=(256, 256, 1), dtype=uint16),
            'image': Image(shape=(256, 256, 3), dtype=uint8),
            'main_camera_cam2world_gl': Tensor(shape=(4, 4), dtype=float32),
            'main_camera_extrinsic_cv': Tensor(shape=(4, 4), dtype=float32),
            'main_camera_intrinsic_cv': Tensor(shape=(3, 3), dtype=float32),
            'state': Tensor(shape=(18,), dtype=float32),
            'target_object_or_part_final_pose': Tensor(shape=(7,), dtype=float32),
            'target_object_or_part_final_pose_valid': Tensor(shape=(7,), dtype=uint8),
            'target_object_or_part_initial_pose': Tensor(shape=(7,), dtype=float32),
            'target_object_or_part_initial_pose_valid': Tensor(shape=(7,), dtype=uint8),
            'tcp_pose': Tensor(shape=(7,), dtype=float32),
            'wrist_camera_cam2world_gl': Tensor(shape=(4, 4), dtype=float32),
            'wrist_camera_extrinsic_cv': Tensor(shape=(4, 4), dtype=float32),
            'wrist_camera_intrinsic_cv': Tensor(shape=(3, 3), dtype=float32),
            'wrist_depth': Image(shape=(256, 256, 1), dtype=uint16),
            'wrist_image': Image(shape=(256, 256, 3), dtype=uint8),
        }),
        'reward': Scalar(shape=(), dtype=float32),
    }),
})
  • Documentazione delle funzionalità :
Caratteristica Classe Forma Tipo D Descrizione
CaratteristicheDict
metadati_episodio CaratteristicheDict
metadati_episodio/id_episodio Testo corda ID episodio.
metadati_episodio/percorso_file Testo corda Percorso del file di dati originale.
passi Set di dati
passi/azione Tensore (7,) float32 L'azione del robot consiste in [3x posizione target delta dell'effettore finale, 3x orientamento target delta dell'effettore finale in formato asse-angolo, 1x posizione target della pinza (imitazione per due dita)]. Per la posizione target delta, un'azione di -1 è associata a un movimento del robot di -0,1 m e un'azione di 1 è associata a un movimento di 0,1 m. Per l'orientamento del target delta, il suo angolo codificato è mappato su un intervallo di [-0.1rad, 0.1rad] per l'esecuzione del robot. Ad esempio, un'azione di [1, 0, 0] significa ruotare lungo l'asse x di 0,1 rad. Per la posizione target della pinza, un'azione pari a -1 significa chiusura e un'azione pari a 1 significa apertura.
passi/sconto Scalare float32 Sconto se fornito, il valore predefinito è 1.
passi/è_primo Tensore bool
passi/è_ultimo Tensore bool
passi/è_terminale Tensore bool
passaggi/incorporamento_lingua Tensore (512,) float32 Incorporamento del linguaggio Kona. Vedi https://tfhub.dev/google/universal-sentence-encoder-large/5
passi/lingua_istruzioni Testo corda Insegnamento della lingua.
passi/osservazione CaratteristicheDict
passi/osservazione/base_posa Tensore (7,) float32 La posa base del robot nella cornice del mondo è composta da [x, y, z, qw, qx, qy, qz]. Le prime tre dimensioni rappresentano le posizioni xyz in metri. Le ultime quattro dimensioni sono la rappresentazione quaternionica della rotazione.
passi/osservazione/profondità Immagine (256, 256, 1) uint16 Fotocamera principale Osservazione della profondità. Dividere il valore della profondità per 2**10 per ottenere la profondità in metri.
passi/osservazione/immagine Immagine (256, 256, 3) uint8 Osservazione RGB della fotocamera principale.
passi/osservazione/main_camera_cam2world_gl Tensore (4, 4) float32 Trasformazione dall'inquadratura della fotocamera principale all'inquadratura mondiale nella convenzione OpenGL/Blender.
passi/osservazione/main_camera_extrinsic_cv Tensore (4, 4) float32 Matrice estrinseca della fotocamera principale nella convenzione OpenCV.
passi/osservazione/main_camera_intrinsic_cv Tensore (3, 3) float32 Matrice intrinseca della fotocamera principale nella convenzione OpenCV.
passi/osservazione/stato Tensore (18,) float32 Stato del robot, consiste di [7x angoli del giunto del robot, 2x posizione della pinza, 7x velocità dell'angolo del giunto del robot, 2x velocità della pinza]. Angolo in radianti, posizione in metri.
passi/osservazione/target_object_or_part_final_pose Tensore (7,) float32 La posa finale verso la quale è necessario manipolare l'oggetto target o la parte dell'oggetto è composta da [x, y, z, qw, qx, qy, qz]. La posa è rappresentata nella cornice del mondo. Un episodio è considerato riuscito se l'oggetto target o la parte dell'oggetto viene manipolato in questa posa.
passi/osservazione/target_object_or_part_final_pose_valid Tensore (7,) uint8 Indica se ciascuna dimensione di target_object_or_part_final_pose è valida in un ambiente. 1 = valido; 0 = non valido (nel qual caso si dovrebbero ignorare le dimensioni corrispondenti in target_object_or_part_final_pose). "Non valido" significa che non esiste alcun controllo di successo sulla posa finale dell'oggetto di destinazione o della parte dell'oggetto nelle dimensioni corrispondenti.
passaggi/osservazione/target_object_or_part_initial_pose Tensore (7,) float32 La posa iniziale dell'oggetto target o della parte dell'oggetto da manipolare è composta da [x, y, z, qw, qx, qy, qz]. La posa è rappresentata nella cornice del mondo. Questa variabile viene utilizzata per specificare l'oggetto o la parte di oggetto di destinazione quando in un ambiente sono presenti più oggetti o parti di oggetto
passaggi/osservazione/target_object_or_part_initial_pose_valid Tensore (7,) uint8 Indica se ciascuna dimensione di target_object_or_part_initial_pose è valida in un ambiente. 1 = valido; 0 = non valido (nel qual caso si dovrebbero ignorare le dimensioni corrispondenti in target_object_or_part_initial_pose).
passi/osservazione/tcp_pose Tensore (7,) float32 La posa del punto centrale dello strumento del robot nella cornice del mondo, consiste di [x, y, z, qw, qx, qy, qz]. Il punto centrale dell'utensile è il centro tra le due dita della pinza.
passi/osservazione/wrist_camera_cam2world_gl Tensore (4, 4) float32 Trasformazione dalla cornice della fotocamera da polso alla cornice del mondo nella convenzione OpenGL/Blender.
passi/osservazione/wrist_camera_extrinsic_cv Tensore (4, 4) float32 Matrice estrinseca della fotocamera da polso nella convenzione OpenCV.
passi/osservazione/wrist_camera_intrinsic_cv Tensore (3, 3) float32 Matrice intrinseca della fotocamera da polso nella convenzione OpenCV.
passi/osservazione/profondità_polso Immagine (256, 256, 1) uint16 Fotocamera da polso Osservazione della profondità. Dividere il valore della profondità per 2**10 per ottenere la profondità in metri.
passi/osservazione/immagine_polso Immagine (256, 256, 3) uint8 Osservazione RGB con fotocamera da polso.
passi/ricompensa Scalare float32 Ricompensa se fornita, 1 nel passaggio finale per le demo.
  • Citazione :
@inproceedings{gu2023maniskill2,
  title={ManiSkill2: A Unified Benchmark for Generalizable Manipulation Skills},
  author={Gu, Jiayuan and Xiang, Fanbo and Li, Xuanlin and Ling, Zhan and Liu, Xiqiang and Mu, Tongzhou and Tang, Yihe and Tao, Stone and Wei, Xinyue and Yao, Yunchao and Yuan, Xiaodi and Xie, Pengwei and Huang, Zhiao and Chen, Rui and Su, Hao},
  booktitle={International Conference on Learning Representations},
  year={2023}
}