有谁知道使用OpenCV和C ++提取Kinect的灰度级深度图像的最简单方法是什么?这个领域的任何源代码?
答案 0 :(得分:1)
如果您使用OpenNI SDK,您只需指向缓冲区:
//on setup:
xn::DepthGenerator depthGenerator;
xn::DepthMetaData depthMD;
cv::Mat depthWrapper;
//on update loop,
//after context.WaitAnyUpdateAll();
depthGenerator.GetMetaData(depthMD);
depthWrapper = cv::Mat(depthMD.YRes(), depthMD.XRes(), CV_16UC1, (void*) depthMD.Data());
请注意depthWrapper
是常量,因此您需要克隆它才能操作它
答案 1 :(得分:0)
documentation拥有您需要的一切。无法详细阐述。
答案 2 :(得分:0)
你需要做两件事(除了阅读关于上下文,深度生成器和Kinect的初始化):
以下是在openNI2中实现直方图均衡的方法: https://github.com/OpenNI/OpenNI2/blob/master/Samples/Common/OniSampleUtilities.h