本發(fā)明屬于計算機視覺領(lǐng)域,具體設(shè)計一種通過機器學(xué)習(xí)來預(yù)測多人臉視頻顯著性的方法,并基于檢測到的視頻顯著性,提出了一種基于hevc(highefficiencyvideocoding)視頻壓縮方法。
背景技術(shù):
有研究表明,當(dāng)人們觀看一片較大范圍的場景時,他們通常將關(guān)注點集中在一塊小的區(qū)域,該區(qū)域被稱為顯著性區(qū)域。而其他區(qū)域受到較少的關(guān)注,被稱之為邊緣區(qū)域。因此,視覺關(guān)注度是人類視覺系統(tǒng)處理龐大數(shù)據(jù)量的一個顯著能力。顯著性檢測是一種針對圖像或者視頻有效預(yù)測人類可能的視覺關(guān)注區(qū)域的方法。近年來,顯著性檢測被廣泛運用于物體檢測,圖像重定向,視覺質(zhì)量評估以及視頻編碼。
另外,本發(fā)明發(fā)現(xiàn),視頻中如果出現(xiàn)人臉,則人臉區(qū)域是整個視頻尤為顯著并受極大關(guān)注的區(qū)域。統(tǒng)計得到,在含人臉視頻中,人臉區(qū)域的像素個數(shù)僅占整個畫面的21%,然而卻吸引了95%的關(guān)注度。并且,在多人臉視頻中,關(guān)注點往往集中在其中某個人臉上。因此,研究多人臉視頻的顯著性具有不可忽略的意義。盡管現(xiàn)已有很多顯著性檢測方法,但是關(guān)于多人臉視頻的顯著性檢測方法卻十分稀少,并且考慮到視頻多幀相關(guān)性以及受關(guān)注人臉狀態(tài)轉(zhuǎn)移的機器學(xué)習(xí)方法幾乎不存在。
另一方面,隨著近年來多媒體通信的快速發(fā)展,視頻分辨率及傳輸流量也迅速增加。然而,網(wǎng)絡(luò)帶寬并不能完全承受如此龐大的傳輸流量。因此,在視頻編碼過程中,需要更大程度地減少冗余,提高效率。通常,視頻的輸出是人眼,所以在視頻壓縮編碼過程中,需要以最小感知失真為優(yōu)化目標(biāo)。
技術(shù)實現(xiàn)要素:
本發(fā)明針對目前并不完善的顯著性檢測方法提出一種基于自定義的機器學(xué)習(xí)方法——多隱馬爾科夫模型(multiplehiddenmarkovmodel,m-hmm)的多人臉顯著性檢測方法,并提出一種基于多人臉視頻顯著性的hevc壓縮編碼方法。
本發(fā)明提供了一種多人臉顯著性檢測方法,實現(xiàn)步驟如下:
步驟一、建立包含視覺關(guān)注點分布的多人臉視頻數(shù)據(jù)庫,檢測數(shù)據(jù)庫中視頻中的人臉并提取臉部特征。
步驟二、建立并訓(xùn)練多隱馬爾科夫模型,包括:
(1)統(tǒng)計每個人臉在每一幀落入的關(guān)注點百分比,用該關(guān)注點百分比判斷人臉顯著性變化,該關(guān)注點百分比“增加”、“減少”及“不變”分別代表人臉的顯著性變化增加、減少和保持不變;
(2)建立多隱馬爾科夫模型,具體是:設(shè)同一時刻總共有n個隱藏狀態(tài),其中第n個隱藏狀態(tài)代表該時刻第n個人臉的顯著性變化,其中第t幀第n個隱藏狀態(tài)
(3)通過最大似然估計算法,學(xué)習(xí)得到m-hmm的隱藏狀態(tài)轉(zhuǎn)移矩陣和觀測狀態(tài)轉(zhuǎn)移矩陣。
(4)利用訓(xùn)練得到的m-hmm預(yù)測每個人臉受關(guān)注度的變化,預(yù)測得到最終的顯著性圖譜。
本發(fā)明基于提出的多人臉顯著性檢測方法,還提供了一種視頻編碼方法,利用本發(fā)明預(yù)測得到的顯著性圖譜進一步指導(dǎo)視頻編碼過程中的碼率分配,來提升視頻的主觀質(zhì)量。所述視頻編碼方法嵌入在高效率視頻編碼標(biāo)準(zhǔn)hevc的r-λ碼率控制模型上,首先定義每權(quán)重比特bpw,根據(jù)預(yù)測的顯著性圖譜計算每一個編碼單元ctu的平均bpw,然后將bpw代替每像素比特bpp來計算編碼需要的量化參數(shù)qp,最后將視頻的每一幀通過hevc進行編碼。
本發(fā)明的優(yōu)點和積極效果在于:
(1)本發(fā)明基于多人臉視頻顯著性的hevc壓縮編碼方法,建立了一個龐大的視覺顯著性視頻數(shù)據(jù)庫,為后續(xù)研究提供幫助。
(2)本發(fā)明基于多人臉視頻顯著性的hevc壓縮編碼方法,提出了一種檢測多人臉視頻顯著性的方法,在進行預(yù)測時采用m-hmm模型,通過實驗證明顯著性檢測結(jié)果性能好。
(3)本發(fā)明基于多人臉視頻顯著性的hevc壓縮編碼方法,根據(jù)預(yù)測到的多人臉顯著性圖譜來指導(dǎo)視頻編碼過程中的碼率分配,在資源有限的情況下有效地提升了壓縮后視頻的主觀質(zhì)量。
附圖說明
圖1為本發(fā)明實現(xiàn)多人臉顯著性檢測及進行視頻壓縮的總體流程圖;
圖2為本發(fā)明實施例建立數(shù)據(jù)庫采用的不同視頻種類示例圖;
圖3為本發(fā)明使用的說話檢測框架示意圖;
圖4為嘴唇邊緣寬高示意圖;
圖5為hmm結(jié)構(gòu)圖;
圖6為m-hmm結(jié)構(gòu)圖;
圖7為同一視頻多幀顯著性圖譜展示;
圖8為不同視頻顯著性圖譜展示;
圖9為本發(fā)明基于顯著性檢測的視頻編碼方案框圖;
圖10為本發(fā)明的視頻壓縮方案結(jié)果圖示;(a)為傳統(tǒng)hevc方案,(b)為本發(fā)明方案。
具體實施方式
下面結(jié)合附圖與具體實例對本發(fā)明的技術(shù)方案作進一步的詳細(xì)說明。
本發(fā)明提供的一種基于多人臉視頻顯著性的hevc壓縮編碼方法,包括視覺顯著性數(shù)據(jù)庫的建立、顯著性檢測模型的構(gòu)建、通過實驗對本發(fā)明有效性的檢驗、基于所檢測到的顯著性圖譜建立本發(fā)明的視頻壓縮編碼方法。
首先,通過眼球追蹤實驗,建立一個對多人臉視頻的視覺關(guān)注點分布的數(shù)據(jù)庫,并自動檢測圖像中的人臉并提取臉部特征。然后,將關(guān)注點數(shù)據(jù)和提取到的臉部特征進行預(yù)處理,使之轉(zhuǎn)換成合適m-hmm的形式。
接著,定義并構(gòu)建顯著性檢測模型,由多通道構(gòu)成:說話、轉(zhuǎn)頭、正\側(cè)臉、顏色、對比度、方向。其中,前三個屬于高維人臉特征通道,需要由學(xué)習(xí)得到的m-hmm預(yù)測,后三者屬于低維圖像特征通道,可由現(xiàn)有顯著性預(yù)測算法gbvs模型得到。同時,對顯著性檢測的技術(shù)效果進行評估與分析。
最后,利用預(yù)測得到的視頻顯著性圖譜,對傳統(tǒng)hevc視頻壓縮編碼的碼率分配部分進行進一步的指導(dǎo),以達到有限比特數(shù)的情況下盡可能提升視頻主觀質(zhì)量的目標(biāo)。
本發(fā)明基于多人臉視頻顯著性的hevc壓縮編碼方法,整體步驟如圖1所示。步驟一和二實現(xiàn)了多人臉顯著性檢測方法,步驟三基于上兩步驟進行視頻壓縮。
步驟一、建立數(shù)據(jù)庫。
步驟101、通過眼球追蹤實驗,記錄觀測者在自由觀看模式下對多人臉視頻的關(guān)注點,建立包含視覺關(guān)注點分布的多人臉視頻數(shù)據(jù)庫。
本發(fā)明實施例,數(shù)據(jù)庫中包含65個多人臉視頻,并且是由3名志愿者在獨立的環(huán)境下分別在youtube網(wǎng)站和優(yōu)酷網(wǎng)站上隨機挑選出來。該65個視頻:(1)分辨率均為1280×720;(2)時長均在20秒左右;(3)包含人臉個數(shù)從1人到27人不等;(4)在眼球追蹤實驗播放時均由h.264壓縮得到;(4)種類分為7類:電視劇\電影(12個)、群體采訪(12個)、個人采訪(8個)、視頻會議(6個)、綜藝節(jié)目(7個)、音樂視頻\脫口秀(10個)、小組討論(10個),具體見圖2及表1。
表1本發(fā)明數(shù)據(jù)庫的視頻分類
在眼球追蹤實驗中,39人(26男、13女,年齡在20-49之間)作為被試參與實驗,其中僅有2名被試對顯著性檢測有相關(guān)背景知識,其余被試均對該領(lǐng)域和該實驗毫無經(jīng)驗。該實驗使用的眼動儀(用于追蹤眼球轉(zhuǎn)動)型號為tobiix2-60,頻率為60hz。被試觀看視頻所用lcd顯示屏大小為23英寸。實驗過程中,被試被要求坐在一個距離lcd顯示屏60厘米左右的舒適的椅子上。在觀看視頻之前,被試還需要通過眼動儀進行一個9點矯正。然后,被試者開始自由視角觀看隨機順序播放的視頻。為了避免被試眼部疲勞,本發(fā)明將65個視頻分成3組,每組播放完畢后有5分鐘的休息時間。另外,視頻播放過程中,每兩個視頻之間會有一個10秒的黑屏間隔。最終,該實驗總共收集到1,011,647個視覺關(guān)注點。
步驟102、對數(shù)據(jù)庫進行分析并提取臉部特征作為機器學(xué)習(xí)的輸入。本發(fā)明可以采用以下方法但不限于以下方法。
步驟(1)、運用已有算法自動檢測數(shù)據(jù)庫中視頻的人臉并標(biāo)定特征點,同時匹配視頻中每個人臉并給他們編號。
先通過現(xiàn)有先進技術(shù)檢測視頻中的人臉并標(biāo)定特征點。為了提升人臉檢測的性能,進一步通過視頻相鄰幀之間的時序信息解決一些惡劣情況(比如遮擋、光線暗等),即通過線性插值的方法將漏檢補全。另外,通過相鄰幀各個人臉之間的歐幾里得距離將不同幀同一人臉匹配起來。由于多人臉視頻中人們運動幅度不大,因此定義當(dāng)分屬于相鄰兩幀的某兩個人臉的歐幾里得距離小于一定閾值the,則該兩個人臉屬于同一個人。該閾值the定義如下:
其中w和h分別是檢測到人臉的寬和高,γ是控制人臉匹配敏感度的參數(shù),這里設(shè)為0.5。
步驟(2)、通過視頻中人臉內(nèi)部的圖像信息,提取每個人臉的3種特征(說話、轉(zhuǎn)頭、正\側(cè)臉)。
通過分析數(shù)據(jù)庫,發(fā)現(xiàn)說話這一行為會導(dǎo)致當(dāng)前人臉區(qū)域吸引大量的關(guān)注度。因此,本發(fā)明通過訓(xùn)練一種分類器來進行說話檢測。如圖3,首先提取嘴部特征:嘴部運動(運動強度和方向)、嘴部幾何特征(伸長度)、嘴部紋理(嘴部灰度直方圖)。其次,將上述提取的特征輸入到一種分類器,本發(fā)明使用并不限于支持向量機(supportvectormachine,svm),得到最終說話行為的分類結(jié)果。
具體來說,首先利用光流法來檢測嘴部區(qū)域每個像素的運動矢量,記錄嘴部區(qū)域的平均運動強度(公式(2))和方向梯度直方圖(公式(3)):
其中,
接下來,利用嘴部區(qū)域的特征點定義嘴部幾何特征——伸長度。定義嘴唇外邊緣的高和寬分別為a和b,嘴唇內(nèi)邊緣的高和寬分別為c和d,如圖4所示,則嘴部的伸長度可由如下算得:
其中v即嘴部伸長度,它能較好地表示嘴部張合的幾何信息。
同時,嘴部區(qū)域紋理的變化也作為說話檢測的特征。有研究表明,說話會影響嘴部區(qū)域的灰度值分布。因此,先將嘴部區(qū)域通過閾值將其二值化,然后計算平均二值灰度:
其中,b(·)代表嘴部區(qū)域每個像素點的二值灰度。
最后,將上述特征輸入到分類器svm進行訓(xùn)練,對說話檢測這樣一個二分類問題(說話或不說話)進行分類。其中,svm使用的是徑向基(radialbiasfunction,rbf)作為內(nèi)核。輸入特征向量為嘴部運動強度
關(guān)于轉(zhuǎn)頭和正\側(cè)臉特征可以通過人臉檢測及特征點定位得到。在所使用的人臉特征點定位技術(shù)中,檢測出68個特征點表示正臉,39個特征點表示側(cè)臉。同樣地,轉(zhuǎn)頭特征可以通過正\側(cè)臉的變化得到。本發(fā)明發(fā)現(xiàn),轉(zhuǎn)頭的動作一般影響關(guān)注度會持續(xù)1秒,因此在檢測到頭部姿勢有變化后1秒內(nèi)的幀都會被標(biāo)定為轉(zhuǎn)頭。其中,轉(zhuǎn)頭也分為兩種情況:正臉轉(zhuǎn)側(cè)臉,及側(cè)臉轉(zhuǎn)正臉。
步驟二、根據(jù)所建立的數(shù)據(jù)庫以及對數(shù)據(jù)的分析,建立并訓(xùn)練m-hmm。
步驟201、對數(shù)據(jù)庫中眼球追蹤數(shù)據(jù)以及步驟102提取的特征進行預(yù)處理,為訓(xùn)練m-hmm做準(zhǔn)備。
步驟(1)、統(tǒng)計數(shù)據(jù)庫視頻中每一幀每一個人臉區(qū)域落入的關(guān)注點個數(shù)。計算每一個人臉在當(dāng)前幀落入的關(guān)注點個數(shù)占當(dāng)前幀所有人臉落入的關(guān)注點個數(shù)總和的百分比。
步驟(2)、設(shè)定每個人臉在每一幀落入的關(guān)注點百分比“增加”、“減少”及“不變”作為m-hmm的三個狀態(tài),并將步驟102提取的臉部特征分別作為m-hmm的觀測狀態(tài)。
設(shè)該m-hmm的某個隱馬爾科夫模型hmm在第t幀的高維觀測特征(如說話、轉(zhuǎn)頭、正\側(cè)臉)為ft,隱藏狀態(tài)為st,代表某一人臉的顯著性變化。即st∈{+δ1,0,-δ2},其中δ1(>0)和δ2(>0)分別代表顯著性“增加”和“減少”的值,st=0表示該人臉的顯著性保持不變。在該hmm中,當(dāng)前時刻的狀態(tài)st依賴于前一時刻的狀態(tài)st-1以及觀測特征ft。因此一個視頻的某幀顯著性圖主要決定于觀測的高維特征以及前一幀的人臉顯著性。
步驟202、用步驟201預(yù)處理后的數(shù)據(jù),訓(xùn)練并學(xué)習(xí)m-hmm。
步驟(1)、定義隱馬爾科夫模型(hiddenmarkovmodel,hmm),即一個含有隱含未知參數(shù)的馬爾科夫過程,以及m-hmm。
hmm是一種基于觀測特征預(yù)測隱藏狀態(tài)轉(zhuǎn)移的統(tǒng)計馬爾科夫過程,它被廣泛應(yīng)用于機器學(xué)習(xí)和信號處理領(lǐng)域,如圖5所示,s1,s2,…,st表示不同時間的隱藏狀態(tài),f1,f2,…,ft為對應(yīng)時間的觀測特征。在本發(fā)明中,hmm被擴展成m-hmm,即將多個hmm組合起來,如圖6。
具體來說,對于m-hmm,同一時刻總共有n個隱藏狀態(tài),而本發(fā)明中每個隱藏狀態(tài)(在這n個隱藏狀態(tài)中)代表該第t幀每個人臉的顯著性變化(“增加”、“減少”或“不變”),此處定義為
因為
其中,
步驟(2)、通過最大似然估計算法,學(xué)習(xí)得到m-hmm的隱藏狀態(tài)轉(zhuǎn)移矩陣和觀測狀態(tài)轉(zhuǎn)移矩陣,每個hmm共享該參數(shù)集。
步驟203、利用學(xué)習(xí)得到的m-hmm預(yù)測每個人臉受關(guān)注度的變化,并經(jīng)過后處理得到最終的顯著性圖。
步驟(1)、利用m-hmm,通過維特比算法,得到所有高維特征通道人臉關(guān)注度權(quán)重的預(yù)測結(jié)果。
利用m-hmm,通過維特比算法,得到所有高維特征通道人臉關(guān)注度權(quán)重的預(yù)測結(jié)果
本發(fā)明實施例中,定義的高維特征包括:
步驟(2)、將所有高維特征通道的預(yù)測結(jié)果分別轉(zhuǎn)換成高維特征顯著性圖譜。
設(shè)某一特征通道的預(yù)測結(jié)果在第t幀的顯著性圖譜為
其中,
式中,σ是高斯模型的標(biāo)準(zhǔn)差,反映了中心偏至的程度;
步驟(3)、通過顯著性預(yù)測模型,得到顏色、對比度、方向的低維特征顯著性圖譜。
通過顯著性預(yù)測模型(gbvs),得到顏色、對比度、方向結(jié)合的低維特征顯著性圖譜,并分別定義為
步驟(4)、將上述所有特征通道的顯著性圖譜通過加權(quán)求和得到最終的顯著性預(yù)測圖。
因此,所有高維特征
其中,ωk表示第k個高維特征通道的權(quán)重。為了獲得每個高維特征通道的權(quán)重,本發(fā)明通過凸線性規(guī)劃(disciplinedconvexprogramming,cvx)解決如下優(yōu)化方程:
其中,
接下來,將最終得到的高維特征顯著性圖與低維特征顯著性圖通過加權(quán)求和的方式結(jié)合起來。其中,權(quán)重通過在訓(xùn)練數(shù)據(jù)集的最小二乘擬合得到。最終,多人臉視頻每一幀的顯著性圖st便可得到。
步驟204、為本發(fā)明所提出的顯著性檢測結(jié)果進行展示與檢驗。
本發(fā)明隨機選取數(shù)據(jù)庫中的視頻進行顯著性檢測,并將本發(fā)明與現(xiàn)有算法的檢測結(jié)果分別展示,如圖7和圖8。圖7表示同一視頻不同幀的顯著性檢測結(jié)果,結(jié)果顯示本發(fā)明在同一視頻的顯著性人臉追蹤上性能最優(yōu);圖8表示不同視頻的隨機某一幀顯著性檢測結(jié)果,結(jié)果顯示本發(fā)明能在多種視頻中表現(xiàn)最好性能。
步驟三、基于本發(fā)明提出的顯著性檢測方法設(shè)計一種視頻編碼方法。
具體方法如下,如圖9所示。
步驟301、利用本發(fā)明所得到的顯著性圖進一步指導(dǎo)視頻編碼過程中的碼率分配,來提升視頻的主觀質(zhì)量。
一種基于多人臉顯著性檢測的視頻編碼方法,即對檢測出的顯著人臉分配更多的比特數(shù)資源,這樣可以在碼率有限的情況下,提升視頻的主觀質(zhì)量。主觀質(zhì)量即人類對視頻質(zhì)量的直觀感受和評估。
一種基于多人臉顯著性檢測的視頻編碼方法,被嵌入在高效率視頻編碼標(biāo)準(zhǔn)(highefficiencyvideocoding,hevc)的r-λ碼率控制模型上,被稱為感知碼率控制方案。具體而言,傳統(tǒng)的hevc碼率控制算法通過給定目標(biāo)碼率對率失真優(yōu)化問題進行求解得到每一個編碼單元(codingtreeunit,ctu)的每像素比特(bitperpixel,bpp)。本發(fā)明定義每權(quán)重比特(bitperweight,bpw)代替bpp,通過權(quán)重的思想反映不同區(qū)域的顯著性強弱。設(shè)bpwt,i表示第t幀第i個像素的bpw,則得第j個ctu在第t幀的目標(biāo)碼率rt,j為:
其中it,j表示第t幀第j個ctu內(nèi)的像素集合。在對多人臉視頻的某一幀進行編碼之前,公式(12)中的bpwt,i可以通過本發(fā)明提出的顯著性檢測方法預(yù)測的顯著性圖譜st得到。令st(i)為第t幀第i個像素的預(yù)測顯著性值,則
其中rt和it分別為目標(biāo)碼率和第t幀的像素個數(shù)。
接下來,每個ctu的平均bpw可被估計得
其中#(it,j)表示第j個ctu內(nèi)的像素個數(shù)。于是,本發(fā)明用
其中,對于每個ctu,λt,j是優(yōu)化中的拉格朗日乘子,而qpt,j作為量化參數(shù)qp是碼率控制模塊的輸出。另外,αt,j和βt,j為r-λ模型的參數(shù);c1和c2即qp估計的擬合參數(shù)。最后,視頻的每一幀通過hevc進行編碼,圖9總結(jié)了本發(fā)明的感知碼率控制流程。
步驟302、對本發(fā)明所提出的視頻壓縮編碼方法的結(jié)果進行簡單展示與檢驗。
本發(fā)明對所提出的視頻壓縮編碼方法進行簡單展示與檢驗。本發(fā)明隨機選取其中一個壓縮后測試視頻的某一幀進行展示,如圖10所示,同樣可得本發(fā)明在某些顯著性區(qū)域?qū)τ趥鹘y(tǒng)算法能更好地提升質(zhì)量。
本發(fā)明通過對多人臉視頻顯著性的檢測,對視頻壓縮的碼率分配過程進行控制,適用于對視頻主觀質(zhì)量有要求但設(shè)備無法傳輸或存儲較大比特率視頻的情況下。盡管本發(fā)明已參照具體實施方式進行描述和舉例說明,但是并不意味著本發(fā)明限于該描述的實施方式。