JP2022549836A - マルチレイヤービデオビットストリームにおける未使用レイヤーの禁止 - Google Patents

マルチレイヤービデオビットストリームにおける未使用レイヤーの禁止 Download PDF

Info

Publication number
JP2022549836A
JP2022549836A JP2022518808A JP2022518808A JP2022549836A JP 2022549836 A JP2022549836 A JP 2022549836A JP 2022518808 A JP2022518808 A JP 2022518808A JP 2022518808 A JP2022518808 A JP 2022518808A JP 2022549836 A JP2022549836 A JP 2022549836A
Authority
JP
Japan
Prior art keywords
layer
layers
video
ols
vps
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.)
Granted
Application number
JP2022518808A
Other languages
English (en)
Other versions
JP7381732B2 (ja
Inventor
ワーン,イエ-クイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2022549836A publication Critical patent/JP2022549836A/ja
Priority to JP2023188102A priority Critical patent/JP2024012486A/ja
Application granted granted Critical
Publication of JP7381732B2 publication Critical patent/JP7381732B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/172Methods 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 picture, frame or field
    • 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/184Methods 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 bits, e.g. of the compressed video stream
    • 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/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • 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/188Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
    • 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/1883Methods 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 relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process

Landscapes

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

Abstract

復号の方法が提供される。前記方法は、前記ビデオデコーダにより、ビデオパラメータセット(VPS)と複数のレイヤーとを含むビデオビットストリームを受信するステップであって、各レイヤーは、前記VPSにより指定される少なくとも1つの出力レイヤーセット(OLS)に含まれる、ステップと、前記ビデオデコーダにより、前記複数のレイヤーのうちの1つからピクチャーを復号するステップと、を含む。符号化の方法も提供される。前記方法は、前記ビデオエンコーダにより、複数のレイヤーと、少なくとも1つの出力レイヤーセット(OLS)を指定するビデオパラメータセット(VPS)を生成するステップであって、前記複数のレイヤーからの各レイヤーが前記VPSにより指定された前記OLSのうちの少なくとも1つに含まれる、ステップと、前記ビデオエンコーダにより、前記複数のレイヤー及び前記VPSをビデオビットストリームに符号化するステップと、前記ビデオエンコーダにより、ビデオデコーダへ向けて通信するために、前記ビデオビットストリームを格納するステップと、を含む。

Description

[関連出願]
本願は、参照によりここに組み込まれる米国仮特許出願番号第62/905,136号、2019年9月24日出願、Ye-Kui Wang、名称「Disallowing Unnecessary And Unused Layers In Multi-Layer Video Bitstreams」の利益を請求する。
[技術分野]
概して、本開示は、ビデオコーディングにおけるマルチレイヤービデオビットストリームのための技術を記載する。より具体的には、本開示は、不要な及び/又は使用されないレイヤーがビデオコーディングにおけるマルチレイヤービデオビットストリームの中で禁止されることを保証する。
比較的短いビデオでも描写するために必要なビデオデータの量は相当なものになり得る。これは、データが限られた帯域幅能力を有する通信ネットワークに渡りストリーミングされる又はその他の場合に通信されるとき、困難をもたらすことがある。したがって、ビデオデータは、通常、今日の電気通信ネットワークに渡り通信される前に、圧縮される。ビデオが記憶装置に格納されるとき、メモリリソースが限られていることがあるので、ビデオのサイズも問題になり得る。ビデオ圧縮装置は、送信又は記憶の前に、ソースにおいてビデオデータをコーディングするためにソフトウェア及び/又はハードウェアを度々使用し、それによりデジタルビデオ画像を表現するために必要なデータの量を削減する。圧縮されたデータは、次に、ビデオデータを復号するビデオ伸長装置により宛先において受信される。限られたネットワークリソース及びより高いビデオ品質の増え続ける要求に伴い、画像品質を僅かしか又は全く犠牲にせずに圧縮率を向上する改良された圧縮及び伸長技術が望ましい。
第1の態様は、ビデオデコーダにより実施される復号の方法であって、
前記ビデオデコーダにより、ビデオパラメータセット(VPS)と複数のレイヤーとを含むビデオビットストリームを受信するステップであって、各レイヤーは、前記VPSにより指定される少なくとも1つの出力レイヤーセット(OLS)に含まれる、ステップと、
前記ビデオデコーダにより、前記複数のレイヤーのうちの1つからピクチャーを復号するステップと、
を含む方法に関する。
前記方法は、マルチレイヤービデオビットストリームの中の未使用レイヤーを禁止する技術を提供する。つまり、少なくとも1つの出力レイヤーセット(OLS)内で使用されない任意のレイヤーは、マルチレイヤービットストリームに含まれることを制限される。これは、コーディング処理において無関係な情報を有することを回避し、コーディング効率を向上する。従って、ビデオコーディングにおけるコーダ/デコーダ(別名:「コーデック」)は、現在のコーデックに対して改良される。現実問題として、改良されたビデオコーディング処理は、ビデオが送信され、受信され、及び/又は閲覧されるとき、ユーザーに良好なユーザー経験を提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記ピクチャーが、前記少なくとも1つのOLSの出力レイヤーに含まれ、各レイヤーが前記OLS内で指定されることを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、復号するために、前記少なくとも1つのOLSから出力レイヤーを選択することを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記選択された出力レイヤーから、復号するために前記ピクチャーを選択することを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記複数のレイヤーの中の各レイヤーは、全部がレイヤー識別子(ID)の特定の値を有するビデオコーディングレイヤー(VCL)ネットワーク抽象化レイヤー(NAL)ユニットと、関連する非VCL NALユニットとのセットを含むことを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記少なくとも1つのOLSは、2つの出力レイヤーを含み、前記2つの出力レイヤーのうちの一方は、前記2つの出力レイヤーのうちの他方を参照することを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記少なくとも1つのOLSが1つより多くの出力レイヤーを含むことを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記複数のレイヤーの各々が前記VPS内で指定された特定の値のレイヤーIDを有し、前記少なくとも1つのOLS内の前記レイヤーのうちの1つも、前記特定の値のレイヤーIDを有するべきであることを提供する。
任意で、上述の態様のいずれかにおいて、本態様の別の実装は、電子装置のディスプレー上で、前記復号ピクチャーを表示することを提供する。
任意で、上述の態様のいずれかにおいて、本態様の別の実装は、前記ビデオデコーダにより、第2ビデオパラメータセット(VPS)及び第2の複数のレイヤーを含む第2ビデオビットストリームを受信するステップであって、少なくとも1つのレイヤーは、前記第2VPSにより指定された少なくとも1つの出力レイヤーセット(OLS)に含まれない、ステップと、
前記受信するステップに応答して、幾つかの他の修正手段を講じて、前記第2の複数のレイヤーのうちの1つからピクチャーを復号する前に、前記第2ビデオビットストリームに対応する準拠ビットストリームが受信されることを保証する、ステップと、
を提供する。
第2の態様は、ビデオエンコーダにより実施されるビデオビットストリームを符号化する方法に関する。前記方法は、ビデオエンコーダにより実施される符号化の方法を含み、前記方法は、
前記ビデオエンコーダにより、複数のレイヤーと、少なくとも1つの出力レイヤーセット(OLS)を指定するビデオパラメータセット(VPS)を生成するステップであって、前記ビデオエンコーダは、前記複数のレイヤーからの各レイヤーが前記VPSにより指定された前記OLSのうちの少なくとも1つに含まれるよう制約される、ステップと、
前記ビデオエンコーダにより、前記複数のレイヤー及び前記VPSをビデオビットストリームに符号化するステップと、
前記ビデオエンコーダにより、ビデオデコーダへ向けて通信するために、前記ビデオビットストリームを格納するステップと、
を含む。
前記方法は、マルチレイヤービデオビットストリームの中の未使用レイヤーを禁止する技術を提供する。つまり、少なくとも1つの出力レイヤーセット(OLS)内で使用されない任意のレイヤーは、マルチレイヤービットストリームに含まれることを制限される。これは、コーディング処理において無関係な情報を有することを回避し、コーディング効率を向上する。従って、ビデオコーディングにおけるコーダ/デコーダ(別名:「コーデック」)は、現在のコーデックに対して改良される。現実問題として、改良されたビデオコーディング処理は、ビデオが送信され、受信され、及び/又は閲覧されるとき、ユーザーに良好なユーザー経験を提供する。
任意で、上述の態様のいずれかにおいて、本態様の別の実装は、前記1つ以上のOLSの各々は、1つ以上の出力レイヤーを含み、前記出力レイヤーの各々は1つ以上のピクチャーを含み、前記1つ以上のOLSの全部から除外されるレイヤーはないことを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記複数のレイヤーの中の各レイヤーは、全部がレイヤー識別子(ID)の特定の値を有するビデオコーディングレイヤー(VCL)ネットワーク抽象化レイヤー(NAL)ユニットと、関連する非VCL NALユニットとのセットを含むことを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記OLSのうちの1つは、2つの出力レイヤーを含み、前記2つの出力レイヤーのうちの一方は、前記2つの出力レイヤーのうちの他方を参照することを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記VPS内で指定された特定の値のレイヤーIDを有する前記複数のレイヤーの各々の各々について、前記1つ以上のOLS内の前記レイヤーのうちの1つも、前記特定の値のレイヤーIDを有するべきであることを提供する。
第3の態様は、復号装置に関する。前記復号装置は、
ビデオパラメータセット(VPS)と複数のレイヤーとを含むビデオビットストリームを受信するよう構成される受信機であって、各レイヤーは、前記VPSにより指定された少なくとも1つの出力レイヤーセット(OLS)に含まれる、受信機と、
前記受信機に結合されるメモリであって、前記メモリは命令を格納する、メモリと、
前記メモリに結合されるプロセッサであって、前記プロセッサは、前記命令を実行して、前記復号装置に、復号ピクチャーを得るために前記複数のレイヤーのうちの1つからピクチャーを復号させる、プロセッサと、
を含む。
前記復号装置は、マルチレイヤービデオビットストリームの中の未使用レイヤーを禁止する技術を提供する。つまり、少なくとも1つの出力レイヤーセット(OLS)内で使用されない任意のレイヤーは、マルチレイヤービットストリームに含まれることを制限される。これは、コーディング処理において無関係な情報を有することを回避し、コーディング効率を向上する。従って、ビデオコーディングにおけるコーダ/デコーダ(別名:「コーデック」)は、現在のコーデックに対して改良される。現実問題として、改良されたビデオコーディング処理は、ビデオが送信され、受信され、及び/又は閲覧されるとき、ユーザーに良好なユーザー経験を提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記ピクチャーが、前記少なくとも1つのOLSの出力レイヤーに含まれ、各レイヤーが前記OLS内で指定されることを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記プロセッサは、前記ピクチャーが復号される前に、前記少なくとも1つのOLSから出力レイヤーを選択するよう更に構成されることを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記プロセッサは、前記出力ピクチャーが選択された後に、前記出力レイヤーから前記ピクチャーを選択するよう更に構成されることを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記複数のレイヤーの中の各レイヤーは、全部がレイヤー識別子(ID)の特定の値を有するビデオコーディングレイヤー(VCL)ネットワーク抽象化レイヤー(NAL)ユニットと、関連する非VCL NALユニットとのセットを含むことを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記少なくとも1つのOLSは、2つの出力レイヤーを含み、前記2つの出力レイヤーのうちの一方は、前記2つの出力レイヤーのうちの他方を参照することを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記少なくとも1つのOLSが1つ以上の出力レイヤーを含むことを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記プロセッサは、前記命令を実行して、前記復号装置に、更に、
第2ビデオパラメータセット(VPS)及び第2の複数のレイヤーを含む第2ビデオビットストリームを受信させ、少なくとも1つのレイヤーは、前記第2VPSにより指定される少なくとも1つの出力レイヤーセット(OLS)に含まれず、
前記第2ビデオビットストリームの受信に応答して、幾つかの他の修正手段を講じて、前記第2の複数のレイヤーのうちの1つからピクチャーを復号する前に、前記第2ビデオビットストリームに対応する準拠ビットストリームが受信されることを保証することを提供する。
任意で、上述の態様のいずれかにおいて、本態様の別の実装は、ディスプレーが前記復号ピクチャーを表示するよう構成されることを提供する。
第4の態様は、復号装置に関する。符号化装置は、
命令を含むメモリと、
前記メモリに結合されるプロセッサであって、前記プロセッサは、前記命令を実行して、前記符号化装置に、
複数のレイヤーと、1つ以上の出力レイヤーセット(OLS)を指定するビデオパラメータセット(VPS)とを生成させ、前記ビデオエンコーダは、前記複数のレイヤーからの各レイヤーが前記VPSにより指定された前記OLSのうちの少なくとも1つに含まれるよう制約され、
前記複数のレイヤー及び前記VPSをビデオビットストリームに符号化させる、プロセッサと、
前記プロセッサに結合される送信機であって、前記送信機は、ビデオデコーダへ向けて前記ビデオビットストリームを送信するよう構成される、送信機と、
を含む。
前記復号装置は、マルチレイヤービデオビットストリームの中の未使用レイヤーを禁止する技術を提供する。つまり、少なくとも1つの出力レイヤーセット(OLS)内で使用されない任意のレイヤーは、マルチレイヤービットストリームに含まれることを制限される。これは、コーディング処理において無関係な情報を有することを回避し、コーディング効率を向上する。従って、ビデオコーディングにおけるコーダ/デコーダ(別名:「コーデック」)は、現在のコーデックに対して改良される。現実問題として、改良されたビデオコーディング処理は、ビデオが送信され、受信され、及び/又は閲覧されるとき、ユーザーに良好なユーザー経験を提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記1つ以上のOLSの各々は、1つ以上の出力レイヤーを含み、前記出力レイヤーの各々は1つ以上のピクチャーを含むことを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記複数のレイヤーの中の各レイヤーは、全部がレイヤー識別子(ID)の特定の値を有するビデオコーディングレイヤー(VCL)ネットワーク抽象化レイヤー(NAL)ユニットと、関連する非VCL NALユニットとのセットを含むことを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記OLSのうちの1つは、2つの出力レイヤーを含み、前記2つの出力レイヤーのうちの一方は、前記2つの出力レイヤーのうちの他方を参照することを提供する。
任意で、前述の態様のうちのいずれかで、態様の別の実装は、前記複数のレイヤーの各々の各々は前記VPS内で指定された特定の値のレイヤーIDを有し、前記1つ以上のOLS内の前記レイヤーのうちの1つも、前記特定の値のレイヤーIDを有するべきであることを提供する。
第5の態様は、コーディング機器に関する。前記コーディング機器は、
ピクチャーを受信して符号化するか、又はビットストリームを受信して復号するよう構成される受信機と、
前記受信機に結合される送信機であって、前記送信機は、前記ビットストリームをデコーダへ送信するか、又は復号画像をディスプレーへ送信するよう構成される、送信機と、
前記受信機又は前記送信機のうちの少なくとも1つに結合されるメモリであって、前記メモリは、命令を格納するよう構成される、メモリと、
前記メモリに結合されるプロセッサであって、前記プロセッサは、本願明細書に開示される方法のいずれかを実行するために、前記メモリに格納された前記命令を実行するよう構成される、プロセッサと、
を含むコーディング機器を含む。
前記コーディング機器は、マルチレイヤービデオビットストリームの中の未使用レイヤーを禁止する技術を提供する。つまり、少なくとも1つの出力レイヤーセット(OLS)内で使用されない任意のレイヤーは、マルチレイヤービットストリームに含まれることを制限される。これは、コーディング処理において無関係な情報を有することを回避し、コーディング効率を向上する。従って、ビデオコーディングにおけるコーダ/デコーダ(別名:「コーデック」)は、現在のコーデックに対して改良される。現実問題として、改良されたビデオコーディング処理は、ビデオが送信され、受信され、及び/又は閲覧されるとき、ユーザーに良好なユーザー経験を提供する。
任意で、上述の態様のいずれかにおいて、本態様の別の実装は、復号ピクチャーを表示するよう構成されるディスプレーを提供する。
第6の態様は、システムに関する。前記システムは、
エンコーダと、
前記エンコーダと通信するデコーダであって、前記エンコーダ又は前記デコーダは、本願明細書に開示される復号装置、符号化装置、又はコーディング機器を含む、デコーダと、
を含む。
前記システムは、マルチレイヤービデオビットストリームの中の未使用レイヤーを禁止する技術を提供する。つまり、少なくとも1つの出力レイヤーセット(OLS)内で使用されない任意のレイヤーは、マルチレイヤービットストリームに含まれることを制限される。これは、コーディング処理において無関係な情報を有することを回避し、コーディング効率を向上する。従って、ビデオコーディングにおけるコーダ/デコーダ(別名:「コーデック」)は、現在のコーデックに対して改良される。現実問題として、改良されたビデオコーディング処理は、ビデオが送信され、受信され、及び/又は閲覧されるとき、ユーザーに良好なユーザー経験を提供する。
第7の態様はコーディングする手段に関する。コーディングする手段は、
ピクチャーを受信して符号化するか、又はビットストリームを受信して復号するよう構成される受信手段と、
前記受信手段に結合される送信手段であって、前記送信手段は、前記ビットストリームを復号手段へ送信するか、又は復号画像をディスプレー手段へ送信するよう構成される、送信手段と、
前記受信手段又は前記送信手段のうちの少なくとも1つに結合される記憶手段であって、前記記憶手段は、命令を格納するよう構成される、記憶手段と、
前記記憶手段に結合される処理手段であって、前記処理手段は、本願明細書に記載される方法のいずれかを実行するために、前記記憶手段に格納された前記命令を実行するよう構成される、処理手段と、
を含む。
前記コーディングする手段は、マルチレイヤービデオビットストリームの中の未使用レイヤーを禁止する技術を提供する。つまり、少なくとも1つの出力レイヤーセット(OLS)内で使用されない任意のレイヤーは、マルチレイヤービットストリームに含まれることを制限される。これは、コーディング処理において無関係な情報を有することを回避し、コーディング効率を向上する。従って、ビデオコーディングにおけるコーダ/デコーダ(別名:「コーデック」)は、現在のコーデックに対して改良される。現実問題として、改良されたビデオコーディング処理は、ビデオが送信され、受信され、及び/又は閲覧されるとき、ユーザーに良好なユーザー経験を提供する。
明確さを目的として、前述の実施形態のうちのいずれか1つは、他の前述の実施形態のうちの任意の1つ以上と結合されて、本開示の範囲内にある新しい実施形態を生成してよい。
上述及び他の特徴は、添付の図面及び請求の範囲と関連して取り入れられる以下の詳細な説明から一層明確に理解されるだろう。
本開示のより完全な理解のために、ここで、添付の図面及び詳細な説明と関連して以下の簡単な説明を参照する。ここで同様の参照符号は同様の部分を表す。
ビデオ信号をコーディングする例示的な方法のフローチャートである。
ビデオコーディングのための例示的なコーディング及び復号(コーデック)システムの概略図である。
例示的なビデオエンコーダを示す概略図である。
例示的なビデオデコーダを示す概略図である。
空間スケーラビリティのためのマルチレイヤーコーディングの例を示す。
出力レイヤーセット(OLS)を使用するマルチレイヤーコーディングの例を示す。
ビデオビットストリームの実施形態を示す。
コーディングビデオビットストリームを復号する方法の実施形態である。
コーディングビデオビットストリームの方法の実施形態である。
ビデオ符号化装置の概略図である。
コーディングする手段の実施形態の概略図である。
初めに理解されるべきことに、1つ以上の実施形態の説明的実装が以下に提供されるが、開示のシステム及び/又は方法は、現在知られているか又は既存かに関わらず、任意の数の技術を用いて実装されてよい。本開示は、ここに図示され説明される例示的な設計及び実装を含む以下に説明する説明的実装、図面、及び技術に決して限定されるべきではなく、添付の請求の範囲の範囲内で、それらの均等物の全範囲と共に、変更されてよい。
以下の用語は、本明細書で矛盾する文脈で使用されない限り、以下のように定義される。特に、以下の定義は、本開示に更なる明確さを提供することを意図している。しかしながら、用語は、異なる文脈で異なるように記載されることがある。従って、以下の定義は、補助として考えられるべきであり、本願明細書においてそのような用語のために提供される記述の任意の他の定義を制限すると考えられるべきではない。
ビットストリームは、エンコーダとデコーダの間の送信のために圧縮されるビデオデータを含むビットのシーケンスである。エンコーダは、ビデオデータをビットストリームへと圧縮するために、符号化処理を利用するよう構成される装置である。デコーダは、表示のためにビットストリームからビデオデータを再構成するために、復号処理を利用するよう構成される装置である。ピクチャーは、フレーム又はそのフィールドを生成するクロマサンプルのアレイ及び/又はルマサンプルのアレイである。符号化又は復号されているピクチャーは、議論の明確さのために、現在ピクチャーと呼ぶことができる。参照ピクチャーは、インター予測及び/又はインターレイヤー予測に従い、参照により他のピクチャーをコーディングするときに使用可能な参照サンプルを含むピクチャーである。参照ピクチャーリストは、インター予測及び/又はインターレイヤー予測のために使用される参照ピクチャーのリストである。幾つかのビデオコーディングシステムは、参照ピクチャーリスト1及び参照ピクチャーリスト0と表すことのできる2つの参照ピクチャーリストを利用する。参照ピクチャーリスト構造は、複数の参照ピクチャーリストを含むアドレス可能なシンタックス構造である。インター予測は、参照により、現在ピクチャーのサンプルを、現在ピクチャーと異なる参照ピクチャー内の示されたサンプルにコーディングするメカニズムである。ここで、参照ピクチャーと現在ピクチャーは同じレイヤーにある。参照ピクチャーリスト構造エントリは、参照ピクチャーリストに関連付けられる参照ピクチャーを示す、参照ピクチャーリスト構造内のアドレス可能な位置である。スライスヘッダーは、スライス内で表現されるタイルの中の全部のビデオデータに関連するデータ要素を含むコーディングスライスの一部である。ピクチャーパラメータセット(picture parameter set (PPS))は、ピクチャー全体に関連するデータを含むパラメータセットである。より具体的には、PPSは、各ピクチャーヘッダーの中で見付かるシンタックス要素により決定されるような、0個以上のコーディングピクチャー全体に適用されるシンタックス要素を含むシンタックス構造である。シーケンスパラメータセット(sequence parameter set (SPS))は、ピクチャーのシーケンスに関連するデータを含むパラメータセットである。アクセスユニット(access unit (AU))は、復号ピクチャーバッファ(decoded picture buffer (DPB))から出力するために(例えば、ユーザーへの表示のために)同じ表示時間(例えば、同じピクチャー順序カウント)に関連付けられる1つ以上のコーディングピクチャーのセットである。アクセスユニットデリミタ(access unit delimiter (AUD))は、AUの開始又はAU間の境界を示すために使用される指示子又はデータ構造である。復号ビデオシーケンスは、ユーザーへの表示を準備する際に、デコーダにより再構成されたピクチャーのシーケンスである。
ネットワーク抽象化レイヤー(network abstraction layer (NAL))ユニットは、未処理バイトシーケンスペイロード(Raw Byte Sequence Payload (RBSP))の形式のデータ、データのタイプの指示を含み、及び必要に応じてエミュレーション防止バイトが散在している、シンタックス構造である。ビデオコーディングレイヤー(video coding layer (VCL))NALユニットは、ピクチャーのコーディングスライスのようなビデオデータを含むようコーディングされたNALユニットである。非VCL NALユニットは、ビデオデータを復号すること、準拠チェックの性能、又は他の動作をサポートするシンタックス及び/又はパラメータのような非ビデオデータを含むNALユニットである。レイヤーは、特定の特性(例えば、共通の解像度、フレームレート、画像サイズ、等)を共有するVCL NALユニットと、関連する非VCL NALユニットとのセットである。レイヤーのVCL NALユニットは、NALユニットヘッダーレイヤー識別子(nuh_layer_id)の特定の値を共有してよい。コーディングピクチャーは、アクセスユニット(access unit (AU))の中でNALユニットヘッダーレイヤー識別子(nuh_layer_id)の特定の値を有する、及びピクチャーの全部のコーディングツリーユニット(coding tree unit (CTU))を含むVCL NALユニットを含むピクチャーのコーディング表現である。復号ピクチャーは、コーディングピクチャーに復号処理を適用することにより生成されるピクチャーである。
出力レイヤーセット(output layer set (OLS))は、1つ以上のレイヤーが出力レイヤーとして指定されるレイヤーのセットである。出力レイヤーは、(例えば、ディスプレーへの)出力のために指定されるレイヤーである。ゼロ番目の(0-th)OLSは、最下位レイヤー(最下位レイヤー識別子を有するレイヤー)のみを含む、従って出力レイヤーのみを含むOLSである。ビデオパラメータセット(video parameter set (VPS))は、ビデオ全体に関連するパラメータを含むデータユニットである。インターレイヤー予測は、参照レイヤー内の参照ピクチャーを参照することにより、現在レイヤー内の現在ピクチャーをコーディングするメカニズムである。ここで、現在ピクチャー及び参照ピクチャーは同じAUに含まれ、参照レイヤーは現在レイヤーより低いnuh_layer_idを含む。
以下の略語が本願明細書で使用される。コーディングツリーブロック(coding tree block (CTB))、コーディングツリーユニット(coding tree unit (CTU))、コーディングユニット(coding unit (CU))、コーディングビデオシーケンス(coded video sequence (CVS))、共同ビデオ専門家チーム(Joint Video Experts Team (JVET))、ネットワーク抽象化レイヤー(network abstraction layer (NAL))、ピクチャー順序カウント(picture order count (POC))、ピクチャーパラメータセット(Picture Parameter Set (PPS))、未処理バイトシーケンスペイロード(raw byte sequence payload (RBSP))、シーケンスパラメータセット(sequence parameter set (SPS))、バーサタイルビデオコーディング(versatile video coding (VVC))、及びワーキングドラフト(working draft (WD))。
図1は、ビデオ信号のコーディングの例示的な動作方法100のフローチャートである。具体的に、ビデオ信号はエンコーダで符号化される。符号化処理は、ビデオファイルサイズを削減するために、種々のメカニズムを利用することにより、ビデオ信号を圧縮する。小さなファイルサイズほど、関連する帯域幅オーバヘッドを削減しながら、ユーザーに向けて圧縮されたビデオファイルを送信することを可能にする。デコーダは、次に、エンドユーザーに表示するために、圧縮されたビデオファイルを復号して元のビデオ信号を再構成する。復号処理は、通常、符号化処理のミラーであり、デコーダがビデオ信号を矛盾無く再構成することを可能にする。
ステップ101で、ビデオ信号はエンコーダに入力される。例えば、ビデオ信号は、メモリに格納された非圧縮ビデオファイルであってよい。別の例として、ビデオファイルは、ビデオカメラのようなビデオキャプチャ装置によりキャプチャされ、ビデオのライブストリーミングをサポートするために符号化されてよい。ビデオファイルは、オーディオコンポーネント及びビデオコンポーネントの両方を含んでよい。ビデオコンポーネントは、シーケンスの中で閲覧されるとき、動きの視覚的印象を与える一連の画像フレームを含む。フレームは、ここではルマ成分(又はルマサンプル)と呼ばれる光、及びクロマ成分(又はクロマサンプル)と呼ばれる色、の観点で表現されるピクセルを含む。幾つかの例では、フレームは、3次元表示をサポートするために、深さ値も含んでよい。
ステップ103で、ビデオはブロックにパーティションされる。パーティションは、圧縮のために、各フレーム内のピクセルを正方形及び/又は長方形ブロックに細分化することを含む。例えば、高効率ビデオコーディング(High Efficiency Video Coding(HEVC))(H.265及びMPEG-H Part2としても知られる)では、フレームは、先ず、所定のサイズ(例えば、64ピクセル×64ピクセル)のブロックであるコーディングツリーユニット(coding tree unit(CTU))に分割できる。CTUは、ルマ及びクロマサンプルの両方を含む。コーディングツリーは、CTUをブロックに分割し、次に、更なる符号化をサポートする構成が達成されるまで、ブロックを繰り返し細分化するために利用されてよい。例えば、フレームのルマ成分は、個々のブロックが比較的同種の光の値を含むまで、細分化されてよい。さらに、フレームのクロマ成分は、個々のブロックが比較的同種の色の値を含むまで、細分化されてよい。したがって、パーティションメカニズムは、ビデオフレームの内容に依存して変化する。
ステップ105で、ステップ103でパーティションされた画像ブロックを圧縮するために、種々の圧縮メカニズムが利用される。例えば、インター予測及び/又はイントラ予測が利用されてよい。インター予測は、共通のシーンの中のオブジェクトは連続フレームで現れる傾向があるという事実を利用するよう設計される。したがって、参照フレーム内のオブジェクトを描写するブロックは、隣接フレーム内で繰り返し示される必要がない。具体的には、テーブルのようなオブジェクトは、複数のフレームに渡り、一定の位置に留まってよい。したがって、テーブルは一度示され、隣接フレームは参照フレームに戻り参照できる。複数のフレームに渡りオブジェクトを一致させるために、パターンマッチングメカニズムが利用されてよい。さらに、例えばオブジェクトの動き又はカメラの動きにより、動くオブジェクトが複数のフレームに渡り表示されてよい。特定の例として、ビデオは、複数のフレームに渡りスクリーンを横に移動する自動車を示してよい。このような動きを示すために、動きベクトルが利用できる。動きベクトルは、フレーム内のオブジェクトの座標から参照フレーム内の該オブジェクトの座標へのオフセットを提供する2次元ベクトルである。したがって、インター予測は、現在フレーム内の画像ブロックを、参照フレーム内の対応するブロックからのオフセットを示す動きベクトルのセットとして、符号化できる。
イントラ予測は、共通フレーム内のブロックを符号化する。イントラ予測は、ルマ及びクロマ成分がフレーム内で密集する傾向があるという事実を利用する。例えば、木の一部の緑のパッチは、同様の緑のパッチに隣接して位置する傾向がある。イントラ予測は、複数の方向予測モード(例えば、HEVCでは33個)、平面モード、及び直流(direct current(DC))モードを利用する。方向モードは、現在ブロックが対応する方向の近隣ブロックのサンプルと同様/同じであることを示す。平面モードは、行/列(例えば、平面)に沿う一連のブロックが行の端にある近隣ブロックに基づき補間できることを示す。平面モードは、事実上、変化する値の比較的一定の勾配を利用することにより、行/列に渡る光/色の円滑な遷移を示す。DCモードは、境界円滑化のために利用され、ブロックが方向予測モードの角度方向に関連する全部の近隣ブロックのサンプルに関連する平均値と同様/同じであることを示す。したがって、イントラ予測ブロックは、実際の値の代わりに、種々の関係予測モードとして、画像ブロックを表すことができる。さらに、インター予測ブロックは、実際の値の代わりに、動きベクトル値として、画像ブロックを表すことができる。いずれの場合にも、予測ブロックは、幾つかの場合に画像を正確に表さないことがある。任意の差が残差ブロックに格納される。ファイルを更に圧縮するために、変換が残差ブロックに適用されてよい。
ステップ107で、種々のフィルタリング技術が適用されてよい。HEVCでは、フィルタは、インループフィルタリング方式に従い適用される。上述のブロックに基づく予測は、デコーダにおいて濃淡のむらのある画像の生成をもたらし得る。さらに、ブロックに基づく予測方式は、ブロックを符号化し、次に、参照ブロックとして後に使用するために、符号化したブロックを再構成し得る。インループフィルタリング方式は、ノイズ抑制フィルタ、デブロッキングフィルタ、適応型ループフィルタ、及びサンプル適応型オフセット(sample adaptive offset(SAO))フィルタをブロック/フィルタに繰り返し適用する。これらのフィルタは、このような濃淡のむらのアーチファクトを緩和し、その結果、符号化されたファイルは正確に再構成できる。さら、これらのフィルタは、再構成された参照ブロック内のアーチファクトを緩和し、その結果、再構成された参照ブロックに基づき符号化される後のブロック内で追加アーチファクトを生じる可能性が低い。
ビデオ信号がパーティションされ、圧縮され、及びフィルタリングされると、結果として生じるデータは、ステップ109でビットストリーム内に符号化される。ビットストリームは、上述のデータ、及びデコーダにおける適正なビデオ信号再構成をサポートするための任意の所望のシグナリングデータを含む。例えば、このようなデータは、パーティションデータ、予測データ、残差ブロック、及びデコーダにコーディング指示を提供する種々のフラグを含んでよい。ビットストリームは、要求によりデコーダへ向けて送信するために、メモリに格納されてよい。ビットストリームは、複数のデコーダへ向けてブロードキャスト及び/又はマルチキャストされてもよい。ビットストリームの生成は反復処理である。したがって、ステップ101、103、105、107、及び109は、多数のフレーム及びブロックに渡り連続して及び/又は同時に生じてよい。図1に示す順序は明確さ及び議論の容易さのために提示され、ビデオコーディング処理を特定の順序に限定することを意図しない。
ステップ111で、デコーダは、ビットストリームを受信し、復号処理を開始する。具体的に、デコーダは、エントロピー復号方式を利用して、ビットストリームを対応するシンタックス及びビデオデータに変換する。ステップ111で、デコーダは、ビットストリームからのシンタックスを利用して、フレームのパーティションを決定する。パーティションは、ステップ103におけるブロックパーティションの結果と一致するべきである。ステップ111で利用されるようなエントロピー符号化/復号は、以下に説明される。エンコーダは、圧縮処理の間に、入力画像内の値の空間的位置に基づき幾つかの可能な選択肢からブロックパーティション方式を選択するような、多くの選択肢を生成する。正確な選択肢をシグナリングすることは、膨大な数のビンを利用し得る。ここで使用されるように、ビンは、変数として扱われる2進値である(例えば、コンテキストに依存して変化し得るビット値)。エントロピーコーディングは、許容可能な選択肢のセットを残して、エンコーダが特定の場合に明らかに実行可能ではない任意の選択肢を廃棄することを可能にする。各々の許容可能な選択肢は、次にコードワードを割り当てられる。コードワードの長さは、許容可能な選択肢の数に基づく(例えば、2個の選択肢に対して1つのビン、3~4個の選択肢に対して2つのビン、等)。エンコーダは、次に、選択された選択肢についてコードワードを符号化する。この方式は、全ての可能な選択肢の潜在的に大きな集合からの選択をユニークに示すのとは反対に、可能な選択肢の小さな部分集合からの選択をユニークに示すために望ましい程度の大きさなので、コードワードのサイズを削減する。デコーダは、次に、エンコーダと同様の方法で許容可能な選択肢の集合を決定することにより、選択を復号する。許容可能な選択肢の集合を決定することにより、デコーダは、コードワードを読み出し、エンコーダにより行われた選択を決定できる。
ステップ113で、デコーダは、ブロック復号を実行する。具体的に、デコーダは、逆変換を利用して残差ブロックを生成する。次に、デコーダは、残差ブロック及び対応する予測ブロックを利用して、パーティションに従い画像ブロックを再構成する。予測ブロックは、エンコーダにおいてステップ105で生成されたイントラ予測ブロック及びインター予測ブロックの両方を含んでよい。再構成画像ブロックは、次に、ステップ111で決定されたパーティションデータに従い再構成ビデオ信号のフレームへと位置付けられる。ステップ113のシンタックスも、上述のようなエントロピーコーディングによりビットストリームの中でシグナリングされてよい。
ステップ115で、エンコーダにおけるステップ107と同様の方法で、再構成ビデオ信号のフレームに対してフィルタリングが実行される。例えば、ノイズ抑制フィルタ、デブロッキングフィルタ、適応型ループフィルタ、及びSAOフィルタが、ブロッキングアーチファクトを除去するためにフレームに適用されてよい。フレームがフィルタリングされると、ビデオ信号は、エンドユーザーによる閲覧のためにステップ117においてディスプレーへと出力できる。
図2は、ビデオコーディングのための例示的なコーディング及び復号(コーデック)システム200の概略図である。具体的に、コーデックシステム200は、動作方法100の実装をサポートするための機能を提供する。コーデックシステム200は、エンコーダ及びデコーダの両方の中で利用されるコンポーネントを示すために一般化される。コーデックシステム200は、パーティションされたビデオ信号201を生じる、動作方法100におけるステップ101及び103に関して上述したビデオ信号を受信しパーティションする。コーデックシステム200は、次に、方法100におけるステップ105、107、及び109に関して上述したエンコーダとして動作するとき、パーティションされたビデオ信号201をコーディングビットストリームへと圧縮する。デコーダとして動作するとき、コーデックシステム200は、動作方法100におけるステップ111、113、115、及び117に関して上述したようにビットストリームから出力ビデオ信号を生成する。コーデックシステム200は、汎用コーダ制御コンポーネント211、変換スケーリング及び量子化コンポーネント213、イントラピクチャー推定コンポーネント215、イントラピクチャー予測コンポーネント217、動き補償コンポーネント219、動き推定コンポーネント221、スケーリング及び逆変換コンポーネント229、フィルタ制御分析コンポーネント227、インループフィルタコンポーネント225、復号ピクチャーバッファコンポーネント223、及びヘッダーフォーマット及びコンテキスト適応型2進算術コーディング(context adaptive binary arithmetic coding(CABAC))コンポーネント231を含む。このようなコンポーネントは図示のように結合される。図2では、黒線は符号化/復号されるべきデータの動きを示し、一方で、破線は他のコンポーネントの動作を制御する制御データの動きを示す。コーデックシステム200のコンポーネントは、エンコーダ内に全て存在してよい。デコーダは、コーデックシステム200のコンポーネントの一部を含んでよい。例えば、デコーダは、イントラピクチャー予測コンポーネント217、動き補償コンポーネント219、スケーリング及び逆変換コンポーネント229、インループフィルタコンポーネント225、及び復号ピクチャーバッファコンポーネント223を含んでよい。これらのコンポーネントはここで説明される。
パーティションされたビデオ信号201は、コーディングツリーによりピクセルのブロックへとパーティションされた、キャプチャされたビデオシーケンスである。コーディングツリーは、種々の分割モードを利用して、ピクセルのブロックをより小さなピクセルのブロックへと細分化する。これらのブロックは、次に、より小さなブロックへと更に細分化できる。ブロックは、コーディングツリー上のノードと呼ばれてよい。より大きな親ノードは、より小さな子ノードへと分割される。ノードが細分化される回数は、ノード/コーディングツリーの深さと呼ばれる。分割されたブロックは、幾つかの場合にはコーディングユニット(coding unit(CU))に含まれ得る。例えば、CUは、ルマブロック、赤色差分クロマ(Cr)ブロック、及び青色差分クロマ(Cb)ブロック、ならびにCUの対応するシンタックス命令を含むCTUの副部分であり得る。分割モードは、利用される分割モードに依存して変化する形状の各々2、3、又は4個の子ノードにノードをパーティションするために利用される2分木(binary tree(BT))、3分木(triple tree(TT))、及び4分木(quad tree(QT))を含んでよい。パーティションされたビデオ信号201は、汎用コーダ制御コンポーネント211、変換スケーリング及び量子化コンポーネント213、イントラピクチャー推定コンポーネント215、フィルタ制御分析コンポーネント227、及び動き推定コンポーネント221へと圧縮のために転送される。
汎用コーダ制御コンポーネント211は、アプリケーション制約に従いビットストリームへのビデオシーケンスの画像のコーディングに関連する決定を行うよう構成される。例えば、汎用コーダ制御コンポーネント211は、再構成品質に対するビットレート/ビットストリームサイズの最適化を管理する。このような決定は、記憶空間/帯域幅の利用可能性、及び画像解像度要求に基づき行われてよい。汎用コーダ制御コンポーネント211は、また、バッファアンダーラン及びオーバラン問題を緩和するために、変換速度の観点でバッファ利用を管理する。これらの問題に対応するために、汎用コーダ制御コンポーネント211は、他のコンポーネントによるパーティション、予測、及びフィルタリングを管理する。例えば、汎用コーダ制御コンポーネント211は、解像度を増大するために圧縮複雑性を動的に増大させ、解像度及び帯域幅使用を低減するために帯域幅使用を増大し又は圧縮複雑性を減少させてよい。したがって、汎用コーダ制御コンポーネント211は、コーデックシステム200の他のコンポーネントを制御して、ビデオ信号再構成品質とビットレート関心事とのバランスをとる。汎用コーダ制御コンポーネント211は、他のコンポーネントの動作を制御する制御データを生成する。制御データも、デコーダにおける復号のためのパラメータをシグナリングするためにビットストリーム内に符号化されるようヘッダーフォーマット及びCABACコンポーネント231へ転送される。
パーティションされたビデオ信号201は、インター予測のために、動き推定コンポーネント221及び動き補償コンポーネント219へも送信される。パーティションされたビデオ信号201のフレーム又はスライスは、複数のビデオブロックに分割されてよい。動き推定コンポーネント221及び動き補償コンポーネント219は、1つ以上の参照フレームの中の1つ以上のブロックに関連して、受信したビデオブロックのインター予測コーディングを実行し、時間予測を提供する。コーデックシステム200は、例えばビデオデータの各ブロックについて適切なコーディングモードを選択するために、複数のコーディングパスを実行してよい。
動き推定コンポーネント221及び動き補償コンポーネント219は、高度に統合されてよいが、概念的目的のために別個に示される。動き推定コンポーネント221により実行される動き推定は、ビデオブロックについて動きを推定する動きベクトルを生成する処理である。動きベクトルは、例えば、予測ブロックに関連してコーディングオブジェクトの配置を示してよい。予測ブロックは、ピクセル差分の観点で、コーディングされるべきブロックに厳密に一致すると分かったブロックである。予測ブロックは、参照ブロックとも呼ばれてよい。このようなピクセル差分は、絶対値差分の和(sum of absolute difference(SAD))、平方差分の和(sum of square difference(SSD))、又は他の差分メトリックにより決定されてよい。HEVCは、CTU、コーディングツリーブロック(coding tree block(CTB))、及びCUを含む幾つかのコーディングオブジェクトを利用する。例えば、CTUは、CTBに分割でき、CTBは次にCUに含むためにCBに分割できる。CUは、予測データを含む予測単位(prediction unit(PU))及び/又はCUの変換された残差データを含む変換単位(transform unit(TU))として符号化できる。動き推定コンポーネント221は、レート歪み最適化処理の部分としてレート歪み分析を用いて、動きベクトル、PU及びTUを生成する。例えば、動き推定コンポーネント221は、現在ブロック/フレームについて複数の参照ブロック、複数の動きベクトル、等を決定してよく、最適なレート歪み特性を有する参照ブロック、動きベクトル、等を選択してよい。最適なレート歪み特性は、ビデオ再構成の品質(例えば、圧縮によるデータ損失の量)及びコーディング効率(例えば、最終的な符号化のサイズ)の両方のバランスをとる。
幾つかの例では、コーデックシステム200は、復号ピクチャーバッファコンポーネント223に格納された参照ピクチャーのサブ整数ピクチャー位置の値を計算してよい。例えば、ビデオコーデックシステム200は、参照ピクチャーの4分の1ピクセル位置、8分の1ピクセル位置、又は他の分数ピクセル位置の値を補間してよい。したがって、動き推定コンポーネント221は、完全ピクセル位置及び分数ピクセル位置に関連して動き探索を実行し、分数ピクセル精度で動きベクトルを出力してよい。動き推定コンポーネント221は、PUの位置を参照ピクチャーの予測ブロックの位置と比較することにより、インターコーディングスライスの中のビデオブロックのPUについて、動きベクトルを計算する。動き推定コンポーネント221は、計算した動きベクトルを動きデータとして、符号化のためにヘッダーフォーマット及びCABACコンポーネント231へ、動きを動き補償コンポーネント219へ出力する。
動き補償コンポーネント219により実行される動き補償は、動き推定コンポーネント221により決定された動きベクトルに基づき、予測ブロックをフェッチする又は生成することを含んでよい。ここでも、動き推定コンポーネント221及び動き補償コンポーネント219は、幾つかの例では機能的に統合されてよい。現在ビデオブロックのPUの動きベクトルを受信すると、動き補償コンポーネント219は、動きベクトルの指す予測ブロックの位置を特定してよい。次に、コーディングされている現在ビデオブロックのピクセル値から予測ブロックのピクセル値を減算してピクセル差分値を形成することにより、残差ビデオブロックが形成される。一般に、動き推定コンポーネント221は、ルマ成分に関連して動き推定を実行し、動き補償コンポーネント219は、クロマ成分及びルマ成分の両方についてルマ成分に基づき計算された動きベクトルを使用する。予測ブロック及び残差ブロックは、変換スケーリング及び量子化コンポーネント213へ転送される。
パーティションされたビデオ信号201は、イントラピクチャー推定コンポーネント215及びイントラピクチャー予測コンポーネント217へも送信される。動き推定コンポーネント221及び動き補償コンポーネント219と同様に、イントラピクチャー推定コンポーネント215及びイントラピクチャー予測コンポーネント217は、高度に統合されてよいが、概念的目的のために別個に示される。上述のようなフレーム間の動き推定コンポーネント221及び動き補償コンポーネント219により実行されるインター予測の代わりに、イントラピクチャー推定コンポーネント215及びイントラピクチャー予測コンポーネント217は、現在フレーム内のブロックに関連して現在ブロックをイントラ予測する。特に、イントラピクチャー推定コンポーネント215は、現在ブロックを符号化するために使用すべきイントラ予測モードを決定する。幾つかの例では、イントラピクチャー推定コンポーネント215は、複数のテストされたイントラ予測モードから、現在ブロックを符号化するための適切なイントラ予測モードを選択する。選択したイントラ予測モードは、次に、符号化のためにヘッダーフォーマット及びCABACコンポーネント231へ転送される。
例えば、イントラピクチャー推定コンポーネント215は、種々のテストされたイントラ予測モードについてレート歪み分析を用いてレート歪み値を計算し、テストしたモードの中で最適なレート歪み特性を有するイントラ予測モードを選択する。レート歪み分析は、一般に、符号化ブロックと、符号化されて該符号化ブロックを生成した元の未符号化ブロックとの間の歪み(又は誤差)の量、並びに符号化ブロックを生成するために使用されたビットレート(例えば、ビット数)を決定する。イントラピクチャー推定コンポーネント215は、種々の符号化ブロックについて歪み及びレートから比を計算して、ブロックについて、どのイントラ予測モードが最適なレート歪み値を示すかを決定する。さらに、イントラピクチャー推定コンポーネント215は、レート歪み最適化(rate-distortion optimization(RDO))に基づき、深さモデル化モード(depth modeling mode(DMM))を用いて深さマップの深さブロックをコーディングするよう構成されてよい。
イントラピクチャー予測コンポーネント217は、エンコーダに実装されるとき、イントラピクチャー推定コンポーネント215により決定された、選択されたイントラ予測モードに基づき、予測ブロックから残差ブロックを生成し、又は、デコーダに実装されるとき、ビットストリームから残差ブロックを読み出してよい。残差ブロックは、行列として表現される、予測ブロックと元のブロックとの間の値の差分を含む。残差ブロックは、次に、変換スケーリング及び量子化コンポーネント213へ転送される。イントラピクチャー推定コンポーネント215及びイントラピクチャー予測コンポーネント217は、ルマ及びクロマ成分の両方に対して動作してよい。
変換スケーリング及び量子化コンポーネント213は、残差ブロックを更に圧縮するよう構成される。変換スケーリング及び量子化コンポーネント213は、離散コサイン変換(discrete cosine transform(DCT))、離散サイン変換(discrete sine transform(DST))、又は概念的に類似する変換のような変換を残差ブロックに適用して、残差変換係数値を含むビデオブロックを生成する。ウェーブレット変換、整数変換、サブバンド変換、又は他の種類の変換も使用され得る。変換は、残差情報を、ピクセル値ドメインから周波数ドメインのような変換ドメインへと変換してよい。変換スケーリング及び量子化コンポーネント213は、また、例えば周波数に基づき、変換された残差情報をスケーリングするよう構成される。このようなスケーリングは、倍率を残差情報に適用することを含む。その結果、異なる周波数情報は異なる粒度で量子化され、これは再構成ビデオの最終的な視覚的品質に影響を与え得る。変換スケーリング及び量子化コンポーネント213は、また、ビットレートを更に低減するために、変換係数を量子化するよう構成される。量子化処理は、係数の一部又は全部に関連するビット深さを低減してよい。量子化の程度は、量子化パラメータを調整することにより、変更されてよい。幾つかの例では、変換スケーリング及び量子化コンポーネント213は、次に、量子化された変換係数を含む行列のスキャンを実行してよい。量子化された変換係数は、ビットストリーム内に符号化されるために、ヘッダーフォーマット及びCABACコンポーネント231へ転送される。
スケーリング及び逆変換コンポーネント229は、動き推定をサポートするために、変換スケーリング及び量子化コンポーネント213の逆動作を適用する。スケーリング及び逆変換コンポーネント229は、逆スケーリング、変換、及び/又は量子化を適用して、例えば別の現在ブロックのための予測ブロックになり得る参照ブロックとして後に使用するために、ピクセルドメインの残差ブロックを再構成する。動き推定コンポーネント221及び/又は動き補償コンポーネント219は、後のブロック/フレームの動き推定で使用するために、残差ブロックを対応する予測ブロックに加算して戻すことにより、参照ブロックを計算してよい。スケーリング、量子化、及び変換の間に生成されたアーチファクトを低減するために、再構成された参照ブロックにフィルタが適用される。このようなアーチファクトは、そうでなければ、後続のブロックが予測されるときに不正確な予測を生じ(及び追加アーチファクトを生成し)得る。
フィルタ制御分析コンポーネント227及びインループフィルタコンポーネント225は、残差ブロックに及び/又は再構成画像ブロックにフィルタを適用する。例えば、スケーリング及び逆変換コンポーネント229からの変換された残差ブロックは、元の画像ブロックを再構成するために、イントラピクチャー予測コンポーネント217及び/又は動き補償コンポーネント219からの対応する予測ブロックと結合されてよい。フィルタは、次に、再構成画像ブロックに適用されてよい。幾つかの例では、フィルタは、代わりに、残差ブロックに適用されてよい。図2の他のコンポーネントと同様に、フィルタ制御分析コンポーネント227及びインループフィルタコンポーネント225は、高度に統合され一緒に実装されてよいが、概念的目的のために別個に示される。再構成された参照ブロックに適用されるフィルタは、特定の空間領域に適用され、このようなフィルタがどのように適用されるかを調整するための複数のパラメータを含む。フィルタ制御分析コンポーネント227は、再構成された参照ブロックを分析して、このようなフィルタが適用されるべき場合を決定し、対応するパラメータを設定する。このようなデータは、ヘッダーフォーマット及びCABACコンポーネント231へ、符号化のためのフィルタ制御データとして転送される。インループフィルタコンポーネント225は、フィルタ制御データに基づき、このようなフィルタを適用する。フィルタは、デブロッキングフィルタ、ノイズ抑制フィルタ、SAOフィルタ、及び適応型ループフィルタを含んでよい。このようなフィルタは、例に依存して、(例えば、再構成されたピクセルブロック上の)空間/ピクセルドメインにおいて、又は周波数ドメインにおいて、適用されてよい。
エンコーダとして動作するとき、フィルタリングされた再構成画像ブロック、残差ブロック、及び/又は予測ブロックは、上述のように動き推定において後に使用するために、復号ピクチャーバッファコンポーネント223に格納される。デコーダとして動作するとき、復号ピクチャーバッファコンポーネント223は、出力ビデオ信号の部分として、再構成されフィルタリングされたブロックを格納しディスプレーへ向けて転送する。復号ピクチャーバッファコンポーネント223は、予測ブロック、残差ブロック、及び/又は再構成画像ブロックを格納することの可能な任意のメモリ装置であってよい。
ヘッダーフォーマット及びCABACコンポーネント231は、コーデックシステム200の種々のコンポーネントからデータを受信し、デコーダへ向けて送信するためにこのようなデータをコーディングビットストリームに符号化する。具体的に、ヘッダーフォーマット及びCABACコンポーネント231は、一般制御データ及びフィルタ制御データのような制御データを符号化するために種々のヘッダーを生成する。さらに、イントラ予測及び動きデータを含む予測データ、ならびに量子化された変換係数データの形式の残差データは、全てビットストリーム内に符号化される。最終的なビットストリームは、元のパーティションされたビデオ信号201を再構成するためにデコーダにより所望される全ての情報を含む。このような情報は、イントラ予測モードインデックステーブル(コードワードマッピングテーブルとも呼ばれる)、種々のブロックの符号化コンテキストの定義、最も有望なイントラ予測モードの指示、パーティション情報の指示、等も含んでよい。このようなデータは、エントロピーコーディングを利用することにより、符号化されてよい。例えば、情報は、コンテキスト適応型可変長コーディング(context adaptive variable length coding(CAVLC))、シンタックスに基づくコンテキスト適応型2進算術コーディング(syntax-based context-adaptive binary arithmetic coding(SBAC))、確率区間パーティショニングエントロピー(probability interval partitioning entropy(PIPE))コーディング、又は別のエントロピーコーディング技術を利用することにより、符号化されてよい。エントロピーコーディングに従い、コーディングされたビットストリームは、別の装置(例えば、ビデオデコーダ)へ送信され、又は後の送信又は読み出しのために保存されてよい。
図3は、例示的なビデオエンコーダ300を示すブロック図である。ビデオエンコーダ300は、コーデックシステム200の符号化機能を実装するために、及び/又は動作方法100のステップ101、103、105、107及び/又は109を実装するために、利用されてよい。エンコーダ300は、入力ビデオ信号をパーティションして、実質的にパーティションされたビデオ信号201と同様であるパーティションされたビデオ信号301を生じる。パーティションされたビデオ信号301は、次に、エンコーダ300のコンポーネントにより圧縮されビットストリームに符号化される。
具体的に、パーティションされたビデオ信号301は、イントラ予測のためにイントラピクチャー予測コンポーネント317へ転送される。イントラピクチャー予測コンポーネント317は、イントラピクチャー推定コンポーネント215及びイントラピクチャー予測コンポーネント217と実質的に同様であってよい。パーティションされたビデオ信号301は、復号ピクチャーバッファコンポーネント323の中の参照ブロックに基づくインター予測のために動き補償コンポーネント321へも転送される。動き補償コンポーネント321は、動き推定コンポーネント221及び動き補償コンポーネント219と実質的に同様であってよい。イントラピクチャー予測コンポーネント317及び動き補償コンポーネント321からの予測ブロック及び残差ブロックは、残差ブロックの変換及び量子化のために、変換及び量子化コンポーネント313へ転送される。変換及び量子化コンポーネント313は、変換スケーリング及び量子化コンポーネント213と実質的に同様であってよい。変換され量子化された残差ブロック及び対応する予測ブロックは(関連する制御データと一緒に)、ビットストリームへのコーディングのためにエントロピーコーディングコンポーネント313へ転送される。エントロピーコーディングコンポーネント331は、ヘッダーフォーマット及びCABACコンポーネント231と実質的に同様であってよい。
変換され量子化された残差ブロック及び/又は対応する予測ブロックは、また、動き補償コンポーネント321による使用のために参照ブロックへと再構成するために、変換及び量子化コンポーネント313から逆変換及び量子化コンポーネント329へ転送される。逆変換及び量子化コンポーネント329は、スケーリング及び逆変換コンポーネント229と実質的に同様であってよい。インループフィルタコンポーネント325の中のインループフィルタも、例に依存して、残差ブロック及び/又は再構成された参照ブロックに適用される。インループフィルタコンポーネント325は、フィルタ制御分析コンポーネント227及びインループフィルタコンポーネント225と実質的に同様であってよい。インループフィルタコンポーネント325は、インループフィルタコンポーネント225に関して議論したような複数のフィルタを含んでよい。フィルタリングされたブロックは、次に、動き補償コンポーネント321により参照ブロックとして使用するために、復号ピクチャーバッファコンポーネント323に格納される。復号ピクチャーバッファコンポーネント323は、復号ピクチャーバッファコンポーネント223と実質的に同様であってよい。
図4は、例示的なビデオデコーダ400を示すブロック図である。ビデオエンコーダ400は、コーデックシステム200の復号機能を実装するために、及び/又は動作方法100のステップ111、113、115及び/又は117を実装するために、利用されてよい。デコーダ400は、例えばエンコーダ300からビットストリームを受信し、エンドユーザーに表示するためにビットストリームに基づき再構成された出力ビデオ信号を生成する。
ビットストリームは、エントロピー復号コンポーネント433により受信される。エントロピー復号コンポーネント433は、CAVLC、CABAC、SBAC、PIPEコーディングのようなエントロピー復号方式、又は他のエントロピーコーディング技術を実装するよう構成される。例えば、エントロピー復号コンポーネント433は、ビットストリーム内にコードワードとして符号化された追加データを解釈するために、ヘッダー情報を利用してコンテキストを提供してよい。復号された情報は、一般制御データ、フィルタ制御データ、パーティション情報、動きデータ、予測データ、及び残差ブロックからの量子化済み変換係数のような、ビデオ信号を復号するための任意の所望の情報を含む。量子化済み変換係数は、残差ブロックへと再構成するために、逆変換及び量子化コンポーネント429へ転送される。逆変換及び量子化コンポーネント429は、逆変換及び量子化コンポーネント329と同様であってよい。
再構成残差ブロック及び/又は予測ブロックは、イントラ予測動作に基づき画像ブロックへと再構成するために、イントラピクチャー予測コンポーネント417へ転送される。イントラピクチャー予測コンポーネント417は、イントラピクチャー推定コンポーネント215及びイントラピクチャー予測コンポーネント217と同様であってよい。具体的に、イントラピクチャー予測コンポーネント417は、フレーム内の参照ブロックの位置を特定するために予測モードを利用し、結果に残差ブロックを適用して、イントラ予測された画像ブロックを再構成する。再構成されたイントラ予測された画像ブロック及び/又は残差ブロック、及び対応するインター予測データは、各々復号ピクチャーバッファコンポーネント223及びインループフィルタコンポーネント225と実質的に同様であってよいインループフィルタコンポーネント425を介して復号ピクチャーバッファコンポーネント423へ転送される。インループフィルタコンポーネント425は、再構成画像ブロック、残差ブロック、及び/又は予測ブロックをフィルタリングし、そのような情報は復号ピクチャーバッファコンポーネント423に格納される。復号ピクチャーバッファコンポーネント423からの再構成画像ブロックは、インター予測のために動き補償コンポーネント421へ転送される。動き補償コンポーネント421は、動き推定コンポーネント221及び/又は動き補償コンポーネント219と実質的に同様であってよい。具体的に、動き補償コンポーネント421は、参照ブロックからの動きベクトルを利用して、予測ブロックを生成し、結果に残差ブロックを提供して、画像ブロックを再構成する。結果として生じた再構成ブロックは、インループフィルタコンポーネント425を介して、復号ピクチャーバッファコンポーネント423へ転送されてもよい。復号ピクチャーバッファコンポーネント423は、パーティション情報によりフレームへと再構成できる、追加再構成画像ブロックを格納し続けてよい。このようなフレームは、シーケンス内に配置されてもよい。シーケンスは、再構成された出力ビデオ信号としてディスプレーに向けて出力される。
以上を心に留めて、ビデオ圧縮技術は、空間(イントラピクチャー)予測及び/又は時間(インターピクチャー)予測を実行して、ビデオシーケンスに内在する冗長性を低減するか、又は除去する。ブロックに基づくビデオコーディングでは、ビデオスライス(つまり、ビデオピクチャー又はビデオピクチャーの部分)は、ツリーブロック、コーディングツリーブロック(coding tree block (CTB))、コーディングツリーユニット(coding tree unit (CTU))、コーディングユニット(coding unit (CU))、及び/又はコーディングノードとも呼ばれてよいビデオブロックにパーティションされてよい。ピクチャーのイントラコーディング(I)スライス内のビデオブロックは、同じピクチャー内の近隣ブロックの中の参照サンプルに対して空間予測を用いて符号される。ピクチャーのインターコーディング(P又はB)スライス内のビデオブロックは、同じピクチャー内の近隣ブロックの中の参照サンプルに対する空間予測、又は他の参照ピクチャー内の参照サンプルに対する時間予測を利用してよい。ピクチャーは、フレームと呼ばれてよく、参照ピクチャーは、参照フレームと呼ばれてよい。POCは、各ピクチャー、コーディングレイヤービデオシーケンス(coded layer video sequence (CLVS))内の全てのピクチャーの中で関連付けられたピクチャーを一意に識別し、関連付けられたピクチャーがDPBから出力されるときを示し、及び、DPBから出力されるべき同じCLVS内の他のピクチャーの出力順序位置に対する出力順序で、関連付けられたピクチャーの位置を示す、各ピクチャーに関連付けられた変数である。フラグは、2つの可能な値:0及び1のうちの1つを取ることができる、変数又は単一ビットシンタックス要素である。
空間又は時間予測は、コーディングされるべきブロックの予測ブロックを生じる。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差を表す。インターコーディングブロックは予測ブロックを形成する参照サンプルのブロックを指す動きベクトル、及びコーディングブロックと予測ブロックとの間の差を示す残差データに従い符号化される。イントラコーディングブロックは、イントラコーディングモード及び残差データに従い符号化される。更なる圧縮のために、残差データは、ピクセルドメインから変換ドメインへと変換されてよく、結果として残差変換係数を生じ、これは次に量子化されてよい。量子化変換係数は、最初に2次元アレイに構成され、変換係数の1次元ベクトルを生成するためにスキャンされてよく、更に多くの圧縮を達成するためにエントロピーコーディングが適用されてよい。
画像及びビデオ圧縮は、急速な成長を経験しており、種々のコーディング規格をもたらしている。そのようなビデオコーディング規格は、ITU-TH.261、国際標準化機構/国際電気標準会議(International Organization for Standardization/International Electrotechnical Commission (ISO/IEC)、MPEG-1 Part2, ITU-TH.262又はISO/IEC MPEG-2 Part2, ITU-TH.263, ISO/IEC MPEG-4 Part2, ITU-T H.264又はISO/IEC MPEG-4 Part 10としても知られているAdvanced Video Coding (AVC)、ITU-T H.265又はMPEG-H Part2としても知られているHigh Efficiency Video Coding (HEVC)、を含む。AVCは、スケーラブル映像コーディング(Scalable Video Coding (SVC))、多視点映像コーディング(Multiview Video Coding (MVC))、及び多視点映像コーディング及び奥行き(Multiview Video Coding plus Depth (MVC+D))、並びに3次元AVC(3D-AVC)のような拡張を含む。HEVCは、スケーラブルHEVC(Scalable HEVC (SHVC))、多視点HEVC(Multiview HEVC (MV-HEVC))、及び3D HEVC(3D-HEVC)のような拡張を含む。
ITU-T及びISO/IECの共同ビデオ専門家チーム(joint video experts team (JVET))Versatile Video Coding (VVC)と命名される新しいコーディング規格もある。VVC規格は幾つかのワーキングドラフトを有するが、特にVVCの1つのワーキングドラフト(Working Draft (WD))、つまりB. Bross, J. Chen,及びS. Liu, 「Versatile Video Coding (Draft5)」、JVET-N1001-v3, 13th JVET Meeting, March 27, 2019(VVC Draft5)がここで参照される。
ビデオコーディングにおけるスケーラビリティは、マルチレイヤーコーディング技術を用いることにより、サポートされる。マルチレイヤービットストリームは、基本レイヤー(base layer (BL))及び1つ以上の拡張レイヤー(enhancement layer (EL))を含む。スケーラビリティの例は、空間スケーラビリティ、品質/信号対雑音(SNR)スケーラビリティ、マルチビュースケーラビリティなどを含む。マルチレイヤーコーディング技術が使用される場合、ピクチャー又はその一部は、(1)参照ピクチャーを使用せずに、すなわち、イントラ予測を使用することによって、(2)同じレイヤー内にある参照ピクチャーを参照することによって、すなわち、インター予測を使用することによって、又は、(3)他のレイヤーにある参照ピクチャーを参照することによって、すなわち、レイヤー間予測を使用することによって、コーディングされ得る。現在ピクチャーのレイヤー間予測に使用される参照ピクチャーは、レイヤー間参照ピクチャー(inter-layer reference picture (ILRP))と呼ばれる。
図5は、例えばブロック圧縮ステップ105、ブロック復号ステップ113、動き推定コンポーネント221、動き補償コンポーネント219、動き補償コンポーネント321、及び/又は動き補償コンポーネント421においてMVを決定するために実行されるような、レイヤーベースの予測500の一例を示す概略図である。レイヤーベースの予測500は、一方向のインター予測及び/又は双方向のインター予測と互換性があるが、異なるレイヤーのピクチャー間でも実行される。
レイヤーベースの予測500は、異なるレイヤーにおいて、ピクチャー511、512、513、及び514とピクチャー515、516、517、及び518との間に適用される。図示の例では、ピクチャー511、512、513、及び514はレイヤーN+1 532の一部であり、ピクチャー515、516、517、及び518はレイヤーN531の一部である。レイヤーN 531及び/又はレイヤーN+1 532のようなレイヤーは、類似のサイズ、品質、解像度、信号対雑音比、能力などのような、類似の値の特性にすべて関連するピクチャーのグループである。従って、レイヤーN+1 532内のピクチャー511、512、513、及び514は、この例のレイヤーN 531内のピクチャー515、516、517、及び518よりも大きなピクチャーサイズ(例えば、より大きな高さ及び幅、したがってより多くのサンプル)を有する。しかしながら、このようなピクチャーは、他の特性によってレイヤーN+1 532とレイヤーN 531との間で分離することができる。2つのレイヤー、レイヤーN+1 532及びレイヤーN 531のみが示されているが、ピクチャーのセットは、関連する特性に基づいて任意の数のレイヤーに分離することができる。レイヤーN+1 532及びレイヤーN 531は、レイヤーIDによって示されてもよい。レイヤーIDは、ピクチャーに関連付けられたデータのアイテムであり、ピクチャーが示されたレイヤーの一部であることを示す。したがって、各ピクチャー511~518は、対応するレイヤーIDと関連付けられて、どのレイヤーN+1 532又はレイヤーN 531が対応する図を含むかを示すことができる。
異なるレイヤー531~532内のピクチャー511~518は、代替として表示されるように構成される。このように、異なるレイヤー531-532内のピクチャー511~518は、同じ時間識別子(ID)を共有することができ、同じAU内に含まれることができる。本明細書で使用される場合、AUは、DPBからの出力のための同じ表示時間に関連する1つ以上のコーディングピクチャーの集合である。例えば、より小さなピクチャーが望まれる場合には、デコーダは、現在の表示時間でピクチャー515を復号及び表示し、より大きなピクチャーが望まれる場合には、デコーダは、現在の表示時間でピクチャー511を復号及び表示し得る。このように、上位レイヤーN+1 532におけるピクチャー511~514は、(ピクチャーサイズの差にもかかわらず)下位レイヤーN 531における対応するピクチャー515~518と実質的に同じ画像データを含む。具体的には、ピクチャー511は、ピクチャー515と実質的に同じ画像データを含み、ピクチャー512は、ピクチャー516と実質的に同じ画像データを含む、などである。
ピクチャー511~518は、同じレイヤーN 531又はN+1 532内の他のピクチャー511~518を参照することによってコーディングすることができる。同じレイヤー内の別のピクチャーを参照してピクチャーを符号化すると、互換性のある一方向性のインター予測及び/又は双方向性のインター予測であるインター予測523が得られる。インター予測523は、実線矢印で示される。例えば、ピクチャー513は、レイヤーN+1532内のピクチャー511、512、及び/又は514のうちの1つ又は2つを参照として使用するインター予測523を採用することによってコーディングされてもよく、1つのピクチャーが、一方向のインター予測のために参照され、及び/又は、2つのピクチャーが、双方向のインター予測のために参照される。更に、ピクチャー517は、レイヤーN531内のピクチャー515、516、及び/又は518のうちの1つ又は2つを参照として使用するインター予測523を採用することによってコーディングされてもよく、1つのピクチャーが、一方向のインター予測のために参照され、及び/又は、2つのピクチャーが、双方向のインター予測のために参照される。ピクチャーが、インター予測523を実行するときに、同じレイヤー内の別のピクチャーのための参照として使用される場合、ピクチャーは、参照ピクチャーと呼ばれ得る。例えば、ピクチャー512は、インター予測523に従ってピクチャー513をコーディングするために使用される参照ピクチャーであってもよい。インター予測523は、マルチレイヤーコンテキストにおいてイントラレイヤー予測とも呼ばれ得る。このように、インター予測523は、参照により、現在ピクチャーのサンプルを、現在ピクチャーと異なる参照ピクチャー内の示されたサンプルにコーディングするメカニズムである。ここで、参照ピクチャーと現在ピクチャーは同じレイヤーにある。
ピクチャー511~518は、異なるレイヤー内の他のピクチャー511~518を参照することによってコーディングすることもできる。この処理は、インターレイヤー予測521として知られており、破線の矢印で示されている。インターレイヤー予測521は、現在ピクチャーと参照ピクチャーが異なるレイヤーにあり、したがって異なるレイヤーIDを有する場合に、参照ピクチャー内の示されたサンプルを参照することによって、現在のピクチャーのサンプルをコーディングするメカニズムである。例えば、下位レイヤーN 531内のピクチャーを参照ピクチャーとして使用して、対応するピクチャーを上位レイヤーN+1 532にコーディングすることができる。特定の例として、ピクチャー511は、インターレイヤー予測521に従って、ピクチャー515を参照することによってコーディングできる。このような場合、ピクチャー515は、インターレイヤー参照ピクチャーとして使用される。インターレイヤー参照ピクチャーは、インターレイヤー予測521に使用される参照ピクチャーである。ほとんどの場合、インターレイヤー予測521は、ピクチャー511のような現在ピクチャーが、同じAUに含まれ、ピクチャー515のような下位レイヤーにあるインターレイヤー参照ピクチャーのみを使用することができるように制約される。複数のレイヤー(例えば、2つ以上)が利用可能である場合、インターレイヤー予測521は、現在ピクチャーよりも低いレベルで、複数のインターレイヤー参照ピクチャーに基づいて、現在ピクチャーを符号化/復号することができる。
ビデオエンコーダは、レイヤーベースの予測500を使用して、インター予測523及びインターレイヤー予測521の多くの異なる組み合わせ及び/又は順列を介して、ピクチャー511~518を符号化することができる。例えば、ピクチャー515は、イントラ予測に従ってコーディングされてもよい。次いで、ピクチャー515を参照ピクチャーとして使用することによって、ピクチャー516~518をインター予測523に従ってコーディングすることができる。さらに、ピクチャー511は、インターレイヤー参照ピクチャーとしてピクチャー515を使用することによって、インターレイヤー予測521に従ってコーディングされてもよい。次いで、ピクチャー511を参照ピクチャーとして使用することによって、ピクチャー512~514をインター予測523に従ってコーディングすることができる。このように、参照ピクチャーは、異なるコーディングメカニズムに対して単一レイヤー参照ピクチャー及びインターレイヤー参照ピクチャーの両方として機能することができる。下位レイヤーN 531ピクチャーに基づいて上位レイヤーN+1 532ピクチャーをコーディングすることによって、上位レイヤーN+1 532は、インター予測523及びインターレイヤー予測521よりもはるかに低いコーディング効率を有するイントラ予測を使用することを回避することができる。従って、イントラ予測の劣ったコーディング効率は、最小/最低品質のピクチャーに制限され得、従って、最小量のビデオデータをコーディングすることに制限され得る。参照ピクチャー及び/又はインターレイヤー参照ピクチャーとして使用されるピクチャーは、参照ピクチャーリスト構造に含まれる参照ピクチャーリストのエントリの中で示すことができる。
図5の各AU506は、幾つかのピクチャーを含むことができる。例えば、1つのAU506は、ピクチャー511及び515を含むことができる。別のAU506は、ピクチャー512及び516を含むことができる。実際、各AU506は、(例えば、ユーザーに表示するために)復号ピクチャーバッファ(decoded picture buffer (DPB))から出力するために、同じ表示時間(例えば、同じ時間ID)に関連付けられた1つ以上のコーディングピクチャーのセットである。各AUD508は、AU(例えば、AU508)の開始又はAU間の境界を示すために使用される指示子又はデータ構造である。
以前のH.26xビデオコーディングファミリーは、単一レイヤーコーディングのためのプロファイルとは別のプロファイルにおけるスケーラビリティのサポートを提供してきた。スケーラブルビデオコーディング(Scalable video coding (SVC))は、空間的、時間的及び品質的スケーラビリティのサポートを提供するAVC/H.264のスケーラブルな拡張である。SVCでは、ELピクチャー内の各マクロブロック(MB)の中でフラグがシグナリングされ、下位レイヤーからの同一位置ブロックを使用してEL MBが予測されるかどうかが示される。同一位置ブロックからの予測は、テクスチャ、動きベクトル、及び/又はコーディングモードを含んでもよい。SVCの実装は、未修正のH.264/AVC実装を設計に直接再利用することはできない。SVC ELマクロブロックのシンタックス及び復号処理は、H.264/AVCのシンタックス及び復号処理とは異なる。
スケーラブルHEVC(Scalable HEVC (SHVC))は、空間的及び品質的スケーラビリティのサポートを提供するHEVC/H.265規格の拡張であり、マルチビューHEVC(multiview HEVC (MV-HEVC))は、マルチビュースケーラビリティのサポートを提供するHEVC/H.265の拡張であり、3DHEVC(3D-HEVC)は、MV-HEVCよりも高度で効率的な3次元(3D)ビデオコーディングのサポートを提供するHEVC/H.264の拡張である。時間的スケーラビリティは単一レイヤーHEVCコーデックの不可欠な部分として含まれることに注意されたい。HEVCのマルチレイヤー拡張の設計は、インターレイヤー予測のために使用される復号画像が同じアクセスユニット(AU)のみから来て、長期参照ピクチャー(long-term reference picture (LTRP))として扱われ、現在レイヤーの他の時間参照ピクチャーと共に参照ピクチャーリストの中で参照インデックスを割り当てられるという考えを利用する。インターレイヤー予測(Inter-layer prediction (ILP))は、参照ピクチャーリスト内のインターレイヤー参照ピクチャーを参照するために参照インデックスの値を設定することにより、予測ユニット(prediction unit (PU))レベルで達成される。
注目すべきことに、参照ピクチャーの再サンプリング及び空間スケーラビリティの特徴の両方は、参照ピクチャー又はその一部の再サンプリングを必要とする。参照ピクチャー再サンプリング(Reference picture resampling (RPR))は、ピクチャーレベル又はコーディングブロックレベルのいずれかで実現することができる。しかしながら、RPRが符号化特徴と呼ばれる場合、それは単一レイヤーコーディングのための特徴である。たとえそうであっても、単一レイヤーコーディングのRPR特徴及びマルチレイヤーコーディングの空間スケーラビリティ特徴の両方に対して同じ再サンプリングフィルタを使用することは、コーデック設計の観点から可能であるか、又は望ましい。
図6は、例えばブロック圧縮ステップ105、ブロック復号ステップ113、動き推定コンポーネント221、動き補償コンポーネント219、動き補償コンポーネント321、及び/又は動き補償コンポーネント421においてMVを決定するために実行されるような、出力レイヤーセット(output layer set (OLS))を利用するレイヤーベースの予測600の例を示す。レイヤーベースの予測500は、一方向のインター予測及び/又は双方向のインター予測と互換性があるが、異なるレイヤーのピクチャー間でも実行される。図6のレイヤーベースの予測は、図5のものと類似する。従って、簡単のために、レイヤーベースの予測の完全な説明は繰り返されない。
図6のコーディングビデオシーケンス(coded video sequence (CVS))690の中のレイヤーの幾つかは、OLSに含まれる。OLSは、1つ以上のレイヤーが出力レイヤーとして指定されるレイヤーのセットである。出力レイヤーは、出力されるOLSのレイヤーである。図6は、3つの異なるOLS、つまりOLS1、OLS2、OLS3を示す。示されるように、OLS1は、レイヤーN631及びレイヤーN+1 632を含む。OLS2は、レイヤーN631、レイヤーN+1 632、レイヤーN+2 633、及びレイヤーN+1 634を含む。OLS3は、レイヤーN631、レイヤーN+1 632、レイヤーN+2 633を含む。3つのOLSが示されているが、実際の適用では異なる数のOLSが使用されてよい。
異なるOLSの各々は、任意の数のレイヤーを含んでよい。異なるOLSは、様々なコーディング能力を有する種々の異なる装置のコーディング能力に対応しようとして生成される。例えば、OLS1は、2つのレイヤーのみを含み、比較的限られたコーディング能力を有する携帯電話機に対応するために生成されてよい。他方で、OLS2は、4つのレイヤーを含み、携帯電話機より多くのレイヤーを復号することのできる大画面テレビに対応するために生成されてよい。OLS3は、3つのレイヤーを含み、携帯電話機より多くのレイヤーを復号できるが、大画面テレビのように最も多くのレイヤーを復号できない、パーソナルコンピュータ、ラップトップコンピュータ、又はタブレットコンピュータに対応するために生成されてよい。
図6のレイヤーは、互いに全て独立であることができる。つまり、各レイヤーは、インターレイヤー予測(inter-layer prediction (ILP))を使用せずに、コーディングできる。この場合、レイヤーは、同報レイヤーと呼ばれる。図6のレイヤーのうちの1つ以上は、ILPを使用してコーディングされてもよい。レイヤーが同報レイヤーかどうか、又はレイヤーのうちの幾つかがILPを使用してコーディングされるかどうかは、ビデオパラメータセット(video parameter set (VPS))内のフラグによりシグナリングされる。これは、以下により完全に議論される。幾つかのレイヤーがILPを使用するとき、レイヤー間のレイヤー依存関係も、VPS内でシグナリングされる。
実施形態では、レイヤーが同報レイヤーであるとき、1つのみのレイヤーが復号のために選択され、出力される。実施形態では、幾つかのレイヤーがILPを使用するとき、全部のレイヤー(例えば、ビットストリーム全体)は、復号されるよう指定され、レイヤーのうちの特定のレイヤーは、出力レイヤーとして指定される。1つ以上の出力レイヤーは、例えば、1)最上位レイヤーのみ、2)全部のレイヤー、又は3)最上位レイヤーと指示されたより下位のレイヤーのセット、であってよい。例えば、最上位レイヤーと指示されたより下位のレイヤーのセットが、VPS内のフラグにより出力のために指定されると、OLS2からのレイヤーN+3 634(これは最上位レイヤーである)、及びレイヤーN631及びN+1 632(これらはより下位のレイヤーである)が出力される。
更に図6を参照すると、幾つかのレイヤーは、OLSのいずれにも含まれない。例えば、レイヤーN+4 635は、OLS1、OLS2、OLS3のいずれにも含まれない。そのようなレイヤーは、未使用レイヤーと呼ばれる。残念ながら、SHVC及びMV-HEVCは、このような未使用レイヤーがマルチレイヤービデオビットストリームに含まれることを許可する。これは、コーディングリソースに不必要に負担となり、コーディング効率を低下させる。
マルチレイヤービデオビットストリームの中の未使用レイヤーを禁止する技術が本願明細書に開示される。つまり、少なくとも1つの出力レイヤーセット(output layer set (OLS))内で使用されない任意のレイヤーは、マルチレイヤービットストリームに含まれることを制約される。これは、コーディング処理において無関係な情報を有することを回避し、コーディング効率を向上する。従って、ビデオコーディングにおけるコーダ/デコーダ(別名:「コーデック」)は、現在のコーデックに対して改良される。現実問題として、改良されたビデオコーディング処理は、ビデオが送信され、受信され、及び/又は閲覧されるとき、ユーザーに良好なユーザー経験を提供する。
図7は、ビデオビットストリーム700の実施形態を示す。本明細書で使用する場合、ビデオビットストリーム700は、コーディングビデオビットストリーム、ビットストリーム、又はそれらの変形を表すこともできる。図7に示すように、ビットストリーム700は、少なくとも1つピクチャーユニット(picture unit (PU))701を含む。3つのPU701が図7に示されるが、実際の適用では、異なる数のPU701がビットストリーム700内に存在してもよい。各PU701は、指定された分類ルールに従い互いに関連付けられた、復号順で連続する、正確に1つのコーディングピクチャー(例えば、ピクチャー714)を含むNALユニットのセットである。
実施形態では、各PU701は、復号能力情報(decoding capability information (DCI))702、ビデオパラメータセット(video parameter set (VPS))704、シーケンスパラメータセット(sequence parameter set (SPS))706、ピクチャーパラメータセット(picture parameter set (PPS))708、ピクチャーヘッダー(picture header (PH))712、及びピクチャー714、のうちの1つ以上を含む。DCI702、VPS704、SPS706、及びPPS708の各々は、総称して、パラメータセットと呼ばれてよい。実施形態では、図7に示されていない他のパラメータセット、例えば、適応パラメータセット(adaption parameter set (APS))がビットストリーム700に含まれてもよく、これは、スライスヘッダーに見られる0個以上のシンタックス要素によって決定される0個以上のスライスに適用されるシンタックス要素を含むシンタックス構造である。
DCI702は、復号パラメータセット(decoding parameter set (DPS))又はデコーダパラメータセットとも呼ばれてよく、ビットストリーム全体に適用されるシンタックス要素を含むシンタックス構造である。DCI702は、ビデオビットストリーム(例えば、ビットストリーム700)の寿命に対して一定のままであるパラメータを含み、これは、セッションの寿命に変換することができる。DCI702は、たとえビデオシーケンスのスプライシングがセッション内で起こったとしても、決して超えられないことが保証される最大複雑度の相互運用性ポイントを決定するために、プロファイル、レベル、及びサブプロファイル情報を含むことができる。それは、さらに任意で制約フラグを含み、これは、ビデオビットストリームが、それらのフラグの値によって示されるように、特定の特徴の使用の制約であることを示す。これにより、ビットストリームは、特にデコーダ実装におけるリソース割り当てを可能にする、特定のツールを使用しないものとしてラベル付けされることができる。全てのパラメータセットと同様に、DCI702は最初に参照されたときに存在し、ビデオシーケンスの最初のピクチャーによって参照され、ビットストリームの最初のNALユニット間で送信されなければならないことを意味する。複数のDCI702がビットストリーム内に存在できるが、その中のシンタックス要素の値は、参照されるときに矛盾し得ない。
VPS704は、拡張レイヤーの参照ピクチャーセット構成のための復号依存性又は情報を含む。VPS704は、どのタイプのオペレーションポイントが提供されるか、オペレーションポイントのプロファイル、ティア、及びレベル、ならびにセッション交渉及びコンテンツ選択などの基礎として使用され得るビットストリームの他の幾つかの高レベル特性を含む、スケーラブルなシーケンスの全体的な視点又はビューを提供する。
実施形態では、レイヤーのうちの幾つかがILPを使用することが示されるとき、VPS704は、VPSにより指定されるOLSの合計数がレイヤーの数に等しいことを示し、i番目のOLSが両端を含む0~iのレイヤーインデックスを有するレイヤーを含むことを示し、各OLSについて、OLS内の最上位レイヤーのみが出力されることを示す。
実施形態では、VPS704は、CLVS及び/又はビデオビットストリーム内のOLSに対応するシンタックス及びセマンティクスを含む。VPS704に対応する以下のシンタックス及びセマンティクスは、本願明細書に開示される実施形態を実装するために使用されてもよい。
VPS704のためのシンタックスは以下の通りであってよい。
Figure 2022549836000002
Figure 2022549836000003
VPS704のためのセマンティクスは以下の通りであってよい。実施形態では、VPS704は、以下に記されるフラグ及びパラメータのうちの1つ以上を含む。
VPS未処理バイトシーケンスペイロード(raw byte sequence payload (RBSP))は、それが参照される前に、復号処理のために利用可能であり、外部手段を通じて提供される若しくは0に等しいTemporalIdを有する少なくとも1つのアクセスユニットに含まれるべきであり、VPS RBSPを含むVPS NALユニットは、vps_layer_id[0]に等しいnuh_layer_idを有するべきである。
CVS内で特定の値のvps_video_parameter_set_idを有する全部のVPS NALユニットは同じコンテンツを有するべきである。vps_video_parameter_set_idは、他のシンタックス要素による参照のためにVPSの識別子を提供する。vps_max_layers_minus1に1を加えたものは、VPSを参照する各CVS内の最大許容レイヤー数を指定する。vps_max_sub_layers_minus1に1を加えたものは、VPSを参照する各CVS内に存在し得る時間的サブレイヤーの最大数を指定する。vps_max_sub_layers_minus1の値は、両端を含む0~6の範囲であるべきである。
vps_all_independent_layers_flagが1に等しいことは、CVS内の全部のレイヤーが、インターレイヤー予測を使用しないで独立にコーディングされることを指定する。vps_all_independent_layers_flagが0に等しいことは、CVS内のレイヤーのうちの1つ以上がインターレイヤー予測を使用してよいことを指定する。存在しないとき、vps_all_independent_layers_flagの値は1に等しいと推定される。vps_all_independent_layers_flagが1に等しいとき、vps_independent_layer_flag[i]の値は1に等しいと推定される。vps_all_independent_layers_flagが0に等しいとき、vps_independent_layer_flag[0]の値は1に等しいと推定される。
vps_layer_id[i]は、i番目のレイヤーのnuh_layer_id値を指定する。m及びnの任意の2つの負ではない整数値について、mがnより小さいとき、vps_layer_id[m]の値はvps_layer_id[n]より小さいべきである。vps_independent_layer_flag[i]が1に等しいことは、インデックスiを有するレイヤーがインターレイヤー予測を使用しないことを指定する。vps_independent_layer_flag[i]が0に等しいことは、インデックスiを有するレイヤーがインターレイヤー予測を使用してよいこと、及びvps_layer_dependency_flag[i]がVPS内に存在することを指定する。存在しないとき、vps_independent_layer_flag[i]の値は1に等しいと推定される。
vps_direct_dependency_flag[i][j]が0に等しいことは、インデックスjを有するレイヤーが、インデックスiを有するレイヤーの直接参照レイヤーではないことを指定する。vps_direct_dependency_flag[i][j]が1に等しいことは、インデックスjを有するレイヤーが、インデックスiを有するレイヤーの直接参照レイヤーであることを指定する。両端を含む0~vps_max_layers_minus1の範囲内のi及びjについてvps_direct_dependency_flag[i][j]が存在しないとき、それは0に等しいと推定される。
i番目のレイヤーのj番目の直接依存レイヤーを指定する変数DirectDependentLayerIdx[i][j]は、以下のように導出される。
Figure 2022549836000004
vps_layer_id[i]に等しいnuh_layer_idを有するレイヤーのレイヤーインデックスを指定する変数GeneralLayerIdx[i]は、以下のように導出される。
Figure 2022549836000005
each_layer_is_an_ols_flagが1に等しいことは、各出力レイヤーセットが1つのレイヤーのみを含み、ビットストリーム内の各レイヤー自体が、含まれる単一のレイヤーが出力レイヤーのみである出力レイヤーセットであることを指定する。each_layer_is_an_ols_flagが0に等しいことは、出力レイヤーが1つより多くのレイヤーを含んでよい。vps_max_layers_minus1が0に等しい場合、each_layer_is_an_ols_flagの値は1に等しいと推定される。その他の場合、vps_all_independent_layers_flagが0に等しいとき、each_layer_is_an_ols_flagの値は0に等しいと推定される。
ols_mode_idcが0に等しいことは、VPSにより指定されるOLSの合計数がvps_max_layers_minus1+1に等しく、i番目のOLSは両端を含む0~iのレイヤーインデックスを有するレイヤーを含み、各OLSについて、OLS内の最上位レイヤーのみが出力されることを指定する。ols_mode_idcが1に等しいことは、VPSにより指定されるOLSの合計数がvps_max_layers_minus1+1に等しく、i番目のOLSは両端を含む0~iのレイヤーインデックスを有するレイヤーを含み、各OLSについて、OLS内の全部のレイヤーが出力されることを指定する。ols_mode_idcが2に等しいことは、VPSにより指定されるOLSの合計数が明示的にシグナリングされ、各OLSについて、最上位レイヤー及び明示的にシグナリングされるOLS内のより下位のレイヤーのセットが出力されることを指定する。ols_mode_idcの値は、両端を含む0~2の範囲であるべきである。値3のols_mode_idcは、ITU-T/ISO/IECによる将来の使用のために予約されている。vps_all_independent_layers_flagが1に等しく、each_layer_is_an_ols_flagが0に等しいとき、ols_mode_idcの値は2に等しいと推定される。
num_output_layer_sets_minus1に1を加えたものは、ols_mode_idcが2に等しいとき、VPSにより指定されるOLSの合計数を指定する。
VPSにより指定されるOLSの合計数を指定する変数TotalNumOlssは、以下のように導出される。
Figure 2022549836000006
layer_included_flag[i][j]は、ols_mode_idcが2に等しいとき、j番目のレイヤー(つまり、vps_layer_id[j]に等しいnuh_layer_idを有するレイヤー)がi番目のOLSに含まれるかどうかを指定する。layer_included_flag[i][j]が1に等しいことは、j番目のレイヤーがi番目のOLSに含まれることを指定する。layer_included_flag[i][j]が0に等しいことは、j番目のレイヤーがi番目のOLSに含まれないことを指定する。
i番目のOLS内のレイヤーの数を指定する変数NumLayersInOls[i]、及びi番目のOLS内のj番目のレイヤーのnuh_layer_id値を指定する変数LayerIdInOls[i][j]は、以下のように導出される。
Figure 2022549836000007
LayerIdInOls[i][j]に等しいnuh_layer_idを有するレイヤーのOLSレイヤーインデックスを指定する変数OlsLayerIdx[i][j]は、以下のように導出される。
Figure 2022549836000008
各OLS内の最下位レイヤーは独立レイヤーであるべきである。言い換えると、両端を含む0~TotalNumOlss-1の範囲のiの各々について、vps_independent_layer_flag[GeneralLayerIdx[LayerIdInOls[i][0]]]の値は1に等しいべきである。
各レイヤーは、VPSにより指定された少なくとも1つのOLSに含まれるべきである。つまり、両端を含む0~vps_max_layers_minus1の範囲のkについてvps_layer_id[k]のうちの1つに等しい特定の値のnuh_layer_idnuhLayerIdを有する各レイヤーについて、値i及びjの少なくとも1つのペアが存在してよい。ここで、iは両端を含む0~TotalNumOlss-1の範囲にあり、jは端を含むNumLayersInOls[i]-1の範囲にあり、その結果、LayerIdInOls[i][j]の値はnuhLayerIdに等しい。
OLS内の任意のレイヤーは、OLSの出力レイヤー、又はOLSの出力レイヤーの(直接又は間接)参照レイヤーであるべきである。
vps_output_layer_flag[i][j]は、ols_mode_idcが2に等しいとき、i番目のOLS内のj番目のレイヤーが出力されるかどうかを指定する。vps_output_layer_flag[i]が1に等しいことは、i番目のOLS内のj番目のレイヤーが出力されることを指定する。vps_output_layer_flag[i]が0に等しいことは、i番目のOLS内のj番目のレイヤーが出力されないことを指定する。vps_all_independent_layers_flagが1に等しく、each_layer_is_an_ols_flagが0に等しいとき、vps_output_layer_flag[i]の値は1に等しいと推定される。
変数OutputLayerFlag[i][j]について、値1はi番目のOLS内のj番目のレイヤーが出力されることを指定し、値0はi番目のOLS内のj番目のレイヤーが出力されないことを指定し、以下のように導出される。
Figure 2022549836000009
注:0番目のOLSは、最下位レイヤー(つまり、vps_layer_id[0]に等しいnuh_layer_idを有するレイヤー)のみを含み、0番目のOLSについて、含まれるレイヤーのみが出力される。
vps_constraint_info_present_flagが1に等しいことは、general_constraint_info()シンタックス構造がVPS内に存在することを指定する。
vps_constraint_info_present_flagが0に等しいことは、general_constraint_info()シンタックス構造がVPS内に存在しないことを指定する。
vps_reserved_zero_7bitsは、このVVCドラフトのこのバージョンに準拠するビットストリームでは0に等しいべきである。vps_reserved_zero_7bitsの他の値は、ITU-T/ISO/IECによる将来の使用のために予約されている。実施形態では、デコーダはvps_reserved_zero_7bitsの値を無視すべきである。
general_hrd_params_present_flagが1に等しいことは、シンタックス要素num_units_in_tick及びtime_scale及びシンタックス構造general_hrd_parameters()がSPS RBSPシンタックス構造の中に存在することを指定する。general_hrd_params_present_flagが0に等しいことは、シンタックス要素num_units_in_tick及びtime_scale及びシンタックス構造general_hrd_parameters()がSPS RBSPシンタックス構造の中に存在しないことを指定する。
num_units_in_tickは、クロックチックカウンタの1インクリメント(クロックチックと呼ばれる)に対応する周波数time_scale Hzで動作するクロックの時間単位数である。num_units_in_tickは、0より大きいべきである。クロックチックは、秒単位であり、num_units_in_tickをtime_scaleで除した商に等しい。例えば、ビデオ信号のピクチャーレートが25Hzであるとき、time_scaleは27,000,000に等しくてよく、num_units_in_tickは1,080,000に等しくてよく、従って、クロックチックは0.04秒に等しくてよい。
time_scaleは、1秒のうちに経過する時間単位数である。例えば、27MHzクロックを用いて時間を計測する時間座標系は、27,000,000のtime_scaleを有する。time_scaleの値は0より大きいべきである。
vps_extension_flagが0に等しいことは、vps_extension_data_flagがVPS RBSPシンタックス構造内に存在しないことを指定する。vps_extension_flagが1に等しいことは、vps_extension_data_flagシンタックス要素がVPS RBSPシンタックス構造内に存在することを指定する。
vps_extension_data_flagは、任意の値を有してよい。その存在及び値は、この仕様のこのバージョン内で指定されるプロファイルへのデコーダ準拠性に影響しない。この仕様のこのバージョンに準拠するデコーダは、全てのvps_extension_data_flagシンタックス要素を無視するべきである。
SPS706は、ピクチャーのシーケンス(sequence of pictures (SOP))の中の全てのピクチャーに共通であるデータを含む。SPS706は、各ピクチャーヘッダーの中で見付かったシンタックス要素により参照されるPPS内で見付かったシンタックス要素の内容により決定されるような、0個以上のCLVS全体に適用するシンタックス要素を含むシンタックス構造である。対照的に、PPS708は、ピクチャー全体に共通するデータを含む。PPS708は、各ピクチャーヘッダー(例えば、PH712)の中で見付かったシンタックス要素により決定されるような、0個以上のコーディングピクチャー全体に適用するシンタックス要素を含むシンタックス構造である。
DCI702、VPS704、SPS706、及びPPS708は、異なるタイプのネットワーク抽象化レイヤー(Network Abstraction Layer (NAL))ユニットに含まれる。NALユニットは、従うべきデータのタイプ(例えば、コーディングビデオデータ)の指示を含むシンタックス構造である。NALユニットは、ビデオコーディングレイヤー(video coding layer (VCL))と非VCL NALユニットに分類される。VCL NALユニットは、ビデオピクチャー内のサンプルの値を表すデータを含み、非VCL NALユニットは、パラメータセット(多数のVCL NALユニットに適用できる重要なデータ)及び補足拡張情報(タイミング情報及びビデオピクチャー内のサンプルの値を復号するためには必要ではないが、復号ビデオ信号の有用性を高める可能性があるその他の補足データ)のような、任意の関連する追加情報を含む。
実施形態では、DCI702は、DCI NALユニット又はDPS NALユニットとして指定された非VCL NALユニットに含まれる。つまり、DCI NALユニットはDCI NALユニットタイプ(NAL unit type (NUT))を有し、DPS NALユニットはDPS NUTを有する。実施形態では、VPS704は、DPS NALユニットとして指定された非VCL NALユニットに含まれる。したがって、VPS NALユニットはVPS NUTを有する。実施形態では、SPS706は、SPS NALユニットとして指定された非VCL NALユニットである。したがって、SPS NALユニットはSPS NUTを有する。実施形態では、PPS708は、PPS NALユニットとして指定された非VCL NALユニットに含まれる。したがって、PPS NALユニットはPPS NUTを有する。
PH712は、コーディングピクチャー(例えば、ピクチャー714)の全てのスライス(例えば、スライス718)に適用されるシンタックス要素を含むシンタックス構造である。実施形態では、PH712は、PH NALユニットとして指定される新しいタイプの非VCL NALユニットである。したがって、PH NALユニットはPH NUT(例えば、PH_NUT)を有する。実施形態では、各PU701には、1つの且つ1つのみのPH712が含まれる。すなわち、PU701は、単一又は孤立したPH712を含む。実施形態では、正確に1つのPHNALユニットが、ビットストリーム700内の各ピクチャー701に対して存在する。
実施形態では、PH712に関連するPH NALユニットは、時間ID及びレイヤーIDを有する。時間ID識別子は、ビットストリーム(例えば、ビットストリーム701)内の他のPH NALユニットに対する、時間的なPH NALユニットの位置を示す。レイヤーIDは、PH NALユニットを含むレイヤー(例えば、レイヤー531又はレイヤー532)を示す。実施形態では、時間IDは、POCに類似しているが、POCとは異なる。POCは、各ピクチャーを順番に一意に識別する。単一レイヤービットストリームでは、時間IDとPOCは同じになる。マルチレイヤービットストリーム(例えば、図5参照)において、同じAU内のピクチャーは、異なるPOCを有するが、同じ時間IDを有する。
実施形態では、PH NALユニットは、関連するピクチャー714の第1スライス718を含むVCL NALユニットより先行する。これは、PH712の中でシグナリングされ、スライスヘッダー720から参照されるピクチャーヘッダーIDを有する必要なく、PH712と、PH712に関連付けられたピクチャー714のスライス718との間の関連を確立する。従って、2つのPH712の間の全てのVCLNALユニットは、同じピクチャー714に属し、ピクチャー714は、2つのPH712の間の第1PH712に関連すると推定できる。実施形態では、PH712に続く第1VCL NALユニットは、PH712に関連するピクチャー714の第1スライス718を含む。
実施形態では、PH NALユニットは、ピクチャーレベルパラメータセット(例えば、PPS)、又はより高いレベルのパラメータセット、例えば、DCI(別名、DPS)、VPS、SPS、PPSなど)に従い、各々、PH NALユニットの時間ID及びレイヤーIDよりも両方とも小さい時間ID及びレイヤーIDを有する。その結果、それらのパラメータセットは、ピクチャー又はアクセスユニット内で繰り返されない。この順序により、PH712は直ちに解決することができる。つまり、ピクチャー全体に関連するパラメータを含むパラメータセットは、ビットストリーム内で、PH NALユニットの前に配置される。ピクチャーの一部のパラメータを含むものは、PH NALユニットの後に配置される。
1つの代替として、PH NALユニットは、ピクチャーレベルパラメータセット及びプレフィックス補足拡張情報(supplemental enhancement information (SEI))メッセージ、又はDCI(別名、DPS)、VPS、SPS、PPS、APS、SEIメッセージなどのより高いレベルのパラメータセットに従う。
ピクチャー714は、モノクロフォーマットのルマサンプルのアレイ、又はルマサンプルのアレイ、及び4:2:0、4:2:2、及び4:4:4カラーフォーマットのクロマサンプルの2つの対応するアレイである。実施形態では、各PU701には、1つの、及び1つのみのピクチャー714が含まれる。従って、各PU701内には、PH712が1つのみ、及びそのPH712に対応する1つのみのピクチャー714が存在する。すなわち、PU701は、単一又は孤立したピクチャー714を含む。
ピクチャー714は、フレーム又はフィールドであってよい。しかしながら、1つのCVS716では、全てのピクチャー714がフレームであるか、又は全てのピクチャー714がフィールドである。CVS716は、ビデオビットストリーム700内の各コーディングレイヤービデオシーケンス(coded layer video sequence (CLVS))のためのコーディングビデオシーケンスである。注目すべきことに、ビデオビットストリーム700が単一レイヤーを含む場合、CVS716とCLVSは同じである。(例えば、図5及び6に示されるように)ビデオビットストリーム700が複数のレイヤーを含むときのみ、CVS716とCLVSは異なる。
各ピクチャー714は、1つ以上のスライス718を含む。スライス718は、ピクチャー(例えば、ピクチャー714)のタイル内の整数個の完全タイル又は整数個の連続する完全CTU行である。各スライス718は、単一のNALユニット(例えば、VCL NALユニット)に排他的に含まれる。タイル(図示しない)は、ピクチャー(例えば、ピクチャー714)内の特定のタイル列及び特定のタイル行の中で長方形領域のCTUである。CTU(図示しない)は、ルマサンプルのCTB、3つのサンプルアレイを有するピクチャーのクロマサンプルの2個の対応するCTB、又は単色ピクチャー又は3つの別個の色平面及びサンプルをコーディングするために使用されるシンタックス構造を用いてコーディングされるピクチャーのサンプルのCTBである。CTB(図示しない)は、何らかの値のNについてサンプルのN×Nブロックであってよい。その結果、CTBへの成分の分割はパーティションである。ブロック(図示しない)は、サンプル(例えば、ピクセル)のM×N(M列×N行)アレイ、又は変換係数のM×Nアレイである。
実施形態では、各スライス718はスライスヘッダー720を含む。スライスヘッダー720は、スライス718内で表現されるタイルの中の全部のタイル又はCTU行に関連するデータ要素を含むコーディングスライス718の一部である。つまり、スライスヘッダー720は、例えば、スライスタイプ、どの参照ピクチャーが使用されるかなど、スライス718に関する情報を含む。
ピクチャー714、及びそれらのスライス718は、符号化又は復号される画像又はビデオに関連するデータを含む。従って、ピクチャー714、及びそれらのスライス718は、単に、ビットストリーム700内で運ばれるペイロード又はデータと呼ばれてもよい。
当業者は、ビットストリーム700が、実際の用途における他のパラメータ及び情報を含んでもよいことを理解するであろう。
図8は、ビデオデコーダ(例えば、ビデオデコーダ400)によって実装される復号方法800の実施形態である。方法800は、ビットストリームがビデオエンコーダ(例えば、ビデオエンコーダ300)から直接的又は間接的に受信された後に実行されてもよい。方法800は、マルチレイヤービデオビットストリームの中の未使用レイヤーを禁止することにより、復号処理を向上する。つまり、少なくとも1つの出力レイヤーセット(output layer set (OLS))内で使用されない任意のレイヤーは、マルチレイヤービットストリームに含まれることを制約される。これは、コーディング処理において無関係な情報を有することを回避し、コーディング効率を向上する。従って、ビデオコーディングにおけるコーダ/デコーダ(別名:「コーデック」)は、現在のコーデックに対して改良される。現実問題として、改良されたビデオコーディング処理は、ビデオが送信され、受信され、及び/又は閲覧されるとき、ユーザーに良好なユーザー経験を提供する。
ブロック802で、ビデオデコーダは、VPS(例えば、VPS704)及び複数のレイヤー(例えば、レイヤーN631、レイヤーN+1 632、等)を含むビデオビットストリームを受信する。実施形態では、各レイヤーは、VPSにより指定された少なくとも1つのOLS(例えば、OLS1、OLS2、等)に含まれる。つまり、特定の値のnuh_layer_idを有する各レイヤーについて、nuhLayerIdは両端を含む0~vps_max_layers_minus1の範囲のkのvps_layer_id[k]のうちの1つに等しく、i及びjの値の少なくとも1つのペアが存在するべきである。ここで、iは両端を含む0~TotalNumOlss-1の範囲であり、jは両端を含むNumLayersInOls[i]-1の範囲であり、従って、LayerIdInOls[i][j]の値はnuhLayerIdに等しい。
実施形態では、ビデオデコーダは、上述のようにVVC又は何らかの他の規格に基づき、各レイヤーがVPSにより指定された少なくとも1つのOLS(例えば、OLS1、OLS2、等)に含まれることを期待する。しかしながら、デコーダが、この条件が真ではないと決定した場合、デコーダは、エラーを検出し、エラーをシグナリングし、受信したビットストリーム(又はその部分)が再送されることを要求し、又は何らかの他の修正手段を講じて、準拠するビットストリームが受信されることを保証してよい。
nuh_layer_idはビットストリームの中でシグナリングされ、nuhLayerIdを決定するために使用される。nuh_layer_id及びnuhLayerIdの各々は、レイヤーをユニークに識別するために使用される識別子(ID)を含む。vps_layer_id[k]は、VPS704内のレイヤーIDを指定するために使用される。vps_max_layers_minus1は、OLS内の最大レイヤー数を指定するために使用される。TotalNumOlssは、CLVS及び/又はビットストリームに含まれるOLSの合計数を指定するために使用される、最後に、NumLayersInOlsはOLS内のレイヤー数を指定する。
実施形態では、デコーダに利用可能な各々の及び全てのレイヤーは、デコーダにより受信されるVPS内で指定される。つまり、デコーダにより受信されるVPSは、各レイヤーがデコーダにより受信されたOLSに含まれるかどうかに関係なく、全てのレイヤーを指定する。実施形態では、エンコーダにより生成される各々の及び全てのOLSは、デコーダにより受信されるVPS内で指定される。つまり、デコーダにより受信されるVPSは、そのOLSがデコーダにより受信されるかどうかに関係なく、全てのOLSを指定する。
実施形態では、複数のレイヤーの中の各レイヤーは、全部がレイヤー識別子(ID)の特定の値を有するビデオコーディングレイヤー(video coding layer (VCL))ネットワーク抽象化レイヤー(network abstraction layer (NAL))ユニットと、関連する非VCL NALユニットとのセットを含む。実施形態では、少なくとも1つのOLSは2つの出力レイヤーを含み、2つの出力レイヤーのうちの一方は2つの出力レイヤーのうちの他方を参照する。実施形態では、少なくとも1つのOLSは、1つ以上の出力レイヤーを含む。実施形態では、VPS内で指定された特定の値のレイヤーIDを有する複数のレイヤーの各々について、少なくとも1つのOLS内のレイヤーのうちの1つも、特定の値のレイヤーIDを有するべきである。
ブロック804で、ビデオデコーダは、複数のレイヤーのうちの1つからピクチャー(例えば、ピクチャー615)を復号する。実施形態では、ピクチャーは、少なくとも1つのOLSの出力レイヤーに含まれる。
実施形態では、方法800は、復号するステップの前に、少なくとも1つのOLSから出力レイヤーを選択するステップを更に含む。実施形態では、方法800は、出力レイヤーが選択された後に、出力レイヤーからピクチャーを選択するステップを更に含む。
ピクチャーが復号されると、ピクチャーは、電子装置(例えば、スマートフォン、タブレット、ラップトップ、パーソナルコンピュータなど)のディスプレー又はスクリーン上のユーザーに表示するための画像又はビデオシーケンスを生じる又は生成するために使用されてよい。
図9は、ビデオエンコーダ(例えば、ビデオエンコーダ300)によって実装されるビデオビットストリームを符号化する方法900の実施形態である。方法900は、(例えば、ビデオからの)ピクチャーがビデオビットストリームに符号化され、ビデオデコーダ(例えば、ビデオデコーダ400)に向けて送信されるときに実行されてもよい。方法900は、マルチレイヤービデオビットストリームの中の未使用レイヤーを禁止することにより、符号化処理を向上する。つまり、少なくとも1つの出力レイヤーセット(output layer set (OLS))の中で使用されない任意のレイヤーは、マルチレイヤービットストリームに含まれることを制約される。これは、コーディング処理において無関係な情報を有することを回避し、コーディング効率を向上する。従って、ビデオコーディングにおけるコーダ/デコーダ(別名:「コーデック」)は、現在のコーデックに対して改良される。現実問題として、改良されたビデオコーディング処理は、ビデオが送信され、受信され、及び/又は閲覧されるとき、ユーザーに良好なユーザー経験を提供する。
ブロック902で、ビデオエンコーダは、複数のレイヤー(例えば、N631、レイヤーN+1 632、等)、及び1つ以上のOLS(例えば、OLS1、OLS2、等)を指定するVPS(例えば、VPS704)を生成する。実施形態では、複数のレイヤーからの各レイヤーは、VPSにより指定されたOLSのうちの少なくとも1つに含まれる。つまり、特定の値のnuh_layer_idを有する各レイヤーについて、nuhLayerIdは、両端を含む0~vps_max_layers_minus1の範囲のkのvps_layer_id[k]のうちの1つに等しく、i及びjの値の少なくとも1つのペアが存在するべきである。ここで、iは両端を含む0~TotalNumOlss-1の範囲であり、jは両端を含むNumLayersInOls[i]-1の範囲であり、従って、LayerIdInOls[i][j]の値はnuhLayerIdに等しい。実施形態では、ビデオエンコーダは、複数のレイヤーからの各レイヤーがVPSにより指定されたOLSのうちの少なくとも1つに含まれるように制約される。つまり、ビデオエンコーダは、VPSにより指定されたOLSのうちの少なくとも1つに含まれる複数のレイヤーからのレイヤーを有することを要求される。そのような制約又は要件は、ビットストリームが、例えば、VVC又は本願明細書に示されたように変更された何らかの他の規格に準拠することを保証する。しかしながら、エンコーダは、例えば異なる規格又は同じ規格の異なるバージョンの下で動作するとき、制約されない他のモードで動作可能であってもよい。
nuh_layer_idはビットストリームのなかでシグナリングされ、nuhLayerIdを決定するために使用される。nuh_layer_id及びnuhLayerIdの各々は、レイヤーをユニークに識別するために使用される識別子(ID)を含む。vps_layer_id[k]は、VPS704内のレイヤーIDを指定するために使用される。vps_max_layers_minus1は、OLS内の最大レイヤー数を指定するために使用される。TotalNumOlssは、CLVS及び/又はビットストリームに含まれるOLSの合計数を指定するために使用される。最後に、NumLayersInOlsは、OLS内のレイヤー数を指定する。
実施形態では、1つ以上のOLSの各々は、1つ以上の出力レイヤーを含み、出力レイヤーの各々は1つ以上のピクチャーを含む。実施形態では、複数のレイヤーの中の各レイヤーは、全部がレイヤー識別子(ID)の特定の値を有するビデオコーディングレイヤー(video coding layer (VCL))ネットワーク抽象化レイヤー(network abstraction layer (NAL))ユニットと、関連する非VCL NALユニットとのセットを含む。
実施形態では、OLSのうちの1つは、2つの出力レイヤーを含み、2つの出力レイヤーのうちの一方は、2つの出力レイヤーのうちの他方を参照する。実施形態では、VPS内で指定された特定の値のレイヤーIDを有する複数のレイヤーの各々について、1つ以上のOLSの中のレイヤーのうちの1つも、特定の値のレイヤーIDを有するべきである。
実施形態では、エンコーダ内に配置される仮想参照デコーダ(hypothetical reference decoder (HRD))は、全部のレイヤー及びOLSをチェックする。HRDが本願明細書に記載されたように任意のOLS内に存在しないレイヤーを見付けると、HRDは準拠テストエラーを返す。つまり、HRD準拠テストは、未使用レイヤーが存在しないことを保証する。従って、エンコーダは、未使用レイヤー無しの要件に従い符号化するが、HRDはこの要件を強める。
ブロック904で、ビデオエンコーダは、複数のレイヤー及びVPSをビデオビットストリームに符号化する。ブロック906では、ビデオエンコーダは、ビデオデコーダに向けて通信するためにビデオビットストリームを格納する。ビデオビットストリームは、ビデオビットストリームがビデオデコーダに向かって送信されるまで、メモリに記憶されてもよい。ビデオデコーダにより受信されると、符号化ビデオビットストリームは、(例えば上述のように)電子装置(例えば、スマートフォン、タブレット、ラップトップ、パーソナルコンピュータなど)のディスプレー又はスクリーン上のユーザーに表示するための画像又はビデオシーケンスを生じる又は生成するために復号されてよい。
図10は、本開示の実施形態による、ビデオコーディング装置1000(例えば、ビデオエンコーダ300又はビデオデコーダ400)の概略図である。ビデオコーディング装置1000は、ここに説明したような開示の実施形態を実施するのに適する。ビデオ符号化装置1000は、データを受信するためのイングレスポート1010及び受信機ユニット(receiver units, Rx)1020と、データを処理するためのプロセッサ、論理ユニット、又は中央処理ユニット(central processing unit, CPU)1030と、データを送信するための送信機ユニット(transmitter units, Tx)1040及びイグレスポート1050と、データを格納するためのメモリ1060と、を含む。ビデオコーディング装置1000は、イングレスポート1010、受信機ユニット1020、送信機ユニット1040、及びイグレスポート1050に接続された、光若しくは電気信号のイグレス若しくはイングレスのための光-電気(optical-to-electrical (OE))コンポーネント及び電気-光(electrical-to-optical (EO))コンポーネントも含んでよい。
プロセッサ1030は、ハードウェア及びソフトウェアにより実装される。プロセッサ1030は、1つ以上のCPUチップ、コア(例えば、マルチコアプロセッサ)、フィールドプログラマブルゲートアレイ(field-programmable gate array(FPGA))、特定用途向け集積回路(application specific integrated circuit (ASIC))、及びデジタル信号プロセッサ(digital signal processor(DSP))として実装されてよい。プロセッサ1030は、イングレスポート1010、受信機ユニット1020、送信機ユニット1040、イグレスポート1050、及びメモリ1060と通信する。プロセッサ1030は、コーディングモジュール1070を含む。コーディングモジュール1070は、上述の開示の実施形態を実装する。例えば、コーディングモジュール1070は、種々のコーデック機能を実装し、処理し、準備し、又は提供する。コーディングモジュール1070の中に含まれるものは、従って、ビデオコーディング装置1000の機能に実質的な改良を提供し、ビデオコーディング装置1000の異なる状態への変換をもたらす。代替として、コーディングモジュール1070は、メモリ1060に格納されプロセッサ1030により実行される命令として実装される。
ビデオコーディング装置1000は、データをユーザーに及びから通信する入力及び/又は出力(input and/or output(I/O))装置1080も含んでよい。I/O装置1080は、ビデオデータを表示するのディスプレー、オーディオデータを出力するスピーカ、等のような出力装置を含んでよい。I/O装置1080は、キーボード、マウス、トラックボール、等のような入力装置、及び/又は、そのような出力装置とインターフェースする対応するインターフェースも含んでよい。
メモリ1060は、1つ以上のディスク、テープドライブ、及び固体ドライブを含み、プログラムが実行のために選択されるとき該プログラムを格納するため及びプログラムの実行中に読み出される命令及びデータを格納するためのオーバフローデータ記憶装置として使用されてよい。メモリ1060は、揮発性及び/又は不揮発性であってよく、読み出し専用メモリ(read-only memory, ROM)、ランダムアクセスメモリ(random access memory, RAM)、三値連想メモリ(ternary content-addressable memory, TCAM)、及び/又は静的ランダムアクセスメモリ(static random-access memory, SRAM)であってよい。
図11は、コーディングする手段1100の実施形態の概略図である。実施形態では、コーディングする手段1100は、ビデオコーディング装置1102(例えば、ビデオエンコーダ300又はビデオデコーダ400)内に実装される。ビデオコーディング装置1102は、受信手段1101を含む。受信手段1101は、符号化するピクチャーを受信するか、又は復号するビットストリームを受信するように構成される。ビデオコーディング装置1102は、受信手段1101に結合された送信手段1107を含む。送信手段1107は、ビットストリームをデコーダに送信するか、又は復号画像を表示手段(例えば、I/O装置1080の1つ)に送信するように構成される。
ビデオコーディング装置1102は、記憶手段1103を含む。記憶手段1103は、受信手段1101又は送信手段1107のうちの少なくとも1つに結合される。記憶意味1103は、命令を格納するよう構成される。ビデオコーディング装置1102は、受信手段1105を更に含む。処理手段1105は、記憶手段1103に結合される。処理手段1105は、本明細書に開示される方法を実行するために、記憶手段1103に格納された命令を実行するように構成される。
更に理解されるべきことに、ここに説明された例示的な方法のステップは、必ずしも説明された順に実行される必要はなく、このような方法のステップの順は、単なる例であると理解されるべきである。同様に、追加ステップがこのような方法に含まれてよく、特定のステップは、本開示の種々の実施形態に従う方法において、省略され又は結合されてよい。
幾つかの実施形態が本開示において提供されたが、開示のシステム及び方法は、本開示の精神又は範囲から逸脱することなく、多くの他の特定の形式で実施され得ることが理解されるべきである。本発明の例は、説明のためであり限定的ではないと考えられるべきであり、ここに与えられた詳細事項に限定されることを意図しない。例えば、種々の要素又はコンポーネントは、結合され、又は別のシステムに統合されてよく、或いは、特定の機能は、省略され又は実施されなくてよい。
更に、種々の実施形態において説明され示された技術、システム、サブシステム、及び方法は、本開示の範囲から逸脱することなく、他のシステム、モジュール、技術、又は方法と結合され又は統合されてよい。互いに結合され又は直接結合され又は通信するとして示され又は議論された他のアイテムは、電気的、機械的、又はその他にかかわらず、間接的に結合され又は何らかのインターフェース、装置、又は中間コンポーネントを通じて通信してよい。変更、代用、及び改造の他の例は、当業者により確認され、ここに開示した精神及び範囲から逸脱することなく行われ得る。

