有誰知道什麼是使用OpenCV和C++提取Kinect的灰度級深度圖像的最簡單方法?這個領域的任何源代碼?使用opencv提取Kinect的深度圖像
0
A
回答
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
是常量,所以你需要複製它,以操縱它
0
的documentation有一切你需要。無法詳細說明這一點。
0
你需要做兩件事情(除了閱讀方面,深度生成和初始化的Kinect):
- 類型CV_16U一個創造墊。 context.WaitOneUpdateAll(depth_map);灣Mdepth_original = Mat(h_depth,w_depth,CV_16U,(void *)depth_map.GetData())c。複製 Mat,因爲它會在下次閱讀時被銷燬: Mdepth_original.copyTo(depth);
- 將深度映射到灰色或顏色。顏色似乎是一個好主意(256^3級),但人眼對亮度變化更敏感。即使有256個級別,您也可以使用[直方圖均衡] [1]技術合理良好地映射10,000個Kinect級別。一個簡單的方法,雖然是鬆散的精度和只是做我(X,Y)= 255.0 * Z(X,Y)/ z_range
這裏是如何直方圖均衡化是openNI2實現: https://github.com/OpenNI/OpenNI2/blob/master/Samples/Common/OniSampleUtilities.h
相關問題
- 1. Kinect深度圖像
- 2. 如何使用openCV C++獲取kinect視頻圖像和深度圖像?
- 3. Kinect和Opencv,深度圖像,如何使用它
- 4. kinect深度圖像處理
- 5. 如何在OpenCV中對齊Kinect的RGB和深度圖像?
- 6. Kinect,使用深度圖像獲取Z值
- 7. 從Kinect 2獲取度量深度圖
- 8. Matlab Kinect深度成像
- 9. Kinect深度和圖像幀對齊
- 10. Kinect深度圖像僅部分可見
- 11. 在Matlab中保存Kinect深度圖像?
- 12. Kinect SDK深度數據(C++)到OpenCV?
- 13. 從兩個Kinect深度圖提取投影單應圖
- 14. 從單個圖像提取深度圖
- 15. 三維映射深度到RGB(Kinect OpenNI深度圖到OpenCV RGB凸輪)
- 16. 轉換Kinect的深度圖像EmguCV圖像誤差
- 17. 如何將kinect的深度圖像與彩色圖像對齊
- 18. 來自Kinect的深度圖像:索引圖像?
- 19. 指尖檢測從深度圖像使用kinect(c#和wpf)
- 20. 使用Parallel處理Kinect深度圖像閃爍。For
- 21. RealSense的OpenCV深度圖像太暗
- 22. 從紅外攝像機視圖獲取深度(z)Kinect V2
- 23. Kinect在MATLAB中將彩色圖像映射到深度圖像
- 24. opencv深度圖精度
- 25. opencv realsense 16位深度圖像
- 26. 可視化深度圖像OpenCV
- 27. 使用Kinect 1.0 SDK對RGB圖像進行深度圖像故障修正
- 28. 使用OpenCV的2D圖像中的深度錯誤Python
- 29. 有人用kinect-v2中的openNI獲得了深度圖像?
- 30. 使用opencv編寫深度圖像的視頻