(57)【要約】  本開示は、２台以上のカメラ（３１０、３２０、４１０、４２０、４３０）の動作を評価することに関する。これらのカメラは、自律運転モードを有する車両（１００）の知覚システム（１７２）のカメラのグループ（３００、４００）でもよい。第１のカメラによって捕捉された第１の画像（５００）および第２のカメラによって捕捉された第２の画像（６００）が受信され得る。第１の画像に対する第１の特徴ベクトルおよび第２の画像に対する第２の特徴ベクトルが生成され得る。第１の特徴ベクトルおよび第２の特徴ベクトルを使用して、類似性スコアが決定され得る。類似性スコアは、２台のカメラの動作を評価するために使用され得、適切なアクションが実行され得る。【選択図】図９
2021534494.tif 000002
【特許請求の範囲】
【請求項１】
２台以上のカメラの動作を評価する方法であって、
第１のカメラによって捕捉された第１の画像を、１つ以上のプロセッサによって受信することと、
第２のカメラによって捕捉された第２の画像を、前記１つ以上のプロセッサによって受信することであって、前記第１のカメラおよび前記第２のカメラが重複する視野を有する、受信することと、
前記第１の画像に対する第１の特徴ベクトルおよび前記第２の画像に対する第２の特徴ベクトルを、前記１つ以上のプロセッサによって生成することと、
前記第１の特徴ベクトルおよび前記第２の特徴ベクトルを使用して、類似性スコアを前記１つ以上のプロセッサによって決定することと、
前記類似性スコアを使用して、前記２台のカメラの前記動作を前記１つ以上のプロセッサによって評価することと、を含む、方法。
【請求項２】
前記第１の画像および前記第２の画像が異なるように露光される、請求項１に記載の方法。
【請求項３】
前記第１のカメラがＮＤフィルタを含み、前記第２のカメラが含まない、請求項１に記載の方法。
【請求項４】
前記第１の画像の露光期間が、前記第２の画像の露光期間よりも長い、請求項１に記載の方法。
【請求項５】
前記第１の画像および前記第２の画像が、前記重複する視野内の所与の位置にある物体を捕捉するように、所定の期間内に捕捉される、請求項１に記載の方法。
【請求項６】
前記第１の特徴ベクトルおよび前記第２の特徴ベクトルを生成する前に、前記第１の画像および前記第２の画像を縮小することをさらに含む、請求項１に記載の方法。
【請求項７】
前記第１の画像および前記第２の画像を縮小することが、前記重複する視野に対応するピクセルのみを含むよう、前記第１の画像および前記第２の画像をクロッピングすることを含む、請求項６に記載の方法。
【請求項８】
前記第１の画像および前記第２の画像を縮小することが、前記第１の画像および前記第２の画像をサムネイル化することを含む、請求項６に記載の方法。
【請求項９】
前記第１の特徴ベクトルおよび前記第２の特徴ベクトルが、時刻に基づいてさらに生成される、請求項１に記載の方法。
【請求項１０】
前記第１の特徴ベクトルおよび前記第２の特徴ベクトルが、発光物に対応する特徴のみを含むように生成される、請求項１に記載の方法。
【請求項１１】
前記類似性スコアを生成することが、構造類似性インデックスを使用することを含む、請求項１に記載の方法。
【請求項１２】
前記類似性スコアを使用することが、前記類似性スコアを閾値と比較することを含む、請求項１に記載の方法。
【請求項１３】
前記類似性スコアを使用することが、前記類似性スコアを、前記第１のカメラおよび前記第２のカメラからの画像から経時的に生成される他の類似性スコアと比較することを含む、請求項１に記載の方法。
【請求項１４】
前記類似性スコアを前記他の類似性スコアと比較することが、累積和管理図を使用することを含む、請求項１３に記載の方法。
【請求項１５】
前記評価に基づいて、リモートコンピューティングデバイスに支援の要求を送信することをさらに含み、前記要求が前記第１の画像および前記第２の画像を含む、請求項１に記載の方法。
【請求項１６】
前記要求を送信した後、前記リモートコンピューティングデバイスに前記第１のカメラからの更新された画像、および前記第２のカメラからの更新された画像を送信することをさらに含む、請求項１５に記載の方法。
【請求項１７】
前記要求に応じて、車両を停止するための命令を受信することと、
前記要求に応じて前記車両を停止することと、をさらに含む、請求項１５に記載の方法。
【請求項１８】
前記第１のカメラおよび前記第２のカメラの一方または両方に対して洗浄システムをアクティブにすることをさらに含む、請求項１に記載の方法。
【請求項１９】
前記評価に基づいて運転判断を行うことにより、自律運転モードの車両を、前記１つ以上のプロセッサによって制御することをさらに含む、請求項１に記載の方法。
【請求項２０】
前記車両を制御することが、前記運転判断を行うときに、前記第１の画像および前記第２の画像の一方または両方の全部または一部を破棄することを含む、請求項１９に記載の方法。
【請求項２１】
前記類似性スコアを生成することが、前記第１の特徴ベクトルおよび前記第２の特徴ベクトルをモデルに入力することを含む、請求項１に記載の方法。
【請求項２２】
前記モデルが決定木モデルである、請求項２１に記載の方法。
【請求項２３】
前記類似性スコアを生成することが、前記第１の画像の深度データ、前記第２の画像の深度データ、太陽の場所、または時刻情報のうちの少なくとも１つを含む追加情報を入力することをさらに含む、請求項２１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、２０１８年０８月２０日に出願された出願第１６／１０５，０６９号の優先権を主張し、その開示は参照により本明細書に組み込まれる。
【背景技術】
【０００２】
人間の運転手を必要としない車両などの自律型車両が、ある場所から別の場所への乗員または物品の輸送を支援するために使用される場合がある。このような車両は、乗員が目的地などの何らかの初期入力を提供し、車両がその目的地に車両自体を操縦する、完全な自律運転モードで動作することができる。したがって、このような車両は、いつでも自律型車両の場所を決定し、かつ、他の車両、停止信号、歩行者などの車両の外部にある物体を検出し識別することができるシステムに大きく依存し得る。一例として、これらのシステムは、車両の様々な場所に据え付けられる、レーザー走査装置およびカメラなどのセンサを含み得る。したがって、このようなセンサの動作をリアルタイムで評価できることは、運転判断を行う際に、車両が機能していないセンサまたはごみで覆われたセンサからのセンサデータに依存していないことを確実するために重要である。
【発明の概要】
【０００３】
本開示の態様は、２台以上のカメラの動作を評価するための方法を提供する。この方法は、第１のカメラによって捕捉された第１の画像を１つ以上のプロセッサによって受信することと、第２のカメラによって捕捉された第２の画像を１つ以上のプロセッサによって受信することであって、第１のカメラおよび第２のカメラが重複する視野を有する、受信することと、第１の画像に対する第１の特徴ベクトルおよび第２の画像に対する第２の特徴ベクトルを、１つ以上のプロセッサによって生成することと、第１の特徴ベクトルおよび第２の特徴ベクトルを使用して、類似性スコアを１つ以上のプロセッサによって決定することと、類似性スコアを使用して、２台のカメラの動作を１つ以上のプロセッサによって評価することと、を含む。
【０００４】
一例では、第１の画像および第２の画像は異なるように露光される。別の例では、第１のカメラはＮＤフィルタを含み、第２のカメラは含まない。別の例では、第１の画像の露光期間は、第２の画像の露光期間よりも長い。別の例では、第１の画像および第２の画像は、重複する視野内の所与の位置にある物体を捕捉するように、所定の期間内に捕捉される。別の例では、この方法は、第１の特徴ベクトルおよび第２の特徴ベクトルを生成する前に、第１の画像および第２の画像を縮小することをさらに含む。この例では、第１の画像および第２の画像を縮小することは、重複する視野に対応するピクセルのみを含むよう、第１の画像と第２の画像をクロッピングすることを含む。加えてまたは代わりに、第１の画像および第２の画像を縮小することは、第１の画像および第２の画像をサムネイル化することを含む。
【０００５】
別の例では、第１の特徴ベクトルおよび第２の特徴ベクトルは、時刻に基づいてさらに生成される。別の例では、第１の特徴ベクトルおよび第２の特徴ベクトルは、発光物に対応する特徴のみを含むように生成される。別の例では、類似性スコアを生成することは、構造類似度インデックスを使用することを含む。別の例では、類似性スコアを使用することは、類似性スコアを閾値と比較することを含む。別の例では、類似性スコアを使用することは、類似性スコアを、第１のカメラおよび第２のカメラからの画像から経時的に生成される他の類似性スコアと比較することを含む。この例では、類似性スコアを他の類似性スコアと比較することは、累積和管理図を使用することを含む。別の例では、この方法は、評価に基づいて、リモートコンピューティングデバイスに支援の要求を送信することも含み、要求は、第１の画像および第２の画像を含む。この例では、この方法は、要求を送信した後、リモートコンピューティングデバイスに第１のカメラからの更新された画像、および、第２のカメラからの更新された画像を送信することも含む。加えて、またはその代わりに、この方法はまた、要求に応じて、車両を停止するための命令を受信し、要求に応じて車両を停止することも含む。別の例では、この方法は、第１のカメラおよび第２のカメラの一方または両方に対して洗浄システムをアクティブにすることも含む。別の例では、この方法は、評価に基づいて運転判断を行うことにより、自律運転モードの車両を、１つ以上のプロセッサによって制御することも含む。この例では、車両を制御することは、運転判断を行うときに、第１の画像および第２の画像の一方または両方の全部または一部を破棄することを含む。
【０００６】
別の例では、類似性スコアを生成することは、第１の特徴ベクトルおよび第２の特徴ベクトルをモデルに入力することを含む。この例では、モデルは決定木モデルである。加えて、または代わりに、類似性スコアを生成することは、第１の画像の深度データ、第２の画像の深度データ、太陽の場所、または時刻情報のうちの少なくとも１つを含む追加情報を入力することをさらに含む。
【図面の簡単な説明】
【０００７】
【図１】本開示の態様による本開示の態様による例示的な車両の機能図である。
【図２】本開示の態様による、図１の例示的な車両の例示的な外観図である。
【図３】本開示の態様によるカメラグループの一例である。
【図４】本開示の態様によるカメラグループの別の例である。
【図５】本開示の態様による例示的な画像である。
【図６】本開示の態様による別の例示的な画像である。
【図７】本開示の態様による例示的なシステムの絵図である。
【図８】本開示の態様による、図７のシステムの機能図である。
【図９】本開示の態様による、画像をクロッピングして縮小する例である。
【図１０】本開示の態様による例示的な画像である。
【図１１】本開示の態様による別の例示的な画像である。
【図１２】本開示の態様による、例示的なフロー図である。
【発明を実施するための形態】
【０００８】
概要
本技術は、２台以上のカメラの動作を評価すること、またはむしろ、カメラが適切に機能していることを確認することに関する。例えば、カメラが世界を適切に「見ている」かどうか、またはレンズに何らかの異物のごみが付いているか、結露があるか、機能していないピクセルがあるかなどを知るのは難しい場合がある。これは、運転判断を行うためにそのようなカメラに依拠する自律型車両の場合に特に重要であり得る。
【０００９】
例えば、自律型車両の知覚システムは、複数のカメラおよび他のセンサを含み得る。カメラは、異なる構成、例えば、異なるフィルタなどを有し得るが、画像を定期的に捕捉するように構成されてもよい。少なくともいくつかのカメラ、したがっていくつかの補足された画像は、重複する視野を有し得る。重複する視野を有する一対のカメラの機能性は、各カメラから捕捉された一対の画像を選択することによって検証することができる。理想的には、これらの画像は、重複する視野内の同じ位置にある同じ物体を１つ以上捕捉するように、非常に近い時間で、または何らかの所定の期間内に捕捉される。
【００１０】
処理を簡素化するために、画像のサイズを縮小してもよい。例えば、画像は、サイズを縮小してもよく、および／または別様に、重複する視野に対応する部分のみを含むようにクロッピングされてもよい。
【００１１】
次に、縮小画像を分析して、特徴ベクトルを生成する。そのため、これらの特徴ベクトルは、縮小画像の特徴を表す。次に、これらの特徴ベクトルを比較して、類似性スコアまたはそれらが互いにどれほど類似しているかを決定する。類似性スコアは、コサイン類似性測定、クラスタリング技術、他のベクトル類似性測定技術、またはモデルを用いて決定することができる。
【００１２】
類似性スコアを閾値と比較して、縮小画像間の類似性が低すぎるかどうか、またはむしろ画像が非常に異なるためにカメラの１つにエラーがあるか、または塞がれている可能性が高いとと決定してもよい。多くの場合、カメラのレンズの１つで結露がゆっくりと発生する場合など、変化を識別するには閾値で十分であり得る。ただし、場合によっては、閾値が必ずしも問題を識別するとは限らない。このような場合、２台のカメラからの多数の画像の類似性スコアは、急な変化を識別するために、経時的に比較され得る。
【００１３】
閾値に達した場合、または急な変化が検出された場合、車両のコンピューティングデバイスは、一方または両方のカメラに問題があると想定してもよい。そのため、適切な対応が取られ得る。さらに、この処理は、重複する視野を有する２台のカメラ間で一対の画像が捕捉されるたびに、またはより少ない頻度などで定期的に実行され得る。
【００１４】
前述の技術は、環境光が良好な日照時間中はうまく働くが、暗い環境や夜間の環境では、類似性スコアおよびＳＳＩＭの信頼性が低下する場合がある。そのような時、２つの縮小画像の全ての特徴を一致させるのではなく、輝点または高輝度領域のみが比較されてもよい。この場合も、カメラの１つに問題があるか否かを識別するために、これらのベクトルに対する類似性スコアが再度決定され、閾値と比較される、および／または追跡されてもよい。その後、適切な対応が取られ得る。
【００１５】
本明細書で説明する機能により、様々な照明条件での信頼性の高いカメラ評価が可能になる。上記のように、カメラが世界を適切に「見ている」かどうか、またはレンズに何らかの異物のごみが付いているか、結露があるか、機能していないピクセルがあるかなどを判断するのは非常に困難である。これは、運転判断を行うためにそのようなカメラに依拠する自律型車両の場合に特に重要であり得る。
【００１６】
例示的なシステム
図１に示されるように、本開示の一態様による車両１００は、様々な構成要素を含む。本開示のある態様は、特定のタイプの車両と関連して特に有用であり、車両は、自動車、トラック、オートバイ、バス、レクリエーション用車両などを含むがこれらに限定されない任意のタイプの車両でもよい。車両は、１つ以上のコンピューティングデバイス、例えば、１つ以上のプロセッサ１２０、メモリ１３０、および汎用コンピューティングデバイスに典型的に存在する他の構成要素を含む、コンピューティングデバイス１１０を有してもよい。
【００１７】
メモリ１３０は、１つ以上のプロセッサ１２０によってアクセス可能な情報を記憶し、その情報には、プロセッサ１２０によって実行または別様に使用され得る命令１３２およびデータ１３４が含まれる。メモリ１３０は、プロセッサによってアクセス可能な情報を記憶することができる任意のタイプのメモリであってもよく、それらには、コンピューティングデバイス可読媒体、またはハードドライブ、メモリカード、ＲＯＭ、ＲＡＭ、ＤＶＤ、もしくは他の光ディスク、ならびに他の書き込み可能および読み取り専用メモリなどの電子デバイスを用いて読み取ることができるデータを記憶する他の媒体が含まれる。システムおよび方法は、上記の異なる組み合わせを含んでもよく、それによって、命令およびデータの様々な部分が、様々なタイプの媒体に記憶される。
【００１８】
命令１３２は、プロセッサにより直接的に（マシンコードなど）または間接的に（スクリプトなど）実行される任意の組の命令であってもよい。例えば、命令は、コンピューティングデバイス可読媒体上のコンピューティングデバイスコードとして記憶されてもよい。その点において、「命令」および「プログラム」という用語は、本明細書では、互換的に使用され得る。命令は、プロセッサによる直接的な処理のためのオブジェクトコード形式で、または要求に応じて解釈されるか、もしくは予めコンパイルされるスクリプトもしくは独立したソースコードモジュールの集合を含む、任意の他のコンピューティングデバイス言語で記憶されてもよい。命令の機能、方法、およびルーチンについては、以下でさらに詳細に説明される。
【００１９】
データ１３４は、命令１３２に従って、プロセッサ１２０によって検索、記憶、または修正されてもよい。例えば、特許請求の範囲の主題は、いかなる特定のデータ構造にも限定されないが、データは、コンピューティングデバイスレジスタ内に、すなわち、複数の異なるフィールドおよびレコードを有する表、ＸＭＬドキュメント、またはフラットファイルとしてリレーショナルデータベース内に記憶されてもよい。データはまた、任意のコンピューティングデバイス可読形式でフォーマット化されてもよい。
【００２０】
１つ以上のプロセッサ１２０は、市販されているＣＰＵなどの任意の従来のプロセッサであってもよい。代替的に、１つ以上のプロセッサは、ＡＳＩＣまたは他のハードウェアベースプロセッサなどの専用デバイスであってもよい。図１は、プロセッサ、メモリ、およびコンピューティングデバイス１１０の他の要素を同じブロック内にあるものとして機能的に示しているが、プロセッサ、コンピューティングデバイス、またはメモリは、実際には、同じ物理的な筐体内に記憶されていてもいなくてもよい、複数のプロセッサ、コンピューティングデバイス、またはメモリを含むことができることは、当業者により、理解されるであろう。例えば、メモリは、ハードドライブ、またはコンピューティングデバイス１１０の筐体とは異なる筐体内に位置する他の記憶媒体であってもよい。したがって、プロセッサまたはコンピューティングデバイスへの言及は、並行に動作してもしなくてもよいプロセッサまたはコンピューティングデバイスまたはメモリの集合体への言及を含むことが理解されよう。
【００２１】
コンピューティングデバイス１１０は、上述したプロセッサおよびメモリ、ならびにユーザ入力装置１５０（例えば、マウス、キーボード、タッチスクリーン、および／またはマイクロフォン）ならびに様々な電子ディスプレイ（例えば、スクリーンを有するモニタ、または情報を表示するように動作可能である任意の他の電気デバイス）などの、コンピューティングデバイスと関連して通常使用される全ての構成要素を含み得る。この例では、車両は、情報または視聴覚体験を提供するために、内部電子ディスプレイ１５２、ならびに１つ以上のスピーカ１５４を含む。この点について、内部電子ディスプレイ１５２は、車両１００の車内に位置していてもよく、車両１００内の乗員に情報を提供するために、コンピューティングデバイス１１０によって使用されてもよい。
【００２２】
コンピューティングデバイス１１０はまた、以下に詳細に説明するクライアントコンピューティングデバイスおよびサーバコンピューティングデバイスなど他のコンピューティングデバイスとの通信を容易にするために、１つ以上の無線ネットワーク接続１５６を含んでもよい。無線ネットワーク接続には、ブルートゥース、ブルートゥースローエネルギー（ＬＥ）、携帯電話接続などの短距離通信プロトコル、ならびにインターネット、Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ、イントラネット、仮想プライベートネットワーク、ワイドエリアネットワーク、ローカルネットワーク、１つ以上の企業専有の通信プロトコルを使用するプライベートネットワーク、イーサネット、ＷｉＦｉ、およびＨＴＴＰを含む様々な構成およびプロトコル、ならびにそれらの様々な組み合わせが含まれてもよい。
【００２３】
一例では、コンピューティングデバイス１１０は、車両１００に組み込まれた自律運転コンピューティングシステムでもよい。自律運転コンピューティングシステムは、完全自律運転モードおよび／または半自律運転モードで車両１００を操縦するために、車両の様々な構成要素と通信することができ得る。例えば、図１に戻ると、コンピューティングデバイス１１０は、メモリ１３０の命令１３２に従って車両１００の移動、速度などを制御するために、減速システム１６０、加速システム１６２、ステアリングシステム１６４、シグナリングシステム１６６、ナビゲーションシステム１６８、測位システム１７０、知覚システム１７２、および電力システム１７４（例えば、ガソリンもしくはディーゼル電動モータまたは電気エンジン）など、車両１００の様々なシステムと通信している。この場合も、これらのシステムは、コンピューティングデバイス１１０の外部にあるものとして示されているが、実際には、これらのシステムもまた、車両１００を制御するための自律運転コンピューティングシステムとして再度、コンピューティングデバイス１１０の中に組み込まれてもよい。
【００２４】
一例として、コンピューティングデバイス１１０は、車両の速度を制御するために、減速システム１６０および加速システム１６２と相互作用してもよい。同様に、ステアリングシステム１６４は、車両１００の方向を制御するために、コンピューティングデバイス１１０によって使用されてもよい。例えば、車両１００が自動車またはトラックのように道路で使用するように構成されている場合、ステアリングシステムは、車両の向きを変えるための車輪の角度を制御する構成要素を含んでいてもよい。シグナリングシステム１６６は、例えば、必要に応じて方向指示器またはブレーキライトを点灯させることによって、車両の意図を他の運転手または車両に知らせるために、コンピューティングデバイス１１０によって使用され得る。
【００２５】
ナビゲーションシステム１６８は、ある場所までのルートを判定および追従するために、コンピューティングデバイス１１０によって使用され得る。この点について、ナビゲーションシステム１６８および／またはデータ１３４は、詳細な地図情報、例えば、車道の形状および標高、車線境界線、交差点、横断歩道、速度制限、交通信号、建物、標識、リアルタイム交通情報、植生、または他のかかる物体および情報を識別する高精密地図、を記憶し得る。換言すると、この詳細な地図情報は、車道、ならびにそれらの車道の速度制限（法定速度制限）を含む、車両の予想される環境の幾何学形状を定義し得る。さらに、この地図情報は、交通信号灯、一時停止標識、道を譲れという標識などの交通制御に関する情報を含み得、これらは、知覚システム１７２から受信するリアルタイム情報と併せて、所与の場所でどの方向の交通が優先通行権を持っているかを判断するためにコンピューティングデバイス１１０によって使用され得る。
【００２６】
知覚システム１７２はまた、他の車両、車道内の障害物、交通信号、標識、樹木などの車両の外部の物体を検出するために１つ以上の構成要素を含む。例えば、知覚システム１７２は、１つ以上のライダーセンサ、ソナーデバイス、レーダーユニット、カメラ、および／またはコンピューティングデバイス１１０によって処理され得るデータを記録する任意の他の検出デバイスを含んでもよい。知覚システムのセンサは、車両の外部環境にある物体を検出し、場所、向き、サイズ、形状、タイプ、方向、および移動速度などのそのような物体の特性を説明するセンサデータを生成することができる。センサからの生センサデータおよび／または前述の特性は、定量化されるか、または記述関数もしくはベクトルに配置され、さらなる処理のためにコンピューティングデバイス１１０に送信され得る。さらなる詳細を以下で考察するが、コンピューティングデバイス１１０は、車両の場所を判定するために測位システム１７０を使用し、その場所に安全に到着する必要があるとき、物体を検出しかつ物体に対応するために知覚システム１７２を使用し得る。
【００２７】
例えば、図２は、車両１００の例示的な外観図である。本例では、ルーフトップ筐体２１０および筐体２１２、２１４は、ライダーセンサ、ならびに様々なカメラおよびレーダーユニットを含み得る。さらに、車両１００の前端部に位置する筐体２２０、ならびに車両の運転手側および助手席側の筐体２３０、２３２は、それぞれ、ライダーセンサを格納することができる。例えば、筐体２３０は、運転手側のドア２６０の前部に位置している。車両１００はまた、車両１００のルーフの上にも位置するレーダーユニットおよび／またはカメラのための筐体２４０、２４２も含む。追加のレーダーユニットおよびカメラ（図示せず）は、車両１００の前端部および後端部に、および／またはルーフまたはルーフトップ筐体２１０に沿った他の位置に位置していてもよい。
【００２８】
知覚システム１７２のカメラは、車両の環境におけるほとんどのポイントを定期的に捕捉するカメラが少なくとも２台存在するように、車両上に配置され得る。車両の前（つまり、走行方向）のいくつかのポイントは、長距離カメラでも「見る」ことができる。したがって、知覚システムの各カメラは、評価目的のために「カメラグループ」に１つ以上の他のカメラとグループ化され得る。
【００２９】
図３は、重複する視野３１２、３２２を有する２台のカメラ３１０、３２０を含むカメラグループ３００の一例である。図４は、重複部分３０２、４０２を有する視野４１２、４２２、４３２を備えた３台のカメラ４１０、４２０、４３０を含むカメラグループ４００の一例である。そのため、グループのカメラ、したがってこれらのグループによって捕捉された画像は、重複する視野を有することがある。カメラグループの各カメラは、カメラのレンズをきれいにするためにワイパーおよび／または洗浄液を含み得る洗浄システム３１４、３２４、４１４、４２４、４３４を有してもよい。洗浄システムの動作は、例えば、コンピューティングデバイス１１０によって制御することができる。各カメラグループのカメラは、重複する視野が一定に保たれることを確実するために、互いに対して、および車両に対して固定されてもよい。
【００３０】
さらに、これらのグループの各カメラは、同じまたは異なる構成、例えば、異なるフィルタなどを有してもよい。場合によっては、画像は、異なるように露光されてもよく、つまり、画像は、異なるフィルタリング技術および／または露光期間を用いて捕捉されてもよい。例えば、図５および図６の画像５００および６００を参照すると、一方の画像５００は、第１の露光期間にわたってＮＤフィルタを備えたカメラ３１０などの第１のカメラを使用して捕捉され得、第２の画像６００は、第２の露光期間にわたってＮＤフィルタを備えていないカメラ３２０などの第２のカメラを使用して捕捉され得る。第１および第２の露光時間は、同じであっても異なっていてもよく、例えば、第２の露光期間は、第１の露光期間よりも短くてもよい。一例として、第１の画像５００は、交通信号５１０および車両５２０、ならびに、可能性として他の物体の粗い輪郭を含み得る。第２の画像６００は、露光過度の交通信号５１０および露光過度の車両５２０を含み得る。
【００３１】
車両１００のコンピューティングデバイス１１０はまた、輸送サービスの一部であるコンピューティングデバイスならびに他のコンピューティングデバイスなど他のコンピューティングデバイスとの間で情報を受信または転送することもできる。図７および図８は、それぞれ、ネットワーク７６０を介して接続された複数のコンピューティングデバイス７１０、７２０、７３０、７４０、および記憶システム７５０を含む例示的なシステム７００の絵図および機能図である。システム７００は、車両１００、および車両１００と同じまたは同様に構成され得る車両１００Ａ、１００Ｂも含む。簡潔にするため、いくつかの車両およびコンピューティングデバイスのみを図示しているが、通常のシステムは、これよりもはるかに多くのものを含み得る。
【００３２】
図７に示されるように、コンピューティングデバイス７１０、７２０、７３０、７４０の各々は、１つ以上のプロセッサ、メモリ、データ、および命令を含み得る。そのようなプロセッサ、メモリ、データ、および命令は、コンピューティングデバイス１１０の１つ以上のプロセッサ１２０、メモリ１３０、命令１３２、およびデータ１３４と同様に構成されてもよい。
【００３３】
ネットワーク７６０および介在ノードは、ブルートゥースやブルートゥースＬＥ、インターネット、Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ、イントラネット、仮想プライベートネットワーク、ワイドエリアネットワーク、ローカルネットワーク、１つ以上の企業に専有の通信プロトコルを使用するプライベートネットワーク、イーサネット、ＷｉＦｉ、およびＨＴＴＰ、ならびにそれらの様々な組み合わせなどの短距離通信プロトコルを含む様々な構成およびプロトコルを含み得る。そのような通信は、モデムおよび無線インターフェースなどの、他のコンピューティングデバイスとの間でデータを送受信することができるいずれかのデバイスによって容易に行われ得る。
【００３４】
一例では、１つ以上のコンピューティングデバイス７１０は、他のコンピューティングデバイスとの間でデータを受信、処理、および送信する目的で、ネットワークの異なるノードと情報を交換する、例えば、負荷分散されたサーバファームなど、複数のコンピューティングデバイスを有する１つ以上のサーバコンピューティングデバイスを含んでもよい。例えば、１つ以上のコンピューティングデバイス７１０は、ネットワーク７６０を介して、車両１００のコンピューティングデバイス１１０、または車両１００Ａの同様のコンピューティングデバイス、ならびにコンピューティングデバイス７２０、７３０、７４０と通信することができる１つ以上のサーバコンピューティングデバイスを含んでもよい。例えば、車両１００、１００Ａは、サーバコンピューティングデバイスによって様々な場所に配車され得る車両の集団の一部でもよいこの点について、サーバコンピューティングデバイス７１０は、車両１００および車両１００Ａなどの車両が自律運転モードで動作するために使用し得る自律制御ソフトウェアを検証するために使用できる検証コンピューティングシステムとして機能し得る。さらに、サーバコンピューティングデバイス７１０は、ネットワーク７６０を使用して、コンピューティングデバイス７２０、７３０、７４０のディスプレイ７２４、７３４、７４４などのディスプレイ上で、ユーザ７２２、７３２、７４２などのユーザに情報を送信および提示し得る。この点について、コンピューティングデバイス７２０、７３０、７４０は、クライアントコンピューティングデバイスと見なされ得る。
【００３５】
図７に示されるように、各クライアントコンピューティングデバイス７２０、７３０、７４０は、ユーザ７２２、７３２、７４２によって使用されることが意図されたパーソナルコンピューティングデバイスであり得、１つ以上のプロセッサ（例えば、中央処理装置（ＣＰＵ））、データおよび命令を記憶するメモリ（例えば、ＲＡＭおよび内蔵ハードドライブ）、ディスプレイ７２４、７３４、７４４などのディスプレイ（例えば、スクリーンを有するモニタ、タッチスクリーン、プロジェクタ、テレビ、または情報を表示するように動作可能な他のデバイス）、およびユーザ入力デバイス７２６、７３６、７４６（例えば、マウス、キーボード、タッチスクリーン、またはマイクロフォン）を含む、パーソナルコンピューティングデバイスと関連して通常使用される構成要素のすべてを有し得る。クライアントコンピューティングデバイスはまた、ビデオストリームを記録するためのカメラ、スピーカ、ネットワークインターフェースデバイス、およびこれらの要素を互いに接続するために使用されるすべての構成要素を含んでもよい。
【００３６】
クライアントコンピューティングデバイス７２０、７３０、および７４０は、各々、フルサイズのパーソナルコンピューティングデバイスを含み得るが、代替的に、インターネットなどのネットワーク上でサーバとデータを無線で交換することができるモバイルコンピューティングデバイスを含み得る。単なる例として、クライアントコンピューティングデバイス７２０は、携帯電話、または無線対応ＰＤＡ、タブレットＰＣ、ウェアラブルコンピューティングデバイスもしくはシステムなどのデバイス、またはインターネットもしくは他のネットワークを介して情報を取得することができるネットブックでもよい。別の例では、クライアントコンピューティングデバイス７３０は、図７に示されるように、腕時計として示されるウェアラブルコンピューティングシステムでもよい。一例として、ユーザは、小型キーボード、キーパッド、マイクロフォンを使用して、カメラを用いた視覚信号、またはタッチスクリーンを使用して、情報を入力し得る。
【００３７】
いくつかの例では、クライアントコンピューティングデバイス７４０は、車両１００および車両１００Ａなどの車両のコンピューティングデバイスから受信した支援の要求に応答するために、管理者またはユーザ７４２などの他の人間のオペレータによって使用される操作ワークステーションでもよい。図７および図８には単一の操作ワークステーション７４０のみが示されているが、典型的なシステムには、任意の数のそのようなワークステーションが含まれてもよい。さらに、操作ワークステーションはデスクトップコンピュータとして図示されているが、操作ワークステーションは、ラップトップ、ネットブック、タブレットコンピュータなど様々なタイプのパーソナルコンピューティングデバイスを含み得る。
【００３８】
メモリ１３０と同様に、記憶システム７５０は、ハードドライブ、メモリカード、ＲＯＭ、ＲＡＭ、ＤＶＤ、ＣＤ−ＲＯＭ、書き込み可能および読み出し専用メモリなどの、サーバコンピューティングデバイス７１０によりアクセス可能な情報を記憶することができる、任意のタイプのコンピュータ化された記憶装置であり得る。さらに、記憶システム７５０は、データが、同じまたは異なる地理的場所に物理的に位置し得る複数の異なる記憶デバイス上に記憶される、分散型記憶システムを含んでもよい。記憶システム７５０は、図７および図８に示すように、ネットワーク７６０を介してコンピューティングデバイスに接続されてもよく、および／またはコンピューティングデバイス１１０、７１０、７２０、７３０、７４０などの何れかに直接的に接続されるか、もしくは組み込まれてもよい。
【００３９】
例示的な方法
上述し、図に示した動作に加えて、様々な動作を、ここで説明する。以下の動作は、以下に説明する正確な順序で実行される必要がないことを理解されたい。むしろ、様々なステップが、異なる順序で、または同時に処理されてもよく、ステップもまた、追加または省略されてもよい。
【００４０】
上記のように、車両１００が走り回るとき、その知覚システム１７２は、様々なセンサを使用して、車両の環境内の物体を検出および識別することができる。この場合も、少なくともいくつかのこれらセンサは、前述のカメラグループを含み得る。所与のカメラグループのカメラが正しく動作していることを確実するために、これらのカメラの機能性を評価することができる。そのために、画像５００および６００などの２つ以上の画像が、カメラグループ３００（またはカメラグループ４００）などのカメラグループのカメラからコンピューティングデバイス１１０によって受信され得る。理想的には、これらの画像は、重複する視野内の同じ位置にある同じ物体を１つ以上捕捉するように、非常に近い時間で、または何らかの所定の期間内に捕捉される。
【００４１】
画像の処理を簡素化するために、画像のサイズが縮小されてもよい。例えば、コンピューティングデバイス１１０は、例えば、サムネイル化、および／または別様に、重複する視野に対応する部分のみを含むようにクロッピングすることによって、各画像のサイズを縮小することができる。図９を参照するに、画像５００および６００は、クロッピングされた領域９５０、９６０にクロッピングされ得る。これらのクロッピングされた領域は、視野３１２および３２２の重複部分３０２に対応する部分のみを含む。次に、クロッピングされた領域９５０、９６０は、ピクセル数を減らすために縮小またはサムネイル化され得る。結果として、カメラ３１０および３２０の視野の重複部分３０２に対応するピクセルのみを含み得る縮小画像９５２および９６２が得られる。この点について、両方の縮小画像が、同じ位置にある同じ物体を含む可能性は非常に高くなる。場合によっては、元の解像度の画像を使用して非常に小さなオクルージョンを検出するためにクロッピングが回避され得るが、これにより、処理は、カメラの位置合わせにおける小さなエラーに対してより敏感になり、同様に視差に対してより敏感になり得る。
【００４２】
次に、縮小された（または縮小されていない）画像を分析して、特徴ベクトルを生成することができる。例えば、第１の特徴ベクトルは、縮小画像９５２に対して生成され得、第２の特徴ベクトルは、縮小画像９６２に対して生成され得る。したがって、これらの特徴ベクトルは、縮小画像の色、エッジ、明るさ、コントラストなどの特徴を表す。場合によっては、特徴ベクトルは画像自体のピクセルを含み得る。
【００４３】
カメラグループからの縮小画像の第１の特徴ベクトルを使用して、１つ以上の類似性スコアが決定されてもよい。例えば、コンピューティングデバイス１１０は、（カメラグループの異なるカメラからの縮小画像のペアからの）特徴ベクトルの各ペアを比較して、類似性スコアまたはそれらが互いにどれほど類似しているかを決定することができる。
【００４４】
類似性スコアは、コサイン類似性測定、クラスタリング技術、または他のベクトル類似性測定技術を使用して決定することができる。例えば、構造類似性（ＳＳＩＭ）インデックスを使用して、縮小画像に対する特徴ベクトル間の類似性を測定し、類似性スコアを決定することができる。この点について、高い類似性スコアは、２つの縮小画像間の特徴の類似性が高いことを示し、低い類似性スコアは、２つの縮小画像間の特徴の類似性が低いことを示す。
【００４５】
別の場合には、類似性スコアは、モデルを使用して決定することができる。使用中、第１および第２の特徴ベクトルがモデルに入力され得、モデルは、画像の異なる部分（左側、右側、内部など）がどれだけ類似しているかを表す類似性スコアまたは一連の類似性スコアを提供し得る。
【００４６】
モデルは、決定木モデル、ランダムフォレストモデル、ニューラルネット、またはその他の機械学習モデルでもよい。決定木は、より高度なニューラルネットを訓練するデータが限られている状況で特に実用的であり得る。モデルは、コンピューティングデバイス１１０に局所的に、例えば、メモリ１３０に記憶され得る。モデルは、例えば、１つ以上のサーバコンピューティングデバイス７１０においてオフラインで訓練され、その後、ネットワーク７６０を介してコンピューティングデバイス１１０に送信され得る、および／またはメモリ１３０に直接的にロードされ得る。
【００４７】
モデルは、カメラグループ３００、４００のカメラ３１０、３２０、４１０、４２０、４３０などのカメラグループのカメラからの画像を訓練入力として、対応する類似性スコアを訓練出力として、実世界の例を使用して訓練されてもよい。訓練目的にはネガティブな例の数が限られていることがあるため、それに加えて、または代わりに、訓練は、他の点では良い画像から典型的な問題（障害物、レンズの汚れなど）を含む「悪い」画像をシミュレートするために故障注入技術を用いることを含む。次に、他の点では良い画像からの特徴ベクトルは、悪い画像からの特徴とペアにされて、訓練データとして低い類似性スコアを有するものとして識別され得る。同様に、良い画像からの特徴ベクトルは、それ自体とペアにされて、訓練データとして高い類似性スコアを有するものとして識別され得る。当然のことながら、全ての訓練と同様に、モデルを訓練するために使用される訓練データまたは例が多いほど、モデルによって生成される類似性の値の信頼性が高くなる。
【００４８】
場合によっては、モデルは、訓練されて、追加情報とともに使用されてもよい。例えば、第１の画像の深度データ、第２の画像の深度データ、太陽の場所（例えば、画像を捕捉したカメラに対する太陽の角度）、または時刻情報などの追加情報。深度データは、知覚システム１７２の１つ以上のライダーセンサによって提供されるセンサデータを各画像の視野（または座標系）に投影することによって生成される深度マップでもよい。時刻は、例えば、画像を捕捉したカメラによって提供され得、カメラに対する太陽の角度は、メモリ１３０に記憶された時刻と相関するデータから特定され得る。言い換えれば、コンピューティングデバイスは、データおよび時刻、ならびに車両の現在の場所に対する画像を捕捉したカメラの一方または両方の位置が与えられると、太陽の角度を決定することができる。
【００４９】
類似性スコアは、カメラの動作を評価するために使用されてもよい。例えば、コンピューティングデバイス１１０は、類似性スコアを閾値と比較して、縮小画像間の類似性が低すぎるか、またはむしろ縮小画像が非常に異なるためにカメラの１つにエラーがあるか、または塞がれている可能性が高いと決定してもよい。場合によっては、第１および第２の画像の異なる部分に類似性スコアがある場合、それらの異なる部分の類似性スコアを閾値と比較することにより、カメラレンズのどの部分にエラーがあるか、または塞がれているかを正確に識別することに役立ち得る。多くの場合、カメラのレンズの１つで結露がゆっくりと発生する場合など、変化を識別するには閾値で十分であり得る。閾値は、誤検知を多く発生させることなく、そのような変化に十分に敏感になるように、選択され得る。例えば、ＳＳＩＭスコアの範囲がー１から１の場合、閾値は０．２５以上またはそれ以下に設定されてもよい。それ自体はあまり意味のある数字ではない。
【００５０】
ただし、カメラのレンズの１つに亀裂が形成されている場合など、場合によっては、閾値は必ずしも問題を識別できるとは限らない。そのような場合、急な変化を識別するために、２つのカメラ間の多くの画像が、経時的にコンピューティングデバイス１１０によって比較されてもよい。例えば、累積和管理図（ＣＵＳＵＭ）は、必ずしも閾値を満たし得るとは限らない、経時的な類似性スコアにおける急な変化を識別するために使用され得るが、カメラの１つに問題があることも示し得る。
【００５１】
閾値に達した場合、または急な変化が検出された場合、車両のコンピューティングデバイスは、一方または両方のカメラに問題があると想定してもよい。そのため、車両のコンピューティングデバイスは適切な対応を取り得る。例えば、一方または両方のカメラ用の洗浄システム３１４、３２４、４１４、４２４、４３４などの洗浄システムが、自動的にアクティブにされてもよい。加えてまたは代わりに、要求が、カメラ画像（元の画像または縮小画像）をチェックするために、コンピューティングデバイス１１０から、例えば、ネットワーク７６０を介して、コンピューティングデバイス７４０およびユーザ７４２などのリモートアシスタンスオペレータに送信され得る。リモートアシスタンスオペレータまたはユーザ７４２は、問題を修正するのに単純な洗浄（ワイパーおよび洗浄液などの洗浄システムをアクティブにすることによる）で十分であるかどうか、車両が道の片側に寄るべきかどうか、またはカメラが重要なセンサでない場合は運転判断をするのに該カメラからの情報を使用して車両が単に停止するべきかどうかを決定することができる。場合によっては、リモートアシスタンスオペレータまたはユーザ７４２は、１つ以上の洗浄システムをリモートでアクティブにし（場合によっては、非アクティブに）し、第２の組の画像を見て洗浄が十分であったかどうかを確認することできる。コンピューティングデバイス１１０はまた、問題が処理されたことをリモートアシスタンスオペレータまたはユーザ７４２が確認できるよう、ネットワーク１６０を介してカメラグループの各カメラから更新された画像を送信してもよい。
【００５２】
場合によっては、コンピューティングデバイス１１０は、カメラグループの１つ以上のカメラに問題があるという情報に基づいて、無効な画像または画像の無効な部分の処理を回避することができる。加えて、または代わりに、コンピューティングデバイス１１０は、問題が解決されるまで、自律運転モードの車両を単に制御して道の片側に寄らせるようにしてもよい。
【００５３】
画像を処理し、変化を検出し、適切な対応を取るといった前述の処理は、グループ画像がカメラグループによって捕捉されるたびに、またはそれより少ない頻度で、定期的に実行され得る。
【００５４】
また、誤検知を回避するために、追加のステップが実行されてもよい。例えば、車両がトンネルを離れるとき、またはカメラの１つに近い物体が何らかの視差を引き起こすとき、カメラによって捕捉された複数のフレームが時間の経過とともに集約され得る。これらの集約された画像は、上記のように縮小され、特徴ベクトルを生成するために使用されてもよい。加えて、または代わりに、知覚システム１７２の１つ以上のライダーセンサによって提供されるセンサデータから生成される深度マップを使用して、車両１００の移動により視差が生ずる可能性が高い画像または縮小画像の領域を「スキップ」または別様に無視してもよい。この点について、特徴ベクトルは、視差により異なると予想される画像の一部または縮小画像からではなく、類似すると予想される画像の一部または縮小画像から生成され得る。
【００５５】
前述の技術は、環境光が良好な日中または日照時間中はうまく働くが、暗い環境や夜間の環境では、類似性スコアとＳＳＩＭの信頼性が低下することがある。この点について、夕方または夜間の時間に対応する１日の特定の時間帯に、２つの縮小画像における全ての特徴を一致させるのではなく、輝点または高輝度領域のみが比較されてもよい。例えば、典型的には、交通信号やテールライトなどの光源は、法的要件であるため既知の一定の明るさを有するため、このようなライトは縮小画像で可視になるはずである。この輝点アプローチは、ライトの法的要件に依存せず、車両のライトにのみ適用されるわけではない。むしろ、このアプローチは、ＮＤフィルタ（ほとんどの光を遮断する）を備えたカメラで輝点が可視である場合、同じ輝点は他のカメラ（より多くの光を受け取る）でも可視であるはずであるといった事実に依存している。
【００５６】
例えば、図１０および図１１の画像１０００および１１００を参照すると、一方の画像１０００は、第１の露光期間にわたってＮＤフィルタを備えたカメラ３１０などの第１のカメラを使用して捕捉され得、第２の画像１１００は、第２の露光期間にわたってＮＤフィルタを備えていないカメラ３２０などの第２のカメラを使用して捕捉され得る。第１および第２の露光時間は、同じであっても異なっていてもよく、例えば、第２の露光期間は、第１の露光期間よりも短くてもよい。理解を容易にするために、画像１０００および１１００は、夜間の時間帯に捕捉されているが、それぞれ画像５００および６００に対応する。したがって、両方の画像は、交通信号５１０および車両５２０を含むが、ＮＤフィルタの使用および露光時間のため、１１００ではいくらか可視画像であるが、画像１０００では可視ではない。本例では、画像は暗く見えるが、交通信号５１０の輝点１０１０および車両５２０のテールライトの輝点１０２０、１０２２は、画像１０００および１１００の両方において可視である。
【００５７】
この場合も、これらの画像に対する特徴ベクトルを生成する前に、上記のように画像をクロッピングし縮小することができる。さらに、これらの縮小画像に対して生成された特徴ベクトルは簡単にされ得る。例えば、画像１０００および１１００に対する特徴ベクトルは、輝点に対応する特徴の形状、場所、およびサイズといった特性のみを説明するために生成されてもよい。言い換えれば、特徴ベクトルは、縮小画像における発光物に対応する特徴のデータのみを含み得る。したがって、領域に光源が非常に少ない場合、この処理はあまり効果的ではない場合がある。しかしながら、画像の露光パラメータ（シャッタースピード、アナログゲイン、ＮＤフィルタなど）が既知であるため、画像は広範囲の露光パラメータに対して補正することもできる。例えば、ＳＳＩＭアプローチでは、最大約６ストップ（６４倍）の差異を比較的適切に処理することができる。
【００５８】
これらのベクトルに対する類似性スコアは、ＳＳＩＭを含む上述の例のいずれかを使用して再度決定することができる。当然のことながら、輝点の位置を表す特徴は、そのような状況での比較において最も重要な特性になる。この場合も、カメラの１つに問題があるかどうかを識別するために、類似性スコアは閾値と比較される、および／またはＣＵＳＵＭを用いて追跡されてもよい。その後、上記のように適切な対応が取られ得る。
【００５９】
図１２は、本明細書に記載のいくつかの態様による、２台以上のカメラの動作を評価するための例示的なフロー図１２００であり、コンピューティングデバイス１１０のプロセッサ１２０のように、１つ以上のコンピューティングデバイスの１つ以上のプロセッサによって実行され得る。本例では、ブロック１２１０において、第１のカメラによって捕捉された第１の画像が受信される。ブロック１２２０において、第２のカメラによって捕捉された第２の画像が受信される。第１のカメラおよび第２のカメラは、重複する視野を有する。ブロック１２３０において、第１の画像に対する第１の特徴ベクトルおよび第２の画像に対する第２の特徴ベクトルが生成されてもよい。ブロック１２４０において、第１の特徴ベクトルおよび第２の特徴ベクトルを使用して類似性スコアが決定されてもよい。ブロック１２５０において、２台のカメラの動作を評価するために類似性スコアが使用されてもよい。
【００６０】
本明細書で説明する特徴により、様々な照明条件での信頼性の高いカメラ評価が可能となる。上記のように、カメラが世界を適切に「見ている」かどうか、またはレンズに何らかの異物のごみが付いているか、結露があるか、機能していないピクセルがあるかなどを判断することは非常に困難である。これは、運転判断を行うためにそのようなカメラに依拠する自律型車両の場合に特に重要であり得る。
【００６１】
別段の記載がない限り、前述の代替例は、相互に排他的ではないが、独自の利点を達成するために様々な組み合わせで実施されてもよい。上述した特徴のこれらおよび他の変形および組み合わせは、特許請求の範囲によって定義される主題から逸脱することなく利用することができるので、実施形態の前述の説明は、特許請求の範囲によって定義される主題を限定するのではなく、例示としてみなされるべきである。さらに、本明細書に記載された実施例、ならびに「など」、「含む」などと表現された語句の提供は、特許請求の範囲の主題を特定の実施例に限定するものと解釈されるべきではなく、むしろ、実施例は、多くの可能な実施形態のうちの１つだけを例示することが意図されている。さらに、異なる図面中の同じ参照番号は、同じまたは類似の要素を特定することができる。
【図１】
2021534494.tif 000003
【図２】
2021534494.tif 000004
【図３】
2021534494.tif 000005
【図４】
2021534494.tif 000006
【図５】
2021534494.tif 000007
【図６】
2021534494.tif 000008
【図７】
2021534494.tif 000009
【図８】
2021534494.tif 000010
【図９】
2021534494.tif 000011
【図１０】
2021534494.tif 000012
【図１１】
2021534494.tif 000013
【図１２】
2021534494.tif 000014
【国際調査報告】
2021534494.tif 000015
2021534494.tif 000016