谷歌Mediapipe安装部署教程

2024-06-20 13:20

本文主要是介绍谷歌Mediapipe安装部署教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

MediaPipe Solutions 提供了一套库和工具,可帮助您在您的应用中快速应用人工智能 (AI) 和机器学习 (ML) 技术。您可以立即将这些解决方案插入到您的应用中,根据需要对其进行自定义,并在多个开发平台上使用。MediaPipe Solutions 是 MediaPipe 开源项目的一部分,因此您可以进一步自定义解决方案代码以满足您的应用需求。MediaPipe 解决方案套件包括以下内容:

MediaPipe 解决方案、Studio 和 Model Maker 的示意图

以下库和资源提供了每个 MediaPipe 解决方案的核心功能:

  • MediaPipe Tasks:用于部署解决方案的跨平台 API 和库。
  • MediaPipe 模型:预训练、可直接运行的模型,可与每个解决方案搭配使用。

借助以下工具,您可以自定义和评估解决方案:

  • MediaPipe Model Maker:为使用你的数据的解决方案自定义模型
  • MediaPipe Studio:在浏览器中直观呈现、评估解决方案并对其进行基准测试。请添加图片描述

可用的解决方案

MediaPipe 解决方案适用于多个平台。每个解决方案都包含一个或多个模型,您也可以为某些解决方案自定义模型。以下列表显示了适用于每个受支持平台的解决方案,以及您是否可以使用 Model Maker 自定义模型:

解决方案Android网站PythoniOS自定义模型
LLM Inference API √ \surd √ \surd √ \surd √ \surd
对象检测 √ \surd √ \surd √ \surd √ \surd √ \surd
图片分类 √ \surd √ \surd √ \surd √ \surd √ \surd
图像分割 √ \surd √ \surd √ \surd
交互式分割 √ \surd √ \surd √ \surd
手部特征点检测 √ \surd √ \surd √ \surd √ \surd
手势识别 √ \surd √ \surd √ \surd √ \surd √ \surd
图片嵌入 √ \surd √ \surd √ \surd
人脸检测 √ \surd √ \surd √ \surd √ \surd
人脸特征点检测 √ \surd √ \surd √ \surd
人脸风格化 √ \surd √ \surd √ \surd √ \surd
姿势特征点检测 √ \surd √ \surd √ \surd
图片生成 √ \surd √ \surd
文本分类 √ \surd √ \surd √ \surd √ \surd √ \surd
文本嵌入 √ \surd √ \surd √ \surd
语言检测器 √ \surd √ \surd √ \surd
音频分类

安装

Python

pip安装mediapipe软件包

安装使用 mediapipe pip 软件包。您可以使用以下命令安装所需的软件包:

$ python -m pip install mediapipe

导入以下类来验证安装结果:

import mediapipe as mp
from mediapipe.tasks import python
from mediapipe.tasks.python import vision
运行示例

安装验证无误后,运行以下示例。

# STEP 1: Import the necessary modules.
import numpy as np
import mediapipe as mp
from mediapipe.tasks import python
from mediapipe.tasks.python import vision# STEP 2: Create an ObjectDetector object.
base_options = python.BaseOptions(model_asset_path='efficientdet.tflite')
options = vision.ObjectDetectorOptions(base_options=base_options,score_threshold=0.5)
detector = vision.ObjectDetector.create_from_options(options)# STEP 3: Load the input image.
image = mp.Image.create_from_file(IMAGE_FILE)# STEP 4: Detect objects in the input image.
detection_result = detector.detect(image)# STEP 5: Process the detection result. In this case, visualize it.
image_copy = np.copy(image.numpy_view())
annotated_image = visualize(image_copy, detection_result)
rgb_annotated_image = cv2.cvtColor(annotated_image, cv2.COLOR_BGR2RGB)
cv2_imshow(rgb_annotated_image)

