一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于图像特征点匹配的人脸识别方法和装置与流程

2022-11-14 12:42:15 来源:中国专利 TAG:


1.本发明涉及人脸识别技术领域,尤其是涉及一种基于图像特征点匹配的人脸识别方法和装置。


背景技术:

2.当前,随着智能、物联等前沿技术的迅速发展,智能时代已悄然到来,"刷脸"逐渐成为了新的风潮,"刷脸"办事正愈发常见。而特征点匹配则是人脸识别中非常重要的环节,它直接影响人脸特征的提取与识别的速度与准确度。在现实应用中,为了保证特征提取的准确性,会选用sift、surf等以准确率为优先的算法,这也导致了为了提高算法计算速度,不得不提升硬件性能。
3.综上所述,急需寻找一种准确性与实时性兼顾的特征点匹配算法来进行人脸识别。
4.现有技术一般利用orb(oriented fast and rotated brief)图像匹配算法进行人脸识别;orb图像匹配算法作为实时性图像特征匹配算法的代表,在实时性上满足算法实时性要求(即计算速度快),但其缺点也很明显:(1)orb特征描述符是通过随机选择特征点为中心,半径为r的邻域圆内的几组点对比较大小,并按位记录结果(汉明距离匹配算法),所以当图像出现尺度变化时,对应的邻域也会发生变化,导致特征描述符发生变化,从而导致失配。
5.(2)orb特征描述符本身不具备邻域的位置和空间信息,它只能描述以特征点为圆心,半径为r的邻域圆的像素信息,如果图像内部出现较多相似区域,会导致相似区域内的特征点其邻域内的像素信息基本一致。这时如果使用汉明距离匹配算法进行匹配,结果会因为相似区域无法分辨而出现较多的误匹配。


技术实现要素:

