JP7303329B2 - 動きベクトルの差に関する制限 - Google Patents

動きベクトルの差に関する制限 Download PDF

Info

Publication number
JP7303329B2
JP7303329B2 JP2021562033A JP2021562033A JP7303329B2 JP 7303329 B2 JP7303329 B2 JP 7303329B2 JP 2021562033 A JP2021562033 A JP 2021562033A JP 2021562033 A JP2021562033 A JP 2021562033A JP 7303329 B2 JP7303329 B2 JP 7303329B2
Authority
JP
Japan
Prior art keywords
mvd
component
range
motion vector
block
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.)
Active
Application number
JP2021562033A
Other languages
English (en)
Other versions
JP2022529357A (ja
Inventor
ジピン ドン
リー ジャン
ホンビン リウ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2022529357A publication Critical patent/JP2022529357A/ja
Priority to JP2023100145A priority Critical patent/JP2023120345A/ja
Application granted granted Critical
Publication of JP7303329B2 publication Critical patent/JP7303329B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • 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/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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/167Position within a video image, e.g. region of interest [ROI]
    • 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/176Methods 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 block, e.g. a macroblock
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • 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)

Description

関連出願の相互参照
これは、2019年4月25日出願の国際特許出願第PCT/CN2019/084228号の優先権および利益を主張する2020年4月26日出願の国際特許出願第PCT/CN2020/087068号の国内段階である国際特許出願第PCT/CN2019/084228号の全開示は、本出願の開示の一部として参照により援用される。
本特許明細書は、映像符号化技術、デバイスおよびシステムに関する。
映像圧縮の進歩にもかかわらず、デジタル映像は、依然として、インターネット及び他のデジタル通信ネットワークにおいて最大の帯域幅の使用量を占めている。映像を受信及び表示することが可能である接続されたユーザデバイスの数が増加するにつれ、デジタル映像の使用に対する帯域幅需要は増大し続けることが予測される。
本特許明細書では、規定されたビット数を使用して表現される動きベクトルを用いて映像符号化または映像復号化を行う様々な実施形態および技術を説明する。
1つの例示的な態様において、映像復号化方法が開示される。方法は、映像領域と映像領域のビットストリーム表現との間での変換の間、映像の映像領域に対して使用されるMVD(Motion Vector Difference)値の範囲を、最大許容動きベクトル解像度、最大許容動きベクトル精度、または映像領域の優先度に基づいて判定することと、MVD値が範囲内になるように制限することにより、変換を実行することと、を含む。
1つの例示的な態様において、映像復号化方法が開示される。方法は、映像の第1のブロックと第1のブロックのビットストリーム表現との間での変換のために、第1のブロックに関連付けられたMVD(Motion Vector Difference)成分の範囲を判定することであって、MVD成分の範囲は、[-2,2-1]であり、M=17である、ことと、MVD成分の値は、MVD成分の範囲内となるように抑制することと、抑制されたMVD成分に基づいて変換を実行することと、を含む。
1つの例示的な態様において、映像復号化方法が開示される。方法は、映像の第1のブロックと第1のブロックのビットストリーム表現との間での変換のために、第1のブロックに関連付けられたMVD(Motion Vector Difference)成分の範囲を判定することであって、MVD成分の範囲は、コーデックの許容可能なMVD精度および/または許容可能なMV(Motion Vector)精度に適合される、ことと、MVD成分の値をMVD成分の範囲内となるように抑制することと、抑制されたMVD成分に基づいて変換を実行することと、を含む。
1つの例示的な態様において、映像復号化方法が開示される。方法は、映像の第1のブロックと第1のブロックのビットストリーム表現との間での変換のために、第1のブロックに関連付けられたMVD(Motion Vector Difference)成分の範囲を、第1のブロックの符号化情報に基づいて判定することと、MVD成分の値を、MVD成分の範囲内となるように抑制することと、MVD成分の抑制された範囲に基づいて変換を実行することと、を含む。
さらに別の例示的な態様において、映像処理装置が開示される。装置は、上述した方法を実行するように構成されたプロセッサを含む。
さらに別の例示的な態様において、コンピュータ可読媒体が開示される。媒体は、上述した方法をプロセッサで実装するためのコードが記憶されている。
これらの、および他の態様は、本特許明細書で説明される。
例示的なエンコーダブロック図を示す。 本特許明細書に記載される1または複数の方法を実装するためのハードウェアプラットフォームの一例を示すブロック図である。 映像処理の方法の一例を示すフローチャートである。 映像処理の方法の一例を示すフローチャートである。 映像処理の方法の一例を示すフローチャートである。 映像処理の方法の一例を示すフローチャートである。
本明細書では、理解を容易にするためにセクションの見出しを使用しており、1つのセクションに開示された実施形態をそのセクションにのみ限定するものではない。さらに、特定の実施形態は、VVC(Versatile Video Coding)または他の特定の映像コーデックを参照して説明されたが、開示された技術は、他の映像符号化技術にも適用可能である。さらに、いくつかの実施形態は映像符号化ステップを詳細に説明しているが、符号化を元に戻す復号化の対応するステップはデコーダによって実行されることが理解されよう。さらに、映像処理という用語は、映像符号化または圧縮、映像の復号化または展開、および映像の画素がある圧縮形式から別の圧縮形式へ、または別の圧縮ビットレートで表現される映像のコード変換を含む。
1. 概要
本特許明細書は、映像符号化技術に関する。具体的には、映像符号化におけるインター符号化処理に関する。HEVCのような既存の映像符号化規格に適用してもよいし、規格(Versatile Video Coding)を確定させるために適用してもよい。本発明は、将来の映像符号化規格または映像コーデックにも適用可能である。
2. 初期の協議
映像符号化規格は、主に周知のITU-TおよびISO/IEC規格の開発によって発展してきた。ITU-TはH.261とH.263を作り、ISO/IECはMPEG-1とMPEG-4 Visualを作り、両団体はH.262/MPEG-2 VideoとH.264/MPEG-4 AVC(Advanced Video Coding)とH.265/HEVC規格を共同で作った。H.262以来、映像符号化規格は、時間的予測と変換符号化が利用されるハイブリッド映像符号化構造に基づく。HEVCを超えた将来の映像符号化技術を探索するため、2015年には、VCEGとMPEGが共同でJVET(Joint Video Exploration Team)を設立した。それ以来、多くの新しい方法がJVETによって採用され、JEM(Joint Exploration Mode)と呼ばれる参照ソフトウェアに組み込まれてきた。JVET会議は四半期に1回開催され、新しい符号化規格はHEVCに比べて50%のビットレート低減を目指している。2018年4月のJVET会議において、新しい映像符号化規格をVVC(Versatile Video Coding)と正式に命名され、その時、第1版のVTM(VVC Test Model)がリリースされた。VVCの標準化に寄与する努力が続けられており、すべてのJVET会議において、VVC標準に新しい符号化技術が採用されている。毎回の会議の後、VVC作業草案およびテストモデルVTMが更新される。VVCプロジェクトは、現在、2020年7月の会議における技術完成(FDIS)を目指している。
2.1 典型的な映像コーデックの符号化フロー
図1は、3つのインループフィルタリングブロック、すなわち、DF(Deblocking Filter)、SAO(Sample Adaptive Offset)、およびALFを含む、VVCのエンコーダブロック図の例を示す。予め定義されたフィルタを使用するDFとは異なり、SAOおよびALFは、現在のピクチャの元のサンプルを利用し、それぞれ、オフセットを追加し、オフセットとフィルタ係数を信号通知する符号化側情報でFIR(Finite Inpulse Response)フィルタを適用することにより、元のサンプルと再構成されたサンプルとの間の平均二乗誤差を低減する。ALFは、各ピクチャの最後の処理ステージに位置し、前のステージで生成されたアーチファクトを捕捉し、確定しようとするツールと見なすことができる。
図1は、エンコーダブロック図の例を示す。
2.2 AMVR(Adaptive Motion Vector Resolution)
HEVCにおいて、スライスヘッダにてuse_integer_mv_flagが0等しい場合、1/4輝度サンプルのユニットにてMVD(Motion Vector Difference)(CUの動きベクトルと予測動きベクトルとの差)が信号通知される。JEMにおいて、LAMVR(Locally Adaptive Motion Vector Resolution)が導入される。VVCにおいて、CUレベルのAMVR(Adaptive Motion Vector Resolution)スキームが導入される。AMVRは、CUのMVDを異なる精度で符号化することを可能にする。現在のCUに対するモード(通常のAMVPモードまたはアフィンAVMPモード)に基づいて、現在のCUのMVDは、以下のように適応的に選択できる。
-通常のAMVPモード:1/4輝度サンプル、整数輝度サンプル、または4輝度サンプル。
-アフィンAMVPモード:1/4輝度サンプル、整数輝度サンプル、または1/16輝度サンプル。
現在のCUが少なくとも1つの非ゼロMVD成分を有する場合、CUレベルのMVD解像度指示が条件付きで信号通知される。すべてのMVD成分(すなわち、参照リストL0および参照リストL1の水平および垂直MVDの両方)がゼロである場合、1/4輝度サンプルMVD解像度が推測される。
少なくとも1つの非ゼロMVD成分の構成要素を有するCUの場合、1/4輝度サンプルMVD精度がCUに対して使用されるかどうかを示すために、第1のフラグが信号通知される。第1のフラグが0である場合、さらなる信号通知は必要とされず、現在のCUのために1/4輝度サンプルMVD精度が使用される。そうでない場合、整数輝度サンプルまたは4輝度サンプルのMVD精度が通常のAMVP CUに対して使用されるかどうかを示すために、第2のフラグが信号通知される。同じ第2のフラグは、整数輝度サンプルまたは1/16輝度サンプルのMVD精度がアフィンAMVP CUに対して使用されるかどうかを示すために使用される。再構成されたMVが意図された精度(1/4輝度サンプル、整数輝度サンプル、または4輝度サンプル)を有することを保証するために、CUの動きベクトル予測子は、MVDに加算される前に、MVDと同じ精度に丸められる。動きベクトル予測子をゼロに向かって丸める(すなわち、負の動きベクトル予測子を正の無限大に向かって丸め、正の動きベクトル予測モジュールを負の無限大に向かって丸める)。
エンコーダは、RDチェックを使用して、現在のCUに対する動きベクトルの解像度を判定する。各MVD解像度に対してCUレベルのRDチェックを常に3回行うことを回避するために、VTM4では、1/4輝度サンプル以外のMVD精度のRDチェックは、条件付きでのみ呼び出される。通常のAVMPモードの場合、まず、1/4輝度サンプルMVD精度および整数輝度サンプルMV精度のRDコストが算出される。次に、整数輝度サンプルMVD精度のRDコストが1/4輝度サンプルMVD精度のRDコストと比較され、4輝度サンプルMVD精度のRDコストをさらにチェックする必要があるかどうかが決定される。1/4輝度サンプルMVD精度のRDコストが整数輝度サンプルMVD精度のRDコストよりもずっと小さい場合、4輝度サンプルMVD精度のRDチェックは省略される。アフィンAMVPモードの場合、アフィンマージ/スキップモード、マージ/スキップモード、1/4輝度サンプリングMVD精度の通常のAMVPモード、1/4輝度サンプリングMVD精度のアフィンAMVPモードの、レート-ひずみのコストをチェックした後に、アフィンインターモードが選択されなかった場合、1/16輝度サンプルMV精度および1画素MV精度のアフィンインターモードはチェックされない。さらに、1/16輝度サンプルおよび1/4輝度サンプルMV精度のアフィンインターモードにおける検索開始点として、1/4輝度サンプルMV精度のアフィンインターモードで得られたアフィンパラメータが使用される。
2.3 VVCにおけるアフィンAMVP予測
アフィンAMVPモードは、幅および高さの両方が16以上であるCUに適用することができる。アフィンAMVPモードが使用されるかどうかを示すために、CUレベルのアフィンフラグがビットストリームにて信号通知され、次いで、4パラメータアフィンまたは6パラメータアフィンであるかを示すために、別のフラグが信号通知される。このモードにおいて、現在のCUのCPMVの差とそれらの予測子CPMVPがビットストリームにおいて信号通知される。アフィンAVMP候補リストサイズは2であり、以下のCPVM候補の4つのタイプを順に使用して生成される。
1)近傍のCUのCPMVから外挿した継承されたアフィンAMVP候補
2)近傍のCUの並進MVを使用して導出された構築されたアフィンAMVP候補CPMVP
3)近傍のCUからの並進MV
4)ゼロMV
継承されたアフィンAMVP候補のチェック順は、継承されたアフィンマージ候補のチェック順と同じである。唯一の違いは、AVMP候補の場合、現在のブロックと同じ参照ピクチャを有するアフィンCUのみを考慮することである。継承されたアフィン動き予測子を候補リストに挿入する場合、プルーニング処理は適用されない。
構築されたAMVP候補は、指定された空間的近傍から導出される。また、近傍のブロックの参照ピクチャインデックスもチェックされる。インター符号化され、現在のCUと同じ参照ピクチャを有する、チェック順において第1のブロックが使用される。1つのみが存在する。現在のCUが4パラメータアフィンモードで符号化され、mvおよびmvが両方とも利用可能である場合、それらをアフィンAMVPリストに1つの候補として追加する。現在のCUが6パラメータアフィンモードで符号化され、3つのCPMVすべてが利用可能である場合、それらをアフィンAMVPリストに1つの候補として追加する。そうでない場合、構築されたAMVP候補を利用不可能に設定する。
継承されたアフィンAMVP候補および構築されたAMVP候補をチェックした後、アフィンAMVPリスト候補が依然として2未満である場合、利用可能であれば、mv、mv、およびmvの順に、現在のCUのすべての制御点MVを予測するために並進MVとして追加される。最後に、まだアフィンAMVPリストがすべて満たされていない場合は、アフィンAMVPリストを満たすために、ゼロMVが使用される。
2.4 VVCにおけるMMVD(Merge mode with MVD)
暗黙的に導出された動き情報が現在のCUの予測サンプル生成に対して直接使用されるマージモードに加え、VVCにてMMVD(Merge mode with Motion Vector Deffirences)が導入される。スキップフラグおよびマージフラグを送信した直後に、MMVDフラグが信号通知され、MMVDモードがCUに対して使用されるかどうかを指定する。
MMVDにおいて、マージ候補が選択された後、信号通知されたMVD情報によってさらに改善される。さらなる情報は、マージ候補フラグ、動きの大きさを指定するためのインデックス、および動き方向の指示のためのインデックスを含む。MMVDモードにおいて、マージリストにおける最初の2つの候補のうちの1つが、MVベースとして使用されるために選択される。マージ候補フラグは、どちらを使用するかを指定するために信号通知される。
距離インデックスは、動きの大きさの情報を指定し、開始点からの予め定義されたオフセットを示す。オフセットは、開始MVの水平成分または垂直成分のいずれかに追加される。距離インデックスと予め定義されたオフセットとの関係は、表1に規定される。
VVCにおいて、spssレベルにおける小数MMVDオフセットのオン/オフのためのSPSフラグsps_fpel_mmvd_enabled_flag、および、タイルグループのヘッダレベルにおける「SCC/UHDフレーム」のための小数MMVDオフセットのオン/オフを制御するためのタイルグループフラグtile_group_fpel_mmvd_enabled_flagが存在する。小数MVDが有効化されている場合、表1のデフォルト距離テーブルが使用される。そうでない場合、表1のデフォルト距離におけるすべてのオフセット要素は、2だけ左シフトされる。
Figure 0007303329000001
方向インデックスは、開始点に対するMVDの方向を表す。方向インデックスは、表2に示すように、4つの方向を表すことができる。なお、MVD符号の意味は、開始MVの情報に従って異なってもよい。開始MVが未予測MV又は双方向予測MVであり、両方のリストが現在のピクチャの同じ側を指している(即ち、2つの参照のPOCが両方とも現在のピクチャのPOCよりも大きい、または、両方とも現在のピクチャのPOCより小さい)場合、表2における符号は、開始MVに加えられるMVオフセットの符号を指定する。開始MVが双方向予測MVであり、2つのMVが現在のピクチャの異なる側を指している(即ち、1つの参照のPOCが現在のピクチャのPOCよりも大きく、他の参照のPOCが現在のピクチャのPOCより小さい)場合、表2における符号は、開始MVのlist0 MV成分に加えられるMVオフセットの符号を規定し、list1 MVの符号は逆の値を有する。
Figure 0007303329000002
2.5 VVCにおけるIBC(Intra Block Copy)
IBC(Intra Block Copy)は、SCCのHEVC拡張に採用されているツールである。これにより、スクリーンコンテンツマテリアルの符号化効率が有意に向上することが知られている。IBCモードはブロックレベル符号化モードとして実装されるので、BM(Block Matching)がエンコーダにおいて実行され、各CUに対し最適なブロックベクトル(または、動きベクトル)を見出す。ここで、ブロックベクトルは、現在のブロックから、現在のピクチャの内部で既に再構成された参照ブロックへの置き換えを示すために使用される。
VVCにおいて、IBC符号化CUの輝度ブロックベクトルは、整数精度である。彩度ブロックベクトルは、整数精度に丸められる。AMVRと組み合わせた場合、IBCモードは、1画素と4画素の動きベクトル精度を切り替えることができる。IBC符号化CUは、イントラ予測モードまたはインター予測モード以外の第3の予測モードとして扱われる。IBCモードは、幅および高さの両方が64輝度サンプル以下のCUに適用可能である。
IBCモードは、CPR(Current Picture Reference)モードとしても知られている。
2.6 VVC仕様/作業草案における動きベクトルの差
VVC作業草案から以下のテキストが抽出される。
7.3.6.8 動きベクトル差構文
Figure 0007303329000003
7.3.6.7 マージデータ構文
Figure 0007303329000004
Figure 0007303329000005
7.4.3.1 シーケンスパラメータセットRBSP意味論
sps_amvr_enabled_flagが1に等しい場合は、動きベクトル符号化に適応動きベクトル差解像度が使用されることを規定する。amvr_enabled_flagが0に等しい場合は、動きベクトル符号化に適応動きベクトル差解像度が使用されないことを規定する。
sps_affine_amvr_enabled_flagが1に等しい場合は、アフィンインターモードの動きベクトル符号化に適応動きベクトル差解像度が使用されることを規定する。sps_affine_amvr_enabled_flaggが0に等しい場合は、アフィンインターモードの動きベクトル符号化に適応動きベクトル差解像度が使用されないことを規定する。
sps_fpel_mmvd_enabled_flagが1に等しい場合は、動きベクトル差を用いるマージモードが整数サンプル精度を使用することを規定する。sps_fpel_mmvd_enabled_flagが0に等しい場合は、動きベクトル差を用いるマージモードが小数サンプル精度を使用できることを規定する。
7.4.5.1 一般タイルグループヘッダ意味論
tile_group_fpel_mmvd_enabled_flagが1に等しい場合は、動きベクトル差を用いるマージモードが現在のタイルグループにおける整数サンプル精度を使用することを規定する。
tile_group_fpel_mmvd_enabled_flagが0に等しい場合は、動きベクトル差を用いるマージモードが現在のタイルグループにおける小数サンプル精度を使用できることを規定する。存在しない場合、tile_group_fpel_mmvd_enabled_flagの値は0であると推測される。
7.4.7.5 符号化ユニット意味論
amvr_flag[x0][y0]は、動きベクトル差の解像度を規定する。配列インデックスx0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。amvr_flag[x0][y0]が0に等しい場合は、動きベクトル差の解像度が輝度サンプルの1/4であることを規定する。amvr_flag[x0][y0]が1に等しい場合は、動きベクトル差の解像度がさらにamvr_precision_flag[x0][y0]で規定されることを規定する。
amvr_flag[x0][y0]が存在しない場合、次のように推測される。
-CuPredMode[x0][y0]がMODE_IBCに等しい場合、amvr_flag[x0][y0]は1に等しいと推測される。
-そうでない場合(CuPredMode[x0][y0]がMODE_IBCに等しくない場合)、amvr_flag[x0][y0]は0であると推測される。
amvr_precision_flag[x0][y0]が0に等しい場合に、動きベクトル差の解像度は、inter_affine_flag[x0][y0]が0に等しい際には1つの整数輝度サンプルであり、そうでない際には輝度サンプルの1/16であると規定する。amvr_precision_flag[x0][y0]が1に等しい場合に、動きベクトル差の解像度は、inter_affine_flag[x0][y0]が0に等しい際には、4つの輝度サンプルでありそうでない場合は、1つの整数輝度サンプルであることを規定する。配列インデックスx0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。
amvr_precision_flag[x0][y0]が存在しない場合、0に等しいと推測される。
動きベクトル差は、以下のように修正される。
-inter_affine_flag[x0][y0]が0に等しい場合、変数MvShiftが導出され、変数MvdL0[x0][y0][0]、MvdL0[x0][y0][1]、MvdL1[x0][y0][0]、MvdL1[x0][y0][1]が次ように修正される。
MvShift=(amvr_flag[x0][y0]+amvr_precision_flag[x0][y0])<<1 (7-98)
MvdL0[x0][y0][0]=MvdL0[x0][y0][0]<<(MvShift+2) (7-99)
MvdL0[x0][y0][1]=MvdL0[x0][y0][1]<<(MvShift+2) (7-100)
MvdL1[x0][y0][0]=MvdL1[x0][y0][0]<<(MvShift+2) (7-101)
MvdL1[x0][y0][1]=MvdL1[x0][y0][1]<<(MvShift+2) (7-102)
-そうでない場合(inter_afine_flag[x0][y0]が1に等しい場合)、変数MvShiftが導出され、変数MvdCpL0[x0][y0][0][0]、MvdCpL0[x0][y0][0][1]、MvdCpL0[x0][y0][1][0]、MvdCpL0[x0][y0][1][1]、MvdCpL0[x0][y0][2][0]、およびMvdCpL0[x0][y0][2][1]が次のように修正される。
MvShift=amvr_precision_flag[x0][y0]?(amvr_precision_flag[x0][y0]<<1):(-(amvr_flag[x0][y0]<<1))) (7-103)
MvdCpL0[x0][y0][0][0]=MvdCpL0[x0][y0][0][0]<<(MvShift+2) (7-104)
MvdCpL1[x0][y0][0][1]=MvdCpL1[x0][y0][0][1]<<(MvShift+2) (7-105)
MvdCpL0[x0][y0][1][0]=MvdCpL0[x0][y0][1][0]<<(MvShift+2) (7-106)
MvdCpL1[x0][y0][1][1]=MvdCpL1[x0][y0][1][1]<<(MvShift+2) (7-107)
MvdCpL0[x0][y0][2][0]=MvdCpL0[x0][y0][2][0]<<(MvShift+2) (7-108)
MvdCpL1[x0][y0][2][1]=MvdCpL1[x0][y0][2][1]<<(MvShift+2) (7-109)
7.4.7.7 マージデータ意味論
merge_flag[x0][y0]は、現在の符号化ユニットに対するインター予測パラメータが近傍のインター予測区間から推測されるかどうかを規定する。配列インデックスx0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。
merge_flag[x0][y0]が存在しない場合、次のように推測される。
-cu_skip_flag[x0][y0]が1に等しい場合、merge_flag[x0][y0]は1に等しいと推測される。
-そうでない場合、merge_flag[x0][y0]は0に等しいと推測される。
mmvd_flag[x0][y0]が1に等しい場合、現在の符号化ユニットのインター予測パラメータを生成するために、動きベクトル差を用いるマージモードを使用することを規定する。配列インデックスx0,y0は、ピクチャの左上輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。
mmvd_flag[x0][y0]が存在しない場合、0に等しいと推測される。
mmvd_merge_flag[x0][y0]は、マージ候補リストにおける第1(0)の候補、または、第2(1)の候補のいずれが、mmvd_distance_idx[x0][y0]とmmvd_direction_idx[x0][y0]から導出される動きベクトル差にて用いられるかを規定する。配列インデックスx0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。
mmvd_distance_idx[x0][y0]は、表7-11で規定されているように、MmvdDistance[x0][y0]を導出するために使用されるインデックスを規定する。配列インデックスx0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。
Figure 0007303329000006
mmvd_distance_idx[x0][y0]は、表7-12で規定されているように、MmvdDistance[x0][y0]を導出するために使用されるインデックスを規定する。配列インデックスx0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。
Figure 0007303329000007
マージ+MVDオフセットMmvdOffset[x0][y0]の両成分は、以下のように導出される。
MmvdOffset[x0][y0][0]=(MmvdDistance[x0][y0]<<2)*MmvdSign[x0][y0][0] (7-112)
MmvdOffset[x0][y0][1]=(MmvdDistance[x0][y0]<<2)*MmvdSign[x0][y0][1] (7-113)
merge_subblock_flag[x0][y0]は、現在の符号化ユニットに対するサブブロックベースインター予測パラメータが近傍のブロックから推測されるかどうかを規定する。配列インデックスx0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。merge_subblock_flag[x0][y0]が存在しない場合、0に等しいと推測される。
merge_subblock_idx[x0][y0]は、サブブロックベースマージ候補リストのマージ候補インデックスを規定し、ここで、x0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。
merge_subblock_idx[x0][y0]が存在しない場合、0に等しいと推測される。
ciip_flag[x0][y0]は、現在の符号化ユニットに対して、結合されたインターピクチャマージとイントラピクチャ予測が適用されるかどうかを規定する。配列インデックスx0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。
ciip_flag[x0][y0]が存在しない場合、0に等しいと推測される。
構文要素ciip_luma_mpm_flag[x0][y0]、およびciip_luma_mpm_idx[x0][y0]は、結合されたインターピクチャマージおよびイントラピクチャ予測に使用される輝度サンプルのイントラ予測モードを規定する。配列インデックスx0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。イントラ予測モードは、8.5.6節に従って導出される。
ciip_luma_mpm_flag[x0][y0]が存在しない場合、次のように推測される。
-cbWidthが2*cbHeightよりも大きい、または、cbHeightが2*cbWidthよりも大きい場合、ciip_luma_mpm_flag[x0][y0]は1に等しいと推測される。
-そうでない場合、ciip_luma_mpm_flag[x0][y0]は0に等しいと推測される。
merge_triangle_flag[x0][y0]が1に等しい場合は、現在の符号化ユニットに対して、Bタイルグループを復号化する際に、三角形の形状に基づく動き補償が、現在の符号化ユニットの予測サンプルを生成するために使用されることを規定する。merge_triangle_flag[x0][y0]が0に等しい場合は、符号化ユニットが、三角形状に基づく動き補償によって予測されないことを規定する。merge_triangle_flag[x0][y0]が存在しない場合、0に等しいと推測される。
merge_triangle_split_dir[x0][y0]は、マージ三角形モードの分割方向を規定する。配列インデックスx0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。
merge_triangle_split_dir[x0][y0]が存在しない場合、0に等しいと推測される。
merge_triangle_idx0[x0][y0]は、三角形状に基づく動き補償候補リストの第1のマージ候補インデックスを規定し、ここで、x0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。
merge_triangle_idx0[x0][y0]が存在しない場合、0に等しいと推測される。
merge_triangle_idx1[x0][y0]は、三角形状に基づく動き補償候補リストの第2のマージ候補インデックスを規定し、ここで、x0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。
merge_triangle_idx1[x0][y0]が存在しない場合、0に等しいと推測される。
merge_idx[x0][y0]は、マージ候補リストのマージ候補インデックスを規定し、ここで、x0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。
merge_idx[x0][y0]が存在しない場合、次のように推測される。
-mmvd_flag[x0][y0]が1に等しい場合、merge_idx[x0][y0]は、mmvd_merge_flag[x0][y0]に等しいと推測される。
そうでない場合(mmvd_flag[x0][y0]が0に等しい場合)、merge_idx[x0][y0]は0に等しいと推測される。
7.4.7.8 動きベクトル差意味論
abs_mvd_greater0_flag[compIdx]は、動きベクトル成分の差の絶対値が0より大きいかどうかを規定する。
abs_mvd_greater1_flag[compIdx]は、動きベクトル成分の差の絶対値が1より大きいかどうかを規定する。
abs_mvd_greater1_flag[compIdx]が存在しない場合は、0に等しいと推測される。
abs_mvd_minus2[compIdx]+2は、動きベクトル成分の差の絶対値を規定する。
abs_mvd_minus2[compIdx]が存在しない場合、-1に等しいと推測される。
mvd_sign_flag[compIdx]は動きベクトル成分の差の符号を以下のように規定する。
-mvd_sign_flag[compIdx]が0に等しい場合、対応する動きベクトル成分の差は正の値を有する。
-そうでない場合(mvd_sign_flag[compIdx]が1に等しい場合)、対応する動きベクトル成分の差は負の値を有する。
mvd_sign_flag[compIdx]が存在しない場合、0に等しいと推測される。
compIdx=0..1において、動きベクトル差lMvd[compIdx]は、以下のように導出される。
Figure 0007303329000008
MotionModelIdc[x][y]の値に基づいて、動きベクトルの差は、以下のように導出される。
-MotionModelIdc[x][y]が0に等しい場合、変数MvdLX[x0][y0][compIdx](Xが0または1)は、使用されるべきリストXベクトル成分とその予測との間の差を規定する。配列インデックスx0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。水平方向の動きベクトル成分の差にはcompIdx=0が割り当てられ、垂直方向の動きベクトル成分にはcompIdx=1が割り当てられる。
-refListが0に等しい場合、MvdL0[x0][y0][compIdx]は、compIdx=0..1において、lMvd[compIdx]に等しく設定される。
-そうでない場合(refListが1に等しい場合)、MvdL1[x0][y0][compIdx]は、compIdx=0..1において、lMvd[compIdx]に等しく設定される。
-そうでない場合(MotionModelIdc[x][y]が0に等しくない場合)、変数MvdCpLX[x0][y0][cpIdx][compIdx](Xが0または1)、使用されるべきリストXベクトル成分とその予測との間の差を規定する。配列インデックスx0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定し、配列インデックスcpIdxは、制御点インデックスを規定する。水平方向の動きベクトル成分の差にはcompIdx=0が割り当てられ、垂直方向の動きベクトル成分にはcompIdx=1が割り当てられる。
-refListが0に等しい場合、compIdx=0..1において、MvdCpL0[x0][y0][cpIdx][compIdx]は、lMvd[compIdx]に等しく設定される。
-そうでない場合(refListが1に等しい場合)、compIdx=0..1において、MvdCpL1[x0][y0][cpIdx][compIdx]は、lMvd[compIdx]に等しく設定される。
3. 本特許明細書に記載の実施形態が解決しようとする課題の例
VVCのようないくつかの符号化標準において、MVD(Motion Vector Difference)は、必ずしも1/4画素(例えば、1/4輝度サンプル)の解像度であるとは限らない。しかしながら、既存のVVC作業草案において、MVD成分をある-215~215-1の範囲に常時クリッピングするビットストリーム制約が存在する。この結果、特に、1/4画素でないMVD解像度が使用される場合(例えば、アフィンAMVPが使用される場合の1/16輝度サンプルのMVD解像度)、MVD値が不正確になる可能性がある。
4. 例示的な実施形態および技術
以下に列記される実施形態は、一般的な概念を説明するための例であると考えられるべきである。これらの発明は狭い意味で解釈されるべきではない。さらに、これらの発明は、任意の方法で組み合わせることができる。
以下の説明において、「MVD(Motion Vector Difference)成分」は、水平方向(例えば、x軸に沿う)の動きベクトル差または垂直方向(例えば、y軸に沿う)の動きベクトル差のいずれかを示す。
サブピクセルMV(Motion Vector)表現の場合、動きベクトルは、通常、小数部分と整数部分からなる。MVの範囲を[-2,2-1]とし、Mが正の整数値であり、M=K+Lであり、Kは、MVの整数部分の範囲を表し、Lは、MVの小数部分の範囲を表し、、MVは、(1/2)輝度サンプル精度で表現されるとする。例えば、HEVCにおいて、K=13、L=2であり、従って、M=K+L=15である。一方、VVCにおいて、K=13、L=4であり、M=K+L=17である。
1.MVD成分の範囲は、コーデックの許容可能なMVD解像度/精度に依存してよいことが提案される。
a)一例において、すべてのMVD成分に同じ範囲を適用してよい。
i.一例において、MVD成分の範囲は、[-2、2-1]、M=17などのMV範囲と同じである。
b)一例において、復号化されたすべてのMVD成分は、最初に予め定義された精度(1/2)輝度サンプル(例えば、L=4)にスケーリングされ、次に予め定義された範囲[-2,2-1](例えば、M=17)にクリッピングされてよい。
c)一例において、MVD成分の範囲は、コーデックで許容可能なMVD/MV解像度に依存してよい。
i.一例において、MVDの許容可能な解像度が1/16輝度サンプル、1/4輝度サンプル、1輝度サンプル、または4輝度サンプルであるとすると、MVD成分の値は、最上の解像度(例えば、これらの可能な解像度のうち1/16輝度サンプル)に従ってクリッピング/抑制されてよい。すなわち、MVDの値は、例えば、K=13,L=4として、[-2K+L,2K+L-1]の範囲となる。
2.MVD成分の範囲は、ブロックの符号化情報に依存してよいことが提案される。
a)一例において、MVD成分の範囲の複数のセットが定義されてよい。
b)一例において、範囲は、MV予測子/MVD/MV精度に依存してよい。
i.一例において、MVD成分のMVD精度が(1/2)輝度サンプルであり(例えば、L=4,3,2,1,0,-1,-2,-3,-4など)、MVDの値は、例えば、K=13,L=4,3,2,1,0,-1,-2,-3,-4として、[-2K+L,2K+L-1]の範囲に抑制または/およびクリッピングされてよい。
ii.一例において、MVD成分の範囲は、変数MvShiftに依存してよく、ここで、MvShiftは、VVCのaffine_inter_flag、amvr_flag、およびamvr_precision_flagから導出されてよい。
1.一例において、MvShiftは、affine_inter_flag、amvr_flag、および/またはamvr_precision_flag、および/またはsps_fpel_mmvd_enabled_flag、および/またはtile_group_fpel_mmvd_enabled_flag、および/またはmmvd_distance_idx、および/またはCuPredModeなどの符号化情報によって導出されてよい。
c)一例において、MVD範囲は、ブロックの、符号化モード、動きモデルなどに依存してよい。
i.一例において、MVD成分の範囲は、現在のブロックの、動きモデル(例えば、仕様のMotionModelIdc)、および/または予測モード、および/またはアフィンインターフラグに依存してよい。
ii.一例において、現在のブロックの予測モードがMODE_IBCである場合(例えば、現在のブロックがIBCモードで符号化されている場合)、MVDの値は、例えば、K=13,L=0として、[-2K+L,2K+L-1]の範囲であってよい。
iii.一例において、現在のブロックの動きモデルインデックス(例えば、仕様のMotionModelIdc)が0に等しい場合(例えば、現在のブロックが並進動きモデルを使用して予測される場合)、MVDの値は、例えば、K=13,L=2として、[-2K+L,2K+L-1]の範囲であってよい。
1.代替的に、現在のブロックの予測モードがMODE_INTERであり、かつ、affine_inter_flagが偽の場合(例えば、現在のブロックが並進動きモデルを使用して予測されている場合)、MVDの値は、例えば、K=13,L=2として、[-2K+L,2K+L-1]の範囲であってよい。
iv.一例において、現在のブロックの動きモデルインデックス(例えば、仕様のMotionModelIdc)が0に等しくない場合(例えば、現在のブロックがアフィン動きモデルを使用して予測されている場合)、MVDの値は、例えば、K=13,L=4として、[-2K+L,2K+L-1]の範囲であってよい。
1.代替的に、現在のブロックの予測モードがMODE_INTERであり、かつ、affine_inter_flagが真の場合(例えば、現在のブロックがアフィン動きモデルを使用して予測される場合)、MVDの値は、例えば、K=13,L=4として、[-2K+L,2K+L-1]の範囲であってよい。
d)復号化されたMVD成分に制約を加える代わりに,丸められたMVD値に制約を加えることが提案される。
i.一例において、適合ビットストリームは、丸められた整数MVD値が所与の範囲内にあることを満たすものとする。
1.一例において、整数MVD(復号化されたMVDが小数精度の場合、丸めが必要である)は、例えば、K=13として、[-2,2-1]の範囲にあるべきである。
3.復号化されたMVD成分の値は、ビットストリーム制約を使用する以外に、意味解釈の間に、明示的に範囲(例えば、上述のMVD範囲)にクリッピングされてよいことが提案される。
5. 実施形態
5.1 実施形態#1
以下の実施形態は、セクション4の項目1の方法に関するものである。
新たに追加された部分はイタリック体の太字で、VVCの作業草案から削除された部分は取り消し線で強調している。
7.4.7.8 動きベクトル差意味論
compIdx=0..1の場合、動きベクトル差lMvd[compIdx]は、以下のように導出される。
Figure 0007303329000009
5.2 実施形態#2
以下の実施形態は、セクション4の項目2の方法に関するものである。
新たに追加された部分はイタリック体の太字で、VVCの作業草案から削除された部分は取り消し線で強調している。
7.4.7.9 動きベクトル差意味論
compIdx=0..1の場合、動きベクトル差lMvd[compIdx]は、以下のように導出される。
Figure 0007303329000010
5.3 実施形態#3
以下の実施形態は、セクション4の項目2の方法に関するものである。
新たに追加された部分はイタリック体の太字で、VVCの作業草案から削除された部分は緑の取り消し線で強調している。
7.4.7.10 動きベクトル差意味論
compIdx=0..1の場合、動きベクトル差lMvd[compIdx]は、以下のように導出される。
Figure 0007303329000011
5.4 実施形態#4
以下の実施形態は、セクション4の項目2の方法に関するものである。
新たに追加された部分はイタリック体の太字で、VVCの作業草案から削除された部分は緑の取り消し線で強調している。
7.4.7.11 動きベクトル差意味論
compIdx=0..1の場合、動きベクトル差lMvd[compIdx]は、以下のように導出される。
Figure 0007303329000012
5.5 実施形態#5
以下の実施形態は、セクション4の項目3および項目1の方法に関するものである。
新たに追加された部分はイタリック体の太字で、VVCの作業草案から削除された部分は緑の取り消し線で強調している。
7.4.7.12 動きベクトル差意味論
compIdx=0..1の場合、動きベクトル差lMvd[compIdx]は、以下のように導出される。
Figure 0007303329000013
5.6 実施形態#6
以下の実施形態は、セクション4の項目3および項目2の方法に関するものである。
新たに追加された部分はイタリック体の太字で、VVCの作業草案から削除された部分は緑の取り消し線で強調している。
7.4.7.13 動きベクトル差意味論
compIdx=0..1の場合、動きベクトル差lMvd[compIdx]は、以下のように導出される。
Figure 0007303329000014
MotionModelIdc[x][y]の値に基づいて、動きベクトル差は、以下のように導出される。
-MotionModelIdc[x][y]が0に等しい場合、変数MvdLX[x0][y0][compIdx])(Xが0または1)は、使用されるべきリストXベクトル成分とその予測との間の差を規定する。配列インデックスx0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定する。水平方向の動きベクトル成分の差にはcompIdx=0が割り当てられ、垂直方向の動きベクトル成分にはcompIdx=1が割り当てられる。
Figure 0007303329000015
-そうでない場合(MotionModelIdc[x][y]が0に等しくない場合)、変数MvdCpLX[x0][y0][cpIdx][compIdx](Xが0または1)は、使用されるべきリストXベクトル成分とその予測との間の差を規定する。配列インデックスx0,y0は、ピクチャの左上の輝度サンプルに関連する、考慮される符号化ブロックの左上の輝度サンプルの位置(x0,y0)を規定し、配列インデックスcpIdxは、制御点インデックスを規定する。水平方向の動きベクトル成分の差にはcompIdx=0が割り当てられ、垂直方向の動きベクトル成分にはcompIdx=1が割り当てられる。
Figure 0007303329000016
図2は、映像処理装置1000のブロック図である。装置1000は、本明細書に記載の1または複数の方法を実装するために使用されてよい。装置1000は、スマートフォン、タブレット、コンピュータ、IoT(Internet of Things)受信機等により実施されてよい。装置1000は、1または複数のプロセッサ1002、1または複数のメモリ1004、および、映像処理ハードウェ1006を含んでよい。1または複数のプロセッサ1002は、本特許明細書に記載される1または複数の方法を実装するように構成されてよい。1または複数のメモリ1004は、ここで説明される方法および技術を実装するために使用されるデータおよびコードを記憶するために使用されてよい。映像処理ハードウェア1006は、本特許明細書に記載される技術をハードウェア回路にて実装するために使用されてもよい。
図3は、映像処理の方法の一例を示すフローチャートである。方法300は、最大許容動きベクトル解像度、最大許容動きベクトル精度、または映像領域の属性に基づいて、映像領域と映像領域のビットストリーム表現との間での変換の間、映像の映像領域に対して使用されるMVD(Motion Vector Difference)の値の範囲を判定すること(302)を含む。方法300は、MVD値を範囲内に収まるように制限することによって変換を実行する(304)ことを含む。
以下の解決策のリストは、他の問題の中でもとりわけ、本特許明細書に記載されている技術的問題に対処できる実施形態を提供する。
1. 映像処理方法であって、最大許容動きベクトル解像度、最大許容動きベクトル精度、または映像領域の特性に基づいて、映像領域と映像領域のビットストリーム表現との間での変換の間、映像の映像領域に対して使用されるMVD(Motion Vector Difference)値の範囲を判定することと、MVD値がこの範囲内になるように制限することにより変換を実行することと、を有する方法。
2. 映像のすべての映像領域の変換の間、範囲が適用される、解決策1に記載の方法。
3. 範囲は、映像領域に対する動きベクトルの範囲に等しい、解決策1~2に記載のいずれかに記載の方法。
4. 制限することは、MVD成分を精度にスケーリングすることと、スケーリングの外れを範囲へクリッピングすることを含む、解決策1~3のいずれかに記載の方法。
5. 映像領域の特性は、映像領域の符号化情報を含む、解決策1~4のいずれかに記載の方法。
6. 範囲は、映像の複数の可能な範囲のセットから選択される、解決策1~5のいずれかに記載の方法。
7. 映像領域の特性は、映像領域に使用される動きベクトル予測子の精度を含む、解決策1~4のいずれかに記載の方法。
8. 映像領域の特性は、MVShiftの値に対応し、MVShiftは、映像領域に関連付けられた変数であり、MVShiftは、映像領域に関連付けられたaffine_inter_flag、またはamvr_flagまたはamvr_precision_flagに依存する解決策1~4のいずれかに記載の方法。
9. 映像領域の特性は、変換に使用される符号化モードに対応する、解決策1に記載の方法。
10. 符号化モードは、イントラブロックコピーモードであり、範囲は、[-2K+L,2K+L-1]に対応し、ここで、KおよびLは、それぞれ、MV(Motion Vector)の整数部分の範囲およびMVの小数部分の範囲を表す整数である、解決策9に記載の方法。
11. K=13およびL=0である、解決策10に記載の方法。
12. 映像領域の特性は、変換に使用される動きモデルに対応する、解決策1に記載の方法。
13. 映像領域の特性は、映像領域の動きが並進モデルを使用してモデル化されることであり、その結果、範囲は、[-2K+L、2K+L-1]であると判定され、ここで、KおよびLは、それぞれ、MV(Motion Vector)の整数部分の範囲およびMVの小数部分の範囲を表す整数である、解決策1に記載の方法。
14. K=13およびL=2である、解決策13に記載の方法。
15. 映像領域の特性は、映像領域の動きが非並進モデルを使用してモデル化されることであり、その結果、範囲は[-2K+L、2K+L-1]であると判定され、ここで、KとLは、それぞれMV(Motion Vector)の整数部分の範囲とMVの小数部分の範囲を表す整数である、解決策1に記載の方法。
16. K=13およびL=4である、解決策15に記載の方法。
17. 制限することは、MVDの丸められた値を範囲に制限することを含む、解決策1に記載の方法。
18. 映像処理方法であって、映像領域と映像領域のビットストリーム表現との間での変換の間、映像の映像領域に使用されるMVD(Motion Vector Difference)値の範囲を判定することと、変換で行われる意味解釈の間、範囲内に収まるようにMVD値に対してクリッピング動作を行うことと、を有する方法。
19. 映像領域は、映像ブロックに対応する、解決策1~18のいずれかに記載の方法。
20. 変換は、ビットストリーム表現から映像領域の画素値を生成することを含む、解決策1~19のいずれかに記載の方法。
21. 変換は、映像領域の画素値からビットストリーム表現を生成することを含む、解決策1~20のいずれかに記載の方法。
22. 例1~21の1または複数を実装するように構成されたプロセッサを備える映像処理装置。
23. コードが記憶されたコンピュータ可読媒体であって、コードがプロセッサによって実行されることにより、プロセッサに、例1~21の1または複数に記載の方法を実装させる、コンピュータ可読媒体。
セクション4にリストされている項目は、上記の解決策のさらなる変形例を提供する。
図4は、映像処理の方法400の一例を示すフローチャートである。方法400は、映像の第1のブロックと第1のブロックのビットストリーム表現との間での変換のために、第1のブロックに関連付けられたMVD(Motion Vector Difference)成分の範囲を判定すること(402)であって、MVD成分の範囲は、[-2,2-1]であり、M=17である、ことと、MVD成分の値をMVD成分の範囲内となるように抑制すること(404)と、MVD成分の抑制された範囲に基づいて変換を実行すること(406)と、を有する。
いくつかの例では、範囲は、コーデックの許容可能なMVD精度および/または許容可能なMV(Motion Vector)精度に適合されている。
いくつかの例では、許容可能なMVD精度および/または許容可能なMV(Motion Vector)精度は、1/16輝度サンプル精度である。
いくつかの例では、コーデックに複数の許容可能なMVD精度および/またはMV精度が存在する場合、MVD成分の範囲は、複数の許容可能なMVD精度および/またはMV精度の最上の精度に適合される。
いくつかの例では、複数の許容可能なMVD精度および/またはMV精度が1/16輝度サンプル、1/4輝度サンプル、1輝度サンプル、および4輝度サンプルを含む場合、MVD成分の範囲は、1/16輝度サンプルの精度に適合される。
いくつかの例では、MVD成分の範囲は、[-2,2-1]であると判定され、M=K+Lであり、Kは、MVD成分の整数部分を表すために使用されるビット数を示し、Lは、MVD成分の小数部分を表すために使用されるビット数を示し、MVD成分は、1/2輝度サンプル精度で表され、および/または、第1のブロックに関連付けられたMV成分の範囲は、[-2,2-1]であると判定され、M=K+Lであり、Kは、MV成分の整数部分を表すために使用されるビット数を示し、Lは、MV成分の小数部分を表すために使用されるビット数を示し、MV成分は、1/2-輝度サンプル精度で表され、M、K、Lは正の整数である。
いくつかの例では、K=13、L=4、およびM=17である。
いくつかの例では、MVD成分は、ビットストリームで符号化された、復号化/信号通知されたMVD成分、または復号化処理の内部シフト動作を介して特定の精度に関連付けられた変換されたMVD成分である。
いくつかの例では、MVD成分は、水平MVD成分および垂直MVD成分を含み、水平MVD成分および垂直MVD成分は、同じ範囲を有する。
いくつかの例では、MVD成分は、整数ビット、小数ビット、および符号ビットで表現される。
いくつかの例では、第1のブロックに関連付けられたMVの範囲は、MVD成分の範囲と同じである。
図5は、映像処理の方法500の一例を示すフローチャートである。方法500は、映像の第1のブロックと第1のブロックのビットストリーム表現との間での変換のために、第1のブロックに関連付けられたMVD(Motion Vector Difference)成分の範囲を判定することであって(502)、MVD成分の範囲は、コーデックの許容可能なMVD精度および/または許容可能なMV(Motion Vector)精度に適合される、ことと、MVD成分の値をMVD成分の範囲内に抑制すること(504)と、MVD成分の抑制された範囲に基づいて変換を実行すること(506)と、を含む。
いくつかの例では、MVD成分は、ビットストリームで符号化された復号化/信号通知されたMVD成分、または復号化処理の内部シフト動作を介して特定の精度に関連付けられた変換されたMVD成分である。
いくつかの例では、復号化/信号通知されたMVD成分は、[-2,2-1]の範囲にあることが要求され、M=17である。
いくつかの例では、MVD成分は、整数ビット、小数ビット、および符号ビットで表現される。
いくつかの例では、MVD成分の範囲は、[-2,2-1]であると判定され、M=K+Lであり、Kは、MVD成分の整数部分を表すために使用されるビット数を示し、Lは、MVD成分の小数部分を表すために使用されるビット数を示し、MVD成分は、1/2輝度サンプル精度で表され、および/または、第1のブロックに関連付けられたMV成分の範囲は[-2,2-1]であると判定され、M=K+Lであり、Kは、MV成分の整数部分を表すのに使用されるビット数を示し、Lは、MV成分の小数部分を表現するために使用されるビット数を示し、MV成分は1/2輝度サンプル精度で表され、M、K、Lは、正の整数である。
いくつかの例では、すべての復号化されたMVD成分の値は、まず1/2輝度サンプル精度にスケーリングされ、次にMVD成分の範囲[-2,2-1]にクリッピングされる。
いくつかの例では、コーデックに複数の許容可能なMVD精度および/またはMV精度が存在する場合、MVD成分の範囲は、複数の許容可能なMVD精度および/またはMV精度の最上の精度に適合される。
いくつかの例では、複数の許容可能なMVD精度および/またはMV精度が1/16輝度サンプル精度、1/4輝度サンプル精度、1輝度サンプル精度、および4輝度サンプル精度を含む場合、MVD成分の範囲は、1/16輝度サンプル精度に適合され、MVD成分の値は、範囲に抑制され、および/またはクリッピングされる。
いくつかの例では、K=13、L=4、およびM=17である。
いくつかの例では、MVD成分は、水平MVD成分および垂直MVD成分を含み、水平MVD成分および垂直MVD成分は、同じ範囲を有する。
いくつかの例では、MVの範囲は、MVD成分の範囲と同じである。
図6は、映像処理の方法600の一例を示すフローチャートである。方法600は、映像の第1のブロックと第1のブロックのビットストリーム表現との間での変換のために、第1のブロックに関連付けられたMVD(Motion Vector Difference)成分の範囲を、第1のブロックの符号化情報に基づいて判定すること(602)と、MVD成分の値をMVD成分の範囲内となるように抑制すること(604)と、抑制されたMVD成分に基づいて変換を実行すること(606)と、を含む。
いくつかの例では、MVD成分の範囲は、MVD成分の範囲の複数のセットを含む。
いくつかの例では、符号化情報は、MV(Motion Vector)予測子の精度、MVD成分の精度、およびMVの精度のうちの少なくとも1つを含む。
いくつかの例では、MVD成分のMVD精度が1/2輝度サンプルである場合、MVD成分の範囲は、[-2K+L,2K+L-1]の範囲であると判定され、MVP成分の値は、範囲内になるように抑制および/またはクリッピングされ、Kは、MVD成分の整数部分を表すために使用するビット数を示し、Lは、MVD成分の小数部分を表すためのビット数を示し、KとLは正の整数である。
いくつかの例では、Kは13であり、Lは4,3,2,1,0、-1、-2、-3、および-4のうちの1つである。
いくつかの例では、符号化情報は、MVDに関連付けられた変数MvShiftを含み、変数MvShiftの導出は、AFFINEが使用されるか否か、および/または、AMVR(Adaptive Motion Vector Resolution)が使用されるか否か、および/または、AMVRの精度、および/または、MVDの精度、および/または、MMVD(MMerge mode with Motion Vector Difference)情報、および/または、第1のブロックの予測モードに依存する。
いくつかの例では、変数MvShiftは、符号化情報におけるinter_affine_flag、amvr_flag、およびamvr_precision_idxを含む1または複数の構文要素から導出される。
いくつかの例では、変数MvShiftは、符号化情報におけるinter_affine_flag、amvr_flag、amvr_precision_idx、sps_fpel_mmvd_enabled_flag、ph_fpel_mmvd_enabled_flag、mmvd_distance_idx、およびCuPredModeを含む1または複数の構文要素から導出される。
いくつかの例では、符号化情報は、第1のブロックの符号化モード、動きモード、および予測モード、および符号化情報でAFFIN/AMVRが使用されるかどうかを示す1または複数の変数および/または構文要素を含む。
いくつかの例では、第1のブロックの予測モードが、第1のブロックがIBCモードで符号化されていることを示すMODE_IBCである場合、MVD成分の範囲は、[-2K+L,2K+L-1]の範囲であると判定され、MVP成分の値は、範囲内になるように抑制および/またはクリッピングされ、Kは、MVD成分の整数部分を表すために使用されるビット数を示し、Lは、MVD成分の小数部分を表すために使用されるビット数を示し、KおよびLは正の整数である。
いくつかの例では、K=13、およびL=0である。
いくつかの例では、第1のブロックの動きモデルのインデックスが0に等しい場合、MVD成分の範囲は、[-2K+L,2K+L-1]の範囲であると判定され、MVP成分の値は、範囲内になるように抑制および/またはクリッピングされ、Kは、MVD成分の整数部分を表すために使用されるビット数を示し、Lは、MVD成分の小数部分を表すために使用されるビット数を示し、KおよびLは正の整数である。
いくつかの例では、K=13、およびL=2である。
いくつかの例では、第1のブロックの予測モードが、第1のブロックがMODE_INTERであり、かつ、affine_inter_flagの変数が偽である場合、MVD成分の範囲は、[-2K+L,2K+L-1]の範囲であると判定され、MVP成分の値は、範囲内になるように抑制および/またはクリッピングされ、Kは、MVD成分の整数部分を表すために使用されるビット数を示し、Lは、MVD成分の小数部分を表すために使用されるビット数を示し、KおよびLは正の整数である。
いくつかの例では、K=13、およびL=2である。
いくつかの例では、第1のブロックの動きモデルのインデックスが0に等しくない場合、MVD成分の範囲は、[-2K+L,2K+L-1]の範囲であると判定され、MVP成分の値は、範囲内になるように抑制および/またはクリッピングされ、Kは、MVD成分の整数部分を表すために使用されるビット数を示し、Lは、MVD成分の小数部分を表すために使用するされるビット数を示し、KおよびLは正の整数である。
いくつかの例では、K=13、およびL=4である。
いくつかの例では、第1のブロックの予測モードが、第1のブロックがMODE_INTERであり、かつ、affine_inter_flagの変数が真である場合、MVD成分の範囲は、[-2K+L,2K+L-1]の範囲であると判定され、MVP成分の値は、範囲内になるように抑制および/またはクリッピングされ、KはMVD成分の整数部分を表すために使用されるビット数を示し、Lは、MVD成分の小数部分を表すために使用されるビット数を示し、KおよびLは正の整数である。
いくつかの例では、K=13、およびL=4である。
いくつかの例では、復号化されたMVD成分が小数精度である場合、復号化されたMVD成分は、整数MVD成分に丸められる。
いくつかの例では、丸められた整数MVD成分は、[-2、2-1]の範囲にあり、K=13である。
いくつかの例では、復号化されたすべてのMVD成分の値は、ビットストリーム制約を使用する以外の意味解釈中にMVD成分の範囲に明示的にクリッピングされる。
いくつかの例では、変換は、ビットストリーム表現から映像の第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または複数の特徴は、場合によっては、組み合わせから抜粋されることができ、主張された組み合わせは、サブコンビネーションまたはサブコンビネーションのバリエーションに向けられてもよい。
同様に、動作は図面において特定の順番で示されているが、これは、所望の結果を達成するために、このような動作が示された特定の順番でまたは連続した順番で行われること、または示された全ての動作が行われることを必要とするものと理解されるべきではない。また、本特許明細書に記載されている例における様々なシステムの構成要素の分離は、全ての実施形態においてこのような分離を必要とするものと理解されるべきではない。
いくつかの実装形態および例のみが記載されており、この特許文献に記載され図示されているコンテンツに基づいて、他の実施形態、拡張および変形が可能である。

