CN102760053A - 基于cuda并行计算及wcf架构的人体检测方法 - Google Patents

基于cuda并行计算及wcf架构的人体检测方法 Download PDF

Info

Publication number
CN102760053A
CN102760053A CN2012102056657A CN201210205665A CN102760053A CN 102760053 A CN102760053 A CN 102760053A CN 2012102056657 A CN2012102056657 A CN 2012102056657A CN 201210205665 A CN201210205665 A CN 201210205665A CN 102760053 A CN102760053 A CN 102760053A
Authority
CN
China
Prior art keywords
human body
body detection
cuda
framework
wcf
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.)
Pending
Application number
CN2012102056657A
Other languages
English (en)
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.)
Southeast University
Original Assignee
Southeast University
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 Southeast University filed Critical Southeast University
Priority to CN2012102056657A priority Critical patent/CN102760053A/zh
Publication of CN102760053A publication Critical patent/CN102760053A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

本发明公开了一种基于CUDA并行计算及WCF架构的人体检测方法,包括以下步骤:采用CUDA架构进行基于计算机视觉的视频监控人体检测系统开发,利用GPU图形处理器的并行计算能力,对基于HoG特征及SVM分类器的人体检测算法并行加速;采用WCF架构进行分布式计算,将视频数据采集与数据分析处理分别在监控终端与GPU服务器进行;采用流水线架构优化系统实现流程,将监控终端与GPU服务器的工作并发处理,减少时间开销,优化系统资源配置。本发明使得在该架构下开发基于HoG特征的人体检测系统具有良好的实时性、兼容性及可扩展性。

Description

