- תיאור :
הדמיה של פרנקה מבצעת משימות מניפולציה שונות
דף הבית : https://github.com/haosulab/ManiSkill2
קוד מקור :
tfds.robotics.rtx.ManiskillDatasetConvertedExternallyToRlds
גרסאות :
-
0.1.0
(ברירת מחדל): שחרור ראשוני.
-
גודל הורדה :
Unknown size
גודל מערך נתונים :
151.05 GiB
שמירה אוטומטית במטמון ( תיעוד ): לא
פיצולים :
לְפַצֵל | דוגמאות |
---|---|
'train' | 30,213 |
- מבנה תכונה :
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.),
}),
})
- תיעוד תכונה :
תכונה | מַחלָקָה | צוּרָה | Dtype | תֵאוּר |
---|---|---|---|---|
FeaturesDict | ||||
episode_metadata | FeaturesDict | |||
episode_metadata/episode_id | טֶקסט | חוּט | מזהה פרק. | |
episode_metadata/file_path | טֶקסט | חוּט | נתיב לקובץ הנתונים המקורי. | |
צעדים | מערך נתונים | |||
צעדים/פעולה | מוֹתֵחַ | (7,) | לצוף32 | פעולת רובוט, מורכבת מ[3x מיקום יעד דלתא קצה של אפקטור, 3x כיוון יעד דלתא קצה בפורמט של זווית ציר, 1x מיקום יעד תפסן (חיקוי עבור שתי אצבעות)]. עבור מיקום יעד דלתא, פעולה של -1 ממפה לתנועת רובוט של -0.1m, ופעולה של 1 מפה לתנועה של 0.1m. עבור כיוון יעד דלתא, הזווית המקודדת שלו ממופה לטווח של [-0.1rad, 0.1rad] לביצוע רובוט. לדוגמה, פעולה של [1, 0, 0] פירושה סיבוב לאורך ציר ה-x ב-0.1 רד. עבור מיקום מטרת האוחז, פעולה של -1 פירושה סגירה, ופעולה של 1 פירושה פתוח. |
צעדים/הנחה | סקלר | לצוף32 | הנחה אם ניתנת, ברירת המחדל היא 1. | |
צעדים/הוא_ראשון | מוֹתֵחַ | bool | ||
צעדים/הוא_אחרון | מוֹתֵחַ | bool | ||
steps/is_terminal | מוֹתֵחַ | bool | ||
שלבים/הטבעת_שפה | מוֹתֵחַ | (512,) | לצוף32 | הטבעת שפת Kona. ראה https://tfhub.dev/google/universal-sentence-encoder-large/5 |
שלבים/הוראת_שפה | טֶקסט | חוּט | הוראת שפה. | |
צעדים/תצפית | FeaturesDict | |||
צעדים/תצפית/תנוחת_בסיס | מוֹתֵחַ | (7,) | לצוף32 | תנוחת בסיס רובוט במסגרת העולם, מורכבת מ-[x, y, z, qw, qx, qy, qz]. שלושת הממדים הראשונים מייצגים מיקומי xyz במטרים. ארבעת הממדים האחרונים הם ייצוג הקווטרניון של הסיבוב. |
צעדים/תצפית/עומק | תְמוּנָה | (256, 256, 1) | uint16 | מצלמה ראשית תצפית עומק. חלקו את ערך העומק ב-2**10 כדי לקבל את העומק במטרים. |
צעדים/תצפית/תמונה | תְמוּנָה | (256, 256, 3) | uint8 | תצפית RGB של מצלמה ראשית. |
steps/observation/main_camera_cam2world_gl | מוֹתֵחַ | (4, 4) | לצוף32 | טרנספורמציה ממסגרת המצלמה הראשית למסגרת העולמית בכנס OpenGL/Blender. |
steps/observation/main_camera_extrinsic_cv | מוֹתֵחַ | (4, 4) | לצוף32 | מטריצת מצלמה חיצונית ראשית במוסכמה של OpenCV. |
steps/observation/main_camera_intrinsic_cv | מוֹתֵחַ | (3, 3) | לצוף32 | מטריצה פנימית של מצלמה ראשית במוסכמה של OpenCV. |
צעדים/תצפית/מצב | מוֹתֵחַ | (18,) | לצוף32 | מצב רובוט, מורכב מ[7x זוויות מפרק רובוט, 2x מיקום תפס, 7x מהירות זווית מפרק רובוט, 2x מהירות תפסן]. זווית ברדיאנים, מיקום במטרים. |
steps/observation/target_object_or_part_final_pose | מוֹתֵחַ | (7,) | לצוף32 | התנוחה הסופית שלקראתה צריך לתפעל את אובייקט המטרה או חלק האובייקט, מורכבת מ-[x, y, z, qw, qx, qy, qz]. התנוחה מיוצגת במסגרת העולם. פרק נחשב מוצלח אם אובייקט המטרה או חלק האובייקט עוברים מניפולציות לתנוחה זו. |
steps/observation/target_object_or_part_final_pose_valid | מוֹתֵחַ | (7,) | uint8 | האם כל ממד של target_object_or_part_final_pose תקף בסביבה. 1 = חוקי; 0 = לא חוקי (במקרה זה יש להתעלם מהמידות המתאימות ב-target_object_or_part_final_pose). "לא חוקי" פירושו שאין בדיקת הצלחה בתנוחה הסופית של אובייקט המטרה או חלק האובייקט בממדים התואמים. |
צעדים/תצפית/תנוחה_ראשונית_יעד | מוֹתֵחַ | (7,) | לצוף32 | התנוחה הראשונית של אובייקט המטרה או חלק האובייקט שיש לתמרן, מורכבת מ-[x, y, z, qw, qx, qy, qz]. התנוחה מיוצגת במסגרת העולם. משתנה זה משמש לציון אובייקט המטרה או חלק האובייקט כאשר מספר אובייקטים או חלקי אובייקט נמצאים בסביבה |
steps/observation/target_object_or_part_initial_pose_valid | מוֹתֵחַ | (7,) | uint8 | האם כל ממד של target_object_or_part_initial_pose תקף בסביבה. 1 = חוקי; 0 = לא חוקי (במקרה זה יש להתעלם מהמידות המתאימות ב-target_object_or_part_initial_pose). |
steps/observation/tcp_pose | מוֹתֵחַ | (7,) | לצוף32 | תנוחת כלי רובוט-נקודת מרכז במסגרת העולם, מורכבת מ-[x, y, z, qw, qx, qy, qz]. נקודת הכלי-מרכז היא המרכז בין שתי אצבעות האוחז. |
steps/observation/wrist_camera_cam2world_gl | מוֹתֵחַ | (4, 4) | לצוף32 | טרנספורמציה ממסגרת מצלמת שורש כף היד למסגרת העולמית בכנס OpenGL/Blender. |
צעדים/תצפית/מצלמת_יד_חיצונית | מוֹתֵחַ | (4, 4) | לצוף32 | מטריצה חיצונית של מצלמת שורש כף היד במוסכמה של OpenCV. |
צעדים/תצפית/מצלמת_שורש כף היד | מוֹתֵחַ | (3, 3) | לצוף32 | מטריצה פנימית של מצלמת שורש כף היד במוסכמה של OpenCV. |
צעדים/תצפית/עומק_שורש כף היד | תְמוּנָה | (256, 256, 1) | uint16 | מצלמת שורש כף היד תצפית עומק. חלקו את ערך העומק ב-2**10 כדי לקבל את העומק במטרים. |
צעדים/תצפית/תמונת_שורש כף היד | תְמוּנָה | (256, 256, 3) | uint8 | תצפית RGB מצלמת שורש כף היד. |
צעדים/פרס | סקלר | לצוף32 | תגמול אם מסופק, 1 בשלב האחרון להדגמות. |
מפתחות בפיקוח (ראה
as_supervised
doc ):None
איור ( tfds.show_examples ): לא נתמך.
דוגמאות ( tfds.as_dataframe ):
- ציטוט :
@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}
}