ubuntu下用qt读取kinetic数据
实验说明
COpenNI这个类主要是初始化kinect 设备,并获取深度图像和颜色图像,参加上一篇博客的初始化过程步骤,如果遇到错误,则有相应的错误处理过程。CKinectReader 类是将COpenNI这个类读取到的结果显示在Qt 的界面上的。因此一个类是负责与硬件 Kinect 打交道,一个类是负责与人(界面显示)打交道的。具体的过程见上篇**的分析和后面的代码。
这里发现一个小问题,与kinect 有关的工程如果改变了代码,则在每次编译前最好 clean一下,因为有可能是与硬件设备相关,没有 clean的工程和clean 后的工程效果有时会不同。
C/C++知识点总结:
在构造函数中可以使用冒号给类中的数据成员赋值,这样的好处就是可以给常量和引用变量赋值初始化赋值的效果。
类的私有成员只能是类内部的函数调用,连类的对象都不能去调用私有成员变量。
在类的内部使用qDebug(), cout 等函数输出调试时是不行的。
隐式数据类型转换,如果是同种类型的数据进行四则运算,则得出的结果也是那种类型,如果其中有常数类型的数据常数参与,则得出的结果会自动转换成跟常数类型相同的类型。
如果一个类以单独一个cpp文件出现,在使用到该类的时候,直接 include 该cpp文件.
实验结果
在程序中设置了镜像和视觉校正,且将 kinect 感应不到深度信息的地方全部显示为不透明
的黑色,因此你在图中看到的黑色部分就是 kinect 的深度盲区。
效果如下: |