專利名稱:一種幀間預測方法、裝置的制作方法
技術領域:
本發明涉及視頻編碼領域,尤其涉及一種幀間預測方法、裝置。
技術背景
目前,在視頻編碼過程中,通常使用幀內預測方法來消除圖像的空間冗余度,使用幀間預測方法來消除時間冗余度。由于視頻源的幀間的時間冗余度相比較于幀內的空間冗余度要大得多,那么這就使得幀間預測方法在視頻編碼中顯得極為重要。
幀間預測根據預測方向的不同分為P幀預測和B幀預測。目前主流的P幀預測方法采用前向已編碼的幀作為當前編碼幀的參考幀,利用兩者之間的相似性,壓縮當前編碼幀的信息。這在參考幀與當前編碼幀具有高近似度時,具有很好的效果,但隨著兩者間近似度的降低,壓縮效果也會急劇下降。尤其在對低幀率、全局鏡頭推進等片源進行編碼時, 這個問題將顯著凸現。發明內容
本發明實施例的目的在于提出一種幀間預測方法,旨在解決現有技術中遇到的參考幀與當前編碼幀近似度較小,尤其在對低幀率、全局鏡頭推進等片源進行編碼時,導致壓縮當前編碼幀效果比較低的問題。
本發明提供一種種幀間預測方法,,所述的方法包括
步驟1 確定第一參考幀與當前編碼幀的關系;
步驟2 若是鏡頭拉近則對第一參考幀進行處理,得到第二參考幀,并將當前參考幀設置為第二參考幀;進入步驟3 ;
若為鏡頭拉遠則對第一參考幀進行處理,得到第四參考幀,并將當前參考幀設置為第四參考幀;進入步驟3;
若當前參考幀為第一參考幀,則進入步驟3 ;
步驟3 采用當前參考幀對當前編碼幀進行幀間預測。
本發明還提供了一種幀間預測裝置,該裝置包括
判斷單元,用于確定第一參考幀與當前編碼幀的關系;
鏡頭拉近單元,用于當鏡頭拉近時則對第一參考幀進行處理,得到第二參考幀,并將當前參考幀設置為第二參考幀;
鏡頭拉遠單元,用于當為鏡頭拉遠時則對第一參考幀進行處理,得到第四參考幀, 并將當前參考幀設置為第四參考幀;
預測單元,用于采用當前參考幀對當前編碼幀進行幀間預測。
本發明提出一種的幀間預測方法及裝置。該方法及裝置通過確定當前參考幀與當前編碼幀的關系,分別按照鏡頭拉遠或拉近的方式進行上下采樣處理,提高了當前參考幀與編碼幀的相似度,從而達到了優化當前編碼幀的壓縮效果。在低幀率時,幀與幀之間的鏡頭變化更大,此時采用本發明的幀預測方法,壓縮性能的提升將更為顯著。
圖1是本發明實施例1的方法流程圖2是本發明實施例2的方法流程圖。
圖3是本發明實施例3的結構示意圖。
具體實施方式
為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖和實施例,對本發明進行進一步詳細說明,為了便于說明,僅示出了與本發明實施例相關的部分。應當理解,此處所描寫的具體實施例,僅僅用于解釋本發明,并不用以限制本發明。
本發明提出一種新的P幀的幀間預測方法。該方法通過確定當前參考幀與當前編碼幀的關系,分別按照鏡頭拉遠或拉近的方式進行上下采樣處理,提高了當前參考幀與編碼幀的相似度,從而達到了優化當前編碼幀的壓縮效果。在低幀率時,幀與幀之間的鏡頭變化更大,此時采用本發明的幀預測方法,壓縮性能的提升將更為顯著。
實施例1,參見圖1,該方法主要應用于P幀預測,具體為
步驟101 確定第一參考幀與當前編碼幀的關系;也就是確定第i個參考幀當前編碼幀frame的關系,選擇不同的P幀預測方法;若為鏡頭拉近則執行步驟102 ’若為鏡頭拉遠則執行步驟103 ;若不存在鏡頭拉近或拉遠,即第一參考幀為當前參考幀則執行步驟104 ;
if (鏡頭拉進)進入步驟102 ;
else if (鏡頭推遠)進入步驟103 ;
else Currjefi = ref”進入 104 ;
此處所述的第一參考幀也就是第i個參考幀Mfi ;Cun^refi為更新后的當前參考幀;
步驟102 若是鏡頭拉近則對第一參考幀進行處理,得到第二參考幀,并將當前參考幀設置為第二參考幀;進入步驟104 ;
該步驟方法具體為對Mfi進行上采樣,得到新的參考幀第二參考幀〃/·’;curr _ Yefi = rej] β 一 ,
步驟103 若為鏡頭拉遠則對第一參考幀進行處理,得到第四參考幀,并將當前參考幀設置為第四參考幀;進入步驟104 ;
該步驟方法具體為對Mfi進行下采樣,得到新的參考幀第四參考幀^/T,curr _ Yefi = ref{. _ ,
步驟104 采用當前參考幀對當前編碼幀進行幀間預測。
該方法通過確定當前參考幀與當前編碼幀的關系,分別按照鏡頭拉遠或拉近的方式進行上下采樣處理,提高了當前參考幀與編碼幀的相似度,從而達到了優化當前編碼幀的壓縮效果。在低幀率時,幀與幀之間的鏡頭變化更大,此時采用本發明的幀預測方法,壓縮性能的提升將更為顯著。
實施例2,參見圖2,本發明該方法主要應用于P幀預測,具體為
步驟201 確定第一參考幀與當前編碼幀的關系;若為鏡頭拉近則執行步驟202 ; 若為鏡頭拉遠則執行步驟203 ;若不存在鏡頭拉近或拉遠,即第一參考幀為當前參考幀則執行步驟204 ;
if (鏡頭拉進)進入步驟202 ;
else if (鏡頭推遠)進入步驟203 ;
else Currjefi = refi;進入 204 ;
此處所述的第一參考幀也就是第i個參考幀Mfi ;Cun^refi為更新后的當前參考幀;
步驟202 若是鏡頭拉近則對第一參考幀進行處理,得到第二參考幀,并對第二參考幀進行處理,得到第三參考幀;將當前編碼幀設置為第三參考幀;
該步驟具體為
步驟2021 對第一參考幀Mfi進行上采樣,得到新的參考幀第二參考幀.
步驟2022 對第二參考幀r<’進行邊界像素刪除,獲取第三參考幀化/丨‘’;從而使得第三參考幀 /;.’’與第一參考幀Mfi具有相同的分辨率。(第二參考幀與第三參考幀具有不同的分辨率,在此處第三參考幀是對第二參考幀進行邊界像素刪除以后獲取的)
對第二參考幀re/;進行邊界像素刪除方法為
第三參考中貞戊乂"(講,《) = ref'iim + d _ heiflit' ,n + d _ width)
其中 o_width、o_height 為 Tefi 的列數與行數,m_width'、m_height'為re/.’的列數與行數,m、η為參考幀像素的行標號與列標號;
d_width' = (m_width' -o_width)/2,
d_height' = (m一height' _o一height)/2
步驟 2023 :curr_refi = ref;
步驟203 若為鏡頭拉遠則對第一參考幀進行處理,得到第四參考幀,并對第四參考幀進行處理,得到第五參考幀;并將當前參考幀設置為第五參考幀。
該步驟實現方法具體為
步驟2031 對第一參考幀Mfi進行下采樣,得到新的參考幀第四參考幀
權利要求
1.一種幀間預測方法,其特征在于,所述的方法包括步驟1 確定第一參考幀與當前編碼幀的關系;步驟2 若是鏡頭拉近則對第一參考幀進行處理,得到第二參考幀,并將當前參考幀設置為第二參考幀;進入步驟3 ;若為鏡頭拉遠則對第一參考幀進行處理,得到第四參考幀,并將當前參考幀設置為第四參考幀;進入步驟3;若當前參考幀為第一參考幀,則進入步驟3 ;步驟3 采用當前參考幀對當前編碼幀進行幀間預測。
2.根據權利要求1所述的幀間預測方法,其特征在于,所述的若是鏡頭拉近則對第一參考幀進行處理,得到第二參考幀具體為對第一參考幀進行上采樣,得到第二參考幀。
3.根據權利要求1所述的幀間預測方法,其特征在于,得到所述第二參考幀后,進一步對第二參考幀進行處理,得到第三參考幀;相應的,將當前參考幀設置為第三參考幀,進入步驟3。
4.根據權利要求3所述的幀間預測方法,其特征在于,所述的進一步對第二參考幀進行處理,得到第三參考幀具體為將第二參考幀進行邊界像素刪除,獲取第三參考幀,使得第三參考幀與第一參考幀具有相同的分辨率。
5.根據權利要求4所述的幀間預測方法,其特征在于,所述的將第二參考幀進行邊界像素刪除方法具體為rej] (m, η) = rej] (m + d _ heiflit ,n + d _ width )其中re/;為第二參考幀,re/."為第三參考幀,0_width、0_height為re。當前參考幀的列數與行數,m_width'、m_height'為^/;的列數與行數,m、η為參考幀像素的行標號與列標號;d_width' = (m_width' -o_width)/2,d_height‘ = (m_height' _o_height)/2
6.根據權利要求1所述的幀間預測方法,其特征在于,所述的對第一參考幀進行處理, 得到第四參考幀具體為對第一參考幀進行下采樣,得到第四參考幀。
7.根據權利要求1所述的幀預測方法,其特征在于,得到所述的第四參考幀后,進一步對第四參考幀進行處理,得到第五參考幀;相應的,將當前參考幀設置為第五參考幀,進入步驟3。
8.根據權利要求7所述的幀間預測方法,其特征在于,所述的對第四參考幀進行處理, 得到第五參考幀具體為對第四參考幀進行邊界像素填充擴展,獲取第五參考幀,使得第五參考幀與第一參考幀具有相同的分辨率。
9.根據權利要求8所述的幀間預測方法,其特征在于,所述的對第四參考幀進行邊界像素填充擴這具體為
10.一種幀間預測裝置,其特征在于,該裝置包括 判斷單元,用于確定第一參考幀與當前編碼幀的關系;鏡頭拉近單元,用于當鏡頭拉近時則對第一參考幀進行處理,得到第二參考幀,并將當前參考幀設置為第二參考幀;鏡頭拉遠單元,用于當為鏡頭拉遠時則對第一參考幀進行處理,得到第四參考幀,并將當前參考幀設置為第四參考幀;預測單元,用于采用當前參考幀對當前編碼幀進行幀間預測。
11.根據權利要求10所述的幀間預測裝置,其特征在于,所述的鏡頭拉近單元用于對第一參考幀進行處理,得到第二參考幀具體為對第一參考幀進行上采樣,得到第二參考幀。
12.根據權利要求10所述的幀預測裝置,其特征在于,所述的鏡頭拉近單元進一步用于得到所述第二參考幀后,進一步對第二參考幀進行處理,得到第三參考幀,將當前參考幀設置為第三參考幀。
13.根據權利要求12所述的幀間預測裝置,其特征在于,所述的鏡頭拉近單元用于對第二參考幀進行處理,得到第三參考幀具體為將第二參考幀進行邊界像素刪除,獲取第三參考幀,使得第三參考幀與第一參考幀具有相同的分辨率;其中,所述的將第二參考幀進行邊界像素刪除方法具體為 ref.(m, ) = ref-(m + d_heiflit ,η + d_ width )其中為第二參考巾貞,為第三參考幀,0_Width、0_height為Tefi當前參考幀的列數與行數,m_width'、m_height'為 /;的列數與行數,m、η為參考幀像素的行標號與列標號;
14.根據權利要求10所述的幀間預測裝置,其特征在于,所述的鏡頭拉遠單元用于對第一參考幀進行處理,得到第四參考幀具體為對第一參考幀進行下采樣,得到第四參考幀。
15.根據權利要求10所述的幀間預測裝置,其特征在于,所述的鏡頭拉遠單元進一步用于得到所述的第四參考幀后,進一步對第四參考幀進行處理,得到第五參考幀;相應的, 將當前參考幀設置為第五參考幀。
16.根據權利要求15所述的幀間預測裝置,其特征在于,所述的鏡頭拉遠單元用于對第四參考幀進行處理,得到第五參考幀具體為對第四參考幀進行邊界像素填充擴展,獲取第五參考幀,使得第五參考幀與第一參考幀具有相同的分辨率;其中對第四參考幀進行邊界像素填充擴這具體為列填充
全文摘要
本發明提供了一種幀間預測方法,所述的方法包括步驟1確定第一參考幀與當前編碼幀的關系;步驟2若是鏡頭拉近則對第一參考幀進行處理,得到第二參考幀,并將當前參考幀設置為第二參考幀;進入步驟3;若為鏡頭拉遠則對第一參考幀進行處理,得到第四參考幀,并將當前參考幀設置為第四參考幀;進入步驟3;若當前參考幀為第一參考幀,則進入步驟3;步驟3采用當前參考幀對當前編碼幀進行幀間預測。
文檔編號H04N7/26GK102547265SQ20101061002
公開日2012年7月4日 申請日期2010年12月28日 優先權日2010年12月28日
發明者舒倩 申請人:深圳市融創天下科技股份有限公司