Claims (33)

  1. ビデオデコーダにより実施される復号の方法であって、
    前記ビデオデコーダにより、ビデオパラメータセット(VPS)と複数のレイヤーとを含むビデオビットストリームを受信するステップであって、各レイヤーは、前記VPSにより指定される少なくとも1つの出力レイヤーセット(OLS)に含まれる、ステップと、
    前記ビデオデコーダにより、前記複数のレイヤーのうちの1つからピクチャーを復号するステップと、
    を含む方法。
  2. 前記ピクチャーは、前記少なくとも1つのOLSの出力レイヤーに含まれ、各レイヤーは前記OLSの中で指定される、請求項1に記載の方法。
  3. 復号するために、前記少なくとも1つのOLSから出力レイヤーを選択するステップ、を更に含む請求項1~2のいずれかに記載の方法。
  4. 前記選択された出力レイヤーから復号するために、前記ピクチャーを選択するステップ、を更に含む請求項1~3のいずれかに記載の方法。
  5. 前記複数のレイヤーの中の各レイヤーは、全部がレイヤー識別子(ID)の特定の値を有するビデオコーディングレイヤー(VCL)ネットワーク抽象化レイヤー(NAL)ユニットと、関連する非VCL NALユニットとのセットを含む、請求項1~4のいずれかに記載の方法。
  6. 前記少なくとも1つのOLSは、2つの出力レイヤーを含み、前記2つの出力レイヤーのうちの一方は、前記2つの出力レイヤーのうちの他方を参照する、請求項1~5のいずれかに記載の方法。
  7. 前記少なくとも1つのOLSは、1つより多くの出力レイヤーを含む、請求項6に記載の方法。
  8. 前記VPS内で指定された特定の値のレイヤーIDを有する複数のレイヤーの各々について、前記少なくとも1つのOLS内の前記レイヤーのうちの1つも、前記特定の値のレイヤーIDを有するべきである、請求項1~7のいずれかに記載の方法。
  9. 電子装置のディスプレー上で復号したピクチャーを表示するステップを更に含む請求項1~8のいずれかに記載の方法。
  10. 前記ビデオデコーダにより、第2ビデオパラメータセット(VPS)及び第2の複数のレイヤーを含む第2ビデオビットストリームを受信するステップであって、少なくとも1つのレイヤーは、前記第2VPSにより指定された少なくとも1つの出力レイヤーセット(OLS)に含まれない、ステップと、
    前記受信するステップに応答して、幾つかの他の修正手段を講じて、前記第2の複数のレイヤーのうちの1つからピクチャーを復号する前に、前記第2ビデオビットストリームに対応する準拠ビットストリームが受信されることを保証する、ステップと、
    を更に含む請求項1~9のいずれかに記載の方法。
  11. ビデオエンコーダにより実施される符号化の方法であって、前記方法は、
    前記ビデオエンコーダにより、複数のレイヤーと、少なくとも1つの出力レイヤーセット(OLS)を指定するビデオパラメータセット(VPS)を生成するステップであって、前記ビデオエンコーダは、前記複数のレイヤーからの各レイヤーが前記VPSにより指定された前記OLSのうちの少なくとも1つに含まれるよう制約される、ステップと、
    前記ビデオエンコーダにより、前記複数のレイヤー及び前記VPSをビデオビットストリームに符号化するステップと、
    前記ビデオエンコーダにより、ビデオデコーダへ向けて通信するために、前記ビデオビットストリームを格納するステップと、
    を含む方法。
  12. 前記1つ以上のOLSの各々は、1つ以上の出力レイヤーを含み、前記出力レイヤーの各々は1つ以上のピクチャーを含み、前記1つ以上のOLSの全部から除外されるレイヤーはない、請求項11に記載の方法。
  13. 前記複数のレイヤーの中の各レイヤーは、全部がレイヤー識別子(ID)の特定の値を有するビデオコーディングレイヤー(VCL)ネットワーク抽象化レイヤー(NAL)ユニットと、関連する非VCL NALユニットとのセットを含む、請求項11~12のいずれかに記載の方法。
  14. 前記OLSのうちの1つは、2つの出力レイヤーを含み、前記2つの出力レイヤーのうちの一方は、前記2つの出力レイヤーのうちの他方を参照する、請求項11~13のいずれかに記載の方法。
  15. 前記VPS内で指定された特定の値のレイヤーIDを有する前記複数のレイヤーの各々について、前記1つ以上のOLS内の前記レイヤーのうちの1つも、前記特定の値のレイヤーIDを有するべきである、請求項11~14のいずれかに記載の方法。
  16. 復号装置であって、
    ビデオパラメータセット(VPS)と複数のレイヤーとを含むビデオビットストリームを受信するよう構成される受信機であって、各レイヤーは、前記VPSにより指定された少なくとも1つの出力レイヤーセット(OLS)に含まれる、受信機と、
    前記受信機に結合されるメモリであって、前記メモリは命令を格納する、メモリと、
    前記メモリに結合されるプロセッサであって、前記プロセッサは、前記命令を実行して、前記復号装置に、復号ピクチャーを得るために前記複数のレイヤーのうちの1つからピクチャーを復号させる、プロセッサと、
    を含む復号装置。
  17. 前記ピクチャーは、前記少なくとも1つのOLSの出力レイヤーに含まれ、各レイヤーは前記OLSの中で指定される、請求項16に記載の復号装置。
  18. 前記プロセッサは、前記ピクチャーが復号される前に、前記少なくとも1つのOLSから出力レイヤーを選択するよう更に構成される、請求項16~17のいずれかに記載の復号装置。
  19. 前記プロセッサは、前記出力レイヤーが選択された後に、前記出力レイヤーから前記ピクチャーを選択するよう更に構成される、請求項16~18のいずれかに記載の復号装置。
  20. 前記複数のレイヤーの中の各レイヤーは、全部がレイヤー識別子(ID)の特定の値を有するビデオコーディングレイヤー(VCL)ネットワーク抽象化レイヤー(NAL)ユニットと、関連する非VCL NALユニットとのセットを含む、請求項16~19のいずれかに記載の復号装置。
  21. 前記少なくとも1つのOLSは、2つの出力レイヤーを含み、前記2つの出力レイヤーのうちの一方は、前記2つの出力レイヤーのうちの他方を参照する、請求項16~20のいずれかに記載の復号装置。
  22. 前記少なくとも1つのOLSは、1つ以上の出力レイヤーを含む、請求項16~21のいずれかに記載の復号装置。
  23. 前記プロセッサは、前記命令を実行して、前記復号装置に、更に、
    第2ビデオパラメータセット(VPS)及び第2の複数のレイヤーを含む第2ビデオビットストリームを受信させ、少なくとも1つのレイヤーは、前記第2VPSにより指定される少なくとも1つの出力レイヤーセット(OLS)に含まれず、
    前記第2ビデオビットストリームの受信に応答して、幾つかの他の修正手段を講じて、前記第2の複数のレイヤーのうちの1つからピクチャーを復号する前に、前記第2ビデオビットストリームに対応する準拠ビットストリームが受信されることを保証する、請求項16~22のいずれかに記載の復号装置。
  24. 前記復号ピクチャーを表示するよう構成されるディスプレーを更に含む請求項16~23のいずれかに記載の復号装置。
  25. 符号化装置であって、
    命令を含むメモリと、
    前記メモリに結合されるプロセッサであって、前記プロセッサは、前記命令を実行して、前記符号化装置に、
    複数のレイヤーと、1つ以上の出力レイヤーセット(OLS)を指定するビデオパラメータセット(VPS)とを生成させ、前記ビデオエンコーダは、前記複数のレイヤーからの各レイヤーが前記VPSにより指定された前記OLSのうちの少なくとも1つに含まれるよう制約され、
    前記複数のレイヤー及び前記VPSをビデオビットストリームに符号化させる、プロセッサと、
    前記プロセッサに結合される送信機であって、前記送信機は、ビデオデコーダへ向けて前記ビデオビットストリームを送信するよう構成される、送信機と、
    を含む符号化装置。
  26. 前記1つ以上のOLSの各々は、1つ以上の出力レイヤーを含み、前記出力レイヤーの各々は1つ以上のピクチャーを含む、請求項25に記載の符号化装置。
  27. 前記複数のレイヤーの中の各レイヤーは、全部がレイヤー識別子(ID)の特定の値を有するビデオコーディングレイヤー(VCL)ネットワーク抽象化レイヤー(NAL)ユニットと、関連する非VCL NALユニットとのセットを含む、請求項25~26のいずれかに記載の符号化装置。
  28. 前記OLSのうちの1つは、2つの出力レイヤーを含み、前記2つの出力レイヤーのうちの一方は、前記2つの出力レイヤーのうちの他方を参照する、請求項25~27のいずれかに記載の符号化装置。
  29. 前記VPS内で指定された特定の値のレイヤーIDを有する前記複数のレイヤーの各々について、前記1つ以上のOLS内の前記レイヤーのうちの1つも、前記特定の値のレイヤーIDを有するべきである、請求項25~28のいずれかに記載の符号化装置。
  30. コーディング機器であって、
    ピクチャーを受信して符号化するか、又はビットストリームを受信して復号するよう構成される受信機と、
    前記受信機に結合される送信機であって、前記送信機は、前記ビットストリームをデコーダへ送信するか、又は復号画像をディスプレーへ送信するよう構成される、送信機と、
    前記受信機又は前記送信機のうちの少なくとも1つに結合されるメモリであって、前記メモリは、命令を格納するよう構成される、メモリと、
    前記メモリに結合されるプロセッサであって、前記プロセッサは、請求項1~9のいずれか、及び請求項10~14のいずれかに記載の方法を実行するために、前記メモリに格納された前記命令を実行するよう構成される、プロセッサと、
    を含むコーディング機器。
  31. 復号ピクチャーを表示するよう構成されるディスプレーを更に含む請求項31に記載のコーディング機器。
  32. エンコーダと、
    前記エンコーダと通信するデコーダであって、前記エンコーダ又は前記デコーダは、請求項16~30のいずれかに記載の復号装置、符号化装置、又はコーディング機器を含む、デコーダと、
    を含むシステム。
  33. コーディングする手段であって、
    ピクチャーを受信して符号化するか、又はビットストリームを受信して復号するよう構成される受信手段と、
    前記受信手段に結合される送信手段であって、前記送信手段は、前記ビットストリームを復号手段へ送信するか、又は復号画像をディスプレー手段へ送信するよう構成される、送信手段と、
    前記受信手段又は前記送信手段のうちの少なくとも1つに結合される記憶手段であって、前記記憶手段は、命令を格納するよう構成される、記憶手段と、
    前記記憶手段に結合される処理手段であって、前記処理手段は、請求項1~9のいずれか、及び請求項10~15のいずれかに記載の方法を実行するために、前記記憶手段に格納された前記命令を実行するよう構成される、処理手段と、
    を含むコーディングする手段。
