劉云龍,趙 樹
(海軍工程大學(xué),湖北 武漢430033)
隨著多媒體技術(shù)的發(fā)展,視頻信息量與日俱增,造成視頻信息的存儲和傳輸困難,嚴(yán)重阻礙了對有效信息的獲取和使用。對此,針對視頻的無損轉(zhuǎn)碼壓縮研究成為亟待解決的問題[1,2]。計(jì)算機(jī)的大力普及導(dǎo)致多媒體視頻逐漸被學(xué)校、企業(yè)、社區(qū)等機(jī)構(gòu)普遍采用,多媒體視頻的出現(xiàn)避免了時空的局限,拓展了信息知識的傳播范圍,促進(jìn)了視頻內(nèi)容的傳播速度[3,4]。在圖像技術(shù)異常發(fā)達(dá)的今天,尤其是隨著移動端設(shè)備中視頻分辨率的提高,基于多媒體視頻的傳輸速度和存貯空間的限制,需要更高技術(shù)的多媒體視頻壓縮技術(shù)[5,6]。
蔡于涵等人[7]研究的視頻壓縮算法是通過將HEVC與運(yùn)動矢量幀率的變換相結(jié)合的形式,針對原始視頻進(jìn)行抽幀處理,將抽取的幀頻幀率降低后HEVC編碼,結(jié)合從碼流中提取的運(yùn)動矢量,然后采用細(xì)化和幀率的變化實(shí)現(xiàn)視頻的有效壓縮;杜秀麗等人[8]研究的視頻壓縮算法是利用加權(quán)非局部相似性實(shí)現(xiàn)的,其原理是通過對變化較大的紋理塊尋找與其相鄰的自相似塊,產(chǎn)生輔助重構(gòu)信息塊的方法而達(dá)到視頻壓縮的目的;沈婷等人[9]研究的算法是同量化處理雙編碼參數(shù)模型的方法,根據(jù)相同量化參數(shù)對原始視頻進(jìn)行多次壓縮,從壓縮的視頻中將IPMBM和DCT系數(shù)從I幀中提取出來,以壓縮變量為分類特征實(shí)現(xiàn)視頻的壓縮目的。雖然上述方式都能有效地對多媒體視頻進(jìn)行壓縮處理,但是在壓縮過程中對視頻的清晰度和壓縮比尚待提高。
基于此,本文研究了基于關(guān)鍵幀的多媒體視頻無損轉(zhuǎn)碼壓縮算法,通過提取多媒體視頻中鏡頭的關(guān)鍵幀,優(yōu)化視頻索引過程和視頻分類效率,利用SPIHT編碼和自適應(yīng)碼率的控制方式,實(shí)現(xiàn)多媒體視頻的無損轉(zhuǎn)碼壓縮,為視頻壓縮提供有力的參考價值和實(shí)際應(yīng)用依據(jù)。
2.1.1 算法依據(jù)
視頻關(guān)鍵幀提取的依據(jù)為:在視頻序列中包含的兩個距離最近的圖像幀之間存在著高度的連續(xù)性和相似性。關(guān)于視頻的國際標(biāo)準(zhǔn)顯示,n個圖像組(GOP)組成視頻序列,相互間隔的I幀、P幀和B幀組成單個GOP,其中這三個幀之間存在著相互預(yù)測并能夠互相生成的關(guān)系,每個GOP當(dāng)中,I幀為第一幀,該幀使用的是圖像自帶的編碼信息,而P幀和B幀的編碼信息則需要通過預(yù)測才能夠獲取,因此每個GOP中必帶I幀,且每13幀中存在一個I幀。有價值和意義的鏡頭需通過連續(xù)的畫面構(gòu)成,中間不可中斷或打斷,單位以秒計(jì)算。因此,由關(guān)鍵幀生成的視頻序列文件可以篩選掉P幀和B幀,僅保留一個I幀。根據(jù)視頻國際標(biāo)準(zhǔn)的規(guī)定,基于逆變換(DCT)方式進(jìn)行全解壓變換,變換基本單元為8與8相乘的子塊,通過對I幀的解碼提取直流系數(shù)(DC),將視頻序列文件生成DC縮圖,將DC縮圖之間產(chǎn)生的差值視作兩幅圖像幀的相似度,利用模板匹配法提取相應(yīng)的關(guān)鍵幀。
2.1.2 算法實(shí)現(xiàn)過程
不同鏡頭中的兩個相鄰的圖像幀之間存在極高的相似度,對于不同鏡頭的兩個圖像幀之間的相似度則小許多?;谝曨l序列實(shí)行子塊劃分的解決策略,圖像幀中最中間的子塊則是場景視覺信息核心部分,該位置的信息重要性遠(yuǎn)高于周邊子塊所蘊(yùn)含的信息,因?yàn)獒槍蓚€圖像幀之間的差別的依據(jù)來說,最中間位置的子塊差值的重要性同樣高于周邊子塊,將權(quán)重差異(DC)引入關(guān)鍵幀提取算法中[11]。子塊和DC系數(shù)一一對應(yīng),越靠近中心位置的子塊信息越重要,對應(yīng)的DC系數(shù)權(quán)重值也相對越大,在度量相似度過程中應(yīng)將信息重要性與權(quán)重值成正比的分配,根據(jù)權(quán)重值進(jìn)行縮圖之間差值的計(jì)算,將計(jì)算結(jié)果視為鄰近兩幀之間的相似度,計(jì)算差值公式為
(1)
其中,Ii表示第i個I幀,Fi表示第i個的I幀縮圖直方圖信息。當(dāng)T(Ii,Ii+1)為最大值時,表示兩個I幀不屬于同一個鏡頭,則提取的關(guān)鍵幀為鏡頭中的第一幀。關(guān)鍵幀[10]的提取過程如圖1所示。
圖1 提取關(guān)鍵幀改進(jìn)算法流程
基于YUV顏色空間的視頻關(guān)鍵幀提取,可從視頻流匯總直接獲取YUV數(shù)據(jù),不用另轉(zhuǎn)換坐標(biāo)。根據(jù)人眼對亮度信號產(chǎn)生的敏感性,關(guān)鍵幀的提取可以Y分量的變化為依據(jù),結(jié)合一般圖像的特性,在同場景條件下,色度始終保持單一且具一致性,Y分量能夠有效優(yōu)化視頻序列檢測運(yùn)算過程,減小運(yùn)算量,提升運(yùn)算速度。
在提取的關(guān)鍵幀基礎(chǔ)上,將SPIHT算法與運(yùn)動補(bǔ)償相結(jié)合,可無損轉(zhuǎn)碼壓縮多媒體視頻圖像,壓縮的視頻能夠應(yīng)用于傳輸、各種網(wǎng)絡(luò)和解壓縮操作,壓縮示意圖如圖2所示。
圖2 壓縮步驟示意圖
2.2.1 編碼器
針對提取到的關(guān)鍵幀采取自適應(yīng)運(yùn)動補(bǔ)償方式獲取各幀的預(yù)測殘差圖和運(yùn)動向量,利用小波變換離散處理預(yù)測殘差圖,對離散處理后的結(jié)果在SPIHT算法基礎(chǔ)上展開量化小波系數(shù)及進(jìn)一步分層并編碼處理,以此獲取漸進(jìn)碼率,利用自適應(yīng)算術(shù)對碼率進(jìn)行編碼,直至碼流順利輸出;單獨(dú)對運(yùn)動向量完成無損編碼,然后將編碼輸出。在輸出過程中,解碼器將上述信息反饋至重構(gòu)幀,用于后續(xù)解碼操作的參考幀。
通常對于靜態(tài)紋理圖像采用的是普通小波編碼算法(U Chort),為了對轉(zhuǎn)換效果進(jìn)行優(yōu)化,離散小波變換的輸入一般引入無符號字符型圖像數(shù)據(jù),該圖像數(shù)據(jù)也應(yīng)用于解碼過程。由于普通圖像數(shù)據(jù)區(qū)間為[0,255],但是本文算法過程中會產(chǎn)生殘差數(shù),而這些殘差數(shù)值可能為復(fù)數(shù),即區(qū)間為[-255,255],雖然殘差數(shù)據(jù)通過運(yùn)動補(bǔ)償后會有所修正,但是依然存在較小的負(fù)值,若直接將圖像數(shù)據(jù)限制在[0,255]內(nèi),則重構(gòu)圖像數(shù)據(jù)必定有失真現(xiàn)象發(fā)生,失真累計(jì)過多易導(dǎo)致整個視頻質(zhì)量下降。
為解決圖像失真問題,采用改進(jìn)離散小波變換(U Short),該算法具備兩個字節(jié)的變量,能夠有效地對區(qū)間[-255,255]內(nèi)的圖像數(shù)據(jù)進(jìn)行處理,且結(jié)構(gòu)簡單,自身內(nèi)存較小。
通過SPIHT編碼從最上層依次每層對小波系數(shù)位平面進(jìn)行比特和定位信息的輸出,原始圖像和小波之間存在較高的相似度,為確保負(fù)值轉(zhuǎn)換后不出現(xiàn)偽大系數(shù)產(chǎn)生干擾的情況,應(yīng)針對所有像素殘差在進(jìn)行殘差圖數(shù)據(jù)輸入之前都增加255,保證輸入值不出現(xiàn)負(fù)值,從而消除偽大系數(shù)。當(dāng)解碼完成之后,將獲取的殘差再減少原增加的數(shù)值。
2.2.2 解碼器
采用反算術(shù)對獲取的漸進(jìn)碼流進(jìn)行編碼后再解碼,解碼包含兩種子帶方式,分別為直流和交流。直流子帶反量化,交流子帶SPIHT解碼,如果獲取的小波系數(shù)為I幀,可直接進(jìn)行轉(zhuǎn)換獲取重構(gòu)圖像,若是P幀,需要對運(yùn)動向量和殘?jiān)姹忍亓鬟M(jìn)行提取,參考前一步重構(gòu)幀進(jìn)行運(yùn)動補(bǔ)償,以此獲取當(dāng)下預(yù)測幀,將預(yù)測幀與重構(gòu)殘差相加,作為后續(xù)解碼步驟的參考幀。
2.2.3 自適應(yīng)碼率控制
為提高編碼精度和效率,穩(wěn)定解碼連續(xù)性,通過自適應(yīng)碼率控制輸出比特?cái)?shù),方法步驟如下:
1)初始化
自適應(yīng)碼率不控制I幀,即第一幀,編碼I幀完畢,編碼器可用寬帶設(shè)置為Rs,輸出緩沖區(qū):容量為Cs、水平為CB,則Rs=2Cs=4CB。幀頭信息和運(yùn)動向量:前一幀為Hp,當(dāng)前幀為HB,Hp和HB占用比特?cái)?shù)均為500。
當(dāng)前段視頻編碼使用比特?cái)?shù)計(jì)算公式為
Rr=UsRs-Rf
(2)
其中,Rf表示I幀編碼使用比特?cái)?shù),Us表示播放當(dāng)前視頻所需時間。
每幀平均輸出比特?cái)?shù)為
(3)
其中,Mr表示視頻序列幀與I幀之間的差值。
2)分配可用比特?cái)?shù)
由第二幀開始,SPIHT編碼計(jì)算當(dāng)前幀最大比特?cái)?shù)公式為
(4)
3)更新參數(shù)
各幀編碼均需要對控制碼率參數(shù)進(jìn)行更新,從編碼器角度分析,每幀可支配的比特?cái)?shù)通過自適應(yīng)碼率進(jìn)行合理的控制分配,壓縮算法根據(jù)分配的比特?cái)?shù)將對應(yīng)的比特流輸出,編碼器通過對現(xiàn)成的帶寬資源進(jìn)行充分利用,防止緩沖區(qū)“溢出”,以獲取一致的參考幀為目的,編碼器和解碼器解碼的前提條件均為開始設(shè)置的最低帶寬,則編碼器的碼率控制分為即當(dāng)前和最低兩種帶寬,進(jìn)而獲取較粗糙和較精細(xì)的兩種比特流,分別用于重建參考幀和編碼器輸出;解碼器同樣在當(dāng)前和最低兩種帶寬條件下進(jìn)行解碼,獲取比特流為粗糙型和精細(xì)型,分別用于重建參考幀和輸出圖像重建。
實(shí)驗(yàn)參數(shù)配置如表1所示。
表1 實(shí)驗(yàn)參數(shù)配置
采用本文算法分別與文獻(xiàn)[7]基于運(yùn)動矢量細(xì)化的幀率上變換與HEVC結(jié)合的視頻壓縮算法、文獻(xiàn)[8]基于加權(quán)非局部相似性的視頻壓縮感知多假設(shè)重構(gòu)算法及文獻(xiàn)[9]基于雙編碼參數(shù)模型的同量化參數(shù)雙壓縮檢測算法展開對比實(shí)驗(yàn),針對關(guān)鍵幀提取的查全率和準(zhǔn)確率進(jìn)行對比,分別選取多段動畫片段、影視片段和廣告宣傳片段為測試視頻,其中動畫片段具有變化較快的場景和較多的物體運(yùn)動,影視片段的區(qū)別是沒有偏快的場景變化,而廣告宣傳片段和動畫片段一樣,場景變化很快,同時切變更多。測試結(jié)果如表2所示。
表2 視頻片段測試結(jié)果
由表2可知,本文算法與三種對比算法相比,提取關(guān)鍵幀中有效圖像數(shù)量較多,且查全率、查準(zhǔn)率及提取時間均占有較大優(yōu)勢,這是因?yàn)楸疚乃惴☉?yīng)用后提高了圖像中心位置運(yùn)動的敏感度,使得關(guān)鍵幀提取效果優(yōu)勢顯著。
針對壓縮視頻YUV顏色空間中的Y、U和V三個分量的信噪比(PSNR)值進(jìn)行對比實(shí)驗(yàn),PSNR是對壓縮視頻畫質(zhì)進(jìn)行衡量的重要參數(shù)之一,利用視頻序列在不同帶寬條件下分別進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如圖3所示。
圖3 視頻序列測試結(jié)果
由圖3可知,在不同帶寬條件下,本文算法中三個分量的PSNR值均為最大值,Y分量中比文獻(xiàn)[7]算法、文獻(xiàn)[8]算法和文獻(xiàn)[9]算法分別高6.04、4.17和2.81;U分量中分別高6.24、2.97和3.06;V分量中分別高7.31、4.5和3.12。表明本文算法具有較好的編碼和解碼計(jì)算能力。
在PSNR值為40的情況下,將不同分辨率的廣告宣傳片段應(yīng)用到不同場景中,對比三種算法壓縮后的壓縮比,實(shí)驗(yàn)結(jié)果如表3所示。
表3 壓縮比對比結(jié)果
由表3可知,采用本文算法的廣告宣傳片段壓縮比遠(yuǎn)超另外三種對比算法,表明本文算法能夠有效提高圖像幀的壓縮比,視頻分辨率越高,壓縮比相對越大。這主要是因?yàn)楸疚牟捎玫氖腔陉P(guān)鍵幀的無損轉(zhuǎn)碼壓縮,最大程度確保了關(guān)鍵信息的清晰度。以上實(shí)驗(yàn)結(jié)果驗(yàn)證了本文算法能夠有效保證多媒體視頻的無損轉(zhuǎn)碼壓縮,提升壓縮后的視頻清晰度。
基于關(guān)鍵幀進(jìn)行的無損轉(zhuǎn)碼壓縮多媒體視頻能夠有效保證壓縮后的視頻具有足夠的清晰度,本文將I幀包含的分量信息與圖像幀中子塊之間差值相結(jié)合,將較大的權(quán)重值分配給中間位置的DC系數(shù),放大圖像幀中相對重要性更大的子塊差值,有效提取視頻中的關(guān)鍵幀,以此為基礎(chǔ),結(jié)合SPIHT編碼和運(yùn)動補(bǔ)償?shù)姆绞?實(shí)現(xiàn)多媒體視頻的無損轉(zhuǎn)碼壓縮。在后續(xù)研究中,將進(jìn)一步加強(qiáng)針對較大運(yùn)動范圍時能夠盡可能獲取最小預(yù)測殘差幀,促使基于關(guān)鍵幀的多媒體視頻無損轉(zhuǎn)碼壓縮算法具備更好的實(shí)際應(yīng)用價值。