JP2023526374A - サブピクチャサブビットストリーム抽出の改良 - Google Patents

サブピクチャサブビットストリーム抽出の改良 Download PDF

Info

Publication number
JP2023526374A
JP2023526374A JP2022570208A JP2022570208A JP2023526374A JP 2023526374 A JP2023526374 A JP 2023526374A JP 2022570208 A JP2022570208 A JP 2022570208A JP 2022570208 A JP2022570208 A JP 2022570208A JP 2023526374 A JP2023526374 A JP 2023526374A
Authority
JP
Japan
Prior art keywords
video
layer
bitstream
sub
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
Application number
JP2022570208A
Other languages
English (en)
Inventor
イェクイ ワン
ジピン ドン
カイ ジャン
リー ジャン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing ByteDance Network Technology Co Ltd
ByteDance Inc
Original Assignee
Beijing ByteDance Network Technology Co Ltd
ByteDance Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing ByteDance Network Technology Co Ltd, ByteDance Inc filed Critical Beijing ByteDance Network Technology Co Ltd
Publication of JP2023526374A publication Critical patent/JP2023526374A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/188Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods 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/96Tree coding, e.g. quad-tree coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440245Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4728End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for selecting a Region Of Interest [ROI], e.g. for requesting a higher resolution version of a selected region
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8451Structuring of content, e.g. decomposing content into time segments using Advanced Video Coding [AVC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

映像コーディング、映像デコーディング、及び映像トランスコーディングを含む、映像処理のための技術が説明される。一つの方法例は、規則に従って、1つ以上のサブピクチャを含む1つ以上の映像ピクチャを含む1つ以上のレイヤを含む映像とこの映像のビットストリームとの間で変換を行うことを含み、この規則は、サブビットストリーム抽出処理中にビットストリームから抽出されるべきネットワーク抽象化レイヤ(NAL)ユニットを定義してサブビットストリームを出力し、かつこの規則は、サブビットストリーム抽出処理への1つ以上の入力をさらに指定し、かつ/またはこのビットストリームの異なるレイヤのサブピクチャのどの組み合わせを使用するかを規定し、これによりサブビットストリーム抽出処理の出力が予め定義されたフォーマットに準拠する。【選択図】図9

Description

関連出願の相互参照
パリ条約に基づく適用可能な特許法および/または規則に基づいて、本願は、2020年5月22日出願の国際特許出願第PCT/CN2020/091696号の優先権および利益を適時に主張することを目的とする。法に基づくすべての目的のために、上記出願の開示全体は、本明細書の開示の一部として参照により援用される。
この特許明細書は、画像および映像コーディングおよびデコーディングに関する。
デジタル映像は、インターネットおよび他のデジタル通信ネットワークにおいて最大の帯域幅の使用量を占めている。映像を受信および表示することが可能である接続されたユーザ機器の数が増加するにつれ、デジタル映像の使用に対する帯域幅需要は増大し続けることが予測される。
本願は、コーディングされた表現のデコーディングに有用な制御情報を使用して、映像のコーディングされた表現を処理するために、映像エンコーダおよびデコーダにより使用され得る技術を開示する。
1つの例示的な態様において、映像処理方法が開示される。この方法は、1つ以上のサブピクチャを含む1つ以上の映像ピクチャを含む映像とこの映像のビットストリームとの間で変換を行うことを含み、この変換はサブピクチャに適用されるスケーリングウィンドウの1つ以上のパラメータが、サブピクチャサブビットストリーム抽出処理中に1つ以上の構文要素から決定されることを規定する規則に準拠する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、規則に従って、1つ以上のサブピクチャを含む1つ以上の映像ピクチャを含む1つ以上のレイヤを含む映像とこの映像のビットストリームとの間で変換を行うことを含み、この規則は、サブビットストリーム抽出処理中にビットストリームから抽出されるべきネットワーク抽象化レイヤ(NAL)ユニットを定義してサブビットストリームを出力し、この規則は、サブビットストリーム抽出処理への1つ以上の入力をさらに指定し、および/または、このビットストリームの異なるレイヤのサブピクチャのどの組み合わせを使用するかを規定し、これによりサブビットストリーム抽出処理の出力が予め定義されたフォーマットに準拠する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、規則に従って、映像とこの映像のビットストリームとの間で変換を行うことを含み、このビットストリームは、複数のサブピクチャを含む第1のレイヤと、それぞれが単一のサブピクチャを含む第2のレイヤとを含み、この規則は、抽出時に、予め定義されたフォーマットに準拠した出力ビットストリームとなる第1のレイヤおよび第2のレイヤのサブピクチャの組み合わせを規定する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、映像とこの映像のビットストリームとの間で変換を行うことを含み、この規則は、複数のサブピクチャを含む1つ以上のレイヤおよび/または単一のサブピクチャを有する1つ以上のレイヤを有する出力レイヤセットが、スケーラブルネスティング補足強化情報(SEI)メッセージにおけるサブピクチャ識別子のリストによって示されるかどうか、またはどのように示されるかを規定する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、規則に従って、映像レイヤに1つ以上の映像ピクチャを含む映像とこの映像のビットストリームとの間で変換を行うことを含み、この規則は、サブビットストリーム抽出処理において、サブビットストリーム抽出の間に削除されるパラメータセットを置き換えるために用いられる外部手段の利用可能性に関係なく、(i)映像コーディングレイヤ(VCL)ネットワーク抽象化レイヤ(NAL)ユニット、(ii)VCL NALユニットに関連付けられたフィラーデータNALユニット、および(iii)VCL NALユニットと関連付けられたフィラーペイロード補足強化情報(SEI)メッセージの削除が実行されることを規定する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、規則に従って、1つ以上のサブピクチャを含む1つ以上のレイヤを含む映像と、この映像のビットストリームとの間で変換を行うことを含み、この規則は、参照ピクチャを、サブピクチャレイアウトと異なるサブピクチャレイアウトに従って分割する場合、サブピクチャレイアウトを用いてサブピクチャへ分割される現在のピクチャの同一位置に配置されるピクチャとして使用することを禁止する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、規則に従って、1つ以上のサブピクチャを含む1つ以上のレイヤを含む映像と、この映像のビットストリームとの間で変換を行うことを含み、この規則は、コーディングツールが現在のピクチャの参照ピクチャのサブピクチャレイアウトとは異なるサブピクチャレイアウトに依存する場合、サブピクチャレイアウトを使用してサブピクチャに分割される現在のピクチャの変換中に、コーディングツールを無効化することを規定する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、規則に従って、映像レイヤ内の1つ以上の映像ピクチャを含む映像とこの映像のビットストリームとの間で変換を行うことを含み、この規則は、特定のペイロードタイプを有するSEIメッセージを含む補足強化情報(SEI)ネットワーク抽象化レイヤ(NAL)ユニットが、この特定のペイロードタイプと異なるペイロードタイプを有する別のSEIメッセージを含まないことを規定する。
さらに別の例示的な態様において、映像エンコーダ装置が開示される。この映像エンコーダは、上述した方法を実装するように構成されたプロセッサを備える。
さらに別の例示的な態様において、映像デコーダ装置が開示される。この映像デコーダは、上述した方法を実装するように構成されたプロセッサを備える。
さらに別の例示的な態様では、コードが記憶されたコンピュータ可読媒体が開示される。このコードは、本明細書に記載の方法の1つをプロセッサが実行可能なコードの形式で実施する。
これらのおよび他の特徴は、本文書全体にわたって説明される。
ピクチャのラスタスキャンスライス分割の例を示し、ピクチャは、12個のタイルと3個のラスタスキャンスライスとに分割される。 ピクチャの矩形スライス分割の例を示し、ピクチャは、24個のタイル(6個のタイル列および4個のタイル行)と9個の矩形スライスとに分割される。 タイルおよび矩形のスライスに分割されたピクチャの例を示し、ピクチャは、4つのタイル(2つのタイルの列および2つのタイルの行)と4つの矩形スライスとに分割される。 15個のタイル、24個のスライス、および24個のサブピクチャに分割されたピクチャを示す。 典型的なサブピクチャに基づくビューポートに依存する360°映像コーディング方式を示す。 サブピクチャおよび空間的スケーラビリティに基づく改良されたビューポート依存型360°映像コーディング方式を示す。 映像処理システムの例を示すブロック図である。 映像処理装置のブロック図である。 映像処理方法の一例を示すフローチャートである。 本開示のいくつかの実施形態による映像コーディングシステムを示すブロック図である。 本発明のいくつかの実施形態によるエンコーダを示すブロック図である。 本発明のいくつかの実施形態によるデコーダを示すブロック図である。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。
本明細書では、理解を容易にするために章の見出しを使用しており、その技術および各章に記載された実施形態の適用可能性をその章のみに限定するものではない。さらに、H.266という用語は、ある説明において、理解を容易にするためだけに用いられ、開示される技術の範囲を限定するために用いられたものではない。このように、本明細書で説明される技術は、他の映像コーデックプロトコルおよび設計にも適用可能である。
1. 導入
本明細書は、映像コーディング技術に関する。具体的には、サブピクチャサブビットストリーム抽出処理、スケーラブルネスティングSEIメッセージ、およびサブピクチャレベル情報SEIメッセージである。この考えは、個々にまたは様々な組み合わせで、マルチレイヤ映像コーディング、例えば、現在開発されているVVC(Versatile Video Coding)をサポートする任意の映像コーディング規約または非標準映像コーデックに適用されてもよい。
2. 略語
APS Adaptation Parameter Set(適応パラメータセット)
AU Access Unit(アクセスユニット)
AUD Access Unit Delimiter(アクセスユニット区切り文字)
AVC Advanced Video Coding(高度映像コーディング)
CLVS Coded Layer Video Sequence(コーディングされたレイヤ映像シーケンス)
CPB Coded Picture Buffer(コーディングされたピクチャバッファ)
CRA Clean Random Access(クリーンランダムアクセス)
CTU Coding Tree Unit(コーディングツリーユニット)
CVS Coded Video Sequence(コーディングされた映像シーケンス)
DCI Decoding Capability Information(デコーディング能力情報)
DPB Decoded Picture Buffer(デコードされたピクチャバッファ)
EOB End Of Bitstream(ビットストリーム終端)
EOS End Of Sequence(シーケンス終端)
GDR Gradual Decoding Refresh(漸次的デコーディング更新)
HEVC High Efficiency Video Coding(高効率映像コーディング)
HRD Hypothetical Reference Decoder(仮想参照デコーダ)
IDR Instantaneous Decoding Refresh(瞬時デコーディング更新)
ILP Inter-Layer Prediction(インターレイヤ予測)
ILRP Inter-Layer Reference Picture(インターレイヤ参照ピクチャ)
JEM Joint Exploration Model(共同探索モデル)
LTRP Long-Term Reference Picture(長期参照ピクチャ)
MCTS Motion-Constrained Tile Sets(動作制約タイルセット)
NAL Network Abstraction Layer(ネットワーク抽象化レイヤ)
OLS Output Layer Set(出力レイヤセット)
PH Picture Header(ピクチャヘッダ)
PPS Picture Parameter Set(ピクチャパラメータセット)
PTL Profile,Tier and Level(プロファイル、ティアおよびレベル)
PU Picture Unit(ピクチャユニット)
RAP Random Access Point(ランダムアクセスポイント)
RBSP Raw Byte Sequence Payload(生バイトシーケンスペイロード)
SEI Supplemental Enhancement Information(補足強化情報)
SPS Sequence Parameter Set(シーケンスパラメータセット)
STRP Short-Term Reference Picture(短期参照ピクチャ)
SVC Scalable Video Coding(スケーラブル映像コーディング)
VCL Video Coding Layer(映像コーディングレイヤ)
VPS Video Parameter Set(映像パラメータセット)
VTM VVC Test Model(VVC試験モデル)
VUI Video Usability Information(映像ユーザビリティ情報)
VVC Versatile Video Coding(汎用映像コーディング)
3. 初期の協議
映像コーディング規格は、主に周知のITU-TおよびISO/IEC規格の開発によって発展してきた。ITU-TはH.261とH.263を作り、ISO/IECはMPEG-1とMPEG-4
Visualを作り、両団体はH.262/MPEG-2VideoとH.264/MPEG-4AVC(Advanced Video Coding)とH.265/HEVC規格を共同で作った。H.262以来、映像コーディング規格は、時間的予測と変換コーディングが利用されるハイブリッド映像コーディング構造に基づく。HEVCを超えた将来の映像コーディング技術を探索するため、2015年には、VCEGとMPEGが共同でJVET(Joint Video Exploration Team)を設立した。それ以来、多くの新しい方法がJVETによって採用され、JEM(Joint Exploration Model)と呼ばれる参照ソフトウェアに組み込まれてきた。JVETは四半期に1回開催され、新しいコーディング規格はHEVCに比べて50%のビットレート低減を目指している。2018年4月のJVET会議において、新しい映像コーディング規格を「VVC(Versatile Video Coding)」と正式に命名し、その時、第1版のVVCテストモデル(VTM)をリリースした。VVCの標準化に寄与する努力が続けられているので、すべてのJVET会議において、VVC標準に新しいコーディング技術が採用されている。毎回の会議の後、VVC作業草案およびテストモデルVTMを更新する。VVCプロジェクトは、現在、2020年7月の会合における技術完成(FDIS)を目指している。
3.1 HEVCにおけるピクチャ分割スキーム
HEVCには、正規のスライス、依存性のあるスライス、タイル、WPP(Wavefront Parallel Processing)という4つの異なる画像分割スキームがあり、これらを適用することで、最大転送ユニット(MTU)サイズのマッチング、並列処理、エンドツーエンドの遅延の低減が可能になる。
正規のスライスは、H.264/AVCと同様である。各正規のスライスは、それ自体のNALユニットにカプセル化され、スライス境界にわたるインピクチャ予測(イントラサンプル予測、動き情報予測、コーディングモード予測)およびエントロピーコーディング依存性は無効化される。このように、1つの正規のライスを、同じピクチャ内の他の正規のスライスとは独立して再構成することができる(しかし、ループフィルタリング動作のために依然として相互依存性がある場合がある)。
正規のスライスは、並列化に使用できる唯一のツールであり、H.264/AVCでもほぼ同じ形式で使用できる。正規のスライスに基づく並列化は、プロセッサ間通信またはコア間通信をあまり必要としない(予測コーディングされたピクチャをデコーディングするとき、動き補償のためのプロセッサ間またはコア間データ共有を除いて、通常、インピクチャ予測のためにプロセッサ間またはコア間データ共有よりもはるかに重い)。しかしながら、同じ理由で、正規のスライスを使用すると、スライスヘッダのビットコストおよびスライス境界にわたる予測が欠如していることに起因して、コーディングのオーバーヘッドが大きくなる可能性がある。さらに、レギュラースライスは(後述の他のツールとは対照的に)、レギュラースライスのインピクチャの独立性および各レギュラースライスがそれ自体のNALユニットにカプセル化されることに起因して、MTUサイズ要件に適応するようにビットストリームを分割するための鍵となるメカニズムとしても機能する。多くの場合、並列化の目標およびMTUサイズマッチングの目標は、画像におけるスライスレイアウトに矛盾する要求を課す。このような状況を実現したことにより、以下のような並列化ツールが開発された。
従属スライスは、ショートスライスヘッダを有し、ピクチャ内予測を一切中断することなく、ツリーブロック境界でビットストリームを区分することを可能にする。基本的に、従属スライスは、正規のスライスを複数のNALユニットに断片化し、正規のスライス全体のエンコーディングが完了する前に正規のスライスの一部を送出することを可能にすることによって、エンドツーエンド遅延を低減する。
WPPにおいて、ピクチャは、単一行のコーディングするツリーブロック(CTB)に分割される。エントロピーデコーディングおよび予測は、他の分割におけるCTBからのデータを使用することを許可される。CTB行の並列デコーディングによって並列処理が可能であり、1つのCTB行のデコーディングの開始が2つのCTBだけ遅延され、それによって、対象のCTBがデコードされる前に、対象のCTBの上および右のCTBに関するデータが確実に利用可能になる。この互い違いのスタート(グラフで表される場合、波面のように見える)を使用することで、ピクチャがCTB行を含む数までのプロセッサ/コアを用いて並列化することが可能である。1つのインピクチャの近傍のツリーブロック行間のインピクチャ予測が許可されるので、インピクチャ予測を可能にするために必要なプロセッサ間/コア間通信は十分となり得る。WPP分割は、適用されない場合と比較して、追加のNALユニットの生成をもたらさず、従って、WPPは、MTUサイズマッチングのためのツールではない。しかし、MTUサイズのマッチングが必要な場合、一定のコーディングするオーバーヘッドを伴って、WPPで正規のスライスを使用することができる。
タイルは、ピクチャをタイルの列および行に分割する水平および垂直境界を規定する。タイルの列は、ピクチャの上から下へと延びている。同様に、タイル行は、ピクチャの左から右に延びる。ピクチャにおけるタイルの数は、単にタイル列の数にタイル行の数を乗算することで得ることができる。
CTBのスキャン順序は、タイル内でローカルになるように(タイルのCTBラスタスキャンの順に)変更され、その後、ピクチャのタイルラスタスキャンの順で、次のタイルの左上のCTBをデコーディングする。正規のスライスと同様に、タイルは、インピクチャ予測依存性およびエントロピーデコーディング依存性を損なう。しかしながら、これらは、個々のNALユニット(この点でWPPと同じ)に含まれる必要がなく、従って、タイルは、MTUサイズマッチングに使用できない。各タイルは、1つのプロセッサ/コアによって処理されてもよく、処理ユニット間のインピクチャ予測に必要なプロセッサ間/コア間通信では、近傍タイルのデコーディングは、スライスが2つ以上のタイルにまたがっている場合、共有スライスヘッダの伝達と、再構築されたサンプルおよびメタデータのループフィルタリングに関連する共有とに限定される。1つのスライスに2つ以上のタイルまたはWPPセグメントが含まれる場合、該スライスにおける第1のもの以外の各タイルまたはWPPセグメントのエントリポイントバイトオフセットが、スライスヘッダにおいて信号通知される。
説明を簡単にするために、HEVCにおいては、4つの異なるピクチャ分割方式の適用に関する制限が規定されている。所与のコーディングされた映像シーケンスは、HEVCに指定されたプロファイルのほとんどについて、タイルおよび波面の両方を含むことができない。各スライスおよびタイルについて、以下の条件のいずれかまたは両方を満たさなければならない。1)1つのスライスにおけるすべてのコーディングされたツリーブロックは、同じタイルに属し、2)1つのタイルにおけるすべてのコーディングされたツリーブロックは、同じスライスに属する。最後に、1つの波面(wavefront)セグメントはちょうど1つのCTB行を含み、WPPが使用されている際に、1つのスライスが1つのCTB行内で始まる場合、同じCTB行で終わらなければならない。
最近のHEVCの修正は、JCT-VCの出力文書であるJCTVC-AC1005、J.ボイス、A.ラマスブラモニアン、R.スクピン、G.J.スリヴァン、A.トゥラピス、Y.-K.ワング(editors),「HEVC追加の捕捉強化情報(Draft4),」Oct.24,2017,で規定され、下記で入手可能である。http://phenix.int-evry.fr/jct/doc_end_user/documents/29_Macau/wg11/JCTVC-AC1005-v2.zip。この修正を含め、HEVCは、3つのMCTS関連SEIメッセージ、即ち、時間的MCTS SEIメッセージ、MCTS抽出情報セットSEIメッセージ、およびMCTS抽出情報ネスティングSEIメッセージを特定する。
時間的MCTS SEIメッセージは、ビットストリーム中にMCTSが存在することを示し、MCTSに信号送信する。各MCTSにおいて、動きベクトルは、MCTS内部のフルサンプル位置と、補間のためにMCTS内部のフルサンプル位置のみを必要とするフラクショナルサンプル位置とを指すように制限され、かつ、MCTS外部のブロックから導出された時間動きベクトル予測のための動きベクトル候補の使用は許可されない。このように、各MCTSは、MCTSに含まれていないタイルが存在せず、独立してデコードされてもよい。
MCTS抽出情報セットSEIメッセージは、MCTSサブビットストリーム抽出(SEIメッセージの意味の一部として規定される)において使用され得る補足情報を提供し、MCTSセットのための適合ビットストリームを生成する。この情報は、複数の抽出情報セットを含み、各抽出情報セットは、複数のMCTSセットを定義し、MCTSサブビットストリーム抽出処理において使用される代替VPS、SPS、およびPPSのRBSPバイトを含む。MCTSサブビットストリーム抽出プロセスによってサブビットストリームを抽出する場合、パラメータセット(VPS,SPS,PPS)を書き換えるかまたは置き換える必要があるが、その理由は、スライスアドレスに関連する構文要素の1つまたは全て(first_slice_segment_in_pic_flagおよびslice_segment_addressを含む)が異なる値となる必要があるためである。
3.2. VVCにおけるピクチャの分割
VVCにおいて、1つのピクチャは、1または複数のタイル行および1または複数のタイル列に分割される。1つのタイルは、1つのピクチャの1つの矩形領域を覆う1つのCTUのシーケンスである。1つのタイルにおけるCTUは、そのタイル内でラスタスキャン順にスキャンされる。
1つのスライスは、1つのピクチャのタイル内において、整数個の完全なタイルまたは整数個の連続した完全なCTU行を含む。
スライスの2つのモード、即ちラスタスキャンスライスモードおよび矩形スライスモードに対応している。ラスタスキャンスライスモードにおいて、1つのスライスは、1つのピクチャのタイルラスタスキャンにおける1つの完全なタイルのシーケンスを含む。矩形スライスモードにおいて、1つのスライスは、ピクチャの矩形領域を集合的に形成する複数の完全なタイル、またはピクチャの矩形領域を集合的に形成する1つのタイルの複数の連続した完全なCTU行のいずれかを含む。矩形スライス内のタイルを、そのスライスに対応する矩形領域内で、タイルラスタスキャンの順にスキャンする。
1つのサブピクチャは、1つのピクチャの矩形領域を集合的に覆う1または複数のスライスを含む。
図1は、ピクチャのラスタスキャンスライス分割の例を示し、ピクチャは、12個のタイルと3個のラスタスキャンスライスとに分割される。
図2は、ピクチャの矩形スライス分割の例を示し、ピクチャは、24個のタイル(6個のタイル列および4個のタイル行)と9個の矩形スライスとに分割される。
図3は、タイルおよび矩形のスライスに分割されたピクチャの例を示し、ピクチャは、4つのタイル(2つのタイルの列および2つのタイルの行)と4つの矩形スライスとに分割される。
図4は、1つのピクチャをサブピクチャで分割する例を示し、1つのピクチャは、18個のタイルに分割され、左側の12個が、4×4のCTUの1つのスライスをそれぞれ含み、右側の6個のタイルが、2×2のCTUの垂直方向に積み重ねられたスライスをそれぞれ含み、全体で24個のスライスおよび24個の異なる寸法のサブピクチャとなる(各スライスは、1つのサブピクチャ)。
3.3 シーケンス内のピクチャ解像度の変更
AVCおよびHEVCにおいて、ピクチャの空間的解像度は、新しいSPSを使用する新しいシーケンスがIRAPピクチャで始まらない限り、変更することができない。VVCは、常にイントラコーディングされるIRAPピクチャをエンコーディングせずに、ある位置のシーケンス内でピクチャの解像度を変更することを可能にする。この特徴は、参照ピクチャがデコードされている現在のピクチャと異なる解像度を有する場合、インター予測に使用される参照ピクチャを再サンプリングすることが必要であるため、参照ピクチャ再サンプリング(RPR)と称する。
スケーリング比は、1/2(参照ピクチャから現在のピクチャへのダウンサンプリングの2倍)以上8(8倍のアップサンプリング)以下に制限される。参照ピクチャと現在のピクチャとの間の様々なスケーリング比に対処するために、周波数カットオフが異なる3つの再サンプリングフィルタを規定する。3つの組の再サンプリングフィルタは、それぞれ、1/2~1/1.75、1/1.75~1/1.25、および1/1.25~8の範囲のスケーリング比に適用される。各組の再サンプリングフィルタは、動き補償補間フィルタの場合と同様に、輝度に対して16個のフェーズを有し、彩度に対して32個のフェーズを有する。実際には、通常のMC補間プロセスは、1/1.25~8の範囲のスケーリング比を有する再サンプリングプロセスの特殊な場合である。水平および垂直スケーリング比は、ピクチャの幅および高さ、並びに参照ピクチャおよび現在のピクチャに対して規定された左、右、上および下のスケーリングオフセットに基づいて導出される。
HEVCとは異なる、この特徴をサポートするためのVVC設計の他の態様は、i)SPSの代わりにPPSにおいてピクチャ解像度および対応する適合性ウィンドウを信号通知すること、SPSにおいて最大ピクチャ解像度を信号通知すること、ii)シングルレイヤビットストリームの場合、各ピクチャ記憶装置(1つのデコードされたピクチャを記憶するためのDPBにおける1つのスロット)は、最大ピクチャ解像度を有するデコードされたピクチャを記憶するために必要なバッファサイズを占めることを含む。
3.4 全般およびVVCにおけるスケーラブル映像コーディング(SVC)
SVC(Scalable Video Coding、時には、映像コーディングにおけるスケーラビリティとも呼ばれる)は、BL(Base Layer:基本レイヤ)(時には、RL(Reference Layer:参照レイヤ)と呼ばれる)および1または複数のスケーラブルEL(Enhancement Layer:強化レイヤ)が使用される映像コーディングを参照する。SVCにおいて、ベースレイヤは、基本品質レベルの映像データを担持することができる。1つ以上の強化レイヤは、例えば、より高い空間的、時間的、および/または信号対雑音(SNR)レベルをサポートするように、追加の映像データを担持することができる。強化レイヤは、前の、エンコードされたレイヤに対して定義されてもよい。例えば、下層がBLとして機能し、上層がELとして機能することができる。中間レイヤは、ELまたはRLのいずれか、またはその両方として機能することができる。例えば、中間レイヤ(例えば、最下レイヤでも最上レイヤでもないレイヤ)は、中間レイヤの下のレイヤ、例えば、ベースレイヤまたは任意の介在する強化レイヤのためのELであってもよく、同時に、中間レイヤの上の1つ以上の強化レイヤのためのRLとしての役割を果たす。同様に、HEVC規格のマルチビューまたは3D拡張では、複数のビューが存在してもよく、1つのビューの情報を利用して別のビューの情報をコーディング(例えば、エンコードまたはデコード)することができる(例えば、動き推定、動きベクトル予測および/または他の冗長性)。
SVCにおいて、エンコーダまたはデコーダで使用されるパラメータは、それらを利用することができるコーディングレベル(例えば、映像レベル、シーケンスレベル、ピクチャレベル、スライスレベル等)に基づいてパラメータセットにグループ分けされる。例えば、ビットストリームにおける異なるレイヤのコーディング映像シーケンスによって利用できるパラメータは、映像パラメータセット(VPS)に含まれてもよく、コーディング映像シーケンスにおける1つ以上のピクチャによって利用されるパラメータは、シーケンスパラメータセット(SPS)に含まれてもよい。同様に、1つのピクチャの1つ以上のスライスで利用されるパラメータは、ピクチャパラメータセット(PPS)に含まれてもよく、1つのスライスに固有の他のパラメータは、スライスヘッダに含まれてもよい。同様に、特定のレイヤが所与の時間にどのパラメータセットを使用しているかの指示は、様々なコーディングレベルで提供されてもよい。
VVCにおけるRPR(Reference Picture Resampling)のサポートのおかげで、空間的スケーラビリティサポートに必要なアップサンプリングはRPRアップサンプリングフィルタを使用するだけでよいので、追加の信号処理レベルのコーディングツールを必要とせずに、複数のレイヤ、例えば、VVCにおけるSDおよびHD解像度の2つのレイヤを含むビットストリームをサポートするように設計することができる。それにもかかわらず、スケーラビリティサポートのためには、高レベルの構文変更(スケーラビリティをサポートしない場合と比較して)が必要である。スケーラビリティサポートは、VVCバージョン1に規定されている。AVCおよびHEVCの拡張を含む、任意の以前の映像コーディング規格におけるスケーラビリティサポートとは異なり、VVCのスケーラビリティの設計は、シングルレイヤデコーダの設計にできるだけ適したものにされてきた。マルチレイヤビットストリームのデコーディング能力は、ビットストリームに1つのレイヤしかなかったかの如く規定される。例えば、DPBサイズのようなデコーディング能力は、デコードされるビットストリームのレイヤの数に依存しないようで規定される。基本的に、シングルレイヤビットストリームのために設計されたデコーダは、マルチレイヤビットストリームをデコードすることができるようにするために、多くの変更を必要としない。AVCおよびHEVCのマルチレイヤ拡張の設計と比較して、HLSの態様は、ある程度の柔軟性を犠牲にして大幅に簡略化されてきた。例えば、IRAP AUは、CVSに存在する各レイヤの画像を含むことが必要である。
3.5 サブピクチャに基づくビューポート依存の360°映像ストリーミング
360°映像のストリーミング、すなわち、全方向性映像のストリーミングにおいて、任意の特定の瞬間に、全方向性映像球体全体のサブセット(すなわち、現在のビューポート)のみがユーザにレンダリングされ、一方、ユーザは、自分の頭をいつでも回して視線の向きを変更し、その結果、現在のビューポートを変更することができる。クライアント側が現在のビューポートで覆われていない領域を少なくともある程度低品質に表現し、かつユーザにレンダリングする準備ができていることが望ましいが、ユーザが突然その視線方向を球面上の任意の場所に変えた場合に備えて、すぐにユーザにレンダリングされている現在のビューポートに対してのみ、全方向性映像の高品質表現が必要となる。全方位映像全体の高品質表現を適切な粒度でサブピクチャに分割することにより、このような最適化が有効化される。VVCを使用して、2つの表現は、互いに独立した2つのレイヤとしてエンコードされ得る。
典型的なサブピクチャに基づくビューポートに依存する360°の映像配信方式が図5に示されており、ここでは、フル映像のより高い解像度の表現がサブピクチャからなり、一方、フル映像のより低い解像度の表現は、サブピクチャを使用せず、より高い解像度の表現よりも頻度の低いランダムアクセスポイントでコーディングできる。クライアントは低解像度のフル映像を受信し、より高い解像度の映像については、現在のビューポートをカバーするサブピクチャのみを受信して復号する。
また、最近のVVC草案は、図6に示すように、改善された360°映像コーディング方式をサポートする。図5に示されたアプローチと比較した唯一の相違は、図6に示されたアプローチに対してレイヤ間予測(ILP)が適用されることである。
3.6. パラメータセット
AVC、HEVC、VVCはパラメータ集合を規定する。パラメータセットのタイプは、SPS、PPS、APS、VPS等である。SPS、PPSは、AVC、HEVC、VVCのすべてでサポートされている。VPSは、HEVCから導入されたものであり、HEVCおよびVVCの両方に含まれる。APSは、AVCまたはHEVCに含まれていなかったが、最近のVVC草案のテキストに含まれている。
SPSは、シーケンスレベルのヘッダ情報を伝送するように設計され、PPSは、頻繁に変化しないピクチャレベルのヘッダ情報を伝送するように設計された。SPSおよびPPSを用いると、シーケンスまたはピクチャごとに頻繁に変化する情報を繰り返す必要がないので、この情報の冗長な信号通知を回避することができる。さらに、SPSおよびPPSを使用することは、重要なヘッダ情報の帯域外伝送を有効化し、それにより、冗長な伝送の必要性を回避するだけでなく、誤り耐性を改善する。
VPSは、マルチレイヤのビットストリームのすべてのレイヤに共通するシーケンスレベルのヘッダ情報を伝送するために導入された。
APSは、コーディングするためのかなりのビットを必要とし、複数のピクチャによって共有され、そして、シーケンスにおいて非常に多くの異なる変形例が存在し得る、そのようなピクチャレベルまたはスライスレベルの情報を担持するために導入された。
3.7. サブピクチャサブビットストリーム抽出処理
最新のVVCテキストのC.7項は、サブピクチャサブビットストリーム抽出プロセスを以下のように規定する。
C.7 サブピクチャサブビットストリーム抽出処理
この処理の入力は、ビットストリームinBitstream、ターゲットOLSインデックスtargetOlsIdx、対象となる最高のTemporalId値tIdTarget、および各レイヤsubpicIdxTarget[]に対する対象となるサブピクチャインデックス値の配列である。
この処理の出力は、サブビットストリーム outBitstreamである。
入力ビットストリームに対するビットストリーム適合性の要件は、以下の条件のすべてを満たす任意の出力サブビットストリームが適合ビットストリームであるものとする。
-出力サブビットストリームは、ビットストリーム、VPSで規定されたOLSのリストへのインデックスと等しいtargetOlsIdx、およびOLSに存在するサブピクチャインデックスと等しいsubpicIdxTarget[]を入力として、本項で規定した処理の出力である。
-出力サブビットストリームは、LayerIdInOls[targetOlsIdx]における各々のnuh_layer_id値であるnuh_layer_idを有する少なくとも1つのVCL NALユニットを含む。
-出力サブビットストリームは、tIdTargetであるTemporalIdを有する少なくとも1つのVCL NALユニットを含む。
注-適合するビットストリームは、TemporalIdが0に等しい1つ以上のコーディングされたスライスNALユニットを含むが、nuh_layer_idが0に等しいコーディングされたスライスNALユニットを含む必要はない。
-出力サブビットストリームは、0からNumLayersInOls[targetOlsIdx]-1の範囲内にある各iについて、nuh_layer_idがLayerIdInOls[targetOlsIdx][i]に等しく、sh_subpic_idがSubpicIdVal[subpicIdxTarget[i]]の値に等しい、少なくとも1つのVCL NALユニットを含む。
出力サブビットストリームoutBitstreamは、以下のように導出される。
-添付C.6で規定されたブビットストリーム抽出処理は、inBitstream、targetOlsIdx、およびtIdTargetを入力として呼び出され、この処理の出力はoutBitstreamに割り当てられる。
-サブビットストリームoutBitstreamに置換パラメータセットを提供するために、本明細書で規定されていない外部手段が利用可能である場合、すべてのパラメータセットを置換パラメータセットに置き換える。
-そうでない場合、サブピクチャレベル情報SEIメッセージがinBitstreamに存在するときは、以下が適用される。
-変数subpicIdxは、subpicIdxTarget[[NumLayersInOls[targetOlsIdx]-1]]の値に等しく設定される。
-参照されたすべてのVPS NALユニットのprofile_tier_level()構文構造のリストのvps_ols_ptl_idx[targetOlsIdx]番目エントリのgeneral_level_idcの値を、サブピクチャインデックスがsubpicIdxと等しいサブピクチャからなるサブピクチャセットに対する式D.11で導かれるSubpicSetLevelIdcと等しくするようリライトする。
-VCL HRDパラメータセットまたはNAL HRDパラメータセットが存在する場合、参照されたすべてのVPS NALユニットのvps_ols_hrd_idx[MultiLayerOlsIdx[targetOlsIdx]]番目のols_hrd_parameters()構文構造およびi番目のレイヤによって参照されたすべてのSPS NALユニットのols_hrd_parameters()構文構造におけるj番目のCPBのcpb_size_value_minus1[tIdTarget][j]とbit_rate_value_minus1[tIdTarget][j]のそれぞれの値を、式D.6とD.7からそれぞれ導出されるSubpicCpbSizeVcl[SubpicSetLevelIdx][subpicIdx]とSubpicCpbSizeNal[SubpicSetLevelIdx][subpicIdx]、式D.8とD.9からそれぞれ導出されるSubpicBitrateVcl[SubpicSetLevelIdx][subpicIdx]とSubpicBitrateNal[SubpicSetLevelIdx][subpicIdx]とに対応するように書き換え、ここでSubpicSetLevelIdxはsubpicIdxに等しいサブピクチャインデックスを有するサブピクチャに対して式D.11によって導出され、jは0からhrd_cpb_cnt_minus1の範囲内であり、iは0からNumLayersInOls[targetOlsIdx]-1の範囲内である。
iが0からNumLayersInOls[targetOlsIdx]-1の範囲内にあるi番目のレイヤに対して、以下が適用される。
-sps_ptl_dpb_hrd_params_present_flagを1とする参照されたすべてのSPS NALユニットのprofile_tier_level()構文構造のgeneral_level_idcの値を、SubpicSetLevelIdに等しいサブピクチャインデックスを有するサブピクチャからなるサブピクチャのセットに対する式D.11によって導出されたSubpicSetLevelIdcに等しく、書き換える。
-変数subpicWidthInLumaSamplesおよびsubpicHeightInLumaSamplesは、以下のように導出される。
subpicWidthInLumaSamples=min((sps_subpic_ctu_top_left_x[subpicIdx]+ (C.24)
sps_subpic_width_minus1[subpicIdx]+1)*CtbSizeY,pps_pic_width_in_luma_samples)-
sps_subpic_ctu_top_left_x[subpicIdx]*CtbSizeY
subpicHeightInLumaSamples=min((sps_subpic_ctu_top_left_y[subpicIdx]+ (C.25)
sps_subpic_height_minus1[subpicIdx]+1)*CtbSizeY,pps_pic_height_in_luma_samples)-
sps_subpic_ctu_top_left_y[subpicIdx]*CtbSizeY
- 参照されたすべてのSPS NALユニットのsps_pic_width_max_in_luma_samplesとsps_pic_height_max_in_luma_samplesの値、参照されたすべてのPPS NALユニットのpps_pic_width_in_luma_sampleとpps_pic_height_in_luma_samplesの値を、それぞれ、subpicWidthInLumaSamplesとsubpicHeightInLumaSamplesに等しく書き換える。
- 参照されたすべてのSPS NALユニットのsps_num_subpics_minus1および参照されたすべてのPPS NALユニットのpps_num_subpics_minus1の値を0に書き換える。
- 構文要素sps_subpic_ctu_top_left_x[subpicIdx]およびsps_subpic_ctu_top_left_y[subpicIdx]は、存在する場合、すべての参照するSPS NALユニットにおいて、0に書き換える。
- 参照されたすべてのSPS NALユニットにおいて、subpicIdxに等しくないjについて、構文要素sps_subpic_ctu_top_left_x[j]、sps_subpic_ctu_top_left_y[j]、sps_subpic_width_minus1[j]、sps_subpic_height_minus1[j]、sps_subpic_treated_as_pic_flag[j]、sps_loop_filter_across_subpic_enabled_flag[j]およびsps_subpic_id[j]を削除する。
- タイルおよびスライスの信号通知のために参照されたすべてのPPSの構文要素を書き換えて、サブピクチャインデックスがsubpicIdxに等しいサブピクチャに関連付けられないすべてのタイル行、タイル列、およびスライスを削除する。
-変数subpicConfWinLeftOffset、subpicConfWinRightOffset、subpicConfWinTopOffset、およびsubpicConfWinBottomOffsetは、以下のように導出される。
subpicConfWinLeftOffset=sps_subpic_ctu_top_left_x[subpicIdx]==0? (C.26)
sps_conf_win_left_offset:0
subpicConfWinRightOffset=(sps_subpic_ctu_top_left_x[subpicIdx]+ (C.27)
sps_subpic_width_minus1[subpicIdx]+1)*CtbSizeY>=
sps_pic_width_max_in_luma_samples?sps_conf_win_right_offset:0
subpicConfWinTopOffset=sps_subpic_ctu_top_left_y[subpicIdx]==0? (C.28)
sps_conf_win_top_offset:0
subpicConfWinBottomOffset=(sps_subpic_ctu_top_left_y[subpicIdx]+ (C.29)
sps_subpic_height_minus1[subpicIdx]+1)*CtbSizeY>=
sps_pic_height_max_in_luma_samples?sps_conf_win_bottom_offset:0
- 参照されたすべてのSPS NALユニットのsps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset、sps_conf_win_bottom_offsetの値と、参照されたすべてのPPS NALユニットのpps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset、pps_conf_win_bottom_offsetの値を、それぞれ、subpicConfWinLeftOffset、subpicConfWinRightOffset、subpicConfWinTopOffsetおよびsubpicConfWinBottomOffsetに等しく、書き換える。
- nuh_layer_idがi番目のレイヤーのnuh_layer_idと等しく、sh_subpic_idがSubpicIdVal[subpicIdx]と等しくないVCL NALユニットをoutBitstreamからすべて削除する。
- sli_cbr_constraint_flagが1に等しい場合、nal_unit_typeがFD_NUTに等しいすべてのNALユニットおよびsubpicIdTarget[]のサブピクチャのVCLユニットに関連付けれられていないフィラーペイロードSEIメッセージを削除し、参照されたすべてのVPS NALユニットおよびSPS NALユニットにおけるvps_ols_hrd_idx[MultiLayerOlsIdx[targetOlsIdx]]番目のols_hrd_parameters()構文構造中のj番目のCPBについてのcbr_flag[tIdTarget][j]を1に等しく、jを0からhrd_cpb_cnt_minus1の範囲に設定する。そうでない場合、(sli_cbr_constraint_flagが0に等しい場合)、nal_unit_typeがFD_NUTに等しいすべてのNALユニットとフィラーペイロードSEIメッセージを削除して、cbr_flag[tIdTarget][j]を0に等しく設定する。
- outBitstreamが、sn_ols_flagが1に等しく、sn_subpic_flagが1に等しい、outBitstreamに適用可能なスケーラブルネスティングSEIメッセージを含むSEI NALユニットを含んでいる場合、スケーラブルネスト型SEIメッセージからpayloadTypeが1(PT)、130(DUI)、または132(デコードされたピクチャハッシュ)に等しい適切な非スケーラブルネスティングSEIメッセージを抽出し、抽出したSEIメッセージをoutBitstreamに配置する。
4. 開示される技術的解決策によって解決される技術課題
最近のVVCテキスト(JVET-R2001-vA/v10)におけるサブピクチャサブビットストリーム抽出処理の既存の設計は、以下の問題を有する。
1) 1つ以上のサブピクチャを覆う一連のピクチャから1つの矩形領域を抽出するとき、この領域は1つ以上のサブピクチャを覆うため、スケーリングウィンドウを元のビットストリームのエンコーディングに使用されたスケーリングウィンドウと同じにするため、抽出されたピクチャのピクチャ幅および/または高さが変化したので、PPSにおけるスケーリングウィンドウのオフセットパラメータを書き換える必要がある。これは、とりわけ、図6に示されるような改善された360°映像コーディング方式のようなシナリオにおいて必要とされる。しかしながら、最近のVVCテキストにおけるサブピクチャサブビットストリーム抽出処理は、スケーリングウィンドウオフセットパラメータの書き換えを有していない。
2) 最近のVVCテキストにおけるサブピクチャサブビットストリーム抽出処理において、以下の条件をすべて満たす出力サブビットストリームは、適合ビットストリームであることが必要である。
- 出力サブビットストリームは、ビットストリーム、VPSで規定されたOLSのリストへのインデックスと等しいtargetOlsIdx、およびOLSに存在するサブピクチャインデックスと等しいsubpicIdxTarget[]を入力として、本項で規定した処理の出力である。
- 出力サブビットストリームは、LayerIdInOls[targetOlsIdx]における各々のnuh_layer_id値であるnuh_layer_idを有する少なくとも1つのVCL NALユニットを含む。
- 出力サブビットストリームは、tIdTargetであるTemporalIdを有する少なくとも1つのVCL NALユニットを含む。
注-適合するビットストリームは、TemporalIdが0に等しい1つ以上のコーディングされたスライスNALユニットを含むが、nuh_layer_idが0に等しいコーディングされたスライスNALユニットを含む必要はない。
- 出力サブビットストリームは、0~NumLayersInOls[targetOlsIdx]-1の範囲内にあり、各iのSubpicIdVal[subpicIdxTarget[i]]における値に等しいsh_subpic_idを有する少なくとも1つのVCL NALユニットを含む。
しかしながら、上記制約には、以下のような問題がある。
a. 1つ目の黒丸項目において、入力tIdTargetが欠落している。
b. 1つ目の黒丸項目に関連する別の問題は、以下の通りである。異なるレイヤのピクチャからのサブピクチャの特定の組み合わせ(すべての組み合わせではない)のみが、適合ビットストリームを形成し得る。
3) VCL NALユニットおよびそれらに関連するフィラーデータNALユニット並びに関連するフィラーペイロードSEIメッセージ等の削除は、パラメータセットを置き換えるための外部手段がない場合にのみ実行される。しかしながら、このような削除は、パラメータセットを取り替えるための外部手段がある場合も必要である。
4) 現在のフィラーペイロードSEIメッセージの削除は、SEI NALユニットの書き換えを含むことができる。
5) サブピクチャレベル情報(SLI)SEIメッセージは、レイヤ固有と規定される。しかしながら、サブピクチャサブビットストリーム抽出処理において、あたかも情報がすべてのレイヤのサブピクチャに適用されるかのように、SLI SEIメッセージが使用される。
6) スケーラブルネスティングSEIメッセージは、特定のOLSの特定の抽出されたサブピクチャシーケンスのためにSEIメッセージをネストするために使用され得る。ただし、sn_num_subpics_minus1およびsn_subpic_id_len_minus1は、「そのCLVSにおいて」または「CLVSにおいて」という文言が使用されているため、レイヤ固有の意味論として規定される。
7) 図6の下部にあるように、ビットストリームの抽出を支援するように、いくつかの態様を変更する必要があり、ここで、デコーダに送られる抽出されたビットストリームにおいて、元のビットストリームにおける複数個のサブピクチャを含むピクチャは、今やより少ないサブピクチャを含むが、1つのサブピクチャのみを含むピクチャは変更されないままである。
5. 解決策および実施形態の例
上記課題を解決するために、以下に示す方法が開示されている。これらの項目は、一般的な概念を説明するための例であり、狭義に解釈されるべきではない。さらに、これらの項目は、個々に適用されてもよく、または任意の方法で組み合わされてもよい。以下の説明において、関連の仕様から既に追加または修正された部分は、太字およびイタリック文字で強調表示され、かつ削除された部分の一部は、二重括弧でマークされている(例えば、[[a]]は、「a」という文字の削除を示す)。本質的に編集可能であるため、強調されていない他の何らかの変更があってもよい。
1) 問題1を解決するために、サブピクチャサブビットストリーム抽出処理の一部として、スケーリングウィンドウオフセットパラメータ(例えば、PPSにおいて)の算出および書き換えを規定する。
a. 一例において、スケーリングウィンドウオフセットパラメータは、以下のように算出され、書き換えられる。
-変数subpicScalWinLeftOffset、subpicScalWinRightOffset、subpicScalWinTopOffset、およびsubpicScalWinBotOffsetは、以下のように導出される。
subpicScalWinLeftOffset=pps_scaling_win_left_offset- (C.30)
sps_subpic_ctu_top_left_x[spIdx]*CtbSizeY/SubWidthC
rightSubpicBd=(sps_subpic_ctu_top_left_x[spIdx]+
sps_subpic_width_minus1[spIdx]+1)*CtbSizeY
subpicScalWinRightOffset=
(rightSubpicBd>=sps_pic_width_max_in_luma_samples)?(C.31)
pps_scaling_win_right_offset:pps_scaling_win_right_offset-
(sps_pic_width_max_in_luma_samples-rightSubpicBd)/SubWidthC
subpicScalWinTopOffset=pps_scaling_win_top_offset- (C.32)
sps_subpic_ctu_top_left_y[spIdx]*CtbSizeY/SubHeightC
botSubpicBd=(sps_subpic_ctu_top_left_y[spIdx]+
sps_subpic_height_minus1[spIdx]+1)*CtbSizeY
subpicScalWinBotOffset=
(botSubpicBd>=sps_pic_height_max_in_luma_samples)? (C.33)
pps_scaling_win_bottom_offset:pps_scaling_win_bottom_offset-
(sps_pic_height_max_in_luma_samples-botSubpicBd)/SubHeightC
ここで、上記式中の、sps_subpic_ctu_top_left_x[spIdx]、sps_subpic_width_minus1[spIdx]、sps_subpic_ctu_top_left_y[spIdx]、sps_subpic_height_minus1[spIdx]、sps_pic_width_max_in_luma_samples、およびsps_pic_height_max_in_luma_samplesは、書き換えられる前の元のSPSからのものであり、また上記式中のpps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、およびpps_scaling_win_bottom_offsetは書き換えられる前の元のPPSからのものである。
- 参照されたすべてのPPS NALユニットのpps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、およびpps_scaling_win_bottom_offsetを、それぞれ、subpicScalWinLeftOffset、subpicScalWinRightOffset、subpicScalWinTopOffset、およびsubpicScalWinBotOffsetに書き換える。
b. 1つの例において、上記式のsps_pic_width_max_in_luma_samplesおよびsps_pic_height_max_in_luma_samplesは、それぞれpps_pic_width_in_luma_samplesとpps_pic_height_in_luma_samplesに置き換えられ、pps_pic_width_in_luma_samplesとpps_pic_height_in_luma_samplesは、書き換えられる前の元のPPS中の値である。
c. 一例として、追加的に、変更がある場合、SPSにおける参照サンプル有効化フラグ(例えば、sps_ref_pic_resampling_enabled_flag)、および変更された場合にSPS内のCLVSにおける解像度変更許可フラグ(例えば、sps_res_change_in_clvs_allowed_flag)を書き換える。
2) 上記課題2a、2bを解決するために、以下の方法が提案されている。
a. 問題2aを解決するために、欠落した入力tIdTargetを追加する。例えば、以下のように変更する。
-出力サブビットストリームは、ビットストリーム、VPSで規定されたOLSのリストへのインデックスと等しいtargetOlsIdx、およびOLSに存在するサブピクチャインデックスと等しいsubpicIdxTarget[]を入力として、本項で規定した処理の出力である。
以下の通りである。
Figure 2023526374000002