JP2022518808A 2019-09-24 2020-09-15 マルチレイヤービデオビットストリームにおける未使用レイヤーの禁止 Active JP7381732B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023188102A JP2024012486A (ja) 2019-09-24 2023-11-02 マルチレイヤービデオビットストリームにおける未使用レイヤーの禁止

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962905136P 2019-09-24 2019-09-24
US62/905,136 2019-09-24
PCT/US2020/050904 WO2021061453A1 (en) 2019-09-24 2020-09-15 Disallowing unused layers in multi-layer video bitstreams

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023188102A Division JP2024012486A (ja) 2019-09-24 2023-11-02 マルチレイヤービデオビットストリームにおける未使用レイヤーの禁止

Publications (2)

Publication Number Publication Date
JP2022549836A true JP2022549836A (ja) 2022-11-29
JP7381732B2 JP7381732B2 (ja) 2023-11-15

Family

ID=75166799

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2022518803A Active JP7381731B2 (ja) 2019-09-24 2020-09-15 マルチレイヤービデオビットストリームにおける不要なレイヤーの禁止
JP2022518808A Active JP7381732B2 (ja) 2019-09-24 2020-09-15 マルチレイヤービデオビットストリームにおける未使用レイヤーの禁止
JP2023188097A Pending JP2024012485A (ja) 2019-09-24 2023-11-02 マルチレイヤービデオビットストリームにおける不要なレイヤーの禁止
JP2023188102A Pending JP2024012486A (ja) 2019-09-24 2023-11-02 マルチレイヤービデオビットストリームにおける未使用レイヤーの禁止

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2022518803A Active JP7381731B2 (ja) 2019-09-24 2020-09-15 マルチレイヤービデオビットストリームにおける不要なレイヤーの禁止

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2023188097A Pending JP2024012485A (ja) 2019-09-24 2023-11-02 マルチレイヤービデオビットストリームにおける不要なレイヤーの禁止
JP2023188102A Pending JP2024012486A (ja) 2019-09-24 2023-11-02 マルチレイヤービデオビットストリームにおける未使用レイヤーの禁止

Country Status (11)

Country Link
US (2) US20220217384A1 (ja)
EP (2) EP4022918A4 (ja)
JP (4) JP7381731B2 (ja)
KR (2) KR20220065061A (ja)
CN (8) CN117596403A (ja)
AU (2) AU2020352905A1 (ja)
BR (2) BR112022005517A2 (ja)
CA (2) CA3155637A1 (ja)
CL (1) CL2022000715A1 (ja)
MX (2) MX2022003564A (ja)
WO (2) WO2021061453A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11109069B2 (en) * 2019-09-20 2021-08-31 Tencent America LLC Signaling of scalability parameters in video bitstream
KR20220115958A (ko) 2019-12-26 2022-08-19 바이트댄스 아이엔씨 코딩된 비트스트림들에서의 비디오 계층들의 시그널링에 대한 제약들
WO2021134018A1 (en) 2019-12-26 2021-07-01 Bytedance Inc. Signaling of decoded picture buffer parameters in layered video
JP2023508680A (ja) 2019-12-27 2023-03-03 バイトダンス インコーポレイテッド ビデオコーディングにおけるサブピクチャシグナリング
WO2021142369A1 (en) 2020-01-09 2021-07-15 Bytedance Inc. Signalling of the wavefront parallel processing
KR20230023709A (ko) * 2020-06-03 2023-02-17 엘지전자 주식회사 영상/비디오 코딩 시스템에서 일반 제한 정보를 처리하는 방법 및 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015137432A1 (ja) * 2014-03-14 2015-09-17 シャープ株式会社 画像復号装置、及び画像復号方法
JP2015195543A (ja) * 2014-03-26 2015-11-05 シャープ株式会社 画像復号装置、画像符号化装置
US20170347026A1 (en) * 2016-05-24 2017-11-30 Nokia Technologies Oy Method and an apparatus and a computer program for encoding media content

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101282190B1 (ko) * 2009-12-11 2013-07-04 한국전자통신연구원 적응형 보안 정책 기반의 스케일러블 영상 서비스 방법 및 장치
US20140003534A1 (en) * 2012-07-02 2014-01-02 Sony Corporation Video coding system with temporal scalability and method of operation thereof
US9467700B2 (en) * 2013-04-08 2016-10-11 Qualcomm Incorporated Non-entropy encoded representation format
WO2015009693A1 (en) * 2013-07-15 2015-01-22 Sony Corporation Layer based hrd buffer management for scalable hevc
US9807406B2 (en) * 2014-03-17 2017-10-31 Qualcomm Incorporated Picture flushing and decoded picture buffer parameter inference for multi-layer bitstreams
US10063867B2 (en) * 2014-06-18 2018-08-28 Qualcomm Incorporated Signaling HRD parameters for bitstream partitions
US9756355B2 (en) * 2014-06-20 2017-09-05 Qualcomm Incorporated Value ranges for syntax elements in video coding
US11677967B2 (en) * 2015-04-21 2023-06-13 Arris Enterprises Llc Scalable video coding system with parameter signaling
US10034010B2 (en) * 2015-10-14 2018-07-24 Qualcomm Incorporated Alignment of operation point sample group in multi-layer bitstreams file format
FI20165256L (fi) * 2016-03-24 2017-09-25 Nokia Technologies Oy Laitteisto, menetelmä ja tietokoneohjelma videokoodaukseen ja -dekoodaukseen

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015137432A1 (ja) * 2014-03-14 2015-09-17 シャープ株式会社 画像復号装置、及び画像復号方法
JP2015195543A (ja) * 2014-03-26 2015-11-05 シャープ株式会社 画像復号装置、画像符号化装置
US20170347026A1 (en) * 2016-05-24 2017-11-30 Nokia Technologies Oy Method and an apparatus and a computer program for encoding media content

