91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 7KB
    文件類型: .cpp
    金幣: 1
    下載: 0 次
    發布日期: 2021-06-06
  • 語言: C/C++
  • 標簽: kinect2??opengl??點云??

資源簡介

kinect+opengl 生成并顯示點云 可查看博客http://blog.csdn.net/jiaojialulu/article/details/53089353

資源截圖

代碼片段和文件信息

#include?
#include?“kinect.h“
#include?
#include???
#include???
#include?
#include?
#include?
#include?
#include?“PracticalSocket.h“
#include?
#define?GL_DISPLAY
//#define?SAVE_IMG
using?namespace?cv;
using?namespace?std;

#pragma?comment(lib?“opengl32.lib“)
double?yaw?pitch?lastX?lastY;?int?ml;
static?void?on_mouse_button(GLFWwindow?*?win?int?button?int?action?int?mods)
{
if?(button?==?GLFW_MOUSE_BUTTON_LEFT)?ml?=?action?==?GLFW_PRESS;
}
static?double?clamp(double?val?double?lo?double?hi)?{?return?val??hi???hi?:?val;?}
static?void?on_cursor_pos(GLFWwindow?*?win?double?x?double?y)
{
if?(ml)
{
yaw?=?clamp(yaw?-?(x?-?lastX)?-120?120);
pitch?=?clamp(pitch?+?(y?-?lastY)?-80?80);
}
lastX?=?x;
lastY?=?y;
}


//?安全釋放指針
template
inline?void?SafeRelease(Interface?*&?pInterfaceToRelease)
{
if?(pInterfaceToRelease?!=?NULL)
{
pInterfaceToRelease->Release();
pInterfaceToRelease?=?NULL;
}
}

int?main()
{
#ifdef?GL_DISPLAY
///?[gl?display]
//?Open?a?GLFW?window?to?display?our?output
int?a?=?glfwInit();
GLFWwindow?*?win?=?glfwCreateWindow(1024?768?“gl_win“?nullptr?nullptr);
glfwSetCursorPosCallback(win?on_cursor_pos);
glfwSetMouseButtonCallback(win?on_mouse_button);
glfwMakeContextCurrent(win);
#endif
#pragma?region?初始化設備
//?獲取Kinect設備
IKinectSensor*?m_pKinectSensor;
ICoordinateMapper*??????m_pCoordinateMapper;
CameraIntrinsics*?m_pCameraIntrinsics?=?new?CameraIntrinsics();
HRESULT?hr;
hr?=?GetDefaultKinectSensor(&m_pKinectSensor);
if?(FAILED(hr))
{
return?hr;
}

IMultiSourceframeReader*?m_pMultiframeReader;
IBodyframeSource*?m_pBodyframeSource;
IBodyframeReader*?m_pBodyframeReader;
if?(m_pKinectSensor)
{
hr?=?m_pKinectSensor->Open();
//Sleep(2000);
if?(SUCCEEDED(hr))
{
m_pKinectSensor->get_BodyframeSource(&m_pBodyframeSource);
//?獲取多數據源到讀取器??
hr?=?m_pKinectSensor->OpenMultiSourceframeReader(
frameSourceTypes::frameSourceTypes_Color?|
frameSourceTypes::frameSourceTypes_Infrared?|
frameSourceTypes::frameSourceTypes_Depth
&m_pMultiframeReader);
}
}
if?(SUCCEEDED(hr))
{
hr?=?m_pKinectSensor->get_CoordinateMapper(&m_pCoordinateMapper);
}
if?(!m_pKinectSensor?||?FAILED(hr))
{
return?E_FAIL;
}
//?三個數據幀及引用
IDepthframeReference*?m_pDepthframeReference?=?NULL;
IColorframeReference*?m_pColorframeReference?=?NULL;
IDepthframe*?m_pDepthframe?=?NULL;
IColorframe*?m_pColorframe?=?NULL;
//?四個個圖片格式
Mat?i_rgb(1080?1920?CV_8UC4);??????//注意:這里必須為4通道的圖,Kinect的數據只能以Bgra格式傳出
//Mat?i_depth_raw(424?512?CV_16UC1);


IMultiSourceframe*?m_pMultiframe?=?NULL;

DepthSpacePoint*????????m_pDepthCoordinates?=?NULL;
ColorSpacePoint*????????m_pColorCoordinates?=?NULL;
CameraSpacePoint*????????m_pCameraCoordinates?=?NULL;

評論

共有 條評論