孙乐飞,张重阳
(上海交通大学 图像通信与信息处理研究所,上海 200240)
基于Hi3531平台的快速行人检测优化与实现
孙乐飞,张重阳
(上海交通大学 图像通信与信息处理研究所,上海 200240)
介绍了基于单芯片SoCHi3531的快速行人检测的实现,以及基于平台及算法的速度优化方案。利用Hi3531硬件平台资源及智能引擎加速模块提供的基本算子,实现算法速度优化。同时提取不同色彩空间特征并训练相应特征模板用于行人检测,减少色彩空间转换耗费的计算时间。实验结果表明,在Hi3531平台上,在几乎不降低检测精度的情况下,一系列优化较大幅度地减少了单帧图像检测时间。
海思3531;视频监控;行人检测;速度优化;色彩空间转换
目前,随着城市人口的不断增多,城市的公共安全防范系统变得越来越重要,尤其是智能视频监控系统,在奥运会、世博会等大型人员聚集场所发挥着至关重要的作用[1]。行人检测是目标检测领域的关键技术,它基于图像或视频帧,判断是否包含行人,如果包含则给出具体位置等信息。好的行人检测算法应该兼顾检测的准确度和实时性,以做到能够使算法应用到不同的场合[2]。Hi3531高性能SoC,拥有专用的视频处理模块、高速的数据传输通道、高速的数据处理能力,且价格低廉,为行人检测技术在智能监控领域的实际应用提供一种解决方案。但是嵌入式平台的配置相对PC机来说要低,对于复杂特征的提取计算以及匹配检测需要耗费较多的时间,难以满足快速行人检测的需求[3-4]。
本文提出利用Hi3531硬件平台资源及智能引擎加速模块,实现算法速度优化。提取不同色彩空间特征,训练相应特征模板用于行人检测,取得了较好的加速效果。
1.1海思媒体处理平台
海思提供的媒体处理软件平台(MediaProcessPlatform,MPP)可支持应用软件快速开发。该平台对应用软件屏蔽了芯片相关的复杂的底层处理,并对应用软件直接提供MPI(MPPProgrameInterface)接口完成相应功能。
海思媒体处理平台的主要内部处理流程如图1所示,主要分为视频输入(VI)、视频处理(VPSS)、视频编码(VENC)、视频解码(VDEC)、视频输出(VO)、视频侦测分析(VDA)等模块。VI获取视频YUV数据,VPSS模块接收VI模块发送过来的图像,可对图像进行去噪、图像增强、锐化等处理,编码模块接收VI捕获并经VPSS处理后输出的图像数据,可叠加用户通过Region模块设置的感兴趣区,然后按不同协议进行编码并输出相应码流。VDA模块接收VI的输出图像,并进行移动侦测和遮挡侦测,最后输出侦测分析结果[5]。
图1 海思媒体处理平台内部处理流程图
1.2快速行人检测算法
快速行人检测算法包括如下几个模块:1)channels模块,用于图像通道特征提取,根据给定的图像,在特定的scale下计算不同通道特征,在这里的通道特征是颜色通道特征、梯度大小和方向及梯度直方图[6]。2)detector模块,用于通道特征目标物体检测[7]。通过大量实验及统计平均后总结,在Hi3531平台上,对于每帧图像的检测,每个步骤的时间花费所占总时间的比例如图2所示。由图中可知,特征计算花费了32%的总体计算时间,其中YUV转RGB及RGB转LUV两个过程耗费了18.6%的计算时间。图像下采样过程也花费了总计算时间的6%。
图2 单帧检测中各步骤的时间花费占比
运用快速行人检测算法开启一个新的检测模块,实现了算法的移植,行人检测算法中YUV色彩空间到RGB色彩空间的转换可以通过调用平台提供的MPI来实现,从而省去这部分计算时间;同时通过开启VI子通道来优化VI模块,利用硬件资源实现图像下采样,省去算法中图像下采样的计算。提取不同颜色特征作为新的通道特征用于检测,可以节省RGB色彩空间到LUV色彩空间的转换,加速检测过程。
本文结合Hi3531平台的硬件资源及算法中的特征选取,从以下3个方面入手,对行人检测算法进行了优化。
2.1视频输入模块(VI)优化
视频输入(VI)模块实现的功能:将芯片外的视频数据通过ITU-RBT656/601/1120接口或者数字摄像机接口接收,存入指定的内存区域[8]。可指定硬件通道绑定到相应的设备端口。在此过程中可实现一路原始视频图像输入,输出一路或多路视频图像功能。Hi3531VI的物理通道支持对接收图像按序进行以下处理:
主通道:裁剪→遮挡→色度重采样→色度下采样CDS→水平垂直翻转VBI→输出处理后的图像到DDR。
次通道:剪裁→遮挡→水平垂直缩小→水平垂直翻转→输出处理后的图像到DDR[9]。
次通道与主通道的图像源相同,次通道编号=主通道编号+16,主通道实现1 080p图像的输出,同时通过设置次通道的属性,可实现所需缩放后的图像输出,如640×360,320×180等分辨率的图像。图3为优化的整体流程图。
图3 优化的整体流程图
VI(subchn)为新开启的视频输入次通道,其数据来源与VI通道一致,在次通道中可以根据设定完成特定尺度的缩放,缩放后的数据作为源数据传入Detect模块。通过Detect检测到视频中的行人区域后,将其坐标、大小等参数作为ROI配置参数,从而进行自适应检测的ROI编码。通过开启视频输入次通道,在次通道内完成图像下采样,传给行人检测模块检测,减少了detect模块中下采样过程耗费的时间。
2.2创建色彩空间转换任务
Hi3531平台基于操作系统层,控制芯片完成相应的媒体处理功能。它对应用层屏蔽了硬件处理细节,并为应用层提供API接口完成相应功能。IVE模块是智能分析系统中的硬件加速模块。ARM在做智能分析时,可以借助IVE完成一些基本操作来加速智能分析。IVE共提供了以下基本算子,包括:快速拷贝、模板滤波、色彩空间转换、模板滤波加色彩空间转换、边缘提取、膨胀腐蚀、图像二值化、图像与、图像减、图像或、积分图和直方图统计。
由于通过VI模块获取的数据是视频原始YUV数据,而用于行人检测模块输入的是图片RGB数据,在平台上,利用IVE提供的色彩空间转换基本算子HI_MPI_IVE_CSC,可以替换C++代码实现YUV到RGB数据的转换,节约ARM的计算资源。定义源数据类型为SP422,源数据宽高为输入数据宽高,色彩空间转换模式为IVE_CSC_MODE_PIC_BT709,实现计算
(1)
ACSC,BCSC由源数据类型和色彩空间转换模式决定。将转换的输出作为行人检测模块的输入。
2.3特征提取及模板训练
对于快速行人检测算法,根据给定的图像,在特定的尺度下计算通道特征,在这里是颜色通道特征、梯度幅值及梯度方向特征。当提取LUV特征作为颜色特征,结合梯度幅值特征及6个方向的梯度方向特征用于检测,可以得到91.9%的检测精度,而当提取RGB特征作为颜色特征,结合梯度幅值及6个方向的梯度方向特征,可以得到90.2%的检测精度[10]。当RGB数据作为算法输入,算法需要实现RGB转化为LUV。用RGB替换LUV作为颜色通道特征,在几乎不降低检测精度的情况下,能够较大幅度地减少因为不同色彩空间转换损失的计算时间。因此提取RGB作为颜色通道特征,训练出对应的行人模板用于检测。
提取RGB特征替换LUV特征作为颜色通道特征用于行人检测,图4和图5分别为提取LUV作为颜色通道特征和提取RGB作为颜色通道特征用于检测的效果图,表1,表2为对应的检测结果。表中系数栏为行人的可信度,该值越高则表示该区域越可能为行人,两表都分别列出了前6个最有可能是行人区域的检测结果。X,Y,W,H分别表示检测出的行人区域左上角的横坐标,左上角的纵坐标,宽和高。
图4 提取LUV特征行人检测效果
图5 提取RGB特征行人检测效果
系数XYWH37.36155.5086.0041.00100.0033.65127.0085.0944.93109.6033.61-9.4280.4786.32210.5233.2976.5494.1537.7091.9524.99195.5194.5929.0270.7922.01219.6891.2926.4564.52
表2提取RGB特征行人检测结果
系数XYWH27.20147.5086.0041.00100.0025.65131.5086.0041.93100.6024.43-8.2597.2074.54181.8223.9870.7684.0048.96119.4023.27131.5186.0029.0270.7922.44215.7897.2924.2564.32
结合图4,图5和表1,表2对比可以发现,对于提取RGB作为颜色通道特征与提取LUV作为颜色通道特征,两者检测结果基本接近,两张图前6个行人区域也基本吻合。
为比较优化前后系统检测的准确性,本文给出了在3个行人数据集(INRIA,Caltech,TUD)上的测试结果,从INRIA数据集中选取200张图片,在1fppi(falsepositiveperimage)的情况下,优化前后检测结果如表3所示。从表中可以看出,优化前后检测率基本不变。
表3优化前后INRIA数据集检测结果
选项检出行人个数检测率/%优化前29732990.3优化后29332989.1
选取Caltech行人数据集和TUD行人数据集上的图片用于测试,在1fppi情况下,优化前后的检测效果如表4所示,从表中也可以清楚地看出,对于不同的行人数据集,优化前后检测率基本不变。
表4优化前后行人不同数据集检测结果
数据集及选项检出行人个数检测率/%Caltech优化前16228756.4Caltech优化后16128756.1TUD优化前16526263.0TUD优化后16126261.5
为比较优化前后系统的检测速度,在Hi3531平台上,对于原始数据1080p的图片(即1 920×1 080),下采样6倍到320×180大小进行测试,图6为优化前后行人检测算法各个模块所需的计算时间对比。
创建VI子通道用于完成下采样,行人检测模块从子通道中获取数据,省去下采样计算时间,对于下采样到320×180的图片,平均每帧需要花费23ms,其中这部分时间占到总计算时间的6.5%。
创建色彩空间转换任务,通过调用Hi3531中IVE提供的色彩空间转换基本算子,转换工作由硬件加速模块完成,而不再耗费CPU资源用于计算。对于一帧320×180大小图片的检测,平均可以节省39ms,这部分时间占到总计算时间的10.9%。
通过提取RGB特征作为颜色通道特征,替换LUV特征,训练出相应的行人模板,对于下采样到320×180大小的图片用于检测,平均每帧计算可以节省33ms,这部分时间占到总计算时间的9.3%。
结合3部分的优化,整合所有步骤的优化,得到最终的优化效果。Hi3531主通道获取1 080p图像(即1 920×1 080),同时开启视频输入次通道,下采样视频数据到尺寸为320×180大小的图片用于检测,创建色彩空间转化任务,将YUV转化为RGB,提取RGB数据并计算梯度幅值及6个方向的梯度方向特征进行行人检测,平均每帧检测减少95ms,节省26.7%的计算时间,检测速度明显提高。
图6 优化前后检测所需时间对比
针对每一个模块的优化,测试并验证了下采样到不同分辨率后的行人检测的优化效果。表5分别列出了960×540,640×360,320×180这3种不同分辨率下优化前后的性能对比。
表5不同分辨率图片各计算模块所需时间
算法960×540640×360320×180时间/ms百分比/%时间/ms百分比/%时间/ms百分比/%下采样967.2406.7236.5YUV2RGB16012.16311.03910.9RGB2LUV13310.2609.4339.3
时间一列是不同模块所需的计算时间,百分比一列是该部分计算时间所占总的计算时间的百分比。对于3种优化,不同分辨率下均能获得较大幅度的检测速度方面的提升。实验证明对于下采样到更高分辨率的图片,能获得更多检测时间上的节省。
图7为Hi3531平台获取现实场景的行人检测效果图,为测试优化前后系统在不同场景下的效果,将网络摄像机架设在不同的场景下拍摄有行人的画面并将每帧检测所需的时间记录保存于文件中,统计平均发现相较优化前,优化后平均每帧可以节省26%的计算时间,对于多种不同场景,检测速度均能获得明显提高。
图7 现实场景行人检测效果
本文基于海思推出的Hi3531媒体处理平台,实现了一个快速行人检测系统,并针对该系统进行速度优化。实验结果表明,该系统能准确、快速地对监控视频中的行人目标进行检测,提取行人的坐标信息,通过视频输入次通道的开启,色彩空间转化任务的建立,以及提取不同颜色通道特征优化算法,较大幅度地提升了行人检测速度。
[1]王俊,卢贤龙,张重阳,等.基于Hi3516的监控视频自适应ROI编码[J].电视技术,2013,37(23):65-68.
[2]郑世宝.智能视频监控技术与应用[J].电视技术,2009,33(1):95-97.
[3] 许言午,曹先彬,乔红. 行人检测系统研究新进展及关键技术展望[J]. 电子学报,2008,36(5):962-968.
[4] 苏松志,李绍滋,陈淑媛,等.行人检测技术综述[J].电子学报,2012,40(4):814-820.DOI:10.3969/j.issn.0372-2112.2012.04.031.
[5]DOLLáRP,TUZ,PERONAP,etal.Integralchannelfeatures[C].//BritishMaehineVisionConference.London:[s.n.]2009:7-10.
[6]MAJIS,BERGAC,MALIKJ.Classificationusingintersectionkernelsupportvectormachinesisefficient[C]//IEEEConferenceonComputerVision&PatternRecognition. [S.l.]:IEEEComputerSociety,2008:1-8.
[7]DOLLáRP,WOJEKC,SCHIELEB,etal.Pedestriandetection:anevaluationofthestateoftheart[J].IEEEtransactionsonpatternanalysis&machineintelligence, 2012, 34(4):743-761.
[8]海思半导体有限公司.HI3531Full-HDIP-CamSOC产品[EB/OL].[2015-05-21].http://www.hisilicon.com/cn/download/digital_media/20110924/Hi3531.rar.
[9]海思半导体有限公司.HI3531媒体处理软件开发参考[EB/OL].[2015-05-21].http://www.hisilicon.com/cn/download/digital_media/20110924/Hi3531.rar.
[10]DOLLáRP,BELONGIES,PERONAP.Thefastestpedestriandetectorinthewest[C]//BritishMachineVisionConference.Aberystwyth:[s.n.],2010:1-11.
孙乐飞(1991— ),硕士生,主要研究方向为图像视频处理。
责任编辑:闫雯雯
Hi3531-basedoptimizationandrealizationoffastpedestriandetection
SUNLefei,ZHANGChongyang
(Institute of Image Communication and Information Processing,Shanghai Jiao Tong University,Shanghai 200240,China)
Theachievementofrapidpedestriandetectiononsingle-chipSoCHi3531andtheoptimizationofitsdetectionspeedbasedonplatformandalgorithmareintroduced,whichnotonlyspeedsupthealgorithmbyutilizingHi3531hardwareplatformandthebasicoperatorsprovidedbyintelligentvideoenginespeedupmodule,butalsoreducesthealgorithmtimeforcolorspaceconversionbydevelopingamodulecapableofidentifyingthefeaturesofdifferentcolorspacestofacilitatepedestriandetection.Experimentalresultsrevealthatthedetectiontime,runningonHi3531platform,isremarkablyreducedafteraseriesofoptimizationthatinducesnooffsettodetectionaccuracythough.
Hi3531;videosurveillance;pedestriandetection;speedoptimization;colorspaceconversion
TN941.1
ADOI:10.16280/j.videoe.2016.08.024
2015-11-02
文献引用格式:孙乐飞,张重阳.基于Hi3531平台的快速行人检测优化与实现 [J].电视技术,2016,40(8):122-125.
SUNLF,ZHANGCY.Hi3531-basedoptimizationandrealizationoffastpedestriandetection[J].Videoengineering,2016,40(8):122-125.