(57)【要約】【課題】画像に高域要素が含まれる場合や模様がほとんどない場合であっても、超解像画像上に生じるノイズを抑圧しつつパフォーマンスを最適化した画像処理装置及び画像処理プログラムを提供する。【解決手段】画像データ入力部１に入力された低解像度画像フレーム列の基準フレームを基準フレーム選択部４で選択し、基準フレーム上の画像データに補間処理を行い、補間画像を補間画像生成部５で作成する。この補間画像を周波数成分分析部６で所定の大きさのブロックに分割して各ブロック毎の周波数成分を算出する。画像再構成部９で行われる超解像処理に用いるバックプロジェクション関数やポイントスプレッド関数の台の大きさ、反復演算回数等のパラメータを各ブロック毎の周波数成分の分布状況に応じて超解像パラメータ設定部７で設定する。【選択図】        図１
2007193508.tif 000002
【特許請求の範囲】
【請求項１】
同一シーンを撮影して得られる低解像度画像フレーム列を画像再構成領域にバックプロジェクション関数を用いて逆投影することにより初期高解像度画像を推定し、この初期高解像度画像からポイントスプレッド関数を用いて算出されるシミュレーション低解像度画像フレーム列と前記低解像度画像フレーム列との誤差を前記バックプロジェクション関数を用いて画像再構成領域に逆投影することにより再構成画像を更新し、この更新を繰り返して高解像度画像を再構成する画像処理装置において、
前記低解像度画像フレーム列の基準となる画像を基準フレームとして選択する基準フレーム選択部と、
前記基準フレーム選択部で選択された基準フレーム上の画像データを複数ブロックに分割して各ブロック毎の周波数成分を算出する周波数成分分析部と、
前記周波数成分分析部で算出された周波数成分に基づいて各ブロック毎に前記バックプロジェクション関数及びポイントスプレッド関数が数値を返せる範囲、再構成画像の更新回数を設定する超解像パラメータ設定部とを備えたことを特徴とする画像処理装置。
【請求項２】
前記超解像パラメータ設定部は、前記周波数成分分析部で分析された画像データの周波数成分の高域部分が大きい場合には、
前記バックプロジェクション関数又はポイントスプレッド関数が数値を返せる範囲を狭くすることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記超解像パラメータ設定部は、前記周波数成分分析部で分析された画像データの周波数成分の高域部分が小さい場合には、
前記再構成画像の更新回数を小さくすることを特徴とする請求項１記載の画像処理装置。
【請求項４】
前記画像再構成領域では、前記シミュレーション低解像度画像フレーム列と前記低解像度画像フレーム列との誤差を逆投影して再構成画像を更新する際に、
前記超解像パラメータ設定部で設定されたパラメータのブロック間の差に応じて、ブロック間歪み調整係数を設定し、最終的な超解像画像のブロック間歪みを低減することを特徴とする請求項１〜請求項３のいずれか１項に記載の画像処理装置。
【請求項５】
同一シーンを撮影して得られる低解像度画像フレーム列を画像再構成領域にバックプロジェクション関数を用いて逆投影することにより初期高解像度画像を推定し、この初期高解像度画像からポイントスプレッド関数を用いて算出されるシミュレーション低解像度画像フレーム列と前記低解像度画像フレーム列との誤差を前記バックプロジェクション関数を用いて画像再構成領域に逆投影することにより再構成画像を更新し、この更新を繰り返して高解像度画像を再構成する画像処理プログラムにおいて、
コンピュータを、前記低解像度画像フレーム列の基準となる画像を基準フレームとして選択する基準フレーム選択手段と、
前記基準フレーム選択手段で選択された基準フレーム上の画像データを複数ブロックに分割して各ブロック毎の周波数成分を算出する周波数成分分析手段と、
前記周波数成分分析部で算出された周波数成分に基づいて各ブロック毎に前記バックプロジェクション関数、ポイントスプレッド関数、再構成画像の更新回数を設定する超解像パラメータ設定手段として機能させるための画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置ずれのある複数の低解像度画像から高解像度画像を生成する超解像処理を用いた画像処理装置及び画像処理プログラムに関する。
【背景技術】
【０００２】
同一シーンを位置をずらしながら撮影して得られる複数枚の低解像度画像列から高解像度画像を構成する超解像処理と呼ばれる方法がある。広く利用されている再構成型超解像処理では、まず観測された低解像度画像列から初期の高解像度画像を推定し、そこからカメラモデルに基づき観測画像である低解像度画像列の各画素値を推定する。推定された画素値と実際の観測画素値の誤差を最小にするように高解像度画像を更新する。収束するまで更新処理を繰り返すことにより、最終的な超解像度画像を求めている。上記、再構成型超解像処理の古典的な手法としてバックプロジェクション（逆投影）法が良く知られている。
【特許文献１】特開２００４−２７２８９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
バックプロジェクション法では、初期高解像度画像の生成時や推定された画素値と実際の観測画素値の誤差を画像再構成領域に逆投影する場合に、バックプロジェクション関数（ＢＰＦ）を用いているが、このバックプロジェクション関数は、高解像度画像を生成するために画像再構成領域に設定された構成点の近傍の所定領域の画素を参照して重み付けを行い、画像再構成領域の構成点の輝度値を生成するようにしているので、所定領域内に超解像処理で更新されない高域要素が含まれる場合は、該高域要素は超解像画像上でノイズとして扱われていた。また、低解像度画像フレーム上で模様がほとんどない領域に関しては、超解像度化の効果が小さく、処理時間の無駄が生じていた。
【０００４】
本発明は、上述した課題を解決するために創案されたものであり、画像に高域要素が含まれる場合や模様がほとんどない場合であっても、超解像画像上に生じるノイズを抑圧しつつパフォーマンスを最適化した画像処理装置及び画像処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、請求項１記載の発明は、同一シーンを撮影して得られる低解像度画像フレーム列を画像再構成領域にバックプロジェクション関数を用いて逆投影することにより初期高解像度画像を推定し、この初期高解像度画像からポイントスプレッド関数を用いて算出されるシミュレーション低解像度画像フレーム列と前記低解像度画像フレーム列との誤差を前記バックプロジェクション関数を用いて画像再構成領域に逆投影することにより再構成画像を更新し、この更新を繰り返して高解像度画像を再構成する画像処理装置において、前記低解像度画像フレーム列の基準となる画像を基準フレームとして選択する基準フレーム選択部と、前記基準フレーム選択部で選択された基準フレーム上の画像データを複数ブロックに分割して各ブロック毎の周波数成分を算出する周波数成分分析部と、前記周波数成分分析部で算出された周波数成分に基づいて各ブロック毎に前記バックプロジェクション関数及びポイントスプレッド関数が数値を返せる範囲、再構成画像の更新回数を設定する超解像パラメータ設定部とを備えたことを特徴とする画像処理装置である。
【０００６】
また、請求項２記載の発明は、前記超解像パラメータ設定部が、前記周波数成分分析部で分析された画像データの周波数成分の高域部分が大きい場合には、前記バックプロジェクション関数又はポイントスプレッド関数が数値を返せる範囲を狭くすることを特徴とする請求項１記載の画像処理装置である。
【０００７】
また、請求項３記載の発明は、前記超解像パラメータ設定部は、前記周波数成分分析部で分析された画像データの周波数成分の高域部分が小さい場合には、前記再構成画像の更新回数を小さくすることを特徴とする請求項１記載の画像処理装置である。
【０００８】
また、請求項４記載の発明は、前記画像再構成領域では、前記シミュレーション低解像度画像フレーム列と前記低解像度画像フレーム列との誤差を逆投影して再構成画像を更新する際に、前記超解像パラメータ設定部で設定されたパラメータのブロック間の差に応じて、ブロック間歪み調整係数を設定し、最終的な超解像画像のブロック間歪みを低減することを特徴とする請求項１〜請求項３のいずれか１項に記載の画像処理装置である。
【０００９】
また、請求項５記載の発明は、同一シーンを撮影して得られる低解像度画像フレーム列を画像再構成領域にバックプロジェクション関数を用いて逆投影することにより初期高解像度画像を推定し、この初期高解像度画像からポイントスプレッド関数を用いて算出されるシミュレーション低解像度画像フレーム列と前記低解像度画像フレーム列との誤差を前記バックプロジェクション関数を用いて画像再構成領域に逆投影することにより再構成画像を更新し、この更新を繰り返して高解像度画像を再構成する画像処理プログラムにおいて、コンピュータを、前記低解像度画像フレーム列の基準となる画像を基準フレームとして選択する基準フレーム選択手段と、前記基準フレーム選択手段で選択された基準フレーム上の画像データを複数ブロックに分割して各ブロック毎の周波数成分を算出する周波数成分分析手段と、前記周波数成分分析部で算出された周波数成分に基づいて各ブロック毎に前記バックプロジェクション関数、ポイントスプレッド関数、再構成画像の更新回数を設定する超解像パラメータ設定手段として機能させるための画像処理プログラムである。
【発明の効果】
【００１０】
本発明によれば、分割されたブロック毎にポイントスプレッド関数（ＰＳＦ）やバックプロジェクション関数（ＢＰＦ）の台の幅（大きさ）と反復演算の回数を選択できるようにしているので、超解像処理において更新されない高域要素が含まれるブロックにはＰＳＦ、ＢＰＦの台の幅を狭くし、超解像画像上に発生するノイズを抑制することができる。また、模様が少ないブロックは反復演算回数を小さくすることで全体のパフォーマンスを最適化することができる。
【００１１】
また、シミュレーション低解像度画像フレーム列と前記低解像度画像フレーム列との誤差を逆投影して再構成画像を更新する際に、ブロック毎に設定された各バックプロジェクション関数間の差に応じて値を変化させたパラメータと更新前の再構成画像との積を加算することで、ブロック間の境界のノイズを低減することができる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照して本発明の一実施形態を説明する。図１は本発明による画像処理装置の構成を示す。
【００１３】
画像処理装置は、画像データ入力部１、記憶部２、処理条件設定部３、基準フレーム選択部４、補間画像生成部５、周波数成分分析部６、超解像パラメータ設定部７、射影変換部８、画像再構成部９等で構成されており、観測された画像列や撮影された画像フレーム列などが画像データ入力部１に入力され、所定の画像処理が行われた後、画像再構成部９より、画像データが出力される。図示はしていないが、画像処理装置の各構成部分は、ＣＰＵ等の制御部によりコントロールされるか、各構成部分内設けられた制御部により制御される。また、図１の各構成部は、プログラムとして動作させることもでき、この場合は、コンピュータにより制御される。
【００１４】
まず、異なる角度、距離、時間等の変位をもって同一の対象物（同一のシーン）を撮影した複数フレームの画像や、ビデオ映像における一連のシーケンス等、若干の相違を持つ画像列（観測画像列）を取得する。これらの画像列を低解像度画像フレーム列として画像データ入力部１に入力する。入力された低解像度画像フレーム列は記憶部２に記憶される。
【００１５】
次に、超解像処理に使用する低解像度画像のフレーム数Ｎを決定し、基準フレームを決定する。本実施例では、観測画像列の中間に位置するフレーム（Ｎ／２）を基準フレームとするが、低解像度画像列の最初に位置する画像を基準フレームとしても良く、Ｎ枚の画像のうち、いずれを基準フレームにしても良い。
【００１６】
また、低解像度画像から高解像度画像への拡大率ｒを決定する。これらのデータを処理条件設定部３に入力する。処理条件設定部３は、フレーム数Ｎ、拡大率ｒを記憶部２に、基準フレーム番号を記憶部２と基準フレーム選択部４に送信する。記憶部２は入力された低解像度画像フレーム列の内、Ｎ枚のフレームを射影変換部８へ出力する。また、記憶部２は、拡大率ｒ、基準フレーム番号等も、射影変換部８へ出力する。
【００１７】
図２の上段は、選択されたＮ枚の低解像度画像の一例を示す。上述したように、これら一連の低解像度画像のうち、低解像度画像列の中間に位置するフレーム（Ｎ／２）を基準フレームとしている。
【００１８】
選択されたＮ枚の低解像度画像と拡大率ｒは、記憶部２から基準フレーム選択部４に送られる。基準フレーム選択部４は入力されたＮ枚の低解像度画像のうち基準フレーム（低解像度画像N/2）の画像を選択して補間画像生成部５に出力する。
【００１９】
補間画像生成部５では、補間画像を基準フレーム上の画像データのみを用いて作成する。まず、拡大率ｒにより基準フレームの画像を拡大し、補間処理により画素を補間していく。図３に補間処理により補間画像を作成する一例を示す。図３に表示された黒丸が基準フレーム上の画素であり、白丸が補間により生成される画素（補間画素）を示す。また、拡大率ｒ＝２となっている。補間の方法としては、補間画素と補間画素の周囲に存在する基準フレーム上の画素との距離の比で求めた画素値で補間する線形補間を用いるようにしても良く、その他バイキュービック補間、Sｉｎｃ関数による補間等を用いるようにしても良い。
【００２０】
上記のように補間された高解像度画像は、補間画像生成部５から周波数成分分析部６に出力されて、画像の周波数成分の分析が行われる。周波数成分分析部６では、画像データを周波数成分に変換する直交変換の１つである離散コサイン変換（ＤＣＴ：Discrete Cosine Transform）が用いられる。
【００２１】
１枚の画像は、ある正方形の領域に対して変換処理を行うと、領域内の平均的な画像に始まり、次第に精細さを表現する画像（より空間周波数が高い画像）へと段階的に分解することができる。この分解操作を直交変換と呼び、正方形領域内の画像は、低周波成分から高周波成分へと分解した画像の重ね合わせになる。この直交変換には、離散コサイン変換が最も効率の高い方式であることが知られている。
【００２２】
正方形領域をｎ×ｎ画素の領域とし、この正方形領域内の画素に対応するデータをｆ（ｘ，ｙ）とすると、離散コサイン変換は、以下のようになる。
【数１】
2007193508.tif 000003
【００２３】
Ｆ（ｕ，ｖ）が求める離散コサイン変換画像、すなわちＤＣＴ係数となる。ここで、ｕ＝０かつｖ＝０は、直流成分を表し、ｕ、ｖが大きくなる程高い周波数を示す。
【００２４】
まず、補間画像生成部５で補間処理された基準フレーム上の画像データを正方形状のブロックに分割する。ブロックの大きさは、８×８のサイズが良く用いられるので、ｎ＝８としても良いが、他のサイズであっても良い。基準フレーム画像をｎ×ｎ画素のブロックに分割した様子を示すのが、図４である。各ブロックの画像データを図のようにｆ１１（ｘ，ｙ）〜ｆ４４（ｘ，ｙ）で表すことにすると、この各ブロック画像を上記離散コサイン変換式を用いて離散コサイン画像に変換すると、図５のように、図４の各ブロックに対するＤＣＴ係数が、Ｆ１１（ｕ，ｖ）〜Ｆ４４（ｕ，ｖ）まで得られる。
【００２５】
このＤＣＴ係数の２次元の分布状態の概念図の一例を図６に示す。一般的な画像の場合、ＤＣＴ係数の絶対値は、高い次数の周波数成分程小さな値になる傾向がある。これは、隣接する画素間に強い相関があり、比較的低い周波数成分に集中するからである。ところが、画像中に高周波成分が多いと、超解像処理で更新されない成分が多く含まれることになる。
【００２６】
例えば、図７の破線のように、ＤＣＴ係数が分布しているブロックＦ１２と、図７の実線のようにＤＣＴ係数が分布しているブロックＦ１１とがあったとする。図７は、６４画素に対してＤＣＴを実行した結果を示し、横軸が周波数番号、縦軸がＤＣＴ係数の絶対値のログスケールlog(abs(F(u,v))を表す。図７の破線の曲線と実線の曲線とを比較すると、実線のＤＣＴ分布を示すブロックＦ１１は模様がほとんど含まれない画像（高域の周波数成分が小さい）であり超解像処理の効果が小さく、破線のＤＣＴ分布を示すＦ１２は高域の周波数成分が含まれる割合が高いので、超解像処理のノイズが多く存在することになる。
【００２７】
このような場合、Ｆ１１に対応するｆ１１に対して反復演算回数（再構成画像の更新回数）を大きくして超解像処理を行っても効果が小さくパフォーマンスが低下する。また、Ｆ１２に対応するｆ１２に対して、ポイントスプレッド関数、バックプロジェクション関数が数値を返すことができる範囲である台の大きさを広くして超解像処理を行うとノイズが超解像画像上に広がってしまう。
【００２８】
そこで、超解像パラメータ設定部７では、周波数成分分析部６においてｆ１１（ｘ，ｙ）〜ｆ４４（ｘ，ｙ）の各ブロック画像に対して求めたＤＣＴ係数Ｆ１１（ｕ，ｖ）〜Ｆ４４（ｕ，ｖ）を参照し、高域の周波数成分がどの程度含まれるかによって、各ブロック毎に最適なＰＳＦ（ポイントスプレッド関数）、ＢＰＦ（バックプロジェクション関数）の台と反復演算回数を設定する。
【００２９】
例えば、図７の破線で示されるＤＣＴ係数に対応するｆ１２のブロック画像には、図８のようにＰＳＦ及びＢＰＦの台の幅を縦横半分にすることで超解像処理のノイズの広がりを防止する。また、図７の実線で示されるＤＣＴ係数に対応するｆ１１のブロック画像には、例えば反復演算回数を半分に設定する。
【００３０】
各ブロック画像に含まれる周波数成分の高域が大きいか、小さいかの判断については、例えば、以下のように行う。図７に示されるように、所定の閾値１、閾値２、閾値３の３種類の閾値を用いて、閾値２以上の周波数番号のＤＣＴ係数の絶対値のログスケールが、閾値１を越える回数が大きければＰＳＦ及びＢＰＦの台を狭くし、閾値３を下回る回数が大きければ反復回数を小さくする。以上の処理については、ＢＰＦ、ＰＳＦの台を図８のように２次元とした場合にも、容易に拡張することができる。
【００３１】
このようにして超解像パラメータ設定部７では、各ブロック画像のＤＣＴ係数を分析して、超解像処理のノイズが広がらないように、かつ処理の無駄が生じないようにＰＳＦ、ＢＰＦの台の幅および反復演算回数（ＲＫ）を設定していく。そしてこれらのデータを記憶する。図１１は、ブロック画像ｆ１１（ｘ，ｙ）〜ｆ４４（ｘ，ｙ）に対応して、ＢＰＦとＰＳＦの台の大きさと、反復演算回数（ＲＫ）を設定した状態を示す。ＢＰＦにフィルタＡを選択した場合には、このフィルタＡを各ブロック画像に共通して用い、その台の大きさだけをＤＣＴ係数Ｆ１１（ｕ，ｖ）〜Ｆ４４（ｕ，ｖ）に基づいて変化させて設定したものが、ＢＰＦ１１〜ＢＰＦ４４である。同様に、ＰＳＦについてもフィルタＢを選択した場合は、フィルタＢを各ブロック画像に共通して用い、その台の大きさだけをＤＣＴ係数Ｆ１１〜Ｆ４４に基づいて変化させて設定したものが、ＰＳＦ１１〜ＰＳＦ４４である。Ｒ１１〜Ｒ４４は、反復演算回数（ＲＫ）を示す。なお、通常、ＰＳＦとＢＰＦでは同じ大きさの台が用いられる。
【００３２】
ＢＰＦ、ＰＳＦに用いられるフィルタの例を図９〜図１０に示す。各図はフィルタの形状を示し、グラフの横軸はフィルタ中心からの距離（ピクセル）、縦軸は各フィルタの返す値を示す。
【００３３】
図９は、一般に良く知られているGaussianフィルタを示すもので、通常、ＰＳＦにはこのGaussianフィルタが用いられる。一方、図１０のmitchellフィルタは、Gaussian フィルタより高域を通過させるため、超解像処理結果が異なってくる。ＰＳＦを変更することで、望ましい周波数特性を持つ超解像画像を構成することも可能だが、理想的なＰＳＦと超解像処理で使用されるＰＳＦの誤差は超解像処理画像にノイズとして現れることが知られている。また、ＢＰＦの設定の仕方としては、ＢＰＦをＨＢ、ＰＳＦをＨＰとすると、ＨＢ=（ＨＰ）ｋ  （ｋ≧1）が良いとされている（[David Capel 著 Image Mosaicing and Super-resolution]参照）。
【００３４】
次に、記憶部２で選択されたＮ枚の低解像度画像は、射影変換部８に入力され、各低解像度画像フレーム上の画素が基準フレーム上へ写像される。低解像度画像フレーム列中の画素を基準フレームの座標上に写像（投影）して、すべての画素を基準フレーム上に集約することを考える。基準フレーム上の座標（ｘ，ｙ）とｋ番目のフレーム上の座標（Ｘｋ，Ｙｋ）には、以下の関係が成り立つことが知られている。
【００３５】
Ｘ＝（ｃＸｋ＋ｄＹｋ＋ｅ）／（ａＸｋ＋ｂＹｋ＋１）
Ｙ＝（ｆＸｋ＋ｇＹｋ＋ｈ）／（ａＸｋ＋ｂＹｋ＋１）
これらの式は射影変換と呼ばれａ〜ｈの８個のパラメータにより表される。パラメータ  ａ〜ｈは基準フレーム上の特徴点列を例えば Tomsai らの方法(Carlo Tomasi and Takeo Kanade,  Detection and Tracking of Point Features, Carnegie Mellon University Technical Report CMU-CS, April 1991)  を用いて各低解像度画像上で追跡し、４点以上の対応関係を得ることで求められる。８個のパラメータを求めることで、射影変換式が決定する。決定された射影変換式に従って基準フレーム上に、各低解像度画像フレーム列中の画素をすべて写像する。
【００３６】
次に、処理条件設定部３に入力された拡大倍率ｒを用いて基準フレーム上に写像された画像データと最初から基準フレーム上に存在していた画像データを拡大する。低解像度画像フレームの大きさを幅ｗ、高さｔとすると、再構成画像（超解像度画像）の幅Ｗと高さＴは、Ｗ＝ｒ×ｗ、Ｈ＝ｒ×ｔとなり、補間画像生成部５で生成された補間処理画像と同じ大きさになる。
【００３７】
図２は、低解像度画像フレーム列の画像データを基準フレーム上に写像し、拡大した状態例を示す。拡大率ｒは、２倍の拡大率としている。白丸は基準フレーム上の画素であり、格子の交差点上に位置している。斜線付の丸は、基準フレーム上の画素以外の低解像度画像フレーム上の画素を示している。図では、低解像度画像（N/2）+1と低解像度画像Nの画素の写像のみについて例示しているが、基準フレーム（低解像度画像N/2）を除く低解像度画像１〜低解像度画像Ｎまでに含まれる画素についてすべてが基準フレーム上に写像される。白三角は、画像再構成領域における再構成画像の構成点を示し、この構成点の輝度値（画素値）が、基準フレーム座標上の画像データ、すなわち基準フレームを含む低解像度画像１〜低解像度画像Ｎの画素から算出される。
【００３８】
射影変換部８で写像拡大された画像データは、画像再構成部９に送られる。画像再構成部９では、超解像処理により超解像度画像を復元する。低解像度画像の複数フレームの画素を用いて超解像度画像を作成するため、基本的な超解像法の一つであるバックプロジェクション法（逆投影法）を用いる。ただし、本手法は他の超解像法、例えばＭＬ法、ＭＡＰ法、ＰＯＣＳ法等にも適用することができる。
【００３９】
ところで、バックプロジェクション関数（ＢＰＦ：Back Projection Function）は、観測された低解像度画像列から初期の再構成画像（高解像度画像）を生成するとき、観測された低解像度画像列とシミュレーションにより得られる低解像度画像列間の誤差を再構成画像上に逆投影するときに用いられる。また、点拡がり関数（ＰＳＦ：Point Spread Function）は、カメラモデルと言われるもので、複雑なカメラ（撮像装置）の特性、例えば、カメラのＭＴＦ（Modulation Transfer Function）値、ＣＣＤのローパスフィルターの振る舞い、ピクセル密度やＡＤ変換等の電気的作用などを抽象化したものであり、再構成画像から推定されるシミュレーション低解像度画像フレーム列を生成するときに用いられる。
【００４０】
ＰＳＦ、ＢＰＦの台は、上述したように、基準フレーム上の画像データから算出された周波数成分に基づいて超解像パラメータ設定部７で設定された図１１のようなデータを用いる。ＰＳＦとしては例えばガウシアンフィルタを選択することができる。ガウシアンフィルタは図９に示されている。上述したように図９の横軸はフィルタ中心からの距離（ピクセル）、縦軸はフィルタの返す値を示す。フィルタが値を返せる範囲、すなわちグラフの縦軸方向の値が０になっていない範囲を見ると、ガウシアンフィルタは−１．７５ピクセルから１．７５ピクセル程度まで描かれているので長さとしては３．５ピクセルとなる。各フィルタが値を返せる範囲は既述のように台の大きさと呼ばれており、１次元の台の大きさは上記のようにガウシアンフィルタでＳ＝３．５となる。また、ＢＰＦについては図９のガウシアンフィルタの２乗などを用い、同様に台の大きさを設定することができる。
【００４１】
このＢＰＦとＰＳＦの２次元的な台の概念を示すのが、図１２と図１３である。図１２では、バックプロジェクションカーネルの台と示されている円形状の範囲が、再構成画像の構成点（白丸）が影響を受ける範囲であり、その範囲内に存在している低解像度画像の画素（斜線付きの丸）から前記再構成画像の構成点に関する重みが算出される。この台の範囲外に存在する低解像度画像の画素には影響を受けない。円形状の台の中心に存在する再構成画像の構成点を中心として参照する低解像度画像の画素が２次元的に分布している状態となっている。
【００４２】
台の範囲内に存在する低解像度画像の画素と再構成画像の構成点（白丸）との距離に応じてＢＰＦから異なる値が返され、この返された値が重み付け値となる。この重み付け値と重み付けを算出するのに使用された低解像度画像の画素値との積が構成点の輝度を算出する際に寄与することになる。このように、台の範囲は、構成点の輝度値を算出する場合に、構成点を中心として輝度値を算出するために用いる低解像度画像の画素を参照する領域である。
【００４３】
また、図１３に示されている点拡がり関数の台と表されている範囲（参照領域）が、低解像度画像の画素（斜線付きの丸）が影響を受ける範囲であり、ＢＰＦとは逆に、再構成画像上の画素（白丸）から低解像度画像の画素に関する重みが算出される。
【００４４】
ＢＰＦ、ＰＳＦの台の設定については、図１２、１３の例のように円形状の台を設定しても良いが、図８のように正方形状の台を設定しても良い。
【００４５】
図１５は、超解像処理全体のフローを示す。このフローにしたがって説明すると、まず、重みの総和の初期化等を行い、超解像パラメータ設定部７は、周波数成分分析部６から例えば図５に示されるようなブロック毎（ブロック数Ｎ）の周波数変換データ（ＤＣＴ係数分布データ）を取得する（Ｓ１）。
【００４６】
次に、Ｓ１で取得した周波数変換データに基づいて前述したようにＢＰＦとＰＳＦの各台の大きさ及び反復演算回数（ＲＫ）の設定を行う（Ｓ２）。なお、Ｓ２のブロック歪み補正係数の設定については後述する。
【００４７】
次に、ＢＰＦをＨＢとし、ＢＰＦの重みの総和をＳ（Ｘ）、低解像度画像上の点ｙの再構成画像領域での座標をＺｙとすると、Ｓ（Ｘ）＝ΣＨＢ（Ｘ−Ｚｙ）となる。例えば、低解像度画像上の点ｙ＝（ｉ，ｊ）について、まず射影変換部８では、基準フレーム上の座標（ｉ’，ｊ’）に変換する。その後（ｉ’，ｊ’）をそれぞれｒ倍して再構成画像領域上の点Ｚｙに移している。そこで、各ブロック画像毎に再構成画像の全ての構成点Ｘに関するＢＰＦの重みの総和を算出する（Ｓ３）する。
【００４８】
一方、拡大された基準フレーム画像を正方形状のブロックに分割し、周波数成分分析部６で分析された周波数成分（ＤＣＴ係数）に基づいて、最適のＰＳＦ、ＢＰＦの台や反復演算回数が超解像パラメータ設定部７によって設定された後、画像再構成部９に送信されてきている。
【００４９】
上記写像拡大画像データは、基準フレーム上の座標（ｉ’，ｊ’）に変換され、ｒ倍に拡大されており、補間画像生成部５で拡大された基準フレーム画像のサイズとは一致しているので、例えば、図１１のようにバックプロジェクション関数の台が設定されてる場合は、構成点Ｘ（ｐ，ｑ）が属するブロック画像に対応してＨＢをＢＰＦ１１〜ＢＰＦ４４まで変えながら、ＨＢにより重みを算出して、Ｓｍｎ（Ｘ）に加算する。ここで、Ｓｍｎ（Ｘ）は、各ブロック画像に対応したＢＰＦの重みの総和を表す。このようにして、各低解像度画像フレームの画素値を用いて再構成画像上のすべての構成点Ｘに関する重みを算出してＳｍｎ（Ｘ）に加算して、各ブロック画像毎にＢＰＦの重みの総和を算出する（Ｓ３）。ブロック数がＮであれば、Ｓｍｎ（Ｘ）もＮ個算出される。
【００５０】
次に、初期高解像度画像を算出する（Ｓ４）。再構成画像の初期化を行った後、射影変換部８より取得した写像拡大画像データを用い、初期高解像度画像上の点Ｘの輝度値（画素値）Ｉ（Ｘ）を求める。Ｉ（Ｘ）は、低解像度画像上の点ｙの輝度値をｆ（ｙ）、正規化のための定数をｃとすると、Ｉ（Ｘ）＝Σ（ｆ（ｙ）×（ＨＢ（Ｘ−Ｚｙ））２／ｃＳｍｎ（Ｘ））となる。この演算式により、初期高解像度画像を生成する（Ｓ１）。上記のように生成の過程でＨＢ（Ｘ−Ｚｙ）が使用されるが、このバックプロジェクション関数は、上述したように、各ブロックに応じて設定された台が用いられる。
【００５１】
構成点Ｘ（ｐ，ｑ）に関してＨＢにより重みを算出して、それを二乗したものと輝度値ｆ（ｙ）と掛け算し、ｃＳｍｎ（Ｘ）により正規化することにより構成点Ｘに寄与する輝度値が算出される。そして、構成点Ｘを中心とする参照領域に存在するすべての点Ｚｙについて構成点Ｘに寄与する輝度値が算出されると、これらの和が構成点Ｘの輝度値となる。再構成画像のすべての構成点について輝度値を算出する。
【００５２】
次に、ブロックｋの画像再構成処理（Ｓ７）を行う。変数ｋを初期化し（Ｓ５）、ブロックｋの画像再構成処理が行われる毎に変数ｋに１を加算してゆき（Ｓ８）、ｋの値がブロック数Ｎに達したときに、画像再構成処理（Ｓ７）を終了し、ブロック歪み補正処理（Ｓ９）に移行する。
【００５３】
ブロックｋの画像再構成処理（Ｓ７）は、図１６に示すように、まず、反復演算回数の初期化と誤差の和の最小値の初期化を行い（Ｓ７１）、反復演算回数ｎがブロック画像毎に設定された反復演算回数（ＲＫ）に達した場合（Ｓ７２  NO）、また、誤差の和の最小値が反復演算を繰り返しても小さくならない場合（Ｓ７６ NO）に画像再構成処理を終了する。
【００５４】
Ｓ４で生成された初期高解像度画像から低解像度画像フレーム列を推定する（Ｓ７３）。このシミュレーション低解像度画像フレーム列の算出は次式により行われる。ＰＳＦをＨＰ、反復演算の回数ｎとすると、ｎ＋１回目の反復演算中のｋ番目の低解像度フレーム
ｆｋ（ｎ）は、ｆｋ（ｎ）（ｙ）＝ΣＩ（ｎ）（Ｘ）ＨＰ（Ｘ−Ｚｙ）となる。このときのＨＰにおいても、図１１で示されている各ブロック画像毎に設定されたＰＳＦの台が用いられる。
【００５５】
Ｓ７の処理（画像再構成）の概念図を図１４に示す。図１４（ａ）、（ｂ）に示すように、低解像度画像フレームをすべて基準フレーム上に写像して拡大処理を行い、バックプロジェクション法を用いて再構成画像を構成する構成点を補間していく。構成点の一部は、図２に示すように、基準フレーム上の画素と重なっている場合があり、この場合には、再構成画像の構成点が補間されるというよりは、基準フレーム上の画素の輝度値の補正処理が行われたと言える。他方、図１４（ｂ）のように、１枚の初期高解像度画像が構成された後は、この高解像度画像を点拡がり関数を用いてダウンサンプリングして、図１４（ｃ）のようなシミュレーション低解像度画像１〜Ｎを得る。
【００５６】
このダウンサンプリングにより得られた低解像度画像フレーム列と観測された（撮影された）低解像度画像フレーム列との差（誤差）をとり、各ブロック毎に設定されたバックプロジェクション関数ＨＢにより重み付けして、再構成画像上での誤差値を算出する（Ｓ７４）。誤差算出は、誤差の和ｅ（Ｘ）を初期化した後、観測低解像度画像１〜Ｎとシミュレーション低解像度画像１〜Ｎの各フレームの対応する画素の輝度値の差をとり、これらのデータを射影変換部８に送信する。射影変換部８では、送信されてきた誤差データを射影変換式を用いて基準フレーム上へ写像し、写像データをｒ倍に拡大する。写像拡大された誤差データは、画像再構成部９に送られる。
【００５７】
写像拡大された誤差データは再構成画像領域上に集約されていることになり、再構成画像上の構成点Ｘにおける誤差ｅ（Ｘ）は、
ｅ（Ｘ）＝Σ（（ｆｋ（ｙ）−ｆｋ（ｎ）（ｙ））×（ＨＢ（Ｘ−Ｚｙ））２／ｃＳｍｎ（Ｘ））
となる。（ｆｋ（ｙ）−ｆｋ（ｎ）（ｙ））の部分は、図１４で説明すると、図１４（ａ）の低解像度画像１〜Ｎと図１４（ｃ）のシミュレーション低解像度画像１〜Ｎとの各対応するフレームの対応する画素間で誤差を算出することに相当する。
【００５８】
また、上記のように誤差ｅ（Ｘ）算出の過程でＨＢ（Ｘ−Ｚｙ）が使用されるが、このバックプロジェクション関数は、前述したように基準フレーム上の画像データをブロック分割し、各ブロック毎の画像に対して設定されたＢＰＦの台が用いられる。構成点Ｘに関してＨＢにより重みを算出して、それを二乗したものと誤差（ｆｋ（ｙ）−ｆｋ（ｎ）（ｙ））と掛け算し、ｃＳｍｎ（Ｘ）により正規化することにより構成点Ｘに寄与する誤差の輝度値が算出される。
【００５９】
そして、構成点Ｘを中心とする参照領域に存在するすべての点Ｚｙについて構成点Ｘに寄与する誤差の輝度値が算出されると、これらの和が構成点Ｘの誤差となる。再構成画像のすべての構成点について誤差を算出し（Ｓ７４）、この誤差の総和の総和Ｅ＝Σｅ（Ｘ）を求める（Ｓ７５）。これを一旦、誤差の最小値Eminとして取り扱い（Ｓ７７）、誤差を再構成画像上へ逆投影する。誤差の再構成画像上への逆投影は、誤差ｅ（Ｘ）を一つ前に再構成された再構成画像に加算することにより行われる。誤差の再構成画像上への逆投影は、反復演算の回数ｎ＝１のときは、上記誤差ｅ（Ｘ）を初期高解像度画像に加算することにより行われる。
【００６０】
次に、誤差が加算された再構成画像から再びシミュレーション低解像度画像列を生成し（Ｓ７３）、前記同様、観測低解像度画像列との差（誤差）をとって写像拡大した後、再構成画像のすべての構成点Ｘにおける誤差を算出し（Ｓ７４）、再構成画像上での誤差の総和Ｅを算出する（Ｓ７５）。この誤差の総和ＥがEminと比較して小さい場合は（Ｓ７６YES）、このときの誤差の総和ＥをEminとする（Ｓ７７）。そして誤差を再構成画像上へ逆投影する。
【００６１】
誤差の高解像度画像上への逆投影は、誤差ｅ（Ｘ）を一つ前に再構成された高解像度画像に加算することにより行われ、誤差ｅ（Ｘ）を高解像度画像上への逆投影するｎ回目の反復演算処理は、
Ｉ（ｎ）（Ｘ）＝Ｉ（ｎ−１）（Ｘ）＋ｅ（Ｘ）  となる。
【００６２】
誤差の総和Ｅが最小になるまで、Ｓ７２〜Ｓ７７までを繰り返す。誤差の総和Ｅが最小になったときは、Ｉ（ｎ−１）を超解像度画像としてブロックｋの画像再構成処理（Ｓ７）を終了する。そして、すべてのブロックに対して画像再構成処理が終了すると（Ｓ６YES）、次のブロック歪み補正処理（Ｓ９）に移行する。
【００６３】
ところで、上述したように、１枚の超解像度画像を得るために、１枚の画像（基準フレーム上の画像）をブロック分割し、ノイズの低減及び処理量の最適化を行い、各ブロックの周波数成分の高域を保存できるように、ブロック毎に最適なＰＳＦ、ＢＰＦの台や反復演算回数を設定するようにしているので、ブロック間の境界でノイズが生じる。
【００６４】
そこで、超解像画像を構成した後に、ブロック間の境界に対して以下のようにブロックノイズ除去を行う。
【００６５】
Ｉ’（ｘ，ｙ）＝Ｉ（ｘ，ｙ）＋λQ１ｔQ１Ｉ（ｘ、ｙ）
ここで、Ｉ’（ｘ，ｙ）はブロックノイズ除去後の画像、Ｉ（ｘ，ｙ）は超解像画像、Q１ はブロック境界に関する高域通過作用（例えば２次微分）である。このブロック境界ノイズを低減させる項のパラメータλをＳ２のブロック歪み補正係数として設定し、Ｓ９のブロック歪み補正処理を行う。
【００６６】
図１１のように設定され、仮に大きく分類して反復演算回数4回で台の幅Ｓ／２としたブロックと、反復演算の回数２回で台の幅Sとしたブロックが隣り合っていた場合、その処理内容の差、すなわち設定された反復演算回数や台の幅のブロック間における差が大きいほど、ブロックノイズ低減処理パラメータの係数λも大きくすることにより、ブロック境界のノイズを低減させることができる。
【００６７】
上述の実施例では、複数毎の低解像度画像フレームから１枚の超解像度画像を生成することについて説明したが、これを複数枚の低解像度画像フレームから複数枚の超解像度画像を生成する場合にも応用することができ、ノイズを抑圧し、パフォーマンスを最適化することができる。
【図面の簡単な説明】
【００６８】
【図１】本発明の画像処理装置の構成を示す図である。
【図２】低解像度画像フレームの各画素を基準フレーム上に写像した様子を示す図である。
【図３】補間処理により補間画像を作成する状態を示す図である。
【図４】基準フレーム画像をブロック分割した状態を示す図である。
【図５】図４を離散コサイン変換した状態を示す図である。
【図６】２次元データのＤＣＴ係数の分布状態を表す概念図である。
【図７】画像が異なる２つのブロックにおける周波数成分の分布状態の一例を示す図である。
【図８】ＰＳＦ、ＢＰＦの台の大きさの例を示す図である。
【図９】ガウシアンフィルタを示す図である。
【図１０】ミチェルフィルタを示す図である。
【図１１】図４で分割されたブロック毎に、ＢＰＦ及びＰＳＦの台の大きさ、反復演算回数が設定された様子を示す図である。
【図１２】バックプロジェクションカーネルの台の概念を示す図である
【図１３】点拡がり関数の台の概念を示す図である。
【図１４】画像再構成の概念を示す図である。
【図１５】超解像処理を示すフローチャート図である。
【図１６】ブロックｋの画像再構成処理を示すフローチャート図である。
【符号の説明】
【００６９】
１    画像データ入力部
２    記憶部
３    処理条件設定部
４    基準フレーム選択部
５    補間画像生成部
６    周波数成分分析部
７    超解像パラメータ設定部
８    射影変換部
９    画像再構成部
【図１】
2007193508.tif 000004
【図２】
2007193508.tif 000005
【図３】
2007193508.tif 000006
【図４】
2007193508.tif 000007
【図５】
2007193508.tif 000008
【図６】
2007193508.tif 000009
【図７】
2007193508.tif 000010
【図８】
2007193508.tif 000011
【図９】
2007193508.tif 000012
【図１０】
2007193508.tif 000013
【図１１】
2007193508.tif 000014
【図１２】
2007193508.tif 000015
【図１３】
2007193508.tif 000016
【図１４】
2007193508.tif 000017
【図１５】
2007193508.tif 000018
【図１６】
2007193508.tif 000019