layout | title | nav_order |
---|---|---|
default |
Home |
1 |
MediaPipe offers cross-platform, customizable ML solutions for live and streaming media.
Face Detection | Face Mesh | Iris | Hands | Pose | Holistic |
---|---|---|---|---|---|
Hair Segmentation | Object Detection | Box Tracking | Instant Motion Tracking | Objectron | KNIFT |
---|---|---|---|---|---|
Android | iOS | C++ | Python | JS | Coral | |
---|---|---|---|---|---|---|
Face Detection | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Face Mesh | ✅ | ✅ | ✅ | ✅ | ✅ | |
Iris | ✅ | ✅ | ✅ | |||
Hands | ✅ | ✅ | ✅ | ✅ | ✅ | |
Pose | ✅ | ✅ | ✅ | ✅ | ✅ | |
Holistic | ✅ | ✅ | ✅ | ✅ | ✅ | |
Selfie Segmentation | ✅ | ✅ | ✅ | ✅ | ✅ | |
Hair Segmentation | ✅ | ✅ | ||||
Object Detection | ✅ | ✅ | ✅ | ✅ | ||
Box Tracking | ✅ | ✅ | ✅ | |||
Instant Motion Tracking | ✅ | |||||
Objectron | ✅ | ✅ | ✅ | ✅ | ||
KNIFT | ✅ | |||||
AutoFlip | ✅ | |||||
MediaSequence | ✅ | |||||
YouTube 8M | ✅ |
See also MediaPipe Models and Model Cards for ML models released in MediaPipe.
To start using MediaPipe solutions with only a few lines code, see example code and demos in MediaPipe in Python and MediaPipe in JavaScript.
To use MediaPipe in C++, Android and iOS, which allow further customization of the solutions as well as building your own, learn how to install MediaPipe and start building example applications in C++, Android and iOS.
The source code is hosted in the MediaPipe Github repository, and you can run code search using Google Open Source Code Search.
- install bazel/opencv/ffmpeg:
brew install bazel
brew install opencv@3
brew install ffmpeg
- Set .bazelversion: Run
brew list bazel
to get bazel version, which may print:
/opt/homebrew/Cellar/bazel/4.1.0/bin/bazel
/opt/homebrew/Cellar/bazel/4.1.0/bin/bazel-4.1.0
/opt/homebrew/Cellar/bazel/4.1.0/etc/bash_completion.d/bazel-complete.bash
/opt/homebrew/Cellar/bazel/4.1.0/libexec/bin/ (3 files)
/opt/homebrew/Cellar/bazel/4.1.0/share/zsh/site-functions/_bazel```
Update .bazelversion:
echo 4.1.0 > .bazelversion
- Set the right paths to opencv/ffmpeg in WORKSPACE (line 212~222), for example:
new_local_repository(
name = "macos_opencv",
build_file = "@//third_party:opencv_macos.BUILD",
path = "/opt/homebrew/Cellar/opencv@3/3.4.14_3",
)
new_local_repository(
name = "macos_ffmpeg",
build_file = "@//third_party:ffmpeg_macos.BUILD",
path = "/opt/homebrew/Cellar/ffmpeg/4.4_2",
)
- Build "hello_world":
bazel build -c opt --define MEDIAPIPE_DISABLE_GPU=1 --cpu darwin_arm64 mediapipe/examples/desktop/hello_world:hello_world
and run:
export GLOG_logtostderr=1
bazel-bin/mediapipe/examples/desktop/hello_world/hello_world
- Build all available examples under mediapipe/examples/desktop:
bash build_macos_desktop_examples.sh --cpu m1 -b
- Build and run one example app (e.g. mediapipe/examples/desktop/face_detection):
bash build_macos_desktop_examples.sh --cpu m1 --app face_detection -r
- Build "hello_world":
bazel build -c opt --define MEDIAPIPE_DISABLE_GPU=1 --cpu darwin_x86_64 mediapipe/examples/desktop/hello_world:hello_world
and run:
export GLOG_logtostderr=1
bazel-bin/mediapipe/examples/desktop/hello_world/hello_world
- Build all available examples under mediapipe/examples/desktop:
bash build_macos_desktop_examples.sh --cpu x86_64 -b
- Build and run one example app (e.g. mediapipe/examples/desktop/face_detection):
bash build_macos_desktop_examples.sh --cpu x86_64 --app face_detection -r
- Build "hello_world":
bazel build -c opt --define MEDIAPIPE_DISABLE_GPU=1 --cpu darwin_i386 mediapipe/examples/desktop/hello_world:hello_world
and run:
export GLOG_logtostderr=1
bazel-bin/mediapipe/examples/desktop/hello_world/hello_world
- Build all available examples under mediapipe/examples/desktop:
bash build_macos_desktop_examples.sh --cpu i386 -b
- Build and run one example app (e.g. mediapipe/examples/desktop/face_detection):
bash build_macos_desktop_examples.sh --cpu i386 --app face_detection -r
- Bringing artworks to life with AR in Google Developers Blog
- Prosthesis control via Mirru App using MediaPipe hand tracking in Google Developers Blog
- SignAll SDK: Sign language interface using MediaPipe is now available for developers in Google Developers Blog
- MediaPipe Holistic - Simultaneous Face, Hand and Pose Prediction, on Device in Google AI Blog
- Background Features in Google Meet, Powered by Web ML in Google AI Blog
- MediaPipe 3D Face Transform in Google Developers Blog
- Instant Motion Tracking With MediaPipe in Google Developers Blog
- BlazePose - On-device Real-time Body Pose Tracking in Google AI Blog
- MediaPipe Iris: Real-time Eye Tracking and Depth Estimation in Google AI Blog
- MediaPipe KNIFT: Template-based feature matching in Google Developers Blog
- Alfred Camera: Smart camera features using MediaPipe in Google Developers Blog
- Real-Time 3D Object Detection on Mobile Devices with MediaPipe in Google AI Blog
- AutoFlip: An Open Source Framework for Intelligent Video Reframing in Google AI Blog
- MediaPipe on the Web in Google Developers Blog
- Object Detection and Tracking using MediaPipe in Google Developers Blog
- On-Device, Real-Time Hand Tracking with MediaPipe in Google AI Blog
- MediaPipe: A Framework for Building Perception Pipelines
- MediaPipe Seattle Meetup, Google Building Waterside, 13 Feb 2020
- AI Nextcon 2020, 12-16 Feb 2020, Seattle
- MediaPipe Madrid Meetup, 16 Dec 2019
- MediaPipe London Meetup, Google 123 Building, 12 Dec 2019
- ML Conference, Berlin, 11 Dec 2019
- MediaPipe Berlin Meetup, Google Berlin, 11 Dec 2019
- The 3rd Workshop on YouTube-8M Large Scale Video Understanding Workshop, Seoul, Korea ICCV 2019
- AI DevWorld 2019, 10 Oct 2019, San Jose, CA
- Google Industry Workshop at ICIP 2019, 24 Sept 2019, Taipei, Taiwan (presentation)
- Open sourced at CVPR 2019, 17~20 June, Long Beach, CA
- Awesome MediaPipe - A curated list of awesome MediaPipe related frameworks, libraries and software
- Slack community for MediaPipe users
- Discuss - General community discussion around MediaPipe
MediaPipe is currently in alpha at v0.7. We may be still making breaking API changes and expect to get to stable APIs by v1.0.
We welcome contributions. Please follow these guidelines.
We use GitHub issues for tracking requests and bugs. Please post questions to
the MediaPipe Stack Overflow with a mediapipe
tag.