IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ズークス インコーポレイテッドの特許一覧

特許7321178パルスタイプに応じたLIDARパルスディテクタの選択
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-07-27
(45)【発行日】2023-08-04
(54)【発明の名称】パルスタイプに応じたLIDARパルスディテクタの選択
(51)【国際特許分類】
   G01S 7/4865 20200101AFI20230728BHJP
   G01S 17/10 20200101ALI20230728BHJP
   G01C 3/06 20060101ALI20230728BHJP
【FI】
G01S7/4865
G01S17/10
G01C3/06 120Q
【請求項の数】 15
(21)【出願番号】P 2020550790
(86)(22)【出願日】2019-03-20
(65)【公表番号】
(43)【公表日】2021-08-02
(86)【国際出願番号】 US2019023230
(87)【国際公開番号】W WO2019183261
(87)【国際公開日】2019-09-26
【審査請求日】2022-03-08
(31)【優先権主張番号】15/925,764
(32)【優先日】2018-03-20
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】518156417
【氏名又は名称】ズークス インコーポレイテッド
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】スバシンハ シャミンダ スバシンハ
(72)【発明者】
【氏名】ライリー アンドリューズ
(72)【発明者】
【氏名】トゥルハン カラデニズ
(72)【発明者】
【氏名】ラビ サンカール マハンカリ
【審査官】藤田 都志行
(56)【参考文献】
【文献】特開2007-147332(JP,A)
【文献】特開平11-125676(JP,A)
【文献】特開2008-267920(JP,A)
【文献】特開2004-157044(JP,A)
【文献】特開2011-215005(JP,A)
【文献】特開平05-052956(JP,A)
【文献】米国特許出願公開第2016/0349368(US,A1)
【文献】米国特許出願公開第2012/0069322(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G01S 7/48- 7/51
G01S 17/00-17/95
G01C 3/00- 3/32
(57)【特許請求の範囲】
【請求項1】
デバイスであって、
光のパルスを放出する光エミッタと、
前記デバイスの環境中のオブジェクトから反射された反射光パルスの受信を示す信号を生成する光センサと、
前記反射光パルスが反射されたオブジェクトまでの距離を決定するための複数のディテクタであって、前記複数のディテクタは、
少なくとも部分的に、受信された信号におけるピークに基づいて、前記オブジェクトまでの第1の距離を決定する第1のディテクタ、および
少なくとも部分的に、前記受信された信号の立ち上がりエッジに基づいて、前記オブジェクトまでの第2の距離を決定する第2のディテクタであって、前記第2のディテクタは、しきい値の大きさに対応する前記受信された信号の前記立ち上がりエッジ上の第1の点から、前記しきい値の大きさに対応する前記受信された信号の立ち下がりエッジ上の第2の点までの幅を決定する、第2のディテクタ
を含む、複数のディテクタと、
前記信号を受信し、
前記受信された信号を分類し、
前記受信された信号を前記分類することに少なくとも部分的に基づいて、前記オブジェクトまでの前記距離を計算するのに使用する前記複数のディテクタの中からディテクタを選択する
ようにプログラムされたクラシファイヤと
を備えたことを特徴とするデバイス。
【請求項2】
前記クラシファイヤは、不飽和パルスまたは飽和パルスとして、前記受信された信号を分類するようにさらにプログラムされたことを特徴とする請求項1のデバイス。
【請求項3】
前記第1のディテクタおよび前記第2のディテクタの出力を入力として受信するマルチプレクサをさらに備え、
前記第1のディテクタおよび前記第2のディテクタは、実質的に同時に前記受信された信号を受信し、
前記クラシファイヤは、少なくとも部分的に飽和パルスまたは不飽和パルスとして前記受信された信号を分類することに基づいて、前記距離として前記第1の距離または前記第2の距離を出力するようにマルチプレクサを制御する
ことを特徴とする請求項1に記載のデバイス。
【請求項4】
前記第1のディテクタが、少なくとも部分的に基準信号と前記受信された信号の相互相関を決定することに基づいて、前記第1の距離を決定するようにプログラムされる
ことを特徴とする請求項1に記載のデバイス。
【請求項5】
前記第1のディテクタは、前記受信された信号の最大の大きさをさらに出力し、
前記第2のディテクタは、前記受信された信号の立ち上がりエッジから立ち下がりエッジまでの前記受信された信号の幅をさらに出力する
ことを特徴とする請求項1に記載のデバイス。
【請求項6】
前記ディテクタを選択することは、
少なくとも部分的に不飽和パルスとして前記受信された信号を分類することに基づいて、前記第1のディテクタを選択することか、
少なくとも部分的に飽和パルスとして前記受信された信号を分類することに基づいて、前記第2のディテクタを選択することか
を含むことを特徴とする請求項5に記載のデバイス。
【請求項7】
前記複数のディテクタは、前記受信された信号が分割されたビーム信号を含むと決定し、少なくとも部分的にデコンボリューションまたは周波数領域解析のうちの少なくとも1つに基づいて、到着時間遅延(TDOAの決定のために使用する少なくとも2つのピークのうちの1つを特定する第3のディテクタをさらに含むことを特徴とする請求項に記載のデバイス。
【請求項8】
前記光センサによって生成された前記信号を前記受信された信号に変換するアナログ・デジタル変換器をさらに含み、飽和パルスとして前記受信された信号を分類することが、前記受信された信号の大きさが、予め決められた個数より多いサンプルに対してしきい値の大きさを超えると決定することを含むことを特徴とする請求項1に記載のデバイス。
【請求項9】
前記クラシファイヤが、アクティブパルスとして、前記光センサによって生成された前記信号におけるノイズから前記受信された信号を識別するようにさらにプログラムされ、前記アクティブパルスを識別することが、少なくとも部分的に前記受信された信号の現在の大きさと前記受信された信号の以前の大きさとに基づいて、動的なノイズフロアを決定することを含むことを特徴とする請求項5に記載のデバイス。
【請求項10】
前記第3のディテクタは、アナログ・デジタル変換器に接続されることを特徴とする請求項7に記載のデバイス。
【請求項11】
光エミッタによって光のパルスを放出することと、
光センサによって、環境中のオブジェクトから反射された反射光パルスを示す信号を受信することと、
不飽和パルスまたは飽和パルスとして前記受信された信号を分類することと、
複数の光ディテクタのうちの第1の光ディテクタによって、少なくとも部分的に前記受信された信号におけるピークに基づいて、到着時間遅延(TDOA)の計算を使用して前記光センサから前記オブジェクトまでの第1の距離を決定することと、
前記複数の光ディテクタのうちの第2の光ディテクタによって、少なくとも部分的に、前記受信された信号の立ち上がりエッジに基づいて、前記オブジェクトまでの第2の距離を決定することであって、前記第2の光ディテクタは、しきい値の大きさに対応する前記受信された信号の前記立ち上がりエッジ上の第1の点から、前記しきい値の大きさに対応する前記受信された信号の立ち下がりエッジ上の第2の点までの幅を決定する、ことと、
少なくとも部分的に前記受信された信号に関して前記分類することに基づいて、前記複数の光ディテクタの中から選択された光ディテクタを選択することと
を備えることを特徴とするコンピュータに実装される方法。
【請求項12】
飽和パルスまたは不飽和の光パルスとして前記受信された信号を分類することは、少なくとも部分的に予め決められた数のサンプルに対するまたは予め決められた持続時間の時間に対する前記受信された信号の大きさに基づくことを特徴とする請求項11に記載のコンピュータに実装される方法。
【請求項13】
前記受信された信号を前記分類することは、不飽和パルスとして前記受信された信号を分類することを含み、前記方法は、
基準信号に前記受信された信号を相関させることに少なくとも部分的に基づいて、第の光ディテクタによって第3の距離を決定して、TDOAを決定することと、
前記信号の最大の大きさまたは幅に少なくとも部分的に基づいて、前記距離を修正することと
をさらに備えることを特徴とする請求項11に記載のコンピュータに実装される方法。
【請求項14】
前記受信された信号を前記分類することは、飽和パルスとして前記受信された信号を分類することに帰着し、前記受信された信号の前記立ち上がりエッジに対応する時間を決定することに少なくとも部分的に基づいて、前記第2の光ディテクタによって第3の距離を決定することをさらに含むことを特徴とする請求項11に記載のコンピュータに実装される方法。
【請求項15】
1つまたは複数のプロセッサと、
前記1つまたは複数のプロセッサによって実行可能な命令を格納する1つまたは複数のコンピュータ読み取り可能な媒体であって、前記命令は、請求項11ないし14のいずれか一項に記載の方法を行わせるように前記1つまたは複数のプロセッサをプログラムする、媒体と
を備えたことを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、LIDARパルスディテクタの選択に関し、より詳細には、パルスタイプに応じたLIDARパルスディテクタの選択に関する。
【背景技術】
【0002】
関連出願
本PCT国際出願は、参照により本明細書に組み込まれる、2018年3月20日に出願された米国特許出願第15/925,764号明細書の優先権の利益を主張する。
【0003】
光検出および測距または「LIDAR」は、光を放出し、光の反射の特性を測定することによって可視表面までの距離を測定するための技法を指す。LIDARシステムは光エミッタおよび光センサを有する。光エミッタは、光を環境に導くレーザを備え得る。放出光が表面に入射したとき、光の一部が反射され、光センサによって受信され、光センサは、光強度を対応する電気信号にコンバートする。
【0004】
LIDARシステムは、反射光信号を分析して、放出されたレーザ光がそこから反射された表面までの距離を判定する信号処理構成要素を有する。たとえば、システムは、光信号がレーザエミッタから表面に進み、光センサに戻るときのそれの伝搬時間を測定し得る。次いで、飛行時間(flight time)および知られている光速に基づいて距離が計算される。
【0005】
様々なファクタによって引き起こされる反射光信号のひずみは、反射光が光センサに戻る時間を従来のLIDARシステムに不正確に判定させることがある。たとえば、戻り信号時間の1ナノ秒変動は、ほぼ15センチメートルの推定距離の変化に対応することがある。反射光信号のひずみを引き起こすことが可能なファクタのいくつかは、高反射性表面、LIDARユニットに極めて近い表面などを含み得る。
【0006】
LIDARシステムによって毎秒数千の、または百万もの測定が行われ得るので、反射光信号の戻り信号時間のそのような小さい変動の存在を検出することは容易でない。多くの場合、この問題を発見することは、反射光信号の戻り時間の変動が単純に検出されないままになることによってより困難になる。LIDARシステムは、遅延された戻りを検出し、オブジェクトまでの距離を不正確に測る。
【0007】
その上、いくつかの高ノイズまたは低ノイズ条件では、戻り信号とノイズを区別することが困難であることがある。たとえば、日のよくさす条件は、戻り信号を不明瞭にすることがある強いノイズ電力バンドを生じる可能性がある。従来のLIDARシステムは、しきい値を設定し、そのしきい値を下回るどんな信号もフィルタ除去する。これはノイズを事実上フィルタ除去するが、しきい値未満に入るより弱い戻りをもフィルタ除去する。さらに、戻り信号の強さは、より遠くのオブジェクトではより低いので、高いしきい値を設定することは、LIDARシステムの範囲を事実上低減する。
【図面の簡単な説明】
【0008】
詳細な説明について、添付の図を参照しながら説明される。図では、参照番号の最左の数字は、その参照番号が最初に現れる図を識別する。異なる図における同じ参照番号は、同様のまたは同等の項目を示す。
図1】例示的なLIDARシステムのLIDARチャネルにおいて使用され得る構成要素のブロック図である。
図2A】不飽和戻り信号の例示的な信号図である。
図2B】飽和戻り信号の例示的な信号図である。
図3】オブジェクトまでの距離を判定するために、多数の光ディテクタから光ディテクタを選択するための例示的な処理の流れ図である。
図4A】クラシファイヤが距離測定としての出力のために多数のディテクタのうちの1つの出力を選択する、クラシファイヤおよびディテクタの追加または代替の例示的なアーキテクチャのブロック図である。
図4B】LIDARシステムの構成要素の非線形性に基づいて光ディテクタ出力を較正するための例示的なアーキテクチャを示す図である。
図5】戻り信号を基準信号と相関させるための例示的な処理に従って受信され、生成される例示的な波形を示す図である。
図6A】飽和戻り信号の立上りエッジを検出するための例示的な処理の例示的な信号図である。
図6B】飽和戻り信号の立上りエッジを検出するための例示的な処理の例示的な信号図である。
図6C】飽和戻り信号の立上りエッジを検出するための例示的な処理の例示的な信号図である。
図6D】飽和戻り信号の立上りエッジを検出するための例示的な処理の例示的な信号図である。
図6E】飽和戻り信号の立上りエッジを検出するための例示的な処理の例示的な信号図である。
図6F】飽和戻り信号の立上りエッジを検出するための例示的な処理の例示的な信号図である。
図7A】例示的な受信信号、およびアクティブパルスを判定するための静的しきい値を示す図である。
図7B】例示的な受信信号、およびアクティブパルスを判定するための静的しきい値を示す図である。
図7C】例示的な受信信号、およびアクティブパルスを判定するための静的しきい値を示す図である。
図7D】例示的な受信信号、ならびにアクティブパルスを判定するためのおよび/または信号を飽和信号として分類するための動的ノイズフロアを示す図である。
【0009】
図8】本明細書で論じられるLIDARシステムを組み込み得る例示的な自律車両のブロック図である。
【発明を実施するための形態】
【0010】
LIDARシステムは、少なくとも1つの光エミッタおよび対応する光センサを典型的に有し、光エミッタと光センサのペアはチャネルと通常呼ばれる。光エミッタは、高度コヒーレント光をオブジェクトまたは表面の方向に導く注入レーザダイオード(ILD)などのレーザを含み得る。光センサは、光センサにおける光強度を対応する電気信号にコンバートするフォトマルチプライヤまたはアバランシェフォトダイオード(APD)などのフォトディテクタを含むことができる。レンズまたはミラーなどの光学素子が、光を合焦させ、導くために光送信および受信経路において使用されてよい。
【0011】
いくつかのLIDARデバイスは、シーン内で多数の表面ポイントの距離を測定することができる。各表面ポイントについて、LIDARシステムは、表面ポイントの距離と、デバイスに対するそれの角度方向の両方を判定することができる。この能力は、多数の表面ポイントの3次元座標を含むポイントクラウドを作成するために使用されることが可能である。
【0012】
しかしながら、ファクタの中でも、高反射性オブジェクト、LIDARデバイスに空間的に近いオブジェクト、光センサの温度、光エミッタおよび/または光センサの非線形性は、光センサが戻り信号を検出したとき、光センサによって生成される電気信号においてひずみを引き起こすことがある。この戻り信号はオブジェクトの表面までの距離を測定するために使用されるので、および戻り信号におけるわずかナノ秒水平シフトが約15センチメートルの距離測定の差に対応し得るので、これらの妨害は従来のLIDARデバイスの精度を大幅に低減し得る。いくつかの例では、戻り信号が受信される時間をナノ秒の1/3以下まで正確に把握することが可能であることを要求する、5センチメートル以下の精度を達成することが望ましいことがある。
【0013】
たとえば、光エミッタは、逆反射体、街路標識、またはミラーなどの高反射性オブジェクトから反射する光パルスを放出し得る。この光パルスが光センサにおいて受信されたとき、オブジェクトの反射率(または近接度)によって引き起こされるセンサにおいて受信された光の強度は、パルスの強度とともにスケーリングする電気信号を生成するための光センサの能力を超えることがある。言い換えれば、反射光パルスの強度は、光センサが発生することが可能であるよりも高い電気信号値に対応する。いくつかの例では、光センサによって生成された電気信号は、アナログデジタルコンバータ(ADC)によってデジタル信号にコンバートされることがある。さらに悪いことに、光センサによって生成された電気信号は、いくつかの場合には、ADCの最大ダイナミックレンジを超えることがあり、したがって、光センサ問題と同様に、ADCによって発生されるデジタル信号は、光センサによって発生された電気信号と対応すべき光センサの十分に高い大きさを反映しない。このタイプの信号は「飽和信号」と呼ばれることがあり、たとえば、戻り信号大きさが、光センサおよび/またはADCの最大能力によって上限を定められる。いくつかの例では、飽和信号の出現は、光放出電力を低減することおよび/またはADCの出力をスケーリングすることによって減少され得る。しかしながら、いくつかの例では、これは、飽和信号を受信するのを防ぐのにまだ十分ではない。
【0014】
飽和信号は、ピークが打ち切られたときからは、戻りパルスのピークに対応する時間が直接測定されることが不可能であるので、光パルスの放出と光パルスの受信との間の遅延を判定するためのいくつかの方法の精度を減少させる。たとえば、いくつかの方法は、戻り信号のピークを基準信号のピークと相互相関させることを含む。戻り信号が飽和したとき、信号のピークに対応する時間は、自明に把握されることが不可能であり、飽和信号を基準信号と相互相関させることにより、誤った遅延判定が生じ、それにより、今度は、遅延から判定される距離も誤ったものになる。
【0015】
本明細書で論じられる技法(たとえば、機械、プログラム、処理)は、たとえば、戻り信号のタイプを飽和または不飽和として分類し、そのタイプに少なくとも部分的に基づいて、推定距離として出力するために複数のディテクタのうちの1つのディテクタの出力を選定することによって、光パルスを放出することと光センサにおいて反射光パルスを受信することとの間の遅延(たとえば、到着時間遅延(TDOA))を判定する精度を向上させる。いくつかの例では、戻り信号のタイプを分類することは、戻り信号の高さ(すなわち、本明細書の「大きさ」という用語と等価的に使用される、大きさのインジケーション)、戻り信号の幅、および/または所定数のサンプル(たとえば、サンプルの連続数)について戻り信号の1つもしくは複数のサンプルがしきい値大きさを超えるかどうかを判定することを含み得る。このようにして、遅延から判定される距離の精度が改善されることが可能である。これらの距離が自律車両を制御するために使用されるとき、光パルスが光ディテクタ上に反射される時間を検出する精度を向上させることは、人命救助になり得る。これらの技法は、自律車両の安全性を改善するだけでなく、それらは、LIDARデータから生成されるロボット移動および/または3次元マップの精度を改善し得る。
【0016】
いくつかの例では、LIDARデバイスは多数のディテクタを含んでよく、これらの多数のディテクタは、いくつかの例では、実質的に同時に(すなわち、同時に受信されることの技術的許容差内で)受信信号を受信してよく、多数のディテクタのうちの1つまたは複数は、それから出力を生成し得る。クラシファイヤは、受信信号を特定のタイプ(たとえば、飽和または飽和していない)として分類してよく、そのタイプに少なくとも部分的に基づいて、距離測定としてLIDARデバイスによって出力されるべき1つまたは複数のディテクタの出力のうちの1つを選択してよい。別の例では、クラシファイヤは、タイプに少なくとも部分的に基づいて、ディテクタを選択してよく、受信信号は、次いで、ディテクタが出力を生成するためにディテクタに提供されてよい。
【0017】
いくつかの例では、多数のディテクタは、受信信号を基準信号と相関させることに少なくとも部分的に基づいてTDOAを判定する不飽和信号ディテクタを含んでよい。多数のディテクタは、追加または代替として、受信信号の立上りエッジを検出することに少なくとも部分的に基づいてTDOAを判定する飽和信号ディテクタを含んでよい。いくつかの例では、多数のディテクタは、様々な技法を使用してTDOAを判定し、アクティブ信号とノイズを区別し、または信号の他の特性を区別し得る、追加のディテクタを含んでよい。たとえば、多数のディテクタは、相互相関ディテクタ、前方エッジディテクタ、逆畳み込みディテクタ、周波数ドメイン分析ディテクタなどを含んでよい。いくつかの例では、アクティブ信号区別はクラシファイヤによって行われてよい。
【0018】
本明細書で論じられる技法はまた、アクティブ戻り信号(たとえば、戻り信号に対応する光センサによって生成された電気信号の一部)と、単なるノイズとを区別し得る。たとえば、本明細書で論じられる技法は、アクティブ戻り信号を識別するための動的ノイズフロアを判定することを含み得る。すなわち、ノイズフロアは、受信信号の特性に基づいて動的に調整され得る。たとえば、ノイズフロアは、受信信号の移動平均に少なくとも部分的に基づいて調整され得る。いくつかの例では、本技法は、アクティブパルスとして、動的ノイズフロアを超える大きさに関連付けられた受信信号のサンプルを識別することを含み得る。追加または代替の例では、アクティブパルスは、動的ノイズフロアを超えるしきい値数の連続サンプル(たとえば、動的ノイズフロアを超える行中の3つのサンプル)から識別され得る。いくつかの例では、動的ノイズフロアは、受信信号の追加の特性(たとえば、受信信号の高さおよび/または幅)に少なくとも部分的に基づいてスケーリングおよび/またはシフトされ得る。より大きいノイズの期間中に(たとえば、明るい太陽光において)動的ノイズフロアを上げることにより、ノイズがアクティブ戻り信号として検出される偽陽性識別、およびアクティブ戻り信号がそのようなものとして識別されない偽陰性が低減され、それにより、LIDAR距離測定の精度が改善され、距離測定に依拠する機械(たとえば、自律車両、ロボットアペンデージ)の安全性および精度が改善される。低いノイズの期間中に(たとえば、夜に)ノイズフロアを動的に低下させることによって、LIDARシステムは、より低強度のアクティブ戻り信号を区別し、それにより、LIDARシステムの範囲を改善することが可能である。
【0019】
例示的なLIDARシステム
図1は、距離測定を実施するために使用され得る例示的なLIDARシステム100の構成要素のブロック図を示す。
【0020】
いくつかの例では、例示的なLIDARシステム100は、光エミッタ102および対応する光センサ104を含むチャネルを含み得る。チャネルは、以下で説明されるように、レーザ光パルスを放出し、パルスの反射の特性を測定するために使用される。図1は単一の測定チャネル(たとえば、光エミッタ/光センサペア)を図示しているが、例示的なLIDARシステム100は多数のチャネルを含み得ることが企図される。当業者は、光エミッタおよび光センサが、図示された単一のレーザエミッタおよび光センサを超えて数が増大されてよいことを理解されよう。「チャネル」という用語は、エミッタ/センサペアに関連付けられたサポート回路を包含することもあり、サポート回路の少なくともいくつかは、多数のチャネルの間で共有され得る(たとえば、ADC、ディテクタ、クラシファイヤ)。
【0021】
いくつかの例では、光エミッタ102は、600ナノメートルと1000ナノメートルとの間の波長の光を発生するレーザエミッタを含み得る。追加または代替の例では、放出光の波長は、10マイクロメートルと250nmとの間にわたり得る。光エミッタ102は、電力および/または波長が変動する光パルス(たとえば、レーザパルス)を放出し得る。たとえば、例示的な光LIDARシステム100のレーザエミッタのいくつかは、905ナノメートルにおける光を放出してよく、レーザエミッタの他のものは、1064ナノメートルにおける光を放出してよい。これらの異なる波長のレーザエミッタは、その場合、放出光が905ナノメートルと1064ナノメートルとの間で交番するように、交互に使用されることが可能である。光センサは、それぞれの波長に対して敏感であり、他の波長をフィルタリングするように同様に構成されることが可能である。
【0022】
エミッタをアクティブにすることまたはオンにすることは、エミッタを「点火すること(firing)」と呼ばれることがある。いくつかの例では、光エミッタ102は、短い持続時間を有する光パルスを生じるように点火され得る。その上、電力を温存するために、LIDARシステム100は、光パルスがそれに放出されるべき環境の検出された条件(たとえば、弱い光/低ノイズ条件)に少なくとも部分的に基づいて放出光パルスの電力を減少させ得る。
【0023】
単一の距離測定では、レーザエミッタ102は、レーザ光パルスのバースト(すなわち1つまたは複数)を、レンズ106を通って外側経路108に沿って放出するように制御され得る。バーストは、LIDARを囲んでいる環境の表面110によって、レンズ112を通って、および戻り経路114に沿って光センサ104に反射される。いくつかの例では、LIDARは、1つまたは複数のレンズを通って外側にレーザ光を投射するためにシャーシ内に配置された多数のレーザエミッタを含み得る。いくつかの例では、LIDARはまた、いずれかの特定のエミッタからの光が、1つまたは複数のレンズを通って対応する光センサに反射されるように、多数の光センサを含み得る。
【0024】
いくつかの例では、レンズ106とレンズ112は、明快のために冗長的に図示されている、同じレンズである。他の例では、レンズ112は、LIDARのハウジング内の異なる物理的ポジションにおけるレーザエミッタ102からのビームが、異なる角度で外側に導かれるように設計された第2のレンズである。特に、第1のレンズ106は、特定のチャネルのレーザエミッタ102からの光を、対応する一意の方向に導くように設計される。第2のレンズ112は、チャネルの対応する光センサ202が、同じ方向から反射光を受信するように設計される。
【0025】
いくつかの例では、レーザエミッタ102は、多数のチャネルのための制御および分析論理を実装するコントローラ116によって制御され得る。コントローラ116は、部分的にフィールドプログラマブルゲートアレイ(「FPGA」)、マイクロプロセッサ、デジタル信号プロセッサ(「DSP」)、またはこれらのおよび/もしくは他の制御および処理要素のうちの1つもしくは複数の組合せによって実装されてよく、関連するプログラムおよびデータを記憶するための関連するメモリを有してよい。単一のチャネルを使用して単一の距離測定を開始するために、コントローラ116はトリガ信号を生成し得る。トリガ信号はパルスジェネレータによって受信されてよく、パルスジェネレータは、トリガ信号に応答してバースト信号118を生成し得る。いくつかの例では、バースト信号118は、レーザエミッタ102がアクティブにされるかまたはオンにされるべき時間を示す連続パルスのペアを含み得る。いくつかの例では、レーザエミッタ102がアクティブにされる(点火される)べき時間を示すためにパルスの立上りエッジが使用されてよいが、レーザエミッタ102をアクティブにするためにバースト信号118の任意の他の特徴が企図される(たとえば、立下りエッジ)。いくつかの例では、パルスジェネレータはコントローラ116の一部であってよい。
【0026】
バースト信号118は、光エミッタ102によって受信され、バースト信号118が連続パルスのペア120を含む実装では、光エミッタ102にレーザ光の連続パルスのペアを放出させ得る。光エミッタ102は、バースト信号118のパルスに時間的に対応する光120を放出し得る。図1では説明の目的で2つのパルスとして図示されているが、任意の数のパルス(たとえば1つまたは複数)が企図される。いくつかの例では、トリガ信号、バースト信号118、および/または光エミッタ102によって生成される信号は、TDOAを判定するために使用されてよい。たとえば、光の放出に対応する時間が、これらの信号のうちの1つまたは複数に基づいて記録されてよい(たとえば、コントローラ116によって生成されるクロック信号のサンプル番号)。この時間は、TDOAを判定するために後続の構成要素(たとえば、ディテクタおよび/またはクラシファイヤ)によって使用されてよい。
【0027】
放出レーザ光がオブジェクトの表面110から反射されると仮定すると、光センサ104は、反射光を受信することがあり、戻り信号122(または光センサ出力信号)を発生する。戻り信号122は、概して、光エミッタ102によって放出された光パルス120と同じ形状であり得るが、それは、ノイズ、干渉、様々なエミッタ/センサペア間のクロストーク、他のLIDARデバイスからの干渉信号などの結果としてある程度異なることがある。戻り信号122はまた、放出されたレーザバーストの往復伝搬時間に対応する量だけ光パルス120に対して遅延されることになる。
【0028】
いくつかの例では、光センサ104は、光センサ104において検出された光に基づいて信号を生成するためのアバランシェフォトダイオード(「APD」)および/または任意の他の好適な構成要素を含み得る。いくつかの例では、光センサ104は、たとえば、トランスインピーダンス増幅器(「TIA」)などの電流電圧コンバータ増幅器を含み得る、増幅器をさらに含み得る。とにかく、増幅器は、信号を読み取るADCなどのダウンストリーム構成要素が正確にそうすることができるように戻り信号を変換するように構成されたどんな増幅器であってもよい。
【0029】
いくつかの例では、ADC124は、受信信号126を発生すべきとき、戻り信号122を受信し、デジタル化し得る。受信信号126は、経時的に戻り信号122の大きさを示すデジタル値のストリームを含み得る。いくつかの例では、ADC124は、TDOAを判定することを簡略化するために、コントローラ116によって生成されたクロック信号に一致する周波数において戻り信号126をサンプリングするようにプログラムされ得る。本明細書で使用されるとき、受信信号126の「サンプル」は、離散的なサンプル番号における戻り信号122の大きさの表現を含む。これらの離散的なサンプル番号は、(たとえば、遅延時間を判定するためにサンプル周波数を参照することによって)TDOAを判定するために使用され得るアナログ時間に関連付けられてよい。
【0030】
離散サンプルの大きさの表現は、ADC124のスケールに少なくとも部分的に基づき得る。たとえば、ADC126は、16ビット出力を有することがあり、したがって、戻り信号122の電流または電圧を16ビット値として表し得る。ADC124の出力の最上値は、ADC124の最大ダイナミックレンジと呼ばれることがある。いくつかの例では、ADC124のスケールは、放出光120の電力および/または検出された環境条件(たとえば、信号対ノイズ(SNR)比、ノイズフロア)に少なくとも部分的に基づいて設定され得る。しかしながら、高反射性表面および/または光エミッタ/光センサに極めて近い表面は、予期されたものよりも多くの光を光センサ104上に反射することがあり、したがって、光センサ104は、ADC124の最大ダイナミックレンジを超える戻り信号122を出力する。言い換えると、この状況では、ADC124は可能な最大の値を出力することになる(たとえば、16ビットの符号なし整数には「65535」を出力する)が、この値は、戻り信号122を正確に反映するのに「十分に高くない」ことがあり、および/または受信信号は、ノイズフロアと受信信号との間の範囲が十分に高くないのでADCによって分解されることが不可能である。追加または代替の例では、オブジェクトによって光センサ104上に反射される光は、同様に、光センサ104において受信された光の強度を正確に反映する電流または電圧を発生するための光センサ104の能力を超えることがある。
【0031】
これらの条件は、本明細書では光センサ104およびADC124の「飽和」と呼ばれる。光センサ104またはADC124の一方または両方が上記で説明された方式で飽和されるかどうかにかかわらず、光センサ104および/またはADC124の飽和によって発生される受信信号126は飽和信号と呼ばれ得る。
【0032】
いくつかの例では、ディテクタ128(1)~(N)は、受信信号126を受信し、それから距離d1…dn(130(1)~(N))を判定する。たとえば、ディテクタ128(1)は、受信信号126を受信することがあり、ディテクタのプログラミングおよび/または回路レイアウトに基づいて受信信号126に少なくとも部分的に基づいて距離130(1)を判定し得る。いくつかの例では、ディテクタ128(1)~(N)は、追加または代替として、コントローラ116からのクロック信号、光パルス120が光エミッタ102によって放出された時間のインジケーション、および/またはディテクタが距離をそれから計算し得るTDOAを判定するのに十分な任意の他のインジケーション(たとえば、光センサ温度、光放出電力)を受信し得る。
【0033】
たとえば、ディテクタ128(1)~(N)は、不飽和信号のTDOAを判定するためのディテクタ、飽和信号のTDOAを判定するためのディテクタ、光センサ温度および/もしくはトランスミッタに基づいてTDOAを判定するためのディテクタ、ならびに/またはそれらの組合せを含み得る。いくつかの例では、異なるディテクタ128(1)~(N)によって判定される距離130(1)~(N)は、ディテクタの回路のプログラミングおよび/または配置の差異に基づいて変動し得る。たとえば、不飽和信号ディテクタは、受信信号126を基準信号と相関させるプログラミング/回路に基づいてTDOAを判定し得るが、飽和信号検出は、受信信号126の立上りエッジを検出するプログラミング/回路に基づいてTDOAを判定し得る。ディテクタ128(1)~(N)は、TDOAおよび光速に少なくとも部分的に基づいて距離130(1)~(N)を判定し得る。いくつかの例では、これらの距離(またはTDOA)は、図4Bに関してさらにより詳細に論じられる較正技法によって修正され得る。
【0034】
図1は、例示的なシステム100の構成の1つの潜在的な例を示しており、図4Aは、例示的なシステム100の追加または代替の構成を示している。たとえば、図1では、クラシファイヤ132は、ディテクタ128(1)~(N)から距離130(1)~(N)ならびに/または他の判定(たとえば、受信信号126の幅および/もしくは高さのインジケーション)を受信することがあり、距離130(1)~(N)、ディテクタ128(1)~(N)によって判定された他のデータ(たとえば、幅、高さ)、コントローラ116から受信された信号、および/または受信信号126自体に少なくとも部分的に基づいて、出力のための選択された距離134として距離130(1)~(N)のうちの1つを選択し得る。他の例では、図4Aなどでは、ディテクタ128(1)~(N)とクラシファイヤ132は、受信信号126を同時に受信することがあり、クラシファイヤ132は、受信信号126のタイプを判定してよく、このタイプに少なくとも部分的に基づいて、クラシファイヤ132は、出力のためにディテクタ128(1)~(N)のうちの1つによって判定された距離のうちの1つを選択し得る。いくつかの例では、クラシファイヤ132は、受信信号126を受信し、受信信号126をタイプとして分類し、このタイプに少なくとも部分的に基づいて、ディテクタ128(1)~(N)のうちの1つを選択して、それに受信信号204を送信し得る。
【0035】
いくつかの例では、ディテクタ128(1)~(N)および/またはクラシファイヤ132は、少なくとも部分的に、FPGA、マイクロプロセッサ、DSPボードなどによって実装され得る。いくつかの例では、選択された距離134は、例示的なLIDARシステム100を囲んでいる環境のポイントクラウド中に含められるためにまたは表現のレンダリングのために知覚エンジンに出力され得る。いくつかの例では、環境のポイントクラウドおよび/または他の表現は、自律車両、ロボットアペンデージ、ビデオゲームシステム出力などを動作させるための制御信号を判定するために使用され得る。
【0036】
図1は、概略的な性質について説明する目的で簡略化された方式で論理的構成要素および信号を示していることに留意されたい。実際の実装では、レーザエミッタ102を点火するために、ならびにレーザエミッタ102の出力と、光センサ104によって感知される反射光との間のTDOAを測定するために、様々なタイプの信号が生成され、使用されてよい。
【0037】
例示的な受信信号
図2Aは、不飽和戻り信号200の例示的な信号図を示し、図2Bは、飽和戻り信号202の例示的な信号図を示す。不飽和戻り信号200は、TDOAに対応するサンプル番号を識別するために基準信号との相互相関(またはそれ以外)のために使用され得る、識別可能な最大大きさ204(または、等価的に、高さ)を有するが、飽和戻り信号202は、見分け可能な最大値を有しないそれの「フラットトップ」が顕著であることに留意されたい。この「フラットトップ」は、光センサに入射する光の強度が増加し続けるにつれて大きさが増加し続ける出力を発生するためのADCおよび/または光センサの能力の飽和によって引き起こされる。上記で部分的に論じられたように、光センサに入射する光の強度は、送信電力(すなわち、光エミッタから放出されたパルスの電力)、放出パルスを反射する表面の光センサへの近接度、表面の反射率などの関数である。飽和戻り信号202の最大大きさが、立上りエッジ206と立下りエッジ208との間の中間であると単に推定することは、その中間ポイントに対応するサンプル番号が常に実際の最大値に対応するとは限らないので、不十分である。図2Bにおいて観測されることが可能なように、時々、飽和信号の立下りエッジ208は、高反射性のまたは極めて近いオブジェクトによって導入され得る非ガウス性質を示す、立上りエッジ206の立上りテールよりも長いテールを含むことがある。
【0038】
図2Bはまた、しきい値大きさ210、第1の幅212、および第2の幅214を示している。第1の幅212は、受信信号208の最大大きさの分散内で関連するサンプルに関連する幅(たとえば、サンプルの数、時間)である。たとえば、図2Aおよび図2Bの信号図は「平滑な」信号を図示しているが、実際には、信号は、ノイズのために「ギザギザである」可能性が高く、外れ値を含むことがある。その理由により、第1の幅212は、「フラットトップ」に関連する平均最大高さおよび/または最左サンプルの最大高さの偏差内にある大きさに関連するサンプルについて計算されてよい。第2の幅214は、立上りエッジ206がしきい値大きさ210を満たすポイントと、立下りエッジ208がしきい値大きさ210を満たすポイントとの間で計算される幅である。これらの幅は以下でより詳細に論じられる。いくつかの例では、不飽和信号の高さは、不飽和信号ディテクタ出力を較正するために使用されてよく、飽和信号の幅は、飽和信号ディテクタを較正するためにおよび/または飽和信号を飽和しているものとして分類するために使用されてよい。
【0039】
例示的な処理
図3は、多数の光ディテクタを含むLIDARシステムを使用してオブジェクトまでの距離を判定するためのディテクタを選択するための例示的な処理の流れ図を示す。動作302において、例示的な処理300は、本明細書で論じられる技法のいずれかに従って、光パルスを放出することを含み得る。いくつかの例では、これは、レーザエミッタが位置する環境に1つまたは複数のレーザパルスを放出するレーザエミッタを点火することを含み得る。
【0040】
動作304において、例示的な処理300は、本明細書で論じられる技法のいずれかに従って、反射光パルスの受信を示す信号を受信することを含み得る。いくつかの例では、これは、光パルスの少なくとも一部を光センサに反射する環境中のオブジェクトから光を受信することを含み得る。上記で論じられたように、光センサは、光センサに入射する光の強度を電流にコンバートするアバランシェフォトダイオードを含み得る。いくつかの例では、この電流は、上記で説明されたように、増幅、コンバート、ならびに/またはサンプリングされ、最終的にクラシファイヤおよび/もしくはディテクタによって受信信号として受信され得る。いくつかの例では、受信信号は、各離散サンプルにおいて、光センサによって生成される電流の大きさのインジケーションを含むデジタル信号を含む。本明細書で使用されるとき、このインジケーションの相対的大きさは、受信信号の「高さ」または「大きさ」と呼ばれるが、受信信号の値は、センサにおける光の強度の真の値である代わりの大きさの表現であることが、当業者によって理解されよう。
【0041】
動作306において、例示的な処理300は、本明細書で論じられる技法のいずれかに従って、受信信号がアクティブパルスを含むことを検出することを含み得る。いくつかの例では、これは、クラシファイヤが、以下でより詳細に論じられるように、動的ノイズフロアに少なくとも部分的に基づいて、受信されたものをアクティブパルスとして分類することを含み得る。たとえば、クラシファイヤは、動的ノイズフロアを連続的に判定し、動的ノイズフロアを満たさない大きさに関連するサンプルをノイズとして分類し、動作304に戻り、およびノイズフロアを超える大きさに関連するサンプルをアクティブパルスとして分類し、動作308に進み得る。いくつかの例では、アクティブパルスとして分類されるために、クラシファイヤは、しきい値数のサンプルが動的ノイズフロアを超えることをさらに要求してよく、その後、それらのサンプル、および動的ノイズフロアを超える後続のサンプルをアクティブパルスとして分類する。
【0042】
動作308において、例示的な処理300は、本明細書で論じられる技法のいずれかに従って、受信信号をタイプとして分類することを含み得る。たとえば、クラシファイヤは、不飽和、飽和、ノイズの多い(たとえば、SNRしきい値を超えるSNR値に関連する)、アクティブ信号(すなわち、放出光パルスに対応する戻りパルス)、ノイズ(たとえば、アクティブ信号でない)、それらの組合せなどを含むタイプであるものとして信号を分類し得る。たとえば、例示的な処理300は、ノイズフロアを判定し、ノイズフロアを超えるサンプルについておよび/またはノイズフロアを超えるしきい値数の連続サンプルについて、ノイズフロアを超えるアクティブ信号の高さに少なくとも部分的に基づいて、受信信号をアクティブ信号として分類することを含み得る。追加または代替の例では、例示的な処理300は、信号の幅、ADCの最大ダイナミックレンジに少なくとも部分的に基づいて受信信号が飽和信号であると判定すること、および/またはしきい値数のサンプルが、しきい値大きさを超える高さに関連すると判定することを含み得る。
【0043】
いくつかの例では、動作308において、クラシファイヤが、受信信号が戻りパルスではなくノイズに関連すると判定した場合、例示的な処理300は動作304に戻り得る。たとえば、クラシファイヤは、以下でより詳細に論じられるように、受信信号が動的ノイズフロアを超えないと判定し得る。
【0044】
動作310(A)/310(B)において、例示的な処理300は、本明細書で論じられる技法のいずれかに従って、タイプに少なくとも部分的に基づいて、多数のディテクタの中からディテクタを選択することを含み得る。たとえば、クラシファイヤは、ディテクタを選択して、選択されたディテクタに受信信号を送信するか、または、いくつかの配置では、選択されたディテクタが受信信号を処理するために(たとえば、ディテクタへのスイッチを制御することを介して)選択されたディテクタに受信信号が受け渡されることを可能にし得る。追加または代替の例では、多数のディテクタは、クラシファイヤが受信信号を受信するのと同時に受信信号を受信してよく、クラシファイヤは、動作310において、(たとえば、多数のディテクタの出力を入力として受信するマルチプレクサまたはスイッチを制御することを介して)多数のディテクタのうちの1つの出力を選択してよい。
【0045】
たとえば、動作310(A)において、例示的な処理300は、受信信号が不飽和であるというインジケーションを含むタイプとして受信信号を分類したことに少なくとも部分的に基づいて、相互相関によって、たとえば、受信信号からTDOAを判定するために第1のディテクタを選択することを含み得る。追加または代替の例では、TDOAを判定するために任意の方法が使用されてよい。たとえば、直接遅延計算が使用されて、基準信号のピークと受信信号のピークとの間の遅延を判定してよい。いくつかの例では、タイプは、第1のディテクタを選択することを判定する際に受信信号が「アクティブパルス」であるというインジケーションをさらに含んでよい。動作310(B)において、例示的な処理300は、受信信号が飽和しているというインジケーションを含むタイプとして受信信号を分類したことに少なくとも部分的に基づいて、立上りエッジ検出によって、受信信号からTDOAを判定するために第2のディテクタを選択することを含み得る。いくつかの例では、タイプは、第2のディテクタを選択することを判定する際に受信信号が「アクティブパルス」であるというインジケーションをさらに含んでよい。
【0046】
動作312において、例示的な処理300は、本明細書で論じられる技法のいずれかに従って、TDOAに少なくとも部分的に基づいて、光パルスを反射したオブジェクトまでの距離を計算することを含み得る。いくつかの例では、これは、光速およびTDOAに少なくとも部分的に基づいて距離を計算することを含み得る。いくつかの例では、選択されたディテクタがこの計算を行い得るか、またはダウンストリーム構成要素がこの計算を行い得る。
【0047】
例示的なディテクタ/クラシファイヤアーキテクチャ
図4Aは、受信信号を分類し、多数のディテクタ出力の中からディテクタ出力を選択して、推定距離として出力するための例示的なアーキテクチャ400のブロック図を示す。簡単のために、図4Aに示されている例示的なアーキテクチャ400は、2つのディテクタ、不飽和信号ディテクタ402および飽和信号ディテクタ404を含む。例示的なアーキテクチャ400では3つ以上のディテクタが採用されてよいことが企図されるが、簡単のために、この議論はこれらの2つのディテクタに限定される。他のディテクタは、ノイズの多い信号ディテクタのためのディテクタ、温度範囲固有ディテクタ、(たとえば、光センサおよび/またはLIDARシステムが、指定された温度の範囲内にあるとき、光センサの非線形性に少なくとも部分的に基づいて距離および/またはTDOAを判定するディテクタ)、電力範囲固有ディテクタ(たとえば、放出電力が、指定された電力の範囲内にあるとき、光センサおよび/または光エミッタの非線形性に少なくとも部分的に基づいて距離および/またはTDOAを判定するディテクタ)などを含み得る。ディテクタ402および404は、ディテクタ128(1)~(N)のうちの2つを表し得る。
【0048】
例示的なアーキテクチャ400は、クラシファイヤ132を表すことがあり、受信信号126を表すことがある受信信号408を受信し得る、クラシファイヤ406をさらに含み得る。いくつかの例では、クラシファイヤ406は、アクティブパルスとノイズを区別し、受信信号408をタイプとして分類し、ならびに/またはタイプに少なくとも部分的に基づいてディテクタおよび/もしくはディテクタ出力を選択するようにプログラムされ、および/またはそのようにするための回路の配置を含み得る。図4Aは、クラシファイヤ406が、選択された距離410としての出力のためにディテクタ402または404のうちの一方の出力を選択するための選択412を生成する例を示している。
【0049】
たとえば、不飽和信号ディテクタ402は、図5に関してさらに詳細に論じられるように、基準信号との受信信号408の相互相関を行って、TDOAを判定して、不飽和信号ディテクタ402はそれから第1の距離414を判定し得る。いくつかの例では、不飽和信号ディテクタ402は、追加または代替として、受信信号408の高さ416(たとえば、最大値)を判定し得る。飽和信号ディテクタ404は、受信信号408の立上りエッジを検出し、立上りエッジを、飽和信号ディテクタ404がTDOAをそれから判定する時間と相関させ、TDOAから第2の距離418を計算するようにプログラムされ、および/またはそのようにするための回路の配置を含み得る。いくつかの例では、飽和信号ディテクタ404はまた、受信信号408の幅420(たとえば、受信信号408の同じ平均最大値に関連付けられたサンプルの数、受信信号408の立上りエッジから立下りエッジまでのサンプルの数)を判定し得る。
【0050】
いくつかの例では、不飽和信号ディテクタ402、飽和信号ディテクタ404、およびクラシファイヤ406は、受信信号408を受信することがあり、クラシファイヤ406は、受信信号408をタイプとして分類してよく、このタイプに少なくとも部分的に基づいて、選択された距離410として受け渡されるべきディテクタ402または404の出力のうちの1つを選択し得る。いくつかの例では、選択されたディテクタに基づいて、不飽和信号ディテクタ402が選択された場合に高さ416が受け渡されてもよいか、または飽和信号ディテクタ404が選択された場合に幅418が受け渡されてよい。いくつかの例では、ディテクタの出力はマルチプレクサ422に入力されてよく、クラシファイヤ406は、選択412に対応する信号を出力するようにマルチプレクサを制御する選択412を生成してよい。採用される実際の実装にかかわらず、選択412は、最終推定距離としておよび/またはキャリブレータ428による修正のためにダウンストリーム構成要素に出力されるべき少なくとも1つのディテクタの出力を選択するためにクラシファイヤ406によって生成される制御信号を含み得る。
【0051】
たとえば、受信信号が飽和信号である場合、不飽和信号ディテクタ402、飽和信号ディテクタ404、およびクラシファイヤ406は、受信信号408を受信することがあり、クラシファイヤ406は、飽和信号ディテクタの出力(すなわち、第2の距離418および、いくつかの例では、幅420も)を識別する選択412を生成し得る。マルチプレクサ422は、選択412を受信し、不飽和信号ディテクタ402の出力がブロックされるようにするが、飽和信号ディテクタ404が幅420をも判定した例では、第2の距離418については選択された距離410として受け渡され、および幅420が受け渡されるようにする。
【0052】
いくつかの例では、ディテクタ402および404は、追加または代替として、たとえば、相互相関ディテクタ、前方エッジディテクタ、逆畳み込みディテクタ、周波数ドメイン分析ディテクタなど、他のディテクタを含み得る。たとえば、これらの他のディテクタは、ディテクタ402および/もしくは404の一部として使用されることがあり、ならびに/または受信信号がそれに受け渡されTDOAを別々に判定する完全に別個のディテクタであり得る。いくつかの例では、受信信号408は、それがディテクタおよび/もしくはクラシファイヤ406のいずれかによって受信される前にフィルタリングされてよく、ならびに/または受信信号408は、ディテクタおよび/もしくはクラシファイヤ406の動作における任意のポイントにおいてフィルタリングされてよい。たとえば、受信信号408は、信号を平滑化するためにローパスフィルタを通って受け渡されてよい。
【0053】
いくつかの例では、追加および/または代替のディテクタは、送信パルスが、(経時的に)反射光パルスを2つのパルスにスプリットするオブジェクト(たとえば、階段、窓からの最初の反射および窓の後ろにあるオブジェクトからの後の反射)に当たったときに起こり得る、スプリットされたビームを扱うためのディテクタを含み得る。たとえば、逆畳み込みディテクタは、ビームがスプリットされたとき、光トランスミッタから光センサまでのパルス遅延を復元するためにウィーナー逆畳み込みを判定してよく、ならびに/または周波数ドメインディテクタは、スプリットされたビーム反射を復元するために最適なフィルタリングおよび/もしくは周波数ドメイン分析を行ってよい。逆畳み込みディテクタは、いくつかの例では、送信パルスおよび受信信号に少なくとも部分的に基づいて受信信号を逆畳み込みし得る。この例では、逆畳み込みディテクタは、TDOA判定を行うために、隣り合っているおよび/または互いに最も近い2つのピークを選択し得る。いくつかの例では、1つまたは複数のピークの各ピークからの距離が復元され得る。追加または代替の例では、(たとえば、LIDARセンサ自体の反射から生じ得る)しきい値距離よりも小さい多数のピークのいくつかに関連する距離が検出され、廃棄されてよい。
【0054】
いくつかの例では、クラシファイヤ406は、受信信号408が、以下でより詳細に論じられる、クラシファイヤ406によって判定された動的ノイズフロアを超えるしきい値数(たとえば、1つ以上、3つ以上、サンプルレートがより高くなるにつれてより高い)のサンプルを含むと判定したことに少なくとも部分的に基づいて、受信信号408をアクティブパルスとして分類し得る。いくつかの例では、クラシファイヤ406は、クラシファイヤ406が受信信号408をアクティブパルスとして分類するまで、閉じられた(すなわち、出力を受け渡さない)ままであるようにマルチプレクサ422を制御し得る。たとえば、クラシファイヤ406は、動的ノイズフロアを連続的に判定し、受信信号408の大きさを動的ノイズフロアと比較してよく、受信信号408の3つ以上のサンプルが、ノイズフロアを超える大きさに関連付けられるとクラシファイヤ406が判定するまで、ディテクタ出力のいずれも受け渡されることを可能にしない選択412を出力し得る。そのポイントにおいて、クラシファイヤ406は、受信信号をタイプとして分類し、どのディテクタ出力が受け渡されるべきかを示すための選択412を変更してもよい。さらに、動的ノイズフロアとして説明されたが、たとえば、固定しきい値、受信されたポイントの数など、アクティブパルスの任意の他の区別が企図される。
【0055】
いくつかの例では、クラシファイヤ406は、動的ノイズフロアを超えるしきい値数のサンプル(たとえば、3つ以上、10個以上)、互いの偏差内にある大きさに関連付けられたしきい値数のサンプル(たとえば、ADCのスケールに応じて、±5ユニット)、しきい値大きさを超えるしきい値数のサンプル、受信信号408の幅、および/またはそれらの組合せ(本明細書ではしきい値大きさと総称される)に少なくとも部分的に基づいて、受信信号408を飽和信号として分類し得る。いくつかの例では、クラシファイヤ406は、しきい値大きさを超える3つ以上のサンプルに少なくとも部分的に基づいて受信信号408をアクティブパルスとして分類し、しきい値大きさを超える126個以上のサンプルに少なくとも部分的に基づいて受信信号408を飽和パルスとして分類し得る。いくつかの例では、しきい値大きさを超える受信信号408のサンプルの数が3よりも大きいが126よりも小さい場合、クラシファイヤ406は、受信信号408を不飽和信号として分類し得る。この例は数126を使用するが、アクティブ不飽和パルスとアクティブ飽和パルスとの間で区別するために使用されるサンプルの数は、ADCのサンプリング周波数に少なくとも部分的に基づいて変動してよい。
【0056】
いくつかの例では、クラシファイヤ406は、判定ツリー、または判定ツリーのランダムフォレストおよび/もしくはブーステッドアンサンブルなど、それの任意の配置、(たとえば、ノードがベイジアンネットワークとして編成された)有向非巡回グラフ(DAG)、深層学習アルゴリズムなどを含み得る。いくつかの例では、クラシファイヤ406は、動的ノイズフロアを判定するためのプログラミングおよび/または回路、受信信号408の大きさを動的ノイズフロアと比較するためのコンパレータ、ならびに選択412を示すためにピン状態を推進するための論理を含み得る。
【0057】
いくつかの例では、選択された距離410は、ダウンストリーム構成要素によって最終推定距離として、たとえば、環境のポイントクラウド表現を構築する際の使用のために使用され得る。いくつかの例では、選択された距離410は、図4Bに示されているように、オフセット距離424によって修正されて、ダウンストリーム構成要素によって最終推定距離として使用される前に修正された距離426が判定され得る。いくつかの例では、キャリブレータ428は、選択された距離410、高さ416および/もしくは幅420、ならびに/または放出光によって放出された光の電力(送信電力430)を受信し得る。いくつかの例では、キャリブレータ428は、不飽和信号では高さ416および送信電力430に、または飽和信号では幅420および送信電力430に少なくとも関連付けられたオフセット距離424を含む、実験値のルックアップテーブルを含み得る。いくつかの例では、オフセット距離は、さらに、選択された距離410、光センサおよび/またはLIDARシステムの温度などの関数であってよい。いくつかの例では、テーブルは、オブジェクトまでの実際の距離とディテクタによって推定された距離との間の差異を記録し、電力トランスミッタの送信電力を変動させ、(たとえば、ニュートラルデンシティフィルタを使用して)表面の反射率を変動させて、変動する高さおよび幅の受信信号を生成することによってポピュレートされ得る。たとえば、キャリブレータ428は、光センサが華氏75度(摂氏23.8度)であり、送信電力430が35ミリワットであり、受信信号電力(すなわち、高さ)が32ミリワットである不飽和信号のために、選択された距離410が-5ミリメートルだけ調整されるべきであると判定し得る。キャリブレータ428は、選択された距離418からこれを減算し、修正された距離426を最終推定距離としてダウンストリーム構成要素に提供し得る。キャリブレータ428は、それにより、光エミッタおよび/または光センサの非線形性を考慮し、推定距離の精度をさらに増加させ得る。
【0058】
いくつかの例では、キャリブレータ428は、受信信号の実験送信電力ならびに実験受信高さおよび/または幅を、テストオブジェクトまでの測定距離と、受信信号に基づく推定距離との差を取ることによって判定された距離オフセットにマッピングするルックアップテーブルを含み得る。いくつかの例では、オフセット距離をオンラインで判定するために、キャリブレータ428は、実際の送信電力ならびに受信信号高さおよび/または幅の双1次および/または双3次補間を行って距離オフセットを判定してよい。いくつかの例では、ルックアップテーブルのポピュレーション中の時間変動する温度のゆらぎを考慮するために、オブジェクトまでの距離は、一定に保たれ、様々な動作温度においてシステムによって推定され得る。温度および推定距離に(ならびに/または測定定離からの推定距離の差異に)曲線がフィッティングされてよい。いくつかの例では、曲線は直線を含み得る。このようにして、キャリブレータ428は、曲線によって指定された距離差異だけ距離オフセットを調整し得る。そのように行う際に、これにより、曲線または直線に基づいて温度のために距離オフセットが調整され得るので、ルックアップテーブルが温度次元を含む必要がなくなる。
【0059】
例示的な不飽和信号ディテクタ
図5は、放出光パルス、反射光パルスを示す不飽和受信信号、および放出光パルスと受信信号との間の相互相関の概略的性質を示す。いくつかの例では、不飽和信号ディテクタは、以下の議論に従ってTDOAを判定し得る。
【0060】
図5は、レーザエミッタによって放出される光のタイミングおよび強度を表す第1の波形502を示している。単一の距離測定のための光は、この例では約5から50ナノ秒の幅をそれぞれ有するパルス504(A)とパルス504(B)のペアを備える、多数のパルスのシーケンスまたはバーストとして放出される。しかしながら、他の例では、より長いまたはより短い持続時間の3つ以上のパルスを有するパルスのシーケンスまたはバーストが使用されることが可能である。図示の例では、ペアのパルスは、持続時間t1を有する時間間隔だけ互いに離間される。一実施形態では、各パルスは、20ナノ秒と50ナノ秒との間で変動する時間間隔持続時間を有する。パルスは、レーザエミッタを通してキャパシタの放電によって生成され、したがって、ガウス形状を有する。
【0061】
図5は、受信信号126および/または408によって示され得るような、光センサによって受信され検出される反射光の大きさを表す第2の波形506を示している。第2の波形506は、パルス504(A)とパルス504(B)にそれぞれ対応するパルス508(A)とパルス508(B)のペアを含む。しかしながら、第2の波形506のパルスは、第1の波形502に対して時間t2だけ遅延される。第2の波形506のパルス間のタイミング関係は、放出パルス504のそれと同じであるはずである。
【0062】
図5は、第1の波形502と第2の波形506との間の相互相関を表す第3の波形510を示している。第3の波形510の最も高いピーク512は、放出されている第1の波形502と、検出されている第2の波形506との間の時間的差であるt2に時間的に対応する。飽和信号のフラットトップが、時間t2と正確に相関するピークを発生しないので、飽和パルスについて識別不可能であるのは、この時間、t2である。したがって、図4Aの構成によれば、受信信号408が飽和信号である場合、不飽和信号ディテクタによって判定される第1の距離414は不正確なことがある。
【0063】
例示的な飽和信号エッジ検出
図6A図6Fは、飽和している受信信号のための光センサにおける反射パルスの到着時間を判定するための技法を示す。この到着時間は、いくつかの例では、第2の距離418を判定するためのTDOAを判定するために使用され得る。たとえば、飽和信号ディテクタ404は、図6A図6Fにおいて説明される技法を行うためのプログラミングおよび/または回路を含み得る。いくつかの例では、本技法は、受信信号126および/または408を表し得る、受信信号のエッジを検出することを含む。これは、以下で説明されるように、(本明細書では「中間位置」と呼ばれる)立上りエッジ上の特定の位置を判定すること、および中間位置に対応するサンプル番号(たとえば、全体のサンプル番号は位置に正確に対応しないことがあるので、潜在的には分数サンプル)を識別することを含み得る。
【0064】
図6Aは、受信信号126および/または408を表し得る受信信号600を示している。いくつかの例では、クラシファイヤは、すでに受信信号126を「飽和信号」タイプであるものとして分類し、受信信号600を飽和信号ディテクタに受け渡していることがあるか、または、別の例では、飽和信号ディテクタは、受信信号126を連続的に受信し、出力を判定して、クラシファイヤが飽和信号ディテクタの出力をいつ受け渡すべきかを判定することを可能にし得る(たとえば、クラシファイヤが、アクティブパルスを示すものとして、および飽和しているものとして受信信号126を分類したとき)。
【0065】
動作602において、飽和信号ディテクタは、時間内の/最も低いサンプル番号(たとえばADCからの、たとえば、飽和値に関連する第1のサンプル)に関連する受信信号600の第1の最大値604を判定し得る。この値に関連するサンプルは、図6Aに示されている、最左サンプル606(すなわち、時間的に最も早い/サンプルシーケンス)と呼ばれ、本明細書では最大サンプルと呼ばれることもある。いくつかの例では、第1の最大値は、受信信号のフィルタリングされていないバージョンから検出されてよく、いくつかの例では、後続の動作は、受信信号のフィルタリングされたバージョン上で行われてよい。たとえば、動作602において、ディテクタは、フィルタリングされていない受信信号から第1の最大値を識別し、(たとえば、受信信号のフーリエ変換を行って受信信号の周波数ドメイン成分を識別することなどの追加のディテクタ機能に応じて、たとえば、ローパスフィルタを使用し、他のフィルタまたは動作を使用して)受信信号をフィルタリングし、次いで、動作608に進み得る。いくつかの例では、第1の最大値を判定することは、ノイズを考慮するために分散を組み込む技法を含む、最大値位置技法を使用することを含み得る。たとえば、分散は、SNR、ノイズ電力、以下で論じられる動的ノイズフロア、または電流ノイズの他のインデックスに少なくとも部分的に基づいて設定され得る。
【0066】
図6Bは動作608を示している。動作608において、飽和信号ディテクタは、最左サンプル606ならびに少なくとも2つの前のサンプル612および614に第1の多項式曲線610をフィッティングし得る。いくつかの例では、第1の多項式曲線610は、2次または3次多項式関数を含み得る。任意の好適な曲線フィッティング技法が採用されてよい。たとえば、飽和信号ディテクタは、最小2乗回帰分析、および/または、たとえばガウスニュートンアルゴリズムなどの非線形最小2乗回帰分析を使用して第1の多項式曲線610を判定してよく、減衰ファクタは、ノイズ電力、動的ノイズフロア、および/またはSNRに少なくとも部分的に基づく。
【0067】
図6Cは動作616を示し、明快のために、受信信号600の部分は削除されている。動作616において、飽和信号ディテクタは、第1の多項式曲線610に少なくとも部分的に基づいて中間しきい値大きさ618を定義し得る。たとえば、飽和信号ディテクタは、第1の多項式曲線610から合成最大値620を判定し、合成最大値620の所定の割合(たとえば、最大値の60%、50%と80%との間のいずれかの割合、40%程度の低い割合、しかし結果の不正確さが増加している)である値になるように中間しきい値大きさ618を定義し得る。いくつかの例では、飽和信号ディテクタは、合成最大値620の60%になるように中間しきい値大きさ618を定義する。
【0068】
いくつかの例では、飽和信号ディテクタは、第1の多項式曲線610の最大値(たとえば、多項式の次数に応じて、局所最大値、大域最大値)を識別することによって合成最大値620を判定し得る。図6Cは第1の多項式曲線610を線分として示しているが、実際の実装では、第1の多項式曲線610は、最左サンプル606の近くにある局所最大値を少なくとも含み得ることに留意されたい。追加または代替の例では、飽和信号ディテクタは、最左サンプル606に対応するサンプル番号における多項式曲線を評価すること(たとえば、サンプル番号を多項式に「プラッギングすること(plugging)」)によって合成最大値620を判定し得る。いくつかの例では、動作616は、多項式曲線が下方凹形状を含むことを確実にするために、および/または係数が、多項式曲線が2次、3次、もしくはより高次の多項式であることを示すことを確実にするために、多項式曲線の係数を検査することをさらに含み得る。これは、最大値が発見されることが可能であることを確実にするために、および後続の動作の精度を確実にするために、合成最大値620を判定する前に行われてよい。
【0069】
動作616は、追加または代替として、中間しきい値大きさ618と交差する第1の多項式曲線610のポイント622を判定することを含み得る。
【0070】
図6Dは動作624を示している。動作624において、飽和信号ディテクタは、ポイント622(すなわち、中間しきい値大きさとの第1の多項式曲線の交差)に最も近い受信信号600の少なくとも3つのサンプルを判定し得る。いくつかの例では、図6Dにおいて626(1)~(6)として示されている、受信信号600の最も近い6つのサンプルが発見され得る。
【0071】
図6Eは動作628を示し、明快のために、受信信号600の部分は削除されている。動作628において、飽和信号ディテクタは、本明細書では「中間サンプル」と呼ばれる3つ以上のサンプル(図6Eの6つのサンプル626(1)~(6))に第2の多項式曲線630をフィッティングし得る。この場合も、中間サンプルに第2の多項式曲線630をフィッティングために任意の好適なフィッティングアルゴリズムが使用されてよく、第2の多項式曲線630は2次または3次多項式であってよい。いくつかの例では、多項式曲線630を使用する代わりに、中間しきい値大きさとの第1の多項式曲線の交差に最も近い中間サンプルに直線がフィッティングされてよい。そのような例では、動作628において、飽和信号ディテクタは、2つ以上のサンプルに直線をフィッティングし得る。
【0072】
図6Fは動作632を示している。動作632において、飽和信号ディテクタは、第2の多項式曲線630と中間しきい値大きさ618との第2の交差634を判定し得る。このポイントは、本明細書では中間ポイント634と呼ばれる。いくつかの例では、中間ポイント634は、受信信号600の立上りエッジのインジケーションである。いくつかの例では、飽和信号ディテクタは、中間ポイント634に対応する、本明細書ではサンプルインデックスと呼ばれる、サンプル番号636を判定し得る。このサンプル番号636は、(たとえば、2つのサンプル間で補間され得るような)分数のサンプル番号を含み得る。いくつかの例では、飽和信号ディテクタは、中間ポイント634に対応するサンプル番号636を使用してTDOAを判定し得る。たとえば、飽和信号ディテクタは、光エミッタからの光パルスの放出に対応するサンプル番号からサンプル番号636までの時間を知らせるためにコントローラから基準信号を受信し得る。これをTDOAにコンバートすることは、光パルスが放出されたサンプル番号とサンプル番号636(すなわち、説明されるエッジ検出技法によって推定された到着時間に対応するサンプル番号)との間のサンプルの分数を判定することと、(ADCのサンプルレートに一致するかまたはそれと相関され得る)基準信号の遅延および周波数に対応するサンプルの分数を使用して、サンプル番号における遅延を時間遅延にコンバートすることとを含み得る。いくつかの例では、飽和信号ディテクタは、光速に少なくとも部分的に基づいて距離(たとえば、第2の距離418)を判定するためにTDOAを使用し得る。いくつかの例では、飽和信号ディテクタはこの距離を出力し得る。
【0073】
いくつかの例では、飽和信号ディテクタは、サンプル番号636が所定の範囲(たとえば、サンプル番号の範囲)の外側にある場合、無効なエッジ検出に対応するような中間ポイント634を廃棄し得る。たとえば、ADCのサンプリング周波数に応じて、飽和信号ディテクタは、サンプル番号がサンプル番号2を下回るかまたはサンプル番号5を上回る場合、サンプル番号636を廃棄し得る。別の例では、飽和信号ディテクタは、サンプル番号がサンプル番号1を下回るかまたはサンプル番号6を上回る場合、サンプル番号636を廃棄し得る。これは、真であるアクティブパルスについてのエッジ検出が廃棄されないことを確実にするために極めて寛容な範囲であるが、2から5の範囲が概して安全である。
【0074】
追加または代替の例では、飽和信号ディテクタは、受信信号600の幅を出力し得る。たとえば、飽和信号ディテクタは、中間ポイント634を発見するために説明された処理を逆転させて、(たとえば、最大大きさに関連する最右サンプル、およびこの最右サンプルの後にくる少なくとも2つのサンプル、それらのサンプルにフィッティングする第1の多項式などを発見することによって)右側中間ポイントを発見してよく、左側中間ポイント634と右側中間ポイントとの間の幅(たとえば、それらの間のサンプルの分数、それらの間の時間)を測定してよい。追加または代替の例では、幅または任意の他の方法が使用され得るとき、「フラットトップ」の幅(たとえば、分散内で、受信信号600の最大大きさに関連付けられたサンプルの分数)が使用されてよい。
【0075】
例示的なアクティブパルス検出
図7A図7Cは、(飽和信号として示されている)アクティブパルス706をそれぞれ含む例示的な受信信号700、702、および704の信号図を示す。受信信号700、702、および704の残りの部分は、単にノイズである。受信信号700、702、および704は、本明細書で論じられる受信信号のいずれかを表し得る。「アクティブパルス」は、放出光パルスの反射に対応する信号の真陽性の部分である。図7A図7Cはすべて、静的しきい値大きさ708を示し、アクティブパルスを正確に識別しおよび/または信号を飽和信号として分類するためのそのようなシステムの潜在的欠点を例示している。
【0076】
たとえば、図7Aは、受信信号700のアクティブパルス領域に関連するサンプルがしきい値大きさ708を超えると判定することによって受信信号700のアクティブパルス706部分を正確に識別し得る。しかしながら、この方法は、偽陽性である、ノイズ中のスパイク710をアクティブ信号として識別することがある。このノイズスパイク710は、光センサに当たっているきらめく太陽光(たとえば、反射面からの反射)、夜間のヘッドライトなどに起因し得る。いくつかの例では、これは、連続数のサンプルについてしきい値大きさ708を超える大きさに関連するサンプルをアクティブパルスとして識別することによって防止され得る。
【0077】
しかしながら、これは、いくつかのシナリオでは、偽陽性および偽陰性を防止するのに十分でない。たとえば、図7Bは、エネルギーを温存するために光エミッタの送信電力が低減されることがあり、ならびに/またはノイズ条件および/もしくはオブジェクト(たとえば、密集した群葉)の反射率の突然の変化が、受信されるものの全体的な電力を減少させる、夜間条件中に受信される受信信号702を示すことがある。この例では、受信信号702のどの部分もしきい値大きさ708を超えないので、アクティブパルス706はそのようなものとして識別されないであろう。代わりに、アクティブパルス706は、偽陰性である、ノイズとして識別され得る。
【0078】
その上、日のよくさす条件またはさもなければ高ノイズ条件では、図7Cに示されているように、受信パルス704はしきい値大きさ708を完全に超え得る。この例では、受信信号704全体がアクティブパルスとして識別されることがあり、これはアクティブパルス部分については真陽性であるが、これは信号のノイズ部分については偽陰性である。
【0079】
ADCを採用する例では、ADCは、総電力の関数としてそれの出力をスケーリングし、それにより、受信信号を正規化し得るが、これは、アクティブパルスを識別するために静的しきい値を使用することに伴う上記で論じられた問題を回避するのに十分でないことがある。
【0080】
図7Dは、アクティブパルス714およびノイズスパイク716を含む例示的な受信信号712(実線)、動的ノイズフロア718(細い破線)、ならびに調整された動的ノイズフロア720(太い破線)を示す。受信信号712は、本明細書で論じられる受信信号のいずれかを表し得る。いくつかの例では、本明細書で論じられるクラシファイヤは、受信信号712の少なくとも一部をアクティブパルスとして分類する(すなわち、アクティブパルスと単なるノイズを区別する)ために、および/または受信信号712(たとえば、受信信号712のアクティブパルス部分)をタイプとして分類するために、動的ノイズフロアおよび/または調整された動的ノイズフロアを判定し得る。いくつかの例では、これは、アクティブパルス(すなわち、光エミッタによって放出された光のオブジェクトからの反射)と、単なるノイズとを区別するのに有効であり得る。ノイズは、フォトダイオードにおけるノイズ、環境中の背景光(たとえば、放出光の反射に起因しない、光センサの視野中の光)、赤外放出、太陽ノイズ、電気および/または熱ノイズなどによって受信信号712中に導入され得る。
【0081】
いくつかの例では、クラシファイヤは、受信信号712の移動平均を計算することに少なくとも部分的に基づいて動的ノイズフロア718を判定し得る。いくつかの例では、移動平均は、受信信号712の最後の移動平均値および現在値(たとえば、大きさ、高さ)に少なくとも部分的に基づき得る。いくつかの例では、移動平均は、単純移動平均、加重移動平均、指数移動平均などであり得る。いくつかの例では、最後の移動平均値は、受信信号712の現在値よりも重く重み付けされてよい。たとえば、現在の第nのサンプルの移動平均は次のように計算されてよい:mavgn=0.99・mavg(n-1)+0.01・Mn、ただし、Mは受信信号712の大きさである。これは、図7Dの動的ノイズフロア718を生成するために使用される式である。
【0082】
いくつかの例では、クラシファイヤは、調整された動的ノイズフロア720を取得するために動的ノイズフロア718を修正してよい。いくつかの例では、クラシファイヤは、受信信号712および/またはアクティブパルスの特性に少なくとも部分的に基づいて動的ノイズフロア718を修正してよい。たとえば、クラシファイヤは、受信信号712の幅および/または高さに少なくとも部分的に基づいて動的ノイズフロア720をシフトおよび/またはスケーリングしてよい。いくつかの例では、クラシファイヤは、受信信号712の最大大きさに少なくとも部分的に基づくスケールファクタによって動的ノイズフロアをスケーリングしてよい。
【0083】
いくつかの例では、クラシファイヤは、追加または代替として、光センサおよび/またはLIDARシステムの温度、送信電力、SNR、ノイズ電力、受信信号電力に対する送信電力の比較などに少なくとも部分的に基づいてノイズフロアを調整してよい。たとえば、クラシファイヤは、受信信号712の少なくとも一部が、送信電力を超える電力を有する(たとえば、太陽光が光センサに当たっていることがある)と判定したことに少なくとも部分的に基づいて、動的ノイズフロア718を上にシフトしてよい。いくつかの例では、動的ノイズフロア718は、真陽性アクティブパルス714の大きさのうちの少なくともいくつかが、調整された動的ノイズフロア720の大きさの2倍と3倍との間になるように判定されたファクタによってシフトされる。このファクタは、履歴上のアクティブパルスおよび/または送信電力に少なくとも部分的に基づいて判定され得る。
【0084】
いくつかの例では、クラシファイヤは、動的ノイズフロア718および/または調整された動的ノイズフロア720を超える第1のしきい値数(たとえば、3つ以上)のサンプルに少なくとも部分的に基づいて、受信信号712の少なくとも一部をアクティブパルス714として分類してよい。いくつかの例では、クラシファイヤは、追加または代替として、動的ノイズフロア718および/もしくは調整された動的ノイズフロア720を超える第2のしきい値数のサンプルに少なくとも部分的に基づいて、ならびに/または動的ノイズフロア718および/もしくは調整された動的ノイズフロア720を超える第3のしきい値数の連続サンプルが互いの分散内にあると判定したことに少なくとも部分的に基づいて、受信信号712の少なくとも一部を飽和信号として分類してよい。たとえば、クラシファイヤは、3つのサンプルが、調整されたノイズフロアを超えると判定することがあり、したがって、クラシファイヤが、調整されたノイズフロアを超えないサンプルを識別するまで、それらのサンプル、およびそれらの3つのサンプルの後にくるあらゆるサンプルをアクティブパルスとして識別し得る。アクティブパルスとして識別されたサンプルについて、クラシファイヤは、アクティブパルスを構成するサンプルの数が5つのサンプルに等しいかもしくはそれを超えると判定したことに少なくとも部分的に基づいて、および/またはアクティブパルスを構成するサンプルが、互いの±2以内にある大きさに関連付けられた少なくとも3つの連続サンプルを含むと判定したことに少なくとも部分的に基づいて、アクティブパルスが飽和パルスであると判定し得る。
【0085】
本明細書における「しきい値大きさ」への言及は、静的しきい値大きさとして明示的に定義されていない限り、動的ノイズフロア718および/または調整された動的ノイズフロア720によって定義される大きさを含み得る。
【0086】
例示的なシステムアーキテクチャ
図8は、本明細書で論じられる技法のいずれかによる、LIDARシステムによって判定される距離を使用して、自律車両などの少なくとも1つの車両の動作を制御するための例示的な車両システム802を含む、例示的なアーキテクチャ800のブロック図である。
【0087】
いくつかの例では、車両システム802は、プロセッサ804および/またはメモリ806を含み得る。図8ではこれらの要素が組み合わせて示されているが、いくつかの例では、それらは車両システム802の別個の要素であり得ること、ならびにシステムの構成要素はハードウェアおよび/またはソフトウェアとして実装され得ることを理解されたい。
【0088】
プロセッサ804は、1つのプロセッサを含むユニプロセッサシステム、またはいくつか(たとえば、2つ、4つ、8つ、もしくは別の好適な数)のプロセッサを含むマルチプロセッサシステムを含み得る。プロセッサ804は、命令を実行することが可能な任意の好適なプロセッサであってよい。たとえば、様々な実装では、プロセッサ804は、x86、PowerPC、SPARC、もしくはMIPS ISA、または任意の他の好適なISAなど、様々な命令セットアーキテクチャ(ISA)のいずれかを実装する汎用または組込みプロセッサであってよい。マルチプロセッサシステムでは、各プロセッサ804は、必ずしもそうとは限らないが、通常は同じISAを実装し得る。いくつかの例では、プロセッサ804は、中心処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、FPGA、特定用途向け集積回路(ASIC)、またはそれらの組合せを含んでよい。いくつかの例では、本明細書で論じられるクラシファイヤおよび/またはディテクタのうちの1つもしくは複数は、これらのプロセッサアーキテクチャのいずれかを使用して実装されてよい。たとえば、クラシファイヤおよび/または1つもしくは複数のディテクタはFPGAであってよい。
【0089】
例示的な車両システム802はメモリ806を含み得る。いくつかの例では、メモリ806は、プロセッサ804によってアクセス可能な実行可能命令/モジュール、データ、および/またはデータ項目を記憶するように構成された非一時的コンピュータ可読媒体を含んでよい。様々な実装では、非一時的コンピュータ可読媒体は、静的ランダムアクセスメモリ(SRAM)、同期ダイナミックRAM(SDRAM)、不揮発性/フラッシュタイプメモリ、または任意の他のタイプのメモリなど、任意の好適なメモリ技術を使用して実装されてよい。図示の例では、上記で説明されたものなど、所望の動作を実装するプログラム命令およびデータは、非一時的コンピュータ可読メモリ内に記憶されて示されている。他の実装では、プログラム命令、および/またはデータは、非一時的コンピュータ可読媒体など、異なるタイプのコンピュータアクセス可能媒体上で、または非一時的コンピュータ可読媒体とは別個の同様の媒体上で受信、送信、または記憶されてよい。概して言うと、非一時的コンピュータ可読メモリは、入出力(「I/O」)インターフェース808を介して例示的な車両システム802に結合されたフラッシュメモリ(たとえば、固体メモリ)、磁気または光媒体(たとえば、ディスク)など、記憶媒体またはメモリ媒体を含んでよい。非一時的コンピュータ可読媒体を介して記憶されたプログラム命令およびデータは、ネットワークインターフェース810を介して実装され得るような、ネットワークおよび/またはワイヤレスリンクなどの通信媒体を介して搬送され得る、電気信号、電磁信号、またはデジタル信号などの送信媒体または信号によって送信されてよい。
【0090】
さらに、図8では単一のユニットとして示されているが、プロセッサ804およびメモリ806は、車両の多数のコンピューティングデバイスの間で、および/または多数の車両、データセンター、遠隔操作センターの間などで分散されてよいことを理解されたい。いくつかの例では、プロセッサ804およびメモリ806は、本明細書で論じられる技法のうちの少なくともいくつかを行ってよく、プロセッサ804およびメモリ806は、本明細書で論じられるLIDARシステムのプロセッサおよびメモリを含んでよい。
【0091】
いくつかの例では、入出力(「I/O」)インターフェース808は、プロセッサ804、メモリ806、ネットワークインターフェース810、センサ812、I/Oデバイス814、駆動システム816、および/または車両システム802の任意の他のハードウェアの間でI/Oトラフィックを協調させるように構成されてよい。いくつかの例では、I/Oデバイス814は、外部および/または内部スピーカ、ディスプレイ、搭乗者入力デバイスなどを含んでよい。いくつかの例では、I/Oインターフェース808は、1つの構成要素(たとえば、非一時的コンピュータ可読媒体)から別の構成要素(たとえば、プロセッサ)による使用に適したフォーマットにデータ信号をコンバートするためにプロトコル、タイミング、または他のデータ変換を実施してよい。いくつかの例では、I/Oインターフェース808は、たとえば、周辺構成要素相互接続(PCI)バス規格、ユニバーサルシリアルバス(USB)規格、またはそれらの変形態など、様々なタイプの周辺バスを通してアタッチされたデバイスのためのサポートを含んでよい。いくつかの実装では、I/Oインターフェース808の機能は、たとえば、ノースブリッジおよびサウスブリッジなど、2つ以上の別個の構成要素に分割されてよい。また、いくつかの例では、メモリ806へのインターフェースなど、I/Oインターフェース808の機能の一部または全部は、車両システム802のプロセッサ804および/または1つもしくは複数の他の構成要素に直接組み込まれてよい。
【0092】
例示的な車両システム802は、車両システム802と1つまたは複数の他のデバイスとの間の通信リンク(すなわち、「ネットワーク」)を確立するように構成されたネットワークインターフェース810を含んでよい。たとえば、ネットワークインターフェース810は、第1のネットワーク820を介して車両システム802と別の車両818との間で、および/または第2のネットワーク824を介して車両システム802とリモートコンピューティングシステム822との間でデータが交換されることを可能にするように構成され得る。たとえば、ネットワークインターフェース810は、別の車両818および/またはリモートコンピューティングデバイス822の間のワイヤレス通信を可能にし得る。様々な実装では、ネットワークインターフェース810は、Wi-Fiネットワークなどのワイヤレス一般データネットワーク、および/または、たとえば、セルラ通信ネットワーク、衛星ネットワークなどの電気通信ネットワークを介した通信をサポートし得る。いくつかの例では、受信信号、TDOA、選択された距離、推定距離、受信信号高さおよび/または幅など、本明細書で論じられるセンサデータは、第1の車両において受信され、第2の車両に送信されてよい。いくつかの例では、LIDARの構成要素のうちの少なくともいくつかは、様々なデバイスに配置されてよい。たとえば、第1の車両は、光エミッタおよび光センサを含んでよく、受信信号を生成してよいが、受信信号を第2の車両および/またはリモートコンピューティングデバイスに送信してよく、ここにおいて、追加または代替として、クラシファイヤおよび/またはディテクタのうちの1つもしくは複数が配置される。
【0093】
例示的な車両システム802は、たとえば、環境中で車両システム802を位置特定し、環境中の1つもしくは複数のオブジェクトを検出し、それの環境を通る例示的な車両システム802の移動を感知し、環境データ(たとえば、周囲温度、圧力、および湿度)を感知し、ならびに/または例示的な車両システム802の内部の条件(たとえば、搭乗者カウント、内部温度、ノイズレベル)を感知するように構成された、センサ812を含んでよい。センサ812は、たとえば、例示的なシステム100および/もしくはそれの構成要素を表し得る、1つもしくは複数のLIDARセンサ818、1つもしくは複数のカメラ(たとえばRGBカメラ、輝度(グレースケール)カメラ、赤外線カメラ、デプスカメラ、ステレオカメラ)、1つもしくは複数の磁力計、1つもしくは複数のレーダセンサ、1つもしくは複数のソナーセンサ、音を感知するための1つもしくは複数のマイクロフォン、(たとえば、加速度計およびジャイロスコープを含む)1つもしくは複数のIMUセンサ、1つもしくは複数のGPSセンサ、1つもしくは複数のガイガーカウンターセンサ、1つもしくは複数のホイールエンコーダ、1つもしくは複数の駆動システムセンサ、速度センサ、ならびに/または例示的な車両システム802の動作に関係する他のセンサを含み得る。
【0094】
いくつかの例では、図8ではLIDAR818が個別センサとして示されているが、LIDAR818の構成要素(たとえば、図1図4などで論じられた構成要素)のうちの少なくとも1つは、LIDAR818とは別個であってよい。たとえば、プロセッサ804および/またはメモリ806は、本明細書で論じられるように、クラシファイヤおよび/または1つもしくは複数のディテクタのプログラミングおよび/または回路を含んでよい。
【0095】
いくつかの例では、例示的な車両システム802は、知覚エンジン826およびプランナ830を含んでよい。
【0096】
知覚エンジン826は、プロセッサ804によって実行されたとき、本明細書で論じられるLIDARシステムによって判定される推定距離および/または選択された距離を含み得るセンサデータを入力としてセンサ812から受信し、たとえば、典型的なデータを出力するようにプロセッサ804を構成する、メモリ806に記憶された命令を含んでよい。いくつかの例では、知覚エンジン826は、プロセッサ804によって実行されたとき、本明細書で論じられる技法のいずれかに従って判定される推定距離および/または選択された距離に少なくとも部分的に基づいてLIDARポイントのクラウドを判定するようにプロセッサ804を構成する、メモリ806に記憶された命令を含んでよい。いくつかの例では、知覚エンジン826は、LIDARポイントクラウドを使用して、例示的な車両システム802を囲んでいる環境の表現、例示的な車両システム802を囲んでいる環境中のオブジェクトの体勢(pose)(たとえばポジションおよび配向)、オブジェクトに関連するオブジェクトトラック(たとえば、履歴ポジション、速度、加速度、および/もしくは時間期間(たとえば5秒)にわたるオブジェクトの方位)、ならびに/またはオブジェクトに関連するオブジェクト分類(たとえば歩行者、車両、自転車に乗る人など)のうちの1つまたは複数を判定してよい。いくつかの例では、知覚エンジン826は、1つまたは複数のオブジェクトのオブジェクト軌道よりも多くのことを予測するように構成されてよい。たとえば、知覚エンジン826は、たとえば、LIDARポイントクラウドから検出されたオブジェクトに関連する予測位置、軌道、および/または速度の確率論的判定またはマルチモーダル分布に基づいて多数のオブジェクト軌道を予測するように構成されてよい。
【0097】
いくつかの例では、プランナ830は、LIDARポイントクラウドおよび/または任意の他の追加の情報(たとえば、オブジェクト分類、オブジェクトトラック、車両体勢)を受信し、この情報を使用して、車両802の動きを制御するための軌道を生成してよい。
【0098】
例示的な発明内容
A.コンピュータに実装される方法は、光検出およびLIDAR(測距)デバイスから光のパルスを放出することと、LIDARデバイスにおいて、LIDARデバイスの環境中のオブジェクトから反射される反射光パルスの受信を示す信号を受信することと、不飽和パルスまたは飽和パルスとして受信信号を分類することと、少なくとも部分的に受信信号を分類することに基づいて、LIDARデバイスの複数の光ディテクタの中から光ディテクタを選択することと、選択された光ディテクタによって、少なくとも部分的に受信信号に基づいて、TDOA(time delay of arrival;到着時間遅延)の計算を使用して、LIDARデバイスからオブジェクトまでの距離を算出することと、を含む。
【0099】
B.A項が引用するようなコンピュータに実装される方法は、飽和パルスまたは不飽和の光パルスとして受信信号を分類することが、少なくとも部分的に、予め決められた数のサンプルに対する、または予め決められた持続時間の時間に対する受信信号の大きさに基づく。
【0100】
C.AまたはB項のいずれかが引用するようなコンピュータに実装される方法は、受信信号を分類することが、不飽和パルスとして受信信号を分類することを含み、少なくとも部分的に、基準信号に受信信号を相関させてTDOAを決定することに基づいて、第1の遅延計算器によって距離を決定することをさらに含む。
【0101】
D.A~C項のうちのいずれか1項が引用するようなコンピュータに実装される方法は、受信信号を分類することが、飽和パルスとして受信信号を分類することに帰着し、少なくとも部分的に、受信信号の立ち上がりエッジに対応する時間を決定することに基づいて、第2の遅延計算器によって距離を決定することをさらに含む。
【0102】
E.デバイスは、光のパルスを放出する光エミッタと、デバイスの環境中のオブジェクトから反射された反射光パルスの受信を示す信号を生成する光センサと、反射光パルスが反射されたオブジェクトまでの距離を決定する複数のディテクタと、信号を受信し、受信信号を分類し、少なくとも部分的に受信信号を分類することに基づいて、オブジェクトまでの距離を計算するのに使用する複数のディテクタの中からディテクタを選択するようにプログラムされたクラシファイヤとを含む。
【0103】
F.E項が引用するようなデバイスは、複数のディテクタが、少なくとも部分的に、受信信号におけるピークに基づいてオブジェクトまでの第1の距離を決定する第1のディテクタと、少なくとも部分的に、受信信号の立ち上がりエッジに基づいてオブジェクトまでの第2の距離を決定する第2のディテクタとを少なくとも含む。
【0104】
G.F項が引用するようなデバイスは、第1のディテクタおよび第2のディテクタの出力を入力として受信するマルチプレクサをさらに含み、第1のディテクタおよび第2のディテクタが、実質的に同時に受信信号を受信し、クラシファイヤが、少なくとも部分的に、飽和パルスまたは不飽和パルスとして受信信号を分類することに基づいて、距離として第1の距離または第2の距離を出力するようにマルチプレクサを制御する。
【0105】
H.FまたはG項のいずれかが引用するようなデバイスは、第1のディテクタが、少なくとも部分的に、基準信号と受信信号の相互相関を決定することに基づいて、第1の距離を決定するようにプログラムされる。
【0106】
I.F~H項のうちのいずれか1項が引用するようなデバイスは、第1のディテクタが、受信信号の最大の大きさを追加として出力し、第2のディテクタが、受信信号の立ち上がりエッジから立ち下がりエッジまでの受信信号の幅を追加として出力する。
【0107】
J.F~I項のうちのいずれか1項が引用するようなデバイスは、第2のディテクタが、しきい値の大きさに対応する受信信号の立ち上がりエッジ上の第1の点から、しきい値の大きさに対応する受信信号の立ち下がりエッジ上の第2の点までの幅を決定する。
【0108】
K.F~J項のうちのいずれか1項が引用するようなデバイスは、ディテクタを選択することが、少なくとも部分的に、不飽和パルスとして受信信号を分類することに基づいて第1のディテクタを選択することか、少なくとも部分的に、飽和パルスとして受信信号を分類することに基づいて、第2のディテクタを選択することかを含む。
【0109】
L.F~K項のうちのいずれか1項が引用するようなデバイスは、複数のディテクタが、受信信号が分割されたビーム信号を含むと決定し、少なくとも部分的に、デコンボリューションまたは周波数領域解析のうちの少なくとも1つに基づいて、TDOAの決定のために使用する少なくとも2つのピークのうちの1つを特定する第3のディテクタをさらに含む。
【0110】
M.F~L項のうちのいずれか1項が引用するようなデバイスは、光センサによって生成された信号を受信信号に変換するアナログ・デジタル変換器をさらに含み、飽和パルスとして受信信号を分類することが、受信信号の大きさが、予め決められた個数より多いサンプルに対してしきい値の大きさを超えると決定することを含む。
【0111】
N.F~M項のうちのいずれか1項が引用するようなデバイスは、クラシファイヤが、アクティブパルスとして、光センサによって生成された信号中のノイズから受信信号を識別するようにさらにプログラムされ、アクティブパルスを識別することが、少なくとも部分的に、受信信号の現在の大きさ、および受信信号の以前の大きさに基づいて、動的なノイズフロアを決定することを含む。
【0112】
O.システムは、1つまたは複数のプロセッサと、1つまたは複数のプロセッサによって実行可能な命令を格納する1つまたは複数のコンピュータ読み取り可能な媒体とを含み、命令は、光エミッタによって光を放出し、光センサによって反射光の検出を示す信号を受信し、反射光が、システムに最も近い環境中のオブジェクトから反射され、不飽和信号または飽和信号として信号を分類し、第1のディテクタを介して第1の距離を決定し、第2のディテクタを介して第2の距離を決定し、少なくとも部分的に、信号が不飽和信号を表すと決定することに基づいて、出力のための第1の距離を選択し、少なくとも部分的に、信号が飽和信号を表すと決定することに基づいて、出力のための第2の距離を選択するように、1つまたは複数のプロセッサをプログラムする。
【0113】
P.O項が引用するようなデバイスは、クラシファイヤが、信号の大きさが予め決められた数のサンプルか予め決められた時間量かに対してしきい値の大きさを超えると決定することによって、信号が飽和信号を表すと決定する
Q.OまたはP項のいずれかが引用するようなシステムは、命令が、第3のディテクタを介して第3の距離を決定し、少なくとも部分的に、信号が分割された光ビームのインジケーションを含むと決定することに基づいて、出力のための第3の距離を選択するように、1つまたは複数のプロセッサをさらにプログラムする。
【0114】
R.O~Q項のうちのいずれか1項が引用するようなシステムは、第1のディテクタが、信号の最大の大きさを追加として決定し、第2のディテクタが、信号の幅を追加として決定し、命令は、少なくとも部分的に、最大の大きさまたは幅のうちの少なくとも1つに基づいて、第1の距離を修正し、少なくとも部分的に、最大の大きさまたは幅のうちの少なくとも1つに基づいて、第2の距離を修正するように、1つまたは複数のプロセッサをさらにプログラムする。
【0115】
S.O~R項のうちのいずれか1項が引用するようなシステムは、命令が、少なくとも部分的に、第1の距離または第2の距離に基づいて、自律車両の動きを制御するための軌跡を生成するように、1つまたは複数のプロセッサをさらにプログラムする。
【0116】
T.O~S項のうちのいずれか1項が引用するようなシステムは、第1のディテクタを介して第1の距離を決定することが、基準信号に信号を相関させることを含み、第2のディテクタを介して第2の距離を決定することが、信号の立ち上がりエッジに対応する時間を決定することを含む。
【0117】
主題について構造的特徴および/または方法論的行為に固有の文言で説明されたが、添付の特許請求の範囲において定義される主題は、必ずしも、説明された特定の特徴または行為に限定されないことを理解されたい。そうではなく、特定の特徴および行為は、特許請求の範囲を実装する例示的な形態として開示される。
【0118】
本明細書で説明されるモジュールは、任意のタイプのコンピュータ可読媒体に記憶されることが可能であり、ソフトウェアおよび/またはハードウェアにおいて実装されることが可能な命令を表す。上記で説明された方法および処理のすべては、1つもしくは複数のコンピュータもしくはプロセッサによって実行されるソフトウェアコードモジュールおよび/もしくはコンピュータ実行可能命令、ハードウェア、またはそれらの何らかの組合せにおいて具備され、それらを介して完全に自動化されることが可能である。方法の一部または全部は、代替として専用コンピュータハードウェアにおいて具備されることが可能である。
【0119】
特に、「することができる」、「し得る」、「してよい」または「するであろう」などの条件付き文言は、別段に明記されていない限り、そのいくつかの例を提示するための文脈内において、他の例は含んでいないが、いくつかの特徴、要素および/またはステップを含むものと理解されたい。したがって、そのような条件付き言語は、いくつかの特徴、要素および/もしくはステップが、1つもしくは複数の例のために何らかの形で必要とされることを暗示すること、またはその1つもしくは複数の例が、ユーザ入力もしくはプロンプトを用いてもしくは用いないで、いくつかの特徴、要素および/もしくはステップが、何らかの特定の例に含まれるかもしくはそれにおいて実施されるべきであるかどうかを判断するための論理を必ず含むことを暗示することを、一般に意図されていない。
【0120】
「X、YまたはZのうちの少なくとも1つ」という句などの結合的文言は、別段に明記されていない限り、項目、項などが、X、Y、もしくはZのいずれかであるか、または各要素の重複を含むそれらの任意の組合せであることが可能であることを提示するものと理解されたい。単数形として明示的に記述されていない限り、「a」は単数形および複数形を意味する。
【0121】
本明細書で説明されおよび/または添付図に図示される流れ図中のいかなるルーチン説明、要素またはブロックも、ルーチンにおいて特定の論理機能または要素を実装するための1つまたは複数のコンピュータ実行可能命令を含むコードのモジュール、セグメント、または部分を潜在的に表すものとして理解されたい。要素または機能が、当業者によって理解され得るように関与する機能に応じて、実質的に同期的に、逆順に、追加の動作とともに、または動作を省略して、を含めて、図示または議論されたものから削除されるか、またはそれから外れた順序で実行されることが可能である代替の実装が、本明細書で説明される例の範囲内に含まれる。
【0122】
上記で説明された例に多くの変更および修正が行われることが可能であることが強調されるべきであり、それの要素は、他の許容できる例のうちにあるものとして理解されたい。すべてのそのような修正および変更は、本開示の範囲内で本明細書に含まれ、以下の特許請求の範囲によって保護されることを意図されている。
図1
図2A
図2B
図3
図4A
図4B
図5
図6A
図6B
図6C
図6D
図6E
図6F
図7A
図7B
図7C
図7D
図8