MediaPipe-UnityPlugin的基本使用

基于MediaPipeUnityPlugin的三维手势追踪 在MediaPipe的基础上,模拟出手的深度,让我们的手真正在一个三维空间里面活动 阅读详情

MediaPipe介绍

我们直接引用前人的智慧:MediaPipe介绍

而 MediaPipeUnityPlugin,则帮我们把MediaPipe(C++)移植到了C#,使其能被Unity调用


MediaPipeUnityPlugin

使用这个插件,你可以:
– 用 C# 编写 MediaPipe 代码
– 在Unity上运行 MediaPipe 的官方解决方案
– 在Unity上运行您的自定义 Calculator 和 CalculatorGraph
(根据输入/输出的类型,您可能需要编写 C++ 代码)

1. 安装

github地址:https://github.com/homuler/MediaPipeUnityPlugin

下载地址:https://github.com/homuler/MediaPipeUnityPlugin/releases
本文使用的版本:MediaPipeUnity.0.11.0

建议Unity版本:2021.3以上


2. 运行一个官方解决方案

当然,该插件已经提供了案例,此处目的是了解它的运作方式,以便你想要按自己的需求搭一个环境

GraphRunner

Graph运行基类,封装了config的加载及初始化配置、MediaPipe数据流的输入输出,相当于MVC中的M

  • 应用层 xxxGraph : GraphRunner
    声明具体的输出流并配置
    定义输入流的输入接口
    定义获取同步输出的接口
    定义异步输出监听的接口
    加载需要的数据文件

Solution

操作基类,负责图像处理程序的生命周期,管理并获取图像源,相当于MVC中的C

  • 派生类 ImageSourceSolution<T> : Solution
    -T : GraphRunner
    -管理GraphRunner实例及一些组件
    -实现具体的每帧更新逻辑
    – 抽象接口:
    – OnStartRun() 初始化
    – AddTextureFrameToInputStream(TextureFrame textureFrame) 将图像传给输入流
    – WaitForNextValue() 获取同步输出

  • 应用层 xxxSolution : ImageSourceSolution<xxxGraph>
    -声明回调,在 OnStartRun() 中绑定Graph的异步监听接口,获取异步输出,并处理
    -在 AddTextureFrameToInputStream() 中将得到的图像传给自己的Graph实例
    -在 WaitForNextValue() 中获取Graph的同步输出,并处理

Bootstrap

引导程序,选择图像输入源、资源加载方式、CPU或GPU计算,由Solution在Start()中调用

  • 图像源:WebCamera、Image、Video
    根据选择的图像源,需要挂上相应的组件
    – WebCamSource
    – StaticImageSource
    – VideoSource
  • 资源加载:StreamingAssets、AssetBundle、Local

TextureFramePool

TextureFrame 的对象池,ImageSourceSolution 会用到

Screen

MediaPipeUnityPlugin(最新版)摇摆拳人脸识别 阅读详情

相关推荐

MediaPipe-UnityPlugin从入门到精通:手把手教你搭建CalculatorGraph

本文深入解析MediaPipe-UnityPlugin中CalculatorGraph的构建与优化,提供从环境配置到高级调试的全流程实战指南。通过C#与Unity的深度整合,开发者可高效实现计算机视觉算法,并掌握多线程处理、内存管理等关键技术,提升实时感知应用的性能与稳定性。

weixin_29009339的博客 364

MediaPipe-UnityPlugin实战:从零搭建三维手势追踪系统

本文详细介绍了如何利用MediaPipe-UnityPlugin从零搭建三维手势追踪系统。通过环境配置、核心架构解析、实战案例演示及深度定制开发,指导开发者快速在Unity中集成MediaPipe的手势识别功能,实现低门槛的AI视觉交互应用,并提供了性能优化与实战技巧。

weixin_29012765的博客 253

Unity三维手势交互实战:基于MediaPipe-UnityPlugin从配置到算法实现

计算机视觉中的手势识别技术,通过深度学习模型实时检测并定位手部关键点,是实现自然人机交互的核心原理。其技术价值在于将复杂的图像理解转化为结构化的坐标数据,为虚拟操控提供了高精度、低延迟的输入基础。在增强现实、体感游戏、虚拟培训等应用场景中,手势交互能极大提升沉浸感和操作直觉。本文聚焦于MediaPipe-UniityPlugin这一高效工具,它作为MediaPipe框架在Unity引擎中的桥梁,封装了完整的手部关键点检测管道,显著降低了在游戏和AR/VR项目中集成先进视觉功能的门槛。通过解析其本地化高性能的

weixin_34252686的博客 399

MediaPipe-UnityPlugin避坑指南:如何高效调用C++计算器并在C#中处理图像数据

本文深入探讨了MediaPipe-UnityPlugin在Unity中高效调用C++计算器并处理图像数据的关键优化策略。通过零拷贝纹理传输、C++回调妙用、内存池化技术等五大技巧,显著提升性能,实现从22FPS到45FPS的飞跃,特别适用于手部追踪、姿态估计等计算机视觉应用。

weixin_29009339的博客 180

Unity手势交互开发实战:基于Ultraleap开源插件实现高精度手部追踪

