(57)【要約】      （修正有）【課題】一時的な誤りを検出及び訂正するための方法を提供する。【解決手段】方法は、カメラシステムから画像データを取得するステップ１１０と、第１の画像信号プロセッサ及び第２の画像信号プロセッサにより画像データを処理して、第１及び第２の出力データを作成するステップ１２０とを含む。少なくとも１つの統計モデルが、少なくとも第１及び第２の出力データに基づいて生成され、第１の出力データに誤りが存在しているかどうかを識別するために使用される。画像データの部分に関する訂正値が生成され、その訂正値は、統計モデルに基づく予想値であり、更新された出力データを生成するために使用される。更新された出力データは、次いで出力デバイスへ出力される。【選択図】図１
2020184320.tif 000002
【特許請求の範囲】
【請求項１】
一時的な誤りを検出及び訂正するための方法であって、
カメラシステムから画像データを取得するステップと、
第１の画像信号プロセッサ及び第２の画像信号プロセッサにより画像データを処理して、第１の出力データ及び第２の出力データを作成するステップ
と、
少なくとも前記第１の出力データ及び第２の出力データに基づいて少なくとも１つの統計モデルを生成するステップと、
前記第１の出力データに誤りが存在しているかどうかを前記統計モデルに基づいて識別するステップと、
画像データの部分に関する訂正値を生成するステップであって、前記訂正値が、前記統計モデルに基づく予想値である、ステップと、
前記訂正値を使用して、更新された出力データを生成するステップと、
前記更新された出力データを出力デバイスへ出力するステップと、
を含む方法。
【請求項２】
前記少なくとも１つの統計モデルを生成するステップが、前記カメラシステムによって取得された前の画像データ、及び少なくとも１つの現実世界の基準画像にさらに基づく、請求項１に記載の方法。
【請求項３】
前記画像データを処理する前記ステップが、前記カメラシステムによって取得された前記画像データの一部分を処理することを含む、請求項１又は２に記載の方法。
【請求項４】
前記訂正値を生成するステップが、少なくとも１つの機械学習アルゴリズムを前記出力に適用して、前記少なくとも１つの統計モデルを使用して前記誤りに関する予想値を生成することを含む、請求項１〜３のいずれか一項に記載の方法。
【請求項５】
更新された出力データを生成する前記ステップが、前記訂正値を前記第１の出力データと組み合わせることを含む、請求項１〜４のいずれか一項に記載の方法。
【請求項６】
更新された出力データを生成する前記ステップが、前記第１の出力データにおける前記誤りに対応する前記第２の出力データの一部分を前記訂正値と比較することと、前記部分が前記訂正値に実質的に対応する場合には、前記更新された出力データを、前記第２の出力データであるように設定することとを含む、請求項１〜５のいずれか一項に記載の方法。
【請求項７】
システム環境に関連している画像データを取得するためのカメラシステムと、
それぞれが、前記カメラシステムから受信された前記画像データを処理して第１の出力及び第２の出力を生成するための少なくとも２つの画像信号プロセッサと、
前記第１の出力における１つ又は複数の誤りを検出し、更新された出力データを生成するための誤り検出及び訂正モジュールであって、前記更新された出力データが、訂正された誤りを含み、前記訂正された誤りが、前記第１の出力及び第２の出力に基づいて少なくとも統計モデルを使用して生成される、誤り検出及び訂正モジュールと、
前記更新された出力データを前記誤り検出及び訂正モジュールから受信するための出力デバイスと、
を備えるセーフティクリティカルシステム。
【請求項８】
前記誤り検出及び訂正モジュールが、
前記第１の出力及び第２の出力に基づいて少なくとも１つの統計モデルを生成するための統計モデルユニットと、
第１の出力に誤りがあるかどうかを特定するための誤り特定ユニットと、
更新された出力データを生成するための出力生成ユニットであって、前記更新された出力データが、前記統計モデルによって生成された予想値を含む、出力生成ユニットと、
を備える、請求項７に記載のセーフティクリティカルシステム。
【請求項９】
前記誤り検出及び訂正モジュールが、前記予想値を前記第１の出力データと組み合わせるための組合せユニットをさらに備える、請求項８に記載のセーフティクリティカルシステム。
【請求項１０】
前記誤り検出及び訂正モジュールが、比較ユニットをさらに備え、前記比較ユニットが、前記予想値を前記第１の出力データにおける前記誤りに対応する前記第２の出力の一部分と比較して、前記第２の出力データの前記部分が前記予想値と実質的に同様である場合には、前記第２の出力データを出力するためのものである、請求項８又は９に記載のセーフティクリティカルシステム。
【請求項１１】
前記出力デバイスが、前記誤り検出及び訂正モジュールの前記出力を処理するためのプロセッサである、請求項７〜１０のいずれか一項に記載のセーフティクリティカルシステム。
【請求項１２】
前記誤り検出及び訂正モジュールが、少なくとも１つの機械学習プロセッサを備える、請求項７〜１１のいずれか一項に記載のセーフティクリティカルシステム。
【請求項１３】
格納されているコンピュータ可読命令のセットを備える持続性コンピュータ可読ストレージメディアであって、前記命令が、少なくとも１つのプロセッサによって実行されたときに、セーフティクリティカルシステムにおけるエラーを前記プロセッサに検出及び訂正させ、前記命令が、
カメラシステムから画像データを取得することと、
第１の画像信号プロセッサ及び第２の画像信号プロセッサにより画像データを処理して、第１の出力データ及び第２の出力データを作成することと、
少なくとも前記第１の出力データ及び第２の出力データに基づいて少なくとも１つの統計モデルを生成することと、
前記第１の出力データに誤りが存在しているかどうかを前記統計モデルに基づいて特定することと、
画像データの部分に関する訂正値を生成することであって、前記訂正値が、前記統計モデルに基づく予想値である、生成することと、
前記訂正値を使用して、更新された出力データを生成することと、
前記更新された出力データを出力デバイスへ出力することと、
を含む、持続性コンピュータ可読ストレージメディア。
【請求項１４】
少なくとも１つのカメラシステムと、
請求項１〜６のいずれか一項に記載の方法に着手するように構成されているプロセッサと、
を備える自律車両。
【発明の詳細な説明】
【技術分野】
【０００１】
[01]本開示は、セーフティクリティカルシステムの１つ又は複数のセンサによって取り込まれたデータにおける誤り、より詳細には、カメラによって取り込まれた画像データにおける誤りの検出及び訂正に関する。
【背景】
【０００２】
[02]自律車両などにおけるセーフティクリティカルシステムは、どんな行動を取るべきかに関する決定を行うために、環境に関するデータ、たとえば環境の画像をしばしば取り込む。データの１つ又は複数の部分における、たとえば、画像データのピクセルにおける誤りをシステムが検出した場合には、そのデータは、信頼できないと分類されるので、しばしば破棄される。システムが、物体の動きを経時的に分析することと、したがってデータの複数の部分における物体の動きを追跡把握することとを要求される場合には、欠けている部分を分析することが不可能であることに起因して、さらなる誤りがもたらされる結果になることがある。
【概要】
【０００３】
[03]本開示の第１の態様によれば、一時的な誤りを検出及び訂正するための方法が提供されており、この方法は、カメラシステムから画像データを取得するステップと、第１の画像信号プロセッサ及び第２の画像信号プロセッサにより画像データを処理して、第１及び第２の出力データを作成するステップと、少なくとも第１及び第２の出力データに基づいて少なくとも１つの統計モデルを生成するステップと、第１の出力データに誤りが存在しているかどうかを統計モデルに基づいて識別するステップと、画像データの部分に関する訂正値を生成するステップであって、訂正値が、統計モデルに基づく予想値である、ステップと、訂正値を使用して、更新された出力データを生成するステップと、更新された出力データを出力デバイスへ出力するステップとを含む。
【０００４】
[04]本開示の第２の態様によれば、システム環境に関連している画像データを取得するためのカメラシステムと、それぞれが、カメラシステムから受信された画像データを処理して、第１の出力及び第２の出力を生成するための少なくとも２つの画像信号プロセッサと、第１の出力における１つ又は複数の誤りを検出し、更新された出力データを生成するための誤り検出及び訂正モジュールであって、更新された出力データが、訂正された誤りを含み、訂正された誤りが、第１の出力及び第２の出力に基づいて少なくとも統計モデルを使用して生成される、誤り検出及び訂正モジュールと、更新された出力データを誤り検出及び訂正モジュールから受信するための出力デバイスとを備えるセーフティクリティカルシステムが提供されている。
【０００５】
[05]本開示の第３の態様によれば、格納されているコンピュータ可読命令のセットを備える持続性コンピュータ可読ストレージメディアが提供されており、それらの命令は、少なくとも１つのプロセッサによって実行されたときに、セーフティクリティカルシステムにおけるエラーをプロセッサに検出及び訂正させ、それらの命令は、カメラシステムから画像データを取得することと、第１の画像信号プロセッサ及び第２の画像信号プロセッサにより画像データを処理して、第１及び第２の出力データを作成することと、少なくとも第１及び第２の出力データに基づいて少なくとも１つの統計モデルを生成することと、第１の出力データに誤りが存在しているかどうかを統計モデルに基づいて特定することと、画像データの部分に関する訂正値を生成することであって、訂正値が、統計モデルに基づく予想値である、生成することと、訂正値を使用して、更新された出力データを生成することと、更新された出力データを出力デバイスへ出力することとを含む。
【０００６】
[06]本開示の第４の態様によれば、少なくとも１つのカメラシステムと、一時的な誤りを検出及び訂正するための方法に着手するように構成されているプロセッサとを備える自律車両が提供されている。
【図面の簡単な説明】
【０００７】
[07]単なる例として与えられている、本発明の好ましい実施形態についての以降の説明から、実施形態のさらなる特徴及び利点が明らかになるであろう。その説明は、添付の図面を参照しながら行われており、それらの図面においては、同様の特徴を示すために同様の参照番号が使用されている。
【図１】図１は、例による方法を示す流れ図である。
【図２】図２は、例によるシステムを概略的に示す図である。
【図３】図３は、例による図１の方法の機能の概略図である。
【詳細な説明】
【０００８】
[08]図を参照しながら、以降の説明から、例によるシステム及び方法の詳細が明らかになるであろう。この説明においては、説明の目的のために、特定の例についての多くの具体的な詳細が記載されている。本明細書における「例」又は類似の言葉への言及は、その例に関連して記述されている特徴、構造、又は特性が、少なくともその１つの例には含まれているが、その他の例に必ずしも含まれているとは限らないということを意味している。特定の例は、それらの例の根底にある概念の説明及び理解を容易にするために特定の特徴が省略されて及び／又は必要に応じて簡略化された状態で概略的に記述されているということにさらに留意されたい。
【０００９】
[09]セーフティクリティカルシステムにおいては、一時的な誤りが、システムの構成要素によって作成及び格納されるデータに影響を与える可能性がある。そのような一時的な誤りは、システムの設計又は構造における欠陥によって引き起こされる可能性がある。或いは、ストレージデバイス及びプロセッサにおいては、構成要素のシリコンダイに粒子が当たった場合にチップレベルの一時的な誤りが発生する可能性がある。チップレベルの一時的な誤りは、データ（たとえば、ストレージ回路における電子）が変化して物理的なチップそのものは変化しないという結果をもたらす。このような相互作用を引き起こす可能性がある粒子は、パッケージ崩壊からのアルファ粒子、エネルギー中性子及び陽子を生み出す宇宙線、並びに熱中性子（周囲との熱平衡に至るまで運動エネルギーを失ってきた中性子）を含むが、それらには限定されない。たとえば、特定の特性を有する粒子がシステムの構成要素におけるフリップフロップに当たった場合には、その粒子は、フリップフロップが状態を別の値へ変えるようにさせることがある。この相互作用は非常に小さいので、シリコンダイの物理的な構造を損なわないが、シリコンダイの上に格納されているデータを破損することがあり、したがって、プロセッサによって着手されているプロセスに影響を与えることがある。同様に、粒子がデータバスと相互作用した場合に誤りが発生して、ノイズを引き起こす可能性があり、そのノイズがデータビットとして解釈され、以てさらなる誤りを引き起こすことがある。
【００１０】
[10]一時的な誤りは、現実世界においては頻繁にあり、メモリにおける粒子の衝突によって引き起こされて一般に不可避である誤りなどの一時的な誤りはさらに、システムによって受信されるデータの分析上に含意を有する可能性がある。したがって、現実世界においては、セーフティクリティカルシステムは、そのような一時的な誤りを検出すること及び潜在的に訂正することが可能である必要がある。これらの誤りを検出するための一例が、冗長システムをロックステップで動作させることである。いくつかのシステムは、システムオンチップとして実装される可能性があり、したがって、システムの複数の構成要素が一時的な誤りの影響を受けやすい可能性がある。同様に、画像信号プロセッサ、及びグラフィカル処理ユニットなどのその他のプロセッサにおいては、チップの大部分が、ピクセルデータのアルゴリズム処理の専用とされている。これらの一時的な誤りの検出及び訂正を確実にすることが必要である。なぜなら、それらの一時的な誤りは、処理パイプラインの全体を通じてデータにおけるさらに重大な誤りをもたらす可能性があるからである。
【００１１】
[11]画像処理アプリケーションに関しては、誤り、及びその誤りの重大さの特定は、特に困難である。たとえば、自律車両のカメラシステムにおいては、誤りが検出されなければならないだけでなく、誤りに対応する最善の方法も特定されなければならない。誤りは、出力を冗長システムの出力と比較することによって検出されることが可能であり、その比較が誤りを示した場合には、システムは、誤りを含んでいるデータを破棄することが可能である。なぜなら、そのデータにおける訂正値が何であることを意図されているかに関しては分からないであろうからである。
【００１２】
[12]しかしながら、単一ビットの誤りを、又は画像の数ピクセルにおける誤りなどの複数の誤りでさえも有するデータが、自律車両システムにとって依然として有用である可能性がある。これらのシステムは、軽微な欠陥を伴う入力を利用することが一般に可能である。たとえば、コンピュータビジョンシステムは、いくらかの許容誤差を伴う最適ではない入力画像データを訂正するために利用可能な画像訂正アルゴリズム及びその他の方法を既に有している可能性がある。ほとんどのコンピュータビジョンアルゴリズムは、たとえば、レンズ効果、及びレンズ上の汚れなどのその他の障害物に起因する最適ではない画像データを分析することが可能である。いくつかのコンピュータビジョンアルゴリズムは、部分的に見えにくくされた物体及び／又は人を検出することも可能である。
【００１３】
[13]上述されているように、セーフティクリティカルシステムは、たとえばロックステップでデータを冗長システムからのデータと比較することによって、誤りがあるということが特定された場合には、そのデータをしばしば破棄する。これは理想的ではなく、多くのシステム、特に自律車両において使用されるシステムは、決定、たとえば障害物を検出及び追跡把握することを行うためのデータの連続したストリームを必要とする。誤りが検出され、並びにシステムがリセットされ、及び／又は破損されたデータが破棄された場合には、データの連続性が中断され、したがって、動いている物体を追跡把握するビジョンシステムの能力に影響を与えることがある。さらに、システムがリセットされた場合には、このことによって、物体の動きの情報又は履歴をシステムが有していない期間が生じることになり、したがってシステムは、フレームを通じて、動いている物体を追跡把握する能力を失うことになる。
【００１４】
[14]図１は、例による方法を示す流れ図である。アイテム１１０において、データが１つ又は複数のセンサから取得され、たとえば、画像データがカメラから取得されることが可能である。１つ又は複数のセンサは、自律車両などのデバイスに関連付けられることが可能である。センサは、複数の異なる波長から環境に関する情報を取得することが可能である。たとえば、画像センサは、画像を取り込むための任意の適切なフォトセンサであることが可能であるセンサピクセルのアレイを備えることが可能であるのが典型的である。典型的なセンサピクセルは、入射光を電子的な信号又はデータへと変換することが可能であるフォトダイオードなどの感光性エレメントを含む。センサピクセルは、たとえば、電荷結合素子（ＣＣＤ）又は相補型金属酸化膜半導体（ＣＭＯＳ）であることが可能である。露光は、画像センサのそれぞれのセンサピクセルによって光が取り込まれる時間期間、及び／又はそれぞれのセンサピクセルによって生成される電気信号に対して増幅器によって適用される利得を設定するのが典型的である。したがって、入射光に対する画像センサの感度は、露光によって一般に特定される。画像センサは、単一の露光を使用して画像データを取り込むように構成されることが可能である。たとえば、画像センサのすべてのセンサピクセルは、互いに同じ期間中に、又は互いに同じ長さの時間期間中に光を取り込むことが可能である。しかしながら、その他の例においては、本明細書において記述されている例とともに使用するための画像センサは、少なくとも２つの異なる露光を伴うセンサピクセルを使用して画像データを取り込むように構成されている多重露光画像センサであることが可能である。
【００１５】
[15]したがって画像データは、それぞれのセンサピクセルによって取り込まれた光の少なくとも１つの特性を表すことが可能であり、それらの特性は、それぞれのセンサピクセルによって取り込まれた光子の数に比例することが可能である。強度は、取り込まれた光の輝度を表すことが可能であり、その輝度は、たとえば、絶対強度よりもむしろ単位面積あたりの光の強度の測定値である。その他の例においては、画像データは、取り込まれた光の明るさを表すことが可能であり、その明るさは、輝度の知覚に対応すると考えられることが可能であり、輝度に比例することが可能であり、又は輝度に比例しないことも可能である。一般には、画像データは、画像データによって表される画像の見た目を表すために使用されることが可能である任意の測光品質又は特性を表すことが可能である。画像データは、ＲＡＷ画像フォーマットなどの任意の適切なフォーマットであることが可能である。画像データは、フレームバッファに保存されて、又はフレームバッファに保存されずに、ＲＡＷ画像データをファイルに保存せずに、画像センサからストリーミングされることも可能である。しかしながら、そのようなケースにおいては、ＲＡＷ画像データの処理後に取得された画像データは、ファイルに保存されることが可能である。
【００１６】
[16]その他の例においては、センサは、赤外線カメラ、又は可視光スペクトルにおける環境情報を取得することが可能なカメラであることが可能である。いくつかの例においては、デバイスは、カメラの代わりに、ソナー又は超音波放射など、デバイスに関連付けられている出力手段から放射される電波を受信するためのその他のセンサを備えることが可能である。
【００１７】
[17]いったんデータが取得されたら、この方法はアイテム１２０へ進み、アイテム１２０では、ロックステップで動作するように構成されている２つ以上のプロセッサによってデータが処理される。所望のレベルの冗長性に応じて、プライマリプロセッサ及び１つ又は複数の冗長バックアッププロセッサがある。プロセッサの出力は、どんな行動を自律車両が取るべきかを特定するために使用されることが可能である。プロセッサは、センサによって取り込まれたデータの全体の上で動作する必要はなく、データの一部分の上で動作するだけでよい。たとえば、物体の動きを追跡把握することが必要であるとシステムが特定した場合には、又は決定を行うためにはデータの一部のみが必要とされるということが特定された場合には、処理は、画像の一部分の上で動作することが可能である。
【００１８】
[18]次いでアイテム１３０において統計モデルが生成される。統計モデルは、誤りを識別することと、受信されたデータ並びにプライマリプロセッサ及び冗長プロセッサの出力に基づいて予想訂正値を生成することとが可能である。さらに統計モデルは、基準としての現実世界の画像の統計的尤度に基づくことも可能であり、その基準に照らして実際の訂正値が計算されることが可能であり、次いで、誤りのあるデータを統計モデルにマッチするデータと取り替えるために使用されることが可能である。統計モデルは、ローカルピクセル値どうしの分散と、特定のノイズモデル及び現在のセンサ利得を所与とした予想分散とを比較することによって算出されることが可能である。たとえば、フリップされた最上位ビットは、高い分散をもたらす可能性がより高い。ノイズモデルは、ポアソン分布と正規分布との組合せによってモデル化されることが可能である。たとえば、データが画像データである場合には、誤りは、その画像データのピクセルにある可能性がある。現実世界の基準画像に基づく統計モデルは、ピクセル置換値を生成できることが可能である。統計モデルは、同じ入力上で動作するその他のプロセッサの出力に基づくことも可能である。統計モデルは、出力の複数の部分に基づくことも可能であり、たとえば、画像データにおける個々のピクセルと、近隣の部分と、それらの部分の間における比較とが、データに関する品質又は妥当性の測定基準を抽出することなどによって、データの品質を特定する。統計モデルは、１つ又は複数の機械学習アルゴリズムを使用して、使用される信号処理アルゴリズム、たとえば、機械学習アルゴリズムをトレーニングする際に使用されるカーネルサイズ、並びにデータの内容に基づく統計、及び前の画像フレームなど、前に取り込まれたデータを考慮に入れて生成されることが可能である。センサデバイス及び／又は作成されるデータ出力のタイプにかかわらずに、類似の方法が使用されることが可能であり、したがって統計モデルは、赤外線カメラ、超音波装置、又は、セーフティクリティカルシステムにおいて使用するのに適したその他の任意のセンサタイプによって受信されるデータ用に生成されることも可能であるということが理解されるであろう。
【００１９】
[19]いったん統計モデルが生成されたら、この方法はアイテム１４０へ進み、アイテム１４０では、統計モデルを使用してプライマリプロセッサの出力が分析されて、統計モデルに基づいて予想されることになるものと出力との間に差があるかどうかが識別される。差が識別されない場合には、プライマリプロセッサによって着手された処理は、予想されることになるとおりであるということ、及び誤りはないということが想定されることが可能である。したがって、この方法はアイテム１７０へ進み、プライマリプロセッサの出力は、悪影響を伴わずにセーフティクリティカルシステムにおけるさらなる方法に提供される。逆に、１つ又は複数の差が識別された場合には、出力のうちの少なくとも１つに誤りがあり、誤りの深刻さが特定されることが可能である。誤りの深刻さは、データにおける誤りの特徴、たとえば、誤りがデータの最上位ビットにおいて発生しているか、又は最下位ビットにおいて発生しているか、データに複数の誤りがあるかどうか、及びデータにおける誤りの場所に基づくことが可能である。検出された複数の誤りがある場合には、出力の全体が破損されていないことを確かめることも必要である。
【００２０】
[20]プライマリプロセッサの出力に誤りがあるということが特定された場合には、この方法はアイテム１５０へ進み、アイテム１５０では、訂正値が生成される。訂正値は、統計モデルと、プライマリプロセッサの出力の全体とに基づくことが可能であり、又は代替として、統計モデルに、及びプライマリプロセッサの出力の部分、たとえば、画像データにおける個々のピクセルに基づくことが可能である。訂正値を生成するために使用される統計モデルは、現実世界のデータ上でトレーニングされた機械学習アルゴリズム、及びその他の処理アルゴリズムを含むがそれらには限定されないさまざまな方法に基づくことが可能である。検出された誤りを取り替えるために使用される値は、別のプロセッサの出力からの対応する値であることが可能である。或いは、誤りを取り替えるために使用される値は、たとえば、双線形補間又は異方性補間によって周囲の値から補間されることが可能である。したがって、統計モデルを使用することによって、誤りのある部分の最良の推定が生成され、以てシステムによって使用されることが可能であるデータの量を最大化すること、及び軽微な誤りを含むデータを破棄する必要性を低減することが可能である。たとえば、データが画像データであり、その画像データのピクセルのうちの１つのピクセル値に誤りが存在する場合には、誤りのある部分と、画像データの周囲のピクセルのケースにおいては周囲の部分とに関連して生成される統計モデルが使用されて、出力のうちのそれぞれに関する訂正されたピクセル値を生成することが可能であり、訂正された値のうちのそれぞれに基づいて最も妥当な値が選ばれることが可能である。最も妥当な値は、基準として使用される現実世界の画像に基づくことが可能であり、その基準に照らして実際の誤りのあるピクセルがテストされ、以て誤りのある部分が、予想された統計モデルにマッチする妥当なデータと取り替えられる。
【００２１】
[21]いったん訂正値が生成されると、この方法はアイテム１６０へ進み、アイテム１６０では、最も妥当な出力が生成される。最も妥当な出力は、訂正値を使用してプライマリプロセッサの出力における誤りのあるデータを取り替えることによって生成される。いくつかの例においては、妥当なデータが冗長プロセッサの出力のうちの１つと実質的に同様である場合には、そのデータは、その全体がそのプロセッサの出力によって取り替えられることが可能である。この最も妥当な出力は、次いでアイテム１７０において出力デバイスへ出力される。
【００２２】
[22]図２は、例によるシステム２００を概略的に示している。システム２００は、システムが存在する環境に関するデータを受信するための１つ又は複数の感知デバイス２１０を備える。たとえば、感知デバイス２１０は、環境に関する可視光情報、又は代替として赤外線、若しくは光のその他の波長を取り込むことが可能なカメラであることが可能である。感知デバイス２１０の出力は、画像信号プロセッサなどの少なくとも２つのプロセッサ２２０ａ、２２０ｂによって処理される。プロセッサのうちの１つ２２０ａがプライマリプロセッサであり、その一方でその他のプロセッサ２２０ｂは、プライマリプロセッサ２２０ａとロックステップで同じ入力を処理するように構成されている冗長プロセッサである。したがって、プロセッサ２２０ａ、２２０ｂのそれぞれは、同じ処理に着手し、同じアルゴリズムをデータに適用する。感知デバイス２１０が、たとえば超音波センサから、環境に関するその他の情報を取得した場合には、その他のタイプのプロセッサが使用されることが可能であるということが理解されるであろう。
【００２３】
[23]プロセッサ２２０ａ、２２０ｂの出力は、次いで誤り検出及び訂正デバイス２３０へ渡される。誤り検出及び訂正デバイス２３０は、ストレージと、出力を分析及び生成するための機械学習プロセッサなどの少なくとも１つのプロセッサとを備えることが可能である。メモリは、１つ又は複数の感知デバイスから受信された入力データ、並びにプライマリプロセッサ２２０ａ及び冗長プロセッサ２２０ｂからの出力を一時的に格納できることが可能である。ストレージは、カメラ又はその他の感知デバイスを収納する同じデバイスに関連付けられることが可能であり、たとえば、ストレージは、自律車両に関連付けられることが可能である。ストレージデバイスは、リモートサーバなど、デバイスの外部にあること、又はカメラシステムそのもののストレージなど、入力デバイスの一部を形成することが可能である。データは、デバイスのストレージ内に格納されることが可能であり、ストレージは、ＤＤＲ−ＳＤＲＡＭ（ダブルデータレートシンクロナスダイナミックランダムアクセスメモリ）などのランダムアクセスメモリ（ＲＡＭ）又はその他の揮発性メモリであることが可能である。その他の例においては、ストレージは、読み取り専用メモリ（ＲＯＭ）などの不揮発性メモリ又はフラッシュメモリなどのソリッドステートドライブ（ＳＳＤ）であること又はそれらを含むことが可能である。例におけるストレージは、さらなるストレージデバイス、たとえば、磁気、光、若しくはテープメディア、コンパクトディスク（ＣＤ）、デジタル多用途ディスク（ＤＶＤ）、又はその他のデータストレージメディアを含むことが可能である。ストレージは、デバイスから取り外し可能であること又は取り外し不能であることが可能である。いくつかの例においては、ストレージデバイスに格納されるデータは、画像の少なくとも一部分を表し、デバイスの外部の画像センサによって取り込まれることが可能である。
【００２４】
[24]誤り検出及び訂正デバイス２３０の少なくとも１つの構成要素は、プロセッサ２２０ａ、２２０ｂからの出力に基づいてさまざまな統計モデルを計算するための統計モデル化モジュール２３２を備える。統計モデル化モジュール２３２は、機械学習アルゴリズムを備えることが可能であり、その機械学習アルゴリズムは、出力のうちのそれぞれを分析して、データの予想値を特定するためのさまざまな統計モデルを作成するためのものである。そのような統計モデルは、ローカルピクセル値どうしの分散と、特定のノイズモデル及び現在のセンサ利得を所与とした予想分散とを比較することを含む。
【００２５】
[25]いったん統計モデルが計算されたら、それらの統計モデルは、誤り特定モジュール２３４におけるプライマリプロセッサ２２０ａの出力に誤りがあるかどうかを特定するために使用される。誤り特定モジュール２３４は、データを統計モデルに比較し、値が、モデルに基づいて予想されることになるものであるかどうかを特定する。たとえば、データが、カメラからなどの画像データである場合には、誤り特定モジュール２３４は、ピクセル値が、統計モデルに基づく予想値に対応することをチェックする。ピクセル値が予想値に対応する場合には、プライマリプロセッサの出力は、出力デバイス２４０に提供されることが可能である。或いは、ピクセル値が、統計モデルによって提供される予想値に対応しない場合には、訂正された出力が生成される必要がある。
【００２６】
[26]いくつかの例においては、誤りが検出された場合には、出力生成モジュール２３６は、プロセッサ２２０ａ、２２０ｂのうちのそれぞれの出力を統計モデルに比較して、出力のうちのどれが、出力するのに最も適しているかを特定するのを補助することが可能である。なぜなら、選択された出力は、より高い品質の出力である可能性があるからである。その他の例においては、統計モデルは、誤りに関する予想値を生成するために使用されることが可能である。たとえば、データが画像データである場合には、統計モデルは、誤りのあるピクセルをデータが含んでいるということが特定された場合に予想ピクセル値を生成するために使用されることが可能である。またさらなる例においては、これらの方法の組合せが使用されることが可能であるということが理解されるであろう。これは、誤りのある複数のピクセルなど、データに複数の誤りがある場合に適切である可能性がある。
【００２７】
[27]出力生成モジュール２３６は、訂正されたデータを出力デバイス２４０へ出力する。出力デバイス２４０は、自律車両のメインプロセッサであることが可能であり、その場合には、データは、車両が取るべき行動に関する決定を行うために使用される。
【００２８】
[28]図２において示されている例は、誤り検出及び訂正モジュール２３０を処理パイプラインの終わりに示しているが、誤り検出及び訂正モジュール２３０は、プロセッサ２２０ａによって着手されるオペレーションどうしの間に配置されることが可能であるということが理解されるであろう。そのような例においては、誤り検出及び訂正モジュール２３０の出力は、出力デバイス２４０へ渡される前に、さらなる処理のためにプロセッサへ戻される。
【００２９】
[29]図３は、例による図１の方法の機能の概略図であり、この例では、データは、カメラによって受信される画像データである。カメラによって取り込まれた画像データは、複数の出力３１０ａ、３１０ｂを作成するための処理用として複数の画像信号プロセッサに提供される。処理オペレーション中に、一時的な誤りが、画像信号プロセッサにおけるフリップフロップの出力３１５ｆを破損しており、したがって画像データにおけるピクセル値が破損されている。画像データが画像信号プロセッサによってさらに処理され、ノイズ低減アルゴリズムなどのその他の信号処理アルゴリズムが出力に適用される場合には、誤りが近隣のピクセルにわたってにじませられ、したがって誤りの影響は低減されるが、広められる。
【００３０】
[30]出力データは次いで、図２に関連して上述されている誤り検出及び訂正モジュールへ渡ることになり、そこでは、ロックステップで画像データを処理するように構成されているプライマリ画像信号プロセッサ及びその他の画像信号プロセッサの出力データ３１０ａ、３１０ｂに基づいて統計モデル３２０が生成される。冗長画像信号プロセッサの出力３１０ｂは、プライマリ画像信号プロセッサの出力３１０ａに影響を与えた同じ一時的な誤りによって影響を与えられる可能性は低い。誤り検出及び訂正モジュールは、誤りがあるかどうか、及びその誤りの深刻さはどれぐらいかを特定することが可能である。出力データに軽微な誤りのみがあるということを統計モデル３２０が示している場合に、たとえばアイテム３３０において、ピクセル値３３０ｆの最下位ビットにエラーがある場合には、誤り検出及び訂正モジュールは、そのデータが出力デバイスによって使用可能であるということを依然として特定することが可能である。いくつかの例においては、誤りが深刻ではないということが特定された場合でさえ、誤り検出及び訂正モジュールは、冗長画像信号プロセッサのうちの１つの出力３１０ｂのうちの１つがよりよい品質の出力であるということを特定することが可能であり、代わりにその出力を出力デバイスに提供することが可能である。たとえば、統計モデルは、出力が冗長画像信号プロセッサのうちの１つの出力３１０ｂに一般に対応するはずであるということを示すことと、したがってその出力３１０ｂを出力デバイスに提供することとが可能である。
【００３１】
[31]逆に、一時的な誤りが処理パイプラインの終わりに発生するか、又は誤りのあるピクセル値が深刻な誤りであるということが特定された場合には、アイテム３３０において示されているように周囲のピクセルの間に誤りが広まっている可能性は高くないので、誤り検出及び訂正モジュールは、その誤りが、訂正された値３４０を生成することを保証するには著しく深刻であるということを特定することが可能である。訂正された値３４０が計算される必要があるということが特定された場合には、これは、統計モデル３２０に基づく予想値、並びにプライマリ出力３１０ａに関連付けられているその他のデータ３３０に基づくことが可能である。次いでプライマリ出力３１０ａ及び訂正された値３４０が組み合わされて、訂正された出力３５０を作成することが可能であり、訂正された出力３５０は、出力デバイスへ渡される。或いは、冗長画像信号プロセッサのうちの１つの出力３１０ｂのうちの１つが、統計モデルによって示唆されている所望の出力に十分にマッチすることが可能であり、その冗長プロセッサの出力データは、訂正された出力として使用されること、及び出力デバイスへ渡されることが可能である。
【００３２】
[32]訂正されたピクセルの取り替え、及び／又は計算は、上述されているノイズ低減アルゴリズムの前など、処理パイプラインにおける任意のポイントで発生することが可能であるということが理解されるであろう。これは、誤りが累積しないこと、又は空間的に広められることを確実にする。なぜなら、誤り検出及び訂正モジュールが、処理パイプラインの全体を通じて複数のポイントにおいてプロセッサどうしの複数の出力の間における平等を強いるからである。
［符号の説明］
２００  システム
２１０  感知デバイス
２２０ａ  プライマリプロセッサ
２２０ｂ  その他のプロセッサ
２３０  誤り検出及び訂正デバイス
２３２  統計モデル化モジュール
２３４  誤り特定モジュール
２３６  出力生成モジュール
２４０  出力デバイス
３１０ａ  出力
３１０ｂ  出力
３１５ｆ  出力
３２０  統計モデル
３３０ｆ  ピクセル値
３４０  訂正された値
３５０  訂正された出力
【００３３】
[33]上述の実施形態は、本発明の説明例として理解されるべきである。本発明のさらなる実施形態が考えられる。任意の一実施形態に関連して記述されている任意の特徴は、単独で、又は記述されているその他の特徴と組み合わせて使用されることが可能であり、実施形態のうちのその他の任意のもの、又は実施形態のうちのその他の任意のものの任意の組合せの１つ又は複数の特徴と組み合わせて使用されることも可能であるということを理解されたい。さらに、上述されていない均等形態及び変更形態が、添付の特許請求の範囲において定義されている本発明の範囲から逸脱することなく採用されることも可能である。
【図１】
2020184320.tif 000003
【図２】
2020184320.tif 000004
【図３】
2020184320.tif 000005
【外国語明細書】
2020184320000001.pdf