TWI834773B - 使用適應性迴路濾波器以編碼和解碼影像之一或多個影像部分的方法、裝置和電腦可讀儲存媒體 - Google Patents

使用適應性迴路濾波器以編碼和解碼影像之一或多個影像部分的方法、裝置和電腦可讀儲存媒體 Download PDF

Info

Publication number
TWI834773B
TWI834773B TW108143684A TW108143684A TWI834773B TW I834773 B TWI834773 B TW I834773B TW 108143684 A TW108143684 A TW 108143684A TW 108143684 A TW108143684 A TW 108143684A TW I834773 B TWI834773 B TW I834773B
Authority
TW
Taiwan
Prior art keywords
filter
clipping
alf
image
sample
Prior art date
Application number
TW108143684A
Other languages
English (en)
Other versions
TW202025740A (zh
Inventor
喬納森 泰格特
克里斯托 吉克
吉羅姆 拉契
派翠斯 昂諾
Original Assignee
日商佳能股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日商佳能股份有限公司 filed Critical 日商佳能股份有限公司
Publication of TW202025740A publication Critical patent/TW202025740A/zh
Application granted granted Critical
Publication of TWI834773B publication Critical patent/TWI834773B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/182Methods 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 a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本發明提供一種控制用於影像之一或多個影像部分之適應性迴路濾波器的方法,該方法包括基於第一樣本值之一或多個相鄰樣本值來控制對影像部分之第一樣本的濾波,其中,該控制使用非線性函數,該非線性函數具有基於該一或多個相鄰樣本值的一或多個變數。

Description

使用適應性迴路濾波器以編碼和解碼影像之一或多個影像部分的方法、裝置和電腦可讀儲存媒體
本發明係關於視訊分量之區塊的編碼或解碼。本發明之實施例特別地(但非排他地)發現當控制用於濾波此分量之樣本之濾波器時的用途。特定言之(但非排他地),控制適應性迴路濾波器。
視訊寫碼包含影像寫碼(影像係相當於視訊之單一圖框)。在視訊寫碼中,某些寫碼工具(諸如轉換係數之量化)或運動補償(其通常利用內插濾波器來執行)通常會引入失真偏差/作用(似乎是系統性或至少在給定內容脈絡中是非隨機的失真)。為了補償這些偏差/假影,且改善(或至少維持良好程度的)寫碼效率,可使用一些特定寫碼工具(稱之為後置濾波器或迴路內濾波器)。此等寫碼工具的一些實 例為解區塊濾波器(DBF)、樣本適應性偏移(SAO)濾波器或適應性迴路濾波器(ALF)。迴路內濾波器可應用在寫碼迴路中,使得其提供用於當前圖框的影像品質提升可實現後面的圖框(其等基於該當前圖框而寫碼)之提升的寫碼效率。例如,DCT係數之量化用於視訊壓縮係有效率的,但其通常會引入在樣本之壓縮區塊之邊界上的區塊假影(偏差)。解區塊濾波器可減少源自於此假影之不當效應。解區塊(使用DBF)在寫碼迴路中之一經解碼圖框(在其用作為用於另一圖框之運動補償之參考圖框之前)相較於在寫碼迴路外解區塊該圖框(例如,在正要顯示其之前)可明顯地增進運動補償之寫碼效率。
本發明特別關於適應性迴路濾波器(ALF),其亦可應用作為迴路內濾波器以減少在解碼圖框/影像中之不當的壓縮假影。ALF已由視訊寫碼專家組/動態圖像專家組(VCEG/MPEG)標準化群組所研究,且正被考慮使用於標準通用視訊寫碼(VVC),例如在第三版VVC測試模型軟體中(VTM-3.0或VVC草本3)。
本發明之實施例的目標係要解決上述編碼或解碼視訊分量之區塊的一或多個問題或缺點。
儘管ALF係有效率的寫碼工具,然而其線性濾波對於改良影像品質而言卻是次佳解決方案。本發明實現利用ALF之非線性濾波來改良效率及/或性能。
依照本發明之態樣,提供一種設備/裝置、方法、程式、電腦可讀儲存媒體及信號,如在隨附發明申請專利範圍中所陳述的。本發明之其他特徵可從隨屬申請專利範圍及說明中獲得瞭解。
依照本發明之第一態樣係提供一種控制用於影像之一或多個影像部分之適應性迴路濾波器的方法,該方法包括基於第一樣本值之一或多個相鄰樣本值來控制對影像部分之第一樣本的濾波,其中,該控制使用非線性函數,該非線性函數具有該一或多個相鄰樣本值作為變數。適當地,該非線性函數之變數包括兩個或更多個相鄰樣本值。適當地,該非線性函數之變數進一步包括第一樣本值及取決於該一或多相鄰樣本值之位置之第一變數。適當地,該第一變數係取決於兩個或更多個相鄰樣本值之位置。適當地,該非線性函數之輸出被用作為用於適應性迴路濾波器之輸入(或輸入參數)。
依照本發明之第二態樣係提供一種控制用於影像之一或多個影像部分之濾波器的方法,該方法包括基於第一樣本值之一或多個相鄰樣本值來控制對影像部分之第一樣本的濾波,其中,該控制使用非線性函數,該非線性函數具有包括該第一樣本值、該一或多個相鄰樣本值及第一變數之複數個變數,該第一變數係取決於該一或多個相鄰樣本值之位置。適當地,該複數個變數包括兩個或更多個相鄰樣本值。適當地,該第一變數係取決於兩個或更多個相鄰樣本值之位置。適當地,該濾波器係適應性迴路濾波器。
依照本發明之第三態樣係提供一種控制用於影像之一或多個影像部分之濾波器的方法,該方法包括基於第一樣本值之一或多個相鄰樣本值來控制對影像部分之第一樣本的濾波,其中,該控制使用一或多個截波函數,該一或多個截波函數具有基於該第一樣本值、該一或多個相鄰樣本值及截波參數的一或多個控制參數。適當地,該一或多個控制參數係基於該第一樣本值、兩個或更多個相鄰樣本值及截波參數。適當地,該濾波器係適應性迴路濾波器。適當地,該一或多個截波函數之各者為以下其中一者:max(-b,min(b,d))、min(b,max(-b,d))、max(c-b,min(c+b,n))或min(c+b,max(c-b,n));且c為該第一樣本值,n為一相鄰樣本值,d=n-c且b為該截波參數。
依照本發明之第四態樣係提供一種控制用於影像之一或多個影像部分之適應性迴路濾波器的方法,該方法包括基於第一樣本值之一或多個相鄰樣本值來控制對影像部分之第一樣本的濾波,其中,該控制使用該第一樣本值及該一或多個相鄰樣本值之非線性組合作為用於該適應性迴路濾波器之輸入參數。適當地,該適應性迴路濾波器係如在VTM3.0中所指定的。
依照本發明之第五態樣係提供一種控制用於影像之一或多個影像部分之適應性迴路濾波器的方法,該方法包括基於第一樣本值之兩個或更多個相鄰樣本值來控制對影像部分之第一樣本的濾波,其中,該控制使用該兩個或更多個相鄰樣本值之非線性組合作為用於該適應性迴路濾波器 之輸入參數。適當地,該適應性迴路濾波器係如在VTM3.0中所指定的。
針對本發明之第四及第五態樣,根據其之一實施例可提供以下特徵。適當地,該非線性組合為一非線性函數之一部分。適當地,該適應性迴路濾波器之該輸入參數進一步包括第一變數,其取決於該一或多個相鄰樣本值之位置。適當地,該第一變數係取決於兩個或更多個相鄰樣本值之位置。適當地,該非線性組合為該第一樣本值、該一個(或兩個或更多個)相鄰樣本值及該第一變數。
依照本發明之第六態樣係提供一種處理影像之一或多個部分的方法,影像部分具有與其相關聯之色度樣本及亮度樣本,其中,該方法包括基於從位元流或該影像部分之第一樣本值及其一或多個相鄰樣本值所獲得之資訊來判定以下至少一者:是否使用或未使用利用依照第一態樣、第二態樣、第三態樣、第四態樣或第五態樣之方法所控制的濾波器;啟用或停用該濾波器之使用;或當對該第一樣本值濾波時與該濾波器一起使用的濾波參數。適當地,可從該位元流獲得之資訊包括旗標或指標。適當地,可從該位元流獲得之資訊包括以下之一或多者:用於識別該濾波器之資訊;用於指示使用或未使用之旗標;用於指示啟用或停用之旗標;有關用於與該濾波器一起使用之第一變數的資訊;或有關用於指定值範圍之截波參數的資訊。適當地,有關該第一變數之資訊係用於指定一值或識別第一函數為該第一變數。適當地,該第一變數係取決於(或可以 改變基於)一或多個相鄰樣本值之位置。適當地,該第一變數係取決於兩個或更多個相鄰樣本值之位置。
依照本發明之第七態樣係提供一種編碼一或多個影像之方法,該方法包括針對影像之一或多部分依照第一態樣、第二態樣、第三態樣、第四態樣或第五態樣來控制濾波器,或者依照第六態樣來處理。適當地,該方法進一步包括:接收影像;編碼該所接收影像且產生位元流;及處理該經編碼影像,其中,該處理包括依照第一態樣、第二態樣、第三態樣、第四態樣或第五態樣之該控制,或者依照第六態樣之該處理。適當地,當依附於第六態樣時,該方法進一步包括提供在該位元流中之該資訊。適當地,該方法進一步包括:從複數個可用函數中選擇該非線性函數或該一或多截波函數;當處理該經編碼影像時使用該所選函數;且在該位元流中提供用於識別該所選函數之資訊。
依照本發明之第八態樣係提供一種解碼一或多個影像之方法,該方法包括針對影像之一或多部分依照第一態樣、第二態樣、第三態樣、第四態樣或第五態樣來控制濾波器,或者依照第六態樣來處理。適當地,該方法進一步包括:接收位元流;從該所接收位元流解碼資訊以獲得影像;及處理該所獲得影像,其中,該處理包括依照第一態樣、第二態樣、第三態樣、第四態樣或第五態樣之該控制,或依照第六態樣之該處理。適當地,當依附於第六態樣時,該方法進一步包括從該位元流獲得該資訊。適當 地,該方法進一步包括:從該位元流獲得用於從複數個可用函數中識別該非線性函數或該一或多個截波函數之資訊;及當處理該所獲得影像時使用該所識別函數。
依照本發明之第九態樣係提供一種用於控制用於影像之一或多部分之濾波器的裝置,該裝置包括經組態以執行依照第一態樣、第二態樣、第三態樣、第四態樣、第五態樣或第六態樣之方法的控制器。
依照本發明之第十態樣係提供一種用於編碼影像之裝置,該裝置包括依照第九態樣之該控制裝置。適當地,該裝置被組態成用以執行依照第七態樣之方法。
依照本發明之第十一態樣係提供一種用於解碼影像之裝置,該裝置包括依照第九態樣之該控制裝置。適當地,該裝置被組態成用以執行依照第八態樣之方法。
依照本發明之第十二態樣係提供一種控制用於影像之一或多個影像部分之適應性迴路濾波器的方法,該方法包括基於第一樣本值之複數個相鄰樣本值來控制對影像部分之第一樣本的濾波,其中,該控制包括使用非線性函數,該非線性函數具有基於該一或多個相鄰樣本值之一或多變數。應理解,相鄰樣本(值)並未侷限於鄰近樣本(值),且亦可包含在該第一樣本(值)周圍或附近的樣本(值)。適當地,該控制包括使用未用於判定或作為非線性函數中之變數的一或多個其他相鄰樣本之一或多個相鄰樣本值作為用於該適應性迴路濾波器之(若干)輸入參數。適當地,其值被使用於判定或作為一或多(或該)非線性函數中之變數的 該相鄰樣本被配置成如下之形狀:具有第一樣本在交點處之交叉狀;或平行四邊形。適當地,其值被使用於判定或作為一或多(或該)非線性函數中之變數的該相鄰樣本被配置成如下之形狀:當8個相鄰樣本值被使用於判定或作為在非線性函數中之變數時,具有第一樣本在交點處之5個樣本高及5個樣本寬之交叉狀,或在長度上每邊各具有3個樣本之中空平行四邊形;或當12個相鄰樣本值被使用於判定或作為在一或多個(或該)非線性函數中之變數時,在長度上每邊各具有3個樣本之平行四邊形。適當地,具有第一樣本在交點處(及/或在中心處)之交叉狀為以下之一者:垂直及水平線之交叉狀「+」;或斜線「X」之交叉狀(斜交叉狀)。適當地,該(中空)平行四邊形為以下之一者:正方形;長方形;或菱形形狀。適當地,該(中空)平行四邊形為圍繞或包圍定位在中心處之第一樣本。替代地,其值被使用於判定或作為一或多(或該)非線性函數中之變數的該相鄰樣本被配置成該第一樣本位在中心處之如下形狀:垂直線「|」;水平線「-」;從左上至右下的對角線/斜線「\」;或從右上至左下的對角線/斜線「/」。替代地,其值被使用於判定或作為一或多(或該)非線性函數中之變數的該相鄰樣本被配置成(中空)多邊形之形狀。適當地,該(中空)多邊形為圍繞或包圍定位在中心處之第一樣本。替代地,其值被使用於判定或作為一或多(或該)非線性函數中之變數的該相鄰樣本被配置成上述形狀之任意組合之形狀。適當地,一濾波器變數於兩個或更多個相鄰樣本之間 被共用。適當地,相鄰樣本之配置形狀具有關於中心的對稱性。適當地,交叉狀形狀、平行四邊形形狀或多邊形形狀具有關於中心的對稱性。替代地,相鄰樣本之配置的形狀未具有關於中心的對稱性。適當地,交叉狀形狀或平行四邊形形狀未具有關於中心的對稱性。適當地,複數個相鄰樣本值之第一樣本及相鄰樣本被配置成如下之形狀:具有第一樣本在交點處之交叉狀;或平行四邊形或中空平行四邊形。適當地,複數個相鄰樣本值之第一樣本及相鄰樣本被配置成平行四邊形形狀具有:當複數個相鄰樣本值由24個相鄰樣本之樣本值組成時,在長度上每邊各4個樣本;或當複數個相鄰樣本值由12個相鄰樣本之樣本值組成時,在長度上每邊各3個樣本。適當地,具有第一樣本在交點處(及/或在中心處)之交叉狀為以下之一者:垂直及水平線之交叉狀「+」;或斜線「X」之交叉狀(斜交叉狀)。適當地,該(中空)平行四邊形為以下之一者:正方形;長方形;或菱形形狀。適當地,該(中空)平行四邊形為圍繞或包圍定位在中心處之第一樣本。替代地,複數個相鄰樣本值之第一樣本及相鄰樣本被配置成具有第一樣本位在中心處之以下的形狀:垂直線「|」;水平線「-」;從左上至右下的對角線/斜線「\」;或從右上至左下的對角線/斜線「/」。替代地,複數個相鄰樣本值之第一樣本及相鄰樣本被配置成(中空)多邊形之形狀。適當地,該(中空)多邊形為圍繞或包圍定位在中心處之第一樣本。替代地,複數個相鄰樣本值之第一樣本及相鄰樣本被配置成上述形狀 之任意組合的形狀。適當地,一濾波器變數於兩個或更多個相鄰樣本之間被共用。適當地,相鄰樣本之配置形狀具有關於中心的對稱性。適當地,交叉狀形狀、平行四邊形形狀或多邊形形狀具有關於中心的對稱性。替代地,相鄰樣本之配置形狀未具有關於中心的對稱性。適當地,交叉狀形狀、平行四邊形形狀或多邊形形狀未具有關於中心的對稱性。適當地,第一樣本及相鄰樣本為亮度分量樣本。替代地,第一樣本及相鄰樣本為色度分量樣本。適當地,該(或一或多個)非線性函數之變數進一步包括第一樣本值,且該(或一或多個)非線性函數被應用於第一樣本值與一或多個相鄰樣本值之各者之間的差異。適當地,該(或該一或多個)非線性函數之變數進一步包括第一樣本值及取決於一或多個相鄰樣本之位置的一或多個濾波器變數,各濾波器變數針對兩個或更多個相鄰樣本係相同的,且該(或該一或多個)非線性函數被應用至第一樣本值與該兩個或更多個相鄰樣本(具有相同濾波器變數)之兩個或更多個相鄰樣本值之各者之間的兩個或更多個差異的總和。適當地,該(或該一或多個)非線性函數之輸出被用作為用於適應性迴路濾波器之輸入(或輸入參數)。適當地,該非線性函數包括一或多個截波函數,且該一或多個截波函數之各者為以下其中一者:max(-b,min(b,d))、min(b,max(-b,d))、max(c-b,min(c+b,n))、min(c+b,max(c-b,n))、max(-b,min(b,d1+d2))、min(b,max(-b,d1+d2))、max(2*c-b,min(2*c+b,n1+n2))或min(2*c+b,max(2*c-b,n1+n2)),其中 c為第一樣本值,n或n1或n2為相鄰樣本值,d=n-c、d1=n1-c、d2=n2-c且b為截波參數。
依照本發明之第十三態樣係提供一種處理影像之一或多個部分的方法,影像部分具有與其相關聯之色度樣本及亮度樣本,其中,該方法包括基於從位元流或該影像部分之第一樣本值及其一或多個相鄰樣本值所獲得之資訊來判定以下至少一者:是否使用或未使用利用第十二態樣之方法所控制的濾波器;啟用或停用該濾波器之使用;或當對該第一樣本值濾波時與該濾波器一起使用的濾波參數或濾波器變數。適當地,從該位元流獲得之資訊包括提供用於亮度或色度分量中之一者的旗標,該旗標針對該分量指示以下至少一者:是否使用或未使用利用第十二態樣之方法所控制的濾波器;或啟用或停用該濾波器之使用。適當地,該旗標被提供在適應參數集中。適當地,從該位元流獲得之資訊包括提供用於一或多個影像部分的旗標,該旗標針對該一或多個影像部分指示以下至少一者:是否使用或未使用利用第十二態樣之方法所控制的濾波器;或啟用或停用該濾波器之使用。適當地,該旗標被提供在適應參數集中。
依照本發明之第十四態樣係提供一種編碼一或多個影像之方法,該方法包括針對影像之一或多部分依照第十二態樣之方法來控制濾波器,或者依照第十三態樣之方法來處理。適當地,該方法進一步包括:接收影像;編碼該所接收影像且產生位元流;及處理該經編碼影像,其中,該 處理包括依照第十二態樣之該方法的控制,或者依照第十三態樣之該方法的處理。適當地,該方法(當依附於第十三態樣時)進一步包括提供在該位元流中之該資訊。適當地,該非線性函數包括一或多個截波函數;該(或一或多個)非線性函數之變數進一步包括取決於其值被用作為在該(或該一或多個)非線性函數中之變數之該一或多個相鄰樣本之位置的一或多個濾波器變數;提供該資訊包括在該位元流中提供一或多個截波參數;且當針對一位置之濾波器變數為零時,用於與該截波函數一起使用之截波參數被應用至在未提供於位元流中之位置處之該相鄰樣本的相鄰樣本值。適當地,該方法進一步包括:從複數個可用函數中選擇該非線性函數或該一或多截波函數;當處理該經編碼影像時使用該所選函數;且在該位元流中提供用於識別該所選函數之資訊。
依照本發明之第十五態樣係提供一種解碼一或多個影像之方法,該方法包括針對影像之一或多部分依照第十二態樣之方法來控制濾波器,或者依照第十三態樣之方法來處理。適當地,該方法進一步包括:接收位元流;從該所接收位元流解碼資訊以獲得影像;及處理該所獲得影像,其中,該處理包括依照第十二態樣之該方法的控制,或者依照第十三態樣之該方法的處理。適當地,該方法(當依附於第十三態樣時)進一步包括從該位元流獲得該資訊。適當地,該非線性函數包括一或多個截波函數;該(或一或多個)非線性函數之變數進一步包括取決於其值被用作 為在該(或該一或多個)非線性函數中之變數之該一或多個相鄰樣本之位置的一或多個濾波器變數;且當針對一位置之濾波器變數為零時,一截波函數未被應用至在在該位置處之該相鄰樣本的相鄰樣本值。適當地,該方法進一步包括:從該位元流獲得用於從複數個可用函數中識別該非線性函數或該一或多個截波函數之資訊;及當處理該所獲得影像時使用該所識別函數。
依照本發明之第十六態樣係提供一種裝置,包括:控制器,經組態以執行第十二態樣或第十三態樣之方法;編碼器,經組態以執行第十四態樣之方法;或解碼器,經組態以執行第十五態樣之方法。
依照本發明之第十七態樣係提供一種用於控制用於影像之一或多部分之濾波器的裝置,該裝置包括經組態以執行第十二態樣或第十三態樣之方法的控制器。
依照本發明之第十八態樣係提供一種用於編碼影像之裝置,該裝置包括第十七態樣之該控制裝置。適當地,該裝置經組態以執行第十四態樣之方法。
依照本發明之第十九態樣係提供一種用於解碼影像之裝置,該裝置包括第十七態樣之該控制裝置。適當地,該裝置經組態以執行第十五態樣之方法。
依照本發明之第二十態樣係提供一種程式,其當在電腦或處理器上運行時致使該電腦或處理器實施依照第一態樣、第二態樣、第三態樣、第四態樣、第五態樣、第六態樣、第七態樣、第八態樣、第十二態樣、第十三態樣、第 十四態樣或第十五態樣之方法。
依照本發明之第二十一態樣係提供一種電腦可讀儲存媒體,其儲存依照第二十態樣之電腦程式。
依照本發明之第二十二態樣係提供一種攜載用於利用依照第七態樣或第十四態樣之方法所編碼且藉由位元流表示之影像的資訊資料集之信號,該影像包括可重建樣本集,各可重建樣本具有樣本值,其中,該資訊資料集包括用於基於第一可重建樣本之相鄰樣本的樣本值來控制對該第一可重建樣本濾波之控制資料。
針對本發明之上述態樣,根據其之一實施例可提供以下特徵。適當地,該非線性函數包括以下一或多者:截波函數、鋸齒核函數、三角核函數或高斯核函數。適當地,該非線性函數包括一或多個截波函數,且該一或多個截波函數之各者為以下其中一者:max(-b,min(b,d))、min(b,max(-b,d))、max(c-b,min(c+b,n))、min(c+b,max(c-b,n))、max(-b,min(b,d1+d2))、min(b,max(-b,d1+d2))、max(2*c-b,min(2*c+b,n1+n2))或min(2*c+b,max(2*c-b,n1+n2)),其中c為第一樣本值,n或n1或n2為相鄰樣本值,d=n-c、d1=n1-c、d2=n2-c且b為截波參數。適當地,該(複數個)變數為該(數學)非線性函數之自變數,且該非線性函數之輸出為其應變數。適當地,相鄰樣本之位置定義為距第一樣本之位置的相對距離或相對位移。適當地,相鄰樣本之位置定義為其在(光柵)掃描順序中之位置(適當地,相對於第一樣本在(光柵)掃描順序中之位置)。適當地,適應性迴路 濾波器使用非線性函數來執行該濾波。適當地,該非線性函數之輸出被用作為用於適應性迴路濾波器之輸入(或輸入參數)。適當地,對一或多個此(若干)輸入(參數)應用該適應性迴路濾波器包括使用具有一或多個輸入(參數)作為其變數的線性函數。適當地,該適應性迴路濾波器係如在VTM3.0中所指定的。
本發明又另一態樣係關於程式,其當在電腦或處理器上執行時,致使該電腦或處理器實施上述態樣之任一項方法。該程式可提供在其自身載體媒體中或由載體媒體所攜載。該載體媒體可為非暫態的,例如儲存媒體,尤其為電腦可讀儲存媒體。該載體媒體亦可為暫態的,例如信號或其他傳輸媒體。信號可經由任何適當網路來傳輸,包含網際網路。
本發明又另一態樣係關於相機,其包括依照任一項上述裝置態樣之裝置。依照本發明又另一態樣係提供行動裝置,其包括依照任一項上述裝置態樣的裝置及/或具體實施上述相機態樣的相機。
在本發明之一態樣中的任何特徵可以任何適當的組合被應用於本發明之其他態樣中。特定言之,方法態樣可適用於設備態樣,且反之亦然。此外,實施於硬體中的特徵可實施於軟體中,且反之亦然。在本文中對於軟體及硬體特徵之任何參考應相應地解釋。如本文中所描述之任何設備特徵亦可提供為方法特徵,且反之亦然。如本文中所使用之手段加功能特徵可替代地以其對應結構來表示,諸如 適當程式化之處理器及相關聯的記憶體。應瞭解在本發明之任何態樣中所描述且定義之各種特徵之特定組合亦可獨立地實施及/或供應及/或使用。
101:影像部分之解碼
102:解區塊濾波器(DBF)
103:樣本適應性偏移(SAO)
104:適應性迴路濾波器(ALF)
105:輸出
106:圖框緩衝器
301:輸入影像部分
302:輸入濾波參數
303:濾波器導出
304:濾波
305:輸出影像部分
306:濾波器形狀
401:輸入影像部分
402:輸入濾波參數
403:內容分析
404:區塊
405:步驟
406:步驟
407:濾波
408:輸出影像部分
409:形狀/圖案
410:形狀/圖案
411:形狀/圖案
412:形狀/圖案
1601:截波圖案
1602:截波圖案
1603:截波圖案
1604:截波圖案
1605:截波圖案
9200:資料通信網路
9201:伺服器
9202:用戶終端
9204:資料流
9300:處理裝置
9302:介面
9303:通信網路
9304:硬碟
9305:磁碟機
9306:磁碟
9307:唯讀記憶體
9308:麥克風
9309:螢幕
9310:鍵盤
9311:中央處理單元
9312:隨機存取記憶體
9313:通信匯流排
9320:數位相機
9400:編碼器
9402:模組
9403:模組
9404:運動估計模組
9405:運動補償模組
9406:選擇模組
9407:轉換模組
9408:量化模組
9409:熵編碼模組
9410:位元流
9411:反量化(“解量化”)模組
9412:反轉換模組
9413:圖框內預測模組
9414:運動補償模組
9415:模組
9416:參考影像
9417:參考影像
9418:運動向量場
9450:網路相機系統
9452:網路相機
9454:用戶設備
9456:成像單元
9458:編碼單元
9460:通信單元
9462:控制單元
9464:通信單元
9466:解碼單元
9468:控制單元
9470:顯示設備
9500:智慧型手機
9502:通信單元
9504:解碼/編碼單元
9506:控制單元
9508:顯示單元
9510:影像記錄裝置
9512:感測器
9560:解碼器
9561:位元流
9562:模組
9563:模組
9564:模組
9565:圖框內預測模組
9566:模組
9567:後濾波模組
9568:參考影像
9569:解碼視訊信號
9570:運動向量解碼模組
9571:運動向量場資料
本發明之實施例現將僅以舉列方式且參考以下圖式來描述,其中:[圖1]展示在VTM-3.0之典型解碼迴路中發生之ALF;[圖2]係流程圖,具有出現於ALF之VTM-3.0中之語法元素的概述;[圖3-a]係流程圖,其中繪示根據本發明之一實施例用於濾波色度分量的步驟;[圖3-b]提供根據本發明之一實施例用於色度濾波器之濾波器形狀及係數配置;[圖4-a]係流程圖,其中繪示根據本發明之一實施例用於濾波亮度分量之步驟;[圖4-b]提供根據本發明之一實施例用於亮度濾波器之濾波器形狀及四個可行的係數配置;[圖5]係流程圖,其具有根據本發明之一實施例之經修改語法元素的概述;[圖6]係在VTM-3.0之ALF中的線性濾波器之方塊圖;[圖7]係根據本發明之一實施例之非線性濾波器的方塊圖;[圖8]係根據本發明之一實施例當圖7中之濾波器之非 線性部分被停用時所獲得之線性濾波器之方塊圖;[圖9]係流程圖,其中繪示根據本發明之一實施例之ALF編碼程序之流程圖;[圖10]係流程圖,其中繪示根據本發明之實施例之編碼方法的步驟;[圖11]係流程圖,其中繪示根據本發明之實施例之解碼方法的步驟;[圖12]係方塊圖,概要地繪示本發明之一或多個實施例可於其中被實施之資料通信系統;[圖13]係方塊圖,其中繪示本發明之一或多個實施例可於其中被實施之處理裝置的組件;[圖14]係示意圖,其中繪示本發明之一或多個實施例可於其中被實施之網路相機系統;[圖15]係示意圖,其中繪示本發明之一或多個實施例可於其中被實施之智慧型手機;[圖16-a]提供依照本發明之實施例之具有減少數量之截波位置的7x7菱形濾波器形狀;及[圖16-b]提供依照本發明之實施例之具有減少數量之截波位置的5x5菱形濾波器形狀。
下文所描述之本發明實施例係關於改良影像之編碼及解碼。
在本說明書中「傳訊」可指稱將有關用於控制濾波器 之一或多個參數的資訊插入(提供/包含/編碼)至位元流中或從該位元流中擷取/獲得(解碼)該資訊,該資訊係例如一模式/方案之使用、廢用、啟用或停用或其他的濾波器控制有關的資訊。
在本說明書中,術語「切片」係用作為影像部分之實例(此影像部分的其他實例可為圖塊或圖塊群組(其為(若干)圖塊之群組/集合))。應可理解本發明之實施例亦可基於影像部分(例如,圖塊或圖塊群組)來取代切片、及經適當修改的參數/值/語法(諸如用於影像部分/圖塊/圖塊群組之標頭(取代切片標頭))、影像部分/圖塊/圖塊群組之類型(取代切片類型)及用於影像部分/圖塊/圖塊群組之統計(取代切片統計)來實施。亦可理解在本發明之實施例中,適應參數集(APS)或圖塊(群組)標頭亦可用以傳訊ALF參數(或用於使用ALF濾波的資訊),以取代切片標頭或序列參數集(SPS)。當使用APS用於傳訊ALF參數(或用於使用ALF濾波的資訊)時,切片標頭或圖塊群組標頭可用以指示要使用哪個APS來獲得該ALF參數(或用於使用ALF濾波之資訊),例如藉由指示適應集識別符(aps_id)。亦可理解切片、圖塊群組、圖塊、寫碼樹單元(CTU)/最大寫碼單元(LCU)寫碼樹區塊(CTB)、寫碼單元(CU)、預測單元(PU)、轉換單元(TU)或像素/樣本之區塊亦可稱之為影像部分。
亦可理解的是:當濾波器或工具被描述為「作用中」時,該濾波器/工具係被「啟用」或「可供使用」或「被 使用」;當描述為「非作用中」時,該濾波器/工具係被「停用」或「無法供使用」或「未被使用」;且「類型」係指稱一或多個元素之群組、分組、類別或分類。此外,亦可理解的是,當旗標被描述為「作用中」時,這表示該旗標指示相關的濾波器/工具係「作用中」。
適應性迴路濾波器(ALF)
圖1展示在VTM-3.0之典型解碼迴路中發生之ALF。在101中,影像部分(例如,切片)在寫碼樹單元之單元中被解碼(CTU:在VVC中之最大寫碼單元,通常為128x128樣本/像素大小)。一CTU被分裂成矩形區塊或寫碼單元(CU),其利用特別的預測方案/模式被編碼,且通常係殘差區塊之破壞性編碼。由於使用基於區塊的編碼,在經編碼區塊之間的邊界可看見區塊假影。在102中,經解碼影像部分接著藉由DBF處理以減少/移除這些假影。通常,為了針對區塊預測編碼殘差(區塊),殘差值利用類似DCT轉換來予以轉換(為了將殘差能量壓縮成幾個係數),且經轉換係數被量化以降低編碼成本。此量化通常在重建區塊中(亦即,儲存在圖框緩衝器106中之參考圖框中的區塊)引入一些漣波(ringing)假影。在103中,DBF之輸出影像部分接著由SAO濾波器處理,其能以低運算成本來降低一些這些假影。在104中,SAO濾波器之輸出影像部分接著由ALF處理。ALF可進一步降低例如類似「漣波」的假影。ALF具有較高階誤差模型化能力,但這需要較高的運算成本。 ALF之輸出影像部分接著發送至一輸出(例如,一顯示器或與該顯示器通信之通信介面)105。亦可放入一圖框緩衝器106(作為儲存在其中之參考圖框的一部分),使得其可用於時間預測(當使用時間預測工具時)。這是為何DBF、SAO濾波器及ALF被稱為「迴路內」濾波器。一編碼器可停用一些迴路內濾波器,使得在解碼時他們可被繞過(亦即,沒有濾波被執行且對應於該經停用工具之步驟的輸出係與其輸入相同)。此外,在一些例子中,該影像部分處理並未侷限於切片,亦可以係含有一或多個切片之完整圖框,具有應用濾波器橫越切片邊界(若存在一個以上)的可行性,以降低在這些邊界上的假影。針對多分量影像(例如,依YCrCb格式的影像),DBF、SAO濾波器或ALF處理被個別地應用至各分量,且也可不同地(例如,使用不同的濾波參數至另一分量)。
圖2提供出現在針對ALF之VTM-3.0中的語法元素之概述。序列參數集(SPS)使用旗標指示是否針對視訊序列(201)ALF工具為作用中(亦即,啟用),且若是,則切片標頭指示若ALF針對切片(202)為作用中且提供濾波器參數(203至207)用於控制ALF。當ALF在202中為作用中時,其至少針對亮度分量為作用中,且切片標頭進一步指示該ALF針對每個色度分量是否為作用中(203)。
該ALF對亮度分量可使用一個以上的濾波器。這便可使用一個以上的濾波器係數表,因為不同的濾波器組態可共用相同的濾波器係數(後文待描述)。在VTM-3.0軟體之 語法元素方案中,這些不同的濾波器組態並非可個別地區分,且具有不同組態的濾波器被視為相同的濾波器。在以下描述中,使用對單一濾波器的相同參考,除非當明確參考不同係數表時。在語法元素方案中該單一濾波器的此共用係減少被分配至濾波器之位元數量的有效方式,這是因為考慮在濾波影像上的統計針對旋轉正交及/或鏡面組態係相同的:亦即,被設計用於一參考樣本組態的一個參考濾波器被指定為對濾波器正交及/或鏡面樣本組態係旋轉及/或成鏡像。切片標頭含有經編碼亮度濾波器(204)之數量(其係一或多個)。
當濾波亮度樣本時,ALF將樣本(依照相鄰樣本的組態)局部地分類(歸類)至二十五個可能類型(類別/分類/群組)中之一者,以選擇濾波器(其與特定類型/類別/分類群組相關聯/指定)來局部地應用至這些樣本。在此,使用術語「局部地」分類及「局部地」應用係因為樣本係在區塊之單元(例如在VTM-3.0中通常係4x4個樣本)或在CU中被處理。所選擇/選定的亮度濾波器接著傳訊於位元流中,例如,利用用於識別該所選擇的亮度濾波器之指標/資訊。當在編碼程序期間使用之亮度濾波器的數量係大於一個,則切片標頭亦含有一或多個指標用於識別/選擇這些亮度濾波器(例如,用於高達二十五個濾波器用於二十五個類型的指標,每個指標對應於被用於這些類型中之一者的亮度濾波器)(205)。在該編碼程序中使用之亮度濾波器的數量為一個的例子中,此單一亮度濾波器被應用至所有 的類型。
接著,切片標頭包含用於亮度濾波器(206)之各者的所有濾波器係數(或濾波器參數)(亦即,在編碼程序期間用於每個亮度濾波器之係數表)且接著係用於色度濾波器(207)之濾波器係數。應注意在VTM-3.0中,當ALF針對兩色度分量係作用中時,該兩色度分量共用相同的色度濾波器。
當ALF係作用中時,針對ALF對其為作用中之分量的各者,該濾波能以逐CTU的基礎被啟用。在編碼位元流中,針對每個CTU,編碼切片資料針對每個ALF對其作用中的分量係包含一個熵寫碼旗標,以指示是否ALF對CTU(208、209及210)之分量為啟用,且若是,則該CTU之該分量的樣本是否已使用ALF濾波。此旗標係使用全文適應性二進制算術寫碼(CABAC)來編碼。
在VTM-3.0中,用於亮度濾波器206之係數的傳訊係執行如下:
[1]首先傳訊’alf coefficients delta flag’,該旗標指示是否某些濾波器可被停用,且若‘alf coefficients delta flag’為零且若亮度濾波器之數目大於1,則傳訊‘coeff delta pred mode flag’,以指示濾波器係數編碼將使用預測(稍後更詳細說明)。
[2]在VTM-3.0中,為了使用(指數)哥侖布((exp-)Golomb)碼來編碼亮度係數,吾人使用3個(2個用於色度)(指數)哥侖布組態。(指數)哥侖布編碼之唯一參數為 (指數)哥侖布階(通常標示為‘k’)。每個組態具有一(指數)哥侖布指標。用於濾波器係數之(指數)哥侖布編碼的參數針對(指數)哥侖布碼之最小階(‘minimum order’)係使用可變長度碼(VLC)傳訊,然後針對每個(指數)哥侖布指標,若針對該指標及後面的指標該(指數)哥侖布階必須增加(針對該第一指標從「最小階」開始),則傳訊一旗標。
[3]接著,若‘alf coefficients delta flag’指示一些濾波器被啟用,針對每一濾波器傳訊一旗標,其指示該濾波器被停用(且所以,未被寫碼)與否。
[4]接著,濾波器係數針對每一(未停用)濾波器利用(指數)哥侖布碼(針對有號整數)而傳訊,該(指數)哥侖布碼具有與從儲存(指數)哥侖布參數之表相關聯的濾波器係數指標(在固定表中)之(指數)哥侖布指標而得的(指數)哥侖布階。
在‘coeff delta pred mode flag’被傳訊的情況中,其指示濾波器係數編碼使用預測。這表示具有濾波器指標(亦即,識別各濾波器之指標)大於或等於1之‘當前’濾波器的濾波器係數被編碼為該‘當前’濾波器之濾波器係數與先前處理之濾波器之濾波器係數之間的差異(例如,使用先前處理之濾波器的濾波器係數作為濾波器係數預測因子來編碼為濾波器係數殘差值-亦即,使用預測)。該第一濾波器(具有濾波器指標為零)被編碼而不用預測。
色度濾波器207之係數的傳訊類似於針對亮度濾波器來執行,除了沒有‘alf coefficients delta flag’、沒有‘coeff delta pred mode flag’且有兩個(指數)哥侖布指標來取代3個。
圖3-a係流程圖,其中繪示用於根據本發明之一實施例來濾波色度分量的步驟,且圖3-b提供根據本發明之一實施例之用於色度濾波器的濾波器形狀及係數配置。
在圖3-a中,ALF濾波在亮度與色度分量之間被不同地應用。從簡單的例子開始,圖3-a提供用於濾波色度分量之主要步驟。輸入影像部分301(例如,圖塊或圖塊群組)包含所要濾波的色度樣本。輸入濾波參數302包含參考圖2中之ALF語法元素所描述的ALF參數(例如,’alf coefficients delta flag’、‘coeff delta pred mode flag’、濾波器係數或用於ALF之任何其他的旗標或濾波器參數)。使用針對色度濾波器之經編碼濾波器係數,該色度濾波器在303中被導出/獲得。
在一變體中,色度濾波器具有大小為5x5之菱形形狀/圖案/遮罩/支持件,亦即,5個樣本高及5個樣本寬(見圖3-b中的306)。該色度濾波器之濾波器係數被組織成使得該色度濾波器具有關於中心的對稱性。針對此一色度濾波器具有6個經編碼濾波器係數,且指標編號從0至5,其定位在圖式所示之對應係數位置。針對該指標編號提供有上標(“+”或“-“),使得在共用相同濾波器係數之不同係數位置之間可供區別,亦即,當指稱兩個對稱(在共用相同濾波器係數的意義上)相鄰者時:i +對應於具有指標i之相鄰樣本,其係在該樣本依(光柵)掃描順序被濾波之後被編碼/解 碼/處理/儲存/存取(亦即,在該濾波器形狀/圖案/遮罩/支持件的中心處);而i -對應於具有指標i之相鄰樣本,其係在該樣本依(光柵)掃描順序被濾波之前被編碼/解碼/處理/儲存/存取。針對色度濾波器形狀之中心的第7係數(具有指標編號6之係數位置)係從其他濾波器係數推導/導出。在係數位置6中之此第7係數之值等於1-2.Σ i<6 w i ,用固定點運算所評估(w i =針對指標i之濾波器係數)。意即,1減2倍(因為對稱性)的針對係數位置0至5的所有濾波器係數之總和。因此,該菱形形狀之所有係數(包含第7係數)的總和係1,於其上應用左邊7位元移位(1<<7),其中7係針對固定點運算之該經編碼濾波器係數之位元精度減1。這是為何「濾波器係數之總數減1」的僅一半係有在該位元流中被編碼的濾波器係數之數目。
針對於其上ALF為作用中(亦即,被應用)的每個色度分量樣本,執行如下步驟304中的濾波以獲得輸出影像部分305:針對該輸入影像部分之每個當前樣本,若當前樣本屬於其中ALF被啟用之CTU且若用來獲得針對在該色度濾波器之菱形形狀中的係數位置的濾波器係數(且該當前樣本被定位在該菱形形狀之中心處)所需要之當前樣本之相鄰樣本係可得的(例如使用在圖像之邊界上的邊界延伸,或使用相鄰切片樣本(若它們在切片之邊界上可得到));則,在位置(x,y)處與當前樣本I(x,y)的相同位置處的輸出濾波樣本等於:O(x,y)=((1≪(N-1))+Σ(i,j) w(i,j).I(x+i,y+j))≫N, (1)
其中i&j係相對於濾波器形狀之中心的兩個整數偏移(水平及垂直)(亦即,在(x,y)處之當前樣本的位置處),w(i,j)係在偏移(i,j)處的濾波器係數,N=7係使用在偏移(i,j)處之該濾波器係數w(i,j)之表示中用於實數之小數部分的整數近似(固定點表示)的位元數目,I(x+i,y+j)係在相對於當前樣本位置(x,y)的偏移(i,j)處之輸入樣本值,O(x,y)係針對位置(x,y)之輸出經濾波樣本值。a<<N滿足對整數值a應用位元向左移位N位元的位元移位。這相當於執行2的N次方的整數乘法。aN滿足對整數值a應用向右移位N位元的位元移位。在此,因為在方程式(1)之括號內的總和之結果在大部分情況下係正值,因此這相當於執行2的N次方的整數除法。針對負數,當向右移位時該正負號會傳播,所以負數將會停留在負(至少-1)。不存在非整數部分,因為ALF之輸出大致上在零與2的位元深度次方減1之間被截波。N=7提供在針對ALF運算之VVC中固定的小數精度,但在其他實施例中將使用其他值。在執行向右移位≫N之前增加(1≪(N-1))的效果係純量積之固定點的捨入。
否則,在如其所在的相同位置處輸出當前樣本值(亦即,未應用此ALF)。
依照此實施例之變體,為了降低在實施濾波器的同時執行乘法操作的次數,且為了簡化標記,針對具有關於中心成對稱之濾波器形狀的ALF濾波器,方程式(1)可重新制定如下:
Figure 108143684-A0305-02-0028-1
其中O n 係在光柵掃描順序指標/位置n處的輸出樣本。就光柵掃描順序指標n而言,吾人表示指標n係在一列樣本中從左至右增加且然後隨每列樣本從上至下增加的樣本指 標。
Figure 108143684-A0305-02-0029-11
係在與輸出樣本一樣的相同位置n處的輸入樣本(且 對應於在濾波器之中心處的輸入樣本之位置),
Figure 108143684-A0305-02-0029-2
係在濾 波器之濾波器形狀/圖案/遮罩/支持件中之
Figure 108143684-A0305-02-0029-15
之第i個相鄰輸 入樣本(在光柵掃描順序中),且光柵掃描順序低於n,且
Figure 108143684-A0305-02-0029-3
係在關於
Figure 108143684-A0305-02-0029-12
之中心位置成
Figure 108143684-A0305-02-0029-6
之鏡像空間位置處的相鄰輸入 樣本。所以,形狀關於中心成對稱的意思是當
Figure 108143684-A0305-02-0029-4
位在濾波 器之形狀/圖案/遮罩/支持件中時,
Figure 108143684-A0305-02-0029-5
亦在該濾波器之相同 濾波器形狀/圖案/遮罩/支持件中。w i 係與相鄰輸入樣本
Figure 108143684-A0305-02-0029-7
Figure 108143684-A0305-02-0029-13
相關聯之濾波器係數,w c 係針對中心輸入樣本
Figure 108143684-A0305-02-0029-8
之濾 波器係數,且c係經編碼濾波器係數之數目(其係與針對中心濾波器係數(其未被編碼,因為其可由其相鄰的濾波器 係數評估)之指標值相同。i值與相關聯位置
Figure 108143684-A0305-02-0029-10
Figure 108143684-A0305-02-0029-9
對應於 在圖3-b之濾波器形狀306中的指標值及具有上標(「+」或「-」)之指標值,例如針對在濾波器形狀之中心處之該濾波器係數之指標ci=c=“6”。
圖4-a係流程圖,其中繪示根據本發明之一實施例用於濾波亮度分量之步驟,且圖4-b提供根據本發明之一實施例之濾波器形狀及用於該亮度濾波器之四個可能的係數配置。
圖4-a繪示針對亮度分量之濾波程序的主要步驟。該輸入影像部分401包含欲被濾波之亮度樣本。輸入濾波參 數402包含參考圖2中之ALF語法元素所描述的ALF參數(例如,(’alf coefficients delta flag’、‘coeff delta pred mode flag’、濾波器係數或用於ALF之任何其他旗標或濾波器參數)。在濾波之前,影像部分之內容在403中被分析。此分析之主要目標係要允許/實現局部內容定向及活動程度的判定(見步驟405)。這允許/實現局部估計/評估該內容是否為均質的或具任何急遽變異(大概是內容的強度或對比),且該內容是否具有主要定向(例如,基於邊緣或定向紋理),以及哪個定向是該主要定向。例如,在VTM-3.0中,該分析包括採用拉普拉斯(Laplacian)值針對的4個定向(水平、垂直及兩個斜向)每兩個樣本水平地及垂直地(亦即,樣本之四分之一)運算的局部梯度分析。藉由將輸入影像部分之樣本分割成區塊404(例如,在VTM-3.0中的4x4樣本),且使用在步驟405中的分析結果,將每個區塊分類成25個可能類型中之一者,各類型可使用依照針對在該區塊中之樣本運算之拉普拉斯值的指標來識別(亦即,該區塊被歸類至25個類別/分類/群組中之一個)。例如,在VTM-3.0中,其對應於使用16個拉普拉斯值(在4樣本上的4個定向)。該分類達成活動、方向性之強度及將水平與垂直定向與斜向定向解構的劃分。此外,在步驟405中,各區塊係與一轉置指標相關聯。此轉置指標(例如,‘transposeIdx’)可被視為用於該分類之補充/額外資訊以完整表示/指示該內容的定向。存在4個可能的轉置指標。當區塊之類型指示該區塊為水平或垂直時,該轉置指標進一 步指示該定向是否為北至南、東至西、西至東或南至北。當該區塊之類型指示該區塊為斜向時,該轉置指標進一步指示該定向是否為西北至東南、東北至西南、西南至東北或東南至西北。
該類型指標及轉置指標可被視為用於樣本之一給定區塊的適應性迴路濾波器參數。步驟406採用這些參數以導出亮度濾波器,其將被用於濾波該區塊之各個樣本。如先前參考圖2所描述的,在402中,各類型係與亮度濾波器之係數表的指標相關聯。為了針對4x4區塊導出亮度濾波器,該轉置指標允許/實現選擇在圖4-b中所示之四個形狀/圖案409、410、411或412中之一者。該圖案指示如何組織經編碼濾波器係數(例如,基於掃描(中)順序),其係與如針對204至206之描述中所闡述之區塊的類型相關聯,以建立該亮度濾波器。該亮度濾波器具有大小為7x7之菱形形狀。針對每個亮度濾波器具有12個經編碼濾波器係數(指標編號0至11)。針對濾波器形狀之中心的第13個係數(指標編號為12)能以相同於上文描述之色度濾波器之中心係數的相同方式從其他的濾波器係數推導/導出。
在步驟407中以相同於藉由色度濾波器如何執行的相同方式執行用以獲得輸出影像部分408之濾波,亦即針對樣本之每個當前區塊,針對該當前區塊在406中所導出/獲得之亮度濾波器被應用在該當前區塊之每個當前樣本上。
當濾波亮度樣本時,由於基於分類(類型)及關聯的轉置(transposeIdx)之定向,針對每個類型之最佳ALF濾波器 (亦即,「基於定向的濾波器」,其係依照局部定向(例如基於局部梯度)所選擇),特別係具有高活動性(例如,高局部梯度)的那些濾波器,係傾向為定向濾波器。針對具有最低活動性之區域,亦即,具有屬於其中局部梯度為較低的(若干)類型之區塊的區域,此一定向將較不明顯且用於此一區塊之基於定向的濾波器傾向於非定向的濾波器。
基於定向的濾波器較適於濾波邊緣附近而不會過分影響邊緣的銳度。如下文所描述,類型可被群集在一起以降低濾波器之傳訊成本。即使具有類型之此一群集,濾波器最佳化將大致上導致獲得經定向濾波器。具有此基於定向之(ALF)濾波器,當局部梯度係沿著水平方向,該濾波器定向係大體上垂直(亦即,最高係數(以絕對值)將大致位在中心的上方及下方位置處,而在中心之左邊及右邊上的係數將大致較接近於零)。類似地,當局部梯度沿著垂直方向時,該濾波器定向大致上為水平,且當局部梯度沿著斜向方向時,該濾波器定向大致上沿著垂直於該局部梯度之斜向方向的方向。
當在VTM-3.0中濾波色度樣本時,不同於亮度樣本濾波,因為未使用分類(且因為色度通常較平滑),所使用的濾波器對所有的定向大體上更具回應性且非為一定向濾波器(或非為基於定向的濾波器)。
在圖3-b及圖4-b中,濾波器形狀係關於中心像素成對稱。在VTM軟體中之ALF設計中選擇此對稱性,但在實施例之一變體中,亦可使用非對稱形狀。接著,取代針對13 個輸入樣本共用7個係數,可針對如圖3-b中之相同濾波器支持件/遮罩來使用高達13個係數。且取代針對25個輸入樣本共用13個係數,可針對如圖4-b中之相同濾波器支持件/遮罩來使用高達25個係數。在其他變體中,甚至該濾波器支持件/遮罩為非對稱的。在變體中,濾波器之形狀/圖案/支持件/遮罩係用ALF參數來傳輸。
在其他變體中,濾波器形狀/圖案/支持件/遮罩係不同於菱形形狀。例如,在一變體中其為正方形,在另一變體中其為矩形,在又另一變體中其為六邊形,且在另一變體中其為八邊形。
在一些變體中,該濾波器形狀/圖案/支持件/遮罩針對所有類型定向並非為相同的。在一變體中,針對水平類型/transposeIdx定向組態該形狀為水平矩形(例如,「-」),針對垂直類型/transposeIdx定向組態該形狀為垂直矩形(例如,「|」),針對NW-SE及SE-NW類型/transposeIdx定向組態該形狀為西北東南(NW-SE,例如「\」)矩形,針對NE-SW及SW-NE類型/transposeIdx定向組態該形狀為東北西南(NE-SW,例如「/」)矩形。在其他變體中,濾波器形狀/圖案/支持件/遮罩係水平-垂直交叉狀(「+」)、斜向交叉狀(「X」)、垂直分段(「|」)、水平分段(「-」)、從左上至右下的斜向分段(「\」)、從右上至左下的斜向分段(「/」)或上述濾波器形狀/圖案/支持件/遮罩的任何組合。
圖6提供在ALF中之線性濾波器的方塊圖。其對應於ALF之實例實施方案(其濾波在功能上對應於方程式(1)), 且‘C’ 601對應於I(x,y),其為當前樣本之樣本值,‘S0’ 602至‘Sn’ 603對應於針對每個(i,j)≠(0,0)之I(x+i,y+j),其為相鄰樣本值,‘wC’ 604對應於w(0,0),其為當前樣本之濾波器係數,‘w0’ 605至‘wn’ 606對應於針對每個(i,j)≠(0,0)之w(i,j),其為針對在位置(x+i,y+j)處之相鄰樣本的濾波器係數,及‘O’ 607對應於O(x,y),其為ALF濾波器之輸出,亦即,該當前樣本之濾波樣本值。該程序利用(作為輸入)整數輸入樣本值之表(亦即,‘C’及‘S0’至‘Sn’),及輸入加權之表,亦即,‘wC’及‘w0’至‘wn’(或濾波器係數-應注意此表具有與整數輸入樣本值之表相同數量的元素),其係以具有固定點精度之實數的整數表示。該兩表具有相同的元素數量且係元素乘以元素,且這些乘法的結果被加總在一起(亦即,獲得這兩個表之元素的線性組合)。此操作之結果係一實數的固定點精度近似。此固定點值被捨入成整數值,其結果係一個輸出樣本值‘O’。
從編碼器之觀點而言,該ALF係由維納濾波器(Wiener Filters)所啟發。維納濾波器係線性濾波器(通常在信號/影像處理中被應用為線性卷積濾波器),其將以下兩者之間的均方差減至最小:1)一經估計隨機程序/變數(其輸出),其係所觀察程序/變數(其輸入)之有限數的線性組合,及2)一所要的程序/變數(其目標,亦即,在已發生假影之前的原始影像)。在信號/影像處理中,舉例來說,一有限脈衝回應(FIR)維納濾波器在來源分離或在去除雜訊中具有應用。在影像寫碼的情況中,該目標係原始影像(在被壓縮/ 量化改變之前)同時該輸入係來自吾人想要藉由應用濾波器對其改善之壓縮影像的樣本。
針對X(其係所觀察隨機程序之實現值的輸入矩陣,各行包含針對各自隨機程序之一個實現值)及y(其係一輸出列向量,其包含針對在相同行指標處之所觀察隨機程序之該所要程序的實現值)的最小平方解為
Figure 108143684-A0305-02-0035-16
該維納濾波器係數對應於
Figure 108143684-A0305-02-0035-46
應理解的是,「實現值」係隨機變數的一個觀察或所觀察到的值,亦即,在實務上實際觀察到的值。
在VTM-3.0 ALF編碼器中,FIR維納濾波器(或功能上相當的最小平方解)係用以最佳化該ALF參數之寫碼成本(其主要由用於編碼FIR濾波器係數之成本所支配)與藉由使用該經編碼ALF參數(亦即,使用該FIR濾波器)濾波一圖像所獲得的失真增益之間的速率/失真(R/D)折衷。若不考慮編碼ALF參數之速率(亦即,寫碼成本),且若最大化一給定圖框之峰值訊雜比(PSNR)係唯一目標(不考慮時間影響),則維納濾波器將可實現達成在VTM-3.0中之ALF濾波設計的最佳解。所以根據本發明之一實施例之ALF編碼器可使用相同或類似濾波器作為與其一起提供的線性ALF濾波器。
圖9展示一流程圖,其中繪示根據本發明之一實施例之ALF編碼程序,該實施例藉由修改參考圖6描述之VTM-3.0之ALF來實施。應理解依照本發明之其他實施例,另一 ALF能以相同方式來修改以實施該等其他實施例。
ALF編碼程序係由判定亮度樣本901之各4x4區塊之類型指標及轉置指標來開始。
接著將用於導出維納濾波器之統計在902處擷取/獲得。這些統計係(自)協方差統計,其對應於在方程式(3)中之XX T ,及互協方差統計,其對應於在方程式(3)中之Xy T 。它們係用於建立/獲得/估計(自)協方差矩陣及互協方差矩陣,藉由分別將XX T Xy T 除以N(在X中之行數,亦即,至濾波器的樣本數目)。這些(自)協方差矩陣及互協方差矩陣係針對各類型及針對亮度分量樣本之各CTU且針對各色度分量樣本902之各CTU來建立/獲得/估計。在以下描述中,術語‘(互)協方差矩陣統計’及‘(互)協方差矩陣’係可互換地用以指稱相同的事物。應理解在此兩者之間的差異在於該‘(互)協方差矩陣統計’係藉由累加(或加總)值獲得,而‘(互)協方差矩陣’亦藉由累加(或加總)值但接著由累加數目(以估計一期望值)予以歸一化而獲得。
針對一給定CTU/類型/分量,X以如下方式獲得。當濾波器之形狀被視為對稱時,在X中之列數對應於濾波器之濾波器係數的數目。X之(最後)一列包含濾波器形狀中之中心樣本之實現值(其中該濾波器形狀之中心屬於該給定CTU/類型/分量),而具有指標i之另一列包含濾波器形狀中具有指標i之兩個對稱樣本的總和(其中該對稱樣本係濾波器形狀之中心的相鄰者,其屬於該給定CTU/類型/分量)。在亮度分量樣本的例子中,亦使用轉置指標以依照 圖4-b之不同形狀來轉置濾波器形狀之樣本位置,使得X之各列i包含針對屬於具有指標i之濾波器之形狀的樣本之樣本統計。例如,針對圖4-b之形狀,X i,j 包含:針對i<12,在該形狀中之具有指標i之兩個之對稱相鄰者(第j個濾波樣本)的總和,且針對i=12,該第j個濾波樣本;其中X i,j 係在矩陣X中於列i及行j處的值。
向量y包含所有目標樣本值(亦即,y j 係在來源/原始影像在其壓縮之前的第j個樣本之值)。
X矩陣並未實際建立/運算。而是藉由反覆地加總X i
Figure 108143684-A0305-02-0037-47
之結果來運算XX T ,其中X i 係針對一給定樣本位置獲得之X的第i行。
y向量亦未實際地建立/運算。而是藉由反覆地加總X i y i 之結果來運算Xy T ,其中y i y之第i個元素且對應於當使用經輸入之X i 來濾波該第i個輸入樣本時之目標樣本值。
在VTM-3.0中,ALF編碼器嘗試降低R/D成本,針對速率-失真折衷之拉格朗日(Lagrangian)最佳化其係等於DR。在此,D係失真(二次誤差),R係速率,且λ係由基本上基於VTM-3.0編碼器量化參數(QP)之編碼器所判定,對切片型(框內或框間),且對壓縮分量(亮度或色度)之類型。該ALF編碼器首先嘗試藉由最小化此拉格朗日R/D成本來最佳化ALF參數。
若ALF降低亮度分量之成本,亦即,當ALF未作用中時之輸出切片的失真大於當ALF作用中時之失真加上λ乘以用以傳訊該ALF參數所需要之速率,則編碼器判定該 ALF針對亮度分量為作用中。接著,若針對亮度分量為作用中,則嘗試最佳化色度分量之ALF參數以查看其是否改善傳訊這些色度分量之R/D成本。基於此,編碼器可判定是否其有較佳地達成/實現針對這些分量之各者的ALF。
依照本發明之一實施例,ALF編碼器針對其ALF參數執行相同或功能上相當的最佳化程序。依照此一實施例之一變體,在ALF參數最佳化程序之開始處,該ALF被設定為針對所有CTU 903為作用中。在用於建立協方差矩陣及互協方差矩陣之切片級處的統計可藉由匯總針對其中ALF為作用中/啟用之各CTU的統計來獲得。利用針對被分類為屬於該類型之4x4樣本區塊之所有樣本所獲得的統計針對該亮度分量904之各類型來運算一矩陣;且藉由匯總(加總)色度912之兩個色度分量之統計來運算一矩陣。
針對亮度之濾波器最佳化程序係藉由尋找用於將類型組合/合併在一起之濾波器的25個群組,即,25個濾波器之第一群組、24個濾波器之第二群組等等向下至1個濾波器的最後群組(針對每個可能數量之濾波器的一個群組)開始905。該編碼器係由針對各類型之一個濾波器開始(所以總數為25個濾波器),其係從在該類型中之區塊的樣本之協方差及互協方差所運算的維納濾波器。這是25個濾波器的第一群組。其嘗試藉由將濾波器合併在一起來反覆地降低濾波器之數目(逐一地,且直到僅餘留1個,以獲得所有想要的群組),亦即,更精確地將濾波器之關聯類型合併在一起。該編碼器致使該等類型一開始與兩個不同濾波器 相關聯以共用一共同濾波器(亦即,編碼器將兩個類型合併在一起以共用一個關聯的濾波器)。為了判定哪個濾波器要合併(亦即,哪個類型要合併),針對每個濾波器判定協方差及互協方差統計。該編碼器針對與一或多個類型相關聯之每個濾波估計/評估在使用濾波器對所有與該(等)類型(指標)相關聯之樣本的區塊執行濾波之後所獲得的總殘差誤差。接著,針對每對濾波器(及其關聯的類型),該編碼器運算合併的協方差及互協方差統計以針對該合併的類型來判定維納濾波器及在利用該經判定的維納濾波器來濾波與該類型指標相關聯之樣本的所有區塊之後所獲得的總殘差誤差。接著該編碼器判定兩個濾波器針對它們在合併濾波器之總殘差誤差(從與該(等)類型相關聯之統計導出,該(等)類型係與該兩濾波器相關聯)與這兩個濾波器之總殘差誤差之總和(藉由將一個濾波器之總殘差誤差加上另一個濾波器之總殘差誤差)之間的差異係最小的,且將這兩個濾波器合併(使得此經合併的濾波器可準備好用於下一個濾波器合併反覆)。簡言之,該編碼器合併(a,b),一些不 同的濾波器統計,其最小化:
Figure 108143684-A0305-02-0039-18
,其中,Err(x)回傳該濾波器統計x之誤差,且a+b係該兩個濾波器統計ab之合併統計。
至此,統計、濾波器及誤差係利用雙精度浮動點值估計。此時編碼器嘗試找出用於編碼亮度濾波器906之最佳R/D成本折衷。一旦25個濾波器群組/類型被判定(從25個濾波器開始到1個濾波器),針對各群組該ALF編碼器針對 每個濾波器導出整數濾波器係數(用於整數值編碼及固定點精度運算)。然後當使用不同替代寫碼方案時其針對R/D成本折衷搜尋最佳濾波器。第一替代例係使用(指數)哥侖布針對所有濾波器來編碼所有的係數。第二替代例係使用該濾波器之差量(delta)編碼,其中各濾波器之濾波器係數被編碼為與先前濾波器之濾波器係數的差異(使用(指數)哥侖布編碼)。第三替代例(R/D最佳化)允許停用具有一個旗標的一些濾波器且編碼未停用之濾波器的所有濾波器係數(使用(指數)哥侖布編碼)。前兩個替代例可導致位元率的降低而第三替代例可針對較小位元率導致更多失真。
該編碼器利用/選擇/選用濾波器群組及編碼折衷,其最小化R/D成本。
一旦由編碼器判定/選擇所使用之亮度濾波器,針對每個CTU,該編碼器使用CTU統計來查看濾波該CTU之亮度樣本的R/D成本是否比未濾波同一個CTU之亮度樣本的R/D成本還要好。若沒有較好,則針對該CTU之亮度樣本停用ALF 907。該編碼器可在908處返回至用於亮度之亮度濾波器最佳化步驟且同時更新在該CTU(其之ALF被啟用)之協方差及互協方差統計上的切片統計904。例如,在VTM-3.0中,該編碼器返回4次以上。
取決於對亮度分量樣本應用或未應用ALF之間的R/D成本差異,該編碼器在909處判定針對亮度分量該ALF是否應作用中/啟用。
若該ALF針對亮度分量為作用中/啟用,則編碼器前進 至910處理色度分量。若ALF針對亮度分量為非作用中/停用,則ALF在911處被傳訊為非作用中/停用且該ALF編碼程序結束。
用於色度分量之ALF編碼程序由組合兩個色度分量之統計912開始,其條件為針對該切片之所有CTU該ALF為作用中/啟用。
該編碼器接著判定色度濾波器913。該編碼器首先利用兩個色度分量之CTU統計來判定(浮動點)維納濾波器。其導出整數濾波器係數。接著針對各色度分量,該編碼器使用CTU統計來查看是否濾波該CTU之色度分量的R/D成本比未濾波該CTU之色度分量的R/D成本還更好。若沒有更好,則針對該CTU之色度分量樣本停用該ALF 914。若編碼器判定針對一給定色度分量之所有CTU該ALF應該不在作用中(亦即,應被停用),則停用在該色度分量上的ALF,且不需要針對各CTU(其’啟用旗標’為0)來寫碼915。
該編碼器接著在916處返回至色度濾波器最佳化步驟且同時更新在該CTU(其ALF被啟用)之色度分量的協方差及互協方差統計上的切片統計。例如,在VTM-3.0中,該編碼器返回2次以上。
該編碼器接著在917處利用經判定的ALF參數(亦即,使用從步驟913判定的色度濾波器)應用根據本發明之一實施例的ALF。取決於編碼器組態,所得影像可被輸出及/或放置在參考圖框緩衝器中。該編碼器最後編碼最佳R/D成本參數,即ALF啟用旗標,且若ALF啟用旗標指示作用中/ 啟用,該判定的ALF參數918。
應理解依照變體,可執行用於其他ALF參數的最佳化程序以最佳化該ALF的那些參數。
具有非線性濾波能力之ALF
在步驟304及407中使用之線性濾波可依照本發明之實施例來修改,其導入非線性且改良濾波結果(獲得濾波品質與寫碼效率之間的較佳折衷)。ALF濾波之目標係要移除由寫碼工具所引入之「雜訊」(例如,量化雜訊/誤差)。為了移除此雜訊,通常使用低通線性濾波器來平滑化信號且降低小的局部變異。此種濾波器可在濾波輸出中引入模糊,尤其在例如靠近邊緣之對比較強的區域中。非線性濾波器,例如雙邊濾波器,已被發展來更有效去除雜訊,且引入較少的模糊或漣波效應,甚至在邊緣附近。為此,這些非線性濾波器通常憑藉基於其局部相鄰者(亦即,相鄰樣本)來濾波樣本,如線性濾波器,但對於對所要濾波之樣本具有類似值之樣本比具有極不同值之樣本要付出更多的關注(或權重)。相鄰值之權重通常利用非線性函數(亦即,非線性映射)來執行。此種非線性濾波器通常比線性濾波器更複雜,且難以最佳化其參數,及/或若吾人在新的ALF設計中想要使用此種濾波器,它們係比線性濾波器更不具靈活性。
依照本發明之一實施例,VTM-3.0之ALF(或上述任一實施例或其變體)可藉由導入非線性度來予以修改,具有 涉及操作之較低複雜度而保有該ALF之可平行化設計。
考慮VTM-3.0中之ALF,藉由使用實數來重新制定方程式(1)以簡化該方程式,吾人具有(移除與固定點表示及整數捨入相關的操作):O(x,y)=Σ(i,j) w(i,j).I(x+i,y+j). (4)
針對此ALF,可滿足以下條件Σ(i,j) w(i,j)=1 (5)
這表示該ALF之所有濾波器係數的總和為1。接著可看到方程式(4)被重新制定為:O(x,y)=I(x,y)+Σ(i,j)≠(0,0) w(i,j).(I(x+i,y+j)-I(x,y)), (6)
該輸出樣本O(x,y)接著為添加輸入樣本I(x,y)(在相同位置處)至濾波器係數向量與局部梯度向量(局部梯度被運算為輸入樣本之相鄰樣本與該輸入樣本本身之間的差異之向量)之間的純量積之結果。換言之,該輸出樣本(亦即,經濾波樣本值)係將該輸入樣本添加至濾波器係數及局部梯度之線性組合的結果。
取代使用該濾波器之此通常線性公式,根據本發明之一實施例,該ALF濾波程序經修改以在ALF濾波器中引入非線性。此非線性利用多變量函數K(d,b)來達成,其採用在偏移(i,j)處之局部梯度d作為第一參數且使其值隨著第二參數b=k(i,j)而變化。取代在方程式(6)之純量積中使用偏移(i,j)之局部梯度,在該純量積中係使用K(d,b),導致輸出樣本O(x,y)係以非線性方式隨著局部梯度而變化:O(x,y)=I(x,y)+Σ(i,j)≠(0,0) w(i,j).K(I(x+i,y+j)-I(x,y),k(i,j)), (7)
其中K(d,b)係一函數,其採用d=I(x+i,y+j)-I(x,y)作為其第一參數/變數(在偏移(i,j)處之局部梯度被運算為在位置(x+i,y+j)處之相鄰樣本值與在位置(x,y)處之當前樣本值之間的差異,且採用b=k(i,j)(一額外的濾波參數)作為其第二參數/變數。該額外的濾波參數k(i,j)係與w(i,j)同時被判定。在一實施方案中,k(i,j)及w(i,j)之值係經判定以最佳化濾波及傳訊程序(以例如最小化失真)。此最佳化程序係藉由使用ALF之編碼器來執行。此一最佳化程序之一實例將在下文中描述。
所以依照本發明之實施例,一輸入樣本值藉由使用該輸入樣本本身及輸入樣本之適應性非線性轉換(其係該輸入樣本之相鄰者)的線性組合來予以濾波。該適應性非線性轉換取決於相鄰輸入樣本相對於正被濾波之輸入樣本的位置之相對位置。
就此經修改的ALF,其仍可能達成線性濾波,針對特定K,當K滿足存在b且存在α不等於零之條件時,使得針對所有d,K(d,b)等於α乘以d,亦即:
Figure 108143684-A0305-02-0044-59
所以,選擇一函數K(d,b),其針對b的一些值作用如同一線性函數(亦即,線性映射)(亦即,該函數K(d,b)滿足條件(8)),確保本實施例之經修改的ALF濾波程序仍可至少與使用標準線性ALF一樣有效(亦即,在最差情況下,該經修改的ALF可達成與VTM-3.0中之ALF一樣的效率程度)。例如,當使用一截波函數時,該參數b可被設定為最大可 能整數值(理想地,其應被設定為無限大但吾人在有限整數精度方案中使用該最大可能整數值達成相同效果)以使其作用如同一線性函數。
應注意在本發明之一些實施例中,該ALF濾波使用替代公式/濾波公式。該多變量函數K(d,b),其採用局部梯度及一額外參數/變數,係由另一多變量函數所取代,其採用三個參數/變數:一相鄰樣本值、欲被濾波之樣本值及一額外的參數/變數。其利用方程式(7)來重新制定同時使用與方程式(4)的類似符號且滿足條件(5):O(x,y)=w(0,0).I(x,y)+Σ(i,j)≠(0,0) w(i,j).K'(I(x+i,y+j),I(x,y),k(i,j)), (9)
其中K'(n,c,b)係一函數,其採用一相鄰樣本值(n)、欲被濾波之當前樣本值(c)及一額外的濾波參數/變數(b)作為其參數/變數。
依照本發明之一實施例,用於色度分量(304)及亮度分量(407)兩者之濾波步驟係經修改以使用具有非線性公式之此濾波(較佳地使用方程式(7),但亦可替代地使用方程式(9)),其係使用整數算術(如參考方程式(1)所描述的)實施。
依照替代性實施例,其中任何選擇係基於複雜度,例如兩個濾波步驟(304)或(407)中僅一個經修改以使用具有非線性公式的濾波器。
根據一些實施例,該參數/變數b=k(i,j)具有多於一個的維度,例如,其可以係K(d,b=(S b ,D b ))=f(d,S b ,D b ), 例如使用:
Figure 108143684-A0305-02-0046-19
其中S b D b 值可隨著(i,j)改變。
使用具有多於一個維度之參數/變數/函數通常可改良濾波,但以較高成本用於傳訊濾波器參數。另外,當在編碼器處以較高維度空間最佳化濾波器參數時,其會引入更大的複雜度,且其通常在解碼器處更複雜來運算該函數(更多濾波器參數通常意味著更多操作來使用它們)。在一實施例,b具有單一維度,其可針對許多ALF應用可達成良好折衷。
根據一些實施例,該函數K亦可為一函數,其包括多於一個的不同函數用於不同偏移(i,j)。在一些實施例中,該函數在濾波器形狀/圖案中之組態/配置在編碼器與解碼器兩處被預定義。替代地,函數之組態從一組預定義組態中選出/選擇,且針對所選出之組態之一指標被傳輸/傳訊。在其他實施例中,一函數從一組預定義函數中選出用於在濾波器形狀/圖案(除了中心位置)中之各係數指標及其指標被傳輸/傳訊。在此等實施例之變體中,各函數係單一變數函數(亦即,K函數不再具有額外的參數/變數b),而是取代傳訊b參數來傳訊一函數指標。此一變體可被視為使用多變量公式,例如K(d,b)=K b (d)公式。例如,b係用於從一組函數中選擇單一變數函數K b 的整數指標。
根據一些實施例,該函數K對於(若干)亮度濾波器及 (若干)色度濾波器為不相同。根據一些實施例,該函數K針對各亮度濾波器為不相同。在某些這些實施例中,針對各濾波器,在切片標頭中提供該所選函數之一指標。
依照本發明之一實施例,K經選擇為簡單運算(不會引入太多的解碼複雜度)。例如,在此一實施例中,K僅係一截波函數:K(d,b)=max(-b,min(b,d)). (11)
或等效地:K(d,b)=min(b,max(-b,d)). (12)
不同於下文描述之一些替代性函數,一截波函數並不會針對局部梯度之高值而消失(換言之,一截波函數f(x)不會隨著x趨近無限大而收歛為零)。但在經驗上已觀察到使用此一簡單函數之壓縮結果通常係與使用更複雜函數一樣有效,且可能甚至更佳。事實上,截波函數針對局部梯度之高值並不會消失,而只是截波它們,可允許持續考量尖銳邊緣過渡,同時限制存在於尖銳邊緣過渡區域周圍的高變異的影響。由於假影通常在尖銳過渡周圍較強,這是受關注的。
使用方程式(9)之濾波公式的此一截波函數K之一等效函數K'K'(n,c,b)=max(c-b,min(c+b,n)). (13)
或等效地:K'(n,c,b)=min(c+b,max(c-b,n))。
該截波函數滿足方程式(8),只要b大於或等於該最大 可能樣本值(例如,2的影像位元深度次方)。
在以下描述中,所使用之「截波範圍」或「截波參數」係指稱KK'b參數/變數。應理解此等術語可被視為用於指稱非線性函數參數的一般性術語。類似地,「截波」或「截波函數」可用以指稱上述描述之KK'或其功能上等效之函數。
在一替代性實施例中,K可為另一非線性函數。在一變體中,K係反對稱函數,例如一鋸齒週期,對應於:
Figure 108143684-A0305-02-0048-20
;或一些三角週期,其對應於方程式(10) 當
Figure 108143684-A0305-02-0048-21
時之特定例;或其亦可使用高斯核函數,以 類似於雙邊濾波器的方式:例如,
Figure 108143684-A0305-02-0048-22
。例如,K 可為任何函數,其被設定為零以上(或以下)一特定臨限值,如同上述變體的反對稱函數。
依照一實施例,使用非線性ALF取代線性ALF來降低需要執行ALF濾波之樣本線緩衝器之數目(亦即,降低當執行濾波時(例如在一解碼器處)需要被處理/存取/保持在記憶體中之輸入影像分量之樣本的數目)。
依照一變體,如權衡/折衷,用於亮度濾波器之濾波器形狀/圖案的大小從7x7菱形形狀被減少至較小的濾波器形狀/圖案。例如,針對亮度濾波器使用5x5菱形形狀(例如,如用於圖3-b中之色度濾波器的相同形狀,但仍使用轉置指標變體)。這仍可達成與如具有7x7菱形形狀亮度濾波器(例如,如在圖4-b中所示)之僅線性ALF的類似寫碼增 益,但具有要處理/存取/儲存的減少樣本數目(例如,減少的樣本線緩衝器之數目),且亦具有降低的運算複雜度:亦即,用以處理ALF濾波器所需要的乘法數目針對每個濾波輸入樣本係減少6個而同時可達成良好的寫碼增益。
依照一變體,當對樣本執行ALF濾波時,基於所有相鄰樣本(其原本可能被使用線性ALF)而使用非線性ALF。依照另一變體,當對樣本執行ALF濾波時,僅有一些相鄰樣本(其原本可能被使用線性ALF)使用非線性ALF,而其餘的相鄰樣本被使用線性ALF。依照又另一變體,當對樣本執行ALF濾波時,僅有一些相鄰樣本(其原本可能被使用線性ALF)係被使用非線性ALF,而其餘的相鄰樣本亦未被使用線性ALF。
依照變體,藉由利用在這些濾波器形狀/圖案中的對稱性,使用與方程式(2)之相同符號來簡化線性及/或非線性ALF濾波器實施方案,在方程式(4)中之線性函數可重新制定如下:
Figure 108143684-A0305-02-0049-23
其針對ALF滿足以下條件:
Figure 108143684-A0305-02-0049-24
在方程式(6)中之線性函數亦可重新制定如下:
Figure 108143684-A0305-02-0049-25
且在方程式(7)中之非線性函數變成:
Figure 108143684-A0305-02-0049-26
其中k i 係與濾波器係數w i 相關聯之濾波器截波參數。
最後,在方程式(9)中之非線性函數可重新制定如下:
Figure 108143684-A0305-02-0050-27
依照此實施例之一變體,K'函數或K函數係截波函數。
依照一實施例,為了減少相較於用於處理在方程式(17)中之函數K之運算次數之涉及處理非線性函數之運算次數,取而代之在至少兩個相鄰者差異之總和上導入非線性(亦即,可使用具有兩個或更多個局部梯度之總和作為其變數的非線性函數):
Figure 108143684-A0305-02-0050-28
方程式(19)並非恆等效於方程式(17),且使用方程式(19)之濾波器可能較不具效率但其降低運算複雜度。依照一變體,傳訊/編碼截波參數/值之數目並未從方程式(17)中的那些改變,例如當K係一截波函數時。
可理解的是可依照另一變體來使用基於方程式(18)類似地導出的具有降低複雜度的方程式,其中K'函數具有兩個或更多個相鄰差異值(局部梯度)之總和作為其變數:
Figure 108143684-A0305-02-0050-29
圖7提供根據本發明之一實施例之非線性濾波器的方塊圖,其可以係在VTM-3.0之ALF中的線性濾波器的替代(或是除了在ALF中之線性濾波器以外的一額外的非線性濾波器)。其對應於具有整數固定點算術之方程式(7)之實施 方案,使用方程式(11)之截波函數。‘C’ 701對應於I(x,y),‘S0’ 702至‘Sn’ 703對應於I(x+i,y+j)針對各(i,j)≠(0,0),‘k0’ 704至‘kn’ 705對應於k(i,j)針對各(i,j)≠(0,0),‘w0’ 706至‘wn’ 707對應於w(i,j)針對各(i,j)≠(0,0)及‘O’ 708對應於O(x,y)。
圖5係具有根據本發明之一實施例之經修改語法元素之概述的流程圖,其提供可用以實施上述非線性函數(及其參數)及其相關實施例/變體之語法元素的一實例。在此實施例中,用於各濾波器之方程式(7)(或(9))之編碼濾波器係數係與其本身的截波範圍相關聯,且因此k(i,j)可具有隨偏移(i,j)改變之不同值。大部分的語法元素係與吾人已使用在VTM-3.0中且參考圖2所闡述的相同:在圖5中之501、502、503、504、505、506、507、508、509、510具有與圖2中之201、202、203、204、205、206、207、208、209、210相同傳訊及語意。新的語法元素係用於各亮度濾波器511之截波參數、用於亮度濾波器(506)之所有濾波器係數、及用於各亮度濾波器(511)之所有截波參數,這些可例如在切片標頭中被傳訊。此傳訊接著由傳訊用於色度濾波器(507)之所有濾波器係數及用於色度濾波器(512)之所有截波參數。
依照一實施例,針對任何濾波器,經傳訊之截波參數之數目係與經傳訊之濾波器係數的數目相同。用於偏移(i,j)之截波參數係以與用於在相同位置(x+i,y+j)處之濾波器係數相同方式來獲得。針對色度,它們係以與針對圖3- a之步驟303中用於濾波器係數導出程序之描述相同的方式來處理(但用色度截波參數);且針對亮度,它們係以與針對圖4-a之步驟406中用於濾波器係數導出程序之描述相同的方式來處理(但用亮度濾波器截波參數)。
在一替代性實施例中,每個濾波器僅有一個截波參數,針對所有濾波器(i,j)≠(0,0)位置係使用此截波參數。
在一替代性實施例中,截波參數之數目係少於濾波器係數之數目。在此一實施例的變體中,這些截波參數被使用於具有偏移(i,j)之濾波器位置的一子集(其可被預定義或判定)。針對其他濾波器位置,執行通常的線性濾波(或換言之,在那些其他濾波器位置處,K被採用作為恆等函數)或替代地使用預定義截波參數值。
此一實施例之變體係參考圖16-a及圖16-b來描述。在這些變體中,(若干)截波函數被應用至濾波器位置之子集,亦即,截波圖案/形狀/支持件/遮罩僅包含濾波器形狀/圖案中之濾波器位置的子集,使得僅相鄰樣本值/位置之一子集在濾波程序期間被截波(例如,非線性函數僅從該子集被應用至樣本值)。由於截波操作在運算上係昂貴的,因此以此方式減少涉及濾波中之截波操作的數目可降低濾波程序之複雜度及運算成本。
圖16-a提供具有減少截波/截波位置之數目之7x7菱形濾波器形狀,其中繪示用於當用該7x7濾波器形狀(例如針對亮度使用ALF)執行濾波時減少所需要之截波操作之數目的三種可能的截波/截波位置之配置組態。藉由使用在圖 16-a中所示之截波圖案,用於執行濾波之截波操作的數目會因為截波操作並未用於所有的濾波器(輸入)位置而減少,亦即,僅濾波器位置之一子集(其可為預定義或傳訊或推斷)被用於截波操作(亦即,使用非線性函數)。在圖16-a中,截波樣本位置在截波圖案1601、1602及1603中被標示為‘X’。截波圖案1601及1602減少截波操作之數目達三分之二,而截波圖案1603減少此數目達一半。這些截波圖案1601、1602及1603在涉及當使用7x7菱形濾波器形狀時之濾波程序之輸出之準確度與複雜度之間取得良好的折衷。該截波圖案1601、1602及1603針對非線性ALF(其係基於基於定向的ALF)功效良好(亦即,一濾波器係基於局部內容定向及活動程度之分類而建立,例如,在VTM3.0中之亮度濾波器)。但若未使用分類,則最好使用圖案1602或1603。
應理解,依照其他變體,可使用更多或更少的截波位置。例如,整行及整列(除了中央位置)可被截波以取代截波圖案1601(亦即,從上至下及左至右的交叉狀,除了中央位置),或在外邊緣上的位置(亦即,較大菱形/平行四邊形截波圖案)可被截波以取代截波圖案1602。在截波位置之其他變體中,截波圖案/形狀/支持件/遮罩形成斜向交叉狀“X”(除了中央位置),一垂直分段“|”(除了中央位置),一水平分段“-”(除了中央位置),從左上至右下“\”的斜向分段(除了中央位置),從右上至左下的斜向分段“/”(除了中央位置),或上述截波圖案/形狀/支持件/遮罩之任何組 合。
圖16-b提供具有減少截波/截波位置之數目之5x5菱形濾波器形狀,其中繪示用於當用該5x5濾波器形狀執行濾波時減少所需要之截波操作之數目的兩種可能的截波/截波位置之配置/組態。與圖16-a一樣,藉由使用圖16-b中所示之截波圖案,亦即,截波圖案1604及1605,當用5x5菱形濾波器形狀濾波時,其可以減少在此濾波程序期間涉及之截波操作的數目。該截波圖案1604及1605針對非線性ALF(其係基於基於定向的ALF)功效良好(亦即,一濾波器係基於局部內容定向及活動程度的分類而建立,例如,在VTM3.0中之亮度濾波器)。但若未使用分類,則最好使用圖案1605。
截波圖案1602及1605針對不使用基於定向之分類的濾波器功效較佳(例如,針對色度濾波器較佳,相比於憑藉在VTM-3.0中之水平、垂直或斜向定向的分類之亮度濾波器),因為水平及垂直方向相鄰者在統計上比斜向相鄰者更可靠(因為其較大的歐幾里德(Euclidean)距離)。因此,可僅對較少可靠性的斜向相鄰樣本的濾波器位置而非對較可靠的水平及垂直方向相鄰樣本之濾波器位置更有優勢地來使用截波操作。
就基於濾波器之定向而言(亦即,針對基於分類之定向所獲得之濾波器),截波操作通常被應用於垂直於濾波器定向之濾波器位置處的樣本。例如,在1601中之截波圖案將由針對以水平或垂直定向分類之濾波器比針對由以斜 向定向分類之濾波器較佳地執行。截波圖案1602亦將針對四個類型定向來大致執行,但比圖案1601針對水平及垂直定向較不具效率。所以在1601及1602中之截波圖案針對使用7x7濾波器圖案之亮度濾波器平均幾近等效地執行且在1604及1605中之截波圖案將針對使用5x5濾波器圖案之亮度濾波器平均幾近等效地執行。
依照一變體,為了改良基於定向之濾波器,該截波圖案係基於該濾波器定向而從預定義圖案中選出。例如,截波圖案1601被使用在水平或垂直濾波器而截波圖案1602被使用在斜向濾波器。在又另一變型中,針對垂直濾波器所選擇之截波圖案係不同於針對水平濾波器所選擇之截波圖案(例如,彼此成90°旋轉樣式),且針對兩個斜向濾波器定向之截波圖案亦不同(例如,彼此成90°旋轉樣式)。在又另一變體中,截波圖案係依照針對樣本值之各4x4區塊之轉置指標(tranposeIdx)來選擇。
依照一變體,針對各濾波器具有一個預定截波圖案。依照另一變體,具有複數(例如,預定數目)個截波圖案可供使用,且針對每個濾波器指標,用於選定之截波圖案的(截波圖案)指標用ALF參數來予以編碼/傳訊,例如,在APS或圖塊群組標頭中。依照又另一變體,該(些)截波圖案用ALF參數來傳訊。例如,截波圖案之傳訊可藉由編碼/解碼一序列的旗標來執行,每濾波器(圖案)位置指標具有一個旗標(例如,等效於編碼/解碼濾波器係數指標),各旗標指示該截波是否針對該對應指標被應用或確實將不被應 用。替代地,截波圖案之傳訊可藉由編碼/解碼該經截波位置指標本身來執行,或藉由編碼解碼未被截波位置之濾波器(圖案)位置指標來執行(較佳地,不論何者需要較少數目之位元被傳訊)。
依照一變體,當使用一截波圖案(預定或未預定)時,該截波參數僅針對其中應用截波操作之濾波器(圖案)位置來傳訊。
在一些變體中,為了不破壞單一指令、多個資料(SIMD)並行化實施方案,該截波被應用至所有的濾波器位置,但採用針對其中未提供截波參數之位置的截波參數以具有線性輸出(例如,在一變體中,恆等函數的輸出)。
在一替代性實施例中,因為一或多個截波參數被共用,因此截波參數之數目係少於濾波器係數之數目。例如,在圖3-b及圖4-b之濾波器形狀中,一些係數指標可共用相同的截波參數。依照一變體,截波參數之一指標被指示在含有多個元素之一表中,該數目等於形狀大小的一半(因為對稱性)減1(因此針對中心係數位置沒有截波參數)。此表可將一截波參數指標關聯至各濾波器係數。依照一變體,此表由編解碼器固定/預設。依照一變體,定義多個固定/預設表,且來自於該表之用於識別一截波參數的一指標被傳訊,例如,在切片標頭中。在一替代變體中,此表之內容被傳訊,例如在切片標頭中,且由所有的亮度濾波器所共用。
在一實施例中,該截波參數可採用之值的數目被限制 為很小(為了降低相對於小品質優勢之編碼器複雜度及編碼成本)。准許截波參數之值用整數值指標予以指標化,較佳地依遞增或遞減順序。接著,這些指標可映射至截波參數表之各元素。接著,取代傳訊截波參數值,傳訊在該表中之相關截波參數值的指標(p)。在其中p係表中之濾波器指標的一實施例中,不需要使用中間表以減少用於p之可能值的數目。可以直接減少可函數表中可用的函數數目且因此減少其大小。
在一實施例中,截波參數值被限制於2的次方2 p 。接著對p編碼。p之最大值係輸入影像之位元深度B d (並不需要較大值,因為它們提供相同結果)。在取代p之替代實施例中,對B d -p編碼。在另一實施例中,p之範圍被限制於p min p max 之間。例如,p min =3且p max =B d -1。接著,可傳訊p-p min p max -p
在一實施例中,針對色度濾波器所准許/允許/可用的截波參數值與針對亮度濾波器的那些截波參數值係不相同的。
依照一實施例,用於切片中之截波參數的表中之最小指標p min 及表中之最大指標p max 被提供在切片標頭,使得當傳訊它們時可能的截波參數值之數目可被限制/侷限。依照一實施例,p min p max 由亮度及色度濾波器所共用。在一替代性實施例中,p min p max 針對未受限制之亮度、色度指標來提供。在另一替代性實施例中,p min p max 針對亮度及色度被提供在切片標頭中。
依照一替代性實施例,經准許之截波參數值之一表在切片標頭中針對亮度及色度分量兩者被傳訊,或者替代性地兩個表:一個用於亮度而一個用於色度。
在本發明之一實施例中,截波參數511及512並未在切片標頭中被傳訊。而是,該截波參數在編碼器/解碼器處使用被用於傳訊該經濾波樣本之量化參數(QP)且基於濾波器之類型指標來判定。
在一替代性實施例中,截波參數511及512在切片標頭中被傳訊。但在濾波程序中,它們未被直接使用。而是,截波參數取決於被用以傳訊該經濾波樣本之量化參數(QP)而被縮放。
在一實施例中,用於亮度濾波器之截波參數並未針對每個濾波器來提供。僅有兩個截波參數表由所有的亮度濾波器共用,且在切片標頭中傳訊。一表係用於水平/垂直類型而另一表係用於斜向類型。各類型之截波參數從該兩表中依照類型定向使用圖4-b之係數配置導出,且依照從類型之活動程度判定之固定值來縮放(亦即,乘以)該截波參數。當分類4x4區塊時,該縮放考慮到活動程度。例如,對於高活動程度的區域(例如,靠近邊緣),當相較於低活動程度之區域(例如,在同質區域中)時,可以使用較高的截波值。
在一實施例中,在切片標頭中之一個位元針對用於各濾波器之每個濾波器截波指標來傳訊該截波被啟用/停用。在其中每截波參數僅有一個允許的截波值的實施例 中,若該位元指示該截波係作用中,則使用該截波值(亦即,針對該截波參數值沒有傳訊其他的)。替代地,當允許多於一個截波值時,若針對一截波指標之位元指示該截波針對該濾波器截波指標係停用的,則該截波值不被傳訊,而在另一情況中其被傳訊。
在此該濾波器截波指標對應於與濾波器形狀中之濾波器係數指標相關聯之截波參數之指標。
在一實施例中,經允許的截波值取決於切片類型(例如,其可為INTRA、B或P)。
在一實施例之變體中,所允許的截波值:針對在B或P切片中之亮度係{6,32,181,1024};針對在B或P切片中之色度係{4,25,161,1024};針對在INTRA切片中之亮度係{10,102,1024};或/及針對在INTRA切片中之色度係{4,24,1024}。因此任何截波參數可採用屬於這些組中之一組中(因此屬於切片類型及屬於濾波分量)的值。且,在該組中之該值的指標在切片標頭中針對各濾波器、針對各截波參數被編碼。
在一變體中,允許的截波值之表係定義如下:
Figure 108143684-A0305-02-0059-30
其中N係該表中之截波值的數目(亦即,表之大小)、M係最大截波值(其係在該表中之最後項,例如M=2 D M=2 D -1,其中D係針對其該表被定義之分量的樣本位元深度),且其中‘round’係捨入算運子(例如,對最接近的整 數)。
在一變體中,允許的截波值之表係定義如下:
Figure 108143684-A0305-02-0060-31
其中N係該表中之截波值的數目(亦即,表之大小)、M係最大截波值(其係在該表中之最後項,例如M=2 D M=2 D -1,其中D係樣本位元深度),A係最小截波值(其係該表中之第一項),且其中‘round’係捨入算運子(例如,對最接近的整數)。
在一實施例中,所允許的截波值針對各濾波器截波指標係不相同的。
在對差異值使用截波函數的實施例之變體中,亦即,對相鄰樣本值與中心值之間的差異應用方程式(11)或方程式(12)的函數K,該最大允許截波值被定義成使得可減少在截波之輸出處的位元數目。其可限制針對硬體實施方案(其依照那些變體執行濾波)需要被處理之位元的數目。因此其可降低在晶片中之邏輯閘/電晶體的數目。降低在乘法運算子之輸入端處的位元數目係特別受觀注,因為乘法需要許多邏輯閘。例如,設定最大允許截波值為2之樣本位元深度減1次方減1(亦即,最大截波等於2^(位元深度-1)-1)可在截波之輸出端處且亦在乘法運算子之輸入端處將最大位元數目減1。且使用樣本位元深度減2(亦即,最大截波等於2^(位元深度-2)-1)可使最大位元數目減2。
在使用APS之一實施例中,INTRA切片與INTER切片 (或INTRA及INTER圖像/影像部分/圖塊群組)之間可能無法在截波值導出期間區別,因為APS由INTRA及INTER切片/圖像/圖塊群組/影像部分所共用。接著,允許截波值之預定義表無法再取決於切片/影像部分/圖塊群組類型。因此,一預設截波值表由所有的切片/圖像/圖塊群組/影像部分類型所共用。在一變體中,其接著直到編碼器來決定(且接著傳訊至解碼器)該截波值是否例如為了複雜度降低考量而被限制於來自預設截波值表之截波值之一子集。
在一變體中,可使用之截波值之截波值表在APS中用該ALF參數而傳訊。因此,一編碼器(及一解碼器)可使用任何截波值且傳訊該使用的截波值及其自身截波值表。
在一變體中,具有多於一個的預設截波值表,例如一個用於INTER切片且另一個用於INTRA切片。用於識別所使用表的資訊,例如所使用表之指標,接著被提供在具有該ALF參數之APS中。在一變體中,該預設截波值表針對亮度及針對色度係不同的。
在一實施例中,濾波器之輸出值亦取決於輸入樣本值及額外截波參數(其可被添加至截波參數表)來截波。
依照一實施例,除了ALF作用中旗標,一NLALF(非線性ALF)作用中旗標於放置在序列階層中,例如在SPS中,或替代地在圖框階層中,例如在圖像標頭中,以指示非線性ALF係作用中/被使用/啟用。若此旗標係作用中(亦即,指示非線性ALF係作用中),則用於該ALF之語法元素包含用於非線性濾波器之濾波器參數,例如,圖5中的語 法元素。若旗標係非作用中(亦即,未指示一非線性ALF係作用中),則用於該ALF之語法元素僅包含用於線性濾波器之濾波器參數,例如,圖2中之語法元素。
依照一實施例,若ALF旗標在切片標頭中為作用中,則NLALF作用中旗標被放置在切片標頭中。若此NLALF旗標為作用中,則用於每一亮度濾波器語法元素511之截波參數及用於色度濾波器512之截波參數係出現在該切片標頭中。若此NLALF旗標係非作用中,語法元素511及512未出現在切片標頭中,且該ALF使用一般的線性濾波。
依照一替代性實施例,針對各分量類型亮度及色度提供一獨立的NLALF作用中旗標,且這些旗標之一者或兩者被用於指示是否對一特定分量之樣本使用非線性ALF(例如,它們被提供在與NLALF作用中旗標相同位置,諸如在序列階層或在切片標頭中)。在一變體中,對亮度使用非線性ALF且對色度使用線性ALF。在一變體中,對色度使用非線性ALF且對亮度使用線性ALF。
在一變體中,NLALF亮度作用中旗標及NLALF色度作用中旗標被提供在切片標頭中。NLALF亮度作用中旗標指示一非線性適應性迴路濾波器是否被使用在亮度分量上,且亦指示非線性ALF之截波參數是否針對每個亮度濾波器傳訊。NLALF色度作用中旗標指示一非線性適應性迴路濾波器是否被使用在色度分量上,且亦指示非線性ALF之截波參數是否針對每個色度濾波器傳訊。
在一變體中,該NLALF色度作用中旗標未被傳訊,但 其被推斷為等於零(若NLALF亮度作用中旗標等於零),使得非線性ALF無法僅被使用在色度上。
在一變體中,一非線性ALF總是被使用在亮度(藉由預設,所以NLALF亮度作用中旗標可能不被使用或被假定為對應的預設值),且使用一NLALF色度作用中旗標以指示一非線性ALF或一線性ALF是否被使用在色度上。在一變體中,一線性ALF總是被使用在亮度(藉由預設,所以NLALF亮度作用中旗標可能不被使用或被假定為對應的預設值),且使用一NLALF色度作用中旗標以指示一非線性ALF或一線性ALF是否被使用在色度上。在一變體中,使用一NLALF亮度作用中旗標來指示一非線性ALF或一線性ALF是否被使用在亮度上,且一非線性ALF總是被使用在色度上(藉由預設,所以NLALF色度作用中旗標可能不被使用或被假定為對應的預設值)。在一變體中,使用一NLALF亮度作用中旗標來指示一非線性ALF或一線性ALF是否被使用在亮度上,且一線性ALF總是被使用在色度上(藉由預設,所以NLALF色度作用中旗標可能不被使用或被假定為對應的預設值)。
在一實施例中,一NLALF作用中旗標(或一NLALF亮度作用中旗標或一NLALF色度作用中旗標)被放置在切片標頭中,僅若該NLALF旗標在SPS中係作用中。在NLALF作用中旗標(或一NLALF亮度作用中旗標或一NLALF色度作用中旗標)不存在的情況中,其可被視為被預設為非作用中。
在一實施例中,該NLALF旗標取代在SPS及切片標頭中的ALF旗標。典型(僅線性)ALF無法再被使用,除了在其中截波函數針對該允許的截波參數值允許線性輸出的實施例中。
依照一實施例,截波參數之傳訊以如濾波器係數的類似方式來完成。針對截波參數之(指數)哥侖布編碼的參數被首先傳訊:使用VLC碼來傳訊(指數)哥侖布碼之最小階,接著針對各(指數)哥侖布指標(例如針對亮度濾波器3個指標且針對色度2個指標)使用一旗標來傳訊該(指數)哥侖布階是否針對當前指標且針對後面的指標增加(從最小階開始)。
接著,針對每個(未停用)濾波器來傳訊截波參數,使用(指數)哥侖布碼(針對無符號整數),且採用的(指數)哥侖布具有與來自於儲存(指數)哥侖布參數的表的係數指標(在一固定表中,例如與濾波器係數相同)相關聯的(指數)哥侖布指標。
依照一替代性實施例,針對每個編碼濾波器,傳訊一(指數)哥侖布編碼參數值,例如在切片標頭中,且各截波參數值使用針對一未帶符號整數(指數)哥侖布編碼所提供的(指數)哥侖布編碼參數值來編碼。
依照一實施例,該(指數)哥侖布編碼參數值被傳訊作為可用的(指數)哥侖布編碼參數值表中的指標。
依照一實施例,一旗標例如在切片標頭中被傳訊,該旗標指示用於亮度濾波器之截波參數是否使用差量(delta) 模式來傳訊。當差量模式為作用中,該第一濾波器截波參數如先前描述被編碼,但各後續濾波器截波參數被編碼為在後續濾波器截波參數與先前編碼的濾波器截波參數之間的差異。在此例中,該差異使用帶符號整數(指數)哥侖布編碼來編碼。
依照一實施例,一旗標例如在切片標頭中被傳訊,該旗標指示用於該濾波器之截波參數是否可使用差量模式。依照一實施例,當差量模式係作用中時,針對每個濾波器傳訊一旗標,該旗標指示用於該濾波器之截波參數是否使用差量模式。依照一實施例,當差量模式針對編碼一給定濾波器之截波參數係作用中時,該截波參數被逐一編碼,第一個使用未帶符號(指數)哥侖布編碼,而後面的使用該截波參數與先前編碼之截波參數之間的差異之帶符號(指數)哥侖布編碼。
依照一替代性實施例,一截波參數可採用的值之數目被限制於兩個不同值。接著,使用單一位元來傳訊哪個截波參數值已被使用(不需要提供(指數)哥侖布參數)。
依照一實施例,執行一截波參數的條件式傳訊,使得將不需要的資料(例如,其中該濾波器係數為零或對於在解碼器側之濾波器等於一已知值)之傳訊減至最少。在一變體中,在截波參數被傳訊之前,濾波器係數被傳訊,例如在切片標頭中,且針對一濾波器之各第i個濾波器係數(其等於零),其對應的第i個截波參數未被傳訊。這是因為該第i個截波對該濾波器係無用的,因為其結果將乘以零 係數,使得來自於對該濾波輸出之該第i個截波沒有任何作用。在一變體中,該截波被設定為一預設值(例如,依照樣本位元深度之最大可能值)。在另一變體中,該濾波程序並未對(若干)輸入(若干)樣本(其接著被預期將被乘以零係數)未應用截波。
依照一實施例,針對每個亮度濾波器傳訊一旗標來指示一非線性濾波器是否與亮度濾波器一起使用。在一變體中,僅若針對亮度濾波器使用非線性濾波器(亦即,該旗標係作用中),才會傳訊該亮度濾波器之截波參數/值。
依照一實施例,針對每個色度濾波器傳訊一旗標來指示一非線性濾波器是否與色度濾波器一起使用。在一變體中,僅若針對色度濾波器使用非線性濾波器(亦即,該旗標係作用中),才會傳訊該色度濾波器之截波參數/值。
依照一實施例,傳訊ALF相關資訊(諸如ALF參數及旗標)係利用以下一或多者來執行:如下展示之APS語法(表1);圖塊群組標頭語法(表2);寫碼樹單元語法(表3);及/或非線性ALF資料語法(表4),這些語法使用如在VVC草案版本3中稱為慣例之相同語法。依照一變體,採用所有四種語法(例如表1至4)來傳訊ALF相關資訊。依照一替代性變體,使用四種語法之一子集來傳訊ALF相關資訊。
表1及表2提供高階語法元素,用於提供/傳訊ALF參數,例如,alf_data( )。
Figure 108143684-A0305-02-0067-32
Figure 108143684-A0305-02-0067-33
針對其他實施例(或其變體)描述的切片(標頭)係由如表2之圖塊群組標頭語法所示之圖塊群組(標頭)取代。因此,‘tile_group_alf_enabled_flag’對應於圖2中之202及圖5中之502的語法元素,且其指示ALF針對該圖塊群組是否係作用中。此外,ALF資料語法元素未被提供在圖塊群組標頭中(在其他具有切片之實施例中,其可被提供在切片標頭中)。而是,該ALF資料語法元素被提供在一特殊參數集,被稱為適應參數集(APS)如表1所示。ALF資料包含ALF語法元素,且在APS中提供ALF資料語法元素可使得ALF參數在多於一個的圖塊群組之間共用,例如在相同及/或不同解碼圖像中之複數個圖塊群組之間共用。
表1之適應參數集(APS)語法被用以定義任何適應參數集之傳訊。在一變體中,該APS被包含在非‘Video Coding Layer’(VCL)‘Network Abstraction Layer’(NAL)單元中(例 如,稱為“APS_NUT”或APS NAL單元類型)。
針對APS之各語法元素的語意如下:
適應參數集語意
adaptation_parameter_set_id識別用於供其他語法元素參考的APS。adaptation_parameter_set_id之值應在0至63(含)的範圍中。
表2之圖塊群組標頭語法被用於定義各圖塊群組標頭。針對各圖塊群組提供一圖塊群組標頭。一圖塊群組包含一組圖塊,各圖塊包含一組CTU。
用於圖塊群組標頭之語法元素的語意如下:
圖塊群組標頭語意
tile_group_aps_id指定該圖塊群組所參照之APS之adaptation_parameter_set_id。tile_group_aps_id之值應在0至63(含)的範圍中。具有adaptation_parameter_set_id等於tile_group_aps_id之APS NAL單元之TemporalId應小於或等於經寫碼之圖塊群組NAL單元之TemporalId。
表3提供用於在CTU層級傳訊用於其上ALF為作用中之各分量之ALF(啟用)旗標的語法元素。其對應於在圖2之208、209及210中所使用及在圖5中之508、509及510之語法元素。
Figure 108143684-A0305-02-0069-34
表3之寫碼樹單元語法被用於定義(經編碼的)寫碼樹單元。針對寫碼樹單元之各語法元素的語意如下:
寫碼樹單元語意
CTU係寫碼四元樹結構的根節點。
alf_ctb_flag[cIdx][xCtb>>Log2CtbSize][yCtb>>Log2CtbSize]等於1指定該適應性迴路濾波器被應用至由在亮度位置(xCtb,yCtb)處之寫碼樹單元之cIdx指示之顏色分量之寫碼樹區塊。alf_ctb_flag[cIdx][xCtb>>Log2CtbSize][yCtb>>Log2CtbSize]等於0指定該適應性迴路濾波器未被應用至由在亮度位置(xCtb,yCtb)處之寫碼樹單元之cIdx指示之顏色分量之寫碼樹區塊。
當alf_ctb_flag[cIdx][xCtb>>Log2CtbSize][yCtb>>Log2CtbSize]不存在時,其被推斷為等於0。
表4提供用於傳訊非線性ALF參數(亦即,非線性ALF資料語法)之語法元素,其建立在VVC草案版本3之ALF資 料語法元素上。這些語法元素建立在參考圖5之非線性ALF語法元素(其建立在圖2之語法元素上)之本文中描述的變體中的那些語法元素。
Figure 108143684-A0305-02-0071-35
Figure 108143684-A0305-02-0072-36
Figure 108143684-A0305-02-0073-37
表4之非線性適應性迴路濾波器(ALF)資料語法被用於定義適應參數集(表1中所示)。用於非線性ALF資料語法元素的語意如下:
適應性迴路濾波器資料語意
alf_chroma_idc等於0指定該適應性迴路濾波器未被應用至Cb及Cr顏色分量。alf_chroma_idc等於1指示該適應性迴路濾波器被應用至Cb顏色分量。alf_chroma_idc等於2指示該適應性迴路濾波器被應用至Cr顏色分量。alf_chroma_idc等於3指示該適應性迴路濾波器被應用至Cb及Cr顏色分量。
截斷單元碼二元化tu(v)之最大值maxVal被設定為等於3。
指定不同適應性迴路濾波器之數目的變數NumAlfFilters被設定為等於25。
alf_luma_num_filters_signalled_minus1加1指定可針對其傳訊亮度係數之適應性迴路濾波器類型之數目。alf_luma_num_filters_signalled_minus1之值應在0至NumAlfFilters-1(含)的範圍內。
截斷二進制碼二元化tb(v)之最大值maxVal被設定為等於NumAlfFilters-1。
alf_luma_coeff_delta_idx[filtIdx]指定用於由filtIdx(範圍從0至NumAlfFilters-1)指示之濾波器類型之經傳訊適應性迴路濾波器亮度係數差量之指標。當alf_luma_coeff_delta_idx[filtIdx]不存在,其被推斷為等於0。
截斷二進制碼二元化tb(v)之最大值maxVal被設定為等於alf_luma_num_filters_signalled_minus1。
alf_luma_coeff_delta_flag等於1指示alf_luma_coeff_delta_prediction_flag未被傳訊。alf_luma_coeff_delta_flag等於0指示alf_luma_coeff_delta_prediction_flag可被傳訊。
alf_luma_coeff_delta_prediction_flag等於1指定經傳訊亮度濾波器係數差量可從先前亮度係數之差量預測。alf_luma_coeff_delta_prediction_flag等於0指定經傳訊亮 度濾波器係數差量無法從先前亮度係數預測。當不存在時,alf_luma_coeff_delta_prediction_flag被推斷為等於0。
alf_luma_min_eg_order_minus1加1指定用於亮度濾波器係數傳訊之指數哥侖布碼之最小階。alf_luma_min_eg_order_minus1之值應在0至6(含)的範圍中。
alf_luma_eg_order_increase_flag[i]等於1指定用於亮度濾波器係數傳訊之指數哥侖布碼之最小階遞增1。alf_luma_eg_order_increase_flag[i]等於0指定用於亮度濾波器係數傳訊之指數哥侖布碼之最小階未遞增1。
用以解碼alf_luma_coeff_delta_abs[sigFiltIdx][j]之值的指數哥侖布碼的階expGoOrderY[i]被導出如下:expGoOrderY[i]=alf_luma_min_eg_order_minus1+1+alf_luma_eg_order_increase_flag[i]
alf_luma_coeff_flag[sigFiltIdx]等於1指定由sigFiltIdx指示之亮度濾波器之係數被傳訊。alf_luma_coeff_flag[sigFiltIdx]等於0指定由sigFiltIdx指示之亮度濾波器之所有的濾波器係數被設定為等於0。當不存在時,alf_luma_coeff_flag[sigFiltIdx]被設定為等於1。
alf_luma_coeff_delta_abs[sigFiltIdx][j]指定由sigFiltIdx指示之經傳訊亮度濾波器之第j個係數差量之絕對值。當alf_luma_coeff_delta_abs[sigFiltIdx][j]不存在 時,其被推斷為等於0。
指數哥侖布之階k二元化uek(v)被導出如下:golombOrderIdxY[ ]={0,0,1,0,0,1,2,1,0,0,1,2}
k=expGoOrderY[golombOrderIdxY[j]]
alf_luma_coeff_delta_sign[sigFiltIdx][j]指定由sigFiltIdx指示之濾波器之第j個亮度係數的正負號如下:
- 若alf_luma_coeff_delta_sign[sigFiltIdx][j]等於0,則對應的亮度濾波器係數具有正值。
- 否則(alf_luma_coeff_delta_sign[sigFiltIdx][j]等於1),對應的亮度濾波器係數具有負值。
當alf_luma_coeff_delta_sign[sigFiltIdx][j]不存在時,其被推斷為等於0。
具有sigFiltIdx=0..alf_luma_num_filters_signalled_minus1,j=0..11之變數filterCoefficients[sigFiltIdx][j]被初始化如下:filterCoefficients[sigFiltIdx][j]=alf_luma_coeff_delta_abs[sigFiltIdx][j] * (1-2 * alf_luma_coeff_delta_sign[sigFiltIdx][j])
當alf_luma_coeff_delta_prediction_flag等於1時,具有sigFiltIdx=1..alf_luma_num_filters_signalled_minus1且j=0..11之filterCoefficients[sigFiltIdx][j]被修改如下:filterCoefficients[sigFiltIdx][j]+=filterCoefficients[sigFiltIdx-1][j]
具有元素AlfCoeffL[filtIdx][j]且filtIdx=0..NumAlfFilters-1且j=0..11之亮度濾波器係數AlfCoeffL被導出如下 AlfCoeffL[filtIdx][j]=filterCoefficients[alf_luma_coeff_delta_idx[filtIdx]][j]
針對filtIdx=0..NumAlfFilters-1之最後濾波器係數AlfCoeffL[filtIdx][12]被導出如下:AlfCoeffL[filtIdx][12]=128
位元流一致性之一要求為具有filtIdx=0..NumAlfFilters-1,j=0..11之AlfCoeffL[filtIdx][j]之值應在-2^7至2^7-1(含)的範圍內且AlfCoeffL[filtIdx][12]之值應在0至2^8-1(含)的範圍內。
alf_chroma_min_eg_order_minus1加1指定用於色度濾波器係數傳訊之指數哥侖布碼之最小階。alf_chroma_min_eg_order_minus1之值應在0至6(含)的範圍中。
alf_chroma_eg_order_increase_flag[i]等於1指定用於色度濾波器係數傳訊之指數哥侖布碼之最小階遞增1。alf_chroma_eg_order_increase_flag[i]等於0指定用於色度濾波器係數傳訊之指數哥侖布碼之最小階未遞增1。
用以解碼alf_chroma_coeff_abs[j]之值的指數哥侖布碼的階expGoOrderC[i]被導出如下:expGoOrderC[i]=alf_chroma_min_eg_order_minus1+1+alf_chroma_eg_order_increase_flag[i]
alf_chroma_coeff_abs[j]指定第j個色度濾波器係數之絕對值。當alf_chroma_coeff_abs[j]不存在時,其被推斷為0。位元流一致性的一要求為alf_chroma_coeff_abs[j]之值應在0至2^7-1(含)的範圍內。
指數哥侖布之階k二元化uek(v)被導出如下:golombOrderIdxC[ ]={0,0,1,0,0,1}
k=expGoOrderC[golombOrderIdxC[j]]
alf_chroma_coeff_sign[j]指定第j個色度濾波器係數之正負號如下:
- 若alf_chroma_coeff_sign[j]等於0,則對應的色度濾波器係數具有正值。
- 否則(alf_chroma_coeff_sign[j]等於1),對應的色度濾波器係數具有負值。
當alf_chroma_coeff_sign[j]不存在時,其被推斷為等於0。
具有元素cC[j]且j=0..5的色度濾波器係數AlfCoeffC被導出如下:AlfCoeffC[j]=alf_chroma_coeff_abs[j] * (1-2 * alf_chroma_coeff_sign[j])
針對j=6之最後濾波器係數被導出如下:AlfCoeffC[6]=128
位元流一致性之一要求為AlfCoeffC[j]且j=0..5之值應在-2^7-1至2^7-1(含)的範圍內且AlfCoeffC[6]之值應在0至2^8-1(含)的範圍內。
alf_luma_clip等於0指定對亮度分量應用線性適應性迴路濾波器。alf_luma_clip等於1指定可對亮度分量應用非線性適應性迴路濾波器。
alf_chroma_clip等於0指定對色度分量應用線性適應性迴路濾波器;alf_chroma_clip等於1指定對色度分量應 用非線性適應性迴路濾波器。若不存在,alf_chroma_clip被推斷為0。
alf_luma_clip_default_table等於1指定預設alf_luma_clipping_value[ ]表用於將截波指標轉換成截波值。Alf_luma_clip_default_table等於0指示alf_luma_clipping_value[ ]表存在於alf_data()中。
alf_luma_num_clipping_values_minus1加1指示alf_luma_clipping_value[ ]表之大小。若不存在,其被推斷為等於bitDepthY。
alf_luma_clipping_value[clipIdx]指定當截波指標clipIdx在alf_luma_clip_idx[ ][ ]表中被傳訊時使用截波值。當不存在時,其被推斷為alf_luma_clipping_value[ ]={1<<bitDepthY,1<<(bitDepthY-1),...,8,4,2}。
為了方便,alf_luma_clipping-value[alf_luma_num_clipping_values_minus1+1]被推斷等於1<<bitDepthY。
alf_chroma_clip_default_table等於1指定預設alf_chroma_clipping_value[ ]表被用於將截波指標轉換成截波值;alf_chroma_clip_default_table等於0指示alf_chroma_clipping_value[ ]表存在於alf_data()中。
alf_chroma_num_clipping_values_minus1加1指示alf_chroma_clipping_value[ ]表之大小。若不存在,其被推斷為等於bitDepthC。
alf_chroma_clipping_value[clipIdx]指定當截波指標 clipIdx在alf_chroma_clip_idx[ ][ ]表中被傳訊時使用截波值。當不存在時,其被推斷為alf_chroma_clipping_value[ ]={1<<bitDepthC,1<<(bitDepthC-1),...,8,4,2}。
為了方便,alf_chroma_clipping_value[alf_chroma_num_clipping_values_minus1+1]被推斷等於1<<bitDepthC。
alf_luma_filter_clip[sigFiltIdx]等於0指定用由sigFiltIdx指示之亮度濾波器應用線性適應性迴路濾波器。alf_luma_filter_clip[sigFiltIdx]等於1指定用由sigFiltIdx指示之亮度濾波器應用非線性適應性迴路濾波器。
alf_luma_clip_min_eg_order_minus1加1指定用於亮度濾波器係數傳訊之指數哥侖布碼之最小階。alf_luma_clip_min_eg_order_minus1之值應在0至6(含)之範圍內。
alf_luma_clip_eg_order_increase_flag[i]等於1指定用於亮度濾波器係數傳訊之指數哥侖布碼之最小階遞增1。alf_luma_clip_eg_order_increase_flag[i]等於0指定用於亮度濾波器係數傳訊之指數哥侖布碼之最小階未遞增1。
用以解碼alf_luma_clip_idx[sigFiltIdx][j]之值的指數哥侖布碼的階expGoOrderYClip[i]被導出如下:expGoOrderYClip[i]=alf_luma_clip_min_eg_order_minus1+1+alf_luma_clip_eg_order_increase_flag[i]
alf_luma_clip_idx[sigFiltIdx][j]指定在乘以由sigFiltIdx指示之經傳訊亮度濾波器之第j個係數之前使用 該截波之截波指標。當alf_luma_clip_idx[sigFiltIdx][j]不存在時,其被推斷為等於alf_luma_num_clipping_values_minus1+1(未截波)。
指數哥侖布之階k二元化uek(v)被導出如下:golombOrderIdxYClip[ ]={0,0,1,0,0,1,2,1,0,0,1,2}
k=expGoOrderYClip[golombOrderIdxYClip[j]]
具有sigFiltIdx=0..alf_luma_num_filters_signalled_minus1,j=0..11之變數filterClips[sigFiltIdx][j]被初始化如下:filterClips[sigFiltIdx][j]=alf_luma_clipping_value[alf_luma_clip_idx[sigFiltIdx][j]]
具有元素AlfClipL[filtIdx][j]且filtIdx=0..NumAlfFilters-1且j=0..11之亮度濾波器截波值AlfClipL被導出如下AlfClipL[filtIdx][j]=filterClips[alf_luma_coeff_delta_idx[filtIdx]][j]
alf_chroma_clip_min_eg_order_minus1加1指定用於色度濾波器係數傳訊之指數哥侖布碼之最小階。alf_chroma_clip_min_eg_order_minus1之值應在0至6(含)之範圍內。
alf_chroma_clip_eg_order_increase_flag[i]等於1指定用於色度濾波器係數傳訊之指數哥侖布碼之最小階遞增1。alf_chroma_clip_eg_order_increase_flag[i]等於0指定用於色度濾波器係數傳訊之指數哥侖布碼之最小階未遞增1。
用以解碼alf_chroma_coeff_abs[j]之值的指數哥侖布 碼的階expGoOrderC[i]被導出如下:expGoOrderC[i]=alf_chroma_clip_min_eg_order_minus1+1+alf_chroma_clip_eg_order_increase_flag[i]
alf_chroma_clip_idx[j]指定在乘以色度濾波器之第j個係數之前使用該截波之截波指標。當alf_chroma_clip_idx[j]不存在時,其被推斷為等於alf_chroma_num_clipping_values_minus1+1(未截波)。
指數哥侖布之階k二元化uek(v)被導出如下:golombOrderIdxC[ ]={0,0,1,0,0,1}
k=expGoOrderC[golombOrderIdxC[j]]
具有AlfClipC[j],且j=0..5之元素色度濾波器截波值AlfClipC被導出如下:AlfClipC[j]=alf_chroma_clipping_value[alf_chroma_clip_idx[j]]
依照一變體,alf_luma_num_clipping_values_minus1由alf_luma_num_clipping_values_minus2取代且截波值係從指標=1提供至alf_luma_num_clipping_values_minus2+1,且alf_luma_clipping_value[ ]之第一值被推斷為alf_luma_clipping_value[0]=1<<bitDepthY。alf_chroma_num_clipping_values_minus1由alf_chroma_num_clipping_values_minus2取代且截波值從指標=1提供至alf_chroma_num_clipping_values_minus2+1,且alf_chroma_clipping_value[ ]之第一值被推斷為alf_chroma_clipping_value[0]=1<<bitDepthC。
依照一變體,一適應性迴路濾波程序使用上述的語法 元素。此一變體使用下文的VVC草案規範之符號約定。
適應性迴路濾波器程序 概述
此程序之輸入係在適應性迴路濾波器之前的經重建圖像樣本陣列recPictureL、recPictureCb及recPictureCr。
此程序之輸出係在適應性迴路濾波器之後的經修改之重建圖像樣本陣列alfPictureL、alfPictureCb及alfPictureCr。
在適應性迴路濾波器之後之經修改重建圖像樣本陣列alfPictureL、alfPictureCb及alfPictureCr中的樣本值最初分別地設定成等於在適應性迴路濾波器之前的經重建圖像樣本陣列recPictureL、recPictureCb及recPictureCr中的樣本值。
當tile_group_alf_enabled_flag等於1時,針對每個寫碼樹單元且亮度寫碼樹區塊位置(rx,ry),其中rx=0..PicWidthInCtbs-1且ry=0..PicHeightInCtbs-1,以下適用:當alf_ctb_flag[0][rx][ry]等於1時,如在條項「用於亮度樣本之寫碼樹區塊濾波程序」中所指定用於亮度樣本之寫碼樹區塊濾波程序係調用recPictureL、alfPictureL及設定為等於(rx<<CtbLog2SizeY,ry<<CtbLog2SizeY)之亮度寫碼樹區塊位置(xCtb,yCtb)作為輸入,且輸出係該經修改濾波圖像alfpictureL。
當alf_ctb_flag[1][rx][ry]等於1時,如在條項「用於色度樣本之寫碼樹區塊濾波程序」中指定之用於色度樣本之寫碼樹區塊濾波程序係調用設定為等於recPictureCb之recPicture、設定為等於alfPictureCb之alfPicture及設定為等於(rx<<(CtbLog2SizeY-1),ry<<(CtbLog2SizeY-1))之色度寫碼樹區塊位置(xCtbC,yCtbC)作為輸入,且該輸出係該經修改濾波圖像alfPictureCb。
當alf_ctb_flag[2][rx][ry]等於1時,如在條項「用於色度樣本之寫碼樹區塊濾波程序」中指定之用於色度樣本之寫碼樹區塊濾波程序係調用設定為等於recPictureCr之recPicture、設定為等於alfPictureCr之alfPicture及設定為等於(rx<<(CtbLog2SizeY-1),ry<<(CtbLog2SizeY-1))之色度寫碼樹區塊位置(xCtbC,yCtbC)作為輸入,且該輸出係該經修改濾波圖像alfPictureCr。
用於亮度樣本之寫碼樹區塊濾波程序
此程序之輸入係:在適應性迴路濾波程序之前的經重建的亮度圖像樣本陣列recPictureL、經濾波重建的亮度圖像樣本陣列alfPictureL、指定當前亮度寫碼樹區塊之左上樣本相對於當前圖像之左上樣本之亮度位置(xCtb,yCtb)。
此程序之輸出係經修改濾波重建亮度圖像樣本陣列alfPictureL。
用於濾波器指標之導出程序條項「針對亮度樣本之ALF轉置及濾波器指標之導出程序」係調用位置(xCtb, yCtb)及該經重建亮度圖像樣本陣列recPictureL作為輸入,及filtIdx[x][y]與transposeIdx[x][y]且x,y=0..CtbSizeY-1作為輸出。
針對經濾波重建亮度樣本alfPictureL[x][y]之導出,在當前亮度寫碼樹區塊recPictureL[x][y]內部中的各重建亮度樣本以如下方式且x,y=0..CtbSizeY-1濾波:對應於由filtIdx[x][y]指定之濾波器的亮度濾波器係數之陣列f[j]及亮度濾波器截波之陣列c[j]以如下方式且j=0..12導出:f[j]=AlfCoeffL[filtIdx[x][y]][j]
c[j]=AlfClipL[filtIdx[x][y]][j]
亮度濾波器係數filterCoeff及濾波器截波值filterClip係取決於transposeIdx[x][y]而被導出如下:若transposeIndex[x][y]==1,filterCoeff[ ]={f[9],f[4],f[10],f[8],f[1],f[5],f[11],f[7],f[3],f[0],f[2],f[6],f[12]}
filterClip[ ]={c[9],c[4],c[10],c[8],c[1],c[5],c[11],c[7],c[3],c[0],c[2],c[6],c[12]}
否則,若transposeIndex[x][y]==2,filterCoeff[ ]={f[0],f[3],f[2],f[1],f[8],f[7],f[6],f[5],f[4],f[9],f[10],f[11],f[12]}
filterClip[ ]={c[0],c[3],c[2],c[1],c[8],c[7],c[6],c[5],c[4],c[9],c[10],c[11],c[12]}
否則,若transposeIndex[x][y]==3,filterCoeff[ ]={f[9],f[8],f[10],f[4],f[3],f[7],f[11],f[5],f[1],f[0],f[2],f[6],f[12]}
filterClip[ ]={c[9],c[8],c[10],c[4],c[3],c[7],c[11],c[5],c[1],c[0],c[2],c[6],c[12]}
否則,filterCoeff[ ]={f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7],f[8],f[9],f[10],f[11],f[12]}
filterClip[ ]={c[0],c[1],c[2],c[3],c[4],c[5],c[6],c[7],c[8],c[9],c[10],c[11],c[12]}
針對在亮度樣本之給定陣列recPicture內部的各對應亮度樣本(x,y)的位置(hx,vy)係導出如下:hx=Clip3(0,pic_width_in_luma_samples-1,xCtb+x)
vy=Clip3(0,pic_height_in_luma_samples-1,yCtb+y)
變數curr導出如下:curr=recPictureL[hx,vy]
變數sum導出如下:sum=filterCoeff[0] * (Clip3(-filterClip[0],filterClip[0],recPictureL[hx,vy+3]-curr)+Clip3(-filterClip[0],filterClip[0],recPictureL[hx,vy-3]-curr))
+filterCoeff[1] * (Clip3(-filterClip[1],filterClip[1],recPictureL[hx+1,vy+2]-curr)+Clip3(-filterClip[1],filterClip[1],recPictureL[hx-1,vy-2]-curr))
+filterCoeff[2] * (Clip3(-filterClip[2],filterClip[2],recPictureL[hx,vy+2]-curr)+Clip3(-filterClip[2],filterClip[2],recPictureL[hx,vy-2]-curr))
+filterCoeff[3] * (Clip3(-filterClip[3],filterClip[3],recPictureL[hx-1,vy+2]-curr)+Clip3(-filterClip[3],filterClip[3],recPictureL[hx+1,vy-2]-curr))
+filterCoeff[4] * (Clip3(-filterClip[4],filterClip[4],recPictureL[hx+2,vy+1]-curr)+Clip3(-filterClip[4],filterClip[4],recPictureL[hx-2,vy-1]-curr))
+filterCoeff[5] * (Clip3(-filterClip[5],filterClip[5],recPictureL[hx+1,vy+1]-curr)+Clip3(-filterClip[5],filterClip[5],recPictureL[hx-1,vy-1]-curr))
+filterCoeff[6] * (Clip3(-filterClip[6],filterClip[6],recPictureL[hx,vy+1]-curr)+Clip3(-filterClip[6],filterClip[6],recPictureL[hx,vy-1]-curr))
+filterCoeff[7] * (Clip3(-filterClip[7],filterClip[7],recPictureL[hx-1,vy+1]-curr)+Clip3(-filterClip[7],filterClip[7],recPictureL[hx+1,vy-1]-curr))
+filterCoeff[8] * (Clip3(-filterClip[8],filterClip[8],recPictureL[hx-2,vy+1]-curr)+Clip3(-filterClip[8],filterClip[8],recPictureL[hx+2,vy-1]-curr))
+filterCoeff[9] * (Clip3(-filterClip[9],filterClip[9],recPictureL[hx+3,vy]-curr)+Clip3(-filterClip[9],filterClip[9],recPictureL[hx-3,vy]-curr))
+filterCoeff[10] * (Clip3(-filterClip[10],filterClip[10],recPictureL[hx+2,vy]-curr)+Clip3(-filterClip[10],filterClip[10],recPictureL[hx-2,vy]-curr))
+filterCoeff[11] * (Clip3(-filterClip[11],filterClip[11],recPictureL[hx+1,vy]-curr)+Clip3(-filterClip[11],filterClip[11],recPictureL[hx-1,vy]-curr))
+filterCoeff[12] * recPictureL[hx,vy]
sum=(sum+64)>>7
經修改的濾波重建亮度圖像樣本alfPictureL[xCtb+x][yCtb+y]係導出如下:alfPictureL[xCtb+x][yCtb+y]=Clip3(0,(1<<BitDepthY)-1,sum)
針對亮度樣本之ALF轉置及濾波器指標之導出程序
此程序之輸入係:指定當前亮度寫碼樹區塊之左上樣本相對於當前圖像之左上樣本之亮度位置(xCtb,yCtb)、在適應性迴路濾波程序之前的重建亮度圖像樣本陣列recPictureL。
此程序之輸出係分類濾波器指標陣列filtIdx[x][y]且x,y=0..CtbSizeY-1,轉置指標陣列transposeIdx[x][y]且x,y=0..CtbSizeY-1。
針對在亮度樣本之給定陣列recPicture內部的各對應亮度樣本(x,y)的位置(hx,vy)係導出如下:hx=Clip3(0,pic_width_in_luma_samples-1,x)
vy=Clip3(0,pic_height_in_luma_samples-1,y)
分類濾波器指標陣列filtIdx及轉置指標陣列 transposeIdx由以下依序步驟導出:
1)變數filtH[x][y]、filtV[x][y]、filtD0[x][y]及filtD1[x][y]且x,y=-2..CtbSizeY+1係導出如下:若x及y皆為偶數或x及y皆為奇數,則以下適用:filtH[x][y]=Abs((recPicture[hxCtb+x,vyCtb+y]<<1)-recPicture[hxCtb+x-1,vyCtb+y]-recPicture[hxCtb+x+1,vyCtb+y])
filtV[x][y]=Abs((recPicture[hxCtb+x,vyCtb+y]<<1)-recPicture[hxCtb+x,vyCtb+y-1]-recPicture[hxCtb+x,vyCtb+y+1])
filtD0[x][y]=Abs((recPicture[hxCtb+x,vyCtb+y]<<1)-recPicture[hxCtb+x-1,vyCtb+y-1]-recPicture[hxCtb+x+1,vyCtb+y+1])
filtD1[x][y]=Abs((recPicture[hxCtb+x,vyCtb+y]<<1)-recPicture[hxCtb+x+1,vyCtb+y-1]-recPicture[hxCtb+x-1,vyCtb+y+1])
否則,filtH[x][y],filtV[x][y],filtD0[x][y] and filtD1[x][y]設定為等於0。
2)變數varTempH1[x][y]、varTempV1[x][y]、varTempD01[x][y]、varTempD11[x][y]及varTemp[x][y]且x,y=0..(CtbSizeY-1)>>2係導出如下:sumH[x][y]=ΣiΣj filtH[(x<<2)+i][(y<<2)+j]with i,j=-2..5
sumV[x][y]=ΣiΣj filtV[(x<<2)+i][(y<<2)+j]with i,j=-2..5
sumD0[x][y]=ΣiΣj filtD0[(x<<2)+i][(y<<2)+j]with i,j=-2..5
sumD1[x][y]=ΣiΣj filtD1[(x<<2)+i][(y<<2)+j]with i,j=-2..5
sumOfHV[x][y]=sumH[x][y]+sumV[x][y]
3)變數dir1[x][y]、dir2[x][y]及dirS[x][y]且x,y=0..CtbSizeY-1係導出如下:變數hv1、hv0及dirHV係導出如下: 若sumV[x>>2][y>>2]大於sumH[x>>2][y>>2],則以下適用:hv1=sumV[x>>2][y>>2]
hv0=sumH[x>>2][y>>2]
dirHV=1
否則,以下適用:hv1=sumH[x>>2][y>>2]
hv0=sumV[x>>2][y>>2]
dirHV=3
變數d1、d0及dirD係導出如下:若sumD0[x>>2][y>>2]大於sumD1[x>>2][y>>2],則以下適用:d1=sumD0[x>>2][y>>2]
d0=sumD1[x>>2][y>>2]
dirD=0
否則,以下適用:d1=sumD1[x>>2][y>>2]
d0=sumD0[x>>2][y>>2]
dirD=2
變數hvd1、hvd0係導出如下:hvd1=(d1 * hv0>hv1 * d0)?d1:hv1
hvd0=(d1 * hv0>hv1 * d0)?d0:hv0
變數dirS[x][y]、dir1[x][y]及dir2[x][y]係導出如下: dir1[x][y]=(d1 * hv0>hv1 * d0)?dirD:dirHV
dir2[x][y]=(d1 * hv0>hv1 * d0)?dirHV:dirD
dirS[x][y]=(hvd1>2 * hvd0)?1:((hvd1 * 2>9 * hvd0)?2:0)
4)變數avgVar[x][y]且x,y=0..CtbSizeY-1係導出如下:varTab[ ]={0,1,2,2,2,2,2,3,3,3,3,3,3,3,3,4}
avgVar[x][y]=varTab[Clip3(0,15,(sumOfHV[x>>2][y>>2] * 64)>>(3+BitDepthY))]
5)分類濾波器指標陣列filtIdx[x][y]及轉置指標陣列transposeIdx[x][y]且x=y=0..CtbSizeY-1係導出如下:transposeTable[ ]={0,1,0,2,2,3,1,3}
transposeIdx[x][y]=transposeTable[dir1[x][y] * 2+(dir2[x][y]>>1)]
filtIdx[x][y]=avgVar[x][y]
當dirS[x][y]不等於0時,filtIdx[x][y]被修改如下:filtIdx[x][y]+=(((dir1[x][y] & 0x1)<<1)+dirS[x][y]) * 5
用於色度樣本之寫碼樹區塊濾波程序
此程序之輸入係:在適應性迴路濾波程序之前的重建色度圖像樣本陣列recPictureL、濾波重建色度圖像樣本陣列alfPictureL、指定當前色度寫碼樹區塊之左上樣本相對於當前圖像之左上樣本之色度位置(xCtbC,yCtbC)。
此程序之輸出係經修改濾波重建色度圖像樣本陣列alfPicture。
當前色度寫碼樹區塊之大小ctbSizeC係導出如下:ctbSizeC=CtbSizeY/SubWidthC
針對經濾波重建色度樣本alfPicture[x][y]之導出,在當前色度寫碼樹區塊recPicture[x][y]內部中的各重建色度樣本以如下方式且x,y=0..ctbSizeC-1濾波:針對在色度樣本之給定陣列recPicture內部的各對應色度樣本(x,y)的位置(hx,vy)係導出如下:hx=Clip3(0,pic_width_in_luma_samples/SubWidthC-1,xCtbC+x)
vy=Clip3(0,pic_height_in_luma_samples/SubHeightC-1,yCtbC+y)
變數curr導出如下:curr=recPicture[hx,vy]
變數sum導出如下:sum=AlfCoeffC[0] * (Clip3(-AlfClipC[0],AlfClipC[0],recPicture[hx,vy+2]-curr)+Clip3(-AlfClipC[0],AlfClipC[0],recPieture[hx,vy-2]-curr))
+AlfCoeffC[1] * (Clip3(-AlfClipC[1],AlfClipC[1],recPicture[hx+1,vy+1]-curr)+Clip3(-AlfClipC[1],AlfClipC[1],recPicture[hx-1,vy-1]-curr))
+AlfCoeffC[2] * (Clip3(-AlfClipC[2],AlfClipC[2],recPicture[hx,vy+1]-curr)+Clip3(-AlfClipC[2],AlfClipC[2],recPicture[hx,vy-1]-curr))
+AlfCoeffC[3] * (Clip3(-AlfClipC[3],AlfClipC[3],recPicture[hx-1,vy+1]-curr)+Clip3(-AlfClipC[3],AlfClipC[3],recPicture[hx+1,vy-1]-curr))
+AlfCoeffC[4] * (Clip3(-AlfClipC[4],AlfClipC[4],recPicture[hx+2,vy]-curr)+Clip3(-AlfClipC[4],AlfClipC[4],recPicture[hx-2,vy]-curr))
+AlfCoeffC[5] * (Clip3(-AlfClipC[5],AlfClipC[5],recPicture[hx+1,vy]-curr)+Clip3(-AlfClipC[5],AlfClipC[5],recPicture[hx-1,vy]-curr))
+AlfCoeffC[6] * recPicture[hx,vy]
sum=(sum+64)>>7
經修改的濾波重建色度圖像樣本alfPicture[xCtbC+ x][yCtbC+y]係導出如下:alfPicture[xCtbC+x][yCtbC+y]=Clip3(0,(1<<BitDepthC)-1,sum)
在上述變體中,截波操作被應用至相鄰樣本與經濾波樣本之間的差異(亦即,使用方程式(7))。在使用方程式(9)之另一變體中,其語意及濾波程序係經修改如下(基於上述變體之語意及濾波程序來修改):AlfCoeffL[filtIdx][12]將導出為:AlfCoeffL[filtIdx][12]=128-Σk(AlfCoeffL[filtIdx][k]<<1),且k=0..11
AlfCoeffC[6]將被導出為:AlfCoeffC[6]=128-Σk(AlfCoeffC[k]<<1),且k=0..5
對AlfCoeffL[filtIdx][12]及AlfCoeffC[6]之位元深度的限制(它們應在0至2^8-1(含)之範圍內)被放鬆至0至2^9-1的範圍或甚至0至2^10-1的範圍以獲得較佳的濾波效能。
這是因為就截波操作而言,其通常會發生與相鄰樣本位置關聯之係數針對較佳效率而言係太高(絕對值)(因為濾波器輸入樣本更可靠,亦即,更能夠提供較佳的濾波,一旦已應用非線性函數)。因此,經常會發生這些係數之總和(所以,未包含中心係數)係低於-128(以固定點表示),使得中心係數必須高於256(以固定點表示)。因此,將中心係數限制在正規範圍0至2^8-1係暗示該編碼器必須藉由降低其動態/幅度來找出次佳係數,導致較不具效率的濾波。藉由對中心係數使用10位元精度之正規範圍 (亦即,0至2^10-1的範圍),相較於8位元精度而言,該編碼器必須使用次佳濾波器係數的情況係少很多,且因此可增進整體濾波品質。針對ALF線性濾波,將中心係數限制在8位元並不會影響濾波器效率太多,因為相鄰濾波器輸入樣本通常具有較小權重(亦即,較小係數)。而就截波而言,亦即,ALF非線性濾波,最佳濾波器可能給予相鄰樣本更多權重,其一旦被截波會更可靠。
在「用於亮度樣本之寫碼樹區塊濾波程序」的變數sum係導出如下: sum=filterCoeff[0] * (Clip3(curr-filterClip[0],curr+filterClip[0],recPictureL[hx,vy+3])+Clip3(curr-filterClip[0],curr+filterClip[0],recPictureL[hx,vy-3]))
+filterCoeff[1] * (Clip3(curr-filterClip[1],curr+filterClip[1],recPictureL[hx+1,vy+2])+Clip3(curr-filterClip[1],curr+filterClip[1],recPictureL[hx-1,vy-2]))
+filterCoeff[2] * (Clip3(curr-filterClip[2],curr+filterClip[2],recPictureL[hx,vy+2])+Clip3(curr-filterClip[2],curr+filterClip[2],recPictureL[hx,vy-2]))
+filterCoeff[3] * (Clip3(curr-filterClip[3],curr+filterClip[3],recPictureL[hx-1,vy+2])+Clip3(curr-filterClip[3],curr+filterClip[3],recPictureL[hx+1,vy-2]))
+filterCoeff[4] * (Clip3(curr-filterClip[4],curr+filterClip[4],recPictureL[hx+2,vy+1])+Clip3(curr-filterClip[4],curr+filterClip[4],recPictureL[hx-2,vy-1]))
+filterCoeff[5] * (Clip3(curr-filterClip[5],curr+filterClip[5],recPictureL[hx+1,vy+1])+Clip3(curr-filterClip[5],curr+filterClip[5],recPictureL[hx-1,vy-1]))
+filterCoeff[6] * (Clip3(curr-filterClip[6],curr+filterClip[6],recPictureL[hx,vy+1])+Clip3(curr-filterClip[6],curr+filterClip[6],recPictureL[hx,vy-1]))
+filterCoeff[7] * (Clip3(curr-filterClip[7],curr+filterClip[7],recPictureL[hx-1,vy+1])+Clip3(curr-filterClip[7],curr+filterClip[7],recPictureL[hx+1,vy-1]))
+filterCoeff[8] * (Clip3(curr-filterClip[8],curr+filterClip[8],recPictureL[hx-2,vy+1])+Clip3(curr-filterClip[8],curr+filterClip[8],recPictureL[hx+2,vy-1]))
+filterCoeff[9] * (Clip3(curr-filterClip[9],curr+filterClip[9],recPictureL[hx+3,vy])+Clip3(curr-filterClip[9],curr+filterClip[9],recPictureL[hx-3,vy]))
+filterCoeff[10] * (Clip3(curr-filterClip[10],curr+filterClip[10],recPictureL[hx+2,vy])+Clip3(curr-filterClip[10],curr+filterClip[10],recPictureL[hx-2,vy]))
+filterCoeff[11] * (Clip3(curr-filterClip[11],curr+filterClip[11],recPictureL[hx+1,vy])+Clip3(curr-filterClip[11],curr+filterClip[11],recPictureL[hx-1,vy]))
+filterCoeff[12] * recPictureL[hx,vy]
sum=(sum+64)>>7
在「用於色度樣本之寫碼樹區塊濾波程序」的變數sum係導出如下:sum=AlfCoeffC[0] * (Clip3(curr-AlfClipC[0],curr+AlfClipC[0],recPicture[hx,vy+2])+Clip3(curr-AlfClipC[0],AlfClipC[0],recPicture[hx,vy-2]))
+AlfCoeffC[1] * (Clip3(curr-AlfClipC[1],curr+AlfClipC[1],recPicture[hx+1,vy+1])+Clip3(curr-AlfClipC[1],curr+AlfClipC[1],recPicture[hx-1,vy-1]))
+AlfCoeffC[2] * (Clip3(curr-AlfClipC[2],curr+AlfClipC[2],recPicture[hx,vy+1])+Clip3(curr-AlfClipC[2],curr+AlfClipC[2],recPicture[hx,vy-1]))
+AlfCoeffC[3] * (Clip3(curr-AlfClipC[3],curr+AlfClipC[3],recPicture[hx-1,vy+1])+Clip3(curr-AlfClipC[3],curr+AlfClipC[3],recPicture[hx+1,vy-1]))
+AlfCoeffC[4] * (Clip3(curr-AlfClipC[4],curr+AlfClipC[4],recPicture[hx+2,vy])+Clip3(curr-AlfClipC[4],curr+AlfClipC[4],recPicture[hx-2,vy]))
+AlfCoeffC[5] * (Clip3(curr-AlfClipC[5],curr+AlfClipC[5],recPicture[hx+1,vy])+Clip3(curr-AlfClipC[5],curr+AlfClipC[5],recPicture[hx-1,vy]))
+AlfCoeffC[6] * recPicture[hx,vy]
sum=(sum+64)>>7
在針對亮度濾波器使用5x5菱形濾波器形狀(為了降低用於應用ALF所需要之緩衝器線的數目)的另一變體中,其亦使用應用至相鄰樣本值與中心樣本值之間的差異的截波,表4之非線性ALF資料語法經修改如下(對先前呈現的ALF資料語法所作的改變係加底線或粗體,且重複部分予以省略(若有)):
Figure 108143684-A0305-02-0096-38
用於亮度濾波器之ALF係數的數目變成13且因此最後係數濾波器初始化程序變成:針對filtIdx=0..NumAlfFilters-1之最後濾波器係數AlfCoeffL[filtIdx][6]係導出如下:AlfCoeffL[filtIdx][ 6 ]=128
對於位元流一致性之一要求在於AlfCoeffL[filtIdx][j]且filtIdx=0..NumAlfFilters-1,j=0..11之值應在-2^7至2^7-1(含)的範圍內,且AlfCoeffL[filtIdx][6]之值應在0至2^8-1(含)的範圍內。
對於「用於亮度樣本之寫碼樹區塊濾波程序」,針對濾波器指標之導出程序條項「用於亮度樣本之ALF轉置及濾波器指標的導出程序」經修改如下(對先前呈現的ALF資料語法所作的改變係加底線且用粗體,且重複部分予以省略(若有)): 用於濾波器指標之導出程序條項「用於亮度樣本之ALF轉置及濾波器指標的導出程序」係調用位置(xCtb,yCtb)及重建亮度圖像樣本陣列recPictureL作為輸入,且filtIdx[x][y]與transposeIdx[x][y]且x,y=0..CtbSizeY-1作為輸出。
針對濾波重建亮度樣本alfPictureL[x][y]之導出,在當前亮度寫碼樹區塊recPictureL[x][y]內部的各重建亮度樣本係以如下方式且x,y=0..CtbSizeY-1濾波:對應於由filtIdx[x][y]指定之濾波器的亮度濾波器係數之陣列f[j]及亮度濾波器截波之陣列c[j]係以如下方式 且j=0..6導出:f[j]=AlfCoeffL[filtIdx[x][y]][j]
c[j]=AlfClipL[filtIdx[x][y]][j]
亮度濾波器係數filterCoeff及濾波器截波值filterClip係取決於transposeIdx[x][y]導出如下:若transposeIndex[x][y]==1,filterCoeff[ ]= {f[4],f[1],f[5],f[3],f[0],f[2],f[6]}
filterClip[ ]= {c[4],c[1],c[5],c[3],c[0],c[2],c[6]}
否則,若transposeIndex[x][y]==2,filterCoeff[ ]= {f[0],f[3],f[2],f[1],f[4],f[5],f[6]}
filterClip[ ]= {c[0],c[3],c[2],c[1],c[4],c[5],c[6]}
否則,若transposeIndex[x][y]==3,filterCoeff[ ]= {f[4],f[3],f[5],f[1],f[0],f[2],f[6]}
filterClip[ ]= {c[4],c[3],c[5],c[1],c[0],c[2],c[6]}
否則,filterCoeff[ ]= {f[0],f[1],f[2],f[3],f[4],f[5],f[6]}
filterClip[ ]= {c[0],c[1],c[2],c[3],c[4],c[5],c[6]}
針對在亮度樣本之給定陣列recPicture內部的各對應亮度樣本(x,y)的位置(hx,vy)係導出如下:hx=Clip3(0,pic_width_in_luma_samples-1,xCtb+x)
vy=Clip3(0,pic_height_in_luma_samples-1,yCtb+y)
變數curr導出如下:curr=recPictureL[hx,vy]
變數sum導出如下: sum=filterCoeff[0] * (Clip3(-filterClip[0],filterClip[0],recPictureL[hx,vy+ 2 ]-curr)+Clip3(-filterClip[0],filterClip[0],recPictureL[hx,vy- 2 ]-curr))
+filterCoeff[1] * (Clip3(-filterClip[1],filterClip[1],recPictureL[hx+1,vy+ 1 ]-curr)+Clip3(-filterClip[1],filterClip[1],recPictureL[hx-1,vy- 1 ]-curr))
+filterCoeff[2] * (Clip3(-filterClip[2],filterClip[2],recPictureL[hx,vy+ 1 ]-curr)+Clip3(-filterClip[2],filterClip[2],recPictureL[hx,vy- 1 ]-curr))
+filterCoeff[3] * (Clip3(-filterClip[3],filterClip[3],recPictureL[hx-1,vy+ 1 ]-curr)+Clip3(-filterClip[3],filterClip[3],recPictureL[hx+1,vy- 1 ]-curr))
+filterCoeff[ 4 ] * (Clip3(-filterClip[ 4 ],filterClip[ 4 ],recPictureL[hx+2,vy]-curr)+Clip3(-filterClip[ 4 ],filterClip[ 4 ],recPictureL[hx-2,vy]-curr))
+filterCoeff[ 5 ] * (Clip3(-filterClip[ 5 ],filterClip[ 5 ],recPictureL[hx+1,vy]-curr)+Clip3(-filterClip[ 5 ],filterClip[ 5 ],recPictureL[hx-1,vy]-curr))
+filterCoeff[ 6 ] * recPictureL[hx,vy]
sum=(sum+64)>>7
該經修改濾波重建亮度圖像樣本alfPictureL[xCtb+x][yCtb+y]係導出如下:alfPictureL[xCtb+x][yCtb+y]=Clip3(0,(1<<BitDepthY)-1,sum)
在未使用相鄰者與中心之間之差異的變體中,使用AlfCoeffL[filtIdx][6]=128-Σk(AlfCoeffL[filtIdx][k]<<1)且k=0..5。針對該濾波,對在該濾波中之截波參數亦作類似的改變。
在另一變體中,針對濾波器使用7x7菱形形狀但針對亮度濾波器使用圖16-a之截波圖案1601,且針對色度濾波器使用圖16-b之截波圖案1605,表4之非線性ALF資料語法係經修改如下(對先前呈現的表4之ALF資料語法所作的改變係加底線且用粗體,且重複部分予以省略(若有)):
Figure 108143684-A0305-02-0100-39
AlfClipPatL[ ]係用於亮度濾波器之恆定截波圖案表且設定如下:AlfClipPatL[ ]={0,0,1,0,0,0,1,0,0,0,1,1}
AlfClipPatC[ ]係用於色度濾波器之恆定截波圖案表且設定如下:AlfClipPatC[ ]={1,1,0,1,1,0}
語意之部分係經修改如下: 在「用於亮度樣本之寫碼樹區塊濾波程序」之變數sum係導出如下:sum=filterCoeff[0] * (recPictureL[hx,vy+3]-curr+recPictureL[hx,vy-3]-curr)
+filterCoeff[1] * (recPictureL[hx+1,vy+2]-curr)+recPictureL[hx-1,vy-2]-curr)
+filterCoeff[2] * (Clip3(-filterClip[2],filterClip[2],recPictureL[hx,vy+2]-curr)+Clip3(-filterClip[2],filterClip[2],recPictureL[hx,vy-2]-curr))
+filterCoeff[3] * (recPictureL[hx-1,vy+2]-curr+recPictureL[hx+1,vy-2]-curr)
+filterCoeff[4] * (recPictureL[hx+2,vy+1]-curr+recPictureL[hx-2,vy-1]-curr)
+filterCoeff[5] * (recPictureL[hx+1,vy+1]-curr+recPictureL[hx-1,vy-1]-curr)
+filterCoeff[6] * (Clip3(-filterClip[6],filterClip[6],recPictureL[hx,vy+1]-curr)+Clip3(-filterClip[6],filterClip[6],recPictureL[hx,vy-1]-curr))
+filterCoeff[7] * (recPictureL[hx-1,vy+1]-curr+recPictureL[hx+1,vy-1]-curr)
+filterCoeff[8] * (recPictureL[hx-2,vy+1]-curr+recPictureL[hx+2,vy-1]-curr)
+filterCoeff[9] * (recPictureL[hx+3,vy]-curr)+recPictureL[hx-3,vy]-curr)
+filterCoeff[10] * (Clip3(-filterClip[10],filterClip[10],recPictureL[hx+2,vy]-curr)+Clip3(-filterClip[10],filterClip[10],recPictureL[hx-2,vy]-curr))
+filterCoeff[11] * (Clip3(-filterClip[11],filterClip[11],recPictureL[hx+1,vy]-curr)+Clip3(-filterClip[11],filterClip[11],recPictureL[hx-1,vy]-curr))
+filterCoeff[12] * recPictureL[hx,vy]
sum=(sum+64)>>7
在「用於色度樣本之寫碼樹區塊濾波程序」之變數sum係導出如下: sum=AlfCoeffC[0] * (Clip3(-AlfClipC[0],AlfClipC[0],recPicture[hx,vy+2]-curr)+Clip3(-AlfClipC[0],AlfClipC[0],recPicture[hx,vy-2]-curr))
+AlfCoeffC[1] * (Clip3(-AlfClipC[1],AlfClipC[1],recPicture[hx+1,vy+1]-curr)+Clip3(-AlfClipC[1],AlfClipC[1],recPicture[hx-1,vy-1]-curr))
+AlfCoeffC[2] * (recPicture[hx,vy+1]-curr+recPicture[hx,vy-1]-curr)
+AlfCoeffC[3] * (Clip3(-AlfClipC[3],AlfClipC[3],recPicture[hx-1,vy+1]-curr)+Clip3(-AlfClipC[3],AlfClipC[3],recPicture[hx+1,vy-1]-curr))
+AlfCoeffC[4] * (Clip3(-AlfClipC[4],AlfClipC[4],recPicture[hx+2,vy]-curr)+Clip3(-AlfClipC[4],AlfClipC[4],recPicture[hx-2,vy]-curr))
+AlfCoeffC[5] * (recPicture[hx+1,vy]-curr+recPicture[hx-1,vy]-curr)
+AlfCoeffC[6] * recPicture[hx,vy]
應理解使用其他截波圖案之其他變體可容易地從上述變體中導出,以及使用縮減數目之截波(亦即,減少截波位置之數目,例如,針對亮度分量,沒有截波被應用至當前(中心)樣本值“curr”,使得沒有“f[12]”、沒有“c[12]”、沒有“filterCoeff[12]”及“sum=curr+((sum+64)>>7)”,如在方程式(17)及圖7中)及/或未使用相鄰樣本與中心樣本之間之差異的其他變體。
圖8係根據本發明之一實施例當圖7中之濾波器之非線性部分被停用時獲得之線性濾波器的方塊圖。依照一實施例,當ALF係作用中且非線性ALF係非作用中時,線性ALF被用於濾波。在此一實施例的一變體中,使用如方程式(7)所定義且在圖7中所繪示之非線性ALF,取代使用如方程式(4)所定義且在圖6中所繪示之線性ALF,線性濾波係如方程式(6)所定義且繪示在圖8中來執行。在一硬體設計中,其可在非線性與線性濾波器之間共用一共同電路部 分。當比較圖7及圖8時,最小/最大操作恰被略過,直接進行至樣本值。使用此手段之另一優點係在於當編碼器設計其濾波器時,其不必確保各濾波器之所有濾波器係數的總和為1。此一設計之結果在於吾人對每係數增加一減法,除了當前樣本以外,且吾人針對當前樣本移除一個乘法。
當截波參數可採用之最大值係相當低時,圖7之設計亦具有節省用於實施乘法之硬體位元的優點。
依照一實施例,在圖5中之切片標頭中傳訊之ALF的語法元素並不再於該切片標頭中傳訊,而是在例如圖像標頭中之圖框級中傳訊。接著,在切片標頭中,具有一或多個旗標/語法元素以傳訊在圖框級處提供之參數被直接使用在該切片中;或者在圖框級處提供之參數必須在切片級處被「刷新」(亦即,更新)。在切片級處之刷新係在切片標頭中完成。濾波器係數及/或截波參數之刷新係藉由編碼在圖框級處指示之值與使用在切片中之值之間的差異來完成。依照一實施例,在切片標頭中之額外語法元素指示該濾波器係數及/或截波參數之值在切片標頭中是否被編碼為一差異,或是否它們的值被編碼。
依照一實施例,在切片級處(在切片標頭中)定義的濾波器係數及/或截波參數能以更細的粒度程度來更新(例如,針對每個CTU)。指示該更新是否必須執行之語法元素係在切片資料中的熵寫碼,且當該語法元素指示該更新必須執行時更新資料。在一實施例,在編碼位元流中,針 對每個CTU,該編碼切片資料包含一熵寫碼旗標,其指示該亮度濾波器/截波參數是否必須被更新。若該旗標指示該更新應完成,針對每個濾波器係數表,一熵寫碼旗標指示該濾波器是否必須被更新。若該濾波器必須被更新,針對該係數之偏移(與在切片中之參考值的差異或替代地與在同一切片中之前一已編碼CTU中之參考值的差異)及/或針對該截波參數之偏移被熵寫碼。
依照一實施例,從編碼器的觀點而言,保留參考圖9所描述之VTM-3.0之ALF編碼程序的主要邏輯步驟。主要的改變係被擷取用以建立濾波器之統計性質,以及判定該濾波器的方法。取代簡單維納濾波器運算,截波參數被反覆地最佳化以找出最佳截波參數及關聯的非線性維納濾波器係數。
依照一實施例,吾人定義N K ,對一個截波參數可採用之值的數目的限制。N K 可以很小,例如N K =12或甚至更少。取代運算協方差及互協方差矩陣統計,在步驟902中,該編碼器建立N K ×N K 之雙條項表E截波協方差矩陣統計及N K 之單條項表y截波互協方差矩陣統計(取代一個協方差矩陣統計及一個互協方差矩陣統計)。
該截波協方差矩陣E c [a][b]係從
Figure 108143684-A0305-02-0104-40
X a
Figure 108143684-A0305-02-0104-58
估計之協方差矩 陣,其中當使用第C m 個截波值時X m 包含該輸入之N個實現 值(觀察值)。例如,使用圖4-b之形狀,
Figure 108143684-A0305-02-0104-41
係針對一給定 樣本位置獲得之X m 的第i行,且
Figure 108143684-A0305-02-0104-42
包含:針對i<N c (針對圖 4-b之亮度濾波器之N c =12係濾波器係數之數目減1),針對 在該形狀中之具有指標i之兩個對稱相鄰者,在(第j個濾波樣本之)相鄰樣本與使用第m個截波值之第j個濾波樣本之間的差異之截波結果之總和;及針對i=12,該第j個濾波 樣本;其中
Figure 108143684-A0305-02-0105-43
係在矩陣X m 中之列i及行j處的值。
該截波互協方差矩陣y c [c]係在所要的濾波器輸出之實現值(亦即,原始樣本)及X c 之實現值之間的互協方差矩陣。
因此,當吾人需要建立/測試使用截波參數等於 c 0,...,
Figure 108143684-A0305-02-0105-45
之濾波器時,吾人定義
Figure 108143684-A0305-02-0105-44
(例如,針 對亮度濾波器N c =12係濾波器係數之數目減1,最後值等於零係方便的,可使用另一值且將具有相同結果,因為中心係數12未被截波)。吾人運算協方差矩陣E及互協方差矩陣y這些截波參數使得E[i,j]=E c [c[i]][c[j]][i,j]針對每個i<N c ,j<N c y[k]=y c [c[k]][k]針對每個k<N c 。接著,吾人建立使用這兩個矩陣之維納濾波器,如上文針對線性ALF所闡述的。
在步驟904中,取代組合協方差及互協方差矩陣之統計,編碼器組合各截波協方差及截波互協方差矩陣(在此同樣地,該組合係藉由加總該統計而完成)。
在步驟905中,用以找出濾波器之最佳化群組(亦即,最佳化合併濾波器)之方式係類似於先前所述。主要的差異在於針對每個測試/比較濾波器,取代僅運算一個維納濾波器,該截波參數被反覆地最佳化,各步驟針對特定截波參數運算一維納濾波器,以最小化該濾波器之輸出誤差 (在統計矩陣上的運算)。一簡單最佳化演算法係由將所有的截波參數值(c i )設定為零開始(或替代地設為中間截波值或任何預設值),接著進行在迴路中之後續步驟同時改良該濾波器(亦即,其降低輸出誤差):針對各截波參數值採用下一個截波參數值,若可得/允許(亦即,指標<最大指標值),若用此截波參數值運算之維納濾波器係較佳的,或採用前一個截波參數值,若可得/允許(亦即,指標>0),若用此截波參數值運算之維納濾波器係較佳的。當分組兩個濾波器時,可開始最佳化的一個策略係將各截波參數值設定為該兩濾波器之各截波參數值的平均。
對步驟906、907、908、909、910及911並未有實際改變。
在步驟912中,組合的統計改變係與針對步驟904所描述的相同。在步驟913中對色度濾波器的判定對應於針對步驟905描述之濾波器最佳化。其他的步驟並未改變,除了步驟918,其中ALF參數包含針對各濾波器判定之截波參數。
應注意在VTM-3.0中的「正規」ALF,當編碼器從浮動點值導出整數濾波器係數,其首先執行將浮動點值量化成固定點值:針對每個濾波器係數,其將濾波器係數乘以固定點精度捨入成最接近的整數值。接著,其嘗試藉由反覆地調整濾波器係數來改良濾波器效率(以針對捨入誤差來補償)。編碼器亦必須確保所有的濾波器係數之總和等於1(乘以固定點精度),且其中針對中心樣本的濾波器係 數不超過最大值(以確保其在乘法中的使用不會造成使用太多位元)。
就其中具有相鄰樣本之差異被使用作為濾波器之輸入的本發明實施例而言,由於中心係數永遠為1,因此不需要確保其不會超過最大值。再者,不需要經常追蹤所有濾波器係數之總和值。
這些實施例之優點係寫碼效率改良。
這些實施例之描述提供亮度及色度分量,但其可容易地調適用於其他分量,諸如單一亮度分量或RGB分量。
在前述實施例或變體中,本發明導致修改在圖3-a及圖4-a之304及407中之濾波以對濾波器輸入使用非線性函數來獲得非線性濾波效果。圖2亦經修改以增加新的語法元素用於傳訊用於非線性函數之額外參數(實施例之一實例係參考圖5描述)。暗示地,在302及402中之輸入濾波參數係經修改以進一步包含用於非線性函數之額外參數。最後,在303及406中之濾波器導出係經修改以導出用於濾波器之非線性函數(亦即,用以導出「非線性濾波器」)。因此,在大部分情況中,輸出影像部分305及408與在VTM-3.0中所產生的並不相同且針對等效/相當的輸入樣本具有較高品質及/或達成在輸出影像品質與寫碼效率之間的較佳折衷。應理解在另一實施例/變體中,該ALF本身經修改使得其對使用上述非線性函數的濾波器來操作。
本發明之實施例的實施方案
前述實施例之一或多者可以編碼器或解碼器之形式實施,其執行一或多個前述實施例之方法步驟。以下實施例繪示此等實施方案。
例如,依照任一前述實施例之適應性迴路濾波器可被使用在由圖10中之編碼器執行的後置濾波9415或由在圖11中之解碼器執行的後置濾波9567。
圖10繪示根據本發明之一實施例之編碼器的方塊圖。該編碼器係由連接的模組所表示,各模組被調適以實施(例如,以欲由一裝置之中央處理單元(CPU)執行之程式化指令的形式)一方法之至少一個對應步驟,該方法實施依照本發明之一或多個實施例之編碼一序列影像之影像的至少一個實施例。
藉由編碼器9400接收原始序列的數位影像i0至in 9401作為輸入。每個數位影像由一組樣本表示,有時亦稱為像素(在下文中,它們被稱之為像素)。在編碼程序之實施方案之後由編碼器9400輸出位元流9410。位元流9410包括用於複數個編碼單元或影像部分(諸如切片)之資料,各切片包括用於傳輸用以編碼該切片及切片體之編碼參數之編碼值的切片標頭,包括經編碼的視訊資料。
輸入數位影像i0至in 9401藉由模組9402而分割成像素區塊。該區塊對應於影像部分且可以係可變大小的(例如,4x4、8x8、16x16、32x32、64x64、128x128像素且亦可考慮幾個矩形區塊大小)。針對每個輸入區塊選擇一寫碼模式。提供寫碼模式之兩個類族:基於空間預測寫碼之 寫碼模式(圖框內預測),及基於時間預測之寫碼模式(圖框間寫碼、MERGE、SKIP)。這些可行的寫碼模式係經測試。
模組9403實施一圖框內預測程序,其中待編碼之給定區塊係藉由從該待編碼區塊之相鄰者之像素運算之預測子所預測。該選定之圖框內預測子之一指示及在給定區塊及其預測子之間的差異被編碼以提供一殘差(若選擇圖框內寫碼)。
時間預測係藉由運動估計模組9404及運動補償模組9405實施。首先從一組參考影像9416中選擇一參考影像,且藉由運動估計模組9404選擇該參考影像之一部分(亦稱為參考區域或影像部分),其係待編碼之給定區塊的最接近區域(就像素值相似性而言的最接近)。運動補償模組9405接著使用該選定區域預測待編碼區塊。該選擇的參考區域與給定區塊之間的差異(亦稱為殘差區塊/資料)係藉由運動補償模組9405運算。該所選擇的參考區域係使用一運動資訊(例如,一運動向量)來指示。
因此,在兩情況中(空間及時間預測),殘差係藉由從原始區塊減去預測子而運算,當其未在SKIP模式中。
在藉由模組9403實施之圖框內預測中,預測方向被編碼。在由模組9404、9405、9416、9418、9417所實施之圖框間預測中,用於識別此運動向量之至少一個運動向量或資訊(資料)針對時間預測被編碼。若選擇圖框間預測,則編碼與運動向量及殘差區塊相關的資訊。為了進一步降低 位元率,假設該運動係同質性的,該運動向量藉由相對於運動向量預測子的差異而編碼。來自一組運動資訊預測子候選者的運動向量預測因子係藉由一運動向量預測及寫碼模組9417而從運動向量場9418獲得。
編碼器9400進一步包括用於藉由應用編碼成本準則(諸如速率-失真準則)來選擇寫碼模式之選擇模組9406。為了進一步降低冗餘,藉由轉換模組9407對該殘差區塊應用一轉換(諸如DCT),且所獲得之該經轉換資料接著藉由一量化模組9408予以量化且藉由一熵編碼模組9409予以熵編碼。最後,當其未在SKIP模式中且所選擇的寫碼模式需要殘差區塊之編碼時,正被編碼之當前區塊之經編碼殘差區塊被插入至位元流9410中。
編碼器9400亦執行編碼影像之解碼以針對隨後的影像之運動估計來產生參考影像(例如,在參考影像/圖像9416中的那些)。這使得編碼器及一解碼器接收該位元流以具有相同的參考圖框(例如,使用經重建影像或經重建影像部分)。反量化(「解量化」)模組9411執行經量化資料之反量化(「解量化」),其接著進行由反轉換模組9412執行之反轉換。一圖框內預測模組9413使用預測資訊來判定針對給定區塊來使用哪個預測子且一運動補償模組9414實際上將藉由模組9412獲得之殘差添加至從該組參考影像9416獲得之參考區域。後置濾波接著由一模組9415來將像素之該經重建圖框(影像或影像部分)施加至濾波器以獲得用於該組參考影像9416之另一參考影像。
圖11繪示依照本發明之一實施例之解碼器9560之方塊圖,其可被用以接收來自於編碼器之資料。該解碼器由連接的模組所表示,各模組被調適以實施(例如,以欲藉由裝置之CPU執行之程式化指令的形式)由該解碼器9560實施之方法的一對應步驟。
解碼器9560接收包括經編碼單元(例如,對應於影像部分、區塊或寫碼單元之資料)之位元流9561,各編碼單元由包含在編碼參數上之資訊之標頭及包含該經編碼視訊資料之本體組成。如針對圖10所闡述,該經編碼視訊資料係熵寫碼,且針對一給定影像部分(例如,一區塊或一CU)該運動資訊(例如,運動向量預測因子的指標)在預定數目之位元上被編碼。所接收的經編碼視訊資料係由一模組9562予以熵解碼。該殘差資料接著藉由模組9563予以解量化且接著由模組9564應用反轉換以獲得像素值。
指示寫碼模式之模式資料亦被熵解碼且基於該模式,對影像資料之該經編碼區塊(單元/集合/群組)執行圖框內型解碼或圖框間型解碼。在圖框內模式的例子中,一圖框內預測子藉由圖框內預測模組9565基於在位元流中指定的圖框內預測模式而判定(例如,圖框內預測模式係可利用在位元流中提供之資料來判定)。若模式係框間模式,則從位元流擷取/獲得運動預測資訊以找出(識別)由編碼器所使用之參考區域。該運動預測資訊包括例如參考圖框指標及運動向量殘差。運動向量預測子藉由運動向量解碼模組9570添加至運動向量殘差以獲得運動向量。
運動向量解碼模組9570針對藉由運動預測編碼之各影像部分(例如,當前區塊或CU)應用運動向量解碼。一旦已獲得用於當前區塊之運動向量預測子之指標,與影像部分(例如,當前區塊或CU)相關聯之運動向量之實際值可被解碼且用以藉由模組9566來應用運動補償。藉由經解碼的運動向量指示之參考影像部分係從一組參考影像9568擷取/獲得,使得模組9566可執行該運動補償。運動向量場資料9571用該經解碼的運動向量更新以被使用於隨後解碼運動向量之預測。
最後,獲得一經解碼區塊。在合適的情況下,可藉由後置濾波模組9567來應用後置濾波。最後可獲得且由解碼器9560提供一解碼視訊信號9569。
圖12繪示資料通信系統,其中可實施本發明之一或多個實施例。該資料通信系統包括一傳輸裝置,在此例中係一伺服器9201,其在操作上可經由一資料通信網路9200傳輸資料流9204之資料封包至一接收裝置(在此例中為用戶終端9202)。該資料通信網路9200可以係廣域網路(WAN)或區域網路(LAN)。此一網路可例如為無線網路(Wifi/802.11a或b或g)、乙太網路、網際網路或由幾種不同網路組成之混合網路。在本發明之一特定實施例中,資料通信系統可為數位電視廣播系統,其中該伺服器9201發送相同的資料內容至多個用戶。
由伺服器9201提供的該資料流9204可由呈現視訊及音訊資料之多媒體資料組成。在本發明之一些實施例中,音 訊及視訊資料流可由伺服器9201分別利用麥克風及相機來擷取。在一些實施例中,資料流可被儲存在伺服器9201上或由伺服器9201從另一資料提供者接收,或在伺服器9201處產生。該伺服器9201具有用於編碼視訊及音訊流之編碼器,以特別提供一壓縮位元流來傳輸,其係被呈現為編碼器之輸入的資料之更緊湊表示。為了獲得傳輸資料之品質對傳輸資料之數量的較佳比率,視訊資料之壓縮可例如依照高效率視訊寫碼(HEVC)格式或H.264/先進視訊寫碼(AVC)格式或標準通用視訊寫碼(VVC)格式。用戶9202接收經傳輸位元流且解碼經重建位元流以在顯示裝置上再生視訊影像或藉由揚聲器再生音訊資料。
儘管在此實施例中考慮串流方案,然而可理解的是,在本發明之一些實施例中,在編碼器與解碼器之間的資料通信可利用例如諸如光碟之媒體儲存裝置來執行。在本發明之一或多個實施例中,視訊影像可用表示對影像之重建像素之應用的補償偏移之資料來傳輸以在最終影像中提供經濾波像素。
圖13示意性繪示被組態用以實施本發明之至少一個實施例的處理裝置9300。處理裝置9300可為諸如微電腦、工作站、使用者終端或輕型可攜式裝置的裝置。裝置/設備9300包括一通信匯流排9313,其連接至:中央處理單元9311,諸如微處理器,標記為CPU;唯讀記憶體9307,標記為ROM,用於儲存用於操作該裝置9300及/或實施本發明之電腦程式/指令; 隨機存取記憶體9312,標記為RAM,用於儲存本發明之實施例之方法的可執行碼,以及被調適以記錄用於依照本發明實施例實施編碼一序列數位影像之方法及/或解碼位元流之方法所需要的變數及參數的暫存器;及通信介面9302,其連接至通信網路9303,待處理之數位資料可經由該通信介面而被傳輸或接收。
視情況,該設備9300亦可包含以下組件:資料儲存構件9304,諸如硬碟,用於儲存用於實施本發明之一或多個實施例的方法的電腦程式及在本發明之一或多個實施例之實施期間使用或產生的資料;磁碟機9305,用於磁碟9306(例如,儲存媒體),該磁碟機9305被調適以從磁碟9306讀取資料或將資料寫入至該磁碟9306上;或螢幕9309,用於顯示資料及/或用作為藉由鍵盤9310、觸控螢幕或任何其他指向/輸入構件與使用者之圖形介面。
設備9300可被連接至各種不同週邊裝置,諸如數位相機9320或麥克風9308,各被連接至輸入/輸出卡(未圖示)以供應多媒體資料至設備9300。
通信匯流排9313在包含於設備9300中或連接至其之各種元件之間提供通信及相互操作性。匯流排之表示並未侷限且尤其係中央處理單元9311在操作上可將指令直接地或藉由設備9300之另一元件來傳達至該設備9300之任何元件。
磁碟9306可由任何資訊媒體來取代,諸如光碟(CD-ROM),可重寫或不可重寫,ZIP磁碟或記憶卡,且概括而言,藉由可由微電腦讀取之資訊儲存構件,或藉由處理器(整合或未整合至設備中),可移除式且被調適成用以儲存一或多個程式,該程式之執行可實現依照所實施之本發明來編碼一序列數位影像之方法及/或解碼位元流之方法。
可執行碼可被儲存在唯讀記憶體9307中、在硬碟9304上或在可移除式數位媒體上,諸如先前所述之磁碟9306。依照一變體,程式之可執行碼可藉由通信網路9303經由介面9302接收,以在被執行之前被儲存在設備9300之儲存構件之一者中,例如在硬碟9304中。
中央處理單元9311被調適成用以控制及指導指令或程式之軟體碼之部分或依照本發明之程式、被儲存在前述儲存構件之一者中指令的執行。在啟動後,儲存在非揮發性記憶體中(例如在硬碟9304上)、磁碟9306或在唯讀記憶體9307中之該程式或若干程式被轉移至隨機存取記憶體9312中(其接著包含該程式或若干程式之可執行碼),以及用於儲存實施本發明所需要的變數及參數之暫存器。
在此實施例中,該設備係可程式化設備,其使用軟體以實施本發明。然而,替代地,本發明可被實施於硬體中(例如,以特殊應用積體電路或ASIC之形式)。
本發明之實施例的實施方案
亦可理解的是,依照本發明之其他實施例,依照一上 述實施例之解碼器被提供在使用者終端中,諸如電腦、行動電話(蜂巢式電話)、平板電腦或能夠提供/顯示內容給使用者之任何其他類型的裝置(例如,顯示設備)。依照又另一實施例,依照一上述實施例之編碼器被提供在一影像擷取設備中,其亦包括相機、視訊相機或網路相機(例如,閉路電視或視訊監視相機),其可擷取及提供用於編碼器之內容以供編碼。兩種此類實施例將參考圖14及15而提供於下文。
圖14係繪示包括網路相機9452及用戶設備9454之網路相機系統9450之示意圖。
網路相機9452包括成像單元9456、編碼單元9458、通信單元9460及控制單元9462。網路相機9452及用戶設備9454經由網路9200相互連接以能夠彼此通信。成像單元9456包括透鏡及影像感測器(例如,電荷耦合裝置(CCD)或互補金屬氧化物半導體(CMOS)),且擷取一目標的影像且基於該影像產生影像資料。此影像可為靜態影像或視訊影像。成像單元亦可包括分別調適成用以變焦或平移(光學地或數位地)之變焦構件及/或平移構件。編碼單元9458藉由使用在前述實施例之一或多者中闡述之編碼方法編碼該影像資料。編碼單元9458使用在前述實施例中闡述之編碼方法的至少一者。舉另一實例而言,編碼單元9458可使用在前述實施例中闡述之編碼方法的組合。
網路相機9452之通信單元9460將藉由編碼單元9458編碼之經編碼影像資料傳輸至用戶設備9454。此外,通信單 元9460亦可從用戶設備9454接收命令。該命令包括用於設定用於由編碼單元9458編碼之參數的命令。控制單元9462依照由通信單元9460接收之命令或使用者輸入來控制網路相機9452中的其他單元。
用戶設備9454包括通信單元9464、解碼單元9466及控制單元9468。用戶設備9454之通信單元9464可將命令傳輸至網路相機9452。此外,用戶設備9454之通信單元9464從網路相機9452接收經編碼影像資料。解碼單元9466藉由使用前述實施例之一或多者中所闡述的解碼方法來解碼該經編碼影像資料。舉另一實例而言,解碼單元9466可使用在前述實施例中闡述之解碼方法的組合。用戶設備9454之控制單元9468依照由通信單元9464接收之使用者操作或命令來控制用戶設備9454中的其他單元。用戶設備9454之控制單元9468亦可控制顯示設備9470,以顯示由解碼單元9466解碼之影像。
用戶設備9454之控制單元9468亦可控制顯示設備9470,以顯示GUI(圖形使用者介面)來指定用於網路相機9452之參數的值,例如用於藉由編碼單元9458之編碼的參數。用戶設備9454之控制單元9468亦可依照輸入至由顯示設備9470顯示之GUI之使用者操作來控制用戶設備9454中之其他單元。用戶設備9454之控制單元9468亦可依照輸入至由顯示設備9470顯示之GUI之使用者操作來控制用戶設備9454之通信單元9464,以將命令傳輸至網路相機9452,其指定用於網路相機9452之參數的值。
圖15係繪示智慧型手機9500的示意圖。智慧型手機9500包括通信單元9502、解碼/編碼單元9504、控制單元9506及顯示單元9508。
通信單元9502經由網路9200接收編碼影像資料。解碼/編碼單元9504解碼由通信單元9502接收之經編碼影像資料。解碼/編碼單元9504藉由使用在一或多個前述實施例中闡述之解碼方法來解碼該經編碼影像資料。該解碼/編碼單元單元9504使用在前述實施例中闡述之編碼或解碼方法的至少一者。舉另一實例而言,解碼/編碼單元9504可使用在前述實施例中闡述之解碼或編碼方法的組合。控制單元9506依照由通信單元9502接收之使用者操作或命令來控制智慧型手機9500中之其他單元。例如,控制單元9506控制顯示單元9508以顯示藉由解碼/編碼單元9504所解碼之影像。
智慧型手機可進一步包括影像記錄裝置9510(例如,數位相機及相關聯電路)以記錄影像或視訊。此記錄影像或視訊可藉由解碼/編碼單元9504在控制單元9506之指令下來編碼。該智慧型手機可進一步包括感測器9512,其經調適以感測行動裝置之定向。此感測器可包含加速計、陀螺儀、羅盤、全球定位(GPS)單元或類似的位置感測器。此感測器9512可判定該智慧型手機是否改變定向且此資訊可在編碼視訊流時使用。
儘管本發明已針對實施例來描述,但應理解本發明並未侷限於所揭示的實施例。熟習此項技術者可瞭解在不違 背如隨附發明申請專利範圍中所界定之本發明之範疇的情況下,可實行各種不同的改變及修飾。在本說明書中揭示的所有特徵(包含任何隨附的申請專利範圍、摘要及圖式),及/或所揭示之任何方法或程序的所有步驟能以任何組合來結合,除了至少一些此等特徵及/或步驟為互斥之組合以外。在本說明書中揭示之各特徵(包含任何隨附的申請專利範圍、摘要及圖式)可由用於相同、等效或類似目的之替代性特徵取代,除非另有說明。因此,除非另有說明,否則所揭示之各特徵僅為一系列一般等效或類似特徵中的一個實例。
亦應理解的是,上述之比較、判定、評估、選擇、執行、實行或考量的任何結果,例如在編碼或濾波程序期間所作的選擇,可被指示在位元流中的資料或從位元流中之資料來判定/推斷,例如,旗標或指示結果之資訊,使得指示或判定/推斷結果可被使用在該處理中,以取代實際地執行該比較、判定、評估、選擇、執行、實行或考量,例如在解碼程序期間。
在申請專利範圍中,用語「包括」並不排除其他的元件或步驟,且不定冠詞(“a”或“an”)並不排除為複數。詳述在互為不同的申請專利範圍附屬項中的不同特徵並非指示這些特徵的組合不能有利地使用。出現在申請專利範圍中之元件符號僅為圖示說明之用且對申請專利範圍之範疇不具限制效果。
在前述的實施例中,所描述的功能能以硬體、軟體、 韌體或其等之任何組合來實施。若在軟體中實施,該功能以一或多個指令或碼被儲存在電腦可讀媒體上或經由電腦可讀媒體傳輸且由基於硬體的處理單元來執行。
電腦可讀媒體可包含電腦可讀儲存媒體,其對應於有形媒體,諸如資料儲存媒體,或通信媒體包含促使電腦程式從一個地方轉移至另一地方(例如依照通信協定)的任何媒體。以此方式,電腦可讀媒體大體上可對應於(1)有形的電腦可讀儲存媒體,其係非暫態的,或(2)通信媒體,諸如信號或載波。資料儲存媒體可為任何可用媒體,其可由一或多個電腦或一或多個處理器存取以擷取指令、碼及/或資料結構用於在本揭露中所描述的技術實施方案。一電腦程式產品可包含電腦可讀媒體。舉例來說,且非限制性,此電腦可讀儲存媒體可包括RAM、ROM、EEPROM、CD-ROM或其他的光學磁碟儲存器、磁性磁碟儲存器或其他磁性儲存裝置、快閃記憶體、或可用以儲存所要的程式碼(以可由電腦存取之指令或資料結構之形式)之任何其他的媒體。再者,任何連接可被適當地稱之為電腦可讀媒體。例如,若指令從網站、伺服器或任何遠端源使用同軸電纜、光纖電纜、雙絞線、數位用戶線(DSL)或無線技術(諸如紅外線、無線電及微波)傳輸,則該同軸電纜、光纖電纜、雙絞線、DSL或無線技術(諸如紅外線、無線電及微波)被包含在媒體之定義中。然而應理解,電腦可讀儲存媒體及資料儲存媒體並不包含連接、載波信號或其他暫態媒體,反而是有關非暫態、有形的儲存媒體。如在本文中 所使用的磁碟及光碟,包含光碟(CD)、雷射光碟、光碟、數位多功能光碟(DVD)、軟磁碟及藍光碟,其中磁碟通常係磁性地再生資料,而光碟則係用雷射光學地再生資料。上述之組合亦應包含在電腦可讀媒體的範疇中。
指令可由一或多個處理器執行,諸如一或多個數位信號處理器(DSP),通用微處理器、特殊應用積體電路(ASIC)、場可程式化閘/邏輯陣列(FPGA)或其他等效的積體或離散邏輯電路。因此,如在本文中所用之術語「處理器」可指稱適用實施本文中描述之技術的任何上述結構或任何其他結構。另外,在一些態樣中,本文中描述之功能可被提供在被組態用於編碼及解碼之專用硬體及/或軟體模組中,或併入組合的編解碼器中。此外,該技術可被完全地實施在一或多個電路或邏輯元件中。
儘管本發明已針對實施例來描述,但應理解本發明並未侷限於所揭示的實施例。為了避免混淆,以下敘述構成本說明之部分。申請專利範圍遵循這些敘述且亦如此標記。
敘述1.一種控制用於影像之一或多個影像部分的適應性迴路濾波器之方法,該方法包括基於第一樣本值之複數個相鄰樣本值來控制影像部分之該第一樣本的濾波,其中,該控制包括使用非線性函數,該非線性函數具有基於該一或多個相鄰樣本值及在適應參數集中傳訊的一或多個濾波器變數之一或多個變數。
敘述2.如敘述1之方法,其中,該非線性函數包括一 或多個截波函數且該一或多個濾波器變數包括使用被提供在該適應參數集中的資訊所判定之一或多個截波參數。
敘述3.如敘述2之方法,其中,兩個或更多個截波函數共用使用在該適應參數集中傳訊之該資訊所判定之相同截波參數。
敘述4.如敘述2或3之方法,其中,用以與截波函數一起使用之截波參數可使用用於從複數個截波參數值識別一截波參數值的指標來判定,且該複數個截波參數值中之一者對應於基於位元深度之最大樣本值。適當地,該指標被提供在該適應參數集中。
敘述5.如敘述2至4中任一項之方法,其中,與截波函數一起使用之截波參數可使用用於從複數個截波參數值識別一截波參數值的指標來判定,且該複數個截波參數值針對當該第一樣本值係亮度樣本值且當該第一樣本值係色度樣本值時包含用於兩者之相同數目的值。適當地,該複數個截波參數值包含四個(可允許的/可用的/可行的)值。適當地,該複數個截波參數值包含用於該影像之該一或多個影像部分中之兩個或更多個的相同數目之(可允許的/可用的/可行的)值。適當地,該複數個截波參數值包含用於該影像之該一或多個影像部分中之兩個或更多個的四個(可允許的/可用的/可行的)值。適當地,該複數個截波參數值包含用於該影像之所有影像部分或一序列影像之所有影像部分的相同數目之(可允許的/可用的/可行的)值。適當地,該複數個截波參數值包含用於該影像之所有影像部 分或一序列影像之所有影像部分的四個(可允許的/可用的/可行的)值。
敘述6.如前述敘述中任一項之方法,其中,傳訊一或多個濾波器變數之數目係少於基於該一或多個相鄰樣本值之一或多個變數的數目。適當地,傳訊一或多個濾波器變數之數目係基於該一或多個相鄰樣本值之一或多個變數的數目之一半。
敘述7.如前述敘述中任一項之方法,其中,基於該一或多個相鄰樣本值之一或多個變數包括在該第一樣本值與該一或多個相鄰樣本值之各者之間的差異。
敘述8.如前述敘述中任一項之方法,其中,該非線性函數之輸出被用作為適應性迴路濾波器之輸入參數。適當地,從兩個或更多個非線性函數(或截波函數)之輸出被用作為適應性迴路濾波器之輸入參數。
敘述9.如敘述8之方法,其中:適應性迴路濾波器使用一或多個濾波器係數;及濾波器係數及其相關聯濾波器變數係可使用相鄰樣本值之指標來判定。
敘述10.如敘述9之方法,其中,相鄰樣本值之該指標係與其在掃描順序中之位置相關聯,且該關聯性可使用轉置指標來導出。適當地,該導出關聯性對應於在圖4-b中之四種可行配置中的一者:409之{0,1,2,3,4,5,6,7,8,9,10,11};410之{9,4,10,8,1,5,11,7,3,0,2,6};411之{0,3,2,1,8,7,6,5,4,9,10,11};或412之{9,8,10,4,3,7,11,5,1,0,2,6}。
敘述11.如前述敘述中任一項之方法,其中,該非線性函數包括一或多個截波函數,且該一或多個截波函數之各者回傳以下一者:max(-b,min(b,d)),min(b,max(-b,d))、max(c-b,min(c+b,n))、min(c+b,max(c-b,n))、max(-b,min(b,d1+d2))、min(b,max(-b,d1+d2))、max(2*c-b,min(2*c+b,n1+n2))或min(2*c+b,max(2*c-b,n1+n2)),其中,c係該第一樣本值、n或n1或n2係相鄰樣本值、d=n-c、d1=n1-c、d2=n2-c以及b係截波參數。
敘述12.一種處理影像之一或多個部分的方法,影像部分具有與其相關聯之色度樣本及亮度樣本,其中,該方法包括基於從位元流或該影像部分之第一樣本值及其一或多個相鄰樣本值所獲得之資訊來判定以下至少一者:是否使用或未使用利用如前述敘述中任一項之方法所控制的濾波器;啟用或停用該濾波器之使用;或當濾波該第一樣本值時與該濾波器一起使用的濾波參數、濾波器係數或濾波器變數。
敘述13.如敘述12之方法,其中,從該位元流獲得之該資訊包括針對亮度或色度分量之一者提供之旗標,該旗標針對該分量指示以下至少一者:是否使用或未使用利用如敘述1至10中任一項之方法所控制的該濾波器;或啟用或停用該濾波器之使用。
敘述14.如敘述12或13之方法,其中,從該位元流獲得之該資訊包括針對該一或多個影像部分提供之旗標,該旗標針對一或多個影像部分指示以下至少一者:是否使用 或未使用利用如敘述1至10中任一項之方法所控制的該濾波器;或啟用或停用該濾波器之使用。
敘述15.一種編碼一或多個影像之方法,該方法包括針對影像之一或多個部分依照如敘述1至10中任一項之方法控制濾波器,或依照如敘述12至14中任一項之方法來處理。
敘述16.如敘述15之方法,其進一步包括:接收影像;編碼該經接收影像且產生位元流;處理該經編碼影像,其中,該處理包括依照如敘述1至11中任一項之方法的該控制,或依照如敘述12至14中任一項之方法的該處理。
敘述17.如敘述15之方法,當依附於敘述12至14中任一項時,其進一步包括提供在該位元流中之該資訊。
敘述18.如敘述17之方法,當依附於敘述11時,其中:該非線性函數之該變數進一步包括取決於該一或多個相鄰樣本值之指標/若干指標之一或多個濾波器係數;且提供該資訊包括在該位元流中提供用於判定一或多個截波參數之指標/若干指標及用於導出在相鄰樣本值之指標與其在掃描順序之位置之間之關聯性的一或多個轉置指標/若干指標。適當地,該導出關聯性對應於在圖4-b中之四種可行配置中的一者:409之{0,1,2,3,4,5,6,7,8,9,10,11};410之{9,4,10,8,1,5,11,7,3,0,2,6};411之{0,3,2,1,8,7,6,5,4,9,10,11};或412之{9,8,10,4,3,7,11,5,1,0,2,6}。
敘述19.如敘述16至18中任一項之方法,其進一步包括:從複數個可用函數中選擇該非線性函數或該一或多個截波函數;當處理該編碼影像時使用該所選函數;及在該位元流中提供用於識別該所選函數之資訊。
敘述20.一種解碼一或多個影像之方法,該方法包括針對影像之一或多個部分依照如敘述1至11中任一項之方法控制濾波器,或依照如敘述12至14中任一項之方法來處理。
敘述21.如敘述20之方法,其進一步包括:接收位元流;從該接收的位元流解碼資訊以獲得影像;及處理該獲得的影像,其中,該處理包括依照如敘述1至11中任一項之方法的該控制,或依照如敘述12至14中任一項之方法的該處理。
敘述22.如敘述21之方法,當依附於敘述12至14中任一項時,其進一步包括從該位元流獲得該資訊。
敘述23.如敘述21之方法,當依附於敘述11時,其中:該非線性函數之該變數進一步包括取決於該一或多個相鄰樣本值之指標/若干指標之一或多個濾波器係數;且該方法進一步包括從該位元流獲得用於判定一或多個截波參數之指標/若干指標及用於導出在相鄰樣本值之指標與其在掃描順序之位置之間之關聯性的一或多個轉置指標/若干指標。適當地,該導出關聯性對應於在圖4-b中之四種可行配置中的一者:409之{0,1,2,3,4,5,6,7,8,9,10,11};410之{9,4,10,8,1,5,11,7,3,0,2,6};411之{0, 3,2,1,8,7,6,5,4,9,10,11};或412之{9,8,10,4,3,7,11,5,1,0,2,6}。
敘述24.如敘述21至23中任一項之方法,其進一步包括:從該位元流獲得用於從複數個可用函數中識別該非線性函數或該一或多個截波函數之資訊;且當處理該所獲得影像時使用該識別函數。
敘述25.一種裝置,包括以下一或多者:控制器,經組態以執行如敘述1至11或12至14中任一項之方法;編碼器,經組態以執行如敘述15至19中任一項之方法;或解碼器,經組態以執行如敘述20至24中任一項之方法。
敘述26.一種程式,其當在電腦或處理器上運行時,致使該電腦或處理器實施如敘述1至11、12至14、15至19或20至24中任一項之方法。
敘述27.一種電腦可讀儲存媒體,其儲存如敘述26之電腦程式。
敘述28.一種攜載用於利用如敘述15至19中任一項之方法所編碼且藉由位元流表示之影像的資訊資料集之信號,該影像包括可重建樣本集,各可重建樣本具有樣本值,其中,該資訊資料集包括用於基於第一可重建樣本之相鄰樣本的樣本值來控制對該第一可重建樣本濾波之控制資料。
101:影像部分之解碼
102:解區塊濾波器(DBF)
103:樣本適應性偏移(SAO)
104:適應性迴路濾波器(ALF)
105:輸出
106:圖框緩衝器

