(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-07
(45)【発行日】2023-11-15
(54)【発明の名称】地図生成装置、地図生成方法及び地図生成用コンピュータプログラム
(51)【国際特許分類】
G09B 29/00 20060101AFI20231108BHJP
G06T 11/60 20060101ALI20231108BHJP
【FI】
G09B29/00 Z
G06T11/60 300
(21)【出願番号】P 2020190180
(22)【出願日】2020-11-16
【審査請求日】2022-08-25
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】100099759
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100092624
【氏名又は名称】鶴田 準一
(74)【代理人】
【識別番号】100147555
【氏名又は名称】伊藤 公一
(74)【代理人】
【識別番号】100123593
【氏名又は名称】関根 宣夫
(74)【代理人】
【識別番号】100133835
【氏名又は名称】河野 努
(72)【発明者】
【氏名】塚本 守
【審査官】三田村 陽平
(56)【参考文献】
【文献】特開2003-065781(JP,A)
【文献】特開2010-276553(JP,A)
【文献】特開2009-230518(JP,A)
【文献】特開2019-135544(JP,A)
【文献】特開2007-010544(JP,A)
【文献】特開2019-138678(JP,A)
【文献】糸永 航、松田 一朗、米山 範隆、伊東 晋,地図画像からの道路ネットワークの自動抽出,電子情報通信学会論文誌,日本,社団法人電子情報通信学会,1999年11月25日,Vol.J82-D-II No.11,p.1990-1999
(58)【調査した分野】(Int.Cl.,DB名)
G09B 23/00-29/24
G01C 21/00-21/36
G01C 23/00-25/00
G08G 1/00-99/00
G06T 11/60
(57)【特許請求の範囲】
【請求項1】
鳥瞰画像から道路が表された道路領域を検出する道路領域検出部と、
前記道路領域の骨格線を検出し、前記骨格線の分岐点のそれぞれを交差点の中心の候補として検出する交差点中心候補検出部と、
前記交差点の中心の候補のそれぞれについて、当該中心の候補を含む、交差点を表す交差点領域の候補を前記鳥瞰画像から検出し、前記交差点領域の候補のそれぞれのうち、互いに少なくとも部分的に重なる2以上の前記交差点領域の候補を一つの交差点領域として検出する
とともに、前記交差点領域の候補のうち、互いに重ならない個々の交差点領域の候補をそれぞれ別個の交差点領域として検出する交差点領域検出部と、
前記交差点領域のそれぞれについて、当該交差点領域に接続する個々の道路について、当該交差点領域へ進入する進入車線と当該交差点領域から退出する退出車線の少なくとも一方を検出する車線検出部と、
前記交差点領域のそれぞれについて、当該交差点領域に接続する個々の道路から検出された前記進入車線と、前記個々の道路のうちの前記進入車線が検出された道路と異なる他の道路の前記退出車線とを結ぶレーンネットワークを生成するレーンネットワーク生成部と、
前記レーンネットワークを少なくとも用いて道路地図を生成する地図生成部と、
を有する地図生成装置。
【請求項2】
前記道路領域検出部は、前記鳥瞰画像から道路を横切るように設けられる道路標示をさらに検出し、
前記交差点領域検出部は、前記互いに少なくとも部分的に重なる2以上の前記交差点領域の候補について、当該交差点領域の候補の前記中心の候補同士の間に前記道路標示が存在する場合、当該2以上の前記交差点領域の候補のそれぞれを別個の交差点領域として検出する、請求項1に記載の地図生成装置。
【請求項3】
前記交差点の中心の候補のそれぞれのなかから、前記骨格線を介して閉曲線を形成する複数の候補を検出し、前記閉曲線を前記複数の候補の重心を中心とする円で近似できるか否か判定し、前記閉曲線を円で近似できる場合、検出した前記複数の候補のそれぞれを含む領域を、ラウンドアバウトが表された領域として検出するラウンドアバウト検出部をさらに有する、請求項1または2に記載の地図生成装置。
【請求項4】
前記道路領域検出部は、前記鳥瞰画像から道路端または道路端を表す道路標示をさらに検出し、
前記交差点領域検出部は、前記交差点の中心の候補のそれぞれのうち、当該中心の候補を通る前記骨格線の何れかが、当該中心の候補を通る前記骨格線の他の何れかに沿った前記道路端または前記道路端を表す道路標示と交差する場合、当該中心の候補についての前記交差点領域の候補を前記交差点領域として検出しない、請求項1~3の何れか一項に記載の地図生成装置。
【請求項5】
前記鳥瞰画像は、前記鳥瞰画像の各画素に表された地点の実空間における高度を表す高度情報を含み、
前記交差点領域検出部は、前記交差点の中心の候補のそれぞれのうち、当該中心の候補を通る何れかの前記骨格線上の何れかの位置に相当する地点の実空間での高度と当該中心の候補を通る他の何れかの前記骨格線上の何れかの位置に相当する地点の実空間での高度との差が所定の高度差閾値以上である場合、当該中心の候補についての前記交差点領域の候補を前記交差点領域として検出しない、請求項1~3の何れか一項に記載の地図生成装置。
【請求項6】
鳥瞰画像から道路が表された道路領域を検出し、
前記道路領域の骨格線を検出し、前記骨格線の分岐点のそれぞれを交差点の中心の候補として検出し、
前記交差点の中心の候補のそれぞれについて、当該中心の候補を含む、交差点を表す交差点領域の候補を前記鳥瞰画像から検出し、前記交差点領域の候補のそれぞれのうち、互いに少なくとも部分的に重なる2以上の前記交差点領域の候補を一つの交差点領域として検出する
とともに、前記交差点領域の候補のうち、互いに重ならない個々の交差点領域の候補をそれぞれ別個の交差点領域として検出し、
前記交差点領域のそれぞれについて、当該交差点領域に接続する個々の道路について、当該交差点領域へ進入する進入車線と当該交差点領域から退出する退出車線の少なくとも一方を検出し、
前記交差点領域のそれぞれについて、当該交差点領域に接続する個々の道路から検出された前記進入車線と、前記個々の道路のうちの前記進入車線が検出された道路と異なる他の道路の前記退出車線とを結ぶレーンネットワークを生成し、
前記レーンネットワークを少なくとも用いて道路地図を生成する、
ことを含む地図生成方法。
【請求項7】
鳥瞰画像から道路が表された道路領域を検出し、
前記道路領域の骨格線を検出し、前記骨格線の分岐点のそれぞれを交差点の中心の候補として検出し、
前記交差点の中心の候補のそれぞれについて、当該中心の候補を含む、交差点を表す交差点領域の候補を前記鳥瞰画像から検出し、前記交差点領域の候補のそれぞれのうち、互いに少なくとも部分的に重なる2以上の前記交差点領域の候補を一つの交差点領域として検出する
とともに、前記交差点領域の候補のうち、互いに重ならない個々の交差点領域の候補をそれぞれ別個の交差点領域として検出し、
前記交差点領域のそれぞれについて、当該交差点領域に接続する個々の道路について、当該交差点領域へ進入する進入車線と当該交差点領域から退出する退出車線の少なくとも一方を検出し、
前記交差点領域のそれぞれについて、当該交差点領域に接続する個々の道路から検出された前記進入車線と、前記個々の道路のうちの前記進入車線が検出された道路と異なる他の道路の前記退出車線とを結ぶレーンネットワークを生成し、
前記レーンネットワークを少なくとも用いて道路地図を生成する、
ことをコンピュータに実行させる地図生成用コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像から地図を生成する地図生成装置、地図生成方法及び地図生成用コンピュータプログラムに関する。
【背景技術】
【0002】
道路が表された画像から、車両を自動運転するために利用される情報を含む地図を生成する技術が提案されている(例えば、特許文献1を参照)。例えば、特許文献1に開示された交差点内の走行軌道データ生成装置は、交差点を撮像した画像データを用いて交差点内の道路標示を認識し、その認識結果にしたがって自動運転用の交差点内の走行軌道を特定可能なデータである走行軌道データを生成する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記の技術では、交差点内の道路標示の認識結果に基づいて走行軌道データが生成される。しかし、交差点によっては、交差点の中心を表す道路標示といった、交差点内の所定点を表す道路標示が存在しないことがある。
【0005】
そこで、本発明は、鳥瞰画像から、中心を表す道路標示がない交差点を検出することが可能な地図生成装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一つの形態として、地図生成装置が提供される。この地図生成装置は、鳥瞰画像から道路が表された道路領域を検出する道路領域検出部と、道路領域の骨格線を検出し、骨格線の分岐点のそれぞれを交差点の中心の候補として検出する交差点中心候補検出部と、交差点の中心の候補のそれぞれについて、その中心の候補を含む交差点領域の候補を鳥瞰画像から検出し、交差点領域の候補のそれぞれのうち、互いに少なくとも部分的に重なる2以上の交差点領域の候補を一つの交差点領域として検出する交差点領域検出部とを有する。
【0007】
この地図生成装置において、道路領域検出部は、鳥瞰画像から道路を横切るように設けられる道路標示をさらに検出し、交差点領域検出部は、互いに少なくとも部分的に重なる2以上の交差点領域の候補について、その交差点領域の候補の中心の候補同士の間に道路標示が存在する場合、その2以上の交差点領域の候補のそれぞれを別個の交差点領域として検出することが好ましい。
【0008】
また、この地図生成装置は、交差点の中心の候補のそれぞれのなかから、骨格線を介して閉曲線を形成する複数の候補を検出し、その閉曲線を、検出した複数の候補の重心を中心とする円で近似できるか否か判定し、その閉曲線を円で近似できる場合、検出した複数の候補のそれぞれを含む領域を、ラウンドアバウトが表された領域として検出するラウンドアバウト検出部をさらに有することが好ましい。
【0009】
さらに、この地図生成装置において、道路領域検出部は、鳥瞰画像から道路端または道路端を表す道路標示をさらに検出し、交差点領域検出部は、交差点の中心の候補のそれぞれのうち、その中心の候補を通る骨格線の何れかが、その中心の候補を通る骨格線の他の何れかに沿った道路端または道路端を表す道路標示と交差する場合、その中心の候補についての交差点領域の候補を交差点領域として検出しないことが好ましい。
【0010】
あるいは、この地図生成装置において、鳥瞰画像は、その鳥瞰画像の各画素に表された地点の実空間における高度を表す高度情報を含み、交差点領域検出部は、交差点の中心の候補のそれぞれのうち、その中心の候補を通る何れかの骨格線上の何れかの位置に相当する地点の実空間での高度とその中心の候補を通る他の何れかの骨格線上の何れかの位置に相当する地点の実空間での高度との差が所定の高度差閾値以上である場合、その中心の候補についての交差点領域の候補を交差点領域として検出しないことが好ましい。
【0011】
本発明の他の形態として、地図生成方法が提供される。この地図生成方法は、鳥瞰画像から道路が表された道路領域を検出し、道路領域の骨格線を検出し、骨格線の分岐点のそれぞれを交差点の中心の候補として検出し、交差点の中心の候補のそれぞれについて、その中心の候補を含む、交差点を表す交差点領域の候補を鳥瞰画像から検出し、交差点領域の候補のそれぞれのうち、互いに少なくとも部分的に重なる2以上の交差点領域の候補を一つの交差点領域として検出する、ことを含む。
【0012】
本発明のさらに他の形態として、地図生成用コンピュータプログラムが提供される。この地図生成用コンピュータプログラムは、鳥瞰画像から道路が表された道路領域を検出し、道路領域の骨格線を検出し、骨格線の分岐点のそれぞれを交差点の中心の候補として検出し、交差点の中心の候補のそれぞれについて、その中心の候補を含む、交差点を表す交差点領域の候補を鳥瞰画像から検出し、交差点領域の候補のそれぞれのうち、互いに少なくとも部分的に重なる2以上の交差点領域の候補を一つの交差点領域として検出する、ことをコンピュータに実行させるための命令を含む。
【発明の効果】
【0013】
本発明に係る地図生成装置は、鳥瞰画像から、中心を表す道路標示がない交差点を検出することができるという効果を奏する。
【図面の簡単な説明】
【0014】
【
図1】一つの実施形態による、地図生成装置のハードウェア構成図である。
【
図2】一つの実施形態による、地図生成装置のプロセッサの機能ブロック図である。
【
図3】スケルトン化あるいは細線化処理による、交差点の中心の候補検出の概要の説明図である。
【
図4】(a)~(c)は、交差点領域の候補検出の概要の説明図である。
【
図5】(a)及び(b)は、生成されたレーンネットワークの一例を示す図である。
【
図7】変形例による、地図生成装置のプロセッサの機能ブロック図である。
【発明を実施するための形態】
【0015】
以下、図を参照しつつ、地図生成装置、及び、その地図生成装置で利用される地図生成方法及び地図生成用コンピュータプログラムについて説明する。この地図生成装置は、道路が表された鳥瞰画像から、交差点における一時停止線、交差点及び交差点と接続する複数の道路を含む交差点領域を検出する。その際、この地図生成装置は、鳥瞰画像上で道路が表された道路領域の骨格線を検出し、骨格線の分岐点のそれぞれを交差点の中心の候補とする。さらに、この地図生成装置か、交差点の中心の候補のそれぞれについて鳥瞰画像から交差点領域の候補を検出する。そしてこの地図生成装置は、他の交差点領域の候補と重ならない交差点領域の候補を交差点領域として検出し、一方、少なくとも部分的に重なる2以上の交差点領域の候補を一つの交差点領域として検出する。さらにまた、この地図生成装置は、交差点と接続する複数の道路のそれぞれについて、その道路の進入車線と他の道路のうちのその道路の進入車線から車両が進行可能な退出車線とを結ぶように、交差点における車線同士の接続関係を表すレーンネットワークを生成する。
【0016】
なお、以下に説明する各実施形態または変形例において、地図生成処理の対象となる、道路が表された鳥瞰画像は、例えば、地面を鉛直上方から撮影することで得られ、かつ、道路上に表された個々の道路標示を識別可能な画像、例えば、高解像度の衛星写真あるいは航空写真が表された画像とすることができる。また、以下の説明では、地図生成処理の対象となる鳥瞰画像を、単に画像と呼ぶことがある。
【0017】
図1は、一つの実施形態による、地図生成装置のハードウェア構成図である。
図1に示されるように、地図生成装置1は、通信インターフェース2と、入力装置3と、表示装置4と、メモリ5と、記憶媒体アクセス装置6と、プロセッサ7とを有する。
【0018】
通信インターフェース2は、イーサネット(登録商標)などの通信規格に従った通信ネットワークに接続するための通信インターフェース及びその制御回路を有する。通信インターフェース2は、通信ネットワークを介して接続される他の機器(図示せず)から、様々な情報あるいはデータを受信してプロセッサ7へわたす。通信インターフェース2が受信するデータには、地図生成処理の対象となる、道路が表された画像と、その画像に表された地理的範囲を表す情報(例えば、その画像に表された領域の所定の位置(例えば、左上端または中心)の緯度及び経度、その領域の水平方向及び垂直方向の実空間サイズ、及び方位)が含まれていてもよい。また通信インターフェース2は、プロセッサ7から受け取った、地図生成処理の実行結果として得られた地図情報の一例である道路地図を、通信ネットワークを介して他の機器へ出力してもよい。
【0019】
入力装置3は、例えば、キーボードと、マウスといったポインティングデバイスとを有する。そして入力装置3は、ユーザによる操作、例えば、地図生成処理の対象となる画像を選択する操作、地図生成処理の実行開始を指示する操作、あるいは、生成された道路地図を表示装置4に表示させる操作に応じた操作信号を生成し、その操作信号をプロセッサ7へ出力する。
【0020】
表示装置4は、例えば、液晶ディスプレイまたは有機ELディスプレイを有する。そして表示装置4は、プロセッサ7から受け取った表示用のデータ、例えば、地図生成処理が実行される画像の候補を表すデータ、あるいは、生成された道路地図またはその一部を表示する。
【0021】
なお、入力装置3と表示装置4とは、タッチパネルディスプレイのように一体化された装置であってもよい。
【0022】
メモリ5は、記憶部の一例であり、例えば、読み書き可能な半導体メモリと読み出し専用の半導体メモリである。そしてメモリ5は、例えば、プロセッサ7で実行される地図生成処理用のコンピュータプログラム、その地図生成処理で用いられる各種のデータ、例えば、地図生成処理で用いられる識別器を規定するパラメータ群、及び、その地図生成処理の実行中に生成される各種のデータを記憶する。さらに、メモリ5は、地図生成処理の対象となる画像、及び、その画像に表された地理的範囲を表す情報を記憶してもよい。さらに、メモリ5は、生成された道路地図を記憶してもよい。
【0023】
記憶媒体アクセス装置6は、例えば、磁気ディスク、半導体メモリカード及び光記憶媒体といった記憶媒体8にアクセスする装置である。なお、記憶媒体アクセス装置6は、記憶媒体8とともに、記憶部の他の一例を構成する。記憶媒体アクセス装置6は、例えば、記憶媒体8に記憶された、プロセッサ7上で実行される地図生成処理用のコンピュータプログラム、あるいは、地図生成処理の対象となる画像を読み込み、プロセッサ7に渡す。あるいは、記憶媒体アクセス装置6は、生成された道路地図をプロセッサ7から受け取って、その道路地図を記憶媒体8に書き込んでもよい。
【0024】
プロセッサ7は、処理部の一例であり、例えば、1個または複数個のCPU及びその周辺回路を有する。さらに、プロセッサ7は、数値演算用の演算回路、グラフィック処理用の演算回路及び論理演算用の演算回路を有していてもよい。そしてプロセッサ7は、地図生成装置1全体を制御する。また、プロセッサ7は、地図生成処理の対象となる、道路が表された画像に対して地図生成処理を実行する。
【0025】
図2は、地図生成処理に関する、プロセッサ7の機能ブロック図である。
図2に示されるように、プロセッサ7は、停止線検出部11と、道路領域検出部12と、交差点中心候補検出部13と、交差点領域検出部14と、車線検出部15と、レーンネットワーク生成部16と、地図生成部17とを有する。プロセッサ7が有するこれらの各部は、例えば、プロセッサ7上で実行されるコンピュータプログラムによって実現される機能モジュールである。あるいは、プロセッサ7が有するこれらの各部は、プロセッサ7に設けられる、専用の演算回路であってもよい。
【0026】
停止線検出部11は、画像に表された個々の一時停止線を検出する。そのために、停止線検出部11は、例えば、画像から一時停止線を検出するように予め学習された識別器に画像を入力することで、個々の一時停止線を検出する。停止線検出部11は、そのような識別器として、例えば、コンボリューショナルニューラルネットワーク(Convolutional Neural Network, CNN)型のアーキテクチャを有する、いわゆるディープニューラルネットワーク(DNN)を用いることができる。より具体的に、そのような識別器は、例えば、Fully Convolutional Network(FCN)、U-NetあるいはPSPNetといった、セマンティックセグメンテーション用のCNN、あるいは、Mask-RCNNといったインスタンスセグメンテーション用のCNNとすることができる。あるいはまた、そのような識別器は、Single Shot MultiBox Detector(SSD)あるいはFaster R-CNNといった、物体検出用のCNNであってもよい。さらに、そのような識別器は、AdaBoostといったニューラルネットワーク以外の機械学習手法に従った識別器であってもよい。あるいはまた、停止線検出部11は、テンプレートマッチングといった、機械学習以外の手法により、一時停止線を検出してもよい。
【0027】
停止線検出部11は、検出された個々の一時停止線の画像上での位置及びサイズを表す情報を、交差点領域検出部14、車線検出部15及び地図生成部17へ通知する。
【0028】
道路領域検出部12は、画像から道路が表された道路領域を検出する。そのために、道路領域検出部12は、例えば、画像から道路が表された道路領域を検出するように予め学習された識別器に画像を入力することで道路領域を検出する。道路領域検出部12は、そのような識別器として、停止線検出部11に関して説明したのと同様の識別器、例えば、セマンティックセグメンテーション用またはインスタンスセグメンテーション用のCNNを用いることができる。
【0029】
道路領域検出部12は、検出した道路領域を表す情報を交差点中心候補検出部13及び交差点領域検出部14へ通知する。
【0030】
なお、停止線検出部11で用いる識別器が、一時停止線だけでなく、道路領域を画像から検出するように予め学習されてもよい。この場合には、交差点中心候補検出部13は、停止線検出部11から、一時停止線の画像上での位置及びサイズを表す情報とともに、道路領域の画像上での位置及びサイズを表す情報を受け取ればよい。なおこの場合には、停止線検出部11は、道路領域検出部の他の一例となる。
【0031】
交差点中心候補検出部13は、画像に表された個々の交差点の中心の候補を検出する。本実施形態では、交差点中心候補検出部13は、検出された道路領域に対して、スケルトン化処理を適用することで、各道路の接続関係を表すスケルトンネットワークを求める。これにより、各道路は、一本の骨格線で表されるようになるので、交差点では、複数の骨格線が交差するノードとなる。そこで交差点中心候補検出部13は、骨格線の分岐点を表す次数3以上のノードのそれぞれを、交差点の中心の候補として検出する。なお、交差点中心候補検出部13は、道路領域をスケルトン化する代わりに、道路領域に対して細線化処理を実行することで、各道路の接続関係を表す、細線化された骨格線のネットワークを求めてもよい。この場合も同様に、交差点中心候補検出部13は、次数3以上のノードのそれぞれを交差点の中心の候補とすればよい。このようなネットワークを利用することで、交差点中心候補検出部13は、交差点の中心位置を表す交差点マークが設けられていない交差点についても、交差点の中心の候補を検出することができ、その結果として、そのような交差点についても、交差点領域を適切に設定することが可能となる。
【0032】
図3は、スケルトン化あるいは細線化処理による、交差点の中心の候補検出の概要の説明図である。
図3に示されるように、画像300に表された道路領域がスケルトン化あるいは細線化されることで得られたスケルトンあるいは細線化ネットワーク301において、個々の交差点において次数3以上のノード302が現れている。そこで各ノード302が交差点の中心の候補として検出されることが分かる。
【0033】
あるいは、交差点中心候補検出部13は、道路端を表す個々の画素を母点として、道路領域に対してボロノイ分割処理を実行してもよい。この場合、個々の道路の略中心にボロノイ境界が引かれることになるので、ボロノイ境界は、道路領域の骨格線を表すものとなる。そして交差点では、複数のボロノイ境界が交差するボロノイ点が現れる。そこで、交差点中心候補検出部13は、ボロノイ点のそれぞれを交差点の中心の候補として検出すればよい。この場合も、交差点中心候補検出部13は、交差点マークが設けられていない交差点についても、交差点の中心の候補を検出することができ、その結果として、そのような交差点についても、交差点領域を適切に設定することが可能となる。
【0034】
交差点中心候補検出部13は、検出された個々の交差点の中心の候補の位置及び道路領域を表す情報を交差点領域検出部14へわたす。
【0035】
交差点領域検出部14は、画像に表された個々の交差点について、その交差点及びその交差点と接続される複数の道路とを含む所定の領域(以下、単に交差点領域と呼ぶ)を検出する。
【0036】
そのために、交差点領域検出部14は、交差点の中心の候補のそれぞれについて、その候補を含む交差点領域の候補を画像から検出する。そして交差点領域検出部14は、検出された交差点領域の候補のうち、他の交差点領域の候補と重ならない候補を交差点領域とする。さらに、交差点領域検出部14は、交差点領域の候補のそれぞれのうち、互いに少なくとも部分的に重複する2以上の交差点領域については、その重複する2以上の交差点領域の候補を一つの交差点領域として検出する。
【0037】
本実施形態では、交差点領域検出部14は、交差点の中心の候補ごとに、以下の手順に従って交差点領域の候補を検出する。
【0038】
交差点領域検出部14は、着目する交差点の中心の候補から放射方向に沿って等角度間隔で複数の走査線を設定し、走査線ごとに、その走査線と道路領域とそれ以外の領域との境界(以下、道路端と呼ぶ)または一時停止線を道路端まで延伸した線と交差する位置を、交差点領域の候補の外縁として検出する。このように交差点領域の候補の外縁を決定することで、交差点領域の候補に、交差点に接続する各道路の一時停止線が含まれるようになるので、交差点に接続する各道路が有する車線の数を求めることが容易となる。
【0039】
また、個々の走査線のうち、着目する交差点の中心の候補から予め設定された最遠端までの間において、上記のような一時停止線などと交差する位置が存在しない走査線について、交差点領域検出部14は、その最遠端の位置を交差点領域の候補の外縁候補として検出する。そして最遠端に達した位置が外縁候補となった道路について、交差点領域検出部14は、外縁候補が並ぶ外縁候補線を着目する交差点の中心の候補に向けて徐々に近づけ、その外縁候補線の長さがその直前の長さと比較して所定比率以上長くなったときの所定画素数だけ着目する交差点の中心の候補から遠い位置の外縁候補線を、交差点領域の候補の外縁に設定する。これにより、交差点領域検出部14は、交差点に接続する各道路のうちの一時停止線が設けられていない道路についても、その道路と交差点との接続箇所を交差点領域の候補に含めることができる。そのため、その一時停止線が設けられていない道路に関するレーンネットワークを適切に設定することが可能となる。
【0040】
交差点領域検出部14は、交差点に接続する各道路について、その道路上に設定された外縁同士を結んだ線で囲まれた領域を交差点領域の候補として検出する。
【0041】
図4(a)~
図4(c)は、交差点領域の候補検出の概要の説明図である。
図4(a)に示されるように、交差点の中心の候補401から放射方向に沿って設定される各走査線402と、道路端403または一時停止線404を道路端403まで延伸した線とが交差する位置が交差点領域の候補の外縁として設定される。ただし、交差点の中心の候補401から見て右側に位置する道路405については、一時停止線が存在しないため、予め設定された最遠端の位置に交差点領域の候補の外縁の候補線411が設定される。
【0042】
図4(b)に示されるように、道路405について、外縁候補線411を交差点の中心の候補401に向けて徐々に近づけていくと、位置406にて、その外縁候補線の長さがその直前の長さと比較して所定比率以上長くなる。そこで、位置406から所定画素数だけ交差点の中心の候補401から遠い位置の外縁候補線が、道路405における交差点領域の候補の外縁の一部412として設定される。
【0043】
図4(c)に示されるように、最終的に、各道路について求められた外縁で囲まれた領域が交差点領域の候補413となる。
【0044】
ここで、再度
図3を参照すると、例えば、交差点311では、交差点の中心の候補302が一つだけ検出されているが、交差点312では、二つの交差点の中心の候補302a、302bが検出されている。そして交差点の中心の候補302aについて設定された交差点領域の候補312aと、交差点の中心の候補302bについて設定された交差点領域の候補312bとは、互いに部分的に重なっている。これは、交差点312のように、対称性が低い交差点、あるいは、五差路といった交差する道路の数が多い交差点では、道路領域の骨格線において、3次以上のノードが複数生じ易いためである。そしてこのような交差点から検出された複数の交差点の中心の候補のそれぞれについて設定された交差点領域の候補は、同じ交差点について設定されているため、互いに少なくとも部分的に重なる。
【0045】
そこで、交差点領域検出部14は、検出された各交差点領域の候補のうち、他の交差点領域の候補と重ならない候補を、それぞれ、交差点領域として検出する。一方、交差点領域検出部14は、検出された各交差点領域の候補のうち、互いに少なくとも部分的に重複する2以上の交差点領域の候補を一つの交差点領域として検出する。その際、交差点領域検出部14は、その重複する2以上の交差点領域の候補の何れか一つを交差点領域としてもよく、あるいは、その重複する2以上の交差点領域の候補の和集合となる領域または積集合となる領域を交差点領域としてもよい。例えば、
図3に示される例では、交差点311では、交差点の中心の候補302について設定された交差点領域の候補313は、他の交差点領域の候補と重ならないので、その交差点領域の候補313自体が一つの交差点領域として検出される。一方、交差点の中心の候補302aについて設定された交差点領域の候補312aと、交差点の中心の候補302bについて設定された交差点領域の候補312bとは、互いに部分的に重なっているので、交差点領域の候補312aと交差点領域の候補312bの和集合となる領域全体が一つの交差点領域として検出される。
【0046】
交差点領域検出部14は、検出された個々の交差点領域について、画像上でのその交差点領域を表す情報を、車線検出部15、レーンネットワーク生成部16及び地図生成部17へ通知する。
【0047】
車線検出部15は、検出された個々の交差点領域に含まれる交差点に接続する各道路について、その交差点へ進入する進入車線と交差点から退出する退出車線の少なくとも一方を検出する。
【0048】
例えば、車線検出部15は、着目する道路について、一時停止線の長さが道路幅に所定の係数(例えば、0.5)を乗じた値以下であれば、その道路に進入車線と退出車線の両方が含まれると判定する。一方、一時停止線の長さが道路幅に所定の係数を乗じた値よりも長ければ、車線検出部15は、その道路に進入車線のみが含まれると判定する。なお、車線検出部15は、着目する道路の幅を、その道路の延伸方向と略直交する方向における道路端間の距離として算出することができる。また、上述した識別器により車線区画線が検出されている場合、車線検出部15は、着目する道路の進入車線及び退出車線それぞれについて、その車線区画線により区分される数だけ車線が存在すると判定する。その際、車線検出部15は、一時停止線が設けられている道路については、車線区画線と一時停止線の位置関係に応じて、進入車線の数及び退出車線の数を判定してもよい。例えば、車線検出部15は、着目する道路について、その道路の延伸方向と略直交する方向において、その道路に設けられた一時停止線と重ならない位置に設けられた車線区画線の数に1を加えた数を、退出車線の数とする。また、車線検出部15は、着目する道路について、その道路の延伸方向と略直交する方向において、その道路に設けられた一時停止線と重なる位置に設けられた車線区画線の数に1を加えた数を、進入車線の数とする。さらに、車線検出部15は、着目する道路について、その道路の延伸方向と略直交する方向において、一時停止線の道路の中央側の一端から所定の範囲内に位置する車線区画線については、進入車線と退出車線とを区別するものとして、進入車線及び退出車線の数のカウントには参照しないようにしてもよい。なお、所定の範囲は、例えば、画像上での車両の幅よりも小さいサイズに設定される。
【0049】
また、一時停止線が設けられていない道路において、一つの車線区画線が検出されている場合には、車線検出部15は、その道路において、車線区画線で区分される二つの車線が含まれると判定してもよい。そして車線検出部15は、その二つの車線のうち、画像に表されている地域の道路法規に従って交差点へ進入可能な方の車線を進入車線、他方の車線を退出車線と判定すればよい。さらに、一時停止線及び車線区画線の何れも検出されていない道路(以下、説明の便宜上、無停止線道路と呼ぶ)について、車線検出部15は、無停止線道路には退出車線のみが含まれると判定する。あるいは、無停止線道路について、車線検出部15は、同じ交差点に接続する他の道路が有する車線との関係に基づいて、無停止線道路の車線が進入車線か退出車線かを判定してもよい。例えば、着目する交差点領域に含まれる交差点が十字路であり、無停止線道路と基準点を挟んで対向する位置にある道路に一時停止線が設けられ、かつ、その道路の車線が進入車線のみである場合、車線検出部15は、無停止線道路は退出車線のみを含むと判定する。一方、着目する交差点領域に含まれる交差点が十字路であり、着目する無停止線道路と基準点を挟んで対向する位置にある道路も無停止線道路である場合、着目する無停止線道路に含まれる一つの車線は、着目する交差点への進入及び着目する交差点からの退出の何れも可能な車線、すなわち、進入車線であり、かつ、退出車線であるとしてもよい。このように、一時停止線の有無、及び、道路の幅に対する一時停止線の長さの比に応じて進入車線及び退出車線を検出することで、車線検出部15は、交差点に接続する各道路に含まれる進入車線及び退出車線を精度良く検出することができる。
【0050】
車線検出部15は、個々の交差点領域について、その交差点領域に含まれる交差点に接続する各道路の進入車線及び退出車線の数をレーンネットワーク生成部16へ通知する。
【0051】
レーンネットワーク生成部16は、個々の交差点領域について、その交差点領域に含まれる交差点に接続する複数の道路のそれぞれについて、その道路の進入車線とその交差点に接続する他の道路の退出車線とを結ぶように、交差点における車線同士の接続関係を表すレーンネットワークを生成する。これにより、各交差点について、車線単位で車両が進行可能な方向を表す情報が得られる。
【0052】
図5(a)及び
図5(b)は、生成されたレーンネットワークの一例を示す図である。
図5(a)に示されるように、画像500に表された交差点501には、4本の道路502~505が接続されている。このうち、交差点501に対して、左側から接続する道路502、上側から接続する道路503及び下側から接続する道路505のそれぞれには一時停止線510が設けられている。そしてその一時停止線510の長さと道路の幅とから、道路503及び道路505には進入車線と退出車線が含まれ、道路502には進入車線のみが含まれると判定されている。また、交差点501に対して右側から接続する道路504には一時停止線が設けられておらず、退出車線のみが含まれると判定されている。
【0053】
そこで、
図5(b)に示されるレーンネットワーク520では、道路502の進入車線が、道路503~505のそれぞれの退出車線と接続される。また、道路503の進入車線503aは、道路504の退出車線及び道路505の退出車線505bと接続される。一方、道路503の退出車線503bは、道路502の進入車線及び道路505の進入車線505aと接続される。同様に、道路505の進入車線505aは、道路504の退出車線及び道路503の退出車線503bと接続され、道路505の退出車線505bは、道路502の進入車線及び道路503の進入車線503aと接続される。そして道路504の退出車線は、道路502、道路503及び道路505のそれぞれの進入車線と接続される。
【0054】
レーンネットワーク生成部16は、個々の交差点領域についてのレーンネットワークを表す情報を地図生成部17へ通知する。
【0055】
地図生成部17は、各交差点領域についてのレーンネットワークを表す情報を含む地図を生成する。また、地図生成部17は、画像から検出された個々の道路について、その道路に含まれる車線の数及び各車線に設けられる道路標示に関する情報を地図に含める。
【0056】
その際、地図生成部17は、交差点領域ごとに、地図生成処理の対象となった画像に表された地理的範囲を表す情報及び画像上のその交差点領域の位置を参照して、その交差点の位置を求め、道路地図にその位置を表す位置情報(例えば、緯度及び経度)を関連付けてもよい。同様に、地図生成部17は、各道路について、その道路を所定の長さの区間ごとに区分し、その区間ごとに、地図生成処理の対象となった画像に表された地理的範囲を表す情報及び画像上でのその区間の位置を参照して、その区間の位置を求め、道路地図にその位置を表す位置情報を関連付けてもよい。
【0057】
さらに、地図生成部17は、画像ごとに生成された道路地図を結合することで、より広範囲な道路地図を生成してもよい。その際、地図生成部17は、画像ごとに、その画像に表された地理的範囲を表す情報を参照することで、同じ道路の同じ位置同士が重なるように、個々の画像から得られた道路地図を結合すればよい。
【0058】
地図生成部17は、生成した道路地図を、メモリ5に記憶し、または、記憶媒体アクセス装置6を介して記憶媒体8に書き込む。あるいは、地図生成部17は、生成した道路地図を、通信インターフェース2を介して他の機器へ出力してもよい。
【0059】
図6は、地図生成処理の動作フローチャートである。プロセッサ7は、地図生成処理の対象となる鳥瞰画像ごとに、下記の動作フローチャートに従って地図生成処理を実行すればよい。
【0060】
プロセッサ7の停止線検出部11は、鳥瞰画像に表された個々の一時停止線を検出する(ステップS101)。また、プロセッサ7の道路領域検出部12は、鳥瞰画像に表された道路領域を検出する(ステップS102)。そしてプロセッサ7の交差点中心候補検出部13は、道路領域の骨格線を検出し、その骨格線の分岐点のそれぞれを交差点の中心の候補として検出する(ステップS103)。
【0061】
プロセッサ7の交差点領域検出部14は、交差点の中心の候補のそれぞれについて、その中心の候補を含む、交差点領域の候補を検出する(ステップS104)。そして交差点領域検出部14は、各交差点領域の候補のうち、互いに重ならい交差点領域の候補を、それぞれ、交差点領域として検出する(ステップS105)。さらに、交差点領域検出部14は、各交差点領域の候補のうち、互いに少なくとも部分的に重なる2以上の交差点領域の候補を一つの交差点領域として検出する(ステップS106)。
【0062】
プロセッサ7の車線検出部15は、検出された個々の交差点領域について、その交差点に接続する各道路について、その道路の一時停止線の有無及びその道路の幅に対する一時停止線の長さの比に基づいて進入車線と退出車線の少なくとも一方を検出する(ステップS107)。
【0063】
プロセッサ7のレーンネットワーク生成部16は、個々の交差点領域について、その交差点領域に含まれる交差点に接続する複数の道路のそれぞれについて、その道路の進入車線とその交差点に接続する他の道路の退出車線とを結ぶようにレーンネットワークを生成する(ステップS108)。
【0064】
そしてプロセッサ7の地図生成部17は、各交差点領域についてのレーンネットワークを表す情報を含む道路地図を生成する(ステップS109)。そしてプロセッサ7は、地図生成処理を終了する。
【0065】
以上に説明してきたように、この地図生成装置は、鳥瞰画像上の道路領域の骨格線を検出し、その骨格線の分岐点を、交差点の中点の候補として検出する。さらに、この地図生成装置は、交差点の中心の候補ごとに、交差点領域の候補を検出する。そしてこの地図生成装置は、他の交差点領域の候補と重ならない交差点領域の候補を、交差点領域として検出し、一方、少なくとも部分的に重なる2以上の交差点領域の候補を一つの交差点領域として検出する。そのため、この地図生成装置は、鳥瞰画像から、中心を表す道路標示がない交差点を検出することができる。
【0066】
なお、場所によっては、互いに近接して複数の交差点が設けられることがある。このような場合、それら複数の交差点のそれぞれについて検出された交差点領域の候補が互いに部分的に重なることがある。しかし、その複数の交差点の何れかに、一時停止線あるいは横断歩道といった、道路を横切るような道路標示が設けられることがある。そしてその道路標示が複数の交差点の間に存在することがある。
【0067】
そこで変形例によれば、道路領域検出部12は、画像を識別器に入力することで、画像から道路標示をさらに検出する。この場合、道路領域を検出するための識別器が、道路領域だけでなく、道路標示も検出するように予め学習されればよい。
【0068】
交差点領域検出部14は、互いに少なくとも部分的に重複する2以上の交差点領域の候補について、それら交差点領域の候補の中心の候補同士の間に道路を横切る道路標示が存在する場合、それら交差点領域の候補のそれぞれを別個の交差点領域として検出する。これにより、複数の交差点が互いに近接していても、この地図生成装置は、それら交差点を精度良く検出することができる。
【0069】
さらに、立体的に複数の道路が交差している地点では、その交差している地点において道路領域の骨格線の分岐点が、交差点の中心の候補として検出されることがある。このような場合、その交差点の中心の候補については、交差点領域として検出されないことが好ましい。なお、このような地点では、一方の道路が、他方の道路の境界と交差することとなる。
【0070】
そこで他の変形例によれば、道路領域検出部12は、画像を識別器に入力することで、画像から、道路端または道路端を表す区画線といった道路標示をさらに検出する。この場合、道路領域を検出するための識別器が、道路領域だけでなく、道路端または道路端を表す道路標示も検出するように予め学習されればよい。
【0071】
交差点領域検出部14は、着目する交差点の中心の候補について、その中心の候補を通る骨格線の何れかに沿って道路端または道路端を表す道路標示が存在し、かつ、その中心の候補を通る他の骨格線が、その道路端または道路端を表す道路標示と交差する場合、着目する交差点の中心の候補について設定される、交差点領域の候補を、交差点領域として検出しない。これにより、交差点領域検出部14は、道路同士が立体交差している地点を交差点領域として誤検出することを防止できる。
【0072】
なお、画像が、各画素について、その画素に表されている地点の実空間における高さを表す高度情報を有していることがある。このような場合、交差点領域検出部14は、着目する交差点の中心の候補について、その中心の候補を通る骨格線上の各位置に相当する地点の実空間での高度と、その中心の候補を通る他の骨格線上の各位置に相当する地点の実空間での高度との差を所定の高度差閾値と比較してもよい。そして交差点領域検出部14は、何れかの二つの地点について、その差が高度差閾値以上である場合、着目する交差点の中心の候補について設定される、交差点領域の候補を、交差点領域として検出しないようにしてもよい。この場合も、交差点領域検出部14は、道路同士が立体交差している地点を交差点領域として誤検出することを防止できる。
【0073】
また、道路によっては、交差点にラウンドアバウトが設けられることがある。ラウンドアバウトでは、環状の道路が設けられ、その環状の道路に複数の道路が接続される。そこでこのような道路の構成を検出することで、地図生成装置は、ラウンドアバウトを検出することができる。
【0074】
図7は、この変形例による、地図生成装置のプロセッサ7の機能ブロック図である。
図7に示されるように、プロセッサ7は、停止線検出部11と、道路領域検出部12と、交差点中心候補検出部13と、交差点領域検出部14と、ラウンドアバウト検出部18と、車線検出部15と、レーンネットワーク生成部16と、地図生成部17とを有する。プロセッサ7が有するこれらの各部は、例えば、プロセッサ7上で実行されるコンピュータプログラムによって実現される機能モジュールである。あるいは、プロセッサ7が有するこれらの各部は、プロセッサ7に設けられる、専用の演算回路であってもよい。この変形例では、上記の実施形態と比較して、プロセッサ7がラウンドアバウト検出部18を有する点で相違する。そこで以下では、ラウンドアバウト検出部18及びその関連部分について説明する。プロセッサ7が有するその他の構成要素の詳細については、上記の実施形態における対応する構成要素の説明を参照されたい。
【0075】
ラウンドアバウト検出部18は、各交差点の中心の候補のうち、骨格線を介して閉曲線を形成する複数の候補を検出する。その際、ラウンドアバウト検出部18は、複数の線の組み合わせの中から閉曲線を検出する何れかの手法に従って、道路領域の骨格線の様々な組み合わせの中から閉曲線となる骨格線の組み合わせを検出し、検出した組み合わせに含まれる何れかの骨格線が通る交差点の中心の候補を、閉曲線を形成する交差点の中心の候補として検出すればよい。なお、ラウンドアバウト検出部18は、長さが一つのラウンドアバウトの環状の道路の長さに相当する所定の長さ閾値以下となる閉曲線についてのみ、その閉曲線を形成する交差点の中心の候補を検出するようにしてもよい。そしてラウンドアバウト検出部18は、その閉曲線を、その閉曲線を形成する複数の候補の重心を中心とする円で近似できるか否か判定する。例えば、ラウンドアバウト検出部18は、閉曲線と円との最小二乗誤差が所定の閾値以下となる場合に、その閉曲線を円で近似できると判定すればよい。その閉曲線が円で近似できる場合、ラウンドアバウト検出部18は、その閉曲線を形成する複数の候補のそれぞれを含む領域を、ラウンドアバウトが表された領域として検出する。例えば、ラウンドアバウト検出部18は、その閉曲線を形成する複数の候補のそれぞれについて、交差点領域検出部14と同様の手法に従って検出した交差点領域の候補の和集合となる領域を、ラウンドアバウトが表された領域として検出する。あるいは、ラウンドアバウト検出部18は、その閉曲線を近似する円の中心をラウンドアバウトが表された領域の中心としてもよい。そしてラウンドアバウト検出部18は、ラウンドアバウトが表された領域の中心から、その閉曲線までの距離の平均値に所定のオフセットを加えた値を半径とする円形状の領域を、ラウンドアバウトが表された領域としてもよい。
【0076】
ラウンドアバウトでは、ラウンドアバウトと接続される各道路の進入車線から環状の道路へ進入可能であるとともに、環状の道路から各道路の退出車線へ退出することが可能となっている。そこでレーンネットワーク生成部16は、ラウンドアバウトが表された領域について、ラウンドアバウトと接続される各道路の進入車線と、ラウンドアバウトの環状の道路の車線とを接続するとともに、ラウンドアバウトの環状の道路の車線とその各道路の退出車線とを接続するように、レーンネットワークを生成すればよい。
【0077】
この変形例によれば、地図生成装置は、ラウンドアバウトとして構成される交差点を、他の交差点と区別して検出することができる。
【0078】
なお、交差点によっては、その交差点に接続する何れかの道路から退出することが道路標識により規制されていることがある。このような場合、鳥瞰画像には、道路標識の表示内容が表されていないので、道路標識を参照せずに交差点に接続する各道路について退出可能か否かを判定することが求められる。
【0079】
そこで、変形例によれば、レーンネットワーク生成部16は、交差点領域を、交差点に接続する各道路について、その道路の進入車線と、他の道路の退出車線のうち、車両が進行可能な退出車線との接続関係を出力するように予め学習された識別器に入力することで、その交差点領域のレーンネットワークを生成してもよい。そのような識別器として、レーンネットワーク生成部16は、例えば、Graph Parsing Neural Network (GPNN)を用いることができる。また、レーンネットワーク生成部16は、交差点領域に含まれる各画素の値から、GPNNに入力する特徴ベクトルを求めるために、Variational Auto-Encoder(VAE)、あるいは、Position-Sensitive ROI(PSRoI) Poolingレイヤを含む、Deformable Convolutional Networkといった、CNN型のアーキテクチャを有するDNNを用いることができる。レーンネットワーク生成部16は、これらのDNNに交差点領域の各画素の値を入力することで生成されるfeature mapを、GPNNに入力する特徴ベクトルとすればよい。
この変形例によれば、レーンネットワーク生成部16は、交差点に接続する道路の何れかについて道路標識により交差点からのその道路への退出が規制されている場合でも、レーンネットワークを適切に生成できる。
【0080】
さらに、上記の実施形態または変形例による地図生成装置のプロセッサが有する各部の機能をコンピュータに実現させるコンピュータプログラムは、コンピュータによって読取り可能な記録媒体に記憶された形で提供されてもよい。なお、コンピュータによって読取り可能な記録媒体は、例えば、磁気記録媒体、光記録媒体、又は半導体メモリとすることができる。
【符号の説明】
【0081】
1 地図生成装置
2 通信インターフェース
3 入力装置
4 表示装置
5 メモリ
6 記憶媒体アクセス装置
7 プロセッサ
8 記憶媒体
11 停止線検出部
12 道路領域検出部
13 交差点中心候補検出部
14 交差点領域検出部
15 車線検出部
16 レーンネットワーク生成部
17 地図生成部
18 ラウンドアバウト検出部