首页> 中文学位 >基于GPGPU实现实时运动检测的研究
【6h】

基于GPGPU实现实时运动检测的研究

代理获取

目录

声明

摘要

第1章 引言

1.1 课题研究背景

1.2 课题研究内容

第2章 系统理论研究

2.1 GPU通用计算理论研究

2.1.1 GPU介绍

2.1.2 GPU运算的技术优势

2.1.3 GPU与CPU的类比

2.2 运动目标检测算法研究

2.2.1 运动目标检测算法总览

2.2.2 光流场算法简介

2.2.3 金字塔光流场算法

2.2.4 金字塔光流场算法迭代求解

2.3 本章小结

第3章 技术路线研究

3.1 Direct3D基础

3.1.1 Direct3D概述

3.1.2 Direct3D术语及初始化介绍

3.1.3 Direct3D图形基础

3.1.4 Direct3D渲染管线

3.2 DirectShow视频捕捉研究

3.2.1 应用程序框架

3.2.2 数据流控制

3.2.3 视频捕捉卡介绍

3.2.4 视频捕捉介绍

3.3 HLSL语言GPU编程介绍

3.3.1 可编程GPU介绍

3.3.2 Direct3D效果框架(Effect Framework)

3.3.3 HLSL语言编程

3.4 本章小结

第4章 系统实现

4.1 系统应用程序框架

4.2 视频捕捉模块实现

4.2.1 视频捕捉系统初始化

4.2.2 选择视频捕捉设备

4.2.3 视频预览

4.2.4 预览窗口初始化

4.2.5 视频数据流重定向

4.3 视频处理模块实现

4.3.1 Direct3D初始化

4.3.2 视频处理部分实现

4.4 视频处理算法实现

4.4.1 HLSL算法实现

4.4.2 边界和亚像素处理

4.5 本章小结

第5章 实验结果分析

5.1 系统界面

5.2 系统实验结果分析

5.3 CPU与GPGPU实现效率比较与分析

结论

致谢

参考文献

攻读学位期间取得的学术成果

展开▼

摘要

