一种基于云端API的多线程动态人脸签到方法技术

技术编号:20118870 阅读:50 留言:0更新日期:2019-01-16 12:15
本发明专利技术公开了一种基于云端API的多线程动态人脸签到方法,该方法建立所需的人脸库、管理信息库,以及所需的三个线程;人脸抓取线程在现场动态抓取视频帧并实时检测视频中的人脸,按适当比例传递人脸视频帧给另外两个线程;视频显示线程在移动终端屏幕上实时显示视频流并在人脸上画框;人脸识别线程将人脸视频帧发送给云端API进行识别,接收识别信息,检验签到是否成功,并更新数据库;视频显示线程在移动终端屏幕上显示签到结果。本发明专利技术利用并发技术高效处理人脸识别流程,能够实现三线程并发完成抓拍、显示、识别处理任务,从而提高软件运行效率,缩短签到流程,优化用户体验,具有良好的市场前景和应用价值。

A Multithread Dynamic Face Sign-in Method Based on Cloud API

The invention discloses a multi-threaded dynamic face check-in method based on cloud API, which establishes the required face database, management information database and three threads; the face grabbing thread dynamically grabs the video frame on the spot and detects the face in the video in real time, transfers the face video frame to the other two threads in an appropriate proportion; the video display thread is on the mobile terminal screen. Real-time display of video stream and frame on face; Face recognition thread sends face video frame to cloud API for recognition, receives recognition information, verifies the success of check-in, and updates the database; Video display thread displays check-in results on mobile terminal screen. The invention utilizes concurrent technology to process face recognition process efficiently, realizes three threads concurrently to complete capture, display and recognition processing tasks, thereby improving software operation efficiency, shortening check-in process, optimizing user experience, and has good market prospects and application value.