基于CUDA并行计算及WCF架构的人体检测方法
技术领域
本发明涉及一种基于CUDA并行计算及WCF分布式架构的视频监控人体检测的方法,属于智能计算机视觉及模式识别和图像处理领域。
背景技术
无论是在计算机视觉研究领域或智能视频监控的应用领域,人体检测一直是一个热点的研究课题,是计算机视觉、模式识别、机器学习、图像处理、人工智能等多个学科交叉的产物,是人体行为分析、危险预警等应用的基础。人体检测在多个领域都有广泛的应用,在室外及道路环境下,人是道路交通的主要参与者,对人体的检测定位可有效地应用于汽车安全辅助驾驶领域,及时警告驾驶员可能与车辆附近的行人发生碰撞。在室内监控安防领域,对人体的定位和监控可以有效的防止异常情况的发生,对可能出现的违法情况产生预警,对疑难案件的侦破提供有力的支持。
然而由于光照、行人自身姿态的变化、遮挡等因素,造成了人体检测是一个非常困难的问题,目前有很多方法用于行人检测,如基于运动物体检测和模板匹配的方法、基于Haar特征的方法、基于HoG特征的方法等,其中目前广泛使用的基于运动物体检测的方法受光照的影响较大,摄像头不可移动,且人体姿态各异导致建模困难,无法达到良好的检测效果;基于Haar特征的方法成功运用于人脸检测,并拥有较高的检测率和检测速度。但Haar特征是一种基于灰度分布的区域特征,人体不同于人脸,由于衣着的影响,在灰度分布上没有明显特征。基于HoG特征的方法描述了局部图像的梯度强度和梯度方向的分布,对人体的外观有很好的表征,采用SVM分类器训练分类,经证明能取得较好的检测效果,但特征维数太高,计算复杂,造成了应用困难。在此情况下,研究创新的基于HoG特征的人体检测加速算法,突破其实时性瓶颈,具有极大的商用价值。研究成果可应用于智能交通监控、辅助驾驶和室内监控等多个领域。
在此发明以前,基于视觉的人体检测系统通常采用单一计算机,基于CPU的方式进行开发,基于运动物体检测和模板匹配等方法,虽然降低了系统开发的难度,但也大大限制了其应用场景。2007年,NVIDIA推出了CUDA(统一计算设备架构)。在CUDA架构中,GPU(图形处理器)成为了数据并行计算的硬件设备,取代了CPU的部分功能,实现了CPU+GPU异构编程。GPU拥有远超过CPU的核心数量和并行计算能力,对通用计算的加速效果非常明显。将基于HoG特征的人体检测过程转移到GPU运行,可以大大增加系统的运行速度,使这一项技术的应用成为可能。
然而CUDA架构需要NVIDIA显卡的支持,如果采用单一计算机的模式,会大大增加终端的成本,在这种情况下,分布式架构是一个很好的选择,这样能够将全部或者主要的计算需求从视频采集的设备端转移到服务器端,降低了设备端的性能要求,同时也实现了远程识别,便于管理和维护以及数据的统计和分析。
发明内容
本发明目的就在于克服上述问题,提出一种基于CUDA并行计算及WCF架构的人体检测方法,使得在该架构下开发基于HoG特征的人体检测系统具有良好的实时性、兼容性及可扩展性。
本发明采用的技术方案是:一种基于CUDA并行计算及WCF架构的人体检测方法,包括以下步骤:
(1)采用CUDA架构对基于HoG特征及SVM(支持向量机)分类器的人体检测算法进行加速,CUDA架构对通用计算具有良好的加速效果,并且已经在分子动力学、量子化学、生物信息学、计算流体力学、计算机构力学等方面得到了广泛的应用和验证。借助CUDA架构,可以将在传统CPU上运行的人体检测算法转移到GPU运行,利用GPU的多核心、高带宽、高浮点计算能力等特性,实现一个数量级以上的算法加速,从而解决制约人体检测系统开发最大的制约-实时性问题,使得人体检测技术可以在所有提供CUDA支持的终端运行。
(2)WCF架构是进行分布式计算的有效方式,并被证实效率仅次于分布式过程调用。在本发明中,采用WCF架构,将单一终端的结构转化为终端与服务器的云状结构,终端只负责视频数据的采集,数据通过网络传输到服务器进行处理和分析。为了减少网络数据传输的延时,采用了MPEG-4的视频压缩算法,减少数据传输的冗余,提高传输速度,节省带宽。
(3)采用WCF架构之后,人体检测系统的检测过程将在客户端和服务器两部分进行,本发明中采用了流水线的结构,将系统的时间利用率最大化,当服务器处理一帧数据的同时,客户端可以对下一帧数据进行压缩和传输,两者流水线合作,降低时间开销。
本发明的有益效果:
1. 采用CUDA架构,提升了人体检测算法的运行速度近20倍,使得在CPU架构下无法满足实时性的人体检测算法提速,达到并超过实时性的要求,使得系统集成和应用成为可能。
2. 使用WCF架构,将数据的采集和处理过程分离,大大降低了对于终端的硬件要求,提升了系统的兼容性和可扩展性,可适应嵌入式摄像头、PC监控终端、移动监控终端等各种复杂情况,在服务端采用NVIDIA GPU服务器或服务器集群,便于管理和维护。
3. 采用MPEG-4视频压缩,通过网络传输数据,并在终端完成计算。通过初步处理视频,减少冗余数据传输的方式提高网络传输的性能并节省带宽。
4. 提出流水线的处理流程,将客户端和服务端的处理过程并行,大大增加了系统资源的利用率,减少了时间开销。
附图说明
图1为HoG特征提取流程图;
图2为传统的人体检测算法流程;
图3为基于GPU的人体检测算法流程;
图4为在各分辨率下CUDA加速的效果;
图5为基于WCF的分布式网络架构;
图6为基于网络传输的人体检测算法结构;
图7为流水线并行的系统架构;
图8为采用流水线并行的加速效果。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步说明:
一、 使用CUDA对基于HoG特征及SVM分类器的人体检测算法加速
1.1  基于HoG特征及SVM分类器的人体检测算法
HoG特征描述了图像局部像素区域的梯度强度和梯度方向的分布,用来表征人体的外观和形状。其提取流程如图1所示。
对于每个像素点的梯度定义如下:
Figure 2012102056657100002DEST_PATH_IMAGE001
                              (1)
其中,表示像素
Figure 2012102056657100002DEST_PATH_IMAGE003
点的灰度值,
Figure 30067DEST_PATH_IMAGE004
表示像素
Figure 934438DEST_PATH_IMAGE006
在水平方向和垂直方向的梯度。那么,点的梯度幅值和方向为:
Figure 955746DEST_PATH_IMAGE008
                              (2)
Figure DEST_PATH_IMAGE009
                                 (3)
在HoG特征提取过程中,采用的检测窗口一般为64*128,将检测窗口划分成N个8*8的cell单元,每4个cell组合成为1个block作为处理单元,block以步长n移动扫描整个图像,block之间可以有重叠,在cell内计算各个方向梯度值的分布,8*8即64个点的梯度值得到之后,按梯度的方向,将0-180度划分为9个bin(区间),即0-20度,20-40度,……,160-180度,以梯度的幅值为权值进行投影,有:
                       (4)