Claims (17)

  1. 映像データの処理の方法であって、
    映像の第1のブロックと、前記映像のビットストリームとの間の変換のために、前記第1のブロックに関連付けられたMV(Motion Vector)成分およびMVD(Motion Vector Difference)成分を判定することと、
    抑制されたMVD成分に基づいて前記変換を実行することと、
    を有し、
    前記第1のブロックに関連付けられたMV成分の範囲は、[-2 ,2 -1]であると判定され、
    M=K+Lであり、
    Kは、前記MV成分の整数部分を表すために用いられるビット数を示し、
    Lは、前記MV成分の小数部分を表すために用いられるビット数を示し、
    前記MV成分は、1/2 輝度サンプル精度にて表され、
    前記MVD成分の値は、MVD成分の範囲内となるように抑制され、
    MVD成分の前記範囲は、[-2,2-1]であり、
    M=17であ
    KおよびLは、正の整数である、方法。
  2. 前記範囲は、コーデックの許容可能なMVD精度および/または許容可能なMV(Motion Vector)精度に適合される、請求項1に記載の方法。
  3. 前記許容可能なMVD精度および/またはMV(Motion Vector)精度は、1/16輝度サンプル精度である、請求項2に記載の方法。
  4. 複数の許容可能なMVD精度および/またはMV精度がコーデックにある場合、MVD成分の前記範囲は、前記複数の許容可能なMVD精度および/またはMV精度の最上の精度に適合される、請求項1~3のいずれか一項に記載の方法。
  5. 前記複数の許容可能なMVD精度および/またはMV精度が、1/16輝度サンプル、1/4輝度サンプル、および1輝度サンプルを含む場合、MVD成分の前記範囲は、前記1/16輝度サンプルの精度に適合される、請求項4に記載の方法。
  6. 前記第1のブロックは、動き情報が動きベクトル候補リストおよびスケーリングされたMVDに基づいて導出される第1のコーディングモードに適用され、
    前記スケーリングされたMVDは、前記MVDをビットシフトすることにより生成され、
    前記動きベクトル候補リストは、前記第1のコーディングモードにてコーディングされた近傍のブロックら導出される承された候補、構築された候補、およびゼロMVを有する候補を含む、
    請求項5に記載の方法。
  7. 更に、前記MVD成分の整数部分を表すために用いられるビット数を示し、
    Lは更に、前記MVD成分の小数部分を表すために用いられるビット数を示し、
    前記MVD成分は、1/2輝度サンプル精度にて表され
    請求項1~6のいずれか一項に記載の方法。
  8. K=13、L=4である請求項7に記載の方法。
  9. 前記MVD成分は、ビットストリームにてコーディングされた信号通知されたMVD成分、または、復号化処理において内部シフト動作を介して特定の精度に関連付けられた変換されたMVD成分である、請求項1~8のいずれか一項に記載の方法。
  10. 前記MVD成分は、水平MVD成分および垂直MVD成分を含み、
    前記水平MVD成分および前記垂直MVD成分は同じ範囲を有する、
    請求項1~9のいずれか一項に記載の方法。
  11. 前記MVD成分は、整数ビット、小数ビット、および符号ビットにより表される、請求項1~10のいずれか一項に記載の方法。
  12. 前記第1のブロックに関連付けられたMVの前記範囲は、MVD成分の前記範囲と同じである、請求項1~11のいずれか一項に記載の方法。
  13. 前記変換は、前記第1のブロックを前記ビットストリームから復号化することを含む、請求項1~12のいずれか一項に記載の方法。
  14. 前記変換は、前記第1のブロックを前記ビットストリームに符号化することを含む、請求項1~12のいずれか一項に記載の方法。
  15. プロセッサと、命令を有する非一時的メモリを有する、映像データを処理するための装置であって、前記命令が前記プロセッサにより実行されることにより、前記プロセッサに、
    映像の第1のブロックと、前記映像のビットストリームとの間の変換のために、MV(Motion Vector)成分、および前記第1のブロックに関連付けられたMVD(Motion Vector Difference)成分を判定することと、
    抑制されたMVD成分に基づいて前記変換を実行することと、
    を有し、
    前記第1のブロックに関連付けられたMV成分の範囲は、[-2 ,2 -1]であると判定され、
    M=K+Lであり、
    Kは、前記MV成分の整数部分を表すために用いられるビット数を示し、
    Lは、前記MV成分の小数部分を表すために用いられるビット数を示し、
    前記MV成分は、1/2 輝度サンプル精度にて表され、
    前記MVD成分の値は、MVD成分の範囲内となるように抑制され、
    MVD成分の前記範囲は、[-2,2-1]であり、
    M=17であ
    KおよびLは、正の整数である、装置。
  16. 命令を格納する非一時的コンピュータ可読記憶媒体であって、
    前記命令は、プロセッサに、
    映像の第1のブロックと、前記映像のビットストリームとの間の変換のために、前記第1のブロックに関連付けられたMV(Motion Vector)成分およびMVD(Motion Vector Difference)成分を判定することと、
    抑制されたMVD成分に基づいて前記変換を実行することと、
    を有し、
    前記第1のブロックに関連付けられたMV成分の範囲は、[-2 ,2 -1]であると判定され、
    M=K+Lであり、
    Kは、前記MV成分の整数部分を表すために用いられるビット数を示し、
    Lは、前記MV成分の小数部分を表すために用いられるビット数を示し、
    前記MV成分は、1/2 輝度サンプル精度にて表され、
    M、K、およびLは、正の整数であり、
    前記MVD成分の値は、MVD成分の範囲内となるように抑制され、
    MVD成分の前記範囲は、[-2,2-1]であり、
    M=17であ
    KおよびLは、正の整数である、非一時的コンピュータ可読記憶媒体。
  17. 像のビットストリームを格納するための方法であって、
    前記映像の第1のブロックと、前記第1のブロックに関連付けられたMV(Motion Vector)成分およびMVD(Motion Vector Difference)成分を判定することと、
    抑制されたMVD成分に基づいて前記ビットストリームを生成することと、
    非一時的コンピュータ可読記録媒体に前記ビットストリームを格納することと、
    を有し、
    前記第1のブロックに関連付けられたMV成分の範囲は、[-2 ,2 -1]であると判定され、
    M=K+Lであり、
    Kは、前記MV成分の整数部分を表すために用いられるビット数を示し、
    Lは、前記MV成分の小数部分を表すために用いられるビット数を示し、
    前記MV成分は、1/2 輝度サンプル精度にて表され、
    前記MVD成分の値は、MVD成分の範囲内となるように抑制され、
    MVD成分の前記範囲は、[-2,2-1]であり、
    M=17であ
    KおよびLは、正の整数である、方法
