本發明涉及圖像處理、模式識別,計算機視覺等領域,特別涉及一種基于人臉屬性分析的人證合一身份驗證方法。
背景技術:
為了證明身份的需要,居民往往擁有身份證、護照、駕駛證、準考證和學生證等各種證件。于是,在火車站、海關口、考場、大型會展等場所,往往需要現場對通行人員的證件進行核查。目前,此類核查工作主要通過工作人員人工完成,整個驗證過程不但費時費力,而且其可靠性與工作人員的經驗、識別能力、工作時間和工作情緒等因素相關。因此,無法杜絕不法分子冒用他人證件的行為,存在安全隱患。例如,一些不法分子利用撿到或盜搶的身份證辦理信用卡、手機卡、登記等業務,給公民帶來了不必要的麻煩和經濟損失。由于相關業務辦理人員并沒有義務審核身份證是否冒用,或沒有時間,或審核不嚴格,或是為了業務量睜一只眼閉一只眼,甚至因內外勾結而不進行身份證件的冒用審核。因此,給不法分子創造了有利機會,加劇了身份證件主人“任人宰割”的局面。
在這種情勢下,出現了基于人臉識別技術的人證合一驗證方法。如申請號為200510029791.1,201110070277.8,201310099064.7,201510154396.X的專利文件公開了利用人臉識別技術進行二代身份證的人證合一驗證系統。他們主要通過提取第二代身份證芯片照片、表面照片和現場照片進行比對的方法實現了二代身份證中兩個環節(身份證本身真偽和冒用)的快速自動驗證。以上方法在進行身份證冒用驗證環節時都是基于人臉圖像鑒別技術,而在實際應用中,隨著時間年齡的變化,會使現場采集的人臉圖像與身份證件表面的人臉圖像發生較大變化,從而導致人臉鑒別的精度受到極大的影響。例如,將現場人臉和10年前身份證表面人臉進行比對,人的發型、膚色、皺紋和臉形等都會發生很大的變化,從而導致人臉鑒別技術的可靠性急劇下降。而目前大多數人臉鑒別方法,特別是以上專利所采用的人臉鑒別方法并不能克服人臉年齡變化所帶來的影響。使計算機自動進行人證一致性驗證的普及受到極大的阻力。
因此,目前亟待提出一種通過現場人臉圖像所呈現出的種族、性別、年齡和身份等信息進行人證一致性的身份驗證方法。
技術實現要素:
本發明的目的在于克服目前基于人臉識別的人證合一驗證方法的不足,提出一種基于人臉屬性分析的人證合一身份驗證方法,解決基于人臉比對驗證中的年齡變化問題和防止無人值守下打印證件表面人臉圖像欺騙攝像頭的行為的發生,為解決人證合一驗證提供一種行之有效的、可靠的算法和思路。
本發明的目的通過下述技術方案實現:
一種基于人臉屬性分析的人證合一身份驗證方法,包括下列步驟:
現場人臉圖像采集步驟,利用現場攝像頭抓拍持證者人臉,并利用人臉圖像質量評判技術從若干幅抓拍的人臉圖像中挑選出一幅質量最優的人臉圖像作為現場人臉圖像,記為F1;
證件信息采集識別或者讀取步驟,利用證件信息采集設備采集識別或者讀取身份證件中的信息;
人證合一驗證步驟,利用人臉屬性分析方法估計所述現場人臉圖像的種族、性別和年齡信息,然后根據采集識別或者讀取的身份證件信息,依次進行種族驗證、性別驗證、年齡驗證和人臉比對驗證,從而驗證人證是否合一。
進一步地,所述現場人臉圖像采集步驟中通過AdaBoost或者深度學習算法進行人臉檢測;然后利用人臉圖像質量評判技術從檢測到的若干幅人臉圖像中提取姿態正面、光照均勻、表情中性、清晰度高的質量最好的一幅人臉圖像作為現場人臉。
進一步地,所述證件信息包括:種族信息、性別信息、出生日期、證件辦理時間或/和證件表面人臉圖像。
進一步地,所述證件信息采集識別或者讀取步驟的具體過程為:
獲取證件種族和性別信息,記為R2和G2;
獲取證件年齡信息,首先獲取出生年份,并計算:現場年份—出生年份=持證者人臉應有的年齡,記為A1;然后,獲取證件的辦證時間,計算:辦證年份—出生年份=證件表面人臉圖像年齡,記為A2;
獲取證件表面人臉圖像,記為F2。
進一步地,所述證件信息通過專門的證件芯片讀取設備讀取或者通過圖像采集設備拍攝證件正反面進行圖像采集,然后通過字符識別技術OCR獲取。
進一步地,所述人證合一驗證步驟的具體過程為:
種族驗證與性別驗證子步驟,將所述現場人臉圖像估計出的種族和性別,記為R1和G1,與證件上的種族和性別,記為R2和G2,進行比對,如果一致,則轉入下一子步驟;否則,驗證失敗;
年齡驗證子步驟,將所述現場人臉圖像估計出來的年齡記為A’,與所述持證者人臉應有的年齡A1進行比對,如果誤差小于指定誤差容限,則轉入下一子步驟;否則,驗證失敗;
人臉比對驗證子步驟,將所述現場人臉圖像F1與所述證件表面人臉圖像F2進行人臉身份相似度判斷,如果其相似度大于指定判斷閥值,則驗證成功;否則,驗證失敗。
進一步地,所述年齡驗證子步驟還包括對所述現場人臉圖像估計出來的年齡A’進行修正的步驟,具體過程為:
利用所述人臉屬性分析方法估計對所述證件表面人臉圖像F2進行年齡估計得出A2’;
根據所述證件表面人臉圖像年齡A2與估計年齡A2’計算出年齡內在因素誤差Δ:A2—A2’=內在因素誤差Δ;
對所述現場人臉圖像估計出來的年齡A’進行修正:A=A’+Δ,A為修正后的現場人臉圖像年齡。
進一步地,所述人臉比對驗證子步驟的具體過程為:
當所述持證者人臉應有的年齡A1與所述證件表面人臉圖像年齡A2的年齡差距小于指定年齡間隔時,將所述現場人臉圖像F1與所述證件表面人臉圖像F2進行人臉身份相似度判斷,如果其相似度大于指定判斷閥值,則驗證成功;否則,驗證失敗;
當所述持證者人臉應有的年齡A1與所述證件表面人臉圖像年齡A2的年齡差距大于或等于指定年齡間隔時,
首先,利用人臉老化模型合成與持證者人臉應有的年齡段一致的虛擬人臉圖像,使用合成的虛擬人臉圖像與所述現場人臉圖像F1進行人臉相似度判斷,然后減低指定判斷閥值,如果其相似度大于減低后的指定判斷閥值,則驗證成功;否則,驗證失敗。
進一步地,所述人臉屬性分析方法為:
SA1、采用Gabor濾波器和局部二元模式的方法提取現場人臉圖像特征;
SA2、典型相關分析對人臉圖像特征降維與分析;
SA3、采用最近鄰聚類方法得出人臉圖像的種族、性別和年齡值。
進一步地,所述人臉屬性分析方法為:
SB1、采用深度學習的方法進行人臉屬性訓練與學習;
SB2、利用深度學習訓練得到的模型進行人臉特征提取與屬性分類;
SB3、獲取人臉圖像的種族、性別和年齡值。
本發明相對于現有技術具有如下的優點及效果:
(1)目前人證合一驗證方法大多只采用人臉身份信息進行驗證,而本發明同時利用了人臉的種族、性別、年齡和面部特征等信息,具有較高的可靠性和普及性。主要體現為:①通過種族和性別判別可以準確高效地排除很明顯的冒用情況。因為目前人臉的種族和性別識別技術比人臉識別技術的精度和效率要高得多。②利用年齡分析可以防止照片攻擊和提高人臉識別的精度。③通過種族、性別、年齡和面部特征的四重驗證提高了系統的可靠性。
(2)目前基于人臉圖像的人證合一驗證方法很難解決年齡變化所帶來的影響,可靠性并不高,因此普及性會受到影響。本發明通過相似度動態設計和年齡合成的方法可以解決人證合一驗證過程中的年齡變化問題。
(3)由于基因、生活方式、健康狀況等內在因素,導致年齡對于不同人有著不同的變化模式,影響最終的年齡估計準確率。為了提高年齡估計的準確性,本發明充分利用已知的證件表面人臉圖像和年齡的先驗信息,估計出此人的內在因素誤差。然后利用此誤差對現場人臉估計出的年齡進行修正得到更精確的年齡,解決人臉年齡估計內在因素干擾問題。
附圖說明
圖1是本發明公開的基于人臉屬性分析的人證合一身份驗證方法的流程步驟圖;
圖2(a)是人臉合成的輸入人臉圖像;
圖2(b)是人臉合成的輸出人臉圖像。
具體實施方式
為使本發明實現的技術手段、創作特征、達成目的與功效易于明白了解,以下參照附圖并舉實施例對本發明進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。
實施例一
本實施例提出一種基于人臉屬性分析的人證合一身份驗證方法,主要利用現場人臉所呈現的種族、性別、年齡和面部圖像信息與證件表面信息進行人證一致性判斷,不需要訪問公安系統數據庫。整個人證合一驗證方法包括三大步驟,如圖1所示:
步驟S1、現場人臉圖像采集。利用現場攝像頭抓拍若干幅持證者人臉圖像(示例性的,抓拍10幅圖像,但具體可以根據攝像頭的性能參數進行調整),并利用人臉圖像質量評判技術從若干幅抓拍的人臉圖像中挑選出一幅質量最好的人臉圖像作為現場人臉圖像。
步驟S2、證件信息采集。利用證件信息采集設備讀取證件信息,包括:1)種族信息;2)性別信息;3)出生日期(年齡信息);4)證件辦理時間;5)證件表面人臉圖像。
步驟S3、人證合一驗證。此步驟主要利用人臉屬性分析驗證人證合一情況,是本發明的重點與關鍵,主要包括以下內容:
S3.1、人臉種族和性別驗證。對攝像頭獲取的人臉進行圖像預處理、種族和性別特征提取和識別等操作獲取現場持證者的人臉種族和性別信息。并與證件上的種族和性別信息進行比對,如果一致,則進行下一步年齡驗證;如果不一致,則判定為冒用情況。
S3.2、人臉年齡驗證。對攝像頭獲取的人臉進行年齡特征提取和年齡估計等操作獲取現場持證者的人臉年齡。并與證件上根據出生日期推算出的年齡進行比對,如果相差小5,則進行下一步人臉比對驗證;否則,則判定為冒用情況。
證件上的年齡通過獲取到的證件上的出生日期推算得出,如,根據身份證上的出生日期來推算持證者當時的年齡。一般地,現場人臉與證件表面人臉拍攝時間相差都較大,新辦的證件(3年以內新辦的)除外。因此,可以利用這種人臉年齡差異信息防止無人值守場合不法分子利用打印證件表面人臉圖像欺騙攝像頭而通過人臉比對驗證環節。例如,假設持證者的身份證件是5年前辦的,如果不法分子利用打印的身份證件表面人臉圖像欺騙攝像頭,那么在年齡驗證步驟中就被攔截下來。因為此現場人臉圖像年齡與實際現場年齡不符,所以通不過驗證。
S3.3、人臉比對驗證。對攝像頭獲取的人臉圖像與證件表面人臉圖像進行人臉比對鑒別。人臉鑒別技術采用目前主流的深度學習或稀疏表示等先進方法。如果是同一人,則驗證通過;否則,則判定為冒用情況。由于人臉年齡變化會嚴重影響人臉鑒別的可靠性,為了克服年齡變化所帶來的影響,本發明從兩個方面解決此問題:
1)相似度動態設計策略。首先,通過獲取的證件辦理時間,計算出證件表面人臉圖像的年齡,作為A1。如,根據身份證背面的“有效期限”可以計算出身份證表面人臉圖像的年齡。然后,通過證件的出生日期,推算出現場人臉的年齡,作為A2。當A1與A2的差值大于10歲時,人臉已經發生了很大的變化,此時應該降低兩幅人臉圖像比對的相似度來降低誤判率。
2)人臉年齡合成策略。當A1與A2的差值大于10歲時,傳統的人臉鑒別算法的可靠性急劇下降。為了克服人臉老化的影響,本發明利用人臉老化模型合成不同年齡段的人臉圖像,使兩幅比對的人臉圖像屬于同一年齡段,減少了年齡的干擾。具體為:首先,對證件表面人臉圖像,利用人臉老化模型合成與現場人臉年齡段一致的虛擬人臉圖像。然后,使用合成的虛擬人臉圖像與現場人臉圖像進行比對。
實施例二
本實施例公開一種基于人臉屬性分析的人證合一身份驗證方法的另一具體實施方式,包括現場人臉圖像采集、證件信息采集和人證合一驗證三大步驟,如圖1所示。其中人證合一驗證包括種族與性別驗證,年齡驗證和人臉比對驗證等3個步驟。下面逐一對各步驟進行詳細說明:
步驟S1:現場人臉圖像采集
由圖像采集卡負責采集持證者現場人臉圖像。由于采集到的人臉圖像通常含有較多背景干擾,同時可能包括各種姿態、表情和光照變化的人臉圖像。因此,本發明通過AdaBoost或者深度學習算法進行人臉檢測,提取干凈的人臉圖像。利用人臉圖像質量評判技術,從眾多采集的人臉圖像中挑選出一幅質量最好的(姿態正面、光照均勻、表情中性、清晰度高)人臉圖像作為現場人臉圖像,記為F1。
步驟S2:證件信息采集
證件信息可以采用專門的證件芯片讀取設備采集。也可以采用圖像采集設備拍攝證件正反面,然后通過字符識別(OCR)技術獲取證件信息。由于本發明需要利用種族、性別、年齡和人臉圖像等信息,因此,證件信息采集包括如下三項:
1)獲取種族和性別信息。直接從證件的種族和性別欄獲取。
2)獲取證件年齡信息。首先從出生日期欄獲取出生年,并計算:現場年份—出生年份=持證者人臉應有的年齡,記為A1;然后,獲取證件的辦證時間,計算:辦證年份—出生年份=證件表面人臉圖像年齡,記為A2。
3)如果利用了證件芯片讀取設備,如,身份證芯片讀取設備,則直接提取芯片人臉圖像,記為F2。如果是利用圖像采集卡采集證件表面信息的方式,則利用AdaBoost人臉檢測技術提取證件表面人臉圖像,記為F2。
步驟S3:人證合一驗證
此部分主要包括種族與性別驗證、年齡驗證和人臉比對驗證三個子步驟。由于證件芯片或者證件表面上提供有種族、性別和年齡信息,因此,只需要對現場抓拍人臉進行種族、性別和年齡估計即可。本發明采用目前效果較好的人臉屬性分析方法。主要包括兩種1)采用Gabor濾波器+局部二元模式(LBP)的方法提取現場人臉圖像特征;然后,采用典型相關分析(CCA)對人臉圖像特征降維與分析;最后,采用最近鄰聚類方法得出人臉圖像的種族、性別和年齡值。2)采用深度學習的方法進行人臉屬性訓練與學習,利用深度學習訓練得到的模型進行人臉特征提取與屬性分類。目前存在許多人臉種族、性別和年齡估計的方法,但是每種方法只能估計其中一個。本發明方法采用的兩種方法可以同時估計出人臉種族、性別和年齡信息。
S3.1種族與性別驗證
將現場人臉圖像估計出的種族和性別,記為R1和G1,與證件上的種族和性別,記為R2和G2,進行比對。如果一致,則轉入下一步;否則,驗證失敗。
由于種族和性別估計較容易,目前的算法大多能達到95%以上的準確率。所以,通過種族和性別驗證可以高效地過濾掉很明顯的證件冒用情況。
S3.2年齡驗證
將根據現場人臉圖像估計出來的年齡記為A’,與持證者人臉應有的年齡A1進行比對。如果誤差小于5歲,則轉入下一步;否則,驗證失敗。
在實際應用中,年齡對于不同人有著不同的變化模式,如有的人看起來顯得年青(如林志穎),而有的人則顯得較老。這主要由基因、種族背景、健康狀況、生活方式、氣候條件等各種因素的影響而導致。為了克服不同因素影響而導致年齡估計不準確的問題,本發明充分利用已知的證件表面人臉圖像和年齡的先驗信息,估計出此人的各種因素影響導致的誤差。然后利用此誤差對現場人臉估計出的年齡A’進行修正得到更精確的年齡。具體為:首先,采用本發明的年齡估計方法對證件表面人臉圖像進行年齡估計得出A2’;然后,根據證件表面人臉年齡A2與估計年齡A2’計算出年齡內在因素Δ:A2—A2’=因素影響誤差Δ;最后,對現場人臉圖像年齡A’進行修正:A=A’+Δ,A為修正后的現場人臉圖像年齡,將修正后的年齡A作為新的現場人臉圖像估計年齡A’進行后繼步驟的計算。
S3.3人臉比對驗證
將現場人臉F1與證件人臉F2,進行人臉身份鑒別。如果其相似度大于某一閥值,則驗證成功;則否驗證失敗。本發明采用的人臉鑒別方法包括但不限于目前主流的人臉識別方法,如稀疏表示人臉識別方法和深度學習方法等。
在實用場景中,當現場人臉F1與證件人臉F2的年齡差距大于10歲時,傳統的人臉鑒別算法的可靠性急劇下降。為了克服人臉年齡變化影響,本發明利用人臉老化模型合成不同年齡段的人臉圖像,使兩幅比對的人臉圖像屬于同一年齡段,減少了年齡的干擾。具體為:如果F1與F2的年齡差距小于10歲,則采用傳統的人臉鑒別方法進行人臉比對驗證。如果F1與F2的年齡差距大于10歲,則首先,對身份證表面人臉圖像,利用人臉老化模型合成與現場人臉年齡段一致的虛擬人臉圖像,人臉圖像合成示例如圖2(a)和圖2(b)所示。其中,圖2(a)為輸入人臉圖像,其中黑點為利用ASM方法定位的人臉關鍵點,圖2(b)為合成的從4-34歲的人臉虛擬圖像。然后,使用合成的虛擬人臉圖像與現場人臉圖像進行人臉比對鑒別。最后,適當降低相似度閥值進行人臉比對驗證。
上述實施例為本發明較佳的實施方式,但本發明的實施方式并不受上述實施例的限制,其他的任何未背離本發明的精神實質與原理下所作的改變、修飾、替代、組合、簡化,均應為等效的置換方式,都包含在本發明的保護范圍之內。