【技术实现步骤摘要】
一种基于云端API的多线程动态人脸签到方法
本专利技术涉及一种动态人脸签到方法,具体涉及一种基于云端API的多线程动态人脸签到方法,属于并发的模式识别与图像处理应用软件领域。
技术介绍
近年来,随着计算机技术的迅速发展,人脸识别技术得到广泛研究与开发,成为图像处理领域中最热门的研究主题之一。人脸识别的目的是从人脸图像中抽取人的个性化特征,并以此来识别人的身份。因此在各种需要身份认证的场景中,都可以通过这一技术来代替已有的各种身份认证技术。目前市场上常用的身份识别方法有指纹识别、虹膜识别、声纹识别、人脸识别等。由于声纹识别技术仍不够成熟、难以实现,虹膜、指纹等信息涉及更多的个人隐私,而人脸识别这种方法信息采集最为容易,如果能够达到高效准确,就会得以广泛的应用,产生巨大的经济效益和社会效益。针对校园环境,借助人脸识别技术,进行各种场合的身份认证具有更紧迫的需求和意义。随着国家教育事业对学风建设的加强,规范考场秩序、严肃考风考纪成为了“以考风促学风”的重要手段。以科技手段对考生进行身份认证和识别签到成为了学校的诉求。但是已有的人脸识别签到软件仍存在一些缺陷。一方面,学校考场的人脸识别机器大多使用将身份证照片与考生面部进行1:1的比对,这种简单的签到方式仍然无法避免替考现象的发生,考生只需携带两张身份证即可蒙混过关。另一方面,市面上的人脸识别签到软件多采用拍照,利用图像进行静态比对,需要人工按键进行拍照,签到效率低下。基于以上原因,需要一种动态人脸签到方法,要求其设计合理,工作性能稳定,动态识别且识别速度快,同时其应当易于维护和操作简单的特点。
技术实现思路
本专利技术的目的在于实现一种基于云端API的多线程动态人脸签到方法。该方法建立所需的人脸库和管理信息库,以及所需的三个线程;人脸抓取线程在现场动态抓取视频帧并实时检测视频中的人脸,按适当比例传递人脸视频帧给另外两个线程;视频显示线程在移动终端屏幕上实时显示视频流并在人脸上画框;人脸识别线程将人脸视频帧发送给云端API进行识别,接收识别信息,检验签到是否成功,并更新数据库;视频显示线程在移动终端屏幕上显示签到结果。具体来说,本专利技术的方法包括下列步骤:A.建立所需的人脸信息库、管理信息库以及三个线程,具体步骤如下:A1.在人脸识别云端建立人脸信息库;所述的人脸识别云端是提供人脸识别服务API的服务器,可以位于私有云或者公有云上,API包括但不限于自主开发API和商业API;所述的人脸信息库包括但不限于个人标识信息和人脸图片,每个人的人脸图片的数目不限于1张,所有的人脸图片组织在数据库中,组织结构不限于树状结构;A2.在信息管理服务器的管理信息库中建立场地信息表及个人信息表;所述的场地信息表包括但不限于:时间段、场地标识、团体标识、个人标识、签到记录;所述的个人信息表包括但不限于:所属团体标识、所属场地标识、姓名、编号、人脸图片、签到记录;A3.在人脸签到移动终端(简称移动终端)上,创建三个线程,具体步骤如下:A3.1.创建一个人脸抓取线程,从摄像头输入的视频流中动态抓取视频帧,实时检测人脸;A3.2.创建一个视频显示线程,实时显示抓到的视频帧,对检测到的人脸画框,并显示最后的签到结果;A3.3.创建一个人脸识别线程,将检测到的人脸视频帧发送给云端API做人脸识别,接收识别结果,检验签到是否成功,并更新数据库;B.人脸抓取线程在现场动态抓取视频帧并实时检测视频中的人脸,按适当比例传递人脸视频帧给另外两个线程,具体步骤如下:B1.人脸抓取线程开启移动终端摄像头,从视频流中动态抓取视频帧;B2.对视频帧做预处理,具体实现步骤如下:B2.1.将视频帧图像的尺寸缩小到所需的比例,提高检测和识别的速度;所述的比例包括但不限于1/4;B2.2.将缩小后的视频帧图像转换成人脸识别需要的格式;所述的格式包括但不限于RGB格式;B3.对预处理后的视频帧图像执行人脸检测;B4.若存在人脸,则存储所有的人脸位置信息,按比例选择适当的帧数,连同人脸位置信息一起,传递给视频显示线程和人脸识别线程;B4.1.每隔M帧将图像帧传递给视频显示线程,所述的M为正整数,包括但不限于2;B4.2.每隔N帧将图像帧传递给人脸识别线程,所述的N为正整数,包括但不限于9;B5.若不存在人脸,每隔M帧将图像帧传递给视频显示线程,所述的M为正整数,包括但不限于2;C.视频显示线程在移动终端屏幕上实时显示视频帧并在人脸上画框,具体步骤如下:C1.获取人脸抓取线程传递来的视频帧图像及检测到的人脸位置信息;C2.将缩小后的视频帧图像放大到原图像尺寸;如果人脸位置参数不为空,则转换位置参数到原图像尺寸,并执行C3;如果人脸位置参数为空,则直接执行C4;C3.利用人脸位置参数信息在人脸周围画出矩形框,在人脸框下方显示“识别中”;C4.在移动终端屏幕上显示合成后的视频帧;D.人脸识别线程将人脸视频帧发送给云端API进行识别,接收识别结果,检验签到是否成功,并更新数据库,具体步骤如下:D1.接收人脸抓取线程传递过来的人脸视频帧;D2.调用云端API,将视频帧发送给云端API,设置发送参数值要求API返回相似度最高的K个候选人,所述的K包括但不限于1;D3.接收云端API反馈的识别信息,检验签到是否成功,具体步骤如下:所述的识别信息包括但不限于:姓名、编号、相似度;D3.1.设置相似度阈值为T,所述的T包括但不限于70;D3.2.如果相似度大于等于T,则表明已经识别出当前人员的身份;否则表示识别失败;D3.3.如果已经识别出该人员身份,则判断该人员是否属于本场人员,具体步骤如下:D3.3.1.获取当前时间,从场地信息表中获取当前时间对应的本场人员名单;D3.3.2.在本场人员名单中查找识别出的编号,查找到则记录签到状态为“签到成功”;否则为“签到失败”;D4.将签到状态信息传递给视频显示线程,并更新管理信息库;传递和更新的信息包括但不限于:姓名、编号、相似度、签到记录;E.视频显示线程在移动终端屏幕上显示签到识别结果,具体步骤如下:E1.如果签到成功,在人脸框上方显示“签到成功”,在人脸框下方显示人员姓名、编号;E2.如果签到失败,在人脸框上方显示“签到失败,请工作人员核实该人员身份”。与其他人脸签到方法相比,本专利技术利用并发技术高效处理人脸识别流程,能够实现三线程并发完成抓拍、显示、识别处理任务,从而提高软件运行效率,缩短签到流程,优化用户体验,具有良好的市场前景和应用价值。本方法可以应用于各种人员签到场景,包括但不限于幼儿园、小学、中学、大等各种学校的教室、考场签到,以及各种企事业单位的会议、活动签到。附图说明图1:基于云端API的多线程动态人脸签到流程图具体实施方式下面结合附图,通过对某校考试的某考场中若干考生进行签到的过程说明,作为实施例对本专利技术方法做进一步描述。方法流程图如图1所示。本专利技术方法包括:1)建立所需的学生人脸库和管理信息库,以及所需要的人脸抓取线程、视频显示线程和人脸识别线程;2)人脸抓取线程在现场动态抓取视频帧并实时检测视频中的人脸,按适当比例传递人脸视频帧给另外两个线程;3)视频显示线程实时显示视频帧并在人脸上画框;4)人脸识别线程将人脸视频帧发送给云端API进行识别,接收识别结果,检验签到是否成本文档来自技高网...

