首页 / 专利库 / 视听技术与设备 / 运动估计 / 画像処理装置、画像処理方法およびプログラム

画像処理装置、画像処理方法およびプログラム

阅读:4发布:2020-07-19

专利汇可以提供画像処理装置、画像処理方法およびプログラム专利检索,专利查询,专利分析的服务。并且【課題】動き推定に好適な画像が得られない場合でも、フレーム間の 位置 合わせに基づく画像処理の機能低下を抑制する。 【解決手段】動きベクトル算出部は第1の画像の一部の領域であるブロックと、前記ブロックと第2の画像の一部の領域との類似度に基づいて前記ブロックの動きベクトルを定め、動きベクトル信頼度算出部は前記類似度の分布に基づいて前記動きベクトルの信頼度を算出し、動きベクトル補正部は前記信頼度が所定の信頼度よりも低い低信頼度ブロックとは異なるブロックであって、前記所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいて前記低信頼度ブロックの動きベクトルを補正し、画像処理部は前記動きベクトル補正部が補正した動きベクトルに基づいて前記第1の画像の第1画素に対応する前記第2の画像の第2画素を定め、前記第1画素の 信号 値と前記第2画素の信号値を用いた画像処理を行う。 【選択図】図2,下面是画像処理装置、画像処理方法およびプログラム专利的具体信息内容。

第1の画像の一部の領域であるブロックと、前記ブロックと第2の画像の一部の領域との類似度に基づいて前記ブロックの動きベクトルを定める動きベクトル算出部と、 前記類似度の分布に基づいて前記動きベクトルの信頼度を算出する動きベクトル信頼度算出部と、 前記信頼度が所定の信頼度よりも低いブロックである低信頼度ブロックとは異なるブロックであって、前記所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいて前記低信頼度ブロックの動きベクトルを補正する動きベクトル補正部と、 前記動きベクトル補正部が補正した動きベクトルに基づいて前記第1の画像の画素である第1画素に対応する前記第2の画像の画素である第2画素を定め、前記第1画素の信号値と前記第2画素の信号値を用いた画像処理を行う画像処理部と、 を備える画像処理装置。前記高信頼度ブロックは、前記低信頼度ブロックから所定範囲内に配置されているブロックである請求項1に記載の画像処理装置。前記動きベクトル補正部は、前記低信頼度ブロックの動きベクトルの補正において、前記低信頼度ブロックからの距離が小さいブロックの動きベクトルほど優先して用いる請求項2に記載の画像処理装置。前記高信頼度ブロックの動きベクトルに基づいて前記第1の画像全体の動きベクトルであるフレーム動きベクトルと、前記高信頼度ブロックの動きベクトルの分布に基づいて前記フレーム動きベクトルの信頼性とを算出するフレーム動きベクトル算出部、をさらに備え、 前記動きベクトル補正部は、前記フレーム動きベクトルを用いて前記低信頼度ブロックの動きベクトルを補正するか否かを前記フレーム動きベクトルの信頼性に基づいて判定する請求項1に記載の画像処理装置。第1の画像の一部の領域であるブロックと、前記ブロックと第2の画像の一部の領域との類似度に基づいて前記ブロックの動きベクトルを定める動きベクトル算出部と、 前記類似度の分布に基づいて前記動きベクトルの信頼度を算出する動きベクトル信頼度算出部と、 前記信頼度が所定の信頼度よりも低いブロックである低信頼度ブロックとは異なるブロックであって、前記所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいて前記第1の画像全体の動きベクトルであるフレーム動きベクトルと、前記高信頼度ブロックの動きベクトルの分布に基づいて前記フレーム動きベクトルの信頼性とを算出するフレーム動きベクトル算出部と、 前記フレーム動きベクトルを用いて前記第1の画像全体のブロックの動きベクトルを補正するか否かを前記フレーム動きベクトルの信頼性に基づいて判定する動きベクトル補正部と、 前記動きベクトル補正部が補正した動きベクトルに基づいて前記第1の画像の画素である第1画素に対応する前記第2の画像の画素である第2画素を定め、前記第1画素の信号値と前記第2画素の信号値を用いた画像処理を行う画像処理部と、 を備える画像処理装置。撮像された画像を形成する各画素の座標と歪補正後の座標との関係を示す歪補正データに基づいて、前記第1の画像を示す画素毎の座標を補正する歪補正座標算出部、をさらに備える請求項1から請求項5のいずれか一項に記載の画像処理装置。画像処理装置の画像処理方法であって、 第1の画像の一部の領域であるブロックと、前記ブロックと第2の画像の一部の領域との類似度に基づいて前記ブロックの動きベクトルを定める動きベクトル算出過程と、 前記類似度の分布に基づいて前記動きベクトルの信頼度を算出する動きベクトル信頼度算出過程と、 前記信頼度が所定の信頼度よりも低いブロックである低信頼度ブロックとは異なるブロックであって、前記所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいて前記低信頼度ブロックの動きベクトルを補正する動きベクトル補正過程と、 前記動きベクトル補正過程で補正した動きベクトルに基づいて前記第1の画像の画素である第1画素に対応する前記第2の画像の画素である第2画素を定め、前記第1画素の信号値と前記第2画素の信号値を用いた画像処理を行う画像処理過程と、 を有する画像処理方法。画像処理装置の画像処理方法であって、 第1の画像の一部の領域であるブロックと、前記ブロックと第2の画像の一部の領域との類似度に基づいて前記ブロックの動きベクトルを定める動きベクトル算出過程と、 前記類似度の分布に基づいて前記動きベクトルの信頼度を算出する動きベクトル信頼度算出過程と、 前記信頼度が所定の信頼度よりも低いブロックである低信頼度ブロックとは異なるブロックであって、前記所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいて前記第1の画像全体の動きベクトルであるフレーム動きベクトルと、前記高信頼度ブロックの動きベクトルの分布に基づいて前記フレーム動きベクトルの信頼性とを算出するフレーム動きベクトル算出過程と、 前記フレーム動きベクトルを用いて前記第1の画像全体のブロックの動きベクトルを補正するか否かを前記フレーム動きベクトルの信頼性に基づいて判定する動きベクトル補正過程と、 前記動きベクトル補正過程で補正した動きベクトルに基づいて前記第1の画像の画素である第1画素に対応する前記第2の画像の画素である第2画素を定め、前記第1画素の信号値と前記第2画素の信号値を用いた画像処理を行う画像処理過程と、 を有する画像処理方法。画像処理装置のコンピュータに、 第1の画像の一部の領域であるブロックと、前記ブロックと第2の画像の一部の領域との類似度に基づいて前記ブロックの動きベクトルを定める動きベクトル算出手順、 前記類似度の分布に基づいて前記動きベクトルの信頼度を算出する動きベクトル信頼度算出手順、 前記信頼度が所定の信頼度よりも低いブロックである低信頼度ブロックとは異なるブロックであって、前記所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいて前記低信頼度ブロックの動きベクトルを補正する動きベクトル補正手順、 前記動きベクトル補正手順で補正した動きベクトルに基づいて前記第1の画像の画素である第1画素に対応する前記第2の画像の画素である第2画素を定め、前記第1画素の信号値と前記第2画素の信号値を用いた画像処理を行う画像処理手順、 を実行させるためのプログラム。画像処理装置のコンピュータに、 第1の画像の一部の領域であるブロックと、前記ブロックと第2の画像の一部の領域との類似度に基づいて前記ブロックの動きベクトルを定める動きベクトル算出手順、 前記類似度の分布に基づいて前記動きベクトルの信頼度を算出する動きベクトル信頼度算出手順、 前記信頼度が所定の信頼度よりも低いブロックである低信頼度ブロックとは異なるブロックであって、前記所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいて前記第1の画像全体の動きベクトルであるフレーム動きベクトルと、前記高信頼度ブロックの動きベクトルの分布に基づいて前記フレーム動きベクトルの信頼性とを算出するフレーム動きベクトル算出手順、 前記フレーム動きベクトルを用いて前記第1の画像全体のブロックの動きベクトルを補正するか否かを前記フレーム動きベクトルの信頼性に基づいて判定する動きベクトル補正手順、 前記動きベクトル補正手順で補正した動きベクトルに基づいて前記第1の画像の画素である第1画素に対応する前記第2の画像の画素である第2画素を定め、前記第1画素の信号値と前記第2画素の信号値を用いた画像処理を行う画像処理手順、 を実行させるためのプログラム。

说明书全文

本発明は、画像処理装置、画像処理方法およびプログラムに関する。

デジタルカメラなどの撮像装置は、一般にノイズ低減(NR:Noise Reduction)などの種々の機能を備える。撮像装置の高機能化に伴い、その機能を提供するための画像処理が複雑化している。例えば、図18に示す撮像装置90において、動き算出部93は、撮像部91が取得した時間的に隣接する2フレームの輝度画像(Y画像)に基づいてY画像を所定のサイズに分割した領域毎に、動きベクトルを算出する。画像処理部97は、撮像部91が取得した三板化画像について動き算出部93が算出した動きベクトルを用いて位置合わせの高画質化処理(以下、高画質化処理、と呼ぶ)を行う。かかる処理には、例えば、フレーム間NR処理がある。

