基于子空間嶺回歸的人臉畫像生成方法
【技術領域】
[0001] 本發明屬于圖像處理技術領域,特別涉及一種人臉畫像生成方法,可用于公共安 全領域中人臉檢索與識別。
【背景技術】
[0002] 在刑偵追捕中,公安部門備有公民照片數據庫,結合人臉識別技術用以確定犯罪 嫌疑人身份,但實際中一般較難獲得犯罪嫌疑人照片,但卻可以在畫家和目擊者的合作下 得到犯罪嫌疑人的素描畫像來進行后續人臉檢索和識別。由于畫像與普通人臉照片之間有 很大的差異,直接用傳統的人臉識別方法很難獲取得到滿意的識別效果。將公民照片數據 庫中的照片合為畫像能有效的減小他們紋理上的差距,進而提高識別率。
[0003] 目前,主流的人臉畫像生成方法主要分為三類:其一,基于子空間學習的方法;其 二,基于稀疏表示的方法;其三,基于貝葉斯學習的方法。
[0004] Q.Liu等人在文獻"Q.Liu,X.Tang,H.Jin,H.Lu,and S.Ma.A Nonlinear Approach for Face Sketch Synthesis and Recognition. In Proc. IEEE Int. Conference on Computer Vision,pp. 1005-1010,2005"中提出了一種基于局部線性嵌入的方法,通過將訓 練集和測試集中的人臉圖像分塊,對測試照片的每個圖像塊在訓練集中尋找它的K個相似 的照片近鄰塊,然后利用局部線性嵌入的思想計算照片近鄰塊的線性組合權值,并利用對 應的K個畫像近鄰塊和組合權值得到偽畫像塊并最終融合成偽畫像。該方法存在的不足之 處是,固定的近鄰個數導致合成圖像的模糊效果。
[0005] X.Gao等人在文獻"X.Gao,N.Wang,D.Tao,et al .Face Sketch-Photo Synthesis and Retrieval using Spares Representation. IEEE Transactions on Circuits Systems for Video Technology,2012,22(8): 1213-1226." 中提出了一種基于稀疏表不的 人臉畫像合成方法。該方法首先采用已有的畫像合成方法生成合成畫像的初始估計,然后 再利用稀疏表示的方法合成出合成畫像的細節信息,最后將初始估計和細節信息進行疊加 得到最后的合成畫像。該方法的缺陷是:合成畫像的質量絕大部分依賴于初始畫像合成方 法,初始畫像的合成與高頻信息的合成不在同一框架下進行。
[0006] X.Wang等人在文獻"X.Wang and X.Tang.Face Photo-Sketch Synthesis and Recognition. IEEE Transactions on Pattern Analysis and Machine Intelligence.31 (11) :1955-1967,2009"中提出了一種基于馬爾可夫網絡模型的方法,通過將訓練集和測試 集中的人臉圖像劃分成大小相同、互相重疊的局部塊,利用馬爾可夫網絡模型建立人臉照 片和人臉畫像之間的關系模型,通過對模型求解實現人臉畫像生成。該方法存在的不足之 處是,由于每個待合成照片塊最終只選擇一個訓練畫像塊進行畫像合成,導致塊效應嚴重 以及合成不出訓練畫像塊集合中不存在的畫像塊。
【發明內容】
[0007] 本發明的目的在于針對上述現有方法的不足,提出一種基于子空間嶺回歸的人臉 畫像生成方法,以提高生成的偽畫像的質量,并大幅度提升畫像生成的速度。
[0008] 實現本發明目的的技術方案包括如下步驟:
[0009] (1)從照片-畫像對集中取出Μ張照片組成訓練照片樣本集TP,并取出與訓練照片 樣本集^中的照片一一對應的Μ張畫像組成訓練畫像樣本集T s,將剩余照片-畫像對組成測 試樣本集,從測試樣本集中選取一張測試照片L,2 < Μ < U-1,U為照片-畫像對集中的照片-畫像對個數;
[0010] (2)將所有圖像劃分成相同大小及相同重疊程度的圖像塊,每張圖像劃分為N塊, 并組成塊集合:
[0011] (2a)將測試照片L劃分成相同大小及相同重疊程度的圖像塊并組成塊集合:
[0012] p={p、…,pJ,.",pN};
[0013] 其中,P表示測試照片塊集合,pi表示測試照片中的第j個照片塊,jel,…,N,N;
[0014] (2b)將訓練照片樣本集TP中的Μ張照片劃分成相同大小及相同重疊程度的圖像塊 并組成塊集合:
[0015]
[0016] 其中,R表示訓練照片樣本塊集合,表示第i張照片中的第j個照片塊,iel,…, M,jel,…,N;
[0017] (2c)將訓練畫像樣本集Ts中的Μ張畫像劃分成相同大小及相同重疊程度的圖像塊 并組成塊集合:
[0018]
[0019] 其中,Q表示訓練畫像樣本塊集合,(6/表示第i張畫像中的第j個畫像塊,i e 1,…, M,jel,…,N;
[0020] (3)將訓練照片樣本塊集合R與對應的畫像樣本塊集合Q劃分為多個子集:
[0021] 辦=他,…,Rk,...,Rc}
[0022] Qc={Qi,-",Qk,···,0〇}
[0023] 其中,Rc表示所有訓練照片樣本塊子集組成的集合,Rk表示每一個訓練照片樣本塊 子集,QC表示所有訓練畫像樣本塊子集組成的集合,Qk表示每一個訓練畫像樣本塊子集,k e 1,…,C,c為子集總個數;
[0024] (4)根據每一個訓練照片樣本塊子集Rk與對應的訓練畫像樣本塊子集Qk,按照下式 求解出映射每一對子集之間關系的系數矩陣wk,合并得到所有子集系數矩陣集合Wc = {wi,··· ,Wk,-"Wc}:
[0025] % = + 0.5/)-1
[0026] 其中,wk表示第k對訓練照片-畫像樣本塊子集之間的系數矩陣,if表示照片樣本 塊子集矩陣的轉置矩陣,I表示單位矩陣;
[0027] (5)將測試照片塊集合P中的測試照片塊劃分到不同的訓練照片-畫像樣本塊子集 對中:
[0028] pc={Pl,.",pk,.",pc};
[0029] 其中,Pc表示所有測試照片樣本塊子集組成的集合,Pk表示每一個測試照片樣本塊 子集;
[0030] (6)根據每一個測試照片樣本塊子集Pk以及其所在子集對應的系數矩陣w k,按照下 式求解出合成畫像塊子集Sk:
[0031] Sk=wkPk;
[0032] (7)將所有合成畫像塊子集Sk合并,得到合成畫像塊集合:
[0033] S={Sv,Sk,~,Sc};
[0034] 其中,Sk表示合成畫像塊集合中的第k個子集,kel,…,c,c為子集總個數;
[0035] (8)將合成畫像塊集合S中的N個合成畫像塊進行組合,得到與測試照片L對應的合 成畫像。
[0036] 本發明由于采用了分而治之的策略將照片-畫像塊分為若干子集,在不同子集內 使用簡單公式映射照片-畫像塊之間的線性關系并求得系數矩陣,因而能在生成高質量偽 畫像的同時大幅提升生成速度。
[0037] 以下面結合附圖,對本發明實現的步驟作進一步的詳細描述。
【附圖說明】
[0038]圖1為本發明的實現流程圖;
[0039]圖2為本發明與現有的兩種方法在CUHK student數據庫上生成的偽畫像的對比結 果圖。
【具體實施方式】
[0040]參照圖1,本發明實現的步驟如下:
[0041 ]步驟1,劃分訓練畫像樣本集、訓練照片樣本集和測試樣本集。
[0042] 從照片-畫像對集中取出Μ張照片組成訓練照片樣本集TP,并取出與訓練照片樣本 集ΤΡ*的照片一一對應的Μ張畫像組成訓練畫像樣本集T s,將剩余照片-畫像對組成測試樣 本集,從測試樣本集中選取一張測試照片L,2 < M < U-1,U為照片-畫像對集中的照片-畫像 對個數。
[0043] 步驟2,對訓練畫像樣本集中的畫像、訓練照片樣本集中的照片和測試照片進行圖 像塊劃分。
[0044] (2a)將測試照片L劃分成相同大小及相同重疊程度的圖像塊并組成塊集合:
[0045] Ρ={ρ1,···,ρ\···,ρΝ};
[0046] 其中,Ρ表示測試照片塊集合,f表示測試照片中的第j個照片塊,jel,…,Ν;
[0047] (2b)將訓練照片樣本集TP中的Μ張照片劃分成相同大小及相同重疊程度的圖像塊 并組成塊集合:
[0048]
[0049] 其中,R表示訓練照片樣本塊集合,表示第i張照片中的第j個照片塊,iel,…, M,jel,…,N;
[0050] (2c)將訓練畫像樣本集Ts中的Μ張畫像劃分成相同大小及相同重疊程度的圖像塊 并組成塊集合:
[0051]
[0052] 其中,Q表示訓練畫像樣本塊集合,表示第i張畫像中的第j個畫像塊,iel,…, M,jEl,.",N〇
[0053] 步驟3,將訓練照片樣本塊集合與訓練畫像樣本塊集合劃分為不同子集。
[0054] (3a)將訓練照片樣本塊集合R根據照片樣本塊所在照片中區域不同劃分到Rf、Rh兩 個子集內:
[0055]
[0056]
[0057] 其中,Rf表示位于面部區域的訓練照片樣本塊組成的塊集合,r/表示第i張照片中 面部區域的第f個照片塊,iel,…,M,fel,…,F,F為每張照片面部區域照片塊的總個數;
[0058] Rh表示位于頭發區域的訓練照片樣本塊組成的塊集合,rf表示第i張照片中頭發 區域的第h個照片塊,iel,…,M,hel,…,H,H為每張照片頭發區域照片塊的總個數;
[0059] (3b)使用已有的K均值聚類算法將頭發區域訓練照片樣本塊集合劃分到不同子 集:
[0060]
[0061 ]其中,表示所有頭發區域訓練照片樣本塊子集組成的集合,表示每一個頭 發區域訓練照片樣本塊子集,khei,…,Ch,Ch為頭發區域訓練照片樣本塊子集總個數;
[0062] (3c)根據位置不同將面部區域訓練照片樣本塊劃分到不同子集:
[0063]
[0064] 其中,:表示所有面部區域訓練照片樣本塊子集組成的集合,kfel,…,Cf,Cf* 面部區域訓練照片樣本塊子集總個數,i e 1,…,Μ;
[0065] (3d)將所有頭發區域訓練照片樣本塊子集與面部區域訓練照片樣本塊子集合并 得到總的訓練照片樣本塊子集集合:
[0066] Rc={Ri,---,Rk,---,Rc};
[0067] 其中,Rc表示所有訓練照片樣本塊子集組成的集合,Rk表示每一個訓練照片樣本塊 子集,k e 1,…,c,c為子集總個數;
[0068] (3e)將與訓練照片樣本塊--對應的訓練畫像樣本塊劃分到相同的子集,并構成 總的訓練畫像樣本塊子集集合:
[0069] Qc= {Qi, ·' ,Q