手势交互作为人机交互的重要分支,其核心在于通过计算机视觉或传感器技术,实时捕捉并解析用户手部动作,将其转化为精确的数字化指令。其原理通常涉及骨骼关键点检测、运动追踪和姿态估计算法,旨在实现自然、直观的操控体验。这项技术的价值在于打破了传统输入设备的限制,为虚拟现实、增强现实、数字孪生等前沿领域提供了沉浸式的交互基础。在应用场景上,它广泛服务于VR/AR内容开发、体感游戏、医疗模拟训练及智能展厅等需要精细化手部操控的场合。本文聚焦于**Unity引擎**与**Ultraleap开源插件**的整合实践,详细解析

weixin_34160277的博客 399

将MediaPipeUnityPlugin示例项目打包到Android的流程

将MediaPipeUnity打包到Android运行。

woshi212534的博客 1910

MediaPipeUnityPlugin:运行MediaPipe图形的Unity插件

MediaPipe Unity插件 这是一个使用MediaPipe的Unity(2019.4.18f1)插件。 平台类 Linux桌面(在ArchLinux上测试) 安卓 的iOS macOS(仅CPU) Windows 10(仅限CPU,实验性) 先决条件 MediaPipe 请确保安装必需的软件包,并检查是否可以在计算机上运行官方演示。 OpenCV 默认情况下,假定OpenCV 3安装在/usr (例如/usr/lib/libopencv_core.so )。 如果您的版本或路径不同,请编辑和 。 .NET核心 该项目使用协议缓冲区与MediaPipe进行通信,并且必须安装.

MediaPipeUnity插件

MediaPipeUnity插件,包含人脸识别,骨骼识别,手势识别等,例程可测试通过

MediaPipeUnityPlugin

Unity摄像头识别插件,包括人脸识别、面部识别、手势识别、绿幕抠图等

csp-j/s

CSP-J/S 是中国计算机学会(CCF)主办的 ‌‌(Certified Software Professional Junior/Senior),是信息学奥赛(NOI)体系的入门级选拔考试,也是国内最具权威性的青少年编程能力认证之一。

gxyxxrYYDS的博客 1977

用deepseek对GPU服务器进行压力测试

利用 DeepSeek 模型对 GPU 服务器进行压力测试,核心思路是通过,验证 GPU 服务器在计算、显存、网络等维度的承载能力,同时观察稳定性与性能瓶颈。

weixin_42795092的博客 1595

Cadence Virtuoso实战:3分钟搞定反相器参数化设计(附CDF配置避坑指南)

本文详细介绍了如何在Cadence Virtuoso中利用CDF参数传递功能实现反相器的参数化设计,包括PMOS和NMOS的基础搭建、CDF配置技巧及常见报错解决方案。通过实战案例和避坑指南,帮助工程师快速掌握高效设计方法,提升集成电路设计效率。

weixin_28292761的博客 324

Abaqus 气动软体抓取器:从超弹性材料建模到抓取力仿真全流程解析

本文详细解析了Abaqus在气动软体抓取器仿真中的应用全流程,涵盖超弹性材料建模、接触设置优化到抓取力仿真等关键环节。通过实战案例分享Yeoh模型参数拟合、不可伸展层建模技巧及收敛优化策略,帮助工程师高效解决有限元仿真中的常见问题,提升软体机器人研发效率。

weixin_28689193的博客 228

单周期CPU设计【Verilog】

第一章 单周期CPU的设计原理 为实现单周期CPU,本文首先研究了单周期CPU的相关理论和工作原理。本章首先简要介绍单周期CPU的基本概念,然后对CPU的工作原理进行简要分析,以便为单周期CPU的设计和开发提供理论基础。 1.1 单周期CPU概述 中央处理器,即CPU,作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。在CPU内部,电平从低到高变化的瞬间称为时钟上升沿,两个相邻时钟上升沿之间的时间间隔称为一个时钟周期。单周期CPU指的是一条指令的执行在一个时钟周期内完成,然后开始下一

醉酒、冰城外 2万+

Nuxt - 项目打包部署及上线到服务器流程(SSR 服务端渲染)

Nuxt-项目打包部署及上线到服务器流程,详细介绍Nuxt项目上线部署,服务端渲染(ssr)项目及nuxt项目部署过程,nuxt项目打包上线,Nuxt项目的部署教程,NuxtJS项目部署方案,Nuxt如何部署到线上,nuxt项目部署篇,Nuxt项目搭建到Nuxt项目部署,Nuxt项目从开始到部署,详细教程。服务器部署nuxt项目,nuxt服务端部署上线,在服务器上部署nuxt项目,NuxtJS项目——命令和部署。......

🏆 前端领域优质创作者 1万+

CXSMILES细则-用于在 SMILES 字符串后存储分子的特殊特征

Chemaxon 扩展 SMILES/SMARTS 用于在 SMILES 字符串后存储分子的特殊特征。任何信息都可以存储在 SMILES 字符串后,只要它们由空格或制表符字符分隔,因为 SMILES 解析器会忽略这些信息,或者将它们作为注释使用。扩展特征以以下格式存储:Chemaxon 的扩展 SMILES/SMARTS 不包含非 ASCII 字符,它们通常以字符代码 n 的形式被转义为 &#n;。在 S-group 中,ASCII 字符“,”、“;”、“|”、“{”、“}”也以这种方式转义。此外,符号“$

ASKCOS博客 396

Android Binder的两三事--基于Android14源码

Android14-Framework-Binder

保持专注,保持热爱 1135

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

上一篇: Unity Addressable的基本使用
下一篇: 基于MediaPipeUnityPlugin的三维手势追踪
EdmundRF
博客等级 码龄8年 31粉丝 10原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值