随笔分类 -  计算机视觉

摘要:由于相机正面白摄物体时,相机的光轴方向可能发生变化,带来扭曲。而SIFT算法虽具有完全的尺度不变性,但不具有完全的仿射不变性,对拍摄角度发生大角度空间变化的图像特征提取有一定的局限性。ASift通过模拟经度与纬度实现完全的仿射不变,然后用SIFT算法把模拟图像进行比较,最后实现特征匹配。ASIFT算法的具体步骤如下:1.选取采样参数,模拟不同经度与纬度的图像。2.计算模拟图像的特征。3.结合所有的模拟图像的特征,进行特征匹配。注意:ASIFT提供的一种框架,其核心思想是模拟不同的经度与纬度的图像,具体模拟图像的特征提取和匹配,可选择SIFT、SURF等特征。ASIFT算法代码资源:htt... 阅读全文
posted @ 2014-03-04 11:37 一点心青 阅读(12081) 评论(1) 推荐(1) 编辑
摘要:SACON(SAmple CONsensus)算法是基于样本一致性的运动目标检测算法。该算法通过对每个像素进行样本一致性判断来判定像素是否为背景。算法框架图 由上图可知,该算法主要分为四个主要部分,分别是邻域差分、SACON算法核心处理、空洞填充后处理、TOM(Time Out Map),其中TOM(Time Out Map)主要用于背景模型更新,其他部分属于前景目标检测。背景模型建立 SACON算法建立背景模型的方法是直接取视频序列的前N帧作为背景模型。 对于每个像素而言,其背景模型可以表示为:C(c1,c2,...,cN),对于彩色图像,ci=(r,g,b),对于灰度图像,则... 阅读全文
posted @ 2014-01-23 11:14 一点心青 阅读(5864) 评论(1) 推荐(0) 编辑
摘要:SOBS(self-Organizing through artificial neural networks)是一种基于自组织神经网络的背景差分算法,主要是借鉴神经网络的特性,一个网络输入节点,对应多个中间节点,将背景模型中的一个像素映射到模型的多个位置,并采用了像素邻域空间相关的更新方式,使邻域的信息进一步融入模型中,使得算法具有邻域空间相关性。算法伪代码 背景模型建立 选择背景模型的映射大小,一般选取n = 3,即一个像素点对应于模型中的3*3块,背景模型相比于原始图像扩大了9倍。 选择HSV颜色空间,选取第一帧数据作为背景模型的初始化数据。如上图示例所示,ai(h,s,v... 阅读全文
posted @ 2014-01-22 14:36 一点心青 阅读(4982) 评论(0) 推荐(0) 编辑
摘要:PbModel是基于概率模型的背景差分算法,其基本思想是像素点会因光照变化、运动物体经过产生多种颜色值,但是一段时间内,像素点处于静止状态的时间会比处于运动状态的时间长。因而一段时间内,像素点某个颜色值出现的概率会高于其他颜色值,高概率的颜色值即为该像素点的背景值。创新点1.关注基于概率的背景模型的内存占用率和计算复杂度 基于概率的背景模型是常用的背景建模方法,但是现有一些算法,其内存占用率高,计算复杂度大。 该算法利用聚类减少内存占用率,将像素点可能出现的颜色值,按距离聚类,以聚类中心代替颜色值,从而减少内存占用率。 利用不固定长度的帧序列建立背景模型,由于许多像素点一般都处于静止... 阅读全文
posted @ 2014-01-21 19:15 一点心青 阅读(1557) 评论(0) 推荐(0) 编辑
摘要:一、利用OpenCV中提供的GPU模块 目前,OpenCV中已提供了许多GPU函数,直接使用OpenCV提供的GPU模块,可以完成大部分图像处理的加速操作。 基本使用方法,请参考:http://www.cnblogs.com/dwdxdy/p/3244508.html 该方法的优点是使用简单,利用GpuMat管理CPU与GPU之间的数据传输,而且不需要关注内核函数调用参数的设置,使用过程中,只需要关注处理的逻辑操作。 缺点是受限于OpenCV库的发展和更新,当需要完成一些自定义的操作时(OpenCV中没有提供相应的库),难以满足应用的需求,需要自己实现自定义操作的并行实现。此外,针对一... 阅读全文
posted @ 2014-01-21 17:44 一点心青 阅读(31747) 评论(20) 推荐(1) 编辑
摘要:ViBe是一种像素级的背景建模、前景检测算法,该算法主要不同之处是背景模型的更新策略,随机选择需要替换的像素的样本,随机选择邻域像素进行更新。在无法确定像素变化的模型时,随机的更新策略,在一定程度上可以模拟像素变化的不确定性。背景模型的初始化 初始化是建立背景模型的过程,一般的检测算法需要一定长度的视频序列学习完成,影响了检测的实时性,而且当视频画面突然变化时,重新学习背景模型需要较长时间。 ViBe算法主要是利用单帧视频序列初始化背景模型,对于一个像素点,结合相邻像素点拥有相近像素值的空间分布特性,随机的选择它的邻域点的像素值作为它的模型样本值。 优点:不仅减少了背景模型建立的过程... 阅读全文
posted @ 2014-01-21 10:21 一点心青 阅读(16207) 评论(0) 推荐(2) 编辑
摘要:Pixel-Based Adaptive Segmenter(PBAS)检测算法,是基于像素的无参数模型,该算法结合了SACON和VIBE两个算法的优势,并在这两个算法的基础上改进而来,SACON和VIBE算法的介绍,请参考:【背景建模】SACONhttp://www.cnblogs.com/dwdxdy/p/3530862.html【背景建模】VIBEhttp://www.cnblogs.com/dwdxdy/p/3527891.html创新点:1).引入控制论的思想,使前景判断阈值和背景模型更新率自适应变化,随背景的复杂程度变化。2).引入背景复杂程度的度量方法,根据背景复杂程度调整前.. 阅读全文
posted @ 2014-01-20 15:38 一点心青 阅读(13848) 评论(2) 推荐(0) 编辑
摘要:问题描述:已知两幅图像Image1和Image2,计算出两幅图像的重叠区域,并在Image1和Image2标识出重叠区域。算法思想:若两幅图像存在重叠区域,则进行图像匹配后,会得到一张完整的全景图,因而可以转换成图像匹配问题。图像匹配问题,可以融合两幅图像,得到全景图,但无法标识出在原图像的重叠区域。将两幅图像都理解为多边形,则其重叠区域的计算,相当于求多边形的交集。通过多边形求交,获取重叠区域的点集,然后利用单应矩阵还原在原始图像的点集信息,从而标识出重叠区域。算法步骤:1.图像匹配计算,获取单应矩阵。2.根据单应矩阵,计算图像2的顶点转换后的点集。3.由图像1的顶点集合和图像2的转换点集, 阅读全文
posted @ 2013-08-02 12:50 一点心青 阅读(19885) 评论(14) 推荐(3) 编辑
摘要:问题描述:已知两个多边形Poly1和Poly2,分别由点集C1={P1,P2,...,Pm}和C2={Q1,Q2,...,Qn}表示,求这两个多边形的交集。算法思想:两个多边形相交后,其顶点要么是两个多边形边的交点,要么是在多边形内部的点。算法步骤:1.计算两个多边形每条边之间的交点。2.计算包含在多边形内部的点。3.将交点和多边形内部的点,按逆时针(或顺时针)排序,得出最终的点集。代码基本实现如下: 1 typedef struct Point 2 { 3 int x; 4 int y; 5 }Point; 6 bool PolygonClip(const vector &p... 阅读全文
posted @ 2013-08-02 11:05 一点心青 阅读(28521) 评论(1) 推荐(2) 编辑
摘要:问题描述:已知点P(x,y)和多边形Poly,判断点P(x,y)是否在多边形内部。基本方法:射线法以点P为端点,向左方作射线L,由于多边形是有界的,所以射线L的左端一定在多边形外部,考虑沿着L从无究远处开始自左向右移动。遇到和多边形的第一个交点的时候,进入到了多边形的内部,遇到第二个交点的时候,离开了多边形...因而当L和多边形的交点数目C是奇数的时候,P在多边形内,是偶数,则P在多边形外。特殊情况分析,如图下图(a),(b),(c),(d)所示。图(a)中,L和多边形的顶点相交,交点只能计算一个。图(b)中,L和多边形顶点的交点不应被计算。图(c)和(d)中,L和多边形的一条边重合,这条边应 阅读全文
posted @ 2013-08-01 18:07 一点心青 阅读(10495) 评论(3) 推荐(2) 编辑
摘要:问题描述:已知两条线段P1P2和Q1Q2,判断P1P2和Q1Q2是否相交,若相交,求出交点。两条线段的位置关系可以分为三类:有重合部分、无重合部分但有交点、无交点。算法的步骤如下:1.快速排斥实验。设以线段P1P2为对角线的矩形为R,设以线段Q1Q2为对角线的矩形为T,如果R和T不相交,则两线段不相交。2.跨立实验。如果两线段相交,则两线段必然相互跨立对方。若P1P2跨立Q1Q2,则矢量(P1-Q1)和(P2-Q1)位于矢量(Q2-Q1)的两侧,即( P1 - Q1 ) × ( Q2 - Q1 ) * ( P2 - Q1 ) × ( Q2 - Q1 ) = 0) & 阅读全文
posted @ 2013-08-01 17:09 一点心青 阅读(18354) 评论(0) 推荐(1) 编辑
摘要:问题描述:已知多边形点集C={P1,P2,...,PN},其排列顺序是杂乱,依次连接这N个点,无法形成确定的多边形,需要对点集C进行排序后,再绘制多边形。点集排序过程中,关键在于如何定义点的大小关系。以按逆时针排序为例,算法步骤如下:定义:点A在点B的逆时针方向,则点A大于点B1.计算点集的重心O,以重心作为逆时针旋转的中心点。2.计算点之间的大小关系。大小关系的计算,可由两种方法进行计算。方法1:以重心O作一条平行于X轴的单位向量OX,然后依次计算OPi和OX的夹角,根据夹角的大小,确定点之间的大小关系。OPi和OX夹角越大,说明点Pi越小,如图所示。方法2:根据向量叉积的定义,向量OPi和 阅读全文
posted @ 2013-08-01 15:30 一点心青 阅读(21621) 评论(15) 推荐(1) 编辑
摘要:参考文献 基于自适应混合高斯模型的时空背景建模 自动化学报 2009创新点:1).在混合高斯模型基础上,混合了空间分布信息特征.2).空间模型和时间模型进行前景检测时,如何决策.文中主要是利用空间域背景模型进行粗尺度判断,当空间域背景模型无法判断时,再利用时间域背景模型进行判断.3).自适应调整混合高斯模型的个数.时间域模型:混合高斯模型,添加了自适应调整混合高斯模型个数模块.细节请参考:http://www.cnblogs.com/dwdxdy/archive/2012/05/31/2528790.html空间域模型:统计混合高斯模型中背景模型在空间上的分布,作为像素的空间域背景模型.利用颜 阅读全文
posted @ 2012-06-04 11:26 一点心青 阅读(322) 评论(0) 推荐(0) 编辑
摘要:参考文献 Background Subtraction with Adaptive Spatio-Temporal Neighborhood Analysis VISAPP 2008创新点:1).将前景检测分为二层处理,分别是像素层和区域层,通区域层来消除误检的像素点.2).在区域层处理时,区域窗口的大小是自适应的.像素层处理:与混合高斯模型处理方式一样.区域层处理:针对像素层处理后得到前景像素点,计算并判断该像素点是否与其邻域内某个背景像素点的对应的模型匹配.若匹配,则说明该像素点是背景,否则为前景.当区域窗口较大时,区域层处理的计算复杂度比较高,需要调整窗口大小,来平衡计算复杂度和检测效果 阅读全文
posted @ 2012-06-04 10:53 一点心青 阅读(248) 评论(0) 推荐(0) 编辑
摘要:参考文献 Real-Time Moving Object Detection in Video Sequences Using Spatio-Temporal Adaptive Gaussian Mixture Models VISAPP 2010创新点:1).改进了混合高斯模型,混合了空间和时间特征信息.2).限制混合高斯模型中的方差值的变化.模型的匹配,更新和基于混合高斯模型的背景建模一致.在前景判断模块添加了一层,空间信息分析,不只是根据模型的匹配结果来确定前景.其步骤如下:1).根据模型匹配结果,得到一个mask图像,用来表示像素点与背景模型的匹配程度.2).针对mask图像计算每个像 阅读全文
posted @ 2012-06-04 10:26 一点心青 阅读(446) 评论(0) 推荐(0) 编辑
摘要:参考文献 Summarization Extraction Method forSurveillance Video Based on Color SpatialDistribution Characteristic CiSE 2009与传统的关键帧提取方法类似,只不过其选取的特征不同.CSD 颜色空间分布特征将图像中的像素点分为相连的,和不相连的.相连的定义:当该与像素点颜色相同,相连通的像素点组成一个连通域,该区域像素点的个数大于阈值(图像大小的1%~3%)时,该区域为相连的,该区域的像素为相连的像素点.否则,为不相连的.颜色空间分布直方图Hc(i),Hnc(i)分别表示颜色值为i时,对应 阅读全文
posted @ 2012-06-01 18:49 一点心青 阅读(745) 评论(0) 推荐(0) 编辑
摘要:参考文献 Motion-Focusing Key Frame Extraction and Video Summarization for Lane Surveillance System ICIP 2009该文思路与前面几篇文章截然不同,具体思路如下:1).检测出运动目标.2).将检测出运动目标进行融合重叠,得到一张虚拟的关键帧图像.关键在于如何确定多少帧融合重叠,得到一张虚拟的关键帧图像.文中运用的是贪心算法:每次选择一帧可以增加重叠区域的帧进行融合,当选择的帧与当前的虚拟图像的重叠区域大于95%时,则停止重叠区域的累加,并选该虚拟的关键帧图像作为关键帧.创新点:其思路比较新颖.不足之处: 阅读全文
posted @ 2012-06-01 17:46 一点心青 阅读(473) 评论(0) 推荐(0) 编辑
摘要:参考文献 Summarisation of Surveillance Videos byKey-frame Selection ICDSC 2011该文的思路与前面二篇思路大致相同,该文没有分段处理这一步,而直接在运动信特征的基础按一定的选取策略,选取关键帧.提取运动信息特征:EHD Edge Histogram Descriptor,LFE Localised Foreground Entropy.EHD特征提取步骤如下:1).将图像转换为灰度图像,划分为4*4的图像子块.2).计算每个图像子块,5个方向对应mf(i,j).3).将每个图子块各个方向的mf(i,j)组合成一个向量.(5*4* 阅读全文
posted @ 2012-06-01 17:20 一点心青 阅读(524) 评论(0) 推荐(0) 编辑
摘要:参考文献 Traffic Video Segmentation and Key Frame Extraction Using Improved Global K-Means Clustering ISISE 2010与上一篇文章的思路类似,提取运动信息特征,进行分段,对每分段参取一定策略提取关键帧.运动信息特征:当前帧图像与背景图像的Dissimilarity.根据Dissimilarity的大小衡量当前帧的运动信息量.分段策略:利用滑动窗口统计当前帧的运动趋势,根据运动趋势的改变,来进行分段.滑动窗口大小为2L.Fti和Fti-1异号时,则该点可作为分段候选点.即相连两帧的运动趋势不同时,作 阅读全文
posted @ 2012-06-01 16:22 一点心青 阅读(683) 评论(0) 推荐(0) 编辑
摘要:关键帧提取,提取视频中具有表征意义的视频帧作为关键帧,来简洁的表述该视频的内容.主要应用于视频的压缩存储,视频结构化索引等领域.由于关键帧的选择与人的视觉感受有关,存在一定的主观性,目前,大多数关键帧提取主要是局限某个领域的视频,像体育视频,新闻,电影等.这样可以利用视频本身的特点来完善关键帧提取算法的准确度.我主要关注于监控视频的关键帧的提取,下面将介绍的方法,主要针对监控视频的.基本思路:1).利用背景建模,目标检测技术,检测前景目标,即运动信息.2).针对每帧图像中的前景目标,提取相应的特征,作业衡量运动信息的特征.3).计算出每帧图像的运动信息特征.4).根据运动信息,按照一定策略选择 阅读全文
posted @ 2012-06-01 15:40 一点心青 阅读(3999) 评论(0) 推荐(0) 编辑