在每个block上对4个cell的向量进行串联拼接,得到36维向量,将这个36维向量归一化,即模值归一化为1,归一化的目的是消除图像光照不均造成的影响,得到归一化后的block 36维特征。block在检测窗口上以8的步长进行移动,即每相邻的block有一半重叠,检测窗口大小为64*128,最后可以得到7*15个不同的block,每个block提取36维归一化的特征,简单串联后,总HoG特征维数为7*15*36=3780维。
1.2  基于CUDA的人体检测算法加速
传统的HoG特征提取人体检测的过程可以分为以下几个步骤(如图2所示):图像预处理—构建图像金字塔—计算梯度—统计梯度直方图—直方图归一化—SVM分类判别—检测结果融合并显示。
考虑到基于HoG特征人体检测在并行性上的显著特点,可以将密集计算由CPU转移到GPU来完成,如图3所示,其中图像金字塔构建,HoG特征提取,SVM分类器判别都可以用这一思想来实现:
1) 图像金字塔的构建与梯度计算:采用双线性插值的方法进行图像的缩小操作。对于缩小后的目标图像,其中每一个点都只和原始图像有关,每一个点的计算过程都是独立的,并行化的做法就是对目标图像中每个16*16的像素块中的256个像素并行计算,对应16*16的线程块,即256个线程。梯度的计算与图像缩放相近,也是采用16*16的线程块对16*16的像素块并行计算。
2) 在HoG特征框中,每个cell单元的一列由一个线程独立运算。每个block单元由4个8*8的cell单元组成,在统计梯度直方图时,每个cell单元的同一列用一个流处理器负责,即8个流处理器完成1个cell的直方图统计,32个流处理器完成1个block的直方图统计。
3) 每一个16*16的block转变为36维向量,并行计算时这36维向量对应着36个流处理器,即HoG特征的block与CUDA的线程块是对应的。当所有7*15个block的36为特征向量确定后,串联成为3780维特征向量,将结果送入SVM分类器分类判决,每个检测窗口对应1个流处理器。当金字塔所有图层的检测窗口全部检测结束后,把检测结果传回CPU进行融合并显示。
图4给出了在各个分辨率下的GPU加速效果,获得了平均20倍以上的算法加速。
二、 基于WCF的分布式结构
WCF是由微软发展的一组数据通信的应用程序开发接口,20世纪末,面向服务架构(Service-Oriented Architecture) 开始盛行于软件工业中,因此微软重新查看了这些通信方法,并设计了一个统一的程序开发模型,对于数据通信提供了最基本最有弹性的支持,这就是 Windows Communication Foundation。WCF使用标准的Internet协议进行通信,较传统的中间件、网格等分布式计算架构有着显著的优势,即WCF架构能够兼容任何平台下的应用,或者说基于WCF架构开发的应用具有传统架构所无法比拟的可扩展性。另外一方面,WCF技术具有跨平台性,采用的是性能稳定的、基于消息的异步技术,在改变任何一个端口的情况下,应用仍可不受影响的工作,同时任何一个部件内部的任何改变都不会要求其他部分随之改变,这就带来了良好的可升级性。
在实际应用中的监控终端有很多种形式,多数为嵌入式摄像头设备,PC监控终端,移动PC监控终端等,以嵌入式摄像头为主,这些监控终端的特点普遍是CPU频率较低,内存较小,即使是PC监控终端也未必装载NVIDIA显卡,这就造成在终端实现智能视频分析算法的困难。在这种情况下,网络化的智能视频检测系统具有采集、处理分离的优势,在客户端只负责数据的采集,通过网络将数据传输到后端处理,服务器处理完毕之后,可以将检测结果返回客户端显示,这样可以大大降低终端的成本,方便监控网络的建立,图5给出了基于WCF的网络结构图。
WCF架构可以提供网络化的基本支持,基于WCF的智能视频人体检测系统按照以下方式建立,算法结构如图6所示:
1) 在服务器开发人体检测算法程序接口,并挂载到IIS,以服务的形式发布。
2) 客户端采集视频并通过网络传输到服务器处理。
3) 服务器将处理结果返回客户端显示。
在网络数据传输的过程中,原始图像的数据流密度很高,对通信信道的带宽要求很大,因此必须经过图像压缩的过程,以减少数据传输的时间开销。MPEG-4是由国际标准化组织IEC活动图像专家组(Motion Pictures Expert Group, MPEG)制定的一套用于音频、视频信息的压缩编码标准,广泛用于音视频文件的的压缩和网络音视频数据的传输。在本项目中,视频数据通过以太网的方式传输,应用MPEG-4编码可以有效地减少数据流量。
三、        服务端与客户端的流水线并行
对于每一帧视频数据的处理,分为客户端与服务器两个部分,两个部分的操作在不同的硬件载体上完成,当客户端在处理数据的时候,服务端在等待客户端的数据输入;同样的,当服务端处理数据的时候,客户端也在等待结果的返回。这样的系统执行顺序非常浪费资源,同一时间,客户端和服务器必然有一端闲置。
为了解决上述的问题,在本发明中采用流水线并行的体系,当服务器端接收到视频数据的同时,客户端同时进行下一帧图像的压缩和传输工作,如图7所示,这样就可以将服务器端的图像解压缩和处理工作与客户端上的图像压缩工作同时进行,采用并发的处理流程,实现系统架构的优化,实验证明,在不同的图像分辨率下均可取得良好的加速效果,,图8给出了采用流水线并行技术后的加速效果。
应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。