動き算出部93は、時間的に隣接する2フレームのY画像間でマッチング処理を行って相互に対応する領域を探索し、対応する領域間の位置の差分を動きベクトルとして算出する。処理対象の画像間の差異によって、常に正しい動きベクトルを算出できるとは限らない。また、動きベクトルの算出は、一般に複雑な演算を要する。そのため、フレーム内の全ての画素のそれぞれについて動きベクトルを算出することは、処理時間の増加、もしくは回路規模の増加を要する。

そこで、特許文献1に記載の画像処理装置は、画像間の動き量を推定し、一方の画像を他方の画像の位置に合わせる動き補償処理を実行して動き補償画像を生成し、動き補償画像と位置合わせされた画像との合成処理によりノイズ低減等の施された画像を生成する。動き補償画像生成部は、予め規定した画像選択基準に従って選択された選択画像を利用した動き補償画像を生成する。例えば、入画像が動き推定に好適な適格画像であるか否かを判定する動き推定好適度判定部を有し、入力画像が適格画像である場合に限り、該入力画像を動き推定に適用する参照画像としてフレームメモリに格納する。

特開2014−39169号公報

動画像に対する処理ではフレーム毎の動き推定を要するが、動き推定に好適な画像が常に得られるとは限らない。好適な画像と判定されなかったフレームについて、動き算出部93は、動き推定を正しく行うことができない。そのため、画像処理部97は、この動き推定の結果として得られる動きベクトルを用いて高画質化処理を正しく行うことができず、機能低下の原因となりうる。高画質化処理において、画像処理部97は、さらに過去にさかのぼった時点のフレームの動きベクトルを採用することも考えられる。しかし、過去の動きベクトルは、必ずしも現時点における動きベクトルに近似するとは限らず、動きベクトルの差異は機能低下の原因となる。

本発明は、上記の課題に基づいてなされたものであり、動き推定に好適な画像が得られない場合でも、フレーム間の位置合わせに基づく画像処理の機能低下を抑制することができる画像処理装置、画像処理方法およびプログラムを提供することを目的とする。

本発明は上記の課題を解決するためになされたものであって、本発明の一態様は、第1の画像の一部の領域であるブロックと、前記ブロックと第2の画像の一部の領域との類似度に基づいて前記ブロックの動きベクトルを定める動きベクトル算出部と、前記類似度の分布に基づいて前記動きベクトルの信頼度を算出する動きベクトル信頼度算出部と、前記信頼度が所定の信頼度よりも低いブロックである低信頼度ブロックとは異なるブロックであって、前記所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいて前記低信頼度ブロックの動きベクトルを補正する動きベクトル補正部と、前記動きベクトル補正部が補正した動きベクトルに基づいて前記第1の画像の画素である第1画素に対応する前記第2の画像の画素である第2画素を定め、前記第1画素の信号値と前記第2画素の信号値を用いた画像処理を行う画像処理部と、を備える画像処理装置である。

本発明の他の態様は、上述の画像処理装置であって、前記高信頼度ブロックは、前記低信頼度ブロックから所定範囲内に配置されているブロックである。

本発明の他の態様は、上述の画像処理装置であって、前記動きベクトル補正部は、前記低信頼度ブロックの動きベクトルの補正において、前記低信頼度ブロックからの距離が小さいブロックの動きベクトルほど優先して用いる。

本発明の他の態様は、上述の画像処理装置であって、前記高信頼度ブロックの動きベクトルに基づいて前記第1の画像全体の動きベクトルであるフレーム動きベクトルと、前記高信頼度ブロックの動きベクトルの分布に基づいて前記フレーム動きベクトルの信頼性とを算出するフレーム動きベクトル算出部、をさらに備え、前記動きベクトル補正部は、前記フレーム動きベクトルを用いて前記低信頼度ブロックの動きベクトルを補正するか否かを前記フレーム動きベクトルの信頼性に基づいて判定する。

本発明の他の態様は、第1の画像の一部の領域であるブロックと、前記ブロックと第2の画像の一部の領域との類似度に基づいて前記ブロックの動きベクトルを定める動きベクトル算出部と、前記類似度の分布に基づいて前記動きベクトルの信頼度を算出する動きベクトル信頼度算出部と、前記信頼度が所定の信頼度よりも低いブロックである低信頼度ブロックとは異なるブロックであって、前記所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいて前記第1の画像全体の動きベクトルであるフレーム動きベクトルと、前記高信頼度ブロックの動きベクトルの分布に基づいて前記フレーム動きベクトルの信頼性とを算出するフレーム動きベクトル算出部と、前記フレーム動きベクトルを用いて前記第1の画像全体のブロックの動きベクトルを補正するか否かを前記フレーム動きベクトルの信頼性に基づいて判定する動きベクトル補正部と、前記動きベクトル補正部が補正した動きベクトルに基づいて前記第1の画像の画素である第1画素に対応する前記第2の画像の画素である第2画素を定め、前記第1画素の信号値と前記第2画素の信号値を用いた画像処理を行う画像処理部と、を備える画像処理装置である。

本発明の他の態様は、上述した画像処理装置であって、撮像された画像を形成する各画素の座標と歪補正後の座標との関係を示す歪補正データに基づいて、前記第1の画像を示す画素毎の座標を補正する歪補正座標算出部、をさらに備える。

本発明の他の態様は、画像処理装置の画像処理方法であって、第1の画像の一部の領域であるブロックと、前記ブロックと第2の画像の一部の領域との類似度に基づいて前記ブロックの動きベクトルを定める動きベクトル算出過程と、前記類似度の分布に基づいて前記動きベクトルの信頼度を算出する動きベクトル信頼度算出過程と、前記信頼度が所定の信頼度よりも低いブロックである低信頼度ブロックとは異なるブロックであって、前記所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいて前記低信頼度ブロックの動きベクトルを補正する動きベクトル補正過程と、前記動きベクトル補正過程で補正した動きベクトルに基づいて前記第1の画像の画素である第1画素に対応する前記第2の画像の画素である第2画素を定め、前記第1画素の信号値と前記第2画素の信号値を用いた画像処理を行う画像処理過程と、を有する画像処理方法である。

本発明の他の態様は、画像処理装置の画像処理方法であって、画像処理装置の画像処理方法であって、第1の画像の一部の領域であるブロックと、前記ブロックと第2の画像の一部の領域との類似度に基づいて前記ブロックの動きベクトルを定める動きベクトル算出過程と、前記類似度の分布に基づいて前記動きベクトルの信頼度を算出する動きベクトル信頼度算出過程と、前記信頼度が所定の信頼度よりも低いブロックである低信頼度ブロックとは異なるブロックであって、前記所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいて前記第1の画像全体の動きベクトルであるフレーム動きベクトルと、前記高信頼度ブロックの動きベクトルの分布に基づいて前記フレーム動きベクトルの信頼性とを算出するフレーム動きベクトル算出過程と、前記フレーム動きベクトルを用いて前記第1の画像全体のブロックの動きベクトルを補正するか否かを前記フレーム動きベクトルの信頼性に基づいて判定する動きベクトル補正過程と、前記動きベクトル補正過程で補正した動きベクトルに基づいて前記第1の画像の画素である第1画素に対応する前記第2の画像の画素である第2画素を定め、前記第1画素の信号値と前記第2画素の信号値を用いた画像処理を行う画像処理過程と、を有する画像処理方法である。

本発明の他の態様は、画像処理装置のコンピュータに、第1の画像の一部の領域であるブロックと、前記ブロックと第2の画像の一部の領域との類似度に基づいて前記ブロックの動きベクトルを定める動きベクトル算出手順、前記類似度の分布に基づいて前記動きベクトルの信頼度を算出する動きベクトル信頼度算出手順、前記信頼度が所定の信頼度よりも低いブロックである低信頼度ブロックとは異なるブロックであって、前記所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいて前記低信頼度ブロックの動きベクトルを補正する動きベクトル補正手順、前記動きベクトル補正手順で補正した動きベクトルに基づいて前記第1の画像の画素である第1画素に対応する前記第2の画像の画素である第2画素を定め、前記第1画素の信号値と前記第2画素の信号値を用いた画像処理を行う画像処理手順、を実行させるためのプログラムである。

