//最远距离(mm)const int MAX_DISTANCE = 3500;//最近距离(mm)const int MIN_DISTANCE = 300;int main(){//彩色图像Mat image_rgb;//深度图像Mat image_depth;//创建一个MATimage_rgb.create(480,640,CV_8UC3);image_depth.create(240,320,CV_8UC1);//一个KINECT实例指针INuiSensor* m_pNuiSensor = NULL;if (m_pNuiSensor != NULL){return 0;}//记录当前连接KINECT的数量(为多连接做准备)int iSensorCount;//获得当前KINECT的数量HRESULT hr = NuiGetSensorCount(&iSensorCount);//cout << iSensorCount << endl;//按照序列初始化KINETC实例,这里就连接了一个KINECT,所以没有用到循环hr = NuiCreateSensorByIndex(iSensorCount - 1, &m_pNuiSensor);//初始化,让其可以接收彩色和深度数据流hr = m_pNuiSensor->NuiInitialize(NUI_INITIALIZE_FLAG_USES_COLOR | NUI_INITIALIZE_FLAG_USES_DEPTH);//判断是否出错if (FAILED(hr)){cout<<"NuiInitialize failed"<NuiImageStreamOpen(NUI_IMAGE_TYPE_COLOR, NUI_IMAGE_RESOLUTION_640x480, 0,2,nextColorFrameEvent,&colorStreamHandle);if( FAILED( hr ) )//判断是否提取正确{cout<<"Could not open color image stream video"<NuiShutdown();return hr;}//实例打开数据流,这里NUI_IMAGE_TYPE_DEPTH表示深度图
KINECT SDK C++彩色与深度图像获取(结合OpenCV2.4.4)
最新推荐文章于 2023-02-07 19:59:13 发布