(57)【要約】【課題】二つの画像間の高さ方向のずれ量を迅速かつ簡易に検出することが可能な画像処理装置、画像処理方法及びプログラムを提供する。【解決手段】第１の画像データと第２の画像データにおける各画素の画素値の総和をライン毎に算出する総和算出部と、第１の画像データと第２の画像データそれぞれにおいて、第１のラインの総和と第１のラインの下側に隣接する第２のラインの総和との差分をライン毎に算出する差分算出部と、第１の画像データから得られる画像の高さ方向の差分の変化と、第２の画像データから得られる画像の高さ方向の差分の変化を比較して、第１の画像データと第２の画像データ間の高さ方向のずれ量を算出するずれ量算出部とを備える。【選択図】図１
2012095133.tif 000002
【特許請求の範囲】
【請求項１】
第１の画像データと第２の画像データにおける各画素の画素値の総和をライン毎に算出する総和算出部と、
前記第１の画像データと前記第２の画像データそれぞれにおいて、第１のラインの前記総和と前記第１のラインの下側に隣接する第２のラインの前記総和との差分をライン毎に算出する差分算出部と、
前記第１の画像データから得られる画像の高さ方向の前記差分の変化と、前記第２の画像データから得られる画像の高さ方向の前記差分の変化を比較して、前記第１の画像データと前記第２の画像データ間の高さ方向のずれ量を算出するずれ量算出部と、
を備える、画像処理装置。
【請求項２】
前記ずれ量算出部は、前記第１の画像データと前記第２の画像データ間の高さ方向の仮定ずれ量を設定し、前記仮定ずれ量分だけ前記第１の画像データと前記第２の画像データがずれているとしたときの評価値を算出し、前記評価値に基づいて前記ずれ量を算出する、請求項１に記載の画像処理装置。
【請求項３】
前記ずれ量に基づいて、前記第１の画像データと前記第２の画像データ間の高さ方向のずれを補正するずれ補正部を更に備える、請求項１又は２に記載の画像処理装置。
【請求項４】
第１の画像データと第２の画像データにおける各画素の画素値の総和をライン毎に算出するステップと、
前記第１の画像データと前記第２の画像データそれぞれにおいて、第１のラインの前記総和と前記第１のラインの下側に隣接する第２のラインの前記総和との差分をライン毎に算出するステップと、
前記第１の画像データから得られる画像の高さ方向の前記差分の変化と、前記第２の画像データから得られる画像の高さ方向の前記差分の変化を比較して、前記第１の画像データと前記第２の画像データ間の高さ方向のずれ量を算出するステップと、
を備える、画像処理方法。
【請求項５】
第１の画像データと第２の画像データにおける各画素の画素値の総和をライン毎に算出するステップと、
前記第１の画像データと前記第２の画像データそれぞれにおいて、第１のラインの前記総和と前記第１のラインの下側に隣接する第２のラインの前記総和との差分をライン毎に算出するステップと、
前記第１の画像データから得られる画像の高さ方向の前記差分の変化と、前記第２の画像データから得られる画像の高さ方向の前記差分の変化を比較して、前記第１の画像データと前記第２の画像データ間の高さ方向のずれ量を算出するステップと、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、３Ｄテレビや３Ｄ映画の普及に伴って、左側画像と右側画像を同時に取得するステレオカメラの需要が高まっている。ステレオカメラは、二つのレンズが一定間隔を空けて配置され、アングルが異なる左側画像と右側画像を取得する。ステレオカメラのベースラインは画像の水平方向として設定されている。そして、鑑賞者は撮影した左側画像と右側画像を３Ｄテレビ等の機器で同時に見ることで、画像を立体的に、すなわち飛び出しや奥行きを感じながら見ることができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平４−３０７６８２号公報
【特許文献２】特開２００７−２９９２４８号公報
【特許文献３】特開平４−２８３６０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、左右にレンズを配置したステレオカメラの場合、ステレオカメラの製造上の都合で、左右のレンズが完全に水平ではなく縦方向にずれることが想定される。このとき、左側画像と右側画像が縦方向にずれることよって、鑑賞者は、画像をうまく立体的に見ることができない等、違和感を招くという問題が生じる。そのため、左側画像と右側画像の縦方向のずれを補正する必要がある。補正の方法としては、左または右のレンズ位置及び撮像素子位置を微調整したり、撮像素子で撮影される画像全体の中から位置調整をした画像の切り出しを行うなどの処理がある。いずれにしても、補正の際にずれ量を検出するには、撮影された画像に基づく以外に方法はない。
【０００５】
従来、画像処理分野において、画像の位置ずれ検出や位置合わせに関する技術が開発されている。しかし、位置ずれ検出や位置合わせは、特許文献１〜３のように、製品の生産ラインにおける製品検査等の用途が一般的である。製品検査では、同じ対象物が写っている画像同士、すなわち「想定されている画像」と「検査する画像」を比較してずれ量を検出することが前提であり、両画像の位置があった場合には両画像の差分がゼロに近くなることが期待されている。したがって、ステレオカメラのように、異なる視点で撮影し、左側画像と右側画像のようにアングルが異なる画像同士を比較することはなかった。左側画像と右側画像を比較すると、水平位置が合った状態でも、アングルが異なるため、画像の差分がゼロになることはない。
【０００６】
また、学術研究の業界では、複数画像間で対応点を探索する技術が一般的に研究されている。対応点を探索する技術を使用して、左側画像と右側画像の位置合わせをすることも可能である。しかし、この技術は、通常、画像読み出しのため、画像メモリに何度もアクセスすることになるため、少なくとも１フレーム分の容量を持つフレームバッファを用意する必要があった。また、多くの計算量を要するため、カメラ内部へ組み込むような実装は困難であるという問題がある。
【０００７】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、二つの画像間の高さ方向のずれ量を迅速かつ簡易に検出することが可能な、新規かつ改良された画像処理装置、画像処理方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明のある観点によれば、第１の画像データと第２の画像データにおける各画素の画素値の総和をライン毎に算出する総和算出部と、第１の画像データと第２の画像データそれぞれにおいて、第１のラインの総和と第１のラインの下側に隣接する第２のラインの総和との差分をライン毎に算出する差分算出部と、第１の画像データから得られる画像の高さ方向の差分の変化と、第２の画像データから得られる画像の高さ方向の差分の変化を比較して、第１の画像データと第２の画像データ間の高さ方向のずれ量を算出するずれ量算出部とを備える画像処理装置が提供される。
【０００９】
この構成によって、第１の画像データと第２の画像データにおける各画素の画素値の総和がライン毎に算出され、第１の画像データと第２の画像データそれぞれにおいて、第１のラインの総和と第１のラインの下側に隣接する第２のラインの総和との差分がライン毎に算出される。そして、第１の画像データから得られる画像の高さ方向の差分の変化と、第２の画像データから得られる画像の高さ方向の差分の変化が比較されて、第１の画像データと第２の画像データ間の高さ方向のずれ量が算出される。
【００１０】
上記ずれ量算出部は、第１の画像データと第２の画像データ間の高さ方向の仮定ずれ量を設定し、仮定ずれ量分だけ第１の画像データと第２の画像データがずれているとしたときの評価値を算出し、評価値に基づいてずれ量を算出する。この構成によって、第１の画像データと第２の画像データ間の高さ方向の仮定ずれ量が設定されて、仮定ずれ量分だけ第１の画像データと第２の画像データがずれているとしたときの評価値が算出される。その結果、評価値に基づいてずれ量が算出される。
【００１１】
上記ずれ量に基づいて、第１の画像データと第２の画像データ間の高さ方向のずれを補正するずれ補正部を更に備える。この構成によって、ずれ量に基づいて、第１の画像データと第２の画像データ間の高さ方向のずれが補正される。
【００１２】
また、上記課題を解決するために、本発明の別の観点によれば、第１の画像データと第２の画像データにおける各画素の画素値の総和をライン毎に算出するステップと、第１の画像データと第２の画像データそれぞれにおいて、第１のラインの総和と第１のラインの下側に隣接する第２のラインの総和との差分をライン毎に算出するステップと、第１の画像データから得られる画像の高さ方向の差分の変化と、第２の画像データから得られる画像の高さ方向の差分の変化を比較して、第１の画像データと第２の画像データ間の高さ方向のずれ量を算出するステップとを備える画像処理方法が提供される。
【００１３】
また、上記課題を解決するために、本発明の別の観点によれば、第１の画像データと第２の画像データにおける各画素の画素値の総和をライン毎に算出するステップと、第１の画像データと第２の画像データそれぞれにおいて、第１のラインの総和と第１のラインの下側に隣接する第２のラインの総和との差分をライン毎に算出するステップと、第１の画像データから得られる画像の高さ方向の差分の変化と、第２の画像データから得られる画像の高さ方向の差分の変化を比較して、第１の画像データと第２の画像データ間の高さ方向のずれ量を算出するステップとをコンピュータに実行させるためのプログラムが提供される。
【発明の効果】
【００１４】
以上説明したように本発明によれば、二つの画像間の高さ方向のずれ量を迅速かつ簡易に検出することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態に係る撮像装置１００を示すブロック図である。
【図２】プロジェクションデータの算出動作を示すフローチャートである。
【図３】プロジェクション微分データの算出動作を示すフローチャートである。
【図４】左側画像と右側画像のプロジェクション微分データを用いた仮定ずれ量に対する評価値の算出動作を示すフローチャートである。
【図５】評価値に基づいたずれ量の算出動作を示すフローチャートである。
【図６】図６（ａ）と図６（ｃ）はそれぞれ左側画像と右側画像を示し、図６（ｂ）と図６（ｄ）は左側画像と右側画像のプロジェクションデータを示す。
【図７】図７（ａ）と図７（ｃ）は、図６と同じ画像であり、図７（ｂ）と図７（ｄ）は左側画像と右側画像のプロジェクション微分データを示す。
【図８】プロジェクションデータの場合の評価値とシフト量の関係を示すグラフである。
【図９】プロジェクション微分データの場合の評価値とシフト量の関係を示すグラフである。
【図１０】図１０（ａ）と図１０（ｃ）はそれぞれ左側画像と右側画像を示し、図１０（ｂ）と図１０（ｄ）は左側画像と右側画像のプロジェクションデータを示す。
【図１１】図１１（ａ）と図１１（ｃ）は、図１０と同じ画像であり、図１１（ｂ）と図１１（ｄ）は左側画像と右側画像のプロジェクション微分データを示す。
【図１２】プロジェクションデータの場合の評価値とシフト量の関係を示すグラフである。
【図１３】プロジェクション微分データの場合の評価値とシフト量の関係を示すグラフである。
【発明を実施するための形態】
【００１６】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１７】
［１．撮像装置１００の構成］
まず、図１を参照して、本発明の一実施形態に係る撮像装置１００の構成について説明する。図１は、本実施形態に係る撮像装置１００を示すブロック図である。
【００１８】
撮像装置１００は、例えば静止画像を撮影できるデジタルスチルカメラ、又は動画像を撮影できるビデオカメラである。本実施形態における画面内のガイドラインの表示は、静止画像撮影の際に表示するライブビュー表示、動画像撮影における撮影画像の表示のいずれにも適用できる。なお、デジタルスチルカメラで動画像を撮影する場合、又はビデオカメラで静止画像を撮影する場合にも適用できる。また、撮像装置１００は、ステレオカメラであり、レンズ及び撮像装置を二つずつ有する。そして、撮像装置１００は、立体的に画像を見るための左側画像と右側画像を取得する。これらの画像をテレビやディスプレイ等の表示装置に表示することで、鑑賞者は画像を立体的に見ることができる。
【００１９】
撮像装置１００は、例えば、レンズ１０２，１０３と、撮像素子１０４，１０５と、コントローラ部１０８と、画像信号処理部１１０と、ＣＰＵ１２０と、ＤＲＡＭ１２２と、ＲＯＭ１２４と、モニタ駆動部１３２と、ＬＣＤモニタ１３４と、静止画／動画圧縮処理部１４０と、メモリカード１５０と、操作部１６０等からなる。
【００２０】
レンズ１０２，１０３はそれぞれ、外部の光情報を撮像素子１０４，１０５に結像させる光学系システムであり、被写体からの光を撮像素子１０４，１０５まで透過させる。レンズ１０２，１０３は、図示しないが、例えばズームレンズ、絞り、フォーカスレンズなどからなる。ズームレンズは、焦点距離を変化させて画角を変えるレンズである。絞りは、透過する光量を調節する機構である。フォーカスレンズは、光軸方向に移動することで撮像素子１０４，１０５の撮像面に被写体像を合焦させる。フォーカスレンズは、コントローラ部１０８によって駆動される。
【００２１】
撮像素子１０４，１０５は、光電変換素子の一例であり、レンズ１０２，１０３を透過して入射した光情報を電気信号に変換する光電変換が可能な複数の素子から構成される。各素子は受光した光量に応じた電気信号を生成する。撮像素子１０４，１０５は、ＣＣＤ（Charge  Coupled  Device）イメージセンサー、ＣＭＯＳ（Complementary  Metal  Oxide  Semiconductor）イメージセンサー等を適用することができる。
【００２２】
なお、撮像素子１０４，１０５の露光時間を制御するため、非撮影時に光を遮って撮影時のみ光が当たるように、メカニカルシャッター（図示せず。）を適用することができる。また、これに限定されず、電子シャッターを適用してもよい。なお、メカニカルシャッター又は電子シャッターの動作は、シャッターボタン（操作部１６０）のスイッチによって行われる。
【００２３】
撮像素子１０４，１０５は、更にＣＤＳ／ＡＭＰ部、Ａ／Ｄ変換部を有する。ＣＤＳ／ＡＭＰ部（相関二重サンプリング回路（Correlated  Double  Sampling）／増幅器（Amplifier））は、撮像素子１０４，１０５から出力された電気信号に含まれるリセットノイズとアンプノイズを除去すると共に、電気信号を任意のレベルまで増幅する。Ａ／Ｄ変換部は、ＣＤＳ／ＡＭＰ部から出力された電気信号をデジタル変換してデジタル信号を生成する。Ａ／Ｄ変換部は、生成したデジタル信号を画像信号処理部１１０に出力する。
【００２４】
画像信号処理部１１０は、前処理部と、画像処理部などからなる。前処理部は、Ａ／Ｄ変換部から出力されたデジタル信号に対して処理を施し、画像処理が可能となる画像信号を生成する。前処理部は、例えば、撮像素子１０４の画素欠陥補正、黒レベル補正、シェーディング補正などの処理を行う。前処理部は、生成した画像信号を画像処理部に出力する。
【００２５】
画像処理部は、前処理部から画像信号を受け、輝度信号と色信号に変換処理する。画像処理部は、ＷＢ制御値、γ値、エッジ（輪郭）強調制御値などに基づいて、画像処理された画像信号を生成する。画像処理部は、生成した画像信号を静止画／動画圧縮処理部１４０に送る。
【００２６】
また、画像処理部は、左右ずれ量推定部１１２、左右ずれ補正部１１４を有する。左右ずれ量推定部１１２は、総和算出部、差分算出部、ずれ量算出部からなる。総和算出部は、第１の画像データと第２の画像データにおける各画素の画素値の総和をライン毎に算出する。差分算出部は、第１の画像データと第２の画像データそれぞれにおいて、第１のラインの総和と第１のラインの下側に隣接する第２のラインの総和との差分をライン毎に算出する。
【００２７】
ずれ量算出部は、第１の画像データから得られる画像の高さ方向の差分の変化と、第２の画像データから得られる画像の高さ方向の差分の変化を比較して、第１の画像データと第２の画像データ間の高さ方向のずれ量を算出する。このとき、ずれ量算出部は、第１の画像データと第２の画像データ間の高さ方向の仮定ずれ量を設定し、仮定ずれ量分だけ第１の画像データと第２の画像データがずれているとしたときの評価値を算出し、評価値に基づいてずれ量を算出してもよい。
【００２８】
左右ずれ補正部１１４は、ずれ補正部の一例であり、左右ずれ量推定部１１２で求められたずれ量に基づいて、第１の画像データと第２の画像データ間の高さ方向のずれを補正する。そして、左右ずれ補正部１１４は、高さ方向のずれが補正された画像をＣＰＵ１２０に出力する。
【００２９】
コントローラ部１０８は、例えばＣＰＵ（Central  Processor  Unit）であり、操作部１６０や全体信号処理部１１０からの信号に基づいてレンズ１０２，１０３、映像信号処理部１０６といった構成要素を制御する。
【００３０】
ＣＰＵ１２０は、プログラムによって演算処理装置及び制御装置として機能し、撮像装置１００内に設けられた各構成要素の処理を制御する。ＣＰＵ１２０は、例えば、コントローラ部１０８に信号を出力してレンズ１０２，１０３のフォーカスレンズを駆動させる。なお、本実施形態においては、コントローラ部１０８による操作系の命令と、ＣＰＵ１２０による信号系の命令とを別々のＣＰＵで行う構成であるが、ＣＰＵが１つだけからなる構成でもよい。
【００３１】
モニタ駆動部１３２は、ＶＲＡＭから画像データを受けて、ＬＣＤモニタ１３４の画面に画像を表示する。ＬＣＤモニタ１３４は、撮像装置１００の本体に設けられる。ＬＣＤモニタ１３４が表示する画像は、例えば、ＶＲＡＭから読み出された撮影前の画像（ライブビュー表示）、撮像装置１００の各種設定画面や、撮像して記録された画像などである。ＬＣＤモニタ１３４は、例えば液晶ディスプレイ、有機ＥＬディスプレイなどである。ＬＣＤモニタ１３４は、本実施形態のように両方が撮像装置１００に設けられてもよいし、いずれか一方のみが撮像装置１００に設けられるとしてもよい。
【００３２】
静止画／動画圧縮処理部１４０は、画像信号処理部１１０からの画像データに対して、例えばＪＰＥＧ（Joint  Photographic  Experts  Group）規格などの静止画像の符号化方式で圧縮符号化処理を行う。生成された圧縮符号化されたデータはメモリカード１５０等に記録される。
【００３３】
また、静止画／動画圧縮処理部１４０は、画像信号処理部１１０から静止画像の画像データを受けて、コーディング（符号化）処理によって動画像データを生成する。静止画／動画圧縮処理部１４０は、例えばＭＰＥＧ形式などで符号化処理をして、複数の画像フレームが一つのファイルとして纏められたストリームデータを生成する。生成された動画像データは、メモリカード１５０等に記録される。また、静止画／動画圧縮処理部１４０は、メモリカード１５０から供給された静止画像又は動画像の符号化データに対して伸張復号化処理を行う。
【００３４】
メモリカード１５０は、画像データの書き込み、又は記録された画像データや設定情報などの読み出しがされる。メモリカード１５０は、例えば、磁気ディスク、半導体記憶媒体などの記録媒体であり、撮影された画像データを記録する。記録媒体であれば、メモリカード１５０に限定されず、光ディスク（ＣＤ、ＤＶＤ、ブルーレイディスク等）、光磁気ディスクなどでもよい。メモリカード１５０は、撮像装置１００から着脱可能に構成されてもよい。
【００３５】
操作部１６０は、例えば、撮像装置１００に設けられた上下左右キー、電源スイッチ、モードダイアル、シャッターボタンなどである。操作部１６０は、ユーザーによる操作に基づいて操作信号をコントローラ部１０８等に送る。例えば、静止画像の撮影に使用されるシャッターボタンは、ユーザーによる半押し（Ｓ１操作）、全押し（Ｓ２操作）、解除が可能である。シャッターボタンは、半押しされたときフォーカス制御開始の操作信号を出力し、半押し解除でフォーカス制御が終了する。また、シャッターボタンは、全押しされたとき、撮影開始の操作信号を出力する。
【００３６】
なお、撮像装置１００における一連の処理は、ハードウェアで処理してもよいし、コンピュータ上のプログラムによるソフトウェア処理で実現してもよい。
【００３７】
［２．撮像装置１００の動作］
本実施形態は、左側画像と右側画像それぞれが撮像素子１０４，１０５からスキャンライン毎に画像信号処理部１１０に入力されてくることを想定し、１スキャンライン毎に画素の画素値の総和（プロジェクションデータ）を左右それぞれについて記憶する。そして、画像の高さ分だけ記憶された左右の信号を比較することで、左右の画像のずれ量を検出する。但し、本実施形態では、ずれ量の検出において、記憶された１次元の信号をそのまま比較するのではなく、これらの信号を画像の高さ方向に微分した信号で比較する。
【００３８】
まず、プロジェクションデータの算出動作について説明する。図２は、プロジェクションデータの算出動作を示すフローチャートである。
【００３９】
初めに、左側画像と右側画像からなる画像データを取得する（ステップＳ１０１）。画像データは通常画像の左上からスキャンライン毎に画像信号処理部１１０に入力されてくる。そこで、１スキャンライン毎にその横方向のラインに並ぶ画素の画素値の総和を算出する（ステップＳ１０２）。そして、画像データの全てのラインについて、画素値の総和を算出していく（ステップＳ１０３）。ライン毎の画素値の総和は、左側画像と右側画像のそれぞれについて、プロジェクションデータとして例えばＤＲＡＭ１２２に記憶される（ステップＳ１０４）。本実施形態では、左側画像と右側画像それぞれのプロジェクションデータを記憶できるように、左側画像と右側画像それぞれに画像の高さ分の画素数に対応したメモリ領域を用意しておく。
【００４０】
次に、プロジェクション微分データの算出動作について説明する。図３は、プロジェクション微分データの算出動作を示すフローチャートである。
【００４１】
まず、画像全体について生成された左側画像、右側画像それぞれのプロジェクションデータを取得する（ステップＳ１１１）。そして、プロジェクションデータを使用して、ライン毎に当該ラインの総和と、下側に隣接するラインの総和との差分を算出する（ステップＳ１１２）。そして、画像データの全てのラインについて、二つの総和の差分を算出していく（ステップＳ１１３）。但し、画像の一番下のラインには下側に隣接するラインがないため、ここでの全てのラインとは、一番下のラインを除く全てのラインである。二つの総和の差分は、左側画像と右側画像のそれぞれについて、プロジェクション微分データとして例えばＤＲＡＭ１２２に記憶される（ステップＳ１１４）。
【００４２】
次に、左側画像と右側画像のプロジェクション微分データを用いた仮定ずれ量に対する評価値の算出動作について説明する。図４は、左側画像と右側画像のプロジェクション微分データを用いた仮定ずれ量に対する評価値の算出動作を示すフローチャートである。
【００４３】
まず、左側画像と右側画像のプロジェクション微分データと、仮定ずれ量を取得する（ステップＳ１２１）。仮定ずれ量は、例えば−１６画素から＋１６画素の範囲の中から順次選択され、一つの評価値の算出のためには一つの仮定ずれ量が設定される（ステップＳ１２２）。そして、設定された仮定ずれ量だけ左側画像と右側画像がずれているとしたとき、左側画像と右側画像が重なっている範囲について、ライン単位で左側画像と右側画像のプロジェクション微分データの絶対差分値を算出する（ステップＳ１２３）。すなわち、仮定ずれ量だけ左側画像と右側画像がずれているときに同一高さとなるライン同士のプロジェクション微分データの差分を絶対値で算出する。
【００４４】
そして、ライン毎に算出される絶対差分値を累積して総和を算出していく（ステップＳ１２４）。画像データの全てのラインについて絶対差分値を算出し、全てのラインの絶対差分値の総和を算出する（ステップＳ１２５）。但し、画像の一番下のラインには下側に隣接するラインがないため、ここでの全てのラインとは、一番下のラインを除く全てのラインである。なお、絶対差分値を算出したラインの数をカウントしておき、絶対差分値の総和を正規化する（ステップＳ１２６）。そして、正規化した絶対差分値の総和は、設定した仮定ずれ量における評価値として例えばＤＲＡＭ１２２に記憶される（ステップＳ１２７）。評価値は、例えば−１６画素から＋１６画素の範囲の仮定ずれ量全てについて算出される。
【００４５】
次に、評価値に基づいたずれ量の算出動作について説明する。図５は、評価値に基づいたずれ量の算出動作を示すフローチャートである。
【００４６】
まず、仮定ずれ量ごとに算出した評価値を取得する（ステップＳ１３１）。評価値は、絶対差分値の総和に基づくものであるから、左側画像と右側画像で差が少ないほど評価値は小さくなる。従って、評価値を相対的に比較すると、値が最小のものが最良の結果であると推測される。そこで、取得した複数の評価値を比較する（ステップＳ１３２）。そして、評価値が最良のときの仮定ずれ量を左側画像と右側画像のずれ量として推測し決定する（ステップＳ１３３）。
【００４７】
上記の構成及び動作による本実施形態の実施例について、以下で説明する。
【００４８】
図６は、左側画像と右側画像の違いがそれほどないケースであって、図６（ａ）と図６（ｃ）はそれぞれ左側画像と右側画像を示し、図６（ｂ）と図６（ｄ）は左側画像と右側画像のプロジェクションデータを示している。図７（ａ）と図７（ｃ）は、図６と同じ画像であり、図７（ｂ）と図７（ｄ）は左側画像と右側画像のプロジェクション微分データを示している。
【００４９】
図６及び図７の右側画像は、もともと左側画像と比較してずれ量がゼロである６４０画素×４８０画素の画像から、上下１０画素ずつを切り捨てて６４０画素×４６０画素にしたものである。したがって、図６及び図７の実施例におけるずれ量の真値は、右側画像が左側画像に対して＋１０画素、又は左側画像が右側画像に対して−１０画素であるといえる。
【００５０】
このとき、画素値は輝度値を採用するとしたとき、左側画像と右側画像のグレースケール画像を生成し、スキャンライン毎に輝度値の総和を算出すると、図６（ｂ）と図６（ｄ）に示すようなプロジェクションデータが得られる。また、プロジェクションデータに基づいて、画像の高さ方向の微分値、即ち、ある高さでのラインの輝度値の総和と、そのラインの１ライン下のラインの輝度値の総和との差分を計算すると、図７（ｂ）と図７（ｄ）に示すようなプロジェクション微分データが得られる。
【００５１】
次に、プロジェクションデータの場合と、プロジェクション微分データの場合のそれぞれについて、右側画像の波形位置を固定して、左側画像の波形を−１６画素から＋１６画素の範囲でシフトさせ、どれだけシフトすると差が最小になるかを調べる。その結果、図８及び図９に示すようになる。図８は、プロジェクションデータの場合の評価値とシフト量の関係を示すグラフであり、図９は、プロジェクション微分データの場合の評価値とシフト量の関係を示すグラフである。グラフを見て分かるように、プロジェクションデータの場合と、プロジェクション微分データの場合のいずれも真値である−１０画素で左側画像と右側画像の誤差が最小となった。
【００５２】
一方、左側画像と右側画像のいずれか一方にだけ何らの物体が写り込んでいるケースについて説明する。図１０及び図１１は、右側画像にのみ手が写り込んでいるケースである。図１０（ａ）と図１０（ｃ）はそれぞれ左側画像と右側画像を示し、図１０（ｂ）と図１０（ｄ）は左側画像と右側画像のプロジェクションデータを示している。図１１（ａ）と図１１（ｃ）は、図１０と同じ画像であり、図１１（ｂ）と図１１（ｄ）は左側画像と右側画像のプロジェクション微分データを示している。
【００５３】
図１０及び図１１の右側画像は、図６及び図７の右側画像と同様に加工したものであって、図１０及び図１１の実施例におけるずれ量の真値は、右側画像が左側画像に対して＋１０画素、又は左側画像が右側画像に対して−１０画素であるといえる。
【００５４】
このとき、図６及び図７の例と同様に、左側画像と右側画像に基づいて、図１０（ｂ）と図１１（ｄ）に示すようなプロジェクションデータが得られる。また、プロジェクションデータに基づいて、図１１（ｂ）と図１１（ｄ）に示すようなプロジェクション微分データが得られる。
【００５５】
次に、図６及び図７の例と同様に、プロジェクションデータの場合と、プロジェクション微分データの場合のそれぞれについて、右側画像の波形位置を固定して、左側画像の波形を−１６画素から＋１６画素の範囲でシフトさせ、どれだけシフトすると差が最小になるかを調べる。その結果、図１２及び図１３に示すようになる。図１２は、プロジェクションデータの場合の評価値とシフト量の関係を示すグラフであり、図１３は、プロジェクション微分データの場合の評価値とシフト量の関係を示すグラフである。
【００５６】
グラフを見ると、本実施形態として説明したプロジェクション微分データを使用した場合のみ、真値である−１０画素で誤差が最小となることが分かる。プロジェクションデータを使用した場合は、真値である−１０画素で誤差が最小になっておらず正しいずれ量が推定できない。
【００５７】
以上、本実施形態は、プロジェクション微分データを使用することによって、左側画像と右側画像の違いがそれほどないケースだけでなく、左側画像と右側画像のいずれか一方にだけ何らの物体が写り込んでいるケースについても、左側画像と右側画像のずれ量を正しく検出できる。すなわち、本実施形態は左側画像と右側画像の違いに対する高い頑健性を有する。
【００５８】
また、本実施形態は、フレームバッファを使用せずラインバッファのみを使用するだけで実現可能であり、必要なメモリ容量を大幅に削減することができる。更に、ずれ量を算出する際、評価値を単純に一方向にシフトするだけでよく、従来の手法に比べて計算量を低減できる。
【００５９】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【００６０】
例えば、上記実施形態では、ステレオカメラで取得された左側画像と右側画像のずれ量の検出について説明したが、本発明はこの例に限定されない。すなわち、生産ラインにおける製品検査等の用途で行われる画像位置合わせといった分野でのずれ量検出にも適用可能である。
【００６１】
また、上記実施形態では、ステレオカメラ内部における処理として説明したが、本発明はこの例に限定されない。例えば、画像データを取得したパーソナルコンピュータなどの情報処理装置が、本発明のずれ量検出動作を実現してもよい。
【符号の説明】
【００６２】
１００    撮像装置
１０２，１０３    レンズ
１０４，１０５    撮像素子
１０８    コントローラ部
１１０    画像信号処理部
１１２    左右ずれ量推定部
１１４    左右ずれ補正部
１２０    ＣＰＵ
１２２    ＤＲＡＭ
１２４    ＲＯＭ
１３２    モニタ駆動部
１３４    ＬＣＤモニタ
１４０    静止画／動画圧縮処理部
１５０    メモリカード
１６０    操作部
【図１】
2012095133.tif 000003
【図２】
2012095133.tif 000004
【図３】
2012095133.tif 000005
【図４】
2012095133.tif 000006
【図５】
2012095133.tif 000007
【図６】
2012095133.tif 000008
【図７】
2012095133.tif 000009
【図８】
2012095133.tif 000010
【図９】
2012095133.tif 000011
【図１０】
2012095133.tif 000012
【図１１】
2012095133.tif 000013
【図１２】
2012095133.tif 000014
【図１３】
2012095133.tif 000015