发明内容
本发明的目的在于解决现有技术中的问题,提供一种基于加权元度量学习的开放集掌纹识别系统及方法
为达到上述目的,本发明采用以下技术方案予以实现:
一种基于加权元度量学习的开放集掌纹识别方法,包括以下步骤:
当检测到待验证身份信息人员的人体信息时,进行掌纹图像采集,否则继续监测人体信息;
采集待验证身份信息人员的掌纹图像,并将获取到的掌纹图像传输至边缘服务器;
边缘服务器对接收到的掌纹图像进行处理,并对处理后的掌纹图像通过基于权重的元度量学习方法进行识别匹配,然后反馈识别匹配结果。
上述方法进一步的改进在于:
所述掌纹图像通过有线或无线方式传输至边缘服务器。
所述对接收到的掌纹图像进行处理包括去噪、图像增强、手掌检测定位、关键点检测、根据手掌关键点位置坐标信息并建立相应的坐标系、以及对用于掌纹图像识别的掌纹图像感兴趣区域进行提取。
所述对处理后的掌纹图像通过基于权重的元度量学习方法进行识别匹配的具体方法如下:
步骤1:假设训练集中共有n个样本,则训练集Dtrain为:
Dtrain={(x0,y0),...,(xi,yi),…,(xn,yn)}
其中,yi是图像xi的标签;
根据元度量学习的形式,从Dtrain中随机选择属于N个类别的M张掌纹图像生成新任务;其中,M<n;
步骤2:从训练集Dtrain中随机采样选取N×k张图像作为支持集S,则支持集S为:
S={(xi,yi),i=1,...,N×k}
其中,N×k<M;
将训练集中其余图像采样为询问集,询问集记为Q={(xi,yi),i=N×k+ 1,...,M};
步骤3:计算查询样本和元支持集之间的距离,通过限制它们之间的距离,元度量学习能够正确识别来自询问集Q的查询图像和来自支持集S的支持图像;优化对象表示为:
L=D(S,Q) (1)
其中,D(.)代表距离;
在特征空间中,支持集中相同类别的所有特征形成一个元支持集,表示为:
其中,j代表第j个类别,f(.)代表由卷积神经网络实现的嵌入函数;wij是图像的权重;查询样本和元支持集之间的距离受到约束以便区分表示,距离表示为:
其中,是第j′个类别的查询图像,/>是第j个元支持集,d(.)表示通过f(.)提取的不同样本的特征之间的距离;
步骤4:在每个训练迭代期间,将具有相同类的查询样本和元支持集组合为正元集,并将不同类的查询样本和元支持集组合为负元集;通过最小化正元集之间的距离并增大与负元集之间的距离来优化模型;
步骤5:采用硬样本挖掘和加权策略选择信息性元集;基于正负元集之间的相对相似性,选择信息性样本以形成正或负元集;对于查询样本当/>满足条件(4)时,选择正元集中的正对/>所述条件(4)如下:
其中,m代表边距;
对于查询样本当/>满足条件(5)时,选择负元集中的负对所述条件(5)如下:
对于查询样本,所选的负元集和正元集分别表示为和/>然后为所选的正、负元集进一步分配不同的权重;
对于正元集中的正对其权重为:
其中,α和γ是两个超参数;
对于负元集中的负对其权重为:
其中,β和γ是两个超参数;
故基于权重的元度量学习方法的总体优化对象表述为:
其中,l代表查询样本数,分别为在式(6)或式(7)中定义的权重。
本发明还公开了一种基于加权元度量学习的开放集掌纹识别系统,包括:
红外人体检测单元,所述红外人体检测单元用于在检测到待验证身份信息人员的人体信息时,进行掌纹图像采集,否则继续监测人体信息;
掌纹图像采集单元,所述掌纹图像采集单元用于采集待验证身份信息人员的掌纹图像,并将获取到的掌纹图像传输至边缘服务器;
边缘服务器,所述边缘服务器用于对接收到的掌纹图像进行处理,并对处理后的掌纹图像通过基于权重的元度量学习方法进行识别匹配,然后反馈识别匹配结果。
上述系统还包括:
红外体温测量单元,用于在对掌纹图像进行识别的同时对手掌及手腕温度进行测量,并将体温测量结果发送到监控单元进行存储;
数据传输单元,所述数据传输单元掌纹图像采集单元与边缘服务器之间进行数据传输;
门锁控制单元,所述门锁控制单元用于接收控制指令,控制社区门禁。
一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上述方法的步骤。
与现有技术相比,本发明具有以下有益效果:
本发明提供基于边缘服务器的非接触式开放集掌纹识别社区门禁系统,通过将边缘计算的方法应用到掌纹识别中,满足了掌纹识别应用时的低时延要求,该社区门禁系统包括边缘服务器和若干个分布在社区入口处的掌纹识别门禁终端;目前的掌纹识别方法主要集中在封闭场景上,区别于传统方法,本发明提出的一种新颖的基于权重的元度量学习方法用于非接触开放集掌纹识别场景中,在训练过程中,该方法仅采用部分类别来训练网络模型,使得模型具有良好的泛化能力,同时基于权重的元度量学习方法可以解决传统掌纹识别装置因注册人数增加导致数据呈指数增长带来的识别效率差,不适用于大型社区门禁的缺点;本发明使用非接触掌纹识别的方式对进出社区人员的身份信息进行验证,同时对其体温进行测量,监控单元根据接收到的来自掌纹识别单元的图像识别结果控制门锁控制单元的工作状态,即当身份信息验证通过时,控制门禁打开,当身份验证信息未通过时,报警器报警,提示安全保卫人员进一步核查进行身份验证人员的身份信息,并且由监控单元存储身份验证信息以及红外体温测量单元测量得到的体温信息。本发明采用非接触式掌纹识别的方式进行身份信息验证,减少公共环境下身份信息验证带来的病毒感染以及卫生安全问题,该系统可以对体温异常者进行密切追踪,起到了加强社区安全性的作用。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明实施例的描述中,需要说明的是,若出现术语“上”、“下”、“水平”、“内”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
此外,若出现术语“水平”,并不表示要求部件绝对水平,而是可以稍微倾斜。如“水平”仅仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜。
在本发明实施例的描述中,还需要说明的是,除非另有明确的规定和限定,若出现术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
下面结合附图对本发明做进一步详细描述:
本发明旨在提供一种基于加权元度量学习的开放集掌纹识别社区门禁系统,该社区门禁系统包括一套边缘服务器和若干个分布在社区入口处的掌纹识别门禁终端,通过将边缘计算应用到掌纹识别系统中,满足掌纹识别应用的低时延要求,本发明同时将一种新颖的基于权重的元度量学习方法用于非接触开放集掌纹识别技术中,该方法在模型训练过程中,仅采用已知的类别进行一次性地训练网络模型,使得模型具有良好的泛化能力,可以直接应用于识别训练集没出现过的类别,无需重新更新和训练识别模型,提高识别系统的鲁棒性和便利性,解决了传统生物信息识别装置因注册人数增加导致数据呈指数增长带来的识别效率差,不适用于大型社区门禁的缺点。
参见图1,本发明实施例公开了一种基于加权元度量学习的开放集掌纹识别方法,包括以下步骤:
步骤1:假设训练集中共有n个样本,训练集记为 Dtrain={(x0,y0),...,(xi,yi),...,(xn,yn)},yi是图像xi的标签。根据元度量学习的形式,随机选择属于N个类别的M(M<n)张掌纹图像生成新任务,即从Dtrain中随机选择M张图像;
步骤2:从训练集中随机采样选取N×k<M张图像(N个类别,每个类别选取k张图像)作为支持集,支持集记为S={(xi,yi),i=1,...,N×k};将训练集中其余图像采样为询问集,询问集记为Q={(xi,yi),i=N×k+1,...,M};
步骤3:计算查询样本和元支持集之间的距离,通过限制它们之间的距离,元度量学习可以正确识别来自询问集Q的查询图像和来自支持集S的支持图像。优化对象可以表示为:
L=D(S,Q) (1)
其中,D(·)代表距离。
传统的基于深度度量的掌纹识别方法通过操作样本对之间的距离来训练模型。与传统方法不同,元度量学习采取特殊训练数据采样格式,该基于权重的元度量学习方法通过基于集合的距离进行了优化,以提高泛化能力。
在特征空间中,支持集中相同类别的所有特征形成一个元支持集,表示为
其中j代表第j个类别,f(·)代表由卷积神经网络(CNN)实现的嵌入函数。wij是图像的权重。查询样本和元支持集之间的距离受到约束以便区分表示,与(2) 类似,距离可以表示为
其中,是第j′个类别的查询图像,/>是第j个元支持集,d(·)表示通过f(·) 提取的不同样本的特征之间的距离,可以是欧几里德距离或余弦距离。
步骤4:在每个训练迭代期间,将具有相同类的查询样本和元支持集组合为正元集,并将不同类的查询样本和元支持集组合为负元集。通过最小化正元集之间的距离并增大与负元集之间的距离来优化模型。
步骤5:基于权重的元度量学习方法是通过限制正元集和负元集的距离来优化的。但是直接训练模型既困难、效率又低;因此,采用硬样本挖掘和加权策略选择信息性元集。基于正负元集之间的相对相似性,选择信息性样本以形成正或负元集。对于查询样本当/>满足条件(4)时,选择正元集中的正对/>
其中m代表边距。
同样,对于查询样本当/>满足条件(5)时,选择负元集中的负对
通过上面的硬样本挖掘,它可以放弃信息较少的图像,从而提高训练效率。对于查询样本,所选的负元集和正元集分别表示为和/>之后,为所选的正、负元集进一步分配不同的权重。
对于正元集中的正对其权重可以写为
其中α和γ是两个超参数。
相应地,对于负元集中的负对其权重可以写为
其中β和γ是两个超参数。
因此,基于权重的元度量学习方法的总体优化对象可以表述为
其中l代表查询样本数,分别为在(6)或(7)中定义的权重。
如图2所示,本发明实施例公开了一种基于加权元度量学习的开放集掌纹识别系统,包括一套边缘服务器和若干个分布在社区入口处的掌纹识别门禁终端。
边缘服务器是相对云端来说距离终端客户以及终端设备较近的具有一定储存、计算能力的设备,边缘服务器可以满足终端客户以及终端设备的实时要求。边缘服务器用于对接收到的掌纹图像进行处理,并对处理后的掌纹图像通过基于权重的元度量学习方法将掌纹图像转换为特征向量,然后通过比较特征向量之间的距离判断待识别用户的身份,然后反馈识别匹配结果,最终给出通过与否的决策作用于门禁开关。
掌纹识别门禁终端包括红外人体检测单元,掌纹图像采集单元,数据传输单元,红外体温测量单元以及门锁控制单元。若干个分布在社区入口处的掌纹识别门禁终端与边缘服务器之间通过数据传输单元互相进行数据传输;数据单元数据传输方式包括有线传输和无线传输两种方式,其中有线传输通过数据光缆在边缘服务器与掌纹识别门禁终端之间进行数据的传送,无线传输包括使用无线局域网以及移动通信协议等方式在边缘服务器与掌纹识别门禁终端之间进行数据的传送。
红外人体检测单元用于检测人体信息,在没有检测到人体信息时,其他各单元处于休眠状态以减少能源的消耗,当红外人体检测单元检测到人体信息时,其他各单元通电进入工作状态;
掌纹图像采集单元为一组红外以及可见光组合式高清双目无畸变摄像头。掌纹图像采集单元用于获取待验证身份信息人员的手掌掌纹图像,并将获取到的掌纹图像通过数据传输单元传输到边缘服务器中进行处理。
边缘服务器对接收到的掌纹图像进行处理以及识别,包括掌纹图像预处理、手掌检测定位以及关键点检测、掌纹图像感兴趣区域提取以及掌纹图像识别。并将掌纹图像识别结果发送给监控单元进行记录;
掌纹图像识别采用基于权重的元度量学习方法,区别于传统方法,该基于权重的元度量学习方法用于非接触开放集掌纹识别场景中,在模型训练过程中,该方法仅采用已知的类别进行一次性地训练网络模型,使得模型具有良好的泛化能力,可以直接应用于识别训练集没出现过的类别,无需重新更新和训练识别模型,提高识别系统的鲁棒性和便利性;同时该基于权重的元度量学习方法可以解决传统掌纹识别装置因注册人数增加导致数据呈指数增长带来的识别效率差,不适用于大型社区门禁的缺点;
掌纹图像预处理对掌纹图像采集单元获得的掌纹图像进行去噪、图像增强等处理。手掌检测定位以及关键点检测对掌纹图像采集单元获得的掌纹图像中手掌位置进行检测和定位,并对图像中手掌位置关键点进行检测。掌纹图像感兴趣区域提取网络根据上述步骤所获得的手掌关键点位置坐标信息并建立相应的坐标系,按照一定算法对真正用于掌纹图像识别的掌纹图像感兴趣区域(RIO)进行提取。
区别于传统掌纹识别网络用于封闭环境下的掌纹识别,掌纹图像识别网络采用一种新颖的基于权重的元度量学习方法用于非接触开放集掌纹识别场景中,在训练过程中,该方法仅采用部分类别来训练网络模型,使得模型具有良好的泛化能力。
掌纹图像识别网络将掌纹图像感兴趣区域(RIO)作为输入,对掌纹图像信息进行识别并对所对应的身份信息进行判定。
边缘服务器还包括人体掌纹信息库,其中储存了允许进入社区人员的掌纹图像信息,当掌纹图像识别单元开始工作时,将输入到掌纹识别单元中的掌纹图像在人体掌纹信息库中进行搜索匹配。
红外体温检测单元用于在对掌纹图像进行识别的同时对手掌及手腕温度进行测量,并将体温测量结果发送到监控单元进行存储。
边缘服务器还包括监控单元,当身份验证信息通过时,监控单元记录识别记录,同时边缘服务器发出指令,控制门锁控制单元工作状态,打开社区门禁允许验证人员进入。
监控单元还包括报警模块,当身份验证信息未通过时,提示再次进行验证,三次验证未通过时,报警模块开始报警,提示安保人员进一步核查待进入社区人员的身份信息。
监控单元,当身份信息验证未通过时,将报警信息传输至监控单元,由安保人员确认待进入社区人员身份信息,若为允许进入的人员,则由安保人员将掌纹识别单元从识别模式切换到掌纹图像录入模式;具体实施方式为,由掌纹图像采集单元获取待进入社区人员的掌纹图像之后传输到掌纹识别单元,将所得到的掌纹图像存储到该门禁人体掌纹信息库中,录入完毕之后,掌纹图像识别单元切换到正常识别状态,该人员随后即可通过掌纹识别的验证方式进入社区。
本发明的原理及工作过程:
红外体温检测单元在进行掌纹图像进行识别的同时对手掌及手腕温度进行测量,并将测量结果发送到监控单元进行存储;边缘服务器根据识别结果进行判断,当使用人员身份信息验证通过时,边缘服务器对门锁控制单元发出指令,门锁控制单元控制社区门禁打开,否则社区门禁状态不发生改变;当身份验证信息未通过时,边缘服务器发送控制指令到报警模块,报警模块开始报警,提示安保人员进一步核查待进入社区人员的身份信息,将报警信息以及体温测量单元测得的体温结果均发送到监控单元进行保存,以便解决突发紧急情况下的人员追踪问题。
掌纹图像采集单元为一组红外以及可见光组合式高清双目无畸变摄像头,在光线条件较暗或者有强光刺激等非理想光照条件下,使用普通高清摄像头无法获取高质量的掌纹图像,对掌纹图像识别工作形成了极大的挑战,而利用红外摄像头,可以解决上述问题,可见光的光照条件不会影响图像成像质量,所得掌纹图像更加适用于作为掌纹图像识别单元的输入,图像识别准确率较高,具体地,当使用掌纹识别门禁系统时,手掌应放置到距离摄像头15-20厘米的距离,以获得最佳掌纹图像。
边缘服务器中还包括人体掌纹信息库,具体实施方式为,若掌纹识别门禁终端获得的掌纹图像未能在掌纹信息库中匹配成功时,提示待验证人员再一次进行掌纹识别的步骤,如此重复三次,若三次掌纹身份验证均未通过,则报警模块开始报警,并将报警信息传输至监控单元,由安保人员确认待进入社区人员身份信息。
边缘服务器掌纹识别过程还包括掌纹信息库录入模式,具体地,由掌纹图像采集单元获取待进入社区人员的掌纹图像之后传输到掌纹识别单元,将所得到的掌纹图像存储到人体生物信息存储库中,录入完毕之后,将掌纹图像识别单元切换到正常工作状态,该人员随后即可通过掌纹识别的验证方式进入社区。
手掌检测与定位,在感兴趣区域提取步骤以前,首先要从所获取的整张掌纹图像中识别出手掌所在区域,以排除手掌位置、背景、方向等因素对掌纹图像识别单元图像识别结果的影响,可使用级联回归树模型对手掌所在区域进行检测和定位。
手掌关键点定位,在对掌纹图像中的手掌位置完成定位后,对处于框图之内的手掌关键点进行定位并得到关键点的坐标,其中关键点位于手掌轮廓周围,由特定的算法对其位置进行提取。
掌纹图像感兴趣区域提取,掌纹图像中真正用来进行识别的区域位于手掌中心区域,该区域具有丰富的纹理特征,并且不同的人纹理特征存在较大差异,在掌纹图像采集单元在非控制环境下获取到的掌纹图像包括背景以及其他与掌纹图像识别无关的部分,对掌纹图像识别正确率会造成一定影响,所以在识别过程中需要去除背景以及这些无关信息的影响,即提取出掌纹图像感兴趣区域。
掌纹图像感兴趣区域提取,具体地,在完成对手掌关键点定位之后,得到手掌轮廓周围的关键点坐标,通过参照关键点的坐标信息建立坐标系,根据所建坐标系对手掌中心位置进行准确定位,并且对掌纹纹理丰富的掌纹感兴趣区域进行裁剪,得到了对掌纹图像识别结果起关键性作用的感兴趣区域的图像,之后根据所得感兴趣区域图像的大小对其进行一定比例的缩放以及一定角度的旋转操作,将校正之后得到的感兴趣区域的图像作为掌纹图像识别网络的输入,由掌纹图像识别网络得到最终的掌纹图像识别结果,并将其发送到监控单元。
传统的生物信息识别技术装置以1:N的方式进行运算,运算方式为将采集的当前待检数据与已录入系统的有效数据(已注册数据)进行比对;随着注册数据的增多,生物信息识别系统所需的对比、运算时间就呈几何级数的增长,故传统的生物技术信息识别技术不适用于社区门禁等大范围场景;掌纹图像识别网络采用基于权重的元度量学习方法,可以克服传统掌纹识别装置因注册人数增加导致数据呈指数增长带来的识别效率差,不适用于大型社区门禁的缺点。
开放式非接触掌纹图像识别社区门禁系统因为采用边缘计算以及一种基于权重的元度量学习方法,因此相对于传统掌纹识别具有较快的识别速度,可达到秒级解锁的水平,非常适合应用于社区等拥有大量用户的门禁领域。
当边缘服务器完成掌纹图像识别之后,边缘服务器根据掌纹图像识别结果对门锁控制单元发出相应的工作指令。
门锁控制单元包括电源、门锁控制器。
电源用于给门锁控制器供电,在门锁控制器接收到监控单元的指令后,使得门锁控制器处于正常工作状态,控制社区门禁的开关。
监控单元还包括储存器,在身份信息验证完成之后对本次身份信息验证中的身份信息、体温信息以及报警信息均进行记录并且存储到储存器中。
本发明一实施例提供的终端设备的示意图。该实施例的终端设备包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序。所述处理器执行所述计算机程序时实现上述各个方法实施例中的步骤。或者,所述处理器执行所述计算机程序时实现上述各装置实施例中各模块/单元的功能。
所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块 /单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器、存储器。
所述处理器可以是中央处理单元(CentralProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路 (ApplicationSpecificIntegratedCircuit,ASIC)、现成可编程门阵列(Field-ProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述终端设备的各种功能。
所述终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。