JP2023118121A - 情報処理装置、情報処理方法、データ構造及びプログラム - Google Patents

情報処理装置、情報処理方法、データ構造及びプログラム Download PDF

Info

Publication number
JP2023118121A
JP2023118121A JP2023020240A JP2023020240A JP2023118121A JP 2023118121 A JP2023118121 A JP 2023118121A JP 2023020240 A JP2023020240 A JP 2023020240A JP 2023020240 A JP2023020240 A JP 2023020240A JP 2023118121 A JP2023118121 A JP 2023118121A
Authority
JP
Japan
Prior art keywords
boundary line
center point
intersection
line
boundary
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2023020240A
Other languages
English (en)
Inventor
健一 松島
Kenichi Matsushima
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Agriculture and Food Research Organization
Original Assignee
National Agriculture and Food Research Organization
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National Agriculture and Food Research Organization filed Critical National Agriculture and Food Research Organization
Publication of JP2023118121A publication Critical patent/JP2023118121A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Navigation (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
  • Traffic Control Systems (AREA)
  • Instructional Devices (AREA)

Abstract

【課題】地図データから道路を特定し、その道路に関する情報を保持しつつ、交差点を特定する技術を実現する。【解決手段】情報処理装置(1)は、地図データから走行路を規定する境界線を検出し、端部を有する境界線と端部を有しない境界線とに分類して特定する境界線特定部(11)と、走行路を規定する第1境界線に接するとともに当該第1境界線とは異なる第2境界線に内接する円又は球の中心点である第1中心点を複数導出して、第1中心点と第1境界線とを関連付ける中心点導出部(12)と、第1中心点と、第1境界線とは異なる第2境界線に関連付けられた中心点であって第1中心点と最も近い位置にある第2中心点と、を関連付ける中心点ペア生成部(13)と、第1中心点と第2中心点にそれぞれ関連付けられた第1境界線と第2境界線の組み合わせが変化する第1中心点を走行路の交差点を示す情報として特定する交差点特定部(14)と、を備える。【選択図】図1

Description

本発明は、情報処理装置、情報処理方法、データ構造及びプログラムに関する。
車両が走行する走行路のネットワークデータを構築するために、走行路の境界線データから中心線および交差点を生成する技術が知られている。例えば、特許文献1には、走行路の境界線データから、中心線、交差点を生成する技術が記載されている。
特許文献1に開示された技術は、道路の外側を構成する第1の分類と、道路の交差点付近を構成する第2の分類と、道路の内側を構成する第3の分類と、の3種類の画像にわける。そして道路の内側を塗り潰し、さらにその道路の幅を細くして道路の中心線を画定する。
特開2007-073009号公報
しかしながら、特許文献1に記載された従来技術は、道路を最終的に1本の線として表し、交差点は線が交差する点として評価され、道路や交差点の幅に関する情報は保持されない。道路のネットワークデータのみを構築するためにはそれでもよいが、交差点も含めて車両が道路のどの位置を走行することが好ましいかを探索する場合は、道路の幅等の交差点間の道路に関する情報が必要である。
本発明の一態様は、地図データから道路を特定し、その道路に関する情報を保持しつつ、交差点を特定する技術を実現することを目的とする。
上記の課題を解決するために、本発明の一態様に係る情報処理装置は、地図データから走行路を規定する境界線を検出し、端部を有する境界線と端部を有しない境界線とに分類して特定する境界線特定部と、前記走行路を規定する第1境界線に接するとともに当該第1境界線とは異なる第2境界線に内接する円又は球の中心点である第1中心点を複数導出して、前記第1中心点と前記第1境界線とを関連付ける中心点導出部と、前記第1中心点と、前記第1境界線とは異なる第2境界線に関連付けられた中心点であって前記第1中心点と最も近い位置にある第2中心点と、を関連付ける中心点ペア生成部と、前記第1中心点と前記第2中心点にそれぞれ関連付けられた前記第1境界線と前記第2境界線の組み合わせが変化する前記第1中心点を前記走行路の交差点を示す情報として特定する交差点特定部と、を備える。
本発明の一態様に係る情報処理方法は、1又は複数のプロセッサが、地図データから走行路を規定する境界線を検出し、端部を有する境界線と端部を有しない境界線とに分類して特定するステップと、前記走行路を規定する第1境界線に接するとともに当該第1境界線とは異なる第2境界線に内接する円又は球の中心点である第1中心点を複数導出して、前記第1中心点と前記第1境界線とを関連付けるステップと、前記第1中心点と、前記第1境界線とは異なる第2境界線に関連付けられた中心点であって前記第1中心点と最も近い位置にある第2中心点と、を関連付けるステップと、前記第1中心点と前記第2中心点にそれぞれ関連付けられた前記第1境界線と前記第2境界線の組み合わせが変化する前記第1中心点を前記走行路の交差点を示す情報として特定するステップと、を含む。
本発明の一態様に係るデータ構造は、走行路の境界線データを用いて中心点導出部が導出した、境界線IDを識別子として含む中心点データと、前記中心点データを用いて中心点ペア生成部が生成した、中心点IDを識別子として含む中心点ペアデータと、前記中心点ペアデータを用いて交差点特定部が生成した、中心点ペアIDを識別子として含む交差点データと、を含む。
本発明の各態様に係る情報処理装置は、コンピュータによって実現してもよく、この場合には、コンピュータを前記情報処理装置が備える各部(ソフトウェア要素)として動作させることにより前記情報処理装置をコンピュータにて実現させる情報処理装置の制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
本発明の一態様によれば、地図データから道路を特定し、その道路に関する情報を保持しつつ、交差点を特定する技術を実現することができる。
本発明の実施形態1に係る情報処理装置の構成を示すブロック図である。 実施形態1に係る情報処理方法の流れを示すフローチャートである。 地図データに現れる走行路の境界線の種類を説明する図である。 走行路の中心線の求め方を示す図である。 交差点において中心点ペアの組み合わせが変化する状況を説明する図である。 本発明の実施形態2に係る情報処理装置の構成を示すブロック図である。 走行路を一様区間と非一様区間とに区分する概念図である。 スタート地点から目的地点まで、白抜き丸印で示す経由点を含む道路網の一例である。 走行路の幅方向の位置に応じてコストを割り当てたコストマップの一例である。 仮締切線を無効にした場合と有効にした場合とで、走行経路が変わることを示す図である。 交差点における仮締切線の生成位置を点線で示した図である。 単車線の4叉路を統合交差点として扱う場合の考え方を示す図である。 複合走行路が交わる四叉路交差点の模式図である。 本発明の実施形態4に係る情報処理装置の構成を示すブロック図である。 半径が制限された内接円を用いて仮想走行路を生成する方法の一例を示す模式図である。 境界線に内接する円又は球の半径が変化する例を示す模式図である。 本発明の実施形態5に係る交差点内における仮想走行路を生成する方法を示す模式図である。 交差点経路生成部が生成する、円Qの中心点の複数の経路(GL1~GLn)の例を示すグラフである。 複数車線のうちの1つの車線に向かう交差点内の仮想走行路を生成する場合の模式図である。 1.5車線の走行路から1.5車線の走行路に向かう交差点内の仮想走行路を生成する場合の模式図である。 交差点に合流する走行路の一例を示す模式図である。 より自然な走行経路を生成するための方法を示す模式図である。
〔実施形態1〕
(情報処理装置1の構成)
以下、本発明の一実施形態について、図面を参照して詳細に説明する。図1は、本実施形態に係る情報処理装置1の構成を示すブロック図である。情報処理装置1は、地図データから車両が走行する道路(以下、「走行路」ともいう。)を特定し、その走行路を車両が移動するにあたって、走行路の幅方向の位置を含む好適な走行経路を探索する装置である。
工事用車両、農業用車両等の作業用車両に関しては、自動運転技術を用いて移動と作業を行わせる技術開発が進められている。このような作業用車両を移動させる場合は、どのような経路で移動させるかとともに、走行路の幅方向の走行位置も含めて自動走行させることが好ましい。本実施形態に係る情報処理装置1は、走行路の幅方向の位置も含めて車両が走行する経路を探索するための情報処理装置である。
図示するように、情報処理装置1は、境界線特定部11、中心点導出部12、中心点ペア生成部13、交差点特定部14、プロセッサ15及びメモリ16を備えている。境界線特定部11、中心点導出部12、中心点ペア生成部、交差点特定部14、プロセッサ15及びメモリ16は、図示しないバスにより互いに情報通信可能に接続されている。
なお、情報処理装置1の上記各部は、1つの装置としてまとめて配置されている必要はなく、各部のうちの1つ又は複数が分散して配置されていてもよい。また、各部のうちの1つ又は複数がクラウド上に配置されていてもよい。これは以下の実施形態においても同様である。
プロセッサ15は、情報処理装置1の全体を統括制御する。メモリ16は、1次メモリと2次メモリとを備えていてもよく、例えば1次メモリに以下に説明する各部の制御プログラムを記憶している。プロセッサ15は、各部の制御プログラムを2次メモリに展開して実行することにより、以下の各部としての機能を実現する。
(境界線特定部11)
境界線特定部11は、地図データから走行路を規定する境界線を検出し、端部を有する境界線と端部を有しない境界線とに分類して特定する。地図データは、GIS(Geographic Information System)等の地理情報システムから取得してもよい。又は、樹園地、農地、工事現場等ではGISデータがない場合も多い。そのような場合は、航空写真等をもとに地図データとして作成してもよい。地図データには、標高データ、道路の種別、舗装の種類、障害物の有無、交通制限等が含まれていることが好ましい。標高データを含む地図は3次元地図である。地図データにこのような情報が含まれていない場合は、ユーザがこれらの情報を適宜入力してもよい。
境界線特定部11は、地図データから走行路を規定する境界線を検出する。走行路の境界線は、走行路の幅方向の境界を規定する2本の線である。境界線を検出する方法は限定されないが、GISデータであれば、走行路の境界部分として取得することができる。航空写真であれば、例えば、画像処理により連続するエッジを抽出して検出することができる。
走行路の境界線は、2種類に分けられる。即ち、端部を有する境界線と、端部を有しない境界線との2種類である。地図データは範囲に限りがあるため、地図データの領域外縁で境界線が途切れる。境界線が地図データの外縁で途切れた箇所が端部である。また、地図データの領域内であっても、行き止まりがある走行路の場合は、境界線の行き止まり箇所が端部となる。「行き止まり」とは、ここから先は走行路とはみなさない箇所であり、例えば駐車場、工事現場又は圃場の出入り口などである。換言すれば、本実施形態における端部とは、処理の対象とする境界線の端部である。一方、端部を有しない境界線とは、地図データの中で閉じた領域を形成する境界線である。
図3を参照して、上記の境界線の種類を説明する。図3は、地図データ100に現れる走行路30の境界線の種類を説明する図である。地図データ100の領域外縁又は領域内で走行路30の境界線が途切れる位置が、端部E1から端部E10として示されている。境界線特定部11は、これらの端部E1~E10を特定する。次に、境界線特定部11は、端部E1から端部E2までの境界線に境界線番号を付す。図3では、端部E1から端部E2までの境界線に31aという符号が付されている。境界線31aは端部を有する境界線の一例である。
具体的には、境界線31aは、短いベクトルの集合として生成される。境界線特定部11は、1つの境界線を、例えば向きの変化量が所定の閾値よりも小さいベクトルに分割し、それぞれのベクトルに境界線番号(例えば31a)に関連付けてメモリ16に記録する。
境界線特定部11は、同様に、端部E3から端部E4までの境界線31b、端部E5から端部E6までの境界線31c、端部E7から端部E8までの境界線31d、及び端部E9から端部E10までの境界線31eを生成する。なお、端部E4と端部E5は、走行路30の行き止まりの端部である。
さらに、境界線特定部11は、端部を有する2つの境界線の各々の端部を結ぶ端部境界線(以下「端部線」とも称する。)を生成する。例えば、図3に示すように、境界線特定部11は、端部E1とその直近に存在する端部E10を結んで端部線35aを生成する。他の箇所も同様に、境界線特定部11は、直近の端部同士を結んで、端部線35b、35c、35d及び35eを生成する。境界線特定部11は、生成した端部線に識別符号を付してメモリ16に記録する。
端部線は、地図データの外縁で走行路を横断する線、あるいは圃場の出入り口や駐車場の出入り口等なので、地図データを図化する際にユーザが走行路の境界線と端部線とを分けて作図し、境界線特定部11が、保持している属性情報に基づいて検出することもできる。あるいは、境界線特定部11が、端部線を含めて走行路の境界線として作図して、境界線の長さや形状から自動抽出してもよい。
端部を有するすべての境界線と端部線とを繋ぐと、1つの閉じた線が得られる。境界線特定部11は、端部を有する境界線と端部線とで閉じられた領域の当該境界線及び当該端部境界線に対して固有の識別符号と所定の周方向情報とを与えることができる。境界線及び端部境界線の固有の識別符号とは、例えばそれぞれの境界線と端部線に付された符号31aから31e、及び35aから35eである。所定の周方向情報とは、例えば右回りの方向という情報である。図3においては、端部を有するすべての境界線と端部線とを繋いだ線に、右回りの矢印を付している。
一方、境界線32aと境界線32bは、端部を有しない境界線である。境界線32aと境界線32bは、それぞれ繋がった線であり、それぞれ閉じた領域を形成している。境界線特定部11は、端部を有しない境界線で閉じられた領域の当該境界線に固有の識別符号と、上述の所定の周方向情報とは反対方向の周方向情報とを与えることができる。例えば、端部を有しない境界線に固有の識別符号とは、符号32aと32bであり、所定の周方向情報とは反対方向の周方向情報とは、例えば左回りという情報である。
境界線特定部11は、端部を有しない境界線を、向きの変化量が所定の閾値よりも小さいベクトル線に分割し、それぞれのベクトル線に境界線番号に関連付けた符号を付してメモリ16に記録する。つまり、境界線特定部11は、端部を有しない境界線32aと32bを構成するベクトル線に、端部を有する境界線に与えたベクトル線の方向とは逆回り、つまり左回りの方向を与える。図3においては、端部を有しない境界線32aと32bに、左回りの矢印を付している。
以上の処理により、図3に示すように、走行路30は、右回りのベクトルにより構成される境界線と、左回りのベクトル線により構成される境界線とで挟まれた領域として規定することができる。より具体的には、走行路30は、右回りのベクトル線を繋げた領域の内側の領域であって、左回りのベクトル線を繋げた領域の外側の領域と定義される。この場合、境界線特定部11は、右回りベクトル線の右側で、かつ左回りベクトル線の右側の領域を走行路30であると特定する。
以上のように、走行路30の特定は、一般的には以下のように行われる。即ち、端部を有しない境界線で閉じた領域(ポリゴン)、又は端部を有する境界線と端部線とで閉じた領域(ポリゴン)の包含関係を特定し、包含順に各領域(ポリゴン)の周方向を順方向(例えば右回り)と反対方向(例えば左回り)とで交互に設定し、周方向の所定の側にある領域を走行路として特定する。
より詳細に説明すると、走行路30の領域については、端部の有無に関係なく、ポリゴン同士の内包関係を把握して決定することができる。端部を有する境界線と端部を有しない境界線のいずれも、端部線を含めるとポリゴンとして表すことができる。ポリゴンとは、短い直線を繋げて形成した閉じた図形である。ポリゴン同士は互いに交差することはないことが前提条件である。1つのポリゴンの内側には、1つ、又は偶数個のポリゴンが含まれることがある。つまり、最も外側の走行路30の境界線のポリゴンに内包されるポリゴンの数は、自身のポリゴン数を除くとゼロまたは奇数になる。最も外側のポリゴンの内側に複数のポリゴンが存在するとき、最も外側のポリゴンから数えて、奇数番目のポリゴンと偶数番目のポリゴンにグループを分けて、奇数番目のポリゴンを右周り、偶数番目のポリゴンを左周りに指定する。そして、周方向に対して、右側を走行路の領域とする。
(中心点導出部12)
次に、走行路30の中心線の求め方を、図面を参照して説明する。図4の401は、図3のX部分を拡大した図であり、走行路30の中心線の求め方を示す図である。中心点導出部12は、走行路を規定する第1境界線に接するとともに当該第1境界線とは異なる第2境界線に内接する円又は最小半径をとる球の中心点である第1中心点を複数導出する。さらに、中心点導出部12は、その第1中心点と第1境界線とを関連付けてメモリ16に記録する。
具体的には、中心点導出部12は、例えば、図4の401に示すように、境界線31a(第1境界線)を構成する1つのベクトルの始点31a1に接するとともに、境界線31aとは異なる境界線32a(第2境界線)に接する内接円C31a1の中心点CP31a1の位置を導出する。こうして導出した中心点CP31a1を第1中心点とも称する。中心点導出部12は、導出した中心点CP31a1に固有の識別符号を付し、その識別符号と一方の境界線31aとを関連付けて、メモリ16に記録する。第1境界線と第2境界線とは、互いにベクトル(周方向情報)が逆方向である。
同様に、中心点導出部12は、次のベクトルの始点31a2に接するとともに、第1境界線31aとは異なる第2境界線32aに接する内接円C31a2の中心点CP31a2の位置を導出する。中心点導出部12は、この中心点CP31a2に識別符号を付し、その識別符号と第1境界線31aとを関連付けて、メモリ16に記録する。中心点導出部12は、中心点CP31a1と中心点CP31a2とを結ぶベクトルを中心線ベクトルCPV31a1としてメモリ16に記録する。以下では、中心線ベクトルは、中心点列ベクトルとも称する。このようにして、中心点導出部12は、境界線31aを構成するすべてのベクトルごとに第1中心点を求め、境界線31aと関連付けてメモリ16に記録する。中心点導出部12は、以上の処理を端部を有する境界線31a~31eについて実行する。
なお、中心点導出部12は、第1中心点に関する情報として、中心点の識別符号(中心点ID、例えば31a1)と境界線番号(例えば31a)のほか、その中心点CP31a1の位置、中心点位置における走行路30の幅員(内接円C31a1の直径)、隣接する中心点CP31a2との間の距離、交通制限(速度制限、一方通行、高さ制限、幅制限、重量制限等)、標高(又は所定の位置からの高低差)、舗装の有無等の情報を中心点の符号と関連付けてメモリ16に記録してもよい。
一方、中心点導出部12は、端部を有しない境界線32aを構成する1つのベクトルの始点32a1に接するとともに、境界線32aとは異なる境界線31aに接する内接円C32a1の中心点CP32a1の位置を導出する。従って、ここでは境界線32aが第1境界線であり、境界線31aが第2境界線となる。中心点導出部12は、導出した中心点CP32a1の識別符号と境界線32aとを関連付けて、メモリ16に記録する。
同様に、中心点導出部12は、次のベクトルの始点32a2に接するとともに、第1境界線32aとは異なる第2境界線31aに接する内接円C32a2の中心点CP32a2を導出する。中心点導出部12は、この中心点CP32a2の識別符号と境界線32aとを関連付けて、メモリ16に記録する。中心点導出部12は、上述のように第1中心点の識別符号と境界線番号以外の情報を併せて記録してもよい。中心点導出部12は、中心点CP32a1と中心点CP32a2とを結ぶベクトルを中心点列ベクトルCPV32a1としてメモリ16に記録する。
このように、中心点導出部12は、境界線32aを構成するすべてのベクトルごとに中心点を求め、境界線32aと関連付けてメモリ16に記録する。中心点導出部12は、この処理を端部を有しないすべての境界線32a、32bについて実行する。
図4の402に示すように、中心点導出部12は、中心点CP31a1、CP31a2…を順に繋ぐ中心点列ベクトル(中心点を繋げたベクトル)を生成して、中心線CL31aを生成する。また、中心点導出部12は、中心点CP32a1、CP32a2…を順に繋ぐ中心点列ベクトルを生成して、中心線CL32aを生成する。図4の402に示すように、中心線は中心点列ベクトルである。中心点導出部12は、中心線CL31aに含まれる中心点列ベクトルの情報のすべてをメモリ16に記録する。また、中心点導出部12は、中心線CL32aに含まれる中心点列ベクトルの情報のすべてをメモリ16に記録する。なお、図4の402では、中心線CL31aと中心線CL32aとが離れて描画されているが、これは説明のためであって、実際は2つの中心線は一致ないし、ほぼ一致する。
なお、図4では2次元の地図データを用いる場合を説明した。しかし、3次元の地図データを用いてもよい。その場合、境界線も3次元的に生成される。例えば、走行路30に高さ制限、幅制限、又は幅方向や高さ方向に障害物等がある場合は、境界線特定部11は、そのような制限がない空間領域の外縁を規定するように3次元的な複数の境界線を生成する。そして、中心点導出部12は、3次元的な境界線に内接する最小半径の内接球の中心点を導出する。
(中心点ペア生成部13)
以上の処理が終了の後、中心点ペア生成部13は、第1境界線に関連付けられた第1中心点と、第1境界線とは異なる第2境界線に関連付けられた中心点であって第1中心点と最も近い位置にある第2中心点と、を関連付ける。第1中心点とそれに最も近い位置にある第2中心点とのペアを、中心点ペア(又は中心点ペアデータ)と称する。また、「境界線に関連付けられている」ことを「境界線番号を持つ」ともいう。中心点ペアの生成方法は、ある中心点(例えば、第1中心点)について、自身が持つ境界線番号以外の境界線番号を持つ中心点(例えば、第2中心点)を最近傍探索し、最近傍の中心点の識別符号を属性情報として保持させることにより行う。単路線の場合、走行路30を構成する2本の境界線に対して、2本の中心線が生成されている。交差点以外の走行路30においては、この2本の中心線の中心点同士がペアとなる。しかし、交差点においては、この中心点ペアの組み合わせが変化する。
図5は、図3のY部分を拡大した図であり、3叉路交差点において中心点ペアの組み合わせが変化する状況を説明する図である。図5に示す黒丸は、中心点(中心点列ベクトルの始点)を示す。図5の501に示すように、中心線CL31aは、境界線31aに沿っている。中心線CL31bは、境界線31bに沿っている。中心線CL32aは、境界線32aに沿っている。なお、図5の交差点Z内では、中心線CL31a、CL31b及びCL32aが大きく離れて描画されているが、これは説明をわかりやすくするためであって、実際は3つの中心線が大きく離れることはない。
図5の502は、501の交差点Zの拡大図である。502に示すように、例えば中心線CL31aの中心点は、右上では中心線CL32aの中心点に近いため、中心線CL32aの中心点とペアとなっている。中心線CL31aと中心線CL32aの中心点ペアは、交差点に近づくにつれてペアA2、ペアA1、ペアAと変化する。しかし、さらに交差点に入っていくと、ペアBに示すように、中心線CL31aの中心点は中心線CL31bの中心点とペアになる。
同様に、中心線CL31bの中心点ペアは、交差点Zに入る前は右下に示すようにペアB2、ペアB1、ペアBと変化する。しかし、さらに交差点Zに入っていくと、ペアCに示すように、中心線CL31bの中心点は中心線CL32aの中心点とペアになる。また、中心線CL32aの中心点ペアは、左下から交差点Zに入っていくと、ペアCに示す中心線CL31bの中心点とのペアから、ペアAに示すように中心線CL31aの中心点とのペアに変化する。
(交差点特定部14)
この性質を利用し、交差点特定部14は、第1中心点と第2中心点にそれぞれ関連付けられた2つの境界線の組み合わせが変化する第1中心点の位置を走行路の交差点を示す情報として特定する。具体的には、交差点特定部14は、ある交差点Zにおいてペアが変化する中心点(図5の502で、中塗の二重丸で示す中心点)に、その交差点Zの識別符号(例えばZ)を付す。単路線の場合は、走行路30を挟んで対向する境界線から発生した中心点が抽出される。交差点を示す中心点は、境界線ごとに特定される。例えば、三叉路の交差点を考えると、変化する点(図5の502の二重丸)は3点存在する。n叉路の場合、3(n-2)点存在する。ただし、同一点が特定されることもあるので、正しくは、3(n-2)以下存在する。交差点特定部14は、交差点にある中心点ペアに中心点ペアIDを付して保存する。
例えば、三叉路の交差点では3つの中心点が交差点として特定されるので、1つの交差点で3つの中心点の情報を持つ。そのため、交差点の代表座標は、3点の平均座標としてもよい。また差路数が多い場合や複数車線同士の交差点になると、上記の交差点が複数発生するので、それぞれの交差点同士の距離を考慮して、複数の交差点を統合して1つの交差点にまとめてもよい。この交差点を統合交差点と呼ぶ。統合交差点には、統合前の複数の交差点を示す中心点の情報が関連付けられている。統合交差点が所持するこれらの情報は、後述する交差点の隣接構造を取得する際に利用することができる。統合交差点については後述する。
交差点として特定された中心点には、隣接する交差点までの中心点の情報が関連付けられている。各中心点には、前述したように走行路30の幅員、中心点間の距離(これから隣接する交差点間の距離を算出できる)、交通制限、標高、障害物、舗装の有無等の走行路情報が関連付けられていてもよい。これらの情報は、走行路の幅方向の位置も含めた車両の走行経路を探索する際に用いることができる。
(情報処理方法)
次に、本実施形態に係る情報処理方法S1について、図面を参照して説明する。図2は、本実施形態に係る情報処理方法S1の流れを示すフローチャートである。図示するように、情報処理方法S1は次のステップを含む。
ステップS11において、1又は複数のプロセッサ(例えば境界線特定部11)が、地図データから走行路を規定する境界線を検出し、端部を有する境界線と端部を有しない境界線とに分類して特定する。端部を有する境界線と端部を有しない境界線は前述のとおりである。
次に、ステップS12において、1又は複数のプロセッサ(例えば中心点導出部12)が、走行路を規定する第1境界線に接するとともに当該第1境界線とは異なる第2境界線に内接する円又は球の中心点である第1中心点を複数導出して、当該第1中心点と第1境界線とを関連付ける。2次元の地図データを用いる場合は内接円の中心点が導出され、3次元の地図データを用いる場合は最小半径の内接球の中心点が導出される。
次に、ステップS13において、1又は複数のプロセッサ(例えば中心点ペア生成部13)が、第1境界線に関連付けられた第1中心点と、第1境界線とは異なる第2境界線に関連付けられた中心点であって第1中心点と最も近い位置にある第2中心点と、を関連付ける。
次に、ステップS14において、1又は複数のプロセッサ(例えば交差点特定部14)が、第1中心点と第2中心点にそれぞれ関連付けられた第1境界線と第2境界線の組み合わせが変化する第1中心点を走行路の交差点を示す情報として特定する。交差点を示す中心点は、境界線ごとに特定される。第1中心点と第2中心点は、交差点以外の場所では、幅方向に対向する2つの境界線に関連付けられているが、交差点ではこの組み合わせが変化する。この特徴を用いて交差点を示す中心点を特定することができる。
以上の構成を有する情報処理装置1及び情報処理方法S1によれば、地図データから道路を特定し、その道路に関する情報を保持しつつ、交差点を特定することができる。このような技術を用いることにより、特に工事用車両、農業用車両等の特殊な車両が、走行路のどの位置を走行すればよいかを地図データを用いて探索することが容易となる。
〔実施形態2〕
本発明の他の実施形態について、以下に説明する。なお、説明の便宜上、上記実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を繰り返さない。
図6は、本発明の第2の実施形態に係る情報処理装置1Aの構成を示すブロック図である。図示するように、情報処理装置1Aは、境界線特定部11、中心点導出部12、中心点ペア生成部13、交差点特定部14、端部取得部17、区間情報記録部18、隣接情報特定部19、経路設定部20、経路特定部21、プロセッサ15及びメモリ16を備えている。上記の各部、プロセッサ15及びメモリ16は、図示しないバスにより互いに情報通信可能に接続されている。
境界線特定部11、中心点導出部12、中心点ペア生成部13、交差点特定部14、プロセッサ15及びメモリ16の機能は、実施形態1で説明したとおりであるので説明は省略する。つまり、情報処理装置1Aは、実施形態1に係る情報処理装置1の構成に加えて、端部取得部17、区間情報記録部18、隣接情報特定部19、経路設定部20、及び経路特定部21を備えている。
端部取得部17は、地図データから境界線の端部を取得する。端部は、前述のように、処理の対象とする境界線の端部である。端部取得部17は、例えば、画像のエッジ取得処理によって検出した境界線が途切れる箇所を端部として取得することができる。端部は、走行経路のスタート地点又は目的地点の1つとすることができる。
端部を検出する方法の具体例について説明する。例えば、境界線31を構成する線分ベクトルの前後が緩やかに変化して、その区間が一定の長さを有している場合、端部は通常走行路の幅員程度であるので、境界線の端部ではないと判定することができる。反対に、ある線分ベクトルが急激に変化し、さらに次の線分ベクトルが急激に変化(ある線分ベクトルに対して次の線分ベクトルがなす角度が直角かそれに近い角度)し、かつある線分ベクトルの大きさが走行路の幅員程度であるとき、境界線の端部であると判定することができる。
(隣接情報特定部19)
隣接情報特定部19は、交差点を示す中心点の識別符号を参照して、隣接する2つの交差点の隣接情報を特定する。交差点の隣接情報とは、どの交差点と交差点とが直接繋がっているかを示す情報である。交差点を示す中心点には、前述のように、境界線番号に加えて中心点の識別符号が与えられているので、その境界線番号と中心点の識別符号の並び順によって交差点の隣接情報を特定することができる。隣接情報特定部19は、メモリ16に記録された区間情報を用いて交差点の隣接情報を特定する。隣接情報特定部19は、走行路の幅員、区間距離、交通制限、舗装種別(アスファルト舗装、土砂舗装など)、道路種別(国道、県道、市町村道、私道など)等を含めて隣接情報として特定してもよい。
(区間情報記録部18)
区間情報記録部18は、隣接する2つの交差点の間の区間の、走行路の幅員、区間距離、及び交通制限のうちの少なくともいずれかの情報を、当該区間の区間情報としてメモリ16に記録する。前述のように、中心点導出部12は、中心点の符号とその中心点における走行路情報とを関連付けてメモリ16に記録している。区間情報記録部18は、中心点の符号に関連付けられた走行路情報から、隣接する2つの交差点の間の区間の走行路情報のうち、走行路の幅員、区間距離、及び交通制限のうちの少なくともいずれかを含む情報をメモリ16から取得して、区間情報として記録する。
次に、車両の走行経路を設定する方法について説明する。工事用車両(ダンプカー、トラック、自走式クレーン等)又は農業用車両(コンバイン、トラクター等)のような大型で特殊な車両は、自動運転させる場合に、走行路の幅方向の走行位置も重要となる。例えば、屈曲部又は交差点に隣接する箇所では、車両の旋回半径(又はホイールベース長)を考慮して走行経路を決定する必要がある。そこで、走行路の幅方向の最適な走行経路を探索するため、屈曲部又は交差点と、それ以外の箇所とを分けて探索することが好ましい。以下、その方法を説明する。
図7は、走行路を一様区間と非一様区間とに区分する概念図である。境界線特定部11は、中心点の配列に基づいて走行路30の一様区間を抽出する一様区間抽出部を備えていてもよい(図示せず)。一様区間抽出部は、車両の走行路30の曲率に基づいて、走行路30の一様区間を抽出する。走行路30の曲率は、走行路30の曲がりの程度を示す指標である。例えば、中心点列ベクトルの向きの変化量を走行路30の局部的な曲率とみなすことができる。そこで、一様区間抽出部は、走行路30の局部的な曲率を示す中心線ベクトルの変化率に基づいて、走行路30の一様区間を抽出してもよい。
例えば、境界線特定部11の一様区間抽出部は、中心点列ベクトルの変化量が所定の閾値以下(ほぼ直線路)、又は中心点列ベクトルの増分がほぼ一定の区間(曲率が一定のカーブ)を一様区間として抽出する。境界線特定部11は、一様区間以外の区間は非一様区間として扱う。具体的には、図7に示すように、直線路又は曲率が一定のカーブの範囲は一様区間として抽出され、交差点又は屈曲部の範囲は非一様区間として抽出される。
また、境界線特定部11は、後述する走行路30のコストマップが、中心線の位置に対してほぼ左右対称であること、又は幅員が車両の幅よりも十分に大きいこと、等を一様区間抽出の条件として加えてもよい。また、道路幅が同じ(変化しない)であることを一様区間抽出の条件として加えてもよい。また、電柱など走行路に近接して設置される障害物が存在する場合は、一様区間として抽出しないという条件を加えてもよい。
さらに、境界線特定部11は、一様区間の端部から車両の旋回半径を考慮した距離だけ一様区間に入った位置に経由点を設定する経由点設定部を備えていてもよい(図示せず)。一様区間の端部領域とは、一様区間の端部と、その端部から一様区間の内側にある程度入った領域とを含む領域である。経由点は、最適な走行経路を探索する場合に、その探索範囲を限定するための境界点(ノード)である。一様区間が交差点や屈曲部に隣接している場合は、車両によっては一様区間内で旋回を開始することがあるため、境界線特定部11の経由点設定部は、図7に示すように、一様区間の端部から車両の旋回半径を考慮した距離だけ一様区間に入った位置に経由点を設定する。経由点設定部は、車両の旋回半径がより大きいほど、一様区間の端部からより長い距離だけ入った地点に経由点を設定する。この距離は、例えば車両の旋回半径(又はホイールベース長)に基づいて決定することができる。
一様区間のうち、走行路の幅方向に対する経由点の位置決めは、一様区間を十分な長さに取り、それに対応したコストマップを作成し、移動体の走行経路を計算すると、走行経路は一定の位置(ほぼ中央線の位置)に収束することになるので、経由点設定部は、端部における中央線の位置を経由点として決定する。
一般的に、車両の移動経路を設定する場合、レーンとノードの概念を用いることが多い。例えば、交差点をノードとし、交差点を繋ぐ経路をレーンとして、ノードとレーンを組み合わせて移動経路を設定する。規格化された道路では、このような処理が容易であるが、樹園地、農地、工事現場等ではノードとレーンの設定が困難である。しかし、本実施形態では、ノードとして経由点を設定することで、車両の移動経路を容易に設定することができる。
なお、経由点設定部は、走行路の端部線部分にも経由点を設定してもよい。この端部線部分は、スタート地点又は目的地点となりうる。経由点設定部は、端部線における経由点を、例えば端部線の中点に設定してもよい。
図8は、スタート地点Sから目的地点Gまで、白抜き丸印で示す経由点を含む道路網の一例である。隣接する経由点の間の区間のうち、実線は一様区間、点線は非一様区間を示す。経路設定部20は、まずスタート地点S(始点)から目的地点G(終点)までの経由点を経由する移動経路の組み合わせを設定する。スタート地点Sから目的地点Gまでのすべての移動経路の組み合わせを抽出する方法は公知の方法を用いることができる。
例えば、経路設定部20は、上記の経由点に対して隣接する中心点を探索し、その中心点を交差点の隣接構造に加えれば、経由点を起終点として、すべての移動経路の組み合わせを出力できる。ここで、走行経路とは、走行路の幅方向の位置を含めた経路である。また、移動経路とは、走行路の幅方向の位置を含めずに、車両がどの走行路を経由して目的地まで移動するかを示す経路である。
また、経路設定部20は、図8に示す道路網の隣接する2つの経由点の間の、走行路の幅方向の走行位置を含む走行経路を設定する。経路設定部20が行う走行経路の設定は、例えば、ハイブリッドA*アルゴリズムとMPC法を組み合わせて行うことができる。
具体的には、境界線と走行路の中心線とから生成されるコストマップに基づいて、ハイブリッドA*アルゴリズムを用いて、車両側で評価するコストが低くなるような経路点列を生成する。しかし、このアルゴリズムは、車両のヨー角の連続性を担保しない経路点列のため、曲率の変化が不連続である。このため、走行経路の曲率の連続性を考慮できるMPC(モデル予測制御)法を用いて、ハイブリッドA*アルゴリズムで得られた経路点列を目標点列として、再度、経路計算を行い、曲率が滑らかな経路点列(曲率値を連続的に変化させた経路点列)を取得する。
以上のように、走行経路の生成するために経路点列の取得処理を2回繰り返してもよい。つまり、1回目の取得処理で得られた曲率から、カーブが大きい区間を特定する。次いで2回目の取得処理で、異なる評価点位置を用いてカーブでの走行経路を修正する。具体的には、車両中心よりも曲がる方向に離れた位置に評価点を設定してコスト評価する。中心点列に道幅情報が含まれているので、評価点の位置を経路計算中に変更することが可能である。このように評価点を変更することにより、カーブでは走行路の外側を走行する方がコストが小さくなる。つまり、カーブでは走行路の中央ではなく外側方向に膨らんだ走行経路が生成される。これにより、大型車両の脱輪の可能性を低減することができる。このような走行経路の生成にあたり、必ずしもハイブリッドA*アルゴリズムを用いる必要はなく、各種のアルゴリズムを用いることができる。
複数車線を有する走行路においても、車道線を車道線の幅を持った境界線で作図したポリゴンにすることで、複数車線の交差点などを上記の処理を同じくできる。
経由点が存在しない場合、ある出発地点から目的地までを連続した1本の走行経路を作らなければならないため、膨大な組み合わせの走行経路が発生し、コスト算出時間が長くなり現実的に対応できない。そこで、経由点間の走行経路を個別に評価し、経由点間の走行経路をつなぎ合わせることで、現実的に対応可能な走行経路の組み合わせ数に減らすことができる。
次に、経路特定部21は、走行路のコストマップを参照して、経路設定部20にて設定された当該走行経路の走行コストを算出して、最適な走行経路を特定する。具体的には、経路特定部21は、抽出された移動経路に含まれる一様区間と非一様区間のそれぞれについて、経路設定部20が設定した複数の走行経路の走行コストを算出する。そして、複数の走行経路の走行コストを比較することにより、最適な走行経路を特定する。最適な走行経路とは、例えば走行コストが最小となる経路である。走行コストとは、ある車両がある走行経路を辿った場合の全コストである。走行コストの算出は、例えば、境界線と走行路の中心線とから生成されるコストマップを用いて行うことができる。
具体的には、経路特定部21は、例えば、走行路の幅方向の位置に応じてコストを割り当てたコストマップを参照して走行コストを算出する。図9は、走行路の幅方向の位置に応じてコストを割り当てたコストマップの一例である。図示するように、コストは走行路の中央(中心線の位置)ほど小さく、走行路の境界線に近づくほど高く設定されている。境界線より外側を通過することは許容できないため、境界線位置には十分大きなコストCmaxを設定する。また、経路特定部21は、新たな経路点列の曲率値に応じて、コストマップの数値を余裕幅を考慮した数値に変更した新たなコストマップを用いて最適な走行経路を特定する。
コストマップは、図9のように中心線位置を対称軸として幅方向に対称形である必要はない。中心点には、各種の走行路情報が関連付けられている。走行路情報とは、例えば、交通制限(速度制限、一方通行、高さ制限、幅制限、重量制限等)、標高(又は所定の位置からの高低差)、舗装の有無、障害物の位置等の情報である。このような情報を用いて、走行路30の幅方向のコストマップを中心点の位置ごとに生成しておく。例えば、標高差がある箇所、障害物がある箇所、無舗装の箇所等はコストを高くしてもよい。また、高さ制限や幅制限がある箇所は、幅方向、又は高さ方向にコストを変えたコストマップでもよい。
コストマップは、中心線と境界線の位置から、それぞれ独立して、又は両者を関連付けてコスト分布を有するものであってもよい。コスト分布は、コスト関数によって計算されてもよい。例えば、幅員が十分広い場合、中心線を考慮しないとコスト分布は幅員の両端部のみが大きく、それ以外はフラットな分布となる。そのようなコスト分布で走行経路を評価すると、走行路の中央付近でなくともコストが低くなり、最適経路は中央付近を通らない。そこで、中心線から幅員端部にいくほどコストが高いコスト分布を有するコストマップを用いる。これにより、走行路の中央付近が最適な経路として選択されやすくなり、ユーザの期待と合致する。さらに、交差点においては、後述する仮締切線を用いて中心線を引き直した場合、人間が操作する車両が交差点を通過する際の走行経路と同様の走行経路が最適経路として選択されるようになる。
一様区間内の経由点間では、最適な走行経路が車両に応じて走行路の幅方向に対してほぼ同一位置に収束する。一方、非一様区間では、車両の旋回半径又はホイールベース長によって最適な走行経路が異なる。従って、車両ごとに最適な走行経路を探索することが好ましい。その場合、最も旋回半径が大きい車両の走行経路を決定して、それ以外の車両については、最も旋回半径が大きい車両の走行経路を最初の設定経路として最適経路を探索してもよい。
以上のように、本実施形態に係る情報処理装置1Aによれば、地図データから道路を特定し、その道路に関する情報を保持しつつ、交差点を特定する技術を実現することができる。さらに、車両がその道路を経由して移動するにあたって、最適な走行経路を特定することができる。
上述の方法により、任意のスタート地点Sから目的地点Gまでの最適な走行経路が特定される。しかし、経由点Aから経由点Bに至る走行経路は、交差点において走行しない走行路側に膨らんだ経路となる。その理由は、走行コストは幅員が広い方向がコストが小さいため、交差点では走行しない走行路側に最適経路が引っ張られるためである。具体的に説明すると、図10の1001に示すように、走行路30bの経由点Aから走行路30aの経由点Bに至る走行路の中心線CL31aは、走行しない走行路30cの側である交差点の中心部を通っている。走行コストは、一般に中心線に近いほうがコストが小さい。そのため、最適な走行経路は、中心線が通る側に引っ張られる傾向がある。そこで、走行しない走行路の影響を除いた中心線を生成して走行コストを評価することが好ましい。
情報処理装置1Aは、さらに締切り設定部を備えていてもよい(図示せず)。締切り設定部は、複数の走行路30が交わる交差点における進入と退出を制限する。具体的には、例えば図10の1002に示すように、締切り設定部は、経路特定部21が特定した経路A-Bに含まれない走行路30Cの入り口に、仮想的な仮締切線SB31を設定する。仮締切線SB31は、仮の境界線と言ってもよい。仮締切線SB31を設定した状態で中心線CL31aを生成すると、図10の1002に示すように、走行路30cの方に引っ張られない緩やかにカーブする中心線CL31aが得られる。この中心線CL31aに基づくコストマップを用いて走行経路を求めると、緩やかにカーブする走行経路が得られる。
一様区間抽出部は、締切り設定部によって交差点における一部の走行路30への進入が制限された状態で一様区間を抽出する。また、経由点設定部は、交差点における一部の走行路30への進入が制限された状態で抽出された一様区間の端部領域に経由点を設定する。また、経路設定部20は、このように設定された経由点を経由する走行経路を設定する。経路特定部21は、設定された走行経路の走行コストを算出して、最適な走行経路を特定する。
このように処理することにより、本来は交差点である箇所も一様区間として抽出されるようになり、図10の1002に示すように、そこを経由する走行経路も湾曲が少ない経路となる。また、一様区間として抽出されない場合でも、交差点の広いスペースをなくすことができるため、より滑らかな経路が生成される。さらに、予め経由することを考慮する必要がない走行路は、仮締切線で締め切っておくことにより、無駄な経路を設定することがなくなり、経路探索の費用を低減することができる。
仮締切線の使用方法の一例は次のとおりである。仮締切線は、予め走行路30の分岐点(交差点)に設けておき、それぞれの仮締切線を有効又は無効に設定できるようにしておく。図11は、交差点における仮締切線の生成位置を点線で示した図である。仮締切線は、図11に示すように、三叉路では3箇所(1101参照)、四叉路では8カ所(1102参照)に設けることができる。経路探索をする際は、すべての仮締切線を無効にしておき、最適経路を特定するために、経路生成の対象となる経由点間の区間が特定された段階で、当該区間に用いない走行路30の入り口の仮締切線を有効にする。この状態で、一様区間抽出部、経由点設定部、経路設定部20、経路特定部21が上述の処理を行う。これにより、より滑らかな走行経路を生成することができる。
仮締切線は、例えば次の方法により設定することができる。まず、情報処理装置1Aに、仮締切線と境界線の区別なく、すべて境界線として作図させる。作図後に、情報処理装置1Aによって走行路の端部を認識させる。情報処理装置1Aが認識できない箇所は、ユーザが選択してもよい。端部を有しない閉じた境界線もいくつか現れるので、形状や面積などによって、閉じた境界線ではないと認識させる。これらの操作によって、境界線と仮締切り線を区別することができる。次に境界線にIDを振った後、仮締切線と結線している境界線のIDを仮締切線の属性情報として保持させる。たとえば、仮締切線が境界線ID1と2に結線している場合は、仮締切線のIDは1と2とする。経路に対して境界線を抜き出す際に、その境界線IDに1,2が含まれているなら、仮締切線を有効化する。以上の処理により、仮締切線を設定し、有効と無効を切り替えることができる。
より具体的には、締切り設定部は、次のように仮締切線を生成してもよい。仮締切線を含まない境界線がすでに生成されているとする。交差点においては中心点ペアが入れ替わることを利用して、交差点の境界線に内接する内接円の境界線上の接点同士を繋ぐ線を候補の仮締切線として生成する。図11の1101は、三叉路の場合の仮締切線を生成する方法を示す図である。三叉路の場合、図示するような内接円Rとなるので、内接円Rと境界線BL1との接点をR1、内接円Rと境界線BL2との接点をR2、内接円Rと境界線BL3との接点をR3とする。この場合、R1とR3を繋ぐ線分SL1、R1とR2を繋ぐ線分SL2、R2とR3を繋ぐ線分SL3がそれぞれ仮締切線として生成される。
なお、三叉路では境界線ID(境界線識別子)だけを用いて仮締切線を特定することができる。しかし、四叉路以上の交差点では、境界線IDだけでは仮締切線を特定することはできない。境界線IDだけでは、仮締切線によって繋がれる走行路(区間)が特定できないからである。
そこで、締切り設定部は、次のように仮締切線を生成してもよい。まず、締切り設定部は、交差点の隣接情報から2つの区間ID(区間識別子)の組み合わせを求める。つぎに、2つの区間IDが保持している境界線IDを取得し、共通していない境界線IDが切り替わる2つの境界線同士を結線して、候補となる仮締切線を作成する。このときの2つの境界線IDと、2つの区間IDを締切り設定部に保持させることができる。その結果、三叉路以上でも経路に応じて、仮締切線の切り替えを行うことが可能となる。このように、締切り設定部が区間IDを仮締切線の属性値として保持することにより、仮締切線の切替を行うことができる。
四叉路の交差点の場合は、図11の1102に示すように、8本の仮締切線SL1~SL8が生成される。その理由は、走行路30aと走行路30bとを走行するための仮締切線SL6と、走行路30cと走行路30dとを走行するための仮締切線SL5とを別々に生成し、走行路30bと走行路30cとを走行するための仮締切線SL8と、走行路30aと走行路30dとを走行するための仮締切線SL7とを別々に生成する必要があるためである。つまり、締切り設定部は、その仮締切線によって繋がれる走行路を指定して仮締切線を生成する。
仮締切線によって繋がれる2つの走行路の情報を仮締切線の「区間識別子」とし、仮締切線が繋げる2つの境界線の情報を仮締切線の「境界線識別子」とすると、すべての仮締切線は「区間識別子」と「境界線識別子」との2つの識別子を用いて特定することができる。例えば、仮締切線SL6は「区間識別子」が(30a,30b)であり、「境界線識別子」が(BL1,BL3)であるので、仮締切線SL6=「仮締切線(30a,30b)-(BL1,BL3)」と特定される。なお、図11の1101で説明した方法で仮締切線を生成すると、上記の仮締切線SL6とSL5、及び仮締切線SL8とSL7はそれぞれ同じ直線で生成される。そこで、図11の1102に示すように2つの仮締切線をユーザが湾曲をつけて区別してもよい。締切り設定部は、仮締切線を有効又は無効に設定する場合は、「区間識別子」と「境界線識別子」との2つの識別子を指定して設定する。以上のように締切り設定部が仮締切線を設定するため、ユーザが自ら仮締切線を設定する必要がなくなる。
図12は、単車線の4叉路を統合交差点Xとして扱う場合の考え方を示す図である。統合交差点とは、4つ以上の走行路が交わる交差点を、複数の3叉交差点が組み合わされた交差点として扱う交差点である。統合交差点における三叉交差点とは、中心点ペアを構成する中心点がそれぞれ保持する境界線識別子(境界線ID)のペアが変化する箇所を示す。中心点ペアが保持する境界線識別子のペアが変化するという図形的な特徴を有する箇所である。中心点IDには、その中心点を生成する基準となった境界線識別子が関連付けられて(保持されて)いる。中心点ペアを構成する2つの中心点IDが保持する2つの境界線識別子を「境界線識別子のペア」と称する。図12の1201に示す交差点は、4つの境界線20a、20b、20c、20dにより規定される、走行路(車線)21a、21b、21c、21dが交わる交差点である。この交差点は、三叉交差点Y1と三叉交差点Y2とで構成される統合交差点Xとして扱うことができる。以下、三叉交差点を符号Yを付して表し、「三叉交差点Yx」又は単に「交差点Yx」と称する。交差点Y1と交差点Y2は、1つの統合交差点Xに属する交差点として扱う。
図示の例では、走行路21aは、交差点Y1と交差点Y3とを繋ぐ走行路である。従って、走行路21aは、「Y1-Y3」という区間識別子により識別することができる。交差点Y3は、交差点Y1に隣接する三叉交差点である。同様に、走行路21bは、交差点Y1とそれに隣接する交差点Y4とを繋ぐ走行路であるので、「Y1-Y4」という区間識別子により識別することができる。走行路21cは、交差点Y2とそれに隣接する交差点Y5とを繋ぐ走行路であるので、「Y2-Y5」という区間識別子により識別することができる。走行路21dは、交差点Y2とそれに隣接する交差点Y6とを繋ぐ走行路であるので、「Y2-Y6」という区間識別子により識別することができる。
どのような交差点を統合交差点として扱うかの考え方の一例を以下に説明する。まず、四叉路以上の交差点を複数の三叉交差点に分割する。そして、複数の三叉交差点の間の距離と道幅との関係によって、統合交差点として扱うか否かを判定することができる。
具体的な処理方法の一例を以下に説明する。三叉交差点に関連付けられた情報には、中心点を生成した際の道幅情報が含まれているので、それぞれの三叉交差点の持つ内接円同士の少なくとも一部が重なっていれば、一つの統合交差点として扱うことができる。例えば、三叉交差点A10の内接円A11と、三叉交差点B10の内接円B11と、三叉交差点C10の内接円C11と、のうち、内接円B11と内接円C11とが重なっていて、内接円A11と内接円C11とが重なっていない場合は、内接円B11を介して、三叉交差点A10と三叉交差点C10の内接円C11は一つの統合交差点に内包されているものとする。これはN個の三叉交差点でも同様に処理ができる。また統合交差点を判定するための内接円の半径長さをユーザが適宜、比率を変えて、統合交差点として扱うか否かを判定してもよい。
仮締切線は、交差点間の区間IDと境界線IDを識別子として情報を保持している。ここで保持する交差点間の区間IDとは、統合交差点に進入する走行路の交差点区間IDと退出する走行路の交差点区間IDであり、統合交差点内の三叉交差点間の短い区間IDを保持していない場合がある。それは、仮締切り線が進入路の境界線IDと退出路の境界線IDに結線するように作図される場合である。
仮に統合交差点という概念がなく、三叉交差点が保持する区間IDだけが存在する場合、交差点に進入する走行路から、交差点内の三叉交差点間の短い区間を指定して、退出する走行路まですべての区間を指定する必要がある。交差点内には、複数の仮締切線が存在する可能性があり、交差点内の三叉交差点間の区間IDを含めると、必要のない仮締切線まで認識される可能性がある。
したがって、仮締切線を設定する場合は、交差点へ進入する走行路と退出する走行路だけを指定すればよい。そもそも仮締切線が、進入側と退出側の走行路境界線に結線しているからである。互いに三叉交差点が近い場合は、進入と退出の間に存在する短い区間が保持する境界線に仮締切線が結線する必要性が低いため、ある経路の進入から退出の走行路に対して、その走行路の境界線以外に結線している仮締切線は作図しないように設定してもよい。また仮締切線の生成においても、進入と退出の境界線との間にしか発生しないように設定してもよい。つまり、統合交差点を利用すると、当該交差点の進入と退出の走行路を確定でき、不要な仮締切線が認識されなくなる。また、統合交差点の情報に基づいて進入と退出の境界線と結線した仮締切線もプログラムによって生成することができる。
言い換えれば、統合交差点として認識すると、その交差点内に作図される仮締切線は、進入側と退出側の走行路境界線に結線するように生成される。一方、三叉交差点同士の距離が十分に離れている場合、互いに独立した交差点になるので、それぞれの進入と退出の交差点区間と仮締切線は独立して設定することができる。つまり、仮締切線をどのように作図するかと、どの三叉交差点を統合交差点に含むかは常に対応関係にある。
以上の前提に基づき、統合交差点Xに設定する仮締切線を6つの交差点Y1~Y6を用いて定義することができる。例えば、交差点Y4から交差点Y1と交差点Y2を経由して交差点Y6に至る経路を設定する場合、締切り設定部24は仮締切線10aと仮締切線10bを設定(生成)する必要がある。この場合、まずY4→Y1(走行路21b)の区間情報から、境界線20aの識別子「20a」と境界線20bの識別子「20b」を特定することができる。また、Y1→Y2までの走行路は、境界線20bと境界線20dとで規定された走行路と考える。従ってその走行路の区間情報から、境界線20bの識別子「20b」と境界線20dの識別子「20d」を特定することができる。次に、Y2→Y6の区間情報から、境界線20cの識別子「20c」と境界線20dの識別子「20d」を特定することができる。
統合交差点Xには交差点Y1,Y2が含まれると扱うことにより、境界線20a、20b、20c、20dのそれぞれの識別子20a、20b、20c、20dを1つの統合交差点Xに関連付けることができる。これにより、統合交差点Xにおける仮締切線10aは、(20b-20c)の境界線識別子で識別することができる。同様に、仮締切線10bは、(20a-20d)の境界線識別子で識別することができる。これに前述の区間識別子を組み合わせることにより、仮締切線10aと10bを特定して設定することができる。
図12の1202は、統合交差点Xを左折又は右折する場合に設定される仮締切線10c、10dを示す。この場合も上述のように交差点Y1と交差点Y2を経由する経路を考えて、仮締切線10c又は10dを区間識別子と境界線識別子との組み合わせを用いて特定することができる。例えば、交差点Y5から交差点Y6への経路を設定する場合、Y5→Y2→Y6という経路を辿るので、まず区間識別子(Y5-Y2)で特定される走行路21cの区間情報から境界線20bと境界線20cが特定される。区間識別子(Y2-Y6)で特定される走行路21dの区間情報から境界線20cと境界線20dが特定される。走行路の進行方向に対して、左側の境界線20cは、区間識別子(Y5-Y2)と区間識別子(Y2-Y6)において、共通して利用する境界線であり、境界線20cと20cを境界線識別子として持つ仮締切線は存在しないので、仮締切線を持たないことが特定される。一方、右側の境界線20bと境界線20dは、区間識別子(Y5-Y2)と区間識別子(Y2-Y6)において、利用する境界線であり、境界線20bと20dを境界線識別子として持つ仮締切線は存在し、接続される走行路の区間識別子と境界線識別子とを組み合わせることにより、仮締切線10cを特定することができる。
まとめると、統合交差点において、締切り設定部24は、進入側の走行路を構成する2つの境界線が統合交差点内で三叉を中心とする内接円と接する2つの第1接点を特定する。ここでいう三叉は、前述したとおりである。また、締切り設定部24は、退出側の走行路を構成する2つの境界線が統合交差点内で三叉を中心とする内接円と接する2つの第2接点を特定する。さらに、締切り設定部24は、走行方向に対して右側の境界線上の第1接点と第2接点とを接続し、走行方向に対して左側の境界線上の第1接点と第2接点とを接続する。これにより、締切り設定部24は、進入と退出を制限して、進入側走行路から退出側走行路への移動経路を単車線にする仮締切線を生成することができる。なお、進入側と退出側において、一方の走行路の境界線が同一となる場合は、境界線識別子のペアが入れ替わる側の接点同士を接続する。
本実施形態では、中心点が保持する境界線IDのペアが変化する点を三叉交差点と呼んでいる。この三叉交差点は、n叉路においても同じように生成ができ、n叉路内には(n-2)個の三叉交差点が生成される。よって、一般的な交差点を定義すると、一般的な交差点は1つ以上の三叉交差点で構成されると表すことができる。統合交差点は、これらの三叉交差点を1つのグループとして定義したもので、統合交差点に進入する走行路の区間IDと境界線IDと退出する走行路の区間IDと境界線IDとで、仮締切線が保持する2つの区間IDと進行方向に対してそれぞれ左右の2組の境界線IDを照合して、仮締切線を特定することができる。
以上のような統合交差点を用いない場合は、どの走行路からどの走行路に進むかによって決定されるべき仮締切線が、境界線と走行路の識別子を用いても特定することができないが、統合交差点を用いることにより、設定する経路に必要な仮締切線を境界線と走行路の識別子を用いてすべて特定することができる。
〔実施形態3〕
本発明の他の実施形態について、以下に説明する。なお、説明の便宜上、上記実施形態1,2にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を繰り返さない。
上記の実施形態1、2では、走行路の車線は1つである例を説明した。しかし、複数の車線を有する走行路においても、それぞれの車線を1つの走行路として上記の実施形態1、2で説明した方法を適用可能である。以下にその実施形態を説明する。
本実施形態に係る情報処理装置は、実施形態2に係る情報処理装置1Aが有する構成に加えて、交差点経路特定部を備えている(図示せず)。また、境界線特定部11は、走行路が複数の車線を有する場合に、当該複数の車線を分離する車線分離線を当該複数の車線の間に設定する。また、境界線特定部11は、車線分離線をベクトル線で囲まれたポリゴンとして設定する。
複数の車線を有する走行路とは、走行方向がそれぞれ逆方向に規定された車線が隣接して設けられている走行路である。言い換えれば、複数の車線を有する走行路とは、上りの車線(1つ以上の走行路)と下りの車線(1つ以上の走行路)が、車線分離線を挟んで隣接して設けられている複合走行路である。
図13は、複合走行路が交わる四叉路交差点の模式図である。図13では、複合走行路41,42,43,44が交わっている四叉路を示している。複合走行路41は、交差点に進入する方向の走行路412と、交差点から退出する方向の走行路411とが、車線分離線410を挟んで隣接している複合走行路である。同様に、複合走行路42は、2つの走行路421と走行路422とが、車線分離線420を挟んで隣接している複合走行路である。複合走行路43、44についても同様である。なお、これらの8つの走行路411、412,421,422,431,432,441,442は、交差点に至るまでの走行路である。
車線分離線410,420,430,440は、それぞれ矢印で示す方向を持つベクトル線で囲まれた細長い矩形のポリゴンである。このベクトル線は、走行路の境界線として扱うことができる。このように作図することにより、各走行路の中心点列を上述の方法で生成することができる。例えば、走行路411は、境界線35aと対向する境界線410とで規定されるので、それぞれの境界線に接する内接円の中心点を、走行路411の中心点とする。他の走行路についても同様である。さらに、中心点ペアも同様に生成し、その中心点ペアの組み合わせが変わる地点を交差点として特定することができる。
また、本実施形態に係る交差点経路特定部は、複合走行路が交わる交差点において、1つの交差点を、複数の三叉交差点Yが組み合わされた統合交差点Xとみなして、車両が進入する走行路から退出する走行路までの移動経路を特定する。三叉交差点Yと統合交差点Xの意味は前述のとおりである。
統合交差点Xは、図13に示すように、8つの走行路411、412,421,422,431,432,441,442が、Y1~Y6で示す6つの交差点Yxを介して繋がっている。図13では、走行路の移動経路511,512,521,522,531,532,541,542について、交差点に進入又は退出する方向を二重矢印で示している。なお、交差点内の移動経路は両方向の可能性があるため二重矢印を付していない。交差点経路特定部26は、進入した走行路から退出する走行路まで、Y1~Y6の交差点Yxのうち最も少ない数の交差点Yxを経由して進む経路を特定することにより、車両の移動経路を特定することができる。なお、各走行路411、412,421,422,431,432,441,442の統合交差点Xの反対側にはそれぞれ交差点Y7~Y14がある。
統合交差点Xは、境界線識別子として35a、35b、35c、35d、410、420、430、440を持つ。また、統合交差点Xは、2つの交差点Yxにより規定される走行路(区間)の区間識別子を持つ。そのため、例えば、図示した仮締切線60a、60b、60cは、境界識別子と区間識別子の組み合わせによって特定される。なお、仮締切線は図示したものに限られず、設定した経路によって仮締切線が設定される。
例えば、交差点Y8→Y1→Y5→Y6→Y4→Y13の経路を設定する場合を考える。この場合、統合交差点Xに進入する走行路412(Y8-Y1)と退出する走行路441(Y4-Y13)が指定されると、2組の区間識別子(Y8-Y1)と(Y4-Y13)を持つものは仮締切線60aと60cの2つに特定される。つまり、仮締切線60aと仮締切線60cを設定する必要があることがわかる。なお、仮締切線60aは、接続される境界線識別子(35b-35d)と区間識別子(Y8-Y1、Y4-Y13)とを用いて特定される。同様に、仮締切線60cは、接続される境界線識別子(410-440)と区間識別子(Y8-Y1、Y4-Y13)とを用いて特定される。
以上のように、統合交差点Xは複数の交差点Yxの情報を内包しているため、統合交差点Xを用いることにより、進入側と退出側の交差点識別子(Yx)又は区間識別子を指定すれば、進入側と退出側の交差点Yxの隣接構造を用いなくても仮締切線を特定することができる。
なお、通行方向を区別する場合は、例えば、1又は-1を区間識別子に付与して区別することができる。例えば、走行路412について、Y8→Y1の方向を通行可能とする場合は1を、Y1→Y8の方向を通行不可とする場合は-1を走行路412に対して付与する。また、両方向を通行可能とする場合は、例えば0を付与してもよい。Y8→Y1の逆方向は、-1を乗じることにより、Y1→Y8は-1となる。
以上のように、複合走行路においても、統合交差点Xを導入することにより、実施形態2において説明したように、締切り設定部が仮締切線を設定する場合、「区間識別子」と「境界線識別子」との2つの識別子を用いることにより、すべての仮締切線を特定することができる。4叉路以上の交差点、又は複合走行路の交差点でも、統合交差点として扱うことで、車線分離線のベクトル線を「境界線識別子」の1つとして指定することができる。
以上のように、複数の車線を有する走行路においても、実施形態1、2で説明した方法と同様の方法で中心点列を生成することができる。また、中心点ペアを生成して、そのペアの組み合わせが変わる地点を交差点として特定することができる。さらに、交差点に交わる走行路の一部を締め切る仮締切線も同様に生成することができる。なお、上述の例では、複合走行路として上り1車線、下り1車線の2車線の走行路を用いて説明した。しかし、車線の数は限定されない。例えば、上り2車線、下り2車線の4車線の走行路であっても良い。さらには、左折専用レーンなども1つの車線として扱うことができる。これらの複数の車線に対しては、上述の車線分離線を車線の間に設定しておくことにより、実施形態1、2で説明した方法を適用することができる。
実施形態1~3にて説明したように、情報処理装置1,1Aにおいては、1連のデータ処理により得られた情報を次のデータ処理に用いて新たな情報を生成する、という処理を繰り返している。具体的には、実施形態に係る情報処理装置1は、地図データから走行路の境界線を特定し、特定した境界線から中心点を導出し、導出した中心点から中心点ペアを生成し、生成した中心点ペアから交差点を特定する。さらに、情報処理装置1Aは、交差点を構成する境界線と走行路(区間情報)のうち、2つの境界線の間に2つの走行路を繋ぐための仮締切線を設定する。
言い換えれば、情報処理装置1は、境界線特定部11が地図データから特定した走行路の境界線データと、当該境界線データを用いて中心点導出部12が導出した中心点データと、当該中心点データを用いて中心点ペア生成部13が生成した中心点ペアデータと、当該中心点ペアデータを用いて交差点特定部14が生成した交差点データと、を含むデータ構造を生成する。また、情報処理装置1Aは、境界線特定部11が地図データから特定した走行路の境界線データと、当該境界線データを用いて中心点導出部12が導出した中心点データと、当該中心点データを用いて中心点ペア生成部13が生成した中心点ペアデータと、当該中心点ペアデータを用いて交差点特定部14が生成した交差点データと、当該交差点データを構成する境界線データと走行路データを用いて締切り設定部が生成した仮締切線データと、を含むデータ構造を生成する。
〔実施形態4〕
本発明の他の実施形態について、図面を参照して以下に説明する。なお、説明の便宜上、上記実施形態1~3にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、本実施形態において備える機能についてのみ説明する。
本実施形態では、1.5車線の走行路、又は交差点内における仮想走行路の生成方法について説明する。1.5車線の走行路とは、交通量が比較的少ない道路であって、中央分離線が設けられていないが双方向通行が可能な走行路である。中央分離線とは、双方向通行が可能な走行路において、上り方向の車線と下り方向の車線とを分離する中央線である。1.5車線の走行路は、交通量が多くない走行路、又は狭隘な地形などの理由により十分な幅を確保できない走行路などにみられる。
また、1.5車線の走行路に準ずる走行路として、中央分離線又は車線分離線が設けられていない交差点がある。交差点内では、中央分離線又は車線分離線が設けられていない場合が多い。このような交差点内、あるいは1.5車線の走行路では、車両が走行する領域が規定されていないため、走行する車両は互いに他の車両と道を譲りあいながら走行する必要がある。
仮想走行路とは、1.5車線の走行路、又は交差点内において、車両が走行することができる仮想的な走行路であって、車両が安全を確保するために推奨される走行路を指す。仮想走行路の境界線は、仮想走行路を規定する片側、又は両側の仮想的な境界線(以下、「仮想境界線」という。)である。仮想走行路の片側が現実の走行路境界線である場合は、その反対側の境界線が仮想境界線となる。自動運転される車両は、車線分離線が設けられていない場合は走行領域を認識することができない。そのため、仮想走行路を設定することが必要となる。仮想走行路は、仮想境界線又は実際の境界線、及び仮想走行路の中心線(以下、「仮想中心線」という。)によって規定される。仮想中心線は、自動運転の車両を誘導する際の誘導線となる。
図14は、本実施形態に係る情報処理装置1Bの構成を示すブロック図である。図示するように、情報処理装置1Bは、図6に示す情報処理装置1Aの構成に加えて、半径制限部22を備えている。また、情報処理装置1Bは、さらに交差点経路生成部23を備えてもよく、さらに経路組み合わせ生成部25を備えてもよい。
半径制限部22は、走行路の第1境界線又は第2境界線に内接する円又は球の半径を制限する。前述の実施形態1から3に示す例では、中心点導出部12は、内接円又は内接球を、走行路の第1境界線と第2境界線の両方に内接するように生成する。しかし、本実施形態では、中心点導出部12は、半径制限部22によって制限された範囲内で、走行路の第1境界線又は第2境界線のどちらかに内接するように内接円又は内接球を生成する。より具体的には、本実施形態では、中心点導出部12は、内接円又は内接球を、車両が走行する側の境界線に内接するように生成する。そして、中心点導出部12は、車両が走行する側の境界線に内接する、半径制限部22によって制限された半径を上限とする円又は球の中心点を導出する。例えば、日本国内では、車両は走行路の左側を走行するように道路交通法で定められているので、走行路の左側の境界線に内接するように生成される。従って、以下では、内接円又は内接球として、走行路の左側の境界線に内接する内接円を例にとって説明する。
図15は、4叉路交差点Z1において、半径が制限された内接円を用いて仮想走行路を生成する方法の一例を示す模式図である。図15では、走行路R0から進入して、走行路R1,R2又はR3に向かう場合の仮想走行路の生成方法を示す。走行路R0,R1,R2,R3は、それぞれが中央分離線を有しない1.5車線の走行路である。交差点Z1も、交差点内に中央分離線及び車線分離線を有しない交差点である。中心点導出部12は、走行路R0において、図の下方から境界線BL11に内接する内接円Q0を、交差点Z1の入り口まで所定の間隔で生成する。境界線BL11に内接する内接円Q0の中心点を第1中心点と称する。生成した内接円Q0の外周端部(右端部)点列を繋ぐと仮想走行路の右側境界線VBLRが得られる。右側境界線VBLRに内接する内接円(図示しないが、内接円Q0と同じになる)の中心点を第2中心点と称する。第1中心点を繋ぐ点列を第1中心点列と称し、第2中心点を繋ぐ点列を第2中心点列と称する。以下では、特に位置を指定しない内接円を単に「内接円Q」又は「円Q」と称する。自身の車線が退出方向に形成される仮想走行路境界線以外の境界線と、自身の軌跡がはじめて交差する点を進入限界点とする。より具体的には、図15において、車両が交差点Z1に侵入するとき、S0から生成される仮想走行路境界線以外の仮想走行路境界線が、いわゆる衝突する可能性のある走行路の境界線となる。S0の位置にある車両が交差点Z1に侵入する場合、S0から生成される走行路境界線以外の走行路境界線とS0がG0、G1,G2に向かう時の車両の軌跡線とはじめて交差する点がある。その点は、いわゆる交差点Z1内ではじめて他の車両の走行路を跨ぐ点になる。そこを侵入限界点と定義する。つまり、侵入限界点とは、その点から先に進むと、他の車両と物理的に衝突する可能性がある点である。図15においては、線分ALLが進入限界線である。
1.5車線において、左側通行を前提とすると、車両の進行方向に対して左側の走行路境界線に対して内接円を発生させ、その中心点群を構成するのが第1中心点となる。併せて第2中心点も、上記の場合、第1中心点となる。円Qの半径に制限を設けない場合の第1中心点と第2中心点は、中心点列ベクトルの方向が真逆でほぼ同じ線上に生成される。円Qの半径に制限を設けた場合、互いの中心点列の位置は離れることになる。
本実施形態では、交差点Z1の入り口における内接円Q0の中心点S0を仮想走行路の始点とする。また、仮想走行路の終点は、各走行路R1~R3の交差点Z1の入り口における内接円Qの中心点Gとする。ただし、始点と終点の決め方はこれに限られない。仮想走行路の生成において、交差点を認識させることは必要であるが、交差点の範囲を特定することは、走行路境界線の生成において、直接的に必要ではない。交差点を認識することにより、進入(始点)と退出(終点)の組み合わせ情報を取得することができる。なお、この場合の交差点は、必ずしも正確な位置情報を持っていなくても、概念的にそこに交差点があるということがわかればよい。
まず、中心点導出部12が、走行路R1に向かう仮想走行路を生成する場合を説明する。この場合、中心点導出部12は、左側境界線BL11に内接させた内接円Q0を内接円Q1の位置まで所定の間隔で生成する。内接円Q1の中心点G1は、走行路R1と交差点Z1との境界線上にある境界点である。中心点導出部12は、内接円Q0から内接円Q1の位置まで生成した内接円の外周端点列を繋いで、仮想走行路の右側境界線VBLR1を得る。また、中心点導出部12は、内接円Q0から内接円Q1の位置まで生成した内接円の中心点列を繋いで、仮想中心点列GL1を得る。以下では、仮想中心点列を仮想中心線とも称する。仮想中心線GL1は、自動運転車両が走行路R1に向かって左折する場合の仮想誘導線となる。
内接円Q1の位置からは、中心点導出部12は、走行路R1の左側境界線BL11に内接する内接円Q1を所定の間隔で生成し、外周端点列を繋ぐことにより、走行路R1における右側境界線を生成することができる(図示せず)。そして、右側境界線と左側境界線BL11で規定された領域が走行路R1における仮想走行路となる。
次に、中心点導出部12が、中心点S0の位置から走行路R2に向かう仮想走行路を生成する場合を説明する。その場合、中心点導出部12は、左側境界線VBLLに内接させた内接円Q0を内接円Q2の位置まで所定の間隔で生成する。ここで、左側境界線VBLLは、予めユーザが仮締切線として作成している。内接円Q2の中心点G2は、走行路R2と交差点Z1との境界線上にある境界点である。中心点導出部12は、内接円Q0から内接円Q2の位置まで生成した内接円の外周端点列を繋いで、仮想走行路の右側境界線VBLR2を得る。また、中心点導出部12は、内接円Q0から内接円Q2の位置まで生成した内接円の中心点列を繋いで、仮想中心線GL2を得る。仮想中心線GL2は、自動運転車両が走行路R2に向かって右折する場合の仮想誘導線となる。走行路R2における仮想走行路の生成方法は、走行路R1における仮想走行路の生成方法と同様である。
同様に、中心点導出部12は、中心点S0の位置から走行路R3に向かう仮想走行路を生成する。直進する場合の左側境界線VBLL3は、予めユーザが仮締切線として作成している。左側境界線は、例えば円内接Q0とBL11との接点と、円Q3と境界線BL12との接点とを繋ぐ直線でもよい。そして、中心点導出部12は、左側境界線に内接させた内接円Q0を内接円Q3の位置まで所定の間隔で生成する。内接円Q3の中心点G3は、走行路R3と交差点Z1との境界線上にある境界点である。中心点導出部12は、内接円Q0から内接円Q3の位置まで生成した内接円の外周端点列を繋いで、仮想走行路の右側境界線を得る(図示せず)。また、中心点導出部12は、内接円Q0から内接円Q3の位置まで生成した内接円の中心点列を繋いで、仮想中心線GL3を得る。仮想中心線GL3は、自動運転車両が走行路R3に向かって直進する場合の仮想誘導線となる。走行路R3における仮想走行路の生成方法は、走行路R1における仮想走行路の生成方法と同様である。仮想中心線GL1~GL3は、ローカル中心線とも称する。
本実施形態においては、制限された半径を有する内接円の直径が、仮想走行路の幅である。つまり、走行路の左側境界線に内接する内接円の軌跡が、仮想走行路となる。なお、仮想走行路を生成する方法はこれに限られない。例えば、後述するように、始点と終点との間で所定のコスト関数を最小化する経路探索法を用いて仮想走行路を生成してもよい。
半径制限部22が制限する半径の値、即ち上限値は、ユーザが設定してもよく、あるいは半径制限部22が設定してもよい。例えば、半径の上限値は、走行する可能性がある車両の幅を参照して設定されてもよい。半径の上限値は、走行する車両の幅以上である必要があるためである。あるいは、半径の上限値は、走行路の幅をさらに参照して設定されてもよい。
図16は、走行路の境界線に内接する円又は球の半径が変化する例を示す模式図である。図示するように、走行路R0において、部分的に走行路R0の幅が狭くなっている狭幅区間NRがある。その場合、中心点導出部12は、図16に示すように、道幅が半径の制限値以上の場合は、制限値の半径の内接円Qを生成し、狭幅区間NR(の一部)のように、道幅が半径の制限値よりも小さい場合は、その道幅の半径の内接円Qを生成する。中心点導出部12は、その内接円Qの中心点を繋げて中心点列を生成する。
具体的には、図示するように、走行路R0において、内接円QAから内接円QBまでは、内接円Qは制限値の半径を有している。この場合、中心点導出部12は、右側境界線VBLRを生成する。しかしその先は道幅が半径の制限値よりも狭くなり、中心点導出部12は内接円QCのように道幅全体に内接する内接円を生成する。そして内接円QDからはまた半径が制限値に等しい内接円が生成される。内接円QCの位置では、右側境界線VBLRは、走行路R0の右側境界線BL14と共通である。また、内接円の半径の変化に伴い、中心線GL0の位置が変化する。また、中心点導出部12は、内接円QAの中心点CPA、内接円QBの中心点CPB、内接円QCの中心点CPC、内接円QDの中心点CPDなどを繋げて中心点列GL0(仮想中心線)を生成する。内接円Q0から先は図15で説明したとおりである。
〔実施形態5〕
実施形態4では、1.5車線の走行路又は交差点内における仮想走行路の生成方法について、仮想走行路の左側境界線が実際の走行路の左側境界線、あるいはユーザが予め設定した仮想的な左側境界線(仮締切線)に内接する内接円を用いる方法を説明した。しかし、仮想走行路の生成方法はこれに限られない。本実施形態では、情報処理装置1Bが実行する、交差点内における仮想走行路の生成方法の他の例を説明する。
図17は、交差点経路生成部23が、交差点内における仮想走行路を生成する方法を示す模式図である。交差点経路生成部23は、進入走行路R0と交差点Z2との境界を示す進入点から、退出走行路R1と交差点Z2との境界を示す退出点までの経路を、仮想車両の走行距離と交差点からのはみ出し面積とを含むコスト関数を用いて生成する。図示する例では、進入点は境界点S0であり、退出点は境界点G1である。進入点と退出点は、交差点特定部14によって特定されている。仮想車両は、例えば円で表される。
交差点経路生成部23は、走行路R0と交差点Z2との境界点S0から、走行路R1と交差点Z2との境界点G1までの仮想走行路を生成する。境界点S0が進入点であり、境界点G1が退出点である。走行路R0と走行路R1は単車線とする。また、走行路R0の道幅はr0、走行路R1の道幅はr1とし、内接円Q0から内接円Q1まで円の半径は制限しないものとする。
図17に示すように、走行路R0には、中心点導出部12により中心線CL0が取得されている。そして、中心線CL0と交差点Z2との境界点S0は内接円Q0の中心点S0でもあり、中心点S0は中心点列ベクトル(中心線ベクトル)V0を有している。一方、走行路R1には、中心点導出部12により中心線CL1が取得されている。そして、境界点G1は内接円Q1の中心点G1でもあり、中心点G1は中心点列ベクトル(中心線ベクトル)V1を有している。
経路を生成する場合は、車両を模擬する円が、始点(交差点への進入点)と終点(交差点からの退出点)のそれぞれの最近傍にある走行路の中心点列ベクトル方向と同一方向に走行すると考える。円は車両を模擬しているため、円の軌跡(車両の軌跡)は、なめらかな曲線になっている必要がある。このような考え方に基づき、交差点経路生成部23は、始点である中心点S0の位置とその中心点列ベクトルV0、及び終点である中心点G1の位置とその中心点列ベクトルV1を拘束条件として、中心点S0と中心点G1を結ぶ滑らかな曲線GLを、例えば3次スプライン曲線を使って複数生成する。拘束条件は、具体的には、進入点S0と退出点G1を通る円中心点の軌跡GLは、最近傍の中心点列ベクトル方向にほぼ一致することである。
図18は、交差点経路生成部23が生成する、円Qの中心点の複数の経路(GL1~GLn)の例を示すグラフである。グラフの横軸は、図17における走行路R2の方向を示し、縦軸は図17における走行路R3の方向を示す。図18には、図17に示す走行路R0が進入走行路(第1走行路)とし、走行路R1が退出走行路(第2走行路)とした場合に、交差点経路生成部23が生成する経路の例を示している。また、交差点経路生成部23は、曲線GL上の所定の位置において、半径を変更した円Q(図示せず)を生成する。進入点S0における内接円と退出点G1における内接円の半径をそれぞれr0とr1とし、S0からG1までの軌跡の距離をLとすると、その間の円の半径をr0からr1に移行するように距離Lに応じて変化させても良いし、さらに、軌跡の曲率に応じて円を大きくしてもよい。いずれにしろ、進入点S0における内接円と退出点G1における内接円の半径はr0とr1で規定され、それらの円に滑らかに円の半径を変化させても良い。
交差点経路生成部23は、始点S0から終点G1までの曲線GLの長さと円Qが走行路の境界線BL11からはみ出る面積Sを変数としたコスト関数を作成する。例えば、コスト関数は、それぞれの曲線における移動距離とはみ出し面積に設計者が決定する重みを乗じて、その総和を取った関数でもよい。つまり、曲線GLの長さと円Qが走行路の境界線BL11からはみ出る面積Sが小さいほど、コスト関数は小さな値となる。そして、交差点経路生成部23は、図18に示すように、コスト関数が最小となるように曲線GL(円Qの中心点の位置)を探索する。円Qの中心点列はローカル中心線とも称する。
交差点経路生成部23は、生成した円群Qの最外縁点列から、左側境界線VBLLと右側境界線VBLRとを、クリッパーを用いて抜き出し、仮想走行路境界線とする。ただし、左側境界線VBLLは境界線BL11からはみ出す可能性がある。その場合、交差点経路生成部23は、左側境界線は実際の境界線BL11として、最終的な仮想走行路境界線とする。車両を誘導する場合は、ローカル中心線に沿って誘導することができる。
図19は、複数車線のうちの1つの車線に向かう交差点Z3内の仮想走行路を生成する場合の模式図である。図19に示す例では、走行路R1は、車線R11と車線R12とから構成され、左折時の終点は車線R11と交差点Z3との境界点G1とする。交差点経路生成部23は、始点S0から終点G1まで、図17で説明したように、曲線GL上の所定の位置において、半径を変更した円Qを生成する。そして、曲線GLを短く、かつ円Qが境界線BL11からはみ出る面積Sが少ない曲線GLと半径の変化曲線を探索する。
図20は、交差点経路生成部23が、1.5車線の走行路R0から1.5車線の走行路R1~R3に向かう交差点Z1内の仮想走行路を生成する場合の模式図である。1.5車線の走行路の場合は、半径制限部22によって仮想走行路の幅が制限される。半径制限部22が制限する半径の上限値の設定の考え方は前述のとおりである。図20において、走行路R0から走行路R1に向かう場合は、交差点経路生成部23は、始点S0から終点G1まで、円Qの半径を固定し、進入ベクトルV0と退出ベクトルV1の方向を拘束条件として、曲線GL1の最適な経路を、前述のコスト関数を用いて探索する。得られた円Qの外周端点列を繋いで左側境界線VBLLと右側境界線VBLR1を生成し、左側境界線VBLLが実際の境界線BL11よりもはみ出る場合は、交差点経路生成部23は、実際の境界線BL11を左側境界線とする。
また、走行路R0から走行路R2に向かう場合は、交差点経路生成部23は、始点S0から終点G2まで、円Qの半径を固定し、進入ベクトルV0と退出ベクトルV2の方向を拘束条件として、曲線GL2の最適な経路を、コスト関数を用いて探索する。ただし、円Qは走行路R0又は走行路R2の境界線からはみ出ることはない。そのため、コスト関数として、円Qの軌跡が境界線からはみ出る面積に代えて、曲線GL2の曲率を導入してもよい。つまり、曲線GL2の曲率の変化量又は変化率に上限を設けて経路を探索してもよい。また、カーブ区間では、一般に道路幅が大きくなるよう設計されているので、曲率を考慮して円Qの半径を可変とすることで、カーブ区間において仮想走行路の幅を大きくした仮想境界線の位置を決定してもよい。具体的には、曲線GL2の中心点列から曲率を求める。そして、曲率の大きさに応じて、円Qの最大半径の値を可変とする。また曲率が大きくなる前後から円Qの半径を変化させてもよい。走行路R0から走行路R3に向かう場合も同様である。つまり、交差点経路生成部23は、始点S0から終点G3まで、円Qの半径を固定し、進入ベクトルV0と退出ベクトルV3の方向を拘束条件として、曲線GL3の最適な経路を、前述のコスト関数を用いて探索する。
以上をまとめると、情報処理装置1Bは、車線分離線が設けられていない交差点内の仮想走行路を生成する方法であって、交差点内に進入する進入点と、当該交差点から退出する退出点とを取得する境界点取得処理と、前記進入点の進入ベクトルと前記退出点の退出ベクトルを取得するベクトル取得処理と、取得した前記進入ベクトルと前記退出ベクトルとを拘束条件とし、仮想車両の走行距離と前記交差点からのはみ出し面積とを含むコスト関数を用いて最適経路を生成する経路生成処理と、を実行する交差点経路生成部23を備えている。ただし、進入ベクトルと退出ベクトルの導出方法は限定されない。例えば、両側の境界線を有する道路の場合は、境界線に内接する円の中心点の点列ベクトルを進入ベクトルと退出ベクトルとして用いてもよい。あるいは、進入点と退出点における所定の道幅方向に直交する方向のベクトルを進入ベクトルと退出ベクトルと設定してもよい。
境界点取得処理は、進入走行路の中心点と交差点の領域との交点である進入点を取得する処理(進入点取得処理)と、退出走行路の中心点と交差点の領域との交点である退出点を取得する処理(退出点取得処理)とを含む。進入点と退出点は、交差点特定部14が特定した走行路の交差点を示す情報から取得することができる。
ベクトル取得処理は、進入点ベクトル取得処理と退出点ベクトル取得処理とを含む。進入点ベクトルは、進入点における進入走行路の進入方向の中心線ベクトルである。退出点ベクトルは、退出点における退出走行路の退出方向の中心線ベクトルである。
走行路の中心線ベクトルは、走行路の両側の境界線にそれぞれ内接する内接円(又は内接球)の中心点を繋げて得られる中心点列ベクトルである。中心線ベクトルは、中心点導出部12が生成した情報から取得することができる。進入方向と退出方向は、中心点に関連付けられた境界線に関する情報から決定される。
なお、仮想走行路の始点と終点の設定方法として、次のような方法を用いてもよい。実施形態1で説明したように、2つの境界線の組み合わせが変化する第1中心点の位置が走行路の交差点とすることができる。N差路の場合は、この交差点はn-2個発生する。それぞれの交差点には、内接円の半径が関連付けられているので、交差点同士が近ければ、1つの交差点と認識させてもよい。交差点を中心とする所定の半径を有する円を生成し、それらの円群の外周を交差点境界域とする。この円群と中心点列の交点を始点、終点とすることができる。
交差点の隅切りがある場合、隅切りが始まる点(隅切り開始点)を検出し、その隅切り開始点に内接する中心点を始点、終点とすることにより、仮想走行路の境界線を得ることができる。また、隅切りがない場合、あるいは隅切りが十分に大きくない場合は、別途求めた侵入限界線(図15のALL)よりも所定の長さ分だけ(一時停止位置を設置するような位置、だいたい5m)、交差点から離れた位置に設定するが、上述の円群の交差点エリアを交点に設定すれば良い。
コスト関数は、両側に走行路境界線が存在しない場合に必要になり、そのとき、始点と終点を与えておく必要がある。その一方で、いずれか一方、つまり進行方向の左側の境界線、又は右側の境界線が存在していれば、存在する境界線に沿って他方の境界線を生成することができるので、起終点は必要なくなる。進行方向の左側、又は右側の境界線は、ユーザが生成してもよい。
〔実施形態6〕
次に、交差点において、複数の車線を有する走行路から、複数の車線を有する走行路へ向かう経路の組み合わせを生成する方法について説明する。上述の実施形態においては、向かう車線が1つに決まっている場合の仮想走行経路の生成方法を説明したが、複数の車線を有する走行路間の仮想走行経路を生成するには、どの車線からどの車線に向かうかを決める必要がある。ここで、「複数の車線を有する走行路」とは、同じ方向に走行可能な複数の車線が車線分離線(車線境界線)で仕切られている走行路を意味する。また、走行方向が異なる車線を分離する線を中央分離線と称する。
経路組み合わせ生成部25は、複数の車線を有する第1走行路のうちの1つの車線から、複数の車線を有する第2走行路のうちの1つの車線までを繋ぐ経路の組み合わせを生成する。これは、上述の仮想走行経路を生成する前の準備段階である。この際、経路組み合わせ生成部25は、車線の中心点に関連付けられた境界線に関する情報を参照して経路の組み合わせを生成する。車線の中心点に関連付けられた境界線に関する情報を参照することにより、どの車線が隣り合っているか、どの車線からどの車線に走行することができるか、などの配置関係を取得することができる。また、経路組み合わせ生成部25は、交通規則を参照して経路の組み合わせを生成してもよい。交通規則とは、道路に関する法律、規則、又は一般的な慣習などである。以下に、経路組み合わせ生成部25が経路の組み合わせを生成するアルゴリズムの一例について説明する。
中央分離線は、上りと下りのセクションにおいて共有する境界線となる。そこで、中央分離線と車線分離線の関係を導く。具体的には、中央分離線を共有している車線を抽出する。次に、中央分離線を共有せず、車線が共有している車線分離線を共有している別の車線を抽出する。この車線は、中央分離線を共有する車線に隣接する車線である。同様にして、車線の隣接関係を抽出していく。
具体的には、各走行路(車線)に、半径の制限を設けない内接円を発生させることにより、ペアリング情報から境界線がどの車線境界線に面しているのかの情報を取得することができる。まず中央分離線は、車線分離線とは異なり、自身が中央分離線という属性情報を持っている。つまり、作図段階で、車線分離線と中央分離線にそれぞれ異なる属性情報を持たせておく必要がある。
中央分離線は、実際は線でなく、幅を持ったポリゴンである。左側通行を前提とすると、車両の進行方向に対して、常に右側に中央分離線がある。この中央分離線を持つ走行路は、上りと下りの2つが存在する。またその2つの走行路の中央分離線ではない、もう片方のペアとなるのは車線分離線か境界線になる。境界線の場合は、走行路はそれで終わりである。そのペアとなるのが車線分離線の場合、さらにその外側に走行路が存在することになるが、中央分離線と同様にペアリング情報により、それぞれの車線がどの境界線で構成されるかを特定することができる。そのペア情報を利用すると、車線同士がどのような配置になっている導くことができる。
次に、交差点に入る車線(入口側車線)の車線数により、各車線から進行可能な方向に制限を設ける。入口側車線の車線数が1車線の場合は、全方向に進行できるので、進行方向は制限しない。直進と右折が可能な場合であって、入口側車線の車線数が2車線の場合は、一番左の車線からの右折を制限する。入口側車線の車線数が3車線の場合は、一番左と2番目の右折を制限する。同様にして、車線の隣接関係に基づく制限を抽出していく。
次に、交差点において、車線の接続関係に着目する。入口側車線と交差点から出る車線(出口側車線)の接続関係が合致する組み合わせを抽出する。ただしUターンの組み合わせは除外する。誘導線の終点を通り、終点の方向ベクトルを有する直線と、始点との距離が規定値以下のとき、直線とする。規定値以上のとき、直線からみて始点が右側のとき右折、左側のときは左折とする。
図21は、交差点Zに合流する走行路の一例を示す模式図である。左側通行を前提とすると、中央分離線の情報から、交差点に進入する車線又は走行路がR0,R2,R4,R6,R8となり、交差点から退出する車線又は走行路がR1,R3,R5,R7,R9となる。図21の中で、R0に着目すると、進入走行路R0に対する組合せは、退出走行路R1,R3,R5,R7,R9に特定される。一般的に走行路R0~R9はそれぞれ1つ以上の車線を持っている。
第一に、走行路R0に存在するn車線がどのような順番で並んでいるかを識別する。この識別には、中央分離線CL1と走行路境界線SL0の情報を活用する。中央分離線CL1はR0とR1の間に存在する。R0の車線のうち、中央分離線CL1に面する車線を抽出する。これを車線R0-(n-1)とする。次に、この車線にはもう一方の車線境界線SL0-3があるので、この車線境界線SL0-3を有する車線をR0-(n-2)とする。この手順を走行路境界線SL0-0までを繰り返すと、左車線から車線R0-0,R0-1,R0-2,・・・・R0-(n-1)と区別することができる。
第二に、R0に含まれるすべての車線と、退出する走行路であるR1,R3,R5,R7,R9に含まれるすべての車線(計算コストを小さくするため、車線を含んだR0,R1,R3,R5,R7,R9を代表に利用してもよい)との接続の向きを算定する。事前準備として、コスト評価関数を用いて、走行路経路における中心線の点列ベクトルを取得する。始点と終点までの中心点列ベクトルに対して、前後の中心点列ベクトル同士がなす角度を求め、それを終点まで求め、それらのなす角度の総和を求める。この総和は、R0に対するR1,R3,R5,R7,R9との接続方向とのなす角度となる。したがって、0度付近は直進と見なせる。進行方向に向かって右方向をプラスとすると、R5とR3とR1がプラスであり、その大きさはR1>R3>R5の順であり、これらはすべて右折となる。R7はややマイナスの角度で直進と見なす。R9はそれよりもマイナスなので、左折となる。大きさ順に並べると、左からR9,R7,R5,R3,R1の順である。このうち、R1は180度くらいの値となるので、Uターンということが識別できる。この情報を利用して、Uターンの経路を生成する必要がない場合はその組合せを棄却してもよい。
次に、R0に含まれる車線に対して右左折直進の組合せする可能性がある候補を、交通ルールを参照して次のように絞込む。
(1)1車線の場合、R1,R3,R5,R7,R9のすべての車線との間がすべて仮想走行路の候補となる。
(2)2車線の場合、交通ルールの慣習より、左車線R0-0は、直進方向の接続を含み、それよりも左側の車線と組合せに絞る。右車線R0-1は、直進方向の接続を含み、それよりも右側の車線との組合せに絞る。
(3)3車線の場合、左車線R0-0は、ほぼ直進方向の接続を含み、それよりも左側の車線との組合せに絞る。真ん中の車線R0-1は、ほぼ直進方向の接続を含み、右側と左側の車線との組合せに絞る。右車線R0-2は、ほぼ直進方向の接続を含み、それよりも右側の車線との組合せに絞る。
(4)4車線の場合、左側から2車線までは、ほぼ直進方向の接続を含み、それよりも左側の車線との組合せに絞る。右側から2車線は、ほぼ直進方向の接続を含み、それよりも右側の車線との組合せに絞る。
(5)5車線の場合、左側から2車線または3車線までは、ほぼ直進方向の接続を含み、それよりも左側の車線との組合せに絞る。右側から2車線または3車線は、ほぼ直進方向の接続を含み、それよりも右側の車線との組合せに絞る。
以上のように一定のルールを当てはめて、組合せ数を絞ることができる。なお、上記の組み合わせでは、R0の車線しか考慮していないが、退出側の車線数を考慮しても良い。例えば、進入側と退出先の車線数が一致しない場合で、進入側よりも退出側の車線数が多いときは組合せ数を制限しないが、進入側よりも退出側の車線数が少ないとき、組合せが過大となっている可能性が高い。たとえば、左折の場合であれば、退出側の車線数と同数の車線数を最左側の車線から絞ってもよい。また右折の場合は、反対に最も右側の車線から絞ってもよい。直進に関しては、車線数が奇数の場合、真ん中の車線、偶数の場合は真ん中の左側から絞ってもよい。いずれにしても、交通ルールの慣習に当てはめて、進入側と退出側の車線数に応じて組合せを絞込めばよい。
以上のようにして経路組み合わせ生成部25によって生成された入口側車線から出口側車線の組み合わせは、ユーザがさらに組み合わせを絞り込み、あるいは追加してもよい。そして、確定された組合せのそれぞれについて、交差点経路生成部23が仮想走行路を生成する。これにより、出発点から目的地まで、交差点内も含めて生成された中心線に沿って自動走行車両を誘導することができる。
〔実施形態7〕
図22は、より自然な走行経路を生成するための方法を示す模式図である。図22に示す実施形態では、走行路R0の車線R0-1の進入点(始点)SP1から走行路R3の車線R3-1の退出点(終点)GP1に向かう経路を生成する場合を考える。進入点SP1は、この実施形態では走行路R0とR1の隅切り開始点を結ぶ線分と車線R0-1の中心線との交点とする。また、退出点GP1は、走行路R2とR3の隅切り開始点を結ぶ線分と車線R3-1の中心線との交点とする。
コスト評価関数を用いた仮想走行路を生成する場合、中央分離線や車線境界線(実際には幅を持っている)をはみ出した面積をコストとして見なしているが、車線境界線SL3-1を跨ぐ場合、その面積のコストを中央分離線CL2と同じように評価すると、大回りする不自然な仮想経路GLAが生成されることがある。また交差点近くに終点を設けた場合も同様に大回りする不自然な仮想走行路が生成されることがある。
このような不自然な仮想走行路の生成を防ぐために、次のような操作を行う。
(STEP1)退出側の中央分離線CL2に最も近いR3-0における退出点GP0を基準として、それよりも外側の車線の退出点として、標準的な車両のホイールベースの2~3倍程度の長さだけ交差点よりも外側に新たな退出点を設ける。図22に示す例では、退出点GP1に代えて、標準的な車両のホイールベースの2~3倍程度離れた新たなGP1Aを設定する。
(STEP2)車線R0-1から車線R3-1の仮想走行路を求める際に、R3-1の車線境界線SL3-1は、交差点から新たな退出点GP1Aまでの範囲(図中に黒く塗りつぶした範囲)についてはコストをゼロもしくは低いコストとして、車線境界線SL3-1にはみ出しやすくすることで、より自然な仮想走行路GLBを生成させることができる。
その他、始点と終点のベクトル方向については、道路中心線の方向と一致されてもよいし、走行路境界線や車線境界線などを参照して決めても良い。
〔ソフトウェアによる実現例〕
情報処理装置1、1A、1B(以下、「装置」と呼ぶ)の機能は、当該装置としてコンピュータを機能させるためのプログラムであって、当該装置の各部としてコンピュータを機能させるためのプログラムにより実現することができる。
この場合、上記装置は、上記プログラムを実行するためのハードウェアとして、少なくとも1つの制御装置(例えばプロセッサ)と少なくとも1つの記憶装置(例えばメモリ)を有するコンピュータを備えている。この制御装置と記憶装置により上記プログラムを実行することにより、上記各実施形態で説明した各機能が実現される。
上記プログラムは、一時的ではなく、コンピュータ読み取り可能な、1または複数の記録媒体に記録されていてもよい。この記録媒体は、上記装置が備えていてもよいし、備えていなくてもよい。後者の場合、上記プログラムは、有線または無線の任意の伝送媒体を介して上記装置に供給されてもよい。
また、上記各制御ブロックの機能の一部または全部は、論理回路により実現することも可能である。例えば、上記各制御ブロックとして機能する論理回路が形成された集積回路も本発明の範疇に含まれる。この他にも、例えば量子コンピュータにより上記各制御ブロックの機能を実現することも可能である。
また、上記各実施形態で説明した各処理は、AI(Artificial Intelligence:人工知能)に実行させてもよい。この場合、AIは上記制御装置で動作するものであってもよいし、他の装置(例えばエッジコンピュータまたはクラウドサーバ等)で動作するものであってもよい。
〔まとめ〕
本発明の態様1に係る情報処理装置は、地図データから走行路を規定する境界線を検出し、端部を有する境界線と端部を有しない境界線とに分類して特定する境界線特定部と、前記走行路を規定する第1境界線に接するとともに当該第1境界線とは異なる第2境界線に内接する円又は球の中心点である第1中心点を複数導出して、前記第1中心点と前記第1境界線とを関連付ける中心点導出部と、前記第1中心点と、前記第1境界線とは異なる第2境界線に関連付けられた中心点であって前記第1中心点と最も近い位置にある第2中心点と、を関連付ける中心点ペア生成部と、前記第1中心点と前記第2中心点にそれぞれ関連付けられた前記第1境界線と前記第2境界線の組み合わせが変化する前記第1中心点を前記走行路の交差点を示す情報として特定する交差点特定部と、を備える。
本発明の一態様に係る情報処理装置において、前記境界線特定部は、前記端部を有しない境界線で閉じた領域、又は前記端部を有する境界線と端部線とで閉じた領域の包含関係を特定し、包含順に各々の前記領域の周方向を順方向と反対方向とで交互に設定し、前記周方向の所定の側にある前記領域を前記走行路として特定する。
本発明の一態様に係る情報処理装置は、隣接情報特定部を更に備え、前記中心点導出部は、生成した前記中心点に対して固有の識別符号を与え、前記隣接情報特定部は、前記交差点を示す中心点の前記識別符号を参照して隣接する2つの交差点の隣接情報を特定する。
本発明の一態様に係る情報処理装置は、前記隣接情報のうち、前記隣接する2つの交差点の間の区間の前記走行路の幅員、距離、及び交通制限のうちの少なくともいずれかの情報を、前記区間の区間情報として記録する区間情報記録部を更に備える。
本発明の一態様に係る情報処理装置において、前記端部は、処理の対象とする前記境界線の端部であり、前記情報処理装置は、前記地図データから前記端部を取得する端部取得部を更に備える。
本発明の一態様に係る情報処理装置において、前記境界線特定部は、前記中心点の配列に基づいて前記走行路の一様区間を抽出し、前記一様区間の端部から車両の旋回半径を考慮した距離だけ前記一様区間に入った位置に経由点を設定する。
本発明の一態様に係る情報処理装置は、隣接する2つの前記経由点の間の、前記走行路の幅方向の走行位置を含む走行経路を設定する経路設定部と、前記走行路のコストマップを参照して設定された当該走行経路の走行コストを算出して、最適な走行経路を特定する経路特定部と、を更に備える。
本発明の一態様に係るデータ構造は、走行路の境界線データを用いて中心点導出部が導出した、境界線IDを識別子として含む中心点データと、前記中心点データを用いて中心点ペア生成部が生成した、中心点IDを識別子として含む中心点ペアデータと、前記中心点ペアデータを用いて交差点特定部が生成した、中心点ペアIDを識別子として含む交差点データと、を含む。
本発明の一態様に係るデータ構造は、締切り設定部が生成した、前記交差点間の前記走行路の区間IDと前記境界線IDとを識別子として含む仮締切線データを更に含む。
本発明の一態様に係る情報処理方法は、1又は複数のプロセッサが、地図データから走行路を規定する境界線を検出し、端部を有する境界線と端部を有しない境界線とに分類して特定するステップと、前記走行路を規定する第1境界線に接するとともに当該第1境界線とは異なる第2境界線に内接する円又は球の中心点である第1中心点を複数導出して、前記第1中心点と前記第1境界線とを関連付けるステップと、前記第1中心点と、前記第1境界線とは異なる第2境界線に関連付けられた中心点であって前記第1中心点と最も近い位置にある第2中心点と、を関連付けるステップと、前記第1中心点と前記第2中心点にそれぞれ関連付けられた前記第1境界線と前記第2境界線の組み合わせが変化する前記第1中心点を前記走行路の交差点を示す情報として特定するステップと、を含む。
本発明の一態様に係るプログラムは、態様1に記載の情報処理装置としてコンピュータを機能させるためのプログラムであって、前記境界線特定部、前記中心点導出部、前記中心点ペア生成部及び前記交差点特定部としてコンピュータを機能させるためのプログラムである。
本発明の一態様に係る非一時的記録媒体は、上記プログラムを記録したコンピュータ読み取り可能な非一時的記録媒体である。
〔付記事項〕
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
(まとめ)
(態様1)
地図データから走行路を規定する境界線を検出し、端部を有する境界線と端部を有しない境界線とに分類して特定する境界線特定部と、
前記走行路を規定する第1境界線に接するとともに当該第1境界線とは異なる第2境界線に内接する円又は球の中心点である第1中心点を複数導出して、前記第1中心点と前記第1境界線とを関連付ける中心点導出部と、
前記第1中心点と、前記第1境界線とは異なる第2境界線に関連付けられた中心点であって前記第1中心点と最も近い位置にある第2中心点と、を関連付ける中心点ペア生成部と、
前記第1中心点と前記第2中心点にそれぞれ関連付けられた前記第1境界線と前記第2境界線の組み合わせが変化する前記第1中心点を前記走行路の交差点を示す情報として特定する交差点特定部と、
を備える情報処理装置。
(態様2)
前記境界線特定部は、
前記端部を有しない境界線で閉じた領域、又は前記端部を有する境界線と端部線とで閉じた領域の包含関係を特定し、包含順に各々の前記領域の周方向を順方向と反対方向とで交互に設定し、前記周方向の所定の側にある前記領域を前記走行路として特定する、態様1に記載の情報処理装置。
(態様3)
隣接情報特定部を更に備え、
前記中心点導出部は、生成した前記中心点に対して固有の識別符号を与え、
前記隣接情報特定部は、前記交差点を示す中心点の前記識別符号を参照して隣接する2つの交差点の隣接情報を特定する、態様1又は2に記載の情報処理装置。
(態様4)
前記隣接情報のうち、前記隣接する2つの交差点の間の区間の前記走行路の幅員、距離、及び交通制限のうちの少なくともいずれかの情報を、前記区間の区間情報として記録する区間情報記録部を更に備える、態様3に記載の情報処理装置。
(態様5)
前記端部は、処理の対象とする前記境界線の端部であり、
前記情報処理装置は、前記地図データから前記端部を取得する端部取得部を更に備える、態様1から4のいずれか一に記載の情報処理装置。
(態様6)
前記境界線特定部は、前記中心点の配列に基づいて前記走行路の一様区間を抽出し、前記一様区間の端部から車両の旋回半径を考慮した距離だけ前記一様区間に入った位置に経由点を設定する、態様1から5のいずれか一に記載の情報処理装置。
(態様7)
隣接する2つの前記経由点の間の、前記走行路の幅方向の走行位置を含む走行経路を設定する経路設定部と、前記走行路のコストマップを参照して設定された当該走行経路の走行コストを算出して、最適な走行経路を特定する経路特定部と、を更に備える、態様6に記載の情報処理装置。
(態様8)
前記第1境界線又は前記第2境界線に内接する円又は球の半径を制限する半径制限部をさらに備え、
前記中心点導出部は、車両が走行する側の前記境界線に内接する、前記半径制限部によって制限された半径を上限とする前記円又は球の前記中心点を導出する、態様1から7のいずれか一に記載の情報処理装置。
(態様9)
前記交差点特定部が特定した、進入走行路と交差点との境界を示す進入点から、前記交差点特定部が特定した、退出走行路と前記交差点との境界を示す退出点までの経路を、仮想車両の走行距離と交差点からのはみ出し面積とを含むコスト関数を用いて生成する交差点経路生成部をさらに備える、態様8に記載の情報処理装置。
(態様10)
複数の車線を有する前記進入走行路のうちの1つの車線から、複数の車線を有する前記退出走行路のうちの1つの車線までを繋ぐ経路の組み合わせを生成する経路組み合わせ生成部をさらに備え、
前記経路組み合わせ生成部は、前記車線の中心点に関連付けられた前記境界線に関する情報と交通規則とを参照して前記経路の組み合わせを生成する、態様9に記載の情報処理装置。
(態様11)
走行路の境界線データを用いて中心点導出部が導出した、境界線IDを識別子として含む中心点データと、前記中心点データを用いて中心点ペア生成部が生成した、中心点IDを識別子として含む中心点ペアデータと、前記中心点ペアデータを用いて交差点特定部が生成した、中心点ペアIDを識別子として含む交差点データと、を含むデータ構造。
(態様12)
締切り設定部が生成した、交差点間の前記走行路の区間IDと前記境界線IDとを識別子として含む仮締切線データを更に含む、態様11に記載のデータ構造。
(態様13)
1又は複数のプロセッサが、
地図データから走行路を規定する境界線を検出し、端部を有する境界線と端部を有しない境界線とに分類して特定するステップと、
前記走行路を規定する第1境界線に接するとともに当該第1境界線とは異なる第2境界線に内接する円又は球の中心点である第1中心点を複数導出して、前記第1中心点と前記第1境界線とを関連付けるステップと、
前記第1中心点と、前記第1境界線とは異なる第2境界線に関連付けられた中心点であって前記第1中心点と最も近い位置にある第2中心点と、を関連付けるステップと、
前記第1中心点と前記第2中心点にそれぞれ関連付けられた前記第1境界線と前記第2境界線の組み合わせが変化する前記第1中心点を前記走行路の交差点を示す情報として特定するステップと、
を含む情報処理方法。
(態様14)
態様1に記載の情報処理装置としてコンピュータを機能させるためのプログラムであって、前記境界線特定部、前記中心点導出部、前記中心点ペア生成部及び前記交差点特定部としてコンピュータを機能させるためのプログラム。
(態様15)
態様14に記載のプログラムを記録したコンピュータ読み取り可能な非一時的記録媒体。
1、1A…情報処理装置
11…境界線特定部
12…中心点導出部
13…中心点ペア導出部
14…交差点特定部
15…プロセッサ
16…メモリ
17…端部取得部
18…区間情報記録部
19…隣接情報特定部
20…経路設定部
21…経路特定部
22…半径制限部
23…交差点経路生成部
25…経路組み合わせ生成部
30…走行路
31a~31e、32a、32b…境界線
35a~35e…端部線
C31a、CP32a…内接円
CP31a、CP32a…中心点
CL31a、CL31b、CL32a…中心線

Claims (15)

  1. 地図データから走行路を規定する境界線を検出し、端部を有する境界線と端部を有しない境界線とに分類して特定する境界線特定部と、
    前記走行路を規定する第1境界線に接するとともに当該第1境界線とは異なる第2境界線に内接する円又は球の中心点である第1中心点を複数導出して、前記第1中心点と前記第1境界線とを関連付ける中心点導出部と、
    前記第1中心点と、前記第1境界線とは異なる第2境界線に関連付けられた中心点であって前記第1中心点と最も近い位置にある第2中心点と、を関連付ける中心点ペア生成部と、
    前記第1中心点と前記第2中心点にそれぞれ関連付けられた前記第1境界線と前記第2境界線の組み合わせが変化する前記第1中心点を前記走行路の交差点を示す情報として特定する交差点特定部と、
    を備える情報処理装置。
  2. 前記境界線特定部は、
    前記端部を有しない境界線で閉じた領域、又は前記端部を有する境界線と端部線とで閉じた領域の包含関係を特定し、包含順に各々の前記領域の周方向を順方向と反対方向とで交互に設定し、前記周方向の所定の側にある前記領域を前記走行路として特定する、請求項1に記載の情報処理装置。
  3. 隣接情報特定部を更に備え、
    前記中心点導出部は、生成した前記中心点に対して固有の識別符号を与え、
    前記隣接情報特定部は、前記交差点を示す中心点の前記識別符号を参照して隣接する2つの交差点の隣接情報を特定する、請求項1に記載の情報処理装置。
  4. 前記隣接情報のうち、前記隣接する2つの交差点の間の区間の前記走行路の幅員、距離、及び交通制限のうちの少なくともいずれかの情報を、前記区間の区間情報として記録する区間情報記録部を更に備える、請求項3に記載の情報処理装置。
  5. 前記端部は、処理の対象とする前記境界線の端部であり、
    前記情報処理装置は、前記地図データから前記端部を取得する端部取得部を更に備える、請求項1に記載の情報処理装置。
  6. 前記境界線特定部は、前記中心点の配列に基づいて前記走行路の一様区間を抽出し、前記一様区間の端部から車両の旋回半径を考慮した距離だけ前記一様区間に入った位置に経由点を設定する、請求項1から5のいずれか一項に記載の情報処理装置。
  7. 隣接する2つの前記経由点の間の、前記走行路の幅方向の走行位置を含む走行経路を設定する経路設定部と、前記走行路のコストマップを参照して設定された当該走行経路の走行コストを算出して、最適な走行経路を特定する経路特定部と、を更に備える、請求項6に記載の情報処理装置。
  8. 前記第1境界線又は前記第2境界線に内接する円又は球の半径を制限する半径制限部をさらに備え、
    前記中心点導出部は、車両が走行する側の前記境界線に内接する、前記半径制限部によって制限された半径を上限とする前記円又は球の前記中心点を導出する、請求項1から5のいずれか一項に記載の情報処理装置。
  9. 前記交差点特定部が特定した、進入走行路と交差点との境界を示す進入点から、前記交差点特定部が特定した、退出走行路と前記交差点との境界を示す退出点までの経路を、仮想車両の走行距離と交差点からのはみ出し面積とを含むコスト関数を用いて生成する交差点経路生成部をさらに備える、請求項8に記載の情報処理装置。
  10. 複数の車線を有する前記進入走行路のうちの1つの車線から、複数の車線を有する前記退出走行路のうちの1つの車線までを繋ぐ経路の組み合わせを生成する経路組み合わせ生成部をさらに備え、
    前記経路組み合わせ生成部は、前記車線の中心点に関連付けられた前記境界線に関する情報と交通規則とを参照して前記経路の組み合わせを生成する、請求項9に記載の情報処理装置。
  11. 走行路の境界線データを用いて中心点導出部が導出した、境界線IDを識別子として含む中心点データと、前記中心点データを用いて中心点ペア生成部が生成した、中心点IDを識別子として含む中心点ペアデータと、前記中心点ペアデータを用いて交差点特定部が生成した、中心点ペアIDを識別子として含む交差点データと、を含むデータ構造。
  12. 締切り設定部が生成した、交差点間の前記走行路の区間IDと前記境界線IDとを識別子として含む仮締切線データを更に含む、請求項11に記載のデータ構造。
  13. 1又は複数のプロセッサが、
    地図データから走行路を規定する境界線を検出し、端部を有する境界線と端部を有しない境界線とに分類して特定するステップと、
    前記走行路を規定する第1境界線に接するとともに当該第1境界線とは異なる第2境界線に内接する円又は球の中心点である第1中心点を複数導出して、前記第1中心点と前記第1境界線とを関連付けるステップと、
    前記第1中心点と、前記第1境界線とは異なる第2境界線に関連付けられた中心点であって前記第1中心点と最も近い位置にある第2中心点と、を関連付けるステップと、
    前記第1中心点と前記第2中心点にそれぞれ関連付けられた前記第1境界線と前記第2境界線の組み合わせが変化する前記第1中心点を前記走行路の交差点を示す情報として特定するステップと、
    を含む情報処理方法。
  14. 請求項1に記載の情報処理装置としてコンピュータを機能させるためのプログラムであって、前記境界線特定部、前記中心点導出部、前記中心点ペア生成部及び前記交差点特定部としてコンピュータを機能させるためのプログラム。
  15. 請求項14に記載のプログラムを記録したコンピュータ読み取り可能な非一時的記録媒体。
JP2023020240A 2022-02-14 2023-02-13 情報処理装置、情報処理方法、データ構造及びプログラム Pending JP2023118121A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022020825 2022-02-14
JP2022020825 2022-02-14

Publications (1)

Publication Number Publication Date
JP2023118121A true JP2023118121A (ja) 2023-08-24

Family

ID=87654029

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023020240A Pending JP2023118121A (ja) 2022-02-14 2023-02-13 情報処理装置、情報処理方法、データ構造及びプログラム

Country Status (1)

Country Link
JP (1) JP2023118121A (ja)

Similar Documents

Publication Publication Date Title
CN108871368B (zh) 一种高精度地图车道横向拓扑关系的构建方法、系统及存储器
KR101235821B1 (ko) 기록 매체, 생성 지원 장치 및 경로 안내 장치
Bender et al. Lanelets: Efficient map representation for autonomous driving
JP2019135544A (ja) 電子地図における交差点を認識するための方法及び装置
JP7330142B2 (ja) 車両のuターン経路を決定する方法、装置、デバイスおよび媒体
CN112444263B (zh) 全局路径规划方法及装置
CN108009666B (zh) 基于动态路网的层级优先最优路径计算方法
JP2023513425A (ja) 車両挙動予測方法及び装置、電子機器、記憶媒体
CN107533804A (zh) 情形理解装置
CN108332761B (zh) 一种使用及创建路网地图信息的方法与设备
AU2011380820A1 (en) Autonomous travel system
WO2022205616A1 (zh) 一种地图中导航元素构建方法及装置
CN111314857B (zh) 一种基于过车视频数据的车辆实时出行轨迹获取方法
JP6177498B2 (ja) 経路案内システム
JP2023508794A (ja) 軌跡計画方法及び装置、機器、記憶媒体並びにプログラム製品
JP6871785B2 (ja) 車線情報生成装置及び車線情報生成方法並びに車線情報生成用プログラム
JP6871784B2 (ja) 車線情報生成装置及び車線情報生成方法並びに車線情報生成用プログラム
US20200393253A1 (en) Method for generating road map for autonomous vehicle navigation
US11684855B2 (en) System and method for virtual navigation in a gaming environment
JP2018173762A (ja) 車線情報生成装置及び車線情報生成方法並びに車線情報生成用プログラム
JP2022502311A (ja) 環境ターゲットの特徴点抽出方法及び装置
CN112923941B (zh) 路线规划方法、数据挖掘方法、相应的装置及电子设备
JP2023118121A (ja) 情報処理装置、情報処理方法、データ構造及びプログラム
Liu et al. A smart map representation for autonomous vehicle navigation
JP2023117984A (ja) 情報処理装置、情報処理方法、データ構造及びプログラム