6.基于此,本发明的目的在于提供一种基于图像特征点匹配的人脸识别方法和装置,该技术能够提高人脸识别的准确度和速度。
7.第一方面,本发明实施例提供一种基于图像特征点匹配的人脸识别方法,所述方法包括:步骤s1:根据人脸的标准图像,确认标准图像的第一余弦相似度cosθ1、最优余弦相似度theta和标准数值范围;步骤s2:根据人脸的实时图像,确认实时图像的第二余弦相似度cosθ2;步骤s3:判断所述实时图像的第二余弦相似度cosθ2是否均不在标准数值范围内;步骤s4:若是,则实时图像与该标准图像匹配失败;步骤s5:若否,则计算在所述标准数值范围内的第二余弦相似度cosθ2对应的特征点的匹配相似度s;根据所述匹配相似度s,确定第三余弦相似度cosθ3;步骤s6:判断第三余弦相似度cosθ3是否在标准数值范围内;步骤s7:若是,则实时图像与该标准图像匹配成功;步骤s8:若否,则实时图像与该标准图像匹配失败。
8.进一步地,步骤s1包括:步骤s1-1:根据标准数据库中的标准图像,获取所述标准
图像的特征,得到多个特征点;根据所述特征点,确认特征点矩阵;步骤s1-2:随机抽取所述特征点矩阵中的n个特征点,计算所述n个特征点中的任意两个特征点之间的汉明距离,得到汉明距离值;根据所述汉明距离值,确定第一点对;步骤s1-3:根据所述第一点对中的每个特征点和预设的半径值,确认特征点对;根据所述特征点对,确认每个特征点的描述符;步骤s1-4:根据第一点对中的任意两个特征点的描述符,确认所述两个特征点之间的第一余弦相似度cosθ1;步骤s1-5:根据多个所述第一余弦相似度cosθ1,确定标准图像的最优余弦相似度theta和标准数值范围。
9.进一步地,步骤s1-1包括:步骤s1-1-1:预先将多张人脸的标准图像存储至标准数据库;步骤s1-1-2:从标准数据库的第一张标准图像的所有像素点中选取任意一个像素点k,以像素点k为圆心,以预设个数的像素点为半径,得到圆上预设个数的像素点;步骤s1-1-3:若有连续预设的个数的像素点的像素值与像素点k的像素值不同,则确认像素点k是标准图像中的一个特征点;步骤s1-1-4:依次遍历所述标准图像中的每个像素点,获取标准图像中所有的特征点,将所有特征点组合,得到特征点矩阵。
10.进一步地,步骤s1-2还包括:对于标准图像,若计算得到的特征点之间的汉明距离值等于预设的汉明阈值p,则对应的2个特征点视为匹配成功,匹配成功的点对命名为第一点对;对于实时图像,若计算得到的特征点之间的汉明距离值在预设的汉明阈值范围内,则对应的2个特征点视为匹配成功,匹配成功的点对命名为第一点对。
11.进一步地,步骤s1-3包括:步骤s1-3-1:以所述第一点对中任意一个特征点为圆心,以预设的半径值r为半径,每个特征点能得到多组特征点对;步骤s1-3-2:分别依次比较所述多组特征点对中的像素值的大小,得到描述符m。
12.进一步地,步骤s1-5包括:步骤s1-5-1:将任意两个cosθ1作差,得到第一差值,将得到所有第一差值存于第一数组;步骤s1-5-2:将所述第一数组中出现频率最高的数值作为最优余弦相似度theta;步骤s1-5-3:修正所述最优余弦相似度theta,得到标准数值范围。
13.进一步地,步骤s5包括:步骤s5-1:将在所述标准数值范围p-q内的所有的第二余弦相似度cosθ2对应的特征点存于相似特征点矩阵中;步骤s5-2:计算相似特征点矩阵中的特征点的任意两个特征点之间的匹配相似度s;步骤s5-3:取s值中最大的值作为最优匹配相似度smax,得到smax对应的2个最优特征点α、β;步骤s5-4:计算特征点α、β之间的第三余弦相似度cosθ3。
14.进一步地,计算第一余弦相似度cosθ1的步骤为:;m1和m2分别为2个特征点的描述符。
15.进一步地,计算两个特征点之间的匹配相似度s的步骤为:;其中,m、n为预设的权重值;h1为预设的特征点的描述符的长度;hi为第i个特征点
的特征向量的二进制描述符的长度;cosθi为第i个特征点的特征向量与预设的特征点的特征向量之间的余弦相似度;theta为最优余弦相似度。
16.第二方面,本发明实施例提供一种基于图像特征点匹配的人脸识别装置,所述装置包括:标准数据确定模块,用于根据人脸的标准图像,确认标准图像的第一余弦相似度cosθ1、最优余弦相似度theta和标准数值范围;实时数据确定模块,用于根据人脸的实时图像,确认实时图像的第二余弦相似度cosθ2;第一判断模块,用于判断所述实时图像的第二余弦相似度cosθ2是否均不在标准数值范围内;第一结果输出模块,用于若是,则实时图像与该标准图像匹配失败;第三相似度计算模块,用于计算在所述标准数值范围内的第二余弦相似度cosθ2对应的特征点的匹配相似度s;根据所述匹配相似度s,确定第三余弦相似度cosθ3;第二判断模块,判断第三余弦相似度cosθ3是否在标准数值范围内;第二结果输出模块,用于若是,则实时图像与该标准图像匹配成功;第三结果输出模块,用于若否,则实时图像与该标准图像匹配失败。
17.本发明实施例的有益效果如下:本技术用汉明距离反映向量在数值特征上的差异,用余弦相似度算法反映向量在方向特征上的差异,用两种算法结合来提高匹配性能,从而得到计算速度更快、识别精度更高的人脸识别方法。
18.本发明的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本发明的上述技术即可得知。
19.为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施方式,并配合所附附图,作详细说明如下。
附图说明
20.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
21.图1为本发明实施例提供的一种人脸识别方法流程图;图2为范例图片1-范例图片3的的算法匹配结果示意图;图3为不同算法的结果示意图。
具体实施方式
22.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
23.因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
24.当前,随着智能、物联等前沿技术的迅速发展,智能时代已悄然到来,"刷脸"逐渐成为了新的风潮,"刷脸"办事正愈发常见。而特征点匹配则是人脸识别中非常重要的环节,它直接影响人脸特征的提取与识别的速度与准确度。在现实应用中,为了保证特征提取的准确性,会选用sift、surf等以准确率为优先的算法,这也导致了为了提高算法计算速度,不得不提升硬件性能。
25.综上所述,急需寻找一种准确性与实时性兼顾的特征点匹配算法来进行人脸识别。
26.现有技术一般利用orb(oriented fast and rotated brief)图像匹配算法进行人脸识别;orb图像匹配算法,作为实时性图像特征匹配算法的代表,在实时性上满足算法实时性要求(即计算速度快),但其缺点也很明显:(1)orb特征描述符是通过随机选择特征点为中心,半径为r的邻域圆内的几组点对比较大小,并按位记录结果(汉明距离匹配算法),所以当图像出现尺度变化时,对应的邻域也会发生变化,导致特征描述符发生变化,从而导致失配。
27.(2)orb特征描述符本身不具备邻域的位置和空间信息,它只能描述以特征点为圆心,半径为r的邻域圆的像素信息,如果图像内部出现较多相似区域,会导致相似区域内的特征点其邻域内的像素信息基本一致。这时如果使用汉明距离匹配算法进行匹配,结果会因为相似区域无法分辨而出现较多的误匹配。
28.现有的汉明距离匹配算法会导致较高误差的匹配率。为了保证匹配率以及匹配精度,本技术提出汉明距离匹配算法和余弦相似度算法相结合的方法,即一种改进的orb图像匹配算法来进行人脸识别,具体来说是:用汉明距离反映向量在数值特征上的差异,用余弦相似度算法反映向量在方向特征上的差异,用两种算法处理后的结果再进行特征点匹配,然后采用ransac(random sample consensus,随机抽样一致)方法消除误匹配,来提高匹配性能,从而得到计算速度更快、识别精度更高的人脸识别方法。
29.实施例一本发明提供一种基于图像特征点匹配的人脸识别方法,即利用改进orb图像匹配算法的一种人脸识别方法,该人脸识别方法包括如下内容:本技术的目的是将实时采集的人脸图像依次与标准数据库中的多张标准图像依次进行对比,以确认是否能比对成功。本实施例描述的是将实时图像与标准数据库中的第一张标准图像(或者说任意一张标准图像)对比的过程。本实施例中的标准图像指的均为标准数据库中预存的第一张标准图像。
30.如图1所示,上述人脸识别方法包括:步骤s1:根据人脸的标准图像,确认标准图像的第一余弦相似度cosθ1、最优余弦相似度theta和标准数值范围;步骤s2:根据人脸的实时图像,确认实时图像的第二余弦相似度cosθ2;步骤s3:判断所述实时图像的第二余弦相似度cosθ2是否均不在标准数值范围内;步骤s4:若是,则实时图像与该标准图像匹配失败;步骤s5:若否,则计算在所述标准数值范围内的第二余弦相似度cosθ2对应的特征点的匹配相似度s;根据所述匹配相似度s,确定第三余弦相似度cosθ3;步骤s6:判断第三余弦相似度cosθ3是否在标准数值范围内;
步骤s7:若是,则实时图像与该标准图像匹配成功;步骤s8:若否,则实时图像与该标准图像匹配失败。
31.本实施例提供的人脸识别方法能提高匹配性能,从而得到计算速度更快、识别精度更高的人脸识别结果。
32.实施例二本实施例将具体描述实施例一中所述的人脸识别方法。
33.步骤s1:根据人脸的标准图像,确认标准图像的第一余弦相似度cosθ1、最优余弦相似度theta和标准数值范围。
34.步骤s1-1:根据标准数据库中的标准图像,获取所述标准图像的特征,得到多个特征点;根据所述特征点,确认特征点矩阵。
35.具体地,上述标准数据库中预先存储有多张人脸的标准图像,标准图像即为彩色照片,大小包括960*1280像素。具体地,获取标准图像的特征的步骤是通过现有的orb匹配算法得到的。
36.具体地,步骤s1-1包括:步骤s1-1-1:预先将多张人脸的标准图像存储至标准数据库。
37.步骤s1-1-2:从标准数据库的第一张标准图像的960*1280像素点中选取任意一个像素点k,以像素点k为圆心,以预设个数的(比如3个)像素点为半径,得到圆上预设个数的(比如16个)像素点。
38.步骤s1-1-3:若有连续预设的个数的(比如12个)像素点的像素值与像素点k的像素值不同,则确认像素点k是标准图像中的一个特征点。
39.步骤s1-1-4:依次遍历所述标准图像中的每个像素点,获取标准图像中所有的特征点,将所有特征点组合,得到特征点矩阵。
40.具体地,设特征点矩阵共包括g*j个特征点。
41.步骤s1-2:随机抽取所述特征点矩阵中的n个特征点,计算所述n个特征点中的任意两个特征点之间的汉明距离,得到汉明距离值;根据所述汉明距离值,确定第一点对。
42.具体地,在此能得到个汉明距离值。设在此得到的第一点对的组数为l。
43.再具体地,步骤s1-2还包括:若计算得到的汉明距离值等于预设的汉明阈值p,则对应的2个特征点视为匹配成功,则命名为第一点对,设共得到l组第一点对,即2l个特征点;反之,则为匹配失败,命名为第二点对,设共得到t组第二点对,即2t个特征点;在此,2l 2t=n。
44.具体地,此步骤s不重复计算2个特征点之间的汉明距离值。比如,在此,共有6个特征点,分别为a、b、c、a、b、c,比如若已计算得到a和b之间的汉明距离值等于p,则不再计算a、b与其他特征点之间的汉明距离。将a和b作为一组第一点对。
45.步骤s1-3:根据所述第一点对中的每个特征点和预设的半径值,确认特征点对;根据所述特征点对,确认每个特征点的描述符。
46.具体地,步骤s1-3包括:步骤s1-3-1:以所述第一点对中任意一个特征点为圆心,以预设的半径值r为半径,每个特征点能得到多组特征点对。
47.具体地,设共能得到e组特征点对,比如定义为a-a、b-b、c-c、d-d......共e组。
48.步骤s1-3-2:分别依次比较所述多组特征点对(即e组)中的像素值的大小(即分别比较a-a、b-b、c-c、d-d的大小),得到描述符m。
49.具体地,比如,若a>a,m中的第一个值=1;反之=0;如此,能得到描述符m,比如得到的描述符m为(1,1,0,1,0,0,1),在此,m中有e个数,能得到2l个描述符m。
50.步骤s1-4:根据第一点对中的任意两个特征点的描述符,确认所述两个特征点之间的第一余弦相似度cosθ1。
51.具体地,在此能得到多个cosθ1,因为是将2l个特征点的任意两个进行计算的。
52.具体地,在此没有点对的概念了,此步骤是计算的2l个特征点的任意两个特征点之间的余弦值。
53.具体地,余弦相似度算法是用余弦值来度量向量空间中两个向量之间的差异大小,与汉明距离匹配算法相比,余弦相似度算法更关注两个向量在方向上的差异,而不是距离或长度上的差异。余弦相似度算法是最常用的相似函数之一,其计算公式如公式(1)所示:;其中,m1、m2分别为2l个特征点的任意两个描述符,cosθ1为余弦相似度,又称为余弦值,范围为[-1,1]。余弦值越大,表示两个特征点向量之间的角度越小。余弦值越小,则两个向量之间的角度越大。
[0054]
余弦值可以用来评估几何中两个矢量之间的方向差。本技术采用这一原理来度量特征点的特征向量之间的差异,能够得到更加精确的识别结果。
[0055]
步骤s1-5:根据多个所述第一余弦相似度cosθ1,确定标准图像的最优余弦相似度theta和标准数值范围。
[0056]
具体地,此步骤是根据多个cosθ1,得到标准数值范围p-q的,这是标准图像对应的范围,相当于一种阈值。
[0057]
步骤s1-5-1:将任意两个cosθ1作差,得到第一差值,将得到所有第一差值存于第一数组。
[0058]
步骤s1-5-2:将所述第一数组中出现频率最高的数值作为最优余弦相似度theta。
[0059]
步骤s1-5-3:修正所述最优余弦相似度theta,得到标准数值范围。
[0060]
具体地,根据实验经验,考虑实际情况中机器误差等其他外界因素,用[theta-0.3,theta 0.3]作为阈值范围,将此阈值范围定义为标准数值范围p-q,此为修正过程。具体使用过程中,修正值不拘泥于0.3,可根据需求设置此值。
[0061]
步骤s2:根据人脸的实时图像,确认实时图像的第二余弦相似度cosθ2。
[0062]
具体地,与cosθ1的个数相同,cosθ2的个数也是多个。
[0063]
具体地,计算实时图像的余弦相似度cosθ2几乎是重复步骤s1-1到步骤s1-4,唯一不同点是:对于步骤s1-2,若实时图像的特征点之间的汉明距离值在0-v,则将这两个特征点作为第一点对,则视为匹配成功,设能得到l组第一点对。在此,v=p j,p为步骤s2中预设的汉明阈值,j为自由度,j这是为了增大第一点对的数量,从而得到更多数据进行对比,提高匹配准确度。
sampleconsensus,随机抽样一致)方法消除误匹配,来提高匹配性能,从而得到计算速度更快、识别精度更高的人脸识别方法。
[0082]
余弦值可以用来评估几何中两个矢量之间的方向差。本技术采用这一原理来度量特征点的特征向量之间的差异,能够得到更加精确的识别结果。
[0083]
通过权重m、n的设置来计算相似度,这一选择降低了汉明距离在特征匹配中的权重,更重视图像之间存在的空间角度变化,以空间角度变化这一大方向为主导来进行特征点的匹配工作,能使得图像识别更加准确。
[0084]
以下所有内容为实验数据,以证明本技术的人脸识别算法的精确度高于原有算法的精确度。
[0085]
选择三组图片分别用原始orb算法与改进后的orb算法进行特征点匹配实验,并将结果用ransac算法消除误匹配。此实验应用系统环境是win7系统,cpu处理速度为3.7ghz,软件使用的是vs2013软件,三组实验中图像匹配的参数设定如表1所示:表1三组实验图像匹配参数表改进orb算法的参数设定如表2所示。
[0086]
表2改进orb算法参数设定表从图2(第一行第一列的小图为范例图片1的orb算法匹配结果示意图;第一行第二列的小图为范例图片1改进orb算法匹配结果示意图;第二行第一列的小图为范例图片2的orb算法匹配结果示意图;第二行第二列的小图为范例图片2改进orb算法匹配结果示意图;第三行第一列的小图为范例图片3的orb算法匹配结果示意图;第三行第二列的小图为范例图片3改进orb算法匹配结果示意图)的三组图片的原始orb算法与改进orb算法匹配结果看,改进后的算法的特征点对多于原始算法,降低了ransac剔除误匹配后的特征,保持了匹
配精度。实验结果数据对比如表3所示。
[0087]
表3综合实验结果在第一组实验中,改进orb算法的粗匹配成功率较原orb算法提高了2%,误匹配率下降了28.4%,第二组实验中粗匹配成功率较原orb算法提高了2.25%,误匹配率下降了29.8%,第三组实验中粗匹配成功率较原orb算法提高了2.55%,误匹配率下降了31.8%;改进算法误匹配率仅为原算法的20%左右,降低了原算法误匹配率近80%。
[0088]
上述三组实验证明了改进orb算法在降低误匹配率上的可行性。而其中粗匹配率提高是因为降低了对汉明距离的阈值要求,更加注重两个特征向量的余弦相似度的相似性,使得有些原本应该被距离相似度剔除掉的特征点又有了成功匹配的机会。
[0089]
以下为改进orb算法的对比分析将对一张拥有相似内部区域的图片进行尺度、旋转、平移变化,将变化后的图片与原图片分别用sift、surf、orb、改进的orb四种算法进行特征点匹配实验,分析改进后的orb算法的鲁棒性。匹配结果对比图如图3(第一行第一列的小图为sift算法示意图;第一行第二列的小图为surf算法示意图;第二行第一列的小图为orb算法示意图;第二行第二列的小图为改进orb算法示意图)所示,匹配结果数据统计分析表如表4。
[0090]
表4四种算法匹配结果数据统计分析表
从旋转变化图片的匹配结果中可以看出sift算法获得最多的匹配点,但是时间耗时最久;surf算法在效率方面是sift的近4倍;orb算法特征点数量最少,但匹配速度却是sift的20多倍。本技术提出的改进orb算法,通过余弦相似度进行匹配,在抗旋转性能上效果显著,是原算法匹配点对数的2.39倍,匹配精度明显提高,而且匹配耗时相对较少。
[0091]
通过上述对比实验,可以证明本技术提出的改进orb算法,通过加入余弦相似度匹配与汉明距离匹配相结合,将图像存在多区域时原orb算法的误匹配率降低,且随着匹配特征点数目的增加,降低的百分比也会随之增加。
[0092]
实施例三本发明提供一种基于图像特征点匹配的人脸识别装置,所述装置包括:标准数据确定模块,用于根据人脸的标准图像,确认标准图像的第一余弦相似度cosθ1、最优余弦相似度theta和标准数值范围;实时数据确定模块,用于根据人脸的实时图像,确认实时图像的第二余弦相似度cosθ2;第一判断模块,用于判断所述实时图像的第二余弦相似度cosθ2是否均不在标准数值范围内;第一结果输出模块,用于若是,则实时图像与该标准图像匹配失败;第三相似度计算模块,用于计算在所述标准数值范围内的第二余弦相似度cosθ2对应的特征点的匹配相似度s;根据所述匹配相似度s,确定第三余弦相似度cosθ3;第二判断模块,判断第三余弦相似度cosθ3是否在标准数值范围内;第二结果输出模块,用于若是,则实时图像与该标准图像匹配成功;第三结果输出模块,用于若否,则实时图像与该标准图像匹配失败。
[0093]
本发明实施例所提供的基于图像特征点匹配的人脸识别装置,其实现原理及产生的技术效果和前述的基于图像特征点匹配的人脸识别方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
[0094]
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献