本発明の他の態様は、画像処理装置のコンピュータに、第1の画像の一部の領域であるブロックと、前記ブロックと第2の画像の一部の領域との類似度に基づいて前記ブロックの動きベクトルを定める動きベクトル算出手順、前記類似度の分布に基づいて前記動きベクトルの信頼度を算出する動きベクトル信頼度算出手順、前記信頼度が所定の信頼度よりも低いブロックである低信頼度ブロックとは異なるブロックであって、前記所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいて前記第1の画像全体の動きベクトルであるフレーム動きベクトルと、前記高信頼度ブロックの動きベクトルの分布に基づいて前記フレーム動きベクトルの信頼性とを算出するフレーム動きベクトル算出手順、前記フレーム動きベクトルを用いて前記第1の画像全体のブロックの動きベクトルを補正するか否かを前記フレーム動きベクトルの信頼性に基づいて判定する動きベクトル補正手順、前記動きベクトル補正手順で補正した動きベクトルに基づいて前記第1の画像の画素である第1画素に対応する前記第2の画像の画素である第2画素を定め、前記第1画素の信号値と前記第2画素の信号値を用いた画像処理を行う画像処理手順、を実行させるためのプログラムである。

本発明によれば、動き推定に好適な画像が得られない場合でも、フレーム間の位置合わせに基づく画像処理の機能低下を抑制することができる。

第1の実施形態に係る撮像装置の構成を示す概略ブロック図である。

第1の実施形態に係る画像処理ユニットの構成を示す概略ブロック図である。

第1の実施形態に係るブロックの設定例を示す図である。

動きベクトルの算出方法を説明するための図である。

ブロック毎に算出された信頼度の例を示す図である。

画素毎の動きベクトルの算出方法を説明するための図である。

位置合わせを説明するための図である。

第1の実施形態に係る画像処理を示すフローチャートの一部である。

第1の実施形態に係る画像処理を示すフローチャートの他の一部である。

第2の実施形態に係る動きベクトル補正部が行う処理を説明するための図である。

第2の実施形態に係る画像処理を示すフローチャートである。

第3の実施形態に係る動き算出部の構成を示す概略ブロック図である。

第3の実施形態に係る画像処理を示すフローチャートである。

第4の実施形態に係る動き算出部の構成を示す概略ブロック図である。

歪補正を説明するための図である。

第4の実施形態に係る画像処理を示すフローチャートである。

第5の実施形態に係る画像処理を示すフローチャートである。

従来の撮像装置の構成を示す概略ブロック図である。

<第1の実施形態> 以下、本発明の第1の実施形態について、図面を参照して説明する。 図1は、本実施形態に係る撮像装置10の構成を示す概略ブロック図である。 撮像装置10は、画像処理ユニット10Aと、撮像部11と、表示処理部18と、表示デバイス19とを含んで構成される。撮像部11は、撮像素子111と、撮像処理部112とを含んで構成される。撮像装置10は、動画像を撮像する機能を有する機器である。撮像装置10は、例えば、デジタルカメラである。撮像処理部112、制御部12、メモリ14、画像処理ユニット10Aの動き算出部13、画像処理部17及び表示処理部18は、バス(基線)を介して接続され、相互に各種のデータが入出力可能である。画像処理ユニット10Aの構成については、後述する。

撮像部11は、視野内の被写体の画像を撮像し、撮像した画像を輝度で表す輝度画像と色差画像を取得する。 撮像素子111は、レンズ(図示せず)によって撮像面に結像された被写体の光学像を撮像する。撮像素子111は、2次元の撮像面には複数の受光素子(画素)が配置され、さらにべイヤー配列(Bayer Arrangement)を有するカラーフィルタが貼付される。個々の受光素子は、光電変換により到来した光を電気信号である画素信号に変換し、変換した画素信号を撮像処理部112に出力する。撮像素子111は、例えば、CCD(Charge Coupled Device;電荷結合素子)イメージセンサ、CMOS(Complementary Metal−Oxide Semiconductor;相補型金属酸化膜半導体)イメージセンサ、などである。

撮像処理部112は、撮像素子111から入力された画素信号について各種の撮像処理を行って所定時間(例えば、1/30秒)毎に撮像された各フレームのべイヤー画像を示す撮像処理データを生成する。撮像処理には、アナログ・デジタル(A/D:Analog−to−Digital)変換、画素欠陥補正、オプティカルブラック・ホワイトバランス(OB/WB:Optical Black/White Balance)処理などが含まれる。撮像処理部112は、撮像処理データについて三板化処理を行って輝度画像を示す輝度画像データ(Y画像データ)と色差画像を示す色差画像データ(C画像データ)を生成する。色差画像データは、Cb(色差:青)画像を示すCb画像データとCr(色差:赤)画像を示すCr画像データを含む。撮像処理部112は、フレーム毎に生成したY画像データとC画像データをメモリ14に記憶する。なお、以下の説明では、三板化処理により得られたY画像データとC画像データを三板化画像データと総称する。

制御部12は、撮像装置10が各構成部の動作を制御する。制御部12は、例えば、各構成部の動作モードの設定、処理に用いるパラメータの設定、各構成部間が実行する処理のタイミング、それらの処理の順序の制御、などを行う。 メモリ14は、撮像装置10が備える各構成部が実行する処理に用いる各種のデータ、それらの処理により生成されたデータを記憶する記憶部である。メモリ14は、例えば、DRAM(Dynamic Random Access Memory)などの記憶媒体を含んで構成される。

表示処理部18は、画像処理ユニット10Aの画像処理部17によって得られたフレーム毎の画像処理データを読み出し、読み出した画像処理データについて各種の表示処理を行って表示用の画像(表示画像)を示す表示画像データを表示デバイス19に出力する。表示処理には、例えば、画像処理データが示す画像の大きさを、表示デバイス19が表示可能な大きさの画像に変更するリサイズ処理、OSD(On−Screen Display)表示用のOSDデータを重畳する重畳処理などの処理が含まれる。

表示デバイス19は、表示処理部18から入力された表示画像データに基づく表示画像を表示する。表示デバイス19は、例えば、LCD(Liquid Crystal Display:液晶ディスプレイ)、有機EL(Electro−liminescsnc)ディスプレイなどである。表示デバイス19は、EVF(Electronic View Finder:電子ビューファインダ)であってもよい。

(画像処理ユニットの構成) 次に、本実施形態に係る画像処理ユニット10Aの構成について説明する。 図2は、本実施形態に係る画像処理ユニット10Aの構成を示す概略ブロック図である。 画像処理ユニット10Aは、動き算出部13と、動きベクトル補正部15と、動きベクトル再算出部16と、画像処理部17とを含んで構成される。動き算出部13は、動きベクトル算出領域設定部131と、動きベクトル算出部132と、動きベクトル信頼度算出部133と、を含んで構成される。

動きベクトル算出領域設定部131は、メモリ14からその時点のフレーム(現フレーム)のY画像データが示すY画像の一部の領域であるブロック毎に、当該ブロック内の画素毎の信号値を示すブロックデータを読み出す。以下の説明では、現フレームをフレームAと呼ぶことがある。 動きベクトル算出領域設定部131は、メモリ14から現フレームから時間的に隣接した過去の時点のフレーム(前フレーム)のY画像データが示すY画像の一部の領域であるブロック毎に当該ブロック内の画素毎の信号値を示すブロックデータを読み出す。以下の説明では、前フレームをフレームBと呼ぶことがある。各ブロックは、後述するフレームA、B間の動きベクトルの算出対象の領域である。フレームA、Bには、互いに同じ数のブロックが設定され、各フレームに設定される複数のブロックの位置は互いに異なり、複数のブロックは互いに重ならない。動きベクトル算出領域設定部131は、フレームA、Bそれぞれのブロックデータを動きベクトル算出部132に出力する。フレームA、Bに設定されるブロックの設定例については、後述する。

動きベクトル算出部132には、動きベクトル算出領域設定部131からフレームA,Bそれぞれのブロックデータが入力される。動きベクトル算出部132は、フレームAのブロックデータが示すブロックのそれぞれと、当該ブロックに対応するブロックであって、フレームBのブロックデータが示すブロック(対応ブロック)とのブロックマッチングを行う。後述するように、フレームAのブロックサイズは、フレームBのブロックサイズよりも小さく、対応ブロックは動きベクトルの探索領域として用いられる。ブロックマッチングにおいて、動きベクトル算出部132は、フレームAの各ブロック(基準ブロック)について、対応ブロック内のそれぞれ位置の異なる領域であって、フレームAのブロックサイズと大きさが等しい領域(マッチングブロック)毎に類似度の指標値を算出する。類似度として、例えば、SAD(Sum of Absolute Differences:差分絶対値和)、SSD(Sum of Squared Differences:差分二乗和)などの指標値が利用可能である。SAD、SSDは、それぞれ小さいほど類似度が高いことを示す指標値である。

動きベクトル算出部132は、各基準ブロックについて、算出した類似度の指標値が最も類似度が高いことを示す指標値を与えるマッチングブロックを選択する。動きベクトル算出部132は、選択したマッチングブロックの所定の基準点(例えば、左上端の画素、重心点、等)の座標から当該基準ブロックの基準点の座標の差分を動きベクトルとして定める。動きベクトル算出部132は、各基準ブロックについて算出した動きベクトルと、マッチングブロックの位置毎の類似度の指標値を示す動きデータを動きベクトル信頼度算出部133に出力する。動きベクトルの算出例については、後述する。

