(57)【要約】【課題】より簡単に、動きボケを除去する。【解決手段】可変シフトレジスタ５１−２は、動きの方向に隣接する第１の画素と第２の画素との組であって、可変シフトレジスタ５１−２において抽出される画素の組から、画素を単位とする動き量Vだけ離れた組を抽出する。近似演算部５４−１は、N（Nは正の整数）個の組のうちの、i（ｉは正の整数）番目の組について、第１の画素の画素データに係数αと動き量Vとを乗算した結果から、動き量Ｖから１／（Ｎ−ｉ）を減算して得られた値と係数αとを第２の画素の画素データに乗算した結果を減算することにより、動きボケを除去した画素値を予測するための値を演算する。係数αは、【数２５】2008225657.tif 000039により求められる。本発明は画像処理装置に適用できる。【選択図】図１３
2008225657.tif 000002
【特許請求の範囲】
【請求項１】
時間積分効果を有する撮像素子によって取得された所定の数の画素毎の画素データからなる画像を処理する画像処理装置において、
第１の画素と、前記第１の画素に動きの方向に隣接する第２の画素との組であって、画素を単位とする動き量Ｖだけ他の組から離れた組を抽出する抽出手段と、
N（Nは正の整数）個の組のうちの、ｉ（ｉは正の整数）番目の組について、前記第１の画素の画素データに係数αと動き量Vとを乗算した結果から、動き量Ｖから１／（Ｎ−ｉ）を減算して得られた値と係数αとを前記第２の画素の画素データに乗算した結果を減算することにより、動きボケを除去した画素値を予測するための値を演算する第１の演算手段と
を備え、
係数αは、
【数２５】
2008225657.tif 000035
により求められる
画像処理装置。
【請求項２】
N個の組のそれぞれについて、前記第１の演算手段により演算された値を加算することにより、動きボケを除去した画素値の予測値を算出する予測値算出手段をさらに備える
請求項１に記載の画像処理装置。
【請求項３】
N個の組のうちの、ｋ（ｋは正の整数）番目の組について、前記第１の画素の画素データに係数βと動き量Vとを乗算した結果から、前記第２の画素の画素データに係数βと動き量Vとを乗算した結果を減算することにより、動きボケを除去した画素値を予測するための値を演算する第２の演算手段をさらに備え、
係数βは、
【数２６】
2008225657.tif 000036
により求められる
請求項１に記載の画像処理装置。
【請求項４】
N個の組のそれぞれについて、前記第１の演算手段または前記第２の演算手段により演算された値を加算することにより、動きボケを除去した画素値の予測値を算出する予測値算出手段をさらに備える
請求項３に記載の画像処理装置。
【請求項５】
複数の前記第１の演算手段によって演算された値から予測される複数の予測値のうち、複数の予測値の中央値に近い予測値を選択する選択手段をさらに備える
請求項１に記載の画像処理装置。
【請求項６】
複数の前記第１の演算手段によって演算された値から予測される複数の予測値をソートするソート手段と、
ソートされた複数の予測値から、複数の予測値の中央値に近い予測値であって、所定の数の予測値を選択する選択手段と、
選択された予測値の平均値を算出する平均値算出手段と
をさらに備える請求項１に記載の画像処理装置。
【請求項７】
時間積分効果を有する撮像素子によって取得された所定の数の画素毎の画素データからなる画像を処理する画像処理方法において、
第１の画素と、前記第１の画素に動きの方向に隣接する第２の画素との組であって、画素を単位とする動き量Ｖだけ他の組から離れた組を抽出し、
N（Nは正の整数）個の組のうちの、ｉ（ｉは正の整数）番目の組について、前記第１の画素の画素データに係数αと動き量Vとを乗算した結果から、動き量Ｖから１／（Ｎ−ｉ）を減算して得られた値と係数αとを前記第２の画素の画素データに乗算した結果を減算することにより、動きボケを除去した画素値を予測するための値を演算する
ステップを含み、
係数αは、
【数２５】
2008225657.tif 000037
により求められる
画像処理方法。
【請求項８】
時間積分効果を有する撮像素子によって取得された所定の数の画素毎の画素データからなる画像を処理する画像処理を、コンピュータに行わせるプログラムにおいて、
第１の画素と、前記第１の画素に動きの方向に隣接する第２の画素との組であって、画素を単位とする動き量Ｖだけ他の組から離れた組を抽出し、
N（Nは正の整数）個の組のうちの、ｉ（ｉは正の整数）番目の組について、前記第１の画素の画素データに係数αと動き量Vとを乗算した結果から、動き量Ｖから１／（Ｎ−ｉ）を減算して得られた値と係数αとを前記第２の画素の画素データに乗算した結果を減算することにより、動きボケを除去した画素値を予測するための値を演算する
ステップを含む画像処理をコンピュータに行わせ、
係数αは、
【数２５】
2008225657.tif 000038
により求められる
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置および方法、並びにプログラムに関し、特に、動きボケを除去できるようにした画像処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
CCD（Charge Coupled Device）等の撮像素子を用いたビデオカメラが広く用いられている。
【０００３】
移動する物体をこのようなビデオカメラで撮像して得られる画像には、物体の移動速度が比較的速い場合、動きボケが生じる。
【０００４】
画像処理による動きボケの除去が各種提案されている。動きボケを除去するための画像処理には、所定の係数を用いた多項式を利用するものが多い。
【０００５】
この係数は、最小自乗法などの計算量の大きな方法で、事前に計算される。
【０００６】
従来、第１の次元を有する現実世界の信号である第１の信号が、センサに射影され、センサによって検出することで得た第１の次元より少ない第２の次元の第２の信号を取得し、第２の信号に基づく信号処理を行うことにより、射影により埋もれた有意情報を第２の信号から抽出するようにしているものもある（例えば、特許文献１参照）。
【０００７】
【特許文献１】特開２００１−２５０１１９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、多項式に用いられる係数の変更は容易ではなく、クラスに分類して、クラス毎に係数を用いる場合には、クラス数と同数の係数セットをROM（Read Only Memory）などに記憶させておく必要がある。
【０００９】
また、このような場合には、オンラインで、動きボケ除去の画像処理をチューニングすることは困難である。
【００１０】
本発明は、このような状況に鑑みてなされたものであり、より簡単に、動きボケを除去することができるようにするものである。
【課題を解決するための手段】
【００１１】
本発明の一側面の画像処理装置は、時間積分効果を有する撮像素子によって取得された所定の数の画素毎の画素データからなる画像を処理する画像処理装置であって、第１の画素と、前記第１の画素に動きの方向に隣接する第２の画素との組であって、画素を単位とする動き量Vだけ他の組から離れた組を抽出する抽出手段と、N（Nは正の整数）個の組のうちの、ｉ（ｉは正の整数）番目の組について、前記第１の画素の画素データに係数αと動き量Vとを乗算した結果から、動き量Vから１／（Ｎ−ｉ）を減算して得られた値と係数αとを前記第２の画素の画素データに乗算した結果を減算することにより、動きボケを除去した画素値を予測するための値を演算する第１の演算手段とを備え、係数αは、
【数２５】
2008225657.tif 000003
により求められる。
【００１２】
N個の組のそれぞれについて、前記第１の演算手段により演算された値を加算することにより、動きボケを除去した画素値の予測値を算出する予測値算出手段をさらに設けることができる。
【００１３】
N個の組のうちの、ｋ（ｋは正の整数）番目の組について、前記第１の画素の画素データに係数βと動き量Vとを乗算した結果から、前記第２の画素の画素データに係数βと動き量Vとを乗算した結果を減算することにより、動きボケを除去した画素値を予測するための値を演算する第２の演算手段をさらに設け、係数βは、
【数２６】
2008225657.tif 000004
により求められるようにすることができる。
【００１４】
N個の組のそれぞれについて、前記第１の演算手段または前記第２の演算手段により演算された値を加算することにより、動きボケを除去した画素値の予測値を算出する予測値算出手段をさらに設けることができる。
【００１５】
複数の前記第１の演算手段によって演算された値から予測される複数の予測値のうち、複数の予測値の中央値に近い予測値を選択する選択手段をさらに設けることができる。
【００１６】
複数の前記第１の演算手段によって演算された値から予測される複数の予測値をソートするソート手段と、ソートされた複数の予測値から、複数の予測値の中央値に近い予測値であって、所定の数の予測値を選択する選択手段と、選択された予測値の平均値を算出する平均値算出手段とをさらに設けることができる。
【００１７】
本発明の一側面の画像処理方法は、時間積分効果を有する撮像素子によって取得された所定の数の画素毎の画素データからなる画像を処理する画像処理方法であって、第１の画素と、前記第１の画素に動きの方向に隣接する第２の画素との組であって、画素を単位とする動き量Vだけ他の組から離れた組を抽出し、N（Nは正の整数）個の組のうちの、ｉ（ｉは正の整数）番目の組について、前記第１の画素の画素データに係数αと動き量Vとを乗算した結果から、動き量Vから１／（Ｎ−ｉ）を減算して得られた値と係数αとを前記第２の画素の画素データに乗算した結果を減算することにより、動きボケを除去した画素値を予測するための値を演算するステップを含み、係数αは、
【数２５】
2008225657.tif 000005
により求められる。
【００１８】
本発明の一側面のプログラムは、時間積分効果を有する撮像素子によって取得された所定の数の画素毎の画素データからなる画像を処理する画像処理を、コンピュータに行わせるプログラムであって、第１の画素と、前記第１の画素に動きの方向に隣接する第２の画素との組であって、画素を単位とする動き量Vだけ他の組から離れた組を抽出し、N（Nは正の整数）個の組のうちの、ｉ（ｉは正の整数）番目の組について、前記第１の画素の画素データに係数αと動き量Vとを乗算した結果から、動き量Vから１／（Ｎ−ｉ）を減算して得られた値と係数αとを前記第２の画素の画素データに乗算した結果を減算することにより、動きボケを除去した画素値を予測するための値を演算するステップを含む画像処理をコンピュータに行わせ、係数αは、
【数２５】
2008225657.tif 000006
により求められる。
【００１９】
本発明の一側面において、第１の画素と、前記第１の画素に動きの方向に隣接する第２の画素との組であって、画素を単位とする動き量Vだけ他の組から離れた組が抽出され、N（Nは正の整数）個の組のうちの、ｉ（ｉは正の整数）番目の組について、
【数２５】
2008225657.tif 000007
により求められる係数αと動き量Vとを前記第１の画素の画素データに乗算した結果から、動き量Vから１／（Ｎ−ｉ）を減算して得られた値と係数αとを前記第２の画素の画素データに乗算した結果を減算することにより、動きボケを除去した画素値を予測するための値が演算される。
【発明の効果】
【００２０】
以上のように、本発明の一側面によれば、動きボケを除去することができる。
【００２１】
また、本発明の一側面によれば、より簡単に、動きボケを除去することができる。
【発明を実施するための最良の形態】
【００２２】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、発明の詳細な説明に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、発明の詳細な説明に記載されていることを確認するためのものである。従って、発明の詳細な説明中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２３】
本発明の一側面の画像処理装置は、時間積分効果を有する撮像素子によって取得された所定の数の画素毎の画素データからなる画像を処理する画像処理装置であって、第１の画素と、前記第１の画素に動きの方向に隣接する第２の画素との組であって、画素を単位とする動き量Vだけ他の組から離れた組を抽出する抽出手段（例えば、図１３の可変シフトレジスタ５１−１）と、N（Nは正の整数）個の組のうちの、ｉ（ｉは正の整数）番目の組について、前記第１の画素の画素データに係数αと動き量Vとを乗算した結果から、動き量Vから１／（Ｎ−ｉ）を減算して得られた値と係数αとを前記第２の画素の画素データに乗算した結果を減算することにより、動きボケを除去した画素値を予測するための値を演算する第１の演算手段（例えば、図１３の近似演算部５４−１）とを備え、係数αは、
【数２５】
2008225657.tif 000008
により求められる。
【００２４】
N個の組のそれぞれについて、前記第１の演算手段により演算された値を加算することにより、動きボケを除去した画素値の予測値を算出する予測値算出手段（例えば、図１３の予測値演算部５５）をさらに設けることができる。
【００２５】
N個の組のうちの、ｋ（ｋは正の整数）番目の組について、前記第１の画素の画素データに係数βと動き量Vとを乗算した結果から、前記第２の画素の画素データに係数βと動き量Vとを乗算した結果を減算することにより、動きボケを除去した画素値を予測するための値を演算する第２の演算手段（例えば、図１３の等価変換演算部５３−１）をさらに設け、係数βは、
【数２６】
2008225657.tif 000009
により求められるようにすることができる。
【００２６】
N個の組のそれぞれについて、前記第１の演算手段または前記第２の演算手段により演算された値を加算することにより、動きボケを除去した画素値の予測値を算出する予測値算出手段（例えば、図１３の予測値演算部５５）をさらに設けることができる。
【００２７】
複数の前記第１の演算手段によって演算された値から予測される複数の予測値のうち、複数の予測値の中央値に近い予測値を選択する選択手段（例えば、図１４の選択部７２）をさらに設けることができる。
【００２８】
複数の前記第１の演算手段によって演算された値から予測される複数の予測値をソートするソート手段（例えば、図１４のソート部７１）と、ソートされた複数の予測値から、複数の予測値の中央値に近い予測値であって、所定の数の予測値を選択する選択手段（例えば、図１４の選択部７２）と、選択された予測値の平均値を算出する平均値算出手段（例えば、図１４の平均値演算部７３）とをさらに設けることができる。
【００２９】
本発明の一側面の画像処理方法またはプログラムがコンピュータに行わせる画像処理は、第１の画素と、前記第１の画素に動きの方向に隣接する第２の画素との組であって、画素を単位とする動き量Vだけ他の組から離れた組を抽出し（例えば、図１６のステップＳ３４）、N（Nは正の整数）個の組のうちの、ｉ（ｉは正の整数）番目の組について、前記第１の画素の画素データに係数αと動き量Vとを乗算した結果から、動き量Vから１／（Ｎ−ｉ）を減算して得られた値と係数αとを前記第２の画素の画素データに乗算した結果を減算することにより、動きボケを除去した画素値を予測するための値を演算する（例えば、図１６のステップＳ３７）ステップを含み、係数αは、
【数２５】
2008225657.tif 000010
により求められる。
【００３０】
図１は、本発明の一実施の形態の画像処理装置の構成の例を示すブロック図である。画像処理装置は、動き検出部１１、アフィン変換部１２、ボケ除去パラメータ生成部１３、ボケ除去演算部１４、演算結果比較選択部１５、および逆アフィン変換部１６から構成される。
【００３１】
外部からの画像データは、動き検出部１１およびアフィン変換部１２に供給される。動き検出部１１は、画像データによる画像の動きベクトルを検出して、検出した動きベクトルを出力する。
【００３２】
外部において、画像データの画像の動きベクトルが検出される場合、外部から検出された動きベクトルが供給される。外部から動きベクトルが供給される場合、動き検出部１１とボケ除去パラメータ生成部１３との間に設けられたスイッチを介して、外部から供給された動きベクトルがボケ除去パラメータ生成部１３に供給される。
【００３３】
一方、外部から動きベクトルが供給されない場合、動き検出部１１とボケ除去パラメータ生成部１３との間に設けられたスイッチを介して、動き検出部１１において検出された動きベクトルがボケ除去パラメータ生成部１３に供給される。
【００３４】
ボケ除去パラメータ生成部１３は、動きベクトルから、動き量と動きの角度を示すボケ除去パラメータを生成する。ボケ除去パラメータ生成部１３は、動き量と動きの角度を示すボケ除去パラメータをアフィン変換部１２および逆アフィン変換部１６に供給する。また、ボケ除去パラメータ生成部１３は、動き量を示すボケ除去パラメータをボケ除去演算部１４に供給する。
【００３５】
アフィン変換部１２は、ボケ除去パラメータ生成部１３から供給されたボケ除去パラメータで示される動きの角度を参照して、動きの方向が画像の横方向になるように画像データをアフィン変換する。アフィン変換部１２は、アフィン変換された画像データから、画像の横方向に１列の画素の列である画素列を抽出して、抽出した画素列をボケ除去演算部１４に供給する。
【００３６】
すなわち、アフィン変換部１２からボケ除去演算部１４に供給される画素列は、動き方向に１列に並ぶ画素で構成される。
【００３７】
例えば、アフィン変換部１２は、１０乃至２０などの、予め決められた数の画素からなる画素列をボケ除去演算部１４に供給する。
【００３８】
または、アフィン変換部１２は、アフィン変換された画像データから、ボケ除去パラメータで示される動き量に応じた長さの画素列であって、画像の横方向に１列の画素の列である画素列を抽出して、抽出した画素列をボケ除去演算部１４に供給する。例えば、アフィン変換部１２は、動き量の倍数など、動き量に応じた数の画素からなる画素列をボケ除去演算部１４に供給する。
【００３９】
ボケ除去演算部１４は、アフィン変換部１２から供給された画素列に、後述する演算を適用することにより、動きボケを含まない画素値（動きボケを除去した画素値）の予測値を演算する。ボケ除去演算部１４は、１つの画素値に対して、１または複数の予測値を演算する。
【００４０】
ボケ除去演算部１４は、演算により求めた予測値を演算結果比較選択部１５に供給する。
【００４１】
演算結果比較選択部１５は、ボケ除去演算部１４から供給された予測値から、より確からしい予測値を選択して、選択した予測値から画素値を求める。演算結果比較選択部１５は、求めた画素値を逆アフィン変換部１６に供給する。
【００４２】
逆アフィン変換部１６は、演算結果比較選択部１５から供給された、動きボケを含まない画素の画素値をその内部に設けられたバッファに格納する。そして、逆アフィン変換部１６は、ボケ除去パラメータ生成部１３から供給されたボケ除去パラメータで示される動き量と動きの角度を参照して、動きの方向が入力された画像データによる画像と同じになるように、動きボケを含まない画素の画素値からなる画像データをアフィン変換する。
【００４３】
逆アフィン変換部１６は、動きボケを含まない画像データ、すなわち動きボケを除去した画像の画像データを出力する。
【００４４】
次に、図２乃至図１１を参照して、動きボケを含まない画素値の予測値の演算について説明する。
【００４５】
以下の説明において、動き量Vは、入力された画像データによる画像の動きの量を示す。画像データD0,・・・,Dnは、それぞれ、入力された画像データの画素の画素値を示す。画像データJ0,・・・,Jmは、それぞれ、現実世界の被写体からの光の強さを示す値である。
【００４６】
すなわち、画像データJ0,・・・,Jmは、それぞれ、CCDまたはCMOS（Complementary Metal-Oxide Semiconductor）センサなどの時間積分効果を有する撮像素子（光電変換素子）によって生じる動きボケを含まない画像の画素値を示す。画像データJ0,・・・,Jmは、現実世界の画像を仮想的な画素で表現した場合の、その画素の画素値を示すと言える。
【００４７】
以下、画像データD0,・・・,Dnを、ボケ画像データD0,・・・,Dnと称する。
【００４８】
また、以下、画像データJ0,・・・,Jmを、実世界画像データJ0,・・・,Jmと称する。
【００４９】
図２は、ボケ画像データD0,・・・,Dnと実世界画像データJ0,・・・,Jmとの関係を示す図である。
【００５０】
例えば、CCDまたはCMOSセンサなどの撮像素子は、１秒間に３０フレームからなる画像の画像データを出力する。撮像素子の露光時間は、１／３０秒とすることができる。露光時間は、撮像素子が入射された光の電荷への変換を開始してから、入射された光の電荷への変換を終了するまでの期間である。以下、露光時間をシャッタ時間とも称する。
【００５１】
例えば、CCDである撮像素子は、シャッタ時間に対応する期間、入射された光を電荷に変換して、変換された電荷を蓄積する。電荷の量は、入射された光の強さと、光が入射されている時間にほぼ比例する。撮像素子は、シャッタ時間に対応する期間において、入射された光から変換された電荷を、既に蓄積されている電荷に加えていく。すなわち、撮像素子は、シャッタ時間に対応する期間、入射される光を積分して、積分された光に対応する量の電荷を蓄積する。このような撮像素子は、時間に対して、積分効果があると言える。
【００５２】
撮像素子に蓄積された電荷は、電圧値に変換され、電圧値は更にデジタルデータである画像データなどの画素値に変換されて出力される。従って、撮像素子から出力される個々の画素値は、時間的に広がりのある現実世界の被写体からの光を、シャッタ時間について積分した結果であると言える。
【００５３】
図２は、動いている被写体を撮像した画像データにおける、被写体の画像の動き方向に隣接して１列に並んでいる画素の画素値を時間方向に展開したモデル図である。
【００５４】
図２における縦方向は、図中の上から下に向かって、経過する時間を示す。図２中の上側の矩形の上辺の位置は、撮像素子が入射された光の電荷への変換を開始する時刻に対応し、図２中の上側の矩形の下辺の位置は、撮像素子が入力された光の電荷への変換を終了する時刻に対応する。すなわち、図２中の上側の矩形の上辺から下辺までの距離は、シャッタ時間に対応する。
【００５５】
図２における横方向は、空間方向に対応する。より具体的には、図２に示す例において、図２中の上側の矩形は、空間方向に連続している１８の画素を示し、太線で囲われたそれぞれの四角は、１つの画素を示す。
【００５６】
ここで、シャッタ時間に対応する期間を２つ以上の同じ長さの期間に分割する。このシャッタ時間に対応する期間を分割する数である仮想分割数を、被写体のシャッタ時間内での動き量Vに対応して設定する。
【００５７】
例えば、画素を単位とする動き量Vが３である場合、その３である動き量Vに対応して、仮想分割数は、３とされ、シャッタ時間に対応する期間は３つに分割される。
【００５８】
図２中の上側の矩形の最も上の行は、シャッタが開いて最初の、分割された期間に対応する。図２中の上側の矩形の上から２番目の行は、シャッタが開いて２番目の、分割された期間に対応する。図２中の上側の矩形の上から３番目の行は、シャッタが開いて３番目の、分割された期間に対応する。
【００５９】
１フレームは短い時間なので、被写体が剛体であり、等速で移動していると仮定することができる。
【００６０】
被写体の画像の動きの方向が、図２中の左側から右側に向かう方向であり、被写体の画像の動き量Vが３である場合、被写体の画像は、あるフレームを基準として次のフレームにおいて３画素分右側に表示されるように移動する。
【００６１】
被写体の画像の動き量Vが３である場合、１つのフレームに注目すると、被写体の画像は、１つのフレームにおいて３画素にまたがって右側に移動する。すなわち、１つのフレームにおいて、被写体の画像は、動き量Vだけ移動すると言える。
【００６２】
さて、動きボケについて考えると、静止している被写体の画像に動きボケは生じることがなく、動いている被写体の画像には動きボケが生じる。
【００６３】
これを被写体からの光と画素との関係について見ると、静止している被写体の一点からの光は、撮像素子の１つの画素に入射するのに対して、動いている被写体の一点からの光は、１つのフレームにおいて、すなわちシャッタ時間において、撮像素子の複数の画素に入射する。
【００６４】
被写体の一点からの光が撮像素子の１つの画素の範囲を超えて移動しない画像、換言すれば被写体の一点からの光が１つの画素の範囲の中で移動する被写体の画像には、動きボケは生じない。
【００６５】
そこで、動いている被写体の一点からの光が、撮像素子の１つの画素に入射する期間における、被写体の画像を得ることができれば、その画像には動きボケは生じていないはずである。
【００６６】
１つのフレームにおいて、被写体の画像は、動き量Vだけ移動するので、仮想分割数を動き量Vと同じとすると、分割された期間において、被写体の一点からの光は１つの画素の範囲の中で移動することになるので、このように分割された期間における被写体の画像は、動きボケを含まない。
【００６７】
従って、図２に示されるように、仮想分割数を動き量Vと同じとした場合、分割された期間における被写体の画像は、実世界画像データJ0,・・・,Jmにより表すことができる。
【００６８】
これを異なる側面から説明すると、例えば、図２に示されるように、被写体の所定の点からの光であって、実世界画像データJ0で表される光は、シャッタ時間において、画素が１列に並んでいる方向に３画素だけ移動する。
【００６９】
シャッタが開いて最初の、分割された期間において、実世界画像データJ0で表される光は、図２中の上側の矩形の最も左側の画素に入射し、シャッタが開いて２番目の、分割された期間において、実世界画像データJ0で表される光は、図２中の上側の矩形の左から２番目の画素に入射する。また、シャッタが開いて３番目の、分割された期間において、実世界画像データJ0で表される光は、図２中の上側の矩形の左から３番目の画素に入射する。
【００７０】
同様に、シャッタが開いて最初の、分割された期間において、実世界画像データJ1で表される光は、図２中の上側の矩形の左から２番目の画素に入射し、シャッタが開いて２番目の、分割された期間において、実世界画像データJ1で表される光は、図２中の上側の矩形の左から３番目の画素に入射する。また、シャッタが開いて３番目の、分割された期間において、実世界画像データJ1で表される光は、図２中の上側の矩形の左から４番目の画素に入射する。
【００７１】
また、シャッタが開いて最初の、分割された期間において、実世界画像データJ2乃至実世界画像データJ17のそれぞれで表される光は、図２中の上側の矩形の左から３番目の画素乃至１８番目の画素のそれぞれに入射する。シャッタが開いて２番目の、分割された期間において、実世界画像データJ2乃至実世界画像データJ16のそれぞれで表される光は、図２中の上側の矩形の左から４番目の画素乃至１８番目の画素のそれぞれに入射する。さらに、シャッタが開いて３番目の、分割された期間において、実世界画像データJ2乃至実世界画像データJ15のそれぞれで表される光は、図２中の上側の矩形の左から５番目の画素乃至１８番目の画素のそれぞれに入射する。
【００７２】
上述したように、撮像素子は、時間に対して積分効果があるので、撮像素子のそれぞれの画素は、被写体からの光をシャッタ時間について積分して、積分した結果に相当する画素値を出力する。
【００７３】
例えば、図２に示されるように、ボケ画像データD0は、実世界画像データJ0と実世界画像データJ1とを積分したものになり、ボケ画像データD1は、実世界画像データJ0と実世界画像データJ1と実世界画像データJ2とを積分したものになる。
【００７４】
同様に、ボケ画像データD2は、実世界画像データJ1と実世界画像データJ2と実世界画像データJ3とを積分したものになり、ボケ画像データD3は、実世界画像データJ2と実世界画像データJ3と実世界画像データJ4とを積分したものになる。
【００７５】
図２に示す例において、ボケ画像データD4乃至ボケ画像データD15のそれぞれは、実世界画像データJ3乃至実世界画像データJ16のうちの連続する３つをそれぞれ積分したものになる。
【００７６】
一般的には、ボケ画像データDと実世界画像データJとの関係は、式（１）で表される。
【００７７】
【数１】
2008225657.tif 000011
【００７８】
以下の説明において、ボケ除去処理結果画像データK0,・・・,Kmは、画像処理装置により、ボケ画像データD0,・・・,Dnから求められる値であって、実世界画像データJ0,・・・,Jmを予測する値である。
【００７９】
また、予測誤差E0,・・・,Emは、ボケ除去処理結果画像データKと実世界画像データJとの誤差である。すなわち、i=0,・・・,mとした場合、予測誤差Ei=Ki-Jiである。
【００８０】
さらに、インデックスiおよびインデックスjは、ボケ画像データDなどを特定するのに用いる。
【００８１】
さて、図２のボケ画像データD1とボケ画像データD2とに注目すると、図３に示されるように、ボケ画像データD1は、実世界画像データJ0と実世界画像データJ1と実世界画像データJ2とを積分したものであり、ボケ画像データD2は、実世界画像データJ1と実世界画像データJ2と実世界画像データJ3とを積分したものなので、ボケ画像データD1からボケ画像データD2を減算した結果は、実世界画像データJ0から実世界画像データJ3を減算した結果に等しい。
【００８２】
ボケ画像データの隣接する画素の画素値の差分値は、実世界画像データJにおける、動き量Vだけ離れた画素の画素値の差分値を動き量Vで割り算したものと一致する。これを隣接するボケ画像データDについて一般化すると、式（２）が成り立つ。
【００８３】
【数２】
2008225657.tif 000012
【００８４】
また、ボケ画像データDの隣接する画素であるボケ画像データD(n×V)とボケ画像データD(n×V+1)の画素値に、[1,-(i-1)/i]のフィルタをかけた結果、すなわち、D(n×V)-(i-1)/i×D(n×V+1)の演算の結果は、実世界画像データJにおける、動き量Vだけ離れた画素の画素値の差分値を動き量Vで割り算した結果に(i-1)/iを乗じて、さらに1/i×D(n×V)を加算した値になる。
【００８５】
これを、隣接するボケ画像データDについて一般化すると、式（３）が成り立つ。
【００８６】
【数３】
2008225657.tif 000013
【００８７】
式（３）において、1/i×D(n×V)を予測誤差Eとして考え、例えば、図４に示されるように、ボケ画像データD1から、ボケ画像データD2に1/2を乗じた値を引き算すると、実世界画像データJ0を近似する値として、J0×1/2+(J0-J3)×1/2を求めることができる。
【００８８】
なお、式（３）において、1/i×D(n×V)を左辺に移項させると、式（２）に変形できることがわかる。
【００８９】
以下、ax+byの演算を(a,b)(x,y)または(a,b)で表す。
【００９０】
また、式（４）が成り立つ。
【００９１】
【数４】
2008225657.tif 000014
【００９２】
式（４）から、図５に示されるように、1-(N-1)/N=1/N,(N-1)/N(1-(N-2)/(N-1))=1/N,(N-1)/N(N-2)/(N-1)(1-(N-3)/(N-2))=1/Nを一般化すると、式（５）が成り立つ。
【００９３】
【数５】
2008225657.tif 000015
1からNまでのインデックスiについて、式（４）のサメンションを取ると、その総和は、必ず1になる。
【００９４】
ボケ除去演算部１４において、２種類の演算器が組み合わされて用いられる。ここで、２種類の演算器をそれぞれ、近似演算器と、等価変換器と称する。
【００９５】
この２種類の演算器は、隣接するボケ画像データDiとボケ画像データD(i+1)とにかける小規模フィルタである。
【００９６】
近似演算器は、式（６）の演算をボケ画像データDiとボケ画像データD(i+1)とに適用する。
【００９７】
【数６】
2008225657.tif 000016
【００９８】
すなわち、近似演算器は、そのときの出力しようとするボケ除去処理結果画像データKに対して、右側に位置するボケ画像データDiとボケ画像データD(i+1)とから、ai×V×Di-ai×(V-1/(N-i))×D(i+1)を演算し、そのときの出力しようとするボケ除去処理結果画像データKに対して、左側に位置するボケ画像データDiとボケ画像データD(i+1)とから、-ai×(V-1/(N-i))×Di+ai×V×D(i+1)を演算する。
【００９９】
なお、Nは、演算器の総数である。また、係数aiは、後述する式（８）により決定される。
【０１００】
以下、式（６）で示される演算を近似演算とも称する。
【０１０１】
等価変換器は、式（７）の演算をボケ画像データDiとボケ画像データD(i+1)とに適用する。
【０１０２】
【数７】
2008225657.tif 000017
【０１０３】
すなわち、等価変換器は、そのときの出力しようとするボケ除去処理結果画像データKに対して、右側に位置するボケ画像データDiとボケ画像データD(i+1)とから、ai×V×Di-ai×V×D(i+1)を演算し、そのときの出力しようとするボケ除去処理結果画像データKに対して、左側に位置するボケ画像データDiとボケ画像データD(i+1)とから、-ai×V×Di+ai×V×D(i+1)を演算する。
【０１０４】
以下、式（７）で示される演算を等価変換演算とも称する。
【０１０５】
近似演算器のゲインは、ai/(N-i)であり、等価変換器のゲインは、0なので、近似演算器を適宜組み合わせることにより、ボケ除去演算部１４における近似演算器と等価変換器とによるトータルのゲインを1にすることができる。
【０１０６】
ボケ除去演算部１４における近似演算器と等価変換器とによるトータルのゲインを、システマティックに、1にするために、aiは、式（８）により決定される。
【０１０７】
【数８】
2008225657.tif 000018
なお、N=1およびi=0である場合、係数aiは、1とする。
【０１０８】
式（８）により係数aiを決定すると、式（４）より、式（９）に示されるように、ボケ除去演算部１４における近似演算器と等価変換器とによるトータルのゲインは、1になる。
【０１０９】
【数９】
2008225657.tif 000019
【０１１０】
ここで、ボケ画像データD0とボケ画像データD1とから、１つの近似演算器でボケ除去処理結果画像データK0を求めるとすると、ボケ除去処理結果画像データK0は、式（１０）で示される値になる。
【０１１１】
【数１０】
2008225657.tif 000020
【０１１２】
この場合の予測誤差E0は、D1-J(V/2)である。
【０１１３】
また、ボケ画像データD0とボケ画像データD1とから、１つの近似演算器と１つの等価変換器とでボケ除去処理結果画像データK0を求めるとすると、ボケ除去処理結果画像データK0は、式（１１）で示される値になる。
【０１１４】
【数１１】
2008225657.tif 000021
【０１１５】
この場合の全体の予測誤差Etotalは、-J(V+V/2)+D(V+1)である。
【０１１６】
これからわかるように、予測誤差Eは、全て、近似演算器で発生し、近似演算器で発生するそれぞれの予測誤差Eiは、J(i-V/2)-Di+1×(近似演算器のゲイン)である。
【０１１７】
このように、１または複数の近似演算器と、０以上の等価変換器とが組み合わされて、ボケ除去処理結果画像データKが演算される。
【０１１８】
組み合わされる１または複数の近似演算器と０以上の等価変換器とを一般化して表すことを考えると、近似演算器と等価変換器との統合表現は、式（１２）で表される。
【０１１９】
【数１２】
2008225657.tif 000022
【０１２０】
以下において、近似演算器の数をWで表し、等価変換器の数をXで表す。
【０１２１】
そして、インデックスS（w）は、近似演算器のインデックスiの集合のw番目（w>=0である）の要素を示す。例えば、統合表現のf(i)における、f(0)が近似演算であり、f(1)が等価変換演算であり、f(2)が近似演算であり、f(3)が等価変換演算であり、f(4)が近似演算である場合、S（0）=0,S（1）=2,S（2）=4が成り立つ。すなわち、インデックスS（w）は、w番目の近似演算器のインデックスiを示す。
【０１２２】
求めようとする予測値であるボケ除去処理結果画像データK0は、１または複数の近似演算と０以上の等価変換演算とが組み合わされる式（１３）の予測演算式で表される演算で求めることができる。
【０１２３】
【数１３】
2008225657.tif 000023
【０１２４】
この場合、近似演算器のまたは等価変換器である、インデックスiで示されるi番目の演算器において生じる予測誤差Eiは、式（１４）で表される。
【０１２５】
【数１４】
2008225657.tif 000024
【０１２６】
式（１５）で示されるように、スカラー値biを、f(i)が等価変換演算である場合、0とし、f(i)が近似演算である場合、係数aiとすると、予測誤差Etotalは、式（１６）で求められる。
【０１２７】
【数１５】
2008225657.tif 000025
【０１２８】
【数１６】
2008225657.tif 000026
【０１２９】
次に、予測値を求めるための、１または複数の近似演算器と０以上の等価変換器との組み合わせについて説明する。
【０１３０】
予測値を安定的に求めるためには、演算器のゲイン、すなわち、予測値のゲインが1であることが望ましい。
【０１３１】
上述したように、近似演算器のゲインは、ai/(N-i)であり、等価変換器のゲインは、0である。
【０１３２】
近似演算器と等価変換器の２種類の演算器を組み合わせて予測値を求める場合、予測値を求めるための、１または複数の近似演算器と０以上の等価変換器との組み合わせにおいて総合的なゲインを1にするためには、近似演算器に注目して組み合わせを決定すればよい。
【０１３３】
ここでは、誤差を均等に分散させながら、総合的な予測値のゲインを1にするためのシステマティックな手法を提案する。演算に用いるボケ画像データDに対して誤差を均等に分散させることにより、安定的な予測値を得ることができるようになる。
【０１３４】
まず、等価変換器のゲインは0であり、等価変換器は、総合的な予測値のゲインには関与しないので、近似演算器の組み合わせ方、具体的には、各演算器の出力の重み付けを次のように決定する。
【０１３５】
式（４）から、式（１７）が成り立ち、式（１７）から、式（１８）が成り立つ。
【０１３６】
【数１７】
2008225657.tif 000027
【０１３７】
【数１８】
2008225657.tif 000028
【０１３８】
式（８）から、式（１９）が成り立つ。
【０１３９】
【数１９】
2008225657.tif 000029
【０１４０】
式（２０）を展開すると、演算器おけるゲインが、必ず1/Nとなることがわかる。このことから、1乃至Nであるインデックスiについてゲインを足し合わせると、1になることがわかる。
【０１４１】
【数２０】
2008225657.tif 000030
【０１４２】
なお、式（２０）から、上述した式（９）が求められる。
【０１４３】
従って、各近似演算器のゲインは、1/Nとなり、上述したように、それぞれの近似演算器で発生するそれぞれの誤差Eiは、J(i-V/2)-Di×(近似演算器のゲイン)であるので、それぞれの近似演算器において誤差のゲインは、等しくなる。
【０１４４】
すなわち、誤差は、近似演算器が近似演算を適用するボケ画像データDの値に応じて生じ、近似演算が適用されるボケ画像データDに分散して生じると言える。
【０１４５】
ここで、図６乃至図１０を参照して、近似演算器と等価変換器とによる予測値の演算の具体例を説明する。
【０１４６】
図６は、図２と同様に、ボケ画像データD0,・・・,Dnと実世界画像データJ0,・・・,Jmとの関係を示す図である。
【０１４７】
まず、図６に示されるように、図６中のAで示される実世界画像データJ0を求める場合、ボケ画像データD1とボケ画像データD1に動きの方向に隣接するボケ画像データD2とが抽出される。さらに、ボケ画像データD1から、動きの方向に動き量Vの画素だけ離れたボケ画像データD4とボケ画像データD4に動きの方向に隣接するボケ画像データD5とが抽出され、ボケ画像データD4から、動きの方向に動き量Vの画素だけ離れたボケ画像データD7とボケ画像データD7に動きの方向に隣接するボケ画像データD8が抽出される。
【０１４８】
図７に示されるように、ボケ画像データD1からボケ画像データD2を減算した差分は、図６からわかるように、実世界画像データJ1および実世界画像データJ2が相殺されることになるので、実世界画像データJ0から実世界画像データJ3を減算した差分に等しい。
【０１４９】
また、同様に、ボケ画像データD4からボケ画像データD5を減算した差分は、実世界画像データJ3から実世界画像データJ6を減算した差分に等しく、ボケ画像データD7からボケ画像データD8を減算した差分は、実世界画像データJ6から実世界画像データJ9を減算した差分に等しい。
【０１５０】
実世界画像データJ0から実世界画像データJ3を減算した差分、実世界画像データJ3から実世界画像データJ6を減算した差分、および実世界画像データJ6から実世界画像データJ9を減算した差分の総和を求めると、実世界画像データJ3および実世界画像データJ6が相殺されることになるので、実世界画像データJ0から実世界画像データJ9を減算した差分が求められることになる。
【０１５１】
すなわち、ボケ画像データD1からボケ画像データD2を減算した差分、ボケ画像データD4からボケ画像データD5を減算した差分、ボケ画像データD7からボケ画像データD8とを減算した差分の総和を求めると、実世界画像データJ0から実世界画像データJ9を減算した差分が求められる。
【０１５２】
このように、例えば、ボケ画像データD1からボケ画像データD2を減算した差分は、実世界画像データJ0から実世界画像データJ3を減算した差分に等しく、式（７）で示される１つの等価変換演算によって、２つの実世界画像データJの差分に所定の定数を乗じた値が求められることがわかる。
【０１５３】
そして、ボケ画像データD1からボケ画像データD2を減算した差分と、ボケ画像データD1からボケ画像データD2を減算した差分、ボケ画像データD4からボケ画像データD5を減算した差分、およびボケ画像データD7からボケ画像データD8を減算した差分の総和とを比較すると、それぞれ、実世界画像データJ0から実世界画像データJ3を減算した差分と、実世界画像データJ0から実世界画像データJ9を減算した差分とが求められることになり、引かれる数は実世界画像データJ0で同じであり、引く数は、実世界画像データJ3から実世界画像データJ9に変わっている。
【０１５４】
すなわち、動きの方向に隣接するボケ画像データDの差分に、これから動きの方向に動き量Vの画素だけ離れた隣接するボケ画像データDの差分を加算すると、引く数を動き量Vだけ動き方向に移動させて、２つの実世界画像データJの差分を求めることができる。
【０１５５】
式（７）で示される等価変換演算を複数組み合わせることによって、引く数を動き量Vだけ動き方向に移動させた２つの実世界画像データJの差分に所定の定数を乗じた値が求められることがわかる。
【０１５６】
次に、ボケ画像データD1およびボケ画像データD2と、ボケ画像データD4およびボケ画像データD5と、ボケ画像データD7およびボケ画像データD8とを用いて、近似演算について説明する。
【０１５７】
図８に示されるように、ボケ画像データD1から、ボケ画像データD2に2/3を乗算した結果を引き算すると、ボケ画像データD1が、実世界画像データJ0と実世界画像データJ1と実世界画像データJ2とを積分したものであり、ボケ画像データD2が、実世界画像データJ1と実世界画像データJ2と実世界画像データJ3とを積分したものなので、実世界画像データJ3に2/3を乗算した結果を実世界画像データJ0から引き算し、実世界画像データJ1と実世界画像データJ2とを加算した和に1/3を乗算した結果をその引き算の結果に加算した値が得られる。
【０１５８】
また、ボケ画像データD4から、ボケ画像データD5に1/2を乗算した結果を引き算すると、ボケ画像データD4が、実世界画像データJ3と実世界画像データJ4と実世界画像データJ5とを積分したものであり、ボケ画像データD5が、実世界画像データJ4と実世界画像データJ5と実世界画像データJ6とを積分したものなので、実世界画像データJ6に1/2を乗算した結果を実世界画像データJ3から引き算し、実世界画像データJ4と実世界画像データJ5とを加算した和に1/2を乗算した結果をその引き算の結果に加算した値が得られる。
【０１５９】
さらに、ボケ画像データD7から、ボケ画像データD8に0を乗算した結果を引き算すると、ボケ画像データD7が、実世界画像データJ6と実世界画像データJ7と実世界画像データJ8とを積分したものなので、その実世界画像データJ6と実世界画像データJ7と実世界画像データJ8とを加算した値が得られる。
【０１６０】
ボケ画像データD1から、ボケ画像データD2に2/3を乗算した結果を引き算して得られた、実世界画像データJ3に2/3を乗算した結果を実世界画像データJ0から引き算し、実世界画像データJ1と実世界画像データJ2とを加算した和に1/3を乗算した結果をその引き算の結果に加算した値から、実世界画像データJ3の成分を消去することを考えると、ボケ画像データD4から、ボケ画像データD5に1/2を乗算した結果を引き算して得られた、実世界画像データJ6に1/2を乗算した結果を実世界画像データJ3から引き算し、実世界画像データJ4と実世界画像データJ5とを加算した和に1/2を乗算した結果をその引き算の結果に加算した値に含まれる実世界画像データJ3の成分を利用すればよい。
【０１６１】
すなわち、ボケ画像データD4から、ボケ画像データD5に1/2を乗算した結果を引き算して得られた結果に2/3を乗算して、その値を、ボケ画像データD1から、ボケ画像データD2に2/3を乗算した結果を引き算して得られた結果から引き算する。
【０１６２】
これにより、ボケ画像データD1から、ボケ画像データD2に2/3を乗算した結果を引き算して得られた、実世界画像データJ3に2/3を乗算した結果を実世界画像データJ0から引き算し、実世界画像データJ1と実世界画像データJ2とを加算した和に1/3を乗算した結果をその引き算の結果に加算した値から、実世界画像データJ3の成分が消去される。
【０１６３】
そして、実世界画像データJ3の成分を消去した結果から、さらに、実世界画像データJ6の成分を消去することを考える。
【０１６４】
ボケ画像データD7から、ボケ画像データD8に0を乗算した結果を引き算して得られた結果に1/2を乗算して、その値を、実世界画像データJ3の成分を消去した結果から引き算すると、実世界画像データJ3の成分と実世界画像データJ6の成分とが消去される。
【０１６５】
このように、不要な実世界画像データJを順に消去して、必要な実世界画像データJを近似することができる。
【０１６６】
この近似は、単純には、図９に示されるように、実世界画像データJ0を、実世界画像データJ0と実世界画像データJ1と実世界画像データJ2とを加算した値、すなわちボケ画像データD1に1/3を乗算した結果で近似し、また、実世界画像データJ3を、実世界画像データJ3と実世界画像データJ4と実世界画像データJ5とを加算した値、すなわち、ボケ画像データD4に1/3を乗算した結果で近似し、実世界画像データJ6を、実世界画像データJ6と実世界画像データJ7と実世界画像データJ8とを加算した値、すなわちボケ画像データD7に1/3を乗算した結果で近似することを基本としたものである。
【０１６７】
この場合、誤差E0は、ボケ画像データD1に1/3を乗算した結果で実世界画像データJ0を近似した場合の誤差を示す。
【０１６８】
また、誤差E3は、ボケ画像データD4に1/3を乗算した結果で実世界画像データJ3を近似した場合の誤差を示し、誤差E6は、ボケ画像データD7に1/3を乗算した結果で実世界画像データJ6を近似した場合の誤差を示す。
【０１６９】
このような、近似演算と等価変換演算とが組み合わされて、予測値が求められる。
【０１７０】
図１０は、ボケ画像データD1とボケ画像データD2に等価変換演算を適用し、ボケ画像データD4とボケ画像データD5に近似演算を適用し、ボケ画像データD7とボケ画像データD8に等価変換演算を適用し、ボケ画像データD10とボケ画像データD11に近似演算を適用し、ボケ画像データD13とボケ画像データD14に等価変換演算を適用し、ボケ画像データD16とボケ画像データD17に近似演算を適用した場合の、近似演算と等価変換演算との組み合わせの例を示す図である。
【０１７１】
図１０において、実線の下線は、等価変換演算の項を示し、点線の下線は、近似演算の項を示す。
【０１７２】
図１０の上側に示される、ボケ画像データDについての演算式の項のそれぞれについて、等価変換演算の項を実世界画像データJに置換して、近似演算の項を近似値に置き換えると、図１０の上から２番目に示される図に相当する式に書き換えることができる。
【０１７３】
さらに、近似値を、実世界画像データJと誤差Eとに置き換えると、図１０の上から３番目に示される図に相当する式に書き換えることができる。なお、一点鎖線の下線は、実世界画像データJと誤差Eとに置き換えられた項を示す。
【０１７４】
これを展開して、誤差Eに係る係数を整理すると、最終的に、予測値であるボケ除去処理結果画像データK0は、実世界画像データJ3に予測誤差E3と予測誤差E9と予測誤差E15を加算した値に1/3を乗じた結果を加えた値となることがわかる。
【０１７５】
このように、図１１に示されるように、ボケ画像データD0とこれに隣接するボケ画像データD1との組、ボケ画像データD0とボケ画像データD1との組から動きの方向に動き量Vの画素だけ離れたボケ画像データDVとこれに隣接するボケ画像データDV+1との組、ボケ画像データDVとボケ画像データDV+1との組から動きの方向に動き量Vの画素だけ離れたボケ画像データD2Vとこれに隣接するボケ画像データD2V+1との組、ボケ画像データD2Vとボケ画像データD2V+1との組から動きの方向に動き量Vの画素だけ離れたボケ画像データD3Vとこれに隣接するボケ画像データD3V+1との組、ボケ画像データD3Vとボケ画像データD3V+1との組から動きの方向に動き量Vの画素だけ離れたボケ画像データD4Vとこれに隣接するボケ画像データD4V+1との組のそれぞれに、近似演算または等価変換処理のいずれかを適用する。
【０１７６】
例えば、ボケ画像データD0とボケ画像データD1との組に近似演算を適用し、ボケ画像データDVとボケ画像データDV+1との組に等価変換演算を適用し、ボケ画像データD2Vとボケ画像データD2V+1との組に近似演算を適用し、ボケ画像データD3Vとボケ画像データD3V+1との組に近似演算を適用し、ボケ画像データD4Vとボケ画像データD4V+1との組に等価変換演算を適用する。
【０１７７】
それぞれの近似演算およびそれぞれの等価変換演算の結果が加算されることにより、予測値が求められる。
【０１７８】
図１１に示される演算の例において、統合表現のf(i)における、f(0)が近似演算であり、f(1)が等価変換演算であり、f(2)が近似演算であり、f(3)が近似演算であり、f(4)が等価変換演算なので、インデックスS（0）は0となり、インデックスS（1）は2となり、インデックスS（2）は3となる。
【０１７９】
このように、近似演算と等価変換演算との組み合わせに応じて、予測値が求められる。具体的には、予測値の演算の項の数（近似演算および等価変換演算の総数）、近似演算の項の数、等価変換演算の項の数、および予測値の演算の演算式における近似演算の項の位置が変わることにより、近似演算と等価変換演算との異なる組み合わせが得られ、この異なる組み合わせ毎に予測値が得られる。
【０１８０】
すなわち、演算器の総数N、近似演算器の数W、等価変換器の数X、およびインデックスS（w）が異なる組み合わせ毎に予測値が得られる。
【０１８１】
以下、ある特定の演算器の総数N、ある特定の近似演算器の数W、ある特定の等価変換器の数X、およびある特定のインデックスS（w）で定まる、ある特定の近似演算器と等価変換器との組み合わせ、すなわち、ある特定の近似演算と等価変換演算との組み合わせを予測パターンとも称する。１つの予測パターンの近似演算器と等価演算器との組み合わせ（近似演算と等価変換演算との組み合わせ）から、１つの予測値が得られる。
【０１８２】
図１のボケ除去演算部１４は、近似演算と等価変換演算との異なる組み合わせの全てについて、予測値を演算する。
【０１８３】
例えば、演算器の総数Nの最大値が予め決定され、1以上最大値以下の範囲の演算器の総数Nのそれぞれについて、1以上の近似演算器の数Wと、0以上の等価変換器の数Xと、それぞれのインデックスS（w）とから、近似演算と等価変換演算との異なる組み合わせの全てが求められる。
【０１８４】
ボケ除去演算部１４は、このように求められた近似演算と等価変換演算との異なる組み合わせの全てについて、予測値を演算する。
【０１８５】
演算結果比較選択部１５は、ボケ除去演算部１４から供給された、近似演算と等価変換演算との異なる組み合わせの全てについての、１または複数の予測値から、より確からしい予測値を選択して、選択した予測値から画素値を求める。
【０１８６】
ここで、演算結果比較選択部１５における、予測値の選択について説明する。
【０１８７】
近似演算と等価変換演算との組み合わせに応じて得られた、複数の予測値のそれぞれには、上述したように、どれも同じゲインの誤差Eが含まれる。予測値のそれぞれにおける、誤差Eの大小は、予測値の演算の用いたボケ画像データDで表される画像のおける波形の形状に依存する。
【０１８８】
予測値の演算の用いたボケ画像データDで表される画像のエッジに偏りが無く、複数の近似演算器のそれぞれをどのように配置したかの差だけ（インデックスS（w）の値が異なるだけ）とすると、理想的には予測値の誤差Eは0を中心に対称に散らばる。
【０１８９】
演算結果比較選択部１５は、例えば、ボケ除去演算部１４から供給された複数の予測値から、その中央値に近い予測値を画素値として選択する。このようにすることで、ボケ除去処理結果画像データKから、よりロバストにリンギングを除去することができるようになる。
【０１９０】
以下において、より具体的に、複数の予測値についての最尤値について説明する。
【０１９１】
式（１２）の予測式において、例えば、予測式の項の数を20（演算器の総数Nを20）とし、近似演算の項の数を10とする（近似演算器の数を10）とすると、20C10通りの組み合わせの予測式が有りうる。
【０１９２】
予測誤差Etotalがガウス分布G（0,σ）に従うとすると、無作為に予測値をR個選んだ場合、何番目の大きさの予測値が実世界画像データJの真値に最も近いかの確率は、式（２２）乃至式（２４）で求められる。式（２２）は、最も大きい予測値が実世界画像データJの真値に最も近い確率を算出する演算を示し、式（２３）は、２番目に大きい予測値が実世界画像データJの真値に最も近い確率を算出する演算を示し、式（２４）は、K番目に大きい予測値が実世界画像データJの真値に最も近い確率を算出する演算を示す。
【０１９３】
【数２２】
2008225657.tif 000031
【０１９４】
【数２３】
2008225657.tif 000032
【０１９５】
【数２４】
2008225657.tif 000033
【０１９６】
式（２２）乃至式（２４）より、実世界画像データJの真値に近い確率は、中央値のものが最大となることがわかる。
【０１９７】
例えば、予測式の項の数を20（演算器の総数Nを20）とし、近似演算の項の数を10とする（近似演算器の数を10）とした場合、演算結果比較選択部１５は、その複数の予測値から、中央値に近い10の予測値を選択し、選択した予測値の平均値を、最終的な、動きボケを除去した画素値として出力する。
【０１９８】
次に、図１２および図１３を参照して、ボケ除去演算部１４の構成を説明する。
【０１９９】
図１２は、ボケ除去演算部１４の構成を示すブロック図である。ボケ除去演算部１４は、演算部３１−１乃至演算部３１−Ｚから構成される。
【０２００】
演算部３１−１乃至演算部３１−Ｚの数Ｚは、近似演算と等価変換演算との異なる組み合わせの全ての数、すなわち、近似演算と等価変換演算との組み合わせである予測パターンの全部の数に等しい。
【０２０１】
演算部３１−１は、ボケ除去パラメータ生成部１３から供給された動き量Vとアフィン変換部１２から供給された画素列から、１つの予測パターンに応じた近似演算と等価変換演算との組み合わせで、予測値を演算する。
【０２０２】
演算部３１−２は、ボケ除去パラメータ生成部１３から供給された動き量Vとアフィン変換部１２から供給された画素列から、演算部３１−１における予測パターンと異なる１つの予測パターンに応じた近似演算と等価変換演算との組み合わせで、予測値を演算する。
【０２０３】
演算部３１−３乃至演算部３１−Ｚは、それぞれ、ボケ除去パラメータ生成部１３から供給された動き量Vとアフィン変換部１２から供給された画素列から、演算部３１−１または演算部３１−２における予測パターンと異なる予測パターンであって、互いに異なる１つの予測パターンに応じた近似演算と等価変換演算との組み合わせで、予測値を演算する。
【０２０４】
演算部３１−１乃至演算部３１−Ｚは、それぞれ、演算した予測値を出力する。すなわち、ボケ除去演算部１４から、予測パターンの数Ｚと同じ数の予測値が出力される。
【０２０５】
以下、演算部３１−１乃至演算部３１−Ｚを個々に区別する必要がない場合、単に、演算部３１と称する。
【０２０６】
図１３は、演算部３１の構成を示すブロック図である。
【０２０７】
演算部３１は、可変シフトレジスタ５１−１乃至可変シフトレジスタ５１−Ｎ、スイッチ５２、等価変換演算部５３−１乃至等価変換演算部５３−Ｘ、近似演算部５４−１乃至近似演算部５４−Ｗ、および予測値演算部５５から構成される。
【０２０８】
可変シフトレジスタ５１−１は、アフィン変換部１２から供給された、動きの方向に１列の画素の列である画素列を、動き量Vに応じて、シフトして、シフトされた画素列の左側の２つの隣接する画素をスイッチ５２に供給するとともに、シフトされた画素列を可変シフトレジスタ５１−２に供給する。
【０２０９】
例えば、図２に示される、ボケ画像データD0乃至ボケ画像データD15の画素列がアフィン変換部１２から供給された場合、実世界画像データJ0の予測値を求めようとするとき、可変シフトレジスタ５１−１は、ボケ画像データD0乃至ボケ画像データD15の画素列を左に１画素だけシフトして、シフトされた画素列の左側の２つの隣接するボケ画像データD1およびボケ画像データD2をスイッチ５２に供給する。また、可変シフトレジスタ５１−１は、シフトされた画素列の全体を可変シフトレジスタ５１−２に供給する。
【０２１０】
可変シフトレジスタ５１−２は、可変シフトレジスタ５１−１から供給された、動きの方向に１列の画素の列である画素列を、動き量Vに応じて、シフトして、シフトされた画素列の左側の２つの隣接する画素をスイッチ５２に供給する。また、可変シフトレジスタ５１−２は、シフトされた画素列の全体を可変シフトレジスタ５１−３（図示せず）に供給する。
【０２１１】
例えば、図２に示される、ボケ画像データD0乃至ボケ画像データD15の画素列がアフィン変換部１２から供給された場合、実世界画像データJ0の予測値を求めようとするとき、可変シフトレジスタ５１−２は、可変シフトレジスタ５１−１においてシフトされたボケ画像データD0乃至ボケ画像データD15の画素列を、さらに、3である動き量Vに応じて、画素列を左に３画素だけシフトして、シフトされた画素列の左側の２つの隣接するボケ画像データD4およびボケ画像データD5をスイッチ５２に供給する。可変シフトレジスタ５１−２は、シフトされた画素列の全体を可変シフトレジスタ５１−３に供給する。
【０２１２】
同様に、可変シフトレジスタ５１−３乃至可変シフトレジスタ５１−Ｎは、それぞれ、動きの方向に１列の画素の列である画素列を、動き量Vに応じて、シフトして、シフトされた画素列の左側の２つの隣接する画素をスイッチ５２に供給する。
【０２１３】
可変シフトレジスタ５１−３乃至可変シフトレジスタ５１−（Ｎ−１）（図示せず）は、それぞれ、シフトした画素列の全体を可変シフトレジスタ５１−４（図示せず）乃至可変シフトレジスタ５１−Ｎのそれぞれに供給する。
【０２１４】
例えば、可変シフトレジスタ５１−１乃至可変シフトレジスタ５１−Ｎは、それぞれ、図６に示されるように、ボケ画像データD1およびボケ画像データD2、ボケ画像データD4およびボケ画像データD5、ボケ画像データD7およびボケ画像データD8、ボケ画像データD10およびボケ画像データD11、ボケ画像データD13およびボケ画像データD14を抽出して、スイッチ５２に供給する。
【０２１５】
すなわち、可変シフトレジスタ５１−１乃至可変シフトレジスタ５１−Ｎは、それぞれ、ボケ画像データDと、そのボケ画像データDに動きの方向に隣接するボケ画像データDとの組であって、画素を単位とする動き量Vだけ他の組から離れた組を抽出して、スイッチ５２に供給する。
【０２１６】
スイッチ５２は、可変シフトレジスタ５１−１乃至可変シフトレジスタ５１−Ｎのそれぞれから供給された、ボケ画像データDと、そのボケ画像データDに動きの方向に隣接するボケ画像データDとの組を、等価変換演算部５３−１乃至等価変換演算部５３−Ｘおよび近似演算部５４−１乃至近似演算部５４−Ｗに供給する。
【０２１７】
例えば、スイッチ５２は、隣接するボケ画像データDの組のそれぞれを、等価変換演算部５３−１乃至等価変換演算部５３−Ｘおよび近似演算部５４−１乃至近似演算部５４−Ｗの全部に供給する。
【０２１８】
例えば、スイッチ５２は、隣接するボケ画像データDの１組を、等価変換演算部５３−１乃至等価変換演算部５３−Ｘおよび近似演算部５４−１乃至近似演算部５４−Ｗのうちのいずれか１つに供給する。
【０２１９】
等価変換演算部５３−１は、１つの等価変換器に相当し、スイッチ５２から供給された、隣接するボケ画像データDの１組に、等価変換演算を適用する。
【０２２０】
等価変換演算部５３−２乃至等価変換演算部５３−Ｘは、それぞれ、１つの等価変換器に相当し、スイッチ５２から供給された、隣接するボケ画像データDの１組に、等価変換演算を適用する。
【０２２１】
等価変換演算部５３−１乃至等価変換演算部５３−Ｘは、それぞれ、等価変換演算の演算結果を予測値演算部５５に供給する。
【０２２２】
近似演算部５４−１は、１つの近似演算器に相当し、スイッチ５２から供給された、隣接するボケ画像データDの１組に、近似演算を適用する。
【０２２３】
近似演算部５４−２乃至近似演算部５４−Ｗは、それぞれ、１つの近似演算器に相当し、スイッチ５２から供給された、隣接するボケ画像データDの１組に、近似演算を適用する。
【０２２４】
近似演算部５４−１乃至近似演算部５４−Ｗは、それぞれ、近似演算の演算結果を予測値演算部５５に供給する。
【０２２５】
予測値演算部５５は、等価変換演算の演算結果と近似演算の演算結果とを、予測パターンによって決められる演算式のそれぞれの項に用いて、予測値を演算する。例えば、予測値演算部５５は、等価変換演算部５３−１乃至等価変換演算部５３−Ｘおよび近似演算部５４−２乃至近似演算部５４−Ｗから供給された演算結果を加算して、予測値を演算し、求めた予測値を出力する。
【０２２６】
以下、可変シフトレジスタ５１−１乃至可変シフトレジスタ５１−Ｎを個々に区別する必要がないとき、単に、可変シフトレジスタ５１と称する。等価変換演算部５３−１乃至等価変換演算部５３−Ｘを個々に区別する必要がないとき、単に、等価変換演算部５３と称する。また、近似演算部５４−１乃至近似演算部５４−Ｗを個々に区別する必要がないとき、単に、近似演算部５４と称する。
【０２２７】
図１４は、演算結果比較選択部１５の構成を示すブロック図である。演算結果比較選択部１５は、ソート部７１、選択部７２、および平均値演算部７３から構成される。
【０２２８】
ソート部７１は、演算部３１−１乃至演算部３１−Ｚのそれぞれから供給された、Ｚ個の予測値を、その大きさでソートする。ソート部７１は、大きさの順にソートされた予測値を選択部７２に供給する。
【０２２９】
選択部７２は、ソート部７１から供給された、その大きさでソートされた予測値から、ソートされた順において中央に近い所定の数の予測値を選択して、選択した予測値を平均値演算部７３に供給する。
【０２３０】
または、選択部７２は、ソート部７１から供給された、その大きさでソートされた予測値から、中央値に近い所定の数の予測値を選択して、選択した予測値を平均値演算部７３に供給する。
【０２３１】
なお、選択部７２は、全部の予測値の平均値、または最大の予測値と最小の予測値との平均値を基準として、予測値を選択するようにしてもよい。
【０２３２】
また、ソートされた順における中央、メディアン、全部の予測値の平均値、および最大の予測値と最小の予測値との平均値のうち、どれを基準とするかは、それぞれを基準として動きボケを除去した画像を表示させて、使用者に選択させるようにしてもよい。
【０２３３】
平均値演算部７３は、選択部７２により選択された予測値の平均値を求めて、その平均値を画素値として出力する。
【０２３４】
次に、フローチャートを参照して、動きボケを除去する処理について説明する。
【０２３５】
図１５は、ボケ除去の処理の例を説明するフローチャートである。ステップＳ１１において、ボケ除去パラメータ生成部１３は、動き検出部１１または外部から供給された動きベクトルから、入力された画像データの動き量Vを取得する。
【０２３６】
ステップＳ１２において、ボケ除去パラメータ生成部１３は、動き検出部１１または外部から供給された動きベクトルから、入力された画像データの動きの方向の角度を取得する。
【０２３７】
ステップＳ１３において、アフィン変換部１２は、動き量Vおよび動きの方向の角度を参照して、動きの方向が画像の横方向のなるように画像データをアフィン変換する。アフィン変換部１２は、アフィン変換された画像データから、画像の横方向に１列の画素の列である画素列を抽出して、抽出した画素列をボケ除去演算部１４に供給する。
【０２３８】
ステップＳ１４において、ボケ除去演算部１４において、ボケ除去演算の処理が行われる。ボケ除去演算の処理の詳細は、図１６または図１７のフローチャートを参照して後述する。
【０２３９】
ステップＳ１５において、ボケ除去演算部１４は、全ての予測パターンによる予測値を求めたか否かを判定し、全ての予測パターンによる予測値を求めていないと判定された場合、ステップＳ１４に戻り、ボケ除去演算の処理を繰り返す。
【０２４０】
ステップＳ１５において、全ての予測パターンによる予測値を求めたと判定された場合、手続きは、ステップＳ１６に進み、ステップＳ１６において、演算結果比較選択部１５のソート部７１は、ステップＳ１４のボケ除去演算の処理により得られた予測値を、その大きさの順にソートする。
【０２４１】
ステップＳ１７において、演算結果比較選択部１５の選択部７２は、ソートされた予測値から、所定の予測値を選択する。例えば、選択部７２は、ソートされた順において中央に近い、所定の数の予測値を選択する。例えば、選択部７２は、中央値に近い、所定の数の予測値を選択する。
【０２４２】
ステップＳ１８において、演算結果比較選択部１５の平均値演算部７３は、選択された予測値の平均値を画素値として計算する。
【０２４３】
ステップＳ１９において、ボケ除去演算部１４は、全画面について処理を終了したか否かを判定し、全画面について処理を終了していないと判定された場合、手続きはステップＳ１１に戻り、次の画素について、上述した処理を繰り返す。
【０２４４】
ステップＳ１９において、全画面について処理を終了したと判定された場合、ボケ除去の処理は終了する。
【０２４５】
図１６は、図１５のステップＳ１４に対応するボケ除去演算の処理の詳細の例を説明するフローチャートである。ステップＳ３１において、可変シフトレジスタ５１−１は、アフィン変換部１２から供給された画素列の左端の画素と、これに隣接する画素とを抽出する。また、可変シフトレジスタ５１−２は、画素列の左端から、画素を単位とする動き量Vと同じ画素の数だけ右側の画素である基準画素と、基準画素の右側に隣接する画素である隣接画素とを抽出する。
【０２４６】
ステップＳ３２において、可変シフトレジスタ５１−３は、前回の基準画素から、画素を単位とする動き量Vと同じ画素の数だけ右側の画素を新たな基準画素とする。
【０２４７】
ステップＳ３３において、ボケ除去演算部１４は、新たな基準画素とその右側に隣接する画素とが、アフィン変換部１２から供給された画素列にあるか否かを判定する。
【０２４８】
ステップＳ３３において、新たな基準画素とその右側に隣接する画素とが画素列にあると判定された場合、ステップＳ３４に進み、可変シフトレジスタ５１−３は、基準画素と、基準画素の右側に隣接する画素である隣接画素とを抽出する。ステップＳ３３の後、手続きは、ステップＳ３２に戻り、上述した処理を繰り返す。
【０２４９】
これ以降、ステップＳ３２乃至ステップＳ３４の処理が繰り返される場合、ステップＳ３２およびステップＳ３４の処理は、可変シフトレジスタ５１−４乃至可変シフトレジスタ５１−Ｎの順に、可変シフトレジスタ５１−４乃至可変シフトレジスタ５１−Ｎのそれぞれによって実行される。
【０２５０】
ステップＳ３３において、新たな基準画素とその右側に隣接する画素とが画素列にないと判定された場合、手続きはステップＳ３５に進み、等価変換演算部５３−１は、スイッチ５２を介して供給された、１組の基準画素と隣接画素とに等価変換演算を適用する。
【０２５１】
ステップＳ３６において、ボケ除去演算部１４は、全ての基準画素と隣接画素とに等価変換演算を適用したか否かを判定し、全ての基準画素と隣接画素とに等価変換演算を適用していないと判定された場合、ステップＳ３５に戻り、等価変換演算を繰り返す。
【０２５２】
なお、ステップＳ３５の等価変換演算が繰り返される場合、そのステップＳ３５の等価変換演算は、等価変換演算部５３−２乃至等価変換演算部５３−Ｘの順に、等価変換演算部５３−２乃至等価変換演算部５３−Ｘのそれぞれによって実行される。
【０２５３】
ステップＳ３６において、全ての基準画素と隣接画素とに等価変換演算を適用したと判定された場合、手続きはステップＳ３７に進み、近似演算部５４−１は、スイッチ５２を介して供給された、１組の基準画素と隣接画素とに近似演算を適用する。
【０２５４】
ステップＳ３８において、ボケ除去演算部１４は、全ての基準画素と隣接画素とに近似演算を適用したか否かを判定し、全ての基準画素と隣接画素とに近似演算を適用していないと判定された場合、ステップＳ３７に戻り、近似演算を繰り返す。
【０２５５】
なお、ステップＳ３７の近似演算が繰り返される場合、そのステップＳ３７の近似演算は、近似演算部５４−２乃至近似演算部５４−Wの順に、近似演算部５４−２乃至近似演算部５４−Wのそれぞれによって実行される。
【０２５６】
ステップＳ３８において、全ての基準画素と隣接画素とに近似演算を適用したと判定された場合、手続きはステップＳ３９に進み、ステップＳ３９において、予測値演算部５５は、等価変換演算の結果と近似演算の結果とを演算式の予め決めた項に用いて、予測値を演算して、ボケ除去演算の処理は終了する。すなわち、ステップＳ３９において、予測値演算部５５は、等価変換演算の結果と近似演算の結果とを、予測パターンによって決められるそれぞれの項に用いて、予測値を演算する。
【０２５７】
なお、図１６のフローチャートは、左から右に動く場合のボケ除去演算の処理を説明するものであり、右から左に動く場合のボケ除去演算の処理は、ステップＳ３１乃至ステップＳ３４において、’右側’が’左側’となる相違点を除いて、図１６のフローチャートに示す場合と同様である。
【０２５８】
次に、ボケ除去演算の処理の他の例を説明する。
【０２５９】
図１７は、図１５のステップＳ１４に対応するボケ除去演算の処理の詳細の他の例を説明するフローチャートである。ステップＳ５１において、ボケ除去演算部１４は、インデックスqに0を設定する。インデックスqは、予測パターンを特定するための変数である。
【０２６０】
ステップＳ５２において、ボケ除去演算部１４は、インデックスkおよびインデックスiに、それぞれ0を設定する。インデックスkは、インデックスSの引数を特定するための変数である。
【０２６１】
ステップＳ５３において、ボケ除去演算部１４は、予測パターンPqにおける予測値Kに0を設定する。ステップＳ５４において、可変シフトレジスタ５１は、隣接する画素D(i×V)と画素D(i×V+1)とを取得する。すなわち、可変シフトレジスタ５１は、隣接するボケ画像データD(i×V)とボケ画像データD(i×V+1)とを取得する。
【０２６２】
ステップＳ５５において、ボケ除去演算部１４は、インデックスiが、予測パターンPqにおける近似演算器のインデックスs(k)と等しいか否かを判定する。ステップＳ５５において、インデックスiが、予測パターンPqにおける近似演算器のインデックスs(k)と等しいと判定された場合、手続きはステップＳ５６に進み、近似演算部５４は、隣接する画素D(i×V)と画素D(i×V+1)とに近似演算r(i×V)を適用する。
【０２６３】
ステップＳ５７において、ボケ除去演算部１４は、インデックスkを1だけインクリメントして、手続きはステップＳ５９に進む。
【０２６４】
一方、ステップＳ５５において、インデックスiが、予測パターンPqにおける近似演算器のインデックスs(k)と等しくないと判定された場合、手続きはステップＳ５８に進み、等価変換演算部５３は、隣接する画素D(i×V)と画素D(i×V+1)とに等価変換演算e(i×V)を適用する。ステップＳ５８の後、手続きはステップＳ５９に進む。
【０２６５】
ステップＳ５９において、予測値演算部５５は、ステップＳ５６またはステップＳ５８の演算の結果を、予測パターンPqにおける予測値Kに加算する。
【０２６６】
ステップＳ６０において、ボケ除去演算部１４は、インデックスiが、近似演算器の数Wと等価変換器の数Xとの和に等しいか否かを判定し、インデックスiが、近似演算器の数Wと等価変換器の数Xとの和に等しくないと判定された場合、手続きはステップＳ６１に進み、ボケ除去演算部１４は、インデックスiを1だけインクリメントする。ステップＳ６１の後、手続きは、ステップＳ５４に戻り、上述した処理を繰り返す。
【０２６７】
ステップＳ６０において、インデックスiが、近似演算器の数Wと等価変換器の数Xとの和に等しいと判定された場合、手続きはステップＳ６２に進み、ボケ除去演算部１４は、インデックスqが予測パターンの数に等しいか否かを判定する。
【０２６８】
ステップＳ６２において、インデックスqが予測パターンの数に等しくないと判定された場合、手続きはステップＳ６３に進み、ボケ除去演算部１４は、インデックスqを1だけインクリメントする。ステップＳ６３の後、手続きは、ステップＳ５２に戻り、上述した処理を繰り返す。
【０２６９】
ステップＳ６２において、インデックスqが予測パターンの数に等しいと判定された場合、ボケ除去演算の処理は終了する。
【０２７０】
次に、入力された画像データに応じて予測パターンを選択して、選択した予測パターンで予測値を演算する場合について説明する。
【０２７１】
図１８は、本発明の一実施の形態の画像処理装置の構成の他の例を示すブロック図である。図１８において、図１に示す場合と同様の部分には、同一の符号を付してあり、その説明は省略する。
【０２７２】
図１８の画像処理装置は、動き検出部１１、アフィン変換部１２、ボケ除去パラメータ生成部１３、演算結果比較選択部１５、逆アフィン変換部１６、ボケ除去演算部１０１、および予測パターン選択部１０２から構成される。
【０２７３】
アフィン変換部１２は、画素列をボケ除去演算部１０１に供給し、アフィン変換した画像データを予測パターン選択部１０２に供給する。
【０２７４】
ボケ除去演算部１０１は、予測パターン選択部１０２から供給される、等価変換演算の割り当てを指示するための等価変換演算割り当て指示信号に応じた予測パターンで、アフィン変換部１２から供給された画素列から、動きボケを含まない画素値の予測値を演算する。
【０２７５】
予測パターン選択部１０２は、アフィン変換部１２から供給される画像データから、等価変換演算割り当て指示信号を生成して、ボケ除去演算部１０１に供給する。
【０２７６】
予測パターン選択部１０２は、エッジ検出部１１１を含む。エッジ検出部１１１は、Sobelフィルタ、Prewittフィルタ、またはLaplacianフィルタなどによって構成され、画像データから、画像のエッジを検出する。
【０２７７】
予測パターン選択部１０２は、エッジ検出部１１１よって検出されたエッジの画素に等価変換演算を割り当てるように、等価変換演算割り当て指示信号を生成する。
【０２７８】
図１９は、ボケ除去演算部１０１の構成を示すブロック図である。ボケ除去演算部１０１は、演算部１３１−１乃至演算部１３１−Tから構成される。
【０２７９】
演算部１３１−１乃至演算部１３１−Tの数Tは、選択される予測パターンの数に等しい。
【０２８０】
演算部１３１−１は、予測パターン選択部１０２から供給された等価変換演算割り当て指示信号、ボケ除去パラメータ生成部１３から供給された動き量V、およびアフィン変換部１２から供給された画素列から、１つの予測パターンに応じた近似演算と等価変換演算との組み合わせで、予測値を演算する。
【０２８１】
演算部１３１−２は、予測パターン選択部１０２から供給された等価変換演算割り当て指示信号、ボケ除去パラメータ生成部１３から供給された動き量V、およびアフィン変換部１２から供給された画素列から、演算部１３１−１における予測パターンと異なる１つの予測パターンに応じた近似演算と等価変換演算との組み合わせで、予測値を演算する。
【０２８２】
演算部１３１−３乃至演算部１３１−Tは、それぞれ、予測パターン選択部１０２から供給された等価変換演算割り当て指示信号、ボケ除去パラメータ生成部１３から供給された動き量V、およびアフィン変換部１２から供給された画素列から、演算部１３１−１または演算部１３１−２における予測パターンと異なる予測パターンであって、互いに異なる１つの予測パターンに応じた近似演算と等価変換演算との組み合わせで、予測値を演算する。
【０２８３】
演算部１３１−１乃至演算部１３１−Tは、それぞれ、演算した予測値を出力する。すなわち、ボケ除去演算部１０１から、選択される予測パターンの数Tと同じ数の予測値が出力される。
【０２８４】
以下、演算部１３１−１乃至演算部１３１−Tを個々に区別する必要がない場合、単に、演算部１３１と称する。
【０２８５】
図２０は、演算部１３１の構成を示すブロック図である。
【０２８６】
演算部１３１は、可変シフトレジスタ１５１−１乃至可変シフトレジスタ１５１−Ｎ、スイッチ１５２、等価変換演算部１５３−１乃至等価変換演算部１５３−Ｘ、近似演算部１５４−１乃至近似演算部１５４−Ｗ、および予測値演算部１５５から構成される。
【０２８７】
可変シフトレジスタ１５１−１乃至可変シフトレジスタ１５１−Ｎは、それぞれ、可変シフトレジスタ５１と同様に、アフィン変換部１２から供給された、動きの方向に１列の画素の列である画素列を、動き量Vに応じて、シフトして、シフトされた画素列の左側の２つの隣接する画素をスイッチ１５２に供給し、シフトした画素列を後段に供給する。
【０２８８】
すなわち、可変シフトレジスタ１５１−１乃至可変シフトレジスタ１５１−Ｎは、それぞれ、ボケ画像データDと、そのボケ画像データDに動きの方向に隣接するボケ画像データDとの組であって、画素を単位とする動き量Vだけ他の組から離れた組を抽出して、スイッチ１５２に供給する。
【０２８９】
スイッチ１５２は、予測パターン選択部１０２から供給された等価変換演算割り当て指示信号に応じて、可変シフトレジスタ１５１−１乃至可変シフトレジスタ１５１−Ｎのそれぞれから供給された、ボケ画像データDと、そのボケ画像データDに動きの方向に隣接するボケ画像データDとの組を、等価変換演算部１５３−１乃至等価変換演算部１５３−Ｘおよび近似演算部１５４−１乃至近似演算部１５４−Ｗに供給する。
【０２９０】
例えば、スイッチ１５２は、隣接するボケ画像データDの１組がエッジの画素であることが等価変換演算割り当て指示信号で示される場合、そのボケ画像データDの１組を、等価変換演算部１５３−１乃至等価変換演算部１５３−Ｘのうちのいずれか１つに供給する。例えば、スイッチ１５２は、隣接するボケ画像データDの１組がエッジの画素でないことが等価変換演算割り当て指示信号で示される場合、そのボケ画像データDの１組を、等価変換演算部１５３−１乃至等価変換演算部１５３−Ｘおよび近似演算部１５４−１乃至近似演算部１５４−Ｗのうちのいずれか１つに供給する。
【０２９１】
等価変換演算部１５３−１乃至等価変換演算部１５３−Ｘは、それぞれ、１つの等価変換器に相当し、等価変換演算部５３と同様に構成され、スイッチ１５２から供給された、隣接するボケ画像データDの１組に、等価変換演算を適用する。
【０２９２】
等価変換演算部１５３−１乃至等価変換演算部１５３−Ｘは、それぞれ、等価変換演算の演算結果を予測値演算部１５５に供給する。
【０２９３】
近似演算部１５４−１乃至近似演算部１５４−Ｗは、それぞれ、１つの近似演算器に相当し、近似演算部５４と同様に構成され、スイッチ１５２から供給された、隣接するボケ画像データDの１組に、近似演算を適用する。
【０２９４】
近似演算部１５４−１乃至近似演算部１５４−Ｗは、それぞれ、近似演算の演算結果を予測値演算部１５５に供給する。
【０２９５】
予測値演算部１５５は、等価変換演算の演算結果と近似演算の演算結果とを、予測パターン選択部１０２から供給された等価変換演算割り当て指示信号に応じて、予測パターンによって決められる演算式のそれぞれの項に用いて、予測値を演算する。
【０２９６】
以下、可変シフトレジスタ１５１−１乃至可変シフトレジスタ１５１−Ｎを個々に区別する必要がないとき、単に、可変シフトレジスタ１５１と称する。等価変換演算部１５３−１乃至等価変換演算部１５３−Ｘを個々に区別する必要がないとき、単に、等価変換演算部１５３と称する。また、近似演算部１５４−１乃至近似演算部１５４−Ｗを個々に区別する必要がないとき、単に、近似演算部１５４と称する。
【０２９７】
図２１は、ボケ除去の処理の他の例を説明するフローチャートである。ステップＳ１１１乃至ステップＳ１１３は、それぞれ、図１５のステップＳ１１乃至ステップＳ１３のそれぞれと同様なので、その説明は省略する。
【０２９８】
ステップＳ１１４において、予測パターン選択部１０２は、予測パターンを選択する。例えば、予測パターン選択部１０２は、画像データから、画像のエッジを検出し、エッジの画素に等価変換演算が割り当てられる予測パターンを選択する。
【０２９９】
ステップＳ１１５において、ボケ除去演算部１０１において、ボケ除去演算の処理が行われる。ボケ除去演算の処理の詳細は、図２２または図２３のフローチャートを参照して後述する。
【０３００】
ステップＳ１１６において、ボケ除去演算部１０１は、選択された全ての予測パターンによる予測値を求めたか否かを判定し、選択された全ての予測パターンによる予測値を求めていないと判定された場合、ステップＳ１１５に戻り、ボケ除去演算の処理を繰り返す。
【０３０１】
ステップＳ１１６において、選択された全ての予測パターンによる予測値を求めたと判定された場合、手続きは、ステップＳ１１７に進む。
【０３０２】
ステップＳ１１７乃至ステップＳ１２０は、それぞれ、図１５のステップＳ１６乃至ステップＳ１９のそれぞれと同様なので、その説明は省略する。
【０３０３】
図２２は、図２１のステップＳ１１５に対応するボケ除去演算の処理の詳細の例を説明するフローチャートである。ステップＳ１３１乃至ステップＳ１３４は、それぞれ、可変シフトレジスタ１５１またはボケ除去演算部１０１により実行され、図１６のステップＳ３１乃至ステップＳ３４のそれぞれと同様なので、その説明は省略する。
【０３０４】
ステップＳ１３５において、等価変換演算部１５３−１は、スイッチ１５２を介して供給された、１組の基準画素と隣接画素とに等価変換演算を適用する。
【０３０５】
ステップＳ１３６において、ボケ除去演算部１４は、選択された予測パターンにおいて必要とされる全ての等価変換演算の結果が得られたか否かを判定し、選択された予測パターンにおいて必要とされる全ての等価変換演算の結果が得られていないと判定された場合、ステップＳ１３５に戻り、等価変換演算を繰り返す。
【０３０６】
なお、ステップＳ１３５の等価変換演算が繰り返される場合、そのステップＳ１３５の等価変換演算は、等価変換演算部１５３−２乃至等価変換演算部１５３−Ｘの順に、等価変換演算部１５３−２乃至等価変換演算部１５３−Ｘのそれぞれによって実行される。
【０３０７】
ステップＳ１３６において、選択された予測パターンにおいて必要とされる全ての等価変換演算の結果が得られたと判定された場合、手続きはステップＳ１３７に進み、近似演算部１５４−１は、スイッチ１５２を介して供給された、１組の基準画素と隣接画素とに近似演算を適用する。
【０３０８】
ステップＳ１３８において、ボケ除去演算部１４は、選択された予測パターンにおいて必要とされる全ての近似演算の結果が得られか否かを判定し、選択された予測パターンにおいて必要とされる全ての近似演算の結果が得られていないと判定された場合、ステップＳ１３７に戻り、近似演算を繰り返す。
【０３０９】
なお、ステップＳ１３７の近似演算が繰り返される場合、そのステップＳ１３７の近似演算は、近似演算部１５４−２乃至近似演算部１５４−Ｗの順に、近似演算部１５４−２乃至近似演算部１５４−Ｗのそれぞれによって実行される。
【０３１０】
ステップＳ１３８において、選択された予測パターンにおいて必要とされる全ての近似演算の結果が得られたと判定された場合、手続きはステップＳ１３９に進み、ステップＳ１３９において、予測値演算部１５５は、選択された予測パターンの演算式における予め決めた項に、等価変換演算の結果と近似演算の結果とをそれぞれ用いて、予測値を演算して、ボケ除去演算は終了する。すなわち、ステップＳ１３９において、予測値演算部１５５は、等価変換演算の結果と近似演算の結果とを、選択された予測パターンによって決められるそれぞれの項に用いて、予測値を演算する。
【０３１１】
なお、図２２のフローチャートは、左から右に動く場合のボケ除去演算の処理を説明するものであり、右から左に動く場合のボケ除去演算の処理は、ステップＳ１３１乃至ステップＳ１３４において、’右側’が’左側’となる相違点を除いて、図２２のフローチャートに示す場合と同様である。
【０３１２】
図２３は、図２１のステップＳ１１５に対応するボケ除去演算の詳細の他の例を説明するフローチャートである。ステップＳ１５１において、ボケ除去演算部１０１は、選択された予測パターンのうちの１つに注目する。
【０３１３】
ステップＳ１５２において、ボケ除去演算部１０１は、インデックスkおよびインデックスiに、それぞれ0を設定する。
【０３１４】
ステップＳ１５３において、ボケ除去演算部１０１は、注目する予測パターンにおける予測値Kに0を設定する。ステップＳ１５４において、可変シフトレジスタ１５１は、隣接する画素D(i×V)と画素D(i×V+1)とを取得する。すなわち、可変シフトレジスタ１５１は、隣接するボケ画像データD(i×V)とボケ画像データD(i×V+1)とを取得する。
【０３１５】
ステップＳ１５５において、ボケ除去演算部１０１は、インデックスiが、注目する予測パターンにおける近似演算器のインデックスs(k)と等しいか否かを判定する。ステップＳ１５５において、インデックスiが、注目する予測パターンにおける近似演算器のインデックスs(k)と等しいと判定された場合、手続きはステップＳ１５６に進み、近似演算部１５４は、隣接する画素D(i×V)と画素D(i×V+1)とに近似演算r(i×V)を適用する。
【０３１６】
ステップＳ１５７において、ボケ除去演算部１０１は、インデックスkを1だけインクリメントして、手続きはステップＳ１５９に進む。
【０３１７】
一方、ステップＳ１５５において、インデックスiが、注目する予測パターンにおける近似演算器のインデックスs(k)と等しくないと判定された場合、手続きはステップＳ１５８に進み、等価変換演算部１５３は、隣接する画素D(i×V)と画素D(i×V+1)とに等価変換演算e(i×V)を適用する。ステップＳ１５８の後、手続きはステップＳ１５９に進む。
【０３１８】
ステップＳ１５９において、予測値演算部１５５は、ステップＳ１５６またはステップＳ１５８の演算の結果を、予測パターンPqにおける予測値Kに加算する。
【０３１９】
ステップＳ１６０において、ボケ除去演算部１０１は、インデックスiが、近似演算器の数Wと等価変換器の数Xとの和に等しいか否かを判定し、インデックスiが、近似演算器の数Wと等価変換器の数Xとの和に等しくないと判定された場合、手続きはステップＳ１６１に進み、ボケ除去演算部１０１は、インデックスiを1だけインクリメントする。ステップＳ１６１の後、手続きは、ステップＳ１５４に戻り、上述した処理を繰り返す。
【０３２０】
ステップＳ１６０において、インデックスiが、近似演算器の数Wと等価変換器の数Xとの和に等しいと判定された場合、手続きはステップＳ１６２に進み、ボケ除去演算部１０１は、まだ注目していない予測パターンがあるかか否かを判定する。
【０３２１】
ステップＳ１６２において、まだ注目していない予測パターンがあると判定された場合、手続きはステップＳ１６３に進み、ボケ除去演算部１０１は、選択された予測パターンのうちから、次の予測パターンに注目する。ステップＳ１６３の後、手続きは、ステップＳ１５２に戻り、上述した処理を繰り返す。
【０３２２】
ステップＳ１６２において、注目していない予測パターンがない、すなわち、選択された予測パターンの全てについて、予測値を演算したと判定された場合、ボケ除去演算の処理は終了する。
【０３２３】
このように、近似演算と等価変換演算の２つの演算を組み合わせて、ボケを除去することができる。
【０３２４】
近似演算と等価変換演算との組み合わせ方を変えることにより、ボケを除去するための演算を、簡易に変更することができる。
【０３２５】
複数の演算の組み合わせを用意した場合、それぞれの組み合わせによる予測値の大きさを比較することで、予測の精度を上げることができる。
【０３２６】
複数の演算の組み合わせにより、多くのバリエーションの処理を行うことと等価とすることができる。
【０３２７】
以上のように、最小自乗法およびその係数を用いることがないので、ボケ除去の演算の変更を容易に行うことができる。
【０３２８】
画像上の大きなエッジにおいて近似演算が適用されることがないので、ボケを除去した画像において、リンギングを減らすことができる。
【０３２９】
予測値のメディアンを取って画素値を求めるようにした場合には、リンギングを減らすことができる。
【０３３０】
このように、画像データに所定の演算を適用するようにした場合には、動きボケを除去することができる。また、第１の画素と、第１の画素に動きの方向に隣接する第２の画素との組であって、画素を単位とする動き量Vだけ他の組から離れた組を抽出し、N（Nは正の整数）個の組のうちの、ｉ（ｉは正の整数）番目の組について、第１の画素の画素データに係数αと動き量Vとを乗算した結果から、動き量Vから１／（Ｎ−ｉ）を減算して得られた値と係数αとを第２の画素の画素データに乗算した結果を減算することにより、動きボケを除去した画素値を予測するための値を演算し、係数αは、
【数２５】
2008225657.tif 000034
により求められるようにした場合には、より簡単に、動きボケを除去することができる。
【０３３１】
なお、本発明は、動画像を再生、記録、または表示するなど、動画像を取り扱う機器に適用することができ、例えば、テレビジョン受像機、セットトップボックス、チューナ、ビデオレコーダ、ビデオプレーヤ、ビデオカメラ、家庭用ゲーム機、携帯電話機、または携帯型プレーヤなどに適用することができる。
【０３３２】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０３３３】
図２４は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【０３３４】
コンピュータにおいて、CPU（Central Processing Unit）２０１，ROM（Read Only Memory）２０２，RAM（Random Access Memory）２０３は、バス２０４により相互に接続されている。
【０３３５】
バス２０４には、さらに、入出力インタフェース２０５が接続されている。入出力インタフェース２０５には、キーボード、マウス、マイクロホンなどよりなる入力部２０６、ディスプレイ、スピーカなどよりなる出力部２０７、ハードディスクや不揮発性のメモリなどよりなる記憶部２０８、ネットワークインタフェースなどよりなる通信部２０９、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア２１１を駆動するドライブ２１０が接続されている。
【０３３６】
以上のように構成されるコンピュータでは、CPU２０１が、例えば、記憶部２０８に記憶されているプログラムを、入出力インタフェース２０５及びバス２０４を介して、RAM２０３にロードして実行することにより、上述した一連の処理が行われる。
【０３３７】
コンピュータ（CPU２０１）が実行するプログラムは、例えば、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア２１１に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
【０３３８】
そして、プログラムは、リムーバブルメディア２１１をドライブ２１０に装着することにより、入出力インタフェース２０５を介して、記憶部２０８に記憶することで、コンピュータにインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部２０９で受信し、記憶部２０８に記憶することで、コンピュータにインストールすることができる。その他、プログラムは、ROM２０２や記憶部２０８にあらかじめ記憶しておくことで、コンピュータにあらかじめインストールしておくことができる。
【０３３９】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０３４０】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０３４１】
【図１】本発明の一実施の形態の画像処理装置の構成の例を示すブロック図である。
【図２】ボケ画像データDと実世界画像データJとの関係を示す図である。
【図３】ボケ画像データD1からボケ画像データD2を減算した値について説明する図である。
【図４】近似演算の例を説明する図である。
【図５】式（５）を説明する図である。
【図６】近似演算器と等価変換器とによる予測値の演算の具体例を説明する図である。
【図７】等価変換演算の具体例を説明する図である。
【図８】近似演算の具体例を説明する図である。
【図９】近似演算の考え方を説明する図である。
【図１０】近似演算器と等価変換器とによる予測値の演算の具体例を説明する図である。
【図１１】隣接するボケ画像データDの組への近似演算または等価変換演算の適用の例を説明する図である。
【図１２】ボケ除去演算部の構成を示すブロック図である。
【図１３】演算部の構成を示すブロック図である。
【図１４】演算結果比較選択部の構成を示すブロック図である。
【図１５】ボケ除去の処理の例を説明するフローチャートである。
【図１６】ボケ除去演算の処理の詳細の例を説明するフローチャートである。
【図１７】ボケ除去演算の処理の詳細の他の例を説明するフローチャートである。
【図１８】本発明の一実施の形態の画像処理装置の構成の他の例を示すブロック図である
【図１９】ボケ除去演算部の構成を示すブロック図である。
【図２０】演算部の構成を示すブロック図である。
【図２１】ボケ除去の処理の他の例を説明するフローチャートである。
【図２２】ボケ除去演算の処理の詳細のさらに他の例を説明するフローチャートである。
【図２３】ボケ除去演算の処理の詳細のさらに他の例を説明するフローチャートである。
【図２４】コンピュータのハードウェアの構成例を示すブロック図である。
【符号の説明】
【０３４２】
１１  動き検出部，  １２  アフィン変換部，  １３  ボケ除去パラメータ生成部，  １４  ボケ除去演算部，  １５  演算結果比較選択部，  １６  逆アフィン変換部，  ３１−１乃至３１−Ｚまたは３１  演算部，  ５１−１乃至５１−Ｎまたは５１  可変シフトレジスタ，  ５２  スイッチ，  ５３−１乃至５３−Ｘまたは５３  等価変換演算部，  ５４−１乃至５４−Ｗまたは５４  近似演算部，  ５５  予測値演算部，  ７１  ソート部，  ７２  選択部，  ７３  平均値演算部，  １０１  ボケ除去演算部，  １０２  予測パターン選択部，  １１１  エッジ検出部，  １３１−１乃至１３１−Ｔまたは１３１  演算部，  １５１−１乃至１５１−Ｎまたは１５１  可変シフトレジスタ，  １５２  スイッチ，  １５３−１乃至１５３−Ｘまたは１５３  等価変換演算部，  １５４−１乃至１５４−Ｗまたは１５４  近似演算部，  １５５  予測値演算部，  ２０１  CPU，  ２０２  ROM，  ２０３  RAM，  ２０８  記憶部，  ２１１  リムーバブルメディア
【図１】
2008225657.tif 000040
【図２】
2008225657.tif 000041
【図３】
2008225657.tif 000042
【図４】
2008225657.tif 000043
【図５】
2008225657.tif 000044
【図６】
2008225657.tif 000045
【図７】
2008225657.tif 000046
【図８】
2008225657.tif 000047
【図９】
2008225657.tif 000048
【図１０】
2008225657.tif 000049
【図１１】
2008225657.tif 000050
【図１２】
2008225657.tif 000051
【図１３】
2008225657.tif 000052
【図１４】
2008225657.tif 000053
【図１５】
2008225657.tif 000054
【図１６】
2008225657.tif 000055
【図１７】
2008225657.tif 000056
【図１８】
2008225657.tif 000057
【図１９】
2008225657.tif 000058
【図２０】
2008225657.tif 000059
【図２１】
2008225657.tif 000060
【図２２】
2008225657.tif 000061
【図２３】
2008225657.tif 000062
【図２４】
2008225657.tif 000063