TW201836357A - 視頻編解碼的高效自適應環路濾波處理 - Google Patents
視頻編解碼的高效自適應環路濾波處理 Download PDFInfo
- Publication number
- TW201836357A TW201836357A TW106116850A TW106116850A TW201836357A TW 201836357 A TW201836357 A TW 201836357A TW 106116850 A TW106116850 A TW 106116850A TW 106116850 A TW106116850 A TW 106116850A TW 201836357 A TW201836357 A TW 201836357A
- Authority
- TW
- Taiwan
- Prior art keywords
- samples
- block
- filter
- adaptive loop
- sample
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/439—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using cascaded computational arrangements for performing a single operation, e.g. filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/96—Tree coding, e.g. quad-tree coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本公開的方面提供了一種用於視訊編解碼系統中之自適應環路濾波的方法和電路。該方法可以包括接收在濾波器管綫中從前級濾波器電路產生之取樣塊,該取樣塊是包括在當前圖像中之複數個塊之一,在前級濾波器電路同時處理當前圖像中之另一個塊的同時,並行執行自適應環路濾波器處理,在暫存器中存儲具有由包括至少一個未被接收之取樣之濾波器形狀限定的濾波器輸入區域的第一取樣,並且在暫存器中存儲包括在第一取樣之濾波器輸入區域中之第二取樣。
Description
本申請要求申請日為2016年5月23日,美國臨時申請號為62/340,015的美國臨時申請案的優先權,上述臨時申請案的內容一並並入本申請。
本文提供的背景描述是為了通常呈現本公開的上下文的目的。目前命名的發明人的工作,在本背景部分中描述的工作以及在提交時可能不符合先前技術的說明的方面,既不被明確地也不暗示承認為本公開的先前技術。
基於塊的運動補償、變換和量化被廣泛地用於視訊壓縮以提高視訊通信系統的性能。然而,由於粗量化和運動補償,可以引入壓縮噪聲,其在重建之圖像中引起諸如阻塞、振鈴和模糊的偽影(blocking,ringing,and blurring)。可以采用環路濾波器(loop filter)來减小壓縮噪聲,這不僅可以提高輸出解碼圖像的質量,而且可以為後續圖像提供高質量的參考圖像來保存編解碼位元。自適應環路濾波器是一種類型的這種環路濾波器。自適應環路濾波過程可以通過使用基於Wiener的
自適應濾波器來最小化原始取樣和重建取樣之間的均方誤差。
本公開的方面提供了一種用於視訊編解碼系統中之自適應環路濾波的方法。該方法可以包括接收在濾波器管綫中從前級濾波器電路產生之取樣塊,該取樣塊是包括在當前圖像中之複數個塊之一,在前級濾波器電路同時處理當前圖像中之另一個塊的同時,並行執行自適應環路濾波器處理,在暫存器中存儲具有由包括至少一個未被接收之取樣之濾波器形狀限定的濾波器輸入區域的第一取樣,並且在暫存器中存儲包括在第一取樣之濾波器輸入區域中之第二取樣。
在一個示例中,前級濾波器電路是去塊濾波器電路或取樣自適應偏移濾波器(SAO)電路。在一個實施例中,該方法還包括接收與取樣塊相鄰之下一個取樣塊,從暫存器讀取第一和第二取樣,並且對由下一相鄰取樣塊和存儲在暫存器中之第一取樣形成的塊中之取樣之至少一部分執行ALF處理。在一個實施例中,該方法還包括:在前級濾波器電路完成包括接收到的取樣塊的當前編碼樹單元中之取樣處理之前,開始對所接收之取樣塊中之至少一個目標取樣進行ALF處理。
在該方法的一個實施例中,暫存器包括左暫存器,該左暫存器包括與該取樣塊在同一列中之與第一待處理塊相鄰之第一取樣和第二取樣之第一部分,以及頂暫存器包括與該取樣塊在同一列中之第二待處理塊相鄰之第一取樣和第二取樣之第二部分。在一個實施例中,第一和第二取樣是與圖像中之下一個塊相鄰之P+Q個取樣行,P和Q是濾波器形狀的
左跨度和右跨度。
在一個實施例中,並行執行對取樣塊中之複數個目標取樣之ALF處理,包括接收取樣塊中之取樣,對取樣塊中之第一目標取樣執行第一ALF處理,以基於由濾波器形狀定義的第一目標取樣之第一濾波器輸入區域中之接收取樣之產生第一濾波取樣,以及針對與第一目標像元相鄰之取樣塊中之第二目標像元執行第二ALF處理,以基於由濾波器形狀定義的第二目標取樣之第二濾波器輸入區域中之接收取樣生成第二濾波取樣,其中用於第一目標取樣之第一ALF處理的接收取樣被再次用於第二目標取樣之第二ALF處理。
在一個示例中,接收取樣塊包括:逐列地接收塊中之取樣作為多級管綫濾波器電路的輸入,並且從MSPF電路依次生成第一和第二濾波取樣。在另一個示例中,接收取樣塊包括:逐列地接收塊中之取樣作為第一MSPF電路和與第一MSPF電路並行操作的第二MSPF電路的輸入,並且第一和第二濾波取樣是分別基於塊中接收之取樣在第一和第二MSPF電路處產生。
在一個實施例中,接收塊中之取樣包括將塊中之取樣逐列地移位到具有移位暫存器列的移位暫存器的陣列中,每列移位暫存器存儲移位取樣列。因此,執行第一和第二ALF處理包括:基於當前存儲在移位暫存器陣列中之取樣,通過耦合到移位暫存器陣列以從移位暫存器陣列接收取樣之乘法加法電路來計算第一濾波取樣,將第一塊中之下一個取樣列移位到移位暫存器陣列中,並且基於當前存儲在乘法加法電路
的移位暫存器陣列中之取樣來計算第二濾波取樣。
在另一個實施例中,接收取樣塊包括將塊中之取樣逐列地移位到具有移位暫存器列的移位暫存器的陣列中,每列移位暫存器存儲一列取樣。因此,執行第一和第二ALF處理包括基於當前存儲在移位暫存器陣列中之第一組取樣,通過耦合到移位暫存器陣列以從移位暫存器陣列接收取樣之第一加法電路來計算第一濾波取樣,以及基於當前存儲在移位暫存器陣列中之第二組取樣,通過耦合到移位暫存器陣列以從移位暫存器陣列接收第二組取樣之第二乘法加法電路來與第一濾波取樣之計算並行地計算第二濾波取樣,第二組取樣包括第一組取樣之一部分。
該方法的實施例還包括將取樣塊劃分成第一子塊和第二子塊。然後,並行執行對第一子取樣塊中之第一目標取樣之第一ALF處理與對第二子取樣塊中之第二目標取樣執行第二ALF處理。
本公開的方面在視訊編解碼系統中提供自適應環路濾波器(ALF)電路。ALF電路可以包括工作暫存器,其被配置為存儲從過濾器管綫中前級濾波器電路生成的取樣塊,取樣塊是包括在當前圖像中之複數個塊之一,濾波電路被配置為並行地對取樣塊中之複數個目標取樣執行自適應環路濾波器處理,同時前級濾波器電路同時處理當前圖像中之另一個塊,以及側暫存器,被配置為存儲複數個第一取樣,其中複數個第一取樣中之每個具有由包括至少一個未被接收之取樣之濾波器形狀定義的濾波器輸入區域,並且存儲包括在複數個第一取
樣之複數個濾波器輸入區域中之複數個第二取樣。
100‧‧‧編碼器
101‧‧‧輸入視訊資料
102、201‧‧‧位元流
103、203‧‧‧濾波器參數
110‧‧‧解碼圖像暫存器
112、212‧‧‧訊框間-訊框內預測模塊
114、122、222‧‧‧加法器
116‧‧‧殘差編碼器
118‧‧‧熵編碼器
120‧‧‧殘差解碼器
130、230、311、411、1710‧‧‧去塊濾波器
132、232、313、413、1420‧‧‧取樣自適應偏移濾波器
134、234、315、415、1200、1300、1400、1500、1600、1730、1810、1820‧‧‧自適應環路濾波器
136、236、300A、400A、1740、1811、1821‧‧‧濾波器管綫
200‧‧‧解碼器
202‧‧‧輸出視訊資料
218‧‧‧熵解碼器
220‧‧‧殘差解碼器
210‧‧‧解碼圖像暫存器
310、312、314、410、412、414‧‧‧訊框暫存器
300B、400B、1000B‧‧‧時序圖
321-324‧‧‧與不同的塊對應的重建操作
331、341、351‧‧‧操作
501-509、711、712、911、912、1320、1520、1620、1750、1850‧‧‧塊
510DF/SAO‧‧‧就緒區域
910-920、710-720‧‧‧DF/SAO就緒塊
520、731、1222‧‧‧陰影區域
531、532、701、702、703‧‧‧邊界
600‧‧‧濾波器形狀
800、1900‧‧‧過程
S801-S899、S1901-S1999‧‧‧步驟
901、902‧‧‧擴展區域
921‧‧‧重叠區域的一部分
922‧‧‧重叠區域
1101-1116、1751‧‧‧子塊
1121-1124‧‧‧列
1131-1134‧‧‧行
1141、1151、1210‧‧‧頂暫存器
1142、1152‧‧‧左暫存器
1230‧‧‧自適應環路濾波器電路
1221、1541‧‧‧區域
1310、1410、1420、1510、1610‧‧‧塊暫存器
1330、1431、1432‧‧‧多級管綫濾波器電路
1341-1347‧‧‧延遲元件
1351-1357、1550、1651、1652‧‧‧乘法-加法電路
1361-1367‧‧‧級
1371、1470、1471、1473‧‧‧輸入綫
1373‧‧‧控制時鐘信號
1430、1530、1630、1700、1800‧‧‧濾波器電路
1472、1474‧‧‧輸出
1540、1640‧‧‧暫存器陣列
將參考以下附圖詳細描述作為示例提出的本公開的各種實施例,其中相同的附圖標記表示相同的元件,並且其中:第1圖示出了根據本公開的實施例的編碼器;第2圖示出了根據本公開的實施例的解碼器;第3A圖示出了傳統的圖像級濾波器管綫;圖3B示出了在逐個圖像的基礎上操作的圖像級濾波器管綫的示例時序圖;第4A圖示出了根據本公開的實施例的塊級濾波器管綫;第4B圖示出了根據本公開的實施例的塊級濾波器管綫的示例時序圖;第5圖示出根據本公開的實施例的去塊濾波器和取樣自適應偏移濾波器(DF/SAO)就緒區域的示例;第6圖示出了根據本公開的實施例的有限脉衝響應(FIR)濾波器之濾波器形狀;第7A-7B圖示出了根據本公開的實施例的第一塊級處理技術;第8圖示出了根據本公開的實施例的自適應環路濾波處理;第9A-9B圖示出了根據本公開的實施例的第二塊級處理技術;第10A圖示出了根據本公開的實施例的一組塊;
第10B圖示出了根據本公開的實施例的子塊級別濾波處理的示例時序圖;第11A-11B圖示出了根據本公開的實施例的第三塊級處理技術;第12圖示出了根據本公開的實施例的自適應環路濾波器(ALF);第13圖示出了根據本公開的實施例的第一ALF;第14圖示出了根據本公開的實施例的第二ALF;第15圖示出了根據本公開的實施例的第三ALF;第16圖示出了根據本公開的實施例的第四ALF;第17圖示出了根據本公開的實施例的第一環路濾波器電路;第18圖示出了根據本公開的實施例的第二環路濾波器電路;以及第19圖示出了根據本公開的實施例的視訊編解碼系統中之自適應環路濾波處理1900。
第1圖示出了根據本公開的實施例的編碼器100。編碼器100可以包括解碼圖像暫存器110、訊框間-訊框內(inter-intra)預測模塊112、第一加法器114、殘差編碼器116、熵編碼器118、殘差解碼器120、第二加法器122、去塊濾波器(deblocking filter,簡寫為DF)130、取樣自適應偏移(sample adaptive offset,簡寫為SAO)濾波器132和自適應環路濾波器(adaptive loop filter,簡寫為ALF)134。這些組件可以如
第1圖所示耦合在一起。
編碼器100接收輸入視訊資料101並執行視訊壓縮處理以產生位元流102作為輸出。輸入視訊資料101可以包括一系列圖像。每個圖像可以包括一個或複數個顏色分量,例如亮度分量或色度分量。位元流102可以具有符合視訊編解碼標準的格式,諸如高級視訊編解碼(AVC)標準、高效率視訊編解碼(HEVC)標準等。
根據本公開的一個方面,ALF 134可以采用塊級處理技術來逐塊地處理重建之視訊資料。傳統的ALF是一個畫面級編解碼工具,需要一個整個畫面的暫存區。相反,塊級ALF可以具有存儲一個取樣塊的較小的工作暫存區。基於塊的ALF 134啟用例如由DF 130、SAO 132和ALF 134形成的塊級濾波器管綫136,與傳統的圖像級濾波器管綫相比,其可以减少處理延遲和暫存器大小。此外,ALF 134可以采用資料重用(data reuse)技術來减少對重建取樣執行的ALF處理的資料訪問時間。例如,在一個資料訪問操作中獲取的取樣資料可以用於複數個像元上的ALF處理。此外,在一個示例中,可以采用兩個濾波器管綫並行操作。兩個濾波器管綫中之每一個可以包括類似於ALF 134的ALF。
如第1圖所示,解碼圖像暫存器110存儲在訊框內預測模塊112處執行的用於運動估計和運動補償的參考圖像。訊框間-訊框內預測模塊112執行訊框間圖像預測或訊框內圖像預測,以確定視訊壓縮過程中之當前圖像的塊。當前圖像是指在訊框內預測模塊112中正在處理的輸入視訊資料101
中之圖像。當前圖像可以被劃分為具有相同或不同大小的複數個塊用於訊框間或訊框內預測操作。
在一個示例中,訊框間預測模塊112使用訊框間編解碼技術或訊框內編解碼技術來處理塊。因此,使用訊框間編解碼的塊被稱為訊框間編解碼塊,而使用訊框內編解碼的塊被稱為訊框內編解碼塊。訊框間編碼技術使用參考圖像來獲得當前正在處理的塊(稱為當前塊)的預測。例如,當利用訊框間編解碼技術對當前塊進行編碼時,可以執行運動估計來搜索參考圖像中之匹配區域。匹配區域用作當前塊的預測。相反,訊框內編解碼技術使用當前塊的相鄰塊來生成當前塊的預測。相鄰塊和當前塊在同一圖像內。塊的預測被提供給第一和第二加法器114和122。
第一加法器114從訊框間-訊框內預測模塊112接收來自塊的預測,從輸入視訊資料101接收塊的原始取樣。然後,加法器114從塊的原始取樣值中减去預測,獲得塊的殘差。塊的殘差被發送到殘差編碼器116。
殘差編碼器116接收塊的殘差,並壓縮殘差以產生壓縮殘差。例如,殘差編碼器116可以首先向對應於變換塊的接收殘差應用諸如離散余弦變換(discrete cosine transform,簡寫為DCT)、小波變換(wavelet transform)等的變換,並生成變換塊的變換係數。將圖像分割成變換塊可以與將圖像分割成用於訊框內-訊框間預測處理的預測塊相同或不同。隨後,殘差編碼器116可以量化係數以壓縮殘差。壓縮殘差(量化變換係數)被發送到殘差解碼器120和熵編碼器
118。
殘差解碼器120接收壓縮殘差並執行在殘差編碼器116處執行的量化和變換操作的逆過程,以重建變換塊的殘差。由於量化操作,重建之殘差類似於從加法器114產生之原始殘差,但通常與原始版本不同。
第二加法器122接收來自訊框間-訊框內預測模塊112的塊的預測和來自殘差解碼器120的變換塊的重建殘差。隨後,第二加法器122將重建之殘差與對應於該圖像的相同區域的接收到的預測相組合,以生成重建之視訊資料。然後可以將重建之視訊資料傳送到濾波器管綫136。
在一個示例中,濾波器管綫136包括DF 130、SAO 132和ALF 134,並且執行基於塊的濾波處理。例如,圖像可以被劃分成複數個塊。因此,可以逐塊地從第二加法器122生成重建之視訊資料。濾波器管綫136接收重建之視訊資料並逐塊地處理重建之資料塊。在一個示例中,將圖像劃分成塊與將圖像劃分成符合HEVC標準中定義的編碼樹單元(CTU)是一致的。如所定義,圖像可以分為CTU序列。每個CTU可以進一步分為更小的編解碼單元(CU)。CTU中之CU可以由編碼器獨立地通過運動估計和補償、變換、量化和重建之步驟來處理。每個CTU或CU可以包括對應於不同顏色分量的取樣塊。
DF 130將一組低通濾波器應用於塊邊界以减少塊偽影。可以基於重建圖像中之塊邊界的兩側的重建取樣之特性以及在訊框間-訊框內預測模塊112處確定的預測參數(編碼模式或運動矢量)來應用濾波器。然後,去塊的重建取樣可以
被提供給SAO 132。SAO 132接收去塊的重建取樣並將重建之視訊資料中之像元分組(categorize)成組(group)。然後,SAO 132可以確定每組的强度偏移(偏移值)以補償每組的强度偏移。然後可以從SAO 132向ALF 134提供移位的重建視訊資料。作為示例,在HEVC標準中定義了DF和SAO。
在一個示例中,ALF 134從SAO 132接收重建取樣塊,並執行自適應環路濾波處理。在自適應環路濾波處理期間,通過應用有限脉衝響應(finite impulse response,簡寫為FIR)濾波器對塊中之每個目標像元(或目標取樣)執行ALF處理。在一個示例中,FIR濾波器可以由以下表達式表示
其中St表示目標像元(或目標取樣)的濾波取樣,i是指示圍繞目標像元之待濾波區域(也稱為濾波器輸入區域)中之待濾波像元之索引,N表示包含在目標像元之待濾波區域中之待濾波的取樣之數量,Ci表示對應於第i個要被濾波的像元之濾波器參數,Si表示對應於第i個像元之濾波的取樣,並被稱為FIR濾波器之抽頭(tap)。如圖所示,可以通濾波波器係數序列來定義FIR濾波器,並且可以通過將FIR濾波器應用於與目標像元相鄰之取樣來計算目標像元之濾波取樣。將FIR濾波器應用於與目標像元相鄰之取樣以獲得濾波後之取樣被稱為目標像元之ALF處理。
在自適應環路濾波處理的一個示例中,FIR濾波器之濾波器參數首先在接收到重建取樣塊時導出。例如,可以使
用表達式(1)來表示塊中目標像元之濾波取樣。因此,可以制定從輸入視訊資料接收之原始取樣和濾波取樣之間的平方誤差之和(sum of square errors,簡寫為SSE)。通過最小化SSE,可以導出Wiener-Hopf方程。隨後可以通過求解Weiner-Hopf方程來推導出濾波器參數。在濾波器參數偏差(deviation)之後,可以確定FIR濾波器並將其應用於目標像元以獲得濾波塊。在自適應環路濾波處理的最後階段,濾波塊可被存儲到解碼圖像暫存器110中以形成參考圖像,並且可以將包括導出係數的濾波器參數103提供給熵編碼器118並隨後傳送到解碼器。
在自適應環路濾波處理的替代示例中,可以例如基於重建取樣之塊的特性,從一組預先配置的FIR濾波器中選擇要應用於目標像元之FIR濾波器。此外,例如可以基於用於評估自適應環路濾波處理的效果的性能標準,針對塊來確定指示是否對塊應用FIR濾波器之開/關控制標志。指示預先配置的FIR濾波器之開/關控制標志和索引也可以被包括在濾波器參數103中並被發送到解碼器。
熵編碼器118接收來自殘差編碼器116的壓縮殘差和來自ALF 134的濾波器參數103。熵編碼器118還可以接收其它參數和/或控制訊息,諸如訊框內預測模式訊息、運動矢量、量化參數、來自DF 130和SAO 132的參數或控制標簽,等。熵編碼器118對所接收之濾波器參數或其他訊息進行編碼以形成位元流102。位元流102可以經由通信網絡被發送到解碼器,或者被發送到可以存儲位元流102携帶的視訊資料的存
儲設備。
第2圖示出了根據本公開的實施例的解碼器200。解碼器200包括熵解碼器218、殘差解碼器220、解碼圖像暫存器210、訊框間-訊框內預測模塊212、加法器222、DF 230、SAO 232和ALF 234。這些元件如第2圖所示的耦合在一起。DF 230、SAO 232和ALF 234可以形成濾波器管綫236。
在一個示例中,解碼器200從編碼器接收位元流201(例如來自編碼器100的位元流102),並且執行解壓縮處理以生成輸出視訊資料202。輸出視訊資料202可以包括可以在例如諸如監視器、觸摸屏等的顯示裝置上顯示的一系列圖像。
熵解碼器218接收位元流201並執行解碼處理,該處理是由第1圖中之熵編碼器118執行的編碼處理的逆處理。結果,獲得壓縮殘差、預測參數、濾波器參數203等。將壓縮殘差提供給殘差解碼器220,並將預測參數提供給訊框間-訊框內預測模塊212。訊框間-訊框內預測模塊212基於接收到的預測參數生成圖像塊的預測,並且將預測提供給加法器222。解碼圖像暫存器210存儲對在訊框間-訊框內預測模塊212處執行的運動補償有用的參考圖像。參考圖像例如可以由從ALF 134接收之濾波塊形成。此外,參考圖像從解碼圖像暫存器210獲取,並且被包括在圖像視訊資料202中,用於顯示到顯示裝置。
在功能和結構方面,殘差解碼器220、加法器222、DF 230和SAO 232類似於殘差解碼器120、第二加法器122、
DF 130和SAO 132。省略對這些部件的說明。
類似於第1圖的示例,濾波器管綫236可以基於逐塊操作來處理從加法器222接收之重建取樣。另外,類似於第1圖示例中之ALF 134,ALF 234可以使用塊級處理技術在逐塊的基礎上進行操作,並采用資料重用技術來减少針對目標像元執行的ALF處理的資料訪問時間。此外,在替代示例中可以采用與管綫236類似的多於一個的濾波器管綫。與ALF 134不同,ALF 234從熵解碼器218接收濾波器參數,以執行自適應環路濾波處理。例如,濾波器參數可以包括在編碼器100處導出的濾波器參數或在編碼器100處確定的濾波器索引。ALF 234可以相應地執行具有接收到的係數或由濾波器索引指示的FIR濾波器之相應塊中之目標像元之ALF處理。
在ALF 134和234中使用塊級處理技術使得能够在濾波器管綫136和236中進行基於塊的管綫處理。基於塊的管綫處理不僅可以减少工作暫存區大小,還可以减少濾波器序列中之處理延遲。此外,使用資料重用技術可以提高ALF 134或234的操作速度,從而能够進一步提高編碼器100和解碼器200的性能。
儘管第1圖和第2圖的示例示出了包括在編碼器100或解碼器200中之一系列濾波器130-134或230-234,但是應當理解,在其他實施例中,可以在編碼器或解碼器中包括更少的這種濾波器。另外,儘管ALF 134或234通常被布置在濾波器序列的最後階段,但是在濾波器序列內ALF 134或234也可能是其它位置。那些位置可以不同於第1圖或第2圖示例所
示的位置。
在各種實施例中,ALF 134或234可以用硬件、軟體或其組合來實現。例如,ALF 134或234可以用一個或複數個積體電路(IC)來實現,例如專用積體電路(ASIC)、現場可程式化閘陣列(FPGA)等。對於另一示例,ALF 134或234可以被實現為包括存儲在計算機可讀非揮發性存儲介質中之指令的軟體或圖體。該指令在由處理電路執行時使處理電路執行ALF134或234的功能。
注意,實現本文公開的塊級處理技術和資料重用技術的ALF 134或234可以被包括在可以具有與第1圖或第2圖所示的類似或不同結構的其他解碼器或編碼器中。此外,在各種示例中,編碼器100和解碼器200可以包括在相同的設備中,或者包括單獨的設備。
第3A圖示出了傳統的圖像級濾波器管綫300A。濾波器管綫300A包括第一訊框暫存器310、DF 311、第二訊框暫存器312、SAO 313、第三訊框暫存器314和ALF 315。DDF 311、SAO 313和ALF 315可以具有與DF 130、SAO 132和ALF 134類似的功能和結構。然而,DF 311、SAO 313和ALF 315在逐個圖像的基礎上進行操作。
圖3B示出了以逐個圖像為基礎的圖像級濾波器管綫300A的示例性時序圖300B。如圖所示,順序地執行對應於管綫300A的每一級(DF 311、SAO 313和ALF 315)的操作331、341和351。具體地說,在時間段T31期間,依次執行與不同的塊塊a~塊d對應的重建操作321-324。不同的塊塊a
~塊d可以從圖像中分割出來,例如,每個塊對應於一個CTU塊。四個塊的重建取樣被存儲在第一訊框暫存器310中。在時間段T32期間,在接收到重建之視訊資料的整個圖像之後,DF 311可以開始運行,並且去塊濾波的取樣可以存儲在第二訊框暫存器312中。在時間周期T33期間,SAO 313可以開始工作,並且SAO濾波後之取樣可以存儲在第三訊框暫存器314中。在時間周期T34期間,ALF 315可以開始運行,並且自適應環路濾波取樣被生成。在上述過程中,訊框暫存器310、312和314各自存儲重建取樣之全部圖像。
第4A圖示出了根據本公開的實施例的塊級濾波器管綫400A。濾波器管綫400A可以是濾波器管綫136或236,然而,包括更多細節。濾波器管綫400A包括第一塊暫存器410、DF 411、第二塊暫存器412、SAO 413、第三塊暫存器414和ALF 415。DDF 411、SAO 413和ALF 415具有如第1圖示例中之DF 130、SAO 132和ALF 134類似的結構或功能或具有如第2圖示例中之DF 230、SAO 232和ALF 234類似的結構或功能。濾波器管綫400A具有三個級,每個級分對應於三個濾波器411、413和415中之一個。另外,DF 411、SAO 413和ALF 415在逐塊的基礎上操作。暫存器410、412和414中之每一個存儲一個塊的取樣,而不是第3A圖示例中之整個圖像的取樣。儘管在第4A圖的示例中,暫存器410、412和414被示出為與濾波器411、413和415分離的部件,在其他示例中,暫存器410、412或414可以被集成到濾波器411、413或415中。
第4B圖示出了根據本公開的實施例的塊級濾波器管綫400A的示例時序圖400B。在第4B圖的示例中,將整個圖像或圖像之區域劃分為四個塊:塊0-塊3。四個塊中之每一個遍歷濾波器管綫400A,並且由DF 411、SAO 413和ALF 415進行處理依次。具體地,在時間段T41期間,生成塊0的重建取樣並隨後存儲在塊暫存器410中。在時間段T42期間,DF 411處理塊0,同時塊1被重建。濾波後之塊0隨後被存儲在塊暫存器412中。在時間段T43期間,SAO 413處理塊0。隨後將經濾波的塊0存儲在塊暫存器414中。同時,DF 411處理塊1,而塊2正在重建。
在時間段T44期間,ALF 415開始處理塊0。同時,DF 411和SAO 413處理塊2和1,而塊3正在被重建。類似地,在時間段T45-T47期間,塊1-3可以通濾波波器管綫400A的每一級,從而得到一系列經處理的塊。如圖所示,在時間段T42-T46期間,濾波器管綫400A中之一個或複數個級(濾波器)並行操作。相反,在圖3B的示例中,在任何時間段,濾波器管綫300A中僅一個級(濾波器)在運行。因此,與圖像級管綫300A相比,塊級管綫400A之處理等待時間(processing latency)已經降低。此外,塊級管綫400A中之塊暫存器410、412和414可以具有比圖像級管綫400B中之訊框暫存器310、312和314更小的暫存器大小(從整個圖像减少到塊)。
第5圖示出了根據本公開的實施例的DF/SAO就緒區域510的示例。在一個示例中,也稱為DF/SAO就緒塊的DF/SAO就緒區域510是第1圖示例中之SAO 132的輸出,
其包括由DF 130和SAO 132連續處理的濾波取樣。第5圖示出了從圖像分割的複數個塊(諸如CTU塊)501-509。從包括複數個塊501-509的圖像分割的塊在編碼器100中以光栅掃描順序例如逐行從左到右逐個地被處理。從第二加法器122產生重建取樣塊,並以相同的順序逐個地在濾波器管綫136處接收。
在一個示例中,塊501-505已由SAO 132處理,而塊506-509將由SAO 132處理。DF/SAO就緒區域510是SAO 132的輸出,並將提供給ALF 134用於進一步處理。如圖所示,由於去塊處理和SAO處理,DF/SAO就緒區域510可以相對於塊505向上和向左移動幾行像元。例如,當處理重建取樣之塊505時,DF 130需要來自塊508的重建取樣,以便對底部水平塊邊界531進行去塊濾波。然而,塊508到塊505的底部的重建取樣在塊508重建之前是不可用的。因此,陰影區域520中之邊界531附近的幾行重建取樣不能被處理。類似地,由於塊506中之右垂直塊邊界532附近的重建取樣還不可用,所以在陰影區520中之塊邊界532附近的幾行重建取樣不能被DF 130處理。同樣地,由於SAO濾波在解塊處理之後被應用,當在SAO 132處理塊505時,不能對陰影區域520中之取樣執行SAO濾波。
陰影區域520中之取樣可以存儲在DF130的暫存器中,並且稍後在塊506或508中之取樣可用時被處理。作為上述處理的結果,SAO 132的輸出區域可以是如第5圖所示的偏移區域510。通常,DF/SAO就緒區域可以被配置為具有與塊501-509相同的大小,使得可以平衡在濾波器管綫的每個階
段之處理時間。
雖然上述示例中之DF/SAO就緒區域或塊從包括DF和SAO的濾波器管綫生成,但是應當理解,在其他示例中,DF/SAO就緒區域可以指從包括DF或SAO之一中之一個的濾波器管綫(或者包括與DF或SAO不同的濾波器)生成的塊。將這樣的塊作為ALF的輸入,由ALF使用本文所述的各種技術進行處理。
第6圖示出了根據本公開的實施例的FIR濾波器之濾波器形狀600。可以在ALF 134或234處使用具有濾波器形狀600的FIR濾波器來生成目標像元之濾波取樣。濾波器形狀600具有17個正方形。每個正方形被一個數字i索引。每個正方形i對應於對應於像元Pi的待濾波取樣Si。每個正方形i與濾波器參數Ci相關聯。因此,如由濾波器形狀600所定義,像元P8(第6圖中之陰影正方形)是目標像元(也稱為目標取樣),由St(P8)表示的目標像元P8的濾波取樣可以使用以下表達式計算,
要被濾波的像元P0-P16或取樣S0-S16在第6圖中形成要被濾波之區域(也稱為濾波器輸入區域)。待濾波之區域包括取樣之列(row)或行(column)。目標像元P8與待濾波區域的右邊界之間的行數被稱為濾波器形狀600的右跨度(right span)或具有濾波器形狀600的濾波器。在第6圖中,右跨度表示為Q。或者,右跨度也可以被定義為待濾波區域中目標像元右側的像
元數。類似地,也可以定義左跨度P、下跨度S和上跨度R。左跨度是指目標像元P8和待濾波區域的左邊界之間的行數;下跨度是指目標像元P8和待濾波區域的底部邊界之間的列數;上跨距是指目標像元P8與待濾波區域的上邊界之間的列數。左、下和上跨段P、S和R也在第6圖中示出。
雖然濾波器形狀600被示出為與3×3正方形重叠的7×7十字形,但是應當理解,在各種示例中,ALF 134或234中使用的FIR濾波器可以具有各種形狀和尺寸。例如,濾波器形狀可以是方形,菱形等,並且可以具有不同的尺寸。
第7A-7B圖示出了根據本公開的實施例的第一塊級處理技術。第7A圖示出了兩個DF/SAO就緒塊710-720。兩個塊710-720類似於第5圖示例中之DF/SAO就緒塊510,並且可以從濾波器管綫400A中之SAO 413依次生成。在一個示例中,塊710首先被生成並存儲在塊暫存器414中之第一暫存器中。ALF 415使用由濾波器形狀600定義的FIR濾波器來處理塊710。如第6圖所示,目標像元P8的ALF處理需要右Q行和左P行的取樣可用。因此,如第7A圖所示,塊710中之塊711中之最右邊的Q行取樣不能用FIR濾波器作為目標像元來處理,直到下一個塊720可用。為了解决這個問題,在一個示例中,ALF 415被配置為在例如在塊暫存器414中之第二暫存器(也稱為側暫存器(side buffer))中存儲塊711中之最右端的Q行取樣。此外,ALF 415還可以將塊711的左邊的取樣之P行存儲到塊暫存器414中之第二暫存器中。當塊711中之取樣正在被處理時,將需要該P行取樣。結果,塊712中
之取樣之全部P+Q行被存儲在側暫存器中。
當在塊暫存器414的第一暫存器處產生並接收下一個DF/SAO就緒塊720時,塊712與塊720組合以形成待濾波區域。在第7B圖中,當處理待濾波區域時,可以將陰影區域731(包括塊711)內的像元處理為目標像元。然而,最右側的Q行中之像元不能被處理為目標像元,直到塊720右側的下一個DF/SAO就緒塊可用。
在第7A-7B圖的上述示例中,用於處理塊邊界附近的取樣之第一塊級處理技術不應用於塊710和720中之上邊界701和下邊界702附近的取樣,如第7A圖所示。相反,在一個示例中,當上邊界701和下邊界702附近的取樣時,可以采用經修改的濾波器形狀以避免濾波塊710-720之上或之下的塊的列中之取樣。以這種方式,可以避免存儲塊710-720上方的列中之複數個塊中之取樣所需的暫存器。濾波器形狀的這種修改被稱為濾波器之條件變換。例如,當處理上邊界701附近取樣時,第6圖中之濾波器形狀600可以以這樣的方式進行修改,即可以忽略濾波器形狀600的上部的取樣0-4,或者取樣2可以被取樣7代替;取樣0、1和3由取樣8代替;並且取樣4被取樣9替代。結果,具有用於目標取樣8的修改過濾器形狀的ALF不需要處理在目標取樣8上方的取樣。
第8圖示出了根據本公開的實施例的自適應環路濾波過程800。過程800使用第7A圖-7B示例中描述的第一塊級處理技術。過程800可以在ALF 134、234或415執行。濾波器管綫400A中之ALF 415用作參照第7A-7B圖的過程800
的說明。過程800從S801開始,進入S810。
在S810,當前取樣塊720(在第7B圖中)在ALF 415處被接收並存儲在塊暫存器414的第一暫存器中。當前取樣塊720可以是圖像中一系列塊之一。可以以水平掃描順序或垂直掃描順序處理圖像中之塊序列。塊序列可以由濾波器管綫400A順序處理。當前取樣塊720可以是從SAO 413生成的DF/SAO就緒塊。
在S820,基於第7B圖中之當前塊720中之取樣和塊712中之取樣,針對目標像元執行ALF處理。取樣之塊712可以存儲在塊暫存器414的第二暫存器(側暫存器)中。塊712可以包括先前塊710內的與當前塊720相鄰之Q+P個像元行。在處理中之目標像元是塊731內的像元。如第7B圖所示,塊731包括塊720和712中除了最右側的Q行和塊720和712內的最左側的P行像元之取樣。
在S830,與當前塊720內的下一塊(未示出)相鄰之取樣之Q+P行存儲在側暫存器中。在第7B圖的示例中,下一個塊在塊720的右側。然而,在其他示例中,相對於當前塊720的先前塊或下一個塊的位置可以不同於第7B圖的示例,取决於圖像中之塊之處理順序。例如,先前的塊可以在當前塊720的右側,而下一個塊可以在當前塊720的左側。
在其他示例中,當前塊720可能是掃描列或掃描行中之最後一個塊。因此,在S830中,不執行將最右側Q+P行的取樣存儲到側暫存器。相反,可以使用修改的濾波器形狀來處理最右側Q行。此外,在其他示例中,塊720可能是掃描
二或掃描行中之第一塊。因此,沒有塊712可用。類似地,可以采用經修改的濾波器形狀來處理當前塊720的左邊界附近的目標取樣。
第9A-9B圖示出了根據本公開的實施例的第二塊級處理技術。第9A圖示出了以類似於DF/SAO塊510的方式生成的兩個相鄰之DF/SAO就緒塊910-920。在一個示例中,DF/SAO就緒塊910-920由SAO 413依次生成濾波器管綫400A。然而,不同於第7A-7B圖的示例,SAO 413不輸出DF/SAO就緒塊920作為其輸出區域。相反,SAO 413輸出擴展塊901作為輸出區域。擴展塊901包括在DF/SAO就緒區域920和塊912中之先前的DF/SAO就緒塊910的一部分。塊912至少包括塊911中之最接近DF/SAO塊910內的擴展區域901(或DF/SAO塊920)的取樣行的P+Q行取樣。塊911和塊920可以形成類似於第7B圖示例中之要被濾波之區域(塊720加上塊712)的濾波區域。隨後,擴展區域901可被存儲到塊暫存器414並由ALF 415進行處理。
第9B圖示出了擴展區域901和與第一擴展區域901相鄰之第二擴展區域902。第二擴展區域902可以在輸出第一擴展區域之後從濾波器管綫400A中之SAO 413輸出。兩個擴展區域901和902可以彼此重叠。重叠區域可以包括最靠近第二擴展區域902的第一擴展區域內的取樣之P+Q行。
第10A圖示出了如第5圖所示的塊501-509的相同組。然而,與第5圖的例子不同,在編碼器100中處理每個塊501-509,生成塊501-509的重建視訊資料之後,每個塊
501-509被分成複數個子塊,用於濾波器管綫136、236或400A上的濾波處理。如第10A圖所示,塊505被劃分為用於隨後的濾波處理的四個子塊0-3。在一個示例中,塊501-509的組是與CTU分區相對應的一組塊,並且每個塊501-509對應於一個CTU。
第10B圖示出了根據本公開的實施例的子塊級濾波處理的示例時序圖1000B。時序圖1000B對應於第10A圖中之子塊分區。如圖所示,在例如編碼器100處理塊的序列(塊505-506),並且順序地生成重建取樣之塊。例如,在濾波器管綫400A的塊暫存器410處接收到塊505的重建之視訊資料之後,DF 411以子塊來處理去塊濾波處理子塊。如圖所示,子塊0-3被順序處理。每個子塊被提供給SAO 413以進行處理,例如,一旦相應的去塊處理完成。因此,SAO 413通過子塊執行SAO處理子塊以產生如圖所示的DF/SAO就緒子塊。隨後,ALF 415逐一處理DF/SAO就緒子塊。與第4B圖示例中之塊級管綫處理相比,子塊級管綫處理可以進一步减少處理延遲並將工作暫存器大小從濾波器管綫中之取樣塊减少到取樣子塊。如第10B圖所示,ALF 415在DF 411或SAO 413完成其在塊505中之取樣之處理之前開始處理塊505中之取樣。因此,ALF 415處理子塊0-1,DF 411並行地處理子塊2-3,SAO 413並行地處理子塊1-2。
在其他示例中,DF 411和SAO 413處的子塊之處理順序可以不同於ALF 415處的順序。例如,在DF411和SAO413處,子塊0-3可以以0-2-1-3的順序被處理,而相同的
子塊0-3可以以0-1-2-3的另一個順序進行處理。此外,在一些示例中,在DF 411和SAO 413處的子塊的劃分可以不同於ALF 415處的子塊的劃分。例如,對於DF 411和SAO 413,子塊0-1可以作為一個塊被處理,而子塊2-3可以作為另一個塊被處理。相反,對於ALF 415,可以單獨處理子塊0-3。
第11A-11B圖示出了根據本公開的實施例的第三塊級處理技術。第三塊級處理技術使得第10A-10B圖示例中之子塊級管綫處理成為可能。濾波器管綫400A用作第三塊級處理技術的說明例。第11A圖示出了具有其自己之處理順序的從濾波器管綫400A處的SAO 413產生之DF/SAO就緒子塊1101-1116的序列,並且隨後以子塊在ALF 415子塊處理。DF/SAO就緒子塊1101-1116的序列可以各自對應於從塊劃分的子塊序列之一,例如塊501-509中之一個。如圖所示,子塊1101-1116的順序被布置成四列1121-1124和四行1131-1134,並且以水平掃描順序被處理,例如從左到右和從上到下。
為了處理子塊1101-1116,塊暫存器414可以被配置為包括第一暫存器,第二暫存器1141(稱為頂暫存器)和第三暫存器1142(稱為左暫存器)。第一暫存器可以用於存儲從SAO 413接收之子塊1101-1116中之一個。頂暫存器1141可以用於存儲列1121-1124之一的子塊中底部R+S列的取樣。左暫存器1142可以用於存儲列1121-1124之一中子塊的最右邊的P+Q行的取樣。
例如,ALF 415在自適應濾波處理期間逐個處理子塊1101-1104。ALF 415可以首先處理子塊1101。如上所述,
假設使用第6圖的FIR濾波器,由於下一個子塊1102的不可用性,最右邊的Q行的取樣不能被處理,並且由於下一列子塊1105不可用,底部的S行的取樣不能被處理。因此,在子塊1101被處理之後,ALF 415可以將子塊1101中之底部R+S個取樣列存儲到頂暫存器1141中,並將子塊1101中最右邊的P+Q個行的取樣存儲在左暫存器1142中。
然後,ALF 415可以繼續處理子塊1102。然後,存儲在左暫存器1142中之子塊1101中之最右邊的P+Q個行的取樣可以與子塊1102組合以用於相應的ALF處理。在子塊1102被處理之後,ALF 415可以將子塊1102中之底部R+S個取樣列存儲到頂暫存器1141中,並將子塊1102中之最右的P+Q個取樣行存儲在進入左暫存器1142,其代替先前存儲的子塊1102中之取樣之P+Q行。以類似的方式,可以處理子塊1103-1104。結果,頂暫存器1141現在可以存儲子塊1101-1104的底部R+S列的取樣,而左暫存器1142可以存儲1104的最右邊的P+Q個取樣行。
以類似的方式,子塊1105-1116可以隨後由ALF 415進行處理。在該處理期間,存儲在頂暫存器中之一列中之底部R+S列取樣可用於處理子塊在相鄰之下一列中之子塊。同時,相鄰下一列中之底部R+S列取樣可以替代上述列中之最下面的R+S列取樣。在一個示例中,不對最後一列1124執行底部R+Q列取樣之存儲。此外,在對所有子塊1101-1116執行ALF處理之後,最右行1134中之子塊1104、1108、1112和1116中之最右邊的P+Q行取樣被存儲在左暫存器1142
中。然後可以保留左暫存器1142中之取樣以處理當前DF/SAO就緒子塊1101-1116右側的下一組DF/SAO就緒子塊。
第11B圖示出了如第11A圖所示的DF/SAO就緒子塊1101-1116的相同序列,然而,其以垂直掃描順序被處理,例如從上到下,從左到右。在第11B圖的示例中,可以采用頂暫存器1151和左暫存器1152。然而,與頂暫存器1141相比,頂暫存器1151的大小進一步减小。具體地,在以垂直掃描順序處理子塊1101-1116的自適應濾波處理期間,頂暫存器1151可以用於存儲行1131-1134中之一個的子塊的底部R+S列取樣。左暫存器1152可以以類似於左暫存器1142的方式使用,用於存儲各個子塊的最右邊的P+Q行的取樣。在自適應濾波處理結束時,左暫存器1142中之取樣可以類似地保持用於處理當前DF/SAO就緒子塊1101-1106右側的下一組DF/SAO就緒子塊。
在其他示例中,子塊之處理順序可以不同於第11A圖-11B之處理順序。例如,子塊可以以Z字形(zig-zag)順序進行處理。然而,也可以適用第11A圖-11B描述的方法。
第12圖示出了根據本公開的實施例的ALF 1200。ALF 1200可以采用一維(1D)或二維(2D)資料重用技術來减少資料訪問時間。ALF 1200可以包括塊暫存器1210和ALF電路1230。塊暫存器1210被配置為存儲前ALF(pre-ALF)資料。前ALF資料可以包括當前正在處理的DF/SAO就緒塊,以及一個或複數個側暫存器(例如頂暫存器,左暫存器等),用於如上所述的存儲來自先前的DF/SAO就緒塊的P+Q行
或R+S列取樣。作為示例,塊暫存器1210包括前ALF資料的塊1220。ALF電路1230被配置為從塊暫存器1210接收取樣並對塊1220中之目標像元執行ALF處理。假設ALF電路1230使用具有第6圖所示的濾波器形狀的FIR濾波器。因此,在目標像元之ALF處理期間,將FIR濾波器應用於圍繞目標像元之待濾波區域內的像元取樣,並且可以基於表達式(2)來計算濾波的取樣。
在一個示例中,ALF 1230使用1D資料重用技術來計算兩個相鄰像元P1和P2的濾波取樣,如第12圖中標示的。兩個像元沿著垂直維度分布。如圖所示,用於像元P1的ALF處理的相鄰取樣在由加粗實綫包圍之區域1221內,而用於像元P2的ALF處理的相鄰取樣在陰影區域1222內。在第一種情况下,塊1220中之取樣從列暫存器1210逐列讀取(列掃描),並且在R1-R7列中之C1-C8行中之取樣在ALF電路處被接收。基於接收之取樣,ALF電路1230可以計算與取樣P1和P2相對應的兩個濾波取樣。假設從塊暫存器1210讀取一列或幾行取樣需要一個時鐘周期,需要七個時鐘周期來訪問兩個像元P1和P2的相鄰取樣。在第二種情况下,塊1220中之取樣可以逐行(行掃描)從塊暫存器1210讀取。因此,訪問R1-R7列和C1-C8行的取樣可能需要八個時鐘周期。
在另一示例中,ALF 1230使用2D資料重用技術來計算三個相鄰像元P1、P2和P3的濾波取樣,如第12圖中標記的。三個目標像元分布在兩個維度:水平維度和垂直維度。具體地,可以通過列掃描或行掃描從塊暫存器1210讀取
C1-C8行和R1-R8列的取樣。ALF電路1230可以基於獲得的取樣計算目標像元P1、P2和P3的三個濾波取樣。因此,需要八個時鐘周期來獲得三個目標像元之ALF處理的取樣。
第13圖示出了根據本公開的實施例的第一ALF 1300。ALF 1300實現了1D資料重用技術。ALF 1300包括塊暫存器1310和多級管綫濾波器(multiple stage pipeline filter,簡寫為MSPF)電路1330。塊暫存器1310被配置為存儲前ALF資料的塊1320。MSPF電路1330實現具有第6圖的濾波器形狀,並具有P、Q、R、S的左、右、上、下跨度的FIR濾波器。具體來說,MSPF 1330具有R+S+1=7級1361-1367。每個級包括乘法-加法(multiply-add,簡寫為MA)電路1351-1357和延遲元件1341-1347。每個延遲元件1341-1347可以是移位暫存器或其他類型的電路,並且當由控制時鐘信號1373觸發時,可以存儲MA電路1351-1357的輸出並將存儲的值輸出到下一級。
如圖所示,每個MA電路1351-1357可以將來自輸入綫1371的一個或複數個取樣作為第一輸入,將一個或複數個濾波器參數作為第二輸入,並且相應地計算各個取樣和濾波器參數的乘積之和(sum of product)。此外,在級1362-1367的每個MA電路中,從前級計算的總和可以作為第三輸入,並且被加到乘積之和。例如,各級1361-1367的MA電路1351-1357可以根據以下表達式進列計算,級1361:Sd x C0;級1362:Sd x C1+Sum 1;
級1363:Sc x C2+Sd x C3+Se x C4+Sum 2;級1364:Sa x C5+Sb x C6+Sc x C7+Sd x C8+Se x C9+Sf x C10+Sg x C11+Sum 3;級1365:Sc x C12+Sd x C13+Se x C14+Sum 4;級1366:Sd x C15+Sum 5;級1367:Sd x C16+Sum 6.
在上述表達式中,C1-C16是對應於第6圖的濾波器形狀的濾波器參數。Sa-Sg分別表示從ALF前ALF資料塊1320中讀出的L1-L9中一列的行a-g中之取樣。Sum 1~Sum 6分別對應於前級的MA電路的輸出。
在操作中,與時鐘信號1373同步地逐列從塊1320讀取取樣。在每個讀取操作期間,P+Q+1個取樣包含Sa-Sg列,被提供給輸入綫1371。因此,每個MA電路1351-1357基於兩個(第一級1361)或三個(級1362-1367)輸入來計算和。該和值作為輸入提供給每個相應的延遲元件1341-1347。然後,由時鐘信號1373觸發,所計算出的每一級的和被移入下一個相鄰級,作為在下一級的MA電路的輸入。接下來,可以將下一列取樣Sa-Sg提供給輸入綫1371。類似地,可以在每個級獲得在輸入綫1371上的當前取樣和從前級輸出的和的和。隨後,當由時鐘信號1373觸發時,新計算的和可被移入下一級。
因此,當沿著輸入綫1371逐列地接收到L1-L7的綫路中之取樣時,可以在MSPF電路1330的輸出端1372處獲得對應於目標像元P1的濾波取樣。當提供再一列(L8)的取
樣時,可以在輸出端1372處獲得對應於目標像元P2的濾波取樣。當塊1320中沿著垂直方向逐列連續地輸入取樣時,d行的像元P2下方的目標像元(如P3)可連續獲得。
第14圖示出了根據本公開的實施例的第二ALF 1400。ALF 1400實現了2D資料重用技術。第二ALF 1400包括塊暫存器1410和濾波器電路1430。塊暫存器1410類似於塊暫存器1310,並且被配置為存儲前ALF資料。如圖所示,前ALF取樣之塊1420存儲在塊暫存器1410中。濾波器電路1430被配置為從塊暫存器1410接收取樣以對塊1420中之目標像元執行ALF處理。第6圖的FIR濾波器用於ALF處理。濾波器電路1430包括兩組MSPF電路1431-1432。每個MSPF電路1431-1432在功能和結構方面可以類似於第13圖示例中之MSPF電路1330。
在操作中,逐列從塊1420讀取取樣,並將其應用於耦合到濾波器電路1430的輸入綫1470。然而,每列取樣包括行a-h中之P+Q+2取樣。此外,在到第一MSPF電路1431的輸入綫1471處,取樣Sa-Sg被接收並提供給第一MSPF電路1431。相反,在到第二MSPF電路1432的輸入綫1473處,取樣Sb-Sh被接收並提供給第二MSPF電路1432。因此,由於取樣Sa-Sh在濾波器電路1430處逐列地連續接收,諸如像元P1-P3的第一行目標像元和例如像元Pa-Pc的第二行目標像元,可以分別從輸出1472和1474並行獲得。
儘管第14圖示例中示出了兩個MSPF電路來實現2D資料重用,可以理解,在其他示例中可以使用多於兩個的
MSPF電路。例如,並行操作的N個MSPF電路可以包括在濾波器電路1430中,並且從塊1420讀取的每一列取樣可以包括P+Q+N個取樣。因此,作為上述自適應環路濾波處理的結果,可以並行獲得第14圖示例中之水平方向上彼此相鄰之N行目標像元之濾波取樣。
第15圖示出了根據本公開的實施例的第三ALF 1500。ALF 1500實現了1D資料重用技術。ALF 1500可以包括塊暫存器1510和濾波器電路1530。塊暫存器1510類似於塊暫存器1310或1410,並且被配置為存儲前ALF資料。如圖所示,取樣塊1520存儲在塊暫存器1510中。濾波器電路1530被配置為從塊暫存器1510接收取樣,並對塊1520中之目標像元執行ALF處理。在一個示例中,使用第6圖的FIR濾波器。濾波器電路1530可以包括暫存器陣列1540和乘法-加法(MA)電路1550。
暫存器陣列1540被配置為存儲從塊暫存器1510接收之取樣列。具體地,暫存器陣列1540可以包括標記為R1-R7的R+S+1列移位暫存器。在一個示例中,前S+1=4列R1-R4的每列包括P+Q+1=7個暫存器,而列R5-R7每個包括與過濾器形狀600的上部中之相應列中之相鄰取樣之數量一致的複數個暫存器。由時鐘信號控制,存儲在每一列暫存器中之取樣可以移位到下一列移位暫存器。以這種方式,可以在列R1的移位暫存器的輸入端逐列接收取樣,逐列向下推到下位的暫存器。
MA電路1550被配置為從暫存器陣列1540接收取
樣,並且相應地計算濾波後之取樣。例如,對應於第6圖的濾波器,MA電路1550可以基於接收到的取樣來執行表達式(2)的計算。對於ALF 1500采用的不同濾波器,MA電路1550可以包括不同電路用於計算。
在操作中,由時鐘信號控制,塊1520中之L1-L7列中之取樣Sa-Sg可以在暫存器陣列1540處逐列接收和存儲。結果,例如,塊1520中之列L1中之取樣Sd可以存儲在暫存器陣列1540中之列R7處的移位暫存器處,而列L7中之取樣Sa-Sg可以存儲在列R1處的移位暫存器處。此後,使用存儲在暫存器陣列1541中之區域1541中之移位暫存器中之取樣作為輸入,MA電路1550對第15圖所示的第一目標像元P1執行第一計算和第一濾波取樣。隨後,可以將列L8中之一列取樣讀取並移位到暫存器陣列1540中。然後,MA電路1550可以執行第二次計算,以獲得第二目標像元P2的第二濾波取樣。以這種方式,隨著取樣被逐列地接收並存儲到暫存器陣列1540中,可以連續獲得針對塊1520中之行d中之P2下方的目標像元(例如P3)的序列的濾波取樣。
在一個示例中,暫存器陣列1540包括比第15圖所示的R+S+1列多的R+S+N列。因此,濾波器電路1530包括N組MA電路1550。在這種配置的操作中,在初始階段,可以首先將R+S+N個取樣綫存儲在暫存器陣列1540中,隨後N組MA電路1550可以基於相應目標像元之相鄰取樣來並行地執行計算。然後,在第二階段,可以擷取N個更多的新取樣列並將其存儲在暫存器陣列中。此後,可以相應地在N組
MA電路1550上並行計算另一組N個濾波取樣。
第16圖示出了根據本公開的實施例的第四ALF 1600。ALF 1600實現了2D資料重用技術。ALF 1600包括塊暫存器1610和濾波器電路1630。塊暫存器1610類似於塊暫存器1510,並且被配置為存儲前ALF資料。如圖所示,塊1620的取樣被存儲在塊暫存器1610中。濾波器電路1630被配置為從塊暫存器1610接收取樣並且相應地計算經濾波的取樣。假設使用第6圖的FIR濾波器。濾波器電路1630可以包括暫存器陣列1640和兩個MA電路1651-1652。暫存器陣列1640在功能和結構方面類似於暫存器陣列1540。然而,與暫存器陣列1540相比,暫存器陣列1640的每一列包括多一個的移位暫存器。兩個MA電路1651-1652在功能和結構方面類似於第15圖示例中之MA電路1650。
在操作中,塊1620中之取樣可以逐列讀出,並且每列可以包括P+Q+2個取樣。與第15圖示例相比,每列再讀取一個取樣Sh。在初始階段,可以接收R+S+1=7列取樣並將其存儲到暫存器陣列1640中。此後,兩組MA電路1651-1652可以並行各自計算各個目標像元之濾波取樣P1或Pa,如第16圖所示。計算可以基於每個相應目標像元P1或Pa的相鄰取樣,如第6圖示例所定義的存儲在暫存器陣列1640中。在第二階段期間,塊1620中列L8中之一列取樣可以被接收並存儲到暫存器陣列1640中。然後,兩個MA電路1651-1652可以計算目標像元P2和Pb的兩個濾波取樣,如第16圖所示。隨後,可以從塊1620連續讀取取樣列,並逐列存儲在暫存器
陣列1640中。對於每列取樣,可以獲得塊1620中之行d和e中之兩個相鄰目標像元之兩個濾波取樣,例如像元P3和Pc。
儘管第16圖示例中示出了兩個MA電路1651-1652以實現2D資料再利用,可以理解,在其他示例中可以采用多於兩個的MA電路。例如,N個MA電路可以包括在並行操作的濾波器電路1630中,並且從塊1420讀取的每列取樣可以包括P+Q+N個取樣。因此,第14圖示例中之水平方向上彼此相鄰之N行目標像元之濾波取樣可以基於當前存儲在暫存器陣列1640中之取樣並行獲得。
第17圖示出了根據本公開的實施例的第一環路濾波器電路1700。濾波器電路1700包括濾波器管綫1740。濾波器管綫1740可以執行類似於濾波器管綫136、236或400A的功能。在一個示例中,濾波器管綫1740包括DF 1710、SAO 1720和ALF 1730。就功能和結構而言,DF 1710和SAO 1720可以類似於DF 411和SAO 413。ALF 1730可以是實現一維或二維資料重用技術的ALF。例如,ALF 1730可以是第13圖-16中描述的ALF之一。
在一個示例中,濾波器管綫1740以塊級操作。例如,重建之視訊資料的塊1750可以被生成並作為輸入被接收到濾波器管綫1740。塊1750可以是從圖像分割的塊序列之一。在一個示例中,塊序列的分區可以與CTU的分區一致。然後,濾波器管綫1740可以以類似於第4A圖-4B示例中描述的塊級管綫處理的方式處理塊1750和其他塊。另外,可以使用參照第7A圖-7B、第8圖和第9A-9B圖描述的塊級處理技
術來處理每個取樣塊。
在另一示例中,濾波器管綫1740以子塊級操作。例如,取樣之塊1750被進一步分割成子塊1751,以在濾波器管綫處被處理。例如,子塊1751可以以與第10A-10B圖中描述的子塊級管綫處理類似的方式進行處理。另外,參照第11A-11B圖描述的塊處理技術可用於處理取樣之每個子塊。
此外,在替代示例中,ALF 1730可以包括能够進列1D或2D資料重用的兩組或更多組ALF電路。對於從SAO 1720接收到的取樣塊或子塊,可以使用調度器將接收之塊分配給兩組或更多組ALF電路,以並行處理兩個或更複數個取樣塊或子塊。當ALF電路的吞吐量遠低於前級濾波器電路時,調度可以平衡管綫之處理時間。否則,如果ALF電路和前級濾波器電路之間的吞吐量接近,所接收之塊或子塊可以由調度器進一步劃分成更多的子塊,以平衡管綫之處理時間。
第18圖示出了根據本公開的實施例的第二環路濾波器電路1800。濾波器電路1800可以包括第一濾波器管綫1811和第二濾波器管綫1821。第一和第二濾波器管綫1811-1821中之每一個可以類似於第17圖示例中之濾波器管綫1740。因此省略了第一和第二濾波器管綫1811-1821的描述。在操作中,兩個濾波器管綫1811-1821可以並行操作,以進一步提高環路濾波過程之處理速度。例如,可以在編碼器100或解碼器200中依次生成重建視訊資料塊。當接收到重建視訊資料塊1850時,塊1850可以被進一步分成兩部分。每個部分隨後由兩個濾波器管綫1811-1821並行處理。對於取樣之每個部
分的濾波,第10A-10B圖中之子塊級管綫處理及第11A-11B圖中之相應的塊級處理技術可以應用於每個濾波器管綫1810-1820。
此外,在一個示例中,濾波器管綫1811中之ALF 1810可以包括能够進行1D或2D資料重用的兩組或更多組ALF電路。因此,當從ALF 1810的前級濾波器電路接收到時,在濾波器管綫1811中處理的兩個部分之一可被進一步分割成兩個或更複數個子塊。然後可以通過能够進行1D或2D資料重用的兩組或更多套ALF電路並行地處理兩個或更複數個子塊。類似地,濾波器管綫1821中之ALF 1820還可以包括能够進行一維或二維資料重用的兩組或更多組ALF電路,其可以促進對從先前級濾波器電路接收之取樣之一部分中之目標取樣之並行ALF處理。
第19圖示出了根據本公開的實施例的視訊編解碼系統中之自適應環路濾波處理1900。過程1900可以在各種實施例中之ALF 134、234、415、1730、1810或1820中進行。過程1900從S1901開始,並進行到S1910。
在S1910,在ALF處接收一個取樣塊。取樣塊可以在濾波器管綫中從前級濾波器電路(例如DF或SAO)生成。取樣塊是當前圖像中包含的複數個塊之一。例如,所接收之塊可以是CTU塊或CTU塊的子塊。
在S1920,可以並行地執行取樣塊中之複數個目標取樣之ALF處理。可以在前級濾波器電路同時處理當前圖像中之另一塊時執行ALF處理。例如,取樣塊可以劃分成兩個
或更複數個子塊,並且可以使用第17-18圖中描述的並行處理技術。例如,ALF 1730、1810或1820可以包括能够進行1D或2D資料重用的兩組或更多組濾波器電路,其可以同時進行操作,使得可以並行處理兩個或更複數個目標取樣。
如果需要,在S1930,將第一取樣存儲在暫存器中。每個第一取樣具有由濾波器形狀限定的濾波器輸入區域,該濾波器輸入區域包括至少一個未被接收之取樣。在S1940,包含在第一取樣之濾波器輸入區域中之第二個取樣被存儲到暫存器中。在第7A圖的示例中,塊711中之取樣對應於第一取樣,而塊712除了塊711以外的取樣對應於第二取樣。
在S1950處,接收與當前圖像中之取樣塊相鄰之下一個取樣塊。下一個取樣塊也可以從前級濾波器電路產生。在S1960,必要時從暫存器中讀取所述複數個第一取樣和所述複數個第二取樣。在S1970,對由下一相鄰塊和第一取樣形成的塊中之一部分取樣進行ALF處理。在第7B圖的示例中,塊720是下一個塊,並且直到接收到另一個下一個塊(further next block)為止,才能處理最右Q個取樣行。該過程進行到S1999,並在S1999終止。
儘管已經結合作為示例提出的具體實施例描述了本公開的各方面,但是可以對示例的替代、修改和變化進行說明。因此,本文所闡述的實施例旨在是說明性的而不是限制性的。在不脫離下面提出的權利要求的範圍的情况下,可以進行改變。
Claims (24)
- 一種自適應環路濾波方法,用於視訊編解碼系統,其特徵在於,包括:接收從濾波器管綫中之前級濾波器電路產生之取樣塊,該取樣塊是包括在當前圖像中之複數個塊之一;並行執行對該取樣塊中之複數個目標取樣之自適應環路濾波處理,而該前級濾波器電路同時處理該當前圖像中之另一個塊;在暫存器中存儲複數個第一取樣,其中每個第一取樣具有由包括至少一個未被接收之取樣之濾波器形狀限定的濾波器輸入區域;以及在該暫存器中存儲包括在該複數個第一取樣之複數個濾波器輸入區域中之複數個第二取樣。
- 如申請專利範圍第1項所述之自適應環路濾波方法,其中,該前級濾波器電路是去塊濾波器電路或取樣自適應偏移濾波器電路。
- 如申請專利範圍第1項所述之自適應環路濾波方法,其中,還包括:接收與該取樣塊相鄰之下一個取樣塊;從該暫存器讀取該複數個第一取樣和該複數個第二取樣;以及對由該相鄰之下一個取樣塊和存儲在該暫存器中之該複數個第一取樣形成的塊中之複數個取樣之至少一部分執行自適應環路濾波處理。
- 如申請專利範圍第1項所述之自適應環路濾波方法,其中,還包括:在該前級濾波器電路在完成包括接收到的取樣塊的當前編解碼樹單元中之所有取樣之處理之前,開始對該接收到的取樣塊中之至少一個目標取樣進行自適應環路濾波處理。
- 如申請專利範圍第1項所述之自適應環路濾波方法,其中,該暫存器包括左暫存器,該左暫存器包括與該取樣塊在同一列中之與第一待處理塊相鄰之該複數個第一取樣和該複數個第二取樣之第一部分,以及頂暫存器,包括與該取樣塊在同一行中之第二待處理塊相鄰之該複數個第一取樣和該複數個第二取樣之第二部分。
- 如申請專利範圍第1項所述之自適應環路濾波方法,其中,該複數個第一取樣和該複數個第二取樣是與該圖像中之下一個塊相鄰之P+Q行取樣,P和Q是該濾波器形狀的左跨度和右跨度。
- 如申請專利範圍第1項所述之自適應環路濾波方法,其中,對該取樣塊中之複數個目標取樣並行執行自適應環路濾波處理包括:接收該取樣塊中之複數個取樣;對該取樣塊中之第一目標取樣執行第一自適應環路濾波處理,以基於由該濾波器形狀限定的該第一目標取樣之第一濾波器輸入區域中之複數個接收之取樣生成第一濾波取樣;以及對該取樣塊中之與該第一目標像元相鄰之第二目標像元執 行第二自適應環路濾波處理,以基於由該濾波器形狀定義的該第二目標取樣之第二濾波器輸入區域中之複數個接收之取樣生成第二濾波取樣,其中用於該第一目標取樣之該第一自適應環路濾波處理的複數個接收之取樣被再次用於該第二目標取樣之該第二自適應環路濾波處理。
- 如申請專利範圍第7項所述之自適應環路濾波方法,其中,接收該取樣塊包括:逐行接收塊中之複數個取樣作為多級管綫濾波器電路的輸入,以及連續地從該多級管綫濾波器電路產生該第一濾波取樣和該第二濾波取樣。
- 如申請專利範圍第7項所述之自適應環路濾波方法,其中,接收該取樣塊包括:逐列地接收塊中之複數個取樣作為第一多級管綫濾波器電路和與該第一多級管綫濾波器電路並行操作的第二多級管綫濾波器電路的輸入,以及基於接收到的該塊中之該複數個取樣,分別在該第一多級管綫濾波器電路和該第二多級管綫濾波器電路處生成該第一濾波取樣和該第二濾波取樣。
- 如申請專利範圍第7項所述之自適應環路濾波方法,其中,接收該取樣塊包括將塊中之複數個取樣逐列地移位到具有複數個移位暫存器列的移位暫存器陣列中,該複數個移位暫存器的每列存儲移位取樣列,以及執行該第一自適應環路濾波處理和該第二自適應環路濾波處理包括, 基於當前存儲在該移位暫存器陣列中之複數個取樣,通過耦合到該移位暫存器陣列以從該移位暫存器陣列接收該複數個取樣之乘法加法電路來計算該第一濾波取樣,將第一個塊中之下一列取樣移位到該移位暫存器陣列中,以及在該乘法加法電路基於當前存儲在該移位暫存器陣列中之該複數個取樣來計算該第二濾波取樣。
- 如申請專利範圍第7項所述之自適應環路濾波方法,其中,接收該取樣塊包括將塊中之複數個取樣逐列地移位到具有複數個移位暫存器列的移位暫存器陣列中,每列移位暫存器存儲一列取樣,以及執行該第一自適應環路濾波處理和該第二自適應環路濾波處理包括,基於當前存儲在該移位暫存器陣列中之第一組取樣,通過耦合到該移位暫存器陣列以從該移位暫存器陣列接收該第一組取樣之第一乘法加法電路來計算該第一濾波取樣,以及基於當前存儲在該移位暫存器陣列中之第二組取樣,通過耦合到該移位暫存器陣列以從該移位暫存器陣列接收該第二組取樣之第二乘法加法電路來與該第一濾波取樣之計算並行地計算該第二濾波取樣,該第二組取樣包括該第一組取樣之一部分。
- 如申請專利範圍第1項所述之自適應環路濾波方法,其中,還包括: 將該取樣塊劃分成第一子塊和第二子塊,其中並行地執行該取樣塊中之複數個目標取樣之自適應環路濾波處理包括,對該第一子塊取樣中之第一目標取樣執行第一自適應環路濾波處理;以及對該第二子塊取樣中之第二目標取樣執行第二自適應環路濾波處理,其中該第一自適應環路濾波處理和該第二自適應環路濾波處理並行執行。
- 一種自適應環路濾波電路,用於視訊編解碼系統,其特徵在於,包括:工作暫存器,被配置為存儲從過濾器管綫中之前級濾波器電路生成的取樣塊,該取樣塊是包括在當前圖像中之複數個塊之一;濾波器電路,其被配置為並行地對該取樣塊中之複數個目標取樣執列自適應環路濾波器處理,而該前級濾波器電路同時處理該當前圖像中之另一個塊;以及側暫存器,被配置為存儲複數個第一取樣,其中該複數個第一取樣中之每個具有由包括至少一個未被接收之取樣之濾波器形狀定義的濾波器輸入區域,並且存儲包括在該複數個第一取樣之複數個濾波器輸入區域中之複數個第二取樣。
- 如申請專利範圍第13項所述之自適應環路濾波電路,其中該前級濾波器電路是去塊濾波器電路或取樣自適應偏移濾波器電路。
- 如申請專利範圍第13項所述之自適應環路濾波電路,其中,該工作暫存器被配置為存儲與該取樣塊相鄰之下一個取樣塊,以及該濾波器電路被配置為從該側暫存器讀取該複數個第一取樣和該複數個第二取樣,並且對由該相鄰之下一個取樣塊和存儲在該暫存器中之該複數個第一取樣形成的塊中之至少一部分取樣執行自適應環路濾波處理。
- 如申請專利範圍第13項所述之自適應環路濾波電路,其中,該濾波器電路被配置為在該前級濾波器電路在完成包括接收到的取樣塊的當前編解碼樹單元中之複數個取樣之處理之前,開始對該接收到的取樣塊中之至少一個目標取樣進行自適應環路濾波處理。
- 如申請專利範圍第13項所述之自適應環路濾波電路,其中,該側暫存器包括左暫存器,該左暫存器包括與該取樣塊在同一列中之第一待處理塊的該複數個第一取樣和該複數個第二取樣之第一部分,以及頂暫存器,包括與該取樣塊在同一行中之第二待處理塊相鄰之該複數個第一取樣和該複數個第二取樣之第二部分。
- 如申請專利範圍第13項所述之自適應環路濾波電路,其中,該複數個第一取樣和該複數個第二取樣是與該圖像中的下一個塊相鄰的P+Q行采樣,P和Q是該濾波器形狀的左跨度和右跨度。
- 如申請專利範圍第13項所述之自適應環路濾波電路,其中,該濾波器電路還被配置為: 從該工作暫存器或該側暫存器接收複數個取樣;對所接收之該複數個取樣中之第一目標取樣執行第一自適應環路濾波處理,以基於由該濾波器形狀限定的該第一目標取樣之第一濾波器輸入區域中之接收之複數個取樣生成第一濾波取樣;以及對所接收之該複數個取樣中與該第一目標像元相鄰之第二目標像元執行第二自適應環路濾波處理,以基於由該濾波器形狀定義的該第二目標取樣之第二濾波器輸入區域中之接收之複數個取樣生成第二濾波取樣,其中用於該第一目標取樣之該第一自適應環路濾波處理的接收之複數個取樣被再次用於該第二目標取樣之該第二自適應環路濾波處理。
- 如申請專利範圍第19項所述之自適應環路濾波電路,其中,該濾波器電路包括第一多級管綫濾波器電路,其被配置為:逐列接收來自該工作暫存器或該側暫存器的該複數個取樣;以及連續生成該第一濾波取樣和該第二濾波取樣。
- 如申請專利範圍第19項所述之自適應環路濾波電路,其中,該濾波器電路包括彼此並行操作的第一多級管綫濾波器電路和第二多級管綫濾波器電路,並且該第一多級管綫濾波器電路和該第二多級管綫濾波器電路被配置為:從該工作暫存器或該側暫存器逐列接收該複數個取樣,以及 基於所接收之該複數個取樣,分別在該第一多級管綫濾波器電路和該第二多級管綫濾波器電路處並行地生成該第一濾波取樣和該第二濾波取樣。
- 如申請專利範圍第19項所述之自適應環路濾波電路,其中,該濾波器電路包括:垃圾暫存器陣列,被配置為逐列地接收來自該工作暫存器或該側暫存器的複數個取樣,其中該移位暫存器陣列中之每一列存儲一列取樣,並且當新的取樣列移入移位暫存器陣列的第一列時,每列暫存器被存儲在相鄰列暫存器中之取樣更新;以及乘法加法電路,連接到該移位暫存器陣列並被配置為基於存儲在該移位暫存器陣列中之複數個第一取樣來計算與該第一目標取樣相對應的該第一濾波取樣,並且隨後基於存儲在該移位暫存器陣列中之複數個第二取樣計算與該複數個第二目標取樣相對應的該第二濾波取樣,其中該複數個第二取樣是由新的取樣綫移位到該移位暫存器陣列的該第一列得到的。
- 如申請專利範圍第19項所述之自適應環路濾波電路,其中,該濾波器電路包括:移位暫存器陣列,被配置為逐列地接收來自該工作暫存器或該側暫存器的複數個取樣,其中該移位暫存器陣列中之每一列存儲一列取樣,並且當新的取樣綫移入該移位暫存器陣列的第一列時,每一列暫存器用存儲在相鄰列暫存器中之複數個取樣進行更新; 連接到該移位暫存器陣列並被配置為接收當前存儲在該移位暫存器陣列中之第一組取樣之第一乘法加法電路;以及連接到該移位暫存器陣列並被配置為接收當前存儲在該垃圾暫存器陣列中之第二組第二取樣的第二乘法加法電路,其中該第一乘法加法電路和該第二乘法加法電路還被配置為分別基於當前存儲在該移位暫存器陣列中之相應的該第一組取樣和該第二組取樣,並行計算對應於該複數個第一目標取樣和該複數個第二目標取樣之該第一濾波取樣和該第二濾波取樣。
- 如申請專利範圍第13項所述之自適應環路濾波電路,其中,該濾波器電路還被配置為:對該取樣塊的第一子塊中之第一目標取樣執行第一自適應環路濾波處理;以及對該取樣塊的第二子塊中之第二目標取樣執行第二自適應環路濾波處理,其中該第一自適應環路濾波處理和該第二自適應環路濾波處理並行執行。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662340015P | 2016-05-23 | 2016-05-23 | |
US62/340,015 | 2016-05-23 | ||
US15/596,752 US10609417B2 (en) | 2016-05-23 | 2017-05-16 | High efficiency adaptive loop filter processing for video coding |
US15/596,752 | 2017-05-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201836357A true TW201836357A (zh) | 2018-10-01 |
Family
ID=60330649
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106116850A TW201836357A (zh) | 2016-05-23 | 2017-05-22 | 視頻編解碼的高效自適應環路濾波處理 |
Country Status (3)
Country | Link |
---|---|
US (2) | US10609417B2 (zh) |
CN (2) | CN108881912B (zh) |
TW (1) | TW201836357A (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019026721A1 (en) * | 2017-08-01 | 2019-02-07 | Sharp Kabushiki Kaisha | SYSTEMS AND METHODS FOR FILTERING RECONSTRUCTED VIDEO DATA USING ADAPTIVE LOOP FILTERING TECHNIQUES |
US11140418B2 (en) | 2018-07-17 | 2021-10-05 | Qualcomm Incorporated | Block-based adaptive loop filter design and signaling |
US11051017B2 (en) * | 2018-12-20 | 2021-06-29 | Qualcomm Incorporated | Adaptive loop filter (ALF) index signaling |
CN114041290A (zh) * | 2019-06-24 | 2022-02-11 | 瑞典爱立信有限公司 | 用于图像处理的组合环路滤波 |
JP7180001B2 (ja) * | 2019-12-24 | 2022-11-29 | テレフオンアクチーボラゲット エルエム エリクソン(パブル) | 適応ループフィルタ処理のための仮想境界処理 |
US11882277B2 (en) * | 2021-05-05 | 2024-01-23 | Mediatek Inc. | Video encoding method using multiple in-loop filters in low latency video encoding and associated video encoding apparatus |
WO2024008105A1 (en) * | 2022-07-05 | 2024-01-11 | Douyin Vision (Beijing) Co., Ltd. | Multi-source based extended taps for adaptive loop filter in video coding |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120189064A1 (en) * | 2011-01-14 | 2012-07-26 | Ebrisk Video Inc. | Adaptive loop filtering using multiple filter shapes |
WO2012175195A1 (en) * | 2011-06-20 | 2012-12-27 | Panasonic Corporation | Simplified pipeline for filtering |
WO2013053324A1 (en) * | 2011-10-14 | 2013-04-18 | Mediatek Inc. | Method and apparatus for loop filtering |
US8983218B2 (en) * | 2012-04-11 | 2015-03-17 | Texas Instruments Incorporated | Virtual boundary processing simplification for adaptive loop filtering (ALF) in video coding |
WO2014087861A1 (ja) * | 2012-12-06 | 2014-06-12 | ソニー株式会社 | 画像処理装置、画像処理方法、およびプログラム |
-
2017
- 2017-05-16 US US15/596,752 patent/US10609417B2/en active Active
- 2017-05-22 TW TW106116850A patent/TW201836357A/zh unknown
- 2017-10-31 CN CN201711042449.4A patent/CN108881912B/zh active Active
- 2017-10-31 CN CN202210515624.1A patent/CN114979670A/zh active Pending
-
2020
- 2020-03-11 US US16/815,957 patent/US11051045B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN114979670A (zh) | 2022-08-30 |
CN108881912B (zh) | 2022-06-03 |
US11051045B2 (en) | 2021-06-29 |
US20170339432A1 (en) | 2017-11-23 |
CN108881912A (zh) | 2018-11-23 |
US20200213624A1 (en) | 2020-07-02 |
US10609417B2 (en) | 2020-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11051045B2 (en) | High efficiency adaptive loop filter processing for video coding | |
US11272208B2 (en) | Intra-prediction method using filtering, and apparatus using the method | |
US8218640B2 (en) | Picture decoding using same-picture reference for pixel reconstruction | |
CN100571391C (zh) | 用于视频编解码***中解块滤波的并行处理方法 | |
KR101274112B1 (ko) | 영상 부호화 장치 | |
JP7195348B2 (ja) | ビデオコーディングにおけるフィルタリングのための装置および方法 | |
CN104521234B (zh) | 合并去区块处理和取样自适应偏移处理的视频处理方法和装置 | |
CN111147849A (zh) | 后处理装置和后处理方法 | |
EP1605704A2 (en) | Image interpolation apparatus and methods | |
CN116114246B (zh) | 帧内预测平滑滤波器***及方法 | |
JP2006340211A (ja) | 動き補償予測装置 | |
IL262845B (en) | A new pyramid algorithm for video compression and analysis | |
CN103702132B (zh) | 滤波方法、装置及设备 | |
KR101059649B1 (ko) | 적응적 보간 필터를 이용한 부호화 장치, 그 방법 및 복호화 장치 | |
JP2006340300A (ja) | 信号処理方法及び信号処理装置、並びに信号処理プログラム及び情報記録媒体 | |
JP6065090B2 (ja) | 動画像復号装置、動画像復号方法、動画像復号プログラム | |
JP6317720B2 (ja) | 動画像符号化装置、動画像符号化方法、動画像符号化プログラム | |
US12063367B2 (en) | Tracking sample completion in video coding | |
CN115804095B (zh) | 视频编码中的帧内预测方法 | |
US20240040125A1 (en) | Tracking sample completion in video coding | |
JP6311821B2 (ja) | 動画像処理装置及び動画像処理方法 | |
JP2016054514A (ja) | 動画像符号化装置、動画像符号化方法、動画像符号化プログラム |