動きベクトル信頼度算出部133は、動きベクトル算出部132から入力された動きデータが示す基準ブロック毎の類似度の指標値についてマッチングブロックの対応ブロック内の基準点間の分布に基づいて当該基準ブロックに係る動きベクトルの信頼度を示す指標値を算出する。動きベクトル信頼度算出部133は、信頼度を示す指標値として、例えば、各分布におけるSADの平均値と最小値との差分を算出する。この指標値は、動きベクトルの信頼度は、その分布が狭く特定の指標値に集中するほど高く、その分布が広く分散するほど低い。即ち、動きベクトルの信頼度は、マッチングブロックの位置の違いに応じて安定して類似度の指標値が得られる度合いを示す。信頼度を示す指標値として、その他、SADの標準偏差もしくは分散などが利用可能であり、SADに代えてSSDが用いられてもよい。また、動きベクトル信頼度算出部133は、信頼度を示す指標値について、予め定めた複数段階のうち当該指標値が属する段階(レベル)を判定する。動きベクトル信頼度算出部133は、基準ブロック毎に判定した段階を示す信頼度データと、動きベクトル算出部132から入力された動きデータをメモリ14に記憶する。信頼度の例については、後述する。

動きベクトル補正部15は、メモリ14から信頼度データと動きデータを読み出す。動きベクトル補正部15は、基準ブロック毎に信頼度データが示す信頼度が所定の信頼度の閾値よりも低いか否かを判定する。動きベクトル補正部15は、信頼度が低いと判定したブロック(低信頼度ブロック)について、当該低信頼度ブロックから所定範囲内に配置され、かつ、その閾値以上の信頼度を有するブロック(周辺ブロック)の動きベクトルに基づいて補正値を算出する。動きベクトル補正部15は、例えば、信頼度が所定の最高段階である周辺ブロックの動きベクトルの平均値を補正値として算出する。動きベクトル補正部15は、算出した補正値を当該低信頼度ブロックの動きベクトルとして定める。動きベクトル補正部15は、読み出した動きデータが示す当該低信頼度ブロックの動きベクトルを、定めた動きベクトルに更新し、更新した動きベクトルを示す動きデータをメモリ14に記憶する。補正値の算出例については、後述する。

動きベクトル再算出部16は、メモリ14から動きデータを読み出し、読み出した動きデータが示す基準ブロック毎の動きベクトルを補間して画素毎の動きベクトルを算出する。より具体的には、動きベクトル再算出部16は、各基準ブロックに属する画素の動きベクトルとして、当該基準ブロックの動きベクトルに定める。動きベクトル再算出部16は、各基準ブロックに属しない画素の動きベクトルとして、当該画素から所定の範囲内の基準ブロックの動きベクトルを補間して得られたベクトルに定める。動きベクトル再算出部16は、画素毎に定めた動きベクトルを示す画素別動きデータを画像処理部17に出力する。画素毎の動きベクトルの算出例については、後述する。

画像処理部17は、フレームA、Bの三板化画像データをメモリ14から読み出す。画像処理部17は、動きベクトル再算出部16から入力された画素別動きデータが示す画素毎の動きベクトルと、フレームAの当該画素の座標とを加算して、フレームBの当該画素に対応する座標(対応座標)を算出する。この対応座標を算出する処理は、位置合わせ、又は動き補償とも呼ばれる。画像処理部17は、フレームAの三板化画像データが示す画素毎の信号値と、フレームBの三板化画像データが示す対応座標における画素の信号値とに基づいて所定の画像処理を行う。画像処理部17は、所定の画像処理として、例えば、フレーム間NR処理などの位置合わせ高画質化処理を行う。画像処理部17は、所定の画像処理により得られた画素毎の信号値を示す画像処理データを生成し、生成した画像処理データをメモリ14に記憶する。

(ブロックの設定例) 次に、フレームA、Bに設定されるブロックの設定例について説明する。 図3は、本実施形態に係るブロックの設定例を示す図である。 図3において、FA、FBは、それぞれフレームA、Bを示す。フレームA、Bのそれぞれにおいて等間隔に配置されている15個(平方向5個、垂直方向3個)の四形は、ブロックを示す。フレームAに設定されている各ブロックの重心の座標は、フレームBに設定されている各対応ブロックの重心の座標に等しい。例えば、フレームAの左上端のブロックAa0の重心の座標は、フレームBの左上端のブロックBa0の重心の座標に等しい。

フレームAのブロックサイズは、フレームBのブロックサイズよりも小さい。例えば、フレームAのブロックサイズは、水平方向8画素、垂直方向8画素であるのに対し、フレームBのブロックサイズは、水平方向32画素、垂直方向32画素である。そのため、ブロックAの各ブロックの領域は、ブロックBの各対応ブロックの領域に含まれる。上述したように、ブロックAの各ブロックは、フレームBの各対応ブロックを動きベクトルの探索領域として用いられる。 なお、フレームAのブロックサイズは、フレームBのブロックサイズよりも小さければ、上述したものに限られない。例えば、フレームAのブロックサイズは、水平方向4画素、垂直方向4画素でもよい。フレームBのブロックサイズは、水平方向64画素、垂直方向64画素でもよい。また、図3に示す例では、フレームBはブロックが設定されていない領域を有するが、フレームBは、複数のブロックによりその全体が網羅され、ブロックが設定されていない領域を有しなくてもよい。

(動きベクトルの算出例) 次に、動きベクトルの算出例について説明する。 図4は、動きベクトルの算出方法を説明するための図である。動きベクトル算出部132は、フレームAの各ブロックを基準ブロックとして、フレームBの各対応ブロックとのブロックマッチングを行って1つの動きベクトルを算出する。図4は、フレームAのブロックAa0(水平方向3画素、垂直方向3画素)とフレームBのブロックBa0(水平方向5画素、垂直方向5画素)とのブロックマッチングを例にする。

図4に示す例において、動きベクトル算出部132は、ブロックAa0と、それぞれ画素単位で位置の異なるマッチングブロックAa0’とのSADを算出する。マッチングブロックAa0’は、ブロックBa0内におけるブロックAa0と大きさが等しい領域であり、ブロックBa0には9個[=(5−3+1)×(5−3+1)]存在する。図4の左から2、3、4列目は、それぞれマッチングブロックAa0’が左上端、左上端から水平方向に2列目、右下端にある場合を例示する。そして、動きベクトル算出部132は、9個のマッチングブロックAa0’のうち、最小のSADを与えるマッチングブロックAa0’を選択する。動きベクトル算出部132は、選択したマッチングブロックAa0’の基準点の座標からブロックAa0の基準点の座標の差分を、動きベクトルとして算出する。

(信頼度の例) 次に、信頼度の例について説明する。図5は、ブロック毎に算出された信頼度の例を示す図である。図5に示す例では、フレームA内の25個のブロックa0−e4(水平方向5ブロック、垂直方向5ブロック)のそれぞれの信頼度を示す。信頼度は、各ブロックを示す四角形の2行目に表される。これらの信頼度は、各ブロックについてSADの平均値と最小値との差分を0−7の8段階のいずれかに正規化した段階で表される。段階を表す数値が大きいほど信頼度が低いことを示す。例えば、0−7のうち、0が最も信頼度が高いことを示し、7が最も信頼度が低いことを示す。図5の左上端から3行3列目のブロックc2の信頼度は7である。図5の左上から3行2列目のブロックb2の信頼度は0である。なお、信頼度の段階は8段階に限られず、2段階以上であれば、7段階以下であっても、9段階以上であってもよい。

(補正値の算出例) 次に、補正値の算出例について説明する。動きベクトル補正部15は、信頼度が所定の閾値(例えば、0)よりも低い低信頼度ブロックについて、当該低信頼度ブロックから所定範囲内に配置され、かつ、その閾値以上の信頼度を有する周辺ブロックの動きベクトルに基づいて補正値を算出する。図5に示す例では、動きベクトル補正部15は、信頼度が7であるブロックc2を低信頼度ブロックと判定する。動きベクトル補正部15は、ブロックc2から水平方向、及び垂直方向のそれぞれに隣接する各1ブロック内の領域であって、信頼度が所定の閾値以上であるブロックとして、ブロックb2、c3、d1、d2をそれぞれ周辺ブロックと定める。そして、動きベクトル補正部15は、ブロックb2、c3、d1、d2の動きベクトルの平均値を補正値として算出する。なお、信頼度の閾値は、0よりも低い信頼度を示す値、例えば、1であってもよい。周辺ブロックとなりうる領域の大きさは、水平方向3ブロック、垂直方向3ブロックよりも大きい領域、例えば、水平方向5ブロック、垂直方向5ブロックでもよい。

