(57)【特許請求の範囲】
【請求項１】
解像度変換の対象である対象画像を画像源から取得する第１取得手段と、
前記対象画像以外の画像または前記対象画像を含む追加画像を前記画像源から取得する第２取得手段と、
前記追加画像内の注目画素に対応した前記対象画像内の点である対応点を推定する対応点推定を複数の手法で行うことで、前記追加画像内の少なくとも１つの画素に対して複数の前記対応点を得る推定手段と、
前記追加画像の前記注目画素の画素値を、前記対象画像内の複数の前記対応点でのサンプリング値として設定する設定手段と、
前記対象画像に含まれる複数の画素の画素値および位置と、複数の前記対応点の前記サンプリング値および位置を使用して、前記対象画像の解像度とは異なる解像度の画像を生成する生成手段と、を具備することを特徴とする解像度変換装置。
【請求項２】
前記推定手段は、前記追加画像に含まれる複数の画素を１つずつ注目画素として設定された注目画像領域に含まれる局所パターンに最も近い複数の注目画像領域に対応する前記対象画像内の複数の対応点を推定する対応点推定を複数の手法で行うことを特徴とする請求項１に記載の解像度変換装置。
【請求項３】
前記推定手段は、前記複数の手法として、前記対象画像と前記追加画像とが同一の画像である第１の対応点推定手法と、前記対象画像と前記追加画像とが異なる第２の対応点推定手法とを使用して前記対応点推定を行うことを特徴とする請求項１に記載の解像度変換装置。
【請求項４】
前記推定手段は、第１の対応点推定手法で用いられる注目画像領域のうち最大の注目画像領域の面積が、第２の前記対応点推定手法で用いられる領域の面積のうち最大の注目画像領域の面積の２倍以上である手法を使用して前記対応点推定を行うことを特徴とする請求項１に記載の解像度変換装置。
【請求項５】
前記対応点推定で得られた各対応点の、高解像度化に寄与する度合いを示す信頼度を算出する算出手段と、
前記信頼度により複数の対応点の間で順位付けを行い該順位がある順位未満の対応点を除去する除去手段と、を具備することを特徴とする請求項１に記載の解像度変換装置。
【請求項６】
前記対応点推定で得られた各対応点の、高解像度化に寄与する度合いを示す信頼度を算出する算出手段と、
前記信頼度が一定値以下の対応点を除去する除去手段と、を具備することを特徴とする請求項１に記載の解像度変換装置。
【請求項７】
前記算出手段は、ある対応点の信頼度として、該対応点以外のサンプリング点のうち最も近いサンプリング点との距離と、該対応点周辺の局所パターンの誤差との重み付き和を採用することを特徴とする請求項５または請求項６に記載の解像度変換装置。
【請求項８】
解像度変換の対象である対象画像を画像源から取得し、
前記対象画像以外の画像または前記対象画像を含む追加画像を前記画像源から取得し、
前記追加画像内の注目画素に対応した前記対象画像内の点である対応点を推定する対応点推定を複数の手法で行うことで、前記追加画像内の少なくとも１つの画素に対して複数の前記対応点を得、
前記追加画像の前記注目画素の画素値を、前記対象画像内の複数の前記対応点でのサンプリング値として設定し、
前記対象画像に含まれる複数の画素の画素値および位置と、複数の前記対応点の前記サンプリング値および位置を使用して、前記対象画像の解像度とは異なる解像度の画像を生成することを特徴とする解像度変換方法。
【請求項９】
コンピュータを、
解像度変換の対象である対象画像を画像源から取得する第１取得手段と、
前記対象画像以外の画像または前記対象画像を含む追加画像を前記画像源から取得する第２取得手段と、
前記追加画像内の注目画素に対応した前記対象画像内の点である対応点を推定する対応点推定を複数の手法で行うことで、前記追加画像内の少なくとも１つの画素に対して複数の前記対応点を得る推定手段と、
前記追加画像の前記注目画素の画素値を、前記対象画像内の複数の前記対応点でのサンプリング値として設定する設定手段と、
前記対象画像に含まれる複数の画素の画素値および位置と、複数の前記対応点の前記サンプリング値および位置を使用して、前記対象画像の解像度とは異なる解像度の画像を生成する生成手段として機能させるための解像度変換プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、入力画像からより高い解像度の画像を算出するための、解像度変換装置、方法およびプログラムに関する。
【背景技術】
【０００２】
高い解像度のテレビやディスプレイが普及してきている。テレビやディスプレイは、画像を表示する場合、画像データの画素数をパネルの画素数に変換する。特に、画素数を増やす高解像度化の変換において、線形内挿よりも鮮鋭な画像が得られる方法として、複数のフレームの情報を用い、画像の撮像過程（劣化過程）の逆変換を考えて高解像度の画像を復元する方法（以下、劣化逆変換法と呼ぶ）が知られている。
【０００３】
劣化逆変換法では、基準フレームに写る被写体が別のフレームにも写っていることに注目し、被写体の動きを画素間隔よりも高い精度（サブピクセル精度）で検出することで、被写体の各局所部分に対して微小に位置がずれた複数のサンプリング値を求め、それらの情報を統合することで高解像度化する。なお、画素値という用語は画像中の画素において撮像された輝度信号の強さを表すものとする。また、サンプリング値という用語は、画像上の任意のサブピクセル位置において撮像を行ったと考えるとき、その位置で撮像された輝度信号の強さを表すものとする。画素値が整数画素位置に対するものであるのに対し、サンプリング値は整数画素位置を含む任意のサブピクセル位置に対するものである。
【０００４】
より詳細に、劣化逆変換法を説明する。この方法では、低解像度のフレームが時系列で順次与えられた場合に、それらを順次高解像度のフレームに変換する。例えば、移動する自動車を撮影した動画像の時間的に前後する３枚のフレームを低解像度画像として用い、これら３枚のフレームのうち１枚のフレームを基準として高解像度化する。例えば、これを縦２倍、横２倍の解像度に高解像度化する。１枚のフレームのみを用いた場合、未知である高解像度画像の画素に対して、低解像度画像の画素（つまり既知のサンプリング値）はまばらである。この状態でも高解像度画像の画素値の推定は可能であるが、既知のサンプリング値を増やすことができれば、より正確に高解像度画像を得ることができる。そのために、劣化逆変換法では、基準フレーム以外の低解像度画像内で各画素の位置に写っている被写体が、基準フレームの画面内でどの位置に写っているかを検出し、その画素値を基準フレーム内の対応点におけるサンプリング値として用いる。
【０００５】
具体的には、例えば、ある画素を中心として低解像度画像から数画素四方のブロックを取り出し、このブロックと同じ大きさで、含まれる画素が取り出したブロックと近い画素値を持つ部分を基準フレーム内で探索する。探索はサブピクセル精度で行う（例えば、非特許文献１参照）。探索後、見つかった対応ブロックの中心を対応点とする。これにより、他のフレームに対応する画面の点Ａと基準フレームに対応する点Ｂとが同じ被写体の同じ位置として対応づけられる。以下、この対応づけのアルゴリズムをブロックマッチング法と呼ぶ。この対応は、点Ａを始点、点Ｂを終点とする動きベクトルで表される。サブピクセル精度で探索を行うため、動きベクトルの始点は画素の位置であるが、終点は一般に画素がない位置になる。このような動きベクトルを低解像度画像のすべての画素について求め、また、他の低解像度画像についても同様に各画素を始点とする基準フレームへの動きベクトルを検出する。基準フレームへの動きベクトルが得られたら、各動きベクトルの終点に始点の画素値を基準フレームのサンプリング値として配置する。最後に、このように非一様に配置されたサンプリング値から、格子状に一様に配置された高解像度画像の画素の値を求める。この変換（劣化逆変換）の方法は、例えばNon-uniform interpolation法、ＰＯＣＳ法、ＭＬ法やＭＡＰ法が知られている（例えば、非特許文献２参照）。
【０００６】
対応づけ方法は前記の局所的なブロックマッチング以外にも、例えば、画面の動きがカメラのパニングのように画面全体で一様な動きであると仮定し、例えば前記のブロックを画面全体に設定してブロックマッチング法で探索し、１つの動きベクトルを検出するグローバルモーション推定や、画面内の物体ごとの動きを推定するレイヤ動き推定（例えば、非特許文献３参照）などがあり、これらを用いることも可能である。
【非特許文献１】M. Shimizu et al., “Precise Sub-pixel Estimation on Area-based Matching,” in Proc. IEEE International Conference on Computer Vision, pp.90-97, 2001.
【非特許文献２】S. C. Park et al., “Super-Resolution Image Reconstruction: A Technical Overview,” IEEE Signal Processing Magazine, pp.21-36, May 2003.
【非特許文献３】J. Xiao et al., “Motion layer extraction in the presence of occlusion using graph cuts,” IEEE Transaction on Pattern Analysis and Machine Intelligence, vol. 27, no. 10, pp.1644-1659, Oct. 2005.
【発明の開示】
【発明が解決しようとする課題】
【０００７】
動き推定の方法には前述のように多くの方法があるが、どの方法が適しているかは画像により異なる。採用した動き推定の方法が画像に適していれば、より正確な高解像度画像が得られるが、採用した動き推定の方法が画像に適さない場合は、高解像度化により得られる画像は不鮮明になってしまう。
【０００８】
この発明は、上述した事情を考慮してなされたものであり、単一の動き推定方法を用いた高解像度化と比べ、より正確な高解像度画像を得る解像度変換装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述の課題を解決するため、本発明の解像度変換装置は、解像度変換の対象である対象画像を画像源から取得する第１取得手段と、前記対象画像以外の画像または前記対象画像を含む追加画像を前記画像源から取得する第２取得手段と、前記追加画像内の画素に対応した前記対象画像内の点である対応点を推定する対応点推定を複数の手法で行い、前記追加画像内で少なくとも１つの画素に対して複数の前記対応点推定手法によって対応点を得る推定手段と、前記追加画像の各画素値をその画素を注目画素とした場合の前記対象画像内の対応点でのサンプリング値として設定する設定手段と、前記対象画像に含まれる複数の画素の画素値および位置と、複数の対応点の前記サンプリング値および位置を使用して、前記対象画像の解像度を異なる解像度に変換した画像を生成する生成手段と、を具備することを特徴とする。
【発明の効果】
【００１０】
本発明の解像度変換装置、方法およびプログラムによれば、単一の動き推定方法を用いた高解像度化と比べ、より正確な高解像度画像を得ることができる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照しながら本発明の実施形態に係る解像度変換装置について詳細に説明する。なお、以下の実施形態中では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。  
（概略）  
従来、動き推定の答えは１つだという暗黙の了解があった。したがって、より正確に高解像度化を行うために、他のフレームから基準フレームへの１対１の対応を高い精度で求める努力をしていた。１対１の対応は物理現象としては正しいが、例えばAperture問題を考えると、１対１の対応である必然性はない。Aperture問題とは、画像内に同一の局所パターンが存在する場合に、ある局所パターンが複数の局所パターンと一致することで１対多対応が生じる問題である。Aperture問題は、画像内の各物体の動きを正確に推定したい場合には問題となる。しかし、解像度変換の目的は動きの正確な推定ではない。起こりうる複数の対応関係すべてを受け入れ、それらすべてを解像度変換に利用すれば、Aperture問題を起こす複数の局所パターンは、出力画像の正確さの向上に貢献する。
【００１２】
なお、Aperture問題やノイズの影響により、画像に対して複数の動き推定方法で動きベクトルを推定すると、得られる動きベクトルは通常、一致しない。推定された動きベクトルの中には、高解像度化による出力画像の正確さの向上に大きく寄与するものもあれば、あまり寄与しないものもある。出力画像の正確さの向上に大きく寄与するベクトルが得られるかどうかは、画像や動き推定方法に依存する。
【００１３】
本実施形態では、複数の動き推定方法で得られる１対多の対応関係をそのまま受け入れる。動き推定の答えは１つだという暗黙の了解を考えると、本実施形態では動きを推定しているわけではない。そこで便宜上、１対多の対応関係を推定することを対応点推定と呼ぶことにする。複数の対応点推定方法で対応関係を推定することで、他のフレーム内の１つの画素から、基準フレーム内の複数の点への対応関係が得られる。仮に１つの対応点推定方法で図１のような対応点１０２が得られたなら、複数の対応点推定方法による１対多の対応関係を受け入れれば、図２に示すように対応点２０１を増やせる。このとき、得られた対応点を用いて高解像度画像を得る際には、これらの対応関係すべてを使ってサンプリング値を配置し、劣化逆変換を実行する。なお、本実施形態では、例えば２つの異なる特性を持つ対応点推定方法を用意し、図３に示すように、第１の対応点推定方法を第１のフレーム、第２の対応点推定方法を第２のフレームに対して適用して複数の１対１の対応関係を求め、それらを統合して劣化逆変換を実行するといった用途にも利用できる。本実施形態によって、複数の対応点推定方法で得られる１対多の対応関係を利用した高解像度化を実現する。
【００１４】
（全体の構成）  
本実施形態の解像度変換装置について図４を参照して説明する。図４は、解像度変換装置を回路として実現する場合の一例であり、チップ構成を示す。また、別の一例として、後に、図５にパソコンやテレビ、ＤＶＤレコーダのように汎用ＣＰＵ上でソフトウェアにより実施する場合を示す。図４の場合、各ＤＳＰがＡＳＩＣやＦＰＧＡの回路でなくソフトウェアで実現されている場合にはプログラムを記録したＲＯＭを準備するか、予めＤＳＰ用のメモリにプログラムを読み込んでおく。図５の場合、ソフトウェアプログラムはあらかじめ不揮発記憶部５０６から一時記憶部５０１にプログラムを読み込んでおくものとする。
【００１５】
本実施形態の解像度変換装置は、図４に示すように、映像受付部４０１、ＤＳＰ１ ４０２、第１メモリ４０３、ＤＳＰ２ ４０４、第２メモリ４０５、第３メモリ４０６、ＤＳＰ３ ４０７、共有メモリ４０８、映像出力部４０９を含む。
【００１６】
映像受付部４０１は、映像源から、典型的には複数の画像（動画像の場合は、フレーム）を取り込む。便宜上、取り込んだ画像のうち解像度変換の対象とするものを対象画像、それ以外を追加画像と呼ぶことにする。ただし、追加画像は対象画像と同一の画像であってもよい。映像源は、例えば、映像をカメラやビデオ、ハードディスクなどの不揮発記憶装置である。
【００１７】
第１メモリ４０３、第２メモリ４０５、第３メモリ４０６は、映像受付部４０１から取り込んだ画像を記憶する。第１メモリ４０３、第２メモリ４０５、第３メモリ４０６は、それぞれＤＳＰ１ ４０２、ＤＳＰ２ ４０４、ＤＳＰ３ ４０７のワークエリアとして使用される。
【００１８】
共有メモリ４０８は、映像受付部４０１から取り込んだ画像を記憶する。この記憶動作の指示は、ＤＳＰが行ってもよいし、別途ＤＭＡ回路を用意してＤＭＡ回路に行わせてもよい。共有メモリ４０８は、すべてのＤＳＰからのアクセスを受けるために排他制御機能を備えている。
【００１９】
ＤＳＰ１ ４０２、ＤＳＰ２ ４０４、ＤＳＰ３ ４０７は、各ＤＳＰが必要になった時点で共有メモリ４０８から画像を読み込む。また、各メモリが画像を記憶している場合には、各ＤＳＰは対応する各メモリから画像を読み込む。ＤＳＰ１ ４０２とＤＳＰ２ ４０４は、対応点推定プログラムを内蔵し、各対応点推定プログラムによって画素に対応する対応点を求める。ＤＳＰ１ ４０２とＤＳＰ２ ４０４は、求めた対応点を、第３メモリ４０６または共有メモリ４０８に書き込む。共有メモリ４０８に対応点が書き込まれた場合には、ＤＳＰ３ ４０７が必要となったとき共有メモリ４０８から対応点を読み込む。また、対応点推定手法が３つ以上の場合は別のＤＳＰ（図示せず）を準備してもよいし、いずれかのＤＳＰで複数の対応点推定手法を実行してもよい。ＤＳＰ３ ４０７は、劣化逆変換プログラムを内蔵し、既に計算された対応点を使用してこのプログラムによって劣化逆変換により解像度変換を行い、変換後の映像を映像出力部４０９に渡す。
【００２０】
映像出力部４０９は、解像度変換された画像を出力する。映像出力部４０９は、例えば、映像出力手段から外部の出力装置に出力して画像を表示する。また、映像出力部４０９は映像をハードディスクなどの不揮発記憶装置に保存してもよい。
【００２１】
別例の解像度変換装置は、図５に示すように、一時記憶部５０１、演算部５０２、入出力受付部５０３、映像受付部５０４、映像出力部５０５、不揮発記憶部５０６を含む。  
映像受付部５０４は、映像源から、典型的には複数の画像（動画像の場合は、フレーム）を取り込む。映像受付部４０１と同様である。  
一時記憶部５０１は、映像受付部５０４が取り込んだ画像を記憶する。この記憶動作の指示は、演算部５０２が行ってもよいし、別途ＤＭＡ回路を用意してＤＭＡ回路に行わせてもよい。一時記憶部５０１は、複数の対応点推定プログラムを記憶している。一時記憶部５０１は、演算部５０２の実行結果を記憶する。  
演算部５０２は、一時記憶部５０１に記憶されている複数の対応点推定プログラム、劣化逆変換プログラムを実行することができる。  
入出力受付部５０３は、例えばキーボード、マウス、リモコンといった入力手段、ＤＶＤ出力手段、オーディオ出力手段との間でデータのやり取りを行う。  
不揮発記憶部５０６は、映像源としての映像を記憶していて、例えば、ハードディスクである。
【００２２】
なお、図５に示した例は、例えばキーボードやマウスといった手段を備えたパソコン、リモコン入力とＤＶＤ入出力やオーディオ出力を備えた映像レコーダ、を備えたシステムに好適である。例えば、ユーザはキーボードやマウス、リモコンからの指示で解像度変換を動作させることができる。
【００２３】
次に、図４または図５の解像度変換装置の動作の一例について図６を参照して説明する。  
Ｓ６０１：映像受付部４０１または映像受付部５０４が、画像を取り込む。取り込んだ画像は、図４では、映像受付部４０１が直接各ＤＳＰ用のメモリ（４０３、４０５、４０６）にコピーするか、映像受付部４０１は共有メモリ４０８に書きこんでおき、各ＤＳＰが必要になった時点で共有メモリ４０８から読み込む。共有メモリにはすべてのＤＳＰからのアクセスを受けるために排他制御機能を備えておく。  
図５の場合、映像受付部５０４が取得した画像が一時記憶部５０１にコピーされる。このコピーは演算部５０２やいずれかのＤＳＰ（図示せず）の指示で行ってもよいし、別途ＤＭＡ回路を用意してＤＭＡ回路に行わせてもよい。なお、映像をカメラやビデオから取り込む代わりに、ハードディスクなどの不揮発記憶部５０６に保存された映像を取り込んでもよい。
【００２４】
Ｓ６０２：２つ以上の異なる対応点推定手法を用意し、各対応点推定手法により画素に対応する対応点を求める。図４の場合、例えばメモリ（４０３、４０５）をワークエリアとして、ＤＳＰ１ ４０２で第１の対応点推定手法、ＤＳＰ２ ４０４で第２の対応点推定手法を実行し、それぞれの手法による対応点を求める。算出した対応点の情報は、可能であればＤＳＰ３ ４０７用のメモリ ４０６に直接書き込んでもよいし、共有メモリ４０８に書き込んでおき、ＤＳＰ３が必要になった時点で読み込んでもよい。もし対応点推定手法が３つ以上の場合は別のＤＳＰ（図示せず）を準備してもよいし、いずれかのＤＳＰで複数の対応点推定手法を実行してもよい。  
図５の場合は、演算部５０２と一時記憶部５０１を用いて各対応点推定方法を提供するソフトウェアプログラムを実行し、その結果を一時記憶部５０１に書き込む。
【００２５】
Ｓ６０３：Ｓ６０２で得られた対応点情報を利用し、劣化逆変換により解像度変換を行う。図４の場合、例えばＤＳＰ３用のメモリ４０６をワークエリアとしてＤＳＰ３ ４０７で劣化逆変換を実行し、その結果を映像出力部４０９に送る。  
図５の場合は、演算部５０２と一時記憶部５０１を用いて劣化逆変換方法を提供するソフトウェアプログラムを実行し、その結果を映像出力部５０５に送る。
【００２６】
Ｓ６０４：解像度変換により得られた画像を出力する。例えば、映像出力部４０９から外部の出力装置である映像表示装置（図示せず）に出力して画像を表示する。あるいは、映像をハードディスクなどの不揮発記憶部５０６に保存してもよい。
【００２７】
動画像の各フレームに対して解像度変換を施す場合は、例えば、Ｓ６０１〜Ｓ６０４を、対象画像、追加画像として利用する画像フレームを時系列にしたがって逐次ずらしながら繰り返す。
【００２８】
次に、本実施形態で使用する主要な用語の関係を図７に示す。  
解像度変換の対象とする画像（対象画像７０１）は与えられるから、その各画素の画素値は既知である。また、追加画像７０３として与えられた画像に対し、その対象画像中の対応点７０４を求めるとき、得られた各画素の対応点には、その対応元となる追加画像中の画素の画素値をあてはめることができる。対象画像の画素７０２と、追加画像から得られた対象画像中の対応点をあわせてサンプリング点７０５と呼ぶ。サンプリング点７０５は劣化逆変換の入力になる。最後に、サンプリング点７０５の情報（すなわち、サンプリング点の位置とそのサンプリング点でのサンプリング値）を用いた劣化逆変換７０６（ＰＯＣＳやＭＡＰ）により、解像度変換を施された画像を推定し、それを出力する。
【００２９】
次に、対応点推定手法について詳しく述べる。  
（１対１の動き推定方法の例：ブロックマッチング）  
対応点推定手法の第１の例として、ブロックマッチングと関数フィッティングを組み合わせた方法がある。この方法では、整数位置の変位についてブロックマッチングを行い、得られた位置の周辺で誤差曲線を用いた関数フィッティングを行い、誤差曲線の極小位置をサブピクセル変位として求める。ここでブロックマッチングとは、第１のフレームに設定されたテンプレート領域に対し、第２のフレームで前記テンプレート領域と類似する領域を探す手法の１つで、具体的には、まず第２のフレームで適当な探索範囲を設定し、次に探索範囲内でテンプレートと同じ形状の領域を順次取り出し、それらのうちでテンプレートと取り出した領域の画素値の誤差の合計（以下ブロック誤差）が最小となる領域を求め、対応する位置を探す。テンプレート領域としては、例えば、対応するサンプリング点を求めたい画素を中心とした正方形・長方形・円やひし形の領域を設定することができる（本実施形態では、長方形以外の領域についてもブロックと呼ぶ）。
【００３０】
探索範囲としては、例えば、第１のフレームにおけるテンプレートの位置を中心とし、その周囲を範囲として設定することができる。ブロック誤差としては、例えばＳＳＤ（各画素における画素値の２乗距離の合計値；Sum of Squared Distance）やＳＡＤ（各画素における画素値の絶対値距離の合計値；Sum of Absolute Distance）といった相違度、あるいは正規化相互相関のような類似度を使うことができる。なお、時刻ｔ、画素（ｐ，ｑ）の輝度をＩ（ｐ，ｑ，ｔ）、時刻ｔにおける画素（ｐ，ｑ）の時刻ｔ＋Δｔに対する動きベクトルを（Δｐ，Δｑ）で表すと、ＳＳＤおよびＳＡＤはそれぞれ
【数１】
0005238220.tif 000002
【００３１】
で表せる。blockはブロックマッチングで誤差の評価に使うブロックを表す。関数フィッティングとは、ブロックマッチングで得られた位置でのブロック誤差と、その周辺の位置でのブロック誤差に基づいてサブピクセル位置ずれを推定する方法である。具体的には、例えばブロック誤差としてＳＳＤを用いる場合、１次元のサブピクセル位置ずれの算出には誤差曲線を２次曲線とすれば図８に示す次の式
【数２】
0005238220.tif 000003
【００３２】
になり（位置ずれ修正後の動きベクトルはΔｐ＋subpixelになる）、ＳＡＤを用いる場合は誤差曲線を絶対値関数とすれば次の式
【数３】
0005238220.tif 000004
【００３３】
になる。なおここで、上式中の「＜＝」は「≦」を示すことにする。２次元のサブピクセル位置ずれを推定する方法の１つはこれを水平・垂直方法のそれぞれについて適用することである。あるいは、例えばＳＳＤを利用する場合誤差曲線を２次元で考えれば、２次元のサブピクセル位置ずれ（δｘ，δｙ）は次の式
【数４】
0005238220.tif 000005
【００３４】
を満たすと仮定でき、例えばδx，δｙとしてそれぞれ−１〜＋１の９点についてＳＳＤの実測値を与えてａ〜ｆの係数の最小２乗解を求める、あるいは適当な６点を与えてａ〜ｆの係数の解を求めることにより、（δｘ，δｙ）を偏微分＝０で得られる２つの式を解いて推定できる。他に、１次元のサブピクセル位置ずれの式を用い、２次元の変位を同時に推定する方法も提案されている（例えば、清水、奥富、「領域ベースマッチングのための２次元同時サブピクセル推定法」電子情報通信学会論文誌Ｄ−ＩＩ、Ｖｏｌ．Ｊ８７−Ｄ−ＩＩ、Ｎｏ．２、ｐｐ．５５４−５６４、２００４参照）。
【００３５】
（１対１の動き推定方法の例：フレーム内動き推定方法の例）  
以上の説明では、ブロックマッチングと関数フィッティングを使って異なるフレーム間の対応点を求める方法を説明してきた。ところで、Aperture問題が起こるような局所パターン、例えば物体の輪郭線部分では、同一フレーム内に合同な局所パターンが存在することが多い。このような局所パターンに対しては、同一フレーム内で対応点を求めることは解像度変換による正確な高解像度画像の推定に貢献する。
【００３６】
対応点推定手法の第２の例として、同一フレーム内でブロックマッチングと関数フィッティングを使って対応点を求める方法の一例を説明する。  
同一フレーム内に合同な局所パターンが存在する場合、その局所パターンは設定したテンプレートの周辺に存在することが多い。また、テンプレート自身への対応は対応点としての意味を持たない。これらのことから、予め定めた方向、例えば水平方向（図９）や垂直方向（図１３）に対してブロックマッチングで探索し、最後に関数フィッティングを施して変位を求めれば、合同な局所パターンを持つ画素の多くについて対応点を効率よく求められると考えられる。また、もしこのような局所パターンが物体の輪郭線のような直線で近似できるなら、エッジの方向を求めればどのような方向に探索すると良いか推測できる。エッジの方向は、水平・垂直それぞれの方向に対するエッジ検出フィルタの値の比から求めることができるから、例えば１次差分フィルタあるいはＳｏｂｅｌフィルタをエッジ検出フィルタとしてその出力値を求め、それらの比を求めることで、仮に局所パターンが直線で近似できるなら、エッジの方向が水平方向・垂直方向のどちらに近いのかが推測できる。得られたエッジの方向に基づいて、エッジ方向が垂直に近いのであれば図９、水平に近いのであれば図１３のように探索をすることで、ＳＳＤやＳＡＤの描く関数の振れ幅が大きくなり、より正確な変位を求めることができる。なお、例えばエッジの方向が垂直に近いと推測され図９のような探索を行う場合、あわせて図１０、図１１、図１２のラインについても探索を行うことで、より多くの対応点を得ることができる。
【００３７】
また、エッジ検出フィルタで探索エッジの方向を推測するかわりに、次のようにしてもよい。図１４のように周辺を囲うようにブロックマッチングを行うと、周囲で最適な変位が求められる。この変位が水平方向の探索（図１０や図１２のライン）で見つかっていれば探索を水平方向に、垂直方向の探索で見つかっていれば垂直方向にする。４つの角の部分で見つかった場合は水平方向・垂直方向のいずれかで探索してもよいし、４５度方向に変位の候補を配置して探索してもよい。
【００３８】
（１対多の動き推定方法の例）  
ここで、本実施形態では１対多の対応関係を受け入れているため、対応点推定手法は必ずしも１対１の対応関係を推定するものでなくてもよい。対応点推定手法の第３の例として、ブロックマッチングと関数フィッティングを用いたフレーム間の対応点を求める方法をまず適用し、最適な変位を１つ見つけた後、同一フレーム内での対応点の算出と同じ方法で探索、例えば変位の周辺のライン上での探索を行うことで、１対多の対応点を得る方法が考えられる。この方法を使えば、フレーム間でも１対多の対応点を得ることができる。なお、先に説明した同一フレーム内での対応点の探索方法は１対多の対応点を与える。
【００３９】
（１対１の動き推定方法の変形例）  
対応点推定手法としては他にも、背景技術で述べたグローバルモーション推定やレイヤ動き推定がある。これらを用いると１対１の対応点推定ができ、その結果は本実施形態にも利用できる。グローバルモーション推定としては背景技術で説明したブロックマッチングの他にも、例えば、次の方法がある。まず、第１の画像フレームから第２の画像フレームで画面全体の動きが一様であり、その動きを表す座標変換がパラメータベクトルｍ（例えば、アファイン変換）で表せると仮定する。次に、列ベクトルｍの誤差関数を定義する。誤差関数
【数５】
0005238220.tif 000006
【００４０】
は、例えば、第１の画像フレームにｍに対応する座標変換を適用し、得られた画像と第２の画像フレームに対しｉ番目の画素における輝度誤差
【数６】
0005238220.tif 000007
【００４１】
を求め、それを全画素について合計した値である。ここで、
【数７】
0005238220.tif 000008
【００４２】
を考え、
【数８】
0005238220.tif 000009
【００４３】
の
【数９】
0005238220.tif 000010
【００４４】
に対するテイラー展開の１次近似を考えると、
【数１０】
0005238220.tif 000011
【００４５】
になる。ただし、
【数１１】
0005238220.tif 000012
【００４６】
は
【数１２】
0005238220.tif 000013
【００４７】
のｍに対する微分を表す行ベクトルである。テイラー展開の結果を
【数１３】
0005238220.tif 000014
【００４８】
に代入し、ｍに対する微分を０とすることで、
【数１４】
0005238220.tif 000015
【００４９】
を推定するための式
【数１５】
0005238220.tif 000016
【００５０】
が得られる。ただしＨ（ｆ）はｆに対するヘッセ行列である。この
【数１６】
0005238220.tif 000017
【００５１】
はＧａｕｓｓ−Ｎｅｗｔｏｎ法の更新値になっているため、適当なｍ、例えば動きなしを表すベクトルを
【数１７】
0005238220.tif 000018
【００５２】
として、
【数１８】
0005238220.tif 000019
【００５３】
を求めて
【数１９】
0005238220.tif 000020
【００５４】
に加算する操作を繰り返せばグローバルモーションのパラメータが得られることになる。
【００５５】
以上に例示したように多様な方法で対応点を求めることで、多くの対応点を得ることができる。これらを統合し、また１対多対応の関係が生じてもそれを受け入れることで、高解像度画像の正確さに寄与できる対応点が得られる可能性が向上する。
【００５６】
特に、高解像度画像の正確さへの寄与が期待できる有力な方法の１つは、大域的な対応点の推定方法と局所的な対応点の推定方法を組み合わせることである。例えば、グローバルモーションやレイヤ推定といった大域的な対応点の推定方法は、動きとして仮定するモデルが推定を行う画像に合致していれば高い推定精度で対応点が得られるが、そうでない場合には良い対応点が得られない。
【００５７】
一方、ブロックマッチングと関数フィッティング、あるいはＬｕｃａｓ−Ｋａｎａｄｅ法のように局所的な対応点推定を行うと、対応点の推定精度は大域的な方法よりも落ちるが、どのような画像に対しても比較的良い対応点が得られる。これらの方法はそれぞれお互いの欠点を補うと期待できるから、高解像度画像の正確さに寄与すると期待できる。なお、ここでいう大域的と局所的とは、例えば、第１の対応点推定手法である大域的な動きの推定に用いる領域のうち最大の領域の面積が、第２の対応点推定手法である局所的な推定に用いる領域（ブロックマッチングであればブロックサイズ）のうち最大の領域の面積に対して２倍以上になるような場合をいう。
【００５８】
（劣化逆変換の例）   
Ｓ６０３で行う劣化逆変換の方法は、「S. C. Park et al., “Super-Resolution Image Reconstruction: A Technical Overview,” IEEE Signal Processing Magazine, pp.21-36, May 2003.」に多数提案されており、これらのいずれでも利用できる。１つの例としてＰＯＣＳによる劣化逆変換を説明する。
【００５９】
ＰＯＣＳでは、はじめに、高解像度画像の各画素について、対象画像である変換対象フレームに何らかの補間方法（例えばバイリニア法やバイキュービック法、キュービックコンボリューション法）を適用して仮の画素値を与える（高解像度画像での仮の画素値を仮画素値と呼ぶ）。そして、低解像度画像（対象画像と追加画像）の各画素位置において、対応する高解像度画像の仮画素値を使ったときのサンプリング値（これを仮サンプリング値とよぶことにする）を計算する。ここで、画素値とは画面をサンプリング間隔にしたがって複数の矩形に分割したときに、各矩形の輝度の分布を代表する値であり、矩形の中央に位置するものと考える。入力画像と出力画像の矩形の大きさの比は画素の密度によって決まり、例えば解像度が縦横１／２になるのであれば、矩形は縦横２倍になる。
【００６０】
各低解像度画像（対象画像と追加画像）の画素での仮サンプリング値は、対応する高解像度画像の画素に仮画素値が与えられているとき、低解像度画像（対象画像と追加画像）の画素値をサンプリングする際に利用した高解像度画像での仮画素値の加重平均を求めることで得られる。このとき、高解像度画像が正確なものであれば、低解像度画像（対象画像）として撮影されたものである画素値と仮サンプリング値は一致するが、実際には一致しないことが多い。そこで、これらを近づけるように高解像度画像の仮画素値を更新する。低解像度画像（対象画像）の画素値と仮サンプリング値との差分を求め、それを減らすように高解像度画像中の各仮画素値を加減算する。高解像度画像において対応する画素値は複数あるため、差分をサンプリング時に用いた重みで分け、それぞれの画素値に加減算する。この加減算により、計算を行った低解像度の画素については画素値と仮サンプリング値が近づく。この加減算により、別の低解像度の画素については画素値と仮サンプリング値が遠ざかる可能性もあるが、経験的には、この操作をたくさんの画素について行えば、画素値と仮サンプリング値が近づくことが多いことがわかっている。解像度変換では、この操作を低解像度画像全体について別途定めた回数だけ行い、得られた高解像度画像の仮画素値を出力する。
【００６１】
なお、キュービックコンボリューション法については「R. G. Keys, “Cubic Convolution Interpolation for Digital Image Processing,” IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. ASSP-29, no. 6, 1981.」を参照。
【００６２】
（信頼度）  
発明者らの実験では、図１５のように画素と画素の間を埋めるような対応点は変換後の高解像度画像の正確さ向上に大きく寄与するが、図１６のように既知の画素に近い対応点は変換後の高解像度画像の正確さ向上に多少は寄与するものの、図１５のような場合と比べてその寄与の程度は低かった。また、対応点推定は正確に求めることが難しい問題であることが知られており、得られる対応点にはある程度の誤差が残る。
【００６３】
これらのことを考えると、画素と画素の間を埋める対応点はなるべく残したほうが良いものの、既知の画素に近い対応点のように高解像度画像の正確さ向上にあまり寄与しない対応点であれば、対応点に誤差が残っていることを考えると除去したほうが望ましいと考えられる。また、画素と画素の間を埋める対応点であっても、信頼性の低い対応点であれば除去したほうが望ましいと考えられる。
【００６４】
上記の考察に鑑み、次に述べる例では図１７のフローチャートに示すように、信頼度の算出と信頼度を用いた不要な対応点の除去を行うことにした。具体的には、先に説明した図１６のＳ６０２とＳ６０３の間に、次の２つのステップを追加する。これらのステップは、例えば、ＤＳＰ３ ４０７、演算部５０２が行う。
【００６５】
Ｓ７０１：各対応点について、その信頼度を算出する。
【００６６】
Ｓ７０２：信頼度に基づいて、不要な対応点を除去する。具体的には、例えば信頼度が一定値以下の対応点を除去する。あるいは、画面を適当な間隔（例えば解像度変換後の１画素に相当する間隔）のブロックに分割し、各ブロック内で信頼度に基づいてソートし、信頼度が上位数個の対応点を残して除去する。なお、この場合はいくつの対応点を残すかは予め決めておく。
【００６７】
信頼度としては、例えば、対応点を中心とする予め定めた大きさのブロック（例えば５×５ブロック）について、そのＳＳＤあるいはＳＡＤといった相違度（相違度が低いほど信頼度は高くなる）、あるいは正規化相互相関といった類似度の値を使うことができる。あるいは、ＳＳＤやＳＡＤの値をブロック内の分散や標準偏差で除した値を使うこともできる。また、対応点推定方法が信頼度を出力できる場合はその値を使うこともできる。例えば、対応点推定方法がＬｕｃａｓ−Ｋａｎａｄｅ法であれば、ヘッセ行列の行列式を信頼度とすることで、逆行列の信頼性が低い対応点を除去できる。なお、対応点は非整数画素にあるため、ＳＳＤやＳＡＤの値を求める際には線形補間や３次畳み込み補間により輝度の補間を行う。なお、相違度を信頼度として用いる場合には、例えばその値に−１を掛ける方法や、VSSDを定数として−exp(-SSD/VSSD)という演算を施す方法を用いて、数値が高いほど信頼できると判定される値に変換してもよいし、例えばＳ７０２で信頼度が一定値未満の対応点を除去するようにしてもよい。
【００６８】
別の信頼度として、次の式を使うことも考えられる。
【００６９】
信頼度＝α・ｄ＋β・ｅ  
ｄ：自分以外のサンプリング点のうち最も近いサンプリング点との距離。ただし、サンプリング点とは対応点および解像度変換の対象となるフレーム自身の画素として与えられる点とする。  
ｅ：対応点近傍の局所パターンの誤差、例えば対応点を中心とするブロックのＳＳＤ。あるいは、対応点推定方法が出力した信頼度  
α、β：予め定めた重み定数  
解像度変換による出力画像の正確さ向上に寄与する対応点は、経験的に、図１５のように既知の対応点の中間に位置するような点であることがわかっている。逆に、図１６のように既知の対応点に近い点は出力画像の正確さ向上にあまり寄与しない。したがって、自分以外のサンプリング点のうち最も近いサンプリング点との距離（例えばＬ１距離やＬ２距離）を求め、その値が大きいほどサンプリング点を残すようにすれば、出力画像の正確さ向上に寄与する対応点をなるべく除去しないようにできる。したがって、１つの方法は自分以外のサンプリング点のうち最も近いサンプリング点との距離をそのまま信頼度として用いることである。また、信頼度にα・ｄを加算し、対応点推定における信頼度とあわせて考えることで、自分以外のサンプリング点のうち最も近いサンプリング点との距離がなるべく大きく、かつ対応点自身の信頼性が高い対応点ほど除去されにくくすることができる。また、重み係数はこれらのバランスをとるために利用できる。
【００７０】
（変形例：装置におけるライン単位の処理）  
今までの例では、画像をフレームごとに扱う例を中心として説明した。しかし、例えば図４の回路を各ＤＳＰ用のメモリ４０３、４０５、４０６は高速だが容量が少ないＲＡＭで、共有メモリ４０８は低速だが容量が多いＲＡＭとした場合、ＤＳＰ用のメモリに数フレーム分の画像を記憶することは難しくなる。この場合、例えば処理を数ライン〜数十ラインごとに行うと、少ないメモリでも実施可能になる。
【００７１】
以上に示した実施形態によれば、複数の対応点推定の手法を用いることで、解像度変換で得られる高解像度画像の正確さを向上させることができる。
【００７２】
また、上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述した実施形態の解像度変換装置による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フレキシブルディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ±Ｒ、ＤＶＤ±ＲＷなど）、半導体メモリ、又はこれに類する記録媒体に記録される。コンピュータまたは組み込みシステムが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であってもよい。コンピュータは、この記録媒体からプログラムを読み込み、このプログラムに基づいてプログラムに記述されている指示をＣＰＵで実行させれば、上述した実施形態の解像度変換装置と同様な動作を実現することができる。もちろん、コンピュータがプログラムを取得する場合又は読み込む場合はネットワークを通じて取得又は読み込んでもよい。  
また、記憶媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーティングシステム）や、データベース管理ソフト、ネットワーク等のＭＷ（ミドルウェア）等が本実施形態を実現するための各処理の一部を実行してもよい。  
さらに、本願発明における記憶媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、ＬＡＮやインターネット等により伝達されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。  
また、記憶媒体は１つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本発明における記憶媒体に含まれ、媒体の構成は何れの構成であってもよい。
【００７３】
なお、本願発明におけるコンピュータまたは組み込みシステムは、記憶媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するためのものであって、パソコン、マイコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。  
また、本願発明の実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の実施形態における機能を実現することが可能な機器、装置を総称している。
【００７４】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００７５】
【図１】ある１つの対応点推定方法によって見つかる対応点を示す図。
【図２】複数の対応点推定方法によって見つかる対応点を示す図。
【図３】２つのフレームを使用した解像度変換によって高解像度フレームを得る様子を示す図。
【図４】本実施形態の解像度変換装置の一例を示すブロック図。
【図５】本実施形態の解像度変換装置の一例を示すブロック図。
【図６】図４または図５の解像度変換装置の動作の一例を示すフローチャート。
【図７】本実施形態で使用する用語の関係を示す図。
【図８】パラボラフィッティング法を示す図。
【図９】フレーム内で対応点を探す際の水平方向の第１候補ラインを示す図。
【図１０】フレーム内で対応点を探す際の水平方向の第２候補ラインを示す図。
【図１１】フレーム内で対応点を探す際の水平方向の第３候補ラインを示す図。
【図１２】フレーム内で対応点を探す際の水平方向の第４候補ラインを示す図。
【図１３】フレーム内で対応点を探す際の垂直方向の候補ラインを示す図。
【図１４】フレーム内で対応点を探す際の矩形の候補ラインを示す図。
【図１５】出力画像の正確さの向上に大きく寄与する対応点の一例を示す図。
【図１６】出力画像の正確さの向上にあまり寄与しない対応点の一例を示す図。
【図１７】図４または図５の解像度変換装置の信頼度を使用する動作の一例を示すフローチャート。
【符号の説明】
【００７６】
１０２、２０１・・・対応点、４０１、５０４・・・映像受付部、４０３、４０５、４０６・・・メモリ、４０８・・・共有メモリ、４０９、５０５・・・映像出力部、５０１・・・一時記憶部、５０２・・・演算部、５０３・・・入出力受付部、５０６・・・不揮発記憶部、７０１・・・対象画像、７０２・・・対象画像の画素、７０３・・・追加画像、７０４・・・対象画像中の対応点、７０５・・・サンプリング点、７０６・・・劣化逆変換。
【図１】
0005238220.tif 000021
【図２】
0005238220.tif 000022
【図３】
0005238220.tif 000023
【図４】
0005238220.tif 000024
【図５】
0005238220.tif 000025
【図６】
0005238220.tif 000026
【図７】
0005238220.tif 000027
【図８】
0005238220.tif 000028
【図９】
0005238220.tif 000029
【図１０】
0005238220.tif 000030
【図１１】
0005238220.tif 000031
【図１２】
0005238220.tif 000032
【図１３】
0005238220.tif 000033
【図１４】
0005238220.tif 000034
【図１５】
0005238220.tif 000035
【図１６】
0005238220.tif 000036
【図１７】
0005238220.tif 000037