專利名稱:一種基于hevc框架的幀內無損壓縮編碼方法
技術領域:
本發明屬于數字圖像無損壓縮編碼的技術領域,具體地涉及一種基于HEVC (HighEfficiency Video Coding,高效視頻編碼)框架的巾貞內無損壓縮編碼方法。
背景技術:
在數字圖像壓縮中,廣泛的采用壓縮技術來減少其中的數據量。傳統的壓縮編碼是基于信息論的理論,認為一般的信息中存在冗余,比如,時間冗余,空間冗余,結構冗余,心理冗余,統計冗余等,通過去除各種冗余信息來達到壓縮的目的。經典壓縮編碼的方法有預測編碼、變換編碼、統計編碼(熵編碼)等。預測編碼和變換編碼是當前圖像編碼器最常用的技術,預測和變換的目的是盡最大努力去除圖像中的空間冗余,然后再使用統計編碼進行壓縮。
預測編碼用相鄰的已知像素或圖像塊來預測當前像素或圖像塊,然后將當前像素的原始值和預測值做差,對殘差進行變換、量化、熵編碼。預測編碼的關鍵在于預測方法的選取,這與圖像信號的概率分布有很大關系。預測編碼有線性和非線性預測兩種。線性預測編碼又稱為差分脈沖編碼調制(Differential Pulse Code Modulation),其優點是算法簡單,易于硬件實現,缺點是對信道噪聲及誤碼很敏感,會產生誤碼擴散,使圖像質量大大下降。為了使用更有效的編碼預測誤差,通常需要建立一個能夠去除預測殘差中的結構冗余的上下文模型。變換編碼將給定的圖像變換到頻域,使大量的信息用較少的數據來表示。通常利用正交變換將圖像從空間域變換到頻率域,圖像經過變換后不丟失任何信息,而且變換前后能量相等。變換后能量大部分集中在低頻部分,高頻部分的系數較小,對變換域系數進行量化、熵編碼,這樣通過去除高頻部分達到壓縮的目的。統計編碼,也被稱為熵編碼,根據信息碼字出現的概率分布,尋找概率與碼字長度的最優匹配進行編碼。這是一種無損壓縮方法,解碼后能無失真的恢復原始圖像。統計編碼把待壓縮的數據流看作是簡單的數字序列,并不關心這些數據的具體語義。常用的統計編碼有游程編碼、哈夫曼編碼和算術編碼。壓縮技術一般分為有損壓縮和無損壓縮。對于類似互聯網中的圖像采用有損壓縮可以獲得更好的效率。無損壓縮技術也有一些應用領域,比如醫學圖像,遙感,指紋等。在過去的若干年間,提出了很多圖像無損壓縮模式,為了達到無損壓縮的目的,需要在這種模式中將變換量化模塊關閉,對于熵編碼,使用類似于有損編碼中的相同的模塊。即將到來的HEVC標準是H. 264的繼續,HEVC框架采用混合編碼結構,用來組織輸入的圖像,其中包括編碼單元⑶(Coding Unit),預測單元PU (Prediction Unit),變換單元TU (Transform Unit)。⑶是用于分割圖像的基本單元,和H. 264中宏塊的概念很類似,不同的是,宏塊大小是固定的,而CU是可以自適應改變大小的。它的形狀是正方形的,最小為8x8,64x64是最大CU (即LCU,Largest Coding Unit)。CU允許遞歸分割成四個大小一樣的塊,這個過程就為基于內容自適應的塊分割提供了方便。
預測單元PU,是用于預測過程中保存信息的基本單元,每個CU可以有一個或者多個PU。變換單元是用于變換和量化時的基本單元。它也是正方形的,對于亮度塊,即Y分量,大小從4x4到32x32,每個⑶有一個或者多個TU。無損壓縮技術從簡單的線性預測發展到非線性預測,提高了預測的準確度,但是無疑會增加時間復雜度。大多傳統的無損壓縮方法是逐像素進行的,這樣需要為每個像素選擇一個預測模式,這種方法不夠靈活,也會帶來很高的復雜度。
發明內容
本發明的技術解決問題是克服現有技術的不足,提供一種時間復雜度較低、預測準確度較高、提高壓縮比的基于ffivc框架的幀內無損壓縮編碼方法。
本發明的技術解決方案是這種基于HEVC框架的幀內無損壓縮編碼方法,包括以下步驟(I)基于HEVC框架、根據圖像平滑程度來自適應調整編碼單元⑶的大小;(2)對當前預測單元I3U進行差分預測編碼DPCM ;(3)進行率失真優化RD0,選擇最優分割方案以及最優預測模式;(4)統計建模,對每個像素進行模型的計算和統計,得出每個模型的數量以及殘差之和;(5)計算當前的當前預測像素所鄰近的像素的殘差能量值,殘差能量值是鄰近像素殘差的絕對值之和,如果該殘差能量值大于預定值則執行步驟(6),否則執行步驟
(7);(6)進行誤差補償,則建立模型,并求出該模型的平均誤差,對預測值進行修正;(7)根據預測模式與掃描模式的映射表,確定掃描順序;(8)對掃描完成的殘差進行熵編碼;(9)向解碼端輸出編碼后的碼流文件;(10)在解碼端,對碼流文件進行熵解碼,解析出殘差信息、預測模式;( 11)利用DPCM進行插值預測;(12)對每個像素建立模型,統計每種模型的數量以及殘差的和;(13)計算預測后每個像素所鄰近像素的殘差的能量和是否大于指定值,如果大于則執行步驟(14),否則執行步驟(15);(14)用統計建模的結果求出殘差平均值,對預測值進行修正;(15)重建圖像,即用預測值和解碼出的殘差進行求和。由于該方法根據圖像的平滑程度進行自適應的分割圖像塊,S卩,平滑的地方分割較大的塊,可以節省碼流,復雜的地方進行細分,可以獲得較高的預測準確度;在實際的自然圖像中很多圖像塊紋理方向幾乎相同,我們以塊為單位來選擇最優的預測模式,那么對于塊中的所有像素只需要編碼一個預測模式即可,因此這樣就會節省碼率,而且由于線性預測本身比較簡單,相對于非線性預測來說,時間復雜度也較低。而對于紋理較復雜的區域,我們進行誤差補償,來彌補線性預測帶來的誤差;這樣就取得了時間復雜度和預測準確度的平衡,從而可以進一步提高壓縮比。
圖1示出了根據本發明的基于HEVC框架的幀內無損壓縮編碼方法的流程圖;圖2示出了根據本發明的步驟(2)的幀內預測角度定義;圖3是圖2中的幀內預測方向和預測模式的映射圖;圖4是根據本發明的差分預測編碼的一個優選實施例;圖5示出了當前像素的鄰近像素。
具體實施方式
如圖1所示,這種基于HEVC框架的幀內無損壓縮編碼方法,包括以下步驟(I)基于HEVC框架、根據圖像平滑程度來自適應調整編碼單元⑶的大小;(2)對當前預測單元I3U進行差分預測編碼DPCM ;(3)進行率失真優化RD0,選擇最優分割方案以及最優預測模式;(4)統計建模,對每個像素進行模型的計算和統計,得出每個模型的數量以及殘差之和;(5)計算當前的當前預測像素所鄰近的像素的殘差能量值,殘差能量值是鄰近像素殘差的絕對值之和,如果該殘差能量值大于預定值則執行步驟(6),否則執行步驟
(7);(6)進行誤差補償,建立模型,并求出該模型的平均誤差,對預測值進行修正;(7)根據預測模式與掃描模式的映射表,確定掃描順序;(8)對掃描完成的殘差進行熵編碼;(9)向解碼端輸出編碼后的碼流文件;( 10)在解碼端,對碼流文件進行熵解碼,解析出殘差信息、預測模式;( 11)利用DPCM進行插值預測;(12)對每個像素建立模型,統計每種模型的數量以及殘差的和;(13)計算預測后每個像素所鄰近像素的殘差的能量和是否大于指定值,如果大于則執行步驟(14),否則執行步驟(15);(14)用統計建模的結果求出殘差平均值,對預測值進行修正;(15)重建圖像,即用預測值和解碼出的殘差進行求和。由于該方法根據圖像的平滑程度進行自適應的分割圖像塊,S卩,平滑的地方分割較大的塊,可以節省碼流,復雜的地方進行細分,獲得較高的預測精度;在實際的自然圖像中很多圖像塊紋理方向幾乎相同,我們以塊為單位來選擇最優的預測模式,那么對于塊中的所有像素只需要編碼一個預測模式即可,因此這樣就會節省碼率,而且由于線性預測本身比較簡單,相對于非線性預測來說,時間復雜度也較低,而對于紋理較復雜的區域,我們進行誤差補償,來彌補線性預測帶來的誤差;這樣就取得了時間復雜度和預測準確度的平衡,從而可以進一步提高壓縮比。優選地,步驟(2)中的差分預測編碼與幀內預測的33個有角度的預測模式融合,角度預測的角度范圍在[_135,45],[-45,45]定義為近似垂直方向,[135,-45]定義為近似水平方向,如果是近似垂直方向采用逐行預測,如果是近似水平方向采用逐列預測。優選地,步驟(6)中的誤差補償包括如下步驟
(6.1)計算參數e,如果預測模式接近垂直方向,則采用公式(1),如果預測模式接近水平方向,則采用公式(2 )e=|X(I, J-1)-X(I_1,J-1) I (I)e= IX(1-2, J)-X(1-1, J) (2)其中X(I,J)為當前要預測的像素;(6.2)通過公式(3)- (5)計算能量Edh= IX (I, J-1) -X (I, J-2) I +1X (1-1, J-1) -X (I~l, J) | (3)+|X(I_1, J)-X(I_1, J+l)dv= IX(I, J-1)-X(1-1, J-1) I +1X(1-2, J)-X(1-1, J) (4)+|X(1-2, J+l)-X(1-1, J+l)E=dh+dv+2e (5);(6. 3)把 E 量化為 8 個等級,量化值為 5,15,25,42,60,85,140 ;(6. 4)如果當前像素預測值大于某個相鄰像素,那么二者的關系就記為1,否則記為0,這一系列0和I組成的序列記為S ;(6. 5)構造模型M= (E,S),每個像素有一個M,通過統計每種模型的個數以及對應的能量值,通過求均值得到每種模型的平均誤差,利用得出的平均誤差來補償當前像素的預測值。優選地,步驟(7)中的掃描方式包括Zig-Zag掃描、水平掃描和垂直掃描。下面我們舉例編碼一幅圖,首先進行分割,因為如果不分割整幅圖而一起處理,數據量很大,所以基于內容或者說是基于圖像平滑程度來分割,可以使碼率最小。基本的結構單位是編碼單元CU,一般先分割為64x64的CU,然后對當前CU進行預測,這個過程中會嘗試所有的分割方案,找到一種最優的分割,衡量的方法就是采用率失真優化(RDO,RateDistortion Optimization)。在有損壓縮中,編碼器的過程一般由預測、變換、量化、熵編碼組成,對預測殘差的變換使得低頻信息集中到圖像的左上角,高頻信息幅值很小,再進行量化操作可以使得很多小幅值的高頻信息都變成0,這樣可以有效的達到壓縮的目的。但是,我們做無損編碼器,沒有變換量化模塊,因為這會引入誤差,就不是無損壓縮了,所以預測的殘差會直接傳遞給熵編碼模塊,因此,無損編碼器主要包括兩部分,預測和熵編碼。想要達到提高壓縮比的目的,就要修改預測或者熵編碼,本方法中保留了 ffiVC中的熵編碼模塊,只修改預測,因此如何預測,是本文的重點。
因為我們壓縮的對象是圖像,所以就相當于視頻壓縮中的幀內壓縮,對應的也就是幀內預測。幀內預測包括兩部分,首先對PU也就是預測單元逐像素的進行DPCM,差分編碼預測,然后判斷當前像素鄰近像素預測準確度是否達到要求(衡量的標準就是計算鄰近像素預測殘差絕對值之和是否大于設定的閾值),如果準確度不夠,那么我們在施加第二種預測方法,也就是誤差補償,對預測結果進行修正。預測后的結果要和原始圖像做差,得到一個殘差塊,因為它用一個二維矩陣表示,所以要采用一定的掃描順序,使其變成一維的。然后對這個一維的向量進行熵編碼。當然對于逐像素編碼來說,前面的已經編碼完成的像素會作為后面像素的已知像素,也就是說后面的像素在預測的時候,可以利用前面已編碼像素的信息,用它們來進行預測。
然后進行DPCM差分預測編碼HEVC幀內預測采用35個預測模式,包括planar (雙線性插值預測),DC (均值預測)以及33有角度的預測模式(如圖2所述)。預測針對的結構對象是預測單元,也就是以I3U為單位進行預測,HEVC中規定,PU是在CU基礎上進行劃分的,在CU上最多再分割一次,也就是最小的PU大小是4x4。傳統的預測,通過相鄰來進行,也就是通過使用左邊、上邊像素(不屬于當前PU,但是已編碼)作為參考來進行預測。然而,如果當前像素距離參考像素比較遠時,預測誤差勢必會受到影響,而且如果當前塊中紋理方向有多個,HEVC幀內預測方法不能隨預測方向的改變進行相應變化。為了解決HEVC幀內編碼中的這兩個問題,我們將DPCM (差分編碼)方法融合到ffiVC幀內預測中,在預測過程中,鄰近已編碼的像素可以作為參考像素。在編碼的過程中, 當前像素從鄰近像素進行預測,而不是從鄰近的PU來預測,這里除了第一行或者第一列使用相鄰PU進行預測,其他行列使用前一行或者前一列進行預測。這里planar和DC預測不作變動,采用ffivc原始方案,主要針對有角度的預測模式。角度預測的角度范圍在[-135,45],我們將這些角度分為水平和垂直兩大部分,以-45度為界限,[-45,45]認為是近似垂直方向,[135,-45]為近似水平方向,之所以分為兩部分,是因為需要根據方向選擇是逐行預測還是逐列預測,這個問題在HEVC原始方案中是不需要的,因為原方案中使用其他PU來預測,而我們的方法中采用逐像素,當前像素需要利用前面像素的信息,因此預測的順序至關重要。如果是近似垂直方向,我們采用逐行預測,如果是近似水平方向我們采用逐列預測。圖4中X為當前I3U中的像素,C、R為相鄰PU的像素。這里我們以大小為4x4的PU為例,說一下如何使用DPCM進行預測。這里我們僅以垂直方向為例。如果預測角度為0,也就是垂直方向,那么PU的第0行使用上面PU的最后一行進行預測,預測值X(0,J) =C(J), J=O. .,3。而其他行用該行的上面相鄰的一行作為參考,也就是預測值X(I,J) =X(1-1,J) 1=1,2,3,J=O,. . 3。如果預測角度在
,PU的第0行和第3列使用上面像素進行預測。1=1,2,3, X(I, J)J=0, I, 2,預測的方法和第0行一樣,不同的就是參考像素變為上面當前像素的上面一行像素。預測角度在[-45,0],第0行和第0列使用HEVC中的方法預測。要預測其他的行,即1=1,2,3,X(I, J)J=1, 2,3,預測值的計算方法和計算第0行的預測值相同,除了參考像素變為1-1行的像素。然后進行誤差建模DPCM預測方法比較適用于圖像中平滑紋理的區域。然而,對于很多圖像或者一個圖像的很多區域來說,可能沒有清晰的紋理。這樣的區域可以通過計算當前像素周圍像素的殘差絕對值的和來識別,這里我們把殘差絕對值之和稱為能量。我們可以設置一個閾值,如果能量小于閾值,我們認為這個區域紋理比較明顯,單純采用DPCM預測就可以很好的進行預測,相反,如果能量大于閾值,我們認為此區域中沒有清晰的紋理,就需要進行誤差補
\-ZX O如圖5所示,假設X(I,J)為當前要預測的像素,我們計算當前像素鄰近像素的能量,也就是臨近像素的殘差絕對值之和,如果大于閾值,那么當前像素就需要進行二次預測,也就是誤差補償,這里通過實驗,我們設置閾值為15。
誤差補償的方法分為兩部分能量部分和結構部分。首先,梯度的定義dh= IX (I, J-1) -X (I, J-2) I +1X (1-1,J-1) -X (1-1,J)+|X(1-1, J)-X(1-1, J+l)dv= I X (I, J-1) -X (1-1,J-1) I + I X (1-2,J) -X (1-1,J)+|X(1-2, J+l)-X(1-1, J+l)能量的定義如下 E=dh+dv+2e如果預測模式接近垂直方向,方程為e=|X(I, J-1)-X(1-1, J-1)如果預測模式接近水平方向,方程為e= I X (1-2, J) -X (1-1, J)我們把E量化為8個等級,量化值為5,15,25,42,60,85,140。我們定義結構為當前像素的預測值和鄰近像素的大小關系,分別用0,I表示。然后,這一系列0和I組成的序列可以用一個整數表示,記為S。比如說,當前像素預測值大于某個相鄰像素,那么他們的關系就記為1,否則標記為O。通過E和S可以構成一個模型,記為M= (E,S)。對于每個像素都會有一個M,我們通過統計每種模型的個數以及對應的能量值,通過求均值可以得到每種模型的平均誤差,我們就是利用得出的平均誤差來補償當前像素的預測值。然后進行掃描在一個塊中,在熵編碼之前,我們需要按照一定的順序對殘差進行掃描。傳統的編碼通過量化系數的分布特性決定使用Zig-Zag掃描順序。然而,在關閉變換量化以后,殘差的分布特點和量化系數有很大變化,量化系數能量主要集中在左上角,但是殘差沒有經過變換量化,所以分布也沒有那種規律,一般就是和預測方向相關的,比如說,水平預測的話,由于按列進行預測,那么后面列的像素都是參考前列的像素,那么很大程度上,殘差分布也是水平方向的比較接近,因此可以采用水平方式掃描,因此基于殘差分布的這種特性,就要根據預測方向來自適應的選擇掃描方式。根據這種特點,我們可以得到三種掃描方式,Zig-Zag掃描,水平掃描和垂直掃描。現在具體說明一個實施例,具體包括1.首先將HEVC中編、解碼端的變換、量化部分關閉因為變換量化會引入誤差,不能無失真重建,因此為了實現無損,需要將這兩部分關閉。實現的方法很簡單,因為整個系統是有序的,比如,有損壓縮編碼端的實現是這樣,一幅圖片先經過預測,然后和原始圖像求差,對殘差再進行變換、量化、熵編碼,解碼端就是逆過程。而現在要去掉變換量化,需要進行兩步操作,一個是去掉變換量化,另一個是將殘差直接進行熵編碼。關閉變換量化,可以將對應的代碼進行注釋,并對配置文件進行修改,需要將量化系數qp設置為0,之前有一些針對變換做后處理的比如SAO,ALF,現在也不需要了也關閉,設置為O。2.然后對I3U進行DPCM預測直接將HEVC中原方案進行替換,HEVC中預測有35中模式,保留planar,DC,改變的是33種有角度預測,將這33種預測模式分為水平和垂直兩部分,水平部分逐行預測,垂直部分逐列預測。對于這兩部分,又分為幾種情況,會根據方向選擇用哪兩個像素還進行插值,如果O度,也就是絕對垂直或水平,就用上面一行或者左邊一列的像素預測;如果O到45度,垂直方向,就用上面和右上方像素來預測,-45度到O度就用上面和左上方像素來預測。對于第一行或者第一列需要利用相鄰PU像素來預測,其他的行、列就利用前一行或者前一列預測。當然有些邊界情況,比如再進行垂直方向O到45度預測時,需要使用上面和右上方像素,對于最后一列,除了第一行外都沒有像素可以參考,這時我們可以簡單處理,就用上面像素進行預測,不會有太大影響。3.進行誤差補償預測之后,將預測值和原始值進行做差,對當前像素鄰近的若干像素的殘差絕對值求和,把絕對值和成為能量,通過鄰近像素預測的準確度來衡量當前像素的預測準確度。如果當前像素鄰近像素能量較大,說明上一步預測不夠準確,原因可能就是選擇的預測模式對這一區域不太匹配,這樣的話,我們推斷用這一預測模式來預測當前像素也不夠準確, 因此對當前像素預測值就進行修正,就需要進行誤差補償。誤差補償采用統計建模的方式。模型由兩部分構成,一部分成為結構信息,一部分為能量信息。結構信息由當前像素預測值與鄰近若干像素的大小關系構成,用一系列的0,I構成一個整數來描述結構信息。用水平和垂直方向梯度和與相鄰兩個像素的誤差構成,量化8級。這樣每個像素根據能量和結構信息可以歸到某種模型中,并記錄每種模型像素的個數,以及誤差和,當當前預測像素屬于某種模型,那么我們用這種模型對應的誤差和除以個數,得出的就是這種模型的平均誤差,再用當前像素的預測值加上平均誤差就是修正后的預測值。4.自適應掃描由于圖像用二維矩陣表示,而熵編碼編碼對象是一維序列,因此要對預測殘差進行一定順序掃描,實現降維目標。在有損模式中,由于存在變換量化,量化系數的分布特點是低頻信息集中于左上角,而無損模式中不進行變換量化,直接對預測殘差進行熵編碼,于是殘差不具有和有損模式量化系數相似的分布特性,殘差分布是均勻的,因此需要調整掃描方式。因為我們調整了預測方法,尤其是方向性預測使得和預測方向一致的像素比較接近,原始值,預測值都類似,因此殘差也比較接近,因為我們掃描的順序依據預測方向來進行可能會提高熵編碼效率,但是因為掃描只有水平或者垂直掃描,因此我們只把方向很接近水平或者垂直方向的才進行掃描改變,其他的還采用Z掃描。5.解碼端相對于編碼端要簡單。解碼過程由熵解碼和預測組成,因為通過解析碼流文件可以得到殘差圖像,預測模式等信息,需要做的就是利用DCPM方法求出預測值,然后根據當前像素鄰近的像素殘差能量是否超過閾值來約定是否進行誤差補償,如果需要的話還要利用統計建模獲得當前像素對應模型的平均誤差,來修正預測值。然后,已修正的預測值和殘差相加便得到了原始圖像。本發明的有益效果如下為了驗證上述所提到的方案的有效性,我們對比較常用的測試圖像進行試驗,和現在比較主流的無損壓縮以及預測方法進行對比,主要比較的是圖像的壓縮比,通過BPP來衡量,BPP表示bitper pixel,即,每個像素需要編碼的比特數,使用平均BPP來衡量編碼效率,BPP越小,說明編碼一個像素使用的比特數越少,壓縮效率就越高,反之,則說明壓縮效率比較低。我們提出的幀內無損編碼模型在HEVC參考軟件HM4. 0上進行實現。HM的配置將量化系數設為0,有損編碼中存在變換,因此如屬于變換的后處理的功能,如去方塊濾波,就需要關閉。在第一個實驗中,我們將DPCM預測算法與現有的幾個預測方法進行比較。包括HEVC自帶的預測方法,GAP (自適應梯度預測),EDP(邊緣檢測預測),TEM (模板匹配)等。
權利要求
1.一種基于HEVC框架的幀內無損壓縮編碼方法,其特征在于包括以 下步驟 (1)基于HEVC框架、根據圖像平滑程度來自適應調整編碼單元⑶的大小; (2)對當前預測單元進行差分預測編碼DPCM; (3)進行率失真優化RDO,選擇最優分割方案以及最優預測模式; (4)統計建模,對每個像素進行模型的計算和統計,得出每個模型的數量以及殘差之和; (5)計算當前的當前預測像素所鄰近的像素的殘差能量值,殘差能量值是鄰近像素殘差的絕對值之和,如果該殘差能量值大于預定值則執行步驟(6),否則執行步驟(7); (6)進行誤差補償,則建立模型,并求出該模型的平均誤差,對預測值進行修正; (7)根據預測模式與掃描模式的映射表,確定掃描順序; (8)對掃描完成的殘差進行熵編碼; (9)向解碼端輸出編碼后的碼流文件; (10)在解碼端,對碼流文件進行熵解碼,解析出殘差信息、預測模式; (11)利用DPCM進行插值預測; (12)對每個像素建立模型,統計每種模型的數量以及殘差的和; (13)計算預測后每個像素所鄰近像素的殘差的能量和是否大于指定值,如果大于則執行步驟(14),否則執行步驟(15); (14)用統計建模的結果求出殘差平均值,對預測值進行修正; (15)重建圖像,即用預測值和解碼出的殘差進行求和。
2.根據權利要求1所述的基于HEVC框架的幀內無損壓縮編碼方法,其特征在于步驟(2)中的差分預測編碼與幀內預測的33個有角度的預測模式融合,角度預測的角度范圍在[-135,45], [-45,45]定義為近似垂直方向,[135,-45]定義為近似水平方向,如果是近似垂直方向采用逐行預測,如果是近似水平方向采用逐列預測。
3.根據權利要求2所述的基于HEVC框架的幀內無損壓縮編碼方法,其特征在于步驟(6)中的誤差補償包括如下步驟 (6.1)計算參數e,如果預測模式接近垂直方向,則采用公式(I),如果預測模式接近水平方向,則采用公式(2) e=|x(i, j-D-xd-1, J-1)(I) e = X(1-2, J)-X(1-11J) II (2) 其中X(I,J)為當前要預測的像素; (6. 2)通過公式(3)- (5)計算能量E dh=|x(i, J-1)-X(I, J-2) HX(1-1,J-1)-X(1-1,j) I(3)+ |X(1-1, J)-X(1-1, J+1)dv= IX(I, J-1)-X(1-1,J-1) I +1X(1-2,J)-X(1-1,J) I(4)+ |X(1-2, J+1)-X(1-1, J+1) E=dh+dv+2e(5); (6. 3)把E量化為8個等級,量化值為5,15,25,42,60,85,140 ; (6. 4)如果當前像素預測值大于某個相鄰像素,那么二者的關系就記為1,否則記為0,這一系列O和I組成的序列記為S ;(6. 5)構造模型M= (E,S),每個像素有一個M,通過統計每種模型的個數以及對應的能量值,通過求均值得到每種模型的平均誤差,利用得出的平均誤差來補償當前像素的預測值。
4.根據權利要求3所述的基于HEVC框架的幀內無損壓縮編碼方法,其特征在于步驟(7)中的掃描方式包括Zig-Zag掃描、水平掃描和垂直掃描。
全文摘要
公開了一種時間復雜度較低、預測準確度較高、提高壓縮比的基于HEVC框架的無損壓縮編碼方法。利用HEVC框架本身,可以實現依據圖像平坦程度來自適應的分割編碼單元,并決定最佳的分割方案,選擇最優的預測模式。利用DPCM差分編碼進行初步預測,對于紋理復雜的區域只用差分編碼可能會使預測誤差較大,因此,對該區域采用誤差補償的方式對預測值進行修正,通過這兩種方法的結合可以獲得降低時間復雜度,提高預測準確度的有效的折中。殘差的分布特點依賴于預測模式,因此根據預測模式決定殘差的掃描順序,可以使熵編碼更加有效。
文檔編號H04N7/26GK103024383SQ20121054381
公開日2013年4月3日 申請日期2012年12月14日 優先權日2012年12月14日
發明者丁文鵬, 劉鐵華, 施云惠, 尹寶才 申請人:北京工業大學