【技术保护点】
1.一种基于云端API的多线程动态人脸签到方法,其步骤包括:A.建立所需的人脸信息库、管理信息库以及三个线程,具体步骤如下:A1.在人脸识别云端建立人脸信息库;所述的人脸识别云端是提供人脸识别服务API的服务器,可以位于私有云或者公有云上,API包括但不限于自主开发API和商业API;所述的人脸信息库包括但不限于个人标识信息和人脸图片,每个人的人脸图片的数目不限于1张,所有的人脸图片组织在数据库中,组织结构不限于树状结构;A2.在信息管理服务器的管理信息库中建立场地信息表及个人信息表;所述的场地信息表包括但不限于:时间段、场地标识、团体标识、个人标识、签到记录;所述的个人信息表包括但不限于:所属团体标识、所属场地标识、姓名、编号、人脸图片、签到记录;A3.在人脸签到移动终端(简称移动终端)上,创建三个线程;B.人脸抓取线程在现场动态抓取视频帧并实时检测视频中的人脸,按适当比例传递人脸视频帧给另外两个线程,具体步骤如下:B1.人脸抓取线程开启移动终端摄像头,从视频流中动态抓取视频帧;B2.对视频帧做预处理;B3.对预处理后的视频帧图像执行人脸检测;B4.若存在人脸,则存储所有的人脸位置信息,按比例选择适当的帧数,连同人脸位置信息一起,传递给视频显示线程和人脸识别线程;B5.若不存在人脸,每隔M帧将图像帧传递给视频显示线程,所述的M为正整数,包括但不限于2;C.视频显示线程在移动终端屏幕上实时显示视频帧并在人脸上画框,具体步骤如下:C1.获取人脸抓取线程传递来的视频帧图像及检测到的人脸位置信息;C2.将缩小后的视频帧图像放大到原图像尺寸;如果人脸位置参数不为空,则转换位置参数到原图像尺寸,并执行C3;如果人脸位置参数为空,则直接执行C4;C3.利用人脸位置参数信息在人脸周围画出矩形框,在人脸框下方显示“识别中”;C4.在移动终端屏幕上显示合成后的视频帧;D.人脸识别线程将人脸视频帧发送给云端API进行识别,接收识别结果,检验签到是否成功,并更新数据库,具体步骤如下:D1.接收人脸抓取线程传递过来的人脸视频帧;D2.调用云端API,将视频帧发送给云端API,设置发送参数值要求API返回相似度最高的K个候选人,所述的K包括但不限于1;D3.接收云端API反馈的识别信息,检验签到是否成功,所述的识别信息包括但不限于:姓名、编号、相似度;D4.将签到状态信息传递给视频显示线程,并更新管理信息库;传递和更新的信息包括但不限于:姓名、编号、相似度、签到记录;E.视频显示线程在移动终端屏幕上显示签到识别结果,具体步骤如下:E1.如果签到成功,在人脸框上方显示“签到成功”,在人脸框下方显示人员姓名、编号;E2.如果签到失败,在人脸框上方显示“签到失败,请工作人员核实该人员身份”。...

