CN107016341A - 一种嵌入式实时人脸识别方法 - Google Patents
一种嵌入式实时人脸识别方法 Download PDFInfo
- Publication number
- CN107016341A CN107016341A CN201710127499.6A CN201710127499A CN107016341A CN 107016341 A CN107016341 A CN 107016341A CN 201710127499 A CN201710127499 A CN 201710127499A CN 107016341 A CN107016341 A CN 107016341A
- Authority
- CN
- China
- Prior art keywords
- face
- recognition
- embedded
- interface
- function
- 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/161—Detection; Localisation; Normalisation
Abstract
本发明公开了一种嵌入式实时人脸识别方法。该方法首先采用基于Adaboost人脸检测方法定位图片中的人脸位置,采用基于局部二值模式LBP人脸识别的方法依据预先训练好的人脸库获取识别结果。其次,通过SSH协议对嵌入式系统进行访问,在嵌入式上移植OpenCV库,同时移植交叉编译成的动态链接库人脸识别算法。最后,在PC中利用LabVIEW和C/C++混合编程,调用编译好的动态链接库设计人脸识别界面,将嵌入式的识别结果在PC中实时显示;人脸识别界面主要包括三个子界面:人脸样本采集子界面,人脸训练子界面和人脸识别子界面。可以远程显示识别结果。使得用户的信息保存较为安全,降低了信息泄露的风险。
Description
技术领域
本发明涉及一种嵌入式实时人脸识别方法,属于计算机视觉应用领域。
背景技术
随着信息科技的不断发展以及社会信息化的普及,计算机和网络逐渐成为人们生活工作的必需品。嵌入式设备作为小型化的计算机在生活中的应用越来越广泛,包括小到手机,Pad,大到家电设备,汽车设备等。嵌入式系统作为嵌入式设备的核心,作为一种专用的计算机系统也得到了广泛的关注。嵌入式以应用为中心,以计算机技术为基础,软硬件可依实际增加和删除。嵌入式从最初的单片机处理系统,到现在的ARM、DSP处理系统,嵌入式技术得到了飞速的发展。本发明中选用的基于Linux系统的ARM嵌入式,较DSP相比其速度较快,丰富的外设接口,成本较低,最重要的Linux操作系统对ARM处理器的支持已经非常完善,这样极大方便了程序的开发移植,很容易将PC平台上实现过的人脸检测和人脸识别程序移植到嵌入式平台上,大大的降低了开发周期和开发成本。本发明选用的ARM Contex-A9系列的处理器,运算速度较快且浮点处理能力较强,适合用来实现在人脸识别系统。
现在社会安全有效的身份识别和认证成为人们日常生活中不可获取的组成部分,随着数字图像处理技术计算机视觉技术的不断进步,人脸检测和人脸识别技术不仅得到极大发展,而且也获得较好的市场。人脸检测精度越来越高,不在局限于非自然条件下人脸的检测,通过参阅大量文献,基于Adaboost人脸检测算法不仅能够检测自然条件下的人脸,而且能够达到实时检测,是现阶段较为成熟的人脸检测方法。人脸识别算法以基于局部二值模式的算法较为经典。
基于嵌入式的人脸识别系统越来越多的在社会生活中出现,人脸识别系统中采集的人脸图片为非接触式的,所以具有直接、友好、方便、隐蔽性的特点。因此有巨大的应用价值,主要应用场合如下:门禁系统,防盗系统,身份认证系统,摄影等。
发明内容
本发明的目的是提出一种嵌入式实时人脸识别方法。首先搭建嵌入式机器视觉平台,移植OpenCV函数库,并在WINDOWS通过LabVIEW与C/C++混合编程,实现人脸识别。该方法能够实时进行人脸检测与人脸识别,并将识别结果通过WIFI实时地在PC端进行显示。
本发明提出嵌入式实时人脸识别方法,包括以下步骤:
步骤一:通过摄像头采集图片,采用基于Adaboost算法的人脸检测算法对采集的图片进行人脸检测,并将提取人脸区域,调用OpenCV库中相应的函数;
步骤二:利用基于局部二值模式(LBP)人脸识别算法,第一步,采集5张同一个人的正脸照片,通过步骤一中的算法对照片进行检测并提取人脸区域;将5张人脸区域统一缩放到80*80pixels大小,进行人脸识别训练部分,得到人脸模型与信息文件,第二步,利用得到的人脸模型与信息文件对待检测的人脸进行预测识别;
步骤三:步骤一和步骤二中的算法最终是在嵌入式上运行,选用基于Linux系统的ARM芯片,选用的National Instruments公司的myRIO-1900板卡,其核心芯片是XilinxZynq-7010,为双核ARM-Cortex-A9处理器,主频率为533MHz,DDR3内存为512MB;
步骤四:将OpenCV函数库的移植到嵌入式系统ARM上,在Ubuntu14.04系统上,利用arm-none-linux-gnueabi交叉编译工具对OpenCV的2.4.9版本库以及相应的第三方函数库进行交叉编译,生成可在ARM调用的OpenCV函数库文件。通过SSH协议访问ARM的嵌入式系统,并将交叉编译后的文件移植到嵌入式文件系统的/usr/local/lib文件中;
步骤五:在Ubuntu操作系统上,利用OpneCV函数库编写人脸检测和人脸识别算法,并将函数封装成LabVIEW可以识别的接口类型,然后利用交叉编译工具将人脸检测和人脸识别算法编译成动态链接库(.so文件),移植到嵌入式系统上;
步骤六:在WINDOWS操作系统上,在同一局域网内,将PC与嵌入式通过WIFI链接,然后在LabVIEW中,调用步骤五中编译好动态链接库中的函数,编写辅助程序,并将程序下载到ARM芯片上,实时进行人脸识别;
步骤七:在LabVIEW中设计人脸识别界面,分为人脸识别的训练界面和人脸识别的预测界面(即用户界面)。训练界面功能,采集人脸照片,并进行人脸检测,显示人脸检测结果;采集人脸对应的身份信息,生成对应的人脸信息文件并存储在嵌入式文件系统对应的用户文件夹/lvuser中。预测界面功能,对待检测的图片进行人脸识别并显示识别结果。
在步骤一中,主要调用OpenCV中的函数cvHaarDetectObjects,使用多次尝试法确定其参数,各参数最终调节为搜索窗口的比例系数scale_factor=1.2,构成检测人脸相邻矩形的重叠个数min_neighbors=2,检测窗口的最小尺寸min_size为30*30pixels。
在步骤三中,ARM芯片的操作系统为Linux Real-Time,固件版本为3.2.35-rt52-1.0.0f1,系统语言环境为英语,该人脸识别方法中使用的图片是通过与嵌入式系统相连接的摄像头采集得到,采集的图片分辨率为320*240pixels,采集速率15帧/s。
在步骤七中,对于分辨率为320*240pixels的图片,人脸检测和人脸识别模块在嵌入式的总运行时间为小于400ms,满足在实际使用中的实时性。
该嵌入式人脸识别方法能够实时地将摄像头采集的人脸照片进行检测与识别,并将人脸检测与识别结果通过WIFI实时在PC端显示。在嵌入式系统中成功移植OpenCV函数库,并实现了WINDOWS下调用嵌入式OpenCV库函数。对于嵌入式的访问是通过SSH安全协议,有效的能保证管理员的访问权限。
附图说明
图1人脸识别软件系统结构图
图2人脸识别硬件结构图
图3人脸样本采集子界面运行结果
图4人脸识别子界面正确识别结果图
图5人脸识别子界面未检测到人脸结果图
图6人脸识别子界面识别结果图
具体实施方式
一种嵌入式实时人脸识别方法。考虑了自然条件下人脸的复杂背景、光照的影响、遮挡等,同时考虑了实际使用中人脸识别的实时性。首先,采用基于Adaboost人脸检测方法定位图片中的人脸位置,该方法检测人脸速度快,且人脸检测率为80%;然后采用基于局部二值模式(LBP)人脸识别的方法依据预先训练好的人脸库获取识别结果,该人脸识别方法速度快且精度比较高。其次,通过SSH协议对嵌入式系统进行访问,在嵌入式上移植OpenCV库(包括第三方函数库),同时移植交叉编译成的动态链接库人脸识别算法。最后,在PC中利用LabVIEW和C/C++混合编程,调用编译好的动态链接库设计人脸识别界面,将PC与嵌入式通过WIFI通信,将嵌入式的识别结果在PC中实时显示。人脸识别界面包括人脸样本采集,人脸检测,人脸识别三个部分。人脸识别界面主要包括三个子界面:人脸样本采集子界面,人脸训练子界面和人脸识别子界面。人脸样本采集子界面主要是通过摄像头采集人脸信息和身份信息,人脸训练子界面用于构建人脸识别所需要的样本信息,人脸识别子界面用于对人脸进行识别。实施流程参考图1,具体原理解释说明如下:
1)OpenCV的移植到嵌入式:OpenCV移植是整个人脸是方法的基础工作,在Ubuntu14.04系统上,利用arm-none-linux-gnueabi交叉编译工具对OpenCV的2.4.9版本库以及相应的第三方函数库进行交叉编译,生成可在ARM调用的OpenCV函数库文件。通过SSH协议访问ARM的嵌入式系统,并将交叉编译后的文件移植到嵌入式文件系统的/usr/local/lib文件中
2)人脸样本采集:该子界面的功能是进行图片的采集并提取人脸区域,为人脸训练和识别做准备。算法部分:为了满足人脸识别系统的实时性和复杂背景下的人脸检测,采用基于Adaboost的人脸检测算法。硬件部分:将摄像头通过USB接口与嵌入式相连接,接通电源保证摄像头可以使用,通过WIFI与上位机(同一局域网内)相连接,保证嵌入式可以与上位机通信。软件部分:设置摄像头采集图片的大小为320*240pixels,15帧/s,通过摄像头获取人脸照片并在上位机的LabVIEW中进行回显,此处受到人脸与摄像头的距离影响较小,人脸应使用正脸照片,目的是为了获取较完整的人脸信息。在LabVIEW界面显示操作步骤以及人脸检测结果,然后提取并缩放人脸方形区域到80*80pixels大小,并进行存储。人脸检测程序通过调用OpenCV使用C语言编写,并编译成动态链接库文件(.so格式)
3)人脸训练:该子界面的功能是将人脸样本采集系统得到的图片进行训练,生成人脸信息文件并进行存储。在人脸样本采集子界面中采集5个同一个人的正脸大小为80*80pixels大小的人脸照片,使用人脸识别算法的训练部分进行训练,生成一个对应的XML人脸信息文件;同时存储对应人脸的身份信息。由于在PC端LabVIEW环境下只能将文件写入到嵌入式系统对应的用户文件夹/lvuser中。在LabVIEW界面中,对训练是否成功进行显示。该部分的程序同样写成动态链接库的形式,在LabVIEW中直接调用函数。
4)人脸识别:该子界面为人脸识别系统中最为关键的子界面,其功能基于1)和2),进行人脸的预测。首先对摄像头采集到的人脸图片进行显示,并进行人脸检测,显示人脸检测结果,提取人脸区域。然后通过人脸识别算法对人脸进行身份识别。是否采集成功以及是否识别成功将在界面中的信息栏进行显示。如果识别成功将进行人脸身份信息的显示同时LED灯会点亮,表示通过认证。
Claims (4)
1.一种嵌入式实时人脸识别方法,其特征在于,该方法包括以下步骤:
步骤一:通过摄像头采集图片,采用基于Adaboost算法的人脸检测算法对采集的图片进行人脸检测,并将提取人脸区域,调用OpenCV库中相应的函数;
步骤二:利用基于局部二值模式LBP人脸识别算法,第一步,采集5张同一个人的正脸照片,通过步骤一中的算法对照片进行检测并提取人脸区域;将5张人脸区域统一缩放到80*80pixels大小,进行人脸识别训练部分,得到人脸模型与信息文件,第二步,利用得到的人脸模型与信息文件对待检测的人脸进行预测识别;
步骤三:步骤一和步骤二中的算法最终是在嵌入式上运行,选用基于Linux系统的ARM芯片,选用的National Instruments公司的myRIO-1900板卡,其核心芯片是Xilinx Zynq-7010,为双核ARM-Cortex-A9处理器,主频率为533MHz,DDR3内存为512MB;
步骤四:将OpenCV函数库的移植到嵌入式系统ARM上,在Ubuntu14.04系统上,利用arm-none-linux-gnueabi交叉编译工具对OpenCV的2.4.9版本库以及相应的第三方函数库进行交叉编译,生成可在ARM调用的OpenCV函数库文件,通过SSH协议访问ARM的嵌入式系统,并将交叉编译后的文件移植到嵌入式文件系统的/usr/local/lib文件中;
步骤五:在Ubuntu操作系统上,利用OpneCV函数库编写人脸检测和人脸识别算法,并将函数封装成LabVIEW可以识别的接口类型,然后利用交叉编译工具将人脸检测和人脸识别算法编译成动态链接库(.so文件),移植到嵌入式系统上;
步骤六:在WINDOWS操作系统上,在同一局域网内,将PC与嵌入式通过WIFI链接,然后在LabVIEW中,调用步骤五中编译好动态链接库中的函数,编写辅助程序,并将程序下载到ARM芯片上,实时进行人脸识别;
步骤七:在LabVIEW中设计人脸识别界面,分为人脸识别的训练界面和人脸识别的预测界面(即用户界面),训练界面功能,采集人脸照片,并进行人脸检测,显示人脸检测结果;采集人脸对应的身份信息,生成对应的人脸信息文件并存储在嵌入式文件系统对应的用户文件夹/lvuser中,预测界面功能,对待检测的图片进行人脸识别并显示识别结果。
2.根据权利要求1所述的嵌入式实时人脸识别方法,其特征在于,在步骤一中,主要调用OpenCV中的函数cvHaarDetectObjects,使用多次尝试法确定其参数,各参数最终调节为搜索窗口的比例系数scale_factor=1.2,构成检测人脸相邻矩形的重叠个数min_neighbors=2,检测窗口的最小尺寸min_size为30*30pixels。
3.根据权利要求1所述的嵌入式实时人脸识别方法,其特征在于,在步骤三中,ARM芯片的操作系统为Linux Real-Time,固件版本为3.2.35-rt52-1.0.0f1,系统语言环境为英语,该人脸识别方法中使用的图片是通过与嵌入式系统相连接的摄像头采集得到,采集的图片分辨率为320*240pixels,采集速率15帧/s。
4.根据权利要求1所述的嵌入式实时人脸识别方法,其特征在于,在步骤七中,对于分辨率为320*240pixels的图片,人脸检测和人脸识别模块在嵌入式的总运行时间为小于400ms,满足在实际使用中的实时性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710127499.6A CN107016341A (zh) | 2017-03-03 | 2017-03-03 | 一种嵌入式实时人脸识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710127499.6A CN107016341A (zh) | 2017-03-03 | 2017-03-03 | 一种嵌入式实时人脸识别方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107016341A true CN107016341A (zh) | 2017-08-04 |
Family
ID=59439746
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710127499.6A Pending CN107016341A (zh) | 2017-03-03 | 2017-03-03 | 一种嵌入式实时人脸识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107016341A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107516090A (zh) * | 2017-09-11 | 2017-12-26 | 北京百度网讯科技有限公司 | 一体化人脸识别方法和系统 |
CN107766812A (zh) * | 2017-10-12 | 2018-03-06 | 东南大学—无锡集成电路技术研究所 | 一种基于MiZ702N的实时人脸检测识别系统 |
CN108681723A (zh) * | 2018-05-25 | 2018-10-19 | 郑州目盼智能科技有限公司 | 一种嵌入人脸跟踪方法 |
CN108764037A (zh) * | 2018-04-24 | 2018-11-06 | 石狮市森科智能科技有限公司 | 一种基于ARM Cotex-A系列平台的人脸检测实现方法 |
CN109446946A (zh) * | 2018-10-15 | 2019-03-08 | 浙江工业大学 | 一种基于多线程的多摄像头实时检测方法 |
CN110348325A (zh) * | 2019-06-20 | 2019-10-18 | 镇江畅行交通科技有限公司 | 一种基于人脸识别技术的公交充值与乘车方法 |
CN110598627A (zh) * | 2019-09-11 | 2019-12-20 | 旭辉卓越健康信息科技有限公司 | 一种基于人脸识别的gui演示工具 |
CN112200957A (zh) * | 2020-09-07 | 2021-01-08 | 东南大学 | 一种基于人脸识别的智能控电方法 |
CN113470416A (zh) * | 2020-03-31 | 2021-10-01 | 上汽通用汽车有限公司 | 利用嵌入式系统实现车位检测的系统、方法和存储介质 |
CN114612655A (zh) * | 2022-05-10 | 2022-06-10 | 北京圣点云信息技术有限公司 | 一种静脉识别算法移植方法及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160379042A1 (en) * | 2015-06-25 | 2016-12-29 | Confirmix LLC | Apparatuses, systems, and methods for confirming identity |
-
2017
- 2017-03-03 CN CN201710127499.6A patent/CN107016341A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160379042A1 (en) * | 2015-06-25 | 2016-12-29 | Confirmix LLC | Apparatuses, systems, and methods for confirming identity |
Non-Patent Citations (2)
Title |
---|
兰晶: ""基于Labview的人脸识别系统的研究与实现"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
夏尊龙: ""基于ZYNQ的人脸识别系统研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11194999B2 (en) | 2017-09-11 | 2021-12-07 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Integrated facial recognition method and system |
CN107516090A (zh) * | 2017-09-11 | 2017-12-26 | 北京百度网讯科技有限公司 | 一体化人脸识别方法和系统 |
CN107516090B (zh) * | 2017-09-11 | 2021-09-17 | 北京百度网讯科技有限公司 | 一体化人脸识别方法和系统 |
CN107766812B (zh) * | 2017-10-12 | 2021-06-29 | 东南大学—无锡集成电路技术研究所 | 一种基于MiZ702N的实时人脸检测识别系统 |
CN107766812A (zh) * | 2017-10-12 | 2018-03-06 | 东南大学—无锡集成电路技术研究所 | 一种基于MiZ702N的实时人脸检测识别系统 |
CN108764037A (zh) * | 2018-04-24 | 2018-11-06 | 石狮市森科智能科技有限公司 | 一种基于ARM Cotex-A系列平台的人脸检测实现方法 |
CN108764037B (zh) * | 2018-04-24 | 2021-12-24 | 石狮市森科智能科技有限公司 | 一种基于ARM Cotex-A系列平台的人脸检测实现方法 |
CN108681723A (zh) * | 2018-05-25 | 2018-10-19 | 郑州目盼智能科技有限公司 | 一种嵌入人脸跟踪方法 |
CN109446946A (zh) * | 2018-10-15 | 2019-03-08 | 浙江工业大学 | 一种基于多线程的多摄像头实时检测方法 |
CN109446946B (zh) * | 2018-10-15 | 2022-03-18 | 浙江工业大学 | 一种基于多线程的多摄像头实时检测方法 |
CN110348325A (zh) * | 2019-06-20 | 2019-10-18 | 镇江畅行交通科技有限公司 | 一种基于人脸识别技术的公交充值与乘车方法 |
CN110598627A (zh) * | 2019-09-11 | 2019-12-20 | 旭辉卓越健康信息科技有限公司 | 一种基于人脸识别的gui演示工具 |
CN113470416A (zh) * | 2020-03-31 | 2021-10-01 | 上汽通用汽车有限公司 | 利用嵌入式系统实现车位检测的系统、方法和存储介质 |
CN112200957A (zh) * | 2020-09-07 | 2021-01-08 | 东南大学 | 一种基于人脸识别的智能控电方法 |
CN114612655A (zh) * | 2022-05-10 | 2022-06-10 | 北京圣点云信息技术有限公司 | 一种静脉识别算法移植方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107016341A (zh) | 一种嵌入式实时人脸识别方法 | |
CN105988924B (zh) | 一种非侵入式嵌入式软件图形用户界面自动化测试方法 | |
Kaghyan et al. | Activity recognition using k-nearest neighbor algorithm on smartphone with tri-axial accelerometer | |
CN106469296A (zh) | 人脸识别方法、装置和门禁系统 | |
CN103136471A (zh) | 一种恶意Android应用程序检测方法和系统 | |
CN102799821A (zh) | 智能卡与持卡人身份验证的方法及人脸识别身份验证装置 | |
WO2020228283A1 (zh) | 特征提取方法、装置及计算机可读存储介质 | |
CN109784141A (zh) | 一种基于arm处理器的手指静脉识别加密系统 | |
US20160077831A1 (en) | Accurate and performant code design using memoization | |
CN103035051B (zh) | 一种嵌入式人脸识别门禁系统 | |
CN201336048Y (zh) | 基于网络的人脸识别考勤平台 | |
CN107506622B (zh) | 一种基于内存对象访问序列的软件动态胎记及抄袭检测方法 | |
CN112508541A (zh) | 基于培训学员信息数据采集的便携式手机采集软件系统 | |
CN103761512A (zh) | 移动指纹付费方法及系统 | |
CN205621093U (zh) | 基于人脸识别的门禁系统 | |
CN113688916A (zh) | 一种特征数据处理方法及装置 | |
CN106372486A (zh) | 一种鼠标、面部识别系统和方法 | |
Kapoor et al. | IoT based real-time face detection and recognition system | |
CN104778462A (zh) | 一种人脸识别方法及装置 | |
Chen et al. | An efficient and real-time emergency exit detection technology for the visually impaired people based on YOLOv5 | |
Nalawade et al. | Oculus: Turning the visual world into an audible experience | |
Wang et al. | Implementing multimodal biometric solutions in embedded systems | |
CN103854018A (zh) | 一种智能多平台图像采集识别系统 | |
Sun et al. | Research of Image Acquisition and Processing System of the Flow Meter Verification Equipment Based on Embedded Linux System | |
NAGAGOPIRAJU et al. | MACHINE LEARNING AND BLOCKCHAIN-BASED REAL-TIME FACIAL RECOGNITION ATTENDANCE 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: 20170804 |