b. 問題2bを解決するために、抽出する場合、異なるレイヤのサブピクチャのどの組み合わせが適合ビットストリームである必要があるかを、例えば、以下のように明確に規定する。
入力ビットストリームに対するビットストリーム適合性の要件は、以下の条件のすべてを満たす任意の出力サブビットストリームが適合ビットストリームであるものとする。
Figure 2023526374000003

-出力サブビットストリームは、LayerIdInOls[targetolsIdx]のリストにおける各々のnuh_layer_id値であるnuh_layer_idを有する少なくとも1つのVCL NALユニットを含む。
-出力サブビットストリームは、tIdTargetであるTemporalIdを有する少なくとも1つのVCL NALユニットを含む。
注-適合するビットストリームは、TemporalIdが0に等しい1つ以上のコーディングされたスライスNALユニットを含むが、nuh_layer_idが0に等しいコーディングされたスライスNALユニットを含む必要はない。
- 出力サブビットストリームは、0からNumLayersInOls[targeTOlsIdx]-1の範囲内にあり、各iのSubpicIdVal[subpicIdxTarget[i]]における値に等しいsh_subpic_idを有する少なくとも1つのVCL NALユニットを含む。
3) 問題3を解決するために、パラメータセットを置き換えるための外部手段が存在するかどうかにかかわらず、VCL NALユニットおよびそれらに関連するフィラーデータNALユニット並びに関連するフィラーペイロードSEIメッセージ等の削除が行なわれる。
4) 問題4を解決するために、フィラーペイロードSEIメッセージを含むSEI NALユニットに、他のタイプのSEIメッセージを含まないようにし、およびフィラーペイロードSEIメッセージの削除をフィラーペイロードSEIメッセージを含むSEI NALユニットの削除として規定することを求める制約を追加する。
5) 問題5を解決するため、SubpicSetLevelIdc、SubpicCpbSizeVcl[SubpicSetLevelIdx][subpicIdx]、SubpicCpbSizeNal[SubpicSetLevelIdx][subpicIdx]、SubpicBitrateVcl[SubpicSetLevelIdx][subpicIdx]SubpicBitrateNal[SubpicSetLevelIdx][subpicIdx]の1つ以上の値と、SLI SEIメッセージに基づいて導出されるかまたはその中に確認されたsli_cbr_constraint_flagが、抽出処理のターゲットOLS中のすべてのレイヤに対してそれぞれ同じであることが規定される。
a. 一例において、マルチレイヤOLSと共に使用するために、SLI SEIメッセージは、スケーラブルネスティングSEIメッセージに含まれ、少なくともマルチレイヤOLSを含む特定のOLSに適用するために(すなわち、sn_ols_flagが1に等しい場合)スケーラブルネスティングSEIメッセージに示されなければならない、と制約されている。
i. さらに、リストVclAssociatedSeiListからSLI SEIメッセージのpayloadType値である値203を削除し、SLIメッセージを、sn_ols_flagを1とするスケーラブルネスティングSEIメッセージに含めることを可能にする。
b. 1つの例において、マルチレイヤOLSでの使用のために、SLI SEIメッセージは、スケーラブルネスティングSEIメッセージに含まれるべきであり、そしてマルチレイヤOLSのすべてのレイヤからなる特定のレイヤのリストに適用されるように(即ち、sn_ols_flagが1に等しい)、スケーラブルネスティングSEIメッセージに示されるべきであることと、制約される。
c. 1つの例において、例えば、SEIメッセージにおいて搬送される情報が適用されるOLSを示すように、SLI SEIメッセージ構文にOLSインデックスを追加することによって、SLI SEIメッセージをOLS固有に規定する。
i. あるいは、SEIメッセージで搬送される情報が適用されるOLSのリストを示すように、OLSインデックスのリストをSLI SEIメッセージ構文に追加する。
d. 一例において、OLSのすべてのレイヤに対するすべてのSLI SEIメッセージ中のSubpicSetLevelIdc、SubpicCpbSizeVcl[SubpicSetLevelIdx][subpicIdx]、SubpicCpbSizeNal[SubpicSetLevelIdx][subpicIdx]、SubpicBitrateVcl[SubpicSetLevelIdx][subpicIdx] SubpicBitrateNal[SubpicSetLevelIdx][subpicIdx]、およびsli_cbr_constraint_flagの1つ以上の値が、それぞれ同じであることが求められる。
6) 問題6を解決するために、意味論を以下のように変更する。
sn_num_subpics_minus1+1は、スケーラブルネスト型SEIメッセージが適用されるサブピクチャの数を規定する。sn_num_subpics_minus1の値は、CLVSのピクチャが参照するSPSにおけるsps_num_subpics_minus1の値以下である。
sn_subpic_id_len_minus1+1は構文要素sn_subpic_id[i]を表すのに用いられるビット数を規定する。sn_subpic_id_len_minus1の値は、0~15の範囲内である。
sn_subpic_id_len_minus1の値は、CLVSに存在するすべてのスケーラブルネスティングSEIメッセージに対して同じであることが、ビットストリーム準拠の要件である。
以下の通りである。
Figure 2023526374000004