Claims (2)

1. 一种基于CUDA并行计算及WCF架构的人体检测方法,其特征在于:包括以下步骤:
(1)采用CUDA架构进行基于计算机视觉的视频监控人体检测系统开发,利用GPU图形处理器的并行计算能力,对基于HoG特征及SVM分类器的人体检测算法并行加速;
(2)采用WCF架构进行分布式计算,将视频数据采集与数据分析处理分别在监控终端与GPU服务器进行;
(3)采用流水线架构优化系统实现流程,将监控终端与GPU服务器的工作并发处理,减少时间开销,优化系统资源配置。
2. 根据权利要求1所述的一种基于CUDA并行计算及WCF架构的人体检测方法,其特征在于:所述步骤(2)中对视频数据采用MPEG-4的压缩传输以减少带宽需求。
CN2012102056657A 2012-06-20 2012-06-20 基于cuda并行计算及wcf架构的人体检测方法 Pending CN102760053A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2012102056657A CN102760053A (zh) 2012-06-20 2012-06-20 基于cuda并行计算及wcf架构的人体检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2012102056657A CN102760053A (zh) 2012-06-20 2012-06-20 基于cuda并行计算及wcf架构的人体检测方法

Publications (1)

Publication Number Publication Date
CN102760053A true CN102760053A (zh) 2012-10-31

Family

ID=47054520

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012102056657A Pending CN102760053A (zh) 2012-06-20 2012-06-20 基于cuda并行计算及wcf架构的人体检测方法

Country Status (1)