動きベクトル補正部15は、メモリ14から信頼度データと動きデータを読み出す。動きベクトル補正部15は、基準ブロック毎に信頼度データが示す信頼度が所定の信頼度の閾値よりも低いか否かを判定する。動きベクトル補正部15は、信頼度が低いと判定したブロック(低信頼度ブロック)について、当該低信頼度ブロックから所定範囲内に配置され、かつ、その閾値以上の信頼度を有するブロック(周辺ブロック)の動きベクトルに基づいて補正値を算出する。動きベクトル補正部15は、例えば、周辺ブロックのうち信頼度が所定の最高段階である周辺ブロックの動きベクトルの平均値を補正値として算出する。なお、周辺ブロックがないと判定した場合には、動きベクトル補正部15は、補正値を0と定める。動きベクトル補正部15は、算出した補正値を当該低信頼度ブロックの動きベクトルとして定める。動きベクトル補正部15は、読み出した動きデータが示す当該低信頼度ブロックの動きベクトルを、定めた動きベクトルに更新し、更新した動きベクトルを示す動きデータをメモリ14に記憶する。補正値の算出例については、後述する。

(画素毎の動きベクトルの算出例) 次に、画素毎の動きベクトルの算出例について説明する。 図6は、画素毎の動きベクトルの算出方法を説明するための図である。図6において格子状に分布している●印は、フレームAの各ブロック内の代表点としての画素を示している。この代表点は、例えば、ブロックの重心点の位置であってもよいし、ブロックの左上端の位置でもよい。これらの画素については、動きベクトル再算出部16は、当該画素が属するブロックの動きベクトルを当該画素の動きベクトルとして定める。なお、図6に示す例では、各ブロックの重心点の座標値に配置された画素が図示され、その他のブロック内の画素については図示が省略されている。△印は、フレームAの各ブロックの代表点以外の画素の例として画素Sを示す。これらの画素については、動きベクトル再算出部16は、例えば、画素Sに水平方向及び垂直方向に近接する4つのブロックの動きベクトルを補間(近接4点補間)して得られたベクトルを、画素Sの動きベクトル(Qx,Qy)として定める。画素Sに水平方向及び垂直方向に近接する4つのブロックは、重心点A、B、C、Dを有するブロックである。これらの重心点は、フレーム内の各ブロックの重心点のうち、水平方向の座標値(x座標値)がその正方向もしくは負方向に、垂直方向の座標値(y座標値)がその正方向もしくは負方向に、それぞれ座標Sのx座標値、y座標値に最も近似する。

近接4点補間によれば、画素Sの動きベクトル(Qx,Qy)は、式(1)を用いて算出される。

Qx=k0・Ax’+k1・Cx’+k2・Bx’+k3・Dx’, Qy=k0・Ay’+k1・Cy’+k2・By’+k3・Dy’, k0=(1−qx)・(1−qy),k1=qx・(1−qy), k2=(1−qx)・qy,k3=qx・qy …(1)

式(1)において、Qx、Ax’、Cx’、Bx’、Dx’は、それぞれ画素S、重心点A、重心点C、重心点B、重心点Dに係る動きベクトルの水平方向の座標値(x座標値)を示す。Qy、Ay’、Cy’、By’、Dy’は、それぞれ画素S、重心点A、重心点C、重心点B、重心点Dに係る動きベクトルの垂直方向の座標値(y座標値)を示す。qx、qyは、各ブロックの重心点間の距離を1と正規化した場合における、重心点Aを基準点とした画素Sのx座標値、y座標値をそれぞれ示す。

なお、水平方向及び垂直方向に近接する4つのブロックを有しない画素については、動きベクトル再算出部16は、近接する2つのブロックの動きベクトルを補間して得られたベクトルを当該画素の動きベクトルとして定める。例えば、フレームA内の左端のブロックよりもx座標値が小さい画素、右端のブロックよりもx座標値が大きい画素については、垂直方向に近接する2つのブロックの動きベクトルを補間して得られたベクトルを、当該画素の動きベクトルとして定める。フレームA内の上端のブロックよりもy座標値が小さい画素、下端のブロックよりもy座標値が大きい画素については、水平方向に近接する2つのブロックの動きベクトルを補間して得られたベクトルを、当該画素の動きベクトルとして定める。また、動きベクトル再算出部16は、隣接する複数のブロックを有しない画素については、当該画素に最も近接する1つのブロックの動きベクトルを、当該画素の動きベクトルとして定める。従って、「補間」とは、必ずしも「内挿」に限られず、「外挿」及び「置換」も含む。

なお、フレームAの画素の座標と、当該画素の動きベクトルとの和は、フレームBの対応座標に相当する。動きベクトル再算出部16は、対応座標がフレームBの範囲外となる動きベクトルについては、0と定める。これにより、対応座標に配置された画素が存在しないために、画像処理部17がフレーム間で対応する座標に配置された画素同士で処理ができなくなることを回避する。

(位置合わせの例) 次に、位置合わせの例について説明する。図7は、位置合わせを説明するための図である。SAは、フレームA(FA)の処理対象の注目画素を示す。画像処理部17は、注目画素SAの動きベクトルVAと、注目画素SAの座標とを加算してフレームBの対応座標を算出し、算出した対応座標に配置された対応画素SBを特定する。対応画素SBは、フレームAに表される画像を構成する注目画素SAに相当する位置に配置された画素である。そして、画像処理部17は、注目画素SAの信号値と対応画素SBの信号値を用いて所定の画像処理、例えば、NR処理を行う。

(画像処理) 次に、本実施形態に係る画像処理について説明する。 図8、9は、本実施形態に係る画像処理を示すフローチャートである。本画像処理は、ステップS101−S121を有する。図8、9は、それぞれステップS101−S111、S112−S121を示す。 (ステップS101)動きベクトル算出領域設定部131は、フレームA、Bのそれぞれについて、処理対象の領域である注目ブロックとその対応ブロックを特定する。その後、ステップS102に進む。 (ステップS102)動きベクトル算出部132は、フレームAの注目ブロックについてフレームBの対応ブロックとの間でブロックマッチングを行って、動きベクトルを算出する。その後、ステップS103に進む。

(ステップS103)動きベクトル信頼度算出部133は、ブロックマッチングにおいて算出される類似度の分布に基づいて、フレームAの注目ブロックについて動きベクトルの信頼度を算出する。その後、ステップS104に進む。 (ステップS104)制御部12は、フレームAの注目ブロックが最終ブロックであるか否かを判定する。最終ブロックであると判定された場合(ステップS104 YES)、ステップS105に進む。最終ブロックでないと判定された場合(ステップS104 NO)、制御部12は、予め定めた処理順序(例えば、ラスタースキャン順)に基づいて、処理対象の注目ブロックを次のブロックに変更する。その後、ステップS101に戻る。

(ステップS105)動きベクトル補正部15は、フレームAの注目ブロックについて信頼度が所定の信頼度の閾値よりも低いか、当該閾値以上の高い信頼度であるかを判定する。信頼度が高いと判定された場合(ステップS105 YES)、ステップS111に進む。信頼度が低いと判定された場合(ステップS105 NO)、ステップS106に進む。 (ステップS106)動きベクトル補正部15は、当該注目ブロックから所定範囲に配置された周辺のブロックの信頼度を取得する。その後、ステップS107に進む。

(ステップS107)動きベクトル補正部15は、取得した周辺のブロックにおいて、信頼度が所定の閾値以上である信頼度が高い周辺ブロックの有無を判定する。あると判定された場合(ステップS107 YES)、ステップS108に進む。ないと判定された場合(ステップS107 NO)、ステップS109に進む。 (ステップS108)動きベクトル補正部15は、周辺ブロックの動きベクトルの平均値を注目ブロックの動きベクトルと定める。その後、ステップS110に進む。 (ステップS109)動きベクトル補正部15は、注目ブロックの動きベクトルを0と定める。その後、ステップS110に進む。 (ステップS110)動きベクトル補正部15は、定めた注目ブロックの動きベクトルを示す動きベクトルデータをメモリ14に上書き保存する。その後、ステップS111に進む。

(ステップS111)制御部12は、フレームAの注目ブロックが最終ブロックであるか否かを判定する。最終ブロックであると判定された場合(ステップS111 YES)、ステップS112に進む。最終ブロックでないと判定された場合(ステップS111 NO)、制御部12は、予め定めた処理順序に基づいて、処理対象の注目ブロックを次のブロックに変更する。その後、ステップS105に戻る。

(ステップS112)動きベクトル再算出部16は、処理対象の注目画素がフレームAにおいていずれのブロックの代表点にも属しない画素であるか否かを判定する。いずれのブロックの代表点にも属しない画素であると判定された場合(ステップS112 YES)、ステップS113に進む。いずれかのブロックの代表点の画素であると判定された場合(ステップS112 NO)、動きベクトル再算出部16は、注目座標が属するブロックの動きベクトルを当該注目画素の動きベクトルとして定め、ステップS118に進む。

