前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Kinect获取深度图和深度数据

Kinect获取深度图和深度数据

作者头像
全栈程序员站长
发布2022-08-29 09:34:36
1.3K0
发布2022-08-29 09:34:36
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

做关于深度信息处理的,正好实验室配备了kinect2代,就想着先用kinect获取深度信息来处理,之后换其他设备只要有深度信息就直接往后推进就行,不过网上教程虽然多,但是第一次总会栽进坑中,记录一波,下回重来的时候长个教训。

  1. 配置参考Kinect SDK 因为现在很多版本都相对比较(额,过去式吧)这个是关于kinect v2+Windows10+VS2017(博主和微软官网都要求的VS2012或者13,但是我电脑之前配的17,是可以用的)。下载Kinect for Windows SDK2.0, 官网下载 直接安装,安装的时候不需要连接kinect设备,但是安装之后一定要重启电脑(因没有重启,之后一直出现错误)重启,重启,重启!重要的事情说三遍!!!
  2. 重启之后插入kinect USB3.0(接口没有写3.0啊,就是带点蓝色的那个USB),插上电源,就会自动安装驱动。在设备管理器里确定kinect设备已经安装好了,之后在开始处打开我们刚刚安装好的SDK Browser v2.0,但是我这里因为之前没有重启的缘故,在打开Samples C#的时候出现这样的问题,左下角示例,其实解决方案重启下电脑就好,但是自己菜啊!
  1. SDK配置成功之后,要自己实现编程的话,要配置下。在之前配置opencv成功的那个项目里继续配置了kinect VS中配置 我的是VS2017版本没得问题
  2. 考虑深度信息,在搜索栏里输入kinect获取深度信息,资料很多,代码也层出不穷。但是很多的都是直接获深度信息图,关于深度数据后面再讨论,这个说几个问题。 A. 有的代码粘过来会出现“无法打开Nuiapi.h文件”,这是因为你配置的版本是kinect v2,而那个无法打开的文件是v1系列里面的头文件,v2不包含也不是配置的问题了,应该就是不支持,建议换代码 获取深度图代码代码测试可以直接出来深度图,那些黑的地方是无法检测到的位置,噪声还是很明显的。(v1相比于v2更多是调用NUI的方法)

C. 微软上关于kinect v2 的官方文档 官网Kinect v2文档 关于代码中的一些函数接口,在我们打开的SDK Browser v2.0也可以直接get到

D. Kinect Sensor类(属性的功能了解下),代码里主要就是这类在用

E. 关于HRESULE 百科上的解释:函数返回值。32位,其最高位(bit)如果是0表示成功,1表示错误。具体参见 MSDN(微软开发者网络) 之”Structure of COM Error Codes”说明。我们在程序中如果需要判断返回值,则可以使用比较运算符号;switch开关语句;也可以使用VC提供的宏: HRESULT hr = 调用组件函数;

F. 有的代码里有ConvertMat函数,实现转换depth图像到cv::Mat,这是因为

基本都是关于代码,看文档知道有哪些接口怎么用就行

  1. 之前怎么搜索都是直接深度图depth map显示,但我实际上想要获取到深度数据,也就是物体距离传感器的深度值Z,在搜索时选择kinect获取三维坐标

参照代码,直接运行,可以出来深度图,在深度图上点击就可以出现该位置的三维坐标信息 代码链接

方括号里面是像素坐标x,y,最后一个就是需要的深度Z值,单位是毫米。大小为0的地方,是该位置处侦测不到像素点的深度,同时三维坐标文本信息保存在相应项目文件夹下。要转化为世界坐标系网上也有很多教程,不过考虑到之后要实现的任务,后面可能会考虑用Unity+Kinect获取到场景中的每个像素的深度值,再考虑shader实虚实遮挡的可能性。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/145957.html原文链接:https://javaforall.cn

本文参与?腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体同步曝光计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com