IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社デンソーの特許一覧

特開2024-164679推定装置、推定プログラム、推定データ生成方法
<>
  • 特開-推定装置、推定プログラム、推定データ生成方法 図1
  • 特開-推定装置、推定プログラム、推定データ生成方法 図2
  • 特開-推定装置、推定プログラム、推定データ生成方法 図3
  • 特開-推定装置、推定プログラム、推定データ生成方法 図4
  • 特開-推定装置、推定プログラム、推定データ生成方法 図5
  • 特開-推定装置、推定プログラム、推定データ生成方法 図6
  • 特開-推定装置、推定プログラム、推定データ生成方法 図7
  • 特開-推定装置、推定プログラム、推定データ生成方法 図8
  • 特開-推定装置、推定プログラム、推定データ生成方法 図9
  • 特開-推定装置、推定プログラム、推定データ生成方法 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024164679
(43)【公開日】2024-11-27
(54)【発明の名称】推定装置、推定プログラム、推定データ生成方法
(51)【国際特許分類】
   G01S 17/89 20200101AFI20241120BHJP
   G01C 21/30 20060101ALI20241120BHJP
   G05D 1/43 20240101ALI20241120BHJP
   G01S 17/86 20200101ALI20241120BHJP
【FI】
G01S17/89
G01C21/30
G05D1/02 A
G01S17/86
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2023080340
(22)【出願日】2023-05-15
(71)【出願人】
【識別番号】000004260
【氏名又は名称】株式会社デンソー
(74)【代理人】
【氏名又は名称】矢作 和行
(74)【代理人】
【識別番号】100121991
【弁理士】
【氏名又は名称】野々部 泰平
(74)【代理人】
【識別番号】100145595
【弁理士】
【氏名又は名称】久保 貴則
(72)【発明者】
【氏名】南口 雄一
【テーマコード(参考)】
2F129
5H301
5J084
【Fターム(参考)】
2F129AA03
2F129BB08
2F129BB15
2F129BB20
2F129BB22
2F129BB33
2F129BB49
2F129GG17
2F129GG18
5H301AA01
5H301BB05
5H301BB14
5H301CC03
5H301CC06
5H301CC10
5H301EE06
5H301EE13
5H301FF04
5H301GG07
5H301GG08
5H301GG09
5H301GG10
5H301GG14
5H301GG16
5J084AA05
5J084AB20
5J084AC02
5J084AC07
5J084CA31
5J084CA70
5J084DA04
5J084DA07
5J084EA33
(57)【要約】
【課題】自己位置の推定精度に対してロバスト性を確保する推定装置の提供。
【解決手段】推定装置のプロセッサは、内界にて取得の内界データに基づくデッドレコニングによりメイン推定位置Pdを取得することと、外界におけるルートマーカの観測により取得のマーカ観測データと外界におけるルートマーカのマーカ位置データとに基づくマーカマッチングによりサブ推定位置Pm1を取得することと、メイン推定位置Pdとサブ推定位置Pm1とを各々の推定誤差同士の比率に基づき重み付けしたフュージョンにより自己位置Pfの位置推定データDfを生成することとを、実行するように構成される。サブ推定位置Pm1の取得は、マーカ観測データからメイン推定位置Pdを起点に予測のマーカ予測位置と、マーカ位置データにてマーカ予測位置にマッチングするマーカ設置位置との、偏差により補正のメイン推定位置Pdをサブ推定位置Pm1として取得することを、含む。
【選択図】図8
【特許請求の範囲】
【請求項1】
プロセッサ(12)を有し、外界を自律走行する自律走行装置(4)の自己位置を推定する推定装置(1)であって、
前記プロセッサは、
前記自律走行装置の内界において取得される内界データ(Di)に基づく、デッドレコニングにより前記自己位置としてのメイン推定位置(Pd)を取得することと、
前記外界に複数設置されたルートマーカ(6)の前記自律走行装置からの観測により取得されるマーカ観測データ(Do)と、前記外界において各前記ルートマーカの設定位置であるマーカ設置位置(Pmp)を定義したマーカ位置データ(Dmp)とに基づく、マーカマッチングにより前記自己位置としてのサブ推定位置(Pm1)を取得することと、
前記メイン推定位置と前記サブ推定位置とを各々の推定誤差同士の比率に基づき重み付けした、フュージョンにより前記自己位置の位置推定データ(Df)を生成することとを、実行するように構成され、
前記サブ推定位置の取得は、
前記マーカ観測データから前記メイン推定位置を起点に予測されるマーカ予測位置(Pp)と、前記マーカ位置データにおいて前記マーカ予測位置にマッチングする前記マーカ設置位置との、偏差(δP)により補正された前記メイン推定位置を前記サブ推定位置として取得することを、含む推定装置。
【請求項2】
前記プロセッサは、
前記メイン推定位置を取得することと、
前記サブ推定位置である、第一サブ推定位置を取得することと、
前記自律走行装置からの前記外界の走査により取得される外界データ(De)と、前記外界をマッピングしたマップデータ(Dm)とに基づく、マップマッチングにより前記自己位置として第二サブ推定位置(Pm2)を取得することと、
前記マーカ観測データが取得されるタイミングにおいて、前記メイン推定位置と前記第一サブ推定位置とを各々の推定誤差同士の比率に基づき重み付けした、フュージョンにより前記位置推定データを生成して前記デッドレコニングへフィードバックすることと、
前記外界データが取得されるタイミングにおいて、前記メイン推定位置と前記第二サブ推定位置とを各々の推定誤差同士の比率に基づき重み付けした、フュージョンにより前記位置推定データを生成して前記デッドレコニングへフィードバックすることとを、実行するように構成される請求項1に記載の推定装置。
【請求項3】
前記外界データは、
前記外界を走査した走査点群(Cs)を、含み、
前記マップデータは、
前記外界を三次元に分割した複数のボクセル(Vm)別に、前記外界をマッピングしたマップ点群(Cm)を、含む請求項2に記載の推定装置。
【請求項4】
前記自律走行装置は、
ペアをなす前記ルートマーカ間を結ぶ仮想直線(L)に対しての直交方位に、前記自律走行装置の走行方向(Td)を制御する請求項1又は2に記載の推定装置。
【請求項5】
前記位置推定データの生成は、
生成した前記位置推定データを出力することを、含む請求項1又は2に記載の推定装置。
【請求項6】
外界を自律走行する自律走行装置(4)の自己位置を推定するために記憶媒体(10)に記憶され、プロセッサ(12)に実行させる命令を含む推定プログラムであって、
前記自律走行装置の内界において取得される内界データ(Di)に基づく、デッドレコニングにより前記自己位置としてのメイン推定位置(Pd)を取得することと、
前記外界に複数設置されたルートマーカ(6)の前記自律走行装置からの観測により取得されるマーカ観測データ(Do)と、前記外界において各前記ルートマーカの設定位置であるマーカ設置位置(Pmp)を定義したマーカ位置データ(Dmp)とに基づく、マーカマッチングにより前記自己位置としてのサブ推定位置(Pm1)を取得することと、
前記メイン推定位置と前記サブ推定位置とを各々の推定誤差同士の比率に基づき重み付けした、フュージョンにより前記自己位置の位置推定データ(Df)を生成することとを、実行させる前記命令を含み、
前記サブ推定位置の取得は、
前記マーカ観測データから前記メイン推定位置を起点に予測されるマーカ予測位置(Pp)と、前記マーカ位置データにおいて前記マーカ予測位置にマッチングする前記マーカ設置位置との、偏差(δP)により補正された前記メイン推定位置を前記サブ推定位置として取得することを、含む推定プログラム。
【請求項7】
外界を自律走行する自律走行装置(4)の自己位置を推定した位置推定データ(Df)を生成するために、プロセッサ(12)により実行される推定データ生成方法であって、
前記自律走行装置の内界において取得される内界データ(Di)に基づく、デッドレコニングにより前記自己位置としてのメイン推定位置(Pd)を取得することと、
前記外界に複数設置されたルートマーカ(6)の前記自律走行装置からの観測により取得されるマーカ観測データ(Do)と、前記外界において各前記ルートマーカの設定位置であるマーカ設置位置(Pmp)を定義したマーカ位置データ(Dmp)とに基づく、マーカマッチングにより前記自己位置としてのサブ推定位置(Pm1)を取得することと、
前記メイン推定位置と前記サブ推定位置とを各々の推定誤差同士の比率に基づき重み付けした、フュージョンにより前記位置推定データを生成することとを、含み、
前記サブ推定位置の取得は、
前記マーカ観測データから前記メイン推定位置を起点に予測されるマーカ予測位置(Pp)と、前記マーカ位置データにおいて前記マーカ予測位置にマッチングする前記マーカ設置位置との、偏差(δP)により補正された前記メイン推定位置を前記サブ推定位置として取得することを、含む推定データ生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、外界を自律走行する自律走行装置の自己位置を推定する、推定技術に関する。
【背景技術】
【0002】
特許文献1に開示の推定技術は、自律走行装置の自己位置を推定する推定手法を、予めシミュレーションされた領域別の推定精度に応じて切り替えている。具体的に第一領域では、自律走行装置からの外界の走査による点群データと、外界のマップデータとを用いて、自己位置が推定されている。一方で第二領域では、外界に複数設置された誘導体の自律走行装置からの検出結果と、外界における誘導体の位置情報とを用いて、自己位置が推定されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2022-110773号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、特許文献1に開示の推定技術において、各領域での推定手法別の推定精度は、例えば天候等の外界状況変化に起因して、時々刻々と変動する。そのため、推定手法を切り替えるだけでは、真の推定精度まで確保され得るとは言い難く、それはロバスト性に欠けるとも言える。
【0005】
本開示の課題は、自己位置の推定精度に対してロバスト性を確保する、推定装置を提供することにある。本開示の別の課題は、自己位置の推定精度に対してロバスト性を確保する、推定プログラムを提供することにある。本開示のさらに別の課題は、自己位置の推定精度に対してロバスト性を確保する、推定データ生成方法を、提供することにある。
【課題を解決するための手段】
【0006】
以下、課題を解決するための本開示の技術的手段について、説明する。尚、特許請求の範囲及び本欄に記載された括弧内の符号は、後に詳述する実施形態に記載された具体的手段との対応関係を示すものであり、本開示の技術的範囲を限定するものではない。
【0007】
本開示の第一態様は、
プロセッサ(12)を有し、外界を自律走行する自律走行装置(4)の自己位置を推定する推定装置(1)であって、
プロセッサは、
自律走行装置の内界において取得される内界データ(Di)に基づく、デッドレコニングにより自己位置としてのメイン推定位置(Pd)を取得することと、
外界に複数設置されたルートマーカ(6)の自律走行装置からの観測により取得されるマーカ観測データ(Do)と、外界において各ルートマーカの設定位置であるマーカ設置位置(Pmp)を定義したマーカ位置データ(Dmp)とに基づく、マーカマッチングにより自己位置としてのサブ推定位置(Pm1)を取得することと、
メイン推定位置とサブ推定位置とを各々の推定誤差同士の比率に基づき重み付けした、フュージョンにより自己位置の位置推定データ(Df)を生成することとを、実行するように構成され、
サブ推定位置の取得は、
マーカ観測データからメイン推定位置を起点に予測されるマーカ予測位置(Pp)と、マーカ位置データにおいてマーカ予測位置にマッチングするマーカ設置位置との、偏差(δP)により補正されたメイン推定位置をサブ推定位置として取得することを、含む。
【0008】
本開示の第二態様は、
外界を自律走行する自律走行装置(4)の自己位置を推定するために記憶媒体(10)に記憶され、プロセッサ(12)に実行させる命令を含む推定プログラムであって、
自律走行装置の内界において取得される内界データ(Di)に基づく、デッドレコニングにより自己位置としてのメイン推定位置(Pd)を取得することと、
外界に複数設置されたルートマーカ(6)の自律走行装置からの観測により取得されるマーカ観測データ(Do)と、外界において各ルートマーカの設定位置であるマーカ設置位置(Pmp)を定義したマーカ位置データ(Dmp)とに基づく、マーカマッチングにより自己位置としてのサブ推定位置(Pm1)を取得することと、
メイン推定位置とサブ推定位置とを各々の推定誤差同士の比率に基づき重み付けした、フュージョンにより自己位置の位置推定データ(Df)を生成することとを、実行させる命令を含み、
サブ推定位置の取得は、
マーカ観測データからメイン推定位置を起点に予測されるマーカ予測位置(Pp)と、マーカ位置データにおいてマーカ予測位置にマッチングするマーカ設置位置との、偏差(δP)により補正されたメイン推定位置をサブ推定位置として取得することを、含む。
【0009】
本開示の第三態様は、
外界を自律走行する自律走行装置(4)の自己位置を推定した位置推定データ(Df)を生成するために、プロセッサ(12)により実行される推定データ生成方法であって、
自律走行装置の内界において取得される内界データ(Di)に基づく、デッドレコニングにより自己位置としてのメイン推定位置(Pd)を取得することと、
外界に複数設置されたルートマーカ(6)の自律走行装置からの観測により取得されるマーカ観測データ(Do)と、外界において各ルートマーカの設定位置であるマーカ設置位置(Pmp)を定義したマーカ位置データ(Dmp)とに基づく、マーカマッチングにより自己位置としてのサブ推定位置(Pm1)を取得することと、
メイン推定位置とサブ推定位置とを各々の推定誤差同士の比率に基づき重み付けした、フュージョンにより位置推定データを生成することとを、含み、
サブ推定位置の取得は、
マーカ観測データからメイン推定位置を起点に予測されるマーカ予測位置(Pp)と、マーカ位置データにおいてマーカ予測位置にマッチングするマーカ設置位置との、偏差(δP)により補正されたメイン推定位置をサブ推定位置として取得することを、含む。
【0010】
これら第一~第三態様によると、内界データに基づくデッドレコニングによるメイン推定位置と、マーカ観測データ及びマーカ位置データに基づくマーカマッチングによるサブ推定位置とが、取得される。ここでサブ推定位置の取得には、マーカ観測データからメイン推定位置を起点に予測されるマーカ予測位置と、マーカ位置データにおいて当該マーカ予測位置にマッチングするマーカ設置位置との、偏差が着目される。これによれば、マーカ予測位置とマーカ設置位置との偏差によってメイン推定位置が補正されることで取得される、サブ推定位置の推定誤差からは、メイン推定位置の推定誤差による影響分を相殺することができる。故に、メイン推定位置とサブ推定位置とが、外界状況変化を反映し得る各々の推定誤差同士での比率に基づき重み付けされてフュージョンされることで、自己位置の推定精度に対してロバスト性を確保した位置推定データの生成が可能となる。
【図面の簡単な説明】
【0011】
図1】第一実施形態による推定装置の全体構成を示すブロック図である。
図2】第一実施形態による推定装置が搭載される自律走行装置を、ルートマーカと共に示す斜視図である。
図3】第一実施形態による推定装置が搭載される自律走行装置を、ルートマーカと共に示す平面図である。
図4】第一実施形態による推定装置の機能構成を示すブロック図である。
図5】第一実施形態による推定装置の推定原理を説明するための模式図である。
図6】第一実施形態による推定装置の推定原理を説明するための模式図である。
図7】第一実施形態による推定装置の推定原理を説明するための模式図である。
図8】第一実施形態による推定フローを示すフローチャートである。
図9】第二実施形態による推定装置が搭載される自律走行装置を、ルートマーカと共に示す平面図である。
図10】第二実施形態による推定装置の推定原理を説明するための模式図である。
【発明を実施するための形態】
【0012】
以下、本開示の実施形態を図面に基づき複数説明する。尚、各実施形態において対応する構成要素には同一の符号を付すことで、重複する説明を省略する場合がある。また、各実施形態において構成の一部分のみを説明している場合、当該構成の他の部分については、先行して説明した他の実施形態の構成を適用することができる。さらに、各実施形態の説明において明示している構成の組み合わせばかりではなく、特に組み合わせに支障が生じなければ、明示していなくても複数の実施形態の構成同士を部分的に組み合わせることができる。
【0013】
(第一実施形態)
図1に示す第一実施形態の推定装置1は、外界を自律走行する自律走行装置4の、自己位置を推定する。ここで本実施形態では、インデックスがX,Yの水平二方向に対して、インデックスがZの鉛直方向を想定した、三次元絶対座標系が定義される。さらに、そうした三次元直交座標系において自律走行に必要な姿勢を取る自律走行装置4に対して、インデックスがxの縦方向と、インデックスがyの横方向と、インデックスがzの高さ方向とを想定した、三次元相対座標系が定義される。但し、三次元絶対座標系の鉛直方向(Z方向)と三次元相対座標系の高さ方向(z方向)とは、実質一致するように想定されるものとする。
【0014】
自律走行装置4は、自身の外界となる物流施設において倉庫内外の走行路を自律走行して荷物を運搬する、物流車両又は物流ロボットであってもよい(図2の例)。自律走行装置4は、自身の外界となる交通環境において道路を自律走行可能な、自動運転車両であってもよい。自律走行装置4は、自身の外界となる飲食店内又は病院内の走行路を自律走行して飲食物を配膳する、配膳ロボットであってもよい。自律走行装置4は、自身の外界となる災害地を自律走行して物資を運搬又は情報を収集する、災害支援ロボットであってもよい。自律走行装置4は、これら以外の装置であっても勿論よい。さらにいずれの種の自律走行装置4も、外部センタによりリモートでの走行支援又は走行制御を受けてもよい。
【0015】
自律走行装置4の外界において自律走行対象となる、走行路又は道路における少なくとも一部エリアには、図2,3に示すように複数のルートマーカ6が設置されている。各ルートマーカ6は、例えばフェライト磁石製等の、着磁された磁気マーカを主体に構成されている。各ルートマーカ6は、第一実施形態では自律走行装置4が自律走行する走行ルートにおいて、例えば三次元相対座標系での横方向中心位置等の代表走行位置を連続して与えるように想定される走行軌道Tr上に、間隔を空けて配置される。各ルートマーカ6は、それぞれの配置箇所における路面に対して、例えば保護シート等により貼り付け、又は埋設されている。全て又は一部のルートマーカ6は、RFID(radio frequency identification)付きであってもよい。
【0016】
図1に示すように推定装置1は、センサユニット2及びマップユニット3と共に、自律走行装置4に搭載される。センサユニット2は、マーカセンサ20、外界センサ22及び内界センサ24を含んで構成される。
【0017】
図1,2,4に示すマーカセンサ20は、自律走行装置4の周辺環境である外界において自律走行装置4の運動推定に活用可能な、マーカ観測データDoを取得する。マーカセンサ20は、外界に存在するルートマーカ6を自律走行装置4から観測することで、マーカ観測データDoを取得する、磁気センサ又は磁気レシーバを主体に構成されている。マーカセンサ20は、RFIDリーダを含んでいてもよい。こうしたマーカセンサ20には、設定距離の観測レンジ内に入ったルートマーカ6を観測可能とするための、取付位置及び観測基準位置が自律走行装置4に対して予め設定されているとよい。
【0018】
図1,2,4に示す外界センサ22は、自律走行装置4の周辺環境である外界において自律走行装置4の運動推定に活用可能な、マーカ観測データDo以外の情報を、外界データDeとして取得する。外界センサ22は、外界に存在する物体を自律走行装置4から検知することで、外界データDeを取得してもよい。この検知タイプの外界センサ22は、例えばLiDAR(Light Detection and Ranging / Laser Imaging Detection and Ranging)、カメラ、レーダ及びソナー等のうち、一種類又は複数種類である。外界センサ22は、外界に存在する無線通信システムからの無線信号を自律走行装置4から受信することで、外界データDeを取得してもよい。この受信タイプの外界センサ22は、例えばGNSS(Global Navigation Satellite System)の受信機及びITS(Intelligent Transport Systems)の受信機等のうち、一種類又は複数種類である。以下では、外界をビーム走査して物標からの反射ビームを検知することで、外界データDeとして三次元点群画像を取得のLiDARが、外界センサ22を構成する場合を例にとって説明する。
【0019】
図1,4に示す内界センサ24は、自律走行装置4の内部環境である内界において自律走行装置4の運動推定に活用可能な情報を、内界データDiとして取得する。内界センサ24は、自律走行装置4の内界において特定の運動物理量を検知することで、内界データDiを取得してもよい。この検知タイプの内界センサ24は、例えば慣性センサ、速度センサ及び舵角センサ等のうち、一種類又は複数種類である。以下では、自律走行装置4の角速度及び/又は姿勢角を内界データDiとして取得する慣性センサと、自律走行装置4の速度を内界データDiとして取得する速度センサとが、内界センサ24を構成する場合を例にとって説明する。
【0020】
図1,4に示すマップユニット3は、マップデータDmを非一時的に格納又は記憶する、例えば半導体メモリ、磁気媒体及び光学媒体等のうち、一種類又は複数種類の非遷移的実体的記憶媒体(non-transitory tangible storage medium)を含んで構成される。マップユニット3は、自律走行装置4の高度運転支援又は自動運転制御に利用される、ロケータのデータベースであってもよい。マップユニット3は、自律走行装置4の運転をナビゲートする、ナビゲーション装置のデータベースであってもよい。マップユニット3は、自律走行装置4の走行を計画するプランニングユニットの、データベースであってもよい。マップユニット3は、これらのデータベース等のうち複数種類の組み合わせにより、構成されていてもよい。
【0021】
マップユニット3は、例えば外部センタとの通信等により、最新のマップデータDmを取得して記憶する。マップデータDmは、自律走行装置4の自律走行する外界をマッピングした、マップ点群を含む三次元デジタルマップとして、例えば高精度ダイナミックマップ等が用いられる。こうしたマップデータDmは、例えば走行路又は道路の位置、形状、サイズ及び路面状態等のうち、一種類又は複数種類を表した道路情報を含んでいてもよい。マップデータDmは、例えば走行路又は道路に付属する標識、区画線及び信号機の位置、形状、サイズ並びに作動状態等のうち、一種類又は複数種類を表した標示情報を含んでいてもよい。マップデータDmは、例えば走行路又は道路に面する建造物、構造物及び植栽物の位置、形状、並びにサイズ等のうち、一種類又は複数種類を表した構造物情報を含んでいてもよい。
【0022】
図1,4に示す推定装置1は、例えばLAN(Local Area Network)、ワイヤハーネス、内部バス、及び無線通信回線等のうち、一種類又は複数種類を介してセンサユニット2及びマップユニット3に接続されている。推定装置1は、自律走行装置4の高度運転支援又は自動運転制御を実行する、運転制御専用のECU(Electronic Control Unit)であってもよい。推定装置1は、自律走行装置4の高度運転支援又は自動運転制御に利用される、ロケータのECUであってもよい。推定装置1は、自律走行装置4の運転をナビゲートする、ナビゲーション装置のECUであってもよい。推定装置1は、自律走行装置4と外界との間の通信を制御する、通信制御装置のECUであってもよい。
【0023】
図1に示すように推定装置1は、メモリ10及びプロセッサ12を少なくとも一つずつ含んで構成される、専用のコンピュータである。メモリ10は、コンピュータにより読み取り可能なプログラム及びデータ等を非一時的に格納又は記憶する、例えば半導体メモリ、磁気媒体及び光学媒体等のうち、一種類又は複数種類の非遷移的実体的記憶媒体(non-transitory tangible storage medium)である。プロセッサ12は、例えばCPU(Central Processing Unit)、GPU(Graphics Processing Unit)及びRISC(Reduced Instruction Set Computer)-CPU等のうち、一種類又は複数種類をコアとして含む。
【0024】
プロセッサ12は、メモリ10に記憶された推定プログラムに含まれる複数の命令を、実行する。これにより推定装置1は、自律走行装置4の自己位置を推定するための複数の機能ブロックを、図4に示すように構築する。このように推定装置1では、自律走行装置4の自己位置を推定するためにメモリ10に記憶された推定プログラムが複数の命令をプロセッサ12に実行させることで、複数の機能ブロックが構築される。
【0025】
推定装置1により構築される複数の機能ブロックには、デッドレコニングブロック100、マーカマッチングブロック110、マップマッチングブロック120及びフュージョンブロック130が、含まれる。デッドレコニングブロック100は、内界データDiとダイナミクスモデル(Dynamics Model)とに基づくデッドレコニングにより、今回推定時刻tにおける自律走行装置4の自己位置を推定することで、当該推定結果をメイン推定位置Pdとして取得する(後に詳述の図5参照)。ここでダイナミクスモデルとは、自律走行装置4の挙動を動力学に基づきモデル化した、例えば二輪モデル等である。
【0026】
そこで、今回推定時刻tでのメイン推定位置Pdを構成する三次元位置座標Xd,Yd,Zdはそれぞれ、前回推定時刻t-1にて後に詳述の如くフュージョンブロック130により推定される三次元位置座標Xf,Yf,Zf(図5参照)を用いた、数1,2,3により定義される。ここで数1,2,3のVには、内界センサ24のうち速度センサにより今回推定時刻tに検知された内界データDiとして、自律走行装置4の速度が入力される。数1,2,3のδtには、今回推定時刻tと前回推定時刻t-1との推定間隔(即ち、サンプリング周期)が入力される。数3のωpには、内界センサ24のうち慣性センサにより今回推定時刻tに検知された内界データDiとして、自律走行装置4の姿勢角のうちピッチ角が入力される。尚、図5及び後述の図10、並びに数1~3及び後述の数4~34では、各推定時刻t,t-1での区別の必要なパラメータ(変数)が、それぞれ対応する推定時刻t,t-1の関数形式[t],[t-1]にて表されている。
【数1】
【数2】
【数3】
【0027】
さらに数1,2のθdは、今回推定時刻tでの姿勢角のうちヨー角であり、前回推定時刻t-1において後に詳述の如くフュージョンブロック130により推定されるヨー角θf(図5参照)を用いた、数4により定義される。ここで数4のγには、内界センサ24のうち慣性センサにより今回推定時刻tに検知された内界データDiとして、自律走行装置4のヨーレートが入力される。数4のδtには、今回推定時刻tと前回推定時刻t-1との推定間隔が入力される。
【数4】
【0028】
こうした、今回推定時刻tにおけるメイン推定位置Pdの推定に伴ってデッドレコニングブロック100は、当該推定に予測される誤差を、図4に示すメイン推定誤差ΔPdとして取得する。このとき、今回推定時刻tでのメイン推定誤差ΔPdは、推定された三次元位置座標Xd,Yd,Zdの各々に関する、三次元位置誤差ΔXd,ΔYd,ΔZdにより構成される。
【0029】
そこで、今回推定時刻tでの三次元位置誤差ΔXd,ΔYd,ΔZdはそれぞれ、前回推定時刻t-1において後に詳述の如くフュージョンブロック130により推定される三次元位置誤差ΔXf,ΔYf,ΔZfを用いた、数5,6,7により定義される。ここで数5,6,7のVには、内界センサ24のうち速度センサによる今回推定時刻tでの速度が入力される。数5,6,7のΔVには、内界センサ24のうち速度センサの誤差特性として予測される速度誤差が、入力される。数5,6,7のδtには、今回推定時刻tと前回推定時刻t-1との推定間隔が入力される。数5,6のθdには、今回推定時刻tでの数4の推定ヨー角が入力される。数7のΔωpには、内界センサ24のうち慣性センサの誤差特性として予測されるピッチ角誤差が、入力される。
【数5】
【数6】
【数7】
【0030】
さらに数5,6のΔθfは、前回推定時刻t-1において後に詳述の如くフュージョンブロック130により推定されるヨー角誤差であり、今回推定時刻tに推定されるヨー角θdの誤差Δθdは、当該前回ヨー角誤差Δθfを用いた、数8により定義される。ここで数8のΔγには、内界センサ24のうち慣性センサの誤差特性として予測されるヨーレート誤差が、入力される。数8のδtには、今回推定時刻tと前回推定時刻t-1との推定間隔が入力される。
【数8】
【0031】
以上よりデッドレコニングブロック100は、メイン推定位置Pdを与える数1,2,3の三次元位置座標Xd,Yd,Zdを、数4のヨー角θdと共に、今回推定時刻tに関して推定する。それに伴ってデッドレコニングブロック100は、メイン推定誤差ΔPdを与える数5,6,7の三次元位置誤差ΔXd,ΔYd,ΔZdを、数8のヨー角誤差Δθdと共に、今回推定時刻tに関して推定する。そこでデッドレコニングブロック100は、これらの推定結果を、今回推定時刻tと関連付けてメモリ10に記憶する。
【0032】
図4に示すマーカマッチングブロック110は、マーカ観測データDoとマーカ位置データDmpとに基づくマーカマッチングにより、今回推定時刻tにおける自律走行装置4の自己位置を推定することで、当該推定結果を第一サブ推定位置Pm1として取得する。このときマーカ観測データDoは、今回推定時刻tにマーカセンサ20により観測された場合のルートマーカ6の当該観測位置poとして、図5に示すように自律走行装置4に対しての三次元相対座標xo,yo,zoにより構成される。
【0033】
このため、マーカマッチングブロック110においてマーカマッチング処理の対象となる今回推定時刻tとは、入力されたマーカ観測データDoの取得タイミングとなる。ここでマーカ観測データDoの取得タイミングは、ルートマーカ6の設置エリアにおいてマーカセンサ20によるルートマーカ6の観測周期毎に、設定されてもよい。マーカ観測データDoの取得タイミングは、ルートマーカ6の設置エリアにおいてマーカセンサ20によりルートマーカ6が実際に観測されたタイミングに、設定されてもよい。
【0034】
そこでマーカマッチングブロック110は、今回推定時刻tでのマーカ観測データDoから、デッドレコニングブロック100による同時刻tでのメイン推定位置Pdを起点に、図5のマーカ予測位置Ppを予測する。このため、マーカマッチングブロック110へメイン推定位置Pdを入力することになるデッドレコニングブロック100において、デッドレコニング処理の実行される今回推定時刻tは、マーカ観測データDoの取得タイミングと実質的に同期させられる。
【0035】
マーカ予測位置Ppとして予測される三次元位置座標Xp,Yp,Zpは、マーカ観測位置poの三次元相対座標xo,yo,zoと、マーカセンサ20の取付位置及び観測基準位置との、座標変換値によりメイン推定位置Pdの三次元位置座標Xd,Yd,Zdをそれぞれ補正することで、取得される。そのため、マーカ予測位置Ppの三次元位置座標Xp,Yp,Zpに関する予測誤差にはそれぞれ、メイン推定位置Pdの三次元位置座標Xd,Yd,Zdに関するメイン推定誤差ΔPdと、マーカ観測データDoの三次元相対座標xo,yo,zoに関する観測誤差とが、含まれることとなる。
【0036】
こうしたマーカ観測データDoに対して図4のマーカ位置データDmpは、外界における各ルートマーカ6の設定位置である図5のマーカ設置位置Pmpとして、それら各マーカ6の三次元位置座標Xmp,Ymp,Zmpを含んで入力される。このときマーカ位置データDmpは、マップデータDmの一部としてマップユニット3から読み出されてもよい(図1,4の場合)。マーカ位置データDmpは、上述したマップデータDmに準じてマップユニット3又はメモリ10に記憶されていることで、当該記憶先から読み出されてもよい。
【0037】
そこでマーカマッチングブロック110は、マーカ位置データDmpにおいて図5の如く今回推定時刻tでのマーカ予測位置Ppにマッチングするマーカ設置位置Pmpと、当該マーカ予測位置Ppとの偏差δPを認識する。これによりマーカマッチングブロック110は、認識した偏差δPにより今回推定時刻tでのメイン推定位置Pdを補正することで、同時刻tでの第一サブ推定位置Pm1を取得する。
【0038】
このとき、第一サブ推定位置Pm1を構成する図4,5の三次元位置座標Xm1,Ym1,Zm1はそれぞれ、数9,10,11により定義される。即ち各三次元位置座標Xm1,Ym1,Zm1は、メイン推定位置Pdの三次元位置座標Xd,Yd,Zdから、マーカ予測位置Ppの三次元位置座標Xp,Yp,Zpとマーカ設置位置Pmpの三次元位置座標Xmp,Ymp,Zmpとの偏差を、それぞれ図5の偏差δPとして差し引くことで取得される。それと共に、今回推定時刻tでの姿勢角のうち図4,5のヨー角θm1は、各位置Pp,Pmpの座標Yp,Ymp間での偏差と、時刻t,t-1間での推定間隔における自律走行装置4の移動距離とに基づき、前回推定時刻t-1での推定値θfを補正することで、取得される。
【数9】
【数10】
【数11】
【0039】
こうした、今回推定時刻tにおける第一サブ推定位置Pm1の推定に伴ってマーカマッチングブロック110は、当該推定に予測される誤差を、図4に示す第一サブ推定誤差ΔPm1として取得する。このとき、今回推定時刻tでの第一サブ推定誤差ΔPm1は、推定された三次元位置座標Xm1,Ym1,Zm1の各々に関する、三次元位置誤差ΔXm1,ΔYm1,ΔZm1により構成される。
【0040】
ここで数9,10,11の右辺第二項及び第三項の関係から、各三次元位置誤差ΔXm1,ΔYm1,ΔZm1にはそれぞれ、マーカ予測位置Ppの三次元位置座標Xp,Yp,Zpに関する予測誤差と、マーカ設置位置Pmpの三次元位置座標Xmp,Ymp,Zmpに関するマップ誤差とが、影響する。これらの誤差のうち特に、右辺第二項の三次元位置座標Xp,Yp,Zpに関する予測誤差には、メイン推定位置Pdの三次元位置座標Xd,Yd,Zdに関するメイン推定誤差ΔPdと、マーカ観測データDoの三次元相対座標xo,yo,zoに関する観測誤差とが、上述の如く含まれる。
【0041】
そのため、三次元位置座標Xd,Yd,Zdに関するメイン推定誤差ΔPd分はそれぞれ、数9,10,11の右辺第一項及び第二項の関係により各三次元位置誤差ΔXm1,ΔYm1,ΔZm1への影響を実質的に相殺される。故に各三次元位置誤差ΔXm1,ΔYm1,ΔZm1にはそれぞれ、三次元相対座標xo,yo,zoに関する観測誤差と、三次元位置座標Xmp,Ymp,Zmpに関するマップ誤差とが、残ることになる。そこで各三次元位置誤差ΔXm1,ΔYm1,ΔZm1は、ルートマーカ6に対するマーカセンサ20の誤差特性として予測される観測誤差と、ルートマーカ6に対するマーカ位置データDmpの測量誤差とに基づき、それぞれ相異又は同一の固定値に予め設定される。このとき、今回推定時刻tでのヨー角θm1の推定に予測される誤差Δθm1も、同様な固定値に予め設定される。
【0042】
以上よりマーカマッチングブロック110は、第一サブ推定位置Pm1を与える数9,10,11の三次元位置座標Xm1,Ym1,Zm1を、ヨー角θm1と共に、今回推定時刻tに関して推定する。それに伴ってマーカマッチングブロック110は、第一サブ推定誤差ΔPm1を与える三次元位置誤差ΔXm1,ΔYm1,ΔZm1を、ヨー角誤差Δθm1と共に、今回推定時刻tに関して推定する。そこでマーカマッチングブロック110は、これらの推定結果を、今回推定時刻tと関連付けてメモリ10に記憶する。
【0043】
図4に示すマップマッチングブロック120は、外界データDeとマップデータDmとに基づくマップマッチングにより、今回推定時刻tにおける自律走行装置4の自己位置を推定することで、当該推定結果を第二サブ推定位置Pm2として取得する。このとき外界データDeとしては、外界センサ22のうちLiDARにより今回推定時刻tにて図6,7に示すように走査された、三次元相対座標系での走査点群Csを含む三次元点群画像Desが入力される。
【0044】
このため、マップマッチングブロック120においてマップマッチング処理の実行される今回推定時刻tは、外界データDeとして入力された三次元点群画像Desの取得タイミングとなる。ここで三次元点群画像Desの取得タイミングは、外界センサ22のうちLiDARによる外界の走査周期毎に、設定される。
【0045】
こうした三次元点群画像Desに対して図6,7のマップデータDmとしては、自律走行装置4の外界において物標をマッピングした、マップ点群Cmを含む三次元デジタルマップDmmが入力される。このとき、三次元絶対座標系の三次元デジタルマップDmmにおいて外界の物標をマッピングしたマップ点群Cmは、それぞれの位置座標を三次元相対座標系に変換される。そこで、座標変換されたマップ点群Cmは、三次元相対座標系において外界を分割した複数の三次元ボクセルVm別に、割り振られることとなる。尚、図6,7では、三次元ボクセルVmが高さ方向(z方向)の図示を省略した、縦方向(x方向)及び横方向(y方向)の二次元で模式的に図示されている。
【0046】
こうした座標変換及び割振を伴う入力を受けてマップマッチングブロック120は、図6,7に対比の如く三次元点群画像Desの走査点群Csに対してマッチングするマップ点群Cmを、当該マップマッチングの対応関係にある走査点群Csと共に認識する。これによりマップマッチングブロック120は、走査点群Csとマッチングしたマップ点群Cmの三次元相対座標系における位置座標を三次元絶対座標系に戻すことで、今回推定時刻tでの第二サブ推定位置Pm2を図4の如く構成する三次元位置座標Xm2,Ym2,Zm2を、取得する。このとき、今回推定時刻tでの姿勢角のうち図4のヨー角θm2も、マップマッチングにより推定される。
【0047】
こうした、今回推定時刻tにおける第二サブ推定位置Pm2の推定に伴ってマップマッチングブロック120は、当該推定に予測される誤差を、図4に示す第二サブ推定誤差ΔPm2として取得する。このとき、今回推定時刻tでの第二サブ推定誤差ΔPm2は、推定された三次元位置座標Xm2,Ym2,Zm2の各々に関する、三次元位置誤差ΔXm2,ΔYm2,ΔZm2により構成される。
【0048】
そこで、今回推定時刻tでの三次元位置誤差ΔXm2,ΔYm2,ΔZm2は、三次元相対座標系での点群量依存尤度Lxs,Lys,Lzs及びノイズ量依存尤度Lnとの中から、それぞれ必要とするパラメータを用いた、数12,13,14により定義される。ここで、数12,13,14の関数fx,fy,fzはそれぞれ、対応する尤度Lxs,Lys,Lzs,Lnが増大するほど、対応する三次元位置誤差ΔXm2,ΔYm2,ΔZm2を減少させる関数である。
【数12】
【数13】
【数14】
【0049】
さらにマップマッチングブロック120は、今回推定時刻tでのヨー角θm2の推定に予測される誤差Δθm2を、取得する。このときヨー角誤差Δθm2は、点群量依存尤度Lysとノイズ量依存尤度Lnとを用いた、数15により定義される。ここで数15の関数fθは、尤度Lys,Lnが増大するほど、ヨー角誤差Δθm2を減少させる関数である。
【数15】
【0050】
このような数12,13,14,15において点群量依存尤度Lxs,Lys,Lzsには、図6にドットハンチングを付して示すように走査点群Csとマッチングしたマップ点群Cmを含む全ボクセルVmに亘って、当該マッチングのマップ点群Cmに関する三次元相対座標系での各方向におけるバラツキ量の逆数が積算(総和)されることで、入力される。一方で数12,13,14,15においてノイズ量依存尤度Lnには、図7にドットハンチングを付して示すようにマップ点群Cmとはアンマッチングな走査点群Csを含む全ボクセルVmに関して、総数の逆数が入力される。
【0051】
以上よりマップマッチングブロック120は、第二サブ推定位置Pm2を与える三次元位置座標Xm2,Ym2,Zm2を、ヨー角θm2と共に、今回推定時刻tに関して推定する。それに伴ってマップマッチングブロック120は、第二サブ推定誤差ΔPm2を与える三次元位置誤差ΔXm2,ΔYm2,ΔZm2を、ヨー角誤差Δθm2と共に、今回推定時刻tに関して推定する。そこでマップマッチングブロック120は、これらの推定結果を、今回推定時刻tと関連付けてメモリ10に記憶する。
【0052】
図4に示すフュージョンブロック130は、マーカ観測データDoと、外界データDeである三次元点群画像Desとのうち、今回推定時刻tでのいずれか一方での取得タイミングに応じたフュージョン方式を採用することで、自己位置Pfを推定する。そこで、マーカ観測データDoの取得タイミングとなる今回推定時刻tにはフュージョンブロック130は、メイン推定位置Pdと第一サブ推定位置Pm1とを、カルマンフィルタに通したフィルタリングによってフュージョンする。これにより、メイン推定位置Pdと第一サブ推定位置Pm1とが各々の推定誤差ΔPd,ΔPm1同士の比率に基づき重み付けされてフュージョンされた自己位置Pfを含むように、位置推定データDfが生成される。
【0053】
このとき、自己位置Pfの三次元位置座標Xf,Yf,Zfはそれぞれ、メイン推定位置Pdの三次元位置座標Xd,Yd,Zdと、第一サブ推定位置Pm1の三次元位置座標Xm1,Ym1,Zm1とを用いた、数16,17,18により定義される。ここで数16,17,18のカルマンゲインKx,Ky,Kzはそれぞれ、メイン推定位置Pdの三次元位置誤差ΔXd,ΔYd,ΔZdと、第一サブ推定位置Pm1の三次元位置誤差ΔXm1,ΔYm1,ΔZm1との、対応する同士での比率に基づき可変設定される。特に数16,17,18では、三次元位置誤差ΔXd,ΔYd,ΔZdの三次元位置誤差ΔXm1,ΔYm1,ΔZm1に対する相対比率が小さくなるほど、カルマンゲインKx,Ky,Kzが増大するように設定される。
【数16】
【数17】
【数18】
【0054】
こうした、マーカ観測データDoの取得タイミングとなる今回推定時刻tでの自己位置Pfの推定に伴って、その推定誤差ΔPfとなる三次元位置誤差ΔXf,ΔYf,ΔZfも、図4に示すように推定されて位置推定データDfに追加される。そこで各三次元位置誤差ΔXf,ΔYf,ΔZfは、メイン推定誤差ΔPdの三次元位置誤差ΔXd,ΔYd,ΔZdと、第一サブ推定誤差ΔPm1の三次元位置誤差ΔXm1,ΔYm1,ΔZm1とを用いた、数19,20,21により定義される。ここで数19,20,21のカルマンゲインKx,Ky,Kzはそれぞれ、数16,17,18と共通となる。
【数19】
【数20】
【数21】
【0055】
さらに、マーカ観測データDoの取得タイミングとなる今回推定時刻tには、自律走行装置4の姿勢角のうち図4に示すヨー角θf及びその誤差Δθfも、自己位置Pfに準ずるフュージョンによって推定される。このときヨー角θfは、ヨー角θd,θm1を用いた、数22により定義される。それと共にヨー角誤差Δθfは、ヨー角誤差Δθd,Δθm1を用いた、数23により定義される。ここで、数22,23に共通となるカルマンゲインKθは、ヨー角誤差Δθd,Δθm1同士での比率に基づき可変設定される。特に数22,23では、ヨー角誤差Δθdのヨー角誤差Δθm1に対する相対比率が小さくなるほど、カルマンゲインKθが増大するように設定される。
【数22】
【数23】
【0056】
一方、三次元点群画像Desの取得タイミングとなる今回推定時刻tにはフュージョンブロック130は、メイン推定位置Pdと第二サブ推定位置Pm2とを、カルマンフィルタに通したフィルタリングによってフュージョンする。これにより、メイン推定位置Pdと第二サブ推定位置Pm2とが各々の推定誤差ΔPd,ΔPm2同士の比率に基づき重み付けされてフュージョンされた自己位置Pfを含むように、位置推定データDfが生成される。
【0057】
このとき、自己位置Pfの三次元位置座標Xf,Yf,Zfはそれぞれ、メイン推定位置Pdの三次元位置座標Xd,Yd,Zdと、第二サブ推定位置Pm2の三次元位置座標Xm2,Ym2,Zm2とを用いた、数24,25,26により定義される。ここで数24,25,26のカルマンゲインkx,ky,kzはそれぞれ、メイン推定位置Pdの三次元位置誤差ΔXd,ΔYd,ΔZdと、第二サブ推定位置Pm2の三次元位置誤差ΔXm2,ΔYm2,ΔZm2との、対応する同士での比率に基づき可変設定される。特に数24,25,26では、三次元位置誤差ΔXd,ΔYd,ΔZdの三次元位置誤差ΔXm2,ΔYm2,ΔZm2に対する相対比率が小さくなるほど、カルマンゲインkx,ky,kzが増大するように設定される。
【数24】
【数25】
【数26】
【0058】
こうした、三次元点群画像Desの取得タイミングとなる今回推定時刻tでの自己位置Pfの推定に伴って、その推定誤差ΔPfとなる三次元位置誤差ΔXf,ΔYf,ΔZfも、図4に示すように推定されて位置推定データDfに追加される。そこで各三次元位置誤差ΔXf,ΔYf,ΔZfは、メイン推定誤差ΔPdの三次元位置誤差ΔXd,ΔYd,ΔZdと、第二サブ推定誤差ΔPm2の三次元位置誤差ΔXm2,ΔYm2,ΔZm2とを用いた、数27,28,29により定義される。ここで数27,28,29のカルマンゲインkx,ky,kzはそれぞれ、数24,25,26と共通となる。
【数27】
【数28】
【数29】
【0059】
さらに、三次元点群画像Desの取得タイミングとなる今回推定時刻tにも、自律走行装置4の姿勢角のうち図4に示すヨー角θf及びその誤差Δθfが、自己位置Pfに準ずるフュージョンによって推定される。このときヨー角θfは、ヨー角θd,θm2を用いた、数30により定義される。それと共にヨー角誤差Δθfは、ヨー角誤差Δθd,Δθm2を用いた、数31により定義される。ここで数30,31に共通となるカルマンゲインkθは、ヨー角誤差Δθd,Δθm2同士での比率に基づき可変設定される。特に数30,31では、ヨー角誤差Δθdのヨー角誤差Δθm2に対する相対比率が小さくなるほど、カルマンゲインkθが増大するように設定される。
【数30】
【数31】
【0060】
以上いずれの取得タイミングにあっても、今回推定時刻tでの自己位置Pfをフュージョンによって推定した位置推定データDfは、図4の如くフュージョンブロック130から出力される。これにより、自己位置Pfとして出力された三次元位置座標Xf,Yf,Zfは、今回推定時刻tと関連付けてメモリ10に記憶された後、デッドレコニングブロック100による次回処理時刻でのデッドレコニング処理にフィードバックされる。また、自己位置Pfとして出力された三次元位置座標Xf,Yf,Zfは、例えば自律走行装置4の高度運転支援又は自動運転制御等に活用されてもよい。
【0061】
ここまで説明したブロック100,110,120,130の共同により、自律走行装置4の自己位置Pfを推定する方法として特に、同位置Pfを推定した位置推定データDfを生成する推定データ生成方法の、図8に従うフロー(以下、推定フローという)を、以下に説明する。尚、本推定フローは、自律走行装置4の起動中に、推定間隔毎に繰り返し実行される。また、本推定フローにおいて「S」とは、推定プログラムに含まれた複数命令により実行される複数ステップを、意味する。
【0062】
S10においてデッドレコニングブロック100は、今回推定時刻tがマーカ観測データDoの取得タイミングであるか否かを、判定する。その結果、肯定判定が下された場合には、推定フローがS20へ移行する。S20においてデッドレコニングブロック100は、内界データDiとダイナミクスモデルとに基づくデッドレコニングにより、今回推定時刻tにおける自律走行装置4のメイン推定位置Pdを取得する。
【0063】
S20に続くS30においてマーカマッチングブロック110は、マーカ観測データDoとマーカ位置データDmpとに基づくマーカマッチングにより、今回推定時刻tにおける自律走行装置4の第一サブ推定位置Pm1を取得する。このとき、マーカ観測データDoからメイン推定位置Pdを起点に予測されるマーカ予測位置Ppと、マーカ位置データDmpにて当該予測位置Ppにマッチングするマーカ設置位置Pmpとの、偏差δPにより補正されたメイン推定位置Pdが第一サブ推定位置Pm1となる。
【0064】
S30に続くS40においてフュージョンブロック130は、今回推定時刻tでのメイン推定位置Pd及び第一サブ推定位置Pm1を各々の推定誤差ΔPd,ΔPm1同士の比率に基づき重み付けしたフュージョンにより、自己位置Pfの位置推定データDfを生成する。こうして生成された位置推定データDfは、メモリ10に出力されて記憶されることで、デッドレコニングブロック100による次回推定時刻でのデッドレコニングへとフィードバックされる。このようなS40の実行完了に応じて、推定フローの今回実行が終了する。
【0065】
一方、S10において否定判定が下された場合には、推定フローがS50へ移行する。S50においてマップマッチングブロック120は、今回推定時刻tが外界データDeのうち三次元点群画像Desの取得タイミングであるか否かを、判定する。その結果、否定判定が下された場合には、推定フローの今回実行が終了する。それに対して肯定判定が下された場合には、推定フローがS60へ移行する。S60においてマップマッチングブロック120は、外界データDeとマップデータDmとに基づくマップマッチングにより、今回推定時刻tにおける自律走行装置4の第二サブ推定位置Pm2を取得する。
【0066】
S60に続くS70においてフュージョンブロック130は、今回推定時刻tでのメイン推定位置Pd及び第二サブ推定位置Pm2を各々の推定誤差ΔPd,ΔPm2同士の比率に基づき重み付けしたフュージョンにより、自己位置Pfの位置推定データDfを生成する。こうして生成された位置推定データDfも、メモリ10に出力されて記憶されることで、デッドレコニングブロック100による次回推定時刻でのデッドレコニングへフィードバックされる。このようなS70の実行完了に応じて、推定フローの今回実行が終了する。
【0067】
(作用効果)
以上説明した第一実施形態の作用効果を、以下に説明する。
【0068】
第一実施形態によると、内界データDiに基づくデッドレコニングによるメイン推定位置Pdと、マーカ観測データDo及びマーカ位置データDmpに基づくマーカマッチングによる第一サブ推定位置Pm1とが、取得される。ここで第一サブ推定位置Pm1の取得には、マーカ観測データDoからメイン推定位置Pdを起点に予測されるマーカ予測位置Ppと、マーカ位置データDmpにおいて当該マーカ予測位置Ppにマッチングするマーカ設置位置Pmpとの、偏差δPが着目される。これによれば、マーカ予測位置Ppとマーカ設置位置Pmpとの偏差δPによってメイン推定位置Pdが補正されることで取得される、第一サブ推定位置Pm1の推定誤差ΔPm1からは、メイン推定位置Pdの推定誤差ΔPdによる影響分を相殺することができる。故に、メイン推定位置Pdと第一サブ推定位置Pm1とが、外界状況変化を反映し得る各々の推定誤差ΔPd,ΔPm1同士での比率に基づき重み付けされてフュージョンされることで、自己位置Pfの推定精度に対してロバスト性を確保した位置推定データDfの生成が可能となる。
【0069】
第一実施形態によると、マーカ観測データDoの取得タイミングには、デッドレコニングによるメイン推定位置Pdと、マーカ観測データDoに基づくマーカマッチングによる第一サブ推定位置Pm1とを、各々の推定誤差同士の比率に基づき重み付けしたフュージョンにより、位置推定データDfが生成される。一方で外界データDeとしての三次元点群画像Desの取得タイミングには、デッドレコニングによるメイン推定位置Pdと、当該取得画像Desに基づくマップマッチングによる第二サブ推定位置Pm2とを、各々の推定誤差同士の比率に基づき重み付けしたフュージョンにより、位置推定データDfが生成される。これらによれば、三次元点群画像Desの取得タイミングには当該取得画像Desを用いて第二サブ推定位置Pm2から推定された過去の自己位置Pfに基づくデッドレコニングにより、マーカ観測データDoの取得タイミングには推定誤差補正のされた第一サブ推定位置Pm1が取得されて、高精度に最新の自己位置Pfを推定することができる。故に、自己位置Pfの推定精度に対してロバスト性を確保した位置推定データDfの生成における信頼性を、高めることが可能となる。
【0070】
(第二実施形態)
第二実施形態は、第一実施形態の変形例である。
【0071】
図9に示すように第二実施形態では、自律走行装置4の走行ルートに想定される走行軌道Trを三次元相対座標系での横方向に挟んで対称箇所に配置される各ルートマーカ6のペアが、当該軌道Trに沿って間隔を空けて設置されている。そこで第二実施形態の自律走行装置4は、図9の如くペアをなすルートマーカ6(以下、第二実施形態の説明ではペアマーカ6という)間を結ぶ仮想直線Lに対しての直交方位に、軌道Tr上での走行方向Tdを制御される。このとき、推定装置1により推定されるヨー角θf(第一実施形態を参照)に基づき自律走行装置4の実ヨー角がフィードバック制御されることで、仮想直線Lに対する直交方位に合わせた走行方向Tdが実現可能となる。
【0072】
そこで第二実施形態のマーカマッチングブロック110では、図10に示す今回推定時刻tでの第一サブ推定位置Pm1の三次元位置座標Xm1,Ym1,Zm1がそれぞれ、ペアマーカ6の各サフィックスをi=1,2とした、数32,33,34により定義される。即ち各三次元位置座標Xm1,Ym1,Zm1は、各ペアマーカ6のマーカ予測位置Pp_iである三次元位置座標Xp_i,Yp_i,Zp_iと、各ペアマーカ6のマーカ設置位置Pmp_iである三次元位置座標Xmp_i,Ymp_i,Zmp_iとの、偏差平均を偏差δPとして、図10の如くメイン推定位置Pdの三次元位置座標Xd,Yd,Zdからそれぞれ差し引くことで、取得される。それと共に今回推定時刻tでのヨー角θm1は、軌道Tr上において自律走行装置4の走行方向Td、即ち仮想直線Lに対しての直交方位を表した、姿勢角として取得される。
【数32】
【数33】
【数34】
【0073】
このような第二実施形態でも、今回推定時刻tでの第一サブ推定誤差ΔPm1となる三次元位置誤差ΔXm1,ΔYm1,ΔZm1(第一実施形態を参照)については、それぞれ数32,33,34の関係から、三次元位置座標Xd,Yd,Zdに関するメイン推定誤差ΔPd分の影響が実質的に相殺された状態となる。故に各三次元位置誤差ΔXm1,ΔYm1,ΔZm1にはそれぞれ、マーカ予測位置Ppの三次元相対座標xo,yo,zoに関する観測誤差と、マーカ設置位置Pmpの三次元位置座標Xmp,Ymp,Zmpに関するマップ誤差とが、第一実施形態と同様に残る。そこで各三次元位置誤差ΔXm1,ΔYm1,ΔZm1は、ペアマーカ6に対するマーカセンサ20の誤差特性として予測される観測誤差と、ペアマーカ6に対するマーカ位置データDmpの測量誤差とに基づき、それぞれ相異又は同一の固定値に予め設定される。このとき、今回推定時刻tでのヨー角θm1の推定に予測される誤差Δθm1(第一実施形態を参照)も、同様な固定値に予め設定される。
【0074】
以上説明した第二実施形態によっても、第一実施形態と同様な作用効果の発揮が可能となる。しかも第二実施形態によれば、ペアマーカ6間を結ぶ仮想直線Lに対しての直交方位に、自律走行装置4の走行方向Tdが制御されることで、第一サブ推定位置Pm1の推定誤差ΔPm1に自律走行装置4のヨー角推定精度が影響するのを抑止することができる。故に、自己位置Pfの推定精度に対してロバスト性を確保した位置推定データDfの生成における信頼性を、高めることが可能となる。
【0075】
(他の実施形態)
以上、複数の実施形態について説明したが、本開示は、それらの実施形態に限定して解釈されるものではなく、本開示の要旨を逸脱しない範囲内において種々の実施形態及び組み合わせに適用することができる。
【0076】
変形例において推定装置1を構成する専用コンピュータは、デジタル回路及びアナログ回路のうち、少なくとも一方をプロセッサとして有していてもよい。ここでデジタル回路とは、例えばASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、SOC(System on a Chip)、PGA(Programmable Gate Array)、及びCPLD(Complex Programmable Logic Device)等のうち、少なくとも一種類である。またこうしたデジタル回路は、プログラムを記憶したメモリを、有していてもよい。
【0077】
変形例では、マップマッチングブロック120が省略されることで、外界データDeのうち三次元点群画像Desの取得タイミングにおけるフュージョン処理を非実施としたフュージョンブロック130が、設けられてもよい。この場合には、推定フローにおいてS50~S70が省略されることで、S10での否定判定に応じて推定フローの今回実行が終了するとよい。
【0078】
変形例のマーカマッチングブロック110では、メイン推定位置Pdに代えて第二サブ推定位置Pm2が、外界データDeとしての三次元点群画像Desの取得タイミングに入力されて、マーカ予測位置Ppの予測に用いられてもよい。変形例では、三次元絶対座標系及び三次元相対座標系に代えて、それぞれ鉛直方向(Z方向)及び高さ方向(z方向)は想定されない、二次元絶対座標系及び二次元相対座標系が定義されてもよく、この場合に「三次元」は「二次元」に読み替えて、各実施形態が実施されるとよい。
【0079】
ここまでの説明形態の他に上述の実施形態及び変形例は、自律走行車両4に搭載可能に構成されてプロセッサ12及びメモリ10を少なくとも一つずつ有する制御装置として、処理回路(例えば処理ECU等)又は半導体装置(例えば半導体チップ等)の形態で実施されてもよい。
【符号の説明】
【0080】
1:推定装置、4:自律走行装置、6:ルートマーカ、10:メモリ、12:プロセッサ、Cm:マップ点群、Cs:走査点群、De:外界データ、Df:位置推定データ、Di:内界データ、Dm:マップデータ、Dmp:マーカ位置データ、Do:マーカ観測データ、L:仮想直線、Pd:メイン推定位置、Pm1:第一サブ推定位置、Pm2:第二サブ推定位置、Pmp:マーカ設置位置、Pp:マーカ予測位置、Td:走行方向、Vm:ボクセル、δP:偏差
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10