资源简介
利用Kinect sdk2.0和opencv,获取深度图和彩色图,并实时显示。
详见博文http://blog.csdn.net/hust_bochu_xuchao/article/details/53665838
代码下载后可直接运行
代码片段和文件信息
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//------------------------------------------------------------------------------
#include “stdafx.h“
#include “ImageRenderer.h“
///
/// Constructor
///
ImageRenderer::ImageRenderer() :
m_hWnd(0)
m_sourceWidth(0)
m_sourceHeight(0)
m_sourceStride(0)
m_pD2DFactory(NULL)
m_pRenderTarget(NULL)
m_pBitmap(0)
{
}
///
/// Destructor
///
ImageRenderer::~ImageRenderer()
{
DiscardResources();
SafeRelease(m_pD2DFactory);
}
///
/// Ensure necessary Direct2d resources are created
///
/// indicates success or failure
HRESULT ImageRenderer::EnsureResources()
{
HRESULT hr = S_OK;
if (NULL == m_pRenderTarget)
{
D2D1_SIZE_U size = D2D1::SizeU(m_sourceWidth m_sourceHeight);
D2D1_RENDER_TARGET_PROPERTIES rtProps = D2D1::RenderTargetProperties();
rtProps.pixelFormat = D2D1::PixelFormat(DXGI_FORMAT_B8G8R8A8_UNORM D2D1_ALPHA_MODE_IGNORE);
rtProps.usage = D2D1_RENDER_TARGET_USAGE_GDI_COMPATIBLE;
// Create a hWnd render target in order to render to the window set in initialize
hr = m_pD2DFactory->CreateHwndRenderTarget(
rtProps
D2D1::HwndRenderTargetProperties(m_hWnd size)
&m_pRenderTarget
);
if (FAILED(hr))
{
return hr;
}
// Create a bitmap that we can copy image data into and then render to the target
hr = m_pRenderTarget->CreateBitmap(
size
D2D1::BitmapProperties(D2D1::PixelFormat(DXGI_FORMAT_B8G8R8A8_UNORM D2D1_ALPHA_MODE_IGNORE))
&m_pBitmap
);
if (FAILED(hr))
{
SafeRelease(m_pRenderTarget);
return hr;
}
}
return hr;
}
///
/// Dispose of Direct2d resources
///
void ImageRenderer::DiscardResources()
{
SafeRelease(m_pRenderTarget);
SafeRelease(m_pBitmap);
}
///
/// Set the window to draw to as well as the video format
/// Implied bits per pixel is 32
///
/// window to draw to
/// already created D2D factory object
/// width (in pixels) of image data to be drawn
/// height (in pixels) of image data to be drawn
/// length (in bytes) of a single scanline
/// indicates success or failure
HRESULT ImageRenderer::Initialize(HWND hWnd ID2D1Factory* pD2DFactory int sourceWidth int sourceHeight int sourceStride)
{
if (NULL == pD2
相关资源
- Kinect2API文档
- KinectFusion 和 ElasticFusion 三维重建方法
- kinect v2 API详细说明
- SensorKinect093-Bin-Win64-v5.1.2.1
- Kinect V2 SDK API说明文档
- 获取kinect的数据并在Qt中显示的类的设
- Unity结合Kinect2体感开发:KinectForWind
- kinect2_SDK_深度图到RGB的映射
- kinect控制ppt播放完整源码
- 通过Kinect v2.0+ VS2012+openCV2.4.9将彩色帧
- Beginning Kinect Programming with Microsoft Ki
- kinect V2 学习资料
- Kinect+OpenNI获取深度图和颜色图(最新
- Kinect体感机器人中文报告
- Kinect体感机器人上位机源码
- kinectV2 抠图 自动拍照
- kinect v2.0 开发入门
- kinect体感书中英文对照
- 基于Kinect体感摄像头的手势识别算法
- Kinect+OpenNI学习笔记
- SensorKinect093-Bin-Win64-v5.1.2.1.msi
- simpleopenni 0.27 WIN3264
- KinectV2手指检测识别
- Kinect2的各种入门源码例程
- kinect手势追踪
- kinect同时获取深度与彩色图片并保存
- Kinect2.0+Opencv人体骨骼捕捉及绘制Vis
- kinect 2.0 for Unity开发包
- Kinect应用开发实战(配套源码)
- [高清文字版]交互动画设计:Zbrush+A
评论
共有 条评论