OpenCV中Kinect的使用(1)】的更多相关文章

接OpenCV中Kinect的使用(2),下面内容主要讲述使用OpenNI 控制Kinect 的马达,实现摄像头的上下摆动. 下面是透过OpenNI比较低阶的USB控制介面(XnUSB.h),来做到马达的控制的代码:(来自这里) 使用时应注意一点:在使用该代码控制马达时,使用前应确保摄像头是关闭的:在每一次准备调整其角度时,都要先关闭摄像头. 原因不明. // Forked from: https://groups.google.com/d/msg/openni-dev/T_CeVW_d8ig/…
接OpenCV中Kinect的使用(1),主要讲述OpenCV中关于Kinect接口(类 VideoCapture )的一些使用介绍. 类 VideoCapture 支持Kinect传感器.使用 VideoCapture 里的接口,可以从Kinect获取深度图,RGB图像和其他格式的输出,主要包括: 1)来自深度传感器的数据: OPENNI_DEPTH_MAP - 以毫米为单位的深度值 (CV_16UC1) OPENNI_POINT_CLOUD_MAP - 以米为单位的XYZ点云 (CV_32F…
图像处理中一般为了更好的获取外部信息都会使用到Kinect,其优势在于除了传统的RGB摄像头之外,还拥有一个获取深度信息的3D深度感应器,因此可以获得外界物体的3维信息实现物体的跟踪.手势识别等各项功能.更详细的介绍可参考:身體就是控制器,微軟Kinect是怎麼做到的? 下面介绍OpenCV中Kinect的一些简单的使用方法. Kinect驱动的安装 这里选择PrimeSense公司的OpenNI系列(开源+多平台64+32),主要由三部分组成(从底层到高层):PrimeSenser驱动(底层驱…
opencv中对图像的处理是最基本的操作,一般的图像类型为IplImage类型,但是当我们对图像进行处理的时候,多数都是对像素矩阵进行处理,所以这三个类型之间的转换会对我们的工作带来便利. Mat类型较CvMat和IplImage有更强的矩阵运算能力,支持常见的矩阵运算(参照Matlab中的各种矩阵运算),所以将IplImage类型和CvMat类型转换为Mat类型更易于数据处理. Mat类型可用于直接存储图像信息,通过函数imread.imwrite.imshow等实现(与Matlab中的函数相…
说明:本文所有算法的涉及到的优化均指在PC上进行的,对于其他构架是否合适未知,请自行试验. Box Filter,最经典的一种领域操作,在无数的场合中都有着广泛的应用,作为一个很基础的函数,其性能的好坏也直接影响着其他相关函数的性能,最典型莫如现在很好的EPF滤波器:GuideFilter.因此其优化的档次和程度是非常重要的,网络上有很多相关的代码和博客对该算法进行讲解和优化,提出了不少O(1)算法,但所谓的0(1)算法也有优劣之分,0(1)只是表示执行时间和某个参数无关,但本身的耗时还是有区别…
最近在将Karlsruhe Institute of Technology的Andreas Geiger发表在ACCV2010上的Efficent Large-Scale Stereo Matching代码仿真.Andreas提供的源码中没有使用opencv,导致我一时无法适应如何显示处理的中间结果.将对应的库加载后,仿照采集相机图像数据的方式,从内存中读取对应图像到IplImage类型指针指定的内存空间,方便代码的调试和效果观测.其中用到的部分资料如下. *******************…
opencv中的SIFT,SURF,ORB,FAST 特征描叙算子比较 参考: http://wenku.baidu.com/link?url=1aDYAJBCrrK-uk2w3sSNai7h52x_eWeRu9p9GhZd49WJ1bEOB7VluQdBdRKeehAO2Q3B7RatTXDruq-M9cR-W2yqATerDlIU1T3whYoyQfi http://www.cvchina.info/2011/07/04/whats-orb/ http://www.bubuko.com/in…
/* 头文件:OurGaussmix2.h */ #include "opencv2/core/core.hpp" #include <list> #include"cv.h" using namespace cv;//InputArray 等的定义在cv里面 namespace ourGaussmix { class BackgroundSubtractor: public cv::Algorithm { public: virtual ~Backgr…
opencv中的.at方法是用来获取图像像素值得函数: interpolation:差值 histogram:直方图…
CUDA基本使用方法 在介绍OpenCV中GPU模块使用之前,先回顾下CUDA的一般使用方法,其基本步骤如下: 1.主机代码执行:2.传输数据到GPU:3.确定grid,block大小: 4.调用内核函数,GPU运行程序:5.传输结果到CPU:6.继续主机代码执行. 下图是两个向量相加的简单示例程序和处理流图. 注意的问题:cu,cpp文件的组织 内核函数和其wrapper函数置于cu文件中. 在cpp文件声明wrapper函数,并调用wrapper函数. wrapper函数的声明定义需加ext…