maniskill_dataset_converted_externally_to_rlds

  • Opis :

Symulowana Franka wykonująca różne zadania manipulacyjne

Podział Przykłady
'train' 30213
  • Struktura funkcji :
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),
    }),
})
  • Dokumentacja funkcji :
Funkcja Klasa Kształt Typ D Opis
FunkcjeDykt
metadane_odcinka FunkcjeDykt
metadane_odcinka/id_odcinka Tekst strunowy Identyfikator odcinka.
metadane_odcinka/ścieżka_pliku Tekst strunowy Ścieżka do oryginalnego pliku danych.
kroki Zbiór danych
kroki/akcja Napinacz (7,) pływak32 Działanie robota obejmuje [3x położenie docelowe delta efektora końcowego, 3x orientację celu delta efektora końcowego w formacie kąta osi, 1x położenie docelowe chwytaka (naśladujące dwa palce)]. W przypadku pozycji docelowej delta działanie -1 odwzorowuje ruch robota o -0,1 m, a działanie 1 odwzorowuje ruch o 0,1 m. W przypadku orientacji celu delta jego zakodowany kąt jest odwzorowywany w zakresie [-0,1rad, 0,1rad] w celu wykonania robota. Na przykład działanie [1, 0, 0] oznacza obrót wzdłuż osi x o 0,1 rad. Dla pozycji docelowej chwytaka akcja -1 oznacza zamknięcie, a akcja 1 oznacza otwarcie.
kroki/rabat Skalarny pływak32 Rabat, jeśli jest podany, domyślnie wynosi 1.
kroki/jest_pierwszy Napinacz bool
kroki/jest_ostatni Napinacz bool
kroki/is_terminal Napinacz bool
kroki/osadzanie_języka Napinacz (512,) pływak32 Osadzanie języka Kona. Zobacz https://tfhub.dev/google/universal-sentence-encoder-large/5
kroki/instrukcja_językowa Tekst strunowy Instrukcja językowa.
kroki/obserwacje FunkcjeDykt
kroki/obserwacja/poza_bazowa Napinacz (7,) pływak32 Podstawowa pozycja robota w układzie świata składa się z [x, y, z, qw, qx, qy, qz]. Pierwsze trzy wymiary reprezentują pozycje xyz w metrach. Ostatnie cztery wymiary to kwaternionowa reprezentacja obrotu.
kroki/obserwacja/głębokość Obraz (256, 256, 1) uint16 Główna kamera Obserwacja głębi. Podziel wartość głębokości przez 2**10, aby uzyskać głębokość w metrach.
kroki/obserwacja/obraz Obraz (256, 256, 3) uint8 Obserwacja RGB z głównej kamery.
kroki/obserwacja/main_camera_cam2world_gl Napinacz (4, 4) pływak32 Transformacja z głównego kadru kamery na kadr świata w konwencji OpenGL/Blender.
kroki/obserwacja/main_camera_extrinsic_cv Napinacz (4, 4) pływak32 Zewnętrzna matryca głównego aparatu w konwencji OpenCV.
kroki/obserwacja/main_camera_intrinsic_cv Napinacz (3, 3) pływak32 Wewnętrzna matryca aparatu głównego w konwencji OpenCV.
kroki/obserwacja/stan Napinacz (18,) pływak32 Stan robota, składa się z [7x kątów przegubów robota, 2x położenia chwytaka, 7x prędkości kąta przegubów robota, 2x prędkości chwytaka]. Kąt w radianach, pozycja w metrach.
kroki/obserwacja/obiekt_docelowy_lub_część_ostateczna_poza Napinacz (7,) pływak32 Ostateczna pozycja, w kierunku której należy manipulować docelowym obiektem lub częścią obiektu, składa się z [x, y, z, qw, qx, qy, qz]. Poza jest reprezentowana w ramie świata. Odcinek uważa się za udany, jeśli docelowy obiekt lub jego część zostanie ustawiona w tej pozycji.
kroki/obserwacja/obiekt_docelowy_lub_część_final_pose_valid Napinacz (7,) uint8 Określa, czy każdy wymiar target_object_or_part_final_pose jest prawidłowy w środowisku. 1 = ważny; 0 = nieprawidłowe (w takim przypadku należy zignorować odpowiednie wymiary w target_object_or_part_final_pose). „Nieprawidłowy” oznacza, że ​​nie ma kontroli powodzenia ostatecznej pozycji obiektu docelowego lub części obiektu w odpowiednich wymiarach.
kroki/obserwacja/obiekt_docelowy_lub_część_pozycja_początkowa Napinacz (7,) pływak32 Początkowa pozycja docelowego obiektu lub części obiektu, którą należy manipulować, składa się z [x, y, z, qw, qx, qy, qz]. Poza jest reprezentowana w ramie świata. Ta zmienna służy do określenia docelowego obiektu lub części obiektu, gdy w środowisku znajduje się wiele obiektów lub części obiektów
kroki/obserwacja/obiekt_docelowy_lub_część_initial_pose_valid Napinacz (7,) uint8 Określa, czy każdy wymiar target_object_or_part_initial_pose jest prawidłowy w środowisku. 1 = ważny; 0 = nieprawidłowe (w takim przypadku należy zignorować odpowiednie wymiary w target_object_or_part_initial_pose).
kroki/obserwacja/tcp_pose Napinacz (7,) pływak32 Pozycja robota w punkcie środkowym narzędzia w ramie świata składa się z [x, y, z, qw, qx, qy, qz]. Punkt środkowy narzędzia to środek pomiędzy dwoma palcami chwytaka.
kroki/obserwacja/wrist_camera_cam2world_gl Napinacz (4, 4) pływak32 Transformacja z ramki aparatu nadgarstkowego na ramkę świata w konwencji OpenGL/Blender.
kroki/obserwacja/kamera_nadgarstka_extrinsic_cv Napinacz (4, 4) pływak32 Zewnętrzna matryca aparatu naręcznego w konwencji OpenCV.
kroki/obserwacja/kamera_nadgarstka_intrinsic_cv Napinacz (3, 3) pływak32 Wewnętrzna matryca aparatu naręcznego w konwencji OpenCV.
kroki/obserwacja/głębokość_nadgarstka Obraz (256, 256, 1) uint16 Kamera na nadgarstku Obserwacja głębokości. Podziel wartość głębokości przez 2**10, aby uzyskać głębokość w metrach.
kroki/obserwacja/obraz_nadgarstka Obraz (256, 256, 3) uint8 Kamera nadgarstkowa do obserwacji RGB.
kroki/nagroda Skalarny pływak32 Nagroda, jeśli jest zapewniona, 1 na ostatnim etapie w przypadku wersji demonstracyjnych.
  • Cytat :
@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}
}