【技术特征摘要】
1.一种基于云端API的多线程动态人脸签到方法,其步骤包括:A.建立所需的人脸信息库、管理信息库以及三个线程,具体步骤如下:A1.在人脸识别云端建立人脸信息库;所述的人脸识别云端是提供人脸识别服务API的服务器,可以位于私有云或者公有云上,API包括但不限于自主开发API和商业API;所述的人脸信息库包括但不限于个人标识信息和人脸图片,每个人的人脸图片的数目不限于1张,所有的人脸图片组织在数据库中,组织结构不限于树状结构;A2.在信息管理服务器的管理信息库中建立场地信息表及个人信息表;所述的场地信息表包括但不限于:时间段、场地标识、团体标识、个人标识、签到记录;所述的个人信息表包括但不限于:所属团体标识、所属场地标识、姓名、编号、人脸图片、签到记录;A3.在人脸签到移动终端(简称移动终端)上,创建三个线程;B.人脸抓取线程在现场动态抓取视频帧并实时检测视频中的人脸,按适当比例传递人脸视频帧给另外两个线程,具体步骤如下:B1.人脸抓取线程开启移动终端摄像头,从视频流中动态抓取视频帧;B2.对视频帧做预处理;B3.对预处理后的视频帧图像执行人脸检测;B4.若存在人脸,则存储所有的人脸位置信息,按比例选择适当的帧数,连同人脸位置信息一起,传递给视频显示线程和人脸识别线程;B5.若不存在人脸,每隔M帧将图像帧传递给视频显示线程,所述的M为正整数,包括但不限于2;C.视频显示线程在移动终端屏幕上实时显示视频帧并在人脸上画框,具体步骤如下:C1.获取人脸抓取线程传递来的视频帧图像及检测到的人脸位置信息;C2.将缩小后的视频帧图像放大到原图像尺寸;如果人脸位置参数不为空,则转换位置参数到原图像尺寸,并执行C3;如果人脸位置参数为空,则直接执行C4;C3.利用人脸位置参数信息在人脸周围画出矩形框,在人脸框下方显示“识别中”;C4.在移动终端屏幕上显示合成后的视频帧;D.人脸识别线程将人脸视频帧发送给云端API进行识别,接收识别结果,检验签到是否成功,并更新数据库,具体步骤如下:D1.接收人脸抓取线程传递过来的人脸视频帧;D2.调用云端API,将视频帧发送给云端API,设置发送参数值要求API返回相似度最高的K个候选人,所述的K包括但不限于1;D3.接收云端API反馈的识别信息,检验签到是否成功,所述的识别信息包括但不限于:姓名、编号、相似度;D4.将签到...

【专利技术属性】
技术研发人员:赵霞刘庆同吴雅妮潘德库陶宇航袁潇毛楷成
申请(专利权)人:北京工商大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1