説明

測距装置および測距方法並びにプログラム

【課題】精度良く測距を行うことができるようにする。
【解決手段】測距光源16が、所定周期にて強度が時間的に変化するように変調された第1の測距光、および所定周期にて強度が一定のパルス波状に変調された第2の測距光を切換可能に発光する。第1の測距光を発光し、第1の測距光の変調周期における位相が異なる複数の受光期間において複数の第1の受光信号を取得し、次いで、第2の測距光を発光し、第2の測距光の変調周期における複数の受光期間において複数の第2の受光信号を取得し、複数の第1の受光信号に基づいて、距離情報の算出に使用する第2の受光信号を選択する。距離画像生成部31が、選択した第2の事項信号を用いて距離情報を算出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、被写体の立体形状を表す距離画像を生成するための測距装置および方法並びに測距方法をコンピュータに実行させるためのプログラムに関するものである。
【背景技術】
【0002】
光の反射を用いて被写体までの距離の測定(測距)を行うTOF(Time Of Flight)方式の測距方法を用いて、撮影装置から被写体までの距離を測定して、被写体の立体形状を表す距離画像を生成することが行われている(特許文献1参照)。TOF方式を用いた測距は、具体的には強度変調された測距光を被写体に向けて照射し、この変調周期における0、π/2、π、3π/2の4つの位相において反射光を受光して受光光量に応じた受光信号を得、受光信号に基づいて測距光と反射光との位相の遅れ(位相差)を、撮影装置に設けられた撮像素子の受光素子毎に検出して距離情報を算出し、この距離情報を各画素の画素値とする被写体の立体形状を表す距離画像を生成するものである。
【0003】
また、TOF方式により測距を行う際に、強度が時間的に変化する正弦波、三角波あるいは鋸波状に強度変調された第1の測距光と、強度が一定のパルス状に強度変調された第2の測距光を使用して測距精度を向上させる手法も提案されている(特許文献2参照)。特許文献2に記載された手法は、第1の測距光により得られる第1の受光信号を第2の測距光により得られる第2の受光信号により除算することにより、距離情報を算出するものである。
【特許文献1】特開2006−84429号公報
【特許文献1】特開2001−313958号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
ところで、強度が時間的に変化するように強度変調された測距光を使用する場合、その変調周期の長さを最大値とする位相差を算出することができるため、比較的長いレンジにより測距を行うことができるが、測距光の変調の位相によっては、反射光の強度が小さくなる。このため、外光の影響により得られる受光信号のS/Nが低下してしまうことから、測距の精度はそれほど高いものではない。一方、パルス状に強度変調された測距光を使用する場合、反射光の強度は一定となるためS/Nの低下が少なく、精度良く測距を行うことができる。しかしながら、パルス光を使用する場合、パルス光が発光している期間を最大値とする位相差しか算出することができないため、測距を行うことができるレンジが狭く、ある限られた範囲のみしか測距を行うことができない。
【0005】
ここで、上記特許文献2に記載された手法においては、第1の測距光により得られる受光信号を第2の測距光により得られる受光信号により除算して距離情報を算出しているため、強度が時間的に変化するように強度変調された第1の測距光による第1の受光信号により測距が行われることとなる。このため、特許文献2に記載された手法では測距の精度はそれほど高いものではない。
【0006】
本発明は上記事情に鑑みなされたものであり、精度良く測距を行うことができるようにすることを目的とする。
【課題を解決するための手段】
【0007】
本発明による測距装置は、所定周期にて強度が時間的に変化するように変調された第1の測距光、および前記所定周期にて強度が一定のパルス波状に変調された第2の測距光を切換可能に発光する測距光発光手段と、
受光光量に応じた受光信号を出力する複数の受光素子を有する撮像手段と、
前記撮像手段の受光期間を制御する受光制御手段と、
前記受光信号に基づいて、被写体までの距離を表す距離情報を前記受光素子毎に算出する距離情報算出手段と、
前記第1の測距光を発光し、該第1の測距光の変調周期における位相が異なる複数の受光期間において複数の第1の受光信号を取得し、次いで、前記第2の測距光を発光し、該第2の測距光の変調周期における前記複数の受光期間において複数の第2の受光信号を取得し、前記複数の第1の受光信号に基づいて、前記距離情報の算出に使用する第2の受光信号を選択するよう、前記測距光発光手段、前記撮像手段および前記距離情報算出手段を制御する制御手段とを備えたことを特徴とするものである。
【0008】
「強度が時間的に変化するように強度変調」するとは、時間の経過とともに強度が連続して変化するように第1の測距光を変調することを意味する。具体的には、正弦波状、三角波状、鋸波状に強度を変調することにより、強度が時間的に変化するように強度変調することができる。
【0009】
ここで、強度が時間的に変化するように変調された第1の測距光を使用する場合、比較的長いレンジにより測距を行うことができるが、変調の位相によっては反射光の強度が小さくなる。このため、外光の影響により得られる受光信号のS/Nが低下してしまうことから、測距の精度はそれほど高いものではない。一方、強度が一定のパルス状に強度変調された第2の測距光を使用する場合、反射光の強度は一定となるためS/Nの低下が少なく、精度良く測距を行うことができる。しかしながら、測距を行うことができるレンジが狭いため、ある限られた範囲のみしか測距を行うことができない。
【0010】
本発明によれば、第1の測距光の反射光から得られる複数の第1の受光信号に基づいて、第2の測距光の反射光から得られる複数の第2の受光信号のうち、距離情報の算出に使用する受光信号を選択するようにしたものである。ここで、複数の第1の受光信号により第1の測距光と第1の測距光の反射光との位相差を算出でき、この位相差により被写体までの大まかな距離情報を算出できるものである。このため、第1の受光信号に基づいて選択した第2の受光信号により、第1の受光信号を用いて算出できる距離情報と同一の距離レンジにおいて、より正確に位相差を算出できるため、より正確な距離を表す距離情報を算出することができることとなる。したがって、本発明によれば、被写体までの距離に拘わらず正確に測距を行うことができる。
【0011】
なお、本発明による測距装置においては、前記距離情報算出手段を、前記複数の第1の受光信号に基づいて、前記第1の測距光と該第1の測距光の反射光との位相差を前記受光素子毎に算出し、該位相差に基づいて前記複数の第2の受光信号のうち、前記距離情報の算出に使用する第2の受光信号を選択する手段としてもよい。
【0012】
このように、位相差を用いることにより複数の第2の受光信号の選択を容易に行うことができる。
【0013】
また、本発明による測距装置においては、前記測距光発光手段を、前記第2の測距光を前記第1の測距光の変調周期と同一周期にて、該第1の測距光の変調周期よりもよりも短い期間発光する手段としてもよい。
【0014】
これにより、第1および第2の測距光の発光の制御を容易に行うことができる。
【0015】
また、本発明による測距装置においては、前記受光制御手段を、前記撮像手段の受光期間を前記第2の測距光の発光期間と同一となるように制御する手段としてもよい。
【0016】
これにより、第1および第2の測距光の反射光の受光の制御を容易に行うことができる。
【0017】
また、本発明による測距装置においては、前記測距光発光手段を、前記第2の測距光を前記第1の測距光の変調周期の1/4の期間発光する手段とし、
前記受光制御手段を、前記撮像手段の受光期間を、前記第1の測距光の変調周期の1/4期間となるように制御する手段としてもよい。
【0018】
これにより、第1および第2の測距光の発光の制御、並びに第1および第2の測距光の反射光の受光の制御をより容易に行うことができる。
【0019】
また、本発明による測距装置においては、前記距離情報算出手段を、前記選択した前記第2の受光信号が複数の受光期間に跨る場合、信号レベルが大きい受光期間側の第2の受光信号を前記距離情報の算出に使用する手段としてもよい。
【0020】
ここで、信号レベルが大きいということは外光によるノイズの影響が小さいことを意味する。したがって、信号レベルが大きい側の第2の受光信号を距離情報の算出に使用することにより、より正確に距離情報を算出することができる。
【0021】
また、本発明による測距装置においては、前記距離情報算出手段を、前記複数の第2の受光信号のうち、前記第2の測距光を受光していない期間の受光信号により、前記選択した第2の受光信号を補正する手段としてもよい。
【0022】
ここで、第2の測距光を受光していない期間の受光信号は、外光成分を表すものとなる。このため、第2の測距光を受光していない期間の受光信号により選択された第2の受光信号を補正することにより、より正確に距離情報を算出することができる。
【0023】
本発明による測距方法は、所定周期にて強度が時間的に変化するように変調された第1の測距光、および前記所定周期にて強度が一定のパルス波状に変調された第2の測距光を切換可能に発光する測距光発光手段と、
受光光量に応じた受光信号を出力する複数の受光素子を有する撮像手段と、
前記撮像手段の受光期間を制御する受光制御手段と、
前記受光信号に基づいて、被写体までの距離を表す距離情報を前記受光素子毎に算出する距離情報算出手段とを備えた測距装置における測距方法であって、
前記第1の測距光を発光し、
該第1の測距光の変調周期における位相が異なる複数の受光期間において複数の第1の受光信号を取得し、
次いで、前記第2の測距光を発光し、
該第2の測距光の変調周期における前記複数の受光期間において複数の第2の受光信号を取得し、
前記複数の第1の受光信号に基づいて、前記距離情報の算出に使用する第2の受光信号を選択することを特徴とするものである。
【0024】
なお、本発明による測距方法をコンピュータに実行させるためのプログラムとして提供してもよい。
【発明を実施するための最良の形態】
【0025】
以下、図面を参照して本発明の実施形態について説明する。図1は本発明の第1の実施形態による測距装置の構成を示す概略ブロック図である。図1に示すように第1の実施形態による測距装置1は撮像部2を備える。
【0026】
撮像部2は、レンズ10、絞り11、シャッタ12、CCD13、アナログフロントエンド(AFE)14およびA/D変換部15を備える。
【0027】
レンズ10は、被写体にピントを合わせるためのフォーカスレンズ、ズーム機能を実現するためのズームレンズ等の複数の機能別レンズにより構成され、不図示のレンズ駆動部によりその位置が調整される。
【0028】
絞り11は、不図示の絞り駆動部により、予め定められた絞り値データに基づいて絞り径の調整が行われる。
【0029】
シャッタ12はメカニカルシャッタであり、予め定められたシャッタスピードに応じて駆動される。
【0030】
CCD13は、多数の受光素子を2次元的に配列した光電面を有する撮像素子であり、被写体光がこの光電面に結像して光電変換されてアナログ撮像信号である受光信号が取得される。なお、CCD13は、後述する撮像制御部19から与えられる電子シャッタ駆動信号によって受光期間が制御される。また、CCD13の前面には、後述する測距光の波長域の光を透過するフィルタ13Aが配設されているため、CCD13の受光素子は測距光の反射光のみを受光することができる。ここで、本実施形態においては、測距光として赤外光を用いるものとする。
【0031】
AFE14は、CCD13から出力される受光信号に対して、受光信号のノイズを除去する処理、および受光信号のゲインを調節する処理(以下アナログ処理とする)を施す。
【0032】
A/D変換部15は、AFE14によりアナログ処理が施された受光信号をデジタル信号に変換する。
【0033】
また、撮像部2は、被写体に向けて赤外光からなる測距光を照射するための測距光源16を備える。
【0034】
図2は測距光源の構成を示す概略ブロック図である。図2に示すように測距光源16は、赤外光からなる測距光を発光するLEDが2次元状に複数配設された面光源16A、面光源16Aから発せられる測距光を強度変調する変調部16B、測距光を変調するための波形データを記憶するメモリ16C、およびメモリ16Cから波形データを読み出し、波形データをD/A変換して変調部16Bに入力するメモリ制御部16Dを備える。
【0035】
メモリ制御部16Dは、後述する撮像制御部19からの指示により、所定の波形データを読み出してD/A変換して変調部16Bに入力する。変調部16Bは入力された波形データにより表される波形と一致するように面光源16Aから発光される測距光の強度を変調する。
【0036】
ここで、本実施形態においては、メモリ16Cには測距光を正弦波状に強度変調するための正弦波データ、および測距光をパルス波状に強度変調するためのパルス波データが記憶されている。なお、正弦波データおよびパルス波データは周期が同一であり、パルスの期間は正弦波の周期の1/4の期間であるものとする。また、正弦波データにより強度変調される測距光を第1の測距光、パルス波データにより強度変調される測距光を第2の測距光と称するものとする。
【0037】
また、撮像部2は、CCD13、AFE14および測距光源16の駆動を制御するための撮像制御部19を備える。具体的には、撮像制御部19は、CPU32からの指示により、変調部18に変調の指示を行って測距光照射部3から第1および第2の測距光を発光させ、これとタイミングを合わせて被写体による測距光の反射光を受光し、受光光量に応じた受光信号を出力するよう撮像部2の各部を制御する。なお、第1および第2の測距光の発光、並びにCCD13の各受光素子からの受光信号の取得の制御については後述する。
【0038】
また、測距装置1は、撮影条件設定部22、画像処理部23、圧縮/伸長処理部24、フレームメモリ25、メディア制御部26、内部メモリ27、および表示制御部28を備える。
【0039】
撮影条件設定部22は、予め定められた焦点距離、絞り値およびシャッタ速度を記憶しており、撮影を行う際に、焦点距離、絞り値およびシャッタ速度を撮像部2に出力する。
【0040】
画像処理部23は、後述するように生成された距離画像の画像データに対して、階調補正、シャープネス補正等の画像処理を施す。
【0041】
圧縮/伸長処理部24は、画像処理部23によって画像処理が施された距離画像の画像データに対して、例えば、JPEG等の圧縮形式で圧縮処理を行い、画像ファイルを生成する。この画像ファイルには、Exifフォーマット等に基づいて、撮影日時等の付帯情報が格納されたタグが付加される。
【0042】
フレームメモリ25は、撮像部2が取得した受光信号に対して、前述の画像処理を含む各種処理を行う際に使用する作業用メモリである。
【0043】
メディア制御部26は、記録メディア29にアクセスして距離画像の画像ファイルの書き込みと読み込みの制御を行う。
【0044】
内部メモリ27は、測距装置1において設定される各種定数、およびCPU32が実行するプログラム等を記憶する。
【0045】
表示制御部28は、フレームメモリ25に格納された画像データをモニタ30に表示させたり、記録メディア29に記録されている画像をモニタ30に表示させたりするためのものである。
【0046】
また、測距装置1は、距離画像生成部31およびCPU32を備える。
【0047】
距離画像生成部31は、撮像部2が取得した受光信号を用いて被写体上の各点の測距装置1からの距離情報D1を、CCD13上における受光素子毎に算出する。以下、距離情報D1の算出について説明する。
【0048】
距離画像生成部31は、強度変調された第1の測距光が発光されてから被写体により反射された反射光を受光するまでの時間(すなわち光の飛行時間)に基づいて、距離情報D1を算出する。
【0049】
図3は距離情報を算出するための位相差の算出を説明するための図である。図3に示すように、測距光源16から発光される第1の測距光の強度は曲線K1に示すように正弦波状に変化するため、CCD13のある受光素子により受光した反射光の受光光量も曲線K2のように正弦波状に変化するが、光の飛行時間に相当する位相差tdaが発生する。
【0050】
位相差tdaは、第1の測距光の複数のタイミングで求めた反射光の受光光量を用いて計算することができる。本実施形態においては、第1の測距光における0、π/2、π、3π/2の位相において、第1の測距光の1/4周期に相当する受光期間Tw、パルス状に受光した反射光の受光光量を用いて位相差tdaを算出する。
【0051】
ここで、第1の測距光における連続した0、π/2、π、3π/2の位相において受光した反射光の受光光量がそれぞれF1a、F2a、F3a、F4aであるとする。なお、受光光量F1a、F2a、F3a、F4aを求める間に位相差tdaは変化せず、かつ被写体の反射率にも変化がないものとし、時刻tにおいてCCD13の各受光素子で受光される光の強度がA・sin(ωt+δ)+Bで表されるものとする。ここで、Aは振幅、Bは外光成分、ωは角振動数、δは位相である。これにより、受光素子で受光する受光光量F1a、F2a、F3a、F4aは、次のように表すことができる。なお、受光光量は測距光における0、π/2、π、3π/2の位相において各受光素子から出力される受光信号に相当する。また、位相差tdaの算出には、上述した4つの受光光量すなわち4つの受光信号F1a、F2a、F3a、F4aをCCD13から取得することが必要であるため、すべての受光素子が4つの受光信号F1a、F2a、F3a、F4aを取得するまで、第1の測距光の発光およびCCD13による反射光の受光が行われる。
【0052】
F1a=A・sin(δ)+B
F2a=A・sin(π/2+δ)+B
F3a=A・sin(π+δ)+B
F4a=A・sin(3π/2+δ)+B
ここで、δ=−tdaであるから、F1a=−A・sin(tda)+B、F2a=A・cos(tda)+B、F3a=A・sin(tda)+B、F4a=−A・cos(tda)+Bであるため、各受光光量(受光信号)F1a、F2a、F3a、F4aと位相差tdaとの関係は、次式のようになる。
【0053】
tda=tan-1{(F3a−F1a)/(F2a−F4a)} (1)
なお、位相差tdaを使用することにより、距離情報Dを下記の式(2)により算出することができる。
【0054】
D=c・tda/(4πF) (2)
cは光速、Fは周波数(=ω/2π)である。
【0055】
ここで、4つの受光信号F1a、F2a、F3a、F4aは各受光素子において、第1の測距光における0、π/2、π、3π/2の位相にてそれぞれ受光期間を区切って取得すればよいが、CCD13の各受光素子に4つの電荷蓄積部を設け、第1の測距光の1周期に相当する1つの受光期間において、4つの電荷蓄積部のそれぞれにより4つの受光信号を取得するようにしてもよい。
【0056】
また、第1の実施形態においては、距離画像生成部31は、位相差tdaを算出した後、第1の測距光に代えて第2の測距光を発光し、第2の測距光の発光の1周期において、第1の測距光の反射光と同一の受光期間(すなわち第1の測距光の変調周期の0、π/2、π、3π/2の位相に相当する期間Tw)、CCD13において受光信号F1b、F2b、F3b、F4bを取得する。ここで、第2の測距光は第1の測距光と周期が同一であり、発光期間は第1の測距光の1/4、すなわちTwであるため、反射光も期間Twのパルス状の光となる。なお、第2の測距光の反射光についても、図3に示すように位相差tdbが発生している。
【0057】
距離画像生成部31は、位相差tdaに基づいて、受光信号F1b、F2b、F3b、F4bのうち、位相差tdbの算出に使用する受光信号を選択する。すなわち、位相差tdaがTw以内であれば、第2の測距光の反射光は第1の測距光の0〜πの位相の間に存在することから、受光信号F1b、F2bを選択する。そして下記の式(3)により位相差tdbを算出する。
【0058】
tdb=Tw×F2b/(F1b+F2b) (3)
位相差tdaがTwより大きく2Tw以内であれば、第2の測距光の反射光は第1の測距光のπ/2〜3π/2の位相の間に存在することから、受光信号F2b、F3bを選択する。そして下記の式(4)により位相差tdbを算出する。
【0059】
tdb=Tw+Tw×F3b/(F2b+F3b) (4)
位相差tdaが2Twより大きく3Tw以内であれば、第2の測距光の反射光は第1の測距光のπ〜2π(すなわち0)の位相の間に存在することから、受光信号F3b、F4bを選択する。そして下記の式(5)により位相差tdbを算出する。
【0060】
tdb=2Tw+Tw×F4b/(F3b+F4b) (5)
さらに、位相差tdaが3Twより大きく4Tw以内であれば、第2の測距光の反射光は第1の測距光の3π/2〜π/2(次の周期)の位相の間に存在することから、受光信号F4b、F1bを選択する。そして下記の式(6)により位相差tdbを算出する。
【0061】
tdb=3Tw+Tw×F1b/(F4b+F1b) (6)
そして、位相差tdbを用いて下記の式(7)により受光素子毎に被写体までの距離を表す距離情報D1を算出する。
【0062】
D1=c×tdb/2 (7)
なお、cは光速である。
【0063】
さらに、距離画像生成部31は、上述したように受光素子単位で算出した距離情報D1を各画素の画素値とする距離画像S1を生成する。
【0064】
CPU32は、入出力部33からの信号に応じて測距装置1の各部を制御する。
【0065】
データバス34は、測距装置1を構成する各部およびCPU32に接続されており、測距装置1における各種データおよび各種情報のやり取りを行う。
【0066】
次いで、第1の実施形態において行われる処理について説明する。図4は第1の実施形態において行われる処理を示すフローチャートである。
【0067】
撮影指示が行われることによりCPU32が処理を開始し、撮像部2がCPU32からの指示により、測距光源16から第1の測距光を被写体に向けて発光し(ステップST1)、さらに第1の測距光の被写体による反射光を第1の測距光における連続した0、π/2、π、3π/2の位相において受光して、4つの受光信号F1a、F2a、F3a、F4aを取得する(ステップST2)。次いで、距離画像生成部31が、4つの受光信号F1a、F2a、F3a、F4aから上記式(1)により、位相差tdaを受光素子単位で算出する(ステップST3)。
【0068】
次いで、撮像部2がCPU32からの指示により、測距光源16から第2の測距光を被写体に向けて発光し(ステップST4)、さらに第2の測距光の被写体による反射光を、第1の測距光の反射光を受光した場合と同一の0、π/2、π、3π/2の位相において受光して、4つの受光信号F1b、F2b、F3b、F4bを取得する(ステップST5)。
【0069】
続いて、距離画像生成部31が、位相差tdaの範囲を判定する(ステップST6)。
【0070】
tda≦Twの場合は上記式(3)により位相差tdbを算出する(ステップST7)。Tw<tda≦2Twの場合は上記式(4)により位相差tdbを算出する(ステップST8)。2Tw<tda≦3Twの場合は上記式(5)により位相差tdbを算出する(ステップST9)。そして、3Tw<tda≦4Twの場合は上記式(6)により位相差tdbを算出する(ステップST10)。
【0071】
次いで、距離画像生成部31は上記式(7)により距離情報D1を算出し(ステップST11)、距離情報D1を各画素の画素値とする距離画像S1を生成する(ステップST12)。そして、メディア制御部26が距離画像S1の画像データを記録メディア29に記録し(ステップST13)、処理を終了する。
【0072】
ここで、正弦波のように強度が時間的に変化するように変調された第1の測距光を使用する場合、比較的長いレンジにより測距を行うことができるが、変調の位相によっては反射光の強度が小さくなる。例えば図3に示すπ/2の位相においては、反射光の強度は非常に小さくなる。このため、第1の測距光を使用する場合、外光の影響により得られる受光信号のS/Nが低下してしまうことから、測距の精度はそれほど高いものではない。
【0073】
一方、強度が一定のパルス状に強度変調された第2の測距光を使用する場合、反射光の強度は一定となるためS/Nの低下が少なく、精度良く測距を行うことができる。しかしながら、測距を行うことができるレンジがパルス幅により制限されてしまうため、ある限られた範囲のみしか測距を行うことができない。
【0074】
第1の実施形態によれば、第1の測距光の反射光から得られる複数の受光信号F1a、F2a、F3a、F4aに基づいて、第2の測距光の反射光から得られる複数の第2の受光信号F1b、F2b、F3b、F4bのうち、距離情報D1の算出に使用する受光信号を選択するようにしたものである。ここで、複数の第1の受光信号F1a、F2a、F3a、F4aにより第1の測距光と第1の測距光の反射光との位相差tdaが分かることとなる。位相差tdaは被写体までの大まかな距離情報を算出できるものであり、位相差tdaにより距離情報D1の算出に使用する第2の受光信号F1b、F2b、F3b、F4bを選択することにより、位相差tdaにより求められる距離情報と同様の距離レンジにおいて、より正確に距離情報を算出することができる。したがって、第1の実施形態によれば、被写体までの距離に拘わらず正確に測距を行うことができる。
【0075】
次いで、本発明の第2の実施形態について説明する。なお、第2の実施形態においては、第1の実施形態と行われる処理のみが異なり、装置の構成は第1の実施形態と同一であるため、構成についての詳細な説明は省略する。ここで、第2の測距光の反射光から得られる受光信号F1b、F2b、F3b、F4bは、2つの受光期間に跨るものであるが、反射光はパルス光であるため各受光期間における信号のレベルが異なるものとなる。例えば、図5に示すように、受光信号F1b、F2bが2つの受光期間に跨る場合、受光信号F1bの方が信号レベルが大きくなる。第2の実施形態においては、信号レベルが大きい側の受光期間の受光信号を用いて位相差tdbを算出するようにした点が第1の実施形態と異なる。
【0076】
図6は第2の実施形態において行われる処理を示すフローチャートである。なお、第2の実施形態においては、第1の実施形態におけるステップST5以降の処理のみが異なるため、ここでは第1の実施形態におけるステップST5以降の処理についてのみ説明する。ステップST5に続いて、距離画像生成部31が位相差tdaの範囲を判定する(ステップST21)。
【0077】
tda≦Twの場合、さらにF1b≦F2bであるか否かを判定し(ステップST22)、ステップST22が肯定されると上記式(3)により位相差tdbを算出する(ステップST23)。ステップST22が否定されると、下記の式(8)により位相差tdbを算出する(ステップST24)。
【0078】
tdb=Tw×{1−F1b/(F1b+F2b)} (8)
Tw<tda≦2Twの場合、さらにF2b≦F3bであるか否かを判定し(ステップST25)、ステップST25が肯定されると上記式(4)により位相差tdbを算出する(ステップST26)。ステップST25が否定されると、下記の式(9)により位相差tdbを算出する(ステップST27)。
【0079】
tdb=Tw+Tw×{1−F2b/(F2b+F3b)} (9)
2Tw<tda≦3Twの場合、さらにF3b≦F4bであるか否かを判定し(ステップST28)、ステップST28が肯定されると上記式(5)により位相差tdbを算出する(ステップST29)。ステップST28が否定されると、下記の式(10)により位相差tdbを算出する(ステップST30)。
【0080】
tdb=2Tw+Tw×{1−F3b/(F3b+F4b)} (10)
そして、3Tw<tda≦4Twの場合、さらにF4b≦F1bであるか否かを判定し(ステップST31)、ステップST31が肯定されると上記式(6)により位相差tdbを算出する(ステップST32)。ステップST32が否定されると、下記の式(11)により位相差tdbを算出する(ステップST33)。
【0081】
tdb=3Tw+Tw×{1−F4b/(F4b+F1b)} (11)
次いで、距離画像生成部31は第1の実施形態におけるステップST11以降の処理を行い、処理を終了する。
【0082】
ここで、信号レベルが大きいということは外光によるノイズの影響が小さいことを意味する。したがって、信号レベルが大きい側の第2の受光信号を距離情報D1の算出に使用することにより、より正確に距離情報D1を算出することができる。
【0083】
次いで、本発明の第3の実施形態について説明する。なお、第3の実施形態においては、第1の実施形態と行われる処理のみが異なり、装置の構成は第1の実施形態と同一であるため、構成についての詳細な説明は省略する。ここで、第1および第2の測距光の反射光には外光成分が含まれる。外光成分は図7(a),(b)の斜線に示すように反射光に重畳されるため、受光信号は外光成分をも含むものとなっている。
【0084】
第1の測距光の反射光の受光信号からの位相差tdaの算出は、上記式(1)により行われるため、外光成分の影響は除去される。しかしながら、第2の測距光の反射光の受光信号からの位相差tdbの算出は、上記式(3)〜(6)により行われるため、外光成分の影響が含まれたものとなっている。第3の実施形態は外光成分の影響を除去して位相差tdbを算出するようにしたものである。
【0085】
距離画像生成部31は、4つの受光信号F1b、F2b、F3b、F4bのうち、第2の測距光の反射光を含まない位相の受光信号を用いて外光成分を算出する。例えば、反射光が図7(b)に示すものの場合、第2の測距光のパルス状の反射光はπ/2〜3π/2の位相の間に含まれる。このため、外光成分は、0〜π/2および3π/2〜2πの位相において取得される受光信号F1b,F4bに相当するものとなる。したがって、図7(b)に示す場合、外光成分kは、k=F1b+F4bにより算出する。
【0086】
次いで、第3の実施形態において行われる処理について説明する。図8は第3の実施形態において行われる処理を示すフローチャートである。なお、第3の実施形態においては、第1の実施形態におけるステップST5以降の処理のみが異なるため、ここでは第1の実施形態におけるステップST5以降の処理についてのみ説明する。ステップST5に続いて、距離画像生成部31が、位相差tdaの範囲を判定する(ステップST41)。
【0087】
tda≦Twの場合は、外光成分kをk=F3b+F4bにより算出し(ステップST42)、下記の式(12)により位相差tdbを算出する(ステップST43)。
【0088】
tdb=Tw×(F2b−k/2)/(F1b+F2b−k) (12)
Tw<tda≦2Twの場合は、外光成分kをk=F1b+F4bにより算出し(ステップST44)、下記の式(13)により位相差tdbを算出する(ステップST45)。
【0089】
tdb=Tw+Tw×(F3b−k/2)/(F2b+F3b−k) (13)
2Tw<tda≦3Twの場合は、外光成分kをk=F1b+F2bにより算出し(ステップST46)、下記の式(14)により位相差tdbを算出する(ステップST47)。
【0090】
tdb=2Tw+Tw×(F4b−k/2)/(F3b+F4b−k) (14)
そして、3Tw<tda≦4Twの場合は、外光成分kをk=F2b+F3bにより算出し(ステップST48)、下記の式(15)により位相差tdbを算出する(ステップST49)。
【0091】
tdb=3Tw+Tw×(F1b−k/2)/(F4b+F1b−k) (15)
次いで、距離画像生成部31は第1の実施形態におけるステップST11以降の処理を行い、処理を終了する。
【0092】
これにより、外光成分の影響を除去して、より精度良く距離画像を生成することができる。
【0093】
なお、上記第3の実施形態においては、第1の実施形態において外光成分を除去しているが、第2の実施形態においても同様に外光成分を除去することができることはもちろんである。
【0094】
また、上記第1から第3の実施形態においては、第1の測距光の変調周期における0の位相を基準としているが、0でない位相を基準として基準位相、基準位相からπ/2ずれた位相、基準位相からπずれた位相および基準位相から3π/2ずれた位相において反射光をそれぞれ受光するようにしてもよい。また、受光信号を取得する位相のずれは、π/2に限定されるものではない。
【0095】
また、上記各実施形態においては、第1の測距光を正弦波により変調しているが、三角波、パルス波等、一定の周期で変調するものであれば、どのように変調を行ってもよい。
【0096】
また、上記各実施形態においては、測距装置1内において距離画像を生成しているが、距離画像生成部31を装置1外に設け、入出力部33から受光信号を外部の距離画像生成部31に出力して距離画像を生成するようにしてもよい。
【0097】
以上、本発明の実施形態に係る測距装置について説明したが、コンピュータを、上記の距離画像生成部31に対応する手段として機能させ、図4,6,8に示すような処理を行わせるプログラムも、本発明の実施形態の1つである。また、そのようなプログラムを記録したコンピュータ読取り可能な記録媒体も、本発明の実施形態の1つである。
【図面の簡単な説明】
【0098】
【図1】第1の実施形態による測距装置の構成を示す概略ブロック図
【図2】測距光源の構成の構成を示す概略ブロック図
【図3】位相差の算出を説明するための図
【図4】第1の実施形態において行われる処理を示すフローチャート
【図5】2つの受光期間に跨る受光信号を示す図
【図6】第2の実施形態において行われる処理を示すフローチャート
【図7】外光成分を説明するための図
【図8】第3の実施形態において行われる処理を示すフローチャート
【符号の説明】
【0099】
1 測距装置
2 撮像部
13 CCD
16 測距光源
19 撮像制御部
31 距離画像生成部
32 CPU