(ステップS113)動きベクトル再算出部16は、注目画素が4点補間が可能な座標にあるか否かを判定する。4点補間が可能な座標にあると判定された場合(ステップS113 YES)、ステップS114に進む。4点補間が可能な座標にないと判定された場合(ステップS113 NO)、ステップS116に進む。 (ステップS114)動きベクトル再算出部16は、注目画素に隣接する4つのブロックの動きベクトルを取得する。その後、ステップS115に進む。 (ステップS115)動きベクトル再算出部16は、取得した4つのブロックの動きベクトルを4点補間して得られたベクトルを注目画素の動きベクトルと定める。その後、ステップS118に進む。

(ステップS116)動きベクトル再算出部16は、注目画素に最も近接する1つのブロックの動きベクトル、又は隣接する2つのブロックの動きベクトルを取得する。その後、ステップS117に進む。 (ステップS117)動きベクトル再算出部16は、取得した1つ又は2つの動きベクトルに基づいて算出して得られたベクトルを注目画素の動きベクトルと定める。その後、ステップS118に進む。

(ステップS118)動きベクトル再算出部16は、注目画素の座標と定めた動きベクトルを加算してフレームBの対応座標を算出する。動きベクトル再算出部16は、算出した対応座標がフレームBの範囲内であるか否かを判定する。フレームBの範囲内であると判定された場合(ステップS118 YES)、対応座標に配置された対応画素を特定し、ステップS120に進む。フレームBの範囲外と判定された場合(ステップS118 NO)、ステップS119に進む。 (ステップS119)動きベクトル再算出部16は、注目画素の動きベクトルを0と定める。その後、ステップS120に進む。

(ステップS120)画像処理部17は、注目画素の座標と動きベクトル再算出部16から入力された画素別動きデータが示す動きベクトルを画素毎に加算してフレームBの対応座標を算出する。画像処理部17は、メモリ14からフレームAの三板化画像データが示す注目画素の信号値と、フレームBの三板化画像データが示す対応画素の信号値について所定の画像処理、例えば、フレーム間NR処理を行う。その後、ステップS121に進む。

(ステップS121)制御部12は、フレームAの注目画素が最終画素であるか否かを判定する。最終画素であると判定された場合(ステップS121 YES)、図8、9に示す処理を終了する。最終画素でないと判定された場合(ステップS121 NO)、制御部12は、予め定めた処理順序に基づいて、処理対象の注目画素を次の画素に変更する。その後、ステップS112に戻る。

以上に説明したように、本実施形態に係る撮像装置10の画像処理ユニット10Aは、フレームAの一部の領域であるブロックと、当該ブロックとフレームBの一部の領域との類似度に基づいて当該ブロックの動きベクトルを定める動きベクトル算出部132を備える。また、画像処理ユニット10Aは、類似度のフレームB内の分布に基づいて動きベクトルの信頼度を算出する動きベクトル信頼度算出部133を備える。また、画像処理ユニット10Aは、信頼度が所定の信頼度よりも低いブロックである低信頼度ブロックとは異なるブロックであって、その所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいて低信頼度ブロックの動きベクトルを補正する動きベクトル補正部15を備える。また、画像処理ユニット10Aは、動きベクトル補正部15が補正した動きベクトルに基づいてフレームAの画素に対応するフレームBの対応画素を定め、フレームAの画素の信号値とフレームBの当該対応画素の信号値を用いた画像処理を行う画像処理部17を備える。

この構成により、フレーム内の一部の領域について算出した動きベクトルのうち、信頼性が高い動きベクトルに基づいて、信頼性が低いと判定された領域の動きベクトルを補正する。フレーム間で相互に対応する画素を高い信頼性をもって特定することができるので、フレーム間の位置合わせに基づく画像処理の機能低下を抑制することができる。また、フレーム内の全画素についてブロックマッチングを行わずに動きベクトルをすることができるので、演算量やハードウェア規模の増加を抑制することができる。

また、画像処理ユニット10Aでは、上述した高信頼度ブロックは、処理対象の低信頼度ブロックから所定範囲内に配置されているブロックである。 この構成により、処理対象の低信頼度ブロックから近接した高信頼度ブロックに基づいて動きベクトルが補正されるので、低信頼度ブロックに表された画像の動きをより精度よく補償することができる。フレーム間で相互に対応する画素をより高い精度で特定することができるので、フレーム間の位置合わせに基づく画像処理の機能低下を抑制することができる。

<第2の実施形態> 次に、本発明の第2の実施形態について説明する。上述した実施形態と同一の構成については、同一の符号を付してその説明を援用する。 本実施形態に係る撮像装置10は、第1の実施形態に係る撮像装置10(図1)と同様に画像処理ユニット10Aと、撮像部11と、表示処理部18と、表示デバイス19とを含んで構成される。但し、画像処理ユニット10Aの動きベクトル補正部15は、低信頼度ブロックと判定された処理対象の注目ブロックについて、当該注目ブロックの重心からの距離が小さい周辺ブロックほど、補正値の算出に用いる動きベクトルを与える周辺ブロックとして優先して選択する。

次に、図10を用いて本実施形態に係る動きベクトル補正部15が行う処理について説明する。動きベクトル補正部15は、注目ブロックの重心点に配置されている注目画素からの距離が最も小さいブロックからなるグループ(L1)を特定する。動きベクトル補正部15は、特定したグループのうち、信頼度が所定の信頼度の閾値よりも低い周辺ブロックの有無を判定する。信頼度が低い周辺ブロックがあると判定するとき、動きベクトル補正部15は、周辺ブロックの動きベクトルの平均値を補正値として算出する。周辺ブロックがないと判定するとき、動きベクトル補正部15は、次に注目画素からの距離が小さいブロックからなるグループ(L2)を特定する。以下、周辺画素が検出されるまで、又は、注目画素からの距離が所定の距離の閾値を超えるまで、動きベクトル補正部15は、注目画素からの距離が次に大きいブロックからなるグループの特定と、特定したグループ内の周辺ブロックの有無の判定を順次繰り返す。図10に示す例では、距離の閾値は、注目画素からグループL5に属するブロックまでの距離である。

(画像処理) 次に、本実施形態に係る画像処理について説明する。 図11は、本実施形態に係る画像処理を示すフローチャートである。 本実施形態に係る画像処理は、ステップS101−S105、S108−S121、及びS201−S203を有する。図11では、ステップS101−S104、S112−S121の図示が省略されている。ステップS105において、動きベクトル補正部15が、フレームAの注目ブロックについて信頼度が所定の信頼度の閾値よりも低いと判定された場合(ステップS105 NO)、ステップS201に進む。

(ステップS201)動きベクトル補正部15は、次に注目画素からの距離が小さいブロックを特定し、特定したブロックの信頼度と動きベクトルを取得する。但し、動きベクトル補正部15が特定するブロックの初期値は、注目画素からの距離が最も小さいブロックである。その後、ステップS202に進む。 (ステップS202)動きベクトル補正部15は、動きベクトル補正部15は、特定したグループのうち、信頼度が所定の信頼度の閾値以上である周辺ブロックが存在するか否かを判定する。存在すると判定する場合(ステップS202 YES)、ステップS108に進む。存在しないと判定する場合(ステップS202 NO)、ステップS203に進む。 (ステップS203)動きベクトル補正部15は、次に注目画素からの距離が小さいブロックについて、その距離が所定の距離の閾値よりも大きいか否かを判定する。大きいと判定する場合(ステップS203 YES)、ステップS109に進む。大きくないと判定する場合(ステップS203 NO)、ステップS201に戻る。

以上に説明したように、本実施形態に係る撮像装置10の画像処理ユニット10Aにおいて、動きベクトル補正部15は、注目する低信頼度ブロックの動きベクトルの補正において、前記低信頼度ブロックからの距離が小さいブロックの動きベクトルほど優先して用いる。 この構成により、低信頼度ブロックの動きベクトルの補正において、処理対象の低信頼度ブロックから近接した高信頼度ブロックほど優先して動きベクトルが補正されるので、その低信頼度ブロックに表された画像の動きをより精度よく補償することができる。フレーム間で相互に対応する画素をさらに高い精度で特定することができるので、フレーム間の位置合わせに基づく画像処理の機能低下を抑制することができる。

<第3の実施形態> 次に、本発明の第3の実施形態について説明する。上述した実施形態と同一の構成については、同一の符号を付してその説明を援用する。 本実施形態に係る撮像装置10は、第1の実施形態に係る撮像装置10(図1)と同様に画像処理ユニット10Aと、撮像部11と、表示処理部18と、表示デバイス19とを含んで構成される。但し、図12に示すように画像処理ユニット10Aの動き算出部13は、フレーム動きベクトル算出部134をさらに含んで構成される。

フレーム動きベクトル算出部134には、動きベクトル信頼度算出部133から信頼度データと、動きデータとが入力される。フレーム動きベクトル算出部134は、信頼度データを参照して、信頼度が所定の閾値(例えば、信頼度0)以上である高信頼度ブロックを検出する。フレーム動きベクトル算出部134は、検出した高信頼度ブロック間の動きベクトルの分布に基づいてフレーム信頼度を算出する。フレーム動きベクトル算出部134は、高信頼度ブロックの動きベクトルに基づいてフレーム動きベクトルを算出する。 フレーム動きベクトル算出部134は、算出したフレーム動きベクトルを示すデータを、メモリ14に記憶される動きデータに付加し、算出したフレーム信頼度を信頼度データに付加する。