JP2021562033A 2019-04-25 2020-04-26 動きベクトルの差に関する制限 Active JP7303329B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023100145A JP2023120345A (ja) 2019-04-25 2023-06-19 動きベクトルの差に関する制限

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CNPCT/CN2019/084228 2019-04-25
CN2019084228 2019-04-25
PCT/CN2020/087068 WO2020216381A1 (en) 2019-04-25 2020-04-26 Restrictions on motion vector difference

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023100145A Division JP2023120345A (ja) 2019-04-25 2023-06-19 動きベクトルの差に関する制限

Publications (2)

Publication Number Publication Date
JP2022529357A JP2022529357A (ja) 2022-06-21
JP7303329B2 true JP7303329B2 (ja) 2023-07-04

Family

ID=72940934

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021562033A Active JP7303329B2 (ja) 2019-04-25 2020-04-26 動きベクトルの差に関する制限
JP2023100145A Pending JP2023120345A (ja) 2019-04-25 2023-06-19 動きベクトルの差に関する制限

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023100145A Pending JP2023120345A (ja) 2019-04-25 2023-06-19 動きベクトルの差に関する制限

Country Status (6)

Country Link
US (2) US11418794B2 (ja)
EP (1) EP3939287A4 (ja)
JP (2) JP7303329B2 (ja)
KR (1) KR20220002897A (ja)
CN (2) CN113785579B (ja)
WO (1) WO2020216381A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3744094A4 (en) * 2018-01-26 2021-11-03 MediaTek Inc. METHOD AND DEVICE FOR AFFINE INTER-PREDICTION FOR A VIDEO ENCODING SYSTEM
EP3939287A4 (en) 2019-04-25 2022-05-11 Beijing Bytedance Network Technology Co., Ltd. RESTRICTIONS ON DIFFERENCE BETWEEN MOVEMENT VECTORS
AU2020297835A1 (en) * 2019-06-21 2022-01-06 Samsung Electronics Co., Ltd. Apparatus and method for encoding and decoding motion information by using neighboring motion information
KR20220023338A (ko) 2019-06-25 2022-03-02 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 모션 벡터 차이에 대한 제약
US11218718B2 (en) * 2019-08-26 2022-01-04 Tencent America LLC Adaptive motion vector resolution signaling
US20230116983A1 (en) * 2021-10-20 2023-04-20 Tencent America LLC Methods and devices for restriction on motion vector difference
US20230128502A1 (en) * 2021-10-21 2023-04-27 Tencent America LLC Schemes for Adjusting Adaptive Resolution for Motion Vector Difference
WO2023132692A1 (ko) * 2022-01-09 2023-07-13 엘지전자 주식회사 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체
WO2023167439A1 (ko) * 2022-03-03 2023-09-07 현대자동차주식회사 움직임벡터 차분의 유도를 이용하는 비디오 코딩을 위한 방법 및 장치
WO2023219600A1 (en) * 2022-05-07 2023-11-16 Google Llc Motion vector coding using a motion vector precision

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019066514A1 (ko) 2017-09-28 2019-04-04 삼성전자 주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007028393A (ja) 2005-07-20 2007-02-01 Matsushita Electric Ind Co Ltd 双方向予測符号化ピクチャの直接モードブロックの動きベクトルを求める方法
US9060176B2 (en) 2009-10-01 2015-06-16 Ntt Docomo, Inc. Motion vector prediction in video coding
US20130170553A1 (en) 2012-01-04 2013-07-04 Qualcomm Incorporated Coding motion vector difference
CN104205838B (zh) * 2012-03-22 2018-05-18 联发科技股份有限公司 可伸缩视频编码的方法以及装置
EP3247116A1 (en) * 2012-07-27 2017-11-22 HFI Innovation Inc. Method of constrain disparity vector derivation in 3d video coding
KR102245026B1 (ko) * 2012-09-28 2021-04-27 소니 주식회사 화상 처리 장치 및 방법
US10021414B2 (en) 2013-01-04 2018-07-10 Qualcomm Incorporated Bitstream constraints and motion vector restriction for inter-view or inter-layer reference pictures
CN103561263B (zh) 2013-11-06 2016-08-24 北京牡丹电子集团有限责任公司数字电视技术中心 基于运动矢量约束和加权运动矢量的运动补偿预测方法
US9854253B2 (en) 2014-06-30 2017-12-26 Qualcomm Incorporated Method for motion vector difference (MVD) and intra block copy vector difference (BVD) coding of screen content video data
US10075712B2 (en) * 2014-11-20 2018-09-11 Hfi Innovation Inc. Method of motion vector and block vector resolution control
KR102617235B1 (ko) 2015-08-24 2023-12-26 엘지전자 주식회사 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
JP2018533298A (ja) 2015-09-24 2018-11-08 エルジー エレクトロニクス インコーポレイティド 映像コーディングシステムにおけるamvrに基づく映像コーディング方法及び装置
KR20180059443A (ko) * 2015-09-24 2018-06-04 엘지전자 주식회사 영상 코딩 시스템에서 움직임 벡터 정제 기반 인터 예측 방법 및 장치
EP3264769A1 (en) 2016-06-30 2018-01-03 Thomson Licensing Method and apparatus for video coding with automatic motion information refinement
EP3264768A1 (en) * 2016-06-30 2018-01-03 Thomson Licensing Method and apparatus for video coding with adaptive motion information refinement
US11356693B2 (en) 2016-09-29 2022-06-07 Qualcomm Incorporated Motion vector coding for video coding
US10462462B2 (en) * 2016-09-29 2019-10-29 Qualcomm Incorporated Motion vector difference coding technique for video coding
EP3301918A1 (en) * 2016-10-03 2018-04-04 Thomson Licensing Method and apparatus for encoding and decoding motion information
US10979732B2 (en) 2016-10-04 2021-04-13 Qualcomm Incorporated Adaptive motion vector precision for video coding
US10448010B2 (en) 2016-10-05 2019-10-15 Qualcomm Incorporated Motion vector prediction for affine motion models in video coding
CN109964484B (zh) * 2016-11-22 2021-11-09 联发科技股份有限公司 视频编码中用于运动向量符号预测的方法及装置
CN116320475A (zh) 2016-12-22 2023-06-23 株式会社Kt 对视频进行解码或编码的方法和发送视频数据的方法
US10856003B2 (en) 2017-10-03 2020-12-01 Qualcomm Incorporated Coding affine prediction motion information for video coding
KR20190108506A (ko) * 2018-03-14 2019-09-24 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN116347099A (zh) 2018-06-19 2023-06-27 北京字节跳动网络技术有限公司 没有运动矢量预测截断的选择的运动矢量差精度
CN116095312A (zh) 2018-08-04 2023-05-09 北京字节跳动网络技术有限公司 视频处理方法、装置和计算机可读介质
CN116546213A (zh) 2018-09-19 2023-08-04 北京字节跳动网络技术有限公司 具有自适应运动矢量分辨率的仿射模式的语法重用
WO2020084461A1 (en) 2018-10-22 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Restrictions on decoder side motion vector derivation based on coding information
EP3939287A4 (en) 2019-04-25 2022-05-11 Beijing Bytedance Network Technology Co., Ltd. RESTRICTIONS ON DIFFERENCE BETWEEN MOVEMENT VECTORS
KR20220023338A (ko) 2019-06-25 2022-03-02 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 모션 벡터 차이에 대한 제약

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019066514A1 (ko) 2017-09-28 2019-04-04 삼성전자 주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Benjamin Bross, et al.,"Versatile Video Coding (Draft 5)",Document: JVET-N1001-v2, [online],JVET-N1001 (version 2),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,2019年04月12日,Pages 55, 99-112, 145-163,[令和4年11月21日検索], インターネット, <URL: https://jvet-experts.org/doc_end_user/current_document.php?id=6640> and <URL: https://jvet-experts.org/doc_end_user/documents/14_Geneva/wg11/JVET-N1001-v2.zip>.,(See document file "JVET-N1001-v2.docx" in the zip file "JVET-N1001-v2.zip".)
Xiaoyu Xiu, et al.,"CE2/4/9-related: Overflow prevention for motion field storage",Document: JVET-N0334, [online],JVET-N0334 (version 2),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,2019年03月20日,Pages 1-5,[令和4年11月21日検索], インターネット, <URL: https://jvet-experts.org/doc_end_user/current_document.php?id=6055> and <URL: https://jvet-experts.org/doc_end_user/documents/14_Geneva/wg11/JVET-N0334-v2.zip>.,(See document file "JVET_N0334.docx" in the zip file "JVET-N0334-v2.zip".)

