文件名称:Kinect+OpenNI获取深度图和颜色图
文件大小:1.53MB
文件格式:RAR
更新时间:2015-10-18 17:36:27
Kinect OpenNI 深度图 颜色图
网上有不少使用Qt做界面,OpenNI为库来开发kinect。或许大家的第一个问题就是询问该怎样使用Kinect来获取颜色信息图和深度信息图呢?这一节就是简单来回答这个问题的。 使用OpenNI读取颜色图和深度图的步骤如下(这个是程序的核心部分): 1. 定义一个Context对象,并 调用该对象的Init()方法来进行初始化。 2. 定义一个XnMapOutputMode格式对象,设置好分图像分辨率和帧率。 3. 定义颜色图和深度图的节点对象,并用其Create()方法来创建,参数为Context对象. 4. 设置颜色和深度图的输出模式,调用的方法是SetMapOutputMode();参数为步骤2中定义和设置好了的XnMapOutputMode对象。 6. 如果深度图和颜色图在一张图上显示,则必须对深度图像进行校正,校正的方法是调用深度图的如下方法:.GetAlternativeViewPointCap().SetViewPoint(); 7. 调用context对象的StartGeneratingAll()来开启设备读取数据开关。 8. 调用context对象的更新数据方法,比如WaitAndupdateAll()方法。 9. 定义颜色图和色彩图的ImageMetaData对象,并利用对应的节点对象的方法GetMetaData(),将获取到的数据保存到对应的ImageMetaData对象中。 10. 如果需要将深度图转换成灰度图来显示,则需要自己将深度值转换成0~255的单通道或者多通道数据,然后直接用来显示。