JP2018509074A - コーディングツリーユニット(ctu)レベル適応ループフィルタ(alf) - Google Patents

コーディングツリーユニット(ctu)レベル適応ループフィルタ(alf) Download PDF

Info

Publication number
JP2018509074A
JP2018509074A JP2017541792A JP2017541792A JP2018509074A JP 2018509074 A JP2018509074 A JP 2018509074A JP 2017541792 A JP2017541792 A JP 2017541792A JP 2017541792 A JP2017541792 A JP 2017541792A JP 2018509074 A JP2018509074 A JP 2018509074A
Authority
JP
Japan
Prior art keywords
alf
video data
ctu
information
candidate
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
JP2017541792A
Other languages
English (en)
Other versions
JP2018509074A5 (ja
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 JP2018509074A publication Critical patent/JP2018509074A/ja
Publication of JP2018509074A5 publication Critical patent/JP2018509074A5/ja
Ceased legal-status Critical Current

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/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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

例は、ビデオデータをコーディングするためのデバイスを含み、デバイスは、ビデオデータを記憶するように構成されたメモリと、現在コーディングツリーユニット(CTU)用の適応ループフィルタ処理(ALF)情報を(i)現在CTUの1つもしくは複数の空間ネイバーCTUまたは(ii)現在CTUの1つもしくは複数の時間ネイバーCTUのうちの1つまたは複数から取得し、現在CTU用の取得されたALF情報に少なくとも部分的に基づいて候補リストを形成し、候補リストからの候補に関連するALF情報を使用して、現在CTUにフィルタ処理演算を実行するように構成された1つまたは複数のプロセッサとを含む。ビデオデータをコーディングすることは、ビデオデータを符号化すること、ビデオデータを復号すること、またはビデオデータを符号化することおよび復号することの両方を含む。

Description

本出願は、その内容全体が本明細書に組み込まれる、2015年2月11日に出願した米国仮特許出願第62/115,067号の利益を主張するものである。
本開示は、ビデオコーディングに関する。
デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末(PDA)、ラップトップまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダー、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラーまたは衛星無線電話、いわゆる「スマートフォン」、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲のデバイスに組み込まれ得る。デジタルビデオデバイスは、MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4、Part 10、アドバンストビデオコーディング(AVC:Advanced Video Coding)、最近確定された高効率ビデオコーディング(HEVC:High Efficiency Video Coding)規格、およびそのような規格の拡張によって定義された規格に記載されるものなどのビデオ圧縮技術を実装する。ビデオデバイスは、そのようなビデオ圧縮技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、および/または記憶し得る。
ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減または除去するために、空間(ピクチャ内)予測および/または時間(ピクチャ間)予測を実行する。ブロックベースビデオコーディングの場合、ビデオスライス(すなわち、ビデオフレーム、またはビデオフレームの一部分)がビデオブロックに区分されてよく、ビデオブロックは、ツリーブロック、コーディングユニット(CU:coding unit)、および/またはコーディングノードと呼ばれることもある。ピクチャのイントラコード化(I)スライスの中のビデオブロックは、同じピクチャにおける隣接ブロックの中の参照サンプルに対する空間予測を使用して符号化される。ピクチャのインターコード化(PまたはB)スライスの中のビデオブロックは、同じピクチャにおける隣接ブロックの中の参照サンプルに対する空間予測、または他の参照ピクチャにおける参照サンプルに対する時間予測を使用し得る。ピクチャは、フレームと呼ばれることがあり、参照ピクチャは、参照フレームと呼ばれることがある。
空間予測または時間予測が、コーディングされるべきブロックに対する予測ブロックをもたらす。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトル、およびコード化ブロックと予測ブロックとの間の差分を示す残差データに従って符号化される。イントラコード化ブロックは、イントラコーディングモードおよび残差データに従って符号化される。さらなる圧縮のために、残差データがピクセル領域から変換領域に変換されて残差変換係数が得られてよく、次いで、残差変換係数が量子化され得る。最初に2次元アレイに配置される量子化変換係数は、変換係数の1次元ベクトルを生成するために走査されてよく、エントロピーコーディングが、さらなる圧縮を実現するために適用され得る。
T.Wiegand、B.Bross、W.J.Han、J.R.Ohm、およびG.J.Sullivan、「WD3: Working Draft 3 of High-Efficiency Video Coding」、ITU-T SG16 WP3およびISO/IEC JTC1/SC29/WG11のビデオコーディング共同研究部会(JCT-VC)、JCTVC-E603、第5回会合、ジュネーブ、スイス、2011年3月16〜23日 T.Yamakage、T.Watanabe、T.Chujoh、C.-Y.Chen、C.-M.Fu、C.-Y.Tsai、Y.-W.Huang、S.Lei、I.S.Chong、M.Karczewicz、T.Ikai、「CE8.a.1: 2-D mergeable syntax」、ITU-T SG16 WP3およびISO/IEC JTC1/SC29/WG11のビデオコーディング共同研究部会(JCT-VC)、JCTVC-G316、ジュネーブ、2011年11月 C.-Y.Tsai、C.-Y.Chen、T.Yamakage、I.S.Chong、Y.-W.Huang、C.-M.Fu、T.Itoh、T.Watanabe、T.Chujoh、M.Karczewicz、S.-M.Lei、「Adaptive Loop Filtering for Video Coding」、IEEE Journal of Selected Topics in Signal Processing、Vol.7、no.6、2013年12月 B.Bross、W.-J.Han、G.J.Sullivan、J.-R.Ohm、T.Wiegand、「High Efficiency Video Coding (HEVC) text specification draft 6」、ITU-T SG16 WP3およびISO/IEC JTC1/SC29/WG11のビデオコーディング共同研究部会(JCT-VC)、JCTVC-H1003、サンノゼ、カリフォルニア、2012年2月 C.-M.Fu、E.Alshina、A.Alshin、Y.-W.Huang、C.-Y.Chen、C.-Y.Tsai、C.-W.Hsu、S.-M.Lei、J.-H.Park、W.-J.Han、「Sample Adaptive Offset in the HEVC Standard」、IEEE Transactions on Circuits and Systems for Video Technology、Vol.22、No.12、2012年12月
本開示の態様は、コーディングツリーユニット(CTU:Coding Tree Unit)レベル適応ループフィルタ処理(ALF:adaptive loop filtering)に関する。本明細書で説明する技法は、高効率ビデオコーディング(HEVC)規格に準拠するコーデックまたは任意の将来のビデオコーデックなどの、様々な既存のビデオコーデックのいずれかに適用され得る。
様々な例は、現在コーディングツリーユニット(CTU)用の適応ループフィルタ処理(ALF)情報を、(i)現在CTUの1つもしくは複数の空間ネイバーCTUまたは(ii)現在CTUの1つもしくは複数の時間ネイバーCTUのうちの1つまたは複数から取得することと、現在CTU用の取得されたALF情報に少なくとも部分的に基づいて候補リストを形成することと、候補リストからの候補に関連するALF情報を使用して、現在CTUにフィルタ処理演算を実行することとを含む、ビデオデータをコーディングするための方法を含む。
様々な例は、ビデオデータを記憶するように構成されたメモリと、現在コーディングツリーユニット(CTU)用の適応ループフィルタ処理(ALF)情報を、(i)現在CTUの1つもしくは複数の空間ネイバーCTUまたは(ii)現在CTUの1つもしくは複数の時間ネイバーCTUのうちの1つまたは複数から取得し、現在CTU用の取得されたALF情報に少なくとも部分的に基づいて候補リストを形成し、候補リストからの候補に関連するALF情報を使用して、現在CTUにフィルタ処理演算を実行するように構成された1つまたは複数のプロセッサとを含む、ビデオデータをコーディングするためのデバイスを含む。
様々な例は、現在コーディングツリーユニット(CTU)用の適応ループフィルタ処理(ALF)情報を、(i)現在CTUの1つもしくは複数の空間ネイバーCTUまたは(ii)現在CTUの1つもしくは複数の時間ネイバーCTUのうちの1つまたは複数から取得するための手段と、現在CTU用の取得されたALF情報に少なくとも部分的に基づいて候補リストを形成するための手段と、候補リストからの候補に関連するALF情報を使用して、現在CTUにフィルタ処理演算を実行するための手段とを含む、ビデオデータをコーディングするためのデバイスを含む。
様々な例は、実行されたとき、1つまたは複数のプロセッサに、現在コーディングツリーユニット(CTU)用の適応ループフィルタ処理(ALF)情報を、(i)現在CTUの1つもしくは複数の空間ネイバーCTUまたは(ii)現在CTUの1つもしくは複数の時間ネイバーCTUのうちの1つまたは複数から取得させ、現在CTU用の取得されたALF情報に少なくとも部分的に基づいて候補リストを形成させ、候補リストからの候補に関連するALF情報を使用して、現在CTUにフィルタ処理演算を実行させる命令を記憶した非一時的コンピュータ可読記憶媒体を含む。
1つまたは複数の例の詳細が、添付図面および以下の説明に記載される。他の特徴、目的、および利点は、説明および図面から、ならびに特許請求の範囲から明らかになろう。
本開示で説明する技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図である。 アクティビティメトリックおよび方向メトリックの範囲の、フィルタへのマッピングを示す概念図である。 例示的なフィルタ形状を示す概念図である。 例示的なフィルタ形状を示す概念図である。 例示的なフィルタ形状を示す概念図である。 本開示で説明する技法を実施し得る例示的なビデオエンコーダを示すブロック図である。 本開示で説明する技法を実施し得る例示的なビデオデコーダを示すブロック図である。 本開示で説明する技法を実施し得る1つまたは複数の方法を示すフロー図である。 本開示で説明する技法を実施し得る1つまたは複数の方法を示すフロー図である。
ビデオコーディングは、通常、同じピクチャの中のビデオデータのすでにコーディングされたブロック(すなわち、イントラ予測)または異なるピクチャの中のビデオデータのすでにコーディングされたブロック(すなわち、インター予測)のいずれかから、ビデオデータのブロックを予測することを伴う。いくつかの事例では、ビデオエンコーダはまた、予測ブロックを元のブロックと比較することによって残差データを計算する。したがって、残差データは、予測ブロックと元のブロックとの間の差分を表す。ビデオエンコーダは、残差データを変換および量子化し、変換および量子化された残差データを符号化ビットストリームの中でシグナリングする。ビデオデコーダは、残差データを予測ブロックに追加して、予測ブロック単独よりも密接に元のビデオブロックに整合する再構成ビデオブロックを生成する。復号ビデオの品質をさらに改善するために、ビデオデコーダは、再構成ビデオブロックに1つまたは複数のフィルタ処理演算を実行し得る。これらのフィルタ処理演算の例は、デブロッキングフィルタ処理、サンプル適応オフセット(SAO)フィルタ処理、および適応ループフィルタ処理(ALF)を含む。これらのフィルタ処理演算のためのパラメータは、ビデオエンコーダによって決定され符号化ビデオビットストリームの中で明示的にシグナリングされ得るか、またはビデオデコーダによって暗黙のうちに決定され得るかのいずれかである。
本開示は、ビデオ符号化および/またはビデオ復号プロセスにおいて再構成ビデオデータをフィルタ処理することに関連する技法を説明し、より詳細には、本開示は、ALFに関する技法を説明する。本開示によれば、フィルタ処理はエンコーダにおいて適用され、エンコーダにおいて適用されたフィルタ処理をデコーダが識別できるようにフィルタ情報がビットストリームの中で符号化される。ビデオエンコーダは、いくつかの異なるフィルタ処理シナリオをテストし得、レートひずみ分析に基づいて、再構成されたビデオ品質と圧縮品質との間で所望のトレードオフをもたらすフィルタまたはフィルタのセットを選び得る。ビデオデコーダは、フィルタ情報を含む符号化ビデオデータを受信し、ビデオデータを復号し、フィルタ処理報情報に基づいてフィルタ処理を適用する。このようにして、ビデオデコーダは、ビデオエンコーダにおいて適用された同じフィルタ処理を適用する。
ALFにとってのいくつかの提案は、ピクチャまたはフレームに関連する適合パラメータセット(APS)またはピクチャパラメータセット(PPS)の中でフィルタのグループがシグナリングされる、ピクチャベースALF手法を含む。フィルタのセットの中からどのフィルタがどのピクセルに適用されるのかは、ブロック適応(BA)分類または領域適応(RA)分類のいずれかを使用して決定され得る。BA分類の一例では、アクティビティメトリック(たとえば、ラプラシアンアクティビティ)が、ピクセルのブロックに対して決定され得る。決定されたアクティビティメトリックが下降する範囲に基づいて、ブロックに対してフィルタが選択され得る。アクティビティメトリック値の範囲は、関連するフィルタを有し得る。したがって、ブロック用のフィルタは、ブロックに対するアクティビティメトリックがそれとともに下降する範囲に基づいて選択され得る。BA分類のいくつかの例では、2つ以上のメトリックが使用され得る。たとえば、ラプラシアンアクティビティの測度が第1のメトリックとして使用されてよく、方向ベースメトリックが第2のメトリックとして使用されてよく、フィルタは、2つのメトリックの範囲に基づいて選択され得る。BA分類を使用してフィルタを適用する態様は、以下でより詳細に説明される。
RA分類の一例では、ピクチャまたはフレームは、定数個の領域(たとえば、16個の領域)に分割されてよく、各領域は関連するフィルタを有し得る。領域の中の各CUは、領域に関連するフィルタを使用してCUがフィルタ処理されるべきか、それともCUがフィルタ処理されるべきでないかを示す、関連するオン/オフフラグを有し得る。BA分類またはRA分類を使用してピクチャまたはフレームがフィルタ処理されるべきかどうかは、たとえば、APSまたはSPSの中でシグナリングされ得る。RA分類は、ビデオデコーダがブロックに対するアクティビティメトリックを計算する必要性を排除するので、RA分類を使用することは、概して、BA分類を使用することに比べてビデオコーダの計算量を低減する。RA分類を使用してフィルタを適用する態様は、以下でより詳細に説明される。
以下でより詳細に説明するように、本開示は、コーディングツリーユニット(CTU)レベルにおいてALFを適用するための技法を説明する。本開示で説明する様々な技法は、ALF情報が符号化ビットストリームの中でどのようにシグナリングされるのか、ピクセルまたはピクセルのグループに対してALFフィルタがどのように選択されるのか、およびピクセルまたはピクセルのグループにALFフィルタがどのように適用されるのかに関する。本開示の技法のうちのいくつかは、ビデオ符号化またはビデオ復号の特定の例に関して説明されることがある。しかしながら、明示的にそれとは反対に述べられない限り、技法はまた、ビデオ符号化またはビデオ復号としての他のものに適用可能であり得ることを理解されたい。一例として、ビデオエンコーダは、通常、ビデオデータをどのように符号化するのかを決定することの一部として、ビデオ復号動作を実行する。したがって、ビデオ復号技法は、ビデオエンコーダによって実行されてよい。その上、多くのコーディング動作は、ビデオエンコーダによって実行される同じ動作または場合によっては逆の動作を、ビデオデコーダが実行することに依拠する。したがって、ビデオデータを復号することの一部として、ビデオデコーダは、ビデオデータを符号化するために使用される同じ動作を実行し得る。
図1は、本開示で説明する技法を利用し得る例示的なビデオ符号化および復号システム10を示すブロック図である。図1に示すように、システム10は、後で宛先デバイス14によって復号されるべき符号化ビデオデータを生成するソースデバイス12を含む。ソースデバイス12および宛先デバイス14は、デスクトップコンピュータ、ノートブック(すなわち、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲のデバイスのうちのいずれかを備え得る。場合によっては、ソースデバイス12および宛先デバイス14は、ワイヤレス通信のために装備され得る。
宛先デバイス14は、復号されるべき符号化ビデオデータをリンク16を介して受信し得る。リンク16は、ソースデバイス12から宛先デバイス14に符号化ビデオデータを移動することができる任意のタイプの媒体またはデバイスを備え得る。一例では、リンク16は、ソースデバイス12が符号化ビデオデータをリアルタイムで宛先デバイス14に直接送信することを可能にする通信媒体を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され得、宛先デバイス14に送信され得る。通信媒体は、無線周波数(RF)スペクトルまたは1つもしくは複数の物理伝送線路などの任意のワイヤレス通信媒体もしくはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなどの、パケットベースネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、またはソースデバイス12から宛先デバイス14への通信を容易にするために有用であり得る任意の他の機器を含み得る。
代替的に、符号化データは、出力インターフェース22からストレージデバイス26に出力されてもよい。同様に、符号化データは、入力インターフェースによってストレージデバイス26からアクセスされてもよい。ストレージデバイス26は、ハードドライブ、Blu-ray(登録商標)ディスク、DVD、CD-ROM、フラッシュメモリ、揮発性もしくは不揮発性メモリ、または符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体などの、様々な分散されたまたは局所的にアクセスされるデータ記憶媒体のうちのいずれかを含み得る。さらなる一例では、ストレージデバイス26は、ソースデバイス12によって生成された符号化ビデオを保持し得るファイルサーバまたは別の中間ストレージデバイスに相当し得る。宛先デバイス14は、ストリーミングまたはダウンロードを介して、ストレージデバイス26からの記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶し、その符号化ビデオデータを宛先デバイス14へ送信できる任意のタイプのサーバであり得る。例示的なファイルサーバは、(たとえば、ウェブサイト用の)ウェブサーバ、FTPサーバ、ネットワーク接続ストレージ(NAS)デバイス、またはローカルディスクドライブを含む。宛先デバイス14は、インターネット接続を含む任意の標準的なデータ接続を通じて、符号化ビデオデータにアクセスし得る。このことは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに適した、ワイヤレスチャネル(たとえば、Wi-Fi接続)、ワイヤード接続(たとえば、DSL、ケーブルモデムなど)、または両方の組合せを含み得る。ストレージデバイス26からの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、または両方の組合せであり得る。
本開示の技法は、必ずしもワイヤレスの用途または設定に限定されるとは限らない。技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、たとえばインターネットを介したストリーミングビデオ送信、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、または他の用途などの、様々なマルチメディア用途のうちのいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム10は、ビデオストリーミング、ビデオ再生、ビデオ放送、および/またはビデオ電話などの用途をサポートするために、一方向または双方向のビデオ送信をサポートするように構成され得る。
図1の例では、ソースデバイス12は、ビデオソース18、ビデオエンコーダ20、および出力インターフェース22を含む。場合によっては、出力インターフェース22は、変調器/復調器(モデム)および/または送信機を含み得る。ソースデバイス12において、ビデオソース18は、ビデオキャプチャデバイス、たとえば、ビデオカメラ、以前にキャプチャされたビデオを含むビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および/もしくはソースビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステム、またはそのようなソースの組合せなどの、ソースを含み得る。一例として、ビデオソース18がビデオカメラである場合、ソースデバイス12および宛先デバイス14は、いわゆるカメラ電話またはビデオ電話を形成し得る。しかしながら、本開示で説明する技法は、一般に、ビデオコーディングに適用可能であり得、ワイヤレス用途および/またはワイヤード用途に適用され得る。
キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータ生成されたビデオは、ビデオエンコーダ20によって符号化され得る。符号化ビデオデータは、ソースデバイス12の出力インターフェース22を介して宛先デバイス14へ直接送信され得る。符号化ビデオデータはまた(または、代替的に)、復号用および/または再生用に宛先デバイス14または他のデバイスによって後でアクセスするために、ストレージデバイス26に記憶され得る。
宛先デバイス14は、入力インターフェース28、ビデオデコーダ30、およびディスプレイデバイス32を含む。場合によっては、入力インターフェース28は、受信機および/またはモデムを含み得る。宛先デバイス14の入力インターフェース28は、リンク16を介して符号化ビデオデータを受信する。リンク16を介して通信された、またはストレージデバイス26上で提供された符号化ビデオデータは、ビデオデータを復号する際にビデオデコーダ30などのビデオデコーダによって使用するための、ビデオエンコーダ20によって生成された様々なシンタックス要素を含み得る。そのようなシンタックス要素は、通信媒体上で送信された、記憶媒体上に記憶された、またはファイルサーバ上に記憶された符号化ビデオデータとともに含まれ得る。
ディスプレイデバイス32は、宛先デバイス14と統合されてよく、または宛先デバイス14の外部にあってもよい。いくつかの例では、宛先デバイス14は、集積ディスプレイデバイスを含み得、また、外部ディスプレイデバイスとインターフェースするように構成され得る。他の例では、宛先デバイス14はディスプレイデバイスであり得る。一般に、ディスプレイデバイス32は、復号ビデオデータをユーザに表示し、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、または別のタイプのディスプレイデバイスなどの、様々なディスプレイデバイスのいずれかを備え得る。
ビデオエンコーダ20およびビデオデコーダ30は、最近確定された高効率ビデオコーディング(HEVC)規格などのビデオ圧縮規格に従って動作し得、HEVCテストモデル(HM)に準拠し得る。代替的に、ビデオエンコーダ20およびビデオデコーダ30は、代替的にMPEG-4、Part 10、アドバンストビデオコーディング(AVC)と呼ばれるITU-T H.264規格、またはそのような規格の拡張などの、他のプロプライエタリな規格または業界規格に従って動作し得る。しかしながら、本開示の技法は、いかなる特定のコーディング規格にも限定されない。ビデオ圧縮規格の他の例は、MPEG-2およびITU-T H.263を含む。
本開示の技法は、説明を簡単にするためにHEVC用語を利用することがある。しかしながら、本開示の技法がHEVCに限定されることが仮定されるべきでなく、事実上、本開示の技法がHEVCの後継規格およびその拡張において実施され得ることが明示的に企図される。
図1に示さないが、いくつかの態様では、ビデオエンコーダ20およびビデオデコーダ30はそれぞれ、オーディオエンコーダおよびオーディオデコーダと統合されてよく、共通のデータストリームまたは別個のデータストリームの中のオーディオとビデオの両方の符号化を処理するために、好適なMUX-DEMUXユニット、または他のハードウェアおよびソフトウェアを含んでもよい。適用可能な場合、いくつかの例では、MUX-DEMUXユニットは、ITU H.223マルチプレクサプロトコル、またはユーザデータグラムプロトコル(UDP)などの他のプロトコルに準拠し得る。
ビデオエンコーダ20およびビデオデコーダ30はそれぞれ、1つもしくは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組合せなど、様々な好適なエンコーダ回路のいずれかとして実装され得る。技法がソフトウェアで部分的に実装されるとき、デバイスは、ソフトウェアのための命令を好適な非一時的コンピュータ可読媒体に記憶し、本開示の技法を実行するために、1つまたは複数のプロセッサを使用してハードウェアで命令を実行し得る。ビデオエンコーダ20およびビデオデコーダ30の各々は、1つまたは複数のエンコーダまたはデコーダに含まれてよく、これらのいずれもが、それぞれのデバイスの中で複合エンコーダ/デコーダ(コーデック)の一部として統合されてもよい。
上記で紹介したように、JCT-VCは、HEVC規格の開発を最近確定している。HEVC規格化の取り組みは、HEVCテストモデル(HM)と呼ばれるビデオコーディングデバイスの発展的モデルに基づいた。HMは、たとえば、ITU-T H.264/AVCによる既存のデバイスに対して、ビデオコーディングデバイスのいくつかの追加の機能を仮定する。たとえば、H.264は、9個のイントラ予測符号化モードを提供するが、HMは、35個ものイントラ予測符号化モードを提供し得る。
HEVCおよび他のビデオコーディング仕様では、ビデオシーケンスは、通常、一連のピクチャを含む。ピクチャは、「フレーム」と呼ばれることもある。ピクチャは、SL、SCb、およびSCrと示される3つのサンプルアレイを含み得る。SLは、ルーマサンプルの2次元アレイ(すなわち、ブロック)である。SCbは、Cbクロミナンスサンプルの2次元アレイである。SCrは、Crクロミナンスサンプルの2次元アレイである。クロミナンスサンプルは、本明細書で「クロマ」サンプルと呼ばれることもある。他の事例では、ピクチャはモノクロームであってよく、ルーマサンプルのアレイだけを含んでよい。
ピクチャの符号化表現を生成するために、ビデオエンコーダ20は、コーディングツリーユニット(CTU)のセットを生成し得る。CTUの各々は、ルーマサンプルのコーディングツリーブロック、クロマサンプルの2つの対応するコーディングツリーブロック、およびコーディングツリーブロックのサンプルをコーディングするために使用されるシンタックス構造を備え得る。モノクロームピクチャ、または3つの別個のカラープレーンを有するピクチャでは、CTUは、単一のコーディングツリーブロック、およびコーディングツリーブロックのサンプルをコーディングするために使用されるシンタックス構造を備え得る。コーディングツリーブロックは、サンプルのN×Nブロックであり得る。CTUは、「ツリーブロック」または「最大コーディングユニット」(LCU:largest coding unit)と呼ばれることもある。HEVCのCTUは、H.264/AVCなどの他の規格のマクロブロックと概して類似し得る。しかしながら、CTUは、必ずしも特定のサイズに限定されるとは限らず、1つまたは複数のコーディングユニット(CU)を含み得る。スライスは、ラスタ走査順序で連続的に順序付けられた整数個のCTUを含み得る。
コード化CTUを生成するために、ビデオエンコーダ20は、CTUのコーディングツリーブロック上で4分木区分を再帰的に実行してコーディングツリーブロックをコーディングブロックに分割し得、したがって、「コーディングツリーユニット」という名前である。コーディングブロックは、サンプルのN×Nブロックであり得る。CUは、ルーマサンプルアレイ、Cbサンプルアレイ、およびCrサンプルアレイを有するピクチャの、ルーマサンプルのコーディングブロック、およびクロマサンプルの2つの対応するコーディングブロック、ならびにコーディングブロックのサンプルをコーディングするために使用されるシンタックス構造を備え得る。モノクロームピクチャ、または3つの別個のカラープレーンを有するピクチャでは、CUは、単一のコーディングブロック、およびコーディングブロックのサンプルをコーディングするために使用されるシンタックス構造を備え得る。
ビデオエンコーダ20は、CUのコーディングブロックを1つまたは複数の予測ブロックに区分し得る。予測ブロックは、同じ予測が適用されるサンプルの矩形(すなわち、正方形または非正方形)のブロックである。CUの予測ユニット(PU:prediction unit)は、ルーマサンプルの予測ブロック、クロマサンプルの2つの対応する予測ブロック、および予測ブロックを予測するために使用されるシンタックス構造を備え得る。モノクロームピクチャ、または3つの別個のカラープレーンを有するピクチャでは、PUは、単一の予測ブロック、および予測ブロックを予測するために使用されるシンタックス構造を備え得る。ビデオエンコーダ20は、CUの各PUのルーマ予測ブロック、Cb予測ブロック、およびCr予測ブロックに対して、予測ルーマブロック、予測Cbブロック、および予測Crブロックを生成し得る。
ビデオエンコーダ20は、PUに対する予測ブロックを生成するために、イントラ予測またはインター予測を使用し得る。ビデオエンコーダ20がPUの予測ブロックを生成するためにイントラ予測を使用する場合、ビデオエンコーダ20は、PUに関連するピクチャの復号サンプルに基づいて、PUの予測ブロックを生成し得る。ビデオエンコーダ20がPUの予測ブロックを生成するためにインター予測を使用する場合、ビデオエンコーダ20は、PUに関連するピクチャ以外の1つまたは複数のピクチャの復号サンプルに基づいて、PUの予測ブロックを生成し得る。
ビデオエンコーダ20がCUの1つまたは複数のPUに対して予測ルーマブロック、予測Cbブロック、および予測Crブロックを生成した後、ビデオエンコーダ20は、CUに対するルーマ残差ブロックを生成し得る。CUのルーマ残差ブロックの中の各サンプルは、CUの予測ルーマブロックのうちの1つの中のルーマサンプルと、CUの元のルーマコーディングブロックの中の対応するサンプルとの間の差分を示す。加えて、ビデオエンコーダ20は、CUに対するCb残差ブロックを生成し得る。CUのCb残差ブロックの中の各サンプルは、CUの予測Cbブロックのうちの1つの中のCbサンプルと、CUの元のCbコーディングブロックの中の対応するサンプルとの間の差分を示し得る。ビデオエンコーダ20はまた、CUに対するCr残差ブロックを生成し得る。CUのCr残差ブロックの中の各サンプルは、CUの予測Crブロックのうちの1つの中のCrサンプルと、CUの元のCrコーディングブロックの中の対応するサンプルとの間の差分を示し得る。
さらに、ビデオエンコーダ20は、4分木区分を使用して、CUのルーマ残差ブロック、Cb残差ブロック、およびCr残差ブロックを、1つまたは複数のルーマ変換ブロック、Cb変換ブロック、およびCr変換ブロックに分解し得る。変換ブロックは、同じ変換が適用されるサンプルの矩形(たとえば、正方形または非正方形)ブロックである。CUの変換ユニット(TU:transform unit)は、ルーマサンプルの変換ブロック、クロマサンプルの2つの対応する変換ブロック、および変換ブロックサンプルを変換するために使用されるシンタックス構造を備え得る。したがって、CUの各TUは、ルーマ変換ブロック、Cb変換ブロック、およびCr変換ブロックに関連し得る。TUに関連するルーマ変換ブロックは、CUのルーマ残差ブロックのサブブロックであり得る。Cb変換ブロックは、CUのCb残差ブロックのサブブロックであり得る。Cr変換ブロックは、CUのCr残差ブロックのサブブロックであり得る。モノクロームピクチャ、または3つの別個のカラープレーンを有するピクチャでは、TUは、単一の変換ブロック、および変換ブロックのサンプルを変換するために使用されるシンタックス構造を備え得る。
ビデオエンコーダ20は、1つまたは複数の変換をTUのルーマ変換ブロックに適用して、TUに対するルーマ係数ブロックを生成し得る。係数ブロックは、変換係数の2次元アレイであり得る。変換係数は、スカラー量であり得る。ビデオエンコーダ20は、1つまたは複数の変換をTUのCb変換ブロックに適用して、TUに対するCb係数ブロックを生成し得る。ビデオエンコーダ20は、1つまたは複数の変換をTUのCr変換ブロックに適用して、TUに対するCr係数ブロックを生成し得る。
係数ブロック(たとえば、ルーマ係数ブロック、Cb係数ブロック、またはCr係数ブロック)を生成した後、ビデオエンコーダ20は、係数ブロックを量子化し得る。量子化は、概して、変換係数が量子化されて、場合によっては、変換係数を表すために使用されるデータの量を低減し、さらなる圧縮をもたらすプロセスを指す。ビデオエンコーダ20が係数ブロックを量子化した後、ビデオエンコーダ20は、量子化変換係数を示すシンタックス要素をエントロピー符号化し得る。たとえば、ビデオエンコーダ20は、量子化変換係数を示すシンタックス要素に、コンテキスト適応型バイナリ算術コーディング(CABAC:Context-Adaptive Binary Arithmetic Coding)を実行し得る。
ビデオエンコーダ20は、コード化ピクチャの表現および関連するデータを形成するビットのシーケンスを含む、ビットストリームを出力し得る。ビットストリームは、NALユニットのシーケンスを備え得る。NALユニットは、NALユニットの中のデータのタイプの表示と、必要に応じてエミュレーション防止ビットとともに組み入れられたRBSPの形態でそのデータを含むバイトとを含む、シンタックス構造である。NALユニットの各々は、NALユニットヘッダを含み、RBSPをカプセル化する。NALユニットヘッダは、NALユニットタイプコードを示すシンタックス要素を含み得る。NALユニットのNALユニットヘッダによって指定されるNALユニットタイプコードは、NALユニットのタイプを示す。RBSPは、NALユニット内にカプセル化された整数個のバイトを含むシンタックス構造であり得る。いくつかの事例では、RBSPは、0個のビットを含む。
異なるタイプのNALユニットが、異なるタイプのRBSPをカプセル化し得る。たとえば、第1のタイプのNALユニットがPPS用のRBSPをカプセル化してよく、第2のタイプのNALユニットがコード化スライス用のRBSPをカプセル化してよく、第3のタイプのNALユニットがSEIメッセージ用のRBSPをカプセル化してよく、以下同様である。ビデオコーディングデータ用のRBSP(パラメータセット用およびSEIメッセージ用のRBSPではなく)をカプセル化するNALユニットは、VCL NALユニットと呼ばれることがある。
ビデオデコーダ30は、ビデオエンコーダ20によって生成されたビットストリームを受信し得る。加えて、ビデオデコーダ30は、ビットストリームを構文解析して、ビットストリームからシンタックス要素を取得し得る。ビデオデコーダ30は、ビットストリームから取得されたシンタックス要素に少なくとも部分的に基づいて、ビデオデータのピクチャを再構成し得る。ビデオデータを再構成するためのプロセスは、概して、ビデオエンコーダ20によって実行されるプロセスの逆であり得る。加えて、ビデオデコーダ30は、現在CUのTUに関連する係数ブロックを逆量子化し得る。ビデオデコーダ30は、係数ブロックに対して逆変換を実行して、現在CUのTUに関連する変換ブロックを再構成し得る。ビデオデコーダ30は、現在CUのPUに対する予測ブロックのサンプルを、現在CUのTUの変換ブロックの対応するサンプルに追加することによって、現在CUのコーディングブロックを再構成し得る。ピクチャのCUごとにコーディングブロックを再構成することによって、ビデオデコーダ30は、ピクチャを再構成し得る。
ALFは、HEVCにおいて提案され様々なワーキングドラフトおよびテストモデルソフトウェア、すなわち、HEVCテストモデル(または、「HM」)に含まれたが、ALFは、HEVCの最終バージョンに含まれていない。関連技術の中でも、HEVCテストモデルバージョンHM-3.0におけるALF設計は、最も効率的な設計として主張された。(その内容全体が参照により本明細書に組み込まれる、T.Wiegand、B.Bross、W.J.Han、J.R.Ohm、およびG.J.Sullivan、「WD3: Working Draft 3 of High-Efficiency Video Coding」、ITU-T SG16 WP3およびISO/IEC JTC1/SC29/WG11のビデオコーディング共同研究部会(JCT-VC)、JCTVC-E603、第5回会合、ジュネーブ、スイス、2011年3月16〜23日、以下では「ワーキングドラフト3」として参照する。)したがって、HM-3.0からのALF設計を本明細書で紹介する。
HM-3.0におけるALFは、ピクチャレベル最適化に基づく。すなわち、フレーム全体がコーディングされた後、ALF係数が導出される。ルーマ成分に対して2つのモード、すなわち、ブロックベース適合(BA)および領域ベース適合(RA)があった。これらの2つのモードは、同じフィルタ形状、フィルタ処理演算、ならびにシンタックス要素を共有する。それらの間の唯一の差は、分類方法である。
BAでの分類は、ブロックレベルにおけるものである。ピクチャの中の各4×4ルーマブロックは、1次元(1D)ラプラシアン方向(3つまでの方向)および2次元(2D)ラプラシアンアクティビティ(5つまでのアクティビティ値)に基づいてグループインデックスが割り当てられる。方向Dirbおよび非量子化アクティビティActbの計算は、下の式(1)〜式(4)に示され、ただし、
Figure 2018509074
は、4×4ブロックの左上ピクセル位置に対する相対座標(i,j)とともに再構成ピクセルを示し、Vi,jおよびHi,jは、(i,j)に位置するピクセルの垂直勾配および水平勾配の絶対値である。したがって、方向Dirbは、4×4ブロックにおける垂直勾配および水平勾配の絶対値を比較することによって生成され、Actbは、4×4ブロックにおける両方の方向の勾配の総和である。Actbは、ワーキングドラフト3に記載されるように、両端値を含む0〜4としての範囲にさらに量子化される。
Figure 2018509074
したがって、ピクチャにおいて合計15(5×3)個のグループが分類され、各グループは、グループインデックス値に関連付けられる。
図2は、BA分類のために使用されるこれらの15個のグループを示す概念図である。図2の例では、フィルタが、アクティビティメトリックに対する値の範囲(すなわち、範囲0〜範囲4)および方向メトリックにマッピングされる。図2における方向メトリックは、式3からの上記の0、1、および2としての値に対応し得る、方向なし、水平、および垂直としての値を有するものとして示される。図2の特定の例は、15個のカテゴリーにマッピングされるものとして、異なる6個のフィルタ(すなわち、フィルタ1、フィルタ2...フィルタ6)を示すが、より多数またはより少数のフィルタが同様に使用されてよい。図2はグループ221〜235として識別される15個のグループを有する例を示すが、より多数またはより少数のグループも使用されてよい。たとえば、アクティビティメトリックに対する5つの範囲の代わりに、より多数またはより少数の範囲が使用されてよく、より多くのグループをもたらす。追加として、3つだけの方向の代わりに、追加の方向(たとえば、45度方向および135度方向)も使用されてよい。
以下でより詳細に説明するように、各グループに関連するフィルタは、1つまたは複数のマージフラグを使用してシグナリングされ得る。1次元グループマージングの場合、グループが前のグループと同じフィルタにマッピングされているかどうかを示すために単一のフラグが送られ得る。2次元マージングの場合、グループが第1の隣接ブロック(たとえば、水平ネイバーまたは垂直ネイバーのうちの1つ)と同じフィルタにマッピングされているかどうかを示すために第1のフラグが送られ得、そのフラグが偽である場合、グループが第2の隣接ブロック(たとえば、前記水平ネイバーまたは垂直ネイバーのうち他方のもの)にマッピングされているかどうかを示すために第2のフラグが送られ得る。
RA分類の場合、各ピクチャは、最初に16(4×4)個のCTUが整列している領域に均等に分割され得、それらの各々は、ピクチャの幅および高さの1/4の幅および1/4の高さを有する、ピクチャのタイルである。領域内のピクセルは、同じグループの中にあるものと見なされてよい。
シグナリングコストおよび関連する帯域幅消費を温存するために、隣接するインデックス値を有する任意の2つのグループは、すなわち、2つのグループがALFパラメータの同じセットを使用するようにマージされ得る。グループは、1つのグループだけが残されるまで、レートひずみコストに基づいて反復的にマージされ得る。対応するモードがBAであるのか、それともRAであるのかにかかわらず、グループは、1Dベクトルに再配置される(3×5の2Dアクティビティおよび方向アレイがBAにおける1Dベクトルに再配置されるか、または4×4タイルが1Dベクトルに再配置される)。1Dベクトルの右の要素は、左の要素の中のそれらのALFパラメータを単に再使用してよい。ワーキングドラフト3のHM-3における1Dマージングのためのグループ化情報が、下のTable 1(表1)のイタリック体の部分に従ってシグナリングされる。
Figure 2018509074
(上のTable 1(表1)のシンタックスに対して)関連するセマンティクスは次の通りである。
alf_no_filters_minus1+1は、現在スライス用のフィルタセットの数を規定する。
alf_start_second_filterは、alf_no_filters_minus1が1に等しいとき、第2のフィルタが適用されるルーマサンプルの変動インデックスを規定する。
alf_filter_pattern[i]は、alf_no_filters_minus1が1よりも大きいとき、ルーマサンプルの第iの変動インデックスに対応するフィルタインデックスアレイを規定する。フィルタセット数AlfNumFiltersは、次のように導出される。
- alf_no_filters_minus1が2よりも小さい場合、
AlfNumFilters=alf_no_filters_minus1+1 (7-15)。
- そうでない場合(alf_no_filters_minus1が2よりも大きい)
AlfNumFilters=Σialf_filter_pattern[i]、ただしi=0...15 (7-16)。
対応するモードがBAであるのか、それともRAであるのかにかかわらず、グループは、やはり2Dアレイの中にある。2Dアレイの1つまたは複数の任意の要素は、マージされた1つのグループに割り当てられてよく、したがって、ALF係数の1つのセットだけがシグナリングされる。その内容全体が参照により本明細書に組み込まれる、T.Yamakage、T.Watanabe、T.Chujoh、C.-Y.Chen、C.-M.Fu、C.-Y.Tsai、Y.-W.Huang、S.Lei、I.S.Chong、M.Karczewicz、T.Ikai、「CE8.a.1: 2-D mergeable syntax」、ITU-T SG16 WP3およびISO/IEC JTC1/SC29/WG11のビデオコーディング共同研究部会(JCT-VC)、JCTVC-G316、ジュネーブ、2011年11月(以下ではJCTVC-G316)において、2Dマージングベースの方法が提案されていることにも留意されたい。下のTable 2(表2)のイタリック体の部分に示すように、提案された方法は、フレキシブルな2Dマージングをサポートするために、著しいシグナリングオーバーヘッドを必要とする。
Figure 2018509074
下のセマンティクスは、Table 2(表2)のイタリック体の部分に対応する。
alf_region_idx[i]は、適応ループフィルタに対するフィルタインデックスを規定する。
prev_alf_region_pred_flag[i]およびrem_alf_region_pred_idx[i]は、適応ループフィルタに対する係数インデックスCoeffIdxを規定する。prev_alf_region_pred_flag[i]が0に等しいとき、alf_region_idx[i]は、隣接するクラスのインデックスから推定される。
アレイCoeffIdxは、次のように導出される。
CoeffIdx[0]が、0に設定される。
値alf_curr_filtersが、1に設定される。
1〜AlfNumRegions-1としての範囲の中のiごとに、以下のステップが処理される。
alf_no_filters_minus1が0である場合、CoeffIdx[i]は0に設定される。
そうでなく、alf_no_filters_minus1が1である場合、CoeffIdx[i]はalf_region_idx[i]であるように設定される。
そうでなく、alf_no_filters_minus1が1よりも大きい場合、CoeffIdx[i]は以下のステップのように導出される。
alf_remain_regionsの値は、AlfNumRegions-iとして導出される。
alf_remain_filtersの値は、AlfNumFilters-alf_curr_filtersとして導出される。
remain_fixed_regionの値は、alf_remain_regions-alf_remain_filtersとして導出される。
remain_fixed_regionが0である場合、CoeffIdx[i]はalf_curr_filtersの値であるものと推定される。
そうでなく、prev_alf_region_pred_flag[i]が1である場合、CoeffIdx[i]は予測値mpm_region_idx[i]に推定される。
そうでなく、rem_alf_region_pred_idx[i]がmpm_region_idx[i]よりも小さい場合、CoeffIdx[i]はprev_alf_region_pred_flag[i]であるように設定される。
そうでない場合、CoeffIdx[i]はrem_alf_region_pred_idx[i]であるように設定される。
CoeffIdx[i]がalf_curr_filtersに等しい場合、alf_curr_filtersは1だけインクリメントされる。
mpm_region_idx[i]は、次のように導出される。
alf_remain_regionsがalf_remain_filters>>1よりも大きい場合、mpm_region_idx[i]はalf_curr_filtersとして導出される。
そうでなく、(i%5)が0でありalf_region_adaptation_flagが0である場合、mpm_region_idx[i]はCoeffIdx[i-5]として導出される。
そうでない場合、mpm_region_idx[i]はCoeffIdx[i-1]として導出される。
グループごとに(可能なマージングの後)、ALF係数のセットがシグナリングされる。3つまでの円対称フィルタ形状(図3A〜図3Cに示すような)がサポートされる。より詳細には、図3A〜図3Cが、3つのALFフィルタ形状、すなわち、5×5菱形(たとえば、図3A)、7×7菱形(たとえば、図3B)、および短縮された9×9菱形(たとえば、図3C)を示す。追加として、現在CUにALFが適用されるかどうかを示すために、CUレベルにおいてフラグがシグナリングされる(ワーキングドラフト3のALF設計の通り)。
ブロッキネスを低減かつ/またはビデオ品質を他の方法で改善することができるビデオブロックフィルタ処理の望ましいレベルを促進するように、フィルタ係数(時々、フィルタタップと呼ばれる)が定義または選択され得る。フィルタ係数のセットは、たとえば、ビデオブロックのエッジまたはビデオブロック内の他の位置に沿って、フィルタ処理がどのように適用されるのかを定義し得る。異なるフィルタ係数は、ビデオブロックの異なるピクセルに関して異なるレベルのフィルタ処理をもたらし得る。フィルタ処理は、たとえば、不要なアーティファクトを排除する助けとなるために、隣接するピクセル値の強度の差を平滑化または先鋭化し得る。
本開示では、「フィルタ」という用語は、概して、フィルタ係数のセットを指す。たとえば、3×3フィルタは9個のフィルタ係数のセットによって定義されてよく、5×5フィルタは25個のフィルタ係数のセットによって定義されてよく、9×5フィルタは45個のフィルタ係数のセットによって定義されてよく、以下同様である。「フィルタのセット」という用語は、概して、2つ以上のフィルタのグループを指す。たとえば、2つの3×3フィルタのセットは、9個のフィルタ係数の第1のセット、および9個のフィルタ係数の第2のセットを含むことができる。「形状」という用語は、時々、「フィルタサポート」と呼ばれ、概して、特定のフィルタに対するフィルタ係数の行数およびフィルタ係数の列数を指す。たとえば、9×9は第1の形状の一例であり、7×5は第2の形状の一例であり、5×9は第3の形状の一例である。いくつかの事例では、フィルタは、菱形形状、菱形様形状、円形形状、円形様形状、六角形形状、八角形形状、十字形状、X形状、T形状、他の幾何学的形状、または数多くの他の形状もしくは構成を含む、非矩形形状を採り得る。図3A〜図3Cにおける例は菱形形状であるが、他の形状が使用されてよい。多くの一般のケースでは、フィルタの形状にかかわらず、フィルタマスクにおける中心ピクセルが、フィルタ処理されるピクセルである。他の例では、フィルタ処理されるピクセルが、フィルタマスクの中心からオフセットされてよい。
ピクチャの中のクロマ成分の両方に対して、ALF係数の1つの単一セットが分類を伴わずに適用される。5×5菱形のフィルタ形状が常に使用される。デコーダ側において、各ピクセルサンプル
Figure 2018509074
は、下の式(5)に示すような計算に基づいてI'i,jにフィルタ処理され、ただし、Lはフィルタ長を示し、fm,nはフィルタ係数を表し、oはフィルタオフセットまたはDC係数を示す。
Figure 2018509074
HM-3.0がリリースされた後、ALFは、より少ない複雑さおよびより良好なシグナリングの観点からさらに改善された。さらに、HM-3におけるピクチャレベルALFによって導入されるコーディングレイテンシを低減するために、CTUレベルシンタックスも提案された。その内容全体が参照により本明細書に組み込まれる、C.-Y.Tsai、C.-Y.Chen、T.Yamakage、I.S.Chong、Y.-W.Huang、C.-M.Fu、T.Itoh、T.Watanabe、T.Chujoh、M.Karczewicz、S.-M.Lei、「Adaptive Loop Filtering for Video Coding」、IEEE Journal of Selected Topics in Signal Processing、Vol.7、no.6、2013年12月に、さらなる情報が見出され得る。
提案されたCTUレベルALFでは、ALFパラメータが、明示的にシグナリングされ得るか、または空間隣接CTUから継承され得る。明示的にシグナリングされるとき、T個までの(ただし、Tは特定の値、たとえば、15に設定される)ALFフィルタが、現在CTUに対してシグナリングされる。継承されるとき、ALFフィルタが(たとえば、左または上の)隣接CTUから継承されるかどうかを示すために、インジケータが送られる。現在CTUのALFフィルタが(たとえば、左または上の)隣接CTUから継承されるものとして示されるとき、隣接CTUのすべてのALFフィルタが現在CTUのフィルタであるようにコピーされ、それ以上のALFフィルタはシグナリングされない。HM-6において、ALFパラメータの空間的な継承をより良好にサポートするために、フレキシブルなシンタックスが採用されており、たとえば、「左からのコピー」をサポートするためにランレングスコーディングが使用される。その内容全体が参照により本明細書に組み込まれる、B.Bross、W.-J.Han、G.J.Sullivan、J.-R.Ohm、T.Wiegand、「High Efficiency Video Coding (HEVC) text specification draft 6」、ITU-T SG16 WP3およびISO/IEC JTC1/SC29/WG11のビデオコーディング共同研究部会(JCT-VC)、JCTVC-H1003、サンノゼ、カリフォルニア、2012年2月(以下では「ワーキングドラフト6」)に、HM-6のこれらの態様のさらなる詳細が見出され得る。
ALFに関連する上記で説明した技法は、コーディング効率を著しく改善し得る。しかしながら、上記で説明したもののような技法は、依然として1つまたは複数の潜在的な問題または限定を提示し得る。たとえば、BAベースの分類が使用されるのか、それともRAベースの分類が使用されるのかにかかわらず、HM-3.0におけるALF方法は、複数のグループのためのALFパラメータを導出するために、ピクチャレベル最適化を必要とし得る。このことは、フレーム全体がコーディングされるまでALF係数が導出されるので、ピクチャ内の潜在的に望ましくない符号化レイテンシにつながる。その上、ALF係数を導出するために、ピクチャ全体は複数回ロードされることを必要とし、そのことは、特にハードウェア実装にとって、メモリ帯域幅要件をかなり高める。
本明細書で説明する技法は、ワーキングドラフト6におけるような上の黒丸(1)において説明した潜在的な問題を避けるために、ALFをピクチャレベルではなくCTUレベルに拡張し得る。しかしながら、CTUレベルにおいてALFパラメータを最適化およびシグナリングするいくつかの技法は、ピクチャレベルにおけるALFシグナリングおよび最適化よりもずっと効率的でないことがある。
様々な例では、ALF技法の態様は、CTUレベルにおいて(たとえば、ビデオエンコーダ20のALFユニット65によって)適用され、提案された方法のうちの1つまたは複数を用いてCTUデータの一部としてシグナリングされる。様々な例では、ALFユニット65は、HEVCにおける動きベクトルコーディングのマージモードと同様の方法で、CTUの空間隣接CTUおよび/または時間隣接CTUからCTUのALF情報をコピーし得る。この場合、隣接CTUからのALFパラメータの候補リストが(たとえば、ALFユニット65によって)構成され、候補リストへのインデックスがシグナリングされてALFパラメータを決定する。上述の候補リストの各エントリは、現在CTU用の適応ループフィルタ処理を(たとえば、ALFユニット65によって)実行するために使用されるALFパラメータの完全セットである。
候補リストの中のエントリの数は、特定の数のエントリに限定されない。いくつかの例では、ALFパラメータの候補リストの中のエントリの最大数は、固定値であるように事前定義されてよく、またはビットストリームの中でシグナリングされてよく、または、たとえば、動きマージ候補の数と同じに設定されるシグナリングされた他の情報に依存する変量(たとえば、それに依存する変数)であってもよい。そのような情報は、ピクチャパラメータセット(PPS)、スライスヘッダ、シーケンスパラメータセット(SPS)、または高レベルシンタックスを含む他のレベルもしくは場所の中に存在し得る。
一例では、5つまでの候補が使用され得る。しかしながら、様々な例では、5つよりも少数または多数の候補を含む、異なる数の候補が使用されてよい。一例では、2つの空間的候補(左のCTUおよび上のCTU)および3つの時間的候補が採用される。
候補リストに対する候補のソースは、特定のソースに限定されない。様々な例では、候補リストに対する候補のソースは、空間隣接CTUおよび/または時間隣接CTUを含み得る。様々な例では、候補を提供するためにどのソースが使用され得るのか、また候補リスト上のいくつの候補が所与の候補リストに対して使用され得るのか(最大数)または使用されなければならないのか(最小数)に、異なる規則が適用される。
いくつかの例では、イントラスライスに対して空間的候補だけが許容される。いくつかの例では、1つまたは複数の時間的候補は、1つまたは複数の参照ピクチャの中のコロケートCTUである。いくつかの例では、時間的候補は、同じスライスタイプおよび/または類似の(たとえば、同じ)QP範囲を有する参照ピクチャの中にあるように制限される。いくつかの例では、参照ピクチャの中のコロケートCTUに隣接する右下、左上、上、左のCTUなどの、参照ピクチャの中のコロケートCTU以外のCTUも使用され得る。
様々な例では、マージリストを構成するとき、時間的候補が、その時間的候補が関連付けられる参照インデックスの順序に基づいて挿入される。
一例では、CTUサイズが2N×2Nであるものと想定すると、現在CTUはM×Mサブブロックとして等しく分割され、ただし、2NはMの乗算(すなわち、倍数)である。M×Mサブブロックごとに、このサブブロックの動きベクトルによって位置を特定された1つまたは複数の時間的候補が、ALF情報を導出するために使用され得る。様々な例では、MVを用いて時間的候補の位置を特定するとき、MVによって指しているブロックの左上コーナーをカバーするCTUが、時間的候補として使用され得る。代替的に、MVによって指しているブロックの中心点をカバーするCTUが、時間的候補として使用されてもよい。様々な例では、サブブロックに対して双予測が使用されるとき、時間的候補の位置を特定するためにMV0だけが使用される。いくつかの例では、時間的候補の位置を特定するためにMV1だけが使用される。代替的に、時間的候補の位置を特定するためにどのMVが使用されるのかが、SPS、PPS、またはスライスヘッダの中などのビットストリームの中でシグナリングされる。一例では、Mは8に設定される。別の例では、Mは4に設定される。別の例では、Mは1に設定される。
ALFパラメータの候補リストの中のエントリの最大数は、固定値であるように事前定義されてよく、またはビットストリームの中でシグナリングされてよく、または、たとえば、動きマージ候補の数と同じに設定されるシグナリングされた他の情報に依存する変量(たとえば、それに依存する変数)であってもよい。そのような情報は、ピクチャパラメータセット(PPS)、スライスヘッダ、シーケンスパラメータセット(SPS)、または高レベルシンタックスを含む他のレベルもしくは場所の中に存在し得る。
いくつかの例では、空間ネイバー/時間ネイバーからの2つの候補だけが、最終的にリストの中に存在し得る。いくつかの例では、現在CTUの中のブロックのうちの少なくとも1つがインター予測モードを用いてコーディングされる場合のみ時間的候補が許容され得る。いくつかの例では、イントラコード化スライスのCTUに対して、時間的候補が許容され得ない。いくつかの例では、イントラコード化スライスのCTUに対して、時間的候補が許容され得る。いくつかの例では、時間動きベクトル予測がイネーブルされている場合のみ時間的候補が許容され得る。いくつかの例では、スライスヘッダの中でシグナリングされ得る固定または専用の参照ピクチャからのみ、時間的候補が許容され得る。代替的に(または、追加として)、そのようなピクチャは、時間動きベクトル予測のために使用されるピクチャであるようにさらに制約され得る。
様々な例では、時間的候補が許容されるか否かという表示は、高レベルシンタックス、たとえば、PPS、スライスヘッダ、SPS、または高レベルシンタックスを含む他のレベル/場所としてシグナリングされる。
動きベクトル予測におけるものと類似して、異なるネイバーからの同じ内容(たとえば、ALFパラメータ)を含むエントリは、リストの中で重複している必要がない。したがって、いくつかの例では、重複を除くためのプルーニングプロセスがある。空間的または時間的候補は、事前定義された順序でリストに(プルーニングを用いて、または用いずに)追加され得る。代替的に(または、追加として)、そのような順序は、現在CTUの中の1つまたは複数のブロックがあるやり方で時間予測されるかどうかに依存し得る。たとえば、いくつかのブロックに時間動き予測が適用される場合、時間的候補は、リストのより早い位置に置かれ得る。CTU全体の復号の後にALFが行われるとき、時間動き予測を伴うエリアのパーセンテージが、リストの中での時間的候補の相対順序/相対位置を決定するために使用され得る。
いくつかの例では、時間的候補が許容されるとき、CTU内のコード化ブロックの参照インデックスに基づいて、1つの時間的候補だけが参照ピクチャから選ばれ得る。たとえば、最も頻繁に使用されるピクチャが選ばれてよい。代替的に(または、追加的に)、コロケート時間CTUだけが許容される場合、現在CTUの領域に対してコロケートされた領域の外側のピクセルを指している動きベクトルは、頻度計算のための考慮に入れられない。
様々な例では、CTUのALF情報は、空間隣接CTUおよび/または時間隣接CTUから予測され得る。この場合、予測子を識別するためのインデックスに加えて差分情報だけがシグナリングされる。いくつかの例では、空間隣接CTUおよび/または時間隣接CTUは、上記で説明したものと同じ方法のいずれかで定義される。
様々な例では、サンプル適応オフセット(SAO)パラメータがALFパラメータの一部と見なされてよいので(たとえば、CTUのALFがDC係数だけを有する特別なケース)、SAO情報も、ALFパラメータと一緒に組み合わせられてよい。追加として、ALFのシグナリングおよび予測のための上記の方法は、ALFおよびSAOパラメータに対して一緒に適用され得る。代替的に、SAOおよびALFパラメータは、独立に、ただし同じマージメカニズムを共有してシグナリングされ得る。この場合、上記の方法は、ALFパラメータに関して説明したように、SAOパラメータのシグナリングのための改善された方法として適用され得る。
様々な例では、(対称または非対称などの)フィルタ対称性情報が、CTUレベルにおいてシグナリングされ得る。代替的に、フィルタ対称性情報は、フィルタのセットごとにシグナリングされてもよい。追加として、ビットストリームの関連する部分において非対称フィルタが使用されるかどうかを示すためのフラグが、SPS/PPS/スライスヘッダの中でシグナリングされ得る。
様々な例では、フィルタ係数に対する量子化情報が、CTUレベルにおいて、またはフィルタのセットごとにシグナリングされ得る。追加として、ビットストリームの関連する部分(portion)/部分(part)の中で量子化情報がシグナリングされるかどうかを示すために、SPS/PPS/スライスヘッダの中のデータ(たとえば、インジケータ)がシグナリングされ得る。いくつかの例では、量子化情報は、構文解析されたフィルタ係数からフィルタ係数の整数値を生成するために左シフトされるべきビット数であり得る。いくつかの例では、ビットストリームの中でのフィルタ係数量子化情報の(ビデオエンコーダ20による)明示的なシグナリングの代わりに、フィルタ係数量子化情報は、ALF係数に基づいて(たとえば、ビデオデコーダ30のALFユニット91によって)暗黙のうちに導出される。いくつかの例では、量子化ビット数は、すべてのalf重み付け係数の加算に基づいて(たとえば、ビデオデコーダ30のALFユニット91によって)計算される。いくつかの例では、非DCのALF係数の総和は、最初に2nに丸められ、たとえば、総和126は128(27、ここでn=7)に丸められる。次いで、量子化ビット数が、8とnとの間の差分として(たとえば、ビデオデコーダ30のALFユニット91によって)導出される。前の例では、n=7である。したがって、量子化ビット数は1である。
様々な例では、フィルタに対して、フィルタ係数がDC係数だけを有するかどうか、したがって、フィルタがオフセット値だけを含むかどうかについての情報が、(たとえば、ビデオエンコーダ20によって)シグナリングされる。この場合、他のフィルタ係数はシグナリングされず、DCがシグナリングされる。いくつかの例では、フィルタに対してDC係数だけが存在し他の係数が存在しないケースでは、ピクセル単位、すなわち「単位ピクセル値」でDC係数がシグナリングされる。いくつかの例では、DCおよび他のフィルタ係数は、より高精度、たとえば、単位ピクセル値の1/256でシグナリングされる(この場合、「1」が値256に正規化される)。
様々な例では、フィルタに対して、(図2Eのかなり左において示した5×5菱形フィルタにおける係数C6などの)中心フィルタ係数は、他のフィルタ係数と異なってシグナリングされる。たとえば、他の係数は明示的にシグナリングされるが、中心係数は、中心係数値とデフォルト値との間の差分だけがコーディングされることを意味する差分コーディングされる。デフォルト値は、それが1となるように正規化されるように選ばれる。たとえば、浮動値1.0が整数256によって表されるように係数が量子化される場合、係数は[F0,F1..,Fn-1]/256である。いくつかの例では、中心係数(たとえば、Fn-1として示され得る)は、以下のようにコーディングされる。
・ビデオエンコーダ20において、v=Fn-1-256であり、vはさらにコーディングされる。ビデオデコーダ30がvの値を構文解析し得、Fn-1はv+256であるように(たとえば、ALFユニット91によって)導出される。
・代替的に、ビデオエンコーダ20において、v=Fn-1-(256-sum(F0,F1..,Fn-2))であり、vはさらにコーディングされる。ビデオデコーダ30がvの値を構文解析し得、Fn-1は(v+(256-sum(F0,F1..,Fn-2)))であるように(たとえば、ALFユニット91によって)導出される。
様々な例では、CTUの中で複数のグループが使用されるケースにおいて、1次元グループマージングの代わりに2次元グループマージングが使用され得る。一実装形態では、任意の2つのグループが1つにマージされることを許容する代わりに、水平または垂直の隣接されたグループだけがマージされ得る。一例として、図2を参照すると、グループがそれらの順序識別子に基づいて送信される(たとえば、最初にグループ221、次いでグループ222など)場合、グループ228は、グループ227またはグループ223とマージされ得る。それらのグループがまだシグナリングされていないので、グループ228は、グループ229〜235のいずれともマージされ得ない。さらに、それらのグループが水平ネイバーまたは垂直ネイバーでないので、グループ228は、グループ221、222、または225〜227とマージされ得ない。
いくつかの例では、マージした後、マージされたグループごとにALFパラメータの1つのセットだけがシグナリングされる。BA分類が適用される場合、CTUの中のピクセルは、いくつかのグループに分類される。グループインデックスは、2Dマップの中で順序付けられる。2Dグループマージングの場合、送信順序が左上位置から始まることを想定して、グループは、2Dマップにおけるその左または上のネイバーにマージし得る。この実装形態のさらなる詳細が以下で説明される。
様々な例では、1次元グループマージングが、やはりCTU内で使用され得る。しかしながら、(アクティビティおよび方向としての)2次元特性は、様々な方法で1次元グループインデックスに変換され得る。初期フィルタ/グループインデックスは、2つの隣接するフィルタ(すなわち、隣接するインデックスを有する2つのフィルタ)が隣接するアクティビティまたは隣接する方向のいずれかを有しなければならないという原理に従って設計される。フィルタは、その隣接するネイバーにマージしさえすればよい。DirbおよびActbを、それぞれ、ブロックbの方向およびアクティビティとして示し、Dirbが0〜(M-1)にわたることができ、Actbが0〜(N-1)にわたることができ、すなわち、多くてM個の方向およびN個のアクティビティがあると想定する。次いで、ブロックbのグループインデックスは、単なるDirb*N+Actbの代わりにDirb*N+(Dirb%2==1?N-1-Actb:Actb)として計算される。別の例では、ブロックbのグループインデックスは、Actb*M+(Actb%2==1?M-1-Dirb:Dirb)として計算される。
様々な例では、ALFがイネーブルされており、CTUが大きいサイズ、たとえば、256×256を有するとき、CU/PUサイズは、64×64などの第2のサイズよりも大きくないようにさらに制約され得る。したがって、第2のサイズ(たとえば、64×64)よりも大きいサイズに相当するノードのsplitting_flagシンタックス要素は、1としての値に設定されなければならない。ノードが第2のサイズよりも大きいサイズに相当するケースでは、フラグは1であるようにシグナリングされ得るか、またはそのようなフラグのシグナリングが回避されてよく、この場合、フラグは1であるように導出される。
本明細書で説明する様々な例は、ピクセル/ブロック分類のための様々な方法を利用する。いくつかの例では、分類は、再構成ピクセル値に基づき得る。様々な例では、いくつかの数の方向を示すために、CTUのALFコーディングモードがCTUレベルにおいてシグナリングされる。ピクセル勾配は、方向に沿って計算される。次いで、ピクセルが勾配に従って分類される。
いくつかの例では、フィルタのグループの中からフィルタを選択するために使用される分類は、CUコーディングモード、量子化、または変換などの、前にコーディングされた情報に基づき得る。いくつかの例では、CTU内で、同じCUコーディングモードを有するか、または同じCUサイズを有するか、または同じ変換情報(たとえば、サイズ、タイプ)を有するブロックの中のピクセルは、ピクセルが同じフィルタ(たとえば、同じサイズ、同じ形状、同じ係数など)を使用してフィルタ処理されることを意味する同じカテゴリーとして分類される。様々な分類は、たとえば、図2に対して説明した分類技法を置き換えてよく、またはそのような分類技法とともに使用されてもよい。
いくつかの例では、いくつかのCTU ALFルーマモードおよびクロマモードが、SPS、PPS、またはスライスヘッダの中などのビットストリームの中で、別個にシグナリングされ得る。様々な例では、CTU ALFルーマモードおよびクロマモードの数は同じであり得、一方の数だけがSPS、PPS、またはスライスヘッダの中などのビットストリームの中でシグナリングされる。このコンテキストでは、ルーマモードおよびクロマモードは、ピクセル分類を決定するためのモードを指す。いくつかの利用可能なモードが、たとえば、より高位のレベル(たとえば、SPS、PPS、スライスヘッダなど)においてシグナリングされてよく、実際のモードは、CTUレベルにおいてシグナリングされてよい。分類モードの例は、アクティビティ-方向モード、CUコーディングモードベース分類モード、変換情報ベース分類モード、および他のそのような分類モードを含む。いくつかの実装形態では、SAOが同様に分類モードと見なされてよい。
様々な例では、パディングが利用される。いくつかの例では、分類またはフィルタ処理プロセスのために、CTU、またはCTU行、またはスライス、またはタイル、またはピクチャ境界の外側のピクセルが必要とされ、それらのピクセルが利用可能でないとき、補間プロセスにおいて使用されるパディングが適用され得る。
様々な例では、CTU ALFはカスケード接続され得る。すなわち、ALFプロセスは、たとえば、すでにフィルタ処理されているCTUにフィルタ処理演算を実行することによって、CTUに対して複数回適用され得る。第2ラウンドのALFプロセスへの入力は、第1ラウンドのALFプロセスの出力である。フィルタ処理の異なるラウンドに対して異なるCTU ALF係数および制御情報がシグナリングされ得る。いくつかの例では、最大ラウンド数は、SPS、PPS、またはスライスヘッダの中などのビットストリームの中でシグナリングされ得る。いくつかの例では、現在のラウンドにおいてCTUに対してCTU ALFがオフである場合、ビットストリームの中でシグナリングされたラウンド数に達していなくても、CTU ALFはこのCTUのための次のラウンドに対してオフであることが必要とされる。
様々な例では、ブロックレベル(BA)分類は、CTUのためのCTU ALFモードとして選択される。様々な例では、2次元(2D)グループマージングが使用される。一例では、BA分類に従って、CTUの中のピクセルが5×3グループに分類される。初期グループインデックスは、次のように(下のTable 3(表3)参照)2Dマップの中に置かれてよく、ここで、水平方向および垂直方向は、上記で説明したようにアクティビティ値および方向値に対応する。
Figure 2018509074
この例では、任意のグループがその左または上の隣接するグループにマージすることを許容される。レートひずみコストまたは他の測定値に基づいて、15個のグループが、最後に下のTable 4(表4)に示すような4つのグループにマージされ得、数値は新たなグループインデックスを示す。たとえば、新たなグループ#0は、古いグループ#0、#5(古い#0に上へマージされている)、および#6(古い#5に左へマージされている)によってマージされる。
Figure 2018509074
グループマージングの後、(ビデオエンコーダ20などの)ビデオエンコーダは、新たなグループ#0、#1、#9、および#10に対するフィルタ係数をシグナリングし得る。他に対して、ビデオエンコーダ30は、左マージまたは上マージなどのマージインジケータだけをシグナリングし得る。
様々な例では、2つのCTU ALFモード、すなわち、Edge_VHおよびEdge_Diagが定義される。Edge_VHが使用されるとき、CTUの中のピクセルは5つのグループに分類される。
Figure 2018509074
が再構成ルーマ/クロマサンプルを表すとすると、分類は次のように実行される。
Figure 2018509074
Edge_Diagが使用されるとき、CTUの中のピクセルは5つのグループに分類される。
Figure 2018509074
が再構成ルーマ/クロマサンプルを表すとすると、分類は次のように実行される。
Figure 2018509074
別の例では、5つのCTU ALFモード、すなわち、SAO分類における水平、垂直、45度対角、135度対角のEOクラスと類似であるEdge_0、Edge_90、Edge_45、Edge_135が定義される。その内容全体が参照により本明細書に組み込まれる、C.-M.Fu、E.Alshina、A.Alshin、Y.-W.Huang、C.-Y.Chen、C.-Y.Tsai、C.-W.Hsu、S.-M.Lei、J.-H.Park、W.-J.Han、「Sample Adaptive Offset in the HEVC Standard」、IEEE Transactions on Circuits and Systems for Video Technology、Vol.22、No.12、2012年12月(以下では「HEVC規格におけるSAO」)に、SAO分類が記載されている。
列挙されたモードのいずれかが使用されるとき、CTUの中のピクセルは5つのグループに分類される。最初の4つのグループに対する分類は、SAO分類(「HEVC規格におけるSAO」のTable 1(表1))におけるものと同じである。最初の4つのグループの中にないピクセルは、第5のグループの中に置かれる。上記の例では、Edge_VH、Edge_Diag、およびEdge_0、Edge_90、Edge_45、Edge_135も、BAモードと一緒に使用され得る。
一例では、各4×4ブロックは、25個のグループのうちの1つに分類される。分類において、垂直、水平、45度、および135度の方向に沿ったピクセル勾配が使用される。4×4ブロックbに対して、Vi,jおよびHi,jは、bに属するピクセル位置(i,j)の、それぞれ、垂直勾配および水平勾配を示し得、Actbは、ブロックbのアクティビティを示し得る(上で定義したように)。
Figure 2018509074
および
Figure 2018509074
は、ピクセル位置(i,j)の方向45度および135度に沿った勾配を示し得る(または、それに対する導出を提供し得る)。ブロックbの平均勾配は、次のように定義され得る。
Figure 2018509074
ブロックbの方向Dirbは、次のように定義される。
Figure 2018509074
ブロックbのグループインデックスは、
Dirb×5+(Dirb%2?4-Actb:Actb)
として定義される。
様々な例では、シンタックスおよびセマンティクスは、HEVC(H.265)仕様の最上部に組み込まれる。新たに提案された部分は、下のシンタックス表(すなわち、本明細書に含まれるようなTable 5〜Table 8(表5〜表8))においてイタリック体で表されている。
Figure 2018509074
ただし、
1に等しいalf_ctu_enabled_flagは、SAOプロセスの後、再構成ピクチャにCTUレベルALFプロセスが適用されることを規定する。0に等しいalf_ctu_enabled_flagは、SAOプロセスの後、再構成ピクチャにCTUレベルALFプロセスが適用されないことを規定する。
alf_ctu_num_luma_mode_minus1は、CTUレベルALFのルーマモードの数を次のように、すなわち、AlfModeNumY=alf_ctu_num_luma_mode_minus1+1と規定する。
alf_ctu_num_chroma_mode_minus1は、CTUレベルALFのクロマモードの数を次のように、すなわち、AlfModeNumC=alf_ctu_num_chroma_mode_minus1+1と規定する。
ctu_alf_num_merge_cand+1は、CTU ALFマージ用のALF候補の数を規定する。ctu_alf_num_merge_candの場合、現在CTUのALFパラメータを予測するための候補リストは構築されない。存在しないとき、ctu_alf_num_merge_candは0に等しいと推定される。
Figure 2018509074
Figure 2018509074
ただし、
1に等しいalf_merge_flagは、現在CTUのALFパラメータが空間隣接CTUまたは時間隣接CTUにマージされることを規定する。0に等しいalf_merge_flagは、現在CTUのALFパラメータがビットストリームの中でシグナリングされることを規定する。
alf_merge_indexは、CTU ALFマージ候補のインデックスを規定する。存在しないとき、alf_merge_indexは0に等しいと推定される。
1に等しいalf_luma_enabled_flagは、ルーマALFが現在CTUに適用され、ルーマALFパラメータが現在CTUに対してシグナリングされることを規定する。0に等しいalf_luma_enabled_flagは、ルーマALFが現在CTUに適用されず、ルーマALFパラメータが現在CTUに対してシグナリングされないことを規定する。
alf_luma_modeは、現在CTUの中のルーマピクセルに対して使用されるべき分類方法を規定する。alf_luma_modeは、AlfModeNumYよりも大きくてはならない。分類方法における追加の詳細は、上の5.2において見出され得る。
alf_luma_shapeは、現在CTU用のルーマフィルタ形状を規定する。
1に等しいalf_luma_filter_symmetryは、ルーマフィルタが現在CTUに対して円対称であることを規定する。0に等しいalf_luma_filter_symmetryは、ルーマフィルタが現在CTUに対して対称でないことを規定する。
alf_luma_filter_merge_idcは、現在のルーマフィルタがAlfLumaMergeMapにおけるその左または上のルーマフィルタにマージされるかどうかを規定する。AlfLumaMergeMapは、上記で説明したようなグループマージングステータスを示し、alf_luma_modeに依存する。0に等しいalf_luma_filter_merge_idcは、グループが上または左のグループからマージされないことを規定する。1に等しいalf_luma_filter_merge_idcは、グループが左のグループからマージされないことを規定する。2に等しいalf_luma_filter_merge_idcは、グループが上のグループからマージされないことを規定する。
1に等しいalf_chroma_enabled_flagは、クロマALFが現在CTUに適用され、クロマALFパラメータが現在CTUに対してシグナリングされることを規定する。0に等しいalf_chroma_enabled_flagは、クロマALFが現在CTUに適用されず、クロマALFパラメータが現在CTUに対してシグナリングされないことを規定する。
alf_chroma_modeは、現在CTUの中のクロマピクセルに対して使用されるべき分類方法を規定する。
alf_chroma_filter_merge_idcは、現在のクロマフィルタがAlfChromaMergeMapにおけるその左または上のクロマフィルタにマージされるかどうかを規定する。AlfChromaMergeMapは、alf_chroma_modeに依存する。
Figure 2018509074
ただし、
1に等しいalf_filter_dc_only_flagは、現在のフィルタがDC係数だけを有することを規定する。すべての他の係数は0である。0に等しいalf_filter_dc_only_flagは、現在のフィルタがDC係数に加えて非0の係数を有することを規定する。
alf_filter_coeff_dcは、現在のフィルタのDC係数を規定する。
alf_filter_quant_bitは、フィルタ係数量子化において使用されるビット数を規定する。
alf_filter_coeffは、現在のフィルタの非DC係数を規定する。存在しないとき、ctu_alf_filter_coeffは0に等しいと推定される。
図4は、本開示で説明する技術を実施し得る例示的なビデオエンコーダ20を示すブロック図である。ビデオエンコーダ20は、ビデオスライス内のビデオブロックのイントラコーディングおよびインターコーディングを実行し得る。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオにおける空間的冗長性を低減または除去するために空間的予測に依拠する。インターコーディングは、ビデオシーケンスの隣接フレームまたはピクチャ内のビデオにおける時間的冗長性を低減または除去するために時間的予測に依拠する。イントラモード(Iモード)は、いくつかの空間ベース圧縮モードのうちのいずれかを指し得る。単方向予測(Pモード)または双予測(Bモード)などのインターモードは、いくつかの時間ベース圧縮モードのうちのいずれかを指し得る。
図4の例では、ビデオエンコーダ20は、ビデオデータメモリ33、区分ユニット35、予測処理ユニット41、加算器50、変換処理ユニット52、量子化ユニット54、エントロピー符号化ユニット56を含む。予測処理ユニット41は、動き推定ユニット(MEU)42、動き補償ユニット(MCU)44、およびイントラ予測ユニット46を含む。ビデオブロック再構成のために、ビデオエンコーダ20はまた、逆量子化ユニット58、逆変換処理ユニット60、加算器62、ALFユニット64、および復号ピクチャバッファ(DPB)66を含む。
図4に示すように、ビデオエンコーダ20は、ビデオデータを受信し、受信されたビデオデータをビデオデータメモリ33に記憶する。ビデオデータメモリ33は、ビデオエンコーダ20の構成要素によって符号化されるべきビデオデータを記憶し得る。ビデオデータメモリ33に記憶されるビデオデータは、たとえば、ビデオソース18から取得され得る。DPB66は、たとえば、イントラコーディングモードまたはインターコーディングモードでビデオエンコーダ20によってビデオデータを符号化する際に使用するための参照ビデオデータを記憶する、参照ピクチャメモリであり得る。ビデオデータメモリ33およびDPB66は、同期DRAM(SDRAM)を含むダイナミックランダムアクセスメモリ(DRAM)、磁気抵抗RAM(MRAM)、抵抗RAM(RRAM(登録商標))、または他のタイプのメモリデバイスなどの、様々なメモリデバイスのいずれかによって形成され得る。ビデオデータメモリ33およびDPB66は、同じメモリデバイスまたは別個のメモリデバイスによって設けられてよい。様々な例では、ビデオデータメモリ33は、ビデオエンコーダ20の他の構成要素とともにオンチップであってよく、またはこれらの構成要素に対してオフチップであってもよい。
区分ユニット35は、ビデオデータメモリ33からビデオデータを取り出し、ビデオデータをビデオブロックに区分する。この区分はまた、スライス、タイル、またはもっと大きい他の単位への区分、ならびに、たとえば、LCUおよびCUの4分木構造によるビデオブロック区分を含んでもよい。ビデオエンコーダ20は、概して、符号化されるべきビデオスライス内のビデオブロックを符号化する構成要素を示す。スライスは、複数のビデオブロックに(また場合によっては、タイルと呼ばれるビデオブロックのセットに)分割され得る。予測処理ユニット41は、エラー結果(たとえば、コーディングレート、およびひずみのレベル)に基づいて、現在のビデオブロックのための、複数のイントラコーディングモードのうちの1つまたは複数のインターコーディングモードのうちの1つなどの、複数の可能なコーディングモードのうちの1つを選択し得る。予測処理ユニット41は、残差ブロックデータを生成するために加算器50に、また参照ピクチャとして使用するための符号化ブロックを再構成するために加算器62に、得られたイントラまたはインターコード化ブロックを提供し得る。
予測処理ユニット41内のイントラ予測ユニット46は、空間的圧縮を行うために、コーディングされるべき現在ブロックと同じフレームまたはスライスの中の1つまたは複数の隣接ブロックに対する現在ビデオブロックのイントラ予測コーディングを実行し得る。予測処理ユニット41内の動き推定ユニット42および動き補償ユニット44は、時間的圧縮を行うために、1つまたは複数の参照ピクチャの中の1つまたは複数の予測ブロックに対する現在ビデオブロックのインター予測コーディングを実行する。
動き推定ユニット42は、ビデオシーケンスのための所定のパターンに従って、ビデオスライスのためのインター予測モードを決定するように構成され得る。所定のパターンは、シーケンスの中のビデオスライスをPスライスまたはBスライスとして指定し得る。動き推定ユニット42および動き補償ユニット44は、高集積されてよいが、概念的な目的のために別々に示されている。動き推定ユニット42によって実行される動き推定は、ビデオブロックに対する動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、参照ピクチャ内の予測ブロックに対する現在のビデオフレームまたはピクチャ内のビデオブロックのPUの変位を示し得る。
予測ブロックは、絶対差分和(SAD:sum of absolute difference)、2乗差分和(SSD:sum of square difference)、または他の差分メトリックによって決定され得るピクセル差分の観点で、コーディングされるべきビデオブロックのPUと密接に整合するように見出されたブロックである。いくつかの例では、ビデオエンコーダ20は、DPB66に記憶された参照ピクチャのサブ整数ピクセル位置に対する値を計算し得る。たとえば、ビデオエンコーダ20は、参照ピクチャの1/4ピクセル位置、1/8ピクセル位置、または他の分数ピクセル位置の値を補間し得る。したがって、動き推定ユニット42は、フルピクセル位置および分数ピクセル位置に対する動き探索を実行し得、分数ピクセル精度で動きベクトルを出力し得る。
動き推定ユニット42は、PUの位置と参照ピクチャの予測ブロックの位置とを比較することによって、インターコード化スライスの中のビデオブロックのPUに対する動きベクトルを計算する。参照ピクチャは、その各々がDPB66に記憶された1つまたは複数の参照ピクチャを識別する、第1の参照ピクチャリスト(リスト0)または第2の参照ピクチャリスト(リスト1)から選択され得る。動き推定ユニット42は、計算された動きベクトルをエントロピー符号化ユニット56および動き補償ユニット44へ送る。
動き補償ユニット44によって実行される動き補償は、場合によっては、サブピクセル精度への補間を実行する動き推定によって決定される動きベクトルに基づいて、予測ブロックをフェッチまたは生成することを伴い得る。現在ビデオブロックのPUに対する動きベクトルを受信すると、動き補償ユニット44は、参照ピクチャリストのうちの1つの中で動きベクトルが指す予測ブロックの位置を特定し得る。ビデオエンコーダ20は、コーディングされている現在ビデオブロックのピクセル値から予測ブロックのピクセル値を減算してピクセル差分値を形成することによって、残差ビデオブロックを形成する。ピクセル差分値は、ブロックに対する残差データを形成し、ルーマ差分成分とクロマ差分成分の両方を含み得る。加算器50は、この減算演算を実行する1つまたは複数の構成要素を表す。動き補償ユニット44はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ30によって使用するための、ビデオブロックおよびビデオスライスに関連するシンタックス要素を生成し得る。
予測処理ユニット41がイントラ予測またはインター予測のいずれかを介して現在ビデオブロックに対する予測ブロックを生成した後、ビデオエンコーダ20は、現在ビデオブロックから予測ブロックを減算することによって残差ビデオブロックを形成する。残差ブロックの中の残差ビデオデータは、1つまたは複数のTUの中に含められてよく、変換処理ユニット52に適用され得る。変換処理ユニット52は、離散コサイン変換(DCT)または概念的に類似の変換などの変換を使用して、残差ビデオデータを残差変換係数に変換する。変換処理ユニット52は、ピクセル領域から周波数領域などの変換領域に、残差ビデオデータを変換し得る。
変換処理ユニット52は、結果として生じた変換係数を量子化ユニット54に送り得る。量子化ユニット54は、ビットレートをさらに低減するために変換係数を量子化する。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって変更され得る。いくつかの例では、量子化ユニット54は、次いで、量子化変換係数を含む行列の走査を実行し得る。代替的に、エントロピー符号化ユニット56が走査を実行してもよい。
量子化に続いて、エントロピー符号化ユニット56は、量子化変換係数をエントロピー符号化する。たとえば、エントロピー符号化ユニット56は、コンテキスト適応型可変長コーディング(CAVLC)、コンテキスト適応型バイナリ算術コーディング(CABAC)、シンタックスベースコンテキスト適応型バイナリ算術コーディング(SBAC)、確率間隔区分エントロピー(PIPE)コーディング、または別のエントロピー符号化方法もしくは技術を実行し得る。エントロピー符号化ユニット56によるエントロピー符号化に続いて、符号化ビットストリームは、ビデオデコーダ30に送信されてよく、または後の送信もしくはビデオデコーダ30による取出しのためにアーカイブされてもよい。エントロピー符号化ユニット56はまた、コーディングされている現在のビデオスライスに対する動きベクトルおよび他のシンタックス要素を符号化し得る。
逆量子化ユニット58および逆変換処理ユニット60は、参照ピクチャの参照ブロックとして後で使用するための、ピクセル領域における残差ブロックを再構成するために、それぞれ、逆量子化および逆変換を適用する。動き補償ユニット44は、参照ピクチャリストのうちの1つの中の参照ピクチャのうちの1つの予測ブロックに残差ブロックを加算することによって、参照ブロックを計算し得る。動き補償ユニット44はまた、動き推定において使用するためのサブ整数ピクセル値を計算するために、再構成された残差ブロックに1つまたは複数の補間フィルタを適用し得る。加算器62は、再構成ブロックを生成するために、動き補償ユニット44によって生成された動き補償予測ブロックに、再構成された残差ブロックを追加する。
ALFユニット64は、再構成ブロック(たとえば、加算器62の出力)をフィルタ処理し、フィルタ処理された再構成ブロックを、参照ブロックとして使用するためにDPB66に記憶する。参照ブロックは、後続のビデオフレームまたはピクチャの中のブロックをインター予測するための参照ブロックとして、動き推定ユニット42および動き補償ユニット44によって使用され得る。図4に明示的に示さないが、ビデオエンコーダ20は、デブロックフィルタ、サンプル適応オフセット(SAO)フィルタ、または他のタイプのループフィルタなど、追加のフィルタを含み得る。デブロックフィルタは、たとえば、ブロック境界をフィルタ処理して再構成ビデオからブロッキネスアーティファクトを除去するために、デブロッキングフィルタ処理を適用し得る。SAOフィルタは、全体的なコーディング品質を改善するために、再構成ピクセル値にオフセットを適用し得る。追加のループフィルタ(インループまたはポストループ)も使用されてよい。
ALFユニット64は、ビデオエンコーダ20の他の構成要素とともに、本開示で説明する様々な技法を実行するように構成され得る。たとえば、ビデオエンコーダ20は、現在CTU用のALF情報を、(i)現在CTUの1つもしくは複数の空間ネイバーCTUまたは(ii)現在CTUの1つもしくは複数の時間ネイバーCTUのうちの1つまたは複数から取得するように構成され得る。ビデオエンコーダ20は、現在CTU用の取得されたALF情報に少なくとも部分的に基づいて候補リストを形成し得、候補リストからの候補に関連するALF情報を使用して、現在CTUにフィルタ処理演算を実行し得る。ALF情報は、ALF係数、ならびに分類メトリックへのALFフィルタのマッピングを含み得る。
様々な例では、ビデオエンコーダ20は、新たなALF情報を決定し得、ビデオデータの符号化ビットストリームに含めるために、候補リストからの候補に関連するインデックスを含むシンタックス要素を生成し得る。ビデオエンコーダ20はまた、ビデオデータの符号化ビットストリームに含めるために、新たなALF情報と候補に関連するALF情報との間の差分を識別する差分情報を生成し得る。他の例では、ビデオエンコーダ20は、ビデオデータの符号化ビットストリームに含めるために、候補リストからの候補に関連するインデックスを示すシンタックス要素を生成し得、その場合、ALFフィルタ情報が候補からコピーされ、差分情報は生成されない。
1つまたは複数の分類メトリックは、アクティビティメトリックおよび方向メトリックを含み得るか、あるいは1つもしくは複数のピクセルを備えるCUのサイズ、ピクセルを備えるCUのコーディングモード、1つもしくは複数のピクセルに対応する変換ユニットのサイズ、または1つもしくは複数のピクセルに対応する変換ユニットのタイプのうちの1つまたは複数などの、他の分類メトリックを含み得る。
様々な例では、ビデオエンコーダ20は、選択されたALFフィルタを使用してCTUの1つまたは複数のピクセルにフィルタ処理演算を実行することによって、フィルタ処理された画像を生成し得る。符号化動作の復号ループの一部として、ビデオエンコーダ20は、選択されたALFフィルタを使用してCTUの1つまたは複数のピクセルにフィルタ処理演算を実行することによって、フィルタ処理された画像を生成し得、フィルタ処理された画像を復号ピクチャバッファ(たとえば、DPB94)の中に記憶し得る。1つまたは複数の空間ネイバーCTUは、ピクチャ内で現在CTUに隣接して位置し得る。1つまたは複数の時間ネイバーCTUは、それぞれの参照ピクチャの中のコロケートCTUを表し得る。
1つまたは複数の空間ネイバーCTUは、現在CTUに対する左ネイバーCTUおよび上ネイバーCTUを含み得、1つまたは複数の時間ネイバーCTUは、合計で3つの時間ネイバーCTUをそれぞれの3つの参照ピクチャの中に含み得る。1つまたは複数の時間ネイバーCTUは、1つまたは複数の参照ピクチャの中のコロケートCTUであり得る。様々な例では、1つまたは複数の時間CTUは、同じスライスタイプを有する1つまたは複数の参照ピクチャの中にあるように制限され得る。
様々な例では、1つまたは複数の時間CTUは、同じ量子化パラメータ(QP)範囲を有する1つまたは複数の参照ピクチャの中にあるように制限される。
いくつかの例では、ビデオエンコーダ20は、時間隣接CTUが関連付けられている参照インデックスの順序に基づいて時間ネイバーCTUを候補リストに挿入することによって、候補リストを形成し得る。いくつかの例では、ビデオエンコーダ20は、コロケート時間隣接CTU以外のそれぞれの参照ピクチャの中の1つまたは複数の時間隣接CTUを含むように、候補リストを形成し得る。
様々な例では、ビデオエンコーダ20は、2N×2N CTUである現在CTU用のALF情報を取得し得、CTUをM×Mサブブロックに分割し得、ここで、2NがMの整数倍数であり、M×Mサブブロックの動きベクトルによって位置を特定される1つまたは複数の時間的候補をM×Mサブブロックごとに決定し得、動きベクトルによって位置を特定された1つまたは複数の時間的候補からALF情報を導出し得る。様々な例では、ビデオエンコーダ20は、動きベクトルを用いて時間的候補の位置を特定し得る。動きベクトルによって指されるブロックの左上コーナーをカバーするCTUが時間的候補として使用され得、または動きベクトルによって指されるブロックの中心点をカバーするCTUが時間的候補として使用され得る。
様々な例示的なビデオエンコーダ20では、サブブロックに対して双予測が使用されるとき、動きベクトル0だけが時間的候補の位置を特定するために使用されるか、または動きベクトル1だけが時間的候補の位置を特定するために使用されるか、または時間的候補の位置を特定するためにどの動きベクトルが使用されるのかが、SPS、PPS、またはスライスヘッダの中などのビットストリームの中でシグナリングされる。様々な例では、Mは、8、4、1、または他の値に設定され得る。様々な例では、候補リストの中のエントリの最大数は、固定値であってよく、エントリの最大数は、符号化ビデオビットストリームの中で示されてもよい。
様々な例では、候補リストの中のエントリの最大数は、可変値であってよく、エントリの最大数は、符号化ビデオビットストリームの中に含まれる情報から導出されてもよい。様々な例では、空間ネイバー/時間ネイバーからの2つの候補だけが、候補リストの中に含まれ得る。様々な例では、現在CTUの中のブロックのうちの少なくとも1つがインター予測モードを用いてコーディングされる場合のみ時間的候補が許容され得るか、またはイントラコード化スライスのCTUに対して時間的候補が許容され得ないか、もしくはイントラコード化スライスのCTUに対して時間的候補が許容され得る。
様々な例では、ビデオエンコーダ20は、高レベルシンタックス、たとえば、PPS、スライスヘッダ、SPSとして、または高レベルシンタックスを含む他の場所においてシグナリングして、時間的候補が許容されるか否かをシグナリングし得る。様々な例では、ビデオエンコーダ20は、1つまたは複数の重複する候補を除くためのプルーニングプロセスを適用することによって、候補リストを形成し得る。
空間的候補または時間的候補が許容されるとき、候補は、事前定義された順序で候補リストに(プルーニングを用いて、または用いずに)追加され得る。そのような順序は、現在CTUの中のいくつかのブロックがあるやり方で時間予測されるかどうかに依存し得る。たとえば、いくつかのブロックに時間動き予測が適用される場合、時間的候補は、リストのより早い位置に置かれ得、ALFは、CTU全体の復号の後に実行され得る。時間動き予測を伴うエリアのパーセンテージは、候補リストの中での時間的候補の相対順序および相対位置を決定するために使用され得る。
様々な例では、時間的候補が許容されるとき、CTU内のコード化ブロックの参照インデックスに基づいて、1つの時間的候補だけが参照ピクチャから選ばれ得る。最も頻繁に使用されるピクチャが選ばれてよく、またはコロケート時間CTUだけが許容される場合、現在CTUの領域に対してコロケートされた領域の外側のピクセルを指している動きベクトルは、頻度計算のための考慮に入れられなくてよい。
様々な例では、ビデオエンコーダ20は、現在CTU用の取得されたALF情報および現在CTUに関連する1つまたは複数のSAOパラメータを含むように候補リストを形成することによって、候補リストを形成し得る。様々な例では、ビデオエンコーダ20は、1つまたは複数のSAOパラメータおよびALFパラメータを独立に、ただし同じマージメカニズムを使用してシグナリングし得る。様々な例では、ビデオエンコーダ20は、現在CTU用の取得されたALF情報に関連するフィルタ対称性情報を符号化することによって、現在CTUを符号化し得る。
様々な例では、ビデオエンコーダ20は、フィルタ対称性情報をCTUレベルにおいてシグナリングし得る。フィルタ対称性情報は、対称および非対称の情報を含み得、フィルタのセットごとにシグナリングされ得る。ビデオエンコーダ20は、ビットストリームの関連する部分において非対称フィルタが使用されるかどうかを示すためのフラグを、SPS/PPS/スライスヘッダの中でシグナリングし得る。様々な例では、ビデオエンコーダ20は、現在CTU用の取得されたALF情報に関連する量子化情報を符号化することによって、現在CTUを符号化し得る。
図5は、本開示で説明する技法を実施し得る例示的なビデオデコーダ30を示すブロック図である。図5の例では、ビデオデコーダ30は、ビデオデータメモリ78、エントロピー復号ユニット80、予測処理ユニット81、逆量子化ユニット86、逆変換処理ユニット88、加算器90、およびDPB94を含む。予測処理ユニット81は、動き補償ユニット82およびイントラ予測ユニット84を含む。ビデオデコーダ30は、いくつかの例では、図4からのビデオエンコーダ20に関して説明した符号化パスとは概して逆の復号パスを実行し得る。
復号プロセス中、ビデオデコーダ30は、ビデオエンコーダ20から、符号化ビデオスライスのビデオブロックおよび関連するシンタックス要素を表す符号化ビデオビットストリームを受信する。ビデオデコーダ20は、受信された符号化ビデオビットストリームをビデオデータメモリ78に記憶する。ビデオデータメモリ78は、ビデオデコーダ30の構成要素によって復号されるべき、符号化ビデオビットストリームなどのビデオデータを記憶し得る。ビデオデータメモリ78に記憶されたビデオデータは、たとえば、記憶デバイス26から、またはカメラなどのローカルビデオソースから、または物理的データ記憶媒体にアクセスすることによって、リンク16を介して取得され得る。ビデオデータメモリ78は、符号化ビデオビットストリームからの符号化ビデオデータを記憶するコード化ピクチャバッファ(CPB)を形成し得る。DPB94は、たとえば、イントラコーディングモードまたはインターコーディングモードでビデオデコーダ30によってビデオデータを復号する際に使用するための参照ビデオデータを記憶する参照ピクチャメモリであり得る。ビデオデータメモリ78およびDPB94は、DRAM、SDRAM、MRAM、RRAM(登録商標)、または他のタイプのメモリデバイスなどの、様々なメモリデバイスのいずれかによって形成され得る。ビデオデータメモリ78およびDPB94は、同じメモリデバイスまたは別個のメモリデバイスによって設けられてよい。様々な例では、ビデオデータメモリ78は、ビデオデコーダ30の他の構成要素とともにオンチップであってよく、またはそれらの構成要素に対してオフチップであってもよい。
ビデオデコーダ30のエントロピー復号ユニット80は、量子化係数、動きベクトル、および他のシンタックス要素を生成するために、ビデオデータメモリ78に記憶されたビデオデータをエントロピー復号する。エントロピー復号ユニット80は、予測処理ユニット81に動きベクトルおよび他のシンタックス要素を転送する。ビデオデコーダ30は、ビデオスライスレベルおよび/またはビデオブロックレベルにおけるシンタックス要素を受信し得る。
ビデオスライスがイントラコード化(I)スライスとしてコーディングされるとき、予測処理ユニット81のイントラ予測ユニット84は、シグナリングされたイントラ予測モード、および現在フレームまたはピクチャの、前に復号されたブロックからのデータに基づいて、現在ビデオスライスのビデオブロックに対する予測データを生成し得る。ビデオフレームがインターコード化スライス(すなわち、BスライスまたはPスライス)としてコーディングされるとき、予測処理ユニット81の動き補償ユニット82は、エントロピー復号ユニット80から受信された動きベクトルおよび他のシンタックス要素に基づいて、現在ビデオスライスのビデオブロックに対する予測ブロックを生成する。予測ブロックは、参照ピクチャリストのうちの1つのリスト内の参照ピクチャのうちの1つから生成され得る。ビデオデコーダ30は、DPB94に記憶された参照ピクチャに基づいて、デフォルトの構成技法を使用して、参照フレームリスト、すなわち、リスト0およびリスト1を構成し得る。
動き補償ユニット82は、動きベクトルおよび他のシンタックス要素を構文解析することによって、現在ビデオスライスのビデオブロックに対する予測情報を決定し、予測情報を使用して、復号されている現在ビデオブロックに対する予測ブロックを生成する。たとえば、動き補償ユニット82は、ビデオスライスのビデオブロックをコーディングするために使用される予測モード(たとえば、イントラ予測またはインター予測)、インター予測スライスタイプ(たとえば、BスライスまたはPスライス)、スライス用の1つまたは複数の参照ピクチャリストに対する構成情報、スライスの各インター符号化ビデオブロックに対する動きベクトル、スライスの各インターコード化ビデオブロックに対するインター予測状態、および現在ビデオスライスの中のビデオブロックを復号するための他の情報を決定するために、受信されたシンタックス要素のうちのいくつかを使用する。
動き補償ユニット82はまた、補間フィルタに基づいて補間を実行し得る。動き補償ユニット82は、参照ブロックのサブ整数ピクセルに対する補間値を計算するために、ビデオブロックの符号化中にビデオエンコーダ20によって使用されたような補間フィルタを使用し得る。この場合、動き補償ユニット82は、受信されたシンタックス要素からビデオエンコーダ20によって使用された補間フィルタを決定し、予測ブロックを生成するためにその補間フィルタを使用し得る。
逆量子化ユニット86は、ビットストリームの中で提供されエントロピー復号ユニット80によって復号された量子化変換係数を、逆量子化(inverse quantize)すなわち逆量子化(de-quantize)する。逆量子化プロセスは、量子化の程度を決定し、同様に、適用されるべき逆量子化の程度を決定するために、ビデオスライスの中のビデオブロックごとに、ビデオエンコーダ20によって計算された量子化パラメータを使用することを含み得る。逆変換処理ユニット88は、ピクセル領域における残差ブロックを生成するために、変換係数に逆変換、たとえば、逆DCT、逆整数変換、または概念的に類似の逆変換プロセスを適用する。
予測処理ユニットが、たとえば、イントラ予測またはインター予測を使用して現在ビデオブロックに対する予測ブロックを生成した後、ビデオデコーダ30は、逆変換処理ユニット88からの残差ブロックを、動き補償ユニット82によって生成された対応する予測ブロックと加算することによって、再構成ビデオブロックを形成する。加算器90は、この加算演算を実行する1つまたは複数のコンポーネントを表す。ALFユニット92は、たとえば、本開示で説明するALF技法のうちの1つまたは複数を使用して、再構成ビデオブロックをフィルタ処理する。
図5に明示的に示さないが、ビデオデコーダ30はまた、デブロッキングフィルタ、SAOフィルタ、または他のタイプのフィルタのうちの1つまたは複数を含み得る。ピクセル遷移を平滑化し、または別の方法でビデオ品質を改善するために、他のループフィルタ(コーディングループの中またはコーディングループの後のいずれか)も使用され得る。次いで、所与のフレームまたはピクチャの中の復号ビデオブロックがDPB94に記憶され、DPB94は、後続の動き補償のために使用される参照ピクチャを記憶する。DPB94は、図1のディスプレイデバイス32などのディスプレイデバイス上で後で提示するために復号ビデオを記憶する、追加のメモリの一部であってよく、またはそうしたメモリとは別個であってもよい。
ALFユニット92は、ビデオデコーダ30の他の構成要素とともに、本開示で説明する様々な技法を実行するように構成され得る。たとえば、デコーダ30は、現在CTU用のALF情報を、(i)現在CTUの1つもしくは複数の空間ネイバーCTUまたは(ii)現在CTUの1つもしくは複数の時間ネイバーCTUのうちの1つまたは複数から取得するように構成され得る。ビデオデコーダ30は、現在CTU用の取得されたALF情報に少なくとも部分的に基づいて候補リストを形成し得、候補リストからの候補に関連するALF情報を使用して、現在CTUにフィルタ処理演算を実行し得る。ALF情報は、ALF係数、ならびに分類メトリックへのALFフィルタのマッピングを含み得る。
様々な例におけるデコーダ30は、候補リストからの候補に関連するインデックスを備えるシンタックス要素を受信し得、候補リストからの候補に関連するALF情報を使用して、現在CTUにフィルタ処理演算を実行し得る。
様々な例では、ビデオデコーダ30は、候補リストからの候補に関連するインデックスを備えるシンタックス要素を受信し、差分情報を受信し、新たなALF情報を決定するために、候補に関連するALF情報に差分情報を追加し、新たなALF情報を使用して、現在CTUにフィルタ処理演算を実行する。ALFフィルタ情報は、たとえば、複数のALFフィルタを含み得、ビデオデコーダ30は、1つまたは複数の分類メトリックに基づいて複数のALFフィルタの中からALFフィルタを選択し得、選択されたALFフィルタを使用してCTUの1つまたは複数のピクセルにフィルタ処理演算を実行し得る。
いくつかの例では、1つまたは複数の分類メトリックは、アクティビティメトリックおよび方向メトリックを含み得る。他の例では、1つまたは複数の分類メトリックは、1つまたは複数のピクセルを備えるCUのサイズ、ピクセルを備えるCUのコーディングモード、1つまたは複数のピクセルに対応する変換ユニットのサイズ、あるいは1つまたは複数のピクセルに対応する変換ユニットのタイプのうちの1つまたは複数を含み得る。
様々な例では、ビデオデコーダ30は、選択されたALFフィルタを使用してCTUの1つまたは複数のピクセルにフィルタ処理演算を実行することによって、フィルタ処理された画像を生成し得、フィルタ処理された画像を出力(たとえば、ディスプレイに表示または送信)し得る。様々な例では、1つまたは複数の空間ネイバーCTUは、ピクチャ内で現在CTUに隣接して位置し得る。様々な例では、1つまたは複数の時間ネイバーCTUは、それぞれの参照ピクチャの中のコロケートCTUを表し得る。1つまたは複数の空間ネイバーCTUは、現在CTUに対する左ネイバーCTUおよび上ネイバーCTUを含み得る。1つまたは複数の時間ネイバーCTUは、合計で3つの時間ネイバーCTUをそれぞれの3つの参照ピクチャの中に含み得る。いくつかの例では、1つまたは複数の時間ネイバーCTUは、1つまたは複数の参照ピクチャの中のコロケートCTUであり得る。追加的または代替的に、1つまたは複数の時間CTUは、同じスライスタイプを有する1つまたは複数の参照ピクチャの中にあるように制限され得る。
様々な例では、1つまたは複数の時間CTUは、同じ量子化パラメータ(QP)範囲を有する1つまたは複数の参照ピクチャの中にあるように制限され得る。様々な例では、ビデオデコーダ30は、時間隣接CTUが関連付けられている参照インデックスの順序に基づいて時間ネイバーCTUを候補リストに挿入することによって、候補リストを形成し得る。様々な例では、ビデオデコーダ30は、コロケート時間隣接CTU以外のそれぞれの参照ピクチャの中の1つまたは複数の時間隣接CTUを含むように候補リストを形成することによって、候補リストを形成し得る。
様々な例では、ビデオデコーダ30は、2N×2N CTUである現在CTU用のALF情報を取得し得、CTUをM×Mサブブロックに分割し得、ここで、2NがMの整数倍数であり、M×Mサブブロックの動きベクトルによって位置を特定される1つまたは複数の時間的候補をM×Mサブブロックごとに決定し得、動きベクトルによって位置を特定された1つまたは複数の時間的候補からALF情報を導出し得る。様々な例では、ビデオデコーダ30は、動きベクトルを用いて時間的候補の位置を特定し得る。動きベクトルによって指されるブロックの左上コーナーをカバーするCTUが時間的候補として使用され得、または動きベクトルによって指されるブロックの中心点をカバーするCTUが時間的候補として使用される。
様々な例では、候補リストの中のエントリの最大数は、可変値であってよく、エントリの最大数は、符号化ビデオビットストリームの中に含まれる情報から導出されてもよい。様々な例では、空間ネイバー/時間ネイバーからの2つの候補だけが、候補リストの中に含まれる。様々な例では、現在CTUの中のブロックのうちの少なくとも1つがインター予測モードを用いてコーディングされる場合のみ時間的候補が許容されるか、またはイントラコード化スライスのCTUに対して時間的候補が許容されないか、もしくはイントラコード化スライスのCTUに対して時間的候補が許容される。
様々な例では、時間動きベクトル予測がイネーブルされている場合のみ時間的候補が許容され得る。様々な例では、スライスヘッダの中でシグナリングされる固定または専用の参照ピクチャからのみ時間的候補が許容され、参照ピクチャは、時間動きベクトル予測のために使用される参照ピクチャであるようにさらに制約され得る。
様々な例では、ビデオデコーダ30は、時間的候補が許容されるか否かを示すシグナリング情報を受信し得る。そのようなシグナリングは、高レベルシンタックス、たとえば、PPS、スライスヘッダ、SPSとして、または高レベルシンタックスを含む他の場所において含まれ得る。ビデオデコーダ30は、1つまたは複数の重複する候補を除くためのプルーニングプロセスを適用することによって、候補リストを形成し得る。
様々な例では、空間的候補または時間的候補が許容されるとき、ビデオデコーダ30は、それらの候補を事前定義された順序で候補リストに(プルーニングを用いて、または用いずに)追加し得る。追加的または代替的に、そのような順序は、現在CTUの中のいくつかのブロックが時間予測されるかどうかに依存し得る。いくつかのブロックに時間動き予測が適用される場合、ビデオデコーダ30は、時間的候補をリストのより早い位置に置くことができ、ALFは、CTU全体の復号の後に適用され得る。ビデオデコーダ30は、たとえば、候補リストの中での時間的候補の相対順序および相対位置を決定するために、時間動き予測を伴うエリアのパーセンテージを使用し得る。たとえば、参照ブロックが、整列したCTUでない場合、ビデオデコーダ30は、オーバーラップのパーセンテージによって決定されるように参照ブロックとCTUとがどのくらい良好に位置合わせしているかに基づいて、時間的候補に対する順序を決定し得る。
いくつかの例では、時間的候補が許容されるとき、CTU内のコード化ブロックの参照インデックスに基づいて、1つの時間的候補だけが参照ピクチャから選ばれ得る。たとえば、最も頻繁に使用されるピクチャが選ばれてよく、またはコロケート時間CTUだけが許容される場合、現在CTUの領域に対してコロケートされた領域の外側のピクセルを指している動きベクトルは、頻度計算のための考慮に入れられなくてよい。
様々な例では、ビデオデコーダ30は、現在CTU用の取得されたALF情報および現在CTUに関連する1つまたは複数のサンプル適応オフセット(SAO)パラメータを含むように候補リストを形成することによって、候補リストを形成し得る。1つまたは複数のサンプル適応オフセットSAOパラメータおよびALFパラメータは、独立に、ただし同じマージメカニズムを使用してシグナリングされ得る。様々な例では、ビデオデコーダ30は、現在CTU用の取得されたALF情報に関連するフィルタ対称性情報を復号することによって、現在CTUを復号し得る。
様々な例では、ビデオデコーダ30は、フィルタ対称性情報を示すシグナリングをCTUレベルにおいて受信し得る。フィルタ対称性情報は、対称および非対称の情報を含み得、フィルタ対称性情報は、フィルタのセットごとにシグナリングされ得る。ビデオデコーダ30は、非対称フィルタがビットストリームの関連する部分において使用されるかどうかを示すためのフラグを、SPS/PPS/スライスヘッダの中で受信し得る。様々な例では、ビデオデコーダ30は、現在CTU用の取得されたALF情報に関連する量子化情報を復号することによって、現在CTUを復号し得る。
量子化情報は、構文解析されたフィルタ係数からフィルタ係数の整数値を生成するために左シフトされるべきビット数を含み得る。いくつかの例では、フィルタ係数量子化情報をビットストリームの中で明示的にシグナリングする代わりに、ビデオデコーダ30は、ALF係数に基づいてフィルタ係数量子化情報を暗黙のうちに導出し得る。
量子化ビット数は、すべてのALF重み付け係数の加算に基づいて計算され得、ここで、非DCのALF係数の総和は、最初に2nに丸められ、たとえば、総和126は128(27、ここでn=7)に丸められる。次いで、量子化ビット数が、8とnとの間の差分として導出され得る。前の例では、n=7であり、したがって、量子化ビット数は1である。
様々な例では、ビデオデコーダ30は、現在CTU用の取得されたALF情報が量子化されているかどうかを示すデータを復号し得る。様々な例では、現在CTU用の取得されたALF情報がDC係数だけを含む場合、ビデオデコーダ30は、現在CTU用の取得されたALF情報に対するオフセット値だけを復号することによって、CTUを復号し得る。
様々な例では、フィルタに対してDC係数だけが存在し他の係数が存在しないケースにおいて、ビデオデコーダ30は、ピクセル単位でのDC係数のシグナリングを受信し得、他の場合には、より高精度、たとえば、単位ピクセル値の1/256でのDC係数および他のフィルタ係数のシグナリングを受信し得る(この場合、「1」が値256に正規化される)。様々な例では、ビデオデコーダ30は、現在CTU用の取得されたALF情報の中心フィルタ係数を、現在CTU用の取得されたALF情報の1つまたは複数の非中心フィルタ係数とは異なって復号することによって、CTUを復号し得る。
様々な例では、他の係数は明示的にシグナリングされ得るが、中心係数は、中心係数値とデフォルト値との間の差分だけがコーディングされることを意味する差分コーディングされ、ここで、デフォルト値は、それが1に正規化されるように選ばれる。様々な例では、ビデオデコーダ30は、2次元グループマージング動作に基づいてCTUを復号することによって、CTUを復号し得る。
様々な例では、マージした後、マージされたグループごとにALFパラメータの1つのセットだけがシグナリングされ得る。BA分類が適用される場合、CTUの中のピクセルは、グループインデックスが2Dマップの中で順序付けられて、いくつかのグループに分類され得る。2Dグループマージングの場合、グループは、2Dマップにおけるその左または上のネイバーにマージされ得る。様々な例では、ビデオデコーダ30は、1つまたは複数の2次元特性に基づく1次元グループマージング動作に基づいてCTUを復号することによって、CTUを復号し得る。
様々な例では、初期フィルタ/グループインデックスは、2つの隣接するフィルタ(すなわち、隣接するインデックスを有する2つのフィルタ)が隣接するアクティビティまたは隣接する方向のいずれかを有しなければならないという原理に従って設計され得、ここで、フィルタは、その隣接するネイバーのみにマージされる。1つまたは複数の2次元特性は、アクティビティ特性および方向特性を含み得る。
様々な例では、ビデオデコーダ30は、現在CTUがしきい値サイズを上回るかどうかを決定し得、CTUがしきい値サイズを上回る場合、現在CTUをもっと小さい2つ以上のCTUに分割し得る。様々な例では、第2のサイズ(たとえば、64×64)よりも大きいサイズに相当するノードのsplitting_flagは、1としての値に設定され得、ノードが第2のサイズよりも大きいサイズに相当するケースでは、フラグは1であるようにシグナリングされるか、またはそのようなフラグのシグナリングが回避されてよく、この場合、フラグは1であるように導出され得る。
たとえば、ビデオデコーダ30は、現在CTU用のALF情報を取得することと、再構成ピクセル値に基づいて、かつ1つまたは複数の分類メトリックに基づいて、CTU内の1つまたは複数のピクセルを分類することと、CTU内の1つまたは複数のピクセルを分類することに基づいて、1つまたは複数のピクセル用のALFフィルタを選択することとを含む、ビデオコーディングの方法を実行するように構成され得る。様々な例では、1つまたは複数の分類メトリックは、複数の方向に沿って計算されたピクセル勾配を含み得、ビデオデコーダ30はまた、複数の方向に対するいくつかの方向をシグナリングするように動作可能である。
1つまたは複数の分類メトリックは、1つまたは複数のピクセルを備えるCUのコーディングモード、1つまたは複数のピクセルを備えるCUのサイズ、1つまたは複数のピクセルに対する変換タイプ、あるいは1つまたは複数のピクセルに対する変換サイズのうちの1つまたは複数を含み得る。
様々な例では、ビデオデコーダ30は、CTU内の1つまたは複数のピクセルを取り囲むピクセルにフィルタ係数を適用することによって、再構成ピクセル値に基づいて、かつ1つまたは複数の分類メトリックに基づいて、CTU内の1つまたは複数のピクセルを分類し得る。ビデオデコーダ30は、1つまたは複数のピクセルを取り囲むピクセルが利用不可能であることに応答して、1つまたは複数のピクセルを取り囲むピクセルに対して補間された値を決定するためのパディング動作を実行し得る。
様々な例では、1つまたは複数の分類メトリックは、複数の方向に沿って計算されたピクセル勾配を含み得る。ビデオデコーダ30は、複数の方向に対するいくつかの方向を示すシグナリングを受信し得る。様々な例では、1つまたは複数の分類メトリックは、1つまたは複数のピクセルを備えるCUのコーディングモード、1つまたは複数のピクセルを備えるCUのサイズ、1つまたは複数のピクセルに対する変換タイプ、あるいは1つまたは複数のピクセルに対する変換サイズのうちの1つまたは複数を含み得る。様々な例では、ビデオデコーダ30は、CTU内の1つまたは複数のピクセルを取り囲むピクセルにフィルタ係数を適用することによって、再構成ピクセル値に基づいて、かつ1つまたは複数の分類メトリックに基づいて、CTU内の1つまたは複数のピクセルを分類し得る。1つまたは複数のピクセルを取り囲むピクセルが利用不可能であることに応答して、ビデオデコーダ30は、1つまたは複数のピクセルを取り囲むピクセルに対して補間された値を決定するためのパディング動作を実行し得る。
図6は、本開示で説明する技法を実施し得る1つまたは複数の方法を示すフロー図(600)である。図6で説明する方法は、ビデオエンコーダ20のALFユニット64またはビデオデコーダ30のALFユニット92などの、ビデオエンコーダまたはビデオデコーダのフィルタユニットによって実行され得る。フィルタユニットは、現CTU用のALF情報を、(i)現在CTUの1つもしくは複数の空間ネイバーCTUまたは(ii)現在CTUの1つもしくは複数の時間ネイバーCTUのうちの1つまたは複数から取得する(602)。フィルタユニットは、現在CTU用の取得されたALF情報に少なくとも部分的に基づいて候補リストをさらに形成する(604)。フィルタユニットは、候補リストからの候補に関連するALF情報を使用して、現在CTUにフィルタ処理演算を実行する(606)。
図7は、本開示で説明する技法を実施し得る1つまたは複数の方法を示すフロー図(700)である。図7で説明する方法は、ビデオエンコーダ20のALFユニット64またはビデオデコーダ30のALFユニット92などの、ビデオエンコーダまたはビデオデコーダのフィルタユニットによって実行され得る。
様々な例では、フィルタユニットは、現在CTU用のALF情報を取得する(702)。フィルタユニットは、再構成ピクセル値に基づいて、かつ1つまたは複数の分類メトリックに基づいて、CTU内の1つまたは複数のピクセルを分類する(704)。CTU内の1つまたは複数のピクセルを分類することに基づいて、様々な例におけるフィルタユニットは、1つまたは複数のピクセル用のALFフィルタを選択する(706)。
1つまたは複数の分類メトリックは、たとえば、複数の方向に沿って計算されたピクセル勾配、1つまたは複数のピクセルを備えるCUのコーディングモード、1つまたは複数のピクセルを備えるCUのサイズ、1つまたは複数のピクセルに対する変換タイプ、あるいは1つまたは複数のピクセルに対する変換サイズを含み得る。
様々な例では、フィルタユニットは、再構成ピクセル値に基づいて、かつ1つまたは複数の分類メトリックに基づいて、CTU内の1つまたは複数のピクセルを分類するための動作を実行し得、CTU内の1つまたは複数のピクセルを取り囲むピクセルにフィルタ係数を適用し得る。1つまたは複数のピクセルを取り囲むピクセルが利用不可能であることに応答して、フィルタユニットは、1つまたは複数のピクセルを取り囲むピクセルに対して補間された値を決定するためのパディング動作を実行し得る。
1つまたは複数の例では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、1つまたは複数の命令またはコードとして、コンピュータ可読媒体上に記憶されるか、またはコンピュータ可読媒体を介して送信されてよく、ハードウェアベースの処理ユニットによって実行されてよい。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に相当するコンピュータ可読記憶媒体、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体を含んでよい。このようにして、コンピュータ可読媒体は、概して、(1)非一時的である有形コンピュータ可読記憶媒体、または(2)信号もしくは搬送波などの通信媒体に相当し得る。データ記憶媒体は、本開示で説明する技法の実装のための命令、コード、および/またはデータ構造を取り出すために1つもしくは複数のコンピュータまたは1つもしくは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品がコンピュータ可読媒体を含んでもよい。
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、フラッシュメモリ、または命令もしくはデータ構造の形態で所望のプログラムコードを記憶するために使用され得るとともに、コンピュータによってアクセスされ得る任意の他の媒体を備え得る。また、いかなる接続も厳密にはコンピュータ可読媒体と呼ばれる。たとえば、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから命令が送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含まず、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザーディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピーディスク(disk)、およびBlu-ray(登録商標)ディスク(disc)を含み、ディスク(disk)は通常、データを磁気的に再生し、ディスク(disc)は、レーザーを用いてデータを光学的に再生する。上記の組合せも、コンピュータ可読媒体の範囲に含まれるべきである。
命令は、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、または他の等価の集積論理回路もしくは個別論理回路などの、1つまたは複数のプロセッサによって実行されてよい。したがって、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書で説明する技法の実装に適した任意の他の構造のいずれかを指し得る。さらに、いくつかの態様では、本明細書で説明する機能は、符号化および復号のために構成された専用のハードウェアモジュールおよび/またはソフトウェアモジュール内に設けられてよく、あるいは複合コーデックに組み込まれてよい。また、技法は、1つまたは複数の回路または論理要素において全体的に実施されてよい。
本開示の技法は、ワイヤレスハンドセット、集積回路(IC)、またはICのセット(たとえば、チップセット)を含む、多種多様なデバイスもしくは装置において実施され得る。本開示では、開示される技法を実行するように構成されたデバイスの機能的側面を強調するために、様々なコンポーネント、モジュール、またはユニットが説明されているが、それらは、必ずしも異なるハードウェアユニットによる実現を必要とするとは限らない。むしろ、上記で説明したように、様々なユニットは、コーデックハードウェアユニットにおいて結合されてよく、または好適なソフトウェアおよび/もしくはファームウェアとともに、上記で説明したような1つもしくは複数のプロセッサを含む相互動作可能なハードウェアユニットの集合によって設けられてもよい。
様々な例が説明されてきた。これらおよび他の例は、以下の特許請求の範囲内に入る。
10 ビデオ符号化および復号システム
12 ソースデバイス
14 宛先デバイス
16 リンク
18 ビデオソース
20 ビデオエンコーダ
22 出力インターフェース
26 ストレージデバイス
28 入力インターフェース
30 ビデオデコーダ
32 ディスプレイデバイス
33 ビデオデータメモリ
35 区分ユニット
41 予測処理ユニット
42 動き推定ユニット
44 動き補償ユニット
46 イントラ予測ユニット
50 加算器
52 変換処理ユニット
54 量子化ユニット
56 エントロピー符号化ユニット
58 逆量子化ユニット
60 逆変換処理ユニット
62 加算器
64 ALFユニット
66 復号ピクチャバッファ
78 ビデオデータメモリ
80 エントロピー復号ユニット
81 予測処理ユニット
82 動き補償ユニット
84 イントラ予測ユニット
86 逆量子化ユニット
88 逆変換処理ユニット
90 加算器
92 ALFユニット
94 復号ピクチャバッファ

Claims (49)

  1. ビデオデータをコーディングするための方法であって、
    現在コーディングツリーユニット(CTU)用の適応ループフィルタ処理(ALF)情報を、(i)前記現在CTUの1つもしくは複数の空間ネイバーCTUまたは(ii)前記現在CTUの1つもしくは複数の時間ネイバーCTUのうちの1つまたは複数から取得するステップと、
    前記現在CTU用の前記取得されたALF情報に少なくとも部分的に基づいて、候補リストを形成するステップと、
    前記候補リストからの候補に関連するALF情報を使用して、前記現在CTUにフィルタ処理演算を実行するステップと
    を備える方法。
  2. 前記ALF情報がALF係数を備える、請求項1に記載の方法。
  3. 前記ALF情報が分類メトリックへのALFフィルタのマッピングを備える、請求項1に記載の方法。
  4. ビデオデータをコーディングする前記方法が前記ビデオデータを復号する方法を備え、前記方法が、
    前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を受信するステップと、
    前記候補リストからの前記候補に関連する前記ALF情報を使用して、前記現在CTUに前記フィルタ処理演算を実行するステップと
    をさらに備える、請求項1に記載の方法。
  5. ビデオデータをコーディングする前記方法が前記ビデオデータを符号化する方法を備え、前記方法が、
    ビデオデータの符号化ビットストリームに含めるために、前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を生成するステップ
    をさらに備える、請求項1に記載の方法。
  6. ビデオデータをコーディングする前記方法が前記ビデオデータを復号する方法を備え、前記方法が、
    前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を受信するステップと、
    差分情報を受信するステップと、
    新たなALF情報を決定するために、前記候補に関連する前記ALF情報に前記差分情報を追加するステップと、
    前記新たなALF情報を使用して、前記現在CTUに前記フィルタ処理演算を実行するステップと
    をさらに備える、請求項1に記載の方法。
  7. ビデオデータをコーディングする前記方法が前記ビデオデータを符号化する方法を備え、前記方法が、
    新たなALF情報を決定するステップと、
    ビデオデータの符号化ビットストリームに含めるために、前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を生成するステップと、
    ビデオデータの前記符号化ビットストリームに含めるために、前記新たなALF情報と前記候補に関連する前記ALF情報との間の差分を識別する差分情報を生成するステップと
    をさらに備える、請求項1に記載の方法。
  8. 前記ALFフィルタ情報が複数のALFフィルタを備え、前記方法が、
    1つまたは複数の分類メトリックに基づいて前記複数のALFフィルタの中からALFフィルタを選択するステップと、
    前記選択されたALFフィルタを使用して前記CTUの1つまたは複数のピクセルにフィルタ処理演算を実行するステップと
    をさらに備える、請求項1に記載の方法。
  9. 前記1つまたは複数の分類メトリックがアクティビティメトリックおよび方向メトリックを備える、請求項8に記載の方法。
  10. 前記1つまたは複数の分類メトリックが、前記1つまたは複数のピクセルを備えるCUのサイズ、前記ピクセルを備える前記CUのコーディングモード、前記1つまたは複数のピクセルに対応する変換ユニットのサイズ、あるいは前記1つまたは複数のピクセルに対応する変換ユニットのタイプのうちの1つまたは複数を備える、請求項8に記載の方法。
  11. 前記選択されたALFフィルタを使用して前記CTUの前記1つまたは複数のピクセルに前記フィルタ処理演算を実行することによって、フィルタ処理された画像を生成するステップと、
    前記フィルタ処理された画像を出力するステップと
    をさらに備える、請求項8に記載の方法。
  12. コーディングするための前記方法が符号化動作の復号ループの一部として実行され、前記方法が、
    前記選択されたALFフィルタを使用して前記CTUの前記1つまたは複数のピクセルに前記フィルタ処理演算を実行することによって、フィルタ処理された画像を生成するステップと、
    前記フィルタ処理された画像を復号ピクチャバッファの中に記憶するステップと
    をさらに備える、請求項6に記載の方法。
  13. 前記方法がワイヤレス通信デバイスによって実行され、前記ワイヤレス通信デバイスが、
    符号化ビデオデータを受信するように構成された受信機と、
    前記符号化ビデオデータを処理するための命令を実行するように構成されたプロセッサと
    を備える、請求項1に記載の方法。
  14. 前記ワイヤレス通信デバイスがセルラー電話を備え、前記符号化ビデオデータが前記受信機によって受信され、セルラー通信規格に従って復調される、請求項13に記載の方法。
  15. 前記方法がワイヤレス通信デバイスによって実行され、前記ワイヤレス通信デバイスが、
    符号化ビデオデータを送信するように構成された送信機と、
    前記符号化ビデオデータを処理するための命令を実行するように構成されたプロセッサと
    を備える、請求項1に記載の方法。
  16. 前記ワイヤレス通信デバイスがセルラー電話を備え、前記符号化ビデオデータがセルラー通信規格に従って変調され、前記送信機によって送信される、請求項15に記載の方法。
  17. ビデオデータをコーディングするためのデバイスであって、
    ビデオデータを記憶するように構成されたメモリと、
    1つまたは複数のプロセッサとを備え、前記1つまたは複数のプロセッサが、
    現在コーディングツリーユニット(CTU)用の適応ループフィルタ処理(ALF)情報を、(i)前記現在CTUの1つもしくは複数の空間ネイバーCTUまたは(ii)前記現在CTUの1つもしくは複数の時間ネイバーCTUのうちの1つまたは複数から取得し、
    前記現在CTU用の前記取得されたALF情報に少なくとも部分的に基づいて、候補リストを形成し、
    前記候補リストからの候補に関連するALF情報を使用して、前記現在CTUにフィルタ処理演算を実行する
    ように構成される、デバイス。
  18. 前記1つまたは複数のプロセッサが前記ビデオデータを復号するように構成され、前記ビデオデータを復号するために、前記1つまたは複数のプロセッサが、
    前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を受信し、
    前記候補リストからの前記候補に関連する前記ALF情報を使用して、前記現在CTUに前記フィルタ処理演算を実行する
    ようにさらに構成される、請求項17に記載のデバイス。
  19. 前記1つまたは複数のプロセッサが前記ビデオデータを符号化するように構成され、前記ビデオデータを符号化するために、前記1つまたは複数のプロセッサが、ビデオデータの符号化ビットストリームに含めるために、前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を生成するようにさらに構成される、請求項17に記載のデバイス。
  20. 前記1つまたは複数のプロセッサが前記ビデオデータを復号するように構成され、前記ビデオデータを復号するために、前記1つまたは複数のプロセッサが、
    前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を受信し、
    差分情報を受信し、
    新たなALF情報を決定するために、前記候補に関連する前記ALF情報に前記差分情報を追加し、
    前記新たなALF情報を使用して、前記現在CTUに前記フィルタ処理演算を実行する
    ようにさらに構成される、請求項17に記載のデバイス。
  21. 前記1つまたは複数のプロセッサがビデオデータを符号化するように構成され、データを符号化するために、前記1つまたは複数のプロセッサが、
    新たなALF情報を決定し、
    ビデオデータの符号化ビットストリームに含めるために、前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を生成し、
    ビデオデータの前記符号化ビットストリームに含めるために、前記新たなALF情報と前記候補に関連する前記ALF情報との間の差分を識別する差分情報を生成する
    ようにさらに構成される、請求項17に記載のデバイス。
  22. 前記ALFフィルタ情報が複数のALFフィルタを備え、前記1つまたは複数のプロセッサが、
    1つまたは複数の分類メトリックに基づいて前記複数のALFフィルタの中からALFフィルタを選択し、
    前記選択されたALFフィルタを使用して前記CTUの1つまたは複数のピクセルにフィルタ処理演算を実行する
    ようにさらに構成される、請求項17に記載のデバイス。
  23. 前記1つまたは複数の分類メトリックが、前記1つまたは複数のピクセルを備えるCUのサイズ、前記ピクセルを備える前記CUのコーディングモード、前記1つまたは複数のピクセルに対応する変換ユニットのサイズ、あるいは前記1つまたは複数のピクセルに対応する変換ユニットのタイプのうちの1つまたは複数を備える、請求項22に記載のデバイス。
  24. 前記1つまたは複数のプロセッサが、
    前記選択されたALFフィルタを使用して前記CTUの前記1つまたは複数のピクセルに前記フィルタ処理演算を実行することによって、フィルタ処理された画像を生成し、
    前記フィルタ処理された画像を出力する
    ようにさらに構成される、請求項22に記載のデバイス。
  25. 前記1つまたは複数のプロセッサが、符号化動作の復号ループの一部としてコーディングを実行するように構成され、前記1つまたは複数のプロセッサが、
    前記選択されたALFフィルタを使用して前記CTUの前記1つまたは複数のピクセルに前記フィルタ処理演算を実行することによって、フィルタ処理された画像を生成し、
    前記フィルタ処理された画像を復号ピクチャバッファの中に記憶する
    ようにさらに構成される、請求項20に記載のデバイス。
  26. 前記デバイスがワイヤレス通信デバイスであり、前記ワイヤレス通信デバイスが、
    符号化ビデオデータを受信するように構成された受信機を備え、
    前記1つまたは複数のプロセッサが、前記受信された符号化ビデオデータを処理するための命令を実行するように構成される、
    請求項17に記載のデバイス。
  27. 前記ワイヤレス通信デバイスがセルラー電話を備え、前記符号化ビデオデータが前記受信機によって受信され、セルラー通信規格に従って復調される、請求項26に記載のデバイス。
  28. 前記デバイスがワイヤレス通信デバイスであり、前記ワイヤレス通信デバイスが、
    符号化データを送信するように構成された送信機を備え、
    前記1つまたは複数のプロセッサが、前記送信機による送信に備えて前記ビデオデータを処理するための命令を実行するように構成される、
    請求項17に記載のデバイス。
  29. 前記ワイヤレス通信デバイスがセルラー電話であり、前記符号化ビデオデータがセルラー通信規格に従って変調され、次いで、前記送信機によって送信される、請求項28に記載のデバイス。
  30. ビデオデータをコーディングするためのデバイスであって、
    現在コーディングツリーユニット(CTU)用の適応ループフィルタ処理(ALF)情報を、(i)前記現在CTUの1つもしくは複数の空間ネイバーCTUまたは(ii)前記現在CTUの1つもしくは複数の時間ネイバーCTUのうちの1つまたは複数から取得するための手段と、
    前記現在CTU用の前記取得されたALF情報に少なくとも部分的に基づいて、候補リストを形成するための手段と、
    前記候補リストからの候補に関連するALF情報を使用して、前記現在CTUにフィルタ処理演算を実行するための手段と
    を備えるデバイス。
  31. 前記ビデオデータを復号するための手段をさらに備え、前記ビデオデータを復号するための前記手段が、
    前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を受信するための手段と、
    前記候補リストからの前記候補に関連する前記ALF情報を使用して、前記現在CTUに前記フィルタ処理演算を実行するための手段と
    をさらに備える、請求項30に記載のデバイス。
  32. 前記ビデオデータを符号化するための手段をさらに備え、前記ビデオデータを符号化するための前記手段が、ビデオデータの符号化ビットストリームに含めるために、前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を生成するための手段をさらに備える、
    請求項30に記載のデバイス。
  33. 前記ビデオデータを復号するための手段をさらに備え、ビデオデータを復号するための前記手段が、
    前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を受信するための手段と、
    差分情報を受信するための手段と、
    新たなALF情報を決定するために、前記候補に関連する前記ALF情報に前記差分情報を追加するための手段と、
    前記新たなALF情報を使用して、前記現在CTUに前記フィルタ処理演算を実行する手段と
    をさらに備える、請求項30に記載のデバイス。
  34. 前記ビデオデータを符号化するための手段をさらに備え、前記ビデオデータを符号化するための前記手段が、
    新たなALF情報を決定するための手段と、
    ビデオデータの符号化ビットストリームに含めるために、前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を生成するための手段と、
    ビデオデータの前記符号化ビットストリームに含めるために、前記新たなALF情報と前記候補に関連する前記ALF情報との間の差分を識別する差分情報を生成するための手段と
    をさらに備える、請求項30に記載のデバイス。
  35. 前記ALFフィルタ情報が複数のALFフィルタを備え、前記適応ループフィルタ処理(ALF)情報を取得するための前記手段が、
    1つまたは複数の分類メトリックに基づいて前記複数のALFフィルタの中からALFフィルタを選択するための手段と、
    前記選択されたALFフィルタを使用して前記CTUの1つまたは複数のピクセルにフィルタ処理演算を実行するための手段と
    をさらに備える、請求項30に記載のデバイス。
  36. 前記1つまたは複数の分類メトリックが、前記1つまたは複数のピクセルを備えるCUのサイズ、前記ピクセルを備える前記CUのコーディングモード、前記1つまたは複数のピクセルに対応する変換ユニットのサイズ、あるいは前記1つまたは複数のピクセルに対応する変換ユニットのタイプのうちの1つまたは複数を備える、請求項35に記載のデバイス。
  37. 前記選択されたALFフィルタを使用して前記CTUの前記1つまたは複数のピクセルに前記フィルタ処理演算を実行することによって、フィルタ処理された画像を生成するための手段と、
    前記フィルタ処理された画像を出力するための手段と
    をさらに備える、請求項35に記載のデバイス。
  38. 前記ビデオデータを復号するための前記手段が、符号化動作の復号ループの一部として復号を実行するように構成され、前記ビデオデータを復号するための前記手段が、
    前記選択されたALFフィルタを使用して前記CTUの前記1つまたは複数のピクセルに前記フィルタ処理演算を実行することによって、フィルタ処理された画像を生成するための手段と、
    前記フィルタ処理された画像を復号ピクチャバッファの中に記憶するための手段と
    をさらに備える、請求項33に記載のデバイス。
  39. ワイヤレス通信を実行するための手段をさらに備え、ワイヤレス通信を実行するための前記手段が、
    符号化ビデオデータを受信するための手段と、
    前記符号化ビデオデータを処理するための命令を実行するための手段と
    を備える、請求項30に記載のデバイス。
  40. ワイヤレス通信を実行するための手段をさらに備え、ワイヤレス通信を実行するための前記手段が、
    前記ビデオデータを符号化するための命令を実行するための手段と、
    前記符号化ビデオデータを送信するための手段と
    を備える、請求項30に記載のデバイス。
  41. 1つまたは複数のプロセッサによって実行されたとき、前記1つまたは複数のプロセッサに、
    現在コーディングツリーユニット(CTU)用の適応ループフィルタ処理(ALF)情報を、(i)前記現在CTUの1つもしくは複数の空間ネイバーCTUまたは(ii)前記現在CTUの1つもしくは複数の時間ネイバーCTUのうちの1つまたは複数から取得させ、
    前記現在CTU用の前記取得されたALF情報に少なくとも部分的に基づいて、候補リストを形成させ、
    前記候補リストからの候補に関連するALF情報を使用して、前記現在CTUにフィルタ処理演算を実行させる
    命令を記憶した非一時的コンピュータ可読記憶媒体。
  42. 前記命令が前記1つまたは複数のプロセッサに前記ビデオデータの復号を実行させ、実行されたとき、前記1つまたは複数のプロセッサに、
    前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を受信させ、
    前記候補リストからの前記候補に関連する前記ALF情報を使用して、前記現在CTUに前記フィルタ処理演算を実行させる
    さらなる命令を記憶する、請求項41に記載の非一時的コンピュータ可読記憶媒体。
  43. 前記命令が前記1つまたは複数のプロセッサに前記ビデオデータの符号化を実行させ、前記1つまたは複数のプロセッサによって実行されたとき、前記1つまたは複数のプロセッサに、ビデオデータの符号化ビットストリームに含めるために、前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を生成させるさらなる命令を記憶する、請求項41に記載の非一時的コンピュータ可読記憶媒体。
  44. 前記命令が前記1つまたは複数のプロセッサに前記ビデオデータの復号を実行させ、実行されたとき、前記1つまたは複数のプロセッサに、
    前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を受信させ、
    差分情報を受信させ、
    新たなALF情報を決定するために、前記候補に関連する前記ALF情報に前記差分情報を追加させ、
    前記新たなALF情報を使用して、前記現在CTUに前記フィルタ処理演算を実行させる
    さらなる命令を記憶する、請求項41に記載の非一時的コンピュータ可読記憶媒体。
  45. 前記命令が前記1つまたは複数のプロセッサに前記ビデオデータの復号を実行させ、実行されたとき、前記1つまたは複数のプロセッサに、
    新たなALF情報を決定させ、
    ビデオデータの符号化ビットストリームに含めるために、前記候補リストからの前記候補に関連するインデックスを備えるシンタックス要素を生成させ、
    ビデオデータの前記符号化ビットストリームに含めるために、前記新たなALF情報と前記候補に関連する前記ALF情報との間の差分を識別する差分情報を生成させる
    さらなる命令を記憶する、請求項41に記載の非一時的コンピュータ可読記憶媒体。
  46. 前記ALFフィルタ情報が複数のALFフィルタを備え、実行されたとき、前記1つまたは複数のプロセッサに、
    1つまたは複数の分類メトリックに基づいて前記複数のALFフィルタの中からALFフィルタを選択させ、
    前記選択されたALFフィルタを使用して前記CTUの1つまたは複数のピクセルにフィルタ処理演算を実行させる
    さらなる命令を記憶する、請求項41に記載の非一時的コンピュータ可読記憶媒体。
  47. 前記1つまたは複数の分類メトリックが、前記1つまたは複数のピクセルを備えるCUのサイズ、前記ピクセルを備える前記CUのコーディングモード、前記1つまたは複数のピクセルに対応する変換ユニットのサイズ、あるいは前記1つまたは複数のピクセルに対応する変換ユニットのタイプのうちの1つまたは複数を備える、請求項46に記載の非一時的コンピュータ可読記憶媒体。
  48. 実行されたとき、前記1つまたは複数のプロセッサに、
    前記選択されたALFフィルタを使用して前記CTUの前記1つまたは複数のピクセルに前記フィルタ処理演算を実行することによって、フィルタ処理された画像を生成させ、
    前記フィルタ処理された画像を出力させる
    さらなる命令を記憶する、請求項46に記載の非一時的コンピュータ可読記憶媒体。
  49. 前記1つまたは複数のプロセッサによって実行されたとき、前記1つまたは複数のプロセッサに、符号化動作の復号ループの一部として、前記候補リストからの前記候補に関連するALF情報を使用して、前記現在CTUに前記フィルタ処理演算を実行させるさらなる命令を記憶し、実行されたとき、前記1つまたは複数のプロセッサに、
    前記選択されたALFフィルタを使用して前記CTUの前記1つまたは複数のピクセルに前記フィルタ処理演算を実行することによって、フィルタ処理された画像を生成させ、
    前記フィルタ処理された画像を復号ピクチャバッファの中に記憶させる
    さらなる命令を記憶する、請求項44に記載の非一時的コンピュータ可読記憶媒体。
JP2017541792A 2015-02-11 2016-02-11 コーディングツリーユニット(ctu)レベル適応ループフィルタ(alf) Ceased JP2018509074A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562115067P 2015-02-11 2015-02-11
US62/115,067 2015-02-11
US15/040,913 US10057574B2 (en) 2015-02-11 2016-02-10 Coding tree unit (CTU) level adaptive loop filter (ALF)
US15/040,913 2016-02-10
PCT/US2016/017544 WO2016130801A1 (en) 2015-02-11 2016-02-11 Coding tree unit (ctu) level adaptive loop filter (alf)

Publications (2)

Publication Number Publication Date
JP2018509074A true JP2018509074A (ja) 2018-03-29
JP2018509074A5 JP2018509074A5 (ja) 2019-03-07

Family

ID=56565469

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017541792A Ceased JP2018509074A (ja) 2015-02-11 2016-02-11 コーディングツリーユニット(ctu)レベル適応ループフィルタ(alf)

Country Status (7)

Country Link
US (1) US10057574B2 (ja)
EP (1) EP3257247A1 (ja)
JP (1) JP2018509074A (ja)
KR (1) KR20170117062A (ja)
CN (1) CN107211154B (ja)
TW (1) TW201633787A (ja)
WO (1) WO2016130801A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020008910A1 (ja) * 2018-07-06 2020-01-09 ソニー株式会社 符号化装置、符号化方法、復号装置、及び、復号方法
WO2020066642A1 (ja) * 2018-09-25 2020-04-02 ソニー株式会社 符号化装置、符号化方法、復号装置、及び、復号方法
WO2020066643A1 (ja) * 2018-09-25 2020-04-02 ソニー株式会社 符号化装置、符号化方法、復号装置、及び、復号方法
WO2021132158A1 (ja) * 2019-12-23 2021-07-01 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法、および復号方法
JP2021525981A (ja) * 2018-06-01 2021-09-27 クゥアルコム・インコーポレイテッドQualcomm Incorporated ブロックベースの適応ループフィルタ(alf)の設計およびシグナリング
JP2022527012A (ja) * 2019-04-16 2022-05-27 北京字節跳動網絡技術有限公司 映像符号化のためのon適応ループフィルタリング
WO2024088003A1 (en) * 2022-10-24 2024-05-02 Mediatek Inc. Method and apparatus of position-aware reconstruction in in-loop filtering

Families Citing this family (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2996269A1 (en) 2014-09-09 2016-03-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio splicing concept
KR20180019549A (ko) * 2015-06-18 2018-02-26 엘지전자 주식회사 영상 코딩 시스템에서 영상 필터링 방법 및 장치
US11405611B2 (en) 2016-02-15 2022-08-02 Qualcomm Incorporated Predicting filter coefficients from fixed filters for video coding
US10694202B2 (en) * 2016-12-01 2020-06-23 Qualcomm Incorporated Indication of bilateral filter usage in video coding
EP3563571A4 (en) 2016-12-30 2020-02-12 Telefonaktiebolaget LM Ericsson (publ) DECODED IMAGE BUFFER MEMORY MANAGEMENT FOR PROCESSING PREDICTION OF CROSS IMAGE DATA
US10506230B2 (en) * 2017-01-04 2019-12-10 Qualcomm Incorporated Modified adaptive loop filter temporal prediction for temporal scalability support
EP3410723A1 (en) * 2017-05-31 2018-12-05 Thomson Licensing A method and a device for picture encoding and decoding
US11811975B2 (en) * 2017-05-31 2023-11-07 Interdigital Madison Patent Holdings, Sas Method and a device for picture encoding and decoding
EP3410711A1 (en) * 2017-05-31 2018-12-05 Thomson Licensing A method and a device for picture encoding and decoding
US11228757B2 (en) 2017-05-31 2022-01-18 Interdigital Vc Holdings, Inc. Method and a device for picture encoding and decoding
WO2018225593A1 (ja) * 2017-06-05 2018-12-13 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法および復号方法
CN115442599A (zh) * 2017-10-20 2022-12-06 韩国电子通信研究院 图像编码、解码方法以及存储比特流的记录介质
CN111480341A (zh) * 2017-11-01 2020-07-31 Vid拓展公司 用于合并模式的解码器侧运动矢量细化和子块运动导出
EP3704858A1 (en) * 2017-11-01 2020-09-09 Vid Scale, Inc. Methods for simplifying adaptive loop filter in video coding
US11457239B2 (en) * 2017-11-09 2022-09-27 Google Llc Block artefact reduction
US10721469B2 (en) * 2017-11-28 2020-07-21 Qualcomm Incorporated Line buffer reduction for adaptive loop filtering in video coding
KR102643115B1 (ko) 2017-11-29 2024-03-04 한국전자통신연구원 루프내 필터링을 이용한 영상 부호화/복호화 방법 및 장치
WO2019118097A1 (en) 2017-12-14 2019-06-20 Interdigital Vc Holdings, Inc. Method and apparatus for encoding a picture block
EP4221201A1 (en) 2018-01-29 2023-08-02 InterDigital VC Holdings, Inc. Encoding and decoding with refinement of the reconstructed picture
WO2019154817A1 (en) * 2018-02-09 2019-08-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Adaptive in-loop filter with multiple feature-based classifications
AU2018412414B2 (en) 2018-03-09 2023-05-11 Huawei Technologies Co., Ltd. Method and apparatus for image filtering with adaptive multiplier coefficients
MX2020010312A (es) * 2018-03-29 2020-12-09 Arris Entpr Llc Sistema y método para la eliminación de bloques del contenido de hdr.
CN111937383B (zh) 2018-03-30 2023-08-01 交互数字Vc控股公司 视频编码和解码中的色度量化参数调整
WO2019194647A1 (ko) * 2018-04-06 2019-10-10 가온미디어 주식회사 필터 정보 기반의 적응적 루프 필터링 방법, 그를 이용한 영상 부호화 및 복호화 방법
WO2019225934A1 (ko) * 2018-05-21 2019-11-28 엘지전자 주식회사 영상 코딩 시스템에서 타일 내 ctu 어드레스 관련 영상 디코딩 방법 및 그 장치
US11350118B2 (en) * 2018-05-30 2022-05-31 Digitalinsights Inc. Image encoding/decoding method and device
WO2019234613A1 (en) 2018-06-05 2019-12-12 Beijing Bytedance Network Technology Co., Ltd. Partition tree with partition into 3 sub-blocks by horizontal and vertical splits
CN110662053B (zh) 2018-06-29 2022-03-25 北京字节跳动网络技术有限公司 使用查找表的视频处理方法、装置和存储介质
CN110662054B (zh) 2018-06-29 2023-01-06 北京字节跳动网络技术有限公司 用于视频处理的方法、装置、计算机可读存储介质
EP3794825A1 (en) 2018-06-29 2021-03-24 Beijing Bytedance Network Technology Co. Ltd. Update of look up table: fifo, constrained fifo
WO2020003283A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Conditions for updating luts
CA3105330C (en) 2018-06-29 2023-12-05 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and amvp
CN114466197A (zh) 2018-06-29 2022-05-10 北京字节跳动网络技术有限公司 用于查找表更新的编码的运动信息的选择
TWI719520B (zh) * 2018-06-29 2021-02-21 大陸商北京字節跳動網絡技術有限公司 零單元的濾波
CN110662059B (zh) 2018-06-29 2021-04-20 北京字节跳动网络技术有限公司 使用查找表存储先前编码的运动信息并用其编码后续块的方法和装置
TWI734133B (zh) 2018-07-02 2021-07-21 大陸商北京字節跳動網絡技術有限公司 更新查找表的規則
US11064196B2 (en) * 2018-09-03 2021-07-13 Qualcomm Incorporated Parametrizable, quantization-noise aware bilateral filter for video coding
US11284075B2 (en) * 2018-09-12 2022-03-22 Qualcomm Incorporated Prediction of adaptive loop filter parameters with reduced memory consumption for video coding
TW202025760A (zh) 2018-09-12 2020-07-01 大陸商北京字節跳動網絡技術有限公司 要檢查多少個hmvp候選
CN109660797A (zh) * 2018-11-09 2019-04-19 北京达佳互联信息技术有限公司 自适应滤波方法、装置、电子设备及计算机可读介质
EP4325849A3 (en) 2018-11-22 2024-04-17 Beijing Bytedance Network Technology Co., Ltd. Coordination method for sub-block based inter prediction
US11051017B2 (en) * 2018-12-20 2021-06-29 Qualcomm Incorporated Adaptive loop filter (ALF) index signaling
US11044473B2 (en) * 2018-12-21 2021-06-22 Qualcomm Incorporated Adaptive loop filtering classification in video coding
EP3895423A4 (en) 2018-12-23 2022-06-22 Huawei Technologies Co., Ltd. ENCODER, DECODER AND RELATED METHODS USING AN ADAPTIVE LOOP FILTER
JP7275286B2 (ja) 2019-01-10 2023-05-17 北京字節跳動網絡技術有限公司 Lut更新の起動
CN113383554B (zh) * 2019-01-13 2022-12-16 北京字节跳动网络技术有限公司 LUT和共享Merge列表之间的交互
WO2020147773A1 (en) 2019-01-16 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Inserting order of motion candidates in lut
CN113366841A (zh) 2019-02-01 2021-09-07 北京字节跳动网络技术有限公司 配置用于视频编解码的依赖于亮度的色度残差缩放
WO2020156528A1 (en) 2019-02-01 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Filtering processes based on in-loop reshaping
CN113519164A (zh) 2019-03-02 2021-10-19 北京字节跳动网络技术有限公司 对分割结构的限制
CN113519157B (zh) * 2019-03-04 2023-12-26 北京字节跳动网络技术有限公司 视频处理中滤波信息的两级信令
CN117956147A (zh) * 2019-03-08 2024-04-30 佳能株式会社 自适应环路滤波器
US11910024B2 (en) 2019-03-11 2024-02-20 Qualcomm Incorporated Boundary handling for adaptive loop filtering
CN117499644A (zh) 2019-03-14 2024-02-02 北京字节跳动网络技术有限公司 环路整形信息的信令和语法
US11159791B2 (en) * 2019-03-16 2021-10-26 Mediatek Inc. Method and apparatus for signaling adaptive loop filter parameters in video coding
WO2020192611A1 (en) 2019-03-22 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. Interaction between merge list construction and other tools
WO2020192612A1 (en) 2019-03-23 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. Default in-loop reshaping parameters
BR112021018509A2 (pt) 2019-03-24 2021-11-23 Beijing Bytedance Network Tech Co Ltd Método para processar vídeo, aparelho em um sistema de vídeo, e, produto de programa de computador
CN113661708B (zh) 2019-04-02 2023-12-15 北京字节跳动网络技术有限公司 基于双向光流的视频编解码和解码
CN115914627A (zh) 2019-04-15 2023-04-04 北京字节跳动网络技术有限公司 自适应环路滤波器中的裁剪参数推导
CN113711609B (zh) 2019-04-19 2023-12-01 北京字节跳动网络技术有限公司 利用光流的预测细化过程中的增量运动矢量
WO2020211866A1 (en) 2019-04-19 2020-10-22 Beijing Bytedance Network Technology Co., Ltd. Applicability of prediction refinement with optical flow process
KR102662024B1 (ko) 2019-04-19 2024-05-21 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 상이한 모션 벡터 정제의 그레디언트 계산
EP3939260A4 (en) 2019-04-20 2022-07-06 Beijing Bytedance Network Technology Co., Ltd. SIGNALING OF SYNTAX ELEMENTS FOR CO-CODING OF CHROMINANCE RESIDUES
US11284114B2 (en) * 2019-04-23 2022-03-22 Qualcomm Incorporated Adaptive loop filter set index signaling
CA3137163C (en) 2019-04-24 2024-05-14 Bytedance Inc. Constraints on quantized residual differential pulse code modulation representation of coded video
CN113796069B (zh) 2019-05-01 2024-03-08 字节跳动有限公司 使用量化残差差分脉冲编解码调制编解码的帧内编解码视频
JP7288083B2 (ja) 2019-05-02 2023-06-06 バイトダンス インコーポレイテッド 符号化ツリー構造タイプに基づく符号化モード
KR102414543B1 (ko) 2019-05-16 2022-06-28 엘지전자 주식회사 크로마 포멧에 기반하여 필터 정보를 시그널링하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2020239119A1 (en) * 2019-05-30 2020-12-03 Beijing Bytedance Network Technology Co., Ltd. Adaptive loop filtering for chroma components
EP3963890A4 (en) 2019-06-04 2022-11-02 Beijing Bytedance Network Technology Co., Ltd. BUILDING A LIST OF MOVEMENT CANDIDATES USING NEIGHBOR BLOCK INFORMATION
CN113994698B (zh) 2019-06-04 2023-11-24 北京字节跳动网络技术有限公司 有条件地实施运动候选列表构建过程
WO2020244660A1 (en) 2019-06-06 2020-12-10 Beijing Bytedance Network Technology Co., Ltd. Motion candidate list construction for video coding
CN114424539A (zh) 2019-06-14 2022-04-29 北京字节跳动网络技术有限公司 处理视频单元边界和虚拟边界
CN112135129B (zh) * 2019-06-25 2024-06-04 华为技术有限公司 一种帧间预测方法及装置
TWI747339B (zh) 2019-06-27 2021-11-21 聯發科技股份有限公司 視訊編解碼之方法和裝置
WO2021006624A1 (ko) * 2019-07-08 2021-01-14 엘지전자 주식회사 적응적 루프 필터를 적용하는 비디오 또는 영상 코딩
CN117478878A (zh) 2019-07-09 2024-01-30 北京字节跳动网络技术有限公司 用于自适应环路滤波的样点确定
JP7291845B2 (ja) 2019-07-11 2023-06-15 北京字節跳動網絡技術有限公司 適応ループフィルタリングにおけるサンプルパディング
CN114128295B (zh) 2019-07-14 2024-04-12 北京字节跳动网络技术有限公司 视频编解码中几何分割模式候选列表的构建
WO2021008546A1 (en) 2019-07-15 2021-01-21 Beijing Bytedance Network Technology Co., Ltd. Accessing samples across video unit boundaries in adaptive loop filtering
WO2021025167A1 (en) * 2019-08-08 2021-02-11 Panasonic Intellectual Property Corporation Of America System and method for video coding
WO2021025168A1 (en) * 2019-08-08 2021-02-11 Panasonic Intellectual Property Corporation Of America System and method for video coding
CN114208184A (zh) 2019-08-13 2022-03-18 北京字节跳动网络技术有限公司 基于子块的帧间预测中的运动精度
EP4011070A4 (en) * 2019-08-16 2022-11-23 Huawei Technologies Co., Ltd. APS ALF CONSTRAINTS IN VIDEO CODING
CN114424541B (zh) * 2019-08-16 2024-05-31 苹果公司 压缩视频及重建压缩视频的系统、方法、及存储介质
JP7377953B2 (ja) * 2019-08-19 2023-11-10 フラウンホッファー-ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ アクセスユニットデリミタおよび適応パラメータセットの使用
US20220286692A1 (en) * 2019-08-27 2022-09-08 Hyundai Motor Company Video encoding and decoding using differential encoding
US11962767B2 (en) 2019-08-29 2024-04-16 Lg Electronics Inc. Apparatus and method for coding image
WO2021045130A1 (en) * 2019-09-03 2021-03-11 Panasonic Intellectual Property Corporation Of America System and method for video coding
US11303890B2 (en) * 2019-09-05 2022-04-12 Qualcomm Incorporated Reusing adaptive loop filter (ALF) sub-picture boundary processing for raster-scan slice boundaries
US11140388B2 (en) * 2019-09-06 2021-10-05 Tencent America LLC Method and apparatus for non-linear loop filtering
JP7321364B2 (ja) 2019-09-14 2023-08-04 バイトダンス インコーポレイテッド ビデオコーディングにおけるクロマ量子化パラメータ
KR20220058899A (ko) 2019-09-18 2022-05-10 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 비디오 코딩에서 적응형 루프 필터의 2-파트 시그널링
KR20220061980A (ko) * 2019-09-22 2022-05-13 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 적응적 루프 필터링에서의 패딩 프로세스
WO2021052504A1 (en) 2019-09-22 2021-03-25 Beijing Bytedance Network Technology Co., Ltd. Scaling method for sub-block based inter prediction
KR20220063177A (ko) 2019-09-27 2022-05-17 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 상이한 비디오 유닛들 간의 적응적 루프 필터링
WO2021057996A1 (en) 2019-09-28 2021-04-01 Beijing Bytedance Network Technology Co., Ltd. Geometric partitioning mode in video coding
CN114651442A (zh) 2019-10-09 2022-06-21 字节跳动有限公司 视频编解码中的跨分量适应性回路滤波
JP7454042B2 (ja) 2019-10-10 2024-03-21 北京字節跳動網絡技術有限公司 適応ループ・フィルタリングにおける利用可能でないサンプル位置でのパディング・プロセス
JP7443509B2 (ja) 2019-10-14 2024-03-05 バイトダンス インコーポレイテッド ビデオコーディングにおけるクロマ量子化パラメータの使用
WO2021083259A1 (en) 2019-10-29 2021-05-06 Beijing Bytedance Network Technology Co., Ltd. Signaling of cross-component adaptive loop filter
US11432016B2 (en) * 2019-12-05 2022-08-30 Hfi Innovation Inc. Methods and apparatuses of syntax signaling constraint for cross-component adaptive loop filter in video coding system
WO2021118977A1 (en) 2019-12-09 2021-06-17 Bytedance Inc. Using quantization groups in video coding
JP7393550B2 (ja) 2019-12-11 2023-12-06 北京字節跳動網絡技術有限公司 クロス成分適応ループフィルタリングのためのサンプルパディング
CN115053522A (zh) * 2019-12-12 2022-09-13 Lg电子株式会社 采用自适应环路滤波器的视频或图像编码
CN114902657A (zh) 2019-12-31 2022-08-12 字节跳动有限公司 视频编解码中的自适应颜色变换
FR3109685A1 (fr) * 2020-04-22 2021-10-29 Orange Procédés et dispositifs de codage et de décodage d'une séquence vidéo multi-vues
WO2022002007A1 (en) 2020-06-30 2022-01-06 Beijing Bytedance Network Technology Co., Ltd. Boundary location for adaptive loop filtering
CN117082239A (zh) * 2021-01-22 2023-11-17 Oppo广东移动通信有限公司 视频编解码方法与系统、及视频编码器与视频解码器
WO2023143588A1 (en) * 2022-01-29 2023-08-03 Beijing Bytedance Network Technology Co., Ltd. Method, apparatus, and medium for video processing
CN114863351B (zh) * 2022-07-07 2022-09-20 河北工业大学 基于Web3.0的图声融合路基填料协同识别管理系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010143427A1 (ja) * 2009-06-10 2010-12-16 パナソニック株式会社 画像符号化方法、画像復号方法、およびそれらの装置
WO2012137890A1 (ja) * 2011-04-05 2012-10-11 シャープ株式会社 画像フィルタ装置、復号装置、符号化装置、および、データ構造
WO2012142966A1 (en) * 2011-04-21 2012-10-26 Mediatek Inc. Method and apparatus for improved in-loop filtering
WO2013108684A1 (ja) * 2012-01-19 2013-07-25 三菱電機株式会社 動画像復号装置、動画像符号化装置、動画像復号方法及び動画像符号化方法
JP2013187868A (ja) * 2012-03-09 2013-09-19 Sharp Corp 画像復号装置、画像符号化装置、およびデータ構造
WO2013155084A1 (en) * 2012-04-09 2013-10-17 Qualcomm Incorporated Lcu-based adaptive loop filtering for video coding
JP2013223050A (ja) * 2012-04-13 2013-10-28 Sharp Corp フィルタ装置、復号装置、および符号化装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8611435B2 (en) * 2008-12-22 2013-12-17 Qualcomm, Incorporated Combined scheme for interpolation filtering, in-loop filtering and post-loop filtering in video coding
US9143803B2 (en) * 2009-01-15 2015-09-22 Qualcomm Incorporated Filter prediction based on activity metrics in video coding
JP5359657B2 (ja) * 2009-07-31 2013-12-04 ソニー株式会社 画像符号化装置および方法、記録媒体、並びにプログラム
US9094658B2 (en) * 2010-05-10 2015-07-28 Mediatek Inc. Method and apparatus of adaptive loop filtering
BR112013000556A2 (pt) * 2010-07-09 2019-09-24 Samsung Electronics Co Ltd método para decodificar um vídeo usando um processador de decodificação de vídeo, método para codificar um vídeo usando um processador de codificação de vídeo, aparaleho de decodificação de vídeo em relação a um processador de decodificação de vídeo, aparelho de codificação de vídeo em relação com um processador de codificação de vídeo, e meio de gravação legível por computador
US8990435B2 (en) * 2011-01-17 2015-03-24 Mediatek Inc. Method and apparatus for accessing data of multi-tile encoded picture stored in buffering apparatus
US8964853B2 (en) 2011-02-23 2015-02-24 Qualcomm Incorporated Multi-metric filtering
JP2014514833A (ja) * 2011-06-10 2014-06-19 メディアテック インコーポレイテッド スケーラブルビデオコーディングの方法及び装置
US9860528B2 (en) * 2011-06-10 2018-01-02 Hfi Innovation Inc. Method and apparatus of scalable video coding
CN104641640B (zh) 2012-07-16 2018-04-20 三星电子株式会社 用于用信号传输sao参数的视频编码方法和视频编码设备以及视频解码方法和视频解码设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010143427A1 (ja) * 2009-06-10 2010-12-16 パナソニック株式会社 画像符号化方法、画像復号方法、およびそれらの装置
WO2012137890A1 (ja) * 2011-04-05 2012-10-11 シャープ株式会社 画像フィルタ装置、復号装置、符号化装置、および、データ構造
WO2012142966A1 (en) * 2011-04-21 2012-10-26 Mediatek Inc. Method and apparatus for improved in-loop filtering
WO2013108684A1 (ja) * 2012-01-19 2013-07-25 三菱電機株式会社 動画像復号装置、動画像符号化装置、動画像復号方法及び動画像符号化方法
JP2013187868A (ja) * 2012-03-09 2013-09-19 Sharp Corp 画像復号装置、画像符号化装置、およびデータ構造
WO2013155084A1 (en) * 2012-04-09 2013-10-17 Qualcomm Incorporated Lcu-based adaptive loop filtering for video coding
JP2013223050A (ja) * 2012-04-13 2013-10-28 Sharp Corp フィルタ装置、復号装置、および符号化装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A. FULDSETH AND G. BJONTEGAARD: "CE8.a.2: ALF with LCU-based syntax", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11, vol. JCTVC-H0066_r2, JPN6019051047, February 2012 (2012-02-01), pages 1 - 11, ISSN: 0004256875 *
A. FULDSETH AND G. BJONTEGAARD: "Improved ALF with low latency and reduced complexity", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11, vol. JCTVC-G499_r2, JPN6019051045, November 2011 (2011-11-01), pages 1 - 7, ISSN: 0004256874 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021525981A (ja) * 2018-06-01 2021-09-27 クゥアルコム・インコーポレイテッドQualcomm Incorporated ブロックベースの適応ループフィルタ(alf)の設計およびシグナリング
JP7422684B2 (ja) 2018-06-01 2024-01-26 クゥアルコム・インコーポレイテッド ブロックベースの適応ループフィルタ(alf)の設計およびシグナリング
WO2020008910A1 (ja) * 2018-07-06 2020-01-09 ソニー株式会社 符号化装置、符号化方法、復号装置、及び、復号方法
WO2020066642A1 (ja) * 2018-09-25 2020-04-02 ソニー株式会社 符号化装置、符号化方法、復号装置、及び、復号方法
WO2020066643A1 (ja) * 2018-09-25 2020-04-02 ソニー株式会社 符号化装置、符号化方法、復号装置、及び、復号方法
JP2022527012A (ja) * 2019-04-16 2022-05-27 北京字節跳動網絡技術有限公司 映像符号化のためのon適応ループフィルタリング
US11611747B2 (en) 2019-04-16 2023-03-21 Beijing Bytedance Network Technology Co., Ltd. Adaptive loop filtering for video coding
WO2021132158A1 (ja) * 2019-12-23 2021-07-01 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法、および復号方法
WO2024088003A1 (en) * 2022-10-24 2024-05-02 Mediatek Inc. Method and apparatus of position-aware reconstruction in in-loop filtering

Also Published As

Publication number Publication date
KR20170117062A (ko) 2017-10-20
WO2016130801A1 (en) 2016-08-18
US10057574B2 (en) 2018-08-21
EP3257247A1 (en) 2017-12-20
CN107211154B (zh) 2020-08-18
CN107211154A (zh) 2017-09-26
US20160234492A1 (en) 2016-08-11
TW201633787A (zh) 2016-09-16

Similar Documents

Publication Publication Date Title
JP7071603B1 (ja) ビデオコーディングのためにブロックの複数のクラスのためのフィルタをマージすること
US10057574B2 (en) Coding tree unit (CTU) level adaptive loop filter (ALF)
KR102519780B1 (ko) 비디오 코딩에서 적응적 루프 필터링에서의 다중 필터들의 혼동
JP2019525679A (ja) クロス成分フィルタ
WO2017196852A1 (en) Signalling of filtering information

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170815

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190128

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190128

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200331

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200427

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200703

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200803

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20201221