(57)【要約】【課題】  連続的に撮影された画像間の一致／不一致を確実に判定し、より精度の高い画像合成を行う。【解決手段】  各エリア内でブロックマッチングにより求められた動きベクトルの信頼性が充分でない場合（図２のステップＳ６の“ＮＯ”）に、単に信頼性不十分で合成不可と判断するだけでなく、新たに同一エリア内の別の動きベクトルと照合してデータの正当性を検証する処理（図２のステップＳ９〜ステップＳ１４）を実行する。ブロックマッチングの信頼性を向上させることができることに加え、たとえ、一時的に合成不可と判断された場合（図２のステップＳ６の“ＮＯ”）であっても、新たに実行されるデータの正当性検証の結果（図２のステップＳ１４の判定結果）によっては、静止画の位置合わせ合成が成功となり得る場合があり、画像合成の成功率を高めることができる。【選択図】  図２
2008311907.tif 000002
【特許請求の範囲】
【請求項１】
連続的に複数の画像データを取得する画像取得手段と、
この画像取得手段によって連続的に取得された複数の画像データのうちの第１の画像データを基準画像データとして、この基準画像データから、特徴量の多い第１の画素ブロックの位置を検出する位置検出手段と、
この位置検出手段によって検出された位置を基準とし、前記複数の画像データのうちの第２の画像データを被追跡画像データとして、この被追跡画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第１のサーチ手段と、
この第１のサーチ手段によるサーチの結果得られる前記第１の画素ブロックの位置並びに前記第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルを保持する保持手段と、
この保持手段による保持の後、前記検出手段によって検出された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズを変更する変更手段と、
この変更手段によって変更された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズの位置を基準として、前記第２の画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第２のサーチ手段と、
この第２のサーチ手段によるサーチの結果得られる前記変更された第１の画素ブロックの位置並びに前記変更された第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルと、前記保持手段によって保持された前記第１の画素ブロックの位置と前記動きベクトルとを各々照合することにより、前記第１の画像データと前記第２の画像データとの一致を判断する判断手段と
を備えることを特徴とする画像データ照合装置。
【請求項２】
前記画像取得手段によって取得された第１の画像データより照合対象とする範囲を設定する設定手段を更に備え、
前記変更手段は、この設定手段によって設定される照合対象範囲を変更する手段を含むことを特徴とする請求項１に記載の画像データ照合装置。
【請求項３】
前記変更手段は、前記検出手段によって検出された第１の画素ブロックの位置を所定画素ずらすことにより、前記第１の画素ブロックの位置を変更することを特徴とする請求項１に記載の画像データ照合装置。
【請求項４】
前記変更手段は、前記検出手段によって検出された位置の第１の画素ブロックのブロックサイズを小さくするように変更することを特徴とする請求項１に記載の画像データ照合装置。
【請求項５】
連続的に複数の画像データを取得する画像取得手段と、
この画像取得手段によって連続的に取得された複数の画像データのうちの第１の画像データを基準画像データとして、この基準画像データから、特徴量の多い第１の画素ブロックの位置を検出する位置検出手段と、
この位置検出手段によって検出された位置を基準とし、前記複数の画像データのうちの第２の画像データを被追跡画像データとして、この被追跡画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第１のサーチ手段と、
この第１のサーチ手段によるサーチの結果得られる前記第１の画素ブロックの位置並びに前記第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルを保持する保持手段と、
この保持手段による保持の後、前記検出手段によって検出された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズを変更する変更手段と、
この変更手段によって変更された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズの位置を基準として、前記第２の画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第２のサーチ手段と、
この第２のサーチ手段によるサーチの結果得られる前記変更された第１の画素ブロックの位置並びに前記変更された第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルと、前記保持手段によって保持された前記第１の画素ブロックの位置と前記動きベクトルとを各々照合することにより、前記第１の画像データと前記第２の画像データとの一致を判断する判断手段と、
この判断手段により、前記第１の画像データと前記第２の画像データとの一致が判断されたときに、前記保持手段に保持された第１の画素ブロックの位置と動きベクトルの組を所定数選択し、この選択された所定数の組の前記第１の画素ブロックの位置と動きベクトルとに基づいて、前記第２の画像データを射影変換して前記第１の画像データと合成する合成手段と
を備えることを特徴とする画像合成装置。
【請求項６】
前記画像取得手段によって取得された第１の画像データより照合対象とする範囲を設定する設定手段を更に備え、
前記変更手段は、この設定手段によって設定される照合対象範囲を変更する手段を含むことを特徴とする請求項５に記載の画像合成装置。
【請求項７】
前記変更手段は、前記検出手段によって検出された第１の画素ブロックの位置を所定画素ずらすことにより、前記第１の画素ブロックの位置を変更することを特徴とする請求項５に記載の画像合成装置。
【請求項８】
前記変更手段は、前記検出手段によって検出された位置の第１の画素ブロックのブロックサイズを小さくするように変更することを特徴とする請求項５に記載の画像合成装置。
【請求項９】
コンピュータを、
連続的に複数の画像データを取得する画像取得手段、
この画像取得手段によって連続的に取得された複数の画像データのうちの第１の画像データを基準画像データとして、この基準画像データから、特徴量の多い第１の画素ブロックの位置を検出する位置検出手段、
この位置検出手段によって検出された位置を基準とし、前記複数の画像データのうちの第２の画像データを被追跡画像データとして、この被追跡画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第１のサーチ手段と、
この第１のサーチ手段によるサーチの結果得られる前記第１の画素ブロックの位置並びに前記第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルを保持する保持手段、
この保持手段による保持の後、前記検出手段によって検出された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズを変更する変更手段、
この変更手段によって変更された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズの位置を基準として、前記第２の画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第２のサーチ手段、
この第２のサーチ手段によるサーチの結果得られる前記変更された第１の画素ブロックの位置並びに前記変更された第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルと、前記保持手段によって保持された前記第１の画素ブロックの位置と前記動きベクトルとを各々照合することにより、前記第１の画像データと前記第２の画像データとの一致を判断する判断手段
として機能させることを特徴とするプログラム。
【請求項１０】
コンピュータを、
連続的に複数の画像データを取得する画像取得手段、
この画像取得手段によって連続的に取得された複数の画像データのうちの第１の画像データを基準画像データとして、この基準画像データから、特徴量の多い第１の画素ブロックの位置を検出する位置検出手段、
この位置検出手段によって検出された位置を基準とし、前記複数の画像データのうちの第２の画像データを被追跡画像データとして、この被追跡画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第１のサーチ手段と、
この第１のサーチ手段によるサーチの結果得られる前記第１の画素ブロックの位置並びに前記第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルを保持する保持手段、
この保持手段による保持の後、前記検出手段によって検出された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズを変更する変更手段、
この変更手段によって変更された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズの位置を基準として、前記第２の画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第２のサーチ手段、
この第２のサーチ手段によるサーチの結果得られる前記変更された第１の画素ブロックの位置並びに前記変更された第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルと、前記保持手段によって保持された前記第１の画素ブロックの位置と前記動きベクトルとを各々照合することにより、前記第１の画像データと前記第２の画像データとの一致を判断する判断手段、
この判断手段により、前記第１の画像データと前記第２の画像データとの一致が判断されたときに、前記保持手段に保持された第１の画素ブロックの位置と動きベクトルの組を所定数選択し、この選択された所定数の組の前記第１の画素ブロックの位置と動きベクトルとに基づいて、前記第２の画像データを射影変換して前記第１の画像データと合成する合成手段
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データ照合装置、画像合成装置及びプログラムに関し、たとえば、デジタルカメラ等の撮影装置において、夜景等の撮影感度の向上技術の一つとして用いられている連写画像合成に適用できる画像データ照合装置、画像合成装置及びプログラムに関する。
【背景技術】
【０００２】
ＣＣＤやＣＭＯＳ等の半導体撮像デバイスを用いたデジタルカメラ等の撮影装置は、カメラ自体で撮影感度（半導体撮像デバイスの撮影感度のこと。ＩＳＯ感度ともいう。）を変更することが可能であり、暗所での撮影性能に優れているとされているが、撮影感度を高くし過ぎると、半導体撮像デバイスのノイズが増加して画質が低下するという弊害がある。
【０００３】
そこで、下記の特許文献１では、低速シャッタスピード（たとえば、１／６０秒）と高速シャッタスピード（たとえば、１／１０００秒）で２枚の画像を連写し、それらの画像を合成することにより、半導体撮像デバイスのダイナミックレンジを実質的に拡大することができる技術が記載されている。
【０００４】
この技術のポイントは、低速シャッタスピードで撮影した画像（以下、低速画像という。）は、黒レベルの再現性に優れた画像であり、一方、高速シャッタスピードで撮影した画像（以下、高速画像という。）は、その逆に、白レベルの再現性に優れた画像であり、言い換えれば、低速画像では明るい部分が白く飛んだ「白飛び」の画像になりやすく、一方、高速画像では暗い部分が黒くつぶれた「黒つぶれ」の画像になりやすいという欠点を持つが、これら二つの画像を合成することにより、両画像の欠点（白飛びと黒つぶれ）を相互に補い合って、白飛びと黒つぶれのない画像、つまり、ダイナミックレンジの広い画像を得ることができるというものである。
【０００５】
さて、この特許文献１の技術においては、その画像合成について、単に白飛び部分と黒つぶれ部分とを検出し、それらの部分に他方側の画像の該当部分を充当しているだけのものに過ぎず、たとえば、動きのある被写体や、撮影時に手振れがあった場合に、正確な画像合成を行うことが困難になるという欠点がある。
【０００６】
これに対して、下記の特許文献２では、静止画撮影で生じる手振れを防止するために、防振モードにおいては、短い露光時間で複数回露光を行い、これら露光された結果得られた画像から輝度の高い画素からなる特徴点を抽出し、動きベクトルを求め、これらのデータに基づいて座標変換を行い画像合成する技術が開示されている。
【０００７】
【特許文献１】特許第３１１０７９７号
【特許文献２】特開２００４−３５７２０２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献２の技術においては、特徴点の検出対象が輝度の高い領域となっているため、たとえば、連続的に撮影された画像の構図そのものが異なる場合であっても、特徴点が一致してしまう可能性があり、不適切な画像合成が行われてしまうという問題があった。
【０００９】
本発明はこのような問題点に鑑みてなされたものであり、連続的に撮影された画像間の一致／不一致を確実に判定し、より精度の高い画像合成を行うことができるようにする画像データ照合装置、画像合成装置及びプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
請求項１記載の発明は、連続的に複数の画像データを取得する画像取得手段と、この画像取得手段によって連続的に取得された複数の画像データのうちの第１の画像データを基準画像データとして、この基準画像データから、特徴量の多い第１の画素ブロックの位置を検出する位置検出手段と、この位置検出手段によって検出された位置を基準とし、前記複数の画像データのうちの第２の画像データを被追跡画像データとして、この被追跡画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第１のサーチ手段と、この第１のサーチ手段によるサーチの結果得られる前記第１の画素ブロックの位置並びに前記第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルを保持する保持手段と、この保持手段による保持の後、前記検出手段によって検出された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズを変更する変更手段と、この変更手段によって変更された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズの位置を基準として、前記第２の画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第２のサーチ手段と、この第２のサーチ手段によるサーチの結果得られる前記変更された第１の画素ブロックの位置並びに前記変更された第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルと、前記保持手段によって保持された前記第１の画素ブロックの位置と前記動きベクトルとを各々照合することにより、前記第１の画像データと前記第２の画像データとの一致を判断する判断手段とを備えることを特徴とする。
請求項２記載の発明は、上記請求項１記載の発明において、前記画像取得手段によって取得された第１の画像データより照合対象とする範囲を設定する設定手段を更に備え、前記変更手段は、この設定手段によって設定される照合対象範囲を変更する手段を含むことを特徴とする。
請求項３記載の発明は、上記請求項１記載の発明において、前記変更手段は、前記検出手段によって検出された第１の画素ブロックの位置を所定画素ずらすことにより、前記第１の画素ブロックの位置を変更することを特徴とする。
請求項４記載の発明は、上記請求項１記載の発明において、前記変更手段は、前記検出手段によって検出された位置の第１の画素ブロックのブロックサイズを小さくするように変更することを特徴とする。
請求項５記載の発明は、連続的に複数の画像データを取得する画像取得手段と、この画像取得手段によって連続的に取得された複数の画像データのうちの第１の画像データを基準画像データとして、この基準画像データから、特徴量の多い第１の画素ブロックの位置を検出する位置検出手段と、この位置検出手段によって検出された位置を基準とし、前記複数の画像データのうちの第２の画像データを被追跡画像データとして、この被追跡画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第１のサーチ手段と、この第１のサーチ手段によるサーチの結果得られる前記第１の画素ブロックの位置並びに前記第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルを保持する保持手段と、この保持手段による保持の後、前記検出手段によって検出された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズを変更する変更手段と、この変更手段によって変更された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズの位置を基準として、前記第２の画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第２のサーチ手段と、この第２のサーチ手段によるサーチの結果得られる前記変更された第１の画素ブロックの位置並びに前記変更された第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルと、前記保持手段によって保持された前記第１の画素ブロックの位置と前記動きベクトルとを各々照合することにより、前記第１の画像データと前記第２の画像データとの一致を判断する判断手段と、この判断手段により、前記第１の画像データと前記第２の画像データとの一致が判断されたときに、前記保持手段に保持された第１の画素ブロックの位置と動きベクトルの組を所定数選択し、この選択された所定数の組の前記第１の画素ブロックの位置と動きベクトルとに基づいて、前記第２の画像データを射影変換して前記第１の画像データと合成する合成手段とを備えることを特徴とする。
請求項６記載の発明は、上記請求項５記載の発明において、前記画像取得手段によって取得された第１の画像データより照合対象とする範囲を設定する設定手段を更に備え、前記変更手段は、この設定手段によって設定される照合対象範囲を変更する手段を含むことを特徴とする。
請求項７記載の発明は、上記請求項５記載の発明において、前記変更手段は、前記検出手段によって検出された第１の画素ブロックの位置を所定画素ずらすことにより、前記第１の画素ブロックの位置を変更することを特徴とする。
請求項８記載の発明は、上記請求項５記載の発明において、前記変更手段は、前記検出手段によって検出された位置の第１の画素ブロックのブロックサイズを小さくするように変更することを特徴とする。
請求項９記載の発明は、コンピュータを、連続的に複数の画像データを取得する画像取得手段、この画像取得手段によって連続的に取得された複数の画像データのうちの第１の画像データを基準画像データとして、この基準画像データから、特徴量の多い第１の画素ブロックの位置を検出する位置検出手段、この位置検出手段によって検出された位置を基準とし、前記複数の画像データのうちの第２の画像データを被追跡画像データとして、この被追跡画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第１のサーチ手段、この第１のサーチ手段によるサーチの結果得られる前記第１の画素ブロックの位置並びに前記第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルを保持する保持手段、この保持手段による保持の後、前記検出手段によって検出された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズを変更する変更手段、この変更手段によって変更された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズの位置を基準として、前記第２の画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第２のサーチ手段、この第２のサーチ手段によるサーチの結果得られる前記変更された第１の画素ブロックの位置並びに前記変更された第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルと、前記保持手段によって保持された前記第１の画素ブロックの位置と前記動きベクトルとを各々照合することにより、前記第１の画像データと前記第２の画像データとの一致を判断する判断手段として機能させることを特徴とする。
請求項１０記載の発明は、コンピュータを、連続的に複数の画像データを取得する画像取得手段、この画像取得手段によって連続的に取得された複数の画像データのうちの第１の画像データを基準画像データとして、この基準画像データから、特徴量の多い第１の画素ブロックの位置を検出する位置検出手段、この位置検出手段によって検出された位置を基準とし、前記複数の画像データのうちの第２の画像データを被追跡画像データとして、この被追跡画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第１のサーチ手段、この第１のサーチ手段によるサーチの結果得られる前記第１の画素ブロックの位置並びに前記第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルを保持する保持手段、この保持手段による保持の後、前記検出手段によって検出された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズを変更する変更手段、この変更手段によって変更された前記第１の画素ブロックの位置または前記第１の画素ブロックのブロックサイズの位置を基準として、前記第２の画像データから、特徴量の多い第２の画素ブロックの位置をサーチする第２のサーチ手段、この第２のサーチ手段によるサーチの結果得られる前記変更された第１の画素ブロックの位置並びに前記変更された第１の画素ブロックの位置と前記第２の画素ブロックの位置との間の動きベクトルと、前記保持手段によって保持された前記第１の画素ブロックの位置と前記動きベクトルとを各々照合することにより、前記第１の画像データと前記第２の画像データとの一致を判断する判断手段、この判断手段により、前記第１の画像データと前記第２の画像データとの一致が判断されたときに、前記保持手段に保持された第１の画素ブロックの位置と動きベクトルの組を所定数選択し、この選択された所定数の組の前記第１の画素ブロックの位置と動きベクトルとに基づいて、前記第２の画像データを射影変換して前記第１の画像データと合成する合成手段として機能させることを特徴とする。
【発明の効果】
【００１１】
本発明では、連続的に撮影された画像間の一致／不一致を確実に判定し、より精度の高い画像合成を行うことができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施形態を、図面を参照しながら説明する。
図１は、実施形態に係る撮影装置の構成図である。この図において、撮影装置１は、撮影レンズや絞り機構等を含む光学系２、機械的に光路を遮断し得るシャッタ機構３、光学系２とシャッタ機構３を通過した光を結像して電気的な画像信号に変換するＣＣＤ４、ＣＣＤ４の出力をアナログからデジタルに変換するＡ／Ｄ変換器５、Ａ／Ｄ変換器５の出力を一時的に保持するＤＲＡＭ６、ＤＲＡＭ６に保持されている画像信号を所定の表示形式に変換して液晶表示画面８に出力する液晶表示コントローラ７、液晶表示コントローラ７から出力された画像を表示する液晶表示画面８、液晶表示画面８に表示されている画像が所望の構図になったときにユーザによって操作されるシャッタボタン９、当該撮影装置１のモードを通常撮影モードや連写撮影モードにしたり、あるいはそれらのモードから撮影済み画像の再生モードにしたりその逆にしたり又は所定のシステム設定モード等にしたりするためのモードボタン１０、集積回路部１１、撮影済み画像を保存する外部記憶メモリＭを備える。
【００１３】
集積回路部１１は、シャッタ機構３を制御するシャッタ制御部１２、ＣＣＤ４やＡ／Ｄ変換器５を制御する受光制御部１３、ＤＲＡＭ６に保存されている画像信号をＹＵＶ信号（色信号）と輝度信号に変換するデモザイク部１４、連写撮影モードで撮影された２枚の画像の特徴量を演算する特徴量演算部１５、特徴量演算やブロックマッチング及び画像合成の際のワークメモリとして用いられるＳＲＡＭ１６、連写撮影モードで撮影された２枚の画像のブロックマッチングを行うブロックマッチング部１７、そのブロックマッチングの結果に基づいて２枚の画像の画像変形及び合成加算処理を行う画像変形合成加算部１８、当該集積回路部１１の全体動作を制御するＣＰＵコア１９を含む。
【００１４】
図２は、本実施形態における画像合成処理の概略フローを示す図である。このフローでは、まず、ユーザがモードボタン１０を操作して連写撮影モードにし、液晶表示画面８の表示を見ながら所望の構図に調整した上、シャッタボタン９を操作して２枚の画像を連写（ステップＳ１）すると、それらの２枚の画像が生の画像（ＲＡＷ画像）データとしてＣＣＤ４からＡ／Ｄ変換器５を介してＤＲＡＭに取り込まれる。このとき、撮影された２枚の画像には、手振れに起因する微妙な位置ずれが生じているものとする。
【００１５】
撮影された２枚のＲＡＷ画像は、集積回路部１１のデモザイク部１４によってＹＵＶ画像と輝度画像の２種類の画像に変換され、ＤＲＡＭ６に保存される。ブロックマッチング部１７は、２枚の輝度画像のうちの一方の画像を「基準画像」、他方の画像を「被追跡画像」（基準画像に位置合わせをして合成加算する側）として、それらの基準画像と被追跡画像間のブロックマッチングを行う。このように、２枚の輝度画像はブロックマッチングに用いられ、ＹＵＶ画像は後述の合成加算データとして用いられる。
【００１６】
次に、基準画像側（１枚目）のウィンドウ設定を行う（ステップＳ２）。
図３は、ウィンドウ設定の概念図である。この図に示すように、基準画像２０の全体が同一サイズの複数のエリア（ここでは一例として４×３＝１２個のエリアＥ０〜Ｅ１１）に分けられ、これらの１２個のエリアＥ０〜Ｅ１１で一つのウィンドウＷを構成する。各々のエリアは、更に同一サイズの複数のブロック（ここでは一例として３×３＝９個のブロックＢ０〜Ｂ８）に分かれており、各ブロックＢ０〜Ｂ８は、それぞれ同数の画素（ここでは１６×１６画素）で構成されている。なお、基準画像２０の原点Ｐ０とウィンドウＷの原点Ｐ１の間には一定のオフセットＯＦＳＴが設定されている。
【００１７】
次に、ステップＳ２で区分け設定された各ブロックＢ０〜Ｂ８について、ハリスのコーナー検出評価関数を用いて特徴量を求める。そして、各エリアＥ０〜Ｅ１１毎に、特徴量が最も大きい（最も高い）ブロックＢｉをブロックマッチング用のブロックとして選出する（ステップＳ３）。
【００１８】
図４は、選出ブロックを示す図である。この図において、ハッチングを付したブロックは、それぞれのエリアＥ０〜Ｅ１１における特徴量が最も大きいブロックＢｉの一例を示しており、たとえば、エリアＥ０においてはブロックＢ７（図ではＥ０＿Ｂ７と表記）、エリアＥ１においてはブロックＢ６（図ではＥ１＿Ｂ６と表記）、エリアＥ２においてはブロックＢ１（図ではＥ２＿Ｂ１と表記）、エリアＥ３においてはブロックＢ７（図ではＥ３＿Ｂ７と表記）、エリアＥ４においてはブロックＢ５（図ではＥ４＿Ｂ５と表記）、エリアＥ５においてはブロックＢ２（図ではＥ５＿Ｂ２と表記）、エリアＥ６においてはブロックＢ４（図ではＥ６＿Ｂ４と表記）、エリアＥ７においてはブロックＢ３（図ではＥ７＿Ｂ３と表記）、エリアＥ８においてはブロックＢ４（図ではＥ８＿Ｂ４と表記）、エリアＥ９においてはブロックＢ６（図ではＥ９＿Ｂ６と表記）、エリアＥ１０においてはブロックＢ１（図ではＥ１０＿Ｂ１と表記）、エリアＥ１１においてはブロックＢ４（図ではＥ１１＿Ｂ４と表記）が、それぞれのエリア内で特徴量が最も大きいブロックＢｉである。
【００１９】
次に、選出された各ブロックＢｉについて、ブロックマッチング部１７でブロックマッチングを行い、動きベクトルを求める（ステップＳ４）。具体的には、被追跡画像側（２枚目）の同一座標ブロックを中心として、指定の検索範囲で、各座標毎に基準画像の選出ブロックとの差分二乗和を求める。そして、差分二乗和の一番少ない位置より、ブロックの動きベクトルを求める。この際、一回のブロックマッチングについて、１６×１６＝２５６回の大量の乗算を行うことになるので、基準画像側のブロックと、被追跡画像側のサーチエリアのデータとを一度集積回路部１１のＳＲＡＭ１６に取り込み、この取り込んだデータを用いてブロックマッチング部１７で高速並列処理を行う。
【００２０】
次に、各ブロックの動きベクトルデータを用い、たとえば、ＲＡＮＳＡＣ法により、アウトライア（被写体移動などでイレギュラーに移動したブロックの動きベクトル）を排除し、２画像の位置関係を表す射影変換行列を求める（ステップＳ５）。ＲＡＮＳＡＣ（ＲＡＮｄｏｍ  ＳＡｍｐｌｅ  Ｃｏｎｓｅｎｓｕｓ）とは、パラメータ推定の一手法であり、少数の点から求めたパラメータ推定の候補に対して、多数の点の中からその推定に適合する点の数や適合の正確性の度合い、すなわち、サポート数を算出し、サポート数の多い推定候補を最終の推定結果として採用する方法のことである。
【００２１】
次に、各ブロックの動きベクトルデータの信頼性の判定を行う（ステップＳ６）。この判定は、たとえば、ＲＡＮＳＡＣ法で求められる射影変換行列のサポート率が一定値以上であるか否かによって行うことができる。ＲＡＮＳＡＣ法で求められる射影変換行列のサポート率は、全サンプル数に対するインライア（変換行列が有効となるサンプル）の割合を示しており、このサポート率が一定値以上であれば、ＲＡＮＳＡＣ法による射影変換行列の生成が成功であったとみなして差し支えないからである。
【００２２】
ステップＳ６で、各ブロックの動きベクトルデータの信頼性ありと判定された場合（ステップＳ６の判定結果が“ＹＥＳ”の場合）は、次に、変換行列に基づき、２枚の画像の合成加算を行い（ステップＳ７）、合成加算された画像データを外部記憶メモリＭに保存（ステップＳ８）して、フローを終了する。
【００２３】
一方、ステップＳ６で、各ブロックの動きベクトルデータの信頼性なしと判定された場合（ステップＳ６の判定結果が“ＮＯ”の場合）、つまり、ＲＡＮＳＡＣ法で求められる射影変換行列のサポート率が一定値以上でなかった場合は、次に、以下の処理に従い、本実施形態の特徴である各ブロックの動きベクトルデータの検証を行う。
【００２４】
まず、先のステップＳ２で設定したウィンドウＷの原点Ｐ１を所定量ずらしたウィンドウＷａを設定する（ステップＳ９）。
図５は、ウィンドウＷａの設定概念図である。この図の（ａ）に示すように、ウィンドウＷａの原点Ｐ１´は、先のステップＳ２で設定したウィンドウＷの原点Ｐ１を右下方向に所定量ずらしたものであり、“所定量”は、同（ｂ）に示すように、一つのブロックの縦横サイズの各々１／２に相当する量である。
【００２５】
ウィンドウＷａのエリア及びブロックの構成は、先のステップＳ２で設定したウィンドウＷと同じである。すなわち、このウィンドウＷａも、基準画像２０の全体を同一サイズの複数のエリアＥ０〜Ｅ１１に分けられ、これらの１２個のエリアＥ０〜Ｅ１１で一つのウィンドウＷを構成し、各々のエリアは、更に同一サイズの複数のブロックＢ０〜Ｂ８に分かれており、各ブロックＢ０〜Ｂ８は、それぞれ同数の画素（１６×１６画素）で構成されている点で共通する。相違点は、基準画像２０の原点Ｐ０からウィンドウＷａの原点Ｐ１´までのオフセットが、先のステップＳ２で設定したウィンドウＷのオフセットＯＦＳＴよりも上記の所定量だけ大きくなっていることにある。
【００２６】
次に、前記のステップＳ３と同様に、ウィンドウＷａの各エリアＥ０〜Ｅ１１毎に、特徴量の高いブロックを選出する（ステップＳ１０）。この時、ウィンドウＷａの原点Ｐ１´が１／２ブロックずらされている（図５（ｂ）参照）ので、前記のステップＳ３で選ばれたブロックと全く同じ位置のブロックが選ばれることはない。
【００２７】
次いで、前記のステップＳ４と同様に、選出された各ブロックＢｉについて、ブロックマッチング部１７でブロックマッチングを行い、動きベクトルを求める（ステップＳ１１）。
【００２８】
先のステップＳ４で得られた動きベクトル（ウィンドウＷを適用して得られた動きベクトル）と、前記ステップＳ１１で得られた動きベクトル（ウィンドウＷａを適用して得られた動きベクトル）とを各エリアＥ０〜Ｅ１１毎に照合し、双方の動きベクトルが一定距離内にある動きベクトル群だけを選別する（ステップＳ１２）。
【００２９】
次に、選別された動きベクトル群を用いて再度ＲＡＮＳＡＣ法によるアウトライア排除及び射影変換行列生成を試みる（ステップＳ１３）。
【００３０】
そして、各ブロックの動きベクトルデータの信頼性の判定を行う（ステップＳ１４）。この判定も、先のステップＳ６と同様に、ステップＳ１３で生成された射影変換行列のサポート率が一定値以上であるか否かを調べることによって行うことができる。
【００３１】
サポート率が一定値以上の場合、各ブロックの動きベクトルデータの信頼性ありと判定し（ステップＳ１４の判定結果“ＹＥＳ”）、次に、ステップＳ１３で求めた変換行列に基づき、２枚の画像の合成加算を行い（ステップＳ７）、合成加算された画像データを外部記憶メモリＭに保存（ステップＳ８）して、フローを終了するが、サポート率が一定値以上でなかった場合、つまり、各ブロックの動きベクトルデータの信頼性なしと判定された場合（ステップＳ１４の判定結果“ＮＯ”）は、所要の警告メッセージ（たとえば、“画像合成に失敗しました。撮影をやり直してください“等）を液晶表示画面８に表示して（ステップＳ１５）、フローを終了する。
【００３２】
以上のとおり、本実施形態では、各エリア内でブロックマッチングにより求められた動きベクトルの信頼性が充分でない場合（図２のステップＳ６の“ＮＯ”）に、単に信頼性不十分で合成不可と判断するだけでなく、新たに同一エリア内の別の動きベクトルと照合してデータの正当性を検証する処理（図２のステップＳ９〜ステップＳ１４）を新たに実行するようにしたから、ブロックマッチングの信頼性を向上させることができることに加え、たとえ、一時的に合成不可と判断された場合（図２のステップＳ６の“ＮＯ”）であっても、新たに実行されるデータの正当性検証の結果（図２のステップＳ１４の判定結果）によっては、静止画の位置合わせ合成が成功となり得る場合があり、画像合成の成功率を高めることができるという特有の効果が得られる。
【００３３】
図６及び図７は、本実施形態の効果を示す画像例であり、詳細には、図６は、本実施形態を適用しない場合（図２のステップＳ９〜ステップＳ１４を実行しない場合）の画像例、図７は、本実施形態を適用した場合（図２のステップＳ９〜ステップＳ１４を実行した場合）の画像例である。ちなみに、図６の画像は、図２のステップＳ９〜ステップＳ１４を実行しない場合ＲＡＮＳＡＣのサポート率が５９．６％のときのものであり、図７の画像は、図２のステップＳ９〜ステップＳ１４を実行した場合のＲＡＮＳＡＣのサポート率が８９．１％のときのものである。両画像を見比べると、図６の画像は画像全体にブレが残っているが、一方の図７の画像は、ほとんどブレが目立たなくなっており、本実施形態を適用した場合（図７の画像）の優位性が明らかとなっている。
【００３４】
なお、前記の実施形態では、サーチウインドウの原点をずらす（Ｐ１→Ｐ１´：図５参照）ことによって得られる同一エリアのデータを照合するとしたが、これに限らず、以下の第１又は第２の変形例のようにしてもよい。
【００３５】
図８は、第１の変形例を示す図である。この図に示すように、基準画像２０の各エリア内で特徴量が最も大きいブロックのマッチングデータと、その特徴量が最も大きいブロックから数画素ずらしたブロックのマッチングデータとを照合し、各ベクトルデータが近い場合には、特徴量が最も大きいデータを採用するとしてもよい。
【００３６】
図９は、第２の変形例を示す図である。この図に示すように、基準画像２０の各エリア内で特徴量が最も大きいブロックのマッチングデータと、その特徴量が最も大きいブロックのサイズを小さくしたブロックのマッチングデータとを照合し、各ベクトルデータが近い場合には、特徴量が最も大きいデータを採用するとしてもよい。
【図面の簡単な説明】
【００３７】
【図１】実施形態に係る撮影装置の構成図である。
【図２】本実施形態における画像合成処理の概略フローを示す図である。
【図３】ウィンドウ設定の概念図である。
【図４】選出ブロックを示す図である。
【図５】ウィンドウＷａの設定概念図である。
【図６】本実施形態を適用しない場合（図２のステップＳ９〜ステップＳ１４を実行しない場合）の画像例を示す図である。
【図７】本実施形態を適用した場合（図２のステップＳ９〜ステップＳ１４を実行した場合）の画像例を示す図である。
【図８】第１の変形例を示す図である。
【図９】第２の変形例を示す図である。
【符号の説明】
【００３８】
１  撮影装置
４  ＣＣＤ
１５  特徴量演算部
１６  ＳＲＡＭ
１７  ブロックマッチング部
１８  画像変形合成加算部
１９  ＣＰＵコア
【図１】
2008311907.tif 000003
【図２】
2008311907.tif 000004
【図３】
2008311907.tif 000005
【図４】
2008311907.tif 000006
【図５】
2008311907.tif 000007
【図６】
2008311907.tif 000008
【図７】
2008311907.tif 000009
【図８】
2008311907.tif 000010
【図９】
2008311907.tif 000011