C++


  1. 安装 Bazelisk。

    Step 1: Add Bazel distribution URI as a package source

       sudo apt install apt-transport-https curl gnupg -ycurl -fsSL https://bazel.build/bazel-release.pub.gpg | gpg --dearmor >bazel-archive-keyring.gpgsudo mv bazel-archive-keyring.gpg /usr/share/keyringsecho "deb [arch=amd64 signed-by=/usr/share/keyrings/bazel-archive-keyring.gpg] https://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list```The component name "jdk1.8" is kept only for legacy reasons and doesn't relate to supported or included JDK versions. Bazel releases are Java-version agnostic. Changing the "jdk1.8" component name would break existing users of the repo.```### Step 2: Install and update Bazel```shsudo apt update && sudo apt install bazel```
    Once installed, you can upgrade to a newer version of Bazel as part of your normal system updates:```sh
    sudo apt update && sudo apt full-upgrade
    

    The bazel package always installs the latest stable version of Bazel. You can install specific, older versions of Bazel in addition to the latest one, such as this:

    sudo apt install bazel-1.0.0
    

    This installs Bazel 1.0.0 as /usr/bin/bazel-1.0.0 on your system. This can be useful if you need a specific version of Bazel to build a project, for example because it uses a .bazelversion file to explicitly state with which Bazel version it should be built.

    Optionally, you can set bazel to a specific version by creating a symlink:

    sudo ln -s /usr/bin/bazel-1.0.0 /usr/bin/bazel
    bazel --version  # 1.0.0
    

  1. 检出 MediaPipe 代码库。

    $ cd $HOME
    $ git clone --depth 1 https://github.com/google/mediapipe.git# Change directory into MediaPipe root directory
    $ cd mediapipe
    

配置opencv编译选项,打开mediapipe-master/third_party/opencv_linux.BUILD。取消注释,若为手动编译安装opencv, 应该选择最后一项,例如include/opencv4/

# Description:
#   OpenCV libraries for video/image processing on Linuxlicenses(["notice"])  # BSD licenseexports_files(["LICENSE"])# The following build rule assumes that OpenCV is installed by
# 'apt-get install libopencv-core-dev libopencv-highgui-dev \'
# '                libopencv-calib3d-dev libopencv-features2d-dev \'
# '                libopencv-imgproc-dev libopencv-video-dev'
# on Debian Buster/Ubuntu 18.04.
# If you install OpenCV separately, please modify the build rule accordingly.
cc_library(name = "opencv",hdrs = glob([# For OpenCV 4.x#"include/aarch64-linux-gnu/opencv4/opencv2/cvconfig.h",#"include/arm-linux-gnueabihf/opencv4/opencv2/cvconfig.h",#"include/x86_64-linux-gnu/opencv4/opencv2/cvconfig.h","include/opencv4/opencv2/**/*.h*",]),includes = [# For OpenCV 4.x#"include/aarch64-linux-gnu/opencv4/",#"include/arm-linux-gnueabihf/opencv4/",#"include/x86_64-linux-gnu/opencv4/","include/opencv4/",],linkopts = ["-l:libopencv_core.so","-l:libopencv_calib3d.so","-l:libopencv_features2d.so","-l:libopencv_highgui.so","-l:libopencv_imgcodecs.so","-l:libopencv_imgproc.so","-l:libopencv_video.so","-l:libopencv_videoio.so",],visibility = ["//visibility:public"],
)
运行 [Hello World! in C++ 示例](https://ai.google.dev/edge/mediapipe/framework/getting_started/hello_world_cpp.md?hl=zh-cn)。```bash
$ export GLOG_logtostderr=1# if you are running on Linux desktop with CPU only
$ bazel run --define MEDIAPIPE_DISABLE_GPU=1 \mediapipe/examples/desktop/hello_world:hello_world# If you are running on Linux desktop with GPU support enabled (via mesa drivers)
$ bazel run --copt -DMESA_EGL_NO_X11_HEADERS --copt -DEGL_NO_X11 \mediapipe/examples/desktop/hello_world:hello_world
```

在 GPU 上运行

注意 :此命令目前仅适用于 Linux,请先按照在 Linux 桌面上设置 OpenGL ES 进行操作。

  1. 例如,如需构建带 GPU 的旧版 MediaPipe 手部检测解决方案的 C++ 示例应用,请运行以下命令:

    bazel build -c opt --copt -DMESA_EGL_NO_X11_HEADERS --copt -DEGL_NO_X11 \mediapipe/examples/desktop/hand_tracking:hand_tracking_gpu
    
  2. 如需运行该应用,请执行以下操作:

    GLOG_logtostderr=1 bazel-bin/mediapipe/examples/desktop/hand_tracking/hand_tracking_gpu \--calculator_graph_config_file=mediapipe/graphs/hand_tracking/hand_tracking_desktop_live_gpu.pbtxt
    

    只要摄像头已连接并开启,这就会打开摄像头。出现任何错误都可能是因为无法访问摄像头,或 GPU 驱动程序未正确设置。

这篇关于谷歌Mediapipe安装部署教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1078253

相关文章

Win安装MySQL8全过程

《Win安装MySQL8全过程》:本文主要介绍Win安装MySQL8全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Win安装mysql81、下载MySQL2、解压文件3、新建文件夹data,用于保存数据库数据文件4、在mysql根目录下新建文件my.ini

springboot使用Scheduling实现动态增删启停定时任务教程

《springboot使用Scheduling实现动态增删启停定时任务教程》:本文主要介绍springboot使用Scheduling实现动态增删启停定时任务教程,具有很好的参考价值,希望对大家有... 目录1、配置定时任务需要的线程池2、创建ScheduledFuture的包装类3、注册定时任务,增加、删

如何为Yarn配置国内源的详细教程

《如何为Yarn配置国内源的详细教程》在使用Yarn进行项目开发时,由于网络原因,直接使用官方源可能会导致下载速度慢或连接失败,配置国内源可以显著提高包的下载速度和稳定性,本文将详细介绍如何为Yarn... 目录一、查询当前使用的镜像源二、设置国内源1. 设置为淘宝镜像源2. 设置为其他国内源三、还原为官方

最详细安装 PostgreSQL方法及常见问题解决

《最详细安装PostgreSQL方法及常见问题解决》:本文主要介绍最详细安装PostgreSQL方法及常见问题解决,介绍了在Windows系统上安装PostgreSQL及Linux系统上安装Po... 目录一、在 Windows 系统上安装 PostgreSQL1. 下载 PostgreSQL 安装包2.

Maven如何手动安装依赖到本地仓库

《Maven如何手动安装依赖到本地仓库》:本文主要介绍Maven如何手动安装依赖到本地仓库问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、下载依赖二、安装 JAR 文件到本地仓库三、验证安装四、在项目中使用该依赖1、注意事项2、额外提示总结一、下载依赖登

Maven的使用和配置国内源的保姆级教程

《Maven的使用和配置国内源的保姆级教程》Maven是⼀个项目管理工具,基于POM(ProjectObjectModel,项目对象模型)的概念,Maven可以通过一小段描述信息来管理项目的构建,报告... 目录1. 什么是Maven?2.创建⼀个Maven项目3.Maven 核心功能4.使用Maven H

IDEA自动生成注释模板的配置教程

《IDEA自动生成注释模板的配置教程》本文介绍了如何在IntelliJIDEA中配置类和方法的注释模板,包括自动生成项目名称、包名、日期和时间等内容,以及如何定制参数和返回值的注释格式,需要的朋友可以... 目录项目场景配置方法类注释模板定义类开头的注释步骤类注释效果方法注释模板定义方法开头的注释步骤方法注

如何在Mac上安装并配置JDK环境变量详细步骤

《如何在Mac上安装并配置JDK环境变量详细步骤》:本文主要介绍如何在Mac上安装并配置JDK环境变量详细步骤,包括下载JDK、安装JDK、配置环境变量、验证JDK配置以及可选地设置PowerSh... 目录步骤 1:下载JDK步骤 2:安装JDK步骤 3:配置环境变量1. 编辑~/.zshrc(对于zsh

如何在pycharm安装torch包

《如何在pycharm安装torch包》:本文主要介绍如何在pycharm安装torch包方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录在pycharm安装torch包适http://www.chinasem.cn配于我电脑的指令为适用的torch包为总结在p

在PyCharm中安装PyTorch、torchvision和OpenCV详解

《在PyCharm中安装PyTorch、torchvision和OpenCV详解》:本文主要介绍在PyCharm中安装PyTorch、torchvision和OpenCV方式,具有很好的参考价值,... 目录PyCharm安装PyTorch、torchvision和OpenCV安装python安装PyTor