本申請要求下述申請的優(yōu)先權:2011年1月13日遞交的,發(fā)明名稱為“PictureQuadtreeAdaptiveOffset”的美國臨時申請案No.61/432,482;2011年1月26日遞交的,發(fā)明名稱為“ImprovedOffsetMethod”的美國臨時申請案No.61/436,296;2011年3月22日遞交的,發(fā)明名稱為“SampleAdaptiveOffset”的美國臨時申請案No.61/466,083;及2011年1月9日遞交的,發(fā)明名稱為“ApparatusandMethodofAdaptiveOffsetforVideoCoding”的美國申請案No.12/987,151;于2011年7月6日遞交的,發(fā)明名稱為“APPARATUSANDMETHODOFEFFICIENTSAMPLEADAPTIVEOFFSET”美國專利申請案No.13/177,424;于2011年6月12日遞交的,發(fā)明名稱為“ApparatusandMethodofSampleAdaptiveOffsetforVideoCoding”美國專利申請案No.13/158,427。本申請將上述美國臨時申請案及專利申請案作為參考。
技術領域:
:本發(fā)明有關于視頻處理(videoprocessing),且本發(fā)明尤其有關于與有效的樣本自適應偏移補償的方法及裝置。
背景技術:
::在一視頻編碼系統(tǒng)中,視頻數據被進行多種處理如:預測、轉換、量化、解塊還有自適應回路濾波。沿著視頻編碼系統(tǒng)的處理軌跡,因為在視頻數據上應用上述操作,已處理的視頻數據的某些特征可能從原始視頻數據被改變。如:已處理視頻的平均值可能發(fā)生偏移。強度偏移可能導致視覺損害或者障礙,尤其是強度偏移從幀到幀的變化時更明顯。因此,像素強度偏移需被小心地補償或者恢復以減輕偽影(artifacts)。在此領域,一些強度補償方案已經被使用。一強度補償方案提出,依據已選擇的一上下文,HEVC將已處理視頻數據中的每一像素分類至多個類別中的一個。舉例來說,該上下文可為該已處理視頻數據的像素強度。作為替代的,該上下文可能為當前像素及其周邊像素的組合。取決于該自適應補償在哪里被應用,該已處理視頻數據可表示為重建視頻、解塊視頻、自適應回路濾波視頻或者其他中間階段的視頻。依據該選擇的上下文推導出一特性衡量,且依據該被衡量的特性決定一類別。對于該每一類別,該原始像素與已處理像素之間的強度偏移被決定。本文中該強度偏移也被稱為“偏移值(offsetvalue)”。因此,該偏移值被應用至屬于該類別的該已處理像素以補償該強度偏移?;诿恳幌袼氐念悇e,對于已處理視頻數據的強度偏移補償或者恢復的處理在本文中被稱為“樣本自適應補償”(sampleadaptiveoffset,SAO)。傳統(tǒng)的SAO方案經常基于每一圖像或者每一片(slice)決定該像素的類別。然而,圖像內容一般為動態(tài)的且每一幀的特征可能發(fā)生改變或者一幀內不同分區(qū)的特征也可能發(fā)生改變。因此,一樣本自適應補償方案被于2011年6月12申請的申請?zhí)枮椋篘o.13/158,427,題為“ApparatusandMethodofSampleAdaptiveOffsetforVideoCoding”的美國專利申請披露。其中,一組SAO類型被用于在一個分區(qū)的像素分類,每個SAO類型劃分像素成多個類別。某些SAO類型與基于分類的邊緣偏移相關(edgeoffset),其中,當前像素的分類涉及相鄰像素。由于有多個SAO類型,一個編碼器通常需要獲取多個偏移量,將該偏移量加至像素,然后使用一SAO類型計算每個分區(qū)的失真。因此,SAO模式的決策過程中需要多次訪問圖片緩沖區(qū)。這種多通編碼算法可能會需要大量的外部存儲器訪問導致高功耗和較長的延遲。需要為SAO的模式決策過程執(zhí)行沒有額外的圖像緩沖區(qū)的訪問。在獲得所有SAO參數后,僅需要一額外的通道(pass)依據此執(zhí)行偏移補償。SAO處理首選分區(qū)為基礎,以適應圖片區(qū)域的局部特色。率失真優(yōu)化(RDO)經常被用來引導模式決定(即分區(qū)分割/分區(qū)合并的決定)。通常與RDO進程相關聯的計算是非常計算密集型。需要使用一種快速算法,以加快RDO過程。技術實現要素:公開一種裝置和方法,用于使用率失真優(yōu)化作出對已處理視頻數據的樣本自適應補償(SAO)的補償模式的決定。本發(fā)明的方法,包括:接收一已處理視頻數據;識別SAO的多個模式,根據失真減小估計來估計每一模式相關的失真,基于該失真確定該每一模式的率失真(RD)的成本;在該多個模式中選擇最佳的模式,其中該最佳模式有最小的RD成本,并依據已選擇的最佳模式對已處理視頻數據應用SAO。失真減小估計與該每個模式的像素的數量(iCount),被添加到屬于該每一模式的像素的偏移值(iOffset)及已處理視頻數據相關的原始信號和重構信號之間的偏移值之和(iOffsetOrg)相關。此外,該失真減小估計與(iCount*iOffset*iOffset)-(iOffsetOrg*iOffset*2)有關。本發(fā)明的另一個方面,為SAO分區(qū)分割或分區(qū)合并提供快速算法,其中的一個小分區(qū)的失真減小估計再次用于計算各自的大分區(qū)的失真減小估計。揭露一種裝置和方法,用于已處理視頻數據的樣本自適應補償量補償。根據本發(fā)明的方法包括:接收已處理視頻數據,依據以邊緣偏移(EO)為基礎的分類法,確定已處理視頻數據的一當前像素的類別,其中,該以邊緣偏移為基礎的分類法與當前像素和一個或更多個相鄰的像素有關,使用與該類別相關聯的偏移值補償該當前像素以產生一已補償當前像素;存儲該當前像素和該一個或多個相鄰像素之間的關系,并在確定該當前像素的類別后,在一實質性小的像素周期內以該已補償當前像素替換該當前像素。為了進一步減少所需的計算,該當前像素與該一個或多個相鄰像素之間的關系的至少一部分被用于確定另一像素的類別。該當前像素和該一個或多個相鄰像素之間可以基于一sign函數,且可以使用一個查找表為該當前像素確定類別。附圖說明圖1揭露一視頻編碼器包含一重構回路的系統(tǒng)框圖,該重構回路包含一解塊濾波器和一自適應回路濾波器。圖2揭露一視頻解碼器包含一解塊濾波器及一自適應濾波器的系統(tǒng)框圖。圖3揭露基于像素類別的自適應偏移的范例,其中依據像素C及其相鄰像素n1-n4決定該類別。圖4揭露一視頻編碼器的系統(tǒng)框圖的范例,其中該視頻編碼器中一樣本自適應補償在解塊濾波器后被應用至視頻數據。圖5揭露一視頻編碼器的系統(tǒng)框圖的范例,其中,該視頻數據在重構之后被應用樣本自適應補償。圖6揭露基于帶偏移的兩種SAO類型的范例,其中該第一類別包含中心帶(centralbands),第二類別包含邊緣帶(sidebands)。圖7A-D揭露為了像素類別決定的當前像素及其相鄰像素的四種線性結構。圖8揭露一視頻編碼器的系統(tǒng)框圖,其中在逆變換后樣本自適應補償被應用。圖9揭露一實施例的視頻編碼器的系統(tǒng)框圖,其中該樣本自適應補償被應用至該預測信號。圖10揭露一實施例的視頻編碼器的系統(tǒng)框圖,其中該樣本自適應補償被應用至該解量化信號(de-quantizedsignal)。圖11揭露一循環(huán)分區(qū)劃分的實施例,其中以SAO類型被選擇用于每一分區(qū)。圖12揭露一劃分一分區(qū)至四個子分區(qū)的循環(huán)分區(qū)劃分的實施例,該四個子分區(qū)在水平方向及垂直方向基本具有相同數目的LCU。圖13揭露重復使用基于分類的EO的一先前像素的部分結果(partialresults)的范例。圖14揭露SAO的分區(qū)分割和分區(qū)合并的范例。具體實施方式在一視頻編碼系統(tǒng)中,視頻數據被進行多種處理如:預測、轉換、量化、解塊還有自適應濾波。沿著視頻編碼系統(tǒng)的處理軌跡,因為在視頻數據上應用上述操作,已處理的視頻數據的某些特征可能從原始視頻數據被改變。如:已處理的視頻的平均值可能發(fā)生偏移。強度偏移可能導致視覺損害或者偽影。尤其是強度偏移從幀到幀的變化更明顯。因此,像素強度偏移需被小心地補償或者恢復以減輕該偽影。有多種理由可以導致該已處理視頻數據的某些特性被轉換。該已處理視頻數據的特性的改變可能與其被應用的操作有著本質的聯系。如,當應用一低通濾波器至該視頻數據,相應于銳邊的像素值將減少差值(銳利度或傾斜度),因此該邊緣的一邊的像素值將增加,而另一邊的像素值將減少。其中,銳邊(高頻像素)的位置或特性分類也可以利用一高通濾波器得到。在該范例中,若樣本自適應補償能考慮該邊緣特性,就能夠實現提高視頻質量。原始HEVC提出一種自適應補償方案,依據已選擇的上下文,分類該已處理視頻數據的每一像素至多個類別中的一個。舉例來說,該上下文可為該已處理視頻數據的像素強度。作為替代的,該上下文可能為當前像素及其周邊像素的組合。取決于該自適應補償被應用在何處,該已處理視頻數據可表示為重建視頻、解塊視頻、自適應回路濾波視頻或者其它處于中間階段的視頻。依據該選擇的上下文推導出一特性衡量,依據該被衡量的特性決定一類別。對于每一類別,該原始像素與該已處理像素之間的強度偏移被決定。本文中該強度偏移也被稱為“偏移值”。因此,該偏移值被應用至屬于該類別的該已處理像素以補償該強度偏移?;谠擃悇e的每一像素,對于已處理視頻數據的強度偏移補償或者恢復的處理在本文中被稱為“樣本自適應補償”(sampleadaptiveoffset,SAO)。傳統(tǒng)的SAO方案經?;诿恳粓D像或者每一片(slice)決定該像素的類別。然而,圖像內容一般為動態(tài)的且一幀內不同分區(qū)的特性也可能發(fā)生改變。因此,需要開發(fā)一種樣本自適應補償方案考慮一圖像內的動態(tài)特性,使用一分區(qū)劃分方案以自適應地劃分已處理的視頻數據至不同大小的分區(qū)。進一步,傳統(tǒng)的SAO方案總是用一固定的上下文來決定已處理視頻數據的像素的一類別。如:該SAO可能只使用一固定的16帶的帶偏移(bandoffset,BO)以進行樣本自適應補償。另一范例,該SAO僅使用一3x3窗口作為上下文來決定已處理視頻數據的像素的類別。需要一種樣本自適應方案可以自適應從一組SAO類型中選擇一SAO類型來合適地使用SAO處理已處理的視頻數據的特征,實現更好的質量。因此,本發(fā)明揭示一種樣本自適應方案能夠利用已處理視頻數據中的動態(tài)特征。如圖1所示的編碼器的范例表示了一使用幀內/幀間預測的系統(tǒng)。幀內預測單元110基于同一圖像的視頻數據,負責提供預測數據。對于幀間預測,ME/MC單元112,即運動預測(motionestimation,ME)及運動補償(motioncompensation,MC)被用于基于其它圖像的視頻數據提供預測數據。開關114用于選擇幀內或者幀間預測數據且將該被選擇的預測數據提供至加法器116以產生預測誤差(predictionerrors),也叫殘差(residues)。該預測誤差接著依次被T118(轉換)及Q120(量化)處理。被轉換及量化的殘差被熵編碼單元122編碼相應于該壓縮的視頻數據形成一比特流。與該轉換參數相關的比特流與附加信息(sideinformation)被打包。該附加信息可以為:運動模式和其它與圖像區(qū)域相關的信息。該附加信息也被進行熵編碼以減少所需帶寬。如圖1所示,與附加信息相關的數據被提供至熵編碼單元122。當使用幀間預測模式,一參考圖像或者多個參考圖像在編碼器端須被重構。因此,IQ(逆量化)124及IT(逆轉換)126處理該被轉換及量化的殘差以恢復該殘差。然后,在REC(reconstruction,重構)128,該殘差被加回至該預測數據以重構視頻數據。該重構視頻數據可存儲在參考圖像緩存器134,且被用于預測其它幀。在重構數據被存儲至該參考圖像緩存器134之前,DF(解塊濾波器)130及ALF(自適應濾波器)132被應用至該重構視頻數據以提高視頻質量。該自適應濾波信息在該比特流中被傳輸,因此解碼器可以適當的恢復所需信息以應用自適應濾波器。因此,從ALF132輸出的自適應濾波信息并入該比特流被提供至熵編碼器122。如圖1所示,輸入之視頻數據在編碼系統(tǒng)中經歷了一系列處理。該REC128的重構視頻數據因為上述一系列處理可能發(fā)生強度偏移(intensityshift)。該重構視頻數據進一步被解塊單元130及自適應濾波器132進行處理,這也可能引起強度偏移。因此,需要引入一樣本自適應補償以恢復或者補償該強度偏移。圖2揭示一包含解塊濾波器及自適應回路濾波器的視頻解碼器實施例的系統(tǒng)框圖。因為編碼器也包含一解碼器以重構該視頻數據,因此除了熵解碼器222,一些解碼器元件已經被使用在編碼器中。進一步,僅有運動補償單元212在解碼器端被需要。開關214選擇幀內或者幀間預測模式,且將選擇的預測數據提供至重構單元REC128以與恢復的殘差合并。除了對已壓縮視頻數據執(zhí)行熵解碼,熵解碼單元222還熵解碼附加信息且提供該附加信息至各自的塊。舉例來說,幀內模式信息被提供至幀內預測單元110,幀間模式信息被提供至運動補償單元MC212,自適應濾波信息被提供至ALF132且殘差被提供至IQ124。該殘差由該IQ124處理,IT126及隨后的重構處理,重構該視頻數據。再一次,如圖2所示,從REC128輸出的重構視頻數據歷經包括IQ124及IT126的一系列處理且發(fā)生強度偏移。該重構視頻數據進一步被解塊濾波器130及自適應濾波器132處理,這些也將進一步引起強度偏移。因此,需要一種樣本自適應補償來補償該強度偏移。為了克服偏移問題,于Document:JCTVC-A124,JointCollaborativeTeamonVideoCoding(JCT-VC)ofITU-TSG16WP3andISO/IECJTC1/SC29/WG11,1stMeeting:Dresden,DE,15-23April,2010,McCann等人在公開題為:“Samsung’sResponsetotheCallforProposalsonVideoCompressionTechnology”中揭露了內容自適應極端校正及帶校正。使用基于相鄰像素的內容信息可以開發(fā)局部邊緣特性(localedgecharacteristics)且提高系統(tǒng)表現即獲得更好的視覺質量或者減少比特率。如圖3所示,McCann等人揭示了相鄰像素結構,其中C為當前像素值,n1至n4為四個相鄰像素分別在當前像素的上、下、左及右。如表1所示,依據McCann等人的方法將像素分類至七個類別中:表1.類別(Category)條件(Condition)備注(Note)0C<4neighbors局部最小前”級別(class)”1C<3neighbors&&C=4thneighbor物體邊緣2C<3neighbors&&C>4thneighbor物體邊緣3C>3neighbors&&C<4thneighbor物體邊緣4C>3neighbors&&C=4thneighbor物體邊緣5C>4neighbors局部最大6以上均不是其它對于類別0,該像素C為一局部最小值,也叫一山谷。對于類別5,該像素C為一局部最大值,也叫一山峰。對于類別1、2、3及4,該像素C在一物體邊緣(objectedge)。對于每一類別中的像素,已處理視頻數據的方差值和原始視頻數據的方差值的不同被計算且被傳輸至解碼器。該已處理的視頻數據可以是從REC128出來的重構視頻數據、從DF130出來的解塊數據或者從ALF132中出來的自適應回路濾波數據。分類該邊緣特性至類別(“categories”),也叫級別(“classes”)。雖然圖1及圖2所示實施例中的顯示了視頻編碼的樣本自適應補償可應用的示范性系統(tǒng),其它系統(tǒng)也可以使用本發(fā)明以克服強度偏移問題。舉例來說,在照相機圖像處理系統(tǒng),視頻數據被進行去馬賽克、白平衡、和或者邊緣增強等處理也可能出現強度偏移。如上所述,相關的
背景技術:
:依據底層像素(underlyingpixel)的邊緣特性在DF130和ALF132之間應用一第一強度偏移以恢復已處理數據。而基于底層像素極端特性的自適應偏移則被稱為極端校正(ExtremeCorrection,EXC)。相關的
背景技術:
:依據上述極端校正被應用在重構視頻數據上。決定視頻圖像對應C類的重構視頻數據的平均強度值Vr(c)與原始視頻數據的平均強度值Vo(c)。對應C類的偏移值Vd(c)可以由下述公式決定:Vd(c)=Vo(c)–Vr(c)上述計算得到的該偏移值Vd(c)被加至屬于C類的重構視頻數據上,即:Vr’(c)=Vr(c)+Vd(c),其中,Vr’(c)為偏移校正視頻數據。為了使解碼器為各類應用合適的偏移,該所有類的偏移值Vd(c)均被輸出至該解碼器,需要合適的比特流語法設計來合并該偏移值Vd(c)。基于EXC的自適應偏移410被應用在DF130和ALF132之間的視頻數據上。如圖4所示,揭露了另一種根據底層像素屬于的帶的自適應偏移校正。該方法也被稱為帶校正(bandcorrection,BDC)。在相關的
背景技術:
:中,另公開了一種基于帶的分類法,通過使用像素的p個最高有效位,等同于將強度劃分至間隔相等的2p個類別。在一實施例中,選擇p=4將強度劃分至16個等間隔的帶,也稱為“類別(classes)”。對于每一帶或者類別,計算平均差,并傳送給解碼器,且為每個帶單獨糾正該偏移量。決定視頻圖像的對應帶C或者C類的該重構平均強度值Vr(c)及對應帶C或者C類的原始平均強度值Vo(c)。為了方便起見,使用與EXC同樣的數學標記Vr(c)及Vo(c)。如基于邊緣特性的自適應偏移校正,依據公式Vd(c)=Vo(c)–Vr(c),決定C類的相關的偏移值Vd(c)。上述計算得到的偏移值Vd(c)被加至屬于C類的重構視頻數據,即:Vr’(c)=Vr(c)+Vd(c),其中Vr’(c)為偏移校正視頻數據。相關的
背景技術:
:中應用帶校正至ALF132與參考圖像緩存器134(未顯示)之間的已處理視頻數據。在相關的
背景技術:
:中自適應偏移在DF130和ALF132之間,或者在ALF132與參考圖像緩存器134之間,如圖5所示,該AO510也可以被應用在REC128和DF130之間。對于帶類別,除了16個統(tǒng)一的帶,也可以使用32個統(tǒng)一的帶以增加非零的可能性。在“CE8Subset3:PictureQuadtreeAdaptiveOffset”,Document:JCTVC-D122,JointCollaborativeTeamonVideoCoding(JCT-VC)ofITU-TSG16WP3andISO/IECJTC1/SC29/WG11,4thMeeting:Daegu,KR,20-28January,2011,andin“CE13:SampleAdaptiveOffsetwithLCU-IndependentDecoding”,Document:JCTVC-E049,JointCollaborativeTeamonVideoCoding(JCT-VC)ofITU-TSG16WP3andISO/IECJTC1/SC29/WG11,5thMeeting:Geneva,CH,16-23March,2011及于2011年1月9日申請的美國專利申請,申請?zhí)枮镹o.12/987,151,題為:“ApparatusandMethodofAdaptiveOffsetforVideoCoding”中均有描述。為了減少附加信息(從32偏移至16),如圖6所示,該32統(tǒng)一的帶被劃分成兩個組。在中央16個帶為第一組,兩邊16個帶為第二組。因此,一組偏移被送至中央16個帶(第一組),另一組偏移被送至外圍16帶(第二組)。另外帶的分組也可以是4個一組,或其他數目的分組方式,只要能夠在編碼與解碼端定位是哪幾個帶,并且知道多少的偏移值需要編碼或解碼即可。雖然相關的
背景技術:
:中的自適應處理與底層像素的邊緣特性相關,且該像素特性是基于整個圖像,但是于2011年1月9日申請的美國專利申請No.12/987,151,題為:“ApparatusandMethodofAdaptiveOffsetforVideoCoding”,公開了一種基于替代的邊緣自適應偏移。其使用兩相鄰像素的簡單線性像素結構。使用簡單的像素結構可以減少所需計算量。因此,圖7A-7D揭示了四個簡單像素結構,也稱為像素圖形,分別為垂直線(90度)、水平線(0度)、135度及45度。每個像素結構排列成一短線,且沿著該短線響應強度過渡。即:相較于其它方向,在該垂直線上,一水平邊緣將引起一更明顯的強度過渡。相似的,相較于其它方向的線上,該垂直邊緣在該水平線上將引起更明顯的強度過渡。選擇像素結構可以基于分區(qū),且每一分區(qū)均需要一標記。如表2所示,基于像素結構,該底層像素可以被分成6類分別對應邊緣、山峰、山谷及以上都不是。表2.雖然上述提到的SAO方案使用BO上下文或者EO上下文來分類像素,但是依據本發(fā)明的一實施例使用多種SAO類型。舉例來說,該多種SAO類型包括BO上下文及EO上下文。每一SAO包含一個相關數量的類別。如:在上面的例子中,16類(即:16帶)與第一組BO和第二組BO相關。每四個EO配置或者上下文與6種類別相關。上面例子中提到的類別的數量僅具有說明目的,并不對本發(fā)明作出限制。依據本發(fā)明SAO類型的總數可以被預定、由使用者來確定。進一步,每一SAO類型的分類總數也可以被預定或者由使用者確定或者有畫面大小決定。當使用多個SAO類型,需要使用一語法元素sao_type_idx來識別所選擇的SAO類型。表3揭示包含BO上下文及EO上下文的多個SAO類型的一范例。表3.雖然樣本自適應補償總是被應用至重構之后的視頻信號以恢復視頻信號,但是樣本自適應補償也可以被應用在重構之前。舉例來說,如圖8所示,樣本自適應補償單元810可以在重構單元(REC)128之前應用至逆轉換殘差信號。IT單元126輸出的已恢復殘差信號已被轉換單元118、量化單元120、解量化單元124及逆轉換單元126處理。因此,該殘差信號可能已經發(fā)生強度偏移,且自適應補償對恢復該強度偏移有用。與自適應補償有關的附加信息被熵編碼且合并至該比特流。在另一實施例中,如圖9所示,在預測信號從原始視頻信號減去之前,樣本自適應補償被應用至幀內/幀間預測。依據幀內或者幀間預測得到的預測信號受到各種操作可能產生強度偏移。因此,樣本自適應補償對恢復該強度偏移有效。再在另一實施例中,如圖10所示,該樣本自適應補償器1010可能被應用至解量化124及逆轉化126之間的視頻信號。在相關技術的方法里,該AO總是基于整個幀或者一組圖像。對于一些視頻數據,對應更小的圖像的分區(qū)可具有自適應處理的更多優(yōu)點,因為更小圖像區(qū)域有關的類別可能更接近該分區(qū)底層視頻數據的特性。因此,本發(fā)明使用多層的分區(qū)劃分。每一分區(qū)可以使用四分樹法遞歸的劃分成四個子分區(qū)。與該分區(qū)劃分有關的信息可以使用一語法設計來傳達。該分區(qū)的邊界可以與編碼單元(CU)或者最大編碼單元(LCU)對齊。每一分區(qū)可以選擇一種樣本自適應補償(SAO)類型,如上表中所示的兩種類別的帶偏移(BO)、四種類別的邊緣偏移(EO)或者無處理(OFF)。圖11揭示一種圖像劃分的范例,且每一圖像被使用BO、EO或者OFF類型進行SAO處理,。圖11中的每一小塊表示一LCU。SAO的分區(qū)劃分可基于塊。四分樹劃分的深度數取決于該塊的大小。如果分區(qū)的寬度及高度均小于一塊的大小,則當前分區(qū)的分割處理結束。最大四分樹深度可以為用戶設定深度、預定深度或者圖像大小。該塊的大小可以小于、等于或者大于LCU大小。圖12揭露與LCU對齊的分區(qū)劃分的范例。該分區(qū)使用LCU大小衡量。WidthInLCU為LCU的數量,其表示當前分區(qū)的寬度,且HeightInLCU為LCU的數量,其表示當前分區(qū)的高度。在水平方向劃分WidthInLCU至具有寬度分別為Floor(WidthInLCU/2)及WidthInLCU-Floor(WidthInLCU/2)的兩子分區(qū)。其中函數Floor(x)為一向下取整函數。類似地,在垂直方向劃分HeightInLCU至具有寬度分別為Floor(HeightInLCU/2)及HeightInLCU-Floor(HeightInLCU/2)的兩子分區(qū)。1-D邊緣偏移(EO)的分類比2-DEO分類具有更好的計算效率。然而,表2中所描述的1-D的EO的分類算法仍然需要相當多的操作。需要進一步提高計算效率。因此,本發(fā)明的一個方面,公開了一種基于分類EO的快速算法。的快速算法比較當前像素與兩個相鄰的像素。該比較的結果被提供至一個查找表以確定類別。該比較可以使用一sign()函數來實現。舉例來說,如圖13所示,為一0度EO1310的當前像素C和兩相鄰像素B及D。對(C-B)及(C-D)執(zhí)行一sign操作,即:執(zhí)行sign(C-B)andsign(C-D),其中:一查找表,即edge_table可被用于轉換該比較結果至一分類索引,其中edge_table[x]={1,2,0,3,4}。因此,該1-DEO的分類法可以被推導如下:Category=edge_table[2+sign(C-B)+sign(C-D)].其中,該th值為0,該像素分類與表2所示相同。為像素C計算像素C和像素D的比較結果。如圖13所示,為1-DEO1320,為像素D,將計算像素D和像素C的比較結果。像素C和像素D的比較,可以被重新用于比較像素D和像素C,如:sign(D-C)=-sign(C-D),從而可以節(jié)省一些操作。像素C和像素D的比較,可以被重新用于比較像素D和像素C,則存儲的該當前像素C與其相鄰像素D的關系,即存儲的sign(D-C),在對像素D進行分類時,可重新使用。則可以實現在決定該當前像素C的種類后,使用該已補償的當前像素取代該當前像素C,無需擔心因為當前像素C已經被取代,而無法計算用于像素D分類的sign(D-C),從而可以實現在一顯著小的像素周期內將當前像素C做補償而不影響相鄰像素D的分類。即:存儲該當前像素及一或者更多相鄰像素的關系,在決定該當前像素的種類后,在一顯著小的像素周期內,使用該已補償的當前像素取代該當前像素。雖然sign()函數是用來作為一個用于確定當前像素及其相鄰像素之間的關系的裝置,也可以使用其他的測量方法。雖然以0度的1-DEO作為示例,同樣的快速算法也可以應用到45度,90度,135度EO。本發(fā)明的另一個方面涉及進行SAO決策的簡化的率失真優(yōu)化(RDO)。為取得良好的編碼效率,率失真優(yōu)化(RDO)是一個眾所周知的被用于視頻編碼的技術。RDO可以應用于到SAO決策,如分區(qū)劃分和分區(qū)合并。例如,圖14舉例說明了為SAO進行的分區(qū)劃分和分區(qū)合并。各地區(qū)分區(qū)要達到最佳的失真性能,圖像或圖像區(qū)域,如分區(qū),使用RDO技術,可能會成功地從最大的圖片區(qū)域中分割(自上而下分割)或小圖片分區(qū)可以成功地合并成較大的分區(qū)(自底向上的合并)。圖14揭示了一個三層的圖像結構,其中J0至J20為各分區(qū)的RD成本。對于自頂向下的分割方法,每個分區(qū)相關聯的成本與其相應的分割分區(qū)的成本相比。例如,成本J3與成本(J13+J14+J17+J18)進行比較。如果J3>(J13+J14+J17+J18),與成本J3相關聯的分區(qū)被分割;否則該分區(qū)將不會被分割。同樣,如果J0>(J1+J2+J3+J3),與成本J0相關聯的分區(qū)被分割,否則該分區(qū)不被分割。類似地,分區(qū)合并的處理也可以通過比較與獨立分區(qū)相關聯的成本和一合并分區(qū)的成本來進行。RDO的過程是相當計算密集型。希望開發(fā)一種裝置,用于加快RDO過程。例如,在分區(qū)分割和分區(qū)合并,與一個較大的分區(qū)相關聯的統(tǒng)計信息(即:率和/或失真),可以由其相應的多個較小的分區(qū)獲得。此外,在SAO,在一個圖像中有多個分區(qū),并且為每個分區(qū)測試多個SAO類型。一SAO類型對應一個分區(qū),通常有一編碼器獲得偏移量,添加該偏移量至像素,然后計算失真。因此,SAO模式的決策過程中需要多次訪問圖片緩沖區(qū)。這種多通編碼算法可能會需要大量的外部存儲器訪問導致高功耗和較長的延遲。這也是需要一種執(zhí)行SAO模式決定而無需額外的圖像緩沖區(qū)的訪問。在獲得所有SAO參數后,只需一個額外的通道相應地進行偏移補償。因此,代替計算實際的率和/或失真值,這些值可以被估計。例如,SAO的失真可估計如下:s(k)是原始信號;x(k)是重建信號(reconstructedsignal),可以是解塊信號(deblockedsignal),εrec(k)是重建信號的估計失真;εSAO(k)是SAO信號的估計失真。K是一組將被濾波器處理的像素(asetofpixelstobeprocessedbyfilter),C是一組屬于一個AO類型的像素(asetofpixelsbelongedtoonetypeofAOcategory),P是一組SAO種類,且P是所有SAO種類的一集合(asetofSAOcategory,andPisacollectionofallSAOcategorie),且ac是被加的偏移值(theoffsetvaluetobeadded)。該SAO信號的失真減少量為εSAO(k)-εrec(k),其表示已SAO處理的信號和重建信號之間的均方誤差的不同。其中,Nc是當前類的像素數量(thenumberofpixelofcurrentcategory:iCount);acs是屬于種類k的像素加上的偏移值(theoffsetvaluetobeaddedonthepixelsbelongingtocategoryk:iOffset),且ac是原始信號與重建信號之間的偏移值之和(thesumoftheoffsetvaluebetweenoriginalsignalandreconstructedsignal:iOffsetOrg)。依據上述求導,應用SAO后補償信號的失真減少量dεSAO可以由以下公式(1)估計得到:根據公式(1),應用SAO后補償信號的失真減少量dεSAO可基于當前類的像素的數量、被添加到類k的像素上的偏移值,和原始信號和重構信號之間的偏移值的和。用于RDO處理的成本函數中的失真可以由SAO處理后的信號和原始信號之間導出。為RDO評價各種SAO模式,以選擇一個最好的模式,其中,SAO處理被施加到相同的重建信號。因此,失真減小量dεSAO可以用來取代SAO偏移信號和原始信號之間的均方誤差。如公式(1),使用快速算法,失真減少量dεSAO的計算量可以被估計。另一方面,基于原始失真的減小量或補償信號和原始信號之間的原始失真的求導涉及原始信號的自相關性計算、重構信號的自相關性計算和原始信號及重構信號的互相關性的計算。因此,估計的失真減小量,可以大大減少所需的計算和圖像緩沖區(qū)的訪問。根據本發(fā)明的一個實施例,為每個模式計算估計的失真減小量以及使用估計的失真減小量來評估RDO的成本函數。該模式可以是相關聯的分區(qū)與被優(yōu)化分區(qū)分割/分區(qū)合并。根據候選模式的RDO的成本函數,選擇最佳模式。依據本發(fā)明的實施例的上述樣本自適應補償可以被應用在多種硬件、軟件碼或上述的結合中。舉例來說,本發(fā)明的一實施例可為電路集成到視頻壓縮芯片,或者程序碼集成到視頻壓縮系統(tǒng),以進行相應處理。本發(fā)明的一實施例也可為程序碼在數字信號處理器(DigitalSignalProcessor,DSP)上執(zhí)行以進行相應處理。本發(fā)明還可包含一系列功能,并由電腦處理器、數字信號處理器、微處理器、現場可編程門陣列(FieldProgrammableGateArray,FPGA)執(zhí)行。通過執(zhí)行定義本發(fā)明實施例的機器可讀軟件碼或固件碼,上述處理器可根據本發(fā)明執(zhí)行特定任務。軟件碼或固件碼可在不同程序語言和不同格式或方式中進行。軟件碼可編譯成不同的目標平臺。不過,不同的編碼格式、方式和軟件碼語言,以及與本發(fā)明有關的使碼執(zhí)行任務的其它方法均符合本發(fā)明的精神,落入本發(fā)明的保護范圍。雖然本發(fā)明已就較佳實施例揭露如上,然其并非用以限制本發(fā)明。本發(fā)明所屬
技術領域:
:中一般技術人員,在不脫離本發(fā)明的精神和范圍內,當可作各種的變更和潤飾。因此,本發(fā)明的保護范圍當視之前的權利要求書所界定為準。當前第1頁1 2 3 當前第1頁1 2 3