IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ アリババ・グループ・ホールディング・リミテッドの特許一覧

<>
  • 特許-解像度適応型ビデオコーディング 図1
  • 特許-解像度適応型ビデオコーディング 図2
  • 特許-解像度適応型ビデオコーディング 図3
  • 特許-解像度適応型ビデオコーディング 図4A
  • 特許-解像度適応型ビデオコーディング 図4B
  • 特許-解像度適応型ビデオコーディング 図4C
  • 特許-解像度適応型ビデオコーディング 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-16
(45)【発行日】2024-08-26
(54)【発明の名称】解像度適応型ビデオコーディング
(51)【国際特許分類】
   H04N 19/59 20140101AFI20240819BHJP
   H04N 19/513 20140101ALI20240819BHJP
【FI】
H04N19/59
H04N19/513
【請求項の数】 14
(21)【出願番号】P 2021568957
(86)(22)【出願日】2019-07-09
(65)【公表番号】
(43)【公表日】2022-11-04
(86)【国際出願番号】 CN2019095293
(87)【国際公開番号】W WO2021003671
(87)【国際公開日】2021-01-14
【審査請求日】2022-07-01
(73)【特許権者】
【識別番号】510330264
【氏名又は名称】アリババ・グループ・ホールディング・リミテッド
【氏名又は名称原語表記】ALIBABA GROUP HOLDING LIMITED
(74)【代理人】
【識別番号】100188558
【弁理士】
【氏名又は名称】飯田 雅人
(74)【代理人】
【識別番号】100205785
【弁理士】
【氏名又は名称】▲高▼橋 史生
(72)【発明者】
【氏名】ユチェン・スン
(72)【発明者】
【氏名】ツイシャン・チャン
(72)【発明者】
【氏名】ジアン・ルー
【審査官】田部井 和彦
(56)【参考文献】
【文献】特表2012-504904(JP,A)
【文献】特表2014-502822(JP,A)
【文献】中国特許出願公開第108833923(CN,A)
【文献】特開2008-079152(JP,A)
【文献】米国特許出願公開第2020/0374525(US,A1)
【文献】特表2022-532334(JP,A)
【文献】Peisong Chen et al.,AHG 19: Adaptive Resolution Change [online],JVET-N0279, [2023年8月8日検索],インターネット <URL: https://jvet-experts.org/doc_end_user/documents/14_Geneva/wg11/JVET-N0279-v2 .zip>,2019年03月24日
【文献】Peisong Chen et al.,AHG 8: Adaptive Resolution Change [online],JVET-O0303-v2,インターネット <URL: https://jvet-experts.org/doc_end_user/documents/15_Gothenburg/wg11/JVET-O0303-v3.zip>,2019年07月05日
【文献】Peisong Chen et al.,AHG 19: Adaptive Resolution Change [online],JVET-N0279,インターネット <URL: https://jvet-experts.org/doc_end_user/documents/14_Geneva/wg11/JVET-N0279-v2 .zip>,2019年03月24日
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/59
H04N 19/513
(57)【特許請求の範囲】
【請求項1】
現在のフレームのブロックの動き情報を決定することであって、前記動き情報は、前記ブロックの動きベクトルと、前記動きベクトルに対応する少なくとも1つのピクセル座標とを含む、決定することと、
参照フレームの解像度に従って、前記動き情報のサイズを変更することと、
前記サイズ変更された動き情報に従って、前記参照フレームの予測ブロックを位置特定することであって、
少なくとも1つのスケーリングされた座標を各々、サブピクセルスケール上のそれぞれの最も近い値に丸めることを含む、位置特定することと、
サブピクセルスケールの精度の補間フィルタを、前記参照フレームの前記位置特定された予測ブロックに適用することと、
前記位置特定された予測ブロックを参照することによって、前記現在のブロックで動き予測を実施することと、を含む、方法。
【請求項2】
前記参照フレームの前記解像度が前記現在のフレームの解像度とは異なることを判定することと、前記現在のフレームの前記解像度に対する前記参照フレームの前記解像度の比率を決定することとをさらに含む、請求項1に記載の方法。
【請求項3】
前記動きベクトルに対応する前記少なくとも1つのピクセル座標を決定することは、前記動きベクトルを前記ブロックの少なくとも1つのピクセル座標に追加することを含む、請求項2に記載の方法。
【請求項4】
前記参照フレームの解像度に従って前記動き情報のサイズを変更することは、前記現在のフレームの前記解像度に対する前記参照フレームの前記解像度の前記比率によって、前記動きベクトルに対応する前記少なくとも1つのピクセル座標をスケーリングして、前記動きベクトルに対応する少なくとも1つのスケーリングされた座標を導出することを含む、請求項3に記載の方法。
【請求項5】
前記参照フレームの前記予測ブロックを位置特定することは、前記少なくとも1つのスケーリングされた座標を各々、整数ピクセルスケール上のそれぞれの最も近い値に丸めることを含む、請求項4に記載の方法。
【請求項6】
1つ以上のプロセッサと、
前記1つ以上のプロセッサに通信可能に結合されたメモリと、を備えるシステムであって、前記メモリは、前記1つ以上のプロセッサによって実行されると関連する動作を実施する、前記1つ以上のプロセッサによって実行可能なコンピュータ実行可能モジュールを格納し、前記コンピュータ実行可能モジュールは、
現在のフレームのブロックの動き情報を決定するように構成された動き情報決定サブモジュールを含む、動き予測モジュールであって、前記動き情報は、前記ブロックの動きベクトルと、前記動きベクトルに対応する少なくとも1つのピクセル座標とを含む、動き予測モジュールと、
参照フレームの解像度に従って前記動き情報のサイズを変更するように構成された、動き情報サイズ変更サブモジュールと、
前記サイズ変更された動き情報に従って前記参照フレームの予測ブロックを位置特定するように構成された、予測ブロック位置特定サブモジュール
と、を含み、
前記予測ブロック位置特定サブモジュールは、
少なくとも1つのスケーリングされた座標を各々、サブピクセルスケール上のそれぞれの最も近い値に丸めることによって、前記参照フレームの前記予測ブロックを位置特定するように構成され、
前記動き予測モジュールは、
サブピクセルスケールの精度の補間フィルタを、前記参照フレームの前記位置特定された予測ブロックに適用し、
前記位置特定された予測ブロックを参照することによって、前記現在のブロックで動き予測を実施する
ようにさらに構成されている、システム。
【請求項7】
前記動き予測モジュールは、前記参照フレームの前記解像度が前記現在のフレームの解像度とは異なることを判定するように構成された、解像度比較サブモジュールと、前記現在のフレームの前記解像度に対する前記参照フレームの前記解像度の比率を決定するように構成された、比率決定サブモジュールと、をさらに備える、請求項に記載のシステム。
【請求項8】
前記動き情報決定サブモジュールは、前記動きベクトルを前記ブロックの少なくとも1つのピクセル座標に追加することによって、前記動きベクトルに対応する前記少なくとも1つのピクセル座標を決定するように構成されている、請求項に記載のシステム。
【請求項9】
前記動き情報サイズ変更サブモジュールは、前記動きベクトルに対応する少なくとも1つのスケーリングされた座標を導出するために、前記現在のフレームの前記解像度に対する前記参照フレームの前記解像度の前記比率によって前記動きベクトルに対応する前記少なくとも1つのピクセル座標をスケーリングすることにより、前記参照フレームの解像度に従って前記動き情報のサイズを変更するように構成されている、請求項に記載のシステム。
【請求項10】
前記予測ブロック位置特定サブモジュールは、前記少なくとも1つのスケーリングされた座標を各々、整数ピクセルスケール上のそれぞれの最も近い値に丸めることによって、前記参照フレームの前記予測ブロックを位置特定するように構成されている、請求項に記載のシステム。
【請求項11】
1つ以上のプロセッサによって実行可能なコンピュータ可読命令を格納するコンピュータ可読記憶媒体であって、前記コンピュータ可読命令は、前記1つ以上のプロセッサによって実行されると、前記1つ以上のプロセッサに、
現在のフレームのブロックの動き情報を決定することであって、前記動き情報は、前記ブロックの動きベクトルと、前記動きベクトルに対応する少なくとも1つのピクセル座標とを含む、決定することと、
参照フレームの解像度に従って、前記動き情報のサイズを変更することと、
前記サイズ変更された動き情報に従って、前記参照フレームの予測ブロックを位置特定することであって、少なくとも1つのスケーリングされた座標を各々、サブピクセルスケール上のそれぞれの最も近い値に丸めることを含む、位置特定することと、
サブピクセルスケールの精度の補間フィルタを、前記参照フレームの前記位置特定された予測ブロックに適用することと、
前記位置特定された予測ブロックを参照することによって、前記現在のブロックで動き予測を実施することと、を含む動作を実施させる、コンピュータ可読記憶媒体。
【請求項12】
前記動作は、前記参照フレームの前記解像度が前記現在のフレームの解像度とは異なることを判定することと、前記現在のフレームの前記解像度に対する前記参照フレームの前記解像度の比率を決定することと、をさらに含む、請求項11に記載のコンピュータ可読記憶媒体。
【請求項13】
前記動きベクトルに対応する前記少なくとも1つのピクセル座標を決定することは、前記動きベクトルを前記ブロックの少なくとも1つのピクセル座標に追加することを含む、請求項12に記載のコンピュータ可読記憶媒体。
【請求項14】
前記参照フレームの解像度に従って前記動き情報のサイズを変更することは、前記現在のフレームの前記解像度に対する前記参照フレームの前記解像度の前記比率によって、前記動きベクトルに対応する前記少なくとも1つのピクセル座標をスケーリングして、前記動きベクトルに対応する少なくとも1つのスケーリングされた座標を導出することを含む、請求項13に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、解像度適応型ビデオコーディングに関する。
【背景技術】
【0002】
H.264/AVC(Advanced Video Coding)およびH.265/HEVC(High Efficiency Video Coding)規格などの従来のビデオコーディング形式では、シーケンス内のビデオフレームのサイズと解像度は、シーケンスレベルでヘッダーに記録される。したがって、フレーム解像度を変更するには、イントラコード化フレームから始めて、新しいビデオシーケンスを生成する必要があり、これは、インターコード化フレームよりも送信にかなり大きな帯域幅コストを伴う。その結果として、ネットワーク帯域幅が低くなったり、減少したり、抑制されたりしたときは、ダウンサンプリングされた低解像度のビデオをネットワーク経由で適応的に送信することが望ましいが、従来のビデオコーディング形式を使用しながら帯域幅の節約を実現することは、適応的にダウンサンプリングする帯域幅のコストが帯域幅の増加を相殺するため、困難である。
【0003】
インターコード化フレームを送信しながら解像度の変更をサポートするための研究が行われている。AOMによって開発されたAV1コーデックの実装では、switch_frameと呼ばれる新しいフレームタイプが提供され、これは、以前のフレームとは異なる解像度で送信される場合がある。ただし、switch_frameの動きベクトルコーディングは前のフレームの動きベクトルを参照できないため、switch_frameの使用には制限がある。このような参照は、従来、帯域幅のコストを削減する別の方法を提供するので、switch_frameを使用すると、帯域幅の増加を相殺するより大きな帯域幅の消費が依然として維持される。
【0004】
次世代ビデオコーデック仕様VVC/H.266の開発では、前のフレームを参照する動きベクトルコーディングをさらにサポートするために、いくつかの新しい動き予測コーディングツールが提供されている。これらの新しいコーディングツールに関して、ビデオシーケンスで解像度の変更を実装するには、新しい手法が必要である。
【図面の簡単な説明】
【0005】
詳細な説明が添付の図を参照して記述される。図中、参照番号の左端の数字は、この参照番号が最初に出現する図を示す。異なる図で同じ参照番号を使用している場合、類似または同一の項目または機能を示す。
【0006】
図1】本開示の例示的な実施形態による、ビデオコーディングプロセスの例示的なブロック図を示す。
図2】参照フレームをアップサンプリングすることによる、動き予測の例を示す。
図3】本開示の例示的な実施形態による、解像度適応型ビデオコーディングを実装するビデオコーディング方法のフローチャートを示す。
図4A】本開示の例示的な実施形態による、参照フレームのサイズ変更を伴わない動き予測の例を示す。
図4B】本開示の例示的な実施形態による、参照フレームのサイズ変更を伴わない動き予測の例を示す。
図4C】本開示の例示的な実施形態による、参照フレームのサイズ変更を伴わない動き予測の例を示す。
図5】解像度適応型ビデオコーディングを実装するための、本明細書に記載のプロセスおよび方法を実装するための例示的なシステムを示す。
【発明を実施するための形態】
【0007】
本明細書で論じられるシステムおよび方法は、ビデオエンコーダにフレーム間適応解像度変更を実装すること、より具体的には、動き予測ビデオコーディング規格に基づいてフレーム間適応解像度変更を可能にするために、フレームの動き情報のサイズ変更を実装することを目的とする。
【0008】
AVC、HEVC、VVC、および動き予測を実装する係るビデオコーディング規格と互換性があるように実装された本開示の例示的な実施形態によれば、フレームは、各々が16x16ピクセルの寸法を有するマクロブロック(MB)に細分され得、これがさらにパーティションに細分され得る。HEVC規格と互換性があるように実装された本開示の例示的な実施形態によれば、フレームは、コーディングツリーユニット(CTU)に細分され得、その輝度および彩度成分は、コーディングツリーブロック(CTB)にさらに細分され得、これがさらにコーディングユニット(CU)に細分される。他の規格として実装される本開示の例示的な実施形態によれば、フレームは、NxNピクセルのユニットに細分され得、次いで、サブユニットにさらに細分され得る。細分化されたフレームのこれらの最大のユニットの各々は、本開示の目的のため、概して「ブロック」と呼ばれ得る。
【0009】
本開示の例示的な実施形態によれば、ブロックは、4x4ピクセルの倍数の寸法を有するパーティションに細分され得る。例えば、ブロックのパーティションは、8x4ピクセル、4x8ピクセル、8x8ピクセル、16x8ピクセル、または8x16ピクセルの寸法を有し得る。
【0010】
本開示の例示的な実施形態によれば、動き予測コーディングフォーマットはデータフォーマットを指すことができ、フレームは、1つ以上の他のフレームの動き情報および予測ユニット(PU)への1つ以上の参照を含めることによって、フレームの動きベクトル情報および予測情報でエンコードされる。動き情報は、動きベクトルおよび現在のフレームまたは別フレームのブロックへの参照など、フレームまたはそのユニットもしくはサブユニットのブロック構造の動きを説明するデータを指すことができる。PUは、MBまたはCTUなどのフレームの複数のブロック構造の中のブロック構造に対応するユニットまたは複数のサブユニットを指す場合があり、ブロックは、フレームデータに基づいて分割され、確立されたビデオコーデックに従ってコード化される。PUに対応する動き情報は、本明細書に記載されているものを含むがこれらに限定されない、任意の動きベクトルコーディングツールによってエンコードされた動き予測を記述し得る。
【0011】
同様に、フレームは、1つ以上の変換ユニット(TU)を含めることによって変換情報でエンコードされ得る。変換情報は、サブブロックに適用され得る、対角反転、垂直反転、または回転などのいくつかの空間変換のうちの1つを表す係数を指し得る。
【0012】
PUおよびTUなどのCUのサブブロックは、上述のようなサブブロックの寸法の任意の組み合わせで配置してよい。CUは、TUの階層構造である残差四分木(RQT)に細分され得る。RQTは、各レベルのサブブロック上で、RQTの各レベルを再帰的に下げる、動き予測および残差コーディングの順序を提供する。
【0013】
動き予測コーディングによるビデオエンコーダは、ビデオソースから画像を取得し、フレームをコード化して、送信のために出力され得る再構成されたフレームを取得することができる。再構成されたフレームのブロックは、イントラコード化またはインターコード化され得る。
【0014】
図1は、本開示の例示的な実施形態によるビデオコーディングプロセス100の例示的なブロック図を示す。
【0015】
ビデオコーディングプロセス100において、ビデオソース102からの画像は、再構成されたフレームを生成するためにエンコードされ得、再構成されたフレームは、参照フレームバッファ104または送信バッファなどの宛先で出力され得る。画像は、コーディングループに入力することができ、これは、画像を第1のインループアップサンプラーまたはダウンサンプラー106に入力するステップと、アップサンプリングまたはダウンサンプリングされた画像を生成するステップと、アップサンプリングまたはダウンサンプリングされた画像をビデオエンコーダ108に入力するステップと、参照フレームバッファ104の前の再構成フレームに基づいて再構成フレームを生成することと、再構成フレームを1つ以上のインループフィルタ110に入力するステップと、再構成フレームをループから出力するステップと、を含み得、これは、再構成フレームを第2のアップサンプラーまたはダウンサンプラー114に入力することと、アップサンプリングまたはダウンサンプリングされた再構成フレームを生成することと、アップサンプリングまたはダウンサンプリングされた再構成フレームを、参照フレームバッファ104に出力するかまたはビットストリームに送信される送信バッファに出力することと、を含み得る。
【0016】
ビデオデコードプロセス120において、コード化されたフレームがビットストリーム121などのソースから取得される。本開示の例示的な実施形態によれば、ビットストリーム121内の位置Nを有する現在のフレームが与えられると、ビットストリーム121内の位置N-1を有する前のフレームは、現在のフレームの解像度より大きいかまたは小さい解像度を有し得、ビットストリーム121内の位置N+1を有する次のフレームは、現在のフレームの解像度より大きいかまたは小さい解像度を有し得る。現在のフレームは、コーディングループに入力することができ、これは、現在のフレームをビデオデコーダ122に入力するステップと、現在のフレームを1つ以上のインループフィルタ124に入力するステップと、現在のフレームを第3のインループアップサンプラーまたはダウンサンプラー128入力するステップと、アップサンプリングまたはダウンサンプリングされた再構成フレームを生成するステップと、アップサンプリングまたはダウンサンプリングされた再構成フレームを、参照フレームバッファ104に出力するステップと、を含み得る。あるいは、現在のフレームをループから出力してもよく、これは、アップサンプリングまたはダウンサンプリングされた再構成されたフレームを表示バッファに出力することを含み得る。
【0017】
本開示の例示的な実施形態によれば、ビデオエンコーダ108およびビデオデコーダ122は各々、本明細書に記載されるコーディングフォーマットを含むがこれらに限定されない、動き予測コーディングフォーマットを実装することができる。参照フレームバッファ104の前の再構成フレームに基づいて再構成フレームを生成することは、本明細書に記載されるインターコード化された動き予測を含むことができ、前の再構成フレームは、インループのアップサンプラーまたはダウンサンプラー114/128によって出力された、アップサンプリングまたはダウンサンプリングされた再構成フレームであり得、かつ前の再構成フレームは、本明細書に記載されるインターコード化された動き予測における参照画像として機能する。
【0018】
本開示の例示的な実施形態によれば、動き予測情報は、予測ブロックを識別する動きベクトルを含み得る。動きベクトルは、現在のブロックと、現在のブロックのコーディングのために参照される予測ブロックとの間の変位を表す変位ベクトルであり得る。変位は、現在のフレーム上で水平方向および垂直方向のピクセルで測定できる。変位ベクトルは、現在のブロックのピクセルと、それぞれのブロック内の同じ位置にある予測ブロックの対応するピクセルとの間の変位を表すことができる。例えば、変位ベクトルは、現在のブロックの左上隅のピクセルから予測ブロックの左上隅のピクセルへの変位を表すことができる。
【0019】
インターコード化された動き予測は、現在のフレームのブロックおよび現在のフレームの動きベクトルを追加して、予測ブロックを位置特定することができる。例えば、現在のフレームのブロックをデコードしている間、現在のフレームのブロックの左上隅にあるピクセルの座標が与えられると、動きベクトルは、現在のフレームのブロックについて動き情報が導出されるはずである、参照フレームの予測ブロックの座標を示し得る。参照フレームの予測ブロックの座標は、現在のフレームと参照フレームが同じ解像度を有し、これによりピクセルが現在のフレームと参照フレームの間で1対1で対応していると仮定すると、現在のフレームのブロックの座標に動きベクトルを追加することによって位置特定することができる。
【0020】
さらに、動き予測は、整数ピクセルスケールまたはサブピクセルスケールの精度をサポートする場合がある。例えば、HEVC規格に従って実装される本開示の例示的な実施形態によれば、動き予測は、補間フィルタがフレームに適用されてフレームを4倍で補間するように、クォーターピクセルスケールの精度であり得る。つまり、フレームの2ピクセルごとに、サブピクセル画像情報として3ピクセルが生成される。4倍の補間フィルタは、例えば、7タップの双一次フィルタおよび8タップの離散コサイン変換(DCT)ベースの有限インパルス応答(FIR)フィルタとして実装され得る。補間は、第1の補間フィルタがフレームに適用されてフレームを2倍に補間するように、補間が半ピクセル精度まで実施される第1の段階で起こり得、次に、補間がクォーターピクセル精度まで実施される第2の段階で起こり得る。サブピクセルスケールへの動き予測精度は、整数ピクセルスケールへの動き予測精度よりも圧縮フレームの品質を向上させ得るが、代償として、補間される各ピクセルの計算コストと計算時間が増加する。
【0021】
本開示の例示的な実施形態によれば、第1のアップサンプラーまたはダウンサンプラー106、第2のアップサンプラーまたはダウンサンプラー114、および第3のアップサンプラーまたはダウンサンプラー128は、各々が、動き予測コーディングフォーマットでコード化されたフレームの少なくともアップサンプリングまたはダウンサンプリングコード化されたピクセル情報にそれぞれ適したアップサンプリングまたはダウンサンプリングアルゴリズムを実装することができる。第1のアップサンプラーまたはダウンサンプラー106、第2のアップサンプラーまたはダウンサンプラー114、および第3のアップサンプラーまたはダウンサンプラー128は、各々が、動きベクトルなどの動き情報をそれぞれアップスケーリングおよびダウンスケーリングするのにさらに適したアップサンプリングまたはダウンサンプリングアルゴリズムを実装することができる。
【0022】
したがって、前の再構成されたフレームなど、現在のフレームに対して再構成されたフレームを生成する際の参照画像として機能するフレームは、前のフレームおよび次のフレームの解像度に対する現在のフレームの解像度に従って、アップサンプリングまたはダウンサンプリングすることができる。例えば、現在のフレームが前のフレームと次のフレームのいずれかまたは両方の解像度よりも大きい解像度を有する場合、参照画像として機能するフレームをアップサンプリングすることができる。現在のフレームの解像度が前のフレームと次のフレームのいずれかまたは両方よりも小さい場合、参照画像として機能するフレームをダウンサンプリングすることができる。
【0023】
図2は、上述のように、参照フレームをアップサンプリングすることによる、動き予測の例200を示す。現在のフレーム210は、参照フレーム220の解像度の3倍の解像度を有し、これにより、現在のフレーム210は、参照フレーム220の各ピクセルに対して9ピクセルを有する。参照フレーム220の解像度と現在のフレーム210の解像度との比率は、1:3であり得る。座標(3,3)を有する現在のフレーム210のブロック212(すなわち、ブロック212の左上のピクセルがピクセル座標(3,3)を有する)、およびブロック212の動きベクトル(1,1)が与えられると、ブロック212の座標に動きベクトルを追加することにより座標(4,4)が得られる。したがって、動きベクトルは、(4,4)に座標を有する予測ブロックを示す。
【0024】
参照フレーム220を、アップスケールされた参照フレーム230にアップサンプリングすることは、結果として現在のフレーム210に1対1で対応するピクセルを有するアップスケールされた参照フレーム230をもたらす。したがって、座標(4,4)は、アップスケールされた参照フレーム230に直接適用され得、アップスケールされた参照フレーム230内の(4,4)の予測ブロック232は、現在のフレーム210に対する動き予測において使用されてよい。
【0025】
しかしながら、参照フレーム上でこのような操作を実施することは、ビデオコーディングプロセスおよび/またはビデオデコードプロセス中にかなりの計算コストおよび計算時間が発生し得る。例えば、参照フレームのアップサンプリングでは、補間フィルタを使用して、元の参照フレームのピクセル間に追加のサブピクセル画像情報を生成し、アップサンプリングされた参照フレームの追加のピクセルを埋めて、参照フレームのピクセルが現在のフレームのピクセルに1対1で対応するようにする。画像が、元の画像のすべてのピクセルに対してx倍にアップサイズされると、アップサンプリングされた画像の少なくとも追加のx-1ピクセル数が空で始まり、補間フィルタで埋める必要がある。ただし、参照フレームへの参照は、概して、現在のフレームの動きベクトルによって指し示される参照フレームの特定の予測ブロックへの参照であるため、参照フレームを利用する動き予測は、補間フィルタによって生成された新しいピクセルの大部分を参照する可能性は低い。したがって、ビデオデコードプロセス中に、参照フレームに補間フィルタを適用すると、最終的にビデオデコードプロセスに寄与しない多くのピクセルの計算を生じさせることがある。
【0026】
本開示の例示的な実施形態によれば、参照フレームの解像度が現在のフレームの解像度とは異なるとビデオデコーダが判定すると、参照フレームがアップサンプリングまたはダウンサンプリングされる代わりに、ビデオデコーダが代わりに、動きベクトルを含む、現在のフレームの動き情報のサイズを変更し得る。現在のフレームの動き情報のサイズを変更するために、ビデオデコーダは、参照フレームの解像度に対する現在のフレームの解像度の比率を決定することができる。
【0027】
図3は、本開示の例示的な実施形態による、解像度適応型ビデオコーディングを実施するビデオコーディング方法300のフローチャートを示す。
【0028】
ステップ302で、ビデオデコーダは、シーケンスからインターコード化された現在のフレームを取得する。現在のフレームは位置Nを有し得る。シーケンス内の位置N-1を有する前のフレームは、現在のフレームの解像度よりも大きいかまたは小さい解像度を有し得、シーケンス内の位置N+1を有する次のフレームは、現在のフレームの解像度よりも大きいかまたは小さい解像度を有し得る。
【0029】
ステップ304で、ビデオデコーダは、参照フレームバッファから参照フレームを取得する。
【0030】
ステップ306で、ビデオデコーダは、参照フレームの解像度を現在のフレームの解像度と比較し、参照フレームの解像度が現在のフレームの解像度とは異なると判定する。
【0031】
本開示の例示的な実施形態によれば、現在のフレームの解像度とは異なる解像度を有する参照フレームは、例えば、参照フレームバッファの最新のフレームであり得るが、現在のフレームの解像度とは異なる解像度を有する参照フレームは、参照フレームバッファの最新のフレームではないフレームである場合がある。
【0032】
ステップ308で、ビデオデコーダは、現在のフレームの解像度に対する参照フレームの解像度の比率を決定する。
【0033】
図4Aは、本明細書で説明される、参照フレームのサイズ変更なしの動き予測の例400を示す。図2の図と同様に、現在のフレーム410は、参照フレーム420の解像度の3倍の解像度を有し、これにより、現在のフレーム410は、参照フレーム420の各ピクセルに対して9ピクセルを有し、参照フレーム420の解像度と現在のフレーム410の解像度との比率は、1:3である。
【0034】
ステップ310において、ビデオデコーダは、現在のフレームのブロックの動きベクトルを決定し、現在のフレームのブロックの動きベクトルによって示されるピクセル座標を計算する。
【0035】
動きベクトルは、動き予測のステップに従って決定することができる。動きベクトルを決定する動き予測を実施するステップは、本明細書では詳細に説明されないが、例えば、現在のフレームのブロックの動き候補リストを導出すること、導出された動き候補リストまたはマージ候補リストから動き候補を選択すること、および現在のフレームのブロックの動きベクトルとして動き候補の動きベクトルを導出することを含み得る。
【0036】
デコーダは、ビデオエンコーディング規格に従って、最初にデコードされたブロックがフレームの最上部左端のブロックであるラスタスキャン順序など、フレームのブロック間のコード化順序でブロックごとにフレームをデコードすることができる。
【0037】
図4Aに示されるように、動きベクトルによって示されるピクセル座標を計算する例400として、座標(3,3)を有する現在のフレーム410のブロック412(すなわち、ブロック412の左上のピクセルがピクセル座標(3,3)を有する)、およびブロック412の動きベクトル(1,1)が与えられると、ブロック412の座標に動きベクトルを追加することにより座標(4,4)が得られる。したがって、動きベクトルは、(4,4)に座標を有する予測ブロックを示す。
【0038】
ステップ312で、ビデオデコーダは、比率に従って、現在のフレームのブロックの動き情報を参照フレームの解像度にサイズ変更する。
【0039】
本開示の例示的な実施形態によれば、動き情報のサイズ変更は、スケーリングされた動きベクトルをスケーリングされたブロック座標に追加した後、結果として生じる座標をスケーリングして、動きベクトルによって示されるスケーリングされた座標を導出することを含み得る。
【0040】
図4Aに示されるように、参照フレーム420の解像度と現在のフレーム410の解像度との比率が1:3であると仮定して、参照フレーム420の座標(4,4)に予測ブロックを位置特定すると、不正確な結果が生じるであろう。図4Aは、現在のフレーム410と同じ解像度で仮想参照フレーム416によって概説されるこの仮想予測ブロック414を示すが、本開示の例示的な実施形態によれば存在しない。代わりに、ビデオデコーダは、比率1:3に基づいて座標(4,4)に1/3の係数を掛けて、座標(4/3,4/3)をもたらし得る。図4Aは、参照フレーム420内にこれらの座標を有する仮想ブロック418を示している。
【0041】
ステップ314で、ビデオデコーダは、サイズ変更された動き情報に従って、参照フレームの予測ブロックを位置特定する。
【0042】
サイズ変更された動き情報だけでは、参照フレームの予測ブロックを位置特定するには不十分な場合がある。特に、動きベクトルによって示されるスケーリングされた座標は、参照フレームの解像度に比例し得るが、参照フレームの整数ピクセル座標に対応しない場合があり、さらに、ビデオデコーダがハーフピクセル動き予測を実装する場合は参照フレームのハーフピクセル座標に対応しない場合があり、さらに、ビデオデコーダがクォーターピクセルの動き予測を実装する場合は参照フレームのクォーターピクセル座標に対応しない場合がある。したがって、ビデオデコーダは、ブロックのスケーリングされた座標を、ビデオデコーダによってサポートされる最も近いピクセルスケールまたはサブピクセルスケールにさらに丸めることができる。
【0043】
図4Bおよび図4Cによって示されるように、例えば、動きベクトルによって示される(4/3,4/3)のスケーリングされた座標は、整数ピクセル精度であろうと、ハーフピクセル精度であろうと、またはクォーターピクセル精度であろうと、参照フレーム420内のどのピクセル座標にも対応し得ない。したがって、ビデオデコーダがクォーターピクセルの精度をサポートしている場合、ビデオデコーダはスケーリングされた座標をクォーターピクセルの精度に丸めてよく、したがって、(4/3,4/3)は(1.25,1.25)に丸められ、予測ブロック422を(1.25,1.25)に位置特定し得る。ビデオデコーダがクォーターピクセルの精度をサポートしていないがハーフピクセルの精度をサポートしている場合、ビデオデコーダは、スケーリングされた座標をハーフピクセルの精度に丸めてよく、したがって、(4/3,4/3)は(1.5,1.5)に丸められ、予測ブロック(図示せず)を(1.5,1.5)に位置特定し得る。ビデオデコーダがどちらのレベルのサブピクセル精度もサポートしていない場合、ビデオデコーダはスケーリングされた座標を整数ピクセルの精度に丸めてよく、したがって、(4/3,4/3)は(1,1)に丸められ、予測ブロック424を(1,1)に位置特定し得る。
【0044】
スケーリングされた座標がすでにサブピクセル精度である場合、丸めは不要な場合があり、ビデオデコーダは、参照フレームのスケーリングされた座標に直接予測ブロックを位置特定することができる。
【0045】
本開示の他の例示的な実施形態によれば、スケーリングされた座標がビデオエンコーダによってサポートされる精度のいかなるレベルにも対応しない場合、ビデオデコーダは、それにもかかわらず、スケーリングされた座標を、ビデオデコーダによってサポートされる最高の粒度レベルの精度に丸めない場合がある。代わりに、ビデオデコーダは、スケーリングされた座標を、サポートされている最高レベルよりも低い粒度レベルの精度に丸め得る。
【0046】
ステップ316で、スケーリングされた座標がサブピクセル精度であるか、またはサブピクセル精度に丸められている場合、ビデオデコーダは、参照フレームのスケーリングされた座標のブロックに補間フィルタを適用して、予測ブロックのサブピクセル値を生成する。補間フィルタは、上述のように適用することができ、さらに、スケーリングされた座標がハーフピクセル精度であるか、またはハーフピクセル精度に丸められる場合、上述の補間の第1段階のみが実施されてよく、第2段階はスキップされるため、デコードの計算コストおよび計算時間が削減される。
【0047】
スケーリングされた座標が整数ピクセル精度であるか、整数ピクセル精度に丸められる場合、ビデオデコーダは参照ブロックのピクセルに補間フィルタを適用する必要はなく、ステップ316は、動き予測で直接使用されている参照フレームのスケーリングされた座標のブロックのピクセルをスキップすることができる。補間フィルタの適用を回避することにより、デコードの計算コストおよび計算時間を大幅に削減できる。
【0048】
同様に、ビデオデコーダが、スケーリングされた座標を、ステップ314に関して説明したようにサポートされる最高レベルよりも低い粒度レベルの精度に丸める場合、計算コストおよび計算時間を同様に削減することができる。
【0049】
続いて、ステップ316が実施されるかスキップされるかにかかわらず、ビデオデコーダは、参照フレームおよびその中に位置特定された予測ブロックを参照することによって、現在のブロックをデコードすることができる。デコードされたフレームは、ビットストリームによってサポートされる複数の解像度の異なる解像度に従って、各々が複数の解像度にアップサンプリングまたはダウンサンプリングされてよい。アップサンプリングおよび/またはダウンサンプリングされたデコードされたフレームは、参照フレームバッファおよび表示バッファのうちの少なくとも1つに入力され得る。
【0050】
図5は、解像度適応型ビデオコーディングを実装するための、上述したプロセスおよび方法を実装するための例示的なシステム500を示す。
【0051】
本明細書で説明される技術およびメカニズムは、システム500の複数のインスタンスによって、ならびに他の任意のコンピューティングデバイス、システム、および/または環境によって実装され得る。図5に示されるシステム500は、システムの一例に過ぎず、上述のプロセスおよび/または手順を実施するために利用される任意のコンピューティングデバイスの使用範囲または機能に関する制限を示唆することを意図するものではない。実施形態での使用に適し得る他の既知のコンピューティングデバイス、システム、環境、および/または構成として、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドもしくはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、ゲームコンソール、プログラム可能な家庭用電化製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上記システムもしくはデバイスのうちのいずれかを含む分散コンピューティング環境、フィールドプログラマブルゲートアレイ(「FPGA」)を使用した実装、および特定用途向け集積回路(「ASIC」)、ならびに/または同様のものが挙げられるが、これらに限定されない。
【0052】
システム500は、プロセッサ502に通信可能に結合された、1つ以上のプロセッサ502およびシステムメモリ504を含み得る。プロセッサ502は、1つ以上のモジュールおよび/またはプロセスを実行して、プロセッサ502に様々な機能を実行させることができる。いくつかの実施形態では、プロセッサ502は、中央処理装置(CPU)、グラフィックス処理装置(GPU)、CPUとGPUの両方、または当技術分野で知られている他の処理装置もしくは構成要素を含み得る。さらに、プロセッサ502の各々は、それ自身のローカルメモリを所有することができ、それはまた、プログラムモジュール、プログラムデータ、および/または1つ以上のオペレーティングシステムを格納することができる。
【0053】
システム500の正確な構成およびタイプに応じて、システムメモリ504は、RAMなどの揮発性、ROMなどの不揮発性、フラッシュメモリ、ミニチュアハードドライブ、メモリカード、および同様のもの、またはそれらの何らかの組み合わせであってよい。システムメモリ504は、プロセッサ502によって実行可能な1つ以上のコンピュータ実行可能モジュール506を含み得る。
【0054】
モジュール506は、限定されないが、動き予測モジュール508を含んでよく、動き予測モジュール508は、フレーム取得サブモジュール510、参照フレーム取得サブモジュール512、解像度比較サブモジュール514、比率決定サブモジュール516、動きベクトル決定サブモジュール518、動き情報サイズ変更サブモジュール520、予測ブロック位置特定サブモジュール522、および補間フィルタ適用モジュール524を含み得る。
【0055】
フレーム取得サブモジュール510は、図3を参照して前述したように、シーケンスからインターコード化された現在のフレームを取得するように構成され得る。
【0056】
基準フレーム取得サブモジュール512は、図3を参照して前述したように、基準フレームバッファから基準フレームを取得するように構成され得る。
【0057】
解像度比較サブモジュール514は、図3を参照して前述したように、参照画像の解像度を現在のフレームの解像度と比較し、参照フレームの解像度が現在のフレームの解像度とは異なることを判定するように構成され得る。
【0058】
比率決定サブモジュール516は、図3を参照して前述したように、現在のフレームの解像度に対する参照フレームの解像度の比率を決定するように構成され得る。
【0059】
動き情報決定サブモジュール518は、図3を参照して前述したように、現在のフレームのブロックの動きベクトルを決定し、現在のフレームのブロックの動きベクトルによって示されるピクセル座標を計算するように構成され得る。
【0060】
動き情報サイズ変更サブモジュール520は、図3を参照して前述したように、比率に従って、現在のフレームのブロックの動き情報を参照フレームの解像度にサイズ変更するように構成され得る。
【0061】
予測ブロック位置特定サブモジュール522は、図3を参照して前述したように、サイズ変更された動き情報に従って、参照フレームの予測ブロックを位置特定するように構成され得る。
【0062】
補間フィルタ適用サブモジュール524は、図3を参照して前述したように、スケーリングされた座標がサブピクセル精度であるか、またはサブピクセル精度に丸められる場合に、参照フレームでスケーリングされた座標で補間フィルタをブロックに適用し、予測ブロックのサブピクセル値を生成するように構成され得る。
【0063】
システム500は、ビデオソースデータおよびビットストリームデータを受信するため、ならびにデコードされたフレームを参照フレームバッファおよび/または表示バッファに出力するための、入力/出力(I/O)インターフェース540をさらに含み得る。システム500はまた、システム500がネットワーク(図示せず)を介して他のデバイス(図示せず)と通信することを可能にするための通信モジュール550を含み得る。ネットワークとして、インターネット、有線ネットワークまたは直接有線接続などの有線メディア、ならびに音響、無線周波数(RF)、赤外線、およびその他の無線メディアなどの無線メディアが挙げられ得る。
【0064】
上述した方法の一部またはすべての操作は、以下に定義するように、コンピュータ可読記憶媒体に格納されたコンピュータ可読命令を実行することによって実施可能である。本説明および特許請求の範囲で使用される「コンピュータ可読命令」という用語は、ルーチン、アプリケーション、アプリケーションモジュール、プログラムモジュール、プログラム、構成要素、データ構造、アルゴリズムなどを含む。コンピュータ可読命令は、シングルプロセッサまたはマルチプロセッサシステム、ミニコンピュータ、メインフレームコンピュータ、パーソナルコンピュータ、ハンドヘルドコンピューティングデバイス、マイクロプロセッサベースのプログラム可能な家庭用電化製品、それらの組み合わせなどを含む、様々なシステム構成で実装することができる。
【0065】
コンピュータ可読記憶媒体は、揮発性メモリ(ランダムアクセスメモリ(RAM)など)および/または不揮発性メモリ(読み取り専用メモリ(ROM)、フラッシュメモリなど)を含み得る。また、コンピュータ可読記憶媒体は、追加のリムーバブル記憶装置および/または非リムーバブル記憶装置も含み、これにはフラッシュメモリ、磁気記憶装置、光学記憶装置、および/またはコンピュータ可読命令、データ構造、プログラムモジュールなどの不揮発性記憶装置を提供し得るテープ記憶装置が挙げられるが、これらに限定されない。
【0066】
非一時的なコンピュータ可読記憶媒体は、コンピュータ可読媒体の一例である。コンピュータ可読媒体は、少なくとも2つのタイプのコンピュータ可読媒体、すなわち、コンピュータ可読記憶媒体および通信媒体を含む。コンピュータ可読記憶媒体としては、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を格納するための、任意のプロセスまたは技術で実装される、揮発性および不揮発性、リムーバブル媒体および非リムーバブル媒体が挙げられる。コンピュータ可読記憶媒体として、相変化メモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、他のタイプのランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、電気的に消去可能かつプログラム可能な読み取り専用メモリ(EEPROM)、フラッシュメモリもしくはその他のメモリ技術、コンパクトディスク読み取り専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)もしくはその他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、またはコンピューティングデバイスによるアクセスのための情報を格納するために使用され得る他の任意の非伝送媒体が挙げられるが、これらに限定されない。対照的に、通信媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータを、搬送波または他の送信メカニズムなどの変調されたデータ信号で具体化することができる。本明細書で採用されるコンピュータ可読記憶媒体は、電波もしくは他の自由伝播電磁波、導波管もしくは他の伝送媒体(光ファイバーケーブルを通る光パルスなど)、またはワイヤーを通って伝播する電気信号を伝播する電磁波などの、一時的な信号自体として解釈されてはならない。
【0067】
1つ以上の非一時的なコンピュータ可読記憶媒体に格納されたコンピュータ可読命令は、1つ以上のプロセッサによって実行されると、図1図5を参照して上述した動作を実行することができる。概して、コンピュータ可読命令には、特定の機能を実施するかもしくは特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、構成要素、データ構造などが含まれる。動作が説明される順序は、制限として解釈されることを意図されておらず、説明された任意の数の動作を任意の順序でおよび/または並行して組み合わせて、プロセスを実行することができる。
【0068】
上記の技術的解決策により、本開示は、動き予測中に現在のフレームの動き情報のサイズを変更することによってサポートされるインターコード化された解像度適応型ビデオコーディングを提供し、サブピクセル粒度への参照フレームの画像情報を生成するための補間フィルタの広範な適用の結果として発生するであろう広範な計算コストおよび計算時間を削減し、ひいては全体としてのデコードの計算コストおよび計算時間を削減する。本明細書で説明される方法およびシステムは、現在のフレームの解像度に対する参照フレームの解像度の比率を決定することと、現在のフレームのブロックの動きベクトルを決定し、現在のフレームのブロックの動きベクトルによって示されるピクセル座標を計算することと、比率に従って、現在のフレームのブロックの動き情報を参照フレームの解像度にサイズ変更することと、サイズ変更された動き情報に従って、参照フレームの予測ブロックを位置特定することと、続いて、参照フレームのスケーリングされた座標でブロックに補間フィルタを適用することを最小限に抑えまたは回避して、予測ブロックのサブピクセル値を生成することと、を含む。
【0069】
実施例の項
A.現在のフレームのブロックの動き情報を決定することであって、この動き情報は、ブロックの動きベクトルと、動きベクトルによって示される少なくとも1つのピクセル座標とを含む、決定することと、参照フレームの解像度に従って動き情報のサイズを変更することと、サイズ変更された動き情報に従って、参照フレームの予測ブロックを位置特定することと、位置特定された予測ブロックを参照することにより、現在のブロックで動き予測を実施することと、を含む、方法。
B.参照フレームの解像度が現在のフレームの解像度とは異なることを判定することと、現在のフレームの解像度に対する参照フレームの解像度の比率を決定することと、をさらに含む、段落Aで述べている方法。
C.動きベクトルに対応する少なくとも1つのピクセル座標を決定することは、動きベクトルをブロックの少なくとも1つのピクセル座標に追加することを含む、段落Bで述べている方法。
D.参照フレームの解像度に従って動き情報のサイズを変更することは、現在のフレームの解像度に対する参照フレームの解像度の比率によって、動きベクトルに対応する少なくとも1つのピクセル座標をスケーリングして、動きベクトルに対応する少なくとも1つのスケーリングされた座標を導出することを含む、段落Cで述べている方法。
E.参照フレームの予測ブロックを位置特定することは、少なくとも1つのスケーリングされた座標を各々、整数ピクセルスケール上のそれぞれの最も近い値に丸めることを含む、段落Dで述べている方法。
F.位置特定された予測ブロックを参照することによって現在のブロックで動き予測を実施する前に、補間フィルタが参照フレームに適用されない、段落Fで述べている方法。
G.参照フレームの予測ブロックを位置特定することは、少なくとも1つのスケーリングされた座標を各々、サブピクセルスケール上のそれぞれの最も近い値に丸めることを含む、段落Dで述べている方法。
H.位置特定された予測ブロックを参照することによって現在のブロックで動き予測を実施する前に、サブピクセルスケールの精度の補間フィルタが、少なくとも1つのスケーリングされた座標で参照フレームに適用される、段落Gで述べている方法。
I.サブピクセルスケールは、クォーターピクセルスケールより粒度が細かくない、段落Hで述べている方法。
J.フレームのCTBにSAOを適用することを決定することは、フレームのヘッダフラグの値に基づいてCTBにバンドオフセットを適用することを決定することをさらに含む、段落Iで述べている方法。
K.1つ以上のプロセッサと、この1つ以上のプロセッサに通信可能に結合されたメモリとを備えるシステムであって、メモリは、1つ以上のプロセッサによって実行されると関連する動作を実施する、1つ以上のプロセッサによって実行可能なコンピュータ実行可能モジュールを格納し、コンピュータ実行可能モジュールは、現在のフレームのブロックの動き情報を決定するように構成された動き情報決定サブモジュールを含む、動き予測モジュールであって、動き情報は、ブロックの動きベクトルと、動きベクトルに対応する少なくとも1つのピクセル座標と、を含む、動き予測モジュールと、参照フレームの解像度に従って動き情報のサイズを変更するように構成された、動き情報サイズ変更サブモジュールと、サイズ変更された動き情報に従って参照フレームの予測ブロックを位置特定するように構成された、予測ブロック位置特定サブモジュールとを含み、動き予測モジュールは、位置特定された予測ブロックを参照することによって、現在のブロックで動き予測を実施するようにさらに構成されている、システム。
L.動き予測モジュールが、参照フレームの解像度が現在のフレームの解像度とは異なることを判定するように構成された解像度比較サブモジュールと、現在のフレームの解像度に対する参照フレームの解像度の比率を決定するように構成された比率決定サブモジュールと、をさらに備える、段落Kで述べているシステム。
M.動き情報決定サブモジュールが、動きベクトルをブロックの1つのピクセル座標に追加することによって、動きベクトルに対応する少なくとも1つのピクセル座標を決定するように構成されている、段落Lで述べているシステム。
N.動き情報サイズ変更サブモジュールが、動きベクトルに対応する少なくとも1つのスケーリングされた座標を導出するために、現在のフレームの解像度に対する参照フレームの解像度の比率によって動きベクトルに対応する少なくとも1つのピクセル座標をスケーリングすることにより、参照フレームの解像度に従って動き情報をサイズ変更するように構成されている、段落Mで述べているシステム。
O.予測ブロック位置特定サブモジュールが、少なくとも1つのスケーリングされた座標を各々、整数ピクセルスケール上のそれぞれの最も近い値に丸めることによって参照フレームの予測ブロックを位置特定するように構成されている、段落Nで述べているシステム。
P.動き予測モジュールが、位置特定された予測ブロックを参照することによって現在のブロックで動き予測を実施する前に、補間フィルタが参照フレームに適用されない、段落Oで述べているシステム。
Q.予測ブロック位置特定サブモジュールが、少なくとも1つのスケーリングされた座標を各々、サブピクセルスケール上のそれぞれの最も近い値に丸めることによって参照フレームの予測ブロックを位置特定するように構成されている、段落Nで述べているシステム。
R.動き予測モジュールが、位置特定された予測ブロックを参照することによって現在のブロックで動き予測を実施する前に、少なくとも1つのスケーリングされた座標で参照フレームにサブピクセルスケールの精度の補間フィルタを適用するように構成されたサブモジュールを適用する、補間フィルタをさらに備える、段落Qで述べているシステム。
S.サブピクセルスケールは、クォーターピクセルスケールよりも粒度が細かくない、段落Rで述べているシステム。
T.1つ以上のプロセッサによって実行可能なコンピュータ可読命令を格納するコンピュータ可読記憶媒体であって、コンピュータ可読命令は、1つ以上のプロセッサによって実行されると、1つ以上のプロセッサに、現在のフレームのブロックの動き情報を決定することであって、この動き情報がブロックの動きベクトルと動きベクトルに対応する少なくとも1つのピクセル座標とを含む決定することと、参照フレームの解像度に従って動き情報のサイズを変更することと、サイズ変更された動き情報に従って参照フレームの予測ブロックを位置特定することと、位置特定された予測ブロックを参照することによって現在のブロックで動き予測を実施することと、を含む動作を実施させる、コンピュータ可読記憶媒体。
U.上記動作は、参照フレームの解像度が現在のフレームの解像度とは異なることを判定することと、現在のフレームの解像度に対する参照フレームの解像度の比率を決定することと、をさらに含む、段落Tで述べているコンピュータ可読記憶媒体。
V.動きベクトルに対応する少なくとも1つのピクセル座標を決定することは、動きベクトルをブロックの少なくとも1つのピクセル座標に追加することを含む、段落Uで述べているコンピュータ可読記憶媒体。
W.参照フレームの解像度に従って動き情報のサイズを変更することは、現在のフレームの解像度に対する参照フレームの解像度の比率によって、動きベクトルに対応する少なくとも1つのピクセル座標をスケーリングして、動きベクトルに対応する少なくとも1つのスケーリングされた座標を導出することを含む、段落Vで述べているコンピュータ可読記憶媒体。
X.参照フレームの予測ブロックを位置特定することは、少なくとも1つのスケーリングされた座標を各々、整数ピクセルスケール上のそれぞれの最も近い値に丸めることを含む、段落Wで述べているコンピュータ可読記憶媒体。
Y.位置特定された予測ブロックを参照することによって現在のブロックで動き予測を実施する前に、補間フィルタが参照フレームに適用されない、段落Xで述べているコンピュータ可読記憶媒体。
Z.参照フレームの予測ブロックを位置特定することは、少なくとも1つのスケーリングされた座標を各々、サブピクセルスケール上のそれぞれの最も近い値に丸めることを含む、段落Wで述べているコンピュータ可読記憶媒体。
AA.位置特定された予測ブロックを参照することによって現在のブロックで動き予測を実施する前に、サブピクセルスケールの精度の補間フィルタが、少なくとも1つのスケーリングされた座標で参照フレームに適用される、段落Zで述べているコンピュータ可読記憶媒体。
BB.サブピクセルスケールは、クォーターピクセルスケールよりも粒度が細かくない、段落AAで述べているコンピュータ可読記憶媒体。
【0070】
本主題は、構造的特徴および/または方法論的動作に特定の言語で説明されてきたが、添付の特許請求の範囲で定義される主題は、必ずしも説明された特定の特徴または動作に限定されないことを理解されたい。むしろ、特定の特徴および動作は、特許請求の範囲を実装する例示的な形態として開示されている。
図1
図2
図3
図4A
図4B
図4C
図5