07 2012 档案
摘要:1.强制转换(1)基本数据类型转换(值的截断)例如:doubled3=1.25e+20;doubled4=10.25;inti2=(int)d3;inti3=(int)d4;按照浮点数到整数的转换语意,结果应该是截去浮点数的小数部分而保留其整数部分,因此i3会得到10,而i2会溢出,因为d3的整数部分远远超出了一个int所能表示的范围,结果当然不正确。(2)基本数据类型的指针转换(内存截断)基本数据类型之间的指针转换一般来说必然会造成内存截断或内存访问范围的扩张,除非两种类型具有相同的字节大小。在32位系统中,int,long,float都具有4字节的空间,虽然不会造成内存截断或内存扩张,但是
阅读全文
摘要:1.堆内存分配 :C/C++定义了4个内存区间: 代码区,全局变量与静态变量区,局部变量区即栈区,动态存储区,即堆(heap)区或自由存储区(free store)。堆的概念:通常定义变量(或对象),编译器在编译时都可以根据该变量(或对象)的类型知道所需内存空间的大小,从而系统在适当的时候为他们分配确定的存储空间。这种内存分配称为静态存储分配; 有些操作对象只在程序运行时才能确定,这样编译时就无法为他们预定存储空间,只能在程序运行时,系统根据运行时的要求进行内存分配,这种方法称为动态存储分配。所有动态存储分配都在堆区中进行。当程序运行到需要一个动态分配的变量或对象时,必须向系统申请取得堆中的一
阅读全文
摘要:IplImage *im8 = cvLoadImage(argv[1]);IplImage *im32 = cvCreateImage(cvSize(im8->width, im8->height), 32, 3);cvConvertScale(im8, im32, 1/255.);
阅读全文
摘要:1. 写yml矩阵代码: 全选#include "cxcore.h"int main( int argc, char** argv ){ CvMat* mat = cvCreateMat( 3, 3, CV_32F ); CvFileStorage* fs = cvOpenFileStorage( "example.yml", 0, CV_STORAGE_WRITE ); cvSetIdentity( mat ); cvWrite( fs, "A", mat, cvAttrList(0,0) ); cvReleaseFileStora
阅读全文
摘要:数字图像处理中的形态学(摘自某文献,因为贴图的数目有限制,后面的公式图片没有能够上,电脑重装后文档已经找不到了,囧)一 引言数学形态学是一门建立在集论基础上的学科,是几何形态学分析和描述的有力工具。数学形态学的历史可回溯到19世纪。1964年法国的Matheron和Serra在积分几何的研究成果上,将数学形态学引入图像处理领域,并研制了基于数学形态学的图像处理系统。1982年出版的专著《Image Analysis and Mathematical Morphology》是数学形态学发展的重要里程碑,表明数学形态学在理论上趋于完备及应用上不断深入。数学形态学蓬勃发展,由于其并行快速,易于硬件实
阅读全文
摘要:Bhattacharyya距离在统计学中,Bhattacharyya距离(以下称巴氏距离)测量的是两个离散或连续概率分布的相似性。计算方式和Bhattacharyya系数关系很密切。两种计算方式都以A. Bhattacharyya名字命名,Bhattacharyya是一位30年代在印度统计研究所工作的统计学家。巴氏系数可用来对两组样本的相关性进行测量。这一方法常用来作分类器算法。[1]数学定义-离散概率分布 对于在X数域上的两个离散概率分布p和q,巴氏距离定义为[2]: DB(p,q) = -ln(BC(p,q)) 其中 BC(p,q) = ∑√p(x)q(x) BC被称作Bhatt...
阅读全文
摘要:遇到这种情况的解决方法把代码中的ReadHuge换成Read、WriteHuge换成Write即可。原因是VC++2005及后续VC版本中的CFile没有ReadHuge和WriteHuge成员函数,只在VC6中的CFile才有,不过ReadHuge()函数已被Read()函数代替,WriteHuge()函数已被Write()函数代替。
阅读全文
摘要:灰度直方图介绍:http://hi.baidu.com/wen_sift/blog/item/83fd56ca3e6b1b36b600c887.html灰度直方图均衡化:http://hi.baidu.com/wen_sift/blog/item/b808fd0d9f67392b6b60fb54.html利用OpenCV计算并绘制灰度直方图:View Code #include <cv.h>#include <highgui.h>#pragma comment( lib, "cv.lib" )#pragma comment( lib, "c
阅读全文
摘要:给个链接吧:http://blog.sina.com.cn/s/blog_6833a4df01012bct.htmlComputer Vision Resources:https://netfiles.uiuc.edu/jbhuang1/www/resources/vision/index.html整理CVPR2012感兴趣的文章:http://www.bfcat.com/index.php/2012/04/cvpr2012-papers/
阅读全文
摘要:Ali Borji是Laurent Itti的学生,他在这一年中就显著性方面发表了5篇高水平的国际会议。其中在CVPR2012上面有三篇第一作者的文章。先看一下题目:1. Boosting Bottom-up and Top-down Visual Features for Saliency Estimation,(PDF) Ali Borji;2. Exploiting Local and Global Patch Rarities for Saliency Detection,(PDF) Ali Borji, Laurent Itti;3. Probabilistic Learning o
阅读全文
摘要:先看几张效果图吧效果图:可以直接测试的代码:添加头文件:// Saliency.h: interface for the Saliency class.//////////////////////////////////////////////////////////////////////////===========================================================================// Copyright (c) 2009 Radhakrishna Achanta [EPFL] //====================...
阅读全文
摘要:背景减除对背景建模,然后进行背景减除剩下前景视作所求的目标,也是目标检测的一类方法。背景模型的巨大变化即意味着目标移动。帧间差分是背景减除中的一个经典算法。Wren等人提出用3D高斯函数对固定背景每个像素的颜色I(x,y)建模,I(x,y) ~ N(μ (x,y), Σ(x,y))。其中 μ (x,y)是均值, Σ(x,y)是协方差。这两个数据通过对连续背景帧的观测学习得到。由于颜色对光照敏感,单个高斯函数建模的模型不适用于户外场景。多形态混合统计模型的利用是背景建模的一个重大改进。比如混合高斯模型,非参数核密度估计(Elgammal & Davis[2000]),纹理颜色特征融合(L
阅读全文
摘要:刚才又找到一篇文章,贴出来分享:http://blog.csdn.net/duliang_wu/article/details/7317740相信许多朋友多用过了opencv2.3版本中的混合高斯模型,大部分人可能多碰到了这样一个问头,2.3版本中的,混合高斯模型,不能读取模型建立的背景。我上网搜了一下,发现了解决方法(这篇文章算不上原创啦)。这是中文提示的网站http://blog.pzxbc.com/?p=176,该文中所提及的解决方法来自外国网站https://code.ros.org/trac/opencv/ticket/317。接下来就是我在vs2010下编好的代码,一定能跑!#in
阅读全文
摘要:sample bgfg_segm.cpp don't display background in 2.1.0 versionThe following function fills model->background image when model is MOG (cvCreateGaussianBGModel). I hope this helps those who encounter this problem in the meanwhiletypedef struct MyCvGaussBGValues{ float match_sum; float weight; .
阅读全文
摘要:转自http://www.opencv.org.cn/forum/viewtopic.php?f=1&t=13642&start=0关于计算机视觉(ComputerVision, CV)相关领域的网站链接,其中有CV牛人的主页,CV研究小组的主页,CV领域的paper,代码,CV领域的最新动态,国内的应用情况等等。打算从事这个行业或者刚入门的朋友可以多关注这些网站,多了解一些CV的具体应用。搞研究的朋友也可以从中了解到很多牛人的研究动态、招生情况等。总之,我认为,知识只有分享才能产生更大的价值,真诚希望下面的链接能对朋友们有所帮助。(1)googleResearch; http
阅读全文
摘要:主要是拷贝的程序问题,有错误的空字符0x3000是汉语的空格,也就是全角空格,相当于一个汉字,但你又看不见它。你知道的,像逗号,有半角(,)和全角(,)之分的,其实空格也有。0x3000是全角的空格,0x20是半角的空格。最好把这个语句的后面空白部分,都删除掉,免得有不可见的全角空格。
阅读全文
摘要:转自:http://blog.csdn.net/wqvbjhc/article/details/5485242混合高斯模型原理 混合高斯模型跟高斯变量之和看起来有一点像, 注意不要把它们弄混淆了. 混合高斯模型给出的概率密度函数实际上是几个高斯概率密度函数的加权和: 其中 . 定义事件 , 则 . 据此可以产生服从上述混合高斯概率密度分布的样本.混合分布的均值为 方差为 计算均值和方差的公式不仅适用于几个(多维)高斯分布混合的情况, 还适用于非高斯分布的情况.高斯变量之和就没什么好说的了, 几个高斯变量之和是一个新的高斯变量.高斯背景模型在 运动检测中的应用 原理 : 高斯模型就是用高斯概..
阅读全文
摘要:转自:http://blog.csdn.net/wqvbjhc/article/details/54966321. CV_FUNCNAME 定义变量 cvFuncName存放函数名,用于出错时可以报告出错的函数 __FILE__ C语言中的宏,CV_Error中经常用到,说明出错的函数所在源文件名 __LINE__ C语言中的宏,CV_Error中经常用到, 说明出错位置的函数 cxerror.h 中[cpp] view plaincopyprint?/*CV_FUNCNAMEmacrodefinesicvFuncNameconstantwhichisusedbyCV_ERRORmacro*/
阅读全文
摘要:视频读写概述Wikipedia,自由的百科全书对视频进行读写,可使用OpenCV提供的CvCapture和CvVideoWriter。在Windows平台下,OpenCV以前提供的读写功能采用VFW,效率低下且有些格式支持不好。而 OpenCV 2.0 内置了videoInput Library,可以自动在VFW和DirectShow间切换Windows下从摄像头采集图像请参考:Shiqi Yu编写的CCameraDS类(勿需安装庞大的DirectX,简洁,推荐!)hardy_ai编写的ARFrameGrabber类Theodore Watson编写的videoInput Library(勿需
阅读全文
摘要:转载自http://blog.csdn.net/shengzhuzhu/article/details/7469896特征提取是计算机视觉和图像处理中的一个概念。它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征提取的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点、连续的曲线或者连续的区域。特征的定义 至今为止特征没有万能和精确的定义。特征的精确定义往往由问题或者应用类型决定。特征是一个数字图像中“有趣”的部分,它是许多计算机图像分析算法的起点。因此一个算法是否成功往往由它使用和定义的特征决定。因此特征提取最重要的一个特性是“可重复性”:同一场景的不同图像所
阅读全文
摘要:转载自http://hi.baidu.com/dbzhang800/item/1dd5621596b52f25f7625c411. Mingw 相关的 videoInput 的问题Mingw4.4 编译OpenCV2.1 时,编译失败:OpenCV2.1.0/src/highgui/http://www.cnblogs.com/3rdparty/lib/libvideoInput.a(videoInput.o):videoInput.cpp:(.text+0xee):undefined reference to`__gxx_personality_sj0'根源:问题出在 libvide
阅读全文