JP2023508880A - 画像セグメントの順序付け - Google Patents

画像セグメントの順序付け Download PDF

Info

Publication number
JP2023508880A
JP2023508880A JP2022537414A JP2022537414A JP2023508880A JP 2023508880 A JP2023508880 A JP 2023508880A JP 2022537414 A JP2022537414 A JP 2022537414A JP 2022537414 A JP2022537414 A JP 2022537414A JP 2023508880 A JP2023508880 A JP 2023508880A
Authority
JP
Japan
Prior art keywords
segment
bitstream
segments
current image
decoding
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
JP2022537414A
Other languages
English (en)
Inventor
ミトラ ダムガニアン,
リキャルド ショバーリ,
マルティン ペッテション,
Original Assignee
テレフオンアクチーボラゲット エルエム エリクソン(パブル)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by テレフオンアクチーボラゲット エルエム エリクソン(パブル) filed Critical テレフオンアクチーボラゲット エルエム エリクソン(パブル)
Publication of JP2023508880A publication Critical patent/JP2023508880A/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding 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/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Electrochromic Elements, Electrophoresis, Or Variable Reflection Or Absorption Elements (AREA)
  • Non-Silver Salt Photosensitive Materials And Non-Silver Salt Photography (AREA)

Abstract

ビットストリームから少なくとも1つの現在の画像をデコードするための方法とデコーダが提供される。インジケータ値は、複数の規則のうちの少なくとも1つの規則を指定するビットストリームからデコードされ、少なくとも1つの規則は、ビットストリームにコード化されたセグメントの順序付けに適用され、セグメントは、セグメントパーティションレイアウトのセグメントである。セグメントパーティションレイアウトを指定する構文要素のセットがビットストリームからデコードされる。構文要素のセットに基づくセグメントパーティションレイアウトが導出される。ビットストリーム内の少なくとも1つの現在の画像は、セグメントパーティションレイアウトを使用してデコードされ、セグメントの順序付けは、指定された少なくとも1つの規則に準拠している。エンコーダと対応する方法は、セグメントパーティションレイアウトを規定し、規則のセットから少なくとも1つの規則を選択し、セグメントパーティションレイアウトとインジケータ値とをビットストリームにエンコーディングする。【選択図】図10

Description

