代码是我结合kinect sdk 2.0 里面的例程和其他网友的代码写出来的。
如果你想在你的电脑上实现我的代码,那你的电脑需要满足以下两个条件:
- 硬件设备:kinect v2;
- 编译环境:kinect sdk 2.0 + Opencv3.0 配入编译环境
环境配置: https://blog.csdn.net/m0_38128647/article/details/76030275
代码如下:
#include <iostream>
#include <opencv2\imgproc.hpp>
#include <opencv2\calib3d.hpp>
#include <opencv2\highgui.hpp>
#include <Kinect.h>
using namespace std;
using namespace cv;
// Safe release for interfaces
template<class Interface>
inline void SafeRelease(Interface *& pInterfaceToRelease)
{
if (pInterfaceToRelease != NULL)
{
pInterfaceToRelease->Release();
pInterfaceToRelease = NULL;
}
}
Mat ConvertMat(const UINT16* pBuffer, int nWidth, int nHeight, USHORT nMinDepth, USHORT nMaxDepth)
{
cv::Mat img(nHeight, nWidth, CV_8UC3);
uchar* p_mat = img.data;
const UINT16* pBufferEnd =