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