Robocikowo>ROBOCIKOWO
MediaPipe Holistic

Percepcja · Percepcja i wizja

MediaPipe Holistic

Legacy — koniec wsparcia·Google

Przestarzały Open source Real-time capable Dostępne API
KATEGORIAPercepcja · Percepcja i wizja
SKALA ADOPCJIWycofywany – wsparcie legacy
LICENCJEApache-2.0
PIERWSZE WYDANIE2020

MediaPipe Holistic to gotowy potok (pipeline) percepcji z otwartoźródłowego frameworka Google MediaPipe, który w jednym przebiegu łączy trzy modele: estymację pozy ciała (33 punkty), śledzenie obu dłoni (po 21 punktów) oraz siatkę twarzy (468 punktów). Daje to spójną topologię 543 landmarków dla całej sylwetki człowieka, wyznaczanych w czasie rzeczywistym na urządzeniu.

Potok jest wielostopniowy: najpierw model pozy lokalizuje sylwetkę i obszary zainteresowania (twarz, dłonie), następnie modele dokładnie wyznaczają punkty charakterystyczne dla każdego regionu. Rozwiązanie działa na CPU i GPU, a według Google osiąga zbliżoną do czasu rzeczywistego wydajność rzędu 18–20 klatek na sekundę na średniej klasy smartfonach.

MediaPipe Holistic udostępniono z interfejsami dla Pythona, JavaScriptu (web), Androida oraz iOS, na licencji Apache 2.0. Znajduje zastosowanie m.in. w rozpoznawaniu języka migowego, analizie gestów, aplikacjach fitness i rozszerzonej rzeczywistości. Rozwiązanie należy do tzw. MediaPipe Legacy Solutions — Google zakończyło ich wsparcie 1 marca 2023 roku, wskazując jako następcę zestaw MediaPipe Tasks.

Typ i role
Typy oprogramowania
Biblioteka wizji komputerowej
Stack percepcji

Perception Stack obejmuje warstwy oprogramowania przetwarzające dane z kamer, LiDAR-ów, IMU, mikrofonów i innych sensorów w celu rozpoznania otoczenia, lokalizacji, detekcji obiektów i interpretacji sceny.

Biblioteka uczenia maszynowego

Biblioteka programistyczna udostępniająca API do budowy, wdrażania lub wykonywania modeli uczenia maszynowego w aplikacjach.

Wybierz pozycję, aby zobaczyć opis.
Kategoria główna
Percepcja i wizjaSztuczna inteligencja i ML
Role w ekosystemie robotycznym
Wizja komputerowa

Computer Vision oznacza rolę oprogramowania odpowiedzialnego za przetwarzanie obrazu, analizę wideo, detekcję obiektów, segmentację, śledzenie i inne zadania oparte na danych wizualnych.

Percepcja

Perception oznacza rolę oprogramowania przetwarzającego dane z kamer, LiDAR-ów, IMU i innych sensorów w celu wykrywania obiektów, rozpoznawania sceny, lokalizacji, mapowania i interpretacji środowiska.

Śledzenie obiektów

Multi-object tracking (MOT) — przypisywanie i śledzenie tożsamości obiektów między kolejnymi klatkami danych sensorycznych.

Wybierz pozycję, aby zobaczyć opis.
Dojrzałość i adopcja
Skala adopcjiWycofywany – wsparcie legacy
Status utrzymaniaZakończone – zastąpione
Pierwsze wydanie2020
Ostatnia aktualizacja25 sierpnia 2026
Wdrożenia

Wykorzystywane w pipeline'ach rozpoznawania języka migowego, analizie gestów, aplikacjach fitness oraz rozszerzonej rzeczywistości (AR).

Możliwości systemu
Open source
Kod źródłowy dostępny publicznie pod licencją open-source — umożliwia audyt bezpieczeństwa, własne modyfikacje oraz integrację bez barier licencyjnych.
Real-time capable
Zaprojektowane z gwarancjami determinizmu czasowego — spełnia wymagania pętli sterowania, systemów bezpieczeństwa i zadań wymagających niskiej, przewidywalnej latencji.
⟨/⟩
Dostępne API
Oprogramowanie udostępnia programowalny interfejs (REST, gRPC, SDK lub biblioteki językowe) pozwalający na automatyzację i integrację z innymi systemami.
📦
Pre-built / binary
Dystrybuowane jako gotowe pakiety binarne, obrazy kontenerów lub instalatory — bez konieczności kompilacji ze źródeł.
Języki programowania
C++

C++ to język programowania szeroko wykorzystywany w robotyce, systemach embedded, middleware, sterowaniu i przetwarzaniu danych, szczególnie tam, gdzie istotna jest wydajność oraz bliska integracja ze sprzętem.

Python

Python to wysokopoziomowy język programowania szeroko stosowany w robotyce, AI, computer vision, automatyzacji, testach i szybkiej integracji komponentów sprzętowych oraz software'owych.

JavaScript

JavaScript to język programowania powszechnie wykorzystywany w aplikacjach webowych, panelach administracyjnych, dashboardach, narzędziach frontendowych i lekkich warstwach integracyjnych.

Wybierz pozycję, aby zobaczyć opis.
Systemy operacyjne
Android

Mobilny system operacyjny oparty na jądrze Linux, rozwijany przez Google.

iOS

Mobilny system operacyjny firmy Apple dla urządzeń iPhone i iPad.

Linux

Rodzina otwartych systemów operacyjnych opartych na jądrze Linux, powszechna na serwerach, w chmurze i w robotyce.

macOS

System operacyjny firmy Apple dla komputerów Mac.

Windows

