- Tanım :
Çeşitli manipülasyon görevlerini yerine getiren simüle Franka
Ana sayfa : https://github.com/haosulab/ManiSkill2
Kaynak kodu :
tfds.robotics.rtx.ManiskillDatasetConvertedExternallyToRlds
Sürümler :
-
0.1.0
(varsayılan): İlk sürüm.
-
İndirme boyutu :
Unknown size
Veri kümesi boyutu :
151.05 GiB
Otomatik önbelleğe alınmış ( belgeler ): Hayır
Bölünmeler :
Bölmek | Örnekler |
---|---|
'train' | 30.213 |
- Özellik yapısı :
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.),
}),
})
- Özellik belgeleri :
Özellik | Sınıf | Şekil | Dtipi | Tanım |
---|---|---|---|---|
ÖzelliklerDict | ||||
bölüm_meta verileri | ÖzelliklerDict | |||
bölüm_metadata/episode_id | Metin | sicim | Bölüm kimliği. | |
bölüm_metadata/dosya_yolu | Metin | sicim | Orijinal veri dosyasının yolu. | |
adımlar | Veri kümesi | |||
adımlar/eylem | Tensör | (7,) | kayan nokta32 | Robot hareketi, [3x uç efektör delta hedef konumu, eksen açısı formatında 3x uç efektör delta hedef yönlendirmesi, 1x tutucu hedef konumu (iki parmak için taklit)] içerir. Delta hedef konumu için -1'lik bir eylem, -0,1 m'lik bir robot hareketiyle eşleşir ve 1'lik bir eylem, 0,1 m'lik bir hareketle eşleşir. Delta hedef yönlendirmesi için kodlanmış açısı, robotun yürütülmesi için [-0,1rad, 0,1rad] aralığına eşlenir. Örneğin, [1, 0, 0] eylemi, x ekseni boyunca 0,1 rad kadar dönmek anlamına gelir. Kavrayıcı hedef konumu için -1 eylemi yakın, 1 eylemi ise açık anlamına gelir. |
adımlar/indirim | Skaler | kayan nokta32 | Sağlanırsa indirim, varsayılan olarak 1'dir. | |
adımlar/is_first | Tensör | bool | ||
adımlar/is_last | Tensör | bool | ||
adımlar/is_terminal | Tensör | bool | ||
adımlar/dil_embedding | Tensör | (512,) | kayan nokta32 | Kona dili yerleştirme. Bkz. https://tfhub.dev/google/universal-sentence-encoder-large/5 |
adımlar/language_instruction | Metin | sicim | Dil Öğretimi. | |
adımlar/gözlem | ÖzelliklerDict | |||
adımlar/gözlem/base_pose | Tensör | (7,) | kayan nokta32 | Robotun dünya çerçevesindeki pozu, [x, y, z, qw, qx, qy, qz]'den oluşur. İlk üç boyut metre cinsinden xyz konumlarını temsil eder. Son dört boyut dönmenin kuaterniyon temsilidir. |
adımlar/gözlem/derinlik | Resim | (256, 256, 1) | uint16 | Ana kamera Derinlik gözlemi. Metre cinsinden derinliği bulmak için derinlik değerini 2**10'a bölün. |
adımlar/gözlem/görüntü | Resim | (256, 256, 3) | uint8 | Ana kamera RGB gözlemi. |
adımlar/gözlem/main_camera_cam2world_gl | Tensör | (4, 4) | kayan nokta32 | OpenGL/Blender konvansiyonunda ana kamera çerçevesinden dünya çerçevesine dönüşüm. |
adımlar/gözlem/main_camera_extrinsic_cv | Tensör | (4, 4) | kayan nokta32 | OpenCV konvansiyonunda ana kamera dışsal matrisi. |
adımlar/gözlem/main_camera_intrinsic_cv | Tensör | (3, 3) | kayan nokta32 | OpenCV konvansiyonundaki ana kamera içsel matrisi. |
adımlar/gözlem/durum | Tensör | (18,) | kayan nokta32 | Robot durumu, [7x robot eklem açısı, 2x tutucu konumu, 7x robot eklem açısı hızı, 2x tutucu hızı]'ndan oluşur. Radyan cinsinden açı, metre cinsinden konum. |
adımlar/gözlem/target_object_or_part_final_pose | Tensör | (7,) | kayan nokta32 | Hedef nesnenin veya nesne parçasının yönlendirilmesi gereken son poz, [x, y, z, qw, qx, qy, qz]'den oluşur. Poz dünya çerçevesinde temsil edilir. Hedef nesne veya nesne parçası bu poza göre manipüle edilirse bölüm başarılı sayılır. |
adımlar/gözlem/target_object_or_part_final_pose_valid | Tensör | (7,) | uint8 | Target_object_or_part_final_pose'un her boyutunun bir ortamda geçerli olup olmadığı. 1 = geçerli; 0 = geçersiz (bu durumda target_object_or_part_final_pose'daki ilgili boyutlar göz ardı edilmelidir). "Geçersiz", hedef nesnenin veya nesne parçasının ilgili boyutlardaki son pozunda başarı kontrolünün olmadığı anlamına gelir. |
adımlar/gözlem/target_object_or_part_initial_pose | Tensör | (7,) | kayan nokta32 | Hedef nesnenin veya manipüle edilecek nesne parçasının başlangıç pozu [x, y, z, qw, qx, qy, qz]'den oluşur. Poz dünya çerçevesinde temsil edilir. Bu değişken, bir ortamda birden fazla nesne veya nesne parçası mevcut olduğunda hedef nesneyi veya nesne parçasını belirtmek için kullanılır |
adımlar/gözlem/target_object_or_part_initial_pose_valid | Tensör | (7,) | uint8 | Target_object_or_part_initial_pose'un her boyutunun bir ortamda geçerli olup olmadığı. 1 = geçerli; 0 = geçersiz (bu durumda target_object_or_part_initial_pose'daki karşılık gelen boyutlar göz ardı edilmelidir). |
adımlar/gözlem/tcp_pose | Tensör | (7,) | kayan nokta32 | Robotun dünya çerçevesindeki araç-merkez noktası pozu, [x, y, z, qw, qx, qy, qz]'den oluşur. Alet merkez noktası, iki tutucu parmak arasındaki merkezdir. |
adımlar/gözlem/wrist_camera_cam2world_gl | Tensör | (4, 4) | kayan nokta32 | OpenGL/Blender konvansiyonunda bilek kamerası çerçevesinden dünya çerçevesine dönüşüm. |
adımlar/gözlem/wrist_camera_extrinsic_cv | Tensör | (4, 4) | kayan nokta32 | OpenCV konvansiyonunda bilek kamerası dışsal matrisi. |
adımlar/gözlem/wrist_camera_intrinsic_cv | Tensör | (3, 3) | kayan nokta32 | OpenCV konvansiyonunda bilek kamerası içsel matrisi. |
adımlar/gözlem/bilek_derinliği | Resim | (256, 256, 1) | uint16 | Bilek kamerası Derinlik gözlemi. Metre cinsinden derinliği bulmak için derinlik değerini 2**10'a bölün. |
adımlar/gözlem/wrist_image | Resim | (256, 256, 3) | uint8 | Bilek kamerası RGB gözlemi. |
adımlar/ödül | Skaler | kayan nokta32 | Sağlandığı takdirde ödül, demolar için son adımda 1. |
Denetlenen anahtarlar (
as_supervised
belgesine bakın):None
Şekil ( tfds.show_examples ): Desteklenmiyor.
Örnekler ( tfds.as_dataframe ):
- Alıntı :
@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}
}