VC++/C++
文章平均质量分 89
fesito
这个作者很懒,什么都没留下…
展开
-
指尖检测测试(二)
接着上一篇《指尖检测(一)》讲,当用曲率的方式检测出候选指尖点后,我们需要踢出非指尖点,主要就是手指间的凹槽。从原理上分析,如果候选点集Pi(i=0,1,2....)按照一定方式排列,比如都按顺时针或者逆时针存储在一个数组中,那么向量(Pi-1,Pi)和(Pi,Pi+1)(说明,这里向量表示不是这样的,因为这上面编辑公式不太方便就用这种方式表示了,大家理解就行) 的叉乘正负性不同也就是方向不同,通原创 2012-10-12 10:54:22 · 4901 阅读 · 3 评论 -
MFC中工作线程的创建
最近做的东西涉及到多线程编程方法,所以找了点资料本文主要描述基于MFC的多线程技术中的工作者线程,包括线程的建立、传递参数、互斥对象保护以及线程的销毁。还将探讨线程函数作为类的成员函数的情况。 首先需要说明的是工作者线程和界面线程的区别,界面线程(UI线程)指的是包含有消息队列的线程,可以使用消息机制相互通信;工作者线程则没有消息队列,能够发送消息,但是不能够处理Windows消原创 2012-09-23 17:09:32 · 4931 阅读 · 0 评论 -
C++中关于assign 0 to _debugger_hook_dummy so that the function is not folded in retail的错误
assign 0 to _debugger_hook_dummy so that the function is not folded in retail今天在运行程序时出现这个错误,我找了好久才发现这个问题所在,我把自己的一个关于字符串转换的函数注销后运行就正常了 在编译MFC时有时候出现下面的错误。void __cdecl _CRT_DEBUGGER_HOOK(int _R转载 2012-09-24 21:19:50 · 6871 阅读 · 0 评论 -
简单的Kinect前景抠图
这个是用Kinect做三维扫描时的第一步,就是将感兴趣的前景部分取下来。大家都知道,Kinect的最大特点就是可以采集到深度数据,利用深度数据就可以将前景和背景区分开来。 长话短说,先上效果图吧。 再上源代码: /**************************************** Description:This program can rebuil原创 2012-11-07 21:23:47 · 6168 阅读 · 6 评论 -
各大公司数据结构与算法面试题解答(二)
6寻找迷宫的一条出路,1代表障碍,0代表通。算法描述:这里可以使用几种方法,我知道的有使用《数据结构》上“穷举求解”的方法,还有就是使用遗传算法寻找最优路径。这里我先简单描述下“穷举求解”,然后再做遗传算法的方式。1 问题中要涉及走过路径的回溯,因为栈是先进后出,所以利于回溯,选择栈来存储走过路径2 每一步有四个方向可以走,每到一步依次判断每一个方向,只要判断到某个方向可走就选择这个方向前进。3原创 2012-11-25 10:58:25 · 3476 阅读 · 0 评论 -
Visual studio2010创建MFC的工程中资源视图出现空白问题原因与解决
这几天正在赶几个项目,正准备着手做,没想到开发神器Visual studio2010出现问题了,具体问题是这样的:打开Visual studio2010创建MFC工程时会出现几个错误提示对话框然后接着还会跳出好几个错误提示对话框,大概意思就是各种包没有找到,然后创建MFC工程后资源视图为空,但是用Visual打开以前创建的工程,资源视图正常,而且当关闭Visual后直接点击创建工程原创 2013-01-05 22:03:15 · 10494 阅读 · 0 评论 -
编写动态链接库的程序基本知识
自从微软推出16位的Windows操作系统起,此后每种版本的Windows操作系统都非常依赖于动态链接库(DLL)中的函数和数据,实际上Windows操作系统中几乎所有的内容都由DLL以一种或另外一种形式代表着,例如显示的字体和图标存储在GDI DLL中、显示Windows桌面和处理用户的输入所需要的代码被存储在一个User DLL中、Windows编程所需要的大量的API函数也被包含在Kerne转载 2013-02-19 21:32:05 · 1049 阅读 · 0 评论 -
使用vs2010编译CCV1.5
最近几天一直在纠结一个问题,就是使用vs2010编译CCV1.5的vs2008版本的工程文件失败。在网上找了很久,没有直接看到有这样的帖子,估计这个比较基础,那我就简单说一下我在此过程中遇到的问题,希望能帮助后面做这个工作的朋友少走弯路。 首先使用SVN在http://nuicode.svnrepository.com/svn/ccv15/上下载CCV1.5的源码,如果你的计算机上原创 2013-02-21 21:33:44 · 6055 阅读 · 17 评论 -
指尖检测测试(一)
这几天做了一个指尖检测的测试程序,效果一般,主要是受环境影响比较大。目前我做的将手从复杂环境中提取出来的测试程序效果不是很好,受光影响较大,虽然我已经把RGB颜色空间转换了,将光强和色调隔离开来,但是还是有比较大的影响,后面会优化。 首先用肤色检测将手提取出来,当然更简单的方法就是直接用阈值二值化,在某些简单背景下还行。下面是用肤色检测提取出的手掌图。 我用cvErod原创 2012-10-10 20:40:48 · 6242 阅读 · 1 评论 -
凸包算法
二维凸包问题描述:二维凸包的寻找是计算几何学的经典问题之一。给定平面上的一些点,找出一个最小点集连成一个凸多边形,使得这若干个点皆在此多边形内或此多边形上,这个凸多边形就是给定点的二维凸包。凸包的鼻祖算法——“三硬币”算法(The Three-Coins Algorithm)。三硬币算法由斯卡兰斯奇(Sklansky)于 1972 年提出,我们可以用三个硬币来模拟这个算法。转载 2012-10-11 22:04:52 · 10266 阅读 · 1 评论 -
VS2010中.sdf和ipch臃肿文件清理方法
使用VS2010建立C++解决方案时,会生成SolutionName.sdf和一个叫做ipch的文件夹,这两个文件再加上*.pch等文件使得工程变得非常的庞大,一个简单的程序都会占用几十M的硬盘容量,可惜毕竟硬盘还没有廉价到免费的地步。 那么,该怎么解决呢?其实可以关闭它。方法: Tools->Options->Text Editor->C/C++->Advanced->Disable原创 2012-05-27 14:32:18 · 2527 阅读 · 0 评论 -
vs2010中配置OpenGL
下面将对VS2010中配置OpenGL进行简单介绍。学习OpenGL前的准备工作第一步,选择一个编译环境现在Windows系统的主流编译环境有Visual Studio,Broland C++ Builder,Dev-C++等,它们都是支持OpenGL的。我选择Visual Studio 2010和VC6++作为学习OpenGL的环境。第二步,安装GLUT工具包GLUT原创 2012-05-30 22:23:46 · 38992 阅读 · 7 评论 -
通过Kinect的深度图像数据计算三维点云
本文来自http://www.cnblogs.com/JohnShao/archive/2011/05/22/2053496.html在可以透過 OpenNI 讀取到 Kinect 的深度、色彩資訊之後,其實就可以試著用這些資訊,來重建 3D 的環境做顯示了~不過實際上,在前面的範例中所讀到的深度資訊,都算是原始資料,而且座標軸也都是感應器二維影像的座標系統,如果要重建 3D 場景转载 2012-06-05 15:33:21 · 22290 阅读 · 6 评论 -
关于C++中的顺序容器
本文参考了http://www.cnblogs.com/yongbufangqi1988/archive/2010/07/29/1788204.html1、顺序容器包括:vector,list,deque2、接受容器大小做形参的构造函数只适用于顺序容器,而关联容器不支持这种初始化。3、作为容器元素类型必须满足以下两个约束: 一、元素类型必须支持赋值运算。 二、元素类型的对象必须原创 2012-06-05 21:28:02 · 1469 阅读 · 0 评论 -
关于三维扫描及重建工作
最近一直在做三维扫描及重建的工作,初次涉及,感觉有点麻烦。每次写算法的时候总会产生头痛的感觉,也许是还不适应做算法吧,当然有了经历就好,以后再做到这样的工作应该就会比较上手了。 现在在开发的过程中,我先做一个中途的总结,不然时间一长很多又忘了,到后来东西多了也不想总结了。呵呵,废话就不说了,进入正题吧。 一、三维重建(3D Reconstruction)概述 三维重原创 2012-08-10 11:25:16 · 5072 阅读 · 3 评论 -
SendInput和mouse_event模拟鼠标点击事件问题解决
最近在做有关kinect控制鼠标事件时遇到了一个小问题,这里写点记录。首先我简单介绍一下关于SendInput和mouse_event函数模拟鼠标事件的方法。这两个函数是C++里使用的,先给个SendInput函数的原型,参照MSDNUINT SendInput( UINT nInputs, // count of input events LPINPUT pInp原创 2012-09-07 09:08:29 · 22489 阅读 · 5 评论 -
对图行轮廓的查找、集合
我在做项目时需要对一个图形的轮廓点进行整合,这是参考资料,分享给大家!虽然Canny之类的边缘检测算法可以根据像素间的差异检测出轮廓边界的像素,但是它并没有将轮廓作为一个整体。下一步是要将这些边缘像素组装成轮廓。轮廓是构成任何一个形状的边界或外形线。直方图对比和模板匹配根据色彩及色彩的分布来进行匹配,以下包括:轮廓的查找、表达方式、组织方式、绘制、特性、匹配。首先回忆下几个转载 2012-10-09 19:54:08 · 4544 阅读 · 0 评论 -
各种笔试面试经历小总结(1)
今天参加了一家IT公司的笔试,涉及到几个C++的问题,之前并没有搞太清楚,小总结一下。问题一:关于c++的虚函数,引入虚函数的意义。 我们知道,多态性是面向对象程序设计的重要特征,一般定义是:向不同对象发送同一消息,不同对象在接收到该消息时会有不同的处理方法。那么实现多态性有两种方式,一种是静态多态性,另一种是动态多态性。 静态多态性是通过函数和运算符的重载来实现的,从编译原创 2013-03-15 16:23:23 · 1506 阅读 · 0 评论