本開示は、一般に、ビデオのエンコーディングおよびデコーディングのための方法および装置に関する。
高効率ビデオコーディング(High Efficiency Video Coding:HEVC)は、ITU-T(International Telecommunication Union Telecommunication Standardization Sector)およびMPEG(Moving Pictures Expert Group)によって標準化されたブロックベースのビデオコーデックであり、時間的予測および空間的予測の両方を利用する。空間的予測は、現在の画像内からのイントラ(I)予測を使用して実現される。時間的予測は、以前にデコードされた参照画像からのブロックレベルでの一方向性(P)または双方向性(B)の予測を使用して実現される。エンコーダでは、元のピクセルデータと予測されたピクセルデータの差(残差と呼ばれる)が周波数領域に変換され、量子化されてから、エントロピーコード化された予測モードやモーションベクトルなどの必要な予測パラメータと一緒に送信される前に、エントロピーコード化される。デコーダは、エントロピーデコード、逆量子化、逆方向変換を実行して残差を取得し、残差をイントラ予測またはインター予測に追加して画像を再構築する。
MPEGおよびITU-Tは、Joint Video Exploratory Team(JVET)内でHEVCの後継に取り組んでいる。開発中のこのビデオコーデックの名前は、多用途ビデオコーディング(Versatile Video Coding:VVC)である。VVCドラフト仕様の現在のバージョンは、JVETドキュメントJVET-P2001-vEに記載されている。
構成要素
ビデオシーケンスは一連の画像で構成され、各画像は1つまたは複数の成分で構成される。各成分は、サンプル値の2次元の長方形配列として記述され得る。ビデオシーケンスの画像は通常、3つの成分、すなわち、1つの輝度成分Y(サンプル値は輝度値)と2つの彩度成分CbおよびCr(サンプル値は彩度値)とで構成される。彩度成分の寸法は、圧縮時にビットを節約するために、各寸法において輝度成分よりも2倍小さいことがよくある。例えば、HD画像の輝度成分のサイズは1920×1080であり、彩度成分のサイズはそれぞれ960×540になる。成分は、色成分と呼ばれることもある。
ブロックおよびユニット
ブロックは、サンプルからなる1つの2次元配列である。ビデオコーディングでは、各成分がブロックに分割され、コード化されたビデオビットストリームは一連のコード化されたブロックで構成される。ビデオコーディングでは、画像が画像の特定の領域をカバーするユニットに分割されるのが一般的である。各ユニットは、その特定の領域を構成するすべての成分のすべてのブロックで構成され、各ブロックは完全に1つのユニットに属する。H.264のマクロブロックおよびHEVCのコーディングユニット(CU)はユニットの例である。
あるいは、ブロックは、コーディングで使用される変換が2次元配列に適用される2次元配列としても規定され得る。これらのブロックは「変換ブロック」と呼ばれる。あるいは、ブロックは、単一の予測モードが2次元配列に適用される2次元配列として規定され得る。これらのブロックは「予測ブロック」と呼ばれ得る。本出願では、ワードブロックはこれらの規定のいずれにも関連付けられていないが、ここでの説明はどちらの規定にも適用できる。
NALユニット
HEVCおよびVVCの両方がネットワーク抽象化層(Network Abstraction Layer:NAL)を規定する。すべてのデータ、つまり、HEVCとVVCのビデオコーディング層(Video Coding Layer:VCL)または非VCLデータの両方がNALユニットにカプセル化される。VCL NALユニットは、画像サンプル値を表すデータを含む。非VCL NALユニットは、パラメータセットや補足拡張情報(supplemental enhancement information:SEI)メッセージなどの追加の関連データを含む。
パラメータセット
HEVCおよびVVCは、画像パラメータセット(picture parameter set:PPS)、シーケンスパラメータセット(sequence parameter set:SPS)、およびビデオパラメータセット(video parameter set:VPS)の3種類のパラメータセットを指定する。PPSは、1つまたは複数の画像に共通のデータを含み、SPSは、コード化ビデオシーケンス(coded video sequence:CVS)に共通のデータを含み、VPSは、複数のCVSに共通のデータを含む。ビットストリームでランダムアクセスポイントを提供するために、画像をIRAPまたはGDR画像として定期的にエンコーディングするのが一般的であり、このような各画像の前には、デコードに必要なパラメータセット(VPS、SPS、PPS)がある。
VVCの現在のバージョンでは、適応パラメータセット(adaptation parameter set:APS)とデコーダパラメータセット(decoder parameter set:DPS)の2つの追加パラメータセットも指定されている。
APSは、アダプティブループフィルタ(adaptive loop filter:ALF)ツールと輝度マッピングおよび彩度スケーリング(luma mapping and chroma scaling:LMCS)ツールとに必要なパラメータを伝送する。
DPSは、デコードセッション中に変更されない可能性があり、デコーダが知っておくとよい情報、例えば、許可される副層の最大数、を含む。DPSの情報は、デコードプロセスの操作には必要ない。
タイル
ドラフトVVCビデオコーディング標準は、タイルが画像を長方形の空間的に独立した領域に「分割」するタイルを使用する。ドラフトVVCコーディング標準のタイルは、HEVCで使用されているタイルと似ている。タイルを使用すると、HEVCの画像をサンプルの行と列に分割でき、タイルは行と列の共通部分である。図1は、4つのタイル行と5つのタイル列を使用して、画像に対して合計20のタイルを生成するタイル分割の例を示している。
タイル構造は、表1に示すように、行の高さと列の幅を指定することにより、画像パラメータセット(PPS)で通知される。個々の行と列のサイズは異なり得るが、パーティション分割は常に画像全体にまたがり、それぞれ左から右、上から下になる。同じ画像のタイル間にデコードの依存関係はない。このことは、イントラ予測、エントロピーコーディングのコンテキスト選択、および動きベクトル予測を含む。1つの例外は、タイル間でループ内フィルタリングの依存関係が許可されることである。
Figure 2023508880000002
VVCドラフト仕様の現在のバージョンからの表1の構文要素のセマンティクスを以下に示す。
no_pic_partition_flagが1の場合、PPSを参照する各画像に画像分割が適用されないことを指定する。no_pic_partition_flagが0の場合、PPSを参照する各画像を複数のタイルまたはスライスに分割できることを指定する。
no_pic_partition_flagの値は、CLVS内のコード化された画像によって参照されるすべてのPPSで同じでなければならないことがビットストリーム適合の要件である。
sps_num_subpics_minus1+1の値が1より大きい場合、no_pic_partition_flagの値が1に等しくないことがビットストリーム適合の要件である。
pps_log2_ctu_size_minus5+5は、各CTUの輝度コーディングツリーブロックサイズを指定する。pps_log2_ctu_size_minus5はsps_log2_ctu_size_minus5と等しくなければならない。
num_exp_tile_columns_minus1+1は、明示的に指定されたタイル列幅の数を指定する。num_exp_tile_columns_minus1の値は、0からPicWidthInCtbsY-1までの範囲でなければならない。no_pic_partition_flagが1に等しい場合、num_exp_tile_columns_minus1の値は0に等しいと推測される。
num_exp_tile_rows_minus1+1は、明示的に指定されたタイル行の高さの数を指定する。num_exp_tile_rows_minus1の値は、0からPicHeightInCtbsY-1までの範囲でなければならない。no_pic_partition_flagが1に等しい場合、num_tile_rows_minus1の値は0に等しいと推測される。
tile_column_width_minus1[i]+1は、0からnum_exp_tile_columns_minus1-1までの範囲のiのCTBの単位でi番目のタイル列の幅を指定する。tile_column_width_minus1[num_exp_tile_columns_minus1]は、句で指定されているように、インデックスがnum_exp_tile_columns_minus1以上のタイル列の幅を導出するために使用される。存在しない場合、tile_column_width_minus1[0]の値はPicWidthInCtbsY-1に等しいと推測される。
tile_row_height_minus1[i]+1は、0からnum_exp_tile_rows_minus1-1までの範囲のiのCTBの単位でi番目のタイル行の高さを指定する。tile_row_height_minus1[num_exp_tile_rows_minus1]は、句で指定されているように、インデックスがnum_exp_tile_rows_minus1以上のタイル行の高さを導出するために使用される。存在しない場合、tile_row_height_minus1[0]の値はPicHeightInCtbsY-1に等しいと推測される。
スライス
HEVCのスライスの概念は、画像を独立してコード化されたスライスに分割し、画像内の1つのスライスのデコードは、同じ画像内の他のスライスから独立している。同じ画像のスライスに異なるコーディングタイプを使用できる。つまり、スライスはIスライス、Pスライス、またはBスライスのいずれかになる。スライスの目的の1つは、データが失われた場合に再同期を有効にすることである。
VVCドラフト仕様の現在のバージョンでは、スライスは、整数の完全なタイル、または整数の画像のタイル内の連続する完全なコーディングツリーユニット(coding tree unit:CTU)行のいずれかで構成される。各スライスは、個々のスライスに設定できるパラメータを含むスライスヘッダを有する。一部のパラメータは、画像内のすべてのスライスで同じになるように制限されている。CVSの各スライスは、個別のVCL NALユニットで伝送される。
VVCドラフト仕様の以前のバージョンでは、スライスはタイルグループと呼ばれていた。VVCドラフト仕様の現在のバージョンでは、2つのスライスモード、つまりラスタースキャンスライスモードと長方形スライスモードとがサポートされている。ラスタースキャンスライスモードでは、スライスは、画像のタイルラスタースキャン内の完全なタイルのシーケンスを含む。長方形スライスモードでは、スライスは、画像の長方形領域を集合的に形成する多数の完全なタイル、または集合的に画像の長方形領域を形成する1つのタイルの多数の連続する完全なCTU行のいずれかを含む。長方形スライス内のタイルは、そのスライスに対応する長方形領域内でタイルラスタースキャン順序でスキャンされる。表2に、現在のバージョンのVVCドラフト仕様のスライスヘッダのスライスアドレス構文を示す。
Figure 2023508880000003
VVCドラフト仕様の現在のバージョンからの表2に関するセマンティクスを以下に示す。
slice_subpic_idは、スライスを含むサブ画像のサブ画像識別子を指定する。slice_subpic_idが存在する場合、変数SubPicIdxの値は、SubpicIdList[SubPicIdx]がslice_subpic_idと等しくなるように導出される。それ以外の場合(slice_subpic_idが存在しない場合)、変数SubPicIdxは0に等しくなるように導出される。ビット単位のslice_subpic_idの長さは、次のように導出される。
- sps_subpic_id_signalling_present_flagが1に等しい場合、slice_subpic_idの長さはsps_subpic_id_len_minus1+1に等しくなる。
- それ以外の場合、ph_subpic_id_signalling_present_flagが1に等しい場合、slice_subpic_idの長さはph_subpic_id_len_minus1+1に等しくなる。
- それ以外の場合、pps_subpic_id_signalling_present_flagが1に等しい場合、slice_subpic_idの長さはpps_subpic_id_len_minus1+1に等しくなる。
- それ以外の場合、slice_subpic_idの長さはCeil(Log2(sps_num_subpics_minus1+1))に等しくなる。
slice_addressは、スライスのスライスアドレスを指定する。存在しない場合、slice_addressの値は0に等しいと推測される。
rect_slice_flagが0に等しい場合、以下が適用される。
- スライスアドレスはラスタースキャンタイルインデックスである。
- slice_addressの長さはCeil(Log2(NumTilesInPic))ビットである。
- slice_addressの値は、0からNumTilesInPic-1までの範囲でなければならない。
それ以外の場合(rect_slice_flagが1に等しい)、以下が適用される。
- スライスアドレスは、SubPicIdx番目のサブ画像内のスライスのスライスインデックスである。
- slice_addressの長さはCeil(Log2(NumSlicesInSubpic[SubPicIdx]))ビットである。
- slice_addressの値は、0からNumSlicesInSubpic[SubPicIdx]-1までの範囲でなければならない。
次の制約が適用されることがビットストリーム適合の要件である。
- rect_slice_flagが0に等しいか、subpics_present_flagが0に等しい場合、slice_addressの値は、同じコード化された画像の他のコード化されたスライスNALユニットのslice_addressの値と等しくてはならない。
- それ以外の場合、slice_subpic_idとslice_addressの値の対は、同じコード化された画像の他のコード化されたスライスNALユニットのslice_subpic_idとslice_addressの値の対と等しくてはならない。
- rect_slice_flagが0に等しい場合、画像のスライスは、slice_address値の昇順である必要がある。
画像のスライスの形状は、デコードされたときに、各CTUが、画像の境界からなる、または以前にデコードされたCTUの境界で構成されるその左側の境界全体と上部の境界全体とを持つようにする必要がある。VVCドラフト仕様の現在のバージョンでは、長方形スライスのパーティションレイアウトは、表3で説明されているようにPPSで通知される。
Figure 2023508880000004
VVCドラフト仕様の現在のバージョンからの表3の構文要素のセマンティクスは次のとおりである。
no_pic_partition_flagが1の場合、PPSを参照する各画像に画像分割が適用されないことを指定する。no_pic_partition_flagが0の場合、PPSを参照する各画像を複数のタイルまたはスライスに分割できることを指定する。
no_pic_partition_flagの値は、CLVS内のコード化された画像によって参照されるすべてのPPSで同じでなければならないことがビットストリーム適合の要件である。
sps_num_subpics_minus1+1の値が1より大きい場合、no_pic_partition_flagの値が1に等しくないことがビットストリーム適合の要件である。
0に等しいrect_slice_flagは、各スライス内のタイルがラスタースキャン順序であり、スライス情報がPPSで通知されないことを指定する。1に等しいrect_slice_flagは、各スライス内のタイルが画像の長方形の領域をカバーし、スライス情報がPPSで通知されることを指定する。存在しない場合、rect_slice_flagは1に等しいと推測される。subpics_present_flagが1に等しい場合、rect_slice_flagの値は1に等しくなる。
single_slice_per_subpic_flagが1の場合、各サブ画像が1つだけの長方形のスライスで構成されていることを指定する。single_slice_per_subpic_flagが0の場合、各サブ画像が1つまたは複数の長方形のスライスで構成されている可能性があることを指定する。subpics_present_flagが0に等しい場合、single_slice_per_subpic_flagは0に等しくなる。single_slice_per_subpic_flagが1に等しい場合、num_slices_in_pic_minus1はsps_num_subpics_minus1に等しいと推測される。
num_slices_in_pic_minus1+1は、PPSを参照する各画像の長方形スライスの数を指定する。num_slices_in_pic_minus1の値は、0からMaxSlicesPerPicture-1までの範囲である必要があり、MaxSlicesPerPictureはAnnexで指定されている。no_pic_partition_flagが1に等しい場合、num_slices_in_pic_minus1の値は0に等しいと推測される。
tile_idx_delta_present_flagが0の場合、tile_idx_delta値がPPSに存在せず、PPSを参照する画像内のすべての長方形スライスが、節で規定されたプロセスに従ってラスター順に指定されることを指定する。tile_idx_delta_present_flagが1の場合、tile_idx_delta値がPPSに存在する可能性があり、PPSを参照する画像内のすべての長方形スライスがtile_idx_deltaの値で示される順序で指定されることを指定する。
slice_width_in_tiles_minus1[i]+1は、タイル列の単位でi番目の長方形スライスの幅を指定する。slice_width_in_tiles_minus1[i]の値は、0からNumTileColumns-1までの範囲でなければならない。存在しない場合、slice_width_in_tiles_minus1[i]の値は、句で指定されているように推測される。
slice_height_in_tiles_minus1[i]+1は、タイル行の単位でi番目の長方形スライスの高さを指定する。slice_height_in_tiles_minus1[i]の値は、0からNumTileRows-1までの範囲でなければならない。存在しない場合、slice_height_in_tiles_minus1[i]の値は、句で指定されているように推測される。
num_slices_in_tile_minus1[i]+1は、i番目のスライスに単一のタイルからのCTU行のサブセットが含まれている場合の、現在のタイルのスライス数を指定する。num_slices_in_tile_minus1[i]の値は、0からRowHeight[tileY]-1までの範囲である必要があり、tileYは、i番目のスライスを含むタイル行インデックスである。存在しない場合、num_slices_in_tile_minus1[i]の値は0に等しいと推測される。
slice_height_in_ctu_minus1[i]+1は、i番目のスライスに単一のタイルからのCTU行のサブセットが含まれる場合に、CTU行の単位でi番目の長方形スライスの高さを指定する。slice_height_in_ctu_minus1[i]の値は、0からRowHeight[tileY]-1までの範囲である必要があり、tileYは、i番目のスライスを含むタイル行インデックスである。
tile_idx_delta[i]は、i番目の長方形スライスと(i+1)番目の長方形スライスの間のタイルインデックスの差を指定する。tile_idx_delta[i]の値は、-NumTilesInPic+1からNumTilesInPic-1までの範囲でなければならない。存在しない場合、tile_idx_delta[i]の値は0に等しいと推測される。他のすべての場合、tile_idx_delta[i]の値は0に等しくてはならない。
サブ画像
サブ画像は、VVCの現在のバージョンでサポートされている。サブ画像は、画像内の1つまたは複数のスライスの長方形の領域として規定され、このことは、サブ画像に、画像の長方形の領域を集合的にカバーする1つまたは複数のスライスが含まれることを意味する。
VVCドラフト仕様JVET-P2001-vEの現在のバージョンでは、サブ画像の位置とサイズがSPSで通知される。サブ画像領域の境界は、SPSのサブ画像ごとのフラグsubpic_treated_as_pic_flag[i]に条件付けられた画像境界(ループ内フィルタリング操作を除く)として扱われ得る。また、サブ画像境界でのループフィルタリングは、SPSのサブ画像ごとのフラグloop_filter_across_subpic_enabled_flag[i]に条件付けられる。
2つのフラグsps_subpic_id_present_flagとsps_subpic_id_signalling_present_flagによってゲートされるサブ画像のSPSで通知されるサブ画像IDマッピングメカニズムもある。
表4に、現在のバージョンのVVCのSPSのサブ画像構文を示す。表4では、変数iはサブ画像のインデックスであり、サブ画像の位置、サイズ、およびその他のプロパティの構文要素は、サブ画像のインデックスの順序で各サブ画像に対して通知される。例えば、iが0に等しいすべての構文要素は、サブ画像インデックスが0に等しいサブ画像の位置、サイズ、およびその他のプロパティを指定する。
Figure 2023508880000005
VVCドラフト仕様の現在のバージョンからの表4に関するセマンティクスは次のとおりである。
subpics_present_flagが1の場合、サブ画像パラメータがSPSRBSP構文に存在することを指定する。subpics_present_flagが0の場合、サブ画像パラメータがSPSRBSP構文に存在しないことを指定する。
注-ビットストリームが副ビットストリーム抽出プロセスの結果であり、副ビットストリーム抽出プロセスへの入力ビットストリームのサブ画像のサブセットのみが含まれている場合、SPSのRBSPでsubpics_present_flagの値を1に設定する必要があり得る。
sps_num_subpics_minus1+1は、サブ画像の数を指定する。sps_num_subpics_minus1は0から254までの範囲でなければならない。存在しない場合、sps_num_subpics_minus1の値は0に等しいと推測される。
subpic_ctu_top_left_x[i]は、CtbSizeYの単位でi番目のサブ画像の左上のCTUの水平位置を指定する。構文要素の長さはCeil(Log2(pic_width_max_in_luma_samples/CtbSizeY))ビットである。存在しない場合、subpic_ctu_top_left_x[i]の値は0に等しいと推測される。
subpic_ctu_top_left_y[i]は、CtbSizeYの単位でi番目のサブ画像の左上のCTUの垂直位置を指定する。構文要素の長さはCeil(Log2(pic_height_max_in_luma_samples/CtbSizeY))ビットである。存在しない場合、subpic_ctu_top_left_y[i]の値は0に等しいと推測される。
subpic_width_minus1[i]+1は、i番目のサブ画像の幅をCtbSizeYの単位で指定する。構文要素の長さはCeil(Log2(pic_width_max_in_luma_samples/CtbSizeY))ビットである。存在しない場合、subpic_width_minus1[i]の値はCeil(pic_width_max_in_luma_samples/CtbSizeY)-1に等しいと推測される。
subpic_height_minus1[i]+1は、i番目のサブ画像の高さをCtbSizeYの単位で指定する。構文要素の長さはCeil(Log2(pic_height_max_in_luma_samples/CtbSizeY))ビットである。存在しない場合、subpic_height_minus1[i]の値はCeil(pic_height_max_in_luma_samples/CtbSizeY)-1に等しいと推測される。
subpic_treated_as_pic_flag[i]が1の場合、CLVS内の各コード化画像のi番目のサブ画像が、ループ内フィルタリング操作を除いて、デコードプロセスで画像として扱われることを指定する。subpic_treated_as_pic_flag[i]が0の場合、CLVS内の各コード化画像のi番目のサブ画像が、ループ内フィルタリング操作を除いて、デコードプロセスで画像として扱われないことを指定する。存在しない場合、subpic_treated_as_pic_flag[i]の値は0に等しいと推測される。
loop_filter_across_subpic_enabled_flag[i]が1の場合、CLVS内の各コード化画像のi番目のサブ画像の境界を越えてループ内フィルタリング操作を実行できることを指定する。loop_filter_across_subpic_enabled_flag[i]が0の場合、CLVS内の各コード化画像のi番目のサブ画像の境界を越えてループ内フィルタリング操作が実行されないことを指定する。存在しない場合、loop_filter_across_subpic_enabled_pic_flag[i]の値は1に等しいと推測される。
次の制約が適用されることがビットストリーム適合の要件である。
- 任意の2つのサブ画像subpicAおよびsubpicBについて、subpicAのサブ画像インデックスがsubpicBのサブ画像インデックスよりも小さい場合、subPicAのコード化されたスライスNALユニットは、デコード順にsubPicBのコード化されたスライスNALユニットの前に配置される。
- サブ画像の形状は、デコードされたときに、各サブ画像が、画像の境界からなる、または以前にデコードされたサブ画像の境界からなる、その左側の境界全体および上部の境界全体を有するようなものでなければならない。
sps_subpic_id_present_flagが1の場合、サブ画像IDマッピングがSPSに存在することを指定する。sps_subpic_id_present_flagが0の場合、サブ画像IDマッピングがSPSに存在しないことを指定する。
sps_subpic_id_signalling_present_flagが1の場合、サブ画像IDマッピングがSPSで通知されることを指定する。sps_subpic_id_signalling_present_flagが0の場合、サブ画像IDマッピングがSPSで通知されないことを指定する。存在しない場合、sps_subpic_id_signalling_present_flagの値は0に等しいと推測される。
sps_subpic_id_len_minus1+1は、構文要素sps_subpic_id[i]を表すために使用されるビット数を指定する。sps_subpic_id_len_minus1の値は、0から15までの範囲でなければならない。
sps_subpic_id[i]は、i番目のサブ画像のサブ画像IDを指定する。sps_subpic_id[i]構文要素の長さはsps_subpic_id_len_minus1+1ビットである。存在しない場合、およびsps_subpic_id_present_flagが0の場合、sps_subpic_id[i]の値は、0からsps_num_subpics_minus1までの範囲の各iについて、iに等しいと推測される。
VVCドラフト仕様の現在のバージョンの可用性規則
VVCドラフト仕様JVET-P2001-vEの現在のバージョンのサブ画像の可用性規則は、loop_filter_across_subpic_enabled_flag[i]構文要素のセマンティクスに記述されており、ここで繰り返される。
次の制約が適用されることがビットストリーム適合の要件である。
任意の2つのサブ画像subpicAおよびsubpicBについて、subpicAのサブ画像インデックスがsubpicBのサブ画像インデックスよりも小さい場合、subpicAのコード化されたスライスNALユニットは、デコード順にsubpicBのコード化されたスライスNALユニットの前に配置される。
サブ画像の形状は、デコードされたときに、各サブ画像が、画像の境界からなる、または以前にデコードされたサブ画像の境界からなる、その左側の境界全体および上部の境界全体を有するようなものでなければならない。
上記の要件から、サブ画像の可用性規則は、ビットストリーム内のすべてのアクセスユニット内の各サブ画像のコード化スライスNALユニットをグループ化し、サブ画像の任意のインデックスが許可されない可能性がある方法で、サブ画像インデックスの昇順でアクセスユニット内のすべてのサブ画像のコード化スライスNALユニットの配置を制約する。
VVCドラフト仕様JVET-P2001-vEの現在のバージョンでのスライスの可用性規則は、slice_address構文要素のセマンティクスに記述されており、ここで繰り返される。
次の制約が適用されることがビットストリーム適合の要件である。
画像のスライスの形状は、デコードされたときに、各CTUが、画像の境界または以前にデコードされたCTUの境界で構成される、その左側の境界全体および上部の境界全体を持つようにする必要がある。
スライスの可用性規則は、コード化されたスライスNALユニットの配置を制約する。VVCドラフト仕様の現在のバージョンでは、サブ画像や長方形スライスなどの画像セグメントの順序が制限されている。サブ画像の順序に関する現在の制限(および同様に長方形のスライスの場合)は、例えば、画像セグメントの内容が空間的に独立している場合、または現在の順序制限内でデコーダ側のセグメントの最適なデコード順序を達成できない場合、すべての用途および使用例にとって必要または最適ではない。画像セグメントの現在の制限された順序は、一部の使用例、例えば、低レイテンシアプリケーション用では最適ではない可能性がある。
VVCドラフト仕様の現在のバージョンにおける順序の制約に関する別の問題は、ビットストリームのマージなどのプロセスに不必要な複雑さをもたらす可能性があることである。追加の複雑さは、セグメントのコンテンツのエンコーディング/デコードが画像内の他のセグメントのエンコーディング/デコードに依存していない例でも、ビットストリームマージプロセスがビットストリーム内のコード化されたセグメントの適切な順序を処理する必要があることである。
現在の順序付け制約のもう1つの問題は、この制約が、画像セグメントのコンテンツが依存しているか独立しているかに関係なく適用されることである。画像セグメントが、それらの間にインターまたはイントラ予測がなく、セグメント境界を越えたループフィルタリングがないという意味で独立している場合、可用性規則は値を追加しないように見えるが、代わりに計算負荷を課す。
提案された解決策は、画像内のセグメントに適用される様々な順序付け規則を有効にし、1つ以上の構文要素を使用して適用される規則を指定するという概念を導入している。順序付け規則は、VVCドラフト仕様の現在のバージョンのサブ画像とスライスの可用性規則、任意の順序付け、各セグメントの最初のCTUアドレスの昇順の順序付けなどであり得る。
本開示のいくつかの実施形態によれば、ビットストリームから少なくとも1つの現在の画像をデコードするための方法が説明される。この方法は、ビットストリームから複数の規則のうちの少なくとも1つの規則を指定するインジケータ値をデコードすることを含み、少なくとも1つの規則は、ビットストリームにコード化されたセグメントの順序付けに適用され、セグメントは、セグメントパーティションレイアウトのセグメントである。この方法は、セグメントパーティションレイアウトを指定する構文要素のセットのビットストリームからのデコードも含む。この方法は、構文要素のセットに基づいてセグメントパーティションレイアウトを導出することも含む。この方法は、セグメントパーティションレイアウトを使用してビットストリーム内の少なくとも1つの現在の画像をデコードすることをさらに含み、セグメントの順序付けは、指定された少なくとも1つの規則に従う。
いくつかの実施形態によれば、通信ネットワーク用のデコーダが説明されている。デコーダは、プロセッサと、プロセッサに結合されたメモリとを含む。メモリは、プロセッサによって実行されたときにプロセッサに、ビットストリームからインジケータ値をデコードすることであって、インジケータ値は複数の規則の少なくとも1つの規則を指定し、少なくとも1つの規則は、ビットストリームにコード化されたセグメントの順序付けに適用される、こと、を含む動作を実行させる命令を含む。セグメントは、セグメントパーティションレイアウトのセグメントである。メモリは、プロセッサによって実行されたときに、セグメントパーティションレイアウトを指定する構文要素のセットのビットストリームからのデコードを含む動作をプロセッサに実行させる命令も含む。メモリは、プロセッサによって実行されたときに、構文要素のセットに基づいてセグメントパーティションレイアウトを導出することを含む動作をプロセッサに実行させる命令も含む。メモリはさらに、プロセッサによって実行されると、セグメントパーティションレイアウトを使用してビットストリーム内の少なくとも1つの現在の画像をデコードすることを含む動作をプロセッサに実行させる命令を含み、セグメントの順序は、指定された少なくとも1つの規則に従う。
本開示のいくつかの実施形態によれば、少なくとも1つの現在の画像をビットストリームにエンコーディングするための方法が説明される。この方法は、ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントのセグメントパーティションレイアウトを規定することを含む。この方法はまた、ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントパーティションレイアウトにおけるセグメントの順序付けのための規則のセットから少なくとも1つの規則を選択することを含む。この方法は、少なくとも1つの現在の画像のセグメントパーティションレイアウトをビットストリームにエンコーディングすることも含む。この方法はまた、インジケータ値をビットストリームにエンコーディングすることを含み、インジケータ値は、少なくとも1つの現在の画像のセグメントパーティションレイアウトにおけるセグメントの順序付けのために選択された規則のセットを識別する。この方法は、セグメントパーティションレイアウトを使用して、少なくとも1つの現在の画像をビットストリームにエンコーディングすることをさらに含む。
いくつかの実施形態によれば、通信ネットワーク用のエンコーダが記述されている。エンコーダは、プロセッサと、プロセッサに結合されたメモリとを備えている。メモリは、プロセッサによって実行されたときに、ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントのセグメントパーティションレイアウトを定義することを含む動作をプロセッサに実行させる命令を含む。メモリはまた、プロセッサによって実行されると、少なくとも1つの現在の画像がビットストリームにエンコーディングされるセグメントパーティションレイアウトのセグメントの順序付けのための規則のセットから少なくとも1つの規則を選択することを含む動作をプロセッサに実行させる命令を含む。メモリは、プロセッサによって実行されたときに、少なくとも1つの現在の画像のセグメントパーティションレイアウトをビットストリームにエンコーディングすることを含む動作をプロセッサに実行させる命令も含む。メモリは、プロセッサによって実行されたときに、プロセッサに、インジケータ値をビットストリームにエンコーディングすることであって、インジケータ値は、少なくとも1つの現在の画像のセグメントパーティションレイアウトにおけるセグメントの順序付けのために選択された規則のセットを識別する、こと、を含む動作を実行させる命令も含む。メモリはさらに、セグメントパーティションレイアウトを使用して、少なくとも1つの現在の画像をビットストリームにエンコーディングすることを含む。
本開示のさらなる理解を提供するために含まれ、本出願に組み込まれ、その一部を構成する添付の図面は、本発明の概念の特定の非限定的な実施形態を示している。
当技術分野で知られているVVCコーディング標準に従ったタイル分割の例である。 当技術分野で知られているレイテンシデコードによるスライスパーティションレイアウトの例である。 本発明の概念のいくつかの実施形態による、画像内のサブ画像パーティションレイアウトの例である。 本発明の概念のいくつかの実施形態による画像内のスライスパーティションレイアウトの例である。 本発明の概念のいくつかの実施形態による、画像内のスワップされたスライスパーティションレイアウトの例である。 本発明の概念のいくつかの実施形態による、画像内のサブ画像パーティションレイアウトを変更する例である。 本発明の概念のいくつかの実施形態によるエンコーダおよびデコーダを含むシステムのブロック図である。 本発明の概念のいくつかの実施形態によるデコーダのブロック図である。 本発明の概念のいくつかの実施形態によるエンコーダのブロック図である。 本発明の概念のいくつかの実施形態によるデコーダの動作を示すフローチャートである。 本発明の概念のいくつかの実施形態によるエンコーダの動作を示すフローチャートである。 本発明の概念のいくつかの実施形態によるエンコーダのさらなる動作を示すフローチャートである。 本発明の概念のいくつかの実施形態による仮想化環境のブロック図である。
本発明の概念は、本発明の概念の実施形態の例が示されている添付の図面を参照して、以下により完全に説明される。しかしながら、本発明の概念は、多くの異なる形態で具体化することができ、本明細書に記載の実施形態に限定されると解釈されるべきではない。むしろ、これらの実施形態は、本開示が絶対的かつ完全であり、本発明の概念の範囲を当技術分野の当業者に完全に伝えるように提供される。これらの実施形態は相互に排他的ではないことにも留意されたい。一実施形態からの構成要素は、別の実施形態に存在する/使用されることが暗黙のうちに想定され得る。
以下の説明は、開示された主題の様々な実施形態を提示する。これらの実施形態は、教示例として提示されており、開示された主題の範囲を限定するものとして解釈されるべきではない。例えば、記載された実施形態の特定の詳細は、記載された主題の範囲から逸脱することなく、修正、省略、または拡張され得る。
VVCドラフト仕様の現在のバージョンの可用性規則
VVCドラフト仕様JVET-P2001-vEの現在のバージョンのサブ画像の可用性規則は、loop_filter_across_subpic_enabled_flag[i]構文要素のセマンティクスに記述されており、ここで繰り返される。
次の制約が適用されることがビットストリーム適合の要件である。
- 任意の2つのサブ画像subpicAおよびsubpicBについて、subpicAのサブ画像インデックスがsubpicBのサブ画像インデックスよりも小さい場合、subPicAのコード化されたスライスNALユニットは、デコード順にsubPicBのコード化されたスライスNALユニットの前に配置される。
- サブ画像の形状は、デコードされたときに、各サブ画像が、画像の境界からなる、または以前にデコードされたサブ画像の境界からなる、その左側の境界全体および上部の境界全体を有するようなものでなければならない。
上記の要件から、サブ画像の可用性規則は、ビットストリーム内のすべてのアクセスユニット内の各サブ画像のコード化スライスNALユニットをグループ化し、サブ画像の任意のインデックスが許可されない可能性がある方法で、サブ画像インデックスの昇順でアクセスユニット内のすべてのサブ画像のコード化スライスNALユニットの配置を制約する。
VVCドラフト仕様JVET-P2001-vEの現在のバージョンでのスライスの可用性規則は、slice_address構文要素のセマンティクスに記述されており、ここで繰り返される。
次の制約が適用されることがビットストリーム適合の要件である。
画像のスライスの形状は、デコードされたときに、各CTUが、画像の境界または以前にデコードされたCTUの境界で構成される、その左側の境界全体および上部の境界全体を持つようにする必要がある。
上記の要件から、スライスの可用性規則は、コード化されたスライスNALユニットの配置を制約する。VVCドラフト仕様の現在のバージョンでは、サブ画像や長方形スライスなどの画像セグメントの順序が制限されている。例えば、ビットストリーム内のサブ画像インデックスで指定されたサブ画像の順序は、デコードされるときに、各サブ画像が、左側の境界全体と上部の境界全体が画像の境界で構成されるか、以前にデコードされたサブ画像の境界で構成されるように指定する可用性規則によって規制される。サブ画像インデックスは、コード化されたビットストリーム内のアクセスユニット内のサブ画像に対応するVCL NALユニットグループの順序を決定する。同じことがサブ画像内(または画像が単一のサブ画像で構成されている場合は画像内)の長方形スライスの順序にも当てはまり、長方形スライスの順序は同様の可用性規則によって制約される。
ただし、サブ画像の順序に関する現在の制限(および同様に長方形のスライスの場合)は、例えば、画像セグメントの内容が空間的に独立している場合、または現在の順序制限内でデコーダ側のセグメントの最適なデコード順序を達成できない場合など、すべての用途および使用例にとって必要または最適ではない。
画像セグメントの現在の制限された順序は、例えば、低レイテンシ用途など、一部の使用例では最適ではない可能性がある。図2に示す例として、ラスタースキャン順序でデコードするデコーダは、最初のCTU行をデコードする前に、画像内の図解された長方形のスライスパーティションレイアウトのビットストリームでスライス2を待機する必要がある。これは、セグメントの順序の制約により、ビットストリームでスライス2をスライス1の前に置くことができないためである。これにより、360ビデオストリーミングなどの一部の用途で重要なレイテンシとメモリ要件が増加する可能性がある。図2は、VVCドラフト仕様の現在のバージョンで唯一許可されている順序であるスライスパーティションレイアウトのスライスの順序によって引き起こされる、ラスタースキャン順序でのCTUのデコードのレイテンシも示している。
VVCドラフト仕様の現在のバージョンにおける順序の制約に関する別の問題は、ビットストリームのマージなどのプロセスに不必要な複雑さをもたらす可能性があることである。追加の複雑さは、セグメントのコンテンツのエンコーディング/デコードが画像内の他のセグメントのエンコーディング/デコードに依存していない例でも、ビットストリームマージプロセスがビットストリーム内のコード化されたセグメントの適切な順序を処理する必要があることである。
現在の順序付け制約のもう1つの問題は、画像セグメントのコンテンツが依存しているか独立しているかに関係なく適用されることである。画像セグメントが、それらの間にインターまたはイントラ予測がなく、セグメント境界を越えたループフィルタリングがないという意味で独立している場合、可用性規則は値を追加しないように見えるが、代わりに計算負荷を課す。
本明細書で説明される本発明の概念の実施形態は、画像内のセグメントに適用される異なる順序付け規則を可能にし、1つまたは複数の構文要素を使用して適用される規則を指定する概念を導入する。順序付け規則は、VVCドラフト仕様の現在のバージョンのサブ画像とスライスの可用性規則、任意の順序付け、各セグメントの最初のCTUアドレスの昇順の順序付けなどであり得る。
本発明の概念の一実施形態では、上記の問題のいくつかは、可用性規則を緩和し、セグメントが独立していることを条件とするビットストリーム内の画像セグメントの任意の順序を許可することで解決または軽減することができる。つまり、セグメント間のインターおよびイントラ予測とセグメント境界でのループフィルタリングが無効になる。
本発明の概念の別の実施形態では、上記の問題のいくつかは、現在許可されていないサブ画像パーティションレイアウトのサブ画像の他の好ましい順序を許可することによって解決または軽減することができる。例として、図3の1行目は、サブ画像パーティションのレイアウトと、現在のバージョンのVVCドラフト仕様で許可されているサブ画像の順序のみを示している。図3の2行目は、現在のバージョンのVVCドラフト仕様では許可されていない提案された解決策のサブ画像の順序付けの例を示している。図3の番号0、1、および2は、ビットストリームのサブ画像の順序と同じサブ画像インデックスを示している。図3は、VVCドラフト仕様の現在のバージョン(1行目)および提案されたソリューションの一実施形態(2行目)でのサブ画像パーティションのレイアウトと順序も示している。
本発明の概念の別の実施形態では、ビットストリーム内のコード化されたセグメントの任意の順序は、セグメントが独立している場合に許可され、これは、セグメント間のインターおよびイントラ予測およびセグメント境界でのループフィルタリングが無効であることを意味する。これにより、ビットストリームのマージプロセスと、ビットストリーム内の同じサイズのセグメント間のコンテンツスワッピングが簡素化される。
本発明の概念のいくつかの実施形態は、サブ画像およびスライスなどのそれらのパーティションレイアウトにおいて特定の順序を有する画像セグメントに適用され得る。セグメントに異なる順序付け規則を許可することは、次の例にいくつかリストされている様々な用途にとって有益である。サブ画像の任意の順序を許可することの利点の1つは、特定の順序に準拠するように出力ビットストリーム内のコード化されたサブ画像の順序を変更する必要がないため、それぞれがサブ画像を含む2つ以上のビットストリームのマージなどのプロセスが簡素化されることである。
スライスを最初のCTUアドレスの昇順にすることの利点の1つは、ラスタースキャン順でデコードするデコーダのレイテンシを低減することができることである。図4に、提案された解決策の実施形態の1つ(図4の2行目)で表現されているように、スライス内の最初のCTUアドレスの昇順でスライスを許可することにより、現在のバージョンのVVCドラフト仕様(図4の1行目)を使用してラスタースキャン順序でCTUをデコードするためのレイテンシが短縮される例を示す。図4は、ラスタースキャン順序(1行目)でCTUをデコードするためのレイテンシも、提案された解決策の実施形態の1つ(2行目)によって改善されることを示している。
本発明の概念のいくつかの実施形態の別の利点は、スライス内容の交換を単純化することである。例えば、図5に示すように、提案された実施形態の1つを使用して、スライスの新しい配置の可用性規則をチェックしたり、またはビットストリーム内のスライスの順序を変更したりする必要なしに、図5の2行目に示されているように新しいスライスアドレスのスライスヘッダを更新することのみによって、元の画像の2つの長方形のスライスを交換することができる。図5の1行目は元のビットストリームとスライスパーティションレイアウトを示し、図5の2行目は新しいビットストリームとスワップされたスライスパーティションレイアウトを示している。この新しいビットストリームは、VVCドラフトの可用性規則のため、現在のバージョンのVVCドラフト仕様に準拠したビットストリームではない。図5は、提案された解決策の実施形態における2つのスライスのコンテンツの交換も示している。
独立したサブ画像の任意のセグメント順序付けにより、VCLのビットを変更せずに、SPSのサブ画像パーティションレイアウトシグナリングを更新することにより、画像のサブ画像パーティションレイアウトを再配置することもできる。図6は、提案された解決策の一実施形態を使用して、画像内のサブ画像パーティションレイアウトを再配置することを示している。図6の1行目は、元のサブ画像パーティションレイアウトを使用した元のビットストリームとデコードされた画像を示し、図6の2行目は、新しいサブ画像パーティションレイアウトのSPSのパーティションレイアウトのシグナリングが変更されたビットストリームを示している。図6の1行目と2行目に示されているように、可用性規則が変更されるため、ビットストリーム内のコード化されたサブ画像の順序を変更する必要はない。2行目に示されているパーティションレイアウトは、可用性規則のため、現在のVVCドラフトでは許可されていないことに注意されたい。図6は、提案された解決策の実施形態におけるサブ画像パーティションレイアウトの変更も示している。
本発明の概念の実施形態は、インジケータを使用して、ビデオシーケンス内の1つまたは複数の画像のセグメントパーティションレイアウトにおけるセグメントの順序付けに適用される1つまたは複数の規則を指定するという概念を導入する。セグメントパーティションレイアウトのセグメントの順序付けに適用される1つまたは複数の規則は、以降、順序付け規則または順序付け制約と呼ばれる。順序付け規則は、セグメントパーティションレイアウトの画像セグメントのインデックスおよび/またはビットストリーム内のコード化されたセグメントの順序付けを規制する。
セグメントは画像の一部であり、セグメントはタイル、タイルグループ、スライス、長方形のスライス、またはサブ画像に相当し得る。この説明では、セグメントと画像セグメントという用語は同じ意味で使用される。提案された解決策では、1つまたは複数の構文要素を使用して、セグメントパーティションレイアウトの画像セグメントを順序付けるための1つまたは複数の規則を指定することができる。画像セグメントの順序付けの規則は、画像内のセグメントの位置を決定するプロセスに影響を与え得る。「制約」と「規則」という用語は同じ意味で使用されている。「任意の順序付け」という用語は「制約のない順序付け」と同じであり、両方とも順序付け規則と見なされる。本明細書に記載の実施形態は、本発明を限定するものではない。ここで説明する実施形態は組み合わせることができる。
以下の説明は、本発明の概念の様々な実施形態を提示する。これらの実施形態は、教育例として提示されており、本発明の概念の範囲を限定するものとして解釈されるべきではない。例えば、記載された本発明の概念の特定の詳細は、記載された主題の範囲から逸脱することなく、修正、省略、または拡張され得る。
図7は、本明細書で説明されるようにビットストリームをエンコーディングするために使用され得るエンコーダ700の動作環境の例を示す。エンコーダ700は、ネットワーク702および/またはストレージ704からメディアを受信し、以下に説明するようにメディアをビットストリームにエンコーディングし、エンコーディングされた媒体をネットワーク708を介してデコーダ706に送信する。ストレージデバイス704は、ストアまたはストリーミングビデオサービスのストレージリポジトリ、別個のストレージコンポーネント、モバイルデバイスのコンポーネントなどのビデオのストレージデポジトリの一部であり得る。デコーダ706は、ディスプレイ712を有するデバイス710の一部であり得る。デバイス710は、モバイルデバイス、セットトップデバイス、ヘッドマウントディスプレイなどであり得る。
図8は、本発明の概念のいくつかの実施形態に従ってビデオフレームをデコードするように構成されたデコーダ706の要素を示すブロック図である。示されるように、デコーダ706は、他のデバイス/エンティティ/機能などとの通信を提供するように構成されたネットワークインターフェース回路800(ネットワークインターフェースとも呼ばれる)を含み得る。デコーダ706はまた、ネットワークインターフェース回路800に結合されたプロセッサ回路802(プロセッサとも呼ばれる)、およびプロセッサ回路に結合されたメモリ回路804(メモリとも呼ばれる)を含み得る。メモリ回路804は、プロセッサ回路802によって実行されると、プロセッサ回路に、本明細書に開示される実施形態による動作を実行させるコンピュータ可読プログラムコードを含み得る。
他の実施形態によれば、プロセッサ回路802は、別個のメモリ回路が必要とされないように、メモリを含むように規定され得る。本明細書で論じられるように、デコーダ706の動作は、プロセッサ802および/またはネットワークインターフェース800によって実行され得る。例えば、プロセッサ802は、エンコーダ700からの通信を受信するようにネットワークインターフェース800を制御することができる。さらに、モジュールはメモリ804に格納され得、これらのモジュールは、モジュールの命令がプロセッサ802によって実行されるとき、プロセッサ802がそれぞれの動作を実行するように命令を提供し得る。
図9は、本発明の概念のいくつかの実施形態によるビデオフレームをエンコーディングするように構成されたエンコーダ700の要素を示すブロック図である。示されるように、エンコーダ700は、他のデバイス/エンティティ/機能などとの通信を提供するように構成されたネットワークインターフェース回路900(ネットワークインターフェースとも呼ばれる)を含み得る。エンコーダ300はまた、ネットワークインターフェース回路900に結合されたプロセッサ回路902(プロセッサとも呼ばれる)、およびプロセッサ回路に結合されたメモリ回路904(メモリとも呼ばれる)を含み得る。メモリ回路904は、プロセッサ回路902によって実行されると、プロセッサ回路に、本明細書に開示される実施形態による動作を実行させるコンピュータ可読プログラムコードを含み得る。
他の実施形態によれば、プロセッサ回路902は、別個のメモリ回路が必要とされないように、メモリを含むように規定され得る。本明細書で論じられるように、エンコーダ700の動作は、プロセッサ902および/またはネットワークインターフェース900によって実行され得る。例えば、プロセッサ902は、ネットワークインターフェース902を制御して、デコーダ706に通信を送信し、および/または他のエンコーダノード、保管サーバなどの1つまたは複数の他のネットワークノード/エンティティ/サーバからネットワークインターフェース900を介して通信を受信することができる。さらに、モジュールはメモリ904に格納され得、これらのモジュールは、モジュールの命令がプロセッサ902によって実行されるとき、プロセッサ902がそれぞれの動作を実行するように命令を提供し得る。
実施形態1-どの順序付け規則か
本発明の概念の第1の実施形態では、ビットストリーム内の構文要素は、ビットストリーム内のセグメントに適用される順序付け規則を指定する。順序付け規則の例は、可用性規則、第2の実施形態で規定された任意の順序付け、各セグメントの第1のCTUアドレスの昇順での順序付けなどである。順序付け規則では、1つまたは複数の可能な順序付けのみが許可され、許可される順序付けまたは許可されない順序付けが記述され得る。
一実施例では、構文要素が第1の値と等しい場合、可用性規則がビットストリーム内のセグメントの順序に適用され、シグナリングされた構文要素が第2の値と等しい場合、セグメントの順序は、各セグメントの左上のCTUアドレスの昇順である必要がある。この実施形態の変形例では、構文要素の1つの値は、セグメントの固定(デフォルトまたは信号)順序付けを指定し、構文要素の別の値は、セグメントの順序付けのための特定の順序付け規則(可用性規則など)を指定する。この実施形態の別の変形例では、3つ以上の可能な順序付け規則があり、構文要素の値は、セグメントパーティションレイアウトのセグメントに適用される順序付け規則を指定する。
デコーダは、この実施形態について、以下のステップのすべてまたはサブセットを実行し得る。
1.セグメントパーティションレイアウトのセグメントの順序に適用される規則のセットを指定するインジケータ値を、ビットストリームからデコードする。
2.セグメントパーティションレイアウトを指定する構文要素のセットを、ビットストリームからデコードする。
3.構文要素のセットと規則のセットに基づいてセグメントパーティションレイアウトを導出する。
4.セグメントパーティションレイアウトを使用して、ビットストリーム内の少なくとも1つの画像をデコードする。
エンコーダは、この実施形態について、以下のステップのすべてまたはサブセットを実行し得る。
1.ビットストリームにエンコーディングされる少なくとも1つの画像のセグメントのセグメントパーティションレイアウトを規定する。
2.ビットストリームにエンコーディングされる少なくとも1つの画像のセグメントパーティションレイアウトにおけるセグメントの順序付けに関する規則のセットを選択する。
3.少なくとも1つの画像のセグメントパーティションレイアウトをビットストリームにエンコーディングする。
4.インジケータ値をビットストリームにエンコーディングし、インジケータ値は、少なくとも1つの画像のセグメントパーティションレイアウトのセグメントの順序付けに関する規則のセットを識別する。
5.セグメントパーティションレイアウトを使用して、少なくとも1つの画像をビットストリームにエンコーディングする。
エンコーダのステップ1および2は、任意の順序で実行され得る。エンコーダのステップ3および4も、任意の順序で実行され得る。
実施形態2-独立したセグメントの任意の順序
本発明の概念の別の実施形態では、1つ(または複数)の構文要素がビットストリームに存在し、構文要素の1つの値は、セグメントパーティションレイアウトにおける任意のセグメント順序付けが画像セグメントの少なくともサブセットに適用されることを示す。この実施形態の一例では、構文要素の第1の値は、セグメントパーティションレイアウトの任意のセグメント順序が少なくとも画像セグメントのサブセットに適用されることを指定し、構文要素の第2の値は、デコードされたときに、各セグメントが、各セグメントの左側の境界全体と上部の境界全体が画像の境界で構成されるか、以前にデコードされたセグメントの境界で構成されることを指定する。
この実施形態の一例では、構文要素の第1の値は、デコードされたときに、少なくとも1つのセグメントが、まだデコードされていないセグメントの境界で構成される、左側の境界の少なくとも一部および/または上部の境界の一部を有し得ることを指定し、構文要素の第2の値は、デコードされたときに、各セグメントが、各セグメントの左側の境界全体と上部の境界全体が画像の境界で構成されるか、以前にデコードされたセグメントの境界で構成されることを指定する。構文要素はフラグであってもよく、SPS、PPS、DPS、VPSなど、VUI、画像ヘッダまたはセグメントヘッダなど、パラメータセットに存在し得る。構文要素は、arbitrary_segments_ordering構文要素またはindependent_segments構文要素と呼ばれ得る。
この実施形態の例では、独立したサブ画像構文要素がビットストリームに存在し、独立したサブ画像構文要素の値が0に等しい場合は、ビットストリーム内のすべてのサブ画像がサブ画像の可用性規則に従っていることを示し、独立したサブ画像構文要素の値が1に等しい場合は、ビットストリーム内のサブ画像がサブ画像の可用性規則に従わない可能性があることを示す。この実施形態の別の変形例では、independent_segments構文要素は、例えば、SPSまたはDPSに存在するシーケンスまたはビットストリーム全体に対して信号を送ることができる。この実施形態のさらに別の変形例では、独立したセグメント構文要素は、画像または画像のセットごとに信号で伝えられる。
この実施形態のさらに別の変形例では、independent_segments構文要素はまた、セグメント境界がデコードプロセスで画像境界として扱われる場合、つまり、independent_segments構文要素が第1の値に等しい場合、セグメント境界を越えたイントラ予測、インター予測、およびループフィルタリングが許可されないことを指定する。VVCドラフト仕様の現在のバージョンに加えて、この好ましい実施形態の構文例を表5に示す。VVCドラフトと比較した変更は太字で示されている。
Figure 2023508880000006
VVCドラフト仕様の現在のバージョンに加えて、この好ましい実施形態のセマンティクスの例を以下に示す。VVCドラフトと比較した変更は二重下線で示されている。
3.定義:
3.56仮説的ストリームスケジューラ(HSS):仮説的参照デコーダへのビットストリームの入力のタイミングとデータフローに関して、ビットストリームまたはデコーダの適合性をチェックするために使用される仮説的配信メカニズム。
3.57独立したサブ画像:デコードプロセスで画像として扱われるサブ画像
3.57独立したサブ画像(代替定義):サブ画像の境界がデコードプロセスで画像の境界として扱われるサブ画像
3.58有益:この仕様に準拠するための必須要件を確立せず、したがってこの仕様の不可欠な部分とは見なされない、この仕様で提供されるコンテンツを指すために使用される用語。

