对象识别方法和装置、电子设备及存储介质与流程

文档序号:24051625发布日期:2021-02-23 22:39阅读:66来源:国知局
对象识别方法和装置、电子设备及存储介质与流程

[0001]
本申请涉及识别技术领域,具体而言,涉及一种对象识别方法和装置、电子设备及存储介质。


背景技术:

[0002]
对对象进行识别是保证信息安全的有效方式之一,例如,可以通过对对象进行活体识别,以克服照片翻拍、视频翻录等欺诈手段带来的信息安全受到危险等问题。其中,现有技术中,为了克服动作活体识别技术存在的用户操作便利性较低的问题,一般会选择静默活体识别技术。
[0003]
经发明人研究发现,在现有的静默活体识别技术中,存在着识别结果的可靠度较低的问题。


技术实现要素:

[0004]
有鉴于此,本申请的目的在于提供一种对象识别方法和装置、电子设备及存储介质,以改善现有技术中存在的识别结果的可靠度较低的问题。
[0005]
为实现上述目的,本申请实施例采用如下技术方案:
[0006]
一种对象识别方法,获取目标视频帧,其中,该目标视频帧基于待识别对象上的结构光编码形成,且该结构光编码基于目标验证码生成并投射至该待识别对象;
[0007]
基于所述目标视频帧得到所述待识别对象上至少部分区域的深度信息,其中,该部分区域为所述结构光编码在该待识别对象上的覆盖区域;
[0008]
基于所述深度信息确定所述待识别对象是否属于活体对象。
[0009]
在本申请实施例较佳的选择中,在上述对象识别方法中,所述获取目标视频帧的步骤,包括:
[0010]
获得目标验证码,其中,该目标验证码具有形状信息;
[0011]
基于所述目标验证码的形状信息生成结构光编码,其中,该结构光编码的形状信息与该目标验证码的形状信息相同;
[0012]
获取将所述结构光编码投射至待识别对象上形成的目标视频帧。
[0013]
在本申请实施例较佳的选择中,在上述对象识别方法中,所述获得目标验证码的步骤,包括:
[0014]
基于预先配置的动态规则生成至少一个字符,其中,在基于该动态规则多次生成的至少一个字符中,至少有两次生成的至少一个字符不同;
[0015]
基于所述至少一个字符组成目标验证码。
[0016]
在本申请实施例较佳的选择中,在上述对象识别方法中,所述获取将所述结构光编码投射至待识别对象上形成的目标视频帧的步骤,包括:
[0017]
将所述结构光编码中的每一个结构光子编码,分别投射至待识别对象,其中,所述目标验证码包括多个字符,每一个所述结构光子编码基于对应的一个字符生成;
[0018]
获取每一个所述结构光编码投射至待识别对象上形成的目标视频帧。
[0019]
在本申请实施例较佳的选择中,在上述对象识别方法中,所述将所述结构光编码中的每一个结构光子编码,分别投射至待识别对象的步骤,包括:
[0020]
获得所述目标验证码中各字符的先后顺序;
[0021]
基于所述先后顺序,依次将所述结构光编码中各字符对应的结构光子编码投射至待识别对象。
[0022]
在本申请实施例较佳的选择中,在上述对象识别方法中,所述将所述结构光编码中的每一个结构光子编码,分别投射至待识别对象的步骤,包括:
[0023]
在所述结构光编码包括的多个结构光子编码中,确定是否存在预先确定的目标结构光子编码;
[0024]
若所述多个结构光子编码中存在所述目标结构光子编码,则将该目标结构光子编码以外的其它每一个结构光子编码,分别投射至待识别对象。
[0025]
在本申请实施例较佳的选择中,在上述对象识别方法中,所述基于所述深度信息确定所述待识别对象是否属于活体对象的步骤,包括:
[0026]
基于所述深度信息进行活体识别处理,得到第一识别结果,其中,该第一识别结果包括所述待识别对象属于活体对象或不属于活体对象;
[0027]
对所述目标视频帧进行光编码识别处理,并基于得到的识别验证码和所述目标验证码得到第二识别结果,其中,该第二识别结果包括所述待识别对象属于活体对象或不属于活体对象;
[0028]
基于所述第一识别结果和所述第二识别结果,确定所述待识别对象是否属于活体对象。
[0029]
在本申请实施例较佳的选择中,在上述对象识别方法中,所述基于所述深度信息进行活体识别处理,得到第一识别结果的步骤,包括:
[0030]
在所述目标视频帧中,基于所述深度信息确定所述至少部分区域对应的各像素点的三维位置信息;
[0031]
基于所述至少部分区域对应的各像素点的三维位置信息,确定所述待识别对象是否属于活体对象,以得到第一识别结果。
[0032]
在本申请实施例较佳的选择中,在上述对象识别方法中,所述基于所述至少部分区域对应的各像素点的三维位置信息,确定所述待识别对象是否属于活体对象的步骤,包括:
[0033]
基于所述至少部分区域对应的各像素点的三维位置信息,确定各像素点是否属于同一平面,或者,确定各像素点中是否具有目标比例或目标数量以上的像素点属于同一平面,或者,确定各像素点与目标平面之间的距离值是否满足预设距离条件;
[0034]
若各像素点属于同一平面,或者,各像素点中具有目标比例或目标数量以上的像素点属于同一平面,或者,各像素点与所述目标平面之间的距离值满足预设距离条件,则确定所述待识别对象不属于活体对象。
[0035]
在本申请实施例较佳的选择中,在上述对象识别方法中,所述基于所述至少部分区域对应的各像素点的三维位置信息,确定所述待识别对象是否属于活体对象的步骤,包括:
[0036]
将所述至少部分区域对应的各像素点的三维位置信息输入至预先构建的第一识别模型,其中,该第一识别模型基于多帧人脸三维图像训练生成;
[0037]
通过所述第一识别模型对所述三维位置信息进行位置关系识别处理,确定所述待识别对象是否属于活体对象。
[0038]
在本申请实施例较佳的选择中,在上述对象识别方法中,所述基于所述深度信息进行活体识别处理,得到第一识别结果的步骤,包括:
[0039]
在所述目标视频帧中,计算所述至少部分区域对应的各像素点的深度信息的深度平均信息;
[0040]
基于所述深度平均信息和预设的深度阈值信息,确定所述待识别对象是否属于活体对象,以得到第一识别结果。
[0041]
在本申请实施例较佳的选择中,在上述对象识别方法中,所述对所述目标视频帧进行光编码识别处理的步骤,包括:
[0042]
将所述目标视频帧输入至预先构建的第二识别模型,其中,该第二识别模型基于多帧具有结构光编码信息的样本视频帧和每一帧样本视频帧的标签信息训练生成,且该标签信息为该结构光编码信息对应的验证码信息;
[0043]
通过所述第二识别模型对所述目标视频帧进行光编码识别处理,得到对应的识别验证码。
[0044]
本申请实施例还提供了一种对象识别装置,包括:
[0045]
视频帧获取模块,用于获取目标视频帧,其中,该目标视频帧基于待识别对象上的结构光编码形成,且该结构光编码基于目标验证码生成并投射至该待识别对象;
[0046]
深度信息获得模块,用于基于所述目标视频帧得到所述待识别对象上至少部分区域的深度信息,其中,该部分区域为所述结构光编码在该待识别对象上的覆盖区域;
[0047]
活体对象确定模块,用于基于所述深度信息确定所述待识别对象是否属于活体对象。
[0048]
在上述基础上,本申请实施例还提供了一种电子设备,包括:
[0049]
存储器,用于存储计算机程序;
[0050]
与所述存储器连接的处理器,用于执行该存储器存储的计算机程序,以实现上述的对象识别方法。
[0051]
在上述基础上,本申请实施例还提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被执行时,实现上述的对象识别方法。
[0052]
本申请提供的对象识别方法和装置、电子设备及存储介质,通过获取基于目标验证码生成并投射至待识别对象上的结构光编码形成的目标视频,使得可以基于该目标视频帧得到待识别对象上至少部分区域的深度信息,从而基于该深度信息确定待识别对象是否属于活体对象。基于此,由于获取的目标视频帧是基于结构光编码形成,可以使得得到的深度信息的精度更高,从而保证得到的识别结果的精度也相应更高,并且,由于结构光编码基于目标验证码生成,可以在一定程度上提高方法在执行过程中被攻击的难度,使得安全性能更高,进而改善现有技术中存在的识别结果的可靠度较低的问题,使得具有较高的实用价值。
[0053]
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合
memory,eprom),电可擦除只读存储器(electric erasable programmable read-only memory,eeprom)等。
[0073]
并且,所述处理器14可以是一种通用处理器,包括中央处理器(central processing unit,cpu)、图形处理器(graphics processing unit,gpu)等。
[0074]
可以理解,图1所示的结构仅为示意,所述电子设备10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
[0075]
例如,所述电子设备10还可以包括用于与其它设备进行信息交互的通信单元,以及,在该电子设备10作为终端设备(如手机、平板电脑、电脑等)时,还可以包括用于采集图像的图像采集设备(如摄像头等)。
[0076]
结合图2,本申请实施例还提供一种可应用于上述电子设备10的对象识别方法。其中。所述对象识别方法有关的流程所定义的方法步骤,可以由所述电子设备10实现。下面将对图2所示的具体流程,进行详细阐述。
[0077]
步骤s110,获取目标视频帧。
[0078]
在本实施例中,在对待识别对象有进行识别的需求的情况下,所述电子设备10可以获取具有该待识别对象的信息的目标视频帧。
[0079]
其中,所述目标视频帧可以基于所述待识别对象上的结构光编码形成,且该结构光编码可以基于目标验证码生成并投射至该待识别对象。
[0080]
步骤s120,基于所述目标视频帧得到所述待识别对象上至少部分区域的深度信息。
[0081]
在本实施例中,在基于步骤s110获取到所述目标视频帧之后,所述电子设备10可以基于该目标视频帧,得到所述待识别对象上至少部分区域的深度信息。
[0082]
其中,所述部分区域可以为所述结构光编码在所述待识别对象上的覆盖区域。也就是说,若所述结构光编码投射至待识别对象上的部分区域,可以得到该待识别对象上部分区域的深度信息;若所述结构光编码投射至待识别对象上的全部区域,可以得到该待识别对象上全部区域的深度信息。
[0083]
步骤s130,基于所述深度信息确定所述待识别对象是否属于活体对象。
[0084]
在本实施例中,在基于步骤s120得到所述深度信息之后,所述电子设备10可以基于该深度信息确定所述待识别对象是否属于活体对象。
[0085]
基于上述方法,由于获取的目标视频帧是基于结构光编码形成,可以使得得到的深度信息的精度更高,从而保证得到的识别结果的精度也相应更高,并且,由于结构光编码基于目标验证码生成,可以在一定程度上提高方法在执行过程中被攻击的难度,使得安全性能更高,进而改善现有技术中存在的识别结果的可靠度较低的问题。
[0086]
第一方面,对于步骤s110需要说明的是,获取所述目标视频帧的具体方式不受限制,可以根据实际应用需求进行选择。
[0087]
例如,在一种可以替代的示例中,所述结构光编码可以是其它设备生成并投射至所述待识别对象,所述电子设备10可以直接对该待识别对象进行图像采集(如拍摄),从而得到所述目标视频帧。
[0088]
又例如,在另一种可以替代的示例中,所述电子设备10可以为服务器。如此,该服务器可以通信连接有终端设备,使得该终端设备在拍摄待识别对象以形成所述目标视频帧
之后,可以发送给该服务器。
[0089]
再例如,在另一种可以替代的示例中,为了提高获取所述目标视频帧的效率,从而保证识别过程整体的高效性,结合图3,步骤s110可以包括步骤s111、步骤s112和步骤s113,具体内容如下所述。
[0090]
步骤s111,获得目标验证码。
[0091]
在本实施例中,在对待识别对象有进行识别的需求的情况下,可以先获得目标验证码。其中,该目标验证码可以具有形状信息。
[0092]
步骤s112,基于所述目标验证码的形状信息生成结构光编码。
[0093]
在本实施例中,在基于步骤s111获得所述目标验证码之后,可以基于该目标验证码生成结构光编码。其中,所述结构光编码的形状信息与所述目标验证码的形状信息可以相同。
[0094]
步骤s113,获取将结构光编码投射至待识别对象上形成的目标视频帧。
[0095]
在本实施例中,在基于步骤s112生成所述结构光编码之后,可以获取将所述结构光编码投射至待识别对象上形成的目标视频帧(例如,所述结构光编码可以经过该待识别对象的反射,传输至所述电子设备10,从而通过该电子设备10的图像采集设备进行采集,得到所述目标视频帧)。
[0096]
也就是说,通过所述电子设备10执行获取目标验证码的步骤、生成结构光编码的步骤、获取目标视频帧的步骤,使得多个步骤由电子设备10统一执行,一方面可以提高执行的效率,另一方面也可以避免多设备执行而导致安全性能降低,如容易受到攻击的问题。
[0097]
可选地,在上述示例中,执行步骤s111以获得所述目标验证码的具体方式不受限制,可以根据实际应用需求进行选择。
[0098]
例如,在一种可以替代的示例中,所述目标验证码可以是预先生成并存储,如此,可以在每一次需要时直接获取即可,以提高效率。
[0099]
又例如,在另一种可以替代的示例中,为了提高所述对象识别方法的安全性,所述目标验证码可以动态生成。基于此,结合图4,步骤s111可以包括步骤s111a和步骤s111b,具体内容如下所述。
[0100]
步骤s111a,基于预先配置的动态规则生成至少一个字符。
[0101]
在本实施例中,在对待识别对象有进行识别的需求的情况下,可以基于预先配置的动态规则生成至少一个字符(可以理解的是,该字符可以包括,但不限于字母、数字、符号等)。
[0102]
其中,所述动态规则可以是指,在基于该动态规则多次生成的至少一个字符中,至少有两次生成的至少一个字符不同。也就是说,在多次生成的字符中,至少有两次生成的字符不同(在一种可以替代的示例中,为了充分保证所述对象识别方法的安全性,每一次生成的字符可以都不同)。
[0103]
步骤s111b,基于所述至少一个字符组成目标验证码。
[0104]
在本实施例中,在基于步骤s111a生成所述至少一个字符之后,可以基于该至少一个字符组成目标验证码。如此,可以动态生成目标验证码。
[0105]
可选地,在上述示例中,执行步骤s112以生成所述结构光编码的具体方式不受限制,可以根据实际应用需求进行选择。
[0106]
例如,在一种可以替代的示例中,可以直接基于所述目标验证码对所述电子设备10(如手机)的结构光模组生成对应形成的结构光编码。
[0107]
又例如,在另一种可以替代的示例中,为了进一步提高进行对象识别整体的安全性,在获取所述目标验证码之后,可以先确定该目标验证码是否符合一定的条件,如该目标验证码包括的字符中是否存在特定字符(例如,在一种可以替代的示例中,该特定字符为“0”)。然后,在该目标验证码符合一定条件时,如该目标验证码包括的多个字符中存在为“0”的字符,可以仅基于“0”以外的其它字符生成结构光编码,即“0”表示不生成对应的结构光编码。
[0108]
其中,在一种具体的应用示例中,若所述目标验证码为“5139”,可以生成如图5所示的结构光编码。可以理解的,在图5中每一个黑点可以表明结构光模组生成的一个光点,使得该结构光编码可以是多个光点的集合。
[0109]
可选地,在上述示例中,执行步骤s113以获取所述目标视频帧的具体方式不受限制,可以根据实际应用需求进行选择。
[0110]
例如,在一种可以替代的示例中,所述目标验证码可以包括一个字符,基于此,可以先基于该字符生成一个结构光子编码,然后,将该结构光子编码投射至待识别对象,最后,可以对该待识别对象进行图像采集,得到目标视频帧。
[0111]
又例如,在另一种可以替代的示例中,为了保证对象识别的安全性,提高被攻击的难度,所述目标验证码可以包括多个字符。基于此,结合图6,步骤s113可以包括步骤s113a和步骤s113b,具体内容如下所述。
[0112]
步骤s113a,将所述结构光编码中的每一个结构光子编码,分别投射至待识别对象。
[0113]
在本实施例中,在基于步骤s112生成所述结构光编码之后,由于所述目标验证码可以包括多个字符,因而,该结构光编码可以包括多个结构光子编码(如图5所示,表示该结构光编码可以包括四个结构光子编码,分别为字符“5”对应的结构光子编码、字符“1”对应的结构光子编码、字符“3”对应的结构光子编码、字符“9”对应的结构光子编码),且每一个结构光子编码基于对应的一个字符生成。基于此,可以将每一个结构光子编码,分别投射至待识别对象(如图7和图8所示,可以将每一个结构光子编码,分别投射至待识别对象的脸部区域)。
[0114]
步骤s113b,获取每一个所述结构光编码投射至待识别对象上形成的目标视频帧。
[0115]
在本实施例中,在基于步骤s113a以将每一个所述结构光编码分别投射至待识别对象之后,可以获取每一个所述结构光编码投射至待识别对象上形成的视频帧,如此,可以得到所述目标视频帧。
[0116]
可以理解的是,在步骤s113a中将每一个结构光子编码分别进行投射的具体方式不受限制,可以根据实际应用需求进行选择。
[0117]
例如,在一种可以替代的示例中,为了提高对象识别的效率,可以将每一个结构光子编码同时进行投射,且可以分别投射至待识别对象的不同区域,如针对四个结构光子编码,可以分别投射至左眼区域、右眼区域、鼻子区域、嘴部区域。
[0118]
对应地,执行步骤s113b以获取每一个所述结构光编码投射至待识别对象上形成的目标视频帧的具体方式也不受限制,例如,既可以是直接对待识别对象的全部的投射区
域进行图像采集,使得采集得到的目标视频帧可以包括各结构光子编码的信息;也可以是分别对不同的投射区域进行图像采集,使得可以得到多帧目标视频帧,如左眼区域的视频帧、右眼区域的视频帧、鼻子区域的视频帧,嘴部区域的视频帧。
[0119]
又例如,在另一种可以替代的示例中,为了保证视频投射和获取的有效性,从而提高识别结果的可靠性,步骤s113a可以包括以下子步骤:
[0120]
首先,可以获得所述目标验证码中各字符的先后顺序;其次,可以基于所述先后顺序,依次将所述结构光编码中各字符对应的结构光子编码投射至待识别对象。
[0121]
也就是说,多个结构光子编码可以依次进行投射,例如,基于图5所示的四个结构光子编码,可以先投射字符“5”对应的结构光子编码,其次,投射字符“1”对应的结构光子编码(此时,停止投射字符“5”对应的结构光子编码),然后,投射字符“3”对应的结构光子编码(此时,停止投射字符“1”对应的结构光子编码),最后,投射字符“9”对应的结构光子编码(此时,停止投射字符“9”对应的结构光子编码)。
[0122]
其中,在对每一个结构光子编码进行投射时,可以基于预先的配置投射一定的时长,以保证针对每一个结构光子编码都可以获取到至少一帧有效的目标视频帧,便于得到相应的深度信息,以保证识别结果的可靠性。
[0123]
例如,在一种具体的应用示例中,针对每一个所述结构光子编码,可以依次分别投射250ms(其中,在该250ms内,可以仅获取一帧视频帧,也可以获取多帧视频帧,然后,再其中选择一帧作为目标视频帧)。
[0124]
可以理解的是,对于步骤s113b还需要进一步说明的是,基于不同的需求,可以多个所述结构光子编码进行不同投射。
[0125]
例如,在一种可以替代的示例中,可以直接对每一个所述结构光子编码分别进行投射(具体的投射方式,既可以是如上述示例中的同时投射,也可以是如上述示例中的依次投射)。
[0126]
又例如,在另一种可以替代的示例中,为了进一步提高进行对象识别整体的安全性,在形成多个所述结构光子编码之后,可以执行以下子步骤:
[0127]
首先,可以在所述结构光编码包括的多个结构光子编码中,确定是否存在预先确定的目标结构光子编码;其次,若所述多个结构光子编码中存在所述目标结构光子编码,则将该目标结构光子编码以外的其它每一个结构光子编码,分别投射至待识别对象。
[0128]
例如,在一种具体的应用示例中,可以先确定所述多个结构光子编码中是否存在字符“0”对应的结构光子编码,然后,在存在字符“0”对应的结构光子编码时,仅对其它字符对应的结构光子编码进行投射,即不对字符“0”对应的结构光子编码进行投射(具体的投射方式,既可以是如上述示例中的同时投射,也可以是如上述示例中的依次投射,且在进行依次投射时,若轮到字符“0”对应的结构光子编码,既可以持续一段时间,如每一个结构光子编码的投射时间之后,再投射下一个结构光子编码;也可以直接投射下一个结构光子编码)。
[0129]
第二方面,对于步骤s120需要说明的是,获得所述深度信息的具体方式不受限制,可以根据实际应用需求进行选择。
[0130]
例如,在一种可以替代的示例中,可以先基于所述目标视频帧,确定结构光在经过待识别对象的反射之后结构光发生的变化,然后,基于该变化确定该待识别对象的深度信
息(具体方式,可以参照相关的现有技术,在此不再一一赘述)。
[0131]
第三方面,对于步骤s130需要说明的是,确定待识别对象是否属于活体对象的具体方式不受限制,可以根据实际应用需求进行选择。
[0132]
例如,在一种可以替代的示例中,可以基于所述深度信息对所述待识别对象进行活体识别处理,得到识别结果,即确定该待识别对象是否属于活体对象。如此,可以保证对象识别的效率较高。
[0133]
又例如,在另一种可以替代的示例中,为了进一步提高对象识别的安全性,避免识别被攻击的问题,结合图9,步骤s130可以包括步骤s131、步骤s132和步骤s133,具体内容如下所述。
[0134]
步骤s131,基于所述深度信息进行活体识别处理,得到第一识别结果。
[0135]
在本实施例中,在基于步骤s120得到所述待识别对象上至少部分区域的深度信息之后,可以基于该深度信息对该待识别对象进行活体识别处理。如此,可以得到第一识别结果。
[0136]
其中,所述第一识别结果可以包括所述待识别对象属于活体对象或不属于活体对象。也就是说,可以从深度信息的角度,来确定所述待识别对象是否属于活体对象。
[0137]
步骤s132,对所述目标视频帧进行光编码识别处理,并基于得到的识别验证码和所述目标验证码得到第二识别结果。
[0138]
在本实施例中,在基于步骤s110得到所述目标视频帧之后(可以理解的是,在此示例中,步骤s132的执行可以位于步骤s120的执行之前,也可以位于步骤s120的执行之后,也可以与步骤s120的执行同步,在此不做具体的限定),还可以对该目标视频帧进行光编码识别处理,以从该目标视频帧中得到携带的识别验证码,然后,可以将该识别验证码与所述目标验证码进行比较。如此,可以得到第二识别结果。
[0139]
其中,所述第二识别结果可以包括所述待识别对象属于活体对象或不属于活体对象。也就是说,可以从结构光编码的角度,来确定所述待识别对象是否属于活体对象。
[0140]
步骤s133,基于所述第一识别结果和所述第二识别结果,确定所述待识别对象是否属于活体对象。
[0141]
在本实施例中,在基于步骤s131和步骤s132分别得到所述第一识别结果和所述第二识别结果之后,可以基于该第一识别结果和该第二识别结果,确定所述待识别对象是否属于活体对象。
[0142]
基于此,由于在深度信息的基础上,还从结构光编码的角度来进行识别辅助,然后,综合两个角度的识别结果,可以进一步提高识别结果的可靠性。并且,还可以使得结构光编码被充分利用,避免资源浪费等问题。
[0143]
可选地,在上述示例中,执行步骤s131以进行活体识别处理的具体方式不受限制,可以根据实际应用需求进行选择。
[0144]
例如,在一种可以替代的示例中,为了提高活体识别处理的效率,降低对电子设备10(特别是采用终端设备时)的计算性能的需求,结合图10,步骤s131可以包括步骤s131a和步骤s131b,具体内容如下所述。
[0145]
步骤s131a,在所述目标视频帧中,计算所述至少部分区域对应的各像素点的深度信息的深度平均信息。
[0146]
在本实施例中,在基于步骤s120获取到所述待识别对象上至少部分区域的深度信息之后,可以计算该至少部分区域的深度信息的平均值。如此,可以得到对应的深度平均信息。
[0147]
也就是说,所述至少部分区域的深度信息实际上是指,在所述目标视频帧中,所述至少部分区域对应的各像素点的深度信息。
[0148]
步骤s131b,基于所述深度平均信息和预设的深度阈值信息,确定所述待识别对象是否属于活体对象,以得到第一识别结果。
[0149]
在本实施例中,在基于步骤s131a得到所述深度平均信息之后,可以将该深度平均信息与预设的深度阈值信息进行比较,以确定所述待识别对象是否属于活体对象,如此,可以得到第一识别结果。
[0150]
例如,在一种具体的应用示例中,若所述深度平均信息大于所述深度阈值信息,可以确定所述待识别对象属于活体对象;若所述深度平均信息小于或等于所述深度阈值信息,可以确定所述待识别对象不属于活体对象。
[0151]
可以理解的是,在上述示例中,基于步骤s131a以计算深度平均信息时,考虑到所述深度信息可以是指待识别对象上各区域与电子设备10的图像采集设备之间的距离信息,因此,为了避免待识别对象与电子设备10的图像采集设备之间整体的距离对识别结果的干扰,所述深度信息可以是指相对深度信息,例如,将待识别对象上距离电子设备10的图像采集设备最近的一个点,作为参考点,即该参考点的深度信息为0,然后,再计算其他点与该参考点的距离信息,并将该距离信息作为对应的深度信息。
[0152]
并且,在上述示例中,执行步骤s131b以进行比较的深度阈值信息的具体数值不受限制,可以根据实际应用需求进行选择。例如,可以基于待识别对象的具体识别区域(如人脸识别区域)的一般深度信息范围进行确定,并且,还可以参考对识别结果的准确度需求等因素,如在该范围内,对识别结果的准确度需求越高,深度阈值信息可以越大;对识别结果的准确度需求越低,深度阈值信息可以越小。
[0153]
又例如,在一种可以替代的示例中,为了提高活体识别处理的精度,保证识别结果的可靠性,结合图11,步骤s131可以包括步骤s131c和步骤s131d,具体内容如下所述。
[0154]
步骤s131c,在所述目标视频帧中,基于所述深度信息确定所述至少部分区域对应的各像素点的三维位置信息。
[0155]
在本实施例中,在基于步骤s120获取到所述待识别对象上至少部分区域的深度信息之后,即得到所述目标视频帧中与所述至少部分区域对应的各像素点的深度信息之后,可以基于各像素点的深度信息和各像素点在目标视频帧中的二维位置信息,得到各像素点的三维位置信息。
[0156]
步骤s131d,基于所述至少部分区域对应的各像素点的三维位置信息,确定所述待识别对象是否属于活体对象,以得到第一识别结果。
[0157]
在本实施例中,在基于步骤s131c得到各像素点的三维位置信息之后,可以基于各像素点的三维位置信息,确定所述待识别对象是否属于活体对象,如此,可以得到得到第一识别结果。
[0158]
基于此,由于不仅考虑了深度信息,还考虑了各像素点在目标视频帧中的二维位置信息,即考虑了各像素点之间的位置关系,使得识别的依据更为充分,从而保证识别过程
的精度,提高识别结果的准确度。
[0159]
可以理解的是,在上述示例中,在执行步骤s131d时,基于所述三位位置信息确定所述待识别对象是否属于活体对象的具体方式不受限制,可以根据实际应用需求进行选择。
[0160]
例如,在一种可以替代的示例中,为了降低对电子设备10的计算性能需求,步骤s131d可以包括以下子步骤:
[0161]
首先,可以基于所述至少部分区域对应的各像素点的三维位置信息,确定各像素点是否属于同一平面,或者,确定各像素点中是否具有目标比例或目标数量以上的像素点属于同一平面,或者,确定各像素点与目标平面之间的距离值是否满足预设距离条件;其次,若各像素点属于同一平面,或者,各像素点中具有目标比例或目标数量以上的像素点属于同一平面,或者,各像素点与所述目标平面之间的距离值满足预设距离条件,则确定所述待识别对象不属于活体对象。
[0162]
也就是说,在第一种应用示例中,可以基于所述至少部分区域对应的各像素点的三维位置信息,确定各像素点是否属于同一平面,若各像素点属于同一平面,可以确定所述待识别对象不属于活体对象;若各像素点不属于同一平面,可以确定所述待识别对象属于活体对象。
[0163]
在第二种应用示例中,可以基于所述至少部分区域对应的各像素点的三维位置信息,确定各像素点中是否具有目标比例以上的像素点属于同一平面,若各像素点中具有目标比例以上的像素点属于同一平面,可以确定所述待识别对象不属于活体对象;若各像素点中不具有目标比例以上的像素点属于同一平面,可以确定所述待识别对象属于活体对象。
[0164]
在第三种应用示例中,可以基于所述至少部分区域对应的各像素点的三维位置信息,确定各像素点中是否具有目标数量以上的像素点属于同一平面,若各像素点中具有目标数量以上的像素点属于同一平面,可以确定所述待识别对象不属于活体对象;若各像素点中不具有目标数量以上的像素点属于同一平面,可以确定所述待识别对象属于活体对象。
[0165]
在第四种应用示例中,可以基于所述至少部分区域对应的各像素点的三维位置信息,确定各像素点与目标平面(如所有平面中,与各像素点之间的距离的平均值最小的一个平面)之间的距离值是否满足预设距离条件(例如,在一种可以替代的示例中,各像素点与目标平面之间的距离的平均值大于预设距离,可以确定满足预设距离条件),若各像素点与所述目标平面之间的距离值满足预设距离条件,可以确定所述待识别对象不属于活体对象;若各像素点与所述目标平面之间的距离值不满足预设距离条件,可以确定所述待识别对象不属于活体对象。
[0166]
在上述方法,基于各像素点的三维位置信息与平面进行比较,从而确定是否属于活体对象,使得可以充分避免待识别对象与电子设备10的图像采集设备之间存在一定的倾角而带来的误差,使得识别精度更高。
[0167]
又例如,在另一种可以替代的示例中,为了充分提高识别结果的可靠度,步骤s131d可以包括以下子步骤:
[0168]
首先,可以将所述至少部分区域对应的各像素点的三维位置信息输入至预先构建
的第一识别模型,其中,该第一识别模型基于多帧人脸三维图像训练生成;其次,可以通过所述第一识别模型对所述三维位置信息进行位置关系识别处理,确定所述待识别对象是否属于活体对象。
[0169]
也就是说,可以通过预先训练得到的第一识别模型(例如,可以基于多帧人脸三维图像学习得到人脸区域中各个点之间的三维位置关系,如此,在得到各像素点的三维位置信息之后,可以基于该三维位置信息确定各像素点之间是否满足学习到的三维位置关系,从而确定待识别对象是否属于活体对象),对各像素点的三维位置信息进行处理,以充分利用神经网络的处理能力,得到高精度的识别结果。
[0170]
其中,对于步骤s131还需要说明的是,在一些情况下(可以参考前文对结构光编码的描述),考虑到所述结构光编码可以包括多个结构光子编码(如图5所示,包括四个结构光子编码),且多个结构光子编码可以依次进行投射,从而得到多帧目标视频帧。
[0171]
基于此,在一种可以替代的示例中,若对安全性能的需求一般,在对每一帧目标视频帧进行活体识别处理之后,若存在一帧目标视频帧对应的识别结果为所述待识别对象属于活体对象,可以确定所述第一识别结果为所述待识别对象属于活体对象。反之,若每一帧目标视频帧对应的识别结果都为所述待识别对象不属于活体对象,可以确定所述第一识别结果为所述待识别对象不属于活体对象。
[0172]
在另一种可以替代的示例中,若对安全性能的需求较高,在对每一帧目标视频帧进行活体识别处理之后,若存在一帧目标视频帧对应的识别结果为所述待识别对象不属于活体对象,可以确定所述第一识别结果为所述待识别对象不属于活体对象。反之,若每一帧目标视频帧对应的识别结果都为所述待识别对象属于活体对象,可以确定所述第一识别结果为所述待识别对象属于活体对象。
[0173]
可选地,在上述示例中,执行步骤s132以进行光编码识别处理的具体方式不受限制,可以根据实际应用需求进行选择。
[0174]
例如,在一种可以替代的示例中,可以基于轮廓提取算法对所述目标视频帧进行轮廓提取,如此,可以得到该目标视频帧中结构光编码的轮廓形状信息,然后,可以将该轮廓形状信息与所述目标验证码的轮廓形状信息进行比较,从而得到第二识别结果。
[0175]
又例如,在另一种可以替代的示例中,为了提高进行光编码识别处理的精度,从而保证识别结果的可靠性,结合图12,步骤s132可以包括步骤s132a和步骤s132b,具体内容如下所述。
[0176]
步骤s132a,将所述目标视频帧输入至预先构建的第二识别模型。
[0177]
在本实施例中,在基于步骤s110得到所述目标视频帧之后,可以将该目标视频帧输入至预先构建的第二识别模型中。
[0178]
其中,所述第二识别模型可以基于多帧具有结构光编码信息的样本视频帧(如将多种结构光编码信息投射至人脸区域,然后,通过图像采集设备进行采集,可以得到多帧样本视频帧)和每一帧样本视频帧的标签信息(例如,在一种可以替代的示例中,该标签信息可以是指上述的字符,如将字符“5”对应的结构光子编码被投射至人脸区域之后,图像采集设备采集形成的样本视频帧的标签信息可以为5)训练生成,且该标签信息为该结构光编码信息对应的验证码信息。
[0179]
步骤s132b,通过所述第二识别模型对所述目标视频帧进行光编码识别处理,得到
对应的识别验证码。
[0180]
在本实施例中,在基于步骤s132a将所述目标视频帧输入至所述第二识别模型之后,可以基于该第二识别模型对该目标视频帧进行光编码识别处理,如此,可以得到对应的识别验证码。
[0181]
其中,对于步骤s132还需要说明的是,在一些情况下(可以参考前文对结构光编码的描述),考虑到所述结构光编码可以包括多个结构光子编码(如图5所示,包括四个结构光子编码),且多个结构光子编码可以依次进行投射,从而得到多帧目标视频帧。
[0182]
基于此,针对每一帧目标视频帧进行光编码识别处理之后,可以将得到的每一个识别验证码(一个字符)与目标验证码中的一个字符进行比较,如此,在所有的识别验证码都与目标验证码中的对应字符相匹配时,可以确定第二识别结果为所述待识别对象属于活体对象。反之,在所有的识别验证码中存在一个识别验证码与目标验证码中的对应字符不相匹配时,可以确定第二识别结果为所述待识别对象不属于活体对象。
[0183]
可选地,在上述示例中,执行步骤s133以基于所述第一识别结果和所述第二识别结果确定所述待识别对象是否属于活体对象的具体方式不受限制,可以根据实际应用需求进行选择。
[0184]
例如,在一种可以替代的示例中,若所述第一识别结果和所述第二识别结果都为所述待识别对象属于活体对象,可以确定该待识别对象属于活体对象。若所述第一识别结果和所述第二识别结果中有一个识别结果,为所述待识别对象不属于活体对象,可以确定该待识别对象不属于活体对象。
[0185]
又例如,在另一种可以替代的示例中,若所述第一识别结果和所述第二识别结果中有一个识别结果,为所述待识别对象属于活体对象,可以确定该待识别对象为活体对象。若所述第一识别结果和所述第二识别结果都为该待识别对象不属于活体对象,可以确定该待识别对象不属于活体对象。
[0186]
再例如,在另一种可以替代的示例中,考虑到若所述第二识别结果为所述待识别对象不属于活体对象,说明该待识别对象真的不属于活体对象,或者,说明在较大程度上识别过程被攻击了,因而,只要所述第二识别结果为所述待识别对象不属于活体对象,就可以确定该待识别对象不属于活体对象。并且,在所述第二识别结果为所述待识别对象属于活体对象时,可以在所述第一识别结果也为所述待识别对象属于活体对象时,确定该待识别对象属于活体对象;在所述第二识别结果为所述待识别对象属于活体对象时,可以在所述第一识别结果也为所述待识别对象不属于活体对象时,确定该待识别对象不属于活体对象。
[0187]
结合图13,本申请实施例还提供一种可应用于上述电子设备10的对象识别装置100。其中,该对象识别装置100可以包括视频帧获取模块110、深度信息获得模块120和活体对象确定模块130。
[0188]
所述视频帧获取模块110,可以用于获取目标视频帧,其中,该目标视频帧基于待识别对象上的结构光编码形成,且该结构光编码基于目标验证码生成并投射至该待识别对象。在本实施例中,所述视频帧获取模块110可用于执行图2所示的步骤s110,关于所述视频帧获取模块110的相关内容可以参照前文对步骤s110的描述。
[0189]
所述深度信息获得模块120,可以用于基于所述目标视频帧得到所述待识别对象
上至少部分区域的深度信息,其中,该部分区域为所述结构光编码在该待识别对象上的覆盖区域。在本实施例中,所述深度信息获得模块120可用于执行图2所示的步骤s120,关于所述深度信息获得模块120的相关内容可以参照前文对步骤s120的描述。
[0190]
所述活体对象确定模块130,可以用于基于所述深度信息确定所述待识别对象是否属于活体对象。在本实施例中,所述活体对象确定模块130可用于执行图2所示的步骤s130,关于所述活体对象确定模块130的相关内容可以参照前文对步骤s130的描述。
[0191]
在本申请实施例中,对应于上述的对象识别方法,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序运行时执行上述对象识别方法的各个步骤。
[0192]
其中,前述计算机程序运行时执行的各步骤,在此不再一一赘述,可参考前文对所述对象识别方法的解释说明。
[0193]
综上所述,本申请提供的对象识别方法和装置、电子设备及存储介质,通过获取基于目标验证码生成并投射至待识别对象上的结构光编码形成的目标视频,使得可以基于该目标视频帧得到待识别对象上至少部分区域的深度信息,从而基于该深度信息确定待识别对象是否属于活体对象。基于此,由于获取的目标视频帧是基于结构光编码形成,可以使得得到的深度信息的精度更高,从而保证得到的识别结果的精度也相应更高,并且,由于结构光编码基于目标验证码生成,可以在一定程度上提高方法在执行过程中被攻击的难度,使得安全性能更高,进而改善现有技术中存在的识别结果的可靠度较低的问题,使得具有较高的实用价值。
[0194]
在本申请实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0195]
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0196]
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包
含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0197]
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1