Claims (13)

  1. 一種使用適應性迴路濾波器以編碼影像之一或多個影像部分的方法,該方法包括:對影像部分之當前樣本濾波,該影像部分使用包括截波函數的非線性方程式,每個截波函數具有用於將當前樣本的相鄰樣本和當前樣本的值之間的差異值截波的截波參數,且其中,該截波參數表示該截波的值範圍,每個截波函數的截波參數取決於該相鄰樣本的位置。
  2. 如請求項1之方法,其中:該一或多個截波函數回傳max(-b,min(b,d))、min(b,max(-b,d))、max(c-b,min(c+b,n))或min(c+b,max(c-b,n))中之一者;且c為該第一樣本值、n為相鄰樣本值、d=n-c且b為該截波參數。
  3. 如請求項2之方法,其中,用於與該截波函數一起使用之截波參數係可利用用於從複數個截波參數值中識別一截波參數值的指標來判定。
  4. 如請求項1之方法,其進一步包括:接收該影像;編碼該經接收影像且產生位元流。
  5. 一種使用適應性迴路濾波器以解碼影像之一或多個影像部分的方法,該方法包括:對影像的影像部分之當前樣本值濾波,該影像部分使 用包括截波函數的非線性方程式,每個截波函數具有用於將當前樣本的相鄰樣本和當前樣本的值之間的差異值截波的截波參數,且其中,該截波參數表示該截波的值範圍,每個截波函數的截波參數取決於該相鄰樣本的位置。
  6. 如請求項5之方法,其中:該一或多個截波函數回傳max(-b,min(b,d))、min(b,max(-b,d))、max(c-b,min(c+b,n))或min(c+b,max(c-b,n))中之一者;且c為該第一樣本值、n為相鄰樣本值、d=n-c且b為該截波參數。
  7. 如請求項5之方法,其中,用於與該截波函數一起使用之截波參數係可利用用於從複數個截波參數值中識別一截波參數值的指標來判定。
  8. 如請求項5之方法,其進一步包括:接收位元流;從該經接收位元流解碼資訊以獲得該影像。
  9. 如請求項8之方法,其進一步包括從該位元流獲得該資訊。
  10. 一種用於編碼影像之裝置,該裝置經組態以執行如請求項1至4中任一項之方法。
  11. 一種用於解碼影像之裝置,該裝置經組態以執行如請求項5至9中任一項之方法。
  12. 一種電腦可讀儲存媒體,其儲存一程式,該程式當在電腦或處理器上運行時,致使該電腦或處 理器實施如請求項1至4中任一項之方法。
  13. 一種電腦可讀儲存媒體,其儲存一程式,該程式當在電腦或處理器上運行時,致使該電腦或處理器實施如請求項5至9中任一項之方法。
