(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024023372
(43)【公開日】2024-02-21
(54)【発明の名称】ライダーのための正確な光検出器測定
(51)【国際特許分類】
G01S 7/4913 20200101AFI20240214BHJP
G01S 17/931 20200101ALI20240214BHJP
G01S 17/10 20200101ALI20240214BHJP
【FI】
G01S7/4913
G01S17/931
G01S17/10
【審査請求】有
【請求項の数】22
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023198014
(22)【出願日】2023-11-22
(62)【分割の表示】P 2022137836の分割
【原出願日】2018-03-01
(31)【優先権主張番号】62/465,310
(32)【優先日】2017-03-01
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/596,002
(32)【優先日】2017-12-07
(33)【優先権主張国・地域又は機関】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
2.ZIGBEE
3.JAVA
4.SWIFT
5.PYTHON
(71)【出願人】
【識別番号】519064609
【氏名又は名称】アウスター インコーポレイテッド
(74)【代理人】
【識別番号】100094569
【弁理士】
【氏名又は名称】田中 伸一郎
(74)【代理人】
【識別番号】100103610
【弁理士】
【氏名又は名称】▲吉▼田 和彦
(74)【代理人】
【識別番号】100109070
【弁理士】
【氏名又は名称】須田 洋之
(74)【代理人】
【識別番号】100098475
【弁理士】
【氏名又は名称】倉澤 伊知郎
(74)【代理人】
【識別番号】100130937
【弁理士】
【氏名又は名称】山本 泰史
(72)【発明者】
【氏名】シュウ マーヴィン
(72)【発明者】
【氏名】パカラ アンガス
(72)【発明者】
【氏名】フリクトル マーク
(57)【要約】 (修正有)
【課題】ライダーシステムが、精度を犠牲にすることなく、エネルギー効率の高い方法で動作すること。
【解決手段】光測距システムを使用し、複数の光検出器を含む光センサにより光子を検出して、複数の時間ビンにおける初期データ値を生成することと、初期データ値に基づいて、検出された光子の強度レベルを決定することと、光源から、物体から反射する第1のパルスを送信することと、第1のパルスの光子を検出する前に、決定された強度レベルに基づいて、光検出器のセットの動作状態を変更することと、変更された動作状態に応じて、アクティブ動作中の光検出器によって第1のパルスの光子を検出して、複数の時間ビンにおける第1のデータ値を生成することと、複数の時間ビンにおける第1のデータ値を使用して、第1のパルスに対応する受信時間を決定することと、受信時間を使用して前記物体までの距離を決定することと、を含む方法により測距を実行する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
光学測定システムを使用する方法であって、
一つの光学測定の一部として光源からN個のパルス列を送信することであって、前記N個のパルス列の各々が、前記光源からの1つ以上のパルスを含み、かつ開始信号によってトリガされる異なる時間間隔に対応し、Nが、1よりも大きい整数である、送信することと、
前記光学測定システムの光センサによって前記N個のパルス列の光子を検出し、それにより複数の時点でデータ値を生成することと、
前記N個のパルス列の各々について、前記パルス列に対応する前記時間間隔内の時点で前記データ値に重みを割り当て、それにより加重値を取得することであって、前記N個のパルス列のうちの少なくとも2つが、異なる重みが割り当てられ、異なるパルスパターンを有する、取得することと、
複数の時間ビンにおける前記加重値に対応するヒストグラムを決定することであって、特定の時間ビンにおける前記ヒストグラムのカウンタが、複数の時間間隔にわたる前記特定の時間ビン内の時点で前記加重値を累積することにより決定される、決定することと、
前記ヒストグラムを使用して、前記N個のパルス列に対応する信号を検出することと、を含む、方法。
【請求項2】
前記開始信号に対する前記N個のパルス列に対応する受信時間を決定することをさらに含む、請求項1に記載の方法。
【請求項3】
前記受信時間を決定することが、
前記ヒストグラム上でフィルタをスライドさせて、前記ヒストグラムに対する前記フィルタの異なるスライド位置に対応するカウンタを有するフィルタ処理されたヒストグラムを計算することであって、前記フィルタ処理されたヒストグラムの前記カウンタの各々は、特定のスライド位置における前記フィルタと前記ヒストグラムとの重複に対応する、計算することと、
前記フィルタ処理されたヒストグラムの前記カウンタの最大値を特定することであって、前記カウンタの前記最大値に対する前記特定のスライド位置が前記受信時間に対応する、特定することと、を含む、請求項2に記載の方法。
【請求項4】
前記光学測定システムが、光測距システムであり、前記N個のパルス列が、物体から反射し、前記方法が、
前記受信時間を使用して前記物体までの距離を決定することをさらに含む、請求項2に記載の方法。
【請求項5】
前記距離が、前記受信時間と、前記開始信号の開始時間との間の往復時間に対応する、請求項4に記載の方法。
【請求項6】
前記少なくとも2つのパルス列が、前記開始信号に対して異なる時間にパルスを有することにより、異なるパルスパターンを有する、請求項1に記載の方法。
【請求項7】
前記重みが、2次元以上のベクトルである、請求項1に記載の方法。
【請求項8】
第1の重みが、正であり、第2の重みが、負である、請求項1に記載の方法。
【請求項9】
ヒストグラム回路が、前記ヒストグラムを決定し、前記ヒストグラム回路および前記光センサとが、同じ集積回路上にある、請求項1に記載の方法。
【請求項10】
複数の測距測定の一部として、光源および光センサの複数のチャネルに対して請求項1に記載の方法を実行することをさらに含み、前記複数の測距測定が、時間的に重複する、請求項1に記載の方法。
【請求項11】
前記複数のチャネルのうちの少なくとも2つのチャネルの前記N個のパルス列のパルスパターンが異なり、それにより、異なるチャネルに対して異なるヒストグラムパターンが生じる、請求項10に記載の方法。
【請求項12】
前記複数のチャネルのうちの少なくとも2つのチャネルの前記N個のパルス列に割り当てられた重みが異なり、それにより、異なるチャネルに対して異なるヒストグラムパターンが生じる、請求項10に記載の方法。
【請求項13】
光測距システムであって、
パルスを提供するように構成された光源と、
センサ集積回路であって、
複数の光センサであって、各々が、光子によってトリガされると、前記光子が検出されたことを示すバイナリ信号を出力するように構成されている複数の光検出器を含む、複数の光センサと、
前記バイナリ信号に基づいて、光子が検出される時間を決定するように構成されたタイミング回路と、
時間ビン中にトリガされた多数の光センサにそれぞれ対応するカウンタを決定および保存することにより、物体から反射した前記光源からの1つ以上のパルスの受信時間を決定するために使用可能なヒストグラムを作成するように構成されたヒストグラム回路と、を含む、センサ集積回路と、を備える、光測距システム。
【請求項14】
複数の光検出器が、単一光子アバランシェダイオード(SPAD)を備える、請求項13に記載の光測距システム。
【請求項15】
前記センサ集積回路が、
1つ以上の整合フィルタを前記ヒストグラムに適用して、前記受信時間が存在する時間窓を識別するように構成された窓掛け回路をさらに含む、請求項13に記載の光測距システム。
【請求項16】
前記センサ集積回路が、
前記時間窓内の前記ヒストグラムに複数の補間フィルタを適用するように構成された補間回路をさらに含み、最良に整合する補間フィルタが、前記時間ビンの幅未満の精度で対する前記受信時間を識別する、請求項15に記載の光測距システム。
【請求項17】
前記センサ集積回路と通信可能に結合されており、かつ
前記時間窓内の前記ヒストグラムに複数の補間フィルタを適用するように構成された補間回路を含む、第2の集積回路をさらに備え、最良に整合する補間フィルタが、前記時間ビンの幅未満精度で対する前記受信時間を識別する、請求項15に記載の光測距システム。
【請求項18】
前記タイミング回路および前記ヒストグラム回路が、前記光測距システムの動作中専用回路である、請求項13に記載の光測距システム。
【請求項19】
前記センサ集積回路が、特定用途向け集積回路(ASIC)を備える、請求項18に記載の光測距システム。
【請求項20】
前記センサ集積回路が、フィールドプログラマブルゲートアレイ(FPGA)を備える、請求項18に記載の光測距システム。
【請求項21】
前記光源と前記センサ集積回路とに接続されており、かつ前記光源および前記センサ集積回路を回転させる回転モータをさらに備える、請求項13に記載の光測距システム。
【請求項22】
前記光源が、集積回路上に複数のレーザデバイスを含み、前記複数のレーザデバイスが、垂直キャビティ面発光レーザ(VCSEL)である、請求項13に記載の光測距システム。
【請求項23】
光測距システムを使用して測距を実行する方法であって、
前記光測距システムの光源からパルスを送信することであって、前記パルスが物体から反射する、送信することと、
前記光測距システムのピクセルの光センサにより前記パルスの光子を検出し、それにより複数の時点でデータ値を生成することと、
複数の時間ビン内の前記データ値に対応するヒストグラムを決定することであって、特定の時間ビンにおける前記ヒストグラムのカウンタが、前記特定の時間ビン内の1つ以上の時点における1つ以上のデータ値に対応する、決定することと、
前記ヒストグラムに複数のプロファイルフィルタを適用することであって、各プロファイルフィルタが、連続する時間ビンにわたり前記光センサによって検出される異なる光子の率に対応する、適用することと、
前記複数のプロファイルフィルタのうちの第1のプロファイルフィルタを、前記ヒストグラムに最も整合するものとして識別することと、
前記第1のプロファイルフィルタのフィルタ処理された出力を使用して、前記パルスの受信時間を決定することと、
前記受信時間を使用して前記物体までの距離を決定することと、を含む、方法。
【請求項24】
前記光測距システムが、複数のピクセルに対応する複数の光センサと、複数の光源と、を含み、各光センサが、それぞれの光源に対応する、請求項23に記載の方法。
【請求項25】
前記光源から前記パルスを送信することが、第1のパルス列を送信することを含み、前記第1のパルス列が、複数のパルスを含み、前記第1のパルス列の異なるパルスが、前記ヒストグラムの異なる時間ビンに対応する、請求項23に記載の方法。
【請求項26】
前記複数のプロファイルフィルタの各々が、前記第1のパルス列内の前記複数のパルスに対応する多数のタップを含む、請求項25に記載の方法。
【請求項27】
前記ヒストグラムを生成する測定の一部として一連のパルス列を送信することであって、前記一連のパルス列が、前記第1のパルス列を含み、前記一連のパルス列の各々が、複数の時間間隔のうちの異なる時間間隔に対応し、開始信号によってトリガされる、送信することと、
前記ヒストグラムを生成するために、前記複数の時間間隔にわたる前記時間ビン内の時点で前記データ値を累積することと、をさらに含む、請求項25に記載の方法。
【請求項28】
前記一連のパルス列が、
時間ビンの第1のセットに対応する第1のパルスパターンを有する1つ以上のパルス列の第1のセットと、
時間ビンの第2のセットに対応する第2のパルスパターンを有する1つ以上のパルス列の第2のセットと、を含み、
前記データ値を累積することが、
前記1つ以上のパルス列の第1のセットに対する前記データ値に第1の重みを割り当て、それにより第1の加重値を取得することと、
前記1つ以上のパルス列の第2のセットに対する前記データ値に第2の重みを割り当て、それにより第2の加重値を取得することとを含み、前記第1の重みが、前記第2の重みとは異なる、請求項27に記載の方法。
【請求項29】
前記第1の重みが、正であり、前記第2の重みが、負であり、前記ヒストグラムが、バーカーコードを形成する、請求項28に記載の方法。
【請求項30】
最良に整合するプロファイルフィルタを識別することが、
前記複数のプロファイルフィルタの各々について、
前記ヒストグラム上で前記プロファイルフィルタをスライドさせて、前記ヒストグラムに対する前記プロファイルフィルタの異なるスライド位置に対応するカウンタを有するフィルタ処理されたヒストグラムを計算することであって、前記フィルタ処理されたヒストグラムの前記カウンタの各々が、特定のスライド位置での前記プロファイルフィルタと前記ヒストグラムとの重複に対応する、計算することと、
前記フィルタ処理されたヒストグラムの最大値を識別し、それにより、複数のフィルタ処理されたヒストグラムの複数の最大値を取得することと、
前記複数の最大値からグローバル最大値を決定することであって、前記グローバル最大値が、前記第1のプロファイルフィルタおよび前記パルスの前記受信時間に対応する、決定することと、を含む、請求項23に記載の方法。
【請求項31】
前記複数のプロファイルフィルタが、粗フィルタであり、前記第1のプロファイルフィルタの前記フィルタ処理された出力が、前記グローバル最大値が生じる時間ビンを含む時間窓を含み、前記第1のプロファイルフィルタの前記フィルタ処理された出力を使用して前記パルスの前記受信時間を決定することが、
前記第1のプロファイルフィルタに対応する複数の補間フィルタを識別することと、
前記時間窓内の前記ヒストグラムに前記複数の補間フィルタを適用することであって、前記複数の補間フィルタの各々が、対応する時間ビン内に異なる値のパターンを有する、適用することと、
前記時間窓内の前記ヒストグラムに最も整合する第1の補間フィルタを識別することと、
前記第1の補間フィルタの前記値のパターンに基づいて前記受信時間を決定することと、を含む、請求項30に記載の方法。
【請求項32】
前記複数のプロファイルフィルタが、粗フィルタであり、前記第1のプロファイルフィルタの前記フィルタ処理された出力が、フィルタ処理されたヒストグラムと、前記グローバル最大値が生じる時間ビンを含む時間窓と、を含み、前記第1のプロファイルフィルタの前記フィルタ処理された出力を使用して前記パルスの前記受信時間を決定することが、
前記第1のプロファイルフィルタに対応する複数の補間フィルタを識別することと、
前記時間窓内の前記フィルタ処理されたヒストグラムに前記複数の補間フィルタを適用することであって、前記複数の補間フィルタの各々が、対応する時間ビン内に異なる値のパターンを有する、適用することと、
前記時間窓内の前記フィルタ処理されたヒストグラムに最も整合する第1の補間フィルタを識別することと、
前記第1の補間フィルタの前記値のパターンに基づいて前記受信時間を決定することと、を含む、請求項30に記載の方法。
【請求項33】
前記受信時間を使用して前記物体までの前記距離を決定することが、前記第1の補間フィルタの前記値のパターンに基づいて決定された前記受信時間と、前記パルスの送信時間との間の差を決定することを含む、請求項32に記載の方法。
【請求項34】
前記複数のプロファイルフィルタが、第2レベルのプロファイルフィルタであり、前記ヒストグラムに前記複数のプロファイルフィルタを適用することが、
前記ヒストグラムに第1レベルのフィルタを適用して、フィルタ処理されたヒストグラムを取得することと、
前記フィルタ処理されたヒストグラムに前記第2レベルのプロファイルフィルタを適用して、複数のフィルタ処理された出力を取得することと、を含む、請求項32に記載の方法。
【請求項35】
前記複数のプロファイルフィルタの各々が、非ゼロ値を有する、異なる数の連続する時間ビンを有する、請求項23に記載の方法。
【請求項36】
前記非ゼロ値を有する、前記異なる数の連続する時間ビンが、受信パルスの幅に対応し、前記複数のプロファイルフィルタのうちの少なくとも1つの幅が、前記受信パルスが反射した物体のタイプに対応する、請求項35に記載の方法。
【請求項37】
前記複数のプロファイルフィルタの各々が、複数の補間フィルタを含み、前記複数の補間フィルタの各々が、非ゼロ値の異なるパターンを有し、それにより、前記受信時間を、時間ビンの時間単位未満の解像度で決定することを可能にする、請求項35に記載の方法。
【請求項38】
前記光センサが、複数の光検出器を備え、前記ヒストグラムの各カウンタが、前記特定の時間ビン内の時点で、前記複数の光検出器のうちのいくつがトリガされたかに対応する、請求項23に記載の方法。
【請求項39】
前記光センサによって検出される前記異なる光子の率が、トリガされた後の光検出器の不感時間の結果として発生し、前記光検出器が、前記不感時間内に光子を検出せず、前記不感時間が、時間ビンより長い、請求項38に記載の方法。
【請求項40】
検出される高い光子の率が、後の時間ビンの間よりも初期の時間ビンの間により大きい数の光検出器がトリガすることに対応し、低い率が、後の時間ビンの間よりも初期の時間ビン間にほぼ同じ数の光検出器がトリガすることに対応する、請求項39に記載の方法。
【請求項41】
前記複数の光検出器が、単一光子アバランシェダイオード(SPAD)を含む、請求項38に記載の方法。
【請求項42】
前記データ値が、前記複数の光検出器の各々からのそれぞれの信号から決定され、前記方法が、
前記それぞれの信号の各々を閾値と比較して、対応する光検出器がトリガされたかどうかを判断することと、
前記それぞれの信号が前記閾値よりも大きい場合、トリガを示すバイナリ値をヒストグラム回路に送信し、前記ヒストグラム回路が、前記複数の光検出器にわたってバイナリ値を集約して、特定の時間ビン中にトリガされた光検出器の数を決定することと、をさらに含む、請求項38に記載の方法。
【請求項43】
前記それぞれの信号が、アナログ信号である、請求項42に記載の方法。
【請求項44】
光測距システムを使用して測距を実行する方法であって、
測距測定の一部として光源からN個のパルス列を送信することであって、前記N個のパルス列の各々が、前記光源からの1つ以上のパルスを含み、かつ開始信号によってトリガされる異なる時間間隔に対応し、前記N個のパルス列が物体から反射し、Nは1より大きい整数である、送信することと、
前記光測距システムのピクセルの光センサにより前記N個のパルス列の光子を検出し、それにより複数の時点でデータ値を生成することと、
複数の時間ビン内の前記データ値に対応するヒストグラムを決定することであって、特定の時間ビンにおける前記ヒストグラムのカウンタが、前記特定の時間ビン内の1つ以上の時点における1つ以上のデータ値に対応し、前記N個のパルス列が互いに異なる変化するオフセットを有し、前記N個のパルス列のうちの少なくとも2つが、時間ビンの幅未満でオフセットされる、決定することと、
前記開始信号に対する前記N個のパルス列に対応する受信時間を決定することと、
前記受信時間を使用して前記物体までの距離を決定することと、を含む、方法。
【請求項45】
前記N個のパルス列の各々が、1つ以上のパルスの同じパターンを有する、請求項44に記載の方法。
【請求項46】
前記N個のパルス列が、前記測距測定の前記パルス列のすべてである、請求項44に記載の方法。
【請求項47】
前記N個のパルス列の連続するパルス列が、時間オフセットTだけオフセットされる、請求項44に記載の方法。
【請求項48】
Nに前記時間オフセットTを乗算したものが、時間ビンの幅に等しい、請求項47に記載の方法。
【請求項49】
前記受信時間を決定することが、
前記ヒストグラムに整合フィルタを適用して、フィルタ処理されたヒストグラムを取得することと、
前記フィルタ処理されたヒストグラムの最大値および前記時間オフセットTを使用して、前記受信時間を決定することと、を含む、請求項47に記載の方法。
【請求項50】
前記時間オフセットTが、前記時間ビンの幅の0.5~0.01の間にある、請求項49に記載の方法。
【請求項51】
前記時間オフセットTが、前記時間ビンの幅の0.1である、請求項50に記載の方法。
【請求項52】
光測距システムを使用して測距を実行する方法であって、
前記光測距システムのピクセルの光センサにより光子を検出し、それにより複数の時間ビンにおける初期データ値を生成することであって、前記光センサが複数の光検出器を含む、生成することと、
前記初期データ値に基づいて、前記検出された光子の強度レベルを決定することと、
前記光測距システムの光源から第1のパルスを送信することであって、前記第1のパルスが、物体から反射する、送信することと、
前記第1のパルスの光子を検出する前に、前記決定された強度レベルに基づいて、前記光検出器のセットの動作状態を変更することと、
前記変更された動作状態に応じて、アクティブ動作中の光検出器によって前記第1のパルスの光子を検出し、それにより前記複数の時間ビンにおける第1のデータ値を生成することと、
前記複数の時間ビンにおける前記第1のデータ値を使用して、前記第1のパルスに対応する受信時間を決定することと、
前記受信時間を使用して前記物体までの距離を決定することと、を含む、方法。
【請求項53】
前記光検出器のセットが、前記複数の光検出器のすべてである、請求項52に記載の方法。
【請求項54】
前記動作状態が、前記光検出器のセットの電力レベルまたは減衰レベルである、請求項52に記載の方法。
【請求項55】
前記光検出器のセットの前記動作状態が、どの光検出器のどの信号を使用して前記複数の時間ビンにおける前記第1のデータ値を生成するかを指定することにより変更され、それにより、どの光検出器がアクティブ動作中であるかを指定する、請求項52に記載の方法。
【請求項56】
前記決定された強度レベルが、高閾値を上回り、前記決定された強度レベルに基づいて、前記光検出器のセットの前記動作状態を変更することが、
前記光検出器のセットの減衰レベルを増加させることを含む、請求項52に記載の方法。
【請求項57】
前記決定された強度レベルが、低閾値を下回り、前記決定された強度レベルに基づいて、前記光検出器のセットの前記動作状態を変更することが、
前記光検出器のセットの減衰レベルを減少させることを含む、請求項52に記載の方法。
【請求項58】
前記光センサが、
低感度を有するものとして分類された光検出器の第1のセットと、
高感度を有するものとして分類された光検出器の第2のセットと、を備え、前記光検出器の第1のセット、または前記光検出器の第2のセットの前記動作状態が、他方ではなく、前記決定された強度レベルに基づいて変更される、請求項52に記載の方法。
【請求項59】
前記決定された強度レベルに基づいて、前記光検出器の第1のセットの前記動作状態を変更することが、
前記決定された強度レベルが高閾値を上回る場合、前記光検出器の第2のセットのうちの1つ以上の電力レベルを低下させることを含む、請求項58に記載の方法。
【請求項60】
前記決定された強度レベルが、明るい背景光源の結果である、請求項59に記載の方法。
【請求項61】
前記光検出器の第2のセットのうちの前記1つ以上の前記電力レベルを低下させることが、前記光検出器の第2のセットのうちの前記1つ以上をオフにすることを含む、請求項59に記載の方法。
【請求項62】
前記決定された強度レベルに基づいて、前記光検出器の第1のセットの前記動作状態を変更することが、
前記決定された強度レベルが低閾値を下回るときに、前記光検出器の第1のセットのうちの1つ以上の電力レベルを低下させることを含む、請求項58に記載の方法。
【請求項63】
前記光検出器の第1のセットのうちの前記1つ以上の前記電力レベルを低下させることが、前記光検出器の第1のセットのうちの前記1つ以上をオフにすることを含む、請求項62に記載の方法。
【請求項64】
前記光センサが、中間感度を有するものとして分類された光検出器の第3のセットを含み、前記方法が、
前記第1のパルスの光子を検出する前に、前記光検出器の第1のセットまたは前記光検出器の第2のセットのうちの1つの前記動作状態を変更したことに加えて、前記決定された強度レベルに基づいて、前記光検出器の第3のセットの前記動作状態を変更することをさらに含む、請求項58に記載の方法。
【請求項65】
前記初期データ値を提供する前記検出された光子が、背景光に対応する、請求項52に記載の方法。
【請求項66】
前記光測距システムの前記光源から初期パルスを送信することをさらに含み、前記初期パルスが、前記物体から反射し、前記初期データ値を提供する前記検出された光子が、前記初期パルスに対応し、
前記受信時間が、前記複数の時間ビンにおける前記第1のデータ値および前記初期データ値を使用して、前記第1のパルスおよび前記初期パルスについて決定される、請求項52に記載の方法。
【請求項67】
前記物体が反射性である結果として、前記決定された強度レベルが、高閾値を上回り、前記方法が、
前記決定された強度レベルが高閾値を上回ることに応じて、前記光検出器のセットの前記動作状態を低下させることをさらに含む、請求項66に記載の方法。
【請求項68】
前記変更された動作状態が、指定された時間維持される、請求項52に記載の方法。
【請求項69】
前記指定された時間が、パルス列の数に関して定義される、請求項68に記載の方法。
【請求項70】
前記光測距システムが、回転し、前記光測距システムの角度位置を識別するエンコーダを含み、前記方法が、
前記光測距システムが初期角度位置にあるときに前記強度レベルが決定されることを識別することをさらに含み、前記光測距システムが1回以上回転した後に、前記初期角度位置に戻るときに前記第1のパルスが送信される、請求項52に記載の方法。
【請求項71】
前記決定された強度レベルに基づいて、前記光源から放出される1つ以上のパルスの強度を変更することをさらに含む、請求項52に記載の方法。
【請求項72】
請求項1~12および23~71のいずれか一項に記載の方法の動作を実行するコンピュータシステムを制御するための複数の命令を格納するコンピュータ可読媒体を備える、コンピュータ製品。
【請求項73】
請求項72に記載のコンピュータ製品と、
前記コンピュータ可読媒体上に格納された命令を実行するための1つ以上のプロセッサと、を備える、システム。
【請求項74】
請求項1~12および23~71のいずれか一項に記載の方法を実行する手段を備える、システム。
【請求項75】
請求項1~12および23~71のいずれか一項に記載の方法を実行するように構成された1つ以上のプロセッサを備える、システム。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
本出願は、2017年3月1日に出願された「System And Method Of Object Detection Using Coded Optical Pulses」と題する米国仮出願第62/465,310号、および2017年12月7日に出願された「Accurate Photo Detector Measurements For Lidar」と題する米国仮特許出願第62/596,002号の優先権を主張し、かつこれらの正規の出願であり、これらのすべての内容は、あらゆる目的において参照することにより本明細書に組み込まれる。
【背景技術】
【0002】
光検知および測距(ライダー)(Light Detection And Ranging(LIDAR))システムは、例えば、乗用車、トラック、ボートなどの車両のために物体の検出および測距に使用される。ライダーシステムは、モバイルアプリケーション(例えば、顔認識のため)、ホームエンターテイメント(例えば、ビデオゲーム入力のためにジェスチャキャプチャをキャプチャするため)、および拡張現実にも用途を有する。ライダーシステムは、レーザからのパルスを風景に照射し、ライダーシステムの受信機により測定される、光子が物体まで移動して、反射後に戻るまでの時間を測定することにより、物体までの距離を測定する。検出信号を分析して、背景光の中の反射信号パルスの存在を検出する。物体までの距離は、パルスの送信から対応する反射パルスの受信までの飛行時間に基づいて決定され得る。
【0003】
すべての条件で、特にライダーシステムの経済的なコストで、数cmまでの堅牢な距離精度を提供することは困難であり得る。単一光子アバランシェダイオード(SPAD)などの有望な新しい検出器技術は魅力的だが、特に広範囲の周囲条件および目標距離にわたって飛行時間および他の信号特性を測定するために使用される場合、限られたダイナミックレンジに起因する重大な欠点を有する。
【0004】
ライダーシステムは、現実世界の様々な条件下で反射レーザパルスを検出し、その飛行時間を測定するより正確な方法の恩恵を受ける。SPADベースのライダーシステムは、経済的で長距離の正確な3Dイメージングの実行可能なオプションになる前に、固有の欠点を克服する新しい方法を必要とする。また、2つ以上のライダーデバイスが互いに干渉することなく、近接して動作することが望ましい。ライダーシステムが、精度を犠牲にすることなく、エネルギー効率の高い方法で動作することがさらに望ましい。
【発明の概要】
【0005】
様々な実施形態は、ライダーシステムに関する上記の問題に対処することができる。例えば、ライダー受信機の整合フィルタのセットは、分析される各信号プロファイルに対して最良に整合するフィルタが識別され得るように、予測信号プロファイル(パルス形状)のセットのうちの1つに各フィルタが整合するよう調整することができる。予測信号プロファイルの各々は、名目上同じテンプレート信号プロファイルからのものであるが、デジタル化プロセス、外部環境要因、またはその両方によって課される歪みのために異なる場合がある。ライダーのようなアクティブ照明センサでは、テンプレート信号は、センサから出て行く照明の時間的形状に対応し得る(通常はパルスまたはパルスのシーケンス)。適切な整合フィルタをリターン信号に適用すると、反射信号を正確に検出する確率、反射信号を適時に見つける精度、または反射信号の他の特性を決定する精度を改善し得、それにより、信号が反射した標的に関する情報を与えることができる。
【0006】
したがって、いくつかの実施形態は、SPAD誘発歪みを修正し、信号および標的特性のより良好な理解を同時に提供することができる。単一光子アバランシェダイオード(SPAD)は、「パイルアップ」と称される効果で、信号の電力および時間分布に応じて光信号に様々なレベルの歪みを課す可能性がある。パイルアップのシナリオでは、すべてが単一のピクセルとして動作する多くのSPADが、強力な反射信号パルスの前縁でトリガされ、それにより、最初のトリガの後には、ピクセル内のますます多くの割合のSPADがデッドタイム状態に縛られているため、反射信号の後縁でトリガするために利用可能なSPADの数が減少する。より弱い信号のシナリオでは、より均一な数のSPADが反射信号パルスの持続時間にわたってトリガするので、反射パルス形状がより正確にデジタル化される。各々が異なる度合いの信号パイルアップに調整された複数の整合フィルタプロファイルを実行することにより、受信信号に最良に整合するフィルタプロファイルが、より一貫した信号検出を実現し、反射パルスのより正確な受信時間を推定し得る。より正確な時間推定が、距離(測距)測定の精度を直接改善し得る。受信信号に最良に整合するプロファイルを有する補間フィルタの第2のバンクを使用することにより、さらに精度を高めることができる。
【0007】
別の例として、累積された信号(例えば、トリガされた光検出器のヒストグラム)が望ましい特性(例えば、自己相関特性)を有するパターンを有するように、送信パルスをコード化することができる。累積された信号は、各々が1つ以上のパルスである複数のパルス列に対応し得、各パルス列は異なる時間間隔に対応し得る(例えば、次のパルス列が送信される前にパルス列が送信および検出される)。コーディングは、異なる時間間隔中に送信されたパルス列に異なる(例えば、正の、および負の)重みを割り当てることにより実行できる。このような重み付けにより、累積信号がバーカーコードまたはより複雑な直交コードになり得る。このようなコード化されたパルスは、各々が異なるコードを使用できるため、隣接する光測距システムからの干渉を低減できる。また、特定のコードが、例えば、負のサイドローブを有する正のピークを提供する整合フィルタを使用して、受信パルスの時間位置を検出するための高精度を提供できる。
【0008】
別の例として、異なるパルス列を互いにオフセットすることができる。例えば、パルス列を、(例えば、スタガリングのために)前のパルス列に対して(例えば、累積信号の時間分解能未満で)オフセットして、それにより、向上した時間分解能を提供することができる。累積信号が、異なるパルス列にわたるデジタル化信号で構成されるヒストグラムである場合、それらがヒストグラムの異なる時間ビンに記録されるように、オフセットによりパルスをずらすことができる。このスタガリングにより、時間ビンの始めに検出されたパルスと時間ビンの終わりに検出されたパルスとを区別することができ、時間分解能が向上する。
【0009】
別の例として、以前に検出された光子の決定された強度レベルに応じて、光センサの光検出器(例えば、SPAD)のセットの動作を変更することができる。決定された強度レベルは、特定の将来の測定のための推定値として使用することができる(例えば、回転するライダーシステムの時間的に近い、または同じ角度位置)。様々な実装態様において、動作状態の変更により、電力使用量が改善され得(例えば、有用な信号を提供すると予想されない光検出器をオフにするか、もしくはそれらの電力を低減することにより)、または光検出器のダイナミックレンジが改善され得る(例えば、光検出器が有用な信号を提供するように減衰レベルを変更することにより)。例えば、異なる光検出器が、光子を検出するために異なる感度レベルを有することがあり、例えば、いくつかの光検出器は、他の光検出器よりも頻繁に光子を検出することがある。強い信号が(例えば、背景光源から)受信される場合、高感度の光検出器(例えば、絶対応答度または他の近くの光検出器に比べて高い応答度などの、強い信号レベルを提供するもの)をオフにすることができ、このような光検出器はいつでもトリガするため、その信号は物体から反射された検出パルスに対応しないであろう。同様に、信号が弱い場合、例えば、感度が弱い光検出器は弱い信号に対してはトリガしないであろうから、そのような検出器をオフにすることができる。このように、特定の時間および/または位置に対して有意味な信号を提供しない光検出器の動作を低減することによりエネルギーを節約することができ、検出器は、歪みのないダイナミックレンジを拡大できる。
【0010】
別の例として、単一の集積回路は、光センサと、信号処理コンポーネントと、を含むことができる。例えば、集積回路のタイミング回路は、光子が検出された時間を決定することができ、ヒストグラム回路は、測定の複数の検出時間間隔にわたって検出された光子の数を累積することができる。
【0011】
本発明のこれらおよび他の実施形態を以下に詳細に説明する。例えば、他の実施形態は、本明細書に記載の方法に関連付けられたシステム、デバイス、およびコンピュータ可読媒体に関する。
【0012】
本発明の実施形態の性質および利点に関するより良好な理解は、以下の詳細な説明および添付の図面を参照して得ることができる。
【図面の簡単な説明】
【0013】
【
図1A】いくつかの実施形態による、本明細書でライダーシステムとも称される自動車用光測距デバイスを示す。
【
図1B】いくつかの実施形態による、本明細書でライダーシステムとも称される自動車用光測距デバイスを示す。
【
図2】様々な実施形態を実施するための例示的なライダーデバイスのブロック図を示す。
【
図3】実施形態により改善され得る典型的なライダーシステムの動作を示す。
【
図4】いくつかの実施形態による、光測距システムの光送信および検出プロセスの例示的な一実施例を示す。
【
図5】本発明の実施形態による、センサアレイおよび関連する電子機器の様々なステージを示す。
【
図6】本発明の実施形態によるヒストグラムを示す。
【
図7】本発明の実施形態による、選択されたピクセルに対する複数のパルス列にわたるヒストグラムの累積を示す。
【
図8】本発明の実施形態による、光センサから出力される3つの異なるタイプのデジタル化信号プロファイルを示す。
【
図9】本発明の実施形態による、生のヒストグラムに整合フィルタを適用するための一連の位置を示す。
【
図10A】本発明の実施形態による、異なるコード化パルスタイプによって生成される整合フィルタ応答(フィルタ処理された出力)のタイプを示す。
【
図10B】本発明の実施形態による、異なるコード化パルスタイプによって生成される整合フィルタ応答(フィルタ処理された出力)のタイプを示す。
【
図10C】本発明の実施形態による、異なるコード化パルスタイプによって生成される整合フィルタ応答(フィルタ処理された出力)のタイプを示す。
【
図11】本発明の実施形態による、コード化パルス光学システム(CPOS)の動作を示す例示的な概略図である。
【
図12】本発明の実施形態による、2つのバイナリコード化パルス強度、ならびに正および負の値を有するコード化パルス列を提供するそれらの差を示す。
【
図13】本発明の実施形態によるコード化パルス光学システム(CPOS)を示す。
【
図14】本発明の実施形態による、光学測定システムにおいてコード化パルスを使用する方法1400を示すフローチャートである。
【
図15】本発明の実施形態による、生のヒストグラムに適用される複数のプロファイルフィルタを示す。
【
図16】本発明の実施形態による、第1レベルのフィルタからのフィルタ処理された出力への異なる第2レベルのプロファイルフィルタの適用を示す。
【
図17】本発明の実施形態による、中程度のパイルアップ信号に適用される2つのレベルのフィルタを使用するプロセスフローを示す図である。
【
図18】本発明の実施形態による、生のヒストグラムへの異なる補間フィルタの適用を示す。
【
図19】本発明の実施形態による、複数の粗フィルタを使用する2レベルフィルタ処理スキームを示す図である。
【
図20】本発明の実施形態による、コード化パルス、整合フィルタ、および対応するフィルタ出力から生じる生のヒストグラムを示す。
【
図21】本発明の実施形態による最大windower結果を示す。
【
図22】本発明の実施形態による、異なる幅を有する複数の粗プロファイルフィルタの適用を示す。
【
図23】本発明の実施形態によるフィルタ処理光学システムを示す。
【
図24】本発明の実施形態による、光測距システムのプロファイルフィルタを使用して測距を実行する方法を示すフローチャートである。
【
図25A】シーンを照明するためにライダーシステムで通常使用される単一の方形パルスを示す。
【
図25B】何らかのノイズを有する反射パルスを示す。
【
図25C】本発明の実施形態による、反射パルスの立ち上がりエッジで検出された高パイルアップ信号を示す。
【
図26】本発明の実施形態による、得られたヒストグラムのSPAD信号を示す。
【
図27A】1つのビンのみがかなりの値を有するヒストグラムをもたらす、互いに対して遅延している異なるパルス列のパルスの2つのインスタンスを示す。
【
図27B】1つのビンのみがかなりの値を有するヒストグラムをもたらす、互いに対して遅延している異なるパルス列のパルスの2つのインスタンスを示す。
【
図28A】本発明の実施形態による、検出された高パイルアップパルスが複数の時間ビンに及ぶように、異なるパルス列の互い違いに放出されたパルスの例を示す。
【
図28B】本発明の実施形態による、検出された高パイルアップパルスが複数の時間ビンに及ぶように、異なるパルス列の互い違いに放出されたパルスの例を示す。
【
図29】本発明の実施形態による、光測距システムにおいてスタガパルスを使用して測距を実行する方法を示すフローチャートである。
【
図30A】本発明の実施形態による、単一ピクセル光センサを形成する16個の光検出器3002(例えば、SPAD)の規則的な配置を示す。
【
図30B】本発明の実施形態による、異なる減衰レベルを有する16個の光検出器の配置を示す。
【
図30C】本発明の実施形態による、異なる減衰レベルおよび異なるアクティブ動作を有する16個の光検出器の配置を示す。
【
図31】本発明の実施形態による、異なる角度の異なる照明条件でのピクセルセンサの異なる検出器配置の図を示す。
【
図32】本発明の実施形態による、中央領域の光検出器とは異なる動作状態を有する周囲の光検出器の配置を示す。
【
図33】本発明の実施形態による、構成可能な光学システムを示す。
【
図34】は、本発明の実施形態による、構成可能な光測距システムを使用して測距を実行する方法を示すフローチャートである。
【
図35】本発明の実施形態による、光測距システムのコンパクトな光学システムを示す。
【0014】
[用語]
「測距」という用語は、特に環境を測定する、または車両の操作を支援する方法およびデバイスの文脈で使用される場合、ある場所または位置から別の場所または位置までの距離または距離ベクトルを決定することを指し得る。「光測距」は、電磁波を使用して測距の方法または機能を実行するタイプの測距法を指し得る。したがって、「光測距デバイス」は、光測距の方法または機能を実行するためのデバイスを指し得る。「ライダー」(LidarまたはLIDAR)は、パルスレーザ光で標的を照明することにより標的までの距離を測定し、その後、反射パルスをセンサで測定するタイプの光測距法を指し得る。したがって、「ライダーデバイス」または「ライダーシステム」は、ライダーの方法または機能を実行するための一種の光測距デバイスを指し得る。「光測距システム」は、例えばライダーデバイスなどの、少なくとも1つの光測距デバイスを備えるシステムを指し得る。このシステムは、様々な配置において、1つ以上の他のデバイスまたはコンポーネントをさらに備えてもよい。
【0015】
「パルス列」は、共に送信される1つ以上のパルスを指し得る。パルス列の放出および検出は「ショット」と称され得る。ショットは、「検出時間間隔」(または「検出間隔」)にわたって発生し得る。
【0016】
「測定」は、各々が検出時間間隔にわたって持続する、N個のショットにわたって放出および検出されるN個の複数のパルス列を含む場合がある。1つの測定全体が、測定のN個の検出間隔に等しいか、または、例えば検出間隔間で一時停止が発生する場合、より長くなり得る測定時間間隔(または単に「測定間隔」)を超えることがある。
【0017】
「光センサ」は、光を電気信号に変換できる。光センサは、複数の「光検出器」、例えば、単一光子アバランシェダイオード(SPAD)を含み得る。光センサは、測距測定の解像度の特定のピクセルに対応し得る。
【0018】
「ヒストグラム」は、時間ビンにわたって離散化された、経時的な一連の値を表す任意のデータ構造を指し得る。ヒストグラムは、各時間ビンに割り当てられた値を有し得る。例えば、ヒストグラムは、1つ以上の検出間隔の各々の特定の時間ビン中に起動された光検出器の数のカウンタを格納できる。別の例として、ヒストグラムは、様々な時点でのアナログ信号のデジタル化に対応し得る。光検出器は、信号を生成し、その信号がヒストグラムの生成に使用されるときに「アクティブ動作」になり得る。ヒストグラムは、信号(例えば、パルス)およびノイズを含むことがある。したがって、ヒストグラムは、光子の時系列または光子束としての信号とノイズとの組み合わせと見なすことができる。生の/デジタル化されたヒストグラム(または累積光子時系列)は、フィルタ処理せずにメモリにデジタル化信号およびノイズを含むことができる。「フィルタ処理されたヒストグラム」は、生のヒストグラムがフィルタを通過した後の出力を指し得る。
【0019】
放出信号/パルスは、歪んでいない「公称」、「理想」、または「テンプレート」パルスまたはパルス列を指し得る。反射信号/パルスは、物体からの反射レーザパルスを指し得、歪んでいることがある。デジタル化信号/パルス(または生の信号)は、メモリに格納された、検出間隔の1つ以上のパルス列の検出からのデジタル化された結果を指し得、したがってヒストグラムの一部に相当し得る。検出信号/パルスは、信号が検出されたメモリ内の場所を指し得る。検出パルス列は、整合フィルタによって見つけられた実際のパルス列を指し得る。予測信号プロファイルは、反射信号内に特定の歪みを有する特定の放出信号から生じるデジタル化信号の形状を指し得る。
【発明を実施するための形態】
【0020】
本開示は、一般に、物体検出および測距の分野に関し、より具体的には、リアルタイム3次元マッピングおよび物体検出、追跡および/または分類などの用途のための飛行時間型光受信機システムの使用に関する。本発明の様々な実施形態により、様々な改善を実現することができる。そのような改善は、精度の向上、ノイズの削減、およびエネルギー効率の向上であり得る。
【0021】
精度を高めるために、いくつかの実施形態は、基本的な動作特性の結果としての測定データの非線形歪みを考慮することができる(例えば、不感時間およびアフタパルス)。例えば、実施形態は、連続する時間ビン内で検出される異なる光子の率を考慮することができる。例えば、光子を検出した後、単一光子アバランシェダイオード(SPAD)は、その後はSPADが新しい光子を検出できない、不感時間の期間(1~100ns)を有する。したがって、強いパルスが光センサの多くのSPADを一度に起動させて、その後不感時間中に起動されるSPADの数が減少し、通常のパルスの場合とは異なるデジタル化信号のプロファイルをもたらす可能性がある。光子検出率のこのような変化が、反射パルスが受信される正確な時間を決定する際にエラーを引き起こす可能性がある。例えば、信号がほぼ方形のパルスから歪んでいることがあるため、光のパルスの受信時間を決定することが困難であり得、それにより、物体からの距離を決定することが難しくなる可能性がある。このような異なる光子検出率は、他のタイプの光検出器でも発生する可能性がある。そのような異なるプロファイルに対処するために、実施形態は、異なるプロファイルを有するフィルタを使用し、最良に整合するフィルタを選択することができる(例えば、デジタル化信号のピークだけでなく、反射パルスの正確な受信時間を決定するため)。
【0022】
(例えば、背景光または近くのライダーデバイスによる干渉からの)ノイズを低減するために、実施形態は、異なる検出時間間隔で異なるコード化パルスパターン(パルス列)を送信できる。異なるコード化パルスパターンに異なる重みを割り当てることができ、それにより、望ましい特性を有し得る累積された信号の容易に識別可能なパターンを提供することができる。例えば、第1の送信パルス列は、5つの時間単位(時間ビン)にわたって{1、1、0、0、1}のパルスパターンを有することができる。第2の送信パルス列は、{0、0、1、1、0}のパルスパターンを有することができる。第1のパルス列に+1の重みを付け、第2のパルス列に-1の重みを付けることができ、それにより、所定の測定に対して{1、1、-1、-1、1}のパターンを有する累積信号を提供することができる。さらに複雑な重み付けスキーム、例えば、非整数の重みや異なる次元の重み付けを使用することができる。さらに、遅延を加えることにより異なるパルスパターンを実現でき、例えば、{1、1、0、0}は、{0、1、1、0}のパターンになることができる。
【0023】
精度をさらに高めるために、特に信号パルスが単一のヒストグラムビンのみを占有する場合(例えば、時間ビンの分解能よりも高い分解能まで)、測定プロセスは連続するパルス列を(例えば、連続する各パルス列に対して同じオフセットで)ずらすことができ、それにより、異なるパルス列のデジタル化パルスの累積ヒストグラムが1つを超える時間ビンにまたがることが確実になる。このようにして、第1のパルスが時間ビンの最初、中間、または最後に受信されたかどうかを判断できる。例えば、測定分解能(例えば、時間ビンの幅)は1nsであり得、10個の連続したパルス列がそれぞれ、前のパルス列に対して100ピコ秒遅延され得る。したがって、2つの連続した時間ビンがほぼ同じ検出値を有する場合(例えば、第1の時間ビン内に5つのパルスが検出され、第2の時間ビン内に5つのパルスが検出された場合)、第1のパルスは、第1の時間ビンの真ん中で到達する前縁を有するであろう。
【0024】
エネルギー効率を高め、パイルアップに誘発される歪みを減らすために、以前に検出された光子の強度レベルに基づいて、光検出器のセットの動作を変更することができる。決定された強度レベルが特定の将来の測定で(例えば、時間的に近くで、または回転するライダーシステムと同じ角度位置で)再び発生すると推定できる。例として、動作状態の変更により、電力使用量が改善され得(例えば、有用な信号を提供すると予想されない光検出器をオフにするか、またはそれらの電力を低減することにより)、もしくは光検出器のダイナミックレンジが改善され得る(例えば、光検出器が有用な信号を提供するように減衰レベルを変更することにより)。例えば、光センサの異なる光検出器(例えば、SPAD)に、異なる照明環境で異なる動作をさせることができる。例えば、強い背景光を有する、または強い信号を反射する高反射面に垂直に向いた方向では、敏感な光検出器の電力レベルを低下させる(例えば、オフにする)ことができ、さもなければ、それらが急速に起動して、測距情報をほとんど提供しないか、または大量の電力を消費するであろう。他の環境では、感度の低い光検出器の動作状態を変更することができる。例えば、弱い信号を有する方向では、このような弱い光検出器が起動しない可能性があるため、このような弱い光検出器の減衰レベルを下げることができ、それにより光検出器が低光束環境で光子を検出することが可能になる。
【0025】
同じ集積回路上に光センサ(例えば、各々がSPADの集合体)と信号処理コンポーネントとを有することにより、さらなる利点(例えば、コストおよびやサイズ)が実現され得る。例えば、集積回路のタイミング回路は、光子が検出された時間を決定することができ、ヒストグラム回路は、測定の複数の検出時間間隔にわたって検出されたパルスの値を累積することができる。SPADまたは同様の光検出器を使用して、そのような回路のすべてを組み合わせた能力を単一の集積回路上に提供することができる。
【0026】
以下のセクションで例示的な自動車用ライダーシステムを紹介し、光測距システムによって信号を検出するための例示的な技術の続く説明、そして次に、異なる実施形態をより詳細に説明する。
【0027】
I.例示的な自動車用ライダーシステム
図1Aおよび1Bは、いくつかの実施形態による、本明細書でライダーシステムとも称される自動車用光測距デバイスを示す。ライダーシステムの自動車用途は、ここでは単に説明のために選択したものであり、本明細書で説明されるセンサは、例えば、ボート、航空機、列車などの他の種類の車両で、ならびに医用イメージング、携帯電話、拡張現実、測地学、ジオマティクス、考古学、地理学、地質学、地形学、地震学、林業、大気物理学、レーザ誘導、空中レーザスワスマッピング(ALSM)、レーザ高度計などの、3D深度画像が有用な様々な他の用途で、利用され得る。いくつかの実施形態では、
図1Aおよび
図1Bに示されるように、例えば、スキャニングライダーシステム101および/またはソリッドステートライダーシステム103などのライダーシステムを車両105の屋根に取り付けることができる。
【0028】
図1Aに示されるスキャニングライダーシステム101は、ライダー光源107および/または検出器回路109の向きが、車両105の外側の外部フィールドまたはシーン内の1つ以上の視野110の周りをスキャンされ得るスキャンアーキテクチャを使用することができる。スキャンアーキテクチャの場合、放射光111は、示されているように周囲環境にわたってスキャンされ得る。例えば、ライダーシステム101内に位置付けられた1つ以上の光源(赤外線または近赤外線パルスIRレーザなど、図示せず)の出力ビーム(複数可)は、車両の周りのシーンを照明するためにスキャン、例えば回転され得る。いくつかの実施形態では、回転矢印115によって表されるスキャンは、機械的手段、例えば、発光体を回転柱または回転プラットフォームに取り付けることによって実施することができる。いくつかの実施形態では、スキャンは、検流計の使用などの他の機械的手段を通じて実施することができる。例えば、デジタルマイクロミラー(DMD)デバイス、デジタル光処理(DLP)デバイスなどの1つ以上のMEMSベースの反射器を使用するマイクロチップを使用するなど、チップベースのステアリング技術を使用することもできる。いくつかの実施形態では、スキャンは、非機械的手段を介して、例えば、電子信号を使用して1つ以上の光フェーズドアレイを操縦することにより達成することができる。
【0029】
図1Bに示すソリッドステートライダーシステム103のような固定アーキテクチャの場合、1つ以上のソリッドステートライダーサブシステム(例えば、103aおよび103b)を車両105に取り付けることができる。各ソリッドステートライダーユニットは、各ユニットがそれ自体でキャプチャできるよりも大きい複合視野をキャプチャできるように、異なる方向を(おそらくユニット間で部分的に重複するおよび/または非重複の視野を有して)向くことができる。
【0030】
スキャンアーキテクチャまたは固定アーキテクチャのいずれかで、シーン内の物体は、ライダー光源から放出される光パルスの一部分を反射することができる。その後、1つ以上の反射部分がライダーシステムに戻り、検出器回路により検出され得る。例えば、反射部分117は、検出器回路109によって検出され得る。検出器回路は、エミッタと同じハウジング内に配設され得る。スキャンシステムおよび固定システムの態様は相互に排他的ではないため、組み合わせて使用され得る。例えば、
図1Bの個々のライダーサブシステム103aおよび103bは、光フェーズドアレイなどの操縦可能なエミッタを使用することができ、あるいは複合ユニット全体が機械的手段を介して回転し、それにより、例えば視野119から視野121まで、ライダーシステムの前方のシーン全体をスキャンすることができる。
【0031】
図2は、いくつかの実施形態による、回転型ライダーシステム200のより詳細なブロック図を示す。より具体的には、
図2は、固定回路基板から電力およびデータを受信(ならびに送信)できる、回転回路基板上のロータリアクチュエータを使用することができる回転型ライダーシステムを任意選択的に示す。
【0032】
ライダーシステム200は、ユーザインターフェース215の1つ以上のインスタンス化と相互作用することができる。ユーザインターフェース215の異なるインスタンス化は変化する可能性があり、例えば、モニタ、キーボード、マウス、CPUおよびメモリを有するコンピュータシステム、自動車のタッチスクリーン、タッチスクリーンを有するハンドヘルドデバイス、または他の適切なユーザインターフェースを含み得る。ユーザインターフェース215は、ライダーシステム200が取り付けられる物体に対してローカルであってもよいが、遠隔操作システムであってもよい。例えば、ライダーシステム200への、またはライダーシステム200からのコマンドおよびデータは、セルラーネットワーク(LTEなど)、パーソナルエリアネットワーク(Bluetooth、Zigbeeなど)、ローカルエリアネットワーク(WiFi、IRなど)、またはインターネットなどの広域ネットワークを介してルーティングすることができる。
【0033】
ハードウェアおよびソフトウェアのユーザインターフェース215は、デバイスからのライダーデータをユーザに提示できるが、ユーザが1つ以上のコマンドでライダーシステム200を制御することを可能にすることもできる。コマンドの例には、ライダーシステムを作動させるまたは不作動にするコマンド、光検出器の露出レベル、バイアス、サンプリング期間、他の動作パラメータ(例えば、放出パルスパターンおよび信号処理)を指定するコマンド、輝度などの発光体パラメータを指定するコマンドが含まれる。さらに、結果を表示する方法をユーザが選択することを、コマンドで可能にすることができる。ユーザインターフェースはライダーシステムの結果を表示することができ、これには、例えば、単一フレームのスナップショット画像、絶えず更新されるビデオ画像、および/または一部またはすべてのピクセルについての他の光測定値の表示が含まれる。いくつかの実施形態では、ユーザインターフェース215は、車両からの物体の距離(近接性)を追跡し、場合によっては運転者に警告を提供したり、運転者の行動の分析のためにそのような追跡情報を提供したりすることができる。
【0034】
いくつかの実施形態では、ライダーシステムは車両制御ユニット217と通信することができ、車両の制御に関連する1つ以上のパラメータは、受信されたライダーデータに基づいて修正することができる。例えば、完全自律走行車両では、ライダーシステムは、ナビゲーションを支援するために、車を取り巻く環境のリアルタイム3D画像を提供できる。他の場合には、ライダーシステムは、先進運転支援システム(ADAS)の一部として、または、例えば、アダプティブクルーズコントロール、自動駐車、運転者の眠気監視、死角監視、衝突回避システムなどの任意の数の異なるシステムに3D画像データを提供できる安全システムの一部として、使用され得る。車両制御ユニット217が光測距デバイス210に通信可能に結合された場合、運転者に警告を提供することができるか、または物体の近傍の追跡を追跡することができる。
【0035】
図2に示されるライダーシステム200は、光測距デバイス210を含む。光測距デバイス210は、測距システムコントローラ250、光送信(Tx)モジュール240、および光感知(Rx)モジュール230を含む。1つ以上の光パルス249を光送信モジュール240から光測距デバイスを囲む視野内の物体に送信することにより、測距データが光測距デバイスによって生成され得る。次いで、透過光の反射部分239が、いくらかの遅延時間の後、光感知モジュール230によって検出される。遅延時間に基づいて、反射面までの距離が決定され得る。例えば連続波、ドップラーなどの他の測距法も使用することができる。
【0036】
Txモジュール240は、エミッタの1次元または2次元アレイであり得るエミッタアレイ242と、Tx光学システム244とを含み、これらが組み合わされると、マイクロ光学エミッタチャネルのアレイを形成し得る。エミッタアレイ242または個々のエミッタが、レーザ光源の例である。Txモジュール240は、プロセッサ245およびメモリ246をさらに含む。いくつかの実施形態では、例えばバーカーコードなどのパルスコーディング技術を使用することができる。そのような場合、メモリ246は、光をいつ送信すべきかを示すパルスコードを格納することができる。一実施形態では、パルスコードは、メモリに格納された整数のシーケンスとして格納される。
【0037】
Rxモジュール230は、例えば、光センサの1次元または2次元アレイであり得るセンサアレイ236を含むことができる。各光センサ(単にセンサとも呼ばれる)は、例えばSPADなどの光検出器の集合体を含み得るか、またはセンサが単一の光子検出器(例えば、APD)であってもよい。Txモジュール240と同様に、Rxモジュール230はRx光学システム237を含む。Rx光学システム237とセンサアレイ236とが組み合わされて、マイクロ光学受信機チャネルのアレイを形成し得る。各マイクロ光学受信機チャネルは、周囲容積の明確な視野内の画像ピクセルに対応する光を測定する。センサアレイ236の各センサ(例えば、SPADの集合体)は、例えば、光感知モジュール230および光送信モジュール240の幾何学的構成の結果として、エミッタアレイ242の特定のエミッタに対応し得る。
【0038】
一実施形態では、Rxモジュール230のセンサアレイ236は、光子検出器のアレイと、アレイ中の個々の光子検出器(または検出器のグループ)からの生ヒストグラムを信号処理するためのASIC231との両方を含む単一基板上のモノリシックデバイスの一部として(例えば、CMOS技術を使用して)製造される。信号処理の例として、光子検出器ごと、または光子検出器のグループごとに、ASIC231のメモリ234(例えば、SRAM)は、連続する時間ビンにわたって検出された光子のカウントを累積することができ、これらの時間ビンを組み合わせて使用して、反射光パルスの時系列(すなわち、光子のカウント対時間)を再生成することができる。集計された光子カウントのこの時系列は、本明細書では強度ヒストグラム(または単にヒストグラム)と称される。ASIC231は、整合フィルタとピーク検出処理とを実装して、適時にリターン信号を識別することができる。さらに、ASIC231は、SPADの飽和およびクエンチングに起因して起こり得るパルス形状歪みの影響を受けにくい光子時系列を再生するのに役立つ、マルチプロファイル整合フィルタリングなどの特定の信号処理技術を(例えば、プロセッサ238によって)完遂することができる。いくつかの実施形態では、そのようなフィルタリングのすべてまたは一部は、FPGAで具体化され得るプロセッサ258によって実行され得る。
【0039】
いくつかの実施形態では、Rx光学システム237は、各受信機チャネル層に対して別個の基板層を有するASICと同じモノリシック構造の一部であってもよい。例えば、開口層、コリメートレンズ層、光学フィルタ層、および光検出器層を積み重ねて、ダイシング前にウェーハレベルで接着することができる。開口層は、透明基板の上に非透明基板を置くか、透明基板に不透明フィルムをコーティングすることによって形成され得る。さらに他の実施形態では、Rxモジュール230の1つ以上のコンポーネントが、モノリシック構造の外側にあってもよい。例えば、開口層は、ピンホールを有する別個の金属シートとして実装されてもよい。
【0040】
いくつかの実施形態では、ASICから出力された光子時系列は、さらなる処理のために測距システムコントローラ250に送られ、例えば、データは測距システムコントローラ250の1つ以上のエンコーダにより符号化され、その後データパケットとしてユーザインターフェース215に送られる。測距システムコントローラ250は、例えば、ASICまたはASICの一部としてのFPGAなどのプログラマブルロジックデバイスを使用することによる、メモリ254を有するプロセッサ258を使用することによる、および上記の何らかの組み合わせを含む複数の方法で実現され得る。測距システムコントローラ250は、固定ベースコントローラと連携するか、またはベースコントローラとは独立して(事前にプログラムされた命令を介して)動作して、光検出の開始および停止を含み、光検出器パラメータを調整するコマンドを送信することにより、光感知モジュール230を制御することができる。同様に、測距システムコントローラ250は、発光開始および停止制御、ならびに他の発光体パラメータ(例えば、パルスコード)を調整し得る制御を含むコマンドを送信するか、またはベースコントローラからのコマンドを中継することにより、光送信モジュール240を制御することができる。いくつかの実施形態では、測距システムコントローラ250は、光感知モジュール230および光送信モジュール240とデータを交換するための1つ以上の有線インターフェースまたはコネクタを有する。他の実施形態では、測距システムコントローラ250は、光通信リンクなどの無線相互接続を介して、光感知モジュール230および光送信モジュール240と通信する。
【0041】
電気モータ260は、例えばTxモジュール240および/またはRxモジュール230などのシステムコンポーネントを回転させる必要がある場合に必要とされる任意選択的なコンポーネントである。システムコントローラ250は、電気モータ260を制御し、回転を開始し、回転を停止し、回転速度を変えることができる。
【0042】
II.反射パルスの検出
光センサは、反射パルスを検出するために、様々な方法で配置され得る。例えば、光センサはアレイに配置することができ、各光センサは光検出器(例えばSPAD)のアレイを含むことができる。検出間隔中に送信される様々なパターンのパルス(パルス列)についても、以下で説明する。
【0043】
A.飛行時間測定および検出器
図3は、実施形態によって改善され得る、典型的なライダーシステムの動作を示す。レーザが、短い持続時間の光パルス310を生成する。横軸は時間で、縦軸は電力である。半値全幅(FWHM)によって特徴付けられるレーザパルス持続時間の一例が数ナノ秒であり、下の図に見られるように、単一のエミッタのピーク電力は数ワットである。サイドエミッタレーザまたはファイバレーザを使用する実施形態は、はるかに高いピーク電力有することができる一方、小径VCSELを有する実施形態は、数十ミリワット~数百ミリワットのピーク電力を有することができる。
【0044】
パルスの送信の開始時間315がパルスの前縁と一致する必要はない。示されるように、光パルス310の前縁は開始時間315の後である。異なるパターンのパルスが異なる時間に送信される状況では前縁を異なるものにしたい場合があり、以下にコード化パルスについてより詳細に説明する。
【0045】
光受信機システムは、レーザの起動と同時に、つまり起動時に受信光の検出を開始することができる。他の実施形態では、光受信機システムは、パルスの開始時間の後の既知の時間である後の時間に開始することができる。光受信機システムは最初に背景光330を検出し、しばらくしてからレーザパルス反射320を検出する。光受信機システムは、検出された光強度を閾値と比較して、レーザパルス反射320を識別することができる。閾値は、背景光とレーザパルス反射320に対応する光を区別することができる。
【0046】
飛行時間340は、パルスが送信されることとパルスが受信されることとの間の時間差である。時間差は、レーザパルス反射320の受信時間(例えば、開始時間に対して測定される)からパルスの送信時間(例えば、同様に開始時間に対して測定される)を除算することにより測定され得る。標的までの距離は、飛行時間と光速との積の半分として決定することができる。
【0047】
レーザデバイスからのパルスは、異なる時間にシーン内の物体から反射し、ピクセルアレイが放射反射のパルスを検出する。
【0048】
B.アレイレーザと光センサのアレイとを使用する物体の検出
図4は、いくつかの実施形態による、光測距システムの光送信および検出プロセスの例示的な一実施例を示す。
図4は、システムを囲む容積またはシーンの3次元距離データを収集する光測距システム(例えば、ソリッドステート型もしくは、および/またはスキャニング型)を示す。
図4は、エミッタとセンサとの間の関係を強調する理想化された図であり、したがって、他のコンポーネントは示されていない。
【0049】
光測距システム400は、発光体アレイ402と光センサアレイ404とを含む。発光体アレイ402は、エミッタ403およびエミッタ409などの発光体のアレイ、例えば、VCSELなどのアレイを含む。光センサアレイ404は、例えばセンサ413および415などの光センサのアレイを含む。光センサは、ピクセルごとに、単一光子アバランシェダイオード(SPAD)などの離散した光検出器のセットを使用するピクセル化光センサであってもよい。しかしながら、様々な実施形態は、任意のタイプの光子センサを配置することができる。
【0050】
各エミッタは、隣接するエミッタからわずかにオフセットされ得、かつ隣接するエミッタから異なる視野内に光パルスを送信するように構成され得るため、そのエミッタのみに関連付けられたそれぞれの視野を照明することができる。例えば、エミッタ403は、(1つ以上の光パルスから形成された)照明ビーム405を円形視野407(そのサイズは明確にするために誇張されている)内に放出する。同様に、エミッタ409は、照明ビーム406(エミッタチャネルとも呼ばれる)を円形視野410内に放出する。複雑さを避けるために
図4には示されていないが、各エミッタは対応する視野内に対応する照明ビームを放出し、結果として2Dの視野のアレイが照明される(この例では21個の異なる視野)。
【0051】
エミッタによって照明される各視野は、測距データから生成される対応する3D画像内のピクセルまたはスポットと考えられ得る。各エミッタチャネルは、各エミッタに個別で、他のエミッタチャネルと非重複とすることができる、つまり、エミッタのセットと非重複フィールドまたはビューのセットとの間に1対1のマッピングがある。したがって、
図4の実施例では、システムは3D空間で21個の異なるポイントをサンプリングし得る。より高密度のエミッタアレイを有することにより、または1つのエミッタが空間内の複数のポイントをサンプリングできるように、エミッタビームの角度位置を経時的にスキャンすることにより、ポイントの高密度サンプリングを実現することができる。上記のように、スキャンは、エミッタ/センサアセンブリ全体を回転させることにより実行できる。
【0052】
各センサは、上述のエミッタのように、隣接するセンサからわずかにオフセットすることができ、各センサはセンサの前のシーンの異なる視野を見ることができる。さらに、各センサの視野は、例えば、それぞれのエミッタチャネルの視野と実質的に一致し、例えば重なり合い、同じサイズである。
【0053】
図4において、対応するエミッタ-センサチャネル間の距離は、視野内の物体までの距離に対して誇張されている。実際には、わずかなフィールド内の物体までの距離は、対応するエミッタ-センサチャネル間の距離よりはるかに大きいため、エミッタから物体までの光の経路は、物体からセンサまで戻る反射光の経路にほぼ平行である(すなわち、光はほとんど「後方反射」される)。したがって、システム400の前には、個々のセンサの視野と個々のエミッタの視野とが重なる距離の範囲がある。
【0054】
エミッタの視野はそれぞれのセンサの視野と重なっているため、各センサチャネルは理想的には、それぞれのエミッタチャネルを起源とし、理想的にはクロストークのない反射照明ビームを検出できる、つまり、他の照明ビームからの反射光は検出されない。したがって、各光センサは、それぞれの光源に対応し得る。例えば、エミッタ403は照明ビーム405を円形視野407内に放出し、照明ビームの一部は物体408から反射する。理想的には、反射ビーム411はセンサ413のみによって検出される。したがって、エミッタ403およびセンサ413は同じ視野、例えば視野407を共有し、エミッタ-センサ対を形成する。同様に、エミッタ409およびセンサ415はエミッタ-センサ対を形成し、視野410を共有する。
図4ではエミッタ-センサ対は、それぞれのアレイ内の同じ相対位置にあるものとして示されているが、システムで使用される光学系の設計に応じて、任意のエミッタを任意のセンサと対にすることができる。
【0055】
測距測定中、ライダーシステムを取り巻く容積の周りに分布する様々な視野からの反射光が様々なセンサによって収集されて処理され、それぞれの視野内の任意の物体の範囲情報をもたらす。上記のように、正確にタイミングを合わせたパルスを発光体が放出し、ある経過時間の後にパルスの反射がそれぞれのセンサによって検出される、飛行時間技術を使用することができる。次に、放出と検出との間の経過時間と、既知の光速度とを使用して、反射面までの距離を計算する。いくつかの実施形態では、範囲に加えて、反射面の他の特性を決定するために、センサにより追加情報を取得することができる。例えば、パルスのドップラーシフトをセンサで測定し、センサと反射面との間の相対速度を計算するために使用することができる。パルス強度を使用して標的の反射率を推定することができ、パルス形状を使用して、標的が硬質または拡散材料であるかどうかを判断することができる。
【0056】
いくつかの実施形態では、ライダーシステムは、エミッタチャネルおよびセンサチャネルの比較的大きな2Dアレイで構成され、ソリッドステートライダーとして動作することができる、つまり、ライダーシステムは、エミッタおよび/またはセンサの方向をスキャンする必要なしに、範囲データのフレームを取得することができる。他の実施形態では、エミッタおよびセンサのセットの視野が、周囲容積の完全な360度領域(または360度領域の何らかの有用な部分)をサンプリングすることを確実にするために、エミッタおよびセンサをスキャンさせる、例えば軸を中心に回転させることができる。例えば、ある所定の時間にわたってスキャンシステムから収集された範囲データを、次に後処理して1つ以上のフレームのデータにし、これをさらに処理して、1つ以上の深度画像または3D点群にすることがでる。深度画像および3D点群をさらに処理して、3Dマッピングおよびナビゲーションアプリケーションで使用するためのマップファイルにすることができる。
【0057】
C.光センサの複数の光検出器
図5は、本発明の実施形態による、センサアレイおよび関連する電子機器の様々なステージを示す。アレイ510は、各々が異なるピクセルに対応する光センサ515を示す。アレイ510は、互い違いのアレイであってもよい。この特定の実施例では、アレイ510は、18×4個の光センサである。実装態様がスイープに適しているため、アレイ510を使用して、高解像度(例えば、72×1024)を実現することができる。
【0058】
アレイ520は、アレイ510の一部の拡大図を示す。図に示すように、各光センサ515は、複数の光検出器525で構成されている。ピクセルの光検出器からの信号は、一括してそのピクセルの測定に寄与する。
【0059】
いくつかの実施形態では、各ピクセルは、ピクセル自体のダイナミックレンジを増大させる多数の単一光子アバランシェダイオード(SPAD)ユニットを有する。各SPADは、バイアス、クエンチ、およびリチャージ用のアナログフロントエンド回路を有し得る。SPADは通常、ブレークダウン電圧を上回るバイアス電圧でバイアスされる。好適な回路が、アバランシェ電流の前縁を検出し、アバランシェビルドアップと同期した標準出力パルスを生成し、バイアスをブレークダウン電圧より低く下げることによりアバランシェをクエンチさせ、フォトダイオードを動作レベルに戻す。
【0060】
SPADを、そのローカル領域におけるフィルファクタを最大化するように位置付けてもよく、ピクセルレベルで高い光学フィルファクタを可能にするマイクロレンズアレイを使用してもよい。したがって、イメージャピクセルは、ピクセル検出器の効率を高めるために、SPADのアレイを含むことができる。ディフューザを使用して、開口部を通過し、マイクロレンズでコリメートされた光線を拡散してもよい。缶ディフューザは、同じピクセルに属するすべてのSPADがいくらかの放射線を受信するように、平行光線を拡散する働きをする。
【0061】
図5は、光子532を検出する特定の光検出器530(例えば、SPAD)をさらに示す。検出に応じて、光検出器530が、電荷キャリア(電子または正孔)のアバランシェ電流534を生成する。閾値回路540は、アバランシェ電流534を閾値と比較することにより、アバランシェ電流534を調整する。光子が検出され、光検出器530が適切に機能している場合、アバランシェ電流534がコンパレータ閾値を上回って上昇し、閾値回路540が、SPAD電流アバランシェの正確な時間を示す時間的に正確なバイナリ信号545を生成し、これが逆に光子到達の正確な測定となる。電流アバランシェと光子到達との相関関係は、ナノ秒の分解能で発生する可能性があり、それによって高いタイミング分解能が提供される。バイナリ信号545の立ち上がりエッジは、ピクセルカウンタ550によってラッチされ得る。
【0062】
バイナリ信号545、アバランシェ電流534、およびピクセルカウンタ550は、1つ以上のSPADで構成される光センサによって提供され得るデータ値の例である。データ値は、複数の光検出器の各々からのそれぞれの信号から決定され得る。それぞれの信号を閾値と比較して、対応する光検出器がトリガされたかどうかを判断することができる。アバランシェ電流534はアナログ信号の一例であり、したがって、それぞれの信号はアナログ信号であり得る。
【0063】
ピクセルカウンタ550は、バイナリ信号545を使用して、周期信号560によって制御される特定の時間ビン(例えば、1、2、3nsなどの時間窓)中に1つ以上の光子によってトリガされた、所与のピクセルに対する光検出器の数をカウントすることができる。ピクセルカウンタ550は、所与の測定の複数の時間ビンの各々に対するカウンタを格納することができる。各時間バインドのカウンタの値はゼロから始まり、光子の検出を示すバイナリ信号545に基づいてインクリメントされ得る。ピクセルの任意の光検出器がそのような信号を提供すると、カウンタがインクリメントし得る。
【0064】
周期信号560は、位相同期ループ(PLL)または遅延同期ループ(DLL)、もしくはクロック信号を生成する任意の他の方法によって生成することができる。周期信号560とピクセルカウンタ550との調整は、イベントを認識し、それらが発生した時間のデジタル表現を提供するためのデバイスである時間-デジタル変換器(TDC)として機能することができる。例えば、TDCは、検出された各光子または光パルスの到達時間を出力することができる。測定時間は、絶対時間ではなく、2つのイベント間(例えば、開始時間および検出された光子または光パルス)の経過時間であってもよい。周期信号560は、ピクセルカウンタ550を含むメモリのバンク間を切り替える比較的高速のクロックであってもよい。メモリ内の各レジスタは1つのヒストグラムビンに対応し得、クロックは、サンプリング間隔でそれらの間を切り替わり得る。したがって、それぞれの信号が閾値よりも大きい場合、バイナリ値は、ヒストグラム回路に対するトリガを示すことができる。ヒストグラム回路は、特定の時間ビン中にトリガされた光検出器の数を決定するために、複数の光検出器にわたってバイナリ値を集約することができる。
【0065】
時間ビンは、例えば
図3の開始時間315で、開始信号に対して測定され得る。したがって、開始信号の直後の時間ビンのカウンタは、背景信号、例えば背景光330に対応する低い値を有し得る。最後の時間ビンは、所与のパルス列の検出時間間隔(ショットとも呼ばれる)の終了に対応し得、これについては、次のセクションでさらに説明する。開始時間以降の周期信号560のサイクル数は、アバランシェ電流534の立ち上がりエッジが検出された光子を示すときのタイムスタンプとして機能し得る。タイムスタンプは、ピクセルカウンタ550内の特定のカウンタに対する時間ビンに対応する。このような動作は、フォトダイオード(例えば、アバランシェフォトダイオード(APD))に続く単純なアナログ-デジタルコンバータ(ADC)とは異なる。時間ビンのカウンタの各々はヒストグラムに対応し得、これについては後で詳しく説明する。したがって、APDはゲインが制限された入力光信号用の線形増幅器である一方、SPADは、時間窓内で発生するトリガイベントに対してyes/noのバイナリ出力を提供するトリガデバイスである。
【0066】
D.パルス列
測距は、1つ以上のパルスを含むものとして定義されたパルス列を使用して実行することもできる。パルス列内で、パルスの数、パルスの幅、およびパルス間の持続時間(総称してパルスパターンと称される)をいくつかの要因に基づいて選択することができ、要因のいくつかとして以下が挙げられる:
1 最大レーザデューティサイクル。デューティサイクルは、レーザがオンになっている時間の割合である。パルスレーザの場合、これは、上記で説明したように、FWHMと、所定の期間中に放出されたパルスの数とによって決定することができる。
2 目の安全限界。これは、ライダーシステムの方向を見ている傍観者の目を損傷することなく、デバイスが放出できる最大放射量によって決定される。
3 消費電力。これは、シーンを照明するためにエミッタが消費する電力である。
【0067】
例として、パルス列内のパルス間の間隔は、1桁または数十ナノ秒のオーダーである。
【0068】
1回の測定の期間中に複数のパルス列が放出され得る。各パルス列は異なる時間間隔に対応し得、例えば、前のパルス列の反射パルスを検出するための制限時間の満了まで、後続のパルス列は放出されない。
【0069】
所与のエミッタまたはレーザデバイスの場合、パルス列の放出間の時間によって最大検出可能範囲が決まる。例えば、パルス列Aが時間t0=0nsにおいて放出され、パルス列Bが時間t1=1000nsにおいて放出された場合、t1の後に検出された反射パルス列はパルス列Bからの反射である可能性がはるかに高いので、それらをパルス列Aに割り当ててはならない。したがって、パルス列間の時間と光速度が、システムの範囲の最大限界を画定する。
Rmax=c×(t1-t0)/2
ショット(パルス列の放出および検出)間の時間は1μsのオーダーであり得、パルス列全体が約150メートル離れた遠くの物体まで移動して戻るのに十分な時間を与える。
【0070】
III.光検出器からのヒストグラム信号
ライダーシステムの1つの動作モードが、周期信号内の単一光子の計数に基づく、時間相関単一光子計数法(TCSPC)である。この技法は、ライダーシステムにおいて好適である低レベルの周期的放射に効果を発揮する。この時間相関計数は、
図5の周期信号560によって制御され、
図5で説明したように、時間ビンを使用することができる。
【0071】
A.ヒストグラムの生成
周期信号の周波数により、信号のデータ値が測定される時間分解能が指定され得る。例えば、周期信号のサイクルごとに、各光センサに対して1つの測定値が取得され得る。いくつかの実施形態では、測定値は、そのサイクル中にトリガされた光検出器の数であり得る。周期信号の期間は時間ビンに対応し、各サイクルは異なる時間ビンである。
【0072】
図6は、本発明の実施形態によるヒストグラム600を示す。横軸は、開始時間615に対して測定される時間ビンに対応する。上述のように、開始時間615は、パルス列の開始時間に対応し得る。パルス列の第1のパルスの立ち上がりエッジと、パルス列および検出時間間隔のいずれかまたは両方の開始時間との間の任意のオフセットを考慮することができ、ここで、飛行時間測定に使用する受信時間を決定すること。縦軸は、トリガされたSPADの数に対応している。特定の実施形態では、縦軸は、APDに続くADCの出力に対応し得る。例えば、APDは、SPADの不感時間ベースの効果ではなく、一定の最大信号などの、従来の飽和効果を示し得る。SPADおよびAPDの両方でいくつかの影響が発生することがあり、例えば、SPADおよびAPDの両方で、大きく傾斜した表面のパルススミアリングが発生する場合がある。
【0073】
時間ビンの各々のカウンタは、ヒストグラム600の異なるバーに対応する。初期の時間ビンのカウンタは比較的低く、背景ノイズ630に対応する。あるポイントで、反射パルス620が検出される。対応するカウンタははるかに大きく、背景と検出パルスとを区別する閾値を超える場合がある。(デジタル化後の)反射パルス620は、4つの時間ビンに対応して示されており、これは、例えば、時間ビンがそれぞれ1nsである場合4nsのパルスなどの、同様の幅のレーザパルスに起因する可能性がある。しかし、以下でより詳細に説明するように、時間ビンの数は、例えば、レーザパルスの入射角における特定の物体の特性に基づいて変化する可能性がある。
【0074】
反射パルス620に対応する時間ビンの時間的位置を使用して、例えば、開始時間615に対する受信時間を決定することができる。以下でより詳細に説明されるように、整合フィルタを使用してパルスパターンを識別し、それにより信号対ノイズ比を効果的に高めることができるが、受信時間をより正確に決定することもできる。いくつかの実施形態では、受信時間を決定する精度は、単一の時間ビンの時間分解能よりも低くなり得る。例えば、1nsの時間ビンの場合、その解像度は約15cmに相当するであろう。しかしながら、わずか数センチの精度を持つことが望ましい場合があり得る。
【0075】
したがって、検出された光子は、例えば、開始時間615によって示されるように、開始信号に対するその到達時間に基づいて、ヒストグラムの特定の時間ビンがインクリメントされる結果になる可能性がある。開始信号は、測定中に複数のパルス列が送信されるように、周期的であってもよい。各開始信号をレーザパルス列に同期させて、複数の開始信号が、複数の検出間隔にわたって複数のパルス列を送信させるようにすることもできる。したがって、各検出間隔に対して時間ビン(例えば、開始信号後の200~201ns)が発生するするであろう。ヒストグラムはカウントを累積することができ、特定の時間ビンのカウントは、複数のショットにわたってその特定の時間ビン内にすべて発生する測定データ値の総計に対応する。検出光子がこのような手法に基づいてヒストグラム化されると、単一のパルス列からのものよりも、起こったショット数の平方根だけ大きい信号対ノイズ比を有するリターン信号が生成される。
【0076】
図7は、本発明の実施形態による、選択されたピクセルに対する複数のパルス列にわたるヒストグラムの累積を示す。
図7は、3つの検出されたパルス列710、720および730を示す。検出された各パルス列は、同じ時間量で分離された2つのパルスの同じパターンを有する送信パルス列に対応する。したがって、かなりの値を有する2つの時間ビンで示されるように、検出された各パルス列は同じパルスパターンを有する。説明を簡単にするために、他の時間ビンのカウンタは示されていないが、他の時間ビンは、比較的低い非ゼロ値を有する可能性がある。
【0077】
第1の検出されたパルス列710では、時間ビン712および714のカウンタは同じである。これは、同じ数の検出器が2つの時間ビンの間に光子を検出することに起因する可能性がある。あるいは、他の実施形態では、ほぼ同じ数の光子が2つの時間ビンの間に検出される。他の実施形態では、1つを超える連続する時間ビンが連続する非ゼロ値を有し得るが、説明を簡単にするために、個々の非ゼロの時間ビンが示されている。
【0078】
時間ビン712および714はそれぞれ、開始時間715の後の458nsおよび478nsに発生する。他の検出されたパルス列に対して示されたカウンタは、それぞれの開始時間に対して同じ時間ビンに発生する。この例では、開始時刻715は時刻0に発生するとして識別されるが、実際の時間は任意である。第1の検出パルス列に対する第1の検出間隔は1μsであり得る。したがって、開始時間715から測定された時間ビンの数は1,000であり得る。この第1の検出間隔が終了した後、新しいパルス列が送信および検出され得る。異なる時間ビンの開始および終了は、例えば、
図5で説明されたように、時間-デジタル変換器(TDC)として作動する一部回路であり得るクロック信号によって制御することができる。
【0079】
第2の検出されたパルス列720の場合、開始時間725は1μsにあり、例えば、このとき第2のパルス列が放出され得る。このような別個の検出間隔が発生し得るので、第1の検出間隔の始めに送信されたすべてパルスはすでに検出されたであろうから、第2の時間間隔で検出されるパルスで混乱は生じない。例えば、ショット間に余分な時間がない場合、回路は、200mにある再帰反射性停止標識を50mにあるはるかに反射性の低い物体と混同する可能性がある(ショット期間を約1μsと仮定)。パルス列710および720の2つの検出時間間隔は同じ長さにし得、それぞれの開始時間に対して同じ関係を有し得る。時間ビン722および724は、時間ビン712および714と同じ相対時間458nsおよび478snで発生する。したがって、累積ステップが発生すると、対応するカウンタを追加することができる。例えば、時間ビン712および722におけるカウンタ値を追加することができる。
【0080】
第3の検出されたパルス列730の場合、開始時間735は2μsにあり、例えば、このとき第3のパルス列が放出され得る。時間ビン732および734も、それぞれの開始時間735に対して458nsおよび478nsに発生する。例えば、物体を離れる光パルスの散乱過程の確率的性質のために、放出されたパルスが同じ電力を有していても、異なる時間ビンのカウンタは異なる値を有する可能性がある。
【0081】
ヒストグラム740は、同様に458nsおよび478nsに対応する時間ビン742および744において検出された3つのパルス列からのカウンタの累積を示す。ヒストグラム740は、例えば、始めまたは終わりに下がる時間ビンの結果それぞれの検出間隔中に測定される、または閾値未満の値を有する、より少ない数の時間ビンを有し得る。いくつかの実装態様において、パルス列のパターンに応じて、約10~30個の時間ビンがかなりの値を有し得る。
【0082】
例として、単一のヒストグラムを作成するために測定中に放出されるパルス列の数は約1~40(例えば、24)であり得るが、例えば、50、100、または500など、はるかに多くてもよい。測定が完了したら、ヒストグラムのカウンタをリセットすることができ、新たな測定を実行するためにパルス列のセットを放出することができる。様々な実施形態で、それぞれの持続時間における検出間隔の数に応じて、25、50、100、または500μsごとに測定を実行することができる。いくつかの実施形態では、例えば、所与のヒストグラムがパルス列の特定のスライド窓に対応するように、測定間隔が重複してもよい。このような例では、各々が異なる時間窓に対応する複数のヒストグラムを格納するためのメモリが存在し得る。検出されたパルスに適用される重みが各ヒストグラムで同じであってもよいか、またはそのような重みを個別に制御することもできる。
【0083】
B.ピクセル検出器からの例示的な信号プロファイル
様々な条件下で、異なるレベルの反射放射または周囲放射が光検出器(例えば、SPAD)に到達することがある。これは、反射放射を感知する際の光検出器の効率および精度に影響を与える可能性があり、したがって、シーン内の物体を検出してシーンを再構築する際のライダーシステムの性能に影響を与える可能性がある。通常の状態で、多くの表面からの反射に対して所与の期間に1つの光子を検出する確率は1よりもはるかに低い。したがって、ライダーシステムでは、特定の時間ビンの間には光子は存在せず、いくつかの他のビンに小さな信号が存在する。
【0084】
しかしながら、大量の放射が光センサ(例えば、SPADなどの光検出器の集合体)に衝突すると、その光パルスから、ヒストグラム内にデジタル化されたパルスは、パルス(矩形を仮定)の持続時間にわたってより均一な値を有するのではなく、初期に非常に高く、その後減少する可能性がある。例えば、5つの時間ビンの幅を有する所与の光パルスでは、第1の時間ビン中にほとんどすべての光検出器が起動する可能性がある。この効果は、パイルアップと称され得、光検出器が別の光子を検出することができない不感時間を有する、SPADなどのバイナリカウンティング光検出器で発生し得る。
【0085】
高レベルのパイルアップは、多数の光子がピクセルに衝突し、ピクセル内の大部分のSPADを起動させて、パルス幅のごく一部で不感時間に入ると発生する。その結果、パルス内の残りの光子はピクセルにキャプチャされず、SPADは、適時に回復して信号の真の光学プロファイルおよび大きさを評価しない。このような状況では、ライダーシステム内の反射放射の真の量およびプロファイルは知られない。これらの問題は、シーン内の高反射性の物体に反射する大量の放射、または高レベルの背景放射の両方の結果として発生する可能性がある。
【0086】
いくつかの実施形態によれば、ピクセル内の光検出器の集合体によって出力される生のヒストグラム(例えば、1つ以上のパルス列にわたるヒストグラムのカウンタ)は、デジタル化信号の1つ以上の予想されるまたは可能性があるプロファイルに従ってフィルタ処理される。異なるレベルのパイルアップに異なるプロファイルフィルタを使用することができる。パイルアップのレベルは、連続した時間ビンにわたって光センサによって検出される様々な光子の率に対応し得る。いくつかの実装態様において、プロファイルタイプを識別するために、プロファイルフィルタを保存し、使用することができる。このタイプを使用して、より正確に時間を決定し、それによりより正確に、またはパルス幅などの他の信号特性を決定するために、距離を決定することができる。
【0087】
図8は、本発明の実施形態による、光センサから出力された3つの異なるタイプのデジタル化信号プロファイルを示す。いくつかの実施形態では、光センサはSPADの集合体であってもよい。プロファイルはヒストグラムに格納され得、上記のように決定され得る。3つのプロファイルにおいて、横軸は時間ビンに対応し、縦軸は特定の時間ビン中に光センサから出力されたデータ値(例えば、数起動されたSPAD)に対応する。これらの例示的なタイプには、パイルアップなし(または低パイルアップ)信号、中パイルアップ信号、および高パイルアップ信号が含まれる。実際には、多くの(K)異なるプロファイルが存在し得る。
【0088】
様々なタイプのデジタル化信号プロファイルが、様々な検出される光子の率を有する。検出される光子の高い率は、より多く光検出器が、後の時間ビン中ではなく、初期の時間ビン中にトリガすることに対応する。低い率は、ほぼ同じ数の光検出器が、後の時間ビン中よりも初期の時間ビン中にトリガすることに対応する。
【0089】
低パイルアップのプロファイル810は、比較的尖鋭な立ち上がりおよび立下りを有し、ある程度のノイズレベルが観測されることを除き、これら2つの時間の間かなり平坦なままである。これは、表面から反射する光子の数が少ないときの特徴である。低パイルアップのプロファイルは通常の活性に対応する。例えば、物体から反射して戻る光子は、SPADが不感時間にあるときに同じSPADが複数回トリガしようと試みないほど、いくつかの時間ビンにわたって十分少ない可能性がある。その場合、反射して戻される方形パルスは、(例えば、16または32個の)SPADの集合体によってデジタル化され、ヒストグラム内に方形プロファイルが作成される。例えば、ピクセルごとに32個のSPADが存在する場合、4個のSPADが任意の所定の時間に駆動し、約4個のSPADが常に起動し得る。したがって、すでに起動したSPADは不感時間に入っているであろうが、他のSPADはなお利用可能であろう。したがって、5nsパルスの持続時間にわたって、SPADの半分未満が起動する可能性がある。
【0090】
中パイルアップのプロファイル820は尖鋭な立ち上がりを有し、その後に時間の経過に伴う着実な低下が続き、背景レベルに戻る。不感でない、したがって光子の検出に利用可能なSPADの数は、光束が非常に高いため、より急激に減少する。中パイルアップのプロファイル820は、時間ビン内の短い期間内に比較的多数の光子がSPADに衝突することに起因する可能性がある。これは、背景放射によるものか、またはより一般的には、比較的反射性の表面からのレーザ反射に起因し得る。例として、最初のナノ秒で10個のSPADがトリガする場合、次の時間ビン内に光子を検出できるSPADは10個少なくなる。したがって、ピクセル上の実際の光束850が、破線で示される方形パルスであっても、デジタル化されたパルスはそのピクセルに対するヒストグラムで下向きに傾斜する。
【0091】
高パイルアップのプロファイル830は、信号の急激な低下が続く非常に尖鋭な立ち上がりを示す。高いパイルアップは、最初のナノ秒以下ですべてのSPADがトリガされると起こり得る。これにより、大きなスパイクが発生し、その後すぐには、パルスがさらに5ns持続しても追加の起動は起こらない。高レベルのパイルアップは、非常に反射性の高い表面、特にレーザ源からの放射線放出の軸に近接して垂直な表面からの大きなレベルの反射信号から発生し、撮像デバイスに直接戻る反射をもたらす。
【0092】
異なる信号の縦軸のスケールは、異なるプロファイル間で異なる可能性があり、単に説明のためにほぼ同じスケールで示されている。上述のように、本実施形態によれば、より多くのプロファイルが考慮され得る。また、SPADの他に、他のフォトダイオードが形状を歪める可能性がある。例えば、レトロリフレクタがAPDを飽和させる可能性がある。APDは、レトロリフレクタからの強いパルスをクリップすることができ、このことは、メモリ内のデジタル化信号に平坦な頂部を提供することと、信号の真の最大値は測定できないので、信号の有効半値全幅を増大する第2の効果との、2つの効果を有するであろう。
【0093】
C.異なる信号プロファイルの検出に関する問題
例えば、ヒストグラムおよび整合フィルタの畳み込みを計算した後、整合フィルタを使用して、検出されたパルスの最も正確な位置を検出することができ、ここで、畳み込みの最大値がヒストグラム中のパルスの位置に対応する。整合フィルタは、無相関ノイズの存在下で既知の信号を検出するのに最適なフィルタである。例えば、
図3に戻って参照すると、背景光330は、デジタル化されたレーザパルス反射320に整合する形状を有する整合フィルタによって最適に除去され得る。
【0094】
低パイルアップのプロファイルは、放出されるレーザパルスの形状に最もよく似ている。したがって、レーザパルスの形状に整合する整合フィルタが当然に使用され得る。このようなフィルタは、デジタル化信号が低パイルアップのプロファイルを有する場合に最高精度を提供する。ただし、デジタル化信号が異なるパイルアップ(検出率)を有する場合、精度は低下する。
【0095】
パイルアップがある状況では、フィルタ処理された信号は、例えば、時間的に、例えばもっと前の時間に、シフトされる。例えば、フィルタを高パイルアップのプロファイルに適用する畳み込みの結果は、ピークの位置がパルスの前縁にあっても、ピークにパルスの中心を提供するであろう。つまり、高パイルアップの状況では、デジタル化信号のすべてが、パルスの左側の前縁にある。放出されたパルスと同様の幅の矩形が、検出された高パイルアップパルスに整合する場合、矩形の最良の整合は、実際の光束850に整合する場合に起こるよりも早く起こる。
【0096】
数個のビンのシフト(例えば、5nsパルスの中心から左へ2.5ns)は、約37cmの誤差を引き起こす可能性があり、これはほとんどの3D検知用途では許容できない誤差である。これは、車のナンバープレートから反射された光で起こり得、車の残りの部分から反射された光は低いパイルアップを有し得る。これにより、ナンバープレートが車の残りの部分よりも近くに見え、このことが、自律走行車両の意思決定、または車両に対する警報/警告で問題を引き起こす可能性がある。
【0097】
以下で説明する実施形態では、異なるプロファイルフィルタを使用して、パイルアップまたは他の予想される要因によって課される歪みを補償することができる。例えば、放出されるパルスに似た整合フィルタを使用して生のヒストグラムを分析するだけでなく、フィルタの出力がすべて直接比較できるように、フィルタの電力がすべて同じフィルタ「電力」(フィルタタップ数の二乗平均平方根として定義される)に正規化されている限り、各々が異なるプロファイルを有する複数の整合フィルタを使用することができる例えば、1つまたは2つの時間ビンの幅しかない整合フィルタを使用して、高パイルアップのプロファイルが存在するかどうかを判断することができる。そのような高パイルアップフィルタからの出力が、低パイルアップフィルタよりも高い最大値(例えば、フィルタと生ヒストグラムとの畳み込みによって決定される)を提供する場合、受信時間は、高パイルアップフィルタを使用して計算されるであろう。詳細は、後のセクションで説明される。
【0098】
D.整合フィルタおよび特定のパルスパターンの精度の制限
前述のように、整合フィルタを使用して、検出されたパルスの時間的位置(受信時間)を決定することができる。次に、受信時間を使用してパルスの合計飛行時間を決定することができ、その合計飛行時間を距離に変換することができる。しかしながら、光センサからのデジタル化信号の測定精度(例えば、時間ビンの解像度)により、測定距離の精度が制限される場合がある。時間ビンの幅よりも小さい解像度を有することが望ましい。このような目標を達成するには、まず、時間ビンの時間分解能内で最良整合を識別する必要がある。しかしながら、ノイズのために、最良整合が直前または直後に起こる場合がある。
【0099】
このような問題に対処し、干渉を低減するために、様々なパルスパターンが、所与のパルス電力に対するフィルタ応答のサイドローブ応答および時間的な「尖鋭度」の点で、他のものより優れている。1つの問題が、このようなコード化パルスをどのように実現するかであるが、コード化パルスの利点について最初に説明する。
【0100】
図9は、本発明の実施形態による、生のヒストグラムに整合フィルタを適用するための一連の位置を示す。一連の位置は、フィルタが生のヒストグラム全体にわたりスライド(移動)するため、スライド位置と考えることができる。生のヒストグラム902は、単一のピクセルについて検出されたパルスの周りの比較的小さな時間窓を描く。フィルタ904は、デジタル化パルスの形状に対応する。ヒストグラム902およびフィルタ904の両方は、表示を簡単にするために理想的な形状を有している。
図9の左側の一連のプロットは、ヒストグラム902に対するフィルタ904の異なる位置を示す。フィルタ904は、連続する各プロットで1つの時間ビンだけシフトされる。
【0101】
フィルタ904をヒストグラム902に適用することから生じるフィルタ処理された出力が、
図9の右側に表示されている。棒グラフは、各位置でのフィルタ904とヒストグラム902との間の重複のレベルを示す。フィルタ処理された出力910は、フィルタ904とヒストグラム902との間の重複がただ1つの時間ビンである第1の位置に対応する。フィルタ処理された出力910の縦軸は、重複量の任意の単位、例えば、フィルタ904およびヒストグラム902の対応する値の積の合計である。フィルタ処理された出力910の値は、フィルタ904の中心に対応する時間ビンに示される。これは、パルスの中心を検出するときに実行され得る。他の実施形態では、フィルタ処理された出力の値は、フィルタの一番左のビンに対応する時間に表示され得る。これは、パルスの立ち上がりエッジを検出するときに実行され得る。中心および立ち上がりエッジの値は、他方から導き出すことができる。例えば、パルス列のパルスの幅が異なる場合、第1のフィルタタップの位置(基本的には立ち上がりエッジ)を定義する方が容易な場合がある。異なる幅は、例えば
図8で説明したように、異なる送信された幅から、または検出された強度が異なるために生じ得る。
【0102】
フィルタ処理された出力920は、重複が2つの時間ビンである第2の位置に対応し、したがって、得られた値は、フィルタ処理された出力910の2倍である。フィルタ904が1つの時間ビンだけ右にシフトされているので、値は、フィルタ処理した出力910ビンとは異なる時間ビンを示す。フィルタ処理された出力930は、重複が3つの時間ビンである第3の位置に対応する。フィルタ処理された出力940は、重複が4つの時間ビンである第4の位置に対応する。フィルタ処理された出力950は、重複が5つの時間ビンである安全位置に対応する。容易に分かるように、第5の位置は、フィルタ904とヒストグラム902との間の完全な重複に対応するものとして最も高い。
【0103】
最終的なフィルタ処理された出力990は、フィルタ904とヒストグラム902との間にいくつかのレベルの重複を有する、9つの位置の各々での値を示す。このようなフィルタ処理された出力を分析して、検出されたパルスの受信時間に対応するものとして最大値を識別することができる。様々な実装態様において、この時間は、飛行時間測定の一部として直接記録または修正する(例えば、前縁がある場所を識別する)ことができる。
【0104】
図10A~10Cは、本発明の実施形態による、異なるコード化パルスタイプによって生成される整合フィルタ応答(フィルタ処理された出力)のタイプを示す。
図10Aにおいて、コード化パルス1010は、5つの時間ビン間隔にわたって光送信器をオンにすることによって形成される。整合フィルタ応答1015は、幅が広く(複数の時間ビンにわたる)、整合の検出、整合の振幅の測定、時間の正確な決定を困難にする段階的な勾配を有する。整合フィルタ応答1015は、
図9の最終的なフィルタ処理された出力990に類似する形態を有する。
【0105】
図10Bにおいて、コード化パルス1020は、光送信器を5回オンおよびオフにすることによって形成され、より正確な範囲の決定を可能にするより高い周波数成分を有する。
図10Aおよび10Bのコード化パルスは、どちらも5つの時間ビン間隔にわたってオンであるので、同じ電力を有する。
図10Bの整合フィルタ応答1025は、ノイズの存在下での使用を困難にする複数のサイドローブを有する。
【0106】
図10Cは、バーカーコードの例であるシーケンス{1,1,1,-1,1}に対応するコード化パルス1030を示し、これは、時間的にタイトなフィルタピークを保持しながら、最小さらには純粋に負のサイドローブを有する整合フィルタ応答を生成するために使用される。
図10Cにおいて、整合フィルタ応答1035は、コード化パルスに最良に整合する時間ビンに尖鋭なピークを示す。整合フィルタ応答1035のピーク振幅を有する時間ビンを使用して、反射コード化パルスの受信時間を計算することができる。
【0107】
ピーク振幅は、さらなる用途を有する。例えば、整合フィルタ応答1035のピーク振幅を使用して、反射コード化パルスの振幅を計算することができる。整合フィルタ応答1035のピーク振幅は、(1)反射コード化パルスの振幅の二乗、ならびに(2)フィルタの幅および大きさに依存する。フィルタのすべてが同じ電力を有する場合、それらはスケーリングすることなく直接比較することができる。与えられたフィルタの場合、相対振幅は、ピーク振幅の平方根によって与えられる。反射コード化パルスの振幅は、異なるタイプの反射物体を区別する際に、または標的の反射率の絶対値を推定する際に有用である。
【0108】
このようなコードは、望ましい特性を有することが知られているが、光パルスに対してこのようなコーディングをどのように達成するかは明らかでない。電気的な用途では、負の電圧が存在し得るが、光パルスには負の光子が存在しない。無線周波数(RF)において、技術は、例えば二位相偏移変調(BPSK)を使用して、基準信号に対して1つの信号の負相を使用する。しかし、このような位相差は、光パルスの実用的なオプションでない。下で説明するように、いくつかの実施形態は、検出時間間隔、例えばそのパルス列がどれであるかに基づいて、異なるパルスに重みを割り当てることができる。例えば、第1のパルス列は、ヒストグラムに累積するときに、第2のパルス列とは異なる重みを有することができる。
【0109】
IV.検出間隔に基づくコード化パルス
光測距システム(コード化パルス光レシーバシステムとも呼ばれる)は、複数の光のパルスを送信することができ、各コード化パルスは、光強度によって形成された、埋め込まれた正値のパルス符号を有する。システムは、異なる時間ビンにおいて検出された反射光の強度ヒストグラムを作成することによって、背景光の存在下で、光パルスの時間的位置および/または振幅を決定することができる。各時間ビンに対して、システムは、検出された光の強度に依存する強度ヒストグラムに加重値を加える。加重値は、正または負で、様々な大きさを有することができる。
【0110】
正値のパルス符号の異なる組み合わせを選択し、異なる重みを適用することによって、システムは、標準デジタル信号処理アルゴリズムに好適な正値および負値コードを検出することができる。この方法は、反射光パルスの測定された時間的位置における低い不確定度を維持しながら、高い信号対ノイズ比を与える。
【0111】
A.異なるパルス列の異なる重み
図11は、本発明の実施形態による、コード化パルス光学システム(CPOS)の動作を示す例示的な概略
図1100である。コード化パルス1110は、最初に、パルス時間間隔1160(検出間隔とも呼ばれる)中に送信され、コード化パルス1120は、パルス時間間隔1165中に、パルス時間間隔1160の後の時間に送信される。コード化パルスは、光送信器の光送信をオンまたはオフにすることによって形成される。コード化パルス1110は、シーケンス0,1,0,1,1,0として表すことができ、1は、光送信器がオンである(すなわち、光を送信している)ことを意味し、0は、光送信器がオフであることを意味する。シーケンスの桁は、連続した光サンプリング間隔でのオン/オフ値を与える。コード化パルス1120は、コード化パルス1110への異なるパルスコードを有する。コード化パルス1120は、シーケンス0,0,1,0,0,1によって表すことができる。コード化パルスは、それらがオン状態またはオフ状態のいずれかを有することができるので、バイナリである。
【0112】
光送信モジュール(光送信器)および光感知モジュール(光受信器)は、同じパルス時間間隔中に同時に開始し、アクティブにするように同期させることができる。コード化パルス1110の場合、同期は、開始信号1101の結果として発生させることができる。コード化パルス1110の場合、同期は、開始信号1102の結果として発生させることができる。開始信号1101および1102は、時間が測定される共通の開始信号と考えることができる。
【0113】
光感知モジュールは、背景光1150、ならびに反射コード化パルス1130および1140を検出する。受信コード化パルス1130は、送信パルスコード1110の反射である。受信コード化パルス1140は、送信パルスコード1120の反射である。光感知モジュールは、受信光度をデジタル化し、時間ビンまたはヒストグラムビンと呼ばれる各光サンプリング間隔の光強度値を生成する。この特定の実施例において、パルス列間の光送信は、例えばヒストグラムを作成するための、光感知モジュールの光サンプリング間隔と同じである。しかしながら、光送信モジュールの光送信間隔は、光受信器システムの光サンプリング間隔と異なり得る。
【0114】
時間ビン1155は、光受信器システムが背景光1150を検出しているときの光サンプリング間隔に対応する。時間ビン1135は、光受信器システムが最初にコード化パルス1110を検出しているときの光サンプリング間隔に対応する。時間ビン1145は、光受信器システムが最初にコード化パルス1120を検出しているときの光サンプリング間隔に対応する。CPOSは、パルス重みを(乗算を介して)受信したデジタル化光強度に適用して、加重データ値1175を取得する。この実施例において、CPOSは、パルス時間間隔1160中に+1のパルス重みを適用し、パルス時間間隔1165中に-1のパルス重みを適用する。したがって、時間ビン1135の加重光強度値は正であり、時間ビン1145の加重光強度値は負である。
【0115】
以前のセクションで説明したように、光感知モジュールは、1つの時間ビンあたり1つの累積値を用いて強度ヒストグラムを維持することができる。光感知モジュールは、最初に、強度ヒストグラム累積値をゼロに設定する。パルス時間間隔1160および1165中に、光感知モジュールは、加重光強度値を、強度ヒストグラムの対応する時間ビンの既存の値に加える。したがって、パルス時間間隔1160の第1のコード化パルスの場合、強度ヒストグラム値は、ヒストグラムのすべての値がゼロで始まっているので、加重光強度値に等しく設定される。パルス時間間隔1165の第2のコード化パルスの場合、加重光強度値は、既存の強度ヒストグラム値から減算される。パルス時間間隔1165中に、2つのパルス時間間隔の背景光強度は、互いに相殺し、強度ヒストグラムの値の大きさを低減させる傾向がある。結果は、ヒストグラム1170である。
【0116】
CPOSは、必要に応じてコード化パルスを繰り返すことによって、その検出および測距精度を改善することができる。例えば、光強度ヒストグラムは、タイプ1の2つのコード化パルスおよびタイプ2の2つのコード化パルスから結果を累積することができる。コード化パルスのタイプの順序(すなわち、タイプ1,2,1,2または1,1,2,2)は、検出および測距精度に対してほとんど影響を与えないことがある。一実施形態では、コード化パルスのタイプを交替させる。
【0117】
図12は、本発明の実施形態による、2つのバイナリのコード化パルス強度1210および1220、ならびに正および負の値を有するコード化パルス列1230を提供するそれらの差を示す。パルス列1220の時系列関数がパルス列1210の時系列関数から減算されると、時系列機能1230を生成する。CPOSは、整合フィルタを使用して、強度ヒストグラムのデジタル化パルスを検出することができる。
【0118】
B.干渉の低減およびより高い直交レベル
図11および
図12は、2つのタイプのバイナリコード化パルスが送信される単純な例を示し、パルス重みは、(+1,-1)であり、それらの検出された反射を組み合わせて、正値および負値のコード化パルスを送信する影響を排除し、これを整合コードと呼ぶ。好適な整合コードが選択された後に、CPOSは、正値および負値のコード化パルスを2つの正値のコード化パルスに分割し、第1のコード化パルスが整合コードの正成分を有し、第2のコード化パルスが整合コードの負成分を有する。
【0119】
いくつかの用途では、近接してアクティブな異なる光測距システムの複数のCPOSが、例えばそれぞれのアレイに異なるエミッタ/センサ対が存在し得る。一方のCPOSは、第2のCPOSから送信されるコード化パルスの反射を検出し、誤った結果を報告することができる。この場合、干渉を回避する異なる整合コードの組み合わせを各CPOSに割り当てることが有利である。いくつかの実施形態では、疑似乱数パルス列を代わりに使用して、異なる測距デバイス間に、または同じ測距デバイスの異なるピクセルエミッタ間に、低いクロストークの可能性も提供することができる。
【0120】
さらに、コードは、単なる正および負の重み付けの他に、複数の次元において定義することができる。例えば、異なるショットは、重みに対するY方向成分またはX方向成分を有する2Dベクトル空間における割り当てられた重みであり得る。符号付きの数を保存する代わりに、ヒストグラムは、2Dベクトルを各時間ビンに保存するように調整することができ、ベクトルの追加を使用して、ベクトル加重コードを各時間ビンに累積することができる。例えば、パルス列は、正のY重みを用いて送信することができ、次のパルス列は、負のY重みを用いて送信することができるが、どちらもX方向においてゼロ重みを有する。したがって、重みは、より高次元であり得、両方向において非ゼロ値の値を有することができる。例えば、コードは、{+Y、-Y、+Y、+X、-X}とすることができ、対応する整合フィルタを使用することができる。背景ノイズは、例えば等しい数のパルス列が同じ次元において正および負の値を有する限り、通常、1次元の例について上で説明した様態に類似する様態で、この多次元の例において相殺する(例えば、ゼロ平均とする)ことができる。
【0121】
より高い次元を用いて、1つのシステムのコード化パルスは、一意とする(または少なくとも他のシステムによって使用される可能性を低くする)ことができ、したがって、他のコード化パルスと容易に区別することができ、それにより、他のCPOSシステムからクロストークを低減させることができる。したがって、干渉を低減させるために、実施形態は、複数のタイプの正値コード化パルスと多次元ベクトルパルス重みとを組み合わせて、多次元マッチコードを生成することによって、高度なコードをサポートすることができる。例えば、直交位相コードは、90度の位相差だけ異なるコードである。(+1,-1)のパルス重みを有する上のコードの例は、1次元において180度の位相差を伴う2つのコードを有すると考えることができる。直交位相コードを用いて、パルス重みは、([+1,0]、[-1,0]、[0,+1]、[0,-1])とすることができ、加重光強度値および強度ヒストグラム値は、2次元ベクトルである。1パルス重みの大きさを用いて、所望の2次元のマッチコードは、各ベクトル次元について正成分および負成分選択することによって、4つの正値パルスコードに分解される。いくつかの実施形態において、パルス重みは、2次元を超えるものとすることができる。様々なより高い次元のパルスコードを使用して、一意のパルスコードを複数のCPOSに割り当てることをより容易にすることができる。したがって、重みは、2次元以上のベクトルとすることができる。
【0122】
異なる次元の他に、コード化パルスは、例えば単に0または1とは異なる、異なる値を有することができる。
図11および
図12の実施例において、送信パルスコード値は、光送信器をオンまたはオフにすること対応する0および1の値から成る。COPSはまた、0、1/2、および1などの値を有する多値の非整数パルスコードもサポートする。このような非整数パルスコードは、a)光送信器の光の強度を変化させる、およびb)オン/オフ光パルスを光サンプリング間隔よりも高速な周波数で送信する、などの方法によって生成することができる。したがって、パルスコードに由来するマッチコードは、多値の、正または負の、整数または非整数を含むことができる。例えば、CPOSは、+1の重みをパルスコード(1,1,1)、(1,1,0)、および(1,0,0)に適用して、(3,2,1)のマッチコードを生成することができる。
【0123】
他の光測距システムからの干渉は、追加の技術を使用して低減させることができる。例えば、異なるシステムは、異なる周波数/波長範囲の光パルスを放出することができる。受信機光学システムは、比較的狭い範囲、例えば2nm、1nm、0.5nm、0.25nm、またはそれ未満のスペクトル幅の光を通過させるフィルタを(例えば、1ピクセルあたり1つの開口を含むマイクロ光学素子の一部として)使用することができる。このようなマイクロ光学素子に関するさらなる詳細は、米国特許出願第2017/0289524号および同第2017/0219426号で見つけることができる。
【0124】
異なるシステムがこのシステムのフィルタのスペクトル範囲外の光を放出する場合、このような他の光は、このシステムのセンサに到達しない。異なる可能なタイプのエミッタ(例えば、レーザ)および対応するフィルタの数は、エミッタの放出スペクトルがどのくらい狭いか、およびフィルタのスペクトル範囲がどのくらい狭いかに依存し得る。いくつかの実装態様において、異なるモデルまたはフリートのデバイス(例えば、車両、電話、測量デバイス)は、異なるスペクトル範囲を割り当てて、それにより、システムに近いデバイスに干渉する可能性または数を減少させることができる。
【0125】
加えて、または代わりに、他の技術は、異なるスペクトル範囲を有する同じシステムの異なるチャネルを有することができる。例えば、
図4のエミッタ403は、エミッタ403に隣接するエミッタとは異なるスペクトル範囲の光を放出することができる。また、センサ413のフィルタは、エミッタ403によって放出される範囲に対応する光は通過させるが、隣接するセンサのフィルタとは異なり得る。このように、他のチャネルからのクロストークを低減させることができる。
【0126】
C.システムコンポーネント
図13は、本発明の実施形態によるコード化パルス光学システム(CPOS)1310を示す。CPOS1310は、
図2の光測距デバイス210とすることができ、
図13の対応するデバイスは、潜在的に
図2のデバイスに類似する能力を有する。CPOS1310は、
図2のユーザインターフェース215であり得るユーザインターフェース1315と相互作用することができる。ユーザインターフェース1315(例えば、ハードウェアおよびソフトウェア)は、マッチコードおよび他の動作パラメータを指定することができる。ユーザインターフェース1315は、CPOSの結果を示すことができ、この結果は、検出された物体の3次元マップおよび特定の物体の距離値を含み得る。
【0127】
システムコントローラ1320は、a)強度ヒストグラムの累積値をクリアするコマンド、b)パルス重みおよび他の動作パラメータ(例えば、パルス時間間隔および光サンプリング間隔)を指定するコマンド、c)光検出を開始するコマンド、d)強度ヒストグラムの累積値を送信するコマンドを含む、コマンドを送信することによって、光感知モジュール1330(光受信器システムとも呼ばれる)を制御することができる。システムコントローラ1320は、コード化コマンドを送信するためのコマンドバス、およびデータ値を送信および受信するためのデータバスを使用することができる。いくつかの実施形態において、システムコントローラ1320は、0または1の開始信号を送信して、光検出をいつ開始するべきかを示すことができ、また、0または1の極性信号を送信して、強度値に適用されるべき重み(正または負のもの)を示すことができる。
【0128】
システムコントローラ1320は、a)パルスコードおよび他の動作パラメータを指定するコマンド、b)指定されたパルスコードを有するパルス列の送信を開始するコマンド、を含むコマンドを送信することによって、光送信モジュール1340(光送信器とも呼ばれる)を制御することができる。
【0129】
システムコントローラ1320は、
図2のメモリ254に保存することができるマッチコード1324を使用して、整合フィルタを実行するためのデジタル信号プロセッサ(DSP)1322を含むことができる。後のセクションでより詳細に説明されるように、1つを超えるマッチコード(フィルタ)、ならびに異なるレベルのフィルタを保存することができる。DSP1322は、a)DSP動作専門のプロセッサ、b)FPGA内のプログラム可能な論理ブロックを使用すること、およびc)ASIC内のロジックとして、を含む、複数の方法で実装することができる。代替の一実施形態において、DSP1322およびマッチコード1324は、光感知モジュール1330の一部であり得る。マッチコード1324は、整合されるべきテンプレート時系列関数を定義する。一実施形態において、マッチコード1324は、メモリに保存された一連の数値である。マッチコード1324は、整合フィルタによる使用に備えた共役時間反転フォーマットとして保存することができる。
【0130】
光感知モジュール1330は、パルス重み1332と、ヒストグラム1334と、センサアレイ1336と、算術論理ユニット(ALU)1338とを含む。パルス重み1332は、レジスタまたは他のメモリセルの一連の整数または浮動小数点数として保存することができる。代替の実施形態において、パルス重みは、各次元において正または負の単一値(すなわち、+1または-1)を有するように制限され、パルス重みは、ビットパターンとしてレジスタまたはメモリに実装される。強度ヒストグラム1334は、1時間ビンあたり1つ以上のメモリセルを有するメモリ(例えば、
図2のメモリ234)として実装することができる。センサアレイ1336は、光の光子を検出し、各時間ビンに対してデジタル化された強度値を作成する。
【0131】
いくつかの実施形態において、ALU1338は、センサアレイ1336からのデジタル化された光強度と、適切なパルス重み1332とを乗算し、その結果をヒストグラム1334の適切なメモリセルに加算する。他の実施形態において、光感知モジュール1330は、検出された光強度を強度ヒストグラムの適切なメモリセルに/から加算または減算することができる。このような実施形態において、ALU1338は、乗算器を伴わずに加算および減算を実施することができる。
【0132】
光送信モジュール1340は、パルスコード1344と、および光を送信することができるエミッタアレイ1342(例えば、1つ以上のレーザダイオード)とを含む。パルスコード1344は、いつ光を送信するべきかを示す。パルスコード1344は、一連の整数としてメモリ(例えば、
図2のメモリ246)に保存することができる。
【0133】
ヒストグラム1334の次元(例えば、時間ビンの数)は、適用ニーズに整合させることができる。様々な実装態様において、ヒストグラム1334は、パルス時間間隔(検出間隔)が1024nsであり、光サンプリング間隔が1nsであり、かつ2つのタイプのパルスコードがそれぞれ12回送信されるときに、1024個の12ビットのメモリセルを含むことができる。光は、1nsに30cm移動するので、1nsの光サンプリング間隔は、30cmの、または往復時間が考慮されるときには15cmの名目範囲精度を示唆する。コード化パルス12回を繰り返すことによってより長い期間にわたって結果を累積することは、検出精度の改善に加えて、範囲精度の改善につながる。
【0134】
1024nsの光を検出することは、CPOSが、最大307.2m移動した反射光を検出できることを意味する。CPOSが第1のコード化パルスの直後に第2のコード化パルスを送信した場合、第1のコード化パルスからの遠隔反射が、第2のコード化パルスからの反射であると誤って解釈され得る。CPOSは、コード化パルスの間で一時停止して、コード化パルスのエネルギーを消散させることを可能にすることによって、この問題を回避することができる。様々な量、例えば、検出間隔と同じ量、またはそれを超える、もしくはそれ未満の量の一時停止を実行することができる。2つの異なるタイプのパルスコードを12回送信し、コード化パルスの間に1024nsにわたって一時停止することは、48×1024ns、すなわち約50μsかかる。光を反射している物体が、その50μs中にかなりの距離移動した場合、範囲精度が損なわれ得るが、これは大部分の物体に対する懸念でない。毎時100kmで移動している乗用車であっても、50μs中に1.4mmしか移動しない。
【0135】
D. パルスのコード化方法
図14は、本発明の実施形態による、光学測定システムにおいてコード化パルスを使用する方法1400を示すフローチャートである。光学測定システムは、光測距システムであってもよい。方法1400は、複数のコード化パルスを使用して、標的からの反射パルスの時間的位置を検出することができる。リアルタイムの3次元用途において、方法140は、複数の方向に対して連続的に繰り返すことができる。方法1400は、本明細書で説明される光学測定システムのいずれかによって実施することができる。
【0136】
1410で、コード化パルス光学システム(CPOS)が初期化を実行する。例えば、CPOSは、開始、停止、およびパラメータを変更するためのユーザインターフェースコマンドに応答することができる。CPOSは、光送信器を初期化して、パラメータ、例えば、パルスコード、光度レベル、ならびに(例えば、検出間隔、検出間隔の間の一次停止のための間隔、および全体的な測定時間間隔に対する)様々な時間間隔を示すことができる。CPOSは、光感知モジュールを初期化して、パルス時間間隔および光サンプリング間隔などのパラメータを示すことができる。CPOSはまた、例えばヒストグラム1334内の、ヒストグラム値をクリアすることもできる。
【0137】
1420で、パルス列が、一つの光学測定の一部として光源(例えば、レーザ)から送信される。パルス列は、一つの光学測定のために送信されるN個のパルス列の一部として送信することができる。N個のパルス列は、物体から反射し、それにより、物体までの測距測定を可能にすることができる。N個のパルス列の各々は、光源(例えば、VCSEL)からの1つ以上のパルスを含むことができ、開始信号によってトリガされる異なる時間間隔に対応し得る。例えば、
図11は、時間間隔1160および1165をトリガする開始信号1101および1102をそれぞれ示す。
【0138】
いくつかの実施形態において、CPOSは、指定された時間にわたって待機して、以前のパルス列(コード化パルス送信)が消散することを可能にすることができる。CPOSは、次いで、N個の測定パルス列の次のパルス列を送信することができ、N個のパルス列は、コードを形成する。例えば、測定が完了する、例えば(例えば、任意の反射に対して予期される所定の時間の後に)N個のうちの最後のパルス列が消散すると、CPOSは、次いで、適切なパルスコードを使用して、第1の/次のコード化パルス送信を開始することができる。Nは、1よりも大きい整数、例えば、2、3、4、5、またはそれ以上であり得る。
【0139】
1430で、例えば送信されるべきパルス列をトリガする開始信号に応答して、光検出を開始することができる。したがって、CPOSは、コード化パルス送信を開始したのと同時に光検出を開始することができる。光検出の一部として、パルス列は、(例えば、ピクセルに対応する)光測定システムの光センサによって検出することができ、それにより、複数の時点でのデータ値を生成することができる。いくつかの実施形態において、光センサは、一群の光検出器(例えば、SPAD)である。データ値は、様々な形態、例えば(例えば、ヒストグラムの時間ビン内の)時点でトリガしたSPADの数のカウントであり得る。別の例として、データ値は、アナログ光センサ(例えば、APD)に続くADCからのデジタル化された値であり得る。どちらの例も、強度に対応し得る。合計で、N個のパルス列を検出することができる。さらに、プロセスは、光測定デバイスの各光センサに対して別個に実行することができる。
【0140】
1440で、パルス列に対応する時間間隔内の時点でのデータ値に重みが割り当てられ、それにより、加重値を取得する。割り当てられる重みは、パルス重み1332に由来し得る。重みは、N個のパルス列の各々に対して指定することができる。異なるパルス列に対するこのような重みのいくつかは、他のパルス列と同じであり得る。いくつかの実施形態において、N個のパルス列のうちの少なくとも2つは、異なる重みが割り当てられ、異なるパルスパターンを有する。例えば、
図12は、異なる重みを有する2つのパルスパターンを示す。2つのパルス列にはいくつかの類似性がある(例えば、パルスの一部分が重複し得る)が、少なくとも何回か存在し、一方のパルス列がオンであり、他方のパルス列がオフである。このような異なるパルスパターンは、類似する形状を有し得るが、異なる遅延を有し得、例えば、1,0,1,1,0}は、{0,1,0,1,1}までの非ゼロ値の類似する形状を有するが、それらは、第1の信号に対する第2の信号の遅延によって達成され得るようなオフセットにより、異なるパルスパターンである。
【0141】
したがって、CPOSは、各光サンプリング間隔にわたって光を検出し、デジタル化された強度値を作成することができる。各光サンプリング間隔に対して、CPOSは、パルス重みをデジタル化された強度値に適用し、その結果を強度ヒストグラムの適切な時間ビンに加算することができる。
【0142】
1450で、CPOSがコード化パルスの必要な数を送信したかどうか、CPOSを試験する。CPOSがコード化パルスの必要な数を送信した場合、CPOSは、ブロック1460を続け、送信していない場合は、ブロック1420にループバックする。
【0143】
1460で、複数の時間ビンの加重値に対応するヒストグラムが決定される。上で説明したように、複数の時間間隔にわたる特定の時間ビン内の時点での加重値を累積することによって、特定の時間ビンでのヒストグラムのカウンタを決定することができる。例えば、ヒストグラム1170は、2つの時間間隔にわたって累積され、加重データ値1175の時間ビンを含む。
【0144】
1470で、ヒストグラムを使用して、N個のパルス列に対応する信号を検出する。例えば、CPOSは、ヒストグラムがマッチコード(フィルタ)に整合する一連の値を有するかどうかを判定することができる。CPOSは、マッチコードが見つかったかどうか、およびマッチの振幅を報告することができる。マッチは、他の光源からのノイズまたは干渉に対する所望の信号の検出を可能にすることができる。
【0145】
例として、
図9の技術を使用して、信号を検出することができる。フィルタは、ヒストグラムの時間ビンの窓に適用されるべき値のセットを含むことができる。フィルタは、ヒストグラム上をスライドさせて、ヒストグラムに対するプロファイルフィルタの異なるスライド位置に対応するカウンタを有する、フィルタ処理されたヒストグラムを計算することができる。フィルタ処理されたヒストグラムのカウンタの各々は、プロファイルフィルタの重複および特定のスライド位置でのヒストグラムに対応し得る。フィルタ処理されたヒストグラムのカウンタの最大値を識別し、それにより、例えば最大値が閾値を超えたときの検出を可能にすることができる。カウンタの最大値の特定のスライド位置は、受信時間に対応することができ、これを測距測定に使用することができる。フィルタを使用するためのさらなる詳細および技術は、本明細書で説明されており、方法1400を用いて使用することができる。
【0146】
いくつかの実施形態において、信号は、例えば光測定システムが測距測定を実行するように構成されたときに、物体から反射するN個のパルス列によって引き起こされる反射信号であり得る。他の実施形態において、信号は、例えば光源がある位置にあり、光センサが異なる位置にあるときの、通信信号であり得る。このような構成は、通信の目的で使用することができる。例えば、マイクロ波送信塔は、データを受信塔に送信することができる。送信データは、コード化パルスを含むことができ、これは、他の源のノイズまたは干渉によって引き起こされ得るような、データ受信におけるエラーを低減させるのに役立ち得る。受信塔は、2つのパルス列の間の任意の時間を第1の時間ビンの開始時間として選択することによって、パルス列を識別し、ヒストグラムを作成することができる。次いで、(例えば、ヒストグラム上をスライドさせることによって)整合フィルタを適用することができ、十分な整合を見つけた場合に、その通信信号を検出することができる。取得したフィルタ処理されたヒストグラムの最大値によって、十分な整合を測定することができる。さらなる実施形態として、システムは、通信信号を検出するために使用される様態に類似する様態で、別のCPOSから干渉信号を検出することができる。干渉が測定される場合、いくつかの実装態様は、例えば、現在使用されているコードに類似する干渉コードの、送信コードを変更することができる。
【0147】
1480で、物体までの距離を決定することができる。例えば、開始信号に対するN個のパルス列に対応する受信時間を決定することができる。物体までの距離は、受信時間を使用して決定することができる。受信時間は、パルス列の送信時間からオフセットすることができるが、このようなオフセットを考慮することができる。したがって、CPOSは、それが検出された時間を報告することができる。距離は、開始信号の受信時間と開始時間との間の往復時間に対応することができ、したがって、距離は、時間的に表すことができる。
【0148】
検出信号は、測距以外の他の目的に使用することができる。例えば、検出信号の質を使用して、物体の反射率を測定することができる。例えば、検出信号が強い強度を有する場合、システムは、物体が高反射率を有すると判定することができる。通信および干渉測定のための実装態様は、上で考察されている。別の光源からの干渉を検出する場合、検出信号は、干渉光源によって送信されるパルス列の別のセットからのものである。
【0149】
概念として、実施形態は、N+1個の一意の重みを有するN+1個の一意のコードを送信して、N次元のベクトル空間ヒストグラムを生成することができる。例えば、符号付きの数を保持するビンの代わりに、ビンは、1つが正で1つが負である少なくとも2つの一意のコードを送信することによって、1Dベクトル(例えば、符号付きの数に等しい)を保持することができる。2Dベクトルを(例えば、極座標またはデカルト座標で)保存するために、システムは、少なくとも3つの一意のコードを送信することができ、これは、3つの異なる極角を用いて重み付けし、合計して単一の2Dベクトルにすることができる。N-Dベクトル(すべてが単一の「ビン」内に保持されるN個の別々の数を用いて定義される)は、N+1個の異なるコードを必要とし、それぞれが、ベクトル和を行うときに、(すべての他の重みに対して直角であるその重みに対する成分を有する他の世界において)異なる角度で重み付けされる。次元を増加させることによって、RF通信に使用される直交位相コード化または符号分割多重アクセス(CDMA)のようなより高度なコード化技術を使用することができる。この文脈では、N次元整合フィルタを使用することができる。
【0150】
上で述べたように、方法1400を使用して、チャネルの間の干渉を低減させることができる。例えば、方法1400は、複数の光測定の一部として、光源および光センサの複数のチャネルに対して繰り返すことができる。複数の光測定は、時間的に重複させる、例えば実質的に同時に実行することができる。したがって、各チャネルは、同時に測定を実行することができる。干渉を低減させるために、コードは、チャネルの少なくともいくつかに対して異なり得る。例えば、複数のチャネルのうちの少なくとも2つのチャネルのN個のパルス列のパルスパターンが異なり得、それにより、異なるチャネルに対する異なるヒストグラムパターンを引き起こし得る。加えて、または代わりに、複数のチャネルのうちの少なくとも2つのチャネルのN個のパルス列に割り当てられる重みが異なり得、それにより、異なるチャネルに対する異なるヒストグラムパターンを引き起こし得る。
【0151】
V.異なるプロファイルフィルタを使用する整合フィルタ処理
図8について上で説明したように、検出されたパルスから生じる信号は、パルスが反射した物体のタイプに応じて異なり得る。
図8に示されるように、高反射性の物体からの1つのパルス(例えば、コード化パルスパターンの第1のパルス)に対応する結果信号(例えば、複数の検出間隔にわたって累積されるヒストグラム)の一部分は、最初に尖鋭なピークを有し、次いで、素早く減少し得る。SPADが光子を検出した後に別の光子を検出することができるようになるまでの不感時間(例えば、10~20ns)が存在するような挙動は、SPADを使用するときにもたらされ得る。対照的に、標準オブジェクトから反射されるパルスのヒストグラムの一部分は、比較的正方形様であり得、それにより、実際に送信されたパルスに似ている。したがって、コード化パルスパターンを使用して、反射パルスと背景とを区別する能力を増加させる場合であっても、検出信号の異なる形状のため、例えば異なる強度のパルスを検出するため、他の問題が生じ得る。検出信号は、送信されたパルス幅よりも長くなり得、例えば、パルスが角度付き表面から反射したときに、不鮮明化パルスが発生し得る。
【0152】
上の挙動は、ピクセルあたり(すなわち、ピクセルセンサあたり)より多くのSPADまたは他の光検出器を使用することによって緩和することができ、よって、中程度の光束下であっても、いくつかのSPADは起動するが、いくつかのSPADは常時アクティブになる。しかしながら、非常に高い光束下では、SPADのほとんどまたはすべてが起動する状況が存在することになり、ピクセルセンサは、SPADのほとんどまたはすべてがオフにされるので、多くの光子を直ちに検出することができない。
【0153】
さらに例示するために、SPADが20nsの不感時間を有するが、反射パルスからの高光束が10ns毎に1つの光子であると仮定する。SPADの出力は、20ns毎にのみ光子を示す。別の例として、反射光の強い50nsパルスを用いて、あらゆるSPADを起動(登録)し、次いで、20nsにわたってオフにすることができる。20ns後に、SPADは、オンに戻り、再度登録し、オフになり、もう一度オンになる。したがって、50nsパルスは、3つの短いスパイクのように見える。このような検出信号の変化は、コード化パルスを完全に外れさせ、物体の数に関する混乱を引き起こし、または少なくとも50nsパルスの受信時間を不正確に決定させる場合がある。この問題に対処するために、異なる整合フィルタを使用して、SPADの異なる減衰/応答/パイルアップを識別することができる。
【0154】
したがって、実施形態は、異なるタイプの信号プロファイル(例えば、パイルアップのない/少ない、中パイルアップ、および高パイルアップ)に対応するフィルタを使用することができる。整合プロセスは、ピクセルセンサの光検出器から信号のタイプを決定することができ、それにより、物体までの距離を決定するために使用される飛行時間の計算を実行するための受信時間のより良好な決定を可能にする。いくつかの実施形態において、多層のフィルタリングを実行することができ、例えば、粗フィルタは、(例えば、整合した粗フィルタに対応する)補間フィルタのサブセットを使用して窓内の信号を補完することによって行われ得るような、より精緻化された分析を実行するための値の窓を識別することができる。このような改良は、後で説明される。
【0155】
A.生のヒストグラム(および正規化)へのフィルタプロファイルの適用
いくつかの実施形態では、プロファイルフィルタを生のヒストグラムに適用することができる。プロファイルフィルタは、通常、名目レーザパルスと対応させることができるが、プロファイルフィルタは、より短くなるように、より長くなるように、または名目パルス上の標的または検出器の予測効果に基づいて適用される異なる形状もしくは歪みを有するように変更することができ、例えば、
図8の異なる検出信号のように様々であり得る。より短いプロファイルは、より高いパイルアップの状況に対応させることができ、より長いプロファイルは、パルスが角度付き表面に衝突する状況に対応させることができ、それにより、時間的に反射パルスを不鮮明化することができる(例えば、角度付き表面のため、レーザパルスの一方の側(例えば、左側)が、レーザパルスの他方の側(例えば、右側)よりも近くなる)。生のヒストグラムの全高さは、不鮮明化光束のため減少し得る。他の例として、クラウドまたはフォリッジもまた、不鮮明化パルスを引き起こし得る。フィルタプロファイルを生成することは、異なる歪み源をシミュレーションし、それらの効果を名目パルスプロファイルに適用することによって達成することができる。代替的に、フィルタプロファイルは、現位置でヒストグラミング測定を行い、フィルタプロファイルとしてヒストグラム内に現れるデジタル化パルスプロファイルを保存することによって、経験的に導き出すことができる。
【0156】
したがって、異なるプロファイルは、物体の方向のため、ならびに反射光の強度のため(例えば、
図8について説明されるように、不感時間の影響のため)、異なるインパルス幅を補償することができる。どちらの影響も、連続する時間ビンにわたって光センサによって検出されている異なる光子速度をもたらす。
【0157】
いくつかの実施形態において、プロファイルフィルタは、正規化相互相関の技術に基づいて設計され、それによれば、フィルタによって、入力信号の形状に最も密に整合する最高値が返される。したがって、いくつかの実施形態では、3つの異なるフィルタプロファイルが、
図8および下の
図15に示されるようにパイルアップなし、中パイルアップ、高パイルアップを伴う、デジタル化信号のプロファイルに基づいて設計される。
図15はまた、不鮮明化フィルタも示す。異なるプロファイルフィルタの適用を示すために、下の例では、1つ以上のパルス列に対して単一のパルスが想定される。
【0158】
図15は、本発明の実施形態による、生のヒストグラム1510に適用される複数のプロファイルフィルタを示す。
図15は、不明な信号に適用して、検出信号のプロファイル形状、その位置、および検出信号を生成したパルスの受信時間を決定することができる、様々なフィルタを示す。この実施例において、放出パルスは、5つの時間ビンの幅を有する。生のヒストグラム1510は、極めて大きくなる場合があり、説明を簡単にするために、一部分のみが示される。
【0159】
生のヒストグラム1510は、かなりの値、特にカウンタ1512を伴う1つの時間ビン1515を有する。このような形状は、高パイルアップに対応する。実際の信号形状のタイプは、システムには不明であり、したがって、様々なフィルタプロファイルを適用することができる。反射パルス1517は、時間ビン1515が最後の4つの時間ビンの不感時間により測定可能な信号を有する唯一の時間ビンである場合であっても、受信されている実際のパルス(5つの時間ビン)示す。反射パルス1517は、光センサに衝突する実際の光束に対応するが、すべての光束が実際に検出されるわけではない。他の例において、反射パルス1517は、(例えば、角度付き表面のため、または物体に対する相対距離の増加ため)より長くなり得るか、または(例えば、物体に対する相対距離の減少のため)より短くなり得る。
【0160】
高パイルアップのフィルタ1520は、非ゼロ値を伴う1つの時間ビンを有し、
図8の高パイルアップのプロファイル830に類似する。高パイルアップのフィルタ1520は、生のヒストグラム1510に適用して、かなりの値を伴う単一の時間ビンを有する高フィルタ出力1525を生成することができ、この時間ビンは、時間ビンの配列、ならびに生のヒストグラム1510および高フィルタ出力1525によって示されるように、1515の時間に対応する。予想されるように、高パイルアップフィルタ1520は、ピーク1522(すなわち、高フィルタ出力1525の最大値)が他のフィルタ出力の最大値よりよりも高いことによって証明されるように、最良の整合を提供する。
【0161】
中パイルアップフィルタ1530は、
図8の中パイルアップのプロファイル820に類似する形状を有する。中パイルアップフィルタ1530は、生のヒストグラム1510に適用して、かなりの値を伴う複数の時間ビンを有する中フィルタ出力1535を生成することができる。所与の時間ビンのフィルタ処理された出力の値は、フィルタの最左端の(第1の)ビンに対応する時間で示すことができる。これは、パルスの立ち上がりエッジを検出するときに実行され得る。中フィルタ出力1535は、最右端のタップ1531が最初にカウンタ1512と重複するように、中パイルアップフィルタ1530に対して逆にした形状を有する。タップフィルタが増加するので、右側への移動のそれぞれは、より多くの重複を提供する。しかし、中フィルタ出力1535のピーク1532は、ピーク1522よりも低い。
【0162】
低パイルアップフィルタ1540は、
図8の低パイルアップのプロファイル810に類似する形状を有し、5つの時間ビンである放出パルスに類似する。低パイルアップフィルタ1540は、生のヒストグラム1510にわたって適用して、かなりの値を伴う複数の時間ビンを有する低フィルタ出力1545を生成することができる。低フィルタ出力1545の最大値は、ピーク1522よりも低い。ピークは、フィルタ処理された出力が平坦であるので、識別することが困難である。しかし、後に下で説明されるように(
図16)、例えば第1の層が粗フィルタ層であるときに、追加のフィルタ層を適用することができる。したがって、低パイルアップフィルタ1540に類似し得る初期の粗フィルタを使用するいくつかの実施形態が存在し、次いで第2のレベルフィルタを粗フィルタ出力に適用する。
【0163】
不鮮明化フィルタ1550は、放出パルスよりも長い反射パルスに対応する形状を有する(9つの時間ビン対5つの時間ビン)。他のフィルタと同様に、不鮮明化フィルタ1550は、生のヒストグラム1510に適用して、不鮮明化フィルタ出力1555を生成することができる。これは、標的に対する高い入射角のため、または標的がブッシュのような拡散媒体であるので、もしくは極端な場合にフォグのパッチであるので、適時にパルス幅を不鮮明化する標的を検出するのに有用である。フィルタ1520、1530、1540、および1550はそれぞれ、異なるデジタル化信号プロファイルに対応する予測信号プロファイルを有することができる。
【0164】
高フィルタ出力1525のピーク1522は、様々なフィルタ出力のすべてからの全体的な最大であるので、時間ビン1515は、反射パルスの時間的位置として選択される。整合フィルタ回路は、1つの時間ビンだけがかなりの値を有し、単に高フィルタ出力1525の時間ビン1515が他のフィルタのいずれかの最高値を有していることを知らない場合がある。所望に応じて、放出パルスの中央は、放出パルスの幅を使用して、例えば幅の幅の半分を時間ビン1515の時間に加えることによって、決定することができる。
【0165】
デジタル化信号が中パイルアップを有する場合、フィルタが正確に生のヒストグラムと重複するときに大部分の重複が発生するので、中フィルタ出力は、最高値を有する。また、中程度のフィルタ出力のピークは、時間ビン1515でもある。同様に、デジタル化信号が低パイルアップを有する場合、低フィルタ出力1545は、最高値を有し、不鮮明化デジタル化信号の不鮮明化フィルタ1550に類似する。
【0166】
正しいフィルタ出力のピークに対応する全体的な最大値を確実にするために、様々なフィルタの電力を正規化することができる。例えば、示されるように、高パイルアップフィルタ1520の1つのタップは、他のフィルタのいずれかよりも高い値を有する。同様に、中パイルアップフィルタ1530の最高タップは、低パイルアップフィルタ1540のタップよりも高く、これは、不鮮明化フィルタ1550のタップよりも高い。いくつかの実施形態において、フィルタタップの各セットの二乗平均平方根は、同等である。別の実施形態では、各フィルタの総統合領域が同等であり得、それにより、より多くのタップが加えられたときに値を減少させることができる。
【0167】
したがって、個々のフィルタ処理された信号を比較する前に、これらの個々の信号を正規化することができる。一実施形態において(示されるように)、正規化フィルタを使用して相互相関(整合フィルタ)を実行することによって、正規化比較が行われる。正規化フィルタを作成するために、フィルタタップの各セットの二乗平均平方根を計算することができ、次いで、フィルタ全体をエネルギーの平方根で除算する。平方根以外の他の関数を使用することができる。
【0168】
他の実施形態において、正規化比較は、最初に非正規化フィルタを適用し、次いで結果(すなわち、フィルタ出力)をフィルタエネルギーの平方根で除算することによって行われる。この後の実施形態は、計算的により単純であり得る。複数のフィルタ処理された信号の正規化比較の後に、最大値が、最良の適合に対応する。このようにして、本実施形態によって反射面の性質に関する情報(例えば、表面の角度、反射の程度、および物体の相対速度)を取得することができる。
【0169】
フィルタ出力を生成することの一部として、
図15に示されるように、スライドステップサイズは、1つの時間ビンであり得る。他の実施形態では、より小さいステップサイズが使用され得る。例えば、(例えば、フィルタと生のヒストグラムとを畳み込むことによる)重複値は、時間ビンの0.1、0.2、または0.5毎に決定することができる。
【0170】
B.プロファイルフィルタのフィルタ処理されたヒストグラムへの適用
いくつかの実施形態では、例えば初期粗フィルタによって生成された、異なるプロファイルフィルタをフィルタ処理された信号に適用することができる。このような初期粗フィルタは、生のヒストグラムにわたって適用して、反射パルスに対応するヒストグラムのセクションを識別すること(すなわち、背景光から区別すること)ができる。得られたフィルタ出力は、異なるデジタル化信号プロファイルの異なるプロファイルを有する。
【0171】
1.異なるプロファイルフィルタの間の比較
図16は、本発明の実施形態による、第1レベルのフィルタからのフィルタ処理された出力への異なる第2レベルのプロファイルフィルタの適用を示す。
図16は、3つの列および5つの行を有する。3つの列は、パイルアップなし1610、中パイルアップ1620、および高パイルアップ1630である。行は、(A)生のヒストグラム、(B)第1のフィルタレベルで適用される(例えば、単一の方形フィルタからの)粗フィルタ出力、(C)第2のフィルタレベルで適用されるパイルアップなしフィルタ出力、(D)第2のフィルタレベルで適用される中パイルアップフィルタ出力、および(E)第2のフィルタレベルで適用される高パイルアップフィルタ、に対応する。
【0172】
パイルアップなし信号1611、中パイルアップ信号1621、および高パイルアップ信号1631は、それぞれ、低パイルアップのプロファイル810、中パイルアップのプロファイル820、および高パイルアップのプロファイル830に対応する。ピクセル上の実際の光束1650は、破線で示される方形パルスである。
【0173】
図16において、単一の方形フィルタは、生のヒストグラムの各々に適用される。方形フィルタは、放出パルスの幅を有することができる。この方形フィルタは、それが第1のレベルで使用される(すなわち、生のヒストグラムに直接適用する)という点で粗であると考えることができ、分解能は、単一の時間ビンのサイズであり得る(例えば、スライドステップは、1つの時間ビンである)。異なるフィルタ出力は、異なる生のヒストグラム入力に起因する。フィルタ出力は、方形フィルタの重複、および方形フィルタの異なる位置の信号を決定することによって決定される。
【0174】
粗パイルアップなしフィルタ出力1612は、例えば、
図9の最終的なフィルタ処理された出力990に類似する三角形を有する。フィルタ処理されたヒストグラム上の水平軸は、方形フィルタの特定の位置に対応する。しかし、パイルアップなし信号611に対するフィルタ出力1612の実際の時間的位置は、水平軸のそれらの相対位置に必ずしも関連するわけではない。フィルタ出力が、反射パルスの立ち上がりエッジ(例えば、時間ビンのフィルタ処理された値は、フィルタの最左端位置に対応する)を検出するために生成される場合、フィルタ出力1612のピークは、パイルアップなし信号1611の立ち上がりエッジに対応する。さらに、フィルタ出力1612の幅は、パイルアップなし信号1611よりも大きい(例えば、9つのビン対5つのビン)。したがって、水平軸の目盛りは、2つのプロットについて異なるが、線1617は、
図9のように時間ビンの値が粗フィルタの中心でキーオフされたときに、検出パルスの中央に対応し得る。
【0175】
粗中パイルアップフィルタ出力1622は、例えば中フィルタ出力1535に類似して、第1の部分の各時間ステップと共に増加する。時間1627(例えば、検出パルスの中央に対応する)での減少は、中パイルアップ信号1621のピークを通る方形フィルタの前縁から生じ得る。
【0176】
方形フィルタは、この第1のレベルの低パイルアップフィルタと考えることができるので、粗高パイルアップフィルタ出力1632は、方形パルスに似ており、例えば、低パイルアップフィルタ出力1545に類似する。高パイルアップ信号1631は、生のヒストグラム1510に類似する、閾値を超えるかなりの値を有する単一の時間ビンと近似させることができる。線1637は、平坦な頂部のフィルタ応答と関連付けられる曖昧性を示す。フィルタ応答の最大は、ノイズの追加を伴う粗高パイルアップフィルタ出力1632の平坦な頂部に沿ったどこかの場所に容易に発生し得る。
【0177】
行C~Eは、行Bの方形フィルタ出力に適用されている第2のレベルのフィルタに対応する。各行は、行Bのそれぞれの方形フィルタ出力に適用されている異なる第2のレベルのフィルタに対応する。3つの異なる第2のレベルのフィルタは、行Bの出力のプロファイルに大まかに対応するプロファイルを有する。したがって、第2のレベルのフィルタは、行Bに示されるプロファイルを有する異なるプロファイルフィルタであると考えることができる。基礎をなすデジタル化信号に対応する(すなわち、対応するフィルタ出力に類似する形状であることによって)第2のレベルのフィルタは、最良の整合を提供し、したがって、受信時間を決定するために使用される。
【0178】
行Cにおいて、プロファイルフィルタ出力1613は、パイルアップなしのプロファイルフィルタをフィルタ出力1612に適用することによって生成される。この実施例において、パイルアップなしのプロファイルフィルタは、(より指数的な立ち上がりおよび減衰、例えばガウス曲線であるが)形状の点でフィルタ出力1612自体に類似し、低パイルアップのフィルタ1540に類似しない。これらのプロファイルフィルタは、それらが異なるレベルで適用されるので異なっており、一方は、生のヒストグラムに直接適用され、他方は、第1のレベルのフィルタ出力に適用される。フィルタ出力1612が本質的にそれ自体と共に畳み込まれるので、プロファイルフィルタ出力1613は、対称形であり、かつフィルタ出力1612と本質的に同じ時間のピークを有し得る。
【0179】
プロファイルフィルタ出力1623は、パイルアップなしのプロファイルフィルタ(本質的にフィルタ出力1612)を粗中フィルタ出力1622に適用することによって生成される。粗中フィルタ出力1622の非対称の形状は、プロファイルフィルタ出力1623の非対称の形状を引き起こす。また、パイルアップなしのプロファイルフィルタは、粗中フィルタ出力1622に正確に整合しないので、プロファイルフィルタ出力1623のピークは、プロファイルフィルタ出力1613の最大1616未満である。
【0180】
プロファイルフィルタ出力1633は、パイルアップなしのプロファイルフィルタを粗高パイルアップのフィルタ出力1632に適用することによって生成される。粗高パイルアップのフィルタ出力1632の略対称形の形状は、プロファイルフィルタ出力1633の対称形状を提供する。また、パイルアップなしのプロファイルフィルタは、粗高パイルアップのフィルタ出力1632に正確に整合しないので、プロファイルフィルタ出力1633のピークは、最大1616未満である。
【0181】
行Dにおいて、中パイルアップのプロファイルフィルタは、行Bの様々なフィルタ出力に適用される。中パイルアップのプロファイルフィルタは、粗中フィルタ出力1622に類似する形状を有する。したがって、フィルタ出力1624は、フィルタ出力1614(パイルアップなし)およびフィルタ出力1634(高パイルアップ)に対して最大値を有する。
【0182】
行Eにおいて、高パイルアップのプロファイルフィルタは、行Bの様々なフィルタ出力に適用される。高パイルアップのプロファイルフィルタは、粗高パイルアップのフィルタ出力1632に類似する形状を有する(すなわち、本質的に方形フィルタ)。したがって、フィルタ出力1635は、フィルタ出力1615(パイルアップなし)および中出力1625(中パイルアップ)に対して最大値を有する。
【0183】
2.最大窓ファインダ-中パイルアップの例
いくつかの実施形態において、第1のレベルのフィルタは、第2のレベルのフィルタリングを実行するための特定の窓を識別することができる。第1のレベルフィルタは、反射パルスが検出される場所を正確に知らないので、生のヒストグラム全体にわたって適用され得る。フィルタ出力の最大の位置を識別することができ、その最大の周りの窓は、第2のレベルのプロファイルフィルタを使用して分析することができる。メモリ、時間、および計算の労力の節約は、この最大窓にのみプロファイルフィルタを適用することによって節約することができる。したがって、これらのフィルタの各々を最大窓結果に適用し、それらを比較して、どれが最高値を有するかを見つけることによって、どのパイルアップシナリオが真の信号に最良に近似するかを見つけることができる。
【0184】
図17は、本発明の実施形態による、中程度のパイルアップ信号に適用される2つのレベルのフィルタを使用するプロセスフローを示す図である。第1のレベルのフィルタ(例えば、方形フィルタ)は、中パイルアップ信号に適用して、中パイルアップフィルタ出力1710を取得することができ、これは、粗中フィルタ出力1622のように見え得る。中パイルアップのフィルタ出力1710を取得することの一部として、第1のレベルのフィルタは、生のヒストグラムにわたってスライドすることができ、フィルタ出力の最大を識別することができる。この最大の周りの窓を選択することができ、窓は、中パイルアップのフィルタ出力1710の関連部分を含み、それにより、選択された最大窓1720を取得する。
【0185】
最大窓1720が選択されると、複数の第2のレベルのプロファイルフィルタを選択することができる。どの第2のレベルのプロファイルフィルタが選択されるかは、フィルタ処理された出力の特性(例えば、その幅などの、非ゼロ値のパターン)、ならびに使用される第1のレベルのフィルタの特性(例えば、その幅などの、非ゼロ値のパターン)に依存し得る。次いで、選択された第2のレベルのプロファイルフィルタを、選択された最大窓1720内のフィルタ出力データに適用することができる。
【0186】
この実施例において、3つの第2のレベルのプロファイルフィルタ1722~1726は、例えば、予測された信号プロファイルに、またはより正確には、このような信号プロファイルのフィルタ処理された出力に対応するように選択される。低パイルアップのプロファイルフィルタ1722は、最左端の第2のレベルのフィルタ出力を提供し、中パイルアップのプロファイルフィルタ1724は、中間の第2のレベルのフィルタ出力を提供し、高パイルアップのプロファイルフィルタ1726は、最右端の第2のレベルのフィルタ出力を提供する。元の生のヒストグラムは、中パイルアップおよび選択された最大窓1720を有するので、選択信号1732は、中間の第2のレベルの出力である。
【0187】
いくつかの実施形態では、1つを超えるプロファイルフィルタを所与の形状に対して選択することができる。例えば、反射パルスの立ち上がりエッジがいつ時間ビン内で受信されるかに依存して、それぞれが互いにわずかに異なる複数の中パイルアップのプロファイルフィルタを使用することができる。このようなプロファイルフィルタのセットは、検出された生のヒストグラムを効果的に補完して、時間ビンの幅よりも細かい分解能で反射パルスの受信時間を識別することができる。次のセクションは、このような補間に関するさらなる詳細を提供する。
【0188】
C.補間
いくつかの実施形態において、補間回路は、ヒストグラムビンの間の補間を実行する。デジタル補間は、一般に、データにゼロ充填すること、および有限インパルス応答(FIR)または無限インパルス応答(IIR)を適用することによって行われる。他の実装態様において、より正確かつ経済的なスキームが使用される。これらの実施形態において、補間回路は、上記によって識別されるような信号形状の事前知識を使用する。したがって、補間回路は、多数の整合フィルタを適用することができ、整合フィルタのそれぞれが1未満の補間ビンの補間オフセットに対応する。例示的な実装態様として、補間回路は、各々が異なる補間オフセットに対応する、1つのプロファイルあたり10個の異なる整合フィルタを適用することによって行う。
【0189】
したがって、デジタル信号プロセッサ(DSP)スキームのブロックは、補間フィルタを使用することができる補間回路を含むことができる。補間フィルタは、第1のレベルのフィルタまたは第2のレベルのフィルタであり得る。補間フィルタは、時間ビンの幅よりも高い精度を有する検出パルスの受信時間に関する情報を提供することができる。
【0190】
補間の例として、方形反射パルスの立ち上がりエッジが時間ビンの中央に正確に到達し(例えば、500psで1ナノ秒の時間ビンに入る)、検出パルスが3nsの幅であると仮定する。立ち上がりエッジが時間ビンの途中で到達したので、約半分の光子の光束が、次の2つの時間ビンよりも第1の時間ビンにおいて検出される。立ち下がりエッジが第4の時間ビンの途中で着地するので、第4の時間ビンもまた、検出された光束の約半分を有する。したがって、生のヒストグラムは、4つの連続する時間ビンにおいて4つの値(5、10、10、5)を有し得る。「10」は、全光束がそのビンにおいて検出されたことを示し、「5」は、全光束の半分がそのビンにおいて検出されることを示す。
【0191】
前端ビンおよび後端ビンにおける値の比率を使用して、立ち上がりエッジの位置を決定することができる。例えば、前端ビンが4の値を有し、後端ビンが6の値を有する場合、立ち上がりエッジは、600psで前端ビン(例えば、100.6ns)に入る。実際には、生のヒストグラムの特定の値は、例えば検出プロセスのノイズおよび確率的な性質のため、このような理想的な値を有さない場合がある。したがって、このような比率を計算する代わりに、異なる補間フィルタを使用することができる。例えば、前端ビンが100ns~101nsである場合は、100.1ns、100.2ns、100.3nsなど等のための補間フィルタが存在し得る。このような例において、最良に整合するフィルタは、100psの範囲内で受信時間を識別することができる。このような補間フィルタは、補間フィルタが第2のレベルのフィルタとして適用されるときに、粗フィルタに使用されるよりも多くのビットの固定小数点乗算を実行することができる。
【0192】
補間フィルタの異なるセットを、異なるプロファイルに使用することができる。例えば、補間フィルタのあるセットを高パイルアップのプロファイルに使用すること、補間フィルタの異なるセットを中パイルアップのプロファイルに使用すること、などを行うことができる。セット内の各補間フィルタは、時間的なフィルタスライドとしてパルスプロファイルのわずかな量子化シフトを考慮する、わずかに異なるプロファイルを有することができる。10倍補完するために(例えば、時間ビンの幅が1であるときに、0.1の精度)、10個の補間フィルタを使用することができる。2ビンの矩形パルスの単純な場合(例えば、高パイルアップのプロファイル)において、補間フィルタは、(10,0)、(9,1)、(8,2)、(7,3)、(6,4)、(5,5)、(4,6)、(3,7)、(2,8)、(1,9)であり得る。これらの補間フィルタの各々を信号に適用して、1/10のビンに下げた補間範囲を得るために最良に適合するものを識別することができる。当業者は、このような補間フィルタの、2つを超える時間ビンのパルスへの適用、ならびにより複雑なパルス形状および長さへの適用を認識するであろう。さらに、連続したパルス列(例えば、同じパルスパターンの連続したもの)は、後のセクションでより詳細に説明されるように、互いにオフセットして(例えば、1/10のビンだけずらして)、ヒストグラムが1つを超える時間ビンを占有することを確実にする。
【0193】
1.生のヒストグラムへの補間フィルタの適用
図18は、本発明の実施形態による、生のヒストグラムへの異なる補間フィルタの適用を示す。
図18は、3nsの反射パルス1817に応答して生成される、生のヒストグラム1810に適用される4つの補間フィルタを示す。生のヒストグラム1810(Hと表記される)は、時間ビン1812に対して-1/4の時間ビンだけシフトさせた立ち上がりエッジ1815を有する。補間フィルタの各々は、補間を、例えば非ゼロ値の異なるパターンを提供するために、対応する時間ビンの値の異なるパターンを有することができる。
【0194】
ゼロシフト補間フィルタ1820は、同じ値を有する3つのタップを備える。ゼロシフト補間フィルタ1820は、Hで畳み込まれて、ゼロシフト出力1825を提供する。畳み込みプロセスは、かなりの値を有するJ+Kの-1個の時間ビンを提供することができ、式中、Jは、補間フィルタのタップの数であり、Kは、(例えば、背景閾値を超える)かなりの値である生のヒストグラムの時間ビンの数である。
【0195】
各時間ステップにおいて、畳み込み(例えば、重複)は、2つのプロファイルの間に決定することができ、得られた値は、第1の補間タップの位置に対応する時間ビンに使用することができる。この実施例において、ピーク1827は、これらの3つの時間ビンが時間ビン1811よりも高い値を有するように、最左端の補間タップが時間ビン1812と一致するときに発生する。
【0196】
-3/4のシフト補間フィルタ1830は、時間ビンの3/4が立ち上がりエッジ1831を伴う反射パルスを含むので、後端タップよりも高い前縁タップを有する。畳み込みは、ゼロシフトが-3/4のシフトよりも-1/4の実際のシフトに近いので、ピーク1827よりも低い、ピーク1837を伴うフィルタ処理された出力1835を提供する。
【0197】
-1/4のシフト補間フィルタ1840は、時間ビンの1/4が立ち上がりエッジ1841を伴う反射パルスを含むので、後端タップよりも低い前縁タップを有する。畳み込みは、-1/4のシフトが立ち上がりエッジ1815の実際のシフトと同じであるので、すべてのフィルタ処理された出力のうちで最も高い、ピーク1847を伴うフィルタ処理された出力1845を提供する。
【0198】
-1/2のシフト補間フィルタ1850は、各対応する時間の1/2が立ち上がりエッジ1851を有するときに反射パルスを含むので、等しい前端タップおよび後端タップを有する。畳み込みは、ゼロシフトがゼロシフトよりも-1/4の実際のシフトからの同じ距離であるので、ピーク1857にほぼ等しい、ピーク1857を伴うフィルタ処理された出力1855を提供する。
【0199】
図18の実施例は、パイルアップフィルタなしを仮定したが、特定のプロファイルは、知られていない場合がある。そのような場合は、各プロファイルが異なる幅を有する、様々なプロファイルフィルタを生のヒストグラムに適用することができる。この第1のステージの目的は、どのプロファイルがデジタル化信号に最良に整合するかを識別することであるので、これらのプロファイルフィルタは、それぞれ粗フィルタであり得る。このような異なるプロファイルフィルタまたはそれらの出力は、本明細書で説明されるように、正規化することができる。どのプロファイルフィルタが最良に整合するかに依存して、次いで、そのタイプ(例えば、高パイルアップ)の補間フィルタを補間ステージに適用することができる。最良の整合を有する初期の粗フィルタは、例えば、立ち上がりエッジの特定のシフト(例えば、方形粗フィルタのゼロシフト)に対応する補間フィルタのセットの1つであり得る。
【0200】
フィルタは、ヒストグラムの様々な信号形状により良好に整合し得るが、パルスの位置が知られていない場合があるため、計算的に高価であり得るので、補間フィルタを生のヒストグラムに適用することは、フィルタ出力に適用する(例えば、補間フィルタが第2のレベルのフィルタである)よりも、ノイズ内の信号を検出する際に効果的であり得る。このような例では、補間フィルタの各々を生のヒストグラム全体にわたって適用することができる。しかしながら、一実装態様において、他の補間フィルタをどこに適用するべきかを指定するために、第1の補間のピーク位置が使用され得る。他の実施形態では、1つ以上の粗フィルタプロファイルを(例えば、本明細書で説明されるように)最初に適用して、補間フィルタを生のヒストグラムに対して実行することの利点の多くを達成することができ、これを使用して、反射パルスの周りの窓を見つけることができ、次いで、補間フィルタを適用することができる。
【0201】
2.フィルタ処理されたヒストグラムへの適用
いくつかの実施形態において、補間フィルタは、生のヒストグラムに直接適用することとは対照的に、フィルタ出力に適用することができる。例えば、
図16を再度参照すると、第2のレベルのフィルタを適用して、様々な第2のレベルのフィルタ出力を提供するときに、1つを超える第2のレベルのフィルタを適用することができる。したがって、1つを超える高パイルアップの第2のレベルフィルタが存在し得る。
図16において、高パイルアップの第2のレベルのフィルタは、粗高パイルアップのフィルタ出力632に名目上似ている。しかし、単一の方形フィルタの代わりに、複数の(例えば、10個の)補間フィルタを使用することができ、各補間フィルタは、例えば
図18に類似する、反射パルスの立ち上がりエッジの異なる位置に対応する、異なるプロファイルを有する。補間パルスの数は、所望の精度に依存し得る。
【0202】
したがって、生の高パイルアップ信号が大きい値を伴う1つの時間ビンを有するが、次の時間ビンがより小さいが顕著な値(例えば、第1の時間ビンの終わり近くに到達する強い立ち上がりエッジの結果として)を有する場合、フィルタ処理された出力は、完全に方形にならない。例えば、5ビンの方形フィルタの場合、生のヒストグラムがより大きい第1のビンを有するので、等しい高さの4つの時間ビンが存在し、2つのより小さい時間ビンを各側に有し、最左端の時間ビンは、最右端の時間ビンよりも大きい。単に第2のレベルフィルタとして5ビンの方形フィルタを使用する場合、最大は、かなりの値を有するただ1つの時間ビンの例と同じようになり(すなわち、次の時間ビンは、本質的にゼロ、例えば、背景未満である)、これは、複数の補間フィルタを使用するにつれて正確でなくなる。
【0203】
補間フィルタは、第1および最後のボックスが異なる、6個のタップを使用することができるので、例えば、フィルタ処理された出力は、指定された分解能の範囲内で、最良に整合する補間フィルタに正確に整合する。例えば、第1および最後のタップに対する異なる組み合わせの20個の補間フィルタを使用することで、50psの精度を提供することができる。最大は、生のヒストグラムの2つの時間ビンの相対比に応じて、わずかにシフトされ、このような比率を計算することは、すなわち、粗フィルタを使用して分析するべき生のヒストグラムの一部を識別した時点で、立ち上がりエッジの位置を決定する別の方法である。
【0204】
いくつかの実施形態において、単一の第2のレベルのプロファイルフィルタは、プロファイルの各々に、例えば、
図16に示される3つのプロファイルに使用することができる。次いで、最大値を提供するプロファイルフィルタを使用して、使用するべき対応する補間フィルタを選択することができ、例えば、初期粗フィルタに類似する様態を使用して、生のヒストグラムに適用する補間フィルタを選択することができるが、ここでは、補間フィルタ(最良に整合する粗フィルタに対応する)は、第2のレベルのフィルタである。したがって、各プロファイルに対してすべての補間フィルタを使用する必要があるわけではない。
【0205】
3.フィルタの選択
最後のセクションで述べるように、すべての補間回路フィルタのプロファイルをすべての測定において測定されたヒストグラムに適用することの代替として、特定の補間フィルタのみが使用される。特定の補間フィルタが特定の粗フィルタと関連付けられるので、または集合的にセットに属するので、1つのフィルタの最良の整合を使用して、使用するべき補間(または追加の補間)フィルタを選択することができる。様々な実装態様において、補間フィルタが、例えば、最良に整合する粗フィルタ、先頭のN個の最良に整合する粗フィルタ(例えば、2つ以上)、特定のセット(例えば、高パイルアップの補間のセット)を表す最良に整合する補間フィルタ、N個の最良に整合する補間フィルタ、または閾値を超える整合以外の任意のフィルタに対応するときに、これらの補間フィルタを選択することができる。
【0206】
他の実装態様において、補間フィルタのセットは、生のヒストグラムの最大値および/またはフィルタ出力の最大値などの測定結果に基づいて選択することができる。1つの例として、これらの2つの数字を比較することによって、特定のパイルアップレベルを確実に識別する閾値を決定することができる。例えば、生のヒストグラムの最大値が、複数のタップの粗フィルタの最大値出力に等しい場合、これは、すべての光エネルギーが単一のヒストグラムビンに含まれるので、非常に強いパイルアップを示し得る。この単純な比率法は、適用するべき補間フィルタを選択するための、計算的に効率的な代替の方法である。
【0207】
他の実施形態において、選択基準としてフィルタ出力の最大値を使用して、追加のチェックを実施することができる。例えば、1ピクセルあたり複数のSPADが存在し、それらのほとんどが起動した場合、システムは、パイルアップが発生したと仮定することができる。パイルアップの程度(生のヒストグラムの最大に関連する)は、検出される光子の数と直接相関し得る。この関係を利用するために、生のヒストグラムまたは粗フィルタ出力の最大に対する1つの閾値または複数の閾値は、使用するべきパイルアップのプロファイルを決定することができる。
【0208】
例えば、第1の閾値を超える最大は、単に高パイルアップの補間フィルタを使用するべきであることを示し得る。第1の閾値未満の最大は、低および中(中間)パイルアップの補間フィルタを使用するべきであることを示し得る。第2の閾値は、最大が第2の閾値の超えるときに、中および高パイルアップの補間フィルタの使用を示すことができ、第2の閾値未満のときに、低パイルアップの補間フィルタの使用を示すことができる。これらの閾値の値は、センサが動作している環境に関する静的またはリアルタイムの知識に加えて、デバイスの現在の動作の設定点に基づいて、決定することができる。
【0209】
4.変動
補間は、追加の方法で実行することができる。例えば、分布関数(例えば、ガウス)は、フィルタ処理された出力(または補間がいつ実行されるかに依存する生のヒストグラム)の幅に類似する幅を有することができる。この分布関数を緩やかに移動する(例えば、100psステップ)ことは、生のヒストグラムまたはフィルタ処理されたヒストグラムの中央の近似値を提供する。これは、各プロファイルに対して10個のタップフィルタを必要とするのではなく、1ナノ秒あたり1つを超えるフィルタ値を必要とし得る。このような分布は、対称または非対称であり得、例えば、分布内に異なるプロファイルを有する。異なる分布の幅を使用することができ、それは、単一のプロファイルに対して異なるパターンを有する複数のタップフィルタを使用することに勝る利点を提供することができる。
【0210】
D.複数の粗フィルタおよび補間フィルタの組み合わせ
上で説明したように、粗フィルタは、生のヒストグラムに適用して、フィルタ出力を提供することができ、最良に整合するプロファイルを有する補間フィルタをフィルタ出力に適用することができる。いくつかの実施形態では、複数の粗フィルタを適用することができ、最良の整合に対応する補間フィルタを使用することができる。補間フィルタが最良に整合するプロファイルに対応するときに、補間フィルタは、パイルアップのタイプを識別するために考案されたデジタル信号処理スキーム(DSP)の一部とし、それにより、シーン内の物体の範囲および性質をより正確に識別することができる。
【0211】
図19は、本発明の実施形態による、複数の粗フィルタを使用する2レベルフィルタ処理スキームを示す図である。ヒストグラムデータ1910は、複数のパルス列を使用して決定されることができる生のヒストグラムに対応する。
【0212】
いくつかの実施形態によれば、デジタル化信号の形状を推定するために、複数の整合粗フィルタは、最初に、
図19において整合フィルタ1~Nと表記される、生のヒストグラムに適用される。これらの粗フィルタの各々は、フィルタ処理されたプロファイル1~Nと表記される、フィルタ出力を提供することができる。いくつかの実施形態では、バーカーコード整合フィルタが適用される。このフィルタは、フィルタタップとしてバーカーコードを使用し、また、これらのタップを用いて生のヒストグラムの相互相関を実行する。本実施形態によれば、N個の異なる整合フィルタが存在し得る。したがって、各測定からのヒストグラムデータは、N個の異なる整合フィルタを用いてフィルタ処理することができる。粗フィルタの数は、(例えば、物体のタイプに基づいて)所与の環境において予想される、または可能な、異なるプロファイルの数に対応すること、および光感知モジュールからのプロファイル形状に基づくことができる。
【0213】
次のステップにおいて、最大ウィンドウファインダ1940は、整合するフィルタ処理された出力信号の最大値を識別することができる。そのインデックスの周りの値の窓は、保存することができる。複数の粗整合フィルタを使用する場合は、最大値で正規化された整合フィルタのみが考慮される。最大値を伴う粗整合フィルタが記録される。
【0214】
最大窓は、微細補間を実行するために補間回路に渡される。使用されるべき補間フィルタは、最大値を有した粗整合フィルタによって決定される。したがって、合計でN×M個の補間回路フィルタが存在し得、ここで、Nは、各測定に適用される粗整合フィルタの数であり、Mは、各粗フィルタの微細補間フィルタの数である。種々の実施形態において、補間フィルタは、生のヒストグラムに、または最良な整合に対応するフィルタ処理されたプロファイルに適用することができる。
【0215】
E.コード化パルスおよびプロファイルフィルタ
整合フィルタ(異なるプロファイルフィルタを含む)もまた、前のセクションで説明したコード化パルスと組み合わせて使用することができる。下は、パルスパターンに整合するタップパターンを有する粗フィルタの例である。また、最大窓ファインダの動作も説明される。
【0216】
1.粗フィルタ
図20は、本発明の実施形態による、コード化パルス、整合フィルタ、および対応するフィルタ出力から生じる生のヒストグラムを示す。生のヒストグラム2010は、パイルアップなしまたは低パイルアップであるが、いくらかのノイズを伴う場合を表す。生のヒストグラム2010は、長さ3のバーカーコードに対応する{+1,+1,-1}のパターンを有する。0~16の様々な時間ビンの値は、-2~2の値である。負の値は、検出間隔の特定の部分の間に検出されたパルスに負の重みを割り当てることによって達成することができる。示される実施例において、生のヒストグラム2010は、整数値、すなわち、-2、-1、0、1、または2のみを有する。
【0217】
整合フィルタ2020は、予想されるパルスパターン{+1,+1,-1}に整合するフィルタタップを有する。しかしながら、タップは、+1、0、および-1の値のみを有する。整合フィルタ2020は、各時間ビンに対して1つのタップ2022を有する。ヒストグラム入力データとフィルタタップ2022との間で相互相関が実行される。整合フィルタ2020は、粗フィルタを構成することができる。
【0218】
フィルタ出力2030は、入力信号(生のヒストグラム2010)およびフィルタタップ2022の相互相関を示し、それにより、粗フィルタ処理された信号を取得する。フィルタ出力2030で分かるように、相互相関関数の中央の正のピークが存在する。これは、ヒストグラムの全3つのパルスから単一の大きいパルスにすべての電力を組み合わせる。加えて、整合フィルタを用いた入力ヒストグラムの相互相関は、フィルタ出力2030で分かるように、三角形をもたらす。フィルタ出力2030の垂直軸の目盛りは、整合フィルタ2020が、生のヒストグラム2010のパターンと正確に整合するスライド時間ステップであるときの、生のヒストグラム2010の時間ビンのデータ値の合計を本質的に提供することによる相互相関の態様を示す。
【0219】
いくつかの実施形態において、相互相関は、生のヒストグラム2010および整合フィルタ2020の値が整数であるときに、浮動小数点演算を伴わずに実行することができる。より効率的である、固定小数点修正を使用することができる。また、この例において、整合フィルタ2020は、-1、0、または+1の値のみを有する。粗フィルタがヒストグラム全体(例えば、1,000個の時間ビン)にわたって適用することができるので、この第1のレベルのフィルタの効率的な実装態様を有することが重要であり得る。
【0220】
このような粗フィルタは、信号が大まかなスケールである場所を識別することを可能にする。そうでない場合にはこのような追加のパルスが計算要件を増加させ得るので、これは、単一のレーザパルスを送信しないときに有用であり得る。整合フィルタの適用は、フィルタ出力2030の時間ビン15で、パルスをピークに対応する単一の信号に再度組み合わせることができる。
【0221】
図20は、コード化パルスを使用する利点を示す。生のヒストグラム2010は、例えば、大きくない時間ビンの値によって、およびノイズによる変動によって、非常に弱い信号である。フィルタ出力2030の明確な最大によって証明されるように、整合フィルタが正確にヒストグラム入力に整合するときに、得られる信号は非常に強くなる。また、サイドローブは、負であり、これは、バーカーコードのプロパティである。
【0222】
2.最大窓ファインダ
図19に示されるように、DSPスキームの次のブロックは、最大ウィンドウファインダであり得る。このブロックの目的は、フィルタ出力の最大を見つけること、ならびに補間および/または異なるプロファイルフィルタを適用するために、ほぼこの最大の値を保存することである。最大窓ファインダは、各整合フィルタの最大を識別し、個々の最大から全体的な最大を決定することができる。
【0223】
いくつかの実施形態において、異なるフィルタ出力を比較するために、例えば本明細書で説明されるように、整合フィルタを正規化することができる。例えば、正規化は、個々の最大値をタップ数で除算することができる。これは、整合フィルタでキャプチャされた平均電力を提供することができ、また、より少ないタップを伴うフィルタが入力形状により良好に整合するときであっても、より多くのタップを伴うフィルタがより少ないタップを伴うフィルタを超えて不適切に選択される可能性を低減させることができる。フィルタ出力が互いに直接比較される実施形態において、フィルタプロファイルの各々のフィルタ電力は、比較が偏らないように正規化することができる。
【0224】
図21は、本発明の実施形態による最大windower結果2100を示す。最大値が時間ビン(インデックス)15で見つかり、11個の値の窓2110が最大指数の周りに保存される。これらの11個の値は、保存して、第2のレベルのフィルタ処理に使用することができ、これは、補間および/または異なるプロファイルフィルタを含み得る。例えば、低パイルアップのプロファイルフィルタ、中パイルアップのプロファイルフィルタ、および高パイルアップのプロファイルフィルタを、窓2110の時間ビンの11個の値に適用することができる。次いで、本明細書で説明されるように、これらのプロファイルフィルタの最良の整合を使用して、1つの時間ビンよりも大きい分解能で受信時間を識別するための補間フィルタのセットを選択することができる。このように、これらの11個の値に対して微細補間を実行することは、生のヒストグラムに全体に対して(場合により異なるプロファイルの)補間フィルタのフルセットを使用するよりも、計算的に非常に安価かつ高速である。補間回路フィルタタップの値は、+1、0、および-1の値のみに限定する代わりに、任意の実数値とすることができる。
【0225】
3.異なる物体に対する複数の粗プロファイルフィルタ
本明細書で説明される技術を使用することで、ライダーシステムが特定の物体を検出するのをより効果的にすることができる。例えば、道路標識は、強い反射を有することが知られている。これは、SPADで構成されたセンサの高パイルアップを引き起こし得る。適切な整合フィルタおよび対応する補間を使用することで、このような表面の検出および適切な範囲の推定を大幅に改善することができる。同様に、傾斜面からの放射線の反射は、不鮮明化し、拡散させることができ、これもまた、このような実施形態によってより良好に検出すること、およびより良好に範囲を推定することができる。
【0226】
図22は、本発明の実施形態による、異なる幅を有する複数の粗プロファイルフィルタの適用を示す。異なる粗プロファイルの出力を使用して、使用するべき第2のレベルのフィルタを識別することができる。
図22は、本実施形態による、3つの異なるタイプの表面からのレーザパルスの反射、および対応する処理に対応する特定のシナリオを図式的に示す。示されるように、粗プロファイルフィルタの各々は、非ゼロ値を有する異なる数の連続する時間ビンを有する。
【0227】
図22において、パルス列2210の連続するレーザパルスは、時間間隔t
1だけ離れており、また、特定の明確なパルス形状を有する。これらのパルスが異なる表面から反射され、反射信号がピクセルセンサのSPADによって測定されたときに、得られた検出信号は、すべてのパルスが元のパルス列と同じピッチ時間t
1を有する場合であっても、パルスが反射する物体に応じて異なるプロファイルを有する。
【0228】
低パイルアップデジタル化信号2222は、弱い戻り信号を表し、これは、離れた物体からの反射または低反射率面からの反射を示す。これらの2つのシナリオは、飛行時間の計算によってさらに区別することができる。戻り信号は、パルス列2210と同じピッチt
1を有し、t
2の検出パルス幅を有する。弱い整合フィルタ2224は、弱い戻り信号に対応する幅を有する。弱いフィルタ出力2226は、弱い整合フィルタ2224の低パイルアップデジタル化信号2222への適用に対応する。得られた形状は、
図22に示される形状に類似する。
【0229】
高パイルアップデジタル化信号2232は、強い戻り信号を表し、これは、近くの物体からの反射または高反射率表面からの反射を示す。ここでも、これらの2つのシナリオは、飛行時間の計算によってさらに区別することができる。反射信号は、パルス列2210と同じピッチt1を有するが、t2よりも小さいt3のパルス幅を有する。これは、SPADに高パイルアップを引き起こす大量の反射放射線に起因する。結果として、SPADからのデジタル化信号プロファイルは、典型的な尖鋭な上昇および急激な下降を有し、半値全幅(FWHM)を小さくする。強い整合フィルタ2234は、高パイルアップデジタル化信号2032を用いて相互相関を計算するのに好適であるプロファイルを有する。強いフィルタ出力2236は、プロットの中央において、弱いフィルタ出力2226に類似する様態で明確なピークを有するが、中央に異なる形状を有する。
【0230】
不鮮明化デジタル化信号2242は、不鮮明化戻り信号を表し、これは、レーザ放射線の光軸に対する傾斜面からの反射を示す。反射信号は、パルス列2210と同じピッチt1を共有し、t2よりも大きいt4のパルス幅を有する。これは、近端が検出器により近く、かつ遠端が検出器からより遠くにあるため、傾斜面からの反射放射線がより長い期間にわたってSPADに到達することに起因して起こり得る。その結果、SPADからのデジタル化信号プロファイルが広がり、持続時間を長くする。不鮮明化整合フィルタ2244は、不鮮明化デジタル化信号2242を用いて相互相関を計算するための、好適に広がったプロファイルを有する。不鮮明化フィルタ出力2246は、プロットの中央に明確なピークを有し、これは、示されるように、上述した2つの他の場合と比較して、より広がっているが、フィルタ2224および2234よりも高いピークおよび正確な位置推定を示す。粗整合フィルタ2224、2234、および2244は、放出パルス列2210に対応する予測信号プロファイルに対応し得る。
【0231】
ここでは3つのプロファイルを論じたが、本実施形態の技術は、複数のタイプの反射と関連付けられた複数のプロファイルおよび対応するシナリオを含むことができることに留意されたい。本明細書で説明される補間フィルタのいずれかは、様々なサイズ、例えば、最高17個のビン幅であり得る。不鮮明化の場合、17個すべてが非ゼロであり得る。
【0232】
いくつかの実施形態では、このような異なる粗整合フィルタ2224、2234、および2244を使用して、相互相関に対する最良の整合を決定することができる。このようなフィルタの様々な幅は、送信されたパルスの幅に基づいて選択することができ、したがって、送信されたパルスよりも多く、または少なくすることができる。方形フィルタの幅およびその最良の整合場所は、パルスの立ち上がりエッジの位置を識別することができる。この時点での停止は、1nsの精度しか与えることができないが、それでも、唯一の粗プロファイルフィルタを使用することによるエラーよりも良好であり得る。より高い精度のために、最良に整合する粗フィルタに類似する幅を有する補間フィルタを使用することができる。いくつかの実施形態において、対応する補間フィルタは、現在の生のヒストグラムに適用するために、リアルタイムでメモリにロードすることができる。
【0233】
複数の整合フィルタを使用する理由は2つあり、すなわち、1)SPADの非線形応答を回避して、信号電力を変動させるため、および2)時間ドメイン内で不鮮明化されたパルスをより良好に検出するためである(これは、高角度付き表面または拡散表面などの物理ドメイン内で不鮮明化されたパルスにも対応する)。不鮮明化パルスを識別する能力は、例えば物体を分類するために、ライダーシステムの後半のステージへの、またはエンドユーザへの出力に有用な特徴である。例えば、システムが、トランクが非不鮮明化先端を有し、キャノピが拡散フォリッジを示す多数の不鮮明化パルスを有するという情報を提供された場合、一群のツリー状の先端をツリーとしてより良好に分類することができる。
【0234】
加えて、不鮮明化フィルタは、より高い割合で信号エネルギーをキャプチャするので、不鮮明化パルスのために調整された整合フィルタを使用することは、(道路表面のような)高角度付き表面を、従来のシステムよりも遠くで検出することを可能にする。車のかなり前で路面にぶつかったパルスは、常に非常に高い角度でぶつかっており、これがパルスを時間的に大幅に不鮮明化するので、これは重要であり得る。不鮮明化パルスを最適に検出するために調整されたフィルタのバンクがなければ、ライダーシステムは、適切に識別することができる道路の範囲が制限され得る。遠くの範囲の物体のこのような検出は、自動運転車両によって、または単に警告システムによって判断を行うことが必要であるときに、明確な利点を提供することができる。
【0235】
上で述べたように、複数の第1のレベル(第1のステージ)の粗フィルタの単独での使用は、精度の向上を提供することができる。例えば、時間的に10倍に不鮮明化されたが、1倍の幅である名目フィルタを用いてフィルタ処理されたパルスは、フィルタ処理されたピーク、および非不鮮明化パルスよりも10倍低い信号対ノイズ比(SNR)を有する。これは、正しく検出されない可能性、および代わりに渡され得る第2のレベルのフィルタ-ランダムノイズのスパイクに渡されない可能性を高くする。第2の第1のレベルのフィルタが、10倍の不鮮明化パルスを検出するように調整されたタップと並列に(または連続的に)使用される場合、フィルタ処理されたSNRは、10倍からルート10倍に、すなわち、非不鮮明化の場合よりもSNRにおいて3.16倍しか低下させることができない。
【0236】
F.システムコンポーネント
図23は、本発明の実施形態によるフィルタ処理光学システム2310を示す。
図23の要素は、
図13の要素に類似する様態で動作することができ、また、
図13からのコンポーネントを含むことができるが、明確にするために、一部が
図13から削除され得る。例えば、フィルタ処理光学システム2310は、
図13のCPOS1310と同じシステムの一部であり得る。フィルタ処理光学システム2310は、
図2のユーザインターフェース215および/または
図13の1315であり得るユーザインターフェースハードウェア2315と相互作用することができる。ユーザインターフェースハードウェア2315は、整合フィルタを他の動作パラメータでの使用に指定することができる。ユーザインターフェース1315は、フィルタ処理結果を表示することができ、この結果は、検出された物体の3次元マップおよび特定の物体の距離値を含み得る。
【0237】
システムコントローラ2320は、例えば光感知モジュール2330および光送信モジュール2340を制御することによって、
図13のシステムコントローラ1320に類似する様態で機能することができる。光送信モジュール2340は、パルスコード2344と、光を送信することができるエミッタアレイ2342(例えば、1つ以上のレーザダイオード)とを含むことができる。システムコントローラ2320は、光感知モジュール2330から受信したデータを分析するためのDSP2322を含むことができる。
【0238】
光感知モジュール2330は、1つ以上の粗フィルタ2332と、ヒストグラム2334と、センサアレイ2336と、最大窓ファインダ2338とを含む。センサアレイ2336は、光の光子を検出し、例えば時間-デジタル変換器に基づいて、各時間ビンに対するデジタル化された強度値を作成する。センサアレイ2336からのデータ値は、例えば1時間ビンあたりの1つのメモリセルを用いて、ヒストグラム1334に保存することができる。ヒストグラム2334は、所与の測定時間間隔にわたって作成し、次いで、新しい測定時間間隔にわたってクリアすることができる。いくつかの実施形態において、複数のヒストグラムは、異なる重複測定時間間隔にわたって計算することができ、例えば、特定の検出間隔からのデータ値は、それぞれ特定の検出間隔を含む異なる重複測定時間間隔にわたって、複数のヒストグラムに寄与し得る。
【0239】
粗フィルタ2332は、レジスタまたは他のメモリセルの一連の整数または浮動小数点数として保存することができる。各粗フィルタは、例えば複数の粗フィルタが使用されるときに、幅を示すラベルまたはその粗フィルタに対応するプロファイルと関連付けることができる。光感知モジュールのプロセッサは、例えばヒストグラム2334のデータ値に基づいて、使用するべき粗フィルタを選択することができる。例えば、ヒストグラム2334の最大値は、本明細書で説明されるように、使用するべき粗フィルタ(複数可)を示すことができる。
【0240】
最大窓ファインダ2338は、本明細書で説明されるように、1つ以上の粗フィルタの1つ以上の出力を分析することができる。最大窓ファインダ2338または別の処理モジュールは、例えば各フィルタ出力の最大値に基づいて、どの粗フィルタが最良に整合するかを決定することができる。いくつかの実施形態において、光感知モジュール2330は、最良の整合フィルタ出力(例えば、最大窓ファインダ2338によって識別される窓)および窓の特定の値を出力することができる。
【0241】
DSP2322は、補間フィルタを使用して、識別された窓内のフィルタ出力を分析することができる。いくつかの実施形態において、光感知モジュールは、どの粗フィルタが最良であるかを示すことができ、よって、例えば、現在のフィルタ出力を分析するために、特定の補間フィルタを使用する(例えば、キャッシュにロードする)ことができる。異なる補間フィルタは、異なる測定間隔中に、例えば異なる物体が対応するパルスを反射するときに、異なるフィルタ出力に対して使用することができる。他の実施形態において、補間フィルタ2324およびDSP2322は、光感知モジュールの一部(例えば、センサアレイ2336と同じチップ上)であり得る。したがって、光感知モジュール2330は、任意選択的に、追加DSPおよび補間フィルタ2324を組み込むことができる。別の実施形態において、光感知モジュール2330は、測距システムコントローラの機能全体を含むことができる。
【0242】
G.プロファイルフィルタを使用する方法
図24は、本発明の実施形態による、光測距システムのプロファイルフィルタを使用して測距を実行する方法2400を示すフローチャートである。光測距システムは、物体も検出するライダーシステムの一部であり得る。方法2400は、単一のパルスに関して説明され、測定間隔にわたって1つのパルス列および複数のパルス列に等しく適用される。方法1400と同様に、方法2400および他の方法は、測距以外の他の目的に、例えば通信目的または干渉信号の検出に使用することができる。
【0243】
ブロック2410で、パルスが、光測距システムの光源(例えば、レーザまたは発光ダイオード)から送信される。パルスは、パルスを光測距システムで検出できるように、物体から反射し得る。例として、光源は、光感知モジュール2340、エミッタアレイ2342、またはエミッタアレイ2342の任意の特定のエミッタであり得る。レーザのタイプの例は、本明細書で提供される。
【0244】
ブロック2420で、パルスの光子が光測距システムのピクセルの光センサによって検出される。検出の結果、複数の時点でデータ値を生成することができる。例えば、ピクセル光センサの光検出器(例えば、SPAD)は、光子を受信したときの時間を示すデジタル信号を提供することができる。他の実施形態において、光センサは、アナログ信号を提供するAPDまたは他の光センサであり得、これは、データ値に対応する非バイナリ値(例えば、0~255の尺度)に変換することができる。
【0245】
ブロック2430で、複数の時間ビンのデータ値に対応するヒストグラムが決定される。特定の時間ビン(例えば、100~101ns)でのヒストグラムのカウンタは、特定の時間ビン内の1つ以上の時点での1つ以上のデータ値に対応し得る。例えば、データ値は、光子が光センサの特定の光検出器で受信されたことを示す正の信号であり得る。この正の信号は、時間ビン中の異なる時間に受信され得る。
【0246】
ブロック2440で、複数のプロファイルフィルタがヒストグラムに適用される。各プロファイルフィルタは、連続する時間ビンにわたって光センサによって検出されている異なる光子率に対応し得る。様々な実装態様において、異なるプロファイルフィルタは、高パイルアップのプロファイル、中パイルアップのプロファイル、および低パイルアップ/パイルアップなしのプロファイルに対応することができる。いくつかの実施形態において、プロファイルフィルタの適用は、ヒストグラム上で直接実行することができる。他の実施形態において、初期粗フィルタをヒストグラムに適用して、初期フィルタ出力を提供することができ、プロファイルフィルタは、初期フィルタ出力に適用することができる。このような例において、プロファイルフィルタは、依然としてヒストグラムに適用される。
【0247】
異なるプロファイルフィルタは、種々の方法で決定することができる。例えば、試験測定を実行して、検出信号の異なるプロファイルを識別することができる。このような測定は、様々な条件下で様々な物体を用いて実行することができ、それによって、プロファイルフィルタの代表セットを識別することができる。他の実施形態では、シミュレーションを実行して、発生するプロファイルのタイプを決定することができる。
【0248】
ブロック2450で、ヒストグラムに最良に整合するものとして複数のプロファイルフィルタの第1のプロファイルフィルタが識別される。例えば、プロファイルフィルタとヒストグラムとの相互相関関数(例えば、重複関数)を本明細書で説明されるように使用して、最良の整合フィルタの特定のスライド時間ステップでの最大値を決定することができる。
【0249】
いくつかの実装態様において、複数のプロファイルフィルタの各々は、ヒストグラムにわたってスライドし得る。例えば、一実施形態は、ヒストグラムにわたるプロファイルフィルタのスライドを実行して、ヒストグラムに対するプロファイルフィルタの異なるスライド位置(例えば、異なる時間ステップ)に対応するカウンタを有する、フィルタ処理されたヒストグラムを計算することができる。フィルタ処理されたヒストグラムのカウンタの各々は、プロファイルフィルタの重複および特定のスライド位置でのヒストグラムに対応することができる。フィルタ処理されたヒストグラムの最大値を識別することができる。このように、複数のフィルタ処理されたヒストグラムに対する複数の最大値を取得することができる。次いで、複数の最大値から全体的な最大値を決定することができる。このような全体的な最大値は、第1のプロファイルフィルタおよびパルスの受信時間(例えば、提供された全体的な最大値以外のプロファイルフィルタのスライド位置)に対応する。
【0250】
ブロック2460で、第1のプロファイルフィルタのフィルタ処理された出力を使用して、パルスの受信時間が決定される。様々な実装態様において、受信時間は、パルスの前縁、パルスの中央、またはパルスの後縁に対応し得る。受信時間は、検出間隔の開始時間に対して、例えばパルスが送信されたときの時間から測定することができる。
【0251】
ブロック2470で、受信時間を使用して、物体までの距離が決定される。距離は、パルスの送信からパルスの検出までの経過時間に基づいて決定することができる。この経過時間は、距離の一例である。他の実施形態において、このような経過時間は、光速を使用して実際の距離に変換することができる。
【0252】
VI.スタガパルス
上で説明したように、補間フィルタを使用して、精度の向上を提供することができる。例えば、次いで、異なる補間フィルタは、立ち上がりエッジの異なる時間的位置(例えば、1nsの時間ビン内で100psだけ変化する時間的状況)に対応することができる。しかし、高パイルアップを引き起こす強いパルスの問題が生じ得、これは、任意のかなりの値を有する1つの時間ビンのみをもたらし得る。そのような例では、2つ以上の時間ビンの相対高さを使用して、立ち上がりエッジに対するより正確な時間を補間することができないので、補間は役立たない。
【0253】
解決策として、検出パルスが異なる時間に到達する、例えば同じパルスパターンを有する異なるパルス列が互いに対して遅延を有するように、パルス列をずらすことができる。スタガリングの量が時間ビンにわたって広がる(例えば、1ns時間ビンに対して1nsのスタガリング)場合は、立ち上がりエッジが正確に時間ビンの開始時にあるときを除いて、少なくとも2つの時間ビンがかなりの値を有する。1つを超える時間ビンがかなりの値を有した時点で、補間を実行することができる。しかしながら、このような補間プロファイルは、次いで、スタガリングから生じる信号形状を補償することが必要になる。
【0254】
A.非常に高いパイルアップのプロファイルの補間の不能性
図25Aは、シーンを照明するためにライダーシステムで通常使用される単一の方形パルス2510を示す。表面(例えば、方向および平滑性)に応じて、反射パルスは、異なる形状を有し得る。特に、出て行くパルスの光軸に対して比較的直角である平坦かつ滑らかな表面から反射するときに、反射信号の形状は、出て行くレーザパルス列に非常に類似する。
【0255】
図25Bは、何らかのノイズを有する反射パルス2520を示す。反射パルス2520は、放出パルス2510よりも低い強度を有するが、強度のレベルは異なり得る。パルスの強度(振幅)レベルは、特にパルスが表面に対して直角であるときに、平坦かつ滑らかな表面に対してより大きくなり得る。このような状況において、高パイルアップ信号が発生し得る。このような表面からの強い反射は、上で説明したように、検出器(例えば、SPAD)のパイルアップを引き起こし得る。したがって、SPADの信号は、尖鋭な立ち上がりエッジおよび急激な減少を伴う高パイルアップのプロファイルを有し得る。
【0256】
図25Cは、本発明の実施形態による、反射パルス2535の立ち上がりエッジで検出された高パイルアップ信号2530を示す。高パイルアップ信号2530は、真の反射信号に似ておらず、より方形パルスに似ている。パイルアップが高パイルアップ信号2530のように厳しいときには、真の信号位置を決定することがますます困難になり、SPADのような不感時間を伴う検出器を用いたシステムは、特にパイルアップに影響されやすい。例えば、得られたヒストグラムは、そのような場合に、ポピュレートされている単一の時間ビンおよび空であるすべての他のビンで構成され、反射パルス2535からの到来光子信号に似ていない。
【0257】
図26は、本発明の実施形態による、得られたヒストグラム2640のSPAD信号2630を示す。高パイルアップ信号2530に類似して、SPAD信号2630は、急激に上昇し、ほぼ同じように急激に下降する。ヒストグラム2640は、対応する反射パルスが受信された時間まで、4つの時間ビンにわたるカウンタを示す。時間ビン2644は、非常に小さい値を有し、これは、背景ノイズのみに起因し得る。時間ビンの負の値は、例えばコード化パルスについて本明細書で説明されるように、1つ以上の検出間隔において検出されたデータ値に負の重みが適用されることに起因し得る。
【0258】
ヒストグラム2640の主要な特徴は、時間ビン2642が唯一のかなりの値であることである。そのような場合では、SPAD信号2630の立ち上がりエッジ2633が時間ビン2642内のどこで生じるのかに関するいかなる情報もないので、ヒストグラム2640を補間することができない。
【0259】
複数のパルス列が使用される場合であっても、異なる検出間隔中であるが、開始信号に対してほぼ同時に送信される2つの対応するパルスは、類似するヒストグラムを提供し得る。したがって、両方のパルスの累積ヒストグラムは、同一であり得る。時間ビンの幅未満である遅延を2つのパルス列の間に導入することができるが、このような遅延は、依然として、類似する問題をもたらし得る。
【0260】
図27Aおよび27Bは、1つのビンのみがかなりの値を有するヒストグラムをもたらす、互いに対して遅延している異なるパルス列のパルスの2つのインスタンスを示す。水平軸は、時間ビンに対応し、時間ビンの開始および終了は、ハッシュマークによって画定される。カウンタは、5つの異なる時間ビンについて示される。示されるように、カウンタのバーは、時間ビンの一部のみを占める。したがって、このバーは、時間ビンの全幅に対応しない。
【0261】
図27Aにおいて、実線の信号2702は、第1のパルス列のパルスの検出信号を示す。破線の信号2704は、第2のパルス列のパルスの検出信号を示す。いくつかの実施形態において、これらの検出信号は、一群のSPADから取得された信号に対応することができる。任意の時間的瞬間での特定の値は、ある時間的瞬間にトリガされるSPADの総数に対応することができる。信号2702および2704はどちらも、時間ビン3において到達し、そして、基本的にすべてのSPADが強い信号のため起動後にそれらの不感時間に入るので、時間ビン4が開始する前にゼロ近くまで下がる。破線の信号2704が固体信号2702の後に発生する場合であっても、時間ビン3のみが、2つのパルス列の2つの検出間隔にわたって累積される任意のかなりの値を有する。
【0262】
図27Bでは、実線および破線のパルスが入れ替わっている。実線の信号2754は、破線の信号2752の後に発生する。ここでも、どちらの信号も、時間ビン3のみにかなり寄与する。したがって、両方のヒストグラムにおいて、いくらかのノイズを除いて、時間ビン3が、唯一のポピュレートされたビンである。このような状況下で、補間は、分解能の向上に役立たない。
図27Aおよび27Bはまた、2つの信号が異なる時間に受信される場合であっても、検出回路の分解能が2つの信号を区別することができないことも示す。
【0263】
B.高パイルアップ信号を補間するためのスタガリングパルス
撮像検出器電子機器の分解能は、例えば、1nsである。実施形態は、補間を使用して、より高い精度を得ることができる。しかしながら、高パイルアップ信号は、上で説明したように、問題を引き起こすことがあり得る。しかしながら、レーザパルス変調は、より微細な分解能であり得る。例えば、2つの異なる連続するレーザパルスは、0.1ns以内で生成され得る。
図27および
図28に示されるように、2つのパルスの間のいくらかオフセットが、必ずしもすべてのインスタンスのより微細な分解能を可能にするわけではない。
【0264】
いくつかの実施形態において、より高い分解能を達成するために、複数の同一のレーザパルスを、撮像検出器のわずかな分解能だけ時間的にずらすことができる。このスタガリングは、異なるパルスの立ち上がりエッジを少なくとも2つの時間ビンに及ぶことがあり得る。1つを超える時間ビンがかなりの値を有する時点で、補間を実行することができる。
【0265】
いくつかの実施形態において、複数のレーザパルスは、互いに0.1nsの範囲でずらされる。これらの異なるレーザパルス列からの反射がSPADに到達すると、SPADは、各パルスの前縁の後に高パイルアップを経験し得る。しかしながら、パルスは、時間的にずれているので、パルス群の前縁は、異なるヒストグラムのビンに入る。連続するレーザスタガパルスは、既知である導入ノイズとしての役割を効果的に果たし、撮像デバイスの時間分解能を増加させるために使用することができる。
【0266】
これは、ヒストグラムの分解能を抑制するTDCの量子化ノイズの影響を効果的に低減させる。本実施形態によって、既知のオフセットを用いて複数の測定を平均することによって、TDCのビン幅よりも微細なタイミング分解能を達成することができる。
【0267】
図28Aおよび28Bは、本発明の実施形態による、検出された高パイルアップパルスが複数の時間ビンに及ぶように、異なるパルス列の互い違いに放出されたパルスの例を示す。
図28Aおよび28Bは、異なる検出間隔における検出パルスおよび対応するヒストグラムを示す。具体的には、各図は、2つの時間ビンにわたる4つの検出間隔の信号を示す。ヒストグラムは、かなりの値を伴う2つの時間ビンを示す。
【0268】
図28Aにおいて、列2810は、ヒストグラム2830の時間ビン3に対応する。列2820は、ヒストグラム2830の時間ビン4に対応する。各列は、異なる検出間隔2801~2804に対応する。したがって、パルスの各々は、次の検出間隔の次のパルスが放出される前に放出され、検出される。パルスの各々は、以前の検出間隔のパルスからオフセットされる。この実施例において、オフセットは、約1/4の時間ビンであるが、他のオフセットを実行することができる。さらに、検出間隔2802のパルス列が検出間隔2801のパルス列の前に発生した場合に発生し得るように、オフセットは均一である必要はなく、例えば1/2オフセットを1/4オフセットの前に実行することができる。
【0269】
列2810および2820の信号の位置は、ヒストグラム2830を反映する。時間ビン3は、列2810においてより多くのパルスが検出されるので、より高い値を有し、これは、時間ビン3の拡大表示を提供する。しかし、時間ビン4は、列2820内に1つのパルスがあるので、依然としてかなりの値を有する。ヒストグラム2830が補間されたときに、時間ビン3および4の値の間の約3:1の比率は、検出間隔2801において第1のパルス(この実施例においてゼロオフセット)が、すなわち時間ビンが1nsの幅を有するときに、約1/4nsで時間ビン3に発生することを示す。第1のパルス(またはより一般的にはゼロオフセットを伴うもの)の立ち上がりエッジが1/2nsで発生する場合、時間ビン2および4は、どちらも2つのパルスを有するので、ほぼ等しくなる。時間ビン3がかなりの値を伴う唯一の時間ビンである場合、立ち上がりエッジの受信時間は、時間ビン3の開始時になる。
【0270】
図28Bにおいて、列2860は、ヒストグラム2880の時間ビン3に対応する。列2870は、ヒストグラム2880の時間ビン4に対応する。各列は、異なる検出間隔2851~2854に対応する。3つのパルスが時間ビン4にあるので、ヒストグラム2880は、時間ビン3よりも時間ビン4においてより高い値を有する。近似比率は、ヒストグラム2880の時間ビン3および4のカウンタについて1:3(いくらかのノイズを補償する)であり、これは、検出間隔のパルスが時間ビン3の約3/4nsで発生することを示す。したがって、撮像検出器のわずかな分解能だけのレーザパルスのスタガリングを使用して、より高い分解能の信号を取得することができる。次に、より高い分解能を使用して、レーザパルスが反射され、SPADに衝突する表面に対する範囲(距離)をより良好に識別することができる。
【0271】
他の実施形態において、異なる検出間隔にわたる異なるオフセットの数は、10であり得、異なるオフセットは、時間ビンの幅の0.1倍だけ異なる。このような例において、レーザパルスは、1ns時間ビンにわたって100psだけオフセットされる。レーザパルスは、複数個の時間ビン幅(例えば、
図18Aおよび
図28Bにおいて5個の時間ビンの幅)であり得るが、立ち上がりエッジは互いにずれている。
【0272】
C.スタガパルス列の補間
上で論じたように、パルスの立ち上がりエッジは、パルス列をずらしたときに、別々に計算することができる。これを示すために、2つの時間ビンがかなりの値を有するときの、スタガリングありの補間と、スタガリングなしの補間とを比較する。
【0273】
いかなるスタガリングも実行されず、検出パルスのFWHMが0.2nsであるときに、検出パルスの立ち上がりエッジは、2つの時間ビンが等しい値を有する場合、0.9nsで第1の時間ビンに入ると判定することができる。2つの時間ビンがほぼ等しい値を有するという事実は、等しい値を有する2つのタップを有する補間フィルタが(すなわち、不等な値を伴うタップを有する他の補間フィルタに対して)最良に整合するときに決定することができる。したがって、補間は、FWHMの知識および時間ビン値を使用して、第1のパルスの立ち上がりエッジを決定することができる。例えば、第1のビンに入る0.7nsである、0.6nsのFWHMを有する検出パルスは、第1および第2のビンにおいて等しい値を有する。最良の整合フィルタが正確な時間を、例えば所与のFWHMの知識を自動的に提供するので、時間ビン値の比率を決定する必要はない。各整合フィルタは、例えば下で説明されるように、それと関連付けられた所定の時間を有することができる。
【0274】
10個の異なるオフセットを使用し、検出パルスのFWHMが0.2nsであると仮定してスタガリングを実行したときに、検出パルスの立ち上がりエッジは、2つの時間ビンが等しい値を有する場合、0.45nsで第1の時間ビンに入ると決定することができる。10個のパルスおよび0.2nsの幅が存在するので、総積算時間は、2nsである。0.1nsのオフセットを用いて、0.45nsで開始することで、合計5個の完全なパルスが、各時間ビンに起因し得、それにより、ヒストグラムの2つの時間ビンに対して等しい値をもたらし得る。特定の補間フィルタに対応する時間は、メモリに保存し、最良に整合する補間フィルタを識別するときに検索することができる。
【0275】
スタガリングのより簡単な例として、パルスの幅が0.1nsであると考えた場合、(8,2)の最良に整合する補間フィルタは、立ち上がりエッジが、第1の時間ビンにおいて0.2nsで(または少なくとも0.2nsのうちの100ps以内に)開始することを示す。(10,0)が最良に整合する補間フィルタであった場合、第1のパルスの立ち上がりエッジは、最初の100psで起こった。(5,5)が最良に整合する補間フィルタであった場合、立ち上がりエッジは、第1の時間ビンの500psで開始した。したがって、正確な補間方法は、スタガパルスパターンの数(例えば、ショットの数)、およびスタガリング(ディザリング)の増分に依存し得る。
【0276】
D.パルスをずらすための方法
図29は、本発明の実施形態による、光測距システムにおいてスタガパルスを使用して測距を実行する方法2900を示すフローチャートである。方法2900は、受信信号が非常に強いので光センサから高パイルアップ信号が生成される場合であっても、光感知モジュールのタイミング回路の分解能よりも高い精度を提供するように、パルス列のパルスをずらすことができる。
【0277】
ブロック2910で、N個のパルス列が、測距測定の一部として光源(例えば、レーザ)から送信される。パルス列は、本明細書で説明されるようなコード化パターンを有することができる。ブロック2910の態様は、
図14のブロック1420および/または
図24のブロック2410に類似する様態で実施することができる。N個のパルス列が物体から反射され得、反射部分の検出を使用して物体までの距離を決定することができる。その他
【0278】
N個のパルス列の各々は、光源からの1つ以上のパルスを含むことができ、各パルス列は、開始信号によってトリガされる異なる時間間隔に対応することができる。例えば、VCSELは、2つのパルスの第1のパルス列を放出することができ、この放出は、開始信号、例えば開始信号1101によってトリガすることができる。第1のパルス列は、第1の検出時間間隔の一部であり得、これは、第1のパルス列の反射部分を検出することができる。次いで、(依然として同じ測定の一部である)第2の検出時間間隔の一部として、開始信号(例えば、開始信号1102)によってトリガされる、同じVCSELが第2のパルス列を放出することができる。開始信号は、周期信号であり得る。
【0279】
ブロック2920で、N個のパルス列の光子が、光測距システムのピクセルの光センサによって検出され、それにより、複数の時点でのデータ値を生成する。ブロック2920は、
図24のブロック2420ならびに/または
図14のブロック1430および1440に類似する様態で実行することができる。
【0280】
ブロック2930で、複数の時間ビンのデータ値に対応するヒストグラムが決定される。ブロック2930の態様は、
図24のブロック2430および/または
図14のブロック1460に類似する様態で実行することができる。特定の時間ビンでのヒストグラムのカウンタは、特定の時間ビン内の1つ以上の時点での1つ以上のデータ値に対応し得る。例示のために、時点(複数可)は、検出間隔2801~2803に対応する列2810の3つの異なる検出信号の3つの異なる時間に対応し得る。他の方法の場合、異なるパルス列のパルスは、時間ビンの同じ時点に到達し得るか、またはノイズにより異なる時点に到達し得る。しかしながら、いくつかの実施形態において、異なる時点は、例えば上で説明したように、放出パルス列をずらした結果であり得る。
【0281】
例えば、向上した精度を提供することの一部として、N個のパルス列は、互いに異なるオフセットを有することができる。例えば、N個のパルス列を、対応する検出時間間隔の開始信号から、異なる量だけオフセットすることができる。代替的に、検出器ヒストグラム作成を実行するクロックを、対応する検出時間間隔の開始信号から、異なる量だけオフセットすることができる。したがって、時間をずらすのが送信機であるか受信機であるかにかかわらず、同じ影響が達成され、このようなオフセットを有するパルス列を、いずれの様態においても達成することができる。
【0282】
N個のパルス列のうちの少なくとも2つを、1つの時間ビン未満の幅だけオフセットすることができ、例えば、ヒストグラムが1nsの幅であるビンを有するときに、2個の時間ビンを、1ns未満だけオフセットすることができる。これらの2個のパルス列は、例えば対応するパルスの立ち上がりエッジがパルス列のオフセットと同じ量だけオフセットされるように、同じパターンを有することができる。割り当てられた重み(例えば、本明細書で説明されるように、パルス列をコード化するために)は、同じ符号(すなわち、正または負)および(例えば、より高い次元のコード化スキームをより複雑な直角位相に使用するときに)同じ方向の両方であり得る。
【0283】
パルス列のいくつかは、1つ以上の他のパルス列からオフセットされない場合がある。したがって、測定は、N個のパルス列以外の他のパルスを含み得る。他の実装態様において、N個のパルス列は、測距測定のすべてのパルス列であり得る。例えば、10個のスタガオフセット(例えば、100psだけ異なる)が存在するが、測定に使用される合計20個のパルス列が存在し得、2つのパルス列は、各オフセット(例えば、開始信号を同じシフト)で放出される。
【0284】
いくつかの実施形態では、N個のパルス列の連続するパルス列を、同時オフセットTだけオフセットすることができる。例えば、第1のパルス列を開始信号に対してゼロだけオフセットする、第2のパルス列を開始信号に対してTだけオフセットする、第3のパルス列を開始信号から2Tだけオフセットすること、などができ、それにより、Tだけオフセットされた連続したパルス列を有することができる。第1のパルス列および最後のパルス列からの時間の全長さは、時間ビンの幅に等しくなり得、例えば、N×Tが幅に等しくなり得る。様々な実装態様において、時間オフセットTは、時間ビンの幅の0.5~0.01、例えば時間ビンの幅の0.1である。このような例は、10のオフセットに100ピコ秒を乗算して、1nsの幅を達成し、それにより、初期立ち上がりエッジが第1の時間ビンのちょうど開始時である場合を除き、ヒストグラムにかなりの値伴う2つの時間を有する。
【0285】
ブロック2940で、開始信号に対するN個のパルス列に対応する受信時間が決定される。受信時間は、整合フィルタ、例えば補間フィルタを使用して決定することができる。したがって、受信時間を決定することは、整合フィルタをヒストグラムに適用して、フィルタ処理されたヒストグラムを取得することと、フィルタ処理されたヒストグラムの最大値および時間オフセットTを使用して、受信時間を決定することとを含むことができる。整合フィルタと特定の時間との対応関係は、N個のパルス列のスタガパターンに基づいて決定することができる。受信時間は、開始信号に対して最小のシフト伴うパルスの立ち上がりエッジに対応し得る。
【0286】
ブロック2950で、受信時間を使用して、物体までの距離を決定することができる。例として、ブロック2950は、
図24のブロック2470に類似する態様で、または本明細書で説明される任意の技術によって実行することができる。
【0287】
VII.異なるゲインのセンサ
SPADの飽和およびパイルアップ/クエンチングは、数多くの方法で、ライダーシステムの性能に影響を与え得る。これらは、SPADのダイナミックレンジの管理、ならびにSPADの電力管理を含む。これらの問題は、レーザパルスからの高レベルの反射、または特に太陽からの、高レベルの背景放射に起因する高信号状態において、特に重要である。
【0288】
単一のピクセルとして振る舞うように分類された複数の光検出器(例えば、SPAD)を使用する実施形態において、これらの問題は、それらのダイナミックレンジに基づいて異なるSPADを分類し、それにより、異なる信号レベルを提供することによって対処され得る。したがって、異なるSPADは、より多いまたはより少ない光子をトリガ(起動)し、ヒストグラムに含むための正の信号を生成することが必要であり得る。分類される(例えば、回路によってセットとして)と、実施形態は、特定の条件下で特定のダイナミックレンジを有するSPADの動作状態を修正することができる。例えば、SPADの感度は、高光束下で低減させることができる。別の例として、強信号レベルを有するSPADの電力レベルは、低減させること、例えばオフにすることができる。さらなる例として、特定のSPADからの信号のみが、ヒストグラムを構築する際に使用され得、したがって、効果的にそうしたSPADをオフにする。類似の動作を、弱信号レベル(すなわち、低感度)を用いてSPADに対して実行することができ、例えば、低光束下でダイナミックレンジを増加させるか、または電力を低減させる。
【0289】
A.異なる信号レベルを有する検出器の配置
図30Aは、本発明の実施形態による、単一ピクセル光センサを形成する16個の光検出器3002(例えば、SPAD)の規則的な配置3000を示す。いくつかの状況において、例えば光束が特定のレベルに達したときに、例えば低過ぎるまたは高過ぎるときに、光検出器3002の動作状態を変更することが有益であり得る。様々な配置を、様々な環境で使用することができ、例えば、異なる減衰レベル(すなわち、異なるダイナミックレンジ)、異なる電力がレベル(例えば、オフにする)、および/または、検出信号への異なる重み(例えば、ゼロに設定して、どの光検出器信号がヒストグラムに寄与しないかを指定する)が使用される。さらに、異なる設定は、光検出器の異なるサブセットに使用することができる。したがって、センサの光検出器の動作状態に対する特定の配置は、例えば非常に短い時間の範囲内の1つまたは複数のサイクルにおいて、光検出器自体によって検出されるデータ値を使用して設定することができる。
【0290】
いくつかの実施形態において、ライダーシステムのダイナミックレンジを強化するために、ピクセルの光検出器は、異なる減衰レベルを有するように設定すること(または自然に有するものとして識別すること)ができる。光検出器の分類は、例えば減衰レベルを変化させることによって1つ以上の光検出器の動作状態が変化したときに、動的とすることができる。このような変化は、背景光の検出信号(例えば、太陽または街灯などの明るい背景光源のため)または高反射性物体からの反射パルスに基づいて発生し得る。
【0291】
図30Bは、本発明の実施形態による、異なる減衰レベルを有する16個の光検出器の配置3010を示す。光検出器3012は、光子を検出することに応答して、高信号レベルを有する。光検出器3014は、減衰し、したがって、光子を検出することに応答して、弱い信号レベルを提供する。したがって、低光束が存在するときには、光検出器3014のすべてまたはほとんどが起動しない場合がある。高および低の分類は、互いに対するものであり、したがって、必ずしも任意の絶対的範囲に結びつくわけではない。
【0292】
いくつかの実施形態において、16個すべての光検出器を有効にすることができる。このように、光検出器3012は、背景光が高過ぎない(例えば、背景閾値未満である)ときに、低レベルの光パルスを検出することができる。しかし、背景光が高過ぎる、または反射パルスが強過ぎるときに、光検出器3012は、常時起動する場合があり、それにより、使用データを提供しない場合がある。このような状況において、それらの信号は、(例えば、ヒストグラムにそれらの信号を含まないことによって)無視することができる。光検出器3012は、このような高光束状況では有用でない場合があるが、光検出器3014は、低レベルの光パルスを検出することができ、したがって、高背景または強反射パルスにおいて常に起動しない。したがって、光センサ全体のダイナミックレンジは、異なるダイナミックレンジの光検出器を使用することによって、任意の1つの光検出器よりも効果的に大きくなり得る。アクティブ動作の動的な変化(例えば、どの光検出器からのどの信号をヒストグラムに使用するか)は、高光束および低光束両方のクリーン信号を有効にすることができる。
【0293】
図30Cは、本発明の実施形態による、異なる減衰レベルおよび異なるアクティブ動作を有する16個の光検出器の配置3020を示す。様々な実施形態において、異なるレベルのアクティブ動作は、異なる電力レベル(例えば、オンまたはオフ)またはヒストグラムに対する異なる寄与レベル(例えば、特定の光検出器の場合に、重みを0に設定すること)によって指定することができる。例えば、光検出器3022は、電力または寄与レベルによって無効にされ得る。これは、光検出器3022が高ダイナミックレンジ(光子を検出することに応答して、高信号レベル)を有し、かつシステムが(例えば、1つ以上の以前の測定に基づいて)高光束を受信することを予想するときに行われ得る。
【0294】
光検出器3014は、減衰され、したがって、光子を検出することに応答して、弱い信号レベルを提供する。低光束が存在するときには、光検出器3014のすべてまたはほとんどをトリガしない場合がある。高および低の分類は、互いに対するものであり、したがって、必ずしも任意の絶対的範囲に結びつくわけではない。
【0295】
いくつかの実施形態では、強信号が存在する場合、配置3020の減衰パターンが採用され得る。この状況は、非常に高い周囲放射線または非常に高い反射信号により発生し得る。これが起こり得る1つのシナリオは、撮像デバイスが直接太陽に向いているときである。光検出器自体からの信号は、この構成を設定するための指示として使用することができる。例えば、以前の測定中にすべての光検出器に高パイルアップが存在するときに、この構成を有効にすることができる。
【0296】
したがって、他のものよりも100倍感度の低い特定の検出器が存在する場合、高感度であるもの(例えば、光検出器3022)が飽和し、パイルアップされ、高感度でないもの(例えば、光検出器3024)は、パイルアップされない場合があるので、システムは、高光束環境(例えば、停止標識または明るい光源)内の感応検出器を本質的に無視することができる。このような実施形態は、より正確に信号強度を推定するためのより高いダイナミックレンジを達成することができるので、プロファイルフィルタを用いても有用であり得る。
【0297】
B.異なる方向のための配置
いくつかの実施形態において、ライダーシステムは、異なる方向を識別し、これらの異なる方向を特定の放射範囲(光束)と関連付ける。したがって、ライダーシステムは、光検出器の動作状態を動的に調整することができ、異なる光検出器は、異なる配置に指定されているように、その動作状態に対する異なる設定を有することができる。
【0298】
これらの実施形態の適用一例は、特定の方向において太陽からの強い放射線が存在するときの夕方前もしくは夕方の間に、車両が道路上を移動しているときである。ライダーシステムは、各光検出器の動作状態(例えば、オン/オフ構成、減衰レベル/ゲイン制御、ヒストグラムに対するまたは寄与レベル)を動的に調整することができる。
【0299】
図31は、本発明の実施形態による、異なる角度の異なる照明条件でのピクセルセンサの異なる検出器配置の図を示す。
図31は、検出器配置3120~3170によって取り囲まれた中央にある車両3110上のライダーシステム3111を示す。
図30A~30Cにおいて使用されるときに、配置内の異なる動作状態は、異なるマーキングによって示される。検出器3112は、有効であり、かつ高信号レベルにある。検出器3114は、有効であり、かつ弱信号レベル(すなわち、低感度)にある。検出器3122は、無効である。
【0300】
検出器配置3120~3170の各々は、ライダーシステム3111に対して異なる角度にある。説明を簡単にするために、6つの異なる角度のみが示されるが、さらに多くが存在し得る。例えば、各角度は、範囲が定められた32分角、すなわち総360°水平のうちの約0.5°(または4πステラジアンの立体角)に対応する。いくつかの実装態様において、各角度は、1つまたはいくつかの測定間隔中に発生する回転量に対応し得る。初期測定(例えば、測定の1つまたはいくつかの初期検出間隔中に)を実行して、光束を決定することができ、次いで、検出器の各々の動作状態の設定を指定して、特定の配置を達成することができる。
【0301】
検出器配置3120のような強い光源3105(例えば、太陽)をまっすぐ見ているときに、ライダーシステムは、多数の検出器が連続的に起動していた場合、例えば初期検出間隔の後に、すべての検出器を無効にする。いくつかの検出器(例えば、特定のSPAD)は、それらを起動するたびにいくらかの電力を使用し得、このような検出器は、常に高背景光を伴って起動する。すべての検出器を無効にするための閾値基準は、同じビン内で起動しているピクセル検出器の閾値数/パーセンテージ(例えば、60%、70%、80%、90%、または100%)によって指定することができる。この基準は、同じ検出間隔中に、複数の時間ビン(例えば、2個、3個、5個、10個、20個など)において、このような大量のトリガリングを必要とし得る。特に、大量のトリガリングが強い背景光源に起因するときに、大量のトリガリングを伴う時間ビンの数は多くなる。高反射性物体に起因するとき(例えば、検出パターンが、放出パルスパターンと整合するとき)、大量のトリガリングを伴う時間ビンの数は、より低くなり、したがって、無効にするためには、より低い時間ビンの数が必要とされ得る。
【0302】
他の実施形態において、検出器3122上の信号レベルは、背景光束をほぼ閾値未満まで下げるように変更することができ、よって、反射レーザパルスを検出する時間ビンは、目に見えて高いカウントを有する。いくつかの実装態様において、すべての感度を除去することなくダイナミックレンジ(例えば、SPADのバイアス電圧)を変更する必要があるとする程度は、複数の検出間隔を通じて決定することができる。例えば、信号レベルの感度は、逐次に(またはバイナリであるか他の探索木様式で)低減させて、ノイズ除去および信号保持による妥協点を識別することができる。このような検索は、ピクセルセンサ(異なる設定を有するSPAD(複数可)の各サブグループ)の異なるSPADの異なる設定を実装することができ、それにより、同時検索を並列に実行することを可能にすることができる。
【0303】
検出器配置3170および3130は、光源3105に直接向かう角度から偏心している。例として、これらの角度は、検出器配置3120の角度から0.1°、0.2°、0.3°、0.4°、または0.5°異なり得る。総光束が少なくなると、弱検出器3114を有効にすることができる。いくつかの実施形態において、特定の角度の設定を複数の回転に対して保持し、次いで、(例えば、後の測定の初期検出間隔において)再度チェックすることができる。したがって、ライダーシステムが回転ライダーであるときに、(例えば、エンコーダによって決定されるように)特定の角度での設定が決定されると、光測距デバイスを同じ角度に戻すときに、この設定を再使用することができる。エンコーダは、光測距システムの角度位置を識別することができ、角度位置を使用して、光測距システムが光検出器の特定の設定として指定することができる初期角度位置にあるときに決定される、強度レベルを識別することができる。
【0304】
検出器配置3160および3140は、光源3105に直接向かう角度からかなり異なる角度にあり、したがって、すべての検出器を有効にするが、いくつかは依然として弱設定として、例えば、背景光(例えば、他の物体からの反射)の量が、強信号レベル(すなわち、高感度)に設定された検出器に依然として影響を与え得るように、より大きいダイナミックレンジを提供することができる。検出器配置3150は、光源3105から反対方向に向けることができ、したがって、すべての検出器を有効にし、高信号レベルを有するように設定することができる。
【0305】
いくつかの実施形態において、ライダーシステムは、ある角度で光源3105に向かうときに、視界に入ってくる物体を検出したときに、SPADゲイン(減衰/信号レベル)のパターンを物体の検出に対して最適化するように変更することができる。例えば、別の車両が直射日光遮断する方向に移動したときに、システムは、変化する視野角に沿って、SPADのゲインを増加させることができる。
【0306】
いくつかの実施形態において、電力節減は、ライダーシステムでレーザ源の強度を調整することによって増大させることができる。例えば、システムは、非常に高い周囲放射が検出される方向を照明しないように選択することができる。代替的に、低い周囲放射が検出されるときには、レーザ源の強度を下げることができる。さらに、高背景光束では、反射パルスを依然として検出することができ、一方で、背景光が累積ヒストグラムにかなりの信号を引き起こさないように、レーザ源の強度は、より低い検出器の減衰レベルと組み合わせて、増加させることができる。
【0307】
C.他の配置
図32は、本発明の実施形態による、中央領域の光検出器3212とは異なる動作状態を有する周囲の光検出器3222の配置3200を示す。光検出器3222は、様々な方法で、光検出器3212とは異なる設定を有することができる。例として、光検出器3222は、低減させた、無視される(例えば、ヒストグラムのためのデータ値を累積するとき)電力レベルを有すること、または弱信号レベルを有することができる。
【0308】
光検出器3222が低減させた電力レベルを有する設定の場合、検出器の電力レベルの変化は、電力消費を節約することができる。例えば、
図32に示されるもののような構成を使用して、1ピクセルにおいてSPADに印加される電力を75%節約することができる。このような配置は、中央光検出器3212が、光束が依然として高過ぎるかどうかをチェックし続けることを可能にすることができ、次いで、光束が減少した時点で、光検出器3222を有効にすることができる。このように周囲の無効にした光検出器および中央領域内の中央領域である有効にした光検出器を有する配置は、より強く照明され、したがって、光束が中央領域内で十分に低い場合、周囲に対して十分に低くなる。
【0309】
光検出器3222が低減させた信号レベルを有する設定の場合、配置3200は、上で説明した他の配置でも発生するように、高信号レベルを伴ういくつかの検出器および低信号レベルを伴ういくつかの検出器を有する。このような混合配置は、ダイナミックレンジを(例えば、1桁)増加させることができる。高光束が存在するときに、感応検出器は、検出光が多過ぎて、飽和する。しかしながら、減衰させた検出器は、検出可能な信号を作成するのに十分な光を受信する。このような状況において、システムは、高信号検出器を無視し、減衰させた検出器のみを使用することができる。高光束が高反射性物体によって引き起こされるとき、これは、高パイルアップパルスの代わりに、矩形のパルスの検出を可能にすることができる。代替的に、強い検出器がパルスパターンと一致する様態でトリガされているが、弱い検出器がトリガされていないときには、弱い検出器をオフにするか、または他の検出器の電力レベルを低減させることができる。
【0310】
どのような設定および配置を使用するべきか決定するために、初期検出間隔中に検出されたデータ値を使用することができる。この検出間隔は、放出レーザパルスを含むこと、または含まない(例えば、単に背景を検出する)ことができる。放出パルス列が使用されるときに、物体に関する情報を、例えばどのように反射するか、どのくらい反射性であるか、および表面の相対配向を取得することができる。上で述べたように、後の検出間隔は、閾値基準を満たしたときに、オフにした(例えば、減衰されていない)特定の検出器または他の低減させた電力レベルを有することができる。
【0311】
D.システムコンポーネント
図33は、本発明の実施形態に従よる、構成可能な光学システム3310を示す。
図33の要素は、
図13および
図23の要素に類似する様態で動作することができ、かつこのようなコンポーネントを含むことができる。システムコントローラ3320は、例えば光感知モジュール3330および光送信モジュール3340を制御することによって、他の測距システムコントローラに類似する様態で機能することができる。光送信モジュール3340は、強度変調器3344と、光を送信することができるエミッタアレイ3342(例えば、1つ以上のレーザダイオード)とを含むことができる。強度変調器3344は、上に記載したように、例えば検出光の量のため、放出パルスの光束の変化を引き起こすことがあり得る。強度変調器3344は、測距システムコントローラ3320内にもあり得る。
【0312】
光感知モジュール3330は、1つ以上の検出器配置3332と、ヒストグラム3334と、センサアレイ3336と、検出器コントローラ3338とを含む。検出器コントローラ3338は、(例えば、ヒストグラム3334の中間値を見ることによって)検出間隔からのデータ値を分析し、また、どの設定の配置をセンサアレイ3336の様々なピクセルの検出器の動作状態に使用するべきかを決定することができる。いくつかの実装態様において、検出器配置3332は、検出データ値が特定の特性を有する(例えば、背景光または反射物体からの高光束を示す)ときに選択することができる、特定の設定を保存することができる。検出器配置3332は、構成可能な光学システム3310が回転しているときに、様々なまたはすべての角度に対して保存することができる。
【0313】
E.検出器の構成方法
図34は、本発明の実施形態による、構成可能な光測距システムを使用して測距を実行する方法を示すフローチャート3400である。方法3400の態様は、本明細書で説明される他の方法について説明される技術を介して実施することができる。
【0314】
ブロック3410で、光測距システムのピクセルの光センサによって光子が検出され、それにより、複数の時間ビンでの初期データ値を生成する。光センサは、複数の光検出器(例えば、SPAD)を含むことができる。これらの初期データ値は、上で説明したように分析して、複数の光検出器の動作状態の設定の配置を決定することができる。いくつかの実施形態において、初期データ値は、初期パルスを光源(例えば、レーザ)から送信することによって取得することができ、初期データ値を使用して、物体から反射した後に受信時間を決定することができる。
【0315】
ブロック3420で、初期データ値に基づいて、検出光子の強度レベルが決定される。様々な実施形態において、強度レベルは、同時に起動する光検出器の数、指定された期間にわたって連続的に起動する持続数、指定された期間にわたって起動する平均数、などに対応することができる。強度レベルは、光検出器と同じチップまたは異なるチップ上にあるコントローラ(例えば、検出器コントローラ3338)によって分析することができる。コントローラは、光検出器の設定の新しいまたは保存された配置を決定することができる。
【0316】
ブロック3430で、光測距システムの光源から第1のパルスが送信される。物体までの距離を決定することができるように、第1のパルスを物体から反射させることができる。
【0317】
ブロック3440で、第1のパルスの光子を検出する前に、決定された強度レベルに基づいて、光検出器のセットの動作状態を変更する。本明細書で説明されるように、様々な実施形態によれば、動作状態は、電力レベル、寄与レベル(例えば、検出信号が測距測定に使用されるかどうか)、および減衰レベルであり得る。様々な実装態様において、このような変更は、決定された強度レベルが閾値を超えること、または閾値未満であることに起因し得る。光検出器のセットは、複数の光検出器のすべてまたは一部であり得る。
【0318】
変更された動作状態は、(例えば、光測距システムが回転したときに、次の回転が再度同じ角度に戻るための)指定された時間量にわたって維持することができる。例えば、エンコーダは、特定の角度位置を指定することができ、動作設定の特定の配置は、その角度位置に対して指定することができる。第1の送信パルスは、システムがその角度位置に戻るときに送信することができる。いくつかの実施形態において、指定された時間量は、いくつかのパルス列に関して定義される。
【0319】
ブロック3450で、変更した動作状態に従ってアクティブ動作にある光検出器によって第1のパルスの光子が検出され、それにより、複数の時間ビンでの第1のデータ値を生成する。変更された光検出器のいくつかは、給電されない場合があり、および/またはカウントされない場合があり、したがって、アクティブ動作にない場合がある。光検出器からのデータ値をカウントしないことは、どの光検出器のどの信号を使用して、複数の時間ビンでの第1のデータ値を生成するのかを決定することに起因し得る(例えば、信号レベルが閾値を超えることによって決定されるときに、高光束が存在すると、強い光検出器を計数しない)。
【0320】
いくつかの実施形態では、決定された強度レベルが高閾値を超えたときに、光検出器のセットの減衰レベルが増加する。決定された強度レベルが低閾値未満であるときに、光検出器のセットの減衰レベルは、減少し得る。単に減衰レベルが変更されたインスタンスでは、光検出器のすべてがアクティブ動作であり得る。
【0321】
ブロック3460で、複数の時間ビンでの第1のデータ値を使用して、第1のパルスに対応する受信時間が決定される。例えば、本明細書で説明されているように、ヒストグラムを生成することができ、整合フィルタを使用することができる。
【0322】
ブロック3470で、受信時間を使用して、物体までの距離が決定される。距離は、例えば本明細書で説明されるように、種々の方法で決定することができる。
【0323】
いくつかの実施形態において、光センサは、弱い信号レベルを有すると分類される光検出器の第1のセットと、高い信号レベルを有すると分類される光検出器の第2のセットとを備えることができる。いずれのセットも、様々な状況において変更することができる。例えば、決定された強度レベルが高閾値を超えたときに、光検出器の第2のセットのうちの1つ以上の電力レベルを低減させる(例えば、オフにする)ことができる。別の例として、決定された強度レベルが低閾値未満であるときに、光検出器の第1のセットの1つ以上の電力レベルを低減させる(例えば、オフにする)ことができる。分類は、動的(例えば、所与の検出間隔にわたってシステムによって設定される)、またはより長期的(例えば、数分、数時間、数日などに設定される)、さらには永続的とすることができる。
【0324】
一度に1ピクセルにわたって光検出器の2つを超える分類が存在し得る。例えば、光検出器の第3のセットの動作状態は、光検出器の第1のセットまたは光検出器の第2のセットのうちの1つの動作状態を変更することに加えて、決定された強度レベル(例えば、中間感度を示す中間強度レベル)に基づくことができる。
【0325】
VIII.SPADを有するセンサチップを伴うチップセットの実施例
センサアレイによって検出信号のデータ値は、例えば1nsまたは500ps毎に、小さい時間ビンを見つけ出すことができる。このような速度を達成するために、アバランシェフォトダイオード(APD)を使用することができる。APDは、アナログ電流または電圧を直接介して強度を出力するアナログデバイスであるので、APDは、APDで受信された光子の数に従うアナログ電圧のストリームを変換する標準アナログ-デジタル変換器(ADC)を使用することができる。しかし、現在の技術では、複数のAPDを同じチップ上に経済的に配置することができないので、APDは、コンパクトな設計を提供することができない。対照的に、SPADは、高収量および低コストで同じチップ上に配置することができる。
【0326】
実施形態は、タイミング回路、ヒストグラム回路、および他の信号処理回路、ならびにSPADを含む、カスタムチップを作成することによって、SPADを使用する際の問題点を克服し、それにより、SPADによって生成された信号の高速処理を可能にする。タイミング回路およびヒストグラム回路は、SPADによって生成されたバイナリ信号をキャプチャすることを可能にすることができる。タイミング回路およびヒストグラム回路は、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、またはCPUなどの集積回路を含む、より大きい回路の一部である部分的な回路と考えることができる。CPUの場合、集積回路は、プログラムコードを保存するメモリを含むことができる。ASICまたはFPGAが使用されるとき、タイミング回路およびヒストグラム回路は、光測距システムの動作中の専用回路である。FPGAの場合、構成論理は、特定の構成が、ゲートが構成された時点でそれぞれの機能専用であるタイミング回路およびヒストグラムを有するように、ゲートをプログラムすることができる。
【0327】
さらに、単一のSPADの場合、例えばSPADの不感時間によって管理されるような、測定可能な光束に対する上限だけでなく、SPADから信号をキャプチャするために使用されるタイミング回路の制限も存在する。これは、SPAD固有のバイナリの瞬時ダイナミックレンジも加える。タイミング回路(例えば、時間-デジタル変換器、TDC)の分解能に応じて、SPADは、1時間ビンあたり1つの光子のみを登録することができる。したがって、ダイナミックレンジは、最小時間ビンによって制限され、本質的には不感時間の問題ではない。この問題に対処するために、実施形態は、1「ピクセル」あたり複数のSPADを使用することができる。
【0328】
図35は、本発明の実施形態による、光測距システムのコンパクトな光学システム3510を示す。
図35の要素は、
図13、
図23、および
図33の要素に類似する様態で動作することができ、また、このようなコンポーネントを含むことができる。測距システムコントローラ3520は、例えば光感知モジュール3530および光送信モジュール3540を制御することによって、他の測距システムコントローラに類似する様態で機能することができる。光送信モジュール3540は、レーザパルスを送信することができるレーザ源3542(例えば、レーザダイオードのエミッタアレイ)を含むことができる。
【0329】
光感知モジュール3530は、フィルタ3532と、ヒストグラム回路3534と、センサアレイ3536と、タイミング回路3538とを備える、センサ集積回路(例えば、ASICまたはFPGA)を含む。センサアレイ3536は、それぞれが複数の光検出器(例えば、SPAD)を含む複数の光センサを含むことができる。例えば、
図5のようなアレイを使用することができる。
【0330】
タイミング回路3538は、信号をヒストグラム回路3534に提供することができ、よって、ヒストグラム回路3534は、センサアレイ3536からの信号に応答して、どのカウンタを増加させるかを決定することができる。ヒストグラム回路3534は、センサアレイ3536の各ピクセルセンサのヒストグラムを含むことができる。例として、センサアレイ3536は、対応するピクセルの識別子を伴う信号を提供することができ、または、このような対応関係をハードワイヤードすることができる。
【0331】
センサ信号は、ヒストグラムのカウンタをどのくらい増加させるかを示すことができる。例えば、光センサの各検出器(例えば、SPAD)からの信号は、その信号に基づいてヒストグラムのカウンタを増加させるかどうかを示すことができる。したがって、センサアレイ3536の複数の光検出器は、光子によってトリガされたときに、1つ以上の光子が検出されたことを示すバイナリ信号を出力するように構成することができる。タイミング回路3538は、バイナリ信号に基づいて、光子が検出された時間を決定するように構成することができる。
【0332】
ヒストグラム回路3534は、ある時間ビン中にトリガされた光センサの数にそれぞれが対応するカウンタを決定し、保存するように構成することができる。したがって、物体から反射したレーザ源からの1つ以上のパルスの受信時間を決定するために使用可能であるヒストグラムを作成することができる。
【0333】
感知集積回路3531の窓掛け回路3537は、1つ以上の整合フィルタ3532をヒストグラムに適用して、受信時間が存在する時間窓を識別するように構成することができる。感知集積回路3531はまた、複数の補間フィルタを時間窓内のヒストグラムまたはヒストグラムのフィルタ処理された出力に適用するように構成された、補間回路3539も含むことができる。いくつかの実装態様において、最良に整合する補間フィルタは、時間ビンの幅未満の精度で対する受信時間を識別することができる。他の実施形態において、補間回路は、センサ集積回路と通信可能に結合された第2の集積回路上に存在する、測距システムコントローラ3520の一部であり得る。
【0334】
いくつかの実施形態において、回転モータ(例えば、
図2のモータ260)は、レーザ源、およびレーザ源を回転させるためのセンサ集積回路、およびセンサ集積回路に接続される。レーザ源3542は、単独で集積回路であり得、また、複数のレーザデバイス(例えば、垂直キャビティ表面放出レーザ(VCSEL))を含むことができる。
【0335】
IX.追加の実施形態
本明細書で開示されるいくつかの実施形態は、自動車の使用事例に関する3D検知の文脈の範囲内で、光測距の用途に重点を置いているが、本明細書で開示されるシステムは、本開示の範囲から逸脱することなく、任意の用途において使用することができる。例えば、システムは、例えば固体光測距システムのための、いくつかの追加の使用事例を可能にする、小さい、さらには微小なフォームファクタを有することができる。例えば、システムは、携帯電話、タブレットPC、ラップトップ、デスクトップPCなどのデバイス内の、または他の周辺機器および/もしくはユーザインターフェースデバイス内の3Dカメラおよび/または深度センサにおいて使用することができる。例えば、1つ以上の実施形態は、顔認識および顔追跡能力、視線追跡能力のサポート、ならびに/または物体の3Dスキャンのために、モバイルデバイス内に用いることができる。他の使用事例としては、モバイルデバイスにおける拡張現実および仮想現実用途のための前面深度カメラが挙げられる。
【0336】
他の用途としては、飛行機、ヘリコプタ、無人機などの空中車両への1つ以上のシステムの配備が挙げられる。このような例は、3D感知および深度イメージングを提供して、ナビゲーション(自律的または他の方法)を支援すること、および/または後で分析するための3Dマップを生成すること、例えば、地球物理学的、建築学的、および/または考古学的な分析をサポートすることができる。
【0337】
システムはまた、建物、壁、ポール、橋、足場などの静止物体および構造物に取り付けることもできる。そのような場合、本システムを使用して、製造設備、組み立てライン、産業設備、建設現場、掘削現場、車道、鉄道、橋などの屋外領域を監視することができる。さらに、システムは、屋内に取り付けて使用して、倉庫内の在庫品の移動、または事務所建物、空港、駅などの中の人々、荷物、もしくは商品の動きなどの、建物内の人々および/または物体の移動を監視することができる。本開示の利点を用いて当業者によって認識されるように、光測距システムの数多くの異なる用途が可能であり、したがって、本明細書で提供される実施例は例示のみの目的で提供されるものであり、そのようなシステムの使用を明示的に開示される実施例のみに限定するものと解釈してはならない。
【0338】
X.コンピュータシステム
本明細書で言及されるコンピュータシステムまたは回路のいずれかは、任意の好適な数のサブシステムを利用し得る。サブシステムは、システムバス75を介して接続することができる。例として、サブシステムは、コンピュータシステムを他のデバイス(例えば、エンジン制御まで)に接続するために使用されることができる、入力/出力(I/O)デバイス、システムメモリ、記憶デバイス(複数可)、およびネットワークアダプタ(複数可)(例えば、Ethernet、Wi-Fiなど)を含むことができる。システムメモリおよび/または格納デバイス(複数可)は、コンピュータ可読媒体を統合することができる。
【0339】
コンピュータシステムは、内部インターフェースによって、または1つのコンポーネントから別のコンポーネントに接続して取り外し可能な記憶デバイスを介して、例えば外部インターフェースによって互いに接続された、複数の同一コンポーネントまたはサブシステムを含むことができる。いくつかの実施形態では、コンピュータシステム、サブシステム、またはデバイスは、ネットワーク上で通信することができる。
【0340】
実施形態の態様は、制御ロジックの形態で、ハードウェア回路(例えば、アプリケーション固有の集積回路またはフィールドプログラマブルゲートアレイ)を使用して、および/またはモジュール式もしくは集積様態で汎用プログラマブルプロセッサを有するコンピュータソフトウェアを使用して、実装することができる。本明細書で使用される場合、プロセッサは、シングルコアプロセッサ、同じ集積チップ上のマルチコアプロセッサ、または単一の回路基板もしくはネットワーク化された上の複数の処理ユニット、ならびに専用のハードウェアを含むことができる。本開示および本明細書に提供される教示に基づいて、当業者は、ハードウェアを用いておよびハードウェアとソフトウェアとを併用して、本発明の実施形態を実施するための他のやりかたおよび/または方法を知り、認識することになっている。
【0341】
本出願で説明されるソフトウェアコンポーネントまたは関数のうちのいずれも、例えば、Java、C、C++、C#、Objective-C、Swiftなどの何らかの好適なコンピュータ言語、または例えば、従来の技術もしくはオブジェクト指向の技術を使用するPerlもしくはPythonなどのスクリプト言語を使用する、処理デバイスによって実行されるソフトウェアコードとして実装されてもよい。ソフトウェアコードは、保存および/または伝送のためのコンピュータ可読媒体上に一連の命令またはコマンドとして保存することができる。好適な非一過性コンピュータ可読媒体は、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、磁気媒体(ハードドライブもしくはフロッピーディスクなど)、または光学媒体(コンパクトディスク(CD)もしくはDVD(デジタル多用途ディスク)など)、およびフラッシュメモリなどを含むことができる。コンピュータ可読媒体は、このようなストレージデバイスまたは伝送デバイスの任意の組み合わせであってもよい。
【0342】
このようなプログラムはまた、コード化され、インターネットを含む様々なプロトコルに従う有線ネットワーク、光ネットワーク、および/または無線ネットワークを介した送信に適合した搬送波信号を使用して送信されてもよい。このように、コンピュータ可読媒体は、このようなプログラムでコード化されたデータ信号を用いて作製されてもよい。プログラムコードでコード化されたコンピュータ可読媒体は、互換性のあるデバイスでパッケージ化されていても、または(例えば、インターネットダウンロードを介して)他のデバイスとは別個に提供されてもよい。任意のこのようなコンピュータ可読媒体は、単一のコンピュータ製品(例えば、ハードドライブ、CD、またはコンピュータシステム全体)上またはその内部に存在してもよく、システムまたはネットワーク内の異なるコンピュータ製品上またはその内部に存在してもよい。コンピュータシステムは、モニタ、プリンタ、または本明細書に記載の結果のうちのいずれかをユーザへ提供するための他の好適なディスプレイを含み得る。
【0343】
本明細書記載の方法のうちのいずれも、ステップを実行するように構成することができる1つ以上のプロセッサを含むコンピュータシステムを用いて全体的または部分的に実施することができる。したがって、実施形態は、本明細書に説明される方法のうちのいずれかのステップを実行するように構成されたコンピュータシステムを対象とし得、潜在的には異なるコンポーネントがそれぞれのステップまたはそれぞれのステップ群を実行する。番号付けされたステップとして提示されるが、本明細書の方法のステップは、同時にもしくは異なる時間に、または異なる順序で実行することができる。加えて、これらのステップの部分は、他の方法の他のステップの部分と併用することができる。また、ステップの全部または一部分は、任意選択適であり得。加えて、本方法のうちのいずれかのステップのうちのいずれかを、これらのステップを実行するためのシステムのモジュール、ユニット、回路、または他の手段を用いて実行することができる。
【0344】
特定の実施形態の具体的な詳細は、本発明の実施形態の趣旨および範囲から逸脱することなく、任意の好適な様態で組み合わせることができる。しかしながら、本発明の他の実施形態は、各個々の態様、またはこれらの個々の態様の具体的な組み合わせに関する具体的な実施形態を対象とし得る。
【0345】
本発明の例示的実施形態の上の説明は、図示および説明の目的で提示されている。包括的であること、または本発明を説明された正確な形態に限定することは意図されず、多くの修正および変更が、先の教示に鑑みて可能である。
【0346】
「a」、「an」、または「the」の記述は、それとは反対に具体的に示されない限り、「1つ以上」を意味することが意図される。「または」の使用は、それとは反対に具体的に示されない限り、「を除いてまたは」ではなく「を含んでまたは」を意味することが意図される。「第1」のコンポーネントへの言及は、第2のコンポーネントが提供されることを必ずしも必要としない。さらに、「第1」または「第2」のコンポーネントへの言及は、明示的に述べられていない限り、言及されるコンポーネントを特定の場所に限定するものではない。「~に基づいて」という用語は、「少なくとも一部に基づいて」を意味することを意図している。
【0347】
本明細書において言及されるすべての特許、特許出願、刊行物、および明細書は、すべての目的に対して参照により本明細書に組み込まれる。いかなるものも、先行技術であるとは認められていない。
【手続補正書】
【提出日】2023-12-18
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
光測距システムを使用して測距を実行する方法であって、
前記光測距システムのピクセルの光センサにより光子を検出し、それにより複数の時間ビンにおける初期データ値を生成することであって、前記光センサが複数の光検出器を含む、生成することと、
前記初期データ値に基づいて、前記検出された光子の強度レベルを決定することと、
前記光測距システムの光源から第1のパルスを送信することであって、前記第1のパルスが、物体から反射する、送信することと、
前記第1のパルスの光子を検出する前に、前記決定された強度レベルに基づいて、前記光検出器のセットの動作状態を変更することと、
前記変更された動作状態に応じて、アクティブ動作中の光検出器によって前記第1のパルスの光子を検出し、それにより前記複数の時間ビンにおける第1のデータ値を生成することと、
前記複数の時間ビンにおける前記第1のデータ値を使用して、前記第1のパルスに対応する受信時間を決定することと、
前記受信時間を使用して前記物体までの距離を決定することと、を含む、方法。
【請求項2】
前記光検出器のセットが、前記複数の光検出器のすべてである、請求項1に記載の方法。
【請求項3】
前記動作状態が、前記光検出器のセットの電力レベルまたは減衰レベルである、請求項1に記載の方法。
【請求項4】
前記光検出器のセットの前記動作状態が、どの光検出器のどの信号を使用して前記複数の時間ビンにおける前記第1のデータ値を生成するかを指定することにより変更され、それにより、どの光検出器がアクティブ動作中であるかを指定する、請求項1に記載の方法。
【請求項5】
前記決定された強度レベルが、高閾値を上回り、前記決定された強度レベルに基づいて、前記光検出器のセットの前記動作状態を変更することが、
前記光検出器のセットの減衰レベルを増加させることを含む、請求項1に記載の方法。
【請求項6】
前記決定された強度レベルが、低閾値を下回り、前記決定された強度レベルに基づいて、前記光検出器のセットの前記動作状態を変更することが、
前記光検出器のセットの減衰レベルを減少させることを含む、請求項1に記載の方法。
【請求項7】
前記光センサが、
低感度を有するものとして分類された光検出器の第1のセットと、
高感度を有するものとして分類された光検出器の第2のセットと、を備え、前記光検出器の第1のセット、または前記光検出器の第2のセットの前記動作状態が、他方ではなく、前記決定された強度レベルに基づいて変更される、請求項1に記載の方法。
【請求項8】
前記決定された強度レベルに基づいて、前記光検出器の第1のセットの前記動作状態を変更することが、
前記決定された強度レベルが高閾値を上回る場合、前記光検出器の第2のセットのうちの1つ以上の電力レベルを低下させることを含む、請求項7に記載の方法。
【請求項9】
前記決定された強度レベルが、明るい背景光源の結果である、請求項8に記載の方法。
【請求項10】
前記光検出器の第2のセットのうちの前記1つ以上の前記電力レベルを低下させることが、前記光検出器の第2のセットのうちの前記1つ以上をオフにすることを含む、請求項8に記載の方法。
【請求項11】
前記決定された強度レベルに基づいて、前記光検出器の第1のセットの前記動作状態を変更することが、
前記決定された強度レベルが低閾値を下回るときに、前記光検出器の第1のセットのうちの1つ以上の電力レベルを低下させることを含む、請求項7に記載の方法。
【請求項12】
前記光検出器の第1のセットのうちの前記1つ以上の前記電力レベルを低下させることが、前記光検出器の第1のセットのうちの前記1つ以上をオフにすることを含む、請求項11に記載の方法。
【請求項13】
前記光センサが、中間感度を有するものとして分類された光検出器の第3のセットを含み、前記方法が、
前記第1のパルスの光子を検出する前に、前記光検出器の第1のセットまたは前記光検出器の第2のセットのうちの1つの前記動作状態を変更したことに加えて、前記決定された強度レベルに基づいて、前記光検出器の第3のセットの前記動作状態を変更することをさらに含む、請求項7に記載の方法。
【請求項14】
前記初期データ値を提供する前記検出された光子が、背景光に対応する、請求項1に記載の方法。
【請求項15】
前記光測距システムの前記光源から初期パルスを送信することをさらに含み、前記初期パルスが、前記物体から反射し、前記初期データ値を提供する前記検出された光子が、前記初期パルスに対応し、
前記受信時間が、前記複数の時間ビンにおける前記第1のデータ値および前記初期データ値を使用して、前記第1のパルスおよび前記初期パルスについて決定される、請求項1に記載の方法。
【請求項16】
前記物体が反射性である結果として、前記決定された強度レベルが、高閾値を上回り、前記方法が、
前記決定された強度レベルが高閾値を上回ることに応じて、前記光検出器のセットの前記動作状態を低下させることをさらに含む、請求項15に記載の方法。
【請求項17】
前記変更された動作状態が、指定された時間維持される、請求項1に記載の方法。
【請求項18】
前記指定された時間が、パルス列の数に関して定義される、請求項17に記載の方法。
【請求項19】
前記光測距システムが、回転し、前記光測距システムの角度位置を識別するエンコーダを含み、前記方法が、
前記光測距システムが初期角度位置にあるときに前記強度レベルが決定されることを識別することをさらに含み、前記光測距システムが1回以上回転した後に、前記初期角度位置に戻るときに前記第1のパルスが送信される、請求項1に記載の方法。
【請求項20】
前記決定された強度レベルに基づいて、前記光源から放出される1つ以上のパルスの強度を変更することをさらに含む、請求項1に記載の方法。
【請求項21】
請求項1~20のいずれか一項に記載の方法の動作を実行するコンピュータシステムを制御するための複数の命令を格納するコンピュータ可読媒体を備える、コンピュータ製品。
【請求項22】
請求項1~20のいずれか一項に記載の方法を実行するように構成された1つ以上のプロセッサを備える、システム。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0347
【補正方法】変更
【補正の内容】
【0347】
本明細書において言及されるすべての特許、特許出願、刊行物、および明細書は、すべての目的に対して参照により本明細書に組み込まれる。いかなるものも、先行技術であるとは認められていない。
なお、出願時の請求項は以下の通りである。
<請求項1>
光学測定システムを使用する方法であって、
一つの光学測定の一部として光源からN個のパルス列を送信することであって、前記N個のパルス列の各々が、前記光源からの1つ以上のパルスを含み、かつ開始信号によってトリガされる異なる時間間隔に対応し、Nが、1よりも大きい整数である、送信することと、
前記光学測定システムの光センサによって前記N個のパルス列の光子を検出し、それにより複数の時点でデータ値を生成することと、
前記N個のパルス列の各々について、前記パルス列に対応する前記時間間隔内の時点で前記データ値に重みを割り当て、それにより加重値を取得することであって、前記N個のパルス列のうちの少なくとも2つが、異なる重みが割り当てられ、異なるパルスパターンを有する、取得することと、
複数の時間ビンにおける前記加重値に対応するヒストグラムを決定することであって、特定の時間ビンにおける前記ヒストグラムのカウンタが、複数の時間間隔にわたる前記特定の時間ビン内の時点で前記加重値を累積することにより決定される、決定することと、
前記ヒストグラムを使用して、前記N個のパルス列に対応する信号を検出することと、を含む、方法。
<請求項2>
前記開始信号に対する前記N個のパルス列に対応する受信時間を決定することをさらに含む、請求項1に記載の方法。
<請求項3>
前記受信時間を決定することが、
前記ヒストグラム上でフィルタをスライドさせて、前記ヒストグラムに対する前記フィルタの異なるスライド位置に対応するカウンタを有するフィルタ処理されたヒストグラムを計算することであって、前記フィルタ処理されたヒストグラムの前記カウンタの各々は、特定のスライド位置における前記フィルタと前記ヒストグラムとの重複に対応する、計算することと、
前記フィルタ処理されたヒストグラムの前記カウンタの最大値を特定することであって、前記カウンタの前記最大値に対する前記特定のスライド位置が前記受信時間に対応する、特定することと、を含む、請求項2に記載の方法。
<請求項4>
前記光学測定システムが、光測距システムであり、前記N個のパルス列が、物体から反射し、前記方法が、
前記受信時間を使用して前記物体までの距離を決定することをさらに含む、請求項2に記載の方法。
<請求項5>
前記距離が、前記受信時間と、前記開始信号の開始時間との間の往復時間に対応する、請求項4に記載の方法。
<請求項6>
前記少なくとも2つのパルス列が、前記開始信号に対して異なる時間にパルスを有することにより、異なるパルスパターンを有する、請求項1に記載の方法。
<請求項7>
前記重みが、2次元以上のベクトルである、請求項1に記載の方法。
<請求項8>
第1の重みが、正であり、第2の重みが、負である、請求項1に記載の方法。
<請求項9>
ヒストグラム回路が、前記ヒストグラムを決定し、前記ヒストグラム回路および前記光センサとが、同じ集積回路上にある、請求項1に記載の方法。
<請求項10>
複数の測距測定の一部として、光源および光センサの複数のチャネルに対して請求項1に記載の方法を実行することをさらに含み、前記複数の測距測定が、時間的に重複する、請求項1に記載の方法。
<請求項11>
前記複数のチャネルのうちの少なくとも2つのチャネルの前記N個のパルス列のパルスパターンが異なり、それにより、異なるチャネルに対して異なるヒストグラムパターンが生じる、請求項10に記載の方法。
<請求項12>
前記複数のチャネルのうちの少なくとも2つのチャネルの前記N個のパルス列に割り当てられた重みが異なり、それにより、異なるチャネルに対して異なるヒストグラムパターンが生じる、請求項10に記載の方法。
<請求項13>
光測距システムであって、
パルスを提供するように構成された光源と、
センサ集積回路であって、
複数の光センサであって、各々が、光子によってトリガされると、前記光子が検出されたことを示すバイナリ信号を出力するように構成されている複数の光検出器を含む、複数の光センサと、
前記バイナリ信号に基づいて、光子が検出される時間を決定するように構成されたタイミング回路と、
時間ビン中にトリガされた多数の光センサにそれぞれ対応するカウンタを決定および保存することにより、物体から反射した前記光源からの1つ以上のパルスの受信時間を決定するために使用可能なヒストグラムを作成するように構成されたヒストグラム回路と、を含む、センサ集積回路と、を備える、光測距システム。
<請求項14>
複数の光検出器が、単一光子アバランシェダイオード(SPAD)を備える、請求項13に記載の光測距システム。
<請求項15>
前記センサ集積回路が、
1つ以上の整合フィルタを前記ヒストグラムに適用して、前記受信時間が存在する時間窓を識別するように構成された窓掛け回路をさらに含む、請求項13に記載の光測距システム。
<請求項16>
前記センサ集積回路が、
前記時間窓内の前記ヒストグラムに複数の補間フィルタを適用するように構成された補間回路をさらに含み、最良に整合する補間フィルタが、前記時間ビンの幅未満の精度で対する前記受信時間を識別する、請求項15に記載の光測距システム。
<請求項17>
前記センサ集積回路と通信可能に結合されており、かつ
前記時間窓内の前記ヒストグラムに複数の補間フィルタを適用するように構成された補間回路を含む、第2の集積回路をさらに備え、最良に整合する補間フィルタが、前記時間ビンの幅未満精度で対する前記受信時間を識別する、請求項15に記載の光測距システム。
<請求項18>
前記タイミング回路および前記ヒストグラム回路が、前記光測距システムの動作中専用回路である、請求項13に記載の光測距システム。
<請求項19>
前記センサ集積回路が、特定用途向け集積回路(ASIC)を備える、請求項18に記載の光測距システム。
<請求項20>
前記センサ集積回路が、フィールドプログラマブルゲートアレイ(FPGA)を備える、請求項18に記載の光測距システム。
<請求項21>
前記光源と前記センサ集積回路とに接続されており、かつ前記光源および前記センサ集積回路を回転させる回転モータをさらに備える、請求項13に記載の光測距システム。
<請求項22>
前記光源が、集積回路上に複数のレーザデバイスを含み、前記複数のレーザデバイスが、垂直キャビティ面発光レーザ(VCSEL)である、請求項13に記載の光測距システム。
<請求項23>
光測距システムを使用して測距を実行する方法であって、
前記光測距システムの光源からパルスを送信することであって、前記パルスが物体から反射する、送信することと、
前記光測距システムのピクセルの光センサにより前記パルスの光子を検出し、それにより複数の時点でデータ値を生成することと、
複数の時間ビン内の前記データ値に対応するヒストグラムを決定することであって、特定の時間ビンにおける前記ヒストグラムのカウンタが、前記特定の時間ビン内の1つ以上の時点における1つ以上のデータ値に対応する、決定することと、
前記ヒストグラムに複数のプロファイルフィルタを適用することであって、各プロファイルフィルタが、連続する時間ビンにわたり前記光センサによって検出される異なる光子の率に対応する、適用することと、
前記複数のプロファイルフィルタのうちの第1のプロファイルフィルタを、前記ヒストグラムに最も整合するものとして識別することと、
前記第1のプロファイルフィルタのフィルタ処理された出力を使用して、前記パルスの受信時間を決定することと、
前記受信時間を使用して前記物体までの距離を決定することと、を含む、方法。
<請求項24>
前記光測距システムが、複数のピクセルに対応する複数の光センサと、複数の光源と、を含み、各光センサが、それぞれの光源に対応する、請求項23に記載の方法。
<請求項25>
前記光源から前記パルスを送信することが、第1のパルス列を送信することを含み、前記第1のパルス列が、複数のパルスを含み、前記第1のパルス列の異なるパルスが、前記ヒストグラムの異なる時間ビンに対応する、請求項23に記載の方法。
<請求項26>
前記複数のプロファイルフィルタの各々が、前記第1のパルス列内の前記複数のパルスに対応する多数のタップを含む、請求項25に記載の方法。
<請求項27>
前記ヒストグラムを生成する測定の一部として一連のパルス列を送信することであって、前記一連のパルス列が、前記第1のパルス列を含み、前記一連のパルス列の各々が、複数の時間間隔のうちの異なる時間間隔に対応し、開始信号によってトリガされる、送信することと、
前記ヒストグラムを生成するために、前記複数の時間間隔にわたる前記時間ビン内の時点で前記データ値を累積することと、をさらに含む、請求項25に記載の方法。
<請求項28>
前記一連のパルス列が、
時間ビンの第1のセットに対応する第1のパルスパターンを有する1つ以上のパルス列の第1のセットと、
時間ビンの第2のセットに対応する第2のパルスパターンを有する1つ以上のパルス列の第2のセットと、を含み、
前記データ値を累積することが、
前記1つ以上のパルス列の第1のセットに対する前記データ値に第1の重みを割り当て、それにより第1の加重値を取得することと、
前記1つ以上のパルス列の第2のセットに対する前記データ値に第2の重みを割り当て、それにより第2の加重値を取得することとを含み、前記第1の重みが、前記第2の重みとは異なる、請求項27に記載の方法。
<請求項29>
前記第1の重みが、正であり、前記第2の重みが、負であり、前記ヒストグラムが、バーカーコードを形成する、請求項28に記載の方法。
<請求項30>
最良に整合するプロファイルフィルタを識別することが、
前記複数のプロファイルフィルタの各々について、
前記ヒストグラム上で前記プロファイルフィルタをスライドさせて、前記ヒストグラムに対する前記プロファイルフィルタの異なるスライド位置に対応するカウンタを有するフィルタ処理されたヒストグラムを計算することであって、前記フィルタ処理されたヒストグラムの前記カウンタの各々が、特定のスライド位置での前記プロファイルフィルタと前記ヒストグラムとの重複に対応する、計算することと、
前記フィルタ処理されたヒストグラムの最大値を識別し、それにより、複数のフィルタ処理されたヒストグラムの複数の最大値を取得することと、
前記複数の最大値からグローバル最大値を決定することであって、前記グローバル最大値が、前記第1のプロファイルフィルタおよび前記パルスの前記受信時間に対応する、決定することと、を含む、請求項23に記載の方法。
<請求項31>
前記複数のプロファイルフィルタが、粗フィルタであり、前記第1のプロファイルフィルタの前記フィルタ処理された出力が、前記グローバル最大値が生じる時間ビンを含む時間窓を含み、前記第1のプロファイルフィルタの前記フィルタ処理された出力を使用して前記パルスの前記受信時間を決定することが、
前記第1のプロファイルフィルタに対応する複数の補間フィルタを識別することと、
前記時間窓内の前記ヒストグラムに前記複数の補間フィルタを適用することであって、前記複数の補間フィルタの各々が、対応する時間ビン内に異なる値のパターンを有する、適用することと、
前記時間窓内の前記ヒストグラムに最も整合する第1の補間フィルタを識別することと、
前記第1の補間フィルタの前記値のパターンに基づいて前記受信時間を決定することと、を含む、請求項30に記載の方法。
<請求項32>
前記複数のプロファイルフィルタが、粗フィルタであり、前記第1のプロファイルフィルタの前記フィルタ処理された出力が、フィルタ処理されたヒストグラムと、前記グローバル最大値が生じる時間ビンを含む時間窓と、を含み、前記第1のプロファイルフィルタの前記フィルタ処理された出力を使用して前記パルスの前記受信時間を決定することが、
前記第1のプロファイルフィルタに対応する複数の補間フィルタを識別することと、
前記時間窓内の前記フィルタ処理されたヒストグラムに前記複数の補間フィルタを適用することであって、前記複数の補間フィルタの各々が、対応する時間ビン内に異なる値のパターンを有する、適用することと、
前記時間窓内の前記フィルタ処理されたヒストグラムに最も整合する第1の補間フィルタを識別することと、
前記第1の補間フィルタの前記値のパターンに基づいて前記受信時間を決定することと、を含む、請求項30に記載の方法。
<請求項33>
前記受信時間を使用して前記物体までの前記距離を決定することが、前記第1の補間フィルタの前記値のパターンに基づいて決定された前記受信時間と、前記パルスの送信時間との間の差を決定することを含む、請求項32に記載の方法。
<請求項34>
前記複数のプロファイルフィルタが、第2レベルのプロファイルフィルタであり、前記ヒストグラムに前記複数のプロファイルフィルタを適用することが、
前記ヒストグラムに第1レベルのフィルタを適用して、フィルタ処理されたヒストグラムを取得することと、
前記フィルタ処理されたヒストグラムに前記第2レベルのプロファイルフィルタを適用して、複数のフィルタ処理された出力を取得することと、を含む、請求項32に記載の方法。
<請求項35>
前記複数のプロファイルフィルタの各々が、非ゼロ値を有する、異なる数の連続する時間ビンを有する、請求項23に記載の方法。
<請求項36>
前記非ゼロ値を有する、前記異なる数の連続する時間ビンが、受信パルスの幅に対応し、前記複数のプロファイルフィルタのうちの少なくとも1つの幅が、前記受信パルスが反射した物体のタイプに対応する、請求項35に記載の方法。
<請求項37>
前記複数のプロファイルフィルタの各々が、複数の補間フィルタを含み、前記複数の補間フィルタの各々が、非ゼロ値の異なるパターンを有し、それにより、前記受信時間を、時間ビンの時間単位未満の解像度で決定することを可能にする、請求項35に記載の方法。
<請求項38>
前記光センサが、複数の光検出器を備え、前記ヒストグラムの各カウンタが、前記特定の時間ビン内の時点で、前記複数の光検出器のうちのいくつがトリガされたかに対応する、請求項23に記載の方法。
<請求項39>
前記光センサによって検出される前記異なる光子の率が、トリガされた後の光検出器の不感時間の結果として発生し、前記光検出器が、前記不感時間内に光子を検出せず、前記不感時間が、時間ビンより長い、請求項38に記載の方法。
<請求項40>
検出される高い光子の率が、後の時間ビンの間よりも初期の時間ビンの間により大きい数の光検出器がトリガすることに対応し、低い率が、後の時間ビンの間よりも初期の時間ビン間にほぼ同じ数の光検出器がトリガすることに対応する、請求項39に記載の方法。
<請求項41>
前記複数の光検出器が、単一光子アバランシェダイオード(SPAD)を含む、請求項38に記載の方法。
<請求項42>
前記データ値が、前記複数の光検出器の各々からのそれぞれの信号から決定され、前記方法が、
前記それぞれの信号の各々を閾値と比較して、対応する光検出器がトリガされたかどうかを判断することと、
前記それぞれの信号が前記閾値よりも大きい場合、トリガを示すバイナリ値をヒストグラム回路に送信し、前記ヒストグラム回路が、前記複数の光検出器にわたってバイナリ値を集約して、特定の時間ビン中にトリガされた光検出器の数を決定することと、をさらに含む、請求項38に記載の方法。
<請求項43>
前記それぞれの信号が、アナログ信号である、請求項42に記載の方法。
<請求項44>
光測距システムを使用して測距を実行する方法であって、
測距測定の一部として光源からN個のパルス列を送信することであって、前記N個のパルス列の各々が、前記光源からの1つ以上のパルスを含み、かつ開始信号によってトリガされる異なる時間間隔に対応し、前記N個のパルス列が物体から反射し、Nは1より大きい整数である、送信することと、
前記光測距システムのピクセルの光センサにより前記N個のパルス列の光子を検出し、それにより複数の時点でデータ値を生成することと、
複数の時間ビン内の前記データ値に対応するヒストグラムを決定することであって、特定の時間ビンにおける前記ヒストグラムのカウンタが、前記特定の時間ビン内の1つ以上の時点における1つ以上のデータ値に対応し、前記N個のパルス列が互いに異なる変化するオフセットを有し、前記N個のパルス列のうちの少なくとも2つが、時間ビンの幅未満でオフセットされる、決定することと、
前記開始信号に対する前記N個のパルス列に対応する受信時間を決定することと、
前記受信時間を使用して前記物体までの距離を決定することと、を含む、方法。
<請求項45>
前記N個のパルス列の各々が、1つ以上のパルスの同じパターンを有する、請求項44に記載の方法。
<請求項46>
前記N個のパルス列が、前記測距測定の前記パルス列のすべてである、請求項44に記載の方法。
<請求項47>
前記N個のパルス列の連続するパルス列が、時間オフセットTだけオフセットされる、請求項44に記載の方法。
<請求項48>
Nに前記時間オフセットTを乗算したものが、時間ビンの幅に等しい、請求項47に記載の方法。
<請求項49>
前記受信時間を決定することが、
前記ヒストグラムに整合フィルタを適用して、フィルタ処理されたヒストグラムを取得することと、
前記フィルタ処理されたヒストグラムの最大値および前記時間オフセットTを使用して、前記受信時間を決定することと、を含む、請求項47に記載の方法。
<請求項50>
前記時間オフセットTが、前記時間ビンの幅の0.5~0.01の間にある、請求項49に記載の方法。
<請求項51>
前記時間オフセットTが、前記時間ビンの幅の0.1である、請求項50に記載の方法。
<請求項52>
光測距システムを使用して測距を実行する方法であって、
前記光測距システムのピクセルの光センサにより光子を検出し、それにより複数の時間ビンにおける初期データ値を生成することであって、前記光センサが複数の光検出器を含む、生成することと、
前記初期データ値に基づいて、前記検出された光子の強度レベルを決定することと、
前記光測距システムの光源から第1のパルスを送信することであって、前記第1のパルスが、物体から反射する、送信することと、
前記第1のパルスの光子を検出する前に、前記決定された強度レベルに基づいて、前記光検出器のセットの動作状態を変更することと、
前記変更された動作状態に応じて、アクティブ動作中の光検出器によって前記第1のパルスの光子を検出し、それにより前記複数の時間ビンにおける第1のデータ値を生成することと、
前記複数の時間ビンにおける前記第1のデータ値を使用して、前記第1のパルスに対応する受信時間を決定することと、
前記受信時間を使用して前記物体までの距離を決定することと、を含む、方法。
<請求項53>
前記光検出器のセットが、前記複数の光検出器のすべてである、請求項52に記載の方法。
<請求項54>
前記動作状態が、前記光検出器のセットの電力レベルまたは減衰レベルである、請求項52に記載の方法。
<請求項55>
前記光検出器のセットの前記動作状態が、どの光検出器のどの信号を使用して前記複数の時間ビンにおける前記第1のデータ値を生成するかを指定することにより変更され、それにより、どの光検出器がアクティブ動作中であるかを指定する、請求項52に記載の方法。
<請求項56>
前記決定された強度レベルが、高閾値を上回り、前記決定された強度レベルに基づいて、前記光検出器のセットの前記動作状態を変更することが、
前記光検出器のセットの減衰レベルを増加させることを含む、請求項52に記載の方法。
<請求項57>
前記決定された強度レベルが、低閾値を下回り、前記決定された強度レベルに基づいて、前記光検出器のセットの前記動作状態を変更することが、
前記光検出器のセットの減衰レベルを減少させることを含む、請求項52に記載の方法。
<請求項58>
前記光センサが、
低感度を有するものとして分類された光検出器の第1のセットと、
高感度を有するものとして分類された光検出器の第2のセットと、を備え、前記光検出器の第1のセット、または前記光検出器の第2のセットの前記動作状態が、他方ではなく、前記決定された強度レベルに基づいて変更される、請求項52に記載の方法。
<請求項59>
前記決定された強度レベルに基づいて、前記光検出器の第1のセットの前記動作状態を変更することが、
前記決定された強度レベルが高閾値を上回る場合、前記光検出器の第2のセットのうちの1つ以上の電力レベルを低下させることを含む、請求項58に記載の方法。
<請求項60>
前記決定された強度レベルが、明るい背景光源の結果である、請求項59に記載の方法。
<請求項61>
前記光検出器の第2のセットのうちの前記1つ以上の前記電力レベルを低下させることが、前記光検出器の第2のセットのうちの前記1つ以上をオフにすることを含む、請求項59に記載の方法。
<請求項62>
前記決定された強度レベルに基づいて、前記光検出器の第1のセットの前記動作状態を変更することが、
前記決定された強度レベルが低閾値を下回るときに、前記光検出器の第1のセットのうちの1つ以上の電力レベルを低下させることを含む、請求項58に記載の方法。
<請求項63>
前記光検出器の第1のセットのうちの前記1つ以上の前記電力レベルを低下させることが、前記光検出器の第1のセットのうちの前記1つ以上をオフにすることを含む、請求項62に記載の方法。
<請求項64>
前記光センサが、中間感度を有するものとして分類された光検出器の第3のセットを含み、前記方法が、
前記第1のパルスの光子を検出する前に、前記光検出器の第1のセットまたは前記光検出器の第2のセットのうちの1つの前記動作状態を変更したことに加えて、前記決定された強度レベルに基づいて、前記光検出器の第3のセットの前記動作状態を変更することをさらに含む、請求項58に記載の方法。
<請求項65>
前記初期データ値を提供する前記検出された光子が、背景光に対応する、請求項52に記載の方法。
<請求項66>
前記光測距システムの前記光源から初期パルスを送信することをさらに含み、前記初期パルスが、前記物体から反射し、前記初期データ値を提供する前記検出された光子が、前記初期パルスに対応し、
前記受信時間が、前記複数の時間ビンにおける前記第1のデータ値および前記初期データ値を使用して、前記第1のパルスおよび前記初期パルスについて決定される、請求項52に記載の方法。
<請求項67>
前記物体が反射性である結果として、前記決定された強度レベルが、高閾値を上回り、前記方法が、
前記決定された強度レベルが高閾値を上回ることに応じて、前記光検出器のセットの前記動作状態を低下させることをさらに含む、請求項66に記載の方法。
<請求項68>
前記変更された動作状態が、指定された時間維持される、請求項52に記載の方法。
<請求項69>
前記指定された時間が、パルス列の数に関して定義される、請求項68に記載の方法。
<請求項70>
前記光測距システムが、回転し、前記光測距システムの角度位置を識別するエンコーダを含み、前記方法が、
前記光測距システムが初期角度位置にあるときに前記強度レベルが決定されることを識別することをさらに含み、前記光測距システムが1回以上回転した後に、前記初期角度位置に戻るときに前記第1のパルスが送信される、請求項52に記載の方法。
<請求項71>
前記決定された強度レベルに基づいて、前記光源から放出される1つ以上のパルスの強度を変更することをさらに含む、請求項52に記載の方法。
<請求項72>
請求項1~12および23~71のいずれか一項に記載の方法の動作を実行するコンピュータシステムを制御するための複数の命令を格納するコンピュータ可読媒体を備える、コンピュータ製品。
<請求項73>
請求項72に記載のコンピュータ製品と、
前記コンピュータ可読媒体上に格納された命令を実行するための1つ以上のプロセッサと、を備える、システム。
<請求項74>
請求項1~12および23~71のいずれか一項に記載の方法を実行する手段を備える、システム。
<請求項75>
請求項1~12および23~71のいずれか一項に記載の方法を実行するように構成された1つ以上のプロセッサを備える、システム。
【手続補正3】
【補正対象書類名】図面
【補正方法】変更
【補正の内容】
【外国語明細書】