專利名稱:一種幀間預(yù)測(cè)方法、裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及視頻編碼領(lǐng)域,尤其涉及一種幀間預(yù)測(cè)方法、裝置。
背景技術(shù):
在視頻編碼中,通常使用幀內(nèi)預(yù)測(cè)來(lái)消除圖像的空間冗余度,使用幀間預(yù)測(cè)來(lái)消除時(shí)間冗余度。其中視頻源的幀間信息冗余度相比較于幀內(nèi)的要大得多,這就使得幀間編碼方法在視頻編碼中顯得極為重要。幀間預(yù)測(cè)根據(jù)預(yù)測(cè)方向的不同分為P幀預(yù)測(cè)和B幀預(yù)測(cè)。目前主流的B幀預(yù)測(cè)方法采用前向已編碼的幀以及后向已編碼的幀,分別作為當(dāng)前編碼B幀的前后向參考幀, 利用當(dāng)前編碼B幀與前后向參考幀之間的相似性,壓縮當(dāng)前編碼B幀的信息。這在參考幀與當(dāng)前編碼B幀具有高近似度時(shí),具有很好的效果,但隨著兩者間近似度的降低,壓縮效果也會(huì)急劇下降。尤其在對(duì)低幀率、全局鏡頭推進(jìn)等片源進(jìn)行編碼時(shí),這個(gè)問(wèn)題將顯著凸現(xiàn)。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例的目的在于提出一種幀間預(yù)測(cè)方法,旨在解決現(xiàn)有技術(shù)中遇到的參考幀與當(dāng)前編碼幀近似度較小,尤其在對(duì)低幀率、全局鏡頭推進(jìn)等片源進(jìn)行編碼時(shí),導(dǎo)致壓縮當(dāng)前編碼幀效果比較低的問(wèn)題。本發(fā)明提供一種幀間預(yù)測(cè)方法,所述的方法包括步驟101 預(yù)設(shè)第一參數(shù)M,M初始值為0 ;步驟102 選取參考幀列表;步驟103 判斷所述的參考幀列表是前向參考列表還是后向參考列表;若為前向參考列表則執(zhí)行步驟104,若為后向參考列表則執(zhí)行步驟105 ;步驟104 若所述前向參考幀列表內(nèi)的第一當(dāng)前參考幀未處理過(guò),則進(jìn)一步根據(jù)前向參考幀列表中的第一當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系處理第一當(dāng)前參考幀,獲取前向參考幀列表中的更新后第一當(dāng)前參考幀,并標(biāo)注前向參考幀列表內(nèi)的更新后第一當(dāng)前參考幀已處理過(guò),進(jìn)入步驟106 ;步驟105 若后向參考幀列表內(nèi)的第二當(dāng)前參考幀未處理過(guò),則進(jìn)一步根據(jù)后向參考幀列表中的第二當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系處理第二當(dāng)前參考幀,獲取后向參考幀列表中的更新后的第二當(dāng)前參考幀,并標(biāo)注更新后的第二當(dāng)前參考幀已處理過(guò); 步驟106 設(shè)置第一參數(shù)M加1,判斷M是否大于1,若是則執(zhí)行步驟107 ;若否則執(zhí)行步驟102 ;步驟107 通過(guò)所更新后的前向、后向參考幀列表對(duì)當(dāng)前編碼幀進(jìn)行幀間預(yù)測(cè)。本發(fā)明還提供了一種幀間預(yù)測(cè)裝置,該裝置包括初始化單元,用于預(yù)設(shè)第一參數(shù)M,M初始值為0 ;第一判斷單元,用于選取參考幀列表,判斷所述的參考幀列表是前向參考列表還是后向參考列表;
參考幀單元,用于當(dāng)所述參考幀列表為前向參考幀列表,若前向參考幀列表內(nèi)的第一當(dāng)前參考幀未處理過(guò),則進(jìn)一步根據(jù)前向參考幀列表中的第一當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系處理第一當(dāng)前參考幀,獲取前向參考幀列表中的更新后第一當(dāng)前參考幀,并標(biāo)注前向參考幀列表內(nèi)的更新后第一當(dāng)前參考幀已處理過(guò);設(shè)置第一參數(shù)M加1 ;用于當(dāng)所述參考幀列表為后向參考幀列表,若后向參考幀列表內(nèi)的第二當(dāng)前參考幀未處理過(guò),則進(jìn)一步根據(jù)后向參考幀列表中的第二當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系處理第二當(dāng)前參考幀,獲取更新后的后向參考幀列表中的更新后的第二當(dāng)前參考幀,并標(biāo)注更新后的第二當(dāng)前參考幀已處理過(guò);設(shè)置第一參數(shù)M加1 ;預(yù)測(cè)單元,用于判斷第一參數(shù)M是否大于1,若是則通過(guò)更新后的前向或后向參考幀列表對(duì)當(dāng)前編碼幀進(jìn)行幀間預(yù)測(cè);若否則第一判斷單元繼續(xù)運(yùn)行本發(fā)明提出一種幀間預(yù)測(cè)方法及裝置,該方法及裝置通過(guò)參考幀列表內(nèi)當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系不同,按照不同的方法來(lái)處理當(dāng)前參考幀Listl^refi,獲取更新后的當(dāng)前參考幀cun^Listl^refi,提高了更新后當(dāng)前參考幀與編碼幀的相似度,從而達(dá)到了優(yōu)化當(dāng)前編碼幀的壓縮效果。在低幀率時(shí),幀與幀之間的鏡頭變化更大,此時(shí)采用本發(fā)明的幀預(yù)測(cè)方法,壓縮性能的提升將更為顯著。
圖1是本發(fā)明實(shí)施例1的方法流程圖;圖2是本發(fā)明實(shí)施例2的方法流程圖。圖3是本發(fā)明實(shí)施例3的方法流程圖;圖4是本發(fā)明實(shí)施例4的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖和實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明,為了便于說(shuō)明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。應(yīng)當(dāng)理解,此處所描寫的具體實(shí)施例,僅僅用于解釋本發(fā)明,并不用以限制本發(fā)明。本發(fā)明提出一種新的B幀的幀間預(yù)測(cè)方法。該方法通過(guò)確定當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系,分別按照鏡頭拉遠(yuǎn)或拉近的方式進(jìn)行上下采樣處理,提高了當(dāng)前參考幀與編碼幀的相似度,從而達(dá)到了優(yōu)化當(dāng)前編碼幀的壓縮效果。在低幀率時(shí),幀與幀之間的鏡頭變化更大,此時(shí)采用本發(fā)明的幀預(yù)測(cè)方法,壓縮性能的提升將更為顯著。實(shí)施例1,參見圖1,該方法主要應(yīng)用于B幀的幀間預(yù)測(cè),具體為步驟101 預(yù)設(shè)第一參數(shù)M與第二參數(shù)K,M與K為整數(shù);M初始值為0 ;步驟102 選取參考幀列表;即選取ListK,K可以為0或1,在此設(shè)置LiskO為前向參考列表,Liskl為后向參考列表;步驟103 判斷所述的參考幀列表中的第二參數(shù)K是否為0,若為0則執(zhí)行步驟 104,若不為0則執(zhí)行步驟105;步驟104 所述參考幀列表為前向參考幀列表;若前向參考幀列表內(nèi)的第一當(dāng)前參考幀Listl^refi (本發(fā)明所述的第一當(dāng)前參考幀可以為前向參考幀列表中任一個(gè)參考幀)未處理過(guò),則進(jìn)一步根據(jù)前向參考幀列表中的第一當(dāng)前參考幀Listl^refi與當(dāng)前編碼幀frame的關(guān)系處理第一當(dāng)前參考幀Listl^refi,獲取更新后的前向參考幀列表中的更新后第一當(dāng)前參考幀cun^Listl^refi,并標(biāo)注前向參考幀列表內(nèi)的更新后第一當(dāng)前參考幀 Listk_refi已處理過(guò),進(jìn)入步驟106 ;步驟105 所述參考幀列表為后向參考幀列表;若后向參考幀列表內(nèi)的第二當(dāng)前參考幀Listl^refi (本發(fā)明所述的第二當(dāng)前參考幀可以為后向參考幀列表中任一個(gè)參考幀)未處理過(guò),則進(jìn)一步根據(jù)后向參考幀列表中的第二當(dāng)前參考幀Listl^refi與當(dāng)前編碼幀frame的關(guān)系處理第二當(dāng)前參考幀,獲取更新后的后向參考幀列表中的更新后的第二當(dāng)前參考幀,并標(biāo)注更新后的第二當(dāng)前參考幀已處理過(guò),進(jìn)入步驟106 ;步驟106 設(shè)置第一參數(shù)M加1,判斷M是否大于1,若是則執(zhí)行步驟107 ;若否則執(zhí)行步驟102 ;步驟107 利用更新過(guò)的前向參考幀列表與后向參考幀列表對(duì)當(dāng)前編碼幀進(jìn)行幀間預(yù)測(cè)。該方法通過(guò)參考幀列表內(nèi)當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系不同,按照不同的方法來(lái)處理當(dāng)前參考幀Listk_refi,獲取更新后的當(dāng)前參考幀curi^Listl^refi,提高了更新后當(dāng)前參考幀與編碼幀的相似度,從而達(dá)到了優(yōu)化當(dāng)前編碼幀的壓縮效果。在低幀率時(shí),幀與幀之間的鏡頭變化更大,此時(shí)采用本發(fā)明的幀預(yù)測(cè)方法,壓縮性能的提升將更為顯著。實(shí)施例2,參見圖2,本發(fā)明提供了一種B幀的幀間預(yù)測(cè)方法,具體為步驟201 預(yù)設(shè)第一參數(shù)M與第二參數(shù)K,M與K為整數(shù);M初始值為0 ;步驟202 選取參考幀列表;即選取ListK,K可以為0或1,在此設(shè)置LiskO為前向參考幀列表,Liskl為后向參考幀列表;步驟203 判斷所述的參考幀列表中的第二參數(shù)K是否為0,若K為0為前向參考幀列表,若不為0為后向參考幀列表;以及確定前向參考列表中的第一當(dāng)前參考幀或后向參考列表中的第二當(dāng)前參考幀是否未處理過(guò);若K為0且第一當(dāng)前參考幀未處理過(guò)則執(zhí)行步驟204,若K不為0且第二當(dāng)前參考幀未被處理過(guò)則執(zhí)行步驟204 ;步驟204 確定前向參考幀列表中第一當(dāng)前參考幀LiStk_refi或后向參考幀列表中第二當(dāng)前參考幀Listl^refi與當(dāng)前編碼幀frame的關(guān)系,若是鏡頭拉近則執(zhí)行步驟205, 若是鏡頭拉遠(yuǎn)則執(zhí)行步驟206 ;若不存在鏡頭推遠(yuǎn)或拉近,執(zhí)行步驟207 ;if (鏡頭拉進(jìn))進(jìn)入步驟205 ;else if (鏡頭推遠(yuǎn))進(jìn)入步驟206 ;else 進(jìn)入步驟 207。步驟205 若是鏡頭拉近則對(duì)第一或第二當(dāng)前參考幀Listk_refi進(jìn)行處理,得到第二參考幀,并將更新后的第一或第二當(dāng)前參考幀CunListk^efi設(shè)置為第二參考幀,CWT — Listk — re/] = Listk — ref;;并標(biāo)注更新后的第一或第二當(dāng)前參考幀已處理過(guò);執(zhí)行步驟208 ;該步驟中對(duì)第一或第二當(dāng)前參考幀進(jìn)行處理得到第二參考幀具體為對(duì)第一或第二當(dāng)前參考幀進(jìn)行上采樣,得到第二參考幀。步驟206 若為鏡頭拉遠(yuǎn)則對(duì)第一或第二當(dāng)前參考幀LiStk_refi進(jìn)行處理, 得到第四參考幀并將更新后的第一或第二當(dāng)前參考幀設(shè)置為第四參考幀; cwr —Z/i —并標(biāo)注更新后的第一或第二當(dāng)前參考幀已處理過(guò);進(jìn)入步驟 208 ;該步驟中對(duì)第一或第二當(dāng)前參考幀進(jìn)行處理,得到第四參考幀具體為對(duì)第一或第二當(dāng)前參考幀進(jìn)行下采樣,得到第四參考幀。步驟207 前向參考幀列表內(nèi)的第一當(dāng)前參考幀或后向參考列表內(nèi)的第二當(dāng)前參考幀不做處理,即直接設(shè)置更新后的第一或第二當(dāng)前參考幀cun^Listl^refi為第一或第二當(dāng)前參考幀Listl^refi,并標(biāo)注當(dāng)更新后的第一或第二當(dāng)前參考幀已處理過(guò);步驟208 設(shè)置第一參數(shù)M加1,判斷M是否大于1,若是則執(zhí)行步驟208 ;若否則執(zhí)行步驟202 ;步驟209 利用更新過(guò)的前向參考幀列表與后向參考幀列表對(duì)當(dāng)前編碼幀進(jìn)行幀間預(yù)測(cè)。該方法通過(guò)確定當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系,分別按照鏡頭拉遠(yuǎn)或拉近的方式進(jìn)行上下采樣處理,提高了更新后的當(dāng)前參考幀與編碼幀的相似度,從而達(dá)到了優(yōu)化當(dāng)前編碼幀的壓縮效果。在低幀率時(shí),幀與幀之間的鏡頭變化更大,此時(shí)采用本發(fā)明的幀預(yù)測(cè)方法,壓縮性能的提升將更為顯著實(shí)施例3,參見圖3,本發(fā)明提供了一種B幀的幀間預(yù)測(cè)方法,具體為步驟301 預(yù)設(shè)第一參數(shù)M與第二參數(shù)K,M與K為整數(shù);M初始值為0 ;步驟302 選取參考幀列表;即選取ListK,K可以為0或1,在此設(shè)置LiskO為前向參考列表,Liskl為后向參考列表;步驟303 判斷所述的參考幀列表中的第二參數(shù)K是否為0,若為0即當(dāng)前參考幀列表為前向參考幀列表,不為0即當(dāng)前參考幀列表為后向參考幀列表;進(jìn)一步確定前向參考列表內(nèi)的第一當(dāng)前參考幀未處理過(guò),執(zhí)行步驟304,若,以及后向參考列表內(nèi)的第二參考幀沒(méi)有處理過(guò),執(zhí)行步驟304 ;步驟304 確定前向參考幀列表中的第一當(dāng)前參考幀或后向參考幀列表中第二當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系,若是鏡頭拉近則執(zhí)行步驟305,若是鏡頭拉遠(yuǎn)則執(zhí)行步驟 306 ;若不存在鏡頭推遠(yuǎn)拉近,則執(zhí)行步驟307 ;if (鏡頭拉進(jìn))進(jìn)入步驟305 ;else if (鏡頭推遠(yuǎn))進(jìn)入步驟306 ;else 進(jìn)入步驟 307。步驟305 若是鏡頭拉近則對(duì)第一或第二當(dāng)前參考幀Listk_refi進(jìn)行處理, 得到第二參考幀’,進(jìn)一步對(duì)第二參考幀L切進(jìn)行處理,得到第三參考幀 Listk __ refi ;相應(yīng)的,將更新后的第一或第二當(dāng)前參考幀設(shè)置為第三參考幀,
并標(biāo)注更新后的第一或第二當(dāng)前參考幀已處理過(guò),進(jìn)入步
驟 308 ;該步驟具體實(shí)現(xiàn)為對(duì)第一或第二當(dāng)前參考幀進(jìn)行上采樣,得到第二參考幀;將第二參考幀進(jìn)行邊界像素刪除,獲取第三參考幀,使得第三參考幀與第一或第二當(dāng)前參考幀具有相同的分辨率;并且將第二參考幀進(jìn)行邊界像素刪除方法具體為L(zhǎng)istk _ Yefi (m,/2) 二 Listk _Tefi (m + d_heifht k,n + d_ width k)
9
其中為第二參考幀,為第三參考幀,o_widthk、o_heightk為 LiStk_refi第一參考幀的列數(shù)與行數(shù),m_width' k、m_height' k為第二參考幀Z如A: —re/; 的列數(shù)與行數(shù);m、η為參考幀像素的行標(biāo)號(hào)與列標(biāo)號(hào);d_width' k = (m_width' k-o_widthk)/2,d_height' k=(m一height' k-o_heightk)/2步驟306 :若為鏡頭拉遠(yuǎn)則對(duì)第一或第二當(dāng)前參考幀Listk_refi進(jìn)行處理,得到第四參考幀Zk汝一 re/;,進(jìn)一步對(duì)第四參考幀進(jìn)行處理,得到第五參考幀
Listk^refi β — ,相應(yīng)的,將更新后的第一或第二當(dāng)前參考幀設(shè)置為第五參考幀Z&A — re/ ,并標(biāo)注更新后的第一或第二當(dāng)前參考幀已處理過(guò);進(jìn)入步驟308 ;該步驟體實(shí)現(xiàn)為對(duì)第一或第二當(dāng)前參考幀進(jìn)行下釆樣,得到第四參考幀;對(duì)第四參考幀進(jìn)行邊界像素填充擴(kuò)展,獲取第五參考幀,使得第五參考幀與第一或第二當(dāng)前參考幀具有相同的分辨率;其中對(duì)第四參考幀進(jìn)行邊界像素填充擴(kuò)這具體為列填充
權(quán)利要求
1.一種幀間預(yù)測(cè)方法,其特征在于,所述的方法包括 步驟101 預(yù)設(shè)第一參數(shù)Μ, M初始值為0 ;步驟102 選取參考幀列表;步驟103 判斷所述的參考幀列表是前向參考列表還是后向參考列表;若為前向參考列表則執(zhí)行步驟104,若為后向參考列表則執(zhí)行步驟105 ;步驟104 若所述前向參考幀列表內(nèi)的第一當(dāng)前參考幀未處理過(guò),則進(jìn)一步根據(jù)前向參考幀列表中的第一當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系處理第一當(dāng)前參考幀,獲取前向參考幀列表中的更新后第一當(dāng)前參考幀,并標(biāo)注前向參考幀列表內(nèi)的更新后第一當(dāng)前參考幀已處理過(guò),進(jìn)入步驟106 ;步驟105 若后向參考幀列表內(nèi)的第二當(dāng)前參考幀未處理過(guò),則進(jìn)一步根據(jù)后向參考幀列表中的第二當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系處理第二當(dāng)前參考幀,獲取后向參考幀列表中的更新后的第二當(dāng)前參考幀,并標(biāo)注更新后的第二當(dāng)前參考幀已處理過(guò);步驟106 設(shè)置第一參數(shù)M加1,判斷M是否大于1,若是則執(zhí)行步驟107 ;若否則執(zhí)行步驟 102 ;步驟107 通過(guò)所更新后的前向、后向參考幀列表對(duì)當(dāng)前編碼幀進(jìn)行幀間預(yù)測(cè)。
2.根據(jù)權(quán)利要求1所述的幀間預(yù)測(cè)方法,其特征在于,所述的步驟104中,進(jìn)一步根據(jù)前向參考幀列表中的第一當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系處理第一當(dāng)前參考幀,獲取前向參考幀列表中的更新后第一當(dāng)前參考幀,以及所述的步驟105中,進(jìn)一步根據(jù)后向參考幀列表中的第二當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系處理第二當(dāng)前參考幀,獲取更新后的后向參考幀列表中的更新后的第二當(dāng)前參考幀具體為步驟1041 確定所述第一或第二當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系; 步驟1042 若是鏡頭拉近則對(duì)第一或第二當(dāng)前參考幀進(jìn)行處理,得到第二參考幀,并將更新后第一或第二當(dāng)前參考幀設(shè)置為第二參考幀;若為鏡頭拉遠(yuǎn)則對(duì)第一或第二當(dāng)前參考幀進(jìn)行處理,得到第四參考幀,并將更新后第一或第二當(dāng)前參考幀設(shè)置為第四參考幀;若第一或第二當(dāng)前參考幀為第一參考幀,設(shè)置更新后的第一或第二當(dāng)前參考幀為第一或第二當(dāng)前參考幀。
3.根據(jù)權(quán)利要求2所述的幀間預(yù)測(cè)方法,其特征在于,所述的步驟1042中,若是鏡頭拉近則對(duì)第一或第二當(dāng)前參考幀進(jìn)行處理,得到第二參考幀具體為對(duì)第一或第二當(dāng)前參考幀進(jìn)行上采樣,得到第二參考幀。
4.根據(jù)權(quán)利要求2所述的幀間預(yù)測(cè)方法,其特征在于,所述的步驟1042中,得到所述第二參考幀后,進(jìn)一步對(duì)第二參考幀進(jìn)行處理,得到第三參考幀;相應(yīng)的,將更新后的第一或第二當(dāng)前參考幀設(shè)置為第三參考幀。
5.根據(jù)權(quán)利要求4所述的幀間預(yù)測(cè)方法,其特征在于,所述的步驟1042中,進(jìn)一步對(duì)第二參考幀進(jìn)行處理,得到第三參考幀具體為將第二參考幀進(jìn)行邊界像素刪除,獲取第三參考幀,使得第三參考幀與第一或第二當(dāng)前參考幀具有相同的分辨率。
6.根據(jù)權(quán)利要求5所述的幀間預(yù)測(cè)方法,其特征在于,所述的步驟1042中,將第二參考幀進(jìn)行邊界像素刪除方法具體為
7.根據(jù)權(quán)利要求2所述的幀預(yù)測(cè)方法,其特征在于,所述的步驟1042中,對(duì)第一或第二當(dāng)前參考幀進(jìn)行處理,得到第四參考幀具體為對(duì)第一或第二當(dāng)前參考幀進(jìn)行下采樣,得到第四參考幀。
8.根據(jù)權(quán)利要求7所述的幀預(yù)測(cè)方法,其特征在于,得到所述的第四參考幀后,進(jìn)一步對(duì)第四參考幀進(jìn)行處理,得到第五參考幀;相應(yīng)的,將更新后的第一或第二當(dāng)前參考幀設(shè)置為第五參考幀。
9.根據(jù)權(quán)利要求8所述的幀預(yù)測(cè)方法,其特征在于,所述的對(duì)第四參考幀進(jìn)行處理,得到第五參考幀具體為對(duì)第四參考幀進(jìn)行邊界像素填充擴(kuò)展,獲取第五參考幀,使得第五參考幀與第一或第二當(dāng)前參考幀具有相同的分辨率。
10.根據(jù)權(quán)利要求9所述的幀預(yù)測(cè)方法,其特征在于,所述的對(duì)第四參考幀進(jìn)行邊界像素填充擴(kuò)這具體為列填充
11. 一種幀間預(yù)測(cè)裝置,其特征在于,該裝置包括 初始化單元,用于預(yù)設(shè)第一參數(shù)M,M初始值為0 ;第一判斷單元,用于選取參考幀列表,判斷所述的參考幀列表是前向參考列表還是后向參考列表;參考幀單元,用于當(dāng)所述參考幀列表為前向參考幀列表,若前向參考幀列表內(nèi)的第一當(dāng)前參考幀未處理過(guò),則進(jìn)一步根據(jù)前向參考幀列表中的第一當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系處理第一當(dāng)前參考幀,獲取前向參考幀列表中的更新后第一當(dāng)前參考幀,并標(biāo)注前向參考幀列表內(nèi)的更新后第一當(dāng)前參考幀已處理過(guò);設(shè)置第一參數(shù)M加1 ;用于當(dāng)所述參考幀列表為后向參考幀列表,若后向參考幀列表內(nèi)的第二當(dāng)前參考幀未處理過(guò),則進(jìn)一步根據(jù)后向參考幀列表中的第二當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系處理第二當(dāng)前參考幀,獲取更新后的后向參考幀列表中的更新后的第二當(dāng)前參考幀,并標(biāo)注更新后的第二當(dāng)前參考幀已處理過(guò);設(shè)置第一參數(shù)M加1 ;預(yù)測(cè)單元,用于判斷第一參數(shù)M是否大于1,若是則通過(guò)更新后的前向或后向參考幀列表對(duì)當(dāng)前編碼幀進(jìn)行幀間預(yù)測(cè);若否則第一判斷單元繼續(xù)運(yùn)行。
12.根據(jù)權(quán)利要求11所述的幀間預(yù)測(cè)裝置,其特征在于,所述的參考幀單元用于進(jìn)一步根據(jù)前向參考幀列表中的第一當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系處理第一當(dāng)前參考幀,獲取前向參考幀列表中的更新后第一當(dāng)前參考幀,以及進(jìn)一步根據(jù)后向參考幀列表中的第二當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系處理第二當(dāng)前參考幀,獲取更新后的后向參考幀列表中的更新后的第二當(dāng)前參考幀具體為確定所述第一或第二當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系;若是鏡頭拉近則對(duì)第一或第二當(dāng)前參考幀進(jìn)行處理,得到第二參考幀,并將更新后的第一或第二當(dāng)前參考幀設(shè)置為第二參考幀;若為鏡頭拉遠(yuǎn)則對(duì)第一或第二當(dāng)前參考幀進(jìn)行處理,得到第四參考幀,并將第一或第二當(dāng)前參考幀設(shè)置為第四參考幀;若第一或第二當(dāng)前參考幀為第一參考幀,設(shè)置更新后的第一或第二當(dāng)前參考幀為第一或第二當(dāng)前參考幀。
13.根據(jù)權(quán)利要求12所述的幀間預(yù)測(cè)裝置,其特征在于,所述的參考幀單元用于若是鏡頭拉近則對(duì)第一或第二當(dāng)前參考幀進(jìn)行處理,得到第二參考幀具體為對(duì)第一或第二當(dāng)前參考幀進(jìn)行上采樣,得到第二參考幀。
14.根據(jù)權(quán)利要求13所述的幀間預(yù)測(cè)裝置,其特征在于,所述的參考幀單元用于得到所述第二參考幀后,進(jìn)一步對(duì)第二參考幀進(jìn)行處理,得到第三參考幀;相應(yīng)的,將第一或第二當(dāng)前參考幀設(shè)置為第三參考幀。
15.根據(jù)權(quán)利要求14所述的幀間預(yù)測(cè)裝置,其特征在于,所述的參考幀單元用于進(jìn)一步對(duì)第二參考幀進(jìn)行處理,得到第三參考幀具體為將第二參考幀進(jìn)行邊界像素刪除,獲取第三參考幀,使得第三參考幀與第一或第二當(dāng)前參考幀具有相同的分辨率;所述的將第二參考幀進(jìn)行邊界像素刪除方法具體為 Listk _ refi (m, n) = Listk __ ref] (m + d _ heiflit\ ,n + d _ width k)其中Zis汰— re/;為第二參考幀,"為第三參考幀,o_widthk、o_heightk為 Listk^efi第一參考幀的列數(shù)與行數(shù),m_width' k、m_height' k為第二參考幀Zh汰— re/’ 的列數(shù)與行數(shù),m、η為參考幀像素的行標(biāo)號(hào)與列標(biāo)號(hào); d—width' k = (m—width' k_o—widthk)/2, d—height' k = (m—height' k_o_heightk)/2。
16.根據(jù)權(quán)利要求12所述的幀間預(yù)測(cè)裝置,其特征在于,所述參考幀單元用于對(duì)第一或第二當(dāng)前參考幀進(jìn)行處理,得到第四參考幀具體為對(duì)第一或第二當(dāng)前參考幀進(jìn)行下采樣,得到第四參考幀。
17.根據(jù)權(quán)利要求16所述的幀間預(yù)測(cè)裝置,其特征在于,所述參考幀單元用于得到所述的第四參考幀后,進(jìn)一步對(duì)第四參考幀進(jìn)行處理,得到第五參考幀;相應(yīng)的,將第一或第二當(dāng)前參考幀設(shè)置為第五參考幀。
18.根據(jù)權(quán)利要求17所述的幀間預(yù)測(cè)裝置,其特征在于,所述的參考幀單元用于對(duì)第四參考幀進(jìn)行處理,得到第五參考幀具體為對(duì)第四參考幀進(jìn)行邊界像素填充擴(kuò)展,獲取第五參考幀,使得第五參考幀與第一或第二當(dāng)前參考幀具有相同的分辨率;所述的對(duì)第四參考幀進(jìn)行邊界像素填充擴(kuò)這具體為 列填充其中ZbM: —re/;"為第四參考幀,為第五參考幀、0_widthk、o_heightk為 Listkjefi的列數(shù)與行數(shù),m_width〃 ‘ k、m_height〃 ‘ k為/^汰―re/"的列數(shù)與行數(shù),m、η為參考幀像素的行標(biāo)號(hào)與列標(biāo)號(hào);
全文摘要
本發(fā)明提供一種幀間預(yù)測(cè)方法,該方法通過(guò)參考幀列表內(nèi)當(dāng)前參考幀與當(dāng)前編碼幀的關(guān)系不同,按照不同的方法來(lái)處理當(dāng)前參考幀Listk_refi,獲取更新后的當(dāng)前參考幀curr_Listk_refi,提高了更新后當(dāng)前參考幀與編碼幀的相似度,從而達(dá)到了優(yōu)化當(dāng)前編碼幀的壓縮效果。在低幀率時(shí),幀與幀之間的鏡頭變化更大,此時(shí)采用本發(fā)明的幀預(yù)測(cè)方法,壓縮性能的提升將更為顯著。
文檔編號(hào)H04N7/26GK102572419SQ20101061012
公開日2012年7月11日 申請(qǐng)日期2010年12月28日 優(yōu)先權(quán)日2010年12月28日
發(fā)明者舒倩 申請(qǐng)人:深圳市融創(chuàng)天下科技股份有限公司