(57)【特許請求の範囲】
【請求項１】
移動する被写体を主被写体として連続的に撮影することにより得られた当該主被写体を示す複数の画像情報を取得する取得手段と、
前記取得手段によって取得された複数の画像情報に基づいて、当該複数の画像情報における撮影時間が隣接する画像情報間の対応する画素毎の差分を示す差分情報を算出する算出手段と、
前記算出手段によって算出された差分情報に基づいて、当該差分情報により示される差分画像の周辺分布を示す周辺分布情報を導出する導出手段と、
前記導出手段によって導出された周辺分布情報に基づいて、前記複数の画像情報により示される画像における前記主被写体の画像領域を検出する検出手段と、
前記検出手段によって検出された前記主被写体の画像領域に対応し、かつ撮影時間が隣接する画像情報を対象として、予め定められたパターン・マッチングを行うことにより前記主被写体の移動量を求め、当該移動量を、前記複数の画像情報から前記主被写体を含むパノラマ画像を示す画像情報を生成するために用いられる当該複数の画像情報からの画像情報の切り出し幅として決定する決定手段と、
前記決定手段によって決定された切り出し幅で前記複数の画像情報から前記主被写体を含む画像を示す画像情報を切り出す切出手段と、
前記切出手段によって切り出された画像情報を合成することにより前記パノラマ画像を示す画像情報を生成する生成手段と、
を備えた画像処理装置。
【請求項２】
前記画像情報により示される画像における前記主被写体の中心位置を示す位置情報を取得する第２の取得手段と、
前記第２の取得手段によって取得された位置情報により示される中心位置を中心とした所定幅の領域を除く領域の前記周辺分布の度数を低減する低減手段と、
を更に備えた請求項１記載の画像処理装置。
【請求項３】
移動する被写体を主被写体として連続的に撮影することにより当該主被写体を示す複数の画像情報を取得し、
取得した複数の画像情報に基づいて、当該複数の画像情報における撮影時間が隣接する画像情報間の対応する画素毎の差分を示す差分情報を算出し、
算出した差分情報に基づいて、当該差分情報により示される差分画像の周辺分布を示す周辺分布情報を導出し、
導出した周辺分布情報に基づいて、前記複数の画像情報により示される画像における前記主被写体の画像領域を検出し、
検出した前記主被写体の画像領域に対応し、かつ撮影時間が隣接する画像情報を対象として、予め定められたパターン・マッチングを行うことにより前記主被写体の移動量を求め、当該移動量を、前記複数の画像情報から前記主被写体を含むパノラマ画像を示す画像情報を生成するために用いられる当該複数の画像情報からの画像情報の切り出し幅として決定し、
決定した切り出し幅で前記複数の画像情報から前記主被写体を含む画像を示す画像情報を切り出し、
切り出した画像情報を合成することにより前記パノラマ画像を示す画像情報を生成する
画像処理方法。
【請求項４】
移動する被写体を主被写体として連続的に撮影することにより得られた当該主被写体を示す複数の画像情報を取得する取得ステップと、
前記取得ステップによって取得された複数の画像情報に基づいて、当該複数の画像情報における撮影時間が隣接する画像情報間の対応する画素毎の差分を示す差分情報を算出する算出ステップと、
前記算出ステップによって算出された差分情報に基づいて、当該差分情報により示される差分画像の周辺分布を示す周辺分布情報を導出する導出ステップと、
前記導出ステップによって導出された周辺分布情報に基づいて、前記複数の画像情報により示される画像における前記主被写体の画像領域を検出する検出ステップと、
前記検出ステップによって検出された前記主被写体の画像領域に対応し、かつ撮影時間が隣接する画像情報を対象として、予め定められたパターン・マッチングを行うことにより前記主被写体の移動量を求め、当該移動量を、前記複数の画像情報から前記主被写体を含むパノラマ画像を示す画像情報を生成するために用いられる当該複数の画像情報からの画像情報の切り出し幅として決定する決定ステップと、
前記決定ステップによって決定された切り出し幅で前記複数の画像情報から前記主被写体を含む画像を示す画像情報を切り出す切出ステップと、
前記切出ステップによって切り出された画像情報を合成することにより前記パノラマ画像を示す画像情報を生成する生成ステップと、
をコンピュータに実行させる画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法及び画像処理プログラムに係り、特に、移動する被写体を主被写体として連続的に撮影することにより得られた複数の画像情報に基づいてパノラマ画像を示す画像情報を生成する画像処理装置、画像処理方法及び画像処理プログラムに関する。
【背景技術】
【０００２】
移動する被写体を主被写体として連続的に撮影することにより当該主被写体を示す複数の画像情報を取得し、各画像情報により示される画像から短冊状のスリット画像を切り出して時系列順に並べて合成することにより、パノラマ画像を生成することができる。
【０００３】
この種のパノラマ画像の生成に関する従来の技術として、特許文献１には、携帯型のカメラでスリットカメラの機能を実現することを目的として、移動している被写体を同一地点において連続的に撮影する撮像手段と、前記撮像手段により得られる各画像から、短冊状のスリット画像を切り出す切り出し手段と、前記切り出し手段により切り出された各スリット画像を合成する合成手段と、前記合成手段により合成された画像を表示する表示手段と、を有し、前記被写体と撮影装置との間の距離及び当該被写体の速度に基づいて、前記撮影装置のフレーム速度及びスリット幅を算出する算出手段を備え、前記撮像手段が、前記算出手段により算出されたフレーム速度で前記被写体を撮影し、前記切り出し手段が、前記算出手段により算出されたスリット幅でスリット画像を切り出す技術が開示されている。
【０００４】
また、特許文献２には、厳密な機器や操作を必要としなくても、より正確なパノラマ画像を作成でき、そのパノラマ画像内の対象物までの距離に基づいたステレオ表示が可能なパノラマステレオ画像生成表示方法を得ることを目的として、連続する撮影画像からスリット状に切り出したスリット画像を結合し、左目視用及び右目視用のパノラマ画像を生成して、立体表示を行うパノラマステレオ画像生成表示方法において、連続する２つのフレーム画像を比較し、基準フレーム画像を２等分する中心線から等距離にある２本の基準線上の各画素におけるオプティカルフローの大きさを算出する工程と、オプティカルフローの大きさに基づいて、スリット画像の幅をそれぞれ決定し、基準フレーム画像からスリット画像をそれぞれ切り出す工程と、右目用及び左目用のパノラマ画像を生成するためのスリット画像をそれぞれ結合し、右目用及び左目用のパノラマ画像をそれぞれ生成する工程とを有する技術が開示されている。
【特許文献１】特開２００５−２０３８４５号公報
【特許文献２】特開平１１−１６４３２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献１及び特許文献２に開示されている技術によって歪みの少ないパノラマ画像を生成するためには、スリット画像の幅を適切に決定する必要があり、そのためには撮影された画像における移動する主被写体の画像領域を検出して当該主被写体の移動速度を正確に導出する必要があるが、各特許文献に開示されている技術では、上記主被写体の画像領域をユーザが指定する必要があるため、煩雑な操作を必要とする、という問題点があった。
【０００６】
なお、フレーム画像が一例として図１５に示されるものである、撮影領域内の一部を右から左へ列車が通過する動画像情報を用いて、当該列車の画像領域を考慮せずにスリット画像を切り出し、時系列順に並べて合成することによってパノラマ画像を生成したところ、一例として図１６に示されるように、列車の進行方向に対する長さが極端に短く、歪みの大きなパノラマ画像となってしまった。
【０００７】
本発明は上記問題点を解決するためになされたものであり、煩雑な操作を要することなく、歪みの少ないパノラマ画像を生成することができる画像処理装置、画像処理方法及び画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、請求項１に記載の画像処理装置は、移動する被写体を主被写体として連続的に撮影することにより得られた当該主被写体を示す複数の画像情報を取得する取得手段と、前記取得手段によって取得された複数の画像情報に基づいて、当該複数の画像情報における撮影時間が隣接する画像情報間の対応する画素毎の差分を示す差分情報を算出する算出手段と、前記算出手段によって算出された差分情報に基づいて、当該差分情報により示される差分画像の周辺分布を示す周辺分布情報を導出する導出手段と、前記導出手段によって導出された周辺分布情報に基づいて、前記複数の画像情報により示される画像における前記主被写体の画像領域を検出する検出手段と、前記検出手段によって検出された前記主被写体の画像領域に対応し、かつ撮影時間が隣接する画像情報を対象として、予め定められたパターン・マッチングを行うことにより前記主被写体の移動量を求め、当該移動量を、前記複数の画像情報から前記主被写体を含むパノラマ画像を示す画像情報を生成するために用いられる当該複数の画像情報からの画像情報の切り出し幅として決定する決定手段と、前記決定手段によって決定された切り出し幅で前記複数の画像情報から前記主被写体を含む画像を示す画像情報を切り出す切出手段と、前記切出手段によって切り出された画像情報を合成することにより前記パノラマ画像を示す画像情報を生成する生成手段と、を備えている。
【０００９】
請求項１に記載の画像処理装置によれば、取得手段により、移動する被写体を主被写体として連続的に撮影することにより得られた、当該主被写体を示す複数の画像情報が取得される。なお、上記撮影には、ＣＣＤ（Charge Coupled Device）エリアセンサ、ＣＭＯＳ（Complementary Metal Oxide Semiconductor）イメージ・センサ等の固体撮像素子による撮影が含まれる。
【００１０】
ここで、本発明では、算出手段により、前記取得手段によって取得された複数の画像情報に基づいて、当該複数の画像情報における撮影時間が隣接する画像情報間の対応する画素毎の差分を示す差分情報が算出され、導出手段により、前記算出手段によって算出された差分情報に基づいて、当該差分情報により示される差分画像の周辺分布を示す周辺分布情報が導出される。
【００１１】
また、本発明では、検出手段により、前記導出手段によって導出された周辺分布情報に基づいて、前記複数の画像情報により示される画像における前記主被写体の画像領域が検出され、決定手段により、前記検出手段によって検出された前記主被写体の画像領域に対応し、かつ撮影時間が隣接する画像情報を対象として、予め定められたパターン・マッチングを行うことにより前記主被写体の移動量が求められ、当該移動量が、前記複数の画像情報から前記主被写体を含むパノラマ画像を示す画像情報を生成するために用いられる当該複数の画像情報からの画像情報の切り出し幅として決定される。
【００１２】
そして、本発明では、切出手段により、前記決定手段によって決定された切り出し幅で前記複数の画像情報から前記主被写体を含む画像を示す画像情報が切り出され、生成手段により、前記切出手段によって切り出された画像情報を合成することにより前記パノラマ画像を示す画像情報が生成される。
【００１３】
このように、請求項１に記載の画像処理装置によれば、移動する被写体を主被写体として連続的に撮影することにより得られた、当該主被写体を示す複数の画像情報を取得し、取得した複数の画像情報に基づいて、当該複数の画像情報における撮影時間が隣接する画像情報間の対応する画素毎の差分を示す差分情報を算出し、算出した差分情報に基づいて、当該差分情報により示される差分画像の周辺分布を示す周辺分布情報を導出し、導出した周辺分布情報に基づいて、前記複数の画像情報により示される画像における前記主被写体の画像領域を検出し、検出した前記主被写体の画像領域に対応し、かつ撮影時間が隣接する画像情報を対象として、予め定められたパターン・マッチングを行うことにより前記主被写体の移動量を求め、当該移動量を、前記複数の画像情報から前記主被写体を含むパノラマ画像を示す画像情報を生成するために用いられる当該複数の画像情報からの画像情報の切り出し幅として決定し、決定した切り出し幅で前記複数の画像情報から前記主被写体を含む画像を示す画像情報を切り出し、切り出した画像情報を合成することにより前記パノラマ画像を示す画像情報を生成しているので、主被写体の画像領域をユーザが指定するという煩雑な操作を要することなく、歪みの少ないパノラマ画像を生成することができる。
【００１４】
なお、本発明は、請求項２に記載の発明のように、前記画像情報により示される画像における前記主被写体の中心位置を示す位置情報を取得する第２の取得手段と、前記第２の取得手段によって取得された位置情報により示される中心位置を中心とした所定幅の領域を除く領域の前記周辺分布の度数を低減する低減手段と、を更に備えてもよい。これにより、主被写体の画像領域の検出精度を向上させることができる結果、より歪みの少ないパノラマ画像を生成することができる。
【００１５】
一方、上記目的を達成するために、請求項３に記載の画像処理方法は、移動する被写体を主被写体として連続的に撮影することにより当該主被写体を示す複数の画像情報を取得し、取得した複数の画像情報に基づいて、当該複数の画像情報における撮影時間が隣接する画像情報間の対応する画素毎の差分を示す差分情報を算出し、算出した差分情報に基づいて、当該差分情報により示される差分画像の周辺分布を示す周辺分布情報を導出し、導出した周辺分布情報に基づいて、前記複数の画像情報により示される画像における前記主被写体の画像領域を検出し、検出した前記主被写体の画像領域に対応し、かつ撮影時間が隣接する画像情報を対象として、予め定められたパターン・マッチングを行うことにより前記主被写体の移動量を求め、当該移動量を、前記複数の画像情報から前記主被写体を含むパノラマ画像を示す画像情報を生成するために用いられる当該複数の画像情報からの画像情報の切り出し幅として決定し、決定した切り出し幅で前記複数の画像情報から前記主被写体を含む画像を示す画像情報を切り出し、切り出した画像情報を合成することにより前記パノラマ画像を示す画像情報を生成するものである。
【００１６】
従って、請求項３に記載の画像処理方法によれば、請求項１に記載の発明と同様に作用するので、請求項１に記載の発明と同様に、主被写体の画像領域をユーザが指定するという煩雑な操作を要することなく、歪みの少ないパノラマ画像を生成することができる。
【００１７】
更に、上記目的を達成するために、請求項４に記載の画像処理プログラムは、移動する被写体を主被写体として連続的に撮影することにより得られた当該主被写体を示す複数の画像情報を取得する取得ステップと、前記取得ステップによって取得された複数の画像情報に基づいて、当該複数の画像情報における撮影時間が隣接する画像情報間の対応する画素毎の差分を示す差分情報を算出する算出ステップと、前記算出ステップによって算出された差分情報に基づいて、当該差分情報により示される差分画像の周辺分布を示す周辺分布情報を導出する導出ステップと、前記導出ステップによって導出された周辺分布情報に基づいて、前記複数の画像情報により示される画像における前記主被写体の画像領域を検出する検出ステップと、前記検出ステップによって検出された前記主被写体の画像領域に対応し、かつ撮影時間が隣接する画像情報を対象として、予め定められたパターン・マッチングを行うことにより前記主被写体の移動量を求め、当該移動量を、前記複数の画像情報から前記主被写体を含むパノラマ画像を示す画像情報を生成するために用いられる当該複数の画像情報からの画像情報の切り出し幅として決定する決定ステップと、前記決定ステップによって決定された切り出し幅で前記複数の画像情報から前記主被写体を含む画像を示す画像情報を切り出す切出ステップと、前記切出ステップによって切り出された画像情報を合成することにより前記パノラマ画像を示す画像情報を生成する生成ステップと、をコンピュータに実行させるものである。
【００１８】
従って、請求項４に記載の画像処理プログラムによれば、コンピュータに対して請求項１に記載の発明と同様に作用させることができるので、請求項１に記載の発明と同様に、主被写体の画像領域をユーザが指定するという煩雑な操作を要することなく、歪みの少ないパノラマ画像を生成することができる。
【発明の効果】
【００１９】
本発明によれば、移動する被写体を主被写体として連続的に撮影することにより得られた、当該主被写体を示す複数の画像情報を取得し、取得した複数の画像情報に基づいて、当該複数の画像情報における撮影時間が隣接する画像情報間の対応する画素毎の差分を示す差分情報を算出し、算出した差分情報に基づいて、当該差分情報により示される差分画像の周辺分布を示す周辺分布情報を導出し、導出した周辺分布情報に基づいて、前記複数の画像情報により示される画像における前記主被写体の画像領域を検出し、検出した前記主被写体の画像領域に対応し、かつ撮影時間が隣接する画像情報を対象として、予め定められたパターン・マッチングを行うことにより前記主被写体の移動量を求め、当該移動量を、前記複数の画像情報から前記主被写体を含むパノラマ画像を示す画像情報を生成するために用いられる当該複数の画像情報からの画像情報の切り出し幅として決定し、決定した切り出し幅で前記複数の画像情報から前記主被写体を含む画像を示す画像情報を切り出し、切り出した画像情報を合成することにより前記パノラマ画像を示す画像情報を生成しているので、主被写体の画像領域をユーザが指定するという煩雑な操作を要することなく、歪みの少ないパノラマ画像を生成することができる、という効果が得られる。
【発明を実施するための最良の形態】
【００２０】
以下、図面を参照して、本発明を実施するための最良の形態について詳細に説明する。なお、ここでは、本発明を、静止画像及び動画像の双方の撮影を行う機能を有するデジタル電子スチルカメラ（以下、「デジタルカメラ」という。）と、当該デジタルカメラによる動画像の撮影によって得られた複数の画像データに基づいてパノラマ画像を生成するパーソナル・コンピュータ（以下、「ＰＣ」という。）と、を含んで構成された画像処理システムに適用した場合について説明する。
【００２１】
［第１の実施の形態］
まず、図１を参照して、本発明が適用された画像処理システム９０の構成を説明する。
【００２２】
同図に示すように、本実施の形態に係る画像処理システム９０は、静止画撮影機能及び動画撮影機能を有するデジタルカメラ１０と、当該デジタルカメラ１０の動画撮影機能による撮影によって得られた複数の画像データに基づいてパノラマ画像を生成するＰＣ２０と、を備えている。
【００２３】
本実施の形態に係る画像処理システム９０では、デジタルカメラ１０の動画撮影機能により、当該デジタルカメラ１０を固定した状態で、移動する被写体を主被写体として連続的に撮影することにより、各々静止画像を示す複数の画像データを取得する。そして、ＰＣ２０により、デジタルカメラ１０によって取得された上記複数の画像データを取り込み、当該画像データに基づいてパノラマ画像を生成する。
【００２４】
次に、図２を参照して、画像処理システム９０で特に重要な役割を有するＰＣ２０の電気系の要部構成を説明する。
【００２５】
同図に示すように、本実施の形態に係るＰＣ２０は、ＰＣ２０全体の動作を司るＣＰＵ（中央処理装置）２０Ａと、ＣＰＵ２０Ａによる各種処理プログラムの実行時のワークエリア等として用いられるＲＡＭ２０Ｂと、各種制御プログラムや各種パラメータ等が予め記憶されたＲＯＭ２０Ｃと、各種情報を記憶する記憶手段として機能するハードディスク２０Ｄと、各種情報を入力するために用いられるキーボード２０Ｅと、各種情報を表示するために用いられるディスプレイ２０Ｆと、外部装置との間の所定の通信規格（例えば、ＵＳＢ（Universal Serial Bus）、ＩＥＥＥ１３９４等）による通信を司る外部機器接続インタフェース２０Ｇと、が備えられており、これら各部はシステムバスＢＵＳにより電気的に相互に接続されている。
【００２６】
従って、ＣＰＵ２０Ａは、ＲＡＭ２０Ｂ、ＲＯＭ２０Ｃ、及びハードディスク２０Ｄに対するアクセス、キーボード２０Ｅを介した各種入力情報の取得、ディスプレイ２０Ｆに対する各種情報の表示、及び外部機器接続インタフェース２０Ｇに接続された外部装置との間の各種情報の授受を各々行うことができる。本実施の形態に係る画像処理システム９０では、外部機器接続インタフェース２０Ｇにデジタルカメラ１０が接続されている。従って、ＣＰＵ２０Ａは、デジタルカメラ１０との間の各種情報の授受を行うことができる。
【００２７】
次に、図３を参照して、本実施の形態に係る画像処理システム９０の作用を説明する。なお、図３は、ユーザによってパノラマ画像の生成の実行を指示する指示入力がキーボード２０Ｅを介して行われたときにＰＣ２０のＣＰＵ２０Ａによって実行される画像処理プログラムの処理の流れを示すフローチャートであり、当該プログラムはハードディスク２０Ｄに予め記憶されている。また、錯綜を回避するために、ここでは、デジタルカメラ１０による撮影により、上記パノラマ画像の生成に用いる複数の画像データ（以下、「処理対象画像データ群」という。）が得られ、当該処理対象画像データ群が上記外部機器接続インタフェース２０Ｇを介してＰＣ２０のハードディスク２０Ｄに記憶されている場合について説明する。
【００２８】
まず、同図のステップ１００では、処理対象画像データ群をハードディスク２０Ｄから読み出すことにより取得し、次のステップ１０２では、変数Ｉに初期設定として１を代入する。
【００２９】
次のステップ１０４では、上記ステップ１００の処理によって取得した処理対象画像データ群のうち、Ｉ番目のフレーム画像（静止画像）を示す画像データと、（Ｉ＋１）番目のフレーム画像を示す画像データとの間の対応する画素毎の差分を示す差分情報を算出する。
【００３０】
図４（Ａ）には、図１５に示したフレーム画像と次のフレーム画像の各画像データ間の差分情報により示される差分画像が示されている。この場合、各フレーム画像において主被写体である列車のみが移動しており、差分画像における背景部分の画素値は０（零）に近い値となっている。
【００３１】
次のステップ１０６では、上記ステップ１０４の処理によって算出された差分情報に基づいて、当該差分情報により示される差分画像の周辺分布を示す周辺分布情報を導出する。
【００３２】
なお、ここでいう「周辺分布」とは、各画素の画素値を水平方向又は垂直方向に加算し、各行又は各列にどれだけ画素値の高い画素が分布しているかを示すものを意味する。大きさがｍ画素×ｎ画素の画像におけるｉ行，ｊ列の画素値をＶ［ｉ，ｊ］で表すと、垂直方向の周辺分布Ｐｖ［ｉ］は次の（１）式で算出することができ、水平方向の周辺分布Ｐｈ［ｊ］は次の（２）式で算出することができる。
【００３３】
【数１】
0004920525.tif 000002
なお、本実施の形態に係る画像処理プログラムでは、主被写体の移動方向に直交する方向の周辺分布を算出するものとされている。従って、処理対象画像データ群が、その１枚のフレーム画像が図１５に示されるものである場合には、主被写体（列車）の移動方向が水平方向であるので、画像処理プログラムのステップ１０６では、垂直方向の周辺分布Ｐｖ［ｉ］を（１）式により算出することになる。
【００３４】
図４（Ｂ）は、差分画像が図４（Ａ）に示されるものである場合の周辺分布を示すグラフであり、縦軸が行位置ｉを示し、横軸が度数Ｐｖ［ｉ］を示している。
【００３５】
次のステップ１０８では、上記ステップ１０６の処理によって導出された周辺分布に基づいて、Ｉ番目及び（Ｉ＋１）番目のフレーム画像における主被写体の画像領域を検出する。
【００３６】
一例として図４（Ｂ）に示されるように、上記ステップ１０６の処理によって導出された周辺分布では、移動している主被写体の部分の度数が、背景部分に比較して大きくなるため、周辺分布の度数が大きい部分を主被写体の画像領域とする。このときの主被写体の画像領域の検出方法としては、例えば、一例として図５（Ａ）に示すように、周辺分布の度数が最大度数の所定割合（同図に示す例では、２０％）以上の部分を主被写体の画像領域とする方法や、一例として図５（Ｂ）に示すように、周辺分布における両端からの累積度数の全累積度数に対する割合が所定割合（同図に示す例では、５％）となる領域を除く領域を主被写体の画像領域とする方法等を適用することができる。
【００３７】
図６は、図４（Ｂ）に示される周辺分布における両端からの累積度数の全累積度数に対する割合が１５％となる領域を除く領域を主被写体の画像領域として検出した場合の検出結果を示したものである。なお、同図におけるグレーの領域（暗くなっていない領域）が、検出された主被写体の画像領域である。
【００３８】
次のステップ１１０では、上記ステップ１０８の処理によって検出された主被写体の画像領域に対応する画像データに基づいて、主被写体を含むパノラマ画像を示す画像データを生成するために用いられる、Ｉ番目のフレーム画像の画像データからの画像データ（スリット画像）の切り出し幅（スリット幅）を決定する。
【００３９】
なお、本実施の形態に係る画像処理プログラムでは、Ｉ番目及び（Ｉ＋１）番目のフレーム画像の各画像データにおける上記主被写体の画像領域に対応する画像データのみを対象とし、予め定められた従来既知のパターン・マッチング手法を適用して上記切り出し幅を決定する。Ｉ番目のフレーム画像と（Ｉ＋１）番目のフレーム画像との間でパターン・マッチングを行った場合、Ｉ番目のフレーム画像と（Ｉ＋１）番目のフレーム画像との間の主被写体の移動量が画素単位で求められる。そして、当該移動量を上記切り出し幅として適用することにより、歪みの少ないパノラマ画像を生成することができる。
【００４０】
次のステップ１１２では、上記ステップ１１０の処理によって決定された切り出し幅を示す幅情報をハードディスク２０Ｄの所定領域に記憶し、次のステップ１１４にて、変数Ｉの値を１だけインクリメントした後、次のステップ１１６にて、変数Ｉの値が処理対象画像データ群に含まれるフレーム画像の数に一致したか否かを判定し、否定判定となった場合は上記ステップ１０４に戻る一方、肯定判定となった時点でステップ１１８に移行する。
【００４１】
以上のステップ１０４〜ステップ１１６の繰り返し処理により、１番目のフレーム画像から、処理対象画像データ群に含まれる最終フレーム画像の１枚前のフレーム画像までの各フレーム画像の切り出し幅を示す幅情報が、ハードディスク２０Ｄの所定領域に記憶される。
【００４２】
そこで、ステップ１１８では、ハードディスク２０Ｄの上記所定領域から、１番目から最終フレーム画像の１枚前のフレーム画像までの各フレーム画像（以下、「処理対象フレーム画像」という。）に対応する切り出し幅を示す幅情報を読み出した後、各処理対象フレーム画像を示す画像データから、対応する切り出し幅でスリット画像となる画像データを切り出す。このとき、ＣＰＵ２０Ａは、各フレーム画像における主被写体の移動方向に対する同一位置（例えば、フレーム画像における当該移動方向に対する中心位置や、フレーム画像における当該移動方向の最下流に位置する端部位置等）が基準位置とされ、かつ対応する切り出し幅が当該移動方向に対する切り出し幅とされた状態で、各フレーム画像を示す画像データから画像データを切り出す。
【００４３】
次のステップ１２０では、上記ステップ１１８の処理によって切り出された画像データを、撮影時間の時系列順で、主被写体の移動方向に対してつなぎ合わせる（合成する）ことによりパノラマ画像を示す画像データを生成し、その後に本画像処理プログラムを終了する。
【００４４】
図７には、処理対象画像データ群が、その１枚のフレーム画像が図１５に示されるものである場合における、以上の画像処理プログラムにより生成された画像データにより示されるパノラマ画像が示されている。同図に示されるように、本実施の形態に係る画像処理システム９０によれば、一例として図１６に示されるものに比較して、歪みが著しく少ないパノラマ画像を生成することができる。
【００４５】
上記画像処理プログラムのステップ１００の処理が本発明の取得手段及び取得ステップに、ステップ１０４の処理が本発明の算出手段及び算出ステップに、ステップ１０６の処理が本発明の導出手段及び導出ステップに、ステップ１０８の処理が本発明の検出手段及び検出ステップに、ステップ１１０の処理が本発明の決定手段及び決定ステップに、ステップ１１８の処理が本発明の切出手段及び切出ステップに、ステップ１２０の処理が本発明の生成手段及び生成ステップに、各々相当する。
【００４６】
以上詳細に説明したように、本実施の形態では、移動する被写体を主被写体として連続的に撮影することにより得られた、当該主被写体を示す複数の画像情報を取得し、取得した複数の画像情報（ここでは、処理対象画像データ群）に基づいて、当該複数の画像情報における撮影時間が隣接する画像情報間の対応する画素毎の差分を示す差分情報を算出し、算出した差分情報に基づいて、当該差分情報により示される差分画像の周辺分布を示す周辺分布情報を導出し、導出した周辺分布情報に基づいて、前記複数の画像情報により示される画像における前記主被写体の画像領域を検出し、検出した前記主被写体の画像領域に対応する画像情報に基づいて、前記複数の画像情報から前記主被写体を含むパノラマ画像を示す画像情報を生成するために用いられる当該複数の画像情報からの画像情報の切り出し幅を決定し、決定した切り出し幅で前記複数の画像情報から前記主被写体を含む画像を示す画像情報を切り出し、切り出した画像情報を合成することにより前記パノラマ画像を示す画像情報を生成しているので、主被写体の画像領域をユーザが指定するという煩雑な操作を要することなく、歪みの少ないパノラマ画像を生成することができる。
【００４７】
また、本実施の形態では、画像データの切り出し幅を決定する際の処理対象とする画像領域を主被写体の画像領域のみに制限しているので、撮影画像全体を処理対象とする場合に比較して、処理時間を短縮することができる。
【００４８】
［第２の実施の形態］
本第２の実施の形態では、主被写体の中心位置を中心とした所定幅の領域を除く領域の周辺分布の度数を低減する場合の形態例について説明する。なお、本第２の実施の形態に係る画像処理システム９０の構成は、上記第１の実施の形態に係るもの（図１参照。）と同一であるので、ここでの説明は省略する。
【００４９】
以下、図８を参照して、本第２の実施の形態に係る画像処理システム９０の作用を説明する。なお、図８は、ユーザによってパノラマ画像の生成の実行を指示する指示入力がキーボード２０Ｅを介して行われたときに本第２の実施の形態に係るＰＣ２０のＣＰＵ２０Ａによって実行される画像処理プログラムの処理の流れを示すフローチャートであり、当該プログラムはハードディスク２０Ｄに予め記憶されている。また、同図における、図３に示される上記第１の実施の形態に係る画像処理プログラムと同様の処理を行うステップについては当該プログラムと同一のステップ番号を付して、その説明を省略する。
【００５０】
ステップ１０１では、ステップ１００の処理によって取得した処理対象画像データ群により示される画像内の主被写体の中心位置を示す位置情報を予め定められた方法で取得する。なお、本実施の形態に係る画像処理プログラムでは、当該予め定められた方法として、主被写体は画像の中央付近に写っている、という仮定から、当該画像の中央位置を主被写体の中心位置として取得する方法を採っているが、これに限らず、例えば、実際に写っている主被写体の中心位置をユーザに手動で指定させることにより取得する方法等、他の方法とすることもできる。
【００５１】
その後、ステップ１０７では、上記ステップ１０１の処理によって取得された位置情報により示される中心位置を中心とした所定幅の領域を除く領域の上記周辺分布の度数を低減する処理（以下、「度数低減処理」という。）を実行する。
【００５２】
本実施の形態に係る画像処理プログラムでは、上記度数低減処理として、一例として図９（Ａ）に示されるように、主被写体の中心位置から所定距離以上離れている領域の度数を０（零）とする処理を適用しているが、これに限らず、例えば、一例として図９（Ｂ）に示されるように、周辺分布における、主被写体の中心位置に対応する度数を平均値とする正規分布を示す値を、対応する画素位置毎に周辺分布の度数に対して乗算することにより、主被写体の中心位置からの距離が遠くなるほど度数を低減する処理等、他の処理を適用することもできることは言うまでもない。
【００５３】
フレーム画像が一例として図１０に示されるものである、撮影領域内の中央部を列車が通過し、上部で木の葉が揺れているシーンを撮影することにより得られた動画像データを処理対象とした場合、上記画像処理プログラムによって得られる差分画像は、一例として図１１（Ａ）に示されるように、列車と木の葉の部分が目立つ状態となり、このフレーム画像に対応する周辺分布は、一例として図１１（Ｂ）に示されるように、中央部から上部にかけて度数の高い領域が広がるものとなる。
【００５４】
この周辺分布に基づいて、上記第１の実施の形態に係る画像処理プログラムにより主被写体の画像領域を検出すると、一例として図１２に示されるように、木の葉を含む領域を主被写体の画像領域として検出してしまい、適切な画像領域を検出することができない。これに対し、本第２の実施の形態に係る画像処理プログラムでは、一例として図１３に示されるように、主被写体の中心位置を中心とした所定幅の領域を除く領域の周辺分布の度数を低減しているので、一例として図１４に示されるように、主被写体の画像領域を適切に検出することができる。
【００５５】
上記画像処理プログラムのステップ１０１の処理が本発明の第２の取得手段に、ステップ１０７の処理が本発明の低減手段に、各々相当する。
【００５６】
以上詳細に説明したように、本第２の実施の形態では、上記第１の実施の形態と同様の効果を奏することができると共に、前記画像情報により示される画像における前記主被写体の中心位置を示す位置情報を取得し、取得した位置情報により示される中心位置を中心とした所定幅の領域を除く領域の前記周辺分布の度数を低減しているので、主被写体の画像領域の検出精度を向上させることができる結果、より歪みの少ないパノラマ画像を生成することができる。
【００５７】
なお、上記各実施の形態では、ＰＣ２０によってパノラマ画像を生成する場合について説明したが、本発明はこれに限定されるものではなく、例えば、デジタルカメラ１０によってパノラマ画像を生成する形態とすることもできる。この場合、上記各実施の形態に係る画像処理プログラム（図３，図８参照。）をデジタルカメラ１０で実行することになる。この場合も、上記各実施の形態と同様の効果を奏することができる。
【００５８】
また、上記各実施の形態では、動画像の撮影によって取得された複数の画像データを用いてパノラマ画像を生成する場合について説明したが、本発明はこれに限定されるものではなく、例えば、連写によって取得された複数の画像データを用いてパノラマ画像を生成する形態とすることもできる。この場合も、上記各実施の形態と同様の効果を奏することができる。
【００５９】
また、上記各実施の形態では、本発明を画像処理プログラムの実行によるソフトウェアにより実現した場合について説明したが、本発明はこれに限定されるものではなく、本発明をハードウェアにより実現したり、ハードウェアとソフトウェアの組み合わせにより実現したりする形態とすることもできる。この場合の形態例としては、画像処理プログラムにおけるハードウェア化したいステップと同様の処理を実行する機能デバイスを作成し、適用する形態を例示することができる。この場合、上記各実施の形態に比較して、処理の高速化が期待できる。
【００６０】
その他、上記各実施の形態で説明した画像処理システム９０及びＰＣ２０の構成（図１，図２参照。）は一例であり、本発明の主旨を逸脱しない範囲内において適宜変更可能であることは言うまでもない。
【００６１】
更に、上記各実施の形態で示した画像処理プログラムの処理の流れ（図３，図８参照。）も一例であり、本発明の主旨を逸脱しない範囲内において、不要な処理ステップを削除したり、新たな処理ステップを追加したり、処理順序を変更したりすることができることは言うまでもない。
【図面の簡単な説明】
【００６２】
【図１】実施の形態に係る画像処理システムの全体構成を示す概略図である。
【図２】実施の形態に係るパーソナル・コンピュータの電気系の要部構成を示すブロック図である。
【図３】第１の実施の形態に係る画像処理プログラムの処理の流れを示すフローチャートである。
【図４】第１の実施の形態に係る画像処理プログラムによって得られた差分画像及び周辺分布の一例を示す図である。
【図５】第１の実施の形態に係る画像処理プログラムによる主被写体の画像領域の検出方法の説明に供するグラフである。
【図６】第１の実施の形態に係る画像処理プログラムによる主被写体の画像領域の検出結果の一例を示す図である。
【図７】第１の実施の形態に係る画像処理プログラムによって得られたパノラマ画像の一例を示す図である。
【図８】第２の実施の形態に係る画像処理プログラムの処理の流れを示すフローチャートである。
【図９】第２の実施の形態に係る画像処理プログラムによる度数低減処理の説明に供するグラフである。
【図１０】第２の実施の形態に係る画像処理プログラムの効果の説明に供する図であり、処理対象とする動画像データの一例を示す図である。
【図１１】第１，第２の実施の形態に係る画像処理プログラムによって得られた差分画像及び周辺分布の一例を示す図である。
【図１２】第１の実施の形態に係る画像処理プログラムによる主被写体の画像領域の検出結果の一例を示す図である。
【図１３】第２の実施の形態に係る画像処理プログラムによって度数低減処理の実行後に得られた周辺分布の一例を示す図である。
【図１４】第２の実施の形態に係る画像処理プログラムによる主被写体の画像領域の検出結果の一例を示す図である。
【図１５】従来の技術の問題点の説明に供する図であり、動画像データの一例を示す図である。
【図１６】従来の技術の問題点の説明に供する図であり、従来の技術によって生成されたパノラマ画像の一例を示す図である。
【符号の説明】
【００６３】
１０    デジタルカメラ
２０    パーソナル・コンピュータ
２０Ａ    ＣＰＵ
２０Ｄ    ハードディスク
２０Ｆ    ディスプレイ
２０Ｇ    外部機器接続インタフェース
９０    画像処理システム
【図１】
0004920525.tif 000003
【図２】
0004920525.tif 000004
【図３】
0004920525.tif 000005
【図５】
0004920525.tif 000006
【図８】
0004920525.tif 000007
【図９】
0004920525.tif 000008
【図４】
0004920525.tif 000009
【図６】
0004920525.tif 000010
【図７】
0004920525.tif 000011
【図１０】
0004920525.tif 000012
【図１１】
0004920525.tif 000013
【図１２】
0004920525.tif 000014
【図１３】
0004920525.tif 000015
【図１４】
0004920525.tif 000016
【図１５】
0004920525.tif 000017
【図１６】
0004920525.tif 000018