JP2024087742A - ビデオ符号化においてニューラルネットワークポストフィルタ目的情報をシグナリングするためのシステム及び方法 - Google Patents
ビデオ符号化においてニューラルネットワークポストフィルタ目的情報をシグナリングするためのシステム及び方法 Download PDFInfo
- Publication number
- JP2024087742A JP2024087742A JP2023032906A JP2023032906A JP2024087742A JP 2024087742 A JP2024087742 A JP 2024087742A JP 2023032906 A JP2023032906 A JP 2023032906A JP 2023032906 A JP2023032906 A JP 2023032906A JP 2024087742 A JP2024087742 A JP 2024087742A
- Authority
- JP
- Japan
- Prior art keywords
- nnpfc
- post
- neural network
- video
- picture
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 146
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 136
- 230000011664 signaling Effects 0.000 title claims abstract description 19
- 238000012805 post-processing Methods 0.000 claims description 114
- 238000001914 filtration Methods 0.000 claims description 35
- 239000000523 sample Substances 0.000 description 70
- 230000008569 process Effects 0.000 description 53
- 241000023320 Luma <angiosperm> Species 0.000 description 34
- 239000010410 layer Substances 0.000 description 34
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 34
- 238000013139 quantization Methods 0.000 description 31
- 239000013598 vector Substances 0.000 description 30
- 238000004891 communication Methods 0.000 description 24
- 230000006854 communication Effects 0.000 description 24
- 108091000069 Cystinyl Aminopeptidase Proteins 0.000 description 21
- 102100020872 Leucyl-cystinyl aminopeptidase Human genes 0.000 description 21
- 230000006870 function Effects 0.000 description 17
- 239000000872 buffer Substances 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 10
- 238000000605 extraction Methods 0.000 description 10
- 238000007906 compression Methods 0.000 description 9
- 230000006835 compression Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 239000011159 matrix material Substances 0.000 description 7
- 238000012546 transfer Methods 0.000 description 7
- 230000004913 activation Effects 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 6
- 238000003491 array Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 230000000153 supplemental effect Effects 0.000 description 6
- 230000002123 temporal effect Effects 0.000 description 6
- 239000000835 fiber Substances 0.000 description 5
- 239000013074 reference sample Substances 0.000 description 5
- 241001482237 Pica Species 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 4
- 238000011084 recovery Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 101150103552 cagE gene Proteins 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000002688 persistence Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 2
- 241000209094 Oryza Species 0.000 description 2
- 235000007164 Oryza sativa Nutrition 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 239000011449 brick Substances 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000002059 diagnostic imaging Methods 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 239000011229 interlayer Substances 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 235000009566 rice Nutrition 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- FMYKJLXRRQTBOR-UBFHEZILSA-N (2s)-2-acetamido-4-methyl-n-[4-methyl-1-oxo-1-[[(2s)-1-oxohexan-2-yl]amino]pentan-2-yl]pentanamide Chemical group CCCC[C@@H](C=O)NC(=O)C(CC(C)C)NC(=O)[C@H](CC(C)C)NC(C)=O FMYKJLXRRQTBOR-UBFHEZILSA-N 0.000 description 1
- 238000012935 Averaging Methods 0.000 description 1
- 101150114515 CTBS gene Proteins 0.000 description 1
- 241000255925 Diptera Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/002—Image coding using neural networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/96—Tree coding, e.g. quad-tree coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】符号化されたビデオのためのニューラルネットワークポストフィルタパラメータ情報をシグナリングするデバイス及び方法を提供する。
【解決手段】ビットストリームを受信しビデオデータを再生成する任意のデバイスを含むビデオ復号装置は、ニューラルネットワークポストフィルタ特性メッセージを受信し、ニューラルネットワークポストフィルタ特性メッセージから、ポストフィルタの目的を示す第1のシンタックス要素をパースし、ポストフィルタの目的を示すシンタックス要素と、ポストフィルタの目的、入力フォーマッティング、出力フォーマッティング及び複雑さに関係するシンタックス要素が、ニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をパースする。第1のシンタックス要素は、ニューラルネットワークポストフィルタ特性メッセージ中で第2のシンタックス要素に先行する。
【選択図】図6
【解決手段】ビットストリームを受信しビデオデータを再生成する任意のデバイスを含むビデオ復号装置は、ニューラルネットワークポストフィルタ特性メッセージを受信し、ニューラルネットワークポストフィルタ特性メッセージから、ポストフィルタの目的を示す第1のシンタックス要素をパースし、ポストフィルタの目的を示すシンタックス要素と、ポストフィルタの目的、入力フォーマッティング、出力フォーマッティング及び複雑さに関係するシンタックス要素が、ニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をパースする。第1のシンタックス要素は、ニューラルネットワークポストフィルタ特性メッセージ中で第2のシンタックス要素に先行する。
【選択図】図6
Description
本開示は、ビデオ符号化に関し、より詳細には、符号化されたビデオのためのニューラルネットワークポストフィルタパラメータ情報をシグナリングする技術に関する。
デジタルビデオ能力は、デジタルテレビ、ラップトップ又はデスクトップコンピュータ、タブレット型コンピュータ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲーミングデバイス、いわゆるスマートフォンを含むセルラー電話、医療用イメージングデバイスなどを含む、広範囲のデバイスに組み込むことができる。デジタルビデオは、ビデオ符号化規格に従って符号化されてもよい。ビデオ符号化規格は、符号化されたビデオデータをカプセル化する準拠ビットストリームのフォーマットを定義する。準拠ビットストリームは、復元されたビデオデータを生成するために、ビデオ復号デバイスによって受信及び復号され得るデータ構造である。ビデオ符号化規格は、ビデオ圧縮技術を組み込んでもよい。ビデオ符号化規格の例としては、ISO/IEC MPEG-4 Visual及びITU-T H.264(ISO/IEC MPEG-4 AVCとしても公知である)並びにHigh-Efficiency Video Coding(HEVC)が挙げられる。HEVCは、High Efficiency Video Coding(HEVC),Rec.ITU-T H.265(2016年12月)に記載されており、参照により本明細書に組み込まれ、本明細書ではITU-T H.265と称する。ITU-T H.265に関する拡張及び改善が、次世代ビデオ符号化規格の開発のために考えられている。例えば、ITU-T Video Coding Experts Group(VCEG)及びISO/IEC(Moving Picture Experts Group(MPEG)(Joint Video Exploration Team(JVET)と集合的に呼ばれる)は、現在のHEVC規格の圧縮能力を著しく上回る圧縮能力を有する規格化されたビデオ符号化技術を有する。The Joint Exploration Model 7(JEM 7),Algorithm Description of Joint Exploration Test Model 7(JEM 7),ISO/IEC JTC1/SC29/WG11 Document:ビデオ符号化技術を、ITU-T H.265の能力を超えて向上させる可能性を有するものとして、JVETによって協調的試験モデル研究中であった符号化特徴について、JVET-G1001,July 2017,Torino,ITが説明しており、それが参照により本明細書に組み込まれる。JEM 7の符号化特徴は、JEM参照ソフトウェアで実施されることに留意されたい。本明細書で使用されるとき、JEMという用語は、JEM 7に含まれるアルゴリズム及びJEM参照ソフトウェアの実施を集合的に表し得る。更に、VCEG及びMPEGが共同で発行した「Joint Call for Proposals on Video Compression with Capabilities beyond HEVC」に応答して、ビデオ符号化ツールに関する複数の説明が様々なグループによって、10th Meeting of ISO/IEC JTC1/SC29/WG11 16-20 April 2018,San Diego,CAにおいて提案された。ビデオ符号化ツールの複数の説明から得られたビデオ符号化仕様の初期のドラフトテキストが、「Versatile Video Coding(Draft 1)」,10th Meeting of ISO/IEC JTC1/SC29/WG11 16-20 April 2018,San Diego,CA,document JVET-J1001-v2において説明され、これは参照により本明細書に組み込まれ、JVET-J1001として参照される。VCEG及びMPEGによるビデオ符号化規格のこの開発は、汎用ビデオ符号化(VVC)プロジェクトと呼ばれる。「Versatile Video Coding(Draft 10)」,20th Meeting of ISO/IEC JTC1/SC29/WG11 7-16 October 2020,Teleconference,document JVET-T2001-v2は、VVCプロジェクトに対応するビデオ符号化仕様のドラフトテキストの現在の反復を表し、これは参照により本明細書に組み込まれ、JVET-T2001として参照される。
ビデオ圧縮技術は、ビデオデータを記憶し送信するためのデータ要件を低減することを可能にする。ビデオ圧縮技術は、ビデオ系列における固有の冗長性を利用することにより、データ要件を低減してもよい。ビデオ圧縮技術は、ビデオ系列を連続的により小さい部分(すなわち、ビデオ系列内のピクチャ群、ピクチャ群内のピクチャ、ピクチャ内の領域、領域内のサブ領域など)に再分割し得る。イントラ予測符号化技術(例えば、ピクチャ内の空間予測技術)及びインター予測技術(すなわち、ピクチャ間技術(時間))を使用して、符号化されるビデオデータのユニットとビデオデータの参照ユニットとの間の差分値を生成してもよい。差分値は、残差データと呼ばれることがある。残差データは、量子化された変換係数として符号化されてもよい。シンタックス要素は、残差データ及び参照符号化ユニット(例えば、イントラ予測モードインデックス、及び動き情報)に関連してもよい。残差データ及びシンタックス要素は、エントロピ符号化されてもよい。エントロピ符号化された残差データ及びシンタックス要素は、準拠ビットストリームを形成するデータ構造に含まれてもよい。
概して、本開示は、ビデオデータを符号化する様々な技術を説明する。特に、本開示は、符号化されたビデオデータのためのニューラルネットワークポストフィルタパラメータ情報をシグナリングする技術を説明する。本開示の技術は、ITU-T H.264、ITU-T H.265、JEM、及びJVET-T2001に関して説明されているが、本開示の技術は、ビデオ符号化に一般に適用可能であることに留意されたい。例えば、本明細書で説明する符号化技術は、ITU-T H.265、JEM、及びJVET-T2001に含まれるもの以外のビデオブロック構造、イントラ予測技術、インター予測技術、変換技術、フィルタリング技術、及び/又はエントロピ符号化技術を含むビデオ符号化システム(将来のビデオ符号化規格に基づくビデオ符号化システムを含む)に組み込まれてもよい。したがって、ITU-T H.264、ITU-T H.265、JEM、及び/又はJVET-T2001の参照は、説明のためのものであり、本明細書で説明する技術の範囲を限定するように解釈すべきではない。更に、本明細書での文書の参照による組み込みは、説明のためのものであり、本明細書で使用される用語に関して限定する又は曖昧さを生むように解釈されるべきではないことに留意されたい。例えば、組み込まれた参照が、別の組み込まれた参照のものとは異なる用語の定義を与える場合、かつ/又はその用語が本明細書で使用されるような場合には、その用語は、それぞれの対応する定義を幅広く含むように、及び/又は代わりに特定の定義のそれぞれを含むように解釈されるべきである。
一実施例では、ビデオデータを符号化する方法は、ニューラルネットワークポストフィルタ特性メッセージをシグナリングすることと、ニューラルネットワークポストフィルタ特性メッセージ中で、後処理フィルタの目的を示す第1のシンタックス要素をシグナリングすることと、ニューラルネットワークポストフィルタ特性メッセージ中で、後処理フィルタの目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関係するシンタックス要素がニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をシグナリングすることあって、第1のシンタックス要素が、ニューラルネットワークポストフィルタ特性メッセージ中で第2のシンタックス要素に先行する、第2のシンタックス要素をシグナリングすることと、を含む。
一実施例では、デバイスは、ニューラルネットワークポストフィルタ特性メッセージをシグナリングし、ニューラルネットワークポストフィルタ特性メッセージ中で、後処理フィルタの目的を示す第1のシンタックス要素をシグナリングし、ニューラルネットワークポストフィルタ特性メッセージ中で、後処理フィルタの目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関係するシンタックス要素がニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をシグナリングし、第1のシンタックス要素が、ニューラルネットワークポストフィルタ特性メッセージ中で第2のシンタックス要素に先行する、ように構成された1つ以上のプロセッサを備える。
一実施例では、非一時的コンピュータ可読記憶媒体は、実行されると、デバイスの1つ以上のプロセッサに、ニューラルネットワークポストフィルタ特性メッセージをシグナリングさせ、ニューラルネットワークポストフィルタ特性メッセージ中で、後処理フィルタの目的を示す第1のシンタックス要素をシグナリングさせ、ニューラルネットワークポストフィルタ特性メッセージ中で、後処理フィルタの目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関係するシンタックス要素がニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をシグナリングさせ、第1のシンタックス要素が、ニューラルネットワークポストフィルタ特性メッセージ中で第2のシンタックス要素に先行する、その上に記憶された命令を含む。
一実施例では、装置は、ニューラルネットワークポストフィルタ特性メッセージをシグナリングする手段と、ニューラルネットワークポストフィルタ特性メッセージ中で、後処理フィルタの目的を示す第1のシンタックス要素をシグナリングする手段と、ニューラルネットワークポストフィルタ特性メッセージ中で、後処理フィルタの目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関係するシンタックス要素がニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をシグナリングする手段であって、第1のシンタックス要素が、ニューラルネットワークポストフィルタ特性メッセージ中で第2のシンタックス要素に先行する、第2のシンタックス要素をシグナリングする手段と、を備える。
一実施例では、ビデオデータを復号する方法は、ニューラルネットワークポストフィルタ特性メッセージを受信することと、ニューラルネットワークポストフィルタ特性メッセージから、後処理フィルタの目的を示す第1のシンタックス要素をパースすることと、ニューラルネットワークポストフィルタ特性メッセージから、後処理フィルタの目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関係するシンタックス要素がニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をパースすることであって、第1のシンタックス要素が、ニューラルネットワークポストフィルタ特性メッセージ中で第2のシンタックス要素に先行する、第2のシンタックス要素をパースすることと、を含む。
一実施例では、デバイスは、ニューラルネットワークポストフィルタ特性メッセージを受信し、ニューラルネットワークポストフィルタ特性メッセージから、後処理フィルタの目的を示す第1のシンタックス要素をパースし、ニューラルネットワークポストフィルタ特性メッセージから、後処理フィルタの目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関係するシンタックス要素がニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をパースし、第1のシンタックス要素が、ニューラルネットワークポストフィルタ特性メッセージ中で第2のシンタックス要素に先行する、ように構成された1つ以上のプロセッサを備える。
一実施例では、非一時的コンピュータ可読記憶媒体は、実行されると、デバイスの1つ以上のプロセッサに、ニューラルネットワークポストフィルタ特性メッセージを受信させ、ニューラルネットワークポストフィルタ特性メッセージから、後処理フィルタの目的を示す第1のシンタックス要素をパースさせ、ニューラルネットワークポストフィルタ特性メッセージから、後処理フィルタの目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関係するシンタックス要素がニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をパースさせ、第1のシンタックス要素が、ニューラルネットワークポストフィルタ特性メッセージ中で第2のシンタックス要素に先行する、その上に記憶された命令を含む。
一実施例では、装置は、ニューラルネットワークポストフィルタ特性メッセージを受信する手段と、ニューラルネットワークポストフィルタ特性メッセージから、後処理フィルタの目的を示す第1のシンタックス要素をパースする手段と、ニューラルネットワークポストフィルタ特性メッセージから、後処理フィルタの目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関係するシンタックス要素がニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をパースする手段であって、第1のシンタックス要素が、ニューラルネットワークポストフィルタ特性メッセージ中で第2のシンタックス要素に先行する、第2のシンタックス要素をパースする手段と、を備える。
1つ以上の例の詳細は、添付の図面及び以下の明細書に記述されている。他の特徴、目的、及び利点は、明細書及び図面から、並びに特許請求の範囲から明白であろう。
ビデオコンテンツは、一連のフレーム(又はピクチャ)からなるビデオ系列を含む。一連のフレームはまた、ピクチャ群(group of pictures、GOP)と呼ばれることがある。各ビデオフレーム又はピクチャは、1つ以上の領域に分割され得る。領域は、ベースユニット(例えば、ビデオブロック)と、領域を定義するルールのセットとに従って定義され得る。例えば、領域を定義するルールは、領域が長方形に配置された整数個のビデオブロックでなければならないというものであり得る。更に、領域中のビデオブロックは、走査パターン(例えば、ラスタ走査)に従って順序付けされてもよい。本明細書で使用されるとき、ビデオブロックという用語は、一般的に、ピクチャのある区域を指してもよく、又は、より具体的には、予測的に符号化され得るサンプル値の最大配列、その再分割、及び/又は対応する構造を指してもよい。更に、現在のビデオブロックという用語は、符号化又は復号されているピクチャの部分を指してもよい。ビデオブロックは、サンプル値の配列として定義され得る。いくつかの場合では、画素値が、色成分(例えば、ルマ成分(Y)及びクロマ成分(Cb及びCr)、あるいは赤色、緑色、及び青色の成分)とも呼ばれることがあるビデオデータのそれぞれの成分についてのサンプル値を含むものとして説明され得ることに留意されたい。いくつかの場合では、画素値及びサンプル値という用語は互換的に使用されることに留意されたい。更に、いくつかの場合では、画素又はサンプルは、ペルと呼ばれることがある。クロマフォーマットと称され得るビデオサンプリングフォーマットは、ビデオブロックに含まれるルマサンプルの数に対するビデオブロックに含まれるクロマサンプルの数として定義されてもよい。例えば、4:2:0フォーマットに対して、ルマ成分に対するサンプリングレートは、水平方向及び垂直方向の両方に対してクロマ成分のサンプリングレートの2倍である。
ビデオ符号化装置は、ビデオブロック及びその再分割に対して予測符号化を実行してもよい。ビデオブロック及びその再分割は、ノードと呼ばれることがある。ITU-T H.264は、16×16のルマサンプルを含むマクロブロックを規定している。すなわち、ITU-T H.264では、ピクチャはマクロブロックに分割される。ITU-T H.265は、類似の符号化ツリーユニット(CTU)構造(最大符号化ユニット(LCU)と呼ばれることがある)を指定する。ITU-T H.265では、ピクチャはCTUに分割される。ITU-T H.265では、1つのピクチャに関して、CTUサイズは、16×16、32×32、又は64×64のルマサンプルを含むように設定されてもよい。ITU-T H.265では、CTUは、ビデオデータのそれぞれの成分(例えば、ルマ(Y)及びクロマ(Cb及びCr)についてのそれぞれの符号化ツリーブロック(CTB)(Coding Tree Block)から構成される。1つのルマ成分及び2つの対応するクロマ成分を有するビデオは、2つのチャネル、すなわち、ルマチャネル及びクロマチャネルを有するものとして説明され得ることに留意されたい。更に、ITU-T H.265では、CTUを四分ツリー(QT)分割構造に従って分割してもよく、その結果、CTUのCTBが、符号化ブロック(CB:Coding Block)に分割される。すなわち、ITU-T H.265では、CTUを四分ツリーリーフノードに分割してもよい。ITU-T H.265によれば、1つのルマCBは、2つの対応するクロマCB及び関連するシンタックス要素と共に、符号化ユニット(CU)と呼ばれる。ITU-T H.265では、CBの最小許容サイズをシグナリングしてもよい。ITU-T H.265では、ルマCBの最も小さい最小許容サイズは、8×8のルマサンプルである。ITU-T H.265では、イントラ予測又はインター予測を用いてピクチャ部分を符号化する決定は、CUレベルで行われる。ITU-T H.265では、CUは、CUにその根を有する予測ユニット構造に関連付けられている。ITU-T H.265では、予測ユニット構造は、対応する参照サンプルを生成する目的で、ルマCB及びクロマCBを分割することを可能にする。すなわち、ITU-T H.265では、ルマCB及びクロマCBを、それぞれのルマ及びクロマ予測ブロック(PB)に分割してもよく、ここで、PBは、同じ予測が適用されるサンプル値のブロックを含む。ITU-T H.265では、CBを1、2、又は4個のPBに分割してもよい。ITU-T H.265は、64×64のサンプルから4×4のサンプルまでのPBサイズをサポートする。ITU-T H.265では、正方形のPBがイントラ予測のためにサポートされ、ここで、CBはPBを形成し得るか、又は、CBは4つの正方形のPBに分割され得る。ITU-T H.265では、正方形のPBの他に、矩形のPBがインター予測のためにサポートされ、ここで、CBを垂直又は水平に二等分してPBを形成してもよい。更に、ITU-T H.265では、インター予測のために、4つの非対称PB分割がサポートされ、ここで、CBは、CBの高さ(上部又は下部で)又は幅(左又は右で)の4分の1で2つのPBに分割される。PBに対応するイントラ予測データ(例えば、イントラ予測モードシンタックス要素)又はインター予測データ(例えば、動きデータシンタックス要素)を使用して、PBに関する参照サンプル値及び/又は予測サンプル値が生成される。
JEMは、256×256のルマサンプルの最大サイズを有するCTUを規定している。JEMは、四分ツリー+二分ツリー(QTBT)ブロック構造を規定している。JEMでは、QTBT構造は、四分ツリーリーフノードを二分ツリー構造(BT)によって更に分割することを可能にする。すなわち、JEMでは、二分ツリー構造は、四分ツリーリーフノードを垂直又は水平に再帰的に分割することを可能にする。JVET-T2001では、CTUは、四分ツリープラスマルチタイプツリー(QTMT又はQT+MTT)構造に従って分割される。JVET-T2001におけるQTMTは、JEMにおけるQTBTと同様である。ただし、JVET-T2001では、マルチタイプ木は二元分割を示すことに加えて、いわゆる三元(又はトリプル木(TT))分割を示してもよい。ターナリ分割は、ブロックを垂直又は水平に3つのブロックに分割する。垂直TT分割の場合、ブロックは、左端からその幅の4分の1で、及び右端からその幅の4分の1で分割され、水平TT分割の場合、ブロックは、上端からその高さの4分の1で、及び下端からその高さの4分の1で分割される。
上述したように、各ビデオフレーム又はピクチャは、1つ以上の領域に分割され得る。例えば、ITU-T H.265によれば、各ビデオフレーム又はピクチャは、1つ以上のスライスを含むように分割され、更に、1つ以上のタイルを含むように分割され得、ここで、各スライスは、(例えば、ラスタ走査順序で)CTUのシーケンスを含み、タイルは、ピクチャの矩形部分に対応するCTUのシーケンスである。スライスは、ITU-T H.265では、独立スライスセグメントから始まり、次の独立スライスセグメント(もしあれば)に先行する全ての以降の従属スライスセグメント(もしあれば)を含む1つ以上のスライスセグメントのシーケンスであることに留意されたい。スライスセグメントは、スライスと同様に、CTUのシーケンスである。したがって、いくつかの場合では、スライス及びスライスセグメントという用語は、ラスタ走査順序で配置されたCTUのシーケンスを示すために互換的に使用されてもよい。更に、ITU-T H.265では、タイルは、2つ以上のスライスに含まれるCTUからなっていてもよく、スライスは、2つ以上のタイルに含まれるCTUからなっていてもよいことに留意されたい。しかしながら、ITU-T H.265は、以下の条件のうちの1つ又は両方が満たされなければならないと規定している。(1)あるスライス中の全てのCTUは同じタイルに属する、及び(2)あるタイル中の全てのCTUは同じスライスに属する。
JVET-T2001に関して、スライスは、整数個のCTUからなることのみが必要とされる代わりに、整数個の完全なタイル又はタイル内の整数個の連続する完全なCTU行からなることが必要とされる。JVET-T2001では、スライス設計はスライスセグメントを含まない(すなわち、独立/従属スライスセグメントがない)ことに留意されたい。したがって、JVET-T2001では、ピクチャは単一のタイルを含み得、ここで、単一のタイルは単一のスライス内に含まれるか、又は、ピクチャは複数のタイルを含み得、ここで、複数のタイル(又はそのCTU行)は1つ以上のスライス内に含まれ得る。JVET-T2001では、ピクチャのタイルへの分割は、タイル行のそれぞれの高さ及びタイル列のそれぞれの幅を指定することによって指定される。したがって、JVET-T2001では、タイルは、特定のタイル行及び特定のタイル列位置内のCTUの矩形領域である。更に、JVET-T2001は、ピクチャがサブピクチャに分割され得、サブピクチャがピクチャ内のCTUの矩形領域である場合を規定することに留意されたい。サブピクチャの左上CTUは、サブピクチャが1つ以上のスライスを含むように制約された状態で、ピクチャ内の任意のCTU位置に位置し得る。したがって、タイルとは異なり、サブピクチャは、必ずしも特定の行及び列位置に限定されない。サブピクチャは、ピクチャ内の関心領域をカプセル化するために有用であり得、サブビットストリーム抽出プロセスは、特定の関心領域を復号及び表示するためにのみ使用されてもよいことに留意されたい。すなわち、以下で更に詳細に説明するように、符号化されたビデオデータのビットストリームは、ネットワークアブストラクションレイヤ(NAL)ユニットのシーケンスを含み、ここで、NALユニットは、符号化されたビデオデータ(すなわち、ピクチャのスライスに対応するビデオデータ)をカプセル化するか、又は、NALユニットは、ビデオデータを復号するために使用されるメタデータ(例えば、パラメータセット)をカプセル化し、サブビットストリーム抽出プロセスは、ビットストリームから1つ以上のNALユニットを除去することによって新しいビットストリームを形成する。
図2は、タイル、スライス、及びサブピクチャに従って分割されたピクチャ群内のピクチャの一例を示す概念図である。本明細書で説明する技術は、タイル、スライス、サブピクチャ、それらの再分割、及び/又はそれらの等価構造に適用可能であり得ることに留意されたい。すなわち、本明細書で説明する技術は、ピクチャがどのように領域に分割されるかにかかわらず、一般に適用可能であり得る。例えば、いくつかの場合では、本明細書で説明する技術は、タイルがいわゆるブリックに分割され得る場合に適用可能であり得、ここで、ブリックは特定のタイル内のCTU行の矩形領域である。更に、例えば、いくつかの場合では、本明細書で説明する技術は、1つ以上のタイルがいわゆるタイル群に含まれてもよい場合に適用可能であってもよく、ここで、タイル群は整数個の隣接タイルを含む。図2に示す例では、Pic3は、16個のタイル(すなわち、Tile0からTile15)と、3つのスライス(すなわち、Slice0からSlice2)とを含むものとして示されている。図2に示す例では、Slice0は4つのタイル(すなわち、Tile0からTile3)を含み、Slice1は8つのタイル(すなわち、Tile4からTile11)を含み、Slice2は4つのタイル(すなわち、Tile12からTile15)を含む。更に、図2の例に示すように、Pic3は、2つのサブピクチャ(すなわち、Subpicture0及びSubpicture1)を含むものとして示され、ここで、Subpicture0はSlice0及びSlice1を含み、Subpicture1はSlice2を含む。上述したように、サブピクチャは、ピクチャ内の関心領域をカプセル化するために有用であり得、サブビットストリーム抽出プロセスは、関心領域を選択的に復号(及び表示)するために使用されてもよい。例えば、図2を参照すると、Subpicture0は、スポーツイベントプレゼンテーションのアクション部分(例えば、フィールドのビュー)に対応してもよく、Subpicture1は、スポーツイベントプレゼンテーション中に表示されるスクロールバナーに対応してもよい。このようにしてピクチャをサブピクチャに編成することによって、視聴者はスクロールバナーの表示を無効にすることができてもよい。すなわち、サブビットストリーム抽出プロセスを通して、Slice2NALユニットがビットストリームから除去され得(したがって、復号及び/又は表示されないことがあり)、Slice0NALユニット及びSlice1NALユニットが復号及び表示され得る。それぞれのNALユニットデータ構造へのピクチャのスライスのカプセル化及びサブビットストリーム抽出は、以下で更に詳細に説明される。
イントラ予測符号化のために、イントラ予測モードは、ピクチャ内の参照サンプルの位置を指定してもよい。ITU-T H.265では、定義された可能なイントラ予測モードは、平面(すなわち、曲面当てはめ)予測モード、DC(すなわち、単調全体平均化)予測モード、及び33角度予測モード(predMode:2-34)を含む。JEMでは、定義された可能なイントラ予測モードは、平面予測モード、DC予測モード、及び65角度予測モードを含む。平面及びDC予測モードは、非方向性予測モードと呼ばれることがあり、角度予測モードは、方向性予測モードと呼ばれることがあることに留意されたい。本明細書で説明する技術は、定義された可能な予測モードの数にかかわらず、一般的に適用可能であり得ることに留意されたい。
インター予測符号化の場合、参照ピクチャが判定され、動きベクトル(MV)が、現在のビデオブロックのための予測を生成するために使用される参照ピクチャ中のサンプルを識別する。例えば、現在のビデオブロックは、1つ以上の前に符号化されたピクチャ中に位置する参照サンプル値を使用して予測され得、動きベクトルは、現在のビデオブロックに対する参照ブロックの位置を示すために使用される。動きベクトルは、例えば、動きベクトルの水平変位成分(すなわち、MVx)、動きベクトルの垂直変位成分(すなわち、MVy)、及び動きベクトルの解像度(例えば、1/4画素精度、1/2画素精度、1画素精度、2画素精度、4画素精度)を記述してもよい。現在のピクチャの前又は後に出力されるピクチャを含み得る、前に復号されたピクチャは、1つ以上の参照ピクチャリストに編成され、参照ピクチャインデックス値を使用して識別され得る。更に、インター予測符号化では、単予測とは、単一の参照ピクチャからのサンプル値を使用して予測を生成することを指し、双予測とは、2つの参照ピクチャからのそれぞれのサンプル値を使用して予測を生成することを指す。すなわち、単予測では、単一の参照ピクチャ及び対応する動きベクトルが、現在のビデオブロックのための予測を生成するために使用され、双予測では、第1の参照ピクチャ及び対応する第1の動きベクトル、並びに第2の参照ピクチャ及び対応する第2の動きベクトルが、現在のビデオブロックのための予測を生成するために使用される。双予測では、予測を生成するために、それぞれのサンプル値が組み合わせられる(例えば、重みに従って加算され、丸められ、クリッピングされるか、又は平均化される)。ピクチャ及びその領域は、そのビデオブロックを符号化するためにどの種類の予測モードが利用され得るかに基づいて分類され得る。すなわち、Bタイプ(例えば、Bスライス)を有する領域については、双予測モード、単予測モード、及びイントラ予測モードが利用され得、Pタイプ(例えば、Pスライス)を有する領域については、単予測モード及びイントラ予測モードが利用され得、Iタイプ(例えば、Iスライス)を有する領域については、イントラ予測モードのみが利用され得る。上述したように、参照ピクチャは、参照インデックスによって識別される。例えば、Pスライスでは、単一の参照ピクチャリストRefPicList0があり得、Bスライスでは、RefPicList0に加えて、第2の独立した参照ピクチャリストRefPicList1があり得る。Bスライス中の単予測では、予測を生成するためにRefPicList0又はRefPicList1のうちの1つを使用してもよいことに留意されたい。更に、復号プロセス中、ピクチャの復号の開始時に、復号ピクチャバッファ(DPB)に記憶された前に復号されたピクチャから参照ピクチャリストが生成されることに留意されたい。
更に、符号化規格は、動きベクトル予測の様々なモードをサポートし得る。動きベクトル予測は、現在のビデオブロックについての動きベクトルの値が別の動きベクトルに基づいて導出されることを可能にする。例えば、関連する動き情報を有する候補ブロックのセットは、現在のビデオブロックに対する空間隣接ブロック及び時間隣接ブロックから導出され得る。更に、生成された(又はデフォルトの)動き情報は、動きベクトル予測のために使用されてもよい。動きベクトル予測の例としては、高度動きベクトル予測(advanced motion vector prediction)(AMVP)、時間動きベクトル予測(temporal motion vector prediction)(TMVP)、いわゆる「結合」モード、並びに「スキップ」及び「ダイレクト」動き推測が挙げられる。更に、動きベクトル予測の他の例としては、高度時間動きベクトル予測(advanced temporal motion vector prediction)(ATMVP)及び空間時間動きベクトル予測(Spatial-temporal motion vector prediction)(STMVP)が挙げられる。動きベクトル予測では、ビデオ符号化装置とビデオ復号装置の両方が、候補のセットを導出するために同じプロセスを実行する。したがって、現在のビデオブロックについて、符号化及び復号中に候補の同じセットが生成される。
上述したように、インター予測符号化では、前に符号化されたピクチャ中の参照サンプルが、現在のピクチャ中のビデオブロックを符号化するために使用される。現在のピクチャを符号化するときに参照として使用するために利用可能である、前に符号化されたピクチャは、参照ピクチャと呼ばれる。復号順序は、ピクチャ出力順序、すなわち、ビデオ系列中のピクチャの時間順序に必ずしも対応しないことに留意されたい。ITU-T H.265では、ピクチャが復号されるとき、ピクチャは復号ピクチャバッファ(DPB)(フレームバッファ、参照バッファ、参照ピクチャバッファなどと呼ばれることがある)に記憶される。ITU-T H.265では、DPBに記憶されたピクチャは、それらが出力され、以降のピクチャを符号化するためにもはや必要とされないとき、DPBから除去される。ITU-T H.265では、ピクチャがDPBから除去されるべきかどうかの判定は、スライスヘッダを復号した後、すなわち、ピクチャの復号の開始時に、ピクチャごとに1回実施される。例えば、図2を参照すると、Pic2はPic1を参照するものとして示されている。同様に、Pic3はPic0を参照するものとして示されている。図2に関して、ピクチャ番号が復号順序に対応すると仮定すると、DPBは以下のようにポピュレートされる:Pic0を復号した後に、DPBは{Pic0}を含み、Pic1の復号の開始時に、DPBは{Pic0}を含み、Pic1を復号した後に、DPBは{Pic0,Pic1}を含み、Pic2の復号の開始時に、DPBは{Pic0,Pic1}を含む。次に、Pic2は、Pic1を参照して復号され、Pic2を復号した後に、DPBは、{Pic0,Pic1,Pic2}を含む。Pic3の復号の開始時に、ピクチャPic0及びPic1は、Pic3(又は、図示されていない任意の以降のピクチャ)を復号するために必要とされないので、DPBから除去するためにマークされ、Pic1及びPic2が出力されたと仮定すると、DPBは、{Pic0}を含むように更新される。次に、Pic3は、Pic0を参照することによって復号される。DPBから除去するためにピクチャをマークするプロセスは、参照ピクチャセット(RPS)管理と呼ばれることがある。
上述したように、イントラ予測データ又はインター予測データは、サンプル値のブロックに対する参照サンプル値を生成するために使用される。現在のPB又は別の種類のピクチャ部分構造に含まれるサンプル値と、関連する参照サンプル(例えば、予測を用いて生成された参照サンプル)との差は、残差データと呼ばれることがある。残差データは、ビデオデータの各成分に対応する差分値のそれぞれの配列を含んでもよい。残差データは、画素領域内にあってもよい。離散コサイン変換(discrete cosine transform)(DCT)、離散サイン変換(discrete sine transform)(DST)、整数変換、ウェーブレット変換、又は概念的に類似の変換などの変換を、差分値の配列に適用して、変換係数を生成してもよい。ITU-T H.265及びJVET-T2001では、CUは、ルートをCUレベルにおいて有する変換ツリー構造に関連付けられることに留意されたい。変換ツリーは、1つ以上の変換ユニット(TU)に分割される。すなわち、変換係数を生成する目的で、差分値の配列を分割してもよい(例えば、4つの8×8変換を残差値の16×16の配列に適用してもよい)。ビデオデータの各成分について、差分値のこのような再分割は、変換ブロック(TB)(Transform Block)と呼ばれることがある。いくつかの場合では、コア変換及び以降の二次変換をビデオ符号化装置で)適用して変換係数を生成してもよいことに留意されたい。ビデオ復号装置に対しては、変換の順序は逆転される。
量子化プロセスが、(例えば、パレット符号化量子化の場合)変換係数又は残差サンプル値に対して直接実行され得る。量子化は、特定の値のセットに制限された振幅によって変換係数を近似する。量子化は、変換係数の群を表すために必要なデータ量を変更するために、変換係数を本質的にスケーリングする。量子化は、量子化倍率による変換係数(又は、変換係数へのオフセット値の加算から得られる値)の除算及び任意の関連する丸め関数(例えば、最も近い整数への丸め)を含んでもよい。量子化された変換係数は、係数レベル値と呼ばれることがある。逆量子化(Inverse quantization)(又は「脱量子化(dequantization)」)は、量子化倍率による係数レベル値の乗算、及び任意の相互丸め又はオフセット加算演算を含んでもよい。本明細書で使用されるとき、量子化プロセスという用語は、いくつかの場合では、レベル値を生成する量子化倍率による除算、及び、いくつかの場合では、変換係数を回復する量子化倍率による乗算を指してもよいことに留意されたい。すなわち、量子化プロセスは、いくつかの場合では、量子化、及び、いくつかの場合では、逆量子化を指してもよい。更に、以下の例のいくつかでは、量子化プロセスは、10進数表記に関連付けられる算術演算に対して説明されるが、そのような説明は例示を目的としたものであり、限定として解釈されるべきではないことに留意されたい。例えば、本明細書で説明する技術は、2進演算などを使用するデバイスにおいて実施されてもよい。例えば、本明細書で説明する乗算演算及び除算演算は、ビットシフト演算などを使用して実施されてもよい。
量子化された変換係数及びシンタックス要素(例えば、ビデオブロックの符号化構造を示すシンタックス要素)は、エントロピ符号化技術に従ってエントロピ符号化されてもよい。エントロピ符号化プロセスは、可逆データ圧縮アルゴリズムを使用してシンタックス要素の値を符号化することを含む。エントロピ符号化技術の例としては、コンテンツ適応型可変長符号化(content adaptive variable length coding)(CAVLC)、コンテキスト適応型バイナリ算術符号化(context adaptive binary arithmetic coding)(CABAC)、確率間隔分割エントロピ符号化(probability interval partitioning entropy coding)(PIPE)などが挙げられる。エントロピ符号化され量子化された変換係数及び対応するエントロピ符号化されたシンタックス要素は、ビデオ復号装置でビデオデータを再生するために使用することができる準拠ビットストリームを形成してもよい。エントロピ符号化プロセス、例えば、CABACは、シンタックス要素に対する二値化の実行を含んでもよい。二値化は、シンタックス要素の値を一連の1つ以上のビットに変換するプロセスを指す。これらのビットは、「ビン」と呼ばれることがある。二値化は、以下の符号化技術:固定長符号化、単項符号化、短縮単項符号化、短縮Rice符号化、Golomb符号化、k次指数Golomb符号化、及びGolomb-Rice符号化のうちの1つ又は組み合わせを含んでもよい。例えば、二値化は、8ビットの固定長二値化技術を使用して、00000101としてシンタックス要素の5の整数値を表すこと、又は単項符号化二値化技術を使用して、11110として5の整数値を表すことを含んでもよい。本明細書で使用されるとき、固定長符号化、単項符号化、短縮単項符号化、短縮Rice符号化、Golomb符号化、k次指数Golomb符号化、及びGolomb-Rice符号化という用語のそれぞれは、これらの技術の一般的な実装形態及び/又はこれらの符号化技術のより具体的な実装形態を指してもよい。例えば、Golomb-Rice符号化の実装形態は、ビデオ符号化規格に従って具体的に定義されてもよい。CABACの例では、特定のビンについて、コンテキストは、ビンについての最確状態(most probable state)(MPS)値(すなわち、ビンについてのMPSは0又は1のうちの1つである)と、ビンがMPS又は最低確率状態(least probably state)(LPS)である確率値とを提供する。例えば、コンテキストは、ビンのMPSが0であり、ビンが1である確率が0.3であることを示してもよい。コンテキストは、現在のシンタックス要素及び前に符号化されたシンタックス要素中のビンを含む、前に符号化されたビンの値に基づいて判定されてもよいことに留意されたい。例えば、隣接するビデオブロックに関連付けられたシンタックス要素の値は、現在のビンのコンテキストを判定するために使用されてもよい。
上述したように、復元されたブロックのサンプル値は、符号化された現在のビデオブロックのサンプル値とは異なり得る。更に、いくつかの場合では、ブロックごとにビデオデータを符号化することにより、アーティファクト(例えば、いわゆるブロッキングアーティファクト、バンディングアーティファクトなど)をもたらすことがあることに留意されたい。例えば、ブロッキングアーティファクトは、復元されたビデオデータの符号化ブロック境界をユーザに視覚的に知覚可能にさせ得る。このようにして、復元されたサンプル値を、符号化された現在のビデオブロックのサンプル値と復元されたブロックとの間の差を最小にし、及び/又はビデオ符号化プロセスによって導入されるアーティファクトを最小にするように変更してもよい。このような変更は、一般に、フィルタリングと称される場合がある。フィルタリングは、インループフィルタリングプロセス又はポストループ(又はポストフィルタリング)フィルタリングプロセスの一部として生じ得ることに留意されたい。インループフィルタリングプロセスでは、フィルタリングプロセスの結果として得られるサンプル値は、予測ビデオブロックのために使用され(例えば、ビデオ符号化装置での以降の符号化、及びビデオ復号装置での以降の復号のために参照フレームバッファに記憶され)てもよい。ポストループフィルタリングプロセスでは、フィルタリングプロセスの結果として得られるサンプル値は、単に復号プロセスの一部として出力される(例えば、以降の符号化に使用されない)。例えば、ビデオ復号装置の場合、インループフィルタリングプロセスでは、復元されたブロックをフィルタリングした結果として得られるサンプル値は、以降の復号のために使用され(例えば、参照バッファに記憶され)、(例えば、ディスプレイに)出力される。ポストループフィルタリングプロセスでは、復元されたブロックは、以降の復号のために使用され、復元されたブロックをフィルタリングした結果として得られるサンプル値は、出力され、以降の復号のために使用されない。
デブロッキング(Deblocking)(又はデブロッキング(de-blocking))、デブロックフィルタリング、又はデブロッキングフィルタを適用することは、隣接する復元されたビデオブロックの境界を平滑化する(すなわち、境界を視聴者により知覚可能でなくする)プロセスを指す。隣接する復元されたビデオブロックの境界を平滑化することは、境界に隣接する行又は列に含まれるサンプル値を変更することを含んでもよい。JVET-T2001は、デブロッキングフィルタが、インループフィルタリングプロセスの一部として、復元されたサンプル値に適用される場合を規定する。インループフィルタリングプロセスの一部としてデブロッキングフィルタを適用することに加えて、JVET-T2001は、サンプル適応オフセット(SAO)フィルタリングがインループフィルタリングプロセスにおいて適用され得る場合を規定する。一般に、SAOは、オフセット値を条件付きで加算することによって、領域中のデブロッキングされたサンプル値を変更するプロセスである。別の種類のフィルタリングプロセスは、いわゆる適応ループフィルタ(ALF)を含む。ブロックベースの適応を伴うALFは、JEMにおいて指定される。JEMでは、ALFはSAOフィルタの後に適用される。ALFは、他のフィルタリング技術とは独立して、復元されたサンプルに適用され得ることに留意されたい。ビデオ符号化装置においてJEMにおいて指定されたALFを適用するためのプロセスは、以下のように要約され得る。(1)復元されたピクチャのルマ成分の各2×2ブロックが分類インデックスに従って分類され、(2)フィルタ係数のセットが各分類インデックスについて導出され、(3)ルマ成分についてフィルタリング決定が判定され、(4)クロマ成分についてフィルタリング決定が判定され、(5)フィルタパラメータ(例えば、係数及び決定)がシグナリングされる。JVET-T2001は、ITU-T H.265及びJEMにおいて規定されるデブロッキングフィルタ、SAOフィルタ、及びALFフィルタに一般的に基づくものとして説明され得るデブロッキングフィルタ、SAOフィルタ、及びALFフィルタを指定する。
JVET-T2001は、ITU-T H.266の事前公開バージョンと呼ばれ、したがって、VVCプロジェクトから得られるビデオ符号化規格のほぼ完成したドラフトであり、したがって、VVC規格の第1のバージョン(あるいは、VVC若しくはVVCバージョン1又はITU-H.266)と呼ばれることがあることに留意されたい。VVCプロジェクト中に、アーティファクト除去及び客観的品質改善の可能性を示す畳み込みニューラルネットワーク(CNN)ベースの技術が調査されたが、そのような技術をVVC規格に含めないことが決定されたことに留意されたい。しかしながら、CNNベースの技術は、現在、VVCの拡張及び/又は改善のために検討されている。いくつかのCNNベースの技術は、ポストフィルタリングに関連する。例えば、「AHG11:Content-adaptive neural network post-filter,26th Meeting of ISO/IEC JTC1/SC29/WG11 20-29 April 2022,Teleconference,document JVET-Z0082-v2」(本明細書ではJVET-Z0082と呼ばれる)は、コンテンツ適応型ニューラルネットワークベースのポストフィルタについて記載している。JVET-Z0082では、コンテンツ適応は、試験ビデオにNNポストフィルタをオーバーフィッティングすることによって達成されることに留意されたい。更に、JVET-Z0082におけるオーバーフィッティングプロセスの結果は、重み更新であることに留意されたい。JVET-Z0082は、ISO/IEC FDIS 15938-17.Information technology-Multimedia content description interface-Part 17:Compression of neural networks for multimedia content description and analysis and Test Model of Incremental Compression of Neural Networks for Multimedia Content Description and Analysis(INCTM),N0179.February 2022で、重み更新が符号化される場合を説明し、これらは、集合的に、MPEG NNR(ニューラルネットワーク表現)又はニューラルネットワーク符号化(NNC)規格と呼ばれることがある。JVET-Z0082は、符号化された重み更新が、NNRポストフィルタSEIメッセージとしてビデオビットストリーム内でシグナリングされる場合を更に説明する。「AHG9:NNR post-filter SEI message」,26th Meeting of ISO/IEC JTC1/SC29/WG11 20-29 April 2022,Teleconference,document JVET-Z0052-v1(本明細書ではJVET-Z0052と呼ばれる)は、JVET-Z0082によって利用されるNNRポストフィルタSEIメッセージを説明する。JVET-Z0082において説明されるNNポストフィルタの要素及びJVET-Z0052において説明されるNNRポストフィルタSEIメッセージは、「Additional SEI messages for VSEI(Draft 2)」27th Meeting of ISO/IEC JTC1/SC29/WG11 13-22 July 2022,Teleconference,document JVET-AA2006-v2(本明細書ではJVET-AA2006と呼ばれる)において採用された。JVET-AA2006は、符号化ビデオビットストリーム(VSEI)のための多用途の補足エンハンスメント情報メッセージを規定する。JVET-AA2006は、ニューラルネットワークポストフィルタ特性SEIメッセージのための、及びニューラルネットワークポストフィルタアクティブ化SEIメッセージのためのシンタックス及びセマンティクスを指定する。ニューラルネットワークポストフィルタ特性SEIメッセージは、後処理フィルタとして使用され得るニューラルネットワークを指定する。特定のピクチャのための指定された後処理フィルタの使用は、ニューラルネットワークポストフィルタアクティブ化SEIメッセージで示される。更に、「Information technology - MPEG video technologies - Part 7:Versatile supplemental enhancement information messages for coded video bitstreams,AMENDMENT 1:Additional SEI messages」(28th Meeting of ISO/IEC JTC1/SC29/WG5 9,November 2022,Mainz,DE)は、JVET-AB2006,m61498(本明細書ではJVET-AB2006と呼ばれる)を文書化している。JVET-AB2006は、以下で更に詳細に説明される。本明細書で説明する技術は、ニューラルネットワークポストフィルタメッセージをシグナリングするための技術を提供する。
本明細書で使用される式に関して、以下の算術演算子を使用してもよい。
更に、以下の数学関数を使用してもよい。
Log2(x)、底を2とするxの対数;
Log2(x)、底を2とするxの対数;
本明細書で使用される例示的なシンタックスに関して、論理演算子の以下の定義が適用されてもよい。
x&&y xとyとのブール論理「積」
x||y xとyとのブール論理「和」
!ブール論理「否」
x?y:z xが真であるか又は0に等しくない場合はyの値を評価し、そうでない場合はzの値を評価する。
x&&y xとyとのブール論理「積」
x||y xとyとのブール論理「和」
!ブール論理「否」
x?y:z xが真であるか又は0に等しくない場合はyの値を評価し、そうでない場合はzの値を評価する。
更に、以下の関係演算子が適用されてもよい。
更に、本明細書で使用されるシンタックス記述子において、以下の記述子が適用され得ることに留意されたい。
-b(8):任意のパターンのビット列(8ビット)を有するバイト。この記述子のパースプロセスは、関数read_bits(8)の戻り値によって指定される。
-f(n):左ビットを最初にして(左から右へ)書かれたnビットを使用する固定パターンビット列。この記述子のパースプロセスは、関数read_bits(n)の戻り値によって指定される。
-se(v):左ビットを最初にした、符号付き整数0次Exp-Golomb符号化シンタックス要素。
-tb(v):maxValビットまでを使用する短縮バイナリであり、maxValはシンタックス要素のセマンティクスで定義される。
-tu(v):maxValビットまでを使用する短縮ユナリであり、maxValはシンタックス要素のセマンティクスで定義される。
-u(n):nビットを使用する符号なし整数。シンタックステーブルにおいてnが「v」であるとき、ビット数は、他のシンタックス要素の値に依存して変化する。この記述子のパースプロセスは、最上位ビットが最初に書かれた符号なし整数のバイナリ表現として解釈される関数read_bits(n)の戻り値によって指定される。
-ue(v):左ビットを最初にした、符号なし整数0次Exp-Golomb符号化シンタックス要素。
-b(8):任意のパターンのビット列(8ビット)を有するバイト。この記述子のパースプロセスは、関数read_bits(8)の戻り値によって指定される。
-f(n):左ビットを最初にして(左から右へ)書かれたnビットを使用する固定パターンビット列。この記述子のパースプロセスは、関数read_bits(n)の戻り値によって指定される。
-se(v):左ビットを最初にした、符号付き整数0次Exp-Golomb符号化シンタックス要素。
-tb(v):maxValビットまでを使用する短縮バイナリであり、maxValはシンタックス要素のセマンティクスで定義される。
-tu(v):maxValビットまでを使用する短縮ユナリであり、maxValはシンタックス要素のセマンティクスで定義される。
-u(n):nビットを使用する符号なし整数。シンタックステーブルにおいてnが「v」であるとき、ビット数は、他のシンタックス要素の値に依存して変化する。この記述子のパースプロセスは、最上位ビットが最初に書かれた符号なし整数のバイナリ表現として解釈される関数read_bits(n)の戻り値によって指定される。
-ue(v):左ビットを最初にした、符号なし整数0次Exp-Golomb符号化シンタックス要素。
上述したように、ビデオコンテンツは、一連のピクチャからなるビデオ系列を含み、各ピクチャは、1つ以上の領域に分割され得る。JVET-T2001では、ピクチャの符号化表現は、AU内の特定のレイヤのVCL NALユニットを含み、ピクチャの全てのCTUを含む。例えば、図2を再び参照すると、Pic3の符号化表現は、3つの符号化スライスNALユニット(すなわち、Slice0NALユニット、Slice1NALユニット、及びSlice2NALユニット)中にカプセル化される。ビデオ符号化レイヤ(VCL)NALユニットという用語は、符号化スライスNALユニットの総称として使用され、すなわち、VCL NALは、全ての種類のスライスNALユニットを含む総称であることに留意されたい。上述し、以下で更に詳細に説明するように、NALユニットは、ビデオデータを復号するために使用されるメタデータをカプセル化してもよい。ビデオ系列を復号するために使用されるメタデータをカプセル化するNALユニットは、一般に、非VCL NALユニットと呼ばれる。したがって、JVET-T2001では、NALユニットは、VCL NALユニット又は非VCL NALユニットであり得る。VCL NALユニットは、特定のスライスを復号するために使用される情報を提供するスライスヘッダデータを含むことに留意されたい。したがって、JVET-T2001では、いくつかの場合ではメタデータと呼ばれることがある、ビデオデータを復号するために使用される情報は、非VCL NALユニットに含まれることに限定されない。JVET-T2001は、ピクチャユニット(PU)が、指定された分類ルールに従って互いに関連付けられ、復号順序で連続し、正確に1つの符号化ピクチャを含むNALユニットのセットであり、アクセスユニット(AU)が、異なるレイヤに属し、DPBからの出力について同じ時間に関連付けられた符号化ピクチャを含むPUのセットである場合を規定する。JVET-T2001は、更に、レイヤが、全てがレイヤ識別子の特定の値を有するVCL NALユニット及び関連する非VCL NALユニットのセットである場合を規定する。更に、JVET-T2001では、PUは、0個又は1つのPH NALユニットと、1つ以上のVCL NALユニットを含む1つの符号化ピクチャと、0個以上の他の非VCL NALユニットとからなる。更に、JVET-T2001では、符号化ビデオ系列(CVS)は、復号順序で、CVSS AUと、それに続く、CVSS AUである任意の以降のAUまでの全ての以降のAUを含むがそれを含まない、CVSS AUではない0個以上のAUとからなるAUのシーケンスであり、ここで、符号化ビデオ系列開始(CVSS)AUは、CVS中のレイヤごとにPUがあるAUであり、各存在するピクチャユニット中の符号化ピクチャは、符号化レイヤビデオ系列開始(CLVSS)ピクチャである。JVET-T2001では、符号化レイヤビデオ系列(CLVS)は、復号順序で、CLVSS PUと、それに続く、CLVSS PUである任意の以降のPUまでの全ての以降のPUを含むがそれを含まない、CLVSS PUではない0個以上のPUとからなる同じレイヤ内のPUのシーケンスである。すなわち、JVET-T2001では、ビットストリームが、1つ以上のCVSを形成するAUのシーケンスを含むものとして説明され得る。
マルチレイヤビデオ符号化は、ビデオプレゼンテーションが、ビデオデータのベースレイヤに対応するプレゼンテーションとして復号/表示され、ビデオデータのエンハンスメントレイヤに対応する1つ以上の追加のプレゼンテーションとして復号/表示されることを可能にする。例えば、ベースレイヤは、基本レベルの品質(例えば、高解像度レンダリング及び/又は30Hzフレームレート)を有するビデオプレゼンテーションが提示されることを可能にし得、エンハンスメントレイヤは、向上した品質レベル(例えば、超高解像度レンダリング及び/又は60Hzフレームレート)を有するビデオプレゼンテーションが提示されることを可能にし得る。エンハンスメントレイヤは、ベースレイヤを参照することによって符号化されてもよい。すなわち、例えば、エンハンスメントレイヤ中のピクチャは、ベースレイヤ中の1つ以上のピクチャ(そのスケーリングしたバージョンを含む)を参照することによって、(例えば、レイヤ間予測技術を使用して)符号化されてもよい。レイヤはまた、互いに独立して符号化され得ることに留意されたい。この場合、2つのレイヤ間にレイヤ間予測がないことがある。各NALユニットは、NALユニットが関連付けられるビデオデータのレイヤを示す識別子を含んでもよい。上述したように、サブビットストリーム抽出プロセスは、ピクチャの特定の関心領域のみを復号及び表示するために使用されてもよい。更に、サブビットストリーム抽出プロセスは、ビデオの特定のレイヤのみを復号及び表示するために使用されてもよい。サブビットストリーム抽出とは、受信ビットストリーム中のデータを破棄及び/又は変更することによって、準拠ビットストリーム又は適合ビットストリームを受信しているデバイスが、新たな準拠又は適合ビットストリームを形成するプロセスを指してもよい。例えば、サブビットストリーム抽出は、ビデオの特定の表現(例えば、高品質表現)に対応する新たな準拠ビットストリーム又は適合ビットストリームを形成するために使用されてもよい。
JVET-T2001では、ビデオ系列、GOP、ピクチャ、スライス、及びCTUの各々は、ビデオ符号化プロパティを記述するメタデータに関連付けられ得、いくつかの種類のメタデータは、非VCL NALユニット中にカプセル化され得る。JVET-T2001は、ビデオデータ及び/又はビデオ符号化プロパティを記述するために使用され得るパラメータセットを定義する。特に、JVET-T2001は、以下の4つの種類のパラメータセット、すなわち、ビデオパラメータセット(VPS)、シーケンスパラメータセット(SPS)、ピクチャパラメータセット(PPS)、及び適応パラメータセット(APS)を含み、ここで、SPSは0個以上のCVS全体に適用され、PPSは0個以上の符号化ピクチャ全体に適用され、APSは0個以上のスライスに適用され、VPSはSPSによって随意に参照され得る。PPSは、それを参照する個々の符号化ピクチャに適用される。JVET-T2001では、パラメータセットは、非VCL NALユニットとしてカプセル化されてもよく、及び/又はメッセージとしてシグナリングされてもよい。JVET-T2001はまた、非VCL NALユニットとしてカプセル化されるピクチャヘッダ(PH)を含む。JVET-T2001では、ピクチャヘッダは、符号化ピクチャの全てのスライスに適用される。JVET-T2001は、更に、復号能力情報(DCI)及び補足エンハンスメント情報(SEI)メッセージがシグナリングされることを可能にする。JVET-T2001では、DCI及びSEIメッセージは、復号、表示、又は他の目的に関連するプロセスを支援するが、DCI及びSEIメッセージは、復号プロセスに従ってルマ又はクロマサンプルを作成するために必要とされないことがある。JVET-T2001では、DCI及びSEIメッセージが、非VCL NALユニットを使用してビットストリーム中でシグナリングされてもよい。更に、DCI及びSEIメッセージは、ビットストリーム中に存在することによる以外の何らかの機構(すなわち、帯域外でシグナリングされる)によって伝達されてもよい。
図3は、複数のCVSを含むビットストリームの一例を示し、ここで、CVSはAUを含み、AUはピクチャユニットを含む。図3に示す例は、図2の例に示すスライスNALユニットをビットストリーム中にカプセル化する一例に対応する。図3に示す例では、Pic3のための対応するピクチャユニットは、3つのVCL NAL符号化スライスNALユニット、すなわち、Slice0NALユニット、Slice1NALユニット、及びSlice2NALユニットと、2つの非VCL NALユニット、すなわち、PPS NALユニット及びPH NALユニットとを含む。図3では、ヘッダはNALユニットヘッダである(すなわち、スライスヘッダと混同されるべきでない)ことに留意されたい。更に、図3では、図示されていない他の非VCL NALユニット、例えば、SPS NALユニット、VPS NALユニット、SEIメッセージNALユニットなどが、CVSに含まれてもよいことに留意されたい。更に、他の例では、Pic3を復号するために使用されるPPS NALユニットは、ビットストリーム中の他の場所、例えば、Pic0に対応するピクチャユニットに含まれてもよいか、又は外部機構によって与えられてもよいことに留意されたい。以下で更に詳細に説明するように、JVET-T2001では、PHシンタックス構造は、VCL NALユニットのスライスヘッダ中に、又は現在のPUのPH NALユニット中に存在し得る。
JVET-T2001は、NALユニットに含まれる生バイトシーケンスペイロード(RBSP)データ構造の種類を指定するNALユニットヘッダセマンティクスを定義する。表1は、JVET-T2001において規定されるNALユニットヘッダのシンタックスを示す。
JVET-T2001は、表1に示すそれぞれのシンタックス要素について以下の定義を規定する。
forbidden_zero_bitは0に等しいものとする。
nuh_reserved_zero_bitは0に等しいものとする。nuh_reserved_zero_bitの値1は、ITU-T|ISO/IECによって将来指定され得る。nuh_reserved_zero_bitの値は、この仕様のこのバージョンにおいて0に等しいことが必要とされるが、この仕様のこのバージョンに適合する復号装置は、1に等しいnuh_reserved_zero_bitの値がシンタックス中に現れることを可能にし、1に等しいnuh_reserved_zero_bitを有するNALユニットを無視する(すなわち、ビットストリームから除去し、破棄する)ものとする。
nuh_layer_idは、VCL NALユニットが属するレイヤの識別子、又は非VCL NALユニットが適用されるレイヤの識別子を指定する。nuh_layer_idの値は、両端値を含む、0~55の範囲内にあるものとする。nuh_layer_idの他の値は、ITU-T|ISO/IECによる将来の使用のために予約される。nuh_layer_idの値は、両端値を含む、0~55の範囲であることが必要とされるが、この仕様のこのバージョンでは、この仕様のこのバージョンに適合する復号装置は、55よりも大きいnuh_layer_idの値がシンタックス中に現れることを可能にし、55よりも大きいnuh_layer_idを有するNALユニットを無視する(すなわち、ビットストリームから除去し、破棄する)ものとする。
nuh_layer_idの値は、符号化ピクチャの全てのVCL NALユニットについて同じであるものとする。符号化ピクチャ又はPUのnuh_layer_idの値は、符号化ピクチャ又はPUのVCL NALユニットのnuh_layer_idの値である。
nal_unit_typeがPH_NUT、又はFD_NUTに等しいとき、nuh_layer_idは、関連するVCL NALユニットのnuh_layer_idに等しいものとする。
nal_unit_typeがEOS_NUTに等しいとき、nuh_layer_idは、CVS中に存在するレイヤのnuh_layer_id値のうちの1つに等しいものとする。
注-DCI、OPI、VPS、AUD、及びEOB NALユニットのnuh_layer_idの値は制約されない。
nuh_temporal_id_plus1マイナス1は、NALユニットに対する時間識別子を指定する。
nuh_temporal_id_plus1の値は、0に等しくないものとする。
変数TemporalIdは以下のように導出される。
TemporalId=nuh_temporal_id_plus1-1
nal_unit_typeが両端値を含むIDR_W_RADL~RSV_IRAP_11の範囲内にあるとき、TemporalIdは0に等しいものとする。nal_unit_typeがSTSA_NUTに等しく、vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]が1に等しいとき、TemporalIdは0よりも大きいものとする。
TemporalIdの値は、AUの全てのVCL NALユニットについて同じであるものとする。符号化ピクチャ、PU、又はAUのTemporalIdの値は、符号化ピクチャ、PU、又はAUのVCL NALユニットのTemporalIdの値である。サブレイヤ表現のTemporalIdの値は、サブレイヤ表現内の全てのVCL NALユニットのTemporalIdの最も大きい値である。
非VCL NALユニットのTemporalIdの値は、以下のように制約される。
-nal_unit_typeが、DCI_NUT、OPI_NUT、VPS_NUT、又はSPS_NUTに等しい場合、TemporalIdは0に等しいものとし、NALユニットを含むAUのTemporalIdは0に等しいものとする。
-そうではなく、nal_unit_typeがPH_NUTに等しい場合、TemporalIdは、NALユニットを含むPUのTemporalIdに等しいものとする。
-そうではなく、nal_unit_typeがEOS_NUT又はEOB_NUTに等しい場合、TemporalIdは0に等しいものとする。
-そうではなく、nal_unit_typeがAUD_NUT、FD_NUT、PREFIX_SEI_NUT、又はSUFFIX_SEI_NUTに等しい場合、
TemporalIdは、NALユニットを含むAUのTemporalIdに等しいものとする。
-そうではなく、nal_unit_typeがPPS_NUT、PREFIX_APS_NUT、又はSUFFIX_APS_NUTに等しいとき、TemporalIdは、NALユニットを含むPUのTemporalId以上であるものとする。
注-NALユニットが非VCL NALユニットであるとき、TemporalIdの値は、非VCL NALユニットが適用される全てのAUのTemporalId値の最小値に等しい。nal_unit_typeがPPS_NUT、PREFIX_APS_NUT、又はSUFFIX_APS_NUTに等しいとき、TemporalIdは、全てのPPS及びAPSがビットストリームの先頭に含まれてもよいので(例えば、それらが帯域外でトランスポートされ、受信機がそれらをビットストリームの先頭に配置するとき)、包含AUのTemporalId以上であり得、第1の符号化ピクチャは0に等しいTemporalIdを有する。
nal_unit_typeは、NALユニットタイプ、すなわち、表2において指定されるようなNALユニットに含まれるRBSPデータ構造の種類を指定する。
セマンティクスが指定されない、両端値を含むUNSPEC28~UNSPEC31の範囲内のnal_unit_typeを有するNALユニットは、この仕様において指定される復号プロセスに影響を及ぼさないものとする。
注-UNSPEC_28~UNSPEC_31の範囲内のNALユニットタイプは、適用例によって判定されるように使用され得る。nal_unit_typeのこれらの値についての復号プロセスは、この仕様において指定されない。異なる適用例は異なる目的のためにこれらのNALユニットタイプを使用し得るので、これらのnal_unit_type値を有するNALユニットを生成する符号化装置の設計において、及びこれらのnal_unit_type値を有するNALユニットのコンテンツを解釈する復号装置の設計において、特定の注意が払われることが予想される。この仕様は、これらの値の管理を定義しない。これらのnal_unit_type値は、使用の「衝突」(すなわち、同じnal_unit_type値についてのNALユニットコンテンツの意味の異なる定義)が重要でない又は不可能であるか、あるいは管理される、例えば、制御アプリケーション若しくはトランスポート仕様において、又はビットストリームが配信される環境を制御することによって定義又は管理される、コンテキストにおける使用にのみ好適であり得る。
ビットストリームのDU中のデータ量を判定すること以外の目的のために、復号装置は、nal_unit_typeの予約済み値を使用する全てのNALユニットのコンテンツを無視する(ビットストリームから除去し、破棄する)ものとする。注-この要件は、この仕様に対する互換性のある拡張の将来の定義を可能にする。
注-クリーンランダムアクセス(CRA)ピクチャは、ビットストリーム中に存在する関連するRASLピクチャ又はRADLピクチャを有し得る。注-IDR_N_LPに等しいnal_unit_typeを有する瞬時復号リフレッシュ(IDR)ピクチャは、ビットストリーム中に存在する関連するリーディングピクチャを有しない。IDR_W_RADLに等しいnal_unit_typeを有するIDRピクチャは、ビットストリーム中に存在する関連するRASLピクチャを有さないが、ビットストリーム中に関連するRADLピクチャを有し得る。
nal_unit_typeの値は、サブピクチャの全てのVCL NALユニットについて同じであるものとする。サブピクチャは、サブピクチャのVCL NALユニットと同じNALユニットタイプを有するものとして参照される。
任意の特定のピクチャのVCL NALユニットについて、以下が適用される。
-pps_mixed_nalu_types_in_pic_flagが0に等しい場合、nal_unit_typeの値は、ピクチャの全てのVCL NALユニットについて同じであるものし、
ピクチャ又はPUは、ピクチャ又はPUの符号化スライスNALユニットと同じNALユニットタイプを有するものとして参照される。
-そうでない(pps_mixed_nalu_types_in_pic_flagが1に等しい)場合、以下の制約の全てが適用される。
-ピクチャは、少なくとも2つのサブピクチャを有するものとする。
-ピクチャのVCL NALユニットは、2つ以上の異なるnal_unit_type値を有するものとする。
-GDR_NUTに等しいnal_unit_typeを有するピクチャのVCL NALユニットがないものとする。
-ピクチャのVCL NALユニットが、IDR_W_RADL、IDR_N_LP、又はCRA_NUTに等しいnalUnitTypeAに等しいnal_unit_typeを有するとき、ピクチャの他のVCL NALユニットは全て、nalUnitTypeA又はTRAIL_NUTに等しいnal_unit_typeを有するものとする。
nal_unit_typeの値は、IRAP又はGDR AU中の全てのピクチャについて同じであるものとする。
sps_video_parameter_set_idが0よりも大きいとき、vps_max_tid_il_ref_pics_plus1[i][j]は、GeneralLayerIdx[nuh_layer_id]に等しいj、及び両端値を含むj+1~vps_max_layers_minus1の範囲内のiの任意の値について0に等しく、pps_mixed_nalu_types_in_pic_flagは1に等しく、nal_unit_typeの値は、IDR_W_RADL、IDR_N_LP、又はCRA_NUTに等しくないものとする。
ビットストリーム適合性の要件は、以下の制約が適用されることである。
-ピクチャがIRAPピクチャのリーディングピクチャであるとき、それはRADL又はRASLピクチャであるものとする。
-サブピクチャがIRAPサブピクチャのリーディングサブピクチャであるとき、それはRADL又はRASLサブピクチャであるものとする。
-ピクチャがIRAPピクチャのリーディングピクチャでないとき、それはRADL又はRASLピクチャでないものとする。
-サブピクチャがIRAPサブピクチャのリーディングサブピクチャでないとき、それはRADL又はRASLサブピクチャでないものとする。
-IDRピクチャに関連付けられたRASLピクチャは、ビットストリーム中に存在しないものとする。
-IDRサブピクチャに関連付けられたRASLサブピクチャは、ビットストリーム中に存在しないものとする。
-IDR_N_LPに等しいnal_unit_typeを有するIDRピクチャに関連付けられたRADLピクチャは、ビットストリーム中に存在しないものとする。
注-IRAP AUの前の全てのPUを破棄することによってIRAP AUの位置においてランダムアクセスを実行すること(並びに、復号順序でIRAP AU及び全ての以降のAU内の非RASLピクチャを正しく復号すること)は、各パラメータセットが参照されるときに(ビットストリーム中で、又はこの仕様において指定されない外部手段によって)利用可能であることを条件として、可能である。
-IDR_N_LPに等しいnal_unit_typeを有するIDRサブピクチャに関連付けられたRADLサブピクチャは、ビットストリーム中に存在しないものとする。
-layerIdに等しいnuh_layer_idを有するIRAPピクチャに復号順序で先行する、特定の値layerIdに等しいnuh_layer_idを有する、任意のピクチャは、出力順序でIRAPピクチャに先行するものとし、出力順序でIRAPピクチャに関連付けられた任意のRADLピクチャに先行するものとする。
-layerIdに等しいnuh_layer_id及びsubpicIdxに等しいサブピクチャインデックスを有するIRAPサブピクチャに復号順序で先行する、特定の値layerIdに等しいnuh_layer_id及び特定の値subpicIdxに等しいサブピクチャインデックスを有する、任意のサブピクチャは、出力順序で、IRAPサブピクチャ及びその関連する全てのRADLサブピクチャに先行するものとする。
-layerIdに等しいnuh_layer_idを有するリカバリポイントピクチャに復号順序で先行する、特定の値layerIdに等しいnuh_layer_idを有する、任意のピクチャは、出力順序でリカバリポイントピクチャに先行するものとする。
-リカバリポイントピクチャ中のlayerIdに等しいnuh_layer_id及びsubpicIdxに等しいサブピクチャインデックスを有するサブピクチャに復号順序で先行する、特定の値layerIdに等しいnuh_layer_id及び特定の値subpicIdxに等しいサブピクチャインデックスを有する、任意のサブピクチャは、出力順序でリカバリポイントピクチャ中のそのサブピクチャに先行するものとする。
-CRAピクチャに関連付けられた任意のRASLピクチャは、出力順序でCRAピクチャに関連付けられた任意のRADLピクチャに先行するものとする。
-CRAサブピクチャに関連付けられた任意のRASLサブピクチャは、出力順序でCRAサブピクチャに関連付けられた任意のRADLサブピクチャに先行するものとする。
-特定の値layerIdに等しいnuh_layer_idを有し、CRAピクチャに関連付けられた任意のRASLピクチャは、そのCRAピクチャに復号順序で先行する、layerIdに等しいnuh_layer_idを有する任意のIRAPピクチャ又はGDRピクチャに出力順序で後続するものとする。
-CRAサブピクチャに関連付けられた、特定の値layerIdに等しいnuh_layer_id及び特定の値subpicIdxに等しいサブピクチャインデックスを有する、任意のRASLサブピクチャは、復号順序でCRAサブピクチャに先行する、layerIdに等しいnuh_layer_id及びsubpicIdxに等しいサブピクチャインデックスを有する、任意のIRAPサブピクチャ又はGDRサブピクチャに出力順序で続くものとする。
-sps_field_seq_flagが0に等しい場合、以下が適用される:特定の値layerIdに等しいnuh_layer_idを有する現在のピクチャが、IRAPピクチャに関連付けられたリーディングピクチャであるとき、それは、復号順序で、同じIRAPピクチャに関連付けられた全ての非リーディングピクチャに先行するものとする。そうでない(sps_field_seq_flagが1に等しい)場合、picA及びpicBを、それぞれ、復号順序で、IRAPピクチャに関連付けられた最初の及び最後のリーディングピクチャとすると、復号順序でpicAに先行するlayerIdに等しいnuh_layer_idを有する多くても1つの非リーディングピクチャが存在するものとし、復号順序でpicAとpicBとの間にlayerIdに等しいnuh_layer_idを有する非リーディングピクチャがないものとする。
-sps_field_seq_flagが0に等しい場合、以下が適用される:特定の値layerIdに等しいnuh_layer_id及び特定の値subpicIdxに等しいサブピクチャインデックスを有する現在のサブピクチャが、IRAPサブピクチャに関連付けられたリーディングサブピクチャであるとき、それは、復号順序で、同じIRAPサブピクチャに関連付けられた全ての非リーディングサブピクチャに先行するものとする。そうでない(sps_field_seq_flagが1に等しい)場合、subpicA及びsubpicBを、それぞれ、復号順序で、IRAPサブピクチャに関連付けられた最初の及び最後のリーディングサブピクチャとすると、復号順序でsubpicAに先行する、layerIdに等しいnuh_layer_id及びsubpicIdxに等しいサブピクチャインデックスを有する多くても1つの非リーディングサブピクチャが存在するものとし、復号順序でpicAとpicBとの間に、layerIdに等しいnuh_layer_id及びsubpicIdxに等しいサブピクチャインデックスを有する非リーディングピクチャがないものとする。
forbidden_zero_bitは0に等しいものとする。
nuh_reserved_zero_bitは0に等しいものとする。nuh_reserved_zero_bitの値1は、ITU-T|ISO/IECによって将来指定され得る。nuh_reserved_zero_bitの値は、この仕様のこのバージョンにおいて0に等しいことが必要とされるが、この仕様のこのバージョンに適合する復号装置は、1に等しいnuh_reserved_zero_bitの値がシンタックス中に現れることを可能にし、1に等しいnuh_reserved_zero_bitを有するNALユニットを無視する(すなわち、ビットストリームから除去し、破棄する)ものとする。
nuh_layer_idは、VCL NALユニットが属するレイヤの識別子、又は非VCL NALユニットが適用されるレイヤの識別子を指定する。nuh_layer_idの値は、両端値を含む、0~55の範囲内にあるものとする。nuh_layer_idの他の値は、ITU-T|ISO/IECによる将来の使用のために予約される。nuh_layer_idの値は、両端値を含む、0~55の範囲であることが必要とされるが、この仕様のこのバージョンでは、この仕様のこのバージョンに適合する復号装置は、55よりも大きいnuh_layer_idの値がシンタックス中に現れることを可能にし、55よりも大きいnuh_layer_idを有するNALユニットを無視する(すなわち、ビットストリームから除去し、破棄する)ものとする。
nuh_layer_idの値は、符号化ピクチャの全てのVCL NALユニットについて同じであるものとする。符号化ピクチャ又はPUのnuh_layer_idの値は、符号化ピクチャ又はPUのVCL NALユニットのnuh_layer_idの値である。
nal_unit_typeがPH_NUT、又はFD_NUTに等しいとき、nuh_layer_idは、関連するVCL NALユニットのnuh_layer_idに等しいものとする。
nal_unit_typeがEOS_NUTに等しいとき、nuh_layer_idは、CVS中に存在するレイヤのnuh_layer_id値のうちの1つに等しいものとする。
注-DCI、OPI、VPS、AUD、及びEOB NALユニットのnuh_layer_idの値は制約されない。
nuh_temporal_id_plus1マイナス1は、NALユニットに対する時間識別子を指定する。
nuh_temporal_id_plus1の値は、0に等しくないものとする。
変数TemporalIdは以下のように導出される。
TemporalId=nuh_temporal_id_plus1-1
nal_unit_typeが両端値を含むIDR_W_RADL~RSV_IRAP_11の範囲内にあるとき、TemporalIdは0に等しいものとする。nal_unit_typeがSTSA_NUTに等しく、vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]が1に等しいとき、TemporalIdは0よりも大きいものとする。
TemporalIdの値は、AUの全てのVCL NALユニットについて同じであるものとする。符号化ピクチャ、PU、又はAUのTemporalIdの値は、符号化ピクチャ、PU、又はAUのVCL NALユニットのTemporalIdの値である。サブレイヤ表現のTemporalIdの値は、サブレイヤ表現内の全てのVCL NALユニットのTemporalIdの最も大きい値である。
非VCL NALユニットのTemporalIdの値は、以下のように制約される。
-nal_unit_typeが、DCI_NUT、OPI_NUT、VPS_NUT、又はSPS_NUTに等しい場合、TemporalIdは0に等しいものとし、NALユニットを含むAUのTemporalIdは0に等しいものとする。
-そうではなく、nal_unit_typeがPH_NUTに等しい場合、TemporalIdは、NALユニットを含むPUのTemporalIdに等しいものとする。
-そうではなく、nal_unit_typeがEOS_NUT又はEOB_NUTに等しい場合、TemporalIdは0に等しいものとする。
-そうではなく、nal_unit_typeがAUD_NUT、FD_NUT、PREFIX_SEI_NUT、又はSUFFIX_SEI_NUTに等しい場合、
TemporalIdは、NALユニットを含むAUのTemporalIdに等しいものとする。
-そうではなく、nal_unit_typeがPPS_NUT、PREFIX_APS_NUT、又はSUFFIX_APS_NUTに等しいとき、TemporalIdは、NALユニットを含むPUのTemporalId以上であるものとする。
注-NALユニットが非VCL NALユニットであるとき、TemporalIdの値は、非VCL NALユニットが適用される全てのAUのTemporalId値の最小値に等しい。nal_unit_typeがPPS_NUT、PREFIX_APS_NUT、又はSUFFIX_APS_NUTに等しいとき、TemporalIdは、全てのPPS及びAPSがビットストリームの先頭に含まれてもよいので(例えば、それらが帯域外でトランスポートされ、受信機がそれらをビットストリームの先頭に配置するとき)、包含AUのTemporalId以上であり得、第1の符号化ピクチャは0に等しいTemporalIdを有する。
nal_unit_typeは、NALユニットタイプ、すなわち、表2において指定されるようなNALユニットに含まれるRBSPデータ構造の種類を指定する。
セマンティクスが指定されない、両端値を含むUNSPEC28~UNSPEC31の範囲内のnal_unit_typeを有するNALユニットは、この仕様において指定される復号プロセスに影響を及ぼさないものとする。
注-UNSPEC_28~UNSPEC_31の範囲内のNALユニットタイプは、適用例によって判定されるように使用され得る。nal_unit_typeのこれらの値についての復号プロセスは、この仕様において指定されない。異なる適用例は異なる目的のためにこれらのNALユニットタイプを使用し得るので、これらのnal_unit_type値を有するNALユニットを生成する符号化装置の設計において、及びこれらのnal_unit_type値を有するNALユニットのコンテンツを解釈する復号装置の設計において、特定の注意が払われることが予想される。この仕様は、これらの値の管理を定義しない。これらのnal_unit_type値は、使用の「衝突」(すなわち、同じnal_unit_type値についてのNALユニットコンテンツの意味の異なる定義)が重要でない又は不可能であるか、あるいは管理される、例えば、制御アプリケーション若しくはトランスポート仕様において、又はビットストリームが配信される環境を制御することによって定義又は管理される、コンテキストにおける使用にのみ好適であり得る。
ビットストリームのDU中のデータ量を判定すること以外の目的のために、復号装置は、nal_unit_typeの予約済み値を使用する全てのNALユニットのコンテンツを無視する(ビットストリームから除去し、破棄する)ものとする。注-この要件は、この仕様に対する互換性のある拡張の将来の定義を可能にする。
nal_unit_typeの値は、サブピクチャの全てのVCL NALユニットについて同じであるものとする。サブピクチャは、サブピクチャのVCL NALユニットと同じNALユニットタイプを有するものとして参照される。
任意の特定のピクチャのVCL NALユニットについて、以下が適用される。
-pps_mixed_nalu_types_in_pic_flagが0に等しい場合、nal_unit_typeの値は、ピクチャの全てのVCL NALユニットについて同じであるものし、
ピクチャ又はPUは、ピクチャ又はPUの符号化スライスNALユニットと同じNALユニットタイプを有するものとして参照される。
-そうでない(pps_mixed_nalu_types_in_pic_flagが1に等しい)場合、以下の制約の全てが適用される。
-ピクチャは、少なくとも2つのサブピクチャを有するものとする。
-ピクチャのVCL NALユニットは、2つ以上の異なるnal_unit_type値を有するものとする。
-GDR_NUTに等しいnal_unit_typeを有するピクチャのVCL NALユニットがないものとする。
-ピクチャのVCL NALユニットが、IDR_W_RADL、IDR_N_LP、又はCRA_NUTに等しいnalUnitTypeAに等しいnal_unit_typeを有するとき、ピクチャの他のVCL NALユニットは全て、nalUnitTypeA又はTRAIL_NUTに等しいnal_unit_typeを有するものとする。
nal_unit_typeの値は、IRAP又はGDR AU中の全てのピクチャについて同じであるものとする。
sps_video_parameter_set_idが0よりも大きいとき、vps_max_tid_il_ref_pics_plus1[i][j]は、GeneralLayerIdx[nuh_layer_id]に等しいj、及び両端値を含むj+1~vps_max_layers_minus1の範囲内のiの任意の値について0に等しく、pps_mixed_nalu_types_in_pic_flagは1に等しく、nal_unit_typeの値は、IDR_W_RADL、IDR_N_LP、又はCRA_NUTに等しくないものとする。
ビットストリーム適合性の要件は、以下の制約が適用されることである。
-ピクチャがIRAPピクチャのリーディングピクチャであるとき、それはRADL又はRASLピクチャであるものとする。
-サブピクチャがIRAPサブピクチャのリーディングサブピクチャであるとき、それはRADL又はRASLサブピクチャであるものとする。
-ピクチャがIRAPピクチャのリーディングピクチャでないとき、それはRADL又はRASLピクチャでないものとする。
-サブピクチャがIRAPサブピクチャのリーディングサブピクチャでないとき、それはRADL又はRASLサブピクチャでないものとする。
-IDRピクチャに関連付けられたRASLピクチャは、ビットストリーム中に存在しないものとする。
-IDRサブピクチャに関連付けられたRASLサブピクチャは、ビットストリーム中に存在しないものとする。
-IDR_N_LPに等しいnal_unit_typeを有するIDRピクチャに関連付けられたRADLピクチャは、ビットストリーム中に存在しないものとする。
注-IRAP AUの前の全てのPUを破棄することによってIRAP AUの位置においてランダムアクセスを実行すること(並びに、復号順序でIRAP AU及び全ての以降のAU内の非RASLピクチャを正しく復号すること)は、各パラメータセットが参照されるときに(ビットストリーム中で、又はこの仕様において指定されない外部手段によって)利用可能であることを条件として、可能である。
-IDR_N_LPに等しいnal_unit_typeを有するIDRサブピクチャに関連付けられたRADLサブピクチャは、ビットストリーム中に存在しないものとする。
-layerIdに等しいnuh_layer_idを有するIRAPピクチャに復号順序で先行する、特定の値layerIdに等しいnuh_layer_idを有する、任意のピクチャは、出力順序でIRAPピクチャに先行するものとし、出力順序でIRAPピクチャに関連付けられた任意のRADLピクチャに先行するものとする。
-layerIdに等しいnuh_layer_id及びsubpicIdxに等しいサブピクチャインデックスを有するIRAPサブピクチャに復号順序で先行する、特定の値layerIdに等しいnuh_layer_id及び特定の値subpicIdxに等しいサブピクチャインデックスを有する、任意のサブピクチャは、出力順序で、IRAPサブピクチャ及びその関連する全てのRADLサブピクチャに先行するものとする。
-layerIdに等しいnuh_layer_idを有するリカバリポイントピクチャに復号順序で先行する、特定の値layerIdに等しいnuh_layer_idを有する、任意のピクチャは、出力順序でリカバリポイントピクチャに先行するものとする。
-リカバリポイントピクチャ中のlayerIdに等しいnuh_layer_id及びsubpicIdxに等しいサブピクチャインデックスを有するサブピクチャに復号順序で先行する、特定の値layerIdに等しいnuh_layer_id及び特定の値subpicIdxに等しいサブピクチャインデックスを有する、任意のサブピクチャは、出力順序でリカバリポイントピクチャ中のそのサブピクチャに先行するものとする。
-CRAピクチャに関連付けられた任意のRASLピクチャは、出力順序でCRAピクチャに関連付けられた任意のRADLピクチャに先行するものとする。
-CRAサブピクチャに関連付けられた任意のRASLサブピクチャは、出力順序でCRAサブピクチャに関連付けられた任意のRADLサブピクチャに先行するものとする。
-特定の値layerIdに等しいnuh_layer_idを有し、CRAピクチャに関連付けられた任意のRASLピクチャは、そのCRAピクチャに復号順序で先行する、layerIdに等しいnuh_layer_idを有する任意のIRAPピクチャ又はGDRピクチャに出力順序で後続するものとする。
-CRAサブピクチャに関連付けられた、特定の値layerIdに等しいnuh_layer_id及び特定の値subpicIdxに等しいサブピクチャインデックスを有する、任意のRASLサブピクチャは、復号順序でCRAサブピクチャに先行する、layerIdに等しいnuh_layer_id及びsubpicIdxに等しいサブピクチャインデックスを有する、任意のIRAPサブピクチャ又はGDRサブピクチャに出力順序で続くものとする。
-sps_field_seq_flagが0に等しい場合、以下が適用される:特定の値layerIdに等しいnuh_layer_idを有する現在のピクチャが、IRAPピクチャに関連付けられたリーディングピクチャであるとき、それは、復号順序で、同じIRAPピクチャに関連付けられた全ての非リーディングピクチャに先行するものとする。そうでない(sps_field_seq_flagが1に等しい)場合、picA及びpicBを、それぞれ、復号順序で、IRAPピクチャに関連付けられた最初の及び最後のリーディングピクチャとすると、復号順序でpicAに先行するlayerIdに等しいnuh_layer_idを有する多くても1つの非リーディングピクチャが存在するものとし、復号順序でpicAとpicBとの間にlayerIdに等しいnuh_layer_idを有する非リーディングピクチャがないものとする。
-sps_field_seq_flagが0に等しい場合、以下が適用される:特定の値layerIdに等しいnuh_layer_id及び特定の値subpicIdxに等しいサブピクチャインデックスを有する現在のサブピクチャが、IRAPサブピクチャに関連付けられたリーディングサブピクチャであるとき、それは、復号順序で、同じIRAPサブピクチャに関連付けられた全ての非リーディングサブピクチャに先行するものとする。そうでない(sps_field_seq_flagが1に等しい)場合、subpicA及びsubpicBを、それぞれ、復号順序で、IRAPサブピクチャに関連付けられた最初の及び最後のリーディングサブピクチャとすると、復号順序でsubpicAに先行する、layerIdに等しいnuh_layer_id及びsubpicIdxに等しいサブピクチャインデックスを有する多くても1つの非リーディングサブピクチャが存在するものとし、復号順序でpicAとpicBとの間に、layerIdに等しいnuh_layer_id及びsubpicIdxに等しいサブピクチャインデックスを有する非リーディングピクチャがないものとする。
表2において提供されるように、NALユニットは、補足エンハンスメント情報(SEI)シンタックス構造を含み得る。表3及び表4は、JVET-T2001において規定される補足エンハンスメント情報(SEI)シンタックス構造を示す。
表3及び表4に関して、JVET-T2001は、以下のセマンティクスを規定する。
各SEIメッセージは、SEIメッセージペイロードの種類payloadType及びサイズpayloadSizeを指定する変数からなる。SEIメッセージペイロードが指定される。導出されたSEIメッセージペイロードサイズpayloadSizeは、バイト単位で指定され、SEIメッセージペイロード中のRBSPバイトの数に等しいものとする。
注-SEIメッセージを含むNALユニットバイトシーケンスは、(emulation_prevention_three_byteシンタックス要素によって表される)1つ以上のエミュレーション防止バイトを含み得る。SEIメッセージのペイロードサイズはRBSPバイトで指定されるので、エミュレーション防止バイトの量は、SEIペイロードのサイズpayloadSizeに含まれない。
payload_type_byteは、SEIメッセージのペイロードタイプのバイトである。
payload_size_byteは、SEIメッセージのペイロードサイズのバイトである。
各SEIメッセージは、SEIメッセージペイロードの種類payloadType及びサイズpayloadSizeを指定する変数からなる。SEIメッセージペイロードが指定される。導出されたSEIメッセージペイロードサイズpayloadSizeは、バイト単位で指定され、SEIメッセージペイロード中のRBSPバイトの数に等しいものとする。
注-SEIメッセージを含むNALユニットバイトシーケンスは、(emulation_prevention_three_byteシンタックス要素によって表される)1つ以上のエミュレーション防止バイトを含み得る。SEIメッセージのペイロードサイズはRBSPバイトで指定されるので、エミュレーション防止バイトの量は、SEIペイロードのサイズpayloadSizeに含まれない。
payload_type_byteは、SEIメッセージのペイロードタイプのバイトである。
payload_size_byteは、SEIメッセージのペイロードサイズのバイトである。
JVET-T2001はペイロードタイプを定義し、参照により本明細書に組み込まれ、JVET-Y2006として参照される、「Additional SEI messages for VSEI(Draft 6)」25th Meeting of ISO/IEC JTC1/SC29/WG11 12-21 January 2022,Teleconference,document JVET-Y2006-v1は、追加のペイロードタイプを定義することに留意されたい。表5は、sei_payload()シンタックス構造を概略的に示す。すなわち、表5は、sei_payload()シンタックス構造を示すが、簡潔にするために、ペイロードの可能な種類の全てが表5に含まれているわけではない。
表5に関して、JVET-T2001は、以下のセマンティクスを規定する。
sei_reserved_payload_extension_dataは、この仕様のこのバージョンに適合するビットストリーム中に存在しないものとする。しかしながら、この仕様のこのバージョンに適合する復号装置は、sei_reserved_payload_extension_dataの存在及び値を無視するものとする。存在するとき、sei_reserved_payload_extension_dataのビット単位の長さは、8*payloadSize-nEarlierBits-nPayloadZeroBits-1に等しく、ここで、nEarlierBitsは、sei_reserved_payload_extension_dataシンタックス要素に先行するsei_payload()シンタックス構造中のビットの数であり、nPayloadZeroBitsは、sei_payload()シンタックス構造の末尾におけるsei_payload_bit_equal_to_zeroシンタックス要素の数である。
SEIメッセージシンタックス構造(例えば、buffering_period()シンタックス構造)のパース後にmore_data_in_payload()が真であり、nPayloadZeroBitsが7に等しくない場合、PayloadBitsは、8*payloadSize-nPayloadZeroBits-1に等しく設定され、そうでない場合、PayloadBitsは8*payloadSizeに等しく設定される。
payload_bit_equal_to_oneは1に等しいものとする。
payload_bit_equal_to_zeroは0に等しいものとする。
注-同じ値のpayloadTypeを有するSEIメッセージは、それらがプレフィックスSEI NALユニットに含まれるのかサフィックスSEI NALユニットに含まれるのかにかかわらず、概念的に同じSEIメッセージである。
注-この仕様及びVSEI仕様(ITU-T H.274|ISO/IEC 23002-7)において指定されるSEIメッセージの場合、payloadType値は、AVC(Rec.ITU-T H.264|ISO/IEC 14496-10)及びHEVC(Rec.ITU-T H.265|ISO/IEC 23008-2)において指定される同様のSEIメッセージと整合される。
各SEIメッセージについてのセマンティクス及び持続範囲は、各特定のSEIメッセージについてのセマンティクス仕様において指定される。
注-SEIメッセージの持続性情報は、情報として要約されている。
sei_reserved_payload_extension_dataは、この仕様のこのバージョンに適合するビットストリーム中に存在しないものとする。しかしながら、この仕様のこのバージョンに適合する復号装置は、sei_reserved_payload_extension_dataの存在及び値を無視するものとする。存在するとき、sei_reserved_payload_extension_dataのビット単位の長さは、8*payloadSize-nEarlierBits-nPayloadZeroBits-1に等しく、ここで、nEarlierBitsは、sei_reserved_payload_extension_dataシンタックス要素に先行するsei_payload()シンタックス構造中のビットの数であり、nPayloadZeroBitsは、sei_payload()シンタックス構造の末尾におけるsei_payload_bit_equal_to_zeroシンタックス要素の数である。
SEIメッセージシンタックス構造(例えば、buffering_period()シンタックス構造)のパース後にmore_data_in_payload()が真であり、nPayloadZeroBitsが7に等しくない場合、PayloadBitsは、8*payloadSize-nPayloadZeroBits-1に等しく設定され、そうでない場合、PayloadBitsは8*payloadSizeに等しく設定される。
payload_bit_equal_to_oneは1に等しいものとする。
payload_bit_equal_to_zeroは0に等しいものとする。
注-同じ値のpayloadTypeを有するSEIメッセージは、それらがプレフィックスSEI NALユニットに含まれるのかサフィックスSEI NALユニットに含まれるのかにかかわらず、概念的に同じSEIメッセージである。
注-この仕様及びVSEI仕様(ITU-T H.274|ISO/IEC 23002-7)において指定されるSEIメッセージの場合、payloadType値は、AVC(Rec.ITU-T H.264|ISO/IEC 14496-10)及びHEVC(Rec.ITU-T H.265|ISO/IEC 23008-2)において指定される同様のSEIメッセージと整合される。
各SEIメッセージについてのセマンティクス及び持続範囲は、各特定のSEIメッセージについてのセマンティクス仕様において指定される。
注-SEIメッセージの持続性情報は、情報として要約されている。
JVET-T2001は更に、以下を規定する。
Rec.ITU-T H.274|ISO/IEC 23002-7において指定される[表5]において識別されるシンタックス構造を有するSEIメッセージは、この仕様によって指定されるビットストリームと共に使用されてもよい。
任意の特定のRec.ITU-T H.274|ISO/IEC 23002-7 SEIメッセージが、この仕様によって指定されるビットストリームに含まれるとき、SEIペイロードシンタックスは、[表5]において指定されるsei_payload()シンタックス構造に含まれるものとし、[表5]において指定されるpayloadType値を使用するものとし、更に、その特定のSEIメッセージについてこのアネックスにおいて指定される任意のSEIメッセージ固有の制約が適用されるものとする。
PayloadBitsの値は、上記で指定されたように、Rec.ITU-T H.274|ISO/IEC 23002-7において指定されたSEIメッセージシンタックス構造のパーサーに渡される。
Rec.ITU-T H.274|ISO/IEC 23002-7において指定される[表5]において識別されるシンタックス構造を有するSEIメッセージは、この仕様によって指定されるビットストリームと共に使用されてもよい。
任意の特定のRec.ITU-T H.274|ISO/IEC 23002-7 SEIメッセージが、この仕様によって指定されるビットストリームに含まれるとき、SEIペイロードシンタックスは、[表5]において指定されるsei_payload()シンタックス構造に含まれるものとし、[表5]において指定されるpayloadType値を使用するものとし、更に、その特定のSEIメッセージについてこのアネックスにおいて指定される任意のSEIメッセージ固有の制約が適用されるものとする。
PayloadBitsの値は、上記で指定されたように、Rec.ITU-T H.274|ISO/IEC 23002-7において指定されたSEIメッセージシンタックス構造のパーサーに渡される。
上述したように、JVET-AB2006は、NNポストフィルタ補足エンハンスメント情報メッセージを規定する。特に、JVET-AB2006は、ニューラルネットワークポストフィルタ特性SEIメッセージ(payloadType==210)及びニューラルネットワークポストフィルタアクティブ化SEIメッセージ(payloadType==211)を規定する。表6は、JVET-AB2006において規定されるニューラルネットワークポストフィルタ特性SEIメッセージのシンタックスを示す。ニューラルネットワークポストフィルタ特性SEIメッセージはNNPFC SEIと呼ばれることがあることに留意されたい。
表6に関して、JVET-AB2006は、以下のセマンティクスを規定する。
ニューラルネットワークポストフィルタ特性(neural-network post-filter characteristics、NNPFC)SEIメッセージは、後処理フィルタとして使用され得るニューラルネットワークを指定する。特定のピクチャのための指定された後処理フィルタの使用は、ニューラルネットワークポストフィルタアクティブ化SEIメッセージで示される。
このSEIメッセージの使用は、以下の変数の定義を必要とする。
-本明細書ではそれぞれCroppedWidth及びCroppedHeightによって示される、ルマサンプルのユニットにおけるクロップされた復号出力ピクチャの幅及び高さ。
-後処理フィルタのための入力として使用される、両端値を含む0~numInputPics-1の範囲内のidxを有するクロップされた復号出力ピクチャの、存在するとき、ルマサンプル配列CroppedYPic[idx]並びにクロマサンプル配列CroppedCbPic[idx]及びCroppedCrPic[idx]。
-クロップされた復号出力ピクチャのルマサンプル配列のビット深度BitDepthY。
-クロップされた復号出力ピクチャの、もしあれば、クロマサンプル配列のビット深度BitDepthC。
-本明細書ではChromaFormatIdcによって示されるクロマフォーマットインジケータ。
-nnpfc_auxiliary_inp_idcが1に等しいとき、フィルタリング強度制御値StrengthControlValは、両端値を含む0~1の範囲内の実数であるものとする。
変数SubWidthC及びSubHeightCは、表7によって指定されるようにChromaFormatIdcから導出される。
ニューラルネットワークポストフィルタ特性(neural-network post-filter characteristics、NNPFC)SEIメッセージは、後処理フィルタとして使用され得るニューラルネットワークを指定する。特定のピクチャのための指定された後処理フィルタの使用は、ニューラルネットワークポストフィルタアクティブ化SEIメッセージで示される。
このSEIメッセージの使用は、以下の変数の定義を必要とする。
-本明細書ではそれぞれCroppedWidth及びCroppedHeightによって示される、ルマサンプルのユニットにおけるクロップされた復号出力ピクチャの幅及び高さ。
-後処理フィルタのための入力として使用される、両端値を含む0~numInputPics-1の範囲内のidxを有するクロップされた復号出力ピクチャの、存在するとき、ルマサンプル配列CroppedYPic[idx]並びにクロマサンプル配列CroppedCbPic[idx]及びCroppedCrPic[idx]。
-クロップされた復号出力ピクチャのルマサンプル配列のビット深度BitDepthY。
-クロップされた復号出力ピクチャの、もしあれば、クロマサンプル配列のビット深度BitDepthC。
-本明細書ではChromaFormatIdcによって示されるクロマフォーマットインジケータ。
-nnpfc_auxiliary_inp_idcが1に等しいとき、フィルタリング強度制御値StrengthControlValは、両端値を含む0~1の範囲内の実数であるものとする。
変数SubWidthC及びSubHeightCは、表7によって指定されるようにChromaFormatIdcから導出される。
nnpfc_idは、後処理フィルタを識別するために使用され得る識別番号を含む。nnpfc_idの値は、両端値を含む、0~232-2の範囲内にあるものとする。両端値を含む256~511まで、及び両端値を含む231~232-2までのnnpfc_idの値は、ITU-T|ISO/IECによる将来の使用のために予約される。両端値を含む256~511の範囲内、又は両端値を含む231~232-2の範囲内のnnpfc_idを有するNNPFC SEIメッセージに遭遇するこの文書のこの版に準拠する復号装置は、そのSEIメッセージを無視するものとする。
NNPFC SEIメッセージが、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージであるとき、以下が適用される。
-このSEIメッセージは、基本後処理フィルタを指定する。
-このSEIメッセージは、現在のCLVSの終了まで、出力順序で現在のレイヤの現在の復号されたピクチャ及び全ての後続の復号されたピクチャに関連する。
NNPFC SEIメッセージが、現在のCLVSにおいて、復号順序で前のNNPFC SEIメッセージの反復であるとき、後続のセマンティクスは、このSEIメッセージが現在のCLVS内で同じコンテンツを有する唯一のNNPFC SEIメッセージであるかのように適用される。
NNPFC SEIメッセージが、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージでないとき、以下が適用される。
-このSEIメッセージは、同じnnpfc_id値を有する復号順序で先行する基本後処理フィルタに対する更新を定義する。
-このSEIメッセージは、現在のCLVSの終了まで、又は現在のCLVS内で出力順序でその特定のnnpfc_id値を有する次のNNPFC SEIメッセージまで、出力順序で現在のレイヤの現在の復号されたピクチャ及び全ての後続の復号されたピクチャに関連する。
0に等しいnnpfc_mode_idcは、このSEIメッセージが、基本後処理フィルタを指定する又は同じnnpfc_id値を有する基本後処理フィルタに対する更新であるISO/IEC 15938-17ビットストリームを含むことを示す。
NNPFC SEIメッセージが、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージであるとき、1に等しいnnpfc_mode_idcは、nnpfc_id値に関連付けられた基本後処理フィルタが、タグURI nnpfc_tag_uriによって識別されるフォーマットを有するnnpfc_uriによって示されるURIによって識別されるニューラルネットワークであることを指定する。
NNPFC SEIメッセージが、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージでないとき、1に等しいnnpfc_mode_idcは、同じnnpfc_id値を有する基本後処理フィルタに対する更新が、タグURI nnpfc_tag_uriによって識別されるフォーマットを有するnnpfc_uriによって示されるURIによって定義されることを指定する。
nnpfc_mode_idcの値は、この文書のこの版に準拠するビットストリームにおいて、両端値を含む0~1の範囲内にあるものとする。nnpfc_mode_idcの両端値を含む2~255の値は、ITU-T|ISO/IECによる将来の使用のために予約され、この文書のこの版に準拠するビットストリーム中に存在しないものとする。この文書のこの版に準拠する復号装置は、両端値を含む2~255の範囲内のnnpfc_mode_idcを有するNNPFC SEIメッセージを無視するものとする。255よりも大きいnnpfc_mode_idcの値は、この文書のこの版に準拠するビットストリーム中に存在しないものとし、将来の使用のために予約されない。
このSEIメッセージが、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージであるとき、後処理フィルタPostProcessingFilter()は、基本後処理フィルタと同じになるように割り当てられる。
このSEIメッセージが、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージでないとき、後処理フィルタPostProcessingFilter()は、このSEIメッセージによって定義された更新を基本後処理フィルタに適用することによって取得される。
更新は累積的ではなく、むしろ各更新は、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージによって指定された後処理フィルタである基本後処理フィルタに適用される。
nnpfc_reserved_zero_bit_aは、この文書のこの版に準拠するビットストリームにおいて、0に等しいものとする。復号装置は、nnpfc_reserved_zero_bit_aが0に等しくないNPFC SEIメッセージを無視するものとする。
nnpfc_tag_uriは、nnpfc_uriによって指定された同じnnpfc_id値を有する基本後処理フィルタ又は基本後処理フィルタに対する更新として使用されるニューラルネットワークについてのフォーマット及び関連情報を識別する、IETF RFC 4151において指定されたシンタックス及びセマンティクスを有するタグURIを含む。
注-nnpfc_tag_uriは、中央登録局を必要とせずに、nnrpf_uriによって指定されるニューラルネットワークデータのフォーマットを一意に識別することを可能にする。
「tag:iso.org,2023:15938-17」に等しいnnpfc_tag_uriは、nnpfc_uriによって識別されるニューラルネットワークデータがISO/IEC 15938-17に準拠することを示す。
nnpfc_uriは、同じnnpfc_id値を有する基本後処理フィルタ又は基本後処理フィルタに対する更新として使用されるニューラルネットワークを識別する、IETFインターネット規格66において指定されたシンタックス及びセマンティクスを有するURIを含む。
1に等しいnnpfc_formatting_and_purpose_flagは、フィルタ目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関連するシンタックス要素が存在することを指定する。0に等しいnnpfc_formatting_and_purpose_flagは、フィルタ目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関連するシンタックス要素が存在しないことを指定する。このSEIメッセージが、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージであるとき、nnpfc_formatting_and_purpose_flagは、1に等しいものとする。このSEIメッセージが、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージでないとき、nnpfc_formatting_and_purpose_flagは、0に等しいものとする。
nnpfc_purposeは、表8において指定されるように後処理フィルタの目的を示す。
nnpfc_purposeの値は、この文書のこの版に準拠するビットストリームにおいて、両端値を含む0~5の範囲内にあるものとする。nnpfc_purposeの両端値を含む6~1023の値は、ITU-T|ISO/IECによる将来の使用のために予約され、この文書のこの版に準拠するビットストリーム中に存在しないものとする。この文書のこの版に準拠する復号装置は、両端値を含む6~1203の範囲内のnnpfc_purposeを有するNNPFC SEIメッセージを無視するものとする。1023よりも大きいnnpfc_purposeの値は、この文書のこの版に準拠するビットストリーム中に存在しないものとし、将来の使用のために予約されない。
SubWidthCが1に等しく、SubHeightCが1に等しいとき、nnpfc_purposeは2又は4に等しくないものとする。
1に等しいnnpfc_out_sub_c_flagは、outSubWidthCが1に等しく、outSubHeightCが1に等しいことを指定する。0に等しいnnpfc_out_sub_c_flagは、outSubWidthCが2に等しく、outSubHeightCが1に等しいことを指定する。nnpfc_out_sub_c_flagが存在しないとき、outSubWidthCはSubWidthCに等しいと推測され、outSubHeightCはSubHeightCに等しいと推測される。ChromaFormatIdcが2に等しく、nnpfc_out_sub_c_flagが存在するとき、nnpfc_out_sub_c_flagの値は、1に等しいものとする。
nnpfc_pic_width_in_luma_samples及びnnpfc_pic_height_in_luma_samplesは、nnpfc_idによって識別される後処理フィルタをクロップされた復号出力ピクチャに適用することから得られるピクチャのルマサンプル配列の、幅及び高さそれぞれを指定する。nnpfc_pic_width_in_luma_samples及びnnpfc_pic_height_in_luma_samplesが存在しないとき、それらは、それぞれ、CroppedWidth及びCroppedHeightに等しいと推測される。nnpfc_pic_width_in_luma_samplesの値は、両端値を含む、CroppedWidth~CroppedWidth*16-1の範囲内にあるものとする。nnpfc_pic_height_in_luma_samplesの値は、両端値を含む、CroppedHeight~CroppedHeight*16-1の範囲内にあるものとする。
nnpfc_num_input_pics_minus2プラス2は、後処理フィルタのための入力として使用される復号出力ピクチャの数を指定する。
nnpfc_interpolated_pics[i]は、後処理フィルタのための入力として使用されるi番目のピクチャと(i+1)番目のピクチャとの間の、後処理フィルタによって生成される補間ピクチャの数を指定する。
後処理フィルタのための入力として使用されるピクチャの数を指定する変数numInputPics、及び後処理フィルタから得られるピクチャの総数を指定する変数numOutputPicsは、以下のように導出される。
注-入力テンソル及び出力テンソルにおける第1の次元は、バッチインデックスのために使用され、これは、いくつかのニューラルネットワークフレームワークにおける実践である。このSEIメッセージのセマンティクスにおける式は0に等しいバッチインデックスに対応するバッチサイズを使用するが、ニューラルネットワーク推論への入力として使用されるバッチサイズを判定することは、後処理実装次第である。
注-例えば、nnpfc_inp_order_idcが3に等しく、nnpfc_auxiliary_inp_idcが1に等しいとき、入力テンソルには、4つのルマ行列、2つのクロマ行列、及び1つの補助入力行列を含む7つのチャネルがある。この場合、プロセスDeriveInputTensors()は、入力テンソルのこれらの7つのチャネルの各々を1つずつ導出し、これらのチャネルのうちの特定のチャネルが処理されるとき、そのチャネルは、プロセス中の現在のチャネルと呼ばれる。
nnpfc_inp_format_idcは、クロップされた復号出力ピクチャのサンプル値を後処理フィルタへの入力値に変換する方法を示す。nnpfc_inp_format_idcが0に等しいとき、後処理フィルタへの入力値は実数であり、関数InpY()及びInpC()は、以下のように指定される。
InpY(x)=x-((1<<BitDepthY)-1)
InpC(x)=x-((1<<BitDepthC)-1)
nnpfc_inp_format_idcが1に等しいとき、後処理フィルタへの入力値は符号なし整数であり、関数InpY()及びInpC()は、以下のように指定される。
1よりも大きいnnpfc_inp_format_idcの値は、ITU-T|ISO/IECによる将来の仕様のために予約され、この文書のこの版に準拠するビットストリーム中に存在しないものとする。この文書のこの版に準拠する復号装置は、nnpfc_inp_format_idcの予約済み値を含むNNPFC SEIメッセージを無視するものとする。
nnpfc_inp_tensor_bitdepth_minus8プラス8は、入力整数テンソル中のルマサンプル値のビット深度を指定する。inpTensorBitDepthの値は以下のように導出される。
inpTensorBitDepth=nnpfc_inp_tensor_bitdepth_minus8+8
nnpfc_inp_tensor_bitdepth_minus8の値が両端値を含む0~24の範囲内にあるものとすることが、ビットストリーム適合性の要件である。
nnpfc_inp_order_idcは、クロップされた復号出力ピクチャのサンプル配列を後処理フィルタへの入力ピクチャのうちの1つとして順序付ける方法を示す。
nnpfc_inp_order_idcの値は、この文書のこの版に準拠するビットストリームにおいて、両端値を含む0~3の範囲内にあるものとする。nnpfc_inp_order_idcの両端値を含む4~255の値は、ITU-T|ISO/IECによる将来の使用のために予約され、この文書のこの版に準拠するビットストリーム中に存在しないものとする。この文書のこの版に準拠する復号装置は、両端値を含む4~255の範囲内のnnpfc_inp_order_idcを有するNNPFC SEIメッセージを無視するものとする。255よりも大きいnnpfc_inp_order_idcの値は、この文書のこの版に準拠するビットストリーム中に存在しないものとし、将来の使用のために予約されない。
ChromaFormatIdcが1に等しくないとき、nnpfc_inp_order_idcは、3に等しいものとする。
表9は、nnpfc_inp_order_idc値の有益な説明を含む。
0よりも大きいnnpfc_auxiliary_inp_idcは、補助入力データがニューラルネットワークポストフィルタの入力テンソル中に存在することを示す。0に等しいnnpfc_auxiliary_inp_idcは、補助入力データが入力テンソル中に存在しないことを示す。1に等しいnnpfc_auxiliary_inp_idcは、補助入力データが式82において指定されるように導出されることを指定する。nnpfc_auxiliary_inp_idcの値は、この文書のこの版に準拠するビットストリームにおいて、両端値を含む0~1の範囲内にあるものとする。nnpfc_inp_order_idcの両端値を含む2~255の値は、ITU-T|ISO/IECによる将来の使用のために予約され、この文書のこの版に準拠するビットストリーム中に存在しないものとする。この文書のこの版に準拠する復号装置は、両端値を含む2~255の範囲内のnnpfc_inp_order_idcを有するNNPFC SEIメッセージを無視するものとする。255よりも大きいnnpfc_inp_order_idcの値は、この文書のこの版に準拠するビットストリーム中に存在しないものとし、将来の使用のために予約されない。
入力テンソルに含まれるサンプルのパッチの左上サンプル位置を指定する所与の垂直サンプル座標cTop及び水平サンプル座標cLeftの入力テンソルinputTensorを導出するためのプロセスDeriveInputTensors()は、以下のように指定される。
nnpfc_colour_primariesは、vui_colour_primariesシンタックス要素について指定されるものと同じセマンティクスを有し、これは以下のとおりである:vui_colour_primariesは、ソース原色の色度座標を示す。そのセマンティクスは、Rec.ITU-T H.273|ISO/IEC 23091-2においてMatrixCoefficientsについて指定されたようなものである。vui_colour_primariesシンタックス要素が存在しないとき、vui_colour_primariesの値は2に等しいと推測される(色度は、未知であるか、不指定されていない、又はこの仕様において指定されない他の手段によって判定される)。Rec.ITU-T H.273|ISO/IEC 23091-2における将来の使用のために予約されたものとして識別されるvui_transfer_characteristicsの値は、この仕様のこのバージョンに適合するビットストリーム中に存在しないものとする。復号装置は、vui_colour_primariesの予約済み値を値2に等しいものとして解釈するものとする。
ただし、以下のとおりである。
-nnpfc_colour_primariesは、CLVSのために使用される原色ではなく、SEIメッセージにおいて指定されたニューラルネットワークポストフィルタを適用した結果として得られるピクチャの原色を指定する。
-nnpfc_colour_primariesがNNPFC SEIメッセージ中に存在しないとき、nnpfc_colour_primariesの値は、vui_colour_primariesに等しいと推測される。
nnpfc_transfer_characteristicsは、vui_transfer_characteristicsシンタックス要素について指定されるものと同じセマンティクスを有し、これは以下のとおりである:vui_transfer_characteristicsは、色表現の伝達特性関数を示す。そのセマンティクスは、Rec.ITU-T H.273|ISO/IEC 23091-2においてMatrixCoefficientsについて指定されたようなものである。vui_transfer_characteristicsシンタックス要素が存在しないとき、vui_transfer_characteristicsの値は、
2に等しいと推測される(伝達特性は、未知である、又は指定されていない、又はこの仕様において指定されない他の手段によって判定される)。Rec.ITU-T H.273|ISO/IEC 23091-2における将来の使用のために予約されたものとして識別されるvui_transfer_characteristicsの値は、この仕様のこのバージョンに適合するビットストリーム中に存在しないものとする。復号装置は、vui_transfer_characteristicsの予約済み値を値2に等しいものとして解釈するものとする。
ただし、以下のとおりである。
-nnpfc_transfer_characteristicsは、CLVSのために使用される伝達特性ではなく、SEIメッセージにおいて指定されたニューラルネットワークポストフィルタを適用した結果として得られるピクチャの伝達特性を指定する。
-nnpfc_transfer_characteristicsがNNPFC SEIメッセージ中に存在しないとき、nnpfc_transfer_characteristicsの値は、vui_transfer_characteristicsに等しいと推測される。
nnpfc_matrix_coeffsは、vui_matrix_coeffsシンタックス要素について指定されるものと同じセマンティクスを有し、これは以下のとおりである:vui_matrix_coeffsは、緑色、青色、及び赤色、又はY原色、Z原色、及びX原色からルマ信号及びクロマ信号を導出する際に使用される式を記述する。そのセマンティクスは、Rec.ITU-T H.273|ISO/IEC 23091-2においてMatrixCoefficientsについて指定されたようなものである。ただし、以下のとおりである。
-nnpfc_matrix_coeffsは、CLVSのために使用される行列係数ではなく、SEIメッセージにおいて指定されたニューラルネットワークポストフィルタを適用した結果として得られるピクチャの行列係数を指定する。
-nnpfc_matrix_coeffsがNNPFC SEIメッセージ中に存在しないとき、nnpfc_matrix_coeffsの値は、vui_matrix_coeffsに等しいと推測される。
-nnpfc_matrix_coeffsのために許容される値は、VUIパラメータのセマンティクスのためのChromaFormatIdcの値によって示される復号ビデオピクチャのクロマフォーマットによって制約されない。
-nnpfc_matrix_coeffsが0に等しいとき、nnpfc_out_order_idcは1又は3に等しくないものとする。
0に等しいnnpfc_out_format_idcは、後処理フィルタによって出力されたサンプル値が実数であることを示し、両端値を含む0~1の値範囲は、後続の後処理又は表示のための任意の所望のビット深度bitDepthについて、両端値を含む0~(1<<bitDepth)-1の符号なし整数値範囲に線形にマッピングされる。1に等しいnnpfc_out_format_flagは、後処理フィルタによって出力されるサンプル値が両端値を含む0~(1<<(nnpfc_out_tensor_bitdepth_minus8+8))-1の範囲内の符号なし整数であることを示す。
1よりも大きいnnpfc_out_format_idcの値は、ITU-T|ISO/IECによる将来の仕様のために予約され、この文書のこの版に準拠するビットストリーム中に存在しないものとする。この文書のこの版に準拠する復号装置は、nnpfc_out_format_idcの予約済み値を含むNNPFC SEIメッセージを無視するものとする。
nnpfc_out_tensor_bitdepth_minus8プラス8は、出力整数テンソル中のサンプル値のビット深度を指定する。nnpfc_out_tensor_bitdepth_minus8の値は、両端値を含む、0~24の範囲内にあるものとする。
nnpfc_out_order_idcは、後処理フィルタから得られるサンプルの出力順序を示す。
nnpfc_out_order_idcの値は、この文書のこの版に準拠するビットストリームにおいて、両端値を含む0~3の範囲内にあるものとする。nnpfc_out_order_idcの両端値を含む4~255の値は、ITU-T|ISO/IECによる将来の使用のために予約され、この文書のこの版に準拠するビットストリーム中に存在しないものとする。この文書のこの版に準拠する復号装置は、両端値を含む4~255の範囲内のnnpfc_out_order_idcを有するNNPFC SEIメッセージを無視するものとする。255よりも大きいnnpfc_out_order_idcの値は、この文書のこの版に準拠するビットストリーム中に存在しないものとし、将来の使用のために予約されない。
nnpfc_purposeが2又は4に等しいとき、nnpfc_out_order_idcは3に等しくないものとする。
表10は、nnpfc_out_order_idc値の有益な説明を含む。
nnpfc_patch_width_minus1+1は、nnpfc_constant_patch_size_flagが1に等しいとき、後処理フィルタへの入力に必要なパッチサイズの水平サンプルカウントを示す。nnpfc_patch_width_minus1の値は、両端値を含む、0~Min(32766,CroppedWidth-1)の範囲内にあるものとする。
nnpfc_patch_height_minus1+1は、nnpfc_constant_patch_size_flagが1に等しいとき、後処理フィルタへの入力に必要なパッチサイズの垂直サンプルカウントを示す。nnpfc_patch_height_minus1の値は、両端値を含む、0~Min(32766,CroppedHeight-1)の範囲内にあるものとする。
変数inpPatchWidth及びinpPatchHeightをそれぞれパッチサイズ幅及びパッチサイズ高さとする。
nnpfc_constant_patch_size_flagが0に等しい場合、以下が適用される。
-inpPatchWidth及びinpPatchHeightの値は、この文書で指定されていない外部手段によって提供される、又はポストプロセッサ自体によって設定される、のいずれかである。
-inpPatchWidthの値は、nnpfc_patch_width_minus1+1の正の整数倍であるものとし、CroppedWidth以下であるものとする。inpPatchHeightの値は、nnpfc_patch_height_minus1+1の正の整数倍であるものとし、CroppedHeight以下であるものとする。
そうでない(nnpfc_constant_patch_size_flagが1に等しい)場合、inpPatchWidthの値は、nnpfc_patch_width_minus1+1に等しく設定され、inpPatchHeightの値は、nnpfc_patch_height_minus1+1に等しく設定される。
nnpfc_overlapは、後処理フィルタの隣接入力テンソルの重複する水平サンプルカウント及び垂直サンプルカウントを示す。nnpfc_overlapの値は、両端値を含む、0~16383の範囲内にあるものとする。
変数outPatchWidth、outPatchHeight、horCScaling、verCScaling、outPatchCWidth、outPatchCHeight、及びoverlapSizeは、以下のように導出される。
outPatchWidth=(nnpfc_pic_width_in_luma_samples*inpPatchWidth)/CroppedWidth
outPatchHeight=(nnpfc_pic_height_in_luma_samples*inpPatchHeight)/CroppedHeight
horCScaling=SubWidthC/outSubWidthC
verCScaling=SubHeightC/outSubHeightC
outPatchCWidth=outPatchWidth*horCScaling
outPatchCHeight=outPatchHeight*verCScaling
overlapSize=nnpfc_overlap
outPatchWidth*CroppedWidthがnnpfc_pic_width_in_luma_samples*inpPatchWidthに等しくなるものとし、outPatchHeight*CroppedHeightがnnpfc_pic_height_in_luma_samples*inpPatchHeightに等しくなるものとすることが、ビットストリーム適合性の要件である。
nnpfc_padding_typeは、表11において説明されているように、クロップされた復号出力ピクチャの境界の外側のサンプル位置を参照するとき、パディングのプロセスを示す。nnpfc_padding_typeの値は、両端値を含む、0~15の範囲内にあるものとする。
nnpfc_cb_padding_valは、nnpfc_padding_typeが4に等しいときにパディングのために使用されるCb値を示す。
nnpfc_cr_padding_valは、nnpfc_padding_typeが4に等しいときにパディングのために使用されるCr値を示す。
入力が垂直サンプル位置y、水平サンプル位置x、ピクチャ高さpicHeight、ピクチャ幅picWidth、及びサンプル配列croppedPicである関数InpSampleVal(y,x,picHeight,picWidth,croppedPic)は、以下のように導出されたsampleValの値を返す。
注-関数InpSampleVal()への入力に対して、垂直位置は、いくつかの推論エンジンの入力テンソル規則との互換性のために水平位置の前にリストされる。
0に等しいnnpfc_parameter_type_idcは、ニューラルネットワークが整数パラメータのみを使用することを示す。1に等しいnnpfc_parameter_type_flagは、ニューラルネットワークが浮動小数点パラメータ又は整数パラメータを使用し得ることを示す。2に等しいnnpfc_parameter_type_idcは、ニューラルネットワークがバイナリパラメータのみを使用することを示す。3に等しいnnpfc_parameter_type_idcは、ITU-T|ISO/IECによる将来の使用のために予約され、この文書のこの版に準拠するビットストリーム中に存在しないものとする。この文書のこの版に準拠する復号装置は、3に等しいnnpfc_parameter_type_idcを有するNNPFC SEIメッセージを無視するものとする。
0、1、2、及び3に等しいnnpfc_log2_parameter_bit_length_minus3は、ニューラルネットワークがそれぞれ8、16、32、及び64よりも大きいビット長のパラメータを使用しないことを示す。nnpfc_parameter_type_idcが存在し、nnpfc_log2_parameter_bit_length_minus3が存在しないとき、ニューラルネットワークは、1よりも大きいビット長のパラメータを使用しない。
nnpfc_num_parameters_idcは、2048の累乗単位で後処理フィルタのためのニューラルネットワークパラメータの最大数を示す。0に等しいnnpfc_num_parameters_idcは、ニューラルネットワークパラメータの最大数が未知であることを示す。値nnpfc_num_parameters_idcは、両端値を含む、0~52の範囲内にあるものとする。52よりも大きいnnpfc_num_parameters_idcの値は、ITU-T|ISO/IECによる将来の使用のために予約され、この文書のこの版に準拠するビットストリーム中に存在しないものとする。この文書のこの版に準拠する復号装置は、52よりも大きいnnpfc_num_parameters_idcを有するNNPFC SEIメッセージを無視するものとする。
nnpfc_num_parameters_idcの値が0よりも大きい場合、変数maxNumParametersは以下のように導出される。
maxNumParameters=(2048<<nnpfc_num_parameters_idc)-1
後処理フィルタのニューラルネットワークパラメータの数がmaxNumParameters以下であるものとすることが、ビットストリーム適合性の要件である。
0よりも大きいnnpfc_num_kmac_operations_idcは、後処理フィルタのサンプルごとの積和演算の最大数がnnpfc_num_kmac_operations_idc*1000以下であることを示す。0に等しいnnpfc_num_kmac_operations_idcは、ネットワークの積和演算の最大数が未知であることを示す。nnpfc_num_kmac_operations_idcの値は、両端値を含む、0~232-1の範囲内にあるものとする。
0よりも大きいnnpfc_total_kilobyte_sizeは、ニューラルネットワークのための圧縮されていないパラメータを記憶するために必要とされるキロバイト単位の総サイズを示す。ビットの総サイズは、各パラメータを記憶するために使用されるビットの合計以上の数である。nnpfc_total_kilobyte_sizeは、ビットの総サイズを8000で除算し、切り上げたものである。0に等しいnnpfc_total_kilobyte_sizeは、ニューラルネットワークのパラメータを記憶するのに必要な総サイズが未知であることを示す。nnpfc_total_kilobyte_sizeの値は、両端値を含む、0~232-1の範囲内にあるものとする。
nnpfc_reserved_zero_bit_bは、この文書のこの版に準拠するビットストリームにおいて、0に等しいものとする。復号装置は、nnpfc_reserved_zero_bit_bが0に等しくないNPFC SEIメッセージを無視するものとする。
nnpfc_payload_byte[i]は、ISO/IEC 15938-17に適合するビットストリームのi番目のバイトを含む。iの全ての存在する値についてのバイトシーケンスnnpfc_payload_byte[i]は、ISO/IEC 15938-17に適合する完全なビットストリームであるものとする。
表12は、JVET-AB2006で規定されるニューラルネットワークポストフィルタアクティブ化SEIメッセージのシンタックスを示す。
表12に関して、JVET-AB2006は、以下のセマンティクスを規定する。
ニューラルネットワークポストフィルタアクティブ化(neural-network post-filter activation、NNPFA)SEIメッセージは、ピクチャのセットの後処理フィルタリングのために、nnpfa_target_idによって識別されるターゲットニューラルネットワーク後処理フィルタの可能な使用をアクティブ化又は非アクティブ化する。
注-例えば、後処理フィルタが異なる目的のためのものである又は異なる色成分をフィルタリングするとき、同じピクチャについていくつかのNNPFA SEIメッセージが存在し得る。
nnpfa_target_idは、ターゲットニューラルネットワーク後処理フィルタを示し、ターゲットニューラルネットワーク後処理フィルタは、現在のピクチャに関連し、かつnnfpa_target_idに等しいnnpfc_idを有する、1つ以上のニューラルネットワーク後処理フィルタ特性SEIメッセージによって指定される。
nnpfa_target_idの値は、両端値を含む、0~232-2の範囲内にあるものとする。両端値を含む256~511まで、及び両端値を含む231~232-2までのnnpfa_target_idの値は、ITU-T|ISO/IECによる将来の使用のために予約される。両端値を含む256~511の範囲内、又は両端値を含む231~232-2の範囲内のnnpfa_target_idを有するNNPFA SEIメッセージに遭遇するこの文書のこの版に準拠する復号装置は、そのSEIメッセージを無視するものとする。
nnpfa_target_idの特定の値を有するNNPFA SEIメッセージは、以下の条件の一方又は両方が真でない限り、現在のPU中に存在しないものとする。
-現在のCLVS内に、復号順序で現在のPUに先行するPU中に存在するnnpfa_target_idの特定の値に等しいnnpfc_idを有するNNPFC SEIメッセージがある。
-現在のPU中に、nnpfa_target_idの特定の値に等しいnnpfc_idを有するNNPFC SEIメッセージがある。
PUが、nnpfc_idの特定の値を有するNNPFC SEIメッセージと、nnpfc_idの特定の値に等しいnnpfa_target_idを有するNNPFA SEIメッセージとの両方を含んでいるとき、NNPFC SEIメッセージは、復号順序でNNPFA SEIメッセージに先行するものとする。
1に等しいnnpfa_cancel_flagは、現在のSEIメッセージと同じnnpfa_target_idを有する任意の前のNNPFA SEIメッセージによって確立されたターゲットニューラルネットワーク後処理フィルタの持続性がキャンセルされること、すなわち、ターゲットニューラルネットワーク後処理フィルタが、現在のSEIメッセージと同じnnpfa_target_id及び0に等しいnnpfa_cancel_flagを有する別のNNPFA SEIメッセージによってアクティブ化されない限り、もはや使用されないことを示す。0に等しいnnpfa_cancel_flagは、nnpfa_persistence_flagが後続することを示す。
nnpfa_persistence_flagは、現在のレイヤのためのターゲットニューラルネットワーク後処理フィルタの持続性を指定する。
0に等しいnnpfa_persistence_flagは、ターゲットニューラルネットワーク後処理フィルタを現在のピクチャのための後処理フィルタリングのためにのみ使用されてもよいことを指定する。
1に等しいnnpfa_persistence_flagは、ターゲットニューラルネットワーク後処理フィルタを、以下の条件のうちの1つ以上が真になるまで、出力順序で現在のレイヤの現在のピクチャ及び全ての後続のピクチャのための後処理フィルタリングのために使用されてもよいことを指定する。
-現在のレイヤの新しいCLVSが始まる。
-ビットストリームが終了する。
-現在のSEIメッセージと同じnnpfa_target_id及び1に等しいnnpfa_cancel_flagを有するNNPFA SEIメッセージに関連付けられた現在のレイヤ中のピクチャは、出力順序で現在のピクチャに後続する出力である。
注-ターゲットニューラルネットワーク後処理フィルタは、現在のSEIメッセージと同じnnpfa_target_id及び1に等しいnnpfa_cancel_flagを有するNNPFA SEIメッセージに関連付けられた現在のレイヤ中のこの後続のピクチャに適用されない。
ニューラルネットワークポストフィルタアクティブ化(neural-network post-filter activation、NNPFA)SEIメッセージは、ピクチャのセットの後処理フィルタリングのために、nnpfa_target_idによって識別されるターゲットニューラルネットワーク後処理フィルタの可能な使用をアクティブ化又は非アクティブ化する。
注-例えば、後処理フィルタが異なる目的のためのものである又は異なる色成分をフィルタリングするとき、同じピクチャについていくつかのNNPFA SEIメッセージが存在し得る。
nnpfa_target_idは、ターゲットニューラルネットワーク後処理フィルタを示し、ターゲットニューラルネットワーク後処理フィルタは、現在のピクチャに関連し、かつnnfpa_target_idに等しいnnpfc_idを有する、1つ以上のニューラルネットワーク後処理フィルタ特性SEIメッセージによって指定される。
nnpfa_target_idの値は、両端値を含む、0~232-2の範囲内にあるものとする。両端値を含む256~511まで、及び両端値を含む231~232-2までのnnpfa_target_idの値は、ITU-T|ISO/IECによる将来の使用のために予約される。両端値を含む256~511の範囲内、又は両端値を含む231~232-2の範囲内のnnpfa_target_idを有するNNPFA SEIメッセージに遭遇するこの文書のこの版に準拠する復号装置は、そのSEIメッセージを無視するものとする。
nnpfa_target_idの特定の値を有するNNPFA SEIメッセージは、以下の条件の一方又は両方が真でない限り、現在のPU中に存在しないものとする。
-現在のCLVS内に、復号順序で現在のPUに先行するPU中に存在するnnpfa_target_idの特定の値に等しいnnpfc_idを有するNNPFC SEIメッセージがある。
-現在のPU中に、nnpfa_target_idの特定の値に等しいnnpfc_idを有するNNPFC SEIメッセージがある。
PUが、nnpfc_idの特定の値を有するNNPFC SEIメッセージと、nnpfc_idの特定の値に等しいnnpfa_target_idを有するNNPFA SEIメッセージとの両方を含んでいるとき、NNPFC SEIメッセージは、復号順序でNNPFA SEIメッセージに先行するものとする。
1に等しいnnpfa_cancel_flagは、現在のSEIメッセージと同じnnpfa_target_idを有する任意の前のNNPFA SEIメッセージによって確立されたターゲットニューラルネットワーク後処理フィルタの持続性がキャンセルされること、すなわち、ターゲットニューラルネットワーク後処理フィルタが、現在のSEIメッセージと同じnnpfa_target_id及び0に等しいnnpfa_cancel_flagを有する別のNNPFA SEIメッセージによってアクティブ化されない限り、もはや使用されないことを示す。0に等しいnnpfa_cancel_flagは、nnpfa_persistence_flagが後続することを示す。
nnpfa_persistence_flagは、現在のレイヤのためのターゲットニューラルネットワーク後処理フィルタの持続性を指定する。
0に等しいnnpfa_persistence_flagは、ターゲットニューラルネットワーク後処理フィルタを現在のピクチャのための後処理フィルタリングのためにのみ使用されてもよいことを指定する。
1に等しいnnpfa_persistence_flagは、ターゲットニューラルネットワーク後処理フィルタを、以下の条件のうちの1つ以上が真になるまで、出力順序で現在のレイヤの現在のピクチャ及び全ての後続のピクチャのための後処理フィルタリングのために使用されてもよいことを指定する。
-現在のレイヤの新しいCLVSが始まる。
-ビットストリームが終了する。
-現在のSEIメッセージと同じnnpfa_target_id及び1に等しいnnpfa_cancel_flagを有するNNPFA SEIメッセージに関連付けられた現在のレイヤ中のピクチャは、出力順序で現在のピクチャに後続する出力である。
注-ターゲットニューラルネットワーク後処理フィルタは、現在のSEIメッセージと同じnnpfa_target_id及び1に等しいnnpfa_cancel_flagを有するNNPFA SEIメッセージに関連付けられた現在のレイヤ中のこの後続のピクチャに適用されない。
JVET-AB2006において規定されるニューラルネットワークポストフィルタ特性SEIメッセージは、理想のものとは言えないことがある。特に、例えば、JVET-AB2006におけるシグナリングは、特定のメッセージが有用であるかどうかを受信デバイスが判定することを可能にするには不十分であり得る。本明細書で説明する技術によれば、追加のシンタックス及びセマンティクスが提供され、シンタックス要素の配置が最適化される。
図1は、本開示の1つ以上の技術による、ビデオデータを符号化する(code)(すなわち、符号化(encode)及び/又は復号する)ように構成され得る、システムの一例を示すブロック図である。システム100は、本開示の1つ以上の技術に従って、ビデオデータをカプセル化し得るシステムの一例を表す。図1に示すように、システム100は、ソースデバイス102と、通信媒体110と、目的デバイス120と、を含む。図1に示す例では、ソースデバイス102は、ビデオデータを符号化し、符号化されたビデオデータを通信媒体110に送信するように構成された、任意のデバイスを含んでもよい。目的デバイス120は、通信媒体110を介して符号化したビデオデータを受信し、符号化したビデオデータを復号するように構成された、任意のデバイスを含んでもよい。ソースデバイス102及び/又は目的デバイス120は、有線通信及び/又は無線通信用に装備された演算デバイスを含んでもよく、かつ、例えば、セットトップボックス、デジタルビデオレコーダ、テレビ、デスクトップ、ラップトップ、又はタブレットコンピュータ、ゲーム機、医療用撮像デバイス、及び、例えば、スマートフォン、セルラー電話、パーソナルゲームデバイスを含むモバイルデバイス、を含んでもよい。
通信媒体110は、無線及び有線の通信媒体並びに/又は記憶デバイスの任意の組み合わせを含んでもよい。通信媒体110としては、同軸ケーブル、光ファイバケーブル、ツイストペアケーブル、無線送信機及び受信機、ルータ、スイッチ、リピータ、基地局、又は様々なデバイスとサイトとの間の通信を容易にするために有用であり得る任意の他の機器を挙げてもよい。通信媒体110は、1つ以上のネットワークを含んでもよい。例えば、通信媒体110は、ワールドワイドウェブ、例えば、インターネットへのアクセスを可能にするように構成されたネットワークを含んでもよい。ネットワークは、1つ以上の電気通信プロトコルの組み合わせに従って動作してもよい。電気通信プロトコルは、専用の態様を含んでもよく、及び/又は規格化された電気通信プロトコルを含んでもよい。規格化された電気通信プロトコルの例としては、Digital Video Broadcasting(DVB)規格、Advanced Television Systems Committee(ATSC)規格、Integrated Services Digital Broadcasting(ISDB)規格、Data Over Cable Service Interface Specification(DOCSIS)規格、Global System Mobile Communications(GSM)規格、符号分割多重アクセス(code division multiple access、CDMA)規格、第三世代パートナーシッププロジェクト(3rd Generation Partnership Project、3GPP)規格、欧州電気通信標準化機構(European Telecommunications Standards Institute、ETSI)規格、インターネットプロトコル(Internet Protocol、IP)規格、ワイヤレスアプリケーションプロトコル(Wireless Application Protocol、WAP)規格、及びInstitute of Electrical and Electronics Engineers(IEEE)規格が挙げられる。
記憶デバイスは、データを記憶することができる任意の種類のデバイス又は記憶媒体を含んでもよい。記憶媒体は、有形又は非一時的コンピュータ可読媒体を含んでもよい。コンピュータ可読媒体としては、光学ディスク、フラッシュメモリ、磁気メモリ、又は任意の他の好適なデジタル記憶媒体を挙げてもよい。いくつかの例では、メモリデバイス又はその一部分は不揮発性メモリとして説明されることがあり、他の例では、メモリデバイスの一部分は揮発性メモリとして説明されることがある。揮発性メモリの例としては、ランダムアクセスメモリ(random access memory、RAM)、ダイナミックランダムアクセスメモリ(dynamic random access memory、DRAM)、及びスタティックランダムアクセスメモリ(static random access memory、SRAM)を挙げてもよい。不揮発性メモリの例としては、磁気ハードディスク、光学ディスク、フロッピーディスク、フラッシュメモリ、又は電気的プログラム可能メモリ(electrically programmable memory、EPROM)若しくは電気的消去可能及びプログラム可能メモリ(electrically erasable and programmable、EEPROM)の形態を挙げてもよい。記憶デバイス(単数又は複数)としては、メモリカード(例えば、セキュアデジタル(Secure Digital、SD)メモリカード)、内蔵/外付けハードディスクドライブ、及び/又は内蔵/外付けソリッドステートドライブを挙げてもよい。データは、定義されたファイルフォーマットに従って記憶デバイス上に記憶されてもよい。
図4は、システム100の一実装形態に含まれ得る構成要素の一例を示す概念図である。図4に示す例示的な実装形態では、システム100は、1つ以上の演算デバイス402A~402N、テレビサービスネットワーク404、テレビサービスプロバイダサイト406、ワイドエリアネットワーク408、ローカルエリアネットワーク410、及び1つ以上のコンテンツプロバイダサイト412A~412Nを含む。図4に示す実装形態は、例えば、映画、ライブスポーツイベントなどのデジタルメディアコンテンツ、並びにデータ及びアプリケーション及びそれらに関連付けられたメディアプレゼンテーションが、演算デバイス402A~402Nなどの複数の演算デバイスに配信され、かつ、それらによってアクセスされることが可能となるように構成され得るシステムの一例を表す。図4に示す例では、演算デバイス402A~402Nは、テレビサービスネットワーク404、ワイドエリアネットワーク408、及び/又はローカルエリアネットワーク410のうちの1つ以上からデータを受信するように構成されている任意のデバイスを含んでもよい。例えば、演算デバイス402A~402Nは、有線通信及び/又は無線通信用に装備してもよく、1つ以上のデータチャネルを通じてサービスを受信するように構成されてもよく、いわゆるスマートテレビ、セットトップボックス、及びデジタルビデオレコーダを含むテレビを含んでもよい。更に、演算デバイス402A~402Nは、デスクトップ、ラップトップ又はタブレットコンピュータ、ゲーム機、例えば「スマート」フォン、セルラー電話、及びパーソナルゲーミングデバイスを含むモバイルデバイスを含んでもよい。
テレビサービスネットワーク404は、テレビサービスを含み得る、デジタルメディアコンテンツの配信を可能にするように構成されているネットワークの一例である。例えば、テレビサービスネットワーク404は、公共地上波テレビネットワーク、公共又は加入ベースの衛星テレビサービスプロバイダネットワーク、並びに公共又は加入ベースのケーブルテレビプロバイダネットワーク及び/又は頭越し型(over the top)サービスプロバイダ若しくはインターネットサービスプロバイダを含んでもよい。いくつかの例では、テレビサービスネットワーク404は、テレビサービスの提供を可能にするために主に使用され得るが、テレビサービスネットワーク404はまた、本明細書に記載された電気通信プロトコルの任意の組み合わせに基づく他の種類のデータ及びサービスの提供も可能とすることに留意されたい。更に、いくつかの例では、テレビサービスネットワーク404は、テレビサービスプロバイダサイト406と、演算デバイス402A~402Nのうちの1つ以上との間の双方向通信を可能にし得ることに留意されたい。テレビサービスネットワーク404は、無線通信媒体及び/又は有線通信媒体の任意の組み合わせを含んでもよい。テレビサービスネットワーク404は、同軸ケーブル、光ファイバケーブル、ツイストペアケーブル、無線送信機及び受信機、ルータ、スイッチ、リピータ、基地局、又は様々なデバイスとサイトとの間の通信を容易にするために有用であり得る任意の他の機器を含んでもよい。テレビサービスネットワーク404は、1つ以上の電気通信プロトコルの組み合わせに従って動作してもよい。電気通信プロトコルは、専用の態様を含んでもよく、及び/又は規格化された電気通信プロトコルを含んでもよい。規格化された電気通信プロトコルの例としては、DVB規格、ATSC規格、ISDB規格、DTMB規格、DMB規格、ケーブルによるデータサービスインターフェース標準(Data Over Cable Service Interface Specification、DOCSIS)規格、HbbTV規格、W3C規格、及びUPnP規格が挙げられる。
図4を再び参照すると、テレビサービスプロバイダサイト406は、テレビサービスネットワーク404を介してテレビサービスを配信するように構成されてもよい。例えば、テレビサービスプロバイダサイト406は、1つ以上の放送局、ケーブルテレビプロバイダ、又は衛星テレビプロバイダ、又はインターネットベースのテレビプロバイダを含み得る。例えば、テレビサービスプロバイダサイト406は、衛星アップリンク/ダウンリンクを介したテレビプログラムを含む送信を、受信するように構成されてもよい。更に、図4に示すように、テレビサービスプロバイダサイト406は、ワイドエリアネットワーク408と通信してもよく、コンテンツプロバイダサイト412A~412Nからデータを受信するように構成されてもよい。いくつかの例では、テレビサービスプロバイダサイト406は、テレビスタジオを含んでもよく、コンテンツはそこから発信してもよいことに留意されたい。
ワイドエリアネットワーク408は、パケットベースのネットワークを含み、1つ以上の電気通信プロトコルの組み合わせに従って動作してもよい。電気通信プロトコルは、専用の態様を含んでもよく、及び/又は規格化された電気通信プロトコルを含んでもよい。規格化された電気通信プロトコルの例としては、Global System Mobile Communications(GSM)規格、符号分割多元接続(code division multiple access、CDMA)規格、第三世代パートナーシッププロジェクト(3rd Generation Partnership Project、3GPP)規格、欧州電気通信標準化機構(European Telecommunications Standards Institute、ETSI)規格、欧州規格(EN)、IP規格、ワイヤレスアプリケーションプロトコル(Wireless Application Protocol、WAP)規格、及び例えば、IEEE802規格のうちの1つ以上(例えば、Wi-Fi)などのInstitute of Electrical and Electronics Engineers(IEEE)規格が挙げられる。ワイドエリアネットワーク408は、無線通信媒体及び/又は有線通信媒体の任意の組み合わせを含んでもよい。ワイドエリアネットワーク408は、同軸ケーブル、光ファイバケーブル、ツイストペアケーブル、イーサネットケーブル、無線送信機及び受信機、ルータ、スイッチ、リピータ、基地局、又は様々なデバイス及びサイト間の通信を容易にするために有用であり得る任意の他の機器を含んでもよい。一実施例では、ワイドエリアネットワーク408はインターネットを含んでもよい。ローカルエリアネットワーク410は、パケットベースのネットワークを含み、1つ以上の電気通信プロトコルの組み合わせに従って動作してもよい。ローカルエリアネットワーク410は、アクセス及び/又は物理インフラストラクチャのレベルに基づいてワイドエリアネットワーク408と区別されてもよい。例えば、ローカルエリアネットワーク410は、セキュアホームネットワークを含んでもよい。
図4を再び参照すると、コンテンツプロバイダサイト412A~412Nは、マルチメディアコンテンツをテレビサービスプロバイダサイト406及び/又は演算デバイス402A~402Nに提供し得るサイトの例を表す。例えば、コンテンツプロバイダサイトは、マルチメディアファイル及び/又はストリームをテレビサービスプロバイダサイト406に提供するように構成されている、1つ以上のスタジオコンテンツサーバを有するスタジオを含んでもよい。一実施例では、コンテンツプロバイダサイト412A~412Nは、IPスイートを使用してマルチメディアコンテンツを提供するように構成されてもよい。例えば、コンテンツプロバイダサイトは、リアルタイムストリーミングプロトコル(RTSP)、HTTPなどに従って、マルチメディアコンテンツを受信デバイスに提供するように構成されてもよい。更に、コンテンツプロバイダサイト412A~412Nは、ハイパーテキストベースのコンテンツなどを含むデータを、ワイドエリアネットワーク408を通じて、受信デバイス、演算デバイス402A~402N、及び/又はテレビサービスプロバイダサイト406のうちの1つ以上に提供するように構成されてもよい。コンテンツプロバイダサイト412A~412Nは、1つ以上のウェブサーバを含んでもよい。コンテンツプロバイダサイト412A~412Nによって提供されるデータは、データフォーマットに従って定義され得る。
図1を再び参照すると、ソースデバイス102は、ビデオソース104と、ビデオ符号化装置106と、データカプセル化装置107と、インターフェース108とを含む。ビデオソース104は、ビデオデータをキャプチャ及び/又は記憶するように構成された任意のデバイスを含んでもよい。例えば、ビデオソース104は、ビデオカメラ及びそれに動作可能に結合された記憶デバイスを含んでもよい。ビデオ符号化装置106は、ビデオデータを受信し、ビデオデータを表す準拠ビットストリームを生成するように構成された、任意のデバイスを含んでもよい。準拠ビットストリームは、ビデオ復号装置が受信し、それからビデオデータを再生成することができるビットストリームを指してもよい。準拠ビットストリームの態様は、ビデオ符号化標準に従って定義され得る。準拠ビットストリームを生成するとき、ビデオ符号化装置106は、ビデオデータを圧縮してもよい。圧縮は、非可逆的(視聴者に認識可能若しくは認識不可能)又は可逆的であってよい。図5は、本明細書で説明するビデオデータを符号化するための技術を実装し得るビデオ符号化装置500の一例を示すブロック図である。例示的なビデオ符号化装置500は、別個の機能ブロックを有するように示されているが、そのような例示は、説明のためのものであり、ビデオ符号化装置500及び/又はそのサブコンポーネントを特定のハードウェア又はソフトウェアアーキテクチャに限定するものではないことに留意されたい。ビデオ符号化装置500の機能は、ハードウェア、ファームウェア、及び/又はソフトウェアの実装形態の任意の組み合わせを用いて実現されてもよい。
ビデオ符号化装置500は、ピクチャ部分のイントラ予測符号化及びインター予測符号化を実行することがあり、そのためにハイブリッドビデオ符号化装置と称されることがある。図5に示す例では、ビデオ符号化装置500は、ソースビデオブロックを受信する。いくつかの例では、ソースビデオブロックは、符号化構造に従って分割されているピクチャの部分を含んでもよい。例えば、ソースビデオデータは、マクロブロック、CTU、CB、その再分割、及び/又は別の同等の符号化ユニットを含んでもよい。いくつかの例では、ビデオ符号化装置500は、ソースビデオブロックの追加の再分割を実行するように構成されてもよい。本明細書で説明する技術は、符号化の前及び/又は符号化中にソースビデオデータがどのように分割されるかにかかわらず、ビデオ符号化に一般的に適用可能であることに留意されたい。図5に示す例では、ビデオ符号化装置500は、加算器502と、変換係数発生装置504と、係数量子化部506と、逆量子化及び変換係数処理部508と、加算器510と、イントラ予測処理部512と、インター予測処理部514と、フィルタ部516と、エントロピ符号化部518とを含む。図5に示すように、ビデオ符号化装置500は、ソースビデオブロックを受信し、ビットストリームを出力する。
図5に示す例では、ビデオ符号化装置500は、ソースビデオブロックから予測ビデオブロックを減算することにより、残差データを生成してもよい。予測ビデオブロックの選択を、以下に詳細に記載する。加算器502は、この減算演算を実行するように構成された構成要素を表す。一実施例では、ビデオブロックの減算は、画素領域で行われる。変換係数発生装置504は、離散コサイン変換(DCT)、離散サイン変換(DST)、又は概念的に類似の変換などの変換を残差ブロック又はその再分割に適用し(例えば、4つの8×8の変換を残差値の16×16の配列に適用してもよい)、残差変換係数のセットを生成する。変換係数発生装置504は、離散三角変換の近似物を含め離散三角変換のファミリーに含まれる変換の任意の及び全ての組み合わせを実行するように構成されてもよい。変換係数発生装置504は、変換係数を係数量子化部506に出力してもよい。係数量子化部506は、変換係数の量子化を実行するように構成されてもよい。量子化プロセスは、係数の一部又は全てに関連付けられたビット深度を低減してもよい。量子化の程度により、符号化したビデオデータのレートディストーション(すなわち、ビデオのビットレート対品質)が変更され得る。量子化パラメータ(QP)を調節することにより、量子化の程度を変更してもよい量子化パラメータは、スライスレベル値及び/又はCUレベル値(例えば、CUデルタQP値)に基づいて判定されてもよい。QPデータは、特定の変換係数のセットを量子化するQPを判定するために使用される任意のデータを含み得る。図5に示すように、量子化された変換係数(レベル値と呼んでもよい)は、逆量子化及び変換係数処理部508に出力される。逆量子化及び変換係数処理部508は、逆量子化及び逆変換を適用して、復元された残差データを生成するように構成されてもよい。図5に示すように、加算器510において、復元された残差データを、予測ビデオブロックに加算されてもよい。このようにして、符号化ビデオブロックを復元してもよく、結果として得られる復元されたビデオブロックを使用して、所与の予測、変換、及び/又は量子化についての符号化品質を評価してもよい。ビデオ符号化装置500は、複数の符号化パスを実行する(例えば、予測、変換パラメータ及び量子化パラメータの1つ以上を変更しながら符号化を実行する)ように構成されてもよい。ビットストリームのレートディストーション又は他のシステムパラメータは、復元されたビデオブロックの評価に基づいて最適化されてもよい。更に、復元されたビデオブロックは、その後のブロックを予測するための参照として記憶され、使用されてもよい。
図5を参照すると、イントラ予測処理部512は、符号化されるビデオブロックに対してイントラ予測モードを選択するように構成されてもよい。イントラ予測処理部512は、現在のブロックを符号化するために、フレームを評価し、使用するイントラ予測モードを判定するように構成されてもよい。上述したように、可能なイントラ予測モードは、平面予測モード、DC予測モード、及び角度予測モードを含んでもよい。更に、いくつかの例では、クロマ成分に対する予測モードを、ルマ予測モードに対する予測モードから推測してもよいことに留意されたい。イントラ予測処理部512は、1つ以上の符号化パスを実行した後にイントラ予測モードを選択してもよい。更に、一実施例では、イントラ予測処理部512は、レートディストーション解析に基づいて予測モードを選択してもよい。図5に示すように、イントラ予測処理部512は、イントラ予測データ(例えば、シンタックス要素)をエントロピ符号化部518及び変換係数発生装置504に出力する。上述のように、残差データに対して実行される変換は、モード依存性であってもよい(例えば、二次変換行列は、予測モードに基づいて判定されてもよい)。
図5を再び参照すると、インター予測処理部514は、現在のビデオブロックに対してインター予測符号化を実行するように構成されてもよい。インター予測処理部514は、ソースビデオブロックを受信し、ビデオブロックのPUに対する動きベクトルを計算するように構成されてもよい。動きベクトルは、参照フレーム内の予測ブロックに対する現在のビデオフレーム内のビデオブロックの予測ユニットの変位を示してもよい。インター予測符号化は、1つ以上の参照ピクチャを使用してもよい。更に、動き予測は、単一予測(1つの動きベクトルを用いる)又は双予測(2つの動きベクトルを用いる)であってもよい。インター予測処理部514は、例えば、絶対差分和(sum of absolute difference)(SAD)、差分二乗和(sum of square difference)(SSD)、又は他の差の測定法によって判定された画素差を計算することにより、予測ブロックを選択するように構成されてもよい。上述したように、動きベクトルは、動きベクトル予測に従って判定及び判定されてもよい。インター予測処理部514は、上述したように、動きベクトル予測を実行するように構成されてもよい。インター予測処理部514は、動き予測データを用いて予測ブロックを生成するように構成されてもよい。例えば、インター予測処理部514は、フレームバッファ(図5に示さない)内に予測ビデオブロックを配置してもよい。インター予測処理部514は、復元された残差ブロックに1つ以上の補間フィルタを適用して、動き予測に使用するための整数未満の画素値を計算するように更に構成してもよいことに留意されたい。インター予測処理部514は、計算された動きベクトルに対する動き予測データをエントロピ符号化部518に出力してもよい。
図5を再び参照すると、フィルタ部516は、復元されたビデオブロック及び符号化パラメータを受信し、変更した復元されたビデオデータを出力する。フィルタ部516は、デブロッキング及び/又はサンプル適応オフセット(SAO)フィルタリングを実行するように構成されてもよい。SAOフィルタリングは、復元されたビデオデータにオフセットを加えることにより復元を向上するために使用され得る、非線形振幅マッピングである。図5に示すように、イントラ予測処理部512及びインター予測処理部514は、フィルタ部216を介して、変更した復元されたビデオブロックを受信してもよいことに留意されたい。エントロピ符号化部518は、量子化された変換係数及び予測シンタックスデータ(すなわち、イントラ予測データ及び動き予測データ)を受信する。いくつかの例では、係数量子化部506は、係数がエントロピ符号化部518に出力される前に、量子化された変換係数を含む行列の走査を実行してもよいことに留意されたい。他の例では、エントロピ符号化部518は、走査を実行してもよい。エントロピ符号化部518は、本明細書で説明する技術の1つ以上に従ってエントロピ符号化を実行するように構成されてもよい。このようにして、ビデオ符号化装置500は、本開示の1つ以上の技術に従って符号化ビデオデータを生成するように構成されたデバイスの一例を表す。
図1を再び参照すると、データカプセル化装置107は、符号化ビデオデータを受信し、定義されたデータ構造に従って準拠ビットストリーム、例えば、一連のNALユニットなどの準拠ビットストリームを生成してもよい。準拠ビットストリームを受信するデバイスは、そこからビデオデータを再生成してもよい。更に、上述したように、サブビットストリーム抽出とは、受信ビットストリーム中のデータを破棄及び/又は変更することによって、準拠ビットストリームを受信しているデバイスが、新たな準拠ビットストリームを形成するプロセスを指してもよい。適合ビットストリームという用語は、準拠ビットストリームという用語の代わりに使用されてもよいことに留意されたい。一実施例では、データカプセル化装置107は、本明細書で説明する1つ以上の技術に従ってシンタックスを生成するように構成されてもよい。データカプセル化装置107は、ビデオ符号化装置106と同じ物理デバイス内に配置される必要はないことに留意されたい。例えば、ビデオ符号化装置106及びデータカプセル化装置107によって実行されるものとして説明される機能は、図4に示すデバイス間で配信してもよい。
上述したように、JVET-AB2006において規定されるシグナリングは不十分であり得る。本明細書の技術によれば、一実施例では、特定のNNPFC SEIメッセージが受信機デバイスにとって有用な又は関心のある目的を有するかどうか、及び受信機デバイスがその目的に基づいてメッセージ中の他のデータをパースする必要があるかどうかを受信機デバイスが判定することを可能にするために、シンタックス要素nnpfc_purposeがNNPFC SEIメッセージ中でより前に提供される。更に、一実施例では、本明細書の技術によれば、nnpfc_purposeは、無条件にシグナリングされてもよい。nnpfc_idの追跡を維持することによって間接的にではなく、NNPFCメッセージの目的を直接的に知ることにより、受信機デバイスが迅速に目的情報を明確に知ることが可能になることに留意されたい。JVET-AB2006によれば、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージ(1に等しいnnpfc_formatting_and_purpose_flagを有し、nnpfc_purposeシンタックス要素を含む)が失われることがあり、同じnnpfc_id値及び0に等しいnnpfc_formatting_and_purpose_flagを用いて第2のNNPFC SEIメッセージをシグナリングしてもよいことに留意されたい。この場合、第2のNNPFC SEIメッセージの目的を発見する前に、追加のパースが必要とされる。現在、追加のパースは、nnpfc_mode_idcをパースすることと、それが1に等しい場合、任意のバイトアライメントnnpfc_reserved_zero_bitビット、nnpfc_tag_uri、nnpfc_uri、次いでnnpfc_formatting_and_purpose_flagシンタックス要素をパースすることと、を含む。本明細書の技術によれば、nnpfc_purposeフラグをNNPFC SEIメッセージ中でより前に移動させ、それを無条件にシグナリングすることにより、そのようなシナリオを緩和するのに役立つことになることが主張される。更に、本明細書の技術によれば、一実施例では、フラグnnpfc_formatting_and_purpose_flagを、nnpfc_formatting_flagと改名してもよい。
一実施例では、本明細書の技術によれば、規格化されたデータに従って入力データが操作されるかどうかを示すシンタックス要素がニューラルネットワークポストフィルタ特性SEIメッセージ中で提供される。表13A~表13Dは、本明細書の技術による、nnpfc_purposeシンタックス要素が移動される、例示的なニューラルネットワークポストフィルタ特性SEIメッセージの関連するシンタックスを示す。
別の実施例では、nnpfc_purposeシンタックス要素は、上記の実施例のうちの1つにおいて説明したように上に移動し、nnpfc_formatting_and_purpose_flagに基づいて依然として条件付きでシグナリングされてもよく、したがって、これらの場合、nnpfc_formatting_and_purpose_flagの位置も、上に移動されてもよい。表14A~表14Cは、本明細書の技術による、nnpfc_purposeシンタックス要素が移動される、例示的なニューラルネットワークポストフィルタ特性SEIメッセージの関連するシンタックスを示す。
表13A~表14Cに関して、セマンティクスは、上記で提供されるセマンティクスに基づいていてもよい。
JVET-AB2006のセマンティクスでは、シンタックス要素nnpfc_out_order_idcについて、プロセスStoreOutputTensors()を定義する最も外側のforループは、このプロセスが出力ピクチャの数に適用されるべきであるので、変数numInputPicsの代わりに変数numOutputPicsを使用すべきであることが主張される。更に、JVET-AB2006のセマンティクスでは、nnpfc_purposeが値5以外の値を有するとき、変数numOutputPicsは導出されないことが主張される。変数numOutputPicsは、プロセスStoreOutputTensors()を定義するnnpfc_outout_order_idcの式に使用されるべきであることが主張される。したがって、本明細書の技術によれば、変数numOutputPicsは、nnpfc_purposeが5に等しくないときに初期化される。一実施例では、本明細書の技術によれば、nnpfc_out_order_idc及びnnpfc_interpolated_picsのセマンティクスは、以下のとおりであってもよい。
nnpfc_out_order_idcは、後処理フィルタから得られるサンプルの出力順序を示す。
nnpfc_out_order_idcの値は、この文書のこの版に準拠するビットストリームにおいて、両端値を含む0~3の範囲内にあるものとする。nnpfc_out_order_idcの両端値を含む4~255の値は、ITU-T|ISO/IECによる将来の使用のために予約され、この文書のこの版に準拠するビットストリーム中に存在しないものとする。この文書のこの版に準拠する復号装置は、両端値を含む4~255の範囲内のnnpfc_out_order_idcを有するNNPFC SEIメッセージを無視するものとする。255よりも大きいnnpfc_out_order_idcの値は、この文書のこの版に準拠するビットストリーム中に存在しないものとし、将来の使用のために予約されない。
nnpfc_purposeが2又は4に等しいとき、nnpfc_out_order_idcは3に等しくないものとする。
表10は、nnpfc_out_order_idc値の有益な説明を含む。
入力テンソルに含まれるサンプルのパッチの左上サンプル位置を指定する所与の垂直サンプル座標cTop及び水平サンプル座標cLeftの出力テンソルoutputTensorからフィルタリングされた出力サンプル配列FilteredYPic、FilteredCbPic、及びFilteredCrPicにおけるサンプル値を導出するためのプロセスStoreOutputTensors()は、以下のように指定される。
nnpfc_out_order_idcは、後処理フィルタから得られるサンプルの出力順序を示す。
nnpfc_out_order_idcの値は、この文書のこの版に準拠するビットストリームにおいて、両端値を含む0~3の範囲内にあるものとする。nnpfc_out_order_idcの両端値を含む4~255の値は、ITU-T|ISO/IECによる将来の使用のために予約され、この文書のこの版に準拠するビットストリーム中に存在しないものとする。この文書のこの版に準拠する復号装置は、両端値を含む4~255の範囲内のnnpfc_out_order_idcを有するNNPFC SEIメッセージを無視するものとする。255よりも大きいnnpfc_out_order_idcの値は、この文書のこの版に準拠するビットストリーム中に存在しないものとし、将来の使用のために予約されない。
nnpfc_purposeが2又は4に等しいとき、nnpfc_out_order_idcは3に等しくないものとする。
表10は、nnpfc_out_order_idc値の有益な説明を含む。
入力テンソルに含まれるサンプルのパッチの左上サンプル位置を指定する所与の垂直サンプル座標cTop及び水平サンプル座標cLeftの出力テンソルoutputTensorからフィルタリングされた出力サンプル配列FilteredYPic、FilteredCbPic、及びFilteredCrPicにおけるサンプル値を導出するためのプロセスStoreOutputTensors()は、以下のように指定される。
後処理フィルタのための入力として使用されるピクチャの数を指定する変数numInputPics、及び後処理フィルタから得られるピクチャの総数を指定する変数numOutputPicsは、以下のように導出される。
別の実施例では、nnpfc_purposeが5に等しくないとき、forループへの、及びnumOutputPicが1に等しくなるように初期化することへの上記の変更は、NNPFC SEIメッセージの他のシンタックス要素のセマンティクス中に含まれ得る。
一実施例では、本明細書の技術によれば、2つのue(v)符号化シンタックス要素nnpfc_num_input_pics_minus2及びnnpfc_interpolated_pics[i]に対して有効値範囲を定義してもよい。JVET-AB2006では、これらについて指定された範囲はない。これは、復号装置が好適なバッファを割り当てることを困難にする可能性がある。一実施例では、本明細書の技術によれば、nnpfc_num_input_pics_minus2及びnnpfc_interpolated_pics[i]のセマンティクスは、以下のとおりであってもよい。
nnpfc_num_input_pics_minus2プラス2は、後処理フィルタのための入力として使用される復号出力ピクチャの数を指定する。nnpfc_num_input_pics_minus2の値は、この文書のこの版に準拠するビットストリームにおいて、両端値を含む0~14の範囲内にあるものとする。
別の実施例では、14とは異なる値を、上限として、及びシンタックス要素nnpfc_num_input_pics_minus2の範囲を定義するために使用してもよい。例えば、30又は62又は126の値、あるいは何らかの他の値を使用してもよい。
nnpfc_interpolated_pics[i]は、後処理フィルタのための入力として使用されるi番目のピクチャと(i+1)番目のピクチャとの間の、後処理フィルタによって生成される補間ピクチャの数を指定する。nnpfc_interpolated_pics[i]の値は、この文書のこの版に準拠するビットストリームにおいて、両端値を含む0~64の範囲内にあるものとする。
別の実施例では、64とは異なる値を、上限として、及びシンタックス要素nnpfc_interpolated_pics[i]の範囲を定義するために使用してもよい。例えば、32又は96又は128又は256の値、あるいは何らかの他の値を使用してもよい。
nnpfc_num_input_pics_minus2プラス2は、後処理フィルタのための入力として使用される復号出力ピクチャの数を指定する。nnpfc_num_input_pics_minus2の値は、この文書のこの版に準拠するビットストリームにおいて、両端値を含む0~14の範囲内にあるものとする。
別の実施例では、14とは異なる値を、上限として、及びシンタックス要素nnpfc_num_input_pics_minus2の範囲を定義するために使用してもよい。例えば、30又は62又は126の値、あるいは何らかの他の値を使用してもよい。
nnpfc_interpolated_pics[i]は、後処理フィルタのための入力として使用されるi番目のピクチャと(i+1)番目のピクチャとの間の、後処理フィルタによって生成される補間ピクチャの数を指定する。nnpfc_interpolated_pics[i]の値は、この文書のこの版に準拠するビットストリームにおいて、両端値を含む0~64の範囲内にあるものとする。
別の実施例では、64とは異なる値を、上限として、及びシンタックス要素nnpfc_interpolated_pics[i]の範囲を定義するために使用してもよい。例えば、32又は96又は128又は256の値、あるいは何らかの他の値を使用してもよい。
JVET-AB2006によれば、NNPFC SEIメッセージは、入力としてルマ及びクロマのための別個のビット深度(BitDepthY及びBitDepthC)をとり、ルマサンプル及びクロマサンプルのための2つの別個の関数InpY(x)及びInpC(x)を定義することが主張される。しかしながら、セマンティクスでは、クロマについてのInpC(x)は、シンタックス要素nnpfc_inp_tensor_bitdepth_minus8に基づいて計算されるinpTensorBitDepth変数を利用して計算される。しかしながら、nnpfc_inp_tensor_bitdepth_minus8のセマンティクスは、それに8をプラスしたものが入力整数テンソル中のルマサンプル値のビット深度を指定することを規定する。一実施例では、本明細書の技術によれば、入力整数テンソル中のクロマサンプル値のビット深度を指定するための追加のシンタックス要素nnpfc_inp_tensor_bitdepth_chroma_minus8を定義してもよい。JVET-AB2006におけるNNPFC SEIメッセージは、クロップされた復号出力ピクチャのルマサンプル配列及びクロマサンプル配列のために別個のビット値深度BitDepthY及びBitDepthCを使用するので、かつnnpfc_inp_format_idcのためのセマンティクスにおける計算が別個の関数InpY()及びInpC()を定義するので、入力整数テンソル中のルマサンプル値のビット深度とは異なり得る入力整数テンソル中のクロマサンプル値の別個のビット深度を指定するための別個のシンタックス要素nnpfc_inp_tensor_bitdepth_chroma_minus8を定義することがより柔軟になることが主張される。表15は、本明細書の技術による、シンタックス要素nnpfc_inp_tensor_bitdepth_chroma_minus8を有する例示的なニューラルネットワークポストフィルタ特性SEIメッセージの関連するシンタックスを示す。
表15に関して、セマンティクスは、上記で提供されたセマンティクス、及び以下に基づいていてもよい。
nnpfc_inp_format_idcは、クロップされた復号出力ピクチャのサンプル値を後処理フィルタへの入力値に変換する方法を示す。nnpfc_inp_format_idcが0に等しいとき、後処理フィルタへの入力値は実数であり、関数InpY()及びInpC()は、以下のように指定される。
InpY(x)=x÷((1<<BitDepthY)-1)
InpC(x)=x÷((1<<BitDepthC)-1)
nnpfc_inp_format_idcが1に等しいとき、後処理フィルタへの入力値は符号なし整数であり、関数InpY()及びInpC()は、以下のように指定される。
nnpfc_inp_format_idcは、クロップされた復号出力ピクチャのサンプル値を後処理フィルタへの入力値に変換する方法を示す。nnpfc_inp_format_idcが0に等しいとき、後処理フィルタへの入力値は実数であり、関数InpY()及びInpC()は、以下のように指定される。
InpY(x)=x÷((1<<BitDepthY)-1)
InpC(x)=x÷((1<<BitDepthC)-1)
nnpfc_inp_format_idcが1に等しいとき、後処理フィルタへの入力値は符号なし整数であり、関数InpY()及びInpC()は、以下のように指定される。
1よりも大きいnnpfc_inp_format_idcの値は、ITU-T|ISO/IECによる将来の仕様のために予約され、この文書のこの版に準拠するビットストリーム中に存在しないものとする。この文書のこの版に準拠する復号装置は、nnpfc_inp_format_idcの予約済み値を含むNNPFC SEIメッセージを無視するものとする。
nnpfc_inp_tensor_bitdepth_luma_minus8プラス8は、入力整数テンソル中のルマサンプル値のビット深度を指定する。inpTensorBitDepthの値は以下のように導出される。
inpTensorBitDepth=nnpfc_inp_tensor_bitdepth_luma_minus8+8
nnpfc_inp_tensor_bitdepth_luma_minus8の値が両端値を含む0~24の範囲内にあるものとすることが、ビットストリーム適合性の要件である。
nnpfc_inp_tensor_bitdepth_chroma_minus8プラス8は、入力整数テンソル中のクロマサンプル値のビット深度を指定する。inpTensorBitDepthの値は以下のように導出される。
inpTensorBitDepthChroma=nnpfc_inp_tensor_bitdepth_chroma_minus8+8
nnpfc_inp_tensor_bitdepth_chroma_minus8の値が両端値を含む0~24の範囲内にあるものとすることが、ビットストリーム適合性の要件である。
一実施例では、変数inpTensorBitDepthをinpTensorBitDepthLumaに改名してもよい。
いくつかの実施例では、表15において提供される例示的なシンタックスは、表13A~表13D及び表14A~表14Cにおいて提供される例示的なシンタックスと組み合わせてもよいことに留意されたい。すなわち、シンタックス要素nnpfc_inp_tensor_bitdepth_chroma_minus8は、表13A~表13D及び表14A~表14Cのいずれかに含まれ得る。
一実施例では、本明細書の技術によれば、nnpfc_inp_tensor_bitdepth_minus8のセマンティクスは、それに8をプラスしたものが入力整数テンソル中のルマサンプル値及びクロマサンプル値のビット深度を指定するように定義してもよい。すなわち、一実施例では、nnpfc_inp_tensor_bitdepth_minus8のセマンティクスは、以下に基づいていてもよい:nnpfc_inp_tensor_bitdepth_minus8プラス8は、入力整数テンソル中のルマサンプル値及びクロマサンプル値のビット深度を指定する。inpTensorBitDepthの値は以下のように導出される。
inpTensorBitDepth=nnpfc_inp_tensor_bitdepth_minus8+8
nnpfc_inp_tensor_bitdepth_minus8の値が両端値を含む0~24の範囲内にあるものとすることが、ビットストリーム適合性の要件である。
inpTensorBitDepth=nnpfc_inp_tensor_bitdepth_minus8+8
nnpfc_inp_tensor_bitdepth_minus8の値が両端値を含む0~24の範囲内にあるものとすることが、ビットストリーム適合性の要件である。
JVET-AB2006によれば、NNPFC SEIメッセージは、以下のような更新のメカニズムをサポートする。
NNPFC SEIメッセージが、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージでないとき、以下が適用される。
-このSEIメッセージは、同じnnpfc_id値を有する復号順序で先行する基本後処理フィルタに対する更新を定義する。
-このSEIメッセージは、現在のCLVSの終了まで、又は現在のCLVS内で出力順序でその特定のnnpfc_id値を有する次のNNPFC SEIメッセージまで、出力順序で現在のレイヤの現在の復号されたピクチャ及び全ての後続の復号されたピクチャに関連する。
また、
このSEIメッセージが、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージであるとき、後処理フィルタPostProcessingFilter()は、基本後処理フィルタと同じになるように割り当てられる。
このSEIメッセージが、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージでないとき、後処理フィルタPostProcessingFilter()は、このSEIメッセージによって定義された更新を基本後処理フィルタに適用することによって取得される。
NNPFC SEIメッセージが、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージでないとき、以下が適用される。
-このSEIメッセージは、同じnnpfc_id値を有する復号順序で先行する基本後処理フィルタに対する更新を定義する。
-このSEIメッセージは、現在のCLVSの終了まで、又は現在のCLVS内で出力順序でその特定のnnpfc_id値を有する次のNNPFC SEIメッセージまで、出力順序で現在のレイヤの現在の復号されたピクチャ及び全ての後続の復号されたピクチャに関連する。
また、
このSEIメッセージが、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージであるとき、後処理フィルタPostProcessingFilter()は、基本後処理フィルタと同じになるように割り当てられる。
このSEIメッセージが、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージでないとき、後処理フィルタPostProcessingFilter()は、このSEIメッセージによって定義された更新を基本後処理フィルタに適用することによって取得される。
JVET-AB2006によれば、更新は累積的ではなく、むしろ各更新は、現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージによって指定された後処理フィルタである基本後処理フィルタに適用されることに留意されたい。
現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージが失われるシナリオでは、同じnnpfc_id値を有する後続のNNPFC SEIメッセージを受信する受信機は、受信されたメッセージが更新であるかどうかを理解する前に、いくつかのシンタックス要素をパースする必要があり得ることが主張される。また、この場合、基本後処理フィルタを定義する最初のNNPFC SEIメッセージが失われるので、更新である受信されたメッセージは、典型的には、このパースの全てを行った後に破棄される必要がある。本明細書の技術によれば、この処理及びパースは、メッセージが更新であるか、又はシグナリングされたnppfc_idのための最初のNNPFC SEIメッセージであるかを示すフラグをNNPFC SEIメッセージ中で直接シグナリングすることによって、簡略化することができる。
一実施例では、本明細書の技術によれば、フラグをシグナリングして、NNPFC SEIメッセージがCLVS内の最初の(又は新しい)NNPFC SEIメッセージであるかどうかを示してもよく、これにより、特定のnnpfc_idのための基本後処理フィルタを指定する、又はそれが同じnnpfc_idを有する以前にシグナリングされたSEIメッセージの更新であるかを指定する。これにより、受信されたnnpfc_id値の追跡を維持し、またSEIメッセージ内の他のフィールドをパースしてそれが更新であるかどうかを識別する代わりに、単にこのフラグをパースすることによって、受信機がNNPFC SEIメッセージを処理することをより容易にすることができると主張される。例えば、NNPFC SEIメッセージ中のいくつかのシンタックス要素は、メッセージがMPEGニューラルネットワーク表現(Neural Network Representation、NNR)更新を含んでいることを識別するためにパースされる必要があり得る。これにより、SEIメッセージが失われ得る環境においてNNPFCメッセージを理解するために必要とされる処理を増加させる可能性があり、これは、提案されたフラグをシグナリングすることによって回避することができることが主張される。
表16は、本明細書の技術による、NNPFC SEIメッセージが新しいメッセージであるか、又は更新であるかを示すフラグを有する例示的なニューラルネットワークポストフィルタ特性SEIメッセージの関連するシンタックスを示す。
表16に関して、セマンティクスは、上記で提供されたセマンティクス、及び以下に基づいていてもよい。
1に等しいnnpfc_update_flagは、このNNPFC SEIメッセージのコンテンツが同じnnpfc_idを有する前の(第1の)NNPFCメッセージ情報に対する更新を提供することを指定する。0に等しいnnpfc_update_flagは、このNNPFC SEIメッセージのコンテンツが同じnnpfc_idを有する前のNNPFCメッセージ情報の更新ではないスタンドアロンNNPFCメッセージ情報を含むことを指定する。
代替として、セマンティクスは、以下のように定義してもよい。
1に等しいnnpfc_update_flagは、このNNPFC SEIメッセージのコンテンツが同じnnpfc_idを有する前の(最初の)NNPFC SEIメッセージに対する更新を提供することを指定する。0に等しいnnpfc_update_flagは、このSEIメッセージが現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージであることを指定する。
1に等しいnnpfc_update_flagは、このNNPFC SEIメッセージのコンテンツが同じnnpfc_idを有する前の(第1の)NNPFCメッセージ情報に対する更新を提供することを指定する。0に等しいnnpfc_update_flagは、このNNPFC SEIメッセージのコンテンツが同じnnpfc_idを有する前のNNPFCメッセージ情報の更新ではないスタンドアロンNNPFCメッセージ情報を含むことを指定する。
代替として、セマンティクスは、以下のように定義してもよい。
1に等しいnnpfc_update_flagは、このNNPFC SEIメッセージのコンテンツが同じnnpfc_idを有する前の(最初の)NNPFC SEIメッセージに対する更新を提供することを指定する。0に等しいnnpfc_update_flagは、このSEIメッセージが現在のCLVS内の特定のnnpfc_id値を有する、復号順序で最初のNNPFC SEIメッセージであることを指定する。
別の実施例では、nnpfc_update_flagは、NNPFC SEIメッセージ中の異なる位置においてシグナリングされてもよい。例えば、それは、nnpfc_idシンタックス要素の直後、又はnnpfc_mode_idcシンタックス要素の直後、又はnnfc_formatting_and_purpose_flagシンタックス要素の直前、又はNNPFC SEIメッセージ中の何らかの他の場所においてシグナリングされてもよい。
いくつかの実施例では、表16において提供される例示的なシンタックスは、表13A~表13D、表14A~表14C、表15、及びそれらの組み合わせにおいて提供される例示的なシンタックスと組み合わせてもよいことに留意されたい。すなわち、シンタックス要素nnpfc_update_flagは、表13A~表13D、表14A~表14C、表15、及びそれらの組み合わせのいずれかに含まれ得る。
本明細書の技術によれば、いくつかの実施例では、このようにして、ビデオ符号化装置500は、ニューラルネットワークポストフィルタ特性メッセージをシグナリングし、ニューラルネットワークポストフィルタ特性メッセージ中で、後処理フィルタの目的を示す第1のシンタックス要素をシグナリングし、ニューラルネットワークポストフィルタ特性メッセージ中で、後処理フィルタの目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関係するシンタックス要素がニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をシグナリングし、第1のシンタックス要素が、ニューラルネットワークポストフィルタ特性メッセージ中で第2のシンタックス要素に先行する、構成されたデバイスの一例を表す。
図1を再び参照すると、インターフェース108は、データカプセル化装置107によって生成されたデータを受信し、そのデータを通信媒体に送信及び/又は記憶するように構成された任意のデバイスを含んでもよい。インターフェース108は、イーサネットカードなどのネットワークインターフェースカードを含んでもよく、光送受信機、無線周波数送受信機、又は情報を送信及び/若しくは受信することができる任意の他の種類のデバイスを含んでもよい。更に、インターフェース108は、ファイルを記憶デバイス上に記憶することを可能にし得るコンピュータシステムインターフェースを含んでもよい。例えば、インターフェース108は、Peripheral Component Interconnect(PCI)及びPeripheral Component Interconnect Express(PCIe)バスプロトコル、独自のバスプロトコル、ユニバーサルシリアルバス(Universal Serial Bus、USB)プロトコル、I2C、又はピアデバイスを相互接続するために使用され得る任意の他の論理構造及び物理構造をサポートする、チップセットを含んでもよい。
図1を再び参照すると、目的デバイス120は、インターフェース122と、データカプセル化解除装置123と、ビデオ復号装置124と、ディスプレイ126とを含む。インターフェース122は、通信媒体からデータ受信するように構成されている任意のデバイスを含んでもよい。インターフェース122は、イーサネットカードなどのネットワークインターフェースカードを含んでもよく、光送受信機、無線周波数送受信機、又は情報を受信及び/若しくは送信することができる任意の他の種類のデバイスを含んでもよい。更に、インターフェース122は、準拠ビデオビットストリームを記憶デバイスから取得することを可能にするコンピュータシステム用インターフェースを含んでもよい。例えば、インターフェース122は、PCI及びPCIeバスプロトコル、独自のバスプロトコル、USBプロトコル、I2C、又はピアデバイスを相互接続するために使用され得る任意の他の論理構造及び物理構造をサポートする、チップセットを含んでもよい。データカプセル化解除装置123は、本明細書で説明する例示的なシンタックス構造のいずれかを受信及びパースするように構成されてもよい。
ビデオ復号装置124は、ビットストリーム(例えば、サブビットストリーム抽出)及び/又はその許容可能な変形を受信し、そこからビデオデータを再生成するように構成された任意のデバイスを含んでもよい。ディスプレイ126は、ビデオデータを表示するように構成された任意のデバイスを含んでもよい。ディスプレイ126は、液晶ディスプレイ(liquid crystal display、LCD)、プラズマディスプレイ、有機発光ダイオード(organic light emitting diode、OLED)ディスプレイ、又は別の種類のディスプレイなどの、様々なディスプレイデバイスのうちの1つを含んでもよい。ディスプレイ126は、高解像度ディスプレイ又は超高解像度ディスプレイを含んでもよい。図1に示す例では、ビデオ復号装置124は、データをディスプレイ126に出力するように説明されているが、ビデオ復号装置124は、ビデオデータを様々な種類のデバイス及び/又はそのサブコンポーネントに出力するように構成されてもよいことに留意されたい。例えば、ビデオ復号装置124は、本明細書で説明するような任意の通信媒体にビデオデータを出力するように構成されてもよい。
図6は、本開示の1つ以上の技術(例えば、上述した参照ピクチャリスト作成の復号プロセス)による、ビデオデータを復号するように構成され得るビデオ復号装置の一例を示すブロック図である。一実施例では、ビデオ復号装置600は、変換データを復号し、復号された変換データに基づいて変換係数から残差データを復元するように構成されてもよい。ビデオ復号装置600は、イントラ予測復号及びインター予測復号を実行するように構成されてもよく、そのためにハイブリッド復号装置と称されてもよい。ビデオ復号装置600は、表1~表16において上述したシンタックス要素の任意の組み合わせをパースするように構成されてもよい。ビデオ復号装置600は、上述したプロセスに基づいて、又はそれに従って、更に、表1~表16中のパースされた値に基づいて、ビデオを復号してもよい。
図6に示す例では、ビデオ復号装置600は、エントロピ復号部602と、逆量子化部604と、逆変換係数処理部606と、イントラ予測処理部608と、インター予測処理部610と、加算器612と、ポストフィルタ部614と、参照バッファ616とを含む。ビデオ復号装置600は、ビデオ符号化システムと合致するようにしてビデオデータを復号するように構成されてもよい。例示的なビデオ復号装置600は、別個の機能ブロックを有するように示されているが、そのような例示は、説明のためのものであり、ビデオ復号装置600及び/又はそのサブコンポーネントを特定のハードウェア又はソフトウェアアーキテクチャに限定するものではないことに留意されたい。ビデオ復号装置600の機能は、ハードウェア、ファームウェア、及び/又はソフトウェアの実装形態の任意の組み合わせを用いて実現されてもよい。
図6に示すように、エントロピ復号部602は、エントロピ符号化されたビットストリームを受信する。エントロピ復号部602は、エントロピ符号化プロセスとは逆のプロセスに従って、ビットストリームからシンタックス要素及び量子化された係数を復号するように構成されてもよい。エントロピ復号部602は、上述したエントロピ符号化技術のいずれかに従ってエントロピ復号を実行するように構成されてもよい。エントロピ復号部602は、ビデオ符号化規格と合致するようにして、符号化されたビットストリーム中のシンタックス要素の値を判定してもよい。図6に示すように、エントロピ復号部602は、ビットストリームから量子化パラメータ、量子化された係数の値、変換データ、及び予測データを判定してもよい。図6に示す例では、逆量子化部604及び逆変換係数処理部606は、量子化された係数の値をエントロピ復号部602から受信し、復元された残差データを出力する。
図6を再び参照すると、復元された残差データを加算器612に提供してもよい。加算器612は、復元された残差データを予測ビデオブロックに加算し、復元されたビデオデータを生成してもよい。予測ビデオブロックは、予測ビデオ技術(すなわち、イントラ予測及びフレーム間予測)に従って判定されてもよい。イントラ予測処理部608は、イントラ予測シンタックス要素を受信し、参照バッファ616から予測ビデオブロックを取り出すように構成されてもよい。参照バッファ616は、ビデオデータの1つ以上のフレームを記憶するように構成されたメモリデバイスを含んでもよい。イントラ予測シンタックス要素は、上述したイントラ予測モードなどのイントラ予測モードを識別してもよい。インター予測処理部610は、インター予測シンタックス要素を受信し、動きベクトルを生成して、参照バッファ616に記憶された1つ以上の参照フレーム中の予測ブロックを識別してもよい。インター予測処理部610は、場合によっては補間フィルタに基づく補間を実行して、動き補償されたブロックを生成してもよい。シンタックス要素には、画素未満の精度を有する動き予測に使用されることになる補間フィルタの識別子を含めてもよい。インター予測処理部610は、補間フィルタを使用して、参照ブロックのサブ整数の画素に対する補間された値を計算してもよい。ポストフィルタ部614は、復元されたビデオデータに対してフィルタリングを実行するように構成されてもよい。例えば、ポストフィルタ部614は、例えば、ビットストリーム中で指定されたパラメータに基づいて、デブロッキング及び/又はサンプル適応オフセット(SAO)フィルタリングを実行するように構成されてもよい。更に、いくつかの例では、ポストフィルタ部614は、独自の任意のフィルタリング(例えば、モスキートノイズリダクションなどの視覚強調)を実行するように構成されてもよいことに留意されたい。図6に示すように、復元されたビデオブロックは、ビデオ復号装置600によって出力されてもよい。このようにして、ビデオ復号装置600は、ニューラルネットワークポストフィルタ特性メッセージを受信し、ニューラルネットワークポストフィルタ特性メッセージから、後処理フィルタの目的を示す第1のシンタックス要素をパースし、ニューラルネットワークポストフィルタ特性メッセージから、後処理フィルタの目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関係するシンタックス要素がニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をパースし、第1のシンタックス要素が、ニューラルネットワークポストフィルタ特性メッセージ中で第2のシンタックス要素に先行する、ように構成されたデバイスの一例を表す。
1つ以上の例では、記載された機能は、ハードウェア、ソフトウェア、ファームウェア、又はこれらの任意の組み合わせで実装されてもよい。ソフトウェアで実装される場合に、この機能は、コンピュータ可読媒体上の1つ以上の命令又はコードとして記憶されるか又は伝送され、ハードウェアベースの処理部によって実行されてもよい。コンピュータ可読媒体は、例えば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む、データ記憶媒体又は通信媒体などの有形の媒体に対応する、コンピュータ可読記憶媒体を含んでもよい。このようにして、コンピュータ可読媒体は、一般に、(1)非一時的な有形のコンピュータ可読記憶媒体、又は(2)信号又は搬送波などの通信媒体に対応してもよい。データ記憶媒体は、本開示中に記載された技術の実現のための命令、コード、及び/又はデータ構造を取り出すために、1つ以上のコンピュータ又は1つ以上のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ可読媒体を含んでもよい。
一例として、非限定的に、このようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROM、又は他の光学ディスク記憶装置、磁気ディスク記憶装置、他の磁気記憶デバイス、フラッシュメモリ、又は任意の他の媒体、すなわち命令若しくはデータ構造の形式で所望のプログラムコードを記憶するために使用可能であり、かつコンピュータによりアクセス可能な任意の他の媒体を含んでもよい。また、任意の接続は、コンピュータ可読媒体と適切に呼ばれる。例えば、命令がウェブサイト、サーバ、又は他のリモートソースから、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者線(digital subscriber line、DSL)、あるいは赤外線、無線及びマイクロ波などの無線技術を使用して伝送される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、あるいは赤外線、無線及びマイクロ波などの無線技術は、媒体の定義に含まれる。しかし、コンピュータ可読媒体及びデータ記憶媒体は、接続、搬送波、信号、又は他の一過性媒体を含まないが、代わりに非一時的な有形記憶媒体を対象としていることを理解されたい。本発明で使用する場合、ディスク(disk)及びディスク(disc)は、コンパクトディスク(Compact Disc、CD)、レーザーディスク(laser disc)、光学ディスク(optical disc)、デジタル多用途ディスク(Digital Versatile Disc、DVD)、フロッピーディスク(floppy disk)及びブルーレイ(登録商標)ディスク(Blu-ray(登録商標)disc)を含み、ディスク(disk)は通常データを磁気的に再生し、ディスク(disc)はレーザを用いてデータを光学的に再生する。上記の組み合わせもまた、コンピュータ可読媒体の範囲内に含まれなければならない。
命令は、1つ以上のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲート配列(FPGA)、又は他の同等の集積又はディスクリートロジック回路などの1つ以上のプロセッサによって実行されてもよい。したがって、本明細書で使用されるとき、用語「プロセッサ」は、前記の構造、又は本明細書で説明する技術の実装に好適な任意の他の構造のいずれかを指してもよい。加えて、いくつかの態様において、本明細書に記載の機能は、符号化及び復号するように構成された、又は複合コーデックに組み込まれた専用のハードウェアモジュール及び/又はソフトウェアモジュール内に設けられ得る。また、この技術は、1つ以上の回路又は論理素子中に完全に実装することができる。
本開示の技術は、無線ハンドセット、集積回路(integrated circuit、IC)、又はICのセット(例えば、チップセット)を含む多種多様なデバイス又は装置に実装されてもよい。様々なコンポーネント、モジュール、又はユニットを本開示中に示し、開示された技術を実行するように構成されたデバイスの機能的な態様を強調しているが、異なるハードウェアユニットによって実現することは必ずしも必要ではない。むしろ、前述したように、様々なユニットは、コーデックハードウェアユニットに組み合わせてもよく、又は好適なソフトウェア及び/又はファームウェアと共に、前述の1つ以上のプロセッサを含む、相互動作ハードウェアユニットの集合によって提供されてもよい。
更に、上述の実装形態の各々において使用される基地局デバイス及び端末デバイスの各機能ブロック又は様々な特徴は、一般的には集積回路又は複数の集積回路である回路によって実装又は実行されてもよい。本明細書に記載の機能を実行するように設計された回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け又は汎用アプリケーション集積回路(ASIC)、フィールドプログラマブルゲート配列(FPGA)若しくは他のプログラマブルロジックデバイス、ディスクリートゲート若しくはトランジスタロジック、若しくは個々のハードウェアコンポーネント、又はそれらの組み合わせを備えていてもよい。汎用プロセッサは、マイクロプロセッサでもよく、あるいは、プロセッサは、従来のプロセッサ、コントローラ、マイクロコントローラ、又はステートマシンでもよい。上述した汎用プロセッサ又は各回路は、デジタル回路で構成されても、又はアナログ回路で構成されてもよい。更に、半導体技術の進歩により現時点での集積回路に置き換わる集積回路化技術が現れれば、この技術による集積回路もまた使用可能となる。
様々な例について説明した。これら及び他の例は、以下の特許請求の範囲内である。
Claims (7)
- ビデオデータのニューラルネットワークフィルタリングを実行する方法であって、
ニューラルネットワークポストフィルタ特性メッセージを受信することと、
前記ニューラルネットワークポストフィルタ特性メッセージから、後処理フィルタの目的を示す第1のシンタックス要素をパースすることと、
前記ニューラルネットワークポストフィルタ特性メッセージから、前記後処理フィルタの目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関係するシンタックス要素が前記ニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をパースすることであって、前記第1のシンタックス要素が、前記ニューラルネットワークポストフィルタ特性メッセージ中で前記第2のシンタックス要素に先行する、第2のシンタックス要素をパースすることと、
を含む、方法。 - ニューラルネットワークポストフィルタ特性メッセージを受信し、
前記ニューラルネットワークポストフィルタ特性メッセージから、後処理フィルタの目的を示す第1のシンタックス要素をパースし、
前記ニューラルネットワークポストフィルタ特性メッセージから、前記後処理フィルタの目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関係するシンタックス要素が前記ニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をパースし、前記第1のシンタックス要素が、前記ニューラルネットワークポストフィルタ特性メッセージ中で前記第2のシンタックス要素に先行する、
ように構成された1つ以上のプロセッサを備えるデバイス。 - 前記1つ以上のプロセッサが、
前記ニューラルネットワークポストフィルタ特性メッセージから、入力整数テンソル中のクロマサンプル値のビット深度を指定する値を有する第3のシンタックス要素をパースするように更に構成されている、
請求項2に記載のデバイス。 - 前記1つ以上のプロセッサが、
前記ニューラルネットワークポストフィルタ特性メッセージから、前記ニューラルネットワークポストフィルタ特性メッセージのコンテンツが前のニューラルネットワークポストフィルタ特性メッセージに対する更新を提供するかどうかを指定する値を有する第4のシンタックス要素をパースするように更に構成されている、
請求項3に記載のデバイス。 - 前記デバイスが、ビデオ復号装置を含む、請求項2に記載のデバイス。
- ニューラルネットワークポストフィルタ特性メッセージをシグナリングし、
前記ニューラルネットワークポストフィルタ特性メッセージ中で、後処理フィルタの目的を示す第1のシンタックス要素をシグナリングし、
前記ニューラルネットワークポストフィルタ特性メッセージ中で、前記後処理フィルタの目的、入力フォーマッティング、出力フォーマッティング、及び複雑さに関係するシンタックス要素が前記ニューラルネットワークポストフィルタ特性メッセージ中に存在するかどうかを指定する第2のシンタックス要素をシグナリングし、前記第1のシンタックス要素が、前記ニューラルネットワークポストフィルタ特性メッセージ中で前記第2のシンタックス要素に先行する、
ように構成された1つ以上のプロセッサを備える、デバイス。 - 前記デバイスが、ビデオ符号化装置を含む、請求項6に記載のデバイス。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/084,346 | 2022-12-19 | ||
US18/084,346 US12137253B2 (en) | 2022-12-19 | 2022-12-19 | Systems and methods for signaling neural network post-filter purpose information in video coding |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024087742A true JP2024087742A (ja) | 2024-07-01 |
Family
ID=85222141
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023032906A Pending JP2024087742A (ja) | 2022-12-19 | 2023-03-03 | ビデオ符号化においてニューラルネットワークポストフィルタ目的情報をシグナリングするためのシステム及び方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US12137253B2 (ja) |
EP (1) | EP4391531A1 (ja) |
JP (1) | JP2024087742A (ja) |
KR (1) | KR20240096303A (ja) |
CN (1) | CN118233659A (ja) |
AU (1) | AU2023201203A1 (ja) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12036036B2 (en) * | 2021-02-05 | 2024-07-16 | Nokia Technologies Oy | High-level syntax for signaling neural networks within a media bitstream |
JP2023155630A (ja) * | 2022-04-11 | 2023-10-23 | シャープ株式会社 | 動画像符号化装置、動画像復号装置 |
-
2022
- 2022-12-19 US US18/084,346 patent/US12137253B2/en active Active
-
2023
- 2023-02-09 EP EP23155827.1A patent/EP4391531A1/en active Pending
- 2023-02-28 AU AU2023201203A patent/AU2023201203A1/en active Pending
- 2023-03-02 KR KR1020230027825A patent/KR20240096303A/ko unknown
- 2023-03-03 JP JP2023032906A patent/JP2024087742A/ja active Pending
- 2023-03-09 CN CN202310225402.0A patent/CN118233659A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
CN118233659A (zh) | 2024-06-21 |
US12137253B2 (en) | 2024-11-05 |
AU2023201203A1 (en) | 2024-07-04 |
KR20240096303A (ko) | 2024-06-26 |
EP4391531A1 (en) | 2024-06-26 |
US20240205462A1 (en) | 2024-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7427688B2 (ja) | ビデオ符号化におけるタイルグループ情報をシグナリングするためのシステム及び方法 | |
EP4395327A1 (en) | Systems and methods for signaling neural network post-filter overlap and sublayer frame rate upsampling information in video coding | |
US12137253B2 (en) | Systems and methods for signaling neural network post-filter purpose information in video coding | |
WO2024210141A1 (en) | Systems and methods for signaling neural network post-filter description information in video coding | |
WO2024214704A1 (en) | Systems and methods for removing overlap for a neural network post-filter in video coding | |
EP4401406A1 (en) | Systems and methods for signaling neural network post-filter tensor information in video coding | |
EP4447451A1 (en) | Systems and methods for signaling neural network post-filter tensor purpose and order information in video coding | |
EP4401405A1 (en) | Systems and methods for signaling neural network post-filter patch size information in video coding | |
US12088851B2 (en) | Systems and methods for signaling neural network post-filter information updates in video coding | |
EP4440111A1 (en) | Systems and methods for signaling neural network post-filter filter strength control information in video coding | |
EP4460003A1 (en) | Systems and methods for signaling neural network post-filter filter strength control information in video coding | |
EP4333430A1 (en) | Systems and methods for signaling neural network post-filter characteristics information in video coding | |
EP4425931A1 (en) | Systems and methods for signaling neural network post-filter resolution information in video coding | |
US12034976B2 (en) | Systems and methods for signaling neural network post-filter frame rate upsampling information in video coding | |
CN118338022A (zh) | 对视频数据执行神经网络滤波的方法、以及设备 | |
CN117651132A (zh) | 发送信号通知神经网络环路后滤波器信息的方法和设备 | |
CN118283280A (zh) | 对视频数据执行神经网络滤波的方法及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20240724 |