以樣本為基礎的人臉超解析度方法與系統的製作方法
2023-10-18 00:19:04 5
專利名稱:以樣本為基礎的人臉超解析度方法與系統的製作方法
技術領域:
本發明關於一種以樣本為基礎(example-based)的人臉超解析度 (facehallucination)方法與系統。
背景技術:
人臉超解析度的技術可以有許多應用,例如安全監(surveillance)、人臉辨識 (face recognition) > Ali^ff IlJ (face expression estimation) % AIi¥ φ IlJ (face age estimation)等應用。人臉影像不同於一般的低解析度到高解析度影像問題,因為人臉有其結構性,且細節部分的一些錯誤可能會造成整張高解析度人臉變得不合理,例如當眼睛的形狀變成非橢圓形,或者是嘴部的形狀扭曲,對於整張影像而言,其錯誤率非常小,然而影響卻很大。基於人臉結構的特性,獨特的人臉超解析度技術便陸續被提出來。例如,美國專利號7,379,611的文獻中,公開一種影像超解析度方法,此方法系透過提取輸入低解析度影像中的原始草圖先驗(primal sketch priors)數據,來推斷對應於此低解析度輸入影像的高解析度細節。美國專利公開號2008/(^67525的文獻中,公開一種透過提取影像中的邊緣特徵(edge feature)來進行超解析度放大的方法。Wei Fan ^ A ^ Jf W ife i 「 Image Hallucination Using NeighborEmbedding over Visual Primitive Manifolds」 中,提出一種以學習為基礎(learning-based)的影像超解析度(image hallucination)方法,是透過提取影像中的原始特徵(primitive features),並利用多張訓練集中的原始特徵來組合出目標影像的高解析度的原始特徵。 Yueting Zhuang 等人公開的論文"LPHsuper-resolution and neighbor reconstruction for residue compensation」中,提出一種兩階段的人臉超解析度技術,是利用流形學習 (manifold learning)的特性,亦即每張輸入影像都可以在流形域有相似的分布,依此,透過計算低解析度影像,來修補(patch)流形域裡的線性組合係數,然後利用相同的線性組合係數與半徑式函數(radial basis function)來組合出高解析度影像,此技術利用流形學習來組合高解析度影像。Jeong-Seon Park 等人公開的論文"An example-based face ha 1 lucinationmethod for single-frame, low-resolution facial images,, 中, 提出一種以樣本為基礎的人臉超解析度方法,是利用主要成份分析(Principle ComponentsAnalysis,PCA),從低解析度影像來拆解與訓練為基底影像,並透過變形 (warping)來對齊人臉。如第一圖的範例流程所示,透過計算低解析度的基底影像的線性組合,並在高解析度的基底影像中用相同的組合來計算高解析度人臉。B. G.Vijay Kumar等人公開的論文"Face hallucination using OLPP andKernel Ridge Regression」中,提出一種人臉超解析度技術,是利用流形學習法中的正交局部性保存投影(Orthogonal Locality Preserving Projection,0LPP)方法,來對人臉影像的小片段進行降維的動作,在低維度空間利用機率模型估計出最大可能的高解析度的小片段。再利用核嶺回歸(KernelRidge Regression, KRR)的預測模型來修正重建的人臉影像。
發明內容
本發明的實施範例可提供一種以樣本為基礎的人臉超解析度方法與系統。在一實施範例中,所公開的是關於一種以樣本為基礎的人臉超解析度方法。此方法包含準備一個備有多張訓練影像的訓練資料庫,並取得一欲放大的低解析度人臉影像; 利用流形學習,將此訓練資料庫中此多張訓練影像Itrain與此低解析度人臉影像投影到同一流形域,其中,投影后的低解析度人臉影像以符號^表示,投影后的訓練影像以符號yteain 表示;從N張投影后的訓練影像yteain中,篩選出與κ最匹配的(best matching) 一訓練集; 以及透過對此訓練集與1進行基底分解,學習出一組基底影像,包括此訓練集的高低解析度原型臉與1的低解析度原型臉;以及利用此組基底影像來重建出此低解析度人臉影像的一高解析度人臉影像。其中此訓練集的高解析度原型臉與^的原型臉之間的差異符合一門檻值要求。在另一實施範例中,所公開的是關於一種以樣本為基礎的人臉超解析度系統。此系統包含一訓練資料庫,收集與儲存多張訓練影像;一投影模塊(projection module),接收此多張訓練影像,並透過一流形學習法求得一投影矩陣後,將此多張訓練影像與一輸入的低解析度人臉影像,投影到同一流形域,得到N張投影后的訓練影像ytrain與一投影后的低解析度人臉影像Yl ; —匹配模塊(matching module),從N張投影后的訓練影像yteain 中,篩選出k張與κ可匹配的一訓練集,k彡N;—基底分解模塊(basisdecomposition module),將此訓練集使用基底分解來萃取出一低解析度原型臉(low resolution prototype face)與此訓練集的一組高解析度原型臉,且此低解析度原型臉與此組高解析度原型臉之間的差異符合一門檻值要求;以及一人臉超解析度模塊(face hallucination module),將符合此門檻值要求的此低解析度原型臉與此組高解析度原型臉當成一組基底影像,來重建出該低解析度人臉影像的一高解析度人臉影像。請配合下列附圖、實施範例的詳細說明及權利要求,將上述及本發明的其它目的與優點詳述於後。
圖1是一範例流程圖,說明已知的一種以樣本為基礎的人臉超解析度方法。圖2是一範例示意圖,說明如何透過計算出的低解析度的人臉原型的組合參數, 來得到重建的高解析度人臉影像。圖3是一範例示意圖,說明一種以樣本為基礎的人臉超解析度方法,與所公開的某些實施範例一致。圖4是一範例流程圖,說明如何在流形域裡的訓練集合進行篩選,與所公開的某些實施範例一致。圖5是一曲線範例圖,說明篩選出的人臉影像ytrain的個數,亦即k值,與差異值的變化關係,與所公開的某些實施範例一致。圖6A與圖6B分別是投影到流形域上的低解析度影像的分布與高解析度影像的分布的範例示意圖,與所公開的某些實施範例一致。
圖7是一範例示意圖,說明一種以樣本為基礎的人臉超解析度系統,與所公開的某些實施範例一致。圖8是一範例示意圖,說明圖6的人臉超解析度系統可執行於一計算機系統中,與所公開的某些實施範例一致。圖9是一範例表格,提供人臉影像重建質量的客觀數據的比較,與所公開的某些實施範例一致。圖10是ー範例表格,提供五種不同技術的檢測率比較,與所公開的某些實施範例一致。主要組件符號說明310訓練資料庫312低解析度人臉影像yL投影后的低解析度人臉 ytrain投影后的訓練影像影像314流形學316可匹配的一訓練集318基底分解320人臉超解析度322高解析度人臉影像410從N個投影后的訓練影像中,篩選出k個與1最匹配的人臉影像ytrain的一新 訓練集420透過此新訓練集,使用基底分解來萃取出一低解析度原型臉&與一組高解析度原型臉430 遞增 k 值440將此低解析度原型臉Pl與此組高解析度原型臉當成一組基底影像700人臉超解析度系統 712訓練影像720投影模塊732具有k張訓練影像的一訓練集730匹配模塊740基底分解模塊750人臉超解析度模塊へ低解析度原型臉yL投影后的低解析度人臉Ph高解析度原型臉影像ytrain投影后的訓練影像800計算機系統810內存裝置820處理器
具體實施例方式在一般的空間域(spatial domain)中,不同人臉的差異常無法明確表示出來, 因此,在本發明中,將一人臉資料庫轉換到另ー個可以表示人臉差異的空間,亦即流形域。 本發明的實施範例透過流形學習的方法,將輸入影像與訓練資料庫中的人臉影像都投影 到流形域(manifold domain),並透過如基底分解,來篩選適合的人臉影像去建立原型臉 (prototype faces),再透過結合適當的組合參數與原型臉來得到高解析度的人臉影像。一般而言,重建的人臉影像R可以表示為I≌Pa = R,其中,I是原本輸入的人臉影像,P是原型臉(prototype face), a是重建係數(coefficients of reconstruction)。因此,透過計算出的低解析度的人臉原型的組合參數,例如權重(weightings),可以利用高解析度的人臉原型乘上相同的組合參數,就可以得到重建的高解析度人臉影像,如圖2的範例所示,原本輸入的低解析度人臉影像I等於M個低解析度的人臉原型的線性組合,其中,α工至ciM是其M個組合參數,則可以利用M個高解析度的人臉原型乘上相同的組合參數,即、至α Μ,來得到重建的高解析度人臉影像。這些組合參數的計算可用下列的一個範例式來求出a*= ((Pl)τ .Pl)-1. (Pl)t . Il其中,&是低解析度的原型臉,Il是低解析度的輸入的人臉影像。圖3是一範例示意圖,說明一種以樣本為基礎的人臉超解析度方法,與所公開的某些實施範例一致。圖3的範例中,首先,準備一訓練資料庫310,並取得一欲放大的低解析度人臉影像312。訓練資料庫310可收集訓練人臉影像,一般包含各式各樣的訓練影像 (comprehensive trainingimages)。然後,利用流形學習314,例如利用一種降維法得到一轉換矩陣A,將訓練資料庫310中N張訓練影像與低解析度人臉影像312投影到同一流形域,其中,投影后的低解析度人臉影像312以符號κ表示,投影后的訓練影像以符號yteain 表示。從N張投影后的訓練影像ytrain的集合中,篩選出與κ可匹配的一訓練集(training set) 316。利用基底分解(basisdec0mp0siti0n)318,來萃取出此訓練集的一組高解析度原型臉I3h和1的原型臉,直到學習出一組基底影像為止,其中此組高解析度原型臉與1的原型臉之間的差異符合一門檻值要求。然後,利用此組基底影像來重建出低解析度人臉影像312的一高解析度人臉影像322,亦即進行以樣本為基礎的人臉超解析度320。在訓練資料庫310中引入流形學習的技術,可從訓練資料庫310中學習出一個投影矩陣(projection matrix),此投影矩陣可將訓練資料庫310中的人臉影像投影到一流形域,使得不同人臉影像的差異可以明顯地表示出來。透過同一投影矩陣,也可以將輸入的低解析度人臉影像312投影到同一流形域。假設透過一流形學習法,例如降維算法 (dimensionality reductionalgorithm),得到了一投影矩陣A,則低解析度輸入影像投影到流形域的公式可以表示為A = ΑτΙρ透過任一流形學習算法求得一投影矩陣A,一般而言,此投影矩陣A的維度會遠小於訓練資料庫310中原始數據的維度,例如,高解析度人臉影像的維度是64X64 = 4096,而投影后的維度可能只選擇100。在備有N張投影后的訓練影像yteain的集合中,可利用一方法,例如k-NN算法,從中篩選出與K可匹配的一組{ytrain},例如從N張投影后的訓練影像中,找出k張與κ最相似的人臉影像ytrain。透過此k張最相似的人臉影像ytMin來求出一組基本影像。圖4是一範例流程圖,進一步說明如何在流形域裡的訓練集合進行篩選,與所公開的某些實施範例一致。圖4的範例中,從N張投影后的訓練影像中,篩選出K張與α最匹配的人臉影像yteain的一訓練集,如步驟410所示;K <N。然後,透過此訓練集,使用基底分解,例如主成份分析可用來作為一基底分解函數,來萃取出一低解析度原型臉與此訓練集的一組高解析度原型臉,如步驟420所示。當低解析度原型臉&與此組高解析度原型臉之間的差異小於一門檻值時,將此低解析度原型臉與此組高解析度原型臉當成一組基底影像,如步驟440所示。否則的話,遞增k值,即步驟430,後,重複步驟410至步驟420, 直到選出符合門檻值要求的一組高解析度原型臉為止。此組基底影像會隨著不同輸入低解析度影像而變化,也是重建低解析度人臉影像312的基底。由於輸入的低解析度人臉影像在合成之前,先對基底影像進行上述重新訓練的動作,因此,可避免在使用者輸入人臉影像與訓練資料庫中的人臉影像差異過大時,重建出不相似的人臉影像;也可避免因為人臉影像差異過大的問題而使得瑕疵出現在重建後的高解析度影像。也就是說,一旦從流形域裡人臉影像資料庫中挑選出適合的訓練人臉影像集合之後,可透過基底分解萃取出符合門檻值要求的一組原型臉,此組原型臉也就是用來作為之後要重建高解析度影像的基底影像。步驟410中,可使用一成本函數(cost function)來決定k值。此成本函數所決定的k值可使此訓練集的一組原型臉的線性組合與低解析度人臉影像312之間的差異為最小。如圖5的曲線範例所示,當k值等於330時,對一測試的低解析度人臉影像而言, 從N張(例如N = 400)投影后的訓練影像中,可篩選出330張與κ最匹配的人臉影像yteain 的一訓練集,此訓練集的一組原型臉的線性組合與此測試的低解析度人臉影像之間的差異為最小。圖5中,橫軸代表篩選出的人臉影像yteain的個數,亦即k值,縱軸代表上述的差異值。當取得一低解析度影像後,也可以先進行對齊、亮度平均化等前處理,之後利用投影后的訓練影像的集合,從中篩選出與此低解析度影像有匹配的人臉影像。再透過前述的組合參數計算,以及結合這些算出的參數與此組萃取出的基底影像,而重建出接近原本輸入的低解析度人臉影像的一個高解析度的人臉影像版本。此即為本發明的以樣本為基礎的超解析度的設計原理。此設計原理也可確保投影到流形域上的低解析度影像與高解析度影像的分布相似。圖6A與圖6B的範例分別是投影到流形域上的低解析度影像的分布與高解析度影像的分布,其中,只選擇投影后前兩個維度來觀察。可以看出圖6A與圖6B的範例有相似的分布。也就是說,訓練資料庫310中多張訓練影像被投影到流形域後的低解析度影像與高解析度影像的分布相似。承上述,圖7是一範例示意圖,說明一種以樣本為基礎的人臉超解析度系統,與所公開的某些實施範例一致。在圖7的範例中,人臉超解析度系統700可包含訓練資料庫310、 一投影模塊720、一匹配模塊730、一基底分解模塊740、以及一人臉超解析度模塊750。訓練資料庫310用來收集與儲存多張訓練影像712。投影模塊720接收來自訓練資料庫310中多張訓練影像712,並透過一流形學習,例如降維算法,求得的投影矩陣A後, 將多張訓練影像712與輸入的低解析度人臉影像312,投影到同一流形域,亦即得到投影后的訓練影像yteain與投影后的低解析度人臉影像^。匹配模塊730從N張投影后的訓練影像 yt_中,例如利用k-NN算法,篩選出與κ可匹配的具k張訓練影像的一訓練集732,k彡N。 基底分解模塊740使用基底分解來萃取出低解析度人臉影像312的一低解析度原型臉1\和此訓練集的一組高解析度原型臉IV當原型臉與此組高解析度原型臉之間的差異還未符合一門檻值要求時,基底分解模塊740遞增k值,並且匹配模塊730從N張投影后的訓練影像yt_中,根據此遞增k 值,重新篩選出另一訓練集,再透過基底分解模塊740來萃取出此另一訓練集的一組高解析度原型臉,直到此原型臉與最終的一組高解析度原型臉之間的差異符合此門檻值要求為止。人臉超解析度模塊750將原型臉&與符合此門檻值要求的最終的此組高解析度原型臉當成一組基底影像,來重建出低解析度人臉影像312的高解析度人臉影像322,例如透過結合適當的權重組合與此組基底影像來得到一高解析度的人臉影像。如圖8的範例所示,人臉超解析度系統700可執行於一計算機系統800中。計算機系統800至少包含一內存裝置810以及一處理器820。內存裝置810可用來實現訓練資料庫310。處理器820裡備有投影模塊720、匹配模塊730、基底分解模塊740、以及人臉超解析度模塊750。處理器820可接收輸入的低解析度人臉影像312,並讀取內存裝置810的訓練影像,以執行上述投影模塊720、匹配模塊730、基底分解模塊740、以及人臉超解析度模塊750的功能,並透過結合適當的參數組合,來產生低解析度人臉影像312的高解析度人臉影像322。利用本發明的實施範例,提供在人臉仿真加強的一實驗範例,此實驗範例中,訓練集包含483張人臉影像,人臉影像的高解析度與測試影像(測試影像1 4)的低解析度分別採用64X64與16X16。使用主成份分析作為一基底分解函數,共萃取出100張原型臉, 其中k-NN算法的k值可在100 483之間遞增並自動被決定。圖8的範例表格提供一個重建質量的客觀數據的比較。從圖9的客觀數據可以很明顯的發現,相較於三種已知技術, 本發明的實施範例皆能有效地改善人臉影像的重建質量。圖10是一範例表格,提供五種不同技術的檢測率比較(detection ratecomparison),與所公開的某些實施範例一致。其中,根據多線性主成份分析 (Multilinear PCA,MPCA)技術來執行人臉辨識;在訓練階段,有62張訓練影像,共有14項標的(subjects);在辨識階段,有12張影像,共有6項標的。圖10的範例中,以兩種比較方式,亦即僅移除可加性的高斯噪聲(additive Gaussian noise only)和以平均化濾波器來移除可力口性的高斯噪聲(additive Gaussian noise with averaging filtering),來比較這些不同技術的檢測率。從圖10的數據可以很明顯的發現,與四種已知技術相較,本發明的實施範例有高的檢測率。實施範例可從訓練資料庫中篩選有用的訓練集,當輸入影像與資料庫中的影像差異大時,不會嚴重改變流形域裡局部臉成份的分布(distribution of local face components)。綜上所述,本發明的實施範例提供一種以樣本為基礎的人臉超解析度方法與系統。本發明的實施範例利用流形學習並通過篩選出較匹配於輸入的低解析度人臉影像的訓練集,來迭代地(iteratively)改善重建時的基底影像。因此,可以同時在客觀與主觀上有效地加強一低解析度人臉影像的重建質量。與已知技術相較,本發明的實施範例可以重建出較接近原始人臉影像的重建高解析度版本,又可以避免因為人臉影像差異過大的問題而使得瑕疵出現在重建後的高解析度影像。以上所述僅為本發明的實施範例,當不能依此限定本發明實施的範圍。即大凡本發明權利要求所作的均等變化與修飾,皆應仍屬本發明專利涵蓋的範圍。
權利要求
1.一種以樣本為基礎的人臉超解析度方法,該方法包含準備一個備有多張訓練影像的訓練資料庫,並取得一欲放大的低解析度人臉影像;利用流形學習,將該訓練資料庫中該多張訓練影像與該低解析度人臉影像投影到同一流形域,其中,投影后的低解析度人臉影像以符號^表示,投影后的訓練影像以符號yteain 表示;以及從N張投影后的訓練影像yteain中,篩選出與ι可匹配的一訓練集,N <該多張訓練影像的個數;透過對該訓練集與ι進行基底分解,學習出一組基底影像,包括該訓練集的一組高低解析度原型臉與A的低解析度原型臉;以及利用該組基底影像來重建出該低解析度人臉影像的一高解析度人臉影像。
2.如權利要求1所述的人臉超解析度方法,其中該訓練集是在N張投影后的訓練影像 Ytrain中找出與投影后的低解析度人臉影像1最相似的k張人臉影像,k < N。
3.如權利要求1所述的人臉超解析度方法,其中該多張訓練影像與該低解析度人臉影像是利用一種降維算法投影到同一流形域。
4.如權利要求1所述的人臉超解析度方法,其中該訓練集的該組高解析度原型臉與1 的原型臉之間的差異符合一門檻值要求。
5.如權利要求1所述的人臉超解析度方法,其中該基底分解是採用主成份分析作為一基底分解函數,以萃取出該組基底影像。
6.如權利要求1所述的人臉超解析度方法,其中從N張投影后的訓練影像ytMin中,篩選出與ι可匹配的一訓練集,透過該訓練集學習出該基底影像,還包括從N張投影后的訓練影像yteain中,篩選出k張與χ最匹配的人臉影像yteain,k是一正整數,k彡N;透過該k張與ι最匹配的人臉影像ytrain,使用基底分解,來萃取出一低解析度原型臉與一組高解析度原型臉;以及當該低解析度原型臉與該組高解析度原型臉之間的差異符合一門檻值要求時,將該低解析度原型臉與該組高解析度原型臉當成該組基底影像,否則的話,遞增k值後,重複上述兩步驟,直到得出該組基底影像為止。
7.如權利要求6所述的人臉超解析度方法,該方法使用一成本函數來決定k值,該成本函數所決定的k值使該訓練集的一組原型臉的線性組合與該低解析度人臉影像之間的差異為最小。
8.一種以樣本為基礎的人臉超解析度系統,該系統包括一訓練資料庫,收集與儲存多張訓練人臉影像;一投影模塊,接收該多張訓練影像,並透過一流形學習法求得一投影矩陣後,將該多張訓練影像與一輸入的低解析度人臉影像,投影到同一流形域,得到N張投影后的訓練影像 Ytrain與一投影后的低解析度人臉影像1 ;一匹配模塊,從該N張投影后的訓練影像ytrain中,篩選出k張與K可匹配的一訓練集, k彡N ;一基底分解模塊,使用基底分解來萃取出一低解析度原型臉與該訓練集的一組高解析度原型臉,且該低解析度原型臉與該組高解析度原型臉之間的差異符合一門檻值要求;以及一人臉超解析度模塊,將符合該門檻值要求的該低解析度原型臉與該組高解析度原型臉當成一組基底影像,來重建出該低解析度人臉影像的一高解析度人臉影像。
9.如權利要求8所述的人臉超解析度系統,其中當該低解析度原型臉與該組高解析度原型臉之間的差異還未符合該門檻值要求時,該基底分解模塊遞增k值,並且該匹配模塊從N張投影后的訓練影像ytrain中,根據該遞增k值,重新篩選出另一訓練集,再透過該基底分解模塊來萃取出另一組高解析度原型臉,直到該低解析度原型臉與最終的一組高解析度原型臉之間的差異符合該檻門值要求為止。
10.如權利要求8所述的人臉超解析度系統,該人臉超解析度系統執行於一計算機系統中,該計算機系統至少包含一內存裝置,該內存裝置用來實現該訓練資料庫;以及一處理器,該處理器裡備有該投影模塊、該匹配模塊、該基底分解模塊、與該人臉超解析度模塊,且接收輸入的該低解析度人臉影像,並執行該投影模塊、該匹配模塊、該基底分解模塊、與該人臉超解析度模塊的功能,並且透過結合多個參數,來產生該低解析度人臉影像的該高解析度人臉影像。
11.如權利要求8所述的人臉超解析度系統,其中k值是自動被決定的。
12.如權利要求8所述的人臉超解析度系統,其中該多張訓練影像被投影到該同一流形域後的低解析度影像與高解析度影像的分布相似。
13.如權利要求8所述的人臉超解析度系統,其中該人臉超解析度模塊透過結合多個適當參數的組合與該組基底影像,來得到該高解析度人臉影像。
全文摘要
本發明公開了一種以樣本為基礎的人臉超解析度方法。該方法利用流形學習,將一訓練資料庫中多張訓練影像Itrain與一低解析度人臉影像投影到同一流形域,其中,投影后的低解析度人臉影像以符號yL表示,投影后的訓練影像以符號ytrain表示。然後,從N張投影后的訓練影像ytrain中,篩選出與yL最匹配的k張ytrain的一新訓練集,k≤N。再透過此新訓練集來學習出一組原型臉,並利用此組原型臉來重建此低解析度人臉影像的一高解析度人臉影像。
文檔編號G06T5/50GK102298775SQ20101021470
公開日2011年12月28日 申請日期2010年6月24日 優先權日2010年6月24日
發明者林嘉文, 許志仲 申請人:財團法人工業技術研究院