sps_independent_subpics_flagが1の場合、CLVSのサブ画像境界を越えて、イントラ予測、インター予測、およびループ内フィルタリング操作を実行できないことを指定する。sps_independent_subpics_flagが0の場合、CLVSのサブ画像境界を越えたイントラ予測、インター予測、またはループ内フィルタリング操作が許可され得ることを指定する。存在しない場合、sps_independent_subpics_flagの値は0に等しいと推測される
subpic_treated_as_pic_flag[i]が1の場合、CLVS内の各コード化画像のi番目のサブ画像が、ループ内フィルタリング操作を除いて、デコードプロセスで画像として扱われることを指定する。subpic_treated_as_pic_flag[i]が0の場合、CLVS内の各コード化画像のi番目のサブ画像が、ループ内フィルタリング操作を除いて、デコードプロセスで画像として扱われないことを指定する。存在しない場合、subpic_treated_as_pic_flag[i]の値はsps_independent_subpics_flagに等しいと推測される。
loop_filter_across_subpic_enabled_flag[i]が1の場合、CLVS内の各コード化画像のi番目のサブ画像の境界を越えてループ内フィルタリング操作を実行できることを指定する。loop_filter_across_subpic_enabled_flag[i]が0の場合、CLVS内の各コード化画像のi番目のサブ画像の境界を越えてループ内フィルタリング操作が実行されないことを指定する。存在しない場合、loop_filter_across_subpic_enabled_pic_flag[i]の値は、!sps_independent_subpics_flagと等しいと推測される。
次の制約が適用されることがビットストリーム適合の要件である。
- 任意の2つのサブ画像subpicAおよびsubpicBについて、subpicAのサブ画像インデックスがsubpicBのサブ画像インデックスよりも小さい場合、subPicAのコード化されたスライスNALユニットは、デコード順にsubPicBのコード化されたスライスNALユニットの前に配置される。
- サブ画像の順序は、デコードされたときに、各サブ画像が、各サブ画像の左側の境界全体と上部の境界全体が画像の境界で構成されるか、以前にデコードされたサブ画像の境界で構成されるか、独立したサブ画像の境界で構成されるようにする必要がある。
以下は、第2の制約の代替案である(VVCドラフトと比較した変更は二重下線で示されている)。
sps_independent_subpics_flagが0に等しい場合、サブ画像の順序は、デコードされたときに、各サブ画像が、各サブ画像の左側の境界全体と上部の境界全体が画像の境界で構成されるか、以前にデコードされたサブ画像の境界で構成されるようにする必要がある。
デコーダは、ビットストリームから現在の画像をデコードするために、この実施形態について以下のステップのすべてまたはサブセットを実行し得る。
1.ビットストリームから第1のインジケータ値をデコードし、第1のインジケータ値は、現在の画像が複数の画像セグメントにセグメント化されていることを指定する値と同じである。
2.ビットストリームから第2のインジケータ値をデコードし、第2のインジケータ値は、画像内のすべてのセグメントが独立していることを指定する値に等しく、すべてのセグメントが独立しているということは、インター予測、イントラ予測、またはループフィルタリングのために他のセグメントのプロパティに依存しているセグメントがないことを意味する。第2のインジケータの存在は、第1のインジケータ値が、現在の画像が複数の画像セグメントにセグメント化されることを指定する値に等しいことを条件とすることができる。
3.ビットストリームから現在の画像をデコードし、
a.現在の画像のどのセグメントも、インター予測、イントラ予測、またはループフィルタリングのために他のセグメントのプロパティに依存しておらず、
b.ビットストリーム内のセグメントのデコード順序は、少なくとも1つのセグメントが、画像の境界で構成される、または以前にデコードされたサブ画像の境界で構成される、少なくとも1つのセグメントの左側の境界全体および上部の境界全体を持たないようになっている。
ステップ3bは、ステップ3bが一実施形態に存在し、別の実施形態には存在しないように任意である。あるいは、デコーダは、ビットストリームから現在の画像をデコードするために、この実施形態のために以下のステップのすべてまたはサブセットを実行することができる。
1.ビットストリームから最初のインジケータ値をデコードし、第1のインジケータ値は、現在の画像が複数の画像セグメントにセグメント化されていることを指定する値と同じである。
2.ビットストリームから第2のインジケータ値をデコードし、第2のインジケータ値は、画像のセグメント境界が画像のデコードプロセスで画像の境界として扱われることを指定する値に等しくなる。第2のインジケータの存在は、第1のインジケータ値が、現在の画像が複数の画像セグメントにセグメント化されることを指定する値に等しいことを条件とすることができる。
3.ビットストリームから現在の画像をデコードし、
a.画像のセグメント境界は画像境界として扱われ、
b.ビットストリーム内のセグメントのデコード順序は、少なくとも1つのセグメントが、画像の境界で構成される、または以前にデコードされたサブ画像の境界で構成される、少なくとも1つのセグメントの左側の境界全体および上部の境界全体を持たないようになっている。
ステップ3bは、ステップ3bが一実施形態に存在し、別の実施形態には存在しないように任意である。
エンコーダは、現在の画像をビットストリームにエンコーディングするために、この実施形態について以下のステップのすべてまたはサブセットを実行し得る。
1.第1のインジケータ値をビットストリームにエンコーディングし、第1のインジケータ値は、現在の画像が複数の画像セグメントにセグメント化されていることを指定する値と同じである。
2.第2のインジケータ値をビットストリームにエンコーディングし、第2のインジケータ値は、画像のセグメント境界が画像のエンコーディングプロセスで画像境界として扱われることを指定する値に等しくなる。第2のインジケータの存在は、第1のインジケータ値が、現在の画像が複数の画像セグメントにセグメント化されることを指定する値に等しいことを条件とすることができる。
3.現在の画像をビットストリームにエンコーディングし、
a.画像のセグメント境界は画像境界として扱われ、
b.ビットストリーム内のセグメントの順序は、少なくとも1つのセグメントが、画像の境界で構成される、または先行するサブ画像の境界で構成される、少なくとも1つのセグメントの左側の境界全体および上部の境界全体を持たないようになっている。
上記のエンコーディング手順の代替手順2は以下のとおりである。
2.第2のインジケータ値をビットストリームにエンコーディングし、第2のインジケータ値は、画像内のすべてのセグメントが独立していることを指定する値に等しく、すべてのセグメントが独立しているということは、インター予測、イントラ予測、またはループフィルタリングのために他のセグメントのプロパティに依存しているセグメントがないことを意味する。第2のインジケータの存在は、第1のインジケータ値が、現在の画像が複数の画像セグメントにセグメント化されることを指定する値に等しいことを条件とすることができる。
実施形態3-セグメントのサブセットの順序付け規則
本発明の概念のこの実施形態では、1つまたは複数の構文要素は、セグメントの1つまたは複数のサブセットに適用されるセグメント順序付け規則を指定する。構文要素の値は、サブセット間で一般的であってもよいし、各サブセットに固有であってもよい。
この実施形態の一例は、従属セグメントとして規定されたセグメントのサブセットに可用性規則が適用される場合、境界を越えたインターまたはイントラ予測またはループフィルタリングが存在する可能性のあるセグメントを意味し、任意のセグメント順序付け規則が独立したセグメントに適用されることは、境界を越えたインターまたはイントラ予測およびループフィルタリングのないセグメントを意味する。セグメントサブセットは、画像内の空間位置など、例えば、画像内の最初のCTUまたは画像内の最後のCTUを含むセグメント、または左側の画像境界と境界を共有しているセグメント、または閾値よりも少ないCTUの数を含むセグメントなどのセグメントサイズなどの他のプロパティのセグメントプロパティに基づいて作成され得る。
この実施形態の一例は、画像の最初のCTUを含むセグメントを除くすべてのセグメントに任意の順序付けが適用される場合である。
実施形態4-セグメントのサブセットの順序付け規則
本発明の概念のこの実施形態では、順序付け規則のセットがレベル1のセグメントに適用され、同じまたは別の規則のセットが、各レベル1のセグメントが1つまたは複数のレベル2のセグメントを含む各レベル1のセグメントのレベル2のセグメントに適用される。一例では、レベル1のセグメントはサブ画像であり、レベル2のセグメントはスライスである。レベル1のセグメントがサブ画像で、レベル2のセグメントがスライスである一例では、任意の順序がサブ画像に適用され、可用性規則が各サブ画像のスライスに適用される。
この実施形態の別の例は、それぞれが2つ以上の長方形スライスを含む少なくとも2つのサブ画像があり、サブ画像内の長方形スライスの順序が可用性規則に従うが、画像内のサブ画像の順序が可用性規則に従わない場合である。
実施形態5-セグメントのサブセットの順序付け規則
本発明の概念のこの実施形態は、第1のビットストリームから第1の画像のコード化されたセグメントAを抽出することと、第2のビットストリームから第2の画像のコード化されたセグメントBを抽出することと、コード化されたセグメントAおよびコード化されたセグメントBを、第3のビットストリームでシグナリングされた、前述の実施形態のいずれかによる、1つまたは複数の構文要素によって指定された順序付け規則に従った順序で、第3のビットストリームの第3の画像に書き込む(マージ)ことと、を含む。
この実施形態の1つのバージョンでは、構文要素は、ビットストリーム内のセグメントが複数のビットストリームからマージされた可能性があることを示している。ビットストリームマージまたはスティッチャーは、この実施形態の以下のステップのすべてまたはサブセットを実行して、2つ以上の入力ビットストリームを1つの出力ビットストリームにマージすることができる。
1.各入力ビットストリームのデコードプロセスで、各入力ビットストリームのセグメント境界が画像境界として扱われることを、各入力ビットストリームについて決定する。
2.第1のインジケータ値を出力ビットストリームにエンコーディングし、第1のインジケータ値は、出力ビットストリーム内の画像が複数の画像セグメントにセグメント化される(またはセグメント化される)ことを指定する値に等しくなる。
3.第2のインジケータ値を出力ビットストリームにエンコーディングし、第2のインジケータ値は、出力ビットストリーム内の画像のセグメント境界が、ビットストリーム内の画像のデコードプロセスで画像境界として扱われる(または扱われる)ことを指定する値に等しくなる。第2のインジケータの存在は、第1のインジケータ値が、出力ビットストリーム内の画像が複数の画像セグメントにセグメント化される(またはセグメント化される)ことを指定する値に等しいことを条件とすることができる。
4.各入力ビットストリームからの少なくとも1つのコード化されたセグメントをマージして、出力ビットストリームのコード化された画像を形成し、
a.コード化された画像のセグメント境界は、コード化された画像が(後で)デコードされるときに画像境界として扱われ、
b.(任意選択的に)コード化された画像内のセグメントの順序は、少なくとも1つのセグメントが、画像の境界で構成される、または前のセグメントの境界で構成される、少なくとも1つのセグメントの左側の境界全体および上部の境界全体を持たないようにする。
5.コード化された画像を出力ビットストリームに書き込むか出力する。
次に、本発明の概念のいくつかの実施形態による、図10のフローチャートを参照して、デコーダ706(図8のブロック図の構造を使用して実施される)の動作について説明する。上記のように、モジュールは図8のメモリ804に格納され得、これらのモジュールは、モジュールの命令が処理回路802によって実行されるとき、処理回路802がフローチャートのそれぞれの動作を実行するように命令を提供し得る。
図10は、実施形態による、ビットストリームから少なくとも1つの現在の画像をデコードするための方法を示している。この方法は、図7に示されるエンコーダ700からビットストリームを受信することができるデコーダ706によって実行され得る。図10に戻ると、ブロック1000の処理回路802は、複数の規則のうちの少なくとも1つの規則を指定するインジケータ値をビットストリームからデコードすることができ、少なくとも1つの規則は、ビットストリームにコード化されたセグメントの順序付けに適用され、セグメントはセグメントパーティションレイアウトのセグメントである。例えば、デコーダ706は、複数の規則のうちの少なくとも1つの規則を指定するインジケータ値をビットストリームからデコードするように動作することができ、少なくとも1つの規則はビットストリームにコード化されたセグメントの順序付けに適用され、セグメントはセグメントパーティションレイアウトのセグメントである。いくつかの実施形態では、複数の規則は、可用性規則、任意のセグメントの順序付け、各セグメントの第1のコーディングツリーユニットアドレスの昇順における順序付け、セグメントレイアウト内のセグメントのサイズまたは位置に基づく順序付け規則、および2つ以上の規則の組合せ、のうちの1つまたは複数を含む。
ブロック1002において、処理回路802は、セグメントパーティションレイアウトを指定する構文要素のセットをビットストリームからデコードし得る。前の例を続けると、デコーダ706は、セグメントパーティションレイアウトを指定する構文要素のセットをビットストリームからデコードするように動作し得る。ブロック1004において、処理回路802は、構文要素のセットに基づいてセグメントパーティションレイアウトを導出し得る。デコーダ706は、構文要素のセットに基づいてセグメントパーティションレイアウトを導出するように動作し得る。いくつかの実施形態では、処理回路802は、構文要素のセットおよび少なくとも1つの規則に基づいてセグメントパーティションレイアウトを導出し得る。処理回路802は、構文要素のセットの1つまたは複数の構文要素からインジケータ値をデコードし得る。別の実施形態では、処理回路802は、構文要素のセットの1つまたは複数の構文要素からインジケータ値をデコードすることによって、ビットストリームからインジケータ値をデコードし得る。別の実施形態では、処理回路802は、パラメータセット内の1つまたは複数の構文要素からインジケータ値をデコードすることによって、ビットストリームからインジケータ値をデコードし得る。
図10に戻ると、ブロック1006の処理回路802は、セグメントパーティションレイアウトを使用してビットストリーム内の少なくとも1つの現在の画像をデコードすることができ、セグメントの順序は、指定された少なくとも1つの規則に準拠する。前の例を続けると、デコーダ706は、セグメントパーティションレイアウトを使用してビットストリーム内の少なくとも1つの現在の画像をデコードするように動作することができ、セグメントの順序付けは、指定された少なくとも1つの規則に準拠する。いくつかの実施形態では、構文要素のセットをデコードすることは、構文要素のセットの構文要素からインジケータ値をデコードすることを含み得る。この実施形態では、処理回路802は、セグメントパーティションレイアウトにおける任意のセグメント順序付けが、第1の値であるインジケータ値に応答する少なくとも1つの現在の画像のすべてのセグメントに適用されることを決定し得る。例えば、デコーダ706は、構文要素のセットの構文要素からインジケータ値をデコードし、セグメントパーティションレイアウトの任意のセグメント順序が、第1の値であるインジケータ値に応答する少なくとも1つの現在の画像のすべてのセグメントに適用されることを決定する、ように動作し得る。
いくつかの実施形態では、第2の値であるインジケータ値に応答して、デコードされたとき、各セグメントは、画像境界からなる、または以前にデコードされたセグメントの境界からなる、左境界全体および上部境界全体を有する。いくつかの他の実施形態では、第1の値であるインジケータ値に応答して、セグメントのデコード順序は、少なくとも1つのセグメントに、画像の境界または以前にデコードされたセグメントの境界で構成される左側の境界全体と上部の境界全体がないことを含む。
処理回路802は、構文要素のセットの構文要素の値をデコードし得る。例えば、デコーダ706は、構文要素のセットの構文要素の値をデコードし得る。処理回路802は、ビットストリーム内のすべてのセグメントが、第1の値である値に応答するセグメントの可用性規則に従うことを決定し得る。この例では、デコーダ706は、ビットストリーム内のすべてのセグメントが、第1の値である値に応答するセグメントの可用性規則に従うことを決定し得る。あるいは、処理回路802は、ビットストリーム内のセグメントが、第2の値である値に応答するセグメントの可用性規則に従わない可能性があると判断し得る。例えば、デコーダ706は、ビットストリーム内のセグメントが、第2の値である値に応答するセグメントの可用性規則に従わない可能性があると判断し得る。
処理回路802は、ビットストリームから第1のインジケータ値をデコードすることができ、第1のインジケータ値は、少なくとも1つの現在の画像が複数のセグメントにセグメント化されているかどうかを指定する。処理回路802は、ビットストリームから第2のインジケータ値をデコードすることができ、第2のインジケータ値は、少なくとも1つの現在の画像内のすべてのセグメントが独立しているかどうかを指定する。例えば、デコーダ706は、ビットストリームから第1のインジケータ値をデコードすることができ、第1のインジケータ値は、少なくとも1つの現在の画像が複数のセグメントにセグメント化されるかどうかを指定する。デコーダ706はまた、ビットストリームから第2のインジケータ値をデコードすることができ、第2のインジケータ値は、少なくとも1つの現在の画像内のすべてのセグメントが独立しているかどうかを指定する。いくつかの他の実施形態では、処理回路802は、ビットストリームから第2のインジケータ値をデコードすることができ、第2のインジケータ値は、少なくとも1つの現在の画像のデコードにおいて、少なくとも1つの現在の画像のすべてのセグメント境界が画像境界として扱われるかどうかを指定する。例えば、デコーダは、ビットストリームから第2のインジケータ値をデコードすることができ、第2のインジケータ値は、少なくとも1つの現在の画像のデコードにおいて、少なくとも1つの現在の画像のすべてのセグメント境界が画像境界として扱われるかどうかを指定する。
いくつかの実施形態では、第2のインジケータ値およびインジケータ値は、同じインジケータ値である。第1のインジケータは、現在の画像が複数のセグメントにセグメント化されていることを指定し得る。第2のインジケータ値は、現在の画像のすべてのセグメントが独立していることを指定し得る。あるいは、第2のインジケータ値は、現在の画像のすべてのセグメント境界が、現在の画像のデコードにおいて画像境界として扱われることを指定し得る。この実施形態では、処理回路802は、各セグメントをデコードすることによって現在の画像をデコードすることができ、現在の画像内のセグメントは、現在の画像内の他のセグメントの任意のプロパティに依存しない。
処理回路802は、構文要素のセットの構文要素をデコードし、任意の順序を指定する構文要素に応答して画像内の第1のコーディングツリーユニットを含むセグメントを除いて、少なくとも1つの現在の画像のすべてのセグメントに任意の順序を適用し得る。例えば、デコーダ706は、構文要素のセットの構文要素をデコードし、任意の順序を指定する構文要素に応答して画像内の第1のコーディングツリーユニットを含むセグメントを除いて、少なくとも1つの現在の画像のすべてのセグメントに任意の順序を適用し得る。いくつかの実施形態では、少なくとも1つの現在の画像は、複数のレベルに複数のセグメントを有する。この実施形態では、処理回路802は、第1のセットの順序付け規則を第1のレベルのセグメントに適用し、第2のセットの順序付け規則を第1のレベルのセグメントの第2のレベルのセグメントに適用し得る。例えば、デコーダ706は、少なくとも1つの現在の画像が複数のレベルに複数のセグメントを有する場合、第1のセットの順序付け規則を第1のレベルのセグメントに適用し、第2のセットの順序付け規則を第1のレベルのセグメントの第2のレベルのセグメントに適用し得る。セグメントは、タイル、タイルグループ、スライス、長方形スライス、またはビットストリームのサブ画像の1つを含み得る。いくつかの実施形態では、第1レベルのセグメントはサブ画像であり、第2レベルのセグメントはスライスである。
次に、本発明の概念のいくつかの実施形態による、図11および図12のフローチャートを参照して、エンコーダ700(図9のブロック図の構造を使用して実施される)の動作について説明する。上記のように、モジュールは図9のメモリ904に格納され得、これらのモジュールは、モジュールの命令が処理回路902によって実行されるとき、処理回路902がフローチャートのそれぞれの動作を実行するように命令を提供し得る。
図11は、本発明の概念の実施形態による、少なくとも1つの現在の画像をビットストリームにエンコーディングするための方法を示す。この方法は、図7に示されるデコーダ706にビットストリームを送信することができるエンコーダ700によって実行され得る。図11に戻ると、処理回路902は、ブロック1100において、ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントのためのセグメントパーティションレイアウトを規定し得る。例えば、エンコーダ700は、ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントのためのセグメントパーティションレイアウトを規定し得る。ブロック1102の処理回路902は、図11に示されるように、ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントパーティションレイアウトにおけるセグメントの順序付けのための規則のセットから少なくとも1つの規則を選択し得る。例えば、エンコーダ700は、ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントパーティションレイアウトにおけるセグメントの順序付けのための規則のセットから少なくとも1つの規則を選択し得る。いくつかの実施形態では、複数の規則は、可用性規則、任意のセグメントの順序付け、各セグメントの第1のコーディングツリーユニットアドレスの昇順における順序付け、セグメントレイアウト内のセグメントのサイズまたは位置に基づく順序付け規則、および2つ以上の規則の組合せ、のうちの1つまたは複数を含む。
ブロック1104において、処理回路902は、少なくとも1つの現在の画像のセグメントパーティションレイアウトをビットストリームにエンコーディングすることができる。前の例を続けると、エンコーダ700は、少なくとも1つの現在の画像のセグメントパーティションレイアウトをビットストリームにエンコーディングすることができる。処理回路902は、セグメントパーティションレイアウトにおける任意のセグメント順序付けがすべてのセグメントに適用されることを決定することに応答して、構文要素の第1の値をビットストリームにエンコーディングすることができる。例えば、エンコーダ700は、セグメントパーティションレイアウトにおける任意のセグメント順序がすべてのセグメントに適用されることを決定することに応答して、構文要素の第1の値をビットストリームにエンコーディングすることができる。
任意のセグメント順序を適用する場合、コード化されたセグメントは、少なくとも1つのセグメントが、画像境界で構成される、または以前にデコードされたセグメントの境界で構成される、左境界全体および上部境界全体を有さないような順序でビットストリームに配置される。処理回路902はまた、各セグメントが画像境界からなるかまたは以前にデコードされたセグメントの境界からなる全体の左境界および全体の上部境界を有するべきであると決定することに応答して、構文要素の第2の値をビットストリームにエンコーディングすることができる。例えば、エンコーダ700は、各セグメントが画像境界からなるかまたは以前にデコードされたセグメントの境界からなる全体の左境界および全体の上部境界を有するべきであると決定することに応答して、構文要素の第2の値をビットストリームにエンコーディングすることができる。
処理回路902は、ビットストリーム内のすべてのセグメントがセグメントの可用性規則に従うことを決定することに応答して、構文要素の第1の値をビットストリームにエンコーディングすることができる。例えば、エンコーダ700は、ビットストリーム内のすべてのセグメントがセグメントの可用性規則に従うことを決定することに応答して、構文要素の第1の値をビットストリームにエンコーディングすることができる。処理回路902は、ビットストリーム内のサブ画像がセグメントの可用性規則に従わないと決定することに応答して、構文要素の第2の値をビットストリームにエンコーディングすることができる。前の例を続けると、エンコーダ700は、ビットストリーム内のサブ画像がセグメントの可用性規則に従わないと判断したことに応答して、構文要素の第2の値をビットストリームにエンコーディングすることができる。
図11に戻ると、ブロック1106において、処理回路902は、インジケータ値をビットストリームにエンコーディングすることができ、インジケータ値は、少なくとも1つの現在の画像のセグメントパーティションレイアウトにおけるセグメントの順序付けのために選択された規則のセットを識別する。例えば、エンコーダ700は、インジケータ値をビットストリームにエンコーディングすることができ、インジケータ値は、少なくとも1つの現在の画像のセグメントパーティションレイアウトにおけるセグメントの順序付けのために選択された規則のセットを識別する。ブロック1108において、処理回路902は、セグメントパーティションレイアウトを使用して、少なくとも1つの現在の画像をビットストリームにエンコーディングすることができる。例を続けると、エンコーダ700は、セグメントパーティションレイアウトを使用して、少なくとも1つの現在の画像をビットストリームにエンコーディングすることができる。
処理回路902は、第1のインジケータ値をビットストリームにエンコーディングすることができ、第1のインジケータ値は、現在の画像が複数のセグメントにセグメント化されることに応答して少なくとも1つの現在の画像が複数のセグメントにセグメント化されることを指定する。例えば、エンコーダ700は、第1のインジケータ値をビットストリームにエンコーディングすることができ、第1のインジケータ値は、現在の画像が複数のセグメントにセグメント化されることに応答して少なくとも1つの現在の画像が複数のセグメントにセグメント化されることを指定する。処理回路902はまた、第2のインジケータ値をビットストリームにエンコーディングすることができ、第2のインジケータ値は、少なくとも1つの現在の画像内のすべてのセグメントが、画像内のすべてのセグメントが独立していることに応答して独立していることを指定する。前の例を続けると、エンコーダ700は、第2のインジケータ値をビットストリームにエンコーディングすることができ、第2のインジケータ値は、少なくとも1つの現在の画像のすべてのセグメントが、画像のすべてのセグメントが独立していることに応答して独立していることを指定する。別の実施形態では、処理回路902は、第2のインジケータ値をビットストリームにエンコーディングすることができ、第2のインジケータ値は、少なくとも1つの現在の画像のすべてのセグメント境界が画像境界として扱われることに応答して少なくとも1つの現在の画像のデコードにおいて、少なくとも1つの現在の画像のすべてのセグメント境界が画像境界として扱われることを指定する。別の例では、エンコーダ706は、第2のインジケータ値をビットストリームにエンコーディングすることができ、第2のインジケータ値は、少なくとも1つの現在の画像のすべてのセグメント境界が画像境界として扱われることに応答して少なくとも1つの現在の画像のデコードにおいて、少なくとも1つの現在の画像のすべてのセグメント境界が画像境界として扱われることを指定する。
処理回路902は、画像内の第1のコーディングツリーユニットを含むセグメントを除いて、少なくとも1つの現在の画像のすべてのセグメントに任意の順序を適用することに応答して、画像のすべてのセグメントに任意の順序を指定する構文要素をエンコーディングすることができる。例えば、エンコーダ700は、画像内の第1のコーディングツリーユニットを含むセグメントを除く、少なくとも1つの現在の画像のすべてのセグメントに任意の順序を適用することに応答して、画像のすべてのセグメントに任意の順序を指定する構文要素をエンコーディングすることができる。いくつかの実施形態では、少なくとも1つの現在の画像は、複数のレベルに複数のセグメントを有する。この実施形態では、処理回路902は、第1のセットの順序付け規則を第1のレベルのセグメントに適用し、第2のセットの順序付け規則を第1のレベルのセグメント内の第2のレベルのセグメントに適用することができる。例えば、エンコーダ700は、第1のセットの順序付け規則を第1のレベルのセグメントに適用し、第2のセットの順序付け規則を第1のレベルのセグメント内の第2のレベルのセグメントに適用することができる。
いくつかの実施形態では、エンコーダは、2つ以上の入力ビットストリームを受信することができる。図12を参照すると、ブロック1200において、処理回路902は、第1のインジケータ値を出力ビットストリームにエンコーディングすることができ、第1のインジケータ値は、出力ビットストリーム内の画像が複数のセグメントにセグメント化されることを指定する値に等しい。例えば、エンコーダ700は、2つ以上の入力ビットストリームを受信することができる。この状況では、エンコーダ700は、第1のインジケータ値を出力ビットストリームにエンコーディングすることができ、第1のインジケータ値は、出力ビットストリーム内の画像が複数のセグメントにセグメント化されることを指定する値に等しい。
ブロック1202において、処理回路902は、2つ以上の入力ビットストリームのそれぞれにおけるセグメント境界が、ビットストリームのデコードにおいて画像境界として扱われるべきかどうかを決定することができる。前の例を続けると、エンコーダ700は、2つ以上の入力ビットストリームのそれぞれのセグメント境界が、ビットストリームのデコードにおいて画像境界として扱われるべきかどうかを決定することができる。
ブロック1204において、処理回路902は、第2のインジケータ値を出力ビットストリームにエンコーディングすることができ、第2のインジケータ値は、出力ビットストリーム内の画像のセグメント境界が、2つ以上の入力ビットストリームのセグメント境界が画像境界として扱われることを決定したことに応答して、出力ビットストリーム内の画像のデコードプロセスにおいて画像境界として扱われることを指定する値に等しい。前の例を続けると、エンコーダ700は、第2のインジケータ値を出力ビットストリームにエンコーディングすることができ、第2のインジケータ値は、出力ビットストリーム内の画像のセグメント境界が、2つ以上の入力ビットストリームのセグメント境界が画像境界として扱われることを決定したことに応答して、出力ビットストリーム内の画像のデコードプロセスにおいて画像境界として扱われることを指定する値に等しい。
ブロック1206において、処理回路902は、2つ以上の入力ビットストリームのそれぞれからの少なくとも1つのコード化セグメントをマージして、出力ビットストリームのコード化画像を形成し、1208コード化画像を出力ビットストリームに出力することができる。前の例を続けると、エンコーダ700は、2つ以上の入力ビットストリームのそれぞれからの少なくとも1つのコード化セグメントをマージして、出力ビットストリームのコード化画像を形成し、コード化画像を出力ビットストリームに出力することができる。
例示的な実施形態を以下に論じる。
1.ビットストリームから少なくとも1つの現在の画像をデコードするための方法であって、前記方法は、
前記ビットストリームから、複数の規則のうちの少なくとも1つの規則を指定するインジケータ値をデコード(1000)することであって、前記少なくとも1つの規則は、前記ビットストリームでコード化されたセグメントの順序付けに適用され、前記セグメントは、セグメントパーティションレイアウト内のセグメントである、ことと、
セグメントパーティションレイアウトを指定する前記構文要素のセットをビットストリームからデコード(1002)することと、
前記構文要素のセットに基づいてセグメントパーティションレイアウトを導出(1004)することと、
セグメントパーティションレイアウトを使用して、ビットストリーム内の少なくとも1つの現在の画像をデコード(1006)することであって、前記セグメントの前記順序付けは、指定された少なくとも1つの規則に準拠する、ことと、
を含む、方法。
2.前記複数の規則が、可用性規則と、任意のセグメントの順序付けと、各セグメントの第1のコーディングツリーユニットアドレスの昇順の順序付けと、セグメントレイアウト内の前記セグメントのサイズまたは位置に基づく順序付け規則と、2つ以上の規則の組合せと、のうちの1つまたは複数を含む、実施形態1に記載の方法。
3.前記構文要素のセットに基づいてセグメントパーティションレイアウトを導出することは、前記構文要素のセットおよび前記少なくとも1つの規則に基づいて前記セグメントパーティションレイアウトを導出することを含む、実施形態1または2に記載の方法。
4.前記ビットストリームからインジケータ値をデコードすることは、前記構文要素のセットの1つまたは複数の構文要素から前記インジケータ値をデコードすることを含む、実施形態1から3のいずれか1つに記載の方法。
5.前記構文要素のセットの1つまたは複数の構文要素から前記インジケータ値をデコードすることは、パラメータセット内の1つまたは複数の構文要素から前記インジケータ値をデコードすることを含む、実施形態1から4のいずれか1つに記載の方法。
6.パラメータセットがシーケンスパラメータセット、SPS、または画像パラメータセット、PPS、またはビデオパラメータセット、VPSである、実施形態1から5のいずれか1つに記載の方法。
7.前記構文要素のセットをデコードすることは、
前記構文要素のセットの構文要素から前記インジケータ値をデコードすることと、
前記インジケータ値が第1の値であることに応答して、前記セグメントパーティションレイアウトの任意のセグメント順序が前記少なくとも1つの現在の画像のすべてのセグメントに適用されることを決定することと、
前記値が第2の値であることに応答して、各セグメントが、デコードされたときに、画像の境界で構成される、または以前にデコードされたセグメントの境界で構成される、左側の境界全体および上部の境界全体を有することと、
を含む、実施形態1から6のいずれか1つに記載の方法。
8.前記値が第1の値であることに応答して、前記セグメントのデコード順序は、少なくとも1つのセグメントが、画像境界からなる、または以前にデコードされたセグメントの境界からなる、左境界全体および/または上部境界全体を有さないことを含む、実施形態7に記載の方法。
9.前記構文要素のセットをデコードすることは、
前記構文要素のセットの構文要素の値をデコードすることと、
前記値が第1の値であることに応答して、前記ビットストリーム内のすべてのセグメントがセグメントの可用性規則に従っていると判断することと、
前記値が第2の値であることに応答して、前記ビットストリーム内のセグメントが前記セグメントの可用性規則に従わない可能性があると判断することと、
を含む、実施形態1から8のいずれか1つに記載の方法。
10.ビットストリームからの第1のインジケータ値をデコードすることであって、前記第1のインジケータ値は、前記少なくとも1つの現在の画像が複数のセグメントにセグメント化されているかどうかを指定する、ことと、
前記ビットストリームから第2のインジケータ値をデコードすることであって、前記第2のインジケータ値は、前記少なくとも1つの現在の画像内のすべてのセグメントが独立しているかどうかを指定する、ことと、
をさらに含む、実施形態1から9のいずれか1つに記載の方法。
11.前記ビットストリームから第1のインジケータ値をデコードすることであって、前記第1のインジケータ値は、前記少なくとも1つの現在の画像が複数のセグメントにセグメント化されているかどうかを指定する、ことと、
前記ビットストリームから第2のインジケータ値をデコードすることであって、前記第2のインジケータ値は、前記少なくとも1つの現在の画像のデコードにおいて、前記少なくとも1つの現在の画像のすべてのセグメント境界が画像境界として扱われるかどうかを指定する、ことと、
をさらに含む、実施形態1から9のいずれか1つに記載の方法。
12.前記第2のインジケータ値および前記インジケータ値が同じインジケータの値である、実施形態10または11に記載の方法。
13.前記第1のインジケータは、前記現在の画像が複数のセグメントにセグメント化されていることを指定し、前記第2のインジケータ値は、前記現在の画像のすべてのセグメントが独立していることを指定するか、または前記第2のインジケータ値は、前記現在の画像のすべてのセグメント境界が現在の画像のデコードで画像境界として扱われることを指定し、前記現在の画像をデコードすることは、現在の画像内のセグメントが現在の画像内の他のセグメントの任意のプロパティに依存していない各セグメントをデコードすることを含む、実施形態10から12のいずれか1つに記載の方法。
14.前記構文要素のセットの構文要素をデコードすることと、
任意の順序を指定する前記構文要素に応答して、前記現在の画像の第1のコーディングツリーユニットを含むセグメントを除く、前記少なくとも1つの現在の画像のすべてのセグメントに任意の順序を適用することと、
をさらに含む、実施形態1から13のいずれか1つに記載の方法。
15.前記少なくとも1つの現在の画像が複数のレベルに複数のセグメントを有し、
順序付け規則の第1のセットを第1のレベルのセグメントに適用することと、
順序付け規則の第2のセットを第1のレベルのセグメント内の第2のレベルのセグメントに適用することと、
をさらに含む、実施形態1から14のいずれか1つに記載の方法。
16.セグメントがタイル、タイルグループ、スライス、長方形スライス、またはサブ画像のいずれかである、実施形態1から15のいずれか1つに記載の方法。
17.第1レベルのセグメントがサブ画像であり、第2レベルのセグメントがスライスである、実施形態15または16に記載の方法。
18.通信ネットワーク用のデコーダであって、
プロセッサと、
前記プロセッサと結合されたメモリであって、前記メモリは、前記プロセッサによって実行されたときに、前記プロセッサに、
ビットストリームからインジケータ値をデコード(1000)することであって、前記インジケータ値は、複数の規則のうちの少なくとも1つの規則を指定し、前記少なくとも1つの規則は、前記ビットストリームでコード化されたセグメントの順序付けに適用され、前記セグメントは、セグメントパーティションレイアウト内のセグメントである、ことと、
セグメントパーティションレイアウトを指定する前記構文要素のセットをビットストリームからデコード(1002)することと、
構文要素のセットに基づいてセグメントパーティションレイアウトを導出(1004)することと、
前記セグメントパーティションレイアウトを使用して前記ビットストリーム内の少なくとも1つの現在の画像をデコード(1006)することであって、前記セグメントの前記順序付けは、指定された前記少なくとも1つの規則に準拠する、ことと、
を含む動作を実行させる命令を含む、メモリと、
を備える、通信ネットワーク用のデコーダ。
19.前記メモリは、前記プロセッサによって実行されると、前記プロセッサに実施形態2から17のいずれか1つによる動作を実行させるさらなる命令を含む、実施形態18に記載のデコーダ。
20.コンピュータ実行可能命令を含むコンピュータプログラム製品であって、デバイスに含まれるプロセッサ上で前記コンピュータ実行可能命令が実行されるときに、前記デバイスに、
ビットストリームから、複数の規則のうちの少なくとも1つの規則を指定するインジケータ値をデコード(1000)することであって、前記少なくとも1つの規則は、前記ビットストリームでコード化されたセグメントの順序付けに適用され、前記セグメントは、セグメントパーティションレイアウト内のセグメントである、ことと、
ビットストリームから、セグメントパーティションレイアウトを指定する構文要素のセットをデコード(1002)することと、
前記構文要素のセットに基づいてセグメントパーティションレイアウトを導出(1004)することと、
前記セグメントパーティションレイアウトを使用して、前記ビットストリーム内の前記少なくとも1つの現在の画像をデコード(1006)することであって、前記セグメントの前記順序付けは、指定された前記少なくとも1つの規則に準拠する、ことと、
を含む動作を実行させるように構成されたコンピュータ実行可能命令を含む、コンピュータプログラム製品。
21.前記デバイスに含まれるプロセッサ上で実行されると、デバイスに実施形態2から17のいずれか1つに記載の方法を実行させるように構成されたさらなるコンピュータ実行可能命令を含む、実施形態20に記載のコンピュータプログラム製品。
22.コンピュータ可読記憶媒体を含むコンピュータプログラム製品であって、コンピュータ可読記憶媒体は、デバイスに含まれるプロセッサ上で前記コンピュータ実行可能命令が実行されるときに、前記デバイスに、
ビットストリームから、複数の規則のうちの少なくとも1つの規則を指定するインジケータ値をデコード(1000)することであって、前記少なくとも1つの規則は、ビットストリームでコード化されたセグメントの順序付けに適用され、前記セグメントは、セグメントパーティションレイアウト内のセグメントである、ことと、
ビットストリームから、セグメントパーティションレイアウトを指定する構文要素のセットをデコード(1002)することと、
前記構文要素のセットに基づいてセグメントパーティションレイアウトを導出(1004)することと、
前記セグメントパーティションレイアウトを使用して、ビットストリーム内の前記少なくとも1つの現在の画像をデコード(1006)することであって、前記セグメントの前記順序付けは、指定された少なくとも1つの規則に準拠する、ことと、
を含む動作を実行させるように構成された、コンピュータ実行可能命令、を有する、コンピュータプログラム製品。
23.前記デバイスに含まれるプロセッサ上で実行されると、前記デバイスに実施形態2から17のいずれか1つに記載の方法を実行させるように構成されたさらなるコンピュータ実行可能命令を有する、実施形態22に記載のコンピュータプログラム製品。
24.少なくとも1つの現在の画像をビットストリームにエンコーディングするための方法であって、
前記ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントのセグメントパーティションレイアウトを規定(1100)することと、
前記ビットストリームにエンコーディングされる前記少なくとも1つの現在の画像のセグメントパーティションレイアウトにおける前記セグメントの前記順序付けのための規則のセットから少なくとも1つの規則を選択する(1102)ことと、
前記少なくとも1つの現在の画像の前記セグメントパーティションレイアウトを前記ビットストリームにエンコーディング(1104)することと、
インジケータ値をビットストリームにエンコーディング(1106)することであって、前記インジケータ値は、前記少なくとも1つの現在の画像の前記セグメントパーティションレイアウトにおける前記セグメントの前記順序付けのために選択された前記規則のセットを識別する、ことと、
前記セグメントパーティションレイアウトを使用して、前記少なくとも1つの現在の画像を前記ビットストリームにエンコーディング(1108)することと、
を含む、方法。
25.前記複数の規則は、可用性規則と、任意のセグメントの順序付けと、各セグメントの第1のコーディングツリーユニットアドレスの昇順における順序付けと、前記セグメントレイアウト内の前記セグメントの前記サイズまたは位置に基づく順序付け規則と、2つ以上の規則の組合せと、のうちの1つまたは複数を含む、実施形態24に記載の方法。
26.前記セグメントパーティションレイアウトを使用して前記少なくとも1つの現在の画像を前記ビットストリームにエンコーディングすることは、
前記セグメントパーティションレイアウトの任意のセグメント順序付けをすべてのセグメントに適用すると判断した場合、構文要素の第1の値を前記ビットストリームにエンコーディングすることと、
各セグメントが画像境界または以前にデコードされたセグメントの境界で構成される左側の境界全体と上部の境界全体を持つ必要があると判断した場合、構文要素の第2の値を前記ビットストリームにエンコーディングすることと、
を含む、実施形態24または25に記載の方法。
27.前記コード化されたセグメントは、任意のセグメント順序付けを適用する場合、少なくとも1つのセグメントに、画像の境界または以前にデコードされたセグメントの境界で構成される左側の境界全体および/または上部の境界全体がないような順序で前記ビットストリームに配置される、実施形態26に記載の方法。
28.前記ビットストリーム内のすべてのセグメントがセグメントの可用性規則に従っていると判断した場合、構文要素の第1の値を前記ビットストリームにエンコーディングすることと、
前記ビットストリーム内のセグメントが前記セグメントの可用性規則に従わないと判断した場合、前記構文要素の第2の値を前記ビットストリームにエンコーディングすることと、
をさらに含む、実施形態24から27のいずれか1つに記載の方法。
29.現在の画像が複数のセグメントにセグメント化されていると判断した場合、第1のインジケータ値を前記ビットストリームにエンコーディングすることであって、前記第1のインジケータ値は、少なくとも1つの現在の画像が複数のセグメントにセグメント化されることを指定する、ことと、
現在の画像のすべてのセグメントが独立している場合、第2のインジケータ値を前記ビットストリームにエンコーディングすることであって、前記第2のインジケータ値は、少なくとも1つの現在の画像のすべてのセグメントが独立していることを指定する、ことと、
をさらに含む、実施形態24から28のいずれか1つに記載の方法。
30.現在の画像が複数のセグメントにセグメント化されている場合、第1のインジケータ値を前記ビットストリームにエンコーディングすることであって、前記第1のインジケータ値は、前記少なくとも1つの現在の画像が複数のセグメントにセグメント化されることを指定する、ことと、
少なくとも1つの現在の画像のすべてのセグメント境界が画像境界として扱われている場合、第2のインジケータ値を前記ビットストリームにエンコーディングすることであって、前記第2のインジケータ値は、前記少なくとも1つの現在の画像のすべてのセグメント境界が、前記少なくとも1つの現在の画像のデコードにおいて画像境界として扱われることを指定する、ことと、
をさらに含む、実施形態24から28のいずれか1つに記載の方法。
31.現在の画像の第1のコーディングツリーユニットを含むセグメントを除いて、前記少なくとも1つの前記現在の画像のすべてのセグメントに任意の順序を適用することに応答して、前記現在の画像のすべてのセグメントに任意の順序を指定する構文要素をエンコーディングすること、
をさらに含む、実施形態24から30のいずれか1つに記載の方法。
32.前記少なくとも1つの現在の画像が複数のレベルの複数のセグメントを有し、前記方法が、
順序付け規則の第1のセットを第1のレベルのセグメントに適用することと、
順序付け規則の第2のセットを前記第1のレベルのセグメント内の第2のレベルのセグメントに適用することと、
をさらに含む、実施形態24から31のいずれか1つに記載の方法。
33.前記エンコーダが2つ以上の入力ビットストリームを受信し、前記方法が、
第1のインジケータ値を出力ビットストリームにエンコーディング(1200)することであって、前記第1のインジケータ値は、前記出力ビットストリーム内の画像が複数のセグメントにセグメント化されることを指定する値に等しい、ことと、
前記2つ以上の入力ビットストリームのそれぞれのセグメント境界が前記ビットストリームのデコードにおいて画像境界として扱われるべきかどうかを決定する(1202)、ことと、
前記2つ以上の入力ビットストリームのセグメント境界が画像境界として扱われると判断した場合、第2のインジケータ値を出力ビットストリームにエンコーディング(1204)することであって、前記第2のインジケータ値は、出力ビットストリーム内の画像のセグメント境界が前記出力ビットストリーム内の画像のデコードプロセスにおいて画像境界として扱われることを指定する値に等しい、ことと、
前記2つ以上の入力ビットストリームのそれぞれからの少なくとも1つのコード化されたセグメントをマージして(1260)、前記出力ビットストリームのコード化された画像を形成することと、
コード化された画像を出力ビットストリームに出力(1208)することと、
をさらに含む、実施形態24から32のいずれか1つに記載の方法。
34.セグメントがタイル、タイルグループ、スライス、長方形スライス、またはサブ画像のいずれかである、実施形態24から33のいずれか1つに記載の方法。
35.通信ネットワーク用のエンコーダであって、前記エンコーダは、
プロセッサと、
前記プロセッサと結合されたメモリであって、前記メモリは、前記プロセッサによって実行されたときに、前記プロセッサに、
ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントのセグメントパーティションレイアウトを規定(1100)することと、
ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントパーティションレイアウトにおけるセグメントの順序付けのための規則のセットから少なくとも1つの規則を選択する(1102)ことと、
少なくとも1つの現在の画像のセグメントパーティションレイアウトをビットストリームにエンコーディング(1104)することと、
インジケータ値をビットストリームにエンコーディングする(1106)ことであって、前記インジケータ値は、少なくとも1つの現在の画像のセグメントパーティションレイアウトにおけるセグメントの順序付けのために選択された規則のセットを識別する、ことと、
セグメントパーティションレイアウトを使用して、少なくとも1つの現在の画像をビットストリームにエンコーディング(1108)することと、
を含む動作を実行させる命令を含む、メモリと、
を備える、エンコーダ。
36.前記メモリは、前記プロセッサによって実行されたときに、前記プロセッサに実施形態24から34のいずれか1つに記載の動作を実行させるさらなる命令を含む、実施形態35に記載のエンコーダ。
37.コンピュータ実行可能命令を含むコンピュータプログラム製品であって、前記コンピュータ実行可能命令がデバイスに含まれるプロセッサ上で実行されるときに、前記デバイスに、
ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントのセグメントパーティションレイアウトを規定(1100)することと、
ビットストリームにエンコーディングされる少なくとも1つの現在の画像の前記セグメントパーティションレイアウトにおける前記セグメントの前記順序付けのための規則のセットから少なくとも1つの規則を選択する(1102)ことと、
前記少なくとも1つの現在の画像のセグメントパーティションレイアウトを前記ビットストリームにエンコーディング(1104)することと、
インジケータ値を前記ビットストリームにエンコーディングする(1106)ことであって、前記インジケータ値は、前記少なくとも1つの現在の画像のセグメントパーティションレイアウトにおけるセグメントの順序付けのために選択された規則のセットを識別する、ことと、
前記セグメントパーティションレイアウトを使用して、前記少なくとも1つの現在の画像を前記ビットストリームにエンコーディング(1108)することと、
を含む動作を実行させるように構成された、コンピュータ実行可能命令、
を含む、コンピュータプログラム製品。
38.コンピュータ実行可能命令がデバイスに含まれるプロセッサ上で実行されるときに、前記デバイスに実施形態24から34のいずれか1つに記載の方法を実行させるように構成されたさらなるコンピュータ実行可能命令を含む、実施形態37に記載のコンピュータプログラム製品。
39.コンピュータ可読記憶媒体を含むコンピュータプログラム製品であって、前記コンピュータ可読記憶媒体は、デバイスに含まれるプロセッサ上で前記コンピュータ実行可能命令が実行されるときに、前記デバイスに、
ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントのセグメントパーティションレイアウトを規定(1100)することと、
前記ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントパーティションレイアウトにおけるセグメントの順序付けのための規則のセットから少なくとも1つの規則を選択する(1102)ことと、
前記少なくとも1つの現在の画像のセグメントパーティションレイアウトを前記ビットストリームにエンコーディング(1104)することと、
インジケータ値をビットストリームにエンコーディングする(1106)ことであって、前記インジケータ値は、少なくとも1つの現在の画像のセグメントパーティションレイアウトにおけるセグメントの順序付けのために選択された規則のセットを識別する、ことと、
セグメントパーティションレイアウトを使用して、少なくとも1つの現在の画像をビットストリームにエンコーディング(1108)することと、
を含む動作を実行させるように構成された、コンピュータ実行可能命令、を有する、
コンピュータプログラム製品。
40.デバイスに含まれるプロセッサ上でコンピュータ実行可能命令がさらに実行されると、デバイスに、実施形態24から34のいずれか1つに記載の方法を実行させるように構成されたさらなるコンピュータ実行可能命令を有する、実施形態39のコンピュータプログラム製品。
本開示で使用される様々な略語/頭字語について以下に説明する。
略語 説明
ALF アダプティブループフィルタ
APS アダプティブパラメータセット
CLVS コード化された層のビデオシーケンス
CVS コード化されたビデオストリーム
CVSS CVS開始
CU コーディングユニット
CTU コーディングツリーユニット
DPS デコードパラメータセット
GDR 段階的なデコードの更新
HEVC 高効率ビデオコーディング
IRAP イントラランダムアクセスポイント
LMCS 輝度マッピングおよび彩度スケーリング
MPEG Motion Picture Experts Group
NAL ネットワーク抽象化層
PPS 画像パラメータセット
RPL 参考画像リスト
SEI 補足強化層
SPS シーケンスパラメータセット
VCL ビデオコーディング層
VPS ビデオパラメータセット
VVC 多用途ビデオコーディング
追加の説明を以下に示す。
一般に、ここで使用されるすべての用語は、異なる意味が明確に与えられている、および/またはそれが使用される文脈から暗示されている場合を除き、関連する技術分野での通常の意味に従って解釈される。要素、装置、コンポーネント、手段、ステップなどへのすべての言及は、特に明記されていない限り、要素、装置、コンポーネント、手段、ステップなどの少なくとも1つの例を指すものとして公然と解釈されるべきである。本明細書に開示される任意の方法のステップは、ステップが別のステップの後にまたは先行するように明示的に記述されていない限り、および/またはステップが別のステップの後にまたは先行しなければならないことが暗黙的に示されている場合を除き、開示された正確な順序で実行する必要はない。本明細書に開示される実施形態のいずれかの任意の特徴は、適切な場合はいつでも、他の任意の実施形態に適用することができる。同様に、任意の実施形態の任意の利点は、任意の他の実施形態に適用することができ、逆もまた同様である。同封の実施形態の他の目的、特徴および利点は、以下の説明から明らかになるであろう。
本明細書で企図される実施形態のいくつかは、添付の図面を参照してより完全に説明される。しかしながら、他の実施形態は、本明細書に開示される主題の範囲内に含まれるが、開示される主題は、本明細書に記載される実施形態のみに限定されると解釈されるべきではない。むしろ、これらの実施形態は、主題の範囲を当業者に伝えるための例として提供されている。
図13は、いくつかの実施形態による仮想化環境を示している。
図13は、エンコーダおよび/またはデコーダのいくつかの実施形態によって実装される機能が仮想化され得る仮想化環境1300を示す概略ブロック図である。この文脈では、仮想化とは、ハードウェアプラットフォーム、ストレージデバイス、およびネットワークリソースの仮想化を含み得る装置またはデバイスの仮想バージョンを作成することを意味する。本明細書で使用される場合、仮想化は、ノード(例えば、仮想化された基地局または仮想化された無線アクセスノード)、またはデバイス(例えば、UE、ワイヤレスデバイス、またはその他のタイプの通信デバイス)またはそのコンポーネントに適用され得、機能の少なくとも一部が1つまたは複数の仮想コンポーネント(例えば、1つまたは複数のネットワークで、1つまたは複数の物理処理ノードで実行される1つまたは複数のアプリケーション、コンポーネント、機能、仮想マシン、またはコンテナを介して)として実装される実装に関連する。
いくつかの実施形態では、本明細書で説明されるエンコーダおよび/またはデコーダの機能のいくつかまたはすべては、1つまたは複数のハードウェアノード1330によってホストされる1つまたは複数の仮想環境1300に実装される1つまたは複数の仮想マシンによって実行される仮想コンポーネントとして実装され得る。さらに、仮想ノードが無線アクセスノードではないか、または無線接続を必要としない実施形態(例えば、コアネットワークノード)では、ネットワークノードは完全に仮想化され得る。
これらの機能は、本明細書に開示される実施形態のいくつかの特徴、機能、および/または利点のいくつかを実施するように機能する1つまたは複数のアプリケーション1320(あるいは、ソフトウェアインスタンス、仮想アプライアンス、ネットワーク機能、仮想ノード、仮想ネットワーク機能などと呼ばれることもある)によって実装され得る。アプリケーション1320は、処理回路1360およびメモリ1390を含むハードウェア1330を提供する仮想化環境1300で実行される。メモリ1390は、処理回路1360によって実行可能な命令1395を含み、それにより、アプリケーション1320は、本明細書に開示される特徴、利益、および/または機能のうちの1つまたは複数を提供するように動作可能である。
仮想化環境1300は、商用オフザシェルフ(commercial off-the-shelf:COTS)プロセッサ、専用の特定用途向け集積回路(Application Specific Integrated Circuits:ASIC)、または、デジタルまたはアナログのハードウェアコンポーネントまたは専用プロセッサを含むその他のタイプの処理回路、であり得る1つまたは複数のプロセッサまたは処理回路1360のセットを含む汎用または特殊目的のネットワークハードウェアデバイス1330を含む。各ハードウェアデバイスは、命令1395または処理回路1360によって実行されるソフトウェアを一時的に格納するための非永続メモリであり得るメモリ1390-1を含み得る。各ハードウェアデバイスは、物理ネットワークインターフェース1380を含む、ネットワークインターフェースカードとしても知られる、1つまたは複数のネットワークインターフェースコントローラ(network interface controllers:NIC)1370を備え得る。各ハードウェアデバイスはまた、ソフトウェア1395および/または処理回路1360によって実行可能な命令をその中に格納した、非一時的で永続的な機械可読記憶媒体1390-2を含み得る。ソフトウェア1395は、1つまたは複数の仮想化層1350(ハイパーバイザとも呼ばれる)をインスタンス化するためのソフトウェア、仮想マシン1340を実行するためのソフトウェア、ならびに本明細書で説明されるいくつかの実施形態に関連して説明される機能、特徴、および/または利点を実行することを可能にするソフトウェアを含む、任意のタイプのソフトウェアを含み得る。
仮想マシン1340は、仮想処理、仮想メモリ、仮想ネットワーキングまたはインターフェース、および仮想ストレージを含み、対応する仮想化層1350またはハイパーバイザによって実行され得る。仮想アプライアンス1320のインスタンスの異なる実施形態は、1つまたは複数の仮想マシン1340上に実装され得、実装は、異なる方法で行われ得る。
動作中、処理回路1360は、ソフトウェア1395を実行して、仮想マシンモニタ(virtual machine monitor:VMM)と呼ばれることもあるハイパーバイザまたは仮想化層1350をインスタンス化する。仮想化層1350は、仮想マシン1340に対してネットワークハードウェアのように見える仮想オペレーティングプラットフォームを提示し得る。
図13に示すように、ハードウェア1330は、汎用または特定のコンポーネントを備えたスタンドアロンネットワークノードであり得る。ハードウェア1330は、アンテナ13225を含み得、仮想化を介していくつかの機能を実装し得る。あるいは、ハードウェア1330は、多くのハードウェアノードは連携して動作し、とりわけ、アプリケーション1320のライフサイクル管理を監視する管理およびオーケストレーション(management and orchestration:MANO)13100を介して管理されるハードウェアのより大きなクラスターの一部(例えば、データセンタまたは顧客宅内機器(customer premise equipment:CPE)内など)であり得る。
ハードウェアの仮想化は、一部の文脈ではネットワーク機能仮想化(network function virtualization:NFV)と呼ばれる。NFVを使用して、多くのネットワーク機器タイプを業界標準の大容量サーバハードウェア、物理スイッチ、データセンタに配置できる物理ストレージ、および顧客宅内機器に統合できる。
NFVの文脈では、仮想マシン1340は、物理的な非仮想化マシンで実行されているかのようにプログラムを実行する物理マシンのソフトウェア実装であってもよい。各仮想マシン1340、およびその仮想マシンを実行するハードウェア1330のその部分は、その仮想マシン専用のハードウェアであろうと、および/またはその仮想マシンによって他の仮想マシン1340と共有されるハードウェアであろうと、別個の仮想ネットワーク要素(virtual network elements:VNE)を形成する。
依然としてNFVの文脈では、仮想ネットワーク機能(VNF)は、ハードウェアネットワークインフラストラクチャ1330上で1つまたは複数の仮想マシン1340で実行される特定のネットワーク機能をハンドリングし、図13のアプリケーション1320に対応する。
いくつかの実施形態では、それぞれが1つまたは複数の送信機13220および1つまたは複数の受信機13210を含む1つまたは複数の無線ユニット13200を、1つまたは複数のアンテナ13225に結合され得る。無線ユニット13200は、1つまたは複数の適切なネットワークインターフェースを介してハードウェアノード1330と直接通信することができ、仮想コンポーネントと組み合わせて使用して、仮想ノードに無線アクセスノードまたは基地局などの無線機能を提供することができる。
いくつかの実施形態では、ハードウェアノード1330と無線ユニット13200との間の通信に代替的に使用され得る制御システム13230を使用して、いくつかの信号伝達を行うことができる。
本明細書に開示される任意の適切なステップ、方法、特徴、機能、または利点は、1つまたは複数の仮想装置の1つまたは複数の機能ユニットまたはモジュールを介して実行することができる。各仮想装置は、これらの機能ユニットの数を含み得る。これらの機能ユニットは、1つまたは複数のマイクロプロセッサまたはマイクロコントローラを含み得る処理回路、ならびにデジタル信号プロセッサ(digital signal processors:DSP)、専用デジタルロジックなどを含み得る他のデジタルハードウェアを介して実装され得る。処理回路は、メモリに格納されたプログラムコードを実行するように構成され得、これは、読み取り専用メモリ(read-only memory:ROM)、ランダムアクセスメモリ(random-access memory:RAM)、キャッシュメモリ、フラッシュメモリデバイス、光記憶装置などの1つまたは複数のタイプのメモリを含み得る。メモリに格納されたプログラムコードは、1つまたは複数の通信および/またはデータ通信プロトコルを実行するためのプログラム命令、ならびに本明細書に記載の1つまたは複数の技術を実行するための命令を含む。いくつかの実装形態では、処理回路を使用して、本開示の1つまたは複数の実施形態に従って、それぞれの機能ユニットに対応する機能を実行させることができる。
ユニットという用語は、電子機器、電気機器、および/または電子機器の分野で従来の意味を有し得、例えば、本明細書に記載されているような、それぞれのタスク、手順、計算、出力、および/または表示機能などを実行するための電気および/または電子回路、デバイス、モジュール、プロセッサ、メモリ、論理ソリッドステートおよび/またはディスクリートデバイス、コンピュータプログラムまたは命令を含み得る。
以下では、さらなる定義および実施形態が議論される。
本発明の概念の様々な実施形態の上記の説明において、本明細書で使用される用語は、特定の実施形態を説明することのみを目的としており、本発明の概念を限定することを意図するものではないことを理解されたい。別段の定義がない限り、本明細書で使用されるすべての用語(技術用語および科学用語を含む)は、現在の発明概念が属する当業者によって一般に理解されるのと同じ意味を有する。さらに、一般的に使用される辞書で定義されているような用語は、この明細書および関連技術の文脈におけるそれらの意味と一致する意味を有すると解釈されるべきであり、ここで明示的に定義されていない限り、理想的または過度に形式的な意味で解釈されることはないことが理解されよう。
要素が別の要素に「接続」、「結合」、「応答」、またはそれらの変形であると呼ばれる場合、それは他の要素に直接接続、結合、または応答することができ、あるいは介在する要素が存在し得る。対照的に、要素が別の要素に「直接接続されている」、「直接結合されている」、「直接応答している」、またはそれらの変形であると呼ばれる場合、介在する要素は存在しない。同様の数字は、全体を通して同様の要素を指す。さらに、本明細書で使用される「結合された」、「接続された」、「応答性」、またはそれらの変形は、無線で結合された、接続された、または応答性を含み得る。本明細書で使用される場合、単数形「a」、「an」および「the」は、文脈が明らかに他のことを示さない限り、複数形も含むことを意図している。よく知られている機能または構造は、簡潔さおよび/または明確にするために詳細に説明されていない場合がある。「および/または」(略称「/」)という用語は、関連するリストされたアイテムの1つまたは複数のありとあらゆる組合せを含む。
本明細書では、第1、第2、第3などの用語を使用して様々な要素/操作を説明することができるが、これらの要素/操作はこれらの用語によって限定されるべきではないことが理解されよう。これらの用語は、ある要素/操作を別の要素/操作から区別するためにのみ使用される。したがって、いくつかの実施形態における第1の要素/操作は、本発明の概念の教示から逸脱することなく、他の実施形態における第2の要素/操作と呼ぶことができる。同じ参照番号または同じ参照指定子は、明細書全体で同じまたは類似の要素を示す。
本明細書で使用される場合、「備える(comprise)」、「備える(comprising)」、「備える(comprises)」、「含む(include)」、「含む(including)」、「含む(includes)」、「有する(have)」、「有する(has)」、「有する(having)」、またはそれらの変形という用語は、開放形式であり、1つまたは複数の記載された特徴、整数、要素、ステップ、コンポーネント、または機能を含むが、1つまたは複数の他の特徴、整数、要素、ステップ、コンポーネント、機能、またはそれらのグループの存在または追加を排除するものではない。さらに、本明細書で使用されるように、ラテン語の「exempli gratia」に由来する一般的な略語「e.g.」は、前述の項目の一般的な例または例を紹介または指定するために使用でき、そのような項目を限定することを意図したものではない。ラテン語の「id est」に由来する一般的な略語「i.e.」は、より一般的な朗読から特定の項目を指定するために使用され得る。
例示的な実施形態は、コンピュータで実施される方法、装置(システムおよび/またはデバイス)および/またはコンピュータプログラム製品のブロック図および/またはフローチャート図を参照して本明細書で説明される。ブロック図および/またはフローチャート図のブロック、およびブロック図および/またはフローチャート図のブロックの組合せは、1つまたは複数のコンピュータ回路によって実行されるコンピュータプログラム命令によって実施できることが理解される。これらのコンピュータプログラム命令は、コンピュータおよび/または他のプログラム可能なデータ処理装置のプロセッサを介して実行される命令が、トランジスタ、メモリ位置に格納された値、および、ブロック図および/またはフローチャートブロックまたは複数のブロックで指定された機能/動作を実装し、それによって、ブロック図および/またはフローチャートブロックで指定された機能/行為を実施するための手段(機能)および/または構造を作成するような回路内の他のハードウェアコンポーネントを変換および制御するような機械を製造する、汎用コンピュータ回路、専用コンピュータ回路、および/または他のプログラム可能なデータ処理回路のプロセッサ回路に提供され得る。
これらのコンピュータプログラム命令はまた、コンピュータまたは他のプログラム可能なデータ処理装置を、コンピュータ可読媒体に記憶された命令が、ブロック図および/またはフローチャートブロックまたは複数のブロックで指定された機能/行為を実施する命令を含む製品を製造するように、特定の方法で機能するように指示することができる有形のコンピュータ可読媒体に格納され得る。したがって、本発明の概念の実施形態は、ハードウェア、および/または、まとめて「回路」、「モジュール」、またはそれらの変形と呼ばれ得るデジタル信号プロセッサなどのプロセッサ上で動作するソフトウェア(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)で具体化され得る。
一部の代替実装では、ブロックに記載されている機能/動作がフローチャートに記載されている順序とは異なり得ることにも留意されたい。例えば、連続して表示される2つのブロックは、実際には実質的に同時に実行されてもよく、または、関連する機能/動作に応じて、ブロックが逆の順序で実行されてもよい。さらに、フローチャートおよび/またはブロック図の所与のブロックの機能は、複数のブロックに分離され得、および/またはフローチャートおよび/またはブロック図の2つ以上のブロックの機能は、少なくとも部分的に統合され得る。最後に、他のブロックは、図示されたブロックの間に追加/挿入され得る、および/またはブロック/操作は、本発明の概念の範囲から逸脱することなく省略され得る。さらに、一部の図には、通信の主な方向を示すために通信パス上の矢印が含まれているが、通信は、描かれた矢印とは反対の方向に発生し得ることを理解されたい。
本発明の概念の原理から実質的に逸脱することなく、実施形態に多くの変形および修正を加えることができる。そのようなすべての変形および修正は、本発明の概念の範囲内に本明細書に含まれることが意図されている。したがって、上記の開示された主題は、例示的であり、限定的ではないと見なされるべきであり、実施形態の例は、本発明の概念の精神および範囲内にあるそのようなすべての修正、強化、および他の実施形態を網羅することを意図している。したがって、法律で認められる最大限の範囲で、本発明の概念の範囲は、実施形態およびそれらの同等物の例を含む本開示の最も広い許容可能な解釈によって決定されるべきであり、前述の詳細な説明によって制限または制限されないものとする。

