
模式识别项目总结
timebomb
这个作者很懒,什么都没留下…
展开
-
windows 下最底层的模拟键盘
对于大多程序模拟按键使用下面的代码就可以胜任。但是换成游戏就不行了。keybd_event(VK_LWIN, 0, 0 ,0);keybd_event(VK_LWIN, 0, KEYEVENTF_KEYUP,0);键盘的原理是向操作系统的键盘驱动程序发送扫描码,下面的代码就是通原创 2011-07-11 17:50:19 · 5400 阅读 · 2 评论 -
kinect学习笔记四(距离变换 distance tranform 和opencv像素访问方式)
当时自己理解的一点小误区,放到这里防止再犯错。距离变换的基本意思就是计算一个图像中非零像素点到最近的零像素点的距离,也就是到所有零像素点的最短距离。建立距离变换图像可以方便提取骨骼在opencv中有专门的函数cvDistTransform来计算距离变换图像。DistTransform计算输入图像的所有非零元素对其最近零元素的距离void cvDistTransform(原创 2012-04-18 17:51:37 · 22680 阅读 · 7 评论 -
kinect学习笔记三(SDK精确度矫正)
1、在提取深度图像的时候提取到的ID和在骨骼定位中的用户ID是相等的。。。惊喜!!!确切的说应该是这样:深度图像的ID是0、1、2、3、4、5、6、7,其中0是表示背景,而骨骼图像的ID是0、1、2、3、4、5、6,其中0表示的是检测到的一个人,所以两者关系应该是:骨骼ID+1=深度ID原创 2012-01-04 21:39:46 · 8240 阅读 · 0 评论 -
kinect 学习笔记一
颜色深度图像的显示:初始化、绑定流、提取流。1、提取颜色数据:#include #include "Windows.h"#include "MSR_NuiApi.h"#include "cv.h"#include "highgui.h"using namespace std;int main(int argc,char * argv[]){ IplImage *co原创 2011-12-31 20:52:55 · 24087 阅读 · 26 评论 -
kinect 学习笔记二(深度图像的利用--抠取用户躯体)
今天主要把深度数据和骨骼还有视频数据同步起来。算是上一次的三个的组合吧。期间遇到点白痴的问题整治了一下午:带ID的数据的ID是否准确。而且差点把自己的质疑给发到博客上来,竟然是自己代码的错误。伤心伤心。。。直接把代码贴出来吧,也许有人觉得贴代码没水平,嗨,给自己留个小版本说不定以后还用得着,而且自信自己代码写的还算是规范,方便后来人嘛。再有一点,那个getTheContour函数画蛇添原创 2012-01-02 17:19:26 · 12887 阅读 · 7 评论 -
linux与windows字符编码格式的自动调整
这几天频繁在windows和ubuntu下调试代码,字符编码格式不同老是造成很大的困扰,windows下的默认字符编码格式是GBK(gb2312)而在ubuntu下的是utf-8。前天光来回的保存编码格式就费了很大的劲,今天google了下找到了个临时还算是不错的方法。ubuntu下自带一个字符编码格式调整命令:iconvICONV(1) D原创 2011-11-10 20:09:22 · 7653 阅读 · 0 评论 -
kinect使用手册
1、安装KinectSDK-v1.0-beta2-x64.msi,这个是64位机子的。可以视自己的机子情况而定。2、编译sample中的SkeletalViewer项目(我编译的是c++,如果你比较熟悉c#可以编译c#版本的):A:环境配置==在引用文件中添加安装SDK时的安装目录中的inc,在库文件中添加SDK的lib/amd64,然后在链接器->输入->附加依赖项中添加MSRKinec原创 2011-12-20 16:39:30 · 11544 阅读 · 3 评论 -
ubuntu11.10下opencv的各种问题小汇总
1、opencv2.2编译不成功问题:make的时候出现error: 'ptrdiff_t' does not name a type造成编译错误,这个也是我搞来很多次没有成功只好选择系统库中自带的opencv。具体原因是没有加一个命名空间。具体可以见:http://web.archiveorange.com/archive/v/b6fbFdu0fh9uQC9aVdpF,只要在cxcore原创 2011-11-15 16:40:32 · 10315 阅读 · 2 评论 -
椭圆拟合的函数式子以及绘制外接矩形
首先是在二值图像中找轮廓,我的图象中只有一条轮廓,所以使用比较简单。首先要分配存储空间,使用函数cvCreateMemStorage(0)分配一个默认大小的CvMemStorage型空间。然后使用CvSeq * contour = 0;建立一个轮廓的指针。最后使用函数cvFindContours在二值图像中找轮廓。轮廓保存在cvFindContours的参数CvSeq* con转载 2011-11-07 19:36:32 · 7515 阅读 · 1 评论 -
ubuntu11.10+QtSDK+opencv环境配置
发现自己就是一个特别喜欢折腾的家伙,但是折腾中却有自己的快乐几天终于配置好了自己的实验环境首先安装opencv,我是直接从源里来安装的,有很多人是通过编译源代码搞得,唉,自己不想费那个劲apt-cache search opencv 得到关于opencv的包信息然后直接安装上面命令的结果信息。。。好多的再安装Qt,这个挺简单,但是大家注意下载的时候不要选择onlin原创 2011-10-28 17:36:09 · 3235 阅读 · 0 评论 -
动态创建多维数组和释放的注意事项
自己写了一个HMM前向算法,发现了好多的问题,这里把多维数组的创建以及销毁问题进行解释,希望可以帮助到有需要的人还有我自己,日后可能用的到。创建:void mallocCalcSpace(int N, int T){ //创建二维数组alpha[N][T] double** alpha = new double*[N]; for(int i=0; i<N; i原创 2011-11-14 21:20:06 · 4810 阅读 · 1 评论 -
留数定理
留数定理是用来计算解析函数沿着闭曲线的路径积分的一个有力的工具,也可以用来计算实函数的积分。它是柯西积分定理和柯西积分公式的推广。具体可看:http://zh.wikipedia.org/wiki/%E7%95%99%E6%95%B0%E5%AE%9A%E7%90%8原创 2011-08-13 18:33:12 · 2413 阅读 · 0 评论 -
颜色空间变换大全
想写一个paper,用到了部分颜色空间,这里总结下来给大家看看。排版挺麻烦的,记得看完给顶一下子哦,方便更多的人看到.: RGB color space :.咱们的老佛爷=========================================原创 2011-09-09 19:12:27 · 6436 阅读 · 7 评论 -
surf匹配流程。。。
原文来自:http://blog.sina.com.cn/s/blog_53896f580100ifva.html描述的很好,很到位程序流程:加载目标图像:紧贴目标;加载待搜索的图像;提取目标图像的关键点及描述(cvExtractSURF)转载 2011-09-05 18:59:00 · 3882 阅读 · 0 评论 -
基于手势识别的PPT控制
作为一个实用主义者,我一贯倡导的是做出来的东西要有使用价值,要能满足人们的某种需求,那才是有价值的,值得推荐的东西,也许有的人K我,这是错误的,是实用主义价值观,不符合马克思主义精神指导,唉,童鞋,俺就是一平头老百姓,哪有像你那么高的精神状态呀,拜托拜托,不要原创 2011-07-04 22:15:24 · 8459 阅读 · 30 评论 -
OpenCV程序的发布
因为做的东西要给老师看,学习了一下OpenCV程序的发布方法。注意的地方不是很多,自己做一个标记,说不定以后用得着打开项目属性,在“配置属性-->C/C++-->代码生成-->运行时库”中将“多线程(/MT)”修改为“多线程调试(/MTd)”最好都设定为非debug模式,静态使用原创 2011-07-11 18:32:26 · 4416 阅读 · 0 评论 -
kinect学习笔记五(线程并发)
因为想同时处理左右手,想采用线程并发来同时处理,提高处理速度,找了些材料,贴到这里以供以后使用#include #include using namespace std;DWORD WINAPI processRightHand(LPVOID param); //右手处理线程DWORD WINAPI processLeftHand(LPVOID param);//左手处理线程原创 2012-05-11 10:35:38 · 5700 阅读 · 0 评论