【実施例】
【0021】
以下、図面を参照して本発明の好適な実施例について説明する。
【0022】
<基本説明>
まず、実施例に係るライダの基本的な構成について説明する。
【0023】
(1)全体構成
図1は、実施例に係るライダの全体構成を示す。ライダ1は、繰り返し射出される光パルスの射出方向(以下、「走査方向」という。)を適切に制御することにより周辺空間を走査し、その戻り光を観測することにより、周辺に存在する物体に関する情報(例えば距離やその存在確率あるいは反射率など)を把握する。具体的に、ライダ1は、光パルス(以下、「射出光Lo」と呼ぶ。)を射出し、外部の物体(ターゲット)により反射された光パルス(以下、「戻り光Lr」と呼ぶ。)を受光することにより、物体に関する情報を生成する。ライダ1は、本発明における「情報処理装置」の一例である。
【0024】
図1に示すように、ライダ1は、大別して、システムCPU5と、ASIC10と、トランスミッタ30と、レシーバ40と、走査光学部50とを備える。トランスミッタ30は、ASIC10から供給されるパルストリガ信号「PT」に応じて幅5nsec程度のレーザ光パルスを繰り返し出力する。トランスミッタ30から出力された光パルスは走査光学部50に導かれる。
【0025】
走査光学部50は、トランスミッタ30が出力する光パルスを、適切な方向に射出するとともに、この射出光が空間中の物体に出会って反射あるいは散乱されることにより戻ってきた戻り光Lrを集光してレシーバ40に導く。また、本実施例では、走査光学部50には、特定の走査方向の射出光Loを吸収する暗基準反射体(吸収体)7と、特定の走査方向の射出光Loを反射する明基準反射体8とが設けられている。走査光学部50は、本発明における「射出部」の一例である。レシーバ40は、戻り光Lrの強度に比例した信号をASIC10に出力する。レシーバ40は、本発明における「受光部」の一例である。
【0026】
ASIC10は、レシーバ40の出力信号を解析することにより、走査空間中の物体に関するパラメータ、例えばその距離を推測して出力する。また、ASIC10は、適切な走査がなされるように、走査光学部50を制御する。更にASIC10はトランスミッタ30とレシーバ40に対して夫々が必要とする高電圧を供給する。
【0027】
システムCPU5は、少なくとも、通信インターフェースを通じてASIC10の初期設定、監視、制御を行う。その他の機能は、アプリケーションに応じて異なる。最も単純なライダの場合には、システムCPU5は、ASIC10が出力するターゲット情報「TI」を適切なフォーマットに変換して出力するのみである。システムCPU5は、例えば、ターゲット情報TIを汎用性の高い点群フォーマットに変換した後、USBインターフェースを通じて出力する。
【0028】
(2)トランスミッタ
トランスミッタ30は、ASIC10から供給されるパルストリガ信号PTに応じて、幅5nsec程度の光パルスを出力する。トランスミッタ30の構成を
図2(A)に示す。トランスミッタ30は、充電抵抗31と、ドライバ回路32と、キャパシタ33と、充電ダイオード34と、レーザダイオード(LD)35と、CMOSスイッチ36とを備える。
【0029】
ASIC10から入力されるパルストリガ信号PTは、ドライバ回路32を介してCMOSなどのスイッチ36を駆動する。ドライバ回路32は、スイッチ36を高速駆動するために挿入されている。パルストリガ信号PTの非アサート期間ではスイッチ36は開いており、トランスミッタ30内のキャパシタ33がASIC10から供給される高電圧V
TXで充電される。一方、パルストリガ信号PTのアサート期間では、スイッチ36は閉じ、キャパシタ33に充電されていた電荷がLD35を通じて放電される。この結果、LD35から光パルスが出力される。
【0030】
(3)レシーバ
レシーバ40は、物体からの戻り光Lrの強度に比例した電圧信号を出力する。一般的に、APDなどの光検出素子は電流出力であるため、レシーバ40はこの電流を電圧に変換(I/V変換)して出力する。レシーバ40の構成を
図2(B)に示す。レシーバ40は、APD41と、I/V変換部42と、抵抗45と、キャパシタ46と、ローパスフィルタ(LPF)47とを備える。I/V変換部42は、帰還抵抗43と、オペアンプ44とを備える。ここで、後述するレシーバ雑音には、帰還抵抗43で発生する熱雑音、オペアンプ44で発生する電流雑音及び電圧雑音が含まれる。
【0031】
本実施例では、光検出素子としてAPD41が使用されている。APD41には、ASIC10から供給される高電圧V
RXが逆バイアスとして印加されており、物体からの戻り光Lrに比例した検出電流が流れる。APD41の降伏電圧に近い逆バイアスを印加することにより、高いアバランチゲインを得ることができ、微弱な戻り光も検出することが可能となる。最終段のLPF47は、ASIC10内のADC20によるサンプリングに先立って、信号の帯域幅を制限する目的で設置されている。本実施例では、ADC20のサンプリング周波数は512MHzであり、LPF47の遮断周波数は250MHz程度となっている。
【0032】
(4)走査光学部
走査光学部50は、トランスミッタ30から入力される光パルスを射出光Loとして適切な方向に射出するとともに、この射出光Loが空間中の物体に出会って反射あるいは散乱されることにより戻ってきた戻り光Lrをレシーバ40に導く。走査光学部50の構成例を
図3に示す。走査光学部50は、回転ミラー61と、コリメータレンズ62と、集光レンズ64と、光学フィルタ65と、同軸ミラー66と、ロータリーエンコーダ67とを備える。
【0033】
トランスミッタ30のLD35から出力された光パルスは、コリメータレンズ62に入射する。コリメータレンズ62は、レーザ光を適切な発散角度に(一般的には0〜1°程度に)コリメートする。コリメータレンズ62からの射出光は小型の同軸ミラー66により鉛直下方に反射され、回転ミラー61の回転軸(中心)に入射する。回転ミラー61は、鉛直上方より入射するレーザ光を水平方向に反射して、走査空間に射出する。回転ミラー61はモータ54の回転部に取り付けられており、回転ミラー61によって反射されたレーザ光はモータ54の回転に伴って射出光Loとして水平平面を走査する。
【0034】
走査空間に存在する物体により反射あるいは散乱されることでライダ1に戻ってきた戻り光Lrは、回転ミラー61により鉛直上方向に反射され、光学フィルタ65に入射する。光学フィルタ65には、戻り光Lrに加えて、物体が太陽等により照らされていることによって生じる背景光も入射する。光学フィルタ65は、こうした背景光を選択的に排除するために設置されている。具体的には、光学フィルタ65は、射出光Loの波長(本実施例では905nm)の前後±10nm程度の成分のみを選択的に通過せしめる。光学フィルタ65の通過帯域が広い場合には、多くの背景光が後続段のレシーバ40に入光することになる。この結果、レシーバ40内のAPD41の出力には大きなDC電流成分が現れることとなり、このDC成分に起因するショット雑音(背景光ショット雑音)の影響によりSNが劣化することとなり、好ましくない。しかしながら、通過帯域が過度に狭い場合には、射出光自体も抑圧されることになり、好ましくない。集光レンズ64は、光学フィルタ65を通過した光を集光して、レシーバ40のAPD41へと導く。
【0035】
モータ54には、走査方向を検出するために、ロータリーエンコーダ67が取り付けられている。ロータリーエンコーダ67は、モータ回転部に取り付けられた回転盤68と、モータベースに取り付けられたコード検出器69とを備える。回転盤68の外周にはモータ54の回転角度を表すスリットが刻まれており、コード検出器69はこれを読み取り出力する。なお、ロータリーエンコーダ67の具体的仕様、及びその出力に基づくモータ制御については、後述する。
【0036】
以上の構成では、コリメータレンズ62が
図1に示す送信光学系51を構成し、回転ミラー61が
図1に示す走査部55を構成し、光学フィルタ65と集光レンズ64が
図1に示す受信光学系52を構成し、ロータリーエンコーダ67が
図1における走査方向検出部53を構成している。
【0037】
(5)ASIC
ASIC10は、射出光パルスのタイミング制御、APD出力信号のAD変換などを行う。また、ASIC10は、AD変換出力に対して適切な信号処理を施すことにより、物体に関するパラメータ(距離、戻り光強度など)の推定を行い、その推定結果を外部に出力する。
図1に示すように、ASIC10は、レジスタ部11と、クロック生成部12と、同期制御部13と、ゲート抽出部14と、受信セグメントメモリ15と、DSP16と、トランスミッタ用高電圧生成部(TXHV)17と、レシーバ用高電圧生成部(RXHV)18と、プリアンプ19と、AD変換器(ADC)20と、走査制御部21とを備える。
【0038】
レジスタ部11には、外部プロセッサであるシステムCPU5との通信用のレジスタが配置されている。レジスタ部11に設けられるレジスタは、外部からの参照のみが可能なRレジスタと、外部から設定が可能なWレジスタとに大別される。Rレジスタは、主にASIC内部のステイタス値を保持しており、システムCPU5はこれらの値を通信インターフェースを通じて読み取ることで、ASIC10の内部ステイタスを監視できる。一方、Wレジスタは、ASIC10の内部で参照される各種パラメータ値を保持する。これらの各種パラメータ値は、通信インターフェースを通じてシステムCPU5から設定できる。なお、通信用レジスタは、フリップフロップにより実現してもよく、RAMとして実現してもよい。
【0039】
クロック生成部12は、システムクロック「SCK」を生成し、ASIC10内の各ブロックに供給する。ASIC10の多くのブロックは、システムクロックSCKに同期して動作する。本実施例ではシステムクロックSCKの周波数は512MHzとする。システムクロックSCKは、外部より入力されるリファレンスクロック「RCK」に同期するように、PLLで生成される。通常、リファレンスクロックRCKの発生源には水晶発振器が用いられる。
【0040】
TXHV17は、トランスミッタ30が必要とするDC高電圧(100V程度)を生成する。この高電圧は、DCDCコンバータ回路によって、低電圧(5V〜15V程度)を昇圧することによって生成される。
【0041】
RXHV18は、レシーバ40が必要とするDC高電圧を生成する。この高電圧は、DCDCコンバータ回路によって、低電圧(5V〜15V程度)を昇圧することによって生成される。
【0042】
同期制御部13は、各種の制御信号を生成し出力する。本実施例における同期制御部13は、2つの制御信号、即ち、パルストリガ信号PTとADゲート信号「GT」を出力する。これらの制御信号の設定例を
図4に示し、それらの時間的関係を
図5に示す。
図5に示すように、これらの制御信号は所定の間隔で分割された時間区間(セグメントスロット)に同期して生成される。セグメントスロットの時間区間幅(セグメント周期)は「nSeg」で設定可能である。本実施例では、特記ない範囲において、「nSeg=8192」に設定されているものとする。
【0043】
パルストリガ信号PTは、ASIC10の外部に設けられたトランスミッタ30に供給される。トランスミッタ30は、パルストリガ信号PTに応じて光パルスを出力する。パルストリガ信号PTについては、セグメントスロット始点に対する遅延「dTrg」とパルス幅「wTrg」を設定可能である。なお、パルス幅wTrgは、狭すぎるとトランスミッタ30が反応しないため、トランスミッタ30のトリガ応答仕様に鑑みて決定される。
【0044】
ADゲート信号GTは、ゲート抽出部14に供給される。後述するように、ゲート抽出部14は、ADC20から入力されるADC出力信号のうち、ADゲート信号GTのアサート区間のみを抽出して受信セグメントメモリ15に格納する。ADゲート信号GTについては、セグメントスロット始点に対する遅延時間「dGate」とゲート幅「wGate」を設定可能である。
【0045】
プリアンプ19は、ASIC10の外部に設置されたレシーバ40から入力されるアナログ電圧信号を電圧増幅し、後続のADC20に供給する。なお、プリアンプ19の電圧ゲインはWレジスタにより設定可能である。
【0046】
ADC20は、プリアンプ19の出力信号をAD変換してデジタル系列に変換する。本実施例においては、ADC20のサンプリングクロックとしてシステムクロックSCKが使用されており、ADC20の入力信号は512MHzでサンプリングされる。
【0047】
ゲート抽出部14は、ADC20から入力されるADC出力信号のうち、ADゲート信号GTのアサート区間のみを抽出して受信セグメントメモリ15に格納する。ゲート抽出部14により抽出された区間信号を以下「受信セグメント信号RS」と呼ぶ。即ち、受信セグメント信号RSは、ベクター長がゲート幅wGateに等しい実数ベクトルである。
【0048】
ここで、ADC出力信号と受信セグメントとの関係、及びゲート位置の設定について説明する。
図6(A)はセグメントスロットを示している。
図6(B)に示すように、パルストリガ信号PTはセグメントスロット始点に対してdTrgだけ遅れてアサートされる。
図6の例では「dTrg=0」であるので、パルストリガ信号PTはセグメントスロット始点でアサートされる。
図6(C)は、ライダの走査原点に物体が置かれている場合のADC出力信号(受信セグメント信号RS)を示している。即ち、
図6(C)は、ターゲット距離(動径R)が0mの場合の受信セグメント信号RSを例示している。図示のように、「R=0m」の場合であっても、受信パルスの立ち上がりは、パルストリガ信号の立ち上がりよりシステム遅延D
SYSだけ遅れて観測される。なお、システム遅延D
SYSの発生要因としては、トランスミッタ30内のLDドライバ回路の電気的遅延、送信光学系51での光学的遅延、受信光学系52での光学的遅延、レシーバ40での電気的遅延、ADC20での変換遅延などが考えられる。
【0049】
図6(D)は、物体が動径Rに置かれている場合の受信セグメント信号RSを例示している。この場合には、
図6(C)と比べて、走査原点から物体までの光の往復時間だけ、遅延が増加することになる。この増加した遅延が、いわゆる「TOF(Time Of Flight)遅延」である。このTOF遅延をDサンプルとするならば、動径Rは下記の式で算出できる。
【0050】
【数1】
図6(F)は、「dGate=0」の場合のADゲート信号GTを例示するものである。前述したとおり、ゲート抽出部14は、ADC出力信号から、ADゲート信号GTのアサート区間のみを抽出する。後述するDSP16は、この抽出区間のみに基づいて、物体に関するパラメータ推定を行う。したがって、TOF遅延時間が大きい場合には、物体からの戻りパルス成分がゲートからはみ出してしまい正当なパラメータ推定が行えない。正当なパラメータ推定が行われるためにはTOF遅延時間Dが次式を満たしていることが必要となる。
【0051】
【数2】
ここで「L
IR」はシステムの総合インパルス応答の長さであり、「D
MAX」は正当なパラメータ推定が可能な最大TOF遅延時間として定義される。
図6(E)は、TOF遅延時間がこの最大TOF遅延時間に等しい場合の受信セグメント信号RSを例示している。
【0052】
なお、
図6の例に代えて、ゲート遅延dGateがシステム遅延時間に等しく設定されてもよい。このように設定することで、より遠い距離の物体まで、正当なパラメータ推定が可能となる。
【0053】
また、本実施例では、セグメントスロット始点に対する遅延dTrgを0より大きい所定値に設定することで、ADゲート信号GTがアサートされてからパルストリガ信号PTがアサートされるまでの期間(「プリトリガー区間Tp」とも呼ぶ。)を設ける。
図7(A)〜(D)は、遅延dTrgを「128」に設定した場合のパルストリガ信号PT、受信セグメント信号RS、ADゲート信号GTを例示した図である。そして、後述するように、ライダ1は、プリトリガー区間Tpに得られた受信セグメント信号RSに基づき、背景光に起因したショット雑音を推定する。
【0054】
走査制御部21は、ASIC10の外部に設置されたロータリーエンコーダ67の出力を監視し、これに基づいてモータ54の回転を制御する。具体的には、走査制御部21は、走査光学部50のロータリーエンコーダ67(走査方向検出部53)から出力される走査方向情報「SDI」に基づいて、トルク制御信号「TC」をモータ54に供給する。本実施例におけるロータリーエンコーダ67は、A相とZ相の2つのパルス列(以下、「エンコーダパルス」と呼ぶ。)を出力する。両パルス列の時間関係を
図8(A)に示す。図示のように、A相については、モータ54の回転1°毎に1パルスが生成出力される。従って、モータ54の1回転毎に360のA相エンコーダパルスが生成出力されることになる。一方、Z相については、モータ54の1回転につき1パルスが、所定の回転角に対応して、生成出力される。
【0055】
走査制御部21は、エンコーダパルスの立ち上がり時刻をシステムクロックSCKのカウンタ値として計測し、これが所望の値となるようにモータ54のトルクを制御する。即ち、走査制御部21は、エンコーダパルスとセグメントスロットが所望の時間関係となるようにモータ54をPLL制御する。定常状態でのエンコーダパルスとセグメントスロットの時間関係を
図8(B)に示す。
図8(B)の例では、1フレームは1800のセグメントから構成され、1フレームでモータ54は1回転している。
【0056】
(6)DSP
DSP16は、受信セグメントメモリ15から受信セグメント「y
frm,seg」を順次的に読み出して、これに対して処理を行う。ここで、「frm」はフレームインデックス、「seg」はセグメントインデックスである。以下、誤解の恐れのない範囲でこれらインデックスの表記を省略する。受信セグメントyはベクター長wGateの実数ベクトルであり、次式で表される。
【0057】
【数3】
DSP16の詳細な構成については後述する。DSP16は、本発明における「第1推定部」、「第2推定部」、「推定部」、「処理部」、及び本発明におけるプログラムを実行する「コンピュータ」の一例である。
【0058】
(7)暗基準反射体及び明基準反射体
ライダ1は、特定の走査方向の射出光Loを吸収する暗基準反射体7を備え、DSP16は、暗基準反射体7に入射する走査方向に対応する受信セグメントyを、後述するレシーバ雑音やショット雑音を推定する際の基準となるAPD41の出力信号として取得する。また、ライダ1は、特定の走査方向の射出光Loを反射する明基準反射体8を備え、DSP16は、明基準反射体8に入射する走査方向に対応する受信セグメントyに基づき、受信セグメントyに畳み込むインパルス応答「h」を推定する。
【0059】
図9(A)は、暗基準反射体7及び明基準反射体8の配置を概略的に示した図である。
図9(A)では、暗基準反射体7及び明基準反射体8は、走査部55等を収容する略円筒状のライダ1の筺体25付近に配置されている。
【0060】
ここで、暗基準反射体7及び明基準反射体8は、走査部55により走査される360度の射出光Loの照射方向のうち、ライダ1が対象物を検出する対象とする方向以外の方向である検出対象外方向(矢印A1参照)に設けられている。
図9(A)の例では、暗基準反射体7は、角度「θa」分の射出光Loが照射されるライダ1の後方の筺体25の壁面に存在し、明基準反射体8は、角度「θb」分の射出光Loが照射されるライダ1の後方の筺体25の壁面に存在している。この場合、暗基準反射体7及び明基準反射体8は、例えば、射出光Lo及び戻り光Lrを透過させる筺体25の透明カバーの内側に設けられる。他の例では、暗基準反射体7は、上述の筺体25の透明カバーのうち射出光Loを吸収するように加工(例えば黒塗り)された部分であってもよく、明基準反射体8は、上述の筺体25の透明カバーのうち射出光Loを反射するように加工された部分であってもよい。
【0061】
以後では、走査部55による1回分の走査が行われる期間(即ち1つのフレーム期間)内において、暗基準反射体7に照射された射出光LoをAPD41が受光する期間を「暗基準期間Td」と呼び、明基準反射体8に照射された射出光LoをAPD41が受光する期間を「明基準期間Tr」と呼ぶ。暗基準期間Tdは、暗基準反射体7に射出光Loが照射される各走査角度に対応する複数のセグメント期間を含み、明基準期間Trは、明基準反射体8に射出光Loが照射される各走査角度に対応する複数のセグメント期間を含む。また、1つのフレーム期間において、ライダ1が対象物を検出する対象とする方向に射出光Loを照射する期間(即ち矢印A1以外の方向)を「ターゲット期間Tt」とも呼ぶ。暗基準反射体7及び明基準反射体8に射出光Loが照射される走査角度に関する情報(例えばセグメントインデックス等)は、DSP16が参照できるようにWレジスタ等に予め記憶される。
【0062】
図9(B)は、
図9(A)の例において、暗基準反射体7が配置される方向に射出光Loが射出された状態を示す。暗基準反射体7は、射出光Loが入射した場合、射出光Loの少なくとも一部を吸収する。なお、暗基準反射体7が射出光Loを完全に吸収する素材である場合には、戻り光Lrは発生しない。
【0063】
<雑音白色化マッチドフィルタ>
DSP16は、暗基準期間Tdでのレシーバ雑音の推定とターゲット期間Ttでの背景光に起因したショット雑音の推定を組み合わせることで動的に総合雑音スペクトラムを推定し、推定した総合雑音スペクトラムにより雑音を白色化した受信セグメントyに対してマッチドフィルタを適用する。これにより、DSP16は、SNRの最大化を好適に実現する。
【0064】
まず、推定すべき総合雑音スペクトラムについて
図10を参照して説明する。
【0065】
図10(A)は、APD41が受信する背景光量が比較的少ないときのレシーバ雑音スペクトラムと、背景光ショット雑音スペクトラムと、総合雑音スペクトラムとをそれぞれ示す。
図10(A)に示すように、総合雑音スペクトラムは、レシーバ雑音スペクトラムと背景光ショット雑音スペクトラムとの和に相当する。そして、本実施例では、DSP16は、背景光ショット雑音スペクトラムとレシーバ雑音スペクトラムとをそれぞれ推定することで、総合雑音スペクトラムを好適に推定する。
【0066】
図10(B)は、APD41が受信する背景光量が比較的大きいときのレシーバ雑音スペクトラムと、背景光ショット雑音スペクトラムと、総合雑音スペクトラムとをそれぞれ示す。
図10(B)の例では、
図10(A)の例と比較してAPD41が受信する背景光量が増加したことにより、背景光ショット雑音スペクトラムが全ての周波数領域において増加している。また、APD41が受信する背景光量は、セグメント毎に動的に変化するため、DSP16は、背景光ショット雑音スペクトラムをセグメント毎に推定する必要がある。
【0067】
図11は、DSP16のブロックダイアグラムを示す。DSP16は、フィルタ部70と、ピーク検出部71と、判定部72と、フォーマッタ73とを備える。
【0068】
フィルタ部70は、受信セグメントyに対して所定のフィルタリングを行い、フィルタードセグメント「z」を算出する。後述するように、フィルタ部70は、演算量削減のため、周波数領域でのフィルタリングを行う。フィルタ部70の構成については後述する。
【0069】
ピーク検出部71は、フィルタードセグメントz内で振幅が最大となる点、即ちピーク点を検出し、当該ピーク点の遅延「D」と振幅「A」を出力する。判定部72は、振幅Aが所定の閾値「tDet」より大きい点のみを選択的にフォーマッタ73に送る。フォーマッタ73は、遅延Dと振幅A、及び当該セグメントのフレームインデックスfrm、セグメントインデックスsegを、適切なフォーマットに変換し、ターゲット情報TIとしてシステムCPU5に出力する。
【0070】
図12は、フィルタ部70のブロックダイアグラムを示す。フィルタ部70は、周波数領域において雑音白色化のフィルタリングを行うように構成され、主に、DFT(Discrete Fourier Transform)処理部74と、雑音推定部75と、基準受信パルス推定部76と、DFT処理部77と、白色雑音化マッチドフィルタ78と、IDFT(Inverse Discrete Fourier Transform)処理部79とを備える。
【0071】
DFT処理部74は、受信セグメントyをDFTにより周波数領域に変換し、周波数スペクトラム「Y={Y
l}」を白色雑音化マッチドフィルタ78へ出力する。なお、「l」は周波数領域での標本点のインデックスを示す。雑音推定部75は、受信セグメントyに基づき、レシーバ雑音及び背景光ショット雑音をそれぞれ推定することで、総合雑音スペクトラム「S={S
l}」を算出し、算出した総合雑音スペクトラムSを白色雑音化マッチドフィルタ78へ供給する。レシーバ雑音は、本発明における「第1ノイズ信号」及び「第1ノイズ」の一例であり、背景光ショット雑音は、本発明における「第2ノイズ信号」の一例である。雑音推定部75の具体的構成については後述する。
【0072】
基準受信パルス推定部76は、受信セグメントyに畳み込むインパルス応答「h」を推定する。例えば、インパルス応答hは、雑音が白色である場合で、かつシステム総合インパルス応答がwGateに対して有意に短い場合に、高SNRを実現するように、次式を満たすように設定される。
【0073】
【数4】
上式(「関係式A」とも呼ぶ。)において、基準受信パルス「g」は走査原点(R=0m)に物体を置いた場合に観測される受信セグメント波形であり、トランスミッタ30とレシーバ40を含むシステム全体の総合インパルス応答を代表している。基準受信パルス推定部76の具体的構成については後述する。DFT処理部77は、インパルス応答hをDFT演算することで周波数応答「H={H
l=G
l*}」を求め、周波数応答Hを白色雑音化マッチドフィルタ78へ出力する。
【0074】
白色雑音化マッチドフィルタ78は、周波数スペクトラムYに対し、総合雑音スペクトラムSの逆特性を乗じ、さらに総合雑音スペクトラムSの逆特性を適用した周波数スペクトラムYに対して周波数応答Hを乗じることで、後述するフィルタードセグメント「z={z
k}」の周波数スペクトラム「Z={Z
l}」を算出する。即ち、白色雑音化マッチドフィルタ78は、「Z
l=Y
lH
lS
l−1」となるように周波数スペクトラムZを算出する。
【0075】
ここで、白色雑音化マッチドフィルタ78での周波数領域での演算の効果について補足説明する。一般に、雑音白色化フィルタを有限インパルス応答(FIR)で実装する場合、雑音スペクトラムの逆特性を畳み込み演算することになるため、FIRフィルタのタップ数が多くなることが想定される。そして、FIRフィルタのタップ数が多くなると、時間領域での畳み込み演算よりも周波数領域での乗算演算の方が大幅に演算量を削減することができる。以上を勘案し、本実施例では、白色雑音化マッチドフィルタ78は、周波数領域での受信セグメントyのフィルタリングを行い、演算量を好適に削減する。
【0076】
IDFT処理部79は、IDFT演算により周波数スペクトラムZから時間領域でのフィルタードセグメントzを算出する。そして、IDFT処理部79は、算出したフィルタードセグメントzをピーク検出部71へ供給する。
【0077】
図13(A)は、雑音推定部75が行う信号処理のブロックダイアグラムを示す。
図13(A)に示すように、雑音推定部75は、レシーバ雑音推定部80と、ショット雑音推定部81と、フィルタ82と、演算部83とを備える。
【0078】
レシーバ雑音推定部80は、受信セグメントyからレシーバ雑音スペクトラム「D={D
l}」を推定する。ショット雑音推定部81は、受信セグメントyから背景光に起因したショット雑音の大きさに相当する分散「bvar」を算出する。そして、フィルタ82は、レシーバ40の回路全系の周波数特性「F={F
l}」に対して分散bvarを乗じ、演算部83に供給する。周波数特性Fは、例えば、DSP16が参照できるようにWレジスタ等に予め記憶される。演算部83は、レシーバ雑音推定部80の出力と、フィルタ82の出力とを周波数ごとに加算することで、総合雑音スペクトラムSを算出する。
【0079】
図13(B)は、レシーバ雑音推定部80が行う信号処理のブロックダイアグラムを示す。レシーバ雑音推定部80は、スイッチ84と、窓かけブロック(TWND)85と、DFTブロック86と、分散算出ブロック87とを備える。
【0080】
スイッチ84は、暗基準期間Td内のみオンとなるように制御されたスイッチであり、暗基準期間Tdに生成された受信セグメントyを窓かけブロック85に供給する。窓かけブロック85は、時間領域での窓かけを行う。例えば、窓かけブロック85は、暗基準期間Tdに生成された受信セグメントyに対し、フルコサインロールオフフィルタを適用する。DFTブロック86は、窓かけブロック85の出力に対してDFT演算を行い、受信セグメントyの周波数スペクトラムYを算出する。分散算出ブロック87は、以下の式に基づき、周波数ビン毎(即ち各インデックスl毎)の周波数スペクトラムYの分散に相当するレシーバ雑音スペクトラムDを算出する。
【0081】
【数5】
なお、分散算出ブロック87は、1つのフレーム期間内に算出したレシーバ雑音スペクトラムDを、IIRフィルタ等によりフレーム方向に(即ち異なるフレームインデックス間で)平均化してもよい。また、レシーバ雑音スペクトラムDの算出処理は、ライダ1の開発工程又は製造工程において実施されてもよい。なお、開発工程において実施される場合には、複数のライダ1を対象とした測定値の代表値が用いられ、製造工程において実施される場合には、ライダ1の個体の夫々で測定した値が用いられる。また、ライダ1の開発工程又は製造工程において予め算出・測定されたレシーバ雑音スペクトラム等のレシーバ雑音に関する情報は、所定の記憶部(ROM等)に記憶させるようにしてもよい。このような構成にしておけば、記憶部に記憶されたレシーバ雑音に関する情報を適宜参照することで、前述のレシーバ雑音推定部80におけるレシーバ雑音推定処理は不要となる。この場合、上述のレシーバ雑音スペクトラム等のレシーバ雑音に関する情報は、本発明における「第1ノイズに関する情報」の一例である。
【0082】
図14は、ショット雑音推定部81が行う信号処理のブロックダイアグラムを示す。
図14に示すように、ショット雑音推定部81は、スイッチ88A〜88Dと、第1分散算出部91と、第2分散算出部92と、演算部93とを備える。
【0083】
スイッチ88Aは、暗基準期間Td内のみオンとなるように制御されたスイッチであり、スイッチ88Bは、プリトリガー区間Tp内のみオンとなるように制御されたスイッチである。従って、第1分散算出部91には、暗基準期間Td内のプリトリガー区間Tpに生成された受信セグメントyが供給される。そして、第1分散算出部91は、以下の式に基づき、背景光を実質的に受信しない暗基準期間Tdの少なくとも1セグメントを対象として分散「dvar」を算出する。
【0084】
【数6】
なお、第1分散算出部91は、暗基準期間Tdに含まれる複数セグメントを対象として分散dvarを算出してもよく、複数フレームを対象として分散差dvarを算出してもよい。また、分散差dvarの算出処理は、ライダ1の開発工程又は製造工程において実施されてもよい。
【0085】
スイッチ88Cは、ターゲット期間Tt内のみオンとなるように制御されたスイッチであり、スイッチ88Dは、プリトリガー区間Tp内のみオンとなるように制御されたスイッチである。従って、第2分散算出部92には、ターゲット期間Tt内のプリトリガー区間Tpに生成された受信セグメントyが供給される。そして、第2分散算出部92は、以下の式に基づき、供給された受信セグメントyから、分散「tvar」をセグメントごとに算出する。
【0086】
【数7】
演算部93は、第2分散算出部92が算出したセグメントごとの分散tvarに対し、分散dvarを減じることで、セグメントごとに分散差bvarを算出する。ここで、第1分散算出部91が算出する分散dvarは、背景光に起因したショット雑音の増加が生じていない受信セグメントyに基づく分散であり、第2分散算出部92が算出する分散tvarは、背景光に起因したショット雑音の増加が生じた受信セグメントyに基づく分散である。よって、演算部93は、背景光に起因したショット雑音の増加分に相当する分散差bvarを、APD41が受信する背景光量が異なるセグメントごとに好適に算出することができる。
【0087】
なお、ショット雑音推定部81は、プリトリガー区間Tpにおける受信セグメントyに基づき分散差bvarを算出するのに代えて、各セグメントにおいて戻り光Lrが発生しない任意の区間における受信セグメントyに基づき分散差bvarを算出してもよい。
【0088】
図15は、基準受信パルス推定部76が行う信号処理のブロックダイアグラムを示す。
図15に示すように、基準受信パルス推定部76は、スイッチ97と、平均化処理部98と、時間反転部99とを備える。
【0089】
スイッチ97は、明基準期間Tr内のみオンとなるように制御されたスイッチであり、明基準期間Tr内に生成された受信セグメントyを平均化処理部98に供給する。なお、スイッチ97は、明基準期間Trの全ての期間でオンとなる必要はなく、明基準期間Trの一部の期間においてオンとなるように設定されてもよい。
【0090】
平均化処理部98は、スイッチ97がオンとなる期間に供給された受信セグメントyを平均化し、平均化された受信セグメントyを、推定された基準受信パルスgとして時間反転部99へ供給する。この場合、例えば、平均化処理部98は、1つのフレーム期間内にスイッチ97から順次供給される受信セグメントyを積算し、積算した受信セグメントyを積算した受信セグメントyの数により除算することで平均化した受信セグメントyを、推定された基準受信パルスgとして算出する。他の例では、平均化処理部98は、1つのフレーム期間内に算出した受信セグメントyの平均をさらにIIRフィルタ等によりフレーム方向に(即ち異なるフレームインデックス間で)平均化したものを、推定された基準受信パルスgとして算出する。
【0091】
時間反転部79は、上述した関係式Aに基づき、基準受信パルスgからインパルス応答hを生成する。この場合、基準受信パルスgとインパルス応答hとは、セグメント期間内で時間反転させた関係となる。そして、時間反転部79は、生成したインパルス応答hをDFT処理部77(
図12参照)へ供給する。なお、インパルス応答hの測定処理は、ライダ1の開発工程又は製造工程において実施されてもよい。なお、インパルス応答h又は周波数応答Hは、例えばフィルタ出力でのSNRが大きくなるように予めシステムCPU5によってWレジスタに設定されてもよい。この場合、フィルタ部70は、基準受信パルス推定部76(及びDFT処理部77)を備えなくともよい。
【0092】
以上説明したように、ライダ1は、射出光Loを射出する走査部55と、所定の射出方向に配置され、射出光Loを吸収する暗基準反射体7と、射出光Loが対象物によって反射された戻り光Lrを受信するAPD41と、DSP16とを備える。DSP16は、暗基準反射体7に射出光Loが照射される暗基準期間TdでのAPD41の出力信号に基づいて、レシーバ雑音を少なくとも推定する。そして、DSP16は、推定したレシーバ雑音に基づいて、APD41の出力信号のフィルタリングを行なう。これにより、ライダ1は、APD41の出力信号のフィルタリングを好適に行い、高SNRを実現することができる。