Claims (46)

  1. ビットストリームから少なくとも1つの現在の画像をデコードするための方法であって、前記方法は、
    前記ビットストリームから、複数の規則のうちの少なくとも1つの規則を指定するインジケータ値をデコード(1000)することであって、前記少なくとも1つの規則は、前記ビットストリームにコード化されたセグメントの順序付けに適用され、前記セグメントは、セグメントパーティションレイアウトのセグメントである、インジケータ値をデコードすることと、
    前記ビットストリームから、セグメントパーティションレイアウトを指定する構文要素のセットをデコード(1002)することと、
    前記構文要素のセットに基づいてセグメントパーティションレイアウトを導出(1004)することと、
    セグメントパーティションレイアウトを使用して、ビットストリーム内の少なくとも1つの現在の画像をデコード(1006)することであって、前記セグメントの前記順序付けは、前記指定された少なくとも1つの規則に準拠する、ビットストリーム内の少なくとも1つの現在の画像をデコードすることと、
    を含む、方法。
  2. 前記複数の規則が、可用性規則と、任意のセグメントの順序付けと、各セグメントの第1のコーディングツリーユニットアドレスの昇順の順序付けと、セグメントレイアウト内の前記セグメントのサイズまたは位置に基づく順序付け規則と、2つ以上の規則の組合せと、のうちの1つまたは複数を含む、請求項1に記載の方法。
  3. 前記複数の規則が、各セグメントにおける前記第1のコーディングツリーユニットアドレスの前記昇順の前記順序付けを含む、請求項1または2に記載の方法。
  4. 前記複数の規則が可用性規則を含む、請求項1から3のいずれか一項に記載の方法。
  5. 前記構文要素のセットに基づいてセグメントパーティションレイアウトを導出することは、前記構文要素のセットおよび前記少なくとも1つの規則に基づいて前記セグメントパーティションレイアウトを導出することを含む、請求項1から4のいずれか一項に記載の方法。
  6. 前記ビットストリームから前記インジケータ値をデコードすることは、前記構文要素のセットの1つまたは複数の構文要素から前記インジケータ値をデコードすることを含む、請求項1から5のいずれか一項に記載の方法。
  7. 前記構文要素のセットの1つまたは複数の構文要素から前記インジケータ値をデコードすることは、パラメータセット内の1つまたは複数の構文要素から前記インジケータ値をデコードすることを含む、請求項1から6のいずれか一項に記載の方法。
  8. 前記パラメータセットが、シーケンスパラメータセット(SPS)、または画像パラメータセット(PPS)、またはビデオパラメータセット(VPS)である、請求項1から7のいずれか一項に記載の方法。
  9. 前記パラメータセットがSPSである、請求項1から7のいずれか一項に記載の方法。
  10. 前記ビットストリームから第1のインジケータ値をデコードすることであって、前記第1のインジケータ値は、前記少なくとも1つの現在の画像が複数のセグメントにセグメント化されているかどうかを指定する、第1のインジケータ値をデコードすることと、
    前記ビットストリームから第2のインジケータ値をデコードすることであって、前記第2のインジケータ値は、前記少なくとも1つの現在の画像内のすべてのセグメントが独立しているかどうかを指定する、第2のインジケータ値をデコードすることと、
    をさらに含む、請求項1から9のいずれか一項に記載の方法。
  11. 前記ビットストリームから第1のインジケータ値をデコードすることであって、前記第1のインジケータ値は、前記少なくとも1つの現在の画像が複数のセグメントにセグメント化されているかどうかを指定する、第1のインジケータ値をデコードすることと、
    前記ビットストリームから第2のインジケータ値をデコードすることであって、前記第2のインジケータ値は、前記少なくとも1つの現在の画像のデコードにおいて、前記少なくとも1つの現在の画像のすべてのセグメント境界が画像境界として扱われるかどうかを指定する、第2のインジケータ値をデコードすることと、
    をさらに含む、請求項1から10のいずれか一項に記載の方法。
  12. 前記第1のインジケータは、前記現在の画像が複数のセグメントにセグメント化されていることを指定し、前記第2のインジケータ値は、前記現在の画像のすべてのセグメントが独立していることを指定するか、または前記第2のインジケータ値は、前記現在の画像のすべてのセグメント境界が前記現在の画像のデコードにおいて画像境界として扱われることを指定し、前記現在の画像をデコードすることは、前記現在の画像内のセグメントが前記現在の画像内の他のセグメントの任意のプロパティに依存していない各セグメントをデコードすることを含む、請求項10または11に記載の方法。
  13. 前記少なくとも1つの現在の画像が、複数のレベルの複数のセグメントを有し、前記方法は、
    第1のレベルのセグメントに順序付け規則の第1のセットを適用することと、
    前記第1のレベルのセグメント内の第2のレベルのセグメントに順序付け規則の第2のセットを適用することと、
    をさらに含む、請求項1から12のいずれか一項に記載の方法。
  14. セグメントがタイル、タイルグループ、スライス、長方形スライス、またはサブ画像のいずれかである、請求項1から13のいずれか一項に記載の方法。
  15. セグメントがサブ画像である、請求項1から13のいずれか一項に記載の方法。
  16. 通信ネットワーク用のデコーダ(706)であって、前記デコーダは、
    プロセッサ(802)と、
    前記プロセッサと結合されたメモリ(804)であって、前記メモリは、前記プロセッサによって実行されると、前記プロセッサに、
    ビットストリームからインジケータ値をデコード(1000)することであって、前記インジケータ値は、複数の規則のうちの少なくとも1つの規則を指定し、前記少なくとも1つの規則は、前記ビットストリームにコード化されたセグメントの順序付けに適用され、前記セグメントは、セグメントパーティションレイアウトのセグメントである、ことと、
    前記ビットストリームからセグメントパーティションレイアウトを指定する構文要素のセットをデコード(1002)することと、
    前記構文要素のセットに基づいてセグメントパーティションレイアウトを導出(1004)することと、
    前記セグメントパーティションレイアウトを使用して前記ビットストリーム内の少なくとも1つの現在の画像をデコード(1006)することであって、前記セグメントの前記順序付けは、前記指定された少なくとも1つの規則に準拠する、ことと、
    を含む動作を実行させる命令を含む、メモリ(804)と、
    を備える、デコーダ(706)。
  17. 前記複数の規則が、可用性規則と、任意のセグメントの順序付けと、各セグメントの第1のコーディングツリーユニットアドレスの昇順の順序付けと、セグメントレイアウト内の前記セグメントのサイズまたは位置に基づく順序付け規則と、2つ以上の規則の組合せと、のうちの1つまたは複数を含む、請求項16に記載のデコーダ(706)。
  18. 前記複数の規則が、各セグメントにおける前記第1のコーディングツリーユニットアドレスの前記昇順の前記順序付けを含む、請求項16または17に記載のデコーダ(706)。
  19. 前記複数の規則が可用性規則を含む、請求項16から18のいずれか一項に記載のデコーダ(706)。
  20. 前記構文要素のセットに基づいて前記セグメントパーティションレイアウトを導出する際に、前記メモリは、前記プロセッサによって実行されると、前記構文要素のセットおよび前記少なくとも1つの規則に基づいて前記セグメントパーティションレイアウトを導出することを含む動作を前記プロセッサに実行させる命令を含む、請求項16から19のいずれか一項に記載のデコーダ(706)。
  21. 前記ビットストリームから前記インジケータ値をデコードする際に、前記メモリは、前記プロセッサによって実行されると、前記構文要素のセットの1つまたは複数の構文要素から前記インジケータ値をデコードすることを含む動作を前記プロセッサに実行させる命令を含む、請求項16から20のいずれか一項に記載のデコーダ(706)。
  22. 前記構文要素のセットの1つまたは複数の構文要素から前記インジケータ値をデコードする際に、前記メモリは、前記プロセッサによって実行されると、パラメータセット内の1つまたは複数の構文要素から前記インジケータ値をデコードすることを含む動作を前記プロセッサに実行させる命令を含む、請求項16から21のいずれか一項に記載のデコーダ(706)。
  23. 前記パラメータセットが、シーケンスパラメータセット(SPS)、または画像パラメータセット(PPS)、またはビデオパラメータセット(VPS)である、請求項16から22のいずれか一項に記載のデコーダ(706)。
  24. 前記パラメータセットがSPSである、請求項16から22のいずれか一項に記載のデコーダ(706)。
  25. 前記メモリは、前記プロセッサによって実行されたときに、前記プロセッサに、
    前記ビットストリームから第1のインジケータ値をデコードすることであって、前記第1のインジケータ値は、前記少なくとも1つの現在の画像が複数のセグメントにセグメント化されているかどうかを指定する、ことと、
    前記ビットストリームから第2のインジケータ値をデコードすることであって、前記第2のインジケータ値は、前記少なくとも1つの現在の画像内のすべてのセグメントが独立しているかどうかを指定する、ことと、
    を含むさらなる動作を実行させるさらなる命令を含む、請求項16から24のいずれか一項に記載のデコーダ(706)。
  26. 前記メモリは、前記プロセッサによって実行されたときに、前記プロセッサに、
    前記ビットストリームから第1のインジケータ値をデコードすることであって、前記第1のインジケータ値は、前記少なくとも1つの現在の画像が複数のセグメントにセグメント化されているかどうかを指定する、ことと、
    前記ビットストリームから第2のインジケータ値をデコードすることであって、前記第2のインジケータ値は、前記少なくとも1つの現在の画像のデコードにおいて、前記少なくとも1つの現在の画像のすべてのセグメント境界が画像境界として扱われるかどうかを指定する、ことと、
    を含むさらなる動作を実行させるさらなる命令を含む、請求項16から25のいずれか一項に記載のデコーダ(706)。
  27. 前記第1のインジケータは、前記現在の画像が複数のセグメントにセグメント化されていることを指定し、前記第2のインジケータ値は、前記現在の画像のすべてのセグメントが独立していることを指定するか、または前記第2のインジケータ値は、前記現在の画像のすべてのセグメント境界が前記現在の画像のデコードにおいて画像境界として扱われることを指定し、前記現在の画像をデコードすることは、前記現在の画像内のセグメントが前記現在の画像内の他のセグメントの任意のプロパティに依存していない各セグメントをデコードすることを含む、請求項25または26に記載のデコーダ(706)。
  28. 前記少なくとも1つの現在の画像は、複数のレベルの複数のセグメントを有し、前記メモリは、前記プロセッサによって実行されると、前記プロセッサに、
    第1のレベルのセグメントに順序付け規則の第1のセットを適用することと、
    前記第1のレベルのセグメント内の第2のレベルのセグメントに順序付け規則の第2のセットを適用することと、
    を含むさらなる動作を実行させるさらなる命令を含む、請求項16から27のいずれか一項に記載のデコーダ(706)。
  29. セグメントがタイル、タイルグループ、スライス、長方形スライス、またはサブ画像のいずれかである、請求項16から28のいずれか一項に記載のデコーダ(706)。
  30. 前記セグメントがサブ画像である、請求項29に記載のデコーダ(706)。
  31. 前記ビットストリームから、複数の規則のうちの少なくとも1つの規則を指定するインジケータ値をデコード(1000)することであって、前記少なくとも1つの規則は、前記ビットストリームにコード化されたセグメントの順序付けに適用され、前記セグメントは、セグメントパーティションレイアウトのセグメントである、ことと、
    前記ビットストリームからセグメントパーティションレイアウトを指定する構文要素のセットをデコード(1002)することと、
    前記構文要素のセットに基づいてセグメントパーティションレイアウトを導出(1004)することと、
    セグメントパーティションレイアウトを使用して、ビットストリーム内の少なくとも1つの現在の画像をデコード(1006)することであって、前記セグメントの前記順序付けは、前記指定された少なくとも1つの規則に準拠する、ことと、
    を含む動作を実行するように適合された、デコーダ(706)。
  32. 前記デコーダは、請求項2から15のいずれか一項に記載の動作を実行するようにさらに適合されている、請求項31に記載のデコーダ(706)。
  33. 少なくとも1つの現在の画像をビットストリームにエンコーディングするための方法であって、
    前記ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントのセグメントパーティションレイアウトを規定(1100)することと、
    前記ビットストリームにエンコーディングされる前記少なくとも1つの現在の画像の前記セグメントパーティションレイアウトにおける前記セグメントの前記順序付けのための規則のセットから少なくとも1つの規則を選択する(1102)ことと、
    前記少なくとも1つの現在の画像の前記セグメントパーティションレイアウトを前記ビットストリームにエンコーディング(1104)することと、
    インジケータ値を前記ビットストリームにエンコーディング(1106)することであって、前記インジケータ値は、前記少なくとも1つの現在の画像の前記セグメントパーティションレイアウトにおける前記セグメントの前記順序付けのために選択された前記規則のセットを識別する、インジケータ値をビットストリームにエンコーディングすることと、
    前記セグメントパーティションレイアウトを使用して、前記少なくとも1つの現在の画像を前記ビットストリームにエンコーディング(1108)することと、
    を含む、方法。
  34. 前記複数の規則が、可用性規則と、任意のセグメントの順序付けと、各セグメントの第1のコーディングツリーユニットアドレスの昇順の順序付けと、セグメントレイアウト内の前記セグメントのサイズまたは位置に基づく順序付け規則と、2つ以上の規則の組合せと、のうちの1つまたは複数を含む、請求項33に記載の方法。
  35. 前記ビットストリーム内のすべてのセグメントがセグメントの可用性規則に従っていると判断した場合、構文要素の第1の値を前記ビットストリームにエンコーディングすることと、
    前記ビットストリーム内のセグメントが前記セグメントの前記可用性規則に従わないと判断した場合、前記構文要素の第2の値を前記ビットストリームにエンコーディングすることと、
    をさらに含む、請求項33または34に記載の方法。
  36. 現在の画像が複数のセグメントにセグメント化されている場合に、第1のインジケータ値を前記ビットストリームにエンコーディングすることであって、前記第1のインジケータ値は、前記少なくとも1つの現在の画像が複数のセグメントにセグメント化されることを指定する、第1のインジケータ値をビットストリームにエンコーディングすることと、
    前記現在の画像のすべてのセグメントが独立している場合に、第2のインジケータ値を前記ビットストリームにエンコーディングすることであって、前記第2のインジケータ値は、前記少なくとも1つの現在の画像のすべてのセグメントが独立していることを指定する、第2のインジケータ値をビットストリームにエンコーディングすることと、
    をさらに含む、請求項33から35のいずれか一項に記載の方法。
  37. セグメントがタイル、タイルグループ、スライス、長方形スライス、またはサブ画像のいずれかである、請求項33から36のいずれか一項に記載の方法。
  38. セグメントがサブ画像である、請求項33から36のいずれか一項に記載の方法。
  39. 通信ネットワーク用のエンコーダ(700)であって、前記エンコーダは、
    プロセッサ(902)と、
    前記プロセッサと結合されたメモリ(904)であって、前記メモリは、前記プロセッサによって実行されると、前記プロセッサに、
    ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントのセグメントパーティションレイアウトを規定(1100)することと、
    前記ビットストリームにエンコーディングされる前記少なくとも1つの現在の画像の前記セグメントパーティションレイアウトにおける前記セグメントの前記順序付けのための規則のセットから少なくとも1つの規則を選択する(1102)ことと、
    前記少なくとも1つの現在の画像の前記セグメントパーティションレイアウトを前記ビットストリームにエンコーディング(1104)することと、
    インジケータ値を前記ビットストリームにエンコーディング(1106)することであって、前記インジケータ値は、前記少なくとも1つの現在の画像の前記セグメントパーティションレイアウトにおける前記セグメントの前記順序付けのために選択された前記規則のセットを識別する、ことと、
    前記セグメントパーティションレイアウトを使用して、前記少なくとも1つの現在の画像を前記ビットストリームにエンコーディング(1108)することと、
    を含む動作を実行させる命令を含む、メモリ(904)と、
    を備える、エンコーダ(700)。
  40. 前記複数の規則が、可用性規則と、任意のセグメントの順序付けと、各セグメントの第1のコーディングツリーユニットアドレスの昇順の順序付けと、セグメントレイアウト内の前記セグメントのサイズまたは位置に基づく順序付け規則と、2つ以上の規則の組合せと、のうちの1つまたは複数を含む、請求項39に記載のエンコーダ(700)。
  41. 前記メモリは、前記プロセッサによって実行されたときに、前記プロセッサに、
    前記ビットストリーム内のすべてのセグメントがセグメントの可用性規則に従っていると判断した場合、構文要素の第1の値を前記ビットストリームにエンコーディングすることと、
    前記ビットストリーム内のセグメントが前記セグメントの前記可用性規則に従わないと判断した場合、前記構文要素の第2の値を前記ビットストリームにエンコーディングすることと、
    をさらに含む動作を実行させるさらなる命令を含む、請求項39または40に記載のエンコーダ(700)。
  42. 前記メモリは、前記プロセッサによって実行されたときに、前記プロセッサに、
    現在の画像が複数のセグメントにセグメント化されている場合に、第1のインジケータ値を前記ビットストリームにエンコーディングすることであって、前記第1のインジケータ値は、前記少なくとも1つの現在の画像が複数のセグメントにセグメント化されることを指定する、ことと、
    前記現在の画像のすべてのセグメントが独立している場合に、第2のインジケータ値を前記ビットストリームにエンコーディングすることであって、前記第2のインジケータ値は、前記少なくとも1つの現在の画像のすべてのセグメントが独立していることを指定する、ことと、
    をさらに含む動作を実行させるさらなる命令を含む、請求項39から41のいずれか一項に記載のエンコーダ(700)。
  43. セグメントがタイル、タイルグループ、スライス、長方形スライス、またはサブ画像のいずれかである、請求項39から42のいずれか一項に記載のエンコーダ(700)。
  44. セグメントがサブ画像である、請求項39から42のいずれか一項に記載のエンコーダ(700)。
  45. エンコーダ(700)であって、
    ビットストリームにエンコーディングされる少なくとも1つの現在の画像のセグメントのセグメントパーティションレイアウトを規定(1100)することと、
    前記ビットストリームにエンコーディングされる前記少なくとも1つの現在の画像の前記セグメントパーティションレイアウトにおける前記セグメントの前記順序付けのための規則のセットから少なくとも1つの規則を選択する(1102)ことと、
    前記少なくとも1つの現在の画像の前記セグメントパーティションレイアウトを前記ビットストリームにエンコーディング(1104)することと、
    インジケータ値を前記ビットストリームにエンコーディング(1106)することであって、前記インジケータ値は、前記少なくとも1つの現在の画像の前記セグメントパーティションレイアウトにおける前記セグメントの前記順序付けのために選択された前記規則のセットを識別する、ことと、
    前記セグメントパーティションレイアウトを使用して、前記少なくとも1つの現在の画像を前記ビットストリームにエンコーディング(1108)することと、
    を含む動作を実行するように適合された、エンコーダ(700)。
  46. 前記エンコーダが、請求項34から38のいずれか一項に記載の動作を実行するようにさらに適合されている、請求項45に記載のエンコーダ(700)。
