一种身份验证方法及装置
技术领域
本申请涉及视频处理领域,尤其涉及一种身份验证方法及装置。
背景技术
在某些场景下需要对用户进行身份验证,具体包括对用户进行身份识别和证据保留。例如,在金融业务领域中,用户购买大额理财,或者,用户使用信贷服务贷款等场景下,需要对用户进行身份识别和证据保留。其中,身份识别包括:判断执行识别操作的对象是否为用户本人,而证据保留则是将对用户本人录制的一段视频,作为用户本人同意办理业务的证据,并进行保存。
目前,对待验证对象进行身份识别的过程包括:终端对待验证对象录制视频,得到第一视频;对第一视频进行活体检测,得到待验证对象是否为本人的结果,完成身份识别。在结果表示为本人的情况下,继续执行证据保留的流程,终端接着进行视频录制,得到第二视频,将第二视频作为证据进行保留。
但是,现有技术在实现用户验证的过程中,终端的数据处理量大且数据处理时间长,因此,具有终端的资源耗费大的问题。
发明内容
本申请提供了一种身份验证方法及装置,目的在于解决终端的资源耗费大的问题。
为了实现上述目的,本申请提供了以下技术方案:
本申请提供了一种身份验证方法,包括:
响应于服务端发送的验证指令,输出所述验证指令中包含的操作指示信息,所述操作指示信息指示待验证对象执行预设操作,所述预设操作包括:输出语音;
获取所述待验证对象执行所述预设操作过程中被录制的信息;所述被录制的信息包括:图像流和音频流;
将满足预设合成条件的被录制的信息中的图像流和音频流合成为视频流,所述预设合成条件至少包括:依据所述图像流对所述待验证对象进行活体检测的结果为本人。
可选的,所述预设合成条件还包括:所述音频流的语义内容符合预设内容。
可选的,所述操作指示信息为朗读预设信息,或者,回答预设问题;
对于所述操作指示信息为所述朗读预设信息,所述预设内容为所述预设信息指示的内容;
对于所述操作指示信息为所述回答预设问题,所述预设内容为所述预设问题对应的预设答案。
可选的,所述将满足预设合成条件的被录制的信息中的图像流和音频流合成为视频流,包括:
采用FFmpeg音视频处理库,将满足预设合成条件的被录制的信息中的图像流和音频流合成为视频流。
可选的,在所述将满足预设合成条件的被录制的信息中的图像流和音频流合成为视频流之后,还包括:
将所述视频流发送给所述服务端。
本申请还提供了一种身份验证装置,包括:
输出模块,用于响应于服务端发送的验证指令,输出所述验证指令中包含的操作指示信息,所述操作指示信息指示待验证对象执行预设操作,所述预设操作包括:输出语音;
获取模块,用于获取所述待验证对象执行所述预设操作过程中被录制的信息;所述被录制的信息包括:图像流和音频流;
合成模块,用于将满足预设合成条件的被录制的信息中的图像流和音频流合成为视频流,所述预设合成条件至少包括:依据所述图像流对所述待验证对象进行活体检测的结果为本人。
可选的,所述预设合成条件还包括:所述音频流的语义内容符合预设内容。
可选的,所述操作指示信息为朗读预设信息,或者,回答预设问题;对于所述操作指示信息为所述朗读预设信息,所述预设内容为所述预设信息指示的内容;对于所述操作指示信息为所述回答预设问题,所述预设内容为所述预设问题对应的预设答案。
本申请还提供了一种存储介质,所述存储介质包括存储的程序,其中,所述程序执行上述任意一种所述的身份验证方法。
本申请还提供了一种设备,所述设备包括至少一个处理器、以及与所述处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行上述任意一种所述的身份验证方法。
本申请所述的身份验证方法及装置,响应于服务端发送的验证指令,输出验证指令中包含的操作指示信息;并且,该操作指示信息指示待验证对象执行预设操作,其中,预设操作包括输出语音。
一方面,由于待验证对象输出语音的过程具有活体动作,因此,获取的待验证对象输出语音的过程被录制的图像流,可以进行活体检测(身份识别)。另一方面,将活体检测结果表示待验证对象为本人的该图像流与该音频流合成得到的视频流又可以作为证据保留。即本申请通过将活体检测操作融合在对待验证对象输出语音过程进行视频录制的过程中,使得终端只需对待验证对象执行一次图像流与音频流的录制和合成,即只需录制一次视频。从而,相比于现有技术进行活体检测与获取证据中总共需要录制两次视频,本申请的终端的数据处理量减少,并且,数据处理时间缩短,因此,采用本申请的方案,可以减少终端资源的耗费。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种身份验证方法的应用场景示意图;
图2为本申请实施例公开的一种身份验证方法的流程图;
图3为本申请实施例公开的一种身份验证装置的结构示意图;
图4为本申请实施例公开的一种设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的一种身份验证方法的应用场景示意图,包括终端和服务端,其中,服务端用于响应于身份验证信息的获取指令,向终端发送验证指令,该验证指令用于指示终端对待验证对象执行身份验证的过程。
在本申请实施例中,终端可以为用户手机、PC设备等,当然,在实际中,终端还可以为其他设备,本实施例不对终端的具体内容作限定。
图2为本申请实施例提供的一种身份验证方法,执行主体为终端,可以包括以下步骤:
S201、响应于服务端发送的验证指令,输出验证指令中包含的操作指示信息。
在本实施例中,在接收到服务端发送的验证指令后,对验证指令进行响应。其中,验证指令中包含操作指示信息,该操作指示信息用于指示待验证对象执行预设操作。其中,预设操作可以包括:输出语音。即操作指示信息用于指示待验证对象输出语音,即指示待验证对象讲话。
可选的,在本实施例中,预设操作可以为朗读预设信息,或者,回答预设问题,当然,在实际中,预设操作还可以为其他内容,本实施例不对预设操作的具体内容作限定。
需要说明的是,在本实施例中,预设信息和预设问题的具体内容可以根据具体的业务场景确定,本实施例不对预设信息和预设问题的具体内容作限定。
S202、获取待验证对象执行预设操作过程中被录制的信息。
在本实施例中,一种可选的实现方式包括:在终端接收到验证指令,启动终端中的相机和麦克风,对待验证对象执行预设操作的过程进行录制,其中,相机录制得到图像流,麦克风录制得到音频流。
在本实施例中,将相机录制的图像流与麦克风录制的音频流,统称为待验证对象执行预设操作过程中被录制的信息。本步骤获取待验证对象执行预设操作过程中被录制的信息。
S203、将满足预设合成条件的被录制的信息中的图像流和音频流合成为视频流。
在本实施例中,由于待验证对象输出语音的过程包括活体动作(张嘴、眨眼等),因此,获取的图像流可以用作活体检测,以判断待验证对象是否为本人。其中,依据图像流进行活体检测的过程可以包括:检测图像流中的目标帧图像,其中,目标帧图像为该图像流中第一帧包含人脸信息的图像,依据该图像流中目标帧图像,以及目标帧图像之后的图像,进行活体检测。其中,依据目标帧图像以及目标帧图像之后的图像进行活体检测的具体实现过程为现有技术,这里不再赘述。
在本步骤中,预设合成条件至少包括:依据该图像流对待验证对象进行活体检测的结果为本人。即至少在被录制的信息满足:依据其中的图像流对待验证对象进行活体检测结果为本人的情况下,将被录制的信息中的图像流与音频流合成为视频流。
可选的,在实际中,由于采用FFmpeg音视频处理库进行视频流合成,具有实现方便的特点,因此,在本实施例中,可以采用FFmpeg音视频处理库,将满足预设条件的被录制的信息中的图像流与音频流,合称为视频流。其中,合成的具体实现过程为现有技术。
可选的,在本实施例中,还可以将视频流发送给服务端,以便服务端作为证据进行保留。
在本实施例的一次录制过程中,由于待验证对象输出语音的过程具有活体动作,因此,可以对该次录制得到的图像流进行活体检测,以实现对待验证对象的身份识别。并且,对满足预设合成条件的被录制的信息中的图像流与音频流合成得到的视频流,还可以作为保留的证据。因此,采用本实施例的方案,终端只需一次录制过程,即可实现对待验证对象的身份识别和得到用于保留的证据。
相比于现有技术中终端需要对用于活体检测进行一次录制,需要对保留证据进行一次录制,即进行两次录制过程,并且用于活体检测的视频录制过程中,需要引导用户执行活体动作。本实施例提供的方案,无需用户执行活体操作,并且,只需用户参与一次录制即可,因此,采用本实施例提供的方案,用户体验更好。
通过图2对应的实施例,将满足预设合成条件的被录制的信息中的图像流与音频流,合成为视频流。其中,待验证对应输出的语音的语义内容不符合业务场景所需的预设内容,即对待验证对象输出语音过程录制的音频流的语义内容,可能与依据业务场景设定的内容不符。
例如,操作指示信息为朗读预设信息,待验证对象可能没有朗读该预设信息,即待验证对象输出的语音的语义不符合预设信息的内容,使得将合成的视频流作为证据,该证据的准确性不高。又例如,操作指示信息为回答预设问题,待验证对象输出的答案不正确,即待验证对象输出的语音的语义内容不符合预设问题对应的预设答案,使得将合成的视频流作为证据,该证据的准确性不高。
为了保证证据的准确性,在本实施例中,预设合成条件还可以包括音频流的语义内容符合预设内容。其中,音频流的语义内容符合预设内容表示:音频流的语义内容与预设内容间的误差小于预设阈值。
由于本实施例中的操作指示信息可以为朗读预设信息,或者,回答预设问题。其中,在操作指示信息为朗读预设信息的情况下,预设内容为预设信息的内容。在操作指示信息为回答预设问题的情况下,预设内容为预设问题对应的预设答案。
图3为本申请实施例提供的一种身份验证装置,可以包括:输出模块301、获取模块302和合成模块303,其中,
输出模块301,用于响应于服务端发送的验证指令,输出验证指令中包含的操作指示信息,操作指示信息指示待验证对象执行预设操作,预设操作包括:输出语音。
获取模块302,用于获取待验证对象执行预设操作过程中被录制的信息。被录制的信息包括:图像流和音频流。
合成模块303,用于将满足预设合成条件的被录制的信息中的图像流和音频流合成为视频流。预设合成条件至少包括:依据图像流对待验证对象进行活体检测的结果为本人。
可选的,预设合成条件还可以包括:音频流的语义内容符合预设内容。
可选的,操作指示信息为朗读预设信息,或者,回答预设问题。对于操作指示信息为朗读预设信息,预设内容为预设信息指示的内容;对于操作指示信息为回答预设问题,预设内容为预设问题对应的预设答案。
可选的,合成模块303,用于将满足预设合成条件的被录制的信息中的图像流和音频流合成为视频流,包括:
合成模块303,具体用于采用FFmpeg音视频处理库,将满足预设合成条件的被录制的信息中的图像流和音频流合成为视频流。
可选的,在合成模块303将满足预设合成条件的被录制的信息中的图像流和音频流合成为视频流之后,还包括:
发送模块,用于将视频流发送给服务端。
身份验证装置包括处理器和存储器,上述输出模块301、获取模块302和合成模块303等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来解决设备的资源耗费大的问题。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述身份验证方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述身份验证方法。
本发明实施例提供了一种,如图4所示,设备包括至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,处理器、存储器通过总线完成相互间的通信;处理器用于调用存储器中的程序指令,以执行上述的身份验证方法。本文中的设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
响应于服务端发送的验证指令,输出所述验证指令中包含的操作指示信息,所述操作指示信息指示待验证对象执行预设操作,所述预设操作包括:输出语音;
获取所述待验证对象执行所述预设操作过程中被录制的信息;所述被录制的信息包括:图像流和音频流;
将满足预设合成条件的被录制的信息中的图像流和音频流合成为视频流,所述预设合成条件至少包括:依据所述图像流对所述待验证对象进行活体检测的结果为本人。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
在一个典型的配置中,设备包括一个或多个处理器(CPU)、存储器和总线。设备还可以包括输入/输出接口、网络接口等。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
本申请实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书的各个实施例中记载的特征可以相互替换或者组合,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。