(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-10
(45)【発行日】2023-11-20
(54)【発明の名称】ビデオコーディングにおけるALF APS制約
(51)【国際特許分類】
H04N 19/70 20140101AFI20231113BHJP
H04N 19/82 20140101ALI20231113BHJP
【FI】
H04N19/70
H04N19/82
(21)【出願番号】P 2022509731
(86)(22)【出願日】2020-07-10
(86)【国際出願番号】 US2020041666
(87)【国際公開番号】W WO2020215102
(87)【国際公開日】2020-10-22
【審査請求日】2022-03-25
(32)【優先日】2019-08-16
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】504161984
【氏名又は名称】ホアウェイ・テクノロジーズ・カンパニー・リミテッド
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】チェン、ジアンレ
(72)【発明者】
【氏名】ヘンドリー、フヌ
【審査官】田部井 和彦
(56)【参考文献】
【文献】国際公開第2013/031315(WO,A1)
【文献】米国特許出願公開第2014/0133547(US,A1)
【文献】Olena Chubach et al.,CE5-related: On the syntax constraints of ALF APS [online],JVET-O0288-v1,インターネット <URL: https://jvet-experts.org/doc_end_user/documents/15_Gothenburg/wg11/JVET-O0288-v1.zip>,2019年06月25日
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/70
H04N 19/82
(57)【特許請求の範囲】
【請求項1】
デコーダにおいて実装される方法であって
、
スライス用に符号化されたビデオデータおよび適応パラメータセット(APS)を含むビットストリームを受信する段階であって
、前記APSは、adaptation_parameter_set_idおよびaps_params_typeを有し、前記adaptation_parameter_set_idは、前記APSに対する識別子を指定し、前記aps_params_typeは、前記APSに含まれているパラメータのタイプを指定し、前記aps_params_typeがALF_APSに等しい場合、前記APSは、適応ループフィルタ(ALF) APSを有し、前記ALF APSは、ALF輝度フィルタシグナルフラグ(alf_luma_filter_signal_flag)およびALF彩度フィルタシグナルフラグ(alf_chroma_filter_signal_flag)を有し、前記alf_luma_filter_signal_flagは、輝度フィルタセットが前記ALF APSにおいてシグナリングされるかどうかを指定し、前記alf_chroma_filter_signal_flagは、彩度フィルタセットが前記ALF APSにおいてシグナリングされるかどうかを指定し、前記ALF_APSに等しい前記aps_params_typeおよびslice_alf_aps_id_luma[i]に等しい前記adaptation_parameter_set_idを有するAPSネットワーク抽象化層(NAL)ユニットの前記alf_luma_filter_signal_flagの値は、1に等しくなるように制約され、前記ALF_APSに等しい前記aps_params_typeおよびslice_alf_aps_id_chromaに等しい前記adaptation_parameter_set_idを有する前記APS NULユニットの前記alf_chroma_filter_signal_flagの値は、1に等しくなるように制約され、前記slice_alf_aps_id_luma[i]は、前記スライスの輝度成分によって参照される第iのALF APSのadaptation_parameter_set_idを指定し、前記slice_alf_aps_id_chromaは、前記スライスの彩度成分により参照される前記ALF APSのadaptation_parameter_set_idを指定する、段階と
、
前記輝度フィルタセットが前記ALF_APSにおいてシグナリングされることを前記alf_luma_filter_signal_flagが指定している場合に前記輝度フィルタセットを復号する段階と、
前記彩度フィルタセットが前記ALF_APSにおいてシグナリングされることを前記alf_chroma_filter_signal_flagが指定している場合に前記彩度フィルタセットを復号する段階と、
前記ALF APSにおけるALFパラメータに基づい
て前記スライスを復号する段
階であって、前記ALFパラメータは、前記輝度フィルタセットおよび/または前記彩度フィルタセットを有する、段階と
を備える方法。
【請求項2】
1に等しい前記alf_luma_filter_signal_flagは
、前記輝度フィルタセットが前記ALF APSにおいてシグナリングされ
ることを指
定し、0に等しい前記alf_luma_filter_signal_flagは、前記輝度フィルタセットが前記ALF APSにおいてシグナリングされないことを指定する、請求項1に記載の方法。
【請求項3】
1に等しい前記alf_chroma_filter_signal_flagは
、前記彩度フィルタセットが前記ALF APSにおいてシグナリングされ
ることを指定
し、0に等しい前記alf_chroma_filter_signal_flagは、前記彩度フィルタセットが前記ALF APSにおいてシグナリングされないことを指定する、請求項
1または2に記載の方法。
【請求項4】
前記slice_alf_aps_id_luma[i]および前記slice_alf_aps_id_chromaは、前記スライスのスライスヘッダに含まれている、請求項1から3のいずれか一項に記載の方法。
【請求項5】
エンコーダにおいて実装される方法であって
、
符号化されたビデオシーケンスの一部として、スライスをビットストリームに符号化する段階と
、
適応パラメータセット(APS)をビットストリームに符号化する段階であって、前記APSは、adaptation_parameter_set_idおよびaps_params_typeを有し、前記adaptation_parameter_set_idは、前記APSに対する識別子を指定し、前記aps_params_typeは、前記APSに含まれているパラメータのタイプを指定し、前記aps_params_typeがALF_APSに等しい場合、前記APSは、適応ループフィルタ(ALF) APSを有する、段階と、
前記スライスへの適用のための適応ループフィルタ(ALF)パラメータを決定する段
階であって、前記ALFパラメータは、輝度フィルタセットおよび/または彩度フィルタセットを有する、段階と、
前記ビットストリームにおけ
る前記AL
F AP
Sに前記ALFパラメータを符号化する段階であって、前記ALF APSは、ALF輝度フィルタシグナルフラグ(alf_luma_filter_signal_flag)およびALF彩度フィルタシグナルフラグ(alf_chroma_filter_signal_flag)
を有し、前記alf_luma_filter_signal_flagは、前記輝度フィルタセットが前記ALF APSにおいてシグナリングされるかどうかを指定し、前記alf_chroma_filter_signal_flagは、前記彩度フィルタセットが前記ALF APSにおいてシグナリングされるかどうかを指定し、前記ALF_APSに等しい前記aps_params_typeおよびslice_alf_aps_id_luma[i]に等しい前記adaptation_parameter_set_idを有するAPSネットワーク抽象化層(NAL)ユニットの前記alf_luma_filter_signal_flagの値は、1に等しくなるように制約され、前記ALF_APSに等しい前記aps_params_typeおよびslice_alf_aps_id_chromaに等しい前記adaptation_parameter_set_idを有するAPS NULユニットの前記alf_chroma_filter_signal_flagの値は、1に等しくなるように制約され、前記slice_alf_aps_id_luma[i]は、前記スライスの輝度成分によって参照される第iのALF APSのadaptation_parameter_set_idを指定し、前記slice_alf_aps_id_chromaは、前記スライスの彩度成分により参照される前記ALF APSのadaptation_parameter_set_idを指定する、段階と
、
デコーダへの通信のために前記ビットストリームを格納する段階と
を備える方法。
【請求項6】
1に等しい前記alf_luma_filter_signal_flagは
、前記輝度フィルタセットが前記ALF APSにおいてシグナリングされ
ることを指
定し、0に等しい前記alf_luma_filter_signal_flagは、前記輝度フィルタセットが前記ALF APSにおいてシグナリングされないことを指定する、請求
項5に記載の方法。
【請求項7】
1に等しい前記alf_chroma_filter_signal_flagは
、前記彩度フィルタセットが前記ALF APSにおいてシグナリングされ
ることを指
定し、0に等しい前記alf_chroma_filter_signal_flagは、前記彩度フィルタセットが前記ALF APSにおいてシグナリングされないことを指定する、請求
項5または6に記載の方法。
【請求項8】
前記slice_alf_aps_id_luma[i]および前記slice_alf_aps_id_chromaは、前記スライスのスライスヘッダに含まれている、請求項5から7のいずれか一項に記載の方法。
【請求項9】
ビデオコーディングデバイスであって、プロセッサ、前記プロセッサに結合された受信機、前記プロセッサに結合されたメモリ、および、前記プロセッサに結合された送信機を備え、前記プロセッサ、前記受信機、前記メモリ、および前記送信機は、請求項1か
ら8のいずれか一項に記載の方法を実行するように構成される、ビデオコーディングデバイス。
【請求項10】
ビデオコーディングデバイスによって用いるためのコンピュータプログラムであって、前記コンピュータプログラムは、プロセッサによって実行されたとき、請求項1か
ら8のいずれか一項に記載の方法を前記ビデオコーディングデバイスに実行させるコンピュータ実施可能命令を備える、コンピュータプログラム。
【請求項11】
デコーダであって
、
スライス用に符号化されたビデオデータおよび適応パラメータセット(APS)を含むビットストリームを受信するための受信手段であって
、前記APSは、adaptation_parameter_set_idおよびaps_params_typeを有し、前記adaptation_parameter_set_idは、前記APSに対する識別子を指定し、前記aps_params_typeは、前記APSに含まれているパラメータのタイプを指定し、前記aps_params_typeがALF_APSに等しい場合、前記APSは、適応ループフィルタ(ALF) APSを有し、前記ALF APSは、ALF輝度フィルタシグナルフラグ(alf_luma_filter_signal_flag)およびALF彩度フィルタシグナルフラグ(alf_chroma_filter_signal_flag)を有し、前記alf_luma_filter_signal_flagは、輝度フィルタセットが前記ALF APSにおいてシグナリングされるかどうかを指定し、前記alf_chroma_filter_signal_flagは、彩度フィルタセットが前記ALF APSにおいてシグナリングされるかどうかを指定し、前記ALF_APSに等しい前記aps_params_typeおよびslice_alf_aps_id_luma[i]に等しい前記adaptation_parameter_set_idを有するAPSネットワーク抽象化層(NAL)ユニットの前記alf_luma_filter_signal_flagの値は、1に等しくなるように制約され、前記ALF_APSに等しい前記aps_params_typeおよびslice_alf_aps_id_chromaに等しい前記adaptation_parameter_set_idを有する前記APS NULユニットの前記alf_chroma_filter_signal_flagの値は、1に等しくなるように制約され、前記slice_alf_aps_id_luma[i]は、前記スライスの輝度成分によって参照される第iのALF APSのadaptation_parameter_set_idを指定し、前記slice_alf_aps_id_chromaは、前記スライスの彩度成分により参照される前記ALF APSのadaptation_parameter_set_idを指定する、受信手段と、
前記輝度フィルタセットが前記ALF_APSにおいてシグナリングされることを前記alf_luma_filter_signal_flagが指定している場合に前記輝度フィルタセットを復号するための輝度フィルタセット復号手段と、
前記彩度フィルタセットが前記ALF_APSにおいてシグナリングされることを前記alf_chroma_filter_signal_flagが指定している場合に前記彩度フィルタセットを復号するための彩度フィルタセット復号手段と、
前記ALF APSにおけるALFパラメータに基づいて
、前記スライスを復号するための復号手
段であって、前記ALFパラメータは、前記輝度フィルタセットおよび/または前記彩度フィルタセットを有する、復号手段と、
復号されたビデオシーケンスの一部として、表示のために前記スライスを転送するための転送手段と
を備えるデコーダ。
【請求項12】
前記デコーダはさらに、請求項1か
ら4のいずれか一項に記載の方法を実行するように構成される、請求
項11に記載のデコーダ。
【請求項13】
エンコーダであって、
符号化されたビデオシーケンスの一部としてスライスをビットストリームに符号化するためのスライス符号化手段と
、
適応パラメータセット(APS)をビットストリームに符号化するAPS符号化手段であって、前記APSは、adaptation_parameter_set_idおよびaps_params_typeを有し、前記adaptation_parameter_set_idは、前記APSに対する識別子を指定し、前記aps_params_typeは、前記APSに含まれているパラメータのタイプを指定し、前記aps_params_typeがALF_APSに等しい場合、前記APSは、適応ループフィルタ(ALF) APSを有する、APS符号化手段と、
前記スライスへの適用のため
のAL
Fパラメータを決定するための決定手
段であって、前記ALFパラメータは、輝度フィルタセットおよび/または彩度フィルタセットを有する、決定手段と、
前記ALFパラメータを前記ビットストリームにおけ
る前記AL
F AP
Sに符号化するためのALF符号化手段であって、前記ALF APSは、ALF輝度フィルタシグナルフラグ(alf_luma_filter_signal_flag)およびALF彩度フィルタシグナルフラグ(alf_chroma_filter_signal_flag)
を有し、前記alf_luma_filter_signal_flagは、前記輝度フィルタセットが前記ALF APSにおいてシグナリングされるかどうかを指定し、前記alf_chroma_filter_signal_flagは、前記彩度フィルタセットが前記ALF APSにおいてシグナリングされるかどうかを指定し、前記ALF_APSに等しい前記aps_params_typeおよびslice_alf_aps_id_luma[i]に等しい前記adaptation_parameter_set_idを有するAPSネットワーク抽象化層(NAL)ユニットの前記alf_luma_filter_signal_flagの値は、1に等しくなるように制約され、前記ALF_APSに等しい前記aps_params_typeおよびslice_alf_aps_id_chromaに等しい前記adaptation_parameter_set_idを有する前記APS NULユニットの前記alf_chroma_filter_signal_flagの値は、1に等しくなるように制約され、前記slice_alf_aps_id_luma[i]は、前記スライスの輝度成分によって参照される第iのALF APSのadaptation_parameter_set_idを指定し、前記slice_alf_aps_id_chromaは、前記スライスの彩度成分により参照される前記ALF APSのadaptation_parameter_set_idを指定する、ALF符号化手段と、
デコーダへの通信のために前記ビットストリームを格納するための格納手段と
を備えるエンコーダ。
【請求項14】
前記エンコーダはさらに、請求
項5から8のいずれか一項に記載の方法を実行するように構成される、請求
項13に記載のエンコーダ。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
本特許出願は、参照によってここに組み込まれる「ALF APSの制約」と題する、Jianle Chen, et al.によって2019年8月16日に出願された米国仮特許出願第62/888,267号の利益を主張するものである。
【0002】
本開示は概して、ビデオコーディングに関連し、具体的には、ビデオコーディングにおいてビデオデータを圧縮するために使用されるツールパラメータをコーディングする効率的なシグナリングに関する。
【背景技術】
【0003】
比較的短いビデオでさえも、その描画に必要とされるビデオデータの量は著しいものになる可能性があり、その結果、帯域幅容量の制限された通信ネットワークを介してデータをストリーミングするか、そうでなければ通信するときに困難が生じることがある。したがって、ビデオデータは概して、今日の遠隔通信ネットワークを介して通信される前に圧縮される。ビデオのサイズは、メモリリソースが限定的である場合があるので、ビデオが格納デバイス上に格納される場合にもまた問題となり得る。ビデオ圧縮デバイスは、多くの場合、ソースにおけるソフトウェアおよび/またはハードウェアを用いて、伝送または格納の前にビデオデータをコーディングし、これによりデジタルビデオイメージを表現するのに必要なデータの量を低下させる。次に、圧縮データは、デスティネーションにおいて、ビデオデータを復号するビデオ圧縮解除デバイスによって受信される。限定されたネットワークリソース、および、より高いビデオ品質へのますます増加する要求によって、画質の犠牲をほとんどまたは全く有さずに圧縮比を改善する、改善された圧縮および解凍技術が望ましい。
【発明の概要】
【0004】
実施形態において、開示は、デコーダにおいて実装される方法であって、デコーダの受信機によって、ALF輝度フィルタシグナルフラグ(alf_luma_filter_signal_flag)およびALF彩度フィルタシグナルフラグ(alf_chroma_filter_signal_flag)を含む適応ループフィルタ(ALF)適応パラメータセット(APS)を含むビットストリームを受信する段階であって、alf_luma_filter_signal_flagまたはalf_chroma_filter_signal_flagの少なくとも1つは1に等しい、段階と、デコーダのプロセッサによって、ALF APSにおけるALFパラメータに基づいてスライスを復号する段階とを備える方法を含む。
【0005】
APSは複数のスライスに関連するがピクチャ全体に関連しないデータを維持するために使用され得る。APSはALFパラメータを含み得る。ALFパラメータは、スライスにおける輝度成分のみ、スライスにおける彩度成分のみ、または、スライスにおける輝度成分および彩度成分の両方に対するALF処理の適用を制御し得る。ALF APSは、APSに含まれるデータのタイプを示すフラグを含み得る。しかしながら、ALF APSに関連するフラグベースのシグナリングはいくつかのビデオコーディングシステムにおいて非効率的である。例えばフラグは、ALF APSが輝度フィルタセットのみ、彩度フィルタセットのみ、輝度フィルタセットおよび彩度セットの両方を含むこと、または、輝度フィルタセットおよび彩度フィルタセットのいずれも含まないことを示すように設定され得る。輝度フィルタセットのおよび彩度フィルタセットのいずれも含まないALF APSは有用でない。しかしながら、規格によって許可されている任意の選択肢をサポートするために、標準化されたコーデックが構築されるべきである。したがって、輝度フィルタセットおよび彩度フィルタセットのいずれも含まないALF APSを許可することは、発生すべきでない選択肢をサポートするべき非効率的コーデック設計をもたらす。本例は、ALF APSシグナリングおよび結果のコーデック設計の効率を増加させるための制約を適用する。例えば、ALF APSは、ALF APSにおけるALF輝度フィルタシグナルフラグおよびALF彩度フィルタシグナルフラグの一方または両方が1に設定されるように制約される。これにより、ALF APSが少なくとも輝度フィルタセットまたは彩度フィルタセットを含み、したがって空でないことを確実にする。別の例として、スライスに関連付けられたスライスヘッダは、妥当な輝度フィルタセットを含むALF APSを示す輝度成分ALF APS IDを含み得る。これが発生するとき、ALF APSにおけるALF輝度フィルタシグナルフラグが1に設定される制約が利用され得る。これにより、スライスヘッダが輝度データに関連するALF APSを参照するときにALF APSが輝度データを含むことを確実にする。別の例として、スライスに関連付けられたスライスヘッダは、妥当な彩度フィルタセットを含むALF APSを示す彩度成分ALF APS IDを含み得る。これが発生するとき、ALF APSにおけるALF彩度フィルタシグナルフラグが1に設定される制約が利用され得る。これにより、スライスヘッダが彩度データに関連するALF APSを参照するときにALF APSが彩度データを含むことを確実にする。これらの制約は、不要なALF APSシグナリングが回避されること、および、ALF APSが、復号されたスライスをフィルタリングするのに必要なデータを含むことを確実にし得る。そのような制約は、エンコーダで仮想参照デコーダ(HRD)によってチェックされ得る。HRDは、これらの問題のケースが発生しないことを確実にするために、規格遵守について、符号化されたビットストリームをチェックし得る。したがって、これらの制約は、デコーダが、そのような問題のケースがビットストリームにおいて発生していないことを想定することを可能にする。したがって、デコーダは、そのような問題のケースをサポートすることを回避するために簡略化され得る。したがって、本制約は、エラーを防止し、コーディング効率を増加し、および/または、エンコーダおよび/またはデコーダの複雑性を低減する。したがって、本例は、エンコーダおよび/またはデコーダにおけるネットワークリソース、メモリリソース、および/または処理リソースの使用量を低減しながら、ビデオコーディングシステム機能を増加し得る。
【0006】
任意選択で、先行する態様のいずれかにおいて、態様の別の実装が提供され、alf_luma_filter_signal_flagは、輝度フィルタセットがALF APSにおいてシグナリングされるかどうかを指定する。
【0007】
任意選択で、先行する態様のいずれかにおいて、態様の別の実装が提供され、スライスに関連付けられたスライスヘッダにおける輝度成分ALF APS識別子(ID)(slice_alf_aps_id_luma[i])がALF APSのAPS IDに等しいとき、ALF APSのalf_luma_filter_signal_flagの値は1に等しくなるように制約される。
【0008】
任意選択で、先行する態様のいずれかにおいて、態様の別の実装が提供され、slice_alf_aps_id_luma[i]は、スライスの輝度成分によって参照される第iのALF APSのAPS ID(adaptation_parameter_set_id)を指定する。
【0009】
任意選択で、先行する態様のいずれかにおいて、態様の別の実装が提供され、alf_chroma_filter_signal_flagは、彩度フィルタセットがALF APSにおいてシグナリングされるかどうかを指定する。
【0010】
任意選択で、先行する態様のいずれかにおいて、態様の別の実装が提供され、スライスに関連付けられたスライスヘッダにおける彩度成分ALF APS ID(slice_alf_aps_id_chroma)がALF APSのAPS IDに等しいとき、ALF APSのalf_chroma_filter_signal_flagの値は、1に等しくなるように制約される。
【0011】
任意選択で、先行する態様のいずれかにおいて、態様の別の実装が提供され、slice_alf_aps_id_chromaは、スライスの彩度成分によって参照されるALF APSのadaptation_parameter_set_idを指定する。
【0012】
実施形態において、開示は、エンコーダにおいて実装される方法であって、エンコーダのプロセッサによって、符号化されたビデオシーケンスの一部として、スライスをビットストリームに符号化する段階と、プロセッサによって、スライスへの適用のためのALFパラメータを決定する段階と、プロセッサによって、ビットストリームにおけるALF適応パラメータセット(APS)にALFパラメータを符号化する段階であって、ALF APSは、ALF輝度フィルタシグナルフラグ(alf_luma_filter_signal_flag)およびALF彩度フィルタシグナルフラグ(alf_chroma_filter_signal_flag)を含み、alf_luma_filter_signal_flagまたはalf_chroma_filter_signal_flagの少なくとも1つは1に等しい、段階と、プロセッサに結合されたメモリによって、デコーダへの通信のためのビットストリームを格納する段階とを備える方法を含む。
【0013】
APSは複数のスライスに関連するがピクチャ全体に関連しないデータを維持するために使用され得る。APSはALFパラメータを含み得る。ALFパラメータは、スライスにおける輝度成分のみ、スライスにおける彩度成分のみ、または、スライスにおける輝度成分および彩度成分の両方に対するALF処理の適用を制御し得る。ALF APSは、APSに含まれるデータのタイプを示すフラグを含み得る。しかしながら、ALF APSに関連するフラグベースのシグナリングはいくつかのビデオコーディングシステムにおいて非効率的である。例えばフラグは、ALF APSが輝度フィルタセットのみ、彩度フィルタセットのみ、輝度フィルタセットおよび彩度セットの両方を含むこと、または、輝度フィルタセットおよび彩度フィルタセットのいずれも含まないことを示すように設定され得る。輝度フィルタセットのおよび彩度フィルタセットのいずれも含まないALF APSは有用でない。しかしながら、規格によって許可されている任意の選択肢をサポートするために、標準化されたコーデックが構築されるべきである。したがって、輝度フィルタセットおよび彩度フィルタセットのいずれも含まないALF APSを許可することは、発生すべきでない選択肢をサポートするべき非効率的コーデック設計をもたらす。本例は、ALF APSシグナリングおよび結果のコーデック設計の効率を増加させるための制約を適用する。例えば、ALF APSは、ALF APSにおけるALF輝度フィルタシグナルフラグおよびALF彩度フィルタシグナルフラグの一方または両方が1に設定されるように制約される。これにより、ALF APSが少なくとも輝度フィルタセットまたは彩度フィルタセットを含み、したがって空でないことを確実にする。別の例として、スライスに関連付けられたスライスヘッダは、妥当な輝度フィルタセットを含むALF APSを示す輝度成分ALF APS IDを含み得る。これが発生するとき、ALF APSにおけるALF輝度フィルタシグナルフラグが1に設定される制約が利用され得る。これにより、スライスヘッダが輝度データに関連するALF APSを参照するときにALF APSが輝度データを含むことを確実にする。別の例として、スライスに関連付けられたスライスヘッダは、妥当な彩度フィルタセットを含むALF APSを示す彩度成分ALF APS IDを含み得る。これが発生するとき、ALF APSにおけるALF彩度フィルタシグナルフラグが1に設定される制約が利用され得る。これにより、スライスヘッダが彩度データに関連するALF APSを参照するときにALF APSが彩度データを含むことを確実にする。これらの制約は、不要なALF APSシグナリングが回避されること、および、ALF APSが、復号されたスライスをフィルタリングするのに必要なデータを含むことを確実にし得る。そのような制約は、エンコーダで仮想参照デコーダ(HRD)によってチェックされ得る。HRDは、これらの問題のケースが発生しないことを確実にするために、規格遵守について、符号化されたビットストリームをチェックし得る。したがって、これらの制約は、デコーダが、そのような問題のケースがビットストリームにおいて発生していないことを想定することを可能にする。したがって、デコーダは、そのような問題のケースをサポートすることを回避するために簡略化され得る。したがって、本制約は、エラーを防止し、コーディング効率を増加し、および/または、エンコーダおよび/またはデコーダの複雑性を低減する。したがって、本例は、エンコーダおよび/またはデコーダにおけるネットワークリソース、メモリリソース、および/または処理リソースの使用量を低減しながら、ビデオコーディングシステム機能を増加し得る。
【0014】
任意選択で、先行する態様のいずれかにおいて、態様の別の実装が提供され、alf_luma_filter_signal_flagは、輝度フィルタセットがALF APSにおいてシグナリングされるかどうかを指定する。
【0015】
任意選択で、先行する態様のいずれかにおいて、態様の別の実装が提供され、スライスに関連付けられたスライスヘッダにおける輝度成分ALF APS(ID)(slice_alf_aps_id_luma[i])がALF APSのAPS IDに等しいとき、ALF APSのalf_luma_filter_signal_flagの値は1に等しくなるように制約される。
【0016】
任意選択で、先行する態様のいずれかにおいて、態様の別の実装が提供され、slice_alf_aps_id_luma[i]は、スライスの輝度成分によって参照される第iのALF APSのadaptation_parameter_set_idを指定する。
【0017】
任意選択で、先行する態様のいずれかにおいて、態様の別の実装が提供され、alf_chroma_filter_signal_flagは、彩度フィルタセットがALF APSにおいてシグナリングされるかどうかを指定する。
【0018】
任意選択で、先行する態様のいずれかにおいて、態様の別の実装が提供され、スライス(slice_alf_aps_id_chroma)に関連付けられたスライスヘッダにおける彩度成分ALF APS IDがALF APSのAPS IDに等しいとき、ALF APSのalf_chroma_filter_signal_flagの値は、1に等しくなるように制約される。
【0019】
任意選択で、先行する態様のいずれかにおいて、態様の別の実装が提供され、slice_alf_aps_id_chromaは、スライスの彩度成分によって参照されるALF APSのadaptation_parameter_set_idを指定する。
【0020】
実施形態において、開示は、プロセッサ、プロセッサに結合された受信機、プロセッサに結合されたメモリ、および、プロセッサに結合された送信機を含むビデオコーディングデバイスを備え、プロセッサ、受信機、メモリ、および送信機は、先行する態様のいずれかの方法を実行するように構成される。
【0021】
一実施形態において、本開示は、ビデオコーディングデバイスによって用いるためのコンピュータプログラム製品を含む非一時的コンピュータ可読媒体を含み、コンピュータ実施可能命令を備えるコンピュータプログラム製品は、プロセッサによって実行されたとき、先行する態様のいずれかに記載の方法をビデオコーディングデバイスに実行させるように、非一時的コンピュータ可読媒体に格納される。
【0022】
実施形態において、開示は、デコーダであって、ALF輝度フィルタシグナルフラグ(alf_luma_filter_signal_flag)およびALF彩度フィルタシグナルフラグ(alf_chroma_filter_signal_flag)を含む適応ループフィルタ(ALF)適応パラメータセット(APS)を含むビットストリームを受信するための受信手段であって、alf_luma_filter_signal_flagまたはalf_chroma_filter_signal_flagの少なくとも1つは1に等しい、受信手段と、ALF APSにおけるALFパラメータに基づいて、スライスを復号するための復号手段と、復号されたビデオシーケンスの一部として、表示のためのスライスを転送するための転送手段とを備えるデコーダを含む。
【0023】
任意選択で、先行する態様のいずれかにおいて、態様の別の実装形態は、デコーダがさらに、先行する態様のいずれかに記載の方法を実行するように構成されることを提供する。
【0024】
実施形態において、開示は、エンコーダであって、符号化されたビデオシーケンスの一部としてスライスをビットストリームに符号化するためのスライス符号化手段と、スライスへの適用のためのALFパラメータを決定するための決定手段と、ALFパラメータをビットストリームにおけるALF適応パラメータセット(APS)に符号化するためのALF符号化手段であって、ALF APSは、ALF輝度フィルタシグナルフラグ(alf_luma_filter_signal_flag)およびALF彩度フィルタシグナルフラグ(alf_chroma_filter_signal_flag)を含み、alf_luma_filter_signal_flagまたはalf_chroma_filter_signal_flagの少なくとも1つは1に等しい、ALF符号化手段と、デコーダへの通信のためにビットストリームを格納するための格納手段とを備えるエンコーダを含む。
【0025】
任意選択で、先行する態様のいずれかにおいて、態様の別の実装形態はさらに、先行する態様のいずれかに記載の方法を実行するように構成されたエンコーダを提供する。
【0026】
明確にすることを目的に、前述の実施形態のうちのいずれか1つは、本開示の範囲内の新たな実施形態を作成するために、その他の前述の実施形態のうちの任意の1または複数と組み合わされてよい。
【0027】
これらの特徴および他の特徴は、添付図面および特許請求の範囲と共に、以下の詳細な説明からより明確に理解されるであろう。
【図面の簡単な説明】
【0028】
本開示のより完全な理解のために、添付図面および詳細な説明と関連した以下の簡単な説明についてここで参照し、類似の参照番号は類似の部分を表す。
【0029】
【
図1】ビデオ信号をコーディングする例示的な方法のフローチャートである。
【0030】
【
図2】ビデオコーディングに関する例示的なコーディングおよび復号(コーデック)システムの概略図である。
【0031】
【
図3】例示的なビデオエンコーダを示す概略図である。
【0032】
【
図4】例示的なビデオデコーダを示す概略図である。
【0033】
【
図5】パラメータ制約を有する適応ループフィルタ(ALF)適応パラメータセット(APS)を含む例示的なビットストリームを示す概略図である。
【0034】
【
図6】例示的なビデオコーディングデバイスの概略図である。
【0035】
【
図7】制約を有するALF APSを利用することによって、ビデオシーケンスをビットストリームに符号化する例示的な方法のフローチャートである。
【0036】
【
図8】制約を有するALF APSを利用することによって、ビットストリームからビデオシーケンスを復号する例示的な方法のフローチャートである。
【0037】
【
図9】制約を有するALF APSを利用することによって、ビットストリームにおけるイメージのビデオシーケンスをコーディングするための例示的なシステムの概略図である。
【発明を実施するための形態】
【0038】
1または複数の実施形態に係る例示的な実装態様が以下に提供されるが、開示されたシステムおよび/または方法は、現時点で知られているのかまたは存在しているのかに関係なく、任意の数の技法を使用して実装されてよいことを最初に理解されたい。本開示は、本明細書において図示され説明される例示的な設計例および実装形態を含む、以下に示される例示的な実装態様、図面、および技法に決して限定されるべきではなく、添付の特許請求の範囲と共に、その均等物の全範囲内で修正されてよい。
【0039】
以下に挙げる用語は、本明細書と反対の文脈で用いられない限り、以下のように定められる。具体的には、次の定義は、本開示に追加の明確性を提供するように意図される。しかしながら、用語は、異なる状況においては異なるように説明されることがある。それに応じて、次の定義は、補足とみなされるべきであり、本明細書のそのような用語に関して提供された説明のいかなる他の定義を限定するようにもみなされるべきではない。
【0040】
ビットストリームとは、エンコーダとデコーダとの間で送信するために圧縮されたビデオデータを含むビットのシーケンスである。エンコーダとは、符号化処理を利用し、ビデオデータを圧縮してビットストリームにするように構成されたデバイスである。符号化されたビデオシーケンスは、コーディングされたアクセスユニット(AU)およびサポートシンタックス/パラメータのシーケンスである。AUは、ビデオシーケンスにおける単一の時点に関連するビデオデータの完全セット(例えば、単一のピクチャ)を含むデータユニットである。デコーダは、表示のためにビットストリームをビデオデータに再構築するように、復号処理を利用するように構成されたデバイスである。復号されたビデオシーケンスは、ユーザへの表示のために準備されたデコーダによって再構築されたピクチャのシーケンスである。ピクチャとは、フレームもしくはそのフィールドを作る輝度サンプルのアレイおよび/または彩度サンプルのアレイである。説明を明確にするために、符号化または復号されているピクチャは、現在のピクチャと称され得る。スライスは、完全タイルの整数、または、単一ネットワーク抽象化層(NAL)ユニットに排他的に含まれるピクチャのタイル内の連続する完全コーディングツリーユニット(CTU)行の整数である。輝度成分はYと示されることもあり、光を描画するビデオデータの一部である。彩度成分は、色を描画するビデオデータの一部であり、青色差彩度(Cb)および赤色差彩度(Cr)として示され得る。適応パラメータセット(APS)は、1または複数のピクチャにおける1または複数のスライスに適用するシンタックス要素/パラメータを含むシンタックス構造である。APS識別子(ID)は、APSを一意に識別する値(例えば、整数)である。適応ループフィルタ(ALF)は、復号の一部として適用されるフィルタリング処理である。例えば、ALFは、変数パラメータによって制御される伝達関数、および、変数パラメータを調整するように構成される最適化アルゴリズムを有する線形フィルタを利用し得る。ALF APSは、ALFパラメータを含み、かつ、対応するスライスへのALF処理の適用を制御するAPSである。ALFパラメータは、ALF処理の制御に関連するデータを含むシンタックス要素である。ALF輝度フィルタシグナルフラグは、対応するALF APSが輝度フィルタセットを含むことを示すALFパラメータである。ALF彩度フィルタシグナルフラグは、対応するALF APSが彩度フィルタセットを含むことを示すALFパラメータである。輝度フィルタセットは、スライスにおける輝度成分へのALFの適用を制御するためのフィルタパラメータのセットである。彩度フィルタセットは、スライスにおける彩度成分へのALFの適用を制御するためのフィルタパラメータのセットである。スライスヘッダは、スライスにおけるすべてのビデオデータに関するデータ要素を含むコーディングされたスライスの一部である。輝度成分ALF APS IDは、スライスヘッダに関連付けられたスライスに関連する輝度フィルタセットを含むALF APSを識別するスライスヘッダにおけるシンタックス要素である。彩度成分ALF APS IDは、スライスヘッダに関連付けられたスライスに関連する彩度フィルタセットを含むALF APSを識別するスライスヘッダにおけるシンタックス要素である。
【0041】
以下の頭字語が本明細書において使用される。適応ループフィルタ(ALF)、適応パラメータセット(APS)、コーディングツリーブロック(CTB)、コーディングツリーユニット(CTU)、コーディングユニット(CU)、コーディングビデオシーケンス(CVS)、復号ピクチャバッファ(DPB)、外部復号リフレッシュ(EDR)、グループオブピクチャ(GOP)、ジョイントビデオエキスパートチーム(JVET)、動き制約タイルセット(MCTS)、最大転送ユニット(MTU)、ネットワーク抽象化層(NAL)、ピクチャ順序カウント(POC)、ランダムアクセスポイント(RAP)、ローバイトシーケンスペイロード(RBSP)、サンプル適応オフセット(SAO)、補助強化情報(SEI)、シーケンスパラメータセット(SPS)、時間動きベクトル予測(TMVP)、多目的ビデオコーディング(VVC)、およびワーキングドラフト(WD)。
【0042】
多くのビデオ圧縮技術が、データの最小損失でビデオファイルのサイズを低減するように利用され得る。例えば、ビデオ圧縮技術は、ビデオシーケンスにおけるデータ冗長性を低減または除去するように、空間(例えば、イントラピクチャ)予測および/または時間的(例えば、インターピクチャ)予測を実行することを含み得る。ブロックベースのビデオコーディングに関して、ビデオスライス(例えば、ビデオピクチャまたはビデオピクチャの部分)がビデオブロックに分割されてよく、それはまた、ツリーブロック、コーディングツリーブロック(CTB)、コーディングツリーユニット(CTU)、コーディングユニット(CU)、および/またはコーディングノードと呼ばれることがある。ピクチャのイントラコーディング(I)されたスライスにおけるビデオブロックは、同じピクチャにおける隣接ブロックにおける参照サンプルに関する空間的予測を使用してコーディングされる。ピクチャのインターコーディングされた単方向予測(P)または双方向予測(B)のスライスにおけるビデオブロックは、同じピクチャにおける隣接ブロックの参照サンプルに関する空間的予測、または他の参照ピクチャにおける参照サンプルに関する時間的予測を利用してコーディングされ得る。ピクチャは、フレームおよび/またはイメージと呼ばれ得、参照ピクチャは、参照フレームおよび/または参照イメージと呼ばれ得る。空間的または時間的予測は、イメージブロックを表す予測ブロックをもたらす。残差データは、オリジナルイメージブロックと予測ブロックの間の画素差分を表す。したがって、インターコードブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトル、および、コーディングブロックと予測ブロックとの間の差を示す残差データに従って符号化される。イントラコーディングされたブロックは、イントラコーディングモードと残差データに従って符号化される。さらなる圧縮に関して、残差データは画素領域から変換領域に変換され得る。これらは、残差変換係数をもたらし、それは量子化され得る。量子化変換係数は最初は二次元アレイで配列されてよい。量子化変換係数は、変換係数の一次元ベクトルを生み出すべくスキャンされ得る。エントロピーコーディングは、より多くの圧縮さえ実現するように適用され得る。そのようなビデオ圧縮技術は、以下により詳細に論じられる。
【0043】
符号化済みビデオを確実にすることは、正確に復号することであり得、ビデオは、対応するビデオコーディング規格に従って符号化および復号される。ビデオコーディング規格は、国際電気通信連合(ITU)標準化部門(ITU-T)H.261、国際標準化機構/国際電気標準会議(ISO/IEC)モーション・ピクチャ・エクスパーツ・グループ(MPEG)‐1 Part 2、ITU-T H.262またはISO/IEC MPEG-2 Part 2、ITU-T H.263、ISO/IEC MPEG‐4 Part 2、ITU-T H.264またはISO/IEC MPEG‐4 Part 10としても知られる高度ビデオコーディング(AVC)、および、ITU-T H.265またはMPEG-H Part 2としても知られている高効率ビデオコーディング(HEVC)を含む。AVCには、スケーラブルビデオコーディング(SVC)、多視点ビデオコーディング(MVC)、および多視点ビデオコーディング+深度(MVC+D)、並びに3次元(3D)のAVC(3D-AVC)などの拡張版が含まれる。HEVCには、スケーラブルHEVC(SHVC)、多視点HEVC(MV-HEVC)、および3D HEVC(3D-HEVC)などの拡張版が含まれる。ITU‐TおよびISO/IECのジョイントビデオエキスパートチーム(JVET)は、多目的ビデオコーディング(VVC)と呼ばれるビデオコーディング規格の開発を始めた。VVCは、JVET-O2001-v14を含むワーキングドラフト(WD)に含まれる。
【0044】
APSは、ピクチャ全体に関連するデータではなく、複数のスライスに関連するデータを維持するために使用され得る。いくつかの例において、同一のAPSは、複数のピクチャに広がるスライス(例えば、複数のピクチャの部分)に関連するデータを含み得る。APSはALFパラメータを含み得る。ALFパラメータは、スライスにおける輝度成分のみ、スライスにおける彩度成分のみ、または、スライスにおける輝度成分および彩度成分の両方に対するALF処理の適用を制御し得る。ALF APSは、APSに含まれるデータのタイプを示すフラグを含み得る。しかしながら、ALF APSに関連するフラグベースのシグナリングはいくつかのビデオコーディングシステムにおいて非効率的であり得る。例えばフラグは、ALF APSが輝度フィルタセットのみ、彩度フィルタセットのみ、輝度フィルタセットおよび彩度セットの両方を含むこと、または、輝度フィルタセットおよび彩度フィルタセットのいずれも含まないことを示すように設定され得る。輝度フィルタセットのおよび彩度フィルタセットのいずれも含まないALF APSは有用でない。しかしながら、規格によって許可されている任意の選択肢をサポートするために、標準化されたコーデックが構築されるべきである。したがって、輝度フィルタセットおよび彩度フィルタセットのいずれも含まないALF APSを許可することは、発生すべきでない選択肢をサポートするべき非効率的コーデック設計をもたらす。
【0045】
ALF APSシグナリングおよび結果のコーデック設計の効率を増加するために制約を適用する様々な機構を本明細書に開示する。例えば、ALF APSは、ALF APSにおけるALF輝度フィルタシグナルフラグおよびALF彩度フィルタシグナルフラグの一方または両方が1に設定されるように制約され得る。これにより、ALF APSが少なくとも輝度フィルタセットまたは彩度フィルタセットを含み、したがって空でないことを確実にする。別の例として、スライスに関連付けられたスライスヘッダは、妥当な輝度フィルタセットを含むALF APSを示す輝度成分ALF APS IDを含み得る。これが発生するとき、ALF APSにおけるALF輝度フィルタシグナルフラグが1に設定される制約が利用され得る。これにより、スライスヘッダが輝度データに関連するALF APSを参照するときにALF APSが輝度データを含むことを確実にする。別の例として、スライスに関連付けられたスライスヘッダは、妥当な彩度フィルタセットを含むALF APSを示す彩度成分ALF APS IDを含み得る。これが発生するとき、ALF APSにおけるALF彩度フィルタシグナルフラグが1に設定される制約が利用され得る。これにより、スライスヘッダが彩度データに関連するALF APSを参照するときにALF APSが彩度データを含むことを確実にする。これらの制約は、不要なALF APSシグナリングが回避されること、および、ALF APSが、復号されたスライスをフィルタリングするのに必要なデータを含むことを確実にし得る。そのような制約は、エンコーダにおける仮想参照デコーダ(HRD)に含まれ得る。HRDは、これらの問題のケースが発生しないことを確実にするために、規格遵守について、符号化されたビットストリームをチェックし得る。したがって、これらの制約は、デコーダが、そのような問題のケースがビットストリームにおいて発生していないことを想定することを可能にする。したがって、デコーダは、そのような問題のケースをサポートすることを回避するために簡略化され得る。したがって、本制約は、エラーを防止し、コーディング効率を増加し、および/または、エンコーダおよび/またはデコーダの複雑性を低減する。したがって、本例は、エンコーダおよび/またはデコーダにおけるネットワークリソース、メモリリソース、および/または処理リソースの使用量を低減しながら、ビデオコーディングシステム機能を増加し得る。
【0046】
図1は、ビデオ信号をコーディングする例示的な動作方法100のフローチャートである。具体的には、ビデオ信号はエンコーダにおいて符号化される。符号化処理は、ビデオファイルサイズを低減するように、様々な機構を利用することによってビデオ信号を圧縮する。より小さいファイルサイズは、関連付けられた帯域幅オーバヘッドを低減させながら、圧縮されたビデオファイルをユーザへ送信することを可能にする。デコーダは次に、エンドユーザへの表示のために元のビデオ信号を再構築するように、圧縮されたビデオファイルを復号する。復号処理は概して、デコーダがビデオ信号を整合性をもって再構築可能となるように、符号化処理のミラー動作を行う。
【0047】
段階101において、ビデオ信号がエンコーダに入力される。例えば、ビデオ信号は、メモリに格納された非圧縮ビデオファイルであってよい。別の例として、ビデオファイルは、ビデオカメラなどのビデオキャプチャデバイスによってキャプチャされ、ビデオのライブストリーミングをサポートするように符号化されてよい。ビデオファイルは、オーディオコンポーネントとビデオコンポーネントの両方を含んでよい。ビデオコンポーネントは、シーケンスで見られたときに、動きの視覚的印象を提示する、一連のイメージフレームを含む。フレームは、本明細書では輝度成分(または輝度サンプル)と呼ばれる光と、彩度成分(または色サンプル)と呼ばれる色の観点で表現される、画素を含む。いくつかの例において、フレームはまた、3次元ビューイングをサポートする深度値を含み得る。
【0048】
段階103において、ビデオはブロックに分割される。分割は、圧縮のために、各フレームにおける画素を正方形および/または矩形のブロックに細分割することを含む。例えば、高効率ビデオコーディング(HEVC)(H.265およびMPEG-H Part2としてもまた知られる)において、フレームはまず、コーディングツリーユニット(CTU)に分割され得、それは、予め定義されたサイズ(例えば、64画素×64画素)のブロックである。CTUは、輝度サンプルと彩度サンプルの両方を含む。コーディングツリーは、CTUをブロックに分割するように利用され得、次に、さらなる符号化をサポートするコンフィギュレーションが実現されるまで、ブロックを再帰的に細分割してよい。例えば、フレームの輝度成分は、個々のブロックが比較的均質照明値を含むまで、細分割されてよい。さらに、フレームの彩度成分は、個々のブロックが比較的均質色値を含むまで、細分割されてよい。それに応じて、分割機構は、ビデオフレームのコンテンツに依存して変わる。
【0049】
段階105において、様々な圧縮機構が、段階103において分割されたイメージブロックを圧縮するように利用される。例えば、インター予測(inter-prediction)および/またはイントラ予測(intra-prediction)が利用されてよい。インター予測は、共通のシーンにおける物体は連続するフレームにおいて現れる傾向がある、という事実を利用するように設計される。それに応じて、参照フレームにおける物体を描画するブロックは、隣接フレームにおいて繰り返して表現される必要がない。具体的には、テーブルなどの物体は、複数のフレームにわたって一定の位置に残ることがある。したがって、テーブルが一度表現されると、隣接フレームは、参照フレームに戻って参照され得る。パターン適合性機構が、複数のフレームにわたって物体を適合させるように利用され得る。さらに、例えば物体の動きまたはカメラの動きに起因して、移動する物体は、複数のフレームにわたって表されることがある。特定の例として、ビデオが、複数のフレームにわたってスクリーンを横切って移動する自動車を示してよい。動きベクトルは、そのような動きを表現するように利用され得る。動きベクトルは、フレームにおける物体の座標からの、参照フレームにおける物体の座標のオフセットを提供する二次元ベクトルである。したがって、インター予測は、現在のフレームにおけるイメージブロックを、参照フレームにおける対応するブロックからのオフセットを示す動きベクトルのセットとして、符号化し得る。
【0050】
イントラ予測は、共通フレームにおいてブロックを符号化する。イントラ予測は、輝度および彩度成分はフレームにおいてクラスタとなる傾向がある、という事実を利用する。例えば、木の部分における緑のパッチは、緑の同様のパッチに隣接してポジション決めされる傾向がある。イントラ予測は、複数の指向性予測モード(例えば、HEVCにおいては33)、平面モード、および直流(DC)モードを利用する。指向性モードは、現在のブロックが、隣接ブロックのサンプルと、対応する方向において同様/同じであることを示す。平面モードは、行/列(例えば、平面)に沿った一連のブロックが、行の縁において隣接ブロックに基づいて補間され得ることを示す。平面モードは、実質的に、値を変更する際に比較的一定のスロープを利用することによって、行/列にわたる光/色の円滑な移行を示す。DCモードは、境界のスムージングに利用され、ブロックが、指向性予測モードの角度方向に関連付けられた全ての隣接ブロックのサンプルに関連付けられた平均値と、同様/同じであることを示す。それに応じて、イントラ予測ブロックは、実際の値の代わりに、様々な相関予測モード値としてイメージブロックを表し得る。さらに、インター予測ブロックは、実際の値の代わりに動きベクトル値としてイメージブロックを表し得る。どちらの場合も、予測ブロックは、いくつかの場合において、イメージブロックを正確に表さないことがある。いかなる差異も、残差ブロックに格納される。さらにファイルを圧縮するように、変換が、残差ブロックに適用され得る。
【0051】
段階107において、様々なフィルタリング技法が適用され得る。HEVCにおいて、フィルタはインループフィルタリングスキームに従って適用される。上記で論じられたブロックベースの予測は、デコーダにおいて、ブロックノイズのあるイメージを生成する結果となることがある。さらに、ブロックベースの予測スキームは、ブロックを符号化し得、次に、参照ブロックとして後で用いるための符号化済みブロックを再構築し得る。インループフィルタリングスキームは、ノイズ抑制フィルタ、ブロック解除フィルタ、適応ループフィルタ、およびサンプル適応オフセット(SAO)フィルタを、ブロック/フレームに繰り返し適用する。これらのフィルタは、符号化されたファイルが正確に再構築され得るように、そのようなブロッキングアーチファクトを軽減する。さらに、再構築された参照ブロックに基づいて符号化された後続のブロックにおいて、アーチファクトが追加のアーチファクトを作成する可能性が小さくなるように、これらのフィルタは再構築された参照ブロックへのアーチファクトを軽減する。
【0052】
一度ビデオ信号が分割、圧縮、およびフィルタリングされると、得られるデータは、段階109でビットストリームにおいて符号化される。ビットストリームは、上記で論じられたデータのみならず、デコーダにおいて正しいビデオ信号再構築をサポートするように要望される任意のシグナリングデータを含む。例えば、そのようなデータは、デコーダにコーディング命令を提供する、分割データ、予測データ、残差ブロック、および様々なフラグを含み得る。ビットストリームは、要求時にデコーダに向けての伝送のために、メモリに格納され得る。ビットストリームはまた、複数のデコーダに向けてブロードキャストおよび/またはマルチキャストされ得る。ビットストリームの生成は反復処理である。それに応じて、段階101、103、105、107および109は、継続的および/または同時に、多くのフレームおよびブロックにわたって発生し得る。
図1に示された順序は明確および論議の容易性のために存在するものであり、ビデオコーディング処理を特定の順序に限定することを意図するものではない。
【0053】
デコーダは、ビットストリームを受信し、段階111で復号処理を始める。具体的には、デコーダは、ビットストリームを対応するシンタックスおよびビデオデータに変換するように、エントロピー復号スキームを利用する。段階111において、デコーダは、フレームに関する分割を決定するように、ビットストリームからのシンタックスデータを利用する。分割は、段階103において、ブロック分割の結果と適合すべきである。段階111において利用されるようなエントロピー符号化/復号が、ここで説明される。エンコーダは、圧縮処理の最中に、ブロック分割スキームの選択など、入力イメージの値の空間的位置に基づくいくつかの可能な選択から、多くの選択を行う。正確な選択のシグナリングは、多数のビン(bin)を利用し得る。本明細書で用いられるとき、ビンは、変数(例えば、コンテキストに依存して変わり得るビット値)として扱われる2進値である。エントロピーコーディングは、エンコーダが、特定の場合において実行可能でないことが明確な任意の選択肢を棄却することを可能にし、許容可能な選択肢のセットを残す。各許容可能な選択肢は次に、符号語を割り当てられる。符号語の長さは、許容可能な選択肢(例えば、2つの選択肢に関して1つのビン、3から4つの選択肢に関して2つのビンなど)の数に基づく。エンコーダは次に、選択された選択肢に関する符号語を符号化する。符号語は、全ての可能な選択肢の大きい可能性のあるセットからの選択を一意に示すのとは対照的に、許容可能な選択肢の小さいサブセットからの選択を一意に示すように要望されるくらいの大きさなので、このスキームは、符号語のサイズを低減する。デコーダは次に、エンコーダと同様の方式において許容可能な選択肢のセットを決定することによって、選択を復号する。許容可能な選択肢のセットを決定することによって、デコーダは、符号語を読み出し、エンコーダによって行われた選択を決定し得る。
【0054】
段階113において、デコーダはブロック復号を実行する。具体的には、デコーダは、残差ブロックを生成するように逆変換を利用する。次に、デコーダは、分割に従ってイメージブロックを再構築するように、残差ブロックおよび対応する予測ブロックを利用する。予測ブロックは、段階105においてエンコーダで生成されたようなイントラ予測ブロックおよびインター予測ブロックの両方を含み得る。再構築されたイメージブロックは次に、段階111において決定された分割データに従って再構築されたビデオ信号のフレームにポジション決めされる。段階113に関するシンタックスはまた、上記で論じられたようなエントロピーコーディングを介して、ビットストリームにおいてシグナリングされ得る。
【0055】
段階115において、フィルタは、エンコーダにおいて段階107と同様の方式で、再構築されたビデオ信号のフレーム上で実行される。例えば、ノイズ抑制フィルタ、ブロック解除フィルタ、適応ループフィルタ、およびSAOフィルタが、ブロックアーチファクトを除去するようにフレームに適用され得る。一度フレームがフィルタリングされると、ビデオ信号は、エンドユーザが見るように、段階117においてディスプレイに出力され得る。
【0056】
図2は、ビデオコーディングに関する例示的なコーディングおよび復号(コーデック)システム200の概略図である。具体的には、コーデックシステム200は、動作方法100の実装形態をサポートする機能を提供する。コーデックシステム200は、エンコーダおよびデコーダの両方で利用される成分を描画するように一般化される。コーデックシステム200は、動作方法100における段階101および103に関して論じられたように、ビデオ信号を受信および分割し、それは分割されたビデオ信号201をもたらす。コーデックシステム200は次に、方法100における段階105、107および109に関して論じられたように、エンコーダとして作用するときに、分割されたビデオ信号201をコーディングされたビットストリームに圧縮する。デコーダとして作用するときに、コーデックシステム200は、動作方法100における段階111、113、115および117に関して論じられたように、ビットストリームから出力ビデオ信号を生成する。コーデックシステム200は、汎用コーダ制御コンポーネント211、変換スケーリングおよび量子化コンポーネント213、イントラピクチャ推定コンポーネント215、イントラピクチャ予測コンポーネント217、動き補償コンポーネント219、動き推定コンポーネント221、スケーリングおよび逆変換コンポーネント229、フィルタ制御分析コンポーネント227、インループフィルタコンポーネント225、復号されたピクチャバッファコンポーネント223、およびヘッダフォーマットおよびコンテキスト適応バイナリ算術コーディング(CABAC)コンポーネント231を含む。そのようなコンポーネントは、示されるように結合される。
図2において、黒い線は、符号化/復号されるデータの動きを示し、破線は、他のコンポーネントのオペレーションを制御する制御データの動きを示す。コーデックシステム200のコンポーネントは、全てエンコーダにおいて存在し得る。デコーダは、コーデックシステム200のコンポーネントのサブセットを含み得る。例えば、デコーダはイントラピクチャ予測コンポーネント217、動き補償コンポーネント219、スケーリングおよび逆変換コンポーネント229、インループフィルタコンポーネント225、および復号されたピクチャバッファコンポーネント223を含み得る。これらのコンポーネントがここで説明される。
【0057】
分割されたビデオ信号201は、コーディングツリーによって画素のブロックに分割された、キャプチャされたビデオシーケンスである。コーディングツリーは、画素のブロックを画素のより小さいブロックに細分割するように、様々なスプリットモードを利用する。これらのブロックは次に、より小さいブロックへとさらに細分割され得る。ブロックは、コーディングツリー上のノードと呼ばれてよい。より大きい親ノードは、より小さい子ノードへと分割される。ノードが細分割される回数は、ノード/コーディングツリーの深度と呼ばれる。分割されたブロックは、いくつかの場合において、コーディングユニット(CU)に含まれ得る。例えば、CUは、CUに関して対応するシンタックス命令に従う、輝度ブロック、赤色差彩度(Cr)ブロック、および青色差彩度(Cb)ブロックを含むCTUのサブ部分であり得る。スプリットモードは、ノードをそれぞれ2、3、または4の子ノードに分割するように利用される二分木(BT)、三分木(TT)、および四分木(QT)を含み得、それらは利用されるスプリットモードに依存して様々な形状をとる。分割されたビデオ信号201は、圧縮のために、汎用コーダ制御コンポーネント211、変換スケーリングおよび量子化コンポーネント213、イントラピクチャ推定コンポーネント215、フィルタ制御分析コンポーネント227、および動き推定コンポーネント221へ転送される。
【0058】
汎用コーダ制御コンポーネント211は、用途制約に従って、ビデオシーケンスのイメージをビットストリームにコーディングすることに関する決定を行うように構成される。例えば、汎用コーダ制御コンポーネント211は、再構築品質に対する、ビットレート/ビットストリームサイズの最適化を管理する。そのような決定は、格納空間/帯域幅有効性およびイメージ解像度要求に基づいて作成され得る。汎用コーダ制御コンポーネント211はまた、バッファアンダーランおよびオーバーラン問題を軽減するように、送信速度に鑑みバッファ利用を管理する。これらの問題を管理するように、汎用コーダ制御コンポーネント211は、分割、予測、および他のコンポーネントによるフィルタリングを管理する。例えば、汎用コーダ制御コンポーネント211は、解像度を増加させて帯域幅使用を増加させるように圧縮複雑性を動的に増加させることがあり、または、解像度および帯域幅使用を低下させるように圧縮複雑性を低下させることがある。したがって、汎用コーダ制御コンポーネント211は、ビデオ信号再構築品質とビットレート関連とのバランスをとるように、コーデックシステム200の他のコンポーネントを制御する。汎用コーダ制御コンポーネント211は制御データを作成し、それは他のコンポーネントの動作を制御する。制御データはまた、デコーダにおける復号のためのパラメータをシグナリングするように、ビットストリームに符号化されるヘッダフォーマットおよびCABACコンポーネント231に転送される。
【0059】
分割されたビデオ信号201はまた、インター予測に関する動き推定コンポーネント221および動き補償コンポーネント219に送信される。分割されたビデオ信号201のフレームまたはスライスは、複数のビデオブロックに分割され得る。動き推定コンポーネント221および動き補償コンポーネント219は、受信されたビデオブロックのインター予測コーディングを、1または複数の参照フレーム内の1または複数のブロックと比較することで実行し、時間的予測を提供する。コーデックシステム200は、複数のコーディングパスを実行して、例えば、ビデオデータの各ブロックに適切なコーディングモードを選択してよい。
【0060】
動き推定コンポーネント221および動き補償コンポーネント219は、高度に統合されてよいが、概念的な説明の目的で別々に示されている。動き推定コンポーネント221により実行される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成する処理である。動きベクトルは、例えば、予測ブロックと比較してコーディングされたオブジェクトの変位を示し得る。予測ブロックは、画素差分の観点から、コーディングされるブロックに近い適合性があるとわかったブロックである。予測ブロックはまた、参照ブロックと呼ばれ得る。そのような画素差は、絶対差の合計(SAD)、二乗差の合計(SSD)、または他の差分メトリクスによって決定され得る。HEVCは、CTU、コーディングツリーブロック(CTB)およびCUを含む、いくつかのコーディングされたオブジェクトを利用する。例えば、CTUはCTBに分割され得、それは次に、CUに含まれるためのCBに分割され得る。CUは、予測データを含む予測ユニット(PU)および/または、CUに関して変換された残差データを含む変換ユニット(TU)として符号化され得る。動き推定コンポーネント221は、レート歪み最適化処理の一部としてレート歪み解析を使用して、動きベクトル、PU、およびTUを生成する。例えば、動き推定コンポーネント221は、現在のブロック/フレームに関する複数の参照ブロック、複数の動きベクトルなどを決定し得、最良のレート歪み特性を有する参照ブロック、動きベクトルなどを選択し得る。最良のレート歪み特性は、ビデオ再構築の品質(例えば、圧縮によるデータ損失の量)、およびコーディング効率(例えば、最終的な符号化のサイズ)の両者をバランスさせる。
【0061】
いくつかの例において、コーデックシステム200は、復号されたピクチャバッファコンポーネント223に格納された参照ピクチャのサブ整数画素位置の値を計算してよい。例えば、ビデオコーデックシステム200は、参照ピクチャの4分の1画素位置、8分の1画素位置、または他の端数画素位置の値を補間してよい。したがって、動き推定コンポーネント221は、フル画素位置および端数画素位置に対して動き検索を実行し、端数画素精度を有する動きベクトルを出力してよい。動き推定コンポーネント221は、インターコーディングスライス内のビデオブロックのPUに対する動きベクトルを、PUのポジションと参照ピクチャの予測ブロックのポジションとを比較することで計算する。動き推定コンポーネント221は、符号化および動き補償コンポーネント219への動きのために、計算された動きベクトルを動きデータとして、ヘッダフォーマットおよびCABACコンポーネント231に出力する。
【0062】
動き補償コンポーネント219により実行される動き補償は、動き推定コンポーネント221により決定される動きベクトルに基づいて予測ブロックをフェッチするまたは生成することを必要とし得る。ここでも、動き推定コンポーネント221および動き補償コンポーネント219は、いくつかの例において機能的に統合されてよい。動き補償コンポーネント219は、現在のビデオブロックのPUに対する動きベクトルを受信すると、動きベクトルが示す予測ブロックの位置を特定してよい。残差ビデオブロックは次に、コーディングされた現在のビデオブロックの画素値から予測ブロックの画素値を減算することで形成され、画素差分値を形成する。一般的に、動き推定コンポーネント221は、輝度成分に対して動き推定を実行し、動き補償コンポーネント219は輝度成分に基づいて計算された動きベクトルを彩度成分および輝度成分の両方に用いる。予測ブロックおよび残差ブロックは、変換スケーリングおよび量子化コンポーネント213に転送される。
【0063】
分割されたビデオ信号201はまた、イントラピクチャ推定コンポーネント215およびイントラピクチャ予測コンポーネント217に送信される。動き推定コンポーネント221および動き補償コンポーネント219と同様に、イントラピクチャ推定コンポーネント215およびイントラピクチャ予測コンポーネント217は高度に統合されてよいが、概念的目的で別々に示される。上記で説明されるように、フレーム間の動き推定コンポーネント221および動き補償コンポーネント219によって実行されるインター予測の代替手段として、イントラピクチャ推定コンポーネント215およびイントラピクチャ予測コンポーネント217は、現在のフレームにおけるブロックと比較して、現在のブロックをイントラ予測する。特に、イントラピクチャ推定コンポーネント215は、現在のブロックを符号化するように用いるイントラ予測モードを決定する。いくつかの例において、イントラピクチャ推定コンポーネント215は、現在のブロックを符号化するように、複数のテストされたイントラ予測モードから、適切なイントラ予測モードを選択する。選択されたイントラ予測モードは次に、符号化のために、ヘッダフォーマットおよびCABACコンポーネント231に転送される。
【0064】
例えば、イントラピクチャ推定コンポーネント215は、様々なテスト済みイントラ予測モードに関して、レート歪み解析を使用してレート歪み値を計算し、テスト済みモードの中で最良のレート歪み特性を有するイントラ予測モードを選択してよい。レート歪み解析は概して、符号化済みブロックと、符号化済みブロックを生み出すために符号化されたオリジナルの符号化前のブロックとの間の歪み(またはエラー)の量、および符号化済みブロックを生み出すのに用いられるビットレート(例えば、ビット数)を決定する。イントラピクチャ推定コンポーネント215は、様々な符号化されたブロックの歪みおよびレートから比を計算し、どのイントラ予測モードが該当ブロックに対して最良のレート歪み値を示すかを決定してよい。さらに、イントラピクチャ推定コンポーネント215は、レート歪み最適化(RDO)に基づいて深度モデリングモード(DMM)を使用して、深度マップの深度ブロックをコーディングするように構成されてよい。
【0065】
イントラピクチャ予測コンポーネント217は、エンコーダ上で実装されるとき、イントラピクチャ推定コンポーネント215によって決定される選択されたイントラ予測モードに基づいて予測ブロックから残差ブロックを生成し、または、デコーダ上で実装されるとき、ビットストリームから残差ブロックを読み出し得る。残差ブロックは、行列として表されるように、予測ブロックと元のブロックの間の値の差異を含む。残差ブロックは次に、変換スケーリングおよび量子化コンポーネント213に転送される。イントラピクチャ推定コンポーネント215およびイントラピクチャ予測コンポーネント217は、輝度および彩度成分の両方において動作し得る。
【0066】
変換スケーリングおよび量子化コンポーネント213は、さらに残差ブロックを圧縮するように構成される。変換スケーリングおよび量子化コンポーネント213は、離散余弦変換(DCT)、離散正弦変換(DST)または概念的に同様の変換などの変換を残差ブロックに適用して、残差変換係数値を含むビデオブロックを生み出す。ウェーブレット変換、整数変換、サブバンド変換、または他のタイプの変換もまた用いられる可能性がある。この変換は、画素値領域からの残差情報を、周波数領域などの変換領域に変換してよい。変換スケーリングおよび量子化コンポーネント213は、また、例えば周波数に基づいて、変換された残差情報をスケーリングするように構成される。そのようなスケーリングは、異なる周波数情報を異なる粒度で量子化するように、スケール因子を残差情報に適用することを含み、それは再構築済みビデオの最終視覚的品質に影響し得る。変換スケーリングおよび量子化コンポーネント213はまた、ビットレートをさらに低減するように、変換係数を量子化するように構成される。量子化処理は、いくつかの、または全ての係数に関連付けられたビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって修正され得る。いくつかの例において、変換スケーリングおよび量子化コンポーネント213は次に、量子化変換係数を含む行列のスキャンを実行し得る。量子化変換係数は、ビットストリームで符号化されるように、ヘッダフォーマットおよびCABACコンポーネント231に転送される。
【0067】
スケーリングおよび逆変換コンポーネント229は、動き推定をサポートするように、変換スケーリングおよび量子化コンポーネント213の逆動作を適用する。スケーリングおよび逆変換コンポーネント229は、例えば、別の現在のブロックに関する予測ブロックとなり得る参照ブロックとして後で用いるために、画素領域における残差ブロックを再構築するように、逆スケーリング、変換、および/または量子化を適用する。動き推定コンポーネント221および/または動き補償コンポーネント219は、より後のブロック/フレームの動き推定を用いるように、残差ブロックを対応する予測ブロックに戻して加えることにより、参照ブロックを計算し得る。フィルタは、スケーリング、量子化、および変換の最中に生成したアーチファクトを軽減するように、再構築された参照ブロックに適用される。そうでない場合は、そのようなアーチファクトは、後続のブロックが予測されるとき、不正確な予測を生じさせる(および、追加のアーチファクトを生成させる)であろう。
【0068】
フィルタ制御分析コンポーネント227およびインループフィルタコンポーネント225は、残差ブロックおよび/または再構築されたイメージブロックへのフィルタを適用する。例えば、オリジナルイメージブロックを再構築するように、スケーリングおよび逆変換コンポーネント229から変換された残差ブロックは、イントラピクチャ予測コンポーネント217および/または動き補償コンポーネント219からの対応する予測ブロックと組み合され得る。フィルタは次に、再構築されたイメージブロックに適用され得る。いくつかの例において、フィルタは、代わりに、残差ブロックに適用され得る。
図2における他のコンポーネントと同様に、フィルタ制御分析コンポーネント227およびインループフィルタコンポーネント225は高度に統合され、一緒に実装されてよいが、概念的目的で別々に描画される。再構築された参照ブロックに適用されるフィルタは、特定の空間領域に適用され、そのようなフィルタがどのように適用されるかを調整するように、複数のパラメータを含む。フィルタ制御分析コンポーネント227は、そのようなフィルタがどこで適用されるべきか決定するように、再構築された参照ブロックを分析し、対応するパラメータを設定する。そのようなデータは、符号化のためにフィルタ制御データとしてヘッダフォーマットおよびCABACコンポーネント231に転送される。インループフィルタコンポーネント225は、フィルタ制御データに基づいて、そのようなフィルタを適用する。フィルタは、非ブロック化フィルタ、ノイズ抑制フィルタ、SAOフィルタ、および適応ループフィルタを含んでよい。そのようなフィルタは、例に依存して、空間/画素領域において(例えば、再構築された画素ブロック上で)、または、周波数領域において、適用されてよい。
【0069】
エンコーダとして動作するとき、フィルタリングされた再構築されたイメージブロック、残差ブロック、および/または予測ブロックは、上記で論じられる動き推定において後で用いるために、復号されたピクチャバッファコンポーネント223に格納される。デコーダとして動作するとき、復号されたピクチャバッファコンポーネント223は、再構築およびフィルタリングされたブロックを格納し、出力ビデオ信号の一部として、ディスプレイに向けて転送する。復号されたピクチャバッファコンポーネント223は、予測ブロック、残差ブロック、および/または再構築されたイメージブロックを格納できる、任意のメモリデバイスであってよい。
【0070】
ヘッダフォーマットおよびCABACコンポーネント231は、コーデックシステム200の様々な成分からデータを受信し、そのようなデータを、デコーダに向けて伝送するために、コーディングされたビットストリームへ符号化する。具体的には、ヘッダフォーマットおよびCABACコンポーネント231は、全体制御データおよびフィルタ制御データなどの制御データを符号化するように、様々なヘッダを生成する。さらに、イントラ予測および動きデータを含む予測データ、ならびに、量子化変換係数データの形式の残差データは、全てビットストリームにおいて符号化される。最終ビットストリームは、オリジナルの分割されたビデオ信号201を再構築するためにデコーダによって要望される全ての情報を含む。そのような情報は、また、イントラ予測モードインデックステーブル(また、符号語マッピングテーブルと呼ばれる)、様々なブロックに関する符号化コンテキストの定義、最も可能性が高いイントラ予測モードのインジケーション、分割情報のインジケーションなどを含んでよい。そのようなデータは、エントロピーコーディングを利用することによって符号化されてよい。例えば、情報は、コンテキスト適応可変長コーディング(CAVLC)、CABAC、シンタックスベースのコンテキスト適応バイナリ算術コーディング(SBAC)、確率区間分割エントロピー(PIPE)コーディング、または別のエントロピーコーディング技術を利用して符号化されてよい。エントロピーコーディングに続いて、コーディングされたビットストリームは、別のデバイス(例えば、ビデオデコーダ)に伝送されても、後の伝送または検索のためにアーカイブされてもよい。
【0071】
図3は、例示的なビデオエンコーダ300を示すブロック図である。ビデオエンコーダ300は、コーデックシステム200の符号化機能を実装するように、および/または、動作方法100の段階101、103、105、107および/または109を実装するように、利用され得る。エンコーダ300は入力されるビデオ信号を分割し、分割されたビデオ信号301をもたらし、それは実質的、分割されたビデオ信号201と同様となる。分割されたビデオ信号301は次に、エンコーダ300のコンポーネントによって圧縮され、ビットストリームに符号化される。
【0072】
具体的には、分割されたビデオ信号301は、イントラ予測のために、イントラピクチャ予測コンポーネント317に転送される。イントラピクチャ予測コンポーネント317は、イントラピクチャ推定コンポーネント215およびイントラピクチャ予測コンポーネント217と実質的に同様であってよい。分割されたビデオ信号301はまた、復号されたピクチャバッファコンポーネント323における参照ブロックに基づいて、インター予測のために動き補償コンポーネント321に転送される。動き補償コンポーネント321は、動き推定コンポーネント221および動き補償コンポーネント219と実質的に同様であってよい。イントラピクチャ予測コンポーネント317および動き補償コンポーネント321からの予測ブロックおよび残差ブロックは、残差ブロックの変換および量子化のために、変換および量子化コンポーネント313に転送される。変換および量子化コンポーネント313は、変換スケーリングおよび量子化コンポーネント213と実質的に同様であってよい。変換および量子化された残差ブロック、および対応する予測ブロック(関連付けられた制御データと共に)は、ビットストリームにコーディングするために、エントロピーコーディングコンポーネント331に転送される。エントロピーコーディングコンポーネント331は、ヘッダフォーマットおよびCABACコンポーネント231と実質的に同様であってよい。
【0073】
変換および量子化された残差ブロック、および/または対応する予測ブロックはまた、変換および量子化コンポーネント313から、動き補償コンポーネント321によって用いるための参照ブロックへの再構築のために、逆変換および量子化コンポーネント329に転送される。逆変換および量子化コンポーネント329は、スケーリングおよび逆変換コンポーネント229と実質的に同様であってよい。インループフィルタコンポーネント325におけるインループフィルタもまた、例に依存して、残差ブロックおよび/または再構築された参照ブロックに適用される。インループフィルタコンポーネント325は、フィルタ制御分析コンポーネント227およびインループフィルタコンポーネント225と実質的に同様であってよい。インループフィルタコンポーネント325は、インループフィルタコンポーネント225に関して論じられるように、複数のフィルタを含んでよい。フィルタリングされたブロックは次に、動き補償コンポーネント321によって参照ブロックとして用いるために、復号されたピクチャバッファコンポーネント323に格納される。復号されたピクチャバッファコンポーネント323は、復号されたピクチャバッファコンポーネント223と実質的に同様であってよい。
【0074】
図4は、例示的なビデオデコーダ400を示すブロック図である。ビデオデコーダ400は、コーデックシステム200の復号機能を実装し、および/または、動作方法100の段階111、113、115および/または117を実装するように利用されてよい。デコーダ400は、例えばエンコーダ300からビットストリームを受信し、エンドユーザへの表示のために、ビットストリームに基づいて再構築された出力ビデオ信号を生成する。
【0075】
ビットストリームは、エントロピー復号コンポーネント433によって受信される。エントロピー復号コンポーネント433は、CAVLC、CABAC、SBAC、PIPEコーディング、または他のエントロピーコーディング技術などの、エントロピー復号スキームを実装するように構成される。例えば、エントロピー復号コンポーネント433は、符号化されたさらなるデータを、ビットストリームにおける符号語として解釈するためのコンテキストを提供するように、ヘッダ情報を利用し得る。復号された情報は、全体制御データ、フィルタ制御データ、分割情報、動きデータ、予測データ、および残差ブロックからの量子化変換係数などの、ビデオ信号を復号する任意の望ましい情報を含む。量子化変換係数は、残差ブロックに再構築されるように、逆変換および量子化コンポーネント429に転送される。逆変換および量子化コンポーネント429は、逆変換および量子化コンポーネント329と同様であってよい。
【0076】
再構築済み残差ブロックおよび/または予測ブロックは、イントラ予測動作に基づくイメージブロックへの再構築のために、イントラピクチャ予測コンポーネント417に転送される。イントラピクチャ予測コンポーネント417は、イントラピクチャ推定コンポーネント215およびイントラピクチャ予測コンポーネント217と同様であってよい。具体的には、イントラピクチャ予測コンポーネント417は、フレームにおける参照ブロックを位置決めするように予測モードを利用し、イントラ予測されたイメージブロックを再構築するように、結果を残差ブロックに適用する。再構築されたイントラ予測されたイメージブロックおよび/または残差ブロック、および対応するインター予測データは、復号されたピクチャバッファコンポーネント423に、インループフィルタコンポーネント425を介して転送され、それらは実質的に、復号されたピクチャバッファコンポーネント223およびインループフィルタコンポーネント225と、それぞれ同様であり得る。インループフィルタコンポーネント425は、再構築されたイメージブロック、残差ブロック、および/または予測ブロックをフィルタリングし、そのような情報は、復号されたピクチャバッファコンポーネント423に格納される。復号されたピクチャバッファコンポーネント423から再構築されたイメージブロックは、インター予測のために、動き補償コンポーネント421に転送される。動き補償コンポーネント421は、動き推定コンポーネント221および/または動き補償コンポーネント219と実質的に同様であってよい。具体的には、動き補償コンポーネント421は、予測ブロックを生成するように、参照ブロックから動きベクトルを利用し、イメージブロックを再構築するように、結果に残差ブロックを適用する。得られた再構築されたブロックはまた、インループフィルタコンポーネント425を介して、復号されたピクチャバッファコンポーネント423に転送され得る。復号されたピクチャバッファコンポーネント423は、追加の再構築されたイメージブロックを格納し続け、それは分割情報によってフレームに再構築され得る。そのようなフレームはまた、シーケンスに配置されてよい。シーケンスは、再構築された出力ビデオ信号として、ディスプレイに向けて出力される。
【0077】
図5は、パラメータ制約を有するALF APSを含む例示的なビットストリーム500を示す概略図である。例えば、ビットストリーム500は、コーデックシステム200および/またはデコーダ400による復号のために、コーデックシステム200および/またはエンコーダ300によって生成され得る。別の例として、ビットストリーム500は、段階111におけるデコーダによる使用のために、方法100の段階109においてエンコーダによって生成され得る。
【0078】
ビットストリーム500は、シーケンスパラメータセット(SPS)510、ALF APS513、複数のピクチャパラメータセット(PPS)511、複数のスライスヘッダ515およびイメージデータ520を含む。SPS510は、ビットストリーム500に含まれるビデオシーケンスにおけるすべてのピクチャ521に共通するシーケンスデータを含む。そのようなデータは、ピクチャサイズ、ビット深度、コーディングツールパラメータ、ビットレート制限などを含み得る。PPS511は、ピクチャ全体521に適用するパラメータを含む。したがって、ビデオシーケンスにおける各ピクチャ521はPPS511を参照し得る。各ピクチャ521はPPS511を参照するが、単一のPPS511は、いくつかの例において複数のピクチャ521のためのデータを含み得ることに留意されたい。例えば、複数の同様のピクチャ521は、同様のパラメータに従ってコーディングされ得る。そのようなケースにおいて、単一のPPS511は、そのような同様のピクチャ521についてのデータを含み得る。PPS511は、対応するピクチャ521におけるスライス523に利用可能なコーディングツール、量子化パラメータ、オフセットなどを示し得る。スライスヘッダ515は、ピクチャ521における各スライス523に固有のパラメータを含む。したがって、ビデオシーケンスにおけるスライス523あたり1つのスライスヘッダ515があり得る。スライスヘッダ515は、スライスタイプ情報、ピクチャ順序カウント(POC)、参照ピクチャリスト、予測加重、タイルエントリポイント、非ブロック化パラメータなどを含み得る。スライスヘッダ515はまた、いくつかのコンテキストにおいてタイルグループヘッダと称され得ることに留意されたい。さらに、スライスヘッダ515は、対応するスライス523をコーディングするために使用されるパラメータについて、SPS510、PPS511、および/またはALF APS513を参照し得る。
【0079】
イメージデータ520は、インター予測および/またはイントラ予測に従って符号化されるビデオデータ、ならびに、対応する変換および量子化された残差データを含む。例えば、ビデオシーケンスは、イメージデータとしてコーディングされた複数のピクチャ521を含む。ピクチャ521とは、フレームもしくはそのフィールドを作る輝度サンプルのアレイおよび/または彩度サンプルのアレイとして定義され得る。ピクチャ521は概して、ビデオシーケンスの単一のフレームであり、したがって、概して、ビデオシーケンスを表示するときに単一のユニットとして表示される。しかしながら、部分的なピクチャ521は、仮想現実、ピクチャインピクチャなどの特定の技術を実装するために表示され得る。さらに、いくつかの技術は、コーディングされたピクチャ521の複数の層を利用し得る。この場合、複数の層のうちの1つから選択された単一のピクチャ521がある時点において表示される。ピクチャ521は、対応するPOCによって識別され得る。さらに、ピクチャ521は各々、PPS511を参照する。
【0080】
ピクチャ521はスライス523に分割される。いくつかのシステムにおいて、スライス523はタイルに細分割される。他のシステムにおいて、スライス523は、タイルを含むタイルグループと称される。スライス523および/またはタイルはさらに、コーディングツリーユニット(CTU)に分割される。CTUはさらに、コーディングツリーに基づいてコーディングブロックに分割される。コーディングブロックは次に、予測機構に従って符号化/復号され得る。スライス523は、ラスタスライスまたは矩形スライスであり得る。例えば、ピクチャ521は、CTUの列および行に分割され得る。ラスタスライス523は、ピクチャ521のCTUのグループを含み、一方、CTUは、ラスタスキャンの順序において増加する。ラスタスキャンの順序は、CTUの行に沿って左から右に増加し、CTUの列に沿って上から下に増加する。矩形スライス523は、ピクチャ521からのCTUの任意の矩形グループを含み得る。したがって、スライス523は、完全タイルの整数、または、単一のNALユニットにおいて排他的に含まれるピクチャのタイル内の連続する完全なCTU行の整数として定義され得る。NALユニットは、タイプおよび示されるタイプのデータを含む、パケットにおいて送信されるサイズのデータユニットである。スライス523および/またはタイルのタイルグループはスライスヘッダ515を参照する。
【0081】
APSは、1または複数のピクチャ521における1または複数のスライス523に適用するシンタックス要素/パラメータを含むシンタックス構造である。例えば、APSは、第1ピクチャ521における、少なくとも1つであるが全部未満であるスライス523、第2ピクチャ521における、少なくとも1つであるが全部未満であるスライス523などに適用し得る。APSは、APSに含まれるパラメータに基づいて複数のタイプに分けられ得る。ALF APS513は、ALFパラメータを含むタイプALFのAPSである。ALFは、変数パラメータによって制御される伝達関数を含み、かつ、伝達関数を洗練するためにフィードバックループからのフィードバックを利用する適合ブロックベースのフィルタである。さらに、ALFは、ブロックベースのコーディングの結果として発生するコーディングアーチファクト(例えばエラー)を訂正するために利用される。フィードバックループは、エンコーダで動作するPDO処理などの最適化アルゴリズムを含み得る。したがって、ALF APS513に含まれるALFパラメータは、デコーダにおける復号中にブロックベースのコーディングアーチファクトをフィルタに除去させるためにエンコーダによって選択された変数パラメータを含み得る。
【0082】
ALF APS513などの各APSはAPS ID542を含む。APS ID542は、対応するAPSを一意に識別する整数などの任意の値である。APS ID542は、いくつかの例において、adaptation_parameter_set_idとして示され得る。上記のように、ALF APS513はまた、ALFパラメータを含む。ALFパラメータは、ALF処理の制御に関連するデータを含むシンタックス要素である。ALFパラメータは、ALF輝度フィルタシグナルフラグ541、ALF彩度フィルタシグナルフラグ543、輝度フィルタセット545、および/または彩度フィルタセット547を含み得る。
【0083】
具体的には、スライス523は、光量値として表示する輝度サンプル、および、色値として表示する彩度サンプルを含む。輝度フィルタセット545は、スライス523における輝度成分へのALFの適用を制御するためのフィルタパラメータのセットである。彩度フィルタセット547は、スライス523における彩度成分へのALFの適用を制御するためのフィルタパラメータのセットである。ALF APS513は、輝度フィルタセット545、彩度フィルタセット547、または両方を含み得る。例えば、第1ALF APS513は、輝度フィルタセット545および彩度フィルタセット547の両方を含み得る。ビデオにおける輝度成分は変化し得る。この場合、第2ALF APS513は、更新された輝度フィルタセット545のみを含み得る。ビデオにおける彩度成分は次に変化し得る。この場合、第3ALF APS513は、更新された彩度フィルタセット547のみに含まれ得る。ALF APS513に含まれるフィルタコンポーネントのタイプを示すためにフラグが使用され得る。ALF輝度フィルタシグナルフラグ541は、対応するALF APS513が輝度フィルタセット545を含むことを示すALFパラメータである。ALF輝度フィルタシグナルフラグ541は、いくつかの例においてalf_luma_filter_signal_flagとして示され得る。ALF彩度フィルタシグナルフラグ543は、対応するALF APS513が彩度フィルタセット547を含むことを示すALFパラメータである。ALF彩度フィルタシグナルフラグ543は、いくつかの例においてalf_chroma_filter_signal_flagとして示され得る。
【0084】
スライスヘッダ515は、対応するスライス523についてのALFパラメータを含むALF APS513を参照し得る。例えば、スライスヘッダ515は、輝度成分ALF APS ID549および彩度成分ALF APS ID548を含み得る。輝度成分ALF APS ID549は、スライスヘッダ515に関連付けられたスライス523に関連する輝度フィルタセット545を含むALF APS513を識別するスライスヘッダ515におけるシンタックス要素である。輝度成分ALF APS ID549は、いくつかの例においてslice_alf_aps_id_luma[i]と示され得、iは第iのALF APS513を示し、iは任意の正の整数である。彩度成分ALF APS ID548は、スライスヘッダ515に関連付けられたスライス523に関連する彩度フィルタセット547を含むALF APS513を識別するスライスヘッダ515におけるシンタックス要素である。彩度成分ALF APS ID548は、いくつかの例において、slice_alf_aps_id_chromaとして示され得る。例えば、輝度成分ALF APS ID549および彩度成分ALF APS ID548は、APS ID542を利用することによってALF APS513を参照し得る。
【0085】
ビットストリーム500は、コーディング効率を増加し、エラーを低減し、および/または、機器の単純化をサポートするための特定の制約を含む。例えば、ALF APS513は、輝度フィルタセット545、彩度フィルタセット547、または両方を含み得る。しかしながら、ALF APS513は、少なくとも1つのフィルタセットを含むべきである。したがって、ビットストリーム500は、単一のALF APS513におけるALF輝度フィルタシグナルフラグ541およびALF彩度フィルタシグナルフラグ543の少なくとも1つが1に設定される制約を含む。この制約は、少なくとも1つのフィルタセット無しでALF APS513がデコーダへ送信されないことを確実にする。これはさらに、ALF APS513がフィルタセットを含まない可能性をデコーダが無視することを可能にする。したがって、デコーダ設計を簡略化でき、代わりにハードウェアリソースを他のタスクに割り当てることができる。
【0086】
別の例として、輝度成分ALF APS ID549がAPS ID542を示すときに対応するALF APS513が輝度フィルタセット545を含むように、ALF APS513は制約され得る。さらに、これが発生するとき、示されたALF APS513におけるALF輝度フィルタシグナルフラグ541は1に設定される。これにより、ALF APS513が、スライスヘッダ515に関連付けられたスライス523を復号するのに使用される輝度フィルタパラメータを含むことを確実にする。したがって、デコーダは、輝度フィルタパラメータがスライスヘッダ515によって不適切に参照される可能性を無視することによって、簡略化され得る。
【0087】
別の例として、彩度成分ALF APS ID548がAPS ID542を示すときに対応するALF APS513が彩度フィルタセット547を含むように、ALF APS513は制約され得る。さらに、これが発生するとき、示されたALF APS513におけるALF彩度フィルタシグナルフラグ543は1に設定される。これにより、ALF APS513が、スライスヘッダ515に関連付けられたスライス523を復号するのに使用される彩度フィルタパラメータを含むことを確実にする。したがって、デコーダは、彩度フィルタパラメータがスライスヘッダ515によって不適切に参照される可能性を無視することによって、簡略化され得る。
【0088】
これらの制約は、不要なALF APS513シグナリングが回避されること、および、ALF APS513が、復号されたスライス523をフィルタリングするのに必要なデータを含むことを確実にし得る。そのような制約は、エンコーダにおいてHRDにおいて実装され得る。HRDは、ALF APS513が少なくとも1つのフィルタセットを含み、対応するスライス523を復号するのに誤ったフィルタセットを含まないことを確実にするために、規格遵守についてビットストリーム500をチェックし得る。したがって、これらの制約は、そのような問題がビットストリーム500において発生していないことをデコーダが想定することを可能にする。したがって、そのような課題をチェックに、それにインテリジェントに応答する必要性を回避するためにデコーダが簡略化され得る。したがって、本制約は、エラーを防止し、コーディング効率を増加させ、および/または、エンコーダおよび/またはデコーダの複雑性を低減する。したがって、本例は、エンコーダおよび/またはデコーダにおけるネットワークリソース、メモリリソース、および/または処理リソースの使用量を低減しながら、ビデオコーディングシステム機能を増加し得る。
【0089】
ここで、前述の情報は、以下の本明細書において、より詳細に説明される。HEVCにおいて、瞬時復号リフレッシュ(IDR)、リンク切れアクセス(BLA)、およびクリーンランダムアクセス(CRA)ピクチャは、イントラランダムアクセスポイント(IRAP)ピクチャである。VVCは、IDRおよびCRAピクチャをIRAPピクチャとして利用する。IRAPピクチャは、イントラ予測に従ってコーディングされ、したがって、別のピクチャを参照してコーディングされない。IRAPピクチャは、以下の機能/利点を提供する。IRAPピクチャの存在は、復号処理がそのピクチャから開始し得ることを示す。この機能は、復号処理がビットストリームにおける位置において開始することを、IRAPピクチャがその位置に存在する限り可能にするランダムアクセス機能をサポートする。位置はビットストリームの始点でないことがあり得る。IRAPピクチャの存在はまた、復号処理をリフレッシュし得る。それにより、ランダムアクセススキップリーディング(RASL)ピクチャを除く、IRAPピクチャ後のコーディングされたピクチャが、IRAPピクチャに先行するピクチャを何ら参照することなくコーディングされる。したがって、IRAPピクチャは、IRAPピクチャの前に発生するエラーが、復号順序においてIRAPピクチャに続くピクチャに伝搬することを防止する。
【0090】
IRAPピクチャは上記の機能を提供するが、圧縮効率へのペナルティをもたらす。IRAPピクチャの存在はまた、ビットレートの急増をもたらす。圧縮効率へのこのペナルティには2つの原因がある。第1に、IRAPピクチャはイントラ予測されたピクチャであり、したがって、IRAPピクチャは、インター予測されたピクチャより多くのビットによって表される。第2に、IRAPピクチャの存在は、参照ピクチャがDPBから除去されるときに復号処理をリフレッシュすることによって、時間的予測を壊し得る。これにより、インター予測に利用可能な参照ピクチャが少なくなるので、IRAPピクチャに続くピクチャのコーディングの低い効率がもたらされ得る。
【0091】
HEVCにおけるIDRピクチャは、他のピクチャタイプとは異なるように導出およびシグナリングされ得る。その違いのいくつかは、次の通りである。IDRピクチャのPOC値をシグナリングし、導出するとき、POCの最上位ビット(MSB)は、前のキーピクチャから導出される代わりに、0に等しくなるように設定され得る。さらに、IDRピクチャのスライスヘッダは、参照ピクチャ管理を補助する情報を含まないことがあり得る。CRAおよびトレーリングなど、他のピクチャタイプについては、参照ピクチャセット(RPS)または参照ピクチャリストは、参照ピクチャマーキング処理に利用され得る。この処理は、参照用に使用、または、参照用に未使用のいずれかとして、DPBにおける参照ピクチャのステータスを決定するために利用される。IDRピクチャについては、そのような情報は、シグナリングされないことがあり得る、なぜなら、IDRの存在は、復号処理が、DPBにおけるすべての参照ピクチャを、参照のために未使用としてマーキングする必要があることを示すからである。
【0092】
リーディングピクチャは、存在するとき、IRAPピクチャに関連付けられる。リーディングピクチャは、復号順序において関連付けられたIRAPピクチャに続くが、提示/出力順序においてIRAPピクチャに先行するピクチャである。コーディング構成およびピクチャ参照構造に応じて、リーディングピクチャはさらに、2つのタイプに識別される。第1のタイプは、復号処理が関連付けられたIRAPピクチャにおいて開始するときに正確に復号されないことがあり得るリーディングピクチャである。そのようなピクチャはRASLピクチャとして知られている。RASLピクチャは、このケースにおいて復号可能でないことがあり得る。なぜなら、RASLピクチャは、復号順序においてIRAPピクチャに先行するピクチャを参照してコーディングされるからである。第2のタイプは、復号処理が関連付けられたIRAPピクチャにおいて開始するときでも正確に復号できるリーディングピクチャである。これらのピクチャは、ランダムアクセス復号可能リーディング(RADL)ピクチャとして知られる。RADLピクチャは、復号順序においてIRAPピクチャに先行するピクチャを直接的または間接的に参照することなくコーディングされるので、RADLピクチャは復号されることができる。RASLおよびRADLピクチャが同一のIRAPピクチャに関連付けられるときにRASLピクチャが出力順序においてRADLピクチャに先行する必要があるように、HEVCシステムは制約を利用する。
【0093】
IRAPピクチャおよびリーディングピクチャは、システムレベルアプリケーションによる識別をサポートするために、異なるNALユニットタイプを割り当てられる。例えば、ビデオスプライサは、コーディングされたビットストリームにおける詳細なシンタックス要素を検討することなく、コーディングされたピクチャタイプを決定するように構成され得る。例えば、ビデオスプライサは、非IRAPピクチャからIRAPピクチャを識別し、トレーリングピクチャからリーディングピクチャを識別し得る(RASLおよびRADLピクチャを決定することを含む)。トレーリングピクチャは、出力順序においてIRAPピクチャに続く、IRAPピクチャに関連付けられたピクチャである。ピクチャが復号順序において特定のIRAPピクチャに続き、かつ、復号順序において任意の他のIRAPピクチャに先行するときに、ピクチャは、特定のIRAPピクチャに関連付けられる。したがって、IRAPおよびリーディングピクチャに異なるNALユニットタイプを割り当てることは、そのような適用をサポートする。
【0094】
VVCシステムはAPSを利用し得る。APSは、1または複数のスライスによって参照され得るパラメータおよび/またはデータを含むシンタックス要素である。APSに含まれるパラメータは、1または複数のピクチャにおけるスライス間で共有され得る。APSパラメータは、PPSパラメータおよび/またはSPSパラメータより頻繁に更新され得る。
【0095】
以下のテーブルは、例示的なAPSシンタックスを説明する。APSは、ALFのためのパラメータ、彩度スケーリングを有する輝度マッピング(LMCS)、および、スケーリングリストを含み得る。各APSは、aps_params_typeによって指定される1タイプのパラメータのみを含み得る。1または複数のALFパラメータ、LMCSパラメータ、または、スケーリングリストパラメータを含むAPSはそれぞれ、ALF APS、LMCS APS、または、スケーリングAPSと称され得る。
【表1】
【0096】
以下のテーブルは、例示的なALFパラメータシンタックスをalf_data()として説明する。ALFパラメータは、例に応じて、輝度成分のみ、彩度成分のみ、または、輝度および彩度成分の両方に使用されるパラメータであり得る。輝度および彩度成分についてのパラメータの存在は、alf_luma_filter_signal_flagおよびalf_chroma_filter_signal_flagによって指定される。
【表2】
【表3】
【0097】
ALFがスライスについて有効であるとき、スライスは、ALFのスライスへの適用に使用されるALFパラメータを含む1または複数のAPSを参照する。スライスは、輝度成分について1または複数のALF APS、および、彩度成分について最大1のALF APSを参照し得る。以下のテーブルは、ALF APSへの参照のシグナリングを説明する例示的なスライスヘッダシンタックスを含む。
【表4】
【0098】
例において、適応ループフィルタが有効化され、スライスにおける輝度(Y)、青色差彩度(Cb)または赤色差彩度(Cr)色成分に適用され得ることを指定するために、slice_alf_enabled_flagは、1に等しく設定され得る。適応ループフィルタがスライスにおけるすべての色成分について無効化されることを指定するために、slice_alf_enabled_flagは、0に等しく設定され得る。slice_num_alf_aps_ids_lumaは、スライスが参照するALF APSの数を指定し得る。slice_num_alf_aps_ids_lumaの値は、0から7(境界を含む)の範囲であり得る。slice_alf_aps_id_luma[i]は、スライスの輝度成分が参照する第iのALF APSのadaptation_parameter_set_idを指定し得る。ALF_APSに等しいaps_params_typeおよびslice_alf_aps_id_luma[i]に等しいadaptation_parameter_set_idを有するAPS NALユニットのTemporalIdは、コーディング済みスライスNALユニットのTemporalId以下である必要がある。IRAPピクチャにおけるイントラスライスおよびスライスについて、slice_alf_aps_id_luma[i]は、イントラスライスを含むピクチャまたはIRAPピクチャではなく他のピクチャに関連付けられたALF APSを参照しないことがあり得る。slice_alf_chroma_idcは、適応ループフィルタがCbおよびCr色成分に適用されないことを指定するために、0に等しく設定され得る。slice_alf_chroma_idcは、適応ループフィルタがCb色成分に適用されることを示すために、1に等しく設定され得る。slice_alf_chroma_idcは、適応ループフィルタがCr色成分に適用されることを示すために、2に等しく設定され得る。slice_alf_chroma_idcは、適応ループフィルタがCbおよびCr色成分に適用されることを示すために、3に等しく設定され得る。slice_alf_chroma_idcは、存在しないとき、0に等しいと推論され得る。slice_alf_aps_id_chromaは、スライスの彩度成分が参照するALF APSのadaptation_parameter_set_idを指定する。ALF_APSに等しいaps_params_typeおよびslice_alf_aps_id_chromaに等しいadaptation_parameter_set_idを有するAPS NALユニットのTemporalIdは、コーディング済みスライスNALユニットのTemporalId以下である必要がある。IRAPピクチャにおけるイントラスライスおよびスライスについて、slice_alf_aps_id_chromaは、イントラスライスを含むピクチャまたはIRAPピクチャではなく他のピクチャに関連付けられたALF APSを参照するべきでない。
【0099】
先行する例示的な実装は特定の問題を有する。例えば、APSにおいてシグナリングされるALFパラメータのタイプは、alf_luma_filter_signal_flagおよびalf_chroma_filter_signal_flagとして示される2つのフラグによって指定される。これら2つのフラグの値は、以下の4つの可能性、すなわち、両方のフラグが0値を有すること、alf_luma_filter_signal_flagが1に等しくalf_chroma_filter_signal_flagが0に等しいこと、alf_luma_filter_signal_flagが0に等しくalf_chroma_filter_signal_flagが1に等しいこと、および両方のフラグが1の値を有することをもたらし得る。これら4つの可能性の中で、両方のフラグの値が0に等しいとき、ALF APSのシグナリングは冗長である。さらに、ALF APSは、例えばシンタックス要素slice_alf_aps_id_luma[i]を使用することによって、輝度成分に関連するパラメータについて、スライスによって参照され得る。しかしながら、例えば、alf_luma_filter_signal_flagの値が0に等しいとき、ALF APSは、輝度成分についてALFパラメータを含むことを要求されない。同一の課題が彩度成分について発生し得る。
【0100】
一般的に、本開示は、APSにおけるALFパラメータをシグナリングする方法に対するいくつかの制約を説明する。ALFパラメータは、輝度成分および/または彩度成分についてのパラメータを含み得る。本明細書において使用される技法の説明は、VVC規格に基づくが、他のビデオコーデック仕様にも適用し得る。上に列挙された問題に対処する例示的な機構は以下の通りである。ALF APSが、色成分の少なくとも1つのタイプについてのALFパラメータ(例えば、輝度または彩度)を含むように、制約が利用され得る。さらに、ALF APSが、輝度成分に関連するALFパラメータについてスライスによって参照されるとき、ALF APSは、輝度成分についてのALFパラメータを含むように、制約が適用され得る。加えて、ALF APSが、彩度成分に関連するALFパラメータについてスライスによって参照されるとき、ALF APSは、彩度成分についてのALFパラメータを含むように、制約が適用され得る。
【0101】
以下は例示的な実装である。例示的なALFデータのセマンティクスは以下の通りである。alf_luma_filter_signal_flagは、輝度フィルタセットがシグナリングされることを指定するために、1に等しく設定され得る。alf_luma_filter_signal_flagは、輝度フィルタセットがシグナリングされないことを指定するために、0に等しく設定され得る。alf_chroma_filter_signal_flagは、彩度フィルタがシグナリングされることを指定するために、1に等しく設定され得る。alf_chroma_filter_signal_flagは、彩度フィルタがシグナリングされないことを指定するために、0に等しく設定され得る。ChromaArrayTypeが0に等しいとき、alf_chroma_filter_signal_flagはまた、0に等しいべきである。ビットストリームコンフォーマンスは、alf_luma_filter_signal_flagおよびalf_chroma_filter_signal_flagの値が両方とも0に等しいべきでないことを要求し得る。異なる適応ループフィルタの数を指定する変数NumAlfFiltersは、25に等しく設定され得る。
【0102】
例示的なスライスヘッダセマンティクスは以下の通りである。slice_alf_enabled_flagは、適応ループフィルタが有効であり、スライスにおけるY、Cb、またはCr色成分に適用され得ることを指定するために、1に等しく設定され得る。slice_alf_enabled_flagは、適応ループフィルタがスライスにおけるすべての色成分について無効であることを指定するために0に等しく設定され得る。slice_num_alf_aps_ids_lumaは、スライスによって参照されるALF APSの数を指定し得る。slice_num_alf_aps_ids_lumaの値は、0から7(境界を含む)の範囲であり得る。slice_alf_aps_id_luma[i]は、スライスの輝度成分によって参照される第iのALF APSのadaptation_parameter_set_idを指定し得る。ALF_APSに等しいaps_params_typeおよびslice_alf_aps_id_luma[i]に等しいadaptation_parameter_set_idを有するAPS NALユニットのTemporalIdは、コーディング済みスライスNALユニットのTemporalId以下である必要がある。IRAPピクチャにおけるイントラスライスおよびスライスについて、slice_alf_aps_id_luma[i]は、イントラスライスを含むピクチャでない任意の他のピクチャ、または、IRAPピクチャに関連付けられたALF APSを参照するべきでない。ALF_APSに等しいaps_params_type、および、slice_alf_aps_id_luma[i]に等しいadaptation_parameter_set_idを有するAPS NALユニットのalf_luma_filter_signal_flagの値は1に等しいべきである。
【0103】
slice_alf_chroma_idcは、適応ループフィルタがCbおよびCr色成分に適用されないことを指定するために、0に等しく設定され得る。slice_alf_chroma_idcは、適応ループフィルタがCb色成分に適用されることを示すために、1に等しく設定され得る。slice_alf_chroma_idcは、適応ループフィルタがCr色成分に適用されることを示すために、2に等しく設定され得る。slice_alf_chroma_idcは、適応ループフィルタがCbおよびCr色成分に適用されることを示すために、3に等しく設定され得る。slice_alf_chroma_idcは、存在しないとき、0に等しいと推論され得る。slice_alf_aps_id_chromaは、スライスの彩度成分が参照するALF APSのadaptation_parameter_set_idを指定する。ALF_APSに等しいaps_params_typeおよびslice_alf_aps_id_chromaに等しいadaptation_parameter_set_idを有するAPS NALユニットのTemporalIdは、コーディング済みスライスNALユニットのTemporalId以下である必要がある。IRAPピクチャにおけるイントラスライスおよびスライスについて、slice_alf_aps_id_chromaは、イントラスライスを含むピクチャ、または、IRAPピクチャでない任意の他のピクチャに関連付けられたALF APSを参照するべきでない。ALF_APSに等しいaps_params_typeを有するAPS NALユニットのalf_chroma_filter_signal_flag、およびslice_alf_aps_id_chromaに等しいadaptation_parameter_set_idの値は1に等しいべきである。
【0104】
図6は、例示的なビデオコーディングデバイス600の概略図である。ビデオコーディングデバイス600は、本明細書で説明されるような開示された例/実施形態を実装するために好適である。ビデオコーディングデバイス600は、ネットワークでデータをアップストリームおよび/またはダウンストリームで通信するように、ダウンストリームポート620、アップストリームポート650、および/または、送信機および/または受信機を含む送受信機ユニット(Tx/Rx)610を含む。ビデオコーディングデバイス600はまた、論理ユニットを含むプロセッサ630、および/または、データを処理する中央演算処理装置(CPU)、およびデータを格納するためのメモリ632を含む。ビデオコーディングデバイス600はまた、電気、光/電気(OE)コンポーネント、電気/光(EO)コンポーネント、および/または、電気、光、または無線通信ネットワークを介してデータの通信のためにアップストリームポート650および/またはダウンストリームポート620に結合された無線通信コンポーネントを含み得る。ビデオコーディングデバイス600はまた、ユーザとの間でデータを通信するための入力および/または出力(I/O)デバイス660も含んでよい。I/Oデバイス660は、ビデオデータを表示するためのディスプレイ、音声データを出力するためのスピーカなどの出力デバイスを含んでよい。I/Oデバイス660はまた、キーボード、マウス、トラックボールなどの入力デバイス、および/またはそのような出力デバイスとインタラクトするための対応するインタフェースも含んでよい。
【0105】
プロセッサ630はハードウェアおよびソフトウェアによって実装される。プロセッサ630は、1または複数のCPUチップ、コア(例えば、マルチコアプロセッサとして)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、およびデジタル信号プロセッサ(DSP)として実装されてよい。プロセッサ630は、ダウンストリームポート620、Tx/Rx610、アップストリームポート650、およびメモリ632と通信し得る。プロセッサ630はコーディングモジュール614を含む。コーディングモジュール614は、ビットストリーム500を利用し得る方法100、700および800など、本明細書において説明される開示の実施形態を実装する。コーディングモジュール614はまた、本明細書で説明される任意の他の方法/機構を実装し得る。さらに、コーディングモジュール614は、コーデックシステム200、エンコーダ300、および/またはデコーダ400を実装し得る。例えば、コーディングモジュール614は、ピクチャのスライスをビットストリームに符号化し得る。さらに、コーディングモジュール614は、スライスをフィルタリングするときに適用するALFパラメータを決定し得る。コーディングモジュール614は、ALFパラメータを1または複数のALF APSに符号化し得る。コーディングモジュール614は、ALF APSに制約を適用し得る。例えば、コーディングモジュール614は、各ALF APSが輝度フィルタセット、彩度フィルタセット、または両方を含むことを確実にし得る。さらに、コーディングモジュール614は、各ALF APSについてALF輝度フィルタシグナルフラグおよびALF彩度フィルタシグナルフラグを設定し得る。具体的には、各ALF APSが少なくとも1つの輝度または彩度フィルタセットを含むことを確実にするべく、コーディングモジュール614は、ALF輝度フィルタシグナルフラグおよびALF彩度フィルタシグナルフラグの少なくとも1つが1に等しいことを確実にできる。さらに、コーディングモジュール614は、対応するスライスヘッダが輝度フィルタセットおよび/または彩度フィルタセットについてのALF APSをそれぞれ指すときにALF APSがALF輝度フィルタシグナルフラグおよび/またはALF彩度フィルタシグナルフラグを設定することを確実にできる。したがって、コーディングモジュール614は、ビデオコーディングデバイス600に、追加的な機能性、および/または、ビデオデータをコーディングするときのコーディング効率を提供させる。したがって、コーディングモジュール614は、ビデオコーディングデバイス600の機能を改善し、ならびに、ビデオコーディング技術に特有の問題に対処する。さらに、コーディングモジュール614は、ビデオコーディングデバイス600を異なる状態に変換する効果を有する。あるいは、コーディングモジュール614は、メモリ632に格納された命令として実装され得、(例えば、非一時的媒体に格納されたコンピュータプログラム製品として)プロセッサ630によって実行され得る。
【0106】
メモリ632は、ディスク、テープドライブ、ソリッドステートドライブ、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、フラッシュメモリ、三値連想メモリ(TCAM)、およびスタティックランダムアクセスメモリ(SRAM)などの、1または複数のメモリタイプを含む。メモリ632は、プログラムが実行のために選択されるときにそのようなプログラムを格納するように、および、プログラム実行の最中に読み出される命令またはデータを格納するように、オーバーフローデータストレージデバイスとして用いられ得る。
【0107】
図7は、制約を有するALF APSを利用することによって、ビットストリーム500などのビデオシーケンスをビットストリームに符号化する例示的な方法700のフローチャートである。方法100を実行するとき、方法700が、コーデックシステム200、エンコーダ300、および/またはビデオコーディングデバイス600などのエンコーダによって利用され得る。
【0108】
エンコーダが、複数のピクチャを含むビデオシーケンスを受信し、例えばユーザ入力に基づいて、ビデオシーケンスをビットストリームに符号化することを決定するとき、方法700が開始し得る。段階701において、ピクチャのスライスは、符号化されたビデオシーケンスの一部としてビットストリームに符号化される。スライスは、コーディングされた輝度成分、コーディングされた彩度成分、または、それらの組み合わせを含み得る。
【0109】
段階703において、デコーダは、スライスへの適用のためにALFパラメータを決定する。例えば、デコーダは、符号化されたスライスを復号し、ALFパラメータを復号されたスライスに適用し得る。エンコーダは次に、コーディング効率の制約についてバランスをとりつつ、最高品質で復号されたスライスを作成するべく、ALFパラメータを繰り返し調整し得る。これは、PDO処理の一部として実行され得る。最高品質で復号されたスライスをもたらすALFパラメータは次に、符号化のためにビットストリームに格納され得る。ALFパラメータは、復号された輝度サンプルへの適用のための輝度フィルタセット、復号された彩度サンプルへの適用のための彩度フィルタセット、または両方を含み得る。
【0110】
段階705において、ALFパラメータは、ビットストリームにおいてALF APSに符号化される。ALF APSは、ALF輝度フィルタシグナルフラグおよびALF彩度フィルタシグナルフラグを含むように符号化される。いくつかの例において、ALF輝度フィルタシグナルフラグはalf_luma_filter_signal_flagとして示される。さらに、alf_luma_filter_signal_flagは、輝度フィルタセットがALF APSにおいてシグナリングされるかどうかを指定する。いくつかの例において、ALF彩度フィルタシグナルフラグは、alf_chroma_filter_signal_flagとして示される。さらに、alf_chroma_filter_signal_flagは、彩度フィルタセットがALF APSにおいてシグナリングされるかどうかを指定する。ALF輝度フィルタシグナルフラグ、ALF彩度フィルタシグナルフラグの少なくとも1つが1に等しく設定されるように、ALF APSは制約される。これにより、ALF APSが少なくとも1つのフィルタセットを含むことを確実にする。
【0111】
段階707において、輝度成分ALF APS IDは、スライスに関連付けられたスライスヘッダにおいて符号化され得る。輝度成分ALF APS IDは、ALF APSのAPS IDが、スライスヘッダに対応するスライスについての輝度フィルタセットを含むことを示す。したがって、スライスヘッダにおける輝度成分ALF APS IDがALF APSのAPS IDに等しいとき、段階705のALF APSにおけるALF輝度フィルタシグナルフラグの値が1に等しく制約される。いくつかの例において、輝度成分ALF APS IDはslice_alf_aps_id_luma[i]として示される。例えば、slice_alf_aps_id_luma[i]は、スライスの輝度成分によって参照される第iのALF APSのAPS ID(adaptation_parameter_set_id)を指定し得る。
【0112】
段階709において、彩度成分ALF APS IDは、スライスに関連付けられたスライスヘッダにおいて符号化され得る。彩度成分ALF APS IDは、ALF APSのAPS IDが、スライスヘッダに対応するスライスについての彩度フィルタセットを含むことを示す。したがって、スライスヘッダにおける彩度成分ALF APS IDがALF APSのAPS IDに等しいとき、段階705のALF APSにおけるALF彩度フィルタシグナルフラグの値は1に等しくなるように制約される。いくつかの例において、彩度成分ALF APS IDは、slice_alf_aps_id_chromaとして示される。例えば、slice_alf_aps_id_chromaは、スライスの彩度成分によって参照されるALF APSのadaptation_parameter_set_idを指定し得る。
【0113】
段階711において、ビットストリームは、デコーダへの通信のために、エンコーダにおいて格納され得る。
【0114】
図8は、制約を有するALF APSを利用することによって、ビットストリーム500などのビットストリームからビデオシーケンスを復号する例示的な方法800のフローチャートである。方法100を実行するとき、方法800は、コーデックシステム200、デコーダ400、および/またはビデオコーディングデバイス600などのデコーダによって利用され得る。
【0115】
例えば方法700の結果として、ビデオシーケンスを表すコーディングされたデータのビットストリームをデコーダが受信開始するとき、方法800が開始し得る。段階801において、デコーダはビットストリームを受信し得る。ビットストリームは、コーディングされたスライスおよび関連付けられたスライスヘッダを含む。スライスは、コーディングされた輝度成分、コーディングされた彩度成分、またはその組み合わせを含み得る。ビットストリームはまた、ALF APSを含む。ALF APSはALFパラメータを含む。ALFパラメータは、復号された輝度サンプルへの適用のための輝度フィルタセット、復号された彩度サンプルへの適用のための彩度フィルタセット、または両方を含み得る。ALF APSはALF輝度フィルタシグナルフラグおよびALF彩度フィルタシグナルフラグを含む。いくつかの例において、ALF輝度フィルタシグナルフラグはalf_luma_filter_signal_flagとして示される。さらに、alf_luma_filter_signal_flagは、輝度フィルタセットがALF APSにおいてシグナリングされるかどうかを指定する。いくつかの例において、ALF彩度フィルタシグナルフラグは、alf_chroma_filter_signal_flagとして示される。さらに、alf_chroma_filter_signal_flagは、彩度フィルタセットがALF APSにおいてシグナリングされるかどうかを指定する。ALF輝度フィルタシグナルフラグまたはALF彩度フィルタシグナルフラグの少なくとも1つが1に等しく設定されるように、ALF APSは制約される。これにより、ALF APSが少なくとも1つのフィルタセットを含むことを確実にする。
【0116】
段階803において、デコーダは、スライスに関連付けられたスライスヘッダから輝度成分ALF APS IDを取得し得る。輝度成分ALF APS IDは、ALF APSのAPS IDが、スライスヘッダに対応するスライスについての輝度フィルタセットを含むことを示す。したがって、スライスヘッダにおける輝度成分ALF APS IDがALF APSのAPS IDに等しいとき、段階801のALF APSにおけるALF輝度フィルタシグナルフラグの値が1に等しく制約される。いくつかの例において、輝度成分ALF APS IDはslice_alf_aps_id_luma[i]として示される。例えば、slice_alf_aps_id_luma[i]は、スライスの輝度成分によって参照される第iのALF APSのadaptation_parameter_set_idを指定し得る。したがって、デコーダは、スライスヘッダにおける輝度成分ALF APS IDに基づいてALF APSからスライスについての輝度フィルタセットを取得し得る。
【0117】
段階805において、デコーダは、スライスに関連付けられたスライスヘッダから彩度成分ALF APS IDを取得し得る。彩度成分ALF APS IDは、ALF APSのAPS IDが、スライスヘッダに対応するスライスについての彩度フィルタセットを含むことを示す。したがって、スライスヘッダにおける彩度成分ALF APS IDがALF APSのAPS IDに等しいとき、段階801のALF APSにおけるALF彩度フィルタシグナルフラグの値は1に等しくなるように制約される。いくつかの例において、彩度成分ALF APS IDは、slice_alf_aps_id_chromaとして示される。例えば、slice_alf_aps_id_chromaは、スライスの彩度成分によって参照されるALF APSのadaptation_parameter_set_idを指定し得る。
【0118】
段階807において、デコーダは、ALF APSにおけるALFパラメータに基づいてスライスを復号し得る。例えば、デコーダは、スライスヘッダおよび/またはALF APSにおけるフラグに基づいて、輝度フィルタセットおよび/または彩度フィルタセットを取得し得る。デコーダは次に、輝度フィルタセットおよび/または彩度フィルタセットに基づいてALFを構成し得る。さらに、デコーダは、スライスを復号しALFパラメータを復号されたスライスに適用し、再構築されたピクチャの一部として、再構築されたスライスを作成し得る。
【0119】
段階809において、デコーダは、復号されたビデオシーケンスの一部としての表示のためにスライスを転送し得る。例えば、デコーダは、ピクチャを再構築するための他のスライスを有するスライスを含み得る。復号されたビデオシーケンスを作成するために、ピクチャは次に、他のピクチャと順序付けられ得る。復号されたビデオシーケンスをユーザに表示するべく、ピクチャは表示のために転送され得る。
【0120】
図9は、制約を有するALF APSを利用することによって、ビットストリーム500などのビットストリームにおけるイメージのビデオシーケンスをコーディングするための例示的なシステム900の概略図である。システム900は、コーデックシステム200、エンコーダ300、デコーダ400、および/またはビデオコーディングデバイス600などの、エンコーダおよびデコーダによって実装され得る。さらに、方法100、700および/または800を実装するときにシステム900が利用され得る。
【0121】
システム900はビデオエンコーダ902を含む。ビデオエンコーダ902は、スライスを符号化されたビデオシーケンスの一部としてビットストリームに符号化するためのスライス符号化モジュール901を含む。ビデオエンコーダ902はさらに、スライスへの適用のためにALFパラメータを決定するための決定モジュール903を含む。ビデオエンコーダ902はさらに、ビットストリームにおけるALF APSにおけるALFパラメータを符号化するためのALF符号化モジュール905を含み、ALF APSは、ALF輝度フィルタシグナルフラグおよびALF彩度フィルタシグナルフラグを含み、ALF輝度フィルタシグナルフラグおよびALF彩度フィルタシグナルフラグの少なくとも1つが1に等しいように制約される。ビデオエンコーダ902はさらに、デコーダに向けて通信するためにビットストリームを格納する格納モジュール907を含む。ビデオエンコーダ902はさらに、復号されたビデオシーケンスの一部としてデコーダにおいてスライスを復号することをサポートするために、ビットストリームを送信するための送信モジュール909を含む。ビデオエンコーダ902はさらに、方法700の段階のいずれかを実行するように構成され得る。
【0122】
システム900はまた、ビデオデコーダ910を含む。ビデオデコーダ910は、ALF輝度フィルタシグナルフラグおよびALF彩度フィルタシグナルフラグを含み、かつ、ALF輝度フィルタシグナルフラグおよびALF彩度フィルタシグナルフラグの少なくとも1つが1に等しいように制約されるALF APSを含むビットストリームを受信するための受信モジュール911を含む。ビデオデコーダ910はさらに、ALF APSにおけるALFパラメータに基づいてスライスを復号するための復号モジュール913を含む。ビデオデコーダ910はさらに、復号されたビデオシーケンスの一部として表示するためにスライスを転送するための転送モジュール915を含む。ビデオデコーダ910はさらに、方法800の段階のいずれかを実行するように構成され得る。
【0123】
第1成分と第2成分との間に、線、トレース、または別の媒体以外に、介入する成分がないとき、第1成分は、第2成分と直接結合される。第1成分と第2成分との間に、線、トレース、または別の媒体とは他の、介入する成分があるとき、第1成分は第2成分と間接的に結合される。用語「結合(coupled)」およびその変形は、直接結合と間接的結合の両方を含む。用語「約(about)」を用いることは、別の方法で述べられない限り、後続の数の±10%を含む範囲に及ぶという意味である。
【0124】
本明細書に記載された例示的な方法の段階は、必ずしも説明された順序で実行される必要はないこともまた、理解されるべきであり、このような方法の段階の順序は、単なる例示的なものとして理解されるべきである。同様に、追加の段階がこのような方法に含まれてよく、特定の段階が、本開示の様々な実施形態において一貫した方法において、省略または組み合されてよい。
【0125】
本開示においていくつかの実施形態が提供されたが、開示されたシステムおよび方法は、本開示の趣旨または範囲から逸脱することなく、他の多数の具体的な形態で実施され得ることが理解されるであろう。本例は、限定的なものではなく例示的なものとみなされるべきであり、本明細書に提示される詳細に限定することは意図していない。例えば、様々な要素またはコンポーネントが別のシステム内において組み合わされ得るか、もしくは、統合され得る。または、一定の特徴は省略され得るか、若しくは、実装されないことがあり得る。
【0126】
さらに、様々な実施形態において分離したものまたは別個のものとして説明され示された、技法、システム、サブシステム、および方法は、本開示の範囲から逸脱することなく、他のシステム、コンポーネント、技法、または方法と組み合わされても統合されてもよい。変更、置き換え、および修正に関する他の実施例が当業者によって確認可能であり、これらの実施例が、本明細書に開示された趣旨および範囲から逸脱することなく作成されてよい。
[項目1]
デコーダにおいて実装される方法であって、
前記デコーダの受信機によって、ALF輝度フィルタシグナルフラグ(alf_luma_filter_signal_flag)およびALF彩度フィルタシグナルフラグ(alf_chroma_filter_signal_flag)を含む適応ループフィルタ(ALF)適応パラメータセット(APS)を含むビットストリームを受信する段階であって、前記alf_luma_filter_signal_flagまたは前記alf_chroma_filter_signal_flagの少なくとも1つは1に等しい、段階と、
前記デコーダのプロセッサによって、前記ALF APSにおけるALFパラメータに基づいてスライスを復号する段階と
を備える方法。
[項目2]
前記alf_luma_filter_signal_flagは、輝度フィルタセットが前記ALF APSにおいてシグナリングされるかどうかを指定する、項目1に記載の方法。
[項目3]
前記スライスに関連付けられたスライスヘッダにおける輝度成分ALF APS識別子(ID)(slice_alf_aps_id_luma[i])が前記ALF APSのAPS IDに等しいとき、前記ALF APSの前記alf_luma_filter_signal_flagの値は1に等しくなるように制約される、項目1または2に記載の方法。
[項目4]
前記slice_alf_aps_id_luma[i]は、前記スライスの輝度成分によって参照される第iのALF APSのAPS ID(adaptation_parameter_set_id)を指定する、項目3に記載の方法。
[項目5]
前記alf_chroma_filter_signal_flagは、彩度フィルタセットが前記ALF APSにおいてシグナリングされるかどうかを指定する、項目1から4のいずれか一項に記載の方法。
[項目6]
前記スライスに関連付けられたスライスヘッダにおける彩度成分ALF APS ID(slice_alf_aps_id_chroma)が前記ALF APSの前記APS IDに等しいとき、前記ALF APSの前記alf_chroma_filter_signal_flagの値は1に等しいように制約される、項目1から5のいずれか一項に記載の方法。
[項目7]
前記slice_alf_aps_id_chromaは、前記スライスの彩度成分によって参照される前記ALF APSのadaptation_parameter_set_idを指定する、項目6に記載の方法。
[項目8]
エンコーダにおいて実装される方法であって、
前記エンコーダのプロセッサによって、符号化されたビデオシーケンスの一部として、スライスをビットストリームに符号化する段階と、
前記プロセッサによって、前記スライスへの適用のための適応ループフィルタ(ALF)パラメータを決定する段階と、
前記プロセッサによって、前記ビットストリームにおけるALF適応パラメータセット(APS)に前記ALFパラメータを符号化する段階であって、前記ALF APSは、ALF輝度フィルタシグナルフラグ(alf_luma_filter_signal_flag)およびALF彩度フィルタシグナルフラグ(alf_chroma_filter_signal_flag)を含み、前記alf_luma_filter_signal_flagまたは前記alf_chroma_filter_signal_flagの少なくとも1つは1に等しい、段階と、
前記プロセッサに結合されたメモリによって、デコーダへの通信のために前記ビットストリームを格納する段階と
を備える方法。
[項目9]
前記alf_luma_filter_signal_flagは、輝度フィルタセットが前記ALF APSにおいてシグナリングされるかどうかを指定する、項目8に記載の方法。
[項目10]
前記スライスに関連付けられたスライスヘッダにおける輝度成分ALF APS識別子(ID)が前記ALF APSのAPS ID(slice_alf_aps_id_luma[i])に等しいとき、前記ALF APSの前記alf_luma_filter_signal_flagの値は1に等しくなるように制約される、項目8または9に記載の方法。
[項目11]
前記slice_alf_aps_id_luma[i]は、前記スライスの輝度成分によって参照される第iのALF APSのAPS ID(adaptation_parameter_set_id)を指定する、項目10に記載の方法。
[項目12]
前記alf_chroma_filter_signal_flagは、彩度フィルタセットが前記ALF APSにおいてシグナリングされるかどうかを指定する、項目8から11のいずれか一項に記載の方法。
[項目13]
前記スライスに関連付けられたスライスヘッダにおける彩度成分ALF APS ID(slice_alf_aps_id_chroma)が前記ALF APSの前記APS IDに等しいとき、前記ALF APSの前記alf_chroma_filter_signal_flagの値は1に等しくなるように制約される、項目8から12のいずれか一項に記載の方法。
[項目14]
前記slice_alf_aps_id_chromaは、前記スライスの彩度成分によって参照される前記ALF APSのadaptation_parameter_set_idを指定する、項目13に記載の方法。
[項目15]
ビデオコーディングデバイスであって、プロセッサ、前記プロセッサに結合された受信機、前記プロセッサに結合されたメモリ、および、前記プロセッサに結合された送信機を備え、前記プロセッサ、前記受信機、前記メモリ、および前記送信機は、項目1から14のいずれか一項に記載の方法を実行するように構成される、ビデオコーディングデバイス。
[項目16]
ビデオコーディングデバイスによって用いるためのコンピュータプログラムであって、前記コンピュータプログラムは、プロセッサによって実行されたとき、項目1から14のいずれか一項に記載の方法を前記ビデオコーディングデバイスに実行させるコンピュータ実施可能命令を備える、コンピュータプログラム。
[項目17]
デコーダであって、
ALF輝度フィルタシグナルフラグ(alf_luma_filter_signal_flag)およびALF彩度フィルタシグナルフラグ(alf_chroma_filter_signal_flag)を含む適応ループフィルタ(ALF)適応パラメータセット(APS)を含むビットストリームを受信するための受信手段であって、前記alf_luma_filter_signal_flagまたは前記alf_chroma_filter_signal_flagの少なくとも1つは1に等しい、受信手段と、
前記ALF APSにおけるALFパラメータに基づいて、スライスを復号するための復号手段と、
復号されたビデオシーケンスの一部として、表示のために前記スライスを転送するための転送手段と
を備えるデコーダ。
[項目18]
前記デコーダはさらに、項目1から7のいずれか一項に記載の方法を実行するように構成される、項目17に記載のデコーダ。
[項目19]
エンコーダであって、
符号化されたビデオシーケンスの一部としてスライスをビットストリームに符号化するためのスライス符号化手段と、
前記スライスへの適用のための適応ループフィルタ(ALF)パラメータを決定するための決定手段と、
前記ALFパラメータを前記ビットストリームにおけるALF適応パラメータセット(APS)に符号化するためのALF符号化手段であって、前記ALF APSは、ALF輝度フィルタシグナルフラグ(alf_luma_filter_signal_flag)およびALF彩度フィルタシグナルフラグ(alf_chroma_filter_signal_flag)を含み、前記alf_luma_filter_signal_flagまたは前記alf_chroma_filter_signal_flagの少なくとも1つは1に等しい、ALF符号化手段と、
デコーダへの通信のために前記ビットストリームを格納するための格納手段と
を備えるエンコーダ。
[項目20]
前記エンコーダはさらに、項目8から14のいずれか一項に記載の方法を実行するように構成される、項目19に記載のエンコーダ。