摘要: 每创建一个将要使用OpenCV的VC Project,都需要给它指定需要的lib。菜单:Project->Settings,然后将Setting for选为All Configurations,然后选择右边的link标签,在Object/library modules附加上cxcore.lib cv.lib ml.lib cvaux.lib highgui.lib cvcam.lib参考自:http://www.opencv.org.cn/index.php/VC6%E4%B8%8B%E5%AE%89%E8%A3%85%E4%B8%8E%E9%85%8D%E7%BD%AEOpenCV1. 阅读全文
posted @ 2012-11-16 19:30 Jun14 阅读(226) 评论(0) 推荐(0)
摘要: 使用C++里面的vector容器std::vector<CvPoint> std::vector<CvPoint> pts1, pts2; pts1.push_back(cvPoint(100, 10)); pts1.push_back(cvPoint(10, 100)); pts1.push_back(cvPoint(200, 200)); pts2.push_back(cvPoint(100, 30)); pts2.push_back(cvPoint(30, 100)); pts2.push_back(cvPoint(150, 200)); ... 阅读全文
posted @ 2012-11-16 19:10 Jun14 阅读(986) 评论(0) 推荐(0)
摘要: 这两个函数看上去差不多,但其实有很大的不同.GetModuleFileName()函数是获取.exe文件的路径使用方法: CString path; GetModuleFileName(NULL,path.GetBufferSetLength(MAX_PATH+1),MAX_PATH); path.ReleaseBuffer(); int pos = path.ReverseFind('\\'); //从后向前查找"\" path = path.Left(pos); //截取左半部分,不包括斜杠 CString pFileName = path... 阅读全文
posted @ 2012-11-15 10:20 Jun14 阅读(650) 评论(0) 推荐(0)
摘要: 因为从AVI采出来的图像有些是Windows位图一样是底左格式即图像像素开始与左下角,这样图像看起来是倒着的,需要进行垂直反转。翻转的判断可以 用IplImage::origin参数得知,origin为1即是翻转图。使用函数cvFlip进行翻转。改出方法为:在"//显示图像" 后面增加下面两句pFrImg->origin=1;pBkImg->origin=1;转自:http://liuxuelian83.blog.163.com/blog/static/8066056620089275249582/ 阅读全文
posted @ 2012-11-10 15:49 Jun14 阅读(278) 评论(0) 推荐(0)
摘要: 1.cvCvtColor() 色彩空间转换函数格式:cvCvtColor(源图像,输出图像,code)code是指色彩空间转换的模式.选用CV_BGR2GRAY时表示转换为灰度图片,BGR TO GRAY 原来是这个意思呀.除了能转换成灰度之外还能转换成HSV等类型.OK先了解到这里好了.2.cvSmooth()图像平滑函数格式:cvSmooth(源图像,输出图像,smoothtype)smoothtype是指平滑方法.比如这么写 cvSmooth(pImg8u,pImg8uSmooth,CV_GAUSSIAN,3,0,0) = cvSmooth(pImg8u,pImg8uSmooth);其实 阅读全文
posted @ 2012-11-10 14:12 Jun14 阅读(1362) 评论(0) 推荐(0)
摘要: 于老师的书上写的是"cvLine()是绘图函数中最简单的"void cvLine( Cv Arr* array, //画哪儿 CvPoint pt1, //起点 CvPoint pt2, //终点 CvScalar color, //颜色 int thickness = 1 , //多粗 int connectivity=8 // 反走样模式);thickness单位是像素.最后一个参数connectivity,反走样模式=8 : 8连通,较为平滑不会走样=4 : 4连通,斜线会产生重叠,看上去过于粗... 阅读全文
posted @ 2012-11-10 13:50 Jun14 阅读(1177) 评论(0) 推荐(0)
摘要: 卷积英文不叫juan ji ,叫convolution [,kɒnvə'luːʃ(ə)n]例句Singh also explains how his piece of code runs in order to execute a convolution. 该研究员还解释代码如何执行卷积操作。抽取自 于,刘老师的<<学习OpenCV>>一书的要点:卷积是变换的基础.一个卷积的功能与却与核的形式.核由一个中心和周围包围着她的数组组成.这个中心叫做anchor point (参考点)计算一个特定点的卷积例子:自己画的,模仿书上的例子这个Sobel倒数的3X3的和,参 阅读全文
posted @ 2012-11-09 15:41 Jun14 阅读(280) 评论(0) 推荐(0)
摘要: 1.在类中添加.h文件中:注释//DECLARE_DYNAMIC(MyClass)添加DECLARE_SERIAL(MyClass)添加方法void Serialize(CArchive& ar); 1 class MyClass: public CObject 2 { 3 //DECLARE_DYNAMIC(MyClass) 4 public: 5 DECLARE_SERIAL(MyClass) 6 MyClass(); 7 ~MyClass(); 8 void Serialize(CArchive& ar); 9 protected:10 /... 阅读全文
posted @ 2012-11-03 16:57 Jun14 阅读(366) 评论(0) 推荐(0)
摘要: 使用了一段时间的MFC,还是不清楚建立类向导的用法凭借着C#开发,以及Android平台开发的经验,还以为是控件的ID之类的,大雾!建立类向导:这是一种方便将控件上显示的数据与内部的数据关联起来的方法.比如要获取用户的数据可以为editbox建立类向导,可以选择多种数据类型,比如选择intUpdateData()的作用:UpdateData()参数只有一个,默认为TRUE。UpdateData(TRUE) ——刷新控件的值到对应的变量。(外部输入值交给内部变量) 即:控件的值—>变量。 UpdateData(FALSE) —— 拷贝变量值到控件显示。(变量的最终运算结果值交给外... 阅读全文
posted @ 2012-11-03 13:06 Jun14 阅读(959) 评论(0) 推荐(0)
摘要: 注意:使用tab控件要为每一个tab页面设置子页面,而且切换页面也要自己编写函数!大小设置也需要注意,不然会挡住tab控件的切换按钮!1.tab控件创建1.1 将tab控件拖拽到Dialog上1.2 设置控件名字IDC_TAB,并创建成员变量m_tab2.创建子页面2.1 添加新Dialog,作为tab子页面2.2 为子页面设置属性3.主页面添加代码3.1 在主Dialog的头文件中声明这些子页面的实例3.2 为主Dialog添加WM_INITDIALOG消息事件,添加代码 1 BOOL 主要Dlg::OnInitDialog() 2 { 3 CDialog::OnInitDialo... 阅读全文
posted @ 2012-11-02 15:07 Jun14 阅读(864) 评论(0) 推荐(0)