CN105160349A - 一种基于GPU平台的Haar检测目标算法 - Google Patents

一种基于GPU平台的Haar检测目标算法 Download PDF

Info

Publication number
CN105160349A
CN105160349A CN201510476204.7A CN201510476204A CN105160349A CN 105160349 A CN105160349 A CN 105160349A CN 201510476204 A CN201510476204 A CN 201510476204A CN 105160349 A CN105160349 A CN 105160349A
Authority
CN
China
Prior art keywords
haar
detection block
gpu
detection
integrogram
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510476204.7A
Other languages
English (en)
Other versions
CN105160349B (zh
Inventor
曹泉
李玲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHENZHEN HAGONGDA TRAFFIC ELECTRONIC TECHNOLOGY Co Ltd
Original Assignee
SHENZHEN HAGONGDA TRAFFIC ELECTRONIC TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHENZHEN HAGONGDA TRAFFIC ELECTRONIC TECHNOLOGY Co Ltd filed Critical SHENZHEN HAGONGDA TRAFFIC ELECTRONIC TECHNOLOGY Co Ltd
Priority to CN201510476204.7A priority Critical patent/CN105160349B/zh
Publication of CN105160349A publication Critical patent/CN105160349A/zh
Application granted granted Critical
Publication of CN105160349B publication Critical patent/CN105160349B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/07Target detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种基于GPU平台的Haar检测目标算法,包括:(1)为CPU和GPU申请所需的内存空间,读取分类器模型,固定检测框大小,计算所有尺度的缩放尺寸信息,并将数据传给GPU;(2)计算积分图和平方积分图,并得到不同尺度对应的标准差值图;(3)对所有的积分图和标准差值图进行前端的haar分类器模型检测,并将结果传给主机,由此确定剩余haar分类器模型所需要启动的线程;(4)通过弱分类器并行处理方式对需要用haar分类器模型较后端的分类器进行处理的检测框进行检测;(5)对检测框进行合并处理,得到检测目标。本发明利用GPU对现有的haar目标检测算法进行综合优化,具有很高的实用价值。

Description

一种基于GPU平台的Haar检测目标算法
技术领域
本发明涉及一种Haar检测目标算法,具体地说,是涉及一种基于GPU平台的Haar检测目标算法。
背景技术
Haar(哈尔)检测目标算法是一种利用Haar特征和级联分类器通过训练在图像上进行目标检测的方法。Haar检测目标算法由于性能优异,被广泛应用,但是,其数据结构复杂,计算量大,实现速度较慢,无法满足快速检测的要求。
发明内容
本发明的目的在于提供一种基于GPU平台的Haar检测目标算法,通过GPU平台的优化来提高Haar算法的实现效率,解决现有技术中Haar检测目标算法实现效率低的问题,使Haar算法能够适应更高实现效率的要求,提高其适用范围。
为了实现上述目的,本发明采用的技术方案如下:
一种基于GPU平台的Haar检测目标算法,包括以下步骤:
(1)初始化系统:为CPU和GPU申请所需的内存空间,读取分类器模型文件信息,固定检测框大小,计算所有尺度的缩放尺寸信息,并将数据传输到GPU设备上;
(2)计算积分图和平方积分图,并对其进行不同尺度的缩放,得到不同尺度对应的标准差值图;
(3)对所有的积分图和标准差值图进行前端的haar分类器模型的检测,并将检测结果回传给主机,由此确定剩余haar分类器模型所需要启动的线程;
(4)通过弱分类器并行处理方式对需要用haar分类器模型较后端的分类器进行处理的的检测框进行检测;
(5)对检测框进行合并处理,得到检测目标。
优选地,所述步骤(1)中,所申请的不同尺度的积分图和标准差图数据的内存空间地址为连续地址。
进一步地,所述步骤(2)中得到标准差值图的具体方法如下:
首先,将积分图和平方积分图按尺度比例进行缩放;
然后,由缩放后的积分图和平方积分图计算得到相应尺度下的标准差值图;
按照上述方式,以得到所有尺度对应的标准差值图。
再进一步地,所述步骤(3)中通过检测框并行处理对所有的检测框利用相应尺度下的积分图和标准差值图进行检测。
再进一步地,所述检测框并行处理具体为:在同一层分类器中,检测框在按照不同尺度进行缩放后的积分图上进行扫描,同一尺度下,相邻检测框扫描相邻的图像数据;且每一个检测框对应一个线程。
优选地,下一层分类器的检测框数目由上一层分类器处理得到的检测框数目决定,并将检测框数目回传给GPU平台,确定下次启动所需的线程数目。
优选地,在CPU上申请用于快速存储的页锁定内存。
准确地说,所述步骤(4)中弱分类器并行处理方式具体为:将所有尺度的检测框合并在一起,为每一个检测框分配一个线程格,并为线程格里的每个线程平均分配弱分类器。
与现有技术相比,本发明具有以下有益效果:
(1)本发明将不同尺度的积分图和标准差图等数据的内存空间申请为连续空间,方便了后续GPU访问时;而作为整体数据参数传入,既方便了访问,使得合并所有尺度的检测框进行并行检测成为了可能,又减少了寄存器数目,而寄存器的使用数目对优化效果具有很大的影响,因此能够有效提高haar算法的实现速度,提高检测效率。
(2)本发明基于GPU读取数据的特性,将积分图根据不同尺度进行缩放,分别在缩放后的积分图上进行相同尺度框的遍历,如此将所有尺度下的检测框放于一个固定尺寸的检测框中,有利于合并访问,并提高访问全局内存数据的速度。
(3)本发明将数据按分类器模型的层数进行检测,由于将所有尺度下的图像进行了并行处理,因此减少了设备与主机之间数据的传输,充分利用了GPU的计算资源,使haar算法的实现速度得到了进一步提升。
(4)本发明设置有页锁定内存中,可以将小数据直接存储其中,从而加快了GPU与CPU之间的数据交互速度,进一步提高了目标检测的效率。
(5)本发明利用GPU平台对现有的haar目标检测算法进行综合优化,能够有效提升haar算法的目标检测效率,提高其适应范围,具有很高的实用价值和推广价值。
附图说明
图1为本发明的流程示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明,本发明的实施方式包括但不限于下列实施例。
实施例
如图1所示,本发明公开的基于GPU平台的Haar检测目标算法,主要针对现有技术中存在的实现效率低的问题,利用GPU平台高度并行化、多线程、多核心的特性,以及杰出的计算效率和极高的存储器带宽的优势,来为haar算法的实现提供优化,最终达到提高haar算法检测目标效率的目的。
本发明的设计中,主要在以下三方面进行了创新与改进:
1.内存空间的申请和使用方式;
2.所有尺度下检测框并行计算的方式;
3.设置页锁定内存以加快CPU与GPU之间的数据交互。
下面通过详细描述本发明的工作过程来介绍上述技术创新。
第一步:初始化系统
系统启动后,首先为CPU和GPU申请所需的内存空间,确保不同尺度的积分图和标准差图数据的内存空间地址连续,以方便后续访问,加快访问速度;然后读取分类器模型的文件信息;再固定检测框大小,计算所有尺度的缩放尺寸信息,并将数据传输到GPU设备上。
检测区域数据主要包括常量数据,如不同尺度的缩放尺寸信息、分类器模型数据等。这些数据均由CPU计算或读取出来,然后传输到GPU平台上。
第二步:计算积分图和平方积分图,并其进行不同尺度的缩放,得到不同尺度对应的标准差值图。
本发明基于GPU读取数据的特性,将积分图根据不同尺度进行缩放,由不同尺度的积分图和平方积分图计算得到相应尺度下的标准差值图。按照此方式得到所有尺度对应的标准差值图。
通过这种方法将所有尺度下的检测框置于一个固定值的检测框中,有利于合并访问,提升访问全局内存数据的速度。
第三步:对所有的积分图和标准差值图进行前端的一层或几层haar分类器模型的检测,并将检测结果回传给主机,由此确定剩余haar分类器模型所需要启动的线程。然后通过弱分类器并行处理方式对需要用haar分类器模型较后端的几层分类器进行处理的的检测框进行检测。
以第二步得到的图像数据为基础,使用固定尺寸的检测框在缩放后的不同尺度的积分图上进行扫描。基于模型分类器的特性,首先,第一层强分类器对输入的所有检测框进行检测,无法通过此分类器判定的检测框抛弃,通过该分类器判定的检测框则进行第二层强分类器检测,无法通过第二层分类器判定的检测框也抛弃,通过的检测框则进行第三层强分类器检测,以此类推,直到检测框并行处理完成。
对于后几层强分类器需要处理的检测框,由于其数量已经很小,所以将所有尺度的检测框合在一起进行处理,并为每一个检测框分配一个线程格,为线程格里的每个线程平均分配一个强分类器中的几个弱分类器,实现弱分类器的并行处理。
对于进行检测框并行处理的强分类器,为每一个检测框分配一个线程。而对于后几层的强分类器,为每一个检测框分配一个线程格,每个线程分配了几个弱分类器。基于这种方式的扫描,在分类器第一层检测时,保证了相邻线程在同一尺度的积分图上扫描时读取的是相邻的图像像素。而层与层之间,由于后面强分类器层的线程资源启动数量取决于上一层强分类检测的结果,所以在工作时,需要将上一层强分类器检测的相关结果从GPU上传输回CPU上。
在整个过程中,CPU上设置有页锁定内存,可以将类似上一层强分类器检测的相关结果等小数据直接存储于页锁定内存中,以实现快速传输。
第四步:对最后通过分类器判定的检测框进行合并处理,即可得到检测目标。
通过上述过程,可以有效地提高haar算法的实现效率,以满足不同目标检测的速度要求,达到扩大haar算法适用范围的目的。
本发明设计巧妙,逻辑紧凑,架构合理,解决了现有技术中haar算法因数据结构复杂、运算量大,导致实现效率低下,无法满足快速检测的问题,与现有技术相比,具有突出的实质性特点和显著的进步,具有很高的实用价值。
上述实施例仅为本发明的优选实施例,并非对本发明保护范围的限制,但凡采用本发明的设计原理,以及在此基础上进行非创造性劳动而作出的变化,均应属于本发明的保护范围之内。

Claims (8)

1.一种基于GPU平台的Haar检测目标算法,其特征在于,包括以下步骤:
(1)初始化系统:为CPU和GPU申请所需的内存空间,读取分类器模型文件信息,固定检测框大小,计算所有尺度的缩放尺寸信息,并将数据传输到GPU设备上;
(2)计算积分图和平方积分图,并对其进行不同尺度的缩放,得到不同尺度对应的标准差值图;
(3)对所有的积分图和标准差值图进行前端的haar分类器模型的检测,并将检测结果回传给主机,由此确定剩余haar分类器模型所需要启动的线程;
(4)通过弱分类器并行处理方式对需要用haar分类器模型较后端的分类器进行处理的的检测框进行检测;
(5)对检测框进行合并处理,得到检测目标。
2.根据权利要求1所述的一种基于GPU平台的Haar检测目标算法,其特征在于,所述步骤(1)中,所申请的不同尺度的积分图和标准差图数据的内存空间地址为连续地址。
3.根据权利要求1所述的一种基于GPU平台的Haar检测目标算法,其特征在于,所述步骤(2)中得到标准差值图的具体方法如下:
首先,将积分图和平方积分图按尺度比例进行缩放;
然后,由缩放后的积分图和平方积分图计算得到相应尺度下的标准差值图;
按照上述方式,以得到所有尺度对应的标准差值图。
4.根据权利要求1所述的一种基于GPU平台的Haar检测目标算法,其特征在于,所述步骤(3)中通过检测框并行处理对所有的检测框利用相应尺度下的积分图和标准差值图进行检测。
5.根据权利要求4所述的一种基于GPU平台的Haar检测目标算法,其特征在于,所述检测框并行处理具体为:在同一层分类器中,检测框在按照不同尺度进行缩放后的积分图上进行扫描,同一尺度下,相邻检测框扫描相邻的图像数据;且每一个检测框对应一个线程。
6.根据权利要求5所述的一种基于GPU平台的Haar检测目标算法,其特征在于,下一层分类器的检测框数目由上一层分类器处理得到的检测框数目决定,并将检测框数目回传给GPU平台,确定下次启动所需的线程数目。
7.根据权利要求6所述的一种基于GPU平台的Haar检测目标算法,其特征在于,在CPU上申请用于快速存储的页锁定内存。
8.根据权利要求1或7所述的一种基于GPU平台的Haar检测目标算法,其特征在于,所述步骤(4)中弱分类器并行处理方式具体为:将所有尺度的检测框合并在一起,为每一个检测框分配一个线程格,并为线程格里的每个线程平均分配弱分类器。
CN201510476204.7A 2015-08-06 2015-08-06 一种基于GPU平台的Haar检测目标方法 Active CN105160349B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510476204.7A CN105160349B (zh) 2015-08-06 2015-08-06 一种基于GPU平台的Haar检测目标方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510476204.7A CN105160349B (zh) 2015-08-06 2015-08-06 一种基于GPU平台的Haar检测目标方法

Publications (2)

Publication Number Publication Date
CN105160349A true CN105160349A (zh) 2015-12-16
CN105160349B CN105160349B (zh) 2019-06-18

Family

ID=54801201

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510476204.7A Active CN105160349B (zh) 2015-08-06 2015-08-06 一种基于GPU平台的Haar检测目标方法

Country Status (1)

Country Link
CN (1) CN105160349B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107563392A (zh) * 2017-09-07 2018-01-09 西安电子科技大学 使用OpenCL加速的YOLO目标检测方法
US20180293097A1 (en) * 2017-04-10 2018-10-11 Intel Corporation Enabling a Single Context to Operate as a Multi-Context
CN110289990A (zh) * 2019-05-29 2019-09-27 清华大学 基于gpu的网络功能虚拟化系统、方法及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011074014A2 (en) * 2009-12-16 2011-06-23 Tata Consultancy Services Ltd. A system for lip corner detection using vision based approach
CN104298969A (zh) * 2014-09-25 2015-01-21 电子科技大学 基于颜色与haar特征融合的人群规模统计方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011074014A2 (en) * 2009-12-16 2011-06-23 Tata Consultancy Services Ltd. A system for lip corner detection using vision based approach
CN104298969A (zh) * 2014-09-25 2015-01-21 电子科技大学 基于颜色与haar特征融合的人群规模统计方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ERIC LI 等: "GPU AND CPU COOPERATIVE ACCELARATION FOR FACE DETECTION ON MODERN PROCESSORS", 《2012 IEEE INTERNATIONAL CONFERENCE ON MULTIMEDIA AND EXPO》 *
M. MARTINEZ-ZARZUELA等: "AdaBoost Face Detection on the GPU Using Haar-Like Features", 《IWINAC 2011》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180293097A1 (en) * 2017-04-10 2018-10-11 Intel Corporation Enabling a Single Context to Operate as a Multi-Context
US11150943B2 (en) * 2017-04-10 2021-10-19 Intel Corporation Enabling a single context hardware system to operate as a multi-context system
CN107563392A (zh) * 2017-09-07 2018-01-09 西安电子科技大学 使用OpenCL加速的YOLO目标检测方法
CN110289990A (zh) * 2019-05-29 2019-09-27 清华大学 基于gpu的网络功能虚拟化系统、方法及存储介质
CN110289990B (zh) * 2019-05-29 2020-06-12 清华大学 基于gpu的网络功能虚拟化系统、方法及存储介质

Also Published As

Publication number Publication date
CN105160349B (zh) 2019-06-18

Similar Documents

Publication Publication Date Title
US11600059B2 (en) Systems and methods for providing an image classifier
JP2020038619A (ja) 物体検出方法、装置及び記憶媒体
JP7230294B2 (ja) オブジェクト検出のためのシステム及び方法
US11574395B2 (en) Damage detection using machine learning
US20160062802A1 (en) A scheduling method for virtual processors based on the affinity of numa high-performance network buffer resources
CN113051216B (zh) 一种基于FPGA加速的MobileNet-SSD目标检测装置及方法
Blair et al. Characterizing a heterogeneous system for person detection in video using histograms of oriented gradients: Power versus speed versus accuracy
CN104025118A (zh) 使用扩展surf特征的对象检测
CN101271513A (zh) 一种指纹识别系统芯片及其实现方法
CN109934077B (zh) 一种图像识别方法和电子设备
CN105160349A (zh) 一种基于GPU平台的Haar检测目标算法
WO2020125062A1 (zh) 一种图像融合方法及相关装置
RU2013134325A (ru) Устройство и способ распознавания жестов на основе анализа множества возможных границ раздела
Li et al. Gpu and cpu cooperative accelaration for face detection on modern processors
Advani et al. A scalable architecture for multi-class visual object detection
Wang et al. An FPGA-based online reconfigurable CNN edge computing device for object detection
WO2021196925A1 (zh) 移动物体检测和跟踪方法以及装置
Koo et al. OpenCL-Darknet: an OpenCL implementation for object detection
CN102855484A (zh) 基于局部积分图像处理的目标检测方法、装置及系统
Xie et al. GPU-based fast scale invariant interest point detector
Lee et al. Accelerating a computer vision algorithm on a mobile SoC using CPU-GPU co-processing: a case study on face detection
CN103577160A (zh) 一种面向大数据的特征提取并行处理方法
Sada et al. A dataflow pipelining architecture for tile segmentation with a sparse MobileNet on an FPGA
CN105022889A (zh) 一种基于视频的快速模板匹配gpu实现方法
Moussawi et al. An FPGA-accelerated design for deep learning pedestrian detection in self-driving vehicles

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant