以下に、本発明の一実施形態の物体検出装置100について、図面を参照して説明する。
図1には、物体検出装置100の概略的構成がブロック図にて示されている。
物体検出装置100は、一例として、移動体としての車両(例えば自動車)に搭載され、投光し、物体(例えば先行車両、停車車両、障害物、歩行者等)で反射(散乱)された光を受光して該物体の有無や、該物体までの距離等の物体に関する情報(以下では「物体情報」とも呼ぶ)を検出する走査型レーザレーダである。物体検出装置100は、例えば車両のバッテリ(蓄電池)から電力の供給を受ける。
すなわち、物体検出装置100は、物体有無判定装置や距離測定装置(測距装置)や物体認識装置(物体の位置、形状、大きさ等を認識する装置)として機能する。
物体検出装置100は、一例として図1に示されるように、投光系10、受光系40、波形処理回路41(処理系)、二値化回路44(時間取得系の一部)、制御系46(時間取得系の一部)、同期系50、物体認識部47などを備えている。
投光系10は、光源としてのLD11(レーザダイオード)、LD駆動部12、投光光学系20を含む。
LD11は、端面発光レーザとも呼ばれ、LD駆動部12により駆動され、レーザ光を射出する。LD駆動部12は、制御系46から出力されるLD駆動信号(矩形パルス信号)を用いてLD11を点灯(発光)させる。LD駆動部12は、一例として、LD11に電流を供給可能に接続されたコンデンサ、該コンデンサとLD11との間の導通/非導通を切り替えるためのトランジスタ、該コンデンサを充電可能な充電手段等を含む。制御系46は、自動車のECU(エレクトロニックコントロールユニット)からの測定制御信号(測定開始信号や測定停止信号)を受けて測定開始や測定停止を行う。
なお、上記光源としてLD11を用いているが、これに限られない。例えば、VCSEL(面発光レーザ)、有機EL素子、LED(発光ダイオード)、LDやVCSEL以外のレーザ等の他の発光素子を用いても良い。
図2(A)には、投光光学系20、同期系50が模式的に示されている。図2(B)には、受光光学系30が模式的に示されている。以下では、図2(A)等に示されるZ軸方向を鉛直方向とするXYZ3次元直交座標系を適宜用いて説明する。
投光光学系20は、図2(A)に示されるように、LD11からの光の光路上に配置されたカップリングレンズ22と、該カップリングレンズ22を介した光の光路上に配置された反射ミラー24と、該反射ミラー24で反射された光の光路上に配置された偏向器としての回転ミラー26と、を含む。ここでは、装置を小型化するために、カップリングレンズ22と、偏向器としての回転ミラー26との間の光路上に反射ミラー24を設けて光路を折り返している。
そこで、LD11から射出された光は、カップリングレンズ22により所定のビームプロファイルの光に整形された後、反射ミラー24で反射され、回転ミラー26でZ軸周りに偏向される。
回転ミラー26でZ軸周りの所定の偏向範囲に偏向された光が投光光学系20から投射された光、すなわち物体検出装置100から射出された光である。
回転ミラー26は、回転軸(Z軸)周りに複数の反射面を有し、反射ミラー24からの光を回転軸周りに回転しながら反射(偏向)することで該光により上記偏向範囲に対応する有効走査領域を水平な1軸方向(ここではY軸方向)に1次元走査する。ここでは、偏向範囲、有効走査領域は、物体検出装置100の+X側である。以下では、回転ミラー26の回転方向を「ミラー回転方向」とも呼ぶ。
回転ミラー26は、図2(A)から分かるように、反射面を2面(対向する2つの面)有しているが、これに限らず、1面でも3面以上でも良い。また、少なくとも2つの反射面を設け、回転ミラーの回転軸に対して異なった角度で傾けて配置して、走査・検出する領域をZ軸方向に切り替えることも可能である。
なお、偏向器として、回転ミラーに代えて、例えば、ポリゴンミラー(回転多面鏡)、ガルバノミラー、MEMSミラー等の他のミラーを用いても良い。
受光系40は、図2(B)及び図1に示されるように、投光光学系20から投射され有効走査領域内にある物体で反射された光が入射される受光光学系30と、該受光光学系30を介した光を受光及び光電変換して電気信号を出力する時間計測用PD42とを含む。時間計測用PD42が出力する電気信号は電流(出力電流)であり、波形処理回路41に送られる。なお、「PD」はフォトダイオードの略称である。
受光光学系30は、図2(B)に示されるように、投光光学系20から投射され有効走査領域内にある物体で反射された光を反射する回転ミラー26と、該回転ミラー26からの光を反射する反射ミラー24と、該反射ミラー24からの光の光路上に配置され、該光を後述する時間計測用PD42に結像させる結像光学系と、を含む。
ここで、投光光学系20と受光光学系30は同一筐体内に設置されている。この筐体は、投光光学系20からの射出光の光路上及び受光光学系30への入射光の光路上に開口部を有し、該開口部がウィンドウ(光透過窓部材)で塞がれている。ウィンドウは例えばガラス製、樹脂製とすることができる。
図2(C)には、LD11から反射ミラー24までの光路と、反射ミラー24から時間計測用PD42までの光路が示されている。
図2(C)から分かるように、投光光学系20と受光光学系30は、Z軸方向に重なるように配置されており、回転ミラー26と反射ミラー24は、投光光学系20と受光光学系30で共通となっている。これにより、物体上におけるLD11の照射範囲と時間計測用PD42の受光可能範囲の相対的な位置ずれを小さくでき、安定した物体検出を実現できる。
そこで、投光光学系20から投射され物体で反射された光は、回転ミラー26、反射ミラー24を介して結像光学系に導かれ、該結像光学系により時間計測用PD42に集光する(図2(B)参照)。図2(B)では、装置を小型化するために、回転ミラー26と結像光学系との間に反射ミラー24を設けて光路を折り返している。ここでは、結像光学系は2枚のレンズ(結像レンズ)で構成されているが、1枚のレンズとしても良いし、3枚以上のレンズとしても良いし、ミラー光学系を用いても良い。
波形処理回路41は、時間計測用PD42から出力される出力電流を電圧信号(受光信号)に変換する電流電圧変換器43と、該電流電圧変換器43の出力信号(電圧信号)を増幅する信号増幅器48とを含む。
波形処理回路41の出力信号、すなわち信号増幅器48の出力信号は、二値化回路44及び制御系46に送られる。
なお、波形処理回路41において信号増幅器48は必須ではない。
二値化回路44は、閾値電圧を基準に波形処理回路41の出力信号を二値化し、該出力信号が閾値を超えている間、ハイレベル信号を検出信号として制御系46に出力する。二値化回路44は、コンパレータを含んで構成される。
同期系50は、図2(A)及び図1に示されるように、LD11から射出されカップリングレンズ22を介して反射ミラー24で反射された光であって回転ミラー26で偏向され反射ミラー24で再び反射された光の光路上に配置された同期レンズ52と、該同期レンズ52を介した光の光路上に配置された同期検知用PD54と、該同期検知用PD54が出力する電気信号(出力電流)を電圧信号に変換する電流電圧変換器53と、該電流電圧変換器53からの電圧信号を増幅する信号増幅器55と、該信号増幅器55からの電圧信号を閾値を基準に二値化し、該電圧信号が閾値を超えている間、ハイレベル信号を同期信号として制御系46に出力する、コンパレータを有する二値化回路56と、を含む。
詳述すると、反射ミラー24は、上記偏向範囲に対して回転ミラー26の回転方向上流側に配置され、回転ミラー26で上記偏向範囲の上流側に偏向された光が入射される。そして、回転ミラー26で偏向され反射ミラー24で反射された光が同期レンズ52を介して同期検知用PD54に入射される。
なお、反射ミラー24は、上記偏向範囲に対して回転ミラー26の回転方向下流側に配置されても良い。そして、回転ミラー26で偏向され反射ミラー24で反射された光の光路上に同期系50が配置されても良い。
回転する回転ミラー26の反射面で反射された光が同期検知用PD54で受光される度に同期検知用PD54から電気信号(出力電流)が出力される。この結果、二値化回路56からは定期的に同期信号が出力される(図3参照)。
このように回転ミラー26からの光を同期検知用PD54に照射するための同期点灯を行うことで、同期検知用PD54での受光タイミングから、回転ミラー26の回転タイミングを得ることが可能となる。
そこで、LD11を同期点灯してから所定時間経過後にLD11をパルス点灯することで有効走査領域を光走査することができる。すなわち、同期検知用PD54に光が照射されるタイミングの前後期間にLD11をパルス点灯することで有効走査領域を光走査することができる。
そして、回転ミラー26の回転周期と同じ周期で同期信号を生成し、該同期信号毎にLD駆動信号を生成することにより、有効走査領域を繰り返し光走査することができる。
なお、同期系は、同期レンズを有していなくも良いし、他の光学素子(例えば集光ミラー)を有していても良い。
ここで、時間計測や同期検知に用いる受光素子としては、上述したPD(Photo Diode)の他、APD(Avalanche Photo Diode)、ガイガーモードAPDであるSPAD(Single Photon Avalanche Diode)等を用いることが可能である。APDやSPADは、PDに対して感度が高いため、検出精度や検出距離の点で有利である。
制御系46は、二値化回路56からの同期信号に基づいてLD駆動信号を生成し、該LD駆動信号をLD駆動部12に出力する。
すなわち、LD駆動信号は、同期信号に対して遅延した発光信号(LDを発光させるためのパルス信号)である(図3参照)。
LD駆動信号がLD駆動部12に入力されると、LD駆動部12からLD11に駆動電流が印加され、LD11からパルス光が出力される。なお、LD11の安全性やLD11の耐久性の観点からLD11の発光のデューティが制限されるため、LD11から出力されるパルス光はパルス幅が狭い方が望ましく、該パルス幅は、一般に10ns~数十ns程度に設定される。また、パルス間隔は一般に数十μ秒程度である。
制御系46は、LD駆動信号、波形処理回路41の出力信号及び二値化回路44の出力信号に基づいて、対象物(測定対象の物体)までの距離を測定し、その測定結果を距離データとして物体認識部47に出力する。
制御系46は、一例として、制御部46a、記憶部46b、演算部46c、ヒストグラム/度数分布表生成部46d、所属階級推定部46eを含む(図20参照)。制御系46において、記憶部46bは例えばメモリやハードディスクで実現することが可能であり、記憶部46b以外の構成要素は例えばCPU(Central Processing Unit)やIC(Integrated Circuit)により実現できる。
制御系46の各構成要素の機能については後述する。
物体認識部47は、制御系46からの1走査もしくは複数の走査で取得した複数の距離データに基づいて、物体の位置、形状、大きさ等を認識し、その物体認識結果を制御系46に出力する。制御系46は、該物体認識結果をECUに転送する。
物体認識部47は、例えばCPU(Central Processing Unit)やIC(Integrated Circuit)によって実現できる。
ECUは、転送された物体認識結果に基づいて、例えば自動車の操舵制御(例えばオートステアリング)、速度制御(例えばオートブレーキ、オートアクセル等)、運転者への視覚や聴覚に訴える警告等を行う。
なお、制御系46及び物体認識部47の少なくとも一方を設けずに、該少なくとも一方の機能をECUに担わせても良い。
ここで、LD駆動部12は、回転ミラー26によって有効走査領域が走査されるとき、LD11を駆動して(発光させて)、図4(A)に示されるようなパルス光(以下では「発光パルス」や「投光パルス」とも称する)を射出させる。そして、LD11から射出され物体で反射(散乱)されたパルス光(以下では「受光パルス」とも称する)が時間計測用PD42(図4(A)では受光素子としてPDの代わりにAPDを用いている)で受光される。
LD11が発光パルスを射出してから、APDで受光パルスを受光するまでの時間tを計測することで、物体までの距離を算出することが可能である。時間計測に関しては、例えば、図4(B)に示されるように、発光パルスをPD等の受光素子で受光して光電変換後、電流電圧変換して(さらには必要に応じて信号増幅して)得られた電圧信号を二値化して矩形パルスとし、受光パルスをAPDで受光して光電変換後、電流電圧変換して(さらには必要に応じて信号増幅して)得られた電圧信号(受光信号)を二値化して矩形パルスとし、両矩形パルスの立ち上がりタイミング間の時間tを制御系46で計測しても良いし、発光パルス、受光パルスの波形をA/D変換してデジタルデータに変換し、両波形のデジタルデータを相関演算することで、時間tを計測することも可能である。
ところで、物体からの反射光を受光系40で受光したときに、物体からの反射光による信号(「以下では「物体信号」とも呼ぶ)とともにショットノイズ(外乱光に伴う白色雑音)が発生する。
このとき、物体信号の検出は二値化回路44に設定された閾値電圧を基準に行われるため、物体信号のピーク強度がショットノイズのピーク強度に比べて十分に大きくなる場合は、例えば閾値電圧を高めに設定することにより、物体信号のみを検出することが可能である(図5(B)参照)。
しかし、物体信号のピーク強度がショットノイズのピーク強度と同程度となるほど小さくなる場合(例えば遠距離にある物体や反射率が低い物体からの反射光を受光する場合)には、物体信号を検出するために閾値電圧を低めに設定すると、物体信号とショットノイズの両方が検出されてしまう(図5(A)参照)。この場合には、物体信号とショットノイズを判別する必要がある。
そこで、物体信号のピーク強度によらず、物体信号を精度良く取得するためには、閾値電圧を低めに設定し、かつ物体信号とショットノイズを判別することが必要となる。
なお、以下では、適宜、物体信号及びショットノイズを「信号」と総称する。
以下に、物体信号とノイズ(例えばショットノイズ)が閾値電圧を超える場合において、物体信号とノイズを判別する方法について説明する。
先ず、図6に示されるように、ある物体に対して光を投光し、該物体からの反射光を受光及び光電変換し、該光電変換により生じた電流を処理(例えば電流電圧変換、信号増幅、二値化)する一連の工程を含む測定を行うと、1つの受光波形(1つの受光信号の波形)から、ピークが閾値電圧(ここでは120mVに設定)を超える物体信号及び少なくとも1つ(ここでは2つ)のノイズが検出される。
このような測定を複数回行うことで、時間又は距離の階級毎の信号の度数を表すヒストグラムや度数分布表を作成することができる。以下では、時間の階級を「時間階級」とも呼び、距離の階級を「距離階級」とも呼ぶ。なお、1回の測定は「1フレーム」とも呼ばれる。
すなわち、検出された複数の信号(物体信号及び少なくとも1つのノイズ)を複数の階級に分類し、各階級に属する信号の数をカウントする。
ここでは、検出された複数の信号を、発光信号の立ち上がりタイミングから、信号の立ち上がりが閾値電圧を横切るタイミングまでの時間を距離に換算し、その換算値又は該換算値の1/2に応じた距離階級に分類する。
なお、ここでは信号の立ち上がりが閾値電圧を横切るタイミングに基づいて距離を算出しているが、信号の立ち下がりが閾値電圧を横切るタイミングに基づいて距離を算出したり、信号の立ち上がり及び立ち下がりがそれぞれ閾値電圧を横切るタイミングから所定の換算式によって距離を算出したり、その他の距離算出方法を用いるなど、種々の変形が可能である。
図6には、各時間階級の階級幅(以下では適宜「時間幅tw」と総称する)が一定(tw0=tw1=tw2=tw3=tw4=tw5)の場合が示されている。
次の表1は、上記測定を5回繰り返す実験1を行って作成した度数分布表であって、図6に示される時間幅twよりも短い時間幅20nsに相当する物体までの距離、すなわち時間幅20nsに光束を乗じた値の1/2である3mを階級幅とした距離階級の度数分布表である。
先ず、1回目の測定では、30~33mの距離階級に1つの信号が入っている。2回目の測定では、21~24mの距離階級に1つの信号が入り、30~33mの距離階級に1つの信号が入っている。3回目の測定では、18~21mの距離階級に1つの信号が入り、30~33mの距離階級に1つの信号が入っている。4回目の測定では、21~24mの距離階級に1つの信号が入り、30~33mの距離階級に1つの信号が入っている。5回目の測定では、24~27mの距離階級に1つの信号が入り、30~33mの距離階級に1つの信号が入り、42~45mの距離階級に1つの信号が入っている。
このような例えば5回の測定(フレーム数が5)を行って分ったことは、測定毎にノイズはランダムな時間に検出されるので、測定を繰り返しても同一の距離階級に少量の個数しか入らないのに対し、測定毎に物体信号は概ね一定の時間に検出されるので(物体信号は各回の測定において物体までの概ね一定の距離を反映するので)、測定を繰り返しても同一の距離階級に入ることである。
すなわち、30~33mの距離階級には最も多くの信号(5つの信号)が入っているので、この距離階級に入っている信号が物体信号であると推定している。
そして、30~33mの距離階級に入っている信号毎に距離値を算出し、該距離値の平均値や中央値(メジアン)を物体までの距離として求めることができる。
次の表2は、上記測定を3回繰り返す実験2を行って作成した、上記表1に比べて距離階級の階級幅が狭い度数分布表である。ここでは、階級幅は1mとされている。
ここで、階級幅が狭いと、複数の物体信号に基づいてそれぞれ算出された複数の距離値(以下では「距離演算値」とも呼ぶ)が隣接する2つの距離階級の境界付近で分散している場合、本来同一の階級に入るべき複数の物体信号が異なる距離階級(隣接する2つの距離階級の一方及び他方)に入ってしまうおそれがある。
また、物体信号に基づいて算出された距離値とノイズに基づいて算出された距離値が隣接する2つの距離階級の境界付近で分散している場合、本来異なる距離階級に入るべき物体信号とノイズが同一の階級に入ってしまうおそれがある。
また、測定回数(フレーム数)が少ないと、物体信号が入っている距離階級の信号数(物体信号の数)とノイズが入っている距離階級の信号数(ノイズの数)が同数になるおそれがある。
そこで、実験2では、物体信号が属する距離階級とノイズが属する距離階級を判別するために、複数の信号が入っている距離階級毎に、該距離階級に属する信号が閾値を超えている時間を距離に換算した値(パルス幅)を集計し、その標準偏差σ(ばらつき)を算出している。
ノイズはランダムなピーク強度で閾値を超えるためパルス幅の標準偏差σは大きくなり、逆に物体信号のパルス幅は安定しており標準偏差σが小さくなるため、両者の判別が可能となる。
実験2では、複数の信号が入っている階級のうち、パルス幅の標準偏差σが1.0以下となる階級を物体信号が入っている階級(物体信号が属する階級)と判断し、1.0を上回る階級をノイズが入っている階級(ノイズが属する階級)と判断している。
具体的には、27~28mの距離階級と31~32mの距離階級に2つ(最多数)ずつ信号が入っているが、27~28mの距離階級は標準偏差σが1.0を上回るのでノイズが属する距離階級と判断し、31~32mの距離階級は標準偏差σが1.0以下なので物体信号が属する距離階級と判断している。そして、31~32mの距離階級に入っている信号毎に距離値を算出し、該距離値の平均値や中央値(メジアン)を物体までの距離として求めることができる。
実験2では、物体信号が属する階級とノイズが属する階級を判別するのにパルス幅の標準偏差σを用いたが、パルス幅の平均値や中央値(メジアン)を用いても良い。
次の表3は、上記測定を2回繰り返す実験3を行って作成した、上記表1に比べて距離階級の階級幅が狭い度数分布表である。ここでは、階級幅は1mとされている。
実験3では、26~27mの距離階級、27~28mの距離階級、30~31mの距離階級、31~32mの距離階級に信号が1つずつ入っているが、26~27mの距離階級に属する信号と27~28mの距離階級に属する信号のパルス幅の標準偏差σが1.0を上回るのでノイズが属する距離階級と判断し、30~31mの距離階級に属する信号と31~32mの距離階級に属する信号のパルス幅の標準偏差σが1.0以下なので物体信号が属する距離階級と判断する。
すなわち、実験3では、一組の隣接する2つの距離階級にそれぞれ属する2つの信号のパルス標準偏差σと、別の組の隣接する2つの距離階級にそれぞれ属する2つの信号のパルス幅の標準偏差σを算出し、各標準偏差σが所定値(例えば1.0)以下であるか否かを判定することにより、物体信号が属する階級とノイズが属する階級を判別している。
そして、30~31mの距離階級、31~32mの距離階級に属する信号毎に距離値を算出し、該距離値の平均値や中央値(メジアン)を物体までの距離として求めることができる。
つまり、最多数の信号が属する距離階級が複数ある場合に、各距離階級に属する信号のパルス幅の標準偏差σを比較することにより、最多数の信号が属する複数の距離階級を物体信号が属する距離階級とノイズが属する距離階級に区別することができる。
これまで、より少ないフレーム数で高速に、物体信号とノイズを区別しながら、物体までの距離を検出する方法について述べてきた。以下では、時間階級の階級幅(時間幅)について説明する。
図6に示される受光波形のうちノイズの波形は、図1及び図7に示される波形処理回路41の周波数特性に依存する。波形処理回路41は、時間計測用PD42で光電変換により生じた電流を電圧に変換し、その電圧を増幅する回路である。ここでは、波形処理回路41において、電流電圧変換器43としてTIA(Time Interval Analyzer)を用い、信号増幅器48としてVGA(Variable Gain Amplifier)を用いている。
波形処理回路41の具体的な回路構成例が図8に示されている。ここで、電流電圧変換器43及び信号増幅器48それぞれで定義されるカットオフ周波数fc(ここでは実質的に同一と仮定)は、電流電圧変換器43、信号増幅器48にそれぞれ組み込まれるオペアンプ(ここでは実質的に同一と仮定)の帯域が十分広いものであると仮定したときに、次の(1)式で表される。
fc=GBW/G・・・(1)
ここで、GBWはオペアンプのGB積(Gain Band width product)、Gは次の(2)式で表される上記オペアンプのゲインである。
G=-R2/R1=-R5/R4・・・(2)
特に、外乱光に起因するショットノイズについては、その揺らぎの周波数が、波形処理回路41のカットオフ周波数fcとほぼ一致する(図9参照)。図9には、受光波形が実線で示されるとともに、12.5MHz、つまり80ns周期の理想的な正弦波が破線で示されているが、ベースレベルの揺らぎの周波数が、12.5MHzにほぼ一致している。このため、ヒストグラムや度数分布表を作成するための時間幅tw(時間階級の階級幅)を、カットオフ周波数fcの逆数をとって得られる時間以下にする(tw≦1/fc)ことにより、1つの時間階級に複数のショットノイズのピークが入ることがほとんどないため、時間階級間で信号のカウント数を比較することにより、物体信号とノイズを容易かつ明確に区別することが可能となる。
なお、時間階級に代えて距離階級を用いる場合についても、時間幅tw、1/fcをそれぞれ距離に換算することで同様の議論が成立する。
ここでは、fc=12.5MHzとしており、その逆数である80ns(距離換算で12m)より短い一定の時間幅に各時間幅twを設定している(tw0=tw1=tw2=tw3=tw4=tw5)。表1では20ns(距離換算で3m)、表2、表3では6.6ns(距離換算で1m)としている。
さらに、時間幅twを波形処理回路41のカットオフ周波数fcの逆数の値とする(tw=1/fc)と、上述の範囲内で時間幅twが最大になって比較すべき階級の数が最少となり、その結果、比較するための演算処理量やそれに付随するメモリ数などを最低限に抑えることができる。
また、時間幅twは、波形処理回路41から出力された信号の立ち上がり時間tr以上にすること(tw≧tr)が好ましい。
なお、ここでは、電流電圧変換器43及び信号増幅器48それぞれで定義されるカットオフ周波数を同一の「カットオフ周波数fc」として説明したが、電流電圧変換器43及び信号増幅器48のカットオフ周波数、すなわち電流電圧変換器43及び信号増幅器48にそれぞれ組み込まれるオペアンプのカットオフ周波数が互いに異なることも想定される。
そこで、電流電圧変換器43及び信号増幅器48それぞれで定義されるカットオフ周波数をカットオフ周波数fc1、fc2とし、電流電圧変換器43のGB積、ゲインをそれぞれGBW1、G1=-R2/R1とし、信号増幅器48のGB積、ゲインをそれぞれGBW2、G2=-R5/R4とすると、上記(1)式のfcをfc1に置き換え、GBWをGBW1に置き換え、GをG1に置き換えた式と、上記(1)式のfcをfc2に置き換え、GBWをGBW2に置き換え、GをG2に置き換えた式が成立する。
この場合にも、tw≦1/fc1又はtw≦1/fc2であることが好ましく、tw≦1/fc1かつtw≦1/fc2であること、すなわちtwがfc1、fc2のうち小さくない方の逆数以下であることがより好ましい。
図10には、時間計測用PD42で受光する、物体から反射もしくは散乱した光の光量(以下では「受光光量」とも呼ぶ)が変化したときの、受光光量毎の物体信号の波形が示されている。
図10では、受光光量1<受光光量2<受光光量3<受光光量4の関係になっている。図10から分かるように、受光光量1から受光光量3までは受光光量が増えるにつれて物体信号の波形のピーク電圧が高くなっているが、受光光量が受光光量4まで増えると、時間計測用PD42そのもの、もしくは波形処理回路41で電圧の飽和が起こり、物体信号の波形は受光光量3までとは異なり、ピーク電圧が所定の値に収束し、パルス幅が伸びていくようになる。
ここで、波形処理回路41から出力された物体信号の立ち上がり時間trと立ち下がり時間tfについて、図11を用いて説明する。
物体信号の電圧について、ピーク電圧の90%となる電圧をV90、ピーク電圧の10%となる電圧をV10とする。物体信号が立ち上がるときにV10となる時間をtr10、V90となる時間をtr90とし、物体信号が立ち下がるときにV10となる時間をtf10、V90となる時間をtf90とする。ここで、立ち上がり時間trを、tr=tr90-tr10と定義する。また、立ち下がり時間tfを、tf=tf10-tf90と定義する。
図10において、受光光量1の物体信号、受光光量2の物体信号、受光光量3の物体信号は、立ち上がり時間trと立ち下がり時間tfは同等であるが、ピーク電圧が異なるので、閾値電圧を超えるタイミングは互いに異なる。例えば図10の時間軸を拡大し、閾値電圧を0.75Vとした場合が図12に示されている。
これは、発光信号が立ち上がってから、物体信号が立ち上がるときに閾値を超えるまでの時間又は該時間に基づく距離を複数の階級に振り分けて階級毎に信号数をカウントする場合に、同一距離にある複数の物体からの反射光による信号がカウントされる階級が異なりうることや、物体の同一距離にある複数の部分からの反射光による信号がカウントされる階級が異なりうることを示唆している。
受光光量1から受光光量3までは受光光量が増えるにつれ、物体信号が閾値を超えるタイミングが早くなる。受光光量が受光光量4になると、物体信号が閾値を超えるタイミングが受光光量3よりも一層早くなる。
つまり、受光光量は、同一距離にある複数の物体や物体の同一距離にある複数の部分でも、反射率やサイズの違いによって変動する。この変動によって、物体信号が閾値を超えるタイミングが異なり、物体信号がカウントされる階級が異なると、複数の階級で物体信号がカウントされてしまい、物体信号とノイズを区別することが困難となる。
このため、受光光量が変動しても、物体信号が同じ階級でカウントされるように、時間幅twを物体信号の立ち上がり時間trと以上とするのが好ましい。
なお、上述のように物体信号の立ち上がり時間trは、受光信号が飽和しない限り同等なので、予め所定値として取得しておくことが可能である。
ここでは、物体信号の立ち上がり時間trが8nsより長い時間に設定されている。実験1ではtr=20ns(距離換算で3m)とされ、実験2及び実験3では6.7ns(距離換算で1m)とされている。
また、trは、LD11からの発光パルス(投光パルス)において物体信号と同様に定義される立ち上がり時間や立ち下がり時間と同等であることが好ましい。
LD11からの発光パルスに、波形処理回路41が応答しないと、受光信号がピークを迎える前に、LD11の点灯が終了してしまい、その結果、受光信号のピーク電圧が低下してしまうおそれがあるためである。
そこで、時間幅twをLD11からの発光パルスのパルス幅や立ち上がり時間や立ち下がり時間に基づいて設定しても良い。例えば時間幅twを発光パルスのパルス幅や該パルス幅の1/4~1/2と同等にしたり、時間幅twを発光パルスの立ち上がり時間以上としたり、時間幅twを発光パルスの立ち下がり時間以上としても良い。
ここで、発光パルス(投光パルス)のパルス幅は、図13に示されるように、発光パルスのピーク光量(投光パルスピーク値)の50%の光量(投光パルス50%値)における発光パルスの横幅をパルス幅(投光パルス幅Tpw)としている。なお、図13では、便宜上、パルス幅を時間表記している。
受光パルスの波形は、発光パルスの波形に対して、時間計測用PD42の応答特性と図7、図8に示される波形処理回路41の周波数特性が重畳された波形となる。
受光パルスの波形は、十分に速い特性であれば発光パルスの波形と同一となるが、実際には時間計測用PD42の応答特性や波形処理回路41の周波数特性に応じて発光パルスの波形よりも鈍ることが多い。
また、時間計測用PD42の応答特性や波形処理回路41の周波数特性のうち遅い方が律速となって最終的な受光波形が決まるが、以上では波形処理回路41の周波数特性が律速となる場合として述べてきた。
波形処理回路41の周波数特性は、前述のカットオフ周波数fcによって制約を受ける。カットオフ周波数fcでの利得低下が3dBとなるため、高い周波数の信号はそのまま伝達されず、全体として波形が鈍った状態で波形処理回路41から出力される。図6は、その鈍りがある受光波形を示している。
また、前述のように時間幅twを立ち上がり時間tr以上としているが、同一距離にある複数の物体や物体の同一距離にある複数の部分からの反射光による信号の検出タイミングが、異なる階級に属さないようにすれば良いため、時間幅twとして、信号が閾値を超えるタイミングから該信号がピークに達するまでの時間や、物体検出装置100と物体との相対速度が得られる場合に、その相対速度やフレームレート、それに関わる速度検知の分解能等を用いることも可能である。
例えば、物体検出装置100と物体との相対速度が得られる場合、その相対速度で物体検出装置100から物体までの距離が時間ごとに変化していく。フレームレートなどで、同一画素(同一走査位置)での次の検知までの時間が決まっているため、検出したい速度の分解能などで、同じ階級でカウントしたい物体までの時間幅や距離幅を算出し、その算出値を階級幅に設定しても良い。
また、上記では受光信号の立ち上がり時間trを考慮して時間幅twを設定しているが、受光信号の立ち下がり時間tfも考慮して時間幅twを設定する方法について以下に説明する。
受光信号の立ち上がりのみならず、立ち下がりも考慮した方が、測距精度が向上する場合がある。
また、波形処理回路41や、LD11やLD駆動部12の特性で、受光信号の立ち上がり時間trと立ち下がり時間tfが異なること(tr<tfとなること)も多い。この場合、時間幅twを、受光信号の立ち下がりがV90を横切ってから閾値電圧を横切るまでの時間以上に設定することが好ましい。
受光信号の立ち上がりが閾値を横切るタイミングをtr以上の時間幅twの対応する時間階級に振り分け、かつ立ち下がりが閾値を横切るタイミングをtf以上の時間幅twの対応する時間階級に振り分けて、時間階級毎の信号数をカウントしても良いが、trとtfの短い方であるtr以上に時間幅twを設定し、受光信号の立ち上がり、立ち下がりがそれぞれ閾値を横切るタイミングを対応する時間階級に振り分けて時間階級毎の信号数をカウントしても良い。このようにすれば、受光信号の立ち下がりでのカウントのばらつきは出るが、時間幅twを別々に設定してヒストグラムや度数分布表を別々に作成する必要がないため、より簡素な制御で測距することができる。
ここでも、上記と同様に、時間測定、距離換算の方法は種々の変形が可能である。
また、受光信号の立ち上がりが閾値を超えるタイミングを時間幅twの対応する時間階級に振り分けて信号数をカウントする場合に、図14に示されるように、物体までの距離が長くなるほど時間幅twが長くなるように設定すること(tw0<tw1<tw2<tw3<tw4<tw5)が好ましい。
例えば物体検出装置100が車両の前方に存在する物体(他の車両、歩行者、障害物等)を検出するような場合に、近距離にある物体ほど測距精度が高いことが望ましい。複数の階級のうち信号の度数が最多の階級に属する信号で物体までの距離を算出するため、時間幅twが短いほど、測距精度が高くなる。このため、近距離では、時間幅twを短くすることが望ましい。
一方、遠距離では、物体信号のピーク電圧が低く、ノイズなどの影響で物体信号がピークをとるタイミングが変動しやすくなり、そのヒストグラムはなだらかになりやすい。それでも、複数回の測定を行う場合に、物体信号のパルス幅は、ノイズのパルス幅よりも安定しているため(ばらつきが少ないため)、より多くのカウント数を早く積み上げて、各信号のパルス幅の標準偏差σを比較することで、物体信号とノイズを区別しやすくすることが望ましい。このため、遠距離では、時間幅twを長くすることが望ましい。
図14では、複数(例えば6つ)の時間階級の時間幅twを遠距離になるほど(時間が経つにつれて)長くなるように設定しているが、例えば、物体検出装置100に要求される検出距離範囲(例えば0m~210m)のうち、0m~30mの範囲を距離幅1m(時間幅6.7ns)の複数の距離階級に分割し、30m~90mの範囲を距離幅3m(時間幅20ns)の複数の距離階級に分割し、90m~210mの範囲を距離幅12m(時間幅80ns)の複数の距離階級に分割しても良いし、さらに各距離階級を一定の距離幅の複数の距離階級に分割しても良い。なお、「距離幅」は、距離階級の階級幅を意味する。
図15には、物体検出装置100を備えるセンシング装置1000が示されている。センシング装置1000は、車両(移動体)に搭載され、物体検出装置100に加えて、該物体検出装置100に電気的に接続された監視制御装置300を備えている。物体検出装置100は、車両のバンパー付近やバックミラーの近傍に取り付けられる。監視制御装置300は、物体検出装置100での検出結果に基づいて、物体の形状や大きさの推定、物体の位置情報の算出、移動情報の算出、物体の種類の認識等の処理を行って、危険の有無を判断する。そして、危険有りと判断した場合には、アラーム等の警報を発して移動体の操縦者に注意を促したり、ハンドルを切って危険を回避する指令を移動体の操舵制御部に出したり、制動をかけるための指令を移動体のECUに出す。なお、センシング装置1000は、例えば車両のバッテリから電力の供給を受ける。
なお、監視制御装置300は、物体検出装置100と一体的に設けられても良いし、物体検出装置100とは別体に設けられても良い。また、監視制御装置300は、ECUが行う制御の少なくとも一部を行っても良い。
以下に、物体検出装置100で実施される測距処理の具体例(測距処理1~4)について説明する。
<測距処理1>
測距処理1について図16を用いて説明する。図16のフローチャートは、制御系46で実行される処理アルゴリズムに基づいている。測距処理1は、物体検出装置100に電力が供給されたときに開始される。
最初のステップS1では、有効走査領域の繰り返し走査を開始する。具体的には、制御部46aが、入力された同期信号に基づいて生成したLD駆動信号(発光信号)をLD駆動部12に出力してLD11に駆動電流を印加することによりLD11をパルス発光させ、そのパルス光を回転する回転ミラー26で偏向する。
次のステップS2では、走査回数のカウント値kを初期化する。具体的には、制御部46aが、内蔵するカウンタのカウント値を0にする。
次のステップS3では、走査回数のカウントを開始する。具体的には、制御部46aが、入力された同期信号をトリガとしてカウンタによるカウントを開始し、以後、同期信号が入力される度にカウンタのカウント値を1だけアップする(カウントアップする)。
次のステップS4では、有効走査領域における各走査位置に対する走査時に波形処理回路41から出力された電圧信号のうち閾値電圧を超えた電圧信号を記憶部46bとしてのメモリに保存する。具体的には、制御部46aが、二値化回路44の出力信号(デジタル信号)に基づいて波形処理回路41から出力された電圧信号(アナログ信号)のピークが閾値電圧を超えたか否かを判定し、その判定結果が肯定的な電圧信号を該電圧信号が得られた走査位置に対応付けてメモリに保存する。
次のステップS5では、制御部46aが、カウント値kがK(K≧2)未満であるか否かを判断する。ここで、「K」は、測定結果を出力するまでの予め設定された測定回数である。ステップS5での判断が肯定されるとステップS4に戻り、否定されるとステップS5.5に移行する。
ステップS5.5では、制御部46aが、走査回数のカウントを終了する。
次のステップS6では、制御部46aが、nに1をセットする。
次のステップS7では、第n走査位置に対する各回の走査時に閾値電圧を超えた電圧信号毎に時間演算を行い、その演算結果である時間演算値を記憶部46bとしてのメモリに保存する。具体的には、制御部46aが、有効走査領域における第n番目の走査位置(1走査分のLD駆動信号の第n番目のパルスに対応する走査位置)である第n走査位置に対する各回の走査時に発光信号の立ち上がりタイミングから、電圧信号が閾値電圧を横切るタイミングに基づく所定タイミングまでの時間を算出し、その算出結果を該電圧信号に対応付けて時間演算値としてメモリに保存する。
次のステップS8では、時間階級毎の、閾値電圧を超えた電圧信号の度数を表すヒストグラム又は度数分布表を作成する。具体的には、ヒストグラム/度数分布表生成部46dが、ステップS7でメモリに保存された各時間演算値に対応する電圧信号を対応する時間階級に振り分けてヒストグラム又は度数分布表を作成する。
次のステップS9では、閾値電圧を超えた電圧信号の度数が最多の時間階級(以下では「度数最多時間階級」とも呼ぶ)を抽出する。具体的には、制御部46aが、ステップS8で作成されたヒストグラム又は度数分布表の複数の時間階級から、度数最多時間階級を抽出する。
次のステップS10では、制御部46aが、ステップS9で抽出された度数最多時間階級が複数であるか否かを判断する。ここでの判断が肯定されるとステップS11に移行し、否定されるとステップS16に移行する。
ステップS11では、所属階級推定部46eが、各度数最多時間階級に属する複数の電圧信号のパルス幅の標準偏差σを算出する。
次のステップS12では、所属階級推定部46eが、標準偏差σが1.0以下の度数最多時間階級を物体信号が属する階級(以下では「物体信号所属階級」とも呼ぶ)と推定し、その推定結果を演算部46cに出力する。
次のステップS13では、演算部46cが、所属階級推定部46eからの推定結果及びメモリに保存された各電圧信号に対応する時間演算値を参照して、物体信号所属階級と推定された度数最多時間階級に属する電圧信号毎の時間演算値の平均値(該時間演算値が1つの場合は該時間演算値そのもの)を算出し、該平均値を距離に換算した値の1/2を第n走査位置の測定結果として出力する。なお、上記時間演算値の平均値に代えて、該時間演算値の中央値(メジアン)や、物体信号所属階級と推定された度数最多時間階級の代表的な値、例えば階級値(階級幅の中央の値)を用いても良い。
次のステップS14では、n<Nであるか否かを判断する。ここで、「N」は、有効走査領域における走査位置の総数(1走査分のLD駆動信号の総パルス数)である。ステップS14での判断が肯定されるとステップS17に移行し、否定されるとステップS15に移行する。
ステップS15では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS15での判断が肯定されるとフローは終了し、否定されるとステップS2に戻る。
ステップS17では、nをインクリメントする。ステップS17が実行されると、ステップS7に戻る。
なお、ステップS5.5~ステップS17の一連の処理は、走査の合間(K回の走査が終了してから、次のK回の走査の最初の走査が開始されるまでの間)に行われる。
以上説明した測距処理1では、波形処理回路41から出力された電圧信号のうちピークが閾値を超えた電圧信号を、該電圧信号に基づいて算出された時間演算値に対応する時間階級に振り分けてヒストグラムや度数分布表を作成しているが、該電圧信号を該時間演算値の1/2に対応する時間階級に振り分けてヒストグラムや度数分布表を作成しても良い。
<測距処理2>
測距処理2について図17を用いて説明する。図17のフローチャートは、制御系46で実行される処理アルゴリズムに基づいている。測距処理2は、物体検出装置100に電力が供給されたときに開始される。
最初のステップS21では、有効走査領域の繰り返し走査を開始する。具体的には、制御部46aが、入力された同期信号に基づいて生成したLD駆動信号(発光信号)をLD駆動部12に出力してLD11に駆動電流を印加することによりLD11をパルス発光させ、そのパルス光を回転する回転ミラー26で偏向する。
次のステップS22では、走査回数のカウント値kを初期化する。具体的には、制御部46aが、内蔵するカウンタのカウント値を0にする。
次のステップS23では、走査回数のカウントを開始する。具体的には、制御部46aが、入力された同期信号をトリガとしてカウンタによるカウントを開始し、以後、同期信号が入力される度にカウンタのカウント値を1だけアップする(カウントアップする)。
次のステップS24では、有効走査領域における各走査位置に対する走査時に波形処理回路41から出力された電圧信号のうち閾値電圧を超えた電圧信号を記憶部46bとしてのメモリに保存する。具体的には、制御部46aが、二値化回路44の出力信号(デジタル信号)に基づいて波形処理回路41から出力された電圧信号(アナログ信号)のピークが閾値電圧を超えたか否かを判定し、その判定結果が肯定的な電圧信号を該電圧信号が得られた走査位置に対応付けてメモリに保存する。
次のステップS25では、制御部46aが、カウント値kがK(K≧2)未満であるか否かを判断する。ここで、「K」は、測定結果を出力するまでの予め設定された測定回数である。ステップS25での判断が肯定されるとステップS24に戻り、否定されるとステップS25.5に移行する。
ステップS25.5では、制御部46aが、走査回数のカウントを終了する。
次のステップS26では、制御部46aが、nに1をセットする。
次のステップS27では、第n走査位置に対する各回の走査時に閾値電圧を超えた電圧信号毎に距離演算を行い、その演算結果である距離演算値を記憶部46bとしてのメモリに保存する。具体的には、制御部46aが、有効走査領域における第n番目の走査位置(1走査分のLD駆動信号の第n番目のパルスに対応する走査位置)である第n走査位置に対する各回の走査時に発光信号の立ち上がりタイミングから、電圧信号が閾値電圧を横切るタイミングに基づく所定タイミングまでの時間を算出し、その算出結果を距離に換算した値の1/2を該電圧信号に対応付けて距離演算値としてメモリに保存する。
次のステップS28では、距離階級毎の、閾値電圧を超えた電圧信号の度数を表すヒストグラム又は度数分布表を作成する。具体的には、ヒストグラム/度数分布表生成部46dが、ステップS27でメモリに保存された各距離演算値に対応する電圧信号を対応する距離階級に振り分けてヒストグラム又は度数分布表を作成する。
次のステップS29では、閾値電圧を超えた電圧信号の度数が最多の距離階級(以下では「度数最多距離階級」とも呼ぶ)を抽出する。具体的には、制御部46aが、ステップS28で作成されたヒストグラム又は度数分布表の複数の距離階級から、度数最多距離階級を抽出する。
次のステップS30では、制御部46aが、ステップS29で抽出された度数最多距離階級が複数であるか否かを判断する。ここでの判断が肯定されるとステップS31に移行し、否定されるとステップS36に移行する。
ステップS31では、所属階級推定部46eが、メモリを参照して、各度数最多距離階級に属する複数の電圧信号のパルス幅の標準偏差σを算出する。
次のステップS32では、所属階級推定部46eが、標準偏差σが1.0以下の度数最多距離階級を物体信号が属する階級(以下では「物体信号所属階級」とも呼ぶ)と推定し、その推定結果を演算部46cに出力する。
次のステップS33では、演算部46cが、所属階級推定部46eからの推定結果及びメモリに保存された各電圧信号に対応する距離演算値を参照して、物体信号所属階級と推定された度数最多距離階級に属する電圧信号毎の距離演算値の平均値(該距離演算値が1つの場合は該距離演算値そのもの)を第n走査位置の測定結果として出力する。なお、上記距離演算値の平均値に代えて、該距離演算値の中央値(メジアン)や、物体信号所属階級と推定された度数最多距離階級の代表的な値、例えば階級値(該度数最多距離階級の中央の値)を用いても良い。
次のステップS34では、制御部46aが、n<Nであるか否かを判断する。ここで、「N」は、有効走査領域における走査位置の総数(1走査分のLD駆動信号の総パルス数)である。ステップS34での判断が肯定されるとステップS37に移行し、否定されるとステップS35に移行する。
ステップS35では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS35での判断が肯定されるとフローは終了し、否定されるとステップS22に戻る。
ステップS37では、nをインクリメントする。ステップS37が実行されると、ステップS27に戻る。
なお、ステップS25.5~ステップS37の一連の処理は、走査の合間(K回の走査が終了してから、次のK回の走査の最初の走査が開始されるまでの間)に行われる。
以上説明した測距処理2では、波形処理回路41から出力された電圧信号のうちピークが閾値を超えた電圧信号を、該電圧信号に基づいて算出された距離演算値に対応する距離階級に振り分けてヒストグラムや度数分布表を作成しているが、該電圧信号を該距離演算値に対応する時間階級に振り分けてヒストグラムや度数分布表を作成しても良い。
<測距処理3>
測距処理3について図18を用いて説明する。図18のフローチャートは、制御系46で実行される処理アルゴリズムに基づいている。測距処理3は、物体検出装置100に電力が供給されたときに開始される。
最初のステップS41では、有効走査領域の繰り返し走査を開始する。具体的には、制御部46aが、入力された同期信号に基づいて生成したLD駆動信号をLD駆動部12に出力してLD11に駆動電流を印加することによりLD11をパルス発光させ、そのパルス光を回転する回転ミラー26で偏向する。
次のステップS42では、走査回数のカウント値kを初期化する。具体的には、制御部46aが、内蔵するカウンタのカウント値を0にする。
次のステップS43では、走査回数のカウントを開始する。具体的には、制御部46aが、入力された同期信号をトリガとしてカウンタによるカウントを開始し、以後、同期信号が入力される度にカウンタのカウント値を1だけアップする(カウントアップする)。
次のステップS44では、有効走査領域における各走査位置に対する走査時に波形処理回路41から出力された電圧信号のうち閾値電圧を超えた電圧信号を記憶部46bとしてのメモリに保存する。具体的には、制御部46aが、二値化回路44の出力信号(デジタル信号)に基づいて波形処理回路41から出力された電圧信号(アナログ信号)のピークが閾値電圧を超えたか否かを判定し、その判定結果が肯定的な電圧信号を該電圧信号が得られた走査位置に対応付けてメモリに保存する。
次のステップS45では、制御部46aが、カウント値kがK(K≧2)未満であるか否かを判断する。ここで、「K」は、測定結果を出力するまでの予め設定された測定回数である。ステップS45での判断が肯定されるとステップS44に戻り、否定されるとステップS45.5に移行する。
ステップS45.5では、制御部46aが、走査回数のカウントを終了する。
次のステップS46では、制御部46aが、nに1をセットする。
次のステップS47では、第n走査位置に対する各回の走査時に閾値電圧を超えた電圧信号毎に時間演算を行い、その演算結果である時間演算値を記憶部46bとしてのメモリに保存する。具体的には、制御部46aが、有効走査領域における第n番目の走査位置(1走査分のLD駆動信号の第n番目のパルスに対応する走査位置)である第n走査位置に対する各回の走査時に発光信号の立ち上がりタイミングから、電圧信号が閾値電圧を横切るタイミングに基づく所定タイミングまでの時間を算出し、その算出結果を該電圧信号に対応付けて時間演算値としてメモリに保存する。
次のステップS48では、時間階級毎の時間演算値の度数を表すヒストグラム又は度数分布表を作成する。具体的には、ヒストグラム/度数分布表生成部46dが、ステップS47でメモリに保存された各時間演算値を対応する時間階級に振り分けてヒストグラム又は度数分布表を作成する。
次のステップS49では、時間演算値の度数が最多の時間階級(以下では「度数最多時間階級」とも呼ぶ)を抽出する。具体的には、制御部46aが、ステップS48で作成されたヒストグラム又は度数分布表の複数の時間階級から、度数最多時間階級を抽出する。
次のステップS50では、制御部46aが、ステップS49で抽出された度数最多時間階級が複数であるか否かを判断する。ここでの判断が肯定されるとステップS51に移行し、否定されるとステップS56に移行する。
ステップS51では、所属階級推定部46eが、メモリを参照して、各度数最多時間階級に属する複数の時間演算値にそれぞれ対応する複数の電圧信号のパルス幅の標準偏差σを算出する。
次のステップS52では、所属階級推定部46eが、標準偏差σが1.0以下の度数最多時間階級を物体信号に基づいて算出された時間演算値が属する階級(以下では「TOF演算時間所属階級」とも呼ぶ)と推定し、その推定結果を演算部46cに出力する。なお、「TOF」は、Time of Flightの略称である。
次のステップS53では、演算部46cが、所属階級推定部46eからの推定結果及びメモリに保存された時間演算値を参照して、TOF演算時間所属階級と推定された度数最多時間階級に属する時間演算値の平均値(該時間演算値が1つの場合は該時間演算値そのもの)を算出し、該平均値を距離に換算した値の1/2を第n走査位置の測定結果として出力する。なお、上記時間演算値の平均値に代えて、該時間演算値の中央値(メジアン)や、TOF演算時間所属階級と推定された度数最多時間階級の代表的な値、例えば階級値(該度数最多時間階級の中央の値)を用いても良い。
次のステップS54では、n<Nであるか否かを判断する。ここで、Nは、有効走査領域における走査位置の総数(1走査分のLD駆動信号の総パルス数)である。ステップS54での判断が肯定されるとステップS57に移行し、否定されるとステップS55に移行する。
ステップS55では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS55での判断が肯定されるとフローは終了し、否定されるとステップS42に戻る。
ステップS57では、nをインクリメントする。ステップS57が実行されると、ステップS47に戻る。
なお、ステップS45.5~ステップS57の一連の処理は、走査の合間(K回の走査が終了してから、次のK回の走査の最初の走査が開始されるまでの間)に行われる。
以上説明した測距処理3では、波形処理回路41から出力された電圧信号のうちピークが閾値を超えた電圧信号に基づいて算出された時間演算値を対応する時間階級に振り分けてヒストグラムや度数分布表を作成しているが、該時間演算値の1/2を対応する時間階級又は対応する距離階級に振り分けてヒストグラムや度数分布表を作成しても良い。
<測距処理4>
測距処理4について図19を用いて説明する。図19のフローチャートは、制御系46で実行される処理アルゴリズムに基づいている。測距処理4は、物体検出装置100に電力が供給されたときに開始される。
最初のステップS61では、有効走査領域の繰り返し走査を開始する。具体的には、制御部46aが、入力された同期信号に基づいて生成したLD駆動信号(発光信号)をLD駆動部12に出力してLD11に駆動電流を印加することによりLD11をパルス発光させ、そのパルス光を回転する回転ミラー26で偏向する。
次のステップS62では、走査回数のカウント値kを初期化する。具体的には、制御部46aが、内蔵するカウンタのカウント値を0にする。
次のステップS63では、走査回数のカウントを開始する。具体的には、制御部46aが、入力された同期信号をトリガとしてカウンタによるカウントを開始し、以後、同期信号が入力される度にカウンタのカウント値を1だけアップする(カウントアップする)。
次のステップS64では、有効走査領域における各走査位置に対する走査時に波形処理回路41から出力された電圧信号のうち閾値電圧を超えた電圧信号を記憶部46bとしてのメモリに保存する。具体的には、制御部46aが、二値化回路44の出力信号(デジタル信号)に基づいて波形処理回路41から出力された電圧信号(アナログ信号)のピークが閾値電圧を超えたか否かを判定し、その判定結果が肯定的な電圧信号を該電圧信号が得られた走査位置に対応付けてメモリに保存する。
次のステップS65では、制御部46aが、カウント値kがK(K≧2)未満であるか否かを判断する。ここで、「K」は、測定結果を出力するまでの予め設定された測定回数である。ステップS65での判断が肯定されるとステップS64に戻り、否定されるとステップS65.5に移行する。
ステップS65.5では、制御部46aが、走査回数のカウントを終了する。
次のステップS66では、制御部46aが、nに1をセットする。
次のステップS67では、第n走査位置に対する各回の走査時に閾値電圧を超えた電圧信号毎に距離演算を行い、その演算結果である距離演算値を記憶部46bとしてのメモリに保存する。具体的には、制御部46aが、有効走査領域における第n番目の走査位置(1走査分のLD駆動信号の第n番目のパルスに対応する走査位置)である第n走査位置に対する各回の走査時に発光信号の立ち上がりタイミングから、電圧信号が閾値電圧を横切るタイミングに基づく所定タイミングまでの時間を算出し、その算出結果を距離に換算した値の1/2を該電圧信号に対応付けて距離演算値としてメモリに保存する。
次のステップS68では、距離階級毎の距離演算値の度数を表すヒストグラム又は度数分布表を作成する。具体的には、ヒストグラム/度数分布表生成部46dが、ステップS67でメモリに保存された各距離演算値を対応する距離階級に振り分けて、ヒストグラム又は度数分布表を作成する。
次のステップS69では、距離演算値の度数が最多の距離階級(以下では「度数最多距離階級」とも呼ぶ)を抽出する。具体的には、制御部46aが、ステップS68で作成されたヒストグラム又は度数分布表の複数の距離階級から、度数最多距離階級を抽出する。
次のステップS70では、制御部46aが、ステップS69で抽出された度数最多距離階級が複数であるか否かを判断する。ここでの判断が肯定されるとステップS71に移行し、否定されるとステップS76に移行する。
ステップS71では、所属階級推定部46eが、メモリを参照して、各度数最多距離階級に属する複数の電圧信号のパルス幅の標準偏差σを算出する。
次のステップS72では、所属階級推定部46eが、標準偏差σが1.0以下の度数最多距離階級を物体信号に基づいて算出された距離演算値が属する階級(以下では「TOF演算距離所属階級」とも呼ぶ)と推定し、その推定結果を演算部46cに出力する。
次のステップS73では、演算部46cが、所属階級推定部46eからの推定結果及びメモリに保存された距離演算値を参照して、TOF演算距離所属階級と推定された度数最多距離階級に属する電圧信号毎の距離演算値の平均値(該距離演算値が1つの場合は該距離演算値そのもの)を第n走査位置の測定結果として出力する。なお、上記距離演算値の平均値に代えて、該距離演算値の中央値(メジアン)や、TOF演算距離所属階級と推定された度数最多距離階級の代表的な値、例えば階級値(該度数最多距離階級の中央の値)を用いても良い。
次のステップS74では、制御部46aが、n<Nであるか否かを判断する。ここで、「N」は、有効走査領域における走査位置の総数(1走査分のLD駆動信号の総パルス数)である。ステップS74での判断が肯定されるとステップS77に移行し、否定されるとステップS75に移行する。
ステップS75では、測定終了か否かを判断する。具体的には、ここでの判断は、物体検出装置100への電力の供給が停止されたときに肯定され、停止されていないときに否定される。ステップS75での判断が肯定されるとフローは終了し、否定されるとステップS62に戻る。
ステップS77では、nをインクリメントする。ステップS77が実行されると、ステップS67に戻る。
なお、ステップS65.5~ステップS77の一連の処理は、走査の合間(K回の走査が終了してから、次のK回の走査の最初の走査が開始されるまでの間)に行われる。
以上説明した測距処理4では、波形処理回路41から出力された電圧信号のうちピークが閾値を超えた電圧信号に基づいて算出された距離演算値を対応する距離階級に振り分けてヒストグラムや度数分布表を作成しているが、該距離演算値を対応する時間階級に振り分けてヒストグラムや度数分布表を作成しても良い。
以上説明した本実施形態の物体検出装置100の一部を構成する時間測定装置は、LD駆動信号(発光信号)に基づいて発光するLD11(光源)を含む投光系10と、該投光系10から投光され物体で反射された光を受光及び光電変換する時間計測用PD42(受光素子)を含む受光系40と、時間計測用PD42の出力電流に対して少なくとも1つの処理を行い、該処理により得られた電圧信号(信号)を出力する波形処理回路41(処理系)と、を備え、上記光がLD11から射出されてから時間計測用PD42で受光されるまでの時間を測定する時間測定装置において、投光系10が上記物体に向かう同一方向へ(同一の走査位置へ)複数回の投光を行ったときに、該複数回の各回の投光時に波形処理回路41から出力された電圧信号のうちピークが閾値電圧(閾値)を超えた電圧信号又は該電圧信号に基づく値を、上記時間又は該時間に基づく値に対応する複数の階級に分類し、その分類結果に基づいて上記同一方向への投光時における上記時間を取得する、制御系46を含む時間取得系を備え、波形処理回路41の周波数特性(特性)に基づいて階級毎の階級幅が設定されていることを特徴とする時間測定装置である。
ここで、階級幅が狭すぎると、階級の数すなわち比較処理をする対象が多くなり演算処理量が多くなってしまう。逆に、階級幅が広すぎると、各回の投光時に同一階級に入る、ピークが閾値を超えるノイズ(例えばショットノイズ)の数が増えることにより、物体信号とノイズの判別精度が低下する。
そこで、ノイズのパルス周期が受光素子の出力電流を処理する波形処理回路41の周波数特性に関連していることに着目し、該周波数特性に基づいて階級幅を設定することにより、閾値電圧を低めに設定した場合に1回の測定に要する走査回数(投光回数)が少なくても物体信号とノイズの判別精度を向上できるとともに、演算処理量を低減できる。
結果として、本実施形態の時間測定装置によれば、投光され物体で反射された光の時間計測用PD42での受光光量によらず(物体までの距離や物体の反射率によらず)高精度かつ高速な測定を行うことができる。
一方、特許文献1、2では、受光素子の出力電流を処理する回路の周波数特性に基づいて階級幅が設定されていないので、各回の投光時に同一階級に入る、ピークが閾値を超えるノイズの数を低減するとともに演算処理量を低減することに関して改善の余地があった。
すなわち、特許文献1、2では、投光され物体で反射された光の受光素子での受光光量によらず(物体までの距離や物体の反射率によらず)高精度かつ高速な測定を可能とすることに関して改善の余地があった。
また、波形処理回路41は、時間計測用PD42の出力電流を電圧に変換する電流電圧変換器43(電流電圧変換回路)を含み、階級幅は、電流電圧変換器43のカットオフ周波数fc1に基づいて設定されることが好ましい。ノイズのパルス周期は、特にカットオフ周波数fc1に関連しているからである。
また、階級幅は、カットオフ周波数fc1の逆数以下であることが好ましい。この場合、1つの階級に複数のノイズが入ることを防止でき、物体信号とノイズの判別精度をさらに向上できる。
また、波形処理回路41は、電流電圧変換器43の出力信号を処理する信号増幅器48(信号処理回路)を含み、階級幅は、信号増幅器48のカットオフ周波数fc2に基づいて設定されることが好ましい。ノイズのパルス周期は、特にカットオフ周波数fc2に関連しているからである。
また、階級幅は、電流電圧変換器43及び信号増幅器48のカットオフ周波数fc1、fc2のうち小さくない方の逆数以下であることがより好ましい。この場合、1つの階級に複数のノイズが入ることをより確実に防止でき、物体信号とノイズの判別精度をより一層向上できる。
また、階級幅は、物体信号(投光系10から投光され物体で反射された光による信号)の立ち上がり時間tr以上に設定されることが好ましい。この場合、投光毎に、時間計測用PD42での受光光量の違いなどによる物体信号のばらつきがあっても、該物体信号又は該物体信号に基づく値が同じ階級に入るため、物体信号とノイズの判別精度をより向上できる。
また、階級幅は、物体信号(投光系10から投光され物体で反射された光による信号)の立ち下がり時間以上に設定されることが好ましい。
物体信号は、立ち上がりのみならず、立ち下がりも考慮した方が、測距精度が向上する場合があり、その場合でも、立ち下がりのタイミングをカウントする際に、物体信号のばらつきがあっても、該物体信号又は該物体信号に基づく値が同じ階級に入るため、物体信号とノイズの判別精度をより向上できる。
また、階級幅は、階級間で異なっていても良い。例えば階級幅は、階級が高いほど(時間や距離が長くなるほど)広くなることが好ましい。この場合、近距離レンジでの測距精度を向上しつつ、遠距離レンジでの物体信号とノイズの区別を容易にすることができる。
また、階級幅は、LD11から射出された光(発光パルス)のパルス幅、立ち上がり時間、立ち下がり時間のいずれかに基づいて設定されることが好ましい。なお、通常、波形処理回路41のカットオフ周波数は、発光パルスのパルス幅(LD駆動信号のパルス幅)と同一のパルス幅の物体信号を取得するために所定の値に設定されるため、発光パルスのパルス幅や立ち上がり時間や立ち下がり時間に基づいて階級幅を設定することにより、結果として物体信号のパルス幅や立ち上がり時間や立ち下がり時間に基づいて階級幅を設定することができる。
また、時間取得系は、波形処理回路41から出力された電圧信号を閾値で二値化する二値化回路44を含み、各回の投光時に、LD駆動信号の立ち上がりタイミング(LD11の発光タイミング、より詳細にはLD11の発光開始タイミング)と、二値化回路44の出力信号に基づくタイミングとの時間差又は該時間差に基づく値を算出し、その算出結果に基づいて上記分類を行うことが好ましい。
また、時間取得系は、複数の階級のうち、ピークが閾値を超えた信号又は該信号に基づく値の数が最多の階級に属するピークが閾値を超えた信号又は該信号に基づく値(時間演算値)に基づいて、上記同一方向への投光時における上記時間を算出することが好ましい。
また、時間取得系は、上記最多の階級が複数ある場合に、ピークが閾値を超えた信号が閾値を最初に横切ってから次に横切るまでの時間に基づいて、複数の階級のうち物体信号又は該物体信号に基づく値が属する階級を推定することが好ましい。
また、時間取得系は、複数の階級のうち、ピークが閾値を超えた信号が閾値を最初に横切ってから次に横切るまでの時間又は該時間に基づく値(該時間を距離に換算した値)の標準偏差σが所定値(例えば1.0)以下の階級を物体信号又は該物体信号に基づく値(例えばTOF演算時間やTOF演算距離)が属する階級と推定することが好ましい。
また、投光系10は、LD11からの光を偏向走査する回転ミラー26(偏向器)を含んでいる。この場合、投光系10が同一方向へ複数回の投光を行うまでに複数回の走査を要するが、物体検出装置100は閾値電圧が低めに設定された状態で少ない走査回数でも物体信号とノイズを区別できるので、物体までの距離や物体の反射率によらず高精度かつ高速な測定が可能である。
また、本実施形態の時間測定装置を備え、該時間測定装置の時間取得系の取得結果に基づいて物体までの距離を算出する物体検出装置100によれば、投光され物体で反射された光の時間計測用PD42での受光光量によらず高精度かつ高速な測定を可能とする距離測定装置を実現できる。
なお、物体検出装置100が時間測定装置の出力に基づいて物体までの距離を算出せずに、物体検出装置100が搭載される車両のECUが時間測定装置の出力に基づいて物体までの距離を算出しても良い。
また、物体検出装置100と、該物体検出装置100が搭載される車両(移動体)と、を備える車両装置(移動体装置)によれば、衝突安全性に優れる車両装置を実現できる。
また、物体検出装置100と、該物体検出装置100の出力に基づいて、物体情報(物体の有無、物体の位置、物体の移動方向及び物体の移動速度の少なくとも1つ)を求める監視制御装置300と、を備えるセンシング装置1000によれば、物体情報を高精度かつ高速に安定して取得することができる。
また、センシング装置1000は移動体に搭載され、監視制御装置300は物体の位置情報及び移動情報の少なくとも一方に基づいて危険の有無を判断するため、例えば移動体の操縦制御系、速度制御系等に危険回避のための有効な情報を提供することができる。
また、センシング装置1000と、該センシング装置1000が搭載される車両(移動体)と、を備える車両装置(移動体装置)によれば、衝突安全性に優れる車両装置を実現できる。
また、本実施形態の時間測定方法は、投光する投光工程と、該投光工程で投光され物体で反射された光を受光及び光電変換する光電変換工程と、該光電変換工程で生じた電流に対して少なくとも1つの処理を行い、該処理により得られた電圧信号(信号)を出力する処理工程と、を含み、上記光が投光されてから受光されるまでの時間を測定する時間測定方法において、投光工程で上記物体に向かう同一方向へ複数回の投光を行ったときに、該複数回の各回の投光時に処理工程で出力された電圧信号のうちピークが閾値を超えた電圧信号又は該電圧信号に基づく値を、上記時間又は該時間に基づく値に対応する複数の階級に分類し、その分類結果に基づいて上記同一方向への投光時における上記時間を取得する時間取得工程を含み、上記処理の特性に基づいて階級毎の階級幅が設定されていることを特徴とする時間測定方法である。
本実施形態の時間測定方法によれば、投光され物体で反射された光の光電変換工程での受光光量によらず(物体までの距離や物体の反射率によらず)高精度かつ高速な測定を行うことができる。
また、本実施形態の距離測定方法は、投光する投光工程と、該投光工程で投光され物体で反射された光を受光及び光電変換する光電変換工程と、該光電変換工程で生じた電流に対して少なくとも1つの処理を行い、該処理により得られた電圧信号(信号)を出力する処理工程と、を含み、上記光が投光されてから受光されるまでの時間を測定する距離測定方法において、投光工程で上記物体に向かう同一方向へ複数回の投光を行ったときに、該複数回の各回の投光時に処理工程で出力された電圧信号のうちピークが閾値を超えた電圧信号又は該電圧信号に基づく値を、上記時間又は該時間に基づく値に対応する複数の階級に分類し、その分類結果に基づいて上記同一方向への投光時における上記時間を取得する時間取得工程と、時間取得工程での取得結果に基づいて物体までの距離を算出する距離算出工程を含み、上記処理の特性に基づいて階級毎の階級幅が設定されていることを特徴とする距離測定方法である。
本実施形態の距離測定方法によれば、投光され物体で反射された光の光電変換工程での受光光量によらず(物体までの距離や物体の反射率によらず)高精度かつ高速な測定を行うことができる。
なお、上記実施形態の物体検出装置100の構成は、適宜変更可能である。
例えば、波形処理回路に、信号処理回路として、例えばローパスフィルタ、ハイパスフィルタ等のフィルタを組み込んでも良い。このようなフィルタは、波形処理回路に信号増幅器が組み込まれる場合は信号増幅器と二値化回路との間に接続することが好ましく、波形処理回路に信号増幅器が組み込まれない場合は電流電圧変換器と二値化回路との間に接続することが好ましい。
また、投光系10は、偏向器としての回転ミラー26を用いる走査型であるが、偏向器を用いない非走査型であっても良い。すなわち、投光系は、少なくとも光源を有していれば良く、投光範囲の調整のためのレンズを光源の後段に有していても良い。非走査型の投光系には、複数の光源がアレイ状に配置された光源アレイを用いることが好ましい。
このような光源アレイとしては、例えば複数のLD11が1次元又は2次元に配列されたLD11アレイ、VCSELが1次元又は2次元に配列されたVCSELアレイなどが挙げられる。複数のLD11が1次元配列されたLD11アレイとしては、複数のLD11が積層されたスタック型のLD11アレイや複数のLD11が横に並べられたLD11アレイが挙げられる。
なお、光源アレイにおける各光源としてVCSELを用いれば、LDを用いる場合よりも高密度配置する(アレイ内の発光点の数をより多くする)ことができる。
また、投光光学系は、カップリングレンズを有していなくても良いし、他のレンズを有していても良い。
また、投光光学系、受光光学系は、反射ミラーを有していなくても良い。すなわち、LD11からの光を、光路を折り返さずに回転ミラーに入射させても良い。
また、受光光学系は、受光レンズを有していなくも良いし、他の光学素子(例えば集光ミラー)を有していても良い。
また、偏向器として、回転ミラーに代えて、例えば、ポリゴンミラー(回転多面鏡)、ガルバノミラー、MEMSミラー等の他のミラーを用いても良い。
また、同期系は、同期レンズを有していなくも良いし、他の光学素子(例えば集光ミラー)を有していても良い。
また、上記実施形態では、物体検出装置100が搭載される移動体として車両を例にとって説明したが、該移動体は、例えば航空機、船舶、ロボット等であっても良い。
また、以上の説明で用いた具体的な数値、形状などは、一例であって、本発明の趣旨を逸脱しない範囲で適宜変更可能なことは言うまでもない。
以上の説明から明らかなように、上記実施形態の時間測定装置を含む物体検出装置100(距離測定装置)、センシング装置1000、移動体装置、時間測定方法、距離測定方法、測距処理1~4は、物体までの距離を測定する所謂Time of Flight(TOF)法を用いた技術であり、移動体におけるセンシングの他、モーションキャプチャ技術、測距計、3次元形状計測技術などの産業分野などで幅広く用いることができる。すなわち、本発明の時間測定装置や距離測定装置やセンシング装置1000は、必ずしも移動体に搭載されなくても良い。
以下に、発明者らが上記実施形態を発案するに至った思考プロセスを説明する。
物体検出装置として、例えば、車載用途では、走行中の車両前方における物体の有無や、その物体までの距離を検出するレーザレーダ(「LIDAR」とも呼ばれる)が知られている。レーザレーダは、レーザ光源から射出されたレーザ光を物体に照射し、その物体から反射もしくは散乱された光を受光素子で受光することで、所望の範囲における物体の有無やその物体までの距離を検出する。
このようなレーザレーダでの測距において重要になるのがノイズと物体からの信号との分離である。ノイズの中でもショットノイズは外乱光に伴う白色雑音である。ショットノイズの大きさは外乱光の光量の時間平均の平方根に比例し、受光素子の感度が高いもしくは外乱光が強い場合には回路ノイズよりも問題になる。また、雨や霧など、回避不要な物体が検知されてしまう場合もノイズとなりうる。
閾値電圧を基準に受光信号(受光素子の出力電流に基づく信号)を検出する方式では、基本的には、ショットノイズによる誤検出を防ぐために、閾値電圧はショットノイズが最大となる状況を鑑みて、十分高い電圧値に決定される(図5(A)参照)。そのため、ショットノイズが比較的小さい場合においては閾値電圧が過剰に大きくなって遠距離にある物体からの反射光による信号が閾値電圧を超えないため、最大検出距離が非常に短くなってしまう(図5(B)参照)。
そこで、最大検出距離を長くするために、閾値電圧は誤検出の起こらない範囲で最小に設定することが望まれる。
特許文献1には、距離や時間の階級を持つヒストグラムのどの階級に計測された距離が該当するか判断し、計測された距離の頻度が最大となる階級を中心とした所定範囲の出力電圧信号の平均値に基づいて物体までの距離を算出する距離測定装置が開示されている。この距離測定装置では、雨天などの悪環境下であっても、ノイズ成分を抑制して物体までの距離を正確に算出できるとされている。
特許文献2には、特許文献1と同様なヒストグラムを作成し、その極大となるビンを除いたヒストグラムにて外乱光の分布を算出する方法が開示されている。この方法では、パルス光の強度を対象物までの距離に応じて変更することができるようになるため、物体までの距離に依存しない物体の画像を取得することが可能となる。
しかし、特許文献1、2では、2次元配置された複数の光源を一斉に点灯して複数のパルス光で照明された対象物の2D画像を取得するセンサ及び集積回路を有するTOF(Time Of Fright)センサの使用が想定されている。
このTOFセンサは、センサの画素毎にパルス光が対象物との間を往復する時間、さらには該時間に基づいて対象物までの距離を求める。
このTOFセンサで用いられる各光源は例えば10ns周期(100MHz)という高速の点灯が繰り返されるため、このようなヒストグラムの作成が短時間で可能となる。
一方、1ショットの発光を角度ごとに繰り返していく走査型の時間測定装置や距離測定装置では、角度毎(画素毎、走査位置毎)の発光周期(1走査の周期)が、例えば60ms程度となる。
この場合に、特許文献1、2のように、測距においてヒストグラムを作成し、その分散が統計的に信頼できるだけの回数、例えば1度の正確な測距を行うのに30回の測定を繰り返すと、1.8秒もの時間がかかってしまう。
このため、走査型の時間測定装置や距離測定装置は、移動物体などを検出する必要がある車両などの移動体に搭載される場合、せめて数回程度の測定でショットノイズや雨などのノイズと物体信号とを区別して正確な測距を行うことが要求される。
そこで、発明者らは、物体信号を検出するための閾値電圧を低く設定してもノイズと物体信号とを高速かつ高精度に判別可能な走査型の時間測定装置、距離測定装置、時間測定方法、距離測定方法、該時間測定装置や該距離測定装置を備えるセンシング装置、該時間測定装置や該距離測定装置や該センシング装置を備える移動体装置を実現すべく、上記実施形態を発案した。