1.saturate_cast<uchar>来说,就是把数据转换成8bit的0~255区间,负值变成0,大于255的变成255.如果是浮点型的数据,变成round最近的整数 2.cv::Mat::ptr<float>(y)[x];cv::Mat::ptr<float>(y)是获得了对应行的指针. 3.cv::Mat::zeros()进行初始化的过程是y*x*c,记住了不是x*y*c. 4.canny进行边缘检测的时候图像的类型必须是CV_8u,否则编译不通过. 5.im…
1,CodeBook的来源 先考虑平均背景的建模方法.该方法是针对每一个像素,累积若干帧的像素值,然后计算平均值和方差,以此来建立背景模型,相当于模型的每一个像素含有两个特征值,这两个特征值只是单纯的统计量,没有记录该像素值的历史起伏,即没有考虑时间序列和噪声干扰,不具备鲁棒性,因此建模时不能有运动前景的部分,要求光线保持不变. 如果我们考虑到时间起伏序列建模,比如利用60帧图像建模,对于每一个像素点会产生60个像素值,分别给他们加上60个相关的权值,或者进一步统计不同像素值出现的频次或者距离,…
1,CodeBook算法流程介绍 CodeBook算法的基本思想是得到每个像素的时间序列模型.这种模型能很好地处理时间起伏,缺点是需要消耗大量的内存.CodeBook算法为当前图像的每一个像素建立一个CodeBook(CB)结构,每个CodeBook结构又由多个CodeWord(CW)组成. CB和CW的形式如下: CB={CW1,CW2,…CWn,t} CW={lHigh,lLow,max,min,t_last,stale} 其中n为一个CB中所包含的CW的数目,当n太小时,退化为简单背景,当…
背景减法库(BGS Library = background subtraction library)包含了37种背景建模算法,也是目前国际上关于背景建模技术研究最全也最权威的资料.本文将更加详细的介绍背景减法库(BGS Library)的基本框架与入口函数main()的功能. BGS库的整体框架在背景建模技术(二)中已经全部给出,此处从函数的角度再次给出BGS库的基本框架,有利于代码的修改与维护. 如下图所示是基于C++的BGS库的函数流程图: 接下来将会对每个函数进行更加详细的分析. 首先,…
常用的OpenCV函数速查 1.cvLoadImage:将图像文件加载至内存: 2.cvNamedWindow:在屏幕上创建一个窗口: 3.cvShowImage:在一个已创建好的窗口中显示图像: 4.cvWaitKey:使程序暂停,等待用户触发一个按键操作: 5.cvReleaseImage:释放图像文件所分配的内存: 6.cvDestroyWindow:销毁显示图像文件的窗口: 7.cvCreateFileCapture:通过参数设置确定要读入的AVI文件: 8.cvQueryFrame:用…
分配图像空间: IplImage* cvCreateImage(CvSize size, int depth, int channels);       size:  cvSize(width,height); depth: IPL_DEPTH_8U, IPL_DEPTH_8S, IPL_DEPTH_16U,              IPL_DEPTH_16S, IPL_DEPTH_32S, IPL_DEPTH_32F,IPL_DEPTH_64F       channels: 1, 2, 3…
一.Harris角点 如上图所示,红色框AB都是平面,蓝色框CD都是边缘,而绿色框EF就是角点. 平面:框往X或Y抽移动,变化都很小. 边缘:框沿X或Y轴移动,其中一个变化很小,而另外一个变化比较大. 角点:框沿X或Y轴移动,两个变化都比较大. 见<图像基础>笔记第7页 二.背景建模 使用帧差法: 即用后一帧图像减去前一帧图像,得到运动的物体,但是会出现空洞(前景物体的一个面灰度变化不大,减完得到接近0的数). 使用GMM方法: # -*- coding:utf-8 -*- __author_…
一.相关博客 背景建模相关资料收集,各个链接都已给出. 资料,不可能非常完整,以后不定期更新. -----------------切割线----------------- 这个哥们总结的非常好啊,看完了基本就有一个比較"全面"的认知可.能够侃晕一些外行了,哈哈哈... 千里8848: 背景建模(一) Evaluation of Background Subtraction Techniques for Video Surveillance 背景建模(二)--以像素值为特征的方法(1)…
本文为作者原创,转载请注明出处(http://www.cnblogs.com/mar-q/)by 负赑屃     很久以前的笔记了,分享给大家吧...OpenCV4Android中用于背景建模的类主要有:BackgroundSubtractor.BackgroundSubtractorMOG.BackgroundSubtractorMOG2.BackgroundSubtractorKNN,主要对使用方法做个总结.        借用OpenCV提供的API,Android编程可以实现比较丰富的视…
PbModel是基于概率模型的背景差分算法,其基本思想是像素点会因光照变化.运动物体经过产生多种颜色值,但是一段时间内,像素点处于静止状态的时间会比处于运动状态的时间长.因而一段时间内,像素点某个颜色值出现的概率会高于其他颜色值,高概率的颜色值即为该像素点的背景值. 创新点 1.关注基于概率的背景模型的内存占用率和计算复杂度 基于概率的背景模型是常用的背景建模方法,但是现有一些算法,其内存占用率高,计算复杂度大. 该算法利用聚类减少内存占用率,将像素点可能出现的颜色值,按距离聚类,以聚类中心代替…