Also Published As

Publication number Publication date
JP2023120345A (ja) 2023-08-29
CN113785579A (zh) 2021-12-10
JP2022529357A (ja) 2022-06-21
KR20220002897A (ko) 2022-01-07
CN117676134A (zh) 2024-03-08
CN113785579B (zh) 2023-10-20
US20210385462A1 (en) 2021-12-09
EP3939287A4 (en) 2022-05-11
WO2020216381A1 (en) 2020-10-29
US11418794B2 (en) 2022-08-16
US20230041150A1 (en) 2023-02-09
US11909982B2 (en) 2024-02-20
EP3939287A1 (en) 2022-01-19

Similar Documents

Publication Publication Date Title
JP7303329B2 (ja) 動きベクトルの差に関する制限
KR102649200B1 (ko) 인트라 블록 복제-코딩된 블록에 대한 블록 벡터의 코딩
CN114556955B (zh) 参考图片重采样与视频编解码工具之间的相互作用
JP7482218B2 (ja) ビデオコーディングにおける予測タイプシグナリング
JP7391199B2 (ja) 映像コーディングツールのレベルベースシグナリング
US20230074372A1 (en) Restrictions on motion vector difference
JP2022544667A (ja) 映像処理における代替の補間フィルタの選択的使用
JP2022553364A (ja) ビデオ・データを処理する方法、装置及び記憶媒体
KR20220113379A (ko) 비디오 픽처 헤더의 슬라이스 유형의 시그널링
KR20220058551A (ko) 비디오 코딩의 양 예측 가중 샘플
JP2023523638A (ja) 分割構文のためのエントロピーコーディング
CN115176462A (zh) 视频编解码中限制片宽度

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211018

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211018

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220610

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230228

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230523

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230622

R150 Certificate of patent or registration of utility model

Ref document number: 7303329

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150