从kinect获取世界坐标

我们可用从Kinect的官方文件知道,Kinect的视锥是这个样子的。图中A,B和小人的脚是处于同一平面的,那么kincet获取到的

世界坐标中A,B的y轴坐标是相等的?还是如在RGB图中看到的一样,A,B,一上一下,y轴坐标不相等呢?

因此我抓获了Kinect的RGB,depth图像,对其后并转换成世界坐标,通过鼠标的点击来查看A,B的坐标。

最后结论如我所期待的一样:A,B在同一平面,A,B点y轴坐标相等。

这对小车室内定位和运作有重大意义。

获取到的RGB图像

获取到的depth图像

坐标排列(x, y, z)

opencv 2.3后有了获取世界坐标方法,大大减少了工作量

http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/user_guide/ug_highgui.html

capture.retrieve(depthMap,CV_CAP_OPENNI_POINT_CLOUD_MAP);//XYZ in meters (CV_32FC3),以米为单位的XYZ点云 (CV_32FC3)

获取世界坐标数据

cout<<"mouse location:"<<"("<<cvGet2D(Image,y,x).val[0]<<","                			    <<cvGet2D(Image,y,x).val[1]<<","               			    <<cvGet2D(Image,y,x).val[2]<<")"<<endl;

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-10 23:30:59

从kinect获取世界坐标的相关文章

kinect获取深度数据并显示

在上述深度帧获取的基础上,利用unity的Mesh组件,将深度帧显示出来. 工具为Unity5.6.Kinect开发包KinectForWindows_UnityPro_2.0.1410 首先讲一个Mesh的应用 Mesh有多种方式实现,这里只用最简单的,通过设定顶点组成三角形集合的方式,主要工作是设定三个属性: ①  vertices,顶点集合,Vector3类型,一般为所要显示的像素坐标集合,这里为深度帧每个像素的坐标值,其中z为深度值. 注意:Unity中顶点数量不能超过65000个. ②

使用HTML5开发Kinect体感游戏

一.简介 我们要做的是怎样一款游戏? 在前不久成都TGC2016展会上,我们开发了一款<火影忍者手游>的体感游戏,主要模拟手游章节<九尾袭来 >,用户化身四代,与九尾进行对决,吸引了大量玩家参与. 表面上看,这款游戏与其它体感体验无异,实际上,它一直运行于浏览器Chrome下,也就是说,我们只需要掌握前端相应技术,就可以开发基于Kinect的网页体感游戏. 二.实现原理 实现思路是什么? 使用H5开发基于Kinect的体感游戏,其实工作原理很简单,由Kinect采集到玩家及环境数据

利用Kinect将投影变得可直接用手操控

Finally 总算是到了这一天了!假期里算法想不出来,或者被BUG折磨得死去活来的时候,总是YY着什么时候能心情愉快地坐在电脑前写一篇项目总结,今天总算是抽出时间来总结一下这神奇的几个月. 现在回过头来看,上学期退出ACM集训队果然是对的,这次开发学到的东西太多太多,以前在ACM的时候,感觉不会的东西好多啊,真正来自己试着开发个东西,发现不会的东西果然好多.不过要是几个老师知道我上午给新生做完ACM宣讲报告下午就跟教练说退出,他们会是什么心情啊哈哈. 这些是第一次尝试开发,如果ACM是练内功的

KINECT+opencv基于骨骼信息对视频进行动作识别

KINECT+opencv基于骨骼信息对视频进行动作识别 环境:kinect1.7+opencv2.4+vc2015 使用kinect获取并按批处理三维空间内的骨骼信息 基于视频帧差计算各关节运动向量并与本地模板匹配 目录 KINECTopencv基于骨骼信息对视频进行动作识别 目录 写在前面 对当前帧处理并匹配 kinect对帧的处理 与模板的向量余弦计算 根据动态时间规划法匹配 记录并保存模板到本地 使用opencv的FileStorage类生成xml文件 写在前面 自前一篇过去一周了.这次

Kinect 开发 &mdash;&mdash; 手势识别(下)

基本手势追踪 手部追踪在技术上和手势识别不同,但是它和手势识别中用到的一些基本方法是一样的.在开发一个具体的手势控件之前,我们先建立一个可重用的追踪手部运动的类库以方便我们后续开发.这个手部追踪类库包含一个以动态光标显示的可视化反馈机制.手部追踪和手势控件之间的交互高度松耦合. 首先在Visual Studio中创建一个WPF控件类库项目.然后添加四个类: KinectCursorEventArgs.cs,KinectInput.cs,CusrorAdorner.cs和KinectCursorM

基于三个kinect的人体建模

单个kinect的人体重建,在Kinect SDK 1.8中,Kinect Fusion的效果已经很不错了.其缺点显而易见,一是扫描时间长,重建对象也需要长时间保持静态:二是需要人体或者kinect转动以实现全方位扫描,操作起来繁琐.而运用三个kinect来进行人体重建,只需要将三个kinect按照一定方位(比如两两相距120°角度)固定位置,人体即使不动也能实现对人体的全身扫描,相比之下时间花销短. 基于三个kinect的人体重建,首先要对三个kinect相机进行标定,得到相机内外参数.这样每

虚拟现实技术应用和Kinect开发——基于煤层气仿真训练系统

这篇是计算机中系统仿真/虚拟现实类的优质预售推荐<虚拟现实技术应用和Kinect开发--基于煤层气仿真训练系统>. 编辑推荐 本书内容新颖.层次清晰,适合从事相关理论研究及应用的专业人士和高校师生参考使用. 内容简介 本书依托国家科技重大专项项目--煤层气田地面集输信息集成及深度开发技术(2011ZX05039-004-02),借助于虚拟现实技术,开发一套专门应用于煤层气集输系统安全操作的仿真训练系统.本书详细介绍了虚拟现实技术以及煤层气产业的研究现状.煤层气仿真训练系统的应用与需求分析,然后

使用Kinect2作为Oculus游戏应用的输入设备

注: 文章写于2015年8月, 目前VR游戏Demo已经完结, 所以把上一次预研的一些经验分享出来, 希望对大家有所帮助 背景 初接触Oculus时, 从网上下载了一大堆的Demo来体验, 但是, 操作体验大都比较差, 特别是FPS类. 这也让我们意识到, 对于VR游戏, 最大的挑战还不是显示方式的变化, 而是交互方式. 在一个沉浸式的环境中, 最自然的交互就是最完美的方式. 其中基本的需求, 就是可以使用双手跟VR中的虚拟环境进行交互. 这么一来, 首先键鼠或手柄就被排除掉了, 我们只好针对市

仿《雷霆战机》飞行射击手游开发--GameObject

转载请注明:http://www.cnblogs.com/thorqq/p/5646509.html 在上一篇中,我们介绍了各种游戏对象的功能及类的集成关系,现在我们来看看GameObject的源代码 碰撞体 GameObject.h 1 class GameObject : public Sprite 2 { 3 public: 4 GameObject(); 5 6 virtual void setBodySize(const Size& s); 7 virtual void setBody