[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN116311389B - 指纹识别的方法和装置 - Google Patents

指纹识别的方法和装置 Download PDF

Info

Publication number
CN116311389B
CN116311389B CN202210995240.4A CN202210995240A CN116311389B CN 116311389 B CN116311389 B CN 116311389B CN 202210995240 A CN202210995240 A CN 202210995240A CN 116311389 B CN116311389 B CN 116311389B
Authority
CN
China
Prior art keywords
fingerprint
vector
feature vector
orthogonal
feature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210995240.4A
Other languages
English (en)
Other versions
CN116311389A (zh
Inventor
邸皓轩
郭俊龙
李丹洪
张晓武
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Honor Device Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202210995240.4A priority Critical patent/CN116311389B/zh
Priority to EP23853960.5A priority patent/EP4462389A1/en
Priority to PCT/CN2023/092233 priority patent/WO2024037053A1/zh
Publication of CN116311389A publication Critical patent/CN116311389A/zh
Application granted granted Critical
Publication of CN116311389B publication Critical patent/CN116311389B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • G06V40/1365Matching; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • G06V40/1347Preprocessing; Feature extraction

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Collating Specific Patterns (AREA)

Abstract

一种指纹识别的方法和装置,该方法应用于指纹识别技术领域。该方法包括:采集待验证指纹图像;基于待验证指纹图像确定第一特征向量,第一特征向量是利用第一正交矩阵对第二特征向量进行降维处理得到的,第二特征向量用于表征待验证指纹图像的特征;基于第一特征向量和第三特征向量进行指纹匹配,第三特征向量是利用第一正交矩阵对第四特征向量进行降维处理得到的,第四特征向量用于表征第一指纹模板的特征,所述第三特征向量存储于指纹模板库中。通过存储降维处理后的指纹模板,能够降低指纹数据对电子设备存储空间的占用。并且,利用降维处理后的特征数据进行匹配,能够减少复杂度,提高匹配速度,极大提升用户的指纹识别体验。

Description

指纹识别的方法和装置
技术领域
本申请涉及生物识别领域,并且具体地,涉及一种指纹识别的方法和装置。
背景技术
随着智能终端的普及,指纹识别技术在终端领域也得到飞速发展。特别是在用户戴口罩的场景下,相比于人脸解锁,指纹解锁体现出不可或缺的重要性。在指纹解锁流程中,需要预先录入指纹模板,以便应用于指纹解锁中。指纹模板中存储的指纹模板的特征点数量较多。这就导致指纹模板中存储的指纹图像的特征数据占用大量内存。因此,如何降低指纹模板占用的内存空间成为亟待解决的问题。
发明内容
有鉴于此,本申请提供了一种指纹识别的方法、装置、计算机可读存储介质和计算机程序产品,通过对指纹特征数据进行降维处理,能够降低指纹模板占用的内存空间,并且能够降低匹配复杂度,极大提升用户的指纹识别体验。
第一方面,提供了一种指纹识别的方法,所述方法应用于电子设备,所述方法包括:
采集待验证指纹图像;
基于所述待验证指纹图像确定第一特征向量,所述第一特征向量是利用第一正交矩阵对第二特征向量进行降维处理得到的,所述第二特征向量用于表征所述待验证指纹图像的特征;
基于第一特征向量和第三特征向量进行指纹匹配,所述第三特征向量是利用所述第一正交矩阵对第四特征向量进行降维处理得到的,所述第四特征向量用于表征第一指纹模板的特征,所述第三特征向量存储于指纹模板库中;
其中,所述第一正交矩阵包括多个向量,所述多个向量是基于预先采集的指纹特征点通过迭代计算生成的,所述多个向量中的每个向量能够将所述预先采集的指纹特征点划分为两部分。
上述方法可以由终端设备或终端设备中的芯片执行。基于上述方案,在采集到待验证指纹图像,利用第一正交矩阵对待验证指纹图像进行降维处理,得到第一特征向量,然后利用第一特征向量与指纹模板库中存储的第三特征向量进行指纹匹配,能够降低指纹数据对电子设备存储空间的占用。并且,利用降维处理后的特征数据进行匹配,能够减少复杂度,提高匹配速度。
在一种可能的实现方式中,所述基于第一特征向量和第三特征向量进行指纹匹配,包括:
基于所述第一特征向量与所述第三特征向量计算汉明距离;
在所述汉明距离小于第一距离阈值时,确定所述待验证指纹图像与所述第一指纹模板匹配成功。
可选地,所述汉明距离满足下式:
d=count(XOR(H1,H2))
其中,d表示汉明距离,count()表示统计非零个数的运算,XOR表示异或运算,H1表示所述第一特征向量,H2表示所述第三特征向量。
因此,相比于现有技术中通过计算欧式距离进行匹配,本申请实施例通过计算汉明距离来判断是否匹配成功,在保证匹配准确度的情况下,能够减少匹配复杂度,有助于提高匹配速度。
在一种可能的实现方式中,所述第一正交矩阵的按照以下方式获得:
初始化第一正交向量组,所述第一正交向量组为空;
生成第一随机向量,所述第一随机向量是n维向量;
判断所述第一随机向量与所述第一正交向量组中的向量是否正交;
在所述第一随机向量与所述第一正交向量组中的向量正交时,判断所述第一随机向量是否能将所述预先采集的指纹特征点划分为两部分;
在所述第一随机向量划分所述指纹特征点时,将所述第一随机向量添加至所述第一正交向量组;
判断所述第一正交向量组中包括的向量个数是否为n;
在所述第一正交向量组中的向量个数为n时,将所述第一正交向量组中的向量按行展开,获得所述第一正交矩阵,其中,所述第一正交矩阵包括n个行向量,所述第一正交矩阵的n个行向量互相正交。
因此,通过不断尝试的方式生成第一正交向量组,从而能够找到最适合区分指纹特征的正交矩阵,以利用第一正交矩阵进行降维提供准备工作。
在一种可能的实现方式中,所述第三特征向量采用以下方法获得:
将所述第一正交矩阵与所述第四特征向量的转置矩阵作乘运算,得到乘积;
将得到的所述乘积通过符号函数进行处理,获得第五特征向量;
将所述第五特征向量中的向量元素进行二进制转换处理,获得所述第三特征向量。
通过上述方式利用第一正交矩阵对第四特征向量进行降维处理,得到第三特征向量,能够有效减少指纹模板占用的存储空间。
在一种可能的实现方式中,所述第三特征向量占用的字节数小于所述第四特征向量占用的字节数。
在经过降维处理后,存储在指纹模板库中的第三特征向量占用的字节数,小于第四特征向量占用的字节数,大大降低存储空间的占用。
在一种可能的实现方式中,所述方法还包括:
显示第一界面,所述第一界面中包括第一选项,所述第一选项用于开启或关闭指纹匹配优化功能。
因此,本申请实施例还提供了指纹特征匹配优化功能的开关选项,可供用户选择开启或关闭指纹特征匹配优化功能。
第二方面,提供了一种指纹识别的装置,包括用于执行第一方面中任一种方法的单元。该装置可以是终端(或者终端设备),也可以是终端(或者终端设备)内的芯片。该装置包括输入单元、显示单元和处理单元。
当该装置是终端时,该处理单元可以是处理器,该输入单元可以是通信接口,该显示单元可以是图形处理模块和屏幕;该终端还可以包括存储器,该存储器用于存储计算机程序代码,当该处理器执行该存储器所存储的计算机程序代码时,使得该终端执行第一方面中的任一种方法。
当该装置是终端内的芯片时,该处理单元可以是芯片内部的逻辑处理单元,该输入单元可以是输出接口、管脚或电路等,该显示单元可以是芯片内部的图形处理单元;该芯片还可以包括存储器,该存储器可以是该芯片内的存储器(例如,寄存器、缓存等),也可以是位于该芯片外部的存储器(例如,只读存储器、随机存取存储器等);该存储器用于存储计算机程序代码,当该处理器执行该存储器所存储的计算机程序代码时,使得该芯片执行第一方面的任一种方法。
第三方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序代码,当所述计算机程序代码被指纹识别的装置运行时,使得该装置执行第一方面中的任一种方法。
第四方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被指纹识别的装置运行时,使得该装置执行第一方面中的任一种方法。
附图说明
图1是本申请实施例的应用场景的一个示例图;
图2是一种适用于本申请的电子设备的硬件系统的示意图;
图3是一种适用于本申请的电子设备的软件系统的示意图;
图4是根据本申请实施例的指纹识别的方法的示意性流程图;
图5是根据本申请实施例的获取第一正交矩阵的示意图;
图6是本申请实施例的指纹识别的方法的一个示意流程图;
图7是本申请实施例的一个界面示例图;
图8是本申请实施例的指纹识别装置的一个示意性框图。
具体实施方式
下面将结合附图,对本申请实施例中的技术方案进行描述。
本申请实施例提供的指纹识别方法可应用于具有指纹识别功能的电子设备中。例如,该电子设备可以为手机、平板电脑、笔记本电脑、可穿戴设备、多媒体播放设备、电子书阅读器、个人计算机、个人数字助理(personaldigitalassistant,PDA)、上网本、增强显示(augmentedreality,AR)设备、虚拟现实(virtualreality,VR)设备等电子设备。本申请对电子设备的具体形式不作限制。
作为示例而非限定,当电子设备为可穿戴设备时,该可穿戴设备可以是应用穿戴式技术对日常穿戴进行智能化设计、开发出可以穿戴的设备的总称,比如,眼镜、手套、手表、服饰以及鞋等。可穿戴设备即直接穿戴在人体上,或是整合到用户的衣服或配件的一种便携式设备,可以采集用户的生物特征数据。可穿戴设备不仅仅是一种硬件设备,更是通过软件支持以及数据交互、云端交互来实现强大的功能。一种实现方式,穿戴式智能设备包括功能全、尺寸大、可不依赖智能手机实现完整或部分功能的设备,比如,智能手表或智能眼镜等。另一种实现方式,穿戴式智能设备可以是只专注于某一类应用功能,且需要和其他设备(比如智能手机)配合使用的设备,比如,包含解锁的触控屏的智能手环、智能首饰等。
本申请实施例对指纹识别的应用场景不作具体限定,涉及到利用指纹进行识别的场景均可以适用。比如,用户利用指纹进行解锁、支付或身份认证等等。
本申请实施例可应用于光学指纹识别场景中。光学指纹识别主要利用的是光的反射和折射原理。当手指按压屏幕时,屏幕点亮发出亮光,光线照亮指纹,然后将指纹通过反射与折射传递到屏下的传感器进行识别。本请实施例对指纹识别的场景不作具体限定,也可以合理应用到其他指纹识别场景中,例如,超声波指纹识别,电容指纹识别等。
可以理解,本申请实施例对指纹模组的位置不作具体限定。例如,若采用光学指纹识别技术,则指纹模组可以设置于电子设备的屏幕下方,即屏下指纹识别。又例如,指纹模组装置也可设置于电子设备的背面。
图1是本申请实施例的应用场景的一个示意图。以电子设备是手机为例,该手机采用屏下指纹解锁,如图1中(1)所示,用户通过手指按压屏幕的指纹解锁区域10,尝试进行指纹解锁。在用户按压指纹解锁区域10后,手机会将采集的指纹与用户预先存储的指纹模板进行匹配。如果匹配成功,则手机屏幕解锁成功。
应理解,图1中(1)所示的指纹解锁区域10只是示例性描述,本申请实施例并不限于此。事实上,指纹解锁区域10可以位于屏幕的其他区域,比如,靠近电源键的屏幕区域。
还应理解,图1中(1)所示的指纹解锁是以屏下指纹解锁为例进行说明的,本申请实施例并不限于此。比如,本申请实施例也适用于手机背部指纹解锁。
如果用户在指纹匹配成功后,那么可以进入手机主界面。一种可能的情形,比如,在指纹解锁成功后手机显示如图1中(2)所示的界面,界面中显示有多个应用程序的图标,比如应用1至应用8。当然,图1中(2)所示的界面只是一种可能的情形,本申请实施例并不限于此。
应理解,图1中的场景只是示意性说明本申请的一个应用场景,这并不对本申请实施例构成限定,本申请并不限于此。
以下结合图2和图3描述本申请实施例适用的硬件系统和软件架构。
图2示出了一种适用于本申请的电子设备的硬件系统。
电子设备100可以是手机、智慧屏、平板电脑、可穿戴电子设备、车载电子设备、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、投影仪等等,本申请实施例对电子设备100的具体类型不作任何限制。
电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
需要说明的是,图2所示的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图2所示的部件更多或更少的部件,或者,电子设备100可以包括图2所示的部件中某些部件的组合,或者,电子设备100可以包括图2所示的部件中某些部件的子部件。比如,图2所示的接近光传感器180G可以是可选的。图2示的部件可以以硬件、软件、或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元。例如,处理器110可以包括以下处理单元中的至少一个:应用处理器(application processor,AP)、调制解调处理器、图形处理器(graphics processing unit,GPU)、图像信号处理器(image signal processor,ISP)、控制器、视频编解码器、数字信号处理器(digital signal processor,DSP)、基带处理器、神经网络处理器(neural-network processing unit,NPU)。其中,不同的处理单元可以是独立的器件,也可以是集成的器件。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
图2所示的各模块间的连接关系只是示意性说明,并不构成对电子设备100的各模块间的连接关系的限定。可选地,电子设备100的各模块也可以采用上述实施例中多种连接方式的组合。
电子设备100可以通过GPU、显示屏194以及应用处理器实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194可以用于显示图像或视频。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)、有源矩阵有机发光二极体(active-matrix organic light-emitting diode,AMOLED)、柔性发光二极管(flex light-emitting diode,FLED)、迷你发光二极管(mini light-emitting diode,Mini LED)、微型发光二极管(micro light-emitting diode,Micro LED)、微型OLED(Micro OLED)或量子点发光二极管(quantum dotlight emitting diodes,QLED)。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP、摄像头193、视频编解码器、GPU、显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP可以对图像的噪点、亮度和色彩进行算法优化,ISP还可以优化拍摄场景的曝光和色温等参数。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的红绿蓝(red green blue,RGB),YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
电子设备100可以通过音频模块170、扬声器170A、受话器170B、麦克风170C、耳机接口170D以及应用处理器等实现音频功能,例如,音乐播放和录音。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,例如可以是电阻式压力传感器、电感式压力传感器或电容式压力传感器。电容式压力传感器可以是包括至少两个具有导电材料的平行板,当力作用于压力传感器180A,电极之间的电容改变,电子设备100根据电容的变化确定压力的强度。当触摸操作作用于显示屏194时,电子设备100根据压力传感器180A检测所述触摸操作。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令;当触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
接近光传感器180G可以包括例如发光二极管(light-emitting diode,LED)和光检测器,例如,光电二极管。LED可以是红外LED。电子设备100通过LED向外发射红外光。电子设备100使用光电二极管检测来自附近物体的红外反射光。当检测到反射光时,电子设备100可以确定附近存在物体。当检测不到反射光时,电子设备100可以确定附近没有物体。电子设备100可以利用接近光传感器180G检测用户是否手持电子设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式或口袋模式的自动解锁与自动锁屏。应理解,图2中所述的接近光传感器180G可以是可选部件。在一些场景下,可以利用超声传感器来替代接近光传感器180G检测接近光。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现解锁、访问应用锁、拍照和接听来电等功能。
触摸传感器180K,也称为触控器件。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,触摸屏也称为触控屏。触摸传感器180K用于检测作用于其上或其附近的触摸操作。触摸传感器180K可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,并且与显示屏194设置于不同的位置。
按键190包括开机键和音量键。按键190可以是机械按键,也可以是触摸式按键。电子设备100可以接收按键输入信号,实现于案件输入信号相关的功能。
马达191可以产生振动。马达191可以用于来电提示,也可以用于触摸反馈。马达191可以对作用于不同应用程序的触摸操作产生不同的振动反馈效果。对于作用于显示屏194的不同区域的触摸操作,马达191也可产生不同的振动反馈效果。不同的应用场景(例如,时间提醒、接收信息、闹钟和游戏)可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
上文详细描述了电子设备100的硬件系统,下面介绍电子设备100的软件系统。软件系统可以采用分层架构、事件驱动架构、微核架构、微服务架构或云架构,本申请实施例以分层架构为例,示例性地描述电子设备100的软件系统。
如图3所示,采用分层架构的软件系统分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,软件系统可以分为五层,从上至下分别为应用程序层、应用程序框架层、安卓运行时(Android Runtime)和系统库、内核层以及可信执行环境(trusted execution environment,TEE)层。
应用程序层可以包括相机、图库、日历、通话、地图、导航、WLAN、蓝牙、音乐、视频、短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用程序编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层可以包括一些预定义的函数。
例如,应用程序框架层包括窗口管理器、内容提供器、视图系统、电话管理器、资源管理器和通知管理器。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏、锁定屏幕和截取屏幕。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频、图像、音频、拨打和接听的电话、浏览历史和书签、以及电话簿。
视图系统包括可视控件,例如显示文字的控件和显示图片的控件。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成,例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能,例如通话状态(接通或挂断)的管理。
资源管理器为应用程序提供各种资源,比如本地化字符串、图标、图片、布局文件和视频文件。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于下载完成告知和消息提醒。通知管理器还可以管理以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知。通知管理器还可以管理以对话窗口形式出现在屏幕上的通知,例如在状态栏提示文本信息、发出提示音、电子设备振动以及指示灯闪烁。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理、堆栈管理、线程管理、安全和异常的管理、以及垃圾回收等功能。
系统库可以包括多个功能模块,例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:针对嵌入式系统的开放图形库(opengraphics library for embedded systems,OpenGL ES)和2D图形引擎(例如:skia图形库(skia graphics library,SGL))。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D图层和3D图层的融合。
媒体库支持多种音频格式的回放和录制、多种视频格式回放和录制以及静态图像文件。媒体库可以支持多种音视频编码格式,例如:MPEG4、H.264、动态图像专家组音频层面3(moving picture experts group audio layer III,MP3)、高级音频编码(advancedaudio coding,AAC)、自适应多码率(adaptive multi-rate,AMR)、联合图像专家组(jointphotographic experts group,JPG)和便携式网络图形(portable network graphics,PNG)。
三维图形处理库可以用于实现三维图形绘图、图像渲染、合成和图层处理。
二维图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层可以包括指纹模组驱动、显示驱动、摄像头驱动、音频驱动和传感器驱动等驱动模块。
TEE层可以给Android系统提供安全服务。TEE层用于执行各类生物识别算法。TEE层通常用于运行关键的操作:(1)、移动支付:指纹验证、PIN码输入等;(2)、机密数据:私钥、证书等的安全存储;(3)、内容包括:DRM(数字版权保护)等。
在一些可能的实施例中,TEE层包括指纹录入模块、指纹验证模块和正交矩阵生成模块。可选地,正交矩阵生成模块可以独立设置于TEE层(比如,如图3中所示),也可以位于指纹验证模块或指纹录入模块中,本申请实施例对此不作具体限定。在本申请实施例中,正交矩阵生成模块用于生成第一正交矩阵。第一正交矩阵用于对指纹图像的特征(指纹图像可通过指纹特征描述符进行表征,比如特征向量)进行降维处理。
应理解,以上基于图2对电子设备的结构图进行举例说明,通过图3对本申请实施例的软件架构进行示例说明,但是本申请实施例并不限于此。
目前,指纹模板中存储的指纹图像的特征点描述符通常是一个由sift算法生成的n维向量进行表征。但是用这种方法表征指纹特征,会使得指纹模板中存储的数据量过大,从而占用电子设备的大量内存。并且,在指纹模板与待验证指纹图像进行指纹匹配时,计算复杂度较高,且比较耗时,严重影响用户体验。
示例性地,可利用特征点描述符用于描述指纹特征点(比如分叉点、端点)的属性。此处作统一说明,特征点描述符的表现形式可以是特征向量。比如,特征点描述符为n维向量,即V=(v1,v2,...,vn)。
有鉴于此,本申请实施例拟通过对指纹特征进行降维的方式,来降低指纹特征占用的内存空间。并且,基于降维后的指纹特征进行匹配,能够降低计算复杂度。
以下结合图4至图7描述根据本申请实施例的指纹识别的方法。可以理解,以下所示的指纹识别的方法可以在具备上述硬件结构的电子设备(比如,图2所示的电子设备)中实现。
图4是指纹识别的一个全局流程示意框图。如图4所示,指纹识别通常包括指纹录入过程和指纹验证过程。在本申请实施例中,增加了正交矩阵的生成过程。可以理解,图4中的指纹录入过程可以通过图3中的指纹录入模块实现;指纹验证过程可通过图3中的指纹验证模块实现;正交矩阵的生成过程可以通过图3中的正交矩阵生成模块实现。
指纹录入过程可以理解为:对采集的用户指纹图像进行预处理,并基于预处理后的指纹图像进行特征提取,并对提取的特征进行降维,最后将降维后的指纹特征存储为指纹模板的过程。
示例性地,对于指纹录入过程而言,通常会涉及以下处理流程:预处理、质量卡控、提取指纹传统特征、提取指纹高阶特征、降维、模板压缩存储。
其中,预处理是对采集的指纹图像进行亮度归一化、去噪等图像处理的过程。
去噪是对经过预处理后的指纹图像进行图像去噪处理,以使得指纹图像去除噪声干扰。本申请实施例对去噪方法不作具体限定。比如,去噪方法采用小波变换、双边滤波等。
应理解,上述只是以预处理包括亮度归一化和去噪为例进行描述,本申请实施例并不限于此。事实上,预处理可以包括其他处理操作,比如,滤波处理、图像增强处理、二值化处理等等。
质量卡控:是指对去噪后的指纹图像的图像质量进行判断,获取高质量的指纹图像进行录入,对低质量的指纹图像不作录入。
提取指纹传统特征是指基于去噪后的指纹图像初步提取指纹的特征。指纹传统特征可以理解为指纹的整体特征(或者说全局特征)。
提取指纹高阶特征是指从细化后的指纹图中提取指纹的细节特征点。指纹高阶特征可以理解为是比指纹传统特征更细节的局部特征。
降维是指利用第一正交矩阵将特征点映射到子空间的过程。后文将会详细描述利用第一正交矩阵进行降维的实例。
模板压缩存储指对降维后的指纹特征进行存储的过程。通常而言,提取的指纹特征的结果保存为特征模板进行存储。在本申请实施例中,可以调用正交矩阵的生成模块生成的第一正交矩阵,对待录入的指纹图像的特征进行降维,然后将降维后的指纹特征存储到指纹模板库中,能够减少占用的内存空间。
指纹验证过程可以理解为:在采集到待验证指纹图像后,对待验证指纹图像进行预处理,并基于预处理后的待验证指纹图像进行特征提取,并对提取的特征进行降维,最后将降维后的待验证指纹的特征与指纹模板中存储的降维后的指纹特征进行匹配的过程。在本申请实施例中,在进行匹配或验证时利用的是降维后的指纹特征。
示例性地,对于指纹验证过程而言,涉及以下处理流程:预处理(亮度归一化)、去噪、质量卡控、提取指纹传统特征、提取指纹高阶特征、特征降维(或者说描述符降维)、特征匹配、认证是否是用户(该用户指的是录入指纹的用户)。
关于预处理、去噪、质量卡控、提取指纹传统特征、提取指纹高阶特征的描述可以参考指纹录入过程中的描述,为了简洁,此处不再赘述。
其中,特征匹配是指:利用降维后的待验证指纹图像的特征(特征可以通过特征描述符表征,比如,第一特征向量),与指纹模板中存储的指纹特征(比如,第三特征向量)进行匹配。
正交矩阵的生成过程可以理解为:基于预先采集的大量指纹特征点,生成第一正交矩阵的过程。
第一正交矩阵用于对指纹特征进行降维。应理解,第一正交矩阵也可以有命名,比如,降维正交矩阵,描述符降维正交矩阵,指纹特征降维正交矩阵等。本申请实施例对此不作具体限定。
在本申请实施例中,第一正交矩阵可以通过迭代运算方式得到,或者说通过不断尝试的方式生成。第一正交矩阵可以是基于预先采集的大量指纹特征点离线生成的。
示例性地,第一正交矩阵的生成过程可以由图4中的正交矩阵生成模块执行。将预先采集好的大量指纹特征点描述符输入正交矩阵生成模块,正交矩阵生成模块用于输出第一正交矩阵。
以下结合图5描述第一正交矩阵的生成过程。图5示出了本申请实施例生成第一正交矩阵的方法500的示意性流程图。如图5所示,该方法500包括以下步骤:
步骤501,初始化第一正交向量组,所述第一正交向量组为空。
示例性地,第一正交向量组表示为R={}。在初始阶段,第一正交向量组R为空。
步骤502,生成第一随机向量,所述第一随机向量是n维向量。
示例性地,第一随机向量可以表示为r=(r1,r2,...,rn)。n为大于或等于2的整数。
本申请实施例对生成第一随机向量的方式不作具体限定。示例性地,可以通过随机函数生成第一随机向量。
步骤503,判断第一随机向量与第一正交向量组中的向量是否正交。
本申请实施例对判断正交的具体方式不作限定。示例性地,如果第一随机向量与第一正交向量组中的向量的内积为0时,则第一随机向量与第一正交向量组中的向量正交。
第一随机向量与第一正交向量组中的向量正交可以理解为近似正交。可选地,可通过引入正交阈值来判断第一随机向量与第一正交向量组中的向量是否正交。
示例性地,如果第一随机向量与第一正交向量组中的向量的内积小于预设正交阈值,则第一随机向量与第一正交向量组中的向量正交。
可以理解,上述预设正交阈值的取值可以趋于无限小。本申请实施例对正交阈值的具体取值不作限定。
在第一随机向量与第一正交向量组中的向量正交时,执行步骤504;在第一随机向量与第一正交向量组中的向量不正交时,返回步骤502。
步骤504,判断所述第一随机向量是否能将预先采集的指纹特征点划分为两部分。
示例性地,以第一随机向量r为分割平面,将预先采集的指纹特征点分割为两部分。如果两部分的特征点个数相等(或者说近似相等),则可以将第一随机向量纳入第一正交向量组。
可选地,对于被第一随机向量r划分为两部分的指纹特征点而言,可通过引入个数差值阈值来判断两部分的特征点个数是否相等。
示例性地,如果两部分特征点个数的差值小于预定的个数差值阈值,则认为第一随机向量r可以均分预先采集的指纹特征点。
利用所述第一随机向量对预先采集的指纹特征点进行分割,在第一随机向量能将预先采集的指纹特征点划分为两部分时,执行步骤505;在第一随机向量不能将预先采集的指纹特征点划分为两部分时,返回步骤502。
步骤505,将所述第一随机向量添加至所述第一正交向量组。
若上述第一随机向量r能够将预先采集的指纹特征点划分为两部分,那么将第一随机向量r添加至第一正交向量组R中,即第一正交向量组R=R∪r。
步骤506,判断所述第一正交向量组中包括的向量个数是否达到n。
在第一正交向量组中包括的向量个数达到n时,执行步骤507;在第一正交向量组中包括的向量个数未达到n时,返回步骤502,重复执行步骤502至步骤505。
步骤507,将所述第一正交向量组中的n个向量按行展开,获得所述第一正交矩阵,其中,所述第一正交矩阵包括n个行向量,所述第一正交矩阵的n个行向量互相正交。
示例性地,第一正交矩阵可以表示为如下的n*n维的正交矩阵:
其中,A表示第一正交矩阵。A中包括n个行向量,每个行向量包括n个向量元素。每个行向量可基于前文步骤502-505生成。
基于上述流程,通过不断尝试的方式生成第一正交向量组,从而能够找到最适合区分指纹特征的正交矩阵,比如第一正交矩阵。
以上描述了第一正交矩阵的生成过程,后面将结合图6描述如何利用第一正交矩阵的实施例。
图6是根据本申请实施例的指纹识别的方法600的示意性流程图。应理解,图6中的方法600中涉及的第一正交矩阵可以通过图5中的方法500获得。还应理解,图6中的方法可以应用于图1所示的指纹解锁场景。如图6所示,所述方法600包括:
步骤601,采集待验证指纹图像。
待验证指纹图像也可以指待匹配指纹图像。示例性地,待验证指纹图像是在用户按压指纹解锁区域时采集的图像。比如,用户按压指纹解锁区域的示例如图1中(1)所示。
步骤602,基于待验证指纹图像确定第一特征向量,所述第一特征向量是利用第一正交矩阵对第二特征向量进行降维处理后得到的,所述第二特征向量用于表征所述待验证指纹图像的特征。
所述第二特征向量用于表征:对待验证指纹图像进行预处理后,基于预处理后的指纹图像提取的特征(包括全部特征)。或者说,所述第二特征向量用于表征所述待验证指纹图像进行降维处理前的特征。或者说,所述第二特征向量用于表征经过预处理后的待验证指纹图像。
其中,所述第一正交矩阵包括多个向量(比如行向量),所述多个向量是基于预先采集的指纹特征点通过迭代计算生成的,所述多个向量中的每个向量能够将所述预先采集的指纹特征点划分为两部分。示例性地,第一正交矩阵采用图5中示出的方法500获得。
可选地,基于待验证指纹图像确定第一特征向量,包括:
对所述待验证指纹图像进行预处理,得到预处理后的指纹图像;
对所述预处理后的指纹图像进行特征提取,获得所述待验证指纹图像的特征,并利用第二特征向量表征待验证指纹图像的特征;
基于第一正交矩阵对第二特征向量进行降维处理,得到第一特征向量。
示例性地,可以对采集的待验证指纹图像进行预处理(比如亮度归一化、去噪、图像增强等处理),并对预处理后的指纹图像进行特征提取(如前文提到的提取指纹传统特征、提取指纹高阶特征),然后通过第二特征向量表征待验证指纹图像的特征,最后利用第一正交矩阵对第二特征向量进行降维处理,得到第一特征向量。
在对待验证指纹图像的特征数据进行降维处理后,可以利用降维后的特征数据进行指纹匹配。
可以理解,上述是以特征点描述符通过特征向量表征为例进行描述,本申请实施例并不限于此。比如,以第一特征向量为例,第一特征向量可以称作第一特征点描述符,或者第一特征矩阵,或者第一描述符矩阵,或者第一特征点矩阵等。
步骤603,基于第一特征向量和第三特征向量进行指纹匹配,所述第三特征向量是利用所述第一正交矩阵对第四特征向量进行降维处理得到的,所述第三特征向量存储于指纹模板库中,所述第四特征向量用于表征第一指纹模板的特征。
所述第四特征向量用于表征:对待录入指纹图像(对应第一指纹模板)进行预处理后,基于预处理后的待录入指纹图像提取的特征(包括全部特征)。或者说,所述第四特征向量用于表征第一指纹模板进行降维处理前的特征。或者说,所述第四特征向量用于表征经过预处理后的待录入指纹图像。
在本申请实施例中,指纹模板库中存储的指纹模板的特征数据是利用第一正交矩阵进行降维处理后的特征数据。示例性地,以第一指纹模板为例,在采集到待录入指纹图像(对应第一指纹模板)后,基于待录入指纹图像提取的特征,在降维处理前可以通过第四特征向量进行表征;在使用第一正交矩阵对第四特征向量进行降维处理后,可以得到降维后的特征数据,比如,第三特征向量,并将第三特征向量存储到指纹模板库中。在本申请实施例中,降维后的特征数据(第三特征向量)占用的内存空间小于降维前的特征数据(第四特征向量)占用的内存空间,能够降低指纹数据对电子设备存储空间的占用。并且,利用降维处理后的特征数据进行匹配,能够减少复杂度,提高匹配速度,极大提升用户的指纹识别体验。
应理解,指纹模板库中可存储一个或多个指纹模板,此处是以第一指纹模板为例进行描述。其他指纹模板在存储到指纹模板库的过程,与第一指纹模板的处理原则是类似的。为了简洁,此处不再赘述。
需要说明的是,“降维”的物理意义为:通过n个正交向量能够把空间划分为2n个子空间,利用n个比特位就可以表征该空间。比如,空间可理解为指纹特征点构成的空间。
可选地,一种表现方式,第三特征向量占用的字节数小于第四特征向量占用的字节数。
示例性地,以8维向量为例进行描述,第四特征向量包括8个向量元素,每个向量元素占用4个字节的存储空间,那么第四特征向量占用32字节(bytes)的存储空间,经过对第四特征向量降维处理后得到第三特征向量,第三特征向量通过8个比特位即可表示,仅需占用1个字节。这样,占用的存储空间减少为原先的1/32。
为便于理解,以下结合具体实例描述降维过程。
示例性地,第一指纹模板的特征描述符采用以下8维向量表征:
V=[1,2,3,4,5,6,7,8]
其中,上述特征向量V表示第四特征向量。特征向量V中的每个向量元素占用4字节(bytes)内存空间,即特征向量V总共占用8*4=32字节(bytes)。
示例性地,通过图5中所示的方法500得到的第一正交矩阵为以下8*8矩阵:
应理解,上述矩阵A是第一正交矩阵的一个示例。本申请实施例并不限于此。
可选地,作为一个实施例,采用以下方法获得第三特征向量,或者说对第四特征向量进行降维:
将所述第一正交矩阵与所述第四特征向量的转置矩阵作乘运算,得到乘积;
将得到的所述乘积通过符号函数进行处理,获得第五特征向量;
将所述第五特征向量进行二进制转换处理,获得所述第三特征向量。
也就是说,首先对第一正交矩阵与第四特征向量的转置矩阵进行相乘,然后将得到的乘积经过符号函数进行处理,得到第五特征向量,最后将第五特征向量中的向量元素处理为二进制值,得到第三特征向量。
示例性地,对第一正交矩阵与第四特征向量的转置矩阵进行相乘,包括:
采用下式进行计算:
其中,A表示第一正交矩阵。V′表示第四特征向量的转置矩阵。A·V′表示第一正交矩阵与所述第四特征向量的转置矩阵的乘积。
示例性地,对上述乘积通过符号函数进行处理,得到第五特征向量,包括:
采用下式进行处理:
其中,sign(A·V′)表示第五特征向量。
示例性地,将第五特征向量中的向量元素处理为二进制值,包括:
采用下式进行二进制处理:
其中,H(V)表示第三特征向量。当A·V′<0时,H(V)的取值为0;当A·V′≥0时,H(V)的取值为1。
通过上述降维处理过程,可以看到,经过降维处理后得到的第三特征向量只需要8比特位(10101111)就能表示,即占用1个字节。相比于第四特征向量占用32字节,第三特征向量只需占用1个字节,减少为原先的1/32,占用的存储空间显著被降低。
应理解,上述是以利用所述第一正交矩阵对第四特征向量进行降维处理,得到第三特征向量为例进行描述,本申请实施例不限于此。
类似地,第一特征向量的获取也可以参考第三特征向量的获取方式。
示例性地,所述第一特征向量采用以下方法获得:
将第一正交矩阵与第二特征向量的转置矩阵作乘运算,得到乘积;
将得到的所述乘积通过符号函数进行处理,获得第六特征向量;
将所述第六特征向量中的向量元素进行二进制转换处理,获得所述第一特征向量。
还应理解,利用第一正交矩阵对第二特征向量进行降维处理,得到第一特征向量的降维过程可以参考上述示例。为了简洁,此处不再赘述。
以下描述利用降维后的特征点描述符进行特征匹配的实现方式。
可选地,作为一个实施例,步骤603包括:基于所述第一特征向量与所述第三特征向量计算汉明距离;在所述汉明距离小于第一距离阈值时,确定所述待验证指纹图像与所述第一指纹模板匹配成功。
也就是说,可通过计算汉明距离来判断是否匹配成功。如果汉明距离小于设定的阈值(比如第一距离阈值),那么认为二者的特征点相互匹配,则可以执行后续流程。比如,可以进一步验证待验证指纹图像是否是录入指纹的用户。相比于计算两个特征点描述符之间的欧式距离,计算汉明距离在保证匹配准确度的情况下,能够减少运算复杂度,且节省时间,提高了匹配速度,为用户带来更好的解锁体验。
需要说明的是,汉明距离用于表征两个子空间之间的距离。子空间可以理解为特征点描述符(比如特征点描述符的表现形式为前文提及的特征向量)映射到的子空间。利用汉明距离能够有效地表征特征点描述符之间的距离。
应理解,上述是以汉明距离小于第一距离阈值时,确定所述待验证指纹图像与所述第一指纹模板匹配成功为例进行描述,本申请实施例并不限于此。事实上,“汉明距离小于第一距离阈值”也可以替换为其他合理条件来判断是否匹配成功。比如,“汉明距离小于第一距离阈值”替换为“汉明距离处于某距离区间”。
当然,如果待验证指纹图像与第一指纹模板未匹配成功,那么可以利用指纹模板库中存储的其他指纹模板进行匹配。当待验证指纹图像与其他指纹模板进行匹配时,具体过程与第一指纹模板是类似的,也是利用降维后的指纹特征进行匹配,以减少运算复杂度,且节省时间,提高了匹配速度。
本申请实施例对确定汉明距离的具体方式不作限定。以下结合具体公式进行描述。
示例性地,基于所述第一特征向量与所述第三特征向量计算汉明距离,包括:采用下式计算汉明距离:
d=count(XOR(H1,H2))
其中,d表示汉明距离,count()表示统计非零个数的运算,XOR表示异或运算,H1表示所述第一特征向量,H2表示所述第三特征向量。
举例来说,假设H1=(0 0 0 1),H2=(0 1 0 0),那么相同比特位处取值不同的个数为2,分别为:H1的第二个向量元素与H2的第二向量元素的取值不同;H1的第四个向量元素与H2的第四向量元素的取值不同。
因此,相比于现有技术中通过计算欧式距离进行匹配,本申请实施例通过计算汉明距离来判断是否匹配成功,在保证匹配准确度的情况下,能够减少匹配复杂度,有助于提高匹配速度。
应理解,上述关于汉明距离的计算公式只是示例性描述,本申请实施例并不限于此。
在执行上述指纹方法前,还可以先判断电子设备是否开启了指纹特征匹配优化功能。如果开启了指纹特征匹配优化功能,则执行上述指纹识别方法。在本申请实施例中,指纹特征匹配优化功能可默认开启。
本申请实施例的指纹特征匹配优化功能可以固化在终端中,无需用户手动开启,也可以提供选项供用户手动开启或关闭。本申请实施例还提供了指纹特征匹配优化功能的开关选项,可供用户选择开启或关闭指纹特征匹配优化功能。
可选地,所述方法还包括:显示第一界面,所述第一界面包括第一选项,所述第一选项用于选择开启或关闭指纹特征匹配优化功能。
第一界面是指纹设置界面。可以理解,本申请实施例对如何进入第一界面不作具体限定。比如,可以通过设置应用程序进入指纹设置界面。又比如,也可以通过关于指纹的应用程序进入指纹设置界面。
示例性地,可以在指纹设置界面中增加指纹特征匹配优化功能的开关选项(对应第一选项)。
图7是本申请实施例的一个界面示例图。如图7中(1)所示,用户点击设置801,进入设置界面,比如图7中(2)所示的界面。可以理解,图7中(1)所示的界面中还可以包含其他应用程序的图标,比如,应用1至应用7。
如图7中(2)所示,界面中包括生物设备和密码控件802。可以理解,图7中(2)所示的界面中还可以包含其他设置功能。比如,图7中(2)示出的应用设置、电池设置、存储设置、隐私设置等。
应理解,图7中(2)所示的设置选项只是部分设置功能的示例,本申请实施例并不限于此。还应理解,图7中(2)还示出了搜索设置项栏,用户可以在搜索设置项栏中快速搜索功能设置。
当用户点击生物设备和密码控件802时,进入图7中(3)所示的界面。如图7中(3)所示,界面中包括指纹设置控件803。
可选地,除了指纹设置控件803外,图7中(3)还可以包括人脸识别设置控件,锁屏密码的管理控件(包括更改锁屏密码和关闭锁屏密码),以及安全锁定设置控件,智能解锁控件。应理解,图7中(3)示出的生物识别和密码选项只是示例性说明,本申请实施例并不限于此。
当用户点击指纹设置控件803后,界面显示如图7中(4)所示。如图7中(4)所示,界面中包括指纹特征匹配优化选项804。用户可以点击指纹特征匹配优化804,以实现开启或关闭指纹模板更新功能。比如,图7中(4)示出的指纹特征匹配优化804是开启状态。
可选地,除了指纹特征匹配优化804,图7中(4)还可以包括指纹管理的其他控件。比如,图7中(4)中示出了指纹用途选项,包括:指纹用于解锁设备的选项、指纹用于访问应用锁的选项、指纹用于自动填充账户和密码的选项、指纹用于钱包快捷付款的选项。又比如,图7中(4)中示出了指纹列表管理选项,包括指纹1的管理控件、指纹2的管理控件、新建指纹选项、识别指纹选项。
应理解,图7中的应用场景仅仅是为了便于本领域技术人员理解,并非要将本申请实施例限于图7中的具体场景。
上文结合图1至图7,详细描述了本申请实施例提供的指纹识别方法。下面将结合图8详细描述本申请的装置实施例。应理解,本申请实施例的指纹识别装置可以执行前述本申请实施例的各种指纹识别的方法,即以下各种产品的具体工作过程,可以参考前述方法实施例中的对应过程。
图8是本申请实施例的指纹识别装置800的示意性框图。应理解,装置800可以执行图4至图7所示的指纹识别的方法。如图8所示,该指纹识别的装置800包括:采集单元810、处理单元820和匹配单元830。可选地,装置800还包括显示单元840。在一种可能的示例中,装置800可以是终端设备。
在一个示例中,所述采集单元810用于采集待验证指纹图像;
所述处理单元820用于基于所述待验证指纹图像确定第一特征向量,所述第一特征向量是利用第一正交矩阵对第二特征向量进行降维处理得到的,所述第二特征向量用于表征所述待验证指纹图像的特征;
所述匹配单元830用于基于第一特征向量和第三特征向量进行指纹匹配,所述第三特征向量是利用所述第一正交矩阵对第四特征向量进行降维处理得到的,所述第四特征向量用于表征第一指纹模板的特征,所述第三特征向量存储于指纹模板库中;
其中,所述第一正交矩阵包括多个向量,所述多个向量是基于预先采集的指纹特征点通过迭代计算生成的,所述多个向量中的每个向量能够将所述预先采集的指纹特征点划分为两部分。
可选地,作为一种实施例,所述匹配单元830用于基于第一特征向量和第三特征向量进行指纹匹配,具体包括:
基于所述第一特征向量与所述第三特征向量计算汉明距离;
在所述汉明距离小于第一距离阈值时,确定所述待验证指纹图像与所述第一指纹模板匹配成功。
可选地,作为一种实施例,所述汉明距离满足下式:
d=count(XOR(H1,H2))
其中,d表示汉明距离,count()表示统计非零个数的运算,XOR表示异或运算,H1表示所述第一特征向量,H2表示所述第三特征向量。
可选地,作为一种实施例,所述第一正交矩阵的按照以下方式获得:
初始化第一正交向量组,所述第一正交向量组为空;
生成第一随机向量,所述第一随机向量是n维向量;
判断所述第一随机向量与所述第一正交向量组中的向量是否正交;
在所述第一随机向量与所述第一正交向量组中的向量正交时,判断所述第一随机向量是否能将所述预先采集的指纹特征点划分为两部分;
在所述第一随机向量划分所述指纹特征点时,将所述第一随机向量添加至所述第一正交向量组;
判断所述第一正交向量组中包括的向量个数是否为n;
在所述第一正交向量组中的向量个数为n时,将所述第一正交向量组中的向量按行展开,获得所述第一正交矩阵,其中,所述第一正交矩阵包括n个行向量,所述第一正交矩阵的n个行向量互相正交。
可选地,作为一种实施例,所述第三特征向量采用以下方法获得:
将所述第一正交矩阵与所述第四特征向量的转置矩阵作乘运算,得到乘积;
将得到的所述乘积通过符号函数进行处理,获得第五特征向量;
将所述第五特征向量中的向量元素进行二进制转换处理,获得所述第三特征向量。
可选地,作为一种实施例,所述第三特征向量占用的字节数小于所述第四特征向量占用的字节数。
可选地,作为一种实施例,所述显示单元840用于:
显示第一界面,所述第一界面中包括第一选项,所述第一选项用于开启或关闭指纹匹配优化功能。
在一种可能的示例中,采集单元810可以通过指纹模组实现。处理单元820和匹配单元830可以通过处理器或处理单元实现。显示单元840可以通过屏幕实现。
应理解,上述装置800以功能单元的形式体现。这里的术语“单元”可以通过软件和/或硬件的形式实现,本申请实施例对此不作具体限定。
例如,“单元”可以是实现上述功能的软件程序、硬件电路或者二者结合。所述硬件电路可能包括(applicationspecificintegratedcircuit,ASIC)应用特定集成电路、电子电路、执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、集成逻辑电路,和/或其他可以提供上述功能的合适器件。在一个简单的实施例中,本领域的技术人员可以想到装置800可以采用图2所示的形式。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请还提供了一种计算机程序产品,该计算机程序产品被处理器执行时实现本申请中任一方法实施例所述的方法。
该计算机程序产品可以存储在存储器中,经过预处理、编译、汇编和链接等处理过程最终被转换为能够被处理器执行的可执行目标文件。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机执行时实现本申请中任一方法实施例所述的方法。该计算机程序可以是高级语言程序,也可以是可执行目标程序。
该计算机可读存储介质可以是易失性存储器或非易失性存储器,或者,可以同时包括易失性存储器和非易失性存储器。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器ROM、随机存取存储器RAM、磁碟或者光盘等各种可以存储程序代码的介质。
应理解,在本申请的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请的实施例的实施过程构成任何限定。
另外,本文中术语“系统”和“网络”在本文中常被可互换使用。本文中的术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。例如,A/B可以表示A或B。
本申请实施例中出现的术语(或者说编号)“第一”、“第二”、…等,仅用于描述目的,即只是为了区分不同的对象,比如,不同的“特征向量”等,并不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、…等的特征可以明示或者隐含地包括一个或者更多个特征。在本申请实施例的描述中,“至少一个(项)”是指一个或多个。“多个”的含义是两个或两个以上。“以下至少一个(项)”或其类似表达,是指这些项中的任意组合,包括单个(项)或复数个(项)的任意组合。
例如,本申请实施例中出现的类似于“项目包括如下中至少一种:A,B,以及C”表述的含义,如无特别说明,通常是指该项目可以为如下中任一个:A;B;C;A和B;A和C;B和C;A,B和C;A和A;A,A和A;A,A和B;A,A和C,A,B和B;A,C和C;B和B,B,B和B,B,B和C,C和C;C,C和C,以及其他A,B和C的组合。以上是以A,B和C共3个元素进行举例来说明该项目的可选用条目,当表达为“项目包括如下中至少一种:A,B,……,以及X”时,即表达中具有更多元素时,那么该项目可以适用的条目也可以按照前述规则获得。
总之,以上所述仅为本申请技术方案的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (9)

1.一种指纹识别的方法,其特征在于,所述方法应用于电子设备,所述方法包括:
采集待验证指纹图像;
基于所述待验证指纹图像确定第一特征向量,所述第一特征向量是利用第一正交矩阵对第二特征向量进行降维处理得到的,所述第二特征向量用于表征所述待验证指纹图像的特征;
基于第一特征向量和第三特征向量进行指纹匹配,所述第三特征向量是利用所述第一正交矩阵对第四特征向量进行降维处理得到的,所述第四特征向量用于表征第一指纹模板的特征,所述第三特征向量存储于指纹模板库中;
其中,所述第一正交矩阵包括多个向量,所述多个向量是基于预先采集的指纹特征点通过迭代计算生成的,所述多个向量中的每个向量能够将所述预先采集的指纹特征点划分为两部分;
所述第三特征向量采用以下方法获得:
将所述第一正交矩阵与所述第四特征向量的转置矩阵作乘运算,得到乘积;
将得到的所述乘积通过符号函数进行处理,获得第五特征向量;
将所述第五特征向量中的向量元素进行二进制转换处理,获得所述第三特征向量。
2.根据权利要求1所述的方法,其特征在于,所述基于第一特征向量和第三特征向量进行指纹匹配,包括:
基于所述第一特征向量与所述第三特征向量计算汉明距离;
在所述汉明距离小于第一距离阈值时,确定所述待验证指纹图像与所述第一指纹模板匹配成功。
3.根据权利要求2所述的方法,其特征在于,所述汉明距离满足下式:
d=count(XOR(H1,H2))
其中,d表示汉明距离,count()表示统计非零个数的运算,XOR表示异或运算,H1表示所述第一特征向量,H2表示所述第三特征向量。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述第一正交矩阵的按照以下方式获得:
初始化第一正交向量组,所述第一正交向量组为空;
生成第一随机向量,所述第一随机向量是n维向量;
判断所述第一随机向量与所述第一正交向量组中的向量是否正交;
在所述第一随机向量与所述第一正交向量组中的向量正交时,判断所述第一随机向量是否能将所述预先采集的指纹特征点划分为两部分;
在所述第一随机向量划分所述指纹特征点时,将所述第一随机向量添加至所述第一正交向量组;
判断所述第一正交向量组中包括的向量个数是否为n;
在所述第一正交向量组中的向量个数为n时,将所述第一正交向量组中的向量按行展开,获得所述第一正交矩阵,其中,所述第一正交矩阵包括n个行向量,所述第一正交矩阵的n个行向量互相正交。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述第三特征向量占用的字节数小于所述第四特征向量占用的字节数。
6.根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
显示第一界面,所述第一界面中包括第一选项,所述第一选项用于开启或关闭指纹匹配优化功能。
7.一种电子设备,其特征在于,包括处理器和存储器,所述处理器和所述存储器耦合,所述存储器用于存储计算机程序,当所述计算机程序被所述处理器执行时,使得所述电子设备执行权利要求1至6中任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被处理器执行时,使得所述处理器执行权利要求1至6中任一项所述的方法。
9.一种芯片,其特征在于,包括处理器,当所述处理器执行指令时,所述处理器执行如权利要求1至6中任一项所述的方法。
CN202210995240.4A 2022-08-18 2022-08-18 指纹识别的方法和装置 Active CN116311389B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202210995240.4A CN116311389B (zh) 2022-08-18 2022-08-18 指纹识别的方法和装置
EP23853960.5A EP4462389A1 (en) 2022-08-18 2023-05-05 Fingerprint recognition method and apparatus
PCT/CN2023/092233 WO2024037053A1 (zh) 2022-08-18 2023-05-05 指纹识别的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210995240.4A CN116311389B (zh) 2022-08-18 2022-08-18 指纹识别的方法和装置

Publications (2)

Publication Number Publication Date
CN116311389A CN116311389A (zh) 2023-06-23
CN116311389B true CN116311389B (zh) 2023-12-12

Family

ID=86794744

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210995240.4A Active CN116311389B (zh) 2022-08-18 2022-08-18 指纹识别的方法和装置

Country Status (3)

Country Link
EP (1) EP4462389A1 (zh)
CN (1) CN116311389B (zh)
WO (1) WO2024037053A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116311389B (zh) * 2022-08-18 2023-12-12 荣耀终端有限公司 指纹识别的方法和装置

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5170264A (en) * 1988-12-10 1992-12-08 Fuji Photo Film Co., Ltd. Compression coding device and expansion decoding device for a picture signal
US6707983B1 (en) * 1998-05-28 2004-03-16 Canon Kabushiki Kaisha Image processing apparatus and method, and storage medium capable of being read by a computer
CN104050483A (zh) * 2014-06-25 2014-09-17 北京大学 一种基于局部正交对齐的特征降维方法
KR20150074703A (ko) * 2013-12-24 2015-07-02 (주)에프씨아이 부동소수점 방식을 이용한 데이터 압축/복원 방법 및 장치
CN105027520A (zh) * 2013-01-16 2015-11-04 爱立信(中国)通信有限公司 针对无线电基站的复值ofdm数据压缩和解压缩
CN105335713A (zh) * 2015-10-28 2016-02-17 小米科技有限责任公司 指纹识别方法及装置
CN109886127A (zh) * 2019-01-23 2019-06-14 平安科技(深圳)有限公司 指纹识别方法及终端设备
CN110825904A (zh) * 2019-10-24 2020-02-21 腾讯科技(深圳)有限公司 一种图像匹配方法、装置、电子设备和存储介质
CN111062230A (zh) * 2018-10-16 2020-04-24 首都师范大学 一种性别识别模型训练方法和装置及性别识别方法和装置
CN111382867A (zh) * 2020-02-20 2020-07-07 华为技术有限公司 神经网络压缩的方法、数据处理的方法及相关装置
CN111738194A (zh) * 2020-06-29 2020-10-02 深圳力维智联技术有限公司 一种用于人脸图像相似性的评价方法和装置
CN113312946A (zh) * 2020-02-27 2021-08-27 敦泰电子(深圳)有限公司 指纹图像的特征提取方法、装置及计算机可读存储介质
CN114266729A (zh) * 2021-11-29 2022-04-01 厦门大学附属第一医院 一种基于机器学习的胸部肿瘤放疗后放射性肺炎预测方法和系统
CN114399796A (zh) * 2021-12-30 2022-04-26 深圳芯启航科技有限公司 一种指纹识别的方法、装置、终端及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003223433A (ja) * 2002-01-31 2003-08-08 Matsushita Electric Ind Co Ltd 直交変換方法、直交変換装置、符号化方法、符号化装置、逆直交変換方法、逆直交変換装置、復号化方法、及び、復号化装置
KR102168937B1 (ko) * 2018-05-31 2020-10-23 연세대학교 산학협력단 정규화된 지역구조에 의한 지문 영상의 이진화 벡터 변환 방법 및 이를 이용한 두 지문 영상간 동일여부를 판별하는 방법
CN109685029B (zh) * 2018-12-28 2023-07-11 东莞中国科学院云计算产业技术创新与育成中心 复杂空间结构的柔性物体识别方法、装置、设备和介质
CN110555380A (zh) * 2019-07-30 2019-12-10 浙江理工大学 基于Center Loss损失函数的指静脉识别方法
CN111931757A (zh) * 2020-10-19 2020-11-13 北京圣点云信息技术有限公司 基于mdlbp分块直方图和pca降维的指静脉快速排序方法及装置
CN116311389B (zh) * 2022-08-18 2023-12-12 荣耀终端有限公司 指纹识别的方法和装置

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5170264A (en) * 1988-12-10 1992-12-08 Fuji Photo Film Co., Ltd. Compression coding device and expansion decoding device for a picture signal
US6707983B1 (en) * 1998-05-28 2004-03-16 Canon Kabushiki Kaisha Image processing apparatus and method, and storage medium capable of being read by a computer
CN105027520A (zh) * 2013-01-16 2015-11-04 爱立信(中国)通信有限公司 针对无线电基站的复值ofdm数据压缩和解压缩
KR20150074703A (ko) * 2013-12-24 2015-07-02 (주)에프씨아이 부동소수점 방식을 이용한 데이터 압축/복원 방법 및 장치
CN104050483A (zh) * 2014-06-25 2014-09-17 北京大学 一种基于局部正交对齐的特征降维方法
CN105335713A (zh) * 2015-10-28 2016-02-17 小米科技有限责任公司 指纹识别方法及装置
CN111062230A (zh) * 2018-10-16 2020-04-24 首都师范大学 一种性别识别模型训练方法和装置及性别识别方法和装置
CN109886127A (zh) * 2019-01-23 2019-06-14 平安科技(深圳)有限公司 指纹识别方法及终端设备
CN110825904A (zh) * 2019-10-24 2020-02-21 腾讯科技(深圳)有限公司 一种图像匹配方法、装置、电子设备和存储介质
CN111382867A (zh) * 2020-02-20 2020-07-07 华为技术有限公司 神经网络压缩的方法、数据处理的方法及相关装置
CN113312946A (zh) * 2020-02-27 2021-08-27 敦泰电子(深圳)有限公司 指纹图像的特征提取方法、装置及计算机可读存储介质
CN111738194A (zh) * 2020-06-29 2020-10-02 深圳力维智联技术有限公司 一种用于人脸图像相似性的评价方法和装置
CN114266729A (zh) * 2021-11-29 2022-04-01 厦门大学附属第一医院 一种基于机器学习的胸部肿瘤放疗后放射性肺炎预测方法和系统
CN114399796A (zh) * 2021-12-30 2022-04-26 深圳芯启航科技有限公司 一种指纹识别的方法、装置、终端及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
孙铁利 ; 张妍 ; 李晓微 ; .文本挖掘中特征降维方法比较研究.电脑知识与技术.2008,(第02期), *
文本挖掘中特征降维方法比较研究;孙铁利;张妍;李晓微;;电脑知识与技术(第02期) *

Also Published As

Publication number Publication date
WO2024037053A1 (zh) 2024-02-22
EP4462389A1 (en) 2024-11-13
CN116311389A (zh) 2023-06-23

Similar Documents

Publication Publication Date Title
CN111738122B (zh) 图像处理的方法及相关装置
CN116311388B (zh) 指纹识别的方法和装置
KR20150059466A (ko) 전자장치에서 이미지 내의 특정 객체를 인식하기 위한 방법 및 장치
WO2021238373A1 (zh) 一种人脸注视解锁方法及电子设备
CN116048244B (zh) 一种注视点估计方法及相关设备
CN116152122B (zh) 图像处理方法和电子设备
CN111651742A (zh) 验证用户身份的方法、电子设备和系统
CN113946808A (zh) 界面显示方法、电子设备和计算机可读存储介质
CN115661912B (zh) 图像处理方法、模型训练方法、电子设备及可读存储介质
CN116311389B (zh) 指纹识别的方法和装置
CN114065312A (zh) 一种组件显示方法及电子设备
CN115623318B (zh) 对焦方法及相关装置
CN115580690B (zh) 图像处理的方法和电子设备
CN117148959B (zh) 眼动追踪的帧率调整方法及相关装置
CN117077703A (zh) 图像处理方法及电子设备
CN115880347B (zh) 图像处理方法、电子设备、存储介质及程序产品
CN116311395B (zh) 指纹识别的方法和装置
CN116311396B (zh) 用于指纹识别的方法和装置
CN113763517B (zh) 人脸表情编辑方法及电子设备
CN115495169A (zh) 数据获取、页面生成方法、装置、设备及可读存储介质
CN115083424A (zh) 人物分析系统、方法及相关装置
CN116978067A (zh) 指纹识别的方法和装置
CN117152022B (zh) 图像处理方法及电子设备
CN116978068A (zh) 指纹识别的方法和装置
CN116740777B (zh) 人脸质量检测模型的训练方法及其相关设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant