基于深度学习与强化学习的视频考勤系统及方法与流程

文档序号:20920083发布日期:2020-05-29 14:02阅读:285来源:国知局
基于深度学习与强化学习的视频考勤系统及方法与流程

本发明涉及考勤管理技术领域,特别涉及一种基于深度学习与强化学习的视频考勤系统及方法。



背景技术:

目前生活中存在的考勤系统多种多样,如利用gps定位、通过app签到、ic卡射频识别等一系列考勤方式,不过这些方式仍然存在着效率低下、检测不准确,甚至可以通过一些漏洞避免考勤、非法进入公司或者学校,造成巨大的损失。而视频考勤技术的出现,极大的改变了这种现状,然而目前的视频考勤技术普遍存在以下问题:

问题一、视频考勤过程等待过长:机器提取图像、对比图像时间过长,导致不能很好的实现实时考勤。

问题二、视频考勤不能实现多人同时考勤:目前视频考勤只能同一时间一个人进行考勤,会导致效率低下,等待时间过久。

问题三、识别错误率高:当人的发型、光线明暗发生改变时,考勤判别错误率会提升。



技术实现要素:

本发明的目的在于提供一种基于深度学习与强化学习的视频考勤系统及方法,通过深度学习与强化学习结合,实现多人考勤、及时响应和实时考勤的目的,从而解决视频考勤过程等待过长、不能实现多人同时考勤和识别错误率高等技术问题。

为了解决以上问题,本发明通过以下技术方案实现:

一种基于深度学习与强化学习的视频考勤系统,包括:

信息采样模块,用于获取训练数据和测试数据;

训练模块,用于根据接收到的所述训练数据对深度神经网络架构进行训练,得到训练模型;

测试模块,用于采用接收到的所述测试数据对所述训练模型进行测试,输出测试结果,并判别所述测试结果,输出判别信息;

终端处理模块,当所述判别信息为成功时,其用于将与该判别信息相对应的所述测试结果存储至预先设有的数据库内;以及

强化模块,当所述判别信息为失败时,用于将与所述测试结果所对应的所述测试数据对所述训练模型进行重新训练,更新所述训练模型。

可选地,所述信息采样模块包括摄像子单元和采集数据子单元;

所述摄像子单元用于从摄像中录入人脸图像,得到样本数据;

所述采集数据子单元用于将所述样本数据分为两路相同的数据,包括所述训练数据和所述测试数据,并分别将所述训练数据向所述训练模块进行传送,将所述测试数据向所述测试模块进行传送。

可选地,所述训练模块包括:mtcnn子单元与facenet子单元;

所述mtcnn子单元用于将接收到的所述训练数据中的图像样本进行不同尺度的缩放,构建图像金字塔,生成若干个候选窗口,通过卷积神经网络过滤非人脸候选窗口,输出若干个人脸关键点,得到的图像样本;

所述facenet子单元用于接收所述图像样本,并将所述图像样本输入至深度神经网络架构,将所述深度神经网络架构输出的结果进行归一化处理,再计算三元损失函数获取模型梯度和损失,调整所述深度神经网络架构的参数,更新所述深度神经网络架构,得到所述训练模型。

可选地,所述mtcnn子单元具体用于通过p-net网络所述若干个候选窗口,再使用非最大抑制技术,对所述若干个候选窗口进行第一次挑选,以挑选精确度高于第一预设值的候选窗口;通过r-net网络对挑选的所述候选窗口进行第二次挑选,以挑选精确度高于第二预设值的候选窗口,最后经第二次挑选的所述候选窗口通过o-net网络生成所述图像样本;

所述facenet子单元具体用于通过将所述图像样本输入至所述深度神经网络架构进行训练;

再将所述图像样本的图像特征进行归一化向量建立用来提取特征的embedding特征空间;

通过计算embedding特征空间中的所述图像样本之间的特征向量的欧氏距离,获得三元组,计算三元损失函数,获取损失和梯度;调整所述深度神经网络架构的参数,更新所述深度神经网络架构,得到所述训练模型。

可选地,所述测试模块包括:存储模型子单元和判断单元;

所述存储模型子单元用于存储所述训练模型,并采用接收到的测试数据对当前的所述训练模型进行测试,输出测试结果;

所述判断单元用于对所述测试结果进行判别,输出所述判别信息。

可选地,所述终端处理模块包括后台处理子单元和员工端子单元;

所述后台处理子单元用于当所述判别信息为成功时,其用于将与该判别信息相对应的所述测试结果存储至预先设有的数据库内,并向所述员工端子单元输出打卡信息;

所述员工端子单元作为员工或客户与后台进行交互的界面,显示打卡信息,并且还用于补考勤和请假操作。

可选地,所述强化模块包括蒙特卡洛算法子单元和更新单元;

