一種檢測(cè)圖片中人眼虹膜的方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于人眼檢測(cè)技術(shù)領(lǐng)域,特別是涉及一種檢測(cè)圖片中人眼虹膜的方法及系 統(tǒng)。
【背景技術(shù)】
[0002] 近年來(lái),隨著手機(jī)前置攝像頭和后置攝像頭的進(jìn)步,所拍攝的圖像越來(lái)越清晰,從 而獲得的眼睛圖像也越來(lái)越好,研發(fā)人員可以通過(guò)終端獲得眼睛圖像進(jìn)行許多工作:從安 全角度來(lái)說(shuō)現(xiàn)在指紋解鎖應(yīng)用較廣,但通過(guò)虹膜解鎖比指紋的安全系數(shù)高很多;從簡(jiǎn)化使 用手機(jī)習(xí)慣的角度來(lái)首,也可以寫(xiě)一個(gè)APP,通過(guò)虹膜中的瞳孔移動(dòng)方向來(lái)控制手機(jī)翻頁(yè) 等;從美化照片的角度來(lái)說(shuō),可以美化虹膜照片,達(dá)到佩戴美瞳的效果,或者增大眼睛顯得 更為有神。而以上一系列操作都有一個(gè)前提,那就是首先要準(zhǔn)確的檢測(cè)出虹膜的圓心和半 徑。
[0003]目前檢測(cè)虹膜或瞳孔的方法有基于的圓周差分法與的圓周 霍夫變換檢測(cè)。以上方法,均要求采樣照片像素較高,需要專(zhuān)門(mén)的拍攝一起;無(wú)法排除睫毛 和眼皮等干擾;并且傳統(tǒng)的搜索圓心方法,搜索范圍極大,需要對(duì)圖像中每一個(gè)點(diǎn),計(jì)算以 該點(diǎn)為中心的一系列不同半徑的圓周,然后統(tǒng)計(jì)每個(gè)半徑圓周的分?jǐn)?shù),檢測(cè)速度較慢。
【發(fā)明內(nèi)容】
[0004] 為了解決上述問(wèn)題,本發(fā)明提出了一種檢測(cè)圖片中人眼虹膜的方法及系統(tǒng),能夠 精確定位眼睛虹膜的圓心位置和半徑,能夠較好的排除睫毛和眼皮等干擾,大大加快了檢 測(cè)速度。
[0005] 為達(dá)到上述目的,本發(fā)明采用的技術(shù)方案是:一種檢測(cè)圖片中人眼虹膜的方法,包 括步驟: (1)利用客戶端攝像頭獲取眼部圖像;(2)將所述眼部圖像轉(zhuǎn)化為灰度圖像;(3)對(duì)所 述灰度圖像進(jìn)行濾波計(jì)算和矩形塊灰度值統(tǒng)計(jì),獲得虹膜的估計(jì)圓心及估計(jì)半徑;(4)根 據(jù)所述估計(jì)圓心和估計(jì)半徑,利用漸進(jìn)步長(zhǎng)重置圓心的方法迭代求解,獲得虹膜的精確圓 心和精確半徑;(5)將虹膜的精確圓心和精確半徑發(fā)送至客戶端。
[0006] 進(jìn)一步的是,所述步驟(1)中,所述眼部圖像的獲取方法為,通過(guò)機(jī)器學(xué)習(xí)檢測(cè)人 臉獲得檢測(cè)人臉的關(guān)鍵點(diǎn),提取眼部關(guān)鍵點(diǎn)構(gòu)成眼部圖像;或者通過(guò)用戶交互,點(diǎn)擊屏幕獲 得眼部圖像。
[0007] 進(jìn)一步的是,所述步驟(2)中,所述眼部圖像為義最圖像,利用輕圖像中的 R、G和B三個(gè)通道的值將眼部圖像轉(zhuǎn)化為灰度圖像。
[0008] 進(jìn)一步的是,所述步驟(3)中,所述濾波計(jì)算包括步驟:在所述灰度圖像中設(shè)定一 行像素中的某個(gè)像素為中心;找出所述中心水平方向附近的像素;計(jì)算所述中心和所述附 近像素的灰度值;將灰度值由小到大排序;用最大或者次大的灰度值替換所述中心的灰度 值。通過(guò)濾波計(jì)算能夠有效減少眼睫毛和眼線等對(duì)虹膜定位檢測(cè)的影響。
[0009] 進(jìn)一步的是,所述步驟(3)中,所述矩形塊灰度值統(tǒng)計(jì)包括步驟:在所述灰度圖像 中創(chuàng)建水平矩形塊;從左到右移動(dòng)所述水平矩形塊,每移動(dòng)一個(gè)像素時(shí)統(tǒng)計(jì)水平矩形塊內(nèi) 的所有像素灰度值之和以及水平矩形塊的中心位置;找出灰度值之和最小的水平矩形塊, 將其中心位置作為瞳孔的水平位置;創(chuàng)建豎直矩形塊,將所述豎直矩形塊在所述水平位置 那一列的像素上豎直滑動(dòng),每移動(dòng)一個(gè)像素時(shí)統(tǒng)計(jì)豎直矩形塊內(nèi)的所有像素灰度值之和以 及豎直矩形塊的中心位置;找出灰度值之和最小的豎直矩形塊,將其中心位置作為瞳孔的 豎直位置;統(tǒng)計(jì)所述水平位置那一列像素的灰度值形成灰度直方圖;將所述灰度直方圖的 谷底對(duì)應(yīng)的灰度值乘以預(yù)定系數(shù)得到對(duì)比閾值;統(tǒng)計(jì)所述水平位置那一列像素中灰度值小 于所述對(duì)比閾值的像素;將所統(tǒng)計(jì)像素的個(gè)數(shù)除以2,得到估計(jì)的瞳孔半徑;所述瞳孔的水 平位置和豎直位置作為虹膜的估計(jì)圓心,所述瞳孔半徑作為虹膜的估計(jì)半徑。
[0010] 進(jìn)一步的是,所述水平矩形框高度為眼部圖像高度,寬度為眼部圖像寬度的四分 之一;所述豎直矩形框高度為眼部圖像高度的四分之一,寬度為眼部圖像寬度;所述系數(shù) 取值為1. 4。
[0011] 進(jìn)一步的是,所述步驟(4)中,漸進(jìn)步長(zhǎng)重置圓心的方法迭代求解,包括步驟:先 將所述估計(jì)圓心作為初始圓心,并求出所述初始圓心的評(píng)分與對(duì)應(yīng)半徑;然后以所述初始 圓心為中心,根據(jù)漸進(jìn)步長(zhǎng)搜索其周?chē)幌盗悬c(diǎn)的評(píng)分與對(duì)應(yīng)半徑;若某個(gè)點(diǎn)的評(píng)分超過(guò) 初始圓心的評(píng)分,就將該點(diǎn)作為新的中心;對(duì)新的中心依然以漸進(jìn)步長(zhǎng)搜索其周?chē)幌盗?點(diǎn)的評(píng)分與對(duì)應(yīng)半徑,進(jìn)行新一輪的迭代;迭代后,若全部點(diǎn)的評(píng)分均小于中心的評(píng)分,則 將該中心作為精確圓心,并且將該中心的對(duì)應(yīng)半徑作為精確半徑。進(jìn)一步的是,所述評(píng)分 方法包括步驟:設(shè)定初始半徑,根據(jù)所述中心統(tǒng)計(jì)部分圓周上的灰度值之和;之后將所述 灰度值之和除以部分圓周上的像素個(gè)數(shù),獲得圓周平均灰度值;從初始半徑開(kāi)始遞增至某 一半徑,形成半徑序列;求半徑序列中所有半徑對(duì)應(yīng)的圓周平均灰度值,獲得平均灰度值序 列;將所述平均灰度值序列中的后一個(gè)值減去前一個(gè)值,得到新序列,所述新序列中每一個(gè) 值,都代表對(duì)應(yīng)半徑的分?jǐn)?shù);找出所述新序列中的最高分?jǐn)?shù)作為該中心的評(píng)分,最高分?jǐn)?shù)對(duì) 應(yīng)的半徑作為該中心的最佳對(duì)應(yīng)半徑。在計(jì)算每一個(gè)圓心的評(píng)分只考慮部分圓周,能夠很 好排除眼睫毛遮擋虹膜,眼皮遮擋虹膜的情況。
[0012] 進(jìn)一步的是,對(duì)中心以漸進(jìn)步長(zhǎng)搜索其周?chē)幌盗悬c(diǎn)的評(píng)分的方法包括步驟: (a) 計(jì)算中心評(píng)分,作為初始評(píng)分; (b) 計(jì)算與中心相隔2像素的八鄰域評(píng)分;取所述八鄰域評(píng)分中的最大值與所述初始 評(píng)分比較,若最大值大于初始評(píng)分,那么將最大值所對(duì)應(yīng)的點(diǎn)作為新的中心返回步驟(a), 否則繼續(xù); (c) 計(jì)算與中心相隔4像素的八鄰域評(píng)分;取所述八鄰域評(píng)分中的最大值與所述初始 評(píng)分比較,若最大值大于初始評(píng)分,那么將最大值所對(duì)應(yīng)的點(diǎn)作為新的中心返回步驟(a), 否則繼續(xù); (d) 計(jì)算與中心相隔6像素的八鄰域評(píng)分;取所述八鄰域評(píng)分中的最大值與所述初始 評(píng)分比較,若最大值大于初始評(píng)分,那么將最大值所對(duì)應(yīng)的點(diǎn)作為新的中心返回步驟(a), 否則繼續(xù); (e) 計(jì)算與中心相隔8像素的八鄰域評(píng)分;取所述八鄰域評(píng)分中的最大值與所述初始 評(píng)分比較,若最大值大于初始評(píng)分,那么將最大值所對(duì)應(yīng)的點(diǎn)作為新的中心返回步驟(a), 否則繼續(xù); (f)假如上述所有點(diǎn)的評(píng)分均小于初始評(píng)分,那么將迭代出的中心為精確圓心,并且將 該中心的最佳半徑作為精確半徑。
[0013] 另一方面,本發(fā)明還提供了一種檢測(cè)圖片中人眼虹膜的系統(tǒng),包括圖像獲取模 塊、圖像轉(zhuǎn)化模塊、估計(jì)計(jì)算模塊、精確計(jì)算模塊和輸出模塊; 所述圖像獲取模塊,利用客戶端攝像頭獲取眼部圖像; 所述圖像轉(zhuǎn)化模塊,將所述眼部圖像轉(zhuǎn)化為灰度圖像; 所述估計(jì)計(jì)算模塊,對(duì)所述灰度圖像進(jìn)行濾波計(jì)算和矩形塊灰度值統(tǒng)計(jì),獲得虹膜的 估計(jì)圓心及估計(jì)半徑; 所述精確計(jì)算模塊,根據(jù)所述估計(jì)圓心和估計(jì)半徑,利用漸進(jìn)步長(zhǎng)重置圓心的方法迭 代求解虹膜的精確圓心和精確半徑; 所述輸出模塊,將虹膜的精確圓心和精確半徑發(fā)送至客戶端。
[0014] 采用本技術(shù)方案的有益效果: 本發(fā)明所提出的一種檢測(cè)圖片中人眼虹膜的方法,通過(guò)先濾波,再統(tǒng)計(jì)矩形塊的灰度 值的方式來(lái)計(jì)算虹膜的估計(jì)圓心和估計(jì)半徑,能夠較好的排除睫毛等給虹膜檢測(cè)帶來(lái)的干 擾影響;利用漸進(jìn)步長(zhǎng)重置圓心的方法迭代求解時(shí),通過(guò)增大與中心點(diǎn)的距離,進(jìn)行迭代搜 索并計(jì)算評(píng)分,凡是出現(xiàn)更優(yōu)值則用該值重新初始化,大大加快了檢測(cè)速度。本發(fā)明所提出 一種檢測(cè)圖片中人眼虹膜的系統(tǒng),能夠配合本發(fā)明所提出的方法實(shí)現(xiàn)該方法的應(yīng)用。
【附圖說(shuō)明】
[0015] 圖1為本發(fā)明的一種檢測(cè)圖片中人眼虹膜的方法流程圖; 圖2為本發(fā)明實(shí)施例中人眼圖像灰度等級(jí)示意圖; 圖3為本發(fā)明實(shí)施例中濾波計(jì)算的流程圖; 圖4為本發(fā)明實(shí)施例中矩形塊灰度值統(tǒng)計(jì)的流程圖; 圖5為本發(fā)明實(shí)施例中漸進(jìn)步長(zhǎng)重置圓心的方法迭代求解的流程圖; 圖6為本發(fā)明實(shí)施例中評(píng)分方法的流程圖; 圖7為本發(fā)明實(shí)施例中多個(gè)八鄰域漸進(jìn)步長(zhǎng)迭代搜索的評(píng)分方法流程圖; 圖8為本發(fā)明實(shí)施例中虹膜精確定位迭代搜索的順序示意圖; 圖9為本發(fā)明的一種檢測(cè)圖片中人眼虹膜系統(tǒng)的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0016] 為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一 步闡述。
[0017] 在本實(shí)施例中,參見(jiàn)圖1所示,本發(fā)明提出了一種檢測(cè)圖片中人眼虹膜的方法,包 括步驟: (1)利用客戶端攝像頭獲取眼部圖像。
[0018] 所述眼部圖像的獲取方法為,通過(guò)機(jī)器學(xué)習(xí)檢測(cè)人臉獲得檢測(cè)人臉的關(guān)鍵點(diǎn),提 取眼部關(guān)鍵點(diǎn)構(gòu)成眼部圖像。
[0019] 所述眼部圖像的獲取方法還可為,通過(guò)用戶交互,點(diǎn)擊屏幕獲得眼部圖像。
[0020] (2)將所述眼部圖像轉(zhuǎn)化為灰度圖像。
[0021] 所述眼部圖像為RGB圖像,利用RGB圖像中的R、G和B三個(gè)通道的值將眼部圖像 轉(zhuǎn)化為灰度圖像。
當(dāng)前第1頁(yè)
1 
2 
3