论文部分内容阅读
目标检测是图像处理的基本课题,是后续识别、跟踪和分类任务的基础,在军事领域和民用领域都有广泛应用。随着检测任务数据量的增长和检测算法复杂度的增加,基于CPU串行实现的检测软件已经无法满足检测任务的实时性要求。近年来出现的GPU通用计算技术可以提供强大的并行计算能力,为目标检测的实时实现提供了可能性和研究方向。因此,基于GPU的目标检测算法研究,对提高目标检测任务的实时性具有重要意义。本文首先对GPU和CUDA编程模型作简要介绍,之后讨论现有目标检测算法的性能,并选取基于机器学习的HOG-SVM检测算法和基于深度学习的利用卷积神经网络进行目标检测的算法作为研究对象,详细介绍算法的原理,讨论算法的并行性和CUDA并行实现,并进行优化。最后对使用算法进行目标检测任务的过程作进一步的并行实现和优化,实现目标检测任务加速比的最大化。论文的具体工作如下:(1)研究CUDA的编程模型、存储模型以及CUDA程序编写和优化的流程,分析现有目标检测算法的适用性,精确性和实时性,选取算法检测性能好,实时性差的HOG-SVM算法和利用卷积神经网络进行目标检测的算法作为研究对象。(2)研究HOG-SVM算法的原理和检测流程,分析算法的并行性,并行实现HOG-SVM算法并进行优化。之后对使用HOG-SVM算法进行目标检测的过程作进一步的优化,使整个检测过程达到30-100倍的加速比。(3)研究卷积神经网络的原理,搭建基础的卷积神经网络,以此为基础构建能够完成目标检测任务的网络模型,然后分析卷积神经网络训练和检测算法的并行性,利用CUDA并行实现卷积神经网络的前向过程、后向过程和权值更新过程,并进行优化,最后对多样本批量训练和实际目标检测的过程作进一步并行和优化,使卷积神经网络的训练和检测过程达到40-50倍的加速比。