一种基于WebSocket协议的动态人脸识别方法技术

技术编号:18084494 阅读:74 留言:0更新日期:2018-05-31 12:52
本发明专利技术涉及一种基于WebSocket协议的动态人脸识别方法,包括以下步骤:在算法分析服务器上部署人脸识别算法服务,在Web服务器上部署人脸动态识别系统Web服务,在消息服务器上部署java消息服务;将至少一个人像样本库上传至Web服务器;Web服务器向算法分析服务器下发布控任务;Web服务器向消息服务器发送订阅消息请求并与消息服务器建立连接;算法分析服务器对抓拍的人像与人像样本库中的样本人像进行对比,抓拍的人像和对比结果发送给消息服务器;消息服务器接收抓拍的人像和对比结果,并主动发送给Web服务器,Web服务器对抓拍的人像和对比结果进行显示。本发明专利技术的人脸识别方法提高了信息交换效率和服务器资源使用率,实现了人脸识别消息的及时性。

【技术实现步骤摘要】
一种基于WebSocket协议的动态人脸识别方法
本专利技术涉及人脸识别系统通信实施方法领域,具体地讲涉及一种基于WebSocket协议的动态人脸识别方法。
技术介绍
随着平安城市、智慧城市项目的推进,大量的天网摄像机被建设使用,通过对摄像机的监控查看等,有效提高了公安干警侦破案件的效率。同时,随着人脸识别智能分析算法的不断成熟,动态人脸识别系统开始被广泛的应用到实际生产中。尽管分析算法已经实现了比较好的效果,但分析的结果要实时的展现给用户才能体现它的价值,数据的滞后会使公安人员错失先机,不利于案件侦破。传统的客户端与服务端交互基本上都是采用HTTP轮询或者定时任务触发,但不管哪一种形式都需要客户端不断的与服务器建立HTTP连接,然后等待处理。这种不断反复请求解析的模式非常消耗资源,也导致了消息同步的延迟。这些问题都困扰着公安实战视频侦查工作。
技术实现思路
根据现有技术中存在的问题,本专利技术提供了一种基于WebSocket协议的动态人脸识别方法,能够使得服务端有信息时主动推送给客户端,避免了反复解析协议和数据头信息重复的发送,提高了信息交换效率和服务器CPU使用率,实现了人脸识别消息的及时性。为实现上述专利技术目的,本专利技术提供了一种基于WebSocket协议的动态人脸识别方法,包括如下步骤:S1,在算法分析服务器上部署人脸识别算法服务,在Web服务器上部署人脸动态识别系统Web服务,在消息服务器上部署java消息服务;S2,将至少一个人像样本库上传至Web服务器;S3,Web服务器向算法分析服务器下发布控任务;Web服务器向消息服务器发送订阅消息请求并与消息服务器建立连接;S4,算法分析服务器对抓拍的人像与人像样本库中的样本人像进行对比,并将抓拍的人像和对比结果发送给消息服务器;S5,消息服务器接收抓拍的人像和对比结果,并主动发送给Web服务器,Web服务器对抓拍的人像和对比结果进行显示。优选的,步骤S1中,在消息服务器上部署java消息服务时采用支持WebSocket、AMQP和STOMP协议的ApacheApollo软件。进一步优选的,步骤S2中,所述人像样本库中包含有至少一个需要进行对比的样本人像。更进一步优选的,步骤S3中,Web服务器向算法分析服务器下发布控任务指定一个人样样本库、指定摄像头、设定相似度阈值和发送识别任务指令。更进一步优选的,步骤S3中,Web服务器向消息服务器发送订阅消息请求并与消息服务器建立连接的具体步骤如下:S11,Web服务器调用websocket的初始化接口URL;S12,Web服务器使用STOMP客户端库stomp.js中的over方法,获取STOMP子协议的客户端对象,即消息服务器;S13,Web服务器向消息服务器发起WebSocket连接请求并向消息服务器发送CONNECE帧;S14,消息服务器接收Web服务器发送来的连接请求并与Web服务器成功连接;S15,经过三次如所述步骤S14的连接请求和成功连接后,触发connectCallback事件,Web服务器与消息服务器之间形成TCP通道连接。更进一步优选的,步骤S4的具体步骤如下:S21,算法分析服务器接收摄像头抓拍的人像和Web服务器中的人像样本库中的样本人像,对抓拍的人像和样本人像进行归一化处理,再通过卷积神经网络技术对处理后的抓拍的人像和样本人像进行特征提取,分别得到待识别人像和对比样本人像;S22,通过卷积神经网络技术将待识别人像与对比样本人像进行特征匹配;S23,将特征匹配后得到的所有对比相似度值与Web服务器设定的相似度阈值进行比较,并将抓拍的人像和对比相似度值大于或等于相似度阈值的人像样本库中的相关样本人像发送给消息服务器;若对比相似度值均小于相似度阈值,则仅将抓拍的人像发送给消息服务器。更进一步优选的,步骤S14中,消息服务器接收Web服务器发送来的连接请求,并判断连接请求的协议版本号、数据包的数据及格式是否与其自身的匹配,匹配则接受本次连接请求,与Web服务器成功连接;不匹配消息服务器则将错误通知反馈给Web服务器,Web服务器端找出并解决相应的错误,直至消息服务器与Web服务器成功连接为止。本专利技术的有益效果在于:1)本专利技术的人脸识别方法中,Web服务器向算法分析服务器下发识别任务;Web服务器向消息服务器发送订阅消息请求并与消息服务器建立连接;算法分析服务器对抓拍的人像与人像样本库中的样本人像进行对比,抓拍的人像和对比结果发送给消息服务器;消息服务器接收抓拍的人像和对比结果,并主动发送给Web服务器,Web服务器对抓拍的人像和对比结果进行显示。将Web服务器通过WebSocket协议与消息服务器建立全双工(full-duplex)通信,即Web服务器向消息服务器发送订阅消息请求并与消息服务器建立连接,当消息服务器接收抓拍的人像和对比结果,主动发送给Web服务器,避免了反复解析协议和数据头信息重复的发送,提高了信息交换效率和服务器资源使用率,实现了人脸识别消息的及时性。附图说明图1为本专利技术的人脸识别方法的流程图。图2为本专利技术的人脸识别方法中的系统组成示意图。图3a、图3b分别为HTTP协议和WebSocket协议的消息传送原理图。图4为Web服务器与消息服务器之间的通信示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。如图1所示,一种基于WebSocket协议的动态人脸识别方法,包括如下步骤:S1,在算法分析服务器上部署人脸识别算法服务,在Web服务器上部署人脸动态识别系统Web服务,在消息服务器上部署java消息服务;如图2所示,图2为本专利技术的人脸识别方法中的系统组成示意图;具体的,在消息服务器上部署java消息服务时采用支持WebSocket、AMQP和STOMP协议的ApacheApollo软件。S2,将至少一个人像样本库上传至Web服务器;具体的,所述人像样本库中包含有至少一个需要进行对比的样本人像。S3,Web服务器向算法分析服务器下发布控任务;Web服务器向消息服务器发送订阅消息请求并与消息服务器建立连接;具体的,Web服务器向算法分析服务器下发布控任务指定一个人样样本库、指定摄像头、设定相似度阈值和发送识别任务指令;如图3a和图3b所示,图3a和图3b分别为HTTP协议和WebSocket协议的消息传送原理图,可以看到HTTP交互方式,要不断的建立和关闭HTTP协议,且HTTP是非状态性的,每次都要重新传输identityinfo(鉴别信息);而WebSocket只需要建立一次连接,直到你关闭请求,同时由客户端主动询问,转换为服务端有信息时主动推送。这就避免了反复解析HTTP协议和查看identityinfo信息,提高了宽带利用率和信息交换效率,有效地实现了消息的及时性。如图4所示,图4为Web服务器与消息服务器之间的通信示意图,Web服务器向消息服务器发送订阅消息请求并与消息服务器建立连接的具体步骤如下:S11,Web服务器调用websocket的本文档来自技高网...
一种基于WebSocket协议的动态人脸识别方法

