專(zhuān)利名稱(chēng):基于比特敏感度的h.264壓縮域比特平面加密方法
技術(shù)領(lǐng)域:
本發(fā)明涉及多媒體信息安全領(lǐng)域中的視頻加密,具體為一種基于比特敏感度的 H264壓縮域比特平面加密方法。
背景技術(shù):
隨著電子商務(wù)、視頻會(huì)議、視頻監(jiān)控、遠(yuǎn)程醫(yī)療以及3G智能手機(jī)等多媒體通信系統(tǒng)的廣泛應(yīng)用,圖像、視頻等多媒體信息在網(wǎng)絡(luò)傳輸過(guò)程中存在著被竊取、惡意篡改等各種安全隱患,多媒體信息安全問(wèn)題變得日益突出。例如,在各種各樣的商業(yè)應(yīng)用場(chǎng)合,多媒體信息被竊取將會(huì)給供應(yīng)商帶來(lái)巨大的經(jīng)濟(jì)損失;在遠(yuǎn)程醫(yī)療過(guò)程中,病人私人信息的泄漏將會(huì)造成病人隱私權(quán)被侵害;尤其是軍事、國(guó)防、外交等機(jī)要部門(mén)信息的泄漏往往會(huì)造成難以估量的負(fù)面影響。因此,如何全面有效地保證多媒體信息的安全已經(jīng)成為當(dāng)前多媒體通信領(lǐng)域亟需解決的問(wèn)題。視頻加密是一種能夠保證視頻信息安全的有效手段。現(xiàn)有的視頻加密方法一般可分為與編碼相結(jié)合的視頻加密和壓縮域視頻加密。前者是指將加密算法嵌入到編碼過(guò)程的某個(gè)環(huán)節(jié),比如DCT變換、量化或者熵編碼等。這類(lèi)加密方法往往會(huì)造成系統(tǒng)壓縮性能的下降,也通常需要改變視頻標(biāo)準(zhǔn)編解碼器的結(jié)構(gòu),因此實(shí)用性較差。壓縮域視頻加密是指對(duì)視頻編碼后生成的碼流進(jìn)行加密。最簡(jiǎn)單有效的方法是采用傳統(tǒng)的文本加密算法如RSA、DES或AES等直接對(duì)整個(gè)碼流進(jìn)行加密。但是,視頻信息的數(shù)據(jù)量非常龐大,對(duì)全部碼流進(jìn)行加密將導(dǎo)致加密處理的負(fù)荷過(guò)大,因此并不能滿(mǎn)足視頻應(yīng)用的實(shí)時(shí)性需求。為了獲得安全性和計(jì)算復(fù)雜度之間的折中,人們提出了選擇性視頻加密,僅僅選擇加密視頻數(shù)據(jù)中與視覺(jué)感知最相關(guān)的部分。目前,大多數(shù)壓縮域加密都是有選擇地對(duì)壓縮碼流中的某一類(lèi)信息進(jìn)行加密,例如加密碼流頭信息、改變預(yù)測(cè)模式或者置亂 DCT系數(shù)碼字等,以提高加密的效率。然而,這些方法并不能保證所有被加密的比特都是對(duì)視頻重建質(zhì)量最為重要的數(shù)據(jù),也難以保證加密后的碼流格式與標(biāo)準(zhǔn)編解碼器兼容。更重要的是,僅加密碼流頭信息或者預(yù)測(cè)模式并不能提供足夠的安全性。比特敏感度指的是壓縮碼流中某一類(lèi)型碼字的比特發(fā)生錯(cuò)誤時(shí)所引起的視頻重建質(zhì)量的下降程度。視頻重建質(zhì)量下降得越明顯,說(shuō)明該類(lèi)型碼字對(duì)視頻重建質(zhì)量越為重要,比特敏感度也就越高。因此,根據(jù)碼流中各種類(lèi)型碼字的比特敏感度信息,在加密過(guò)程中可以保證對(duì)視頻重建質(zhì)量最重要的碼字被優(yōu)先加密,從而提高加密的針對(duì)性和有效性。 然而,在H. 264壓縮碼流中,除了不同類(lèi)型的碼字對(duì)視頻重建質(zhì)量的重要性不同之外,碼字中不同位置的比特對(duì)視頻重建質(zhì)量的重要性也往往各不相同。因此,如何保證每個(gè)碼字中重要的比特被優(yōu)先加密也是實(shí)現(xiàn)高效壓縮域加密方法必須解決的問(wèn)題。附圖1是塊大小為8X8的DCT系數(shù)比特平面形成示意圖。對(duì)于每個(gè)8X8的DCT 塊,首先按照從上到下、從左到右的Zig-Zag掃描順序?qū)?4個(gè)DCT系數(shù)組成一個(gè)一維數(shù)組。 然后,將64個(gè)系數(shù)的絕對(duì)值寫(xiě)成二進(jìn)制形式,每個(gè)系數(shù)的第i個(gè)比特提取出來(lái),形成一個(gè)比特平面??梢钥闯觯忍仄矫嬖礁?,則該平面對(duì)應(yīng)的比特對(duì)視頻重建質(zhì)量越為重要。如果按照比特平面由高到低的順序依次加密,即加密從最高比特平面MSB開(kāi)始,再加密次高比特平面MSB-1,以此類(lèi)推,就能夠保證每一個(gè)DCT系數(shù)中最重要的比特被優(yōu)先加密。因此,本發(fā)明利用這種比特平面的思想,提出了一種基于比特敏感度、適用于H. 264壓縮碼流的比特平面加密方法。
發(fā)明內(nèi)容
本發(fā)明的目的在于,提出了一種基于比特敏感度的H. 264壓縮域比特平面加密方法。首先,對(duì)H. 264壓縮碼流中的各種不同類(lèi)型的碼字進(jìn)行比特敏感度測(cè)試,并依據(jù)測(cè)試結(jié)果對(duì)所有碼字進(jìn)行分類(lèi),以保證對(duì)視頻重建質(zhì)量最重要的碼字被優(yōu)先加密。對(duì)于待加密的碼字,則按照比特平面由高到低的順序依次加密,即首先加密最高比特平面MSB,再加密次高比特平面MSB-1,以此類(lèi)推,以保證每個(gè)碼字中最重要的比特被優(yōu)先加密。本發(fā)明是采用以下技術(shù)手段實(shí)現(xiàn)的一種基于比特敏感度的H. 264壓縮域比特平面加密方法,包括H. 264碼流比特敏感度測(cè)試、比特平面形成以及比特平面加密步驟;步驟1、進(jìn)行H. 264碼流比特敏感度測(cè)試;步驟1. 1、設(shè)置測(cè)試條件,即不啟用H. 264編解碼器容錯(cuò)模式;步驟1. 2、隨機(jī)更改幀內(nèi)預(yù)測(cè)模式碼字的任何一個(gè)比特位,記錄重建視頻的PSNR 值;步驟1. 3、重復(fù)上述測(cè)試過(guò)程20次,對(duì)所有測(cè)得的PSNR值取均值,作為幀內(nèi)預(yù)測(cè)模式碼字的比特敏感度信息;步驟1. 4、重復(fù)步驟1. 2 1. 3,測(cè)試H. 264碼流中其余類(lèi)型碼字的比特敏感度信肩、ο步驟2、進(jìn)行H. 264碼流比特平面形成;步驟2. 1、獲取H. 264碼流中的一個(gè)編碼片,記錄當(dāng)前編碼片所包含的比特?cái)?shù);步驟2. 2、若當(dāng)前編碼片為幀內(nèi)編碼幀,則依次建立幀內(nèi)預(yù)測(cè)模式、低頻系數(shù)符號(hào)以及低頻系數(shù)幅值等比特平面;步驟2. 3、若當(dāng)前編碼片為幀間編碼幀,則依次建立運(yùn)動(dòng)矢量符號(hào)、運(yùn)動(dòng)矢量幅值以及幀內(nèi)預(yù)測(cè)模式等比特平面。步驟3、進(jìn)行H. 264碼流比特平面加密;步驟3. 1、初始化被加密比特?cái)?shù)為零(EncBitsjum = 0),并設(shè)置加密閾值 (Threshold);步驟3. 2、按照比特平面由高到低的順序依次加密,對(duì)于幀內(nèi)編碼幀,將依次加密幀內(nèi)預(yù)測(cè)模式比特平面、低頻系數(shù)符號(hào)比特平面等,對(duì)于幀間編碼幀,將依次加密運(yùn)動(dòng)矢量符號(hào)比特平面、運(yùn)動(dòng)矢量幅值比特平面等;步驟3. 3、在完成一個(gè)比特平面加密之后,計(jì)算EncBitsjum以及被加密比特?cái)?shù)占碼流總比特?cái)?shù)的百分比(EnCBitS_pre);步驟3. 4、判斷EnCBitS_pre是否已到達(dá)初始設(shè)置的加密閾值Threshold,若 EncBits_pre小于Threshold,則繼續(xù)加密下一個(gè)比特平面,否則結(jié)束當(dāng)前編碼片的加密過(guò)程;
步驟4、重復(fù)步驟2、步驟3,直到加密完當(dāng)前H. 264碼流中的所有編碼片。
本發(fā)明與現(xiàn)有技術(shù)相比,具有以下明顯的優(yōu)勢(shì)和有益的效果
本發(fā)明利用H. 264壓縮碼流的比特敏感度信息以及比特平面的思想來(lái)保證所有被加密的比特都是壓縮碼流中對(duì)視頻重建質(zhì)量最為重要的數(shù)據(jù),因此計(jì)算復(fù)雜度低,執(zhí)行速度快。與以往的壓縮域視頻加密方法相比,加密更具有針對(duì)性,可以在加密數(shù)據(jù)量相同的條件下獲得更高的安全性,并且能夠保持加密后的碼流格式與H. 264標(biāo)準(zhǔn)編解碼器兼容、 加密前后碼流的壓縮比不變等。其優(yōu)勢(shì)主要表現(xiàn)在
1、計(jì)算復(fù)雜度低、執(zhí)行速度快,能夠滿(mǎn)足視頻應(yīng)用的實(shí)時(shí)性要求。
2、加密更具有針對(duì)性,可以有效地保證所有被加密的比特都是壓縮碼流中對(duì)視頻重建質(zhì)量最為重要的數(shù)據(jù)。
3、能夠保持加密后的碼流格式與H. 264標(biāo)準(zhǔn)編解碼器兼容,并且加密前后碼流的壓縮比不變。
4、可以通過(guò)控制被加密比特的數(shù)據(jù)量來(lái)實(shí)現(xiàn)多種安全級(jí)別的加密,因此能夠滿(mǎn)足各種多媒體應(yīng)用的不同需求。
圖1為塊大小為8X8的DCT系數(shù)比特平面形成示意圖2為H. 264碼流比特平面形成示意圖3為H. 264碼流比特平面加密流程圖。
具體實(shí)施方式
以下結(jié)合說(shuō)明書(shū)附圖,對(duì)本發(fā)明的具體實(shí)施例加以說(shuō)明
1、有關(guān)H. 264碼流比特敏感度測(cè)試;
如前所述,H. 264壓縮碼流中包含各種不同類(lèi)型的碼字,并且對(duì)視頻重建質(zhì)量的重要性各不相同。比特敏感度測(cè)試的目的就是為了獲取碼流中各種不同類(lèi)型碼字對(duì)視頻重建質(zhì)量的重要性程度信息。為了更明顯地體現(xiàn)出碼字中發(fā)生比特錯(cuò)誤時(shí)對(duì)視頻重建質(zhì)量的影響,我們?cè)诓粏⒂肏. 264編解碼容錯(cuò)模式的情況下進(jìn)行了比特敏感度的測(cè)試,也就是說(shuō)當(dāng)碼字中的一個(gè)比特被破壞時(shí),H. 264解碼器并不修正或者隱藏這種差錯(cuò)效果,在這種情況下對(duì)重建視頻的質(zhì)量進(jìn)行測(cè)試。測(cè)試實(shí)驗(yàn)采用QCIF格式的標(biāo)準(zhǔn)視頻序列,包括Bus、 Football.Foreman.Mobile等,這些視頻序列的顏色、紋理等內(nèi)容以及運(yùn)動(dòng)的劇烈程度各不相同。
對(duì)于視頻加密,考慮到加密頭信息、殘差編碼方案CBP以及量化參數(shù)QP等碼字并不能保證視頻信息的安全性,也不能維持加密后碼流格式的兼容性,因此我們僅選擇對(duì)H. 264壓縮碼流中可能被加密的碼字進(jìn)行比特敏感度的測(cè)試,包括幀內(nèi)預(yù)測(cè)模式碼字antraPredM0de)、DCT系數(shù)碼字以及運(yùn)動(dòng)矢量殘差碼字。其中,DCT系數(shù)碼字可分為低頻系數(shù)符號(hào)(LowCoeffSign)、低頻系數(shù)幅值(LowCoeffLevel)、高頻系數(shù)符號(hào) (HighCoeffSign)、高頻系數(shù)幅值(HighCoefTLevel)以及拖尾系數(shù)(TrailingOnes);運(yùn)動(dòng)矢量殘差碼字也可分為運(yùn)動(dòng)矢量殘差符號(hào)(MVDSign)和運(yùn)動(dòng)矢量殘差幅值(MVDLevel)。根據(jù)編碼方式的不同,這些碼字又可以分成I幀和P幀兩種情況。
表1給出的是不同視頻序列壓縮碼流的比特敏感度測(cè)試結(jié)果。對(duì)于視頻重建質(zhì)量,我們采用目前最通用的客觀評(píng)價(jià)準(zhǔn)則-峰值信噪比(PSNR,Peak Signal-Noise Ratio) 來(lái)進(jìn)行度量。從表中可以看出,當(dāng)I幀中的MtraPredMode和P幀中的MVDSign碼字發(fā)生比特錯(cuò)誤時(shí),平均PSNR值下降最為明顯,下降量基本都在2dB以上,因此這兩類(lèi)碼字是 H. 264壓縮碼流中對(duì)視頻重建質(zhì)量最為重要的數(shù)據(jù)。此外,當(dāng)I幀中的LowCoeffSign和P 幀中的htraPredMode以及MVDLevel發(fā)生比特錯(cuò)誤時(shí)PSNR值下降也較為明顯。與此相反,當(dāng)碼字 LowCoeffLevel、HighCoeffSign、HighCoeffLevel、TraiIingOnes 以及 P 幀中的 LowCoeffSign發(fā)生比特錯(cuò)誤時(shí)并不會(huì)引起平均PSNR值的明顯下降。因此,可以將上述碼字分成三類(lèi),即
1) I 中貞中的 IntraPredMode、P 中貞中的 MVDSign ;
2) I 幀中的 LowCoeffSign^ P 幀中的 IntraPredMode 及 MVDLevel ;
3)LowCoeffLevel>HighCoeffSign>HighCoeffLevel^TrailingOnes 以及 P 幀中的 LowCoefTSign0
2、有關(guān)H. 264碼流比特平面形成步驟;
在H. 264壓縮碼流的比特敏感度信息確定之后,碼流中各種不同類(lèi)型碼字的加密順序也會(huì)隨之確定,但是并不能保證每個(gè)碼字中最重要的比特被優(yōu)先加密。本發(fā)明將根據(jù)比特平面的思想,按照比特平面由高到低的順序依次進(jìn)行加密,以保證碼字中重要的比特被優(yōu)先加密。
附圖2是本發(fā)明提出的H. 264碼流比特平面形成示意圖。對(duì)于幀內(nèi)預(yù)測(cè)模式, H. 264碼流中包含兩種類(lèi)型的定長(zhǎng)碼字,分別是“1”和“O X X X ”。若當(dāng)前塊預(yù)測(cè)模式等于相鄰塊(左邊塊和上邊塊)預(yù)測(cè)模式的最小值(最可能預(yù)測(cè)模式),則htraPredMode為 “ 1 ’,;否則htraPredMode為“O X X X ”,其中“ X X X ”為當(dāng)前塊預(yù)測(cè)模式與最可能預(yù)測(cè)模式的差值。改變“XXX”中的任何一個(gè)比特位,都將會(huì)改變當(dāng)前塊預(yù)測(cè)模式。因此,將所有MtraPredMode中的“ XXX ”提取出來(lái)就可以形成一個(gè)比特平面,稱(chēng)為IPMMSB。
對(duì)于運(yùn)動(dòng)矢量殘差,H. 264采用有符號(hào)指數(shù)哥倫布編碼,每個(gè)碼字可表示為[M Zeros] [1] [INFO],其中INFO是一個(gè)M位的信息后綴。因此,運(yùn)動(dòng)矢量殘差的幅值為L(zhǎng)evel =2M+INF0-1,而INFO的最后一個(gè)比特就是運(yùn)動(dòng)矢量殘差的符號(hào)位??梢?jiàn),將所有運(yùn)動(dòng)矢量殘差碼字的最后一個(gè)比特提取出來(lái)就形成了 MVDSign比特平面,稱(chēng)為MVDSign MSB。在信息后綴INFO的其余比特中,一般來(lái)說(shuō)距離標(biāo)志位“1”越近的比特對(duì)運(yùn)動(dòng)矢量殘差的幅值越重要。因此,以標(biāo)志位“1”為起始點(diǎn),將所有運(yùn)動(dòng)矢量殘差碼字信息后綴INFO中相同位置的比特提取出來(lái)就形成了一個(gè)MVDLevel比特平面,依次稱(chēng)為MVDLevelMSB、MVDLevel MSB-U MVDLevel MSB-2,以此類(lèi)推。
對(duì)于DCT殘差系數(shù),雖然H. 264采用了基于上下文的自適應(yīng)可變長(zhǎng)編碼(CAVLC, Context-based Adaptive Variable Length Coding)來(lái)控制對(duì)碼表 VLC 的選擇,但是仍然采用有符號(hào)指數(shù)哥倫布編碼對(duì)每個(gè)DCT系數(shù)進(jìn)行熵編碼。因此,可以采用與運(yùn)動(dòng)矢量殘差相似的方式來(lái)形成DCT系數(shù)碼字的比特平面。
3、有關(guān)H. 264碼流比特平面加密步驟;
比特平面形成之后,就可以按照比特平面由高到低的順序依次加密。附圖3是本發(fā)明提出的H. 264碼流比特平面加密流程圖。對(duì)于I幀,將依次加密IPM MSB,LowCoeffSignMSB,LowCoeffLevel (MSB、MSB-1、MSB_2、MSB_3......) ,HighCoeffSign MSB 等;對(duì)于 P 幀,將依次加密 MVDSign MSB、MVDLevel (MSB、MSB-U MSB-2......), IPM MSB、LowCoeffSignMSB 等。
然而,許多多媒體應(yīng)用并不需要完全加密所有的比特平面,僅僅希望通過(guò)加密多媒體數(shù)據(jù)中與視覺(jué)感知最相關(guān)的部分,以獲得安全性和計(jì)算復(fù)雜度之間的折中。例如對(duì)于視頻點(diǎn)播或付費(fèi)電視等,僅僅只需要加密I幀中的IPM MSB以及P幀中的MVDSign MSB。一般來(lái)說(shuō),壓縮碼流中被加密比特的數(shù)量越多,就越能有效地保證多媒體信息的安全。因此, 本發(fā)明根據(jù)被加密比特?cái)?shù)占碼流總比特?cái)?shù)的百分比來(lái)確定是否加密下一個(gè)比特平面。
公式(1)表示的是被加密比特?cái)?shù)占碼流總比特?cái)?shù)的百分比,其中EncBitS_ num為被加密比特?cái)?shù),NaluBits_num為碼流總比特?cái)?shù)。若EnCBitS_pre小于設(shè)定的閾值 Threshold,則繼續(xù)對(duì)下一個(gè)比特平面進(jìn)行加密,否則結(jié)束加密。EncBits num
權(quán)利要求
1.一種基于比特敏感度的H. 264壓縮域比特平面加密方法,其特征在于包括HJ64 碼流比特敏感度測(cè)試、比特平面形成以及比特平面加密步驟;步驟1、進(jìn)行H. 264碼流比特敏感度測(cè)試; 步驟1. 1、設(shè)置測(cè)試條件,即不啟用H. 264編解碼器容錯(cuò)模式; 步驟1. 2、隨機(jī)更改幀內(nèi)預(yù)測(cè)模式碼字的任何一個(gè)比特位,記錄重建視頻的PSNR值; 步驟1. 3、重復(fù)上述測(cè)試過(guò)程多次,對(duì)所有測(cè)得的PSNR值取均值,作為幀內(nèi)預(yù)測(cè)模式碼字的比特敏感度信息;步驟1. 4、重復(fù)步驟1. 2 1. 3,測(cè)試H. 264碼流中其余類(lèi)型碼字的比特敏感度信息; 步驟2、進(jìn)行H. 264碼流比特平面形成;步驟2. 1、獲取H. 264碼流中的一個(gè)編碼片,記錄當(dāng)前編碼片所包含的比特?cái)?shù); 步驟2. 2、若當(dāng)前編碼片為幀內(nèi)編碼幀,則依次建立幀內(nèi)預(yù)測(cè)模式、低頻系數(shù)符號(hào)以及低頻系數(shù)幅值等比特平面;步驟2. 3、若當(dāng)前編碼片為幀間編碼幀,則依次建立運(yùn)動(dòng)矢量符號(hào)、運(yùn)動(dòng)矢量幅值以及幀內(nèi)預(yù)測(cè)模式等比特平面;步驟3、進(jìn)行H. 264碼流比特平面加密;步驟3. 1、初始化被加密比特?cái)?shù)為零,并設(shè)置加密閾值;步驟3. 2、按照比特平面由高到低的順序依次加密,對(duì)于幀內(nèi)編碼幀,將依次加密幀內(nèi)預(yù)測(cè)模式比特平面、低頻系數(shù)符號(hào)比特平面等,對(duì)于幀間編碼幀,將依次加密運(yùn)動(dòng)矢量符號(hào)比特平面、運(yùn)動(dòng)矢量幅值比特平面等;步驟3. 3、在完成一個(gè)比特平面加密之后,計(jì)算當(dāng)前被加密比特?cái)?shù)以及被加密比特?cái)?shù)占碼流總比特?cái)?shù)的百分比;步驟3. 4、判斷被加密比特?cái)?shù)占碼流總比特?cái)?shù)的百分比是否已到達(dá)初始設(shè)置的加密閾值,若當(dāng)前被加密比特?cái)?shù)占碼流總比特?cái)?shù)的百分比小于加密閾值,則繼續(xù)加密下一個(gè)比特平面,否則結(jié)束當(dāng)前編碼片的加密過(guò)程;步驟4、重復(fù)步驟2、步驟3,直到加密完當(dāng)前H. 264碼流中的所有編碼片。
2.根據(jù)權(quán)利要求1所述的基于比特敏感度的H.264壓縮域比特平面加密方法,其特征在于所述的步驟1. 3的測(cè)試過(guò)程為20次。
全文摘要
本發(fā)明公開(kāi)了一種基于比特敏感度的H.264壓縮域比特平面加密方法,包括H.264碼流比特敏感度測(cè)試步驟、比特平面形成步驟以及比特平面加密步驟;利用H.264壓縮碼流的比特敏感度信息以及比特平面的思想來(lái)保證所有被加密的比特都是壓縮碼流中對(duì)視頻重建質(zhì)量最為重要的數(shù)據(jù),因此計(jì)算復(fù)雜度低,執(zhí)行速度快,能夠滿(mǎn)足視頻應(yīng)用的實(shí)時(shí)性要求。與以往的壓縮域視頻加密方法相比,加密更具有針對(duì)性,可以在加密數(shù)據(jù)量相同的條件下獲得更高的安全性,并且能夠保持加密后的碼流格式與H.264標(biāo)準(zhǔn)編解碼器兼容、加密前后碼流的壓縮比不變等。
文檔編號(hào)H04N7/26GK102523441SQ20111043496
公開(kāi)日2012年6月27日 申請(qǐng)日期2011年12月22日 優(yōu)先權(quán)日2011年12月22日
發(fā)明者卓力, 張菁, 李曉光, 毛年勝, 趙霙頔 申請(qǐng)人:北京工業(yè)大學(xué)