(57)【要約】  本出願の実施形態は、動画像符号化技術の分野に関するものであり、符号化効率を改善するための、双方向インター予測の方法および装置を開示する。この方法は、指示情報を取得するステップであって、指示情報は第1の動き情報に基づき第2の動き情報を決定することを指示するために使用され、第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、第2の動き情報は第2の方向における現在の画像ブロックの動き情報である、ステップと、第1の動き情報を取得するステップと、第1の動き情報に基づき第2の動き情報を決定するステップと、前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するステップとを含む。
2021519548.tif 000002
【特許請求の範囲】
【請求項１】
双方向インター予測方法であって、
指示情報を取得するステップと、
第1の動き情報を取得するステップと、
前記指示情報が前記第1の動き情報に基づき第2の動き情報を決定することを指示するために使用されたときに、前記第1の動き情報に基づき前記第2の動き情報を決定するステップであって、前記第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報である、ステップと、
前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するステップとを含む双方向インター予測方法。
【請求項２】
前記第1の動き情報に基づき前記第2の動き情報を決定する前記ステップは、
前記第1の動き情報内の第1の参照フレームのインデックス値を取得し、前記第1の参照フレームの前記インデックス値と第1の参照フレームリストとに基づき前記第1の参照フレームのシーケンス番号を決定するステップであって、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は前記第1の参照フレームリスト内の前記第1の参照フレームの番号である、ステップと、
第2の参照フレームのインデックス値を取得し、前記第2の参照フレームの前記インデックス値と第2の参照フレームリストとに基づき前記第2の参照フレームのシーケンス番号を決定するステップであって、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は前記第2の参照フレームリスト内の前記第2の参照フレームの番号である、ステップと、
前記第1の動き情報内にある第1の動きベクトル差分と第1の動きベクトル予測子フラグとに基づき第1の動きベクトルを決定するステップであって、前記第1の動きベクトルは前記第1の方向における前記現在の画像ブロックの動きベクトルである、ステップと、
式
【数１】
2021519548.tif 000017
に従って前記第2の動き情報内の第2の動きベクトルを導出するステップであって、
mv_lYは前記第2の動きベクトルを表し、POC_Curは前記現在のフレームのシーケンス番号を表し、POC_listXは前記第1の参照フレームの前記シーケンス番号を表し、POC_listYは前記第2の参照フレームの前記シーケンス番号を表し、mv_lXは前記第1の動きベクトルを表し、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、ステップとを特に含む請求項1に記載の方法。
【請求項３】
前記第1の動き情報に基づき前記第2の動き情報を決定する前記ステップは、
前記第1の動き情報内の第1の参照フレームのインデックス値を取得するステップであって、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は前記第1の参照フレームリスト内の前記第1の参照フレームの番号である、ステップと、
第2の参照フレームのインデックス値を取得するステップであって、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は前記第2の参照フレームリスト内の前記第2の参照フレームの番号である、ステップと、
前記第1の動き情報内にある第1の動きベクトル差分と第1の動きベクトル予測子フラグとに基づき第1の動きベクトルを決定するステップであって、前記第1の動きベクトルは前記第1の方向における前記現在の画像ブロックの動きベクトルである、ステップと、
前記第1の参照フレームが前記現在の画像ブロックの前方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの後方参照フレームであるとき、または前記第1の参照フレームが前記現在の画像ブロックの後方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの後方参照フレームであるとき、式
mv_lY=-mv_lX
に従って前記第2の動き情報内の第2の動きベクトルを導出するステップであって
mv_lYは前記第2の動きベクトルを表し、mv_lXは前記第1の動きベクトルを表し、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、ステップを特に含む請求項1に記載の方法。
【請求項４】
前記第1の動き情報に基づき前記第2の動き情報を決定する前記ステップは、
前記第1の動き情報内にある第1の参照フレームのインデックス値と第1の動きベクトル差分とを取得し、前記第1の参照フレームの前記インデックス値と第1の参照フレームリストとに基づき前記第1の参照フレームのシーケンス番号を決定するステップであって、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は前記第1の参照フレームリスト内の前記第1の参照フレームの番号である、ステップと、
第2の参照フレームのインデックス値を取得し、前記第2の参照フレームの前記インデックス値と第2の参照フレームリストとに基づき前記第2の参照フレームのシーケンス番号を決定し、前記第2の参照フレームのインデックス値と第2の候補予測済み動きベクトルリストとに基づき第2の予測済み動きベクトルを決定するステップであって、前記第2の予測済み動きベクトルは前記第2の方向における前記現在の画像ブロックの予測済み動きベクトルであり、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は前記第2の参照フレームリスト内の前記第2の参照フレームの番号である、ステップと、
式
【数２】
2021519548.tif 000018
に従って前記第2の動き情報内の第2の動きベクトル差分を計算するステップであって、
mvd_lYは前記第2の動きベクトル差分を表し、POC_Curは前記現在のフレームのシーケンス番号を表し、POC_listXは前記第1の参照フレームの前記シーケンス番号を表し、POC_listYは前記第2の参照フレームの前記シーケンス番号を表し、mvd_lXは前記第1の動きベクトル差分を表す、ステップと、
前記第2の予測済み動きベクトルと前記第2の動きベクトル差分とに基づき第2の動きベクトルを決定するステップであって、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、ステップとを特に含む請求項1に記載の方法。
【請求項５】
前記第1の動き情報に基づき前記第2の動き情報を決定する前記ステップは、
前記第1の動き情報内にある第1の参照フレームのインデックス値と第1の動きベクトルとを取得するステップであって、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は前記第1の参照フレームリスト内の前記第1の参照フレームの番号である、ステップと、
第2の参照フレームのインデックス値を取得し、前記第2の参照フレームの前記インデックス値と第2の候補予測済み動きベクトルリストとに基づき第2の予測済み動きベクトルを決定するステップであって、前記第2の予測済み動きベクトルは前記第2の方向における前記現在の画像ブロックの予測済み動きベクトルであり、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は前記第2の参照フレームリスト内の前記第2の参照フレームの番号である、ステップと、
前記第1の参照フレームが前記現在の画像ブロックの前方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの後方参照フレームであるとき、または前記第1の参照フレームが前記現在の画像ブロックの後方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの後方参照フレームであるとき、式
mvd_lY=-mvd_lX
に従って前記第2の動き情報内の第2の動きベクトル差分を計算するステップであって、
mvd_lYは前記第2の動きベクトル差分を表し、mvd_lXは前記第1の動きベクトル差分を表す、ステップと、
前記第2の予測済み動きベクトルと前記第2の動きベクトル差分とに基づき第2の動きベクトルを決定するステップであって、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、ステップとを特に含む請求項1に記載の方法。
【請求項６】
第2の参照フレームのインデックス値を取得する前記ステップは、
式POC_listY0=2*POC_Cur-POC_listXに従って前記現在のフレームの前記シーケンス番号と前記第1の参照フレームの前記シーケンス番号とに基づき第1のシーケンス番号を計算するステップであって、POC_Curは前記現在のフレームの前記シーケンス番号を表し、POC_listXは前記第1の参照フレームの前記シーケンス番号を表し、POC_listY0は前記第1のシーケンス番号を表す、ステップと、
前記第2の参照フレームリストが前記第1のシーケンス番号を含むときに、前記第2の参照フレームの前記インデックス値として、前記第2の参照フレームリスト内の前記第1のシーケンス番号によって表される参照フレームの番号を決定するステップとを特に含む請求項2から5のいずれか一項に記載の方法。
【請求項７】
第2の参照フレームのインデックス値を取得する前記ステップは、
式(POC_Cur-POC_listX)*(POC_listY0'-POC_Cur)>0に従って前記現在のフレームの前記シーケンス番号と前記第1の参照フレームの前記シーケンス番号とに基づき第2のシーケンス番号を計算するステップであって、POC_listY0'は前記第2のシーケンス番号を表す、ステップと、
前記第2の参照フレームリストが前記第2のシーケンス番号を含むときに、前記第2の参照フレームの前記インデックス値として、前記第2の参照フレームリスト内の前記第2のシーケンス番号によって表される参照フレームの番号を決定するステップとを特に含む請求項2から5のいずれか一項に記載の方法。
【請求項８】
第2の参照フレームのインデックス値を取得する前記ステップは、
式POC_listX≠POC_listY0''に従って前記現在のフレームの前記シーケンス番号と前記第1の参照フレームの前記シーケンス番号とに基づき第3のシーケンス番号を計算するステップであって、POC_listY0''は前記第3のシーケンス番号を表す、ステップと、
前記第2の参照フレームの前記インデックス値として、前記第2の参照フレームリスト内の前記第3のシーケンス番号によって表される参照フレームの番号を決定するステップとを特に含む請求項2から5のいずれか一項に記載の方法。
【請求項９】
双方向インター予測方法であって、
ビットストリームを解析して第1の識別子を取得するステップであって、前記第1の識別子は第1の動き情報に基づき第2の動き情報を決定するかどうかを指示するために使用され、前記第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報である、ステップ、前記第1の識別子の値が第1のプリセット値である場合に前記第1の動き情報を取得し、前記第1の動き情報に基づき前記第2の動き情報を決定するステップ、および前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するステップ、または
ビットストリームを解析して第2の識別子を取得するステップであって、前記第2の識別子は動き情報導出アルゴリズムを使用することによって前記現在の画像ブロックの動き情報を計算するかどうかを指示するために使用される、ステップ、前記第2の識別子の値が第2のプリセット値である場合に第3の識別子を取得するステップであって、前記第3の識別子は第1の動き情報に基づき第2の動き情報を決定するかどうかを指示するために使用され、前記第1の動き情報は第1の方向における前記現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報である、ステップ、前記第3の識別子の値が第3のプリセット値である場合に前記第1の動き情報を取得し、前記第1の動き情報に基づき前記第2の動き情報を決定するステップ、および前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するステップ、または
ビットストリームを解析して第2の識別子を取得するステップであって、前記第2の識別子は動き情報導出アルゴリズムを使用することによって前記現在の画像ブロックの動き情報を計算するかどうかを指示するために使用される、ステップ、前記第2の識別子の値が第2のプリセット値である場合に第1の動き情報を取得し、前記第1の動き情報に基づき前記第2の動き情報を決定するステップであって、前記第1の動き情報は第1の方向における前記現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報である、ステップ、および前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するステップ、または
ビットストリームを解析して第4の識別子を取得するステップであって、前記第4の識別子は動き情報導出アルゴリズムを使用することによって前記現在の画像ブロックの動き情報を計算するかどうかを指示するために使用される、ステップ、前記第4の識別子の値が第4のプリセット値である場合に第1の参照フレームリストと第2の参照フレームリストとに基づき第1の参照フレームのインデックス値と第2の参照フレームのインデックス値とを決定するステップであって、前記第1の参照フレームリストは、前記第1の方向における前記現在の画像ブロックの参照フレームリストであり、前記第2の参照フレームリストは、前記第2の方向における前記現在の画像ブロックの参照フレームリストであり、前記第1の参照フレームは、前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームは、前記第2の方向における前記現在の画像ブロックの参照フレームである、ステップ、第1の動きベクトル差分と第1の動きベクトル予測子フラグとを取得し、第1の動き情報に基づき第2の動き情報を決定するステップであって、前記第1の動き情報は前記第1の参照フレームの前記インデックス値と、前記第1の動きベクトル差分と、前記第1の動きベクトル予測子フラグとを含み、前記第2の動き情報は前記第2の方向における前記現在の画像ブロックの動き情報である、ステップ、および前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するステップを含む双方向インター予測方法。
【請求項１０】
双方向インター予測装置であって、
取得ユニットであって、指示情報を取得し、第1の動き情報を取得するように構成されている取得ユニットと、
決定ユニットであって、前記指示情報が前記第1の動き情報に基づき第2の動き情報を決定することを指示するために使用されたときに、前記取得ユニットによって取得された前記第1の動き情報に基づき前記第2の動き情報を決定し、前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するように構成され、前記第1の動き情報は第1の方向における前記現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報である、決定ユニットとを備える双方向インター予測装置。
【請求項１１】
前記決定ユニットは、
前記第1の動き情報内の第1の参照フレームのインデックス値を取得し、前記第1の参照フレームの前記インデックス値と第1の参照フレームリストとに基づき前記第1の参照フレームのシーケンス番号を決定し、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は前記第1の参照フレームリスト内の前記第1の参照フレームの番号であり、
第2の参照フレームのインデックス値を取得し、前記第2の参照フレームの前記インデックス値と第2の参照フレームリストとに基づき前記第2の参照フレームのシーケンス番号を決定し、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は前記第2の参照フレームリスト内の前記第2の参照フレームの番号であり、
前記第1の動き情報内にある第1の動きベクトル差分と第1の動きベクトル予測子フラグとに基づき第1の動きベクトルを決定し、前記第1の動きベクトルは前記第1の方向における前記現在の画像ブロックの動きベクトルであり、
式
【数３】
2021519548.tif 000019
に従って前記第2の動き情報内の第2の動きベクトルを導出するように特に構成され、
mv_lYは前記第2の動きベクトルを表し、POC_Curは前記現在のフレームのシーケンス番号を表し、POC_listXは前記第1の参照フレームの前記シーケンス番号を表し、POC_listYは前記第2の参照フレームの前記シーケンス番号を表し、mv_lXは前記第1の動きベクトルを表し、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、請求項10に記載の装置。
【請求項１２】
前記決定ユニットは、
前記第1の動き情報内の第1の参照フレームのインデックス値を取得し、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は前記第1の参照フレームリスト内の前記第1の参照フレームの番号であり、
第2の参照フレームのインデックス値を取得し、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は前記第2の参照フレームリスト内の前記第2の参照フレームの番号であり、
前記第1の動き情報内にある第1の動きベクトル差分と第1の動きベクトル予測子フラグとに基づき第1の動きベクトルを決定し、前記第1の動きベクトルは前記第1の方向における前記現在の画像ブロックの動きベクトルであり、
前記第1の参照フレームが前記現在の画像ブロックの前方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの後方参照フレームであるとき、または前記第1の参照フレームが前記現在の画像ブロックの後方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの後方参照フレームであるとき、式
mv_lY=-mv_lX
に従って前記第2の動き情報内の第2の動きベクトルを計算するように特に構成され、
mv_lYは前記第2の動きベクトルを表し、mv_lXは前記第1の動きベクトルを表し、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、請求項10に記載の装置。
【請求項１３】
前記決定ユニットは、
前記第1の動き情報内にある第1の参照フレームのインデックス値と第1の動きベクトル差分とを取得し、前記第1の参照フレームの前記インデックス値と第1の参照フレームリストとに基づき前記第1の参照フレームのシーケンス番号を決定し、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は前記第1の参照フレームリスト内の前記第1の参照フレームの番号であり、
第2の参照フレームのインデックス値を取得し、前記第2の参照フレームの前記インデックス値と第2の参照フレームリストとに基づき前記第2の参照フレームのシーケンス番号を決定し、前記第2の参照フレームのインデックス値と第2の候補予測済み動きベクトルリストとに基づき第2の予測済み動きベクトルを決定し、前記第2の予測済み動きベクトルは前記第2の方向における前記現在の画像ブロックの予測済み動きベクトルであり、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は前記第2の参照フレームリスト内の前記第2の参照フレームの番号であり、
式
【数４】
2021519548.tif 000020
に従って前記第2の動き情報内の第2の動きベクトル差分を計算するように特に構成され、
mvd_lYは前記第2の動きベクトル差分を表し、POC_Curは前記現在のフレームのシーケンス番号を表し、POC_listXは前記第1の参照フレームの前記シーケンス番号を表し、POC_listYは前記第2の参照フレームの前記シーケンス番号を表し、mvd_lXは前記第1の動きベクトル差分を表し、
前記第2の予測済み動きベクトルと前記第2の動きベクトル差分とに基づき第2の動きベクトルを決定し、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、請求項10に記載の装置。
【請求項１４】
前記決定ユニットは、
前記第1の動き情報内にある第1の参照フレームのインデックス値と第1の動きベクトルとを取得し、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は前記第1の参照フレームリスト内の前記第1の参照フレームの番号であり、
第2の参照フレームのインデックス値を取得し、前記第2の参照フレームの前記インデックス値と第2の候補予測済み動きベクトルリストとに基づき第2の予測済み動きベクトルを決定し、前記第2の予測済み動きベクトルは前記第2の方向における前記現在の画像ブロックの予測済み動きベクトルであり、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は前記第2の参照フレームリスト内の前記第2の参照フレームの番号であり、
前記第1の参照フレームが前記現在の画像ブロックの前方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの後方参照フレームであるとき、または前記第1の参照フレームが前記現在の画像ブロックの後方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの後方参照フレームであるとき、式
mvd_lY=-mvd_lX
に従って前記第2の動き情報内の第2の動きベクトル差分を計算し、
mvd_lYは前記第2の動きベクトル差分を表し、mvd_lXは前記第1の動きベクトル差分を表し、
前記第2の予測済み動きベクトルと前記第2の動きベクトル差分とに基づき第2の動きベクトルを決定し、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、ように特に構成される請求項10に記載の装置。
【請求項１５】
前記取得ユニットは、
式POC_listY0=2*POC_Cur-POC_listXに従って前記現在のフレームの前記シーケンス番号と前記第1の参照フレームの前記シーケンス番号とに基づき第1のシーケンス番号を計算し、POC_Curは前記現在のフレームの前記シーケンス番号を表し、POC_listXは前記第1の参照フレームの前記シーケンス番号を表し、POC_listY0は前記第1のシーケンス番号を表し、
前記第2の参照フレームリストが前記第1のシーケンス番号を含むときに、前記第2の参照フレームの前記インデックス値として、前記第2の参照フレームリスト内の前記第1のシーケンス番号によって表される参照フレームの番号を決定するように特に構成される請求項11から14のいずれか一項に記載の装置。
【請求項１６】
前記取得ユニットは、
式(POC_Cur-POC_listX)*(POC_listY0'-POC_Cur)>0に従って前記現在のフレームの前記シーケンス番号と前記第1の参照フレームの前記シーケンス番号とに基づき第2のシーケンス番号を計算し、POC_listY0'は前記第2のシーケンス番号を表し、
前記第2の参照フレームリストが前記第2のシーケンス番号を含むときに、前記第2の参照フレームの前記インデックス値として、前記第2の参照フレームリスト内の前記第2のシーケンス番号によって表される参照フレームの番号を決定するように特に構成される請求項11から14のいずれか一項に記載の装置。
【請求項１７】
前記取得ユニットは、
式POC_listX≠POC_listY0''に従って前記現在のフレームの前記シーケンス番号と前記第1の参照フレームの前記シーケンス番号とに基づき第3のシーケンス番号を計算し、POC_listY0''は前記第3のシーケンス番号を表し、
前記第2の参照フレームの前記インデックス値として、前記第2の参照フレームリスト内の前記第3のシーケンス番号によって表される参照フレームの番号を決定するように特に構成される請求項11から14のいずれか一項に記載の装置。
【請求項１８】
双方向インター予測装置であって、
取得ユニットであって、ビットストリームを解析して第1の識別子を取得し、前記第1の識別子は第1の動き情報に基づき第2の動き情報を決定するかどうかを指示するために使用され、前記第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報であるように構成され、前記第1の識別子の値が第1のプリセット値である場合に前記第1の動き情報を取得するように構成されている取得ユニットと、決定ユニットであって、前記取得ユニットによって取得された前記第1の動き情報に基づき前記第2の動き情報を決定し、前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定する、ように構成されている決定ユニット、または
取得ユニットであって、ビットストリームを解析して第2の識別子を取得し、前記第2の識別子は動き情報導出アルゴリズムを使用することによって前記現在の画像ブロックの動き情報を計算するかどうかを指示するために使用されるように構成され、前記第2の識別子の値が第2のプリセット値である場合に第3の識別子を取得し、前記第3の識別子は第1の動き情報に基づき第2の動き情報を決定するかどうかを指示するために使用され、前記第1の動き情報は第1の方向における前記現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報であるように構成され、前記第3の識別子の値が第3のプリセット値である場合に前記第1の動き情報を取得する、ように構成されている取得ユニットと、処理ユニットであって、前記取得ユニットによって取得された前記第1の動き情報に基づき前記第2の動き情報を決定し、前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定する、ように構成されている処理ユニット、または
取得ユニットであって、ビットストリームを解析して第2の識別子を取得し、前記第2の識別子は動き情報導出アルゴリズムを使用することによって前記現在の画像ブロックの動き情報を計算するかどうかを指示するために使用されるように構成され、前記第2の識別子の値が第2のプリセット値である場合に第1の動き情報を取得するように構成されている取得ユニットと、決定ユニットであって、前記取得ユニットによって取得された前記第1の動き情報に基づき前記第2の動き情報を決定し、前記第1の動き情報は第1の方向における前記現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報であり、前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するように構成されている決定ユニット、または
取得ユニットであって、ビットストリームを解析して第4の識別子を取得するように構成され、前記第4の識別子は動き情報導出アルゴリズムを使用することによって前記現在の画像ブロックの動き情報を計算するかどうかを指示するために使用される、取得ユニットと、決定ユニットであって、前記取得ユニットによって取得された前記第4の識別子の値が第4のプリセット値である場合に第1の参照フレームリストと第2の参照フレームリストとに基づき第1の参照フレームのインデックス値と第2の参照フレームのインデックス値とを決定するように構成され、前記第1の参照フレームリストは前記第1の方向における前記現在の画像ブロックの参照フレームリストであり、前記第2の参照フレームリストは前記第2の方向における前記現在の画像ブロックの参照フレームリストであり、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記取得ユニットは第1の動きベクトル差分と第1の動きベクトル予測子フラグとを取得するようにさらに構成され、前記決定ユニットは、第1の動き情報に基づき第2の動き情報を決定し、前記第1の動き情報は前記第1の参照フレームの前記インデックス値と、前記第1の動きベクトル差分と、前記第1の動きベクトル予測子フラグとを含み、前記第2の動き情報は前記第2の方向における前記現在の画像ブロックの動き情報であり、前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するようにさらに構成される、決定ユニットとを備える双方向インター予測装置。
【請求項１９】
1つ以上のプロセッサと、メモリと、通信インターフェースとを備える端末であって、
前記メモリおよび前記通信インターフェースは、前記1つ以上のプロセッサに接続され、前記端末は前記通信インターフェースを通じて別のデバイスと通信し、前記メモリはコンピュータプログラムコードを記憶するように構成され、前記コンピュータプログラムコードは命令を含み、前記1つ以上のプロセッサが前記命令を実行したときに、請求項1から8のいずれか一項に記載の前記双方向インター予測方法を実行するか、または請求項9に記載の前記双方向インター予測方法を実行する端末。
【請求項２０】
命令を備えるコンピュータプログラム製品であって、端末上で前記プログラム製品が稼動しているときに、前記端末が請求項1から8のいずれか一項に記載の前記双方向インター予測方法を実行するか、または請求項9に記載の前記双方向インター予測方法を実行するように有効化される、コンピュータプログラム製品。
【請求項２１】
命令を備えるコンピュータ可読記憶媒体であって、端末上で前記命令が実行されたときに、前記端末が請求項1から8のいずれか一項に記載の前記双方向インター予測方法を実行するか、または請求項9に記載の前記双方向インター予測方法を実行するように有効化される、コンピュータ可読記憶媒体。
【請求項２２】
不揮発性記憶媒体と中央演算処理装置とを備える、動画デコーダであって、前記不揮発性記憶媒体は実行可能プログラムを記憶し、前記中央演算処理装置は前記不揮発性記憶媒体に接続され、前記中央演算処理装置が前記実行可能プログラムを実行したときに、請求項1から8のいずれか一項に記載の前記双方向インター予測方法を実行するか、または請求項9に記載の前記双方向インター予測方法を実行する動画デコーダ。
【請求項２３】
デコーダであって、前記デコーダは請求項10から17のいずれか一項に記載の前記双方向インター予測装置と再構成モジュールとを備え、前記再構成モジュールは、前記双方向インター予測装置によって取得された予測サンプルに基づき現在の画像ブロックの再構成されたサンプル値を決定するように構成されるか、または前記デコーダは、請求項18に記載の前記双方向インター予測装置と、再構成モジュールとを備え、前記再構成モジュールは、前記双方向インター予測装置によって取得された予測サンプルに基づき現在の画像ブロックの再構成されたサンプル値を決定するように構成される、デコーダ。
【請求項２４】
復号方法であって、前記方法は双方向インター予測に適用され、前記方法は、
第1の識別子を取得するステップと、
現在の画像ブロックの第1の動きベクトル差分を取得するステップと、
前記第1の識別子の値が第1のプリセット値であるときに前記第1の動きベクトル差分に基づき前記現在の画像ブロックの第2の動きベクトル差分を決定するステップであって、前記第1の動きベクトル差分は第1の方向における前記現在の画像ブロックの動き情報に属し、前記第2の動きベクトル差分は第2の方向における前記現在の画像ブロックの動き情報に属す、ステップとを含む復号方法。
【請求項２５】
前記第1の動きベクトル差分に基づき前記現在の画像ブロックの第2の動きベクトル差分を決定する前記ステップは、
式
mvd_lY=-mvd_lX
に従って前記第2の動きベクトル差分を取得するステップであって、
mvd_lYは前記第2の動きベクトル差分を表し、mvd_lXは第1の動きベクトル差分を表す、ステップを含む請求項24に記載の方法。
【請求項２６】
前記方法は、
第1の予測済み動きベクトルと第2の予測済み動きベクトルとを取得するステップと、
前記第1の予測済み動きベクトルと前記第1の動きベクトル差分とに基づき第1の動きベクトルを決定するステップと、
前記第2の予測済み動きベクトルと前記第2の動きベクトル差分とに基づき第2の動きベクトルを決定するステップと、
前記第1の動きベクトルと前記第2の動きベクトルとに基づき前記現在の画像ブロックの予測サンプルを決定するステップであって、
前記第1の予測済み動きベクトルおよび前記第1の動きベクトルは前記第1の方向に対応し、前記第2の予測済み動きベクトルおよび前記第2の動きベクトルは前記第2の方向に対応する、ステップとをさらに含む請求項24または25に記載の方法。
【請求項２７】
前記現在の画像ブロックは、前記第1の方向における第1の参照フレームリストと、前記第2の方向における第2の参照フレームリストとを含み、前記第1の動きベクトルと前記第2の動きベクトルとに基づき前記現在の画像ブロックの予測サンプルを決定する前記ステップは、
前記第1の参照フレームリストの参照フレームインデックスと、前記第2の参照フレームリストの参照フレームインデックスとを取得するステップと、
前記第1の参照フレームリストの前記参照フレームインデックスと、前記第1の動きベクトルと、前記第1の参照フレームリストとに基づき第1の参照画像ブロックを決定するステップと、
前記第2の参照フレームリストの前記参照フレームインデックスと、前記第2の動きベクトルと、前記第2の参照フレームリストとに基づき第2の参照画像ブロックを決定するステップと、
前記第1の参照画像ブロックと前記第2の参照画像ブロックとに基づき前記現在の画像ブロックの前記予測サンプルを決定するステップとを含む、請求項26に記載の方法。
【請求項２８】
第1の識別子を取得する前記ステップの前に、前記現在の画像ブロックが配置されている現在のフレームのシーケンス番号がプリセット条件を満たしていると決定するステップであって、前記プリセット条件は、前記現在のフレームの前記シーケンス番号が第1の参照フレームのシーケンス番号と第2の参照フレームのシーケンス番号との間にあり、前記第1の参照フレームは前記第1の参照フレームリストに属し、前記第2の参照フレームは前記第2の参照フレームリストに属すという条件を含む、ステップをさらに含む請求項24から27のいずれか一項に記載の方法。
【請求項２９】
前記方法は、
前記第1の識別子の前記値が第2のプリセット値であるときに、ビットストリームを解析して前記第2の動きベクトルを取得するステップをさらに含む請求項24から28のいずれか一項に記載の方法。
【請求項３０】
第1の識別子を取得する前記ステップの前に、前記現在の画像ブロックが配置されている前記現在のフレームの前記シーケンス番号が前記プリセット条件を満たしていないと決定するステップであって、前記プリセット条件は、前記現在のフレームの前記シーケンス番号が前記第1の参照フレームの前記シーケンス番号と前記第2の参照フレームの前記シーケンス番号との間にあり、前記第1の参照フレームは前記第1の参照フレームリストに属し、前記第2の参照フレームは前記第2の参照フレームリストに属すという条件を含む、ステップをさらに含む請求項29に記載の方法。
【請求項３１】
双方向インター予測装置であって、
取得ユニットであって、第1の識別子を取得し、現在の画像ブロックの第1の動きベクトル差分を取得するように構成されている取得ユニットと、
決定ユニットであって、前記第1の識別子の値が第1のプリセット値であるときに前記第1の動きベクトル差分に基づき前記現在の画像ブロックの第2の動きベクトル差分を決定するように構成され、前記第1の動きベクトル差分は第1の方向における前記現在の画像ブロックの動き情報に属し、前記第2の動きベクトル差分は第2の方向における前記現在の画像ブロックの動き情報に属する、決定ユニットとを備える双方向インター予測装置。
【請求項３２】
前記決定ユニットは、式
mvd_lY=-mvd_lX
に従って前記第2の動きベクトル差分を取得するように特に構成され、
mvd_lYは前記第2の動きベクトル差分を表し、mvd_lXは前記第1の動きベクトル差分を表す請求項31に記載の装置。
【請求項３３】
前記取得ユニットは、第1の予測済み動きベクトルと第2の予測済み動きベクトルとを取得するように特に構成され、前記決定ユニットは、前記第1の予測済み動きベクトルと前記第1の動きベクトル差分とに基づき第1の動きベクトルを決定し、前記第2の予測済み動きベクトルと前記第2の動きベクトル差分とに基づき第2の動きベクトルを決定し、前記第1の動きベクトルと前記第2の動きベクトルとに基づき前記現在の画像ブロックの予測サンプルを決定するように特に構成され、前記第1の予測済み動きベクトルおよび前記第1の動きベクトルは前記第1の方向に対応し、前記第2の予測済み動きベクトルおよび前記第2の動きベクトルは前記第2の方向に対応する、請求項31または32に記載の装置。
【請求項３４】
前記現在の画像ブロックは、前記第1の方向における第1の参照フレームリストと、前記第2の方向における第2の参照フレームリストとを含み、前記取得ユニットは、前記第1の参照フレームリストの参照フレームインデックスと、前記第2の参照フレームリストの参照フレームインデックスとを取得するように特に構成され、前記決定ユニットは、前記第1の参照フレームリストの前記参照フレームインデックスと、前記第1の動きベクトルと、前記第1の参照フレームリストとに基づき第1の参照画像ブロックを決定し、前記第2の参照フレームリストの前記参照フレームインデックスと、前記第2の動きベクトルと、前記第2の参照フレームリストとに基づき第2の参照画像ブロックを決定し、前記第1の参照画像ブロックと前記第2の参照画像ブロックとに基づき前記現在の画像ブロックの前記予測サンプルを決定するように特に構成される請求項33に記載の装置。
【請求項３５】
前記取得ユニットは、前記第1の識別子を取得する前に、前記現在の画像ブロックが配置されている現在のフレームのシーケンス番号がプリセット条件を満たしていると決定するようにさらに特に構成され、前記プリセット条件は、前記現在のフレームの前記シーケンス番号が第1の参照フレームのシーケンス番号と第2の参照フレームのシーケンス番号との間にあり、前記第1の参照フレームは前記第1の参照フレームリストに属し、前記第2の参照フレームは前記第2の参照フレームリストに属すという条件を含む、請求項31から34のいずれか一項に記載の装置。
【請求項３６】
1つ以上のプロセッサと、メモリと、通信インターフェースとを備える端末であって、
前記メモリおよび前記通信インターフェースは、前記1つ以上のプロセッサに接続され、前記端末は前記通信インターフェースを通じて別のデバイスと通信し、前記メモリはコンピュータプログラムコードを記憶するように構成され、前記コンピュータプログラムコードは命令を含み、前記1つ以上のプロセッサが前記命令を実行したときに、前記端末は請求項24から30のいずれか一項に記載の前記復号方法を実行する、端末。
【請求項３７】
不揮発性記憶媒体と中央演算処理装置とを備える、動画デコーダであって、前記不揮発性記憶媒体は実行可能プログラムを記憶し、前記中央演算処理装置は前記不揮発性記憶媒体に接続され、前記中央演算処理装置が前記実行可能プログラムを実行したときに、請求項24から30のいずれか一項に記載の前記復号方法を実行する動画デコーダ。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、全体が参照により本明細書に組み込まれている、2018年3月29日に中国国家知識産権局に出願した中国特許出願第201810274457.X号、名称「BIDIRECTIONAL INTER PREDICTION METHOD AND APPARATUS」の優先権を主張するものである。
【０００２】
本出願の実施形態は、動画像符号化(video picture coding)技術の分野に関するものであり、詳細には、双方向インター予測(bidirectional inter prediction)の方法および装置に関するものである。
【背景技術】
【０００３】
動画符号化(video coding)技術では、現在の画像ブロックの予測画像ブロック(prediction picture block)は、1つの参照画像ブロック(reference picture block)のみに基づき生成されてもよく(一方向インター予測と称される)、または現在の画像ブロックの予測画像ブロックは、少なくとも2つの参照画像ブロックに基づき生成されてもよい(双方向インター予測と称される)。少なくとも2つの参照画像ブロックは、同じ参照フレームまたは異なる参照フレームからのものであってもよい。
【０００４】
デコーダおよびエンコーダが同じ参照画像ブロックを使用できるようにするために、エンコーダは各画像ブロックの動き情報をビットストリームでデコーダに送信する必要がある。一般に、現在の画像ブロックの動き情報は、参照フレームインデックス値と、動きベクトル予測器(motion Vector Predictor、MVP)フラグと、動きベクトル差分(Motion Vector Difference、MVD)とを含む。デコーダは、参照フレームインデックス値と、MVPフラグと、MVDとに基づき、選択された参照フレーム内の正しい参照画像ブロックを発見してもよい。
【０００５】
これに対応して、双方向インター予測では、エンコーダは各方向の各画像ブロックの動き情報をデコーダに送信する必要がある。その結果、動き情報は、比較的大量の伝送リソースを占有する。これにより、伝送リソースの有効利用率、伝送速度、および符号化圧縮効率が低下する。
【発明の概要】
【課題を解決するための手段】
【０００６】
本出願の実施形態は、動き情報が比較的大量の伝送リソースを占有するので、伝送リソースの有効利用率、伝送速度、および符号化圧縮効率が低下するという問題を解決するために、双方向インター予測の方法および装置を提供する。
【０００７】
前述の目的を達成するために、本出願の実施形態では、次の技術的解決方法が使用される。
【０００８】
第1の態様により、双方向インター予測方法が提供される。この方法は、第1の動き情報に基づき第2の動き情報を決定することを指示するために使用される指示情報を取得するステップであって、第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、第2の動き情報は第2の方向における現在の画像ブロックの動き情報である、ステップと、第1の動き情報を取得するステップと、取得された第1の動き情報に基づき第2の動き情報を決定するステップと、取得された第1の動き情報と決定された第2の動き情報とに基づき現在の画像ブロックの予測サンプルを決定するステップとを含む。
【０００９】
本出願において提供される双方向インター予測方法により、指示情報が取得された後に、第1の動き情報に基づき第2の動き情報が決定される。この方法で、ビットストリームは、指示情報と第1の動き情報とを含むだけでよく、第2の動き情報を含む必要はもはやない。ビットストリームが各方向の各画像ブロックの動き情報を含む従来技術と比較して、本出願で提供される双方向インター予測方法は、ビットストリームに含まれる動き情報を効果的に削減し、伝送リソース、伝送速度、および符号化速度の有効利用率を改善する。
【００１０】
任意選択で、本出願の可能な一実装形態において、「第1の動き情報に基づき第2の動き情報を決定する」ための方法は、第1の動き情報内の第1の参照フレームのインデックス値を取得し、第1の参照フレームのインデックス値と第1の参照フレームリストとに基づき、第1の参照フレームのシーケンス番号を決定するステップであって、本明細書における第1の参照フレームは第1の方向における現在の画像ブロックの参照フレームであり、第1の参照フレームのインデックス値は第1の参照フレームリスト内の第1の参照フレームの番号である、ステップ、第2の参照フレームのインデックス値を取得し、第2の参照フレームのインデックス値と第2の参照フレームリストとに基づき、第2の参照フレームのシーケンス番号を決定するステップであって、本明細書における第2の参照フレームは第2の方向における現在の画像ブロックの参照フレームであり、第2の参照フレームのインデックス値は第2の参照フレームリスト内の第2の参照フレームの番号である、ステップ、第1の動き情報内にある第1の動きベクトル差分と第1の動きベクトル予測子フラグとに基づき第1の動きベクトルを決定するステップであって、第1の動きベクトルは第1の方向における現在の画像ブロックの動きベクトルである、ステップ、および式
【数１】
2021519548.tif 000003
に従って第2の動き情報内の第2の動きベクトルを導出するステップである。
【００１１】
前述の式において、mv_lYは第2の動きベクトルを表し、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listYは第2の参照フレームのシーケンス番号を表し、mv_lXは第1の動きベクトルを表し、第2の動きベクトルは第2の方向における現在の画像ブロックの動きベクトルである。
【００１２】
任意選択で、本出願の可能な別の実装形態において、「第1の動き情報に基づき第2の動き情報を決定する」ための方法は、第1の動き情報内の第1の参照フレームのインデックス値を取得するステップであって、第1の参照フレームは第1の方向における現在の画像ブロックの参照フレームであり、第1の参照フレームのインデックス値は第1の参照フレームリスト内の第1の参照フレームの番号である、ステップ、第2の参照フレームのインデックス値を取得するステップであって、第2の参照フレームは第2の方向における現在の画像ブロックの参照フレームであり、第2の参照フレームのインデックス値は第2の参照フレームリスト内の第2の参照フレームの番号である、ステップ、第1の動き情報内にある第1の動きベクトル差分と第1の動きベクトル予測子フラグとに基づき第1の動きベクトルを決定するステップであって、第1の動きベクトルは第1の方向における現在の画像ブロックの動きベクトルである、ステップ、および第1の参照フレームが現在の画像ブロックの前方参照フレームであり、第2の参照フレームが現在の画像ブロックの後方参照フレームであるとき、または第1の参照フレームが現在の画像ブロックの後方参照フレームであり、第2の参照フレームが現在の画像ブロックの前方参照フレームであるとき、または第1の参照フレームおよび第2の参照フレームが各々、現在の画像ブロックの前方参照フレームであるとき、または第1の参照フレームおよび第2の参照フレームが各々、現在の画像ブロックの後方参照フレームであるとき、式
mv_lY=-mv_lX
に従って第2の動き情報内の第2の動きベクトルを導出するステップである。
【００１３】
前述の式において、mv_lYは第2の動きベクトルを表し、mv_lXは第1の動きベクトルを表し、第2の動きベクトルは第2の方向における現在の画像ブロックの動きベクトルである。
【００１４】
「第1の参照フレームは現在の画像ブロックの前方参照フレームであり、第2の参照フレームは現在の画像ブロックの後方参照フレームである」、および「第1の参照フレームは現在の画像ブロックの後方参照フレームであり、第2の参照フレームは現在の画像ブロックの前方参照フレームである」は両方とも、式(POC_Cur-POC_listX)*(POC_listY-POC_Cur)>0を使用することによって表されてもよく、または式POC_listY=2*POC_Cur-POC_listXによって表されてもよい。これは、本出願において特には限定されない。
【００１５】
それに加えて、「第1の参照フレームおよび第2の参照フレームは各々、現在の画像ブロックの前方参照フレームである」、および「第1の参照フレームおよび第2の参照フレームは各々、現在の画像ブロックの後方参照フレームである」は両方とも、式(POC_Cur-POC_listX)*(POC_listY-POC_Cur)<0を使用することによって表されてもよい。
【００１６】
POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listYは第2の参照フレームのシーケンス番号を表す。
【００１７】
任意選択で、本出願の可能な別の実装形態において、「第1の動き情報に基づき第2の動き情報を決定する」ための方法は、第1の動き情報内にある第1の参照フレームのインデックス値と第1の動きベクトル差分とを取得し、第1の参照フレームのインデックス値と第1の参照フレームリストとに基づき、第1の参照フレームのシーケンス番号を決定するステップであって、第1の参照フレームは第1の方向における現在の画像ブロックの参照フレームであり、第1の参照フレームのインデックス値は第1の参照フレームリスト内の第1の参照フレームの番号である、ステップ、第2の参照フレームのインデックス値を取得し、第2の参照フレームのインデックス値と第2の参照フレームリストとに基づき第2の参照フレームのシーケンス番号を決定し、第2の参照フレームのインデックス値と第2の候補予測済み動きベクトルリストとに基づき第2の予測済み動きベクトルを決定するステップであって、第2の予測済み動きベクトルは第2の方向における現在の画像ブロックの予測済み動きベクトルであり、第2の参照フレームは第2の方向における現在の画像ブロックの参照フレームであり、第2の参照フレームのインデックス値は第2の参照フレームリスト内の第2の参照フレームの番号である、ステップ、式
【数２】
2021519548.tif 000004
に従って第2の動き情報内の第2の動きベクトル差分を導出するステップであって、
前述の式において、mvd_lYは第2の動きベクトル差分を表し、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listYは第2の参照フレームのシーケンス番号を表し、mvd_lXは第1の動きベクトル差分を表す、ステップ、および第2の予測済み動きベクトルと第2の動きベクトル差分とに基づき第2の動きベクトルを決定するステップであって、第2の動きベクトルは第2の方向における現在の画像ブロックの動きベクトルである、ステップである。
【００１８】
任意選択で、本出願の可能な別の実装形態において、「第1の動き情報に基づき第2の動き情報を決定する」ための方法は、第1の動き情報内にある第1の参照フレームのインデックス値と第1の動きベクトルとを取得するステップであって、第1の参照フレームは第1の方向における現在の画像ブロックの参照フレームであり、第1の参照フレームのインデックス値は第1の参照フレームリスト内の第1の参照フレームの番号である、ステップ、第2の参照フレームのインデックス値を取得し、第2の参照フレームのインデックス値と第2の候補予測済み動きベクトルリストとに基づき第2の予測済み動きベクトルを決定するステップであって、第2の予測済み動きベクトルは第2の方向における現在の画像ブロックの予測済み動きベクトルであり、第2の参照フレームは第2の方向における現在の画像ブロックの参照フレームであり、第2の参照フレームのインデックス値は第2の参照フレームリスト内の第2の参照フレームの番号である、ステップ、第1の参照フレームが現在の画像ブロックの前方参照フレームであり、第2の参照フレームが現在の画像ブロックの後方参照フレームであるとき、または第1の参照フレームが現在の画像ブロックの後方参照フレームであり、第2の参照フレームが現在の画像ブロックの前方参照フレームであるとき、または第1の参照フレームおよび第2の参照フレームが各々、現在の画像ブロックの前方参照フレームであるとき、または第1の参照フレームおよび第2の参照フレームが各々、現在の画像ブロックの後方参照フレームであるとき、式
mvd_lY=-mvd_lX
に従って第2の動き情報内の第2の動きベクトル差分を導出するステップであって、
前述の式において、mvd_lYは第2の動きベクトル差分を表し、mvd_lXは第1の動きベクトル差分を表す、ステップ、および第2の予測済み動きベクトルと第2の動きベクトル差分とに基づき第2の動きベクトルを決定するステップであって、第2の動きベクトルは第2の方向における現在の画像ブロックの動きベクトルである、ステップである。
【００１９】
同様に、「第1の参照フレームは現在の画像ブロックの前方参照フレームであり、第2の参照フレームは現在の画像ブロックの後方参照フレームである」、および「第1の参照フレームは現在の画像ブロックの後方参照フレームであり、第2の参照フレームは現在の画像ブロックの前方参照フレームである」は両方とも、式(POC_Cur-POC_listX)*(POC_listY-POC_Cur)>0を使用することによって表されてもよく、または式POC_listY=2*POC_Cur-POC_listXによって表されてもよい。これは、本出願において特には限定されない。
【００２０】
「第1の参照フレームおよび第2の参照フレームは各々、現在の画像ブロックの前方参照フレームである」、および「第1の参照フレームおよび第2の参照フレームは各々、現在の画像ブロックの後方参照フレームである」は両方とも、式(POC_Cur-POC_listX)*(POC_listY-POC_Cur)<0を使用することによって表されてもよい。
【００２１】
POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listYは第2の参照フレームのシーケンス番号を表す。
【００２２】
本出願において提供されている双方向インター予測方法は、第1の動きベクトルに基づき第2の動きベクトルを決定するステップであってもよく、または第1の動きベクトル差分に基づき第2の動きベクトル差分を決定するステップ、および第2の動きベクトル差分に基づき第2の動きベクトルを決定するステップであってもよいことは分かりうる。
【００２３】
任意選択で、本出願の別の可能な実装形態において、「第2の参照フレームのインデックス値を取得する」ための方法は、式POC_listY0=2*POC_Cur-POC_listXに従って現在のフレームのシーケンス番号と第1の参照フレームのシーケンス番号とに基づき第1のシーケンス番号を計算するステップであって、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listY0は第1のシーケンス番号を表す、ステップ、および第2の参照フレームリストが第1のシーケンス番号を含むときに、第2の参照フレームのインデックス値として、第2の参照フレームリスト内の第1のシーケンス番号によって表される参照フレームの番号を決定するステップである。
【００２４】
任意選択で、本出願の別の可能な実装形態において、「第2の参照フレームのインデックス値を取得する」ための方法は、式(POC_Cur-POC_listX)*(POC_listY0'-POC_Cur)>0に従って現在のフレームのシーケンス番号と第1の参照フレームのシーケンス番号とに基づき第2のシーケンス番号を計算するステップであって、POC_listY0'は第2のシーケンス番号を表す、ステップ、および第2の参照フレームリストが第2のシーケンス番号を含むときに、第2の参照フレームのインデックス値として、第2の参照フレームリスト内の第2のシーケンス番号によって表される参照フレームの番号を決定するステップである。
【００２５】
任意選択で、本出願の別の可能な実装形態において、「第2の参照フレームのインデックス値を取得する」ための方法は、式POC_listX≠POC_listY0''に従って現在のフレームのシーケンス番号と第1の参照フレームのシーケンス番号とに基づき第3のシーケンス番号を計算するステップであって、POC_listY0''は第3のシーケンス番号を表す、ステップ、および第2の参照フレームのインデックス値として、第2の参照フレームリスト内の第3のシーケンス番号によって表される参照フレームの番号を決定するステップである。
【００２６】
任意選択で、本出願の別の可能な実装形態において、「第2の参照フレームのインデックス値を取得する」ための方法は、式POC_listY0=2*POC_Cur-POC_listXに従って現在のフレームのシーケンス番号と第1の参照フレームのシーケンス番号とに基づき第1のシーケンス番号を計算するステップであって、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listY0は第1のシーケンス番号を表す、ステップである。第2の参照フレームリストが第1のシーケンス番号含んでいるとき、第2の参照フレームリスト内の第1のシーケンス番号によって表される参照フレームの番号は、第2の参照フレームのインデックス値として決定される。第2の参照フレームリストが第1のシーケンス番号を含んでいないときに、第2のシーケンス番号は、式(POC_Cur-POC_listX)*(POC_listY0'-POC_Cur)>0に従って現在のフレームのシーケンス番号と第1の参照フレームのシーケンス番号とに基づき計算され、POC_listY0'は第2のシーケンス番号を表す。第2の参照フレームリストが第2のシーケンス番号含んでいるとき、第2の参照フレームリスト内の第2のシーケンス番号によって表される参照フレームの番号は、第2の参照フレームのインデックス値として決定される。第2の参照フレームリストが第2のシーケンス番号を含んでいないときに、第3のシーケンス番号は、式POC_listX≠POC_listY0''に従って現在のフレームのシーケンス番号と第1の参照フレームのシーケンス番号とに基づき計算され、POC_listY0''は第3のシーケンス番号を表し、第2の参照フレームリスト内の第3のシーケンス番号によって表される参照フレームの番号は、第2の参照フレームのインデックス値として決定される。
【００２７】
任意選択で、本出願の別の可能な実装形態において、「第2の参照フレームのインデックス値を取得する」ための方法は、ビットストリームを解析して第2の参照フレームのインデックス値を取得するステップである。
【００２８】
本出願において、「第2の参照フレームのインデックス値を取得する」ための方法は複数あってもよいことは分かりうる。第2の参照フレームのインデックス値を取得するために使用される特定の方法は、実際の要件に基づき決定されるか、またはプリセットされる必要がある。
【００２９】
第2の態様により、双方向インター予測装置が提供される。双方向インター予測装置は、取得ユニットと、決定ユニットとを備える。
【００３０】
特に、取得ユニットは、指示情報を取得し、指示情報は、第1の動き情報に基づき第2の動き情報を決定することを指示するために使用され、第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、第2の動き情報は第2の方向における現在の画像ブロックの動き情報であるように構成され、第1の動き情報を取得するように構成される。決定ユニットは、取得ユニットによって取得された第1の動き情報に基づき第2の動き情報を決定し、第1の動き情報と第2の動き情報とに基づき現在の画像ブロックの予測サンプルを決定するように構成される。
【００３１】
任意選択で、本出願の可能な一実装形態において、決定ユニットは、第1の動き情報内の第1の参照フレームのインデックス値を取得し、第1の参照フレームのインデックス値と第1の参照フレームリストとに基づき、第1の参照フレームのシーケンス番号を決定し、第1の参照フレームは第1の方向における現在の画像ブロックの参照フレームであり、第1の参照フレームのインデックス値は第1の参照フレームリスト内の第1の参照フレームの番号であり、第2の参照フレームのインデックス値を取得し、第2の参照フレームのインデックス値と第2の参照フレームリストとに基づき、第2の参照フレームのシーケンス番号を決定し、第2の参照フレームは第2の方向における現在の画像ブロックの参照フレームであり、第2の参照フレームのインデックス値は第2の参照フレームリスト内の第2の参照フレームの番号であり、第1の動き情報内にある第1の動きベクトル差分と第1の動きベクトル予測子フラグとに基づき第1の動きベクトルを決定し、第1の動きベクトルは第1の方向における現在の画像ブロックの動きベクトルであり、式
【数３】
2021519548.tif 000005
に従って第2の動き情報内の第2の動きベクトルを導出するように特に構成される。
【００３２】
前述の式において、mv_lYは第2の動きベクトルを表し、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listYは第2の参照フレームのシーケンス番号を表し、mv_lXは第1の動きベクトルを表し、第2の動きベクトルは第2の方向における現在の画像ブロックの動きベクトルである。
【００３３】
任意選択で、本出願の別の可能な実装形態において、決定ユニットは、第1の動き情報内の第1の参照フレームのインデックス値を取得し、第1の参照フレームは第1の方向における現在の画像ブロックの参照フレームであり、第1の参照フレームのインデックス値は第1の参照フレームリスト内の第1の参照フレームの番号であり、第2の参照フレームのインデックス値を取得し、第2の参照フレームは第2の方向における現在の画像ブロックの参照フレームであり、第2の参照フレームのインデックス値は第2の参照フレームリスト内の第2の参照フレームの番号であり、第1の動き情報内にある第1の動きベクトル差分と第1の動きベクトル予測子フラグとに基づき第1の動きベクトルを決定し、第1の動きベクトルは第1の方向における現在の画像ブロックの動きベクトルであり、第1の参照フレームが現在の画像ブロックの前方参照フレームであり、第2の参照フレームが現在の画像ブロックの後方参照フレームであるとき、または第1の参照フレームが現在の画像ブロックの後方参照フレームであり、第2の参照フレームが現在の画像ブロックの前方参照フレームであるとき、または第1の参照フレームおよび第2の参照フレームが各々、現在の画像ブロックの前方参照フレームであるとき、または第1の参照フレームおよび第2の参照フレームが各々、現在の画像ブロックの後方参照フレームであるとき、式
mv_lY=-mv_lX
に従って第2の動き情報内の第2の動きベクトルを導出するように特に構成される。
【００３４】
前述の式において、mv_lYは第2の動きベクトルを表し、mv_lXは第1の動きベクトルを表し、第2の動きベクトルは第2の方向における現在の画像ブロックの動きベクトルである。
【００３５】
任意選択で、本出願の別の可能な実装形態において、決定ユニットは、第1の動き情報内にある第1の参照フレームのインデックス値と第1の動きベクトル差分とを取得し、第1の参照フレームのインデックス値と第1の参照フレームリストとに基づき、第1の参照フレームのシーケンス番号を決定し、第1の参照フレームは第1の方向における現在の画像ブロックの参照フレームであり、第1の参照フレームのインデックス値は第1の参照フレームリスト内の第1の参照フレームの番号であり、第2の参照フレームのインデックス値を取得し、第2の参照フレームのインデックス値と第2の参照フレームリストとに基づき第2の参照フレームのシーケンス番号を決定し、第2の参照フレームのインデックス値と第2の候補予測済み動きベクトルリストとに基づき第2の予測済み動きベクトルを決定し、第2の予測済み動きベクトルは第2の方向における現在の画像ブロックの予測済み動きベクトルであり、第2の参照フレームは第2の方向における現在の画像ブロックの参照フレームであり、第2の参照フレームのインデックス値は第2の参照フレームリスト内の第2の参照フレームの番号であり、式
【数４】
2021519548.tif 000006
に従って第2の動き情報内の第2の動きベクトル差分を導出し、mvd_lYは第2の動きベクトル差分を表し、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listYは第2の参照フレームのシーケンス番号を表し、mvd_lXは第1の動きベクトル差分を表し、第2の予測済み動きベクトルと第2の動きベクトル差分とに基づき第2の動きベクトルを決定するように特に構成され、第2の動きベクトルは第2の方向における現在の画像ブロックの動きベクトルである。
【００３６】
任意選択で、本出願の別の可能な実装形態において、決定ユニットは、第1の動き情報内にある第1の参照フレームのインデックス値と第1の動きベクトルとを取得し、第1の参照フレームは第1の方向における現在の画像ブロックの参照フレームであり、第1の参照フレームのインデックス値は第1の参照フレームリスト内の第1の参照フレームの番号であり、第2の参照フレームのインデックス値を取得し、第2の参照フレームのインデックス値と第2の候補予測済み動きベクトルリストとに基づき第2の予測済み動きベクトルを決定し、第2の予測済み動きベクトルは第2の方向における現在の画像ブロックの予測済み動きベクトルであり、第2の参照フレームは第2の方向における現在の画像ブロックの参照フレームであり、第2の参照フレームのインデックス値は第2の参照フレームリスト内の第2の参照フレームの番号であり、第1の参照フレームが現在の画像ブロックの前方参照フレームであり、第2の参照フレームが現在の画像ブロックの後方参照フレームであるとき、または第1の参照フレームが現在の画像ブロックの後方参照フレームであり、第2の参照フレームが現在の画像ブロックの前方参照フレームであるとき、または第1の参照フレームおよび第2の参照フレームが各々、現在の画像ブロックの前方参照フレームであるとき、または第1の参照フレームおよび第2の参照フレームが各々、現在の画像ブロックの後方参照フレームであるとき、式
mvd_lY=-mvd_lX
に従って第2の動き情報内の第2の動きベクトル差分を導出し、mvd_lYは第2の動きベクトル差分を表し、mvd_lXは第1の動きベクトル差分を表し、第2の予測済み動きベクトルと第2の動きベクトル差分とに基づき第2の動きベクトルを決定するように特に構成され、第2の動きベクトルは第2の方向における現在の画像ブロックの動きベクトルである。
【００３７】
任意選択で、本出願の別の可能な実装形態において、取得ユニットは、式POC_listY0=2*POC_Cur-POC_listXに従って現在のフレームのシーケンス番号と第1の参照フレームのシーケンス番号とに基づき第1のシーケンス番号を計算し、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listY0は第1のシーケンス番号を表し、第2の参照フレームリストが第1のシーケンス番号を含むときに、第2の参照フレームのインデックス値として、第2の参照フレームリスト内の第1のシーケンス番号によって表される参照フレームの番号を決定するように特に構成される。
【００３８】
任意選択で、本出願の別の可能な実装形態において、取得ユニットは、式(POC_Cur-POC_listX)*(POC_listY0'-POC_Cur)>0に従って現在のフレームのシーケンス番号と第1の参照フレームのシーケンス番号とに基づき第2のシーケンス番号を計算し、POC_listY0'は第2のシーケンス番号を表し、第2の参照フレームリストが第2のシーケンス番号を含むときに、第2の参照フレームのインデックス値として、第2の参照フレームリスト内の第2のシーケンス番号によって表される参照フレームの番号を決定するように特に構成される。
【００３９】
任意選択で、本出願の別の可能な実装形態において、取得ユニットは、式POC_listX≠POC_listY0''に従って現在のフレームのシーケンス番号と第1の参照フレームのシーケンス番号とに基づき第3のシーケンス番号を計算し、POC_listY0''は第3のシーケンス番号を表し、第2の参照フレームのインデックス値として、第2の参照フレームリスト内の第3のシーケンス番号によって表される参照フレームの番号を決定するように特に構成される。
【００４０】
第3の態様により、双方向インター予測方法が提供される。双方向インター予測方法の実装形態は複数ある。
【００４１】
一実装形態は、ビットストリームを解析して第1の識別子を取得するステップであって、第1の識別子は第1の動き情報に基づき第2の動き情報を決定するかどうかを指示するために使用され、第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、第2の動き情報は第2の方向における現在の画像ブロックの動き情報である、ステップ、第1の識別子の値が第1のプリセット値である場合に第1の動き情報を取得し、第1の動き情報に基づき第2の動き情報を決定するステップ、および第1の動き情報と第2の動き情報とに基づき現在の画像ブロックの予測サンプルを決定するステップである。
【００４２】
別の実装形態は、ビットストリームを解析して第2の識別子を取得するステップであって、第2の識別子は、動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算するかどうかを指示するために使用される、ステップ、第2の識別子の値が第2のプリセット値である場合に第3の識別子を取得するステップであって、第3の識別子は第1の動き情報に基づき第2の動き情報を決定するかどうかを指示するために使用され、第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、第2の動き情報は第2の方向における現在の画像ブロックの動き情報である、ステップ、第3の識別子の値が第3のプリセット値である場合に第1の動き情報を取得し、第1の動き情報に基づき第2の動き情報を決定するステップ、および第1の動き情報と第2の演算情報とに基づき現在の画像ブロックの予測サンプルを決定するステップである。
【００４３】
別の実装形態は、ビットストリームを解析して第2の識別子を取得するステップであって、第2の識別子は、動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算するかどうかを指示するために使用される、ステップ、第2の識別子の値が第2のプリセット値である場合に第1の動き情報を取得し、第1の動き情報に基づき第2の動き情報を決定するステップであって、第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、第2の動き情報は第2の方向における現在の画像ブロックの動き情報である、ステップ、および第1の動き情報と第2の動き情報とに基づき現在の画像ブロックの予測サンプルを決定するステップである。
【００４４】
別の実装形態は、ビットストリームを解析して第4の識別子を取得するステップであって、第4の識別子は、動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算するかどうかを指示するために使用される、ステップ、第4の識別子の値が第4のプリセット値である場合に第1の参照フレームリストと第2の参照フレームリストとに基づき第1の参照フレームのインデックス値と第2の参照フレームのインデックス値とを決定するステップであって、第1の参照フレームリストは第1の方向における現在の画像ブロックの参照フレームリストであり、第2の参照フレームリストは第2の方向における現在の画像ブロックの参照フレームリストであり、第1の参照フレームは第1の方向における現在の画像ブロックの参照フレームであり、第2の参照フレームは第2の方向における現在の画像ブロックの参照フレームである、ステップ、第1の動きベクトル差分と第1の動きベクトル予測子フラグとを取得し、第1の動き情報に基づき第2の動き情報を決定するステップであって、第1の動き情報は第1の参照フレームのインデックス値と、第1の動きベクトル差分と、第1の動きベクトル予測子フラグとを含み、第2の動き情報は第2の方向における現在の画像ブロックの動き情報である、ステップ、および第1の動き情報と第2の動き情報とに基づき現在の画像ブロックの予測サンプルを決定するステップである。
【００４５】
別の実装形態は、ビットストリームを解析して第1の識別子を取得するステップであって、第1の識別子は第1の動き情報に基づき第2の動き情報を決定するかどうかを指示するために使用され、第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、第2の動き情報は第2の方向における現在の画像ブロックの動き情報である、ステップ、第1の識別子の値が第8のプリセット値である場合に第5の識別子を取得するステップであって、第5の識別子は第2の動き情報に基づき第1の動き情報を決定するかどうかを指示するために使用される、ステップ、第5の識別子の値が第5のプリセット値である場合に第2の動き情報を取得し、第2の動き情報に基づき第1の動き情報を決定するステップ、および第1の動き情報と第2の動き情報とに基づき現在の画像ブロックの予測サンプルを決定するステップである。
【００４６】
別の実装形態は、ビットストリームを解析して第2の識別子を取得するステップであって、第2の識別子は、動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算するかどうかを指示するために使用される、ステップ、第2の識別子の値が第2のプリセット値である場合に第3の識別子を取得するステップであって、第3の識別子は第1の動き情報に基づき第2の動き情報を決定するかどうかを指示するために使用され、第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、第2の動き情報は第2の方向における現在の画像ブロックの動き情報である、ステップ、第3の識別子の値が第6のプリセット値である場合に第2の動き情報を取得し、第2の動き情報に基づき第1の動き情報を決定するステップ、および第1の動き情報と第2の演算情報とに基づき現在の画像ブロックの予測サンプルを決定するステップである。
【００４７】
第1の識別子から第4の識別子までの具体的な説明については、次の説明を参照されたい。
【００４８】
本出願において提供される双方向インター予測方法では、ビットストリームを解析することによって識別子が取得された後に、第1の動き情報に基づき第2の動き情報決定するかどうかが識別子の値に基づき決定される。第2の動き情報が第1の動き情報に基づき決定される必要があると決定された後、第1の動き情報が取得され、次いで第2の動き情報が取得された第1の動き情報に基づき決定される。この方法で、ビットストリームは、対応する識別子と第1の動き情報とを含むだけでよく、第2の動き情報を含む必要はもはやない。ビットストリームが各方向の各画像ブロックの動き情報を含む従来技術と比較して、本出願で提供される双方向インター予測方法は、ビットストリームに含まれる動き情報を効果的に削減し、伝送リソース、伝送速度、および符号化速度の有効利用率を改善する。
【００４９】
第4の態様により、双方向インター予測装置が提供される。双方向インター予測装置は、取得ユニットと、決定ユニットとを備える。
【００５０】
特に、一実装形態において、取得ユニットは、ビットストリームを解析して第1の識別子を取得し、第1の識別子は第1の動き情報に基づき第2の動き情報を決定するかどうかを指示するために使用され、第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、第2の動き情報は第2の方向における現在の画像ブロックの動き情報であるように構成され、第1の識別子の値が第1のプリセット値である場合に第1の動き情報を取得するように構成される。決定ユニットは、取得ユニットによって取得された第1の動き情報に基づき第2の動き情報を決定し、第1の動き情報と第2の動き情報とに基づき現在の画像ブロックの予測サンプルを決定するように構成される。
【００５１】
別の実装形態において、取得ユニットは、ビットストリームを解析して第2の識別子を取得し、第2の識別子は動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算するかどうかを指示するために使用されるように構成され、第2の識別子の値が第2のプリセット値である場合に第3の識別子を取得し、第3の識別子は第1の動き情報に基づき第2の動き情報を決定するかどうかを指示するために使用され、第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、第2の動き情報は第2の方向における現在の画像ブロックの動き情報であるように構成され、第3の識別子の値が第3のプリセット値である場合に第1の動き情報を取得するように構成される。決定ユニットは、取得ユニットによって取得された第1の動き情報に基づき第2の動き情報を決定し、第1の動き情報と第2の動き情報とに基づき現在の画像ブロックの予測サンプルを決定するように構成される。
【００５２】
別の実装形態において、取得ユニットは、ビットストリームを解析して第2の識別子を取得し、第2の識別子は動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算するかどうかを指示するために使用されるように構成され、第2の識別子の値が第2のプリセット値である場合に第1の動き情報を取得するように構成される。決定ユニットは、取得ユニットによって取得された第1の動き情報に基づき第2の動き情報を決定し、第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、第2の動き情報は第2の方向における現在の画像ブロックの動き情報であり、第1の動き情報と第2の動き情報とに基づき現在の画像ブロックの予測サンプルを決定するように構成される。
【００５３】
別の実装形態において、取得ユニットは、ビットストリームを解析して第4の識別子を取得するように構成され、第4の識別子は、動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算するかどうかを指示するために使用される。決定ユニットは、取得ユニットによって取得された第4の識別子の値が第4のプリセット値である場合に第1の参照フレームリストと第2の参照フレームリストとに基づき第1の参照フレームのインデックス値と第2の参照フレームのインデックス値とを決定するように構成され、第1の参照フレームリストは第1の方向における現在の画像ブロックの参照フレームリストであり、第2の参照フレームリストは第2の方向における現在の画像ブロックの参照フレームリストであり、第1の参照フレームは第1の方向における現在の画像ブロックの参照フレームであり、第2の参照フレームは第2の方向における現在の画像ブロックの参照フレームである。取得ユニットは、第1の動きベクトル差分と第1の動きベクトル予測子フラグとを取得するようにさらに構成される。決定ユニットは、第1の動き情報に基づき第2の動き情報を決定し、第1の動き情報は第1の参照フレームのインデックス値と、第1の動きベクトル差分と、第1の動きベクトル予測子フラグとを含み、第2の動き情報は第2の方向における現在の画像ブロックの動き情報であり、第1の動き情報と第2の動き情報とに基づき現在の画像ブロックの予測サンプルを決定するようにさらに構成される。
【００５４】
第5の態様により、端末が提供される。端末は、1つ以上のプロセッサと、メモリと、通信インターフェースとを備える。メモリおよび通信インターフェースは、1つ以上のプロセッサに結合される。メモリは、コンピュータプログラムコードを記憶するように構成される。コンピュータプログラムコードは、命令を含む。1つ以上のプロセッサが命令を実行すると、端末は、第1の態様もしくは第1の態様の可能な実装形態のうちのいずれか1つに係る双方向インター予測方法を実行するか、または第3の態様もしくは第3の態様の可能な実装形態のうちのいずれか1つに係る双方向インター予測方法を実行する。
【００５５】
第6の態様により、動画デコーダが提供され、これは不揮発性記憶媒体と中央演算処理装置とを備える。不揮発性記憶媒体は、実行可能プログラムを記憶する。中央演算処理装置は、不揮発性記憶媒体に接続され、第1の態様もしくは第1の態様の可能な実装形態のうちのいずれか1つに係る双方向インター予測方法、または第3の態様もしくは第3の態様の可能な実装形態のうちのいずれか1つに係る双方向インター予測方法を実装する実行可能プログラムを実行する。
【００５６】
第7の態様により、デコーダが提供される。デコーダは、第2の態様における双方向インター予測装置と、再構成モジュールとを備え、再構成モジュールは、双方向インター予測装置によって取得された予測サンプルに基づき現在の画像ブロックの再構成されたサンプル値を決定するように構成されるか、またはデコーダは、第4の態様における双方向インター予測装置と、再構成モジュールとを備え、再構成モジュールは、双方向インター予測装置によって取得された予測サンプルに基づき現在の画像ブロックの再構成されたサンプル値を決定するように構成される。
【００５７】
第8の態様により、コンピュータ可読記憶媒体が提供される。コンピュータ可読記憶媒体は命令を記憶する。第5の態様において命令が端末上で実行されたときに、端末は、第1の態様もしくは第1の態様の可能な実装形態のうちのいずれか1つに係る双方向インター予測方法を実行するか、または第3の態様もしくは第3の態様の可能な実装形態のうちのいずれか1つに係る双方向インター予測方法を実行するように有効化される。
【００５８】
第9の態様により、命令を含むコンピュータプログラム製品が提供される。第5の態様においてコンピュータプログラム製品が端末上で実行されると、端末は、第1の態様もしくは第1の態様の可能な実装形態のうちのいずれか1つに係る双方向インター予測方法を実行するか、または第3の態様もしくは第3の態様の可能な実装形態のうちのいずれか1つに係る双方向インター予測方法を実行するように有効化される。
【００５９】
本出願において、双方向インター予測装置の名称は、デバイスまたは機能モジュールにいっさい制限を課すことはしない。実際の実装形態において、デバイスまたは機能モジュールは、他の名称を有してもよい。デバイスまたは機能モジュールの機能が本出願に含まれるものに類似しているならば、デバイスまたは機能モジュールは、本出願の請求項およびこれの同等の技術の範囲内に収まる。
【００６０】
第5の態様から第9の態様および第5の態様から第9の態様の実装形態の具体的な説明については、第1の態様および第1の態様の実装形態の詳細な説明または第3の態様および第3の態様の実装形態の詳細な説明を参照されたい。それに加えて、第5の態様から第9の態様および第5の態様から第9の態様の実装形態の有益な効果については、第1の態様および第1の態様の実装形態の有益な効果の分析、または第3の態様および第3の態様の実装形態の有益な効果の分析を参照されたい。詳細については、ここで再び説明しない。
【００６１】
本出願におけるこれらの態様または他の態様は、次により簡潔に包括的に説明される。
【図面の簡単な説明】
【００６２】
【図１】本出願の一実施形態に係る動画符号化システムの概略構造図である。
【図２】本出願の一実施形態に係る動画エンコーダの概略構造図である。
【図３】本出願の一実施形態に係る動画デコーダの概略構造図である。
【図４】本出願の一実施形態に係る双方向インター予測方法の概略フローチャートである。
【図５】本出願の一実施形態に係る双方向インター予測装置の第1の概略構造図である。
【図６】本出願の一実施形態に係る双方向インター予測装置の第2の概略構造図である。
【発明を実施するための形態】
【００６３】
本出願の明細書、請求項、および添付図面において、「第1の」、「第2の」、「第3の」、「第4の」などの言い回しは、異なる対象物間を区別することを意図しているが、特定の順序を指示していない。
【００６４】
本出願の実施形態において、「例」という語または「たとえば」という言い回しは、例を与えて、図解、または説明を表すために使用される。本出願の実施形態において「例」または「たとえば」として説明されている任意の実施形態または設計スキームは、別の実施形態または設計スキームより好ましいものとして、またはより多くの利点を有するものとして説明されるべきではない。正確には、「例」または「たとえば」などの言い回しの使用は、特定の方法で関係する概念を提示することを意図されている。
【００６５】
本出願の実施形態の理解を円滑にするために、本出願の実施形態における関係要素は本明細書の最初に説明される。
【００６６】
画像符号化(picture encoding):画像シーケンスをビットストリームに圧縮するプロセス。
【００６７】
画像復号(picture decoding):特定の構文ルールおよび特定の処理方法に従って、ビットストリームを再構成された画像に復元するプロセス。
【００６８】
現在、動画像符号化処理は次のとおりである。最初に、エンコーダが、原画のフレームを互いに重ならない複数の部分に分割し、各部分は画像ブロックとして使用されてもよい。次いで、エンコーダは、各画像ブロックに対して、予測(Prediction)、変換(Transform)、量子化(Quantization)などの演算を実行して、画像ブロックに対応するビットストリームを取得し、予測は、画像ブロックの予測ブロックを取得するために実行され、それにより、画像ブロックと画像ブロックの予測ブロックとの間の差分(または残差もしくは残差ブロックと称される)のみが符号化されて伝送され、伝送オーバーヘッドを低減させることができる。最後に、エンコーダは、画像ブロックに対応するビットストリームをデコーダに送信する。
【００６９】
これに対応して、デコーダは、ビットストリームを受信した後に、動画復号プロセスを実行する。具体的には、デコーダは、受信されたビットストリームに対して、予測、逆量子化、および逆変換などの演算を実行し、再構成された画像ブロック(または再構成後の画像ブロックと称される)を取得する。このプロセスは、画像再構成プロセス(または画像再構成処理)と称される。次いで、デコーダは、原画内の各画像ブロックの再構成ブロックを組み立て、原画の再構成された画像を取得し、再構成された画像を再生する。
【００７０】
既存の動画像符号化技術は、イントラ予測とインター予測とを含む。インター予測は、現在のフレームと現在のフレームの参照フレームとの間の相関関係を使用して画像ブロックを符号化し/画像ブロックを復号することによって完了する予測である。現在のフレームは、1つ以上の参照フレームを有してもよい。具体的には、現在の画像ブロックの予測画像ブロックは、現在の画像ブロックの参照フレーム内のサンプルに基づき生成される。
【００７１】
一般に、現在の画像ブロックの予測画像ブロックは、1つの参照画像ブロックのみに基づき生成されてもよく、または現在の画像ブロックの予測画像ブロックは、少なくとも2つの参照画像ブロックに基づき生成されてもよい。1つの参照画像ブロックに基づき現在の画像ブロックの予測画像ブロックを生成することは、一方向予測と称され、少なくとも2つの参照画像ブロックに基づき現在の画像ブロックの予測画像ブロックを生成することは、双方向インター予測と称される。双方向インター予測における少なくとも2つの参照画像ブロックは、同じ参照フレームからのものであってもよいし、異なる参照フレームからのものであってもよい。言い換えると、本出願における「方向」は、一般化された定義である。本出願における1つの方向は、1つの参照画像ブロックに対応する。次の第1の方向および第2の方向は、異なる参照画像ブロックに対応する。2つの参照画像ブロックは、現在の画像ブロックの前方参照フレーム/後方参照フレームに含まれてもよく、または1つの参照画像ブロックは、現在の画像ブロックの前方参照フレームに含まれてもよく、他の参照画像ブロックは、現在の画像ブロックの後方参照フレームに含まれてもよい。
【００７２】
任意選択で、双方向インター予測は、現在の動画フレームと、現在の動画フレームの前に符号化され再生される動画フレームとの間の相関関係と、現在の動画フレームと、現在の動画フレームの前に符号化され、現在の動画フレームの後に再生される動画フレームとの間の相関関係とを使用することによって実行されるインター予測であってもよい。
【００７３】
双方向インター予測は、通常前方インター予測および後方インター予測と称される2つの方向のインター予測を含むことが分かり得る。前方インター予測は、現在の動画フレームと、現在の動画フレームの前に符号化され再生される動画フレームとの間の相関関係を使用することによって実行されるインター予測である。後方インター予測は、現在の動画フレームと、現在の動画フレームの前に符号化され、現在の動画フレームの後に再生される動画フレームとの間の相関関係を使用することによって実行されるインター予測である。
【００７４】
前方インター予測は前方参照フレームリストL0に対応し、後方インター予測は後方参照フレームリストL1に対応する。2つの参照フレームリストは、同じ数の参照フレーム、または異なる数の参照フレームを含んでもよい。
【００７５】
動き補償(Motion Compensation、MC)は、参照画像ブロックを使用することによって現在の画像ブロックを予測するプロセスである。
【００７６】
大半の符号化フレームワークでは、動画シーケンスは一連の画像(picture)を含み、画像は少なくとも1つのスライス(slice)に分割され、各スライスはさらに画像ブロック(block)に分割される。動画の符号化/復号は、画像ブロックによって実行される。符号化/復号処理は、画像の左上隅の位置を起点として、左から右へ、上から下へと行単位で実行されてもよい。本明細書では、画像ブロックは、動画符号化規格H.264におけるマクロブロック(macro block、MB)であってもよく、または高効率動画符号化規格(High Efficiency Video Coding、HEVC)における符号化ユニット(Coding Unit、CU)であってもよい。これは、本出願の実施形態において特に限定されるものではない。
【００７７】
本出願において、符号化/復号されている画像ブロックは、現在の画像ブロック(current block)と称され、現在の画像ブロックが配置されている画像は、現在のフレームと称される。
【００７８】
一般に、現在のフレームは、一方向予測フレーム(Pフレーム)であってもよく、または双方向予測フレーム(Bフレーム)であってもよい。現在のフレームがPフレームであるときに、現在のフレームは、1つの参照フレームリストを有する。現在のフレームがBフレームであるときに、現在のフレームは2つの参照フレームリストを有し、これら2つのリストは、通常、それぞれL0およびL1と称される。各参照フレームリストは、現在のフレームの参照フレームとして使用される少なくとも1つの再構成されたフレームを含む。参照フレームは、現在のフレームのインター予測に対する参照サンプルを提供するために使用される。
【００７９】
現在のフレームにおいて、現在の画像ブロックの隣接する画像ブロック(たとえば、現在のブロックの左側、上側、または右側)がすでに符号化/復号されていてもよく、再構成された画像が取得される。隣接する画像ブロックは、再構成された画像ブロックと称される。符号化モードおよび再構成された画像ブロックの再構成されたサンプルなどの情報が利用可能である(available)。
【００８０】
現在のフレームが符号化/復号される前に符号化/復号されてしまっているフレームは、再構成されたフレームと称される。
【００８１】
動きベクトル(Motion Vector、MV)は、インター予測プロセスにおける重要なパラメータであり、現在の画像ブロックに関する符号化された画像ブロックの空間的変位を表す。通常、動きベクトルは、動き探索などの動き推定(Motion Estimation、ME)方法を使用することによって取得されてもよい。予備的インター予測技術では、エンコーダは現在の画像ブロックの動きベクトルをビットストリームで伝送し、それにより、デコーダは現在の画像ブロックの予測サンプルを再現して再構成されたブロックを取得する。符号化効率をさらに改善するために、参照動きベクトルを使用することにより動きベクトルを差分符号化するための方法は、後述するが、具体的には、動きベクトル差分(Motion Vector Difference、MVD)のみが符号化される。
【００８２】
デコーダおよびエンコーダが同じ参照画像ブロックを使用できるようにするために、エンコーダは各画像ブロックの動き情報をビットストリームでデコーダに送信する必要がある。エンコーダが各画像ブロックの動きベクトルを直接符号化する場合、大量の伝送リソースが消費される。空間的に隣接する画像ブロックの動きベクトルは強い相関を有するので、現在の画像ブロックの動きベクトルは、符号化された隣接する画像ブロックの動きベクトルに基づき予測できる。予測を通じて取得される動きベクトルは、MVPと称され、現在の画像ブロックの動きベクトルとMVPとの間の差はMVDと称される。
【００８３】
動画符号化規格H.264では、予測精度を改善するために、多重参照フレーム予測が動き推定プロセスにおいて使用される。具体的には、複数の再構成されたフレームを記憶するバッファが作成され、バッファ内のすべての再構成されたフレームが動き補償に対する最適な参照画像ブロックについて探索され、これにより時間的冗長性をうまく除去する。動画符号化規格H.264では、インター予測において2つのバッファ、すなわち、参照フレームリスト0(reference list 0)および参照フレームリスト1(reference list 1)が使用される。各リスト内の最適な参照ブロックが配置されている参照フレームは、インデックス値、すなわちref_idx_l0およびref_idx_l1をマークとして付けられる。各参照フレームリストにおいて、参照画像ブロックの動き情報は、参照フレームインデックス値(ref_idx_l0またはref_idx_l1)と、MVPフラグと、MVDとを含む。デコーダは、参照フレームインデックス値と、MVPフラグと、MVDとに基づき、選択された参照フレーム内の正しい参照画像ブロックを発見してもよい。
【００８４】
現在、HEVC規格で頻繁に使用されているインター予測モードは、高度動きベクトル予測(Advanced Motion Vector Prediction、AMVP)モード、マージ(Merge)モード、および非並進運動モデル予測モードである。
【００８５】
AMVPモードでは、エンコーダは、現在の画像ブロックに空間的または時間的に隣接する符号化された画像ブロックの動きベクトルを使用することによって候補動きベクトルリストを構築し、レート歪みコストに基づき候補動きベクトルリスト内の最適な動きベクトルを現在の画像ブロックのMVPとして決定する。それに加えて、エンコーダは、MVPを中心とした近傍内の動き探索を実行し、現在の画像ブロックの動きベクトルを取得する。エンコーダは、候補動きベクトルリスト内のMVPのインデックス値(すなわち、MVPフラグ)と、参照フレームインデックス値と、MVDとをデコーダに伝送する。
【００８６】
マージモードでは、エンコーダは、現在の画像ブロックに空間的または時間的に隣接する符号化された画像ブロックの動き情報を使用することによって候補動き情報リストを構築し、レート歪みコストに基づき候補動き情報リスト内の最適な動き情報を現在の画像ブロックの動き情報として決定する。エンコーダは、候補動き情報リスト内の最適な動き情報の位置のインデックス値をデコーダに伝送する。
【００８７】
非並進運動モデル予測モードでは、エンコーダおよびデコーダは、同じ動きモデルを使用することによって、現在の画像ブロックのすべてのサブブロックの動き情報を導出し、すべてのサブブロックの動き情報に基づき動き補償を実行し、予測画像ブロックを取得する。これは、予測効率を改善する。エンコーダおよびデコーダによって頻繁に使用される動きモデルは、4パラメータアフィンモデル、6パラメータアフィン変換モデル、または8パラメータ双線形モデルである。
【００８８】
たとえば、4パラメータアフィン変換モデルは、2つのサンプルの動きベクトルと、現在の画像ブロックの左上隅にあるサンプルに関する2つのサンプルの座標とを使用することによって表されてもよい。本明細書では、動きモデルパラメータを表すために使用されるサンプルは、コントロールポイントと称される。現在の画像ブロックの左上隅(0、0)のサンプルおよび現在の画像ブロックの右上隅(W、0)のサンプルがコントロールポイントであり、現在の画像ブロックの左上隅および右上隅のサンプルの動きベクトルがそれぞれ(vx0、vy0)および(vx1、vy1)である場合、現在の画像ブロックの各サブブロックの動き情報は、次の式(1)に従って取得される。次の式(1)において、(x、y)は現在の画像ブロックの左上隅のサンプルに関するサブブロックの座標であり、(vx、vy)はサブブロックの動きベクトルであり、Wは現在の画像ブロックの幅である。
【数５】
2021519548.tif 000007
【００８９】
たとえば、6パラメータアフィン変換モデルは、3つのサンプルの動きベクトルと、現在の画像ブロックの左上隅にあるサンプルに関する3つのサンプルの座標とを使用することによって表されてもよい。現在の画像ブロックの左上隅(0、0)のサンプル、現在の画像ブロックの右上隅(W、0)のサンプル、および現在の画像ブロックの左下隅(0、H)のサンプルがコントロールポイントであり、現在の画像ブロックの左上隅、右上隅、および左下隅のサンプルの動きベクトルがそれぞれ(vx0、vy0)、(vx1、vy1)、および(vx2、vy2)である場合、次の式(2)に従って、現在の画像ブロックの各サブブロックの動き情報が取得される。次の式(2)において、(x、y)は現在の画像ブロックの左上隅のサンプルに関するサブブロックの座標であり、(vx、vy)はサブブロックの動きベクトルであり、WおよびHは、それぞれ、現在の画像ブロックの幅および高さである。
【数６】
2021519548.tif 000008
【００９０】
たとえば、8パラメータ双線形モデルは、4つのサンプルの動きベクトルと、現在の画像ブロックの左上隅にあるサンプルに関する4つのサンプルの座標とを使用することによって表されてもよい。現在の画像ブロックの左上隅(0、0)のサンプル、現在の画像ブロックの右上隅(W、0)のサンプル、現在の画像ブロックの左下隅(0、H)のサンプル、および現在の画像ブロックの右下隅(W、H)のサンプルがコントロールポイントであり、現在の画像ブロックの左上隅、右上隅、左下隅、および右下隅のサンプルの動きベクトルがそれぞれ(vx0、vy0)、(vx1、vy1)、(vx2、vy2)、(vx3、vy3)である場合、現在の画像ブロックの各サブブロックの動き情報は、次の式(3)に従って取得される。次の式(3)において、(x、y)は現在の画像ブロックの左上隅のサンプルに関するサブブロックの座標であり、(vx、vy)はサブブロックの動きベクトルであり、WおよびHは、それぞれ、現在の画像ブロックの幅および高さである。
【数７】
2021519548.tif 000009
【００９１】
前述のインター予測モードのうちのいずれか1つにおいて、インター予測が双方向インター予測である場合、エンコーダは、各方向における各画像ブロックの動き情報をデコーダに送信する必要があることは容易に分かり得る。その結果、動き情報は、比較的大量の伝送リソースを占有する。これにより、伝送リソースの有効利用率、伝送速度、および符号化圧縮効率が低下する。
【００９２】
前述の問題を解決するために、本出願は、双方向インター予測方法を提供する。双方向インター予測では、エンコーダが第1の方向における現在の画像ブロックの動き情報をデコーダに送信し、第1の方向における現在の画像ブロックの動き情報を受信した後、デコーダは第1の方向における現在の画像ブロックの動き情報に基づき第2の方向における現在の画像ブロックの動き情報を計算する。この方法で、現在の画像ブロックの予測サンプルは、第1の方向における現在の画像ブロックの動き情報と、第2の方向における現在の画像ブロックの動き情報とに基づき計算されてもよい。
【００９３】
本出願において提供される双方向インター予測方法は、双方向インター予測装置、動画符号化装置、動画コーデック、または動画符号化機能を有する他のデバイスによって実行されてもよい。
【００９４】
本出願において提供される双方向インター予測方法は、動画符号化システムに適用可能である。動画像符号化システムにおいて、動画エンコーダ100および動画デコーダ200は、本出願において提供される双方向インター予測方法の例に従って現在の画像ブロックの動き情報を計算するように構成される。特に、第2方向における現在の画像ブロックの動き情報は、第1の方向における現在の画像ブロックの動き情報に基づき計算され、これにより、現在の画像ブロックの予測サンプルは、第1の方向における現在の画像ブロックの動き情報と、第2方向における現在の画像ブロックの動き情報とに基づき決定される。この方法では、第1の方向における現在の画像ブロックの動き情報だけ、動画エンコーダ100と動画エンコーダ200との間で伝送されればよい。これは、伝送リソースの利用率を効果的に改善し、符号化圧縮効率を高める。
【００９５】
図1は、動画符号化システム1の構造を示している。図1に示されているように、動画符号化システム1は、ソース装置10と、デスティネーション装置20とを備える。ソース装置10は、符号化された動画データを生成する。ソース装置10は、また、動画符号化装置または動画符号化デバイスと称されてもよい。デスティネーション装置20は、ソース装置10によって生成された符号化された動画データを復号してもよい。デスティネーション装置20は、また、動画復号装置または動画復号デバイスと称されてもよい。ソース装置10および/またはデスティネーション装置20は、少なくとも1つのプロセッサと、少なくとも1つのプロセッサに結合されているメモリとを備えてもよい。メモリは、限定はしないが、読取り専用メモリ(Read-Only Memory、ROM)、ランダムアクセスメモリ(Random Access Memory、RAM)、電気的消去可能プログラム可能読取り専用メモリ(Electrically Erasable Programmable Read-Only Memory、EEPROM)、フラッシュメモリ、またはコンピュータによってアクセスできる命令もしくはデータ構造体の形態で要求されるプログラムコードを記憶するように構成されてもよい他の任意の媒体を含んでもよい。これは、本出願において特には限定されない。
【００９６】
ソース装置10およびデスティネーション装置20は、デスクトップコンピュータ、モバイルコンピューティング装置、ノートブック(たとえば、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、「スマート」フォンなどの手持ち式の携帯電話、テレビ受像機、カメラ、表示装置、デジタルメディアプレーヤー、テレビゲーム機、車載コンピュータ、または類似の装置を含む、様々な装置を含んでもよい。
【００９７】
デスティネーション装置20は、リンク30を介してソース装置10から符号化された動画データを受信してもよい。リンク30は、符号化された動画データをソース装置10からデスティネーション装置20に転送することができる1つ以上の媒体および/または装置を備えてもよい。一例において、リンク30は、ソース装置10が符号化された動画データをデスティネーション装置20にリアルタイムで直接伝送することを可能にする1つ以上の通信媒体を含んでもよい。この例では、ソース装置10は、通信規格(たとえば、ワイヤレス通信プロトコル)に従って符号化された動画データを変調してもよく、変調された動画データをデスティネーション装置20に伝送してもよい。1つ以上の通信媒体は、ワイヤレスおよび/または有線通信媒体、たとえば、高周波(Radio Frequency、RF)スペクトル、または1つ以上の物理的伝送ケーブルを含んでもよい。1つ以上の通信媒体は、パケットベースのネットワークの一部を構成するものとしてよく、パケットベースのネットワークは、たとえば、ローカルエリアネットワーク、ワイドエリアネットワーク、また地球規模のネットワーク(たとえば、インターネット)である。1つ以上の通信媒体は、ルータ、スイッチ、基地局、またはソース装置10からデスティネーション装置20への通信を実装する別のデバイスを含んでもよい。
【００９８】
別の例において、符号化された動画データは、出力インターフェース140を通じて記憶装置40に出力されてもよい。同様に、符号化された動画データは、入力インターフェース240を通じて記憶装置40からアクセスされてもよい。記憶装置40は、ブルーレイディスク、高密度デジタルビデオディスク(Digital Video Disc、DVD)、コンパクトディスク読取り専用メモリ(Compact Disc Read-Only Memory、CD-ROM)、フラッシュメモリ、または符号化された動画データを記憶するように構成されている別の適切なデジタル記憶媒体などの、複数のタイプのローカルでアクセス可能なデータ記憶媒体を含んでもよい。
【００９９】
別の例において、記憶装置40は、ソース装置10によって生成された符号化済み動画データを記憶するファイルサーバまたは別の中間記憶装置に対応してもよい。この例では、デスティネーション装置20は、ストリーミング伝送またはダウンロードを通じて記憶装置40から記憶されている動画データを取得してもよい。ファイルサーバは、符号化された動画データを記憶し、符号化された動画データをデスティネーション装置20に伝送することができる任意のタイプのサーバであってもよい。たとえば、ファイルサーバは、ワールドワイドウェブ(World Wide Web、Web)サーバ(たとえば、ウェブサイトに使用される)、ファイル転送プロトコル(File Transfer Protocol、FTP)サーバ、ネットワークアタッチトストレージ(Network Attached Storage、NAS)装置、およびローカルディスクドライブを含んでもよい。
【０１００】
デスティネーション装置20は、任意の標準的なデータ接続(たとえば、インターネット接続)を通じて符号化された動画データにアクセスしてもよい。データ接続のタイプの例は、ファイルサーバに記憶されている符号化された動画データにアクセスするのに適しているワイヤレスチャネルまたは有線接続(たとえば、ケーブルモデム)、またはこれらの組み合わせを含む。符号化された動画データは、ストリーミング方式で、ダウンロード方式で、またはこれらの組み合わせでファイルサーバから伝送されてもよい。
【０１０１】
本出願における双方向インター予測方法は、ワイヤレスアプリケーションシナリオに限定されない。たとえば、本出願における双方向インター予測方法は、テレビ放送、ケーブルテレビ伝送、衛星テレビ伝送、ストリーミング動画伝送(たとえば、インターネットを介して)、データ記憶媒体に記憶されている動画データの符号化、データ記憶媒体に記憶されている動画データの復号、または別のアプリケーションなどの複数のマルチメディアアプリケーションをサポートするための動画符号化に適用されてもよい。いくつかの例において、動画符号化システム1は、ストリーミング動画伝送、動画再生、ビデオブロードキャスティング、および/またはテレビ電話などのアプリケーションをサポートする一方向もしくは双方向動画伝送をサポートするように構成されてもよい。
【０１０２】
図1に示されている動画符号化システム1は、動画符号化システムの一例にすぎず、本出願の動画符号化システムを制限するものではないことに留意されたい。本出願において提供される双方向インター予測方法は、符号化装置と復号装置との間にデータ通信がないシナリオにさらに適用可能であってもよい。他の例では、符号化されるべき動画データまたは符号化された動画データは、ローカルメモリから取り出されてもよく、またはネットワーク上でストリーミング形式により、または類似の方式により、伝送されてもよい。動画符号化装置は、符号化されるべき動画データを符号化し、符号化された動画データをメモリに記憶してもよい。動画復号装置は、また、符号化された動画データをメモリから取得し、符号化された動画データを復号してもよい。
【０１０３】
図1において、ソース装置10は、動画ソース101と、動画エンコーダ102と、出力インターフェース103とを備える。いくつかの例において、出力インターフェース103は、レギュレータ/復調器(モデム)および/または送信機を含んでもよい。動画ソース101は、動画キャプチャデバイス(たとえば、カメラ)、以前にキャプチャされた動画データを収めてある動画アーカイブ、動画コンテンツプロバイダから動画データを受信するための動画入力インターフェース、および/もしくは動画データを生成するためのコンピュータグラフィックスシステム、または前述の動画データソースの組み合わせを含んでもよい。
【０１０４】
動画エンコーダ102は、動画ソース101をソースとする動画データを符号化してもよい。いくつかの例において、ソース装置10は、出力インターフェース103を通じて符号化された動画データをデスティネーション装置20に直接伝送する。他の例では、符号化された動画データは代替的に記憶装置40内に記憶されてもよく、それにより、デスティネーション装置20は、その後、復号および/または再生のために符号化された動画データにアクセスする。
【０１０５】
図1の例において、デスティネーション装置20は、表示装置201と、動画デコーダ202と、入力インターフェース203とを備える。いくつかの例において、入力インターフェース203は、受信機および/またはモデムを含む。入力インターフェース203は、符号化された動画データをリンク30を介しておよび/または記憶装置40から受信してもよい。表示装置201は、デスティネーション装置20と一体化されてもよく、またはデスティネーション装置20の外部に配設されてもよい。通常、表示装置201は、復号された動画データを表示する。表示装置201は、複数のタイプの表示装置、たとえば、液晶ディスプレイ、プラズマディスプレイ、有機発光ダイオードディスプレイ、または別のタイプの表示装置を含んでもよい。
【０１０６】
任意選択で、動画エンコーダ102および動画デコーダ202は、音声エンコーダおよび音声デコーダとそれぞれ一体化されてもよく、共通データストリームまたは分離しているデータストリーム内の音声と動画の両方を符号化するために、適切なマルチプレクサ-デマルチプレクサユニットまたは他のハードウェアおよびソフトウェアを含んでもよい。
【０１０７】
動画エンコーダ102および動画デコーダ202は、少なくとも1つのマイクロプロセッサ、デジタルシグナルプロセッサ(Digital Signal Processor、DSP)、特定用途向け集積回路(Application-Specific Integrated Circuit、ASIC)、フィールドプログラマブルゲートアレイ(Field Programmable Gate Array、FPGA)、ディスクリートロジック、ハードウェア、またはこれらの任意の組み合わせを備えてもよい。本出願において提供されている双方向インター予測方法がソフトウェアを使用することによって実装される場合、そのソフトウェアに使用される命令は、適切な不揮発性コンピュータ可読記憶媒体に記憶されてもよく、少なくとも1つのプロセッサがハードウェアで命令を実行し本出願を実装するために使用されてもよい。前述の内容(ハードウェア、ソフトウェア、ハードウェアとソフトウェアとの組み合わせ、および同様のもの)のうちのいずれか1つが、少なくとも1つのプロセッサと考えられてもよい。動画エンコーダ102はエンコーダに含まれてもよく、動画デコーダ202はデコーダに含まれてもよく、エンコーダまたはデコーダは、対応する装置内の組み合わされたエンコーダ/デコーダ(コーデック)の一部であってもよい。
【０１０８】
本出願における動画エンコーダ102および動画デコーダ202は、動画圧縮規格(たとえば、HEVC)に従って演算を実行してもよく、または別の業界規格に従って演算を実行してもよい。これは、本出願において特には限定されない。
【０１０９】
動画エンコーダ102は、現在の画像ブロックに対して双方向動き推定を実行して、第1の方向における現在の画像ブロックの動き情報を決定し、第2の方向における現在の画像ブロックの動き情報を、第1の方向における現在の画像ブロックの動き情報に基づき計算するように構成される。この方法で、動画エンコーダ102は、第1の方向における現在の画像ブロックの動き情報と、第2の方向における現在の画像ブロックの動き情報とに基づき現在の画像ブロックの予測画像ブロックを決定する。さらに、動画エンコーダ102は、現在の画像ブロックと現在の画像ブロックの予測画像ブロックとの間の残差に対して、変換および量子化などの演算を実行し、ビットストリームを生成し、そのビットストリームを動画デコーダ202に送信する。ビットストリームは、第1の方向における現在の画像ブロックの動き情報と、第1の動き情報に基づき第2の動き情報を決定することを指示するために使用される指示情報とを含む。指示情報は、異なる識別子を使用することによって表されてもよい。指示情報を表す方法については、次の説明を参照されたい。
【０１１０】
任意選択で、第1の方向における現在の画像ブロックの動き情報に基づき第2の方向における現在の画像ブロックの動き情報を計算するために動画エンコーダ102によって使用される方法は、次のとおりであってもよい。動画エンコーダ102が、第1の方向における現在の画像ブロックの動きベクトルに基づき第2の方向における現在の画像ブロックの動きベクトルを決定するか、または動画エンコーダ102が、第1の方向における現在の画像ブロックの動きベクトル差分に基づき第2の方向における現在の画像ブロックの動きベクトル差分を決定し、第2の方向における現在の画像ブロックの動きベクトル差分と、第2の方向における現在の画像ブロックの予測済み動きベクトルとに基づき第2の方向における現在の画像ブロックの動きベクトルを決定する。
【０１１１】
次の図4を参照されたい。動画デコーダ202は、ビットストリームを取得し、ビットストリームを解析して、第1の動き情報に基づき第2の動き情報を決定することを指示するために使用される指示情報を取得し(S400)、言い換えると、ある方向における動き情報に基づき、別の方向における動き情報を導出し計算することを決定し、第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、第2の動き情報は第2の方向における現在の画像ブロックの動き情報であり、本明細書における第1の方向および第2の方向は異なり、第1の動き情報を取得し(S401)、取得された第1の動き情報に基づき第2の動き情報を決定し(S402)、第1の動き情報と第2の動き情報とに基づき現在の画像ブロックの予測サンプルを決定する(S403)ように構成される。
【０１１２】
第1の方向における現在の画像ブロックの動き情報に基づき第2の方向における現在の画像ブロックの動き情報を計算するために動画デコーダ202によって使用される方法は、次のとおりであってもよい。動画デコーダ202が、第1の方向における現在の画像ブロックの動きベクトルに基づき第2の方向における現在の画像ブロックの動きベクトルを決定するか、または動画デコーダ202が、第1の方向における現在の画像ブロックの動きベクトル差分に基づき第2の方向における現在の画像ブロックの動きベクトル差分を決定し、第2の方向における現在の画像ブロックの動きベクトル差分と、第2の方向における現在の画像ブロックの予測済み動きベクトルとに基づき第2の方向における現在の画像ブロックの動きベクトルを決定する。
【０１１３】
図2は、本出願の一実施形態に係る動画エンコーダ102の概略構造図である。図2に示されているように、動画エンコーダ102は、動画を後処理エンティティ41に出力するように構成される。後処理エンティティ41は、動画エンコーダ102からの符号化された動画データを処理することができる動画エンティティの一例を表し、たとえば、メディアアウェアネットワーク要素(MANE)またはスプライシング装置/編集装置である。いくつかの場合において、後処理処理エンティティ41は、ネットワークエンティティの一例であってもよい。いくつかの動画符号化システムでは、後処理エンティティ41および動画エンコーダ102は、別々の装置のコンポーネントであってもよい。他の場合において、後処理エンティティ41に関して説明されている機能は、動画エンコーダ102を含む同じ装置によって実行されてもよい。一例として、後処理エンティティ41は、図1の記憶装置40の一例である。
【０１１４】
動画エンコーダ102は、第1の方向における現在の画像ブロックの動き情報に基づき第2の方向における現在の画像ブロックの動き情報を導出して計算し、第1の方向における現在の画像ブロックの動き情報と第2の方向における現在の画像ブロックの動き情報とに基づき現在の画像ブロックの予測画像ブロックをさらに決定してもよく、双方向インター予測符号化をさらに完全にする。
【０１１５】
図2に示されているように、動画エンコーダ102は、変換器301と、量子化器302と、エントロピーエンコーダ303と、フィルタ306と、メモリ307と、予測処理ユニット308と、総和器312とを備える。予測処理ユニット308は、イントラ予測器309とインター予測器310とを備える。画像ブロックを再構成するために、動画エンコーダ102は、逆量子化器304と、逆変換器305と、総和器311とをさらに備える。フィルタ306は、1つ以上のループフィルタ、たとえば、デブロッキングフィルタ、適応ループフィルタ、およびサンプル適応オフセットフィルタを表すように指定される。
【０１１６】
メモリ307は、動画エンコーダ102のコンポーネントによって符号化された動画データを記憶してもよい。メモリ307に記憶されている動画データは、動画ソース101から取得されてもよい。メモリ307は、動画データをイントラまたはインター符号化モードで符号化するために動画エンコーダ102によって使用される参照動画データを記憶する参照画像メモリであってもよい。メモリ307は、シンクロナスDRAM(synchronous DRAM、SDRAM)、磁気抵抗型RAM(magnetoresistive RAM、MRAM)、抵抗変化型RAM(resistive RAM、RRAM)を含むダイナミックランダムアクセスメモリ(dynamic RAM、DRAM)、または他のタイプのメモリ装置であってもよい。
【０１１７】
動画エンコーダ102は、動画データを受信し、動画データを動画データメモリ内に記憶する。パーティション分割ユニットは、動画データを複数の画像ブロックにパーティション分割し、これらの画像ブロックは、より小さなブロックにさらにパーティション分割されてもよく、たとえば、四分木構造または二分木構造に基づいた画像ブロックパーティション分割がある。このパーティション分割は、スライス(slice)、タイル(tile)、または他のより大きい単位に分割することをさらに含んでもよい。動画エンコーダ102は、通常、符号化されるべき動画スライス内の画像ブロックを符号化するためのコンポーネントである。スライスは、複数の画像ブロックにパーティション分割されてもよい(およびタイルと称される画像ブロックセットにパーティション分割されてもよい)。
【０１１８】
予測処理ユニット308内のイントラ予測器309は、空間冗長性を除去するために、現在の画像ブロックのものと同じであるフレームまたはスライス内の1つ以上の隣接する画像ブロックに関して現在の画像ブロックに対してイントラ予測符号化を実行してもよい。予測処理ユニット308内のインター予測器310は、時間冗長性を除去するために、1つ以上の参照画像内の1つ以上の予測画像ブロックに関して現在の画像ブロックに対してインター予測符号化を実行してもよい。
【０１１９】
予測処理ユニット308は、総和器310に対して取得されたイントラ符号化された画像ブロックとインター符号化された画像ブロックとを供給して残差ブロックを生成し、総和器309に対して残差ブロックを供給して参照画像として使用される符号化されたブロックを再構成してもよい。
【０１２０】
予測処理ユニット308がインター予測およびイントラ予測を通じて現在の画像ブロックの予測画像ブロックを生成した後、動画エンコーダ102は、符号化されるべき現在の画像ブロックから予測画像ブロックを減算することによって残余画像ブロックを生成する。総和器312は、この減算演算を実行する1つ以上のコンポーネントを表す。残差ブロック内の残差動画データは、1つ以上の変換ユニット(transform unit、TU)に含まれ、変換器301に適用されてもよい。変換器301は、離散コサイン変換(discrete cosine transform、DCT)または概念的に類似する変換などの変換を通じて残差動画データを残差変換係数に変換する。変換器301は、残差動画データをサンプル値領域から変換領域、たとえば、周波数領域に変換してもよい。
【０１２１】
変換器301は、取得された変換係数を量子化器302に送信してもよい。量子化器302は、変換係数を量子化してビットレートをさらに減らす。いくつかの例では、量子化器302は、量子化された変換係数を含む行列をさらに走査してもよい。代替的に、エントロピーエンコーダ303が走査を実行してもよい。
【０１２２】
量子化の後、エントロピーエンコーダ303は、量子化された変換係数に対してエントロピー符号化を実行する。たとえば、エントロピーエンコーダ303は、コンテキスト適応型可変長符号化(context-adaptive variable-length coding、CAVLC)、コンテキストベース適応型二値算術符号化(context based adaptive binary arithmetic coding、CABAC)、または別のエントロピー符号化方法もしくは技術を実行してもよい。エントロピーエンコーダ303がエントロピー符号化を実行した後、符号化されたビットストリームは、動画デコーダ202に送信されてもよく、または動画デコーダ202によるその後の送信またはその後の取り出しのためにアーカイブされてもよい。エントロピーエンコーダ303は、符号化されるべき現在の画像ブロックの構文要素に対してエントロピー符号化をさらに実行してもよい。
【０１２３】
逆量子化器304および逆変換器305は、それぞれ、逆量子化および逆変換をそれぞれ実行して、サンプル領域内の残差ブロックを、たとえば参照画像の参照ブロックとしてその後使用されるように、再構成する。総和器311は、インター予測器310またはイントラ予測器309によって生成された予測画像ブロックに、再構成された残差ブロックを加算して、再構成された画像ブロックを生成する。画像ブロックの予測画像ブロックは、画像ブロックの参照画像ブロックを処理(補間などの処理)することによって取得されることができる。
【０１２４】
動画エンコーダ102の他の構造的変更形態は動画ストリームを符号化するために使用されてもよいことは理解されるべきである。たとえば、いくつかの画像ブロックまたは画像フレームについて、動画エンコーダ102は、残差信号を直接量子化してもよく、それに対応して、変換器301および逆変換器305による処理は必要なくなる。代替的に、いくつかの画像ブロックまたは画像フレームについて、動画エンコーダ102は残差データを生成せず、それに対応して、変換器301、量子化器302、逆量子化器304、および逆変換器305による処理は必要ない。代替的に、動画エンコーダ102は、再構成された画像ブロックを参照ブロックとして直接記憶してもよく、フィルタ306による処理は必要ない。代替的に、動画エンコーダ102内の量子化器302および逆量子化器304は組み合わされてよい。
【０１２５】
図3は、本出願の一実施形態に係る動画デコーダ202の概略構造図である。図3に示されているように、動画デコーダ202は、エントロピーデコーダ401と、逆量子化器402と、逆変換器403と、フィルタ404と、メモリ405と、予測処理ユニット406と、総和器409とを備える。予測処理ユニット406は、イントラ予測器407とインター予測器408とを備える。いくつかの例において、動画デコーダ202は、図2の動画エンコーダ102に関して説明されている符号化プロセスのおおよそ逆である復号プロセスを実行してもよい。
【０１２６】
復号処理において、動画デコーダ202は、動画エンコーダ102からビットストリームを受信する。動画デコーダ202は、ネットワークエンティティ42から動画データを受信してもよく、任意選択で、動画データを動画データメモリ(図示せず)にさらに記憶してもよい。動画データメモリは、動画デコーダ202のコンポーネントによって復号されるべきである動画データ、たとえば、符号化されたビットストリームを記憶してもよい。動画データメモリに記憶されている動画データは、たとえば、有線またはワイヤレスネットワーク通信を通じて、または物理的データ記憶媒体にアクセスすることによって、記憶装置40もしくはカメラなどのローカル動画ソースから取得されてもよい。動画データメモリは図3に図示されていないが、動画データメモリおよびメモリ405は同じメモリであってもよく、または別々に構成されたメモリであってもよい。動画データメモリおよびメモリ405は、各々、複数のタイプのメモリ装置のうちのいずれか1つ、たとえば、シンクロナスDRAM(SDRAM)を含むダイナミックランダムアクセスメモリ(DRAM)、磁気抵抗型RAM(MRAM)、抵抗変化型RAM(RRAM)、または別のタイプのメモリ装置によって構成されてもよい。様々な例において、動画データメモリは、動画デコーダ202の他のコンポーネントと一緒にチップ上に一体化されてもよく、またはそれらのコンポーネントに関してチップの外部に配設されてもよい。
【０１２７】
ネットワークエンティティ42は、たとえば、サーバ、MANE、動画エディタ/スプライサ、または上で説明されている技術のうちの1つ以上を実装するように構成されている別の類似の装置であってもよい。ネットワークエンティティ42は、動画エンコーダ、たとえば、動画エンコーダ102を含んでも、または含まなくてもよい。ネットワークエンティティ42がビットストリームを動画デコーダ202に送信する前に、ネットワークエンティティ42は、本出願で説明されている技術の一部を実装してもよい。いくつかの動画復号システムでは、ネットワークエンティティ42および動画デコーダ202は、別々の装置のコンポーネントであってもよい。他の場合において、ネットワークエンティティ42に関して説明されている機能は、動画デコーダ202を含む同じ装置によって実行されてもよい。いくつかの場合において、ネットワークエンティティ42は、図1の記憶装置40の一例であってもよい。
【０１２８】
動画デコーダ202のエントロピーデコーダ401は、ビットストリームに対してエントロピー復号を実行して、量子化された係数およびいくつかの構文要素を生成する。エントロピーデコーダ401は、構文要素をフィルタ404に転送する。動画デコーダ202は、動画スライスレベルおよび/または画像ブロックレベルで1つ以上の構文要素を受信してもよい。本出願において、本明細書の構文要素は、現在の画像ブロックに関係する指示情報を含んでもよく、指示情報は、第1の動き情報に基づき第2の動き情報を決定することを指示するために使用される。それに加えて、いくつかの例では、動画エンコーダ102は、第1の動き情報に基づき第2の動き情報を決定するかどうかを指示する特定の構文要素を通知する信号を送信してもよい。
【０１２９】
逆量子化器402は、ビットストリーム内に提供され、エントロピーデコーダ401によって復号された量子化済み変換係数に対して、逆量子化を実行する、言い換えると、逆量子化する。逆量子化プロセスは、動画スライス内の各画像ブロックについて動画エンコーダ102によって計算された量子化パラメータを使用することによって適用されるべき量子化度を決定することと、同様に、適用されるべき逆量子化度を決定することとを含むものとしてもよい。逆変換器403は、逆変換、たとえば、逆DCT、逆整数変換、または概念的に類似する逆変換プロセスを変換係数に対して実行し、サンプル領域残差ブロックを生成する。
【０１３０】
予測処理ユニット406が現在の画像ブロックに対する予測画像ブロックまたは現在の画像ブロックのサブブロックに対する予測画像ブロックを生成した後に、動画デコーダ202は、逆変換器403からの残差ブロックと、予測処理ユニット406によって生成された対応する予測画像ブロックとを総和し、再構成されたブロック、すなわち復号された画像ブロックを取得する。総和器409(再構成器409とも称される)は、この総和演算を実行するコンポーネントを表す。必要なときに、フィルタ(復号ループ内または復号ループの後の)は、サンプルを平滑化するためにさらに使用されてもよく、または動画品質は、別の方式で改善されてもよい。フィルタ404は、1つ以上のループフィルタ、たとえば、デブロッキングフィルタ、適応ループフィルタ(ALF)、およびサンプル適応オフセット(SAO)フィルタであってよい。
【０１３１】
動画デコーダ202の他の構造変更形態はビットストリームを復号するために使用されてもよいことは理解されるべきである。たとえば、いくつかの画像ブロックまたは画像フレームについて、動画デコーダ202のエントロピーデコーダ401は、復号を通じて量子化済み係数を取得することをせず、それに対応して、逆量子化器402および逆変換器403による処理は必要ない。たとえば、動画デコーダ202内の逆量子化器402および逆変換器403は組み合わされてもよい。
【０１３２】
次に、図1に示されている動画符号化システム1、図2に示されている動画エンコーダ102、図3に示されている動画デコーダ202に基づき、本出願で提供される双方向インター予測方法について詳細に説明する。
【０１３３】
図4は、本出願の一実施形態に係る双方向インター予測方法の概略フローチャートである。図4に示されている方法は、双方向インター予測装置によって実行される。双方向インター予測装置は、図1の動画デコーダ202であってもよい。図4は、双方向インター予測装置が動画デコーダ202である一例を使用することによって説明される。
【０１３４】
図4に示されているように、本出願のこの実施形態における双方向インター予測方法は、次のステップを含んでもよい。
【０１３５】
S400:動画デコーダ202は、取得されたビットストリームを解析し、指示情報を取得する。
【０１３６】
任意選択で、動画デコーダ202は、ビットストリームを解析し、ビットストリーム内の構文要素の値に基づき、現在のフレーム内の現在の画像ブロックに対してインター予測を実行するために使用されるインター予測モードを決定する。インター予測モードが双方向インター予測モードであるときに、動画デコーダ202は、指示情報を取得する。
【０１３７】
動画デコーダ202は、動画エンコーダ102によって送信された符号化済みビットストリームを受信してもよく、または記憶装置40から符号化済みビットストリームを取得してもよい。
【０１３８】
任意選択で、本出願のこの実施形態における動画デコーダ202は、構文要素inter_pred_idcの値に基づき、現在のフレーム内の現在の画像ブロックに対してインター予測を実行するために使用されるインター予測モードを決定する。インター予測が一方向インター予測と双方向インター予測とを含むことは、前述の説明から分かり得る。任意選択で、構文要素inter_pred_idcの値が0であるときに、動画デコーダ202は、現在のフレーム内の現在の画像ブロックに対してインター予測を実行するために使用されるインター予測モードが前方インター予測であると決定する。構文要素inter_pred_idcの値が1であるときに、動画デコーダ202は、現在のフレーム内の現在の画像ブロックに対してインター予測を実行するために使用されるインター予測モードが後方インター予測であると決定する。構文要素inter_pred_idcの値が2であるときに、動画デコーダ202は、現在のフレーム内の現在の画像ブロックに対してインター予測を実行するために使用されるインター予測モードが双方向インター予測であると決定する。
【０１３９】
任意選択で、構文要素inter_pred_idcの値が2であると決定した後、動画デコーダ202は、第1の動き情報に基づき第2の動き情報を決定することを指示するために使用される指示情報を取得する。第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、第2の動き情報は第2の方向における現在の画像ブロックの動き情報であり、第1の方向および第2の方向は異なる。
【０１４０】
本出願における画像ブロックは、動画符号化または動画復号を実行するための基本ユニット、たとえば、符号化ユニット(Coding Unit、CU)であってもよく、または予測演算を実行するための基本ユニット、たとえば、予測ユニット(Prediction Unit、PU)であってもよい。これは、本出願のこの実施形態において特には限定されない。
【０１４１】
画像ブロックが動画符号化または動画復号を実行するための基本ユニットである場合、本出願の本実施形態における現在の画像ブロックは、少なくとも1つのサブブロックを含む。それに対応して、第1の動き情報は、第1の方向における現在の画像ブロック内の少なくとも1つのサブブロックの各々の動き情報を含み、第2の動き情報は、第2の方向における現在の画像ブロック内の少なくとも1つのサブブロックの各々の動き情報を含み、指示情報は、第1の方向におけるサブブロックの動き情報に基づき第2の方向におけるサブブロックの動き情報を決定することを指示するために使用される。
【０１４２】
動画デコーダ202は、複数の方式で指示情報を取得してもよい。
【０１４３】
第1の実装形態において、動画デコーダ202は、第1の識別子を解析する。第1の識別子の値が第1のプリセット値であるときに、動画デコーダ202は、第1の動き情報を解析することを決定し、第1の動き情報に基づき第2の動き情報を決定する。言い換えると、動画デコーダ202は、指示情報を取得する。第1の識別子の値が第8のプリセット値であるときに、動画デコーダ202は、ビットストリームを解析して第5の識別子を取得する。第5の識別子の値が第5のプリセット値であるときに、動画デコーダ202は、第2の動き情報を解析することを決定し、第2の動き情報に基づき第1の動き情報を計算する。第5の識別子の値が第9のプリセット値であるときに、動画デコーダ202は、第1の動き情報と第2の動き情報とを取得する。第1のプリセット値および第5のプリセット値は同じであってもよく、または異なっていてもよい。これは、本出願のこの実施形態において特には限定されない。
【０１４４】
たとえば、第1の識別子がmv_derived_flag_l0であり、第5の識別子がmv_derived_flag_l1であり、第1のプリセット値および第5のプリセット値が両方とも1であり、第8のプリセット値および第9のプリセット値が両方とも0である。動画デコーダ202は、最初に、mv_derived_flag_l0を解析する。mv_derived_flag_l0の値が1であるときに、動画デコーダ202は第1の動き情報を解析し、第1の動き情報に基づき第2の動き情報を決定する。mv_derived_flag_l0の値が0であるときに、動画デコーダ202は、mv_derived_flag_l1を解析する。mv_derived_flag_l1の値が1であるときに、動画デコーダ202は第2の動き情報を解析し、第2の動き情報に基づき第1の動き情報を計算する。mv_derived_flag_l0の値およびmv_derived_flag_l1の値が両方とも0であるときに、動画デコーダ202は、第1の動き情報と第2の動き情報とを解析する。
【０１４５】
第2の実装形態において、動画デコーダ202は、第2の識別子を解析する。第2の識別子の値が第2のプリセット値であるときに、動画デコーダ202は、動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算することを決定する。次いで、動画デコーダ202は第3の識別子を解析する。第3の識別子の値が第3のプリセット値であるときに、動画デコーダ202は、第1の動き情報を解析することを決定し、第1の動き情報に基づき第2の動き情報を決定する。言い換えると、動画デコーダ202は、指示情報を取得する。第3の識別子の値が第6のプリセット値であるときに、動画デコーダ202は、第2の動き情報を解析することを決定し、第2の動き情報に基づき第1の動き情報を計算する。
【０１４６】
たとえば、第2の識別子はderived_mv_flagであり、第3の識別子はderived_mv_directionであり、第3のプリセット値は1であり、第6のプリセット値は0である。動画デコーダ202は、最初にderived_mv_flagを解析する。derived_mv_flagの値が1であるときに、動画デコーダ202は、動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算することを決定する。derived_mv_flagの値が0であるときに、動画デコーダ202は、第1の動き情報と第2の動き情報とを解析する。derived_mv_directionの値が1であるときに、動画デコーダ202は、第1の動き情報を解析し、第1の動き情報に基づき第2の動き情報を決定する。derived_mv_directionの値が0であるときに、動画デコーダ202は、第2の動き情報を解析し、第2の動き情報に基づき第1の動き情報を計算する。
【０１４７】
第3の実装形態において、動画デコーダ202は、第2の識別子を解析する。第2の識別子の値が第2のプリセット値であるときに、動画デコーダ202は、動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算することを決定する。次いで、動画デコーダ202は、プリセットされた導出方向に基づき、第1の動き情報を解析することを決定し、第1の動き情報に基づき第2の動き情報を決定する。言い換えると、動画デコーダ202は、指示情報を取得する。言い換えると、この実装形態では、「第1の動き情報に基づき第2の動き情報を決定すること」はプリセットされている。第2の識別子の値が第7のプリセット値であるときに、動画デコーダ202は、第1の動き情報と第2の動き情報とを解析する。
【０１４８】
たとえば、第2の識別子はderived_mv_flagであり、第2のプリセット値は1であり、第7のプリセット値は0である。動画デコーダ202は、derived_mv_flagを解析する。derived_mv_flagの値が1であるときに、動画デコーダ202は、動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算することを決定する。さらに、動画デコーダ202は、第1の動き情報を解析することを決定し、第1の動き情報に基づき第2の動き情報を決定する。derived_mv_flagの値が0であるときに、動画デコーダ202は、第1の動き情報と第2の動き情報とを解析する。
【０１４９】
第4の実装形態において、動画デコーダ202は、第4の識別子(たとえば、mv_derived_flag_l0)を解析する。第4の識別子の値が第4のプリセット値であるときに、動画デコーダ202は、動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算することを決定し、第1の参照フレームリストと第2の参照フレームリストとに基づき変数derived_ref_numを計算する。変数は、第1の参照フレームおよび第2の参照フレームによって構成されうるミラー化/線形参照フレーム対の数を表す。参照フレーム対の数が1であるときに、動画デコーダ202は、参照フレームインデックス値を直接決定する。次いで、動画デコーダ202は、プリセットされた導出方向に基づき、第1の動き情報を解析することを決定し、第1の動き情報に基づき第2の動き情報を決定する。言い換えると、動画デコーダ202は、指示情報を取得する。第1の参照フレームリストは、第1の方向における現在の画像ブロックの参照フレームリストであり、第2の参照フレームリストは、第2の方向における現在の画像ブロックの参照フレームリストであり、第1の参照フレームは、第1の方向における現在の画像ブロックの参照フレームであり、第2の参照フレームは、第2の方向における現在の画像ブロックの参照フレームである。本出願のこの実施形態における参照フレームインデックス値は、対応する参照フレームリスト内の参照フレームの番号である。
【０１５０】
たとえば、現在のフレームのシーケンス番号が4であり、第1の参照フレームリストは{2、0}であり、第2の参照フレームリストは{6、7}であり、前述の条件Bまたは条件Cに基づき、第1の参照フレームリスト内でそのシーケンス番号が2である参照フレームおよび第2参照フレームリスト内でそのシーケンス番号が6である参照フレームは、参照フレーム対を構成しうると決定される。この場合、第1の参照フレームのインデックス値および第2の参照フレームのインデックス値は両方とも0である。
【０１５１】
たとえば、現在のフレームのシーケンス番号は4であり、第1の参照フレームリストは{2、0}であり、第2の参照フレームリストは{6、7}であり、前述の条件Bまたは条件Cに基づき、第1の参照フレームリスト内でそのシーケンス番号が2である参照フレームおよび第2の参照フレームリスト内でそのシーケンス番号が6である参照フレームは参照フレーム対を構成することができ、第1の参照フレームリスト内でそのシーケンス番号が0である参照フレームおよび第2の参照フレームリスト内でそのシーケンス番号が8である参照フレームも参照フレーム対を構成しうると決定される。この場合、動画デコーダ202は、参照フレームインデックス値を解析する必要がある。
【０１５２】
さらに、インター予測モードが双方向インター予測モードであると決定したときに、動画デコーダ202は、現在のフレームの特徴情報がプリセットされた条件を満たすかどうかをさらに決定してもよい。この方法で、現在のフレームの特徴情報がプリセットされた条件を満たすときに、動画デコーダ202は、指示情報を取得する。具体的には、S401のプロセスは特に次のとおりであってもよい。動画デコーダ202は、インター予測モードが双方向インター予測モードであり、現在のフレームの特徴情報が第1のプリセットされた条件を満たすと決定したときに指示情報を取得する。
【０１５３】
現在のフレームの特徴情報は、シーケンス番号、時間レベルID(Temporal Level ID、TID)、または参照フレームの数のうち少なくとも1つを含む。動画デコーダ202によって取得されるビットストリームは、シーケンスパラメータセット(Sequence Parameter Set、SPS)、画像パラメータセット(Picture Parameter Set、PPS)、スライスヘッダ(slice header)またはスライスセグメントヘッダ(slice segment header)、および符号化された画像データを含む。次いで、動画デコーダ202は、ビットストリームを解析して、現在のフレームの特徴情報を取得する。
【０１５４】
プリセットされた条件は、次の条件のうちの少なくとも1つを含む。
【０１５５】
条件A:現在の画像ブロックは、少なくとも2つの参照フレームを有する。
【０１５６】
条件B:現在のフレームのシーケンス番号、第1の参照フレームのシーケンス番号、および第2の参照フレームのシーケンス番号は、条件式
POC_Cur-POC_listX=POC_listY-POC_Cur
を満たす。
【０１５７】
前述の式において、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listYは第2の参照フレームのシーケンス番号を表し、第1の参照フレームは第1の方向における現在の画像ブロックの参照フレームであり、第2の参照フレームは第2の方向における現在の画像ブロックの参照フレームである。
【０１５８】
条件C:現在のフレームのシーケンス番号、第1の参照フレームのシーケンス番号、および第2の参照フレームのシーケンス番号は、条件式
(POC_Cur-POC_listX)*(POC_listY-POC_Cur)>0
を満たす。
【０１５９】
前述の式において、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listYは第2の参照フレームのシーケンス番号を表し、第1の参照フレームは第1の方向における現在の画像ブロックの参照フレームであり、第2の参照フレームは第2の方向における現在の画像ブロックの参照フレームである。
【０１６０】
条件D:現在のフレームのTIDがプリセット値以上である。
【０１６１】
本出願のこの実施形態におけるプリセット条件は、プリセットされてもよく、または上位レイヤ構文、たとえば、SPS、PPS、スライスヘッダ(slice header)、もしくはスライスセグメントヘッダ(slice segment header)などのパラメータセットで指定されてもよい。これは、本出願のこの実施形態において特には限定されない。
【０１６２】
特に、条件B(または条件C)について、動画デコーダ202は、第1の参照フレームリストおよび第2の参照フレームリストの各々から1つの参照フレームシーケンス番号を取得し、取得された参照フレームシーケンス番号および現在のフレームのシーケンス番号が条件Bまたは条件Cを満たすか否かを決定する。指示情報は、条件B(または条件C)が満たされたときに取得される。
【０１６３】
本出願のこの実施形態において、インター予測モードが双方向インター予測モードであり、現在のフレームの特徴情報がプリセット条件を満たすと決定したときに指示情報を取得するために動画デコーダ202によって使用される方法は、インター予測モードが双方向インター予測モードであると決定したときに指示情報を取得するために動画デコーダ202によって使用される方法と同じである。
【０１６４】
前述の説明に基づき、表1は、インター予測モードが双方向インター予測モードであり、現在のフレームの特徴情報がプリセット条件を満たすと決定したときに、動画デコーダ202が第1の実装形態における指示情報を取得する際に使用される構文テーブルである。prediction_unit()は、予測画像ブロックの構文構造であり、現在の画像ブロック内の各サブブロックの動き情報を決定するための方法を記述したものである。
【０１６５】
表1において、x0およびy0は、それぞれ、現在の画像ブロックの左上隅に関する現在の画像ブロック内のサブブロックの水平座標オフセットおよび垂直座標オフセットを示し、nPbWは現在の画像ブロックの幅を示し、nPbHは現在の画像ブロックの高さを示す。inter_pred_idc[x0][y0]の値がPRED_L0のときに、現在のサブブロックのインター予測が前方予測であることを示す。inter_pred_idc[x0][y0]の値がPRED_L1のときに、現在のサブブロックのインター予測が後方予測であることを示す。inter_pred_idc[x0][y0]の値がPRED_BIのときに、現在のサブブロックのインター予測が双方向予測であることを示す。
【０１６６】
双方向インター予測(すなわち、inter_pred_idc[x0][y0]==PRED_BI)について、プリセット条件(conditions)が満たされている場合、mv_derived_flag_l0[x0][y0]が解析される。mv_derived_flag_l0の値が最初のプリセット値でない場合、mv_derived_flag_l1[x0][y0]が解析される。mv_derived_flag_l0の値が第1のプリセット値であるか、またはmv_derived_flag_l1[x0][y0]の値が第5のプリセット値であるときに、現在の画像ブロックのサブブロックの動き情報が決定され、特に、参照フレームインデックス値ref_idx_l0[x0][y0]、動きベクトル予測子フラグmvp_l0_flag[x0][y0]、および動きベクトル差分mvd_coding(x0、y0、0)が決定される。
【表１】
2021519548.tif 000010
【０１６７】
前述の説明に基づき、表2は、インター予測モードが双方向インター予測モードであり、現在のフレームの特徴情報がプリセット条件を満たすと決定したときに、動画デコーダ202が第3の実装形態を使用することによって指示情報を取得する際に使用される構文テーブルである。
【０１６８】
表2において、双方向性インター予測(言い換えると、inter_pred_idc[x0][y0]==PRED_BI)について、プリセット条件(conditions)が満たされている場合に、derived_mv_flag[x0][y0]が解析される。derived_mv_flag[x0][y0]の値が第2のプリセット値であるときに、現在の画像ブロックのサブブロックの動き情報が決定され、具体的には、参照フレームインデックス値ref_idx_lx[x0][y0]、動きベクトル予測子フラグmvp_lx_flag[x0][y0]、および動きベクトル差分mvd_coding(x0、y0、x)が決定される。
【表２】
2021519548.tif 000011
【０１６９】
前述の説明に基づき、表3は、インター予測モードが双方向インター予測モードであり、現在のフレームの特徴情報が第1のプリセット条件を満たすと決定したときに、動画デコーダ202が第4の実装形態を使用することによって指示情報を取得する際に使用される構文テーブルである。
【０１７０】
表3において、双方向性インター予測(言い換えると、inter_pred_idc[x0][y0]==PRED_BI)について、プリセット条件(conditions)が満たされている場合に、derived_mv_flag[x0][y0]が解析される。derived_mv_flag[x0][y0]の値が4番目のプリセット値であるときに、derived_ref_numが決定され、derived_ref_numの値が1より大きいときに、現在の画像ブロック内のサブブロックの動き情報が決定され、具体的には、参照フレームインデックス値ref_idx_lx[x0][y0]、動きベクトル予測子フラグmvp_lx_flag[x0][y0]、および動きベクトル差分mvd_coding(x0、y0、x)が決定される。
【表３】
2021519548.tif 000012
【０１７１】
第1の識別子、第2の識別子、第3の識別子、および第4の識別子は、すべて、プリセットされてもよく、または上位レイヤ構文、たとえば、SPS、PPS、スライスヘッダ(slice header)、もしくはスライスセグメントヘッダ(slice segment header)などのパラメータセットで指定されてもよい。これは、本出願のこの実施形態において特には限定されない。
【０１７２】
動画デコーダ202は、インター予測モードが双方向インター予測モードであり、現在のフレームの特徴情報が第1のプリセットされた条件を満たすと決定したときに指示情報を取得する。これは、動画デコーダ202の復号率を効果的に改善し、情報冗長性を低減する。
【０１７３】
S401:動画デコーダ202は、第1の動き情報を取得する。
【０１７４】
任意選択で、動画デコーダ202は、ビットストリームを解析して、第1の参照フレームのインデックス値と、第1の動きベクトル予測子フラグと、第1の動きベクトル差分とを取得する、言い換えると、第1の動き情報を取得する。第1の動きベクトル予測子フラグは、第1の候補動きベクトルリスト内の第1の予測済み動きベクトルのインデックス値を指示するために使用され、第1の予測済み動きベクトルは、第1の方向における現在の画像ブロックの予測済み動きベクトルであり、第1の動きベクトル差分は、第1の予測済み動きベクトルと第1の動きベクトルとの間の差分であり、第1の動きベクトルは、第1の方向における現在の画像ブロックの動きベクトルである。
【０１７５】
表1〜表3に示されている構文テーブルの各々において、動画デコーダ202は、第1の方向における現在の画像ブロックのサブブロックの動き情報を決定する。
【０１７６】
S402:動画デコーダ202は、第1の動き情報に基づき第2の動き情報を決定する。
【０１７７】
第1の実装形態において、第2の動き情報を決定するために動画デコーダ202によって使用される方法は、次のとおりである。動画デコーダ202は、第1の動き情報から第1の参照フレームのインデックス値を選択して、第1の参照フレームのインデックス値と第1の参照フレームリストとに基づき第1の参照フレームのシーケンス番号を決定し、プリセットされた式に従って現在のフレームのシーケンス番号と第1の参照フレームのシーケンス番号とに基づき第2の参照フレームのシーケンス番号を計算し、第2の参照フレームのシーケンス番号と第2の参照フレームリストとに基づき第2の参照フレームのインデックス値を決定し、第1の動き情報と第2の参照フレームのインデックス値とに基づき第2の動き情報を決定する。
【０１７８】
本明細書において、プリセットされた式は、POC_listY=2*POC_Cur-POC_listXであってもよい。POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listYは第2の参照フレームのシーケンス番号を表す。
【０１７９】
たとえば、現在のフレームのシーケンス番号が4であり、第1の参照フレームのシーケンス番号が2であり、第2の参照フレームリストが[6、8]であり、式POC_listY=2*POC_Cur-POC_listXに従って、第2の参照フレームのシーケンス番号が6であると決定された場合、動画デコーダ202は、第2の参照フレームのインデックス値ref_lY_idxが0であると決定する。
【０１８０】
任意選択で、プリセットされた式は、代替的に、(POC_Cur-POC_listX)*(POC_listY-POC_Cur)>0であってもよい。第2の参照フレームリスト内の複数の参照フレームシーケンス番号が式を満たす場合に、動画デコーダ202は、最初に、abs((POC_listY-POC_Cur)-(POC_Cur-POC_listX))が最小になる参照フレームを選択し、次いでabs(POC_listY-POC_Cur)が最小となる参照フレームを選択して、第2の参照フレームのインデックス値を決定することに留意されたい。absは絶対値関数である。
【０１８１】
たとえば、現在のフレームのシーケンス番号が4であり、第1の参照フレームのシーケンス番号が2であり、第2の参照フレームリストが[5、7、8]であり、式(POC_Cur-POC_listX)*(POC_listY-POC_Cur)>0に従って、第2の参照フレームのシーケンス番号が5であると決定された場合、動画デコーダ202は、第2の参照フレームのインデックス値ref_lY_idxが0であると決定する。
【０１８２】
任意選択で、プリセットされた式は、代替的にPOC_listX≠POC_listYであってもよい。第2の参照フレームリスト内の複数の参照フレームシーケンス番号が式を満たす場合に、動画デコーダ202は、最初に、abs((POC_listY-POC_Cur)-(POC_Cur-POC_listX))が最小になる参照フレームを選択し、次いでabs(POC_listY-POC_Cur)が最小となる参照フレームを選択して、第2の参照フレームのインデックス値を決定することに留意されたい。absは絶対値関数である。
【０１８３】
たとえば、現在のフレームのシーケンス番号が4であり、第1の参照フレームのシーケンス番号が2であり、第2の参照フレームリストが[3、2、1、0]であり、式POC_listX≠POC_listYに従って、第2の参照フレームのシーケンス番号が3であると決定された場合、動画デコーダ202は、第2の参照フレームのインデックス値ref_lY_idxが0であると決定する。
【０１８４】
任意選択で、プリセットされた式は、代替的に、POC_listY0=2*POC_Cur-POC_listX、(POC_Cur-POC_listX)*(POC_listY0'-POC_Cur)>0、およびPOC_listX≠POC_listY0''であってもよい。この場合、第2の参照フレームのインデックス値を決定するために動画デコーダ202によって使用される方法は、特に、式POC_listY0=2*POC_Cur-POC_listXを使用することによって現在のフレームのシーケンス番号と第1の参照フレームのシーケンス番号とに基づき第1のシーケンス番号を計算するステップであって、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listY0は第1のシーケンス番号を表す、ステップ、および、第2の参照フレームリストが第1のシーケンス番号を含むときに、第2の参照フレームのインデックス値として、第2の参照フレームリスト内の第1のシーケンス番号によって表される参照フレームの番号を決定するステップ、または第2の参照フレームリストが第1のシーケンス番号を含まないときに、現在のフレームのシーケンス番号と第1の参照フレームのシーケンス番号とに基づき(POC_Cur-POC_listX)*(POC_listY0'-POC_Cur)>0を使用することによって、第2のシーケンス番号を計算するステップであって、POC_listY0'は第2のシーケンス番号を表す、ステップ、および第2の参照フレームリストが第2のシーケンス番号を含むときに、第2の参照フレームのインデックス値として、第2の参照フレームリスト内の第2のシーケンス番号によって表される参照フレームの番号を決定するステップ、または第2の参照フレームリストが第2のシーケンス番号を含まないときに、現在のフレームのシーケンス番号と第1の参照フレームのシーケンス番号とに基づき、式POC_listX≠POC_listY0''を使用することによって第3のシーケンス番号を計算するステップであって、POC_listY0''は第3のシーケンス番号を表す、ステップ、および第2の参照フレームのインデックス値として、第2の参照フレームリスト内の第3のシーケンス番号によって表される参照フレームの番号を決定するステップである。
【０１８５】
第2の実装形態において、第2の動き情報を決定するために動画デコーダ202によって使用される方法は、次のとおりである。動画デコーダ202がビットストリームを解析して第2の参照フレームのインデックス値を取得し、第1の動き情報と第2の参照フレームのインデックス値とに基づき第2の動き情報を決定する。第2参照フレームのインデックス値は、プリセットされてもよく、または、パラメータセット、たとえば、SPS、PPS、スライスヘッダ(slice header)、スライスセグメントヘッダ(slice segment header)で指定されてもよい。これは、本出願のこの実施形態において特には限定されない。
【０１８６】
第1の実装形態および第2の実装形態の両方において、動画デコーダ202は、第1の動き情報と第2の参照フレームのインデックス値とに基づき第2の動き情報を決定することが分かり得る。
【０１８７】
任意選択で、動画デコーダ202は、第2の方向における現在の画像ブロックのすべての動き情報を計算してもよく、または第2の方向における現在の画像ブロックの動き情報の一部を計算してもよい。
【０１８８】
次に、動画デコーダ202が、第1の動き情報と第2の参照フレームのインデックス値とに基づき第2の動き情報を決定するプロセスを説明する。
【０１８９】
任意選択で、第1の動き情報と第2の参照フレームのインデックス値とに基づき第2の動き情報を決定するために動画デコーダ202によって使用される方法は、第1の動き情報における第1の参照フレームのインデックス値を取得し、第1の参照フレームのインデックス値と第1の参照フレームリストとに基づき第1の参照フレームのシーケンス番号を決定するステップ、第2の参照フレームのインデックス値を取得し、第2の参照フレームのインデックス値と第2の参照フレームリストとに基づき第2の参照フレームのシーケンス番号を決定するステップ、第1の動き情報に含まれる第1の動きベクトル差分と第1の動きベクトル予測子フラグとに基づき第1の動きベクトル(第1の方向における現在の画像ブロックの動きベクトル)を決定するステップ、式
【数８】
2021519548.tif 000013
に従って第2の動き情報内の第2の動きベクトルを導出するステップ、であってもよい。
【０１９０】
前述の式において、mv_lYは第2の動きベクトルを表し、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listYは第2の参照フレームのシーケンス番号を表し、mv_lXは第1の動きベクトルを表し、第2の動きベクトルは第2の方向における現在の画像ブロックの動きベクトルである。
【０１９１】
動画デコーダ202は、エンコーダがAMVPモードまたはマージモードで候補動き情報リストを構築する方式と同じである方式で候補動き情報リストを構築し、第1動きベクトル予測フラグに基づき候補動き情報リスト内の第1の予測済み動きベクトルを決定する。この方法で、動画デコーダ202は、第1の予測済み動きベクトルと第1の動きベクトル差分との和を第1の動きベクトルとして決定してもよい。
【０１９２】
任意選択で、第1の参照フレームが現在の画像ブロックの前方参照フレームであり、第2の参照フレームが現在の画像ブロックの後方参照フレームであるとき、または第1の参照フレームが現在の画像ブロックの後方参照フレームであり、第2の参照フレームが現在の画像ブロックの前方参照フレームであるとき、または第1の参照フレームおよび第2の参照フレームが各々、現在の画像ブロックの前方参照フレームであるとき、または第1の参照フレームおよび第2の参照フレームが各々、現在の画像ブロックの後方参照フレームであるとき、動画デコーダ202は、mv_lY=-mv_lXを直接設定してもよい。
【０１９３】
たとえば、「第1の参照フレームは現在の画像ブロックの前方参照フレームであり、第2の参照フレームは現在の画像ブロックの後方参照フレームである」、および「第1の参照フレームは現在の画像ブロックの後方参照フレームであり、第2の参照フレームは現在の画像ブロックの前方参照フレームである」は両方とも、式(POC_Cur-POC_listX)*(POC_listY-POC_Cur)>0を使用することによって表されてもよく、または式POC_listY=2*POC_Cur-POC_listXを使用することによって表されてもよい。
【０１９４】
「第1の参照フレームおよび第2の参照フレームは各々、現在の画像ブロックの前方参照フレームである」、および「第1の参照フレームおよび第2の参照フレームは各々、現在の画像ブロックの後方参照フレームである」は両方とも、式(POC_Cur-POC_listX)*(POC_listY-POC_Cur)<0を使用することによって表されてもよい。
【０１９５】
任意選択で、第1の動き情報と第2の参照フレームのインデックス値とに基づき第2の動き情報を決定するために動画デコーダ202によって使用される方法は、第1の動き情報内にある第1の参照フレームのインデックス値と第1の動きベクトル差分とを取得し、第1の参照フレームのインデックス値と第1の参照フレームリストとに基づき第1の参照フレームのシーケンス番号を決定するステップ、第2の参照フレームのインデックス値を取得し、第2の参照フレームのインデックス値と第2の参照フレームリストとに基づき第2の参照フレームのシーケンス番号を決定し、第2の参照フレームのインデックス値と第2の候補予測済み動きベクトルリストとに基づき第2の予測済み動きベクトルを決定するステップであって、第2の予測済み動きベクトルは第2の方向における現在の画像ブロックの予測済み動きベクトルである、ステップ、式
【数９】
2021519548.tif 000014
に従って第2の動き情報内の第2の動きベクトル差分を導出するステップであって、mvd_lYは第2の動きベクトル差分を表し、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listYは第2の参照フレームのシーケンス番号を表し、mvd_lXは第1の動きベクトル差分を表す、ステップ、および第2の予測済み動きベクトルと第2の動きベクトル差分とに基づき第2の動きベクトルを決定するステップであって、第2の動きベクトルは第2の方向における現在の画像ブロックの動きベクトルである、ステップ、であってもよい。
【０１９６】
任意選択で、第1の参照フレームが現在の画像ブロックの前方参照フレームであり、第2の参照フレームが現在の画像ブロックの後方参照フレームであるとき、または第1の参照フレームが現在の画像ブロックの後方参照フレームであり、第2の参照フレームが現在の画像ブロックの前方参照フレームであるとき、または第1の参照フレームおよび第2の参照フレームが各々、現在の画像ブロックの前方参照フレームであるとき、または第1の参照フレームおよび第2の参照フレームが各々、現在の画像ブロックの後方参照フレームであるとき、動画デコーダ202は、mvd_lY=-mvd_lXを直接設定してもよい。
【０１９７】
たとえば、(POC_Cur-POC_listX)*(POC_listY-POC_Cur)>0、POC_listY=2*POC_Cur-POC_listX、または(POC_Cur-POC_listX)*(POC_listY-POC_Cur)<0である場合、動画デコーダ202はmvd_lY=-mvd_lXを直接設定する。
【０１９８】
S403:動画デコーダ202は、第1の動き情報と第2の動き情報とに基づき現在の画像ブロックの予測サンプルを決定する。
【０１９９】
任意選択で、動画デコーダ202は、S402において、第1の動きベクトルと第2の動きベクトルとを決定する。この方法で、動画デコーダ202は、第1の動きベクトルと第1の参照フレームリストとに基づき第1の参照画像ブロックを決定し、第2の動きベクトルと第2の参照フレームリストとに基づき第2の参照画像ブロックを決定してもよい。さらに、動画デコーダ202は、第1の参照画像ブロックと第2の参照画像ブロックとに基づき現在の画像ブロックの予測サンプルを決定する。言い換えると、動画デコーダ202は、動き補償プロセスを完了する。
【０２００】
第1の参照画像ブロックと第2の参照画像ブロックとに基づき現在の画像ブロックの予測サンプルを決定するために動画デコーダ202によって使用される方法については、任意の既存の方法を参照されたい。これは、本出願のこの実施形態において特には限定されない。
【０２０１】
本出願のこの実施形態で提供される双方向インター予測方法において、動画デコーダ202は、符号化されたビットストリームから第1の動き情報のみを取得してもよい。第1の動き情報を取得した後、動画デコーダ202は、第1の動き情報に基づき第2の動き情報を計算し、第1の動き情報と第2の動き情報とに基づき現在の画像ブロックの予測サンプルをさらに決定する。本出願において提供される方法に従って、すべての方向における各画像ブロックの動き情報は、もはや伝送される必要がなくなり、これは従来技術とは異なる。これは、伝送される動き情報の量を効果的に削減し、伝送リソースの有効利用、伝送レート、符号化圧縮効率を改善する。
【０２０２】
図4に示されている双方向インター予測方法は、現在の画像ブロックについて説明されており、すなわち、AMVPモードに基づき現在の画像ブロックに対してインター予測が実行されると理解されてもよい。
【０２０３】
本出願で提供される双方向インター予測方法は、非並進動きモデル予測モード、たとえば、4パラメータアフィン変換動きモデル、6パラメータアフィン変換動きモデル、または8パラメータ双線形動きモデルにも適用可能であることを理解するのは容易である。このシナリオでは、現在の画像ブロックは、少なくとも1つのサブブロックを含み、現在の画像ブロックの動き情報は、現在の画像ブロックのすべてのサブブロックの各々の動き情報を含む。各サブブロックの動き情報(第1の方向における動き情報および第2の方向における動き情報)を決定するために動画デコーダ202によって使用される方法は、現在の画像ブロックの動き情報を決定するために動画デコーダ202によって使用される方法に類似している。
【０２０４】
非並進動きモデル予測モードでは、動画デコーダ202は、式
【数１０】
2021519548.tif 000015
に従って第1の方向におけるi番目のコントロールポイントの動きベクトルに基づき第2の方向におけるi番目のコントロールポイントの動きベクトルを計算する。
【０２０５】
前述の式において、mvi_lYは第2方向におけるi番目のコントロールポイントの動きベクトルを表し、mvi_lXは第1方向におけるi番目のコントロールポイントの動きベクトルを表し、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listYは第2の参照フレームのシーケンス番号を表す。
【０２０６】
これに対応して、動画デコーダ202は、式
【数１１】
2021519548.tif 000016
を使用することによって、第1の方向におけるi番目のコントロールポイントの動きベクトル差に基づき第2の方向におけるi番目のコントロールポイントの動きベクトル差を計算する。
【０２０７】
前述の式において、mvdi_lYは第2方向におけるi番目のコントロールポイントの動きベクトル差分を表し、mvdi_lXは第1方向におけるi番目のコントロールポイントの動きベクトル差分を表し、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは第1の参照フレームのシーケンス番号を表し、POC_listYは第2の参照フレームのシーケンス番号を表す。
【０２０８】
動画デコーダ202と比較して、本出願のこの実施形態における動画エンコーダ102は、現在の画像ブロックに対して双方向動き推定を実行して、第1の方向における現在の画像ブロックの動き情報を決定し、第1の方向における現在の画像ブロックの動き情報に基づき第2の方向における現在の画像ブロックの動き情報を計算する。この方法において、動画エンコーダ102は、第1の方向における現在の画像ブロックの動き情報と、第2の方向における現在の画像ブロックの動き情報とに基づき現在の画像ブロックの予測画像ブロックを決定する。次いで、動画エンコーダ102は、現在の画像ブロックと現在の画像ブロックの予測画像ブロックとの間の残差に対して、変換および量子化などの演算を実行し、ビットストリームを生成し、そのビットストリームを動画デコーダ202に送信する。ビットストリームは、第1方向における現在の画像ブロックの動き情報を含む。
【０２０９】
第1の方向における現在の画像ブロックの動き情報に基づき第2の方向における現在の画像ブロックの動き情報を計算するために動画エンコーダ102によって使用される方法については、第1の動き情報に基づき第2の動き情報を決定するために動画デコーダ202によって使用される方法を参照されたい、言い換えると、S402の説明を参照されたい。詳細については、本出願では再度説明しない。
【０２１０】
結論から言うと、本出願において提供される双方向インター予測方法に従って、双方向インター予測時に、すべての方向における各画像ブロックの動き情報が伝送される必要はもはやなく、ある方向の動き情報のみが伝送されるだけでよい。これは、伝送される動き情報の量を効果的に削減し、伝送リソースの有効利用、伝送レート、符号化圧縮効率を改善する。
【０２１１】
本出願の一実施形態は、双方向インター予測装置を提供する。双方向インター予測装置は、動画デコーダであってもよい。特に、双方向インター予測装置は、前述の双方向インター予測方法において動画デコーダ202によって実行されるステップを実行するように構成される。本出願のこの実施形態で提供される双方向インター予測装置は、対応するステップに対するモジュールを備えてもよい。
【０２１２】
本出願の実施形態において、双方向インター予測装置は、前述の方法例に基づき機能モジュールに分割されてもよい。たとえば、各機能モジュールは、対応する機能に基づく分割によって取得されてもよく、または2つ以上の機能が1つの処理モジュールに一体化されてもよい。一体化されたモジュールは、ハードウェアの形態で実装されてもよく、またはソフトウェア機能モジュールの形態で実装されてもよい。本出願の実施形態において、モジュール分割は一例であり、単なる論理的機能分割にすぎない。実際の実装形態において、別の分割方法が使用されてもよい。
【０２１３】
各機能モジュールが、対応する機能に基づく分割を通じて得られるときに、図5は、前述の実施形態における双方向インター予測装置の可能な概略構造図である。図5に示されているように、双方向インター予測装置5は、取得ユニット50と決定ユニット51とを備える。
【０２１４】
取得ユニット50は、前述の実施形態においてS400、S401、および同様のステップを実行する双方向インター予測装置をサポートするように構成され、および/または本明細書において説明されている技術の別のプロセスで使用される。
【０２１５】
決定ユニット51は、前述の実施形態においてS402、S403、および同様のステップを実行する双方向インター予測装置をサポートするように構成され、および/または本明細書において説明されている技術の別のプロセスで使用される。
【０２１６】
前述の方法実施形態におけるステップのすべての関係する内容は、対応する機能モジュールの説明において引用されてもよい。詳細については、ここで再び説明しない。
【０２１７】
確かに、本出願のこの実施形態で提供される双方向インター予測装置は、限定はしないが、前述のモジュールを含む。たとえば、双方向インター予測装置は、記憶ユニット52をさらに備えてもよい。
【０２１８】
記憶ユニット52は、双方向インター予測装置のプログラムコードおよびデータを記憶するように構成されてもよい。
【０２１９】
一体化ユニットが使用されるときに、図6は、本出願の実施形態で提供される双方向インター予測装置の概略構造図である。図6に示されているように、双方向インター予測装置6は、処理モジュール60と通信モジュール61とを備える。処理モジュール60は、双方向インター予測装置の動作を制御し、管理し、たとえば、取得ユニット50および決定ユニット51によって実行されるステップを実行するように構成され、および/または本明細書において説明されている技術の別のプロセスを実行するように構成される。通信モジュール61は、双方向インター予測装置と別のデバイスとの間の相互作用をサポートするように構成される。図6に示されているように、双方向インター予測装置は、記憶モジュール62をさらに備えてもよい。記憶モジュール62は、双方向インター予測装置のプログラムコードおよびデータを記憶する、たとえば、記憶ユニット52によって記憶されているコンテンツを記憶するように構成される。
【０２２０】
処理モジュール60は、プロセッサまたはコントローラであってもよく、たとえば、中央演算処理装置(Central Processing Unit、CPU)、汎用プロセッサ、デジタルシグナルプロセッサ(Digital Signal Processor、DSP)、ASIC、FPGAもしくは他のプログラム可能なロジックデバイス、トランジスタロジックデバイス、ハードウェアコンポーネント、またはこれらの任意の組み合わせであってよい。プロセッサまたはコントローラは、本出願において開示されている内容を参照しつつ説明されている様々な例示的な論理ブロック、モジュール、および回路を実装または実行してもよい。プロセッサは、代替的に、コンピューティング機能を実装するための組み合わせ、たとえば、1つ以上のマイクロプロセッサを含む組み合わせ、またはDSPとマイクロプロセッサとの組み合わせであってもよい。通信モジュール61は、トランシーバ、RF回路、通信インターフェース、または同様のものであってもよい。記憶モジュール62はメモリであってもよい。
【０２２１】
前述の方法実施形態におけるシナリオのすべての関係する内容は、対応する機能モジュールの機能説明において引用されてもよい。詳細については、ここで再び説明しない。
【０２２２】
双方向インター予測装置5および双方向インター予測装置6の両方が、図4に示されている双方向インター予測方法を実行してもよい。特に、双方向インター予測装置5および双方向インター予測装置6は、動画復号装置または動画符号化機能を有する他のデバイスであってもよい。双方向インター予測装置5および双方向インター予測装置6は、復号化プロセスにおいて画像予測を実行するように構成されてもよい。
【０２２３】
本出願は、端末をさらに提供する。端末は、1つ以上のプロセッサと、メモリと、通信インターフェースとを備える。メモリおよび通信インターフェースは、1つ以上のプロセッサに結合される。メモリは、コンピュータプログラムコードを記憶するように構成される。コンピュータプログラムコードは、命令を含む。1つ以上のプロセッサが命令を実行するときに、端末は、本出願の実施形態において双方向インター予測方法を実行する。
【０２２４】
本明細書における端末は、動画表示デバイス、スマートフォン、ポータブルコンピュータ、または動画を処理もしくは再生することができる他のデバイスであってもよい。
【０２２５】
本出願は、不揮発性記憶媒体と中央演算処理装置とを含む、動画デコーダをさらに提供する。不揮発性記憶媒体は、実行可能プログラムを記憶する。中央演算処理装置は、不揮発性記憶媒体に接続され、本出願の実施形態において実行可能プログラムを実行して双方向インター予測方法を実行する。
【０２２６】
本出願は、デコーダをさらに提供する。デコーダは、本願の実施形態における双方向インター予測装置(双方向インター予測装置5または双方向インター予測装置6)と、再構成モジュールとを備える。再構成モジュールは、双方向インター予測装置によって取得された予測サンプルに基づき現在の画像ブロックの再構成されたサンプル値を決定するように構成される。
【０２２７】
本出願の別の実施形態は、コンピュータ可読記憶媒体をさらに提供する。コンピュータ可読記憶媒体は、1つ以上のプログラムコード断片を含む。1つ以上のプログラムコード断片は命令を含む。端末のプロセッサがプログラムコードを実行するときに、端末は、図4に示されている双方向インター予測方法を実行する。
【０２２８】
本出願の別の実施形態では、コンピュータプログラム製品がさらに提供される。コンピュータプログラム製品は、コンピュータ実行可能命令を備える。コンピュータ実行可能命令は、コンピュータ可読記憶媒体に記憶される。端末の少なくとも1つのプロセッサが、コンピュータ可読記憶媒体からコンピュータ実行可能命令を読み出してもよい。少なくとも1つのプロセッサは、コンピュータ実行可能命令を実行し、端末が図4に示されている双方向インター予測方法において動画デコーダ202によって実行されるステップを実行することを可能にする。
【０２２９】
前述の実施形態のすべてまたは一部は、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組み合わせを使用することによって実装されてもよい。実施形態を実装するためにソフトウェアプログラムが使用されるときに、これらの実施形態は、コンピュータプログラム製品の形態で完全にまたは部分的に実装されてもよい。コンピュータプログラム製品は、1つ以上のコンピュータ命令を備える。コンピュータプログラム命令がコンピュータ上にロードされ実行されるときに、本出願の実施形態に係る手順または機能はすべてまたは部分的に生成される。
【０２３０】
コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、または他のプログラム可能な装置であってもよい。コンピュータ命令は、コンピュータ可読記憶媒体に記録されてもよく、またはコンピュータ可読記憶媒体から別のコンピュータ可読記憶媒体に伝送されてもよい。たとえば、コンピュータ命令は、ウェブサイト、コンピュータ、サーバ、またはデータセンターから別のウェブサイト、コンピュータ、サーバ、またはデータセンターに有線(たとえば、同軸ケーブル、光ファイバ、もしくはデジタル加入者回線(DSL))またはワイヤレス(たとえば、赤外線、無線、もしくはマイクロ波)方式で伝送されてもよい。コンピュータ可読記憶媒体は、コンピュータ、または1つ以上の使用可能な媒体を一体化した、サーバもしくはデータセンターなどの、データ記憶デバイスによってアクセス可能な任意の使用可能な媒体であってもよい。使用可能な媒体は、磁気媒体(たとえば、フロッピィディスク、ハードディスク、もしくは磁気テープ)、光媒体(たとえば、DVD)、半導体媒体(たとえば、ソリッドステートディスクSolid State Disk(SSD))、または同様のものであってもよい。
【０２３１】
実装形態に関する前述の説明は、当業者が、簡便で簡潔な説明を目的として前述の機能モジュールの分割が図解のための例として取りあげられていることを明確に理解することを可能にする。実際のアプリケーションにおいて、前述の機能は、要件に基づき異なる機能モジュールに割り振られ、実装されうる、すなわち、装置の内部構造は、上で説明されている機能のすべてまたはいくつかを実装するように異なる機能モジュールに分けられる。
【０２３２】
本出願において提供されるいくつかの実施形態において、開示されている装置および方法は、他の方式で実装されてもよいことが理解されるべきである。たとえば、説明されている装置の実施形態は、単なる例にすぎない。たとえば、モジュールまたはユニット分割は、単なる論理機能分割であり、実際の実装では他の分割であってもよい。たとえば、複数のユニットまたは構成要素が、別の装置内に組み合わされ、もしくは一体化されてもよく、またはいくつかの特徴が無視され、もしくは実施されなくてもよい。それに加えて、表示されている、または説明されている相互結合または直接的結合または通信接続は、いくつかのインターフェースを使用することによって実装されてもよい。装置またはユニットの間の間接的結合または通信接続は、電気的な、機械的な、または他の形態で実装されてもよい。
【０２３３】
分離している部分として説明されるユニットは、物理的に分離していても分離していなくてもよく、ユニットとして表示される部分は、1つ以上の物理的ユニットであってもよく、1つの場所に配置されてもよく、または異なる場所に分散されてもよい。ユニットの一部またはすべては、実施形態の解決方法の目的を達成するために実際の要件に基づき選択されてもよい。
【０２３４】
それに加えて、本出願の実施形態における機能ユニットは、1つの処理ユニット内に一体化されてもよく、またはユニットの各々が、物理的に単独で存在してもよく、または2つ以上のユニットが、1つのユニット内に一体化される。一体化されたユニットは、ハードウェアの形態で実装されてもよく、またはソフトウェア機能ユニットの形態で実装されてもよい。
【０２３５】
一体化されたモジュールがソフトウェア機能ユニットの形態で実装され、独立した製品として販売または使用される場合、一体化されたユニットは、可読記憶媒体に記憶されてもよい。このような理解に基づき、本出願の実施形態における技術的解決方法は本質的に、または従来技術に寄与する部分は、または技術的解決方法のすべてもしくはいくつかは、ソフトウェア製品の形態で実装されてもよい。ソフトウェア製品は、記憶媒体に記憶され、本出願の実施形態において説明されている方法のステップのうちのすべてまたはいくつかを実行することをデバイス(シングルチップマイクロコンピュータ、チップ、もしくは同様のものであってもよい)またはプロセッサ(processor)に命令するためのいくつかの命令を備える。前述の記憶媒体は、USBフラッシュドライブ、取り外し可能なハードディスク、読取り専用メモリ(Read-Only Memory、ROM)、ランダムアクセスメモリ(Random Access Memory、RAM)、磁気ディスク、または光ディスクなどの、プログラムコードを記憶することができる媒体を含む。
【０２３６】
前述の説明は、本出願の単なる特定の実施形態にすぎず、本出願の保護範囲を制限することを意図されていない。本出願において開示されている技術範囲内の変更または置換はどれも、本出願の保護範囲に収まるものとする。したがって、本出願の保護範囲は、請求項の保護範囲に従うものとする。
【符号の説明】
【０２３７】
1  動画符号化システム
5  双方向インター予測装置
6  双方向インター予測装置
10  ソース装置
20  デスティネーション装置
30  リンク
40  記憶装置
41  後処理エンティティ
42  ネットワークエンティティ
50  取得ユニット
51  決定ユニット
52  記憶ユニット
60  処理モジュール
61  通信モジュール
62  記憶モジュール
100  動画エンコーダ
101  動画ソース
102  動画エンコーダ
103  出力インターフェース
140  出力インターフェース
200  動画デコーダ
201  表示装置
202  動画デコーダ
203  入力インターフェース
240  入力インターフェース
301  変換器
302  量子化器
303  エントロピーエンコーダ
304  逆量子化器
305  逆変換器
306  フィルタ
307  メモリ
308  予測処理ユニット
309  イントラ予測器
310  インター予測器
311  総和器
312  総和器
401  エントロピーデコーダ
402  逆量子化器
403  逆変換器
404  フィルタ
405  メモリ
406  予測処理ユニット
407  イントラ予測器
408  インター予測器
409  総和器、再構成器
【図１】
2021519548.tif 000021
【図２】
2021519548.tif 000022
【図３】
2021519548.tif 000023
【図４】
2021519548.tif 000024
【図５】
2021519548.tif 000025
【図６】
2021519548.tif 000026
【手続補正書】
【提出日】令和2年11月26日(2020.11.26)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０１５１
【補正方法】変更
【補正の内容】
【０１５１】
たとえば、現在のフレームのシーケンス番号が4であり、第1の参照フレームリストは{2、0}であり、第2の参照フレームリストは{6、7}であり、以下の条件Bまたは条件Cに基づき、第1の参照フレームリスト内でそのシーケンス番号が2である参照フレームおよび第2参照フレームリスト内でそのシーケンス番号が6である参照フレームは、参照フレーム対を構成しうると決定される。この場合、第1の参照フレームのインデックス値および第2の参照フレームのインデックス値は両方とも0である。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０１５２
【補正方法】変更
【補正の内容】
【０１５２】
たとえば、現在のフレームのシーケンス番号は4であり、第1の参照フレームリストは{2、0}であり、第2の参照フレームリストは{6、7}であり、以下の条件Bまたは条件Cに基づき、第1の参照フレームリスト内でそのシーケンス番号が2である参照フレームおよび第2の参照フレームリスト内でそのシーケンス番号が6である参照フレームは参照フレーム対を構成することができ、第1の参照フレームリスト内でそのシーケンス番号が0である参照フレームおよび第2の参照フレームリスト内でそのシーケンス番号が7である参照フレームも参照フレーム対を構成しうると決定される。この場合、動画デコーダ202は、参照フレームインデックス値を解析する必要がある。
【手続補正３】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
双方向インター予測方法であって、
指示情報を取得するステップと、
第1の動き情報を取得するステップと、
前記指示情報が前記第1の動き情報に基づき第2の動き情報を決定することを指示するために使用されたときに、前記第1の動き情報に基づき前記第2の動き情報を決定するステップであって、前記第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報である、ステップと、
前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するステップとを含む双方向インター予測方法。
【請求項２】
前記第1の動き情報に基づき前記第2の動き情報を決定する前記ステップは、
前記第1の動き情報内の第1の参照フレームのインデックス値を取得し、前記第1の参照フレームの前記インデックス値と第1の参照フレームリストとに基づき前記第1の参照フレームのシーケンス番号を決定するステップであって、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は前記第1の参照フレームリスト内の前記第1の参照フレームの番号である、ステップと、
第2の参照フレームのインデックス値を取得し、前記第2の参照フレームの前記インデックス値と第2の参照フレームリストとに基づき前記第2の参照フレームのシーケンス番号を決定するステップであって、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は前記第2の参照フレームリスト内の前記第2の参照フレームの番号である、ステップと、
前記第1の動き情報内にある第1の動きベクトル差分と第1の動きベクトル予測子フラグとに基づき第1の動きベクトルを決定するステップであって、前記第1の動きベクトルは前記第1の方向における前記現在の画像ブロックの動きベクトルである、ステップと、
式
【数１】
2021519548.tif 000027
に従って前記第2の動き情報内の第2の動きベクトルを導出するステップであって、
mv_lYは前記第2の動きベクトルを表し、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは前記第1の参照フレームの前記シーケンス番号を表し、POC_listYは前記第2の参照フレームの前記シーケンス番号を表し、mv_lXは前記第1の動きベクトルを表し、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、ステップとを特に含む請求項1に記載の方法。
【請求項３】
前記第1の動き情報に基づき前記第2の動き情報を決定する前記ステップは、
前記第1の動き情報内の第1の参照フレームのインデックス値を取得するステップであって、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は第1の参照フレームリスト内の前記第1の参照フレームの番号である、ステップと、
第2の参照フレームのインデックス値を取得するステップであって、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は第2の参照フレームリスト内の前記第2の参照フレームの番号である、ステップと、
前記第1の動き情報内にある第1の動きベクトル差分と第1の動きベクトル予測子フラグとに基づき第1の動きベクトルを決定するステップであって、前記第1の動きベクトルは前記第1の方向における前記現在の画像ブロックの動きベクトルである、ステップと、
前記第1の参照フレームが前記現在の画像ブロックの前方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの後方参照フレームであるとき、または前記第1の参照フレームが前記現在の画像ブロックの後方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの後方参照フレームであるとき、式
mv_lY=-mv_lX
に従って前記第2の動き情報内の第2の動きベクトルを導出するステップであって
mv_lYは前記第2の動きベクトルを表し、mv_lXは前記第1の動きベクトルを表し、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、ステップを特に含む請求項1に記載の方法。
【請求項４】
前記第1の動き情報に基づき前記第2の動き情報を決定する前記ステップは、
前記第1の動き情報内にある第1の参照フレームのインデックス値と第1の動きベクトル差分とを取得し、前記第1の参照フレームの前記インデックス値と第1の参照フレームリストとに基づき前記第1の参照フレームのシーケンス番号を決定するステップであって、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は前記第1の参照フレームリスト内の前記第1の参照フレームの番号である、ステップと、
第2の参照フレームのインデックス値を取得し、前記第2の参照フレームの前記インデックス値と第2の参照フレームリストとに基づき前記第2の参照フレームのシーケンス番号を決定し、前記第2の参照フレームのインデックス値と第2の候補予測済み動きベクトルリストとに基づき第2の予測済み動きベクトルを決定するステップであって、前記第2の予測済み動きベクトルは前記第2の方向における前記現在の画像ブロックの予測済み動きベクトルであり、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は前記第2の参照フレームリスト内の前記第2の参照フレームの番号である、ステップと、
式
【数２】
2021519548.tif 000028
に従って前記第2の動き情報内の第2の動きベクトル差分を計算するステップであって、
mvd_lYは前記第2の動きベクトル差分を表し、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは前記第1の参照フレームの前記シーケンス番号を表し、POC_listYは前記第2の参照フレームの前記シーケンス番号を表し、mvd_lXは前記第1の動きベクトル差分を表す、ステップと、
前記第2の予測済み動きベクトルと前記第2の動きベクトル差分とに基づき第2の動きベクトルを決定するステップであって、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、ステップとを特に含む請求項1に記載の方法。
【請求項５】
前記第1の動き情報に基づき前記第2の動き情報を決定する前記ステップは、
前記第1の動き情報内にある第1の参照フレームのインデックス値と第1の動きベクトルとを取得するステップであって、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は第1の参照フレームリスト内の前記第1の参照フレームの番号である、ステップと、
第2の参照フレームのインデックス値を取得し、前記第2の参照フレームの前記インデックス値と第2の候補予測済み動きベクトルリストとに基づき第2の予測済み動きベクトルを決定するステップであって、前記第2の予測済み動きベクトルは前記第2の方向における前記現在の画像ブロックの予測済み動きベクトルであり、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は第2の参照フレームリスト内の前記第2の参照フレームの番号である、ステップと、
前記第1の参照フレームが前記現在の画像ブロックの前方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの後方参照フレームであるとき、または前記第1の参照フレームが前記現在の画像ブロックの後方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの後方参照フレームであるとき、式
mvd_lY=-mvd_lX
に従って前記第2の動き情報内の第2の動きベクトル差分を計算するステップであって、
mvd_lYは前記第2の動きベクトル差分を表し、mvd_lXは第1の動きベクトル差分を表す、ステップと、
前記第2の予測済み動きベクトルと前記第2の動きベクトル差分とに基づき第2の動きベクトルを決定するステップであって、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、ステップとを特に含む請求項1に記載の方法。
【請求項６】
第2の参照フレームのインデックス値を取得する前記ステップは、
式POC_listY0=2*POC_Cur-POC_listXに従って前記現在のフレームの前記シーケンス番号と前記第1の参照フレームの前記シーケンス番号とに基づき第1のシーケンス番号を計算するステップであって、POC_Curは前記現在のフレームの前記シーケンス番号を表し、POC_listXは前記第1の参照フレームの前記シーケンス番号を表し、POC_listY0は前記第1のシーケンス番号を表す、ステップと、
前記第2の参照フレームリストが前記第1のシーケンス番号を含むときに、前記第2の参照フレームの前記インデックス値として、前記第2の参照フレームリスト内の前記第1のシーケンス番号によって表される参照フレームの番号を決定するステップとを特に含む請求項2から5のいずれか一項に記載の方法。
【請求項７】
第2の参照フレームのインデックス値を取得する前記ステップは、
式(POC_Cur-POC_listX)*(POC_listY0'-POC_Cur)>0に従って前記現在のフレームの前記シーケンス番号と前記第1の参照フレームの前記シーケンス番号とに基づき第2のシーケンス番号を計算するステップであって、POC_listY0'は前記第2のシーケンス番号を表す、ステップと、
前記第2の参照フレームリストが前記第2のシーケンス番号を含むときに、前記第2の参照フレームの前記インデックス値として、前記第2の参照フレームリスト内の前記第2のシーケンス番号によって表される参照フレームの番号を決定するステップとを特に含む請求項2から5のいずれか一項に記載の方法。
【請求項８】
第2の参照フレームのインデックス値を取得する前記ステップは、
式POC_listX≠POC_listY0''に従って前記現在のフレームの前記シーケンス番号と前記第1の参照フレームの前記シーケンス番号とに基づき第3のシーケンス番号を計算するステップであって、POC_listY0''は前記第3のシーケンス番号を表す、ステップと、
前記第2の参照フレームの前記インデックス値として、前記第2の参照フレームリスト内の前記第3のシーケンス番号によって表される参照フレームの番号を決定するステップとを特に含む請求項2から5のいずれか一項に記載の方法。
【請求項９】
双方向インター予測方法であって、
ビットストリームを解析して第1の識別子を取得するステップであって、前記第1の識別子は第1の動き情報に基づき第2の動き情報を決定するかどうかを指示するために使用され、前記第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報である、ステップ、前記第1の識別子の値が第1のプリセット値である場合に前記第1の動き情報を取得し、前記第1の動き情報に基づき前記第2の動き情報を決定するステップ、および前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するステップ、または
ビットストリームを解析して第2の識別子を取得するステップであって、前記第2の識別子は動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算するかどうかを指示するために使用される、ステップ、前記第2の識別子の値が第2のプリセット値である場合に第3の識別子を取得するステップであって、前記第3の識別子は第1の動き情報に基づき第2の動き情報を決定するかどうかを指示するために使用され、前記第1の動き情報は第1の方向における前記現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報である、ステップ、前記第3の識別子の値が第3のプリセット値である場合に前記第1の動き情報を取得し、前記第1の動き情報に基づき前記第2の動き情報を決定するステップ、および前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するステップ、または
ビットストリームを解析して第2の識別子を取得するステップであって、前記第2の識別子は動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算するかどうかを指示するために使用される、ステップ、前記第2の識別子の値が第2のプリセット値である場合に第1の動き情報を取得し、前記第1の動き情報に基づき第2の動き情報を決定するステップであって、前記第1の動き情報は第1の方向における前記現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報である、ステップ、および前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するステップ、または
ビットストリームを解析して第4の識別子を取得するステップであって、前記第4の識別子は動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算するかどうかを指示するために使用される、ステップ、前記第4の識別子の値が第4のプリセット値である場合に第1の参照フレームリストと第2の参照フレームリストとに基づき第1の参照フレームのインデックス値と第2の参照フレームのインデックス値とを決定するステップであって、前記第1の参照フレームリストは、第1の方向における前記現在の画像ブロックの参照フレームリストであり、前記第2の参照フレームリストは、第2の方向における前記現在の画像ブロックの参照フレームリストであり、前記第1の参照フレームは、前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームは、前記第2の方向における前記現在の画像ブロックの参照フレームである、ステップ、第1の動きベクトル差分と第1の動きベクトル予測子フラグとを取得し、第1の動き情報に基づき第2の動き情報を決定するステップであって、前記第1の動き情報は前記第1の参照フレームの前記インデックス値と、前記第1の動きベクトル差分と、前記第1の動きベクトル予測子フラグとを含み、前記第2の動き情報は前記第2の方向における前記現在の画像ブロックの動き情報である、ステップ、および前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するステップを含む双方向インター予測方法。
【請求項１０】
双方向インター予測装置であって、
取得ユニットであって、指示情報を取得し、第1の動き情報を取得するように構成されている取得ユニットと、
決定ユニットであって、前記指示情報が前記第1の動き情報に基づき第2の動き情報を決定することを指示するために使用されたときに、前記取得ユニットによって取得された前記第1の動き情報に基づき前記第2の動き情報を決定し、前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するように構成され、前記第1の動き情報は第1の方向における前記現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報である、決定ユニットとを備える双方向インター予測装置。
【請求項１１】
前記決定ユニットは、
前記第1の動き情報内の第1の参照フレームのインデックス値を取得し、前記第1の参照フレームの前記インデックス値と第1の参照フレームリストとに基づき前記第1の参照フレームのシーケンス番号を決定し、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は前記第1の参照フレームリスト内の前記第1の参照フレームの番号であり、
第2の参照フレームのインデックス値を取得し、前記第2の参照フレームの前記インデックス値と第2の参照フレームリストとに基づき前記第2の参照フレームのシーケンス番号を決定し、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は前記第2の参照フレームリスト内の前記第2の参照フレームの番号であり、
前記第1の動き情報内にある第1の動きベクトル差分と第1の動きベクトル予測子フラグとに基づき第1の動きベクトルを決定し、前記第1の動きベクトルは前記第1の方向における前記現在の画像ブロックの動きベクトルであり、
式
【数３】
2021519548.tif 000029
に従って前記第2の動き情報内の第2の動きベクトルを導出するように特に構成され、
mv_lYは前記第2の動きベクトルを表し、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは前記第1の参照フレームの前記シーケンス番号を表し、POC_listYは前記第2の参照フレームの前記シーケンス番号を表し、mv_lXは前記第1の動きベクトルを表し、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、請求項10に記載の装置。
【請求項１２】
前記決定ユニットは、
前記第1の動き情報内の第1の参照フレームのインデックス値を取得し、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は第1の参照フレームリスト内の前記第1の参照フレームの番号であり、
第2の参照フレームのインデックス値を取得し、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は第2の参照フレームリスト内の前記第2の参照フレームの番号であり、
前記第1の動き情報内にある第1の動きベクトル差分と第1の動きベクトル予測子フラグとに基づき第1の動きベクトルを決定し、前記第1の動きベクトルは前記第1の方向における前記現在の画像ブロックの動きベクトルであり、
前記第1の参照フレームが前記現在の画像ブロックの前方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの後方参照フレームであるとき、または前記第1の参照フレームが前記現在の画像ブロックの後方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの後方参照フレームであるとき、式
mv_lY=-mv_lX
に従って前記第2の動き情報内の第2の動きベクトルを計算するように特に構成され、
mv_lYは前記第2の動きベクトルを表し、mv_lXは前記第1の動きベクトルを表し、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、請求項10に記載の装置。
【請求項１３】
前記決定ユニットは、
前記第1の動き情報内にある第1の参照フレームのインデックス値と第1の動きベクトル差分とを取得し、前記第1の参照フレームの前記インデックス値と第1の参照フレームリストとに基づき前記第1の参照フレームのシーケンス番号を決定し、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は前記第1の参照フレームリスト内の前記第1の参照フレームの番号であり、
第2の参照フレームのインデックス値を取得し、前記第2の参照フレームの前記インデックス値と第2の参照フレームリストとに基づき前記第2の参照フレームのシーケンス番号を決定し、前記第2の参照フレームのインデックス値と第2の候補予測済み動きベクトルリストとに基づき第2の予測済み動きベクトルを決定し、前記第2の予測済み動きベクトルは前記第2の方向における前記現在の画像ブロックの予測済み動きベクトルであり、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は前記第2の参照フレームリスト内の前記第2の参照フレームの番号であり、
式
【数４】
2021519548.tif 000030
に従って前記第2の動き情報内の第2の動きベクトル差分を計算するように特に構成され、
mvd_lYは前記第2の動きベクトル差分を表し、POC_Curは現在のフレームのシーケンス番号を表し、POC_listXは前記第1の参照フレームの前記シーケンス番号を表し、POC_listYは前記第2の参照フレームの前記シーケンス番号を表し、mvd_lXは前記第1の動きベクトル差分を表し、
前記第2の予測済み動きベクトルと前記第2の動きベクトル差分とに基づき第2の動きベクトルを決定し、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、請求項10に記載の装置。
【請求項１４】
前記決定ユニットは、
前記第1の動き情報内にある第1の参照フレームのインデックス値と第1の動きベクトルとを取得し、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第1の参照フレームの前記インデックス値は第1の参照フレームリスト内の前記第1の参照フレームの番号であり、
第2の参照フレームのインデックス値を取得し、前記第2の参照フレームの前記インデックス値と第2の候補予測済み動きベクトルリストとに基づき第2の予測済み動きベクトルを決定し、前記第2の予測済み動きベクトルは前記第2の方向における前記現在の画像ブロックの予測済み動きベクトルであり、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームの前記インデックス値は第2の参照フレームリスト内の前記第2の参照フレームの番号であり、
前記第1の参照フレームが前記現在の画像ブロックの前方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの後方参照フレームであるとき、または前記第1の参照フレームが前記現在の画像ブロックの後方参照フレームであり、前記第2の参照フレームが前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの前方参照フレームであるとき、または前記第1の参照フレームおよび前記第2の参照フレームが各々、前記現在の画像ブロックの後方参照フレームであるとき、式
mvd_lY=-mvd_lX
に従って前記第2の動き情報内の第2の動きベクトル差分を計算し、
mvd_lYは前記第2の動きベクトル差分を表し、mvd_lXは第1の動きベクトル差分を表し、
前記第2の予測済み動きベクトルと前記第2の動きベクトル差分とに基づき第2の動きベクトルを決定し、前記第2の動きベクトルは前記第2の方向における前記現在の画像ブロックの動きベクトルである、ように特に構成される請求項10に記載の装置。
【請求項１５】
前記取得ユニットは、
式POC_listY0=2*POC_Cur-POC_listXに従って前記現在のフレームの前記シーケンス番号と前記第1の参照フレームの前記シーケンス番号とに基づき第1のシーケンス番号を計算し、POC_Curは前記現在のフレームの前記シーケンス番号を表し、POC_listXは前記第1の参照フレームの前記シーケンス番号を表し、POC_listY0は前記第1のシーケンス番号を表し、
前記第2の参照フレームリストが前記第1のシーケンス番号を含むときに、前記第2の参照フレームの前記インデックス値として、前記第2の参照フレームリスト内の前記第1のシーケンス番号によって表される参照フレームの番号を決定するように特に構成される請求項11から14のいずれか一項に記載の装置。
【請求項１６】
前記取得ユニットは、
式(POC_Cur-POC_listX)*(POC_listY0'-POC_Cur)>0に従って前記現在のフレームの前記シーケンス番号と前記第1の参照フレームの前記シーケンス番号とに基づき第2のシーケンス番号を計算し、POC_listY0'は前記第2のシーケンス番号を表し、
前記第2の参照フレームリストが前記第2のシーケンス番号を含むときに、前記第2の参照フレームの前記インデックス値として、前記第2の参照フレームリスト内の前記第2のシーケンス番号によって表される参照フレームの番号を決定するように特に構成される請求項11から14のいずれか一項に記載の装置。
【請求項１７】
前記取得ユニットは、
式POC_listX≠POC_listY0''に従って前記現在のフレームの前記シーケンス番号と前記第1の参照フレームの前記シーケンス番号とに基づき第3のシーケンス番号を計算し、POC_listY0''は前記第3のシーケンス番号を表し、
前記第2の参照フレームの前記インデックス値として、前記第2の参照フレームリスト内の前記第3のシーケンス番号によって表される参照フレームの番号を決定するように特に構成される請求項11から14のいずれか一項に記載の装置。
【請求項１８】
双方向インター予測装置であって、
取得ユニットであって、ビットストリームを解析して第1の識別子を取得し、前記第1の識別子は第1の動き情報に基づき第2の動き情報を決定するかどうかを指示するために使用され、前記第1の動き情報は第1の方向における現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報であるように構成され、前記第1の識別子の値が第1のプリセット値である場合に前記第1の動き情報を取得するように構成されている取得ユニットと、決定ユニットであって、前記取得ユニットによって取得された前記第1の動き情報に基づき前記第2の動き情報を決定し、前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定する、ように構成されている決定ユニット、または
取得ユニットであって、ビットストリームを解析して第2の識別子を取得し、前記第2の識別子は動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算するかどうかを指示するために使用されるように構成され、前記第2の識別子の値が第2のプリセット値である場合に第3の識別子を取得し、前記第3の識別子は第1の動き情報に基づき第2の動き情報を決定するかどうかを指示するために使用され、前記第1の動き情報は第1の方向における前記現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報であるように構成され、前記第3の識別子の値が第3のプリセット値である場合に前記第1の動き情報を取得する、ように構成されている取得ユニットと、決定ユニットであって、前記取得ユニットによって取得された前記第1の動き情報に基づき前記第2の動き情報を決定し、前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定する、ように構成されている決定ユニット、または
取得ユニットであって、ビットストリームを解析して第2の識別子を取得し、前記第2の識別子は動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算するかどうかを指示するために使用されるように構成され、前記第2の識別子の値が第2のプリセット値である場合に第1の動き情報を取得するように構成されている取得ユニットと、決定ユニットであって、前記取得ユニットによって取得された前記第1の動き情報に基づき第2の動き情報を決定し、前記第1の動き情報は第1の方向における前記現在の画像ブロックの動き情報であり、前記第2の動き情報は第2の方向における前記現在の画像ブロックの動き情報であり、前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するように構成されている決定ユニット、または
取得ユニットであって、ビットストリームを解析して第4の識別子を取得するように構成され、前記第4の識別子は動き情報導出アルゴリズムを使用することによって現在の画像ブロックの動き情報を計算するかどうかを指示するために使用される、取得ユニットと、決定ユニットであって、前記取得ユニットによって取得された前記第4の識別子の値が第4のプリセット値である場合に第1の参照フレームリストと第2の参照フレームリストとに基づき第1の参照フレームのインデックス値と第2の参照フレームのインデックス値とを決定するように構成され、前記第1の参照フレームリストは第1の方向における前記現在の画像ブロックの参照フレームリストであり、前記第2の参照フレームリストは前記第2の方向における前記現在の画像ブロックの参照フレームリストであり、前記第1の参照フレームは前記第1の方向における前記現在の画像ブロックの参照フレームであり、前記第2の参照フレームは前記第2の方向における前記現在の画像ブロックの参照フレームであり、前記取得ユニットは第1の動きベクトル差分と第1の動きベクトル予測子フラグとを取得するようにさらに構成され、前記決定ユニットは、第1の動き情報に基づき第2の動き情報を決定し、前記第1の動き情報は前記第1の参照フレームの前記インデックス値と、前記第1の動きベクトル差分と、前記第1の動きベクトル予測子フラグとを含み、前記第2の動き情報は前記第2の方向における前記現在の画像ブロックの動き情報であり、前記第1の動き情報と前記第2の動き情報とに基づき前記現在の画像ブロックの予測サンプルを決定するようにさらに構成される、決定ユニットとを備える双方向インター予測装置。
【請求項１９】
1つ以上のプロセッサと、メモリと、通信インターフェースとを備える端末であって、
前記メモリおよび前記通信インターフェースは、前記1つ以上のプロセッサに接続され、前記端末は前記通信インターフェースを通じて別のデバイスと通信し、前記メモリはコンピュータプログラムコードを記憶するように構成され、前記コンピュータプログラムコードは命令を含み、前記1つ以上のプロセッサが前記命令を実行したときに、請求項1から8のいずれか一項に記載の前記双方向インター予測方法を実行するか、または請求項9に記載の前記双方向インター予測方法を実行する端末。
【請求項２０】
命令を備えるコンピュータプログラム製品であって、端末上で前記プログラム製品が稼動しているときに、前記端末が請求項1から8のいずれか一項に記載の前記双方向インター予測方法を実行するか、または請求項9に記載の前記双方向インター予測方法を実行するように有効化される、コンピュータプログラム製品。
【請求項２１】
命令を備えるコンピュータ可読記憶媒体であって、端末上で前記命令が実行されたときに、前記端末が請求項1から8のいずれか一項に記載の前記双方向インター予測方法を実行するか、または請求項9に記載の前記双方向インター予測方法を実行するように有効化される、コンピュータ可読記憶媒体。
【請求項２２】
不揮発性記憶媒体と中央演算処理装置とを備える、動画デコーダであって、前記不揮発性記憶媒体は実行可能プログラムを記憶し、前記中央演算処理装置は前記不揮発性記憶媒体に接続され、前記中央演算処理装置が前記実行可能プログラムを実行したときに、請求項1から8のいずれか一項に記載の前記双方向インター予測方法を実行するか、または請求項9に記載の前記双方向インター予測方法を実行する動画デコーダ。
【請求項２３】
デコーダであって、前記デコーダは請求項10から17のいずれか一項に記載の前記双方向インター予測装置と再構成モジュールとを備え、前記再構成モジュールは、前記双方向インター予測装置によって取得された予測サンプルに基づき現在の画像ブロックの再構成されたサンプル値を決定するように構成されるか、または前記デコーダは、請求項18に記載の前記双方向インター予測装置と、再構成モジュールとを備え、前記再構成モジュールは、前記双方向インター予測装置によって取得された予測サンプルに基づき現在の画像ブロックの再構成されたサンプル値を決定するように構成される、デコーダ。
【請求項２４】
復号方法であって、前記方法は双方向インター予測に適用され、前記方法は、
第1の識別子を取得するステップと、
現在の画像ブロックの第1の動きベクトル差分を取得するステップと、
前記第1の識別子の値が第1のプリセット値であるときに前記第1の動きベクトル差分に基づき前記現在の画像ブロックの第2の動きベクトル差分を決定するステップであって、前記第1の動きベクトル差分は第1の方向における前記現在の画像ブロックの動き情報に属し、前記第2の動きベクトル差分は第2の方向における前記現在の画像ブロックの動き情報に属す、ステップとを含む復号方法。
【請求項２５】
前記第1の動きベクトル差分に基づき前記現在の画像ブロックの第2の動きベクトル差分を決定する前記ステップは、
式
mvd_lY=-mvd_lX
に従って前記第2の動きベクトル差分を取得するステップであって、
mvd_lYは前記第2の動きベクトル差分を表し、mvd_lXは第1の動きベクトル差分を表す、ステップを含む請求項24に記載の方法。
【請求項２６】
前記方法は、
第1の予測済み動きベクトルと第2の予測済み動きベクトルとを取得するステップと、
前記第1の予測済み動きベクトルと前記第1の動きベクトル差分とに基づき第1の動きベクトルを決定するステップと、
前記第2の予測済み動きベクトルと前記第2の動きベクトル差分とに基づき第2の動きベクトルを決定するステップと、
前記第1の動きベクトルと前記第2の動きベクトルとに基づき前記現在の画像ブロックの予測サンプルを決定するステップであって、
前記第1の予測済み動きベクトルおよび前記第1の動きベクトルは前記第1の方向に対応し、前記第2の予測済み動きベクトルおよび前記第2の動きベクトルは前記第2の方向に対応する、ステップとをさらに含む請求項24または25に記載の方法。
【請求項２７】
前記現在の画像ブロックは、前記第1の方向における第1の参照フレームリストと、前記第2の方向における第2の参照フレームリストとを含み、前記第1の動きベクトルと前記第2の動きベクトルとに基づき前記現在の画像ブロックの予測サンプルを決定する前記ステップは、
前記第1の参照フレームリストの参照フレームインデックスと、前記第2の参照フレームリストの参照フレームインデックスとを取得するステップと、
前記第1の参照フレームリストの前記参照フレームインデックスと、前記第1の動きベクトルと、前記第1の参照フレームリストとに基づき第1の参照画像ブロックを決定するステップと、
前記第2の参照フレームリストの前記参照フレームインデックスと、前記第2の動きベクトルと、前記第2の参照フレームリストとに基づき第2の参照画像ブロックを決定するステップと、
前記第1の参照画像ブロックと前記第2の参照画像ブロックとに基づき前記現在の画像ブロックの前記予測サンプルを決定するステップとを含む、請求項26に記載の方法。
【請求項２８】
第1の識別子を取得する前記ステップの前に、前記現在の画像ブロックが配置されている現在のフレームのシーケンス番号がプリセット条件を満たしていると決定するステップであって、前記プリセット条件は、前記現在のフレームの前記シーケンス番号が第1の参照フレームのシーケンス番号と第2の参照フレームのシーケンス番号との間にあり、前記第1の参照フレームは前記第1の参照フレームリストに属し、前記第2の参照フレームは前記第2の参照フレームリストに属すという条件を含む、ステップをさらに含む請求項24から27のいずれか一項に記載の方法。
【請求項２９】
前記方法は、
前記第1の識別子の前記値が第2のプリセット値であるときに、ビットストリームを解析して前記第2の動きベクトルを取得するステップをさらに含む請求項24から28のいずれか一項に記載の方法。
【請求項３０】
第1の識別子を取得する前記ステップの前に、前記現在の画像ブロックが配置されている前記現在のフレームの前記シーケンス番号が前記プリセット条件を満たしていないと決定するステップであって、前記プリセット条件は、前記現在のフレームの前記シーケンス番号が前記第1の参照フレームの前記シーケンス番号と前記第2の参照フレームの前記シーケンス番号との間にあり、前記第1の参照フレームは前記第1の参照フレームリストに属し、前記第2の参照フレームは前記第2の参照フレームリストに属すという条件を含む、ステップをさらに含む請求項29に記載の方法。
【請求項３１】
双方向インター予測装置であって、
取得ユニットであって、第1の識別子を取得し、現在の画像ブロックの第1の動きベクトル差分を取得するように構成されている取得ユニットと、
決定ユニットであって、前記第1の識別子の値が第1のプリセット値であるときに前記第1の動きベクトル差分に基づき前記現在の画像ブロックの第2の動きベクトル差分を決定するように構成され、前記第1の動きベクトル差分は第1の方向における前記現在の画像ブロックの動き情報に属し、前記第2の動きベクトル差分は第2の方向における前記現在の画像ブロックの動き情報に属する、決定ユニットとを備える双方向インター予測装置。
【請求項３２】
前記決定ユニットは、式
mvd_lY=-mvd_lX
に従って前記第2の動きベクトル差分を取得するように特に構成され、
mvd_lYは前記第2の動きベクトル差分を表し、mvd_lXは前記第1の動きベクトル差分を表す請求項31に記載の装置。
【請求項３３】
前記取得ユニットは、第1の予測済み動きベクトルと第2の予測済み動きベクトルとを取得するように特に構成され、前記決定ユニットは、前記第1の予測済み動きベクトルと前記第1の動きベクトル差分とに基づき第1の動きベクトルを決定し、前記第2の予測済み動きベクトルと前記第2の動きベクトル差分とに基づき第2の動きベクトルを決定し、前記第1の動きベクトルと前記第2の動きベクトルとに基づき前記現在の画像ブロックの予測サンプルを決定するように特に構成され、前記第1の予測済み動きベクトルおよび前記第1の動きベクトルは前記第1の方向に対応し、前記第2の予測済み動きベクトルおよび前記第2の動きベクトルは前記第2の方向に対応する、請求項31または32に記載の装置。
【請求項３４】
前記現在の画像ブロックは、前記第1の方向における第1の参照フレームリストと、前記第2の方向における第2の参照フレームリストとを含み、前記取得ユニットは、前記第1の参照フレームリストの参照フレームインデックスと、前記第2の参照フレームリストの参照フレームインデックスとを取得するように特に構成され、前記決定ユニットは、前記第1の参照フレームリストの前記参照フレームインデックスと、前記第1の動きベクトルと、前記第1の参照フレームリストとに基づき第1の参照画像ブロックを決定し、前記第2の参照フレームリストの前記参照フレームインデックスと、前記第2の動きベクトルと、前記第2の参照フレームリストとに基づき第2の参照画像ブロックを決定し、前記第1の参照画像ブロックと前記第2の参照画像ブロックとに基づき前記現在の画像ブロックの前記予測サンプルを決定するように特に構成される請求項33に記載の装置。
【請求項３５】
前記取得ユニットは、前記第1の識別子を取得する前に、前記現在の画像ブロックが配置されている現在のフレームのシーケンス番号がプリセット条件を満たしていると決定するようにさらに特に構成され、前記プリセット条件は、前記現在のフレームの前記シーケンス番号が第1の参照フレームのシーケンス番号と第2の参照フレームのシーケンス番号との間にあり、前記第1の参照フレームは前記第1の参照フレームリストに属し、前記第2の参照フレームは前記第2の参照フレームリストに属すという条件を含む、請求項31から34のいずれか一項に記載の装置。
【請求項３６】
符号化方法であって、前記方法は双方向インター予測に適用され、前記方法は、
現在の画像ブロックの第1の動きベクトル差分を決定するステップと、
第1の識別子を決定するステップであって、前記第1の識別子の値が第1のプリセット値であるときに前記第1の識別子は、前記現在の画像ブロックの第2の動きベクトル差分が前記第1の動きベクトル差分に基づき決定されてよいことを指示するために使用され、前記第1の動きベクトル差分は第1の方向における前記現在の画像ブロックの動き情報に属し、前記第2の動きベクトル差分は第2の方向における前記現在の画像ブロックの動き情報に属す、ステップと、
前記第1の識別子と前記第1の動きベクトル差分とをビットストリーム内に符号化するステップとを含む符号化方法。
【請求項３７】
前記現在の画像ブロックの第2の動きベクトル差分が前記第1の動きベクトル差分に基づき決定され得ることは、式
mvd_lY=-mvd_lX
に従って前記第2の動きベクトル差分を取得するステップであって、
mvd_lYは前記第2の動きベクトル差分を表し、mvd_lXは第1の動きベクトル差分を表す、ステップを含む請求項36に記載の方法。
【請求項３８】
現在の画像ブロックの第1の動きベクトル差分を決定する前記ステップは、
第1の予測済み動きベクトルを決定し、第1の予測済み動きベクトルを取得するステップと、
前記第1の動きベクトルと前記第1の予測済み動きベクトルとに基づき前記第1の動きベクトル差分を決定するステップとを含む請求項36または37に記載の方法。
【請求項３９】
前記方法は、
第2の予測済み動きベクトルを取得するステップと、
前記第2の予測済み動きベクトルと前記第2の動きベクトル差分とに基づき第2の動きベクトルを決定するステップと、
前記第1の動きベクトルと前記第2の動きベクトルとに基づき前記現在の画像ブロックの予測サンプルを決定するステップとをさらに含み、
前記第1の予測済み動きベクトルおよび前記第1の動きベクトルは前記第1の方向に対応し、前記第2の予測済み動きベクトルおよび前記第2の動きベクトルは前記第2の方向に対応する、請求項38に記載の方法。
【請求項４０】
前記現在の画像ブロックは、前記第1の方向における第1の参照フレームリストと、前記第2の方向における第2の参照フレームリストとを含み、前記第1の動きベクトルと前記第2の動きベクトルとに基づき前記現在の画像ブロックの予測サンプルを決定する前記ステップは、
前記第1の参照フレームリストの参照フレームインデックスと、前記第2の参照フレームリストの参照フレームインデックスとを取得するステップと、
前記第1の参照フレームリストの前記参照フレームインデックスと、前記第1の動きベクトルと、前記第1の参照フレームリストとに基づき第1の参照画像ブロックを決定するステップと、
前記第2の参照フレームリストの前記参照フレームインデックスと、前記第2の動きベクトルと、前記第2の参照フレームリストとに基づき第2の参照画像ブロックを決定するステップと、
前記第1の参照画像ブロックと前記第2の参照画像ブロックとに基づき前記現在の画像ブロックの前記予測サンプルを決定するステップとを含む請求項39に記載の方法。
【請求項４１】
前記第1の識別子をビットストリーム内に符号化する前記ステップの前に、前記現在の画像ブロックが配置されている現在のフレームのシーケンス番号がプリセット条件を満たしていると決定するステップであって、前記プリセット条件は、前記現在のフレームの前記シーケンス番号が第1の参照フレームのシーケンス番号と第2の参照フレームのシーケンス番号との間にあり、前記第1の参照フレームは前記第1の参照フレームリストに属し、前記第2の参照フレームは前記第2の参照フレームリストに属すという条件を含む、ステップをさらに含む請求項36から40のいずれか一項に記載の方法。
【請求項４２】
前記第1の識別子の前記値が第2のプリセット値であるときに前記現在の画像ブロックの前記第2の動きベクトル差分を決定し、前記第2の動きベクトル差分を前記ビットストリームに符号化するステップを含む請求項36から41のいずれか一項に記載の方法。
【請求項４３】
前記第1の識別子をビットストリーム内に符号化する前記ステップの前に、前記現在の画像ブロックが配置されている現在のフレームのシーケンス番号がプリセット条件を満たしていないと決定するステップであって、前記プリセット条件は、前記現在のフレームの前記シーケンス番号が第1の参照フレームのシーケンス番号と第2の参照フレームのシーケンス番号との間にあり、前記第1の参照フレームは前記第1の参照フレームリストに属し、前記第2の参照フレームは前記第2の参照フレームリストに属すという条件を含む、ステップをさらに含む請求項36から40のいずれか一項に記載の方法。
【請求項４４】
双方向インター予測装置であって、
現在の画像ブロックの第1の動きベクトル差分を決定するように構成されている取得ユニットと、
第1の識別子を決定するように構成されている決定ユニットであって、前記第1の識別子の値が第1のプリセット値であるときに前記第1の識別子は、前記現在の画像ブロックの第2の動きベクトル差分が前記第1の動きベクトル差分に基づき決定されてよいことを指示するために使用され、前記第1の動きベクトル差分は第1の方向における前記現在の画像ブロックの動き情報に属し、前記第2の動きベクトル差分は第2の方向における前記現在の画像ブロックの動き情報に属す、決定ユニットと、
前記第1の識別子と前記第1の動きベクトル差分とをビットストリーム内に符号化するように構成されている符号化ユニットとを備える双方向インター予測装置。
【請求項４５】
前記決定ユニットは、式
mvd_lY=-mvd_lX
に従って前記第2の動きベクトル差分を取得するように特に構成され、
mvd_lYは前記第2の動きベクトル差分を表し、mvd_lXは前記第1の動きベクトル差分を表す、請求項44に記載の装置。
【請求項４６】
前記取得ユニットは、
第1の予測済み動きベクトルを決定し、第1の予測済み動きベクトルを取得し、
前記第1の動きベクトルと前記第1の予測済み動きベクトルとに基づき前記第1の動きベクトル差分を決定するように特に構成される、請求項44または45に記載の装置。
【請求項４７】
前記取得ユニットは、第2の予測済み動きベクトルを取得し、前記第2の予測済み動きベクトルと前記第2の動きベクトル差分とに基づき第2の動きベクトルを決定するようにさらに構成され、
前記装置は、前記第1の動きベクトルと前記第2の動きベクトルとに基づき前記現在の画像ブロックの予測サンプルを決定するように構成されている予測ユニットをさらに備え、
前記第1の予測済み動きベクトルおよび前記第1の動きベクトルは前記第1の方向に対応し、前記第2の予測済み動きベクトルおよび前記第2の動きベクトルは前記第2の方向に対応する、請求項46に記載の装置。
【請求項４８】
前記現在の画像ブロックは、前記第1の方向における第1の参照フレームリストと、前記第2の方向における第2の参照フレームリストとを含み、前記予測ユニットは、
前記第1の参照フレームリストの参照フレームインデックスと、前記第2の参照フレームリストの参照フレームインデックスとを取得し、
前記第1の参照フレームリストの前記参照フレームインデックスと、前記第1の動きベクトルと、前記第1の参照フレームリストとに基づき第1の参照画像ブロックを決定し、
前記第2の参照フレームリストの前記参照フレームインデックスと、前記第2の動きベクトルと、前記第2の参照フレームリストとに基づき第2の参照画像ブロックを決定し、
前記第1の参照画像ブロックと前記第2の参照画像ブロックとに基づき前記現在の画像ブロックの前記予測サンプルを決定するように特に構成される、請求項47に記載の装置。
【請求項４９】
前記装置は、前記符号化ユニットが前記第1の識別子を前記ビットストリーム内に符号化する前に、前記現在の画像ブロックが配置されている現在のフレームのシーケンス番号がプリセット条件を満たすと決定するように構成されている判定ユニットを備え、前記プリセット条件は、前記現在のフレームの前記シーケンス番号が第1の参照フレームのシーケンス番号と第2の参照フレームのシーケンス番号との間にあり、前記第1の参照フレームは前記第1の参照フレームリストに属し、前記第2の参照フレームは前記第2の参照フレームリストに属すという条件を含む、請求項44から48のいずれか一項に記載の装置。
【請求項５０】
前記取得ユニットは、前記第1の識別子の前記値が第2のプリセット値であるときに前記現在の画像ブロックの前記第2の動きベクトル差分を決定し、前記第2の動きベクトル差分を前記ビットストリームに符号化するようにさらに構成される、請求項44から49のいずれか一項に記載の装置。
【請求項５１】
前記装置は、前記符号化ユニットが前記第1の識別子を前記ビットストリーム内に符号化する前に、前記現在の画像ブロックが配置されている現在のフレームのシーケンス番号がプリセット条件を満たさないと決定するように構成されている判定ユニットを備え、前記プリセット条件は、前記現在のフレームの前記シーケンス番号が第1の参照フレームのシーケンス番号と第2の参照フレームのシーケンス番号との間にあり、前記第1の参照フレームは前記第1の参照フレームリストに属し、前記第2の参照フレームは前記第2の参照フレームリストに属すという条件を含む、請求項44から48のいずれか一項に記載の装置。
【請求項５２】
記憶媒体であって、請求項24から30のいずれか一項に記載の前記方法を使用することによって生成された前記ビットストリームまたは請求項36から43のいずれか一項に記載の前記方法を使用することによって復号を通じて取得された前記ビットストリームを含む記憶媒体。
【請求項５３】
プロセッサと、メモリと、通信インターフェースと、バスとを備える、画像処理装置であって、前記プロセッサは、前記バスを使用することによって前記メモリおよび前記通信インターフェースに接続され、
前記メモリは、命令を記憶するように構成され、
前記プロセッサは前記命令を実行するように構成され、前記プロセッサが前記メモリに記憶されている前記命令を実行したときに、前記プロセッサは請求項24から30のいずれか一項に記載の前記符号化方法または請求項36から43のいずれか一項に記載の前記復号方法を実行するように有効化される、画像処理装置。
【国際調査報告】
2021519548.tif 000031
2021519548.tif 000032
2021519548.tif 000033
2021519548.tif 000034
2021519548.tif 000035
2021519548.tif 000036