フレーム動きベクトル算出部134は、動きベクトルの分布を取得する際、例えば、検出した高信頼度ブロック毎の動きベクトルを特定し、特定した動きベクトル毎の高信頼度ブロックの個数を計数する。計数した動きベクトル毎の高信頼度ブロックの個数は、ヒストグラムを形成する。フレーム動きベクトル算出部134は、ブロック間の動きベクトルの分布が狭く特定の値に集中しているほどフレーム信頼度が高く、当該分布が広く分散しているほどフレーム信頼度が低いと判定する。即ち、フレーム信頼度とは、フレームAの動きベクトルを特定の動きベクトルで代表できる度合いを示す指標値である。

フレーム動きベクトル算出部134は、フレーム信頼度を算出する際、例えば、動きベクトル毎の高信頼度ブロックの個数のうち個数が最多である動きベクトル(最頻値)と、その個数(最大個数N)とを特定する。フレーム動きベクトル算出部134は、1から最大個数NのMに対する割合の差分(1−N/M)を算出し、算出して得られる値を0−7の8段階のいずれかに正規化する。ここで、フレーム動きベクトル算出部134は、算出して得られる値が属する段階を判定し、判定した段階をフレーム信頼度として定める。ここで、Mは、フレームAに含まれるブロックの個数である。定めた値が大きいほど、フレーム信頼度が低いことを示す。0−7のうち、0が最も高いフレーム信頼度を示し、7が最も低いフレーム信頼度を示す。なお、段階数は、8に限られず、2以上7以下でも、9以上であってもよい。

動きベクトル補正部15(図2)は、メモリ14から信頼度データと動きデータを読み出す。動きベクトル補正部15は、読み出した信頼度データが示すフレーム信頼度が所定のフレーム信頼度の閾値以上(例えば、0.5以下)である場合、動きデータが示すフレーム動きベクトルを低信頼度ブロックの動きベクトルとして定める。また、動きベクトル補正部15は、フレーム信頼度が所定のフレーム信頼度の閾値未満である場合、低信頼度ブロックの動きベクトルを0と定める。

(画像処理) 次に、本実施形態に係る画像処理について説明する。 図13は、本実施形態に係る画像処理を示すフローチャートである。 本実施形態に係る画像処理は、ステップS101−S121及びステップS301−303を有する。図13では、ステップS101−103、ステップS112−S121の図示が省略されている。ステップS104において、制御部12は、フレームAの注目ブロックが最終ブロックであると判定した場合(ステップS104 YES)、ステップS301に進む。

(ステップS301)フレーム動きベクトル算出部134は、信頼度が所定の信頼度の閾値以上である高信頼度ブロック毎の動きベクトルを特定し、特定した動きベクトル毎のブロックの個数を計数する。フレーム動きベクトル算出部134は、動きベクトルの最頻値に基づいてフレーム信頼度を算出し、その動きベクトルの最頻値をフレーム動きベクトルとして定める。その後、ステップS105に進む。 ステップS107において、動きベクトル補正部15は、取得した周辺のブロックにおいて信頼度が所定の閾値以上である信頼度が高い周辺ブロックがないと判定した場合(ステップS107 NO)、ステップS302に進む。

(ステップS302)動きベクトル補正部15は、フレーム信頼度が所定のフレーム信頼度の閾値以上であるか否かを判定する。所定のフレーム信頼度の閾値以上と判定された場合(ステップS302 YES)、ステップS303に進む。所定の信頼度の閾値よりも低い判定された場合(ステップS302 NO)、ステップS109に進む。 (ステップS303)動きベクトル補正部15は、注目ブロック(低信頼度ブロック)の動きベクトルをフレーム動きベクトルとして定める。その後、ステップS110に進む。

以上に説明したように、本実施形態に係る撮像装置10の画像処理ユニット10Aは、高信頼度ブロックの動きベクトルに基づいて第1の画像全体の動きベクトルであるフレーム動きベクトルと、高信頼度ブロックの動きベクトルのブロック間の分布に基づいてフレーム動きベクトルの信頼性とを算出するフレーム動きベクトル算出部134、をさらに備える。また、動きベクトル補正部15は、フレーム動きベクトルを用いて低信頼度ブロックの動きベクトルを補正するか否かをフレーム動きベクトルの信頼性に基づいて判定する。

この構成により、低信頼度ブロックの動きベクトルの補正において、フレーム全体として信頼性が高いと判定されたフレーム動きベクトルが用いられる。そのため、フレーム全体の画像の動きを含むために信頼性が低下した低信頼度ブロックについて、フレーム間で相互に対応する画素をさらに高い精度で特定することができるので、フレーム間の位置合わせに基づく画像処理の機能低下を抑制することができる。かかる低信頼度ブロックとして、例えば、主たる被写体以外にフレーム全体に分布する背景の一部を表す領域について本実施形態は有効である。

<第4の実施形態> 次に、本発明の第4の実施形態について説明する。上述した実施形態と同一の構成については、同一の符号を付してその説明を援用する。 本実施形態に係る撮像装置10は、第1の実施形態に係る撮像装置10(図1)と同様に画像処理ユニット10Aと、撮像部11と、表示処理部18と、表示デバイス19とを含んで構成される。但し、図14に示すように画像処理ユニット10Aの動き算出部13は、歪補正座標算出部135をさらに含んで構成される。

歪補正座標算出部135は、予め設定された歪補正データに基づいて、各ブロック内の画素毎に当該画素に対応した補正後の座標である歪補正座標を算出する。歪補正データは、フレーム内の補正前の座標と、補正後の座標との関係を示すデータである。歪補正データは、例えば、光学歪係数(歪曲収差係数とも呼ばれる)を示すデータであってもよいし、補正前の画素毎の座標と当該座標に対応する座標を示すデータであってもよい。歪補正座標算出部135は、算出した歪補正座標を示す歪補正座標データを生成し、生成した歪補正座標データを動きベクトル算出領域設定部131に出力する。動きベクトル算出領域設定部131は、歪補正座標算出部135から入力された歪補正座標データが示す歪補正座標毎の信号値を、フレームA、Bそれぞれの各ブロックについて取得する。

算出した歪補正座標がいずれかの画素が配置された座標である場合には、動きベクトル算出領域設定部131は、当該歪補正座標に配置された画素の信号値を示すデータをメモリ14に記憶されたY画像データから読み出す。算出した歪補正座標がいずれかの画素が配置された座標でない場合には、当該歪補正座標から所定の範囲内に配置された画素の信号値を補間して当該歪補正座標に対応する信号値を算出する。動きベクトル算出領域設定部131は、歪補正座標毎の信号値を示すブロックデータを動きベクトル算出部132に出力する。動き算出部13は、歪補正を行った画像について上述した処理を行ってブロック毎に動きベクトルと、その信頼度を示す指標値を算出する。

(歪補正の例) 次に、本実施形態による歪補正の例について説明する。図15は、本実施形態に係る歪補正を説明するための図である。左列に示す画像は、撮像装置10の撮像部11が備える光学系を構成するレンズの光学歪みとして樽型歪みを受けて撮像された画像の一例を示す。樽型歪みにより、撮像された画像は上下左右の端部ほど収縮し、中央部ほど膨張する。これに応じて、本来水平方向又は垂直方向に延びるべき区分線が湾曲している。当該画像に示された4個の四角形は、動きベクトルを算出するブロックである補正前のブロックa−dを示す。

中央列に示す画像は、歪補正後の画像を示す。歪補正により、画像の収縮及び膨張が解消され、各区分線が水平方向もしくは垂直方向に延びている。この画像には、補正前とそれぞれ同一の領域に4つのブロックa−dが表されている。右列の画像は、歪補正後の画像を示し、補正後の歪補正座標の集合である領域に4つのブロックa’−d’が表されている。このことは、歪補正によって画像の中央部よりも左上に分布していたブロックa−dが、ブロックa’−d’で表される本来配置されていると推定される、より右下の位置に移動する。そのため、光学系により生じていた画像の位置や形状の歪が解消され、本来算出されるべき動きベクトルが算出される。

(画像処理) 次に、本実施形態に係る画像処理について説明する。図16は、本実施形態に係る画像処理を示すフローチャートである。本実施形態に係る画像処理は、ステップS102−S121及びステップS401を有する。図16では、ステップS105−S121の図示が省略されている。

(ステップS401)歪補正座標算出部135は、歪補正データが示す光学歪係数に基づいて、各ブロック内の画素毎に当該画素に対応した補正後の座標である歪補正座標を算出する。動きベクトル算出領域設定部131は、歪補正座標算出部135から入力された歪補正座標データに基づいて、フレームA、Bそれぞれの各ブロック内の画素の歪補正座標を算出する。動きベクトル算出領域設定部131は、歪補正座標算出部135から入力された歪補正座標データが示す歪補正座標毎の信号値を、フレームA、Bそれぞれの各ブロックについて取得する。その後、ステップS102に進む。

