JP5610967B2 - 画像処理装置、撮像装置、画像処理方法および画像処理プログラム - Google Patents

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

Info

Publication number
JP5610967B2
JP5610967B2 JP2010231327A JP2010231327A JP5610967B2 JP 5610967 B2 JP5610967 B2 JP 5610967B2 JP 2010231327 A JP2010231327 A JP 2010231327A JP 2010231327 A JP2010231327 A JP 2010231327A JP 5610967 B2 JP5610967 B2 JP 5610967B2
Authority
JP
Japan
Prior art keywords
image
frame
previous frame
amount
change amount
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2010231327A
Other languages
English (en)
Other versions
JP2012085204A5 (ja
JP2012085204A (ja
Inventor
隆弘 高橋
隆弘 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2010231327A priority Critical patent/JP5610967B2/ja
Publication of JP2012085204A publication Critical patent/JP2012085204A/ja
Publication of JP2012085204A5 publication Critical patent/JP2012085204A5/ja
Application granted granted Critical
Publication of JP5610967B2 publication Critical patent/JP5610967B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Studio Devices (AREA)

Description

本発明は、撮像装置により取得された動画像(映像)の像振れを低減する画像処理装置に関するものである。
撮像装置には、いわゆる手振れのような小さな動きに起因する映像中の像振れを低減するための光学的又は電子的な像振れ低減処理を行うものが多い。また、例えば撮像装置を持ったユーザが歩きながら撮影を行うような場合に発生する手振れよりも大きな動きに起因する像振れを低減する必要もある。特許文献1には、映像中の現フレームと前フレーム間で算出した動きベクトルから現フレームの前フレームに対する画像変化量を算出し、これに基づいて現フレームに対して幾何変換等の画像処理を行うことで像振れを低減する方法が開示されている。
特開2008−259076号公報 特開2009−124597号公報
しかしながら、特許文献1,2にて開示された像振れ低減処理において、画像変化量を算出する現フレームの画像によってはその画像変化量を正しく算出又は決定することができない場合がある。例えば、現フレームが望遠側での撮影により生成された画像であって、ピントが大きく外れた画像である場合や急なカメラワークによって像流れが生じた画像である場合である。そして、誤って算出した画像変形量を用いて像振れ低減処理を行うと、該処理後の画像が乱れ、不自然な映像が生成されてしまう。
本発明は、画像変化量を得るのに適さない画像がフレームとして含まれる場合においても、像振れが良好に低減された自然な映像が得られるようにした画像処理装置、撮像装置、画像処理方法および画像処理プログラムを提供する。
本発明の一側面としての画像処理装置は、撮像装置により生成された動画像における複数のフレーム間での撮像装置の動きに伴う像振れを低減する像振れ低減処理をフレームごとに行う処理手段と、撮像装置の動きの情報を取得する動き情報取得手段と、該動きの情報に基づいて、複数のフレームのうち対象フレームの、それよりも前に生成された前フレームに対する画像変化量を算出する画像変化量算出手段と、前フレームが画像変化量の算出対象画像として特定条件を満たすか否かを判定する判定手段とを有する。そして、判定手段は、前フレームが特定のテクスチャを有し、対象フレームの前フレームに対する並進量が所定値よりも小さく、前フレームと対象フレームとの間の動きベクトルの数の変化量が所定値よりも小さい場合に、前フレームが特定条件を満たすと判定し、処理手段は、判定手段により前フレームが特定条件を満たすと判定された場合は、対象フレームに対して、画像変化量算出手段により算出された画像変化量に基づいて算出した第1の画像補正量を用いて像振れ低減処理を行い、判定手段により前フレームが特定条件を満たさないと判定された場合は、複数の前記対象フレームに対して、第1の画像補正量に向かって段階的に変化するように算出した第2の画像補正量を用いて像振れ低減処理を行うことを特徴とする。
なお、撮像により動画像を生成する撮像系と、上記画像処理装置を有する撮像装置も、本発明の他の一側面を構成する。
また、本発明の他の一側面としての画像処理方法は、撮像装置により生成された動画像における複数のフレーム間での撮像装置の動きに伴う像振れを低減する像振れ低減処理をフレームごとに行う処理ステップと、撮像装置の動きの情報を取得する動き情報取得ステップと、該動きの情報に基づいて、複数のフレームのうち対象フレームの、それよりも前に生成された前フレームに対する画像変化量を算出する画像変化量算出ステップと、前フレームが画像変化量の算出対象画像として特定条件を満たすか否かを判定する判定ステップとを有する。そして、判定ステップにおいて、前フレームが特定のテクスチャを有し、対象フレームの前フレームに対する並進量が所定値よりも小さく、前フレームと対象フレームとの間の動きベクトルの数の変化量が所定値よりも小さい場合に、前フレームが特定条件を満たすと判定し、処理ステップにおいて、判定ステップにて前フレームが特定条件を満たすと判定された場合は、対象フレームに対して、画像変化量算出ステップにて算出された画像変化量に基づいて算出した第1の画像補正量を用いて像振れ低減処理を行い、判定ステップにて前フレームが特定条件を満たさないと判定された場合は、複数の対象フレームに対して、第1の画像補正量に向かって段階的に変化するように算出した第2の画像補正量を用いて像振れ低減処理を行うことを特徴とする。
また、本発明の他の一側面としての画像処理プログラムは、コンピュータに、撮像装置により生成された動画像における複数のフレーム間での撮像装置の動きに伴う像振れを低減する像振れ低減処理をフレームごとに行う処理ステップと、撮像装置の動きの情報を取得する動き情報取得ステップと、該動きの情報に基づいて、複数のフレームのうち対象フレームの、それよりも前に生成された前フレームに対する画像変化量を算出する画像変化量算出ステップと、前フレームが画像変化量の算出対象画像として特定条件を満たすか否かを判定する判定ステップとを含む処理を実行させる。そして、判定ステップは、コンピュータに、前フレームが特定のテクスチャを有し、対象フレームの前フレームに対する並進量が所定値よりも小さく、前フレームと対象フレームとの間の動きベクトルの数の変化量が所定値よりも小さい場合に、前フレームが特定条件を満たすと判定させ、処理ステップ、コンピュータに、判定ステップにて前フレームが特定条件を満たすと判定された場合は、対象フレームに対して、画像変化量算出ステップにて算出された画像変化量に基づいて算出した第1の画像補正量を用いて像振れ低減処理を行わせ、判定ステップにて前フレームが特定条件を満たさないと判定された場合は、複数の対象フレームに対して、第1の画像補正量に向かって段階的に変化するように算出した第2の画像補正量を用いて像振れ低減処理を行わせることを特徴とする。
本発明では、前フレームが特定条件を満たさない場合、つまりは対象フレームとの間で画像変化量を得るのに適さない画像である場合には、段階的に変化するように設定した画像補正量(第2の像振れ補正量)を用いて像振れ低減処理を行う。これにより、画像変化量を得るのに適さないフレームを含む映像に対しても、映像の自然さを損なわない良好な像振れ低減処理を行うことができる。
本発明の実施例1である撮像装置の構成を示すブロック図。 実施例1の撮像装置の動作を示すフローチャート。 実施例1の撮像装置における像振れ補正処理を示すフローチャート。 実施例1の撮像装置における動き検出処理を示すフローチャート。 実施例1の撮像装置における画像補正量推定処理を示すフローチャート。 輝度投影の概略を示す図。 輝度投影による並進検出を説明する図。 実施例1の撮像装置における画像補正量修正処理を説明する図。 本発明の実施例2である撮像装置の構成を示すブロック図。 実施例2の撮像装置における動き検出処理を示すフローチャート。 実施例2における上記動き検出処理を説明する図。 画像からのエントロピー算出を説明する図。 本発明の実施例3である画像処理装置の構成を示す図。
以下、本発明の実施例について図面を参照しながら説明する。
図1には、本発明の実施例である画像処理装置を含むビデオカメラや動画撮影機能付きデジタルスチルカメラ等の撮像装置1の構成を示す。
図1において、100は撮影レンズであり、撮像素子102上に被写体からの光を結像させる。101は絞りやシャッタ等を含む露光制御部材であり、撮影レンズ100を通った光による撮像素子102の露光を制御する。撮像素子102は、被写体像を光電変換して電気信号を出力するCCDセンサやCMOSセンサ等のイメージセンサである。
103は映像形成回路であり、撮像素子102からのアナログ出力信号をデジタル信号に変換し、さらに該デジタル信号に対してゲイン調整、オートホワイトバランス、画素補間処理、色変換処理等を行ってデジタル映像信号(動画像)を生成する。104は露光制御部材101の動作(絞り開口径および露光時間(フレームレート))を制御する露光制御部である。105は撮影レンズ100のフォーカシングを制御するAF制御部である。撮影レンズ100、露光制御部材101、撮像素子102、映像形成回路103、露光制御部104およびAF制御部105により、被写体を撮像して映像信号(以下、単に映像ともいう)を生成する撮像系が構成される。
106は撮像装置1全体の動作の制御を司るシステム制御回路である。107はシステム制御回路106において用いられる各種データやコンピュータプログラム等を格納したメモリである。108は各種調整値等の情報を格納した不揮発性メモリである。
109は画像処理装置としての像振れ補正回路であり、撮像装置1の動きに起因して映像における連続する複数のフレーム間に現れる像振れを補正(低減)する像振れ補正処理(像振れ低減処理)を、フレームごとに行う。
110は映像形成回路103で生成された映像の複数フレームを一時的に記憶する第1のフレームメモリである。111は像振れ補正回路109で像振れ補正処理を受けたフレームを一時的に記憶する第2のフレームメモリである。112は第1および第2のフレームメモリ110,111に対するフレームの入出力を制御するメモリ制御回路である。113は像振れ補正回路109から出力された映像を不図示の表示モニタに表示したり不図示の記録媒体(磁気テープ、光ディスク、半導体メモリ等)に記録したりする映像出力部である。
次に、像振れ補正回路109の構成について説明する。1091は撮像系により生成された映像のフレームごとに特徴点を抽出する特徴点抽出回路である。1092は像振れ補正処理の対象フレームである現フレームとこれよりも前のフレーム(以下、前フレームという)との間で、動き方向と動き量を示す動きベクトルを算出する動きベクトル算出回路である。動きベクトルを算出することによって、撮像装置1の動きを検出する(すなわち、動きの情報を取得する)ことができる。
1093は動きベクトル算出回路1092で算出された動きベクトルを用いて、撮像装置1の動きを推定する動き推定回路である。動き推定回路1093により推定された「動き」が、「動きの情報」に相当する。特徴点抽出回路1091、動きベクトル算出回路1092および動き推定回路1093により、動き情報取得手段が構成される。また、動き推定回路1093は、推定した動きに対応する画像変化量を算出する画像変化量算出手段としても機能する。
1094は映像判定回路(判定手段)である。映像判定回路1094は、映像形成回路103で生成された各フレーム(前フレーム)を解析し、前フレームが現フレームの画像変化量の算出対象画像として特定条件を満たすか否かの判定処理を行う。ここにいう特定条件とは、前フレームが現フレームの画像変化量を得るのに適した画像であることであり、言い換えれば現フレームの画像変化量を正しく算出又は決定することができる画像であることである。
特定条件を満たす場合は、例えば、前フレームが特定のテクスチャを有し、現フレームの前フレームに対する並進量が所定値より小さく、さらに前フレームと現フレームとの間の動きベクトルの数の変化量が所定値より小さい場合である。
1095は像振れ補正量算出回路である。像振れ補正量算出回路1095は、映像判定回路1094で前フレームが特定条件を満たすと判定された場合に、動き推定回路1093で算出された画像変化量から、前フレームと現フレームとの間の像振れを補正するための像振れ補正量(画像補正量)を算出する。
1096は揺れ補正量修正回路であり、振れ補正量算出回路1095にて算出された像振れ補正量を、映像判定回路1094での判定結果を参照して修正する。
1097は像振れ補正画像生成回路であり、像振れ補正量修正回路1096にて修正された像振れ補正量を用いて現フレームを補正することで、像振れを低減した映像を生成する。
1098は一時記憶用のメモリであり、1099は不揮発性メモリである。1100は像振れ補正回路109内の各回路の動作を制御する像振れ補正制御回路であり、MPU等のコンピュータにより構成されている。
像振れ補正量算出回路1095、像振れ補正量修正回路1096、像振れ補正画像生成回路1097および像振れ補正制御回路1100により処理手段が構成される。
次に、映像判定回路1094の構成について説明する。10941は、フレーム(画像)中に特定のテクスチャが存在するか否かを判定するテクスチャ解析回路である。
10942は並進検出回路であり、現フレームの前フレームに対する並進量を検出し、該並進量が所定値よりも小さいか否かを検出する。10943は有効動きベクトル数検出回路であり、動きベクトル算出回路1092で算出された信頼度の高い、すなわち有効な動きベクトルの数の時間的な変化量が所定値よりも小さいか否かを判定(検出)する。
次に、本実施例の撮像装置1の動作について、図2のフローチャートを用いて説明する。図2は、撮像装置1を用いて被写体を撮像して得られた映像中の像振れを低減して前述した映像出力部113にて表示および記録されるまでの処理を示す。この処理は、像振れ補正制御回路(以下、単に制御回路という)1100によってコンピュータプログラムとしての画像処理プログラムに従って実行される。
ステップS201では、制御回路1100は、撮像装置1に設けられた不図示の撮像開始スイッチが操作されたことを検出すると、撮像素子102からの出力信号のうち輝度成分に基づいて露光制御部104により制御される1フレームの露光量を設定する。また、映像のコントラスト情報に基づいてAF制御部105にフォーカシング制御を行わせる。その後、制御回路1100は、映像形成回路103に、撮像素子102からの出力信号(撮像信号)を読み込ませる。
ステップS202では、制御回路1100は、画像形成回路103に、ステップS201において撮像素子102から読み込んだ撮像信号から映像を生成させ、第1のフレームメモリ110に格納する。
ステップS203では、制御回路1100は、撮像装置1において、ユーザの選択操作によって、映像中の像振れを低減する像振れ補正モードが設定されているか否かを判定する。像振れ補正モードが設定されていない場合はステップS205に進み、制御回路1100は、映像形成回路103からの映像であって像振れ補正処理を行わない映像を映像出力部113に出力する。一方、像振れ補正モードが設定されている場合は、ステップS204に進む。
ステップS204では、制御回路1100は、像振れ補正回路109に、映像形成回路103からの映像に対して像振れ補正処理を行わせる。このステップS204での処理について、図3のフローチャートを用いて説明する。
ステップS301(動き情報取得ステップおよび画像変化量算出ステップ)では、制御回路1100は、映像判定回路1094に判定処理を行わせる。また、特徴点抽出回路1091,動きベクトル算出回路1092および動き推定回路1093に撮像装置1の動きの推定処理を行わせる。このステップでの処理については、後に図4のフローチャートを用いて説明する。
次に、ステップS302では、制御回路1100は、像振れ補正量算出回路1095に像振れ補正量を算出させる。また、このステップでは、後述する修正処理によって像振れ補正量を修正する。このステップでの処理については、後に図5のフローチャートを用いて説明する。
次に、ステップS303では、制御回路1100は、像振れ補正画像生成回路1097に、ステップS302で算出された像振れ補正量を用いて、映像形成回路103からの映像に対する像振れ補正処理を行わせる。像振れ補正処理の詳しい内容については後述する。ステップS302〜S303が、処理ステップに相当する。
そして、像振れ補正処理を終了すると、制御回路1100は、図2のステップS205に進み、ステップS204で像振れ補正処理がなされた映像を映像出力部113にて表示したり記録したりする。
図4のフローチャートを用いて、映像判定回路1094による判定処理と、特徴点抽出回路1091、動きベクトル算出回路1092および動き推定回路1093による撮像装置1の動きの推定処理とを含む動き検出処理について説明する。
まずステップS401では、制御回路1100は、テクスチャ解析回路10941に、現フレームの画像中のテクスチャ量を表す指標を算出させる。これは、後のステップS404で行われる特徴点抽出処理において有効な特徴点が抽出できない画像を事前に検出(判定)することを目的とする。本実施例においては、テクスチャ量を表す指標として、以下の文献1に記載されたエントロピーを用いる。
(文献1)高木幹雄、下田陽久 監修「新編 画像解析ハンドブック」1260〜1267頁、5.4「テクスチャ特徴の抽出」
ここでは、エントロピーについて簡単に説明する。時刻tの画像ItのエントロピーEtは、式1を用いて求められる。
ただし、n=0〜255である。Pt(n)は画像Itのヒストグラムで、全体の総和が1となるよう正規化されている。
このエントロピーは、ヒストグラムが一様分布している場合に最大値を示し、特定の値にピークを有するような分布の場合は最小値を示す。すなわち、あるエントロピーが一定範囲に入っていれば、画像中に適当な特徴点を持つ可能性が高い。
次に、ステップS402では、テクスチャ解析回路10941は、ステップS401で算出したエントロピーEtが所定の範囲(上限値Eh、下限値Elの範囲)に入っているか否かを判定する。これにより、テクスチャ量の指標として適正か否か、つまりは特定のテクスチャが存在するか否かを判定する。
以上のステップによって後の特徴点抽出処理にて有効な特徴点が抽出できない画像を事前に検出することで、当該画像に対して不適切な像振れ補正処理がなされ、最終的に出力される振れ補正処理後の映像が不自然になる(乱れる)ことを防止することができる。
エントロピーを用いた特徴点の有無の判定例を、図12を用いて説明する。図12の(a),(b),(c)はそれぞれ、4×4画素の16画素を有し、各画素値が0〜3までの4階調のうちいずれかである画像を表している。(a)はエッジがある画像を、(b)は孤立的に1点のみが存在する画像を、(c)は全体的に画素値がランダムである画像をそれぞれ表している。
図12の(a)〜(c)に示すそれぞれの画像のヒストグラム(画素値とその頻度)は、図12の(d)〜(f)のようになる。画像中にほとんど何も存在しない画像(b)のヒストグラムは(e)のように局所的な分布を示し、ノイズのような画像(c)のヒストグラムは(f)のように一様な分布を示す。各ヒストグラムを、画素値の総和が1になるよう正規化して、式1に従ってエントロピーEtを算出すると、
(a)の画像のエントロピー…1.75
(b)の画像のエントロピー…0.34
(c)の画像のエントロピー…2
となる。ただし、各画像は4階調の画像であるので、式1のnは0〜3としてエントロピーEtを算出した。
この算出結果から、適切な上限値と下限値を設けた範囲にエントロピーが入っていることを確認することで、画像中に特徴的な領域、つまりは有効な特徴点が存在するか否かを判定することが可能となる。
なお、ここではテクスチャ量の指標としてエントロピーを用いた場合について説明したが、テクスチャ量の指標として、上記文献1に記載された様々な指標を用いてもよい。また、画像Itがカラー(RGB)画像である場合は、これを輝度画像に変換してエントロピーを算出してもよいし、G成分等の単色成分においてエントロピーを算出してもよい。
また、ヒストグラムは画像Itの全体の強度に依存するため、2次微分画像等、画像全体の強度に影響されないように処理した結果を用いてもよい。また、画像Itは画像全体の構造を示せばよいので、縮小した画像にしてもよい。
このようにすることで、画像の輝度成分に依存せず、かつ高速にエントロピーを算出することができる。
ステップS402において特定のテクスチャが存在しないと判定された場合は、制御回路1100は、ステップS403に進み、動き推定実施フラグをOFFに設定する。また、特定のテクスチャが存在すると判定された場合は、制御回路1100は、ステップS404に進む。
ステップS404では、制御回路1100は、特徴点抽出回路1091に、第1のフレームメモリ110に格納された前フレームの特徴点を抽出させる。特徴点は、画像中の線分や線同士の交点等の特徴的な部分であり、Harrisオペレータ等の画像処理手法を用いて抽出することができる。
次に、ステップS405では、制御回路1100は、並進検出回路10942に、前フレームと現フレーム間での画像の並進量を検出(算出)させる。この処理は、後の動きベクトル検出処理で行われるテンプレートマッチングにおけるテンプレートの探索範囲よりも大きい動きがあるか否かを検出することを目的とする。
このような探索範囲よりも大きい動きは、望遠側での高速なパンニングや撮影を停止し忘れたまま撮影を続けたような場合に多く見られる。このような大きな動きがあるフレーム間で動きベクトル検出処理を行っても、正しい動きベクトルを算出することはできない。探索範囲を大きく設定することで大きな動きがある場合でも動きベクトルを正しく算出することは可能であるが、動きベクトル検出処理に要する時間が増加するため望ましくない。
そこで、本実施例においては、以下の文献2に記載された輝度投影相関を用いて画像間の並進量を算出する。
(文献2)長坂、宮武、「輝度投影相関を用いた実時間ビデオモザイク」電子情報通信学会論文誌D−II、Vol.J82−D−II、No.10、pp.1572−1580,1999
輝度投影相関を用いた並進量の検出について、図6および図7を用いて説明する。まず、図6に示すように、各画像に対して輝度投影を縦方向および横方向について行う。601,606はそれぞれ、時刻t,t+1での画像を表している。時刻tでの画像において、602は第1の投影方向としての横方向(X)、603は第2の投影方向としての縦方向(Y)を表している。輝度投影は、各投影方向に輝度を積算して輝度の1次元分布を作成することで行う。横方向の輝度投影ProjXtおよび縦方向の輝度投影ProjYtはそれぞれ、式2に従って行われる。
ただし、i=1〜w,j=1〜hである。It(i,j)は時刻tでの画像It(幅w、高さh)のうち位置(i,j)の輝度値である。図6には、時刻tでの画像のProjXを604に、ProjYを605に示す。
次に、輝度投影を用いた並進量の推定について、図7を用いて説明する。図7の(a)はProjYを、(b)はProjXを示す。701,703は図6に示した時刻tでの画像601の輝度投影を、702,704は時刻t+1での画像606の輝度投影を示す。時刻tから時刻t+1において、撮像装置1が図6中の矢印606で示すように動いた場合、先に求めた時刻tおよび時刻t+1での画像の輝度投影を用いて、式3に従って並進量を算出する。
mv_x=max(xcov(ProjYt,ProjYt+1))
mv_y=max(xcov(ProjXt,ProjXt+1)) (式3)
ただし、mv_xおよびmv_yはそれぞれ、横方向および縦方向の並進量(単位は画素)を表す。また、xcov(A,B)は、AとBの分布の相互共分散(AとBそれぞれについて平均値を除去した結果の相互相関)を示す。max(C)は、Cの中から最大値を有する位置を取得することを意味する。図7において、705はmv_xを示し、706はmv_yを示す。
以上のようにして時刻tおよび時刻t+1での画像の輝度投影をそれぞれ作成することで、これらの画像間の並進量を高速で算出することができる。
次に、ステップS406では、制御回路1100は、並進検出回路10942に、ステップS405で算出された並進量が所定値より小さいか否か、すなわち後のステップS407における動きベクトル算出時のテンプレートの探索範囲内か否かを判定する。並進量が探索範囲よりも大きいと判定された場合は、制御回路1100は、動きベクトル算出を正しく行えないとしてステップS403に進み、動き推定実施フラグをOFFに設定する。並進量が探索範囲内である場合は、ステップS407に進む。
ステップ407では、制御回路1100は、動きベクトル算出回路1092に、ステップS404で抽出された特徴点での動きベクトルを算出させる。動きベクトル算出回路1092は、現フレームのうち前フレームの特徴点に対応する対応点を求める。対応点は、特徴点とその周辺の領域を含むテンプレートを用いたテンプレートマッチング等の手法によって求められる。そして、動きベクトル算出回路1092は、前フレームの特徴点の座標と現フレームの対応点の座標とから、前フレームと現フレーム間での動きベクトルを算出する。動きベクトル算出回路1092は、同様の処理を、各フレームにおける複数の特徴点に対して行う。
さらに、制御回路1100は、算出された動きベクトルのうち信頼性が低い、すなわちテンプレートとの相関が所定値より小さい動きベクトルを無効な動きベクトルとして排除する。言い換えれば、制御回路1100は、信頼性が高い、すなわちテンプレートとの相関が所定値以上である動きベクトルを有効な動きベクトルとして取り込む。
続いてステップS408では、制御回路1100は、有効動きベクトル数検出回路10943に、ステップS407で算出された現時刻での動きベクトルのうち有効な動きベクトルの数と前時刻にて得られた有効な動きベクトルの数との差である変化量を求める。そして、その変化量が所定値(閾値)よりも小さいか否かを判定する。この判定によって、画像中に大きく含まれていた移動物体がフレームアウトする等、動きベクトルを正しく算出できないような画像の変化を検出することが可能となる。変化量が所定値より小さい場合は、制御回路1100は、ステップS403に進んで動き推定実施フラグをOFFに設定する。変化量が所定値以上である場合は、制御回路1100は、ステップS409に進む。
ステップS409では、制御回路1100は、動き推定回路1093に、ステップS407で算出された有効な動きベクトルを用いて撮像装置1の動きを推定させる。本実施例では、撮像装置1の動きの推定処理に、フレーム間での(対象フレームの前フレームに対する)画像変化量を表す射影ホモグラフィを用いる。動き推定回路1093での射影ホモグラフィ(画像変化量)Hの算出は、特許文献1(特開2008−259076号公報)に記載された方法を用いればよい。
次に、ステップS410では、制御回路1100は、動き推定実施フラグをONに設定する。そして、動き検出処理を終了し、ステップS302に進む。
図5のフローチャートを用いて、ステップS302で行われる像振れ補正量算出回路1095による像振れ補正量の算出処理について説明する。
ステップS501では、制御回路1100は、像振れ補正量算出回路1095に、ステップS301(ステップS409)で算出された画像変化量としての射影ホモグラフィHを用いて、像振れを低減するための防振パラメータである像振れ補正量を算出させる。
具体的には、像振れ補正量算出回路1095は、ステップS410で動き推定実施フラグがONに設定された場合は、射影ホモグラフィHを撮像装置1の動き(姿勢変化)に対応するように画像間の並進T、拡大縮小s、回転R、あおりvおよびせん断Kに分解する。分解方法については、特許文献1に開示された方法を用いればよい。
なお、T=[Tx,Ty]、R=[cosθ −sinθ;sinθ cosθ](2行2列)、v=[vx,vy]、K=[α tanφ; 0 1](2行2列)である。
また、ステップS403にて動き推定実施フラグがOFFに設定された場合は、画像変化量(並進T、拡大縮小s、回転R、あおりvおよびせん断K)は無しと設定する。
続いて、像振れ補正量算出回路1095は、複数の時刻で求めたT,s,R,vを用いて平滑化処理を行う。なお、せん断については補正する必要がないため、平滑化は行わない。平滑化されたT,s,R,vと平滑化前のこれらとの差分から、T,s,R,vに関する像振れ補正量としてのΔT,Δs,ΔR,Δvを算出する。せん断に関しては、Kをそのまま像振れ補正量とする。
次に、ステップS502において、制御回路1100は、動き推定実施フラグがONであるか否かを判定し、ONである場合は、ステップS501で算出された像振れ補正量(第1の画像補正量)を採用して、像振れ補正量の算出処理を終了する。一方、動き推定実施フラグがOFFの場合は、ステップS503に進む。
ステップS503では、制御回路1100は、像振れ補正量修正回路1096に、像振れ補正量の修正処理を行わせる。ここでは、動き推定が行われなかったフレームから動き推定を行ったフレームに移る場合に、像振れ補正効果を段階的に変化(増加)させるように像振れ補正量を補間(修正)する。具体的には、補正量ΔT,Δs,ΔR,Δvに段階的に変化(増加)する補正係数を乗じる。この処理によって補間設定された像振れ補正量が第2の画像補正量に相当する。この修正処理ついて、図8を用いて説明する。
図8の(a)は、動き推定実施フラグのON/OFFのフレームごとの変化をグラフとして示している。横軸がフレーム番号であり、縦軸が動き推定実施フラグのON/OFFである。図8の(a)は、番号nのフレームまでは動き推定を行っておらず、番号n+1のフレームから動き推定を行う場合を示している。
このような場合に、補正量ΔT,Δs,ΔR,Δvに対して、図8(b)に801で示すように時間的(段階的)に増加する補正係数を乗じることで、徐々に像振れ補正が行われるようする。具体的には、連続する複数の所定フレーム数mのフレームの動き推定実施フラグがONであった後、さらに連続する複数の所定フレーム数m′のフレーム(ここでは、これらの複数のフレームが対象フレームに相当する)に対する補正係数を段階的に増加させていく。補正係数を段階的に増加させることは、像振れ補正量を段階的に増加させることに相当する。これにより、ステップS301での動き検出処理における様々な判定によって断片的に動き推定が行われた場合でも、その時刻近傍の動き推定が行われていないフレームから映像を滑らかに変化させることが可能となる。
また、推定された動きの種類に応じて、乗じる補正係数の大きさ、つまりは像振れ補正量(第2の画像補正量)を変化させることも可能である。例えば、並進に関しては図8(b)に示すように補正係数を変化させる一方、回転に関しては図8(c)に804で示すように補正係数を変化させる。図8(c)は、並進の開始時の補正係数801の増加に対して回転の開始時の補正係数804が緩やかに増加する場合を示している。これにより、並進補正の開始時における回転の違和感を低下させることができる。
次に、ステップS303で行われる像振れ補正画像の生成処理について説明する。像振れ補正画像生成回路1097は、ステップS302で算出された補正量ΔT,Δs,ΔR,Δv,Kを用いて、映像形成回路103からの映像に対して像振れ補正処理を行う。具体的には、ΔT,Δs,ΔR,Δv,Kから平面射影行列Hfを復元し、これを現フレームに適用するよう式4に従って像振れが補正された画像(像振れ補正画像)を生成する。復元された平面射影行列Hfを像振れ補正量ということもできる。
a′=Hf×a (式4)
ただし、a′は像振れ補正画像であり、aは像振れ補正前の画像である。
以上説明したように、本実施例では、現フレームとの間で動きベクトルを正しく算出することができない、すなわち画像変化量を正しく算出又は決定できない前フレームを予め検出する。そして、段階的に変化するように設定した画像補正量を用いて像振れ補正処理を行う。これにより、画像変化量を得るのに適さないフレームを含む映像に対しても、映像の自然さを損なわない良好な像振れ補正処理を行うことができる。
なお、本実施例では、フレーム間で算出した動きベクトルから画像変化量を求め、これに基づいて像振れ補正処理を行う場合について説明した。しかし、特許文献2にて開示されているように、角速度センサや加速度センサ等の振れセンサの出力と動きベクトルとを併用して画像変化量を算出し、これに基づいて像振れ補正処理を行うようにしてもよい。
また、本実施例において、画像変化量を射影ホモグラフィHとしたが、自由度の低いアフィン変換やヘルマート変換等を用いてもよい。
次に、本発明の実施例2として、実施例1よりも像振れ補正処理の安定性を向上させることが可能な実施例について説明する。
図9には、本実施例の撮像装置2の構成を示す。図9において、実施例1にて図1に示した撮像装置1の構成と共通する構成要素には図1中の符号と同符号を付す。
901は像振れ補正回路であり、動き推定補正回路9011を有する。動き推定補正回路9011は、並進検出回路10942による並進量の検出結果と動き推定回路1093による動きの推定結果(画像変化量)のうち並進成分とを比較し、推定された動きが被写体の動きによるものか撮像装置1の動きによるものかを判別する。そして、被写体の動きによるとの判別結果に応じて、動きの推定結果を補正する処理を行う。これ以外の撮像装置2の動作は、実施例1の撮像装置1の動作と同様である。
本実施例の撮像装置2にて行われる動き検出処理について、図10を用いて説明する。この動き検出処理は、実施例1で図3に示したステップS301にて行われる処理である。図10に示す処理のうち、ステップS401〜S410については実施例1(図4)にて説明したステップS401〜S410と同じである。本実施例では、ステップS409とステップS410の間に、ステップS1001とステップS1002が挿入されている。
ステップS409で動き推定回路1093に有効な動きベクトルを用いて撮像装置1の動きを推定させた制御回路1100は、ステップS1001において、動き推定補正回路9011に以下の処理を行わせる。動き推定補正回路9011は、ステップS405で並進検出回路10942により検出された並進量とステップS409での動き推定処理で得られた並進成分とを比較する。そして、これらの間の差が所定値(閾値)以下か否か、言い換えればこれら互いに対応しているか否かを判定する。
具体的には、ステップS405で算出されたmv_x,mv_yと、ステップS409で算出された並進T=[Tx,Ty]の各成分とを、式5のように比較する。
|Tx−mv_x|≦δx
|Ty−mv_y|≦δy (式5)
ただし、δx,δyは所定値(閾値)である。
式5の2つの条件を共に満足する場合は、ステップS405で並進検出回路10942により検出された並進量とステップS409での動き推定処理で得られた並進成分とが互いに対応していると判定される。この場合は、制御回路1100は、ステップS409での動き推定結果を採用して、ステップS410に進む。
一方、式5の2つの条件のうち少なくとも一方を満足しない場合は、並進検出回路10942により検出された並進量と動き推定処理で得られた並進成分とが互いに対応していない、すなわちステップS409での動き推定結果が誤っているとみなす。この場合は、ステップS409での動き推定処理で得られた並進成分をステップS405で検出された並進量に置き換える。つまり、ステップS409での動き推定処理で得られた並進成分をステップS405で検出された並進量に補正する。これは、ステップS405で行われる並進量の検出処理の方が精度は劣るが1次元信号同士の処理であるため、処理としては安定していることによる。そして、制御回路1100は、ステップS410にて動き推定実施フラグをONとして、動き検出処理を終了する。
図11を用いて、ステップS1001とステップS1002が有効に機能する例について説明する。図11には、主被写体1101がフレームの中心に大きく写されている場合を示している。時刻tから時刻t+1に進む間に主被写体1101が回転運動をしており、かつ撮像装置2が並進運動をしているとする。
1102,1103はそれぞれ、主被写体1101の領域および背景領域の本来の動きベクトルを示す。しかし、時刻tと時刻t+1でのフレーム間で動きベクトルを検出すると、主被写体1101上にある各特徴点での動きベクトルは、撮像装置2の並進運動の動きベクトル1103との合成ベクトルとなる。
この例のように、主被写体がフレーム内の大きな領域を占める場合、主被写体上の特徴点の動きベクトルが多数算出される。そして、算出される多数の動きベクトルが主被写体の運動と撮像装置の運動との合成運動によって現れる動きベクトルとなるので、結果として誤った画像変化量が算出され、像振れ補正処理が適切に行われなくなる。
しかし、本実施例では、このような場合においても、ステップS405にて輝度投影を用いて検出される並進量が概ね撮像装置2の動きを表す。このため、ステップS405での並進量の検出結果とステップS409での動き推定結果の並進成分とを比較することで、画像変化量が正しく算出又は決定できないようなフレームを検出することが可能となる。
以上説明したように、本実施例では、フレーム中の大きな領域を占める主被写体が回転等の運動をしていることによって画像変化量を正しく算出又は決定できないフレームを検出して、動きの推定結果を補正する。これにより、運動している主被写体を撮影する場合でも、良好に像振れ補正処理がなされた映像を得ることができる。
上記各実施例では、撮像装置に、像振れ補正処理を行う画像処理装置を内蔵した場合について説明したが、本発明はこれに限らない。
例えば図13に示すように、撮像装置1401で撮像した画像をパーソナルコンピュータ1402に送信する。送信方法は、ケーブル方式、無線方式のいずれでもよく、インターネットやLANを介して送信してもよい。
そして、パーソナルコンピュータ1402において、実施例1,2にて説明した像振れ補正処理を行ってもよい。この場合、パーソナルコンピュータ1402が、図2〜5および図10にて説明した処理を画像処理プログラムに従って実行する画像処理装置として機能する。
また、この場合において、パーソナルコンピュータ1402は、撮像装置1401の動きの推定を取り込んだ映像を用いて行ってもよいし、撮像装置1401の振れセンサの出力が映像に記録されている場合に該出力を読みとって行ってもよい。
さらに、上記各実施例で説明した像振れ補正処理を行う画像処理装置を、撮像により生成された映像を再生表示するモニタやプロジェクタ等の映像表示装置に搭載してもよい。
以上説明した各実施例は代表的な例にすぎず、本発明の実施に際しては、各実施例に対して種々の変形や変更が可能である。
良好に像振れが低減された映像を生成することが可能な画像処理装置および撮像装置を提供できる。
1,2,1401 撮像装置
109 像振れ補正回路
1092 動きベクトル算出回路
1093 動き推定回路
1094 映像判定回路
1095 像振れ補正量算出回路
1096 像振れ補正量修正回路
1097 像振れ補正画像生成回路
1100 像振れ補正制御回路

Claims (6)

  1. 撮像装置により生成された動画像における複数のフレーム間での前記撮像装置の動きに伴う像振れを低減する像振れ低減処理を前記フレームごとに行う処理手段と、
    前記撮像装置の動きの情報を取得する動き情報取得手段と、
    前記動きの情報に基づいて、前記複数のフレームのうち対象フレームの、それよりも前に生成された前フレームに対する画像変化量を算出する画像変化量算出手段と、
    前記前フレームが前記画像変化量の算出対象画像として特定条件を満たすか否かを判定する判定手段とを有し、
    前記判定手段は、
    前記前フレームが特定のテクスチャを有し、
    前記対象フレームの前記前フレームに対する並進量が所定値よりも小さく、
    前記前フレームと前記対象フレームとの間の動きベクトルの数の変化量が所定値よりも小さい場合に、前記前フレームが前記特定条件を満たすと判定し、
    前記処理手段は、
    前記判定手段により前記前フレームが前記特定条件を満たすと判定された場合は、前記対象フレームに対して、前記画像変化量算出手段により算出された前記画像変化量に基づいて算出した第1の画像補正量を用いて前記像振れ低減処理を行い、
    前記判定手段により前記前フレームが前記特定条件を満たさないと判定された場合は、複数の前記対象フレームに対して、前記第1の画像補正量に向かって段階的に変化するように算出した第2の画像補正量を用いて前記像振れ低減処理を行うことを特徴とする画像処理装置。
  2. 前記処理手段は、前記画像変化量算出手段により算出された前記画像変化量と前記判定手段において求められた前記並進量とが互いに対応するか否かを判定し、対応しないと判定した場合は、前記画像変化量算出手段により算出された前記画像変化量に代えて前記並進量に基づいて前記第1の画像補正量を算出することを特徴とする請求項1に記載の画像処理装置。
  3. 前記処理手段は、前記動きの種類を判別し、判別した前記動きの種類に応じて前記第2の画像補正量を変更することを特徴とする請求項1または2に記載の画像処理装置。
  4. 撮像により動画像を生成する撮像系と、
    請求項1から3のいずれか一項に記載の画像処理装置を有することを特徴とする撮像装置。
  5. 撮像装置により生成された動画像における複数のフレーム間での前記撮像装置の動きに伴う像振れを低減する像振れ低減処理を前記フレームごとに行う処理ステップと、
    前記撮像装置の動きの情報を取得する動き情報取得ステップと、
    前記動きの情報に基づいて、前記複数のフレームのうち対象フレームの、それよりも前に生成された前フレームに対する画像変化量を算出する画像変化量算出ステップと、
    前記前フレームが前記画像変化量の算出対象画像として特定条件を満たすか否かを判定する判定ステップとを有し、
    前記判定ステップにおいて、
    前記前フレームが特定のテクスチャを有し、
    前記対象フレームの前記前フレームに対する並進量が所定値よりも小さく、
    前記前フレームと前記対象フレームとの間の動きベクトルの数の変化量が所定値よりも小さい場合に、前記前フレームが前記特定条件を満たすと判定し、
    前記処理ステップにおいて、
    前記判定ステップにて前記前フレームが前記特定条件を満たすと判定された場合は、前記対象フレームに対して、前記画像変化量算出ステップにて算出された前記画像変化量に基づいて算出した第1の画像補正量を用いて前記像振れ低減処理を行い、
    前記判定ステップにて前記前フレームが前記特定条件を満たさないと判定された場合は、複数の前記対象フレームに対して、前記第1の画像補正量に向かって段階的に変化するように算出した第2の画像補正量を用いて前記像振れ低減処理を行うことを特徴とする画像処理方法。
  6. コンピュータに、
    撮像装置により生成された動画像における複数のフレーム間での前記撮像装置の動きに伴う像振れを低減する像振れ低減処理を前記フレームごとに行う処理ステップと、
    前記撮像装置の動きの情報を取得する動き情報取得ステップと、
    前記動きの情報に基づいて、前記複数のフレームのうち対象フレームの、それよりも前に生成された前フレームに対する画像変化量を算出する画像変化量算出ステップと、
    前記前フレームが前記画像変化量の算出対象画像として特定条件を満たすか否かを判定する判定ステップとを含む処理を実行させ、
    前記判定ステップは、前記コンピュータに、
    前記前フレームが特定のテクスチャを有し、
    前記対象フレームの前記前フレームに対する並進量が所定値よりも小さく、
    前記前フレームと前記対象フレームとの間の動きベクトルの数の変化量が所定値よりも小さい場合に、前記前フレームが前記特定条件を満たすと判定させ、
    前記処理ステップは、前記コンピュータに、
    前記判定ステップにて前記前フレームが前記特定条件を満たすと判定された場合は、前記対象フレームに対して、前記画像変化量算出ステップにて算出された前記画像変化量に基づいて算出した第1の画像補正量を用いて前記像振れ低減処理を行わせ、
    前記判定ステップにて前記前フレームが前記特定条件を満たさないと判定された場合は、複数の前記対象フレームに対して、前記第1の画像補正量に向かって段階的に変化するように算出した第2の画像補正量を用いて前記像振れ低減処理を行わせることを特徴とする画像処理プログラム。
JP2010231327A 2010-10-14 2010-10-14 画像処理装置、撮像装置、画像処理方法および画像処理プログラム Expired - Fee Related JP5610967B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010231327A JP5610967B2 (ja) 2010-10-14 2010-10-14 画像処理装置、撮像装置、画像処理方法および画像処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010231327A JP5610967B2 (ja) 2010-10-14 2010-10-14 画像処理装置、撮像装置、画像処理方法および画像処理プログラム

Publications (3)

Publication Number Publication Date
JP2012085204A JP2012085204A (ja) 2012-04-26
JP2012085204A5 JP2012085204A5 (ja) 2013-11-28
JP5610967B2 true JP5610967B2 (ja) 2014-10-22

Family

ID=46243570

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010231327A Expired - Fee Related JP5610967B2 (ja) 2010-10-14 2010-10-14 画像処理装置、撮像装置、画像処理方法および画像処理プログラム

Country Status (1)

Country Link
JP (1) JP5610967B2 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4320677B2 (ja) * 2007-01-31 2009-08-26 三菱電機株式会社 手ぶれ補正装置
JP4958756B2 (ja) * 2007-12-13 2012-06-20 キヤノン株式会社 撮像装置及びその制御方法及びプログラム

Also Published As

Publication number Publication date
JP2012085204A (ja) 2012-04-26

Similar Documents

Publication Publication Date Title
US8004570B2 (en) Image processing apparatus, image-pickup apparatus, and image processing method
JP6271990B2 (ja) 画像処理装置、画像処理方法
JP5284048B2 (ja) 画像処理装置、撮像装置及び画像処理方法
JP6157242B2 (ja) 画像処理装置及び画像処理方法
US20060119710A1 (en) Systems and methods for de-blurring motion blurred images
JP6577703B2 (ja) 画像処理装置及び画像処理方法、プログラム、記憶媒体
US8164685B2 (en) Image pickup apparatus which performs aperture value control for a multiple exposure image, and recording medium
US10237488B2 (en) Image capturing apparatus and image capturing method
EP3661186B1 (en) Control apparatus, imaging apparatus, and program
US20150178595A1 (en) Image processing apparatus, imaging apparatus, image processing method and program
JP6656035B2 (ja) 画像処理装置、撮像装置および画像処理装置の制御方法
JP2008160300A (ja) 画像処理装置及び撮像装置
US20110311150A1 (en) Image processing apparatus
JP6582926B2 (ja) 移動情報取得装置、移動情報取得方法、及び、プログラム
JP2017098884A (ja) 移動検出装置、移動検出方法、及び、プログラム
US10368017B2 (en) Image processing apparatus, image processing method, and computer-readable recording medium
JP2009088935A (ja) 画像記録装置、画像補正装置及び撮像装置
JP6282133B2 (ja) 撮像装置、その制御方法、および制御プログラム
JP2010154306A (ja) 撮像制御装置、撮像制御プログラム及び撮像制御方法
US20120188437A1 (en) Electronic camera
CN106454066B (zh) 图像处理设备及其控制方法
JP5610967B2 (ja) 画像処理装置、撮像装置、画像処理方法および画像処理プログラム
JP2012085205A (ja) 画像処理装置、撮像装置、画像処理方法および画像処理プログラム
JP6486453B2 (ja) 画像処理装置、画像処理方法、プログラム
JP6381212B2 (ja) 撮像装置及びその制御方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131011

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131011

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140407

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140415

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140610

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140701

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140717

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140805

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140902

R151 Written notification of patent or utility model registration

Ref document number: 5610967

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees