(57)【特許請求の範囲】
【請求項１】
順に表示処理される第１の解像度の複数の第１の画像データで構成される動画像データを、第２の解像度の複数の第２の画像データで構成される動画像データに変換する画像処理方法であって、
処理対象の前記第１の画像データと、当該処理対象の第１の画像データ以外の他の前記第１の画像データとの間の位置あわせデータを生成する第１の工程と、
前記処理対象の前記第１の画像データに対応した前記第２の解像度の候補画像データを、前記第１の工程で生成した前記位置あわせデータを基に、前記他の第１の画像データに位置合わせする第２の工程と、
前記他の第１の画像データと、前記第２の工程で位置合わせした前記候補画像データとの第１の差異を小さくするように、前記候補画像データを更新する第３の工程と、
前記第２の工程および前記第３の工程を単数回または複数回行って、前記差異が基準値以下になった前記候補画像データを、前記処理対象の第１の画像データに対応した前記第２の画像データとする第４の工程と、
前記処理対象の第１の画像データと前記他の第１の画像データとを基に、前記処理対象の画像データ内の動き画像データを検出する第５の工程と
を有し、
前記第３の工程において、前記他の第１の画像データと、前記第２の工程で位置合わせした前記候補画像データとの差分データを前記第１の差異として生成し、前記第５の工程で生成した前記動き画像データを基に、前記差分データのうち、動き部分に対応する値を小さくする処理を施し、当該処理後の前記差分データを小さくするように前記候補画像データを更新する、
画像処理方法。
【請求項２】
前記第１の工程において、前記処理対象の第１の画像データと、前記他の画像データとの間の画像全体に対する位置合わせ量を示す前記位置合わせデータを生成する、
請求項１に記載の画像処理方法。
【請求項３】
当該画像処理方法は、前記処理対象の第１の画像データと、当該処理対象の第１の画像データ以外の前記第１の画像データについて既に生成された前記第２の画像データとを基に、前記候補画像データの初期値を生成する第６の工程をさらに有し、
前記第３の工程を最初に行う前に行う前記第２の工程において、前記第６の工程で生成した初期値を前記候補画像データとして用いる、
請求項１に記載の画像処理方法。
【請求項４】
順に表示処理される第１の解像度の複数の第１の画像データで構成される動画像データを、第２の解像度の複数の第２の画像データで構成される動画像データに変換する画像処理方法であって、
処理対象の前記第１の画像データと、当該処理対象の第１の画像データ以外の他の前記第１の画像データとの間の位置あわせデータを生成する第１の工程と、
前記処理対象の前記第１の画像データに対応した前記第２の解像度の候補画像データを、前記第１の工程で生成した前記位置あわせデータを基に、前記他の第１の画像データに位置合わせする第２の工程と、
前記他の第１の画像データと、前記第２の工程で位置合わせした前記候補画像データとの第１の差異を小さくするように、前記候補画像データを更新する第３の工程と、
前記第２の工程および前記第３の工程を単数回または複数回行って、前記差異が基準値以下になった前記候補画像データを、前記処理対象の第１の画像データに対応した前記第２の画像データとする第４の工程と、
を有し、
前記第３の工程において、当該処理対象の第１の画像データ以外の前記第１の画像データについて既に生成された前記第２の画像データと、前記候補画像データとを位置合わせした後に、それらの第２の差異を生成し、当該第２の差異をさらに小さくするように前記候補画像データを更新する、
画像処理方法。
【請求項５】
前記第３の工程において、前記候補画像データをハイパスフィルタ処理したデータと、前記第１の差異と、前記第２の差異との総和をさらに小さくするように前記候補画像データを更新する、
請求項４に記載の画像処理方法。
【請求項６】
順に表示処理される第１の解像度の複数の第１の画像データで構成される動画像データを、第２の解像度の複数の第２の画像データで構成される動画像データに変換する画像処理装置であって、
処理対象の前記第１の画像データと、当該処理対象の第１の画像データ以外の他の前記第１の画像データとの間の位置あわせデータを生成する第１の手段と、
前記処理対象の前記第１の画像データに対応した前記第２の解像度の候補画像データを、前記第１の手段が生成した前記位置あわせデータを基に、前記他の第１の画像データに位置合わせする第２の手段と、
前記他の第１の画像データと、前記第２の手段が位置合わせした前記候補画像データとの第１の差異を小さくするように前記候補画像データを更新する第３の手段と、
前記第２の手段および前記第３の手段による処理を単数回または複数回行わせ、前記差異が基準値以下になった前記候補画像データを、前記処理対象の第１の画像データに対応した前記第２の画像データとする第４の手段と、
前記処理対象の第１の画像データと前記他の第１の画像データとを基に、前記処理対象の画像データ内の動き画像データを検出する第５の手段と
を有し、
前記第３の手段は、前記他の第１の画像データと、前記第２の手段で位置合わせした前記候補画像データとの差分データを前記第１の差異として生成し、前記第５の手段で生成した前記動き画像データを基に、前記差分データのうち、動き部分に対応する値を小さくする処理を施し、当該処理後の前記差分データを小さくするように前記候補画像データを更新する、
画像処理装置。
【請求項７】
順に表示処理される第１の解像度の複数の第１の画像データで構成される動画像データを第２の解像度の複数の第２の画像データで構成される動画像データに変換する、下記第１〜第５手順をコンピュータを有する画像処理装置に実行させるプログラムであって、
処理対象の前記第１の画像データと、当該処理対象の第１の画像データ以外の他の前記第１の画像データとの間の位置あわせデータを生成する第１の手順と、
前記処理対象の前記第１の画像データに対応した前記第２の解像度の候補画像データを、前記第１の手順で生成した前記位置あわせデータを基に、前記他の第１の画像データに位置合わせする第２の手順と、
前記他の第１の画像データと、前記第２の手順で位置合わせした前記候補画像データとの第１の差異を小さくするように、前記候補画像データを更新する第３の手順と、
前記第２の手順および前記第３の手順を単数回または複数回行って、前記差異が基準値以下になった前記候補画像データを、前記処理対象の第１の画像データに対応した前記第２の画像データとする第４の手順と、
前記処理対象の第１の画像データと前記他の第１の画像データとを基に、前記処理対象の画像データ内の動き画像データを検出する第５の手順と、
をコンピュータを有する画像処理装置に実行させ、
前記第３の手順として、前記他の第１の画像データと、前記第２の手順で位置合わせした前記候補画像データとの差分データを前記第１の差異として生成し、前記第５の手順で生成した前記動き画像データを基に、前記差分データのうち、動き部分に対応する値を小さくする処理を施し、当該処理後の前記差分データを小さくするように前記候補画像データを更新する処理を、コンピュータを有する画像処理装置に実行させる、
プログラム。
【請求項８】
順に表示処理される第１の解像度の複数の第１の画像データで構成される動画像データを、第２の解像度の複数の第２の画像データで構成される動画像データに変換するコンピュータを有する画像処理装置が実行する下記第１〜第５ルーチンを含むプログラムをコンピュータで読み取り可能にした記録媒体であって、
前記プログラムは、
処理対象の前記第１の画像データと、当該処理対象の第１の画像データ以外の他の前記第１の画像データとの間の位置あわせデータを生成する第１のルーチンと、
前記処理対象の前記第１の画像データに対応した前記第２の解像度の候補画像データを、前記第１のルーチンで生成した前記位置あわせデータを基に、前記他の第１の画像データに位置合わせする第２のルーチンと、
前記他の第１の画像データと、前記第２のルーチンで位置合わせした前記候補画像データとの第１の差異を小さくするように、前記候補画像データを更新する第３のルーチンと、
前記第２のルーチンおよび前記第３のルーチンを単数回または複数回行って、前記差異が基準値以下になった前記候補画像データを、前記処理対象の第１の画像データに対応した前記第２の画像データとする第４のルーチンと、
前記処理対象の第１の画像データと前記他の第１の画像データとを基に、前記処理対象の画像データ内の動き画像データを検出する第５のルーチンと、
を有し、
前記第３のルーチンとして、前記他の第１の画像データと、前記第２のルーチンで位置合わせした前記候補画像データとの差分データを前記第１の差異として生成し、前記第５のルーチンで生成した前記動き画像データを基に、前記差分データのうち、動き部分に対応する値を小さくする処理を施し、当該処理後の前記差分データを小さくするように前記候補画像データを更新する処理を行う、
前記第１〜第５ルーチンを含むプログラムをコンピュータで読み取り可能にした、記録媒体。
【請求項９】
順に表示処理される第１の解像度の複数の第１の画像データで構成される動画像データを、第２の解像度の複数の第２の画像データで構成される動画像データに変換する画像処理装置であって、
処理対象の前記第１の画像データと、当該処理対象の第１の画像データ以外の他の前記第１の画像データとの間の位置あわせデータを生成する第１の手段と、
前記処理対象の前記第１の画像データに対応した前記第２の解像度の候補画像データを、前記第１の手段で生成した前記位置あわせデータを基に、前記他の第１の画像データに位置合わせする第２の手段と、
前記他の第１の画像データと、前記第２の工程で位置合わせした前記候補画像データとの第１の差異を小さくするように、前記候補画像データを更新する第３の手段と、
前記第２の手段および前記第３の手段による処理を単数回または複数回行って、前記差異が基準値以下になった前記候補画像データを、前記処理対象の第１の画像データに対応した前記第２の画像データとする第４の手段と、
を有し、
前記第３の手段は、当該処理対象の第１の画像データ以外の前記第１の画像データについて既に生成された前記第２の画像データと、前記候補画像データとを位置合わせした後に、それらの第２の差異を生成し、当該第２の差異をさらに小さくするように前記候補画像データを更新する、
画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像データを超解像度化する画像処理方法、画像処理装置、プログラムおよび記録媒体に関する。
【背景技術】
【０００２】
画像処理の分野において、解像度の向上は、大きなテーマとなっている。
１枚の低解像度画像を拡大することにより、1枚の超解像度画像を生成する技術として、画素補間方法など、さまざまな技術が研究されている。しかし、そもそも、低解像度画像に含まれる信号の周波数帯域が限られるため、１枚の低解像度画像だけから超解像度の画像を生成するのは限界がある。
【０００３】
そこで、複数の低解像度の画像を入力として、より画素数の多い超解像度の画像を生成する技術として、超解像(super resolution)技術が広く知られている。超解像の解法としては、さまざまな方法が提案されており、周波数空間を使った方法[非特許文献１]、MAP推定に基づく方法[非特許文献２]、並びにProjection on Convex Setsによる方法[非特許文献３]などが有名である。
【０００４】
【非特許文献１】R.Y. Tsai and T.S. Huang, ”Multiframe image restoration and registration”, Advances in Computer Vision and Image Processing, vol. 1, JAI Press Inc., 1984.
【非特許文献２】R.R. Shultz and R.L. Stevenson, “Extraction of high-resolution frames from video sequences”, IEEE transactions on Image Processing, Vol. 5, No. 6, June 1996.
【非特許文献３】A.M. Tekalp, M.K. Ozkan and M.I. Sezan, “High-resolution image reconstruction from lower-resolution image sequences and space-varying image restoration”, Proceedings of IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), San Francisco, CA, vol. 3, Mar. 1992.
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述した従来の方法、とくに、ＭＡＰ推定による方法などは、非常に良好な結果を得られることが分かっているが、多くの枚数の入力画像が必要であり、結果的に非常に計算コストが高くなるという問題がある。また、被写体ブレにたいする動き補償が難しいという問題がある。
多くの超解像技術においては、入力となる複数の低解像度画像は、同じシーンにたいして、カメラを少しずつ平行移動させて撮影したものと仮定している。そのため、シーン内で個別の被写体が動いたり、奥行きがあるシーンでカメラを動かしたりした場合などは、被写体がぶれてしまうという問題がある。
これに対して[非特許文献２]の技術は被写体ブレに対応しているが、そのためには、入力画像それぞれの画素位置での動きベクトルを推定する必要があり、非常に計算コストがかかってしまう問題がある。また、低解像度の入力画像で動きベクトルを検出しても、ノイズやエイリアシングなどが原因で、正しく動きベクトルが推定できない場合があることが問題であった。
【０００６】
本発明は、上述した背景技術の問題点に鑑みてなされ、従来に比べて少ない演算量で、低解像度の動画像データから超解像度の動画像データを生成することができる画像処理方法、画像処理装置、プログラムおよび記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明によれば、順に表示処理される第１の解像度の複数の第１の画像データで構成される動画像データを、第２の解像度の複数の第２の画像データで構成される動画像データに変換する画像処理方法であって、
処理対象の前記第１の画像データと、当該処理対象の第１の画像データ以外の他の前記第１の画像データとの間の位置あわせデータを生成する第１の工程と、前記処理対象の前記第１の画像データに対応した前記第２の解像度の候補画像データを、前記第１の工程で生成した前記位置あわせデータを基に、前記他の第１の画像データに位置合わせする第２の工程と、前記他の第１の画像データと、前記第２の工程で位置合わせした前記候補画像データとの第１の差異を小さくするように、前記候補画像データを更新する第３の工程と、前記第２の工程および前記第３の工程を単数回または複数回行って、前記差異が基準値以下になった前記候補画像データを、前記処理対象の第１の画像データに対応した前記第２の画像データとする第４の工程と、前記処理対象の第１の画像データと前記他の第１の画像データとを基に、前記処理対象の画像データ内の動き画像データを検出する第５の工程とを有し、前記第３の工程において、前記他の第１の画像データと、前記第２の工程で位置合わせした前記候補画像データとの差分データを前記第１の差異として生成し、前記第５の工程で生成した前記動き画像データを基に、前記差分データのうち、動き部分に対応する値を小さくする処理を施し、当該処理後の前記差分データを小さくするように前記候補画像データを更新する、画像処理方法が提供される。
【０００８】
好ましくは、前記第１の工程において、前記処理対象の第１の画像データと、前記他の画像データとの間の画像全体に対する位置合わせ量を示す前記位置合わせデータを生成する。
また好ましくは、当該画像処理方法は、前記処理対象の第１の画像データと、当該処理対象の第１の画像データ以外の前記第１の画像データについて既に生成された前記第２の画像データとを基に、前記候補画像データの初期値を生成する第６の工程をさらに有し、前記第３の工程を最初に行う前に行う前記第２の工程において、前記第６の工程で生成した初期値を前記候補画像データとして用いる。
【０００９】
また本発明によれば、順に表示処理される第１の解像度の複数の第１の画像データで構成される動画像データを、第２の解像度の複数の第２の画像データで構成される動画像データに変換する画像処理方法であって、
処理対象の前記第１の画像データと、当該処理対象の第１の画像データ以外の他の前記第１の画像データとの間の位置あわせデータを生成する第１の工程と、前記処理対象の前記第１の画像データに対応した前記第２の解像度の候補画像データを、前記第１の工程で生成した前記位置あわせデータを基に、前記他の第１の画像データに位置合わせする第２の工程と、前記他の第１の画像データと、前記第２の工程で位置合わせした前記候補画像データとの第１の差異を小さくするように、前記候補画像データを更新する第３の工程と、前記第２の工程および前記第３の工程を単数回または複数回行って、前記差異が基準値以下になった前記候補画像データを、前記処理対象の第１の画像データに対応した前記第２の画像データとする第４の工程と、を有し、
前記第３の工程において、当該処理対象の第１の画像データ以外の前記第１の画像データについて既に生成された前記第２の画像データと、前記候補画像データとを位置合わせした後に、それらの第２の差異を生成し、当該第２の差異をさらに小さくするように前記候補画像データを更新する、画像処理方法が提供される。
好ましくは、前記第３の工程において、前記候補画像データをハイパスフィルタ処理したデータと、前記第１の差異と、前記第２の差異との総和をさらに小さくするように前記候補画像データを更新する。
【００１０】
本発明によれば、順に表示処理される第１の解像度の複数の第１の画像データで構成される動画像データを、第２の解像度の複数の第２の画像データで構成される動画像データに変換する画像処理装置であって、
処理対象の前記第１の画像データと、当該処理対象の第１の画像データ以外の他の前記第１の画像データとの間の位置あわせデータを生成する第１の手段と、前記処理対象の前記第１の画像データに対応した前記第２の解像度の候補画像データを、前記第１の手段が生成した前記位置あわせデータを基に、前記他の第１の画像データに位置合わせする第２の手段と、前記他の第１の画像データと、前記第２の手段が位置合わせした前記候補画像データとの第１の差異を小さくするように前記候補画像データを更新する第３の手段と、前記第２の手段および前記第３の手段による処理を単数回または複数回行わせ、前記差異が基準値以下になった前記候補画像データを、前記処理対象の第１の画像データに対応した前記第２の画像データとする第４の手段と、前記処理対象の第１の画像データと前記他の第１の画像データとを基に、前記処理対象の画像データ内の動き画像データを検出する第５の手段とを有し、前記第３の手段は、前記他の第１の画像データと、前記第２の手段で位置合わせした前記候補画像データとの差分データを前記第１の差異として生成し、前記第５の手段で生成した前記動き画像データを基に、前記差分データのうち、動き部分に対応する値を小さくする処理を施し、当該処理後の前記差分データを小さくするように前記候補画像データを更新する、画像処理装置が提供される。
また本発明によれば、順に表示処理される第１の解像度の複数の第１の画像データで構成される動画像データを第２の解像度の複数の第２の画像データで構成される動画像データに変換する、下記第１〜第５手順をコンピュータを有する画像処理装置に実行させるプログラムであって、
処理対象の前記第１の画像データと、当該処理対象の第１の画像データ以外の他の前記第１の画像データとの間の位置あわせデータを生成する第１の手順と、前記処理対象の前記第１の画像データに対応した前記第２の解像度の候補画像データを、前記第１の手順で生成した前記位置あわせデータを基に、前記他の第１の画像データに位置合わせする第２の手順と、前記他の第１の画像データと、前記第２の手順で位置合わせした前記候補画像データとの第１の差異を小さくするように、前記候補画像データを更新する第３の手順と、前記第２の手順および前記第３の手順を単数回または複数回行って、前記差異が基準値以下になった前記候補画像データを、前記処理対象の第１の画像データに対応した前記第２の画像データとする第４の手順と、前記処理対象の第１の画像データと前記他の第１の画像データとを基に、前記処理対象の画像データ内の動き画像データを検出する第５の手順と、をコンピュータを有する画像処理装置に実行させ、前記第３の手順として、前記他の第１の画像データと、前記第２の手順で位置合わせした前記候補画像データとの差分データを前記第１の差異として生成し、前記第５の手順で生成した前記動き画像データを基に、前記差分データのうち、動き部分に対応する値を小さくする処理を施し、当該処理後の前記差分データを小さくするように前記候補画像データを更新する処理を、コンピュータを有する画像処理装置に実行させる、プログラムが提供される
さらに本発明によれば、順に表示処理される第１の解像度の複数の第１の画像データで構成される動画像データを、第２の解像度の複数の第２の画像データで構成される動画像データに変換するコンピュータを有する画像処理装置が実行する下記第１〜第５ルーチンを含むプログラムをコンピュータで読み取り可能にした記録媒体であって、
前記プログラムは、処理対象の前記第１の画像データと、当該処理対象の第１の画像データ以外の他の前記第１の画像データとの間の位置あわせデータを生成する第１のルーチンと、前記処理対象の前記第１の画像データに対応した前記第２の解像度の候補画像データを、前記第１のルーチンで生成した前記位置あわせデータを基に、前記他の第１の画像データに位置合わせする第２のルーチンと、前記他の第１の画像データと、前記第２のルーチンで位置合わせした前記候補画像データとの第１の差異を小さくするように、前記候補画像データを更新する第３のルーチンと、前記第２のルーチンおよび前記第３のルーチンを単数回または複数回行って、前記差異が基準値以下になった前記候補画像データを、前記処理対象の第１の画像データに対応した前記第２の画像データとする第４のルーチンと、前記処理対象の第１の画像データと前記他の第１の画像データとを基に、前記処理対象の画像データ内の動き画像データを検出する第５のルーチンと、を有し、前記第３のルーチンとして、前記他の第１の画像データと、前記第２のルーチンで位置合わせした前記候補画像データとの差分データを前記第１の差異として生成し、前記第５のルーチンで生成した前記動き画像データを基に、前記差分データのうち、動き部分に対応する値を小さくする処理を施し、当該処理後の前記差分データを小さくするように前記候補画像データを更新する処理を行う、前記第１〜第５ルーチンを含むプログラムをコンピュータで読み取り可能にした、記録媒体が提供される。
また本発明によれば、順に表示処理される第１の解像度の複数の第１の画像データで構成される動画像データを、第２の解像度の複数の第２の画像データで構成される動画像データに変換する画像処理装置であって、
処理対象の前記第１の画像データと、当該処理対象の第１の画像データ以外の他の前記第１の画像データとの間の位置あわせデータを生成する第１の手段と、前記処理対象の前記第１の画像データに対応した前記第２の解像度の候補画像データを、前記第１の手段で生成した前記位置あわせデータを基に、前記他の第１の画像データに位置合わせする第２の手段と、前記他の第１の画像データと、前記第２の工程で位置合わせした前記候補画像データとの第１の差異を小さくするように、前記候補画像データを更新する第３の手段と、前記第２の手段および前記第３の手段による処理を単数回または複数回行って、前記差異が基準値以下になった前記候補画像データを、前記処理対象の第１の画像データに対応した前記第２の画像データとする第４の手段と、を有し、前記第３の手段は、当該処理対象の第１の画像データ以外の前記第１の画像データについて既に生成された前記第２の画像データと、前記候補画像データとを位置合わせした後に、それらの第２の差異を生成し、当該第２の差異をさらに小さくするように前記候補画像データを更新する、画像処理装置が提供される。
【発明の効果】
【００１１】
本発明によれば、従来に比べて少ない演算量で、低解像度の動画像データから超解像度の動画像データを生成することができる画像処理方法、画像処理装置、プログラムおよび記録媒体を提供することができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施形態に係わる画像処理装置について説明する。 
先ず、本実施形態の構成要素と、本発明の構成要素との対応関係を説明する。
図２等に示す低解像度画像データＬが本発明の第１の画像データの一例であり、超解像度画像データｚが本発明の第２の画像データの一例である。
また、図３および図４の処理、並びに図７に示すステップＳＴ１の処理が、本発明の第１の工程、第１の手段、第１の手順の一例である。
また、図６に示すＴＲｋ−１とＴＲｋ+１、並びに図７に示すステップＳＴ７が、本発明の第２の工程、第２の手段、第２の手順の一例である。
また、図６に示す処理全体の流れ、並びに図７および図８に示すステップＳＴ８〜ＳＴ１７が、本発明の第３の工程、第４の工程、第３の手段、第４の手段、第３の手順、第４の手順の一例である。
【００１３】
図１は、本発明の実施形態に係わる画像処理装置１の全体構成図である。
図１に示すように、画像処理装置１は、例えば、インターフェース４、メモリ６および処理回路８を有し、これらがデータ線３を介して接続されている。
インターフェース４は、例えば、画像処理装置１の外部から図２等に示す低解像度画像データＬを入力する。
低解像度画像データＬは、例えば、メモリ６に書き込まれる。
メモリ６は、処理回路８の動作を規定したプログラムＰＲＧ、並びに処理回路８の処理に用いられるデータを記憶する。
処理回路８は、メモリ６に記憶されたプログラムＰＲＧに基づいて、以下に示す超解像度変換処理を行う。
【００１４】
［本実施形態が前提とする理論］
画像処理装置１の詳細を説明する前に、画像処理装置１の処理の前提となる理論を説明する。
本実施形態では、ＭＡＰ推定による超解像の理論を適用した場合を説明する。
先ず、所定の動画像データの解像度の幅がｗ、高さがｈとする。説明を簡単にするため、当該動画像データはグレイスケールの画像データであるとする。
Ｌｋは、動画像データ中のフレーム番号ｋの１枚の画像データを表わし、各画素値をスキャンライン順に並べたｗｈ次元のベクトルとする。
ここで、最終目標は、動画像データの各フレームの画像データに対応した、より超解像度である画像データ列を推定することである。
本実施形態では、ｎを２以上の整数とし、推定する超解像度画像データの解像度は、幅ｎｗ、高さｎｈであるとする。ここで、推定する超解像度画像データ列中のフレーム番号ｋの画像データをｚｋと表わし、ｚｋは画像データの各画素をスキャンライン順に並べたｎ２ｗｈ次元のベクトルであるとする。
【００１５】
フレーム番号ｋの超解像度画像データｚｋがすでに存在すると仮定すると、ｋとは異なるフレーム番号ｌの低解像度画像データＬｌは、以下の式で表わすことが出来る。
【００１６】
【数１】
0004600209.tif 000002
【００１７】
ここで、Ｗｋｌは、ｗｈ行ｎ２ｗｈ列の行列である。時刻ｋとｌは異なる時刻であるが、Ｗｋｌは、この間の動き補償と、超解像度画像データから低解像度画像データを生成する変換を施す行列を表わしている。Ｗｋｌの求め方は、後述する。ここでは、Ｗｋｌが既知であるとして説明を続ける。また、ｎｋは、動き補償や解像度変換の過程で発生するエラーや、時間的に変化する画像データ上のノイズなどを表わしており、ｗｈ次元のベクトルである。
本実施形態では、与えられた低解像度の入力画像データ列{Ｌｋ }から、対応する超解像度画像データ列{ ｚｋ }を推定する。
本実施形態では、時刻０から順に1枚ずつ超解像度画像データを推定してゆく。ここでは、ある時刻ｋにおいて、超解像度画像データｚｋを推定する場合を説明する。
【００１８】
一般的な超解像技術においては、ｚｋを推定するために、時刻ｋに対応する低解像度画像データＬｋおよび、その前後の数フレームの画像データなど、複数の低解像度画像データを入力する。本発明では、前後それぞれ ａ枚の画像データ Ｌｌ (ｋ-ａ≦ｌ≦ ｋ+ａ)を入力として用いる。
また、本実施形態では、低解像度画像データに加えて、１フレーム前の結果画像データｚｋ-１も入力画像データとして用いる。
１フレーム前の結果画像データｚｋ-１には、それより前の数フレーム分の画像データが加味されて、超解像度化されており、これを入力として用いれば、ｚｋの推定がよりよい結果となることが考えられる。
また、従来の超解像技術においては、入力する低解像度画像データとして、多くの枚数の画像データが必要とされており、これが原因で計算コストが大変高いという問題があった。これに対して、本実施形態では、過去のフレームの結果を再利用するので、入力する低解像度画像データは少なくてすみ、計算コストを削減することが出来る。
【００１９】
２ａ+１枚の低解像度画像データＬｌ (ｋ-ａ≦ｌ≦ ｋ+ａ)と、1フレーム前の超解像度の結果画像データｚｋ-１が与えられた場合に、ｚｋを推定する。その方法を、最大事後確率推定(ＭＡＰ推定)に基づき説明する。以下の式は、観測結果として手元にある低解像度画像データと前フレームの演算結果に対して、現フレームｋの超解像度画像データの推測値が妥当であるという確率を最大化させることを意味するものである。
【００２０】
【数２】
0004600209.tif 000003
【００２１】
上記式（２）において、ｚｎ，ｋはフレーム番号ｋの超解像度画像データを表わしている。
また  Pr(ｚｎ，ｋ| ｚｋ-１ ,{ Ｌｌ (k-a≦l≦ k+a)})は、ｚｋ-１ ならびに{ Ｌｌ(k-a≦l≦ k+a)}が、与えられた場合に、ｚｎ，ｋが妥当かどうかを表わす条件付確率を表わしている。したがって、この条件付確率が最大の値をとるようなｚｎ，ｋを推定すれば、それが求めたい超解像度画像データとなる。
【００２２】
上記式（２）は、ベイズの法則により、下記（３）ように変形できる。
【００２３】
【数３】
0004600209.tif 000004
【００２４】
また、上記式（３）の、「ａｒｇｍａｘ」の中身は確率であるので、対数を取ると下記式（４）のように変形できる。
【００２５】
【数４】
0004600209.tif 000005
【００２６】
上記式（４）の「ａｒｇｍａｘ」の中身としてｚｎ，ｋと関係が無い確率は考慮する必要がないので、上記式（４）において無視できる。その結果、上記式（４）は下記式（５）のように変形できる。
【００２７】
【数５】
0004600209.tif 000006
【００２８】
上記式（５）は、さらに下記式（６）に示すように分解できる。
【００２９】
【数６】
0004600209.tif 000007
【００３０】
ここで、上記式（６）の右辺の「ａｒｇｍａｘ」内の各項について述べる。
まず、最初に「Ｐｒ（ｚｋ−１｜ｚｎ，ｋ）」を考える。これは、フレーム番号ｋの超解像度画像データの推定値ｚｎ，ｋに対して、１フレーム前のフレーム番号ｋ-１の推定結果ｚｋ−１が適切であるかどうかを示す確率である。
【００３１】
ｚｋ−１が適切であるか否かは、ｚｎ，ｋを動き補償したものと、ｚｋ−１との誤差により検出できる。本実施形態では、この動き補償を行列Ｗｚｋとして表わす。行列Ｗｚｋは、ｎ２ｗｈ ｘ ｎ２ｗｈの行列である。
行列Ｗｚｋとして例えば、ｚｎ，ｋの画素ごとの動きベクトルや、ｚｎ，ｋの画像データ全体のアフィン変換などが考えられる。しかし、実際の動画像データでは、カメラの動きに加えて、個別の物体が動く場合がある。個別に物体が動く場合など、隣り合うフレームにおいても、片方では見えるが、一方では隠れてしまうような箇所がある。このような場合では、動き補償を行っても、その部分は、誤差が発生する。本実施例では、このような場合を考慮し、本実施形態では、下記式（７）で、「Ｐｒ（ｚｋ−１｜ｚｎ，ｋ）」を定義する。
【００３２】
【数７】
0004600209.tif 000008
【００３３】
上記式（７）では、確率はガウス分布であると仮定している。上記式（７）において、λｚは、正規化のための定数であり、Ｍｚｋは、動き補償Ｗｚｋでカバーすることのできないエラーを排除するためのｎ２ｗｈ ｘ ｎ２ｗｈの行列である。例えば、Ｗｚｋとしてカメラ全体の平行移動成分のみの動き補償を用いた場合に、Ｍｚｋとては、Ｗｚｋを適用したあとの個別の被写体の動きを検出し、動きがある場合には変換した後にエラーの絶対値が小さくなるようにゲインをかけ、動きがない場合には変換した後も値が変化しないような変換を施す。
【００３４】
次に、「Ｐｒ（Ｌｌ｜ｚｎ，ｋ）」 を、同様に、下記式（８）に示すように定義する。
【００３５】
【数８】
0004600209.tif 000009
【００３６】
上記式（８）において、λｙは、正規化のための定数である。行列Ｗｋｌは、ｚｎ，ｋ から低解像度画像データＬｌで表わされるシーンへの動き補償と、超解像度画像データから低解像度画像データへの変換を結合したものを表わしている。
これは、動き補償に従い、低解像度画像データの各画素に対して超解像度画像データの縦ｎ画素、横ｎ画素の領域を対応させ、各領域に含まれる画素の平均値を、低解像度画像データの画素値とする変換である。
行列Ｗｋｌは、ｗｈ ｘ ｎ２ｗｈの行列である。また、Ｍｋｌは、Ｗｋｌでカバーすることの出来ないエラーを排除するためのｗｈ ｘｎ２ｗｈの行列である。例えば、Ｗｋｌとしてカメラ全体の平行移動成分のみの動き補償と低解像度化変換の結合を用いた場合に、Ｍｋｌとしては、Ｗｋｌを適用したあとの個別の被写体の動きを検出し、動きがある場合には変換した後にエラーの絶対値が小さくなるようにゲインをかけ、動きがない場合には変換した後も値が変化しないような変換を施す。
【００３７】
次に、「Ｐｒ（ｚｎ，ｋ）」を説明する。
「Ｐｒ（ｚｎ，ｋ）」は、超解像度画像データの推定値ｚｎ，ｋが妥当であるかどうかを表わす確率である。
一般的な超解像技術では、この項としてさまざまなものが採用されている。例えば、超解像度画像データの推測値ｚｎ，ｋが適切であるときは、ｚｎ，ｋは区分的に滑らか(piece-wise smooth)であるという仮定を基にした確率分布である。すなわち、滑らかな部分が多ければ高い値になり、エッジ部が多ければ低い値を取るような確率関数を考える。
本実施形態では、「Ｐｒ（ｚｎ，ｋ）」 を下記式（９）で示す。
【００３８】
【数９】
0004600209.tif 000010
【００３９】
上記式（９）において、λCは、正規化のための定数である。また、上記式（９）のＣはｎ２ｗｈ ｘ ｎ２ｗｈの行列であり、ハイパスフィルタである。ハイパスフィルタの結果は、平坦な部分では小さな値となり、エッジがある部分では大きな値となる。従って、式（９）では、ｚｎ，ｋ に細かなエッジ多く存在すると「Ｐｒ（ｚｎ，ｋ）」は小さくなり、細かなエッジが無い場合に「Ｐｒ（ｚｎ，ｋ）」は大きな値をとる。
【００４０】
ここで、上記式（７），（８），（９），並びにλｚ、λｙ、λＣが定数であることを加味すると、上記式（６）は下記式（１０）のようになる。
【００４１】
【数１０】
0004600209.tif 000011
【００４２】
ここで、下記式（１１）のように関数ｆを定義する。
【００４３】
【数１１】
0004600209.tif 000012
【００４４】
上記式（１１）に示す関数ｆを用いると上記式（１０）は下記式（１２）のようになる。
【００４５】
【数１２】
0004600209.tif 000013
【００４６】
ここで述べた問題は、不適切な逆問題(ill-posed inverse problem)であるので、唯一の解が存在するわけではない。従って、上記式（１２）の最小化問題を解決するためには、最急降下法のような最適化手法を用いる。
最急降下法は、下記式（１３）に示す処理を、繰り返し施すことにより実現される。
【００４７】
【数１３】
0004600209.tif 000014
【００４８】
ここで、ｚｎ，ｋは、n回繰り返し処理をした結果の超解像度画像データの推測値である。
関数ｆのグラディエントΔfは、上記式（１１）により、下記式（１４）で示される。
【００４９】
【数１４】
0004600209.tif 000015
【００５０】
本実施形態では、図１に示す処理回路８は、上記式（１３）を用いて、繰り返し処理を行う。この際の、超解像度画像データの初期推定値ｚ０，ｋは、低解像度画像データＬｋを拡大処理したものを用いる。
この拡大方法としては、一般的に用いられているバイキュービック補間などを用いる。また、動画像データ列の最初の１枚の処理を行う際には１フレーム前の結果画像データｚｋ−１は存在しないので、上記式（１４）においては、これに対応する項を計算しないで処理する。
また、動画像データ列の最初のａ枚および最後のａ枚を超解像度化するときには、上記式（１４）における入力低解像度画像データＬｌの中で欠けるものが出てくる。この場合は、処理回路８は、有効な入力低解像度画像データＬｌのみを用いて、上記式（１４）を計算する。
【００５１】
図１に示す画像処理装置１の処理回路８は、メモリ６に記憶されたプログラムＰＲＧに基づいて、上記式（１３）および式（１４）に基づいた演算を所定条件を満たすまで繰り返し行い、超解像度画像データｚｋを生成する。
本実施形態で説明する処理回路８の処理は、プログラムＰＲＧに基づいて行われる。
本実施形態において、上記式（１３），（１４）の処理を超解像度変換処理と呼ぶ。
以下、画像処理装置１が上記式（１３），（１４）の処理を実行するアルゴリズムを説明する。
図１に示す処理回路８は、図２に示す低解像度の動画像データＬＭＰに超解像度変換処理を施して超解像度の動画像データＨＭＰを生成する。
具体的には、処理回路８は、動画像データＬＭＰを構成する複数の低解像度画像データＬの各々に対して、例えば、超解像度変換処理を表示順に施して、超解像度画像データＺを生成する。
このとき、処理回路８は、例えば、処理対象の低解像度画像データと、その前後の低解像度画像データと、上記処理対象の低解像度画像データに対して表示順が１つ前の低解像度画像データに対応した超解像度画像データと、動き画像データとを基に、上記処理対象の低解像画像データに対応した超解像度画像データを生成する。
図２に示す例では、処理回路８は、処理対象の低解像度画像データＬｋと、その前後の低解像度画像データＬｋ−１、Ｌｋ＋１と、上記処理対象の低解像度画像データＬｋに対して表示順が１つ前の低解像度画像データＬｋ−１に対応した超解像度画像データｚｋ−１と、動き画像データＭＩｋ-1とを基に、超解像度変換処理ＳＰｋを行って、上記処理対象の低解像画像データＬｋに対応した超解像度画像データｚｋを生成する。
【００５２】
ここで、超解像度画像データｚｋ−１および動き画像データＭＩｋ-1は、超解像度変換処理ＳＰｋ-1において生成され、メモリ６に記憶されたデータである。
【００５３】
［動き画像データＭＩｋ−１の生成］
処理回路８は、図３に示す処理によって動き画像データＭＩｋ-1を生成する。
すなわち、処理回路８は、図３に示すように、低解像度画像データＬｋを基準として位置合わせするように、低解像度画像データＬｋ−１を平行移動して低解像度画像データＬａｋ−１を生成する（平行移動処理ＰＭｋ−１）。
処理回路８は、当該位置合わせを、平行移動を（ｉ，ｊ）とし、Ｌｋ−１（ｓ−ｉ，ｔ−ｊ）を低解像度画像データＬｋ−１の画素位置（ｓ−ｉ，ｔ−ｊ）の画素データとし、Ｌｋ（ｓ，ｔ）を低解像度画像データＬｋの画素位置（ｓ，ｔ）の画素データとした場合に、下記式（１５）に従って、平行移動（ｉ，ｊ）を生成する。すなわち、処理回路８は、平行移動後の低解像度画像データＬａｋ−１と低解像度画像データＬｋとの画素の差分絶対値和が最小となるように平行移動データ（ｉ，ｊ）を決定する。
【００５４】
【数１５】
0004600209.tif 000016
【００５５】
本実施形態の超解像度変換処理の拡大率がｎの場合は、１／ｎピクセル単位で（ｉ，ｊ）を計算する必要がある。画像位置あわせの方法としては、あらゆる組み合わせの（ｉ，ｊ）に対して、画素の差分絶対値の総和を算出するブロックマッチング法や、繰り返し処理により算出するLucas-Kanade法（B.D. Lucas and T. Kanade, “An Iterative Image Registration Technique with an Application to Stereo Vision”, Proceedings of Imaging Understanding Workshop, 1981.）などがある。本実施例では、以上のような方法のうちどのようなものを用いても良い。
【００５６】
次に、処理回路８は、図３に示すように、平行移動処理ＰＭｋ−１で生成した低解像度画像データＬａｋ−１と、低解像度画像データＬｋとの画素単位の差分絶対値を示す差分絶対値データを生成する（差分絶対値算出ＤＣｋ−１）。
ここで、差分絶対値データは、画像全体の動き以外の個別の被写体の動きを検出したもので、個別被写体の動きがある部分に関して画素値が大きく、動きが無い場合は画素値が小さくなっている。
また、差分絶対値データは、被写体そのものの動きのみならず、ノイズ、エイリアシング、位置あわせの誤差なども、画素値に影響する。ここで、被写体の動き以外の要因の画像データの画素値は、比較的高周波成分を多く含むと仮定する。すなわち、被写体ぶれは比較的大きな範囲でまとめて画素値が変化するのに対して、ノイズや位置あわせの誤差は、きわめて局所的な画素値の変化しかないと仮定する。
処理回路８は、後処理ＡＰｋ−１によりローパスフィルタや中間値フィルタなど高周波成分を除去する処理を上記差分絶対値データに施すことで被写体の動きだけを抽出した動き画像データＭＩｋ−１を生成する。
【００５７】
［動き画像データＭＩｋの生成］
また、処理回路８は、図４に示すように、低解像度画像データＬｋとＬｋ＋１について、図３を用いて説明した処理と同様の処理を行って位置合わせデータＰＲｋおよび動き画像データＭＩｋを生成する。
【００５８】
［ｚ０，ｋの生成］
処理回路８は、上記式（１３），（１４）に示す超解像度画像データｚｎ，ｋの超解像度推定初期画像データｚ０，ｋを図５に示すように生成する。
処理回路８は、低解像度画像データＬｋにその縦横それぞれｎ倍の画素数を持つように変換する拡大処理を施す。
拡大処理は、一般的によく用いられるバイキュービック補間などの方法で行う。
次に、処理回路８は、図３に示す平行移動処理ＰＭｋ−１で生成した平行移動データ（ｉ，ｊ）を示す位置合わせデータＰＲｋ−１を用いて、図２に示す超解像度変換処理ＳＰｋ−１で生成した超解像度画像データｚｋ−１を平行移動して、拡大処理後の低解像度画像データＬｋに位置合わせし、これを超解像度推定初期画像データｚ０，ｋとする。
【００５９】
［ｚｎ，ｋの更新処理］
図６は、処理回路８が上記式（１３），（１４）を基に超解像度画像データｚｎ，ｋを順次更新する処理を説明するための図である。
なお、図６は、式（１４）の「ａ＝１」の場合を示している。
【００６０】
処理回路８は、図６に示す処理ＥＸｋ−１，ＥＸｋ，ＥＸｋ＋１によって、上記式（１４）の第２項の演算を行う。
また、処理回路８は、図６に示す位置ずらし処理ＴＲ１、差分処理ＳＵＢ１および勾配画像更新処理Ｄ１によって、上記式（１４）の第１項の演算を行う。
また、処理回路８は、図６に示す画像更新処理Ｄ２によって、上記式（１４）に示す第３項の演算を行う。
【００６１】
先ず、図６に示す処理ＥＸｋ−１について説明する。
処理ＥＸｋ−１は、上記式（１４）の第２項のｌ＝ｋ−１の場合の処理であり、位置ずらし／解像度変換処理ＴＲｋ−１と、差分処理ＳＵＢｋ−１と、勾配画像生成処理Ｄｋ−１とを有する。
処理回路８は、位置ずらし／解像度変換処理ＴＲｋ−１において、超解像度推定画像データｚｎ，ｋを、図３に示す平行移動処理ＰＭｋ−１で生成した位置合わせデータＰＲｋ−１を用いて、低解像度画像データＬｋ−１に対して位置合わせした後に、低解像度に変換する。ここで、位置ずらし／解像度変換処理ＴＲｋ−１は、式（１４）において、行列Ｗｋ−１で示される。
次に、処理回路８は、差分処理ＳＵＢｋ−１において、位置ずらし／解像度変換処理ＴＲｋ−１で生成した低解像度の画像データと、低解像度画像データＬｋ−１との差分を示す差分画像データ「Ｗｋ−１ｚｎ，ｋ−Ｌｋ−１」を生成する。
次に、処理回路８は、勾配画像生成処理Ｄｋ−１において、図３に示す処理で生成した動き画像データＭＩｋ−１を用いて、上記式（１４）の行列Ｍｋ−１、Ｍｋ−１Ｔを生成する。
ここで、行列Ｍｋ−１は、動きが無い部分の値は変化させずに、動きがある部分の値を小さくする変換である。また、行列Ｍｌでは基準となる画素位置は低解像度画像データＬｋ−１であるので、動き画像データＭＩｋ−１の画素位置を修正する。
そして、処理回路８は、勾配画像生成処理Ｄｋ−１において、差分処理ＳＵＢｋ−１で生成した差分画像データを、行列Ｗｋ−１ＴＭｋ−１ＴＭｋ−１で変換処理して、「Ｗｋ−１Ｍｋ−１ＴＭｋ−１（Ｗｋ−１ｚｎ，ｋ−Ｌｋ−１）」を生成する。
【００６２】
次に、図６に示す処理ＥＸｋについて説明する。
処理ＥＸｋは、上記式（１４）の第２項のｌ＝ｋの場合の処理であり、解像度変換処理ＴＲｋと、差分処理ＳＵＢｋと、勾配画像生成・更新処理Ｄｋとを有する。
処理回路８は、位置ずらし／解像度変換処理ＴＲｋにおいて、超解像度推定画像データｚｎ，ｋを低解像度推定画像データに変換する。
解像度変換処理ＴＲｋは、式（１４）において、行列Ｗｋで示される。
次に、処理回路８は、差分処理ＳＵＢｋにおいて、解像度変換処理ＴＲｋで生成した低解像度推定画像データと、低解像度画像データＬｋとの差分を示す差分画像データ「Ｗｋｚｎ，ｋ−Ｌｋ」を生成する。
次に、処理回路８は、勾配画像生成・更新処理Ｄｋにおいて、動き補償処理は行わずに、行列ＷｋＴのみを乗じて、「ＷｋＴ（Ｗｋｚｎ，ｋ−Ｌｋ）」を生成する。
そして、処理回路８は、勾配画像生成・更新処理Ｄｋにおいて、勾配画像生成処理Ｄｋ−１で生成した上記「Ｗｋ−１Ｍｋ−１ＴＭｋ−１（Ｗｋ−１ｚｎ，ｋ−Ｌｋ−１）」と、上記生成した「ＷｋＴ（Ｗｋｚｎ，ｋ−Ｌｋ）」とを加算する。
【００６３】
次に、図６に示す処理ＥＸｋ+１について説明する。
処理ＥＸｋ+１は、上記式（１４）の第２項のｌ＝ｋ＋１の場合の処理であり、位置ずらし／解像度変換処理ＴＲｋ+１と、差分処理ＳＵＢｋ+１と、勾配画像生成・更新処理Ｄｋ+１とを有する。
処理回路８は、位置ずらし／解像度変換処理ＴＲｋ+１において、超解像度推定画像データｚｎ，ｋを、図４に示す平行移動処理ＰＭｋ+１で生成した位置合わせデータＰＲｋ+１を用いて、低解像度画像データＬｋ+１に対して位置合わせした後に、低解像度に変換する。ここで、位置ずらし／解像度変換処理ＴＲｋ+１は、式（１４）において、行列Ｗｋ+１で示される。
次に、処理回路８は、差分処理ＳＵＢｋ+１において、位置ずらし／解像度変換処理ＴＲｋ+１で生成した低解像度の画像データと、低解像度画像データＬｋ+１との差分を示す差分画像データ「Ｗｋ+１ｚｎ，ｋ−Ｌｋ+１」を生成する。
次に、処理回路８は、勾配画像生成処理Ｄｋ+１において、図４に示す処理で生成した動き画像データＭＩｋ+１を用いて、上記式（１４）の行列Ｍｋ+１、Ｍｋ+１Ｔを生成する。
ここで、行列Ｍｋ+１は、動きが無い部分の値は変化させずに、動きがある部分の値を小さくさせる変換である。また、行列Ｍｌでは基準となる画素位置は低解像度画像データＬｋ+１であるので、動き画像データＭＩｋ+１の画素位置を修正する必要がある。
そして、処理回路８は、勾配画像生成処理Ｄｋ+１において、差分処理ＳＵＢｋ+１で生成した差分画像データを、行列Ｗｋ+１ＴＭｋ+１ＴＭｋ+１で変換処理して、「Ｗｋ+１Ｍｋ+１ＴＭｋ+１（Ｗｋ+１ｚｎ，ｋ−Ｌｋ+１）」を生成する。
そして、処理回路８は、勾配画像生成・更新処理Ｄｋ＋１において、勾配画像生成・更新処理Ｄｋ１で生成した上記「Ｗｋ−１Ｍｋ−１ＴＭｋ−１（Ｗｋ−１ｚｎ，ｋ−Ｌｋ−１）＋ＷｋＴ（Ｗｋｚｎ，ｋ−Ｌｋ）」に、上記生成した「Ｗｋ+１Ｍｋ+１ＴＭｋ+１（Ｗｋ+１ｚｎ，ｋ−Ｌｋ+１）」を加算して上記式（１４）の第２項の演算結果を生成する。
【００６４】
［位置ずらし処理ＴＲ１、差分処理ＳＵＢ１］
処理回路８は、位置ずらし処理ＴＲ１において、超解像度推定画像データｚｎ，ｋに対して動き補償による位置合わせ処理を行う（行列Ｗｚｋ）。
そして、処理回路８は、差分処理ＳＵＢ１において、上記位置合わせ処理後の超解像度推定画像データｚｎ，ｋと、図２に示す超解像度変換処理ＳＰｋ−１で生成した超解像度画像データｚｋ−１との差分データ「Ｗｚｋｚｎ，ｋ―ｚｋ−１」を生成する。
【００６５】
［勾配画像更新処理Ｄ１］
処理回路８は、勾配画像更新処理Ｄ１において、差分処理ＳＵＢ１で生成した（Ｗｚｋｚｎ，ｋ―ｚｋ−１）を、前述した変換２ＷｚｋＴＭｚｋＴＭｚｋで変換する。
ここで、上記変換の行列Ｍｚｋとしては、上記勾配画像生成処理Ｄｋ−１で用いた行列Ｍｋ−１を用いる。
また、上記変換行列Ｗｚｋとしては、上記位置ずらし／解像度変換処理ＴＲｋ−１で用いた行列Ｗｋ−１を用いる。
上記変換後の結果が、上記式（１４）の第１項に処理結果に対応する。
そして、処理回路８は、勾配画像更新処理Ｄ１において、上記勾配画像生成・更新処理Ｄｋ＋１で生成した上記式（１４）の第２項の演算結果と、上記変換により生成した上記式（１４）の第１項に処理結果とを加算する。
【００６６】
［画像更新処理Ｄ２］
処理回路８は、画像更新処理Ｄ２において、超解像度推定画像データｚｎ，ｋにハイパスフィルタ処理（Ｃ）を施し、その結果を上記勾配画像更新処理Ｄ１の上記加算の結果に加算し、上記式（１４）のΔｆ（ｚｎ，ｋ）を生成する。
そして、処理回路８は、所定のスカラー値αをΔｆ（ｚｎ，ｋ）に乗じて上記式（１３）により、新たな超解像度推定画像データｚｎ+1，ｋを生成する。
そして、処理回路８は、Δｆ（ｚｎ，ｋ）が所定のしきい値以下であるか否かを判断する。
処理回路８は、Δｆ（ｚｎ，ｋ）が所定のしきい値以下であると判断すると、超解像度推定画像データｚｎ，ｋを超解像度推定画像データｚｋとする。
一方、処理回路８は、Δｆ（ｚｎ，ｋ）が所定のしきい値以下ではないと判断すると、図６に示す処理を新たな超解像度推定画像データｚｎ+1，ｋに対して繰り返し行う。
【００６７】
［画像処理装置１の全体動作例］
図７および図８は、画像処理装置１の全体動作例を説明するためのフローチャートである。
ステップＳＴ１，ＳＴ２：
図１に示す処理回路８は、図４に示す処理を行って、低解像度画像データＬｋとＬｋ＋１について、位置合わせデータＰＲｋおよび動き画像データＭＩｋを生成する。
【００６８】
ステップＳＴ３：
処理回路８は、既に生成された位置合わせデータＰＲｋと、低解像度画像データｚｋ、超解像度画像データｚｋ−１とを基に、図５を用いて説明した超解像度画像初期化処理を行って超解像度推定初期画像データｚ０，ｋを生成する。
【００６９】
ステップＳＴ４：
処理回路８は、繰り返し処理の回数ｎを０に初期化し、超解像処理の入力に用いる低解像度画像を指定する定数ａ１，ａ２を設定する。
前述のように、低解像度画像としては、時刻ｋとその前後ａ枚を用いる（ａはあらかじめ定めた定数）。しかし、動画像の最初ａフレームと最後のａフレームを処理する場合には例外処理が必要であり、そのためにａ１，ａ２をここで設定する。
処理回路８は、ａ１として、ｋ＜ａの場合にはａ１＝ｋ、ｋ≧aの場合はａ１＝ａとする。また、処理回路８は、ａ２として、ｋ＋ａ＞ｋｍａｘの時はａ２＝ｋｍａｘ−ｋ、ｋ＋ａ≦ｋｍａｘの時はａ２＝ａと設定する。
【００７０】
ステップＳＴ５：
処理回路８は、Δｆ（ｚｎ，ｋ）を初期化するため零ベクトルに設定する。
ステップＳＴ６：
処理回路８は、ｌに「ｋ−ａ１」を代入する。
【００７１】
ステップＳＴ７：
処理回路８は、図６に示す位置ずらし／解像度変換処理Ｗｋ−１，ＷｋあるいはＷｋ＋１を行う。
ステップＳＴ８：
処理回路８は、図６に示す差分処理ＳＵＢｋ−１、ＳＵＢｋあるいはＳＵＢｋ＋１と、勾配画像生成処理Ｄｋ−１，ＤｋあるいはＤｋ＋１を行う。
【００７２】
ステップＳＴ９：
処理回路８は、変数ｌを「１」だけインクリメントする。
ステップＳＴ１０：
処理回路８は、変数ｌが「ｋ＋２ａ」より大きいか否かを判断し、大きいと判断するとステップＳＴ１１に進み、そうでない場合にはステップＳＴ７に戻る。
【００７３】
ステップＳＴ１１：
処理回路８は、ｋが「０」であるか否かを判断し、「０」であると判断するとステップＳＴ１３に進み、そうでない場合にはステップＳＴ１２に進む。
ステップＳＴ１２：
処理回路８は、図６に示す位置ずらし処理ＴＲ１および差分処理ＳＵＢ１を行う。
【００７４】
ステップＳＴ１３：
処理回路８は、図６にす勾配画像更新処理Ｄ１を行い、これにより、上記勾配画像生成・更新処理Ｄｋ＋１で生成した上記式（１４）の第２項の演算結果と、上記変換により生成した上記式（１４）の第１項に処理結果とを加算する。
【００７５】
ステップＳＴ１４：
処理回路８は、図６に示す画像更新処理Ｄ２を行い、新たな超解像度推定画像データｚｎ+1，ｋを生成する。
ステップＳＴ１５：
処理回路８は、変数ｎを「１」だけインクリメントする。
【００７６】
ステップＳＴ１６：
処理回路８は、画像更新処理Ｄで生成した勾配画像Δｆが「ｆｍａｘ」より小さいか否かを判断し、小さいと判断すると処理を終了し、超解像度推定画像データｚｎ，ｋを超解像度画像データｚｋとする。
一方、処理回路８は、画像更新処理Ｄで生成した勾配画像Δｆが「ｆｍａｘ」より小さくないと判断するとステップＳＴ１７に進む。
【００７７】
ステップＳＴ１７：
処理回路８は、変数ｎが「ｎｍａｘ」以上であるか否かを判断し、「ｎｍａｘ」以上であると判断すると処理を終了し（超解像度推定画像データｚｎ，ｋを超解像度画像データｚｋとする）、そうでない場合にはステップＳＴ５に戻る。
【００７８】
以上説明したように、画像処理装置１によれば、既に生成した低解像度画像データＬｋ−１の超解像度画像データｚｋ−１を、低解像度画像データＬｋに位置合わせして、その差分を小さくするように、超解像度画像データｚｋを順次更新処理して生成する。
そのため、従来のように画素データ毎に動きベクトルを算出するシステムに比べて、少ない演算量で超解像度画像データを生成できる。
また、当該従来のシステムでは、被写体の重なりやエイリアシングやノイズなどが原因で動きベクトルが適切に算出されない場合があったが、画像処理装置１では、動き補償として、画像全体の動き補償をした後に、画像全体の動き以外の個別被写体の動きの有無を検出し、それを元に被写体が動かなかった部分に超解像処理を施すことで、このようなエイリアシングやノイズの影響を抑制できる。また、被写体が動いたと判定された部分は、超解像結果に反映されないので、被写体ブレが発生しにくい。
そのため、画像処理装置１によれば、動画像の連続する複数の画像を処理するので、時間的に変化するノイズや、蛍光灯によるフリッカーなども抑制できる。
【００７９】
すなわち、個別被写体の動きに対する動き補償により上記式（１４）に示される動被写体部分の重みは小さくなる。従って、この部分は、他の静止部分に対して更新される量が少なくなる。つまり、時刻ｋの超解像度画像の動被写体部分は、時刻ｋの低解像度画像データＬｋの単なる拡大画像に近い画像となる。これに関して、画像処理装置１では、以下に挙げる２つの事柄を考慮しており、適切な処理が可能となる。
（１）動被写体部分に関しても時刻ｋ−１、ｋ＋１の低解像度画像データＬｋ−１，Ｌｋ＋１、さらには時刻ｋ−１の超解像度画像データｚｋ−１が大きく寄与すると仮定する。そうすると、結果画像ｚｋにおいては動被写体が尾を引いたようになり、不自然な画像となってしまう。
（２）動画像を実際に再生する時には、動被写体部分に関しては、人間は細かい解像度を感知することが出来ない。
【００８０】
本発明は上述した実施形態には限定されない。
すなわち、当業者は、本発明の技術的範囲またはその均等の範囲内において、上述した実施形態の構成要素に関し、様々な変更、コンビネーション、サブコンビネーション、並びに代替を行ってもよい。
例えば、上述した実施形態では、グレイスケールの動画像に対する処理として述べたが、本発明はカラーの動画像を対象にすることもできる。まずカラー画像を輝度成分と色成分に分離し、輝度成分を用いて上記の位置あわせなどの動き補償を行う。その結果を用いて輝度成分と色成分それぞれに対して上述の繰り返し処理による超解像度化処理を施せばよい。また、輝度成分だけに上述の繰り返し処理による超解像度化処理を施したものと、色成分をバイキュービック補間などでそのまま拡大したものを合成することにより超解像度化処理をして、計算コストを削減することも出来る。
【００８１】
また、上述した実施形態では、上記式（１４）の右辺の３項全てを用いてΔｆを生成したが、これらのうち第１項のみ、第２項のみ、あるいは第１項と第２項のみを用いてΔｆを生成してもよい。
【図面の簡単な説明】
【００８２】
【図１】図１は、本発明の実施形態の画像処理装置のハードウェア構成図である。
【図２】図２は、図１に示す画像処理装置が行う超解像度変換処理の全体構成を説明するための概念図である。
【図３】図３は、動き画像データＭＩｋ−１の生成処理を説明するための概念図である。
【図４】図４は、動き画像データＭＩｋの生成処理を説明するための概念図である。
【図５】図５は、超解像度画像データの初期値生成処理を説明するためん概念図である。
【図６】図６は、本発明の実施形態の式（１４）の処理を説明するための概念図である。
【図７】図７は、図１に示す画像処理装置の全体処理を説明するためのフローチャートである。
【図８】図８は、図１に示す画像処理装置の全体処理を説明するための図７の続きのフローチャートである。
【符号の説明】
【００８３】
１…画像処理装置、４…インターフェース、６…メモリ、８…処理回路、ＰＲＧ…プログラム
【図１】
0004600209.tif 000017
【図２】
0004600209.tif 000018
【図３】
0004600209.tif 000019
【図４】
0004600209.tif 000020
【図５】
0004600209.tif 000021
【図６】
0004600209.tif 000022
【図７】
0004600209.tif 000023
【図８】
0004600209.tif 000024