欢迎来到天天文库
浏览记录
ID:42684184
大小:72.89 KB
页数:10页
时间:2019-09-20
《谈谈NITE 2的姿势探测识别和手势探测识别》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、谈谈NITE2的姿势探测识别和手势探测识别主要内容:·姿势探测识别·手势探测识别一、姿势探测识别1.1内容介绍 NITE2的姿势探测识别功能和人体骨骼跟踪一样,是由UserTracker提供的,在NiTE2.0版本中,提供了两种姿势:“POSE_PSI”(我称它为“投降姿势”)和“POSE_CROSS_HAND”(称之为“双手抱胸”),除此之外,我们没办法提供自己设定的特定姿势的探测和识别。 在之前的版本中,由于“POSE_PSI”是用来做骨架跟踪校正的标志姿势使用的,但后来NITE提供了不用校正姿势的情
2、况下就可以进行骨架跟踪了,所以在没有特殊使用的情况下,本人(谈谈NITE2与OpenCV结合的第二个程序(提取人体骨骼坐标))觉得在骨骼跟踪上,姿势的探测已然成为了多余的了;但对于使用姿势识别有关方面的研究的,我想这个姿势探测识别应该还是重要的,没准在NITE后面的版本中提供”自制的特定姿势“跟踪识别了。 由于在NITE中主要提供的是人体跟踪和手的跟踪,而人体姿势探测属于前者,所以姿势探测识别和人体骨骼跟踪一样,都是使用UserTracker。首先通过获得新的使用者信息;然后根据指定使用者,利用UserTrac
3、ker开始进行姿势的探测;最后根据每次探测到最新的姿势资料,进行判定识别,以及开始我们自己需要的处理工作。1.2代码介绍 同样的,直接上代码说明如何利用UserTracker进行姿势探测。#include"stdafx.h"#include//载入NiTE头文件#include//usingnamespaceusingnamespacestd;usingnamespacenite;intmain(intargc,char**argv){//初始化NiTE环境NiTE::ini
4、tialize();//创建UserTracker跟踪器UserTrackermUserTracker;mUserTracker.create();while(true){//读取帧信息UserTrackerFrameRefmUserFrame;mUserTracker.readFrame(&mUserFrame);//通过帧信息,获得用户数据UserDataconstArray&aUsers=mUserFrame.getUsers();for(inti=0;i5、);++i){constUserData&rUser=aUsers[i];constUserId&uID=rUser.getId();if(rUser.isNew()){cout<<"User"<6、on(uID,POSE_CROSSED_HANDS);}elseif(rUser.isLost()){cout<<"User"<7、<"保持---投降姿势(PSIpose)"<8、.isHeld())cout<<"保持---双手抱胸(CrossHandpose)"<
5、);++i){constUserData&rUser=aUsers[i];constUserId&uID=rUser.getId();if(rUser.isNew()){cout<<"User"<6、on(uID,POSE_CROSSED_HANDS);}elseif(rUser.isLost()){cout<<"User"<7、<"保持---投降姿势(PSIpose)"<8、.isHeld())cout<<"保持---双手抱胸(CrossHandpose)"<
6、on(uID,POSE_CROSSED_HANDS);}elseif(rUser.isLost()){cout<<"User"<7、<"保持---投降姿势(PSIpose)"<8、.isHeld())cout<<"保持---双手抱胸(CrossHandpose)"<
7、<"保持---投降姿势(PSIpose)"<8、.isHeld())cout<<"保持---双手抱胸(CrossHandpose)"<
8、.isHeld())cout<<"保持---双手抱胸(CrossHandpose)"<
此文档下载收益归作者所有