彭登云,陽(yáng) 溢,戚 曹
(1.重慶財(cái)經(jīng)職業(yè)學(xué)院實(shí)踐教學(xué)中心,重慶402160;2.重慶通信學(xué)院 信息工程系,重慶 400035)
現(xiàn)代數(shù)字技術(shù)的高速發(fā)展促使數(shù)字視頻的應(yīng)用越來(lái)越深入日常生活,但是任何技術(shù)的發(fā)展都可能帶來(lái)負(fù)面影響。人們?cè)谙硎芨咝市畔鬏數(shù)耐瑫r(shí),也面臨著越來(lái)越嚴(yán)峻的信息安全問(wèn)題,一些涉密視頻在傳輸時(shí)可能被惡意攻擊者截獲。因此,如何對(duì)涉密視頻進(jìn)行有效保護(hù)成為了學(xué)術(shù)界研究的熱點(diǎn)之一,而加密技術(shù)和信息隱藏技術(shù)就是解決此問(wèn)題的兩個(gè)重要方向。
視頻加密技術(shù)通過(guò)將視頻數(shù)據(jù)經(jīng)過(guò)加密函數(shù)和加密密鑰的轉(zhuǎn)換,變成看似無(wú)意義的密文,而接收方則可以通過(guò)解密函數(shù)和解密密鑰將密文還原成原始視頻數(shù)據(jù),達(dá)到保護(hù)涉密視頻的目的[1-3]。但如果攻擊者截獲了加密數(shù)據(jù),其看不懂的外在特征反而提醒了該數(shù)據(jù)的重要性,促使攻擊者破解密文,帶來(lái)新的安全隱患。而將涉密視頻內(nèi)容進(jìn)行隱藏使之不可見(jiàn)則可規(guī)避此類(lèi)問(wèn)題。信息隱藏技術(shù)核心在于將秘密信息以不可見(jiàn)的形式嵌入到載體文件中進(jìn)行傳輸,接收方使用特殊的提取手段可以恢復(fù)原始信息[4-6]。但是由于視頻數(shù)據(jù)量龐大,而載體的嵌入容量決定著嵌入的秘密信息數(shù)據(jù)量。因此,新的針對(duì)視頻的隱藏技術(shù)亟待研究和探索。
數(shù)字視頻去霧算法是近年來(lái)數(shù)字多媒體信號(hào)處理領(lǐng)域研究的熱點(diǎn)。自然界中霧氣的存在對(duì)人們采集清晰的視頻畫(huà)面造成了一定的困難,去霧算法目的在于去除視頻中的霧氣,增強(qiáng)畫(huà)面的對(duì)比度和清晰度,使視頻內(nèi)容易于識(shí)別[7-10]。對(duì)去霧算法逆向思考就會(huì)得到啟發(fā),既然霧氣的存在對(duì)于辨識(shí)畫(huà)面造成了一定的困難,為什么不可以將清晰視頻加上霧氣,對(duì)其中的涉密信息進(jìn)行隱藏呢?
本算法正是結(jié)合上述幾點(diǎn)思考提出的。在涉密通信時(shí),傳輸?shù)囊曨l往往包含了大量的涉密信息。為了確保信息安全,可以先根據(jù)涉密視頻中是否含有明顯涉密內(nèi)容來(lái)對(duì)視頻進(jìn)行選擇性的局部加密,然后通過(guò)生成自然界中的霧氣遮罩,對(duì)視頻畫(huà)面加霧來(lái)獲得隱藏效果。而接收者將加霧后的視頻運(yùn)用逆運(yùn)算恢復(fù)原始視頻,獲取涉密信息。以上就是視頻加霧隱藏算法的基本概念。
霧是一種自然天氣現(xiàn)象,是由空氣中的水汽在大氣層穩(wěn)定、氣溫接近零點(diǎn)、相對(duì)濕度飽和的條件下,凝結(jié)成微小的水滴懸浮在空中所形成的。當(dāng)環(huán)境中存在霧時(shí),每一個(gè)霧滴就是一個(gè)散射面。這時(shí),有些光線(xiàn)不能直射過(guò)去,而是被散射出來(lái)了,而后又被再次散射甚至多次散射,霧就變成白茫茫一片了。霧滴對(duì)成像光線(xiàn)的多次散射過(guò)程如圖1 所示。
Narasimhan 等人[11]給出霧天環(huán)境下攝像機(jī)所拍攝的圖像像素I(x)的簡(jiǎn)化模型表示為
式中:x 表示空間坐標(biāo);J(x)為沒(méi)有霧的條件下采集的圖像;t(x)表示介質(zhì)在圖像位置x 處的傳播函數(shù)或者透射率;A 表示天空的亮度;U(x)表示大氣耗散函數(shù)。式(1)第一項(xiàng)表示霧的散射造成一部分物體表面反射光的損失,而到達(dá)成像傳感器形成景物圖片的是未被散射的部分,成像反射光的強(qiáng)度隨傳播距離的增大而衰減;第二項(xiàng)表示由于霧對(duì)自然光也會(huì)發(fā)生散射,從而影響景物圖片,其強(qiáng)度隨著傳播距離的增大而逐漸增加[12]。歸納起來(lái),霧的散射對(duì)可見(jiàn)光成像的影響主要集中在3 個(gè)方面:1)霧對(duì)成像光線(xiàn)的透射衰減,其衰減強(qiáng)度與穿過(guò)霧的距離相關(guān),使成像亮度和對(duì)比度降低,在霧較厚時(shí)目標(biāo)甚至不能成像;2)霧對(duì)非成像光線(xiàn)的散射,這部分光在無(wú)霧時(shí)不參與成像,有霧時(shí)呈現(xiàn)半透明白色,成為霧本身的圖像,使整個(gè)圖像對(duì)比度降低;3)成像光線(xiàn)被霧散射后,其中一部分不能成像,另一部分的成像由于偏離了本來(lái)的位置,造成圖像邊緣模糊,并且使圖像對(duì)比度降低。
上述3 點(diǎn)是霧氣對(duì)可見(jiàn)光成像影響的最本質(zhì)特征,因此,可以從以下幾點(diǎn)構(gòu)建霧氣模型:1)根據(jù)景深的不同將視頻畫(huà)面劃分成不同區(qū)域,按照由近到遠(yuǎn)的順序逐漸加大畫(huà)面亮度的降低程度;2)生成與視頻畫(huà)面相匹配的薄霧遮罩和濃霧遮罩,分別與整幅畫(huà)面和特定區(qū)域相融合,形成霧氣效果;3)將視頻畫(huà)面中的明顯邊界進(jìn)行模糊化處理。
基于上述構(gòu)建霧氣模型的思考,結(jié)合加密和信息隱藏技術(shù),本文設(shè)計(jì)了一種新穎的通過(guò)對(duì)原始涉密視頻加霧來(lái)隱藏涉密信息的方法,其加霧算法過(guò)程如圖2a 所示。原始涉密視頻通過(guò)分幀處理為連續(xù)的視頻幀,然后算法識(shí)別判斷視頻中是否含有明顯涉密內(nèi)容,視判斷結(jié)果分別采取不同的處理方案并降低亮度。與此同時(shí),每間隔一定數(shù)量幀根據(jù)當(dāng)前視頻幀計(jì)算一次薄霧遮罩,并與之前處理過(guò)的視頻幀融合得到加霧視頻幀。最后對(duì)視頻幀做相關(guān)優(yōu)化處理和幀重組得到加霧視頻。而接收方通過(guò)恢復(fù)算法可以獲得原始視頻,其算法過(guò)程如圖2b 所示。需要指出的是,由于視頻畫(huà)面具有運(yùn)動(dòng)性,而運(yùn)動(dòng)又時(shí)快時(shí)慢,因此需要根據(jù)實(shí)際情況調(diào)整薄霧遮罩的計(jì)算周期。同樣地,在局部加密和加濃霧遮罩時(shí)也需要考慮視頻畫(huà)面的運(yùn)動(dòng)情況。
圖2 視頻的加霧隱藏和恢復(fù)算法框圖
1)計(jì)算薄霧遮罩
為了得到和視頻畫(huà)面景深相匹配的薄霧遮罩,可先對(duì)視頻幀按遠(yuǎn)近程度進(jìn)行三區(qū)域分割[13],分割后三區(qū)域的灰度值分別設(shè)定為0,127,255。這是因?yàn)榍熬暗撵F氣較薄,而后景的霧氣較厚,0(黑色)和255(白色)分別模擬了無(wú)霧氣和霧氣完全覆蓋景物的情況,而127(中度灰色)則模擬了霧氣厚度一般的情況。但是,這樣的分割圖其各區(qū)域邊緣非常銳利,不利于形成平滑的薄霧遮罩。可以通過(guò)頻域低通濾波器濾除掉分割圖的高頻分量得到平滑效果。為此,按式(2)所示的n 階頻域低通濾波器來(lái)進(jìn)行平滑,得到和視頻畫(huà)面相匹配的薄霧遮罩
式中:D0為原點(diǎn)到截止頻率的距離,是給定的非負(fù)數(shù);D(u,v)是點(diǎn)(u,v)到頻率矩形中心的距離,即,M 和N 是圖像的尺寸。
2)選取濃霧遮罩
對(duì)于含明顯涉密內(nèi)容的視頻而言,加入薄霧雖具有一定的隱藏效果,但這還不夠。為此考慮在涉密區(qū)域加入濃霧遮罩,這需要事先采集自然界中各種形狀的濃霧遮罩并編號(hào),建立類(lèi)型豐富的云端濃霧庫(kù)。當(dāng)視頻中含明顯涉密內(nèi)容時(shí),從濃霧庫(kù)中選取合適的濃霧遮罩來(lái)對(duì)涉密區(qū)域加濃霧處理,并將對(duì)應(yīng)濃霧遮罩編號(hào)嵌入到視頻中。這樣,當(dāng)接收端收到加霧視頻后,可以提取出濃霧遮罩編號(hào),并從云端濃霧庫(kù)中得到對(duì)應(yīng)的濃霧遮罩來(lái)恢復(fù)原始視頻。
3)騎士巡游
騎士巡游問(wèn)題是由數(shù)學(xué)家Euler 于18 世紀(jì)50 年代末首先提出的,即騎士從棋盤(pán)上的某個(gè)初始格子開(kāi)始,以象棋中“馬跳斜日”的方式(水平或垂直方向跳動(dòng)1 個(gè)格子,垂直或水平方向跳動(dòng)2 個(gè)格子)遍歷棋盤(pán)上的每個(gè)格子一次且僅一次[14]。如圖3 所示,其中黑色連線(xiàn)表示騎士巡游的路徑。騎士巡游有置亂矩陣的作用,通常被用于圖像加密,并且通過(guò)步長(zhǎng)可以控制置亂度。因此,本文用騎士巡游來(lái)對(duì)視頻涉密內(nèi)容進(jìn)行加密和模糊圖像邊界。
圖3 8×8 棋盤(pán)騎士巡游路徑
4)霧氣優(yōu)化
為了使加霧效果更加自然,應(yīng)對(duì)霧氣遮罩以及畫(huà)面中的明顯邊界做模糊處理。對(duì)于加霧后的視頻幀而言,可以使用騎士巡游對(duì)整個(gè)視頻幀進(jìn)行遍歷,然后每隔一定的步長(zhǎng)將像素值提高一定的亮度,模擬霧滴效果;對(duì)于濃霧遮罩而言,可以做濃霧邊緣像素值漸變處理,方法是將其邊緣點(diǎn)的像素值設(shè)定為其周?chē)欢ǚ秶鷥?nèi)所有點(diǎn)的平均值;對(duì)于畫(huà)面中其他明顯的邊界,以邊界點(diǎn)為中心,在一個(gè)小棋盤(pán)的范圍內(nèi)做小步長(zhǎng)的騎士巡游,獲得模糊邊界的效果。當(dāng)接收方恢復(fù)視頻時(shí),應(yīng)先對(duì)分幀后的視頻幀采取相應(yīng)的霧氣優(yōu)化逆運(yùn)算作為霧氣遮罩去除前的預(yù)處理。
步驟1:將原始視頻V 進(jìn)行分幀,變?yōu)閹蛄蠭,然后再將視頻幀的色彩空間由YUV 轉(zhuǎn)換為RGB。
步驟2:每間隔30 幀按照2.2 節(jié)相關(guān)算法得到薄霧遮罩Fb并保存。
步驟3:判斷視頻中是否含有明顯涉密內(nèi)容,若有,則對(duì)每幀中的涉密內(nèi)容區(qū)域利用騎士巡游路徑進(jìn)行局部加密得到加密視頻幀Ie,然后從云端濃霧庫(kù)中選取相匹配的濃霧遮罩Fh,并按式(3)與Ie在RGB 通道中融合得到加濃霧視頻幀Ih;若無(wú),則不做處理,此處視頻幀也用Ih表示
式中:t1為濃霧強(qiáng)度,t1∈(0,1)。
步驟4:將Ih的亮度按照式(4)降低,得到亮度降低視頻幀Il
步驟5:將薄霧遮罩Fb按式(5)與Il在RGB 通道融合得到加霧視頻幀If
式中:t2為薄霧強(qiáng)度;t2∈(0,1),且t1+t2=1。
步驟6:按2.2 節(jié)所示對(duì)加霧視頻幀做霧氣優(yōu)化處理,并將處理后的視頻幀色彩空間由RGB 轉(zhuǎn)換到Y(jié)UV,重組視頻幀,得到加霧視頻Vf,最后將濃霧遮罩編號(hào)和位置信息按文獻(xiàn)[5]算法嵌入到加霧視頻中。
步驟1:若加霧視頻中存在濃霧遮罩,提取其編號(hào)和位置信息,并將加霧視頻轉(zhuǎn)換為幀序列,色彩空間由YUV 轉(zhuǎn)換為RGB,并對(duì)視頻幀做霧氣優(yōu)化逆運(yùn)算。
步驟2:按式(6)所示去除薄霧遮罩,得到加濃霧且改變了亮度的視頻幀I'l
步驟4:若I'h中存在濃霧遮罩,則從云端濃霧庫(kù)中選取濃霧遮罩Fh,按式(8)所示去除濃霧遮罩,得到局部加密視頻幀I'e
步驟5:對(duì)I'e的局部加密區(qū)域進(jìn)行解密,得到恢復(fù)視頻幀I'。
步驟6:將I'色彩空間由RGB 轉(zhuǎn)換為YUV,重組視頻幀,得到恢復(fù)視頻V'。實(shí)驗(yàn)選取Highway 和Container 為測(cè)試視頻,將上述算法在MATLAB7.10 和VC++6.0 平臺(tái)上進(jìn)行了仿真實(shí)驗(yàn),并在恢復(fù)視頻質(zhì)量客觀評(píng)價(jià),加霧前后視頻數(shù)據(jù)量變化和算法性能等方面做相關(guān)實(shí)驗(yàn)工作。以下實(shí)驗(yàn)中Container 視頻的加霧強(qiáng)度均存在t1+t2=1 的關(guān)系。
現(xiàn)將兩個(gè)原始視頻進(jìn)行加霧實(shí)驗(yàn),其中,Highway 不含明顯涉密內(nèi)容,故不加濃霧,薄霧強(qiáng)度t2=0.4。Container 含有一艘涉密輪船,故要對(duì)其局部加密并加濃霧,設(shè)定的濃霧強(qiáng)度和薄霧強(qiáng)度分別為t1=0.6,t2=0.4。圖4 為Highway 第100幀的加霧示意圖,可見(jiàn),加霧后的視頻具有較自然的霧氣隱藏效果,而恢復(fù)后視頻的視覺(jué)質(zhì)量與原始視頻相比并無(wú)明顯差異。Container 第100 幀的加霧結(jié)果如圖5 所示。
圖4 Highway 第100 幀加霧
表1 為不同的加霧強(qiáng)度下,恢復(fù)視頻的平均PSNR??梢钥闯觯屿F強(qiáng)度的變化對(duì)于恢復(fù)視頻的PSNR 影響并不明顯,只是隨著薄霧強(qiáng)度的降低,其PSNR 略有提高,并且所有恢復(fù)幀的PSNR 都維持在30 dB 以上,具有較好的視覺(jué)質(zhì)量。
將不同加霧強(qiáng)度視頻經(jīng)H.264 編碼,其碼率大小如表2所示??芍?,隨著薄霧強(qiáng)度的增強(qiáng),編碼后的加霧視頻碼率呈降低的趨勢(shì)。這是由于加霧處理改變了視頻幀像素值統(tǒng)計(jì)特性,幀內(nèi)和幀間相關(guān)性都有所增強(qiáng),更加有利于視頻壓縮。由此得出,本算法在保證視頻安全傳輸?shù)耐瑫r(shí),可以有效降低視頻數(shù)據(jù)量。
圖5 Container 第100 幀加霧
表1 恢復(fù)視頻的平均PSNR dB
表2 不同加霧強(qiáng)度視頻經(jīng)H.264 編碼后的碼率 kbit/s
1)隱蔽性和隱藏容量
由上述視頻加霧與恢復(fù)實(shí)驗(yàn)可知,本算法能夠?qū)ι婷芤曨l實(shí)施有效隱藏,具有良好的隱蔽性。在隱藏容量方面,以往的視頻信息隱藏算法往往通過(guò)計(jì)算視頻可隱藏比特?cái)?shù)來(lái)衡量隱藏容量。但對(duì)本算法而言,所謂的涉密信息比特?cái)?shù)很難量化,而且無(wú)論涉密信息有多少,只要加霧可以對(duì)其隱藏,就應(yīng)該認(rèn)為算法有效。所以以往的隱藏容量計(jì)算方法不適用于本算法,此處不做分析。
2)時(shí)間復(fù)雜性
為了分析本算法的時(shí)間復(fù)雜性,先將原始視頻直接H.264編解碼并記錄幀平均延遲,然后將原始視頻加霧再H.264編解碼(解碼含加霧視頻恢復(fù))并記錄幀平均延遲。實(shí)驗(yàn)環(huán)境為:Windows XP 系統(tǒng),AMD AthlonTMII X2 220 處理器,2.79 GHz 主頻,2 Gbyte 內(nèi)存,實(shí)驗(yàn)結(jié)果如表3 所示。可知,加霧視頻編解碼延遲明顯大于原始視頻直接編解碼延遲,這是由于本算法是對(duì)視頻每幀進(jìn)行加霧操作,在一定程度上增加了運(yùn)算過(guò)程的復(fù)雜性。
表3 原始視頻編解碼和加霧視頻編解碼延遲 s/f
3)安全性
采用文獻(xiàn)[10]算法對(duì)加霧視頻進(jìn)行去霧實(shí)驗(yàn),結(jié)果如圖6 和圖7 所示??梢钥闯觯舅惴梢杂行?duì)抗去霧攻擊。去霧后,雖然畫(huà)面整體對(duì)比度增強(qiáng),但是細(xì)節(jié)損失嚴(yán)重,而且即便去霧具有一定效果,也并不會(huì)對(duì)局部加密區(qū)域的安全構(gòu)成威脅。實(shí)驗(yàn)表明,該算法具有較高的安全性。
圖6 Highway 加霧視頻去霧結(jié)果
圖7 Container 加霧視頻去霧結(jié)果
本文提出了一種通過(guò)構(gòu)建霧氣模型,并對(duì)涉密內(nèi)容進(jìn)行選擇加密的視頻加霧隱藏算法。實(shí)驗(yàn)結(jié)果表明本算法性能可靠,易于操作,可以有效隱藏視頻涉密信息,降低視頻數(shù)據(jù)量,抵抗去霧攻擊等,為涉密視頻的隱藏提供了新思路。
但在,本算法在實(shí)驗(yàn)中也暴露出一些不足之處。例如,加霧畫(huà)面的自然程度有待進(jìn)一步提高;濃霧遮罩匹配度不夠高;算法延遲需降低等。對(duì)此,今后可在這幾方面加以改進(jìn):1)深入研究霧氣的形成機(jī)理,進(jìn)一步提高加霧自然程度;2)完善云端濃霧庫(kù),提高濃霧遮罩匹配度;3)降低算法的時(shí)間復(fù)雜性。
[1]佟玲玲,李揚(yáng)曦,黃文廷.視頻隱私保護(hù)技術(shù)綜述[J].通信學(xué)報(bào),2013,34(8):154-160.
[2]DAI F,TONG L,ZHANG Y. Restricted H.264/AVC video coding for privacy protected video scrambling[J]. Journal of Visual Communication and Image Representation,2011,22(6):479-490.
[3]陳志玉,宋建新.基于H.264/AVC 視頻安全級(jí)別可分的加密方案[J].電視技術(shù),2013,37(5):15-18.
[4]SU Y T,ZHANG C Q,ZHANG C T. A video steganalytic algorithm against motion-vector-based steganography[J]. Signal Processing,2011,91(8):1901-1909.
[5]LIAO K,LIAN S,GUO Z. Efficient information hiding in H.264/AVC video coding[J]. Telecommunication Systems,2012,49(2):261-269.
[6]XU D W,WANG R D,WANG J C. Prediction mode modulated data-hiding algorithm for H.264/AVC[J]. Journal of Real-Time Image Process,2010,5(1):1-10.
[7]郭璠,蔡自興,謝斌. 基于霧氣理論的視頻去霧算法[J]. 電子學(xué)報(bào),2011,39(9):2019-2025.
[8]LI L L,LIU Q,GUO J M,et al.Intelligent video defogging technology based on covariance and perceptron[C]//Proc.7th International Conference on Natural Computation.[S.l.]:IEEE Press,2011:161-165.
[9]XU D B,XIAO C B,YU J.Color preserving defog method for foggy or haze scenes[C]//Proc.4th International Conference on Computer Vision Theory and Applications(VISAPP). Algarve,Portugal:IEEE Press,2009:69-73.
[10]HE K M,SUN J,TANG X O. Single image haze removal using dark channel prior[C]//Proc.IEEE Computer Society Conference on Computer Vision and Pattern Recognition.[S.l.]:IEEE Press,2009:1956-1963.
[11]NARASIMHAN S G,NAYAR S K.Removing weather effects from monochrome images[C]//Proc. IEEE Computer Society Conference on Computer Vision and Pattern Recognition. Washingion DC:IEEE Press,2001:186-193.
[12]馬忠麗,文杰,梁秀梅.海霧下的視頻圖像去霧算法研究[J].計(jì)算機(jī)應(yīng)用研究,2014,31(9):2836-2840.
[13]KANUNGO B.An efficient k-means clustering algorithm:analysis and implementation[C]//Proc. IEEE Computer Society Conference on Pattern Analysis and Machine Intelligence.[S.l.]:IEEE Press,2002:881-892.
[14]姜德雷,柏森,董文明.基于廣義騎士巡游的圖像比特位平面間置亂算法[J].自然科學(xué)進(jìn)展,2009,19(6):691-696.