sn_subpic_id_len_minus1+1は構文要素sn_subpic_id[i]を表すのに用いられるビット数を規定する。sn_subpic_id_len_minus1の値は、0~15の範囲内である。
Figure 2023526374000005

7) 課題7を解決するために、以下の方法が提案される。
a. 一例において、少なくとも2つのレイヤが存在し、1つのレイヤのピクチャがそれぞれ複数のサブピクチャからなり、また別のレイヤのピクチャがそれぞれ1つのサブピクチャのみからなる、異なるレイヤのサブピクチャのどの組み合わせが、抽出された時に適合ビットストリームとなることが必要とされるかを、例えば、以下のように明確に規定する。
入力ビットストリームに対するビットストリーム適合性の要件は、以下の条件のすべてを満たす任意の出力サブビットストリームが適合ビットストリームであるものとする。
Figure 2023526374000006

- 出力サブビットストリームは、LayerIdInOls[targetOlsIdx]のリストにおける各々のnuh_layer_id値であるnuh_layer_idを有する少なくとも1つのVCL NALユニットを含む。
-出力サブビットストリームは、tIdTargetであるTemporalIdを有する少なくとも1つのVCL NALユニットを含む。
注2-適合するビットストリームは、TemporalIdが0に等しい1つ以上のコーディングされたスライスNALユニットを含むが、nuh_layer_idが0に等しいコーディングされたスライスNALユニットを含む必要はない。
- 出力サブビットストリームは、0からNumLayersInOls[targetOlsIdx]-1の範囲内にある各iについて、nuh_layer_idがLayerIdInOls[targetOlsIdx][i]に等しく、sh_subpic_idがSubpicIdVal[subpicIdxTarget[i]]に等しい、少なくとも1つのVCL NALユニットを含む。
b. スケーラブルネスティングSEIメッセージの意味論は、sn_ols_flagおよびsn_subpic_flagが共に1に等しい場合、sn_subpic_id[]値のリストが、複数のサブピクチャをそれぞれ含む、適用可能なOLSにおいて、ピクチャ中のサブピクチャのサブピクチャIDを特定するように規定される。このように、スケーラブルネスト型SEIメッセージが適用されるOLSは、各ピクチャが1つのサブピクチャのみを含み、そのサブピクチャIDがスケーラブルネスティングSEIメッセージで示されないレイヤを有することが許容される。
8) 最初の参照ピクチャが、現在のピクチャのサブピクチャレイアウトと異なるサブピクチャレイアウトに最初のピクチャが分割された場合、現在のピクチャの同一位置に配置されたピクチャに設定されないことが必要である。
a. 一例において、第1の参照ピクチャと現在のピクチャとは、異なるレイヤにある。
9) コーディングツールXが第1の参照ピクチャに依存し、かつ第1の参照ピクチャを現在のピクチャのサブピクチャレイアウトとは異なるサブピクチャレイアウトのサブピクチャに分割する場合、コーディングツールXは現在のピクチャに対して無効化されることが必要である。
a. 一例において、第1の参照ピクチャと現在のピクチャとは、異なるレイヤにある。
b. 一例において、コーディングツールXは、双方向オプティカルフロー(BDOF)である。
c. 一例において、コーディングツールXは、デコーダ側動きベクトル微調整(DMVR)である。
d. 一例において、コーディングツールXは、予測微調整オプティカルフロー(PROF)である。
6. 実施形態
以下は、上記第5章に要約されたいくつかの発明の態様のためのいくつかの例示的な実施形態であり、VVC仕様に適用できる。変更されたテキストは、JVET-R2001-vA/v10の最新VVCテキストに基づく。既に追加または修正された最も関連性のある部分は、太字およびイタリック文字で強調表示され、かつ削除された部分の一部は、二重括弧でマークされている(例えば、[[a]]は、「a」という文字の削除を示す)。本質的に編集可能であるため、強調されていない他の何らかの変更があってもよい。
6.1. 第1の実施形態
本実施形態は、1、1.a、2a、2b、3、4、5、5a、5.a.i、6項に対するものである。
Figure 2023526374000007