【技术保护点】
一种基于WebSocket协议的动态人脸识别方法,其特征在于,包括如下步骤:S1,在算法分析服务器上部署人脸识别算法服务,在Web服务器上部署人脸动态识别系统Web服务,在消息服务器上部署java消息服务;S2,将至少一个人像样本库上传至Web服务器;S3,Web服务器向算法分析服务器下发布控任务;Web服务器向消息服务器发送订阅消息请求并与消息服务器建立连接;S4,算法分析服务器对抓拍的人像与人像样本库中的样本人像进行对比,并将抓拍的人像和对比结果发送给消息服务器;S5,消息服务器接收抓拍的人像和对比结果,并主动发送给Web服务器,Web服务器对抓拍的人像和对比结果进行显示。

【技术特征摘要】
1.一种基于WebSocket协议的动态人脸识别方法,其特征在于,包括如下步骤:S1,在算法分析服务器上部署人脸识别算法服务,在Web服务器上部署人脸动态识别系统Web服务,在消息服务器上部署java消息服务;S2,将至少一个人像样本库上传至Web服务器;S3,Web服务器向算法分析服务器下发布控任务;Web服务器向消息服务器发送订阅消息请求并与消息服务器建立连接;S4,算法分析服务器对抓拍的人像与人像样本库中的样本人像进行对比,并将抓拍的人像和对比结果发送给消息服务器;S5,消息服务器接收抓拍的人像和对比结果,并主动发送给Web服务器,Web服务器对抓拍的人像和对比结果进行显示。2.根据权利要求1所述的一种基于WebSocket协议的动态人脸识别方法,其特征在于:步骤S1中,在消息服务器上部署java消息服务时采用支持WebSocket、AMQP和STOMP协议的ApacheApollo软件。3.根据权利要求2所述的一种基于WebSocket协议的动态人脸识别方法,其特征在于:步骤S2中,所述人像样本库中包含有至少一个需要进行对比的样本人像。4.根据权利要求3所述的一种基于WebSocket协议的动态人脸识别方法,其特征在于:步骤S3中,Web服务器向算法分析服务器下发布控任务包括指定一个人样样本库、指定摄像头、设定相似度阈值和发送识别任务指令。5.根据权利要求4所述的一种基于WebSocket协议的动态人脸识别方法,其特征在于,步骤S3中,Web服务器向消息服务器发送订阅消息请求并与消息服务器建立连接的具体步骤如下:S11,Web服务器调用websocket的初始化接口URL;S12,Web服务器使用STOMP...

【专利技术属性】
技术研发人员:张海荣刘江明尚兵兵张超吴涛王利梅李凯杨良闯潘成超
申请(专利权)人:安徽四创电子股份有限公司
类型:发明
国别省市:安徽,34

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

1