なお、上述では動きベクトル算出領域設定部131が、歪補正前の各ブロック内の座標に対応する歪補正座標毎の信号値を取得する場合を例にしたが、これには限られない。動きベクトル算出領域設定部131は、歪補正後の各ブロック内の座標毎の信号値を取得してもよい。その場合には、歪補正座標算出部135は、歪補正データに基づいて、補正前の座標毎に対応する補正後の座標である歪補正座標として、各ブロック内に等間隔に分布した画素の座標を算出してもよい。

以上に説明したように、本実施形態に係る撮像装置10の画像処理ユニット10Aは、撮像された画像を形成する各画素の座標と歪補正後の座標との関係を示す歪補正データに基づいて、フレームAを示す画素毎の座標を補正する歪補正座標算出部135、をさらに備える。 この構成により、歪が生じていた画像の位置や形状が補正されたうえで、動きベクトルが算出されるので、歪による動きベクトルの信頼性や精度の低下を解消又は緩和することができる。そのため、フレーム間の位置合わせに基づく画像処理の機能低下を抑制することができる。

<第5の実施形態> 次に、本発明の第5の実施形態について説明する。上述した実施形態と同一の構成については、同一の符号を付してその説明を援用する。 本実施形態に係る撮像装置10は、第1の実施形態に係る撮像装置10(図1)と同様に画像処理ユニット10Aと、撮像部11と、表示処理部18と、表示デバイス19とを含んで構成される。但し、画像処理ユニット10Aの動き算出部13は、フレーム動きベクトル算出部134(図12)をさらに含んで構成される。

本実施形態において、フレーム動きベクトル算出部134は、第3の実施形態と同様に、高信頼度ブロックを検出し、検出した高信頼度ブロック間の動きベクトルの分布に基づいてフレーム信頼度を算出する。フレーム動きベクトル算出部134は、高信頼度ブロックの動きベクトルに基づいてフレーム動きベクトルを算出する。

動きベクトル補正部15(図2)は、フレーム信頼度が所定のフレーム信頼度の閾値以上である場合、本実施形態では、動きデータが示すフレーム動きベクトルをフレームA内の各ブロック共通の動きベクトルとして定める。また、動きベクトル補正部15は、フレーム信頼度が所定のフレーム信頼度の閾値未満である場合、フレームA内の各ブロック共通の動きベクトルを0と定める。動きベクトル補正部15は、動きデータが示す各ブロックの動きベクトルを定めた動きベクトルに更新し、更新した動きベクトルを示す動きデータをメモリ14に記憶する。

(画像処理) 次に、本実施形態に係る画像処理について説明する。 図17は、本実施形態に係る画像処理を示すフローチャートである。 本実施形態に係る画像処理は、ステップS101−S104、S112−S121、S301、S302、S501及びS502を有する。図16では、ステップS101−103、ステップS112−S121の図示が省略されている。ステップS104において、制御部12は、フレームAの注目ブロックが最終ブロックであると判定した場合(ステップS104 YES)、ステップS301に進む。

(ステップS301)フレーム動きベクトル算出部134は、信頼度が所定の信頼度の閾値以上である高信頼度ブロック毎の動きベクトルを特定し、特定した動きベクトルの最頻値に基づいてフレーム信頼度を算出する。また、フレーム動きベクトル算出部134は、動きベクトルの最頻値をフレーム動きベクトルとして定める。その後、ステップS302に進む。

(ステップS302)動きベクトル補正部15は、フレーム信頼度が所定のフレーム信頼度の閾値以上であるか否かを判定する。所定のフレーム信頼度の閾値以上と判定された場合(ステップS302 YES)、ステップS501に進む。所定の信頼度の閾値よりも低いと判定された場合(ステップS302 NO)、ステップS502に進む。 (ステップS501)動きベクトル補正部15は、フレーム動きベクトルをフレームA内の全ブロックの動きベクトルとして定める。その後、ステップS112に進む。 (ステップS502)動きベクトル補正部15は、フレームA内の全ブロックの動きベクトルを予め定めたベクトル(例えば、0)と定める。その後、ステップS112に進む。

なお、動きベクトル補正部15(図2)は、フレームA内の各ブロック共通に定めた動きベクトルを示すデータをメモリ14に記憶された動きデータに付加してもよい。本実施形態では、動きベクトル再算出部16(図2)は、省略されてもよい。画像処理部17は、メモリ14から動きデータをメモリ14から読み出し、読み出した動きデータが示す各ブロック共通の動きベクトルを、フレームA内の各画素の座標に加算して、フレームB内の対応座標を算出してもよい。

以上に説明したように、本実施形態の撮像装置10の画像処理ユニット10Aは、フレームAの一部の領域であるブロックと、当該ブロックとフレームBの一部の領域との類似度に基づいて当該ブロックの動きベクトルを定める動きベクトル算出部132を備える。また、画像処理ユニット10Aは、類似度のフレームB内の分布に基づいて動きベクトルの信頼度を算出する動きベクトル信頼度算出部133を備える。また、画像処理ユニット10Aは、信頼度が所定の信頼度よりも低いブロックである低信頼度ブロックとは異なるブロックであって、所定の信頼度と同等以上の信頼度を有する高信頼度ブロックの動きベクトルに基づいてフレームA全体の動きベクトルであるフレーム動きベクトルと、高信頼度ブロックの動きベクトルの分布に基づいてフレーム動きベクトルの信頼性とを算出するフレーム動きベクトル算出部134を備える。また、画像処理ユニット10Aは、フレーム動きベクトルを用いてフレームA全体のブロックの動きベクトルを補正するか否かをフレーム動きベクトルの信頼性に基づいて判定する動きベクトル補正部15を備える。また、動きベクトル補正部15が補正した動きベクトルに基づいてフレームAの画素に対応するフレームBの対応画素を定め、フレームAの画素の信号値とフレームBの対応画素の信号値を用いた画像処理を行う画像処理部17を備える。

この構成により、フレーム全体の動きベクトルを代表するフレーム動きベクトルの信頼性が高いと判定された場合に、そのフレーム動きベクトルを用いてフレーム間で相互に対応する画素をフレーム全体で特定することができる。そのため、ブロック間もしくは画素間で異なる動きベクトルを用いることによる画像データのメモリへのアクセス頻度を低減することで消費電力を低減することができる。そして、この消費電力の低減と、フレーム間の位置合わせに基づく画像処理の機能低下の抑制とを両立することができる。

以上、本発明の実施形態について、図面を参照して説明してきたが、具体的な構成は上述の実施形態に限定されるものではない。

例えば、表示デバイス19は、上述したように撮像装置10に内蔵されてもよいし、撮像装置10から着脱可能であってもよい。また、撮像装置10は、表示デバイス19に代え、各種の表示デバイスと接続可能なデータ入出力インタフェースを備えてもよい。 上述では、時間的に隣接した2フレームA、B間の位置合わせを例にしたが、これには限られない。2つのフレームA、Bは、相互に時間的に離れた別個のフレームであってもよい。また、画像処理部17は、複数のフレームからなる動画像を表す画像データについて2フレーム間の位置合わせを繰り返すことにより、3フレーム以上の複数フレーム間について位置合わせを行って、これらのフレーム間における所定の画像処理を行ってもよい。

画像処理ユニット10Aは、上述したように撮像装置10に内蔵されてもよいし、撮像装置10とは、独立の画像処理装置として構成されてもよい。また、画像処理ユニット10Aは、撮像を主たる機能として有しない他の電子機器、例えば、携帯電話機(いわゆるスマートフォンを含む)、受信装置(テレビジョン受信装置を含む)、送信装置、等の一部として内蔵されてもよい。

また、上述した撮像装置10の一部、例えば、画像処理ユニット10A、制御部12をコンピュータで実現するようにしてもよい。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、撮像装置10又は画像処理装置に内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。 また、上述した実施形態における撮像装置10及び画像処理装置の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。撮像装置10及び画像処理装置の各機能ブロックは個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。

以上、本発明の好ましい実施形態を説明したが、本発明はこれら実施形態及びその変形例に限定されることはない。本発明の趣旨を逸脱しない範囲で、構成の付加、省略、置換、およびその他の変更が可能である。 また、本発明は前述した説明によって限定されることはなく、添付のクレームの範囲によってのみ限定される。

10…撮像装置,10A…画像処理ユニット,11…撮像部,111…撮像素子,112…撮像処理部,12…制御部,13…動き算出部,131…動きベクトル算出領域設定部,132…動きベクトル算出部,133…動きベクトル信頼度算出部,134…フレーム動きベクトル算出部,135…歪補正座標算出部,14…メモリ,15…動きベクトル補正部,16…動きベクトル再算出部,17…画像処理部,18…表示処理部,19…表示デバイス

高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