トップ :: G 物理学 :: G01 測定;試験




【発明の名称】 視差画像撮像装置、視差画像処理装置、視差画像撮像方法、及び視差画像処理方法
【発明者】 【氏名】小野 修司

【要約】 【課題】鏡面反射成分又は透過光成分が含まれた被写体の複数の視差画像に基づいて、被写体の正確な奥行き値を獲得することのできる視差画像撮像装置、視差画像処理装置、視差画像撮像方法、及び視差画像処理方法を提供する。

【解決手段】被写体を見る視点を略直線上に移動させた場合に得られる複数の視差画像を順次撮像させる制御部39と、制御部39により撮像された複数の視差画像を視点の移動の順に時間軸方向に並べた時空間画像において、略直線性を有する直線成分を検出する直線成分検出部22と、略直線性を有する直線成分の傾きに基づいて、略直線性を有する直線成分上の画素に撮像された被写体の領域までの距離を算出する距離計算部38とを備えた。
【特許請求の範囲】
【請求項1】 被写体の奥行きに関する情報を獲得する視差画像撮像装置であって、前記被写体を見る視点を略直線上に移動させた場合に得られる複数の視差画像を順次撮像させる制御部と、前記制御部により撮像された前記複数の視差画像を前記視点の移動の順に時間軸方向に並べた時空間画像において、略直線性を有する直線成分を検出する直線成分検出部と、前記略直線性を有する直線成分の傾きに基づいて、前記略直線性を有する直線成分上の画素に撮像された前記被写体の領域までの距離を算出する距離成分算出部とを備えたことを特徴とする視差画像撮像装置。
【請求項2】 前記直線成分検出部は、前記時空間画像において、曲線成分を有する連続した線分を除外した後に、前記略直線性を有する直線成分を検出することを特徴とする請求項1に記載の視差画像撮像装置。
【請求項3】 前記直線成分検出部は、前記複数の視差画像の特定の画素が、前記視点の移動に従って、前記複数の視差画像上で移動した軌跡を表す視差ラインの内、略直線性を有する前記視差ラインを検出することにより、前記略直線性を有する直線成分を検出することを特徴とする請求項1に記載の視差画像撮像装置。
【請求項4】 前記被写体を結像する第1の光学結像部と、複数の受光素子が配置され、前記第1の光学結像部により前記被写体の前記複数の視差画像が撮像される第1の受光部と、前記第1の光学結像部を移動させる駆動部とをさらに備え、前記制御部が前記視点の移動方向及び移動量を指定し、前記駆動部は前記移動方向及び前記移動量に基づいて前記第1の光学結像部を略直線上に移動させることを特徴とする請求項1に記載の視差画像撮像装置。
【請求項5】 前記直線成分検出部は、前記制御部が指定する前記視点の前記移動方向と略同一の方向に、前記制御部が指定する前記視点の前記移動量に基づいて、連続する線分を検出することにより、前記略直線性を有する直線成分を検出することを特徴とする請求項4に記載の視差画像撮像装置。
【請求項6】 前記被写体を結像する第2の光学結像部と、前記第2の光学結像部により前記被写体の画像が撮像される第2の受光部と、前記第1の受光部に撮像された前記複数の視差画像、前記距離成分算出部が算出した前記距離、及び前記第2の受光部に撮像された前記被写体の画像を記録する記録部とをさらに備え、前記制御部が、前記距離成分算出部が算出した前記距離に基づいて、前記第2の光学結像部のフォーカス、絞り、及び前記第2の受光部の露光時間の少なくとも一つを制御することを特徴とする請求項4に記載の視差画像撮像装置。
【請求項7】 前記第1の光学結像部により前記被写体の画像が撮像される第2の受光部と、前記第1の受光部に撮像された前記複数の視差画像、前記距離成分算出部が算出した前記距離、及び前記第2の受光部に撮像された前記被写体の画像を記録する記録部とをさらに備え、前記制御部が、前記距離成分算出部が算出した前記距離に基づいて、前記第1の光学結像部のフォーカス、絞り、及び前記第2の受光部の露光時間の少なくとも一つを制御することを特徴とする請求項4に記載の視差画像撮像装置。
【請求項8】 被写体の奥行きに関する情報を算出する視差画像処理装置であって、前記被写体の画像及び前記被写体を見る視点を略直線上に移動させた場合に得られる複数の視差画像を入力する視差画像入力部と、前記被写体の画像及び前記複数の視差画像を記憶する視差画像記憶部と、前記複数の視差画像を前記視点の移動の順に時間軸方向に並べた時空間画像において、略直線性を有する直線成分を検出する直線成分検出部と、前記略直線性を有する直線成分の傾きに基づいて、前記略直線性を有する直線成分上の画素に撮像された前記被写体の領域までの距離を算出する距離成分算出部と、前記距離成分算出部が算出した前記距離に基づいて、前記被写体の前記画像を処理する画像処理部と、前記画像処理部が作成して得られた画像を出力する画像出力部とを備えたことを特徴とする視差画像処理装置。
【請求項9】 前記直線成分検出部は、前記時空間画像において、曲線成分を有する連続した線分を除外した後に、前記略直線性を有する直線成分を検出することを特徴とする請求項8に記載の視差画像処理装置。
【請求項10】 前記直線成分検出部は、前記複数の視差画像の特定の画素が、前記視点の移動に従って、前記複数の視差画像上で移動した軌跡を表す視差ラインの内、略直線性を有する前記視差ラインを検出することにより、前記略直線性を有する直線成分を検出することを特徴とする請求項8に記載の視差画像処理装置。
【請求項11】 被写体の奥行きに関する情報を算出するコンピュータ用のプログラムを格納した記録媒体であって、前記プログラムが、前記コンピュータに働きかけて、前記被写体の画像及び前記被写体を見る視点を略直線上に移動させた場合に得られる複数の視差画像を入力させる視差画像入力モジュールと、前記コンピュータに働きかけて、前記被写体の画像及び前記複数の視差画像を記憶させる視差画像記憶モジュールと、前記コンピュータに働きかけて、前記複数の視差画像を前記視点の移動の順に時間軸方向に並べた時空間画像において、略直線性を有する直線成分を検出させる直線成分検出モジュールと、前記コンピュータに働きかけて、前記略直線性を有する直線成分の傾きに基づいて、前記略直線性を有する直線成分上の画素に撮像された前記被写体の領域までの距離を算出させる距離成分算出モジュールと、前記コンピュータに働きかけて、前記距離成分算出モジュールが算出した距離に基づいて、前記被写体の前記画像を処理させる画像処理モジュールと、前記コンピュータに働きかけて、前記画像処理モジュールが作成して得られた画像を出力させる画像出力モジュールとを備えたことを特徴とする記録媒体。
【請求項12】 前記直線成分検出モジュールは、前記時空間画像において、曲線成分を有する連続した線分を除外した後に、略直線性を有する直線成分を検出することを特徴とする請求項11に記載の記録媒体。
【請求項13】 前記直線成分検出モジュールは、前記複数の視差画像の特定の画素が、前記視点の移動に従って、前記複数の視差画像上で移動した軌跡を表す視差ラインの内、略直線性を有する前記視差ラインを検出することにより、前記略直線性を有する直線成分を検出することを特徴とする請求項11に記載の記録媒体。
【請求項14】 被写体の奥行きに関する情報を算出する視差画像処理方法であって、前記被写体の画像及び前記被写体を見る視点を略直線上に移動させた場合に得られる複数の視差画像を入力し、前記複数の視差画像を前記視点の移動の順に時間軸方向に並べた時空間画像において、略直線性を有する直線成分を検出し、前記略直線性を有する直線成分の傾きに基づいて、前記略直線性を有する直線成分上の画素に撮像された前記被写体の領域までの距離を算出することを特徴とする視差画像処理方法。
【請求項15】 前記時空間画像において、曲線成分を有する連続した線分を除外した後に、前記略直線性を有する直線成分を検出することを特徴とする請求項14に記載の視差画像処理方法。
【請求項16】 前記複数の視差画像の特定の画素が、前記視点の移動に従って、前記複数の視差画像上で移動した軌跡を表す視差ラインの内、略直線性を有する前記視差ラインを検出することにより、前記略直線性を有する直線成分を検出することを特徴とする請求項14に記載の視差画像処理方法。
【請求項17】 被写体の奥行きに関する情報を獲得する視差画像撮像方法であって、前記被写体を見る視点を略直線上に移動させた場合に得られる複数の視差画像を撮像し、前記複数の視差画像を前記視点の移動の順に時間軸方向に並べた時空間画像において、略直線性を有する直線成分を検出し、前記略直線性を有する直線成分の傾きに基づいて、前記略直線性を有する直線成分上の画素に撮像された前記被写体の領域までの距離を算出し、前記距離算出部が算出した前記距離に基づいて、前記被写体を撮像するときの撮影条件を調整し、前記被写体を前記撮影条件で撮像することを特徴とする視差画像撮像方法。
【発明の詳細な説明】【0001】
【発明の属する技術分野】本発明は、異なる視点から被写体を見た場合に得られる複数の視差画像に基づいて、被写体の奥行き値を獲得する視差画像撮像装置、視差画像処理装置、視差画像撮像方法、及び視差画像処理方法に関する。
【0002】
【従来の技術】画像処理や画像認識の分野において、被写体の奥行き方向の情報を抽出する手法として、異なる視点から被写体を見た場合に得られる複数の視差画像を用いて、視差画像間の視差を検出し、視差から被写体の奥行き値を計算する方法が一般に取られている。
【0003】複数の視差画像間の視差を検出するためには、ある視差画像に撮像された被写体の点が、他の視差画像のどこに対応しているかを探し出す処理が必要である。被写体を見る視点を直線移動させ、視差画像を連続撮像した場合、対応点は連続視差画像上で直線上に位置する。この直線を視差ラインと呼び、従来、この視差ラインの傾きに基づいて、三角測量の原理から被写体の点の奥行き値を求めていた。
【0004】
【発明が解決しようとする課題】被写体の連続視差画像において、上述のように奥行き値に応じた傾きの直線が現れるのは、被写体表面が拡散反射面である場合に限られる。しかし、実際の被写体では、物体の表面に鏡面反射成分が多く含まれていたり、ガラス製品のように物体が光を透過することも少なくない。このような場合、被写体の連続視差画像の視差ラインは直線にはならない。連続視差画像から被写体の奥行き値を求める従来の方法は、被写体の表面は拡散反射成分しか含まないという前提で視差の検出を行っている。そのため、連続視差画像に含まれる鏡面反射成分や透過光成分が、視差の検出の際、ノイズ要因となり、視差量の検出を誤り、被写体の正確な奥行き値を計算することができないという問題が生じていた。
【0005】そこで本発明は、上記の課題を解決するために、被写体の連続視差画像に鏡面反射成分又は透過光成分が含まれた場合であっても、被写体の連続視差画像から被写体の奥行き値を正確に獲得することのできる視差画像撮像装置、視差画像処理装置、視差画像撮像方法、及び視差画像処理方法を提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【0006】
【課題を解決するための手段】即ち、本発明の第1の形態における視差画像撮像装置は、被写体の奥行きに関する情報を獲得する視差画像撮像装置であって、被写体を見る視点を略直線上に移動させた場合に得られる複数の視差画像を順次撮像させる制御部と、制御部により撮像された複数の視差画像を視点の移動の順に時間軸方向に並べた時空間画像において、略直線性を有する直線成分を検出する直線成分検出部と、略直線性を有する直線成分の傾きに基づいて、略直線性を有する直線成分上の画素に撮像された被写体の領域までの距離を算出する距離成分算出部とを備えたことを特徴とする。
【0007】直線成分検出部は、時空間画像において、曲線成分を有する連続した線分を除外した後に、略直線性を有する直線成分を検出してもよい。
【0008】直線成分検出部は、複数の視差画像の特定の画素が、視点の移動に従って、複数の視差画像上で移動した軌跡を表す視差ラインの内、略直線性を有する視差ラインを検出することにより、略直線性を有する直線成分を検出してもよい。
【0009】被写体を結像する第1の光学結像部と、複数の受光素子が配置され、第1の光学結像部により被写体の複数の視差画像が撮像される第1の受光部と、第1の光学結像部を移動させる駆動部とをさらに備え、制御部が視点の移動方向及び移動量を指定し、駆動部は移動方向及び移動量に基づいて第1の光学結像部を略直線上に移動させてもよい。
【0010】直線成分検出部は、制御部が指定する視点の移動方向と略同一の方向に、制御部が指定する視点の移動量に基づいて、連続する線分を検出することにより、略直線性を有する直線成分を検出してもよい。
【0011】被写体を結像する第2の光学結像部と、第2の光学結像部により被写体の画像が撮像される第2の受光部と、第1の受光部に撮像された複数の視差画像、距離成分算出部が算出した距離、及び第2の受光部に撮像された被写体の画像を記録する記録部とをさらに備え、制御部が、距離成分算出部が算出した距離に基づいて、第2の光学結像部のフォーカス、絞り、及び第2の受光部の露光時間の少なくとも一つを制御してもよい。
【0012】第1の光学結像部により被写体の画像が撮像される第2の受光部と、第1の受光部に撮像された複数の視差画像、距離成分算出部が算出した距離、及び第2の受光部に撮像された被写体の画像を記録する記録部とをさらに備え、制御部が、距離成分算出部が算出した距離に基づいて、第1の光学結像部のフォーカス、絞り、及び第2の受光部の露光時間の少なくとも一つを制御してもよい。
【0013】本発明の第2の形態における視差画像処理装置は、被写体の奥行きに関する情報を算出する視差画像処理装置であって、被写体の画像及び被写体を見る視点を略直線上に移動させた場合に得られる複数の視差画像を入力する視差画像入力部と、被写体の画像及び複数の視差画像を記憶する視差画像記憶部と、複数の視差画像を視点の移動の順に時間軸方向に並べた時空間画像において、略直線性を有する直線成分を検出する直線成分検出部と、略直線性を有する直線成分の傾きに基づいて、略直線性を有する直線成分上の画素に撮像された被写体の領域までの距離を算出する距離成分算出部と、距離成分算出部が算出した距離に基づいて、被写体の画像を処理する画像処理部と、画像処理部が作成して得られた画像を出力する画像出力部とを備えたことを特徴とする。
【0014】直線成分検出部は、時空間画像において、曲線成分を有する連続した線分を除外した後に、略直線性を有する直線成分を検出してもよい。
【0015】直線成分検出部は、複数の視差画像の特定の画素が、視点の移動に従って、複数の視差画像上で移動した軌跡を表す視差ラインの内、略直線性を有する視差ラインを検出することにより、略直線性を有する直線成分を検出してもよい。
【0016】本発明の第3の形態における記録媒体は、被写体の奥行きに関する情報を算出するコンピュータ用のプログラムを格納した記録媒体であって、プログラムが、コンピュータに働きかけて、被写体の画像及び被写体を見る視点を略直線上に移動させた場合に得られる複数の視差画像を入力させる視差画像入力モジュールと、コンピュータに働きかけて、被写体の画像及び複数の視差画像を記憶させる視差画像記憶モジュールと、コンピュータに働きかけて、複数の視差画像を視点の移動の順に時間軸方向に並べた時空間画像において、略直線性を有する直線成分を検出させる直線成分検出モジュールと、コンピュータに働きかけて、略直線性を有する直線成分の傾きに基づいて、略直線性を有する直線成分上の画素に撮像された被写体の領域までの距離を算出させる距離成分算出モジュールと、コンピュータに働きかけて、距離成分算出モジュールが算出した距離に基づいて、被写体の画像を処理させる画像処理モジュールと、コンピュータに働きかけて、画像処理モジュールが作成して得られた画像を出力させる画像出力モジュールとを備えたことを特徴とする。
【0017】直線成分検出モジュールは、時空間画像において、曲線成分を有する連続した線分を除外した後に、略直線性を有する直線成分を検出してもよい。
【0018】直線成分検出モジュールは、複数の視差画像の特定の画素が、視点の移動に従って、複数の視差画像上で移動した軌跡を表す視差ラインの内、略直線性を有する視差ラインを検出することにより、略直線性を有する直線成分を検出してもよい。
【0019】本発明の第4の形態における視差画像処理方法は、被写体の奥行きに関する情報を算出する視差画像処理方法であって、被写体の画像及び被写体を見る視点を略直線上に移動させた場合に得られる複数の視差画像を入力し、複数の視差画像を視点の移動の順に時間軸方向に並べた時空間画像において、略直線性を有する直線成分を検出し、略直線性を有する直線成分の傾きに基づいて、略直線性を有する直線成分上の画素に撮像された被写体の領域までの距離を算出することを特徴とする。
【0020】時空間画像において、曲線成分を有する連続した線分を除外した後に、略直線性を有する直線成分を検出してもよい。
【0021】複数の視差画像の特定の画素が、視点の移動に従って、複数の視差画像上で移動した軌跡を表す視差ラインの内、略直線性を有する視差ラインを検出することにより、略直線性を有する直線成分を検出してもよい。
【0022】本発明の第5の形態における視差画像撮像方法は、被写体の奥行きに関する情報を獲得する視差画像撮像方法であって、被写体を見る視点を略直線上に移動させた場合に得られる複数の視差画像を撮像し、複数の視差画像を視点の移動の順に時間軸方向に並べた時空間画像において、略直線性を有する直線成分を検出し、略直線性を有する直線成分の傾きに基づいて、略直線性を有する直線成分上の画素に撮像された被写体の領域までの距離を算出し、距離算出部が算出した距離に基づいて、被写体を撮像するときの撮影条件を調整し、被写体を撮影条件で撮像することを特徴とする。
【0023】なお上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションも又発明となりうる。
【0024】
【発明の実施の形態】以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0025】(実施形態1)図1は、本発明の第1の実施形態に係る視差画像撮像装置の一例としてのカメラの構成図である。本実施形態のカメラは、光学結像部12と、カラーフィルター19と、受光部20と、レンズ52と、絞り54と、シャッター56と、カラーフィルター58と、CCD(電荷結合素子)60と、マルチプレクサー32と、A/D変換部34と、メモリ36と、距離計算部38と、制御部39と、記録部40と、駆動部42とを有する。
【0026】レンズ52は被写体を結像し、絞り54は絞り量を調整し、シャッター56は露光時間を調整する。カラーフィルター58はレンズ52を通して受光される光のRGB成分を分解する。CCD60はレンズ52によって結像された被写体の画像を受光して、電気信号に変換し、マルチプレクサー32に出力する。
【0027】光学結像部12は被写体の視差画像を結像する。カラーフィルター19は光学結像部12を通して受光される光のRGB成分を分解する。受光部20は光学結像部12によって結像された被写体の画像を受光して、電気信号に変換し、マルチプレクサー32に出力する。
【0028】受光部20は、複数の受光素子がマトリックス状に配置され、光学結像部により被写体が結像される。カラーフィルター19は受光部20の表面を覆い、光のRGB成分を透過させ、受光部20の受光素子に受光させる。受光部20の受光素子は、たとえばCCD(電荷結合素子)のような光電変換素子であってもよく、受光部20は、複数のCCDが配列された光電変換撮像体であってもよい。
【0029】駆動部42は、制御部39によって指定された視点の移動方向及び移動量に基づいて、光学結像部12を略直線上に移動させる。これにより、光学結像部12は、被写体を見る視点を略直線上に移動させた場合に得られる複数の視差画像を受光部20に結像させる。
【0030】マルチプレクサー32は、受光部20またはCCD60の出力信号のどちらかを選択し、A/D変換部34に出力する。A/D変換部34は入力されたアナログ信号をデジタル信号に変換し、メモリ36に出力する。メモリ36は入力されたデジタル信号を格納する。メモリ36は、レンズ52がCCD60に撮像した被写体の画像、及び光学結像部12が撮像した被写体の視差画像を記憶する。
【0031】距離計算部38はメモリ36から複数の視差画像を読み出し、複数の視差画像に基づいて、視差画像の任意の画素に撮像された被写体の領域の奥行き値を計算し、視差画像の全領域について奥行き値を格納した被写体の距離分布情報を出力する。距離計算部38は、複数の視差画像を視点の移動の順に時間軸方向に並べた時空間画像において、略直線性を有する直線成分を奥行き値の計算に利用し、略直線でない成分は奥行き値の計算には利用しない。
【0032】制御部39は、所望の視差画像を撮像するために、視点の移動方向及び移動量を指定して、駆動部42を制御する。制御部39はまた、メモリ36から読み出した被写体の画像の色情報、明度、彩度、及び距離計算部38が出力した被写体の距離分布情報に基づいて、レンズ52のフォーカス、絞り54の絞り量及びシャッター56の露光時間の少なくとも一つを制御する。
【0033】記録部40は、メモリ36から読み出した被写体の画像及び距離計算部38が出力した被写体の距離情報を記録する。記録部40はフロッピィディスクのような磁気記録媒体やフラッシュメモリのような不揮発性メモリであってもよい。
【0034】本実施形態のカメラによれば、被写体の連続視差画像が作る時空間画像において、略直線性を有する成分のみを奥行き値の計算に用い、略直線でない成分は奥行き値の計算に用いない。略直線でない成分は、鏡面反射成分又は透過光成分である。したがって、被写体の物体の表面に鏡面反射成分が多く含まれる場合や、ガラス製品のように物体が光を透過する場合であっても、視差の検出の際、ノイズ要因となる鏡面反射成分又は透過光成分を排除して、正しい視差量を検出し、正確な奥行き値を計算することができる。
【0035】尚、本実施形態のカメラでは、被写体を撮像する光学系と、視差画像を撮像する光学系を有するが、実施形態はこれに限られない。レンズ52、カラーフィルター58、CCD60に、それぞれ光学結像部12、カラーフィルター19、受光部20の機能を兼ねさせ、被写体を撮像する光学系と、視差画像を撮像する光学系を共通にし、同一の光学系を用いて、被写体の撮像と視差画像の撮像を行ってもよい。
【0036】図2は、光学結像部12を移動させた場合に撮像される視差画像の説明図である。図2において、前景80及び背景90は、被写体の一例である。前景80は、前面に曲面部を有する半透明の物体であり、前景80を通して背景90が透かして見える。光学結像部12を移動面2に沿って移動させた場合に、結像面4には、被写体の視差画像が撮像される。
【0037】光学結像部12から結像面4までの距離(焦点距離)をF、光学結像部12から前景80の後部までの距離をR0、光学結像部12から背景90までの距離をR1とする。光学結像部12を12aの位置から12bの位置へ移動させたときの移動距離(視点間隔)をLとする。
【0038】光学結像部12が移動面2の12aの位置にあるとき、前景80の点83及び85は、結像面4のそれぞれ83a及び85aの位置に撮像される。また背景90の点91及び95は、結像面4のそれぞれ91a及び95aの位置に撮像される。
【0039】光学結像部12が移動面2の12bの位置にあるとき、前景80の点83及び85は、結像面4のそれぞれ83b及び85bの位置に撮像される。また背景90の点91及び95は、結像面4のそれぞれ91b及び95bの位置に撮像される。
【0040】前景80は表面が曲面である半透明の物体であるため、前景80を通して見た背景90は光の屈折により歪んで見える。そのため、結像面4には前景80の像に重なるように、背景90の歪んだ像が撮像される。
【0041】光学結像部12が12aの位置にあるとき、結像面4に撮像された視差画像を基準画像と呼び、光学結像部12が12bの位置にあるとき、結像面に撮像された視差画像を参照画像と呼ぶ。基準画像の特定の位置にある画素を基準点とし、基準点に撮像された被写体の同一の点が撮像されている参照画像の画素を参照点と呼ぶ。基準画像における基準点の位置と、参照画像における参照点の位置には一定のずれがある。このずれを視差量と呼ぶ。視差量は基準画像のすべての画素に対して定義される。
【0042】図3は、図2に示した光学結像部12を移動面2に沿って移動しながら、前景80及び背景90を撮像した場合に、前景80及び背景90の結像面における像が視差画像上で移動した軌跡を示すグラフである。グラフの横軸は結像位置を示し、縦軸は光学結像部12を移動させた距離(視点間隔)を示す。
【0043】図3において、視点間隔Lだけ離れた視点から撮像した基準画像及び参照画像を比較すると、背景90の点95の像は95aから95bへ移動する。点95の像の移動した軌跡を表す線を視差ラインと呼ぶ。95aと95bの結像位置のずれ、すなわち視差量はd1である。このとき、背景90の点95の距離R1は、視点間隔L、焦点距離Fを用いて、式R1=F×L/d1によって計算できる。ここでK1=L/d1とおくと、K1は基準点95aについての視差ラインの傾きであり、R1=F×K1とかける。
【0044】また前景80の点85の像は85aから85bへ移動する。85aと85bの結像位置のずれ、すなわち視差量はd0である。このとき、前景80の点85の距離R0は、式R0=F×L/d0によって計算できる。視差ラインの傾きをK0=L/d0とおくと、R0=F×K0とかける。
【0045】一般に、基準画像のある画素を基準点として、基準点に対する参照画像の対応点を探し出し、視差ラインを抽出し、視差ラインの傾きKを求めれば、基準点に撮像された被写体の点の距離Rは、式R=F×Kによって求めることができる。
【0046】このように前景80及び背景90の像の位置のずれに基づいて、前景80の点及び背景90の点までの距離を計算できる。しかし、前景80の曲面部を透過した背景90の点は、光の屈折により歪んで見えるため、視差画像上の像の軌跡は直線にならない。図3の曲線93は、前景80の曲面部を透過した背景90の点の像の軌跡の例である。
【0047】視差の検出の際、曲線93のような直線でない像の軌跡が現れると、ノイズ要因となり、正しい視差量の検出の妨げとなる。このような直線でない像の軌跡が現れるのは、被写体の物体の表面に鏡面反射成分が多く含まれる場合や、ガラス製品のように物体が光を透過する場合である。そこで、本実施形態のカメラでは、被写体の視差画像から視差を検出する際、ノイズ要因となる略直線でない成分を廃棄し、略直線性を有する直線成分の傾きから、奥行き値を算出する。
【0048】以下、本実施形態のカメラが、ノイズ要因となる略直線でない成分を廃棄し、略直線性を有する直線成分の傾きから奥行き値を算出する方法を説明する。
【0049】図4は、図1に示した本実施形態のカメラのメモリ36及び距離計算部38の構成図である。図4を参照しながら、本実施形態のメモリ36及び距離計算部38が、複数の視差画像から被写体の距離分布情報を作成する動作を説明する。図4では、マルチプレクサー32とA/D変換部34を省略するが、実際の動作では、受光部20に撮像された画像は、マルチプレクサー32を介してA/D変換部34に送られ、デジタル信号に変換されてからメモリ36に格納される。
【0050】メモリ36は、受光部20に撮像された被写体の複数の視差画像37を格納する。距離計算部38は、複数の視差画像を視点の移動の順に時間軸方向に並べた時空間画像において、略直線性を有する直線成分を検出する直線成分検出部22と、略直線性を有する直線成分から被写体の距離を算出する距離成分算出部28とを有する。
【0051】以下、一例として、図4に示した被写体A及びBの視差画像を撮像した場合について、メモリ36、直線成分検出部22及び距離成分算出部28の動作を説明する。
【0052】光学結像部12から被写体A及びBまでの距離はそれぞれR1及びR2である。被写体Aは表面が球面の半透明の物体であり、被写体Aを通して、被写体Bを透かして見ることができる。メモリ36は、光学結像部12を移動させた時に受光部20に撮像される被写体A及びBの複数の視差画像37を格納する。
【0053】直線成分検出部22は、メモリ36から複数の視差画像37を読み出し、視差画像37の一つを基準画像とし、他の視差画像37を参照画像とする。直線成分検出部22は、複数の視差画像37を視点の移動の順に時間軸方向に並べた時空間画像において、連続する一定の長さの線分を抽出し、連続線分の曲率が所定の閾値以下であるかどうか判定する。曲率が所定の閾値を超えているなら、その連続線分を破棄し、曲率が所定の閾値以下であるなら、その連続線分を略直線性を有する直線成分とする。
【0054】直線成分検出部22は、視差画像の時空間画像において、被写体A及びBが撮像された領域内のすべての連続する線分について、略直線性を判定し、略直線性を有する直線成分を抽出する。
【0055】直線成分検出部22は、制御部39が駆動部42に対して指定した視点の移動方向及び移動量を用いて、視点の移動方向と略同一の方向に、視点の移動量の長さだけ、連続する線分を抽出してもよい。
【0056】直線成分検出部22は、略直線性を有する直線成分を抽出する方法として、特定の直線成分を検出するハフ変換処理などの従来手法を用いてもよい。
【0057】距離成分算出部28は、基準画像の特定領域の特定画素が、直線成分検出部22が抽出した略直線性を有する直線成分上にあるかどうかを判定する。特定画素が略直線性を有する直線成分上にあるなら、その直線成分の傾きから特定画素の奥行き値を計算する。特定画素が略直線性を有する直線成分上にないなら、その特定画素については奥行き値を計算しない。
【0058】被写体Aが撮像されている基準画像の領域では、視差ラインの傾きK1が検出され、距離R1が、式R1=F×K1によって求められる。被写体Bが撮像されている基準画像の領域では、視差ラインの傾きK2が検出され、距離R2が、式R2=F×K2によって求められる。
【0059】距離成分算出部28は、被写体A及びBが撮像された特定領域内のすべての画素について、直線成分検出部22が抽出した略直線性を有する直線成分にある場合にのみ、奥行き値を計算する。距離成分算出部28は、被写体A及びBが撮像された基準画像のすべての画素に関する奥行き値を格納した距離分布情報30を出力する。
【0060】直線成分検出部22は、視差画像の時空間画像において、曲線成分を有する連続線分は破棄するため、距離成分算出部28は、曲線成分を有する連続線分から被写体の奥行き値を算出することはない。したがって、表面が球面である半透明の物体である被写体Aの視差画像を撮像した場合でも、透過光成分による曲線成分を奥行き値の計算から除去することができるので、被写体の正確な奥行き値を算出することができる。
【0061】図5は、本実施形態の距離計算部38の処理のフローチャートである。図5を参照しながら、本実施形態の距離計算部38が複数の視差画像から被写体の距離分布情報を求める処理を説明する。
【0062】直線成分検出部22は、S100からS112までの処理を行う。複数の視差画像を入力し、いずれか一つの視差画像を基準画像、他の視差画像を参照画像とし(S100)、基準画像の特定領域を選択する(S102)。
【0063】特定領域について、複数の視差画像を視点の移動の順に時間軸方向に並べた時空間画像を作成し(S104)、連続する線分を抽出する(S106)。連続する線分の曲率が所定の閾値以下であるかどうかを判定し(S108)、曲率が所定の閾値以下であるなら、その連続する線分を直線成分として登録する(S110)。曲率が所定の閾値以下でないなら、S112の処理に進む。
【0064】時空間画像におけるすべての連続する線分を調べたかどうか判定し(S112)、そうでないならS106の処理に戻り、他の連続する線分を抽出し、S108及びS110の処理を繰り返す。時空間画像におけるすべての連続する線分を調べたなら、S114の処理に進む。
【0065】距離成分算出部28は、S114からS122までの処理を行う。基準画像の特定領域内の特定画素を選択し(S114)、その特定画素が直線成分検出部22によって抽出された直線成分上にあるかどうかを判定し(S116)、そうであるなら、その直線成分の傾きKを検出し、特定画素の距離Rを式R=F×Kによって算出する(S118)。ここでFは焦点距離である。その特定画素が直線成分上にないなら、S120の処理に進む。
【0066】特定領域内のすべての画素について距離を算出したかどうかを判定し(S120)、そうでないなら、S114の処理に戻り、他の特定画素を選択して、S116及びS118の処理を繰り返す。特定領域内のすべての画素について距離を算出したなら、基準画像の特定領域の距離分布情報を出力する(S122)。
【0067】このように、直線成分検出部22は、曲線成分をあらかじめ破棄し、直線成分のみを抽出するため、距離成分算出部28は、直線成分だけから特定画素の奥行き値を計算し、曲線成分は奥行き値の計算に用いない。したがって、距離成分算出部28は、被写体の正確な距離分布情報を算出することができる。
【0068】以上述べたように、本実施形態のカメラでは、被写体の複数の視差画像が作る時空間画像から曲線成分を視差画像から予め除去する。このため、被写体の物体の表面に、鏡面反射成分が多く含まれる場合や、ガラス製品のように透過光成分を含む場合であっても、視差の検出の際、ノイズ要因となる鏡面反射成分又は透過光成分を排除して、正しい視差量を検出し、正確な奥行き値を計算することができる。
【0069】(実施形態2)本発明の第2の実施形態に係る視差画像撮像装置の一例としてのカメラは、図1及び図4に示した第1の実施形態のカメラと同じ構成であり、距離計算部38の処理だけが異なる。第1の実施形態と共通部分の説明は省略し、異なる部分だけを説明する。
【0070】第1の実施形態のカメラでは、直線成分検出部22が、視差画像の時空間画像において、略直線性を有する直線成分を抽出したが、本実施形態のカメラでは、視差画像の特定画素が視差画像上を移動した軌跡を表す視差ラインの内、略直線性を有する視差ラインを抽出する。
【0071】直線成分検出部22は、基準画像のある特定画素を基準点とした場合、その基準点に対応する参照画像中の参照点を検出する。参照点の検出には、従来の対応点決定(マッチング)処理を用いる。基準点と複数の参照点が検出されると、基準画像の参照点が画像上で移動した軌跡を表す視差ラインを抽出することができる。
【0072】直線成分検出部22は、抽出された視差ラインの曲率が所定の閾値以下であるかどうか判定する。曲率が所定の閾値以下であるなら、その視差ラインを略直線性を有する直線成分とし、曲率が所定の閾値以上であるなら、その視差ラインを破棄する。
【0073】直線成分検出部22は、制御部39が駆動部42に対して指定した視点の移動方向及び移動量を用いて、視点の移動方向と略同一の方向に、視点の移動量の長さだけ、視差ラインを抽出してもよい。
【0074】距離成分算出部28は、直線成分検出部22が抽出した略直線性を有する視差ラインの傾きを検出し、その傾きから基準画像の特定画素の奥行き値を算出する。
【0075】距離成分算出部28は、基準画像のすべての画素に関する奥行き値を格納した距離分布情報30を出力する。
【0076】直線成分検出部22は、視差ラインが略直線でない場合にはその視差ラインを破棄するため、距離成分算出部28は、視差ラインが略直線でない場合には、基準画像の特定画素の奥行き値を算出することはない。したがって、たとえば、表面が球面である半透明の物体である被写体の視差画像を撮像した場合でも、透過光成分による非直線成分を奥行き値の計算から除去することができるので、被写体の正確な奥行き値を算出することができる。
【0077】図6は、本実施形態のカメラにおける距離計算部38の処理のフローチャートである。図6を参照しながら、本実施形態の距離計算部38が複数の視差画像から被写体の距離分布情報を求める処理を説明する。
【0078】直線成分検出部22は、S200からS210までの処理を行う。複数の視差画像を入力し、いずれか一つの視差画像を基準画像、他の視差画像を参照画像とする(S200)。基準画像の特定領域を選択し(S202)、特定領域内の特定画素を基準点として選択する(S204)。
【0079】参照画像内に基準点に対応する参照点を検出し(S206)、基準点と参照点を結ぶ視差ラインを抽出する(S208)。抽出された視差ラインの曲率が所定の閾値以下であるかどうかを判定し(S210)、曲率が所定の閾値以下であるなら、S212の処理に進み、そうでないなら、S214の処理に進む。
【0080】距離成分算出部28は、S212からS216までの処理を行う。特定画素の視差ラインの傾きKを検出し、特定画素の距離Rを式R=F×Kによって算出する(S212)。ここでFは焦点距離である。
【0081】特定領域内のすべての画素について、距離を算出したかどうかを判定し(S214)、そうでないなら、S204の処理に戻り、他の特定画素を選択して、S204からS212までの処理を繰り返す。特定領域内のすべての画素について、距離を算出したなら、基準画像の特定領域の距離分布情報を出力する(S216)。
【0082】このように、直線成分検出部22は、曲線成分を有する視差ラインをあらかじめ破棄し、直線成分のみを有する視差ラインを抽出するため、距離成分算出部28は、直線成分を有する視差ラインだけから特定画素の奥行き値を計算し、曲線成分を有する視差ラインは奥行き値の計算に用いない。したがって、距離成分算出部28は、被写体の正確な距離分布情報を算出することができる。
【0083】(実施形態3)図7は、本発明の第3の実施形態に係る視差画像処理装置の一例としてのデジタルラボシステムの構成図である。本実施形態のデジタルラボシステムは、視差画像入力部68と、視差画像記憶部70と、直線成分検出部72と、距離成分算出部74と、画像処理部76と、画像出力部78とを有する。
【0084】視差画像入力部68は、被写体の画像及び被写体を見る視点を移動した場合に得られる複数の視差画像を入力する。視差画像入力部68は写真又は感光フィルムを読みとりデジタル信号に置き換えるスキャナ、又はCD−ROM、MO、DVDなどの記録媒体から画像データを読みとる読み込み装置であってもよい。
【0085】視差画像記憶部70は、視差画像入力部68が入力した被写体の画像及び被写体の複数の視差画像を記憶する。
【0086】直線成分検出部72及び距離成分算出部74は、第1又は第2の実施形態のカメラの直線成分検出部22及び距離成分算出部28と同じ動作をするので、説明を省略する。
【0087】画像処理部76は、距離成分算出部74が出力した被写体の距離分布情報を用いて、被写体の画像を処理する。
【0088】画像出力部78は、画像処理部76が作成して得られた画像を出力する。画像出力部78は、現像機又はプリンタであってもよい。
【0089】本実施形態のデジタルラボシステムは、被写体の複数の視差画像を用いて、被写体の距離分布情報を獲得する。特に、表面に鏡面反射成分が多く含まれる被写体や、ガラス製品のように光を透過する被写体を撮像した視差画像であっても、視差の検出の際、ノイズ要因となる鏡面反射成分又は透過光成分を排除して、正しい視差量を検出し、正確な奥行き値を計算することができる。
【0090】本実施形態のデジタルラボシステムは、得られた被写体の奥行き情報を利用して、被写体を撮像したネガフィルムや写真に対して、被写体の濃度やコントラストを自動補正したり、主要被写体を抽出して、主要被写体の濃度やコントラストを部分補正するなど、より美しい被写体の画像を再構成することができる。
【0091】(実施形態4)図8は、本発明の第4の実施形態に係るコンピュータ用のプログラムの機能構成図である。図8において、コンピュータ180は、視差画像入力モジュール184と、視差画像記憶モジュール186と、直線成分検出モジュール188と、距離成分算出モジュール190と、画像処理モジュール192と、画像出力モジュール194とを有する。これらの機能構成は、記録媒体182に格納されたプログラムによってソフトウエアとして提供されてもよい。
【0092】視差画像入力モジュール184は、被写体の画像及び被写体を異なる視点から見た場合に得られる複数の視差画像を入力する。視差画像入力モジュール184は、スキャナなどの画像読み取り装置や、CD−ROMなどの記憶デバイスから画像を読み込んでもよい。視差画像記憶モジュール186は、被写体の画像及び複数の視差画像を記憶する。
【0093】直線成分検出モジュール188及び距離成分算出モジュール190は、第1又は第2の実施形態のカメラの直線成分検出部22及び距離成分算出部28と同じ動作をするので、説明を省略する。
【0094】画像処理モジュール192は、距離成分算出モジュール190が算出した距離分布情報を用いて、被写体の画像に画像処理を施す。
【0095】画像出力モジュール194は、画像処理モジュール192が作成した画像をコンピュータに接続されたディスプレイに出力する。画像出力モジュール194は、画像処理モジュール192が作成した画像をプリンタに出力してもよい。
【0096】本実施形態の記録媒体に格納されたプログラムによれば、被写体の複数の視差画像から被写体の距離分布情報を獲得できる。特に、表面に鏡面反射成分が多く含まれる被写体や、ガラス製品のように光を透過する成分を含む被写体を撮像した視差画像であっても、視差の検出の際、ノイズ要因となる鏡面反射成分又は透過光成分を排除して、正しい視差量を検出し、正確な奥行き値を計算することができる。
【0097】以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることができることが当業者に明らかである。その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0098】
【発明の効果】上記説明から明らかなように、本発明によれば、被写体の複数の視差画像から、被写体の奥行き値を正確に求めることができる。
【出願人】 【識別番号】000005201
【氏名又は名称】富士写真フイルム株式会社
【出願日】 平成11年6月29日(1999.6.29)
【代理人】 【識別番号】100104156
【弁理士】
【氏名又は名称】龍華 明裕
【公開番号】 特開2001−12912(P2001−12912A)
【公開日】 平成13年1月19日(2001.1.19)
【出願番号】 特願平11−184112