TW108143684A 2018-12-21 2019-11-29 使用適應性迴路濾波器以編碼和解碼影像之一或多個影像部分的方法、裝置和電腦可讀儲存媒體 TWI834773B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
GB1821156.5 2018-12-21
GB1821156.5A GB2580173B (en) 2018-12-21 2018-12-21 A filter
GB1901775.5 2019-02-08
GB1901775.5A GB2580190B (en) 2018-12-21 2019-02-08 Adaptive loop filter using a nonlinear function

Publications (2)

Publication Number Publication Date
TW202025740A TW202025740A (zh) 2020-07-01
TWI834773B true TWI834773B (zh) 2024-03-11

Family

ID=65364473

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108143684A TWI834773B (zh) 2018-12-21 2019-11-29 使用適應性迴路濾波器以編碼和解碼影像之一或多個影像部分的方法、裝置和電腦可讀儲存媒體

Country Status (9)

Country Link
US (6) US11750804B2 (zh)
EP (1) EP3900334A1 (zh)
JP (2) JP7308946B2 (zh)
KR (1) KR20210099134A (zh)
CN (6) CN113228646B (zh)
BR (1) BR112021012035A2 (zh)
GB (2) GB2580173B (zh)
TW (1) TWI834773B (zh)
WO (1) WO2020126411A1 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2580173B (en) 2018-12-21 2022-07-27 Canon Kk A filter
CN117956149A (zh) * 2019-03-08 2024-04-30 佳能株式会社 自适应环路滤波器
KR20230165888A (ko) 2019-04-02 2023-12-05 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 양방향 광학 흐름 기반 비디오 코딩 및 디코딩
EP3922015A4 (en) 2019-04-19 2022-07-20 Beijing Bytedance Network Technology Co., Ltd. GRADIENT CALCULATION IN VARIOUS MOTION VECTOR REFINEMENTS
US11368684B2 (en) * 2019-04-23 2022-06-21 Qualcomm Incorporated Adaptation parameter sets (APS) for adaptive loop filter (ALF) parameters
US11284114B2 (en) * 2019-04-23 2022-03-22 Qualcomm Incorporated Adaptive loop filter set index signaling
US11356662B2 (en) 2019-05-21 2022-06-07 Qualcomm Incorporated Simplification of clipping value calculation for adaptive loop filters
JP6811931B2 (ja) * 2019-06-20 2021-01-13 Kddi株式会社 画像復号装置、画像復号方法及びプログラム
JP6912642B2 (ja) 2019-06-20 2021-08-04 Kddi株式会社 画像復号装置、画像復号方法及びプログラム
US20230023387A1 (en) * 2019-12-17 2023-01-26 Telefonaktiebolaget Lm Ericsson (Publ) Low complexity image filter
WO2021180165A1 (en) 2020-03-11 2021-09-16 Beijing Bytedance Network Technology Co., Ltd. High level bitstream syntax for quantization parameters
WO2021244419A1 (en) 2020-05-31 2021-12-09 Beijing Bytedance Network Technology Co., Ltd. Constraint signaling using general constraint information syntax element
JP7320573B2 (ja) 2020-11-18 2023-08-03 Kddi株式会社 画像復号装置、画像復号方法及びプログラム
JP6941752B1 (ja) * 2020-11-18 2021-09-29 Kddi株式会社 画像復号装置、画像復号方法及びプログラム
US11546638B2 (en) * 2020-12-08 2023-01-03 Tencent America LLC Method and apparatus for video filtering
WO2022155922A1 (zh) * 2021-01-22 2022-07-28 Oppo广东移动通信有限公司 视频编解码方法与系统、及视频编码器与视频解码器
US11785213B2 (en) * 2021-03-12 2023-10-10 Tencent America LLC Method and apparatus for video filtering
US11750846B2 (en) * 2021-03-22 2023-09-05 Tencent America LLC Method and apparatus for video filtering
CN117882370A (zh) * 2021-08-14 2024-04-12 抖音视界有限公司 视频编解码中的自适应环路滤波器的高级融合模式
CN117813823A (zh) * 2021-08-14 2024-04-02 抖音视界有限公司 视频编解码中自适应环路滤波器的改进融合模式
CN117882371A (zh) * 2021-08-14 2024-04-12 抖音视界有限公司 视频编解码中的自适应环路滤波器的融合模式
WO2024012167A1 (en) * 2022-07-15 2024-01-18 Mediatek Inc. Method and apparatus for adaptive loop filter with non-local or high degree taps for video coding
WO2024082899A1 (en) * 2022-10-18 2024-04-25 Mediatek Inc. Method and apparatus of adaptive loop filter selection for positional taps in video coding

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120183078A1 (en) * 2011-01-14 2012-07-19 Samsung Electronics Co., Ltd. Filter adaptation with directional features for video/image coding
US20150016541A1 (en) * 2011-11-03 2015-01-15 Panasonic Intellectual Property Corporation Of America Efficient rounding for deblocking

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101754010A (zh) * 2008-12-18 2010-06-23 北京中星微电子有限公司 视频数据编码的环路滤波方法和滤波器
US8259819B2 (en) 2009-12-10 2012-09-04 Hong Kong Applied Science and Technology Research Institute Company Limited Method and apparatus for improving video quality by utilizing a unified loop filter
US9094658B2 (en) 2010-05-10 2015-07-28 Mediatek Inc. Method and apparatus of adaptive loop filtering
US9641866B2 (en) 2011-08-18 2017-05-02 Qualcomm Incorporated Applying partition-based filters
CN103891292B (zh) 2011-10-24 2018-02-02 寰发股份有限公司 视频数据环路滤波处理方法及其装置
GB201119206D0 (en) 2011-11-07 2011-12-21 Canon Kk Method and device for providing compensation offsets for a set of reconstructed samples of an image
WO2013103893A1 (en) * 2012-01-05 2013-07-11 General Instrument Corporation Devices and methods for multipass sample adaptive offset coding
TWI569625B (zh) 2012-04-06 2017-02-01 Sony Corp Image processing apparatus and method, program, and recording medium
WO2015070739A1 (en) 2013-11-15 2015-05-21 Mediatek Inc. Method of block-based adaptive loop filtering
KR102276854B1 (ko) * 2014-07-31 2021-07-13 삼성전자주식회사 인루프 필터 파라미터 예측을 사용하는 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치
US9918095B1 (en) * 2015-05-20 2018-03-13 Telefonaktiebolaget Lm Ericsson (Publ) Pixel processing and encoding
CN107736027B (zh) 2015-06-12 2021-06-01 松下知识产权经营株式会社 图像编码方法、图像解码方法、图像编码装置及图像解码装置
WO2016204374A1 (ko) 2015-06-18 2016-12-22 엘지전자 주식회사 영상 코딩 시스템에서 영상 필터링 방법 및 장치
EP3244611A1 (en) 2016-05-13 2017-11-15 Thomson Licensing Method and apparatus for video coding with adaptive clipping of pixel values
MX2018013942A (es) 2016-05-13 2019-08-12 Interdigital Vc Holdings Inc Metodo y aparato para codificacion de video con recorte adaptativo.
EP3297282A1 (en) * 2016-09-15 2018-03-21 Thomson Licensing Method and apparatus for video coding with adaptive clipping
TWI833248B (zh) 2017-04-06 2024-02-21 美商松下電器(美國)知識產權公司 解碼方法及編碼方法
CN115484458A (zh) * 2017-10-20 2022-12-16 韩国电子通信研究院 图像编码、解码方法以及存储比特流的记录介质
GB2580173B (en) 2018-12-21 2022-07-27 Canon Kk A filter
US11997266B2 (en) * 2019-07-26 2024-05-28 Hfi Innovation Inc. Method and apparatus of cross-component adaptive loop filtering for video coding
JP2021034848A (ja) * 2019-08-22 2021-03-01 シャープ株式会社 画像復号装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120183078A1 (en) * 2011-01-14 2012-07-19 Samsung Electronics Co., Ltd. Filter adaptation with directional features for video/image coding
US20150016541A1 (en) * 2011-11-03 2015-01-15 Panasonic Intellectual Property Corporation Of America Efficient rounding for deblocking