この処理の出力は、サブビットストリームoutBitstreamである。
入力ビットストリームに対するビットストリーム適合性の要件は、以下の条件のすべてを満たす任意の出力サブビットストリームが適合ビットストリームであるものとする。
Figure 2023526374000008

マルチレイヤOLSで使用する場合、SLI SEIメッセージはスケーラブルネスティングSEIメッセージに含まれるべきであり、特定のOLSに適用されるか、特定のOLSにおけるすべてのレイヤに適用されるように、スケーラブルネスティングSEIメッセージにおいて示されるべきである。
Figure 2023526374000009

-出力サブビットストリームは、tIdTargetであるTemporalIdを有する少なくとも1つのVCL NALユニットを含む。
注-適合するビットストリームは、TemporalIdが0に等しい1つ以上のコーディングされたスライスNALユニットを含むが、nuh_layer_idが0に等しいコーディングされたスライスNALユニットを含む必要はない。
-出力サブビットストリームは、0からNumLayersInOls[targetOlsIdx]-1の範囲内にある各iについて、nuh_layer_idがLayerIdInOls[targetOlsIdx][i]に等しく、sh_subpic_idがSubpicIdVal[subpicIdxTarget[i]][[の値に]]等しい、少なくとも1つのVCL NALユニットを含む。
出力サブビットストリームoutBitstreamは、以下のように導出される。
- 添付C.6で規定されたブビットストリーム抽出処理は、inBitstream、targetOlsIdx、およびtIdTargetを入力として呼び出され、この処理の出力はoutBitstreamに割り当てられる。
Figure 2023526374000010

- サブビットストリームoutBitstreamに置換パラメータセットを提供するために、本明細書で規定されていない外部手段が利用可能である場合、すべてのパラメータセットを置換パラメータセットに置き換える。
- そうでない場合、サブピクチャレベル情報SEIメッセージがinBitstreamに存在するときは、以下が適用される。
- [[変数subpicIdxは、subpicIdxTarget[[NumLayersInOls[targetOlsIdx]-1]]の値に等しく設定される。]]
- 参照されたすべてのVPS NALユニットのprofile_tier_level()構文構造のリストのvps_ols_ptl_idx[targetOlsIdx]番目エントリのgeneral_level_idcの値を、サブピクチャインデックスがsubpicIdxと等しいサブピクチャからなるサブピクチャセットに対する式D.11で導かれるSubpicSetLevelIdcと等しくするよう書き換える。
- VCL HRDパラメータセットまたはNAL HRDパラメータセットが存在する場合、参照されたすべてのVPS NALユニットのvps_ols_hrd_idx[MultiLayerOlsIdx[targetOlsIdx]]番目のols_hrd_parameters()構文構造およびi番目のレイヤによって参照されたすべてのSPS NALユニットのols_hrd_parameters()構文構造におけるj番目のCPBのcpb_size_value_minus1[tIdTarget][j]とbit_rate_value_minus1[tIdTarget][j]のそれぞれの値を、式D.6とD.7からそれぞれ導出されるSubpicCpbSizeVcl[SubpicSetLevelIdx][subpicIdx]とSubpicCpbSizeNal[SubpicSetLevelIdx][subpicIdx]、式D.8とD.9からそれぞれ導出されるSubpicBitrateVcl[SubpicSetLevelIdx][subpicIdx]とSubpicBitrateNal[SubpicSetLevelIdx][subpicIdx]とに対応するように書き換え、ここでSubpicSetLevelIdxはsubpicIdxに等しいサブピクチャインデックスを有するサブピクチャに対して式D.11によって導出され、jは0からhrd_cpb_cnt_minus1の範囲内であり、iは0からNumLayersInOls[targetOlsIdx]-1の範囲内である。
Figure 2023526374000011

- sps_ptl_dpb_hrd_params_present_flagが1に等しい参照されたすべてのSPS NALユニットのprofile_tier_level()構文構造中のgeneral_level_idcの値を、spIdxに等しいサブピクチャインデックスを有するサブピクチャからなるサブピクチャのセットのための式D.11によって導出されたSubpicSetLevelIdcに等しく書き換える。
- 変数subpicWidthInLumaSamplesおよびsubpicHeightInLumaSamplesは、以下のように導出される。
subpicWidthInLumaSamples=min((sps_subpic_ctu_top_left_x[spIdx]+ (C.24)
sps_subpic_width_minus1[spIdx]+1)*CtbSizeY,pps_pic_width_in_luma_samples)-
sps_subpic_ctu_top_left_x[spIdx]*CtbSizeY
subpicHeightInLumaSamples=min((sps_subpic_ctu_top_left_y[spIdx]+ (C.25)
sps_subpic_height_minus1[spIdx]+1)*CtbSizeY,pps_pic_height_in_luma_samples)-
sps_subpic_ctu_top_left_y[spIdx]*CtbSizeY
- 参照されたすべてのSPS NALユニットのsps_pic_width_max_in_luma_samplesとsps_pic_height_max_in_luma_samplesの値、参照されたすべてのPPS NALユニットのpps_pic_width_in_luma_sampleとpps_pic_height_in_luma_samplesの値を、それぞれ、subpicWidthInLumaSamplesとsubpicHeightInLumaSamplesに等しく書き換える。
- 参照されたすべてのSPS NALユニットのsps_num_subpics_minus1および参照されたすべてのPPS NALユニットのpps_num_subpics_minus1の値を0に書き換える。
- 構文要素sps_subpic_ctu_top_left_x[spIdx]およびsps_subpic_ctu_top_left_y[spIdx]は、存在する場合、すべての参照するSPS NALユニットにおいて、0に書き換える。
- 構文要素sps_subpic_ctu_top_left_x[j]、sps_subpic_ctu_top_left_y[j]、sps_subpic_width_minus1[j]、sps_subpic_height_minus1[j]、sps_subpic_treated_as_pic_flag[j]、sps_loop_filter_across_subpic_enabled_flag[j]、および参照されたすべてのSPS NALユニット内でspIdxに等しくない各jについてのsps_subpic_id[j]を削除する。
- spIdxに等しいサブピクチャインデックスを有するサブピクチャに関連付けられていないすべてのタイル行、タイル列、およびスライスを削除するために、タイルおよびスライスの信号通知のために、参照されたすべてのPPSの構文要素を書き換える。
変数subpicConfWinLeftOffset、subpicConfWinRightOffset、subpicConfWinTopOffset、およびsubpicConfWinBottomOffsetは、以下のように導出される。
subpicConfWinLeftOffset=sps_subpic_ctu_top_left_x[spIdx]==0? (C.26)
sps_conf_win_left_offset:0
subpicConfWinRightOffset=(sps_subpic_ctu_top_left_x[spIdx]+ (C.27)
sps_subpic_width_minus1[spIdx]+1)*CtbSizeY>=
sps_pic_width_max_in_luma_samples?sps_conf_win_right_offset:0
subpicConfWinTopOffset=sps_subpic_ctu_top_left_y[spIdx]==0? (C.28)
sps_conf_win_top_offset:0
subpicConfWinBottomOffset=(sps_subpic_ctu_top_left_y[spIdx]+ (C.29)
sps_subpic_height_minus1[spIdx]+1)*CtbSizeY>=
Figure 2023526374000012

- 参照されたすべてのSPS NALユニットのsps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset、sps_conf_win_bottom_offsetの値と、参照されたすべてのPPS NAL ユニットのpps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset、pps_conf_win_bottom_offsetの値を、それぞれ、subpicConfWinLeftOffset、subpicConfWinRightOffset、subpicConfWinTopOffsetおよびsubpicConfWinBottomOffsetに等しく、書き換える。
Figure 2023526374000013

- [[nuh_layer_idがi番目のレイヤのnuh_layer_idに等しく、SubpicIdVal[subpicIdx]に等しくないすべてのVCL NALユニットをoutBitstreamから削除する。]]
Figure 2023526374000014
- outBitstreamが、sn_ols_flagが1に等しく、sn_subpic_flagが1に等しい、outBitstreamに適用可能なスケーラブルネスティングSEIメッセージを含むSEI NALユニットを含んでいる場合、スケーラブルネスト型SEIメッセージからpayloadTypeが1(PT)、130(DUI)、または132(デコードされたピクチャハッシュ)に等しい適切な非スケーラブルネスティングSEIメッセージを抽出し、抽出したSEIメッセージをoutBitstreamに配置する。
D.2.2 一般的なSEIペイロード意味論
...
リストVclAssociatedSeiListは、payloadType値3、19、45、129、132、137、144、145、147~150、153~156、168、[[203、]]、および204からなるように設定される。
リストPicUnitRepConSeiListは、payloadType値0、1、19、45、129、132、133、137、147~150、153~156、168、203、および204からなるように設定される。
注4-VclAssociatedSeiListは、SEIメッセージのpayloadType値で構成され、SEI NALユニットに非スケーラブルにネストされて含まれている場合、関連するVCL NALユニットのNALユニットヘッダに基づいて、SEI NALユニットのNALユニットヘッダに対する制約を推論する。PicUnitRepConSeiListは、1つのPU当たり4回の繰り返しの制限を受けるSEIメッセージのpayloadType値で構成される。
SEI NALユニットにSEIメッセージを含めることに関して、以下の制限が適用されることは、ビットストリーム準拠の要件である。
- SEI NALユニットが、非スケーラブルネスト型BP SEIメッセージ、非スケーラブルネスト型PT SEIメッセージ、または非スケーラブルネスト型DUI SEIメッセージを含む場合、SEI NALユニットは、payloadTypeが0(BP)、1(PT)、または130(DUI)に等しくない他のSEIメッセージを含まないものとする。
- SEI NALユニットが、スケーラブルネスト型BP SEIメッセージ、スケーラブルネスト型PT SEIメッセージ、またはスケーラブルネスト型DUI SEIメッセージを含む場合、SEI NALユニットは、payloadTypeが0(BP)、1(PT)、130(DUI)または133(スケーラブルネスティング)に等しくない他のSEIメッセージを含まないものとする。
Figure 2023526374000015

...
D.6.2 スケーラブルネスティングSEIメッセージ意味論
...
Figure 2023526374000016

Figure 2023526374000017