Country Link
CN (1) CN102760053A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103823659A (zh) * 2012-11-19 2014-05-28 苏州博远容天信息科技有限公司 一种通讯多线程技术
CN106254458A (zh) * 2016-08-04 2016-12-21 山东大学 一种基于云机器人视觉的图像处理方法、平台及系统
CN106845503A (zh) * 2017-01-22 2017-06-13 深圳市保千里电子有限公司 一种Hog并行化设计方法及系统
CN106952215A (zh) * 2017-02-27 2017-07-14 珠海全志科技股份有限公司 一种图像金字塔特征提取电路、装置及方法
CN109190590A (zh) * 2018-09-19 2019-01-11 深圳市美侨医疗科技有限公司 一种尿沉渣结晶识别方法、装置、计算机设备及存储介质
CN109409309A (zh) * 2018-11-05 2019-03-01 电子科技大学 一种基于人体检测的智能报警系统和方法
CN110149355A (zh) * 2018-02-13 2019-08-20 大猩猩科技股份有限公司 一种分布式的影像分析系统
CN112181689A (zh) * 2020-09-30 2021-01-05 华东师范大学 一种在云端下进行gpu内核程序高效率调度的运行时系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101655907A (zh) * 2009-08-28 2010-02-24 大连鑫奇辉科技有限公司 机车司机行车状态监控智能报警系统
US20110154339A1 (en) * 2009-12-17 2011-06-23 Electronics And Telecommunications Research Institute Incremental mapreduce-based distributed parallel processing system and method for processing stream data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101655907A (zh) * 2009-08-28 2010-02-24 大连鑫奇辉科技有限公司 机车司机行车状态监控智能报警系统
US20110154339A1 (en) * 2009-12-17 2011-06-23 Electronics And Telecommunications Research Institute Incremental mapreduce-based distributed parallel processing system and method for processing stream data

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
周晓阳: "基于GPU通用计算CUDA架构的人体检测方法", 《信息化研究》 *
王兴武: "基于SOA机场防入侵系统的研究", 《计算机技术与发展》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103823659A (zh) * 2012-11-19 2014-05-28 苏州博远容天信息科技有限公司 一种通讯多线程技术
CN106254458A (zh) * 2016-08-04 2016-12-21 山东大学 一种基于云机器人视觉的图像处理方法、平台及系统
CN106254458B (zh) * 2016-08-04 2019-11-15 山东大学 一种基于云机器人视觉的图像处理方法、平台及系统
CN106845503A (zh) * 2017-01-22 2017-06-13 深圳市保千里电子有限公司 一种Hog并行化设计方法及系统
CN106845503B (zh) * 2017-01-22 2018-04-17 深圳市保千里电子有限公司 一种Hog并行化设计方法及系统
CN106952215A (zh) * 2017-02-27 2017-07-14 珠海全志科技股份有限公司 一种图像金字塔特征提取电路、装置及方法
CN106952215B (zh) * 2017-02-27 2020-02-28 珠海全志科技股份有限公司 一种图像金字塔特征提取电路、装置及方法
CN110149355A (zh) * 2018-02-13 2019-08-20 大猩猩科技股份有限公司 一种分布式的影像分析系统
CN109190590A (zh) * 2018-09-19 2019-01-11 深圳市美侨医疗科技有限公司 一种尿沉渣结晶识别方法、装置、计算机设备及存储介质
CN109409309A (zh) * 2018-11-05 2019-03-01 电子科技大学 一种基于人体检测的智能报警系统和方法
CN112181689A (zh) * 2020-09-30 2021-01-05 华东师范大学 一种在云端下进行gpu内核程序高效率调度的运行时系统

Similar Documents

Publication Publication Date Title
CN102760053A (zh) 基于cuda并行计算及wcf架构的人体检测方法
US11783230B2 (en) Automatic generation of ground truth data for training or retraining machine learning models
Amato et al. Deep learning for decentralized parking lot occupancy detection
KR101942808B1 (ko) 객체 이미지 인식 dcnn 기반 cctv 영상분석장치
US9002060B2 (en) Object retrieval in video data using complementary detectors
WO2016173277A9 (zh) 视频编码方法、解码方法及其装置
KR102194499B1 (ko) 객체 이미지 인식 dcnn 기반 cctv 영상분석장치 및 그 장치의 구동방법
CN101794515B (zh) 基于协方差和二叉树支持向量机的目标检测系统及方法
CN106845415B (zh) 一种基于深度学习的行人精细化识别方法及装置
Lu et al. Edge compression: An integrated framework for compressive imaging processing on cavs
CN111614769B (zh) 一种深度学习技术的行为智能分析引擎系统及控制方法
CN102222213A (zh) 一种基于开放式Web Service架构的分布式视觉计算方法
CN111401202A (zh) 一种基于深度学习的行人口罩佩戴实时检测方法
CN110769257A (zh) 智能视频结构化分析装置、方法和系统
Zhang et al. Distributed embedded deep learning based real-time video processing
Takagi et al. A sub-100-milliwatt dual-core HOG accelerator VLSI for real-time multiple object detection
Chen et al. Distributed real-time object detection based on edge-cloud collaboration for smart video surveillance applications
CN114926456A (zh) 一种半自动标注和改进深度学习的铁轨异物检测方法
EP4311202A1 (en) End-edge-cloud coordination system and method based on digital retina, and device
Ghosh et al. React: streaming video analytics on the edge with asynchronous cloud support
CN116863376A (zh) 电梯轿厢乘客异常事件检测的边缘计算方法及系统
CN114494978A (zh) 基于Pipeline的并行视频结构化推理方法及系统
CN103632357A (zh) 一种基于光照分离的图像超分辨率增强方法
CN110427920B (zh) 一种面向监控环境的实时行人解析方法
Li et al. Real-time abnormal behavior recognition and monitoring system based on panoramic video

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20121031