JP2022537414A 2019-12-19 2020-12-03 画像セグメントの順序付け Pending JP2023508880A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962950599P 2019-12-19 2019-12-19
US62/950,599 2019-12-19
PCT/SE2020/051164 WO2021126044A1 (en) 2019-12-19 2020-12-03 Picture segment ordering

Publications (1)

Publication Number Publication Date
JP2023508880A true JP2023508880A (ja) 2023-03-06

Family

ID=76477642

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022537414A Pending JP2023508880A (ja) 2019-12-19 2020-12-03 画像セグメントの順序付け

Country Status (6)

Country Link
US (1) US20230024994A1 (ja)
EP (1) EP4078977A4 (ja)
JP (1) JP2023508880A (ja)
AU (1) AU2020407461B2 (ja)
BR (1) BR112022012096A2 (ja)
WO (1) WO2021126044A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114930825A (zh) * 2019-12-26 2022-08-19 字节跳动有限公司 用于在编解码图片中实现解码顺序的技术
BR112022005091A2 (pt) * 2020-02-11 2022-10-11 Huawei Tech Co Ltd Codificador, decodificador e métodos correspondentes para sinalização de subimagem em conjunto de parâmetros de sequência

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2744202B1 (en) * 2011-08-11 2020-05-27 Sun Patent Trust Image encoding method, image decoding method, image encoding apparatus, image decoding apparatus, and image encoding/decoding apparatus