所述蒙特卡洛算法子单元用于当所述判别信息为失败时,将与所述测试结果所对应的所述测试数据对所述训练模型进行重新训练;

所述更新单元用于更新所述训练模型,并将更新后的所述训练模型传输给所述存储模型子单元中。

可选地,所述打卡信息包括迟到信息、早退信息和成功信息。

另一方面,本发明还提供一种基于深度学习与强化学习的视频考勤方法,包括:

步骤s1、获取训练数据和测试数据;

步骤s2、根据接收到的所述训练数据对深度神经网络架构进行训练,得到训练模型;

步骤s3、采用接收到的所述测试数据对所述训练模型进行测试,输出测试结果,并判别所述测试结果,输出判别信息;

步骤s4、当所述判别信息为成功时,其用于将与该判别信息相对应的所述测试结果存储至预先设有的数据库内;以及

步骤s5、当所述判别信息为失败时,用于将与所述测试结果所对应的所述测试数据对所述训练模型进行重新训练,更新所述训练模型。

可选地,所述步骤s2包括:将接收到的所述训练数据中的图像样本进行不同尺度的缩放,构建图像金字塔,生成若干个候选窗口,通过卷积神经网络过滤非人脸候选窗口,输出若干个人脸关键点,得到的图像样本;将所述图像样本输入至深度神经网络架构,将所述深度神经网络架构输出的结果进行归一化处理,再计算三元损失函数获取模型梯度和损失,调整所述深度神经网络架构的参数,更新所述深度神经网络架构,得到所述训练模型。

本发明与现有技术相比,具有以下优点:

本发明提供的一种基于深度学习与强化学习的视频考勤系统,包括:

信息采样模块,用于获取训练数据和测试数据;训练模块,用于根据接收到的所述训练数据对深度神经网络架构进行训练,得到训练模型;测试模块,用于采用接收到的所述测试数据对所述训练模型进行测试,输出测试结果,并判别所述测试结果,输出判别信息;终端处理模块,当所述判别信息为成功时,其用于将与该判别信息相对应的所述测试结果存储至预先设有的数据库内;以及强化模块,当所述判别信息为失败时,用于将与所述测试结果所对应的所述测试数据对所述训练模型进行重新训练,更新所述训练模型。

由此可知,本发明通过深度学习与强化学习结合,实现多人考勤、及时响应、实时考勤,从而解决视频考勤过程等待过长、不能实现多人同时考勤、识别错误率高等技术问题。对视频考勤识别效率做出很大优化,其识别准确率也得到了极大的提高。

附图说明

图1为本发明一实施例提供的一种基于深度学习与强化学习的视频考勤系统的结构框图;

图2为本发明一实施例提供的一种基于深度学习与强化学习的视频考勤系统中的训练模块的结构框图。

具体实施方式

以下结合附图1~2和具体实施方式对本发明提出的一种基于深度学习与强化学习的视频考勤系统及方法作进一步详细说明。根据下面说明,本发明的优点和特征将更清楚。需要说明的是,附图采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施方式的目的。为了使本发明的目的、特征和优点能够更加明显易懂,请参阅附图。须知,本说明书所附图式所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容能涵盖的范围内。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

结合图1和图2所示,本实施例一种基于深度学习与强化学习的视频考勤系统,包括:

信息采样模块10,用于获取训练数据和测试数据。

优选地,在本实施例中,所述信息采样模块10包括摄像子单元110和采集数据子单元120;

所述摄像子单元110用于从摄像中录入人脸图像,得到样本数据;

所述采集数据子单元120用于将所述样本数据分为两路相同的数据,包括所述训练数据和所述测试数据,并分别将所述训练数据向所述训练模块20进行传送,将所述测试数据向所述测试模块30进行传送。

训练模块20,用于根据接收到的所述训练数据对深度神经网络架构进行训练,得到训练模型。

优选地,所述训练模块20包括:mtcnn子单元210与facenet子单元220;

所述mtcnn子单元210用于将接收到的所述训练数据中的图像样本进行不同尺度的缩放,构建图像金字塔,生成若干个候选窗口,通过卷积神经网络过滤非人脸候选窗口,输出若干个人脸关键点,得到的图像样本;

所述facenet子单元220用于接收所述图像样本,并将所述图像样本输入至深度神经网络架构,将所述深度神经网络架构输出的结果进行归一化处理,再计算三元损失函数获取模型梯度和损失,调整所述深度神经网络架构的参数,更新所述深度神经网络架构,得到所述训练模型。

可选地,所述mtcnn子单元210具体用于通过p-net网络2101所述若干个候选窗口,再使用非最大抑制技术,对所述若干个候选窗口进行第一次挑选,以挑选精确度高于第一预设值的候选窗口;通过r-net网络2102对挑选的所述候选窗口进行第二次挑选,以挑选精确度高于第二预设值的候选窗口,最后经第二次挑选的所述候选窗口通过o-net网络2103生成所述图像样本;

