(57)【要約】【課題】差し迫った衝突を回避するように車両を制御できる、信頼性が高く、独立した衝突回避システムを提供する。【解決手段】自律可能車両１０に使用される衝突回避システム１００は、捕捉された道路の画像フレーム１０６を連続的に受信して、車両１０の前方方向の運転可能な空間を決定することができる。システム１００は、各々の画像フレーム１０６について、画像フレーム１０６の個々の領域が走行可能空間を表しているか否かを決定することができる。システムは１０６、広範囲の訓練データを使用して生成された、畳み込みニューラルネットワーク等の機械学習画像認識アルゴリズムを使用して、これを行うことができる。かかる技術を使用して、システムは、走行可能空間又は非走行可能空間に対応しているとして、画像フレームの領域にラベル付けすることができる。【選択図】図１
2019008796.tif 000002
【特許請求の範囲】
【請求項１】
自律可能車両であって、
前記自律可能車両の前方方向の画像フレームを捕捉するためのカメラを含む、複数のセンサーと、
前記自律可能車両を制御するための車両制御システムであって、（ｉ）前記複数のセンサーからセンサー入力を受信し、（ｉｉ）前記センサー入力に基づいて、車両制御信号を生成するように構成されたシステムと、
前記車両制御システムと独立して動作する衝突回避システムであって、
前記カメラから画像フレームを受信するステップ、
前記受信画像フレームに対して画像分析を行って、走行可能空間又は非走行可能空間を表しているとして、前記画像フレームの領域にラベル付けするステップ、
車両データの少なくとも一部に基づいて、前記自律可能車両が、前記受信画像フレームに表されている、非走行可能空間領域に衝突する可能性があるか否かを判定するステップ、及び
前記自律可能車両が、前記受信画像に表されている非走行可能空間領域に衝突する可能性があると判定した場合、衝突回避信号を生成するステップであって、前記衝突回避信号によって、前記自律可能車両が、前記非走行可能空間領域に衝突するのを回避させる、ステップ
を実行するように構成されたシステムと、
を備えたことを特徴とする車両。
【請求項２】
前記受信画像フレームの画像分析を行うステップが、機械学習画像認識モデルを使用して、前記画像フレームに表されている走行可能空間領域又は非走行可能空間領域を特定することを特徴とする、請求項１記載の自律可能車両。
【請求項３】
前記機械学習画像認識モデルが、畳み込みニューラルネットワークであることを特徴とする、請求項２記載の自律可能車両。
【請求項４】
前記機械学習画像認識モデルが、訓練画像フレームを含む、訓練データを使用して生成されることを特徴とする、請求項２記載の自律可能車両。
【請求項５】
前記訓練データが、センサーデータを更に含み、各々の訓練画像フレームが、該フレームと同時に捕捉された、対応するセンサーデータのセットに関連付けられていることを特徴とする、請求項４記載の自律可能車両。
【請求項６】
前記センサーデータが、ＬＩＤＡＲ測定結果を含むことを特徴とする、請求項５記載の自律可能車両。
【請求項７】
前記機械学習モデルが、管理者から受信した監督入力に基づいて生成され、前記監督入力が、訓練画像フレームの部分を、走行可能空間又は非走行可能空間を表しているとして特定することを特徴とする、請求項４記載の自律可能車両。
【請求項８】
前記受信画像フレームに対して画像分析を行うステップが、
前記画像フレームの特定の領域について、前記特定の領域が走行可能空間を表す対応確率を決定するステップと、
前記走行可能空間を表す対応確率が第１の閾値を超える場合、走行可能空間を表しているとして、前記特定の領域にラベル付けするステップと、
を含んでいることを特徴とする、請求項１記載の自律可能車両。
【請求項９】
前記受信画像フレームに対して画像分析を行うステップが、前記走行可能空間を表す対応確率が第２の閾値未満である場合、非走行可能空間を表しているとして、前記特定の領域にラベル付けするステップを更に備えたことを特徴とする、請求項８記載の自律可能車両。
【請求項１０】
前記画像分析が画素単位で行われることを特徴とする、請求項８記載の自律可能車両。
【請求項１１】
前記車両データが、前記自律可能車両の方向ベクトル、速度、及び加速度を含んでいることを特徴とする、請求項１記載の自律可能車両。
【請求項１２】
前記自律可能車両が、前記受信画像フレームに表されている、非走行可能空間領域に衝突する可能性があるか否かを判定するステップが、
前記自律可能車両に対する相対位置、及び前記自律可能車両からの距離を含む、前記非走行可能空間領域の空間パラメータを決定するステップと、
前記非走行可能空間領域の前記空間パラメータに基づいて、前記非走行可能空間領域に衝突する確率を決定するステップと、
を含むことを特徴とする、請求項１記載の自律可能車両。
【請求項１３】
前記非走行可能空間領域の前記空間パラメータが、移動方向及び移動速度を更に含むことを特徴とする、請求項１２記載の自律可能車両。
【請求項１４】
前記衝突回避信号が、前記車両制御システムによって生成された、前記車両制御信号をオーバーライドすることを特徴とする、請求項１記載の自律可能車両。
【請求項１５】
前記衝突回避信号が、前記自律可能車両に、１つ以上のブレーキを作動させることを特徴とする、請求項１記載の自律可能車両。
【請求項１６】
前記衝突回避システム及び前記車両制御システムが、共有記憶資源及び少なくとも１つの共有プロセッサを含む、共有ハードウェア資源のセットを利用することを特徴とする、請求項１記載の自律可能車両。
【請求項１７】
前記衝突回避システム及び前記車両制御システムが、個別のハードウェア資源のセットを利用することを特徴とする、請求項１記載の自律可能車両。
【請求項１８】
前記衝突回避信号が、前記車両制御システムによって生成された又は前記車両のオペレータから受信した、他の車両制御信号をオーバーライドすることを特徴とする、請求項１７記載の自律可能車両。
【請求項１９】
車両上の衝突回避システムであって、
１つ以上のプロセッサと、
前記１つ以上のプロセッサによって実行されると、前記衝突回避システムに、
前記車両のカメラから画像フレームを受信させ、
前記受信画像フレームに対して画像分析を行って、走行可能空間又は非走行可能空間を表しているとして、前記画像フレームの領域にラベル付けさせ、
車両データの少なくとも一部に基づいて、前記自律可能車両が、前記受信画像フレームに表されている、非走行可能空間領域に衝突する可能性があるか否かを判定させ、
前記自律可能車両が、前記受信画像に表されている非走行可能空間領域に衝突する可能性があると判定した場合、衝突回避信号を生成させ、前記衝突回避信号によって、前記自律可能車両が、前記非走行可能空間領域に衝突するのを回避させる、
命令を記憶する１つ以上の記憶資源と、
を備えたことを特徴とするシステム。
【請求項２０】
車両上の衝突回避システムを動作させる、コンピュータに実装された方法であって、
前記車両のカメラから画像フレームを受信するステップと、
前記受信画像フレームに対して画像分析を行って、走行可能空間又は非走行可能空間を表しているとして、前記画像フレームの領域にラベル付けするステップと、
車両データの少なくとも一部に基づいて、前記自律可能車両が、前記受信画像フレームに表されている、非走行可能空間領域に衝突する可能性があるか否かを判定するステップと、
前記自律可能車両が、前記受信画像に表されている非走行可能空間領域に衝突する可能性があると判定した場合、衝突回避信号を生成するステップであって、衝突回避信号によって、前記自律可能車両が、前記非走行可能空間領域に衝突するのを回避させる、ステップと、
を備えたことを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、自律可能車両用の衝突回避システムに関するものである。
【背景技術】
【０００２】
自律車両とは、人間の運転者をセンサーやコンピュータに実装した知能や、センサー、その他の自動化技術に置換した車両を意味する。既存の技術において、自律車両は、高速道路等の道路上において、別の車両との走行を容易に処理することができる。しかし、特定の環境及び気象条件が、特定のセンサー及び自律走行システムの性能に悪影響を及ぼす可能性があり、自律車両に対し課題が突き付けられる可能性がある。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本明細書に記載のように、自律可能車両（略して「車両」）は、自律、半自律、又はマニュアルモードで動作することができる。自律又は半自律動作モードにおいて、車両の制御システムは、人間のオペレータ入力なしで、又は限定された入力で車両を操作することができる。例えば、制御システムは、スロットルを作動させて車両を加速させたり、車両を操縦したり、車両のブレーキを作動させたり、車両の補助機能を作動（例えば、ハザードライトを作動）させたりすることができる。これ等の動作モードにおいて、制御システムは、センサーアレイからセンサー出力を受信し、車両を操作するための車両制御信号を生成する。センサーアレイは、光検出・測距（ＬＩＤＡＲ）センサー、１つ以上のカメラ、レーダーセンサー、ソナーセンサー等を含むことができる。センサーアレイのセンサーによって、制御システムが道路上の障害物、車両、歩行者、サイクリスト等を検出することができる。制御システムは、センサーアレイからのセンサー出力に基づいて、例えば、車両を操縦及び減速して、車両の衝突を回避することができる。
【０００４】
しかし、制御システムは、複数のセンサーからのセンサー出力に基づいて、制御信号を生成するため、個々のセンサーによって伝達される、相反する情報に起因する誤りの影響を受け易い。例えば、センサーアレイのカメラが、道路上のサイクリストを検出することができるが、ＬＩＤＡＲセンサーが、そのサイクリストを検出することが困難な場合があり得る。カメラ及びＬＩＤＡＲセンサーからの出力に応答して、制御システムは、道路上にサイクリストが存在していないと誤って判定することがあり得る。加えて、特定のセンサーは、特定の条件下において、一貫性のない出力又は信頼できない出力を有する可能性がある。例えば、ＬＩＤＡＲセンサーは、悪天候（例えば、雨、雪）下において、不正確になる、又は一貫性がなくなる可能性がある。更に、制御システムそのものが、ハードウェア又はソフトウェア障害によって機能停止する可能性がある。従って、差し迫った衝突を回避するように車両を制御できる、信頼性が高く、独立した衝突回避システムが必要とされている。
【課題を解決するための手段】
【０００５】
本明細書の実施例は、衝突回避システムを備えた自律可能車両を提供するものであって、衝突回避システムは、自律可能車両の他のシステム（例えば、自律車両の動作を制御する車両制御システム）と独立して動作することができるシステムである。衝突回避システムは、車両の前方に向いた１つ以上のカメラによって捕捉された画像フレームの分析に基づいて、ブレーキを作動させることができる。特に、衝突回避システムは、画像フレームを分析して、車両の前方方向における走行可能空間領域を特定してラベル付けすることができる。走行可能空間として特定されなかった画像フレームの領域は、車両が衝突してはいけない非走行可能空間として処理することができる。加えて、画像フレームを分析することによって、衝突回避システムは、非走行可能空間領域の各々から車両までの距離を算出することができる。このようにして、衝突回避システムは、車両の速度及び軌道に基づいて、車両が特定された非走行可能空間領域に衝突する尤度を決定することができる。この決定に基づいて、他の車両システム（例えば、自律動作のための車両制御システム）又は車両のオペレータ入力（例えば、ブレーキペダル入力）とは無関係に、衝突回避システムは、衝突を回避又は衝突の影響を最小限に抑制するために、衝突回避信号を生成することができる。衝突回避信号によって、車両は１つ以上のブレーキ、操縦、及び／又はスロットル調整等を行い、衝突を回避又は衝突の影響を最小限に抑制することができる。
【０００６】
本明細書において、「走行可能空間」という用語は、車両が他の物体に衝突することなく安全に移動できる路面（例えば、舗装路面）を意味することができる。本明細書において、「非走行可能空間」という用語は、車両が安全に移動することができない領域を意味することができる。非走行可能空間には、歩道、縁石、他の車両、歩行者、サイクリスト、壁、道路の中央分離帯、瓦礫等が含まれる。特定の実施例において、非舗装路面が、衝突回避システムによって、非走行可能空間領域として特定され得る。
【０００７】
実施形態によれば、衝突回避システムは、画像フレームを分析し、走行可能空間を表しているとして、画像フレームの適切な画素にラベル付けすることによって、車両の前方方向において、走行可能空間領域を決定することができる。衝突回避システムは、走行可能空間を示す画像の領域（例えば、画素又は画素群）を特定するように訓練された機械学習モデルを使用して、これを行うことができる。一部の実施例において、衝突回避システムは、画像フレームの各々の画素が走行可能空間を表す、対応確率を決定することができる。この確率（例えば、確率が閾値を上回っている又は下回っている）に基づいて、衝突回避システムは、当該画素を走行可能空間としてラベル付けすることができる。ラベル付けされていない画像フレームの領域を特定又は非走行可能空間として処理することができる。衝突回避システムは、非走行可能空間の各々の領域に関連する車両の距離及び方向も決定することができる。
【０００８】
実施形態によれば、訓練データを使用して、機械学習モデルを生成することができる。訓練データは、訓練画像フレームを含むことができる。訓練画像フレームは、車載カメラと同様のカメラによって捕捉することができる。各々の訓練画像フレームの画素に対し、走行可能空間及び／又は非走行可能空間を表しているとして、ラベル付けすることができる。訓練画像フレームのラベル付けは、人間のオペレータの支援の下で、アルゴリズム的に行い、誤り訂正又は分析結果の矛盾を解消することができる。訓練データを使用して、機械学習モデルを生成することができる。画像フレームに表されている走行可能空間を特定する機械学習モデルの精度を向上させるためには、車両が直面し得る種々の道路状況を示す多数の訓練画像フレームを有することが望ましい。
【０００９】
１つ以上のコンピュータによって、機械学習モデルを生成することができ、生成した機械学習モデルに対応するデータを車両に送信することができる。一部の実施例において、車両は無線ネットワーク接続（例えば、セルラー、Ｗｉ−Ｆｉ等）を介して、データを受信することができる。これに加えて又は代えて、車両は、記憶装置（例えば、フラッシュメモリドライブ、ＳＤカード等）を使用して、又は物理的接続（例えば、ＵＳＢ、有線接続等）を介して、データを受信することができる。車両は記憶装置（例えば、フラッシュメモリ）を備えることによって、機械学習モデルに対応するデータを記憶することができる。記憶装置に記憶したデータは、定期的に更新することができる。このように、更新訓練データを用いて機械学習モデルを更新することによって、衝突回避システムの性能を徐々に向上させることができる。
【００１０】
一部の実施例において、機械学習モデルは、畳み込みニューラルネットワーク（ＣＮＮ）とすることができる。ＣＮＮは、複数のパーセプトロン（例えば、人工ニューロン）を含むことができる。パーセプトロンは層状に配置することができる。ＣＮＮには、パーセプトロンの入力層、中間層、及び出力層があり得る。衝突回避システムは、画像フレームに対応するデータをＣＮＮに入力して画像フレームを分析し、その中の走行可能空間を特定することができる。特定の実施形態において、ＣＮＮは、特定の画素について、その特定の画素が、走行可能空間を表している尤度を出力することができる。別の実施例において、ＣＮＮは、特定の画素について、その特定の画素が、走行可能空間であるか否かを示す２進値を出力することができる。
【００１１】
本明細書に記載の実施例において、衝突回避システムは、車両の速度、軌道、及び加速度に基づいて、非走行可能空間（例えば、障害物、縁石、歩行者等）の領域に衝突する可能性があるか否かを判定することができる。車両の速度、軌道、及び加速度は、車両のシステム（例えば、車両制御システム）又は衝突回避システムによって決定することができる。車両が非走行可能空間領域に衝突する可能性があると判定した場合、衝突回避システムは、車両が非走行可能空間領域に衝突するのを回避させる、衝突回避信号を生成することができる。衝突回避信号はブレーキを作動させることができる。衝突回避システムは、これを、車両制御システム及び／又はオペレータ入力とは独立して行うことができる。換言すれば、衝突回避システムによって生成された衝突回避信号は、車両制御システムの制御出力及び／又はオペレータ入力をオーバーライドして、例えば、車両のブレーキを作動させることができる。
【００１２】
一部の実施例によれば、衝突回避システムは、車両が非走行可能空間領域に衝突する可能性があると判定したとき、車両の他の態様を制御する衝突回避制御信号を生成することができる。例えば、衝突回避システムは、車両の軌道を変更する操縦出力を生成して、非走行可能空間領域に衝突するのを回避することもできる。加えて、衝突回避システムは、スロットル出力及び補助出力（例えば、車両のハザードランプをオンにする）を生成することができる。
【００１３】
特定の実施形態において、衝突回避システムの出力は、制御システムによって生成された車両制御信号をオーバーライドすることができる。例えば、制御システムは、車両を加速するように、車両のスロットルを上げる制御信号を生成することができる。車両が非走行可能空間に衝突する可能性があるという判定に応答して、衝突回避システムは、制御信号をオーバーライド（例えば、スロットルの作動を停止）し、車両のブレーキを作動させる、衝突回避信号を生成することができる。このように、衝突回避システムは、制御システムとは独立して（及び／又は人間のオペレータ入力とは独立して）車両を制御して衝突を回避することができる。
【００１４】
本明細書は、少なくとも操縦、推進力、及び制動が自動化された状態で動作する任意の車両を意味する、自律車両又は自律可能車両に関連した多くの実施例を記載している。自律動作状態で動作している場合、実施例によって、車両制御システムが唯一の車両「運転者」であるように、車両が人又はマニュアル動作入力（アクセル又はブレーキ入力、ハンドル入力）を無視することができる。様々な実施例において説明するように、車両が自律動作状態にあるとき、車両の動作状態を切り替えるための入力、又は安全措置（例えば、緊急ブレーキ）を講じるための入力等、車両が指定された人間の入力に応答することができる場合を除き、車両は人間又はマニュアル動作入力を無視することができる。様々な実施例で説明するように、車両の動作状態を遷移させることができる指定された人間の入力は、車両の動作に使用されないインターフェース（例えば、機械的アクチュエータ）で検出することができる。従って、人間の運転者が自律車両の状態を切り替えることを可能にするインターフェースは、ハンドル、アクセル（例えば、「ガスペダル」）、ブレーキ、又は変速機等の機構とは分離することができる。
【００１５】
本明細書に記載の１つ以上の態様は、コンピューティング装置によって実行される方法、技法、及び措置は、プログラム的に又はコンピュータに実装された方法として実行される。プログラム的とは、コード又はコンピュータ実行可能命令の使用を介することを意味する。プログラム的に実行されるステップは、自動であってもなくてもよい。
【００１６】
本明細書に記載の１つ以上の態様は、プログラムモジュール又はコンポーネントを使用して実行することができる。プログラムモジュール又はコンポーネントは、１つ以上の指定タスク又は機能を実行することができるプログラム、サブルーチン、プログラムの一部、ソフトウェアコンポーネント、又はハードウェアコンポーネントを含むことができる。加えて、モジュール又はコンポーネントは、別のモジュール又はコンポーネントとは独立して、ハードウェアコンポーネント上に存在することができる。あるいは、モジュール又はコンポーネントは、他のモジュール、プログラム、又はマシンの共有要素又はプロセスであってよい。
【００１７】
更に、本明細書に記載の１つ以上の態様は、１つ以上のプロセッサによって実行可能な命令の使用を介して実行することができる。これ等の命令は、コンピュータ可読媒体に担持することができる。以下の図に示す又は説明するマシンは、処理資源及び一部の態様を実行するための命令を担持及び／又は実行するコンピュータ可読媒体の例を示す。特に、一部の実施例に示す多くのマシンは、プロセッサと、データ及び命令を保持する様々な形態のメモリとを備えている。コンピュータ可読媒体の例には、パーソナルコンピュータ又はサーバーのハードドライブ等、固定メモリ記憶媒体が含まれる。コンピュータ記憶媒体の別の例には、ＣＤ又はＤＶＤユニット、フラッシュ又は固体メモリ（多くの携帯電話や民生用電子機器に搭載されている）、及び磁気メモリ等の携帯記憶ユニットが含まれる。コンピュータ、端末、ネットワーク対応デバイス（例えば、携帯電話等のモバイルデバイス）が、プロセッサ、メモリ、及びコンピュータ可読媒体に記憶された命令を利用するマシン及びデバイスの例である。加えて、態様はコンピュータプログラムの形態で実装することができる。
【図面の簡単な説明】
【００１８】
本明細書の開示は、同様の要素には同様の参照番号が付してある添付図面に、限定ではなく例として、示してある。
【図１】本明細書に記載の実施例による、自律可能車両の一部としての例示的な衝突回避システムを示すブロック図。
【図２】本明細書に記載の実施例よる、衝突回避システムの実施形態を含む、例示的な自律可能車両を示す図。
【図３】本明細書に記載の実施例による、訓練画像フレーム及び他の訓練データを受信し処理する、例示的な訓練データ処理システムを示すブロック図。
【図４】本明細書に記載の実施例による、自律可能車両における例示的な衝突回避システムを動作させる、例示的な方法を説明するフローチャート。
【図５】本明細書に記載の実施例による、例示的な訓練データ処理システムを動作させる、例示的な方法を説明するフローチャート。
【図６】本明細書に記載の実施例による、衝突回避システムによって受信され、処理される例示的な画像フレームを示す図。
【図７】本明細書に記載の実施例を実装することができる、コンピュータシステムを示すブロック図。
【発明を実施するための形態】
【００１９】
システムの説明
図１は本明細書に記載の実施例による、自律可能車両の一部としての例示的な衝突回避システムを示すブロック図である。記載の実施例において、自律的に動作することができる車両は、その機能がなければ車両の操作を行うであろう人間の動作を必要とせずに動作することができる。例えば、自動車の文脈において、自律的に駆動する車両は、操縦、加速、シフト、ブレーキ、及び照明要素を動作させることができる。一部の変形例において、自律可能車両は、自律又はマニュアルのいずれかで操作できることも認識する。
【００２０】
図１の実施例において、自律可能車両１０は、車両１０を自律、半自律、又はマニュアル動作モードで動作させる制御システムを備えている。加えて、車両１０は、車両１０の制御システムとは独立して動作する、衝突回避シスシステム１００を備えている。特に、実施例は、車両１０を制御する一次制御信号を受信する、車両インターフェースシステム９０を含むように車両１０を提供する。車両１０は、例えば、マニュアルモード、半自律モード、及び自律モードを含む、複数の動作モードを有することもできる。マニュアル及び半自律動作モードにおいて、車両インターフェースシステム９０は、人間のオペレータ入力８３を、車両１０を動作させる一次制御信号として受信することができる。車両１０の自律及び半自律動作モードにおいて、車両インターフェースシステム９０は、ＡＶ制御システム１８０が出力するコマンド入力８５を受信して、車両１０を動作させることができる。実施例は、車両の１つ以上の動作モードにおいて、衝突回避システム１００が、一次制御信号（オペレータ入力８３、コマンド入力８５等）をオーバーライドするように動作して、車両１０のスロットル、制動、操縦、及び補助機能を独立して制御し、障害物、歩行者、縁石、他の車両等に衝突するのを回避することを実現する。衝突回避システム１００は、車両１０の周囲の空間及び環境を連続的に監視することができ、走行可能空間（例えば、上に何の物体も存在しない舗装道路）の領域を、非走行可能空間（例えば、別の車両、柵、縁石等）の領域から区別することができる。速度、軌道、加速、及び一次制御信号に基づいて、衝突回避システム１００は、衝突回避システム１００が干渉することなく、車両１０が非走行可能空間として決定された領域に衝突する可能性があるか否かを判定することができる。この判定に応じ、衝突回避システム１００が介入し、一次制御信号をオーバーライドし、車両１０のスロットル、操縦、制動、及び補助機能を独立して制御し、衝突を回避することができる。
【００２１】
車両１０は、ＬＩＤＡＲセンサー１３５、レーダーセンサー１４０、ソナー（ＳＯＮＡＲ）センサー１４５、及びカメラ１５０等、複数種類のセンサーを有するセンサーアレイ１３０を備えることができる。センサーアレイ１３０のセンサーを組み合わせて、車両１０を囲む空間及び環境の電子化された知覚を与えることができる。特に、カメラ１５０は、複数のカメラセンサーセット（例えば、ビデオカメラ、立体カメラ対、奥行き知覚カメラ、赤外線カメラ、広角カメラ等）を含み、車両１０を囲む環境を監視することができる。加えて、ＬＩＤＡＲ１３５、レーダー１４０、及びＳＯＮＡＲ１４５は、車両１０の周囲の物体、及び車両１０までの物体のそれぞれの距離を検出することができる。センサーアレイ１３０からの出力である、センサーデータ１３１は、センサーインターフェース１７０によって受信される。センサーインターフェース１７０は、センサーアレイ１３０の各々のセンサーに対し、個別のインターフェース装置を備えることができる。例えば、センサーインターフェース１７０は、ＬＩＤＡＲセンサー１３５に対し、ＬＩＤＡＲインターフェース装置、及びカメラ１５０に対し、カメラインターフェース装置をそれぞれ備えることができる。センサーインターフェース１７０は、受信したセンサーデータ１３１を処理するハードウェア及び／又は他の論理コンポーネントを有することができる。例えば、ＬＩＤＡＲセンサー１３５からＬＩＤＡＲデータを受信する、ＬＩＤＡＲインターフェース装置は、受信したＬＩＤＡＲデータを、ＡＶ制御システム１８０が使用できるフォーマットに変換するための論理及び処理資源（例えば、フィールドプログラマブルゲートアレイ（「ＦＰＧＡ」）、）デジタル信号プロセッサ（「ＤＳＰ」）等）を有することができる。別の例として、カメラ１５０からカメラデータ（例えば、生の画像データ）を受信する、カメラインターフェース装置は、データをＡＶ制御システム１８０が使用するフォーマット（例えば、ＪＰＥＧ又は他の圧縮若しくは非圧縮データフォーマット）に変換することができる。特定の実施形態において、センサーインターフェース１７０は、センサーデータの品質を向上させるための処理を行うことができる。例えば、カメラインターフェース装置は、生の画像データのノイズ低減、露出調整、ガンマ補正、色調整、フォーカス調整、及びその他の処理を行うことができる。処理済みのセンサーデータは、センサーデータ１７１として出力することができる。
【００２２】
１つの実施形態によれば、車両インターフェースシステム９０は、スロットルインターフェース９２、操縦インターフェース９４、ブレーキインターフェース９６、補助インターフェース９８を含む、複数の車両インターフェースを備えるか、又は制御することができる。車両インターフェースの各々は、車両１０の対応するサブシステムを制御する。例えば、スロットルインターフェース９２は、車両１０のエンジンのスロットルを制御して、車両１０を加速させることができる。操縦インターフェース９４は、車両１０のステアリングコラムを制御して、車両１０を操縦することができる。ブレーキインターフェース９６は、車両１０の１つ以上のブレーキを制御して、車両１０減速させる。補助インターフェース９８は、ハザードランプの操作等、車両１０の１つ以上の補助機能を制御する。車両インターフェースシステム９０は、車両１０が正常に動作している間、車両インターフェースを制御する一次制御信号（例えば、オペレータ入力８３、コマンド入力８５等）を受信するコントローラ８４も備えることができる。コントローラ８４は、受信した一次制御信号に基づいて、様々な車両インターフェース９２〜９８を制御することができる。
【００２３】
特定の実施形態において、人間のオペレータが、車両インターフェースシステム９０によって受信される一次制御信号を生成する、マニュアル動作モードで車両１０を動作させることができる。マニュアルモードにおいて、車両インターフェースシステム９０は、人間のオペレータ入力８３を受信して、様々な車両サブシステムインターフェース９２、９４、９６、９８を制御する制御信号１１９を生成する。例えば、車両インターフェースシステム９０のコントローラ８４は、車内のアクセルペダルからスロットル入力を受信することができる。同様に、コントローラ８４は、ハンドルから操縦入力、及びブレーキペダルからブレーキ入力をそれぞれ受信することができる。一部の実施例において、車両インターフェースによって、人間のオペレータ入力８３を直接受信することができる。例えば、スロットルインターフェース９２は、オペレータスロットル入力を直接受信することができ、ブレーキインターフェース９６は、オペレータブレーキ入力を直接受信することができる。
【００２４】
一部の実施例において、車両１０は自律動作モード及び／又は半自律動作モードでも動作させることができる。これ等の動作モードにおいて、ＡＶ制御システム１８０は、車両を動作させる一次制御信号として、車両インターフェースシステム９０によって受信されるコマンド入力を生成することができる。ＡＶ制御システム１８０は、受信した処理済みセンサーデータ１７１に基づいて、コマンド入力８５を生成することができる。コマンド入力８５は、ルート情報８７、及び車両１０の動作状態（例えば、所望の速度、加速等）を指定する、１つ以上の動作パラメータ８９を含むことができる。コントローラ８４は、コマンド入力８５に基づいて、１つ以上の車両インターフェース９２、９４、９６、９８に対する制御信号１１９を生成して、スロットル、操縦、制動、及び補助車両機能を制御する。
【００２５】
１つの実施形態において、ＡＶ制御システム１８０は、半自律動作モードにおいて、車両１０の一部のサブシステムを制御することができる。例えば、ＡＶ制御システム１８０は、車両１０のスロットルサブシステム９１、及びブレーキサブシステム９５を制御するコマンド入力８５を生成することができる。ステアリングサブシステム９３は、車両インターフェースシステム９０に対する、車両１０の人間のオペレータからのオペレータ入力８３によって制御することができる。別の実施形態において、ＡＶ制御システム１８０は、半自律動作モードにおいて、車両１０のすべての動作を制御することができるが、人間のオペレータが、車両１０の進行を監視していて、必要があれば、ＡＶ制御システム１８０からのコマンド入力をオーバーライドすることを示す、オペレータ入力を定期的に必要とし得る。
【００２６】
実施形態によれば、車両１０は、ＡＶ制御システム１８０及び／又は車両１０の人間のオペレータから独立して動作する、衝突回避システム１００を備えることができる。衝突回避システム１００は、車両１０が、その経路上の物体に衝突するのを回避するために、ＡＶ制御システム１８０によって生成されたコマンド入力８５をオーバーライドすることができる。衝突回避システム１００は、車両１０の人間のオペレータからのオペレータ入力８３もオーバーライドすることができる。
【００２７】
一部の実施形態において、衝突回避システム１００は、ＡＶ制御システム１８０と別のハードウェア及びソフトウェアに実装することができる。換言すれば、衝突回避システム１００は、衝突回避システム１００専用のソフトウェア命令を実行する、１つ以上の専用の処理資源（例えば、ＣＰＵ、ＧＰＵ、ＤＳＰ、ＦＰＧＡ、ＡＳＩＣ等）に実装することができる。ソフトウェア命令も、衝突回避システム１００専用のメモリに記憶することができる。このようにして、突回避システム１００は機能的であり、ＡＶ制御システム１８０にハードウェア又はソフトウェア障害が発生したとき、安全の冗長性を提供することができる。別の実施形態において、衝突回避システム１００は、ＡＶ制御システム１８０と共通のハードウェアに実装することができる。例えば、衝突回避システム１００及びＡＶ制御システム１８０は、センサー、処理資源、記憶資源等を共有することができる。このようにして、衝突回避システム１００を車両１０に実装するのに伴う、複雑さ及びコストを低減することができる。これ等の実施形態において、車両１０の処理資源は、衝突回避システム１００の機能に対応する命令を、ＡＶ制御システム１８０に対応する命令に優先して実行することができ、衝突回避システム１００が、ＡＶ制御システム１８０によって生成された制御入力８３を、確実にオーバーライドすることができる。
【００２８】
特定の実施形態において、カメラ１５０及びカメラ１５５は（例えば、毎秒３０画像フレーム、毎秒６０画像フレーム、毎秒１２０画像フレーム等）連続的に画像データを生成する、ビデオカメラ及び／又は立体カメラセットであってよい。カメラ１５０及びカメラ１５５は、車両１０の前方方向の画像フレームを捕捉するように配置することができる。
【００２９】
実施例によれば、衝突回避システム１００は、センサーアレイ１３０のカメラから画像フレーム１５１を受信するカメラインターフェース１０５を有することができる。カメラインターフェース１０５は、追加のカメラ１５５からの画像フレーム１５６も受信することができる。追加のカメラ１５５は、衝突回避システム１００専用の１つ以上のカメラ又はカメラセットであってよい。カメラ１５５は、広角で前方に向いたカメラを含むことができる。カメラ１５５から画像フレーム１５６を受信することによって、センサーアレイ１３０のカメラ１５０（又はセンサアレイ１３０自体）が故障した場合でも、衝突回避システム１００は、車両１０が車両の経路上の物体に衝突するのを回避するように動作することができる。更に、衝突回避システム１００の視野を向上させる（例えば、死角の減少、画角の増大等）ために、カメラ１５５を、カメラ１５０と比較して、異なる位置（例えば、車両１０のフロントバンパー上）に配置することができる。一部の実施形態において、センサーアレイ１３０のカメラ１５０は、衝突回避システム１００に対し、十分な信頼性及び視野を提供することができる。これ等の実施形態において、追加のカメラ１５５は必要ないと考えられ、センサーアレイ１３０の既存のカメラ１５０を組み合わせて使用することによって、衝突回避システム１００を実装するためのコストを低減することができる。
【００３０】
一部の実施例によれば、カメラ１５０及び１５５から画像フレーム１５１及び１５６を受信及び／又は処理するカメラインターフェース１０５は、フィールドプログラマブルゲートアレイ（「ＦＰＧＡ」）又はデジタル信号プロセッサ（「ＤＳＰ」）が備えているような画像処理資源を有することができる。例えば、カメラインターフェース１０５の画像処理資源は、画像フレーム１５１と１５６とを結合する画像処理操作を行うことができる。衝突回避システム１００は、結合された画像フレームの画像分析を行って、安全制御出力を生成することができる。別法として、画像フレーム１５１及び１５６上で個別の画像分析を行って、個別の画像分析結果を照合して安全制御出力を生成することができる。加えて、カメラインターフェース１０５の画像処理資源は、生の画像フレーム１５１及び１５６を処理する画像処理操作を行って、例えば、生の画像フレーム１５１及び１５６の露出、コントラスト、カラーパレットを調整することができる。画像処理資源は、生の画像フレーム１５１及び１５６のフィルター処理、ノイズ低減、及びトリムング又はシフトを実施することもできる。画像処理を行って画質を向上させ、衝突回避システム１００が、カメラ１５０及び１５５によって捕捉された画像フレームの走行可能空間を特定する際における、画像分析性能及び精度を向上させることができる。カメラインターフェース１０５は処理済み画像フレーム１０６を出力することができる。
【００３１】
１つの実施形態において、カメラインターフェース１０５の画像処理資源は、処理済み画像フレーム１０６が、衝突回避システム１００が使用する、機械学習モデルの生成に使用される訓練データの画像フレームにより類似するように、画像フレーム１５１及び１５６の特定の特性を補正することができる。例えば、訓練データの画像フレームは、カラーパレット、色相、露出、及びコントラストに関し、特定の特性を示し得る。カメラインターフェース１０５の画像処理資源は、処理済み画像フレーム１０６が、訓練データの画像フレームと比較して、特性が類似するように画像処理操作を実行することができる。特に、カメラインターフェース１０５の画像処理資源は、色相又はカラーフィルターを適用して、処理済み画像フレーム１０６を生成し、例えば、カメラ１５０及び１５５、及び／又は車両環境の照明条件に起因する影響を最小限に抑制することができる。例えば、カメラインターフェース１０５の画像処理資源は、特定の画像フレーム１５１又は１５６のコントラスト（例えば、平均値又は中央値）が、訓練データの画像フレームのコントラストより高いと判定し得る。これに応じ、カメラインターフェース１０５の画像処理資源は、画像フレーム１０６のコントラストが、訓練データの画像フレームの平均又は中央コントラスト値に近づくように、コントラストを下げて処理済み画像フレーム１０６を生成することができる。このようにして、衝突回避システム１００による、処理済み画像フレーム１０６内の走行可能空間の特定に関する精度及び一貫性を向上させることができる。
【００３２】
実施形態によれば、衝突回避システム１００は、カメラインターフェース１０５から処理済み画像フレーム１０６を受信して分析する、画像分析１１０を含むことができる。様々な態様において、画像分析１１０は、処理済み画像フレーム１０６を分析し、走行可能空間を表しているとして、処理済み画像フレーム１０６の適切な画素にラベル付けすることによって、処理済み画像フレーム１０６に表されている走行可能空間を特定することができる。例えば、車両１０が走行している舗装道路に対応する画素は、画像分析１１０によって、走行可能空間としてラベル付けすることができる。これに反し、処理済み画像フレーム１０６に捕捉された歩行者に対応する画素は、画像分析１１０によって、走行可能空間とはラベル付けされないであろう。一部の実施形態において、画像フレーム１０６に捕捉された歩行者、他の車両、物体、又は障害物は、画像分析１１０によって、非走行可能空間としてラベル付けされるであろう。
【００３３】
一部の実施例において、画像分析１１０は、機械学習モデル１１２を使用して、処理済み画像フレーム１０６を分析することができる。機械学習モデル１１２は、訓練データに基づいて生成され、通信インターフェース（図示せず）を介して車両１０によって受信される。通信インターフェースは、無線接続（例えば、セルラーリンク、Ｗｉ−Ｆｉリンク等）又は物理的相互接続（例えば、ＵＳＢ接続）を介して、機械学習モデル１１２に対応するデータを受信することができる。機械学習モデル１１２に対応するデータは、車両１０の衝突回避システム１００にアクセス可能な１つ以上の記憶装置に記憶することができる。モデル１１２は、更新された訓練データに基づいて、定期的に更新し、車両１０によって受信することができる。このようにして、追加の訓練データが収集されるにつれ、画像分析１１０及び衝突回避システム１００の性能を徐々に向上させることができる。
【００３４】
様々な態様において、訓練データは、訓練画像フレームを含むことができる。訓練画像フレームは、実際の道路状況を表すことができ、カメラ１５０及び１５５と同様のカメラによって捕捉された画像であってよい。例えば、車両群に搭載されたカメラは、車両が現実の状況下で動作するとき、トレーニング画像フレームを捕捉することができる。訓練画像フレームを分析して、訓練画像フレームの走行可能空間を特定することができる。例えば、走行可能空間を表しているとして、訓練画像フレームの適切な画素にラベル付けすることができる。訓練画像フレームの分析は、人間の指導、補正、及び／又は品質検査を受けて、プログラム的に実行することができる。場合により、訓練データは、センサーデータを含むことができる。例えば、各々の訓練画像フレームを、ＬＩＤＡＲセンサーデータのセットに関連付けることができる。ＬＩＤＡＲセンサーデータのセットは、関連付けられた訓練画像フレームが捕捉されたときに測定された、ＬＩＤＡＲ測定結果を示すことができる。ＬＩＤＡＲデータは訓練画像の分析を支援することができる。例えば、ＬＩＤＡＲ測定結果を使用して、走行可能空間してラベル付けすべきではない、訓練画像フレームに表されている物体を特定することができる。
【００３５】
実施形態によれば、モデル１１２は、訓練データを使用して生成された畳み込みニューラルネットワーク（ＣＮＮ）であってよい。ＣＮＮモデル１１２は、複数の層を含むことができ、各々の層は複数の人工ニューロンを含むことができる。ＣＮＮモデル１１２を使用して、画像分析１１０は、処理済み画像フレーム１０６の領域が、走行可能空間を表しているか否かを判定することができる。一部の実施例において、画像分析１１０は、処理済み画像フレーム１０６の特定の領域が、走行可能空間を表している尤度（例えば、信頼スコア）を決定することができる。加えて、画像分析１１０の実施形態に応じ、解像度又は詳細度のレベルが異なる分析を行うことができる。一部の実施形態において、画像分析１１０は、処理済み画像フレーム１０６を分析して、処理済み画像フレーム１０６の個々の画素に対し、走行可能空間を表している尤度を決定することができる。別の実施形態において、画像分析１１０は、より低い解像度又は詳細度で分析を行い、画素の群（例えば、１０画素が連続する群）の走行可能空間を表している尤度を決定することができる。
【００３６】
画像分析１１０は、処理済み画像フレーム１０６に表されている走行可能空間を特定するラベル１１１を生成することができる。一部の実施形態において、ラベル１１１は、画像分析１１０によって、マトリクスデータ構造として出力することができる。ラベル１１１のマトリクスデータ構造における各々の値は、対応する処理済み画像フレーム１０６の画素（又は画素群）のラベルに対応することができる。例えば、３８４０×２１６０画素の解像度を有する処理済み画像フレーム１０６に対し、画像分析１１０によって決定された対応するラベル１１１が、各々が処理済み画像フレーム１０６の対応する画素について決定された走行可能空間のラベルを示す、３８４０×２１６０のデータ値を有するマトリックスデータ構造であり得る。一部の実施形態において、処理済み画像フレーム１０６及び対応するラベル１１１を１つのデータ構造（例えば、多次元配列又はマトリックス）として記憶することができる。
【００３７】
衝突回避システム１００は、処理済み画像フレーム１０６のラベル付けにおいて、補正を行う補正ユニット１１５を有することができる。その際、補正ユニット１１５は、処理済み画像フレーム１０６、及び画像分析１１０によって決定された、対応するラベル１１１の両方を受信することができる。１つの実施形態において、補正ユニット１１５は、複数の処理済み画像フレーム１０６、及びそれに関連付けられたラベルを精査し、処理済み画像フレーム１０６の外れ値ラベルを除去することができる。例えば、１つの特定の処理済み画像フレーム１０６は、走行可能空間としてラベル付けされた別の領域に囲まれた、走行可能空間とラベル付けされていない小領域（例えば、１つの画素、小画素群）を有し得る。かかる場合、補正ユニット１１５は、画像分析１１０によって、走行可能空間とラベル付けされていない（又は非走行可能空間としてラベル付けされた）小領域を外れ値と判定することができ、衝突回避システム１００はこれを無視することができる。かかる外れ値は、画像分析１１０によって検出された、処理済み画像フレーム１０６に表されている道路上の小さい（脅威ではない）物体から生じ得る。もう１つの例として、補正ユニット１１５は、ほぼ同時に捕捉された、複数の処理済み画像フレーム１０６に対して生成されたラベル１１１を比較して、衝突回避システム１００が無視することができる外れ値を特定することができる。外れ値及び他のラベル付け誤りを除去する際、補正ユニット１１５は、補正済みラベル１１６を生成することができる。
【００３８】
実施形態によれば、衝突回避システム１００は、車両１０が関与する前方方向の衝突が起きる寸前であるか否かを判定する、衝突分析１２０を含むことができる。衝突分析１２０は、この判定を、ＡＶ制御データ８６及び車両データ８８を含む、車両１０の現在の軌道、速度、及び制御に関する情報、処理済み画像フレーム１０６、及び／又は補正済みラベル１１６に基づいて、行うことができる。処理済み画像フレーム１０６及び／又は補正済みラベル１１６に基づいて、衝突分析１２０は、処理済み画像フレーム１０６の非走行可能空間の各々の領域の空間パラメータを決定することができる。空間パラメータは、車両１０に対する相対位置、車両１０からの距離、（移動物体の）移動速度、及び（移動物体の）移動方向を含むことができる。衝突が起きる寸前であるという判定に応じ、衝突分析１２０は、コントローラ１２５に対し、衝突パラメータを生成することができる。コントローラは、車両１０の様々なサブシステムを制御する衝突回避制御１２４を生成して、非走行可能空間との衝突を回避するか、かかる衝突の影響を最小限に抑制することができる。衝突回避制御１２４は、スロットル制御１２６、操縦制御１２７、ブレーキ制御１２８、及び補助制御１２９を含むことができる。
【００３９】
自律可能車両の説明
図２は、本明細書に記載の実施例による、衝突回避システムの実施形態を含む、例示的な自律可能車両を示す図である。以下の図２の説明において、図１に関して説明した機能及び例を参照することができる。例えば、図２に示す車両２００は、図１の車両１０であってよい。加えて、図２の衝突回避システム２５０は、図１に示し、同図に関して説明した衝突回避システム１００であってよい。
【００４０】
図２に示す実施例において、車両２００は、半自律及び／又は完全自律動作モードで車両の動作を制御することができる自律車両（ＡＶ）制御システム２１０を備えている。これ等の動作モードにおいて、ＡＶ制御システム２１０は、車両上のセンサーからセンサー出力を受信して、車両の動作の１つ以上の態様を制御する制御信号を生成する。ＡＶ制御システム２１０は、処理資源２１１と記憶資源との組み合わせを用いて実現することができ、１つ以上の汎用ＣＰＵ、専用ＧＰＵ、及びメモリ要素を有することができる。処理資源２１１は、集中型、分散型、及び／又は特定の資源に専用の資源を含むことができる。動作において、ＡＶ制御システム２１０の処理資源２１１は、通常の動作の一部として、モデル、意思決定アルゴリズム、ルーティング及び軌道決定、外部との通信、及び様々な他のプロセスを実行することができる。
【００４１】
車両上のセンサーは、車両の上部に配置されたセンサーアレイ２１５を含むことができる。センサーアレイ２１５は、ＬＩＤＡＲ測定結果を生成するＬＩＤＡＲセンサー２１６、及び画像フレームを捕捉する１つ以上のカメラ２１７を含むことができる。１つ以上のカメラ２１７は、共同して車両２００周囲の３６０°の視点を示す画像フレームを生成することができる。１つ以上のカメラ２１７は、立体カメラ対、ビデオカメラ、赤外線カメラ、及び／又は他の特殊な画像捕捉装置を含むことができる。センサーアレイ２１５は、レーダー、超音波測距センサー等、他の測距センサー又は検出センサーを更に含むことができる。加えて、レーダー、超音波センサー、ソナー、又は他の種類の検出器等の周辺センサーを、車両２００の周囲の適切な位置（例えば、フロントバンパー、バンパーの角、側面フェンダー、ミラー、リアバンパー等）に配置して、センサーアレイ２１５の死角をカバーすることができる。例えば、複数のレーダーセンサー２１８を車両の外周に分散させることができる。前方に向いたカメラ２２０も、車両のフロントバンパーに配置することができる。他のカメラは、車両の外部又はフロントガラス内部に配置することができる。
【００４２】
車両２００は、車両制御サブシステムと呼ばれる、操作機構（又は装置）２０２、２０４、２０６、２０８を備えることができる。車両制御サブシステムは、スロットル制御サブシステム２０２、ステアリング制御サブシステム２０４、制動制御サブシステム２０６、及び補助制御サブシステム２０８を含むことができる。サブシステムは、車両２００の制御インターフェース（例えば、図１のインターフェース９２、９４、９６、及び９８）によって制御することができる。図示の操作機能は単に例示であって、車両２００のこれより多い又は少ない操作機能を、本明細書に記載の実施例の変形に使用することができる。図２の実施例において、操作面は、車両２００の個々の制御システムによって指令又は制御することができる、インターフェースによって示されている。
【００４３】
一部の実施例によれば、処理資源２１１は、１つ以上のプロセッサ、及び／又は車両が自律又は半自律動作する際、図２において制御２１２として示す、連続的に生成され、車両２００の個々の車両制御サブシステム２０２、２０４、２０６、２０８に伝達される制御パラメータを供給するプログラム及びハードウェアインタフェースを含むことができる。従って、例えば、制御２１２は、処理資源２１１（及びＡＶ制御システム２１０）から、それぞれの車両制御インターフェース２０２、２０４、２０６、２０８に伝達することができる。処理資源２１１は、車両に対する１つ以上の軌道を決定した後、制御２１２を介して軌道を実行に移すことができる。軌道は、所与の今後の間隔に関し、１つ以上の可能な軌道を定義することができる。例えば、軌道は、車両の１つ以上の主要な軌道、及び／又はＡＶ制御システム２１０に致命的な障害が発生した場合、車両が実行に移すべきフェールセーフ軌道を含むことができる。
【００４４】
図２の実施例において、車両２００は、車両２００の１つ以上の操作機能を独立して制御する、衝突回避システム２５０を備えている。その際、衝突回避システム２５０は、カメラ２１７及び２２０から画像フレームを連続的に受信することができる。衝突回避システム２５０は、受信画像フレームを分析して、車両２００が非走行可能空間（例えば、別の車両、縁石、歩行者、サイクリスト等）の領域に衝突する可能性があるか否かを判定することができる。かかる判定に応じ、衝突回避システム２５０は、衝突回避制御を生成し、かかる衝突を回避又は最小限に抑制することができる。衝突回避システムによって生成された衝突回避制御は、車両の他の制御システム（例えば、ＡＶ制御システム２１０）又は人間のオペレータ入力とは独立して、車両２００の１つ以上の操作機能を制御することができる。１つの実施形態において、衝突回避システム２５０は、衝突が発生する可能性があると判定した場合、制動制御サブシステム２０６を介し、車両２００のブレーキを独立して作動させることができる。別の実施形態において、衝突回避システム２５０は、ステアリング制御サブシステム２０４を介し、車両２００の操縦を独立して制御し、制動制御サブシステム２０６を介し、車両のブレーキを独立して作動させることができる。加えて、衝突回避システム２５０は、衝突が差し迫っている又は発生しそうであると判定した場合、スロットル制御サブシステム２０２によって受信された制御をオーバーライドして、車両のスロットルを解放することができる。従って、衝突回避システム２５０によって、人間のオペレータ入力及び／又はＡＶ制御システム２１０をオーバーライドすることができる。
【００４５】
衝突回避システム２５０によって実行される機能には、カメラ２１７、２２０から画像フレームを連続的に受信する、受信画像フレームを分析して、画像フレームの各々に表されている走行可能空間を特定する、空間分析を行って、非走行可能空間の各々の領域（例えば、走行可能空間として特定されていない領域）の車両２００からのそれぞれの距離及び方向を決定する、決定した距離及び方向、並びに車両データ（例えば、速度、軌道、加速等）に基づいて、車両２００が非走行可能空間の各々の領域に衝突するそれぞれの確率を決定する、衝突の確率に基づいて、衝突回避制御２５４を決定し、衝突を軽減、最小限に抑制、又は回避することが含まれる。１つ以上の機械学習モデルを適用することによって、受信した各々の画像フレームの走行可能空間を特定することができる。機械学習モデルを使用して、衝突回避システム２５０は、各々の画像フレームの各々の画素（又は各々の画素群）が走行可能空間を表す確率を決定することができる。対応確率が閾値を超える画素は「走行可能空間」としてラベル付けすることができる。逆に、対応確率が閾値未満である画素は、「非走行可能空間」としてラベル付けすることができる。
【００４６】
衝突回避システム２５０は、処理資源２５１と記憶資源２５２との組み合わせを用いて実現することができる。処理資源２５１は、１つ以上の汎用ＣＰＵ、１つ以上の専用ＣＰＵ（例えば、ＧＰＵ）、及び他の局在又は分散された処理資源を含むことができる。記憶資源２５２を使用して、受信画像フレームの分析及び受信画像フレームの各々に表されている走行可能空間及び非走行可能空間の特定に使用される、１つ以上の機械学習モデルに対応するデータを記憶することができる。記憶資源２５２は、受信画像フレームを記憶するキャッシュメモリを更に含むことができる。例えば、受信画像フレームを分析して、キャッシュメモリに記憶することができる。このようにして、衝突回避システム２５０によって、一定期間にわたって受信された複数の画像フレームを必要とする操作（例えば、補正操作）を実行することができる。
【００４７】
一部の実施形態によれば、スロットル２０２、ステアリング２０４、制動２０６、及び補助２０８は、それぞれ衝突回避システム２５０の出力（例えば、衝突回避制御２５４）によって独立して制御することができる。衝突回避制御２５４は、ＡＶ制御システム２１０によって生成された制御（例えば、ＡＶ制御２１２）又は人間のオペレータ入力等、車両制御サブシステム２０２、２０４、２０６、２０８に対する、他のすべての入力をオーバーライドすることができる。このように、衝突回避システム２５０によって差し迫った衝突が検出されない場合、車両２００は、車両２００の人間のオペレータ又はＡＶ制御システム２１０によって制御される。衝突回避システム２５０が差し迫った衝突を検出し、衝突回避制御２５４を生成すると直ちに、車両の動作の１つ以上の態様が、衝突回避システム２５０の出力によって制御される。
【００４８】
１つの実施例において、衝突回避システム２５０が、ＡＶ制御システム２１０に介入してオーバーライドすべきか否かを判定するために、ＡＶ制御システム２１０からリアルタイムデータ及び分析を受信するように構成することができる。例えば、衝突回避システム２５０は、ＡＶ制御システム２１０によって検出された物体や障害物に関するデータ及び情報を受信するように構成することができる。受信したデータ及び情報が、衝突回避システム２５０による分析結果と矛盾する場合（例えば、衝突回避システム２５０が、ＡＶ制御システム２１０が特定しないオブジェクトを差し迫った衝突として検出した場合）、衝突回避システム２５０は、衝突回避制御２５４を生成して、ＡＶ制御システム２１０の出力（例えば、ＡＶ制御２１２）をオーバーライドする決定を下すことができる。他方、ＡＶ制御システムから受信したデータ及び情報が、衝突回避システム２５０による分析結果と一致する場合には、衝突回避システム２５０は、ＡＶ制御システム２１０が、ＡＶ制御２１２を介して、潜在的な衝突を回避するように車両２００を制御することができるように決定することができる。加えて、ＡＶ制御システム２１０から受信したデータは、ＡＶ制御システム２１０の健全性に関するデータを含むことができる。例えば、ＡＶ制御システム２１０が、致命的なソフトウェア又はハードウェア障害を体験することを示すデータを受信すると、衝突回避システム２５０は、車両２００の動作の１つ以上の態様を制御するために介入することができる。
【００４９】
実施形態によれば、ＡＶ制御システム２１０は、（例えば、車両２００のトランク内に示す）処理資源２１１を使用して、衝突回避システム２５０とは分離独立して、実装することができる。同様に、衝突回避システム２５０の処理資源２５１は、ＡＶ制御システム２１０の処理資源とは分離独立した資源を意味することができる。従って、例えば、処理資源２１１及び処理資源２５１は、別々の（ｉ）プログラミング又は論理プラットフォーム及びアーキテクチャ、（ｉｉ）入力センサー（例えば、カメラ）、及び（ｉｉｉ）それぞれのシステム又はユニットによって制御される車両インターフェースを含む、車両２００の他の構成要素と通信するための通信バスを利用することができる。例えば、車両２００のフロントバンパー上のカメラ２２０は、衝突回避システム２５０専用とすることができる。一部の変形例において、ＡＶ制御システム２１０及び衝突回避システム２５０は、別々のハウジング、及び別々の電源バス又は電源を有することができる。このように、ＡＶ制御システム２１０に影響する、すべてのハードウェア又は電源障害を封じ込めることができ、衝突回避システム２５０に影響を及ぼすことはない。
【００５０】
別の実施形態において、ＡＶ制御システム２１０及び衝突回避システム２５０は、物理的な処理資源及び記憶資源を共有することができる。換言すれば、処理資源２１１及び処理資源２５１を、１つ以上の共有物理プロセッサ（例えば、ＣＵＰ、ＧＰＵ等）に実装することができる。それにも関わらず、かかる実施形態において、ＡＶ制御システム２１０及び衝突回避システム２５０の機能を実行する、ソフトウェア命令及びモジュールは、別々に維持され、１つ以上の共有物理プロセッサによって実行することができる。１つの実施例において、１つ以上の共有物理プロセッサは、ＡＶ制御システム２１０の機能に対応するソフトウェア命令を実行するための第１の論理コアセット、及び衝突回避システム２５０の機能に対応するソフトウェア命令を実行するための第２の論理コアセットを実装することができる。このように、ＡＶ制御システム２１０を実行するソフトウェアのソフトウェア又は論理障害は、ＡＶ制御システム２１０そのものの機能に封じ込められ、衝突回避システム２５０の機能には影響を及ぼさない。別の実施例において、ＡＶ制御システム２１０を含む、１つ以上の共有物理プロセッサを利用する、車両２００の他のシステムに対応するソフトウェア命令よりも高い優先レベルで、衝突回避システム２５０に対応するソフトウェア命令を１つ以上の共有物理プロセッサによって実行することができる。これによって、車両２００の移動経路内で検出された物体との潜在的な衝突を回避又は軽減するために、衝突回避システム２５０によって実行される処理（例えば、画像フレームの分析、走行可能及び非走行可能空間の特定、空間分析、方向分析）が、リアルタイムで実行されることを保証することができる。
【００５１】
加えて、車両２００は、衝突回避システム２５０が実行する分析に使用する、１つ以上の機械学習モデルに対応するデータを受信する、１つ以上の通信インターフェース（図２には図示せず）を有することができる。通信インターフェースは、セルラー（例えば、４Ｇ、５Ｇ、ＬＴＥ等）、Ｗｉ−Ｆｉ、及び有線インターフェース（例えば有線データコネクタ）を含むことができる。このように、更なる訓練データに基づいて、機械−機械学習モデルを定期的に更新することができる。
【００５２】
訓練データ処理システムの説明
図３は、本明細書に記載の実施例による、訓練画像フレーム及び他の訓練データを受信し処理する、例示的な訓練データ処理システムを示すブロック図である。以下の図３の説明において、図１〜２に関して説明した機能及び例を参照することができる。例えば、図３の訓練データ処理システム３００と通信する自律可能車両３９０は、図１の自律可能車両１０または図２の自律可能車両２００であってよい。
【００５３】
図３において、訓練データ処理システム３００は、自律可能車両３９０の衝突回避システムが使用して、画像フレームの走行可能空間を特定する、機械学習モデルを生成又は更新するための訓練データ３７６を受信することができる。訓練データ処理システム３００は、訓練画像フレーム３７７、関連するセンサーデータ３７８、及び関連する位置データ３７９を含む、訓練データ３７６を受信するためのデータ収集インターフェース３１０を有することができる。訓練データ３７６は、訓練データ収集車両３７５が移動する際に、訓練画像フレーム３７７、センサーデータ３７８、及び位置データ３７９を連続的に捕捉するための様々なセンサー及びカメラを担持する、複数の訓練データ収集車両３７５から受信することができる。訓練データ収集車両３７５は、訓練データ３７６を使用して生成された機械学習モデルを受信する、自律可能車両３９０が備えているものと同様のセンサー（例えば、カメラ、ＬＩＤＡＲ、レーダー、ソナー、ＧＰＳ等）を備えることができる。捕捉された各々の訓練画像フレーム３７７は、センサーデータ３７８（例えば、ＬＩＤＡＲ測定結果、レーダー測定結果、ソナー測定結果等）のセット、及び位置データ３７９のセット（例えば、ＧＰＳデータ）と関連付けることができる。訓練データ３７６は、セルラーデータネットワーク（例えば、ＬＴＥ、ＨＳＰＡ）等のネットワーク３８０を介し、訓練データ収集車両３７５から訓練データ処理システム３００によって受信することができる。別の実施形態において、訓練データ３７６は、訓練データ収集車両３７５との物理リンク（例えば、シリアルバス接続）を介し、訓練データ処理システム３００によって受信することもできる。訓練データ３７６は、データ記憶媒体（例えば、フラッシュメモリカード）を介し、オペレータ又は管理者によって訓練データ処理システム３００に転送することもできる。
【００５４】
一部の実施例において、訓練データ収集車両３７５は人間の運転者によって操作される。別の実施例において、訓練データ収集車両３７５は、自律的又は半自律的に動作することができる自律可能車両であってよい。更に、訓練データ処理システム３００によって生成された機械学習モデルを受信する自律可能車両３９０は、訓練データ処理システム３００に訓練データ３７６を送信することもできる。実際、より多くの自律可能車両３９０が展開されるにつれて、訓練データ処理システム３００が、より多くの訓練データ３７６を利用することができ、車両の衝突回避システムによって使用される機械学習モデルを向上させることができる。
【００５５】
実施形態によれば、訓練データ処理システム３００は、訓練データ３７６を受信し処理するためのデータ収集インターフェース３１０を有している。データ収集インターフェース３１０は、受信した訓練画像フレーム３７７を前処理するための画像フィルター３１１を含むことができる。画像フィルター３１１は、訓練画像フレーム３７７の色相、色、コントラスト、及び露出の変更を含む、多くの前処理を行い、得られる訓練画像フレーム３７７のかかる特性が、概して一様になるようにすることができる。画像フィルター３１１は、露出過剰、破損、又は使用不能な画像フレーム等、機械学習モデルの訓練には適さない、訓練画像フレーム３７７を検出及びフィルター除去することもできる。
【００５６】
本明細書に記載の実施例において、訓練データ処理システム３００は、フィルタリングされた訓練画像フレーム３７７、並びに関連するセンサーデータ３７８及び位置データ３７９を含む、訓練データ３７６を受信する、監督あり訓練サブシステム３３０を含むことができる。監督あり訓練サブシステム３３０が、監督訓練結果３３１を生成し、それを用いて、訓練データ処理システム３００のモデル発生器３６０が、自律可能車両３９０の衝突回避システムが使用して画像フレームに表されている走行可能空間を特定する、機械学習モデルを生成又は更新することができる。監督訓練結果３３１は、走行可能空間であるとラベル付けされた画像フレームを含むことができる。例えば、各々の画像フレームの各々の領域（例えば、画素、画素群等）は、対応する領域が走行可能空間又は非走行可能空間を表していることを特定する関連ラベルを有することができる。監督訓練結果を生成するために、監督あり訓練サブシステム３３０は、各々が画像フレームの特定の種類の構造物を特定するのに効率的な多数の分析方法を実行することができる。例えば、監督あり訓練サブシステム３３０は、画像フレーム３７７に関連するセンサーデータ３７８に基づいて、訓練画像フレーム３７７の領域にラベル付けする画像分析器（センサーデータ）３３５を含むことができる。３３５による画像分析は、非静止構造物（例えば、歩行者、他の車両等）を特定する際に特に効果的であり得る。監督あり訓練サブシステム３３０は、画像フレーム３７７に関連する位置データ３７９に基づいて、訓練画像フレーム３７７の領域にラベル付けする画像分析器（位置データ）３４０を更に含むことができる。３４０による画像分析は、ロケーションデータベース又はマッピングデータベースに記憶された静止構造物（例えば、歩道、建物、舗装路面）を特定する際に特に効果的であり得る。監督あり訓練サブシステムは、既存の機械学習モデルに基づいて、訓練画像フレームを特定し、ラベル付けする画像分析器（モデル）３４５を更に含むことができる。加えて、監督あり訓練サブシステム３３０は、訓練画像フレーム３７７の領域に対するラベル付け、又は分析器３３５及び３４０によって実行されたラベル付けの補正若しくは補足のためのオペレータ入力を受信する、監督モジュール３５５を更に含むことができる。
【００５７】
特定の実施形態において、画像分析器（センサーデータ）３３５は、訓練画像フレーム３７７に関連するセンサーデータ３７８に基づいて、訓練画像フレーム３７７に、走行可能空間及び／又は非走行可能空間についてのラベル付けを行うことができる。このプロセスの一部として、画像分析器（センサデータ）３３５は、関連するラベルマトリクスを有する画像ファイルとすることができる、ラベル付き画像３３６を生成することができる。訓練データ収集車両３７５によって捕捉された特定の訓練画像フレーム３７７について、画像分析器（センサーデータ）３３５は、その特定の訓練画像フレーム３７７が捕捉されたときに、訓練データ収集車両３７５のセンサーによって得られた、ＬＩＤＡＲ、ソナー、レーダー測定結果を含むことができる、関連するセンサーデータ３７８のセットを分析する。センサーデータ３７８を使用して、画像分析器（センサーデータ）３３５は、訓練画像フレーム３７７に表されている物体を特定し、かかる物体に対応する訓練画像フレーム３７７の領域を非走行可能空間としてラベル付けすることができる。センサーデータ３７８を使用して検出された物体に対応しない訓練画像フレーム３７７の領域は、走行可能な空間としてラベル付けすることができる。画像分析器（センサーデータ）３３５を使用して訓練画像フレームに描画されている歩行者、他の車両、壁、又は道路上を移動している物体を特定することができる。特定の実施例において、画像分析器（センサーデータ）３３５は、画像認識を行って、訓練画像フレーム３７７に表されている路面の種別を判定し、判定結果に従って、ラベル付けすることができる。例えば、画像分析器（センサーデータ）３３５は、歩道（非走行可能空間）と舗装道路（走行可能空間）とを区別することができる。
【００５８】
実施形態によれば、画像分析器（位置データ）３４０は、訓練画像フレーム３７７に関連する位置データ３７９に基づいて、訓練画像フレーム３７７に、走行可能空間及び／又は非走行可能空間についてのラベル付けを行うことができる。画像分析器（センサーデータ）３３５と同様に、画像分析器（位置データ）３４０は、ラベル付き画像３４１を生成することができる。訓練データ収集車両３７５によって捕捉された特定の訓練画像フレーム３７７について、画像分析器（位置データ）３４０は、その特定の訓練画像フレーム３７７が捕捉されたときの訓練データ収集車両３７５の正確な位置を示す、関連位置データセット（例えば、ＧＰＳデータ、ＧＬＯＮＡＳＳデータ等）を分析する。加えて、位置データ３７９は、車両の方位情報を更に含むことができる。方位情報は、訓練データ収集車両３７５のコンパスを使用して、又は訓練データ収集車両３７５の軌道を決定するために経時的に収集された位置データに基づいて、決定することができる。画像分析器（位置データ）３４０は、訓練画像収集車両３７５の正確な位置及び方位を使用して、ロケーション又はマッピングデータベースに照会し、ロケーション又はマッピングデータベースにおいて特定可能な付近の構造物（例えば、舗装路面、歩道、建物、その他の地図化された構造物等）を訓練画像フレーム３７７に示されている構造物と照合することができる。ロケーション又はマッピングデータベースの構造物は、訓練データ収集車両３７５に対する相対位置及び方向に基づいて、訓練画像フレーム３７７の領域に一致させることができる。一例として、訓練データ収集車両３７５の正確な位置及び方位を使用して、画像分析器（位置データ）３４０は、ロケーション又はマッピングデータベースに照会することによって、訓練画像フレーム３７７の領域が、歩道又は壁を表していると判定することができる。かかる判定に応じ、画像分析器（位置データ）３４０は、その訓練画像フレーム３７７の領域を非走行可能空間としてラベル付けすることができる。別の例として、訓練データ収集車両３７５の正確な位置及び方位を使用して、画像分析器（位置データ）３４０は、訓練画像フレーム３７７の別の領域が、舗装路面を表していると判定することができ、それに応じ、その訓練画像フレーム３７７の領域を走行可能空間としてラベル付けすることができる。画像分析器（位置データ）３４０が利用するロケーション又はマッピングデータベースは、訓練データ処理システム３００又は第三者のマッピングサービスによって管理することができる。
【００５９】
実施形態によれば、様々な方法による画像分析及びラベル付けの結果を照合し、合成することができる。図３に示すように、画像分析器（センサーデータ）３３５、画像分析器（位置情報）３４０、画像分析器（モデル）３４５によってそれぞれ生成されたラベル付き画像３３６、３４１、及び３４６は、ラベル照合器３５０によって照合され合成される。前述のように、画像分析の各々の方法は、訓練画像フレーム３７７に表されている特定の種類の構造物の特定に有効であるため、ラベル照合器３５０は、合成の有効性が最大になるように、ラベル付き画像３３６及び３４１を合成することができる。図３に示す例において、画像分析器（センサーデータ）３３５と画像分析器（位置データ）３４０とで異なる画像分析方法が実行される。画像分析器（位置データ）３４０によって実行される分析は、訓練画像フレーム３７７に表されている静止又は地図化された構造物の特定に有効であり得、画像分析器（位置データ）３３５によって実行される分析は、訓練画像フレーム３７７に示されている移動する構造物の特定の有効であり得る。従って、ラベル照合器３５０は、訓練画像フレーム３７７に示されている静止又は地図化された構造物を特定する、画像分析器（位置データ）３４０（ラベル付き画像３４１）の結果から、照合プロセスを開始することができる。次に、ラベル照合器３５０は、画像分析器（センサーデータ）３３５（ラベル付き画像３３６）の結果をオーバーレイして、予備訓練結果３５１を得ることができる。このように、ラベル照合器３５０は、舗装路面（走行可能空間）等の静止又は地図化された構造物の描画から開始することができ、続いて、別の車両等、特定された移動する構造物をオーバーレイして予備訓練結果３５１を得ることができる。一例として、ラベル照合器３５０は、訓練画像フレーム３７７の特定の領域が、走行可能空間（例えば、位置データ３７９を使用して、画像分析器（位置データ）３４０によって特定された舗装道路）を示している、ラベル付き画像３４１から開始することができる。ラベル照合器３５０は、その特定の領域が、非走行可能空間（例えば、センサーデータを使用して、画像分析器（センサーデータ）３３５によって特定された別の車両）を示している、ラベル付き画像３３６を精査することができる。得られた予備訓練結果３５１は、その特定の領域が、舗装道路に対応していても、別の車両に占有されているため、非走行可能空間に対応することを示すであろう。
【００６０】
特定の実施形態において、ラベル照合器３５０は、画像分析器（センサーデータ）３３５及び画像分析器（位置データ）３４０の分析結果を合成する際に、訓練画像フレーム３７７の特定の領域に対応する問題を特定することができる。例えば、ラベル照合器３５０は、訓練画像フレーム３７７の特定の部分に関し、画像分析器（センサーデータ）３３５（ラベル付き画像３３６）による分析結果を、画像分析器（位置データ）３４０（ラベル付き画像３４１）による分析結果と照合することができない場合がある。それに応じ、ラベル照合器３５０は、訓練画像フレーム３７７のその特定の部分を、照合問題を有するとして特定することができる。次に、訓練画像フレーム３７７のその特定の部分に印を付して、オペレータ３７０からの監督入力３７１を要求し、訓練画像フレーム３７７のその特定の部分を、走行可能空間又は非走行可能空間に対応するとして、手動でラベル付けすることができる。
【００６１】
一部の実施例において、監督あり訓練サブシステム３３０は、オペレータ３７０から、監督入力３７１を受信するための監督モジュール３５５を更に含むことができる。オペレータ３７０は、監督入力３７１を与えて、画像分析器（センサーデータ）３３５及び画像分析器（位置データ）３４０によって、訓練画像フレーム３７７の領域に割り当てられたラベルの照合問題を解決することができる。オペレータ３７０は、監督あり訓練サブシステム３３０の前述の機能ブロックによるプログラム的分析に対し、更に補正又は補足を行うことができる。オペレータ３７０は、訓練画像フレーム３７７並びに画像分析器（センサーデータ）３３５及び画像分析器（位置データ）３４０による、関連分析結果（例えば、予備訓練結果３５１）を精査することができる。例えば、オペレータ３７０は、訓練画像フレーム３７７及び予備訓練結果３５１に加え、画像分析器（センサーデータ）３３５及び画像分析器（位置データ）３４０によって判定された、走行可能空間及び非走行可能空間領域を示す、訓練画像フレーム３７７に割り当てられたラベルを精査することができる。オペレータ３７０は、いずれもオペレータユーザーインタフェース（図３には示さず）に表示されている、予備訓練結果３５１に示されているラベルを、表示された訓練画像フレームと照合することによって、検証することができる。オペレータ３７０が、ある領域が誤ってラベル付けされていると判定した場合（例えば、車両に対応する画像フレーム３７７の一部が走行可能空間としてラベル付けされている）、オペレータ３７０は、誤ったラベルを補正するための監督入力３７１を与えることができる。予備訓練結果３５１及び監督入力３７１に基づいて、監督モジュール３５５は、予備訓練結果を補正又は補足する際の監督入力３７１を組み込んだ、監督訓練結果３３１を生成することができる。
【００６２】
実施形態によれば、訓練データ処理システム３００は、捕捉した画像フレームの走行可能空間の特定に使用される機械学習モデルを生成又は更新するためのモデル生成器３６０を含むことができる。モデル生成器３６０は、監督訓練結果３３１に基づいて、機械学習モデル３６１を生成又は更新することができる。特定の実施例において、モデル生成器３６０は、機械学習モデル３６１を畳み込みニューラルネットワークとして生成又は更新することができる。訓練データ処理システム３００は、ネットワーク３８０を介し、機械学習モデル３６１に対応するモデルデータ３２１を、自律可能車両３９０に送信するための車両インターフェース３２０を更に含むことができる。別の実施例において、モデルデータ３２１は、直接データリンク（例えば、バス接続）又はリムーバブル記憶装置（例えば、大容量記憶媒体装置）を介して、自律可能車両３９０に転送することもできる。
【００６３】
特定の実施例において、機械学習モデル３６１の生成又は更新に使用される仮想訓練画像データ３６６を、仮想訓練データ生成器３６５によって生成することもできる。仮想訓練データ生成器３６５は、訓練データ収集車両３７５に搭載されたカメラと同様の視点からシミュレートした、道路状況に対応する仮想環境を生成することができる任意のコンピューティングシステムであってよい。かかる仮想環境の画像フレームは、仮想訓練画像フレーム３６７として、仮想訓練データ生成器３６５によって生成することができる。仮想環境に関する他のデータは、仮想センサーデータ３６８及び仮想位置データ３６９として、仮想訓練データ生成器３６５によって生成することができる。例として、バーチャルリアリティ又はビデオゲームコンテンツを生成するためのコンピューティングシステムが挙げられる。データ収集インターフェース３１０及び画像フィルター３１１は、訓練データ収集車両３７５のカメラによって捕捉された、訓練画像フレーム３７７と特性（例えば、色、色相、コントラスト、露出等）が類似するように、仮想訓練画像フレーム３６７を処理することができる。
【００６４】
衝突回避システムの方法論
図４は、本明細書に記載の実施例による、自律可能車両における例示的な衝突回避システムを動作させる例示的な方法を説明するフローチャートである。図４の以下の説明において、図１〜３に関連して図示及び説明した機能及び例を参照することができる。例えば、図４に示す方法は、図１の例示的な衝突回避システム１００又は図２の例示的な衝突回避システム２５０に実装して実行することができる。
【００６５】
図４において、例示的な衝突回避システムは、車両に搭載されたカメラから画像フレームを受信することができる（４１０）。カメラは、捕捉した画像が、車両１０の前方の道路及び他の物体を示すように、車両の移動方向に配向することができる。カメラは、画像フレームを連続的に捕捉して、衝突回避システム１００に送信することができる。例えば、カメラは、毎秒３０フレームの速度で画像フレームを捕捉して、衝突回避システムに送信することができる。次に、衝突回避システムは、同じ毎秒３０フレームの速度で、受信画像フレームを順次処理することができる。
【００６６】
一部の実施形態において、車両は、衝突回避システムが使用する画像フレームを捕捉する単一のカメラを備えている。別の実施形態において、車両は複数のカメラを備え、衝突回避システム１００は、複数の画像フレームを同時に受信することができる。複数のカメラは、視野を向上させるために、又は衝突回避システムの死角を低減するために、車両の異なる位置に配置することができる。加えて、衝突回避システムが奥行を感知できるように、複数のカメラ（例えば、立体カメラ対）を配置することができる。複数のカメラを備えた実施形態において、衝突回避システムは、画像処理を行って、画像を合成又はマージして、衝突回避システムによる分析を行うことができる。例えば、立体カメラ対によって捕捉された画像をマージして三次元画像（例えば、関連する奥行マップを有する画像）を生成して、衝突回避システムによる分析を行うことができる。別の例として、相補視野を有する複数のカメラによって捕捉された画像フレームを合成して合成画像を生成して、衝突回避システムによる分析を行うことができる。
【００６７】
受信した各々の画像フレームについて、衝突回避システムは、画像フレームを分析して、画像フレームの各々の領域が、走行可能空間を表すそれぞれの確率を決定することができる（４１５）。一部の実施形態において、衝突回避システムは、かかる確率を画素単位で決定することができる。従って、カメラから受信した各々の画像フレームの各々の個別の画素について、衝突回避システムは、個々の画素が走行可能空間（例えば、車両が安全に移動できる路面）を示す対応確率を決定することができる。別の実施例において、ネットワークシステムは、画素群（例えば、３０画素のクラスター）について、かかる確率を決定することができる。衝突回避システムは、画像フレームの走行可能空間を認識するための１つ以上の機械学習モデルを利用して、ステップ４１５を実行することができる。機械学習モデルは、そこに示されている走行可能空間について、予め分析されている多数の訓練画像を含む、広範な訓練データを使用して生成することができる。少なくとも１つの実施例において、衝突回避システムが利用する機械学習モデルは、畳み込みニューラルネットワークである。
【００６８】
決定した確率に基づいて、衝突回避システムは、受信画像フレームの個々の領域を、走行可能空間又は非走行可能空間を表しているとしてラベル付けすることができる（４２０）。例えば、走行可能空間を表す特定の領域の対応確率が、特定の閾値を超える場合、衝突回避システムは、特定の領域が、走行可能空間を表しているとしてラベル付けすることができる。これに反し、走行可能空間を示す特定の領域の対応確率が、閾値未満の場合、衝突回避システムは、特定の領域が、非走行可能空間を表しているとしてラベル付けすることができる。
【００６９】
受信画像フレームに走行可能空間及び非走行可能空間のラベルを付した後、衝突回避システムは、異常値又は外れ値についてラベルを補正することができる（４２５）。補正は、画像フレーム単位で行うことができ、画像フレーム及び関連するラベルの異常値又は外れ値について精査される（４２６）。例えば、他はすべて走行可能空間として一貫してラベル付けされている、より大きい領域内の小領域（例えば、単一画素又は数画素の群）が、非走行可能空間としてラベル付けされている場合があり得る。衝突回避システムは、小領域のラベル付けを外れ値として決定し、対応するラベルを変更して、明らかに誤ったラベル付けを補正することができる。加えて、受信画像フレームと同時又はほぼ同時に記録された、他の画像フレームを精査することによって、時間ベースで補正を行うことができる（４２７）。衝突回避システムは、同時又はほぼ同時に記録された複数の画像フレームに割り当てられたラベルを比較して、画像フレームの領域を走行可能又は非走行可能空間としてラベル付けする際の異常値又は外れ値を特定することができる。同時に記録された２つの画像フレーム間のラベル付けが食い違っている場合、衝突回避システムは、画像フレームの一部の領域の再ラベル付けを行うことを決定することができる。
【００７０】
受信画像フレームにおいて、非走行可能空間とラベル付けされた各々の領域について、衝突回避システムは、対応する空間パラメータを決定することができる（４３０）。空間パラメータは、自律可能車両に対する相対位置、自律可能車両からの距離、移動速度、及び移動方向を含むことができる。自律可能車両からの相対位置及び距離等の空間パラメータは、画像フレームの非走行可能領域の位置に基づいて決定することができる。訓練データ及び入力に基づいて、機械学習モデルを更に訓練して、受信画像フレームに表されている物体及び自律可能車両までの距離を特定することができる。移動速度及び移動方向等の空間パラメータは、衝突回避システムが分析した、複数の画像フレームにわたる非走行可能空間領域の動きを追跡することによって算出することができる。
【００７１】
ステップ４３５において、衝突回避システムは、自律可能車両が非走行可能空間領域に衝突するか否かの確率を決定することができる。この決定は、非走行可能空間に関連する空間パラメータ、及び車両の速度、方向、加速度等の車両データに基づくことができる。受信画像フレームの各々の非走行可能空間の対応確率が閾値未満であれば、衝突回避システムは、カメラから受信した次の画像フレームに移動することができる（４１０）。
【００７２】
一方、受信画像フレームの非走行可能空間の少なくとも１つの領域について決定された衝突の確率が閾値を超える場合、衝突回避システムは、衝突を回避又は衝突の影響を最小限に抑制する衝突回避信号を生成する（４４０）。衝突回避信号は、半自律又は自律動作モードの自律可能車両の動作を制御する、車両制御システムによって生成される制御信号等、他の車両制御信号をオーバーライドすることができる。衝突回避信号は、自律可能車両のブレーキを作動させることができる。一部の実施例において、衝突回避システムは、差し迫った衝突を避けるために、非走行可能空間領域から車両を遠ざけるように操縦するステアリング制御を決定することもできる。衝突回避システムは、更に、自律可能車両の車両制御システムからデータを受信することができる。データは、車両制御システムが差し迫った衝突が起きる可能性があると認識したか否かを示すことができる。衝突回避システムは、車両制御システムが、差し迫った衝突が起きようとしていることを検出しなかったことをデータが示している場合にのみ、車両制御システムによって生成された車両制御信号をオーバーライドするように構成することができる。ステップ４４０で車両制御をオーバーライドした後、衝突回避システムは、カメラからの画像フレームの受信を継続して分析することができる。
【００７３】
訓練データ処理システムの方法論
図５は、本明細書に記載の実施例による、例示的な訓練データ処理システムを動作させる例示的な方法を説明するフローチャートである。図５の以下の説明において、図３に関連して図示及び説明した機能及び例を参照することができる。例えば、図５に示す方法は、図３の例示的な訓練データ処理システム３００に実装して実行することができる。
【００７４】
図５において、訓練データ処理システムは訓練データを受信する（５１０）。訓練データは、道路上を移動する際に、訓練データ収集車両（例えば、図３の３７５）によって収集することができる。訓練データは訓練画像フレーム５１１及び関連するセンサーデータ５１２を含むことができる。各々の訓練画像フレーム５１１は、訓練画像フレーム５１１が記録されたときに捕捉された、対応するセンサーデータ５１２のセットに関連付けることができる。センサーデータ５１２は、ＬＩＤＡＲ、ソナー、及び／又はレーダーデータを含むことができる。訓練データは、リアルタイムの位置データ（例えば、ＧＰＳデータ）を更に含むことができる。
【００７５】
実施形態によれば、訓練データ処理システムは、受信した訓練画像フレームに適切な画像フィルターを適用することができる（５１５）。訓練データ処理システムは、そのようにして、受信した訓練画像フレームの特性（例えば、色、色相、コントラスト、露出等）を変更することができる。そうすることによって、訓練データ処理システムは、機械学習モデルの生成に使用される訓練画像フレームが、特定の特性において一貫していることを保証することができる。これによって、訓練画像フレームを使用して生成された、機械学習モデルの品質及び一貫性を向上させることができる。
【００７６】
訓練データ処理システムは、訓練画像フレーム、関連するセンサーデータ、位置データ、及び訓練画像フレームの走行可能及び非走行可能空間を特定するための他のデータを分析することができる（５２０）。様々な技術を使用して分析を行うことができる。例えば、訓練データ処理システムは、訓練画像フレームの走行可能空間領域を、その訓練画像フレームが記録されたときに捕捉された、関連するセンサーデータのセットを使用して、特定することができる（５２１）。例えば、ＬＩＤＡＲ測定結果を使用して、かかる分析を行うことができる。ＬＩＤＡＲ測定結果に基づいて、訓練データ処理システムは、路面に対応する訓練画像フレームの領域を決定することができる。それに応じ、訓練データ処理システムは、訓練画像フレームのそれらの領域を走行可能空間として特定することができる。加えて、ＬＩＤＡＲ測定結果は、車両又は歩行者に対応する訓練画像フレームの領域を更に示すことができる。それに応じ、訓練データ処理システムは、訓練画像フレームのそれらの領域を非走行可能空間として特定することができる。
【００７７】
更に、訓練データ処理システムは、訓練画像フレームが記録された時点で捕捉された、ＧＰＳデータ等のリアルタイム位置データを更に分析することができる（５２２）。リアルタイム位置データを使用して、訓練データ処理システムは、建物、歩道、道路の中央分離帯等の地図化された構造物に対応する、訓練画像フレームの領域を決定することができる。訓練データ処理システムは、ロケーション又はマッピングデータベースに照会することによって、これを行うことができる。訓練画像フレームの特定の領域が道路の中央分離帯等の地図化された構造物に対応するという判定に基づいて、訓練データ処理システムは、訓練画像フレームの特定の領域を非走行可能空間として特定し、ラベル付けすることができる。特定の実施例において、訓練画像フレームは、機械学習モデルの既存のバージョンによって分析し、訓練画像フレームの走行可能空間及び／又は非走行可能空間を特定することもできる（５２３）。既存のモデルによる分析結果を他の分析結果と結合及び照合して、機械学習モデルの既存のバージョンを改善することができる。
【００７８】
実施形態によれば、訓練データ処理システムは、様々な分析を結合及び照合して、訓練画像フレームの領域を走行可能又は非走行可能空間としてプログラム的に特定する。結合結果は管理者の端末に提示され、管理者が精査することができる。次に、訓練データ処理システムは、訓練画像フレームの走行可能又は非走行可能空間を特定する、管理者からの監督入力を受信することができる（５２５）。管理者端末における提示は、様々なプログラム的分析が照合できない又は互いに一致しない、従って監督入力を必要とする訓練画像フレームの特定の領域を強調することができる。例えば、管理者端末における提示は、訓練画像フレームの残りの部分と比較して、異なる色又は視覚パターン使用して、訓練画像フレームの特定の領域を強調することができる。管理者は、管理者端末に表示された提示を介し、特定の領域を走行可能又は非走行可能空間として特定した監督入力を与えることができる。このようにして、車載カメラによって取得された画像フレームの走行可能空間を特定する機械学習モデルを生成する訓練データを分析する際に、管理者は、訓練データ処理システムによるプログラム的分析を照合、補正、又は補足するための監督入力を与えることができる。従って、監督入力は、受信された訓練画像フレームの一部のみについて受信することができる。別の実施例において、管理者は、走行可能空間の訓練画像フレーム全体にラベル付けすることに責任を負うことができる。従って、管理者は、訓練データ処理システムが、その後、追加の訓練データを使用して改善することができる、初期機械学習モデルの生成を可能にするのに十分なデータポイントを有する、ラベル付き訓練画像の集合を「シード」する責任を負うことができる。
【００７９】
ステップ５１０において受信した訓練データに基づいて、ステップ５３０において、機械学習モデルを生成又は更新することができる。特定の実施形態において、機械学習モデルは、畳み込みニューラルネットワークである。更に、機械学習モデルは、分類器の集合を含むことができる。生成又は更新した機械学習モデルは、自律可能車両に転送又は送信し（５３５）、自律可能車両に配置された衝突回避システムと共に使用することができる。機械学習モデルに対応するデータは、自律可能車両の記憶装置に記憶して、衝突回避システムによるアクセスを可能にすることができる。
【００８０】
例示的な画像フレーム
図６は、本明細書に記載の実施例による、衝突回避システムによって受信され、処理された例示的な画像フレームを示す図である。図６の以下の説明において、図１に関連して図示及び説明した機能及び例を参照することができる。例えば、図６に示す例示的な画像フレームは、図１の衝突回避システム１００によって分析し、処理することができる。
【００８１】
図６において、図示の例示的な画像フレーム６００は、自律可能車両（例えば、図１の車両１０）の１つ以上のカメラによって捕捉することができる。１つ以上のカメラは、自律可能車両の前方の環境を示す画像フレーム６００を捕捉するように、配置することができる。衝突回避システムは、訓練データを使用して生成された機械学習モデルを使用して、画像フレーム６００を分析して、画像フレーム６００の様々な領域を走行可能空間又は非走行可能空間を表しているとして、ラベル付けすることができる。明らかなように、画像フレーム６００は、単なる例示であって、画像フレーム６００に示された様々な構造物は、説明のために簡略化されている。
【００８２】
図示のように、領域６１０は舗装路面を示している。衝突回避システムは、機械学習モデルを使用して、画像フレーム６００を分析し、領域６１０を走行可能空間としてラベル付けすることができる。画像フレーム６００の領域６２０は、舗装道路上を歩行している歩行者を示している。衝突回避システムは、機械学習モデルを使用して、画像フレーム６００を分析し、非走行可能空間を表しているとして、領域６２０にラベル付けすることができる。同様に、歩道を表している領域６３０及び６３５、並びに壁を表している領域６４０及び６４５について、衝突回避システムは、これ等の領域を非走行可能空間として、ラベル付けすることができる。
【００８３】
一部の実施形態において、衝突回避システムは、画像フレーム６００の領域を、水平線６５５より上側の画像フレーム６００の領域として認識するように構成することができる。衝突回避システムは、衝突回避信号を生成するか否かを決定する際に、重要ではない領域を無視することができる。更に、領域６６０は、画像フレーム６００内の異常に対応させることができる。異常は、カメラのイメージセンサーの誤りによるもの又は照明効果であり得る。別の実施例において、異常は、衝突回避信号が、安全に無視することができる道路上の小物体であり得る。前述のように、衝突回避システムは、機械学習モデルを適用することによって、領域６６０を当初非走行可能空間としてラベル付けし得る。しかし、誤り訂正技術を使用して、異常を検出し、走行可能空間として再度ラベル付けすることができる。このようにして、衝突回避システムは、異常領域に対する衝突を回避するための衝突回避信号を、必要以上に生成することはない。
【００８４】
画像フレーム６００を分析する際、衝突回避システムは、歩行者及び車両データ（例えば、速度、進行方向、加速度等）に対応する、非走行可能空間領域６２０について決定された空間パラメータに基づいて、領域６２０に衝突する寸前である否かを判定することができる。これに応じ、衝突回避システムは、歩行者に衝突することを回避するために、衝突回避信号を生成して車両のブレーキを作動させることができる。
【００８５】
ハードウェア図
図７は、本明細書に記載の実施例を実装することができる、コンピュータシステムのブロック図である。図１の文脈において、図７に示すコンピュータシステム７００等のシステムを使用して、衝突回避システム１００を実行することができる。衝突回避システム１００は、図７に関連して説明する、複数のコンピュータシステムの組み合わせを使用して実行することもできる。
【００８６】
１つの実施形態において、コンピュータシステム７００は、処理資源７１０、主記憶装置７２０、読み取り専用メモリ（ＲＯＭ）７３０、記憶装置７４０、及び通信インターフェース７５０を備えている。コンピュータシステム７００は、主記憶装置７２０に記憶された情報を処理するための少なくとも１つのプロセッサ７１０を有し、主記憶装置は、ランダムアクセスメモリ（ＲＡＭ）又は他の動的記憶装置等によって構成され、プロセッサ７１０によって実行可能な情報及び命令を記憶するものである。主記憶装置７２０は、プロセッサ７１０によって実行される命令の実行中、一時変数又は他の中間情報の記憶にも使用することができる。コンピュータシステム７００は、静的情報及びプロセッサ７１０用の命令を記憶するためのＲＯＭ７３０、又は他の静的記憶装置を有することもできる。磁気ディスク又は光ディスク等、情報及び命令を記憶するための記憶装置７４０を備えている。
【００８７】
通信インターフェース７５０によって、コンピュータシステム７００が、ネットワークリンク（無線又は有線）の使用を介し、１つ以上のネットワーク７８０（例えば、セルラーネットワーク）と通信することができる。ネットワークリンクを使用して、コンピュータシステム７００は、１つ以上のコンピューティング装置及び１つ以上のサーバーと通信することができる。実施例によれば、コンピュータシステム７００は、ネットワーク７８０を介し、１つ以上のサーバー（例えば、図３の訓練データ処理システム３００）から、画像フレームの走行可能及び非走行可能空間を特定するための機械学習モデルに対応する、モデルデータ７８１を受信する。モデルデータ７８１を受信して、コンピュータシステム７００の主記憶装置に記憶されている、既存の機械学習モデル７２１を更新することができる。主記憶装置７２０に記憶されている実行可能命令は、ラベル付けされた画像フレームに対し誤り訂正を実行する命令、非走行可能空間とラベル付けされた画像フレームの領域に対応する空間パラメータを決定する命令、空間パラメータ及び車両データに基づいて、非走行空間領域に衝突する寸前であるか否かを判定する命令、及び車両を制御し、差し迫った衝突を回避する衝突回避信号を生成する命令を更に含むことができる。例として、主記憶装置７２０に記憶された命令及びデータが、プロセッサ７１０によって実行されることによって、図１の例示的な衝突回避システム１００を実現することができる。プロセッサ７１０は、ソフトウェア及び／又は他の論理で構成され、図１〜６で説明した実装形態、及び本出願の他の場所で説明されている、１つ以上のプロセス、ステップ、及び他の機能を実行する。
【００８８】
本明細書に記載の実施例は、本明細書に記載の技術を実施するためのコンピュータシステム７００の使用に関連している。１つの実施例によれば、これらの技術は、主記憶装置７２０に含まれている１つ以上の命令の１つ以上のシーケンスを実行しているプロセッサ７１０に応答して、コンピュータシステム７００によって実行される。かかる命令は、記憶装置７４０等の別の機械可読媒体から、主記憶装置７２０に読み込むことができる。主記憶装置７２０に含まれている一連の命令を実行することによって、本明細書に記載の処理ステップをプロセッサ７１０に実行させる。別の実施形態において、ソフトウェア命令の代わりに又はそれと組み合わせて、ハードワイヤード回路を使用して、本明細書に記載の実施例を実施することができる。従って、記述されている実施例は、ハードウェア回路とソフトウェアとの如何なる特定の組み合わせに限定されるものではない。
【００８９】
本明細書に記載の実施例は、他の概念、着想、又はシステムとは無関係に、本明細書に記載の個々の要素及びシステムに拡張されると共に、本出願のいずれかに列挙された要素の組み合わせを含むことを意図するものである。本明細書において、添付図面を参照して、実施例が詳細に説明されているが、概念はそれ等の明確な実施例に限定されるものではないことを理解されたい。従って、当業者には多くの改良及び変更が明らかであろう。従って、概念の範囲は、以下の特許請求の範囲及びその均等物によって定義されるべきことを意図するものである。更に、個別又は実施例の一部として記載されている特定の機能は、その特定の機能に言及していない他の個別に記述された機能又は実施例の一部であっても、それ等と組み合わせることができることを意図するものである。従って、組み合わせが記述されていないことによって、かかる組み合わせに対する権利の主張が妨げられるべきものではない。
【符号の説明】
【００９０】
１０、２００、３９０  自律可能車両
８４、１２５  コントローラ
９０  車両インターフェースシステム
１００、２５０  衝突回避システム
１３０、２１５  センサーアレイ
１８０、２１０  ＡＶ制御システム
２１１、２５１  処理資源
２１２  ＡＶ制御
２１６  ＬＩＤＡＲセンサー
２１７、２２０  カメラ
２１８  レーダーセンサー
２５２  記憶資源
２５４  衝突回避制御
３００  訓練データ処理システム
３３０  監督あり訓練サブシステム
３７５  訓練データ収集車両
６００  画像フレーム    
６１０  舗装路面
６２０  歩行者
６３０、６３５  歩道
６４０、６４５  壁
６５５  水平線
６６０  領域    
７００  コンピュータシステム
【図１】
2019008796.tif 000003
【図２】
2019008796.tif 000004
【図３】
2019008796.tif 000005
【図４】
2019008796.tif 000006
【図５】
2019008796.tif 000007
【図６】
2019008796.tif 000008
【図７】
2019008796.tif 000009
【外国語明細書】
2019008796000001.pdf