(57)【要約】  牽引車両（１００）の後ろに配置されたトレーラ（２００）に関連付けられたトレーラヒッチ（２１０）のカプラ（２１２）を検出および位置特定する方法が提供される。本方法は、後方カメラ（１４２）からの画像（１４３）の内部において関心領域（３００）を決定することを含む。関心領域（３００）は、トレーラヒッチ（２１０）の表現を含む。本方法は、関心領域の内側の物体を表現する３次元（３Ｄ）の点群（４００）を決定することを含む。本方法は、画像に基づいてカメラ平面（３１０）を決定することを含む。本方法は、カメラ平面（３１０）上に群点（４０２）を投影することと、カメラ平面（３１０）上に投影された群点（４０２）に基づいてカプラ位置を特定することとを含む。本方法は、カプラ位置に基づいて経路を決定することを含む。経路は、牽引車両がトレーラに取り付けられるところで終端する。本方法は、牽引車両を経路に沿って後退方向に自律的に運転させる命令を、運転システム（１１０）に送信することも含む。
2021522504.tif 000002
【特許請求の範囲】
【請求項１】
牽引車両の後ろに配置されたトレーラに関連付けられたトレーラヒッチのカプラを検出および位置特定する方法であって、
データ処理ハードウェアにおいて、前記牽引車両の後部位置に配置されていて、かつ前記データ処理ハードウェアと通信する後方カメラから、画像を受信するステップと、
前記データ処理ハードウェアによって、前記画像の内部において、前記トレーラヒッチの表現を含む関心領域を決定するステップと、
前記データ処理ハードウェアによって、前記関心領域の内側の物体を表現する３次元（３Ｄ）の点群を決定するステップと、
前記データ処理ハードウェアによって、受信した前記画像に基づいて、前記後方カメラが移動するカメラ平面を決定するステップと、
前記データ処理ハードウェアによって、前記カメラ平面上に群点を投影するステップと、
前記データ処理ハードウェアによって、前記カメラ平面上に投影された前記群点に基づいてカプラ位置を特定するステップと、
前記データ処理ハードウェアによって、前記カプラ位置に基づいて、前記牽引車両が前記トレーラに取り付けられるところで終端する経路を決定するステップと、
前記牽引車両を前記経路に沿って後退方向に自律的に運転させる命令を、前記データ処理ハードウェアから運転システムに送信するステップと、
を含む、方法。
【請求項２】
前記データ処理ハードウェアによって、前記カメラ平面上に投影された前記群点に基づいて、前記牽引車両に対する前記トレーラの位置合わせ方向を決定するステップをさらに含み、
前記経路は、前記位置合わせ方向に基づいている、
請求項１記載の方法。
【請求項３】
前記データ処理ハードウェアによって、
前記位置合わせ方向に対して法線方向の平面を決定するステップと、
前記後方カメラと前記平面との間の、長手方向距離を示す第１の距離を求めるステップと、
前記平面上に前記後方カメラの位置を投影するステップと、
前記平面上への前記後方カメラの位置の投影と、前記カメラ平面における前記カプラの投影との間の、長手方向距離を示す第２の距離を求めるステップと、
により、前記後方カメラと前記カプラとの間の長手方向距離および横方向距離を求めるステップをさらに含み、
前記経路は、前記長手方向距離および前記横方向距離に基づいている、
請求項２記載の方法。
【請求項４】
前記画像の内部において前記関心領域を決定するステップは、
受信した前記画像を表示する命令を、前記データ処理ハードウェアからディスプレイに送信するステップと、
前記データ処理ハードウェアにおいて、前記関心領域のユーザ選択を受信するステップと、
を含む、請求項１記載の方法。
【請求項５】
前記関心領域の前記点群を決定するステップは、視覚オドメトリ（ＶＯ）アルゴリズム、Simultaneous Localization and Mapping（ＳＬＡＭ）アルゴリズム、およびStructure from Motion（ＳｆＭ）アルゴリズムのうちの１つを実行するステップを含む、請求項１記載の方法。
【請求項６】
前記牽引車両を前進直進方向または後退直進方向に、事前に規定された距離だけ運転させる命令を、前記データ処理ハードウェアから前記運転システムに送信することによって、前記アルゴリズムの実行前に前記データ処理ハードウェアを初期化するステップをさらに含む、請求項５記載の方法。
【請求項７】
前記カメラ平面を決定するステップは、
前記データ処理ハードウェアによって、受信した前記画像から前記後方カメラの少なくとも３つの３次元位置を特定するステップと、
前記データ処理ハードウェアによって、前記３つの３次元位置に基づいて前記カメラ平面を決定するステップと、
を含む、請求項１記載の方法。
【請求項８】
前記データ処理ハードウェアによって、
前記牽引車両を支持している道路からの前記後方カメラの高さを求めるステップと、
前記後方カメラの前記高さの分だけ前記カメラ平面をシフトさせるステップと、
により、道路平面を決定するするステップをさらに含む、請求項７記載の方法。
【請求項９】
前記データ処理ハードウェアによって、
道路を含む前記画像から少なくとも３つの特徴点を抽出するステップと、
前記データ処理ハードウェアによって、前記点群の点をそれぞれの前記特徴点に関連付けるステップと、
前記データ処理ハードウェアによって、前記少なくとも３つの特徴点に関連付けられた、前記点群の少なくとも３つの点に基づいて道路平面を決定するステップと、
により、前記道路平面を決定するするステップをさらに含む、請求項１記載の方法。
【請求項１０】
前記カメラ平面を決定するステップは、
前記データ処理ハードウェアによって、前記道路からの前記後方カメラの高さを求めるステップと、
前記データ処理ハードウェアによって、前記後方カメラの前記高さの分だけ前記道路平面をシフトさせるステップと、
を含む、請求項９記載の方法。
【請求項１１】
前記データ処理ハードウェアによって、前記カプラと道路平面との間の距離に基づいて前記カプラの高さを求めるステップをさらに含み、
前記経路は、前記カプラの前記高さに基づいている、
請求項１記載の方法。
【請求項１２】
牽引車両の後ろに配置されたトレーラに関連付けられたトレーラヒッチのカプラを検出および位置特定するためのシステムであって、
データ処理ハードウェアと、
前記データ処理ハードウェアと通信するメモリハードウェアと、
を含み、
前記メモリハードウェアは、前記データ処理ハードウェア上で実行された場合に、前記データ処理ハードウェアに所定の動作を実行させる命令を格納しており、
前記動作は、
前記牽引車両の後部位置に配置されていて、かつ前記データ処理ハードウェアと通信する後方カメラから、画像を受信することと、
前記画像の内部において、前記トレーラヒッチの表現を含む関心領域を決定することと、
前記関心領域の内側の物体を表現する３次元（３Ｄ）の点群を決定することと、
受信した前記画像に基づいて、前記後方カメラが移動するカメラ平面を決定することと、
前記カメラ平面上に群点を投影することと、
前記カメラ平面上に投影された前記群点に基づいてカプラ位置を特定することと、
前記カプラ位置に基づいて、前記牽引車両が前記トレーラに取り付けられるところで終端する経路を決定することと、
前記牽引車両を前記経路に沿って後退方向に自律的に運転させる命令を、運転システムに送信することと、
を含む、
システム。
【請求項１３】
前記動作は、前記カメラ平面上に投影された前記群点に基づいて、前記牽引車両に対する前記トレーラの位置合わせ方向を決定することをさらに含み、
前記経路は、前記位置合わせ方向に基づいている、
請求項１２記載のシステム。
【請求項１４】
前記動作は、
前記位置合わせ方向に対して法線方向の平面を決定し、
前記後方カメラと前記平面との間の、長手方向距離を示す第１の距離を求め、
前記平面上に前記後方カメラの位置を投影し、
前記平面上への前記後方カメラの位置の投影と、前記カメラ平面における前記カプラの投影との間の、長手方向距離を示す第２の距離を求める
ことにより、前記後方カメラと前記カプラとの間の長手方向距離および横方向距離を求めること、をさらに含み、
前記経路は、前記長手方向距離および前記横方向距離に基づいている、
請求項１３記載のシステム。
【請求項１５】
前記画像の内部において前記関心領域を決定することは、
受信した前記画像を表示するようにとの命令を送信することと、
前記関心領域のユーザ選択を受信することと、
を含む、請求項１２記載のシステム。
【請求項１６】
前記関心領域の前記点群を決定することは、視覚オドメトリ（ＶＯ）アルゴリズム、Simultaneous Localization and Mapping（ＳＬＡＭ）アルゴリズム、およびStructure from Motion（ＳｆＭ）アルゴリズムのうちの１つを実行することを含む、請求項１２記載のシステム。
【請求項１７】
前記カメラ平面を決定することは、
受信した前記画像から前記後方カメラの少なくとも３つの３次元位置を特定することと、
前記３つの３次元位置に基づいて前記カメラ平面を決定することと、
を含む、請求項１２記載のシステム。
【請求項１８】
前記動作は、
前記牽引車両を支持している道路からの前記後方カメラの高さを求め、
前記後方カメラの前記高さの分だけ前記カメラ平面をシフトさせる
ことにより、道路平面を決定することをさらに含む、請求項１７記載のシステム。
【請求項１９】
前記動作は、
道路を含む前記画像から少なくとも３つの特徴点を抽出し、
前記点群の点をそれぞれの前記特徴点に関連付け、
前記少なくとも３つの特徴点に関連付けられた、前記点群の少なくとも３つの点に基づいて道路平面を決定する
ことにより、前記道路平面を決定することをさらに含む、請求項１２記載のシステム。
【請求項２０】
前記動作は、前記カプラと道路平面との間の距離に基づいて前記カプラの高さを求めることをさらに含み、
前記経路は、前記カプラの前記高さに基づいている、
請求項１２記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
技術分野
本開示は、自動化されたトレーラヒッチング中に、３次元の点群地図を介してトレーラのカプラおよび牽引バーを検出するための方法および装置に関する。
【０００２】
背景
トレーラは、通常、動力付きの牽引車両によって牽引される動力なしの車両である。トレーラは、とりわけユーティリティトレーラ、ポップアップキャンピングカー、旅行用トレーラ、家畜用トレーラ、フラットベッドトレーラ、密閉型自動車運搬車、およびボートトレーラであり得る。牽引車両は、自動車、クロスオーバー、トラック、バン、多目的スポーツ車（ＳＵＶ）、レクリエーション用車両（ＲＶ）、またはトレーラに取り付けられてトレーラを牽引するように構成された他の任意の車両であり得る。トレーラは、トレーラヒッチを使用して動力車に取り付け可能である。レシーバーヒッチは、牽引車両に据え付けられており、トレーラヒッチに接続されて連結部を形成する。トレーラヒッチは、ボールおよびソケット、第５輪およびグースネック、またはトレーラジャッキであり得る。他の取り付け機構を使用してもよい。トレーラと動力車との間の機械的な接続に加えて、いくつかの例では、トレーラは、牽引車両に電気的に接続されている。したがって、この電気的な接続によって、トレーラは、動力車のリアランプ回路から給電を受けることが可能となり、これによって、トレーラは、動力車のランプと同期するテールランプ、方向指示器、およびブレーキランプを有することが可能となる。
【０００３】
センサ技術の最近の進歩により、車両のための安全性システムが改善されてきた。したがって、牽引車両の後ろに配置されたトレーラのカプラおよび牽引バーをリアルタイムで識別することができ、かつカプラおよび牽引バーをリアルタイムで位置特定することができ、これによって、自動化されたヒッチングのために牽引車両がトレーラに向かって自律的に操縦されることを可能にするようなシステムを提供することが望まれている。
【０００４】
概要
本開示の１つの態様は、牽引車両の後ろに配置されたトレーラに関連付けられたトレーラヒッチのカプラを検出および位置特定する方法を提供する。本方法は、データ処理ハードウェアにおいて、牽引車両の後部位置に配置されていて、かつデータ処理ハードウェアと通信する後方カメラから、画像を受信することを含む。本方法は、データ処理ハードウェアによって、画像の内部において関心領域を決定することも含む。関心領域は、トレーラヒッチの表現を含む。本方法は、データ処理ハードウェアによって、関心領域の内側の物体を表現する３次元（３Ｄ）の点群を決定することも含む。本方法は、データ処理ハードウェアによって、受信した画像に基づいて、後方カメラが移動するカメラ平面を決定することも含む。本方法は、データ処理ハードウェアによって、カメラ平面上に群点を投影することも含む。本方法は、データ処理ハードウェアによって、カメラ平面上に投影された群点に基づいてカプラ位置を特定することを含む。本方法は、データ処理ハードウェアによって、カプラ位置に基づいて経路を決定することも含む。経路は、牽引車両がトレーラに取り付けられるところで終端する。本方法は、牽引車両を経路に沿って後退方向に自律的に運転させる命令を、データ処理ハードウェアから運転システムに送信することも含む。
【０００５】
本開示の実装形態は、以下のオプションの特徴のうちの１つまたは複数を含むことができる。いくつかの実装形態では、本方法は、データ処理ハードウェアによって、カメラ平面上に投影された群点に基づいて、牽引車両に対するトレーラの位置合わせ方向を決定することをさらに含む。経路は、位置合わせ方向に基づくこともできる。
【０００６】
いくつかの例では、本方法は、データ処理ハードウェアによって、後方カメラとカプラとの間の長手方向距離を求めることを含む。本方法は、位置合わせ方向に対して法線方向の平面を決定することと、後方カメラと平面との間の第１の距離を求めることとを含むことができる。第１の距離は、長手方向距離を示す。本方法は、平面上に後方カメラの位置を投影することと、平面上への後方カメラの位置の投影と、カメラ平面におけるカプラの投影との間の第２の距離を求めることを含むこともできる。第２の距離は、長手方向距離を示す。経路は、長手方向距離および／または横方向距離に基づくこともできる。
【０００７】
いくつかの実装形態では、画像の内部において関心領域を決定することは、受信した画像を表示するようにとの命令を、データ処理ハードウェアからディスプレイに送信することと、データ処理ハードウェアにおいて、関心領域のユーザ選択を受信することとを含む。
【０００８】
関心領域の点群を決定することは、視覚オドメトリ（ＶＯ）アルゴリズム、simultaneous localization and mapping（ＳＬＡＭ）アルゴリズム、およびstructure from motion（ＳｆＭ）アルゴリズムのうちの１つを実行することを含むことができる。いくつかの例では、本方法は、牽引車両を前進直進方向または後退直進方向に、事前に規定された距離だけ運転させる命令を、データ処理ハードウェアから運転システムに送信することによって、アルゴリズムの実行前にデータ処理ハードウェアを初期化することを含む。
【０００９】
いくつかの実装形態では、カメラ平面を決定することは、データ処理ハードウェアによって、受信した画像から後方カメラの少なくとも３つの３次元位置を特定することを含む。さらに、カメラ平面を決定することは、データ処理ハードウェアによって、３つの３次元位置に基づいてカメラ平面を決定することを含むこともできる。
【００１０】
いくつかの例では、本方法は、データ処理ハードウェアによって、牽引車両を支持している道路からの後方カメラの高さを求め、後方カメラの高さの分だけカメラ平面をシフトさせることにより、道路平面を決定することをさらに含む。
【００１１】
いくつかの例では、本方法は、データ処理ハードウェアによって、道路を含む画像から少なくとも３つの特徴点を抽出し、データ処理ハードウェアによって、点群の点をそれぞれの特徴点に関連付けることにより、道路平面を決定することを含む。道路平面を決定するための方法は、データ処理ハードウェアによって、少なくとも３つの特徴点に関連付けられた、点群の少なくとも３つの点に基づいて道路平面を決定することを含むこともできる。いくつかの例では、カメラ平面を決定することは、データ処理ハードウェアによって、道路からの後方カメラの高さを求めることと、データ処理ハードウェアによって、後方カメラの高さの分だけ道路平面をシフトさせることとを含む。
【００１２】
いくつかの実装形態では、本方法は、データ処理ハードウェアによって、カプラと道路平面との間の距離に基づいてカプラの高さを求めることをさらに含む。経路は、カプラの高さに基づくこともできる。
【００１３】
本開示の別の態様は、牽引車両の後ろに配置されたトレーラに関連付けられたトレーラヒッチのカプラを検出および位置特定するためのシステムを提供する。本システムは、データ処理ハードウェアと、データ処理ハードウェアと通信するメモリハードウェアとを含む。メモリハードウェアは、データ処理ハードウェア上で実行された場合に、データ処理ハードウェアに上記の方法を含む所定の動作を実行させる命令を格納している。
【００１４】
本開示の１つまたは複数の実装形態の詳細は、添付の図面および以下の説明に記載されている。他の態様、特徴、および利点は、明細書および図面、ならびに特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【００１５】
【図１】トレーラの前方に配置された例示的な牽引車両の概略上面図である。
【図２】ユーザインターフェースと、センサシステムと、制御装置とを有する例示的な牽引車両の概略図である。
【図３】牽引車両およびトレーラの斜視図である。
【図４】捕捉された画像の内部における関心領域ＲＯＩに関する半高密度または高密度の点群の斜視図である。
【図５】カメラが移動するカメラ平面への点群の投影の斜視側面図である。
【図６Ａ】カメラ平面における点群の投影の概略上面図である。
【図６Ｂ】カメラ平面における点群の投影の概略上面図である。
【図７】牽引車両の後ろのトレーラに関連付けられたトレーラヒッチのカプラを検出および位置特定するための各動作の例示的な構成の概略図である。
【００１６】
複数の異なる図面における同様の参照符号は、同様の要素を指す。
【００１７】
詳細な説明
図１および図２を参照すると、限定するわけではないが、自動車、クロスオーバー、トラック、バン、多目的スポーツ車（ＳＵＶ）、レクリエーション用車両（ＲＶ）のような牽引車両１００は、トレーラ２００にヒッチングされるように、かつトレーラ２００を牽引するように構成可能である。牽引車両１００は、牽引車両ヒッチボール１２２を有する牽引車両ヒッチ１２０を介してトレーラ２００に接続され、牽引車両ヒッチボール１２２は、トレーラカプラ２１２を有するトレーラヒッチ２１０に接続される。ユーザディスプレイ１３２のようなユーザインターフェース１３０上に表示される、トレーラ２００，２００ａ〜ｃの１つまたは複数のトレーラ表現１３６，１３６ａ〜ｃから識別されるトレーラ２００に向かって自律的に後退することができる牽引車両１００を有することが望まれている。さらに、トレーラヒッチ２１０、すなわち、トレーラ２００のカプラ２１２および牽引バー２１４の位置をリアルタイムで追跡および推定するアルゴリズムを実行することが可能な、牽引車両１００によって支持されている位置推定および追跡システム１６０を有することも望まれている。位置推定および追跡システム１６０は、牽引車両１００の後部位置に配置された単一のカメラ１４２ａを使用して、画像１４３を捕捉し、その画像１４３を分析して、トレーラ２００のカプラ２１２および牽引バー２１４を識別および追跡することができる。位置推定および追跡システム１６０は、それぞれの捕捉された画像１４３の内部における事前に規定された関心領域（ＲＯＩ）３００内に、半高密度／高密度の点群４００（図４および図５に図示）を生成し、この点群４００に基づいて、位置推定および追跡システム１６０は、点群４００の内部におけるカプラ２１２および牽引バー２１４を位置特定する。点群４００内におけるカプラ２１２および牽引バー２１４の位置特定は、限定するわけではないが、視覚オドメトリ（ＶＯ）、Simultaneous Localization and Mapping（ＳＬＡＭ）、およびStructure from Motion（ＳｆＭ）のような周知のフレームワークによって実施可能である。さらに、位置推定および追跡システム１６０は、生成された点群４００の内部における後方カメラ１４２ａのカメラ姿勢を決定する。決定されたカメラ姿勢に基づいて、位置推定および追跡システム１６０は、牽引車両１００がトレーラ２００に向かって自律的に移動している間に、カメラ１４２ａが移動するカメラ平面３１０（図３）を決定する。その場合、位置推定および追跡システム１６０は、このカメラ平面３１０を使用して、受信した画像１４３の内部におけるカプラ２１２および牽引バー２１４を求める探索空間の複雑さを低減することができる。位置推定および追跡システム１６０が、画像１４３の内部におけるカプラ２１２およびカプラ位置を識別すると、位置推定および追跡システム１６０は、牽引バー２１４の形状を使用して、トレーラ２００の位置合わせ方向２２０を発見する。
【００１８】
図１〜図６を参照すると、いくつかの実装形態では、牽引車両１００の運転者は、牽引車両１００の後ろに配置されたトレーラ２００を牽引することを希望する。牽引車両１００は、選択されたトレーラ２００，２００ａ〜ｃの表現に関連付けられた、運転者による選択１３４の指示を受信するように構成可能である。いくつかの例では、運転者が、選択されたトレーラ２００，２００ａ〜ｃに向かって牽引車両１００を操縦し、その一方で、他の例では、牽引車両１００が、選択されたトレーラ２００，２００ａ〜ｃに向かって自律的に運転される。牽引車両１００は、例えば、ｘ，ｙ，およびｚ成分を有する運転コマンドに基づいて路面にわたって牽引車両１００を操縦する運転システム１１０を含むことができる。図示のように、運転システム１１０は、右前輪１１２，１１２ａと、左前輪１１２，１１２ｂと、右後輪１１２，１１２ｃと、左後輪１１２，１１２ｄとを含む。運転システム１１０は、他の車輪構成を含むこともできる。運転システム１１０は、それぞれの車輪１１２，１１２ａ〜ｄに関連付けられたブレーキを含む制動システム１１４と、牽引車両１００の速度および方向を調整するように構成された加速システム１１６とを含むこともできる。さらに、運転システム１１０は、サスペンションシステム１１８を含むことができ、このサスペンションシステム１１８は、それぞれの車輪１１２，１１２ａ〜ｄに関連付けられたタイヤ、タイヤ空気、スプリング、ショックアブソーバ、およびリンク機構を含み、このリンク機構は、牽引車両１００を牽引車両１００の車輪１１２，１１２ａ〜ｄに接続し、かつ牽引車両１００と車輪１１２，１１２ａ〜ｄとの間の相対運動を可能にする。サスペンションシステム１１８は、牽引車両１００の高さを調整して、牽引車両ヒッチ１２０（例えば、牽引車両ヒッチボール１２２）を、トレーラヒッチ２１０（例えば、トレーラヒッチカプラ２１２）と位置合わせすることができるように構成可能であり、これにより、牽引車両１００とトレーラ２００との間の自律的な接続が可能になる。
【００１９】
牽引車両１００は、牽引車両１００によって定義される３つの相互に垂直な軸、すなわち横軸Ｘ、前後軸Ｙ、および中心垂直軸Ｚに対して相対的な、複数の異なる運動を組み合わせることによって、路面にわたって移動することができる。横軸Ｘは、牽引車両１００の右側と左側との間に延在している。前後軸Ｙに沿った前進運転方向は、Ｆとして指定され、前進運動とも称される。さらに、前後方向Ｙに沿った後進運転方向または後退運転方向は、Ｒとして指定され、後退運動とも称される。サスペンションシステム１１８が牽引車両１００のサスペンションを調整する際には、牽引車両１００を、Ｘ軸および／またはＹ軸を中心にして傾斜させるか、または中心垂直軸Ｚに沿って移動させることができる。
【００２０】
牽引車両１００は、ユーザインターフェース１３０を含むことができる。ユーザインターフェース１３０は、１つまたは複数の入力機構またはスクリーンディスプレイ１３２（例えば、タッチスクリーンディスプレイ）を介して運転者から１つまたは複数のユーザコマンドを受信し、かつ／または運転者への１つまたは複数の通知を表示する。ユーザインターフェース１３０は、車両制御装置１５０と通信しており、車両制御装置１５０自体は、センサシステム１４０と通信する。いくつかの例では、ユーザインターフェース１３０は、牽引車両１００の周囲環境の画像を表示して、１つまたは複数の挙動の実行を開始する１つまたは複数のコマンドが（運転者から）ユーザインターフェース１３０によって受信されるようにする。いくつかの例では、ユーザディスプレイ１３２は、牽引車両１００の後ろに配置されたトレーラ２００，２００ａ〜ｃの１つまたは複数のトレーラ表現１３６，１３６ａ〜ｃを表示する。この場合、運転者は、トレーラ２００，２００ａ〜ｃの表現１３６，１３６ａ〜ｃを選択し、制御装置１５０に、選択された表現１３６，１３６ａ〜ｃのトレーラ２００，２００ａ〜ｃに関連付けられた位置推定および追跡システム１６０を実行させる。いくつかの例では、ユーザディスプレイ１３２が、牽引車両１００の後ろに配置されたトレーラ２００，２００ａ〜ｃの１つの表現１３６，１３６ａ〜ｃを表示する場合には、制御装置１５０は、この１つの表現１３６，１３６ａ〜ｃの１つのトレーラ２００，２００ａ〜ｃに関連付けられた位置推定および追跡システム１６０を、自動的に実行するか、または運転者からの、トレーラ２００，２００ａ〜ｃに自律的に取り付けるようにとの指示に応じて実行することができる。車両制御装置１５０は、コンピューティングプロセッサ１５２上で実行可能な命令を格納することができる非一時的メモリ１５４（例えば、ハードディスク、フラッシュメモリ、ランダムアクセスメモリ、メモリハードウェア）と通信するコンピューティングデバイス（またはプロセッサまたはデータ処理ハードウェア）１５２（例えば、１つまたは複数のコンピューティングプロセッサを有する中央処理装置）を含む。
【００２１】
牽引車両１００は、高信頼性かつロバストな運転を提供するためのセンサシステム１４０を含むことができる。センサシステム１４０は、種々異なる種類のセンサを含むことができ、これらの種々異なる種類のセンサは、牽引車両１００の周囲環境の知覚情報を作成するために別々にまたは他のセンサと一緒に使用可能であり、周囲環境の知覚情報は、センサシステム１４０によって検出された物体および障害物に基づいて、牽引車両１００を運転するため、かつ運転者がインテリジェントな決定を行うことを支援するために使用される。センサシステム１４０は、１つまたは複数のカメラ１４２を含むことができる。いくつかの実装形態では、牽引車両１００は、後方運転経路のビューを有する画像１４３を牽引車両１００に提供するために据え付けられた後方カメラ１４２ａを含む。後方カメラ１４２ａは、広範囲のパノラマ画像または半球画像１４３を作成するために意図された強力な視覚的歪みを生成する超広角レンズを含む魚眼レンズを含むことができる。魚眼カメラは、非常に広い画角を有する画像１４３を捕捉する。さらに、魚眼カメラによって捕捉された画像１４３は、特徴的な凸状の非直線的な外観を有する。牽引車両１００の後方運転経路の画像１４３を捕捉するために、他の種類のカメラを使用してもよい。
【００２２】
いくつかの例では、センサシステム１４０は、牽引車両１００の１つまたは複数の車輪１１２，１１２ａ〜ｄに関連付けられた１つまたは複数の車輪エンコーダ１４４も含む。車輪エンコーダ１４４は、車輪の角度位置または運動をアナログまたはデジタルの出力信号に変換する電気機械的な装置である。したがって、車輪エンコーダ１４４は、車輪が走行した速度および距離を求める。
【００２３】
センサシステム１４０は、牽引車両１００に関連付けられた１つまたは複数の加速度および車輪角度センサ１４６を含むこともできる。加速度および車輪角度センサ１４６は、横軸Ｘおよび前後軸Ｙの方向における牽引車両１００の加速度を決定する。
【００２４】
センサシステム１４０は、車両の線形加速度（１つまたは複数の加速度計を使用して）および回転速度（１つまたは複数のジャイロスコープを使用して）を測定するように構成されたＩＭＵ（慣性測定ユニット）１４８を含むこともできる。いくつかの例では、ＩＭＵ１４８は、牽引車両１００の方位基準も決定する。したがって、ＩＭＵ１４８は、牽引車両１００のピッチ、ロール、およびヨーを決定する。
【００２５】
センサシステム１４０は、限定するわけではないが、レーダー、ソナー、ＬＩＤＡＲ（Light Detection and Rangingであり、散乱光の特性を測定して、遠方の目標の距離および／または他の情報を検出する光学リモートセンシングを伴うことが可能）、ＬＡＤＡＲ（Laser Detection and Ranging）、超音波センサ、ステレオカメラ等のような、他のセンサを含むことができる。車輪エンコーダ１４４と、加速度および車輪角度センサ１４６と、ＩＭＵ１４８とは、センサデータ１４５を制御装置１５０に、すなわち位置推定および追跡システム１６０に出力する。
【００２６】
車両制御装置１５０は、位置推定および追跡システム１６０を実行し、この位置推定および追跡システム１６０は、後方カメラ１４２ａから画像１４３を受信し、ユーザインターフェース１３０を介して運転者によって識別された牽引車両１００に対するトレーラ２００の位置を特定する。より具体的には、位置推定および追跡システム１６０は、受信した画像１４３の内部におけるカプラ２１２の位置と、牽引バー２１４の位置とを特定する。さらに、位置推定および追跡システム１６０は、３次元（３Ｄ）座標系またはグローバル座標系におけるカプラ２１２の位置と、牽引バー２１４の位置とを特定する。いくつかの例では、位置推定および追跡システム１６０は、牽引車両１００の前後軸Ｙがトレーラ２００の前後軸Ｙに重なり合うように、牽引車両１００をトレーラ２００と位置合わせするための位置合わせ方向２２０を決定する。位置推定および追跡システム１６０は、車両・トレーラ・システム（図３を参照）のヒッチングおよび位置合わせのプロセスを自動化する反復アルゴリズムを含む。
【００２７】
位置推定および追跡システム１６０は、後方カメラ１４２ａから画像１４３を受信する。いくつかの実装形態では、位置推定および追跡システム１６０は、受信した画像１４３をディスプレイ１３２に表示するようにユーザインターフェース１３０に指示し、表示された画像１４３の内部において関心領域（ＲＯＩ）３００を選択することをユーザに要求する。ＲＯＩ３００は、トレーラヒッチ２１０を含んでいる境界枠である。他の例では、位置推定および追跡システム１６０は、牽引バー・カプラ・識別アルゴリズムを含むことができ、この牽引バー・カプラ・識別アルゴリズムは、画像１４３の内部におけるトレーラヒッチ２１０を識別し、ＲＯＩ３００である境界枠によってトレーラヒッチ２１０を境界付ける。
【００２８】
位置推定および追跡システム１６０は、図４に示されているように、ＲＯＩ３００の内部にある、牽引バー２１４およびカプラ２１２の半高密度／高密度の点群４００と、トレーラ２００の一部とを生成する。点群は、空間内のデータ点の集合であり、より具体的には、点群は、物体の外側表面上の多数の点を含む。
【００２９】
位置推定および追跡システム１６０は、１つまたは複数の技術を使用して、点群４００内の牽引バー２１４およびカプラ２１２を位置特定することができる。これらの技術の中には、限定するわけではないが、視覚オドメトリ（ＶＯ）、Simultaneous Localization and Mapping（ＳＬＡＭ）、およびStructure from Motion（ＳｆＭ）が含まれる。ＶＯ法は、カメラ１４２ａから受信した画像１４３を分析することによって、トレーラ２００、カメラ１４２ａ、カプラ２１２、または牽引バー２１４の位置および向きを特定する方法である。ＶＯ法は、画像の特徴点を抽出し、画像シーケンスにおいてこれらの特徴点を追跡することができる。特徴点の例には、限定するわけではないが、トレーラ２００、カプラ２１２、または牽引バー２１４上の縁部、角部、または染みが含まれていてもよい。ＶＯ法は、画像シーケンスにおける画素強度を視覚入力として直接的に使用することもできる。ＳＬＡＭ法は、１つまたは複数の目標を同時に追跡し続けながら、未知の周囲環境の地図を構築または更新する。換言すれば、ＳＬＡＭ法は、受信した画像１４３を外部情報の唯一のソースとして使用して、牽引車両１００およびカメラ１４２ａの位置および向きを確立すると同時に、ＲＯＩ３００内の物体の表現を構築する。ＳｆＭ法は、受信した画像１４３（すなわち、２Ｄ画像）に基づいて、ＲＯＩ３００内の物体の３Ｄ構造を推定する。ＳｆＭ法は、カメラ１４２が捕捉した画像１４３のシーケンスに基づいて、カメラ１４２ａおよび牽引車両１００の姿勢を推定することができる。
【００３０】
いくつかの実装形態では、位置推定および追跡システム１６０は、ＳＬＡＭ法またはＳｆＭ法を実行し、したがって、位置推定および追跡システム１６０は、まず始めに初期化される。したがって、位置推定および追跡システム１６０は、運転システム１１０に牽引車両１００を、前後軸Ｙに沿った直進方向に、例えば前進運転方向Ｆまたは後退運転方向Ｒに、事前に規定された距離だけ移動させる命令またはコマンド１９０を、運転システム１１０に送信する。いくつかの例では、事前に規定された距離は、数センチメートルである。事前に規定された距離は、５ｃｍ〜５０ｃｍの間であってもよい。前後軸Ｙに沿った前進運転移動Ｆおよび後退運転移動ＲによってＳＬＡＭまたはＳｆＭが初期化される。さらに、位置推定および追跡システム１６０は、前進運転移動Ｆおよび後退運転移動Ｒに沿ってトラッカーアルゴリズムを実行して、画像１４３の内部における、運転者によって提供された、または位置推定および追跡システム１６０によって決定されたＲＯＩ３００を更新する。牽引車両１００が後退方向Ｒに移動すると、トレーラ２００、牽引バー２１４、およびカプラ２１２の透視図およびサイズが、画像１４３内において変化する。ＲＯＩ３００は、牽引バーおよびカプラを含み、したがって、ＲＯＩ３００内の特徴点または画素強度が、位置推定および追跡システム１６０によって追跡される。ＲＯＩ３００は、画像１４３内の牽引バー２１４およびカプラ２１２以外のすべてのものをフィルタアウトするために使用される。
【００３１】
位置推定および追跡システム１６０は、２つの画像を分析するのではなく、受信した画像１４３のすべてのシーケンスを分析する。したがって、位置推定および追跡システム１６０は、決定の実行時によりロバストになる。十分に確立された理論であるＶＯ、ＳＬＡＭ、およびＳｆＭフレームワークにより、車両は、自己生成された３Ｄ点群地図においてリアルタイムで位置特定を行うことが可能となる。ＶＯ、ＳＬＡＭ、またはＳｆＭアルゴリズムによって生成された３Ｄ点群地図によって、平面決定モジュール１６２は、（画像フレームではなく）３Ｄ世界においてトレーラカプラ２１２を発見することが可能となる。
【００３２】
いくつかの実装形態では、位置推定および追跡システム１６０は、ＶＯ、ＳＬＡＭ、またはＳｆＭアルゴリズムのうちの１つに基づいて、３Ｄ点群地図のスケールを決定する。単眼カメラのみを使用して３Ｄ点群地図を生成した場合には、この３Ｄ点群地図は、スケールの曖昧性を被ることとなり、すなわち、単眼カメラのみを用いて作成された地図は、１つのスケールまでしか復元できない。しかしながら、位置推定および追跡システム１６０が地図のスケールを把握していない場合でも、位置推定および追跡システム１６０は、ＶＯ、ＳＬＡＭ、またはＳｆＭアルゴリズムを車両センサデータ１４５と融合することによって、地図のスケールを決定することができる。別の例では、位置推定および追跡システム１６０は、道路平面３２０に基づいて地図のスケールを決定する。位置推定および追跡システム１６０は、地図内におけるカメラ位置から道路平面３２０までの距離を求める。地図のスケールは、（カメラデータ１４１からの）カメラ１４２ａの高さを、このステップで計算された距離で割ったものによって与えられる。３Ｄ点群地図は、地図内における構造同士の距離に関する詳細を提供することなく、周囲環境の構造を表現する。したがって、位置推定および追跡システム１６０が、距離情報を含む地図のスケールを決定し、これにより、位置推定および追跡システム１６０は、世界座標におけるカプラ２１２の位置を特定することが可能となる。
【００３３】
位置推定および追跡システム１６０は、カメラ平面３１０と、道路平面３２０とを決定するように構成された平面決定モジュール１６２を含む。いくつかの実装形態では、平面決定モジュール１６２は、カメラ１４２ａが沿って移動するカメラ平面３１０と、道路平面３２０とを決定する。カメラ平面３１０を決定するために、平面決定モジュール１６２は、カメラ１４２ａからカメラデータ１４１として受信した、カメラ１４２ａの少なくとも３つの以前の３Ｄ位置を使用する。カメラデータ１４１は、内因性パラメータ（例えば、焦点距離、イメージセンサフォーマット、および主点）と、外因性パラメータ（例えば、３Ｄ世界座標から３Ｄカメラ座標への座標系変換、換言すれば、外因性パラメータは、世界座標におけるカメラ中心の位置と、カメラの向きとを定義する）とを含むことができる。さらに、カメラデータ１４１は、地面に対するカメラ１４２ａの最小／最大／平均高さ（例えば、車両の積載時および非積載時）と、カメラ１４２ａと牽引車両ヒッチボール１２２との間の長手方向距離とを含むことができる。平面決定モジュール１６２は、カメラ１４２ａの少なくとも３つの以前の３Ｄ位置の３つの点の３Ｄ位置に基づいて、カメラ平面３１０を決定する。いくつかの例では、位置推定および追跡システム１６０は、カメラ平面３１０に基づいて道路平面３２０を決定する。いくつかの実装形態では、平面決定モジュール１６２は、カメラ平面３１０およびカメラデータ１４１に基づいて道路平面３２０を決定する。なぜなら、道路平面３２０は、（カメラ情報１４１において提供される）地面からのカメラ１４２ａの高さの分だけカメラ平面３１０をシフトさせたものだからである。この手順は、カメラ平面３１０を決定するために使用される３つの３Ｄ点が、同一線上にある場合に有用であり、この場合には、これらの３Ｄ点によって生成される線と同一平面上にあるカメラ平面３１０が、無数に存在する。
【００３４】
道路平面３２０を決定するために、平面決定モジュール１６２は、道路に関連付けられた捕捉された２Ｄ画像１４３から少なくとも３つの特徴点を抽出する。続いて、位置推定および追跡システム１６０は、点群４００の内部におけるこれら３つの特徴点の３Ｄ位置を特定し、次いで、位置推定および追跡システム１６０は、これら３つの特徴点に基づいて道路平面３２０を計算する。いくつかの例では、位置推定および追跡システム１６０は、道路平面３２０に基づいてカメラ平面３１０を決定する。いくつかの実装形態では、位置推定および追跡システム１６０は、道路平面３２０およびカメラ情報１４１に基づいてカメラ平面を決定する。なぜなら、カメラ平面３１０は、（カメラ情報１４１によって提供される）地面からのカメラ１４２ａの高さの分だけ道路平面３２０をシフトさせたものだからである。
【００３５】
平面決定モジュール１６２は、牽引車両１００が後退方向Ｒに自律的に移動しているときに、平面３１０，３２０をリアルタイムで決定および更新することができるか、または道路が平坦であることを平面決定モジュール１６２が判定した場合には、位置推定および追跡システム１６０が、平面３１０，３２０を一度だけ決定することができる。上記の方法は、カメラ平面３１０または道路平面３２０を決定するために３つの点を使用する。しかしながら、いくつかの例では、平面決定モジュール１６２は、平面３１０，３２０を決定するために４つ以上の点に依存してもよい。この場合には、位置推定および追跡システム１６０は、平面３１０，３２０を決定するために、最小二乗法、ランダムサンプルコンセンサス（ＲＡＮＳＡＣ）法、サポートベクターマシン（ＳＶＭ）法、またはこれらのアルゴリズムの任意の変形形態を使用する。平面３１０，３２０を決定するために４つ以上の点を使用することによって、平面決定モジュール１６２は、外れ値に対するロバスト性を高める。
【００３６】
平面決定モジュール１６２がカメラ平面３１０および道路平面３２０を決定すると、位置推定および追跡システム１６０の一部である検出モジュール１６４は、牽引バー２１４およびカプラ２１２の位置を特定する。検出モジュール１６４は、図５に示されているように、ＲＯＩ３００に対応する群点４０２をカメラ平面３１０上に投影する。次いで、検出モジュール１６４は、コンピュータビジョンベースの識別アルゴリズム（例えば、ニューラルネットワーク、相関フィルタ等）を実行して、カメラ平面３１０上に投影された牽引バー２１４またはカプラ２１２の既知の形状を発見する。いくつかの例では、牽引バー２１４およびカプラ２１２の形状の特性を、メモリハードウェア１５４に格納することができるか、または形状を識別するための訓練アルゴリズムを使用して訓練することができる。次いで、検出モジュール１６４は、カプラ２１２の特定された位置ＬＴＣと、牽引バー２１４の特定された位置ＬＴＢと、トレーラヒッチ２１０の形状とに基づいて、牽引車両１００に対するトレーラ２００の位置合わせ方向２２０（図６Ａおよび図６Ｂ）を決定することができる。したがって、カメラ平面３１０上に点４０２を投影することによって、検出モジュール１６４は、カメラ平面３１０におけるカプラ２１２の位置を特定し、カメラ平面３１０におけるカプラ２１２の位置に基づいて、検出モジュール１６４は、現実世界の３Ｄ座標におけるカプラ２１２の位置を特定する。さらに、カメラ平面３１０上に点４０２を投影することによって、検出モジュール１６４は、カメラ平面３１０の内部における牽引車両１００に対するトレーラ２００の位置合わせ方向を決定する。検出モジュール１６４は、牽引バー２１４およびカプラ２１２の両方の位置を特定し、これにより、車両１００をトレーラ２００と位置合わせすることが可能となる。
【００３７】
いくつかの実装形態では、距離推定モジュール１６６は、カメラ平面３１０におけるカプラの位置ＬＴＣと、カメラデータ１４１から受信したカメラ位置ＬＶＣとの間の距離を求めることによって、カプラ２１２と後方カメラ１４２ａとの間の距離Ｄを推定する。図６Ａおよび図６Ｂに示されているように、距離推定モジュール１６６は、（平面Ｆの法線である）位置合わせ方向２２０と、カメラ平面３１０におけるカプラ２１２の位置とによって形成される平面Ｆを決定することができる。長手方向距離ＤＬｏｎは、カメラ１４２ａの位置と平面Ｆとの間の距離である。横方向距離ＤＬａｔは、カメラ位置ＬＶＣのＦへの投影１４２ａ’と、カメラ平面３１０におけるカプラ位置の投影２１２’との間の距離である。
【００３８】
いくつかの実装形態では、カプラ高さモジュール１６８は、地面に対するカプラ２１２の高さ（図示せず）を決定する。例えば、カプラ高さモジュール１６８は、検出モジュール１６４によって特定されたカプラ位置ＬＴＣと、道路平面３２０との間の距離を求めることができる。カプラ高さモジュール１６８は、道路平面３２０とカプラ点との間の最短距離を使用することができる（カプラが点群内の２つ以上の点によって表現されている場合には、このカプラを表現するために平均点を使用する）。
【００３９】
位置推定および追跡システム１６０は、牽引バー２１４およびカプラ２１２を検出し、次いで、カプラ位置ＬＴＣと、地面からのカプラの高さと、カメラ１４２ａとカプラ位置ＬＴＣとの間の距離（すなわち、長手方向距離ＤＬｏｎおよび横方向距離ＤＬａｔ）とを求める。制御装置１５０は、位置推定および追跡システム１６０によって決定された情報に基づいて、経路計画システム１７０を実行する。経路計画システム１７０は、牽引車両１００をトレーラ２００に向かって後退方向Ｒに自律的に運転させて、トレーラ２００と自律的に接続されるようにする経路を決定する。
【００４０】
牽引車両１００は、計画された経路に沿って自律的に操縦しているので、経路計画システム１７０は、位置推定および追跡システム１６０からの更新された情報の継続的な受信に基づいて継続的に経路を更新する。いくつかの例では、物体検出システムが、計画された経路に沿って１つまたは複数の物体を識別し、１つまたは複数の物体の位置に関係している経路計画システム１７０のデータを送信する。この場合、経路計画システム１７０は、１つまたは複数の物体を回避する一方で、所定の操縦も実行するように、計画された経路を再計算する。いくつかの例では、経路計画システムは、衝突の確率を決定し、衝突の確率が所定のしきい値を超えている場合には、経路計画システム１７０が、経路を調整して、この経路を運転者支援システム１８０に送信する。
【００４１】
経路計画システム１７０が、計画された経路を決定すると、車両制御装置１５０は、運転者支援システム１８０を実行する。運転者支援システム１８０自体は、経路追従挙動１８２を含む。経路追従挙動１８２は、計画された経路を受信し、この計画された経路に沿って牽引車両１００を自律的に運転させるコマンド１９０を運転システム１１０に送信する１つまたは複数の挙動１８２ａ〜ｃを実行し、これにより、牽引車両１００を自律的にトレーラ２００に接続させる。
【００４２】
経路追従挙動１８２は、制動挙動１８２ａと、速度挙動１８２ｂと、操舵挙動１８２ｃとを含む。いくつかの例では、経路追従挙動１８２は、ヒッチ接続挙動と、サスペンション調整挙動も含む。それぞれの挙動１８２ａ〜１８２ｃは、牽引車両１００に、とりわけ後退運転、特定の角度での旋回、制動、加速、減速のような行動をとらせる。車両制御装置１５０は、運転システム１１０を制御することによって、より具体的には、運転システム１１０にコマンド１９０を発行することによって、牽引車両１００を路面にわたって任意の方向に操縦することができる。
【００４３】
制動挙動１８２ａは、計画された経路に基づいて車両１００を停止または減速させるために実行可能である。制動挙動１８２ａは、運転システム１１０に、例えば制動システム（図示せず）に、信号またはコマンド１９０を送信して、牽引車両１００を停止させるか、または牽引車両１００の速度を低下させる。
【００４４】
速度挙動１８２ｂは、計画された経路に基づいて加速または減速を行うことによって牽引車両１００の速度を変更するために実行可能である。速度挙動１８２ｂは、減速させる場合には制動システム１１４に、または加速させる場合には加速システム１１６に、信号またはコマンド１９０を送信する。
【００４５】
操舵挙動１８２ｃは、計画された経路に基づいて牽引車両１００の方向を変更するために実行可能である。したがって、操舵挙動１８２ｃは、操舵角度を示す信号またはコマンド１９０を加速システム１１６に送信して、運転システム１１０に方向を変更させる。
【００４６】
前述したように、位置推定および追跡システム１６０は、群点４０２をカメラ平面３１０上に投影することによって、カプラＬＴＣの位置を特定する。さらに、位置推定および追跡システム１６０は、カメラ移動平面３１０および道路平面３２０を計算することによって、外れ値をフィルタリングする。例えば、外れ値は、地面上で発見された可能性のある点である。地面の上方およびカメラ平面３１０の下方にある点のみが考慮される。
【００４７】
いくつかの実装形態では、位置推定および追跡システム１６０は、前述したようにＲＯＩ３００のみを生成する代わりに、捕捉された画像１４３の半高密度または高密度の点群を生成する。捕捉された画像１４３の半高密度または高密度の点群を生成することにより、位置推定および追跡システム１６０は、画像１４３の内部にある物体を検出することができ、したがって、経路計画システム１７０は、識別された物体を使用して、計画された経路を調整し、検出された物体を回避することができる。
【００４８】
位置推定および追跡システム１６０は、単一の後方カメラ１４２ａから画像を受信し、したがって、位置推定および追跡システム１６０は、画像１４３内におけるトレーラカプラ２１２のサイズに関する事前の知識を必要としない。位置推定および追跡システム１６０は、ＧＰＵまたはグラフィックアクセラレータの使用の有無にかかわらず、標準的なＣＰＵを使用する。
【００４９】
図７は、図１〜図６Ｂに記載されているシステムを使用して、牽引車両１００の後ろに配置されたトレーラ２００に関連付けられたトレーラヒッチ２１０のカプラ２１２を検出および位置特定する方法７００の各動作の例示的な構成を提供する。ブロック７０２において、方法７００は、データ処理ハードウェア１５２において、牽引車両１００の後部位置に配置されていて、かつデータ処理ハードウェア１５２と通信する後方カメラ１４２ａから、画像１４３を受信することを含む。いくつかの例では、データ処理ハードウェア１５２は、命令、画像１４３、および／またはデータを格納するように構成されたメモリハードウェア１５４と通信している。ブロック７０４において、方法７００は、データ処理ハードウェア１５２によって、画像１４３の内部において関心領域３００を決定することを含む。関心領域３００は、トレーラヒッチ２１０の表現を含む。ブロック７０６において、方法７００は、データ処理ハードウェア１５２によって、関心領域３００の内側の物体を表現する３次元（３Ｄ）の点群４００を決定することを含む。ブロック７０８において、方法７００は、データ処理ハードウェア１５２によって、受信した画像１４３に基づいて、後方カメラ１４２ａが移動するカメラ平面３１０を決定することを含む。ブロック７１０において、方法７００は、データ処理ハードウェア１５２によって、点群４００に関連付けられた群点４０２をカメラ平面３１０上に投影することを含む。ブロック７１２において、方法７００は、データ処理ハードウェア１５２によって、カメラ平面３１０上に投影された群点４０２に基づいてカプラ位置ＬＴＣを特定することを含む。ブロック７１４において、方法７００は、データ処理ハードウェア１５２によって、カプラ位置ＬＴＣに基づいて経路を決定することを含む。この経路は、牽引車両１００の現在の位置を始端にして、牽引車両１００がトレーラ２００に取り付けられるところで終端する。ブロック７１６において、方法７００は、牽引車両１００を経路に沿って後退方向Ｒに自律的に運転させる命令１９０を、データ処理ハードウェア１５２から運転システム１１０に送信することを含む。
【００５０】
いくつかの実施形態では、方法７００は、データ処理ハードウェア１５２によって、カメラ平面３１０上に投影された群点４０２に基づいて、牽引車両１００に対するトレーラ２００の位置合わせ方向２２０を決定することをさらに含む。経路は、位置合わせ方向２２０に基づくこともできる。いくつかの例では、方法７００は、データ処理ハードウェア１５２によって、後方カメラとカプラ２１２との間の長手方向距離および横方向距離を求めることを含む。本方法は、位置合わせ方向２２０に対して法線方向の平面Ｆを決定することと、後方カメラ１４２ａと平面Ｆとの間の第１の距離ＤＬｏｎを求めることとを含む。第１の距離ＤＬｏｎは、長手方向距離ＤＬｏｎを示す。方法７００は、カメラ投影１４２ａ’である平面Ｆ上に後方カメラ１４２ａの位置を投影することと、平面Ｆ上への後方カメラ１４２ａの投影１４２ａ’と、カメラ平面３１０におけるカプラ２１２の投影２１２’との間の第２の距離ＤＬａｔを求めることとを含むこともできる。第２の距離ＤＬａｔは、長手方向距離ＤＬａｔを示す。経路は、長手方向距離ＤＬｏｎおよび横方向距離ＤＬａｔに基づくこともできる。
【００５１】
いくつかの例では、画像１４３の内部において関心領域３００を決定すること（ブロック７０４）は、受信した画像１４３を表示するようにとの命令を、データ処理ハードウェア１５２からディスプレイに送信することと、データ処理ハードウェア１５２において、関心領域３００のユーザ選択を受信することとを含む。
【００５２】
いくつかの実装形態では、関心領域３００の点群４００を決定すること（ブロック７０６）は、視覚オドメトリ（ＶＯ）アルゴリズム、Simultaneous Localization and Mapping（ＳＬＡＭ）アルゴリズム、およびStructure from Motion（ＳｆＭ）アルゴリズムのうちの１つを実行することを含む。いくつかの例では、方法７００は、牽引車両１００を前進直進方向Ｆまたは後退直進方向Ｒに、事前に規定された距離だけ運転させる命令を、データ処理ハードウェア１５２から運転システム１１０に送信することによって、アルゴリズムの実行前にデータ処理ハードウェア１５２を初期化することも含む。
【００５３】
いくつかの例では、カメラ平面３１０を決定すること（ブロック７０８）は、データ処理ハードウェア１５２によって、受信した画像１４３から後方カメラの少なくとも３つの３次元位置を特定することと、データ処理ハードウェア１５２によって、３つの３次元位置に基づいてカメラ平面３１０を決定することとを含む。いくつかの実装形態では、方法７００は、データ処理ハードウェア１５２によって、牽引車両１００を支持している道路からの後方カメラ１４２ａの高さを求め、後方カメラの高さの分だけカメラ平面３１０をシフトさせることにより、道路平面３２０を決定することも含む。
【００５４】
いくつかの実装形態では、方法７００は、データ処理ハードウェア１５２によって、道路を含む画像１４３から少なくとも３つの特徴点を抽出し、データ処理ハードウェア１５２によって、点群４００の点４０２をそれぞれの特徴点に関連付け、データ処理ハードウェア１５２によって、少なくとも３つの特徴点に関連付けられた、点群４００の少なくとも３つの点に基づいて道路平面３２０を決定することにより、道路平面３２０を決定することを含む。いくつかの例では、カメラ平面３１０を決定することは、データ処理ハードウェア１５２によって、道路からの後方カメラ１４２ａの高さを求めることと、データ処理ハードウェア１５２によって、後方カメラ１４２ａの高さの分だけ道路平面３２０をシフトさせることとを含む。
【００５５】
方法７００は、データ処理ハードウェア１５２によって、カプラ２１２と道路平面３２０との間の距離に基づいてカプラ２１２の高さを求めることを含み、経路は、カプラ２１２の高さに基づいている。
【００５６】
本明細書に記載されているシステムおよび技術の種々の実装形態は、デジタル電子回路、集積回路、特別に設計されたＡＳＩＣ（特定用途向け集積回路）、コンピュータハードウェア、ファームウェア、ソフトウェア、および／またはそれらの組み合わせの形態で実現可能である。これらの種々の実装形態は、プログラマブルシステム上で実行可能および／または解釈可能な１つまたは複数のコンピュータプログラムの形態での実装を含むことができ、このプログラマブルシステムは、ストレージシステムからデータおよび命令を受信し、かつストレージシステムにデータおよび命令を送信するために結合された、特別であってもよいし汎用であってもよい少なくとも１つのプログラマブルプロセッサと、少なくとも１つの入力デバイスと、少なくとも１つの出力デバイスとを含む。
【００５７】
（プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られる）これらのコンピュータプログラムは、プログラマブルプロセッサのための機械命令を含み、ハイレベルの手続き型プログラミング言語および／またはオブジェクト指向型プログラミング言語、および／またはアセンブリ言語／機械語の形態で実装可能である。本明細書で使用される場合、「機械可読媒体」および「コンピュータ可読媒体」という用語は、機械命令を機械可読信号として受信する機械可読媒体を含む、プログラマブルプロセッサに機械命令および／またはデータを提供するために使用される任意のコンピュータプログラム製品、装置、および／またはデバイス（例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス（ＰＬＤ））を指す。「機械可読信号」という用語は、プログラマブルプロセッサに機械命令および／またはデータを提供するために使用される任意の信号を指す。
【００５８】
本明細書に記載されている主題および機能動作の実装形態は、デジタル電子回路の形態で、または本明細書に開示されている構造およびそれらの構造的な同等物を含むコンピュータソフトウェア、ファームウェア、もしくはハードウェアの形態で、またはそれらの１つまたは複数の組み合わせの形態で、実装可能である。さらに、本明細書に記載されている主題は、１つまたは複数のコンピュータプログラム製品として実装可能であり、すなわち、データ処理装置によって実行するための、またはデータ処理装置の動作を制御するための、コンピュータ可読媒体上に符号化されたコンピュータプログラム命令の１つまたは複数のモジュールとして実装可能である。コンピュータ可読媒体は、機械可読ストレージデバイス、機械可読ストレージ基板、メモリデバイス、機械可読伝搬信号をもたらす物質の組成物、またはそれらの１つまたは複数の組み合わせであり得る。「データ処理装置」、「コンピューティングデバイス」、および「コンピューティングプロセッサ」という用語は、一例としてプログラマブルプロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含む、データを処理するためのすべての装置、デバイス、および機械を包含する。装置は、ハードウェアに加えて、当のコンピュータプログラムの実行環境を作成するコードを含むことができ、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらの１つまたは複数の組み合わせを構成するコードを含むことができる。伝搬信号は、人工的に生成された信号であり、例えば、適切な受信機装置に送信するための情報を符号化するために生成される、機械生成の電気信号、光学信号、または電磁信号である。
【００５９】
同様に、各動作は、図面において特定の順序で図示されているが、このことは、望ましい結果を達成するために、そのような動作が、図示された特定の順序または連続した順序で実行されること、または図示されたすべての動作が実行されることが必要であると理解されるべきではない。特定の状況では、マルチタスク処理および並列処理が有利である場合がある。さらに、上記の実施形態における複数の異なるシステムコンポーネントの分離は、すべての実施形態においてそのような分離が必要であると理解されるべきではなく、記載されている複数のプログラムコンポーネントおよびシステムを、一般に、単一のソフトウェア製品に一緒に組み込むことができるか、または複数のソフトウェア製品にパッケージ化することができることが理解されるべきである。
【００６０】
複数の実装形態について説明してきた。それでもなお、本開示の思想および範囲から逸脱することなく、種々の変更を加えることができることが理解されるであろう。したがって、他の実装形態は、以下の特許請求の範囲内にある。
【図１】
2021522504.tif 000003
【図２】
2021522504.tif 000004
【図３】
2021522504.tif 000005
【図４】
2021522504.tif 000006
【図５】
2021522504.tif 000007
【図６Ａ】
2021522504.tif 000008
【図６Ｂ】
2021522504.tif 000009
【図７】
2021522504.tif 000010
【国際調査報告】
2021522504.tif 000011
2021522504.tif 000012
2021522504.tif 000013