Rodzina systemów operacyjnych firmy Microsoft dla komputerów osobistych i serwerów.

Wybierz pozycję, aby zobaczyć opis.
Minimalne wymagania sprzętowe
Minimalne wymagania sprzętowe

Wymaga strumienia obrazu z kamery. Google nie publikuje formalnych minimalnych wymagań sprzętowych; rozwiązanie działa w czasie zbliżonym do rzeczywistego (18–20 FPS) na średniej klasy smartfonach, a akceleracja GPU jest opcjonalna.

Pakowanie i dystrybucja
Menadżery pakietów
pip (PyPI)

Menedżer pakietów Pythona. Pakiet onnxruntime dystrybuowany jest przez PyPI.

npm

Menedżer pakietów dla ekosystemu JavaScript/Node.js. Pakiety onnxruntime-web i onnxruntime-node dystrybuowane są przez npm.

Wybierz pozycję, aby zobaczyć opis.
Architektury CPU
x86-64

64-bitowa architektura procesorów zgodna z zestawem instrukcji x86, dominująca w komputerach i serwerach.

ARM64

64-bitowa architektura procesorów ARM, powszechna w urządzeniach mobilnych, wbudowanych i coraz częściej w serwerach.

WebAssembly (WASM)

WebAssembly (WASM) – binarny format instrukcji dla stosu wirtualnego, umożliwiający uruchamianie kodu w przeglądarce internetowej lub przez runtime WASM (Wasmtime, WASMer, Node.js) na dowolnej platformie (x86_64, ARM64, RISC-V) bez rekompilacji. Nie jest architekturą CPU – jest przenośnym celem kompilacji (compilation target) dla C, C++, Rust, Go, Python. Rosnące znaczenie w ekosystemie robotycznym: webowe interfejsy operatorskie dla robotów (RViz2 web przez ros2-wasm lub Foxglove), algorytmy robotyczne uruchamiane w przeglądarce dla demonstracji i edukacji, WASM jako runtime dla pluginów w systemach edge (bezpieczna izolacja kodu pluginów), przetwarzanie danych sensorycznych w przeglądarce (SLAM visualization, point cloud rendering przez WebGL + WASM). ros2-wasm: projekt eksperymentalny portujący rclcpp na WASM. Robotics Simulator w przeglądarce: symulatory 3D oparte na Three.js/WebGL + WASM dla planowania tras i demonstracji. WASM WASI (WebAssembly System Interface): rozszerzenie umożliwiające uruchamianie WASM poza przeglądarką jako przenośny runtime na serwerach edge i IoT – potencjalnie interesujące dla dystrybucji przenośnych komponentów robotycznych. Specyficzny przypadek użycia – nie zastępuje natywnych architektur, lecz uzupełnia je w scenariuszach webowych i cross-platform.

Wybierz pozycję, aby zobaczyć opis.
Trudność instalacji
PoziomŁatwa
Protokoły i interfejsy
Klasy opóźnień
Soft Real-Time (20–100 ms)

Klasa miękkiego czasu rzeczywistego 20–100 ms – deadline'y wymagane statystycznie, sporadyczne przekroczenia akceptowalne. Realizowany na standardowym Linux z priorytetem SCHED_FIFO. Komunikacja przez Ethernet GbE, DDS/RTPS, ROS 2 topics. Zastosowania: nawigacja AMR (Nav2: 20–50 Hz), high-level sterowanie humanoidów (Unitree SDK2: 50 Hz), planowanie trajektorii (MoveIt 2 servo), integracja sensorów (LiDAR SLAM: 10–20 Hz). Wystarczający dla większości algorytmów nawigacyjnych i SLAM.

Wybierz pozycję, aby zobaczyć opis.
Typy wdrożenia
Edge / na urządzeniu

Wdrożenie lokalne na urządzeniu brzegowym lub wbudowanym, bez zależności od chmury.

Mobilne

Wdrożenie na urządzeniach mobilnych (iOS, Android).

Przeglądarka / Web

Wykonywanie w przeglądarce internetowej (np. przez WebAssembly / WebGPU).

Wybierz pozycję, aby zobaczyć opis.
Licencje
Apache-2.0Apache License 2.0v2.0

Rodzina licencji: Licencja permisywna

ModyfikacjaDystrybucjaUżytek komercyjnySublicencjonowanieUżytek prywatnyKompatybilna z ROSOSI zatwierdzonaFSF Free/LibreWymaga oznaczenia autorstwaPatent grant

Permissive licencja open source opracowana przez Apache Software Foundation. Zawiera jawne udzielenie praw patentowych przez kontrybutorów (patent grant) oraz klauzulę retaliation (utrata licencji przy pozwie patentowym). Wymaga zachowania tekstu licencji, NOTICE file i informacji o zmianach w modyfikowanych plikach.

Uwaga dla robotyki

Oficjalna licencja Open Robotics dla rdzenia ROS 2 i większości pakietów tier-1. Standard de facto dla oprogramowania robotycznego open source. Klauzula patentowa chroni użytkowników przed pozwami ze strony kontrybutorów – preferowana nad MIT w projektach korporacyjnych. Kompatybilna z GPL v3 (ale nie GPL v2).

Historia wersji
Legacy — koniec wsparciamar 2023

Zaliczone do MediaPipe Legacy Solutions; Google zakończyło wsparcie i wskazało MediaPipe Tasks jako następcę. Kod pozostaje dostępny „as-is”.

MediaPipe Holistic (pierwsze wydanie)gru 2020

Premiera rozwiązania łączącego pozę, dłonie i twarz w jednym potoku (543 landmarki) z działaniem na urządzeniu.