(57)【特許請求の範囲】
【請求項１】
入力ビデオシーケンスから、１つまたは複数の高解像度置換パッチを生成するパッチジェネレータであって、前記１つまたは複数の高解像度置換パッチが、前記入力ビデオシーケンスの再構築中に１つまたは複数の低解像度パッチを置き換えるためのものである、パッチジェネレータを備える装置であって、
前記パッチジェネレータは、前記入力ビデオシーケンスから抽出されたパッチのクラスタ化プロセスに続いて、前記入力ビデオシーケンスからの対応する拡大パッチを平均することによって、前記１つまたは複数の高解像度置換パッチを生成し、前記拡大パッチは、追加の境界拡張を伴う前記入力ビデオシーケンスからの前記抽出されたパッチであり、かつ前記入力ビデオシーケンスから抽出されたパッチより大きなサイズであり、前記高解像度置換パッチは、パッチ空間シフティングプロセスでの使用に適合するために前記１つまたは複数の低解像度パッチのパッチサイズよりも大きく、前記パッチジェネレータは、前記拡大パッチの対応する部分と前記低解像度パッチとの間でシフトされるとき、最小ユークリッド距離を有する前記拡大パッチの部分を使用するパッチ空間シフティングプロセスを使用する、前記装置。
【請求項２】
動き誘導ベクトル量子化誤差が、前記１つまたは複数の高解像度置換パッチの生成中に適用される量子化プロセスによって引き起こされる、請求項１に記載の装置。
【請求項３】
前記量子化プロセスが、前記入力ビデオシーケンスから抽出された複数のパッチに適用されるクラスタ化プロセスに対応し、前記クラスタ化プロセスが、１つまたは複数の基準に基づく同様の特性を有する前記複数のパッチのうちのパッチを互いにグループ化するためのものであり、前記１つまたは複数の高解像度置換パッチが、前記複数のパッチのうちの前記パッチから導出される、請求項２に記載の装置。
【請求項４】
入力ビデオシーケンスから、１つまたは複数の高解像度置換パッチを生成するパッチジェネレータであって、前記１つまたは複数の高解像度置換パッチは、前記入力ビデオシーケンスの再構築中に１つまたは複数の低解像度パッチを置き換えるためのものである、パッチジェネレータを備える装置であって、
前記パッチジェネレータは、パッチ空間シフティングプロセスに対応するデータを使用して前記１つまたは複数の高解像度置換パッチを生成し、前記パッチ空間シフティングプロセスは、前記１つまたは複数の高解像度置換パッチにおける動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクトを低減するためのものであり、前記データは、前記パッチ空間シフティングプロセスにおける使用に適合するために前記１つまたは複数の低解像度パッチのパッチサイズよりも大きなパッチサイズを有するように前記１つまたは複数の高解像度置換パッチを生成することができるように、前記１つまたは複数の高解像度置換パッチのパッチサイズを少なくとも導出するためのものであり、
前記動き誘導ベクトル量子化誤差は、前記１つまたは複数の高解像度置換パッチの生成中に適用される量子化プロセスによって引き起こされ、
前記量子化プロセスは、前記入力ビデオシーケンスから抽出された複数のパッチに適用されるクラスタ化プロセスに対応し、前記クラスタ化プロセスは、１つまたは複数の基準に基づいて同様の特性を有する前記複数のパッチのうちのパッチを互いにグループ化するためのものであり、前記１つまたは複数の高解像度置換パッチは、前記複数のパッチのうちの前記パッチから導出され、
前記クラスタ化プロセスが、同一のクラスタ内の前記複数のパッチのうちの前記パッチを平均することを含み、前記同一のクラスタ内に含めるために前記複数のパッチのうちの前記パッチを選択することに続いて、前記同一のクラスタ内の前記複数のパッチのうちの前記パッチの平均化の前に、前記平均化に備えて前記複数のパッチのうちの前記パッチ内のオブジェクト縁部を位置合せするために、前記パッチ空間シフティングプロセスが、前記複数のパッチのうちの前記パッチに適用される、前記装置。
【請求項５】
前記同一のクラスタ内の前記複数のパッチのうちの前記パッチの一部だけが、クラスタ中心からの対応するパッチ距離に基づいて平均される、請求項４に記載の装置。
【請求項６】
前記動き誘導ベクトル量子化誤差が、前記入力ビデオシーケンスの再構築中に実行されるパッチ置換プロセスによって引き起こされる、請求項１に記載の装置。
【請求項７】
前記入力ビデオシーケンスから１つまたは複数の小型化ピクチャを生成するダウンサイザと、
前記高解像度置換パッチおよび前記１つまたは複数の小型化ピクチャを、結果として得られるビットストリームに符号化する、前記パッチジェネレータおよび前記ダウンサイザと信号通信する１つまたは複数のビデオエンコーダと、
をさらに備える、請求項１に記載の装置。
【請求項８】
前記装置はビデオエンコーダに含まれる、請求項１に記載の装置。
【請求項９】
プロセッサを使用して実行される方法であって、
入力ビデオシーケンスから、１つまたは複数の高解像度置換パッチを生成するステップであって、前記１つまたは複数の高解像度置換パッチが、前記入力ビデオシーケンスの再構築中に１つまたは複数の低解像度パッチを置き換えるためのものである、ステップ
を含み、
前記生成するステップは、前記入力ビデオシーケンスから抽出されたパッチのクラスタ化プロセスに続いて、前記入力ビデオシーケンスからの対応する拡大パッチを平均することによって、前記１つまたは複数の高解像度置換パッチを生成し、前記拡大パッチは、追加の境界拡張を伴う前記入力ビデオシーケンスからの前記抽出されたパッチであり、かつ前記入力ビデオシーケンスから抽出されたパッチより大きなサイズであり、前記高解像度置換パッチは、パッチ空間シフティングプロセスでの使用に適合するために前記１つまたは複数の低解像度パッチのパッチサイズよりも大きく、前記生成するステップは、前記拡大パッチの対応する部分と前記低解像度パッチとの間でシフトされるとき、最小ユークリッド距離を有する前記拡大パッチの部分を使用するパッチ空間シフティングプロセスを使用する、前記方法。
【請求項１０】
動き誘導ベクトル量子化誤差は、前記１つまたは複数の高解像度置換パッチの生成中に適用される量子化プロセスによって引き起こされる、請求項９に記載の方法。
【請求項１１】
前記量子化プロセスが、前記入力ビデオシーケンスから抽出された複数のパッチに適用されるクラスタ化プロセスに対応し、前記クラスタ化プロセスが、１つまたは複数の基準に基づく同様の特性を有する前記複数のパッチのうちのパッチを互いにグループ化するためのものであり、前記１つまたは複数の高解像度置換パッチが、前記複数のパッチのうちの前記パッチから導出される、請求項１０に記載の方法。
【請求項１２】
プロセッサを使用して実行される方法であって、
入力ビデオシーケンスから、１つまたは複数の高解像度置換パッチを生成するステップであって、前記１つまたは複数の高解像度置換パッチは、前記入力ビデオシーケンスの再構築中に１つまたは複数の低解像度パッチを置き換えるためのものである、ステップを含む方法であって、
前記生成するステップは、パッチ空間シフティングプロセスに対応するデータを使用して前記１つまたは複数の高解像度置換パッチを生成し、前記パッチ空間シフティングプロセスは、前記１つまたは複数の高解像度置換パッチにおける動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクトを低減するためのものであり、前記データは、前記パッチ空間シフティングプロセスにおける使用に適合するために前記１つまたは複数の低解像度パッチのパッチサイズよりも大きなパッチサイズを有するように、前記１つまたは複数の高解像度置換パッチを生成することができるように、前記１つまたは複数の高解像度置換パッチのパッチサイズを少なくとも導出するためのものであり、
前記動き誘導ベクトル量子化誤差は、前記１つまたは複数の高解像度置換パッチの生成中に適用される量子化プロセスによって引き起こされ、
前記量子化プロセスは、前記入力ビデオシーケンスから抽出された複数のパッチに適用されるクラスタ化プロセスに対応し、前記クラスタ化プロセスは、１つまたは複数の基準に基づいて同様の特性を有する前記複数のパッチのうちのパッチを互いにグループ化するためのものであり、前記１つまたは複数の高解像度置換パッチは、前記複数のパッチのうちの前記パッチから導出され、
前記クラスタ化プロセスが、同一のクラスタ内の前記複数のパッチのうちの前記パッチを平均することを含み、前記同一のクラスタ内に含めるために前記複数のパッチのうちの前記パッチを選択することに続いて、前記同一のクラスタ内の前記複数のパッチのうちの前記パッチの平均化の前に、前記平均化に備えて前記複数のパッチのうちの前記パッチ内のオブジェクト縁部を位置合せするために、前記パッチ空間シフティングプロセスが、前記複数のパッチのうちの前記パッチに適用される、前記方法。
【請求項１３】
同一のクラスタ内の前記複数のパッチのうちの前記パッチの一部だけが、クラスタ中心からの対応するパッチ距離に基づいて平均される、請求項１２に記載の方法。
【請求項１４】
前記動き誘導ベクトル量子化誤差が、前記入力ビデオシーケンスの再構築中に実行されるパッチ置換プロセスによって引き起こされる、請求項９に記載の方法。
【請求項１５】
前記高解像度置換パッチおよび１つまたは複数の小型化ピクチャを、結果として得られるビットストリームに符号化するステップをさらに含む、請求項９に記載の方法。
【請求項１６】
前記方法がビデオエンコーダで実行される、請求項９に記載の方法。
【請求項１７】
動き誘導ベクトル量子化誤差を有する１つまたは複数の高解像度置換パッチを受け取り、前記１つまたは複数の高解像度置換パッチを少なくとも空間的にシフトして、前記動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクトを低減するパッチシフタであって、前記１つまたは複数の高解像度置換パッチが、入力ビデオシーケンスに対応し、前記入力ビデオシーケンスから抽出されたパッチのクラスタ化プロセスに続いて、前記入力ビデオシーケンスからの対応する拡大パッチを平均することによって、入力ビデオシーケンスから導出され、前記拡大パッチは、追加の境界拡張を伴う前記入力ビデオシーケンスからの前記抽出されたパッチであり、かつ前記入力ビデオシーケンスから抽出されたパッチより大きなサイズであり、前記高解像度置換パッチは、１つまたは複数の低解像度パッチより大きく、ビデオエンコーダのパッチジェネレータは、前記拡大パッチの対応する部分と前記低解像度パッチとの間でシフトされるとき、最小ユークリッド距離を有する前記拡大パッチの部分を使用するパッチ空間シフティングプロセスを使用する、パッチシフタと、
１つまたは複数の小型化ピクチャの低解像度パッチを前記１つまたは複数の空間的にシフトした高解像度置換パッチで置き換えて前記入力ビデオシーケンスを再構築する、前記パッチシフタと信号通信するピクチャ再構築デバイスであって、前記１つまたは複数の空間的にシフトした高解像度置換パッチおよび１つまたは複数の小型化ピクチャは、前記入力ビデオシーケンスに対応し、前記入力ビデオシーケンスから導出される、前記ピクチャ再構築デバイスと、
を備える、装置。
【請求項１８】
前記入力ビデオシーケンスが、ビデオ圧縮用のベクトル量子化ベースの圧縮プロセス、例に基づくビデオ超解像度プロセス、ビデオ要約プロセス、およびビデオプルーニングプロセスのうちの少なくとも１つで再構築される、請求項１７に記載の装置。
【請求項１９】
前記高解像度置換パッチが、空間的整合性および時間的整合性を考慮して、それぞれ空間的および時間的にシフトされる、請求項１７に記載の装置。
【請求項２０】
マルコフ確率場が使用され、再構築後ビデオシーケンス中の時空的平滑化が図られる、請求項１７に記載の装置。
【請求項２１】
前記マルコフ確率場がコスト関数として実装され、パッチシフト座標がコスト関数の変数として使用され、前記１つまたは複数の高解像度置換パッチのうちの対応するものに関する、対応するシフトが求められる、請求項２０に記載の装置。
【請求項２２】
空間シフティングがサブピクセルパッチシフティングを含み、前記ジッタの多いアーチファクトをさらに低減する、請求項１７に記載の装置。
【請求項２３】
前記サブピクセルパッチシフティングが階層型パッチマッチングプロセスで使用され、前記階層型パッチマッチングプロセスでは、ピクセルパッチシフティングプロセスを使用して、前記１つまたは複数の高解像度置換パッチのうちの１つによって置き換えられるべき低解像度パッチの位置を推定し、次いでサブピクセルパッチシフティングプロセスを実行して、推定を改善し、前記サブピクセルパッチシフティングプロセスでは、前記ピクセルパッチシフティングプロセスよりも狭い範囲を使用する、請求項２２に記載の装置。
【請求項２４】
ビットストリームから前記高解像度置換パッチおよび前記１つまたは複数の小型化ピクチャを復号化する、前記パッチシフタと信号通信するビデオデコーダをさらに備える、請求項１７に記載の装置。
【請求項２５】
前記装置はビデオデコーダに含まれる、請求項１７に記載の装置。
【請求項２６】
プロセッサを使用して実行される方法であって、
動き誘導ベクトル量子化誤差を有する１つまたは複数の高解像度置換パッチを受け取るステップと、
前記１つまたは複数の高解像度置換パッチを少なくとも空間的にシフトするステップであって、前記動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクトを低減し、前記１つまたは複数の高解像度置換パッチが、入力ビデオシーケンスに対応し、前記入力ビデオシーケンスから抽出されたパッチのクラスタ化プロセスに続いて、前記入力ビデオシーケンスからの対応する拡大パッチを平均することによって、入力ビデオシーケンスから導出され、前記拡大パッチは、追加の境界拡張を伴う前記入力ビデオシーケンスからの前記抽出されたパッチであり、かつ前記入力ビデオシーケンスから抽出されたパッチより大きなサイズであり、前記高解像度置換パッチは、１つまたは複数の低解像度パッチより大きく、ビデオエンコーダのパッチジェネレータは、前記拡大パッチの対応する部分と前記低解像度パッチとの間でシフトされるとき、最小ユークリッド距離を有する前記拡大パッチの部分を使用するパッチ空間シフティングプロセスを使用する、ステップと、
１つまたは複数の小型化ピクチャの低解像度パッチを前記１つまたは複数の空間的にシフトした高解像度置換パッチで置き換えて前記入力ビデオシーケンスを再構築するステップであって、前記１つまたは複数の空間的にシフトした高解像度置換パッチおよび１つまたは複数の小型化ピクチャは、前記入力ビデオシーケンスに対応し、前記入力ビデオシーケンスから導出される、ステップと、
を含む、前記方法。
【請求項２７】
前記入力ビデオシーケンスが、ビデオ圧縮用のベクトル量子化ベースの圧縮プロセス、例に基づくビデオ超解像度プロセス、ビデオ要約プロセス、およびビデオプルーニングプロセスのうちの少なくとも１つで再構築される、請求項２６に記載の方法。
【請求項２８】
前記高解像度置換パッチが、空間的整合性および時間的整合性を考慮して、それぞれ空間的および時間的にシフトされる、請求項２６に記載の方法。
【請求項２９】
マルコフ確率場が使用され、再構築後ビデオシーケンス中の時空的平滑化が図られる、請求項２６に記載の方法。
【請求項３０】
前記マルコフ確率場がコスト関数として実装され、パッチシフト座標が前記コスト関数の変数として使用され、前記１つまたは複数の高解像度置換パッチのうちの対応するものに関する、対応するシフトが求められる、請求項２９に記載の方法。
【請求項３１】
空間シフティングがサブピクセルパッチシフティングを含み、前記ジッタの多いアーチファクトをさらに低減する、請求項２６に記載の方法。
【請求項３２】
前記サブピクセルパッチシフティングが階層型パッチマッチングプロセスで使用され、前記階層型パッチマッチングプロセスでは、ピクセルパッチシフティングプロセスを使用して、前記１つまたは複数の高解像度置換パッチのうちの１つによって置き換えられるべき低解像度パッチの位置を推定し、次いでサブピクセルパッチシフティングプロセスを実行して、推定を改善し、前記サブピクセルパッチシフティングプロセスでは、前記ピクセルパッチシフティングプロセスよりも狭い範囲を使用する、請求項３１に記載の方法。
【請求項３３】
ビットストリームから前記高解像度置換パッチおよび前記１つまたは複数の小型化ピクチャを復号化するステップをさらに含む、請求項２６に記載の方法。
【請求項３４】
前記方法がビデオデコーダで実行される、請求項２６に記載の方法。
【請求項３５】
符号化されたビデオ信号データを有する非一時的コンピュータ読み取り可能記憶媒体であって、
入力ビデオシーケンスから生成された１つまたは複数の高解像度置換パッチを含み、前記１つまたは複数の高解像度置換パッチは、前記入力ビデオシーケンスの再構築中に１つまたは複数の低解像度パッチを置き換えるためのものであり、
前記１つまたは複数の高解像度置換パッチが、前記入力ビデオシーケンスから抽出されたパッチのクラスタ化プロセスに続いて、前記入力ビデオシーケンスからの対応する拡大パッチを平均することによって生成され、前記拡大パッチは、追加の境界拡張を伴う前記入力ビデオシーケンスからの前記抽出されたパッチであり、かつ前記入力ビデオシーケンスから抽出されたパッチより大きなサイズであり、前記高解像度置換パッチは、パッチ空間シフティングプロセスでの使用に適合するために前記１つまたは複数の低解像度パッチのパッチサイズよりも大きく、パッチジェネレータは、前記拡大パッチの対応する部分と前記低解像度のパッチとの間でシフトされるとき、最小ユークリッド距離を有する前記拡大パッチの部分を使用するパッチ空間シフティングプロセスを使用する、前記非一時的コンピュータ読み取り可能記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、参照によりその全体が本明細書に組み込まれる２０１０年２月２日出願の米国特許仮出願第６１／３００５５１号明細書の利益を主張する。
【０００２】
本原理は、一般にはベクトル量子化に関し、より詳細には、パッチシフティングを通じてベクトル量子化誤差を低減する方法および装置に関する。
【背景技術】
【０００３】
本発明者等は以前に、ビデオデータプルーニングのための事例に基づく超解像度化方法および装置（ｅｘａｍｐｌｅ−ｂａｓｅｄ  ｓｕｐｅｒ  ｒｅｓｏｌｕｔｉｏｎ  ｍｅｔｈｏｄ  ａｎｄ  ａｐｐａｒａｔｕｓ  ｆｏｒ  ｖｉｄｅｏ  ｄａｔａ  ｐｒｕｎｉｎｇ）（以後、「事例に基づく超解像度化方法」と呼ぶ）を開発した。事例に基づく超解像度化は、入力ピクチャ内の低解像度パッチを照会キーワードとして使用してパッチライブラリ内の高解像度パッチを見つけ、低解像度入力ピクチャ内の低解像度パッチを、取り出した高解像度パッチで置き換えることによって低解像度ピクチャを高解像度ピクチャに変換する超解像度技法である。
【０００４】
さらに詳細には、この事例に基づく超解像度化方法では、エンコーダ側の高解像度ビデオフレームをイメージパッチまたはブロックに分割する（例えば、事例に基づく超解像度化方法の一実装では、１６×１６ピクセルブロックを使用する）。次いで、イメージパッチをいくつかのクラスタにグループ化する。クラスタの代表的パッチを小型化フレームと共にデコーダ側に送る。デコーダ側では、代表的パッチを抽出する。低解像度ビデオ内のパッチを高解像度の代表的パッチで置き換え、回復後高解像度ビデオを生成する。
【０００５】
図１を参照すると、事例に基づく超解像度化システム／方法のハイレベルブロック図が、全般的に参照符号１００で示されている。ステップ１１０で、高解像度（ＨＲ）フレームが入力され、小型化フレームおよびパッチフレームを得るために（エンコーダ側プリプロセッサ１５１によって）エンコーダ側前処理を施す。ステップ１１５で、（エンコーダ１５２によって）小型化フレームおよびパッチフレームを符号化する。ステップ１２０で、（デコーダ１５３によって）符号化小型化フレームおよびパッチフレームを復号化する。ステップ１２５で、高解像度出力フレームを供給するために（超解像度ポストプロセッサ１５４によって）低小型化フレームおよびパッチフレームに超解像度後処理を施す。
【０００６】
図２を参照すると、図１の事例に基づく超解像度化システム／方法に対応するエンコーダ側前処理のハイレベルブロック図が、全般的に参照符号２００で示されている。ステップ２１０で、（パッチ抽出およびクラスタ化部（ｃｌｕｓｔｅｒｅｒ）２５１によって）入力ビデオにパッチ抽出およびクラスタ化を施す。さらに、ステップ２１５で、（ダウンサイザ２５２によって）入力ビデオに小型化も施し、ダウンサイザ２５２から小型化フレームを出力する。ステップ２２０で、（パッチパッカ２５２によって）クラスタ化パッチをパッチフレームにパックし、パッチパッカ２５２から（パック済み）パッチフレームを出力する。
【０００７】
図３を参照すると、図１の事例に基づく超解像度化システム／方法に対応するデコーダ側後処理のハイレベルブロック図が、全般的に参照符号３００で示されている。ステップ３１０で、（パッチ抽出およびクラスタ化部３５１によって）符号化パッチフレームにパッチ抽出および処理を施し、処理済みパッチを得る。ステップ３１５で、（パッチライブラリ３５２によって）処理済みパッチを格納する。ステップ３２０で、（アップサイザ３５３によって）復号化小型化フレームに大型化を施し、大型化フレームを得る。ステップ３２５で、（パッチ探索および置換部３５４によって）大型化フレームにパッチ探索および置換を施し、置換パッチを得る。ステップ３３０で、（ポストプロセッサ３５５によって）置換パッチに後処理を施し、高解像度フレームを得る。
【０００８】
図１〜３に関する事例に基づく超解像度化システム／方法の主要な構成要素は、パッチクラスタ化およびパッチ置換である。このプロセスは、ベクトル量子化ベースの圧縮といくつかの共通点を有する。システムが静的シーンを有するビデオに適用されるとき、ビデオを非常に良好に回復することができる。しかし、入力ビデオが動きを有する場合、回復後ビデオにジッタリングアーチファクトが観測される可能性がある。アーチファクトは、パッチクラスタ化およびパッチ置換プロセスによって引き起こされる。図４を参照すると、動きによって引き起こされる量子化誤差が、全般的に参照符号４００で示されている。量子化誤差は、６つのフレーム（フレーム１からフレーム６と呼ぶ）で取り込まれる（動いている）オブジェクトである。（動いている）オブジェクトが図４で曲線で示されている。量子化誤差４００が、図４の上側部分、中央部分、および下側部分に関して示されている。上側部分では、入力ビデオシーケンスの連続するフレームからの共に位置する入力パッチ４１０が示されている。中央部分では、クラスタに対応する代表的パッチ４２０が示されている。具体的には、中央部分は、クラスタ１の代表的パッチ４２１、およびクラスタ２の代表的パッチ４２２を示す。下側部分では、回復後ビデオシーケンス中のパッチ４３０が示されている。ビデオシーケンス中のオブジェクトの動きにより、オブジェクトの縁部がシフトするパッチのシーケンスが得られる。連続するフレームのシーケンス中のパッチは非常に類似して見えるので、１つのクラスタ（または何らかの他の少ない数のクラスタ）にグループ化され、単一の代表的パッチ（または何らかの他の少ない数の代表的パッチ）として表される。クラスタ数は、処理すべきビデオシーケンス中の連続するフレーム数よりも明らかに少ないはずなので、先行する文では「少ない」という用語を使用する。回復プロセスの間に、対応する低解像度パッチが、クラスタに関連する代表的パッチで置き換えられる。異なる空間シフトを有するパッチが同一のパッチで置き換えられるので、回復後ビデオ中のオブジェクトの縁部がフレームにわたってジャンプし、その結果、ジッタリングアーチファクトが生じる。
【０００９】
本発明者等の上述の事例に基づく超解像度化方法および装置に加えて、他の事例に基づく超解像度化手法も存在することに留意されたい。したがって、他の事例に基づく超解像度化手法に関して、パッチ置換プロセスのアーチファクト問題に対処されていないことに留意されたい。１つの理由は、最初の従来技術の手法による、事例に基づく超解像度化アルゴリズムが、ビデオ用ではなくイメージ用に開発されたことである可能性がある。さらに、上述の最初の従来技術の手法によるシステムならびに類似のシステムは、圧縮のためではなく、超解像度のために開発されたので、クラスタ化構成要素を有さず、したがって、そのシステムのアーチファクト問題は、図１〜３に関して上記で説明したビデオデータプルーニングのための事例に基づく超解像度化方法ほどには深刻ではないことがある。
【００１０】
要約すると、データプルーニングのための事例に基づく超解像度化は、高解像度（本明細書では「ｈｉｇｈ−ｒｅｓ」とも呼ぶ）イグザンプルパッチおよび低解像度（本明細書では「ｌｏｗ−ｒｅｓ」とも呼ぶ）フレームをデコーダに送る。デコーダは、低解像度パッチをイグザンプル高解像度パッチで置き換えることによって高解像度フレームを回復する（図３参照）。しかし、動きのあるビデオでは、しばしば、パッチ置換プロセスの結果、ベクトル量子化（ＶＱ）誤差によるジッタリングアーチファクトが生じる。
【発明の概要】
【００１１】
従来技術のこれらおよび他の欠点および不利が、パッチシフティングを通じてベクトル量子化誤差を低減する方法および装置を対象とする本原理によって対処される。
【００１２】
本原理の一態様によれば、装置が提供される。この装置は、入力ビデオシーケンスから、１つまたは複数の高解像度置換パッチを生成するパッチジェネレータを含む。１つまたは複数の高解像度置換パッチは、入力ビデオシーケンスの再構築中に１つまたは複数の低解像度パッチを置き換えるためのものである。パッチジェネレータは、パッチ空間シフティングプロセスに対応するデータを使用して、１つまたは複数の高解像度置換パッチを生成する。パッチ空間シフティングプロセスは、１つまたは複数の高解像度置換パッチ内の動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクト（ｊｉｔｔｅｒｙ  ａｒｔｉｆａｃｔ）を低減するためのものである。データは、パッチ空間シフティングプロセスでの使用に適するようにするために１つまたは複数の低解像度パッチのパッチサイズよりも大きいパッチサイズを有するような１つまたは複数の高解像度置換パッチを生成するように、１つまたは複数の高解像度置換パッチのパッチサイズを少なくとも導出するためのものである。
【００１３】
本原理の別の態様によれば、プロセッサを使用して実行される方法が提供される。この方法は、入力ビデオシーケンスから、１つまたは複数の高解像度置換パッチを生成することを含む。１つまたは複数の高解像度置換パッチは、入力ビデオシーケンスの再構築中に１つまたは複数の低解像度パッチを置き換えるためのものである。生成するステップは、パッチ空間シフティングプロセスに対応するデータを使用して、１つまたは複数の高解像度置換パッチを生成する。パッチ空間シフティングプロセスは、１つまたは複数の高解像度置換パッチ内の動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクトを低減するためのものである。データは、パッチ空間シフティングプロセスでの使用に適するようにするために１つまたは複数の低解像度パッチのパッチサイズよりも大きいパッチサイズを有するような１つまたは複数の高解像度置換パッチを生成するように、１つまたは複数の高解像度置換パッチのパッチサイズを少なくとも導出するためのものである。
【００１４】
本原理のさらに別の態様によれば、装置が提供される。この装置は、動き誘導ベクトル量子化誤差を有する１つまたは複数の高解像度置換パッチを受け取り、１つまたは複数の高解像度置換パッチを少なくとも空間的にシフトして、動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクトを低減するパッチシフタを含む。１つまたは複数の高解像度置換パッチは、入力ビデオシーケンスに対応し、入力ビデオシーケンスから導出される。装置は、入力ビデオシーケンスに対応し、入力ビデオシーケンスから導出された１つまたは複数の空間的にシフトした高解像度置換パッチおよび１つまたは複数の小型化ピクチャを使用して入力ビデオシーケンスを再構築する、パッチシフタと信号通信するピクチャ再構築デバイスをさらに含む。
【００１５】
本原理のさらに別の態様によれば、プロセッサを使用して実行される方法が提供される。この方法は、動き誘導ベクトル量子化誤差を有する１つまたは複数の高解像度置換パッチを受け取ることを含む。この方法は、１つまたは複数の高解像度置換パッチを少なくとも空間的にシフトして、動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクトを低減することをさらに含む。１つまたは複数の高解像度置換パッチは、入力ビデオシーケンスに対応し、入力ビデオシーケンスから導出される。この方法はまた、入力ビデオシーケンスに対応し、入力ビデオシーケンスから導出された１つまたは複数の空間的にシフトした高解像度置換パッチおよび１つまたは複数の小型化ピクチャを使用して入力ビデオシーケンスを再構築することをも含む。
【００１６】
添付の図面と共に読むべきである例示的実施形態の以下の詳細な説明から、本原理のこれらおよび他の態様、特徴、および利点が明らかとなるであろう。
【図面の簡単な説明】
【００１７】
以下の例示的な図に従って本原理をより良く理解することができる。
【００１８】
【図１】従来技術による、事例に基づく超解像度化システム／方法を示すハイレベルブロック図である。
【図２】従来技術による、図１の事例に基づく超解像度化システム／方法に対応するエンコーダ側前処理を示すハイレベルブロック図である。
【図３】従来技術による、図１の事例に基づく超解像度化システム／方法に対応するデコーダ側後処理を示すハイレベルブロック図である。
【図４】本原理を適用することのできる、動きによって引き起こされる量子化誤差を示す図である。
【図５】本原理の一実施形態による、パッチシフティングを通じてベクトル量子化誤差を低減する例示的システムを示すブロック図である。
【図６】本原理の一実施形態による、本原理を適用することのできる例示的ビデオエンコーダを示すブロック図である。
【図７】本原理の一実施形態による、本原理を適用することのできる例示的ビデオデコーダを示すブロック図である。
【図８】本原理の一実施形態による、拡大パッチを示すブロック図である。
【図９】本原理の一実施形態による、本原理を適用することのできる前方動きベクトルを示す図である。
【図１０】本原理の一実施形態による、本原理を適用することのできる後方動きベクトルを示す図である。
【図１１】本原理の一実施形態による、パッチングシフティングのための例示的方法を示す流れ図である。
【図１２】本原理の一実施形態による、改良型代表的パッチを生成する例示的方法を示す流れ図である。
【図１３】本原理の一実施形態による、パッチシフティングを通じてベクトル量子化誤差を低減する例示的方法を示す流れ図である。
【図１４】本原理の一実施形態による、パッチライブラリを生成する例示的方法を示す流れ図である。
【図１５】本原理の一実施形態による、パッチシフティングを通じてベクトル量子化誤差を低減する別の例示的方法を示す流れ図である。
【発明を実施するための形態】
【００１９】
本原理は、パッチシフティングを通じてベクトル量子化誤差を低減する方法および装置を対象とする。
【００２０】
本説明は本原理を例示する。したがって、本明細書には明示的には説明または図示していないが、本原理を具体化し、本原理の趣旨および範囲内に含まれる様々な構成を当業者は考案できることを理解されよう。
【００２１】
本明細書に記載のすべての例および条件的言語は、当技術分野を促進することに対して本発明者（等）が寄与する本原理および概念を読者が理解するのを助ける、教育的な目的のためのものであり、そのような具体的に記載した例および条件に限定されないと解釈されるべきである。
【００２２】
さらに、本原理の原理、態様、および実施形態、ならびにその特定の例を説明する本明細書のすべての陳述は、その構造的等価物と機能的等価物の両方を包含するものとする。さらに、そのような等価物は、現在知られている等価物、ならびに将来開発される等価物の両方、すなわち構造の如何に関わらず同一の機能を実行する、開発される任意の要素を含むものとする。
【００２３】
したがって、例えば、本明細書で提示するブロック図が本原理を具体化する例示的回路の概念図を表すことを当業者は理解されよう。同様に、コンピュータまたはプロセッサが明示的に示されているか否かに関わらず、任意のフローチャート、流れ図、状態遷移図、疑似コードなどが、実質上コンピュータ可読媒体で表すことができ、次いでそのようなコンピュータまたはプロセッサによって実行することのできる様々なプロセスを表すことを理解されよう。
【００２４】
図に示す様々な要素の機能は、専用ハードウェア、ならびに適切なソフトウェアに関連してソフトウェアを実行することのできるハードウェアを使用することによって実現することができる。プロセッサで実現されるとき、単一の専用プロセッサ、単一の共有プロセッサ、または一部が共有されることのある複数の個々のプロセッサによって機能を実現することができる。さらに、「プロセッサ」または「コントローラ」という用語の明示的な使用が、ソフトウェアを実行することのできるハードウェアをもっぱら指すと解釈すべきではなく、限定はしないが、暗黙的に、デジタル信号プロセッサ（「ＤＳＰ」）ハードウェア、ソフトウェアを格納する読取り専用メモリ（「ＲＯＭ」）、ランダムアクセスメモリ（「ＲＡＭ」）、および不揮発性ストレージを含むことができる。
【００２５】
従来型および／またはカスタムの他のハードウェアも含めることができる。同様に、図に示す任意のスイッチは概念的なものに過ぎない。その機能は、プログラムロジックの動作、専用ロジック、プログラム制御と専用ロジックの対話、さらには手動によって実行することができ、文脈からより具体的に理解できるように、実装者によって特定の技法が選択可能である。
【００２６】
本明細書の特許請求の範囲では、指定の機能を実行する手段として表される任意の要素は、例えば、ａ）その機能を実行する回路要素の組合せ、ｂ）ソフトウェアを実行して機能を実行するための適切な回路と組み合わされる、任意の形態のソフトウェア、したがってファームウェア、マイクロコードなどを含むソフトウェアを含む、その機能を実行する任意の方式を包含するものとする。そのような特許請求の範囲によって定義される本原理は、様々な記載の手段によって提供される機能が、特許請求の範囲が求める方式で組み合わされ、互いに一緒にされることにある。したがって、そのような機能を提供することのできる任意の手段が、本明細書で示すものと同等であるとみなされる。
【００２７】
本明細書での、本原理の「一実施形態」ならびに本原理の他の変形形態に対する参照は、実施形態と共に説明する特定の機能、構造、特徴などが本原理の少なくとも１つの実施形態に含まれることを意味する。したがって、本明細書全体にわたって様々な場所で出現する「一実施形態では」という語句、ならびに任意の他の変形の出現は、必ずしもすべて同一の実施形態を指すわけではない。
【００２８】
「／」、「および／または」、および「の少なくとも１つ」、例えば、「Ａ／Ｂ」の場合、「Ａおよび／またはＢ」、「ＡおよびＢのうちの少なくとも１つ」は、最初に列挙したオプション（Ａ）のみの選択、または２番目に列挙したオプション（Ｂ）のみの選択、または両方のオプション（ＡおよびＢ）の選択を包含するものとすることを理解されたい。別の例として、「Ａ、Ｂ、および／またはＣ」ならびに「Ａ、Ｂ、およびＣのうちの少なくとも１つ」の場合、そのような言い回しは、最初に列挙したオプション（Ａ）のみの選択、または２番目に列挙したオプション（Ｂ）のみの選択、または３番目に列挙したオプション（Ｃ）のみの選択、または１番目と２番目に列挙したオプション（ＡおよびＢ）のみの選択、または１番目と３番目に列挙したオプション（ＡおよびＣ）のみの選択、または２番目と３番目に列挙したオプション（ＢおよびＣ）のみの選択、または３つのすべてのオプション（ＡおよびＢおよびＣ）の選択を包含するものとする。当業者は直ちに理解するように、列挙される項目と同数だけこのことを拡張することができる。
【００２９】
さらに、本明細書では、「ピクチャ」および「イメージ」という語が交換可能に使用され、一般には、静止イメージまたはビデオシーケンスからのピクチャを指す。しかし、事例に基づく超解像度化に対する従来の手法は、イメージを対象とし、ビデオシーケンスからのピクチャを対象としないことに留意されたい。周知の通り、ピクチャはフレームまたはフィールドでよい。
【００３０】
図５を参照すると、パッチシフティングを通じてベクトル量子化誤差を低減する例示的システムが、全般的に参照符号５００で示されている。システム５００は、パッチパッカ５１０の入力との信号通信における出力を有するパッチジェネレータを含む。パッチパッカ５１０の出力は、エンコーダ５１５の入力と信号通信で接続される。エンコーダの出力は、デコーダ５３０の入力と信号通信で接続される。デコーダ５３０の出力は、パッチエキストラクタ５３５の入力と信号通信で接続される。パッチエキストラクタ５３５の出力は、パッチライブラリ５５０の第１の入力と信号通信で接続される。
【００３１】
ダウンサイザ５２０の出力は、エンコーダ５２５の入力と信号通信で接続される。エンコーダ５２５の出力は、デコーダ５４０の入力と信号通信で接続される。デコーダ５４０の出力は、アップサイザ５４５の入力と信号通信で接続される。アップサイザ５４５の出力は、パッチサーチャ５５５の入力と信号通信で接続される。パッチサーチャ５５５の第１の出力は、パッチシフタ５６０の入力と信号通信で接続される。パッチサーチャ４４４の第２の出力は、パッチライブラリ５５０の第２の入力と信号通信で接続される。
【００３２】
パッチジェネレータ５０５の入力およびダウンサイザ５２０の入力は、入力ピクチャを受け取る、システム５００に対する入力として利用可能である。パッチシフタ５６０の出力は、高解像度ピクチャを出力する、システム５００の出力として利用可能である。
【００３３】
エンコーダ５１５、５２５からデコーダ５３０、５４０に情報を通信する必要に応じて、エンコーダ５１５とデコーダ５３０との間の接続、ならびにエンコーダ５２５とデコーダ５４０との間の接続は一時的なものであることがあることを理解されたい。
【００３４】
さらに、パッチジェネレータ５０５、パッチパッカ５１０、エンコーダ５１５、ダウンサイザ５２０、およびエンコーダ５２５がエンコーダ側に属し、デコーダ５３０、パッチエキストラクタ５３５、パッチライブラリ５５０、デコーダ５４０、アップサイザ５４５、パッチサーチャ５５５、およびパッチシフタ５６０がデコーダ側に属することを理解されたい。
【００３５】
さらに、一実施形態で、パッチシフタ５６０が、動き誘導ベクトル量子化誤差を有する１つまたは複数の高解像度置換パッチを受け取り、１つまたは複数の高解像度置換パッチを少なくとも空間的にシフトして、動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクトを低減する場合、パッチシフタがピクチャ再構築デバイスを含むとみなせることを理解されたい。１つまたは複数の高解像度置換パッチは、入力ビデオシーケンスに対応し、入力ビデオシーケンスから導出される。一実施形態でパッチシフタ内に含まれると仮定されるピクチャ再構築デバイスは、入力ビデオシーケンスに対応し、入力ビデオシーケンスから導出された１つまたは複数の空間的にシフトした高解像度置換パッチおよび１つまたは複数の小型化ピクチャを使用して入力ビデオシーケンスを再構築する。
【００３６】
パッチジェネレータ５０５は、抽出したパッチをクラスタ化し、代表的パッチを生成する。パッチパッカ５１０は、代表的パッチをパッチフレームにパックする。ビデオエンコーダ５１５および５２５は、それぞれ（パッチパッカ５１０によって供給される）パッチフレームおよび（ダウンサイザ５２０によって供給される）小型化フレームを符号化する。ダウンサイザ５２０は、デコーダ側に送信するために元のピクチャをより小型のサイズに小型化する。ビデオデコーダ５３０および５４０は、それぞれ（符号化）パッチフレームおよび（符号化）小型化フレームを復号化する。パッチエキストラクタ５３５は、パッチフレームからパッチを抽出する。アップサイザ５４５は、復号化小型化ピクチャをアップスケールする。パッチサーチャ５５５は、パッチライブラリ内のパッチを探索し、ピクチャ内のブロックを見つかったパッチで置き換える。パッチシフタ５６０は、パッチをシフトしてベクトル量子化誤差を補正する。
【００３７】
図６を参照すると、本原理を適用することのできる例示的ビデオエンコーダが、全般的に参照符号６００で示されている。ビデオエンコーダ６００は、コンバイナ６８５の非反転入力と信号通信する出力を有するフレーム順序付けバッファ６１０を含む。コンバイナ６８５の出力は、変換器および量子化器６２５の第１の入力と信号通信で接続される。変換器および量子化器６２５の出力は、エントロピーコーダ６４５の第１の入力、ならびに逆変換器および逆量子化器６５０の第１の入力と信号通信で接続される。エントロピーコーダ６４５の出力は、コンバイナ６９０の第１の非反転入力と信号通信で接続される。コンバイナ６９０の出力は、出力バッファ６３５の第１の入力と信号通信で接続される。
【００３８】
エンコーダコントローラ６０５の第１の出力は、フレーム順序付けバッファ６１０の第２の入力、逆変換器および逆量子化器６５０の第２の入力、ピクチャタイプ判定モジュール６１５の入力、マクロブロックタイプ（ＭＢタイプ）判定モジュール６２０の第１の入力、イントラ予測モジュール６６０の第２の入力、デブロッキングフィルタ６６５の第２の入力、動き補償器６７０の第１の入力、動き推定器６７５の第１の入力、および基準ピクチャバッファ６８０の第２の入力と信号通信で接続される。
【００３９】
エンコーダコントローラ６０５の第２の出力は、補助拡張情報（ＳＥＩ）インサータ６３０の第１の入力、変換器および量子化器６２５の第２の入力、エントロピーコーダ６４５の第２の入力、出力バッファ６３５の第２の入力、ならびにシーケンスパラメータセット（ＳＰＳ）およびピクチャパラメータセット（ＰＰＳ）インサータ６４０の入力と信号通信で接続される。
【００４０】
ＳＥＩインサータ６３０の出力は、コンバイナ６９０の第２の非反転入力と信号通信で接続される。
【００４１】
ピクチャタイプ判定モジュール６１５の第１の出力は、フレーム順序付けバッファ６１０の第３の入力と信号通信で接続される。ピクチャタイプ判定モジュール６１５の第２の出力は、マクロブロックタイプ判定モジュール６２０の第２の入力と信号通信で接続される。
【００４２】
シーケンスパラメータセット（ＳＰＳ）およびピクチャパラメータセット（ＰＰＳ）インサータ６４０の出力は、コンバイナ６９０の第３の非反転入力と信号通信で接続される。
【００４３】
逆量子化器および逆変換器６５０の出力は、コンバイナ６１９の第１の非反転入力と信号通信で接続される。コンバイナ６１９の出力は、イントラ予測モジュール６６０の第１の入力およびデブロッキングフィルタ６６５の第１の入力と信号通信で接続される。デブロッキングフィルタ６６５の出力は、基準ピクチャバッファ６８０の第１の入力と信号通信で接続される。基準ピクチャバッファ６８０の出力は、動き推定器６７５の第２の入力および動き補償器６７０の第３の入力と信号通信で接続される。動き推定器６７５の第１の出力は、動き補償器６７０の第２の入力と信号通信で接続される。動き推定器６７５の第２の出力は、エントロピーコーダ６４５の第３の入力と信号通信で接続される。
【００４４】
動き補償器６７０の出力は、スイッチ６９７の第１の入力と信号通信で接続される。イントラ予測モジュール６６０の出力は、スイッチ６９７の第２の入力と信号通信で接続される。マクロブロックタイプ判定モジュール６２０の出力は、スイッチ６９７の第３の入力と信号通信で接続される。スイッチ６９７の第３の入力は、（制御入力、すなわち第３の入力と比較して）スイッチの「データ」入力を動き補償器６７０で供給すべきか、それともイントラ予測モジュール６６０で供給すべきかを決定する。スイッチ６９７の出力は、コンバイナ６１９の第２の非反転入力およびコンバイナ６８５の反転入力と信号通信で接続される。
【００４５】
フレーム順序付けバッファ６１０の第１の入力およびエンコーダコントローラ６０５の入力は、入力ピクチャを受け取る、エンコーダ６００の入力として利用可能である。さらに、補助拡張情報（ＳＥＩ）インサータ６３０の第２の入力は、メタデータを受け取る、エンコーダ６００の入力として利用可能である。出力バッファ６３５の出力は、ビットストリームを出力する、エンコーダ１００の出力として利用可能である。
【００４６】
図５のエンコーダ５１５および５２５のうちの１つまたは複数をエンコーダ６００として実装できることを理解されたい。
【００４７】
図７を参照すると、本原理を適用することのできる例示的ビデオデコーダが、全般的に参照符号７００で示されている。ビデオデコーダ７００は、エントロピーデコーダ７４５の第１の入力と信号通信で接続される出力を有する入力バッファ７１０を含む。エントロピーデコーダ７４５の第１の出力は、逆変換器および逆量子化器７５０の第１の入力と信号通信で接続される。逆変換器および逆量子化器７５０の出力は、コンバイナ７２５の第２の非反転入力と信号通信で接続される。コンバイナ７２５の出力は、デブロッキングフィルタ７６５の第２の入力およびイントラ予測モジュール７６０の第１の入力と信号通信で接続される。デブロッキングフィルタ７６５の第２の出力は、基準ピクチャバッファ７８０の第１の入力と信号通信で接続される。基準ピクチャバッファ７８０の出力は、動き補償器７７０の第２の入力と信号通信で接続される。
【００４８】
エントロピーデコーダ７４５の第２の出力は、動き補償器７７０の第３の入力、デブロッキングフィルタ７６５の第１の入力、およびイントラ予測器７６０の第３の入力と信号通信で接続される。エントロピーデコーダ７４５の第３の出力は、デコーダコントローラ７０５の入力と信号通信で接続される。デコーダコントローラ７０５の第１の出力は、エントロピーデコーダ７４５の第２の入力と信号通信で接続される。デコーダコントローラ７０５の第２の出力は、逆変換器および逆量子化器７５０の第２の入力と信号通信で接続される。デコーダコントローラ７０５の第３の出力は、デブロッキングフィルタ７６５の第３の入力と信号通信で接続される。デコーダコントローラ７０５の第４の出力は、イントラ予測モジュール７６０の第２の入力、動き補償器７７０の第１の入力、および基準ピクチャバッファ７８０の第２の入力と信号通信で接続される。
【００４９】
動き補償器７７０の出力は、スイッチ７９７の第１の入力と信号通信で接続される。イントラ予測モジュール７６０の出力は、スイッチ７９７の第２の入力と信号通信で接続される。スイッチ７９７の出力は、コンバイナ７２５の第１の非反転入力と信号通信で接続される。
【００５０】
入力バッファ７１０の入力は、入力ビットストリームを受け取る、デコーダ７００の入力として利用可能である。デブロッキングフィルタ７６５の第１の出力は、出力ピクチャを出力する、デコーダ７００の出力として利用可能である。
【００５１】
図５のデコーダ５３０および５４０のうちの１つまたは複数をデコーダ７００として実装できることを理解されたい。
【００５２】
上述のように、本原理は、パッチシフティングを通じてベクトル量子化誤差を低減する方法および装置を対象とする。さらに詳細には、少なくとも１つの実施形態では、置換高解像度パッチをシフトし、回復後高解像度ビデオの時空的平滑化を図ることにより、ベクトル量子化誤差によって引き起こされるジッタリングアーチファクトを低減する。
【００５３】
（例えば、図１〜３に関して上記で説明した）本発明者等の超解像度ベースのデータプルーニングフレームワークに関して方法を開発したが、アルゴリズムは、ベクトル量子化、およびパッチ置換に関わるすべてのシステムに対して適用可能である。例えば、上述の第１の従来技術の手法（および類似の手法）での例に基づくイメージ超解像度、ならびにビデオ要約（ｖｉｄｅｏ  ｅｐｉｔｏｍｅ）および従来型ベクトル量子化ベースのイメージ／ビデオ圧縮システムに本原理を適用することができる。要約ベースの手法は、イメージ（またはビデオ）をパッチに分割し、イメージを、代表的パッチを含む小型ミニチュア、およびイメージ内のパッチを要約ミニチュア内のパッチにマッピングする主観的マップとして表す。小型ミニチュア（すなわち、要約）は、元のイメージまたはビデオの圧縮バージョンとみなすことができ、したがって、潜在的には要約を圧縮目的で使用することができる。
【００５４】
一般性のために、以下の２つの構成要素を含む抽象システムに焦点を当てる。（１）イグザンプル（または代表的）パッチ生成、および（２）パッチ置換。異なる応用例では、そのようなパラダイムは変形形態を有することがある。例えば、上述の第１の従来技術の手法では、イグザンプルパッチ生成は、クラスタ化することなくイメージデータベースからパッチを収集することによって実現される。本発明者等の事例に基づく超解像度化方法では（他の何らかのベクトル量子化ベースの圧縮方式も同様）、イグザンプル（または代表的）パッチが、入力ビデオ／イメージから抽出されるパッチをクラスタ化することによって生成される。
【００５５】
図１３を参照すると、パッチシフティングを通じてベクトル量子化誤差を低減する例示的方法が、全般的に参照符号１３００で示されている。方法１３００は、図５に示すエンコーダ側で実行される機能に対応する。方法１３００は開始ブロック１３０５を含み、開始ブロック１３０５は、機能ブロック１３１０および機能ブロック１３３０に制御を渡す。機能ブロック１３１０は高解像度パッチを抽出し、機能ブロック１３１５に制御を渡す。機能ブロック１３１５は高解像度パッチをクラスタ化し、各クラスタについて代表的高解像度パッチを得て、機能ブロック１３２０に制御を渡す。機能ブロック１３２０は、代表的高解像度パッチを高解像度フレームにパックし、機能ブロック１３２５に制御を渡す。機能ブロック１３２５は、高解像度パッチフレームおよびパッチサイズ導出データを符号化し、終了ブロック１３９９に制御を渡す。機能ブロック１３３０は元のピクチャを小型化して小型化ピクチャを得て、機能ブロック１３３５に制御を渡す。機能ブロック１３３５は小型化ピクチャを符号化し、終了ブロック１３９９に制御を渡す。
【００５６】
図１４を参照すると、パッチライブラリを生成する例示的方法が、全般的に参照符号１４００で示されている。方法１４００は開始ブロック１４０５を含み、開始ブロック１４０５は機能ブロック１４１０に制御を渡す。機能ブロック１４１０は、高解像度パッチフレームを受け取って復号化し、機能ブロック１４１５に制御を渡す。機能ブロック１４１５は、パッチフレームから高解像度パッチを抽出し、機能ブロック１４２０に制御を渡す。機能ブロック１４２０は、抽出した高解像度パッチを使用してパッチライブラリを作成し、終了ブロック１４９９に制御を渡す。
【００５７】
図１５を参照すると、パッチシフティングを通じてベクトル量子化誤差を低減する別の例示的方法が、全般的に参照符号１５００で示されている。方法１５００は、図５に示すデコーダ側上で実行される機能に対応する。方法１５００は開始ブロック１５０５を含み、開始ブロック１５０５は機能ブロック１５１０に制御を渡す。機能ブロック１５１０は小型化ピクチャを大型化し、機能ブロック１５１５に制御を渡す。機能ブロック１５１５は、低解像度パッチを高解像度パッチで置き換え、機能ブロック１５２０に制御を渡す。機能ブロック１５２０は、高解像度パッチを空間的にシフトし、最良のパッチ位置を得て、機能ブロック１５２５に制御を渡す。機能ブロック１５２５は、空間的にシフトした高解像度パッチを使用して入力ビデオシーケンスを再構築し、終了ブロック１５９９に制御を渡す。
【００５８】
アーチファクトを低減するパッチシフティング
イグザンプルパッチ生成構成要素がクラスタ化プロセスを含む場合、クラスタ化プロセスの結果、ベクトル量子化誤差が生じる。異なるタイプの量子化誤差が存在することがある。１つのタイプの量子化誤差は、図４に示すように、動きによって引き起こされる。
【００５９】
本原理に従って、回復プロセス中にイグザンプル（代表的）パッチをシフトすることにより、動きの結果として生じる量子化誤差を解決する。
【００６０】
パッチシフティング
事例に基づく超解像度化のケースでは、回復後イメージまたはビデオフレーム内にホールを生み出すことなく高解像度パッチをシフトするために、クラスタ化中に生成されたイグザンプルパッチは、置換用の低解像度フレーム内のパッチよりも大きくなければならない。例えば、フレーム内の低解像度パッチのサイズがＮ×Ｎピクセルである場合、代表的パッチのサイズは、Ｍ＞ＮとしてＭ×Ｍでなければならない。したがって、１次元での最大パッチシフトはＭ−Ｎである。図８を参照すると、拡大パッチが、全般的に参照符号８００で示されている。置換用のフレーム内の低解像度パッチ８１０も示されている。図からわかるように、拡大パッチ８００は、他の「フレーム領域」内に延びる。
【００６１】
本発明者等の現在の事例に基づく超解像度化システムでは、Ｎ×Ｎピクセルサイズを有する１組のパッチに対してクラスタ化プロセスを実行する。しかし、クラスタ化プロセスを行った後、Ｍ×Ｍピクセルサイズを有する、対応する拡大パッチを平均することによって代表的パッチを生成する。拡大パッチは、追加の境界拡張（各次元でＭ−Ｎピクセル）を伴うクラスタ化のために使用されるパッチである。境界のパッチについて、フレームの外側のエリアに追加のピクセルを補充することによって拡大パッチを作成する。例えば、ブラックピクセルを補充する、境界のピクセルを複製するなどの、異なる補充の方策を使用することができる。
【００６２】
デコーダ側では、パッチ置換およびシフティングプロセスの前に、パッチマッチングのための通常の代表的パッチ（Ｎ×Ｎピクセルブロック）をクロッピングによって拡大パッチから作成する。フレーム回復プロセスの間、低解像度イメージ内の所与のパッチ位置の低解像度パッチを、ライブラリ内の通常の代表的パッチ（Ｎ×Ｎピクセルブロック）とマッチングする。最小の距離を有するライブラリ内のパッチを候補として選択する。次いで、（例えば、図８の）拡大イグザンプルパッチを使用するパッチシフティングプロセスを適用し、拡大イグザンプルパッチの露出部分（すなわち、低解像度パッチを置き換える部分）と、置換用の低解像度パッチ（図３）との間の最小距離が得られるシフト座標を見つける。このことは本質的に、パッチ発見およびパッチシフティングを含む２段階プロセスである。これらのステップを、パッチマッチングステップごとにパッチシフティングも適用するように組み合わせることができ、その結果、最良のパッチ候補および最良のパッチシフト座標を同時に得ることができる。しかし、そのような共同プロセスは、計算コストがはるかに高い。
【００６３】
ベクトル量子化圧縮応用例では、パッチを位置合せするために使用することのできる低解像度イメージおよび低解像度パッチはない。しかし、本明細書の後で説明する時空的平滑化を図ることにより、パッチシフティングをやはり達成することができる。
【００６４】
時空的平滑化
上記では、空間的および時間的制約を考慮することなく、単純なマッチングプロセスによってパッチシフティングが実現される。その結果、時空的整合性が実施されないので、回復後にアーチファクトが依然として見えることがある。
【００６５】
本発明等の現在のシステムでは、その変数が拡大パッチのシフト座標であるコスト関数を最小限に抑えることによって時空的制約が実施される。具体的には、ｉ番目の拡大パッチＰｉについて、シフト座標はＳｉ＝（ｘｉ，ｙｉ）である。ただしｘｉはピクセル単位で測定した水平シフトであり、ｙｉは垂直シフトである。空間的制約のみを考慮する場合、コスト関数を以下のように構築することができる。
【００６６】
【数１】
0005844745.tif 000002
【００６７】
上式で、Ｓｉはｉ番目のパッチのシフト座標であり、λは重み因子であり、Ｃ１は、シフトしたパッチとテンプレートパッチとの間の差を測定するコスト関数である（テンプレートパッチは、事例に基づく超解像度化のケースでは低解像度パッチである）。Ｔ（．）が、シフト座標Ｓｉに従ってＭｉのサイズをマッチングするために拡大パッチをシフトし、クロッピングし、小型化する変換であるとして、テンプレートパッチがＭｉであり、シフトし、クロッピングしたパッチがＴ（Ｐｉ｜Ｓｉ）である場合、Ｃ１が
【００６８】
【数２】
0005844745.tif 000003
【００６９】
と定義される。Ｃ２がｉ番目のパッチの境界ピクセルを使用して定義される。境界エリアをΩと表す。その場合、
【００７０】
【数３】
0005844745.tif 000004
【００７１】
であり、ただし
【００７２】
【数４】
0005844745.tif 000005
【００７３】
は境界エリアΩ内に制限される距離計算を表す。Ｉは、最後の反復による回復後ビデオフレームである。Ｃ２に関する他の代替コスト関数、例えば、パッチ差を計算するためにピクセルではなくイメージ勾配を使用するコスト関数も使用できることを理解されたい。アルゴリズムは、Ｃ１コスト関数のみで式（２）のコスト関数を最小限に抑えることによって初期値Ｓ１、Ｓ２、．．．、ＳＭで開始する反復プロセスである。続く反復では、Ｃ２関数を使用する。
【００７４】
上記の構築は、時間的整合性を考慮に入れない。時間的整合性を考慮する場合、パッチシフティングの前に動きベクトルフィールドを計算しなければならない。本発明の現在のシステムでは、各パッチ位置について前方動きベクトルおよび後方動きベクトルをどちらも計算する。前方動きベクトルは、現フレーム内のパッチの、次のフレーム内の対応するパッチと比較した変位である（図９参照）。後方動きベクトルは、現フレーム内のパッチの、前のフレーム内の対応するパッチと比較した変位である（図１０参照）。図９を参照すると、前方動きベクトルが、全般的に参照符号９００で示されている。前方動きベクトル９００は、ｉ番目のフレーム９１０および（Ｉ＋１）番目のフレーム９２０に対応する。図１０を参照すると、後方動きベクトルが、全般的に参照符号１０００で示されている。後方動きベクトル１０００は、（ｉ−１）番目のフレーム１０１０およびｉ番目のフレーム９１０に対応する。
【００７５】
時間的整合性を考慮に入れると、コスト関数は以下のようになる。
【００７６】
【数５】
0005844745.tif 000006
【００７７】
上式で、Ｃ３は、以下のような時間的整合性を実施するコスト関数である。
【００７８】
【数６】
0005844745.tif 000007
【００７９】
上式で、Ｆ（Ｍｉ）は、その前方動きベクトルに従ってパッチＭｉに対応する次のフレーム内のパッチである。パッチＭｉの左上隅の座標が（ｘ，ｙ）である場合、次のビデオフレーム内の対応するパッチの左上隅の座標は、（ｘ＋Ｕ（ｘ，ｙ），ｙ＋Ｖ（ｘ，ｙ））であるべきである（図９）。同様に、Ｂ（Ｍｉ）は、その後方動きベクトルに従ってパッチＭｉに対応する前のフレーム内のパッチである。
【００８０】
拡大パッチのシフト座標Ｓｉは、テンプレート（ｉ番目の低解像度パッチ）およびその隣接エリア（ｉ番目のパッチの境界ピクセル）のみに依存するので、式（３）のコスト関数は、実際にはパッチ上のマルコフ確率場（ＭＲＦ）を定義する。マルコフ確率場の最小化は、限定はしないが、例えば、勾配降下、確率伝播、モンテカルロなどの様々な手法によって実現することができる。本発明者等の現在のシステムでは、勾配降下手法が効率的であり、満足の行く結果を与えるので、勾配降下手法を使用する。最小化手順は、以下のような反復プロセスである（図１１）。
１．時空的制約なしにパッチをシフトすることによってすべてのフレーム内のすべてのパッチのシフト座標を初期化する。このことは、Ｃ２項およびＣ３項のない式（３）のコスト関数を最小限に抑えることと同等である。
２．各フレームについて、Ｃ２項およびＣ３項を有する式（３）のコスト関数を最小限に抑える。その後、選択したパッチおよびシフト座標を使用して、高解像度フレームを回復する。
３．停止条件を満たす場合、アルゴリズムから出る。そうでない場合、ステップ２に戻る。
【００８１】
様々な停止条件を使用することができる。１つの可能な選択肢は、最後の反復と現反復の合計コストの差が一定のしきい値未満であるときにアルゴリズムを停止させることである。
【００８２】
本原理の一実施形態では、本発明者等の提案する方法の最適化フレームワークがマルコフ確率場（ＭＲＦ）に基づくことに留意されたい。前述の第１の従来技術の手法は、ＭＲＦフレームワークを使用してパッチの選択を最適化したが、本発明者等は、ＭＲＦを使用してパッチをシフトし、ベクトル量子化誤差によって引き起こされるアーチファクトを最小限に抑えることにさらに留意されたい。
【００８３】
図１１を参照すると、パッチングシフティングのための例示的方法が、全般的に参照符号１１００で示されている。方法１１００は開始ブロック１１０５を含み、開始ブロック１１０５は機能ブロック１１１０に制御を渡す。機能ブロック１１１０は低解像度フレームおよび拡大イグザンプルパッチを入力し、機能ブロック１１１５に制御を渡す。機能ブロック１１１５は、すべてのフレームに関するすべてのパッチのシフト座標を初期化し、機能ブロック１１２０に制御を渡す。機能ブロック１１２０は、コスト関数を最小限に抑えて最良のシフト座標を見つけ、機能ブロック１１２５に制御を渡す。機能ブロック１１２５は、パッチおよび最良のシフト座標を使用して高解像度フレームを回復し、判定ブロック１１３０に制御を渡す。判定ブロック１１３０は、コスト関数が収束したか否かを判定する。収束した場合、機能ブロック１１３５に制御を渡す。収束しない場合、機能ブロック１１２０に制御を返す。機能ブロック１１３５は、最良のシフト座標を出力し、終了ブロック１１９９に制御を渡す。
【００８４】
サブピクセルパッチシフティング
オブジェクトまたは背景の動きが非常に小さい場合、前述の時空的制約を使用する場合であっても、ジッタリングアーチファクトがまだ見えることになる。サブピクセルパッチシフティングを使用して、パッチ位置合せをより正確にする。サブピクセルパッチシフティングを使用するアルゴリズムは、時空的平滑化を図ることに関して上記で説明したものとほぼ同じである。違いは、シフト座標が分数値、例えば１／２ピクセル、１／３ピクセルなどを取ることである。
【００８５】
サブピクセルパッチシフティングを使用することは、式（３）のＭＲＦコスト関数についてより多くの状態数（すなわち、シフト座標の空間のサイズ）が存在し、したがってサブピクセルパッチシフティングが通常のパッチシフティングよりも複雑となることを意味する。計算複雑さを低減する一方法は、以下のような階層型マッチング方式を使用することである。まず、ピクセルパッチシフティング方式を使用して、パッチの位置を概算で求め、次いで、狭い範囲でのサブピクセルパッチシフティングが続き、パッチ位置を改善する。
【００８６】
より良好な代表的パッチの生成
今までのところは、ビデオ回復段階中にパッチシフティングを適用するだけである。しかし、クラスタ化プロセス中により良好な代表的パッチを生成するためにパッチシフティングを使用することもできる。
【００８７】
代表的パッチは通常、クラスタ化中にクラスタ内のすべてのパッチを平均することによって生成される。パッチ内のオブジェクト縁部が平均化の前に位置合せされない場合、平均化プロセスの結果、一般には、得られるパッチイメージの解像度は低くなる。したがって、オブジェクト縁部をより良好に保持することができるように、平均化プロセスの前にパッチシフティングを適用してパッチを位置合せすることができる。各クラスタについて、以下の反復手順によって位置合せを実現することができる。
１．クラスタ内のすべてのパッチを平均し、クラスタの初期代表的パッチを得る。
２．クラスタ内のパッチのうちの所与の各パッチを代表的パッチとマッチングして、（例えば、ユークリッド距離などを使用して）全体の差を最小限に抑えることにより、クラスタ内の各パッチを代表的パッチに位置合せする。
３．すべてのパッチがゼロシフトを有する場合、アルゴリズムは停止し、代表的パッチを出力する。そうでない場合、シフトしたパッチを平均することによって代表的パッチを再計算し、ステップ２に戻る。
【００８８】
前述の手法とは別に、より良好な代表的パッチを生成することは、例えば、第１の例示的手法や第２の例示的手法などの他の手法でも実現することができる。第１の例示的手法では、クラスタ内のパッチを平均するのではなく、平均パッチから最小の距離を有するパッチのうちの１つをクラスタから選ぶことができる。第２の例示的手法では、クラスタ内のパッチを平均するではなく、クラスタ内のパッチのうちの一部のみを使用して平均化を実行すると共に、クラスタ中心（すなわち、平均パッチ）から逸脱し過ぎているアウトライアパッチを除外することができる。
【００８９】
より一般的なパッチ変換への拡張
パッチシフティングは、一般的なパッチ幾何学的変換の特殊ケースである。したがって、パッチシフティングの概念は、限定はしないが、ズームイン／アウト、回転、射影変換などを含むより一般的な幾何学的変換に対処する、より汎用の変換に一般化することができる。こうした変換を組み込むアルゴリズムは、シフト座標をより一般的な変換パラメータで置き換えることにより、時空的平滑化を図ることに関して本明細書の上記で与えたアルゴリズムと同様である。そのようなパラメータの例は、限定はしないが、変換パラメータ、回転パラメータ、投射パラメータなどを含む。しかし、一般的なパッチ変換の主な問題は、計算複雑さがパッチシフティングよりもずっと高くなることである。
【００９０】
図１２を参照すると、改良型代表的パッチを生成する例示的方法が、全般的に参照符号１２００で示されている。方法１２００は開始ブロック１２０５を含み、開始ブロック１２０５は機能ブロック１２１０に制御を渡す。機能ブロック１２１０はクラスタおよびそのパッチを入力し、機能ブロック１２１５に制御を渡す。機能ブロック１２１５は、初期の代表的パッチを計算し、機能ブロック１２２０に制御を渡す。機能ブロック１２２０は、パッチを代表的パッチと位置合せし、判定ブロック１２２５に制御を渡す。判定ブロック１２２５は、すべてのパッチがゼロシフトを有するか否かを判定する。そうである場合、機能ブロック１２３０に制御を渡す。そうでない場合、機能ブロック１２３５に制御を渡す。機能ブロック１２３０は代表的パッチを出力し、終了ブロック１２９９に制御を渡す。機能ブロック１２３５は代表的パッチを再計算し、機能ブロック１２２０に制御を返す。
【００９１】
実験結果
本発明者等は、例に基づくビデオ超解像度応用例について様々なビデオに対してパッチシフティングアルゴリズムをテストした。結果は、サブピクセルシフトおよびＭＲＦ最適化を伴うパッチシフティングアルゴリズムが、動きによって引き起こされるジッタリングアーチファクトを著しく低減することを示している。
【００９２】
様々な実施形態および変形形態
１．ＭＲＦベースのフレームワークを何らかの他のコスト関数ベースの定式化で置き換えることができる。
２．様々な最適化方法によって式（３）のＭＲＦコスト関数を最小限に抑えることができる。
３．式（３）の第２の項を他の境界条件で置き換えることができる。
４．式（３）の第３の項について様々な（異なる）定式化を使用することができる。
５．より良好な代表的パッチを生成することに関して本明細書で説明した方法の、様々な他の方法および手法での置換え。
次に、その一部を上記で述べた、本発明の多くの付随する利点／特徴のうちの一部の説明を与える。例えば、１つの利点／特徴は、入力ビデオシーケンスから、１つまたは複数の高解像度置換パッチを生成するパッチジェネレータを有する装置である。１つまたは複数の高解像度置換パッチは、入力ビデオシーケンスの再構築中に１つまたは複数の低解像度パッチを置き換えるためのものである。パッチジェネレータは、パッチ空間シフティングプロセスに対応するデータを使用して、１つまたは複数の高解像度置換パッチを生成する。パッチ空間シフティングプロセスは、１つまたは複数の高解像度置換パッチ内の動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクトを低減するためのものである。データは、パッチ空間シフティングプロセスでの使用に適するようにするために１つまたは複数の低解像度パッチのパッチサイズよりも大きいパッチサイズを有するような１つまたは複数の高解像度置換パッチを生成するように、１つまたは複数の高解像度置換パッチのパッチサイズを少なくとも導出するためのものである。
【００９３】
別の利点／特徴は、上述のようなパッチジェネレータを有する装置であり、動き誘導ベクトル量子化誤差が、１つまたは複数の高解像度置換パッチの生成中に適用される量子化プロセスによって引き起こされる。
【００９４】
さらに別の利点／特徴は、パッチジェネレータを有する装置であり、上述のように、動き誘導ベクトル量子化誤差が、１つまたは複数の高解像度置換パッチの生成中に適用される量子化プロセスによって引き起こされ、量子化プロセスが、入力ビデオシーケンスから抽出された複数のパッチに適用されるクラスタ化プロセスに対応し、クラスタ化プロセスが、１つまたは複数の基準に基づく同様の特性を有する複数のパッチのうちのパッチを互いにグループ化するためのものであり、１つまたは複数の高解像度置換パッチが、複数のパッチのうちのパッチから導出される。
【００９５】
さらに別の利点／特徴は、パッチジェネレータを有する装置であり、量子化プロセスが、入力ビデオシーケンスから抽出された複数のパッチに適用されるクラスタ化プロセスに対応し、クラスタ化プロセスが、１つまたは複数の基準に基づく同様の特性を有する複数のパッチのうちのパッチを互いにグループ化するためのものであり、上述のように、１つまたは複数の高解像度置換パッチが、複数のパッチのうちのパッチから導出され、クラスタ化プロセスが、同一のクラスタ内の複数のパッチのうちのパッチを平均することを含み、同一のクラスタ内に含めるために複数のパッチのうちのパッチを選択することに続いて、同一のクラスタ内の複数のパッチのうちのパッチの平均化の前に、平均化に備えて複数のパッチのうちのパッチ内のオブジェクト縁部を位置合せするために、パッチ空間シフティングプロセスが、複数のパッチのうちのパッチに適用される。
【００９６】
さらに、別の利点／特徴は、パッチジェネレータを有する装置であり、クラスタ化プロセスが、同一のクラスタ内の複数のパッチのうちのパッチを平均することを含み、同一のクラスタ内に含めるために複数のパッチのうちのパッチを選択することに続いて、同一のクラスタ内の複数のパッチのうちのパッチの平均化の前に、上述のように、平均化に備えて複数のパッチのうちのパッチ内のオブジェクト縁部を位置合せするために、パッチ空間シフティングプロセスが、複数のパッチのうちのパッチに適用され、同一のクラスタ内の複数のパッチのうちのパッチの一部だけが、クラスタ中心からの対応するパッチ距離に基づいて平均される。
【００９７】
さらに、別の利点／特徴は、上述のようなパッチジェネレータを有する装置であり、動き誘導ベクトル量子化誤差が、入力ビデオシーケンスの再構築中に実行されるパッチ置換プロセスによって引き起こされる。
【００９８】
さらに、別の利点／特徴は、上述のようなパッチジェネレータを有する装置であり、装置は、入力ビデオシーケンスから１つまたは複数の小型化ピクチャを生成するダウンサイザと、高解像度置換パッチおよび１つまたは複数の小型化ピクチャを、結果として得られるビットストリームに符号化する、パッチジェネレータおよびダウンサイザと信号通信する１つまたは複数のビデオエンコーダとをさらに含む。
【００９９】
さらに、別の利点／特徴は、上述のようなパッチジェネレータを有する装置であり、方法がビデオエンコーダで実行される。
【０１００】
本明細書の教示に基づいて、本原理のこれらおよび他の特徴および利点を当業者は容易に確認することができる。ハードウェア、ソフトウェア、ファームウェア、専用プロセッサ、またはそれらの組合せの様々な形態で本原理の教示を実施できることを理解されたい。
【０１０１】
最も好ましくは、本原理の教示は、ハードウェアとソフトウェアの組合せとして実装される。さらに、ソフトウェアをプログラム記憶ユニット上に有形に具体化されたアプリケーションプログラムとして実装することができる。アプリケーションプログラムは、任意の適切なアーキテクチャを備えるマシンにアップロードし、実行することができる。好ましくは、マシンは、１つまたは複数の中央演算処理装置（「ＣＰＵ」）、ランダムアクセスメモリ（「ＲＡＭ」）、入出力（「Ｉ／Ｏ」）インターフェースなどのハードウェアを有するコンピュータプラットフォーム上に実装される。コンピュータプラットフォームはまた、オペレーティングシステムおよびマイクロ命令コードをも含むことができる。本明細書に記載の様々なプロセスおよび機能は、ＣＰＵによって実行することのできる、マイクロ命令コードの一部、もしくはアプリケーションプログラムの一部、またはそれらの任意の組合せでよい。さらに、追加のデータ記憶ユニットやプリンティングユニットなどの様々な他の周辺ユニットをコンピュータプラットフォームに接続することができる。
【０１０２】
添付の図面に示す構成システム構成要素および方法の一部が好ましくはソフトウェアで実装されるので、システム構成要素またはプロセス機能ブロック間の実際の接続は、本原理がプログラムされる方式に応じて異なることがあることをさらに理解されたい。本明細書の教示が与えられると、本原理のこれらおよび類似の実装または構成を当業者は企図することができることになる。
【０１０３】
添付の図面を参照しながら本明細書で例示的実施形態を説明したが、本原理がこうした厳密な実施形態に限定されず、本原理の範囲または趣旨から逸脱することなく、当業者は本原理の中で様々な変更および修正を実施できることを理解されたい。すべてのそのような変更および修正は、添付の特許請求の範囲に記載の本原理の範囲内に包含されるものとする。
本発明は以下の態様を含む。
（付記１）
入力ビデオシーケンスから、１つまたは複数の高解像度置換パッチを生成するパッチジェネレータ（５０５）であって、前記１つまたは複数の高解像度置換パッチが、前記入力ビデオシーケンスの再構築中に１つまたは複数の低解像度パッチを置き換えるためのものである、パッチジェネレータ（５０５）を備える装置であって、
前記パッチジェネレータ（５０５）は、パッチ空間シフティングプロセスに対応するデータを使用して、１つまたは複数の高解像度置換パッチを生成し、前記パッチ空間シフティングプロセスは、前記１つまたは複数の高解像度置換パッチ内の動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクトを低減するためのものであり、前記データは、前記パッチ空間シフティングプロセスでの使用に適するようにするために前記１つまたは複数の低解像度パッチのパッチサイズよりも大きいパッチサイズを有するような前記１つまたは複数の高解像度置換パッチを生成するように、前記１つまたは複数の高解像度置換パッチのパッチサイズを少なくとも導出するためのものである、前記装置。
（付記２）
前記動き誘導ベクトル量子化誤差が、前記１つまたは複数の高解像度置換パッチの生成中に適用される量子化プロセスによって引き起こされる、付記１に記載の装置。
（付記３）
前記量子化プロセスが、前記入力ビデオシーケンスから抽出された複数のパッチに適用されるクラスタ化プロセスに対応し、前記クラスタ化プロセスが、１つまたは複数の基準に基づく同様の特性を有する前記複数のパッチのうちのパッチを互いにグループ化するためのものであり、前記１つまたは複数の高解像度置換パッチが、前記複数のパッチのうちの前記パッチから導出される、付記２に記載の装置。
（付記４）
前記クラスタ化プロセスが、同一のクラスタ内の前記複数のパッチのうちの前記パッチを平均することを含み、前記同一のクラスタ内に含めるために前記複数のパッチのうちの前記パッチを選択することに続いて、前記同一のクラスタ内の前記複数のパッチのうちの前記パッチの平均化の前に、前記平均化に備えて前記複数のパッチのうちの前記パッチ内のオブジェクト縁部を位置合せするために、前記パッチ空間シフティングプロセスが、前記複数のパッチのうちの前記パッチに適用される、付記３に記載の装置。
（付記５）
前記複数のパッチのうちの前記パッチの一部だけが、クラスタ中心からの対応するパッチ距離に基づいて平均される、付記４に記載の装置。
（付記６）
前記動き誘導ベクトル量子化誤差が、前記入力ビデオシーケンスの再構築中に実行されるパッチ置換プロセスによって引き起こされる、付記１に記載の装置。
（付記７）
前記入力ビデオシーケンスから１つまたは複数の小型化ピクチャを生成するダウンサイザ（５２０）と、
前記高解像度置換パッチおよび前記１つまたは複数の小型化ピクチャを、結果として得られるビットストリームに符号化する、前記パッチジェネレータおよび前記ダウンサイザと信号通信する１つまたは複数のビデオエンコーダ（５１５、５２５）と、
をさらに備える、付記１に記載の装置。
（付記８）
前記方法がビデオエンコーダで実行される、付記１に記載の装置。
（付記９）
プロセッサを使用して実行される方法であって、
入力ビデオシーケンスから、１つまたは複数の高解像度置換パッチを生成するステップであって、前記１つまたは複数の高解像度置換パッチが、前記入力ビデオシーケンスの再構築中に１つまたは複数の低解像度パッチを置き換えるためのものである、ステップ
を含み、
前記生成するステップは、パッチ空間シフティングプロセスに対応するデータを使用して、前記１つまたは複数の高解像度置換パッチを生成し、前記パッチ空間シフティングプロセスは、前記１つまたは複数の高解像度置換パッチ内の動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクトを低減するためのものであり、前記データは、前記パッチ空間シフティングプロセスでの使用に適するようにするために前記１つまたは複数の低解像度パッチのパッチサイズよりも大きいパッチサイズを有するような前記１つまたは複数の高解像度置換パッチを生成するように、前記１つまたは複数の高解像度置換パッチのパッチサイズを少なくとも導出するためのものである、前記方法。
（付記１０）
前記動き誘導ベクトル量子化誤差は、前記１つまたは複数の高解像度置換パッチの生成中に適用される量子化プロセスによって引き起こされる、付記９に記載の方法。
（付記１１）
前記量子化プロセスが、前記入力ビデオシーケンスから抽出された複数のパッチに適用されるクラスタ化プロセス（１３１５）に対応し、前記クラスタ化プロセス（１３１５）が、１つまたは複数の基準に基づく同様の特性を有する前記複数のパッチのうちのパッチを互いにグループ化するためのものであり、前記１つまたは複数の高解像度置換パッチが、前記複数のパッチのうちの前記パッチから導出される、付記１０に記載の方法。
（付記１２）
前記クラスタ化プロセス（１３１５）が、同一のクラスタ内の前記複数のパッチのうちの前記パッチを平均することを含み、前記同一のクラスタ内に含めるために前記複数のパッチのうちの前記パッチを選択することに続いて、前記同一のクラスタ内の前記複数のパッチのうちの前記パッチの平均化の前に、前記平均化に備えて前記複数のパッチのうちの前記パッチ内のオブジェクト縁部を位置合せするために、前記パッチ空間シフティングプロセスが、前記複数のパッチのうちの前記パッチに適用される、付記１１に記載の方法。
（付記１３）
前記複数のパッチのうちの前記パッチの一部だけが、クラスタ中心からの対応するパッチ距離に基づいて平均される、付記１２に記載の方法。
（付記１４）
前記動き誘導ベクトル量子化誤差が、前記入力ビデオシーケンスの再構築中に実行されるパッチ置換プロセスによって引き起こされる、付記９に記載の方法。
（付記１５）
前記高解像度置換パッチ（１３２５）および前記１つまたは複数の小型化ピクチャを、結果として得られるビットストリーム（１３３５）に符号化するステップをさらに含む、付記９に記載の方法。
（付記１６）
ビデオエンコーダで実行される、付記９に記載の方法。
（付記１７）
動き誘導ベクトル量子化誤差を有する１つまたは複数の高解像度置換パッチを受け取り、前記１つまたは複数の高解像度置換パッチを少なくとも空間的にシフトして、前記動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクトを低減するパッチシフタ（５６０）であって、前記１つまたは複数の高解像度置換パッチが、入力ビデオシーケンスに対応し、入力ビデオシーケンスから導出されるパッチシフタ（５６０）と、
前記入力ビデオシーケンスに対応し、前記入力ビデオシーケンスから導出された１つまたは複数の空間的にシフトした高解像度置換パッチおよび１つまたは複数の小型化ピクチャを使用して前記入力ビデオシーケンスを再構築する、前記パッチシフタと信号通信するピクチャ再構築デバイス（５６０）と、
を備える、装置。
（付記１８）
前記入力ビデオシーケンスが、ビデオ圧縮用のベクトル量子化ベースの圧縮プロセス、例に基づくビデオ超解像度プロセス、ビデオ要約プロセス、およびビデオプルーニングプロセスのうちの少なくとも１つで再構築される、付記１７に記載の装置。
（付記１９）
前記高解像度置換パッチが、空間的制約および時間的制約を使用して、それぞれ空間的および時間的にシフトされる、付記１７に記載の装置。
（付記２０）
マルコフ確率場が使用され、再構築後ビデオシーケンス中の時空的平滑度が実施される、付記１７に記載の装置。
（付記２１）
前記マルコフ確率場がコスト関数として実装され、パッチシフト座標がコスト関数の変数として使用され、前記１つまたは複数の高解像度置換パッチのうちの対応するものに関する、対応するシフトが求められる、付記２０に記載の装置。
（付記２２）
空間シフティングがサブピクセルパッチシフティングを含み、前記ジッタの多いアーチファクトをさらに低減する、付記１７に記載の装置。
（付記２３）
前記サブピクセルパッチシフティングが階層型パッチマッチングプロセスで使用され、前記階層型パッチマッチングプロセスでは、ピクセルパッチシフティングプロセスを使用して、前記１つまたは複数の高解像度置換パッチのうちの１つによって置き換えられるべき低解像度パッチの位置を推定し、次いでサブピクセルパッチシフティングプロセスを実行して、推定を改善し、前記サブピクセルパッチシフティングプロセスでは、前記ピクセルパッチシフティングプロセスよりも狭い範囲を使用する、付記２２に記載の装置。
（付記２４）
ビットストリームから前記高解像度置換パッチおよび前記１つまたは複数の小型化ピクチャを復号化する前記パッチシフタと信号通信するビデオデコーダをさらに備える、付記１７に記載の装置。
（付記２５）
ビデオデコーダに含まれる、付記１７に記載の装置。
（付記２６）
プロセッサを使用して実行される方法であって、
動き誘導ベクトル量子化誤差を有する１つまたは複数の高解像度置換パッチを受け取るステップと、
前記１つまたは複数の高解像度置換パッチを少なくとも空間的にシフトして、前記動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクトを低減するステップ（１５２０）であって、前記１つまたは複数の高解像度置換パッチが、入力ビデオシーケンスに対応し、入力ビデオシーケンスから導出されるステップ（１５２０）と、
前記入力ビデオシーケンスに対応し、前記入力ビデオシーケンスから導出された１つまたは複数の空間的にシフトした高解像度置換パッチおよび１つまたは複数の小型化ピクチャを使用して前記入力ビデオシーケンスを再構築するステップ（１５２５）と、
を含む、前記方法。
（付記２７）
前記入力ビデオシーケンスが、ビデオ圧縮用のベクトル量子化ベースの圧縮プロセス、例に基づくビデオ超解像度プロセス、ビデオ要約プロセス、およびビデオプルーニングプロセスのうちの少なくとも１つで再構築される、付記２６に記載の方法。
（付記２８）
前記高解像度置換パッチが、空間的制約および時間的制約を使用して、それぞれ空間的および時間的にシフトされる、付記２６に記載の方法。
（付記２９）
マルコフ確率場が使用され、再構築後ビデオシーケンス中の時空的平滑度が実施される、付記２６に記載の方法。
（付記３０）
前記マルコフ確率場がコスト関数として実装され、パッチシフト座標が前記コスト関数の変数として使用され、前記１つまたは複数の高解像度置換パッチのうちの対応するものに関する、対応するシフトが求められる、付記２９に記載の方法。
（付記３１）
空間シフティングがサブピクセルパッチシフティングを含み、前記ジッタの多いアーチファクトをさらに低減する、付記２６に記載の方法。
（付記３２）
前記サブピクセルパッチシフティングが階層型パッチマッチングプロセスで使用され、前記階層型パッチマッチングプロセスでは、ピクセルパッチシフティングプロセスを使用して、前記１つまたは複数の高解像度置換パッチのうちの１つによって置き換えられるべき低解像度パッチの位置を推定し、次いでサブピクセルパッチシフティングプロセスを実行して、推定を改善し、前記サブピクセルパッチシフティングプロセスでは、前記ピクセルパッチシフティングプロセスよりも狭い範囲を使用する、付記３１に記載の方法。
（付記３３）
ビットストリームから前記高解像度置換パッチおよび前記１つまたは複数の小型化ピクチャを復号化するステップ（１４１０）をさらに含む、付記２６に記載の方法。
（付記３４）
ビデオデコーダで実行される、付記２６に記載の方法。
（付記３５）
その上に符号化されたビデオ信号データを有するコンピュータ可読記憶媒体であって、
入力ビデオシーケンスから生成された１つまたは複数の高解像度置換を含み、前記１つまたは複数の高解像度置換パッチは、前記入力ビデオシーケンスの再構築中に１つまたは複数の低解像度パッチを置き換えるためのものであり、
前記１つまたは複数の高解像度置換パッチが、パッチ空間シフティングプロセスに対応するデータを使用して生成され、前記パッチ空間シフティングプロセスが、前記１つまたは複数の高解像度置換パッチ内の動き誘導ベクトル量子化誤差によって引き起こされるジッタの多いアーチファクトを低減するためのものであり、前記データが、前記パッチ空間シフティングプロセスでの使用に適するようにするために前記１つまたは複数の低解像度パッチのパッチサイズよりも大きいパッチサイズを有するような前記１つまたは複数の高解像度置換パッチを生成するように、前記１つまたは複数の高解像度置換パッチのパッチサイズを少なくとも導出するためのものである、前記コンピュータ可読記憶媒体。
【図１】
0005844745.tif 000008
【図２】
0005844745.tif 000009
【図３】
0005844745.tif 000010
【図４】
0005844745.tif 000011
【図５】
0005844745.tif 000012
【図６】
0005844745.tif 000013
【図７】
0005844745.tif 000014
【図８】
0005844745.tif 000015
【図９】
0005844745.tif 000016
【図１０】
0005844745.tif 000017
【図１１】
0005844745.tif 000018
【図１２】
0005844745.tif 000019
【図１３】
0005844745.tif 000020
【図１４】
0005844745.tif 000021
【図１５】
0005844745.tif 000022