一种人脸打卡的展示方法、装置、设备及存储介质与流程

文档序号:25779370发布日期:2021-07-09 08:43阅读:87来源:国知局
一种人脸打卡的展示方法、装置、设备及存储介质与流程

1.本发明涉及人脸打卡技术领域,尤其涉及一种人脸打卡的展示方法、装置、设备及存储介质。


背景技术:

2.在人脸打卡算法中,算法需要达到一定的帧率,否则在上下班高峰期时,打卡体验会很差,等待打卡的队伍会越来越长。而当识别效率提高时,则存在展示结果延迟的问题。一般的做法是只要后台给出一个打卡结果,就使gui展示一次打卡结果,展示结果的速率与后台识别速率一致,在刷脸场景中则是识别到人脸并进行匹配,一般来说后台识别速率只有达到1秒5帧,才会有较好的用户体验。而在用户刷脸场景下,用户总是由远及近,看到成功反馈时,再离开摄像头,在这个过程中一般持续1秒至3秒,则会产生多个相同用户的打卡结果,如果简单进行处理,一个结果进行结果展示、记录写入、门禁操作等,对数据库与服务器的压力则会严重增加,造成浪费,并且会使屏幕出现闪烁。


技术实现要素:

3.针对上述问题,本发明的目的在于提供一种人脸打卡的展示方法、装置、设备及存储介质,其能实现刷脸打卡的快速响应,有效缓解屏幕闪烁的问题。
4.第一方面,本发明实施例提供了一种人脸打卡的展示方法,包括:
5.捕捉人脸视频流;
6.从所述人脸视频流中获取人脸图像进行人脸识别,得到待展示的打卡结果,并将所述打卡结果发送到存储队列中;
7.从所述存储队列中获取打卡结果,并将当前获取的打卡结果与当前展示结果进行比对,得到差异数据;
8.根据所述差异数据,对当前展示结果进行局部更新。
9.作为上述方案的改进,所述从所述人脸视频流中获取人脸图像进行人脸识别,包括:
10.按照预设的第一时间间隔从所述人脸视频流中获取人脸图像进行人脸识别;
11.所述从所述存储队列中获取打卡结果,包括:
12.按照预设的第二时间间隔从所述存储队列中获取打卡结果;
13.其中,所述第一时间间隔大于所述第二时间间隔。
14.作为上述方案的改进,所述打卡结果包括打卡时间、认证结果、姓名、工号、人脸照片。
15.作为上述方案的改进,所述根据所述差异数据,对当前展示结果进行局部更新,包括:
16.当所述差异数据为打卡时间时,采用所述打卡结果中的打卡时间对当前展示结果中的打卡时间进行更新;
17.当所述差异数据包括认证结果、姓名、工号、人脸照片中至少一个数据和打卡时间时,采用所述差异数据,对当前展示结果中与所述打卡结果不一致的数据进行更新。
18.作为上述方案的改进,所述方法还包括:
19.显示局部更新后的当前展示结果;
20.在预设的时长阈值内判断是否从所述存储队列中获取到下一个打卡结果;
21.若否,则在局部更新后的当前展示结果的展示时长达到所述时长阈值时,返回显示预设的打卡首页;
22.若是,则将下一个打卡结果与局部更新后的当前展示结果进行比对,得到下一差异数据;根据所述下一差异数据,对局部更新后的当前展示结果进行局部更新。
23.作为上述方案的改进,所述第一时间间隔为200ms,所述第二时间间隔为100ms。
24.第二方面,本发明实施例提供了一种人脸打卡的展示装置,包括:
25.人脸捕捉模块,用于捕捉人脸视频流;
26.打卡结果计算模块,用于从所述人脸视频流中获取人脸图像进行人脸识别,得到待展示的打卡结果,并将所述打卡结果发送到存储队列中;
27.打卡结果比对模块,用于从所述存储队列中获取打卡结果,并将当前获取的打卡结果与当前展示结果进行比对,得到差异数据;
28.局部刷新模块,用于根据所述差异数据,对当前展示结果进行局部更新。
29.第三方面,本发明实施例提供了一种人脸打卡的展示设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面中任意一项所述的人脸打卡的展示方法。
30.第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如第一方面中任意一项所述的人脸打卡的展示方法。
31.相对于现有技术,本发明实施例的有益效果在于:所述人脸打卡的展示方法,包括:捕捉人脸视频流;从所述人脸视频流中获取人脸图像进行人脸识别,得到待展示的打卡结果,并将所述打卡结果发送到存储队列中;从所述存储队列中获取打卡结果,并将当前获取的打卡结果与当前展示结果进行比对,得到差异数据;根据所述差异数据,对当前展示结果进行局部更新。通过将当前获取的打卡结构与当前展示结果进行比对,获得差异数据,并采用所述差异数据对当前展示结果进行局部刷新,实现刷脸打卡的快速响应,有效缓解屏幕闪烁的问题。
附图说明
32.为了更清楚地说明本发明的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
33.图1是本发明第一实施例提供的一种人脸打卡的展示方法的流程图;
34.图2是本发明第二实施例提供的一种人脸打卡的展示装置的示意图;
35.图3是本发明第三实施例提供的一种人脸打卡的展示设备的示意图。
具体实施方式
36.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
37.请参阅图1,其是本发明第一实施例提供的一种人脸打卡的展示方法的流程图,所述人脸打卡的展示方法包括:
38.s1:捕捉人脸视频流;
39.s2:从所述人脸视频流中获取人脸图像进行人脸识别,得到待展示的打卡结果,并将所述打卡结果发送到存储队列中;
40.s3:从所述存储队列中获取打卡结果,并将当前获取的打卡结果与当前展示结果进行比对,得到差异数据;
41.s4:根据所述差异数据,对当前展示结果进行局部更新。
42.示例性地,当用户从远处走向打卡位置时,摄像头一直处于拍摄状态,当捕捉到人脸时,从所述人脸视频流中获取至少一帧人脸图像进行人脸识别,在一个时间段内,可以获得至少一个打卡结果,并将打卡结果推送到存储队列中,等待比对;从所述存储队列中获取打卡结果,并将当前获取的打卡结果与当前展示结果进行比对,得到差异数据。采用所述差异数据对当前展示结果进行局部刷新,可以最大程度减小页面闪烁,而一致部分后台静默处理,由于不是针对所有结果进行即时展示,所以该方法称为延迟展示。实现刷脸打卡的快速响应,有效缓解屏幕闪烁的问题。相对现有技术中对一定时间段内所有打卡结果进行即时展示,本发明实施例在获取与当前展示结果不一样的打卡结果时,才对当前展示结果的差异刷新,可以实现延迟展示。
43.需要说明的是,人脸识别的算法属于现有技术,本发明实施例不进行具体的限定,例如可以采用获取的人脸图像与预存的员工的人脸照片进行相似度计算得到人脸识别结果。当人脸图像与预存的任意一张人脸照片匹配,则获得验证成功的认证结果,否则获得验证失败的认证结果。当获得验证成功的认证结果时,根据所述人脸图像从数据库中获取相应打卡用户的姓名、工号、人脸照片等信息,并所述人脸图像对应的拍摄时间记录为打卡时间,同时将打卡时间、认证结果、姓名、工号、人脸照片打包作为一打卡结果推送到存储队列中等待比对。
44.在一种可选的实施例中,所述从所述人脸视频流中获取人脸图像进行人脸识别,包括:
45.按照预设的第一时间间隔从所述人脸视频流中获取人脸图像进行人脸识别;
46.所述从所述存储队列中获取打卡结果,包括:
47.按照预设的第二时间间隔从所述存储队列中获取打卡结果;
48.其中,所述第一时间间隔大于所述第二时间间隔。
49.在本发明实施例中,采用一个展示时长计时器和一个轮询队列计时器,其中,所述展示时长计时器定义了一个时长阈值,所述轮询队列计时器定义了前端向存储队列询问并获取打卡结果的第二时间间隔,即每达到第二时间间隔询问存储队列是否有新的打卡结果。示例性地,定义一个第一时间间隔,其中,所述第一时间间隔大于所述第二时间间隔;按
照所述第一时间间隔从所述人脸视频流中获取人脸图像进行人脸识别,将人脸识别获得的打卡结果推送到存储队列中,等待比对;同时开始启动所述轮询队列计时器,按照预设的第二时间间隔从所述存储队列中获取打卡结果,将当前获取的打卡结果与当前展示结果进行比对;通过设置获取人脸图像进行人脸识别的第一时间间隔大于获取打卡结果的第二时间间隔,可以保证存储队列不会因为人脸识别算法给出打卡结果的速率大于展示取出速率导致存储队列越来越长。
50.在一种可选的实施例中,所述打卡结果包括打卡时间、认证结果、姓名、工号、人脸照片。
51.在一种可选的实施例中,所述根据所述差异数据,对当前展示结果进行局部更新,包括:
52.当所述差异数据为打卡时间时,采用所述打卡结果中的打卡时间对当前展示结果中的打卡时间进行更新;
53.当所述差异数据包括认证结果、姓名、工号、人脸照片中至少一个数据和打卡时间时,采用所述差异数据,对当前展示结果中与所述打卡结果不一致的数据进行更新。
54.在本发明实施例中,当出现相同用户时,通过本发明实施例的方法,通过打卡结果与当前展示结果的比对,得到的差异数据仅为打卡时间,即仅需进行打卡时间的更新,防止出现相同用户出现多次语音播报造成打断的情况。
55.在一种可选的实施例中,所述方法还包括:
56.显示局部更新后的当前展示结果;
57.在预设的时长阈值内判断是否从所述存储队列中获取到下一个打卡结果;
58.若否,则在局部更新后的当前展示结果的展示时长达到所述时长阈值时,返回显示预设的打卡首页;
59.若是,则将下一个打卡结果与局部更新后的当前展示结果进行比对,得到下一差异数据;根据所述下一差异数据,对局部更新后的当前展示结果进行局部更新。
60.在本发明实施例中,对所述时长阈值的数值不做具体的限定,可根据实际需要自定义,例如所述时长阈值为5s。
61.在一种可选的实施例中,所述第一时间间隔为200ms,所述第二时间间隔为100ms。
62.在其他实施例中,可以根据实际需要将所述第一时间间隔和第二时间间隔设置为其他数值,只要满足所述第一时间间隔大于所述第二时间间隔即可。例如所述第一时间间隔的数值范围在100ms到200ms之间,所述第二时间间隔的数值范围在50ms到100ms之间。
63.相对于现有技术,本发明实施例的有益效果在于:
64.1、通过将当前获取的打卡结果与当前展示结果进行比对,获得差异数据,并采用所述差异数据对当前展示结果进行局部刷新,实现刷脸打卡的快速响应,提升打卡高峰期的打卡效率;减少刷新次数,有效缓解屏幕闪烁的问题;同时一致数据后台静默处理,可以减少冗余记录写入,减少数据库访问,更具有使用价值。
65.2、当出现相同用户时,通过本发明实施例的方法,仅需进行打卡时间的更新,防止出现相同用户出现多次语音播报造成打断的情况。
66.3、避免了多次相同打卡结果进行后台重复操作,减少生成相同记录。
67.请参阅图2,本发明第二实施例提供了一种人脸打卡的展示装置,包括:
68.人脸捕捉模块1,用于捕捉人脸视频流;
69.打卡结果计算模块2,用于从所述人脸视频流中获取人脸图像进行人脸识别,得到待展示的打卡结果,并将所述打卡结果发送到存储队列中;
70.打卡结果比对模块3,用于从所述存储队列中获取打卡结果,并将当前获取的打卡结果与当前展示结果进行比对,得到差异数据;
71.局部刷新模块4,用于根据所述差异数据,对当前展示结果进行局部更新。
72.在一种可选的实施例中,所述打卡结果计算模块2,用于按照预设的第一时间间隔从所述人脸视频流中获取人脸图像进行人脸识别;
73.打卡结果比对模块3,用于按照预设的第二时间间隔从所述存储队列中获取打卡结果;
74.其中,所述第一时间间隔大于所述第二时间间隔。
75.在一种可选的实施例中,所述打卡结果包括打卡时间、认证结果、姓名、工号、人脸照片。
76.在一种可选的实施例中,所述局部刷新模块4包括:
77.第一更新单元,用于当所述差异数据为打卡时间时,采用所述打卡结果中的打卡时间对当前展示结果中的打卡时间进行更新;
78.第二更新单元,用于当所述差异数据包括认证结果、姓名、工号、人脸照片中至少一个数据和打卡时间时,采用所述差异数据,对当前展示结果中与所述打卡结果不一致的数据进行更新。
79.在一种可选的实施例中,所述装置还包括:
80.显示模块,用于显示局部更新后的当前展示结果;
81.判断模块,用于在预设的时长阈值内判断是否从所述存储队列中获取到下一个打卡结果;
82.返回首页模块,用于若否,则在局部更新后的当前展示结果的展示时长达到所述时长阈值时,返回显示预设的打卡首页;
83.局部更新模块,用于若是,则将下一个打卡结果与局部更新后的当前展示结果进行比对,得到下一差异数据;根据所述下一差异数据,对局部更新后的当前展示结果进行局部更新。
84.在一种可选的实施例中,所述第一时间间隔为200ms,所述第二时间间隔为100ms。
85.需要说明的是,本发明实施例所述的人脸打卡的展示装置的原理和技术效果与第一实施例所述的人脸打卡的展示方法相同,在这里不在过多赘述。
86.参见图3,是本发明第三实施例提供的人脸打卡的展示设备的示意图。如图3所示,该人脸打卡的展示设备包括:至少一个处理器11,例如cpu,至少一个网络接口14或者其他用户接口13,存储器15,至少一个通信总线12,通信总线12用于实现这些组件之间的连接通信。其中,用户接口13可选的可以包括usb接口以及其他标准接口、有线接口。网络接口14可选的可以包括wi

fi接口以及其他无线接口。存储器15可能包含高速ram存储器,也可能还包括非不稳定的存储器(non

volatilememory),例如至少一个磁盘存储器。存储器15可选的可以包含至少一个位于远离前述处理器11的存储装置。
87.在一些实施方式中,存储器15存储了如下的元素,可执行模块或者数据结构,或者
memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
96.本发明第四实施例提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如第一实施例中任意一项所述的人脸打卡的展示方法。
97.需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
98.以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1