一種適用于hevc標準中幀內預測的參考像素的硬件片上存儲方法
【專利摘要】本發明屬于數字視頻頻【技術領域】,具體為一種適用于HEVC標準中幀內預測的參考像素的片上存儲方法。在HEVC中,幀內預測是基于塊的對象執行的。假設當前編碼的最大單位為一個64×64塊,一個64×64塊中共有256個4×4塊,每個4×4塊中共有7個預測像素作為參考像素使用,至少需要1792個像素的存儲空間。本發明將這些參考像素分開存放在兩個存儲器中:行存儲器用來存儲所有右上、上方和左上的參考像素,共1024個;列存儲器用來存儲所有左上、左方和左下的參考像素,同樣為1024個。其存取地址根據對應的4×4塊在當前64×64塊內的位置決定。本發明可以在有效地提高參考像素的存取能力,減小處理時間,從而實現高清視頻的實時編碼。
【專利說明】-種適用于HEVC標準中幀內預測的參考像素的硬件片上 存儲方法
【技術領域】
[0001] 本發明屬于數字視頻【技術領域】,針對HEVC視頻編解碼標準,具體涉及一種適用于HEVC標準中幀內預測的參考像素的硬件片上存儲方法。
【背景技術】
[0002] HEVC(HighEfficiencyVideoCoding)是由國際電信組織(ITU)和運動圖像專家 組(MPEG)聯合成立的組織JCTVC提出的下一代視頻編解碼標準。目標是在相同的視覺效 果的前提下,相比于上一代標準,即H. 264/AVC標準,壓縮率提高一倍。
[0003] 基于HEVC的視頻編碼器,主要由以下模塊組成:幀內預測、幀間預測、變換、量化、 反量化、反變換、重建、去方塊濾波器、自適應樣點補償等。其中,幀內預測將利用同一幀圖 像內相鄰像素之間的相關性,采用合適的方法進行預測,以減小空間冗余度,從而達到壓縮 的效果。
[0004] 在HEVC中,幀內預測是基于塊的對象執行的,每個方塊由若干個排列成正方形的 像素組成。為了得到當前塊的預測值,即完成對于當前塊的幀內預測,需要該方塊右上、上 方、左上、左方和左下方緊鄰的且已經存在的預測值作為參考,如圖1左上部分所示。這些 預測值是通過執行在對于當前塊的預測之前的、對于相應塊的預測而得到的,并被稱為幀 內預測的參考像素。另一方面,當前塊所產生的預測值亦可能成為其右上、右方、右下、下方 和左下方塊的參考像素,如圖1右下部分所示。由于上述原因,幀內預測的執行需要對參考 像素進行頻繁地讀取和存儲,而這成為了HEVC實時幀內預測的主要瓶頸之一。
[0005] 為了提高預測的準確性,HEVC引入了基于四叉樹的塊結構,具體地,圖像處理塊的 最大單位可以是一個64X64塊,而該64X64塊可以被劃分成4個32X32塊,每個32X32 塊又可以被劃分為4個16X16塊,依次類推直到4X4塊的層次??梢哉f,幀內預測的過程 就是選擇最佳劃分的過程,而在這樣的遍歷過程中,參考像素將被頻繁地產生、存儲、讀取 和更新。因此,對于這些參考像素的存儲方法將直接影響對于資源的占用和編碼的效率。
【發明內容】
[0006] 本發明的目的在于提出一種可以克服現有技術不足的、適用于HEVC標準中幀內 預測的參考像素的硬件片上存儲方法,以便在有效地提1?芯片處理時,提1?參考像素的存 取能力,從而減小處理時間,高效地實現高清視頻的實時編碼。
[0007] 假設當前編碼的最大單位為一個64X64塊,那么對于當前的處理單位,所需要存 儲的參考像素如圖2所示,其中灰色部分是將被作為參考像素使用的預測值,白色部分是 其他預測值。由于最小塊可以是4X4塊,所有4X4塊所涉及的參考像素都需要被存儲和 更新。具體地,一個64X64塊中共有256個4X4塊,每個4X4塊中共有7個預測像素將 作為參考像素使用,因此至少需要1792個像素的存儲空間。其中,右上和上方的參考像素 共768個,左上的參考像素共256個,左方和左下的參考像素共768個。
[0008] 為了降低讀取的難度、加快讀取的速度,本發明將這些參考像素分開存放在兩個 存儲器中,如圖3所示。其中,取名為行存儲器的存儲器用來存儲所有右上、上方和左上的 參考像素,共768+256個,即1024個;取名為列存儲器的存儲器用來存儲所有左上、左方和 左下的參考像素,同樣為1024個。將每個存儲的位寬設定為4個像素,那么所需的深度為 256。其存取地址根據對應的4X4塊在當前64X64塊內的位置決定。
[0009] 讀取時,具體地,所有右上、上方和左上參考像素的存取基地址以當前塊左上角 4X4塊的橫坐標(記為X)減一為低位,縱坐標(記為y)減一為高位;所有左上、左方和左下 參考像素的存取基地址以當前塊左上角4X4塊的縱坐標減一為低位,橫坐標減一為高位:
【權利要求】
1. 一種適用于ffiVC標準中幀內預測的參考像素的硬件片上存儲方法,假設當前編碼 的最大單位為一個64X64塊,一個64X64塊中共有256個4X4塊,每個4X4塊中共有7 個預測像素將作為參考像素使用,因此至少需要1792個像素的存儲空間;其中,右上和上 方的參考像素共768個,左上的參考像素共256個,左方和左下的參考像素共768個;其特 征在于: 將這些參考像素分開存放在兩個存儲器中,其中,行存儲器用來存儲所有右上、上方和 左上的參考像素,共768+256個,即1024個;列存儲器用來存儲所有左上、左方和左下的參 考像素,同樣為1024個;每個存儲的位寬設定為4個像素,所需的深度為256 ;其存取地址 根據對應的4 X 4塊在當前64 X 64塊內的位置決定。
2. 根據權利要求1所述的適用于HEVC標準中幀內預測的參考像素的硬件片上存儲方 法,其特征在于: 讀取時,所有右上、上方和左上參考像素的存取基地址以當如塊左上角4X4塊的橫坐 標減一為低位,縱坐標減一為高位;所有左上、左方和左下參考像素的存取基地址以當前塊 左上角4X4塊的縱坐標減一為低位,橫坐標減一為高位:
此處,是所需讀取的參考像素在行存儲器中的基地址,CbLJoWrrf是所需讀 取的參考像素在列存儲器中的基地址,是當前塊左上4X4塊的橫坐標,是當前塊左 上4X4塊的橫坐標,^,和&都以4X4塊作為計數單位;對于剩下參考像素的讀取地址在 此基地址的基礎上依次加1 ; 與入時,所有右上、上方和左上參考像素的存取基地址以當如塊右下角4X4塊的橫坐 標為低位,縱坐標為商位;所有左上、左方和左下參考像素的存取基地址以當如塊左上角 4X4塊的縱坐標為低位,橫坐標為高位:
此處,是所需寫入的參考像素在行存儲器中的基地址,CtOLJoWtbt是所需寫 入的參考像素在列存儲器中的基地址,是當前塊右下4X4塊的橫坐標,jv是當前塊右 下4X4塊的橫坐標,&和jv都以4X4塊作為計數單位;對于剩下參考像素的讀取地址在 此基地址的基礎上依次減1。
3. 根據權利要求2所述的適用于HEVC標準中幀內預測參考像素的硬件片上存儲方法, 其特征在于通過對于行列存儲器的同時訪問,同時得到右上、上方和左上的參考像素與左 上、左方和左下的參考像素。
【文檔編號】H04N19/423GK104363455SQ201410590925
【公開日】2015年2月18日 申請日期:2014年10月29日 優先權日:2014年10月29日
【發明者】范益波, 黃磊磊, 劉聰, 程魏, 曾曉洋 申請人:復旦大學