一種基于人臉識別的視頻特效處理方法
【技術領域】
[0001] 本發明屬于視頻技術領域,具體涉及一種基于人臉識別的視頻特效處理方法。
【背景技術】
[0002] 對視頻中的指定人臉進行馬賽克或模糊等特效處理是一種常用于媒體信息傳播 中的隱私保護手段,比如在電視訪談類節目中,為了保護被采訪者,在電視節目播出時,對 需要保護的被采訪對象的面部進行馬賽克處理。這種特效處理,通常都是借助Premiere、 DirectShow、AE等視頻處理軟件手工操作來完成,如果指定的被采訪對象待特效人臉在視 頻中交替出現,也就是鏡頭切換比較頻繁時,用這些軟件手工操作對待特效人臉進行馬賽 克特效處理,則顯得費時費力。
【發明內容】
[0003] 本發明的目的是提供一種基于人臉識別的視頻特效處理方法,解決了現有技術 中,采用手工操作對訪談類視頻節目中待保護人臉進行特效處理,費時費力的問題。
[0004] 本發明所采用的技術方案是,一種基于人臉識別的視頻特效處理方法,按照以下 步驟具體實施:
[0005] 步驟1 :對需要處理的視頻節目鏡頭進行分割;
[0006] 步驟2 :獲取視頻中待特效人臉的模板特征;
[0007] 步驟3 :以鏡頭為單位,計算鏡頭里每一幀上所檢測到的每個人臉區域的人臉特 征并按人臉區域的位置對每個人進行分類;
[0008] 步驟4 :確定待特效人臉的分類閾值;
[0009] 步驟5 :根據分類閾值進行待特效人臉的識別及馬賽克特效處理;
[0010] 步驟6 :對所有視頻幀處理的結果進行保存,通過視頻文件寫入軟件,把保存的幀 圖像轉換成視頻,最后把視頻部分和音頻部分合成一個完整的視頻,即成。
[0011] 本發明的有益效果是,對視頻進行鏡頭分割,對指定的待特效人臉在視頻中自動 獲取其模板特征,將視頻每一幀中獲取的人臉特征與待特效人臉的模板特征進行比較,確 定能夠分類出待特效人臉(需要保護面部特征的人員)和非特效人臉(無需保護面部特征 的人員)的閾值,根據該分類閾值進行人臉識別,如果識別結果為待特效人臉,則對該人臉 區域進行馬賽克特效處理,否則不做處理。該方法能夠自動對訪談類視頻節目中指定的待 保護人員的臉部進行馬賽克特效處理,準確率高。
【具體實施方式】
[0012] 下面結合【具體實施方式】對本發明進行詳細說明。
[0013] 本發明基于人臉識別的視頻特效處理方法,按照以下步驟具體實施:
[0014] 步驟1 :對需要處理的視頻節目鏡頭進行分割
[0015] 將視頻節目鏡頭中的視頻部分與音頻部分分開,記視頻總幀數為NumFrame,將每 幀圖像由RGB彩色圖像轉為灰度圖像,并計算每一級灰度值所包含的像素點個數,然后將0 到255個灰度級等分成16份,每份包含16個灰度級,計算相鄰兩幀灰度圖像直方圖的差 和,見下式(1):
[0016]
C1 )
[0017] 其中,t= 0,l,...,15,i= 2,3,...,NumFrame,j= 0, 1,? ? ?,255,dt 是第i幀和 第i_l幀灰度圖像直方圖的差和,1j和Hj分別是第i幀和第i-1幀灰度圖像落入第j 個灰度級內的像素數目;
[0018] 計算第i幀和第i_l幀灰度圖像直方圖的差和的平均值Avg+di,見下式⑵: _]
(23
[0020] 判斷Avg+di是否滿足下式⑶的條件:
[0021] Avg_di > 5XAvg_d; :, (3)
[0022] 滿足式(3),則第i-1幀圖像是第k個鏡頭的結束幀,第i幀圖像是第k+1個鏡頭 的起始幀,k= 1,2,. . .,ShotNum,ShotNum為鏡頭數,鏡頭內的起始幀數為NBk、結束幀數為 Na;
[0023]不滿足式(3),則第i-1幀和第i幀圖像都是第k個鏡頭的視頻幀圖像;
[0024] 步驟2 :獲取視頻中待特效人臉的模板特征
[0025] 2. 1)在指定幀上框選待特效的人臉區域,并在鏡頭內獲取待特效人臉的模板圖像 幀,
[0026] 播放視頻,當視頻中出現待特效人臉時,手動指定該幀,記該幀的幀數為Nt, NtG[1,2, ? ? ?,NumFrame],NBk<Nt<NEk,kG[1,2, ? ? ?,ShotNum],在該幀上手動框選完 整的待特效人臉區域,記該矩形框的左上角坐標為右下角坐標為(xR,yR);
[0027] 然后判斷Nt、NBk、Na是否滿足下式(4)的條件:
[0028]
[0029] 同時滿足條件①和②時,從指定幀Nt開始直接向后取連續8幀圖像作為模板圖像 幀,記模板圖像幀的個數為Num_f,此時Num_f= 8 ;
[0030] 滿足條件①,不滿足條件②時,從指定幀Nt開始向后連續取到第NEk幀,向前再連 續取8-(NEk-Nt)-l幀作為模板圖像幀,即Num_f= 8 ;
[0031] 不滿足條件①和②時,把指定幀隊所在鏡頭k內的所有幀圖像作為模板圖像幀, 即Num_f=NEk_NBk+l,此時Num_f< 8 ;
[0032] 2. 2)對步驟2. 1)中得到的Num_f個模板圖像幀進行人臉檢測,并提取待特效人的 完整人臉區域,Num_f為模板圖像幀的個數;
[0033] 2. 2. 1)人臉的初檢測
[0034] 采用Adaboost算法中的人臉檢測分類器,對每一模板圖像幀進行人臉檢測,所檢 測到的矩形區域記為ROIu,其中,il = 1,2,. . .,Num_ROI,Num_ROI為檢測到的矩形區域個 數,記該矩形區域ROIn的寬為WROIu、高為HROI11;
[0035] 2. 2. 2)排除非人臉的矩形區域
[0036] 將步驟2. 2. 1)得到的矩形區域ROIjARGB空間轉換到YCrCb空間,參照下式 (5):
[0037]
[0038] 其中的像素值Cb和Cr取值范圍分別為:80 <Cb< 130,135 <Cr< 170,則該像 素為膚色像素,統計矩形區域ROIu中膚色像素的個數,記為Num_pixlu,判斷他11〇^11;1是 否滿足下式(6)中的條件:
[0039]
[0040] 其中,WROIuXHROL是矩形區域ROIu的像素總數;
[0041] 滿足式(6)時,則矩形區域R0L是人臉區域,il G [1,2,...,燦111_1?01],記為 FaceR0Im,記其左上角和右下角的坐標為(X&,yj和(x Rm, yRm),其中m = 1,2,. . .,Num_ FaceROI,Num_FaceROI為排除非人臉區域后的人臉區域個數,Num_FaceROI < Num_R0I ;
[0042] 不滿足式(6)時,則矩形區域如^是非人臉區域;
[0043] 2. 2. 3)合并重復檢測到的人臉區域
[0044] 記步驟2. 2. 2)的人臉區域FaceROlJ^中心點坐標為:
[0045]
[0046] 計算任意兩個人臉區域中心點的歐式距離Dist,參照下式(7):
[0047]
[0048]
[0049]
[0050] 判斷Dist是否滿足公式⑶中的條件:
[0051] Dist<max((yRn_yLn),(yRn_yLn)), (8)
[0052] 其中,max((yRn_yLn),(yRn_yLn))是yRn_yLn^yRn_yLn 中的較大值,
[0053] 是第m個人臉區域FaceROIm的高,
[0054] 是第n個人臉區域FaceROIn的高;
[0055] 合并滿足式(8)中條件的人臉區域,合并后的人臉區域記為FaceROI'u,其左上 角的坐標是所有被合并的人臉區域左上角坐標的最小值,記為(x' _,/_),其右下角 的坐標是所有被合并的人臉區域右下角坐標的最大值,記為(x'Rnl,y' Rnl),其中,ml= 1,2, ? ? ?,Num_FaceROI',Num_FaceROI' <Num_FaceROI,Num_FaceROI' 為合并重復人臉 區域后人臉區域的個數;
[0056] 2. 2. 4)確定待特效人臉區域
[0057] 判斷步驟2. 2. 3)中合并后的人臉區域FaceROI'ml的左上角坐標(x' ^,又'_) 和右下角坐標(x'Rnl,y'Rnl)是否滿足下式(9):
[0058]
[0059] 其中,xJPy^為步驟2. 1)中指定框的左