Also Published As

Publication number Publication date
JP7381732B2 (ja) 2023-11-15
EP4022918A4 (en) 2022-10-05
AU2020354918A1 (en) 2022-04-21
CA3155837A1 (en) 2021-04-01
CN117425011A (zh) 2024-01-19
EP4022915A4 (en) 2022-10-05
CN117544772A (zh) 2024-02-09
CN114424557B (zh) 2023-11-10
BR112022005444A2 (pt) 2022-06-21
CN114424557A (zh) 2022-04-29
AU2020352905A1 (en) 2022-04-14
JP2022549649A (ja) 2022-11-28
CN114424561B (zh) 2023-10-20
CA3155637A1 (en) 2021-04-01
CN117596403A (zh) 2024-02-23
CN117544773A (zh) 2024-02-09
KR20220065061A (ko) 2022-05-19
MX2022003564A (es) 2022-06-16
EP4022915A1 (en) 2022-07-06
US20220217329A1 (en) 2022-07-07
WO2021061454A1 (en) 2021-04-01
BR112022005517A2 (pt) 2022-06-21
JP2024012486A (ja) 2024-01-30
US20220217384A1 (en) 2022-07-07
CN114424561A (zh) 2022-04-29
EP4022918A1 (en) 2022-07-06
KR20220065060A (ko) 2022-05-19
MX2022003558A (es) 2022-06-14
CL2022000715A1 (es) 2022-11-18
CN117478897A (zh) 2024-01-30
CN117544771A (zh) 2024-02-09
WO2021061453A1 (en) 2021-04-01
JP7381731B2 (ja) 2023-11-15
JP2024012485A (ja) 2024-01-30

Similar Documents

Publication Publication Date Title
JP7381731B2 (ja) マルチレイヤービデオビットストリームにおける不要なレイヤーの禁止
JP7323099B2 (ja) マルチレイヤビデオビットストリームのためのdpbパラメータのシグナリング
JP2022549838A (ja) ビデオコーディングにおけるピクチャーヘッダーのシグナリング
JP7389241B2 (ja) マルチビュースケーラビリティのためのols
JP2022550319A (ja) 空間およびsnrスケーラビリティのためのols

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220520

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220520

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230404

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20230703

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230904

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231003

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231102

R150 Certificate of patent or registration of utility model

Ref document number: 7381732

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150