Unity Kinect结合VisualGestureBuilder进行姿势学习(未完)
Unity Kinect结合VisualGestureBuilder进行姿势学习(未完)前言录制训练视频生成VG库VG库导入Unity更改VG文件读取路径(可选)第一处修改 注释默认读取文件方法第二处修改 修改文件读取路径Unity监听动作前言文中使用插件为KinectForUnity如要支持Unity2019或更高需自行升级插件,文末会提供方法需安装Kinect Studio,Visual Ge
Unity Kinect结合VisualGestureBuilder进行姿势学习(未完)
前言
文中使用插件为KinectForUnity
如要支持Unity2019或更高需自行升级插件,文末会提供方法
百度云 https://pan.baidu.com/s/1dAEhJgXbXL0_ZtQdWd-ATA
提取码 3nsv
需安装Kinect Studio,Visual Gesture Builder
若安装KinectStudio则自带Visual Gesture Builder
百度云 https://pan.baidu.com/s/1s6oFAmcTJVHj1l8icwP6VQ
提取码 2vs7
录制训练视频
打开Kinect Studio
参考链接: https://docs.microsoft.com/en-us/previous-versions/windows/kinect/dn785306(v=ieb.10)
修改录制视频路径
参考链接: https://docs.microsoft.com/en-us/previous-versions/windows/kinect/dn785518(v=ieb.10)
录制训练视频
参考链接: https://docs.microsoft.com/en-us/previous-versions/windows/kinect/dn785516(v=ieb.10)
参考链接: https://blog.csdn.net/nijiayy/article/details/68926979
生成VG1库
参考链接: https://blog.csdn.net/nijiayy/article/details/68926979
VG库导入Unity
找到Build出来的VG库
拖入Unity的StreamingAssets文件夹内
如果不进行下面可选操作,需要将VG库放到Resources根目录下
更改VG文件读取路径(可选)
此处为可选操作,为了后面更方便的获取和使用VG库
如果不进行此处操作,需要将VG库放到Resources根目录下
第一处修改 注释默认读取文件方法
打开VisualGestureManager
脚本,注释默认的获取VG文件代码
第二处修改 修改文件读取路径
将上图
using (VisualGestureBuilderDatabase database = VisualGestureBuilderDatabase.Create(gestureDatabase))
代码改为
using (VisualGestureBuilderDatabase database = VisualGestureBuilderDatabase.Create(System.IO.Path.Combine(Application.streamingAssetsPath,gestureDatabase)))
参考链接: https://blog.csdn.net/gheartsea/article/details/85849719
Unity监听动作
挂载VGM组件
首先在KinectManager上挂载Visual Gesture Manager
组件
参数 | 意义 |
---|---|
PlayerIndex | 该组件跟踪的播放器索引。 0表示第一个玩家,1 - 第2个,2 - 第3个等。 |
GestureDatabase | VG数据库的文件名,由视觉手势识别器使用。(要写全称带文件名后缀) |
GestureNames | 追踪的视觉手势列表。如果留空,则将跟踪VG数据库中的所有手势。 |
MinConfidence | 需要最小的完成度阈值,以考虑完成的离散手势。可信度在0.0和1.0之间变化。越低手势完成度就越低,越容易触发监听,越高手势完成度越高,越不容易触发监听。 |
VisualGestureListeners | 场景中的视觉手势侦听器列表。如果列表为空,则会在场景启动时检测可用的手势侦听器。 |
DebugText | GUI文本显示VG-Manager调试消息。 |
这里的GestureDatabase需要注意,如果没有按照之前步骤更改VG库读取位置则将VG库放置于Resouces文件根目录下,如果修改了,放在StreamingAssets文件根目录下
挂载监听组件
之后创建脚本GestureController
并挂载在KinectManager上,如果触发手势则可以在此脚本中监听到消息。
修改监听组件
增加VG监听接口
增加VisualGestureListenerInterface
接口
增加手势完成监听
增加手势完成监听打印
参数 | 意义 |
---|---|
gesture | 手势名称 |
userIndex | 用户编号 |
当动作完成后,将自动触发此函数。
(附)在Unity2019或更高版本使用KinectForUnity
将所有脚本中的GUI函数替换为UGUI函数即可。
示例1
示例2
示例3
示例4
由Visual Gesture Builder建立自定义姿势识别训练库 ↩︎
更多推荐
所有评论(0)