CN110110589A - 基于fpga并行计算的人脸分类方法 - Google Patents
基于fpga并行计算的人脸分类方法 Download PDFInfo
- Publication number
- CN110110589A CN110110589A CN201910225650.9A CN201910225650A CN110110589A CN 110110589 A CN110110589 A CN 110110589A CN 201910225650 A CN201910225650 A CN 201910225650A CN 110110589 A CN110110589 A CN 110110589A
- Authority
- CN
- China
- Prior art keywords
- image
- module
- classifier
- haar
- pixel
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明属于数字信号处理、数字集成电路设计技术领域,请求保护一种基于FPGA并行计算的人脸分类方法,主要包括:图像采集模块、图像预处理模块、Haar特征提取模块、人脸检测分类模块、以太网传输模块及所包含的子模块。其中,根据硬件电路特性,在FPGA中分析设计了特征提取及分类的算法实现方法。通过仅存储当前计算像素及其相邻像素所需的像素,完成了用缩放图像代替缩放子窗口的特征值高速计算。设计实现了分类检测模块五级流水分别计算积分图点值、特征值、弱分类器加权和、弱分类器分类结果和强分类器分类结果流水线方案下的Haar分类器体系结构,完成高效低资源占用率的特征分类。
Description
技术领域
本发明属于数字信号处理、数字集成电路设计技术领域,具体涉及一种基于Haar特征的人脸分类算法FPGA并行计算系统设计。
背景技术
人脸检测作为人脸识别的第一个步骤,该阶段下的检测精度与速度直接影响整个人脸识别系统的性能,特别是复杂背景下的人脸检测研究,已经成为人脸识别系统是否能够真正实用的关键。目前对人脸检测的研究已经作为一个独立的研究内容受到研究者的重视,随着人脸检测技术的不断发展,人脸检测的应用范围也已经远远超出了人脸识别领域的范畴在基于内容的检索、视频会议、三围人脸模型等方面有着重要的应用价值。
Viola等人提出了一种基于使用Haar特征的AdaBoost学习算法的人脸检测框架。然而,面部检测需要相当大的计算能力,因为许多Haar特征分类器检查图像中的所有像素。使用高性能计算机可以进行实时人脸检测,但系统的资源往往会被大量计算占用产生高延迟。硬件电路特性使基于其平台设计实时的人脸检测硬件并行架构,用硬件描述语言对硬件并行架构分模块进行描述成为一项非常好的选择。
并行计算是提高人脸检测速度最有效的技术之一,较ASIC设计周期长、成本高、风险大等缺点,当前出现了采用FPGA硬件并行处理方案来提高人脸检测算法的速度。基于FPGA设计的人脸检测方案,具有开发成本低,周期短等优点,是一种高效灵活的解决方法。深入分析充分挖掘人脸检测算法本身的并行性,设计灵活的硬件并行架构是本发明的重点。
发明内容
针对人脸检测实现的重要性,以及当前所有关于实时人脸检测的文献都描述了软件实现或是理论上的硬件分析。本发明提出了一种提高电路性能和减少硬件资源占用的Haar特征提取及分类的FPGA并行计算系统,本发明的技术方案如下:
一种基于FPGA并行计算实现的实时人脸分类检测系统硬件架构,利用并行处理能力和多级流水线处理,采用至顶向下设计方法,所述系统包括图像采集模块、图像预处理模块、Haar特征提取模块、人脸检测分类模块和以太网传输模块,使用Verilog HDL语言进行设计,并在FPGA上实现。在图像采集模块中,帧捕获控制器生成控制信号,用于控制从图像传感器采集图像信息的过程。预处理模块将图像转为灰度数据,同时用中值滤波算法对图像质量改善处理后进行存储在Block RAM中。Haar特征提取模块对图像进行缩放、积分图的生成和对应的特征计算。人脸检测分类模块由级联的强分类器构成,弱分类器加权相加构成强分类器,通过将计算好的特征值与阈值对比并进行弱分类后相加并级联后得出检测结果。
进一步的,所述Haar特征提取模块包括图像存储子模块、图像定标器子模块、特征计算子模块构成,经过预处理的灰度图像存入由图像存储控制器例化的存储空间之后,按图像的缩放比例分别存储缩小后的图像数据。图像定标器模块在生成并传输包含帧图像的BRAM的地址,根据缩放图像的比例因子请求图像数据,图像存储模块根据图像定标器模块中需要的BRAM地址将像素数据传输给特征计算模块。
进一步的,特征计算公式如下:
Pxy=Hwhite∑p∈white tanglep-Hblack∑p∈black tanglep
进一步的,仅仅在24*24大小的窗口,通过平移和缩放就可以产生数十万计大小不一、位置各异的Haar特征。在一个窗口内就有这么多Haar特征,而检测窗口的尺寸也是大小不一的,为快速的计算这些Haar特征的特征值此处引入积分图简化计算。引入积分图设计思想的特征计算公式如下:
进一步的,使用缩放图像技术代替缩放子窗口,生成积分图像窗口而不是在一个时钟周期期间包含整个图像的积分图像,每个缓冲区都有自己的控制器控制存储用于将每个像素及其相邻像素一起处理的必要像素。
进一步的,人脸检测模块中采用弱分类器构成强分类器,强分类器级联构成检测系统设计思想,一个完整的弱分类器包含:Haar特征、leftValue、rightValue和弱分类器阈值。P为一特征值,θ为该特征值对应的阈值,lv、rv分别为阈值对应的左右值下弱分类器功能表现为如下公式:
进一步的,强分类器由多个弱分类器“并列”构成,即强分类器中的弱分类器是两两相互独立的。在检测目标时,每个弱分类器独立运行并输出weakc值,当前强分类器中每一个弱分类器的输出值相加之后,相加结果与本级强分类器对应的阶段阈值对比,当且仅当结果大于该阶段阈值时,认为当前检测窗口通过了该级强分类器。
进一步的,采用流水线方案实现Haar分类器的体系结构。在每个时钟周期期间,来自积分图像窗口缓冲器的特征积分像素值和来自BRAM的Haar分类器的参数用于连续计算分类结果,将每个强分类器划分成五级流水分别计算积分图、特征值、弱分类器加权和、弱分类器分类结果和强分类器分类结果,一个弱分类器的延迟是五个时钟周期。
进一步的,当前检测窗口通过所有强分类器时,认定为检测成功即图像中存在人脸。
附图说明
图1是本发明提供改进的Haar特征下并行计算的人脸分类检测系统硬件架构图;
图2是缩放图像操作图;
图3是由一级强分类器电路图及其流水线划分。
具体实施方式
下面结合说明书附图,对本发明实施例中的技术方案进行清楚、详细的描述。本发明解决上述问题的技术方案是:
本发明选择在FPGA器件上实现基于流水线技术的并发分类算法,根据Haar特征的计算和Adaboost算法下的多级强分类器分类得出检测结果。为了提高电路性能和减少硬件资源占用,本发明对特征计算过程和分类过程进行了基于硬件特性的分析,采用多窗口尺寸特征值并发计算和分类器插入流水线的技术增加计算单元利用率,系统实现的整体架构及模块划分情况如图1所示,本发明的具体技术方案如下:
1.特征值计算模块,由具有图像行缓冲器,图像窗口缓冲器,积分图像窗口缓冲器构成。引入优化采用固定积分图像窗口(21×21像素),用输入图像不同尺寸的缩小代替特征计算窗口不同尺寸的放大。本发明中使用最近邻插值算法计算缩放图像,因子为1.2。缩放图像中的像素值被设置为原始图像中的最近像素的值。这是最简单的插值算法,需要较低的计算成本。如图2所示,缩放图像的数量取决于输入图像分辨率,Haar特征提取模块中的图像缩放子模块执行输入图像的缩小,320×240像素图像的缩放器模块有14个比例因子(1.20~1.213),640×480像素图像的缩放器模块有18个比例因子(1.20~1.217)。
生成整个缩放图像的整体图像需要大量的计算能力和时间,本发明提出一种特征值计算结构,这种结构仅存储了处理每个像素及其相邻像素所需的像素。它由图像行缓冲区、图像窗口缓冲区和积分图像窗口缓冲区组成,每个缓冲区都有自己的控制器。每个双端口BRAM可以存储图像的一行。因此,像素的x坐标可以用作双端口BRAM的地址。对于坐标为(x,y)的传入像素,图像行缓冲区控制器执行如下公式的操作:
L(x,y-k)=L(x,y-(k-1)),1≤k≤n-2
L(x,y-k)=p(x,y),k=0
其中n为图像窗口行大小,p(x,y)为传入像素值,L(x,y)表示图像行缓冲区中的每个像素。每个双端口BRAM存储图像的一行,从每一行获得一个像素值。像素数据被存储并在图像行缓冲器中移动,具有相同图像行缓冲器地址的像素数据被同时传送到图像窗口缓冲器。图像窗口缓冲区执行预计算以生成积分图像窗口。图像窗口缓冲区有两部分:第一部分(21x20个单元格)计算图像窗口缓冲区的每列的累积值。每列只有一个加法器。最左列的加法器计算最左列中第一行和第二行像素值的总和。第二个左列的加法器计算第二个左列中第一,第二和第三行像素值的总和。最后,第20列的加法器计算第20列中所有像素值的总和。
第二部分(21×22个单元)锁存并将列的累积像素值移动到相邻列。累积的像素值用于生成积分图像窗口。积分图像窗口缓冲区计算当前图像窗口的积分图像。积分图像窗口的每个元素将先前的积分像素值与来自图像窗口缓冲器的累积像素值相加,进一步从图像窗口缓冲器的最左列中减去累积像素值来并行计算出Haar特征。
2.人脸检测模块用积分图像计算后的特征值进行分类,该模块由特征分类器,阶段比较器和特征训练数据块组成。如图3的流线中的第一级电路所示,Haar特征的计算结果与特征阈值进行了比较,如果结果小于特征阈值,则该弱分类器的最终结果值为左值,否则为右值。强分类器由固定个数的弱分类器分类结果加权相加构成,将弱分类器加权和值与强分类器阈值进行比较。如果累加值大于阶段阈值,则进入下一级强分类器,否则此特征下不存在人脸。强分类器之间串联构成完整的分类检测模块,图像窗口通过所有串联的强分类器时,判定存在人脸。
在每个时钟周期内,分别从Haar特征计算子模块中获取像素窗口的特征值,同时从BRAMs中获取训练好的弱分类器和强分类器左右值及阈值参数,流水计算分类结果。如图3所示的第一级强分类器的延迟为5个时钟周期。
3.本发明所设计的级联分类器先在x86架构的计算机下进行训练,将基于OpenCV训练好的所有弱分类器左值、右值、阈值、权值以及所有强分类器阈值参数保存在FPGA的BRAM中。由5块BRAM存储训练参数:3块BRAM用于存储Haar特征的矩形(x,y,宽度,高度,权重),1块BRAM用于存储弱分类器特征阈值,左值和右值,1块BRAM用于强分类器阈值。
本设计在训练数据阶段使用大小为20x20的正面人脸进行训练,训练结果宗共包含了22个强分类器,2135个弱分类器。
以上实施例应理解为仅用于说明本发明而不用于限定本发明的保护范围。在阅读了本发明所述内容之后,技术人员可以对本发明进行各种修改,这些等效变化和修饰同样包含在本发明权利要求所限定的范围内。
Claims (4)
1.一种基于FPGA并行计算实现的人脸分类检测系统硬件架构,所述系统包括图像采集模块、图像预处理模块、Haar特征提取模块、人脸检测分类模块和以太网传输模块,其特征在于,图像采集和预处理、图像缩放、积分图像生成采用流水线技术,强分类器间并发计算。
2.一种基于FPGA并行计算的人脸分类方法,其特征在于,包括如下步骤:
步骤1:在传感器中进行寄存器配值,同时,在FPGA平台图像存储模块逐帧存储从OV5640传感器模块采集的串行图像数据;
步骤2:图像缩放器模块在图像存储模块中生成并传送包含帧图像的BRAM的地址,基于比例因子请求缩小的图像数据,完成缩放功能后并发传输到多级Haar分类器;
步骤3:分类器模块使用Haar特征数据执行面部检测的分类,该模块由图像行缓冲区,图像窗口缓冲区,积分图像窗口缓冲区,特征分类器,阶段比较器和特征训练数据组成,采用特定加速架构生成积分图像,减少存储器访问和处理时间。
3.根据权利要求2所述的方法,其特征在于,特定的加速结构由图像行缓冲区,图像窗口缓冲区和积分图像窗口缓冲区组成,使用缩放图像技术代替缩放子窗口,并且生成积分图像窗口而不是在一个时钟周期期间包含整个图像的积分图像,每个缓冲区都有自己的控制器控制存储用于将每个像素及其相邻像素一起处理的必要像素。
4.根据权利要求2所述的方法,其特征在于,Haar分类器采用流水线方案设计,将每级强分类器划分成五级流水实现,加快人脸检测系统的处理速度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910225650.9A CN110110589A (zh) | 2019-03-25 | 2019-03-25 | 基于fpga并行计算的人脸分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910225650.9A CN110110589A (zh) | 2019-03-25 | 2019-03-25 | 基于fpga并行计算的人脸分类方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110110589A true CN110110589A (zh) | 2019-08-09 |
Family
ID=67484538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910225650.9A Pending CN110110589A (zh) | 2019-03-25 | 2019-03-25 | 基于fpga并行计算的人脸分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110110589A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111783876A (zh) * | 2020-06-30 | 2020-10-16 | 西安全志科技有限公司 | 自适应智能检测电路及图像智能检测方法 |
CN111881715A (zh) * | 2020-06-03 | 2020-11-03 | 西安电子科技大学 | 一种人脸检测硬件加速方法、系统和设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100123009A1 (en) * | 2008-11-20 | 2010-05-20 | Datalogic Scanning Inc. | High-resolution interpolation for color-imager-based optical code readers |
CN103247019A (zh) * | 2013-04-17 | 2013-08-14 | 清华大学 | 用于物体检测的基于AdaBoost算法的可重构装置 |
CN103390152A (zh) * | 2013-07-02 | 2013-11-13 | 华南理工大学 | 基于sopc的适合人机交互的视线跟踪系统 |
CN106503700A (zh) * | 2016-12-30 | 2017-03-15 | 哈尔滨理工大学 | 基于FPGA的Haar特征多处理架构人脸检测系统及检测方法 |
-
2019
- 2019-03-25 CN CN201910225650.9A patent/CN110110589A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100123009A1 (en) * | 2008-11-20 | 2010-05-20 | Datalogic Scanning Inc. | High-resolution interpolation for color-imager-based optical code readers |
CN103247019A (zh) * | 2013-04-17 | 2013-08-14 | 清华大学 | 用于物体检测的基于AdaBoost算法的可重构装置 |
CN103390152A (zh) * | 2013-07-02 | 2013-11-13 | 华南理工大学 | 基于sopc的适合人机交互的视线跟踪系统 |
CN106503700A (zh) * | 2016-12-30 | 2017-03-15 | 哈尔滨理工大学 | 基于FPGA的Haar特征多处理架构人脸检测系统及检测方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111881715A (zh) * | 2020-06-03 | 2020-11-03 | 西安电子科技大学 | 一种人脸检测硬件加速方法、系统和设备 |
CN111881715B (zh) * | 2020-06-03 | 2023-07-28 | 西安电子科技大学 | 一种人脸检测硬件加速方法、系统和设备 |
CN111783876A (zh) * | 2020-06-30 | 2020-10-16 | 西安全志科技有限公司 | 自适应智能检测电路及图像智能检测方法 |
CN111783876B (zh) * | 2020-06-30 | 2023-10-20 | 西安全志科技有限公司 | 自适应智能检测电路及图像智能检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111639692A (zh) | 一种基于注意力机制的阴影检测方法 | |
CN109784372B (zh) | 一种基于卷积神经网络的目标分类方法 | |
CN109446922B (zh) | 一种实时鲁棒的人脸检测方法 | |
Cho et al. | Parallelized architecture of multiple classifiers for face detection | |
Nguyen et al. | Yolo based real-time human detection for smart video surveillance at the edge | |
Xian et al. | Evaluation of low-level features for real-world surveillance event detection | |
Lai et al. | Proposed FPGA hardware architecture for high frame rate (≫ 100 fps) face detection using feature cascade classifiers | |
CN111353544A (zh) | 一种基于改进的Mixed Pooling-YOLOV3目标检测方法 | |
Dürre et al. | A HOG-based real-time and multi-scale pedestrian detector demonstration system on FPGA | |
CN110110589A (zh) | 基于fpga并行计算的人脸分类方法 | |
Wasala et al. | Real-time HOG+ SVM based object detection using SoC FPGA for a UHD video stream | |
Chua et al. | Visual IoT: ultra-low-power processing architectures and implications | |
CN113688826A (zh) | 基于特征融合的花粉图像检测方法及系统 | |
CN117237867A (zh) | 基于特征融合的自适应场面监视视频目标检测方法和系统 | |
CN110659724A (zh) | 一种基于目标尺度范围的目标检测卷积神经网络构建方法 | |
CN114283431B (zh) | 一种基于可微分二值化的文本检测方法 | |
Liu et al. | Vehicle detection method based on ghostnet-SSD | |
CN112487911B (zh) | 智能监控环境下基于改进yolov3的实时行人检测方法及装置 | |
Lahdenoja et al. | A massively parallel algorithm for local binary pattern based face recognition | |
Lu et al. | Video object detection based on non-local prior of spatiotemporal context | |
CN112802026A (zh) | 一种基于深度学习实时的交通场景语义分割方法 | |
CN109614841B (zh) | 嵌入式系统中的快速人脸检测方法 | |
Lu et al. | Reserve sow pose recognition based on improved YOLOv4 | |
Sasongko et al. | VLSI Architecture for Fine Grained Pipelined Feature Extraction using Histogram of Oriented Gradient | |
Fekih et al. | An efficient and flexible FPGA implementation of a face detection system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190809 |