Also Published As

Publication number Publication date
CN118354074A (zh) 2024-07-16
CN118354071A (zh) 2024-07-16
CN118354073A (zh) 2024-07-16
JP2022511745A (ja) 2022-02-01
EP3900334A1 (en) 2021-10-27
US20240048696A1 (en) 2024-02-08
US20220078415A1 (en) 2022-03-10
GB2580173B (en) 2022-07-27
US20230370595A1 (en) 2023-11-16
KR20210099134A (ko) 2021-08-11
GB201901775D0 (en) 2019-03-27
GB2580190A (en) 2020-07-15
US20230379461A1 (en) 2023-11-23
CN118354072A (zh) 2024-07-16
US12052416B2 (en) 2024-07-30
JP7308946B2 (ja) 2023-07-14
US20230370594A1 (en) 2023-11-16
CN113228646B (zh) 2024-04-05
GB2580190B (en) 2022-09-14
TW202025740A (zh) 2020-07-01
GB201821156D0 (en) 2019-02-06
JP2023123788A (ja) 2023-09-05
CN113228646A (zh) 2021-08-06
US11750804B2 (en) 2023-09-05
CN118413643A (zh) 2024-07-30
WO2020126411A1 (en) 2020-06-25
BR112021012035A2 (pt) 2021-09-21
GB2580173A (en) 2020-07-15
US20230379462A1 (en) 2023-11-23
JP7549709B2 (ja) 2024-09-11

Similar Documents

Publication Publication Date Title
TWI834773B (zh) 使用適應性迴路濾波器以編碼和解碼影像之一或多個影像部分的方法、裝置和電腦可讀儲存媒體
JP7391170B2 (ja) アダプティブループフィルタ
JP7308983B2 (ja) クロマのためのクロスコンポーネント適応(アダプティブ)ループフィルタ
WO2019195281A1 (en) Unification of deblocking filter and adaptive loop filter
GB2582029A (en) An adaptive loop filter