(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6548708
(24)【登録日】2019年7月5日
(45)【発行日】2019年7月24日
(54)【発明の名称】画像処理システムのための低レイテンシの試験機
(51)【国際特許分類】
G06T 1/00 20060101AFI20190711BHJP
G06T 1/20 20060101ALI20190711BHJP
【FI】
G06T1/00 330Z
G06T1/20 B
【請求項の数】15
【外国語出願】
【全頁数】15
(21)【出願番号】特願2017-223886(P2017-223886)
(22)【出願日】2017年11月21日
(65)【公開番号】特開2019-96000(P2019-96000A)
(43)【公開日】2019年6月20日
【審査請求日】2018年1月18日
(73)【特許権者】
【識別番号】506012213
【氏名又は名称】ディスペース デジタル シグナル プロセッシング アンド コントロール エンジニアリング ゲゼルシャフト ミット ベシュレンクテル ハフツング
【氏名又は名称原語表記】dspace digital signal processing and control engineering GmbH
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【弁理士】
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100135633
【弁理士】
【氏名又は名称】二宮 浩康
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】フランク シュッテ
(72)【発明者】
【氏名】ハーゲン ハウプト
(72)【発明者】
【氏名】カーステン グラッシャー
【審査官】
笠田 和宏
(56)【参考文献】
【文献】
特開2010−134302(JP,A)
【文献】
国際公開第2006/057185(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
IPC G06T 1/00− 1/60
(57)【特許請求の範囲】
【請求項1】
画像処理システム(UUT)のための試験機であって、
前記試験機内に第1の演算ユニット(CPU)が配置されており、
前記第1の演算ユニット(CPU)は、周囲モデル(MOD)に関するシミュレーションソフトウェアによってプログラミングされており、
前記シミュレーションソフトウェアは、第1の位置x(t)および第1の速度ベクトルv(t)を計算し、前記第1の位置x(t)および前記第1の速度ベクトルv(t)を、前記周囲モデル(MOD)における第1の仮想的なオブジェクト(VEH1)に対応付けるように構成されており、
前記試験機内に第2の演算ユニット(GPU)が配置されており、
前記第2の演算ユニット(GPU)は、前記周囲モデルにおける前記第1の仮想的なオブジェクト(VEH1)の位置を周期的に読み込み、少なくとも読み込まれた前記位置に基づいて、前記周囲モデル(MOD)の2次元の第1の投影図を表す第1の画像データを計算するように構成されており、
前記試験機内にアダプタモジュール(AD)が配置されており、
前記アダプタモジュール(AD)は、前記第1の画像データを読み込み、前記画像処理システム(UUT)の第1のイメージングセンサのエミュレーションによって前記第1の画像データを処理し、処理された前記第1の画像データを前記画像処理システム(UUT)に供給するように構成されており、
前記第1の演算ユニット(CPU)は、前記処理された第1の画像データに基づいて、前記画像処理システム(UUT)によってアクチュエータのために計算された制御データを読み込み、前記制御データを考慮して、前記第1の仮想的なオブジェクト(VEH1)に新しい第1の速度ベクトルを対応付けるように構成されている、
試験機において、
前記試験機は、前記第2の演算ユニット(GPU)による前記第1の画像データの前記計算の開始から、前記アダプタモジュール(AD)による前記第1の画像データの前記処理の完了までに経過する時間間隔の長さΔtを測定するように構成されており、
前記第1の演算ユニット(CPU)は、前記時間間隔の長さΔtを読み込み、前記時間間隔の長さΔtに基づいて前記第1の画像データのレイテンシLを推定するように構成されており、
前記第1の演算ユニット(CPU)は、前記第1の位置x(t)と前記第1の速度ベクトルv(t)と推定された前記レイテンシLとを考慮して前記第1の仮想的なオブジェクトの第1の外挿位置x(t+L)を求めるように構成されており、したがって前記第1の外挿位置x(t+L)が、時点t+Lにおける前記第1の仮想的なオブジェクト(VEH1)の前記第1の位置の推定値となり、
前記第2の演算ユニット(GPU)は、前記第1の外挿位置x(t+L)を読み込み、少なくとも前記第1の外挿位置x(t+L)に基づいて前記第1の画像データを計算するように構成されている、
ことを特徴とする試験機。
【請求項2】
前記試験機は、前記第1の位置x(t)および前記第1の速度ベクトルv(t)をハードリアルタイムで周期的に計算するように構成されている、
請求項1記載の試験機。
【請求項3】
前記第1の仮想的なオブジェクト(VEH1)は、仮想的な輸送手段であり、
前記画像処理システム(UUT)は、輸送手段のための自動制御または支援システムである、
請求項1または2記載の試験機。
【請求項4】
前記第1の投影図は、前記第1のイメージングセンサの視野を模倣したものである、
請求項1から3までのいずれか1項記載の試験機。
【請求項5】
前記試験機は、前記第1の画像データの前記計算の開始時における前記試験機の第1のシステム時間が記憶されているタイムスタンプを前記第1の画像データに付与するように構成されており、
前記アダプタモジュール(AD)は、前記タイムスタンプに記憶されている前記第1のシステム時間を読み出し、前記第1の画像データの前記処理を完了した後、現在のシステム時間と比較して前記時間間隔の長さΔtを求め、当該長さΔtをメモリアドレスに記憶するように構成されている、
請求項1から4までのいずれか1項記載の試験機。
【請求項6】
前記試験機は、前記第1の画像データの前記計算の前に、前記第1の画像データのためのデジタルIDを作成し、前記デジタルIDを前記アダプタモジュールに送信し、前記デジタルIDの送信時点における前記試験機の第1のシステム時間を前記アダプタモジュール(AD)に送信するように構成されており、
前記試験機は、前記第1の画像データに前記デジタルIDを付与するように構成されており、
前記アダプタモジュール(AD)は、前記デジタルIDに基づいて前記第1の画像データを前記第1のシステム時間に対応付け、前記第1の画像データの前記処理を完了した後、前記試験機の現在のシステム時間を前記第1のシステム時間と比較して前記時間間隔の長さΔtを求め、当該長さΔtをメモリアドレスに記憶するように構成されている、
請求項1から4までのいずれか1項記載の試験機。
【請求項7】
前記第1の演算ユニット(CPU)と前記第2の演算ユニット(GPU)との間にリアルタイム能力のある第1のデータコネクション(BS)が形成されており、
前記第2の演算ユニット(GPU)と前記アダプタモジュール(AD)との間にリアルタイム能力のある第2のデータコネクション(HDMI)が形成されており、
前記アダプタモジュール(AD)と前記第1の演算ユニットとの間にリアルタイム能力のある第3のデータコネクション(ETH)が形成されている、
請求項1から6までのいずれか1項記載の試験機。
【請求項8】
前記第1のデータコネクションは、前記試験機のバス(BS)によって提供されている、
請求項7記載の試験機。
【請求項9】
前記第2の演算ユニット(GPU)は、
前記第1の画像データの前記計算と並行して、または前記第1の画像データの前記計算後に、少なくとも、前記画像処理システム(UUT)の第2のイメージングセンサのための前記周囲モデルの2次元の第2の投影図を表す第2の画像データを計算し、少なくとも前記第1の画像データおよび前記第2の画像データを含むデータパケットを作成するように構成されており、
前記アダプタモジュール(AD)は、前記データパケットを読み込み、前記画像処理システム(UUT)の前記第2のイメージングセンサのエミュレーションによって前記第2の画像データを処理し、処理された前記第2の画像データを前記画像処理システム(UUT)に供給するように構成されている、
請求項1から8までのいずれか1項記載の試験機。
【請求項10】
前記試験機は、前記時間間隔の長さΔtを周期的に求めるように構成されており、
前記第1の演算ユニット(CPU)は、前記時間間隔の長さΔtを周期的に読み込むように構成されている、
請求項1から9までのいずれか1項記載の試験機。
【請求項11】
前記第1の演算ユニット(CPU)は、L=Δtに周期的に設定することによって、前記推定されたレイテンシLを前記時間間隔の長さΔtに動的に適合させるように構成されている、
請求項10記載の試験機。
【請求項12】
前記第1の演算ユニット(CPU)は、過去に測定された複数のΔtの値から前記レイテンシLの値を計算することによって、前記推定されたレイテンシLを動的に適合させるように構成されている、
請求項10記載の試験機。
【請求項13】
前記第2の演算ユニット(GPU)は、少なくとも2つのそれぞれ異なるイメージングセンサのための第1の画像データを選択的に計算するように構成されている、
請求項1から12までのいずれか1項記載の試験機。
【請求項14】
前記シミュレーションソフトウェアは、第2の位置x’(t)および第2の速度ベクトルv’(t)を計算し、前記第2の位置x’(t)および前記第2の速度ベクトルv’(t)を、前記周囲モデルにおける第2の仮想的なオブジェクト(VEH2)に対応付けるように構成されており、
前記第1の演算ユニットは、前記第2の位置x’(t)と前記第2の速度ベクトルv’(t)と推定された前記レイテンシLとを考慮して、前記第2の仮想的なオブジェクト(VEH2)の第2の外挿位置x’(t+L)を求めるように構成されており、
前記第2の演算ユニット(GPU)は、前記第2の外挿位置x’(t+L)を読み込み、少なくとも前記第1の外挿位置x(t+L)および前記第2の外挿位置x’(t+L)に基づいて前記第1の画像データを計算するように構成されている、
請求項1から13までのいずれか1項記載の試験機。
【請求項15】
請求項1から14までのいずれか1項記載の試験機を用いて、画像処理システム(UUT)を試験するための方法であって、
試験機の第1の演算ユニット(CPU)を、周囲モデルに関するシミュレーションソフトウェアによってプログラミングし、前記シミュレーションソフトウェアによって第1の位置x(t)および第1の速度ベクトルv(t)をハードリアルタイムで周期的に計算し、前記周囲モデルにおける第1の仮想的なオブジェクト(VEH1)に対応付け、
前記試験機の第2の演算ユニット(GPU)によって、前記周囲モデルにおける前記第1の仮想的なオブジェクト(VEH1)の位置を周期的に読み込み、前記第2の演算ユニット(GPU)によって、読み込まれた前記第1の位置x(t)に基づいて、前記周囲モデルの2次元の第1の投影図を表す第1の画像データを計算し、
アダプタモジュール(AD)によって、前記第1の画像データを読み込み、前記画像処理システム(UUT)の第1のイメージングセンサのエミュレーションによって処理し、
前記アダプタモジュール(AD)によって、処理された前記画像データを前記画像処理システム(UUT)に供給し、
前記第1の演算ユニット(CPU)によって、前記処理された第1の画像データに基づいて、前記画像処理システム(UUT)によってアクチュエータのために計算された制御データを読み込み、前記制御データを考慮して、前記第1の仮想的なオブジェクト(VEH1)に新しい第1の速度ベクトルを対応付ける、
方法において、
前記第2の演算ユニット(GPU)による前記第1の画像データの前記計算の開始から、前記アダプタモジュール(AD)による前記第1の画像データの前記処理の完了までに経過する時間間隔の長さΔtを測定し、
前記時間間隔の長さΔtに基づいて前記第1の画像データのレイテンシLを推定し、
前記第1の位置x(t)と前記第1の速度ベクトルv(t)と推定された前記レイテンシLとを考慮して、第1の外挿位置x(t+L)を求め、したがって前記第1の外挿位置x(t+L)が、時点t+Lにおける前記第1の仮想的なオブジェクト(VEH1)の前記第1の位置の推定値となり、
前記第2の演算ユニット(GPU)によって、前記第1の外挿位置x(t+L)に基づいて前記第1の画像データを計算する、
ことを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理システムのための試験機、とりわけ輸送手段の、画像処理を実施する支援システムまたは自動制御のための試験機に関する。輸送手段とは、自力で移動するように構成された任意の装置、例えば陸上車両、航空機、ボート、または潜水艦として理解されるべきである。
【0002】
長年にわたり、セーフティクリティカルな電子制御装置の一連の開発および評価の一部として、ハードウェア・イン・ザ・ループ・シミュレーションが確立されている。この場合、制御装置のプロトタイプがシミュレータに接続され、シミュレータは、制御装置の環境をソフトウェアに基づいてシミュレートし、この際には、例えばセンサのシミュレーションによって制御装置のデータエントリのためのデータを作成して、データ入力部に供給する。逆に、シミュレータは、制御装置のデータ出力部からデータを読み出し、例えばアクチュエータのシミュレーションによるシミュレーションの次の時間ステップの計算時に、これらのデータを考慮する。このようなシミュレータは、試験機として構成することもでき、その場合には、制御装置に加えてさらに、この制御装置と協働する、シミュレーションに同様に組み込まれる他の物理的なコンポーネント、自動車の制御装置の場合には例えばステアリングシステム、モータ、またはイメージングセンサを含むことができる。したがって制御装置は、十分に仮想的な環境において動作し、この仮想的な環境で、複数の異なる状況において危険なく再現可能に試験することができる。
【0003】
制御装置は、物理的なシステムを制御、調整、または監視するために設けられているので、ハードリアルタイムで動作する。したがって、シミュレータもまたハードリアルタイムで動作する必要があり、すなわち、規定された時間間隔、例えば1ms以内に、制御装置によって要求される全てのデータの計算が完了することが保証されなければならない。
【0004】
近年、自動車業界は、多数の運転支援システムを開発しており、これらの運転支援システムは、種々異なる技術を用いたイメージングセンサを使用して車両の周囲の画像、例えばレーダ画像、ライダ画像、またはレンズベースの光学画像を作成し、これらの画像を制御装置によって読み込んで評価および解釈し、読み込まれた画像に基づいて運転挙動に介入するか、または実験的な自律的な車両の場合には、それどころか人間の運転者とは独立して車両を自立して制御する。例としては、レーダベースのアダプティブクルーズコントロール、歩行者認識、または交通標識認識がある。
【0005】
したがって、このような支援システムのための試験機は、制御装置によって期待される画像を計算して、制御装置に供給するように構成されなければならない。この場合には、画像を計算するための計算量が非常に多く、これに応じて時間がかかるという問題が生じる。シミュレーションソフトウェアに記憶されているような3次元の周囲モデルから、イメージングセンサによって検出されるような2次元の投影図を計算するためには、現在の技術水準によれば優に50〜100msはかかる可能性がある。このような高レイテンシは、試験機のリアルタイム性に対する上記の要件とは両立せず、シミュレーション結果の説得力を損ねることとなる。
【0006】
独国実用新案第202015104345号明細書(DE 20 2015 104 345 U1)は、画像処理を実施する制御装置のための試験機を記載しており、同試験機は、アダプタモジュールによって制御装置のための画像データのレイテンシを短縮し、アダプタモジュールは、イメージングセンサを迂回して直接的に制御装置に画像データを供給して、画像データのための短縮されたデータ経路を提供している。しかしながら、画像データの計算によって発生するレイテンシをこのようにするだけで補償することはできない。
【0007】
上記の背景を前にして、本発明の課題は、試験機における画像処理システムのための画像データの計算に起因して発生するレイテンシによる不正確さを低減することである。上記の課題は、請求項1に記載の特徴を有する試験機、または請求項15に記載の特徴を有する方法によって解決される。有利な実施形態は、従属請求項の対象である。
【0008】
本発明は、核心部分において、レイテンシの測定に基づいてシミュレータに記憶されている周囲モデルの時間外挿によって、レイテンシを少なくとも部分的に補償するための方法を記載するものである。本発明は、詳細には、周囲モデルに関するシミュレーションソフトウェアによってプログラミングされている第1の演算ユニット、とりわけプロセッサ(CPU)を有する試験機である。シミュレーションソフトウェアは、周囲モデルにおける第1の仮想的なオブジェクトのため、例えば仮想的な車両のために、第1の位置および第1の速度ベクトルを好ましくはハードリアルタイムで周期的に計算し、第1の仮想的なオブジェクトに対応付けるように少なくとも構成されている。好ましくはグラフィックスプロセッサ(GPU)を少なくとも含む、試験機の第2の演算ユニットは、周囲モデルの2次元の第1の投影図を表す第1の画像データ、とりわけ第1の仮想的なオブジェクトのイメージングセンサの画像を再現する第1の画像データを計算するように構成されている。このために第2の演算ユニットは、第1の仮想的なオブジェクトの第1の位置を周期的に読み込み、この位置に基づいて第1の画像データを計算するように構成されている。
【0009】
試験機はさらに、画像処理システムを試験機またはシミュレーションに組み込むためのアダプタモジュールを含む。アダプタモジュールは、第1の画像データを読み込み、画像処理システムの第1のイメージングセンサをエミュレートして第1の画像データを処理し、処理された第1の画像データを画像処理システムに供給するように構成されている。
【0010】
したがってつまり、画像処理システムが一例として光学的なレンズベースのカメラの画像を処理する場合には、アダプタモジュールは、第1の画像データを記録および処理し、この場合、処理された第1の画像データは、シミュレーションソフトウェアによって再現された状況においてカメラの光学センサが画像処理システムに供給するであろうデータに相当する。すなわちアダプタモジュールは、シミュレーションの間、画像処理システムのイメージングセンサのいわゆる代替として機能し、イメージングセンサをエミュレートし、イメージングセンサの代わりに、期待される画像データをイメージングシステムに供給する。
【0011】
さらに、第1の演算ユニットは、処理された第1の画像データに基づいて、画像処理システムによってアクチュエータのために計算された制御データを読み込み、制御データを考慮して、第1の仮想的なオブジェクトに新しい速度ベクトルを対応付けるように構成されている。すなわち、例えば画像処理システムが運転支援システムであって、識別された危険状況に基づいて自動的な制動操縦を開始するための制御データを出力する場合には、第1の演算ユニットは、周囲モデルにおける第1の仮想的なオブジェクト、この場合には仮想的な車両を、模倣するように構成されている。
【0012】
第1の画像データの計算によって発生するレイテンシを補償するために、試験機は、第2の演算ユニットによる第1の画像データの計算の開始から、アダプタモジュールによる第1の画像データの処理の完了までに経過する時間間隔の長さΔtを求めるように構成されている。測定された長さΔtは、メモリアドレスに記憶され、第1の演算ユニットによって読み出され、第1の画像データのレイテンシLを推定するために利用される。推定されたレイテンシLは、第1の仮想的なオブジェクトの第1の位置x(t)と第1の仮想的なオブジェクトの第1の速度ベクトルv(t)と推定されたレイテンシLとを考慮して第1の外挿位置x(t+L)を求めるために、第1の演算ユニットまたは第1の演算ユニット上で実行中のシミュレーションソフトウェアによって利用される。
【0013】
したがって、第1の外挿位置x(t+L)は、時点t+Lにおける第1の仮想的なオブジェクトの未来の位置の推定値であり、ただし、tは、システム時間またはシミュレーションにおける目下の時点である。(シミュレーションはハードリアルタイムで実行されるので、これは同義である。)ここで、第2の演算ユニットは、第1の画像データを計算するために現在の第1の位置x(t)を読み込むのではなく、第1の外挿位置x(t+L)を読み込むように構成されている。すなわち第2の演算ユニットが、第1の画像データの計算時に最初から、シミュレートされた周囲モデルの未来の状態を前提とすることによって、第1の画像データのレイテンシが少なくとも部分的に補償される。このようにして計算された第1の画像データが最終的に画像処理システムに供給されると、理想的な場合には、第1の演算ユニット上の周囲モデルもこの未来の状態に到達し、これによって画像処理システムにおける第1の画像データが周囲モデルの現在の状態に一致し、試験機が現実のデータを供給することとなる。
【0014】
基本的には、第1の外挿位置を求めるために任意の数値積分法、例えば一次またはより高次のルンゲ・クッタ法を使用することができる。本発明は、第1の画像データのレイテンシによって発生する不正確さが完全に補償されることを保証するものではない。第1の外挿位置を推定するために、好ましくは推定されたレイテンシL全体にわたって積分され、Lの長さは、通常の場合には周囲モデルのシミュレーションにおける時間ステップよりも格段に長いので、第1の外挿位置x(t+L)が、時点t+Lにおける仮想的なオブジェクトに対応付けられることとなる実際の位置に一致することを期待することはできない。さらには、例えば第1の画像データを計算するための計算量は、周囲モデルの状態に応じて変化し得るので、推定されたレイテンシLは、第1の画像データの実際のレイテンシからわずかに相違する可能性がある。しかしながら、上述した作用によって発生する不正確さは、補償されていない第1の画像データのレイテンシが引き起こすであろう不正確さよりも小さいので、本発明によれば、少なくともシミュレーション結果の改善を達成することが可能である。
【0015】
とりわけ、第1の仮想的なオブジェクトを、仮想的な輸送手段として構成することができ、画像処理システムを、輸送手段のための自動制御または支援システムとして構成することができる。
【0016】
好ましくは、第2の演算ユニットは、第1の投影図が第1のイメージングセンサの視野を模倣したものとなるように、第1の画像データを計算するように構成されている。このために、第2の演算ユニットによる第1の画像データの計算は、画像処理システムが第1の仮想的なオブジェクトの画像処理システムであり、かつ第1のイメージングセンサが第1の仮想的なオブジェクトの明確に規定された位置に取り付けられているとの仮定に基づいて実施される。計算量を節約し、これによって第1の画像データのレイテンシを最初からできるだけ低く維持するために、第2の演算ユニットは、第1の画像データを計算するために、上記の仮定に基づいた場合に第1のイメージングセンサの視野の内部に位置しているような周囲モデルの仮想的なオブジェクトだけを考慮するように構成されている。考えられる1つの実施形態では、画像処理システムは、例えば自動車用のレーダベースのアダプティブクルーズコントロールであり、したがって、第1のイメージングセンサは、周囲モデルにおいて第1の仮想的なオブジェクトの、この場合には仮想的な自動車のフロント側に配置されているレーダシステムの一部であると仮定される。レーダシステムが、技術的に例えば200mの射程内のオブジェクトを識別するようにしか構成されていない場合には、第1の画像データを計算するために、周囲モデルにおける200mの射程内かつレーダシステムの視野円錐内に位置する仮想的なオブジェクトだけを考慮すべきである。
【0017】
一般的に言えば、イメージングセンサの視野とは、イメージングセンサによって認識される形式での、イメージングセンサによって所与の時点に視認可能な全てのオブジェクトの全体として理解すべきであり、第2の演算ユニットは、好ましくは、第1の画像データを計算するために最初から、上記の定義に即した第1のイメージングセンサの視野から得られる情報のみを考慮するように構成されている。
【0018】
上述した例の場合、このことは例えばさらに、レーダシステムのための第1の画像データが、第1の投影図において視認可能な仮想的なオブジェクトの色に関する情報を含むべきではないこと、また、たとえ上記の色に関する情報が周囲モデルに存在していたとしても、この情報が、第1の画像データの計算時に最初から考慮されないことを意味している。
【0019】
1つの実施形態では、時間間隔の長さΔtの測定は、試験機、とりわけ第2の演算ユニットが、第1の画像データの計算の開始時に試験機のシステム時間を読み出し、読み出されたシステム時間が記憶されているタイムスタンプを第1の画像データに付与するようにして実施される。アダプタモジュールが第1の画像データを処理した後、アダプタモジュールが第1の画像データを画像処理システムに供給する前に、アダプタモジュールは、タイムスタンプを読み出し、タイムスタンプに記憶されているシステム時間を現在のシステム時間と比較し、これら2つのシステム時間の差分形成によって時間間隔の長さΔtを求め、求められた時間間隔の長さΔを、第1の演算モジュールによってアクセス可能なメモリアドレスに記憶する。第1の演算ユニットは、メモリアドレスにおける求められた時間間隔の長さΔtを読み出すように構成されている。
【0020】
別の実施形態では、時間測定は、試験機、とりわけ第1の演算ユニットまたは第2の演算ユニットが第1の画像データのために作成するデジタルIDに基づいて実施される。デジタルIDは、第1の画像データの計算の前に作成され、試験機の第1のシステム時間と一緒にアダプタモジュールに送信される。この場合、第1のシステム時間は、デジタルIDの送信時点におけるシステム時間である。第2の演算ユニットは、第1の画像データを計算した後、第2の画像データにデジタルIDを付与して、第2の画像データをデジタルIDと一緒にアダプタモジュールに送信する。アダプタモジュールは、第1の画像データからデジタルIDを読み出し、第1のシステム時間のデジタルIDに基づいて第1の画像データを対応付けるように構成されている。アダプタモジュールは、第1の画像データの処理を完了した後、試験機の現在のシステム時間を第1のシステム時間と比較して時間間隔の長さΔtを求め、この長さΔtをメモリアドレスに記憶する。
【0021】
両方の形式の測定のための前提条件は、試験機が、当該試験機のコンポーネント間におけるシステム時間の十分に高速な同期を有することである。
【0022】
有利には、試験機の、本発明にとって本質的なコンポーネント同士は、それぞれリアルタイム能力のあるデータコネクションを介して接続されており、このデータコネクションは、データのストリーミングのために構成されており、すなわち大量のデータの連続的なストリームをリアルタイムで送信するために構成されている。したがって具体的には、第1の演算ユニットと第2の演算ユニットとの間にリアルタイム能力のある第1のデータコネクションが形成されており、第2の演算ユニットとアダプタモジュールとの間にリアルタイム能力のある第2のデータコネクション、好ましくはHDMIコネクションが形成されており、アダプタモジュールと第1の演算ユニットの間にリアルタイム能力のある第3のデータコネクション、好ましくはイーサネットコネクションが形成されている。
【0023】
特に好ましくは、第1のデータコネクションは、試験機のリアルタイム能力のあるバスによって提供されている。この実施形態は、第2の演算ユニットを試験機の一体的な構成部分として構成することが可能となり、これによってレイテンシに対して好ましい効果がもたらされるという点で有利である。なぜなら、典型的なハードウェア・イン・ザ・ループ・シミュレータの内部バスは、リアルタイム性能、すなわち低レイテンシと低ジッタのために最適化されているからである。
【0024】
さらに有利には、第2の演算ユニットは、第1のイメージングセンサに加えてオプションとして、少なくとも第2のイメージングセンサも操作するように構成されている。例えば画像処理システムは、ステレオカメラを含むことができるが、これによって第2の演算ユニットは、2つの光学画像を計算しなければならなくなり、これに応じてアダプタモジュールは、2つの光学画像を画像処理システムに供給しなければならなくなる。別の例では、画像処理システムは、複数のイメージングセンサを有する複数の制御装置を含むことができる。したがって、有利な実施形態では、第2の演算ユニットは、第1の画像データの計算と並行して、または第1の画像データの計算後に、少なくとも、画像処理システムの第2のイメージングセンサのための周囲モデルの2次元の第2の投影図を表す第2の画像データを計算するように構成されている。その後、画像データの全体が、好ましくはバンドリングされて送信される。このために第2の演算ユニットは、第1の画像データおよび第2の画像データおよび存在する場合にはさらなる画像データを含むデータパケットを作成するように構成されている。時間間隔Δtの測定がタイムスタンプを用いて実施される場合には、データパケットにタイムスタンプが付与される。アダプタモジュールは、データパケットを読み込み、既に説明した第1の画像データの処理に加えて、第2のイメージングセンサのエミュレーションによって第2の画像データも処理し、処理された第2の画像データを画像処理システムに供給するように構成されている。
【0025】
好ましくは、推定されたレイテンシLは、1回だけ測定された静的なパラメータではなく、第1の演算ユニットは、実行中のシミュレーションの間に、推定されたレイテンシLの値を動的に適合させるように構成されている。すなわち試験機は、時間間隔の長さΔtを周期的に求め、第1の演算ユニットによって周期的に読み込んで、シミュレーションの間にLの値を第1の画像データの現在のレイテンシに動的に適合させるように構成されている。
【0026】
簡単な実施形態では、このことは、第1の演算ユニットが、推定されたレイテンシLを、時間間隔の長さΔtの現在の値と等しくなるように、すなわちL=Δtに周期的に設定するようにして実施される。別の実施形態では、第1の演算ユニットは、過去に測定された複数のΔtの値を記憶し、レイテンシLを、これらの複数のΔtの値から、とりわけこれらの複数のΔtの値の平均値、加重平均値、または中央値として計算するように構成されている。
【0027】
以下では本発明を、図面に基づいてより詳細に説明する。
【図面の簡単な説明】
【0028】
【
図1】画像処理システムのための従来技術から公知の試験機の極めて簡略的な概略図である。
【
図2】好ましい実施形態における本発明による試験機の概略図である。
【0029】
図1は、本発明の基礎となる着想と、本発明によって解決される問題とを視覚化するために使用される。本図は、シミュレーションコンピュータSIMによって代表的に表される試験機を用い、かつ被験体として画像処理システムUUTを用いる1つの試験シナリオを概説している。画像処理システムUUTは、一例として、車両における危険状況を識別して自動的な制動操縦を開始するように構成されたカメラベースの事故支援システムであるとする。
【0030】
シミュレータSIMには、周囲モデルMODが記憶されている。周囲モデルMODは、シミュレータSIMの第1のプロセッサC1によって実行可能なソフトウェアであって、画像処理システムUUTの周囲と、画像処理システムUUTのための試験シナリオとをシミュレートするように構成されたソフトウェアである。周囲モデルMODは、複数の仮想的なオブジェクトを含み、仮想的なオブジェクトの部分集合は、移動可能である。移動可能な仮想的なオブジェクトは、これらの仮想的なオブジェクトに、周囲モデルにおいて位置(ベクトル値)に加えてそれぞれ1つの速度ベクトルも対応付けられているという点と、周囲モデルMODにおける仮想的なオブジェクトの位置を、シミュレーションの各時間ステップで変更可能であるという点とを特徴としている。図示された周囲モデルMODは、一例として、第1の仮想的なオブジェクトとして第1の仮想的な車両VEH1を含み、第2の仮想的なオブジェクトとして第2の仮想的な車両VEH2を含む。図示された試験シナリオは、交差点における事故状況である。2つの車両は、移動可能な仮想的なオブジェクトである。したがって、第1の仮想的な車両VEH1には、時間依存性の第1の位置x(t)および時間依存性の第1の速度ベクトルv(t)が対応付けられており、第2の仮想的な車両VEH2には、時間依存性の第2の位置x’(t)および時間依存性の第2の速度ベクトルv’(t)が対応付けられている。
【0031】
このように、時点tにおける周囲モデルMODの状態は、全ての仮想的なオブジェクトの位置の座標と、全ての移動可能な仮想的なオブジェクトの速度ベクトルのエントリとをエントリとして含んでいる状態ベクトルM(t)によって記述することができる。
【0032】
シミュレータSIMおよび画像処理システムUUTは、シミュレートされる制御ループを一緒に構築する。シミュレータSIMは、エミュレートされた画像データSEを画像処理システムUUTに連続的に供給し、画像処理システムUUTは、このエミュレートされた画像データSEを本物の画像データとして、すなわち物理的なイメージングセンサによって供給された画像データとして解釈する。これらの画像データに基づいて画像処理システムUUTは、制御データACをシミュレータにフィードバックし、ひいては、シミュレータが第1の仮想的な車両VEH1における制御データACに対する物理的な車両の反応を模倣することによって、周囲モデルMODの状態Mに影響を与える。
【0033】
画像データSEの計算が開始されてから画像データSEが画像処理システムUUTに供給されるまでに、実質的に画像データSEの計算および処理によって発生する、長さΔtの時間間隔が経過する。したがって、この長さΔtは、画像データのレイテンシに相当する。レイテンシがΔt=50msであると仮定すると、このことは、シミュレーションにおいて一例としての事故支援システムが、50msの遅延を伴ってようやく危険状況を認識し、これに応じて反応するということを意味する。このような値は、図示された試験シナリオにとっては許容できないものであろうし、シミュレーションの結果は、限定的にしか使用することができなくなるであろう。
【0034】
画像データSEは、第1の仮想的な車両VEH1の所定の位置に取り付けられた第1のイメージングセンサの視野、すなわち周囲モデルMODの2次元の投影図を表す。この限りにおいて画像データSEは、状態ベクトルM(t)の関数D[M(t)]として理解されるべきである。したがって、最終的に画像処理システムUUTに供給された処理された画像データは、関数D[M(t−Δt)]によって定義されている。t→t+Δtの代入により、関数D[M(t+Δt)]によって記述される未来の画像データSEをシミュレータSIMから画像処理システムUUTに供給することによって、基本的にレイテンシを補償することが可能であることが直接的に認識できる。その場合、画像処理システムに供給された画像データは、関数D[M(t+Δt−Δt)]=D[M(t)]によって記述されており、すなわち、周囲モデルMODの現在の状態M(t)と一致する。
【0035】
基本的に、周囲モデルMODの未来の状態M(t+Δt)は未知である。しかしながら、例えば測定によってレイテンシΔtが学習されると、この未来の状態M(t+Δt)を、長さΔtにわたる現在の状態M(t)の外挿によって少なくとも推定することが可能となり、シミュレーションの精度を改善することが可能となる。
【0036】
図2は、このために構成された試験機の概略図を示している。試験機は、ホストコンピュータHSTと、シミュレータSIMと、アダプタモジュールADとを含み、画像処理システムUUTは、レーダシステムのための第1の制御装置ECU1と、ステレオカメラのための第2の制御装置ECU2とを含む。
【0037】
シミュレータSIMは、第1のプロセッサC1を有する第1の演算ユニットCPUを含み、シミュレータSIMは、第2のプロセッサC2とグラフィックスプロセッサ(グラフィックス処理ユニット)C3とを有する第2の演算ユニットGPUを含む。ホストコンピュータHSTは、第5のデータコネクションDLを介して周囲モデルMODを第1の演算ユニットCPUに記憶するように構成されており、第1のプロセッサC1は、周囲モデルを実行するように構成されている。(
図1および
図2に図示された周囲モデルMODは、以下では同一であると仮定する。)第1の演算ユニットCPUおよび第2の演算ユニットGPUは、試験機のリアルタイム能力のある第1のバスBSに一緒に接続されており、したがって、この第1のバスBSは、第1の演算ユニットCPUと第2の演算ユニットGPUとの間における第1のデータコネクションを提供する。第1のバスBSは、リアルタイム性能のために技術的に最適化されており、したがって低レイテンシの第1のデータコネクションを保証する。
【0038】
第1の演算ユニットCPUは、周囲モデルにおける仮想的なオブジェクトの位置を、第1のデータコネクションBSを介して第2の演算ユニットGPUに周期的に送信するように構成されている。第2の演算ユニットGPUは、送信された位置を読み出し、第2の演算ユニットGPUに記憶されているレンダリングソフトウェアRENを用いて第1の画像データと第2の画像データと第3の画像データとを、少なくとも送信された位置の関数として、とりわけ第1の位置x(t)および第2の位置x’(t)の関数として計算するように構成されている。
【0039】
このためにレンダリングソフトウェアには多数のシェーダが実装されている。第1のシェーダは、第1の画像データを計算する。第1の画像データは、第1の仮想的な車両VEH1に取り付けられたレーダセンサの視野を模倣したものである周囲モデルMODの第1の投影図を表す。第2のシェーダは、第2の画像データおよび第3の画像データを計算する。第2の画像データは、周囲モデルの第2の投影図を表し、第3の画像データは、周囲モデルの第3の投影図を表す。第2および第3の投影図はそれぞれ、仮想的な車両VEH1に取り付けられたカメラ光学系の第1および第2のフォトセンサの視野を模倣したものである。このために第2のシェーダは、とりわけステレオカメラのレンズシステムの光学系をシミュレートするようにも構成されている。
【0040】
第1の演算ユニットCPUは、第1の位置x(t)および第2の位置x’(t)の送信と同時に、イーサネットコネクションとして構成されたリアルタイム能力のある第3のデータコネクションETHを介して試験機のデジタルIDおよび第1のシステム時間を送信し、さらにデジタルIDを、第1のデータコネクションBSを介して第2の演算ユニットGPUに送信する。第2の演算ユニットGPUは、第1の画像データと第2の画像データと第3の画像データとデジタルIDとを含むデータパケットを作成する。グラフィックスプロセッサC3は、HDMIコネクションとして構成された第2のリアルタイム能力のあるデータコネクションHDMIを介してアダプタモジュールADにデータパケットを送信する。
【0041】
アダプタモジュールADは、FPGA Fを含む。FPGA F上には3つの並列のエミュレーションロジックが実装されている。第1のエミュレーションロジックEM1は、レーダシステムの第1のイメージングセンサをエミュレートするように構成されており、すなわち第1の画像データを記録し、この第1の画像データを処理して、処理後の第1の画像データが、第1の制御装置ECU1によって期待される画像データに対応するようにするように構成されている。相応にして、第2のエミュレーションロジックEM2および第3のエミュレーションロジックEM3は、第2の画像データまたは第3の画像データを記録し、レンズベースの光学的なステレオカメラの第2のイメージングセンサまたは第3のイメージングセンサをエミュレートするように構成されている。
【0042】
処理された第1の画像データは、この第1の画像データが第1の制御装置ECU1によって物理的なイメージングセンサの本物の画像データとして解釈されるように、アダプタモジュールADから第1の制御装置ECU1に供給される。このために必要な技術的手段は、当該技術分野において既知であり、当業者には容易に理解することができる。特別な開発用制御装置は、しばしばこのために専用のインターフェースを提供する。
【0043】
第1の制御装置ECU1および第2の制御装置ECU2は、処理された第1の画像データまたは処理された第2の画像データに基づいて、輸送手段、具体的には車両のアクチュエータのための制御信号を計算する。制御信号は、ゲートウェイGを介して第1のバスBSに接続された、シミュレータSIMの外部に敷設されている第2のバスXB、例えばCANバスを介して第1の演算ユニットCPUに供給され、第1のプロセッサC1によって読み出され、シミュレーションの次の時間ステップの計算時に、第1の仮想的な車両VEH1における制御信号に対する物理的な車両の反応が再現されるように考慮される。
【0044】
アダプタモジュールADはさらに、デジタルIDに基づいて、第1の演算ユニットから取得した第1のシステム時間にデータパケットを対応付けるように構成されている。具体的にはこのことは、アダプタモジュールADが、第1の演算ユニットCPUから第3のデータコネクションETHを介して送信されたデジタルIDを、第1のシステム時間と一緒に読み出し、アダプタモジュールがさらに、データパケットに格納されているデジタルIDを読み出し、読み出された2つのデジタルIDを比較して同一であると識別し、この比較に基づいて第1のシステム時間をデータパケットに対応付けるということを意味する。アダプタモジュールADは、少なくとも第1の画像データを処理した直後に、第1のシステム時間を試験機の現在のシステム時間と比較し、差分形成によって時間間隔の長さΔtを求め、このΔtの値を、第3のデータコネクションETHを介して第1の演算ユニットCPUに送信する。好ましくは、このことが1回だけ実施されるわけではなく、アダプタモジュールADは、Δtの現在の値を周期的かつ連続的に計算して、Δtのその時々の現在の値を第1の演算ユニットCPUに連続的に送信する。
【0045】
測定を実施できるようにするために、アダプタモジュールは、試験機のシステム時間にアクセスする必要がある。図示された実施例では、アダプタモジュールは、試験機の第1のバスBSに接続されていないので、例えばシステム時間を、第3のデータコネクションETHを介してアダプタモジュールADに連続的に送信することができ、アダプタモジュールADは、ローカルクロックをシステム時間と同期させるか、または必要に応じて、第3のデータコネクションETHを介して送信されたシステム時間を直接的に読み出す。
【0046】
基本的には、デジタルIDを省略することができる。これに代わる実施形態では、長さΔtの測定が、タイムスタンプに基づいて実施される。第2の演算ユニットGPUは、このタイムスタンプをデータパケットに付与し、第2の演算ユニットGPUは、第1の画像データが計算される前の時点における試験機の第1のシステム時間をこのタイムスタンプに記憶し、アダプタモジュールは、このタイムスタンプから第1のシステム時間を読み出す。
【0047】
第1の演算ユニットCPUは、Δtの値を読み出し、このΔtの値に基づいて第1の画像データのレイテンシLを推定するように構成されている。簡単な実施形態ではこのことは、第1の演算ユニットCPUが、推定されたレイテンシLのために、単純にその時々のΔtの現在の値を使用するようにして実施される。しかしながら、画像データのレイテンシに短期的な変動が発生する場合には、この実施形態は問題となり得る。有利には、第1の演算ユニットCPUは、過去に測定された複数のΔtの値に基づいて、推定されたレイテンシLの値を計算する。例えば、第1の演算ユニットCPUは、例えばその時々の直近の100個のΔtの値を記憶し、Lの値を、記憶されたこれらのΔtの値の平均値、加重平均値、または中央値として計算するように構成することができる。
【0048】
ここで、第1の演算ユニットが、周囲モデルにおける全ての移動可能な仮想的なオブジェクトのために、または少なくとも関連する移動可能な仮想的なオブジェクトを選択するために、すなわち図示された実施例では、具体的に第1の仮想的な車両VEH1および第2の仮想的な車両VEH2のために、推定されたレイテンシLを使用して外挿位置を計算するようにして、レイテンシの補償が実施される。したがって、第1の演算ユニットCPUは、第1の仮想的な車両VEH1のために、第1の位置x(t)および第1の速度ベクトルv(t)に基づいて第1の外挿位置x(t+L)を計算し、第1の演算ユニットCPUはさらに、第2の仮想的な車両VEH2のために、第2の位置x’(t)および第2の速度ベクトルv’(t)を使用して第2の外挿位置x’(t+L)を計算する。外挿位置の算出は、例えばルンゲ・クッタ法、好ましくはオイラー法に基づいて、好ましくは推定されたレイテンシL全体にわたるただ1つの積分ステップに基づいて実施される。外挿位置が時点t+Lでの実際の位置から相違し過ぎている場合には、比較的高い計算量を対価として、基本的に任意のより精度の高い積分法、例えばより高次の積分法、またはレイテンシLの部分間隔にわたる複数回の積分を使用することもできる。
【0049】
第1の演算ユニットCPUは、実際の現在の第1の位置x(t)および第2の位置x’(t)の代わりに、第1の外挿位置x(t+L)および第2の外挿位置x’(t+L)を第2の演算ユニットGPUに送信する。同様にして、場合によって存在する別の移動可能な仮想的なオブジェクトの代わりに、すなわち少なくとも、周囲モデル中でモデル化されたシナリオに関して関連性を有すると識別された仮想的なオブジェクトの位置の代わりに、常にその時々の仮想的なオブジェクトの外挿位置が送信される。したがって、第2の演算ユニットGPUは、画像データの計算時に、時間期間Δtが経過した後の周囲モデルMODの推定された未来の状態を前提とする。このようにして計算された画像データが最終的に画像処理システムUUTに供給されると、第1の演算ユニットCPU上でのシミュレーションは、画像データのこのタイムアドバンテージをほぼ挽回している。これによって、画像処理システムUUTからの制御データは、周囲モデルMODの現在の状態M(t)により良好に一致し、これによってシミュレーション結果の精度は、従来技術から公知の同様の試験機に比べて改善される。