專利名稱:用于高效率視頻編碼的條帶邊緣濾波方法及其裝置的制作方法
技術領域:
本發明有關于視頻編碼,并且特別有關于在條帶邊緣(slice boundary)處的與濾波及處理相關的編碼技術。
背景技術:
對于數字視頻壓縮來說,巾貞內預測(intra-prediction)及巾貞間移動補償編碼是非常有效率的壓縮技術,而且也已廣泛地應用于許多編碼標準中,例如MPEG-1/2/4及
H.261/H.263/H.264/AVC。在大多數編碼系統中,移動估計及后續處理主要使用具有16x16個像素的宏塊(macroblock)做為單位。然而,在名為高效率視頻編碼(High EfficiencyVideo Coding, HEVC)的下一代標準的最近發展中,已采用更靈活的塊結構作為處理單位,其可稱為編碼單元(Coding Unit,⑶)。編碼單元可由最大編碼單元(Largest CodingUnit, IXU)開始,且可使用四分樹(quadtree)自適應性地將其切割為多個較小的區塊(block)以達到更佳的性能。不再分成更小編碼單元的區塊可稱為葉編碼單元(Leaf CU),且在相同葉編碼單元中的視頻數據由編碼設定決定并且分享相同的編碼信息。四分樹分割可遞歸地應用在各個IXU上,直到其達到最小編碼單元(Smallest⑶,S⑶),可適當選擇LCU及最小編碼單元的尺寸來平衡系統復雜度與性能。在H.264/AVC編碼標準中,在當下的多個視頻幀被分割為多個條帶,其中各條帶由多個作為最小編碼單位的不重疊宏塊(non-overlapping macroblock)所組成。各條帶可編碼為I條帶(巾貞內編碼條帶)、P條帶(預測條帶)或B條帶(雙向條帶),且壓縮數據可進入條帶層(slice-layer)數據。因為條帶是獨立處理的,來自一個條帶的誤差或數據遺失不會傳播至圖像中的任何其他條帶。更進一步而言,可允許冗余條帶進行可靠傳輸。在最新的高效率視頻編碼發展中,條帶包括多個LCU以取代宏塊。更進一步而言,高效率視頻編碼可允許條帶包括具有分數數量的最大編碼單元以提供在未來的良好編碼粒度(granularity)。另一方面,高效率視頻編碼采用去塊濾波(deblocking filtering)及自適應環路濾波(adaptive loop filtering)以增進客觀及主觀質量。去塊濾波及自適應環路濾波用于當下像素及其相鄰像素。因此,在條帶邊緣使用去塊濾波及自適應環路濾波會導致失去條帶結構獨立處理的特性。若去塊濾波及自適應環路濾波未用在條帶邊緣上,在條帶邊緣上會觀察到瑕疵。因此,需要發展一種視頻濾波及處理的方法及其裝置,以克服在條帶邊緣處相鄰條帶的數據相關性問題。
發明內容
已揭露使用條帶內自適應環路濾波器(ALF)及/或條帶內自適應偏移(AdaptiveOffset,A0)的一種用于視頻圖像編碼的裝置及其方法。每個視頻圖像被分割為多個條帶,并且每個條帶被分割為多個編碼單元。依據本發明實施例,用于視頻編碼的裝置及方法包括重建每個條帶以產生重建條帶以及依據條帶內自適應環路濾波、條帶內自適應偏移或條帶內自適應環路濾波及條帶內自適應偏移的組合來處理重建條帶的步驟。該裝置及方法可包括依據條帶內去塊濾波以選擇性地去塊處理上述重建條帶,其中在依據條帶內自適應環路濾波、條帶內自適應偏移或條帶內自適應環路濾波及條帶內自適應偏移的組合以處理該重建條帶之前,該條帶內去塊濾波用于該重建條帶的該編碼單元。更進一步地,該裝置及方法可包括加入條帶邊緣濾波器(Slice Boundary Filter, SBF)的選擇性步驟,其中該SBF可用于橫跨多個條帶邊緣以濾波多個條帶邊緣像素。該條帶內ALF及AO利用像素擴充或旁路以去除來自其他條帶像素的依附性,其中該像素擴充方法包括垂直優先、水平優先、漢明距離(Hamming distance)及映射貼補。依據本發明,可在視頻比特流中加入多個語法結構,讓允許本發明系統可在各種可能設定中進行選擇。已揭露使用條帶內自適應環路濾波器及/或條帶內自適應偏移的一種用于解碼視頻比特流的裝置及其方法。該比特流與已壓縮的視頻圖像有關,其中每個視頻圖像被分割為多個條帶,且每個條帶被分割為多個編碼單元。在依據本發明的實施例中,該裝置及方法包括依據該視頻比特流重建每個條帶以產生重建條帶,由該視頻比特流恢復ALF及/或AO信息,以及依據該自適應環路濾波器及/或自適應偏移信息使用條帶內自適應環路濾波及/或條帶內自適應偏移處理該重建條帶以提供已處理條帶的步驟。在依據本發明之另一實施例中,該裝置及方法更包括由該視頻比特流恢復SBF信息,以及依據該SBF信息使用條帶邊緣濾波處理該已處理條帶的步驟,其中該條帶邊緣濾波用于橫跨多個條帶邊緣以濾波多個條帶邊緣像素。更進一步地,依據本發明的該裝置及方法利用加入該視頻比特流中的不同語法結構以選擇用于進行適當操作的設定。
圖1描述依據四分樹的示例編碼單元分割。圖2描述條帶分割的示例,其中該分割邊緣對齊最大編碼單元。圖3描述條帶分割的示例,其中該條帶包括分數的最大編碼單元。圖4描述用于高效率視頻編碼的示例視頻編碼器的系統方塊圖。圖5描述用于高效率視頻編碼的示例視頻解碼器的系統方塊圖。圖6描述橫跨條帶邊緣的自適應環路濾波示例。圖7A描述自適應偏移示例一依據像素類型的極端校正,其中該類型依據像素P及其相鄰像素pl-p4決定。圖7B描述自適應偏移示例一依據像素類型的極端校正,其中7個類型依據像素P及其相鄰像素pl-p4定義。圖8描述在條帶邊緣僅使用該條帶的數據的條帶內去塊濾波/自適應環路濾波/自適應偏移的不例。圖9 (A)-(C )描述在條帶邊緣具有條帶邊緣擴充的示例ALF。
圖1OA描述用于ALF及AO的垂直優先貼補以克服條帶邊緣問題。圖1OB描述用于ALF及AO的水平優先貼補以克服條帶邊緣問題。圖1OC描述依據漢明距離用于ALF及AO的貼補以克服條帶邊緣問題。圖1OD描述依據各種方法用于5x5ALF的數據貼補的示例。圖11描述用于3x3ALF/A0濾波器的旁路邊緣像素的示例方法。圖12描述依據本發明實施例使用條帶邊緣濾波器的用于高效率視頻編碼的視頻編碼器系統方塊圖。圖13描述依據本發明實施例使用條帶邊緣濾波器的用于高效率視頻編碼的視頻解碼器系統方塊圖。圖14A描述依據本發明的與條帶內ALF/A0及條帶邊緣濾波器有關的示例序列參
數集合語法。圖14B描述依據本發明的與條帶內ALF/A0及條帶邊緣濾波器有關的示例圖像層語法。圖14C描述依據本發明的與條帶內ALF/A0及條帶邊緣濾波器有關的示例條帶頭語法。圖15A描述依據本發明的與條帶內ALF/A0及條帶邊緣濾波器有關的選擇性的序列參數集合語法。 圖15B描述依據本發明的與條帶內ALF/A0及條帶邊緣濾波器有關的選擇性的圖
像層語法。圖15C描述依據本發明的與條帶內ALF/A0及條帶邊緣濾波器有關的選擇性的條帶頭語法。
具體實施例方式對于數字視頻壓縮來說,巾貞內預測(intra-prediction)及巾貞間移動補償編碼是非常有效率的壓縮技術,而且也已廣泛地應用于許多編碼標準中,例如MPEG-1/2/4及
H.261/H.263/H.264/AVC。在大多數編碼系統中,移動補償及后續處理主要使用具有16x16個像素的宏塊作為單位。然而,在最新的高效率視頻編碼(HEVC)發展中,已采用更靈活的塊結構為單位,其可稱為編碼單元(Coding Unit,CU)。編碼過程可由最大編碼單元(Largest Coding Unit,IXU)開始,且可使用四分樹(quadtree)自適應地將最大編碼單元切割為多個較小的塊。編碼單元分割可依據四分樹結構將編碼單元分割為4個較小的編碼單元。四分樹分割可遞歸使用,由最大編碼單元開始,直到達到最小編碼單元為止,其中可適當地設計最大編碼單元及最小編碼單元的尺寸以達到良好的系統性能。為了抑制編碼噪聲傳播(例如量化誤差),在許多編碼系統中使用環路濾波(loop filtering),例如在H.264/AVC及高效率視頻編碼中的去塊濾波器(Deblocking Filter, DF)以及高效率視頻編碼中的自適應環路濾波(Adaptive loop filtering, ALF)及自適應偏移(Adaptive0ffset,A0)。在條帶邊緣使用去塊濾波器及自適應環路濾波/自適應偏移會需要來自其他條帶的像素數據并且會造成失去獨立條帶處理特性。高效率視頻編碼的去塊濾波器操作于無限脈沖響應(Infinite ImpulseResponse, !IR)形式,其中當完成各區塊邊界的去塊濾波處理時,所處理的目前像素會被儲存,從而讓所處理的目前像素可用于相同條帶的任何后續像素處理。因此,需要預先定義去塊濾波器的順序,使得解碼器為了適當解碼采用相同順序執行去塊濾波。當去塊濾波器用于條帶邊緣時,重建條帶無法開始進行去塊濾波,直到其相關條帶像素已經完成去塊濾波。因此,在條帶邊緣的傳統去塊濾波會造成較長處理延遲。相對地,自適應環路濾波常使用有限脈沖響應(Finite Impulse Response, FIR)形式,其中自適應環路濾波的操作依據在濾波窗(filter window)中非自適應濾波(ηοη-ALF)處理過的數據。然而,當自適應環路濾波應用在條帶邊緣時,其會造成失去獨立條帶處理特性。自適應偏移處理亦常以有限脈沖響應(FIR)形式,且其會造成失去獨立條帶處理特性。因此,亟需發展新的去塊濾波、自適應環路濾波及自適應偏移算法以當其應用至圖像條帶時仍可維持獨立條帶處理特性。也亟需發展所需的比特流語法以增進編碼器與解碼器的協同運作。圖1描述依據四分樹的示例編碼單元分割。在深度cbpth=0,初始編碼單元⑶0112由64x64個像素所組成,且為最大編碼單元。初始編碼單元⑶0112依據如方塊110所示的四分樹分割而定。分割旗標(split flag)0表示目前編碼單元未被分割,并且另一方面,分割旗標I表示目前編碼單元依據該四分樹分割為四個較小編碼單元122。所產生的4個編碼單元標示為0、1、2及3,且各個編碼單元成為在下一深度用于進一步分割的編碼單元。由編碼單元CU0112所產生的多個編碼單元稱為編碼單元CU1122。在依據該四分樹將編碼單元分割后,所產生的多個編碼單元會由進一步的四分樹分割支配,除非編碼單元已達到預先指定的最小編碼單元尺寸。因此,在深度1,編碼單元CU1122依據方塊120所示的四分樹進行分割。再次,分割旗標O表示目前編碼單元未被分割,且另一方面,分割旗標I表示目前編碼單元依據該四分樹分割為四個較小編碼單元⑶2132。編碼單元⑶2132具有16x16的尺寸,且如方塊130所示四分樹分割的過程可以繼續直到達到預先指定的最小編碼單元。舉例來說,若該最小編碼單元被選擇為8x8,在深度3的編碼單元CU3142將會受限于如方塊140所示的無法作進一步分割。產生不同尺寸編碼單元的一張圖像的四分樹分割集合構成分割圖(partition map)以讓編碼器據以處理輸入圖像區域。該分割圖需要傳播至解碼器,從而可相應執行解碼流程。在H.264/AVC視頻編碼標準中,當前的多個視頻圖像被分割為多個條帶,其中各條帶由多個作為最小 單位的不重疊宏塊組成。各條帶可編碼為I條帶(幀內編碼條帶)、p條帶(預測條帶)或B條帶(雙向條帶),且壓縮數據可進入條帶層數據。隨著高效率視頻編碼標準的發展,最大編碼單元(LCU)可用以作為初始編碼單元。該最大編碼單元可自適應地分割為較小的多個編碼單元以進行更有效處理。用于H.264的基于宏塊的條帶分割可擴充至高效率視頻編碼的基于最大編碼單元的條帶分割。高效率視頻編碼的基于最大編碼單元的條帶分割的示例如圖2所示,其中24個最大編碼單元被分為三個條帶。LCUOO至IXU07被指派至條帶0,210所示,IXU08至IXU15被指派至條帶1,220所示,且IXU16至^^23被指派至條帶2,230所示。如圖2所示,條帶邊緣與最大編碼單元邊緣對齊。雖然對齊該最大編碼單元的條帶分割是容易實現的,但是最大編碼單元的尺寸通常比宏塊尺寸大很多,且與最大編碼單元對齊的條帶無法提供足夠的粒度以支持編碼系統的動態環境。因此,在高效率視頻編碼標準發展中正在提出不對齊最大編碼單元(non-1XU aligned)的條帶分割。圖3描述具有分數最大編碼單元分割的條帶結構示例,其中分割邊緣可貫通最大編碼單元。條帶O,310包括IXUOO至IXU06,并在IXU07的葉編碼單元結束。IXU07分散于條帶0,310與條帶1,320中。條帶1,320包括未包括于條帶0,310的IXU07剩下的葉編碼單元,以及IXU08至IXU15,及部分的IXU16。條帶1,420在IXU16的葉編碼單元結束。IXU16分散在條帶1,320與條帶2,330中。條帶2,330包括未包含于條帶1,320的IXU16剩下的葉編碼單元,以及IXU17至IXU23。在高效率視頻編碼的編碼器系統中,視頻數據被分割為多個條帶以進行獨立處理,以避免誤差在同一圖像中的條帶至另一條帶的誤差傳播。該條帶可包括分數數量的最大編碼單元,且各最大編碼單元可依據四分樹更進一步分割至多個編碼單元,且視頻壓縮可應用至獨立的編碼單元。用于傳統編碼系統的移動估計/補償通常是以宏塊為基礎。如圖4所示的示例編碼器表示使用幀內/幀間預測的系統。幀內預測410用以提供依據在同一圖像中視頻數據的預測數據。對于巾貞間預測,移動估計(Motion Estimation, ME)及移動補償(Motion Compensation, MC) 412用以提供基于來自一張或多張其他圖像的視頻數據的預測數據。開關414選擇幀內預測或幀間預測數據,且將所選擇的預測數據提供至加法器416以產生預測誤差,亦可稱為殘差值(residues)。預測誤差接著由轉換(T)418及其后的量化(Q)420所處理。轉換及量化后的殘差值接著由熵編碼422所編碼以產生與該壓縮視頻數據有關的比特流。與該轉換系數有關的該比特流接著與側信息(side information)一同包裝,例如移動、模式及與圖像區域相關的其他信息。該側信息也用于熵編碼以降低所需帶寬,且與該側信息有關的數據應相應地被提供至熵編碼422,如圖4所示。當使用幀間預測模式時,一或多張參考圖像需在編碼器端進行重建。因此,轉換及量化后的殘差值可用反量化(IQ) 424及反轉換(IT) 426來處理以恢復該殘差值。該殘差值接著在重建(REC) 428被加回預測數據436以重建視頻數據。重建后視頻數據可儲存于參考圖像緩沖器434,且用于其他幀的預測。然而,去塊濾波器430及自適應環路濾波器432可在該視頻數據被儲存于該參考圖像緩沖器前應用于該重建后的視頻數據以改善視頻質量。該自適應環路濾波器數據必須在該比特流中進行傳送,使得解碼器可適當地恢復所需信息以用于該自適應環路濾波器。因此,來自自適應環路濾波器432的自適應環路濾波器信息可提供至熵編碼422以并入最后的比特流中。使用 去塊濾波器及自適應環路濾波器是選擇性的。自適應偏移(AO)并未明示于圖4中,其為另一選擇性處理,其可通過校正由處理所造成的亮度偏移以增進圖像質量。自適應偏移的使用可介于自適應環路濾波器432及參考圖像緩沖器434之間,或是在去塊濾波器430及自適應環路濾波器432之間。圖5描述用于高效率視頻編碼的視頻解碼器的系統方塊圖。因為該編碼器亦包括重建該視頻數據的部分,一些解碼器的部分已在該編碼器中使用。然而,熵解碼器522并不用于該編碼器。更進一步地,對于該解碼器端僅需要移動補償512。開關514選擇幀內預測或幀間預測,且將所選擇的預測數據提供至重建(REC) 428以與所恢復的殘差值結合。除了進行用于壓縮視頻數據的熵解碼之外,熵解碼522更可用于側信息的熵解碼,并提供該側信息至相對應的區塊。舉例來說,將幀內模式信息提供至幀內預測410,將幀間模式信息提供至移動補償512,將自適應環路濾波器信息提供至自適應環路濾波器432,且將殘差值提供至反量化424。該殘差值由反量化424、反轉換426及后續重建流程處理以重建該視頻數據。若在編碼器側使用自適應偏移,則該解碼器可使用自適應偏移處理已重建的視頻數據,其在圖5中并未明示。依據在該比特流或其他中的側信息,該解碼器可適當地設定自適應偏移。如圖4及圖5所示,DF及ALF用以在重建后的圖像儲存在該參考圖像緩沖器434之前對該重建后的圖像進行處理。DF在H.264/AVC中是逐一對宏塊進行處理,在高效率視頻編碼中是逐一對最大編碼單元進行處理。當圖像被分割至多個條帶時,DF可橫跨條帶邊緣進行處理。在AVC及高效率視頻編碼中,條帶邊緣的去塊處理依賴來自一個或多個其他條帶的已去塊處理像素。因為DF用IIR的形式,在一個條帶中的區塊處理順序需預先定義,使得解碼器可按照在編碼器中的相同順序處理。相似地,若DF用于橫跨條帶邊緣,條帶的處理順序可同樣預先定義,使得該解碼器可按照在編碼器中的相同順序處理。若當前條帶參照先前的一個或多個條帶,則直到先前的一個或多個條帶已進行去塊處理之前將無法開始當前條帶的去塊處理。舉例來說,解碼器接收在圖像中下方部分的條帶可能會早于在該圖像中上方部分的條帶。若該條帶處理順序是按照該圖像由上至下,則直到上方部分的條帶已被重建及去塊處理之前,下方部分的條帶的去塊處理無法開始。ALF及/或AO亦使用與DF同樣的方式于橫跨條帶邊緣,并與DF —樣遇到相同的問題。當DF、ALF及AO的任一者應用于橫跨條帶邊緣,在一幀中的條帶處理不再獨立于其他條帶,且條帶需等待,直到其DF,ALF或AO所相依的一個或多個條帶完成為止。這種相依性禁止同時處理DF、ALF及A0。為了克服上述問題, 揭露可使得編碼系統進行獨立條帶編碼或解碼的條帶內DF、ALF及A0。選擇性的條帶邊緣濾波器亦被揭露,其可用以減少在條帶邊緣的瑕疵。圖6描述橫跨于條帶邊緣620的自適應環路濾波的示例,其使用了 3x3濾波器610。像素E的ALF操作會需要來自其他條帶的像素G、H及I。對于HEVC,也要考慮自適應偏移,并且會遇到相同的邊緣問題。為了簡化,大部分示例基于ALF而描述。然而,該方法可直接或經過修改應用到A0。在重建、DF及ALF的各種處理后,像素亮度會與原始視頻數據有偏差。為了克服該偏移問題,McCann等人已在“Samsung,s Response to the Call forProposals on Video Compression Technology,,(文件:JCTVC_A124, Joint CollaborativeTeam on Video Coding (JCT-VC) of ITU-T SG16WP3and IS0/IEC JTC1/SC29/WG11,第一次會議:德累斯頓,德國,2010年4月15-23日)中揭示了一種內容自適應極端校正(contentadaptive extreme correction)處理。該極端校正處理是AO的一種版本,其可依據目前像素值P及四個相鄰像素值P1-P4,分別為如圖7A所示之上、左、下、右方像素,將去塊處理后的像素分類為一定數量的類型。基于相鄰像素使用內容信息可探尋區塊邊緣特征,且可產生增進的性能,例如較佳的視覺質量或比特率降低。如圖7B所示,McCann等人定義了總共7種類型。關于類型0,像素P是區域最小值,且可稱為谷(valley)。關于類型5,像素P是區域最大值,且可稱為峰(peak)。關于類型1、2、3及4,該像素P是在物體邊緣。對于在類型6之外的各類型像素,會計算處理后的視頻數據平均值與原始視頻數據平均值之間的差值,并將其傳送至該解碼器。可在DF與ALF之間或ALF與參考圖像緩沖器之間應用A0。對于每個類型c,會計算該偏移值Vd (C)。該類型偏移值的計算為原始像素Vo (c)的平均亮度與重建像素Vr(C)的平均亮度之間的差值,即Vd(C)=Vo(C) -Vr(c)0在依據傳統DF、ALF及AO處理的系統中,因為條帶與其他條帶的相依性,該條帶的DF、ALF及AO操作需等到其他條帶完成。DF流程以IIR形式進行操作,其中DF是以編碼單元為基礎逐一完成,且當DF與先前處理編碼單元的像素有關時,使用去塊處理后的像素。另一方面,ALF及AO常以FIR的形式進行操作,且不需等待相鄰的編碼單元完成。然而,ALF及AO對由DF處理的像素進行操作。因此,依據傳統DF的系統會導致較長的解碼延遲。舉例來說,若條帶2,330早于條帶0,310及條帶I,320被接收,條帶2,330的DF、ALF及AO處理必需等待條帶0,310及條帶1,320已經重建且已去塊處理后才能執行。在前述例子中,該編碼器可依據循序掃描順序(raster scan order)進行DF,且將條帶O、I及2依序處理。為了增強各條帶的獨立解碼,會在不需要條帶邊緣外數據的每個條帶中進行DF及ALF處理。僅需要來自目前條帶像素的DF/ALF/A0可稱為條帶內DF/ALF/A0。在所有條帶均被條帶內DF/ALF/A0處理過后,會加入條帶邊緣濾波器(SBF)以橫跨條帶邊緣過濾。該SBF可由該比特流中的序列參數集合(Sequence Parameter Set, SPS)來致能或禁能。該SBF可用于內回路(in-loop)或后回路(post-loop)。該后回路設定在該領域也可稱為后處理設定。內回路SBF在該視頻重建回路中進行操作,其中過濾后的樣本儲存至該參考圖像緩沖器,用以預測后續圖像。另一方面,后回路SBF在該視頻重建回路外進行操作,且過濾后的樣本僅用于顯示,而不儲存于該參考圖像緩沖器434。后回路SBF也可稱為后回路SBF0該內回路或后回路選擇也在該SPS中傳遞。圖8描述僅使用條帶內數據的條帶內DF/ALF/A0的示例。條帶邊緣810是在條帶0,310及條帶I,320之間,且條帶邊緣820是在條帶1,320及條帶2,330之間。當該條帶內DF/ALF/A0應用于條帶0,310,該處理僅依據在條帶0,310中的像素而不采用條帶1,320中的像素。相似地,當該條帶內DF/ALF/A0應用于條帶1,320,該處理僅依據在條帶1,320中的像素而不采用條帶0,310或條帶2,330中的像素。依據本發明實施例,該條帶內DF會跳過(skip)在條帶邊緣的像素去塊處理。相反地,依據本發明實施例的條帶內ALF/A0會在條帶邊緣使用數據擴充(data extension),使得ALF/A0不會依據來自其他條帶的像素。圖9A描述依據傳統ALF在條帶邊緣的3x3ALF的情況。用于處理像素E的該3X3ALF窗910包括像素A、B、C、D、E、F、H、I及J。該條帶邊緣930用粗線表示。如圖9A所示,用于像素E的該3x3ALF處理與在另一條帶中的像素J有關。另一方面,用于處理像素J的該3x3ALF窗920包括像素E、F、G、1、J、K、L、M及N,其中像素E、F、G、I及L與像素J不在同一條帶中。為了去除其他條帶相關性,可使用條帶邊緣擴充。舉例來說,用于像素E的該3x3ALF窗940可用(I+F)/2取代像素J的值,其中像素I及F均是來自相同的條帶,如圖9B所示。因此,該3x3ALF940不依據來自其他條帶的像素。用于像素J的該3 x3ALF窗950可用沿著垂直及水平邊緣的各自映像圖像來取代像素E、F、G、I及L的值,如圖9C所示。因此,該3x3ALF950不依據來自其他條帶的像素。如圖7A所示,AO的操作也可依據相鄰像素,且會遇到相同的條帶邊緣問題。這里所揭露的條帶邊緣擴充方法也可應用至A0。雖然圖9B-9C描述了條帶邊緣擴充的兩個示例,但是也可使用其他方法。當ALF/AO的操作用于像素P時,該操作會依據像素Q,其與像素P不在同一條帶中,即Q在該目前條帶的外面。為了要系統性地產生像素Q的取代像素Q*,許多邊緣擴充方法揭露如下。圖10A描述用于ALF及AO的垂直優先貼補(vertical-first padding)以克服該條帶邊緣問題。垂直優先貼補的條帶內ALF/A0可用優先來自垂直方向在該條帶中的最接近像素來取代像素Q。如圖10A所示,在方塊1002中從距離D等于I處開始搜尋取代像素。檢查在像素Q上方相距距離D的像素QT,其中QT=I (XQ, Yq+D) , (XQ, YQ)為該像素Q的位置,且I (X,Y)為在該位置(X,Y)的像素值。在方塊1012,檢查像素QT以決定其是否在P的相同條帶中。若QT在相同條帶中,在方塊1013,選擇QT為該取代像素,且完成處理。否則,如方塊1014及1016所示,該處理檢查在像素Q下方的像素QB。若QB在相同條帶中,在方塊1017,選擇QB為該取代像素,且完成處理。否則,如方塊1018-1021及1022-1025所示,該處理檢查在像素Q左邊的像素QL,再檢查在像素Q右邊的像素QR。若在P的相同條帶中相距距離D未找到像素,如方塊1026所示,將距離D增加1,且該處理會遞歸,直到在P的相同條帶中找到取代像素。圖1OB描述用于ALF及AO的水平優先貼補(horizontal-first padding)以克服該條帶邊緣問題。除了從水平方向開始之外,該方法類似于圖1OA的垂直優先貼補。如圖所示,如方塊1018-1021及1022-1025所示,該水平優先貼補先檢查像素Q的左邊,再檢查右邊。若在P的相同條帶中在水平方向相距距離D無像素,該處理先檢查像素Q的上方再檢查下方,如方塊1010-1013及1014-1017所示。若在P的相同條帶中相距距離D未找到像素,如方塊1026所示,將距離D增加1,且該處理會遞歸,直到在P的相同條帶中找到取代像素。圖1OC描述依據漢明距·離(Hamming distance)的用于ALF及AO的貼補以克服該條帶邊緣問題。該垂直優先貼補及水平優先貼補僅在與欲取代的像素Q在同一行或同一列搜尋取代像素。依據漢明距離的貼補是依據漢明距離在所有周圍像素搜尋取代像素。兩個像素之間的漢明距離定義為其水平距離與垂直距離之和。若像素Qi位于(Xi, Yi),將Qi及Q之間的漢明距離Dh定義為Dh (Qi, Q) = I X1-X01 +1 Y1-Y01。該流程由與像素Q相距漢明距離為I的像素開始,如方塊1004所示。在方塊1030,產生群組G (Q, D),其中該群組包括與像素Q相距距離D的所有像素。在該群組中的像素表示為Qi,其中i=l,....,N(D),且N(D)為在該群組中與像素Q相距距離D的像素數量。對于每個距離D,在相關群組中的像素會在像素Q周圍形成鉆石形狀(即旋轉45度的正方形),且N(D)會隨著距離D增加。因為在該群組中的多個像素會位于與像素P相同的條帶中,有多個取代像素可供選擇。為了唯一地辨識取代像素,在該群組中的像素需要排序,如方塊1032所示,使得該解碼器端會選取相同的取代像素。關于該群組的像素排序可由群組中的任一個像素開始,并以順時針或逆時針方向延著該鉆石形狀移動。在該群組中排列過后的像素可表示為Q*i。該鉆石形狀的其中一個頂點,例如是上、下、左或右,可選擇為開始位置。在該群組中的像素依序排列后,該流程會利用如方塊1034中的初始化k=l及在方塊1036中的檢查是否Q*k在相同條帶來搜尋在相同條帶中的取代像素Q*。若0*1;在?的相同條帶中,使用Q*k作為Q的取代像素,如方塊1037所示;否則在方塊1038中檢查“是否k=N(D) ”。若Q*k不是在排列后群組中的最后一個像素,即k古N(D),則在方塊1040增大k,且在方塊1036測試下一個Q*k。若Q*k是在排列后群組中的最后一個像素,即在方塊1038中k=N(D),則該流程在方塊1026增大D,且在方塊1030產生下一群組G (Q,D),且該流程遞歸直到找到取代像素Q*。圖1OD描述依據前述不同方法用于5x5ALF濾波器的數據貼補示例。用于像素P的該5x5濾波用虛線方塊1050表示。粗線1052表示在兩個條帶之間的邊緣。如圖1OD所示,該5x5濾波依據在像素P條帶外的像素Q。依據圖1OA的垂直優先貼補,使用在P的相同條帶中的像素B作為取代像素。依據圖1OB的水平優先貼補,使用在P的相同條帶中的像素A作為取代像素。依據圖1OC中的漢明距離方法,像素Q用像素P自身來取代。多個邊緣擴充方法已揭露如上用于去除ALF/A0的在其他條帶的依附性,當該ALF/AO操作需要來自其他條帶的像素時,也可通過旁路(bypassing) ALF/A0來克服此依附性。圖11描述用于3x3ALF/A0濾波的旁路邊緣像素的示例方法,其中在兩個條帶之間的邊緣是用粗線1102表示。對于直接相鄰該邊緣的所有像素,即像素Q、L、G、H、I及J,該3x3ALF/A0濾波依據在其他條帶中的至少一個像素。因此,依據該旁路方法,該ALF/A0操作不用于像素Q、L、G、H、I及J。如上所述,條帶內ALF及AO沒有對其他條帶的依附性。因此,當接收到該相關的條帶層比特流,可不用等待其他條帶數據即可處理條帶。該條帶內ALF及AO可在DF之后使用。一旦該條帶內ALF及/或AO完成,則可能看到條帶邊緣的瑕疵。為了降低由該條帶內ALF及/或AO所處理的條帶邊緣瑕疵的明顯度,可將條帶邊緣濾波器(SBF)用于條帶邊緣。為了 SBF的目的,可使用相同的DF。然而,為了 SBF的目的,也可使用其他合適的濾波器。該SBF處理可以IIR形式用于條帶邊緣。在此例中,需要指定條帶邊緣的處理順序,使得相同的處理可在該解碼器端執行。選擇性地,該SBF處理亦可以FIR形式執行。該SBF可用于內回路操作或后回路操作。圖12依據本發明實施例描述使用條帶內DF430、ALF432及SBF1210用于高效率視頻編碼的視頻編碼器系統方塊圖。如圖12所示,依據本發明實施例的該SBF1210可用于由ALF432處理的信號。條帶內AO可用于DF430及ALF432之間,或ALF432及SBF1210之間。AO并未明示于圖12中。開關1220用以在后回路SBF與內回路SBF之間選擇SBF設定,其中該開關1220顯示在內回路SBF的位置。當選擇該內回路SBF時,該解碼器也同樣必需操作于內回路SBF設定以適當地重建視頻數據。當選擇該后回路SBF時,在編碼器端已后處理過的視頻可用于區域監視,且該解碼器端同樣必需操作在該后回路模式。圖13依據本發明實施例描述使用條帶內DF430、ALF432及條帶邊緣濾波器用于高效率視頻編碼的視頻解碼器系統方塊圖。如圖13所示,依據本發明的該SBF1210用于由ALF432處理的信號。條帶內AO可用于DF430及ALF432之間,或ALF432及SBF1210之間。AO并未明示于圖13中。開關1220用以在后回路SBF及內回路SBF之間選擇SBF設定,其中該開關1220顯示在內回路SBF的位置。當已選擇該后回路SBF設定時,后處理過的視頻可在解碼器端 提供改進的視頻質量。為了要傳遞所需的信息至該解碼器,使得該解碼器可適當地進行該條帶內ALF/A0及該SBF操作,所以要發展相關語法加入該比特流中。當圖像被分割為多個條帶時,各條帶在條帶頭(Slice header)可具有其自身的ALF/A0信息(例如ALF參數集合)。然而,當條帶的數量增加時,由于在圖像中的ALF/A0信息增加,ALF/A0信息的編碼效率會降低。因此,另一選擇為使用圖像層原始字節序列負荷(Raw Byte Sequence Payload, RBSP),pic_layer_rbsp,以傳送ALF/AO信息,使得在該圖像中的所有條帶可分享相同的ALF/AO信息。圖像順序計數信息也需在pic_layer_rbsp中傳送以進行適當解碼。條帶級別(slice-level)ALF/AO信息及圖像級別(picture-leveDALF/AO信息可在序列參數集合(SPS)中進行切換。圖14A依據本發明描述與條帶內DF/ALF/A0及條帶邊緣濾波器相關的示例序列參數集合語法。slice_boundary_filter_flag用以表示SBF是否用于條帶邊緣,其中等于O的值表示在DF及ALF后SBF未用于條帶邊緣,并且等于I的值表示在DF及ALF后條帶邊緣濾波用于條帶邊緣。在條帶邊緣濾波之前,由于使用條帶內ALF,因此可獨立地解碼一張圖像中的所有條帶。可依據圖14A的示例擴充為了要分享的多個條帶或是為了每個條帶使用其自身的AO 信息而在 pic_layer_rbsp 中加入 AO 信息語法。當 slice_boundary_f ilter_f lag 具有數值 I 時,seq_parameter_set_rbsp 包括 slice_boundary_filter_in_loop_flag 以表不是否SBF已設定為內回路SBF或后回路SBF,其中等于I的數值表示內回路設定,以及等于O的數值表不后回路設定。該 seq_parameter_set_rbsp 也包括 adaptive_loop_f ilter_pic_layer_flag以表示是否ALF信息會加入圖像層中。在圖像層中的該ALF信息可允許在圖像中的多個條帶分享相同的ALF參數集合。等于O的adaptive_loop_filter_pic_layer_flag數值表示ALF信息不會加入該圖像層中,以及等于I的adaptive_loop_filter_pic_layer_flag表示ALF信息會被加入該圖像層中。圖14B依據本發明描述與條帶內DF/ALF/A0及條帶邊緣濾波器有關的示例圖像層語法。pic_layer_rbsp包括pic_order_cnt_lsb用以推導該圖像順序計數。若adaptive—loop_filter_pic_layer_flag具有數值 I,則 ALF參數集合,alf_param(),會被加入該pic_layer_rbsp,使得在圖像中的所有條帶可分享相同的ALF參數集合。圖14C依據本發明描述與條帶內DF/ALF/A0及條帶邊緣濾波器有關的示例條帶頭語法。在adaptive_loop_filter_pic_layer_flag具有數值O的情況下,該ALF參數集合,alf_param(),會被加入該條帶頭,使得各條帶具有其自身的ALF參數集合。雖然提供圖14A-14C中的示例僅加入ALF信息,但是也可使用類似的方法加入AO信息,用以讓多個條帶分享或讓每個條帶使用其自身的AO信息。依據圖14A-14C的語法設定需要在圖像中的所有條帶分享相同的ALF信息或各條帶使用其自身的ALF及/或AO信息。選擇性的語法設計以實現本發明如圖15A-15C所示,用以讓各條帶選擇性地使用該圖像的ALF信息或是其自身的ALF信息。圖15A所示序列層語法類似于圖14A中的序列層語法,除了去除adaptive_loop_filter_pic_layer_flag之夕卜。作為替代,將adaptive_loop_filter_pic_layer_flag移至條帶層,使得每個條帶可選擇性地使用在圖像頭的ALF信息或圖15C中其自身的ALF信息。如圖15B所示,該圖像的ALF信息總是傳送至圖像層以讓該圖像中的多個條帶使用。因此,圖15A-15C的語法設計提供了更大靈活性使得在圖像中的一些條帶可分享相同的ALF信息,以及同時其他條帶具有其自身的ALF信息。雖然圖15A-15C描述加入ALF信息示例以讓多個條帶分享或讓每個條帶具有其自身的ALF信息,但是也可加入AO信息以讓多個條帶分享或是讓每個條帶有其自身的AO信息。本發明可利用不脫離其精神或必要特征的其他特定形式來實現。本發明可用例如集成電路(Integrated circuit, IC)及特定應用 IC (Application specific IC, ASIC),與實現本發明某些功能及工作的處理器有關的軟件及固件代碼,或是結合硬件及軟件/固件來實現。所述的實施例被認為在各方面都僅是說明性的,而不是限制性的。因此,本發明的范圍當視后附的權 利要求書為準而非先前的描述。在同等權利要求書的范圍與方法內所做的所有變化仍包含在保護范圍中。
權利要求
1.用于編碼視頻圖像的方法,其中該視頻圖像的每一張被分割為多個條帶并且該多個條帶的每一個被分割為多個編碼單元,該方法包括 重建該多個條帶的每一個以產生重建條帶;以及 依據條帶內自適應環路濾波、條帶內自適應偏移或自適應環路濾波與自適應偏移的組合處理該重建條帶。
2.如權利要求I所述的方法,其中在依據該條帶內自適應環路濾波、該條帶內自適應偏移或該條帶內自適應環路濾波與該條帶內自適應偏移的組合處理該重建條帶之前,該方法包括 依據條帶內去塊濾波去塊該重建條帶,其中將該條帶內去塊濾波應用于該重建條帶的該多個編碼單元。
3.如權利要求I所述的方法,其特征在于,依據該條帶內自適應環路濾波、該條帶內自適應偏移或該條帶內自適應環路濾波與該條帶內自適應偏移的組合處理該重建條帶包括 用該重建條帶中的取代像素來取代在該重建條帶外的該條帶內自適應環路濾波、該條帶內自適應偏移或該條帶內自適應環路濾波與該條帶內自適應偏移組合的成員像素。
4.如權利要求3所述的方法,其特征在于,取代在該重建條帶外的該條帶內自適應環路濾波、該條帶內自適應偏移或該條帶內自適應環路濾波與該條帶內自適應偏移組合的該成員像素是依據垂直優先貼補。
5.如權利要求3所述的方法,其特征在于,取代在該重建條帶外的該條帶內自適應環路濾波、該條帶內自適應偏移或該條帶內自適應環路濾波與該條帶內自適應偏移組合的該成員像素是依據水平優先貼補。
6.如權利要求3所述的方法,其特征在于,取代在該重建條帶外的該條帶內自適應環路濾波、該條帶內自適應偏移或該條帶內自適應環路濾波與該條帶內自適應偏移組合的該成員像素是依據漢明距離。
7.如權利要求3所述的方法,其特征在于,取代在該重建條帶外的該條帶內自適應環路濾波、該條帶內自適應偏移或該條帶內自適應環路濾波與該條帶內自適應偏移組合的該成員像素是依據映射邊緣像素。
8.如權利要求I所述的方法,其特征在于,該多個條帶的每一個在與該多個條帶的每一個相關的條帶頭中具有獨立的自適應環路濾波及/或自適應偏移信息。
9.如權利要求I所述的方法,其特征在于,在該視頻圖像的一張中至少兩個條帶分享至少部分的自適應環路濾波及/或自適應偏移信息。
10.如權利要求9所述的方法,其特征在于,在該視頻圖像的一張中的該多個條帶所分享的該至少部分的自適應環路濾波及/或自適應偏移信息加入至圖像層原始字節序列負荷中。
11.如權利要求I所述的方法,該方法進一步包括 加入條帶邊緣濾波器,其中該條帶邊緣濾波器用于橫跨條帶邊緣以濾波條帶邊緣像素。
12.如權利要求11所述的方法,進一步包括 在序列層級比特流或圖像層比特流中加入第一旗標以表示該條帶邊緣濾波器是否被致能或禁能。
13.如權利要求11所述的方法,其特征在于,該條帶邊緣濾波器用于內回路操作或后回路操作;以及其中該內回路操作在參考圖像緩沖器中儲存條帶邊緣濾波器濾波后像素用以預測未來圖像,且該后回路操作不儲存條帶邊緣濾波器濾波后像素用以預測未來圖像。
14.如權利要求13所述的方法,進一步包括: 在序列層級比特流或圖像層比特流中加入第二旗標以表示是否已選擇該內回路操作或該后回路操作。
15.如權利要求11所述的方法,其特征在于,該條帶邊緣濾波器可選擇有限脈沖響應濾波器(FIR)或無限脈沖響應濾波器(IIR),其中該有限脈沖響應濾波器操作非條帶邊緣濾波器所處理像素,且該無限脈沖響應濾波器指定處理順序,并且對于當前像素與后續像素,該無限脈沖響應濾波器操作非條帶邊緣濾波器所處理像素,以及對于先前像素,該無限響應濾波器操作由條帶邊緣濾波器所處理的像素。
16.如權利要求15所述的方法,進一步包括: 在序列層級比特流或圖像層比特流中加入第三旗標以表示是否已選擇該有限脈沖響應濾波器或該無限脈沖響應濾波器。
17.如權利要求1所述的方法,進一步包括: 在圖像層原始字節序列負荷中加入語法元素以允許該視頻圖像中的一個的至少二個條帶分享ALF及/或AO信息。
18.如權利要求17所述的方法,進一步包括: 依據在圖像層原始字節序列負荷中的該語法元素所表示的狀況,在當前條帶的條帶頭加入單獨的ALF及/或AO信息。
19.用于解碼與視頻圖像相關的視頻比特流方法,其中該視頻圖像的每一個被分割為多個條帶且該多個條帶的每一個被分割為多個編碼單元,該方法包括: 依據該視頻比特流重建該多個條帶的每一個以產生重建條帶; 由該視頻比特流恢復ALF及/或AO信息;以及 依據該自適應環路濾波器及/或該自適應偏移信息使用條帶內自適應環路濾波及/或條帶內自適應偏移處理該重建條帶以提供處理后的條帶。
20.如權利要求19所述的方法,其特征在于,該自適應環路濾波器及/或該自適應偏移信息在與該重建條帶有關的條帶頭中。
21.如權利要求19所述的方法,其特征在于,該自適應環路濾波器及/或該自適應偏移信息的至少部分在圖像層原始字節序列負荷中。
22.如權利要求19所述的方法,該方法進一步包括: 由該視頻比特流恢復SBF信息;以及 依據該SBF信息使用條帶邊緣濾波處理該處理后的條帶,其中該條帶邊緣濾波用于橫跨條帶邊緣以濾波條帶邊緣像素。
23.如權利要求22所述的方法,其特征在于,該條帶邊緣濾波信息表示該條帶邊緣濾波是否被致能或禁能。
24.如權利要求22所述的方法,其特征在于,該條帶邊緣濾波信息表示是否為了該條帶邊緣濾波器選擇內回路操作或后回路操作。
25.如權利要求22所述的方法,其特征在于,該條帶邊緣濾波信息表示是否為了該條帶邊緣濾波選擇有限脈沖響應濾波器(FIR)或無限脈沖響應濾波器(IIR)。
26.如權利要求19所述的方法,其特征在于,該自適應環路濾波及/或該自適應偏移信息在該視頻比特流的圖像層原始字節序列負荷中。
27.如權利要求26所述的方法,其特征在于,該自適應環路濾波及/或該自適應偏移信息依據該圖像層原始字節序列負荷中的語法元素所表示的情況而位于與該重建條帶相關的條帶頭中。
28.用于視頻圖像的視頻編碼的裝置,其中該視頻圖像的每一個被分割為多個條帶且該多個條帶的每一個被分割為多個編碼單元,該裝置包括 用以重建該多個條帶的每一個以產生重建條帶;以及 用以依據條帶內自適應環路濾波、條帶內自適應偏移或條帶內自適應環路濾波與條帶內自適應偏移組合以處理該重建條帶。
29.如權利要求28所述的裝置,其中在依據該條帶內自適應環路濾波、該條帶內自適應偏移或該條帶內自適應環路濾波與該條帶內自適應偏移組合處理該重建條帶之前,該裝置包括 用以依據條帶內去塊濾波以去塊該重建條帶,其中該條帶內去塊濾波用于該重建條帶的該多個編碼單元。
30.如權利要求28所述的裝置,其中依據該條帶內自適應環路濾波、該條帶內自適應偏移或該條帶內自適應環路濾波與該條帶內自適應偏移組合處理該重建條帶包括 用于以該重建條帶中的取代像素來取代在該重建條帶外的該條帶內自適應環路濾波、該條帶內自適應偏移或該條帶內自適應環路濾波與該條帶內自適應偏移組合的成員像素。
31.如權利要求28所述的裝置,該裝置進一步包括 用于加入條帶邊緣濾波器,其中該條帶邊緣濾波器用于橫跨條帶邊緣以濾波條帶邊緣像素。
32.如權利要求28所述的裝置,進一步包括 用于在圖像層原始字節序列負荷中加入語法元素以允許通過該視頻圖像的一張中的至少兩個條帶分享自適應環路濾波及/或自適應偏移信息。
33.用于解碼有關視頻圖像的視頻比特流的裝置,其中該視頻圖像的每一個被分割為多個條帶且該多個條帶的每一個被分割為多個編碼單元,該裝置包括 用于依據該視頻比特流重建該多個條帶的每一個以產生重建條帶; 用于由該視頻比特流恢復ALF及/或AO信息;以及 用于依據該自適應環路濾波器及/或自適應偏移信息使用條帶內自適應環路濾波及/或條帶內自適應偏移處理該重建條帶以提供處理后的條帶。
34.如權利要求33所述的裝置,該裝置進一步包括 用于由該視頻比特流恢復SBF信息;以及 用于依據該SBF信息使用條帶邊緣濾波處理該處理后的條帶,其中該條帶邊緣濾波用于橫跨條帶邊緣以濾波條帶邊緣像素。
全文摘要
揭露一種具有條帶內去塊處理、條帶內自適應環路濾波器及條帶內自適應偏移的用于視頻編碼的裝置及方法。在視頻編碼系統中,圖像常被分割為多個條帶且各條帶被獨立處理,使得來自條帶的誤差或遺失數據不會傳播至在圖像中的其他任何條帶。在當前高效率視頻編碼(HEVC)發展中,去塊濾波(DF)、自適應環路濾波(ALF)及自適應偏移(AO)可用于重建的條帶。當該處理用于橫跨條帶邊緣時,其會依據當前條帶外的像素且會導致當前條帶在其他條帶上的依附性。因此,在重建條帶上的DF/ALF/AO處理需要等待有依附的重建條帶已完成該DF/ALF/AO處理。為了克服此條帶邊緣問題,已發展條帶內DF/ALF/AO,其可不必依據當前條帶外的任何像素。在所有條帶已由該條帶內DF/ALF/AO處理后,選擇性的條帶邊緣濾波器可用于條帶邊緣。
文檔編號H04N7/26GK103238318SQ201180052970
公開日2013年8月7日 申請日期2011年5月4日 優先權日2010年11月2日
發明者黃毓文, 陳慶曄, 傅智銘, 徐志瑋, 劉杉, 雷少民 申請人:聯發科技股份有限公司