Kinect for Windows V2开发教程
教程
https://blog.csdn.net/openbug/article/details/80921437
Windows版Kinect SDK
SDK的例子图
https://www.jianshu.com/p/70c50b02c636
开发文档中,前1个小节,What’s New和Known Issues都未有内容。然后Features特点章节中给出了不少参数。新的K4W sdk(Kinect for windows sdk)有以下特点:
#使用XBox One Kinect传感器
#在水平和垂直方向上具有更宽阔的深度和彩色视野
#全高清彩色画面(Full HD Color)
#独立照明红外(Lighting Independent Infrared ,30fps)
#深度保真(Depth fidelity,3x)
#改进的麦克风(零平衡,zero balanced)
#6个人完整25个骨骼点(每个人都有25个)
#大拇指追踪,手根部追踪(end of hand tracking),手的开与闭手势
#增强的高质量操作范围(近0.5米,远4.5米)
#多个应用可以同时使用传感器
上图
1 肢体动作检测
2 手势检测 剪刀 石头 步 分别显示不同颜色
一、Kinect for Windows V2
彩色图像:1920*1080 @30、15FPS(根据环境亮度)
深度图像:512*424 @ 30FPS、16bit距离值(mm)、可侦测范围0.5~8m
红外图像:512*424 @ 30FPS、16bit强度值
声音
根据以上数据,可以再通过软件,进行人体的追踪。骨架的辨识(0.5~4.5m)。最多6个人,每个人25个关节点,其中每个关节点可以取得空间中的位置、方向等数据。
麦克风阵列可判断声音的来源,搭配Microsoft Speech SDK,可分析声音的输入,做语音控制。
二、开发软硬件要求
系统要求:
● win8 or win10
硬件要求:
● 64位(x64)处理器
● i7 2.5-GHz或更快的处理器
● 内置USB 3.0总线(驱动安装必须正确,在USB设备里面能看到Inetel USB 3.0字样)
● 4 GB RAM
● DX11图形适配器 (用GPU-z这个工具可以检测显卡是否支持DX11)
开发环境
● Visual Studio 2012、Visual Studio 2013
建议要求
Windows 8.1
4 GB of RAM
i7 CPU running at 2.5GHZ (or higher)
DirectX 11 Compatible Video Card(NVidia GeForce GTX560,AMD Radeon 6950)
官方指明显卡(更高版本的肯定可以):
◦Intel HD 4400 integrated display adapter
◦ATI Radeon HD 5400 series
◦ATI Radeon HD 6570
◦ATI Radeon HD 7800 (256-bit GDDR5 2GB/1000Mhz)
◦NVidia Quadro 600
◦NVidia GeForce GT 640
◦NVidia GeForce GTX 660
◦NVidia Quadro K1000M
三、安装测试
Kinect SDK 2.0下载链接
https://www.microsoft.com/en-us/download/details.aspx?id=44561
安装完成之后,有三个应用程序
1.SDK Browser v2.0 所有SDK支持功能的各个版本的Demo,可以直接运行查看效果,有的还提供C#或者C++编写的样例程序可以下载
工程自己配好了k的库,需要手动添加opencv
2.Kinect Studio v2.0 可以查看2D以及3D的预览信息
3.Visual Gesture Builder - PREVIEW 手势识别预览版
(暂时没发现怎么用,应该需要另外导入Demo)
四、开发环境配置
Enviroment : win10 + vs2015 + openCV3.2.0
配置教程参考链接
Kinect开发环境配置:
配置opencv3.4.1+cuda
cublas.lib cuda.lib cudadevrt.lib cudart.lib cudart_static.lib
nvcuvid.lib OpenCL.lib cudnn.lib
opencv_aruco341.lib
opencv_bgsegm341.lib
opencv_bioinspired341.lib
opencv_calib3d341.lib
opencv_ccalib341.lib
opencv_core341.lib
opencv_cudaarithm341.lib
opencv_cudabgsegm341.lib
opencv_cudacodec341.lib
opencv_cudafeatures2d341.lib
opencv_cudafilters341.lib
opencv_cudaimgproc341.lib
opencv_cudalegacy341.lib
opencv_cudaobjdetect341.lib
opencv_cudaoptflow341.lib
opencv_cudastereo341.lib
opencv_cudawarping341.lib
opencv_cudev341.lib
opencv_datasets341.lib
opencv_dnn341.lib
opencv_dnn_objdetect341.lib
opencv_dpm341.lib
opencv_face341.lib
opencv_features2d341.lib
opencv_flann341.lib
opencv_fuzzy341.lib
opencv_hfs341.lib
opencv_highgui341.lib
opencv_imgcodecs341.lib
opencv_imgproc341.lib
opencv_img_hash341.lib
opencv_line_descriptor341.lib
opencv_ml341.lib
opencv_objdetect341.lib
opencv_optflow341.lib
opencv_phase_unwrapping341.lib
opencv_photo341.lib
opencv_plot341.lib
opencv_reg341.lib
opencv_rgbd341.lib
opencv_saliency341.lib
opencv_shape341.lib
opencv_stereo341.lib
opencv_stitching341.lib
opencv_structured_light341.lib
opencv_superres341.lib
opencv_surface_matching341.lib
opencv_text341.lib
opencv_tracking341.lib
opencv_video341.lib
opencv_videoio341.lib
opencv_videostab341.lib
opencv_xfeatures2d341.lib
opencv_ximgproc341.lib
opencv_xobjdetect341.lib
opencv_xphoto341.lib
配置K的SDK
在【C/C++】的【常规】里,【附加包含目录】中加入【$(KINECTSDK20_DIR)\inc】
在【链接器】的【常规】里,【附加库目录】中加入【$(KINECTSDK20_DIR)\Lib\x86】 或者 $(KINECTSDK20_DIR)\lib\x64
在【链接器】的【输入】里,【附加依赖项】中加入【kinect20.lib】
kinect20.lib
kernel32.lib
user32.lib
gdi32.lib
winspool.lib
comdlg32.lib
advapi32.lib
shell32.lib
ole32.lib
oleaut32.lib
uuid.lib
odbc32.lib
odbccp32.lib
结果
除此之外,下载更多示例运行
再来测试一个脸部检测器
----------------------------------------------------------------------------------------------------
更多例子
https://www.jianshu.com/p/70c50b02c636
手势识控件
https://download.csdn.net/download/manoerina0411/9985636
Kinect for Windows V2开发教程的更多相关文章
- Kinect For Windows V2开发日志一:开发环境的配置
算是正式进军Kinect了,前段时间学的东西现在就忘了,于是从此开始记录一下. 目前为止大部分的学习资料来自于Heresy的博客,写的非常优秀,清晰明了,十分感谢.开发语言为C++,应该会一直使用,但 ...
- Kinect For Windows V2开发日志八:侦测、追踪人体骨架
简介 Kinect一个很强大的功能就是它可以侦测到人体的骨骼信息并追踪,在Kinect V2的SDK 2.0中,它最多可以同时获取到6个人.每个人25个关节点的信息,并且通过深度摄像头,可以同时获取到 ...
- Kinect For Windows V2开发日志六:人体的轮廓的表示
Kinect中带了一种数据源,叫做BodyIndex,简单来说就是它利用深度摄像头识别出最多6个人体,并且用数据将属于人体的部分标记,将人体和背景区别开来.利用这一特性,就可以在环境中显示出人体的轮廓 ...
- Kinect For Windows V2开发日志五:使用OpenCV显示彩色图像及红外图像
彩色图像 #include <iostream> #include <Kinect.h> #include <opencv2\highgui.hpp> using ...
- Kinect For Windows V2开发日志九:侦测并绘制人体骨架
简介 在上一篇<侦测.追踪人体骨架>里,介绍了关节点的使用办法,这一篇记录将关节点与OpenCV结合的绘图方法. 代码 #include <iostream> #include ...
- Kinect For Windows V2开发日志七:照片合成与背景消除
上一篇里讲到了Kinect可以从环境中区分出人体来.因此可以利用这个功能,来把摄像头前的人合成进照片里,和利用Photoshop不同的是,这样合成进去的人是动态且实时的. 简单的思路 BodyInde ...
- Kinect For Windows V2开发日志四:使用OpenCV显示深度图像
代码示例: #include <Kinect.h> #include <iostream> #include <opencv2\highgui.hpp> using ...
- Kinect For Windows V2开发日志三:简单的深度读取
代码示例: #include <Kinect.h> #include <iostream> using namespace std; int main(void) { IKin ...
- Kinect For Windows V2开发日志二:Kinect V2的基本参数
以下内容节选自Heresy的博客: 彩色影像:1920 x 1080 @ 30 / 15 FPS(根据环境亮度) 深度影像:512 x 424 @ 30 FPS.16bit 距离值(mm).可侦测 ...
随机推荐
- C# API强制关机、重启以及注销计算机
在Windows系统中有2种方式进行关机.重启以及注销计算机操作: 1.使用shutdown()命令:2.使用系统API: 以下是使用系统API进行操作的实例. 程序实例界面: 程序实例代码: 1 u ...
- Azure DevOps Server (TFS) 代码库Repo管理培训
Repo是分布式代码库Git中的一个专用词,用于存储和管理开发团队中特定的源代码. 使用Git,可以协调整个团队的代码更改. 即使您只是一个开发人员,版本控制也可以帮助您在修复错误和开发新功能时保持井 ...
- Android系统HAL开发实例
1.前言 Android系统使用HAL这种设计模式,使得上层服务与底层硬件之间的耦合度降低,在文件: AOSP/hardware/libhardware/include/hardware/hardwa ...
- Eureka概述
1:Eureka是什么 Eureka是Spring Cloud Netflix的一个子模块,也是核心模块之一.Eureka是一个基于REST的服务,用于定位服务,以及·实现云端中间层服务发现和故障转移 ...
- Java for循环每次都通过list.size()和 string.length()获取大小是否消耗性能?
前言 有人说在for循环之前用一个局部变量先获取到list.size().str.length(),然后在for循环的判断条件里通过这个局部变量替换list.size().str.length()会节 ...
- centos切换php版本
centos服务器上安装了php5.3到php7.2版本的php,默认使用php -v,查看到的php版本信息为: 修改环境变量文件:vim /etc/profile shift+g跳转到最后一行环境 ...
- 单词大学CET六四级英语
2012年大学英语六级词汇 baseball n.棒球:棒球运动 basement n.地下室:地窖:底层 basin n.内海:盆地,流域 battery n.炮兵连:兵器群 battle vi.战 ...
- (一)RFB协议概述
(文章是基于刚刚做过的一个项目,对相关知识点进行总结回顾.主要内容均是对之前收集资料的总结概括,很多内容转载自其它地方.因为时间比较长,没有一一记录转载地址,特此感谢!) 一.简介 RFB(远程帧缓冲 ...
- 1 Python命令行参数(脚本神器)
#!/usr/bin/env python3.7 # -*- coding:utf-8 -*- # Author: Lancer 2019-09-02 10:07:21 import sys,geto ...
- Linux之IO
速度差异 I/O不仅仅是硬盘,还包括外围的所有设备,比如键盘鼠标,比如1.44M的3.5英寸软盘(还有人记得么).但服务器环境,泛指硬盘. 硬盘有多慢呢?我们不去探究不同设备的实现细节,直接看它的写入 ...