所述facenet子单元220具体用于通过将所述图像样本输入至所述深度神经网络架构2201进行训练;

再将所述图像样本的图像特征进行归一化向量建立用来提取特征的embedding特征空间2202;

通过计算embedding特征空间2202中的所述图像样本之间的特征向量的欧氏距离,获得三元组,计算三元损失(三重损失)函数2203,获取损失和梯度;调整所述深度神经网络架构的参数,更新所述深度神经网络架构,得到所述训练模型。在本实施例中,所述训练模块20还包括采集样本功能单元200用于将所述训练数据转化成图片样本(图片1~图片n)。

即所述训练模块20可以首先利用采集样本功能单元200收集数据样本(训练数据),经由mtcnn子单元210将图像进行不同尺度的缩放,构建图像金字塔,以适应不同大小的人脸的进行检测,通过p-net网络2101生成大量候选窗口(候选框),再使用非最大抑制技术,快速挑选精确度较高候选窗口,通过r-net网络2102对候选框进行高精确度挑选,最后通过o-net网络2103生成最终边框和特征关键点(最终边框用于检测出人脸所在的边界区域,即确定人脸图像位置。由于每个人的脸部关键点位置都不相同,通过提取特征关键点编码,并将这些编码和对应的人脸类别标签录入到数据库,有利于帮助我们识别人脸。假设,我们录入张三的人脸并提取特征关键点且存入数据库,则下一次张三通过摄像头的时候,我们也同样提取关键点,与已保存的关键点进行对比(基于欧氏距离),在一定范围误差下机器可以确定此人是张三);facenet子单元220,通过获取图像样本并输入深度神经网络(深度神经网络框架2201进行训练,再将图像特征进行归一化处理(对深度神经网络架构输出的结果映射到超球面,也就是进行归一化处理)建立embedding特征空间2202,用来提取特征向量,通过计算图像之间特征向量的欧氏距离,获得三元组,来计算三元损失函数2203,获取损失和梯度,调整所述训练模型参数,更新所述训练模型,使相同身份之间的特征距离要尽可能的小,而不同身份之间的特征距离要尽可能的大,不断优化训练模型。

具体的,mtcnn子单元210,用于基于mtcnn多任务卷积神经网络所述训练数据中的数据图像,进行特征提取,对相应的数据图像进行不同比例缩放,筛选出精确度较高的候选框的数据图像,获取人脸的五个关键特征点,如两只眼睛、鼻子、左嘴角和右嘴角。

facenet子单元220,基于mtcnn子单元210提取的数据图像进一步映射至多维空间,对经映射的数据图像采用深度神经网络和三元损失函数进行训练,形成所述训练模型。

测试模块(识别模块)30,用于采用接收到的所述测试数据对所述训练模型进行测试,输出测试结果,并判别所述测试结果,输出判别信息。

优选地,在本实施例中所述测试模块30包括:存储模型子单元310和判断单元320;

所述存储模型子单元310用于存储所述训练模型,并采用接收到的测试数据对当前的所述训练模型进行测试,输出测试结果;

所述判断单元320用于对所述测试结果进行判别,输出所述判别信息。

具体的,所述识别模块30,接收并存储所述训练模块20传来的训练模型,通过对所述测试数据进行测试,计算所述测试数据之间的相似度,通过计算两个特征向量之间的欧式距离进行判定,当欧式距离小于1时,为判定成功(true),当欧式距离大于1时,判定失败(false),得出所述判别信息,若判定成功,则输入到终端处理模块40进行处理,否则将测试失败的测试数据中的样本数据通过传入到强化模块50进行强化学习实现进一步优化所述训练模型的目的。

终端处理模块40,当所述判别信息为成功时,其用于将与该判别信息相对应的所述测试结果存储至预先设有的数据库内。

优选地,所述终端处理模块40包括后台处理子单元410和员工端子单元(员工客户端)420;

所述后台处理子单元410用于当所述判别信息为成功时,其用于将与该判别信息相对应的所述测试结果存储至预先设有的数据库内,并向所述员工端子单元420输出打卡信息;

所述员工端子单元420作为所述员工或客户与后台进行交互的界面,显示打卡信息,并且还用于补考勤和请假操作。优选地,所述打卡信息包括迟到信息、早退信息和成功信息。具体的,后端管理子单元410,用于将识别模块30判断信息(测试结果)存入数据库发送提醒信息至员工端子单元420,实现数据交互。

员工端子单元420具体用于提供员工或客户与本系统的数据交互的平台,使得员工或客户可通过所述员工端子单元420进行登录系统后,查看考勤、请假和补考勤信息。

强化模块50,当所述判别信息为失败时,用于将与所述测试结果所对应的所述测试数据对所述训练模型进行重新训练,更新所述训练模型。

优选地,所述强化模块50包括蒙特卡洛算法子单元510和更新单元520;

所述蒙特卡洛算法子单元510用于当所述判别信息为失败时,将与所述测试结果所对应的所述测试数据对所述训练模型进行重新训练;

所述更新单元520用于更新所述训练模型,并将更新后的所述训练模型传输给所述存储模型子单元310中。

具体的,所述的强化学习模块(强化模块)50,用于对测试错误的样本进行强化学习,以获得最优策略,本案例通过蒙特卡洛强化学习算法主要根据经验(样本数据),从环境中获取一系列的state、action、reward采样来进行学习,通过这些采样序列,自动生成概率分布曲线和累积概率曲线,依照概率曲线进行风险分析,找到最优策略值,更新所述训练模型参数,再传送到识别模块30,用于对已有所述训练模型进行更新,实现更高效率的识别功能。

由此可知,本实施例通过深度学习与强化学习结合,实现多人考勤、及时响应、实时考勤,从而解决视频考勤过程等待过长、不能实现多人同时考勤、识别错误率高等技术问题。对视频考勤识别效率做出很大优化,其识别准确率也得到了极大的提高。

另一方面,基于同一发明构思,本发明还提供一种基于深度学习与强化学习的视频考勤方法,包括:

步骤s1、获取训练数据和测试数据;

步骤s2、根据接收到的所述训练数据对深度神经网络架构进行训练,得到训练模型;将接收到的所述训练数据中的图像样本进行不同尺度的缩放,构建图像金字塔,生成若干个候选窗口,通过卷积神经网络过滤非人脸候选窗口,输出若干个人脸关键点(在本实施例中为5个),得到的图像样本;将所述图像样本输入至深度神经网络架构,将所述深度神经网络架构输出的结果进行归一化处理,再计算三元损失函数获取模型梯度和损失,调整所述深度神经网络架构的参数,更新所述深度神经网络架构,得到所述训练模型。

具体的,通过多任务卷积神经网络对人脸图像进行缩放,形成图像金字塔,再通过筛选精确度高的候选框图像,提取五个人脸关键点(例如两只眼睛、鼻子、左嘴角和右嘴角),输入到facenet子单元进行训练,形成所述训练模型。

步骤s3、采用接收到的所述测试数据对所述训练模型进行测试,输出测试结果,并判别所述测试结果,输出判别信息。

具体的根据已有的训练模型,通过识别模块存储,并使用信息采样提供的测试数据,对已有模型进行测试,若测试结果为true,则传送至终端处理,若测试结果为false,则将判别错误样本传送至强化模块进行强化学习。

步骤s4、当所述判别信息为成功时,其用于将与该判别信息相对应的所述测试结果存储至预先设有的数据库内。

具体的,终端处理模块接受到识别模块判别结果后,将信息存入到数据库,并发送相应提示给员工端子单元,如果员工端子单元发出相应请假、补考勤等请求,需要后端管理人员审核批准,在存储到数据库。

步骤s5、当所述判别信息为失败时,用于将与所述测试结果所对应的所述测试数据对所述训练模型进行重新训练,更新所述训练模型。

具体的,传送至强化模块的数据,通过蒙特卡洛算法进行强化学习,自动生成概率分布曲线和累积概率曲线,依照概率曲线进行风险分析,并更新模块传送至识别模块。

综上所述,本发明提供的一种基于深度学习与强化学习的视频考勤系统,包括:信息采样模块,用于获取训练数据和测试数据;训练模块,用于根据接收到的所述训练数据对深度神经网络架构进行训练,得到训练模型;测试模块,用于采用接收到的所述测试数据对所述训练模型进行测试,输出测试结果,并判别所述测试结果,输出判别信息;终端处理模块,当所述判别信息为成功时,其用于将与该判别信息相对应的所述测试结果存储至预先设有的数据库内;以及强化模块,当所述判别信息为失败时,用于将与所述测试结果所对应的所述测试数据对所述训练模型进行重新训练,更新所述训练模型。

由此可知,本发明优点在于对于多人同时通过摄像头时,可以选出多个人脸框,对比数据库数据,实现多人考勤;本发明在于对于训练后的模型,将可以更精确的定位到所有人脸框,时间及速度有明显提高。通过深度学习与强化学习结合,实现多人考勤、及时响应、实时考勤,从而解决视频考勤过程等待过长、不能实现多人同时考勤、识别错误率高等技术问题。对视频考勤识别效率做出很大优化,其识别准确率也得到了极大的提高。

应当注意的是,在本文的实施方式中所揭露的装置和方法,也可以通过其他的方式实现。以上所描述的装置实施方式仅仅是示意性的,例如,附图中的流程图和框图显示了根据本文的多个实施方式的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用于执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本文各个实施方式中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1