kinectV2.0深度图像与彩色图像的坐标映射


二代深度图:512*424,彩色图:1920*1080。项目就是实现对于深度图上的一个像素,找到彩色图上的一个像素与之对应,在一个窗口中显示,而且通过鼠标获得视频中像素点的坐标以及对应的深度值。
资源截图
代码片段和文件信息
/*****    Measurement of height by kinect            ******/
/*****    VisualStudio 2015 (开发工具)
OpenCV3.4.0 (显示界面库 vc11库)
KinectSDK-v2.0-PublicPreview1409-Setup (Kinect SDK驱动版本)
Windows 10(操作系统)                   ******/
/*****    hhn                                   ******/
/*****    2018-6-25                               ******/

//#include  
#include “opencv2/opencv.hpp“  
// Kinect for Windows SDK Header  
#include   
#include 
#include   
#define Y 160  
using namespace cv;
using namespace std;
int i = 0;
vector src;
// Safe release for interfaces  
template
inline void SafeRelease(Interface *& pInterfaceToRelease)
{
if (pInterfaceToRelease != NULL)
{
pInterfaceToRelease->Release();
pInterfaceToRelease = NULL;
}
}
//点击两下获取部分三维坐标  
Point p;
ofstream fout(“01.txt“); ////以输出方式打开文件    如果想以输入/输出方式来打开,就用fstream来定义
void onMouse(int event int x int y int flags void *param)
{
Mat *img = reinterpret_cast(param);
if (event == CV_EVENT_LBUTTONDOWN)//左键按下,读取初始坐标,并在图像上该点处划圆    
{
i++;//统计点击的次数  
p.x = x;
p.y = y;
src.push_back(p);
cout << i << endl;
cout << p << static_cast(img->at(cv::Point(x y))) << endl;
//cout << image.at << endl;  
//cout << p << static_cast(img->at(cv::Point(x y))) << endl;  
fout << p.x << “ “ << p.y << “ “ << static_cast(img->at(cv::Point(x y))) << endl; //向文件写入数据
}
}

//定义Kinect方法类  
class Kinect
{
public:
static const int        cDepthWidth = 512;   //深度图的大小  
static const int        cDepthHeight = 424;

static const int        cColorWidth = 1920;   //彩色图的大小  
static const int        cColorHeight = 1080;
Mat showImageDepth;
Mat image_roi;
Mat Depth;
HRESULT                 InitKinect();//初始化Kinect  
void                    UpdateDepth();//更新深度数据  
void                    UpdateColor();//更新深度数据  
void                    ProcessDepth(const UINT16* pBuffer int nWidth int nHeight USHORT nMinDepth USHORT nMaxDepth);   //处理得到的深度图数据  
void                    ProcessColor(RGBQUAD* pBuffer int nWidth int nHeight);   //处理得到的彩色图数据  

Kinect();                                     //构造函数  
~Kinect();                                     //析构函数  

private:

IKinectSensor*          m_pKinectSensor;// Current Kinect  
IDepthframeReader*      m_pDepthframeReader;// Depth reader    在需要的时候可以再添加IColorframeReader进行color reader  
RGBQUAD*                m_pDepthRGBX;
IColorframeReader*      m_pColorframeReader;// Color reader  
RGBQUAD*                m_pColorRGBX;
};

int main()
{
Kinect kinect;
Mat showImageColor;
kinect.InitKinect();
while (1)
{
kinect.UpdateColor();                          //程序的中心内容,获取数据并显示  
kinect.UpdateDepth();
if (waitKey(1) >= 0)//按下任意键退出  
{
break;
}
}
return 0;
}

Kinect::Kinect()
{
m_pKinectSensor = NULL;

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    ..A..H.     33792  2018-06-26 22:21  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度.vs深度图和彩色图坐标较准鼠标点击获得坐标深度v14.suo

     文件     221184  2018-06-25 22:02  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debug深度图和彩色图坐标较准鼠标点击获得坐标深度.exe

     文件    1283796  2018-06-25 22:02  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debug深度图和彩色图坐标较准鼠标点击获得坐标深度.ilk

     文件    3452928  2018-06-25 22:02  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debug深度图和彩色图坐标较准鼠标点击获得坐标深度.pdb

     文件         14  2018-06-26 22:00  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度1.txt

     文件      11679  2018-06-25 19:25  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度main.cpp

     文件     948220  2018-06-25 22:02  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debugmain.obj

     文件    1641472  2018-06-25 22:02  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debugvc140.idb

     文件    2551808  2018-06-25 22:02  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debugvc140.pdb

     文件        674  2018-06-25 22:02  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debug深度图和彩色图坐.7450BEC0.tlogCL.command.1.tlog

     文件      54464  2018-06-25 22:02  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debug深度图和彩色图坐.7450BEC0.tlogCL.read.1.tlog

     文件        604  2018-06-25 22:02  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debug深度图和彩色图坐.7450BEC0.tlogCL.write.1.tlog

     文件       1406  2018-06-25 22:02  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debug深度图和彩色图坐.7450BEC0.tloglink.command.1.tlog

     文件       3382  2018-06-25 22:02  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debug深度图和彩色图坐.7450BEC0.tloglink.read.1.tlog

     文件        590  2018-06-25 22:02  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debug深度图和彩色图坐.7450BEC0.tloglink.write.1.tlog

     文件        241  2018-06-25 22:02  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debug深度图和彩色图坐.7450BEC0.tlog深度图和彩色图坐标较准鼠标点击获得坐标深度.lastbuildstate

     文件       2203  2018-06-25 14:38  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debug深度图和彩色图坐标较准鼠标点击获得坐标深度.Build.CppClean.log

     文件        974  2018-06-25 22:02  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度x64Debug深度图和彩色图坐标较准鼠标点击获得坐标深度.log

     文件       7433  2018-06-25 13:47  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度.vcxproj

     文件        945  2018-06-25 13:47  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度.vcxproj.filters

     文件       1471  2018-06-25 13:10  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度.sln

     文件   38682624  2018-06-26 22:21  完整项目可以运行下载即可深度图和彩色图坐标较准鼠标点击获得坐标深度深度图和彩色图坐标较准鼠标点击获得坐标深度.VC.db

    ..A..H.     30720  2018-06-26 22:25  完整项目可以运行下载即可深度图映射到彩色图.vs获得原始数据彩色深度红外数据v14.suo

     文件     202752  2018-06-26 22:25  完整项目可以运行下载即可深度图映射到彩色图x64Debug获得原始数据彩色深度红外数据.exe

     文件    1053940  2018-06-26 22:25  完整项目可以运行下载即可深度图映射到彩色图x64Debug获得原始数据彩色深度红外数据.ilk

     文件    3305472  2018-06-26 22:25  完整项目可以运行下载即可深度图映射到彩色图x64Debug获得原始数据彩色深度红外数据.pdb

     文件          0  2018-06-26 22:25  完整项目可以运行下载即可深度图映射到彩色图获得原始数据彩色深度红外数据1.txt

     文件       5948  2018-06-26 22:25  完整项目可以运行下载即可深度图映射到彩色图获得原始数据彩色深度红外数据main.cpp

     文件     869253  2018-06-26 22:25  完整项目可以运行下载即可深度图映射到彩色图获得原始数据彩色深度红外数据x64Debugmain.obj

     文件    1641472  2018-06-26 22:25  完整项目可以运行下载即可深度图映射到彩色图获得原始数据彩色深度红外数据x64Debugvc140.idb

............此处省略42个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)