(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-03-08
(45)【発行日】2023-03-16
(54)【発明の名称】自己位置誤差推定方法及び自己位置誤差推定装置
(51)【国際特許分類】
G01C 21/30 20060101AFI20230309BHJP
【FI】
G01C21/30
(21)【出願番号】P 2019018453
(22)【出願日】2019-02-05
【審査請求日】2021-11-09
(73)【特許権者】
【識別番号】000003997
【氏名又は名称】日産自動車株式会社
(73)【特許権者】
【識別番号】507308902
【氏名又は名称】ルノー エス.ア.エス.
【氏名又は名称原語表記】RENAULT S.A.S.
【住所又は居所原語表記】122-122 bis, avenue du General Leclerc, 92100 Boulogne-Billancourt, France
(74)【代理人】
【識別番号】100083806
【氏名又は名称】三好 秀和
(74)【代理人】
【識別番号】100101247
【氏名又は名称】高橋 俊一
(74)【代理人】
【識別番号】100095500
【氏名又は名称】伊藤 正和
(74)【代理人】
【識別番号】100098327
【氏名又は名称】高松 俊雄
(72)【発明者】
【氏名】▲高▼野 博幸
(72)【発明者】
【氏名】武田 祐一
【審査官】久保田 創
(56)【参考文献】
【文献】特開2017-009553(JP,A)
【文献】特開2010-271966(JP,A)
【文献】特開2012-127896(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01C 21/30
(57)【特許請求の範囲】
【請求項1】
自車両に搭載されるカメラによって撮像した画像から少なくとも2つの物標を抽出すると共に、抽出した物標の画像上の位置に基づいて自己位置を検出する自己位置検出方法における、自己位置の検出誤差推定方法であって、
前記自車両が、少なくとも2つの物標を検出可能な道路上の所定の領域を通過するコースを
設定し、
前記自車両が前記コースに沿って前記領域を通過する際に検出される前記カメラ画像上の前記2つの物標の間の画素数に基づいて前記自己位置の検出誤差を推定する
ことを特徴とする自己位置誤差推定方法。
【請求項2】
前記領域は、3つ以上の物標を検出可能な領域である
ことを特徴とする請求項1に自己位置誤差推定方法。
【請求項3】
前記領域は、前記カメラ画像上の前記2つの物標に係る面積が第
2所定値以上となる領域である
ことを特徴とする請求項1に自己位置誤差推定方法。
【請求項4】
自車両に搭載されるカメラによって撮像した画像から少なくとも2つの物標を抽出すると共に、抽出した物標の画像上の位置に基づいて自己位置を検出する自己位置検出装置における、前記自己位置の検出誤差を推定する自己位置誤差推定装置であって、
少なくとも2つの物標を検出可能な道路上の所定の領域を設定するコントローラを備え、
前記コントローラは、
前記自車両が、前記領域を通過するコースを
設定し、
前記自車両が前記コースに沿って前記領域を通過する際に検出される前記カメラ画像上の前記2つの物標の間の画素数に基づいて前記自己位置の検出誤差を推定する
ことを特徴とする自己位置誤差推定装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、自己位置誤差推定方法及び自己位置誤差推定装置に関する。
【背景技術】
【0002】
従来より、自車両に設けられた撮像手段で自車両周囲の複数の物標(ランドマークとも言う)を撮像し、撮像した画像上の複数の物標の位置と、予め地図上に記憶された複数の物標の位置とをマッチングすることによって自己位置を推定する自己位置検出装置が知られている。(特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載された技術のように、画像上の物標位置を用いた自己位置検出装置においては自己位置の推定誤差の発生が避けられない。このため、撮像した複数の物標の位置に基づいて自己位置を推定する自己位置検出装置においては、正確な自己位置の検出誤差の推定が望まれていた。
【0005】
本発明は、上記問題に鑑みて成されたものであり、その目的は、自己位置の検出誤差の推定精度が向上しうる自己位置誤差推定方法及び自己位置誤差推定装置を提供することである。
【課題を解決するための手段】
【0006】
本発明の一態様に係る自己位置誤差推定方法は、自車両が、少なくとも2つの物標を検出可能な道路上の所定の領域を通過するコースを設定し、自車両がコースに沿って領域を通過する際に検出されるカメラ画像上の2つの物標の間の画素数に基づいて自己位置の検出誤差を推定する。
【発明の効果】
【0007】
本発明によれば、自己位置の検出誤差の推定精度は向上しうる。
【図面の簡単な説明】
【0008】
【
図1】
図1は、本発明の実施形態に係る自己位置誤差推定装置の概略構成図である。
【
図2】
図2は、自己位置の誤差の推定方法の一実施例について説明する図である。
【
図3】
図3は、物標と物標との間の画素数について説明する図である。
【
図4】
図4は、本発明の実施形態に係る自己位置誤差推定装置の一動作例を説明するフローチャートである。
【
図5】
図5は、自己位置の誤差の推定方法の一実施例について説明する図である。
【
図6】
図6は、物標と物標との間の画素数について説明する図である。
【
図7】
図7は、自己位置の誤差の推定方法の一実施例について説明する図である。
【発明を実施するための形態】
【0009】
以下、本発明の実施形態について、図面を参照して説明する。図面の記載において同一部分には同一符号を付して説明を省略する。
【0010】
(自己位置誤差推定装置の構成)
図1を参照して、自己位置誤差推定装置100の構成を説明する。
図1に示すように、自己位置誤差推定装置100は、自己位置検出部10と、地図データベース20と、カメラ30と、コントローラ40と、記憶装置50と、を備える。
【0011】
自己位置誤差推定装置100は、自動運転機能を有する車両に搭載されてもよく、自動運転機能を有しない車両に搭載されてもよい。また、自己位置誤差推定装置100は、自動運転と手動運転とを切り替えることが可能な車両に搭載されてもよい。なお、本実施形態における自動運転とは、例えば、ブレーキ、アクセル、ステアリングなどのアクチュエータの内、少なくとも何れかのアクチュエータが乗員の操作なしに制御されている状態を指す。そのため、その他のアクチュエータが乗員の操作により作動していたとしても構わない。また、自動運転とは、加減速制御、横位置制御などのいずれかの制御が実行されている状態であればよい。また、本実施形態における手動運転とは、例えば、ブレーキ、アクセル、ステアリングを乗員が操作している状態を指す。
【0012】
地図データベース20は、カーナビゲーション装置などに記憶されているデータベースであって、道路情報、施設情報など経路案内に必要となる各種データが記憶されている。また、地図データベース20には、道路の車線数、道路境界線を含む道路情報、物標(ランドマーク)の位置情報を含む物標情報などを含む地図情報が記憶されている。地図データベース20は、コントローラ40の要求に応じて地図情報をコントローラ40に出力する。なお、道路情報、物標情報などの各種データは必ずしも車載された地図データベース20から取得されるものに限定されず、車車間通信、路車間通信を用いて取得されてもよい。すなわち、道路情報、物標情報などの各種データが外部に設置されたサーバに記憶されている場合、コントローラ40は、通信により随時これらのデータをサーバから取得してもよい。また、コントローラ40は、外部に設置されたサーバから定期的に最新の地図情報を入手して、保有する地図情報を更新してもよい。
【0013】
カメラ30は、自車両に搭載され、自車両の周囲を撮影する。カメラ30は、CCD(charge-coupled device)やCMOS(complementary metal oxide semiconductor)などの撮像素子を有する。カメラ30は、画像処理機能を有しており、撮像した画像(カメラ画像)から白線や道路端、物標などを検出する。物標とは、例えば道路、歩道に設けられる物体であり、例えば信号機、電柱、交通標識などである。なお、物標はこれらに限らず位置が固定された、移動物体以外の物体で有ればよく、例えば建物等であってもよい。カメラ30は、撮像した画像、画像の解析結果などをコントローラ40に出力する。
【0014】
自己位置検出部10は、カメラ30で撮像した画像(以下ではカメラ画像もしくは単に画像と言う)と地図データベース20に記憶された物標情報とから自車両の位置である自己位置を検出する。具体的にはカメラ画像から少なくとも2つの物標(ランドマーク)を抽出すると共に、地図データベース20に記憶された複数の物標から上記抽出した物標に対応する物標である特定物標を特定する。そして、抽出した物標の画像上の位置と、地図データベース20に記憶された物標情報に含まれる特定物標の位置とに基づいて、地図上における自己位置を検出する。なお、自己位置検出部10における自己位置の検出方法はこれに限定されるものでは無い。例えば、過去自車両が同一地点を走行した際に抽出した少なくとも2つの物標の画像上の位置と、抽出した物標の画像上の位置を用いて検出した自己位置を対応させて記憶しておき、次回同一地点を走行した際には物標の画像上の位置のみに基づいて自己位置を検出してもよい。すなわち、自己位置検出部10はカメラ30で撮像した少なくとも2つ以上の物標の画像上の位置に基づいて自己位置を検出するものである限りは、自己位置の検出方法は適宜変更可能である。
【0015】
コントローラ40は、CPU(中央処理装置)、メモリ、及び入出力部を備える汎用のマイクロコンピュータである。マイクロコンピュータには、自己位置誤差推定装置100として機能させるためのコンピュータプログラムがインストールされている。コンピュータプログラムを実行することにより、マイクロコンピュータは、自己位置誤差推定装置100が備える複数の情報処理回路として機能する。なお、ここでは、ソフトウェアによって自己位置誤差推定装置100が備える複数の情報処理回路を実現する例を示すが、もちろん、以下に示す各情報処理を実行するための専用のハードウェアを用意して、情報処理回路を構成することも可能である。また、複数の情報処理回路を個別のハードウェアにより構成してもよい。コントローラ40は、複数の情報処理回路として、領域設定部41と、コース設定部42と、通過時間計算部43と、通過誤差推定部44と、自己位置誤差推定部45と、誤差総量計算部46と、を備える。
【0016】
領域設定部41は、自車両の走行データを用いて、自車両が車線の中央を走行する場合と比較して、画像上における物標間の画素数を多く取得可能な領域を設定する。本実施形態において、この領域は、オフライン時に設定される。オフライン時とは、自動運転が実行されていない時をいう。領域設定部41によって設定された領域は、記憶装置50に記憶される。なお、領域設定部41によって設定される領域は、1つでもよく複数でもよい。領域設定部41によって設定される複数の領域は、後述のコース設定部42にて設定されるコースに沿って連続的に設定されてもよい。
【0017】
コース設定部42は、オンライン時に記憶装置50から領域を読み出す。次に、コース設定部42は、自車両が領域を通過するコース(経路)を設定する。オンライン時とは、自動運転が実行されている時をいう。通過時間計算部43は、自車両が領域を通過する際に要する時間(通過時間)を計算する。通過誤差推定部44は、自車両が領域を通過する際の自己位置の検出誤差(以下では、自己位置の誤差とも記載する)を推定する。自己位置誤差推定部45は、自車両が領域を通過するまでの自己位置の誤差を推定する。誤差総量計算部46は、自己位置の誤差の総量を計算する。なお、コース設定部42によって設定されるコースは、少なくとも2つの物標を検出可能な道路上の所定の領域を通過するコースである。
【0018】
次に、
図2~4を参照して自動運転時における自己位置の誤差の推定方法について説明する。
【0019】
自動運転では一般的に車線の中央を走行するように車両が制御される。一例として、
図2のコース1に示すように、自動運転において自車両60は、車線の中央を走行するように制御される。コース1は、
図2に示す車線の中央を通る経路である。
【0020】
自動運転において自己位置を精度よく検出することが求められる。自己位置の検出方法の一例として、
図2に示す物標70、71を用いる方法が挙げられる。物標70、71の地図上の位置は固定であるため、自車両60から物標70、71までの距離及び方向を用いることにより、自己位置が検出される。すなわち、画像上の物標70、71と、地図上の物標70、71とをマッチングすることにより自己位置を検出することができる。
【0021】
具体的には、例えば画像上の物標70、71の位置から、カメラ30の撮像方向に対する物標70、71の方向(自車両に対する物標70、71の方向)が特定される。すなわち、自車両と物標70とを結ぶ線分と自車両と物標71を結ぶ線分との成す角度は、画像上の物標70と物標71との間の距離(画素数)に対応する。このため、画像上の物標70と物標71との間の距離から、カメラ30の撮像方向に対する物標70、71の方向(自車両に対する物標70、71の方向)が特定される。従って、地図上における物標70、71を特定すれば、物標70、71の地図上における位置と自車両に対する方向とから、例えば周知の三角測量によって自己位置が検出される。このようなカメラ画像上の物標70、71の位置を用いて検出された自己位置には、誤差が含まれる。なお、自己位置の誤差は、カメラ30の計測誤差を正規分布にあてはめたときの共分散行列で表現されてもよい。また、自己位置の誤差は、白線検出結果と地図データとをマッチングさせたときの尤度分布で表現されてもよい。
【0022】
自己位置の誤差は、車線上の自車両60の通過位置に応じて変化する可能性がある。ここでいう自車両60の通過位置とは、自車両60(カメラ30)が物標70、71を検出する位置を含む。
【0023】
自車両60が
図2に示すコース1に沿って走行した場合と、自車両60が
図2に示すコース2に沿って走行した場合とでは、自己位置の誤差は変化する可能性がある。この点について、
図3を参照して説明する。
図3に示す画像90は、
図2に示すコース1上の位置P1において、カメラ30が物標70、71を撮像した画像である。
図3に示す画像91は、
図2に示すコース2上の位置P2において、カメラ30が物標70、71を撮像した画像である。
【0024】
画像90、91から分かるように、物標70と物標71との間の画素数は、画像90より、画像91のほうが多い。上述したように、物標70、71の位置を用いて自己位置を検出する際に、物標70と物標71との間の画像上の距離に応じた誤差が含まれる。ここでいう、物標70と物標71との間の距離とは、画像上の横方向における物標70と物標71との間の距離である。画像上の横方向における物標70と物標71との間の距離は、画像上の横方向における物標70と物標71との間の画素数が多いほど、精度よく計算される。すなわち、自車両60が
図2に示すコース1に沿って走行した場合と、自車両60が
図2に示すコース2に沿って走行した場合とでは、自車両60がコース2に沿って走行した場合のほうが、物標70と物標71との間の距離が精度よく計算される。これにより、自車両60がコース2に沿って走行した場合のほうが、自車両60がコース1に沿って走行した場合よりも、自己位置の誤差は小さくなる。
【0025】
図4に示すフローチャートを参照して、自動運転時における自己位置の誤差の推定方法の詳細について説明する。ステップS101において、領域設定部41は、自車両60の走行データを用いて、自車両60が車線の中央を走行する場合と比較して、画像上の横方向における物標70と物標71との間の画素数を多く取得可能な領域(
図2の領域80)を設定する。
図2に示す領域80において、自車両60が車線の中央を走行する場合と比較して、画像上の横方向における物標70と物標71との間の画素数は多く取得される。なお、上述したように、領域80は、オフライン時に設定され、記憶装置50に記憶される。領域80の設定の際に、他車両の走行データが用いられてもよい。他車両の走行データを含むより多くの走行データが用いられることにより、適切な領域80が設定される。また、領域80は、
図2に示す位置P1を過去に走行した際に推定した誤差データに基づいて、カメラ30によって撮像された物標70、71に係る画像上の位置の誤差が所定値(第1所定値)以下となる領域であってもよい。これにより、領域80は、所定の範囲を持つことができ、自己位置の誤差を小さい状態で維持することができる。なお、
図2に示す物標70、71は電柱であるが、これに限定されない。物標70、71は、道路標識であってもよい。また、領域80は、
図2に示す位置P1においてカメラ30によって撮像された物標70、71に係る画像上の面積が所定値(第2所定値)以上となる領域であってもよい。これにより、領域80は、所定の範囲を持つことができ、自己位置の誤差を小さい状態で維持するための行動の選択肢が増える。
【0026】
処理はステップS103に進み、コース設定部42は、オンライン時に記憶装置50から領域80を読み出す。次に、コース設定部42は例えば、
図2に示すように領域80を通過するコース2を設定する。なお、コース2は、例えばナビゲーション装置などによって設定される経路であり、任意の経路である。
【0027】
処理はステップS105に進み、通過時間計算部43は、自車両60がコース2に沿って領域80を通過する際に要する時間(通過時間)を計算する。一例として、通過時間計算部43は、自車両60の速度に基づいて通過時間を計算する。自車両60の速度が速い場合は、通過時間は短くなる。一方、自車両60の速度が遅い場合は、通過時間は長くなる。通過時間が長いほど、通過の際に取得される画像は多くなる。通過の際に取得される画像が多くなるほど、画像の解析精度は向上するため、自己位置の誤差も小さくなりうる。したがって、自己位置誤差推定装置100は、自己位置の誤差を小さくするために、自車両60がコース2に沿って領域80を通過する際に、自車両60を減速させてもよい。これにより、自車両60がコース2に沿って領域80を通過する際に要する時間が長くなり、より多くの画像が取得される。
【0028】
処理はステップS107に進み、通過誤差推定部44は、自車両60がコース2に沿って領域80を走行する際の自己位置の誤差を推定する。推定方法の一例として、通過誤差推定部44は、予め画像と自己位置の誤差との関係をモデル化した誤差モデルを作成して記憶しておき、この誤差モデルとコース2上の各地点において撮像された画像とを比較することにより各地点ごとに発生する誤差を算出し、算出した誤差を領域80を走行している間の時間分積算することで、自車両60がコース2に沿って領域80を走行する際の自己位置の誤差を推定する。誤差モデルとは、
図2に示す物標70、71の形状、位置情報などを含むモデルである。
【0029】
すなわち、上述した通り画像上の物標70、71の位置に基づいて自己位置を検出する場合、画像上の物標70と物標71との間の距離(画素数)が自己位置の検出精度に影響する。このため、予め2つの物標(物標70、71)間の画像上の距離と自己位置の誤差とを含むモデル式を記憶しておき、領域80内のコース2上における各地点での物標70と物標71間の距離と記憶したモデル式とから、各地点における自己位置の誤差を推定して積算することにより、自車両60がコース2に沿って領域80を通過する間に発生する自己位置の誤差を推定する。なお、上述の通り領域80を通過する時間、すなわち領域80を走行する際の速度が遅いほど自己位置誤差は小さくなるため誤差モデルは、走行速度(あるいは通過時間)をパラメータとして含み、走行速度が遅いほど(あるいは通過時間が長いほど)誤差が小さくなるモデルとして作成してもよい。自車両60がコース2に沿って領域80を通過する際の自己位置の誤差を、以下では第1誤差と表現する場合がある。なお、通過誤差推定部44は、カメラ30の計測誤差を正規分布にあてはめたときの共分散行列でモデル化した後、共分散行列の固有値を足して第1誤差を推定してもよい。
【0030】
処理はステップS109に進み、自己位置誤差推定部45は、自車両60が領域80を走行する前までの自己位置の誤差を推定する。自車両60は、領域80を走行する前にも、自己位置の誤差を推定しており、誤差が蓄積されている。したがって、自車両60が領域80を走行する前において推定した自己位置の誤差を積算して記憶しておき、これを読み出すことで自車両60が領域80を通過走行する前までに発生した自己位置の誤差を推定することができる。自車両60が領域80を走行する前の自己位置の誤差を、以下では第2誤差と表現する場合がある。自己位置誤差推定部45は、このような第2誤差を推定する。
【0031】
処理はステップS111に進み、誤差総量計算部46は、第1誤差と第2誤差との合計を計算する。換言すれば、誤差総量計算部46は、自己位置の誤差の総量を計算する。なお、自己位置の誤差が、カメラ30の計測誤差を正規分布にあてはめたときの共分散行列で表現された場合、自己位置の誤差の総量は固有値の和の逆数となる。
【0032】
図5に示すコース3上の位置P3において、
図6に示すように、物標70と物標71との間の画素数は、画像90、91より、画像92のほうが多い。すなわち、自車両60が
図5に示すコース1に沿って走行した場合と、自車両60が
図5に示すコース2に沿って走行した場合と、自車両60が
図5に示すコース3に沿って走行した場合とでは、自車両60がコース3に沿って走行した場合のほうが、物標70と物標71との間の距離がもっとも精度よく計算される。つまり、自車両60がコース3に沿って走行した場合のほうが、自車両60がコース1及びコース2に沿って走行した場合よりも、自己位置の誤差は小さくなる。
【0033】
このようにして、領域80を走行する複数のコースごとに領域80を走行する際の自己位置の誤差を推定すれば、例えば領域80を自動運転によって走行する際に、最も自己位置の誤差が小さいコースを選択して走行するなど、自動運転にとって有意義に利用することができる。
【0034】
以上説明したように、本実施形態に係る自己位置誤差推定装置100によれば、以下の作用効果が得られる。
【0035】
自己位置検出部10は、カメラ30で撮像した画像から少なくとも2つの物標(物標70、71)を抽出すると共に、抽出した物標の画像上の位置に基づいて自己位置を検出する。自己位置誤差推定装置100は、自車両60がコースに沿って領域80を走行する際に、コース上の各地点において撮像された画像上における2つの物標の距離に基づいて、コース上の各地点における自己位置の誤差を推定することにより、自車両60がコースに沿って領域80を走行する際の自己位置の誤差である第1誤差を推定する。
【0036】
画像上の物標70と物標71との間の距離は、画像上の物標70と物標71との間の画素数が多いほど、精度よく計算される。すなわち、自車両60が
図2に示すコース1に沿って走行した場合と、自車両60が
図2に示すコース2に沿って走行した場合とでは、自車両60がコース2に沿って走行した場合のほうが、物標70と物標71との間の距離が精度よく計算される。
【0037】
したがって、自己位置誤差推定装置100によれば、自車両60が予め定められたコースに沿って領域80を走行する際に、コース上の各地点において撮像された画像上における2つの物標の画像上の距離に基づいて自己位置の検出誤差を推定することにより、自己位置の誤差を精度よく推定できる。
【0038】
上述の実施形態に記載される各機能は、1または複数の処理回路により実装され得る。処理回路は、電気回路を含む処理装置等のプログラムされた処理装置を含む。処理回路は、また、記載された機能を実行するようにアレンジされた特定用途向け集積回路(ASIC)や回路部品等の装置を含む。また、自己位置誤差推定装置100は、コンピュータの機能を改善しうる。
【0039】
上記のように、本発明の実施形態を記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなろう。
【0040】
図2に示す例では、領域80から観測される物標は2つとして説明したが、これに限定されない。領域80から観測される物標は3つ以上でもよい。物標の数が多いほうが、自己位置の誤差の推定精度が向上しうる。
【0041】
なお、自己位置検出部10(自己位置検出装置)は、コントローラ40と同様にCPU、メモリ、及び入出力部を備える汎用のマイクロコンピュータで構成されてもよく、コントローラ40に組み込まれてもよい。
【符号の説明】
【0042】
10 自己位置検出部
20 地図データベース
30 カメラ
40 コントローラ
41 領域設定部
42 コース設定部
43 通過時間計算部
44 通過誤差推定部
45 自己位置誤差推定部
46 誤差総量計算部
50 記憶装置
70、71 物標
80 領域
90、91、92 画像
100 自己位置誤差推定装置