...
図7は、本明細書で開示される様々な技術が実装され得る例示的な映像処理システム1900を示すブロック図である。様々な実装形態は、システム1900のコンポーネントの一部または全部を含んでもよい。システム1900は、映像コンテンツを受信するための入力ユニット1902を含んでもよい。映像コンテンツは、未加工または非圧縮フォーマット、例えば、8または10ビットのマルチコンポーネント画素値で受信されてもよく、または圧縮またはエンコードされたフォーマットで受信されてもよい。入力ユニット1902は、ネットワークインターフェース、周辺バスインターフェース、または記憶インターフェースを表してもよい。ネットワークインターフェースの例は、イーサネット(登録商標)、PON(Passive Optical Network)等の有線インターフェース、およびWi-Fi(登録商標)またはセルラーインターフェース等の無線インターフェースを含む。
システム1900は、本明細書に記載される様々なコーディングまたはエンコーディング方法を実装することができるコーディングコンポーネント1904を含んでもよい。コーディングコンポーネント1904は、入力1902からの映像の平均ビットレートをコーディングコンポーネント1904の出力に低減し、映像のコーディング表現を生成してもよい。従って、このコーディング技術は、映像圧縮または映像トランスコーティング技術と呼ばれることがある。コーディングコンポーネント1904の出力は、コンポーネント1906によって表されるように、記憶されてもよいし、接続された通信を介して送信されてもよい。入力1902において受信された、記憶されたまたは通信された映像のビットストリーム(またはコーディングされた)表現は、コンポーネント1908によって使用されて、表示インターフェース1910に送信される画素値または表示可能な映像を生成してもよい。ビットストリーム表現からユーザが見ることができる映像を生成する処理は、映像展開と呼ばれることがある。さらに、特定の映像処理動作を「コーディング」動作またはツールと呼ぶが、コーディングツールまたは動作は、エンコーダおよびそれに対応する、コーディングの結果を逆にするデコーディングツールまたは動作が、デコーダによって行われることが理解されよう。
周辺バスインターフェースまたは表示インターフェースの例は、ユニバーサルシリアルバス(USB)またはハイビジョンマルチメディアインターフェース(HDMI(登録商標))またはディスプレイポート等を含んでもよい。ストレージインターフェースの例は、SATA(Serial Advanced Technology Attachment)、PCI、IDEインターフェース等を含む。本明細書に記載される技術は、携帯電話、ノートパソコン、スマートフォン、またはデジタルデータ処理および/または映像表示を実施可能な他のデバイス等の様々な電子デバイスに実施されてもよい。
図8は、映像処理装置3600のブロック図である。装置3600は、本明細書に記載の方法の1または複数を実装するために使用されてもよい。装置3600は、スマートフォン、タブレット、コンピュータ、モノのインターネット(IoT)受信機等に実施されてもよい。装置3600は、1つ以上のプロセッサ3602と、1つ以上のメモリ3604と、映像処理ハードウェア3606と、を含んでもよい。1つまたは複数のプロセッサ3602は、本明細書に記載される1または複数の方法を実装するように構成されてもよい。メモリ(複数可)3604は、本明細書で説明される方法および技術を実装するために使用されるデータおよびコードを記憶するために使用してもよい。映像処理ハードウェア3606は、本明細書に記載される技術をハードウェア回路にて実装するために使用してもよい。
図10は、本開示の技法を利用し得る例示的な映像コーディングシステム100を示すブロック図である。
図10に示すように、映像コーディングシステム100は、送信元デバイス110と、送信先デバイス120と、を備えてもよい。送信元デバイス110は、エンコーディングされた映像データを生成するものであり、映像エンコーディングデバイスとも呼ばれ得る。送信先デバイス120は、送信元デバイス110によって生成された、エンコードされた映像データをデコードしてよく、映像デコーディングデバイスと呼ばれ得る。
送信元デバイス110は、映像ソース112と、映像エンコーダ114と、入出力(I/O)インターフェース116と、を備えてもよい。
映像ソース112は、映像キャプチャデバイスなどのソース、映像コンテンツプロバイダからの映像データを受信するためのインターフェース、および/または映像データを生成するためのコンピュータグラフィックスシステム、またはこれらのソースの組み合わせを含んでもよい。映像データは、1または複数のピクチャを含んでもよい。映像エンコーダ114は、映像ソース112からの映像データをエンコードし、ビットストリームを生成する。ビットストリームは、映像データのコーディング表現を形成するビットのシーケンスを含んでもよい。ビットストリームは、コーディングされたピクチャおよび関連付けられたデータを含んでもよい。コーディングされたピクチャは、ピクチャのコーディング表現である。関連付けられたデータは、シーケンスパラメータセット、ピクチャパラメータセット、および他の構文構造を含んでもよい。I/Oインターフェース116は、変調器/復調器(モデム)および/または送信機を含んでもよい。エンコードされた映像データは、ネットワーク130aを介して、I/Oインターフェース116を介して送信先デバイス120に直接送信されてよい。エンコードされた映像データは、送信先デバイス120がアクセスするために、記録媒体/サーバ130bに記憶してもよい。
送信先デバイス120は、I/Oインターフェース126、映像デコーダ124、および表示デバイス122を含んでもよい。
I/Oインターフェース126は、受信機および/またはモデムを含んでもよい。I/Oインターフェース126は、送信元デバイス110または記憶媒体/サーバ130bからエンコードされた映像データを取得してもよい。映像デコーダ124は、エンコードされた映像データをデコードしてもよい。表示デバイス122は、デコードされた映像データをユーザに表示してもよい。表示デバイス122は、送信先デバイス120と一体化されてもよく、または外部表示デバイスとインターフェースで接続するように構成される送信先デバイス120の外部にあってもよい。
映像エンコーダ114および映像デコーダ124は、高効率映像コーディング(HEVC)規格、汎用映像コーディング(VVM)規格、および他の現在のおよび/またはさらなる規格等の映像圧縮規格に従って動作してもよい。
図11は、映像エンコーダ200の一例を示すブロック図であり、この映像エンコーダ200は、図10に示されるシステム100における映像エンコーダ114であってもよい。
映像エンコーダ200は、本開示の技術のいずれかまたは全部を行うように構成されてもよい。図11の例において、映像エンコーダ200は、複数の機能コンポーネントを備える。本開示で説明される技法は、映像エンコーダ200の様々なコンポーネント間で共有されてもよい。いくつかの例では、プロセッサは、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
映像エンコーダ200の機能コンポーネントは、分割ユニット201、予測ユニット202、残差生成ユニット207、変換ユニット208、量子化ユニット209、逆量子化ユニット210、逆変換ユニット211、再構成ユニット212、バッファ213、およびエントロピーエンコーディングユニット214を含んでもよく、予測ユニット202は、モード選択ユニット203、動き推定ユニット204、動き補償ユニット205、およびイントラ予測ユニット206を含む。
他の例において、映像エンコーダ200は、より多くの、より少ない、または異なる機能コンポーネントを含んでもよい。一例において、予測ユニット202は、イントラブロックコピー(IBC)ユニットを含んでもよい。IBCユニットは、少なくとも1つの参照ピクチャが、現在の映像ブロックが位置するピクチャであるIBCモードにおいて予測を実行してもよい。
さらに、動き推定ユニット204および動き補償ユニット205などのいくつかのコンポーネントは、高度に統合されてもよいが、説明のために、図11の例においては別々に表されている。
分割ユニット201は、ピクチャを1または複数の映像ブロックに分割してもよい。映像エンコーダ200および映像デコーダ300は、様々な映像ブロックサイズをサポートしてもよい。
モード選択ユニット203は、例えば、誤りの結果に基づいて、イントラまたはインターのコーディングモードのうちの1つを選択し、得られたイントラまたはインターコーディングされたブロックを、残差生成ユニット207に供給して残差ブロックデータを生成し、かつ、再構成ユニット212に供給して参照ピクチャとして使用するためのエンコードされたブロックを再構成してもよい。いくつかの例において、モード選択ユニット203は、インター予測信号およびイントラ予測信号に基づいて予測を行うCIIP(Combination of Intra and Inter Predication)モードを選択してもよい。モード選択ユニット203は、インター予測の場合、ブロックのために動きベクトルの解像度(例えば、サブピクセルまたは整数ピクセル精度)を選択してもよい。
現在の映像ブロックに対してインター予測を行うために、動き推定ユニット204は、バッファ213からの1つ以上の参照フレームと現在の映像ブロックとを比較することにより、現在の映像ブロックに対する動き情報を生成してもよい。動き補償ユニット205は、動き情報および現在の映像ブロックに関連付けられたピクチャ以外のバッファ213からのピクチャのデコードされたサンプルに基づいて、現在の映像ブロックに対する予測映像ブロックを決定してもよい。
動き推定ユニット204および動き補償ユニット205は、現在の映像ブロックがIスライスであるか、Pスライスであるか、またはBスライスであるかに基づいて、例えば、現在の映像ブロックに対して異なる動作を行ってもよい。
いくつかの例において、動き推定ユニット204は、現在の映像ブロックに対して単方向予測を実行し、動き推定ユニット204は、現在の映像ブロックに対する参照映像ブロックのために、リスト0またはリスト1の参照ピクチャを検索してもよい。動き推定ユニット204は、参照映像ブロックと、現在の映像ブロックと参照映像ブロックとの間の空間的変位を示す動きベクトルとを含む、リスト0またはリスト1における参照ピクチャを示す参照インデックスを生成してもよい。動き推定ユニット204は、参照インデックス、予測方向インジケータ、および動きベクトルを、現在の映像ブロックの動き情報として出力してもよい。動き補償ユニット205は、現在の映像ブロックの動き情報が示す参照映像ブロックに基づいて、現在のブロックの予測映像ブロックを生成してもよい。
他の例において、動き推定ユニット204は、現在の映像ブロックを双方向予測してもよく、動き推定ユニット204は、現在の映像ブロックに対する参照映像ブロックについて、リスト0から参照ピクチャを検索してもよく、また、現在の映像ブロックに対する別の参照映像ブロックについて、リスト1における参照ピクチャも検索してもよい。そして、動き推定ユニット204は、参照映像ブロックを含むリスト0およびリスト1における参照ピクチャを示す参照インデックスと、参照映像ブロックと現在の映像ブロックとの間の空間的変位を示す動きベクトルとを生成してもよい。動き推定ユニット204は、現在の映像ブロックの参照インデックスおよび動きベクトルを、現在の映像ブロックの動き情報として出力してもよい。動き補償ユニット205は、現在の映像ブロックの動き情報が示す参照映像ブロックに基づいて、現在の映像ブロックの予測映像ブロックを生成してもよい。
いくつかの例において、動き推定ユニット204は、デコーダのデコーディング処理のために、動き情報のフルセットを出力してもよい。
いくつかの例では、動き推定ユニット204は、現在の映像のための動き情報のフルセットを出力しなくてもよい。むしろ、動き推定ユニット204は、別の映像ブロックの動き情報を参照して、現在の映像ブロックの動き情報を信号通知してもよい。例えば、動き推定ユニット204は、現在の映像ブロックの動き情報が近傍の映像ブロックの動き情報に十分に類似していることを判定してもよい。
一例において、動き推定ユニット204は、現在の映像ブロックに関連付けられた構文構造において、現在の映像ブロックが別の映像ブロックと同一の動き情報を有することを映像デコーダ300に示す値を示してもよい。
他の例において、動き推定ユニット204は、現在の映像ブロックに関連付けられた構文構造において、別の映像ブロックと、MVD(Motion Vector Difference)とを識別してもよい。動きベクトル差分は、現在の映像ブロックの動きベクトルと、示された映像ブロックの動きベクトルとの差分を示す。映像デコーダ300は、指定された映像ブロックの動きベクトルと動きベクトル差分とを使用して、現在の映像ブロックの動きベクトルを決定してもよい。
上述したように、映像エンコーダ200は、動きベクトルを予測的に信号通知してもよい。映像エンコーダ200によって実装され得る予測信号通知技法の2つの例は、AMVP(Advanced Motion Vector Predication)およびマージモード信号通知を含む。
イントラ予測ユニット206は、現在の映像ブロックに対してイントラ予測を行ってもよい。イントラ予測ユニット206が現在の映像ブロックをイントラ予測する場合、イントラ予測ユニット206は、同じピクチャにおける他の映像ブロックのデコードされたサンプルに基づいて、現在の映像ブロックのための予測データを生成してもよい。現在の映像ブロックのための予測データは、予測された映像ブロックおよび様々な構文要素を含んでもよい。
残差生成ユニット207は、現在の映像ブロックから現在の映像ブロックの予測された映像ブロックを減算することによって(例えば、マイナス符号によって示されている)、現在の映像ブロックに対する残差データを生成してもよい。現在の映像ブロックの残差データは、現在の映像ブロックにおけるサンプルの異なるサンプル成分に対応する残差映像ブロックを含んでもよい。
他の例において、例えば、スキップモードにおいて、現在の映像ブロックに対する残差データがなくてもよく、残差生成ユニット207は、減算動作を行わなくてもよい。
変換処理ユニット208は、現在の映像ブロックに関連付けられた残差映像ブロックに1または複数の変換を適用することによって、現在の映像ブロックのための1または複数の変換係数映像ブロックを生成してもよい。
変換処理ユニット208が現在の映像ブロックに関連付けられた変換係数映像ブロックを生成した後、量子化ユニット209は、現在の映像ブロックに関連付けられた1または複数の量子化パラメータ(QP:Quantization Parameter)値に基づいて、現在の映像ブロックに関連付けられた変換係数映像ブロックを量子化してもよい。
逆量子化ユニット210および逆変換ユニット211は、変換係数映像ブロックに逆量子化および逆変換をそれぞれ適用し、変換係数映像ブロックから残差映像ブロックを再構成してもよい。再構成ユニット212は、予測ユニット202によって生成された1または複数の予測映像ブロックに対応するサンプルに再構成された残差映像ブロックを追加して、バッファ213に格納するための現在のブロックに関連付けられた再構成された映像ブロックを生成してもよい。
再構成ユニット212が映像ブロックを再構成した後、映像ブロックにおける映像ブロッキングアーチファクトを縮小するために、ループフィルタリング動作が行われてもよい。
エントロピーエンコーディングユニット214は、映像エンコーダ200の他の機能コンポーネントからデータを受信してもよい。エントロピーエンコーディングユニット214がデータを受信した場合、エントロピーエンコーディングユニット214は、1または複数のエントロピーエンコーディング動作を行い、エントロピーエンコードされたデータを生成し、エントロピーエンコードされたデータを含むビットストリームを出力してもよい。
図12は、映像デコーダ300の一例を示すブロック図であり、この映像デコーダ300は、図10に示されるシステム100における映像デコーダ114であってもよい。
映像デコーダ300は、本開示の技術のいずれかまたは全てを行うように構成されてもよい。図12の実施例において、映像デコーダ300は、複数の機能コンポーネントを含む。本開示で説明される技法は、映像デコーダ300の様々なコンポーネント間で共有されてもよい。いくつかの例では、プロセッサは、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
図12の例において、映像デコーダ300は、エントロピーデコーディングユニット301、動き補償ユニット302、イントラ予測ユニット303、逆量子化ユニット304、逆変換ユニット305、および再構成ユニット306、並びにバッファ307を備える。映像デコーダ300は、いくつかの例では、映像エンコーダ200(図11)に関して説明したエンコーディングパスとほぼ逆のデコーディングパスを行ってもよい。
エントロピーデコーディングユニット301は、エンコードされたビットストリームを取り出す。エンコードされたビットストリームは、エントロピーコーディングされた映像データ(例えば、映像データのエンコードされたブロック)を含んでもよい。エントロピーデコーディングユニット301は、エントロピーコーディングされた映像データをデコードし、エントロピーデコードされた映像データから、動き補償ユニット302は、動きベクトル、動きベクトル精度、参照ピクチャリストインデックス、および他の動き情報を含む動き情報を決定してもよい。動き補償ユニット302は、例えば、AMVPおよびマージモードを行うことで、このような情報を決定してもよい。
動き補償ユニット302は、動き補償されたブロックを生成してもよく、場合によっては、補間フィルタに基づいて補間を行う。構文要素には、サブピクセルの精度で使用される補間フィルタのための識別子が含まれてもよい。
動き補償ユニット302は、映像ブロックのエンコーディング中に映像エンコーダ200によって使用されるような補間フィルタを使用して、参照ブロックのサブ整数画素のための補間値を計算してもよい。動き補償ユニット302は、受信した構文情報に基づいて、映像エンコーダ200により使用される補間フィルタを決定し、予測ブロックを生成に補間フィルタを使用してもよい。
動き補償ユニット302は、エンコードされた映像シーケンスのフレームおよび/またはスライスをエンコードするために使用されるブロックのサイズを判定するための構文情報、エンコードされた映像シーケンスのピクチャの各マクロブロックがどのように分割されるかを記述する分割情報、各分割がどのようにエンコードされるかを示すモード、各インターエンコードされたブロックに対する1つ以上の参照フレーム(および参照フレームリスト)、およびエンコードされた映像シーケンスをデコードするための他の情報のうちいくつかを使用してもよい。
イントラ予測ユニット303は、例えば、ビットストリームにおいて受信したイントラ予測モードを使用して、空間的に隣接するブロックから予測ブロックを形成してもよい。逆量子化ユニット303は、ビットストリームに提供され、エントロピーデコーディングユニット301によってデコードされる量子化された映像ブロック係数を逆量子化(すなわち、逆量子化)する。逆変換ユニット303は、逆変換を適用する。
再構成ユニット306は、残差ブロックと、動き補償ユニット202またはイントラ予測ユニット303によって生成された対応する予測ブロックとを合計し、デコードされたブロックを形成してもよい。所望であれば、ブロックアーチファクトを除去するために、デコードされたブロックをフィルタリングするためにデブロッキングフィルタを適用してもよい。デコードされた映像ブロックは、バッファ307に記憶され、バッファ307は、後続の動き補償/イントラ予測のために参照ブロックを提供し、表示デバイスに表示するためにデコードされた映像を生成する。
解決策のリストは、開示される技術のいくつかの実施例を説明する。
第1の解決策のセットを次に提供する。以下の解決策は、前章(例えば、項目1)で論じた技術の例示的な実施形態を示す。
1.映像処理方法(例えば、図9に示す方法900)は、1つ以上のサブピクチャを含む1つ以上の映像ピクチャを含む映像と映像のコーディング表現との間で変換を行うこと(902)を含み、このコーディングされた表現はフォーマット規則に準拠し、このフォーマット規則はサブピクチャに適用されるスケーリングウィンドウの1つ以上のパラメータがコーディングされた表現に含まれる1つ以上の構文領域に基づいて決定されることを規定する。
2.前記1つ以上のパラメータは、前記サブピクチャに適用可能な前記スケーリングウィンドウの左オフセット、右オフセット、トップオフセット、またはボトムオフセットを含む、解決策1に記載の方法。
以下の解決策は、前章(例えば、項目3)で論じた技術の例示的な実施形態を示す。
3.映像コーディングレイヤにおける1つ以上の映像ピクチャを含む映像と映像のコーディング表現との間で変換をすることを含み、この変換は、パラメータセットが外部的に更新可能であるかどうかにかかわらず、ネットワーク抽象化レイヤユニット、フィルタデータ、およびフィラー補足強化情報データの削除を行うことを規定する規則に準拠する、映像処理方法。
以下の解決策は、前章(例えば、項目4)で論じた技術の例示的な実施形態を示す。
4.映像コーディングレイヤにおける1つ以上の映像ピクチャを含む映像と、映像のコーディング表現との間で変換を行うことを含み、この変換は、フィラーSEIメッセージペイロードを含むネットワーク抽象化レイヤから他の補足強化情報(SEI)を排除することを規定するフォーマット規則に準拠する、映像処理方法。
5.前記変換は、フィラーペイロードSEIメッセージをSEI NALユニットとして削除することを規定する規則に準拠する、解決策1に記載の方法。
以下の解決策は、前章(例えば、項目7)で論じた技術の例示的な実施形態を示す。
6.1つ以上のサブピクチャを含む1つ以上のレイヤを含む映像と、映像のコーディング表現との間で変換を行うことを含み、この変換は、少なくとも2つのレイヤが存在し、1つのレイヤのピクチャがそれぞれ複数のサブピクチャからなり、また別のレイヤのピクチャがそれぞれ1つのサブピクチャのみからなる、異なるレイヤのサブピクチャのどの組み合わせが、フォーマット規則に準拠することが必要であるかを規定する規則に基づく、映像処理方法。
以下の解決策は、前章(例えば、項目8)で論じた技術の例示的な実施形態を示す。
7.1つ以上のサブピクチャを含む1つ以上の映像ピクチャを含む1つ以上のレイヤを含む映像と映像のコーディングされた表現との間で変換を行うことを含み、この変換は、サブピクチャレイアウトを用いて分割された第1のピクチャに対して、第2のピクチャが第1のピクチャと異なるサブピクチャレイアウトに従って分割されている場合、第2のピクチャは同一位置に配置された参照ピクチャとして用いることができないことを規定する規則に準拠する、映像処理方法。
8.前記第1のピクチャと前記第2のピクチャが異なるレイヤにある、解決策7に記載の方法。
以下の解決策は、前章(例えば、項目9)で論じた技術の例示的な実施形態を示す。
9.1つ以上のサブピクチャを含む1つ以上の映像ピクチャを含む1つ以上のレイヤを含む映像を、映像のコーディングされた表現との間で変換を行うことを含み、この変換は、サブピクチャレイアウトを使用してサブピクチャを分割する場合、エンコーディングの際にコーディングツールを使用すること、またはデコーディングの際に対応するデコーディングツールを使用することを規定する規則に準拠し、コーディングツールが第1のピクチャの参照ピクチャである第2のピクチャの異なるサブピクチャレイアウトに依存する場合、この変換を無効にする、映像処理方法
10.第1のピクチャと第2のピクチャは異なるレイヤにある、解決策9に記載の方法。
11.変換は、映像をコーディングされた表現にエンコーディングすることを含む、解決策1~10のいずれかに記載の方法。
12.変換は、映像の画素値を生成するためにコーディングされた表現をデコーディングすることを含む、解決策1~10のいずれかに記載の方法。
13.解決策1~12の1つ以上に記載の方法を実装するように構成されたプロセッサを備える、映像デコーディング装置。
14.解決策1~12の1つ以上に記載の方法を実装するように構成されたプロセッサを備える、映像エンコーディング装置。
15.コンピュータコードが記憶されたコンピュータプログラム製品であって、コードは、プロセッサにより実行されると、プロセッサに、解決策1~12のいずれかに記載の方法を実装させるコンピュータプログラム製品。
16.本明細書に記載の方法、装置またはシステム。
第2の解決策のセットは、前章(例えば、項目1)で論じた技術の例示的な実施形態を示す。
1.本発明の映像処理方法(例えば、図13に示す方法1300)は、1つ以上のサブピクチャを含む1つ以上の映像ピクチャを含む映像とこの映像のビットストリームとの間で変換を行うこと(1302)を含み、この変換はサブピクチャに適用されるスケーリングウィンドウの1つ以上のパラメータが、サブピクチャサブビットストリーム抽出処理の間に、1つ以上の構文要素から決定されることを規定する規則に準拠する。
2.前記1つ以上の構文要素は、元のピクチャパラメータセットおよび/または元のシーケンスパラメータセットに含まれる、解決策1に記載の方法。
3.前記元のピクチャパラメータセットおよび/または前記元のシーケンスパラメータセットは、前記パラメータの算出および書き換えによって変更される、解決策1または2に記載の方法。
4.前記1つ以上のパラメータは、前記サブピクチャに適用可能な前記スケーリングウィンドウの左オフセット、右オフセット、トップオフセット、またはボトムオフセットのうちの少なくとも1つを含む、解決策1から3に記載の方法。
5.スケーリングウィンドウの左オフセット(subpicScalWinLeftOffset)が、以下のように導出される、解決策1から4のいずれかに記載の方法。
subpicScalWinLeftOffset=pps_scaling_win_left_offset-sps_subpic_ctu_top_left_x[spIdx]*CtbSizeY/SubWidthC、ここで、pps_scaling_win_left_offsetは、スケーリング比算出のためにピクチャサイズに適用される左オフセットを示し、sps_subpic_pps_scaling_win_left_offsetは、スケーリング比計算のためにピクチャサイズに適用される左オフセットを示し、sps_subpic_ctu_top_left_x[spIdx]はサブピクチャの左上隅に位置するコーディングツリーユニットのx座標を示し、CtbSizeYは輝度コーディングツリーブロックまたはコーディングツリーユニットの幅または高さ、SubWidthCは映像ブロックの幅を示し、映像ブロックを含むピクチャの彩度フォーマットに応じたテーブルから取得されたものである。
6.スケーリングウィンドウの右オフセットsubpicScalWinRightOffsetが、以下のように導出される、解決策1から4のいずれかに記載の方法。
subpicScalWinRightOffset=(rightSubpicBd>=sps_pic_width_max_in_luma_samples)?pps_scaling_win_right_offset:pps_scaling_win_right_offset-(sps_pic_width_max_in_luma_samples-rightSubpicBd)/SubWidthC、そして
sps_pic_width_max_in_luma_samplesは、シーケンスパラメータセットを参照してデコードされた各ピクチャの最大幅を輝度サンプル単位で規定し、pps_scaling_win_right_offsetは、スケーリング比計算のためにピクチャサイズに適用する右オフセットを示し、SubWidthCは映像ブロック幅であり映像ブロック含むピクチャの彩度に応じたテーブルから取得され、かつ
rightSubpicBd=(sps_subpic_ctu_top_left_x[spIdx]+sps_subpic_width_minus1[spIdx]+1)*CtbSizeY、そしてsps_subpic_ctu_top_left_x[spIdx]は、サブピクチャの左上隅に位置するコーディングツリーユニットのx座標、sps_subpic_width_minus1[spIdx]はサブピクチャの幅、CtbSizeYは輝度コーディングツリーブロックまたはコーディングツリーユニットの幅または高さであることを示す。
7.スケーリングウィンドウのトップオフセット、subpicScalWinTopOffsetが、以下のように導出される、解決策1から4のいずれかに記載の方法。
SubPicScalWinTopOffset=pps_scaling_win_top_offset-sps_subpic_ctu_top_left_y[spIdx]*CtbSizeY/SubHeightC、ここで
pps_scaling_win_top_offsetは、スケーリング比計算のためにピクチャサイズに適用されるトップオフセットを示し、sps_subpic_ctu_top_left_y[spIdx]はサブピクチャの左上隅に位置するコーディングツリーユニットのy座標を示し、CtbSizeYは輝度コーディングツリーブロックまたはコーディングツリーユニットの幅または高さ、SubHightCは映像ブロックの高さを示し、映像ブロックを含むピクチャの彩度フォーマットに従ったテーブルから取得される。
8.スケーリングウィンドウのボトムオフセットubpicScalWinBotOffsetが、以下のように導出される、解決策1から4のいずれかに記載の方法。
subpicScalWinBotOffset=(botSubpicBd>=sps_pic_height_max_in_luma_samples)?pps_scaling_win_bottom_offset:pps_scaling_win_bottom_offset-(sps_pic_height_max_in_luma_samples-botSubpicBd)/SubHeightC、およびsps_pic_height_max_in_luma_samplesは、シーケンスパラメータセットを参照してデコードされた各ピクチャの最大高さを輝度サンプル単位で示し、pps_scaling_win_bottom_offsetは、スケーリング比計算のためにピクチャサイズに適用するボトムオフセットを示し、SubHeightCは、映像ブロックの高さを示し、映像ブロックを含むピクチャの彩度フォーマットに応じたテーブルから取得され、
そして、ここでbotSubpicBd=(sps_subpic_ctu_top_left_y[spIdx]+sps_subpic_height_minus1[spIdx]+1)*CtbSizeYであり、また、sps_subpic_ctu_top_left_y[spIdx]はサブピクチャの左上隅に位置するコーディングツリーユニットのy座標を示し、およびCtbSizeYは輝度コーディングツリーブロックまたはコーディングツリーユニットの幅または高さである。
9.sps_subpic_ctu_top_left_x[spIdx]、sps_subpic_width_minus1[spIdx]、sps_subpic_ctu_top_left_y[spIdx]、sps_subpic_height_minus1[spIdx]、sps_pic_width_max_in_luma_samples、およびsps_pic_height_max_in_luma_samplesは元のシーケンスパラメータセットからのものであり、およびpps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、およびpps_scaling_win_bottom_offsetは元のピクチャパラメータセットからのものである、解決策5から8のいずれかに記載の方法。
10.前記規則は、、参照されるすべてのピクチャパラメータセット(PPS)ネットワーク抽象化レイヤ(NAL)ユニットにおける、pps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、pps_scaling_win_bottom_offsetの値を、それぞれsubpicScalWinLeftOffset、subpicScalWinRightOffset、subpicScalWinTopOffsetおよびsubpicScalWinBotOffsetに等しく書き換えることを規定した、解決策1から3に記載のいずれかの方法であり、かつ
ここで、pps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、pps_scaling_win_bottom_offsetはそれぞれ、スケーリング比計算のために画像サイズに適用する左オフセット、右オフセット、トップオフセット、ボトムオフセットを示し、かつ
ここで、subpicScalWinLeftOffset、subpicScalWinRightOffset、subpicScalWinTopOffsetおよびsubpicScalWinBotOffsetはそれぞれ、サブピクチャに適用するスケーリングウィンドウの左オフセット、右オフセット、トップオフセットおよびボトムオフセットを示す。
11.スケーリングウィンドウのボトムオフセットsubpicScalWinBotOffsetが、以下のように導出される、解決策1から4のいずれかに記載の方法。
subpicScalWinBotOffset=(botSubpicBd>=pps_pic_height_in_luma_samples)?pps_scaling_win_bottom_offset:pps_scaling_win_bottom_offset-(pps_pic_height_in_luma_samples-botSubpicBd)/SubHeightC、かつ、
ここで、pps_pic_height_max_in_luma_samplesは、ピクチャパラメータセットを参照してデコードされた各ピクチャの最大高さを輝度サンプル単位で示し、pps_scaling_win_bottom_offsetはスケーリング比計算に用いるピクチャサイズに対するボトムオフセットを示し、SubHeightCは、映像ブロックの高さで、映像ブロック含むピクチャの彩度フォーマットに応じたテーブルから取得され、かつ、
ここでbotSubpicBd=(sps_subpic_ctu_top_left_y[spIdx]+sps_subpic_height_minus1[spIdx]+1)*CtbSizeYであり、
ここでsps_subpic_ctu_top_left_y[spIdx]は、サブピクチャの左上隅に位置するコーディングツリーユニットのy座標を示し、CtbSizeYは輝度コーディングツリーブロックまたはコーディングツリーユニットの幅または高さである。
12.pps_pic_height_in_luma_samplesは、元のピクチャパラメータセットからのものである、解決策11に記載の方法。
13.前記規則は、参照ピクチャ再サンプリングの適用可能性を示すシーケンスパラメータセットにおける参照サンプル許可フラグを書き換えることをさらに規定する、解決策1に記載の方法。
14.前記規則は、シーケンスパラメータセットを参照し、コーディングされたレイヤ映像シーケンス(CLVS)内で起こり得るピクチャの空間解像度の変化を示すシーケンスパラメータセットにおける解像度変更許可フラグを書き換えることをさらに規定する、解決策1に記載の方法。
15.変換は、映像をビットストリームにエンコーディングすることを含む、解決策1~14のいずれかに記載の方法。
16.変換は、ビットストリームから映像をデコーディングすることを含む、解決策1~14のいずれかに記載の方法。
17.変換は、映像からビットストリームを生成することを含み、方法は、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、解決策1~14のいずれかに記載の方法。
18.解決策1~17のいずれか1つ以上に記載の方法を実装するように構成された処理装置を備える映像処理装置。
19.解決策1~17のいずれか1つに記載の方法と、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、映像のビットストリームを記憶する方法。
20.実行されると、解決策1~17のいずれか1つ以上に記載の方法をプロセッサに実装させるプログラムコードを記憶したコンピュータ可読媒体。
21.上述した方法のいずれかに従って生成されたビットストリームを記憶する、コンピュータ可読媒体。
22.解決策1~7の1つ以上に記載の方法を実装するように構成された、ビットストリーム表現を記憶するための映像処理装置。
第3の解決策のセットは、前章(例えば、項目2および7)で論じた技術の例示的な実施形態を示す。
1.映像処理方法(例えば、図14Aに示す方法1400)は、規則に従って、1つ以上のサブピクチャを含む1つ以上の映像ピクチャを含む1つ以上のレイヤを含む映像とこの映像のビットストリームとの間で変換を行うことを含み、この規則は、サブビットストリーム抽出処理中にビットストリームから抽出されるべきネットワーク抽象化レイヤ(NAL)ユニットを定義してサブビットストリームを出力し、かつこの規則は、サブビットストリーム抽出処理への1つ以上の入力をさらに規定し、かつ/またはこのビットストリームの異なるレイヤのサブピクチャのどの組み合わせを使用するかを規定し、これによりサブビットストリーム抽出処理の出力が予め定義されたフォーマットに準拠する。
2.前記規則は、前記サブビットストリーム抽出処理への1つ以上の入力が、デコードされるべきターゲットOLSのOLSインデックスを識別し、かつ映像パラメータセットによって規定されたOLSのリストへのインデックスに等しいターゲット出力レイヤセット(OLS)インデックス(targetOlsIdx)を含むことを規定する、解決策1に記載の方法。
3.前記規則は、サブビットストリーム抽出処理への1つ以上の入力が、ターゲットの最高時間識別子値(tIdTarget)を含むことを規定する、解決策1に記載の方法。
4.前記ターゲットの最高時間識別子値は、0から映像パラメータセットによって特定されるレイヤに存在することが許可される時間サブレイヤの最大数の範囲内にある、解決策3に記載の方法。
5.前記時間サブレイヤの最大数は、映像パラメータセットに含まれる構文要素によって示される、解決策4に記載の方法。
6.前記構文要素は、vps_max_sublayers_minus1である、解決策5に記載の方法。
7.前記規則は、サブビットストリーム抽出処理への1つ以上の入力が、ターゲットOLSに存在するサブピクチャインデックスに等しいターゲットサブピクチャインデックス値(subpicIdxtarget)を含むことを規定する、解決策1に記載の方法。
8.前記規則は、サブビットストリーム抽出処理への1つ以上の入力が、ターゲットサブピクチャインデックス値のリスト、0からNumLayersInOls[targetOLsIdx]-1までのiのsubpicIdxTarget[i]を含むことを規定し、ここで、NumLayerInOls[i]はi番目のOLSのレイヤ数を規定し、targetOLsIdxはターゲット出力レイヤセット(OLS)インデックスを示す、解決策1に記載の方法。
9.前記規則は、targetOLsIdx番目のOLSにおけるすべてのレイヤが同じ空間解像度を有し、同じサブピクチャレイアウトを有し、そしてすべてのサブピクチャは、コーディングされたレイヤ映像シーケンスにおける各コーディングされたピクチャの対応するサブピクチャを、ループ内フィルタリング操作を除くデコーディング処理においてピクチャとして扱うことを規定する構文要素を有する、解決策8に記載の方法。
10.iのすべての値に対するsubpicIdxTarget[i]の値が同一であり、0からsps_num_subpics_minus1の範囲内の特定の値に等しく、ここで、sps_num_subpics_minus1+1は、コーディングされたレイヤ映像シーケンスにおける各ピクチャのサブピクチャの数を規定する、解決策8に記載の方法。
11.前記規則は、出力サブビットストリームが、LayerIdInOls[targetOlsIdx]のリストにおける各nuh_layer_id値に等しいnuh_layer_idを有する少なくとも1つのVCL(映像コーディングレイヤ)NAL(ネットワーク抽象化レイヤ)ユニットを含むことを規定し、ここで、nuh_layer_idはNALユニットヘッダ識別子、LayerIdInOls[targetOlsIdx]はOLSにおけるnuh_layer_idの値をtargetOLsIdxで規定する、解決策8に記載の方法。
12.前記規則は、出力サブビットストリームが、TemporalIdがtIdTargetに等しい少なくとも1つのVCL(映像コーディングレイヤ)NAL(ネットワーク抽象化レイヤ)ユニットを含むことを規定し、ここで、TemporalIdは、ターゲットの最高時間識別子を示し、およびtIdTargetはサブビットストリーム抽出処理への1つ以上の入力として提供されるTemporalIdの値である、解決策8に記載の方法。
13.前記ビットストリームは、nuh_layer_idが0に等しいコーディングされたスライスNAL(ネットワーク抽象化レイヤ)ユニットを含む必要なく、TemporalIdが0に等しい1つ以上のコーディングされたスライスNAL(ネットワーク抽象化レイヤ)ユニットを含み、nuh_layer_idはNALユニットヘッダ識別子を規定する、解決策8に記載の方法。
14.前記規則は、出力サブビットストリームは、レイヤ識別子LayerIdInOls[targetOlsIdx][i]に等しいNAL(ネットワーク抽象化レイヤ)ユニットヘッダ識別子nuh_layer_idおよび、0からNumLayersInOls[targetOlsIdx]-1の範囲の各iに対するSubpicIdVal[subpicIdxTarget[i]に等しいサブピクチャ識別子sh_subpic_idを有する少なくとも1つのVCL(映像コーディングレイヤ)NAL(ネットワーク抽象化レイヤ)を含み、ここでNumLayerInOls[i]はi番目のOLSのレイヤの数を規定し、iは整数であることを規定する、解決策8に記載の方法。
15.映像処理方法(例えば、図14Bに示す方法1410)は、規則に従って、映像とこの映像のビットストリームとの間で変換を行うことを含み、このビットストリームは、複数のサブピクチャを含むピクチャを含む第1のレイヤと、それぞれが単一のサブピクチャを含むピクチャを含む第2のレイヤとを含み、この規則は、抽出時に、予め定義されたフォーマットに準拠した出力ビットストリームとなる第1のレイヤおよび第2のレイヤのサブピクチャの組み合わせを規定する。
16.前記規則をサブビットストリーム抽出に適用して、適合ビットストリームである出力サブビットストリームを提供し、かつ前記サブビットストリーム抽出処理への入力は、i)ビットストリーム、ii)デコードされるべきターゲットOLSのOLSインデックスを識別するターゲット出力レイヤセット(OLS)インデックス(targetOlsIdx)、およびii)ターゲットの最高時間識別子(TemporalId)の値(tIdTarget)を含む、解決策15に記載の方法。
17.前記規則は、前記ターゲット出力レイヤセット(OLS)インデックス(targetOlsIdx)が、映像パラメータセットによって特定されるOLSのリストへのインデックスに等しいことを特定する、解決策16に記載の方法。
18.前記規則は、ターゲットの最高時間識別子(TemporalId)の値(tIdTarget)が、映像パラメータセットによって規定されるレイヤに存在することが許可される時間的サブレイヤの0から最大数までの範囲内の任意の値に等しいことを規定する、解決策16に記載の方法。
19.前記時間サブレイヤの最大数は、映像パラメータセットに含まれる構文要素によって示される、解決策18に記載の方法。
20.前記構文要素は、vps_max_sublayers_minus1である、解決策19に記載の方法。
21.前記規則は、0からNumLayersInOls[targetOLsIdx]-1までのiのOLSのリストsubpicIdxTarget[i]の値が、0からレイヤ内の各ピクチャのサブピクチャの数までの範囲内の値に等しいことを規定し、NumLayerInOls[i]がi番目のOLSのレイヤ数を規定し、サブピクチャの数は、LayerIdInOls[targetOLsIdx][i]に等しいNAL(network abstraction layer)ユニットヘッダ識別子(nuh_layer_id)に関連付けられたレイヤが参照するシーケンスパラメータセットに含まれる構文要素によって示され、LayerIdInOls[targetOLsIdx][i]は、ターゲットOLSxとi番目のOLSにおけるnuh_layerid値を規定し、iは整数値である、解決策17に記載の方法。
22.別の構文要素sps_subpic_treated_as_pic_flag[subpicIdxTarget[i]]は、1に等しく、レイヤ内の各コーディングされたピクチャのi番目のサブピクチャを、ループ内フィルタリング演算を除くデコーディング処理においてピクチャとして扱うことを規定する、解決策21に記載の方法。
23.前記規則は、レイヤにおける各ピクチャのサブピクチャ数を示す構文要素が0に等しい場合、subpicIdxTarget[i]の値が常に0に等しいことを規定する、解決策21に記載の方法。
24.前記規則は、任意の2つの異なる整数値mおよびnについて、nuh_layer_idがそれぞれLayerIdInOls[targetOLsIdx][m]およびLayerIdInOls[targetOLsIdx][n]と等しく、subpicIdxTarget[m]がsubpicIdxTarget[n]と等しい両レイヤについて、構文要素が0より大きいことを規定する、解決策21に記載の方法。
25.前記規則は、出力サブビットストリームが、リストLayerIdInOls[targetOlsIdx]における各nuh_layer_id値に等しいnuh_layer_idを有する少なくとも1つのVCL(映像コーディングレイヤ)NAL(ネットワーク抽象化レイヤ)ユニットを含むことを規定し、ここで、nuh_layer_idはNALユニットヘッダ識別子、LayerIdInOls[targetOlsIdx]はOLS内のnuh_layer_id値をtargetOLsIdxで規定する、解決策16に記載の方法。
26.前記出力サブビットストリームは、TemporalIdがtIdTargetに等しい、少なくとも1つのVCL(映像コーディングレイヤ)NAL(ネットワーク抽象化レイヤ)ユニットを含む、解決策16に記載の方法。
27.前記適合ビットストリームは、nuh_layer_idが0に等しいコーディングスライスNAL(ネットワーク抽象化レイヤ)ユニットを含む必要なく、TemporalIdが0に等しい1つ以上のコーディングされたスライスNAL(ネットワーク抽象化レイヤ)ユニットを含み、nuh_layer_idはNALユニットヘッダ識別子を規定する、解決策16に記載の方法。
28.前記規則は、出力サブビットストリームは、レイヤ識別子LayerIdInOls[targetOlsIdx][i]に等しいNAL(ネットワーク抽象化レイヤ)ユニットヘッダ識別子nuh_layer_idおよび、0からNumLayersInOls[targetOlsIdx]-1の範囲の各iに対するSubpicIdVal[subpicIdxTarget[i]に等しいサブピクチャ識別子sh_subpic_idを有する少なくとも1つのVCL(映像コーディングレイヤ)NAL(ネットワーク抽象化レイヤ)を含み、ここでNumLayerInOls[i]はi番目のOLSのレイヤの数を規定し、iは整数であることを規定する、解決策16に記載の方法。
29.映像処理方法(例えば、図14Cに示す方法1420)は、映像とこの映像のビットストリームとの間で変換を行うことを含み、この規則は、複数のサブピクチャを含む1つ以上のレイヤおよび/または単一のサブピクチャを有する1つ以上のレイヤを有する出力レイヤセットが、スケーラブルネスティング補足強化情報(SEI)メッセージにおけるサブピクチャ識別子のリストによって示されるかどうか、またはどのように示されるかを規定する。
30.前記規則は、sn_ols_flagおよびsn_subpic_flagが共に1に等しい場合に、サブピクチャ識別子のリストが、複数のサブピクチャをそれぞれ含むピクチャにおけるサブピクチャのサブピクチャ識別子を規定し、1に等しいsn_ols_flagは、スケーラブルネスティングSEIメッセージが特定のOLSに適用されることを規定し、1に等しいsn_subpic_flagは、規定されたOLSまたはレイヤに適用されるスケーラブルネスト型SEIメッセージを規定されたOLSまたはレイヤの特定のサブピクチャにのみ適用することを規定することにより、スケーラブルネスティングSEIメッセージは、OLSまたはレイヤのサブピクチャの識別子を規定する、解決策29に記載の方法。
31.変換は、映像をビットストリームにエンコーディングすることを含む、解決策1~30のいずれかに記載の方法。
32.変換は、ビットストリームから映像をデコーディングすることを含む、解決策1~30のいずれかに記載の方法。
33.変換は、映像からビットストリームを生成することを含み、方法は、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、解決策1~30のいずれかに記載の方法。
34.解決策1~33のいずれか1つ以上に記載の方法を実装するように構成されたプロセッサを備える映像処理装置。
35. 解決策1~33のいずれか1つに記載の方法と、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、映像のビットストリームを記憶する方法。
36.実行されると、解決策1~33のいずれか1つ以上に記載の方法をプロセッサに実装させるプログラムコードを記憶したコンピュータ可読媒体。
37.上述した方法のいずれかに従って生成されたビットストリームを記憶する、コンピュータ可読媒体。
38.解決策1~33の1つ以上に記載の方法を実装するように構成された、ビットストリーム表現を記憶するための映像処理装置。
第4の解決策のセットは、前章(例えば、項目3、8、および9)で論じた技術の例示的な実施形態を示す。
1.映像処理方法(例えば、図15Aに示す方法1500)は、規則に従って、映像レイヤに1つ以上の映像ピクチャを含む映像とこの映像のビットストリームとの間で変換を行うことを含み、この規則は、サブビットストリーム抽出処理において、サブビットストリーム抽出の間に削除されるパラメータセットを置き換えるために用いられる外部手段の利用可能性に関係なく、(i)映像コーディングレイヤ(VCL)ネットワーク抽象化レイヤ(NAL)ユニット、(ii)VCL NALユニットに関連付けられたフィラーデータNALユニット、および(iii)VCL NALユニットと関連付けられたフィラーペイロード補足強化情報(SEI)メッセージの削除が実行されることを規定する。
2.前記規則は、0からNumLayersInOls[targeTOlsIdx]-1の範囲内のiの各値について、サブビットストリーム抽出処理の出力であるサブビットストリームから、LayerIdInOls[i]およびsh_subpic_idがSubpicIdX[i]に等しいすべての映像コーディングレイヤ(VCL)ユニットと、それに関連するフィラーデータNALユニットと、フィラーペイロードSEIメッセージを含むSEINALユニットとを規定し、ここで、nuh_layer_idはNALユニットヘッダ識別子であり、LayerIdInOls[targetOlsIdx]は、ターゲット出力レイヤセットインデックスであるtargetOLsIdxをもって出力レイヤセット(OLS)内のnuh_layer_id値を規定し、sh_subpic_idはスライスを含むサブピクチャのサブピクチャ識別子を規定し、subpicIdxTarget[i]はiのターゲットサブピクチャインデックス値を示し、SubpicIdVal[subpicIdxTarget[i]]はsubpicIdxTarget[i]の変数、iは整数とする、解決策1の方法。
3.映像処理方法(例えば、図15Bに示す方法1510)は、規則に従って、1つ以上のサブピクチャを含む1つ以上の映像ピクチャを含む1つ以上のレイヤを含む映像と、この映像のビットストリームとの間で変換を行うことを含み、この規則は、参照ピクチャを、サブピクチャレイアウトと異なるサブピクチャレイアウトに従って分割する場合、サブピクチャレイアウトを用いてサブピクチャへ分割される現在のピクチャの同一位置に配置されるピクチャとして使用することを禁止する。
4.現在のピクチャと参照ピクチャは異なるレイヤにある、解決策3に記載の方法。
5.映像処理方法(例えば、図15Cに示す方法1520)は、規則に従って、1つ以上のサブピクチャを含む1つ以上の映像ピクチャを含む1つ以上のレイヤを含む映像と、この映像のビットストリームとの間で変換を行うことを含み、この規則は、コーディングツールが現在のピクチャの参照ピクチャのサブピクチャレイアウトとは異なるサブピクチャレイアウトに依存する場合、サブピクチャレイアウトを使用してサブピクチャに分割される現在のピクチャの変換中に、コーディングツールを無効化することを規定する。
6.現在のピクチャと参照ピクチャは異なるレイヤにある、解決策5に記載の方法。
7.前記コーディングツールは、オプティカルフロー計算を使用して1つ以上の初期予測を改良する双方向オプティカルフロー(BDOF)である、解決策5に記載の方法。
8.前記コーディングツールは、予測ブロックを使用することによって動き情報を改良するデコーダ側動きベクトル改良(DMVR)である、解決策5に記載の方法。
9.前記コーディングツールは、オプティカルフロー計算に基づいて1つ以上の初期予測を改良するオプティカルフローによる予測改良(PROF)である、解決策5に記載の方法。
10.変換は、映像をビットストリームにエンコーディングすることを含む、解決策1~9のいずれかに記載の方法。
11.変換は、ビットストリームから映像をデコーディングすることを含む、解決策1~9のいずれかに記載の方法。
12.変換は、映像からビットストリームを生成することを含み、方法は、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、解決策1~9のいずれかに記載の方法。
13.解決策1~12のいずれか1つ以上に記載の方法を実装するように構成されたプロセッサを備える映像処理装置。
14.解決策1~12のいずれか1つに記載の方法と、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、映像のビットストリームを記憶する方法。
15.実行されると、解決策1~12のいずれか1つ以上に記載の方法をプロセッサに実装させるプログラムコードを記憶したコンピュータ可読媒体。
16.上述した方法のいずれかに従って生成されたビットストリームを記憶する、コンピュータ可読媒体。
17.解決策1~12の1つ以上に記載の方法を実装するように構成された、ビットストリーム表現を記憶するための映像処理装置。
第5の解決策のセットは、前章(例えば、項目4)で論じた技術の例示的な実施形態を示す。
1.映像処理方法(例えば、図16に示す方法1600)は、規則に従って、映像レイヤ内の1つ以上の映像ピクチャを含む映像とこの映像のビットストリームとの間で変換を行うことを含み、この規則は、特定のペイロードタイプを有するSEIメッセージを含む補足強化情報(SEI)ネットワーク抽象化レイヤ(NAL)ユニットが、この特定のペイロードタイプと異なるペイロードタイプを有する別のSEIメッセージを含まないことを規定する。
2.前記規則は、SEIメッセージを含むSEI NALユニットの削除として前記SEIメッセージの削除を規定する、解決策1に記載の方法。
3.前記特定のペイロードタイプを有する前記SEIメッセージは、フィラーペイロードSEIメッセージに対応する、解決策1または2に記載の方法。
4.変換は、映像をビットストリームにエンコーディングすることを含む、解決策1~3のいずれかに記載の方法。
5.変換は、ビットストリームから映像をデコーディングすることを含む、解決策1~3のいずれかに記載の方法。
6.変換は、映像からビットストリームを生成することを含み、方法は、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、解決策1~3のいずれかに記載の方法。
7.解決策1~6のいずれか1つ以上に記載の方法を実装するように構成された処理装置を備える映像処理装置。
8.解決策1~6のいずれか1つに記載の方法と、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、映像のビットストリームを記憶する方法。
9.実行されると、解決策1~6いずれか1つ以上に記載の方法をプロセッサに実装させるプログラムコードを記憶したコンピュータ可読媒体。
10.上述した方法のいずれかに従って生成されたビットストリームを記憶する、コンピュータ可読媒体。
11.解決策1~6の1つ以上に記載の方法を実装するように構成された、ビットストリーム表現を記憶するための映像処理装置。
本明細書に記載の解決策において、エンコーダは、フォーマット規則に従ってコーディングされた表現を生成することで、フォーマット規則に準拠することができる。本明細書に記載の解決策において、デコーダは、フォーマット規則を使用して、フォーマット規則に従って、構文要素の有無の知識でコーディングされた表現内の構文要素を解析し、デコードされた映像を生成してよい。
本明細書では、「映像処理」という用語は、映像エンコーディング、映像デコーディング、映像圧縮、または映像展開を指してよい。例えば、映像圧縮アルゴリズムは、映像の画素表現から対応するビットストリーム表現への変換中、またはその逆の変換中に適用されてもよい。現在の映像ブロックのビットストリーム表現は、例えば、構文によって規定されるように、ビットストリーム内の同じ場所または異なる場所に拡散されるビットに対応していてもよい。例えば、1つのマクロブロックは、変換およびコーディングされた誤り残差値の観点から、かつビットストリームにおけるヘッダおよび他のフィールドにおけるビットを使用してエンコードされてもよい。さらに、変換中、デコーダは、上記解決策で説明されているように、判定に基づいて、いくつかのフィールドが存在しても存在しなくてもよいという知識を持って、ビットストリームを構文解析してもよい。同様に、エンコーダは、特定の構文フィールドが含まれるべきであるか、または含まれないべきであるかを判定し、構文フィールドをコーディングされた表現に含めるか、またはコーディング表現から除外することによって、それに応じてコーディングされた表現を生成してもよい。
開示される技術のいくつかの実施形態は、映像処理ツールまたはモードを有効化するように決定または判定することを含む。一例において、映像処理ツールまたはモードが有効化される場合、エンコーダは、1つの映像ブロックを処理する際にツールまたはモードを使用するまたは実装するが、ツールまたはモードの使用に基づいて、結果として得られるビットストリームを必ずしも修正しなくてもよい。すなわち、映像のブロックから映像のビットストリーム表現への変換は、決定または判定に基づいて映像処理ツールまたはモードが有効化される場合に、映像処理ツールまたはモードを使用する。別の例において、映像処理ツールまたはモードが有効化される場合、デコーダは、ビットストリームが映像処理ツールまたはモードに基づいて修正されたことを知って、ビットストリームを処理する。すなわち、決定または判定に基づいて有効化された映像処理ツールまたはモードを使用して、映像のビットストリーム表現から映像のブロックへの変換を行う。
開示される技術のいくつかの実施形態は、映像処理ツールまたはモードを無効化するように決定または判定することを含む。一例において、映像処理ツールまたはモードが無効にされている場合、エンコーダは、映像のブロックを映像のビットストリーム表現に変換する際に、このツールまたはモードを使用しない。別の例において、映像処理ツールまたはモードが無効にされている場合、デコーダは、決定または判定に基づいて無効化された映像処理ツールまたはモードを使用してビットストリームが修正されていないことを知って、ビットストリームを処理する。
本明細書に記載された開示された、およびその他の解決策、実施例、実施形態、モジュール、および機能動作の実装形態は、本明細書に開示された構造およびその構造的等価物を含め、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、若しくはハードウェアで実施されてもよく、またはそれらの1または複数の組み合わせで実施してもよい。開示された、およびその他の実施形態は、1または複数のコンピュータプログラム製品、すなわち、データ処理装置によって実装されるため、またはデータ処理装置の動作を制御するために、コンピュータ可読媒体上にエンコードされたコンピュータプログラム命令の1または複数のモジュールとして実施することができる。このコンピュータ可読媒体は、機械可読記憶デバイス、機械可読記憶基板、メモリデバイス、機械可読伝播信号をもたらす物質の組成物、またはこれらの1または複数の組み合わせであってもよい。「データ処理装置」という用語は、例えば、プログラマブルプロセッサ、コンピュータ、または複数のプロセッサ若しくはコンピュータを含む、データを処理するためのすべての装置、デバイス、および機械を含む。この装置は、ハードウェアの他に、当該コンピュータプログラムの実行環境を作るコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはこれらの1または複数の組み合わせを構成するコードを含むことができる。伝播信号は、人工的に生成した信号、例えば、機械で生成した電気、光、または電磁信号であり、適切な受信装置に送信するための情報をエンコードするために生成される。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとも呼ばれる)は、コンパイルされた言語または解釈された言語を含む任意の形式のプログラミング言語で記述することができ、また、それは、スタンドアロンプログラムとして、またはコンピューティング環境で使用するのに適したモジュール、コンポーネント、サブルーチン、または他のユニットとして含む任意の形式で展開することができる。コンピュータプログラムは、必ずしもファイルシステムにおけるファイルに対応するとは限らない。プログラムは、他のプログラムまたはデータを保持するファイルの一部(例えば、マークアップ言語文書に格納された1つ以上のスクリプト)に記録されていてもよいし、当該プログラム専用の単一のファイルに記憶されていてもよいし、複数の調整ファイル(例えば、1または複数のモジュール、サブプログラム、またはコードの一部を格納するファイル)に記憶されていてもよい。コンピュータプログラムを、1つのコンピュータで実行するように展開することができ、あるいは、1つのサイトに位置する、または複数のサイトにわたって分散され通信ネットワークによって相互接続される複数のコンピュータで実行するように展開することができる。
本明細書に記載された処理およびロジックフローは、入力データ上で動作し、出力を生成することによって機能を行うための1つ以上のコンピュータプログラムを実行する1つ以上のプログラマブルプロセッサによって行うことができる。処理およびロジックフローはまた、特定用途のロジック回路、例えば、FPGA(Field Programmable Gate Array)またはASIC(Application Specific Integrated Circuit)によって行うことができ、装置はまた、特別目的のロジック回路として実装することができる。
コンピュータプログラムの実行に適したプロセッサは、例えば、汎用および専用マイクロプロセッサの両方、並びに任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサを含む。一般的に、プロセッサは、リードオンリーメモリまたはランダムアクセスメモリまたはその両方から命令およびデータを受信する。コンピュータの本質的な要素は、命令を実行するためのプロセッサと、命令およびデータを記憶するための1または複数のメモリデバイスとである。一般的に、コンピュータは、データを記憶するための1または複数の大容量記憶デバイス、例えば、磁気、光磁気ディスク、または光ディスクを含んでもよく、またはこれらの大容量記憶デバイスからデータを受信するか、またはこれらにデータを転送するように動作可能に結合されてもよい。しかしながら、コンピュータは、このようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体は、あらゆる形式の不揮発性メモリ、媒体、およびメモリデバイスを含み、例えば、EPROM、EEPROM、フラッシュ記憶装置、磁気ディスク、例えば内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、およびCD-ROMおよびDVD-ROMディスク等の半導体記憶装置を含む。プロセッサおよびメモリは、特定用途のロジック回路によって補完されてもよく、または特定用途のロジック回路に組み込まれてもよい。
本特許明細書は多くの特徴を含むが、これらは、任意の主題の範囲または特許請求の範囲を限定するものと解釈されるべきではなく、むしろ、特定の技術の特定の実施形態に特有であり得る特徴の説明と解釈されるべきである。本特許文献において別個の実施形態のコンテキストで説明されている特定の特徴は、1つの例において組み合わせて実装してもよい。逆に、1つの例のコンテキストで説明された様々な特徴は、複数の実施形態において別個にまたは任意の適切なサブコンビネーションで実装してもよい。さらに、特徴は、特定の組み合わせで作用するものとして上記に記載され、最初にそのように主張されていてもよいが、主張された組み合わせからの1または複数の特徴は、場合によっては、組み合わせから抜粋されることができ、主張された組み合わせは、サブコンビネーションまたはサブコンビネーションのバリエーションに向けられてもよい。
同様に、動作は図面において特定の順番で示されているが、これは、所望の結果を達成するために、このような動作が示された特定の順番でまたは連続した順番で行われること、または示された全ての動作が行われることを必要とするものと理解されるべきではない。また、本特許明細書に記載されている実施形態における様々なシステムの構成要素の分離は、全ての実施形態においてこのような分離を必要とするものと理解されるべきではない。
いくつかの実装形態および実施例のみが記載されており、この特許文献に記載され図示されているコンテンツに基づいて、他の実施形態、拡張および変形が可能である。
関連出願の相互参照
本願は、2021年5月21日出願の国際特許出願第PCT/CN2021/095182号の国内段階であり、2020年5月22日出願の国際特許出願第PCT/CN2020/091696号の優先権および利益を主張する。法に基づくすべての目的のために、上記出願の開示全体は、本明細書の開示の一部として参照により援用される。