【特許請求の範囲】
【請求項1】
所定周期にて強度が時間的に変化するように変調された第1の測距光、および前記所定周期にて強度が一定のパルス波状に変調された第2の測距光を切換可能に発光する測距光発光手段と、
受光光量に応じた受光信号を出力する複数の受光素子を有する撮像手段と、
前記撮像手段の受光期間を制御する受光制御手段と、
前記受光信号に基づいて、被写体までの距離を表す距離情報を前記受光素子毎に算出する距離情報算出手段と、
前記第1の測距光を発光し、該第1の測距光の変調周期における位相が異なる複数の受光期間において複数の第1の受光信号を取得し、次いで、前記第2の測距光を発光し、該第2の測距光の変調周期における前記複数の受光期間において複数の第2の受光信号を取得し、前記複数の第1の受光信号に基づいて、前記距離情報の算出に使用する第2の受光信号を選択するよう、前記測距光発光手段、前記撮像手段および前記距離情報算出手段を制御する制御手段とを備えたことを特徴とする測距装置。
【請求項2】
前記距離情報算出手段は、前記複数の第1の受光信号に基づいて、前記第1の測距光と該第1の測距光の反射光との位相差を前記受光素子毎に算出し、該位相差に基づいて前記複数の第2の受光信号のうち、前記距離情報の算出に使用する第2の受光信号を選択する手段であることを特徴とする請求項1記載の測距装置。
【請求項3】
前記測距光発光手段は、前記第2の測距光を、前記第1の測距光の変調周期と同一周期にて、該第1の測距光の変調周期よりもよりも短い期間発光する手段であることを特徴とする請求項1または2記載の測距装置。
【請求項4】
前記受光制御手段は、前記撮像手段の受光期間を、前記第2の測距光の発光期間と同一となるように制御する手段であることを特徴とする請求項1から3のいずれか1項記載の測距装置。
【請求項5】
前記測距光発光手段は、前記第2の測距光を、前記第1の測距光の変調周期の1/4の期間発光する手段であり、
前記受光制御手段は、前記撮像手段の受光期間を、前記第1の測距光の変調周期の1/4期間となるように制御する手段であることを特徴とする請求項4記載の測距装置。
【請求項6】
前記距離情報算出手段は、前記選択した第2の受光信号が複数の受光期間に跨る場合、信号レベルが大きい受光期間側の第2の受光信号を前記距離情報の算出に使用する手段であることを特徴とする請求項1から5のいずれか1項記載の測距装置。
【請求項7】
前記距離情報算出手段は、前記複数の第2の受光信号のうち、前記第2の測距光を受光していない期間の受光信号により、前記選択した第2の受光信号を補正する手段であることを特徴とする請求項1から6のいずれか1項記載の測距装置。
【請求項8】
所定周期にて強度が時間的に変化するように変調された第1の測距光、および前記所定周期にて強度が一定のパルス波状に変調された第2の測距光を切換可能に発光する測距光発光手段と、
受光光量に応じた受光信号を出力する複数の受光素子を有する撮像手段と、
前記撮像手段の受光期間を制御する受光制御手段と、
前記受光信号に基づいて、被写体までの距離を表す距離情報を前記受光素子毎に算出する距離情報算出手段とを備えた測距装置における測距方法であって、
前記第1の測距光を発光し、
該第1の測距光の変調周期における位相が異なる複数の受光期間において複数の第1の受光信号を取得し、
次いで、前記第2の測距光を発光し、
該第2の測距光の変調周期における前記複数の受光期間において複数の第2の受光信号を取得し、
前記複数の第1の受光信号に基づいて、前記距離情報の算出に使用する第2の受光信号を選択することを特徴とする測距方法。
【請求項9】
所定周期にて強度が時間的に変化するように変調された第1の測距光、および前記所定周期にて強度が一定のパルス波状に変調された第2の測距光を切換可能に発光する測距光発光手段と、
受光光量に応じた受光信号を出力する複数の受光素子を有する撮像手段と、
前記撮像手段の受光期間を制御する受光制御手段と、
前記受光信号に基づいて、被写体までの距離を表す距離情報を前記受光素子毎に算出する距離情報算出手段とを備えた測距装置における測距方法をコンピュータに実行させるためのプログラムであって、
前記第1の測距光を発光する手順と、
該第1の測距光の変調周期における位相が異なる複数の受光期間において複数の第1の受光信号を取得する手順と、
次いで、前記第2の測距光を発光する手順と、
該第2の測距光の変調周期における前記複数の受光期間において複数の第2の受光信号を取得する手順と、
前記複数の第1の受光信号に基づいて、前記距離情報の算出に使用する第2の受光信号を選択する手順とを有することを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2009−103626(P2009−103626A)
【公開日】平成21年5月14日(2009.5.14)
【国際特許分類】
【出願番号】特願2007−277141(P2007−277141)
【出願日】平成19年10月25日(2007.10.25)
【出願人】(306037311)富士フイルム株式会社 (25,513)
【復代理人】
【識別番号】100104189
【弁理士】
【氏名又は名称】福尾 勲将
【Fターム(参考)】