Also Published As

Publication number Publication date
US20230024994A1 (en) 2023-01-26
AU2020407461B2 (en) 2024-02-29
AU2020407461A1 (en) 2022-07-14
EP4078977A1 (en) 2022-10-26
WO2021126044A1 (en) 2021-06-24
BR112022012096A2 (pt) 2022-08-30
EP4078977A4 (en) 2023-12-27

Similar Documents

Publication Publication Date Title
JP7055833B2 (ja) 並列処理のためのイントラブロックコピー予測制限
JP7184841B2 (ja) ビデオエンコーダおよびデコーダについての大きなブロックにつきイントラ予測を信号伝達する方法および装置
US10390050B2 (en) Method of video coding using separate coding tree for luma and chroma
CN107925769B (zh) 管理已解码图像缓存器的方法及视频编码器或视频解码器
JP2024012554A (ja) 映像コーディングにおけるスライシング及びタイリング
JP6370879B2 (ja) ビデオコーディング拡張のためのパラメータセット設計
KR101361896B1 (ko) 멀티-뷰 비디오 코딩 방법 및 디바이스
JP2010527216A (ja) マルチビュー・ビデオ符号化(mvc)情報の符号化においてスライス群を使用する方法及び装置
BR112016025100B1 (pt) Método e dispositivo para decodificar dados de vídeo de várias camadas, assim como memória legível por computador
CN113841402B (zh) 视频编解码中大块的变换设计
JP2023508880A (ja) 画像セグメントの順序付け
WO2021202178A1 (en) Methods and devices for high-level syntax in video coding
WO2021122070A1 (en) Picture header prediction
US20230291915A1 (en) Image encoding/decoding method and device using palette mode, and method for transmitting bitstream
BR112016030188B1 (pt) Avanços de conformidade e inoperabilidade em codificação de vídeo de múltiplas camadas

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220901

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220901

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230815

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20240206