(57)【要約】【課題】動きベクトルを精度良く検出して、検出した動きベクトルを用いて画像処理を行う。【解決手段】動きボケ軽減画像生成部４０は、時間積分効果を有する画像センサにより取得された複数画素からなる画像内の処理領域では、動きオブジェクトの画素の画素値が、該動きオブジェクトに対応する動きボケが生じていない各画素の画素値を移動しながら時間方向に積分した値であるとしてモデル化し、画像データＤＶaにおける処理領域の画素の画素値に基づき、処理領域に含まれる動きオブジェクトの動きボケが軽減された動きボケ軽減画像を生成する。動きベクトル検出部３０は、生成された複数の動きボケ軽減画像に基づき、動きベクトルの検出を行う。このようにして検出した動きベクトルを用いて動きボケ軽減画像の生成や拡大画像の生成および時間解像度創造を行う。【選択図】        図５
2005260929.tif 000002
【特許請求の範囲】
【請求項１】
時間積分効果を有する画像センサにより取得された複数画素からなる画像内の処理領域では、動きオブジェクトの画素の画素値が、該動きオブジェクトに対応する動きボケが生じていない各画素の画素値を移動しながら時間方向に積分した値であるとしてモデル化し、前記処理領域の画素の画素値に基づき、前記処理領域に含まれる前記動きオブジェクトの動きボケが軽減された動きボケ軽減画像を生成する動きボケ軽減画像生成手段と、
前記動きボケ軽減画像生成手段により生成された複数の動きボケ軽減画像に基づき、動きベクトルを検出する動きベクトル検出手段とを有する
ことを特徴とする画像処理装置。
【請求項２】
前記動きボケ軽減画像生成手段は、
前記処理領域について、前記動きオブジェクトである前景オブジェクトを構成する前景オブジェクト成分のみからなる前景領域と、背景オブジェクトを構成する背景オブジェクト成分のみからなる背景領域と、前記前景オブジェクト成分と前記背景オブジェクト成分とが混合される混合領域とを特定する領域特定手段と、
前記混合領域における前記前景オブジェクト成分と前記背景オブジェクト成分との混合比を検出する混合比検出手段と、
前記混合比に基づいて、前記画像の少なくとも一部の領域を前記前景オブジェクトと前記背景オブジェクトとに分離する分離手段と、
前記動きベクトルに基づき、前記分離手段により分離された前記前景オブジェクトの動きボケを軽減させる動きボケ調整手段とを備える
ことを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記動きボケ軽減画像生成手段は、前記画像内の注目画素の動きベクトルに応じて該注目画素を含むように前記処理領域を設定し、前記注目画素の動きベクトルに基づき、該注目画素の動きボケが軽減された画素値を画素単位で生成する
ことを特徴とする請求項１記載の画像処理装置。
【請求項４】
前記動きベクトル検出手段は、前記動きボケ軽減画像生成手段により生成された時間的に連続する少なくとも第１の画像と第２の画像を用いて、該第１の画像内の前記動きオブジェクトの位置に対応する注目画素を設定し、該注目画素を含む前記第１の画像内の領域と前記第２の画像とを比較して、前記第１の画像から前記第２の画像までの前記動きオブジェクトの動きベクトルを検出する
ことを特徴とする請求項１記載の画像処理装置。
【請求項５】
前記動きボケ軽減画像生成手段は、前記第１の画像内の前記注目画素の画素位置、あるいは前記検出された動きベクトルに基づき前記注目画素に対応する前記第２の画像の画素位置に、動きボケが軽減された前記動きオブジェクトの画像を出力する出力手段を有する
ことを特徴とする請求項４記載の画像処理装置。
【請求項６】
前記動きボケ軽減画像に基づき拡大画像を生成する拡大画像生成手段を備え、前記出力手段は、前記動きベクトルに対応する時間方向位置に前記拡大画像を出力する
ことを特徴とする請求項５記載の画像処理装置。
【請求項７】
前記拡大画像生成手段は、
前記動きボケ軽減画像から、生成する前記拡大画像のうちの注目画素に対する複数画素をクラスタップとして抽出し、該クラスタップの画素値から前記注目画素に対応するクラスを決定するクラス決定手段と、
前記動きボケ軽減画像に対応する画素数の第１の画像と、該第１の画像よりも画素数が多い第２の画像との間で、前記第２の画像内の注目画素に対応する前記第１の画像内の複数画素から前記注目画素を予測する予測係数を前記クラス毎に学習して記憶する記憶手段と、
前記クラス決定手段により決定されたクラスに対応する予測係数を前記記憶手段から検出し、前記動きボケ軽減画像から、前記拡大画像のうちの注目画素に対する複数画素を予測タップとして抽出し、前記記憶手段から検出した予測係数と前記予測タップとの線形一次結合により前記注目画素に対応する予測値を生成する予測値生成手段とを備える
ことを特徴とする請求項６記載の画像処理装置。
【請求項８】
前記動き検出手段で検出された動きベクトルに基づき、前記画像センサにより取得された画像よりも時間解像度の高い画像を生成する時間解像度創造手段を設けた
ことを特徴とする請求項１記載の画像処理装置。
【請求項９】
前記時間解像度創造手段は、前記動きボケ軽減画像生成手段で生成された動きボケ軽減画像を用いて、前記時間解像度の高い画像を生成する
ことを特徴とする請求項８記載の画像処理装置。
【請求項１０】
前記時間解像度創造手段は、
前記動きベクトル検出手段で検出された動きベクトルを用いて、生成する前記時間解像度の高い画像内における注目画素の動きベクトルを決定し、前記動きボケ軽減画像から前記注目画素に対応する複数画素をクラスタップとして抽出し、該クラスタップの画素値から前記注目画素に対応するクラスを決定するクラス決定手段と、
前記動きボケ軽減画像に対応する時間解像度の第１の画像と、該第１の画像よりも時間解像度の高い第２の画像との間で、前記第２の画像内の注目画素に対応する前記第１の画像内の複数画素に基づき、前記注目画素を予測する予測係数を前記クラス毎に学習して記憶する記憶手段と、
前記クラス決定手段により決定されたクラスに対応する予測係数を前記記憶手段から検出し、前記動きボケ軽減画像から、前記注目画素に対する複数画素を予測タップとして抽出し、前記記憶手段から検出した予測係数と前記予測タップとの線形一次結合により前記注目画素に対応する予測値を生成する予測値生成手段とを備える
ことを特徴とする請求項９記載の画像処理装置。
【請求項１１】
時間積分効果を有する画像センサにより取得された複数画素からなる画像内の処理領域では、動きオブジェクトの画素の画素値が、該動きオブジェクトに対応する動きボケが生じていない各画素の画素値を移動しながら時間方向に積分した値であるとしてモデル化し、前記処理領域の画素の画素値に基づき、前記処理領域に含まれる前記動きオブジェクトの動きボケが軽減された動きボケ軽減画像を生成する動きボケ軽減画像生成ステップと、
前記動きボケ軽減画像生成ステップにより生成された複数の動きボケ軽減画像に基づき、動きベクトルを検出する動きベクトル検出ステップとを有する
ことを特徴とする画像処理方法。
【請求項１２】
前記動きボケ軽減画像生成ステップは、
前記処理領域について、前記動きオブジェクトである前景オブジェクトを構成する前景オブジェクト成分のみからなる前景領域と、背景オブジェクトを構成する背景オブジェクト成分のみからなる背景領域と、前記前景オブジェクト成分と前記背景オブジェクト成分とが混合される混合領域とを特定する領域特定ステップと、
前記混合領域における前記前景オブジェクト成分と前記背景オブジェクト成分との混合比を検出する混合比検出ステップと、
前記混合比に基づいて、前記画像の少なくとも一部の領域を前記前景オブジェクトと前記背景オブジェクトとに分離する分離ステップと、
前記動きベクトルに基づき、前記分離ステップにより分離された前記前景オブジェクトの動きボケを軽減させる動きボケ調整手段とを備える  
ことを特徴とする請求項１１記載の画像処理方法。
【請求項１３】
前記動きボケ軽減画像生成ステップは、前記画像内の注目画素の動きベクトルに応じて該注目画素を含むように前記処理領域を設定し、前記注目画素の動きベクトルに基づき、該注目画素の動きボケが軽減された画素値を画素単位で生成する
ことを特徴とする請求項１１記載の画像処理方法。
【請求項１４】
前記動きベクトル検出ステップは、前記動きボケ軽減画像生成ステップで生成された時間的に連続する少なくとも第１の画像と第２の画像を用いて、該第１の画像内の前記動きオブジェクトの位置に対応する注目画素を設定し、該注目画素を含む前記第１の画像内の領域と前記第２の画像とを比較して、前記第１の画像から前記第２の画像までの前記動きオブジェクトの動きベクトルを検出する
ことを特徴とする請求項１１記載の画像処理方法。
【請求項１５】
前記動きボケ軽減画像生成ステップは、前記第１の画像内の前記注目画素の画素位置、あるいは前記検出された動きベクトルに基づき前記注目画素に対応する前記第２の画像の画素位置に、動きボケが軽減された前記動きオブジェクトの画像を出力する出力ステップを有する
ことを特徴とする請求項１４記載の画像処理方法。
【請求項１６】
前記動きボケ軽減画像に基づき拡大画像を生成する拡大画像生成ステップを備え、前記出力ステップにおいて、前記動きベクトルに対応する時間方向位置に前記拡大画像を出力する
ことを特徴とする請求項１５記載の画像処理方法。
【請求項１７】
前記拡大画像生成ステップは、
前記動きボケ軽減画像から、生成する前記拡大画像のうちの注目画素に対する複数画素をクラスタップとして抽出し、該クラスタップの画素値から前記注目画素に対応するクラスを決定するクラス決定ステップと、
前記動きボケ軽減画像に対応する画素数の第１の画像と、該第１の画像よりも画素数が多い第２の画像との間で、前記第２の画像内の注目画素に対応する前記第１の画像内の複数画素から前記注目画素を予測する予測係数を前記クラス毎に学習して記憶する記憶ステップと、
前記クラス決定ステップにより決定されたクラスに対応する予測係数を前記記憶ステップから検出し、前記動きボケ軽減画像から、前記拡大画像のうちの注目画素に対する複数画素を予測タップとして抽出し、前記記憶ステップから検出した予測係数と前記予測タップとの線形一次結合により前記注目画素に対応する予測値を生成する予測値生成ステップとを備える
ことを特徴とする請求項１６記載の画像処理方法。
【請求項１８】
前記動き検出ステップで検出された動きベクトルに基づき、前記画像センサにより取得された画像よりも時間解像度の高い画像を生成する時間解像度創造ステップを設けた
ことを特徴とする請求項１１記載の画像処理方法。
【請求項１９】
前記時間解像度創造ステップは、前記動きボケ軽減画像生成ステップで生成された動きボケ軽減画像を用いて、前記時間解像度の高い画像を生成する
ことを特徴とする請求項１８記載の画像処理方法。
【請求項２０】
前記時間解像度創造ステップは、
前記動きベクトル検出ステップで検出された動きベクトルを用いて、生成する前記時間解像度の高い画像内における注目画素の動きベクトルを決定し、前記動きボケ軽減画像から前記注目画素に対応する複数画素をクラスタップとして抽出し、該クラスタップの画素値から前記注目画素に対応するクラスを決定するクラス決定ステップと、
前記動きボケ軽減画像に対応する時間解像度の第１の画像と、該第１の画像よりも時間解像度の高い第２の画像との間で、前記第２の画像内の注目画素に対応する前記第１の画像内の複数画素に基づき、前記注目画素を予測する予測係数を前記クラス毎に学習して記憶する記憶ステップと、
前記クラス決定ステップにより決定されたクラスに対応する予測係数を前記記憶ステップから検出し、前記動きボケ軽減画像から、前記注目画素に対する複数画素を予測タップとして抽出し、前記記憶ステップから検出した予測係数と前記予測タップとの線形一次結合により前記注目画素に対応する予測値を生成する予測値生成ステップとを備える
ことを特徴とする請求項１９記載の画像処理方法。
【請求項２１】
コンピュータに、
時間積分効果を有する画像センサにより取得された複数画素からなる画像内の処理領域では、動きオブジェクトの画素の画素値が、該動きオブジェクトに対応する動きボケが生じていない各画素の画素値を移動しながら時間方向に積分した値であるとしてモデル化し、前記処理領域の画素の画素値に基づき、前記処理領域に含まれる前記動きオブジェクトの動きボケが軽減された動きボケ軽減画像を生成する動きボケ軽減画像生成ステップと、
前記動きボケ軽減画像生成ステップにより生成された複数の動きボケ軽減画像に基づき、動きベクトルを検出する動きベクトル検出ステップとを実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像処理装置と画像処理方法およびプログラムに関する。詳しくは、時間積分効果を有する画像センサにより取得された複数画素からなる画像内の動きオブジェクトの画素値は、該動きオブジェクトに対応する動きボケが生じていない画像を該動きオブジェクトの動きに対応させて移動しながら時間方向に積分して得られた値であるとモデル化し、処理領域内の各画素の画素値に基づいて該処理領域内の動きオブジェクトに生じた動きボケが軽減された動きボケ軽減画像を生成し、この動きボケ軽減画像を用いて動きベクトルを検出するものである。
【背景技術】
【０００２】
従来より、現実世界における事象を、センサを用いてデータ化することが行われている。このセンサを用いて取得されたデータは、現実世界の情報を、現実世界より低い次元の時空間に射影して得られた情報である。このため、射影して得られた情報は、射影により発生する歪みを有している。例えば、静止している背景の前で移動する物体をビデオカメラで撮像して画像信号としてデータ化する場合、現実世界の情報をサンプリングしてデータ化することから、画像信号に基づいて表示される画像では、射影により発生する歪みとして、動いている物体がボケてしまう動きボケが生じる。
【０００３】
このため、特許文献１で開示されているように、例えば、入力画像に含まれる前景のオブジェクトに対応する画像オブジェクトの輪郭を検出することで、前景のオブジェクトに対応する画像オブジェクトを粗く抽出し、この粗く抽出された前景のオブジェクトに対応する画像オブジェクトの動きベクトルを検出して、検出した動きベクトルおよび動きベクトルの位置情報を用いて動きボケの軽減が行われている。
【０００４】
【特許文献１】特開２００１−２５０１１９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、上述のような動きボケの軽減では、動きボケを有した画像を用いて動きベクトルの検出が行われている。このため、動きボケの影響が大きいと正しく動きベクトルを検出することができない。さらに、動きボケの軽減だけでなく、検出した動きベクトルを用いて種々の画像処理、例えば動きベクトルを用いて前景オブジェクトを追従して表示するものとしたり、動きベクトルを用いて入力画像よりも時間解像度の高い画像を生成する場合、動きベクトルを正しく検出することができないと、前景オブジェクトの追従や時間解像度創造を精度良く行うことができない。
【０００６】
そこで、この発明では、動きベクトルを精度良く検出して、検出した動きベクトルを用いて種々の画像処理を可能とする画像処理装置と画像処理方法およびプログラムを提供するものである。
【課題を解決するための手段】
【０００７】
この発明に係る画像処理装置は、時間積分効果を有する画像センサにより取得された複数画素からなる画像内の処理領域では、動きオブジェクトの画素の画素値が、該動きオブジェクトに対応する動きボケが生じていない各画素の画素値を移動しながら時間方向に積分した値であるとしてモデル化し、処理領域の画素の画素値に基づき、処理領域に含まれる動きオブジェクトの動きボケが軽減された動きボケ軽減画像を生成する動きボケ軽減画像生成手段と、動きボケ軽減画像生成手段により生成された複数の動きボケ軽減画像に基づき、動きベクトルを検出する動きベクトル検出手段とを有するものである。
【０００８】
また、この発明に係る画像処理方法は、時間積分効果を有する画像センサにより取得された複数画素からなる画像内の処理領域では、動きオブジェクトの画素の画素値が、該動きオブジェクトに対応する動きボケが生じていない各画素の画素値を移動しながら時間方向に積分した値であるとしてモデル化し、処理領域の画素の画素値に基づき、処理領域に含まれる動きオブジェクトの動きボケが軽減された動きボケ軽減画像を生成する動きボケ軽減画像生成ステップと、動きボケ軽減画像生成ステップにより生成された複数の動きボケ軽減画像に基づき、動きベクトルを検出する動きベクトル検出ステップとを有するものである。
【０００９】
さらに、この発明に係るプログラムは、コンピュータに、時間積分効果を有する画像センサにより取得された複数画素からなる画像内の処理領域では、動きオブジェクトの画素の画素値が、該動きオブジェクトに対応する動きボケが生じていない各画素の画素値を移動しながら時間方向に積分した値であるとしてモデル化し、処理領域の画素の画素値に基づき、処理領域に含まれる動きオブジェクトの動きボケが軽減された動きボケ軽減画像を生成する動きボケ軽減画像生成ステップと、動きボケ軽減画像生成ステップにより生成された複数の動きボケ軽減画像に基づき、動きベクトルを検出する動きベクトル検出ステップとを実行させるものである。
【００１０】
この発明においては、時間積分効果を有する画像センサにより取得された複数画素からなる画像内の動きオブジェクトの画素値は、この動きオブジェクトに対応する動きボケが生じていない画像を動きオブジェクトの動きに対応させて移動しながら時間方向に積分して得られた値であるとモデル化して、処理単位内の各画素の画素値に基づいて処理単位内の動きオブジェクトに生じた動きボケが軽減された動きボケ軽減画像が生成される。例えば処理領域について、動きオブジェクトである前景オブジェクトを構成する前景オブジェクト成分のみからなる前景領域と、背景オブジェクトを構成する背景オブジェクト成分のみからなる背景領域と、前景オブジェクト成分と背景オブジェクト成分とが混合される混合領域とを特定し、混合領域における前景オブジェクト成分と背景オブジェクトとの混合比が検出されて、この混合比に基づいて画像の少なくとも一部の領域が、前景オブジェクトと背景オブジェクトとに分離されて、分離された前景オブジェクトの動きボケが動きオブジェクトの動きベクトルに基づいて軽減される。あるいは、画像内の画素毎に動きベクトルを検出して、処理領域を動きボケを含む前景オブジェクトの領域として、処理領域内に設けた注目画素に対して検出された動きベクトルを用いて、処理領域の動きボケが軽減された画素値が画素単位で出力される。このようにして生成された複数の動きボケ軽減画像から時間的に連続する少なくとも第１の画像と第２の画像を用いて、第１の画像内の動きオブジェクトの位置に対応する注目画素を設定し、この注目画素を含む第１の画像内の領域と第２の画像とを比較して、第１の画像から第２の画像までの動きオブジェクトの動きベクトルが検出される。動きボケが軽減された動きオブジェクトの画像、この検出された動きベクトルに基づき注目画素に対応する画素位置に出力されて、動きボケ軽減画像が生成される。また、動きボケ軽減画像を用いて拡大画像の生成や時間解像度創造が行われて、動きボケ軽減画像の拡大画像や動きボケ軽減画像よりもフレームレートの高い画像が生成される。
【発明の効果】
【００１１】
この発明によれば、時間積分効果を有する画像センサにより取得された複数画素からなる画像内の処理領域では、動きオブジェクトの画素の画素値が、該動きオブジェクトに対応する動きボケが生じていない各画素の画素値を移動しながら時間方向に積分した値であるとしてモデル化されて、処理領域の画素の画素値に基づき、処理領域に含まれる動きオブジェクトの動きボケが軽減された動きボケ軽減画像が生成されて、この生成された複数の動きボケ軽減画像に基づき、動きベクトルが検出される。このため、動きオブジェクトの動きベクトルを精度良く検出できる。
【００１２】
また、動きボケの軽減では、処理領域について、動きオブジェクトである前景オブジェクトを構成する前景オブジェクト成分のみからなる前景領域と、背景オブジェクトを構成する背景オブジェクト成分のみからなる背景領域と、前景オブジェクト成分と背景オブジェクト成分とが混合される混合領域が特定されて、混合領域における前景オブジェクト成分と背景オブジェクト成分との混合比に基づいて、画像の少なくとも一部の領域が前景オブジェクトと背景オブジェクトとに分離されて、分離された前景オブジェクトの動きボケが動きベクトルに基づき軽減される。このため、有意情報として抽出した混合比に基づき、動きオブジェクトの成分を分離できるので、分離した動きオブジェクトの成分に基づき精度良く動きボケを軽減できる。
【００１３】
また、画像内の画素毎に動きベクトルを検出して、画像内の注目画素の動きベクトルに応じて、この注目画素を含むように処理領域を設定し、注目画素の動きベクトルに基づき、注目画素の動きボケが軽減された画素値が画素単位で出力される。このため、動きオブジェクトの画素毎の動きが異なる場合でも、動きオブジェクトの動きボケを軽減させることができる。
【００１４】
また、動きベクトルの検出では、動きボケが軽減されている時間的に連続する少なくとも第１の画像と第２の画像を用いて、第１の画像内の動きオブジェクトの位置に対応する注目画素を設定し、この注目画素を含む第１の画像内の領域と第２の画像とを比較して、第１の画像から第２の画像までの動きオブジェクトの動きベクトルが検出される。このため、動きオブジェクトの動きベクトルを容易に精度良く検出できる。また、第１の画像内の注目画素の画素位置、あるいは検出された動きベクトルに基づき注目画素に対応する第２の画像の画素位置に、動きボケが軽減された動きオブジェクトの画像が出力されるので、動きボケ軽減オブジェクト画像を正しい位置に表示できる。
【００１５】
さらに、拡大画像のうちの注目画素に対するクラスタップが動きボケ軽減画像から抽出されて、このクラスタップの画素値に基づきクラスが決定される。また、注目画素に対する予測タップが動きボケ軽減画像から抽出されて、決定されたクラスに対応する予測係数と予測タップとの線形一次結合により注目画素の予測値が生成される。このため、動きボケ軽減画像を用いて動きボケが軽減された高精細な拡大画像を得ることができる。また、拡大画像の生成は動きオブジェクトを基準として行われるので動きオブジェクトを追従しながら、動きオブジェクトの拡大画像を出力できる。
【００１６】
また、時間解像度の高い画像のうちの注目画素に対するクラスタップが動きボケ軽減画像から抽出されて、このクラスタップの画素値に基づきクラスが決定される。また、注目画素に対する予測タップが動きボケ軽減画像から抽出されて、決定されたクラスに対応する予測係数と予測タップとの線形一次結合により注目画素の予測値が生成される。このため、動きボケが軽減された時間解像度の高い画像を得ることができる。
【発明を実施するための最良の形態】
【００１７】
以下、図を参照しながら、この発明の実施の一形態について説明する。図１は、本発明を適用するシステムの構成を示すブロック図である。画像センサ１０は、例えば、固体撮像素子であるＣＣＤ（Charge-Coupled Device）エリアセンサやＣＭＯＳエリアセンサを備えたビデオカメラなどで構成されており、実世界を撮像する。例えば、図２に示すように、画像センサ１０と背景に対応するオブジェクトＯＢbとの間を、前景に対応する動きオブジェクトＯＢfが矢印Ａ方向に移動するとき、画像センサ１０は、前景に対応する動きオブジェクトＯＢfを背景に対応するオブジェクトＯＢbと共に撮像する。
【００１８】
この画像センサ１０は、それぞれが時間積分効果を有する複数の検出素子からなるものであり、入力される光に応じて発生された電荷を検出素子毎に露光期間積分する。すなわち、画像センサ１０で光電変換を行い、入力された光を画素単位で電荷に変換して例えば１フレーム期間単位で蓄積を行う。この蓄積された電荷量に応じて画素データを生成して、この画素データを用いて所望のフレームレートの画像データＤＶaを生成して図１に示す画像処理装置２０に供給する。また、画像センサ１０にシャッター機能が設けられており、シャッター速度に応じて露光期間を調整して画像データＤＶaの生成が行われる場合には、露光期間を示す露光期間パラメータＨＥを画像処理装置２０に供給する。この露光期間パラメータＨＥは、１フレーム期間におけるシャッター開期間を例えば「０〜１．０」の値で示したものであり、シャッター機能を使用しないときの値は「１．０」、シャッター期間が１／２フレーム期間であるときの値は「０．５」とされるものである。
【００１９】
画像処理装置２０は、画像センサ１０での時間積分効果によって、画像データＤＶaに埋もれてしまった有意情報を抽出し、移動する前景に対応する動きオブジェクトＯＢfに生じた時間積分効果による動きボケを、有意情報を利用して軽減させる。なお、画像処理装置２０には、動きボケの軽減を行う画像領域を選択するための領域選択情報ＨＡが供給される。
【００２０】
図３は、画像データＤＶaで示される撮像画像を説明するための図である。図３Ａは、動いている前景に対応する動きオブジェクトＯＢfと、静止している背景に対応するオブジェクトＯＢbとを撮像して得られる画像を示している。なお、前景に対応する動きオブジェクトＯＢfは、矢印Ａ方向に水平移動しているものとする。
【００２１】
図３Ｂは、図３Ａの破線で示すラインＬにおける画像と時間の関係を示している。動きオブジェクトＯＢfのラインＬにおける移動方向の長さが例えば９画素分であり、１露光期間中に５画素移動する場合、フレーム期間開始時に画素位置Ｐ21にあった前端と画素位置Ｐ13にあった後端は、それぞれ画素位置Ｐ25，Ｐ17で露光期間の終了となる。また、シャッター機能が用いられていないとき、１フレームにおける露光期間は１フレーム期間と等しいものとなり、次のフレーム期間開始時に前端が画素位置Ｐ26、後端が画素位置Ｐ18となる。なお、説明を簡単とするため、特に記載が無い場合はシャッター機能が用いられていないものとして説明を行う。
【００２２】
このため、ラインＬのフレーム期間において、画素位置Ｐ12までと画素位置Ｐ26からは、背景成分のみの背景領域となる。また、画素位置Ｐ17〜Ｐ21は、前景成分のみの前景領域となる。画素位置Ｐ13〜Ｐ16と画素位置Ｐ22〜Ｐ25は、背景成分と前景成分が混合された混合領域となる。混合領域は、時間の経過に対応して背景成分が前景に覆い隠されるカバードバックグランド領域と、時間の経過に対応して背景成分が現れるアンカバードバックグランド領域に分類される。なお、図３Ｂでは、前景のオブジェクトの進行方向前端側に位置する混合領域がカバードバックグランド領域、後端側に位置する混合領域がアンカバードバックグランド領域となる。このように、画像データＤＶaには、前景領域、背景領域、またはカバードバックグランド領域若しくはアンカバードバックグランド領域を含む画像が含まれることとなる。
【００２３】
ここで、１フレームは短時間であり、前景に対応する動きオブジェクトＯＢfは剛体であって等速に移動していると仮定して、図４に示すように、１露光期間における画素値の時間方向分割動作を行い、画素値を仮想分割数で等時間間隔に分割する。
【００２４】
仮想分割数は、前景に対応する動きオブジェクトの１フレーム期間内での動き量ｖなどに対応して設定する。例えば、１フレーム期間内の動き量ｖが上述のように５画素であるときは、動き量ｖに対応して仮想分割数を「５」に設定して、１フレーム期間を等時間間隔で５分割する。
【００２５】
また、背景に対応するオブジェクトＯＢbを撮像したときに得られる画素位置Ｐxの１フレーム期間の画素値をＢx、ラインＬにおける長さが９画素分である前景に対応する動きオブジェクトＯＢfを静止させて撮像したときに各画素で得られる画素値をＦ09（前端側）〜Ｆ01（後端側）とする。
【００２６】
この場合、例えば画素位置Ｐ15の画素値ＤＰ15は、式（１）で表される。
ＤＰ15＝Ｂ15/ｖ+Ｂ15/ｖ+Ｆ01/ｖ+Ｆ02/ｖ+Ｆ03/ｖ     ・・・（１）
【００２７】
この画素位置Ｐ15では、背景の成分を２仮想分割時間（フレーム期間/ｖ）含み、前景成分を３仮想分割時間含むので、背景成分の混合比αは（２／５）である。同様に、例えば画素位置Ｐ22では、背景の成分を１仮想分割時間含み、前景成分を４仮想分割時間含むので、混合比αは（１／５）である。
【００２８】
また、前景に対応する動きオブジェクトが剛体であり、前景の画像が次のフレームにおいて５画素右側に表示されるように等速で移動すると仮定しているので、例えば、画素位置Ｐ13の最初の仮想分割時間における前景の成分（F01/v）は、画素位置Ｐ14における２番目の仮想分割時間における前景の成分、画素位置Ｐ15における３番目の仮想分割時間における前景の成分、画素位置Ｐ16における４番目の仮想分割時間における前景の成分、画素位置Ｐ17における５番目の仮想分割時間における前景の成分と等しくなる。また、画素位置Ｐ14の最初の仮想分割時間における前景の成分（F02/v）から画素位置Ｐ21の最初の仮想分割時間における前景の成分（F09/v）についても、前景の成分（Ｆ01/v）と同様である。
【００２９】
このため、式（２）に示すように、混合比αを用いて各画素位置の画素値ＤＰを示すこともできる。なお、式（２）において、「ＦＥ」は前景の成分の合計値を示している。
ＤＰ＝α・Ｂ＋ＦＥ  ・・・（２）
【００３０】
このように、前景の成分が移動することから、１フレーム期間では、異なる前景の成分が加算されるので、動きオブジェクトに対応する前景の領域は、動きボケを含むものとなる。このため、画像処理装置２０では、画像データＤＶaに埋もれてしまった有意情報として混合比αを抽出し、この混合比αを利用して前景に対応する動きオブジェクトＯＢfの動きボケを軽減させた画像データＤＶoutを生成する。
【００３１】
図５は、画像処理装置２０の構成を示すブロック図である。画像処理装置２０に供給された画像データＤＶaは、動きベクトル検出部３０と動きボケ軽減画像生成部４０に供給される。また、領域選択情報ＨＡと露光期間パラメータＨＥは、動きベクトル検出部３０に供給される。さらに、後述するメモリ５５から読み出された画像データＤＶmは動きベクトル検出部３０に供給される。動きベクトル検出部３０は、領域選択情報ＨＡに基づいて、動きボケ軽減処理を行う処理領域を順次抽出する。さらに、画像データＤＶaあるいは画像データＤＶmにおける処理領域の画像データを用いて処理領域内における動きオブジェクトに対応する動きベクトルＭＶＣを検出して、動きボケ軽減画像生成部４０に供給する。例えば、時間的に連続する少なくとも第１の画像と第２の画像のうち、一方の画像内の動きオブジェクトの位置に対応する注目画素を設定して、この注目画素に対する動きベクトルを第１の画像と第２の画像を用いて検出する。また、処理領域を示す処理領域情報ＨＺを生成して、動きボケ軽減画像生成部４０に供給する。さらに、前景のオブジェクトの動きに応じて領域選択情報ＨＡの更新を行い、動きオブジェクトの動きに応じて処理領域を移動させる。
【００３２】
動きボケ軽減画像生成部４０は、動きベクトルＭＶと処理領域情報ＨＺと画像データＤＶaに基づいて領域特定や混合比の算出を行い、算出した混合比を用いて前景成分や背景成分の分離を行う。さらに、分離した前景成分の画像に対して動きボケ調整を行って動きボケ軽減オブジェクト画像の画像データである前景成分画像データＤＢfを生成する。また、
背景成分画像データＤＢbに基づく背景画像上に、前景成分画像データＤＢfに基づく動きボケが軽減された前景領域の画像を合成して動きボケ軽減画像の画像データＤＶoutを生成する。この画像データＤＶoutは、メモリ５５や画像表示装置（図示せず）に供給される。ここで、動きボケ軽減オブジェクト画像である前景領域の画像は、検出された動きベクトルＭＶＣに対応する時空間位置に合成させることで、動きオブジェクトを追従した位置に動きボケの軽減された動きオブジェクトの画像を出力できる。すなわち、時間的に連続する少なくとも第１の画像と第２の画像を用いて動きベクトルを検出したとき、この検出された動きベクトルに対応する一方の画像内の注目画素の位置あるいは他方の画像内の注目画素に対応する位置に、動きボケが軽減された動きオブジェクトの画像を合成する。
【００３３】
図６は、動きベクトル検出部３０の構成を示すブロック図である。領域選択情報ＨＡは、処理領域設定部３１に供給される。また、画像データＤＶaとメモリ５５から読み出された画像データＤＶmは、画像データ選択部３２に供給される。さらに、露光期間パラメータＨＥは、動きベクトル補正部３４に供給される。
【００３４】
処理領域設定部３１は、領域選択情報ＨＡに基づき、動きボケ軽減処理を行う処理領域を順次抽出して、この処理領域を示す処理領域情報ＨＺを検出部３３と動きボケ軽減画像生成部４０に供給する。また、後述する検出部３３で検出された動きベクトルＭＶＯを利用して領域選択情報ＨＡを更新して、動きボケの軽減を行う画像領域を動きオブジェクトの動きに合わせて追尾させる。
【００３５】
画像データ選択部３２は、メモリ５５から読み出した画像データＤＶmを用いて動きベクトルＭＶの検出が可能となるまで画像データＤＶaを検出部３３に供給し、その後、メモリ５５から読み出した画像データＤＶmで動きベクトルの検出が可能となったとき、メモリ５５から読み出した画像データＤＶmを検出部３３に供給する。
【００３６】
検出部３３は、例えば、ブロックマッチング法、勾配法、位相相関法、或いはペルリカーシブ法などの手法により、処理領域情報ＨＺで示された処理領域について動きベクトル検出を行い検出した動きベクトルＭＶを動きベクトル補正部３４に供給する。或いは、検出部３３は、領域選択情報ＨＡで示す領域内に設定された追尾点の周辺、例えば領域選択情報ＨＡで示す領域内の画像特徴量と同一の画像特徴量を有する領域を、時間方向における複数の周辺フレームの画像データから検出することにより、追尾点の動きベクトルＭＶを算出して処理領域設定部３１に供給する。
【００３７】
ここで、検出部３３が出力する動きベクトルＭＶは、動き量（ノルム）と動き方向（角度）に対応する情報が含まれている。動き量は、動きオブジェクトに対応する画像の位置変化を表す値である。例えば、前景に対応する動きオブジェクトＯＢfが、あるフレームを基準として次のフレームにおいて水平方向にmove-x，垂直方向にmove-yだけ移動したとき、動き量は式（３）によって求めることができる。また、動き方向は式（４）によって求めることができる。この動き量と動き方向は、処理領域に対して１対のみ与えられる。
【００３８】
【数１】
2005260929.tif 000003
【００３９】
動きベクトル補正部３４は、露光期間パラメータＨＥを用いて動きベクトルＭＶの補正を行う。動きベクトル補正部３４に供給された動きベクトルＭＶは、上述のようにフレーム間の動きベクトルである。しかし、後述する動きボケ軽減画像生成部４０で用いる動きベクトルは、フレーム内の動きベクトルを用いて処理を行うことから、シャッター機能が用いられて１フレームにおける露光期間が１フレーム期間よりも短いときに、フレーム間の動きベクトルを用いてしまうと動きボケ軽減処理を正しく行うことができない。このため、フレーム間の動きベクトルである動きベクトルＭＶを１フレーム期間に対する露出期間の割合で補正して、動きベクトルＭＶＣとして動きボケ軽減画像生成部４０に供給する。
【００４０】
図７は、動きボケ軽減画像生成部４０の構成を示すブロック図である。領域特定部４１は、画像データＤＶaに基づく表示画像における処理領域情報ＨＺで示された処理領域内の各画素が、前景領域、背景領域、または混合領域のいずれに属するかを示す情報（以下、領域情報と称する）ＡＲを生成して混合比算出部４２と前景背景分離部４３、および動きボケ調整部４４に供給する。
【００４１】
混合比算出部４２は、画像データＤＶaおよび領域特定部４１から供給された領域情報ＡＲを基に、混合領域において背景成分の混合比αを算出して、算出した混合比αを前景背景分離部４３に供給する。
【００４２】
前景背景分離部４３は、領域特定部４１から供給された領域情報ＡＲ、および混合比算出部４２から供給された混合比αを基に、画像データＤＶaを前景成分のみから成る前景成分画像データＤＢeと背景成分のみから成る背景成分画像データＤＢbに分離して、前景成分画像データＤＢeを動きボケ調整部４４に供給する。
【００４３】
動きボケ調整部４４は、動きベクトルＭＶＣで示された動き量および領域情報ＡＲを基に、前景成分画像データＤＢeに含まれる１以上の画素を示す調整処理単位を決定する。調整処理単位は、動きボケ軽減の処理の対象となる１群の画素を指定するデータである。
【００４４】
動きボケ調整部４４は、前景背景分離部４３から供給された前景成分画像、動きベクトル検出部３０から供給された動きベクトルＭＶＣおよびその領域情報ＡＲ、並びに調整処理単位を基に、前景成分画像データＤＢeに含まれる動きボケを低減させる。この動きボケを低減させた前景成分画像データＤＢfを出力部４５に供給する。
【００４５】
図８は、領域特定部４１の構成を示すブロック図である。画像メモリ４１１は、入力された画像データＤＶaをフレーム単位で記憶する。画像メモリ４１１は、処理の対象がフレーム#nであるとき、フレーム#nの２つ前のフレームであるフレーム#n-2、フレーム#nの１つ前のフレームであるフレーム#n-1、フレーム#n、フレーム#nの１つ後のフレームであるフレーム#n+1、およびフレーム#nの２つ後のフレームであるフレーム#n+2を記憶する。
【００４６】
静動判定部４１２は、フレーム#nに対する処理領域情報ＨＺで特定された領域と同一の領域のフレーム#n-2，#n-1，#n+1，#n+2の画像データを画像メモリ４１１から読み出して、読み出した画像データのフレーム間差分絶対値を算出する。このフレーム間差分絶対値が予め設定している閾値Thより大きいか否かによって、動き部分であるか静止部分であるかを判別し、この判別結果を示す静動判定情報ＳＭを領域判定部４１３に供給する。
【００４７】
図９は、画像メモリ４１１から読み出した画像データを示している。なお、図９は処理領域情報ＨＺで特定された領域内における１つのラインの画素位置Ｐ01〜Ｐ37の画像データを読み出した場合を示している。
【００４８】
静動判定部４１２は、連続する２フレームの画素毎のフレーム間差分絶対値を求め、フレーム差分絶対値が予め設定している閾値Thより大きいか否かを判定し、フレーム間差分絶対値が閾値Thよりも大きいときは動き、フレーム間差分絶対値が閾値Th以下であるときは静止と判定する。
【００４９】
領域判定部４１３は、静動判定部４１２で得られた判定結果を用いて、処理領域情報ＨＺで特定された領域の各画素が、静止領域、カバードバックグランド領域、アンカバードバックグランド領域、動き領域のいずれに属するか、図１０に示すように領域判定処理を行う。
【００５０】
例えば、最初にフレーム#n-1とフレーム#nの静動判定の結果が静止である画素を静止領域の画素と判定する。また、フレーム#nとフレーム#n+1の静動判定の結果が静止である画素を静止領域の画素と判定する。
【００５１】
次に、フレーム#n-2とフレーム#n-1の静動判定の結果が静止であり、フレーム#n-1とフレーム#nの静動判定の結果が動きである画素をカバードバックグランド領域の画素と判定する。また、フレーム#nとフレーム#n+1の静動判定の結果が動きであり、フレーム#n+1とフレーム#n+2の静動判定の結果が静止である画素をアンカバードバックグランド領域の画素と判定する。
【００５２】
その後、フレーム#n-1とフレーム#nの静動判定の結果とフレーム#nとフレーム#n+1の静動判定の結果が共に動きである画素を動き領域の画素と判定する。
【００５３】
なお、カバードバックグランド領域における動き領域側の画素やアンカバードバックグランド領域における動き領域側の画素は、背景成分が含まれていなくとも、カバードバックグランド領域やアンカバードバックグランド領域と判別されてしまう場合がある。例えば図９の画素位置Ｐ21は、フレーム#n-2とフレーム#n-1の静動判定の結果が静止であり、フレーム#n-1とフレーム#nの静動判定の結果が動きであることから、背景成分が含まれていなくともカバードバックグランド領域と判別されてしまう。また、画素位置Ｐ17は、フレーム#nとフレーム#n+1の静動判定の結果が動きであり、フレーム#n+1とフレーム#n+2の静動判定の結果が静止であることから、背景成分が含まれていなくともアンカバードバックグランド領域と判別されてしまう。このため、カバードバックグランド領域における動き領域側の画素とアンカバードバックグランド領域における動き領域側の画素を動き量領域の画素に補正することで、各画素の領域判定を精度良く行うことができる。このようにして領域判定を行い、各画素が静止領域やカバードバックグランド領域，アンカバードバックグランド領域，動き領域のいずれかに属するものであるかを示す領域情報ＡＲを生成して、混合比算出部４２と前景背景分離部４３と動きボケ調整部４４に供給する。
【００５４】
なお、領域特定部４１は、アンカバードバックグランド領域およびカバードバックグランド領域に対応する領域情報に論理和を適用することにより、混合領域に対応する領域情報を生成して、各画素が静止領域や混合領域，動き領域のいずれに属するものであるかを領域情報ＡＲで示すものとしても良い。
【００５５】
図１１は、混合比算出部４２の構成を示すブロック図である。推定混合比処理部４２１は、画像データＤＶaを基にカバードバックグランド領域に対応する演算を行い画素毎に推定混合比αcを算出して、この算出した推定混合比αcを混合比決定部４２３に供給する。また、推定混合比処理部４２２は、画像データＤＶaを基にアンカバードバックグランド領域に対応する演算を行い画素毎に推定混合比αuを算出して、この算出した推定混合比αuを混合比決定部４２３に供給する。
【００５６】
混合比決定部４２３は、推定混合比処理部４２１，４２２から供給された推定混合比αc，αuと領域特定部４１から供給された領域情報ＡＲに基づいて、背景成分の混合比αを設定する。混合比決定部４２３は、対象となる画素が動き領域に属する場合、混合比αを「α＝０」に設定する。また、対象となる画素が静止領域に属する場合、混合比αを「α＝１」に設定する。対象となる画素がカバードバックグランド領域に属する場合、推定混合比処理部４２１から供給された推定混合比αcを混合比αに設定し、対象となる画素がアンカバードバックグランド領域に属する場合、推定混合比処理部４２２から供給された推定混合比αuを混合比αに設定する。この設定した混合比αを前景背景分離部４３に供給する。
【００５７】
ここで、フレーム期間が短く、前景に対応する動きオブジェクトが剛体でフレーム期間内に等速で動いていると仮定できると、混合領域に属する画素の混合比αは、画素の位置の変化に対応して、直線的に変化する。このような場合、理想的な混合比αの混合領域における傾きθは、図１２に示すように、前景に対応する動きオブジェクトのフレーム期間内における動き量ｖの逆数として表すことができる。すなわち、静止領域における混合比αは「１」、動き領域における混合比αは「０」の値を有し、混合領域では「０」から「１」の範囲で変化する。
【００５８】
図９に示すカバードバックグランド領域の画素位置Ｐ24の画素値ＤＰ24は、フレーム#n-1における画素位置Ｐ24の画素値をＢ24としたとき式（５）として表すことができる。
【００５９】
【数２】
2005260929.tif 000004
【００６０】
この画素値ＤＰ24では、画素値ＤＰ24の中に背景成分が（３/ｖ）含まれることから動き量ｖが「ｖ＝５」のとき混合比αは「α＝（３／５）」となる。
【００６１】
すなわち、カバードバックグランド領域における画素位置Ｐgの画素値Ｄgcは、式（６）として示すことができる。なお「Ｂg」は、フレーム#n-1における画素位置Ｐgの画素値、「ＦＥg」は画素位置Ｐgにおける前景成分の合計を示している。
Ｄgc＝αc・Ｂg＋ＦＥg  ・・・（６）
【００６２】
また、画素値Ｄgcの画素位置におけるフレーム#n+1における画素値をＦgとして、この画素位置における（Ｆg/v）がそれぞれ等しいものとすると、ＦＥg＝（１−αc）Ｆgとなる。すなわち、式（６）は式（７）として示すことができる。
Ｄgc＝αc・Ｂg＋（１−αc）Ｆg    ・・・（７）
【００６３】
この式（７）を変形すると式（８）となる。
αc＝（Ｄgc−Ｆg）／（Ｂg−Ｆg）  ・・・（８）
【００６４】
式（８）において、Ｄgc，Ｂg，Ｆgは既知であることから、推定混合比処理部４２１は、カバードバックグランド領域の画素に対して、フレーム#n-1，#n，#n+1の画素値を用いて推定混合比αcを求めることができる。
【００６５】
アンカバードバックグランド領域についても、カバードバックグランド領域と同様にして、アンカバードバックグランド領域の画素値をＤＰuとすると、式（９）を得ることができる。
αu＝（Ｄgu−Ｂg）／（Ｆg−Ｂg）  ・・・（９）
【００６６】
式（９）においても、Ｄgu，Ｂg，Ｆgは既知であることから、推定混合比処理部４２２は、アンカバードバックグランド領域の画素に対して、フレーム#n-1，#n，#n+1の画素値を用いて推定混合比αuを求めることができる。
【００６７】
混合比決定部４２３は、領域情報ＡＲが静止領域であることを示しているとき混合比αを「α＝１」、動き領域であることを示しているとき混合比αを「α＝０」として出力する。また、カバードバックグランド領域であることを示しているときは、推定混合比処理部４２１で算出した推定混合比αc、アンカバードバックグランド領域であることを示しているときは、推定混合比処理部４２２で算出した推定混合比αuをそれぞれ混合比αとして出力する。
【００６８】
図１３は、前景背景分離部４３の構成を示すブロック図である。前景背景分離部４３に供給された画像データＤＶaと領域特定部４１から供給された領域情報ＡＲは、分離部４３１、スイッチ部４３２、およびスイッチ部４３３に供給される。混合比算出部４２から供給された混合比αは、分離部４３１に供給される。
【００６９】
分離部４３１は、領域情報ＡＲに基づき、画像データＤＶaからカバードバックグランド領域とアンカバードバックグランド領域の画素のデータを分離する。この分離したデータと混合比αに基づき動きを生じた前景のオブジェクトの成分と静止している背景の成分を分離して、前景のオブジェクトの成分である前景成分を合成部４３４に供給し、背景成分を合成部４３５に供給する。
【００７０】
例えば、図９のフレーム#nにおいて、画素位置Ｐ22〜Ｐ25はカバードバックグランド領域に属する領域であり、それぞれの画素位置Ｐ22〜Ｐ25における混合比を混合比α22〜α25とすると、画素位置Ｐ22の画素値ＤＰ22は、フレーム#n-1における画素位置Ｐ22の画素値を「Ｂ22j」とした場合、式（１０）で表される。
ＤＰ22＝Ｂ22/ｖ+Ｆ06/ｖ+Ｆ07/ｖ+Ｆ08/ｖ+Ｆ09/ｖ
＝α22・Ｂ22j＋Ｆ06/ｖ+Ｆ07/ｖ+Ｆ08/ｖ+Ｆ09/ｖ        ・・・（１０）
【００７１】
このフレーム#nにおける画素位置Ｐ22の前景成分ＦＥ22は、式（１１）で表すことができる。
ＦＥ22＝Ｆ06/ｖ+Ｆ07/ｖ+Ｆ08/ｖ+Ｆ09/ｖ＝ＤＰ22−α22・Ｂ22j  ・・・（１１）
【００７２】
すなわち、フレーム#nにおけるカバードバックグランド領域の画素位置Ｐgの前景成分ＦＥgcは、フレーム#n-1における画素位置Ｐgの画素値を「Ｂgj」としたとき、式（１２）を用いて求めることができる。
ＦＥgc＝ＤＰg−αc・Ｂgj    ・・・（１２）
【００７３】
また、アンカバードバックグランド領域における前景成分ＦＥguも、カバードバックグランド領域における前景成分ＦＥgcと同様にして求めることができる。
【００７４】
例えば、フレーム#nにおいて、アンカバードバックグランド領域内の画素位置Ｐ16の画素値ＤＰ16は、フレーム#n+1における画素位置Ｐ16の画素値を「Ｂ16k」としたとき、式（１３）で表される。
ＤＰ16＝Ｂ16/ｖ+Ｆ01/ｖ+Ｆ02/ｖ+Ｆ03/ｖ+Ｆ04/ｖ
＝α16・Ｂ16k＋Ｆ01/ｖ+Ｆ02/ｖ+Ｆ03/ｖ+Ｆ04/ｖ        ・・・（１３）
【００７５】
このフレーム#nにおける画素位置Ｐ16の前景成分ＦＥ16は、式（１４）で表すことができる。
ＦＥ16＝Ｆ01/ｖ+Ｆ02/ｖ+Ｆ03/ｖ+Ｆ04/ｖ＝ＤＰ16−α16・Ｂ16k  ・・・（１４）
【００７６】
すなわち、フレーム#nにおけるアンカバードバックグランド領域の画素位置Ｐguの前景成分ＦＥguは、フレーム#n+1における画素位置Ｐgの画素値を「Ｂgk」としたとき、式（１５）を用いて求めることができる。
ＦＥgu＝ＤＰg−αu・Ｂk      ・・・（１５）
【００７７】
このように、分離部４３１は、画像データＤＶaと領域特定部４１で生成された領域情報ＡＲと混合比算出部で算出された混合比αを用いて、前景成分と背景成分を分離できる。
【００７８】
スイッチ部４３２は、領域情報ＡＲに基づいてスイッチ制御を行い、画像データＤＶaから動き領域の画素のデータを選択して合成部４３４に供給する。スイッチ部４３３は、領域情報ＡＲに基づいてスイッチ制御を行い、画像データＤＶaから静止領域の画素のデータを選択して合成部４３５に供給する。
【００７９】
合成部４３４は、分離部４３１から供給された前景のオブジェクトの成分とスイッチ部４３２から供給された動き領域のデータを用いて、前景成分画像データＤＢeを合成して、動きボケ調整部４４に供給する。また、合成部４３４は、前景成分画像データＤＢeの生成処理の最初に実行される初期化において、内蔵しているフレームメモリに全ての画素値が０である初期データを格納し、この初期データに画像データを上書きする。従って、背景領域に対応する部分は初期データの状態とされる。
【００８０】
合成部４３５は、分離部４３１から供給された背景の成分とスイッチ部４３３から供給された静止領域のデータを用いて、背景成分画像データＤＢbを合成して出力部４５に供給する。また、合成部４３５は、背景成分画像データＤＢbの生成処理の最初に実行される初期化において、内蔵しているフレームメモリに全ての画素値が０である画像を格納し、この初期データに画像データを上書きする。従って、前景領域に対応する部分は初期データの状態とされる。
【００８１】
図１４は、動きボケ調整部４４の構成を示すブロック図である。動きベクトル検出部３０から供給された動きベクトルＭＶＣは、調整処理単位決定部４４１とモデル化部４４２に供給される。領域特定部４１から供給された領域情報ＡＲは、調整処理単位決定部４４１に供給される。また、前景背景分離部４３から供給された前景成分画像データＤＢeは、足し込み部４４４に供給される。
【００８２】
調整処理単位決定部４４１は、領域情報ＡＲと動きベクトルＭＶＣに基づき、前景成分画像のカバードバックグランド領域からアンカバードバックグランド領域までの動き方向に並ぶ連続する画素を調整処理単位として設定する。または、アンカバードバックグランド領域からカバードバックグランド領域までの動き方向に並ぶ連続する画素を調整処理単位として設定する。この設定した調整処理単位を示す調整処理単位情報ＨＣをモデル化部４４２と足し込み部４４４に供給する。図１５は、調整処理単位を示しており、例えば図９におけるフレーム#nの画素位置Ｐ13〜Ｐ25を調整処理単位とした場合を示している。なお、調整処理単位決定部４４１では、動き方向が水平方向や垂直方向と異なる場合、アフィン変換を行って動き方向を水平方向や垂直方向に変換することで、動き方向が水平方向や垂直方向の場合と同様に処理することができる。
【００８３】
モデル化部４４２は、動きベクトルＭＶＣおよび設定された調整処理単位情報ＨＣを基に、モデル化を実行する。このモデル化では、調整処理単位に含まれる画素の数、画像データＤＶaの時間方向の仮想分割数、および画素毎の前景成分の数に対応する複数のモデルを予め記憶しておき、調整処理単位、および画素値の時間方向の仮想分割数を基に、画像データＤＶaと前景の成分との対応を指定するモデルＭＤを選択するようにしても良い。
【００８４】
モデル化部４４２は、選択したモデルＭＤを方程式生成部４４３に供給する。方程式生成部４４３は、モデル化部４４２から供給されたモデルＭＤを基に方程式を生成する。調整処理単位を上述のようにフレーム#nの画素位置Ｐ13〜Ｐ25として、動き量ｖが「５画素」で仮想分割数を「５」としたとき、調整処理単位内の画素位置Ｃ01における前景成分ＦＥ01や画素位置Ｃ02〜Ｃ13における前景成分ＦＥ02〜ＦＥ13は、式（１６）〜（２８）で示すことができる。
【００８５】
ＦＥ01=Ｆ01/ｖ                                     ・・・（１６）
ＦＥ02=Ｆ02/ｖ+Ｆ01/ｖ                             ・・・（１７）
ＦＥ03=Ｆ03/ｖ+Ｆ02/ｖ+Ｆ01/ｖ                     ・・・（１８）
ＦＥ04=Ｆ04/ｖ+Ｆ03/ｖ+Ｆ02/ｖ+Ｆ01/ｖ             ・・・（１９）
ＦＥ05=Ｆ05/ｖ+Ｆ04/ｖ+Ｆ03/ｖ+Ｆ02/ｖ+Ｆ01/ｖ     ・・・（２０）
ＦＥ06=Ｆ06/ｖ+Ｆ05/ｖ+Ｆ04/ｖ+Ｆ03/ｖ+Ｆ02/ｖ     ・・・（２１）
ＦＥ07=Ｆ07/ｖ+Ｆ06/ｖ+Ｆ05/ｖ+Ｆ04/ｖ+Ｆ03/ｖ     ・・・（２２）
ＦＥ08=Ｆ08/ｖ+Ｆ07/ｖ+Ｆ06/ｖ+Ｆ05/ｖ+Ｆ04/ｖ     ・・・（２３）
ＦＥ09=Ｆ09/ｖ+Ｆ08/ｖ+Ｆ07/ｖ+Ｆ06/ｖ+Ｆ05/ｖ     ・・・（２４）
ＦＥ10=Ｆ09/ｖ+Ｆ08/ｖ+Ｆ07/ｖ+Ｆ06/ｖ             ・・・（２５）
ＦＥ11=Ｆ09/ｖ+Ｆ08/ｖ+Ｆ07/ｖ                     ・・・（２６）
ＦＥ12=Ｆ09/ｖ+Ｆ08/ｖ                             ・・・（２７）
ＦＥ13=Ｆ09/ｖ                                     ・・・（２８）
【００８６】
方程式生成部４４３は、生成した方程式を変形して新たな方程式を生成する。方程式生成部４４３が生成する方程式を、式（２９）〜式（４１）に示す。
ＦＥ01=1・Ｆ01/ｖ+0・Ｆ02/ｖ+0・Ｆ03/ｖ+0・Ｆ04/ｖ+0・Ｆ05/ｖ 
+0・Ｆ06/ｖ+0・Ｆ07/ｖ+0・Ｆ08/ｖ+0・Ｆ09/ｖ  ・・・（２９）
ＦＥ02=1・Ｆ01/ｖ+1・Ｆ02/ｖ+0・Ｆ03/ｖ+0・Ｆ04/ｖ+0・Ｆ05/ｖ 
+0・Ｆ06/ｖ+0・Ｆ07/ｖ+0・Ｆ08/ｖ+0・Ｆ09/ｖ  ・・・（３０）
ＦＥ03=1・Ｆ01/ｖ+1・Ｆ02/ｖ+1・Ｆ03/ｖ+0・Ｆ04/ｖ+0・Ｆ05/ｖ 
+0・Ｆ06/ｖ+0・Ｆ07/ｖ+0・Ｆ08/ｖ+0・Ｆ09/ｖ  ・・・（３１）
ＦＥ04=1・Ｆ01/ｖ+1・Ｆ02/ｖ+1・Ｆ03/ｖ+1・Ｆ04/ｖ+0・Ｆ05/ｖ 
+0・Ｆ06/ｖ+0・Ｆ07/ｖ+0・Ｆ08/ｖ+0・Ｆ09/ｖ  ・・・（３２）
ＦＥ05=1・Ｆ01/ｖ+1・Ｆ02/ｖ+1・Ｆ03/ｖ+1・Ｆ04/ｖ+1・Ｆ05/ｖ 
+0・Ｆ06/ｖ+0・Ｆ07/ｖ+0・Ｆ08/ｖ+0・Ｆ09/ｖ  ・・・（３３）
ＦＥ06=0・Ｆ01/ｖ+1・Ｆ02/ｖ+1・Ｆ03/ｖ+1・Ｆ04/ｖ+1・Ｆ05/ｖ 
+1・Ｆ06/ｖ+0・Ｆ07/ｖ+0・Ｆ08/ｖ+0・Ｆ09/ｖ  ・・・（３４）
ＦＥ07=0・Ｆ01/ｖ+0・Ｆ02/ｖ+1・Ｆ03/ｖ+1・Ｆ04/ｖ+1・Ｆ05/ｖ 
+1・Ｆ06/ｖ+1・Ｆ07/ｖ+0・Ｆ08/ｖ+0・Ｆ09/ｖ  ・・・（３５）
ＦＥ08=0・Ｆ01/ｖ+0・Ｆ02/ｖ+0・Ｆ03/ｖ+1・Ｆ04/ｖ+1・Ｆ05/ｖ 
+1・Ｆ06/ｖ+1・Ｆ07/ｖ+1・Ｆ08/ｖ+0・Ｆ09/ｖ  ・・・（３６）
ＦＥ09=0・Ｆ01/ｖ+0・Ｆ02/ｖ+0・Ｆ03/ｖ+0・Ｆ04/ｖ+1・Ｆ05/ｖ 
+1・Ｆ06/ｖ+1・Ｆ07/ｖ+1・Ｆ08/ｖ+1・Ｆ09/ｖ  ・・・（３７）
ＦＥ10=0・Ｆ01/ｖ+1・Ｆ02/ｖ+0・Ｆ03/ｖ+0・Ｆ04/ｖ+0・Ｆ05/ｖ 
+1・Ｆ06/ｖ+1・Ｆ07/ｖ+1・Ｆ08/ｖ+1・Ｆ09/ｖ  ・・・（３８）
ＦＥ11=0・Ｆ01/ｖ+0・Ｆ02/ｖ+0・Ｆ03/ｖ+0・Ｆ04/ｖ+0・Ｆ05/ｖ 
+0・Ｆ06/ｖ+1・Ｆ07/ｖ+1・Ｆ08/ｖ+1・Ｆ09/ｖ  ・・・（３９）
ＦＥ12=0・Ｆ01/ｖ+0・Ｆ02/ｖ+0・Ｆ03/ｖ+0・Ｆ04/ｖ+0・Ｆ05/ｖ 
+0・Ｆ06/ｖ+0・Ｆ07/ｖ+1・Ｆ08/ｖ+1・Ｆ09/ｖ  ・・・（４０）
ＦＥ13=0・Ｆ01/ｖ+0・Ｆ02/ｖ+0・Ｆ03/ｖ+0・Ｆ04/ｖ+0・Ｆ05/ｖ 
+0・Ｆ06/ｖ+0・Ｆ07/ｖ+0・Ｆ08/ｖ+1・Ｆ09/ｖ  ・・・（４１）
この式（２９）〜（４１）は、式（４２）として表すこともできる。
【００８７】
【数３】
2005260929.tif 000005
【００８８】
式（４２）において、ｊは調整処理単位内の画素位置を示す。この例において、ｊは１〜１３のいずれか１つの値を有する。また、ｉは、前景の成分の位置を示す。この例において、ｉは、１〜９のいずれか１つの値を有する。ａijは、iおよびjの値に対応して、０または１の値を有する。
ここで、誤差を考慮すると、式（４２）は、式（４３）のように表すことができる。
【００８９】
【数４】
2005260929.tif 000006
【００９０】
式（４３）において、ｅjは、注目画素Ｃjに含まれる誤差である。この式（４３）は、式（４４）に書き換えることができる。
【００９１】
【数５】
2005260929.tif 000007
【００９２】
ここで、最小自乗法を適用するため、誤差の二乗和Ｅを式（４５）に示すように定義する。
【００９３】
【数６】
2005260929.tif 000008
【００９４】
誤差が最小になるためには、誤差の二乗和Ｅに対する変数Ｆkによる偏微分の値が０になればよいことから、式（４６）を満たすようにＦkを求める。
【００９５】
【数７】
2005260929.tif 000009
【００９６】
式（４６）において、動き量ｖは固定値であるから、式（４７）を導くことができる。
【００９７】
【数８】
2005260929.tif 000010
【００９８】
式（４７）を展開して移項すると、式（４８）を得る。
【００９９】
【数９】
2005260929.tif 000011
【０１００】
この式（４８）のｋに、１〜９の整数のいずれか１つを代入して得られる９つの式に展開する。さらに、得られた９つの式を、行列により１つの式により表すことができる。この式を正規方程式と呼ぶ。
このような最小自乗法に基づく、方程式生成部４４３が生成する正規方程式の例を式（４９）に示す。
【０１０１】
【数１０】
2005260929.tif 000012
【０１０２】
この式（４９）をＡ・Ｆ＝ｖ・ＦＥと表すと、Ａ，ｖはモデル化の時点で既知である。また、ＦＥは足し込み動作において画素値を入力することで既知となり、Ｆが未知である。
【０１０３】
このように、最小自乗法に基づく正規方程式により前景成分Ｆを算出することにより、画素値ＦＥに含まれている誤差を分散させることができる。方程式生成部４４３は、このように生成された正規方程式を足し込み部４４４に供給する。
【０１０４】
足し込み部４４４は、調整処理単位決定部４４１から供給された調整処理単位情報ＨＣを基に、前景成分画像データＤＢeを、方程式生成部４４３から供給された行列の式に設定する。さらに、足し込み部４４４は、画像データの設定なされた行列式を演算部４４５に供給する。
【０１０５】
演算部４４５は、掃き出し法（Gauss-Jordanの消去法）などの解法に基づく処理により、動きボケが軽減された前景成分Ｆi/ｖを算出して、動きボケが軽減された前景の画素値Ｆ01〜Ｆ09を生成する。この生成した画素値Ｆ01〜Ｆ09は、前景成分画像の位置を変化させないため、調整処理単位の中心を基準として画素値Ｆ01〜Ｆ09の画像位置を設定して、例えば１フレーム期間の１／２の位相で出力部４５に供給する。すなわち、図１６に示すように、画素値Ｆ01〜Ｆ09を画素位置Ｃ03〜Ｃ11の画像データとして、動きボケの軽減された前景成分画像の画像データＤＶafcを１フレーム期間の１／２のタイミングで出力部４５に供給する。
【０１０６】
なお、演算部４４５は、画素値が偶数個のとき、例えば画素値Ｆ01〜Ｆ08を求めたときは、中央の２つの画素値Ｆ04，F05の何れかを調整処理単位の中心として出力する。また、シャッター動作が行われて１フレームにおける露光期間が１フレーム期間よりも短いときには、露光期間の１／２の位相で出力部４５に供給する。
【０１０７】
出力部４５は、前景背景分離部４３から供給された背景成分画像データＤＢbに、動きボケ調整部４４から供給された前景成分画像データＤＢfを合成して画像データＤＶoutを生成して出力する。また、生成した画像データＤＶoutをメモリ５５に供給する。ここで、動きボケの軽減された前景成分画像は、動きベクトル検出部３０で検出された動きベクトルＭＶＣに対応する時空間位置に合成する。すなわち、動きベクトルＭＶＣに応じて設定された処理領域情報ＨＺによって示された位置に動きボケの軽減された前景成分画像を合成することで、動きボケの軽減された前景成分画像を動きボケ調整前の画像位置に正しく出力できる。
【０１０８】
メモリ５５は、出力部４５から供給された動きボケ軽減画像の画像データＤＶoutを記憶する。また、記憶している画像データを画像データＤＶmとして、動きベクトル検出部３０に供給する。
【０１０９】
このようにして、画像内の動きオブジェクトの動きボケが軽減されている動きボケ軽減画像を生成して、この動きボケ軽減画像を用いて動きベクトルを検出することから、画像センサ１０からの画像データＤＶaに基づく画像に動きボケを生じていても、この動きボケによる影響を少なくして動きオブジェクトの動きベクトルを精度良く検出できる。
【０１１０】
また、画像内の処理領域では、動きオブジェクトに対応する動きボケが生じていない各画素の画素値が動きベクトルに対応して移動しながら時間方向に積分された値であるとしてモデル化して、前景オブジェクト成分と背景オブジェクト成分との混合比を有意情報として抽出することができ、この有意情報を利用して動きオブジェクトの成分を分離して、分離した動きオブジェクトの成分に基づき精度良く動きボケを軽減させることができる。
【０１１１】
さらに、注目画素あるいは動きベクトルに基づき注目画素に対応する位置に動きボケが軽減された動きオブジェクトの画像が出力されるので、動きオブジェクトの画像を正しい位置に出力できる。
【０１１２】
ところで、動きボケの軽減は、ソフトウェアを用いても実現できる。図１７は、画像処理装置の他の構成としてソフトウェアで動きボケ軽減を行う場合を示している。ＣＰＵ（Central Processing Unit）６１は、ＲＯＭ（Read Only Memory）６２、または記憶部６３に記憶されているプログラムに従って各種の処理を実行する。この記憶部６３は、例えばハードディスクなどで構成され、ＣＰＵ６１が実行するプログラムや各種のデータを記憶する。ＲＡＭ（Random Access Memory）６４には、ＣＰＵ６１が実行するプログラムや各種の処理を行う際に用いられるデータ等が適宜記憶される。これらのＣＰＵ６１、ＲＯＭ６２、記憶部６３およびＲＡＭ６４は、バス６５により相互に接続されている。
【０１１３】
ＣＰＵ６１には、バス６５を介して、入力インタフェース部６６や出力インタフェース部６７，通信部６８，ドライブ６９が接続されている。入力インタフェース部６６には、キーボードやポインティングデバイス（例えばマウス等），マイクロホンなどの入力装置が接続される。また、出力インタフェース部６７には、ディスプレイ、スピーカなどの出力装置が接続されている。ＣＰＵ６１は、入力インタフェース部６６から入力される指令に対応して各種の処理を実行する。そして、ＣＰＵ６１は、処理の結果得られた画像や音声等を出力インタフェース部６７から出力する。通信部６８は、インターネット、その他のネットワークを介して外部の装置と通信する。この通信部６８は画像センサ１０から出力された画像データＤＶaの取り込みや、プログラムの取得等に用いられる。ドライブ６９は、磁気ディスク，光ディスク，光磁気ディスク，半導体メモリなどが装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部６３に転送され、記憶される。
【０１１４】
次に、図１８のフローチャートを参照して、画像処理装置の動作について説明する。ステップＳＴ１において、ＣＰＵ６１は、画像センサ１０によって生成された画像データＤＶaを、入力部や通信部等を介して取得し、この取得した画像データＤＶaを記憶部６３に記憶させる。
【０１１５】
ステップＳＴ２でＣＰＵ６１は、動きボケ軽減画像を用いて動きベクトルの検出が可能であるか否かを判別する。ここで、記憶部６３やＲＡＭ６４に、動きボケ軽減画像の画像データが動きベクトルの検出に必要とされるフレーム数分だけ記憶されておらず、動きボケ軽減画像の画像データを用いた動きベクトルの検出が出来ないときにはステップＳＴ３に進む。また、動きボケ軽減画像の画像データが動きベクトルの検出に必要とされるフレーム数分記憶されており、この記憶されている画像データを用いて動きベクトルの検出が出来るときはステップＳＴ４に進む。
【０１１６】
ステップＳＴ３でＣＰＵ６１は、ステップＳＴ１で取得した画像データＤＶaを動きベクトル検出用データに設定してステップＳＴ５に進む。また、ステップＳＴ４でＣＰＵ６１は、記憶されている動きボケ軽減画像の画像データＤＶmを動きベクトル検出用データに設定してステップＳＴ５に進む。
【０１１７】
ステップＳＴ５でＣＰＵ６１は、外部からの指示を受けて処理領域を決定する。
ステップＳＴ６でＣＰＵ６１は、動きベクトル検出用データを用いて、ステップＳＴ５で決定された処理領域における前景に対応する動きオブジェクトＯＢfの動きベクトルを検出する。
【０１１８】
ステップＳＴ７でＣＰＵ６１は、露光期間パラメータを取得してステップＳＴ８に進み、ステップＳＴ６で検出した動きベクトルを露光期間パラメータに応じて補正してステップＳＴ９に進む。
【０１１９】
ステップＳＴ９でＣＰＵ６１は、補正された動きベクトルに基づき、動きオブジェクトＯＢfの動きボケを軽減するための動きボケ軽減オブジェクト画像生成処理を行い、動きオブジェクトＯＢfの動きボケを軽減させた画像データを生成する。図１９は、動きボケ軽減オブジェクト画像生成処理を示すフローチャートである。
【０１２０】
ステップＳＴ１５でＣＰＵ６１は、ステップＳＴ５で決定された処理領域について領域特定処理を行い、決定された処理領域内の画素が、背景領域，前景領域,カバードバックグランド領域，アンカバードバックグランド領域のいずれに属するか判別して領域情報を生成する。この領域情報の生成では、処理の対象がフレーム#nであるとき、フレーム#n-2，#n-1，#n，#n+1，#n+2の画像データを用いてフレーム間差分絶対値を算出する。このフレーム間差分絶対値が予め設定している閾値Thより大きいか否かによって、動き部分であるか静止部分であるかを判別し、この判別結果に基づいて領域の判別を行い領域情報を生成する。
【０１２１】
ステップＳＴ１６でＣＰＵ６１は、混合比算出処理を行い、ステップＳＴ１５で生成した領域情報を用いて、背景成分が含まれる割合を示す混合比αを処理領域内の各画素について算出しステップＳＴ１７に進む。この混合比αの算出では、カバードバックグランド領域やアンカバードバックグランド領域の画素に対して、フレーム#n-1，#n，#n+1の画素値を用いて推定混合比αcを求める。また、背景領域は混合比αを「１」、前景領域は混合比αを「０」とする。
【０１２２】
ステップＳＴ１７でＣＰＵ６１は、前景背景分離処理を行い、ステップＳＴ１５で生成した領域情報とステップＳＴ１６で算出した混合比αに基づき、前景成分のみから成る前景成分画像データと、背景成分のみから成る背景成分画像データとに処理領域内の画像データを分離する。すなわち、フレーム#nにおけるカバードバックグランド領域については上述の式（１２）、アンカバードバックグランド領域については上述の式（１５）の演算を行い前景成分を求めて、前景成分画像データと背景成分のみから成る背景成分画像データに分離する。
【０１２３】
ステップＳＴ１８でＣＰＵ６１は、動きボケ調整処理を行い、ステップＳＴ８で得られた補正後の動きベクトルとステップＳＴ１５で生成した領域情報を基に、前景成分画像データに含まれる１以上の画素を示す調整処理単位を決定して、ステップＳＴ１７で分離した前景成分画像データに含まれる動きボケを低減させる。すなわち、動きベクトルＭＶＣと処理領域情報ＨＺと領域情報ＡＲに基づき調整処理単位を設定して、この動きベクトルＭＶＣおよび設定された調整処理単位を基に、モデル化を実行して正規方程式を作成する。この作成した正規方程式に画像データを設定して、掃き出し法（Gauss-Jordanの消去法）などの解法に基づく処理を行い、動きボケ軽減オブジェクト画像の画像データ、すなわち動きボケが軽減された前景成分画像データを生成する。
【０１２４】
ステップＳＴ１０でＣＰＵ６１は、処理結果の出力処理を行い、ステップＳＴ１７で分離した背景成分画像データに基づく画像上のステップＳＴ８で得られた動きベクトルに対応する時空間位置に、ステップＳＴ１８で生成した動きボケの軽減されている前景成分画像データを合成して、処理結果である動きボケ軽減画像の画像データＤＶoutを生成して出力する。
【０１２５】
ステップＳＴ１１でＣＰＵ６１は、動きボケの軽減処理を終了するか否かを判別する。ここで、次のフレームの画像について動きボケの軽減処理を行うときには、ステップＳＴ２に戻り、動きボケの軽減処理を行わないときは処理を終了する。このように、ソフトウェアによっても、動きボケの軽減処理を行うことができる。
【０１２６】
また、上述の実施の形態では、動きボケを軽減させるオブジェクトの動きベクトルを求めるとともに、動きボケを軽減させるオブジェクトが含まれる処理領域を、静止領域と動き領域と混合領域等に区分して、動き領域と混合領域の画像データを用いて動きボケを軽減させる処理を行うものであるが、画素毎に動きベクトルを求めて動きボケ軽減画像生成処理を行うものとすれば、前景・背景・混合領域を特定せず動きボケの軽減を行うことができる。
【０１２７】
この場合、動きベクトル検出部３０では、注目画素の動きベクトルを求めて動きボケ軽減画像生成部４０に供給する。また、注目画素の画素位置を示す処理領域情報ＨＤを出力部に供給する。
【０１２８】
図２０は、前景・背景・混合領域を特定せず動きボケを軽減できる動きボケ軽減画像生成部の構成を示している。動きボケ軽減画像生成部４０ａの処理領域設定部４８は、動きボケを軽減させる画像上の注目画素に対して、この注目画素に対する動きベクトルの動き方向に合わせて処理領域を設定して演算部４９に通知する。また、注目画素の位置を出力部４５ａに供給する。図２１は処理領域を示しており、注目画素を中心として動き方向に（２Ｎ＋１）画素分の処理領域を設定する。図２２は処理領域の設定例を示しており、動きボケを軽減させる動きオブジェクトＯＢfの画素に対して動きベクトルの方向が例えば矢印Ｂで示すように水平方向である場合は、図２２Ａに示すように水平方向に処理領域ＷＡを設定する。また、動きベクトルの方向が斜め方向である場合は、図２２Ｂに示したように、該当する角度方向に処理領域ＷＡを設定する。ただし、斜め方向に処理領域を設定する際には、処理領域の画素位置に相当する画素値を、補間等によって求める。
【０１２９】
ここで、処理領域内では、図２３に示すように、実世界変数(Ｙ-8，・・・,Ｙ0，・・・，Ｙ8) が時間混合されている。なお、図２３は、動き量ｖが「ｖ＝５」であって処理領域を１３画素（Ｎ＝６：Ｎは注目画素に対する処理幅の画素数）とした場合である。
【０１３０】
演算部４９は、この処理領域に対して実世界推定を行い、推定した実世界の中心画素変数Ｙ0のみを、動きボケ除去がなされた注目画素の画素値として出力する。
【０１３１】
ここで、処理領域を構成する画素の画素値をＸ-N，Ｘ-N+1，・・・，Ｘ0，・・・，ＸN-1，ＸN とすると、式（５０）に示すような（２Ｎ＋１）個の混合式が成立する。なお、定数ｈは、動き量ｖを１／２倍したときの整数部分の値（小数点以下を切り捨てた値）を示している。
【０１３２】
【数１１】
2005260929.tif 000013
【０１３３】
しかし、求めたい実世界変数（Ｙ-N-h，・・・，Ｙ0，・・・，ＹN+h）は、（２Ｎ＋ｖ）個ある。すなわち、変数の数よりも式の数が少ないので、式（５０）に基づき実世界変数（Ｙ-N-h，・・・，Ｙ0，・・・，ＹN+h）を求めることができない。
【０１３４】
そこで、空間相関を用いた拘束式である式（５１）を用いることで、実世界変数よりも式の数を増やし、最小自乗法を用いて、実世界変数の値を求める。
Ｙt−Ｙt+1＝０  （ｔ＝-N-h,・・・,０,・・・,N+h-1）・・・（５１）
【０１３５】
すなわち、式（５０）で表される（２Ｎ＋１）個の混合式と式（５１）で表される（２Ｎ＋ｖ−1）個の拘束式を合わせた（４Ｎ＋ｖ）個の式を用いて、（２Ｎ＋ｖ）個の未知変数である実世界変数（Ｙ-N-h，・・・，Ｙ0，・・・，ＹN+h）を求める。
【０１３６】
ここで、各式において発生する誤差の二乗和が最小となるような推定を行うことで、動きボケ軽減画像生成処理を行いながら、実世界での画素値の変動を小さくできる。
【０１３７】
式（５２）は、図２３に示すように処理領域を設定した場合を示しており、式（５０）と式（５１）にそれぞれの式で発生する誤差を加えたものである。
【０１３８】
【数１２】
2005260929.tif 000014
【０１３９】
この式（５２）は式（５３）として示すことができ、式（５４）に示す誤差の二乗和Ｅを最小とするようなＹ（＝Ｙi）は式（５５）として求まる。なお、式（５５）において、Ｔは転置行列であることを示している。
【０１４０】
【数１３】
2005260929.tif 000015
【０１４１】
ここで、誤差の二乗和は式（５６）で示すものとなり、この誤差の二乗和を偏微分して、式（５７）に示すように偏微分値が０となるようにすれば、誤差の二乗和が最小となる式（５５）を求めることができる。
【０１４２】
【数１４】
2005260929.tif 000016
【０１４３】
この式（５５）の線形結合を行うことで、実世界変数（Ｙ-N-h，・・・，Ｙ0，・・・，ＹN+h）をそれぞれ求めることができ、中心画素変数Ｙ0の画素値を注目画素の画素値として出力する。例えば、演算部４９は、動き量毎に予め求めておいた行列（ＡTＡ）-1ＡTを記憶しておき、動き量に応じた行列と処理領域内の画素の画素値に基づき、中心画素変換Ｙ０の画素値を注目値として出力する。このような処理を処理領域内の全画素に対して行うことで、動きボケが軽減されている実世界変数を全画面、或いは、ユーザが指定した領域について求めることができる。
【０１４４】
上述では、ＡＹ＝Ｘ＋ｅにおける誤差の二乗和Ｅを最小とするように、最小自乗法で実世界変数（Ｙ-N-h，・・・，Ｙ0，・・・，ＹN+h）を求めているが、式の数＝変数の数が一致するように式（５８）を作ることも可能である。この式をＡＹ＝Ｘとおき、Ｙ＝Ａ-1Ｘと変形することにより、実世界変数（Ｙ-N-h，・・・，Ｙ0，・・・，ＹN+h）を求めることも可能である。
【０１４５】
【数１５】
2005260929.tif 000017
【０１４６】
出力部４５ａでは、演算部４９で求めた中心画素変数Ｙ0の画素値を、動きベクトル検出部３０から供給された処理領域情報ＨＺで示された領域内に設定した注目画素の画素値とする。また、背景領域や混合領域であるため中心画素変数Ｙ0を求めることができないときには、動きボケ軽減画像生成処理前の注目画素の画素値を用いて、画像データＤＶoutを生成する。
【０１４７】
このように、動きオブジェクトの画素毎の動きが異なる場合でも、注目画素に対応する動きベクトルで、実世界を推定することが可能となり、精度の高い動きボケ軽減画像生成処理を行うことができる。例えば、動きオブジェクトが剛体と仮定できないような場合であっても、動きオブジェクトの画像の動きボケを軽減させることができる。
【０１４８】
ところで、上述の実施の形態では、動きオブジェクトＯＢfの動きボケを軽減させて画像表示を行うものであり、図２４に示すように動きオブジェクトＯＢfが図２４Ａ，図２４Ｂ，図２４Ｃの順に移動しても、この動きオブジェクトＯＢfを追従しながら、動きオブジェクトＯＢfの動きボケを軽減させて良好な画像を表示するものである。しかし、動きオブジェクトＯＢfを基準として、動きボケの軽減された動きオブジェクトＯＢfの画像が画面上の所定位置となるように画像の表示位置を制御することで、動きオブジェクトＯＢfを追従しているような画像表示を行うこともできる。
【０１４９】
この場合、動きベクトル検出部３０では、領域選択情報ＨＡで示す領域内に設けた追尾点を動きベクトルＭＶに応じて移動させて、この移動後の追尾点を示す座標情報ＨＧを出力部４５に供給する。出力部４５は、座標情報ＨＧで示された追尾点が画面上の所定位置となるように画像データＤＶoutを生成する。このようにして、動きオブジェクトＯＢfを追従しているように画像表示を行うことができる。
【０１５０】
さらに、動きオブジェクトＯＢfを基準として、すなわち領域選択情報ＨＡで示す領域内に設けた追尾点を基準として、動きボケが軽減されている画像データＤＶoutを用いて拡大画像を生成して、追尾点が画面上の所定位置となるように表示すれば、図２５Ａ〜図２５Ｃに示すように動きオブジェクトＯＢfが移動しても、図２５Ｄ〜図２５Ｆに示すように動きオブジェクトＯＢfを追従しながら動きオブジェクトＯＢfの拡大画像を出力できる。この場合、動きオブジェクトＯＢfの拡大画像が画像の画枠の大きさで表示されるので、追尾点が画面上の所定位置となるように表示画像を移動させても、画面上に表示の無い部分が生じてしまうことを防止できる。また、拡大画像の生成では、動きボケが軽減されている画像の画素値の繰り返しを行うことで拡大画像を生成できる。例えば各画素値を２回繰り返すことで、縦方向と横方向のサイズを２倍とした拡大画像を生成できる。また、隣接画素の平均値等を新たな画素値とすれば、この隣接画素間に新たな画素が設けられて拡大画像を生成できる。さらに、動きボケの軽減された画像を用いて空間解像度創造を行うことにより高精細で動きボケの少ない拡大画像を出力できる。以下、空間解像度創造を行って拡大画像を生成する場合について説明する。
【０１５１】
図２６は、画像処理装置の他の構成として、空間解像度創造を行い拡大画像の出力を可能とする場合を示している。なお、図２６において、図５と対応する部分については同一符号を付し、詳細な説明は省略する。
【０１５２】
動きベクトル検出部３０で生成された座標情報ＨＧは、空間解像度創造部７０に供給される。また、動きボケ軽減画像生成部４０から出力される動きボケ軽減画像の画像データＤＶoutは空間解像度創造部７０に供給される。
【０１５３】
図２７は、空間解像度創造部の構成を示している。動きボケの軽減がなされた画像データＤＶoutは、空間解像度創造部７０に供給される。
空間解像度創造部７０は、画像データＤＶoutの注目画素をクラス分類するクラス分類部７１、クラス分類部７１でのクラス分類結果に応じた予測係数を出力する予測係数メモリ７２、予測係数メモリ７２から出力された予測係数と画像データＤＶoutとを用いて予測演算を行い、補間画素データＤＨを生成する予測演算部７３、動きベクトル検出部３０からの座標情報ＨＧに基づき、オブジェクトＯＢjの画像を表示画素分読み出して拡大画像の画像データＤＶzを出力する拡大画像出力部７４を有している。
【０１５４】
画像データＤＶoutは、クラス分類部７１のクラス画素群切り出し部７１１と予測演算部７３の予測画素群切り出し部７３１と拡大画像出力部７４に供給される。クラス画素群切り出し部７１１は、動きの程度を表わすためのクラス分類（動きクラス）の為に必要な画素を切り出す。このクラス画素群切り出し部７１１で切り出した画素群は、クラス値決定部７１２に供給される。クラス値決定部７１２は、クラス画素群切り出し部７１１で切り出した画素群の画素データについてフレーム間差分を算出し、例えばこのフレーム間差分の絶対値の平均値を、予め設定した複数の閾値と比較することでクラス分けを行い、クラス値ＣＬを決定する。
【０１５５】
予測係数メモリ７２には、予測係数が記憶されており、クラス分類部７１で決定されたクラス値ＣＬに応じた予測係数ＫＥを予測演算部７３に供給する。
【０１５６】
予測演算部７３の予測画素群切り出し部７３１は、予測演算に使用する画素データ（すなわち予測タップ）ＴＰを画像データＤＶoutから切り出して、演算処理部７３２に供給する。演算処理部７３２は、予測係数メモリ７２から供給された予測係数ＫＥと予測タップＴＰとを用いて、それぞれ線形一次演算を行うことにより、注目画素に対応する補間画素データＤＨを算出して拡大画像出力部７４に供給する。
【０１５７】
拡大画像出力部７４は、画像データＤＶoutと補間画素データＤＨから、座標情報ＨＧに基づく位置が画面上の所定位置となるように表示サイズ分の画素データを読み出すことで、拡大画像の画像データＤＶzを生成して出力する。
【０１５８】
このように拡大画像の生成を行い、生成した補間画素データＤＨと画像データＤＶoutを用いて、動きボケの軽減された高画質の拡大画像を出力できる。例えば、補間画素データＤＨを生成して水平方向や垂直方向の画素数を２倍とすれば、動きオブジェクトＯＢfを縦横２倍として、動きボケを軽減された画像を高画質に出力できる。
【０１５９】
なお、予測係数メモリ７２に記憶されている予測係数は、図２８に示す学習装置を用いて作成できる。なお図２８において、図２７と対応する部分については同一符号を付している。
【０１６０】
学習装置７５は、クラス分類部７１と予測係数メモリ７２と係数算出部７６を有している。クラス分類部７１と係数算出部７６には、教師画像の画素数を削減することにより生成された生徒画像の画像データＧＳが供給される。
【０１６１】
クラス分類部７１は、生徒画像の画像データＧＳから、クラス画素群切り出し部７１１によって、クラス分類を行うために必要な画素を切り出し、この切り出した画素群の画素データを用いてクラス分けを行い、クラス値を決定する。
【０１６２】
係数算出部７６の生徒画素群切り出し部７６１は、予測係数の算出に使用する画素データを生徒画像の画像データＧＳから切り出して、予測係数学習部７６２に供給する。
【０１６３】
予測係数学習部７６２は、クラス分類部７１から供給されたクラス値で示されたクラス毎に、教師画像の画像データＧＴと生徒画素群切り出し部７６１からの画像データと予測係数を用いて正規方程式を生成する。さらに、正規方程式を掃き出し法などの一般的な行列解法を用いて予測係数についてそれぞれ解き、得られた係数を予測係数メモリ７２に格納する。
【０１６４】
図２９，３０は、空間解像度創造処理を合わせて行う場合の動作を示すフローチャートである。
ステップＳＴ２１でＣＰＵ６１は、画像データＤＶaを取得してステップＳＴ２２に進む。
ステップＳＴ２２でＣＰＵ６１は、処理領域を設定してステップＳＴ２３に進む。
ステップＳＴ２３でＣＰＵ６１は、変数ｉを「ｉ＝０」に設定してステップＳＴ２４に進む。
【０１６５】
ステップＳＴ２４でＣＰＵ６１は、変数ｉが「ｉ≠０」であるか否かを判別する。ここで「ｉ≠０」でないときはステップＳＴ２５に進み、「ｉ≠０」であるときはステップＳＴ２９に進む。
ステップＳＴ２５でＣＰＵ６１は、ステップＳＴ２２で設定した処理領域について動きベクトルを検出してステップＳＴ２６に進む。
【０１６６】
ステップＳＴ２６でＣＰＵ６１は、露光期間パラメータを取得してステップＳＴ２７に進み、ステップＳＴ２５で検出した動きベクトルを露光期間パラメータに応じて補正してステップＳＴ２８に進む。
【０１６７】
ステップＳＴ２８でＣＰＵ６１は、補正後の動きベクトルと画像データＤＶaを用いて図１９に示す動きボケ軽減オブジェクト画像生成処理を行い、動きボケが軽減された動きオブジェクトの画像を生成してステップＳＴ３３に進む。
【０１６８】
ステップＳＴ３３でＣＰＵ６１は、処理結果の記憶処理を行い、図１８のステップＳＴ１０と同様にして背景成分データに、ステップＳＴ２７で求められた動きベクトルに対応する時空間位置に、動きボケを軽減させた前景画像の画像データを合成して、処理結果である画像データＤＶoutを生成する。さらに生成した処理結果である画像データＤＶoutを記憶部６３あるいはＲＡＭ６４に記憶させてステップＳＴ３４に進む。
【０１６９】
ステップＳＴ３４でＣＰＵ６１は、動きオブジェクトの動きに合わせて処理領域を移動させて追尾後処理領域の設定を行いステップＳＴ３５に進む。この追尾後処理領域の設定では、例えば動きオブジェクトＯＢfの動きベクトルＭＶを検出して行う。あるいは、ステップＳＴ２５やステップＳＴ２９で検出されている動きベクトルを用いて行う。
【０１７０】
ステップＳＴ３５でＣＰＵ６１は、変数ｉを「ｉ＝ｉ＋１」に設定してステップＳＴ３６に進む。
ステップＳＴ３６でＣＰＵ６１は、処理結果が動きベクトルの検出可能分だけ記憶された否かを判別する。ここで、動きベクトルの検出が可能であるフレーム数分だけ動きボケが軽減された画像データＤＶoutが記憶されていないときにはステップＳＴ２４に戻る。
【０１７１】
ステップＳＴ３６からステップＳＴ２４に戻り、ステップＳＴ２４の処理がＣＰＵ６１で行われるときは、変数ｉが「ｉ≠０」であることからステップＳＴ２９に進み、ステップＳＴ３４で設定された追尾後処理領域について動きベクトルを検出してステップＳＴ３０に進む。
【０１７２】
ＣＰＵ６１は、ステップＳＴ２６〜２８と同様な処理をステップＳＴ３０〜３２で行いステップＳＴ３３に進む。ステップＳＴ３３からの処理を繰り返し、処理結果が動きベクトルの検出可能分だけ記憶されたことをステップＳＴ３６でＣＰＵ６１が判別するとステップＳＴ３６から図３０のステップＳＴ３７に進む。
【０１７３】
ステップＳＴ３７でＣＰＵ６１は、変数ｉを「ｉ＝０」に設定してステップＳＴ３８に進む。
ステップＳＴ３８でＰＵ２１は、変数ｉが「ｉ≠０」であるか否かを判別し「ｉ≠０」でないときにはステップＳＴ３９に進み、「ｉ≠０」であるときは、ステップＳＴ４３に進む。
【０１７４】
ステップＳＴ３９でＣＰＵ６１は、記憶されている処理結果を用いてステップＳＴ２２で設定された処理領域について動きベクトルを検出してステップＳＴ４０に進む。
ステップＳＴ４０でＣＰＵ６１は、露光期間パラメータを取得してステップＳＴ４１に進みステップＳＴ３９で検出した動きベクトルを露光期間パラメータに応じて補正してステップＳＴ４２に進む。
【０１７５】
ステップＳＴ４２でＣＰＵ６１は、補正後の動きベクトルと画像データＤＶaを用いて動きボケ軽減オブジェクト画像生成処理を行い、動きボケが軽減された動きオブジェクトの画像を生成してステップＳＴ４７に進む。
【０１７６】
ステップＳＴ４７でＣＰＵ６１は、処理結果の出力と記憶処理を行い、ステップＳＴ３３と同様にして処理結果である画像データＤＶoutを生成して出力する。また、生成した画像データＤＶoutを記憶部６３あるいはＲＡＭ６４に記憶させる。
【０１７７】
ステップＳＴ４８でＣＰＵ６１は、ステップＳＴ４７で生成した画像データＤＶoutを用いて空間解像度創造処理を行い、座標情報ＨＧで示された位置が画面上の一定位置となるように表示画面サイズの拡大画像の画像データＤＶzを生成する。
【０１７８】
ステップＳＴ４９でＣＰＵ６１は、ステップＳＴ３４と同様にして追尾後処理領域の設定を行いステップＳＴ５０に進む。
ステップＳＴ５０でＣＰＵ６１は、変数ｉを「ｉ＝ｉ＋１」に設定してステップＳＴ５１に進む。
【０１７９】
ステップＳＴ５１でＣＰＵ６１は、動作の終了であるか否かを判別する。ここで、動作の終了でないときはステップＳＴ３８に戻る。
ステップＳＴ５１からステップＳＴ３８に戻り、ステップＳＴ３８の処理がＣＰＵ６１で行われるとき、変数ｉが「ｉ≠０」であることからステップＳＴ４３に進み、ステップＳＴ４３では、記憶されている処理結果を用いて追尾後処理領域について動きベクトルを検出してステップＳＴ４４に進む。
【０１８０】
ＣＰＵ６１は、ステップＳＴ４０〜４２と同様な処理をステップＳＴ４４〜４６で行いステップＳＴ４７に進み、ステップＳＴ４７からの処理を行う。その後、画像データＤＶaの終了あるいは動作の終了操作が行われたときは、ステップＳＴ５１で動作の終了と判別して処理を終了する。
【０１８１】
また、動きボケが軽減された画像データＤＶoutを用いて空間解像度創造だけでなく、特開２００２−１９９３４９号公報で示されている時間解像度創造を行い、時間解像度の高い画像を高画質に生成することもできる。図３１は、時間解像度創造を行いフレームレートの変換を可能とする場合の画像処理装置の構成を示している。なお、図３１において、図５と対応する部分については同一符号を付し、詳細な説明は省略する。
【０１８２】
時間解像度創造前後におけるフレームレートを示す周波数情報ＨＦは、動きベクトル割り付け部８０と時間解像度創造部９０に供給される。また、動きベクトル検出部３０で生成された動きベクトルＭＶＣは、動きボケ軽減画像生成部４０と動きベクトル割り付け部８０に供給される。さらに、メモリ５５から読み出された画像データＤＶmは、動きベクトル検出部３０だけでなく画像データ選択部８５にも供給される。
【０１８３】
動きベクトル割り付け部８０は、供給された周波数情報ＨＦに基づき、新たに生成するフレーム画像の動きベクトルＭＶＤを、動きベクトルＭＶに基づいて生成する。例えば、新たに生成するフレーム画像の画素に対して動きベクトルＭＶを用いて動きベクトルの割り付けを行い、割り付け後の動きベクトルＭＶＤを時間解像度創造部９０に供給する。
【０１８４】
周波数情報ＨＦは、フレーム周波数変換のレートを示す情報であり、例えば倍速変換や２．５倍速変換あるいは２４Ｐ画像から６０Ｐ画像に変換するいわゆる２４−６０変換などを示す情報である。
【０１８５】
ここで、動きベクトル割り付け処理について、例えば周波数情報ＨＦがフレーム倍速変換を示す情報である場合を説明する。この場合、図３２に示すように画像データＤＶaの２フレームＲＦa，ＲＦb間に新たに２フレームＲＦn0，ＲＦn1の画像を生成する。この新たに生成する２フレームの画像を注目フレームとする。動きベクトル割り付け部８０は、動きベクトル検出部３０から供給された画像データＤＶaの動きベクトルＭＶから、注目フレームの各画素について、供給された動きベクトルＭＶから交差する動きベクトルを検出して、検出した動きベクトルを注目フレームの画像の動きベクトルＭＶＣとして割り付ける。例えば注目フレームＲＦn0の画素ＰＧn0xにおいて、この画素ＰＧn0xに対する画素領域ＰＷn0xを動きベクトルＭＶ-jが交差するとき、この動きベクトルＭＶ-jを画素ＰＧn0xの動きベクトルＭＶＣ-n0xとして割り付ける。また、交差する動きベクトルが複数であるときは、交差する複数の動きベクトルを平均化して割り付ける。さらに、交差する動きベクトルが検出できないときは、周辺画素や近距離の画素に割り付けられた動きベクトルを平均化したり、重み付けしたのち平均化して割り付ける。このようにして、注目フレームの全ての画素に動きベクトルを割り付ける。
【０１８６】
画像データ選択部８５は、画像センサ１０から供給された画像データＤＶaあるいはメモリ５５から読み出された画像データＤＶmのいずれかを選択して、画像データＤＶsとして時間解像度創造部９０に供給する。
時間解像度創造部９０は、画像データＤＶsと動きベクトルＭＶＤおよび周波数情報ＨＦに基づいて、所望のフレームレートの画像データＤＶtを生成する。
【０１８７】
図３３は、時間解像度創造部の構成を示している。時間解像度創造部９０は、画像データＤＶsの注目画素をクラス分類するクラス分類部９１、クラス分類部９１でのクラス分類結果に応じた予測係数を出力する予測係数メモリ９２、予測係数メモリ９２から出力された予測係数と画像データＤＶsとを用いて予測演算を行い、フレーム補間画素データを生成する予測演算部９３を有している。
【０１８８】
画像データＤＶsは、クラス分類部９１のクラス画素群切り出し部９１３と予測演算部９３の予測画素群切り出し部９３１に供給される。周波数情報ＨＦは、時間モード値決定部９１１に供給される。また、生成するフレーム上の注目画素に割り付けられた動きベクトルＭＶＤは、時間モード値決定部９１１と位置モード値決定部９１５に供給される。
【０１８９】
時間モード値決定部９１１は、供給された周波数情報ＨＦに基づき、生成するフレームの時間位置を示す時間モード値ＴＭを決定して、タップ中心位置決定部９１２と位置モード値決定部９１５および予測係数メモリ９２に供給する。図３４は、時間モード値決定部９１１の動作を説明するための図である。時間モード値決定部９１１は、変換前後の周波数から生成する注目フレームの時間位置に関する時間モード値を決定する。
【０１９０】
図３４Ａは、フレーム倍速変換する場合を示す。この場合では、上述のように画像データＤＶaの２フレームＲＦa，ＲＦb間に注目フレームである２フレームＲＦn0，ＲＦn1を生成する。そして、２フレームＲＦn0，ＲＦn1のどちらを生成するかによって、モード０およびモード１が規定される。例えば２フレーム間で、より時間的に前の注目フレームＲＦn0上の画素値を生成する場合には、時間モード値が０とされ、他方の注目フレームＲＦn1上の画素値を生成する場合には、時間モード値が１とされる。また、図３４Ｂは、フレーム周波数を２．５倍にする変換する場合を示しており、４種類の時間的位置の注目フレーム上の画素値を生成することになるので、どのフレーム位置の係数を生成するかによって、時間モード値が０から３までの何れかの値をとる。
【０１９１】
タップ中心位置決定部９１２は、動きベクトルＭＶＤを用いて、時間モード値ＴＭで示された注目フレーム上における注目画素の動きベクトルを決定する。すなわち、動きベクトル割り付け部８０によって、新たに生成するフレーム画像の画素に対して動きベクトルの割り付けが行われているときは、注目画素に対応する動きベクトルを選択する。この決定された動きベクトルに基づき、注目フレーム上の注目画素に対応する画像データＤＶsの前後２フレーム上の位置を検出し、タップ中心位置ＴＣとして設定する。
【０１９２】
クラス画素群切り出し部９１３は、このタップ中心位置ＴＣを基準として、注目フレームに対する画像データＤＶsの前後２フレームから、動きの程度を表わすためのクラス分類の為に必要な画素を切り出してクラス値決定部９１４に供給する。
【０１９３】
図３５は、上述したタップ中心位置ＴＣに基づいて、クラス画素群切り出し部９１３によって取り出されるクラス画素群のいくつかの例を示している。なお、図ではタップ中心位置ＴＣの画素を黒丸、タップ中心位置ＴＣの周辺に位置しておりクラス画素として使用される画素を×が記載された丸印で示している。このようなクラス画素群を注目フレームに対する画像データＤＶsの前後２フレームから切り出す。
【０１９４】
クラス値決定部９１４は、クラス画素群切り出し部９１３で切り出した画素群の画素データに対してフレーム間差分を算出し、例えばこのフレーム間差分の絶対値の平均値を、予め設定した複数の閾値と比較することでクラス分けを行い、クラス値ＣＭを決定する。
【０１９５】
図３６は、クラス値の決定処理を説明するための図である。クラス値決定部９１４は、切り出したクラス画素群の画素値を例えば１ビットＡＤＲＣ（Adaptive Dynamic Range Coding)によって符号化し、符号化の結果（ビット列）を整数としてみた値をクラス値とする。
【０１９６】
ここで、画素値が８ビットで表現されている時には、画素値として０から２５５までの値を取りうる。図３６では、注目フレームに対する画像データＤＶsの前後２フレームから、それぞれ５個の画素を切り出し、合計１０画素によってクラス画素群が構成されているものとする。この１０画素のクラス画素値の最大値と最小値の差がダイナミックレンジＤＲである。１ビットＡＤＲＣであるので、ダイナミックレンジＤＲが１／２とされた値が中値ＣＬＶとされ、この中値ＣＬＶに対するクラス画素値の大小関係が調べられる。クラス画素値が中値ＣＬＶより小であれば、"0" と符号化され、クラス画素値が中値ＣＬＶ以上であれば、"1"と符号化される。図３６の例では、１ビットＡＤＲＣの結果の符号化値のビット列が（００００１００００１）となる。このビット列を整数としてみた値（＝３３）がクラス値とされる。
【０１９７】
クラス数を削減するために、符号化結果のビット列をビット毎に反転させた値をクラス値としても良い。この場合は、クラス数は半分となる。また、タップ配置が左右／上下に対称な場合、画素値を並び替えて同様の計算を行なって、クラス数をそれぞれ半分としても良い。
【０１９８】
位置モード値決定部９１５は、タップ中心位置ＴＣ，動きベクトルＭＶＤおよび時間モード値ＴＭに基づいて位置モード値ＨＭを決定して、予測係数メモリ９２に供給する。タップ中心位置ＴＣは、上述のように注目フレーム上の注目画素と交差する動きベクトルと注目画素の位置に基づいて設定されるものであり、各画素の中心を示す位置を整数格子点位置とするとき、タップ中心位置ＴＣは整数格子点位置に対して小数以下（画素間距離以下）のずれを有する場合が生ずる。従って、位置モード値決定部９１５は、この小数以下のずれに基づいたクラス分けを行って位置モード値ＨＭを決定する。ここで、例えばフレーム周波数を５倍とし、注目画素と交差する動きベクトルは１つであるとした場合、整数格子点位置に対して小数以下のずれは、０，０．２，０．４，０．６，０．８の５通りのパターンとなる。この小数以下のずれ量を水平方向および垂直方向毎に考えると、５×５＝２５通りの組み合わせが考えられることから、小数以下のずれがいずれの組み合わせに該当するかによって２５通りの位置モード値ＨＭを決定する。
【０１９９】
予測係数メモリ９２は、供給された時間モード値ＴＭ、位置モード値ＨＭ、クラス値ＣＭの組み合わせに対応する予測係数ＫＦを読み出して予測演算部９３の演算処理部９３２に供給する。
【０２００】
予測演算部９３の予測画素群切り出し部９３１は、タップ中心位置決定部９１２で決定されたタップ中心位置ＴＣを基準として、予測演算に使用する予測タップＴＦを変換前の画像データＤＶsから切り出して、演算処理部９３２に供給する。演算処理部９３２は、予測係数メモリ９２から供給された予測係数ＫＦと予測タップＴＦとを用いて、線形一次演算を行うことにより、変換後の画像データＤＶtを生成する。
【０２０１】
このように動きボケ軽減画像生成処理後の画像データＤＶmを用いて動きベクトルの検出を行い、検出した動きベクトルを用いて時間解像度創造を行うことにより、フレームレート変換後の画像における動きを精度良く表示できる。さらに、画像データ選択部８５では、画像データＤＶsとして画像データＤＶmを選択すれば、動きボケが軽減された画像を用いて、新たなフレームの画像を生成できる。例えば、画像データＤＶoutが２４フレーム/秒であるとき、時間解像度創造を行い、６０フレーム/秒で動きボケの軽減された画像の画像データＤＶtを生成できる。また、画像データＤＶsとして画像データＤＶaを選択すれば、画像データＤＶtは、画像センサ１０で得られた画像のフレームレートを変換した画像となる。
【０２０２】
図３７は、時間解像度創造処理をソフトウェアで実現する場合のフローチャートである。ステップＳＴ６１でＣＰＵ６１は、周波数情報ＨＦに基づき時間モード値ＴＭを決定する。ステップＳＴ６２でＣＰＵ６１は、タップ中心位置決定処理を行う。
【０２０３】
図３８は、タップ中心位置決定処理を示すフローチャートである。ステップＳＴ６２１でＣＰＵ６１は、注目フレーム上の注目画素位置を決定する。ステップＳＴ６２２でＣＰＵ６１は、注目画素に対応する位置の算出を行う。すなわち、時間モード値ＴＭで示される注目フレーム上に設定された注目画素の動きベクトルに基づき、注目フレームに対する画像データＤＶsの前後２フレーム上の注目画素に対応する位置を小数精度で算出する。ステップＳＴ６２３は、算出した注目画素に対応する位置に最も近接した画素位置をタップ中心位置ＴＣとして決定する。
【０２０４】
タップ中心位置決定処理が終了してステップＳＴ６３に進むと、ステップＳＴ６３でＣＰＵ６１は、位置モード値ＨＭを決定する。この位置モード値ＨＭの決定では、上述のステップＳＴ６２２で注目画素に対応する位置の算出を小数精度で算出して、この位置と最も近接した画素位置との差分を位置モード値ＨＭに変換する。
【０２０５】
ステップＳＴ６４でＣＰＵ６１は、ステップＳＴ６２で決定したタップ中心位置ＴＣに基づいてクラス画素群の切り出しを行い、ステップＳＴ６５でＣＰＵ６１は、切り出したクラス画素群に基づいてクラス値ＣＭを決定する。
【０２０６】
ステップＳＴ６６でＣＰＵ６１は、ステップＳＴ６２で決定したタップ中心位置ＴＣに基づき予測画素群の切り出しを行う。ステップＳＴ６７でＣＰＵ６１は、クラス値ＣＭと位置モード値ＨＭと時間モード値ＴＭに基づいた予測係数を読み出す。ステップＳＴ６８でＣＰＵ６１は、予測画素群の複数の画素と予測係数の線型１次結合（予測演算）によって、注目フレームの注目画素のデータを生成する。ステップＳＴ６９でＣＰＵ６１は、生成した注目画素のデータを画像データＤＶtとして出力する。
【０２０７】
ステップＳＴ７０でＣＰＵ６１は、注目フレーム内全画素を処理したか否かが決定される。ここで、処理が終了していないならば、ステップＳＴ６２に戻り、フレーム内全画素を処理したと判断されると処理を終了する。
【０２０８】
予測係数メモリ９２に記憶されている予測係数は、図３９に示す学習装置を用いて作成できる。なお、図３９において、図３３と対応する部分については同一符号を付している。
【０２０９】
まず、教師画像（注目フレームの画像に相当）の画像データＧＴを用いてフレームレート変換を行い生徒画像（画像データＤＶsの画像に相当）の画像データＧＳを生成し、生徒画像の画像データＧＳをクラス分類部９４と係数算出部９５に供給する。
【０２１０】
クラス分類部９４の動きベクトル検出部９４１は、所定数のフレーム間での動きベクトルを検出して、タップ中心位置決定部９１２と位置モード値決定部９１５に供給する。タップ中心位置決定部９１２は、上述のようにタップ中心位置を決定して、クラス画素群取り出し部９１３と生徒画素群取り出し部９５１に供給する。
【０２１１】
生徒画素取り出し部９５１は、タップ中心位置に基づいて、複数の生徒画素からなる生徒画素群を画像データＧＳから切り出す。切り出された生徒画素群は、予測係数学習部９５２に供給される。
【０２１２】
クラス画素取り出し部９１３は、タップ中心位置に基づいて、複数の生徒画素からなるクラス画素群を取り出す。取り出されたクラス画素群はクラス値決定部９１４に供給される。クラス値決定部９１４は、上述のようにクラス画素群からクラス値を決定する。この決定されたクラス値は、予測係数学習部９５２に供給される。
【０２１３】
位置モード値決定部９１５は、上述のようにタップ中心位置、動きベクトルおよび時間モード値に基づいて位置モード値を決定して予測係数学習部９５２に供給する。さらに、時間モード値に基づいて教師画素切り出し部９４２が教師画素を切り出す。切り出された教師画素は予測係数学習部９５２に供給される。
【０２１４】
予測係数学習部９５２は、供給された時間モード値、位置モード値、クラス値、生徒学習群、教師画素を使用して、生徒画素群から教師画素を予測するための予測係数を学習する。予測係数の学習では、複数の予測係数と生徒画素との線型１次演算によって予測値を推定した時に、予測値と教師画像中の真値との誤差の二乗和を最小とするように、予測係数を定める。実際的な計算方法としては、誤差の二乗和に関する式を偏微分し、偏微分値が０となるように予測係数が定められる。その場合に、上述のように正規方程式がたてられ、正規方程式が掃き出し法等の一般的な行列解法にしたがって解かれ、予測係数が算出される。この算出された予測係数を予測係数メモリ９２に格納する。
【０２１５】
図４０は、予測係数の学習処理をソフトウェアで行う場合のフローチャートを示している。ステップＳＴ８１でＣＰＵ６１は、教師画像の画像データを用いてフレームレート変換を行い生徒画像の画像データを生成する。ステップＳＴ８２でＣＰＵ６１は、周波数情報に基づいて時間モード値を決定する。
【０２１６】
ステップＳＴ８３でＣＰＵ６１は、教師画像の動きベクトルを検出し、ステップＳＴ８４でＣＰＵ６１は、時間モード値と動きベクトルに基づいてタップ中心位置を決定する。
ステップＳＴ８５でＣＰＵ６１は、動きベクトルやタップ中心位置および時間モード値から位置モード値を決定する。
【０２１７】
ステップＳＴ８６でＣＰＵ６１は、タップ中心位置の情報に基づいて生徒画像からクラス画素群を切り出す。ステップＳＴ８７でＣＰＵ６１は、クラス画素群に基づいてクラス値を決定する。ステップＳＴ８８でＣＰＵ６１は、タップ中心位置の情報に基づいて生徒画像から生徒画素群を切り出す。ステップＳＴ８９でＣＰＵ６１は、教師画像から教師画素を切り出す。
【０２１８】
ステップＳＴ９０からステップＳＴ９５までの処理は、最小二乗法に基づく予測係数学習処理である。すなわち、複数の予測係数と生徒画素との線型１次結合によって予測値を推定した時に、予測値と教師画像中の真値との誤差の二乗和を最小とするように、予測係数を定める。実際的な計算方法としては、誤差の二乗和に関する式を偏微分し、偏微分値が０となるように予測係数が定められる。その場合に正規方程式がたてられ、正規方程式が掃き出し法等の一般的な行列解法にしたがって解かれ、予測係数が算出される。
【０２１９】
ステップＳＴ９０でＣＰＵ６１は、各クラス毎の正規方程式にデータを足し込む処理を行う。ステップＳＴ９１でＣＰＵ６１は、フレーム内全画素を処理したか否かを判別する。ここで処理が終了していないならば、ステップＳＴ８４（タップ中心位置決定）に戻る。フレーム内全画素を処理したと判断されると、ステップＳＴ９２に進む。ステップＳＴ９２でＣＰＵ６１は、画像内の全フレームの処理を終了したか否かを判別する。ここで、処理が終了していないと判別したときはステップＳＴ８２に戻り、処理が終了していると判別したときはステップＳＴ９３に進む。ステップＳＴ９３でＣＰＵ６１は、入力全画像を処理したか否かを判別する。ここで、処理が終了していないと判別したときはステップＳＴ８１に戻る。また、全画像の処理が完了したと判別したときはステップＳＴ９４に進む。ステップＳＴ９４でＣＰＵ６１は、掃き出し法によって正規方程式を解き、求められた予測係数をステップＳＴ９５で出力して予測係数メモリ９２に格納させる。
【０２２０】
図４１は、上述した時間解像度創造処理を合わせて行う場合の動作を示すフローチャートである。
ステップＳＴ１０１でＣＰＵ６１は、動きベクトル軽減処理の処理結果が動きベクトルの検出可能分だけ記憶されたか否かを判別する。ここで、動きベクトルの検出可能分だけ処理結果が記憶されていないときにはステップＳＴ１０１に戻り、動きベクトルの検出可能分だけ処理結果が記憶されたときにはステップＳＴ１０２に進む。
【０２２１】
ステップＳＴ１０２でＣＰＵ６１は、記憶されている処理結果を用いて動きベクトルを検出してステップＳＴ１０３に進む。
ステップＳＴ１０３でＣＰＵ６１は、検出した動きベクトルを用いて新たに生成するフレーム上の各画素に対して動きベクトルの割り付けを行いステップＳＴ１０４に進む。
【０２２２】
ステップＳＴ１０４でＣＰＵ６１は、動きベクトル軽減処理を行う際に取得した露光期間パラメータに応じて動きベクトルを補正してステップＳＴ１０５に進む。
ステップＳＴ１０５でＣＰＵ６１は、時間解像度創造処理を行い、記憶されている処理結果とステップＳＴ１０４で求めた動きベクトルに基づき時間解像度創造後のフレームレートである画像データＤＶtを生成してステップＳＴ１０６に進む。
【０２２３】
ステップＳＴ１０６で、画像データＤＶaが終了していないとき、あるいは動作の終了操作が行われていないときはステップＳＴ１０２に戻り、画像データＤＶaの終了あるいは動作の終了操作が行われたときは、動作の終了と判別して処理を終了する。
【０２２４】
このように、動きボケ軽減画像を用いることで、動きベクトルを精度良く検出することができ、検出された動きベクトルを用いて動きボケの少ない時間解像度の高い画像を得ることができる。
【産業上の利用可能性】
【０２２５】
以上のように、本発明にかかる画像処理装置と画像処理方法およびプログラムは、動きベクトルの検出および検出した動きベクトルを用いた画像処理に有用であり、動きのあるオブジェクトの画像処理に適している。
【図面の簡単な説明】
【０２２６】
【図１】本発明を適用するシステムの構成を示すブロック図である。
【図２】画像センサによる撮像を示す図である。
【図３】撮像画像を説明するための図である。
【図４】画素値の時間方向分割動作を説明するための図である。
【図５】画像処理装置の構成を示すブロック図である。
【図６】動きベクトル検出部の構成を示すブロック図である。
【図７】動きボケ軽減画像生成部の構成を示すブロック図である。
【図８】領域特定部の構成を示すブロック図である。
【図９】画像メモリから読み出した画像データを示す図である。
【図１０】領域判定処理を示す図である。
【図１１】混合比算出部の構成を示すブロック図である。
【図１２】理想的な混合比を示す図である。
【図１３】前景背景分離部の構成を示すブロック図である。
【図１４】動きボケ調整部の構成を示すブロック図である。
【図１５】処理単位を示す図である。
【図１６】動きボケが軽減された画素値の位置を示す図である。
【図１７】画像処理装置の他の構成を示す図である。
【図１８】画像処理装置の動作を示すフローチャートである。
【図１９】動きボケ軽減画像生成処理を示すフローチャートである。
【図２０】動きボケ軽減画像生成部の他の構成を示すブロック図である。
【図２１】処理領域を示す図である。
【図２２】処理領域の設定例を示す図である。
【図２３】処理領域における実世界変数の時間混合を説明するための図である。
【図２４】オブジェクトが移動する場合を示した図である。
【図２５】オブジェクトの追従を行った拡大表示画像を示す図である。
【図２６】画像処理装置の他の構成を示すブロック図である。
【図２７】空間解像度創造部の構成を示すブロック図である。
【図２８】学習装置の構成を示すブロック図である。
【図２９】空間解像度創造処理を合わせて行う場合の動作（１／２）を示すフローチャートである。
【図３０】空間解像度創造処理を合わせて行う場合の動作（２／２）を示すフローチャートである。
【図３１】画像処理装置の他の構成を示すブロック図である。
【図３２】動きベクトルの割り付け処理を説明するための図である。
【図３３】時間解像度創造部の構成を示す図である。
【図３４】時間モード値決定部の動作を説明するための図である。
【図３５】クラス画素群を示す図である。
【図３６】クラス値決定処理を説明するための図である。
【図３７】時間解像度創造処理を示すフローチャートである。
【図３８】タップ中心位置決定処理を示すフローチャートである。
【図３９】学習装置の構成を示すブロック図である。
【図４０】予測係数の学習処理を示すフローチャートである。
【図４１】時間解像度創造処理を合わせて行う場合の動作を示すフローチャートである。
【符号の説明】
【０２２７】
１０・・・画像センサ、２０・・・画像処理装置、３０，９４１・・・動きベクトル検出部、３１・・・処理領域設定部、３２・・・画像データ選択部、３３・・・検出部、３４・・・動きベクトル補正部、４０，４０ａ・・・動きボケ軽減画像生成部、４１・・・領域特定部、４２・・・混合比算出部、４３・・・前景背景分離部、４４・・・動きボケ調整部、４５，４５ａ・・・出力部、４８・・・処理領域設定部、４９・・・演算部、５５・・・メモリ、６１・・・ＣＰＵ（Central Processing Unit）、６２・・・ＲＯＭ（Read Only Memory）、６３・・・記憶部、６４・・・ＲＡＭ（Random Access Memory）、６５・・・バス、６６・・・入力インタフェース部、６７・・・出力インタフェース部、６８・・・通信部、６９・・・ドライブ、７０・・・空間解像度創造部、７１，９１，９４・・・クラス分類部、７２，９２・・・予測係数メモリ、７３，９３・・・予測演算部、７４・・・拡大画像出力部、７５・・・学習装置、７６，９５・・・係数算出部、８０・・・動きベクトル割り付け部、８５・・・画像データ選択部、９０・・・時間解像度創造部、４１１・・・画像メモリ、４１２・・・静動判定部、４１３・・・領域判定、４２１，４２２・・・推定混合比処理部、４２３・・・混合比決定部、４３１・・・分離部、４３２，４３３・・・スイッチ部、４３４，４３５・・・合成部、４４１・・・処理単位決定部、４４２・・・モデル化部、４４３・・・方程式生成部、４４４・・・足し込み部、４４５・・・演算部、７１１，９１３・・・クラス画素群切り出し部、７１２，９１４・・・クラス値決定部、７３１，９３１・・・予測画素群切り出し部、７３２，９３２・・・演算処理部、７６１，９５１・・・生徒画素群切り出し部、７６２，９５２・・・予測係数学習部、９１１・・・時間モード値決定部、９１２・・・タップ中心位置決定部、９１５・・・位置モード値決定部、９４２・・・教師画像切り出し部
【図１】
2005260929.tif 000018
【図２】
2005260929.tif 000019
【図３】
2005260929.tif 000020
【図４】
2005260929.tif 000021
【図５】
2005260929.tif 000022
【図６】
2005260929.tif 000023
【図７】
2005260929.tif 000024
【図８】
2005260929.tif 000025
【図９】
2005260929.tif 000026
【図１０】
2005260929.tif 000027
【図１１】
2005260929.tif 000028
【図１２】
2005260929.tif 000029
【図１３】
2005260929.tif 000030
【図１４】
2005260929.tif 000031
【図１５】
2005260929.tif 000032
【図１６】
2005260929.tif 000033
【図１７】
2005260929.tif 000034
【図１８】
2005260929.tif 000035
【図１９】
2005260929.tif 000036
【図２０】
2005260929.tif 000037
【図２１】
2005260929.tif 000038
【図２２】
2005260929.tif 000039
【図２３】
2005260929.tif 000040
【図２４】
2005260929.tif 000041
【図２５】
2005260929.tif 000042
【図２６】
2005260929.tif 000043
【図２７】
2005260929.tif 000044
【図２８】
2005260929.tif 000045
【図２９】
2005260929.tif 000046
【図３０】
2005260929.tif 000047
【図３１】
2005260929.tif 000048
【図３２】
2005260929.tif 000049
【図３３】
2005260929.tif 000050
【図３４】
2005260929.tif 000051
【図３５】
2005260929.tif 000052
【図３６】
2005260929.tif 000053
【図３７】
2005260929.tif 000054
【図３８】
2005260929.tif 000055
【図３９】
2005260929.tif 000056
【図４０】
2005260929.tif 000057
【図４１】
2005260929.tif 000058