行人检测与目标跟踪算法研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于opencv中光流法的运动
行人目标跟踪与检测
一、课题研究背景及方法
行人检测具有极其广泛的应用:智能辅助驾驶,智能监控,行人分析以及智能机器人等领域。从2005年以来行人检测进入了一个快速的发展阶段,但是也存在很多问题还有待解决,个人觉得主要还是在性能和速度方面还不能达到一个权衡。
早期以静态图像处理中的分割、边缘提取、运动检测等方法为主。例如
(1)以Gavrila为代表的全局模板方法:基于轮廓的分层匹配算法,构造了将近2500个轮廓模板对行人进行匹配, 从而识别出行人。为了解决模板数量众多而引起的速度下降问题,采用了由粗到细的分层搜索策略以加快搜索速度。另外,匹配的时候通过计算模板与待检测窗口的距离变换来度量两者之间的相似性。
(2)以Broggi为代表的局部模板方法:利用不同大小的二值图像模板来对人头和肩部进行建模,通过将输入图像的边缘图像与该二值模板进行比较从而识别行人,该方法被用到意大利Parma大学开发的ARGO智能车中。
(3)以Lipton为代表的光流检测方法:计算运动区域内的残余光流;
(4)以Heisele为代表的运动检测方法:提取行人腿部运动特征;
(5)以Wohler为代表的神经网络方法:构建一个自适应时间延迟神经网络来判断是否是人体的运动图片序列;
以上方法,存在速度慢、检测率低、误报率高的特点。
二、行人检测的研究现状
(1)基于背景建模的方法:分割出前景,提取其中的运动目标,然后进一步提取特征,分类判别;在存在下雨、下雪、刮风、树叶晃动、灯光忽明忽暗等场合,该方法的鲁棒性不高,抗干扰能力较差。且背景建模方法的模型过于复杂,对参数较为敏感。
(2)基于统计学习的方法:根据大量训练样本构建行人检测分类器。提取的特征一般有目标的灰度、边缘、纹理、形状、梯度直方图等信息,分类器包括神经网络、SVM,adaboost等。该方法存在以下难点:(a)行人的姿态、服饰各不相同;
(b)提取的特征在特征空间中的分布不够紧凑;
(c)分类器的性能受训练样本的影响较大;
(d)离线训练时的负样本无法涵盖所有真实应用场景的情况;
尽管基于统计学习的行人检测方法存在着诸多的缺点,但依然有很多人将注意力集中于此。
行人检测国外研究情况:
法国研究人员Dalal在2005的CVPR发表的HOG+SVM的行人检测算法(Histograms of Oriented Gradients for Human Detection, Navneet Dalel,Bill Triggs, CVPR2005)。
Dollar 在 2010 年 BMVC 的《The fastest pedestrian detector in the west》一文中提出了一种新的思想,这种思想只需要训练一个标准 model,检测 N/K(K ≈10)然后其余的 N-N/K 种大小的图片的特征不需要再进行这种复杂的计算,而是跟据这 N/K 次的结果,由另外一种简单的算法给估计出来,这种思想实现的基础是大小相近的图像的特征可以被足够精确的估计出来;同年,德国人:Stefe n Walk文中使用改进的HOG,即HOF和CSS(color self similarit y)特征,使用HIK SVM分类器。
2012年PAMI上发表的一篇关于行人检测的综述性文章,对常见的16种行人检测算法进行了简单描述,并在6个公开测试库上进行测试,给出了各种方法的优缺点及适用情况。另外,指出了未来行人检测的发展方向和趋势。
加州理工学院2009年行人检测的文章:Integral Channel Features(积分通道特征)
2013年ICCV2013: 1)Joint Deep Learning for Pedestrian D etection 2)Multi-Stage Contextual Deep Learning for Pedest rian Detection 简称UDN算法,从文中描述的检测效果来看,该方法是所有方法中最好的,并且,效果远超过其他方法。经过对论文和该算法源码的研究,该算法是与作者另外一篇论文的方法,另外的论文算法做图片扫描,得到矩形框,然后用该方法对矩形框进行进一步确认,以及降低误警率和漏警率。另外的论文是:Multi-Stage C ontextual Deep Learning for Pedestrian Detection。这篇文章是
用深度学习的CNN做candidate window的确认。而主要的行人检测的算法还是HOG+CSS+adaboost。
IJCV2014年的文章:Detection and Tracking of Occluded Peop le,利用DPM模型,检测粘连情况很严重的行人,效果很好。
行人检测国内研究情况:
2007年,苏松志,李绍滋,陈淑媛等.行人检测技术综述[J];杜友田; 陈峰;徐文立; 李永彬;基于视觉的人的运动识别综述, 电子学报。
2008年,贾慧星,章毓晋,车辆辅助驾驶系统中基于计算机视觉的行人检测研究综述[J];朱文佳,基于机器学习的行人检测关键技术研究[D].
三、基于opencv中光流算法的运动目标跟踪与检测
(1)0基于opencv的光流算法的运动目标跟踪与检测实现框图如下
(2)图像预处理
图像预处理的目的就要减少图像的噪声,以及为提取图像特征做准备,提高图像的识别率和准确率。本研究课题主要用到的图像预处理技术主要是:彩色图像灰度化,灰底图像高斯滤波,直方图均衡化等技术。
2、图像特征提取和检测
传统的运动目标跟踪和检测算法都是依据SVM、深度学习、adaboost等方法做分类,HOG、harr等特征作为目标跟踪和检测的前提。但是依据这些方法,实现较复杂,依据目标提取特征也较为复杂,而且特征提取也较为繁琐,针对不同的目标检测任务需要训练不同的分类器,这样耗时而且工作量巨大,数据量也是巨大。本研究课题不需要大量数据,只需要一段视频图像数据作为输入,然后采用光流算法,角点检测,视频图像中运动目标的关键点提取,以及确定目标区域大致范围。本研究课题运动目标是行人,其他运动目标依据改算法应该也是可行的。都是运动目标,都是对目标依据光流算法提取运动目标特征。
光流算法原理:光流是图像亮度的运动信息描述。光流法计算最初是由Horn和S chunck于1981年提出的,创造性地将二维速度场与灰度相联系,引入光流约束方程,得到光流计算的基本算法.光流计算基于物体移动的光学特性提出了2个假设:
①运动物体的灰度在很短的间隔时间内保持不变;
②给定邻域内的速度向量场变化是缓慢的。
假设图像上一个像素点(x,y),在t时刻的亮度为E(x+Δx,y+Δy,t+Δt),同时用u(x,y0和v(x,y)来表示该点光流在水平和垂直方向上的移动分量:
u=dx/dt v=dy/dt 在经过一段时间间隔Δt后该点对应点亮度为E(x+Δx,y+Δy, t+Δt),当Δt很小趋近于0时,我们可以认为该点亮度不变,所以可以有:
E(x,y,t)=E(x+Δx,y+Δy,t+Δt)当该点的亮度有变化时,将移动后点的亮度由Taylor公式展幵,可得:
忽略其二阶无穷小,由于Δt趋近于0时,有:
式中w=(u,v),所以上式就是基本的光流约束方程。