視頻圖像采樣點自適應(yīng)偏移處理方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及視頻圖像處理領(lǐng)域,尤其涉及一種視頻圖像采樣點自適應(yīng)偏移處理方 法及裝置。
【背景技術(shù)】
[0002] 隨著數(shù)字視頻應(yīng)用產(chǎn)業(yè)鏈的快速發(fā)展,視頻應(yīng)用不斷向高清晰度、高幀率、高壓縮 率方向發(fā)展的趨勢愈加明顯,當(dāng)前主流的視頻壓縮標準協(xié)議H. 264 (AVC)的局限性不斷凸 顯。為了面對以上發(fā)展趨勢,2010 年 1 月,ITU-T VCEG (Video Coding Experts Group)和 IS0/IEC MPEG (Moving Picture Experts Group)聯(lián)合成立 JCT_VC( Joint Collaborative Team on Video Coding)的聯(lián)合組織,統(tǒng)一制定下一代編碼標準:HEVC (High Efficiency Video Coding,又稱為H. 265視頻壓縮標準),該協(xié)議標準于2013年1月正式在業(yè)界發(fā)布。
[0003] SA0 (Sample Adaptive Offset,采樣點自適應(yīng)偏移)為H. 265視頻壓縮標準中新 提出的一項技術(shù)方案,位于H. 265編解碼環(huán)路內(nèi)、Deblock (去除塊效應(yīng))濾波之后,通過對 重建圖像的分類,對每一類圖像像素值加減一個偏移,達到減少失真的目的,從而提高壓縮 率,減少碼流。采用SA0后,平均可以減少2%~6%的碼流,而編碼器和解碼器的性能消耗 僅僅增加了約2%。此技術(shù)是下一代視頻壓縮標準中新提案的一項專有技術(shù)算法,目前開源 的代碼給出了 C語言下的軟件實現(xiàn)方法。
[0004] 然而對于視頻編解碼的實時性需求,采用硬件電路設(shè)計是其必然趨勢。而當(dāng)前還 沒有一種適合于硬件實現(xiàn)的計算方法或硬件結(jié)構(gòu)。
【發(fā)明內(nèi)容】
[0005] 基于此,有必要提供一種適用于硬件實現(xiàn)的視頻圖像采樣點自適應(yīng)偏移處理方法 及裝置。
[0006]為實現(xiàn)本發(fā)明目的提供的一種視頻圖像采樣點自適應(yīng)偏移處理方法,其特征在 于,包括以下步驟:
[0007]以視頻圖像當(dāng)前編碼樹單元的一個角為基準,偏移預(yù)設(shè)數(shù)量的像素點后,構(gòu)成與 所述當(dāng)前編碼樹單元大小相同的當(dāng)前編碼樹處理單元;
[0008] 將所述當(dāng)前編碼樹處理單元劃分為每列包含第三數(shù)目像素點的多個列;
[0009]以所述當(dāng)前編碼樹處理單元的偏移角的像素作為起點,讀取所述偏移角的像素所 在列的第一行所有每個像素點及所述每個像素點周圍相鄰的八個像素點的參數(shù)值,并計算 每個像素點的采樣點自適應(yīng)偏移;
[0010] 計算所述第一行的下一行所有像素點的采樣點自適應(yīng)偏移,直至完成當(dāng)前列的所 有像素點的采樣點自適應(yīng)偏移,并轉(zhuǎn)計算所述當(dāng)前列的下一列的每一行的所有像素點的采 樣點自適應(yīng)偏移,直至完成所述當(dāng)前編碼樹處理單元的所有像素點的采樣點自適應(yīng)偏移。
[0011] 作為一種視頻圖像采樣點自適應(yīng)偏移處理方法的可實施方式,所述偏移預(yù)設(shè)數(shù)量 的像素點包括如下步驟:
[0012] 亮度區(qū)塊向所述當(dāng)前編碼樹單元的第一邊偏移第一數(shù)目像素點,向所述第一邊的 臨邊偏移第二數(shù)目像素點;色度區(qū)塊向所述當(dāng)前編碼樹單元的第一邊偏移二分之一第一數(shù) 目像素點,向所述第一邊的臨邊偏移二分之一第二數(shù)目像素點。
[0013] 作為一種視頻圖像采樣點自適應(yīng)偏移處理方法的可實施方式,所述第一數(shù)目等于 第二數(shù)目等于第三數(shù)目為四。
[0014] 作為一種視頻圖像采樣點自適應(yīng)偏移處理方法的可實施方式,計算像素點的采樣 點自適應(yīng)偏移包括以下步驟:
[0015] 讀取所述像素點的標志信息,當(dāng)所述標志信息為第一類型標志時,當(dāng)前像素點不 計算采樣點自適應(yīng)偏移;
[0016] 當(dāng)所述標志信息為第二類型時,根據(jù)當(dāng)前像素點的帶位置參數(shù)和當(dāng)前像素點右移 3比特后的值確定當(dāng)前像素點的采樣點自適應(yīng)偏移;
[0017] 當(dāng)所述標志信息為第三類型時,根據(jù)當(dāng)前像素周圍相鄰的八個像素點的參數(shù)值確 定當(dāng)前像素點的采樣點自適應(yīng)偏移。
[0018] 基于相同發(fā)明構(gòu)思的一種視頻圖像采樣點自適應(yīng)偏移處理裝置,包括控制模塊、 計算模塊、存儲接口模塊及存儲模塊,其中:
[0019] 所述控制模塊與所述計算模塊及所述存儲模塊電連接,用于接收所述計算模塊的 狀態(tài)信息,發(fā)送控制信號到所述計算模塊及所述存儲模塊;
[0020] 所述計算模塊與所述控制模塊及所述存儲模塊電連接,用于計算視頻圖像像素點 的采樣點自適應(yīng)偏移,并與所述存儲模塊進行數(shù)據(jù)存??;
[0021 ] 所述存儲接口模塊與所述控制模塊及所述存儲模塊電連接,用于根據(jù)所述控制模 塊的控制指令完成對存儲模塊的讀寫控制;
[0022] 所述存儲模塊與所述計算模塊及所述存儲接口模塊電連接,用于存儲采樣點自適 應(yīng)偏移計算相關(guān)的參數(shù)及計算結(jié)果。
[0023] 作為一種視頻圖像采樣點自適應(yīng)偏移處理裝置的可實施方式,所述存儲模塊包括 標志信息存儲子模塊、鄰域信息存儲子模塊、濾波重構(gòu)值存儲子模塊及結(jié)果存儲子模塊,其 中:
[0024] 所述標志信息存儲子模塊,用于存儲視頻圖像中每個編碼單元是否需要做采樣點 偏移計算的標志信息;
[0025] 所述鄰域信息存儲子模塊,用于存儲當(dāng)前編碼樹單元相鄰編碼樹單元的信息;
[0026] 所述濾波重構(gòu)值存儲子模塊,用于存儲已得到的視頻圖像的濾波重構(gòu)值;
[0027] 所述結(jié)果存儲子模塊,用于存儲計算得到的視頻圖像的采樣點自適應(yīng)偏移。
[0028] 作為一種視頻圖像采樣點自適應(yīng)偏移處理裝置的可實施方式,所述鄰域信息存儲 子模塊存儲當(dāng)前編碼樹單元上一行編碼樹單元的信息,當(dāng)前編碼樹單元左邊的一個編碼樹 單元的信息,以及當(dāng)前編碼樹單元左上角的一個編碼樹單元的信息。
[0029] 作為一種視頻圖像采樣點自適應(yīng)偏移處理裝置的可實施方式,所述計算模塊包括 四個像素點采樣點自適應(yīng)偏移計算單元,可同時計算四個像素點的采樣點自適應(yīng)偏移。
[0030] 作為一種視頻圖像采樣點自適應(yīng)偏移處理裝置的可實施方式,所述濾波重構(gòu)值存 儲子模塊和所述結(jié)果存儲子模塊每個地址存放視頻圖像中同一行連續(xù)16個像素的信息。
[0031] 作為一種視頻圖像采樣點自適應(yīng)偏移處理裝置的可實施方式,所述標志信息存儲 子模塊、鄰域信息存儲子模塊、濾波重構(gòu)值存儲子模塊及結(jié)果存儲子模塊各為一塊固態(tài)存 儲單元。
[0032] 本發(fā)明的有益效果包括:
[0033] 本發(fā)明提供的一種視頻圖像采樣點自適應(yīng)偏移處理方法及裝置,對當(dāng)前CTU位置 進行適當(dāng)像素點的偏移之后計算偏移后區(qū)域的SA0,整個計算過程可完全使用硬件實現(xiàn),有 利于實現(xiàn)視頻圖像實時性的需求。其裝置可以置于原有的基于CTU的deblock功能模塊之 后使用,滿足硬件資源的需求,易于集成。
【附圖說明】
[0034]圖1為本發(fā)明一種視頻圖像采樣點自適應(yīng)偏移處理方法的一具體實施例的流程 圖;
[0035] 圖2為本發(fā)明一種視頻圖像采樣點自適應(yīng)偏移處理方法的一具體實施例中讀取 像素點示意圖;
[0036] 圖3為本發(fā)明一種視頻圖像米樣點自適應(yīng)偏移處理方法的一具體實施例中一偏 移量索引參數(shù)求取電路圖;
[0037] 圖4為本發(fā)明一種視頻圖像米樣點自適應(yīng)偏移處理方法的一具體實施例中另一 偏移量索引參數(shù)求取電路圖;
[0038]圖5為本發(fā)明一種視頻圖像采樣點自適應(yīng)偏移處理裝置的一具體實施例的系統(tǒng) 結(jié)構(gòu)示意圖;
[0039]圖6為本發(fā)明一種視頻圖像采樣點自適應(yīng)偏移處理裝置的一具體實施例的參數(shù) 存數(shù)示意圖;
[0040]圖7為本發(fā)明一種視頻圖像采樣點自適應(yīng)偏移處理裝置的一具體實施例中標志 信息存儲子模塊存儲示意圖;
[0041]圖8為本發(fā)明一種視頻圖像采樣點自適應(yīng)偏移處理裝置的一具體實施例中鄰域 信息存儲子模塊存儲示意圖;
[0042] 圖9為本發(fā)明一種視頻圖像采樣點自適應(yīng)偏移處理裝置的一具體實施例中SA0計 算亮度區(qū)塊列劃分示意圖;
[0043] 圖10為本發(fā)明一種視頻圖像米樣點自適應(yīng)偏移處理裝置的一具體實施例中SA0 計算色度區(qū)塊列劃分示意圖;
[0044]圖11為本發(fā)明一種視頻圖像采樣點自適應(yīng)偏移處理裝置的一具體實施例中雙數(shù) 型控制時序示意圖;
[0045]圖12為本發(fā)明一種視頻圖像采樣點自適應(yīng)偏移處理裝置的一具體實施例中單數(shù) 型控制時序示意圖。
【具體實施方式】
[0046] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖對本發(fā)明實 施例的視頻圖像采樣點自適應(yīng)偏移處理方法的【具體實施方式】進行說明。應(yīng)當(dāng)理解,此處所 描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0047] 本發(fā)明實施例的視頻圖像采樣點自適應(yīng)偏移處理方法,如圖1所示,包括以下步 驟:
[0048] S100,以視頻圖像當(dāng)前編碼樹單元(coding tree unit,CTU)的一個角為基準,偏 移預(yù)設(shè)數(shù)量的像素點后,構(gòu)成與所述當(dāng)前編碼樹單元大小相同的當(dāng)前編碼樹處理單元。對 于每一要進行處理的編碼樹單元,在處理過程中向其左上方做一定的偏移得到當(dāng)前編碼樹 處理單元。所述當(dāng)前編碼樹處理單元的大部分為當(dāng)前編碼樹單元中的像素,還包括其上方 CTU,左方CTU,以及左上方CTU中的部分像素。而當(dāng)前CTU中剩余的部分像素點留待后續(xù)其 他CTU采樣點自適應(yīng)偏移(Sample Adaptive Offset, SA0)中計算。
[0049] S200,將所述當(dāng)前編碼樹處理單元劃分為每列包含第三數(shù)目像素點的多個列。例 如可設(shè)置每列中每行可包含4個像素、8個像素,或者更多。
[0050] S300,以所述當(dāng)前編碼樹處理單元的偏移角的像素作為起點,讀取所述偏移角的 像素所在列的第一行所有每個像素點及所述每個像素點周圍相鄰的八個像素點的參數(shù)值, 并計算每個像素點的采樣點自適應(yīng)偏移。所述參數(shù)值為進行SA0計算前已經(jīng)獲得的視頻圖 像像素點的濾波重構(gòu)值。所述偏移角是指當(dāng)前CTU作為偏移基準的角偏移之后對應(yīng)的角。
[0051] S400,計算所述第一行的下一行所有像素點的采樣點自適應(yīng)偏移,直至完成當(dāng)前 列的所有像素點的采樣點自適應(yīng)偏移,并轉(zhuǎn)計算所述當(dāng)前列的下一列的每一行的所有像素 點的采樣點自適應(yīng)偏移,直至完成所述當(dāng)前編碼樹處理單元的所有像素點的采樣點自適應(yīng) 偏移。計算當(dāng)前行的SA0之后,對已計算出的參數(shù)進行存儲,以便后續(xù)計算中用作參考。且 用于硬件實現(xiàn)時,已讀取的像素行的信息可用于下一行的像素點SA0的計算。當(dāng)前CTU的 SA0計算完成之后繼續(xù)計算后續(xù)的CTU的SA0,直至完成視頻圖像所有像素點的SA0計算。
[0052] 本發(fā)明實施