(57)【特許請求の範囲】
【請求項１】
移動する被写体を撮影して得られた複数枚の画像を合成処理して合成画像とする画像処理装置であって、
前記複数枚の画像に応じて前記被写体が移動する際の基準点を示す基準軸を求める第１の算出手段と、
前記基準軸に応じて前記画像の各々に動きベクトルを検出するための検出領域を設定する設定手段と、
前記検出領域において前記被写体の動きベクトルを求める第２の算出手段と、
前記動きベクトルに基づいて前記複数枚の画像を合成処理して前記合成画像とする画像合成手段と、
を有し、
前記設定手段は、前記基準軸と前記画像の中心点とを結ぶ直線上に前記検出領域を設定することを特徴とする画像処理装置。
【請求項２】
移動する被写体を撮影して得られた複数枚の画像を合成処理して合成画像とする画像処理装置であって、
前記複数枚の画像に応じて前記被写体が移動する際の基準点を示す基準軸を求める第１の算出手段と、
前記基準軸に応じて前記画像の各々に動きベクトルを検出するための検出領域を設定する設定手段と、
前記検出領域において前記被写体の動きベクトルを求める第２の算出手段と、
前記動きベクトルに基づいて前記複数枚の画像を合成処理して前記合成画像とする画像合成手段と、
を有し、
前記設定手段は前記基準軸と前記画像の隅とを結ぶ直線上に前記検出領域を設定することを特徴とする画像処理装置。
【請求項３】
移動する被写体を撮影して得られた複数枚の画像を合成処理して合成画像とする画像処理装置であって、
前記複数枚の画像に応じて前記被写体が移動する際の基準点を示す基準軸を求める第１の算出手段と、
前記基準軸に応じて前記画像の各々に動きベクトルを検出するための検出領域を設定する設定手段と、
前記検出領域において前記被写体の動きベクトルを求める第２の算出手段と、
前記動きベクトルに基づいて前記複数枚の画像を合成処理して前記合成画像とする画像合成手段と、
を有し、
前記設定手段は、前記画像の中心点を基準として前記基準軸が位置する側の反対側に、前記検出領域を設定することを特徴とする画像処理装置。
【請求項４】
移動する被写体を撮影して得られた複数枚の画像を合成処理して合成画像とする画像処理装置であって、
前記複数枚の画像に応じて前記被写体が移動する際の基準点を示す基準軸を求める第１の算出手段と、
前記基準軸に応じて前記画像の各々に動きベクトルを検出するための検出領域を設定する設定手段と、
前記検出領域において前記被写体の動きベクトルを求める第２の算出手段と、
前記動きベクトルに基づいて前記複数枚の画像を合成処理して前記合成画像とする画像合成手段と、
を有し、
前記設定手段は、前記基準軸を中心とする円弧上に前記検出領域を設定することを特徴とする画像処理装置。
【請求項５】
移動する被写体を撮影して得られた複数枚の画像を合成処理して合成画像とする画像処理装置であって、
前記複数枚の画像に応じて前記被写体が移動する際の基準点を示す基準軸を求める第１の算出手段と、
前記基準軸に応じて前記画像の各々に動きベクトルを検出するための検出領域を設定する設定手段と、
前記検出領域において前記被写体の動きベクトルを求める第２の算出手段と、
前記動きベクトルに基づいて前記複数枚の画像を合成処理して前記合成画像とする画像合成手段と、
を有し、
前記設定手段は、前記基準軸を起点として前記画像において水平方向又は垂直方向に延びる直線上に前記検出領域を設定することを特徴とする画像処理装置。
【請求項６】
前記被写体は天体であり、前記基準軸は前記天体の日周運動における回転軸であることを特徴とする請求項１から５のいずれか１項に記載の画像処理装置。
【請求項７】
前記複数枚の画像を撮像する撮像手段と、
請求項１から６のいずれか１項に記載の画像処理装置と、
前記画像処理装置で得られた合成画像を記録する記録手段と、
を有することを特徴とする撮像装置。
【請求項８】
前記撮像装置の姿勢を検出する検出手段を備え、
前記設定手段は前記検出手段で検出された姿勢に応じて前記検出領域の設定を行うことを特徴とする請求項７に記載の撮像装置。
【請求項９】
移動する被写体を撮影して得られた複数枚の画像を合成処理して合成画像とする画像処理装置の制御方法であって、
前記複数枚の画像に応じて前記被写体が移動する際の基準点を示す基準軸を求める第１の算出ステップと、
前記基準軸に応じて前記画像の各々に動きベクトルを検出するための検出領域を設定する設定ステップと、
前記検出領域において前記被写体の動きベクトルを求める第２の算出ステップと、
前記動きベクトルに基づいて前記複数枚の画像を合成処理して前記合成画像とする画像合成ステップと、
を有し、
前記設定ステップでは、前記基準軸と前記画像の中心点とを結ぶ直線上に前記検出領域を設定することを特徴とする制御方法。
【請求項１０】
移動する被写体を撮影して得られた複数枚の画像を合成処理して合成画像とする画像処理装置の制御方法であって、
前記複数枚の画像に応じて前記被写体が移動する際の基準点を示す基準軸を求める第１の算出ステップと、
前記基準軸に応じて前記画像の各々に動きベクトルを検出するための検出領域を設定する設定ステップと、
前記検出領域において前記被写体の動きベクトルを求める第２の算出ステップと、
前記動きベクトルに基づいて前記複数枚の画像を合成処理して前記合成画像とする画像合成ステップと、
を有し、
前記設定ステップでは、前記基準軸と前記画像の隅とを結ぶ直線上に前記検出領域を設定することを特徴とする制御方法。
【請求項１１】
移動する被写体を撮影して得られた複数枚の画像を合成処理して合成画像とする画像処理装置の制御方法であって、
前記複数枚の画像に応じて前記被写体が移動する際の基準点を示す基準軸を求める第１の算出ステップと、
前記基準軸に応じて前記画像の各々に動きベクトルを検出するための検出領域を設定する設定ステップと、
前記検出領域において前記被写体の動きベクトルを求める第２の算出ステップと、
前記動きベクトルに基づいて前記複数枚の画像を合成処理して前記合成画像とする画像合成ステップと、
を有し、
前記設定ステップでは、前記画像の中心点を基準として前記基準軸が位置する側の反対側に、前記検出領域を設定することを特徴とする制御方法。
【請求項１２】
移動する被写体を撮影して得られた複数枚の画像を合成処理して合成画像とする画像処理装置の制御方法であって、
前記複数枚の画像に応じて前記被写体が移動する際の基準点を示す基準軸を求める第１の算出ステップと、
前記基準軸に応じて前記画像の各々に動きベクトルを検出するための検出領域を設定する設定ステップと、
前記検出領域において前記被写体の動きベクトルを求める第２の算出ステップと、
前記動きベクトルに基づいて前記複数枚の画像を合成処理して前記合成画像とする画像合成ステップと、
を有し、
前記設定ステップでは、前記基準軸を中心とする円弧上に前記検出領域を設定することを特徴とする制御方法。
【請求項１３】
移動する被写体を撮影して得られた複数枚の画像を合成処理して合成画像とする画像処理装置の制御方法であって、
前記複数枚の画像に応じて前記被写体が移動する際の基準点を示す基準軸を求める第１の算出ステップと、
前記基準軸に応じて前記画像の各々に動きベクトルを検出するための検出領域を設定する設定ステップと、
前記検出領域において前記被写体の動きベクトルを求める第２の算出ステップと、
前記動きベクトルに基づいて前記複数枚の画像を合成処理して前記合成画像とする画像合成ステップと、
を有し、
前記設定ステップでは、前記基準軸を起点として前記画像において水平方向又は垂直方向に延びる直線上に前記検出領域を設定することを特徴とする制御方法。
【請求項１４】
請求項１から６のいずれか１項に記載の画像処理装置の各手段をコンピュータに実行させるためのコンピュータに読み取り可能な制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、その制御方法、および制御プログラム、並びに撮像装置に関し、特に、日周運動で動く天体の撮影を行った結果得られた複数枚の画像を画像合成処理する画像処理装置に関する。
【背景技術】
【０００２】
一般に、天体を撮影する際には、星などの天体の光量は微量であるので、３０秒又は１分などの長時間の露光を行う必要がある。そして、天体は地球の自転に合わせて日周運動をしているので、長時間の露光を行うと天体は点像にならず光跡となってしまう。このため、天体を撮影する際には、一般に日周運動で動く天体の動きに合わせて天体を追尾できるようにした天体専用の赤道儀などを用いて撮影が行われている。
【０００３】
ところが、赤道儀は、高価でしかも重く使用の際にはセッティングを行う必要があるばかりでなくその操作も難しい。よって、赤道儀を用いることなく、天体が光跡にならない程度の露光時間で複数枚の撮影を行って、画像間で生じる日周運動による天体のずれを補正して１枚の画像に合成することが行われている。これによって、天体を光跡とすることなく、長秒露光した際と同等の露光で撮像することができる。
【０００４】
上記の画像合成手法においては、まず画像を複数のブロックに分割して、ブロックの各々について天体の動きベクトルを算出する。そして、当該動きベクトルに基づいて天体の動きを算出して画像のずれ補正を行っている。
【０００５】
このような画像合成手法として、例えば、被写体の明るさに応じてトータルの露光時間を決定し、天体が光跡にならない程度の露光時間でＮ回分割露光を行うようにしたものがある（特許文献１参照）。そして、ここでは、画像間の動きベクトルに応じて画像のずれ補正を行って、１枚の画像を合成するようにしている。さらに、動きベクトルを算出する際、その探索範囲を焦点距離に応じて切り替えるようにしたものがある（特許文献２参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−２５９１８４号公報
【特許文献２】特開平４−１８０４８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところが、特許文献１および２ともに、画素数が多いと画像のずれ補正に要する時間が増加するばかりでなく処理負荷が増大し、さらに撮影に要する時間が長くなってしまう。その結果、星雲などの天体を撮影する場合には、被写体である天体が撮影範囲から出てしまって所望の画像が得られないことがある。
【０００８】
このような状況に対処するため、例えば、画像の所定の箇所に動きベクトルを検出するためのクロップ領域を設定することがある。しかしながら、天体撮影の場合には方角によって日周運動の方向が相違するので、画像の適切な箇所にクロップ領域を設定しないと、精度よく動きベクトルを算出することが困難となる。
【０００９】
そこで、本発明の目的は、精度が高く、かつ高速で処理が可能な位置にクロップ領域を設定して、画像のずれ補正に必要な動きベクトルを高速かつ効率的に算出することのできる画像処理装置、その制御方法、および制御プログラム、並びに撮像装置を提供することにある。
【課題を解決するための手段】
【００１０】
上記の目的を達成するため、本発明による画像処理装置は、移動する被写体を撮影して得られた複数枚の画像を合成処理して合成画像とする画像処理装置であって、前記複数枚の画像に応じて前記被写体が移動する際の基準点を示す基準軸を求める第１の算出手段と、前記基準軸に応じて前記画像の各々に動きベクトルを検出するための検出領域を設定する設定手段と、前記検出領域において前記被写体の動きベクトルを求める第２の算出手段と、前記動きベクトルに基づいて前記複数枚の画像を合成処理して前記合成画像とする画像合成手段と、を有し、前記設定手段は、前記基準軸と前記画像の中心点とを結ぶ直線上に前記検出領域を設定することを特徴とする。
【００１１】
本発明による撮像装置は、前記複数枚の画像を撮像する撮像手段と、上記の画像処理装置と、前記画像処理装置で得られた合成画像を記録する記録手段と、を有することを特徴とする。
【００１２】
本発明による制御方法は、移動する被写体を撮影して得られた複数枚の画像を合成処理して合成画像とする画像処理装置の制御方法であって、前記複数枚の画像に応じて前記被写体が移動する際の基準点を示す基準軸を求める第１の算出ステップと、前記基準軸に応じて前記画像の各々に動きベクトルを検出するための検出領域を設定する設定ステップと、前記検出領域において前記被写体の動きベクトルを求める第２の算出ステップと、前記動きベクトルに基づいて前記複数枚の画像を合成処理して前記合成画像とする画像合成ステップと、を有し、前記設定ステップでは、前記基準軸と前記画像の中心点とを結ぶ直線上に前記検出領域を設定することを特徴とする。
【００１３】
本発明による制御プログラムは、上記の画像処理装置の各手段をコンピュータに実行させるためのコンピュータに読み取り可能な制御プログラムである。
【発明の効果】
【００１４】
本発明によれば、画像合成の際のずれ補正に必要な動きベクトルを高速かつ効率的に算出することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施の形態による画像処理装置を備える撮像装置の一例についてその構成を示すブロック図である。
【図２】図１に示すカメラにおいて動きベクトルの算出を行う際のシステム制御部の機能を説明するための図である。
【図３】図１に示すカメラにおいて画像合成処理の際に行われるクロップ領域設定処理を説明するためのフローチャートである。
【図４】図１に示すカメラにおいて行われるクロップ領域の設定の第１の例を説明するための図である。
【図５】図１に示すカメラにおいて行われるクロップ領域の設定の第２の例を説明するための図である。
【図６】図１に示すカメラにおいて行われるクロップ領域の設定の第３の例を説明するための図である。
【発明を実施するための形態】
【００１６】
以下に、本発明の実施の形態による画像処理装置の一例について図面を参照して説明する。
【００１７】
図１は、本発明の実施の形態による画像処理装置を備える撮像装置の一例についてその構成を示すブロック図である。
【００１８】
図示の撮像装置１００は、例えば、デジタルカメラ（以下単にカメラと呼ぶ）であり、撮影レンズユニット（以下単に撮影レンズと呼ぶ）１０３を有している。撮影レンズ１０３の後段には、絞り機能を備える機械式シャッター１０１が配置されており、撮影レンズ１０３を介して撮像部２２に光学像（被写体像）が入射する。なお、撮影レンズ１０３の前面側には、撮影レンズ１０３、シャッター１０１、および撮像部２２を保護するためのバリア１０２が配置されている。
【００１９】
撮像部２２はＣＣＤ又はＣＭＯＳセンサーなどの撮像素子を有しており、撮像素子は光学像に応じた電気信号（アナログ信号）を出力する。そして、当該アナログ信号はＡ／Ｄ変換器２３によってデジタル信号（画像データ）に変換される。
【００２０】
撮像部２２に備えられた撮像素子は、例えば、Ｒ（赤）、Ｇ（緑）、およびＢ（青）の画素が規則的に配列されたベイヤー配列を有している。なお、撮像素子の画素配列はベイヤー配列に限定されない。また、システム制御部５０はタイミング発生回路（図示せず）によって撮像部２２、撮影レンズ１０３、およびシャッター１０１を制御する。
【００２１】
さらに、図示のカメラでは、撮像素子のリセットタイミングを制御することによって、撮像素子における蓄積時間を制御することができる（所謂電子シャッター）。この電子シャッターは、例えば、動画撮影に用いられる。
【００２２】
画像処理部２４は、Ａ／Ｄ変換器２３からの画像データ或いはメモリ制御部１５からの画像データに対して所定の画素補間処理およびシェーディング補正などの各種補正処理を行うとともに、ホワイトバランス処理、γ補正処理、および色変換処理などを行う。さらに、画像処理部２４は画像の切り出しおよび変倍処理を行って電子ズームを行う。
【００２３】
シェーディング補正の際には、画像処理部２４は画像データについて撮影レンズ１０３の特性および撮像部２２の収差などの特性に起因して生じるシェーディングを補正するため、画像における輝度レベルを補正する。画像処理部２４は、シェーディング補正処理の後、画像データについて画像における白基準を白に合わせるホワイトバランス（ＷＢ）処理を行う。
【００２４】
ここでは、シェーディング補正を行う際には、画像処理部２４は、撮像素子の２次元の座標（位置）に応じて画素毎にゲインを乗算する補正を行う。また、ＷＢ処理の際には、画像処理部２４は、ベイヤー配列のＲ、Ｇ（Ｇ１およびＧ２）、およびＢ毎に互いに異なるゲインを乗算する処理を行う。
【００２５】
画像合成部５４は、複数の画像データを画像合成処理して一つの画像データを生成する。図示の例では、画像合成部５４は、単純な加算合成又は加算平均合成のみではなく、合成対象の画像データの領域の各々において最も明るい又は暗い領域を選択して、これら領域を合成して１枚の画像データを生成する比較明合成処理又は比較暗合成処理を行うことができる。なお、画像合成部５４を画像処理部２４と一体に構成するようにしてもよい。
【００２６】
加えて、画像処理部２４は画像データについて所定の演算処理を行う。システム制御部５０は画像処理部２４で得られた演算結果に基づいて露光制御部および測距制御部（ともに図示せず）を制御して、ＴＴＬ方式のＡＦ処理、ＡＥ処理、およびＥＦ処理を行う。
【００２７】
メモリ制御部１５は、システム制御部５０の制御下でＡ／Ｄ変換器２３、画像処理部２４、およびメモリ３２を制御する。そして、Ａ／Ｄ変換器２３の出力である画像データは画像処理部２４およびメモリ制御部１５を介して、或いは直接メモリ制御部１５を介してメモリ３２に書き込まれる。表示部２８は、例えば、ＴＦＴ  ＬＣＤであり、メモリ制御部１５はメモリ３２に書き込まれた画像データを表示部２８に画像として表示する。
【００２８】
撮像部２２において所定の周期で露光および読み出しを繰り返し行って得られた画像データを画像処理部２４およびメモリ制御部１５を介して表示部２８に表示するようにすれば、ライブビュー表示および電子ファインダーを実現することができる。表示部２８は、システム制御部５０の制御によってその表示をオン又はオフすることができ、表示をオフとした場合には、カメラ１００の電力消費を大幅に低減することができる。
【００２９】
前述のように、メモリ３２には撮影の結果得られた画像データ（静止画像および動画像）が格納される。そして、メモリ３２は所定枚数の静止画像および所定時間の動画像を格納するための十分な記憶容量を備えている。これによって、複数枚の静止画像を連続して撮影する連写撮影又はパノラマ撮影の場合においても、高速かつ大量の画像データの書き込みをメモリ３２に行うことができる。なお、メモリ３２はシステム制御部５０の作業領域として用いることができる。
【００３０】
システム制御部５０は、カメラ１００全体の制御を司る。不揮発性メモリ５６は、例えば、フラッシュＲＯＭであり、不揮発性メモリ５６には制御プログラムなどが格納されており、システム制御部５０は当該制御プログラムを実行して、後述の各種処理を行う。なお、不揮発性メモリ５６にはシステム情報を記憶する領域およびユーザー設定情報を記憶する領域が設けられており、カメラ起動の際には、これら領域から各種情報および設定が読み出されて復元される。
【００３１】
システムメモリ５２として、例えば、ＲＡＭが用いられる。システムメモリ５２には、システム制御部５０の動作用の定数、変数、そして、不揮発性メモリ５６から読み出された制御プログラムなどが展開される。また、システム制御部はメモリ３２および表示部２８などを制御して表示制御を行う。システムタイマー５３は各種制御に用いる時間および内蔵の時計の時間を計測する計時部である。
【００３２】
操作部７０には各種ボタンおよびタッチパネルなどが備えられている。例えば、各種ボタンとしてシャッタースイッチ（ＳＷ１およびＳＷ２）、メニューボタン、セットボタン、マクロボタン、フラッシュ設定ボタン、単写／連写／セルフタイマー切り替えボタンなどがある。さらには、各種ボタンとして、メニュー移動＋（プラス）ボタン、メニュー移動−（マイナス）ボタン、撮影画質選択ボタン、露出補正ボタン、および日付／時間設定ボタンなどがある。
【００３３】
シャッターボタンの操作途中でシャッタースイッチＳＷ１がオンとなって、システム制御部５０はＡＦ（オートフォーカス）処理、ＡＥ（自動露出）処理、ＡＷＢ（オートホワイトバランス）処理などを開始する。シャッターボタンの操作完了でシャッタースイッチＳＷ２がオンとなって、システム制御部５０は露光処理、現像処理、圧縮・伸長処理、および記録処理などの一連の処理を開始する。
【００３４】
電源部３０として、例えば、アルカリ電池又はリチウム電池などの一次電池、ＮｉＣｄ電池、ＮｉＭＨ電池、又はＬｉ電池等の二次電池が用いられ、さらに、電源部３０にはＡＣアダプターなどが備えられている。そして、電源部３０は電源制御部８０によって制御される。
【００３５】
記録媒体２００は、カメラ１００に対して着脱可能であり、例えば、メモリカード又はハードディスクが用いられる。記録媒体２００はインタフェース（Ｉ／Ｆ）１８によってカメラ１００に接続される。
【００３６】
なお、システム制御部５０は後述する回転軸および動きベクトルを算出する際、演算部５１によって所定の演算を実行する。
【００３７】
図２は、図１に示すカメラにおいて動きベクトルの算出を行う際のシステム制御部５０の機能を説明するための図である。
【００３８】
図示のように、システム制御部５０は、機能ブロックとして動きベクトル検出部２０１、動きベクトル算出部２０２、動きベクトル補正演算部２０３、および回転軸算出部２０４を有している。動きベクトル検出部２０１は、画像データを受けて画像間における被写体（天体）の動きベクトルを検出する。動きベクトル算出手段２０２は、動きベクトル補正演算部２０３と協調して、動きベクトル補正演算部２０３で得られたベクトル補正量および動きベクトル検出部で検出された動きベクトルに応じて補正後の動きベクトルを求める。
【００３９】
動きベクトル補正演算部２０３は、動きベクトル算出部２０２によって得られた補正後の動きベクトルと焦点距離および絞り値と応じてベクトル補正量を求める。回転軸算出部２０４は動きベクトル補正演算部２０３によって求められたベクトル補正量に基づいて動きベクトルを補正する。そして、回転軸算出部２０４は、画像から抽出した複数のサーチエリア毎に得られた動きベクトルの向きおよびスカラー量に応じて、動きベクトルの向きとスカラー量がゼロとなる地点を求める。そして、回転軸算出部２０４は、サーチエリア毎のゼロ地点を統合して、画像の回転軸（基準点を示す基準軸）を算出する。このようにして算出された動きベクトルデータおよび回転軸データは、例えば、メモリ３２に一旦格納される。
【００４０】
ここで、図１に示すカメラ１００で行われる複数の画像データを合成する合成処理について説明する。
【００４１】
画像合成部５４は合成処理として、前述の加算合成処理、加重加算合成処理、比較明合成処理、および比較暗合成処理の４つの合成処理を行うことができる。
【００４２】
いま、合成前の画像データの画素値をＩ＿ｉ（ｘ，ｙ）（ｉ＝１〜Ｎ，ｘ，ｙは画像における座標を示す）とし、Ｎ枚（Ｎは２以上の整数）の画像を合成処理した後の合成画像の画素値をＩ（ｘ，ｙ）とする。なお、画素値として、ベイヤー配列のＲ、Ｇ１、Ｇ２、およびＢの信号値を用いるようにしてもよく、Ｒ、Ｇ１、Ｇ２、およびＢの信号のグループから得られる輝度信号値（輝度値）を用いるようにしてもよい。
【００４３】
さらに、ベイヤー配列における信号ついて、画素毎にＲ、Ｇ、およびＢの信号が存在するように補間処理した後、画素毎に輝度値を求めるようにしてもよい。輝度値を求める際には、例えば、輝度値をＹとすると、Ｙ＝０．３×Ｒ＋０．５９×Ｇ＋０．１１×ＢなどのＲ、Ｇ、およびＢの信号を加重加算して算出する手法が用いられる。
【００４４】
複数の画像データ間において必要に応じて位置合わせなどの処理を行って、互いに対応づけられた画素値について、画像合成部５４は、次の式（１）によって加算合成処理を行う。
【００４５】
Ｉ（ｘ，ｙ）＝Ｉ＿１（ｘ，ｙ）＋Ｉ＿２（ｘ，ｙ）＋・・・＋Ｉ＿Ｎ（ｘ，ｙ）    （１）
画像合成部５４は画素別にＮ枚の画像の画素値を加算合成処理したものを合成画像データとする。
【００４６】
加重加算合成処理においては、画像合成部５４は、ａｋを重み付け係数として、次の式（２）によって加重加算合計処理を行う。
【００４７】
Ｉ（ｘ，ｙ）＝（ａ１×Ｉ＿１（ｘ，ｙ）＋ａ２×Ｉ＿２（ｘ，ｙ）＋・・・＋ａＮ×Ｉ＿Ｎ（ｘ，ｙ））／Ｎ      （２）
画像合成部５４は画素別にＮ枚の画像の画素値の加重加算合成処理したものを合成画像データとする。
【００４８】
比較明合成処理においては、画像合成部５４は、次の式（３）によって比較明合成処理を行う。
【００４９】
Ｉ（ｘ，ｙ）＝ｍａｘ（Ｉ＿１（ｘ，ｙ），Ｉ＿２（ｘ，ｙ），・・・，Ｉ＿Ｎ（ｘ，ｙ））      （３）
画像合成部５４は画素別にＮ枚の画像の画素値の最大値を選択して当該最大値を合成画像データとする。
【００５０】
比較暗合成処理においては、画像合成部５４は、次の式（４）によって比較暗合成処理を行う。
【００５１】
Ｉ（ｘ，ｙ）＝ｍｉｎ（Ｉ＿１（ｘ，ｙ），Ｉ＿２（ｘ，ｙ），・・・，Ｉ＿Ｎ（ｘ，ｙ））      （４）
画像合成部５４は画素別にＮ枚の画像の画素値の最小値を選択して当該最小値を合成画像データとする。
【００５２】
ここで、比較明合成処理を行う際には、次の手順で比較明合成処理が行われる。まず、ユーザーの操作に応じて、システム制御部５０はインターバル撮影を開始する。そして、システム制御部５０は、複数枚の画像のうち１枚目の画像を、メモリ３２に設定された合成用メモリ領域に初期値としてセットする。
【００５３】
次に、システム制御部５０の制御下で、画像合成部５４は２枚目の画像と合成用メモリ領域にセットされた１枚目の画像とにおいて同一の画素における輝度を比較する。そして、画像合成部５４は、輝度が高い方の画素値を合成用メモリ領域に格納する。
【００５４】
上記の処理を、１枚目の画像と２枚目の画像の全画素について行って、画像合成部５４は合成用メモリ領域に１枚目の画像と２枚目の画像との合成画像を格納する。
【００５５】
続いて、画像合成部５４は３枚目以降の画像について、合成用メモリ領域に格納された合成画像と当該処理すべき画像（つまり、ここでは、３枚目の画像）と同一の画素について輝度を比較する。そして、輝度が高い方の画素値を合成用メモリ領域に格納する。さらに、画像合成部５４は当該処理を合成画像および処理すべき画像の全画素について行う。
【００５６】
このようにして、画像合成部５４は、処理すべき画像の全てについて上述の処理を行う。つまり、画像合成部５４は、次の式（５）で示す処理を行うことになる。
【００５７】
Ｉ２（ｘ，ｙ）＝ｍａｘ（Ｉ＿１（ｘ，ｙ），Ｉ＿２（ｘ，ｙ））
Ｉ３（ｘ，ｙ）＝ｍａｘ（Ｉ２（ｘ，ｙ），Ｉ＿３（ｘ，ｙ））
‥‥
Ｉ（ｘ，ｙ）＝ＩＮ（ｘ，ｙ）＝ｍａｘ（ＩＮ−１（ｘ，ｙ），Ｉ＿Ｎ（ｘ，ｙ））      （５）
図３は、図１に示すカメラ１００において画像合成処理の際に行われるクロップ領域設定処理を説明するためのフローチャートである。なお、図示のフローチャートに係る処理は、システム制御部５０の制御下で行われる。
【００５８】
クロップ領域設定処理を開始する際には、システム制御部５０は、ユーザーの操作に応じて画像（ベクトル抽出用画像）の撮影を開始する（ステップＳ３０１）。複数枚の撮影が完了すると、システム制御部５０の制御下で、画像処理部２４は当該複数枚の画像を縮小処理する（ステップＳ３０２）。
【００５９】
続いて、システム制御部５０は、図２に関連して説明したようにして、縮小処理によって得られた画像について動きベクトル検出および回転軸の算出を行う（ステップＳ３０３）。画像の回転軸（基準軸）を求めた後、システム制御部５０は正確な動きベクトルを求めるため、回転軸に応じてクロップ領域（検出領域）を設定する（ステップＳ３０４）。なお、クロップ領域の設定については後述する。
【００６０】
クロップ領域は複数設定され、クロップ領域を設定した後、システム制御部５０はクロップ領域において、図２で説明した動きベクトル算出部２０２および回転軸算出部２０４によって動きベクトルを算出する（ステップＳ３０５）。なお、この処理においては回転軸まで算出する必要はない。
【００６１】
次に、システム制御部５０は所定数のクロップ領域を設定したか否かを判定する（ステップＳ３０６）。所定数のクロップ領域が設定されていないと（ステップＳ３０６において、ＮＯ）、システム制御部５０はステップＳ３０４の処理に戻って、クロップ領域の設定を行う。
【００６２】
一方、所定数のクロップ領域を設定すると（ステップＳ３０６において、ＹＥＳ）、つまり、ステップＳ３０４のクロップ領域設定とステップＳ３０５の動きベクトル算出が所定数のクロップ領域について行われると、システム制御部５０はクロップ領域設定処理を終了する。そして、システム制御部５０はクロップ領域毎に求められた動きベクトルを統合する処理を行って、画像合成部５４は統合された動きベクトルに応じて画像合成処理を行う。
【００６３】
ここで、図３で説明したクロップ領域の設定について説明する。
【００６４】
図４は、図１に示すカメラにおいて行われるクロップ領域の設定の第１の例を説明するための図である。
【００６５】
まず、前述のようにして、画像の回転軸４３を求める。なお、この回転軸４３は画像の領域外であってもよい。天体４６は極軸と呼ばれる軸を中心として日周運動をしている。精度よく動きベクトルを抽出するためには、画像において単位時間に日周運動する天体４６の移動量が大きい方が有利であり、天体４６が動かないエリアにクロップ領域を設定すると正しく動きベクトルを得ることができない。
【００６６】
一般に、天体４６を撮影する際には、例えば、所謂星雲などを撮影する星雲写真と景色などを一緒に撮影する星景写真などがある。星景写真の場合には、通常、画像の下部に風景などが入るので、当該エリアにクロップ領域を設定することは好ましくない。
【００６７】
よって、図４に示すように、クロップ領域４５を設定する際には、回転軸４３を起点として、回転軸４３と当該回転軸４３から遠い画像の上端部とを結ぶ直線４２上、又は回転軸４３と画像の中心点４４とを結ぶ直線４１上において、画像中心点４４よりも画像の上側であって、画像中心点４４を基準として回転軸４３が位置する側の反対側の画像にクロップ領域４５を設定することが望ましい。このようにして、クロップ領域４５を設定すれば、回転軸４３から離れた天体４６のエリアをクロップ領域４５として設定することができる結果、精度の高い動きベクトルを得ることができる。
【００６８】
なお、回転軸４３と当該回転軸４３から遠い画像の上端部とを結ぶ直線４２上、回転軸４３と画像中心軸を結ぶ直線４１上のそれぞれにクロップ領域を設定してもよいし、一方の直線上に複数のクロップ領域を設定してもよい。
【００６９】
図５は、図１に示すカメラにおいて行われるクロップ領域の設定の第２の例を説明するための図である。
【００７０】
前述のようにして、回転軸４３を求めた後（ここでも、回転軸４３は画像の領域外にあってもよい）、回転軸４３から等距離のエリアにクロップ領域４５を設定する。つまり、回転軸４３を中心とする円弧上に複数のクロップ領域４５を設定する。前述のように、回転軸４３から離れている方が精度よく動きベクトルを検出することができるので、クロップ領域４５から回転軸４３までの距離は長い方が有利である。
【００７１】
一方、回転軸４３からの距離を最大とした場合には、画像が存在しなくなってクロップ領域４５を設定することができない。このため、画像のサイズを考慮して、クロップ領域４５と回転軸４３との距離を設定することが望ましい。また、画像の下部には風景などが入る可能性があるので、回転軸４３から等距離な曲線上において画像の上側にクロップ領域４５を設定することが望ましい。
【００７２】
ここでは、上述のように、回転軸４３から延びる直線４１および４２上にクロップ領域４５を設定する手法と、回転軸４３から等距離に位置するようにクロップ領域４３を設定する手法について説明した。さらに、精度よく動きベクトルを算出したい場合には、これら２つの手法を組み合わせれば、画像全体を細かいブロック単位に分けたサーチエリアについても動きベクトルを求めることができる。その結果、天体を追尾しつつ撮影する場合においては好ましい結果が得られる。
【００７３】
また、星雲写真を撮影する場合には、望遠レンズなどを用いて画角を狭めて撮影することが多い。この場合、画像から天体の日周運動における回転軸の求めることが難しいことがある。この場合には、カメラに別に搭載されたジャイロセンサー（検出手段）などによって検出された煽り角度および方位（姿勢）などの情報を組み合わせれば、正しく回転軸を求めることができる。
【００７４】
図６は、図１に示すカメラにおいて行われるクロップ領域の設定の第３の例を説明するための図である。
【００７５】
図６においては、回転軸４３が画像の中心部分に近いエリアに位置している。天体４６の日周運動を撮影した画像から回転軸４３を求めた際、当該回転軸４３が画像の領域内にある場合には、極軸が画像内に存在することになる。この場合、画像内においては、天体４６は極軸を中心に回転するように動くので、極軸周辺においてはほとんど天体４６の動きがなく正しく動きベクトルを求めることが難しい。
【００７６】
よって、回転軸４３が画像中心部における所定のエリアに存在する場合、回転軸４３から水平方向および垂直方向に延びる直線６１および６２上にクロップ領域４５を設定する。なお、回転軸４３から画像の上端に延びる直線上にクロップ領域を設定するようにしてもよい。より精度を高めるためには、回転軸４３から水平方向および垂直方向に延びる直線と回転軸４３から画像端に延びる直線とを組み合わせてクロップ領域を設定することが望ましい。
【００７７】
このように、本発明では、天体などの移動体を撮影した複数枚の画像を合成する際に、天体の日周運動の回転軸に基づいて、画像にクロップ領域を設定して、当該クロップ領域において天体の動きベクトルを求める。これによって、画像合成の際のずれ補正に必要な動きベクトルを高速かつ効率的に算出することができる。
【００７８】
上述の説明から明らかなように、図１に示す例では、画像処理部２４およびシステム制御部５０が第１の算出手段、設定手段、および第２の算出手段として機能する。また、システム制御部５０および画像合成部５４は画像合成手段として機能する。なお、撮影レンズ１０３、シャッター１０２、撮像部２２、およびＡ／Ｄ変換部２３によって撮像手段が構成される。
【００７９】
以上、本発明について実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
【００８０】
例えば、上記の実施の形態の機能を制御方法として、この制御方法を画像処理装置に実行させるようにすればよい。また、上述の実施の形態の機能を有するプログラムを制御プログラムとして、当該制御プログラムを画像処理装置が備えるコンピュータに実行させるようにしてもよい。なお、制御プログラムは、例えば、コンピュータに読み取り可能な記録媒体に記録される。
【００８１】
［その他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００８２】
１５  メモリ制御部
２２  撮像部
２４  画像処理部
２８  表示部
３２  メモリ
５０  システム制御部
５１  演算部
５４  画像合成部
７０  操作部
１０３  撮影レンズ
【図１】
0006525692.tif 000002
【図２】
0006525692.tif 000003
【図３】
0006525692.tif 000004
【図４】
0006525692.tif 000005
【図５】
0006525692.tif 000006
【図６】
0006525692.tif 000007