Unity升级到5以后,好多以前使用的插件都用不了了,比如,以前利用Kinect来辨别姿势的话,直接可以使用Kinect with MS-SDK (https://www.assetstore.unity3d.com/en/#!/content/7747),就可以利用这个package里面的函数就可以完成一些动作的捕获,是不是,自从使用Unity5之后,这个包导入就会报编译错误了?嗯,既然,别人的库不能用了,那我们就自己建立一个自己的分类器,这样的话,不仅可以完成一些基本的姿势识别,我们还可以定义任意多的姿势!
说到分类器,或许有人会说,那不是机器学习训练样本之后制造的东西嘛?没错,的确是利用机器学习的方式来建立分类器。机器学习的算法太复杂了,我不会怎么办?那么,我介绍的方法刚好适合你!因为微软已经给我们做好了对应的应用程序,我们只要训练样本就好啦!
好的,来介绍一下我们的工具,Kinect Studio 和 Visual Gesture Builder,这两个程序应该在我们下载 Kinect v2 的SDK的时候就已经下载下来了。
一 Kinect Studio 收集视频样本
-
首先,打开Kinect Studio,先点击File进入设置界面,这里我们可以设置我们的视频片段存储位置。
-
录制视频样本,先转到Record界面,连接Kinect
-
成功之后,我们的Kinect的三个红外灯应该是亮了,然后点击那个红色的icon开始录制视频。
-
我们这里以挥手这个动作来作为例子,我们站在一个合适的位置,做挥手的动作,一开始慢慢的,多做几组),然后录制完毕,点击停止录制。
-
这时候,Kinect Studio 的界面会自动跳转到Play的界面。我们先Disconnect Kinect之后,可以点击play的icon来查看这个视频例子,注意,我用红色方框框起来的部分,这个就是保存的文件名,注意,只要我们点击了录制,Kinect Studio都会给我们自动保存的。保存的位置就是我们刚才设置的文件夹,如果,你没有设置的话,可以去File 的Setting里面看看它的默认文件夹的位置。
-
同样的操作,我们在做几遍,当然你的视频样本越多,我们生成的分类器就更准确啊。
####二 Visual Gesture Builder制作正负样本
-
打开软件,File -> New Solution, 自己随便命个名,我这里叫做DemoWave。
-
现在的面板李应该出现了你刚才project,右键这个工程,选择Create New Project With Wizard。
-
出现VGB Gesture Wizard 的界面,点击 Next