运动目标检测以及跟踪课题方面的研究是电子与通信领域中最具挑战性的课题之一,同时对于视觉检测和跟踪的实际应用很多,它们跨越了包括监控系统,车辆跟踪和航空航天应用等等领域。在运动目标检测和跟踪算法中,由于信息量的增大以及对算法精确度要求的提升,图像处理占用CPU的时间越来越长,CPU已经逐渐无法满足实时图像处理算法的效率要求。2003年拥有32位浮点数的顶点处理器和像素着色器的GPU出现,使在GPU上处理图像成为可能,同时随着GPU对流控制语句数量和复杂度支持的不断提升,使得在GPU实现实时复杂图像处理算法成为了可能。
  本课题针对该问题提出一种用于提高图像处理算法实现效率的方法,使用GPGPU加速实现高效的图像处理算法。为验证课题提出方法的正确性,设计中使用运算量很大的金字塔光流场算法实现运动目标检测,通过对其结果的分析验证课题目标的正确性。课题主要由系统基础理论研究、系统技术路线研究、系统实现、实验结果分析四个部分构成,从理论到实践的过程完成运动目标检测算法,并在结果分析中验证课题研究目标的正确性。
  首先对系统的基础理论进行了研究,系统的基础理论研究主要包括GPU编程与通用计算以及目标检测算法研究两个方面:在GPU编程与通用计算方面,对GPU的可编程顶点着色器和可编程像素着色器进行了研究,掌握了GPU着色器程序的工作原理。对GPU适用于通用计算的技术优势进行了研究,分析了GPU流处理并行运算模式在数值运算方面的优势。同时将GPU编程和CPU编程进行了类比,确定GPU实现算法的编程思路;在目标检测算法方面,首先对目前通用的目标检测算法进行了研究,对不同算法的优势和缺陷进行了比对,分析发现光流场算法存在对于硬件运算速度的依赖。在对基本光流场算法研究的基础上,对金子塔光流场算法进行了研究,探讨了使用金字塔光流场算法如何解决光流场无法解决大范围像素移动的缺陷,并通过对其迭代求解过程的研究,总结出了金字塔光流场算法实现的伪代码。
  其次对系统实现所需要的技术进行了研究,主要包括视频采集、视频渲染和视频算法三个方面:通过对Direct3D基础以及其渲染管线的研究,分析了GPU在整个系统处理过程中的工作原理包括:CPU如何将数据传输到GPU以及如何让GPU在实现算法处理后将数据传输到CPU,剖析了局部坐标、世界坐标、视图坐标以及投射坐标之间的关系与相互转换所使用的矩阵的意义;通过对DireetShow视频采集框架的研究,通晓框架的数据流控制方法,用以实现对数据流的截获以及重定向,分析了在不同驱动视频捕捉卡的情况下,如何实现视频的采集和格式配置或者获取,最终建立基本的视频捕捉系统框架;通过对Direct3D效果框架和HLSL编程的研究,掌握了GPU的可编程流水线原理以及如何使用GPU编程的基本语法以及语义绑定完成基本的GPU程序编程框架。
  最后在理论研究与技术路线研究的基础上,建立基本的图像采集与处理系统,用于实现金字塔光流场算法并显示其最终结果。系统分为图像采集模块和图像处理模块两部分:图像采集模块使用微软DirectShow视频捕捉框架,实现视频捕捉系统的初始化、选择视频捕捉设备、视频预览窗口的控制和初始化、视频流数据的重定向等四个功能,其中视频流的重定向使用了HOOK技术,通过改变视频流接收函数的函数指针实现视频流数据的重定向;图像处理模块使用微软的Direct3D接口与效果框架,实现Direct3D的初始化、GPGPU算法与应用程序的连接以及处理后的图像渲染,对Direct3D的初始化主要包含注册Direct3D接口、检测系统显卡对Direct3D中部分参数的支持和顶点处理、注册并创建IDirectDevice接口、初始化视窗坐标和投射坐标转换矩阵、创建纹理并初始化纹理坐标、编译着色器程序并获取变量句柄,在基础理论研究中总结出伪代码的基础上,实现金字塔光流场算法的HLSL着色器语言实现。建立简单的Windows窗口程序整合图像采集模块和图像处理模块,完成GPU实现金字塔光流场算法可行性和高效性的验证平台。
  在理论研究、技术路线研究以及最后系统实现的基础上,对实现后的目标检测软件进行了测试,结果显示软件运行正常,能初步预览视频图像。使用该软件针对上下方向高速移动、上下方向低速移动、前后方向高速方向、前后方向低速运动四种情况进行了测试和测试结果记录,通过对系统软件结果分析,基于GPGPU实现的金字塔光流场算法可实现运动检测,为GPGPU应用于实时图像处理领域提供有力的理论和实践依据。系统软件使用CPU实现了理论研究中的金字塔光流场算法,对使用CPU和GPU实现算法的计算时间以及CPU GPU型号进行了记录,通过对结果中CPU与GPU性价比分析以及CPU与GPGPU实现金字塔光流场算法的运算时间进行对比,得出基于GPGPU实现运动检测比基于CPU实现的方案提高了100倍以上速度的结论。本课题的研究,对于探究使用GPGPU实现高效图像算法具有一定的参考价值,对目前国内外研究GPU通用计算也具有一定的学术意义。

著录项

  • 作者

    袁灿;

  • 作者单位

    成都理工大学;

  • 授予单位 成都理工大学;
  • 学科 电子与通信工程
  • 授予学位 硕士
  • 导师姓名 陈金鹰,黄兆雄;
  • 年度 2015
  • 页码
  • 总页数
  • 原文格式 PDF
  • 正文语种 中文
  • 中图分类 TP391.41;
  • 关键词

    运动目标检测; 光流场算法; 视频捕捉; 图像处理;

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号