




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机视觉课程设计技术报告——行人检测与跟踪行人检测与跟踪摘要:本文研究了基于视觉的行人检测算法及实现。采用基于滑动窗的检测方法,使用大小固定的滑动窗在图像金字塔中滑动,计算HOG特征,实现对检测窗口部分图像的特征提取,在线性核函数的SVM分类器中进行判别,输出被判别为正的图像区域。在此基础上,提出了将检测与行人跟踪相结合,实现了基于Kalman滤波器的单目标行人跟踪算法,利用滤波器进行行人位置估计,并用检测结果对估计值进行修正,实现了“检测——跟踪”框架。关键词:行人检测、HOG特征、SVM、Kalman滤波Abstract:Thispaperstudiesthevision-basedpedestriandetectionalgorithm.Thedetectionalgorithm,whichisbasedonslidingwindow,usesfixed-sizewindowtoslideintheimagepyramid.ThenHOGfeaturesarecalculatedandclassifiedbylinearSVM.Theslidingwindowswhosedeterminationresultarepositivearetreatedascontainingobjects.BasedonthedetectionalgorithmandKalmanfilter,atrackingalgorithmcombiningdetectionisproposedtoachieveasinglepedestrianobjecttrackingtask,usingfilterestimatepedestrianlocationinthenextframeandthenusingthedetectionresulttoupdatethefilter,realizingdetection-trackingframework.Keywords:pedestriandetection;HOGfeatures;Kalmanfilter
简介行人检测是一项极具挑战性的任务,同时在移动机器人、智能交通等领域有着重要应用。在很多应用中,需要检测行人目标并能够进行跟踪。本文根据HOG特征和SVM对行人目标进行检测,使用了INRIA数据集进行训练,实现了行人检测任务。在此基础上,本文提出使用Kalman滤波器进行目标跟踪,建立了行人的运动模型,并使用拍摄于北京理工大学六号教学楼附近的图像序列进行测试,得到了较为满意的效果。本项目采用OpenCV和C++完成,并使用了CVC行人数据集(CVC-02PedestrianDatasets)和INRIA行人数据集(INRIAPersonDataSet)进行训练和测试。第二章结合OpenCV介绍了HOG特征的算法实践流程和基于HOG特征的SVM分类器的原理;以及该分类器的实现以及训练过程,并在静态图像和图像序列中对训练结果进行测试和验证;第三章介绍了基于Kalman滤波器的检测跟踪相结合的算法流程,并在校内自行拍摄的图像序列上测试,第四章对本项目设计进行总结和评价。
基于HOG特征的SVM分类器行人检测方法2.1HOG特征向量HOG特征的定义是局部归一化的梯度方向直方图。其基本思想是:在一幅图像中,局部目标的表象和形状能够被梯度或边缘的方向密度分布很好地描述。实现方法为:首先将图像分成小的连通区域(即单元);然后采集细胞单元中各像素点的梯度方向直方图。最后把这些直方图进行组合构成特征描述器。为了提高性能,通常将局部直方图在块中进行对比度归一化,常用方法是:先计算各直方图在这个块中的密度,然后根据这个密度对区间中的各个细胞单元做归一化。进行归一化后,能对光照变化和阴影获得更好的效果。图2-1原始图像(左1)、HOG特征示意图(左2)和局部放大图(右1)HOG特征的维数将由检测窗口的大小,块的大小,单元格的大小,块移动的步长决定。当选定各参数均为典型参数时,检测窗口为64×128像素大小,块为16×16像素大小,单元格为8×8大小,块移动步长为8×8大小。可以得到,HOG特征向量维度为3780。算法流程如图2-2所示。图2-2HOG特征计算的算法流程OpenCV中的HOGDescriptor类已经实现了对HOG特征的计算。2.2支持向量机(SVM)的实现支持向量机(SVM)是一个统计学习中应用十分广泛的分类器,是一种有监督学习算法,甚至被认为是效果最好的分类算法之一。其基本模型是定义在特征空间的间隔最大的线性分类器。此外,核函数的引入,使得其能够处理非线性分类问题。支持向量通过使得间隔最大化,将其转换为一个凸二次规划问题。其中,C是一个提前给定的参数,用来控制目标函数中寻找最大间隔分类面和分类偏差两者之间的平衡。OpenCV中实现了SVM的训练算法。2.2.1分类器的训练分类器训练数据集为INRIA行人数据集。正样本是从各种人体照片中剪切得到1200余个固定大小的行人图片。负样本则是1200余张大小各异,内容多变的背景图片。在训练过程中,采用的训练策略如图2-3所示。图2-3训练策略首先用已有的正负样本训练一个初始的分类器,然后用初始分类器在负样本原图上进行行人检测。检测出来的矩形区域自然都是分类错误的负样本,作为难例。接着,把难例加入到初始的负样本集中,再次训练SVM,得到的分类器作为最终的SVM分类器。(1)训练样本的预处理图2-4INRIA的训练样本图片示例:正样本(上),负样本(下)针对INRIA行人数据集的特点,本文采用如下方式对样本进行处理:·对于正样本图片,进行裁剪,选取图像正中64×128像素大小的部分作为正样本图像。·对于负样本图片,每张图片产生随机的10个位置。作为矩形框的左上角,对原图片进行裁剪,裁剪出的图片大小为64×128像素。(2)训练初始分类器建立包括样本的特征向量及其对应的类别标签的样本数据集,这项工作将由初始SVM分类器完成。其训练步骤如下:1、建立两个矩阵来存储样本的HOG特征向量和它的标签;2、设置SVM模型参数;3、设置SVM模型核函数为线性核函数,惩罚因子系数取为C=0.01。4、实例化一个SVM分类器并调用训练函数进行训练。(3)产生训练难例用训练完成的初始分类器对未经过裁剪的负样本进行检测。针对负样本的检测为正的均为误检。将这些区域进行尺度变换,变为标准的64×128大小的图像,作为难例,加入负样本集合中。首先,根据预先给定的缩放比例将原始图像进行缩放,形成图像金字塔。并将金字塔每层图像和原始图像间的缩放比例以及每层图像依序存储,直到缩放后的图像不能完全覆盖检测窗口为止。图2-5图像金字塔对每一层图像按照从左到右、从上到下的顺序移动检测窗口,将提取的HOG特征送至初始SVM中进行判别。如判别为正,则用矩形框将其圈出,作为难例。整个过程的流程图如图所示。图2-6产生难例(4)SVM分类器再训练将经由上述过程产生的难例加入负样本集合中重新训练,能够改进SVM模型的性能。图2-7难例示例经观察,难例多是树木、房屋等具有明显竖直边缘的物体。由图2-1可知,HOG特征对人体的表示主要出现在竖直边缘。图2-8针对图2-7中的两个难例做出了它们的HOG特征可视图。(a)树(b)房屋图2-8难例和它的HOG特征2.2.2分类器在测试集上的表现将再训练后得到的分类器在INRIA的测试集上进行测试。对于标记为正的测试样本,其大小统一为70×134大小,取其中心64×128像素大小的图像。对于标记为负的测试样本,由于其大小不统一,测试时对于每个样本,随机裁剪20张大小固定为64×128像素的图像。将测试结果分为四类,即·真阳性(TP,truepositive):被正确分类的正样本,即“命中”。·真阴性(TN,truenegtive):被正确分类的负样本,即“正确拒绝”。·伪阳性(FP,falsepositive):被错误分类的负样本,即“假警报”。·伪阴性(FN,falsenegtive):被错误分类的正样本,即“未命中”。定义如下指标:·真阳性率(TPR,truepositiverate):即命中率:TPR=TP/P=TP/(TP+FN)·伪阳性率(FPR,falsepositiverate):即误警率:FPR=FP/N=FP/(FP+TN)·准确度(ACC,accuracy):即正确分类的样本占样本总体的比例:ACC=(TP+TN)/(P+N)测试结果如表3-1所示。可以看出,训练得到的SVM分类器对负测试样本表现较好。但对于正样本表现难以令人满意。这与训练样本集中正样本数量较少有关,加之人体姿态变化多端,而正样本中的人体姿态并没有被分类器学习,导致漏检。表3-1测试结果TP=825FP=10826TPR=76.25%FN=257TN=13491606FPR=0.74%P=1082N=13592441ACC=89.06%2.2.3对静态图像和图像序列进行检测(1)静态图像对于单幅静态图像,使用HOG特征和训练好的SVM进行检测,检测流程见图2-9。图2-9单幅图像检测将检测出的行人区域用绿色矩形框标出,数据集的原有标注信息用红色矩形框标出。下面选取几个例子进行分析。(a)(b)(c)图2-10对单幅静态图像的行人目标进行检测其中(a)图都正确检测出了图像中的行人;(b)图出现了误检测,将非行人目标识别为了行人;(c)图出现了漏检,未能将图像中的人体目标检测出来。(2)图像序列对图像序列进行检测,是行人跟踪的基础。本实验选取的图像序列来自于CVC行人数据库,共有546帧,大小统一为640×480像素,是一段在西班牙巴塞罗那城市道路上用车载摄像头录制的视频。在图像序列中进行检测的流程见图2-11。图2-11图像序列的检测流程经过实验,检测图像序列完毕共用时1310s,每秒检测帧数为0.42帧。部分检测结果如图2-12。图2-12图像序列检测示例
基于Kalman滤波器的单目标行人跟踪行人跟踪是利用图像序列的时空关系在序列中的各帧定位行人目标。根据行人的运动学模型,可以估计行人在下一帧图像的位置,实现快速检测。本章将采用卡尔曼滤波器(KalmanFilter),在检测——跟踪框架(detection-trackingframework)下,在图像序列中实现单目标行人跟踪。3.1Kalman滤波器Kalman滤波基本思想是:采用信号与噪声的状态空间模型,利用前一时刻的估计值和当前时刻的观测值来更新对状态变量的估计,求出此时刻的估计值。由于不需要记忆所有的历史数据,而只需要获知上一时刻状态的估计值以及当前状态的观测值,它适合于计算机运算和实时处理。Kalman滤波器包括两个阶段:预测与修正。具体流程如图3-1所示,在预测部分中,将上一时刻的状态和协方差映射到当前时刻。在修正部分中,首先计算当前时刻的Kalman增益,然后根据实际测量值修正状态的先验估计,接着修正协方差,转入下一轮。图3-1Kalman滤波的两个环节3.2单目标行人跟踪算法3.2.1行人运动模型和观测模型的建立在图像中,行人区域是用一个一个大小不等的矩形框来标注的,将行人的运动抽象为矩形框质心C的运动。图3-2代替行人的矩形质心轨迹可以表征行人的运动取状态变量为,其中,为行人质心C在第k帧图像中的位置;为质心C位置在相邻两帧的差分,即行人速度在图像平面的映射。因此,行人运动的模型如下:行人观测模型如下:下标m代表观测值(measurement)。3.2.2Kalman滤波器进行跟踪Kalman滤波器进行跟踪前,需要系统的初始状态和先验残差的协方差矩阵已知。系统初始状态包括质心位置和质心在ICS坐标速度。前者可简化为矩形框的质心(如图3-3),后者则需要通过相邻两帧差分得到。图3-3行人及质心的相对位置关系认为初始误差为5个像素。所以将初始残差协方差矩阵确定为。确定初始状态后,利用Kalman滤波器预测行人质心Ck在下一帧的位置Ck+1。以Ck+1为质心,建立固定大小的矩形框,作为行人检测的搜索区域。在搜索区域内,使用HOG特征进行行人检测。如果在搜索区域内检测到行人,则计算行人检测得到的矩形框质心,作为测量值,修正行人质心的估计值。如果没有检测到行人,说明发生了丢帧现象,则对先验估计值不作修正,并在下一帧中扩大搜索范围搜索范围。如果连续丢失帧数已超过3帧,则认为跟踪的行人目标已经不在图像之中,本次跟踪过程结束。算法流程如图3-4所示。图3-4跟踪算法流程图3.3Kalman滤波跟踪算法测试在CVC行人数据集上对Kalman滤波跟踪算法进行测试,图3-5展示了连续两帧检测到行人目标,利用初始状态信息,Kalman滤波器完成初始化,并预测了下一帧中的行人区域(较大的红色框区域)。图3-5连续两帧检测到行人目标,完成初始化读取下一帧图像,在预测位置附近搜索行人,检测到了行人目标(图3-6中绿色框)。利用观测值修正状态估计。修正后的位置用蓝色圆点标出,如图3-6。图3-6修正状态估计读取下一帧图像,未能在预测位置使用检测算法找到行人,则跳过修正步骤,直接进行下一个检测——跟踪周期。如图3-7。图3-7检测算法未能够在预测位置附近找到行人目标经过两帧,检测算法重新找到了行人目标。体现了此方法的鲁棒性。图3-8重新找到了行人目标当行人目标离开图像后,由于丢帧数量超过阈值,跟踪过程结束。图3-9跟踪结束由于采用了Kalman滤波器对行人位置进行预测,大大缩小了搜索范围,提高了检测速度。在此基础上,项目组成员在北京理工大学六号教学楼附近使用手机录制了测试视频,测试结果如下:图3-10找到行人目标,开始跟踪跟踪过程中,预测位置和实际检测位置误差不大,跟踪过程平稳进行。图3-11跟踪结果示意出现了检测算法没能检测到目标的问题。但跟踪过程仍在继续。图3-12检测失效,但
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 图书馆装修项目解除合同
- 智能家居居间合同示例范本
- 电子商务的社交化与分享经济
- 痛风与高尿酸血症的护理
- 化工品仓储运输安全协议
- 教育销售员工培训
- 家具定制采购合同
- 2024湘潭市工业贸易中等专业学校工作人员招聘考试及答案
- 2024湖南曙光科技技工学校工作人员招聘考试及答案
- 2024湖北职业技术学院卫生技术学院工作人员招聘考试及答案
- 仓储设备操作安全操作培训
- 上海电机学院计算机C语言专升本题库及答案
- 幼儿园公开课:大班语言《相反国》课件(优化版)
- 2023年宁波房地产市场年度报告
- 员工身心健康情况排查表
- 模拟小法庭剧本-校园欺凌
- 危险化学品经营企业安全评价细则
- 哈利波特与死亡圣器下双语电影台词
- 10以内数字的分解和组成
- 课堂教学技能讲座课件汇编
- 湖北2022年中国邮政储蓄银行湖北省分行社会招聘考试参考题库含答案详解
评论
0/150
提交评论