KCF总结报告.docx_第1页
KCF总结报告.docx_第2页
KCF总结报告.docx_第3页
KCF总结报告.docx_第4页
KCF总结报告.docx_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

通信系统创新实践项目总结报告目录1项目背景 22研究内容 22.1视频处理22.2 KCF算法32.3多尺度改进33实施方案43.1 整体方案.43.2流程图53.3任务分配53.4所负责项目具体实施53.4.1 视频分帧及坐标标注53.4.2 用KCF算法进行绝缘子跟踪63.4.3 在算法中加入多尺度部分74实验结果及分析85结论106收获和建议101项目背景视觉目标跟踪在视频智能监控和机器人视觉导航等领域有着广泛应用。绝缘子是输电线路的重要部分,它是整个输电线路安全运行的基础。传统的绝缘子巡检主要依靠人力,这种巡检方式不仅效率低,而且安全隐患非常大。近年来,随着无人机( UAV) 技术的不断发展,无人机参与电力巡检已经在全国多地展开。但是,无人机巡检的目的是要对绝缘子进行拍照或者利用绝缘子进行测距,这就要求无人机能够准确跟踪绝缘子。曾采用的跟踪绝缘子方法有:最大类间方差(OTSU)法、迭代阈值法、遗传算法(GA)、粒子群算法。尽管近年来目标跟踪技术取得了相当大的进展,但众多因素影响跟踪算法的性能,包括光照变化、遮挡和背景混杂等,以至视觉目标跟踪仍然是一个具有挑战性的课题。目前不存在单一的方法,能够成功地处理所有场景。2 项目内容2.1 视频处理 由于KCF算法中输入的是一帧一帧的图片,所以在进行跟踪前要对视频进行分帧处理;同时,也要对被跟踪的绝缘子进行坐标标注。2.2 KCF算法在 KCF 跟踪算法中,以核岭回归分类器作为核心,构建循环样本矩阵来训练该分类器,对样本进行巧妙地变换使训练数据矩阵具有循环特性,就可以通过离散傅里叶变换对角化,便能减少几个数量级的存储与计算,从而达到对目标快速有效检测跟踪的目的。 2.3 多尺度估计传统的KCF 跟踪方法始终固定尺度的矩形框去搜寻下一帧中的目标,即目标匹配模型 x 是一个固定尺寸的矩阵,不能很好地适应目标尺度发生变化的目标跟踪情况。而且将尺度估计纳入一个跟踪器中是需要很高的计算代价的,会明显降低算法的运算效率。而在理想情况下,一个精确的尺度估算方法应该健壮而且有较高计算的效率。为实现这一目标,我们使用了一个在线学习且独立于位置滤波器的滤波器进行快速地尺度估算的方法。这样有助于把尺度空间的搜索区域限制在更小范围。此外,还可以自由地选择每个独立的滤波器的特征描述。 3实施方案3.1整体方案如图所示是基于核化相关滤波器的绝缘子视频跟踪方法研究的整体方案规划: 视频分帧 坐标标注 用KCF算法进行绝缘子跟踪 跟踪绝缘子 在算法中加入多尺度部分 首先将视频进行分帧处理,然后分别在matlab环境下和C语言环境下分别用KCF算法对绝缘子进行跟踪,从而比较同种算法在不同环境下的跟踪速度及跟踪效果,最后,在matlab环境下,在算法中加入DSST算法中的尺度估计的尺度金字塔相关滤波方法,实现一种多尺度的相关滤波器跟踪方法。3.2算法流程 输入图像 上一帧的位置和尺度 位置模型、和 尺度模型、 估计的目标位置和尺度 更新位置、和 尺度模型、 其中, 位置评估: 1.参照模板在前一帧的位置,在当前帧中按照前一帧目标尺度的2倍大小提取一个样本Ztrans 2.利用Ztrans 和Atranst1、Btanst1 ,计算ytrans 3.计算max(ytrans) ,得到目标新的位置Pt 尺度评估: 4.以目标当前新位置为中心,提取33种不同尺度的样本Ztrans 5.利用Ztrans 和Atranst1、Btanst1 计算出yscale 6.计算max(yscale) ,得到目标准确的尺度St 模型更新: 7.提取样本ftrans 和fscale 8.更新位置模型Atranst 和Btranst 9.更新尺度模型Ascalet 和Bscalet 3.3.任务分配 3.4所负责项目具体内容及实施 3.4.1 视频分帧及坐标标注 在matlab环境下运行程序时,输入的是连续的图片,因此在运行程序前,需要对视频进行分帧处理,分帧程序如下fileName = F:videovideo.mp4; obj = VideoReader(fileName); numFrames = obj.NumberOfFrames;% 视频帧总数 %若不存在文件夹,则新建文件夹 if exist(ImageTest) mkdir(ImageTest); endfor k = 1 : numFrames frame = read(obj,k); %imshow(frame);%显示帧 imwrite(frame,strcat(./ImageTest/,sprintf(%04d.jpg,k),jpg); end 用imread函数读取第一帧图片,利用matlab中的数据游标工具将绝缘子的左顶点坐标标注出来,计算目标框的长度、宽度,以x,y,width,height的形式写入文本文档。3.4.2用KCF算法进行绝缘子跟踪 KCF是一种鉴别式追踪方法,这类方法一般都是在追踪过程中训练一个目标检测器,使用目标检测器去检测下一帧预测位置是否是目标,然后再使用新检测结果去更新训练集进而更新目标检测器。而在训练目标检测器时一般选取目标区域为正样本,目标的周围区域为负样本。 改变输入路径,运行程序。得到利用KCF算法 跟踪的结果,如下图所示。 原始图像 跟踪后的图像 此算法存在的一个缺点是在绝缘子发生尺度变化时,尺度框不能随之变化,如下图所示,因此要在算法中加入尺度估计的部分。3.4.3在算法中加入多尺度部分 DSST算法将跟踪分为两个部分,位置变化(translation)和尺度变化(scale estimation)。在跟踪的实现过程中,作者定义了两个correlation filter,一个滤波器(translation filter)专门用于确定新的目标所处的位置,另一个滤波器(scale filter)专门用于尺度评估。 DSST算法的亮点就是提出的基于一维独立的相关滤波器的尺度搜索和目标估计方法。具体操作方法是:在新的一帧中,先利用2维的位置相关滤波器来确定目标的新候选位置,再利用1维的尺度相关滤波器以当前中心位置为中心点,获取不同尺度的候选patch,从而找到最匹配的尺度。尺寸选择原则是: , 其中,P,R分别为目标在前一帧的宽高,a=1.02为尺度因子,S=33为尺度的数量。上述尺度不是线性关系,而是由精到粗(从内到外的方向)的检测过程. 本次项目只需要将尺度相关性滤波器加入到tracker函数中。传统的KCF算法的参数保持不变,高斯核的标准差为0.5,学习因子为0.02,正则化参数为0.0001,取HOG特征,尺度因子取1.5。4实验结果及分析

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论