(57)【要約】      （修正有）【課題】ＬＩＤＡＲ装置は、定期的にキャリブレーションが必要であるため、効率良い方法を提供する。【解決手段】自動運転車車両（ＡＤＶ）のＬＩＤＡＲ装置によって異なる時点で採集したＬＩＤＡＲポイントクラウドデータを表す１組のＬＩＤＡＲ画像を受信する６０１。パラメータの組が配置された座標変換器を使用して、各々のＬＩＤＡＲ画像をローカル座標系（例えば、ＬＩＤＡＲ座標空間）からグローバル座標系（例えば、ＧＰＳ座標空間）に変換または転換する６０２。変換されたＬＩＤＡＲ画像に基づいて、例えば、変換されたＬＩＤＡＲ画像を互いに併合することによって、第１のＬＩＤＡＲ反射図を生成する６０３。第１のＬＩＤＡＲ反射図と、参考ＬＩＤＡＲ反射図としての第２のＬＩＤＡＲ反射図との間の差異に基づいて、座標変換器の１つまたは複数のパラメータを調整することによって座標変換器を最適化する６０４。【選択図】図６
2020060553.tif 000002
【特許請求の範囲】
【請求項１】
自動運転のための光検出と測距ＬＩＤＡＲ装置のコンピュータ実装の方法であって、
自動運転車車両ＡＤＶのＬＩＤＡＲ装置によって異なる時点で採集したＬＩＤＡＲポイントクラウドデータを表す１組のＬＩＤＡＲ画像を受信することと、
各々のＬＩＤＡＲ画像について、座標変換器を使用して前記ＬＩＤＡＲ画像をローカル座標系からグローバル座標系に変換することと、
変換されたＬＩＤＡＲ画像の少なくとも一部に基づいて第１のＬＩＤＡＲ反射図を生成することと、
前記第１のＬＩＤＡＲ反射図と、参考ＬＩＤＡＲ反射図としての第２のＬＩＤＡＲ反射図との間の差異に基づいて、座標変換器の１つまたは複数のパラメータを調整することによって前記座標変換器をキャリブレートし、キャリブレートされた座標変換器は、自動運転期間中にリアルタイムで後続のＬＩＤＡＲ画像を処理するために用いられることとを含む、コンピュータ実装の方法。
【請求項２】
前記ＡＤＶが所定の運転環境で走行しているときに、前記ＬＩＤＡＲポイントクラウドデータを採集し、既知のパラメータの組を有するＬＩＤＡＲ装置によって採集された１組のＬＩＤＡＲポイントクラウドデータに基づいて、前記第２のＬＩＤＡＲ反射図を生成する、請求項１に記載の方法。
【請求項３】
各々の前記ＬＩＤＡＲ画像に対して感知処理を実行することによって、前記ＬＩＤＡＲ画像によって採集された障害物を識別し、
前記第１のＬＩＤＡＲ反射図に現れる第１の障害物の第１の位置と、前記第２のＬＩＤＡＲ反射図に現れる第２の障害物の第２の位置とを比較することを更に含む、請求項１に記載の方法。
【請求項４】
前記第１の障害物の第１の位置と前記第２の障害物の第２の位置との間の差異に基づいて、前記座標変換器の１つまたは複数のパラメータを調整する、請求項３に記載の方法。
【請求項５】
前記第１の障害物の第１の位置と前記第２の障害物の第２の位置との間の差異が所定の閾値を下回るまで、前記座標変換器の１つまたは複数のパラメータを調整し、前記第１の障害物の第１の位置と前記第２の障害物の第２の位置を比較することによって、前記座標変換器に対するキャリブレートを繰り返し実行することを更に含む、請求項４に記載の方法。
【請求項６】
前記第１の障害物と前記第２の障害物の重ね領域のサイズを確定することを更に含む、請求項３に記載の方法。
【請求項７】
前記重ね領域のサイズが所定の閾値以上になるまで、前記座標変換器の１つまたは複数のパラメータを調整し、前記重ね領域のサイズを確定することによって、前記座標変換器に対するキャリブレートを繰り返し実行することを更に含む、請求項６に記載の方法。
【請求項８】
前記座標変換器は、四元数関数を含む、請求項１に記載の方法。
【請求項９】
勾配降下法を使って、前記座標変換器に対する最適化を実行する、請求項１に記載の方法。
【請求項１０】
指令を記憶している非一時性機械可読メディアであって、
前記指令は、プロセッサーによって実行されるときに、前記プロセッサーを、操作を実行するようにさせ、前記操作は、
自動運転車車両ＡＤＶの光検出と測距ＬＩＤＡＲ装置によって異なる時点で採集したＬＩＤＡＲポイントクラウドデータを表す１組のＬＩＤＡＲ画像を受信することと、
各々のＬＩＤＡＲ画像について、座標変換器を使用して前記ＬＩＤＡＲ画像をローカル座標系からグローバル座標系に変換することと、
変換されたＬＩＤＡＲ画像の少なくとも一部に基づいて第１のＬＩＤＡＲ反射図を生成することと、
前記第１のＬＩＤＡＲ反射図と、参考ＬＩＤＡＲ反射図としての第２のＬＩＤＡＲ反射図との間の差異に基づいて、前記座標変換器の１つまたは複数のパラメータを調整することによって前記座標変換器をキャリブレートし、キャリブレートされた座標変換器は、自動運転期間中にリアルタイムで後続のＬＩＤＡＲ画像を処理するために用いられることと
を含む、非一時性機械可読メディア。
【請求項１１】
前記ＡＤＶが所定の運転環境で走行しているときに、前記ＬＩＤＡＲポイントクラウドデータを採集し、既知のパラメータの組を有するＬＩＤＡＲ装置によって採集された１組のＬＩＤＡＲポイントクラウドデータに基づいて、前記第２のＬＩＤＡＲ反射図を生成する、請求項１０に記載の機械可読メディア。
【請求項１２】
前記操作は、各々の前記ＬＩＤＡＲ画像に対して感知処理を実行することによって、前記ＬＩＤＡＲ画像によって採集された障害物を識別し、
前記第１のＬＩＤＡＲ反射図に現れる第１の障害物の第１の位置と、前記第２のＬＩＤＡＲ反射図に現れる第２の障害物の第２の位置とを比較することを更に含む、請求項１０に記載の機械可読メディア。
【請求項１３】
前記第１の障害物の第１の位置と前記第２の障害物の第２の位置との間の差異に基づいて、前記座標変換器の１つまたは複数のパラメータを調整する、請求項１２に記載の機械可読メディア。
【請求項１４】
前記操作は、前記第１の障害物の第１の位置と前記第２の障害物の第２の位置との間の差異が所定の閾値を下回るまで、前記座標変換器の１つまたは複数のパラメータを調整し、前記第１の障害物の第１の位置と前記第２の障害物の第２の位置を比較することによって、前記座標変換器に対するキャリブレートを繰り返し実行することを更に含む、請求項１３に記載の機械可読メディア。
【請求項１５】
前記操作は、前記第１の障害物と前記第２の障害物の重ね領域のサイズを確定することを更に含む、請求項１２に記載の機械可読メディア。
【請求項１６】
前記操作は、前記重ね領域のサイズが所定の閾値以上になるまで、前記座標変換器の１つまたは複数のパラメータを調整し、重ね領域のサイズを確定することによって、前記座標変換器に対するキャリブレートを繰り返し実行することを更に含む、請求項１５に記載の機械可読メディア。
【請求項１７】
プロセッサーと、前記プロセッサーに接続され、命令を記憶するメモリとを含むデータ処理システムであって、
前記命令は、プロセッサーによって実行されるときに、前記プロセッサーを、操作を実行するようにさせ、
前記操作は、
自動運転車ＡＤＶの光検出と測距ＬＩＤＡＲ装置によって異なる時点で採集したＬＩＤＡＲポイントクラウドデータを表す１組のＬＩＤＡＲ画像を受信することと、
各々のＬＩＤＡＲ画像について、座標変換器を使用して前記ＬＩＤＡＲ画像をローカル座標系からグローバル座標系に変換することと、
変換されたＬＩＤＡＲ画像の少なくとも一部に基づいて第１のＬＩＤＡＲ反射図を生成することと、
前記第１のＬＩＤＡＲ反射図と、参考ＬＩＤＡＲ反射図としての第２のＬＩＤＡＲ反射図との間の差異に基づいて、座標変換器の１つまたは複数のパラメータを調整することによって前記座標変換器をキャリブレートし、キャリブレートされた座標変換器は、自動運転期間中にリアルタイムで後続のＬＩＤＡＲ画像を処理するために用いられることとを含む、データ処理システム。
【請求項１８】
前記ＡＤＶが所定の運転環境で走行しているときに、前記ＬＩＤＡＲポイントクラウドデータを採集し、既知のパラメータの組を有するＬＩＤＡＲ装置によって採集された１組のＬＩＤＡＲポイントクラウドデータに基づいて、前記第２のＬＩＤＡＲ反射図を生成する、請求項１７に記載のシステム。
【請求項１９】
前記操作は、各々の前記ＬＩＤＡＲ画像に対して感知処理を実行することによって、前記ＬＩＤＡＲ画像によって採集された障害物を識別し、
前記第１のＬＩＤＡＲ反射図に現れる第１の障害物の第１の位置と、前記第２のＬＩＤＡＲ反射図に現れる第２の障害物の第２の位置とを比較することを更に含む、請求項１７に記載のシステム。
【請求項２０】
前記第１の障害物の第１の位置と前記第２の障害物の第２の位置との間の差異に基づいて、前記座標変換器の１つまたは複数のパラメータを調整する、請求項１９に記載のシステム。
【請求項２１】
前記操作は、前記第１の障害物の第１の位置と前記第２の障害物の第２の位置との間の差異が所定の閾値を下回るまで、前記座標変換器の１つまたは複数のパラメータを調整し、前記第１の障害物の第１の位置と前記第２の障害物の第２の位置を比較することによって、前記座標変換器に対するキャリブレートを繰り返し実行することを更に含む、請求項２０に記載のシステム。
【請求項２２】
前記操作は、前記第１の障害物と前記第２の障害物の重ね領域のサイズを確定することを更に含む、請求項１９に記載のシステム。
【請求項２３】
前記操作は、前記重ね領域のサイズが所定の閾値以上になるまで、前記座標変換器の１つまたは複数のパラメータを調整し、前記重ね領域のサイズを確定することによって、前記座標変換器に対するキャリブレートを繰り返し実行することを更に含む、請求項２２に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願の実施形態は、総体的に自動運転車の操作に関し、具体的には、自動運転のためのＬＩＤＡＲキャリブレーションに関する。
【背景技術】
【０００２】
自動運転モード（例えば、無人運転）で運行する車両は、乗員を、特に運転手を、幾つかの運転関連の責務から解放することができる。自動運転モードで運行する時、車両は、車載センサーを使用して各位置にナビゲートされることができ、故に車両を最小のマン・マシン・インタラショションの状況で、または乗客がまったくいない状況で運行させることができる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
光検出と測距（ＬＩＤＡＲ）装置は、自動運転車（ＡＤＶ）の最も重要で最も人気のセンサーの一つである。自動運転の正確性と効率性は、ＬＩＤＡＲ装置の正確性に大きく依存する。ＬＩＤＡＲ装置は、定期的にキャリブレーションが必要である。ＬＩＤＡＲキャリブレーションは、大規模な生産のために解決される必要のある挑戦的な問題である。ＬＩＤＡＲ装置をキャリブレートする効率良い方法が欠乏している。
【課題を解決するための手段】
【０００４】
第１の側面では、本願は、自動運転用のＬＩＤＡＲデバイスをキャリブレートするためのコンピュータ実装の方法を提供し、当該方法は、自動運転車車両（ＡＤＶ）のＬＩＤＡＲ装置によって異なる時点で採集したＬＩＤＡＲポイントクラウドデータを表す１組のＬＩＤＡＲ画像を受信することと、各々のＬＩＤＡＲ画像について、座標変換器を使用して前記ＬＩＤＡＲ画像をローカル座標系からグローバル座標系に変換することと、変換されたＬＩＤＡＲ画像の少なくとも一部に基づいて第１のＬＩＤＡＲ反射図を生成することと、前記第１のＬＩＤＡＲ反射図と、参考ＬＩＤＡＲ反射図としての第２のＬＩＤＡＲ反射図との間の差異に基づいて、前記座標変換器の１つまたは複数のパラメータを調整することによって前記座標変換器をキャリブレートし、キャリブレートされた座標変換器は、自動運転期間中にリアルタイムで後続のＬＩＤＡＲ画像を処理するために用いられることとを含む。
【０００５】
第２の側面では、本願は、指令を記憶している非一時性機械可読メディアを提供し、前記指令は、プロセッサーによって実行されるときに、前記プロセッサーを、操作を実行するようにさせ、前記操作は、自動運転車車両（ＡＤＶ）のＬＩＤＡＲ装置によって異なる時点で採集したＬＩＤＡＲポイントクラウドデータを表す１組のＬＩＤＡＲ画像を受信することと、
各々のＬＩＤＡＲ画像について、座標変換器を使用して前記ＬＩＤＡＲ画像をローカル座標系からグローバル座標系に変換することと、変換されたＬＩＤＡＲ画像の少なくとも一部に基づいて第１のＬＩＤＡＲ反射図を生成することと、前記第１のＬＩＤＡＲ反射図と、参考ＬＩＤＡＲ反射図としての第２のＬＩＤＡＲ反射図との間の差異に基づいて、前記座標変換器の１つまたは複数のパラメータを調整することによって前記座標変換器をキャリブレートし、キャリブレートされた座標変換器は、自動運転期間中にリアルタイムで後続のＬＩＤＡＲ画像を処理するために用いられることとを含む。
【０００６】
第３の側面では、本願は、データ処理システムを提供し、当該データ処理システムは、プロセッサーと、前記プロセッサーに接続され、指令を記憶するメモリとを含み、前記指令は、プロセッサーによって実行されるときに、前記プロセッサーを、操作を実行するようにさせ、前記操作は、自動運転車車両（ＡＤＶ）のＬＩＤＡＲ装置によって異なる時点で採集したＬＩＤＡＲポイントクラウドデータを表す１組のＬＩＤＡＲ画像を受信することと、各々のＬＩＤＡＲ画像について、座標変換器を使用して前記ＬＩＤＡＲ画像をローカル座標系からグローバル座標系に変換することと、変換されたＬＩＤＡＲ画像の少なくとも一部に基づいて第１のＬＩＤＡＲ反射図を生成することと、前記第１のＬＩＤＡＲ反射図と、参考ＬＩＤＡＲ反射図としての第２のＬＩＤＡＲ反射図との間の差異に基づいて、前記座標変換器の１つまたは複数のパラメータを調整することによって前記座標変換器をキャリブレートし、キャリブレートされた座標変換器は、自動運転期間中にリアルタイムで後続のＬＩＤＡＲ画像を処理するために用いられることとを含む。
【図面の簡単な説明】
【０００７】
本願の実施形態は、各図面の中で限定の方式ではなく、例をあげる方式で示されている。図面の中の同じ参照表記は、似ている部材を示す。
【図１】一つの実施形態によるネットワーク化システムを示すブロック図である。
【図２】一つの実施形態による自動運転車の例示を示すブロック図である。
【図３Ａ】一つの実施形態による、自動運転車と共に使用される感知と計画システムの例示を示すブロック図である。
【図３Ｂ】一つの実施形態による、自動運転車と共に使用される感知と計画システムの例示を示すブロック図である。
【図４】一つの実施形態による、ＬＩＤＡＲキャリブレーションシステムの例示を示すブロック図である。
【図５】一つの実施形態による、キャリブレーションの目的に使用されるＬＩＤＡＲ画像の例示を示す図である。
【図６】一つの実施形態による、ＬＩＤＡＲキャリブレーションのプロセスを示すフローチャート図である。
【図７】他の実施形態による、ＬＩＤＡＲキャリブレーションのプロセスを示すフローチャート図である。
【図８】一つの実施形態によるデータ処理システムを示すブロック図である。
【発明を実施するための形態】
【０００８】
以下、討論の細部を参考しながら、本願の各実施形態と各側面について説明し、図面は、各実施形態を示す。以下の説明と図面は、本願に対する解釈であり、本願に対する限定ではないことが理解される。本願の各実施形態に対する全面的な理解をさせるために、多数の特定な細部を説明するが、場合によっては、本願の実施形態に対する簡潔な討論を行わせるために、周知の細部または通常の細部については、説明を省く時もある。
【０００９】
本明細書における「一つの実施形態」または「実施形態」の言及は、当該実施形態に関連して説明する特定の特徴、構造または特性が、本願の少なくとも一つの実施形態に含まれることを意味する。本明細書の各箇所に現れる短句「一つの実施形態において」は、必ずしも全部同一の実施形態を指すものではない。
【００１０】
幾つかの実施形態により、ＡＤＶは、ＡＤＶに設置されたＬＩＤＡＲ装置からＬＩＤＡＲデータ（例えば、ＬＩＤＡＲラインポイントクラウドデータ）、対応する位置データ（例えば、ＧＰＳデータ）、および車両の進行方向のデータを収集するように駆動される。ＬＩＤＡＲデータは、ＬＩＤＡＲ空間またはＬＩＤＡＲ座標系で取得される。車両座標系（例えば、車両の後車軸の中心点、車両に相対するローカル座標系）においてＬＩＤＡＲデータを変換することができる。ＬＩＤＡＲデータによって構成される各ＬＩＤＡＲ画像について、感知プロセスまたはアルゴリズムを用いて、ＬＩＤＡＲ画像によって捕捉された障害物または対象物を判別および識別する。障害物の位置は、ＬＩＤＡＲまたは車両座標空間において計算される。
【００１１】
座標変換器は、ＬＩＤＡＲ画像をＬＩＤＡＲ座標空間からＧＰＳ座標系などのグローバル座標系に転換または変換するために使用される。座標変換器の所与の一組のパラメータまたは係数について、その時点での座標変換器に対応するＬＩＤＡＲ反射図を動的に形成するように、変換されたＬＩＤＡＲ画像を併合する。ＬＩＤＡＲ反射図と、所定の参考ＬＩＤＡＲ反射図とを比較することによって、両者の間の差異を確定する。既知のパラメータの組が配置された座標変換器を使用して、参考ＬＩＤＡＲ反射図を生成し、すなわちゴールド参考を提供する。動的ＬＩＤＡＲ反射図と参考ＬＩＤＡＲ反射図との間の差異を確定するとき、２つの反射図において採集された２つの障害物の重なり領域のサイズを確定する。重なり領域のサイズが大きいほど、２つの反射図間の差異は小さい。
【００１２】
座標変換器のパラメータを調整し、上記のプロセスを繰り返して実行し、動的に生成されたＬＩＤＡＲ反射図と所定の参考ＬＩＤＡＲ反射図との間の差異を最小にするように座標変換器の最適パラメータの組を決定し、この時点の動的ＬＩＤＡＲ反射図を生成するのに用いられる座標変換器は、最良の座標変換器とみなされる。そのあと、最良の座標変換器を、リアルタイムでＬＩＤＡＲ画像を処理するためにＡＤＶにアップロードすることができる。座標変換器は、四元数関数（Ｑ関数とも呼ばれる）によって表すことができる。
【００１３】
一つの実施形態により、自動運転車車両（ＡＤＶ）のＬＩＤＡＲ装置によって異なる時点で採集したＬＩＤＡＲポイントクラウドデータを表す１組のＬＩＤＡＲ画像を受信する。パラメータの組が配置された座標変換器を使用して、各々のＬＩＤＡＲ画像をローカル座標系（例えば、ＬＩＤＡＲ座標空間）からグローバル座標系（例えば、ＧＰＳ座標空間）に変換または転換する。変換されたＬＩＤＡＲ画像に基づいて、例えば、変換されたＬＩＤＡＲ画像を互いに併合することによって、第１のＬＩＤＡＲ反射図を生成する。第１のＬＩＤＡＲ反射図と、参考ＬＩＤＡＲ反射図としての第２のＬＩＤＡＲ反射図との間の差異に基づいて、座標変換器の１つまたは複数のパラメータを調整することによって座標変換器を最適化する。そのあと、最適化された座標変換器を用いて、リアルタイムで自動運転のためのＬＩＤＡＲデータを処理することができる。
【００１４】
ＡＤＶが所定の運転環境（例えば、第２のＬＩＤＡＲ反射図を生成した環境と同じ環境）で運転しているときに、ＬＩＤＡＲポイントクラウドデータを採集する。既知のパラメータの組を有するＬＩＤＡＲ装置によって採集された１組のＬＩＤＡＲポイントクラウドデータに基づいて、第２のＬＩＤＡＲ反射図を生成する。一つの実施形態において、ＬＩＤＡＲ画像に基づいて、各々のＬＩＤＡＲ画像に対して感知処理を実行し、ＬＩＤＡＲ画像によって採集された障害物を識別し判別する。第１のＬＩＤＡＲ反射図に現れる第１の障害物の第１の位置と第２のＬＩＤＡＲ反射図に現れる第２の障害物の第２の位置とを比較して、第１のＬＩＤＡＲ反射図と第２のＬＩＤＡＲ反射図との間の差異を確定する。第１の障害物の第１の位置と第２の障害物の第２の位置との間の差異に基づいて、座標変換器のパラメータを調整する。
【００１５】
一つの実施形態において、動的ＬＩＤＡＲ反射図と参考ＬＩＤＡＲ反射図との間の差異が所定の閾値を下回るまで、座標変換器の１つまたは複数のパラメータを調整し、動的ＬＩＤＡＲ反射図と参考ＬＩＤＡＲ反射図との間の障害物の位置を比較することによって、キャリブレートを繰り返し実行する。一つの実施形態により、反射図の間の差異を確定するとき、動的ＬＩＤＡＲ反射図と参考ＬＩＤＡＲ反射図を比較することによって２つの反射図の障害物の重なり領域のサイズを計算する。重なり領域が大きければ、同じまたは似ている位置で同じ障害物を採集したことになるため、２つのＬＩＤＡＲ反射図の間の差異が小さいことを意味する。重なり領域のサイズが所定の閾値以上になるまで、繰り返してキャリブレートを実行する。
【００１６】
図１は、本願の一つの実施形態による自動運転車のネットワーク配置を示すブロック図である。図１に示すように、ネットワーク配置１００は、ネットワーク１０２を通じて一つまたは複数のサーバー１０３〜１０４に通信可能に接続する自動運転車１０１を含む。一台の自動運転車しか示されていないが、複数台の自動運転車がネットワーク１０２を通じて互いに接続し、及び／またはサーバー１０３〜１０４に接続しても良い。ネットワーク１０２は、任意のタイプのネットワークであっても良く、例えば、有線または無線のローカルエリアネットワーク（ＬＡＮ）、インターネットのようなワイドエリアネットワーク（ＷＡＮ）、移動体通信ネットワーク、衛星ネットワークまたはその組み合わせであっても良い。サーバー１０３〜１０４は、任意のタイプのサーバーまたはサーバークラスタであっても良く、例えば、ネットワークまたはクラウドサーバー、アプリケーションサーバー、バックエンドサーバーまたはその組み合わせであっても良い。サーバー１０３〜１０４は、データ分析サーバー、コンテンツサーバー、交通情報サーバー、地図と関心地点（ＭＰＯＩ）サーバーまたは位置サーバー等であっても良い。
【００１７】
自動運転車は、自動運転モードで配置できる車両を指し、前記自動運転モードにおいて、運転手からの入力が非常に少ない状況、または運転手からの入力がない状況において車両が環境を通過するようにナビゲートされる。このような自動運転車は、センサーシステムを含むことができ、前記センサーシステムは、車両の運行環境と関係のある情報を計測する一つまたは複数のセンサーを有するように配置される。前記車両と関連するコントローラは、計測した情報を使用して車両が前記環境を通過するようにナビゲートする。自動運転車１０１は、手動モード、全自動運転モードまたは部分自動運転モードで走行することができる。
【００１８】
一つの実施形態において、自動運転車１０１は、感知と計画システム１１０と、車両制御システム１１１と、無線通信システム１１２と、ユーザーインターフェースシステム１１３と、センサーシステム１１５とを含むが、これらに限定されない。自動運転車１０１は、さらに普通の車両に含まれる通常の部材、例えば、エンジン、ホイール、ステアリングホイール、トランスミッション等を含むことができ、前記部材は、複数の種類の通信信号及び／または命令を使って車両制御システム１１１及び／または感知と計画システム１１０によってコントロールされることができる。当該複数の種類の通信信号及び／または命令は、例えば、加速信号または命令、減速信号または命令、方向転換信号または命令、ブレーキ信号または命令等である。
【００１９】
部材１１０〜１１５は、インターコネクト、バス、ネットワークまたはその組み合わせを通じて互いに通信可能に接続することができる。部材１１０〜１１５は、コントローラエリアネットワーク（ＣＡＮ）バスを通じて互いに通信可能に接続することができる。ＣＡＮバスは、ホストコンピュータがない応用においてマイクロコントローラーと装置が互いに通信できるように設計された車両バス規格である。ＣＡＮバスは、最初は自動車内部の多重化電気配線用に設計されたメッセージベースのプロトコルであるが、多数のその他の環境においても使用される。
【００２０】
図２に示すように、一つの実施形態において、センサーシステム１１５は、一つまたは複数のカメラ２１１と、グローバル・ポジショニング・システム（ＧＰＳ）ユニット２１２と、慣性計測装置（ＩＭＵ）２１３と、レーダーユニット２１４と、光検出と測距（ＬＩＤＡＲ）ユニット２１５とを含むが、これらに限定されない。ＧＰＳユニット２１２は、自動運転車の位置に関する情報を提供するように操作可能なトランシーバを含んでも良い。ＩＭＵユニット２１３は、慣性加速度に基づいて自動運転車の位置と向く方向の変化をセンシングすることができる。レーダーユニット２１４は、無線信号を使って自動運転車のローカル環境内のオブジェクトをセンシングするシステムを表すことができる。幾つかの実施形態において、オブジェクトをセンシングする以外に、レーダーユニット２１４は、さらにオブジェクトの速度及び／または進行方向をセンシングすることができる。ＬＩＤＡＲユニット２１５は、レーザーを使って自動運転車を取り巻く環境の中のオブジェクトをセンシングすることができる。その他のシステム部材以外に、ＬＩＤＡＲユニット２１５は、一つまたは複数のレーザー光源、レーザースキャンナー及び一つまたは複数の検出器を更に含むことができる。カメラ２１１は、自動運転車の周辺環境の画像を採集するために使う一つまたは複数の装置を含むことができる。カメラ２１１は、スチールカメラ及び／またはビデオカメラであっても良い。カメラは、機械的に移動できるものであっても良く、例えば、カメラを回転及び／または傾斜するプラットフォームに取り付けても良い。
【００２１】
センサーシステム１１５は、ソナーセンサー、赤外センサー、方向転換センサー、アクセルセンサー、ブレーキセンサー、及びオーディオセンサー（例えば、マイクロホン）のようなその他のセンサーを更に含むことができる。オーディオセンサーは、自動運転車の周辺環境から音声を採集するように配置されても良い。方向転換センサーは、ステアリングホイール、車両のホイールまたはその組み合わせの方向転換角度をセンシングするように配置されても良い。アクセルセンサーとブレーキセンサーは、それぞれ車両のアクセル位置とブレーキ位置をセンシングする。幾つかの状況において、アクセルセンサーとブレーキセンサーは、集積式アクセル／ブレーキセンサーとして集積されても良い。
【００２２】
一つの実施形態において、車両制御システム１１１は、方向転換ユニット２０１と、アクセルユニット２０２（加速ユニットとも呼ばれる）と、ブレーキユニット２０３とを含むが、これらに限定されない。方向転換ユニット２０１は、車両の方向または進行方向を調整するために使用される。アクセルユニット２０２は、モーターまたはエンジンの速度をコントロールするために使用され、モーターまたはエンジンの速度は、車両の速度と加速度を更にコントロールする。ブレーキユニット２０３は、摩擦を提供することによって車両のホイールまたはタイヤを減速させ、ひいては車両を減速させる。図２に示す部材は、ハードウェア、ソフトウェアまたはその組み合わせとして実装できることに注意すべきである。
【００２３】
図１の参照に戻り、無線通信システム１１２は、自動運転車１０１が例えば装置、センサー、その他の車両等の外部システムとの間で通信できるように許可する。例えば、無線通信システム１１２は、一つまたは複数の装置と直接的に無線通信することができ、または通信ネットワークを通じて無線通信することができ、例えば、ネットワーク１０２を通じてサーバー１０３〜１０４と通信することができる。無線通信システム１１２は、任意の移動体通信ネットワークまたは無線ローカルエリアネットワーク（ＷＬＡＮ）を使用することができ、例えば、ＷＩＦＩを使って他の部材またはシステムと通信する。無線通信システム１１２は、例えば、赤外線リンク、ブルートゥース等を使って装置（例えば、乗客のモバイル装置、ディスプレイ装置、車両１０１の内部のスピーカー）と直接通信することができる。ユーザーインターフェースシステム１１３は、車両１０１の内部で実装された周辺装置の部分であっても良く、例えば、キーボード、タッチパネルディスプレイ装置、マイクロホンとスピーカー等である。
【００２４】
特に自動運転モードで操作するとき、自動運転車１０１の機能の幾つかまたは全部は、感知と計画システムによってコントロールまたは管理されることができる。感知と計画システム１１０は、センサーシステム１１５、制御システム１１１、無線通信システム１１２及び／またはユーザーインターフェースシステム１１３から情報を受信し、受信した情報を処理し、起点から目的地点までのルートまたは経路を計画し、そして計画と制御情報に基づいて車両１０１を運転するように、必要なハードウェア（例えば、プロセッサー、メモリ、記憶装置）とソフトウェア（例えば、オペレーティングシステム、計画とルーティングプログラム）を含む。代替できるように、感知と計画システム１１０は、車両制御システム１１１と一体に集積されても良い。
【００２５】
例えば、乗客としてのユーザーは、例えばユーザーインターフェースを通じて行程のスタート位置と目的地を指定することができる。感知と計画システム１１０は、行程に関するデータを獲得する。例えば、感知と計画システム１１０は、サーバー１０３〜１０４の一部分であるＭＰＯＩサーバーから位置とルートの情報を獲得することができる。位置サーバーは、位置サービスを提供し、ＭＰＯＩサーバーは、地図サービスと幾つかの位置のＰＯＩを提供する。代替できるように、この種類の位置とＭＰＯＩ情報は、感知と計画システム１１０の永続的記憶装置にローカル的にキャッシュされても良い。
【００２６】
自動運転車１０１がルートに沿って移動する時、感知と計画システム１１０は、交通情報システムまたはサーバー（ＴＩＳ）からリアルタイムの交通情報を更に獲得することができる。サーバー１０３〜１０４は、サードパーティーによって操作されることができることに注意すべきである。代替できるように、サーバー１０３〜１０４の機能は、感知と計画システム１１０と一体に集積されても良い。安全でかつ効率よく指定の目的地に到達するように、リアルタイムの交通情報、ＭＰＯＩ情報、位置情報及びセンサーシステム１１５によって計測またはセンシングされたリアルタイムのローカル環境データ（例えば、障害物、オブジェクト、付近車両）に基づいて、感知と計画システム１１０は、最適なルートを計画し、そして計画されたルートに基づき、例えば制御システム１１１を通じて車両１０１を運転する。
【００２７】
サーバー１０３は、各種の顧客のためにデータ分析サービスを実行するデータ分析システムであっても良い。一つの実施形態において、データ分析システム１０３は、データ収集器１２１と機械学習エンジン１２２を含む。データ収集器１２１は、各種車両（自動運転車または人間の運転手によって運転される通常の車両）から運転統計データ１２３を収集する。運転統計データ１２３は、出された運転指令（例えば、アクセル、ブレーキ、方向転換指令）及び車両のセンサーが異なる時刻で捕捉した車両の反応（例えば、速度、加速、減速、方向）を表す情報を含む。運転統計データ１２３は、異なる時刻における運転環境を表す情報、例えば、ルート（スタート位置と目的地位置を含む）、ＭＰＯＩ、道路状況、気候状況等を更に含むことができる。
【００２８】
運転統計データ１２３に基づき、各種の目的のために、機械学習エンジン１２２は、ワンセットのルール、アルゴリズム及び／または予測モデル１２４を生成または訓練する。一つの実施形態において、アルゴリズム１２４は、座標変換器をキャリブレートまたは最適化するために用いられるアルゴリズムを含むことができ、それは、ＬＩＤＡＲ画像のローカル座標系をＧＰＳ座標系などのグローバル座標系に変換することによって、ＬＩＤＡＲ画像を自動運転に使えるようにさせる。そのあと、アルゴリズム１２４を、自動運転の期間でリアルタイムに使用されるように、ＡＤＶにアップロードすることができる。
【００２９】
一つの実施形態により、ＬＩＤＡＲキャリブレーションシステム１２５は、複数のＡＤＶによってある時間間隔内で収集された１組のＬＩＤＡＲ画像を使用して、座標変換器をキャリブレートまたは最適化するように配置され、前記１組のＬＩＤＡＲ画像は、データ収集器１２１によって収集されても良い。パラメータが配置された座標変換器は、ＬＩＤＡＲ画像をローカル／相対座標空間からＧＰＳ座標系などのようなグローバル／絶対座標系に転換または変換するために用いられる。座標変換器の所与のパラメータまたは係数について、変換されたＬＩＤＡＲ画像を併合することによって、動的ＬＩＤＡＲ反射図を生成する。そして、動的ＬＩＤＡＲ反射図と、事前にゴールド参考として生成した参考ＬＩＤＡＲ反射図とを比較する。座標変換器のパラメータを調整し、動的ＬＩＤＡＲ反射図と参考ＬＩＤＡＲ反射図との間の差異が所定の閾値を下回るように、２つの反射図の間の差異に基づいて上記のプロセスを繰り返して実行することによって、座標変換器の最適なパラメータの組を決定し、この時点の座標変換器は、最良の座標変換器とみなされる。そのあと、最良の座標変換器を、リアルタイムでＬＩＤＡＲ画像を処理するためにＡＤＶにアップロードすることができる。座標変換器は、四元数関数によって表すことができる。
【００３０】
図３Ａと図３Ｂは、一つの実施形態による自動運転車と一緒に使用される感知と計画システムの例示を示すブロック図である。システム３００は、図１の自動運転車１０１の一部分として実装することができ、感知と計画システム１１０と、制御システム１１１と、センサーシステム１１５とを含むが、これらに限定されない。図３Ａと図３Ｂに示すように、感知と計画システム１１０は、定位モジュール３０１と、感知モジュール３０２と、予測モジュール３０３と、決定モジュール３０４と、計画モジュール３０５と、制御モジュール３０６と、ルーティングモジュール３０７と、座標変換器３０８と、オプションのＬＩＤＡＲキャリブレーションモジュール３０９を含むが、これらに限定されない。
【００３１】
モジュール３０１〜３０９の中の幾つかまたは全部は、ソフトウェア、ハードウェアまたはその組み合わせとして実装することができる。例えば、これらのモジュールは、永続的記憶装置３５２にインストールされ、メモリ３５１にロードされ、一つまたは複数のプロセッサー（示さず）によって実行されても良い。これらのモジュールの中の幾つかまたは全部は、図２の車両制御システム１１１の幾つかまたは全部のモジュールと通信可能的に接続され、または一体に集積されることができることに注意すべきである。モジュール３０１〜３０９の中の幾つかは、一体に集積モジュールとして集積されても良い。
【００３２】
定位モジュール３０１は、自動運転車３００の目下位置（例えば、ＧＰＳユニット２１２を使って）を決め、ユーザーの行程またはルートに関する任意のデータを管理する。定位モジュール３０１（地図とルーティングモジュールとも呼ばれる）は、ユーザーの行程またはルートに関する任意のデータを管理する。ユーザーは、例えばユーザーインターフェースを通じてログインし、行程のスタート位置と目的地を指定することができる。定位モジュール３０１は、行程に関するデータを獲得するために、地図・経路情報３１１のような、自動運転車３００のその他の部材と通信する。例えば、定位モジュール３０１は、位置サーバーと、地図とＰＯＩ（ＭＰＯＩ）サーバーから位置とルートの情報を獲得できる。位置サーバーは、位置サービスを提供し、ＭＰＯＩサーバーは、地図サービスと幾つかの位置のＰＯＩを提供し、よって地図・経路情報３１１の一部分としてキャッシュできる。自動運転車３００がルートに沿って移動する時、定位モジュール３０１は、交通情報システムまたはサーバーからリアルタイムの交通情報を獲得することができる。
【００３３】
センサーシステム１１５から提供されたセンサーデータと定位モジュール３０１から獲得した定位情報に基づき、感知モジュール３０２は、周囲環境に対する感知を決める。感知情報は、普通の運転手が運転している車両の周辺から感知する情報を表すことができる。感知は、オブジェクトの形で、例えば、車線配置、交通信号、もう一つの車両の相対位置、歩行者、建築物、横断歩道またはその他の交通関連標識（例えば、停止標識、譲れ標識）等を含むことができる。車線配置は、例えば車線の形状（例えば、直線または曲線）、車線の幅、道路内の車線数、一方通行または双方向車線、合流または分離車線、出口車線などのような、１つまたは複数の車線を記述する情報を含む。
【００３４】
感知モジュール３０２は、一つまたは複数のカメラから採集した画像を処理分析し、自動運転車の環境の中のオブジェクト及び／または特徴を識別するように、コンピュータビジョンシステムまたはコンピュータビジョンシステムの機能を含むことができる。前記オブジェクトは、交通信号、道路の境界、他の車両、歩行者及び／または障害物等を含むことができる。コンピュータビジョンシステムは、オブジェクト識別アルゴリズム、ビデオトラッキング及びその他のコンピュータビジョン技術を使うことができる。幾つかの実施形態においては、コンピュータビジョンシステムは、環境地図を描き、オブジェクトを追跡し、オブジェクトの速度を見積もることができる。感知モジュール３０２は、さらに、例えば、レーダー及び／またはＬＩＤＡＲ等のようなその他のセンサーから提供されたその他のセンターデータに基づき、オブジェクトを検出することができる。
【００３５】
各々のオブジェクトに対して、予測モジュール３０３は、オブジェクトがこの状況においてどう振舞うかを予測する。予測は、地図／ルート情報３１１と交通ルール３１２に基づき、運転環境をその時刻で感知した感知データに従って実行される。例えば、オブジェクトは、反対方向の車両であり、かつ目下の運転環境は、交差点を含むなら、予測モジュール３０３は、車両が真っすぐに前へ移動するか、または曲がるかを予測する。感知データは、交差点に交通信号がないと表しているなら、予測モジュール３０３は、車両は、交差点に進入する前に完全停車する必要があるかもしれないと予測する。感知データは、車両が左折専用車線または右折専用車線にあると表しているなら、予測モジュール３０３は、車両が左折または右折する可能性がより大きいと予測する。
【００３６】
各々のオブジェクトに対して、決定モジュール３０４は、オブジェクトをどう処置するかの決定を下す。例えば、特定のオブジェクト（例えば、交差するルートの中のもう一つの車両）及びオブジェクトを記述する元データ（例えば、速度、方向、曲がる角度）に対して、決定モジュール３０４は、如何にしてオブジェクトと遭遇するか（例えば、追い越し、譲り、停止、通過）を決定する。決定モジュール３０４は、永続的記憶装置に記憶されている、例えば交通ルールまたは運転ルール３１２のようなルール集に従ってこれらの決定を下すことができる。
【００３７】
ルーティングモジュール３０７は、起点から目的地までの一つまたは複数のルートまたは経路を提供するように配置される。スタート位置から目的地の位置までの所与の行程に対して、例えば、ユーザーから受け取った所与の行程に対して、ルーティングモジュール３０７は、ルートと地図情報３１１を獲得し、スタート位置から目的地の位置に到達するまでの全ての可能なルートまたは経路を決める。ルーティングモジュール３０７は、決まった、スタート位置から目的地の位置に到達するまでの各ルートに対して、地形図形式の参考線を生成することができる。参考線は、例えばその他の車両、障害物または交通状況の如何なる邪魔も受けない理想なルートまたは経路を指す。すなわち、道路にその他の車両、歩行者または障害物がないなら、ＡＤＶは、精確でまたはぴったりと参考線に従うべきである。そして、地形図は、決定モジュール３０４及び／または計画モジュール３０５に提供される。決定モジュール３０４及び／または計画モジュール３０５は、例えば、定位モジュール３０１からの交通状況、感知モジュール３０２によって感知された運転環境、及び予測モジュール３０３によって予測された交通状況等のような、その他のモジュールによって提供されたその他のデータを考慮して、最適なルートの中から一つのルートを選択して修正するように、全ての可能なルートを検査する。その時刻における特定の運転環境に従って、ＡＤＶをコントロールするための実際ルートまたは経路は、ルーティングモジュール３０７によって提供された参考線と接近することも、異なることもできる。
【００３８】
感知されたオブジェクトの中の各々に対する決定に基づき、計画モジュール３０５は、ルーティングモジュール３０７の提供した参考線をベースに、自動運転車のためにルートまたは経路及び運転パラメータ（例えば、距離、速度及び／または曲がる角度）を計画する。言い換えれば、所与のオブジェクトに対して、決定モジュール３０４は、当該オブジェクトに対して何をするかを決定し、計画モジュール３０５は、どうやってそれをするかを決める。例えば、所与のオブジェクトに対して、決定モジュール３０４は、前記オブジェクトを通過すると決定し、計画モジュール３０５は、前記オブジェクトの左側から通過するか、または右側から通過するかを決める。車両３００が次の移動サイクル（例えば、次のルート／経路セグメント）でどのように移動するかに関する情報を含む計画と制御データは、計画モジュール３０５によって生成される。例えば、計画と制御データは、車両３００が１時間３０マイル（ｍｐｈ）の速度で１０メートルを移動してから、２５ｍｐｈの速度へ右側車線に変更すると指示する。
【００３９】
計画と制御データに基づき、制御モジュール３０６は、計画と制御データによって限定されたルートまたは経路に従って、適切な命令または信号を車両制御システム１１１に送信することを通じて、自動運転車を制御し運転する。経路またはルートに沿って異なる時刻において適切な車両設置または運転パラメータ（例えば、アクセル、ブレーキと操縦命令）を使用し、車両をルートまたは経路の第１の地点から第２の地点まで運転できるように、前記計画と制御データは、十分の情報を含む。
【００４０】
一つの実施形態において、計画段階は、多数の計画サイクル（走行サイクルとも呼ばれる）の中で実行され、例えば、各時間間隔が１００ミリ秒（ｍｓ）のサイクルの中で実行される。計画サイクルまたは走行サイクルの中の各々に対して、計画と制御データに基づいて一つまたは複数の制御命令を発行する。すなわち、各々の１００ｍｓに対して、計画モジュール３０５は、次のルートセグメントまたは経路セグメントを計画する。代替できるように、計画モジュール３０５は、具体的な速度、方向及び／または曲がる角度等を規定できる。一つの実施形態において、計画モジュール３０５は、次の予定時間間隔（例えば、５秒）のためにルートセグメントまたは経路セグメントを計画する。各計画サイクルに対して、計画モジュール３０５は、前のサイクルで計画した目標位置に基づき、目下のサイクル（例えば、次の５秒）に使用される目標位置を計画する。そして、制御モジュール３０６は、目下のサイクルの計画と制御データに基づき、一つまたは複数の制御命令（例えば、アクセル、ブレーキ、曲がる制御命令）を生成する。
【００４１】
決定モジュール３０４と計画モジュール３０５は、集積モジュールとして集積されることができることに注意すべきである。自動運転車の運転経路を決めるように、決定モジュール３０４／計画モジュール３０５は、ナビゲーションシステムまたはナビゲーションシステムの機能を含むことができる。例えば、自動運転車がしっかりと感知した障害物を避けながら、大体最終目的地に到達するような、車線に基づく経路に沿って進むように、ナビゲーションシステムは、一連の速度と進行方向を決めることができる。目的地は、ユーザーインターフェースシステム１１３を経由して行われたユーザーの入力に従って設定することができる。ナビゲーションシステムは、自動運転車が運行していると同時に、動的に運転経路を更新できる。自動運転車の運転経路を決めるために、ナビゲーションシステムは、ＧＰＳシステムからのデータと、一つまたは複数の地図のデータとを合併することができる。
【００４２】
一つの実施形態により、ＬＩＤＡＲ画像が自動運転に利用可能になる前に、例えば障害物の絶対位置を決定し、障害物を廻るナビゲーションの経路を計画するために用いられる前に、座標変換器３０８は、ＬＩＤＡＲ装置によって捕捉されたＬＩＤＡＲ画像をローカル座標系（たとえば、ＬＩＤＡＲ座標系などの相対座標系）からグローバル座標系（たとえば、ＧＰＳ座標系などの絶対座標系）に転換または変換するように配置される。座標変換器３０８は、感知モジュール３０２の一部として実装することができる。ＬＩＤＡＲ画像が障害物を捉える場合、障害物の座標または位置は、ＬＩＤＡＲ装置の取り付け位置に相対する相対的な位置である。この座標は、自動運転に使用できない。ＧＰＳ座標などのグローバル座標または絶対座標に変換する必要がある。
【００４３】
一つの実施形態において、座標変換器３０８は、ＬＩＤＡＲ装置によって捕捉された多数のＬＩＤＡＲ画像に基づいて、ＬＩＤＡＲキャリブレーションシステム（例えば、ＬＩＤＡＲキャリブレーションシステム１２５）によって訓練され、キャリブレートされ、最適化されるとともに、座標変換器３０８が最良の方式で運行されるまでそのパラメータの調整が繰り返される。この最適化はオフラインで実行されてもよく、あるいは代替できるように、自動運転の期間中にＬＩＤＡＲ画像を収集して運転統計データ３１３の一部として記憶してもよい。ＬＩＤＡＲキャリブレーションモジュール３０９は、選択できるように、座標変換器３０８を動的かつ周期的にキャリブレーすることができる。
【００４４】
一つの実施形態において、座標変換器３０８は、Ｑ関数とも呼ばれる四元数関数によって実現または表現されても良い。数学において、四元数は、複素数を拡張するデジタルシステムである。そして、それらは３次元（３Ｄ）空間の力学に適している。四元数の特徴は、２つの四元数の乗算が非可換となることである。四元数は、三次元空間内の二つの有向直線の商として定義され、或いは同等的に、二つのベクトルの商として定義される。四元数は、通常、ａ＋ｂ＊ｉ＋ｃ＊ｊ  ＋ｄ＊ｋの形式で表され、ここで、ａ、ｂ、ｃ、およびｄは、実数であり、ｉ、ｊ、およびｋは、基本的な四元数の単位である。四元数は、純粋数学と応用数学の両方に応用され、特に３Ｄコンピュータグラフィックス、コンピュータビジョン、結晶構造解析などの３次元回転に関わる計算に応用される。例えば、自動運転空間内の対象物の位置を決定するとき、ｉは前／後方向ベクトル（例えば、進行方向）を表し、ｊは左／右方向ベクトル（例えば、ロール角）を表し、ｋは特定の位置の上／下ベクトル（例えば、ピッチ角）を表すことができる。
【００４５】
図４は、一つの実施形態によるＬＩＤＡＲキャリブレーションシステムを示すブロック図である。ＬＩＤＡＲキャリブレーションモジュール４００は、図１のＬＩＤＡＲキャリブレーションシステム１２５または図３ＡのＬＩＤＡＲキャリブレーションモジュール３０９の一部分となるように実装されても良い。図４を参考し、一つの実施形態において、ＬＩＤＡＲキャリブレーションモジュール４００は、ＬＩＤＡＲデータ収集器４０１、感知モジュール４０２、座標変換器または機能４０３、パラメータ最適化器４０４、反射図生成器４０５、及び重なりサイズ計算器４０６を含む。これらのモジュール４０１〜４０６のうちの幾つかまたはすべては、より少ないモジュールに集積されても良いことに留意されたい。ＬＩＤＡＲデータ収集器４０１は、図１のデータ収集器１２１の一部として実装することができる。感知モジュール４０２は、感知モジュール３０２の一部として実装することができる。ＬＩＤＡＲデータ収集器４０１は、ＡＤＶが所定の運転環境の周りにおいて運転されるときに、ＡＤＶのＬＩＤＡＲ装置によって捕捉されたＬＩＤＡＲ画像を受信するように構成され、運転環境は、ＬＩＤＡＲ装置によって捕捉され得る静的障害物を含む。ＬＩＤＡＲ画像は、ＬＩＤＡＲ画像４１１の一部として永久記憶装置に格納することができる。ＬＩＤＡＲ画像の少なくとも幾つかまたはすべては、ある時間間隔（例えば、５秒）の異なる時点で障害物をその中に採集する。
【００４６】
上述のように、ＡＤＶの動作は、サイクル（例えば、計画サイクル）の形で実行される。各サイクルは、約１００ミリ秒（又は、ｍｓ）秒続く。ＬＩＤＡＲデータは、ＬＩＤＡＲスキャン中に１００ｍｓ間継続的に収集される。その後、一つの実施形態において、１００ｍｓのＬＩＤＡＲデータを使用してＬＩＤＡＲ画像が形成される。したがって、１００ｍｓごとに一つのＬＩＤＡＲ画像が形成される。通常、ＬＩＤＡＲは、１秒間に５から２０サイクル回転できる。座標変換器をキャリブレートするために、５分間のＬＩＤＡＲデータ、すなわち５×６０×１０＝３０００個のＬＩＤＡＲ画像を使用することができる。
【００４７】
一つの実施形態において、ＬＩＤＡＲ画像４１１の各々について、感知モジュール４０２は、ＬＩＤＡＲ画像に対して感知プロセスを実行することによってＬＩＤＡＲ画像によって捕捉された障害物を判別および識別することができる。ＬＩＤＡＲ装置の位置に相対する障害物の位置が決定される。障害物のこの位置は、ローカル座標系（例えば、ＬＩＤＡＲ座標空間）における相対位置と呼ばれる。所与のパラメータを有する座標変換器４０３を呼び出すことによって、ＬＩＤＡＲ画像に関連するＧＰＳデータを使用して障害物の位置をローカル／相対座標空間からグローバル／絶対座標空間に転換または変換する。全てのＬＩＤＡＲ画像が座標変換器を用いて変換されると、反射図生成器４０５は、変換されたＬＩＤＡＲ画像に基づいてＬＩＤＡＲ反射図を動的に生成するように配置される。その後、動的ＬＩＤＡＲ反射図を参考ＬＩＤＡＲ反射図４１４（たとえば、基準反射図３１４）と比較を行うことによって、両者の間の差異（または類似性）を決定する。動的ＬＩＤＡＲ反射図は、動的ＬＩＤＡＲ反射図４１３の一部として維持および格納することができる。座標変換器４０３の少なくとも１つのパラメータを調整することにより、以上の操作を繰り返し行う。異なるパラメータの組４１２を使用すると、ＬＩＤＡＲ画像によって捕捉された障害物の位置が座標変換後に異なる場合がある。
【００４８】
一つの実施形態において、ＬＩＤＡＲ画像によって表される障害物の一致性を測定する１つの方法は、座標変換後にＬＩＤＡＲ画像によって捕捉された障害物の位置の重なりを決定することである。変換されたＬＩＤＡＲ画像を併合することによって、動的ＬＩＤＡＲ反射図を生成して、ＬＩＤＡＲ画像によって採集した障害物をまとめて表す。動的ＬＩＤＡＲ反射図に現れる単一の障害物を、参照ＬＩＤＡＲ反射図に現れる単一の障害物４１４と比較することができる。既知のパラメータの組を有する既知の座標変換器４０３を使用して、参考ＬＩＤＡＲ反射図４１４を生成する。参考ＬＩＤＡＲ反射図４１４は、特定の車両または特定の種類の車両の座標変換器をキャリブレートするためのゴールドスタンダードとして使用することができる。
【００４９】
一つの実施形態において、動的反射図と参考反射図の間の差異を計測する１つの方法は、重なりサイズ計算器４０６によって、２つのＬＩＤＡＲ反射図からの２つの障害物が互いに重なり合う領域のサイズを計測することによって、差異を表すことである。重なり領域が比較的に大きい場合、２つのＬＩＤＡＲ反射図が類似しているかまたは互いに近いと見なされる。重なり領域のサイズが所定の閾値（例えば、障害物が全領域に占める特定の比率）を超えるまで、座標変換器４０３の少なくとも１つのパラメータを調整することにより、以上のキャリブレーションプロセスを繰り返し行う。代替できるように、反復回数が所定の閾値を超えるまで、キャリブレーションプロセスを繰り返して実行する。この時、最大の重なりサイズをもたらす座標変換器４０３のパラメータの組は、最適なパラメータの組と見なされる。一つの実施形態において、座標変換器４０３は、４元数関数によって表され、４元数関数のパラメータは、勾配降下法を使って最適化される。
【００５０】
ここで図５を参照する。この例では、ある時間間隔において収集されたＬＩＤＡＲデータに基づいて、ＬＩＤＡＲ画像５０１〜ＬＩＤＡＲ画像５０４が採集され形成される。上述したように、１００ｍｓ毎に１つのＬＩＤＡＲ画像が形成されていれば、ＬＩＤＡＲ画像５０１〜ＬＩＤＡＲ画像５０４は、５分間の時間間隔における３０００個のＬＩＤＡＲ画像を表すことができる。ＬＩＤＡＲ画像の少なくとも幾つかは、障害物５１１〜障害物５１４のような採集された障害物を含む。感知された場合、ＬＩＤＡＲ画像のそれぞれは、特に短い時間間隔における時に、或いは障害物が静的な障害物（動かない障害物）である時に、同じまたは似ている位置の場所において障害物を採集するはずである。
【００５１】
所与のパラメータの組で配置された座標変換器を使用して座標変換した後、障害物５１１〜障害物５１４の幾つかの位置は、座標変換器の異なるパラメータ設定のためにシフトされる可能性がある。ＬＩＤＡＲ画像内の障害物５１１〜障害物５１４の重なりを比較し測定することによって、最良の座標変換器のためのパラメータの組を決定することができる。この方法の背後にある基本原理は、座標変換器が最適であるならば、ＬＩＤＡＲ画像５０１〜ＬＩＤＡＲ画像５０４の障害物５１１〜障害物５１４の位置が一致するはずであり、すなわち、その位置は、同じかほぼ同じであるはずである。最大数の、重なり合う障害物を有するＬＩＤＡＲ画像を生成した座標変換器のパラメータの組は、最適パラメータの組と見なされる。
【００５２】
一つの実施形態において、座標変換器４０３は、パラメータ候補組４１２を使用してＬＩＤＡＲ画像５０１〜５０４を変換または転換することによって、変換された１組のＬＩＤＡＲ画像を生成する。その後、例えば、変換されたライダー画像を積み重ねるまたは重ね合わせることによって、変換されたＬＩＤＡＲ画像を単一の変換されたＬＩＤＡＲ画像５２０に併合する。次に、併合されたＬＩＤＡＲ画像５２０に基づいて、動的ＬＩＤＡＲ反射図５３０を生成し、さらにパラメータの組４１２を最適化する目的で、動的ＬＩＤＡＲ反射図５３０と参考ＬＩＤＡＲ反射図４１４とを比較する。
【００５３】
一つの実施形態において、ＬＩＤＡＲ画像によって表される障害物の一致性（例えば、障害物の重なり領域のサイズ）が所定の閾値を超えるまで、各反復において異なるパラメータの組を用いて座標変換器の最適化を繰り返して実行する。代替できるように、反復回数が所定の閾値に達するまで最適化を繰り返して実行し、そしてすべてのパラメータの中で障害物の最大の重なり領域をもたらすパラメータの組を最適なパラメータの組として選択する。
【００５４】
図６は、一つの実施形態による、ＬＩＤＡＲキャリブレーションのプロセスを示すフローチャート図である。プロセス６００は、ソフトウェア、ハードウェアまたはその組み合わせを含むことができる処理ロジックによって実行することができる。例えば、プロセス６００は、ＬＩＤＡＲキャリブレーションモジュール４００を通じて実行することができる。図６に示すように、操作６０１において、ＡＤＶが予定の運転環境内で運転されるとき、処理ロジックは、ＡＤＶのＬＩＤＡＲ装置によって採集された１組のＬＩＤＡＲ画像を受信する。操作６０２において、処理ロジックは、パラメータの組を配置された座標変換器を使用して、各々のＬＩＤＡＲ画像をローカル座標系からグローバル座標系に変換する。操作６０３において、処理ロジックは、変換されたＬＩＤＡＲ画像の少なくとも一部に基づいて動的にＬＩＤＡＲ反射図を生成する。操作６０４において、第１のＬＩＤＡＲ反射図と、参考図としての第２のＬＩＤＡＲ反射図との間の差異に基づいて、座標変換器の１つまたは複数のパラメータを調整することによって座標変換器をキャリブレートする。既知のパラメータの組を有するＬＩＤＡＲ装置を使用して、第２のＬＩＤＡＲ反射図を生成する。そのあと、キャリブレートされた座標変換器を、リアルタイムでＬＩＤＡＲデータを処理するためにＡＤＶにアップロードすることができる。
【００５５】
図７は、もう一つの実施形態による、ＬＩＤＡＲキャリブレーションのプロセスを示すフローチャート図である。プロセス７００は、ソフトウェア、ハードウェアまたはその組み合わせを含むことができる処理ロジックによって実行することができる。例えば、プロセス７００は、ＬＩＤＡＲキャリブレーションモジュール４００を通じて実行することができる。図７に示すように、操作７０１において、パラメータの組を配置された座標変換器を使用して、１組のＬＩＤＡＲ画像をローカル座標空間からグローバル座標空間に変換する。操作７０２において、変換されたＬＩＤＡＲ画像に基づいて第１のＬＩＤＡＲ反射図を生成する。一つの実施形態において、第１のＬＩＤＡＲ反射図を生成する前に、変換されたＬＩＤＡＲ画像を単一のＬＩＤＡＲ画像に併合しても良く、そして単一の併合されたＬＩＤＡＲ画像に基づいて第１のＬＩＤＡＲ反射図を生成する。
【００５６】
操作７０３において、第１のＬＩＤＡＲ反射図と、参考ＬＩＤＡＲ反射図としての第２のＬＩＤＡＲ反射図とを比較することによって、第１のＬＩＤＡＲ反射図と第２のＬＩＤＡＲ反射図に現われる障害物の重なりのサイズを確定する。操作７０４において、処理ロジックは、重なりのサイズが所与の閾値より大きいかどうかを判定する。もし、そうであれば、動作７０７において、座標変換器の上記パラメータの組を最適パラメータの組として選択する。そうでなければ、動作７０５において、反復回数が所定の閾値を超えているかどうかを判定する。そうであれば、動作７０７において、最大の重なり領域をもたらす座標変換器のパラメータの組を最適パラメータの組として選択する。そうでなければ、動作７０６において、パラメータの中の少なくとも１つを調整し、上記の操作を繰り返し実行する。
【００５７】
前記文章で示され、説明された部材の中の幾つかまたは全部は、ソフトウェア、ハードウェアまたはその組み合わせとして実装することができることに注意すべきである。例えば、この種類の部材は、永続的な記憶装置にインストールされ、かつ記憶されるソフトウェアとして実装することができる。当該ソフトウェアは、プロセッサー（図示せず）を通じてメモリにロードし、メモリの中で本願を貫いて説明したプロセスまたは操作を実行する。代替できるように、この種類の部材は、専用ハードウェア（例えば、集積回路（例えば、専用集積回路またはＡＳＩＣ）、デジタルシグナルプロセッサー（ＤＳＰ）または現場でプログラム可能なゲートアレイ（ＦＰＧＡ））にプログラムされたまたは埋め込まれた実行可能なコードとして実装することができる。当該実行可能なコードは、アプリケーションからの対応する駆動プログラム及び／またはオペレーティングシステムを通じてアクセスすることができる。さらに、この種類の部材は、ソフトウェアが一つまたは複数の特定の命令でアクセスできる命令集の一部分となるように、プロセッサーまたはプロセッサーのコアの中の特定のハードウェアロジックとして実装することができる。
【００５８】
図８は、本願の一つの実施形態と共に使用されるデータ処理システムの例示を示すブロック図である。例えば、システム１５００は、図１の感知と計画システム１１０またはサーバー１０３〜１０４の中の任意の一つのような、前記のプロセスまたは方法を実行する前記の任意のデータ処理システムの中の任意の一つを表すことができる。システム１５００は、多数の異なる部材を含むことができる。これらの部材は、集積回路（ＩＣ）、集積回路の一部分、独立な電子装置、または回路基板（例えば、コンピュータシステムのマザーボードまたはアドインカード）に用いられるその他のモジュールとして実装することができ、またはその他の方式でコンピュータシステムのシャーシに組み入れられる部材として実装することができる。
【００５９】
システム１５００の趣旨は、コンピュータシステムの複数の部材の高レベルの様子を示すことにあることに注意すべきである。幾つかの実施形態においては、付加的部材を有することができ、また、他の実施形態においては、図示部材の異なる配置を有することができる。システム１５００は、デスクトップコンピュータ、ラップトップコンピューター、タブレットコンピュータ、サーバー、携帯電話、メディアプレーヤー、パーソナルデジタルアシスタント（ＰＤＡ）、スマートウォッチ、パーソナルコミュニケータ、ゲーム装置、ネットワークルーターまたはハブ、ワイヤレスアクセスポイント（ＡＰ）またはリピーター、セットトップボックスまたはこれらの組み合わせを表すことができる。さらに、シングルの機器またはシステムしか示されていないが、用語「機器」または「システム」は、本願で検討した任意の一つまたは複数の方法を実行するように、単独的にまたは共同的に一つ（または複数の）命令集を実行する機器またはシステムの任意の集まりであると理解されるべきである。
【００６０】
一つの実施形態において、システム１５００は、バスまたはインターコネクト１５１０と通じて連結されるプロセッサー１５０１、メモリ１５０３及び装置１５０５〜１５０８を含む。プロセッサー１５０１は、シングルのプロセッサーコアまたは複数のプロセッサーコアを含むシングルのプロセッサーまたは複数のプロセッサーを表すことができる。プロセッサー１５０１は、一つまたは複数の、例えばマイクロプロセッサー、中央処理装置（ＣＰＵ）などのような汎用プロセッサーを表すことができる。より具体的に、プロセッサー１５０１は、複合命令セットコンピューティング（ＣＩＳＣ）マイクロプロセッサー、縮小命令セットコンピューティング（ＲＩＳＣ）マイクロプロセッサー、超長命令語（ＶＬＩＷ）マイクロプロセッサー、またはその他の命令集を実行するプロセッサー、または命令集の組み合わせを実行するプロセッサーであっても良い。プロセッサー１５０１は、例えば、専用集積回路（ＡＳＩＣ）、移動体またはベースバンドプロセッサー、現場でプログラム可能なゲートアレイ（ＦＰＧＡ））、デジタルシグナルプロセッサー（ＤＳＰ）、ネットワークプロセッサー、グラフィックスプロセッサー、通信プロセッサー、暗号化プロセッサー、コプロセッサー、組み込みプロセッサー、または命令を処理できる任意のその他のタイプのロジックのような、一つまたは複数の専用プロセッサーであっても良い。
【００６１】
プロセッサー１５０１（低電力マルチコアプロセッサーソケットであっても良く、例えば、超低電圧プロセッサー）は、前記システムの各種部材との通信の主プロセッサーユニットと中央ハブとして振舞うことができる。この種類のプロセッサーは、システムオンチップＩ（ＳｏＣ）として実装することができる。プロセッサー１５０１は、本願で議論した操作とプロセスを実行するための命令を実行するように配置される。システム１５００は、ディスプレイコントローラ、図形プロセッサー及び／またはディスプレイ装置を含む、オプションの図形サブシステム１５０４と通信する図形インターフェースをさらに含むことができる。
【００６２】
プロセッサー１５０１は、メモリ１５０３と通信することができる。一つの実施形態において、メモリ１５０３は、複数のメモリ装置によって規定の量のシステムメモリを提供するように実装されることができる。メモリ１５０３は、例えば、ランダムアクセスメモリ（ＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、スタティックＲＡＭ（ＳＲＡＭ）、またはその他のタイプのメモリ装置のような、一つまたは複数の揮発性ストレージ（またはメモリ）装置を含むことができる。メモリ１５０３は、プロセッサー１５０１またはその他の任意の装置によって実行する命令シーケンスを含む情報を保存することができる。例えば、各種のオペレーティングシステム、デバイスドライバ、ファームウェア（例えば、入出力基本システムまたはＢＩＯＳ）、および／またはアプリケーションの実行可能なコード及び／またはデータは、メモリ１５０３にロードされ、プロセッサー１５０１に実行されることができる。オペレーティングシステムは、任意タイプのオペレーティングシステムであっても良く、例えば、ロボットオペレーティングシステム（ＲＯＳ）、Ｍｉｃｒｏｓｏｆｔ(R)のＷｉｎｄｏｗｓ(R)オペレーティングシステム、ＡｐｐｌｅのＭａｃＯＳ(R)／ｉＯＳ(R)、Ｇｏｏｇｌｅ(R)のＡｎｄｒｏｉｄ(R)、ＬＩＮＵＸ、ＵＮＩＸ、その他のリアルタイムまたは組み込みオペレーティングシステムであっても良い。
【００６３】
システム１５００は、例えば、オプションのネットワークインターフェース装置１５０５、オプションの入力装置１５０６、及びその他のオプションのＩＯ装置１５０７を含む装置１５０５〜１５０８のようなＩＯ装置を更に含むことができる。ネットワークインターフェース１５０５は、無線トランシーバ及び／またはネットワークインターフェースカード（ＮＩＣ）を含むことができる。前記無線トランシーバは、ＷＩＦＩトランシーバ、赤外トランシーバ、ブルートゥーストランシーバ、ＷｉＭａｘトランシーバ、無線移動体電話トランシーバ、衛星トランシーバ（例えば、グローバル・ポジショニング・システム（ＧＰＳ））、またはその他の無線周波数（ＲＦ）トランシーバまたはそれらの組み合わせであっても良い。ＮＩＣは、イーサネットカードであっても良い。
【００６４】
入力装置１５０６は、マウス、タッチパッド、タッチセンシティブ画面（表示装置１５０４と一体に集積されて）、ポインター装置（例えば、スタイラスペン）、および／またはキーボード（例えば物理的キーボード、またはタッチセンシティブ画面の一部分として表示される仮想キーボード）を含むことができる。例えば、入力装置１５０６は、タッチパネルに接続するタッチパネルコントローラを含むことができる。タッチパネルとタッチパネルコントローラは、例えば、複数の種類のタッチセンシティブ技術（キャパシタンス、抵抗、赤外線および表面音波技術を含むが、これらに限定されない）を使用することができ、またはその他の類似するセンサーアレイまたはタッチパネルと接触する一つまたは複数の点を決めるために用いられるその他のデバイスを使用し、接触、移動または中断を検出することができる。
【００６５】
ＩＯ装置１５０７は、オーディオ装置を含むことができる。オーディオ装置は、例えば、音声識別、音声複製、デジタル記録及び／または電話機能等の音の機能のサポートを促進するために、スピーカー及び／またはマイクロホンを含むことができる。その他のＩＯ装置１５０７は、ユニバーサル・シリアル・バス（ＵＳＢ）ポート、パラレルポート、シリアルポート、プリンタ、ネットワークインターフェース、バスブリッジ（例えばＰＣＩ−ＰＣＩブリッジ）、センサー（例えば、加速度計運動センサー、ジャイロ、磁力計、光センサー、コンパス、近接センサー等）またはその組み合わせを更に含むことができる。装置１５０７は、画像処理サブシステム（例えば、カメラ）を更に含むことができる。当該画像処理サブシステムは、例えば、電荷結合素子（ＣＣＤ）または相補型金属酸化物半導体（ＣＭＯＳ）光センサーのような、カメラ機能（例えば、写真やビデオクリップを記録する）を促進するために使用される光センサーを含むことができる。幾つかのセンサーは、センサーハブ（図示せず）を経由してインターコネクト１５１０に接続しても良く、例えば、キーバードまたは熱センサーのようなその他の装置は、システム１５００の具体的な配置または設計に従って埋め込み式コントローサ（図示せず）によってコントロールされても良い。
【００６６】
データ、アプリケーション、一つまたは複数のオペレーティングシステム等の情報に対する永続的な保存を提供するために、大容量記憶装置（図示せず）は、プロセッサー１５０１に接続しても良い。各種の実施形態において、より薄くより軽いシステム設計を実現し、システム応答性を改善するために、この種の大容量記憶装置は、ソリッドステートドライブ（ＳＳＤ）によって実装しても良い。しかし、その他の実施形態において、大容量記憶装置は、主にハードディスクドライブ（ＨＤＤ）を使用して実装し、それに加えて容量の比較的に小さいＳＳＤ記憶装置をＳＳＤキャッシとして使用し、これによって電源が切られたイベントにおいて文脈状態及びその他のこの種類の情報の非揮発性保存を実現し、システムの活動が再び起動する時に素早い電源投入を実現する。なお、フラッシュメモリ装置は、例えば、シリアル・ペリフェラル・インタフェース（ＳＰＩ）を経由してプロセッサー５０１に接続しても良い。この種類のフラッシュメモリ装置は、前記システムのＢＩＯＳ及びその他のファームウェアを含むシステムソフトウェアの非揮発性保存を提供する。
【００６７】
記憶装置１５０８は、本願で記述した一つまたは複数の方法または機能を具体的に表現する一つまたは複数の命令集またはソフトウェア（例えば、モジュール、ユニットまたはロジック１５２８）を記憶する、コンピュータのアクセス可能な記憶メディア１５０９（機械可読メディア、コンピュータ可読メディアとも呼ばれる）を含むことができる。処理モジュール／ユニット／ロジック１５２８は、例えば計画モジュール３０５、制御モジュール３０６、または上述したＬＩＤＡＲキャリブレーションモジュール又はシステムのような、前記部材の中の任意の一つを表すことができる。処理モジュール／ユニット／ロジック１５２８は、データ処理システム１５００、メモリ１５０３とプロセッサー１５０１によって実行されている期間において、完全にまたは少なくとも部分的にメモリ１５０３及び／またはプロセッサー１５０１の中に駐留することができ、データ処理システム１５００、メモリ１５０３とプロセッサー１５０１もコンピュータのアクセス可能な記憶メディアを構成する。処理モジュール／ユニット／ロジック１５２８は、ネットワークを通じて、ネットワークインターフェース装置１５０５を経由して送信と受信を行うことができる。
【００６８】
コンピュータ可読メディア１５０９は、前記で説明した幾つかのソフトウェア機能を永続的に記憶するためにも使用される。コンピュータ可読メディア１５０９は、例示的な実施形態においてはシングルのメディアとして示されているが、用語「コンピュータ可読メディア」は、前記一つまたは複数の命令集を記憶するシングルのメディアまたは複数のメディア（例えば、集中式または分布式データベース及び／または関連するキャッシュとサーバー）を含むと理解すべきである。用語「コンピュータ可読メディア」は、機器によって実行され、かつ本願の任意の一つまたは複数の方法を当該機器に実行させる命令集を、記憶するまたはエンコードすることができる任意のメディアを含むと理解すべきである。故に、用語「コンピュータ可読メディア」は、ソリッド・ステート・メモリ、光メディアと磁気メディア、または任意のその他の非一時的な機械可読メディアを含むが、これらに限定されないと理解すべきである。
【００６９】
本願で説明する処理モジュール／ユニット／ロジック１５２８、部材及びその他の特徴は、独立なハードウェア部材として実装しても良く、ハードウェア部材（例えば、ＡＳＩＣＳ、ＦＰＧＡ、ＤＳＰまたは類似の装置）の機能の中に集積しても良い。さらに、処理モジュール／ユニット／ロジック１５２８は、ハードウェア装置の中のファームウェアまたは機能回路として実装しても良い。なお、処理モジュール／ユニット／ロジック１５２８は、ハードウェア装置とソフトウェア部材との任意の組み合わせとして実装しても良い。
【００７０】
システム１５００は、データ処理システムの各種の部材を有するように示されているが、部材が互いに接続する任意の特定のアーキテクチャまたは方式を表すことではないことに注意すべきである。これは、この種類の細部は、本願の実施形態と密接な関係がないからである。より少ない部材またはより多い部材を有するネットワークコンピュータ、ハンドヘルドコンピュータ、携帯電話、サーバー、および／または他のデータ処理システムは、本願の実施形態と一緒に使用しても良いと認識すべきである。
【００７１】
前述の詳細な説明の中の一部分は、コンピュータメモリ内のデータビットに対する演算のアルゴリズムおよび記号表現に従って提示した。これらのアルゴリズム記述および表現は、データ処理領域の当業者が、仕事の本質を最も有効的に同じ領域の当業者に伝えるように、使用する方式である。本願において、アルゴリズムは、予期の結果をもたらす、自己矛盾のない操作のシーケンスであると一般的に認識される。これらの操作は、物理量に対して物理操縦を行う必要がある操作であることを指す。
【００７２】
これらのすべての用語と類似の用語は、適切な物理量と関連し、これらの量に応用されるのみの便宜上の標識であることをしっかりと忘れずにすべきである。以上の議論においてその他の方式で明確的に表明している時以外に、本願全体において、用語（例えば付属の特許請求の範囲の中で説明する用語）を利用して行った討論は、コンピュータシステムまたは類似の電子計算装置の動作と処理を指す。前記コンピュータシステムまたは類似の電子計算装置は、コンピュータシステムのレジスターとメモリの中の、物理（電子）量として表されているデータを操縦し、前記データを、コンピュータシステムのメモリまたはレジスターまたはその他のこの種類の情報の記憶装置、転送またはディスプレイ装置の中の、類似的に物理量として表されているその他のデータへ変換する。
【００７３】
本願の実施形態は、本願文章の中の操作を実行するために用いられる設備にも関わる。この種のコンピュータプログラムは、非一時的なコンピュータ可読メディアの中に記憶される。機械可読メディアは、機器（例えば、コンピュータ）可読な形式で情報を記憶する任意の機構を含む。例えば、機械可読（例えば、コンピュータ可読）メディアは、機器（例えば、コンピュータ）可読な記憶メディア（例えば、リードオンリーメモリ（「ＲＯＭ」）、ランダムアクセスメモリ（ＲＡＭ）、磁気ディスク記憶メディア、光記憶メティア、フラッシュメモリ装置）を含む。
【００７４】
前記図面の中で説明されたプロセスまたは方法は、ハードウェア（例えば、回路、専用ロジックなど）、ソフトウェア（例えば、非一時性コンピュータ読み取りメディアに具現して）またはその組み合わせを含む処理ロジックによって実行しても良い。前記プロセスまたは方法は、上記の文章おいて幾つかの順序操作によって説明されているが、前記操作の中の幾つかは異なる順序で実行しても良いと理解すべきである。さらに、幾つかの操作は、順序で実行されるのではなく、並列的に実行されても良い。
【００７５】
本願の実施形態は、何らかの特定のプログラミング言語を参考にして説明されているのではない。説明した本願の実施形態の教えは、複数のプログラミング言語を使って実装することができると認識すべきである。
【００７６】
以上の明細書において、本願の具体的で例示性のある実施形態を参考にして、本願の実施形態に対して説明を行った。添付する特許の請求範囲の中で論述した本願のより広範な精神と範囲を逸脱しない限り、本発明に対して各種の修正をすることができる。故に、制限性の意味ではなく、説明性の意味で本明細書と図面を理解すべきである。
【図１】
2020060553.tif 000003
【図２】
2020060553.tif 000004
【図３Ａ】
2020060553.tif 000005
【図３Ｂ】
2020060553.tif 000006
【図４】
2020060553.tif 000007
【図５】
2020060553.tif 000008
【図６】
2020060553.tif 000009
【図７】
2020060553.tif 000010
【図８】
2020060553.tif 000011
【手続補正書】
【提出日】令和1年8月29日(2019.8.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
自動運転のための光検出と測距ＬＩＤＡＲ装置のコンピュータ実装の方法であって、
自動運転車車両ＡＤＶのＬＩＤＡＲ装置によって異なる時点で採集したＬＩＤＡＲポイントクラウドデータを表す１組のＬＩＤＡＲ画像を受信することと、
各々のＬＩＤＡＲ画像について、座標変換器を使用して前記ＬＩＤＡＲ画像をローカル座標系からグローバル座標系に変換することと、
変換されたＬＩＤＡＲ画像の少なくとも一部に基づいて第１のＬＩＤＡＲ反射図を生成することと、
前記第１のＬＩＤＡＲ反射図と、参考ＬＩＤＡＲ反射図としての第２のＬＩＤＡＲ反射図との間の差異に基づいて、座標変換器の１つまたは複数のパラメータを調整することによって前記座標変換器をキャリブレートし、キャリブレートされた座標変換器は、自動運転期間中にリアルタイムで後続のＬＩＤＡＲ画像を処理するために用いられることとを含む、コンピュータ実装の方法。
【請求項２】
前記ＡＤＶが所定の運転環境で走行しているときに、前記ＬＩＤＡＲポイントクラウドデータを採集し、既知のパラメータの組を有するＬＩＤＡＲ装置によって採集された１組のＬＩＤＡＲポイントクラウドデータに基づいて、前記第２のＬＩＤＡＲ反射図を生成する、請求項１に記載の方法。
【請求項３】
各々の前記ＬＩＤＡＲ画像に対して感知処理を実行することによって、前記ＬＩＤＡＲ画像によって採集された障害物を識別し、
前記第１のＬＩＤＡＲ反射図に現れる第１の障害物の第１の位置と、前記第２のＬＩＤＡＲ反射図に現れる第２の障害物の第２の位置とを比較することを更に含む、請求項１に記載の方法。
【請求項４】
前記第１の障害物の第１の位置と前記第２の障害物の第２の位置との間の差異に基づいて、前記座標変換器の１つまたは複数のパラメータを調整する、請求項３に記載の方法。
【請求項５】
前記第１の障害物の第１の位置と前記第２の障害物の第２の位置との間の差異が所定の閾値を下回るまで、前記座標変換器の１つまたは複数のパラメータを調整し、前記第１の障害物の第１の位置と前記第２の障害物の第２の位置を比較することによって、前記座標変換器に対するキャリブレートを繰り返し実行することを更に含む、請求項４に記載の方法。
【請求項６】
前記第１の障害物と前記第２の障害物の重ね領域のサイズを確定することを更に含む、請求項３に記載の方法。
【請求項７】
前記重ね領域のサイズが所定の閾値以上になるまで、前記座標変換器の１つまたは複数のパラメータを調整し、前記重ね領域のサイズを確定することによって、前記座標変換器に対するキャリブレートを繰り返し実行することを更に含む、請求項６に記載の方法。
【請求項８】
前記座標変換器は、四元数関数を含む、請求項１に記載の方法。
【請求項９】
勾配降下法を使って、前記座標変換器に対する最適化を実行する、請求項１に記載の方法。
【請求項１０】
指令を記憶している非一時性機械可読メディアであって、
前記指令は、プロセッサーによって実行されるときに、前記プロセッサーを、操作を実行するようにさせ、前記操作は、
自動運転車車両ＡＤＶの光検出と測距ＬＩＤＡＲ装置によって異なる時点で採集したＬＩＤＡＲポイントクラウドデータを表す１組のＬＩＤＡＲ画像を受信することと、
各々のＬＩＤＡＲ画像について、座標変換器を使用して前記ＬＩＤＡＲ画像をローカル座標系からグローバル座標系に変換することと、
変換されたＬＩＤＡＲ画像の少なくとも一部に基づいて第１のＬＩＤＡＲ反射図を生成することと、
前記第１のＬＩＤＡＲ反射図と、参考ＬＩＤＡＲ反射図としての第２のＬＩＤＡＲ反射図との間の差異に基づいて、前記座標変換器の１つまたは複数のパラメータを調整することによって前記座標変換器をキャリブレートし、キャリブレートされた座標変換器は、自動運転期間中にリアルタイムで後続のＬＩＤＡＲ画像を処理するために用いられることと
を含む、非一時性機械可読メディア。
【請求項１１】
前記ＡＤＶが所定の運転環境で走行しているときに、前記ＬＩＤＡＲポイントクラウドデータを採集し、既知のパラメータの組を有するＬＩＤＡＲ装置によって採集された１組のＬＩＤＡＲポイントクラウドデータに基づいて、前記第２のＬＩＤＡＲ反射図を生成する、請求項１０に記載の機械可読メディア。
【請求項１２】
前記操作は、各々の前記ＬＩＤＡＲ画像に対して感知処理を実行することによって、前記ＬＩＤＡＲ画像によって採集された障害物を識別し、
前記第１のＬＩＤＡＲ反射図に現れる第１の障害物の第１の位置と、前記第２のＬＩＤＡＲ反射図に現れる第２の障害物の第２の位置とを比較することを更に含む、請求項１０に記載の機械可読メディア。
【請求項１３】
前記第１の障害物の第１の位置と前記第２の障害物の第２の位置との間の差異に基づいて、前記座標変換器の１つまたは複数のパラメータを調整する、請求項１２に記載の機械可読メディア。
【請求項１４】
前記操作は、前記第１の障害物の第１の位置と前記第２の障害物の第２の位置との間の差異が所定の閾値を下回るまで、前記座標変換器の１つまたは複数のパラメータを調整し、前記第１の障害物の第１の位置と前記第２の障害物の第２の位置を比較することによって、前記座標変換器に対するキャリブレートを繰り返し実行することを更に含む、請求項１３に記載の機械可読メディア。
【請求項１５】
前記操作は、前記第１の障害物と前記第２の障害物の重ね領域のサイズを確定することを更に含む、請求項１２に記載の機械可読メディア。
【請求項１６】
前記操作は、前記重ね領域のサイズが所定の閾値以上になるまで、前記座標変換器の１つまたは複数のパラメータを調整し、重ね領域のサイズを確定することによって、前記座標変換器に対するキャリブレートを繰り返し実行することを更に含む、請求項１５に記載の機械可読メディア。
【請求項１７】
プロセッサーと、前記プロセッサーに接続され、命令を記憶するメモリとを含むデータ処理システムであって、
前記命令は、プロセッサーによって実行されるときに、前記プロセッサーを、操作を実行するようにさせ、
前記操作は、
自動運転車ＡＤＶの光検出と測距ＬＩＤＡＲ装置によって異なる時点で採集したＬＩＤＡＲポイントクラウドデータを表す１組のＬＩＤＡＲ画像を受信することと、
各々のＬＩＤＡＲ画像について、座標変換器を使用して前記ＬＩＤＡＲ画像をローカル座標系からグローバル座標系に変換することと、
変換されたＬＩＤＡＲ画像の少なくとも一部に基づいて第１のＬＩＤＡＲ反射図を生成することと、
前記第１のＬＩＤＡＲ反射図と、参考ＬＩＤＡＲ反射図としての第２のＬＩＤＡＲ反射図との間の差異に基づいて、座標変換器の１つまたは複数のパラメータを調整することによって前記座標変換器をキャリブレートし、キャリブレートされた座標変換器は、自動運転期間中にリアルタイムで後続のＬＩＤＡＲ画像を処理するために用いられることとを含む、データ処理システム。
【請求項１８】
前記ＡＤＶが所定の運転環境で走行しているときに、前記ＬＩＤＡＲポイントクラウドデータを採集し、既知のパラメータの組を有するＬＩＤＡＲ装置によって採集された１組のＬＩＤＡＲポイントクラウドデータに基づいて、前記第２のＬＩＤＡＲ反射図を生成する、請求項１７に記載のシステム。
【請求項１９】
前記操作は、各々の前記ＬＩＤＡＲ画像に対して感知処理を実行することによって、前記ＬＩＤＡＲ画像によって採集された障害物を識別し、
前記第１のＬＩＤＡＲ反射図に現れる第１の障害物の第１の位置と、前記第２のＬＩＤＡＲ反射図に現れる第２の障害物の第２の位置とを比較することを更に含む、請求項１７に記載のシステム。
【請求項２０】
前記第１の障害物の第１の位置と前記第２の障害物の第２の位置との間の差異に基づいて、前記座標変換器の１つまたは複数のパラメータを調整する、請求項１９に記載のシステム。
【請求項２１】
前記操作は、前記第１の障害物の第１の位置と前記第２の障害物の第２の位置との間の差異が所定の閾値を下回るまで、前記座標変換器の１つまたは複数のパラメータを調整し、前記第１の障害物の第１の位置と前記第２の障害物の第２の位置を比較することによって、前記座標変換器に対するキャリブレートを繰り返し実行することを更に含む、請求項２０に記載のシステム。
【請求項２２】
前記操作は、前記第１の障害物と前記第２の障害物の重ね領域のサイズを確定することを更に含む、請求項１９に記載のシステム。
【請求項２３】
前記操作は、前記重ね領域のサイズが所定の閾値以上になるまで、前記座標変換器の１つまたは複数のパラメータを調整し、前記重ね領域のサイズを確定することによって、前記座標変換器に対するキャリブレートを繰り返し実行することを更に含む、請求項２２に記載のシステム。
【請求項２４】
コンピュータプログラムであって、
前記コンピュータプログラムがプロセッサにより実行されると、請求項１〜９のいずれか一項に記載の方法を実現させるコンピュータプログラム。
【外国語明細書】
2020060553000001.pdf