- Keterangan :
Simulasi Franka melakukan berbagai tugas manipulasi
Beranda : https://github.com/haosulab/ManiSkill2
Kode sumber :
tfds.robotics.rtx.ManiskillDatasetConvertedExternallyToRlds
Versi :
-
0.1.0
(default): Rilis awal.
-
Ukuran unduhan :
Unknown size
Ukuran kumpulan data :
151.05 GiB
Cache otomatis ( dokumentasi ): Tidak
Perpecahan :
Membelah | Contoh |
---|---|
'train' | 30.213 |
- Struktur fitur :
FeaturesDict({
'episode_metadata': FeaturesDict({
'episode_id': Text(shape=(), dtype=string),
'file_path': Text(shape=(), dtype=string),
}),
'steps': Dataset({
'action': Tensor(shape=(7,), dtype=float32, description=Robot action, consists of [3x end effector delta target position, 3x end effector delta target orientation in axis-angle format, 1x gripper target position (mimic for two fingers)]. For delta target position, an action of -1 maps to a robot movement of -0.1m, and action of 1 maps to a movement of 0.1m. For delta target orientation, its encoded angle is mapped to a range of [-0.1rad, 0.1rad] for robot execution. For example, an action of [1, 0, 0] means rotating along the x-axis by 0.1 rad. For gripper target position, an action of -1 means close, and an action of 1 means open.),
'discount': Scalar(shape=(), dtype=float32, description=Discount if provided, default to 1.),
'is_first': bool,
'is_last': bool,
'is_terminal': bool,
'language_embedding': Tensor(shape=(512,), dtype=float32, description=Kona language embedding. See https://tfhub.dev/google/universal-sentence-encoder-large/5),
'language_instruction': Text(shape=(), dtype=string),
'observation': FeaturesDict({
'base_pose': Tensor(shape=(7,), dtype=float32, description=Robot base pose in the world frame, consists of [x, y, z, qw, qx, qy, qz]. The first three dimensions represent xyz positions in meters. The last four dimensions are the quaternion representation of rotation.),
'depth': Image(shape=(256, 256, 1), dtype=uint16, description=Main camera Depth observation. Divide the depth value by 2**10 to get the depth in meters.),
'image': Image(shape=(256, 256, 3), dtype=uint8, description=Main camera RGB observation.),
'main_camera_cam2world_gl': Tensor(shape=(4, 4), dtype=float32, description=Transformation from the main camera frame to the world frame in OpenGL/Blender convention.),
'main_camera_extrinsic_cv': Tensor(shape=(4, 4), dtype=float32, description=Main camera extrinsic matrix in OpenCV convention.),
'main_camera_intrinsic_cv': Tensor(shape=(3, 3), dtype=float32, description=Main camera intrinsic matrix in OpenCV convention.),
'state': Tensor(shape=(18,), dtype=float32, description=Robot state, consists of [7x robot joint angles, 2x gripper position, 7x robot joint angle velocity, 2x gripper velocity]. Angle in radians, position in meters.),
'target_object_or_part_final_pose': Tensor(shape=(7,), dtype=float32, description=The final pose towards which the target object or object part needs be manipulated, consists of [x, y, z, qw, qx, qy, qz]. The pose is represented in the world frame. An episode is considered successful if the target object or object part is manipulated to this pose.),
'target_object_or_part_final_pose_valid': Tensor(shape=(7,), dtype=uint8, description=Whether each dimension of target_object_or_part_final_pose is valid in an environment. 1 = valid; 0 = invalid (in which case one should ignore the corresponding dimensions in target_object_or_part_final_pose). "Invalid" means that there is no success check on the final pose of target object or object part in the corresponding dimensions.),
'target_object_or_part_initial_pose': Tensor(shape=(7,), dtype=float32, description=The initial pose of the target object or object part to be manipulated, consists of [x, y, z, qw, qx, qy, qz]. The pose is represented in the world frame. This variable is used to specify the target object or object part when multiple objects or object parts are present in an environment),
'target_object_or_part_initial_pose_valid': Tensor(shape=(7,), dtype=uint8, description=Whether each dimension of target_object_or_part_initial_pose is valid in an environment. 1 = valid; 0 = invalid (in which case one should ignore the corresponding dimensions in target_object_or_part_initial_pose).),
'tcp_pose': Tensor(shape=(7,), dtype=float32, description=Robot tool-center-point pose in the world frame, consists of [x, y, z, qw, qx, qy, qz]. Tool-center-point is the center between the two gripper fingers.),
'wrist_camera_cam2world_gl': Tensor(shape=(4, 4), dtype=float32, description=Transformation from the wrist camera frame to the world frame in OpenGL/Blender convention.),
'wrist_camera_extrinsic_cv': Tensor(shape=(4, 4), dtype=float32, description=Wrist camera extrinsic matrix in OpenCV convention.),
'wrist_camera_intrinsic_cv': Tensor(shape=(3, 3), dtype=float32, description=Wrist camera intrinsic matrix in OpenCV convention.),
'wrist_depth': Image(shape=(256, 256, 1), dtype=uint16, description=Wrist camera Depth observation. Divide the depth value by 2**10 to get the depth in meters.),
'wrist_image': Image(shape=(256, 256, 3), dtype=uint8, description=Wrist camera RGB observation.),
}),
'reward': Scalar(shape=(), dtype=float32, description=Reward if provided, 1 on final step for demos.),
}),
})
- Dokumentasi fitur :
Fitur | Kelas | Membentuk | Tipe D | Keterangan |
---|---|---|---|---|
FiturDict | ||||
episode_metadata | FiturDict | |||
episode_metadata/episode_id | Teks | rangkaian | ID Episode. | |
episode_metadata/file_path | Teks | rangkaian | Jalur ke file data asli. | |
tangga | Kumpulan data | |||
langkah/tindakan | Tensor | (7,) | float32 | Aksi robot, terdiri dari [3x posisi target delta efektor ujung, 3x orientasi target delta efektor ujung dalam format sudut sumbu, 1x posisi target gripper (meniru dua jari)]. Untuk posisi target delta, aksi -1 peta terhadap pergerakan robot sebesar -0,1m, dan aksi 1 peta terhadap pergerakan 0,1m. Untuk orientasi target delta, sudut yang dikodekan dipetakan ke kisaran [-0.1rad, 0.1rad] untuk eksekusi robot. Misalnya, aksi [1, 0, 0] berarti memutar sepanjang sumbu x sebesar 0,1 rad. Untuk posisi target gripper, aksi -1 berarti tutup, dan aksi 1 berarti terbuka. |
langkah/diskon | Skalar | float32 | Diskon jika disediakan, defaultnya adalah 1. | |
langkah/adalah_pertama | Tensor | bodoh | ||
langkah/adalah_terakhir | Tensor | bodoh | ||
langkah/is_terminal | Tensor | bodoh | ||
langkah/bahasa_embedding | Tensor | (512,) | float32 | Penyematan bahasa Kona. Lihat https://tfhub.dev/google/universal-sentence-encoder-large/5 |
langkah/bahasa_instruksi | Teks | rangkaian | Instruksi Bahasa. | |
langkah/pengamatan | FiturDict | |||
langkah/pengamatan/base_pose | Tensor | (7,) | float32 | Pose dasar robot pada world frame, terdiri dari [x, y, z, qw, qx, qy, qz]. Tiga dimensi pertama mewakili posisi xyz dalam meter. Empat dimensi terakhir adalah representasi angka empat dari rotasi. |
langkah/pengamatan/kedalaman | Gambar | (256, 256, 1) | uint16 | Pengamatan kedalaman kamera utama. Bagilah nilai kedalaman dengan 2**10 untuk mendapatkan kedalaman dalam meter. |
langkah/pengamatan/gambar | Gambar | (256, 256, 3) | uint8 | Pengamatan RGB kamera utama. |
langkah/observasi/main_camera_cam2world_gl | Tensor | (4, 4) | float32 | Transformasi dari bingkai kamera utama ke bingkai dunia dalam konvensi OpenGL/Blender. |
langkah/pengamatan/main_camera_extrinsic_cv | Tensor | (4, 4) | float32 | Matriks ekstrinsik kamera utama dalam konvensi OpenCV. |
langkah/pengamatan/main_camera_intrinsic_cv | Tensor | (3, 3) | float32 | Matriks intrinsik kamera utama dalam konvensi OpenCV. |
langkah/pengamatan/keadaan | Tensor | (18,) | float32 | Keadaan robot, terdiri dari [7x sudut sambungan robot, 2x posisi gripper, 7x kecepatan sudut sambungan robot, 2x kecepatan gripper]. Sudut dalam radian, posisi dalam meter. |
langkah/pengamatan/target_object_or_part_final_pose | Tensor | (7,) | float32 | Pose terakhir yang objek targetnya atau bagian objeknya perlu dimanipulasi, terdiri dari [x, y, z, qw, qx, qy, qz]. Pose tersebut direpresentasikan dalam bingkai dunia. Sebuah episode dianggap berhasil jika objek target atau bagian objek dimanipulasi ke pose ini. |
langkah/pengamatan/target_object_or_part_final_pose_valid | Tensor | (7,) | uint8 | Apakah setiap dimensi target_object_or_part_final_pose valid di suatu lingkungan. 1 = sah; 0 = tidak valid (dalam hal ini seseorang harus mengabaikan dimensi terkait di target_object_or_part_final_pose). "Tidak valid" berarti tidak ada pemeriksaan keberhasilan pada pose akhir objek target atau bagian objek dalam dimensi yang sesuai. |
langkah/pengamatan/target_object_or_part_initial_pose | Tensor | (7,) | float32 | Pose awal objek sasaran atau bagian objek yang akan dimanipulasi, terdiri dari [x, y, z, qw, qx, qy, qz]. Pose tersebut direpresentasikan dalam bingkai dunia. Variabel ini digunakan untuk menentukan objek target atau bagian objek ketika ada beberapa objek atau bagian objek dalam suatu lingkungan |
langkah/pengamatan/target_object_or_part_initial_pose_valid | Tensor | (7,) | uint8 | Apakah setiap dimensi target_object_or_part_initial_pose valid di suatu lingkungan. 1 = sah; 0 = tidak valid (dalam hal ini seseorang harus mengabaikan dimensi terkait di target_object_or_part_initial_pose). |
langkah/pengamatan/tcp_pose | Tensor | (7,) | float32 | Pose titik tengah alat robot dalam bingkai dunia, terdiri dari [x, y, z, qw, qx, qy, qz]. Titik tengah alat adalah titik tengah di antara kedua jari penggenggam. |
langkah/pengamatan/wrist_camera_cam2world_gl | Tensor | (4, 4) | float32 | Transformasi dari bingkai kamera pergelangan tangan ke bingkai dunia dalam konvensi OpenGL/Blender. |
langkah/pengamatan/wrist_camera_extrinsic_cv | Tensor | (4, 4) | float32 | Matriks ekstrinsik kamera pergelangan tangan dalam konvensi OpenCV. |
langkah/pengamatan/wrist_camera_intrinsic_cv | Tensor | (3, 3) | float32 | Matriks intrinsik kamera pergelangan tangan dalam konvensi OpenCV. |
langkah/pengamatan/kedalaman pergelangan tangan | Gambar | (256, 256, 1) | uint16 | Pengamatan kedalaman kamera pergelangan tangan. Bagilah nilai kedalaman dengan 2**10 untuk mendapatkan kedalaman dalam meter. |
langkah/pengamatan/wrist_image | Gambar | (256, 256, 3) | uint8 | Pengamatan RGB kamera pergelangan tangan. |
langkah/hadiah | Skalar | float32 | Hadiah jika diberikan, 1 pada langkah terakhir untuk demo. |
Kunci yang diawasi (Lihat dokumen
as_supervised
):None
Gambar ( tfds.show_examples ): Tidak didukung.
Contoh ( tfds.as_dataframe ):
- Kutipan :
@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}
}