專(zhuān)利名稱:基于分布式視頻編碼的邊信息生成系統(tǒng)及方法
技術(shù)領(lǐng)域:
本發(fā)明屬于視頻編碼技術(shù)領(lǐng)域,涉及分布式視頻編碼系統(tǒng)以及利用前 驅(qū)和后繼已 解碼關(guān)鍵幀進(jìn)行運(yùn)動(dòng)估計(jì)、平滑和幀內(nèi)插,可用于分布式視頻編碼系統(tǒng)及其它幀內(nèi)插領(lǐng)域。
背景技術(shù):
傳統(tǒng)的視頻編碼標(biāo)準(zhǔn)如MPEG-X和H. 26X系列,主要依靠編碼器利用編碼信號(hào)的統(tǒng) 計(jì)特性來(lái)實(shí)現(xiàn)壓縮編碼,從而導(dǎo)致編碼器的運(yùn)算復(fù)雜度是解碼器的5至10倍以....匕近年來(lái), 一些新的視頻應(yīng)用如無(wú)線視頻傳感器網(wǎng)絡(luò)、移動(dòng)視頻電話和無(wú)線視頻監(jiān)控等在快速地融入 和改變著人們的生活。然而,這些新出現(xiàn)的多媒體應(yīng)用對(duì)視頻的編解碼系統(tǒng)提出了與以往 不同的需求,即編碼器因資源有限需要盡可能地簡(jiǎn)單,而解碼器擁有較多資源可進(jìn)行復(fù)雜 地解碼運(yùn)算,這對(duì)視頻編、解碼系統(tǒng)的結(jié)構(gòu)設(shè)計(jì)提出了新的挑戰(zhàn)。分布式視頻編碼具有與傳統(tǒng)編碼標(biāo)準(zhǔn)相反的系統(tǒng)結(jié)構(gòu),與上述應(yīng)用需求完全吻 合。20世紀(jì)70年代,Slepian和Wolf提出了分布式信源無(wú)損編碼理論,隨后Wyner和Ziv 提出了有損分布式信源編碼,這兩個(gè)理論奠定了分布式視頻編碼的理論基礎(chǔ)。與傳統(tǒng)的視 頻編碼系統(tǒng)結(jié)構(gòu)有很大的不同,分布式視頻編碼系統(tǒng)將主要的高運(yùn)算復(fù)雜度模塊從編碼端 轉(zhuǎn)移到了解碼端,由解碼器利用信源的相關(guān)性實(shí)現(xiàn)高效的壓縮編碼。分布式視頻編碼已成 為國(guó)內(nèi)外的研究熱點(diǎn)。在分布式視頻編碼系統(tǒng)中,將輸入視頻序列分為關(guān)鍵幀和Wyner-Ziv幀,兩者 在編碼側(cè)進(jìn)行獨(dú)立編碼,解碼側(cè)聯(lián)合解碼,如圖1所示。首先把輸入序列分為關(guān)鍵幀和 Wyner-Ziv幀,其中關(guān)鍵幀采用H. 264/AVC幀內(nèi)編/解碼,而對(duì)于Wyner-Ziv幀,首先對(duì)每 個(gè)Wyner-Ziv幀進(jìn)行離散余弦變換(DCT)并提取系數(shù)帶,對(duì)系數(shù)帶進(jìn)行Zigzag掃描排序; 然后對(duì)系數(shù)帶均勻量化,對(duì)量化系數(shù)提取比特面,將比特面分別送入LDPC編碼器進(jìn)行編 碼;在LDPC編碼前,先進(jìn)行無(wú)反饋的比特面速率控制,從而使LDPC編碼在輸入信息位不變 的情況下,輸出符合速率控制長(zhǎng)度的校驗(yàn)位。解碼時(shí),首先對(duì)關(guān)鍵幀進(jìn)行H. 264/AVC幀內(nèi)解 碼,利用解碼出的前后兩幀關(guān)鍵幀,通過(guò)運(yùn)動(dòng)補(bǔ)償內(nèi)插產(chǎn)生邊信息;然后對(duì)邊信息幀進(jìn)行與 編碼側(cè)相同變換、掃描、量化和比特面提取,并送入LDPC解碼器,相關(guān)模型計(jì)算拉普拉斯參 數(shù);LDPC解碼器利用收到的校驗(yàn)位、對(duì)應(yīng)邊信息系數(shù)帶以及相關(guān)信息,對(duì)各個(gè)系數(shù)帶從最 高位平面開(kāi)始依次解碼;接下來(lái),將LDPC解碼器輸出結(jié)果依次通過(guò)合并位平面、反量化和 反變換得到Wyner-Ziv幀的解碼重構(gòu)圖像。邊信息在分布式視頻編碼中是一個(gè)非常重要的概念,邊信息是解碼器所能得到的 關(guān)于編碼幀的信息。分布式視頻編碼系統(tǒng)性能很大程度上依賴于邊信息與原始Wyner-Ziv 幀的相關(guān)性,生成的邊信息與Wyner-Ziv幀越相似,Wyner^Ziv幀的恢復(fù)圖像質(zhì)量越高,系 統(tǒng)的性能也越好。因此,準(zhǔn)確生成邊信息成為提高分布式視頻編碼系統(tǒng)編碼效率的一個(gè)關(guān) 鍵問(wèn)題。生成邊信息的過(guò)程就是利用相鄰重構(gòu)幀的空域和時(shí)域信息對(duì)編碼圖像的一個(gè)估 值過(guò)程。一般而言,視頻序列相鄰圖像之間的時(shí)域相關(guān)性強(qiáng)于圖像內(nèi)部的空域相關(guān)性,所以邊信息的插值主要依賴于時(shí)域信息。邊信息的生成方法很多,主要有以下幾種類(lèi)型邊信息 的生成方法很多,主要方法如F 1)不考慮圖像的運(yùn)動(dòng)情況,直接將相鄰的前后已解碼關(guān) 鍵幀取均值作為邊信息,該方法運(yùn)算復(fù)雜度低,但對(duì)于運(yùn)動(dòng)劇烈、場(chǎng)景變化大的視頻序列, 邊信息質(zhì)量較差;2)幀插值算法,包括幀間內(nèi)插法和幀間外推法。其中內(nèi)插法生成的邊信 息幀圖像質(zhì)量?jī)?yōu)于外推算法?,F(xiàn)有的邊信息內(nèi)插算法大多是基于運(yùn)動(dòng)補(bǔ)償時(shí)域內(nèi)插(Motion CompensatedTemporal Interpolation)。在傳統(tǒng)的視頻系統(tǒng)中,MCTI屬于解碼端的后處理 模塊,主要用于提高解碼序列的幀率,使視頻序列的視覺(jué)效果更加平滑。MCTI主要利用視頻 圖像序列運(yùn)動(dòng)矢量場(chǎng)的空間相關(guān)性和時(shí)間相關(guān)性來(lái)估計(jì)插值幀的運(yùn)動(dòng)矢量場(chǎng)。較為經(jīng)典的 邊信息生成方法是基于空間平滑的的運(yùn)動(dòng)補(bǔ)償內(nèi)插方 法,如圖3所示。該算法利用前后兩 幀相鄰已解碼圖像,進(jìn)行前向運(yùn)動(dòng)估計(jì)、雙向運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)平滑得到準(zhǔn)確的運(yùn)動(dòng)域信息, 然后通過(guò)雙向運(yùn)動(dòng)補(bǔ)償來(lái)內(nèi)插生成邊信息?,F(xiàn)有搜索方法插值生成的邊信息,缺少編碼側(cè)原始Wyner-Ziv幀的信息,沒(méi)有利 用它與相鄰關(guān)鍵幀原始圖像的準(zhǔn)確相關(guān)性來(lái)輔助解碼側(cè)運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)平滑,從而導(dǎo)致解 碼端的運(yùn)動(dòng)估計(jì)易陷入局部?jī)?yōu)化,搜索出的運(yùn)動(dòng)矢量不夠準(zhǔn)確;對(duì)運(yùn)動(dòng)矢量統(tǒng)一進(jìn)行優(yōu)化, 而沒(méi)有針對(duì)不可靠的運(yùn)動(dòng)矢量單獨(dú)采取措施;運(yùn)動(dòng)補(bǔ)償只是采用簡(jiǎn)單的均值內(nèi)插,生成的 邊信息有明顯的塊效應(yīng)。這些缺點(diǎn)都影響了邊信息生成質(zhì)量,進(jìn)一步影響整個(gè)系統(tǒng)的率失 真性能。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服上述已有技術(shù)的缺點(diǎn),提出一種基于分布式視頻編碼的邊 信息生成方法,通過(guò)編碼側(cè)原始圖像的相關(guān)性輔助運(yùn)動(dòng)估計(jì)和平滑,并采用重疊塊加權(quán)插 值補(bǔ)償,以得到較為準(zhǔn)確的邊信息,提高整個(gè)系統(tǒng)的率失真性能。為實(shí)現(xiàn)上述目的,本發(fā)明提供的基于分布式視頻編碼的邊信息生成系統(tǒng)及方法, 包括相關(guān)性計(jì)算模塊用于計(jì)算編碼側(cè)當(dāng)前Wyner-ZiV幀與其前驅(qū)和后繼關(guān)鍵幀之間 塊相關(guān)性,并對(duì)相關(guān)性進(jìn)行粗量化,發(fā)送到解碼器;運(yùn)動(dòng)估計(jì)模塊解碼器利用前驅(qū)和后繼已解碼關(guān)鍵幀,在原始圖像相關(guān)性的輔助 下進(jìn)行塊匹配運(yùn)動(dòng)估計(jì),得到精確的運(yùn)動(dòng)矢量;運(yùn)動(dòng)平滑模塊在原始圖像相關(guān)性的輔助下,用于對(duì)運(yùn)動(dòng)估計(jì)得到的運(yùn)動(dòng)矢量進(jìn) 行空間權(quán)重濾波,得到平滑的運(yùn)動(dòng)矢量;運(yùn)動(dòng)補(bǔ)償模塊用于根據(jù)運(yùn)動(dòng)估計(jì)和平滑最終得到的運(yùn)動(dòng)矢量進(jìn)行重疊塊雙向運(yùn) 動(dòng)補(bǔ)償,內(nèi)插生成邊信息。所述的運(yùn)動(dòng)估計(jì)模塊包括前向/后向運(yùn)動(dòng)估計(jì)子模塊用于根據(jù)原始圖像相關(guān)性對(duì)每個(gè)內(nèi)插幀子塊判決搜 索方式,并根據(jù)判決結(jié)果進(jìn)行前向或后向塊匹配運(yùn)動(dòng)搜索,將得到的運(yùn)動(dòng)矢量賦給內(nèi)插幀 對(duì)應(yīng)子塊;運(yùn)動(dòng)檢測(cè)子模塊用于根據(jù)內(nèi)插幀子塊的運(yùn)動(dòng)矢量計(jì)算匹配塊的匹配誤差MAD和 邊界絕對(duì)誤差BAD,將每個(gè)子塊的運(yùn)動(dòng)矢量分為可靠和不可靠?jī)深?lèi);
運(yùn)動(dòng)修正子模塊用于對(duì)運(yùn)動(dòng)矢量不可靠的子塊進(jìn)行雙向運(yùn)動(dòng)估計(jì),以上一步運(yùn)動(dòng)估計(jì)得到的匹配塊為中心進(jìn)行重疊塊雙向運(yùn)動(dòng)估計(jì),將得到的新的運(yùn)動(dòng)矢量賦給對(duì)應(yīng)子 塊;分像素雙向運(yùn)動(dòng)估計(jì)子模塊用于對(duì)內(nèi)插幀所有子塊進(jìn)行進(jìn)一步精細(xì)運(yùn)動(dòng)搜索, 以前面步驟得到的匹配塊為中心進(jìn)行分?jǐn)?shù)像素重疊塊雙向運(yùn)動(dòng)估計(jì),將得到的分?jǐn)?shù)精度的 運(yùn)動(dòng)矢量賦給每個(gè)子塊。為實(shí)現(xiàn)上述目的,本發(fā)明提出基于分布式視頻編碼的邊信息生成系統(tǒng)及方法,包 括如下步驟(1)統(tǒng)計(jì)當(dāng)前Wyner-Ziv幀和前趨和后繼關(guān)鍵幀對(duì)應(yīng)搜索子塊之間的相關(guān)性,用 均方誤差MSEb表征相關(guān)性,設(shè)當(dāng)前Wyner-Ziv幀為第i幀,則它與前一關(guān)鍵幀第i_l幀對(duì) 應(yīng)子塊的相關(guān)性為MSEhb,與后一關(guān)鍵幀第i+Ι幀對(duì)應(yīng)子塊的相關(guān)性為MSEi+1B,并將計(jì)算得 到的MSEb值進(jìn)行粗量化處理后發(fā)送到解碼側(cè);(2)利用接收到的編碼端原始圖像相關(guān)性判定內(nèi)插幀每個(gè)子塊的搜索方式如果 MSEf_,> MSEf+l,則以關(guān)鍵幀第i+Ι幀作為參考幀進(jìn)行前向搜索,如果Mffif1 < MS^1,則以 關(guān)鍵幀第i_l幀作為參考幀進(jìn)行后向搜索;(3)將前趨關(guān)鍵幀和后繼關(guān)鍵幀分別分成若干大小相同,且互不重疊的子塊,根據(jù) 步驟(2)判斷出的內(nèi)插幀每個(gè)子塊的搜索方式,選定相對(duì)應(yīng)的關(guān)鍵幀作為當(dāng)前參考幀進(jìn)行 塊匹配搜索,找到最優(yōu)匹配塊;根據(jù)當(dāng)前參考幀子塊到該最優(yōu)匹配塊的位移mv計(jì)算最優(yōu)匹 配塊間的匹配誤差MAD。和邊界絕對(duì)誤差BADci,并將運(yùn)動(dòng)矢量MV = mv/2作為內(nèi)插幀對(duì)應(yīng)子 塊的運(yùn)動(dòng)矢量;(4)根據(jù)內(nèi)插幀當(dāng)前子塊的運(yùn)動(dòng)矢量MV,找到當(dāng)前子塊在前趨和后繼已解碼關(guān)鍵 幀中的匹配塊,并計(jì)算這兩個(gè)匹配塊之間的匹配誤差MAD1和邊界絕對(duì)誤差BAD1,然后與步 驟⑶得到的匹配誤差MAD。和BAD。進(jìn)行比較,如果MAD。< MAD1且BAD。< BAD1則認(rèn)為當(dāng)前 子塊的運(yùn)動(dòng)矢量可靠,否則,認(rèn)為當(dāng)前子塊的運(yùn)動(dòng)矢量不可靠,需要修正;(5)將運(yùn)動(dòng)矢量不可靠的子塊四周各擴(kuò)大K排像素,形成一個(gè)擴(kuò)大塊,按照步驟 (3)得到的運(yùn)動(dòng)矢量MV找到當(dāng)前子塊在前趨和后繼已解碼關(guān)鍵幀中的匹配塊,以該匹配塊 為中心進(jìn)行擴(kuò)大塊匹配的雙向運(yùn)動(dòng)搜索,得到新的運(yùn)動(dòng)矢量MV。,并將該新的運(yùn)動(dòng)矢量MV。 賦給內(nèi)插幀當(dāng)前子塊;(6)內(nèi)插幀的每個(gè)子塊,在它相鄰4個(gè)子塊的運(yùn)動(dòng)矢量確定出的搜索范圍里,進(jìn)行 1/2像素精度的重疊塊自適應(yīng)雙向運(yùn)動(dòng)搜索,得到內(nèi)插幀子塊較準(zhǔn)確的運(yùn)動(dòng)矢量MV1 ;(7)利用接受到的編碼側(cè)原始圖像相關(guān)性,采用空間權(quán)重中值濾波器對(duì)內(nèi)插幀子 塊運(yùn)動(dòng)矢量MV1進(jìn)行運(yùn)動(dòng)平滑,得到內(nèi)插幀子塊平滑的運(yùn)動(dòng)矢量MV2 ;(8)對(duì)內(nèi)插幀每個(gè)子塊四周各擴(kuò)大K排像素,形成一個(gè)擴(kuò)大塊,根據(jù)內(nèi)插幀子塊運(yùn) 動(dòng)矢量MV2找到當(dāng)前擴(kuò)大子塊在前趨和后繼已解碼關(guān)鍵幀中的匹配塊,在匹配塊中取當(dāng)前 子塊位置像素的內(nèi)插值權(quán)值k > 0. 5,其余的擴(kuò)大重疊塊位置像素的內(nèi)插值權(quán)值為Ι-k ;(9)按照上述權(quán)值對(duì)所有的內(nèi)插幀子塊依次進(jìn)行加權(quán)平均插值,得到Wyner-Ziv 幀的邊信息。本發(fā)明與現(xiàn)有技術(shù)相比具有如下優(yōu)點(diǎn)1)本發(fā)明中由于利用編碼側(cè)原始圖像相關(guān)性來(lái)輔助運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)平滑,解決了現(xiàn)有技術(shù)由于缺少原始圖像的信息而陷入運(yùn)動(dòng)估計(jì)的盲目性和局部?jī)?yōu)化,使得運(yùn)動(dòng)搜索有 效而準(zhǔn)確。2)本發(fā)明中由于將搜索得到的運(yùn)動(dòng)矢量分為可靠的運(yùn)動(dòng)矢量和不可靠的運(yùn)動(dòng)矢 量,并對(duì)不可靠的運(yùn)動(dòng)矢量單獨(dú)處理后再利用,解決了現(xiàn)有技術(shù)對(duì)運(yùn)動(dòng)矢量的盲目統(tǒng)一處理。
2)本發(fā)明中由于使用了重疊塊加權(quán)補(bǔ)償內(nèi)插技術(shù),有效解決了塊效應(yīng)和重影問(wèn) 題,生成的邊信息主客觀質(zhì)量都有了明顯的提高。
圖1是無(wú)反饋的分布式視頻編碼系統(tǒng)框圖;圖2是現(xiàn)有的基于空間平滑的運(yùn)動(dòng)補(bǔ)償內(nèi)插算法框圖;圖3是本發(fā)明基于分布式視頻編碼的邊信息生成系統(tǒng)框圖;圖4是本發(fā)明基于分布式視頻編碼的邊信息生成方法流程圖;圖5是本發(fā)明前向運(yùn)動(dòng)估計(jì)示意圖;圖6是本發(fā)明重疊塊雙向運(yùn)動(dòng)估計(jì)示意圖;圖7是本發(fā)明自適應(yīng)搜索范圍示意圖;圖8是本發(fā)明運(yùn)動(dòng)補(bǔ)償時(shí)的塊重疊示意圖9是用現(xiàn)有方法和本發(fā)明方法生成邊信息的客觀質(zhì)量比較圖; 圖10是在“Foreman”序列相同實(shí)驗(yàn)條件下,使用不同方法生成邊信息圖像的主觀質(zhì)量 對(duì)比圖11是在“Mother-daughter”序列相同實(shí)驗(yàn)條件下,使用不同方法生成邊信息圖像的 主觀質(zhì)量對(duì)比圖。
具體實(shí)施例方式參照?qǐng)D2,本發(fā)明基于分布式視頻編碼的邊信息生成系統(tǒng)由編碼器和解碼器兩部 分組成,其中編碼器,對(duì)編碼側(cè)當(dāng)前Wyner-Ziv幀與其前驅(qū)和后繼關(guān)鍵幀間相關(guān)性進(jìn)行計(jì)算, 并對(duì)相關(guān)性數(shù)據(jù)進(jìn)行粗量化后發(fā)送到解碼器,用以輔助運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)平滑。解碼器,由前向/后向運(yùn)動(dòng)估計(jì),運(yùn)動(dòng)檢測(cè),運(yùn)動(dòng)修正,分像素雙向運(yùn)動(dòng)估計(jì),運(yùn)動(dòng) 平滑和運(yùn)動(dòng)補(bǔ)償六個(gè)模塊組成。其中前向/后向運(yùn)動(dòng)估計(jì)模塊,根據(jù)原始圖像相關(guān)性對(duì)每 個(gè)內(nèi)插幀子塊判決搜索方式,如果當(dāng)前塊與前驅(qū)關(guān)鍵幀對(duì)應(yīng)子塊相關(guān)性強(qiáng),則進(jìn)行后向搜 索,反之,進(jìn)行前向搜索,得到每個(gè)子塊的運(yùn)動(dòng)矢量;運(yùn)動(dòng)檢測(cè)模塊,先根據(jù)內(nèi)插幀子塊的運(yùn) 動(dòng)矢量計(jì)算對(duì)應(yīng)匹配塊間的匹配誤差MAD和邊界絕對(duì)誤差BAD,然后將每個(gè)子塊的運(yùn)動(dòng)矢 量分為可靠和不可靠?jī)深?lèi),將運(yùn)動(dòng)矢量不可靠的子塊傳送到運(yùn)動(dòng)修正模塊;運(yùn)動(dòng)修正模塊, 對(duì)運(yùn)動(dòng)矢量不可靠的子塊進(jìn)行重疊塊雙向運(yùn)動(dòng)估計(jì),得到可靠的運(yùn)動(dòng)矢量;分像素雙向運(yùn) 動(dòng)估計(jì)模塊,先根據(jù)當(dāng)前子塊相鄰4個(gè)塊的可靠的運(yùn)動(dòng)矢量對(duì)搜索范圍進(jìn)行自適應(yīng)調(diào)整, 然后對(duì)內(nèi)插幀所有子塊進(jìn)行分像素精細(xì)運(yùn)動(dòng)搜索,得到優(yōu)化后的運(yùn)動(dòng)矢量,并傳送到運(yùn)動(dòng) 平滑模塊;運(yùn)動(dòng)平滑模塊,根據(jù)原始圖像相關(guān)性,對(duì)優(yōu)化后的運(yùn)動(dòng)矢量進(jìn)行空間權(quán)重濾波, 得到平滑的運(yùn)動(dòng)矢量,并傳送到運(yùn)動(dòng)補(bǔ)償模塊;運(yùn)動(dòng)補(bǔ)償模塊,根據(jù)平滑的運(yùn)動(dòng)矢量進(jìn)行重疊塊雙向運(yùn)動(dòng)補(bǔ)償,內(nèi)插生成邊信息。參照?qǐng)D4,本發(fā)明的基于分布式視頻編碼的邊信息生成步驟如F 步驟1,計(jì)算編碼器中當(dāng)前Wyner-Ziv幀與其前驅(qū)和后繼關(guān)鍵幀之間子塊相關(guān)性, 用均方誤差:M:SEb°表示,編碼器和解碼器的子塊尺寸要保持相同,設(shè)當(dāng)前Wyner-Ziv幀為第 i幀,則它與前驅(qū)關(guān)鍵幀第i_l幀對(duì)應(yīng)子塊的相關(guān)性為MSEhbo,與后繼關(guān)鍵幀第i+Ι幀對(duì)應(yīng) 子塊的相關(guān)性為MSEi+1B°。步驟2,分別對(duì)當(dāng)前塊與前一關(guān)鍵幀第幀對(duì)應(yīng)子塊的相關(guān)性MSEhm和與后一 關(guān)鍵幀第i+Ι幀對(duì)應(yīng)子塊的相關(guān)性MSEitlB°進(jìn)行粗量化處理,分別用MSEi../和MSEi+1B表示, 并將粗量化處理后的數(shù)據(jù)發(fā)送到解碼器。 步驟3,解碼器利用接收到的當(dāng)前Wyner-Ziv幀與其前驅(qū)和后繼關(guān)鍵幀之間子塊 相關(guān)性數(shù)據(jù)MSE7和MSEi+1B,判定內(nèi)插幀每個(gè)子塊的搜索方式,如果MS^1 <MS£f+1,說(shuō)明第 i幀當(dāng)前子塊與前趨關(guān)鍵幀第幀對(duì)應(yīng)塊的相關(guān)性強(qiáng),則以關(guān)鍵幀第幀作為參考幀進(jìn) 行后向搜索,反之,以關(guān)鍵幀第i+ι幀作為參考幀進(jìn)行前向搜索。步驟4,根據(jù)確定出的內(nèi)插幀每個(gè)子塊的搜索方式,分別進(jìn)行前向搜索或后向搜 索,得到每個(gè)內(nèi)插幀子塊的運(yùn)動(dòng)矢量。參照?qǐng)D5,其中圖5(a)是前趨已解碼關(guān)鍵幀,圖5 (b)是后繼已解碼關(guān)鍵幀,本步驟 進(jìn)行前向搜索的步驟如下4. 1)將前趨關(guān)鍵幀和后繼關(guān)鍵幀分別分成若干大小相同,且互不重疊的子塊;4. 2)選定后繼已解碼關(guān)鍵幀作為參考幀,根據(jù)匹配準(zhǔn)則找到圖5(b)中子塊Bl在 圖5 (a)中的最優(yōu)匹配塊B2;4. 3)將子塊Bl到最優(yōu)匹配塊B2的位移用MV表示,根據(jù)MV計(jì)算子塊Bl與子塊 B2的匹配誤差MADbi和邊界絕對(duì)誤差BADBI ;4. 4)將MV/2作為當(dāng)前塊B3的運(yùn)動(dòng)矢量。步驟5,根據(jù)內(nèi)插幀子塊的運(yùn)動(dòng)矢量找到在前趨和后繼已解碼關(guān)鍵幀中的候選匹 配塊,如圖5(c)前趨已解碼關(guān)鍵幀中子塊B4和圖5(e)后繼已解碼關(guān)鍵幀中子塊B5,是圖 5 (d)內(nèi)插幀子塊B3在前趨和后繼已解碼幀中的候選匹配塊,計(jì)算候選匹配塊B4與B5之間 的匹配誤差MADb3和邊界絕對(duì)誤差BADB3,并與匹配誤差MADbi和邊界絕對(duì)誤差BADbi進(jìn)行比 較,如果MADB3 < MADbi且BADB3 < BADbi,則認(rèn)為運(yùn)動(dòng)矢量可靠,否則,運(yùn)動(dòng)矢量不可靠,需要 進(jìn)一步修正。步驟6,對(duì)不可靠的運(yùn)動(dòng)矢量進(jìn)行修正,將運(yùn)動(dòng)矢量不可靠的子塊四周各擴(kuò)大4排 像素,形成一個(gè)擴(kuò)大塊,如圖6(b)中的擴(kuò)大子塊B6,根據(jù)該不可靠的的運(yùn)動(dòng)矢量找到該擴(kuò) 大子塊B6在前趨和后繼已解碼關(guān)鍵幀中的擴(kuò)大匹配塊,即圖6 (a)中的擴(kuò)大匹配塊B7和圖 6(c)中的擴(kuò)大匹配塊B8,以該匹配塊B7和B8為中心進(jìn)行擴(kuò)大塊匹配的雙向運(yùn)動(dòng)搜索,選 擇匹配誤差最小的一組擴(kuò)大子塊作為最優(yōu)擴(kuò)大匹配塊,該最優(yōu)擴(kuò)大匹配塊對(duì)應(yīng)的運(yùn)動(dòng)矢量 作為內(nèi)插幀當(dāng)前子塊修正后的運(yùn)動(dòng)矢量。步驟7,對(duì)內(nèi)插幀的每個(gè)子塊,根據(jù)修正后的運(yùn)動(dòng)矢量找到在前趨和后繼已解碼關(guān) 鍵幀中新的匹配塊,以該匹配塊為中心進(jìn)行自適應(yīng)搜索范圍的1/2像素精度重疊塊雙向運(yùn) 動(dòng)估計(jì),得到優(yōu)化的運(yùn)動(dòng)矢量。確定自適應(yīng)搜索范圍的過(guò)程如圖7所示,先根據(jù)當(dāng)前子塊相鄰4個(gè)塊的運(yùn)動(dòng)矢量確定一個(gè)搜索范圍;再在該搜索范圍的基礎(chǔ)上四周擴(kuò)大固定值12,得到自適應(yīng)搜索范圍。步驟8,在接收到的當(dāng)前Wyner-Ziv幀與其前驅(qū)和后繼關(guān)鍵幀之間子塊相關(guān)性數(shù) 據(jù)MSEiY和MSEi+1B的輔助下,利用權(quán)重中值濾波器對(duì)內(nèi)插幀優(yōu)化的運(yùn)動(dòng)矢量進(jìn)行平滑,得 到平滑的運(yùn)動(dòng)矢量。本步驟的具體實(shí)現(xiàn)是以內(nèi)插幀當(dāng)前子塊為中心的方形領(lǐng)域內(nèi)共有9個(gè)子塊,以這 9個(gè)子塊的運(yùn)動(dòng)矢量加權(quán)均值作為內(nèi)插幀當(dāng)前子塊的運(yùn)動(dòng)矢量,其中每個(gè)子塊的運(yùn)動(dòng)矢量 權(quán)重值由該子塊與匹配塊之間的最小均方誤差MSE及當(dāng)前ffyner-Ziv幀與其前驅(qū)和后繼關(guān) 鍵幀之間子塊相關(guān)性數(shù)據(jù)MSEi.../和MSEi+1B共同確定。8. 1)計(jì)算方形領(lǐng)域內(nèi)9個(gè)子塊的相關(guān)性均值MSEq MSE8 8. 2)設(shè)MV。表示當(dāng)前子塊的運(yùn)動(dòng)矢量,MV1 MV8分別表示當(dāng)前子塊周?chē)?個(gè)相鄰 子塊的運(yùn)動(dòng)矢量,分別選擇MV。 MV8作為當(dāng)前子塊的運(yùn)動(dòng)矢量,得到當(dāng)前子塊對(duì)應(yīng)匹配塊 間的均方誤差,分別記為MSE。 MSE8,計(jì)算運(yùn)動(dòng)矢量MV。 MV8的權(quán)值Wj,j = 0,1,. . . 8 : 式中β是權(quán)重因子;8. 3)計(jì)算運(yùn)動(dòng)矢量MV。 MV8的加權(quán)中值d。 d8,d。的計(jì)算公式如下 同理利用式3)可求出Cl1 d8 ;8. 4)選擇最小加權(quán)中值對(duì)應(yīng)的運(yùn)動(dòng)矢量作為當(dāng)前子塊平滑的運(yùn)動(dòng)矢量。步驟9,對(duì)內(nèi)插幀中每個(gè)子塊四周各擴(kuò)大4排像素,形成擴(kuò)大塊,根據(jù)平滑的運(yùn)動(dòng) 矢量找到該擴(kuò)大塊在前趨和后繼已解碼關(guān)鍵幀中的匹配塊,取匹配塊對(duì)應(yīng)位置像素加權(quán)平 均值作為當(dāng)前子塊的像素值。內(nèi)插幀擴(kuò)大塊之間存在著重疊的部分,如圖8所示。對(duì)于重疊部分,當(dāng)前子塊B在 前趨和后繼關(guān)鍵幀匹配塊中的像素值加和PO的權(quán)值為Y >0.5,而子塊B周?chē)?個(gè)塊與B 重疊部分的像素值加和Pl的權(quán)值為1 Y。步驟10,按照上述權(quán)值對(duì)所有的內(nèi)插幀子塊依次進(jìn)行加權(quán)平均插值,即利用公式 γρ0+(1-γ)ρ1計(jì)算出每個(gè)內(nèi)插幀子塊的像素值,由此得到的內(nèi)插幀即為當(dāng)前Wyner-Ziv 幀的邊信息。本發(fā)明的效果可通過(guò)以下實(shí)驗(yàn)進(jìn)一步說(shuō)明1)實(shí)驗(yàn)條件GOP 結(jié)構(gòu)關(guān)鍵幀,Wyner-Ziv 幀,關(guān)鍵幀,Wyner-Ziv 幀,......;搜索范圍16像素;塊尺寸8X8像素;重疊塊尺寸=12X12像素搜索精度整像素精度、1/2像素精度;參考序歹丨J Foreman, Mother-daughter ;
幀率3Ofps;分辨率176X144;參考序列條件見(jiàn)表1。表1測(cè)試序列條件 2)實(shí)驗(yàn)內(nèi)容及結(jié)果實(shí)驗(yàn)1 統(tǒng)計(jì)各參考序列在上述實(shí)驗(yàn)條件下,采用現(xiàn)有雙向運(yùn)動(dòng)補(bǔ)償內(nèi)插方法和本發(fā)明提 出的基于原始圖像相關(guān)性的重疊塊加權(quán)運(yùn)動(dòng)補(bǔ)償方法,生成邊信息的客觀質(zhì)量比較,實(shí)驗(yàn) 結(jié)果見(jiàn)圖9。圖9(a)是“Foreman”序列在相同實(shí)驗(yàn)條件下,使用不同方法生成邊信息圖像的 PSNRfIo圖9 (b)是“Mother-daughter”序列在相同實(shí)驗(yàn)條件下,使用不同方法生成邊信息 圖像的PSNR值。由圖9可以看出,在相同實(shí)驗(yàn)條件下,本發(fā)明提出的基于原始圖像相關(guān)性的重疊 塊運(yùn)動(dòng)補(bǔ)償算法明顯提高了邊信息的PSNR值,即提高了生成邊信息的客觀質(zhì)量。實(shí)驗(yàn)2 統(tǒng)計(jì)各參考序列在上述實(shí)驗(yàn)條件下,采用現(xiàn)有雙向運(yùn)動(dòng)補(bǔ)償內(nèi)插方法和本發(fā)明提 出的基于原始圖像相關(guān)性的重疊塊加權(quán)運(yùn)動(dòng)補(bǔ)償方法,生成邊信息的主觀質(zhì)量比較,實(shí)驗(yàn) 結(jié)果見(jiàn)圖10和圖11。圖10給出了“Foreman”序列在相同實(shí)驗(yàn)條件下,使用不同方法生成邊信息圖像的 主觀質(zhì)量對(duì)比。其中圖10 (a)是原始Wyner-Ziv幀第36幀,圖10 (b)是現(xiàn)有雙向運(yùn)動(dòng)補(bǔ)償 內(nèi)插方法生成的邊信息圖像第36幀,圖10 (c)是本發(fā)明基于原始圖像相關(guān)性的重疊塊加權(quán) 運(yùn)動(dòng)補(bǔ)償方法生成的邊信息圖像第36幀。圖11給出了“Mother-daughter”序列在相同實(shí)驗(yàn)條件下,使用不同方法生成邊信 息圖像的主觀質(zhì)量對(duì)比。其中圖11(a)是原始Wyner-Ziv幀第77幀,圖11(b)是現(xiàn)有雙向 運(yùn)動(dòng)補(bǔ)償內(nèi)插方法生成的邊信息圖像第77幀,圖11(c)是本發(fā)明基于原始圖像相關(guān)性的重 疊塊加權(quán)運(yùn)動(dòng)補(bǔ)償方法生成的邊信息圖像第77幀。由圖10和圖11可以看出,在相同實(shí)驗(yàn)條件下,本發(fā)明提出的基于原始圖像相關(guān)性 的重疊塊運(yùn)動(dòng)補(bǔ)償算法,明顯改善了邊信息的塊匹配錯(cuò)誤、塊效應(yīng)以及重影現(xiàn)象等,提高了 生成的邊信息圖像主觀質(zhì)量。
權(quán)利要求
一種基于分布式視頻編碼的邊信息生成系統(tǒng),包括相關(guān)性計(jì)算模塊用于計(jì)算編碼側(cè)當(dāng)前Wyner-Ziv幀與其前驅(qū)和后繼關(guān)鍵幀之間塊相關(guān)性,并對(duì)相關(guān)性進(jìn)行粗量化,發(fā)送到解碼器;運(yùn)動(dòng)估計(jì)模塊用于在解碼器利用前驅(qū)和后繼已解碼關(guān)鍵幀,在原始圖像相關(guān)性的輔助下進(jìn)行塊匹配運(yùn)動(dòng)估計(jì),得到精確的運(yùn)動(dòng)矢量;運(yùn)動(dòng)平滑模塊在原始圖像相關(guān)性的輔助下,用于對(duì)運(yùn)動(dòng)估計(jì)模塊得到的運(yùn)動(dòng)矢量進(jìn)行空間權(quán)重濾波,得到平滑的運(yùn)動(dòng)矢量;運(yùn)動(dòng)補(bǔ)償模塊用于根據(jù)運(yùn)動(dòng)平滑得到的運(yùn)動(dòng)矢量進(jìn)行重疊塊雙向運(yùn)動(dòng)補(bǔ)償,內(nèi)插生成邊信息。
2.根據(jù)權(quán)利要求1所述的邊信息生成系統(tǒng),其中運(yùn)動(dòng)估計(jì)模塊包括前向/后向運(yùn)動(dòng)估計(jì)子模塊用于根據(jù)原始圖像相關(guān)性對(duì)每個(gè)內(nèi)插幀子塊判決搜索方 式,并根據(jù)判決結(jié)果進(jìn)行前向或后向塊匹配運(yùn)動(dòng)搜索,將得到的運(yùn)動(dòng)矢量賦給內(nèi)插幀對(duì)應(yīng)運(yùn)動(dòng)檢測(cè)子模塊用于根據(jù)內(nèi)插幀子塊的運(yùn)動(dòng)矢量計(jì)算匹配塊的匹配誤差MAD和邊界 絕對(duì)誤差BAD,將每個(gè)子塊的運(yùn)動(dòng)矢量分為可靠和不可靠?jī)深?lèi);運(yùn)動(dòng)修正子模塊用于對(duì)運(yùn)動(dòng)矢量不可靠的子塊進(jìn)行雙向運(yùn)動(dòng)估計(jì),以上一步運(yùn)動(dòng)估 計(jì)得到的匹配塊為中心進(jìn)行重疊塊雙向運(yùn)動(dòng)估計(jì),將得到的新的運(yùn)動(dòng)矢量賦給對(duì)應(yīng)子塊;分像素雙向運(yùn)動(dòng)估計(jì)子模塊用于對(duì)內(nèi)插幀所有子塊進(jìn)行進(jìn)--步精細(xì)運(yùn)動(dòng)搜索,以前 面步驟得到的匹配塊為中心進(jìn)行分?jǐn)?shù)像素重疊塊雙向運(yùn)動(dòng)估計(jì),將得到的分?jǐn)?shù)精度的運(yùn)動(dòng) 矢量賦給每個(gè)子塊。
3. 一種基于分布式視頻編碼的邊信息生成系統(tǒng)及方法,包括如下步驟(1)計(jì)算當(dāng)前Wyner-Ziv幀與前趨和后繼關(guān)鍵幀對(duì)應(yīng)子塊之間的相關(guān)性,用均方誤差 MSEbo表征相關(guān)性,設(shè)當(dāng)前ffyner-Ziv幀為第i巾貞,則它與前一關(guān)鍵幀第i_l幀對(duì)應(yīng)子塊的 相關(guān)性為MSEhB0,與后一關(guān)鍵幀第i+1幀對(duì)應(yīng)子塊的相關(guān)性為MSEi+1B°,并將計(jì)算得到的 MSE,..廣和MSEi+1B°進(jìn)行粗量化處理后用MSEi../和MSEi+1B表示,然后發(fā)送到解碼器;(2)利用接收到的當(dāng)前Wyner-Ziv幀與前趨和后繼關(guān)鍵幀對(duì)應(yīng)子塊之間的相關(guān)性判定 內(nèi)插幀每個(gè)子塊的搜索方式如果MSE^ 2MSE&,則以關(guān)鍵幀第i+1幀作為參考幀進(jìn)行前 向搜索,如果Mffi^ <MSEf+l,則以關(guān)鍵幀第i-1幀作為參考幀進(jìn)行后向搜索;(3)將前趨關(guān)鍵幀和后繼關(guān)鍵幀分別分成若千大小相同,且互不重疊的子塊,根據(jù)步驟 (2)判斷出的內(nèi)插幀每個(gè)子塊的搜索方式,選定相對(duì)應(yīng)的關(guān)鍵幀作為當(dāng)前參考幀進(jìn)行塊匹 配搜索,找到最優(yōu)匹配塊;根據(jù)當(dāng)前參考幀子塊到該最優(yōu)匹配塊的位移nw計(jì)算最優(yōu)匹配塊 間的匹配誤差MAD。和邊界絕對(duì)誤差BAD。并將運(yùn)動(dòng)矢量MV = mv/2作為內(nèi)插幀對(duì)應(yīng)子塊的 運(yùn)動(dòng)矢量;(4)根據(jù)內(nèi)插幀當(dāng)前子塊的運(yùn)動(dòng)矢量MV,找到當(dāng)前子塊在前趨和后繼已解碼關(guān)鍵幀中 的匹配塊,并計(jì)算這兩個(gè)匹配塊之間的匹配誤差MAIL和邊界絕對(duì)誤差BAD”然后與步驟(3) 得到的匹配誤差MAD0和BAD。進(jìn)行比較,如果MAD0 < MAD:且BAD。< BADi則認(rèn)為當(dāng)前子塊的 運(yùn)動(dòng)矢量可靠,否則,認(rèn)為當(dāng)前子塊的運(yùn)動(dòng)矢量不可靠,需要修正;(5)將運(yùn)動(dòng)矢量不可 的子塊四周各擴(kuò)大K排像素,形成一個(gè)擴(kuò)大塊,按照步驟(3)得到的運(yùn)動(dòng)矢量MV找到當(dāng)前子塊在前趨和后繼已解碼關(guān)鍵幀中的匹配塊,以該匹配塊為中 心進(jìn)行擴(kuò)大塊匹配的雙向運(yùn)動(dòng)搜索,得到新的運(yùn)動(dòng)矢量MVy并將該新的運(yùn)動(dòng)矢量M^賦給 內(nèi)插幀當(dāng)前子塊;(6)內(nèi)插幀的每個(gè)子塊,在它相鄰4個(gè)子塊的運(yùn)動(dòng)矢量確定出的搜索范圍里,進(jìn)行1/2 像素精度的重疊塊自適應(yīng)雙向運(yùn)動(dòng)搜索,得到內(nèi)插幀子塊較準(zhǔn)確的運(yùn)動(dòng)矢量MA ;(7)利用接收到的編碼側(cè)原始圖像相關(guān)性數(shù)據(jù),采用空間權(quán)重中值濾波器對(duì)內(nèi)插幀子 塊運(yùn)動(dòng)矢量MA進(jìn)行運(yùn)動(dòng)平滑,得到內(nèi)插幀子塊平滑的運(yùn)動(dòng)矢量MV2 ;(8)對(duì)內(nèi)插幀每個(gè)子塊四周各擴(kuò)大K排像素,形成一個(gè)擴(kuò)大塊,根據(jù)內(nèi)插幀子塊運(yùn)動(dòng)矢 量~儀2找到當(dāng)前擴(kuò)大子塊在前趨和后繼已解碼關(guān)鍵幀中的匹配塊,在匹配塊中取當(dāng)前子塊 位置像素值的加和權(quán)值為、>0.5,其余的擴(kuò)大重疊塊位置像素值的加和權(quán)值為1-Y ;(9)按照上述權(quán)值對(duì)所有的 插幀子塊依次進(jìn)行加權(quán)平均插值,得到Wyner-Ziv幀的 邊信息。
全文摘要
本發(fā)明公開(kāi)了一種基于分布式視頻編碼的邊信息生成系統(tǒng)及方法,它屬于視頻編碼技術(shù)領(lǐng)域,主要解決分布式視頻編碼系統(tǒng)生成邊信息時(shí)缺少原始圖像信息的問(wèn)題。該方法由編碼器相關(guān)性計(jì)算、解碼器運(yùn)動(dòng)估計(jì)、運(yùn)動(dòng)平滑和運(yùn)動(dòng)補(bǔ)償四部分組成。編碼器計(jì)算原始圖像幀間相關(guān)性并傳送到解碼器;解碼器在相關(guān)性的輔助下,利用前驅(qū)和后繼已解碼關(guān)鍵幀進(jìn)行前向和后向運(yùn)動(dòng)估計(jì),并對(duì)得到的運(yùn)動(dòng)矢量進(jìn)行檢測(cè)和修正;然后采用重疊塊雙向運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)平滑得到準(zhǔn)確的運(yùn)動(dòng)矢量;最后利用重疊塊雙向運(yùn)動(dòng)補(bǔ)償產(chǎn)生邊信息。本發(fā)明較大改善了邊信息的主客觀質(zhì)量,進(jìn)一步提高解碼恢復(fù)圖像的質(zhì)量,可應(yīng)用于終端設(shè)備簡(jiǎn)單的視頻通信系統(tǒng)。
文檔編號(hào)H04N7/50GK101860748SQ20101013786
公開(kāi)日2010年10月13日 申請(qǐng)日期2010年4月2日 優(yōu)先權(quán)日2010年4月2日
發(fā)明者劉海華, 宋彬, 楊明明, 秦浩, 賀紅 申請(qǐng)人:西安電子科技大學(xué)