(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-07
(45)【発行日】2023-11-15
(54)【発明の名称】動き補償処理方法、エンコーダ、デコーダ、記憶媒体
(51)【国際特許分類】
H04N 19/513 20140101AFI20231108BHJP
【FI】
H04N19/513
(21)【出願番号】P 2021573521
(86)(22)【出願日】2019-06-25
(86)【国際出願番号】 CN2019092829
(87)【国際公開番号】W WO2020258039
(87)【国際公開日】2020-12-30
【審査請求日】2022-05-26
(73)【特許権者】
【識別番号】516227559
【氏名又は名称】オッポ広東移動通信有限公司
【氏名又は名称原語表記】GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
【住所又は居所原語表記】No. 18 Haibin Road,Wusha, Chang’an,Dongguan, Guangdong 523860 China
(74)【代理人】
【識別番号】100091487
【氏名又は名称】中村 行孝
(74)【代理人】
【識別番号】100120031
【氏名又は名称】宮嶋 学
(74)【代理人】
【識別番号】100107582
【氏名又は名称】関根 毅
(74)【代理人】
【識別番号】100152205
【氏名又は名称】吉田 昌司
(74)【代理人】
【識別番号】100137523
【氏名又は名称】出口 智也
(72)【発明者】
【氏名】フオ、チュンイェン
(72)【発明者】
【氏名】マー、イェンチュオ
(72)【発明者】
【氏名】ワン、シューアイ
(72)【発明者】
【氏名】ヤン、フーチョン
(72)【発明者】
【氏名】クオ、ツォー
【審査官】田部井 和彦
(56)【参考文献】
【文献】特開2017-188956(JP,A)
【文献】Xu Chen Jianhua Zheng,CE 4: Extension on MMVD (Test 4.2.5) [online], JVET-M JVET-M0291,ITU-T インターネット<URL:http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/13_Marrakech/wg11/JVET-M0291-v4.zip>,2019年01月10日,pp.1-3
【文献】Tomonori Hashimoto Eiichi Sasaki Tomohiro Ikai,CE4: Enhanced Merge with MVD (Test 4.4.4) [online], JVET-M JVET-M0060,ITU-T インターネット<URL:http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/13_Marrakech/wg11/JVET-M0060-v1.zip>,2018年12月28日,pp.1-2
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/513
(57)【特許請求の範囲】
【請求項1】
デコーダに適用される動き補償処理方法であって、
初期動きベクトルが指す点を中心点として検索位置コンステレーションを構築し、前記検索位置コンステレーションにはN個の方向が含まれ、前記方向で少なくとも1つのタイプのステップ長を使用して少なくとも1つの検索ポイントを検索し、Nは1以上の整数であり、前記少なくとも1つの検索ポイントは少なくとも対角線方向の検索ポイントを含み、前記対角線方向は別々に前記中心点を基準にした左上、左下、右上、右下であることと、
プリセット範囲カバレッジルールに基づいて、前記検索位置コンステレーションから少なくとも1つの検索位置を検索し、前記プリセット範囲カバレッジルールは、前記方向に検索ポイントを配列して検索することであることと、
少なくとも1つの検索位置に基づいて新しい動きベクトルを取得し、前記新しい動きベクトルに基づいて動き補償を実行して、コーディングユニット(CU)の予測値を取得することと、
を含
み、
前記少なくとも1つの検索ポイントは水平垂直方向の検索ポイントをさらに含み、前記水平垂直方向は別々に上、下、左、右であり、
前記動き補償処理方法は、
前記方向のタイプが水平垂直方向である場合、第一ステップ長セットを採用し、前記方向のタイプが対角線方向である場合、第二ステップ長セットを採用することをさらに含み、
前記第一ステップ長セットには少なくとも1つのタイプの第一ステップ長が含まれ、前記第二ステップ長セットには少なくとも1つのタイプの第二ステップ長が含まれ、前記第一ステップ長セットと前記第二ステップ長セットは異なり、前記第一ステップ長セット及び前記第二ステップ長セットは交差する、
ことを特徴とする動き補償処理方法。
【請求項2】
エンコーダに適用される動き補償処理方法であって、
初期動きベクトルが指す点を中心点として検索位置コンステレーションを構築し、前記検索位置コンステレーションにはN個の方向が含まれ、前記方向で少なくとも1つのタイプのステップ長を使用して少なくとも1つの検索ポイントを検索し、Nは1以上の整数であり、前記少なくとも1つの検索ポイントは少なくとも対角線
方向の検索ポイントを含み、前記対角線方向は別々に前記中心点を基準にした左上、左下、右上、右下であることと、
プリセット範囲カバレッジルールに基づいて、前記検索位置コンステレーションから少なくとも1つの検索位置を検索し、前記プリセット範囲カバレッジルールは、前記方向に検索ポイントを配列して検索することであることと、
少なくとも1つの検索位置に基づいて新しい動きベクトルを取得し、前記新しい動きベクトルに基づいて動き補償を実行して、コーディングユニット(CU)の予測値を取得することと、
を含
み、
前記少なくとも1つの検索ポイントは水平垂直方向の検索ポイントをさらに含み、前記水平垂直方向は別々に上、下、左、右であり、
前記動き補償処理方法は、
前記方向のタイプが水平垂直方向である場合、第一ステップ長セットを採用し、前記方向のタイプが対角線方向である場合、第二ステップ長セットを採用することをさらに含み、
前記第一ステップ長セットには少なくとも1つのタイプの第一ステップ長が含まれ、前記第二ステップ長セットには少なくとも1つのタイプの第二ステップ長が含まれ、前記第一ステップ長セットと前記第二ステップ長セットは異なり、前記第一ステップ長セット及び前記第二ステップ長セットは交差する、
ことを特徴とする動き補償処理方法。
【請求項3】
エンコーダであって、
構築部分及び符号化部分を含み、
前記構築部分は、初期動きベクトルが指す点を中心点として検索位置コンステレーションを構築するように構成され、前記検索位置コンステレーションにはN個の方向が含まれ、前記方向で少なくとも1つのタイプのステップ長を使用して少なくとも1つの検索ポイントを検索し、前記Nは1以上の整数であり、前記少なくとも1つの検索ポイントは少なくとも対角線方向の検索ポイントを含み、前記対角線方向は別々に前記中心点を基準にした左上、左下、右上、右下であり、
前記符号化部分は、プリセット範囲カバレッジルールに基づいて、前記検索位置コンステレーションから少なくとも1つの検索位置を検索し、少なくとも1つの検索位置に基づいて新しい動きベクトルを取得し、前記新しい動きベクトルに基づいて動き補償を実行して、コーディングユニットの予測値を取得するように構成され、前記プリセット範囲カバレッジルールは、検索方向に検索ポイントを配列して検索することであ
り、
前記少なくとも1つの検索ポイントは水平垂直方向の検索ポイントをさらに含み、前記水平垂直方向は別々に上、下、左、右であり、
前記符号化部分は、前記方向のタイプが水平垂直方向である場合、第一ステップ長セットを採用し、前記方向のタイプが対角線方向である場合、第二ステップ長セットを採用し、
前記第一ステップ長セットには少なくとも1つのタイプの第一ステップ長が含まれ、前記第二ステップ長セットには少なくとも1つのタイプの第二ステップ長が含まれ、前記第一ステップ長セットと前記第二ステップ長セットは異なり、前記第一ステップ長セット及び前記第二ステップ長セットは交差する、
ことを特徴とするエンコーダ。
【請求項4】
デコーダであって、
拡張部分及び復号化部分を含み、
前記拡張部分は、初期動きベクトルが指す点を中心点として検索位置コンステレーションを構築するように構成され、前記検索位置コンステレーションにはN個の方向が含まれ、3(前記方向で少なくとも1つのタイプのステップ長を使用して少なくとも1つの検索ポイントを検索し、Nは1以上の整数であり、前記少なくとも1つの検索ポイントは少なくとも対角線方向の検索ポイントを含み、前記対角線方向は別々に前記中心点を基準にした左上、左下、右上、右下であり、
前記復号化部分は、プリセット範囲カバレッジルールに基づいて、前記検索位置コンステレーションから少なくとも1つの検索位置を検索し、少なくとも1つの検索位置に基づいて新しい動きベクトルを取得し、前記新しい動きベクトルに基づいて動き補償を実行して、コーディングユニット(CU)の予測値を取得するように構成され、前記プリセット範囲カバレッジルールは、検索方向に検索ポイントを配列して検索することであ
り、
前記少なくとも1つの検索ポイントは水平垂直方向の検索ポイントをさらに含み、前記水平垂直方向は別々に上、下、左、右であり、
前記復号化部分は、前記方向のタイプが水平垂直方向である場合、第一ステップ長セットを採用し、前記方向のタイプが対角線方向である場合、第二ステップ長セットを採用し、
前記第一ステップ長セットには少なくとも1つのタイプの第一ステップ長が含まれ、前記第二ステップ長セットには少なくとも1つのタイプの第二ステップ長が含まれ、前記第一ステップ長セットと前記第二ステップ長セットは異なり、前記第一ステップ長セット及び前記第二ステップ長セットは交差する、
ことを特徴とするデコーダ。
【請求項5】
デコーダであって、
プロセッサと、前記プロセッサによって実行可能な命令を格納するメモリと、通信インターフェースと、前記プロセッサ、前記メモリ及び前記通信インターフェースを接続するために用いられるバスと、を含み、前記命令が前記プロセッサによって実行されると、請求項
1に記載の方法を実現する、
ことを特徴とするデコーダ。
【請求項6】
エンコーダであって、
プロセッサと、前記プロセッサによって実行可能な命令を格納するメモリと、通信インターフェースと、前記プロセッサ、前記メモリ及び前記通信インターフェースを接続するために用いられるバスと、を含み、前記命令が前記プロセッサによって実行されると、請求項
2に記載の方法を実現する、
ことを特徴とするエンコーダ。
【請求項7】
デコーダに適用されるコンピュータ可読記憶媒体であって、
前記コンピュータ可読記憶媒体にはプログラムが格納されており、前記プログラムがプロセッサによって実行されると、請求項
1に記載の方法を実現する、
ことを特徴とするコンピュータ可読記憶媒体。
【請求項8】
エンコーダに適用されるコンピュータ記憶媒体であって、
前記コンピュータ記憶媒体にはプログラムが格納されており、前記プログラムがプロセッサによって実行されると、請求項
2に記載の方法を実現する、
ことを特徴とするコンピュータ記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ビデオの符号化及び復号化技術分野に関し、さらに具体的に、動き補償処理方法、エンコーダ、デコーダ及び記憶媒体に関する。
【背景技術】
【0002】
MMVD(Merge with motion vector difference)技術は、インター予測のスキップモード(skip mode)とマージモード(merge mode)で使用され、モーションベクトルの特別な表現形式である。MMVD技術は、主に次のプロセスによって実現される。VVC(versatile video coding)のマージ候補動きベクトルを再利用し、これらの候補のうちの1つを初期モーションベクトルとして選択してから、次の方法で初期モーションベクトルを拡張する。主に開始点、動きの大きさ及び動きの方向を含むいくつかの簡単な構文要素を使用して、動きベクトルの最終的な拡張表現を取得して、新しい動きベクトルを形成する。しかしながら、現時点では、上記の解決策はほとんどの物体の動き条件を満たすことが困難であり、表現できる動き情報の精度が不十分である。
【発明の概要】
【0003】
本出願の実施形態は、動き補償処理方法、エンコーダ、デコーダ及び記憶媒体を提供し、検索ステップ長の一部が選択されないことによる符号化効率低下の問題を回避し、ほとんどの物体の動き条件を満たすので、動き情報をより正確に表現することができる。
【0004】
本出願の実施形態の技術的解決策は以下のように実現される。
【0005】
第一態様において、本出願の実施形態は動き補償処理方法を提供する。この方法は、以下の内容を含む。初期動きベクトルに基づいて検索位置コンステレーション(constellation)を構築し、検索位置コンステレーションにはN個の検索方向が含まれ、検索方向で少なくとも1つのタイプの検索ステップ長を使用して検索することによって少なくとも1つの検索ポイントを取得し、Nは1以上の整数であり、N個の検索方向は少なくとも対角線検索方向を含む。プリセット範囲カバレッジルールに基づいて、検索位置コンステレーションから少なくとも1つの検索位置を選択し、プリセット範囲カバレッジルールは、プリセット数の検索ポイントをN個の検索方向に分散させて選択することである。少なくとも1つの検索位置を新しい動きベクトルとして、新しい動きベクトルに基づいて動き補償を実行して、コーディングユニット(coding unit,CU)の予測値を取得する。
【0006】
第二態様において、本出願の実施形態はエンコーダを提供する。エンコーダは、構築部分及び符号化部分を含む。構築部分は、初期動きベクトルに基づいて検索位置コンステレーションを構築するように構成される。検索位置コンステレーションにはN個の検索方向が含まれ、検索方向で少なくとも1つのタイプの検索ステップ長を使用して検索することによって少なくとも1つの検索ポイントを取得し、Nは1以上の整数であり、N個の検索方向は少なくとも対角線検索方向を含む。符号化部分は、プリセット範囲カバレッジルールに基づいて、検索位置コンステレーションから少なくとも1つの検索位置を選択し、少なくとも1つの検索位置を新しい動きベクトルとして、新しい動きベクトルに基づいて動き補償を実行して、コーディングユニットの予測値を取得するように構成される。プリセット範囲カバレッジルールは、プリセット数の検索ポイントをN個の検索方向に分散させて選択することである。
【0007】
第三態様において、本出願の実施形態はデコーダに適用される動き補償処理方法を提供する。この方法は、以下の内容を含む。初期動きベクトルの構文要素に基づいて、検索位置コンステレーションにおける初期動きベクトルに対応する少なくとも1つの検索位置を拡張する。初期動きベクトルを拡張して取得した新しい動きベクトルに基づいて動き補償を実行して再構成されたブロックを取得する。構文要素は、初期動きベクトルインデックス、検索方向インデックス、検索ステップ長インデックスを含み、検索方向インデックスに示される検索方向は少なくとも対角線検索方向を含む。
【0008】
第四態様において、本出願の実施形態はデコーダを提供する。デコーダは、拡張部分及び復号化部分を含む。拡張部分は、初期動きベクトルの構文要素に基づいて、検索位置コンステレーションにおける初期動きベクトルに対応する少なくとも1つの検索位置を拡張するように構成される。構文要素は、初期動きベクトルインデックス、検索方向インデックス、検索ステップ長インデックスを含み、検索方向インデックスに示される検索方向は少なくとも対角線検索方向を含む。復号化部分は、初期動きベクトルを拡張して取得した新しい動きベクトルに基づいて動き補償を実行して再構成されたブロックを取得するように構成される。
【0009】
第五態様において、本出願の実施形態はエンコーダを提供する。エンコーダは、プロセッサと、プロセッサによって実行可能な命令を格納するメモリと、通信インターフェースと、プロセッサ、メモリ及び通信インターフェースを接続するために用いられるバスと、を含む。命令がプロセッサによって実行されると、第一態様又は他の各態様の方案を実現する。
【0010】
第六態様において、本出願の実施形態はデコーダを提供する。デコーダは、プロセッサと、プロセッサによって実行可能な命令を格納するメモリと、通信インターフェースと、プロセッサ、メモリ及び通信インターフェースを接続するために用いられるバスと、を含む。命令がプロセッサによって実行されると、第三態様又は様々な態様の方案を実現する。
【0011】
第七態様において、本出願の実施形態はコンピュータ記憶媒体を提供する。コンピュータ記憶媒体には、予測プログラムが格納されている。予測プログラムがプロセッサによって実行されると、第一態様の方法のステップ又は第三態様の方法のステップを実現する。
【0012】
本出願の実施形態において、対角線検索方向を含むN個の検索方向及び複数のタイプの検索ステップ長に基づいて、検索位置を確定する。従来の技術と比較して、各方向の検索ステップ長を減少し、検索ステップ長の一部が選択されないことによる符号化効率低下の問題を回避し、且つ検索方向を増加することにより、ほとんどの物体の動き条件を満たすことができるので、動き情報をより正確に表現することができる。
【図面の簡単な説明】
【0013】
【
図1】
図1は、イントラ予測を使用して検索位置を確定することを示す概略図である。
【
図2】
図2は、本出願の実施形態に係わる動き補償処理方法の第一フローチャートである。
【
図3】
図3は、本出願の実施形態に係わる検索位置を確定することを示す概略図である。
【
図4】
図4は、本出願がMMVDに適用されるときの検索方向を示す概略図である。
【
図5】
図5は、本出願がMMVDで複数の検索位置を取得することを示す概略図である。
【
図6】
図6は、ビデオコーディングシステムの構造を示す概略図である。
【
図7】
図7は、ビデオデコーディングシステムの構造を示す概略図である。
【
図8】
図8は、本出願の実施形態に係わるエンコーダの構造を示す概略図である。
【
図9】
図9は、本出願の実施形態に係わる動き補償処理方法の第二フローチャートである。
【
図10】
図10は、本出願の実施形態に係わるデコーダの構造を示す概略図である。
【
図11】
図11は、本出願の実施形態に係わるハードウェアの構造を示す概略図である。
【発明を実施するための形態】
【0014】
以下、本出願の実施形態の図面を参照して、本出願の実施形態の技術方案を明確且つ完全に説明する。記載された具体的な実施形態は、ただ関連する出願を説明するために用いられ、本出願を限定するものではないことを理解されるべきである。また、便利に説明するために、図面には関連する出願に関連する部分のみが示されていることに留意されたい。
【0015】
MMVD技術において、VVC(versatile videocoding)でマージ候補リストを構築するプロセスによって、現在のコーディングユニット(CU)の動きベクトル候補リストを取得する。次に、リスト内の各候補に対して次のように構文拡張を実行する。
図1に示されたように、各候補を初期動きベクトルとして、参照画像において、この候補が指す位置を出発点として、上、下、左、右の4方向で8つの異なるステップ長で検索する。各初期動きベクトルの各方向における各ステップ長は全て新しい動きベクトルを形成することができ、動きベクトルに基づいて動き補償を行って、現在のCUの予測値を取得する。現在の全ての予測値に対してレート歪みコスト比較(rate-distortion cost comparison)を実行して、最適な構文要素の組み合わせを選択し、マージ候補リスト内の初期動きベクトルの3つの構文要素、即ち位置インデックス、動作方向インデックス及び検索ステップ長インデックスを記録する。
【0016】
アルゴリズムの複雑さとパフォーマンスとの間の妥協点を考慮すると、現在、アルゴリズムでは、マージ候補リストの前の2つの候補が初期動きベクトルとして使用される。初期動きベクトルのインデックス、8つのタイプの検索ステップ長のインデックス、4つの検索方向のインデックスについて、次の表1、2、3を参照することができる。
【0017】
【0018】
【0019】
【0020】
上記のMMVD技術に基づいて新しい動きベクトルを選択する場合、8つのタイプの検索ステップ長の使用は完全ではない。VVCの標準テストシーケンスで8つのタイプのステップ長が選択される確率を統計することにより、各テストシーケンスに対して、前の4つのタイプの検索ステップ長(つまり、1/4、1/2、1、2)が選択される確率はほぼ90%以上を占めることが発見された。そのため、残りの4つのタイプのステップ長は十分に利用されないため、符号化効率が低下する。さらに、検索方向は上、下、左、右の4つだけであるので、ほとんどの物体の動き条件を満たすことが難しく、表現できる動き情報の精度は不十分である。
【0021】
上記に基づいて、本出願の実施形態は動き補償処理方法を提供する。
図2に示されたように、この方法は以下の内容を含む。
【0022】
ブロック11:初期動きベクトルに基づいて検索位置コンステレーション(constellation)を構築する。検索位置コンステレーションにはN個の検索方向が含まれる。検索方向で少なくとも1つのタイプの検索ステップ長を使用して検索することによって少なくとも1つの検索ポイントを取得し、Nは1以上の整数であり、N個の検索方向は少なくとも対角線検索方向を含む。
【0023】
ブロック12:プリセット範囲カバレッジルールに基づいて、検索位置コンステレーションから少なくとも1つの検索位置を選択する。プリセット範囲カバレッジルールは、プリセット数の検索ポイントをN個の検索方向に分散させて選択することである。
【0024】
ブロック13:少なくとも1つの検索位置を新しい動きベクトルとして、新しい動きベクトルに基づいて動き補償を実行して、コーディングユニット(coding unit,CU)の予測値を取得する。
【0025】
本出願の実施形態に係わる動き補償処理方法は、ビデオコーディング及びデコーディングシステムのエンコーダに適用することができる。
【0026】
一般的に、上記の解決策によれば、先ず、距離によって複数の検索方向に利用可能な検索ポイントを割り当てて検索位置コンステレーションを構築し、次に、プリセット範囲カバレッジルールに基づいて、コンステレーションから適切な数量の検索位置を選択する。
【0027】
即ち、本実施形態において、プリセット検索位置が32個であることを前提として、元の4つの検索方向を8つの検索方向に拡張し、各検索方向の8つの検索ステップ長の数量を減少し、且つ異なる検索方向に検索ステップ長を割り当てて、比較的広い検索範囲をカバーする。
【0028】
初期動きベクトルに基づいて検索位置コンステレーションを構築することは、具体的には、初期動きベクトルが指す点を中心点として検索位置コンステレーションを構築することをさらに含む。
【0029】
8つの検索方向は、水平垂直検索方向及び対角線検索方向の2つのタイプに分類される。
【0030】
水平垂直検索方向は、別々に上、下、左、右である。対角線検索方向は、別々に左上、左下、右上、右下である。
【0031】
検索ステップ長は、検索方向のタイプに対応する。
【0032】
この方法はさらに以下の内容を含む。検索方向のタイプが水平垂直検索方向である場合、第一検索ステップ長セットが採用される。検索方向のタイプが対角線検索方向である場合、第二検索ステップ長セットが採用される。
【0033】
プリセット検索位置が32個であることを前提として、第一検索ステップ長セットには少なくとも1つのタイプの第一検索ステップ長が含まれ、第二検索ステップ長セットには少なくとも1つのタイプの第二検索ステップ長が含まれる。
【0034】
本実施形態において、第一検索ステップ長セットと第二検索ステップ長セットは、同じであっても異なってもよいことを指摘すべきである。
【0035】
第一検索ステップ長セットと第二検索ステップ長セットが同じである場合、水平垂直検索方向と対角線検索方向で全て同じ4つの検索ステップ長(ステップ長は、検索位置とのコンステレーション中心点との間の距離である)を採用して検索位置を選択すると見なすことができる。
【0036】
或いは、第一検索ステップ長セット及び第二検索ステップ長セットが異なる場合、第一検索ステップ長セット及び第二検索ステップ長セットは交差することができる。例えば、水平垂直方向の検索ステップ長と対角線方向の検索ステップ長がずらして増加される。1つの例示において、水平垂直方向の距離が優先的に選択され、それから対角線方向の検索ステップ長を2つの隣接する水平垂直方向の検索ステップ長の間に交差する。このように、対角線方向の検索が水平垂直方向で検索できない領域をカバーできるようにする。
【0037】
つまり、第一検索ステップ長セットの第一タイプの第一検索ステップ長と第二タイプの第一検索ステップ長との間に第二検索ステップ長セットの第一タイプの第二検索ステップ長があることができる。同様に、第二検索ステップ長セットの第二タイプの第二検索ステップ長と第三タイプの第二検索ステップ長との間に第一検索ステップ長セットの第三タイプの第一検索ステップ長があることができる。
【0038】
対角線方向位置は(lx、ly)として表され、ここでlx=lyであり、本文では、検索ステップ長は単一値lxとして表される。
【0039】
例えば、第一検索ステップ長は、1/4ピクセル、1/2ピクセル、2ピクセル、4ピクセルのうちの少なくとも1つであり、第二検索ステップ長は、1/8ピクセル、3/8ピクセル、3/4ピクセル、3/2ピクセルのうちの少なくとも1つである。
【0040】
以下、添付された図面を参照して、本実施形態の技術方案を説明する。
【0041】
倍増された検索ステップ長を半径として、初期動きベクトルが指す位置を円心として円を描く。対角線方向の検索ステップ長はすべて円のエッジに近く、順番に遠く拡大するように設定されている。ここで、対角線方向の検索ステップ長は、第一検索ステップ長セット及び第二検索ステップ長セットに基づいて確定することができる。例えば、第一検索ステップ長セット及び第二検索ステップ長セットが同じである場合、4つのタイプの第一検索ステップ長又は第二検索ステップ長のそれぞれを半径として円を描き、4つの円を取得する。対角線方向及び水平垂直方向に全て4つの検索ポイントがある。第一検索ステップ長セット及び第二検索ステップ長セットが異なる場合、別々に4つの第一検索ステップ長及び4つの第二検索ステップ長に基づいて、対角検索方向及び水平垂直検索方向で複数の検索ポイントを取得することができる。
【0042】
次に、統計に基づいて、カバレッジエリアに応じて代表的な検索ポイントを選択し、補間演算を便利にする原則に基づいて、2の累乗で割ることで表現できる位置に近似する。
図3に示されたように、水平方向と垂直方向の両方で1/4ピクセル位置、1/2ピクセル位置、2ピクセル位置、4ピクセル位置を選択し、対角線方向では(1/8,1/8)ピクセル位置、(3/8,3/8)ピクセル位置、(3/4,3/4)ピクセル位置、(3/2,3/2)ピクセル位置を選択する。代表的な検索ポイントを選択する場合、異なる解像度シーケンスの異なる統計的特性を考慮して、半径が1/2である円と半径が2である円の近くにより多い検索ポイントを割り当てることができる。
【0043】
これに基づいてMMVDを実現する詳細な説明は次のとおりである。
【0044】
先ず、候補リストから初期動きベクトルを選択する。
【0045】
具体的には、依然としてVVCのマージ候補リストの前の2つの候補を初期動きベクトルとして再利用する。各初期動きベクトルに対して、依然として初期動きベクトルインデックス(initial motion vector index)、検索方向インデックス(search direction index)、検索ステップ長インデックス(search step length index)の3の構文要素を使用して拡張表現を行う。
【0046】
拡張表現を行う過程において、検索方向部分について、
図4に示されたように、元の上下左右の4つの方向は、上下左右の4つの方向及び左上、右上、右下、左下の4つの方向を含むように変更され、即ち、元の方向に加えて、対角線方向が追加される。
【0047】
図4に示されたように、新しく追加された方向は実線で示され、元の方向は破線で示されている。このように、元の水平垂直方向に加えて、動き方向が新たに追加され、動きベクトル表現の柔軟性を高めることができる。
【0048】
本実施形態における検索方向インデックステーブルを表4に示す。
【0049】
【0050】
次に、検索ステップ長を変更する。
図5に示されたように、先ず、元のアルゴリズムの8つのタイプの検索ステップ長を一般的に使用される4つのタイプの検索ステップ長に減少する。
【0051】
【0052】
表5に基づいて、比較的広い検索範囲をカバーするために、表6では、対角線方向に対して上下左右方向とは異なる検索ステップ長を設定した。
【0053】
【0054】
最後に、各初期動きベクトルに対して、形成された検索方向及びステップ長は
図5に示されている。
【0055】
上述した技術方案に基づいて、本実施形態はさらに以下の内容を含むことができる。少なくとも1つの検索位置を新しい動きベクトルとする。新しい動きベクトルに基づいて動き補償を行って、CUの予測値を取得する。次に、現在の全ての予測値に対してレート歪みコスト比較(rate-distortion cost comparison)を実行して、最適な構文要素の組み合わせを選択し、マージ候補リスト内の初期動きベクトルの3つの構文要素、即ち位置インデックス、動作方向インデックス及び検索ステップ長インデックスを記録する。
【0056】
上述した方案を採用することにより、ランダムアクセス条件下でJVET(joint video experts team)が要求するテストシーケンスをテストし、Y、Cb、Cr成分のBDレートの平均変動は、それぞれ-0.14%、-0.12%、0.10%である。 このデータは、この技術がコーディング性能を向上させることを表す。
【0057】
図6は、本出願の実施形態に係わるビデオエンコーディングシステムの構造を示すブロック図である。
図6に示されたように、ビデオエンコーディングシステム100は、変換及び量子化モジュール101、イントラ推定モジュール102、イントラ予測モジュール103、動き補償モジュール104、動き推定モジュール105、逆変換及び逆量子化モジュール106、フィルタ制御分析モジュール107、デブロッキング(deblocking,DBK)フィルタリング及びサンプル適応オフセット(sample adaptive offset,SAO)フィルタリングモジュール108、ヘッダ情報コーディング及びCABAC(context-based adaptive binary arithmetic coding)コーディングモジュール109、復号化された画像バッファモジュール110などを含む。
図7は、本出願の実施形態に係わるビデオデコーディングシステムの構造を示すブロック図である。
図7に示されたように、ビデオデコーディングシステム200は、ヘッダ情報デコーディング及びCABACデコーディングモジュール201、逆変換及び逆量子化モジュール202、イントラ予測モジュール203、動き補償モジュール204、デブロッキングフィルタリング及びSAOフィルタリングモジュール205、復号化された画像バッファモジュール206などを含む。ビデオ画像は、ビデオエンコーディングシステム
100の
変換及び量子化モジュール101、イントラ推定モジュール102、イントラ予測モジュール103、動き補償モジュール104、動き推定モジュール105、逆変換及び逆量子化モジュール106、フィルタ制御分析モジュール107、デブロッキング(DBK)フィルタリング及びサンプル適応オフセット(SAO)フィルタリングモジュール108、ヘッダ情報コーディング及びCABACコーディングモジュール109、復号化された画像バッファモジュール110などによって処理されてから、ビデオ画像のコードストリームを出力する。このコードストリームはビデオデコーディングシステム200に入力されて、ビデオデコーディングシステム200のヘッダ情報デコーディング及びCABACデコーディングモジュール201、逆変換及び逆量子化モジュール202、イントラ予測モジュール203及び動き補償モジュール204などによって処理されてから、最後に復元された元のビデオ画像を取得する。
【0058】
さらに、本出願によって提出されるビデオエンコーディング方法は、ビデオエンコーディングハイブリッドフレームワークのイントラ予測部分に影響を与えることができ、即ち、主にビデオエンコーディングにおける動き補償モジュール104及び動き推定モジュール105、ビデオデコーディングにおける動き補償モジュール204に応用され、符号化端と復号化端の両方に作用する。
【0059】
上述した技術方案に基づいて、本実施形態において、演算回数がほぼ変化しないという条件下で、符号化性能を改善することができる。従来の技術では、2つの初期動きベクトルに対して拡張表現を行うことを必要として、合計2*4*8=64回の比較が必要であり、ここで、2は2つの初期動きベクトルを表し、4は検索方向を表し、8は検索ステップ長を表す。変更後も、依然として2つの初期動きベクトルに対して拡張表現を実行し、合計2*8*4=64回の比較が必要であり、8つの検索方向と4つの検索ステップ長が含まれる。本技術は、元の技術と同じ量の演算を維持しながら、全体的な符号化性能を向上させることができる。
【0060】
これに対応して、上述した方案に基づいて、復号化端の複雑さが変化しないように保つことができる。従来の技術において、復号化端で3つの構文要素を復号化することにより、初期動きベクトルに対して拡張表現を実行し、動き補償を実行して、最後に再構成されたブロックを取得する。本方案では、依然として3つの構文要素を復号化することにより、初期動きベクトルに対して拡張表現を実行するので、複雑さは変化しない。
【0061】
本実施形態によって提供される技術方案によると、8つの検索方向及び各方向に対応する4つの検索ステップ長に基づいて、検索位置を確定することができる。このように、従来の技術と比較して、各方向の検索ステップ長を減少して、検索ステップ長の一部が選択されないことによる符号化効率低下の問題を回避し、且つ検索方向を増加することにより、ほとんどの物体の動き条件を満たすことができるので、動き情報をより正確に表現することができる。
【0062】
上記に基づいて、本実施形態はエンコーダを提供する。
図8に示されるように、エンコーダは構築部分32及び符号化部分33を含む。
【0063】
構築部分32は、初期動きベクトルに基づいて検索位置コンステレーションを構築するように構成される。検索位置コンステレーションにはN個の検索方向が含まれ、検索方向で少なくとも1つのタイプの検索ステップ長を使用して検索することによって少なくとも1つの検索ポイントを取得し、Nは1以上の整数であり、N個の検索方向は少なくとも対角線検索方向を含む。
【0064】
符号化部分33は、プリセット範囲カバレッジルールに基づいて、検索位置コンステレーションから少なくとも1つの検索位置を選択し、少なくとも1つの検索位置を新しい動きベクトルとして、新しい動きベクトルに基づいて動き補償を実行して、コーディングユニットの予測値を取得するように構成される。プリセット範囲カバレッジルールは、プリセット数の検索ポイントをN個の検索方向に分散させて選択することである。
【0065】
本出願の実施形態に係わる方法は、ビデオコーディング及びデコーディングシステムのエンコーダに適用することができる。
【0066】
即ち、本実施形態において、プリセット検索位置が32個であることを前提として、元の4つの検索方向を8つの検索方向に拡張し、各検索方向の8つの検索ステップ長の数量を減少し、且つ異なる検索方向に検索ステップ長を割り当てて、比較的広い検索範囲をカバーする。
【0067】
具体的には、構築部分は、初期動きベクトルが指す点を中心点として検索位置コンステレーションを構築する。
【0068】
検索位置コンステレーションに含まれるN個の検索方向は、水平垂直検索方向をさらに含む。水平垂直検索方向は、別々に上、下、左、右である。対角線検索方向は、別々に左上、左下、右上、右下である。
【0069】
検索ステップ長は、検索方向のタイプに対応する。符号化部分は、検索方向のタイプが水平垂直検索方向である場合、第一検索ステップ長セットを採用し、検索方向のタイプが対角線検索方向である場合、第二検索ステップ長セットを採用する。
【0070】
プリセット検索位置が32個であることを前提として、第一検索ステップ長セットには少なくとも1つのタイプの第一検索ステップ長が含まれ、第二検索ステップ長セットには少なくとも1つのタイプの第二検索ステップ長が含まれる。
【0071】
本実施形態において、第一検索ステップ長セット及び第二検索ステップ長セットは、同じであっても異なってもよいことを指摘すべきである。
【0072】
第一検索ステップ長セット及び第二検索ステップ長セットが同じである場合、水平垂直検索方向と対角線検索方向で同じ4つの検索ステップ長(ステップ長は、検索位置とのコンステレーション中心点との間の距離である)を採用して検索位置を選択すると見なすことができる。
【0073】
或いは、第一検索ステップ長セット及び第二検索ステップ長セットが異なる場合、第一検索ステップ長セット及び第二検索ステップ長セットは交差することができる。例えば、水平垂直方向の検索ステップ長と対角線方向の検索ステップ長がずらして増加される。1つの例示において、水平垂直方向の距離が優先的に選択され、それから対角線方向の検索ステップ長を2つの隣接する水平垂直方向の検索ステップ長の間に交差する。このように、対角線方向の検索が水平垂直方向で検索できない領域をカバーできるようにする。
【0074】
つまり、第一検索ステップ長セットの第一タイプの第一検索ステップ長と第二タイプの第一検索ステップ長との間に第二検索ステップ長セットの第一タイプの第二検索ステップ長があることができる。同様に、第二検索ステップ長セットの第二タイプの第二検索ステップ長と第三タイプの第二検索ステップ長との間に第一検索ステップ長セットの第三タイプの第一検索ステップ長があることができる。
【0075】
対角線方向位置は(lx、ly)として表され、ここでlx=lyであり、本文では、検索ステップ長は単一値lxとして表される。
【0076】
例えば、第一検索ステップ長は、1/4ピクセル、1/2ピクセル、2ピクセル、4ピクセルのうちの少なくとも1つであり、第二検索ステップ長は、1/8ピクセル、3/8ピクセル、3/4ピクセル、3/2ピクセルのうちの少なくとも1つである。
【0077】
以下、添付された図面を参照して、本実施形態の技術方案を説明する。
【0078】
倍増された検索ステップ長を半径として、初期動きベクトルが指す位置を円心として円を描く。対角線方向の検索ステップ長はすべて円のエッジに近く、順番に遠く拡大するように設定されている。ここで、対角線方向の検索ステップ長は、第一検索ステップ長セット及び第二検索ステップ長セットに基づいて確定することができる。例えば、第一検索ステップ長セット及び第二検索ステップ長セットが同じである場合、4つのタイプの第一検索ステップ長又は第二検索ステップ長のそれぞれを半径として円を描き、4つの円を取得する。対角線方向及び水平垂直方向に全て4つの検索ポイントがある。第一検索ステップ長セット及び第二検索ステップ長セットが異なる場合、別々に4つの第一検索ステップ長及び4つの第二検索ステップ長に基づいて、対角検索方向及び水平垂直検索方向で複数の検索ポイントを取得することができる。
【0079】
次に、統計に基づいて、カバレッジエリアに応じて代表的な検索ポイントを選択し、補間演算を便利にする原則に基づいて、2の累乗で割ることで表現できる位置に近似する。
図3に示されたように、水平方向と垂直方向の両方で1/4ピクセル位置、1/2ピクセル位置、2ピクセル位置、4ピクセル位置を選択し、対角線方向では(1/8,1/8)ピクセル位置、(3/8,3/8)ピクセル位置、(3/4,3/4)ピクセル位置、(3/2,3/2)ピクセル位置を選択する。代表的な検索ポイントを選択する場合、異なる解像度シーケンスの異なる統計的特性を考慮して、半径が1/2である円と半径が2である円の近くにより多い検索ポイントを割り当てることができる。
【0080】
これに基づいてMMVDを実現する詳細な説明は次のとおりである。
【0081】
先ず、候補リストから初期動きベクトルを選択する。
【0082】
具体的には、依然としてVVCのマージ候補リストの前の2つの候補を初期動きベクトルとして再利用する。各初期動きベクトルに対して、依然として初期動きベクトルインデックス、検索方向インデックス、検索ステップ長インデックスの3の構文要素を使用して拡張表現を行う。
【0083】
拡張表現を行う過程において、検索方向部分について、
図4に示されたように、元の上下左右の4つの方向は、上下左右の4つの方向及び左上、右上、右下、左下の4つの方向を含むように変更され、即ち、元の方向に加えて、対角線方向が追加される。
【0084】
図4に示されたように、新しく追加された方向は実線で示され、元の方向は破線で示されている。このように、元の水平垂直方向に加えて、動き方向が新たに追加され、動きベクトル表現の柔軟性を高めることができる。
【0085】
本実施形態における検索方向インデックステーブルを表4に示す。
【0086】
【0087】
次に、検索ステップ長を変更する。
図5に示されたように、先ず、元のアルゴリズムの8つのタイプの検索ステップ長を一般的に使用される4つのタイプの検索ステップ長に減少する。
【0088】
【0089】
表5に基づいて、比較的広い検索範囲をカバーするために、表6では、対角線方向に対して上下左右方向とは異なる検索ステップ長を設定した。
【0090】
【0091】
最後に、各初期動きベクトルについて、形成された検索方向及びステップ長は
図5に示されている。
【0092】
上述した技術方案に基づいて、本実施形態の符号化部分は、少なくとも1つの検索位置を新しい動きベクトルとする。新しい動きベクトルに基づいて動き補償を行って、CUの予測値を取得する。次に、現在のすべての予測値に対してレート歪みコスト比較を実行して、最適な構文要素の組み合わせを選択して、マージ候補リスト内の初期動きベクトルの3つの構文要素、即ち位置インデックス、動作方向インデックス及び検索ステップ長インデックスを記録する。
【0093】
上述した方案を採用することにより、ランダムアクセス条件下でJVET(joint video experts team)が要求するテストシーケンスをテストし、Y、Cb、Cr成分のBDレートの平均変動は、それぞれ-0.14%、-0.12%、0.10%である。 このデータは、この技術がコーディング性能を向上させることを表す。
【0094】
上述した技術方案に基づいて、本実施形態において、演算回数がほぼ変化しないという条件下で、符号化性能を改善することができる。従来の技術では、2つの初期動きベクトルに対して拡張表現を行うことを必要として、合計2*4*8=64回の比較が必要であり、ここで、2は2つの初期動きベクトルを表し、4は検索方向を表し、8は検索ステップ長を表す。変更後も、依然として2つの初期動きベクトルに対して拡張表現を実行し、合計2*8*4=64回の比較が必要であり、8つの検索方向と4つの検索ステップ長が含まれる。本技術は、元の技術と同じ量の演算を維持しながら、全体的な符号化性能を向上させることができる。
【0095】
これに対応して、上述した方案に基づいて、復号化端の複雑さが変化しないように保つことができる。従来の技術において、復号化端で3つの構文要素を復号化することにより、初期動きベクトルに対して拡張表現を実行し、動き補償を実行して、最終的に再構成されたブロックを取得する。本方案では、依然として3つの構文要素を復号化することにより、初期動きベクトルに対して拡張表現を実行し、複雑さは変化しない。
【0096】
本実施形態によって提供される技術方案によると、8つの検索方向及び各方向に対応する4つの検索ステップ長に基づいて、検索位置を確定することができる。このように、従来の技術と比較して、各方向の検索ステップ長を減少して、検索ステップ長の一部が選択されないことによる符号化効率低下の問題を回避し、且つ検索方向を増加することにより、ほとんどの物体の動き条件を満たすことができるので、動き情報をより正確に表現することができる。
【0097】
本実施形態は、デコーダに適用される動き補償処理方法を提供する。
図9に示されたように、この方法は以下の内容を含む。
【0098】
ブロック41:初期動きベクトルの構文要素に基づいて、検索位置コンステレーションにおける初期動きベクトルに対応する少なくとも1つの検索位置を拡張する。
【0099】
ブロック42:初期動きベクトルを拡張して取得した新しい動きベクトルに基づいて動き補償を実行して再構成されたブロックを取得する。
【0100】
構文要素は、初期動きベクトルインデックス、検索方向インデックス、検索ステップ長インデックスを含み、検索方向インデックスに示される検索方向は少なくとも対角線検索方向を含む。
【0101】
初期動きベクトルを拡張して取得した新しい動きベクトルに基づいて動き補償を実行して再構成されたブロックを取得することは、初期動きベクトルを拡張して取得した新しい動きベクトルに基づいて動き補償を実行して現在の処理ブロックの再構成されたブロックを取得することである。現在の処理ブロックは、現在のコーディングブロックである。
【0102】
本出願の実施形態に係わる方法は、ビデオコーディング及びデコーディングシステムのデコーダに適用することができる。
【0103】
一般的に、上記の解決策によれば、先ず、距離によって複数の検索方向に利用可能な検索ポイントを割り当てて検索位置コンステレーションを構築し、次に、プリセット範囲カバレッジルールに基づいて、コンステレーションから適切な数量の検索位置を選択する。
【0104】
即ち、本実施形態において、プリセット検索位置が32個であることを前提として、元の4つの検索方向を8つの検索方向に拡張し、各検索方向の8つの検索ステップ長の数量を減少し、且つ異なる検索方向に検索ステップ長を割り当てて、比較的広い検索範囲をカバーする。
【0105】
具体的には、初期動きベクトルが指す点を中心点として検索位置コンステレーションを構築する。
【0106】
検索位置コンステレーションに含まれる検索方法は、水平垂直検索方向をさらに含む。水平垂直検索方向は、別々に上、下、左、右である。対角線検索方向は、別々に左上、左下、右上、右下である。
【0107】
検索ステップ長は、検索方向のタイプに対応する。
【0108】
この方法はさらに以下の内容を含む。検索方向のタイプが水平垂直検索方向である場合、第一検索ステップ長セットが採用される。検索方向のタイプが対角線検索方向である場合、第二検索ステップ長セットが採用される。
【0109】
プリセット検索位置が32個であることを前提として、第一検索ステップ長セットには少なくとも1つのタイプの第一検索ステップ長が含まれ、第二検索ステップ長セットには少なくとも1つのタイプの第二検索ステップ長が含まれる。
【0110】
本実施形態において、第一検索ステップ長セット及び第二検索ステップ長セットは、同じであっても異なってもよいことを指摘すべきである。
【0111】
第一検索ステップ長セット及び第二検索ステップ長セットが同じである場合、水平垂直検索方向と対角線検索方向で同じ4つの検索ステップ長(ステップ長は、検索位置とのコンステレーション中心点との間の距離である)を採用して検索位置を選択すると見なすことができる。
【0112】
或いは、第一検索ステップ長セット及び第二検索ステップ長セットが異なる場合、第一検索ステップ長セット及び第二検索ステップ長セットは交差することができる。例えば、水平垂直方向の検索ステップ長と対角線方向の検索ステップ長がずらして増加される。1つの例示において、水平垂直方向の距離が優先的に選択され、それから対角線方向の検索ステップ長を2つの隣接する水平垂直方向の検索ステップ長の間に交差する。このように、対角線方向の検索が水平垂直方向で検索できない領域をカバーできるようにする。
【0113】
つまり、第一検索ステップ長セットの第一タイプの第一検索ステップ長と第二タイプの第一検索ステップ長との間に第二検索ステップ長セットの第一タイプの第二検索ステップ長があることができる。同様に、第二検索ステップ長セットの第二タイプの第二検索ステップ長と第三タイプの第二検索ステップ長との間に第一検索ステップ長セットの第三タイプの第一検索ステップ長があることができる。
【0114】
対角線方向位置は(lx、ly)として表され、ここでlx=lyであり、本文では、検索ステップ長は単一値lxとして表される。
【0115】
例えば、第一検索ステップ長は、1/4ピクセル、1/2ピクセル、2ピクセル、4ピクセルのうちの少なくとも1つであり、第二検索ステップ長は、1/8ピクセル、3/8ピクセル、3/4ピクセル、3/2ピクセルのうちの少なくとも1つである。
【0116】
これに基づいてMMVDを実現する詳細な説明は次のとおりである。
【0117】
先ず、候補リストから初期動きベクトルを選択する。
【0118】
具体的には、依然としてVVCのマージ候補リストの前の2つの候補を初期動きベクトルとして再利用する。各初期動きベクトルに対して、依然として初期動きベクトルインデックス、検索方向インデックス、検索ステップ長インデックスの3の構文要素を使用して拡張表現を行う。
【0119】
拡張表現を行う過程において、検索方向部分について、
図4に示されたように、元の上下左右の4つの方向は、上下左右の4つの方向及び左上、右上、右下、左下の4つの方向を含むように変更され、即ち、元の方向に加えて、対角線方向が追加される。
【0120】
図4に示されたように、新しく追加された方向は実線で示され、元の方向は破線で示されている。このように、元の水平垂直方向に加えて、動き方向が新たに追加され、動きベクトル表現の柔軟性を高めることができる。
【0121】
本実施形態における検索方向インデックステーブルを表4に示す。
【0122】
【0123】
次に、検索ステップ長を変更する。
図5に示されたように、先ず、元のアルゴリズムの8つのタイプの検索ステップ長を一般的に使用される4つのタイプの検索ステップ長に減少する。
【0124】
【0125】
表5に基づいて、比較的広い検索範囲をカバーするために、表6では、対角線方向に対して上下左右方向とは異なる検索ステップ長を設定した。
【0126】
【0127】
最後に、各初期動きベクトルについて、形成された検索方向及びステップ長は
図5に示されている。
【0128】
上述した技術方案に基づいて、本実施形態はさらに以下の内容を含むことができる。初期動きベクトルを拡張して取得した新しい動きベクトルに基づいて動き補償を実行して再構成されたブロックを取得する。
【0129】
図7は、ビデオデコーディングシステムの構造を示す概略図である。
図7に示されたように、ビデオデコーディングシステム200は、ヘッダ情報デコーディング及びCABACデコーディングモジュール201、逆変換及び逆量子化モジュール202、イントラ予測モジュール203、動き補償モジュール204、デブロッキングフィルタリング及びSAOフィルタリングモジュール205、復号化された画像バッファモジュール206などを含む。ビデオ画像は、ビデオエンコーディングシステム
100の
変換及び量子化モジュール101、イントラ推定モジュール102、イントラ予測モジュール103、動き補償モジュール104、動き推定モジュール105、逆変換及び逆量子化モジュール106、フィルタ制御分析モジュール107、デブロッキング(DBK)フィルタリング及びサンプル適応オフセット(SAO)フィルタリングモジュール108、ヘッダ情報コーディング及びCABACコーディングモジュール109、復号化された画像バッファモジュール110などによって処理されてから、ビデオ画像のコードストリームを出力する。このコードストリームはビデオデコーディングシステム200に入力されて、ビデオデコーディングシステム200のヘッダ情報デコーディング及びCABACデコーディングモジュール201、逆変換及び逆量子化モジュール202、イントラ予測モジュール203及び動き補償モジュール204などによって処理されてから、最後に復元された元のビデオ画像を取得する。
【0130】
さらに、本出願によって提出されるビデオエンコーディング方法は、ビデオエンコーディングハイブリッドフレームワークのイントラ予測部分に影響を与えることができ、即ち、主にビデオエンコーディングにおける動き補償モジュール104及び動き推定モジュール105、ビデオデコーディングにおける動き補償モジュール204に応用され、符号化端と復号化端の両方に作用する。
【0131】
上述した方案に基づいて、復号化端の複雑さが変化しないように保つことができる。従来の技術において、復号化端で3つの構文要素を復号化することにより、初期動きベクトルに対して拡張表現を実行し、動き補償を実行して、最終的に再構成されたブロックを取得する。本方案では、依然として3つの構文要素を復号化することにより、初期動きベクトルに対して拡張表現を実行するので、複雑さは変化しない。
【0132】
なお、元の画像フレーム内のコーディングブロックについて、デコーダ側において、先ず、コーディングブロックが採用する符号化モードを確定し、次に、確定された符号化モードに基づいて、符号化モード対応する候補リストを確立し、符号化モードに対応する候補リストに基づいて、コーディングブロックに対応する復号化パラメータを取得し、最後に、コーディングブロックに対応する復号化パラメータに基づいて、コーディングブロックに対して予測復号化を実行する。
【0133】
コーディングブロックに対して予測符号化を実行してから、エンコーダは、コーディングブロックに対応するコードストリームをデコーダに送信する。このように、デコーダ側では、コードストリーム内の符号化パラメータと候補リストに基づいて復号化パラメータを共同に確定することができる。
【0134】
本出願の実施形態に係わる技術方案において、対角線検索方向を含むN個の検索方向及び複数のタイプの検索ステップ長に基づいて、検索位置を確定する。従来の技術と比較して、各方向の検索ステップ長を減少し、検索ステップ長の一部が選択されないことによる符号化効率低下の問題を回避し、且つ検索方向を増やすことによって、ほとんどの物体の動き条件を満たすので、動き情報をより正確に表現することができる。
【0135】
本実施形態は、デコーダを提供する。
図10に示されたように、デコーダは、拡張部分51及び復号化部分52を含む。
【0136】
拡張部分51は、初期動きベクトルの構文要素に基づいて、検索位置コンステレーションにおける初期動きベクトルに対応する少なくとも1つの検索位置を拡張するために用いられる。構文要素は、初期動きベクトルインデックス、検索方向インデックス、検索ステップ長インデックスを含み、検索方向インデックスに示される検索方向は少なくとも対角線検索方向を含む。
【0137】
復号化部分52は、初期動きベクトルを拡張して取得した新しい動きベクトルに基づいて動き補償を実行して再構成されたブロックを取得するために用いられる。
【0138】
本出願の実施形態に係わる動き補償処理方法は、ビデオコーディング及びデコーディングシステムのデコーダに適用することができる。
【0139】
一般的に、上記の解決策によれば、先ず、距離によって複数の検索方向に利用可能な検索ポイントを割り当てて検索位置コンステレーションを構築し、次に、プリセット範囲カバレッジルールに基づいて、コンステレーションから適切な数量の検索位置を選択する。
【0140】
即ち、本実施形態において、プリセット検索位置が32個であることを前提として、元の4つの検索方向を8つの検索方向に拡張し、各検索方向の8つの検索ステップ長の数量を減少し、且つ異なる検索方向に検索ステップ長を割り当てて、比較的広い検索範囲をカバーする。
【0141】
具体的には、拡張部分は、初期動きベクトルが指す点を中心点として検索位置コンステレーションを構築するために用いられる。
【0142】
検索位置コンステレーションに含まれる検索方向は、水平垂直検索方向をさらに含む。水平垂直検索方向は、別々に上、下、左、右である。対角線検索方向は、別々に左上、左下、右上、右下である。
【0143】
検索ステップ長は、検索方向のタイプに対応する。
【0144】
拡張部分51は、検索方向のタイプが水平垂直検索方向である場合、第一検索ステップ長セットを採用し、検索方向のタイプが対角線検索方向である場合、第二検索ステップ長セットを採用するために用いられる。
【0145】
プリセット検索位置が32個であることを前提として、第一検索ステップ長セットには少なくとも1つのタイプの第一検索ステップ長が含まれ、第二検索ステップ長セットには少なくとも1つのタイプの第二検索ステップ長が含まれる。
【0146】
本実施形態において、第一検索ステップ長セット及び第二検索ステップ長セットは、同じであっても異なってもよいことを指摘すべきである。
【0147】
第一検索ステップ長セット及び第二検索ステップ長セットが同じである場合、水平垂直検索方向と対角線検索方向で同じ4つの検索ステップ長(ステップ長は、検索位置とのコンステレーション中心点との間の距離である)を採用して検索位置を選択すると見なすことができる。
【0148】
或いは、第一検索ステップ長セット及び第二検索ステップ長セットが異なる場合、第一検索ステップ長セット及び第二検索ステップ長セットは交差することができる。例えば、水平垂直方向の検索ステップ長と対角線方向の検索ステップ長がずらして増加される。1つの例示において、水平垂直方向の距離が優先的に選択され、それから対角線方向の検索ステップ長を2つの隣接する水平垂直方向の検索ステップ長の間に交差する。このように、対角線方向の検索が水平垂直方向で検索できない領域をカバーできるようにする。
【0149】
つまり、第一検索ステップ長セットの第一タイプの第一検索ステップ長と第二タイプの第一検索ステップ長との間に第二検索ステップ長セットの第一タイプの第二検索ステップ長があることができる。同様に、第二検索ステップ長セットの第二タイプの第二検索ステップ長と第三タイプの第二検索ステップ長との間に第一検索ステップ長セットの第三タイプの第一検索ステップ長があることができる。
【0150】
対角線方向位置は(lx、ly)として表され、ここでlx=lyであり、本文では、検索ステップ長は単一値lxとして表される。
【0151】
例えば、第一検索ステップ長は、1/4ピクセル、1/2ピクセル、2ピクセル、4ピクセルのうちの少なくとも1つであり、第二検索ステップ長は、1/8ピクセル、3/8ピクセル、3/4ピクセル、3/2ピクセルのうちの少なくとも1つである。
【0152】
図7は、本出願の実施形態に係わるビデオデコーディングシステムの構造を示すブロック図である。
図7に示されたように、ビデオデコーディングシステム200は、ヘッダ情報デコーディング及びCABACデコーディングモジュール201、逆変換及び逆量子化モジュール202、イントラ予測モジュール203、動き補償モジュール204、デブロッキングフィルタ及びSAOフィルタリングモジュール205、復号化された画像バッファモジュール206などを含む。ビデオ画像は、ビデオエンコーディングシステム
100の
変換及び量子化モジュール101、イントラ推定モジュール102、イントラ予測モジュール103、動き補償モジュール104、動き推定モジュール105、逆変換及び逆量子化モジュール106、フィルタ制御分析モジュール107、デブロッキング(DBK)フィルタリング及びサンプル適応オフセット(SAO)フィルタリングモジュール108、ヘッダ情報コーディング及びCABACコーディングモジュール109、復号化された画像バッファモジュール110などによって処理されてから、ビデオ画像のコードストリームを出力する。このコードストリームはビデオデコーディングシステム200に入力されて、ビデオデコーディングシステム200のヘッダ情報デコーディング及びCABACデコーディングモジュール201、逆変換及び逆量子化モジュール202、イントラ予測モジュール203及び動き補償モジュール204などによって処理されてから、最後に復元された元のビデオ画像を取得する。
【0153】
さらに、本出願によって提出される画像符号化方法は、ビデオ符号化ハイブリッドフレームワークのイントラ予測部分に影響を与えることができ、即ち、主にビデオ符号化における動き補償モジュール104及び動き推定モジュール105、ビデオ復号化における動き補償モジュール204に応用され、符号化端と復号化端の両方に作用する。
【0154】
これに対応して、上述した方案に基づいて、復号化端の複雑さが変化しないように保つことができる。従来の技術において、復号化端で3つの構文要素を復号化することにより、初期動きベクトルに対して拡張表現を実行し、動き補償を実行して、最後に再構成されたブロックを取得する。本方案では、依然として3つの構文要素を復号化することにより、初期動きベクトルに対して拡張表現を実行するので、複雑さは変化しない。
【0155】
なお、元の画像フレーム内のコーディングブロックについて、デコーダ側において、先ず、コーディングブロックが採用する符号化モードを確定し、次に、確定された符号化モードに基づいて、符号化モード対応する候補リストを確立し、符号化モードに対応する候補リストに基づいて、コーディングブロックに対応する復号化パラメータを取得し、最後に、コーディングブロックに対応する復号化パラメータに基づいて、コーディングブロックに対して予測復号化を実行する。
【0156】
コーディングブロックに対して予測符号化を実行してから、エンコーダは、コーディングブロックに対応するコードストリームをデコーダに送信する。このように、デコーダ側では、コードストリーム内の符号化パラメータと候補リストに基づいて復号化パラメータを共同に確定することができる。
【0157】
本出願の実施形態に係わる技術方案において、対角線検索方向を含むN個の検索方向及び複数のタイプの検索ステップ長に基づいて、検索位置を確定する。従来の技術と比較して、各方向の検索ステップ長を減少し、検索ステップ長の一部が選択されないことによる符号化効率低下の問題を回避し、且つ検索方向を増やすことによって、ほとんどの物体の動き条件を満たすので、動き情報をより正確に表現することができる。
【0158】
図11は、本出願の実施形態に係わるハードウェアの構造を示す概略図である。図面のハードウェアは、上述したエンコーダ又はデコーダであることができる。
図11に示されたように、本出願の実施形態に係わるエンコーダ300は、プロセッサ304と、プロセッサ304によって実行可能な命令を格納するメモリ305と、通信インターフェース306と、プロセッサ304、メモリ305及び通信インターフェース306を接続するために用いられるバス307と、を含む。
【0159】
さらに、本出願の実施形態において、上述したプロセッサ304は、エンコーダ又はデコーダの処理を実行するように構成される。
【0160】
本出願の実施形態において、プロセッサ304は、特定用途向け集積回路(Application Specific Integrated Circuit,ASIC)、デジタル信号プロセッサ(Digital Signal Processor,DSP)、デジタル信号処理装置(Digital Signal Processor device,DSPD)、プログラマブルロジックデバイス(Programmable Logic Device,PLD)、フィールドプログラマブルゲートアレイ(Field Programmable Gate Array,FPGA)、中央処理装置(central processing unit,CPU)、コントローラー、マイクロコントローラー、マイクロプロセッサーのうちの少なくとも1つであることができる。異なるデバイスの場合、上記のプロセッサ機能を実現するために用いられる電子デバイスは他のものであることができ、本出願の実施形態はこれに対して具体的に限定しないことを理解されるべきである。メモリ305はプロセッサ304に接続することができ、メモリ305は実行可能なプログラムコードを格納するために用いられる。プログラムコードはコンピュータ操作指令を含む。メモリ305は、高速ランダムアクセスメモリ(Random Access Memory,RAM)を含むことができ、又は不揮発性メモリ、例えば、少なくとも2つのディスク記憶装置を含むことができる。
【0161】
本出願の実施形態において、バス307は、通信インターフェース306、プロセッサ304、メモリ305を接続するように構成され、これらのデバイス間の相互通信に使用される。
【0162】
本出願の実施形態において、メモリ305は、命令及びデータを格納するために用いられる。
【0163】
実際の応用では、メモリ305は、ランダムアクセスメモリ(Random Access Memory,RAM)などの揮発性メモリであることができ、又は読み取り専用メモリ(Read-Only Memory,ROM)、フラッシュメモリ、ハードディスクドライブ(hard disk drive,HDD)又はソリッドステートドライブ(solid-state drive,SSD)などの不揮発性メモリであることができ、又は上記のタイプのメモリの組み合わせであり、プロセッサに命令及びデータを提供することができる。
【0164】
また、本実施形態に係わる各機能ユニットは、一つの処理ユニットに集積されてもよく、各ユニットが単独に物理的に存在してもよく、2つ以上のユニットは一つのユニットに集積してもよい。上記の集積ユニットは、ハードウェア又はソフトウェア機能モジュールの形式で実現することができる。
【0165】
集積ユニットは、ソフトウェアの機能モジュールとして実現され、且つ、独立の製品として販売されたり使用されたりする場合、コンピュータ可読記憶媒体に記憶されることができる。この理解によれば、本出願の技術方案について、本質的な部分、又は従来技術に貢献できた部分、又は該技術方案の全部又は一部は、ソフトウェア製品として表現され得る。当該コンピュータソフトウェア製品は、記憶媒体に記憶されており、1つのコンピュータデバイス(パソコン、サーバー、又はネットワークデバイスなどであることができる)又はプロセッサに本実施形態に係る方法の全部又は一部の操作を実行させるための複数の命令を含む。前記した記憶媒体は、USB(ユニバーサルシリアルバス)フラッシュディスク、モバイルハードディスク、読み取り専用メモリ(Read-Only Memory,ROM)、ランダムアクセスメモリ(Random Access Memory,RAM)、磁気ディスク又は光ディスクなどの各種のプログラムコードを記憶できる媒体を含む。
【0166】
本出願の実施形態は、さらに上述したエンコーダの処理を実行するように構成された画像エンコーダを提供する。
【0167】
本出願の実施形態は、さらに上述したデコーダの処理を実行するように構成されたデコーダを提供する。
【0168】
本出願の実施形態は、プログラムを格納するコンピュータ可読記憶媒体を提供する。プログラムがプロセッサによって実行されると、前記実施形態で説明された方法を実現する。
【0169】
当業者であれば、本出願の実施形態は、方法、システム、又はコンピュータプログラム製品を提供できることを理解されるべきである。従って、本出願は、ハードウェア実施形態、ソフトウェア実施形態、又はソフトウェアとハードウェアを結合した実施形態を採用することができる。さらに、本出願は、1つ又は複数のコンピュータ使用可能なプログラムコードを含む、コンピュータ使用可能な記憶媒体(磁気記憶装置、光メモリなどを含むが、これらに限定されない)に格納されたコンピュータプログラム製品の形態を採用することができる。
【0170】
本出願は、本出願の実施例に係わる方法、装置(システム)、及びコンピュータプログラム製品のフローチャート及び/又はブロック図を参照して説明する。フローチャートの各フロー及び/又はブロック図の各ブロック、フローチャートのフロー及び/又はブロック図のブロックの組み合わせは、コンピュータプログラム命令によって実現できることを理解されたい。これらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、組み込みプロセッサ、又は他のプログラム可能なデータ処理装置のプロセッサに提供されて機械を形成することができ、コンピュータ又は他のプログラム可能なデータ処理装置のプロセッサで命令を実行することによって、フローチャートの1つ又は複数のフロー及び/又はブロック図の1つ又は複数のブロックによって指定される機能を実現するためのデバイスを生成することができる。
【0171】
これらのコンピュータプログラム命令は、コンピュータ又は他のプログラム可能なデータ処理装置が特定の方法で作動するように指示することができるコンピュータ可読メモリに格納されることもでき、従ってコンピュータ可読メモリに格納された命令は命令装置を含む製造品を生成することができ、命令装置はフローチャートの1つ又は複数のフロー及び/又はブロック図の1つ又は複数のブロックによって指定される機能を実現する。
【0172】
これらのコンピュータプログラム命令は、コンピュータ又は他のプログラム可能なデータ処理装置にロードすることもでき、従ってコンピュータ又は他のプログラム可能なデータ処理装置で一連のプロセスステップを実行して、コンピュータによって実行される処理を生成することができ、その結果、コンピュータ又は他のプログラム可能なデータ処理装置で実行される命令は、フローチャートの1つ又は複数のフロー及び/又はブロック図の1つ又は複数のブロックによって指定される機能を実現するためのステップを提供する。
【0173】
上述したのはただ本出願の好ましい実施形態だけであり、本出願の保護範囲を制限するために使用されるものではない。
【産業上の利用可能性】
【0174】
本出願の実施形態は、動き補償処理方法、エンコーダ、デコーダ、記憶媒体を提供する。エンコーダは、初期動きベクトルに基づいて、検索位置コンステレーションを構築する。検索位置コンステレーションにはN個の検索方向が含まれ、検索方向で少なくとも1つのタイプの検索ステップ長を使用して検索することによって少なくとも1つの検索ポイントを取得し、Nは1以上の整数であり、N個の検索方向は少なくとも対角線検索方向を含む。エンコーダは、プリセット範囲カバレッジルールに基づいて、検索位置コンステレーションから少なくとも1つの検索位置を選択する。プリセット範囲カバレッジルールは、プリセット数の検索ポイントをN個の検索方向に分散させて選択することである。エンコーダは、少なくとも1つの検索位置を新しい動きベクトルとして、新しい動きベクトルに基づいて動き補償を実行して、コーディングユニット(CU)の予測値を取得する。このように、従来の技術と比較して、各方向の検索ステップ長を減少し、検索ステップ長の一部が選択されないことによる符号化効率低下の問題を回避し、且つ検索方向を増やすことによって、ほとんどの物体の動き条件を満たすので、動き情報をより正確に表現することができる。