摘要:目前視頻安全得到了人們的廣泛關注,許多視頻加密算法提出并得到了應用。但這些視頻加密算法基本上是針對整幀圖像的加密,并未考慮對圖像中某些感興趣的區域進行加密,往往增加了通信成本。針對此問題,提出了一種有效安全的感興趣人臉區域保護方案,方案包括膚色信息和基于方向特征Bayes分類器相結合的人臉精確定位,基于Kalman濾波器的人臉預測跟蹤以及H.264的CABAC編碼中人臉區域的加密。實驗結果表明,該方案不僅具有抗攻擊性,而且安全有效地保護了感興趣人臉區域。
關鍵詞:H.264; 人臉檢測; 人臉追蹤; CABAC; 加密
中圖分類號:TP391.41
文獻標志碼:A
文章編號:1001-3695(2008)06-1802-04
0引言
近年來我國視頻監控應用發展迅猛,尤其在公安、軍隊、交通、金融等國家關鍵領域。雖然監控設備在這些關鍵領域得到了廣泛應用,但是智能視頻分析技術的研究卻很少。目前,商業中使用的監控系統都要求對視頻內容進行加密保護,以確保客戶信息安全。傳統的保護方案一般使用標準密碼函數如DES、3DES、RAS等對采集壓縮后的視頻數據進行全部加密或選擇加密,這些方案可針對商業中的實際應用,通過控制加密數據量,可實現多級安全性,但是這種方案目前還不能直接應用到監控系統中固定背景下的個人隱私安全。因此本文提出了一種監控場景下對體現人物身份的人臉進行加密的方法,這樣不僅能有效地保護圖像中的個人隱私安全,而且減少了通信成本。
視頻序列中人臉的定位是個非常復雜的問題,盡管人眼能迅速辨認人臉區域,但是對于計算機來說容易受光照、人物表情、人臉面部遮擋物以及側面旋轉角度的影響。目前,人臉檢測方面的研究工作主要有兩類:一類是針對彩色圖像的基于膚色的方法[1,2],它根據皮膚的色彩信息和啟發式信息定位人臉區域,其優點是速度快且對姿態不敏感,缺點是難以區分具有類似膚色的非人臉區域,只適用于特定環境;另一類是根據灰度特征的方法,包括基于統計模型的方法[3]和基于啟發式(知識)模型的方法[4]。
H.264是由ISO/IEC和ITU-T聯合發展的最新視頻編碼壓縮標準,它比H.263和 MPEG-4具有更高的壓縮效率。目前,H.264安全性問題的研究主要有Lian等人[5]和Bao等人[6],主要是基于CAVLC整幀圖像的加密。在CAVLC加密過程中,將對一些數據如PMs、殘差系數和運動矢量進行加密或擾亂。該方法的優點在于加密過程與CAVLC編碼過程同時進行,并且計算復雜度低,對壓縮率的負面影響較小。但是,目前CABAC作為一種新型的熵編碼方法,將自適應技術、上下文模型化與二進制算術編碼有機地結合在一起,與CAVLC相比達到了更高的壓縮效率。
結合上述方法,本文將改進的人臉檢測方法和Kalman跟蹤相結合來提高人臉定位的準確率,并在基于CABAC編碼中對檢測到的人臉宏塊殘差系數RCs進行置亂以達到隱蔽的效果。本文的算法流程如圖1所示。
1人臉檢測與追蹤
1.1人臉檢測算法
文獻[7]中的Bayes分類器選擇的是Sobel算子卷積后邊緣像素點的方向特征,文中用20×20大小搜索窗遍歷整個圖像,同時用Bayes分類器進行判斷,若沒發現人臉則將圖像縮小一定倍數后繼續搜索,直到圖像縮小到一定大小(文中設置為20×20大小)。該方法不足之處在于搜索的范圍是整幅圖像,用搜索窗遍歷時缺乏針對性,耗時相對要多。因此在文獻[7]的基礎上,提出了一種將光照自適應膚色模型、改進的邊緣特征Bayes分類器相結合的快速人臉檢測方法。
1.1.1光照自適應膚色檢測
Cb、Cr子空間的算法難以檢測出膚色區域高光和陰影部分,考慮到光照變化時Cb、Cr膚色區域會發生偏移,因此采用Y-Cb和Y-Cr[1]子空間聯合建立隨亮度變化的自適應膚色模型。若像素點落在Y-Cb和 Y-Cr的膚色區域內,則認為該像素點是膚色像素,否則認為是非膚色像素。
通過自適應膚色模型的判決,得到的二值化圖像如圖2。從圖2(a)(b)可以看出臉部亮度較暗的區域也被檢測出來了。圖2(c)(d)中臉部鼻子和眼睛以下高亮度區域也被檢測出來。
1.1.2簡單Bayes分類器的特征改進
Sx=121000-1-2-1Sy=-101-202-101
用3×3的Sobel算子Sx、Sy分別卷積圖像得到水平和垂直方向的Ex和Ey,根據Ex和Ey可以計算每個像素點的方向,即反正切值:
∠ei,j=arctan(Ey/Ex)
對∠ei,j的大小進行分類,文獻[7]采用圖3(a)的分類方法,即分成0~6七個方向類和一個弱方向類。其中,第3類包括水平方向附近正、負兩種相反的方向,并且其概率是其他類別的2~3倍,因此將文獻[7]的第3類分成圖3(b)中的第3、4兩個類。這樣就根據 ∠ei,j的大小分成0~7八個方向類和一個弱方向類,如圖3(b)所示。
對MIT生物與研究中心提供的472幅人臉,23 495非人臉圖片進行測試(20×20大小),將改進之后的方法與文獻[7]方法進行比較,實驗結果如表1所示。
改進后的分類器類別比文獻[7]方法多了一類,在訓練過程中時間上雖多耗費0.006 ms,但是正確率有了一定的提高。
1.1.3人臉檢測算法的具體步驟
本文人臉檢測算法具體步驟如下:
a) YCbCr格式原始圖像 IYCbCr(x,y)進行光照自適應膚色檢測,將每個點標志為膚色點或非膚色點,得到二值化圖像I′bin(x,y)。
b) I′bin(x,y)進行形態學濾波,即進行腐蝕、膨脹運算。
c)利用投影法進行區域分割,得到候選目標(人臉)。將濾波后的二值化圖像進行x及y方向上的投影,找到x、y方向的投影范圍,從而得到連通區域個數及各連通區域的坐標范圍,將每個連通區域看成一個候選目標(人臉)。
d)用20×20的搜索窗在候選人臉區域中進行移動、搜索,直到搜索完該候選區域,若有多個候選人臉區域,則d)要重復執行相應次數。所有候選區域檢測完后轉e)。一個候選人臉區域的搜索步驟如下:
(a)對搜索窗內的圖像進行直方圖均衡;
(b)計算搜索窗內區域每個方向類的概率P(∠ei,j|F)及P(∠ei,j|Fc);
(c)根據Bayes分類規則,判斷當前搜索窗區域是否是人臉,若是人臉則結束本候選區域的搜索,轉到d)進入下一個候選區域的搜索,否則往下;
(d)若當前候選區域未搜索完,則搜索窗在水平或垂直方向移動3個像素點后再轉到步驟(a),繼續搜索,否則往下;
(e)若候選人臉區域 I>20×20,則縮小β=1.189倍,再轉到(a),否則結束當前候選區域的搜索,轉(d)進入下一個候選區域的搜索。
e)將所有滿足條件的人臉區域顯示出來,結束搜索。
1.1.4人臉檢測算法實驗結果
在P4 2.6 GHz PC上對自拍的QCIF測試序列進行實驗,用300幀統計時間和正確率,將本文算法與文獻[7]方法作比較得出以下實驗結果,如表2所示。
從表2可以看出,改進后的算法正確率提高了2.1%,并且所需的時間大大減少。
1.2人臉跟蹤算法
人臉特征跟蹤是建立在前一幀人臉特征檢測正確的基礎上。一般的人臉特征跟蹤研究往往需要手工給定第一幀的特征位置,然后研究單純的跟蹤策略[8]。在本文中,第一幀、第二幀的人臉位置采用自動檢測得到,為了確定Kalman濾波器的初始狀態以保證跟蹤的有效性,首先對檢測到的前兩幀圖像中的多人臉進行特征匹配,匹配到相應人臉后計算出每個人臉的速度以初始化Kalman濾波器。在以后的幀序列中,用Kalman濾波器對所有被跟蹤的人臉位置進行預測,對預測的區域作人臉檢測。如果人臉檢測成功,則用當前檢測結果更新Kalman濾波器,使其能繼續預測下一幀中相應的人臉區域;如果未檢測到人臉,則可能是算法的漏檢或者濾波器預測的位置不夠準確,也有可能是人臉目標已從場景中消失,考慮到安全性保護的更高要求,筆者可用預測值來保持當前幀的人臉區域,這樣可以彌補由于漏檢而造成的人臉丟失,從而為后續的人臉加密提供了更好的安全性。
1.2.1Kalman濾波器簡介
在測量噪聲和運動噪聲都滿足高斯分布,且狀態更新表達式是線性的情況下卡爾曼濾波是一種最優的運動預測算法[9]。它在導彈、飛機等機動目標的測量、制導、控制等領域的應用已經超過30年,近年來被應用于視頻圖像中運動目標的跟蹤。
其中:X(n)是n時刻目標的運動狀態向量,包括目標的位置、速度、加速度及大小等狀態分量;A是運動狀態的轉移矩陣;Z(n)是n時刻目標位置等部分運動狀態的測量值;H是測量矩陣;W(n)和V(n)分別表示運動過程噪聲及測量過程的噪聲。在卡爾曼濾波中,W(n)和V(n)都被假設成高斯白噪聲,協方差矩陣分別記為Q、R,一般情況下,認為Q、R是固定不變的,即針對某類運動目標及某種測量系統,Q、R不隨時間的改變而改變。
2基于CABAC和RC殘差系數的加密編碼
2.1CABAC編碼
CABAC是H.264標準中基于上下文的自適應二進制算術編碼。整個編碼過程如下:
a)二值化。為了在圖像片的時間間隔內快速準確地完成條件概率估計,并且盡量減小計算復雜度,筆者為每個給定的非二進制語法元素確定一個惟一的二進制流,這個過程就是二值化。二值化編碼樹的基本模型包括:一元編碼、截斷一元編碼(TU)、K階哥倫布指數編碼(EGk)和定長編碼 (FL)。
b)上下文建模。編碼符號具有上下文相關性,利用已編碼符號提供的上下文信息選擇合適的概率,這就是上下文建模。利用上下文信息可以降低符號間的冗余度,進一步提高編碼效率。H.264提供了399種上下文模型,在實際編碼之前要選擇合適的概率模型。
c)二進制算術編碼。一個算術編碼器包括常規編碼模式和旁路編碼模式,根據b)所選擇的概率模式對二進制流進行編碼。編碼后再根據當前的編碼值對上下文模式進行更新。
2.2殘差系數加密編碼
H.264使用CABAC編碼方式對圖像中每個宏塊的殘差系數進行編碼。本文對圖像中檢測到的人臉區域所在宏塊的殘差系數進行加密,編碼與加密過程同步。
首先,編碼塊標記(CBF)用于傳輸給定的變換系數塊,除非編碼塊方式或宏塊模式顯示相關塊沒有非0系數。如果編碼塊標記為0,將不再傳輸該塊的更多信息;否則,指定系數位置的重要圖(SM)將被編碼。最后對每一個變換系數的幅值和符號位都要進行編碼。
結合上述編碼過程,圖4詳細描述了CABAC編碼和加密的整個過程,包括兩個基本操作,即常規編碼模式加密(RCME)和旁路編碼模式的加密(BCME)。
RCME操作:變換系數幅值(abs_level)的UEGk二進制轉換是由閾值為S=14的TU前綴部分與k=0的EGk后綴部分組成。注意,因為0值RC使用SM進行編碼,所以二進制轉換及隨后的編碼過程被用于語法元素:
coeff_abs_value_ minus1=abs_level-1
因此在常規編碼模式中可以使用4位偽隨機序列對TU前綴碼字進行加密。
BCME操作:EGk編碼是由一個前綴和后綴碼字串聯構成的。對于一個無符號整型值x, EGk碼字的前綴部分是由一元碼字的l(x)=log2(x/2k+1)的值組成。EGk的后綴部分是由x+2k(1-2/(x))計算得出。因此,對于EGk二進制轉換,擁有相同編碼長度x+2l(x)+1的符號數量呈幾何增長。當k=0,2l(x)+k+1=2l(x)+1。
因此對于每個RC值|abs_level|>14,可以使用相同長度的偽隨機序列來加密EG0。此外,本文還通過加密系數符號位coeff_sign_flag來增強安全性。
3實驗結果
實驗部分本文通過三個方面來評價文中的人臉保護方案。其中包括人臉檢測算法的效率、H.264中部分加
密的壓縮比以及加密的安全性效果。
3.1人臉檢測算法效率
本文提出的人臉檢測與追蹤結合的算法比單獨使用檢測算法[7]更有效。通過一系列標準及自拍序列的實驗,兩種算法的對比實驗結果如圖5所示。
3.2壓縮比分析
考慮到加密的過程是在CABAC編碼過程中進行,并且只有人臉部分需要被加密,文中的算法對H.264壓縮比的負面影響更小。與變換域中局部圖像的加密方法[10,11]相比較,文中在CABAC編碼過程中的加密具有更高的壓縮比,實驗結果如圖6所示。
3.3加密的安全性
3.3.1加密的視覺安全效果
本文對標準序列和自拍的序列進行實驗,圖片大小為QCIF(176×144)。當序列回放時,可以觀察到人臉被有效地保護起來。實驗結果圖7顯示了該方法的視覺安全性。
圖7中(a)(c)(e)(g)(i)為原始序列,(b)(d)(f)(h)(j)為加密后的序列。從實驗結果可以看出視頻序列中的人臉區域被很好地保護起來。
3.3.2用戶密鑰的安全性
評價安全性的一個簡單而常用的方法是計算窮舉空間的大小,其大小與 |clear-text space|和|key space|中的最小值成正比。本文是在CABAC編碼過程中對非零RC進行加密。因此|clear-text space|>|key space|,文中方案的安全性主要取決于用戶密鑰。而用戶密鑰又是用來產生混沌密鑰生成器的初始值。針對用戶密鑰的窮舉攻擊也許可以破譯系統,除非攻擊者可以襲擊二維的混沌系統。假設產生器的初始值是64位,襲擊者必須作出2128≈3.4×1038次嘗試,所以窮舉攻擊幾乎不起作用,因而文中的方案能夠提供很好的安全性。
4結束語
本文針對視頻圖像中感興趣人臉區域的加密,提出了一種結合人臉檢測、追蹤和加密的人臉保護方案。人臉檢測方法在文獻[7]的基礎上進行改進,并結合追蹤預測來提高人臉定位的準確率。加密是在H.264的CABAC編碼中對感興趣區域所在的每個宏塊的殘差系數進行置亂,從而使感興趣區域達到有效的保護。
對于比較復雜的監控場景,如何從眾多的人臉中識別出需要保護的人臉是筆者今后要做的工作,有待進一步的研究。
參考文獻:
[1]HSU R L, ABDEL-MOTTALEB M, JAIN A K. Face detection in color images[J]. IEEE Trans on Pattern Analysis and Machine Intelligence,2002,24(5):1046-1049.
[2]WU H, CHEN Q, YACHIDA. Face detection from color images using a fuzzy pattern matching method[J]. IEEE Trans on Pattern Ana-lysis and Machine Intelligence,1999,21(6):557-563.
[3]ZHAO Hai-tao, YUEN P C, KWOKJ. TA novel incremental principal component analysis and its application for face recognition[J].IEEE Trans on Systems, Man and Cybernetics, 2006,36(4):873-886.
[4]梁路宏, 艾海舟.基于多模板匹配的單人臉檢測[J]. 中國圖象圖形學報,1999,4 A (10):823-830.
[5]LIAN S, LIU Z, REN Z, et al. Secure advanced video coding based on selective encryption algorithms[J].IEEE Trans on Consumer Electronics,2006,52:621-629.
[6]包先雨, 蔣建國. 一種新的H.264實時視頻傳輸的加密方法[J]. 電子學報, 2006, 34:2099-2102.
[7]NGUYEN D, HALUPKA D.Real-time face detection and lip feature extraction using field-programmable gate arrays[J]. IEEE Trans on Systems, Man and Cybernetics,2006,36(4):1902-1912.
[8]KRUGER V, SOMMER G. A fine real-time face tracking using Gabor wavelet netwoks[C] //Proc of Conference on Pattern Recognition. Barcelona, Spain: [s.n.],2000.
[9]張雷,劉冀偉,王志良. 固定場景下的運動檢測與運動跟蹤[J]. 微計算機信息,2006,22(25):287-289.
[10]DUFAUX F, EBRAHIMI T. Scrambling for video surveillance with privacy[C] //Proc of Conference on Computer Vision and Pattern Recognition Workshop. 2006:160-166.
[11]MARTINEZ-PONTE I, DESURMONT X, et al. Robust human face hiding ensuring privacy[C] //Proc of International Workshop on Image Analysis for Multimedia Interactive Services. Montreux,Swizerland:[s.n.], 2005.
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文