Claims (38)

  1. 規則に従って、1つ以上のサブピクチャを含む1つ以上の映像ピクチャを含む1つ以上のレイヤを含む映像と前記映像のビットストリームとの間で変換を行うことを含み、
    前記規則は、サブビットストリーム抽出処理中にビットストリームから抽出されるべきネットワーク抽象化レイヤ(NAL)ユニットを定義してサブビットストリームを出力し、
    前記規則は、前記サブビットストリーム抽出処理への1つ以上の入力をさらに規定し、かつ/または、前記ビットストリームの異なるレイヤのサブピクチャのどの組み合わせを使用するかを規定し、これにより前記サブビットストリーム抽出処理の出力が予め定義されたフォーマットに準拠する、映像処理方法。
  2. 前記規則は、前記サブビットストリーム抽出処理への前記1つ以上の入力が、デコードされるべきターゲットOLSのOLSインデックスを識別し、かつ、映像パラメータセットによって指定されたOLSのリストへのインデックスに等しい、ターゲット出力レイヤセット(OLS)インデックス(targetOlsIdx)を含むことを規定する、請求項1に記載の方法。
  3. 前記規則は、前記サブビットストリーム抽出処理への前記1つ以上の入力が、ターゲットの最高時間識別子の値(tIdTarget)を含むことを規定する、請求項1に記載の方法。
  4. 前記ターゲットの最高時間識別子の値は、0から映像パラメータセットによって規定されたレイヤに存在することが許可される時間的サブレイヤの最大数の範囲内にある、請求項3に記載の方法。
  5. 前記時間的サブレイヤの前記最大数は、映像パラメータセットに含まれる構文要素によって示される、請求項4に記載の方法。
  6. 前記構文要素は、vps_max_sublayers_minus1である、請求項5に記載の方法。
  7. 前記規則は、前記サブビットストリーム抽出処理への前記1つ以上の入力が、ターゲットOLSに存在するサブピクチャインデックスに等しいターゲットサブピクチャインデックス値(subpicIdxtarget)を含むことを規定する、請求項1に記載の方法。
  8. 前記サブビットストリーム抽出処理への前記1つ以上の入力は、ターゲットサブピクチャインデックス値のリスト、0からNumLayersInOls[targeTOLsIdx]-1までのiについてのsubpicIdxTarget[i]、を含むことを前記規則が規定し、NumLayerInOls[i]はi番目のOLSのレイヤ数を規定し、targetOLsIdxはターゲット出力レイヤセット(OLS)インデックスを示す、請求項1に記載の方法。
  9. 前記規則は、targetOLsIdx番目のOLSにおけるすべてのレイヤが同じ空間解像度を有し、同じサブピクチャレイアウトを有し、すべてのサブピクチャは、コーディングされたレイヤ映像シーケンスにおける各コーディングされたピクチャに対応するサブピクチャを、ループ内フィルタリング操作を除くデコーディング処理においてピクチャとして扱うことを規定する構文要素を有する、請求項8に記載の方法。
  10. iのすべての値に対するsubpicIdxTarget[i]の値が同一であり、0からsps_num_subpics_minus1の範囲内の特定の値に等しく、sps_num_subpics_minus1+1は、コーディングされたレイヤ映像シーケンスにおける各ピクチャのサブピクチャの数を規定する、請求項8に記載の方法。
  11. 前記規則は、前記出力サブビットストリームが、LayerIdInOls[targetOlsIdx]のリストにおける各nuh_layer_id値に等しいnuh_layer_idを有する少なくとも1つのVCL(映像コーディングレイヤ)NAL(ネットワーク抽象化レイヤ)ユニットを含むことを規定し、nuh_layer_idは、NALユニットヘッダ識別子であり、LayerIdInOls[targetOlsIdx]がOLSの前記nuh_layer_id値を前記targetOLsIdxで規定する、請求項8に記載の方法。
  12. 前記規則は、前記出力サブビットストリームが、tIdTargetに等しいTemporalIdを有する少なくとも1つのVCL(映像コーディングレイヤ)NAL(ネットワーク抽象化レイヤ)ユニットを含むことを規定し、TemporalIdは、ターゲットの最高時間識別子を示し、tIdTargetは、前記サブビットストリーム抽出処理への1つ以上の入力として提供されるTemporalIdの値である、請求項8に記載の方法。
  13. 前記ビットストリームは、nuh_layer_idが0に等しいコーディングされたスライスNAL(ネットワーク抽象化レイヤ)ユニットを含む必要なく、TemporalIdが0に等しい1つ以上のコーディングされたスライスNAL(ネットワーク抽象化レイヤ)ユニットを含み、nuh_layer_idはNALユニットヘッダ識別子を規定する、請求項8に記載の方法。
  14. 前記規則は、前記出力サブビットストリームが、レイヤ識別子LayerIdInOls[targetOlsIdx][i]に等しいNAL(ネットワーク抽象化レイヤ)ユニットヘッダ識別子nuh_layer_idおよび、0からNumLayersInOls[targetOlsIdx]-1の範囲の各iに対するSubpicIdVal[subpicIdxTarget[i]に等しいサブピクチャ識別子sh_subpic_idを有する少なくとも1つのVCL(映像コーディングレイヤ)NAL(ネットワーク抽象化レイヤ)を含み、NumLayerInOls[i]はi番目のOLSのレイヤの数を規定し、iは整数であることを規定する、請求項8に記載の方法。
  15. 規則に従って、映像と前記映像のビットストリームとの間で変換を行うことを含み、
    前記ビットストリームは、複数のサブピクチャを含むピクチャを含む第1のレイヤと、それぞれが単一のサブピクチャを含む第2のレイヤとを含み、
    前記規則は、抽出の際に、予め定義されたフォーマットに準拠した出力ビットストリームとなる第1のレイヤおよび第2のレイヤのサブピクチャの組み合わせを規定する、映像処理方法。
  16. 前記規則をサブビットストリーム抽出に適用して、適合ビットストリームである出力サブビットストリームを提供し、前記サブビットストリーム抽出処理への入力は、i)前記ビットストリーム、ii)デコードされるべきターゲットOLSのOLSインデックスを識別するターゲット出力レイヤセット(OLS)インデックス(targetOlsIdx)、および、ii)ターゲットの最高時間識別子(TemporalId)の値(tIdTarget)を含む、請求項15に記載の方法。
  17. 前記規則は、前記ターゲット出力レイヤセット(OLS)インデックス(targetOlsIdx)が、映像パラメータセットによって規定されるOLSのリストのインデックスに等しいことを規定する、請求項16に記載の方法。
  18. 前記規則は、前記ターゲットの最高時間識別子(TemporalId)の値(tIdTarget)が、0から、映像パラメータセットによって規定されるレイヤに存在することが許可される時間的サブレイヤの最大数までの範囲内における任意の値に等しいことを規定する、請求項16に記載の方法。
  19. 前記時間的サブレイヤの前記最大数は、映像パラメータセットに含まれる構文要素によって示される、請求項18に記載の方法。
  20. 前記構文要素は、vps_max_sublayers_minus1である、請求項19に記載の方法。
  21. 前記規則は、0からNumLayersInOls[targetOLsIdx]-1までのiのOLSの前記リストsubpicIdxTarget[i]の値が、0からレイヤ内の各ピクチャのサブピクチャの数までの範囲内の値に等しいことを規定し、NumLayerInOls[i]がi番目のOLSのレイヤ数を規定し、前記サブピクチャの数は、LayerIdInOls[targetOLsIdx][i]に等しいNAL(networkabstractionlayer)ユニットヘッダ識別子(nuh_layer_id)に関連付けられた前記レイヤが参照するシーケンスパラメータセットに含まれる構文要素によって示され、LayerIdInOls[targetOLsIdx][i]は、i番目のOLSにおける前記nuh_layerid値を前記targetOLSxで規定し、iは整数値である、請求項17に記載の方法。
  22. 別の構文要素sps_subpic_treated_as_pic_flag[subpicIdxTarget[i]]は、1に等しく、前記レイヤ内の各コーディングされたピクチャのi番目のサブピクチャを、ループ内フィルタリング演算を除くデコーディング処理においてピクチャとして扱うことを規定する、請求項21に記載の方法。
  23. 前記規則は、前記レイヤにおける各ピクチャのサブピクチャ数を示す構文要素が0に等しい場合、前記subpicIdxTarget[i]値が常に0に等しいことを規定する、請求項21に記載の方法。
  24. 前記規則は、任意の2つの異なる整数値mおよびnについて、nuh_layer_idがそれぞれLayerIdInOls[targetOLsIdx][m]およびLayerIdInOls[targetOLsIdx][n]と等しく、subpicIdxTarget[m]がsubpicIdxTarget[n]と等しい両レイヤについて、前記構文要素が0より大きいことを規定する、請求項21に記載の方法。
  25. 前記規則は、前記出力サブビットストリームが、前記リストLayerIdInOls[targetOlsIdx]における各nuh_layer_id値に等しいnuh_layer_idを有する少なくとも1つのVCL(映像コーディングレイヤ)NAL(ネットワーク抽象レイヤ)ユニットを含むことを規定し、nuh_layer_idはNALユニットヘッダ識別子であり、LayerIdInOls[targetOlsIdx]はOLS内の前記nuh_layer_idを前記targetOLsIdxで規定する、請求項16に記載の方法。
  26. 前記出力サブビットストリームは、tIdTargetに等しいTemporalIdを有する少なくとも1つのVCL(映像コーディングレイヤ)NAL(ネットワーク抽象化レイヤ)ユニットを含む、請求項16に記載の方法。
  27. 前記適合ビットストリームは、nuh_layer_idが0に等しいコーディングされたスライスNAL(ネットワーク抽象化レイヤ)ユニットを含む必要なく、TemporalIdが0に等しい1つ以上のコーディングされたスライスNAL(ネットワーク抽象化レイヤ)ユニットを含み、ここで、nuh_layer_idはNALユニットヘッダ識別子を指定する、請求項16に記載の方法。
  28. 前記規則は、前記出力サブビットストリームは、レイヤ識別子LayerIdInOls[targetOlsIdx][i]に等しいNAL(ネットワーク抽象化レイヤ)ユニットヘッダ識別子nuh_layer_idおよび、0からNumLayersInOls[targetOlsIdx]-1の範囲内の各iに対するSubpicIdVal[subpicIdxTarget[i]に等しいサブピクチャ識別子sh_subpic_idを有する少なくとも1つのVCL(映像コーディングレイヤ)NAL(ネットワーク抽象化レイヤ)を含み、NumLayerInOls[i]はi番目のOLSのレイヤの数を規定し、iは整数であることを規定する、請求項16に記載の方法。
  29. 映像と前記映像のビットストリームとの間で変換を行うことを含み、
    規則は、複数のサブピクチャを含む1つ以上のレイヤおよび/または単一のサブピクチャを有する1つ以上のレイヤを有する出力レイヤセットが、スケーラブルネスティング補足強化情報(SEI)メッセージにおけるサブピクチャ識別子のリストによって示されるかどうか、またはどのように示されるかを規定する、映像処理方法。
  30. 前記規則は、sn_ols_flagおよびsn_subpic_flagが共に1に等しい場合に、前記サブピクチャ識別子のリストが、複数のサブピクチャをそれぞれ含むピクチャにおけるサブピクチャのサブピクチャ識別子を規定し、1に等しいsn_ols_flagは、スケーラブルネスティングSEIメッセージが特定のOLSに適用されることを規定し、1に等しいsn_subpic_flagは、規定されたOLSまたはレイヤに適用される前記スケーラブルネスト型SEIメッセージを前記規定されたOLSまたは前記レイヤの特定のサブピクチャにのみ適用することを規定する、請求項29に記載の方法。
  31. 前記変換は、前記映像を前記ビットストリームにエンコーディングすることを含む、請求項1~30のいずれか1項に記載の方法。
  32. 前記変換は、前記映像を前記ビットストリームからデコーディングすることを含む、請求項1~30のいずれか1項に記載の方法。
  33. 前記変換は、前記映像から前記ビットストリームを生成することを含み、前記方法は、前記ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、請求項1~30のいずれかに記載の方法。
  34. 請求項1~33のいずれか1項以上に記載の方法を実装するように構成されたプロセッサを備える映像処理装置。
  35. 請求項1~33のいずれか1項に記載の方法を含み、
    前記ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、
    映像のビットストリームを記憶する方法。
  36. 実行されると、プロセッサに、請求項1~33のいずれか1項以上に記載の方法を実装させるプログラムコードを格納するコンピュータ可読媒体。
  37. 上述した方法のいずれかに従って生成されたビットストリームを記憶する、コンピュータ可読媒体。
  38. ビットストリーム表現を記憶するための映像処理装置であって、
    請求項1~33のいずれか1つ以上に記載の方法を実装するように構成された、
    映像処理装置。
JP2022570208A 2020-05-22 2021-05-21 サブピクチャサブビットストリーム抽出の改良 Pending JP2023526374A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CNPCT/CN2020/091696 2020-05-22
CN2020091696 2020-05-22
PCT/CN2021/095182 WO2021233422A1 (en) 2020-05-22 2021-05-21 Subpicture sub-bitstream extraction improvements

Publications (1)

Publication Number Publication Date
JP2023526374A true JP2023526374A (ja) 2023-06-21

Family

ID=78707713

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2022570209A Pending JP2023526375A (ja) 2020-05-22 2021-05-21 サブピクチャサブビットストリーム抽出処理におけるスケーリングウィンドウ
JP2022570208A Pending JP2023526374A (ja) 2020-05-22 2021-05-21 サブピクチャサブビットストリーム抽出の改良

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2022570209A Pending JP2023526375A (ja) 2020-05-22 2021-05-21 サブピクチャサブビットストリーム抽出処理におけるスケーリングウィンドウ

Country Status (6)

Country Link
US (4) US20230106804A1 (ja)
EP (3) EP4144094A4 (ja)
JP (2) JP2023526375A (ja)
KR (3) KR20230015391A (ja)
CN (4) CN115715466A (ja)
WO (4) WO2021233421A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11988741B2 (en) * 2020-12-17 2024-05-21 Aptiv Technologies AG Vehicle routing based on availability of radar-localization objects
US11810459B1 (en) 2022-05-09 2023-11-07 Aptiv Technologies Limited Vehicle localization based on radar detections in garages
WO2024049269A1 (ko) * 2022-09-03 2024-03-07 엘지전자 주식회사 Hrd 파라미터를 시그널링하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 컴퓨터 판독 가능한 기록 매체

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2952673B2 (ja) * 1989-06-19 1999-09-27 株式会社日立メディコ 関心領域抽出方法及び切り出し方法
GB2382940A (en) * 2001-11-27 2003-06-11 Nokia Corp Encoding objects and background blocks
US7262818B2 (en) * 2004-01-02 2007-08-28 Trumpion Microelectronic Inc. Video system with de-motion-blur processing
EP3968642A1 (en) * 2007-04-12 2022-03-16 InterDigital VC Holdings, Inc. Methods and apparatus for video usability information (vui) for scalable video coding (svc)
CN105100822B (zh) * 2011-01-28 2018-05-11 华为技术有限公司 辅助视频补充信息承载方法、处理方法、装置与系统
RU2612577C2 (ru) * 2012-07-02 2017-03-09 Нокиа Текнолоджиз Ой Способ и устройство для кодирования видеоинформации
US9351005B2 (en) * 2012-09-24 2016-05-24 Qualcomm Incorporated Bitstream conformance test in video coding
US9479773B2 (en) 2012-09-24 2016-10-25 Qualcomm Incorporated Access unit independent coded picture buffer removal times in video coding
US9253483B2 (en) * 2012-09-25 2016-02-02 Google Technology Holdings LLC Signaling of scaling list
US9479779B2 (en) * 2012-10-01 2016-10-25 Qualcomm Incorporated Sub-bitstream extraction for multiview, three-dimensional (3D) and scalable media bitstreams
US9521393B2 (en) * 2013-01-07 2016-12-13 Qualcomm Incorporated Non-nested SEI messages in video coding
CA2908888C (en) * 2013-04-07 2019-04-02 Sharp Kabushiki Kaisha Signaling change in output layer sets
MY178305A (en) * 2013-10-11 2020-10-07 Vid Scale Inc High level syntax for hevc extensions
US10187662B2 (en) * 2013-10-13 2019-01-22 Sharp Kabushiki Kaisha Signaling parameters in video parameter set extension and decoder picture buffer operation
WO2015102381A1 (en) * 2014-01-03 2015-07-09 Lg Electronics Inc. Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method for transmitting broadcast signals and method for receiving broadcast signals
JP6465863B2 (ja) 2014-03-14 2019-02-06 シャープ株式会社 画像復号装置、画像復号方法及び記録媒体
WO2015137237A1 (ja) * 2014-03-14 2015-09-17 シャープ株式会社 画像復号装置
US10178397B2 (en) * 2014-03-24 2019-01-08 Qualcomm Incorporated Generic use of HEVC SEI messages for multi-layer codecs
US9918091B2 (en) * 2014-06-20 2018-03-13 Qualcomm Incorporated Systems and methods for assigning a minimum value to a syntax structure in a parameter set
GB2538997A (en) 2015-06-03 2016-12-07 Nokia Technologies Oy A method, an apparatus, a computer program for video coding
US10244249B2 (en) * 2015-09-21 2019-03-26 Qualcomm Incorporated Fixed point implementation of range adjustment of components in video coding
WO2017156669A1 (en) * 2016-03-14 2017-09-21 Mediatek Singapore Pte. Ltd. Methods for motion vector storage in video coding
FI20165256A (fi) 2016-03-24 2017-09-25 Nokia Technologies Oy Laitteisto, menetelmä ja tietokoneohjelma videokoodaukseen ja -dekoodaukseen
US11228770B2 (en) * 2016-05-16 2022-01-18 Qualcomm Incorporated Loop sample processing for high dynamic range and wide color gamut video coding
US9872062B1 (en) * 2017-02-22 2018-01-16 Wyse Technology L.L.C. Enforcing synchronization by embedding audio within video frame data
CN110035331B (zh) * 2018-01-12 2021-02-09 华为技术有限公司 一种媒体信息的处理方法及装置
KR102523750B1 (ko) * 2018-03-29 2023-04-20 프라운호퍼-게젤샤프트 추르 푀르데룽 데어 안제반텐 포르슝 에 파우 비디오 디코더, 비디오 인코더, 비디오 컨텐츠를 디코딩하기 위한 방법, 비디오 컨텐츠를 인코딩하기 위한 방법, 컴퓨터 프로그램 및 비디오 비트스트림
CN108965882B (zh) * 2018-06-12 2020-08-14 浙江大华技术股份有限公司 一种编解码方法及装置
US11653007B2 (en) * 2018-07-15 2023-05-16 V-Nova International Limited Low complexity enhancement video coding
AU2020234972A1 (en) 2019-03-11 2021-09-30 Vid Scale, Inc. Sub-picture bitstream extraction and reposition
US11533474B2 (en) * 2019-03-11 2022-12-20 Dolby Laboratories Licensing Corporation Video coding using reference picture resampling supporting region of interest
GB2619630B (en) * 2019-03-20 2024-04-10 V Nova Int Ltd Low complexity enhancement video coding
JP2022543627A (ja) * 2019-08-06 2022-10-13 ドルビー ラボラトリーズ ライセンシング コーポレイション 描画面サイズ拡張可能ビデオコーディング
US11317093B2 (en) * 2019-09-24 2022-04-26 Tencent America LLC Method for reference picture resampling with offset in video bitstream
CN117156146A (zh) * 2019-09-24 2023-12-01 华为技术有限公司 用于基于层的一致性测试的hrd参数
BR112022004862A2 (pt) 2019-09-24 2022-06-07 Huawei Tech Co Ltd Método implementado por um decodificador, mídia legível por computador não transitória e dispositivo de decodificação
WO2021123159A1 (en) 2019-12-20 2021-06-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Video data stream, video encoder, apparatus and methods for hrd timing fixes, and further additions for scalable and mergeable bitstreams
US11356681B2 (en) 2019-12-27 2022-06-07 Tencent America LLC Coded video sub-bitstream extraction
WO2021137589A1 (ko) 2019-12-30 2021-07-08 엘지전자 주식회사 영상 디코딩 방법 및 그 장치
WO2021142365A2 (en) 2020-01-09 2021-07-15 Bytedance Inc. Restrictions on gradual decoding refresh (gdr) unit
US11528493B2 (en) * 2020-05-06 2022-12-13 Alibaba Group Holding Limited Method and system for video transcoding based on spatial or temporal importance
US11477471B2 (en) * 2020-05-20 2022-10-18 Tencent America LLC Techniques for signaling combination of reference picture resampling and spatial scalability
US11589052B2 (en) 2020-06-10 2023-02-21 Tencent America LLC Techniques for bitstream extraction for subpicture in coded video stream
GB2599171A (en) 2020-09-29 2022-03-30 Canon Kk Method and apparatus for encapsulating video data into a file
US20220201308A1 (en) 2020-12-18 2022-06-23 Lg Electronics Inc. Media file processing method and device therefor

Also Published As

Publication number Publication date
US20230099966A1 (en) 2023-03-30
KR20230015391A (ko) 2023-01-31
EP4144090A1 (en) 2023-03-08
KR20230013264A (ko) 2023-01-26
WO2021233421A1 (en) 2021-11-25
EP4144094A4 (en) 2023-06-21
EP4144094A1 (en) 2023-03-08
CN115918078A (zh) 2023-04-04
WO2021233424A1 (en) 2021-11-25
JP2023526373A (ja) 2023-06-21
CN115868167A (zh) 2023-03-28
US11778204B2 (en) 2023-10-03
WO2021233429A1 (en) 2021-11-25
US11968375B2 (en) 2024-04-23
EP4144090A4 (en) 2023-06-21
US20240073430A1 (en) 2024-02-29
US20230106804A1 (en) 2023-04-06
CN115715466A (zh) 2023-02-24
EP4140126A4 (en) 2023-06-21
CN115699729A (zh) 2023-02-03
WO2021233422A1 (en) 2021-11-25
JP2023526375A (ja) 2023-06-21
KR20230015390A (ko) 2023-01-31
EP4140126A1 (en) 2023-03-01
US20230080061A1 (en) 2023-03-16

Similar Documents

Publication Publication Date Title
US20240073430A1 (en) Subpicture Sub-Bitstream Extraction Improvements
US11825124B2 (en) Scaling window in video coding
JP7464742B2 (ja) 参照ピクチャリサンプリング
WO2021257529A1 (en) Decoded picture buffer management and subpictures in video coding
JP2023522115A (ja) 変換スキップ残差コーディング
JP2023529430A (ja) 映像ビットストリームにおけるサブレイヤ信号通知
JP7506185B2 (ja) サブビットストリーム抽出処理におけるコーディングされた映像の操作
JP7506184B2 (ja) 映像コーディングにおけるスケーリングウィンドウ
US11997294B2 (en) Subpicture sub-bitstream extraction process enhancements
JP2023529423A (ja) 映像コーディングにおけるサブピクチャレベル情報の信号通知
JP2023526807A (ja) サブレイヤ数制限

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221223

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240229

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240528