Kinect原理和开发心得.pptVIP

  • 7
  • 0
  • 约1.77千字
  • 约 14页
  • 2018-06-23 发布于湖北
  • 举报
Kinect 原理及开发心得 工作流程 kinect传感器 手势 声音 位置 主机 kinect sdk 应用程序 颜色数据流 深度数据流 声音数据流 安装环境 硬件需求: 2.66-GHz DirectX® 9.0c 2 GB of RAM 软件需求: 开发软件:Microsoft Visual Studio® 2012 Express or other Visual Studio 2012 edition 开发环境:Microsoft .NET Framework 4.5 Kinect for Windows SDK的下载地址: /en-us/kinectforwindows/ /fwlink/?LinkID=323589 操作系统:Windows 7 (x86 or x64) 安装步骤 1. 硬件安装 下面的图片是Kinect和AC Adapter/ Power Supply: 软件安装步骤 2. Kinect SDK安装 Kinect SDK的安装过程非常简单,无需任何设置,直接安装即可。 安装步骤 3. 环境测试 Kinect SDK安装完成后,我们将Kinect转接口的USB接口插入到PC中。PC会发现新硬件,并且自动查找驱动程序安装。下图是安装完成后的示意图: 安装步骤 4. 测试程序 我们打开Kinect SDK中自带的Sample Skeletal Viewer就可以很方便地检测Kinect设备是否与PC已经连接好了。 图像数据流+景深数据流=?    景深图 NUI骨骼跟踪 kinect根据像素的变化识别出20个人体关键点 根据20个关键点生成人体骨骼系统 在生成20个骨骼关键点后,kinect有一个跟踪模块自动跟踪20个点的坐标位置 骨骼跟踪系统: 同时识别6个人,只有2个人能进行动作追踪 图像数据流+景深数据流=骨骼数据流 hello world 获取骨骼流 从骨骼流中获取 20个关键点 动作处理 获取骨骼流 人体骨骼数据流 2个tracked 状态人体,包括20个点的精准捕捉 初始化骨骼数据流 //Linq语法,查找离Kinect最近的、被跟踪的骨骼 Skeleton closestSkeleton = (from s in allSkeletons where s.TrackingState == SkeletonTrackingState.Tracked s.Joints[JointType.Head].TrackingState == JointTrackingState.Tracked select s).OrderBy(s = s.Joints[JointType.Head].Position.Z) .FirstOrDefault(); return closestSkeleton; 20个关键点动作处理 SkeletonPoint head = s.Joints[JointType.Head].Position; 头部坐标 SkeletonPoint leftshoulder = s.Joints[JointType.ShoulderLeft].Position; 左肩坐标 SkeletonPoint leftHand = s.Joints[JointType.HandLeft].Position; 左手坐标 //左手举起 bool isLeftHandRaised = (leftHand.Y - leftshoulder.Y) 0.2; //左手伸出 bool isLeftHandStretched = (leftshoulder.X - leftHand.X) 0.4;

文档评论(0)

1亿VIP精品文档

相关文档