説明

路面標示地図生成方法

【課題】 道路を走行しながら路面を撮影した画像から、路面標示を含む画像を生成し、路面標示の位置座標を得る。
【解決手段】 道路を走行しながら路面をビデオカメラで撮影するとともに、各撮影地点の位置座標をGPS等で取得する。コンピュータは、この動画の各フレーム画像を変換して真上から見た状態の正射画像を生成する。撮影時の基準点からの移動距離を表す直線軸上に、撮影地点の位置座標に基づいて正射画像を配置することで、直線状の連結画像を生成する。この連結画像に基づいて、横断歩道などの道路標示の位置および大きさを認識する。その後、絶対座標系に撮影時の走行軌跡および標示位置を写像することによって、各標示の絶対座標を得る。こうすることによって、路面標示を高い位置精度で認識することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、道路面に施された標示を含む路面標示地図を生成する技術に関する。
【背景技術】
【0002】
カーナビゲーションなどで使用される電子地図データには、多様な機能を実現するため、種々の詳細なデータが要求されている。その一つとして、横断歩道や中央線、車線境界線などの路面に描かれる標示が挙げられる。これらの標示を予め画像として取得しておくことにより、ユーザに対して実際の路面に近い画像を提供することができ、直感的に理解しやすい案内を実現することが可能となる。
【0003】
標示を含む路面の画像を効率的に生成するための技術として特許文献1、特許文献2などが挙げられる。
特許文献1は、車両の前後または側方に対してデジタルカメラ等により取得された画像から、路面の標示を含む静止画像を生成する技術を開示している。この技術では、目的の道路を車両で走行しながら、その車両に搭載されたデジタルカメラ等で路面の標示等を撮影する。そして、動画を構成する各フレーム画像を真上から見た状態の正射画像に変換し、撮影位置に応じて配列する。正射画像とは、道路の垂直上方の無限遠点に視点を置いた場合の道路画像を言う。複数のフレーム画像を配列することによって、1回の走行の軌跡(以下、パスと呼ぶこともある)に沿った道路面の合成画像を得ることができる。
【0004】
特許文献2は、2つのパスで得られた画像を合成して幅広の道路画像を合成する技術を開示している。この技術では、まず一つのパスで得られた画像に対して、道路の車線境界線など、本来、直線的に描かれているものが直線として表示されるようにアフィン変換をかける。そして、2つのパスで共通して撮影されている車線境界線などの座標が一致するように、一方のパスの画像をアフィン変換する。また、同様の方法によって、パスごとに画像をアフィン変換しながら合成することによって3以上のパスを合成する技術も開示している。
【0005】
特許文献3は、道路面の画像から、標示を抽出する技術を開示している。この技術では、航空写真などの画像から、画像処理によって道路ペイントに当たる部分を抽出し、抽出された部分の特徴量に基づいて道路ペイントの種別を判断する。特徴量としては、抽出した部分の長手方向を代表する軸と、道路ネットワークのリンクとの角度などが用いられている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2007−249103号公報
【特許文献2】特許第3820428号公報
【特許文献3】特開2007−122665号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
地図データには、経路探索用に道路をノード、リンクで表した道路ネットワーク、および地図を表示するために道路をポリゴンで表したデータなどがある。道路ネットワークでは、道路を1本または2本のリンクで代表させているため、リンクに付された座標は、道路のいずれの部分を表しているか厳密には分からない。描画データでは、道路を表すポリゴンの外周の位置座標は分かるものの、道路内部の地点についての位置座標は分からない。
例えば、道路内部の各地点の位置座標が詳細に得られている地図データが存在すれば、車両の現在位置に応じて、車両が道路のどの車線を走行しているかを判断して、車線変更の案内を行うことや、車両に横断歩道が接近していることを警告するなどの高機能な案内を実現することが可能となる。
しかし、従来の地図データは、これらの高精度、高機能な案内を実現するためには不十分な精度しか有していなかった。仮に車両の現在位置を精度良く把握したとしても、その位置情報を活かすだけの詳細な地図データが用意されていたとは言えなかったのである。
【0008】
路面の標示は道路上の位置座標を豊富にするための目的物として適している。例えば、横断歩道や車線境界線の位置座標が得られていれば、上述した高機能な案内の実現に資することができる。
しかし、従来技術は、いずれも道路面の合成画像を得ることを主目的としており、路面の標示の位置座標を得ることを目的としてはいなかった。
例えば、特許文献2の技術は、道路が直線か曲線かにかかわらず車両の進行方向をX軸とし、その移動距離をX座標として画像を表しているに過ぎず、このX軸に直交する方向にのみ画像をアフィン変換するに過ぎない。複数のパスで得られた画像について、このように定められたX座標が十分に一致しているという保証はないから、特許文献2の技術では路面の標示の位置座標を精度良く得ることはできない。
また、アフィン変換は、原画像の長方形領域を平行四辺形に歪ませる作用を持つ変換とも言えるから、特許文献2の技術では、アフィン変換によって画像の合成を行うことにより画質の劣化を招き、路面の標示の位置座標を一層低下させるという課題もある。
一方、特許文献1記載の技術は、1回のパスで得られる画像に対する処理を開示しているのみであり、道路全体を十分にカバーすることができない。
【0009】
従来技術では、道路面の画像から標示を抽出する際にも、標示の位置精度を十分に確保できないという課題があった。特許文献3は、道路ネットワークで与えられるリンクとの位置関係で標示の種別や位置を認定しているものの、先に説明した通り、リンクに付された座標は、道路のいずれの部分を表しているか厳密には分からないデータである。従って、リンクを基準として標示の位置を認識しても、十分な精度を確保することはできない。
また、特許文献3では、道路画像から抽出された領域の主軸とリンクとの角度等を特徴量として用いているが、主軸の方向は、この領域の抽出精度に依存しており、安定的に高い精度で求められるとは限らない。主軸に含まれる誤差を考慮して、標示の種別を判断する際の基準値の幅を広げれば、標示の誤認識を生じる可能性もある。
【0010】
本発明は、これらの課題を解決し、道路面の合成画像から、路面の標示を高い位置精度で抽出し、これらの標示を含む地図の生成を可能とすることを目的とする。
【課題を解決するための手段】
【0011】
本発明は、道路面に施された標示が含まれる路面標示地図をコンピュータによって生成する路面標示地図生成方法として構成することができる。
本発明では、まず、コンピュータは、撮影対象である道路を移動しながら標示を含む道路面を撮影した連続画像の画像データと、この画像データの撮影位置を表す位置座標データとを入力する。
上述の画像データは、例えば、車両などの移動体に搭載した撮影装置によって撮影することができる。撮影装置としては、例えば、ディジタル・ビデオ・カメラなどを用いることができる。また、撮影装置には、撮影時の位置座標データを取得する位置計測装置を搭載しておくことが好ましい。位置計測装置は、例えば、GPS(Global Positioning System)や、ジャイロなどの慣性航法装置などを単独または組み合わせて用いることができる。また、処理の便宜上、撮影した画像と位置座標データを入力し、両者を同期させて記録する記録装置を用意しておくことが好ましい。
【0012】
コンピュータは、入力された画像データを構成する各フレーム画像を変換して、道路面を真上から見た状態の正射画像を得る。正射画像は、各フレーム画像の一部を利用して生成してもよい。
次に、コンピュータが処理に用いる軸として、二次元平面において予め設定された方向に、撮影された道路を移動した際の移動軌跡であるパス上の基準点からの距離を表す直線状の距離軸を定義する。基準点は、パスの始点としてもよいし、パス上に設けられた任意の点としてもよい。距離軸は、二次元平面の任意の方向に定義できる。もっとも、x軸またはy軸と一致させておくことが、後述する各処理が簡易になるという点で好ましい。
そして、パスに沿った基準点からの距離に基づいて、正射画像を距離軸上に配置することにより、各パスの道路面を表す直線状の連結画像を生成する。この際、正射画像の一部が重なっても良い。正射画像は、例えば、その中心線が距離軸に沿う状態で配置することが好ましい。
こうすることで距離軸に沿った直線状の道路を表す連結画像を得ることができる。
【0013】
本発明では、コンピュータは、このように直線状となった連結画像に基づいて、道路面に施された標示の種別および位置を認識することができる。パスは道路面を撮影する際の走行軌跡である。走行しながら、位置座標データが取得されているから、位置精度が十分に確保されており、抽出される標示の位置精度も確保することができる。
また、距離軸上に正射画像を配置することにより、道路がカーブしている場合でも、直線状に伸びた連結画像を得ることができる。このように連結画像を生成した場合、道路上に施された標示は、距離軸に対して一定の位置関係で存在することになる。例えば、横断歩道や停止線は距離軸に直交するように描かれており、車線境界線は距離軸に平行に描かれることになる。このように連結画像内で抽出すべき標示の描かれ方が、標示ごとに一定となるため、標示を抽出するための条件を明確に設定することが可能となり、安定して標示を抽出することが可能となる。
【0014】
本発明において、正射画像を配置した後、一枚の画像として結合した画像データや、航空写真などのように最初から道路全体を一枚の画像として得られた画像データなどを用いたとすれば、距離軸に沿った直線状の連結画像を得ることは非常に困難である。画像処理によってこれらの画像から道路の形状を認識した上で、道路が直線状になるように画像を変換する必要がある。道路の形状は様々であるから、この変換に要する演算も、道路の形状に応じて異なるものとなり、一般化することは困難である。
これに対し、本発明では、正射画像を配置して連結画像を生成している。従って、距離軸上に正射画像を配置することにより、直線状に伸びた連結画像を比較的容易に得ることができるという利点がある。
【0015】
道路幅が広い場合には、一つのパスでは、道路全体の標示を撮影できない場合がある。このような場合には、走行位置が異なる複数のパスで撮影した画像を合成して道路全体の画像を得るようにしてもよい。
この場合、いずれかの車線上を複数回移動して撮影してもよい。前者の場合は、車線とパスとが1対1に対応することになる。後者の場合は、パスと車線とが複数対1に対応することになる。本発明はいずれの場合にも適用可能である。
複数のパスで画像を撮影する際、パスごとに位置精度が同一とは限らない。従って、各パスの連結画像を、それぞれの位置座標データに基づいて配置しても、標示の位置に不整合が生じることがある。本発明は、このような不整合を解消し、複数の連結画像を合成して道路全体の画像を得るための方法に活用することもできる。
上述の合成を行うため、本発明において、コンピュータは、まず、複数のパスのそれぞれについて標示を抽出する。そして、複数のパスのうち2本以上のパスの連結画像に共通して撮影されている領域内で、それぞれの連結画像で得られた標示に基づいて、パス間で対応する対応点を特定する。例えば、2本のパスに横断歩道が共通に撮影されている場合には、それぞれの連結画像において横断歩道の縞模様のいずれかの角を対応する対応点とすることができる。対応点の特定は、距離軸上に正射画像を配置した連結画像ではなく、位置座標データに基づいて、パス上の各位置に正射画像を配置した絶対座標系での連結画像を用いることが好ましい。
コンピュータが、複数のパス間で、抽出された標示の種別および位置関係を比較し、標示の対応関係を特定することによって、標示上のいずれかの点を対応点として自動的に特定するようにしてもよい。また、連結画像および抽出された標示をコンピュータのディスプレイ上に表示し、オペレータがこの表示を見て、対応点を指示するようにしてもよい。
こうして特定された対応点同士のずれは、位置座標の誤差を表すことになる。
【0016】
コンピュータは、複数のパスのうち1本を基準パスとして設定する。この設定は、対応点が特定された後に行っても良いし、その前に行っても構わない。そして、対応する対応点の位置が一致するように設定された移動ベクトルに基づいて、基準パス以外のパスの連結画像に対して補正をかけることで、複数のパスにまたがる道路面の合成画像を生成する。
この補正は、移動ベクトルに基づいて、連結画像を構成する領域ごとに平行移動することによって行う。この領域は、一旦、生成された連結画像を元の正射画像に相当するサイズまたは別の任意に設定されたサイズに分割したものでもよい。また、連結画像を生成する際に、正射画像を合成せずに配置するだけに留めておく場合には、正射画像ごとに位置を修正するようにしてもよい。
【0017】
こうすれば、撮影時の位置座標データに基づいて各パスの路面を表す連結画像を生成することができるため、位置精度が確保された状態で連結画像を得ることができる。
そして、複数のパスの中から、一つを基準パスと設定し、この基準パスは固定した状態で、他のパスの位置を修正するため、基準パスの位置精度を確保した状態で、各パス間の位置精度の誤差を解消することができる。
また、各パスの合成は、連結画像を領域ごとに平行移動することによって行うため、各領域の正射画像に歪みを加えることなく位置を修正することができる。従って、この修正時には道路面の標示は、各領域の正射画像内での相対的な位置精度を保持しておくことができる。
以上の作用によって、本発明の路面標示地図生成方法によれば、位置精度を確保した状態で、路面の標示を含む合成画像を得ることができる。
【0018】
本発明の路面標示地図生成方法において、基準パスは、オペレータが指定するなど、種々の方法で設定することができる。
コンピュータは各パスについて、位置座標データの精度の評価データを併せて入力し、この評価データに基づいて基準パスを設定するようにしてもよい。例えば、複数のパスのうち、評価データに基づいて位置精度が最も高いと評価されるパスを基準パスと設定する方法が挙げられる。こうして設定された基準パスに他のパスを合わせるようにして合成画像を生成すれば、最も高い位置精度を確保することが可能となる。
評価データは、直接に位置精度を定量的に表すデータとしてもよいし、位置精度の算出に用いることができるデータとしてもよい。
【0019】
本発明では、距離軸上に正射画像を配置して得られた直線状の連結画像に基づいて標示を特定する。この座標系は、位置座標データに対応する絶対座標系とは異なるため、標示の位置も、連結画像内での相対的な位置でしかない。したがって、上述の位置合わせその他の処理に活用するためには、標示の位置を絶対座標系での位置に変換することが好ましい。
この変換方法の例は、例えば次の通りである。まず、標示の代表点から距離軸への垂線の足を標示の基準点とする。そして、位置座標データに基づく絶対座標系に示したパス上で基準点の位置を求め、この基準点からパスに垂直に垂線を描く。こうすれば、垂線の端点に標示の代表点を配置することによって、標示の絶対座標系での位置座標を得ることができる。また、各標示の四隅に位置座標データに対応する相対的な座標と絶対的な座標を持たせ、バイリニア変換などの変換を行ってもよいし、各標示の相対座標と、そのフレームに対応した時刻の軌跡データから、再度、絶対座標を再計算しても良い。
【0020】
標示は、画像データとして抽出・保存しておき、道路画像の表示等に利用する方法をとってもよい。
また、標示の種別ごとに幾何形状を定めておき、標示を包含するように位置およびサイズを決定する方法を採っても良い。例えば、横断歩道については、予め矩形または平行四辺形で表現するというように幾何形状を決めておく。そして、連結画像から横断歩道を抽出した結果に基づき、この矩形または平行四辺形の代表点の位置およびサイズを決定するのである。代表点には重心位置などを用いることができ、サイズには対角線長さなどを用いることができる。代表点およびサイズとして、対角にある頂点の位置を用いてもよい。他の標示についても同様である。
標示の抽出結果を、幾何形状の位置およびサイズで保存する場合には、画像データとして保存する場合よりもデータ量を削減することができる利点がある。標示を伴う道路画像を再現する際には、標示の種別ごとに用意された典型的なパターンを、幾何形状の位置およびサイズに合わせて、拡大・縮小等して表示すればよい。
【0021】
本発明において、連結画像において標示を認識する際には、予め距離軸から所定距離以上離れた両端領域を削除しておくようにしてもよい。撮影した画像を変換して正射画像を得る場合、画像の両端は、変換時の歪みが比較的大きく生じやすい。正射画像を配置して得られた連結画像の両端領域を予め削除しておけば、このように歪みの大きい場所が除かれるため、位置精度が比較的高い良好な画像を用いて標示を認識することが可能となる。
【0022】
本発明において、標示の認識は種々の方法で行うことができる。
第1の方法として、パターンマッチングを用いる方法が挙げられる。この方法では、まず、連結画像から標示に用いられる所定色の部分を抽出する。そして、標示の種別ごとに予め用意された標示パターンと抽出された部分とのマッチングによって標示の認識を行うのである。抽出すべき所定色としては、白および黄色を用いることができる。かかる領域を精度良く抽出するため、連結画像をグレースケール化し、所定以上の明度を有する領域を抽出する方法を採ることが出来る。
この第1の方法は、比較的、複雑な形状の標示を抽出するのに適している。第1の方法を適用できる標示例として、矢印、Uターン、通行規制の時刻標示、転回禁止、速度規制などの数字、横断歩道予告、バスレーン文字、終わり記号などが挙げられる。
【0023】
標示を認識する第2の方法として、標示に該当する部分の幾何学的な条件に基づいて標示を特定する方法が挙げられる。この方法では、第1の方法と同じく、まず、連結画像から標示に用いられる所定色の部分を抽出する。そして、この抽出された部分の距離軸に対する方向および大きさに基づいて、標示の種別を認識する。標示を認識するための条件を以下に例示する。
横断歩道…距離軸に平行な方向に、均等な平行線が複数認識される領域;
自転車横断帯…距離軸に直交する線分のうち、一定の間隔で描かれている2本線を表しているもの(横断歩道の付近という条件を加味してもよい);
停止線…距離軸に直交する線分のうち、1本線を表しているもの;
車線境界線…距離軸に平行な線分のうち、所定長さ以上のもの;
減速帯…距離軸に直交する所定長さ線分が、距離軸方向に平行に配置されているもの;
ゼブラ…所定間隔で平行線が描かれている領域のうち、横断歩道および減速帯に該当しないもの;
【0024】
本発明は、上述の通り、連結画像から標示を抽出することができる。しかし、実際の撮影時には、路面標示以外の種々の対象が写り込むことがある。例えば、車両で道路を走行しながら撮影を行う場合には、自車が走行する車線の隣に停車または走行する他の車両が画面内に写り込むことがある。
このような写り込みがある画像を用いて生成された連結画像内には、路面標示以外の認識不能な種々の画像(以下、「ゴミ画像」と呼ぶ)が含まれてしまう。この状態で、標示の認識をしようとすれば、ゴミ画像の部分が何らかの標示と誤認識されたり、認識不能でエラーとなったりするおそれがある。
かかる弊害を抑制するため、本発明では、ゴミ画像を認識するとともに、その結果を反映させて路面標示を認識させるようにしてもよい。
【0025】
ゴミ画像を認識して、路面標示の認識に反映させる第1の方法は、次の通りである。
まず、コンピュータは、連続するフレーム画像間でオプティカルフローを求める。オプティカルフローとは、連続(隣接)する2つのフレーム画像のうち、前のフレーム画像内の複数の特徴点から、次のフレーム画像内の対応する特徴点への移動を表す複数のベクトルで構成されるものである。連続する2つのフレーム画像とは、必ずしも連続して撮影されたフレーム画像である必要はなく、撮影されたフレーム画像を、所定の距離間隔や時間間隔などで間引いた後のフレーム画像群で定義してもよい。
コンピュータのCPUは、こうして得られたオプティカルフローに基づいて、標示以外の写り込み、つまりゴミ画像をフレーム画像内で抽出する。フレーム画像内に路面標示とは異なる異物が写り込んでいる場合、そのオプティカルフローも、路面標示の部分のオプティカルフローとは大きさおよび方向が異なるからである。写り込みの抽出は、オプティカルフローの大きさおよび方向の双方に基づいて評価してもよいし、いずれか一方に基づいて評価してもよい。
【0026】
次に、CPUは、写り込みの抽出結果を反映した正射画像を生成する。ゴミ画像を考慮せずに生成された正射画像に加えて、ゴミ画像の正射画像を生成してもよい。また、ゴミ画像を考慮せずに生成された正射画像に代えて、フレーム画像からゴミ画像を除去した画像に基づいて正射画像を生成してもよい。
【0027】
CPUは、こうして生成された正射画像に基づき、ゴミ画像を反映した標示の認識を行う。標示の認識の前処理としてゴミ画像を反映させる場合には、写り込みの抽出結果を反映した連結画像を生成し、この連結画像に基づいて標示を認識する。かかる連結画像は、例えば、ゴミ画像を考慮せずに生成された正射画像を用いて得られた連結画像から、ゴミ画像を除去する方法で生成することができる。また、フレーム画像からゴミ画像を除去した画像に基づいて得られた正射画像を用いて連結画像を生成してもよい。
標示の認識の後処理としてゴミ画像を反映させる場合には、まず、CPUは、ゴミ画像を考慮せずに生成された正射画像を用いて得られた連結画像を用いて路面標示を認識する。そして、認識結果と、ゴミ画像の正射画像から得られた連結画像との対比により、ゴミ画像を誤って路面標示と認識したものと判断される場合には、その認識結果を除去する。
【0028】
このようにオプティカルフローを用いることによって、路面標示以外の異物の写り込みによるゴミ画像の部分を認識することができる。また、この認識結果を前処理または後処理として路面標示の認識に反映させることにより、路面標示の認識精度を向上させることができる。
【0029】
ゴミ画像を認識して、路面標示の認識に反映させる第2の方法は、次の通りである。
CPUは、距離軸上に配置された正射画像同士が重なる部分を切り出す。そして、この重複部分の正射画像間の各点の階調差分を求める。階調差分とは各点に記録されている色成分の差分である。カラー画像の場合、RGBの成分ごとに階調差分を求めても良いが、HSVの3要素に分解した上で明度(V)差分を求めることが好ましい。正射画像同士の重複部分では路面標示も重なっているはずなので、路面標示に対する階調差分は所定値以下となる。これに対し、路面標示以外の異物は、撮影時刻や撮影場所が異なれば正射画像への写り込みの形状、大きさが異なるのが通常であるため、大きな階調差分となる。従って、所定の閾値を超える階調差分が得られた点を抽出することにより、ゴミ画像を抽出することが可能となる。
こうしてゴミ画像が抽出されると、オプティカルフローの場合と同様、ゴミ画像の抽出結果を前処理または後処理で反映して、路面標示を認識することができる。
【0030】
上述の第2の方法でも、路面標示以外の異物の写り込みによるゴミ画像の部分を認識することができ、路面標示の認識精度を向上させることができる。また、第2の方法は、オプティカルフローを用いるよりも、処理負荷が軽いという利点もある。
【0031】
第2の方法を用いる場合には、正射画像に平滑化フィルタを適用した上で、階調差分を求めることが好ましい。画像を構成する画素単位で厳密に階調差分を求めると、正射画像を生成する際の位置誤差などによって、路面標示の部分も大きな階調差分が生じる場合があるからである。平滑化フィルタを適用することにより、画像内の階調変化を鈍化させることができるため、位置誤差などの影響を緩和し、ゴミ画像の抽出精度を向上することができる。
【0032】
ゴミ画像の抽出は、フレーム画像全体に適用してもよいが、処理速度を向上させるため、一部にのみ適用してもよい。
例えば、正射画像の生成対象となる部分を対象とすることができる。
また別の態様として、パスを含む所定範囲が除かれた所定領域をゴミ画像の抽出対象としてもよい。パスに沿って移動しながら撮影を行うため、パス周辺の領域には、路面標示以外の異物が写り込んでいる可能性は低い。これは、自車が走行する走行レーンにおいては、前方を走行する車両が画像作成範囲に入ってこないように車間距離を開けて走行することが可能だからである。一方、走行レーン以外のレーンは、異物の写り込みを回避する手段がないのが現状である。
更に、両者を組み合わせた場合に正射画像の生成対象となる部分のうち、パスを含む所定範囲が除かれた所定領域をゴミ画像の抽出対象としてもよい。
【0033】
本発明は、必ずしも上述した特徴を全て備えている必要はなく、適宜、その一部を省略してもよいし、いくつかの特徴を適宜、組み合わせて備えるようにしてもよい。
本発明は、上述の路面標示地図生成方法に限らず、この路面標示地図生成方法によって道路面に施された標示が含まれる路面標示地図を生成する生成装置として構成してもよい。また、上述の路面標示地図生成方法をコンピュータに実現させるためのコンピュータプログラムとして構成してもよいし、かかるコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体として構成してもよい。記録媒体としては、例えば、フレキシブルディスクやCD−ROM、光磁気ディスク、ICカード、ROMカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置(RAMやROMなどのメモリ)および外部記憶装置等、コンピュータが読取り可能な種々の媒体を利用できる。
【発明の効果】
【0034】
道路を走行しながら取得したフレーム画像を正射変換して得られた正射画像を配置することにより、走行軌跡(パス)に沿って位置精度のよい連結画像を得ることができる。
【図面の簡単な説明】
【0035】
【図1】実施例としての道路面撮影システムの構成を示す説明図である。
【図2】実施例としての路面標示地図生成装置の構成を示す説明図である。
【図3】路面標示地図の生成過程における中間データを示す説明図である。
【図4】実施例における道路画像の生成例を示す説明図である。
【図5】位置合わせ加工の概要を示す説明図である。
【図6】交差点が存在する場合の位置合わせの手順を示す説明図である。
【図7】連結画像生成処理のフローチャートである。
【図8】位置合わせ加工のフローチャートである。
【図9】基準パス設定処理のフローチャートである。
【図10】連結画像移動処理のフローチャートである。
【図11】位置合わせ加工の処理例(1)を示す説明図である。
【図12】位置合わせ加工の処理例(2)を示す説明図である。
【図13】位置合わせ加工の処理(2)の加工結果を示す説明図である。
【図14】路面標示の絶対位置座標の取得方法を示す説明図である。
【図15】透明化ポリゴン設定処理の概要を示す説明図である。
【図16】透明化ポリゴン設定処理のフローチャートである。
【図17】透明化ポリゴンを設定する前の道路画像例を示す説明図である。
【図18】透明化ポリゴンの設定後の道路画像例を示す説明図である。
【図19】ペイント認識処理のフローチャートである。
【図20】縦配置処理の内容を示す説明図である。
【図21】横断関連ペイント抽出処理のフローチャートである。
【図22】サイドカット処理例(1)を示す説明図である。
【図23】サイドカット処理例(2)を示す説明図である。
【図24】横断歩道候補領域の抽出処理等を示す説明図である。
【図25】自転車横断帯/停止線候補領域の抽出処理等を示す説明図である。
【図26】境界線(実線)抽出処理の内容を示す説明図である。
【図27】境界線(破線)抽出処理の内容を示す説明図である。
【図28】矢印抽出処理の内容を示す説明図である。
【図29】ゼブラ抽出処理の内容を示す説明図である。
【図30】Uターン抽出処理の内容を示す説明図である。
【図31】転回禁止抽出処理の内容を示す説明図である。
【図32】規制抽出処理の内容を示す説明図である。
【図33】数字抽出処理の内容を示す説明図である。
【図34】横断歩道予告抽出処理の内容を示す説明図である。
【図35】減速帯抽出処理の内容を示す説明図である。
【図36】路面塗装抽出処理の内容を示す説明図である。
【図37】バスレーン文字抽出処理の内容を示す説明図である。
【図38】終り記号抽出処理の内容を示す説明図である。
【図39】相対座標変換処理の内容を示す説明図である。
【図40】異物の写り込みを例示する説明図である。
【図41】ゴミ画像の認識結果の反映方法を示すフローチャートである。
【図42】ゴミ画像認識処理(1)のフローチャートである。
【図43】オプティカルフローの例である。
【図44】走行車両がある場合のオプティカルフローの例である。
【図45】停止車両がある場合のオプティカルフローの例である。
【図46】ゴミ画像認識処理(2)のフローチャートである。
【図47】ゴミ画像の認識例を示す説明図である。
【発明を実施するための形態】
【0036】
本発明の実施例について以下の順序で説明する。
A.システム構成:
A1.道路面撮影システム:
A2.路面標示地図生成装置:
B.処理概要:
B1.中間データ構成:
B2.処理例:
B3.位置合わせ加工概要:
C.路面標示地図生成方法:
C1.連結画像生成処理:
C2.位置合わせ加工:
C3.基準パス設定処理:
C4.連結画像移動処理:
C5.透明化ポリゴン設定処理:
C6.ペイント認識処理:
D.効果:
E.変形例:
【0037】
A.システム構成:
本実施例では、車両に搭載したビデオカメラで撮影した道路面の画像を用いて、路面の標示を含む地図(以下、「路面標示地図」と呼ぶ)を生成する方法を示す。
本実施例のシステムは、道路面撮影システムと路面標示地図生成装置とを備える。道路面撮影システムは、道路を走行しながら道路面の画像をビデオカメラで撮影するシステムである。本実施例では、対象となる道路を、異なる走行軌跡で複数回走行し、それぞれ画像を撮影する。
路面標示地図生成装置は、道路面撮影システムで撮影された道路面の画像に基づいて路面標示地図を生成する装置である。まず、上述の各走行軌跡上に、撮影された画像を正射画像に変換した上で配置することで、道路面の一部の車線についての連結画像を生成する。そして、複数の走行軌跡の画像を、位置座標が整合するように配置することで道路全体の画像を生成する。また、こうして生成された連結画像から道路面の標示を抽出する。
以下、道路面撮影システムと路面標示地図生成装置のシステム構成について説明する。
【0038】
A1.道路面撮影システム:
図1は実施例としての道路面撮影システムの構成を示す説明図である。
道路面撮影システム100は、車両に搭載されたシステムである。図の下方のブロック図に基づき、システム構成を説明する。
ビデオカメラ120は、走行中の道路面の画像を撮影する。
位置計測部110は、撮影中の位置座標を計測する装置である。位置計測部110は、GPS(Global Positioning System)114、IMU(InertialMeasurement Unit)116、DMI(Distance Measuring Instrument)118およびコントローラ112を備える。GPS114は、全地球測位システムである。IMU116は、内部に3軸のジャイロおよび加速度センサを備えた慣性計測装置である。DMI118は、車輪の回転を検出して移動距離を計測する装置である。
【0039】
コントローラ112は、GPS114、IMU116、DMI118からの信号を受け、撮影時の位置座標を逐次出力する。位置座標は任意の座標系を採ることができるが、本実施例では、緯度経度および標高を用いた。
また、これらの信号の取得後、位置座標の計測精度の評価値である自己推定位置精度σを併せて出力する。一般にGPS114は、位置座標の検出に使用される人工衛星の配置、電波の受信状況、建造物などに反射した電波を受信することによるマルチパスの有無などによって検出精度が変動することが知られている。またディファレンシャル測位では、基準局の稼働状況によっても検出精度は影響を受ける。
自己推定位置精度σは、任意に定義可能である。例えば、GPS114の人工衛星の配置によって定まる精度低下率(DOP(Dilution of Precision))を用いて自己推定位置精度σを算出するようにしてもよい。
自己推定位置精度σは、取得されたデータを後述する路面標示地図生成装置で処理する際に、解析するようにしてもよい。
【0040】
記録装置130は、ビデオカメラ120および位置計測部110の出力信号を同期して記録する。本実施例では、記録装置130は、汎用のパーソナルコンピュータに、記録用のハードディスク140を増設した装置によって構成した。ハードディスク140内には、図示する通り、画像データ142、同期データ144、計測データ146が記録される。画像データ142は、ビデオカメラで撮影された画像の動画ファイルである。計測データ146は、位置計測部110で得られた位置座標である。同期データ144は、画像データ142と計測データ146との取得時刻を対応づけるデータである。同期データ144および計測データ146を参照することにより、画像データ142のフレームごとに撮影地点の位置座標を得ることができる。
撮影時の記録用のデータ構造は、上述した構造に限られない。例えば、計測データ146は、画像データ142の各フレームの位置座標を順次、格納するデータとしてもよい。こうすることにより、同期データ144を省略することが可能となる。かかるデータを取得するためには、例えば、記録装置130がビデオカメラ120のフレームごとに同期信号を位置計測部110に出力し、その時の位置座標を取得する方法を採ることができる。
【0041】
図の上方に、車両に搭載した状態を模式的に示した。
ビデオカメラ120は、前方画像を撮影できるよう、車両の前方に設置する。画角を広げるために広角レンズを装着してもよい。
GPS114のアンテナ114Aは、車両のルーフ上部に設置する。本実施例では、GPS用の人工衛星からの電波を確実に受信し、十分な位置精度を確保することができるよう、アンテナ114Aを車両の前後に主副の2台設置した。いずれか一台のみを用いるものとしてもよい。
IMU116、DMI118、コントローラ112は、それぞれ車両の後部に設置した。DMI118は、後輪の回転を検出可能に装着されている。
記録装置130およびハードディスク140は車室内の任意の場所に設置可能であるため、図示を省略した。
【0042】
A2.路面標示地図生成装置:
図2は実施例としての路面標示地図生成装置の構成を示す説明図である。道路面撮影システムで撮影された道路面の画像に基づいて路面標示地図を生成するための装置である。本実施例では、完全に自動で路面標示地図を生成するのではなく、適宜、オペレータからのコマンドによる指示を受けながら対話型または半自動で処理を進める方法を採用した。
図中には、路面標示地図生成装置200の機能ブロックを示した。本実施例では、路面標示地図生成装置200は、図示する各機能を実現するためのコンピュータプログラムを、汎用のパーソナルコンピュータにインストールすることによってソフトウェア的に構築した。これらの機能ブロックの一部は、OS(Operating System)によって提供してもよい。また、これらの機能ブロックは、それぞれハードウェア的に構成することも可能である。また、ここでは説明の便宜上、スタンドアロンで稼働する装置として説明するが、各機能ブロックをネットワークで接続された複数のコンピュータに分散して用意してもよい。
【0043】
主制御部201は、各機能ブロックを統合制御する。データ入力部204は、道路面撮影システム100で取得した各種データを記録したハードディスク140から、画像データ142、同期データ144、計測データ146を入力する。本実施例では、ハードディスク140を道路面撮影システム100から路面標示地図生成装置200に接続し直すことによって、これらのデータを受け渡す方法を採ったが、ネットワーク経由でデータを送信する方法や、DVDなどの記録媒体を用いてデータを受け渡す方法を採ってもよい。計測データには、位置計測部110で得られた位置座標が含まれるから、データ入力部204は、本発明における入力部に相当する。
【0044】
コマンド入力部202は、コンピュータに備えられたキーボードやマウスなどの操作を介して、オペレータからのコマンドを入力する。
表示制御部203は、コンピュータのディスプレイに、路面標示地図生成装置200での処理結果を表示したり、オペレータが種々のコマンドを指示するための画面を表示したりする。コマンド入力部202、表示制御部203の機能は、コンピュータのOS(Operating System)によって提供してもよい。
【0045】
軌跡データ算出部205は、計測データ146に基づき、画像データ142を撮影した時の走行軌跡(以下、「パス」と呼ぶこともある)を表すデータを生成する。本実施例では、軌跡データ算出部205は、道路面撮影システム100によって得られる位置座標を記録した計測データ146に対して、位置座標が既知の基準局から提供されている検出情報に基づく補正を施すことによって軌跡データを生成する。基準局の情報を用いて位置座標を補正する技術は周知であるため、説明を省略する。この処理によって位置座標の精度を向上させることが可能となる。
もっとも、基準局からのデータを用いることは必須ではない。計測データ146で得られた位置座標をそのまま用いるものとしてもよい。かかる場合には、軌跡データ算出部205は省略することも可能である。
【0046】
画像変換部206は、正射投影、即ち画像データ142の各フレーム画像を真上から見た状態に変換して正射画像を生成する。
連結画像生成部としての1パス合成部207は、画像変換部206によって得られた各フレーム画像の正射画像を、その正射画像内の代表点が、撮影時の位置座標に基づいて定まる位置座標に来るように配置することによって、撮影時の走行軌跡(パス)に沿った道路面の画像を合成する。こうして合成された画像を、連結画像と呼ぶものとする。合成された連結画像は、処理データ記憶部210に保存される。
本実施例では、それぞれの道路に対して、異なる走行軌跡で、複数回走行して、撮影を行う。1パス画像合成部207は、それぞれのパスごとに合成画像を生成する。この結果、連結画像は、パスの本数に応じて、複数生成される。
【0047】
位置合わせ処理部220は、1パス画像合成部207で生成された複数の連結画像を、位置合わせ処理、即ち連結画像間の位置座標の誤差を修正して路面の画像が整合するように配置する処理を行うことで、道路全体の正射画像(以下、「道路画像」と呼ぶこともある)を生成する。位置合わせ処理は、オペレータからの指示に応じて行う。処理内容は後述する。
位置合わせで得られた道路画像は、処理データ記憶部210に保存される。
【0048】
透明化ポリゴン設定部221は、得られた道路画像上に、オペレータの指示によって、透明化ポリゴンを設定する。上述の位置合わせを行う際には、隣接するパスに対応する正射画像の一部が重なり合うことがある。そして重なった部分では、下側に配置された正射画像の方に、路面標示が鮮明に写されている場合もある。透明化ポリゴンは、このような場合に、下側の画像が表示されるように上側の正射画像の一部を透明化する処理を施す領域を指定するためのポリゴンである。透明化ポリゴンを設定することにより、路面標示を正確に把握可能な地図を提供することが可能となる。
【0049】
標示認識部としてのペイント認識部223は、道路面の標示(以下、「ペイント」と呼ぶこともある)を認識する。本実施例では、1パス画像合成部207で生成された連結画像に基づいて標示の認識を行うものとした。ペイント認識結果は、処理データ記憶部210に保存される。
【0050】
路面標示地図生成装置は、以上で生成された道路画像に基づいて路面標示地図を出力することができる。例えば、道路画像を印刷可能なファイルとして出力してもよい。また、路面標示地図を電子地図として生成するように、道路画像を電子データとして出力してもよい。また、これらの出力に先立って、道路画像に基づいて路面標示の位置座標や形状データを取得する処理を行うようにしてもよい。
【0051】
B.処理概要:
B1.中間データ構成:
図3は路面標示地図の生成過程における中間データを示す説明図である。これらのデータは、順次、処理データ記憶部210(図2参照)に記憶される。
本実施例では、道路を走行しながらビデオカメラ120および位置計測部110で取得したデータが記録装置130としてのパーソナルコンピュータによってハードディスク140内に格納されている。格納されるデータとしては、画像データ142、計測データ146、および両者の同期をとるための同期データ144がある。
【0052】
計測データ146は、撮影時の位置座標データの記録である。本実施例では、基準局データ150を参照して、計測データ146を補正することにより、軌跡データ210aを算出する。これは、先に図2で説明した軌跡データ算出部205が行う処理である。基準局データ150は、位置座標が既知の基準点におけるGPSでの検出結果を表すデータであり、例えば、国土地理院が提供している基準点データなどを用いることができる。ここで得られた軌跡データ210aは、以下、それぞれの処理において、道路面の画像を撮影した際の軌跡(以下、「パス」と呼ぶこともある)を緯度経度、高度からなる絶対座標で表すデータとして利用される。
【0053】
一方、画像データ142、同期データ144、軌跡データ210aからは、路面テクスチャ210cが生成される。また、同期データ144と軌跡データ210aから、路面軌跡データが生成される。
本実施例では、各道路を複数回走行して、道路面の画像を撮影する。従って、路面軌跡データ210bおよび路線軌跡データ210bは、各道路に対して複数パス分、生成されることになる。
【0054】
路面テクスチャ210cおよび路線軌跡データ210bを用いて、連結画像210dが生成される。連結画像210dは、図2中の1パス画像合成部207によって生成される画像である。つまり、連結画像210dとは、路線軌跡データ210bで表される位置座標に基づき、各路面テクスチャ210cを配置することによって生成される各パスの路面画像である。連結画像210dも、各道路に対して複数パス分、生成されることになる。
連結画像210dは、路面テクスチャ210cを結合した一つの画像ファイルとして生成することもできる。本実施例では、後に続く処理の便宜上、合成画像として生成するのではなく、路面テクスチャ210cを配置して連結画像210dを生成するための情報(以下、「登録データ」と呼ぶこともある)を、路面テクスチャ210cの各画像と対応づけて格納するものとした。かかる情報には、路面テクスチャ210cを配置する位置座標、配置する際の姿勢(角度)、および隣接する路面テクスチャ210cを特定する情報、隣接する路面テクスチャ210cとの上下関係などを含めることができる。
【0055】
こうして得られた連結画像210dを用いて、位置合わせおよび透明化ポリゴン設定などの処理を行う。これらの処理は、図2の位置合わせ処理部220、透明化ポリゴン設定部221が行う処理である。この処理によって、複数パス分の連結画像210dを合成して、道路ごとに道路画像210eを得ることができる。
道路画像210eについても、合成画像として生成してもよいし、路面テクスチャ210cを配置して道路画像210eを生成するための情報を、路面テクスチャ210cの各画像と対応づけて格納するようにしてもよい。本実施例では、後者の方法を採用した。それぞれの路面テクスチャ210cを配置する位置座標、配置する際の姿勢(角度)などの情報は、道路画像用登録データ210fとして保存されている。また、位置合わせの過程で、路線軌跡データ210bに対して、位置誤差を修正する処理が施されるため、この原データに対する修正過程を表す情報を、軌跡用登録データ210gとして保存する。
【0056】
この他、連結画像210dのデータ(路面テクスチャ210c、路線軌跡データ210bを含む)も併せて保存する。原データである画像データ142、軌跡データ210aも保存しておくことが好ましい。仮に、合成画像化された形で連結画像210dを保存している場合には、道路画像210eは、連結画像210dを合成することになるため、合成の繰り返しで原データに比較して画質が劣化するおそれがある。これに対し、本実施例のように、路面テクスチャ210cも含めて、原データに近いデータを残しておくことにより、これらのデータを利用して道路画像210eを生成することが可能となる。従って、合成の繰り返しなど、画像データに重畳的に画像処理が施されることを抑制でき、道路画像210eの画質を向上させることが可能となる。
【0057】
B2.処理例:
次に、本実施例における処理の概要理解を容易にするため、処理例を示す。
図4は実施例における道路画像の生成例を示す説明図である。図4(a)には、1本のパスに沿って得られた連結画像の生成例を示し、図4(b)には、複数パスの連結画像を配置して得られた道路画像の例を示している。
図4(a)中の直線L41〜L44は、それぞれ道路面撮影システム100で走行しながら道路画像を撮影した際の走行軌跡(パス)を表している。図4(a)のPIC41は、パスL43を走行して得られた画像データに基づいて生成された連結画像である。本実施例では、広角レンズを用いて撮影しているため、1回のパスでも複数車線を覆うだけの連結画像を得ることができている。連結画像の両端が、のこぎり刃状にギザギザになっているのは、画像データの各フレームを正射投影した際に生じる形状歪みの影響である。この連結画像PIC41は、ギザギザの山数に応じたフレーム数の正射画像(路面テクスチャ)を配置して生成されているのである。
このような連結画像は、図中のパスL41〜L44のそれぞれに対して得られる。
【0058】
図4(b)は、パスL41〜L44に対する連結画像を合成して得られた道路画像PIC42を示している。図4(a)よりも幅広く、反対車線まで含めて道路画像が生成されていることが分かる。複数パスの連結画像を合成する際、各パスの位置座標に誤差があると、連結画像間にずれが生じる。これらのずれが存在すると、図4(b)中の横断歩道、車線境界線などの標示も途中でずれた状態で表示されてしまう。本実施例では、各パスの連結画像間の位置座標の誤差を修正しつつ合成を行う。この処理を位置合わせと呼ぶ。このように位置合わせを行って連結画像を合成することにより、図4(b)に示すように、横断歩道、車線境界線などの標示が整合した道路画像を得ることができる。
【0059】
B3.位置合わせ加工概要:
図5は位置合わせ加工の概要を示す説明図である。本実施例では、複数の連結画像に共通して撮影されている標示に基づいてオペレータが指定した対応点の位置を合わせるように、連結画像を平行移動することによって位置合わせを行う。
図5(a)には対応点が1つだけ指定された場合の処理方法を示した。図中には、2本の連結画像PIC51、PIC52が描かれている。これらには、それぞれ菱形の標示、つまり横断歩道の予告標示が含まれている。ただし、図5(a)左側の状態では、連結画像PIC51、PIC52には相対的に位置誤差があるため、標示の位置がずれている。
オペレータは、この表示画面を見ながら、マウス等のポインティングデバイスを用いて対応点を指定する。図の例では、横断歩道の予告表示の頂点に当たるP51、P52を指定した状態を示した。これらの対応点P51、P52は、連結画像PIC51、PIC52に位置誤差がなければ、本来、同じ位置に重なるはずの点である。そこで、本実施例では、対応点P51、P52が一致するよう、図中に矢印で示すように連結画像PIC51、PIC52を平行移動させる。
この際、連結画像PIC51、PIC52の一方を基準とし、他方を平行移動する方法を採った。図の例では、連結画像PIC51を基準とし、連結画像PIC52を移動させた例を示している。このように移動することにより、予告標示のずれが解消した状態の道路画像PIC53を得ることができる。
【0060】
図5(b)には対応点が複数指定された場合の処理方法を示した。図中には、2本の連結画像PIC54、PIC55が描かれている。これらには、それぞれ横断歩道の予告標示が含まれている。但し、図5(b)の左側の状態では、連結画像PIC54、PIC55には相対的に位置誤差があるため、標示の位置がずれている。
この状態で、オペレータが、2組の対応点を指定したとする。対応点P54、P53の組と、対応点P56、P55の組である。連結画像PIC54では、連結画像PIC55に含まれる予告標示M52は全体が描かれており、連結画像PIC54に含まれる予告標示M51は一部が消えている。このような状態であっても、対応点P55、P56が対応することは明らかであるため、対応点として指定することは可能である。
このように複数組の対応点が指定されると、連結画像PIC54を基準として、それぞれの対応点が一致するように、連結画像PIC55を移動させる。ただし、対応点P53をP54に一致させるための第1の移動量と、対応点P55をP56に一致させるための第2の移動量とが同じであるとは限らない。そこで、対応点P53とP55との間の領域では、第1の移動量、第2の移動量を直線補間して、各点の移動量を設定する。こうすることにより、予告標示のずれが解消した状態の道路画像PIC56を得ることができる。
【0061】
図5(b)中には、透明化ポリゴンの設定例も併せて示した。
この例では、連結画像PIC54中の予告標示M51は半分が欠けている。この状態で位置合わせを行うと、この例では、連結画像PIC54をPIC55の上側に重ねるように表示しているから、連結画像PIC55の予告標示M52は、連結画像PIC54によって覆い隠されてしまう。この結果、連結画像PIC55では完全な状態で描かれている標示M52を道路画像PIC56で活かすことができない。
そこで、このような場合に、オペレータの指示によって予告標示M52を取り囲むように透明化ポリゴンTP50を設定する。透明化ポリゴンTP50が設定された箇所では、上側の連結画像が透明化され、切り取られたように表示される。この結果、透明化ポリゴンTP50の部分では、連結画像PIC54の下側に配置された連結画像PIC55に描かれている予告標示M52が表示される。
本実施例では、このように透明化ポリゴンを設定可能とすることによって、それぞれの連結画像で描かれている標示を、道路画像においても有効活用することができる。
【0062】
図6は交差点が存在する場合の位置合わせの手順を示す説明図である。図の煩雑化を避けるため、ここでは連結画像のパスの位置関係のみを示した。図中には、2つの交差点周辺の道路が描かれている。縦の道路では、それぞれパスBP61、BP62に沿って連結画像が得られているとする。横の道路については、破線で示したパスBP63b、BP64b、NP61bに沿って連結画像が得られているとする。
【0063】
本実施例では、複数のパス間の位置合わせを行う際には、いずれか一つのパスを基準パスに設定し、他のパスを平行移動して基準パスに合わせる。基準パス以外のパスを、以下、標準パスと呼ぶものとする。基準パスおよび標準パスは、任意の方法で設定可能であるが、本実施例では、後述する通り、位置精度が高いものを基準パスとして設定している。
図6の例では、縦の道路については、それぞれ単一のパスしか存在しないため、パスBP61、BP62が基準パスとなる。
横の道路については、区間D61ではパスBP63bとNP61bのうち位置精度が高い側を基準パスとし、区間D62についてはBP64bとNP61bのうち位置精度が高い側を基準パスとする。ここでは、それぞれパスBP63b、BP64bが基準パスとして設定されているものとする。更に、パスBP63b、BP64b間の位置精度を比較して、優劣を決める。パスBP63b、BP64bはそれぞれ区間D61、D62の基準パスではあるが、一本の道路に配置された連続するパスなので、これらのパス間でも位置合わせを行う必要があるからである。図6の例では、パスBP63bの方が、パスBP64bよりも位置精度が高いものとする。
この結果、横のパスについては、基準パスBP63b>基準パスBP64b>標準パスNP61bの順に位置合わせの優先度が定まる。
【0064】
次に、上述の優先度に従って、それぞれのパスの位置合わせを行う。縦のパスBP61、BP62は既に位置合わせが完了しているものとする。
まず、基準パスBP63bの位置合わせを行う。オペレータの指示によって、基準パスBP63b上の対応点P63bが指定され、その本来の位置として、点P63aが指定されたとする。この結果、基準パスBP63bは、対応点P63bが、点P63aに一致するように移動され、実線で示した基準パスBP63aが得られる。
図示を省略したが、基準パスBP63bに対応した連結画像も基準パスBP63aに合わせて移動する。本実施例では、基準パスBP63bに沿って路面テクスチャを配置することによって連結画像を表示しており、これらの路面テクスチャを合成してはいない。従って、基準パスBP63aへの移動が行われた場合には、基準パスBP63aに沿うように、各路面テクスチャの位置を平行移動することによって、基準パスBP63aの連結画像を得ることができる。
【0065】
次に、基準パスBP64bの位置合わせを行う。オペレータの指示によって、基準パスBP64b上の対応点P65b、P64bが指定され、その本来の位置として、点P65a、P64aが指定されたとする。この対応点は、基準パスBP63aの連結画像に基づいて指定されている。つまり、基準パスBP63bを基準パスBP63aに位置合わせする処理の結果に応じて、基準パスBP64bの位置合わせは影響を受けることになる。
対応点が指定されると、基準パスBP64bは、対応点P65b、P64bが、点P65a、P64aに一致するように移動され、実線で示した基準パスBP64aが得られる。これに合わせて、基準パスBP64bの連結画像を構成していた路面テクスチャも、それぞれ基準パスBP64a上に平行移動される。
【0066】
最後に、標準パスNP61bの位置合わせを行う。オペレータの指示によって、標準パスNP61b上の対応点P68b、P67b、P66bが指定され、その本来の位置として、点P68a、P67a、P66aが指定されたとする。この対応点は、基準パスBP63a、BP64aの連結画像に基づいて指定されている。つまり、基準パスBP63bを基準パスBP63aに位置合わせする処理、および基準パスBP64bを基準パスBP64aに位置合わせする処理の結果に応じて、標準パスNP61bの位置合わせは影響を受けることになる。
対応点が指定されると、標準パスNP61bは、対応点P68b、P67bが、点P68a、P67aに一致するように移動されるとともに、対応点P67b、P66bが、点P67a、P66aに一致するように移動される。これらの3点は一直線上にはないから、結果として、標準パスNP61bは、折れ線状の標準パスN61aに移動される。これに合わせて、標準パスNP61bの連結画像を構成していた路面テクスチャも、それぞれ標準パスNP61a上に平行移動される。
【0067】
本実施例では、図6に示すように複数のパスが存在する場合には、以上で説明した手順によって、位置精度が高いパスから優先的に位置合わせが行われる。こうすることによって、全体の位置精度を十分に確保しつつ位置合わせを行うことができる。
例えば、図6の処理において、位置精度が低い順、つまり標準パスNP61b、基準パスBP64b、基準パスBP63bの順に位置合わせをしたとする。この場合には、基準パスBP64bの位置合わせは、標準パスNP61bの位置合わせの影響を受け、位置精度が低下する。基準パスBP63bの位置合わせは、標準パスNP61b、基準パスBP64bの位置合わせの影響を受け、位置精度が低下する。従って、位置精度が低い順に位置合わせを行うと、パス間の相互作用によって全体の位置精度が低下してしまう。
本実施例では、これとは逆に、位置精度が高い順に位置合わせを行う。従って、最も位置精度が高いパスの位置精度を劣化させることなく、全体の位置合わせを行うことが可能となるのである。
【0068】
C.路面標示地図生成方法:
以下、図1〜6で説明した路面標示地図の生成方法について、オペレータが必要に応じて指示を行う場合を例にとって、詳細に説明する。
まず、連結画像生成処理、つまり図2中の路面テクスチャ210c、路面軌跡データ210bに基づいて各パスの連結画像210dを得る処理について説明する。
次に、位置合わせ加工、つまり複数パスに対する連結画像210dの位置合わせを行う処理、および位置合わせ加工の中で行われる基準パス設定処理、連結画像移動処理について説明する。
また、透明化ポリゴンの設定処理について説明する。
上述の一連の処理においては、路面標示地図生成装置が連結画像内の標示の位置を表示するようにすれば、オペレータが対応点や透明化ポリゴンの位置を容易に指定可能となる。また、自動的に対応点を特定したり、透明化ポリゴンを設定したりすることも可能となる。こうした処理を可能にするための処理として、最後に、ペイント認識処理について説明する。
【0069】
C1.連結画像生成処理:
図7は連結画像生成処理のフローチャートである。ハードウェア的には路面標示地図生成装置200のCPUが実行する処理である。これは、図2に示した画像変換部206、1パス合成部207の処理に相当する。
処理を開始すると、CPUは、まずフレームデータを読み込む(ステップS10)。フレームデータとは、道路面撮影システム100(図1)のビデオカメラ120で撮影された画像データ142を構成する各フレームの画像である。
【0070】
図中にフレームデータの例を示した。ビデオカメラ120は、道路面撮影システム100の前方に向けて設置されているため、フレームデータには、車両の前方の道路、前方車両などが写っている。本実施例では、道路面の画像を生成したいため、このフレームデータの一部の領域を切り出して使用する。図中の領域A71は、道路面のみが含まれるように設定された切り出し領域を現している。本実施例では、車両の前方5〜7mの領域の画像を取得するように領域A71を設定した。領域A71の各フレーム内での相対的な位置は一定である。
領域A71は、上述の例に限らず、任意に設定可能である。ビデオカメラ120が一定のフレームレートで画像を撮影するため、フレームデータは、道路面を間欠的に撮影した画像群となる。従って、領域A71は、間欠的に撮影された画像群を並べた時に、道路が連続画像として再現できるように範囲を決定することが好ましい。例えば、領域A71の縦幅を狭くすれば、車両の速度が速い場合には、あるフレームデータから切り出された領域と、次のフレームデータから切り出された領域との間に隙間が生じやすくなる。一方、領域A71の縦幅を広くすれば、前方車両や空、建物など、道路画像とは異なる雑多な映像が含まれやすくなる。領域A71は、これらの影響を考慮した上で、設定すればよい。
【0071】
次に、CPUは、取得されたフレームデータを正射画像(路面テクスチャ)に画像変換する(ステップS12)。図中に処理の概要を示した。上側にはフレームデータの例である。ここでは路面の状態のみが撮影され、道路の左右の車線規制線L71、L72および標示M7が写されている例を示した。前方を撮影した画像であるため、パース(遠近法)の影響で、本来平行な車線規制線L71、L72が、ハの字状に写されている。
先に説明した通り、このフレームデータの一部の領域A71を切り出して使用する。
下段には、領域A71の画像を正射投影変換した状態を例示した。道路を真上から見た画像に変換するため、左右の車線規制線L71、L72は図示する通り、平行な線分に変換される。標示M7も同様に真上から見た状態の形状に変換される。
【0072】
正射投影変換の方法を説明する。
まず、道路面撮影システム100を搭載した車両は水平面上を走行しており、被写体である道路も同一水平面上にあるものとする。
この時、道路画像、即ちフレームデータの画面上の2次元座標をm=[u,v]とする。また、地面に固定された世界座標系の3次元座標をM=[X,Y,Z]とする。これらの各座標に1の要素を直積で加えたベクトルを、次式(1)の通り定義する。
【0073】
【数1】

【0074】
3次元座標Mと、その投影画像の2次元座標mとの関係を以下の関係式(2)(3)によりモデル化する。
【0075】
【数2】

【0076】
ここで、sはスケール・ファクター;
[Rt]は、外部パラメータ行列;
Rは回転行列;
tは平行移動行列;
Aは内部パラメータ行列である。
【0077】
内部パラメータ行列Aは、ビデオカメラ120の焦点距離等を考慮した内部的なパラメータであり、実画像座標系(xy座標系)からフレーム座標系(uv座標系)への写像パラメータを表す。
α、βはそれぞれu軸、v軸方向のスケール因子、γは2つの画像軸のスキューにより表されるパラメータ;
[u0,v0は、画像の主点の座標(主点座標)である。
画像のピクセルサイズを(k、k)、u軸とv軸とのなす角をθ、焦点距離をfとすると、α、β、γは次式(4)で表される。
【0078】
【数3】

【0079】
外部パラメータ行列[Rt]は、ビデオカメラ120の設置位置、設置姿勢などによる外部的なパラメータであり、世界座標系(XYZ座標系)から実画像座標系(xy座標系)への写像パラメータを表す。世界座標系は、ビデオカメラ120の真下の路面を原点とし、車両の進行方向に対し垂直な水平軸をX軸、鉛直軸をY軸、進行方向の水平軸をZ軸とする。
平行移動ベクトルtは、世界座標系において原点に対する実画像の画像主点の移動ベクトルである。
ビデオカメラ120の高さ(実画像の画像主点の高さ)をhとすると、平行移動ベクトルtは次式(5)で表される。
【0080】
【数4】

【0081】
また、世界座標系において、実画像のヘディング方向の回転角(ヨー角)をφ、ピッチ角をω、ロール角をκとすると、回転行列Rは次式(6)で表される。
【数5】

【0082】
内部パラメータ行列Aは、事前の測定によって得られる。
ヨー角φ、ピッチ角ω、ロール角κおよび画像主点の高さhは、次の手順で得られる。まず、初期状態、即ち車両が水平な地面に設置されている状態において、ヨー角φ0、ピッチ角ω0、ロール角κ0、および高さh0の基準値を計測しておく。次に、走行中には逐次、車両の姿勢角の変化および車高の変化をジャイロ、加速度センサ等で記録しておき、上述の基準値にこの変化を反映することで、各地点でのヨー角φ、ピッチ角ω、ロール角κおよび高さを得ることができる。
【0083】
正射投影変換は、これらのパラメータに基づき、式(2)を用いることにより、行われ、フレーム座標系(uv座標系)の道路画像を、世界座標系(XYZ座標系)の投射道路画像に変換することができる。その手順は次の通りである。
まず、被写体である道路面を水平面(Y=0)の画像であると仮定する。この時、式(2)より、次式(7)の関係が成立する。
【0084】
【数6】

【0085】
この結果、ピクセル(u,v)に対する世界座標(X,Z)およびスケールパラメータsは次式(8)により求めることができる。
【0086】
【数7】

【0087】
次に、路面標示地図生成装置200のCPUは、被写体である道路面の傾斜を考慮した補正を行う。
まず、フレームデータを取得した各地点の位置座標データ(X,Y,Z)と、被写体である道路面付近の複数点の位置座標(X,Y,Z)とから、被写体である道路面の勾配を計算する。本実施例では、勾配は一様であるものと仮定した。
具体的には、撮影地点の世界座標点(X,Y,Z)付近の位置座標データから、高さの変化Δhを求める。つまり、Δh=Y−Yである。この時、一様な勾配を仮定すると、道路面上の世界座標系(X’,Y’,Z’)の点の奥行きZ’は次式(9)で求めることができる。
【0088】
【数8】

【0089】
補正した道路面上の奥行きZ’が決まると、式(2)より、フレーム座標点(u,v)と世界座標点(X’,Y’,Z’)との関係は次式(10)の通りとなる。
【0090】
【数9】

【0091】
これより、世界座標点のX’,Y’を次式(11)によって計算することができる。
【数10】

【0092】
以上の通り、フレームデータ上の点(u,v)を、それぞれ(X’,Z’)に写像すれば、正射画像(路面テクスチャ)を得ることができる。図7中に示すように、フレームデータを矩形の領域A71で切り出した上で正射投影すると、上方が広がる台形状の正射画像(路面テクスチャ)A72が得られる。
本実施例では、後に続く処理の便宜のため、正射画像(路面テクスチャ)を低解像度/高解像度の2通りで生成するものとした。高解像度の正射画像(路面テクスチャ)(以下、「高解像度画像」と呼ぶ)は、もとのフレームデータの切り出し領域A71をそのまま利用して生成された画像、即ち原画像と同じ解像度で生成された画像である。低解像度の正射画像(路面テクスチャ)(以下、「低解像度画像」と呼ぶ)は、解像度を原データよりも下げた画像である。低解像度画像の解像度は、路面標示地図生成装置200が軽い負荷で画像を表示することができる程度の値とすることが好ましく、原画像の解像度の半分など、任意に設定可能である。
【0093】
次に、路面標示地図生成装置200のCPUは、得られた正射画像(路面テクスチャ)を配置して1パス画像の合成を行う(ステップS14)。図中に1パス画像合成の例を示した。この例では、正射画像(路面テクスチャ)A72[0]〜A72[5]が合成されている。
各正射画像(路面テクスチャ)A72は、フレーム座標系(uv座標系)の原点に対応する点を、各フレームデータの撮影時の位置座標に基づいて配置すればよい。フレームデータは車両の位置よりも前方を写したものであるため、正射画像(路面テクスチャ)は、車両位置から一定距離だけ前方に移動させた地点に配置する必要がある。本実施例では、フレームデータ毎に車両位置とフレーム座標系の位置関係を計算して配置する。また、正射画像(路面テクスチャ)は、時系列的に古い画像から新しい画像に順次、配置するものとした。
このように正射画像(路面テクスチャ)を配置することによって、道路面の車線境界線L71、L72および標示M7が再現される。
本実施例では、連結画像生成処理の段階では、正射画像(路面テクスチャ)を1枚の画像に結合することなく、配置して表示する状態に留めている。従って、1パス画像合成処理(ステップS14)で生成されるのは、合成画像ではなく、各正射画像(路面テクスチャ)の配置を決定する情報となる。もっとも、この処理において、正射画像(路面テクスチャ)を1枚の画像に結合する方法を採ることもできる。
【0094】
C2.位置合わせ加工:
図8は位置合わせ加工のフローチャートである。ハードウェア的には路面標示地図生成装置200のCPUが実行する処理である。これは、図2に示した位置合わせ処理部220の処理に相当する。
処理を開始すると、CPUは、まず処理の対象となる道路(以下、「対象道路」と言う)についてのオペレータからの指定を入力する(ステップS20)。そして、対象道路に対応する連結画像を入力する(ステップS22)。本実施例では、それぞれの道路について、走行位置を変えながら複数回走行して、路面画像を撮影している。従って、各走行に対応するパスに基づいて、それぞれ連結画像が生成されている。ステップS22では、これらの複数の連結画像を読み込む。
【0095】
次に、CPUは基準パスを設定する(ステップS30)。基準パスとは、複数のパスの位置合わせをする際に、基準となるパスである。本実施例では、対象道路に対応するパスのうち、位置精度の評価値、即ち自己推定位置精度が最も高いものを選択する。基準パスの設定方法については、後述する。
【0096】
基準パスが設定されると、CPUはオペレータの操作に従い、各パスについて対応点を設定する処理を行う(ステップS40)。
本実施例では、図中に示すように、基準パスおよび標準パスの連結画像をディスプレイに表示し、オペレータが、マウスなどのポインティングデバイスを操作して、この画面内で対応点を設定するという方法を採った。図の例では、標準パスの画像内で菱形をした横断歩道予告標示の頂点を対応点として指定し、次に、これに対応する頂点を基準パスの画像内で指定する例を示した。対応点は、1点に限らず、複数の点を指定可能である。
後述するペイント認識処理が行われており、各連結画像内の標示が抽出されている場合には、CPUは、抽出した標示をディスプレイに表示し、オペレータがこの中から対応点として用いるべき標示を選択するようにしてもよい。また、連結画像間で抽出した標示の位置関係に基づいて、対応する標示を特定し、対応点や透明化ポリゴンを自動的に設定可能としてもよい。
【0097】
本実施例では、この連結画像の表示には、低解像度画像を用いる。こうすることにより、対応点を指定する際に、表示の移動、拡大・縮小を円滑に行うことができ、作業効率を高めることができる利点がある。
【0098】
対応点が指定されると、CPUは、対応点同士が一致するように、標準パスの連結画像を基準パスの連結画像に合わせるよう移動する処理を行って、位置合わせ加工を終了する(ステップS50)。
先に説明した通り、本実施例では、連結画像は一枚の合成画像として生成されている訳ではなく、正射画像(路面テクスチャ)を配置して表示している。従って、ステップS50の処理では、それぞれの正射画像(路面テクスチャ)を移動することで、連結画像の移動処理が行われる。移動処理と併せて、それぞれの正射画像を低解像度画像から高解像度画像に置換する処理が行われる。高解像度画像を用いて、正射画像を再配置する処理を行うものとしてもよい。
連結画像移動処理の内容は、後で詳述する。
【0099】
C3.基準パス設定処理:
図9は基準パス設定処理のフローチャートである。位置合わせ加工(図8)のステップS30に相当する処理であり、複数のパスの位置合わせをする際に、自己推定位置精度が最も高いものを基準パスとして設定するための処理である。
【0100】
CPUは、処理を開始すると、対象道路の各パスについて、フレーム画像が取得されている各地点での位置精度を入力する(ステップS31)。撮影時には、図中に示すように、パスにそって点P91,P92、P93等でフレーム画像を撮影するとともに、各点ごとに東西方向の位置精度AC1、南北方向の位置精度AC2が記録されている。
【0101】
一般にGPS114は、位置座標の検出に使用される人工衛星の配置、電波の受信状況、建造物などに反射した電波を受信することによるマルチパスの有無などによって検出精度が変動することが知られている。またディファレンシャル測位では、基準局の稼働状況によっても検出精度は影響を受ける。位置精度は、これらの影響を定量的に評価したものである。位置精度は、任意に定義可能であり、例えば、精度低下率(DOP(Dilution of Precision))等を用いても良い。
【0102】
CPUは、各点の位置精度に基づいて、パスごとに自己推定位置精度σを算出する(ステップS32)。
【0103】
自己位置推定精度は、GPSと、IMU、DMI等とのずれに基づいて定まる値としてもよい。この場合は、例えば、ずれ量の標準偏差を用いても良い。また、東西方向の標準偏差の自乗と、南北方向の標準偏差の自乗の和を求め、この平方根を自己位置推定精度として用いても良い。このように、GPSと、IMU、DMI等のずれ量に応じた値とする場合には、自己位置推定精度は、ずれが大きい程、大きい値となる。つまり、自己推定位置精度は値が小さい方が、精度が高いことを示す評価値となる。
各パスの自己推定位置精度σが得られると、CPUはこの値が最小となるパスを基準パスとして設定する(ステップS33)。対象道路に対して単一のパスしか存在しない場合には、無条件にそのパスが基準パスとして設定されることになる。この基準パスの自己推定位置精度をσとする。
【0104】
ステップS33で設定された基準パスの自己推定位置精度σが、所定の閾値σTHよりも低い場合には(ステップS34)、基準パス設定処理を終了する。
これに対し、自己推定位置精度σが、所定の閾値σTH以上の場合には、エラー表示を行って(ステップS35)、処理を終了する。この場合には、基準パスの位置精度が十分確保されていないことを意味するため、位置合わせ処理を行っても、位置精度が十分に保証されないからである。
所定の閾値σTHは、上述の通り、路面標示地図として確保すべき位置精度に基づいて任意に設定可能である。
【0105】
エラー表示(ステップS35)を行うか否かの判断対象となるのは、基準パスの自己推定位置精度σのみとした。他の標準パスについては、自己推定位置精度が低い場合でも、基準パスを基準として位置合わせを行うことにより、位置精度を高めることが可能だからである。
もっとも、位置合わせ処理における修正は、いずれのパスに対してもできるだけ小さい方が、より好ましいと言える。従って、ステップS34において、全てのパスの自己推定位置精度を閾値σTHと比較し、いずれか一本でも、この閾値を下回る精度のパスが存在する場合にはエラー表示を行うようにしてもよい。
ただし、標準パスにも基準パスと同等の位置精度を要求すると、エラー表示が頻繁になされるおそれがある。かかる弊害を回避するため、標準パスでは基準パスよりも高い閾値σTHを用いるようにしてもよい。つまり、標準パスについては位置精度の要求を基準パスよりも緩めるのである。こうすることによって、標準パスについても最低限の位置精度を保証しつつ、エラー表示が頻繁になされるのを回避することができる。
【0106】
C4.連結画像移動処理:
(1)フローチャート:
図10は連結画像移動処理のフローチャートである。位置合わせ処理(図8)のステップS50の処理に相当する。
処理を開始すると、CPUは移動対象となる標準パスのデータおよび対応点のデータを入力する(ステップS51)。標準パスのデータとは、フレーム画像が撮影された時の位置座標を順次、記録した点列からなる軌跡データである。対応点のデータは、図8のステップS20において、基準パスおよび標準パスが表示された画面内でオペレータが指定した対応点の座標値である。
【0107】
CPUは、次に、標準パス上で正射画像(路面テクスチャ)が配置されている点ごとに、移動ベクトルを算出する(ステップS52)。
図中に移動ベクトルの算出例を示した。この例では、標準パスNP10について、対応点P101、P103が指定されているものとする。標準パス上には、図中に台形で示すように正射画像(路面テクスチャ)が配置されている。
【0108】
対応点P101、P103に対応する点としては、基準パス上では、対応点P102、P104が指定されているものとする。CPUは、これらの指定結果に基づき、対応点について移動ベクトルを求める。図の例では、標準パスの対応点P101からP102に向かう移動ベクトルV10と、対応点P103からP104に向かう移動ベクトルV11が得られる。
【0109】
対応点は、標示の頂点など、オペレータが基準パスと標準パスとで対応をとりやすい点を指定するため、必ずしも標準パスNP10上で指定されるとは限らない。対応点が標準パスNP10からずれた場所で指定されている場合には、図中に破線で示すように標準パスNP10からずれた場所に移動ベクトルV10aが得られる。従って、この移動ベクトルV10aの始点が標準パスNP10上に来るように、標準パスNP10に垂直方向に移動させて移動ベクトルV10を求めればよい。
【0110】
対応点での移動ベクトルV10、V11が得られると、CPUは、これらを補間することによって、対応点P101、P103の間に位置する各点での移動ベクトルを求める。例えば、図中に示すように、フレーム画像の撮影地点PP10で移動ベクトルを求める場合には、この地点を始点とするように移動ベクトルV10、V11を平行移動し、両ベクトルの終点を結ぶ線分を、対応点P101〜PP10の距離、P103〜PP10の距離の比で内分する点を求める。こうすることによって、点PP10を始点とし、この内分点を終点とする移動ベクトルVP10を求めることができる。
【0111】
2つの移動ベクトルV10、V11に挟まれた区間に存在しない点については、最も近い位置にある移動ベクトルをそのまま用いる。図中の例では、点P101よりも右側の区間では、移動ベクトルV10をそのまま用い、点P103の左側の区間では、移動ベクトルV11をそのまま用いることになる。
また、対応点が一つしか指定されておらず、移動ベクトルが一つしか与えられない場合は、この移動ベクトルを用いる。
【0112】
CPUは以上の処理で得られた移動ベクトルに従って、正射画像(路面テクスチャ)を平行移動して(ステップS53)、連結画像移動処理を終了する。図の例では、標準パスNP10の点PP10に配置されていた路面テクスチャTX11が、移動ベクトルVP10に従って路面テクスチャTX12の位置に平行移動される例を示している。
この処理と併せて、標準パスNP10上の点PP10の位置も移動ベクトルVP10によって修正される。従って、ステップS53の処理では、路面テクスチャの移動と共に、標準パスNP10の軌跡も修正されることになる。
【0113】
(2)位置合わせ加工の処理例(1):
図11は位置合わせ加工の処理例(1)を示す説明図である。図11(a)〜図11(c)のそれぞれには、標準パスNP11および基準パスBP11に対する連結画像を重ねて表示した状態を示している。図11(a)は標準パスNP11の連結画像を、基準パスBP11の連結画像よりも上に配置した状態である。先に説明した通り、連結画像は多数の路面テクスチャを配置することで構成されているが、図中には、説明の便宜上、一つの路面テクスチャTX11に輪郭を付して示した。
オペレータは、この画面中で、標準パスNP11における対応点P111を指定する。対応点P111は、任意に設定可能である。本実施例では、分離帯標示M11の白線の斜め縞模様の端点の一つを対応点P111として選択している。
【0114】
図11(b)は、基準パスBP11の連結画像を上側にして配置した状態を示している。この状態では、標準パスNP11と基準パスBP11の位置がずれている。従って、基準パスBP11の連結画像を上側に表示すると、対応点P111の位置は、分離帯標示M12の白線の斜め縞模様からずれてしまう。
【0115】
図11(c)は、基準パスBP11の連結画像を上側にした状態で、対応点P112を指定した状態を示している。つまり、基準パスBP11を上側にした画像内で、分離帯標示M11の白線の斜め縞模様の端点を対応点P112として選択すればよい。
対応点P112が指定されると、標準パスNP11の対応点P111から基準パスBP11の対応点P112に向かうように移動ベクトルV11が求められる。この移動ベクトルV11に従って、路面テクスチャTX11を移動すれば、対応点P111は対応点P112に一致し、分離帯標示M11、M12の位置も一致させることができる。
【0116】
路面テクスチャTX11だけでなく、位置合わせ加工では、標準パスNP11を構成する他の路面テクスチャも同様に、移動ベクトルV11に従って移動させる。ここでは対応点を一つだけ指定した処理例を示したが、対応点は複数指定してもよい。例えば、図の例では、横断歩道の縞模様、停止線、車線境界線の端点などを対応点として利用することが考えられる。
【0117】
(3)位置合わせ加工の処理例(2):
図12は位置合わせ加工の処理例(2)を示す説明図である。標準パスNP12、基準パスBP12の連結画像を重ねた状態を示した。説明の便宜上、双方の路面標示を視認可能な状態で示している。位置合わせ前は、標準パスNP12、基準パスBP12の位置がずれているため、車線境界線などの標示の位置はずれている。
オペレータは、ここでは破線での車線境界線の端点の一つを対応点として選択している。標準パスNP12については車線境界線L122の端点を対応点P122として選択し、基準パスBP12については車線境界線L121の端点を対応点P121として選択する。この結果、標準パスNP12の対応点P122から基準パスBP12の対応点P121に向かう移動ベクトルV12が定まる。
【0118】
図13は位置合わせ加工の処理(2)の加工結果を示す説明図である。
上述の通り、標準パスNP12の連結画像を、移動ベクトルV12に従って移動することによって、車線境界線の位置を合わせることができる。位置合わせの結果が車線境界線L13である。
また、この位置合わせ加工によって、標準パスも基準パスの位置に合わせられる。本実施例は、本来、異なる位置を走行した複数のパスを位置合わせすることによって、道路面の画像を生成する。この際、図12、図13の比較から分かる通り、対応点に基づいて設定される移動ベクトルに従って、標準パスを平行移動することにより、複数のパス間で、路面標示の位置関係およびパスの位置関係を、非常によく一致させることができる。
【0119】
(4)絶対座標の取得:
図14は路面標示の絶対位置座標の取得方法を示す説明図である。図の例では、標準パスNP14上の路面テクスチャTX142、基準パスBP14上の路面テクスチャTX141を例示した。路面テクスチャTX141、TX142内には、それぞれ標示M141、M142が含まれている。
路面テクスチャTX141、TX142は、それぞれの代表点が、基準パスBP14上の点P141、および標準パスNP14上の点P143に一致するように配置される。
【0120】
路面テクスチャTX141内で、標示M141の頂点P142の位置は、代表点を原点とする相対的な座標(x142,y142)で特定することができる。従って、代表点の絶対座標、即ち路面テクスチャTX141が配置されている位置座標(X141,Y141)が分かれば、これに、上述の相対的な座標を加えることによって、標示M141の頂点P142の絶対位置座標を取得することができる。
【0121】
路面テクスチャTX142内も同様に、標示M142の頂点P145の位置は、代表点を原点とする相対的な座標(x145,Y145)で特定することができる。従って、代表点の絶対座標、即ち路面テクスチャTX142が配置されている位置座標(X143,Y143)が分かれば、これに、上述の相対的な座標を加えることによって、標示M142の頂点P145の絶対位置座標を取得することができる。
【0122】
路面テクスチャTX142については、位置合わせ加工によって、移動ベクトルV14に従って、代表点の位置P143が点P144に移動したとする。この時、位置合わせ後の点P144の絶対位置座標は、移動前の点P143の位置座標(X143,Y143)に、移動ベクトルV14の成分(VX14,VY14)を加えることで得ることができる。更に、こうして得られた点P144の絶対位置座標に対して、点P145の相対的な座標(x145,Y145)を加えれば、位置合わせ加工後の標示M142の頂点P145の絶対位置座標を取得することができる。
【0123】
ここでは、路面テクスチャ内の標示M141,M142の頂点について絶対位置座標を取得する方法を示したが、路面テクスチャ内の任意の点は、それぞれ路面テクスチャの代表点を基準とする相対的な座標で特定可能であるから、同様の方法によって任意の点の絶対位置座標を取得することが可能である。
【0124】
C5.透明化ポリゴン設定処理:
(1)処理概要:
図15は透明化ポリゴン設定処理の概要を示す説明図である。透明化ポリゴン設定処理は、重ねられた道路画像上に、オペレータの指示によって、透明化ポリゴンを設定することによって、隣接するパスに対応する正射画像同士が重なり合っている部分で、上側の正射画像の一部を透明化して、下側の正射画像を透視可能とする処理である。
図の中央に、正射画像P152の上に正射画像P151が重ねられている様子を斜視図的に示した。下側の正射画像P152には、横断歩道A154が分断された状態で含まれており、停止線A153が完全な状態で含まれている。上側の正射画像P151には、横断歩道A152が完全な形で含まれており、停止線A151が分断された状態で含まれている。それぞれ分断された部分を、破線で囲んで示した。
この状態で正射画像P151、P152を重ねると、左側に示したように表示される。つまり、両者が重なった部分では、上側の正射画像P151の画像のみが表示されるため、横断歩道A152は完全な状態で表示されるが、停止線A151は分断された状態で示されてしまうのである。
仮に、正射画像P151、P152の上下関係を変えたとすれば、今度は、停止線A153は完全な状態で表示することができるが、横断歩道A154が分断された状態で表示されることになる。このように、正射画像P151、P152の上下関係だけでは、横断歩道、停止線の双方を完全な状態で表示させることはできない。
【0125】
そこで、本実施例では、透明化ポリゴンPOL15を設定する。この例では、上側の正射画像P151において、分断されている停止線A151を覆うように設定した例を示した。透明化ポリゴンPOL15内では、上側の正射画像P151は透過した状態で表示される。従って、図の右側に示すように、正射画像P151、P152を重ねた状態では、透明化ポリゴンPOL15の内部では、下側の正射画像P152が表示され、その他の部分では、上側の正射画像P151が表示される。この結果、下側の正射画像P151に含まれる停止線A153と、上側の正射画像P152に含まれる横断歩道A152が表示され、停止線および横断歩道の双方を完全な形で表示することができる。
【0126】
(2)フローチャート:
図16は透明化ポリゴン設定処理のフローチャートである。ハードウェア的には路面標示地図生成装置200のCPUが実行する処理である。これは、図2に示した透明化ポリゴン設定部221の処理に相当する。
処理を開始すると、CPUは、オペレータからの対象道路の指定を入力し(ステップS100)、対象道路に対応する連結画像を入力する(ステップS102)。対象道路に対して複数のパスが対応している場合には、これらのパスに対応する複数の連結画像が入力される。
【0127】
CPUは、これらの連結画像を表示し、オペレータの操作に基づいて優先パスの指定を入力する(ステップS104)。優先パスとは、複数のパスのうち路面画像が最も良好なパスを言い、複数のパスの連結画像を重ねる際に最も上に位置するパスを言う。優先パスは、位置合わせ加工で用いられた基準パスとは異なる。基準パスは位置精度が最も良いものを意味したが、位置精度が良いからといって、路面画像が良好とは限らないからである。複数のパス間の連結画像の重ね合わせの上下関係がどのような状態であっても、位置合わせは支障なく行うことが可能であるから、位置合わせ用の基準パスと優先パスとは相互に独立して設定可能である。
本実施例では、優先パスは、オペレータが各パスの連結画像を比較しながら、任意に設定することができる。仮に、路面画像が最も粗いパスを優先パスに指定しても構わない。このような場合には、後述する透明化ポリゴンの設定数が増えるだけのことである。
【0128】
優先パスが設定されると、CPUは、オペレータの操作に従い透明化ポリゴンを設定する(ステップS106)。
図中に透明化ポリゴンの設定例を示した。この例では、優先パスに沿った路面テクスチャTX161と、その他のパスに沿った路面テクスチャTX162を示した。
撮影時には矩形の画像が、正射画像変換により、台形になるため、路面テクスチャTX161、TX162を配置すると、図示するようにのこぎり刃状になる。のこぎり刃状の部分からは、路面画像の見栄えを落とすと共に、分断された路面画像しか得られないため、完全な路面画像を得るという目的からは不要な部分となる。そこで、図の例では、路面テクスチャTX161、TX162が重なり合った部分では、のこぎり刃状になった路面テクスチャTX161の左端の部分に透明化ポリゴンPOL161を設定し、のこぎり刃状の部分が表示されないようにしている。
【0129】
一方、路面テクスチャTX161、TX162が重なりあっていない部分、図の例では、両端の領域A161、A162の部分には、透明化ポリゴンは設定しない。この部分では、それぞれ路面テクスチャTX161、TX162によって得られる画像が、唯一の画像情報となるからである。両端の領域に透明化ポリゴンを設定すると、この部分に含まれる路面画像の情報は活用し得なくなる。本実施例では、このように他の路面テクスチャと重なり合っていない部分には、透明化ポリゴンを設定しないようにすることで、路面テクスチャに含まれる路面画像の情報を有効活用できるようにした。
かかる設定は、単に路面テクスチャが重なっていない部分を避けて、オペレータが透明化ポリゴンを設定するという運用によって実現してもよいが、透明化ポリゴンの設定処理(ステップS106)において、透明化ポリゴンの設定位置を制限するようにしてもよい。つまり、路面テクスチャが重なり合っている部分についてのみ、オペレータによる透明化ポリゴンの設定操作を受け付けるようにしても良い。
【0130】
路面テクスチャTX161によって隠されている標示がある場合には、オペレータはその標示が視認できるように透明化ポリゴンを設定する。図の例では、矢印の標示を覆うように、透明化ポリゴンPOL162が設定されている例を示した。矢印の標示は、テクスチャTX161の下側に配置されているテクスチャに含まれている画像である。
【0131】
このように標示を覆う透明化ポリゴンPOL162を設定するためには、一旦、路面テクスチャTX161を他の路面テクスチャよりも下側に位置するように上下関係を変更したり、路面テクスチャTX161を非表示としたりすればよい。これらの操作によって、路面テクスチャTX161に隠された標示を視認可能な状態にした上で、その標示を覆うように透明化ポリゴンPOL162を設定し、路面テクスチャTX161の表示を元に戻せばよい。
【0132】
以上の処理によって、透明化ポリゴンの設定が終わると、CPUは、設定結果を出力して、透明化ポリゴン設定処理を終了する。
【0133】
(3)処理例:
図17は透明化ポリゴンを設定する前の道路画像例を示す説明図である。この例では、パスP171、P172の2本に沿って得られた連結画像の位置合わせを行って生成された道路画像を示した。パスP172の連結画像と、パスP171の連結画像とで、のこぎり刃状の両端の形状が逆向きになっているのは、これらのパスP171,P172を道路面撮影システム100の車両が走行する方向が逆だからである。
【0134】
パスP172の連結画像が、パスP171の連結画像と重なっている部分では、パスP172の連結画像の端部B17ののこぎり刃状の境界が現れており、道路画像の画質を劣化させている。ただし、図17では、図示の都合上、のこぎり刃状の輪郭を付して端部B17の形状を強調してある。
また、パスP172の路面画像が端の方で不鮮明なため、例えば、領域A171では横断歩道の縞模様が歪んでいる。領域A172では、停止線が分断された状態となっている。領域A173では、路線バス等優先通行帯(いわゆるバスレーン)であることを示す「バス専用」の文字が読めない程に崩れている。領域A174では、破線状の車線境界線が途中で分断された状態となっている。
【0135】
これらの影響を回避するため、図17では、領域A171〜A174および端部B17を包含する透明化テクスチャPOL17を図中の一点鎖線のように設定した。
このように透明化ポリゴンPOL17を設定すると、パスP172側の路面テクスチャは、透明化ポリゴンPOL17の内部では透視状態となり、下側に配置されたパスP171側の路面テクスチャが視認されるようになる。
【0136】
図18は透明化ポリゴンの設定後の道路画像例を示す説明図である。上述の透明化ポリゴンの作用により、領域A181では、下側の画像が表示されるため、図17で示した横断歩道の分断状態が解消される。領域A182でも同様に、停止線が完全な状態で表示される。また、領域B18に例示するように、路面テクスチャの端部ののこぎり刃状の輪郭は視認されなくなり、道路画像全体の画質が向上する。
領域A183では、バス専用の文字が、はっきりと判読可能な状態となる。領域A184では、車線境界線が完全な状態で表示される。
このように、本実施例では、透明化ポリゴンを設定することにより、道路画像の画質を向上させることができるとともに、道路面の標示の画質も向上させることができる。
【0137】
C6.ペイント認識処理:
(1)全体処理:
図19はペイント認識処理のフローチャートである。ハードウェア的には路面標示地図生成装置200のCPUが実行する処理である。これは、図2に示したペイント認識部223の処理に相当する。
処理を開始すると、CPUは処理データ記憶部210から、処理対象となっている道路の画像、即ち路面テクスチャ、パスのデータを読み込む(ステップS300)。
次に、CPUは縦配置処理を行って(ステップS302)、縦配置画像を生成し、処理データ記憶部210に格納する。
【0138】
図20は縦配置処理の内容を示す説明図である。図20(a)に通常の処理における連結画像を示した。図中の一点鎖線の矢印PA20は画像を撮影した際のパスを表している。通常の処理では、パスPA20に沿って路面テクスチャTx20を配置する。パスPA20の位置座標は、緯度経度などの絶対座標系XYで得られている。従って、絶対座標系でパスPA20および路面テクスチャTx20を配置すると、図20(a)に示すように連結画像は斜めに表示されることがある。この例では、直線状の道路を例示しているが、道路がカーブしている場合には、連結画像もカーブした状態となる。
【0139】
図20(b)は縦配置した画像例を示した。道路が直線状のため、図20(a)の向きを矢印A20方向に回転した状態の画像となっている。
縦配置の画像は、次の手順で生成することができる。まず、2次元座標xyの縦(y)方向に距離軸を設定する。距離軸とは、パスPA20に沿って画像を撮影する際の開始点からの移動距離を表す軸である。パスPA20が直線状の時は、パスPA20の進行方向を上向きに表示した状態となる。パスが曲線状のときには、パスを直線状に伸ばした状態となる。
【0140】
それぞれの路面テクスチャTx20については、撮影時の位置座標データおよび撮影開始からの移動距離が得られているから(図1の位置計測部110参照)、これらのデータに基づき、距離軸上に路面テクスチャTx20を配置する。路面テクスチャTx20は、画像内の代表点を距離軸上に置き、左右対称軸が距離軸に平行になるよう配置する。こうすることによって、パスが曲線状か否かにかかわらず、進行方向が縦方向に直線状に伸ばされた状態の連結画像を表示することができる。この連結画像によれば、図示する通り、横断歩道および停止線は距離軸に直交する方向(図中の左右方向)に描かれ、車線境界線は距離軸に沿う方向(図中の上下方向)に描かれる。縦配置画像には、このように道路の標示が一定の位置関係で描画されるため、これらの認識がしやすくなるという利点がある。
ここでは、距離軸を縦に配置する例を示したが、横または斜めなど任意の方向に配置可能である。
【0141】
図19に戻り、ペイント認識処理について説明する。
縦配置処理が完了すると、CPUは横断関連ペイント抽出処理を行う(ステップS310)。これは、横断歩道、自転車横断帯、停止線など交差点近辺の標示を抽出する処理である。処理内容については後で詳述する。本実施例では、処理データ記憶部210に格納された縦配置画像を用い、そこに描かれた標示を画像処理で抽出するとともに、標示に含まれる線分の位置関係や長さなどに基づく条件判断によって標示の種別を判断するようにした。
【0142】
横断関連ペイント処理が終わると、CPUは各種ペイント抽出処理を行う(ステップS350)。この処理で抽出対象となる標示を図中に示した。
「境界線」とは、実線および破線などで描かれた車線境界線である。
「矢印」とは、交差点内の進行方向の規制を示すために、交差点付近で各車線に示されている矢印である。
「ゼブラ」とは、横断歩道とは異なり、中央分離帯や右左折用の車線が増える箇所などに標示されている縞模様である。
「Uターン」とは、Uターン禁止道路に描かれているU字形状の矢印である。
「転回禁止」とは、Uターンの矢印とともに描かれている×印である。
「規制」とは、通行規制の時刻標示等である。例えば、バスレーンなどの標示と併せて描かれる「17−19」の標示(17時〜19時であることを意味)のような通行態様の規制等である。
【0143】
「数字」とは、速度規制などの数字である。
「横断歩道予告」とは、横断歩道手前に描かれている菱形の記号である。
「減速帯」とは、車速の減速を促すために、路面上にパスに直交する方向の線分をパスの進行方向に沿って平行に複数本配置することで描かれている縞模様である。
「路面塗装」は、急カーブその他の運転者の注意を喚起すべき箇所に対し、通行の安全のために施されている赤色等の舗装領域である。
「バスレーン文字」とは、バスレーンとして使用される車線に付される「バス専用」「バス優先」という文字である。本実施例では、バスレーンを例示しているが、バスレーンに限らず、路面に標示される文字一般を対象としてもよい。
「終わり記号」とは、バスレーンなどの終了地点を示す「0」形状の記号である。
本実施例では、これらの標示を対象としているが、これらは例示に過ぎず、更に多くの標示を対象としてもよいし、この中の一部を抽出処理の対象外としても構わない。
【0144】
各種ペイント抽出処理(ステップS350)では、予め用意されたモデルを用いて、パターンマッチングを行う。本実施例では、人工モデル画像、OCRモデル画像の2種類を用いるものとした。これらのモデルは、予め処理データ記憶部210に記憶されている。
人工モデル画像とは、コンピュータグラフィックスによって生成されたモデルである。Uターン、転回禁止など、比較的単純な標示のマッチング用のモデルとして適している。
OCRモデル画像とは、撮影された画像から、オペレータが手作業で切り出した画像に基づいて生成されたモデルである。例えば、数字、バスレーンなどの複雑な形状をした標示のマッチング用のモデルとして適している。これらのモデルをコンピュータグラフィックスによって生成することも不可能ではないが、文字の形状を現実の道路標示に併せてモデルを生成するためには、結局、撮影した画像をトレース等する必要が生じるため、結果としてOCRモデルを利用しているのと大差ない。
【0145】
CPUは、以上の処理を連結画像単位で、実行し、ペイント認識結果を処理データ記憶部210に格納して、ペイント認識処理を終了する。
以下では、横断関連ペイント抽出処理(ステップS310)、各種ペイント抽出処理(ステップS350)、および相対座標変換処理(ステップS370)についてそれぞれ詳細に説明する。
【0146】
(2)横断関連ペイント抽出処理:
図21は横断関連ペイント抽出処理のフローチャートである。この処理を開始すると、CPUは処理対象となる縦配置画像を読み込む(ステップS311)。
次に、CPUはサイドカット処理を行う(ステップS312)。サイドカット処理とは、縦配置画像の両端の所定範囲を削除する処理である。サイドカット処理は、以下で示す2つの処理例のいずれを用いても構わない。
【0147】
(3)サイドカット処理:
図22はサイドカット処理例(1)を示す説明図である。図22(a)には、路面テクスチャTx22を配置した連結画像を示した。正射画像は画像変換時に逆台形となるため、連結画像は、両端がのこぎり刃状にギザギザとなる。ギザギザの部分は、正射画像への変換によって歪みが大きく生じている部分であり、標示が含まれているとしても、その位置精度は必ずしも高くない。また、ギザギザ部分に含まれる標示は、部分的に欠落している可能性があり、完全な形では得られない可能性が高い。このような理由から、本実施例では、サイドカット処理として、このギザギザ部分を削除する。ただし、ギザギザを除く部分を不用意に大きく削除すると、完全な形で描かれていた標示の一部または全部を削除してしまう可能性があるため、削除する領域はギザギザ部分をぎりぎり削除することができる程度に設定する。
【0148】
両端の削除する範囲を決定するため、CPUは、連結画像を包含する矩形領域RCT22を求める。矩形の中心線CL22は、距離軸に平行な直線となるが、必ずしも距離軸と一致しているとは限らない。路面テクスチャTX22の大きさまたは位置にばらつきがある場合には、矩形RCT22には、領域A22に示すように、路面テクスチャTx22と接触しない部分も生じてくる。この矩形RCT22の両端の辺が、削除すべき領域の外側を規定するラインとなる。
【0149】
図22(b)は、削除すべき領域の内側のラインを規定するための処理例を示している。本実施例では、連結画像の全体でギザギザの内側に内接する円C22を求めた。このように設定された円C22を図中の上下方向に移動させた場合に、ギザギザの一部が円C22内に入り込むことはない。こうして設定された円C22の両端に上下方向に接する接線SC22L、SC22Rが、削除すべき領域の境界線となる。
図22(c)は、サイドカット処理において削除すべき領域を示している。図22(a)で設定された矩形RCT22の両端の辺と、図22(b)で設定された接線SC22L、SC22Rで挟まれた領域(図中のハッチングを付した領域)が削除すべき領域となる。
【0150】
図23はサイドカット処理例(2)を示す説明図である。図23(a)は連結画像を示している。図示の都合上、ここでは横配置で連結画像を示した。
CPUは連結画像を2値化して道路部分をベタ画像化する(図23(b))。そして、この状態で道路部分のエッジL231を抽出する(図22(c))。
次に、CPUは抽出されたエッジL231の太らせ処理を行う。図22(c)の右下にエッジL231の拡大図を示した。実線が抽出されたエッジL231を示し、破線が太らせた結果を表している。太らせる量は、エッジのギザギザが消える範囲で任意に設定可能である。
【0151】
太らせ処理によって、図23(d)に示すように、ギザギザ領域は、凹凸の振幅よりやや太い2本の帯L232となる。2本の帯L232の間の領域W23は、ギザギザ領域が除かれた道路画像となっている。
そこで、CPUは図23(e)に示すように、この領域W23に相当する部分のベタ画像を生成する。そして、図23(f)に示すように、連結画像(図23(a))とベタ画像(図23(e))との重なり部分のみを抽出することによって、ギザギザ領域を削除した状態の連結画像を得る。
【0152】
(4)横断歩道の抽出:
図21に戻り、横断関連ペイント抽出処理について説明する。
サイドカット処理が終了すると、CPUはエッジ抽出を行う(ステップS313)。
抽出は、RGBなど種々の色系で行うことが可能である。本実施例では、連結画像を、H(色相)、S(彩度)、V(明度)の色空間に変換した上で、V(明度)画像を用いて標示領域を抽出した。V画像は、無彩色で明度だけを成分として有する画像となるため、いわゆるグレースケールの画像である。種々の色空間で抽出を試みた結果、V画像を用いた場合に白色または黄色で描かれた標示を最も精度良く抽出できることが見いだされた。
エッジ抽出を行うと、連結画像内にある種々の標示の輪郭線が抽出される。ここには、横断歩道を表す縞模様も多数含まれる。
【0153】
CPUは、エッジ抽出した画像に基づき、横断歩道候補領域を抽出する(ステップS314)。この処理は、抽出されたエッジ画像に対して、横断歩道としては明らかに小さすぎる領域や大きすぎる領域を削除することによって横断歩道の候補領域を抽出する処理である。
次に、CPUは、抽出された各候補領域に対して(ステップS315)、横断歩道抽出処理(ステップS316)、横断歩道領域処理(ステップS317)、横断歩道情報出力処理(ステップS318)を行う。
横断歩道抽出処理(ステップS316)とは、横断歩道の候補領域の中から、横断歩道に相当する部分を抽出する処理である。
横断歩道領域処理(ステップS317)とは、横断歩道として抽出された部分を包含する外形形状を求める処理である。
横断歩道情報出力処理(ステップS318)とは、横断歩道を包含する外形形状に近似した矩形形状を求め、出力する処理である。
【0154】
図24は横断歩道候補領域の抽出処理等を示す説明図である。図23のステップS314〜S318の各処理例を示した。
図24(a)は、連結画像からエッジを抽出した画像(以下、「エッジ画像」と呼ぶ)を示している。この画像では、道路に描かれた種々の標示の輪郭部分が抽出されている。図の領域A24が横断歩道に相当する部分である。
CPUは、横断歩道候補領域の抽出処理として、エッジ画像から、横断歩道としては小さすぎる領域(例えば、図中の領域C24)や、大きすぎる領域(図中の領域B24)を削除する。エッジ画像では、領域A24に含まれる横断歩道の線分も必ずしも連続しているとは限らないため、横断歩道も領域C24と同様に削除されてしまう可能性がある。そこで、本実施例では、横断歩道候補領域の抽出処理を次の手順で行った。
【0155】
まず、エッジ画像の各線分を縦方向の線、横方向の線に分ける。縦方向の軸に対して±45°以内の傾きにある線分を縦方向線分とし、横方向の軸に対して±45°以内の傾きにある線分を横方向線分とすればよい。そして、これらの線分を連結する。連結は図中の領域C24に示すように、縦横方向に各線分を一定サイズだけ太らせ処理を行えばよい。この処理によって近接した線分同士は連結されることになる。太らせ量は、横断歩道を構成する各線分同士が連結される程度の値を設定しておけばよい。太らせ処理によって線分を連結した後は、細らせ処理によってもとの太さに戻しておくことが好ましい。
【0156】
こうして連結が完了したら、横断歩道としては長すぎる線分、および短すぎる線分を削除する。削除するための閾値は、横断歩道としての標準的な大きさに基づき任意に設定可能である。こうすることにより、例えば、領域B24は大きすぎる部分として削除でき、領域C24は短すぎる部分として削除することができる。
【0157】
図24(b)は、横断歩道候補領域を抽出した結果を示している。CPUは、この候補領域に対して、横断歩道抽出処理、即ち横断歩道の候補領域の中から、横断歩道に相当する部分を抽出する処理を行う。図中の例では、領域D24、E24を削除し、領域A24を抽出する処理である。本実施例では、統計処理によって他の線分よりも極端に長い線分、短い線分などを削除するものとした。
この処理を行うため、CPUは、まず領域内の縦方向の線分を抽出する。そして、各線分の位置情報、即ち中心位置、長さ、幅を求め、これらの平均値、標準偏差を求める。
【0158】
次に、CPUは「線分の高さ平均値+標準偏差」を超える長さの線分を、長すぎる線分として削除する。
CPUは、次に、各線分の横方向の間隔と、その平均値、標準偏差を求める。そして、隣の線分との間隔が、この「平均値+標準偏差」を超えるものについては、横断歩道の縞模様を形成するには、離れた位置にあると判断し、削除する。
更に、CPUは残った線分の中心位置の点列を直線近似する。そして、中心位置が近似直線から所定以上の距離にある線分を、横断歩道からずれた位置にある線分であると判断して削除する。
【0159】
図24(c)は、横断歩道抽出処理を施した結果を表している。横断歩道の縞模様を構成する縦線分が抽出されている。領域F24に突出した部分があるのは、横断歩道に近接して描かれた車線境界線を誤って認識しているためである。同様にして横線分も抽出可能である。
CPUは、横断歩道領域処理として、横断歩道として抽出された部分(図24(c))を包含する外形形状を求める。この処理を行うため、CPUは、横断歩道の縞模様に当たる部分が閉図形となるように、図24(c)の縦線分および同様にして抽出された横線分を結合する。
そして、各閉図形の領域を太らせる。この処理によって隣接する縞模様同士が結合するため、図24(d)に示す凸形状の領域G24が得られる。かかる形状が得られた後、この領域G24を収縮させる処理を施しても良い。こうすることによって、凸部分が縮小し、矩形に近い領域を特定することが可能となる。
【0160】
以上の処理が完了すると、CPUは最後に横断歩道情報出力処理として、横断歩道を包含する外形形状に近似した矩形形状を求め、出力する。図24(e)に示すように、横断歩道領域処理で得られた破線領域とのずれが最も小さくなるよう矩形H24の大きさを決定すればよい。
図24(e)の例では、凸形状の領域G24を利用する場合を示したが、凸形状の領域G24に対して縮小処理を施し、凸部分を縮小させてから、矩形H24を求めるようにしてもよい。
【0161】
(5)自転車横断帯等の抽出:
図21に戻り、横断関連ペイント抽出処理について説明する。
全候補領域について(図21のステップS315)、横断歩道の抽出が完了すると、CPUは自転車横断帯/停止線候補領域抽出を行う(ステップS320)。この処理は、抽出されたエッジ画像に対して、自転車横断帯/停止線としては明らかに小さすぎる領域や大きすぎる領域を削除することによってこれらの候補領域を抽出する処理である。
次に、CPUは、抽出された各候補領域に対して(ステップS321)、自転車横断帯/停止線抽出処理(ステップS322)を行う。これは、自転車横断帯/停止線の候補領域の中から、自転車横断帯/停止線に相当する部分を抽出する処理である。
そして、抽出された領域の太さが閾値Wthよりも大きい場合には(ステップS323)、自転車横断帯領域処理(ステップS324)、自転車横断帯情報出力処理(ステップS325)を行う。
【0162】
閾値Wth以下の場合には、停止線領域処理(ステップS326)、停止線情報出力処理(ステップS327)を行う。
自転車横断帯領域処理(ステップS324)、停止線領域処理(ステップS326)とは、自転車横断帯または停止線として抽出された部分を包含する外形形状を求める処理である。
自転車横断帯情報出力処理(ステップS325)、停止線情報出力処理(ステップS327)とは、自転車横断帯または停止線を包含する外形形状に近似した矩形形状を求め、出力する処理である。
【0163】
図25は自転車横断帯/停止線候補領域の抽出処理等を示す説明図である。図23のステップS320〜S327の各処理例を示した。
図25(a)は、処理対象となる連結画像を示している。自転車横断帯とは、横断歩道の横に、横断歩道に平行に描かれている2本の直線からなる領域A25である。
図25(b)は、エッジ画像を示している。ここでは、道路のパスに直交する方向の線分のみを抽出した例を示した。領域D25が自転車横断帯を表しており、領域C25が停止線を表している。領域B25はノイズである。
CPUは、次の手順、自転車横断帯/停止線の領域を抽出する。まず、横方向の線分に対して縦方向の線分を結合して領域化する。そして、各領域に対して太らせ処理を行う。太らせ量は、自転車横断帯を構成する2本の平行線が結合される程度の値とする。太らせ処理の結果、自転車横断帯は2本線が結合した一つの幅広の領域となる。このように太らせ処理を行った後、CPUは、各領域に対して自転車横断帯の境界線および停止線を構成する線分としては小さすぎる領域(例えば、図中の領域B25)や、大きすぎる領域を削除する。
次に、CPUは残った領域のうち長手方向が距離軸に直交する方向つまり左右方向に伸びている領域を抽出し、そのうち太いものを自転車横断帯、細いものを停止線の候補領域とする。
【0164】
図25(c)は、自転車横断帯の候補領域に対応する道路画像E25を示している。本実施例では、このように、道路画像からエッジを抽出し、自転車横断帯の候補領域を決定した後、再度、決定された領域に対応する道路画像を切り出し、この画像を用いて、より詳細に自転車横断帯を抽出する方法を採っている。
【0165】
図25(d)は、抽出された画像(図25(c))に対してエッジ抽出を行った結果を示している。上の方に矩形波状の凹凸が表れているのは、自転車横断帯に隣接するように描かれている横断歩道の一部を抽出しているからである。CPUは、自転車横断帯抽出処理、即ち自転車横断帯の候補領域の中から、自転車横断帯に相当する部分を抽出する処理を行う。
この処理を行うため、CPUは、図25(d)中の拡大図で示したように、抽出した領域の輪郭の太らせ処理を行う。実線は輪郭を示し、破線は太らせ処理の結果を表している。太らせ処理を行うと、図25(d)中の凹凸部分は、それぞれ隣接する部分と結合して消滅する。この結果、図25(e)に示すように凹凸のない矩形に近似した外形形状を得ることができる。太らせ処理によって隣接する部分と結合させた後、もとの境界線が得られる程度まで外形形状を縮小してもよい。
【0166】
以上の処理が完了すると、CPUは最後に自転車横断帯情報出力処理として、自転車横断帯を包含する外形形状に近似した矩形形状を求め、出力する。図25(f)に示すように、自転車横断帯領域処理で得られた破線領域とのずれが最も小さくなるよう矩形F25の大きさを決定すればよい。
図25では、自転車横断帯の例を示したが、停止線の場合も同様である。図25(b)で太らせ処理を施した結果、自転車横断帯よりも幅が狭い領域を停止線として抽出すればよい。
以上で説明した処理によって、CPUは横断関連ペイント抽出処理を完了する。
【0167】
(6)境界線(実線)抽出処理:
図26は境界線(実線)抽出処理の内容を示す説明図である。図26(a)には、車線境界線を含む画像を例示した。図示の便宜上、画像を横配置の状態で示してある。図示する通り、この画像には、3本の車線を区分けする実線の車線境界線、停止線および進行方向の規制を示す矢印が含まれている。
【0168】
図26(b)は、画像を2値化して標示部分を抽出した状態を示している。本実施例では、図26(a)に示す画像を、H(色相)S(彩度)V(明度)の色空間に変換し、V画像を用いて、所定値以上の明度を有する部分を抽出した。2値化のための所定値は、白線および黄色線が精度良く抽出できる値を設定すればよい。
【0169】
次に、図26(c)に示すように、この画像から所定長さ以上の線分を抽出する。所定長さは、矢印等を排除できる範囲で任意に設定可能である。連結画像の画質によっては、2値化した画像(図26(b))において、車線境界線が分断されてしまう可能性もあるため、線分の抽出に先立って、線分の連結処理を施しても良い。つまり、各線分を一定範囲で太らせ処理をして、微小な間隙を埋めた後、縮小処理によってもとの太さに戻すのである。こうすることによって、車線境界線を精度良く抽出することができる。
【0170】
図26(c)の状態では、停止線の一部が誤って抽出されている。そこで、次は、抽出された線分のうち、距離軸に平行な線分のみを抽出する。この図では連結画像を横配置で示しているから、左右方向の線分を抽出することになる。こうすることにより、図26(d)に示すように、停止線が排除され、車線境界線を抽出することができる。
【0171】
こうして得られた車線境界線の画像データとして認識結果を出力してもよい。また、図示を省略したが、これらの車線境界線に対して、直線近似を施して、得られた直線を車線境界線の認識結果を出力してもよい。更に、原画像データ(図26(a))のH(色相)画像から、図26(d)で抽出された領域と重なる部分を抽出し、車線境界線が白色か黄色かの判断を行っても良い。
【0172】
(7)境界線(破線)抽出処理:
図27は境界線(破線)抽出処理の内容を示す説明図である。図27(a)には、車線境界線を含む画像を例示した。図示する通り、この画像には、3本の車線を区分けする破線の車線境界線L27、および規制を示す文字C27が含まれている。この図には含まれていないが、場所によっては進行方向の規制を示す矢印などが含まれることもある。
【0173】
図27(b)は、画像を2値化して標示部分を抽出した状態を示している。2値化の方法は、実線の車線境界線抽出の場合(図26(b))と同様である。
次に、この画像から所定長さ以上の線分を抽出する。所定長さは、矢印等を排除しつつ、破線の境界線を抽出できる範囲で任意に設定可能である。連結画像の画質によっては、2値化した画像(図27(b))において、車線境界線が分断されてしまう可能性もあるため、線分の抽出に先立って、線分の連結処理を施しても良い。つまり、各線分を一定範囲で太らせ処理をして、微小な間隙を埋めた後、縮小処理によってもとの太さに戻すのである。ただし、図27(a)に示すように車線境界線L27に接触しそうな程度に文字C27が描かれているため、車線境界線L27が文字C27に接触しない範囲で太らせ量を設定することが好ましい。太らせ処理を、距離軸に平行な方向(図中の縦方向)にのみ施すようにしてもよい。
また、線分の抽出に当たっては、距離軸に平行な方向の線分のみを抽出することが好ましい。
【0174】
図27(c)は、破線の車線境界線L27を抽出した結果を示している。
こうして得られた車線境界線の画像データの形で認識結果を出力してもよい。また、図示を省略したが、これらの車線境界線に対して、直線近似を施して、得られた直線を車線境界線の認識結果を出力してもよい。更に、原画像データ(図27(a))のH(色相)画像から、図27(c)で抽出された領域と重なる部分を抽出し、車線境界線が白色か黄色かの判断を行っても良い。
【0175】
(8)矢印抽出処理:
図28は矢印抽出処理の内容を示す説明図である。図28(a)には、矢印A281、A282、および車線境界線、横断歩道、停止線などが含まれている画像を例示した。図示の便宜上、距離軸が左右方向となる横配置で示している。
図28(b)は、この画像を2値化して標示部分を抽出した状態を示している。2値化の方法は、実線の車線境界線抽出の場合(図26(b))と同様である。2値化画像によって、矢印A281、A282、横断歩道A283などの標示部分が抽出されている。
【0176】
次に、この画像から矢印に相当する長さ、幅の領域を抽出する。
矢印の長さは、横断歩道の縞模様一つ一つの線分の長さと類似している。また、図中には示していないが、路上にある速度規制の数字などとも似たサイズとなっている。そこで、これらの標示と矢印を区別するために予め各線分に太らせ処理を施すことが好ましい。太らせ処理によって、横断歩道の縞模様や、文字を構成する線分が結合されるため、矢印と明瞭に区分できる程度の大きな領域を構成させることができる。この太らせ処理は、かかる効果を狙って行うものであるため、距離軸に直交する方向、即ち図中の上下方向に大きな太らせ量とすることが好ましい。
このように太らせ処理を施すことで、横断歩道および文字等を排除することができる。
【0177】
図28(c)は、横断歩道等が排除された結果を示している。本実施例は、この画像に対して、OCRモデルを用いたパターンマッチングにより矢印を抽出する。OCRモデルとは、予め路面を撮影した画像からの切り出しによって生成されたパターンマッチング用の矢印の画像データである。OCRモデルは、道路面に描かれている矢印の種類に応じて用意されている。例えば、直進矢印、右折矢印、左折矢印、直進右折矢印、直進左折矢印などが挙げられる。
パターンマッチングでは、これらのOCRモデルを、図28(c)の画像に重ね合わせ、両者のずれが最小となるようにOCRモデルの位置およびサイズを変更する。そして、最小となった時のずれ量に応じて、画像に描かれている標示がOCRモデルと一致するか否かを判断するのである。本実施例では、信頼度が0.99以上の場合に、標示を矢印と認識するようにした。
【0178】
こうして得られた矢印の画像データの形で認識結果を出力してもよい。また、図示を省略したが、これらの矢印に対して、存在領域の形で認識結果を出力してもよい。つまり、横断歩道の抽出(図24(e))で示したように、横断歩道が存在する領域を現す幾何形状の位置およびサイズを認識結果として出力するのである。矢印の場合には、矢印の種類、および矢印を包含する矩形などの幾何形状の位置およびサイズを認識結果として出力することができる。こうすることによって、低容量のデータで認識結果を保存することができる利点がある。
【0179】
(9)ゼブラ抽出処理:
図29はゼブラ抽出処理の内容を示す説明図である。ゼブラとは、路面上の縞模様のうち、横断歩道や後述する減速帯とは異なるものを言う。中央分離帯や右左折車線が増える部分に設けられていることが多く、距離軸に対して斜めの縞模様となっている点が特徴である。
【0180】
図29(a)にゼブラを含む画像の例を示した。図示の便宜上、距離軸が左右方向となる横配置で示している。この例では、中央分離帯の部分にゼブラA29が描かれている。
図29(b)は、この画像を2値化して標示部分を抽出した状態を示している。2値化の方法は、実線の車線境界線抽出の場合(図26(b))と同様である。
図29(c)は、2値画像に対して、所定値以上の領域を抽出した結果を示している。ゼブラA29は、距離軸に沿った方向(図中の左右方向)の境界線と斜線部とが結合しているため、全体の面積は比較的大きくなる。ゼブラA29を抽出するための所定値は、車線境界線よりも大きく、ゼブラA29よりも小さい範囲で任意に設定可能である。
【0181】
次に、距離軸に直交する方向の幅が狭い領域を除去する。このために距離軸に直交する方向(図中の上下方向)に各領域を収縮させる。こうすることによって、図29(d)に示すように、ゼブラA29の境界線が除去される。境界線が除去された後、収縮分を戻すように、各領域を上下方向に膨張させる処理を施しておく。
今度は、図29(d)で得られた縞模様を、距離軸に沿う方向に太らせる。こうすることによって、縞模様同士が結合し、ゼブラ全体を包含するベタ領域を得ることができる。
そして、このベタ領域で原画像からゼブラを抽出する。図29(e)は、こうして得られたベタ領域で、原画像(図29(a))からゼブラA29のみを改めて切り出した状態を示している。つまり、図29(b)〜図29(d)までの処理は、連結画像から、ゼブラA29の候補領域を絞り込むための処理である。こうして得られた候補領域に該当する箇所を、原画像(図29(a))から改めて抽出し、より精度良くゼブラを抽出するのである。
【0182】
抽出結果(図29(e))に対して施す処理は、図29(b)〜図29(d)と同様である。つまり、図29(e)の画像を2値化し、得られた線分を太らせ処理して、結合させることによって、図29(f)に示すようにゼブラB29を抽出する。ただし、この処理では、車線境界線など、ゼブラ以外の標示がほぼ排除されているため、太らせ処理における太らせ量などを、ゼブラB29の抽出に最適な値に設定しておくことが可能である。
このように、まずゼブラA29の存在する候補領域を絞り込んでおき、その結果を踏まえて再度、原画像から切り出した画像を処理するという2段階の処理を経ることによって、精度良くゼブラB29を抽出することが可能である。この2段階での処理は、ゼブラのみならず、他の標示に対しても適用することができる。
【0183】
(10)Uターン抽出処理:
図30はUターン抽出処理の内容を示す説明図である。図30(a)にUターンを含む道路画像を示した。図示の便宜上、距離軸が横(図中の左右方向)に来る横配置で示した。Uターン矢印とは、図中の矢印A30である。
【0184】
本実施例では、Uターン矢印は、人工モデルを用いたパターンマッチングで抽出する。図30(b)はUターン矢印の人工モデルを示している。人工モデルは、コンピュータグラフィックスにより作成したものである。
【0185】
図30(c)は、原画像(図30(a))の2値化画像を示している。2値化の方法は、実線の車線境界線抽出の場合(図26(b))と同様である。
この画像に対して、各領域について、距離軸に沿った方向(図中の左右方向)の長さ、および距離軸に直交する方向(図中の上下方向)の幅を求める。そして、この長さ、幅が、Uターン矢印に相当する所定値範囲内にない領域を排除する。図30(d)は、排除結果を示している。Uターン矢印A30の他、同等のサイズを有する転回禁止記号B30(図中の×印)も抽出されていることが分かる。
こうして得られた抽出結果に対して、図30(b)で示した人工モデルを適用し、パターンマッチングによってUターン矢印を抽出する。本実施例では、信頼度が0.85以上の標示をUターン矢印と判断するようにした。
【0186】
こうして得られたUターン矢印の画像データの形で認識結果を出力してもよい。また、図示を省略したが、これらのUターン矢印に対して、存在領域の形で認識結果を出力してもよい。つまり、Uターン矢印を包含する矩形などの幾何形状の位置およびサイズを認識結果として出力することができる。こうすることによって、低容量のデータで認識結果を保存することができる利点がある。
【0187】
(11)転回禁止抽出処理:
図31は転回禁止抽出処理の内容を示す説明図である。図31(a)に転回禁止を含む道路画像を示した。図示の便宜上、距離軸が横(図中の左右方向)に来る横配置で示した。転回禁止とは、図中の×印A31である。
本実施例では、転回禁止は、人工モデルを用いたパターンマッチングで抽出する。図31(b)は転回禁止の人工モデルを示している。人工モデルは、コンピュータグラフィックスにより作成したものである。
【0188】
図31(c)は、原画像(図31(a))の2値化画像を示している。2値化の方法は、実線の車線境界線抽出の場合(図26(b))と同様である。
この画像に対して、各領域について、距離軸に沿った方向(図中の左右方向)の長さ、および距離軸に直交する方向(図中の上下方向)の幅を求める。そして、この長さ、幅が、転回禁止に相当する所定値範囲内にない領域を排除する。図31(d)は、排除結果を示している。転回禁止A31の他、同等のサイズを有するUターン矢印B31も抽出されていることが分かる。
こうして得られた抽出結果に対して、図31(b)で示した人工モデルを適用し、パターンマッチングによって転回禁止を抽出する。本実施例では、信頼度が0.8以上の標示を転回禁止と判断するようにした。
【0189】
こうして得られた転回禁止の画像データの形で認識結果を出力してもよい。また、図示を省略したが、転回禁止に対して、存在領域の形で認識結果を出力してもよい。つまり、転回禁止を包含する矩形などの幾何形状の位置およびサイズを認識結果として出力することができる。こうすることによって、低容量のデータで認識結果を保存することができる利点がある。
【0190】
(12)規制抽出処理:
図32は規制抽出処理の内容を示す説明図である。図32(a)に規制A32を含む画像を例示した。距離軸は上下方向となる縦配置で示している。
規制とは、例えば、バスレーン専用となる時間帯を表す文字(図中の「17−19」と書いた数字)など、通行の規制を示す文字、数字を言う。図中には、「専用」の文字も見えるが、これは後述する「バスレーン」標示で処理するため、規制の処理には含まない。
図32(b)は、この画像を2値化して標示部分を抽出した状態を示している。2値化の方法は、実線の車線境界線抽出の場合(図26(b))と同様である。
【0191】
次に、この画像の領域のうち、白色の領域を抽出する。白色を抽出したのは、この例で、規制が白色の数字を対象としているからである。黄色で描かれた規制を対象とする場合には、黄色の領域を抽出することが好ましい。
白色の領域が抽出されると、図32(c)に示すように、これらの領域に対して太らせ処理を施す。規制の抽出処理では、数字や文字などの標示を処理対象とするため、一旦、これらを結合して一つの領域として捉えた方が抽出しやすいからである。図の例では、「専用」の文字B32、および規制の数字(17−19)A32を構成する各線分が、それぞれ結合し、まとまった領域を形成していることが分かる。太らせ量は、このように、文字または数字を一つの領域にまとめられる範囲で任意に設定可能である。
【0192】
こうして太らせ処理によって、数字、文字を一つの領域にまとめた後、各領域の距離軸に沿う方向(図中の上下方向)の長さ、距離軸に直交する方向(図中の左右方向)の幅に基づいて、規制に相当する領域を抽出する。例えば、図32(c)の例では、「専用」の文字がつぶれた領域は、距離軸に沿う方向(図の上下方向)の長さが大きいため、規制とは区別することができる。車線境界線は、距離軸に沿う方向(図の上下方向)の長さが大きいと共に、距離軸に直交する方向(図中の左右方向)が細いため、規制とは区別することができる。
こうして、図32(d)に示すように、規制の領域を抽出することができる。
【0193】
規制の領域を抽出した後は、この領域と重なる部分を、原画像(図32(a))から再度抽出し、2値化して白色の領域を抽出した後、OCRモデルを用いたパターンマッチングにより規制か否かを判定する。OCRモデルとは、予め路面を撮影した画像からの切り出しによって生成されたパターンマッチング用の規制の画像データである。OCRモデルは、道路面に描かれている規制の種類に応じて用意されている。本実施例では、信頼度が0.9以上の場合に、標示を規制と認識するようにした。
【0194】
こうして得られた規制の画像データの形で認識結果を出力してもよい。また、図示を省略したが、これらの規制に対して、存在領域の形で認識結果を出力してもよい。つまり、規制が存在する領域を現す幾何形状の位置およびサイズを認識結果として出力するのである。例えば、規制の種類、および規制を包含する矩形などの幾何形状の位置およびサイズを認識結果として出力することができる。こうすることによって、低容量のデータで認識結果を保存することができる利点がある。
【0195】
(13)数字抽出処理:
図33は数字抽出処理の内容を示す説明図である。図33(a)に数字A33を含む画像を例示した。距離軸は上下方向となる縦配置で示している。
数字とは、ここでは、速度規制の数字を表している。図中では「50」の数字が描かれている。
図33(b)は、この画像を2値化して標示部分を抽出した状態を示している。2値化の方法は、実線の車線境界線抽出の場合(図26(b))と同様である。この際、黄色の領域のみを抽出するようにしてもよい。
【0196】
次に、この画像に対して、図33(c)に示すように、太らせ処理を施す。数字の抽出処理では、2桁の数字を処理対象とするため、一旦、これらを結合して一つの領域として捉えた方が抽出しやすいからである。図の例では、数字A33の「5」と「0」が結合し、まとまった領域を形成していることが分かる。太らせ量は、このように数字を一つの領域にまとめられる範囲で任意に設定可能である。
【0197】
こうして太らせ処理によって、数字を一つの領域にまとめた後、各領域の距離軸に沿う方向(図中の上下方向)の長さ、距離軸に直交する方向(図中の左右方向)の幅に基づいて、数字に相当する領域を抽出する。例えば、図33(c)の例では、車線境界線は、距離軸に沿う方向(図の上下方向)の長さが大きいと共に、距離軸に直交する方向(図中の左右方向)が細いため、数字とは区別することができる。
こうして、図33(d)に示すように、数字の領域A33を抽出することができる。
【0198】
数字の領域を抽出した後は、この領域と重なる部分を、原画像(図33(a))から再度抽出し、2値化した後、OCRモデルを用いたパターンマッチングにより数字か否かを判定する。OCRモデルは、道路面に描かれている数字の種類に応じて用意されている。本実施例では、信頼度が0.9以上の場合に、標示を数字と認識するようにした。
【0199】
こうして得られた数字の画像データの形で認識結果を出力してもよい。また、図示を省略したが、これらの数字に対して、存在領域の形で認識結果を出力してもよい。つまり、数字が存在する領域を現す幾何形状の位置およびサイズを認識結果として出力するのである。例えば、数字の種類、および数字を包含する矩形などの幾何形状の位置およびサイズを認識結果として出力することができる。こうすることによって、低容量のデータで認識結果を保存することができる利点がある。
【0200】
(14)横断歩道予告抽出処理:
図34は横断歩道予告抽出処理の内容を示す説明図である。横断歩道予告とは、横断歩道の手前にある菱形の標示である。本実施例では、横断歩道予告の抽出には、人工モデルを用いた。図34(a)は横断歩道予告の人工モデルを表している。人工モデルは、コンピュータグラフィックスにより作成したものである。
【0201】
図34(b)に、横断歩道予告を含む道路画像を示した。図示の便宜上、距離軸が横(図中の左右方向)に来る横配置で示した。横断歩道予告は、図中の菱形の標示A34である。
図34(c)は、原画像(図34(b))の2値化画像を示している。2値化の方法は、実線の車線境界線抽出の場合(図26(b))と同様である。
この画像に対して、各領域について、距離軸に沿った方向(図中の左右方向)の長さ、および距離軸に直交する方向(図中の上下方向)の幅を求める。そして、この長さ、幅が、横断歩道予告に相当する所定値範囲内となる領域を抽出する。図34(d)は、抽出結果を示している。菱形の標示A34が2つ抽出されていることが分かる。
【0202】
こうして得られた抽出結果に対して、図34(a)で示した人工モデルを適用し、パターンマッチングによって横断歩道予告を抽出する。本実施例では、信頼度が0.85以上の標示を横断歩道予告と判断するようにした。
【0203】
こうして得られた横断歩道予告の画像データの形で認識結果を出力してもよい。また、図示を省略したが、横断歩道予告に対して、存在領域の形で認識結果を出力してもよい。つまり、横断歩道予告を包含する矩形などの幾何形状の位置およびサイズを認識結果として出力することができる。こうすることによって、低容量のデータで認識結果を保存することができる利点がある。
【0204】
(15)減速帯抽出処理:
図35は減速帯抽出処理の内容を示す説明図である。減速帯とは、距離軸に直交する所定長さ線分が、距離軸方向に平行に配置されている標示を言う。
図35(a)に減速帯を含む道路画像を示している。図示の便宜上、距離軸が横(図中の左右方向)に来る横配置で示した。減速帯は、図中の縞模様A35である。
図35(b)は、原画像(図35(a))の2値化画像を示している。2値化の方法は、実線の車線境界線抽出の場合(図26(b))と同様である。減速帯は黄色・赤色で描かれているのが通常であるため、この段階で、黄色または赤色の領域を抽出するようにしてもよい。
【0205】
次に、この画像に対して、各領域について、所定以上の面積の領域を抽出する。面積に代えて、距離軸に沿った方向(図中の左右方向)の長さ、および距離軸に直交する方向(図中の上下方向)の幅が、減速帯に相当する値となる領域を抽出するようにしてもよい。図35(c)は、面積に基づいて抽出した結果を示している。面積、長さ・幅のいずれを用いる場合も、減速帯の大きさに応じて、抽出するか否かの判断基準となる値を調整しておけばよい。図35(c)では、縞模様を構成する線分が部分的に断裂していることが分かる。
こうして得られた抽出結果に対して、図35(d)に示すように、各領域に太らせ処理を施す。こうすることによって、図35(c)に見られる断裂部分が埋められていることが分かる。
【0206】
次に、太らせ処理を施された領域A35に重なる領域を原画像(図35(a))から抽出する。図35(e)は、抽出結果を表している。
こうして抽出された画像から、黄色または赤色の領域を抽出することによって、図35(f)に示すように、減速帯を抽出することができる。この画像に対し、更に、収縮処理を施して、図中に生じている横線を削除するようにしてもよい。また、所定面積以下となる微少領域を削除し、減速帯のみを明瞭に抽出するようにしてもよい。
更に、縞模様を構成する各線分の長さを整えてもよい。
【0207】
こうして得られた減速帯は、画像データの形で認識結果を出力してもよい。また、図示を省略したが、減速帯に対して、存在領域の形で認識結果を出力してもよい。つまり、減速帯を包含する矩形などの幾何形状の位置およびサイズを認識結果として出力することができる。こうすることによって、低容量のデータで認識結果を保存することができる利点がある。
【0208】
(16)路面塗装抽出処理:
図36は路面塗装抽出処理の内容を示す説明図である。路面塗装とは、急カーブその他の運転者の注意を喚起すべき箇所に対し、通行の安全のために施されている赤色等の舗装領域である。
図36(a)に路面塗装を含む画像を例示した。距離軸が縦(図の上下方向)となる縦配置で示している。図示の便宜上、塗装A36にはハッチングを付して示したが、実際には、この領域全体が赤色でベタ塗りされている。
【0209】
他の標示が白または黄色で描かれているのに対し、ここで処理対象としている塗装部分は赤色で描かれている。従って、塗装部分の抽出としては、H(色相)S(彩度)V(明度)の色空間のうち、H(色相)画像を用い、赤色の部分を抽出する。図36(b)は抽出結果を示している。塗装部分A36が抽出されているが、塗りムラや光の反射、影などによる色調の変化があるため、一部の領域が抽出から漏れることにより、ホールH36が生じている。
【0210】
抽出された領域中のホールH36を埋めるため、抽出された領域に太らせ処理を施す。または、抽出された領域に囲まれている部分H36を、無条件に埋めるようにしてもよい。
図36(c)は、こうしてホールH36を埋めた結果を表している。ホールH36は埋められるものの、周囲に微少な領域B36が散在している。
【0211】
そこで、次に、面積が所定値以上となる領域を抽出する。この所定値は、微少領域を排除しつつ、塗装部分を十分に抽出できる値を任意に設定可能である。
こうすることにより、塗装部分A36を抽出することができる。
塗装部分A36には、定型的な形状はないため、画像データとして認識結果を出力することになる。
【0212】
(17)バスレーン文字抽出処理:
図37はバスレーン文字抽出処理の内容を示す説明図である。バスレーン文字とは、「バス専用」、「バス優先」などの文字である。
図37(a)にバスレーン文字A37を含む画像を例示した。距離軸は上下方向となる縦配置で示している。図中では「バス専用」の数字が白色で描かれている。
図37(b)は、この画像を2値化して標示部分を抽出した状態を示している。2値化の方法は、実線の車線境界線抽出の場合(図26(b))と同様である。「バス専用」の文字の他、車線境界線が抽出されていることが分かる。
【0213】
次に、この画像に対して、図33(c)に示すように、太らせ処理を施す。ここでは、「バス専用」の濁点を「ハ」と結合させ得る程度の太らせ量で処理を行う。この結果に対して、所定面積以下の微少領域を削除する処理を施す。こうすることによって、「バ」の濁点を残しつつ、微少領域を排除することができる。
【0214】
微少領域を削除した後、各領域の距離軸に沿う方向(図中の上下方向)の長さが「バス専用」の各文字に相当する値となっている領域を抽出する。車線境界線は、縦方向が長いため、こうすることによって、車線境界線を排除し、「バス専用」の文字のみを抽出することが可能となる。
【0215】
こうして抽出された結果に対して、図37(d)に示すように、太らせ処理を施す。この処理は、「バ」のように離れた線分で構成されている文字を、一つの領域として認識させるための処理である。太らせ量は、このような文字が結合される範囲で任意に設定可能である。
【0216】
太らせ処理が完了すると、図37(d)に示す領域と重なる部分を、原画像(図37(a))から再度抽出し、2値化した後、OCRモデルを用いたパターンマッチングによりバスレーン文字か否かを判定する。OCRモデルは、道路面に描かれているバスレーン文字の種類に応じて用意されている。本実施例では、信頼度が0.9以上の場合に、標示をバスレーン文字と認識するようにした。
【0217】
こうして得られたバスレーン文字は、画像データの形で認識結果を出力してもよい。また、図示を省略したが、これらの文字全体を包含する存在領域の位置およびサイズを認識結果として出力してもよい。例えば、文字の種類、および文字を包含する矩形などの幾何形状の位置およびサイズを認識結果として出力することができる。こうすることによって、低容量のデータで認識結果を保存することができる利点がある。
【0218】
(18)終り記号抽出処理:
図38は終り記号抽出処理の内容を示す説明図である。終わり記号とは、バスレーンなどの終了地点を示す「0」に斜め線を引いた形状の標示である。
図38(a)に終わり記号A38を含む画像を例示した。距離軸が上下方向となる縦配置で示している。
図38(b)は、この画像を2値化して標示部分を抽出した状態を示している。2値化の方法は、実線の車線境界線抽出の場合(図26(b))と同様である。
【0219】
次に、この画像に対して、図38(c)に示すように、領域内のホールを埋める処理を施す。つまり、終わり記号のように、抽出された領域で囲まれている部分を塗りつぶすのである。こうすることによって、終わり記号は、比較的大きい面積の領域となるため、他の標示と区別しやすくなる利点がある。
【0220】
ホールを埋める処理が終了すると、面積、距離軸に沿う方向(図の上下方向)の長さ、および距離軸に直交する方向(図の左右方向)の幅が、終わり記号に相当する領域を抽出する。図38(d)は、抽出結果を示している。図38(c)に含まれる「バス」という文字は、終わり記号と上下方向の長さ、左右方向の幅は終わり記号と同等であるが、線分で構成されており面積が終わり記号に比べて小さいため、終わり記号と区別することができる。車線境界線は、上下方向の長さが終わり記号よりも大きいと共に、左右方向の幅が終わり記号よりも狭いため、終わり記号と区別することができる。こうして、図38(d)に示すように、終わり記号のみを抽出することができる。
【0221】
次に、図38(d)に示す領域と重なる部分を、原画像(図38(a))から再度抽出し、2値化した後、OCRモデルを用いたパターンマッチングにより終わり記号か否かを判定する。本実施例では、信頼度が0.9以上の場合に、標示を終わり記号と認識するようにした。
【0222】
こうして得られた終わり記号は、画像データの形で認識結果を出力してもよい。また、図示を省略したが、終わり記号全体を包含する存在領域の位置およびサイズを認識結果として出力してもよい。こうすることによって、低容量のデータで認識結果を保存することができる利点がある。
【0223】
(19)相対座標変換処理:
図39は相対座標変換処理の内容を示す説明図である。本実施例では、以上で説明した各種標示の認識結果は、全て距離軸に沿って路面テクスチャを配置した直線状の画像を用いて得られている。従って、認識結果は、この直線状の画像を表示する座標系における相対的な位置が取得されているに過ぎない。相対座標変換処理は、この相対的な位置を、撮影時の位置座標に対応する絶対座標系の位置に変換する処理である。
【0224】
図の左側には、直線状の連結画像で標示を認識した状態を示している。ここでは、矩形の存在領域M391、M392を示した。これらの存在領域M391、M392の位置は、代表点としての重心G391、G392の位置座標で表される。この座標は、直線状の連結画像を表示するための座標系xn、ynで与えられる。この座標系xn、ynは、例えば、距離軸NP39をyn軸として定義することが好ましい。
【0225】
連結画像では、路面テクスチャTx39の代表点が、撮影時の位置に応じて、距離軸上に配置されている。各路面テクスチャTx39内の各点の代表点からの相対的な座標は既知である。従って、各存在領域の重心G391、G392の路面テクスチャTx39内での相対的な座標が求まるため、重心G391、G392から距離軸におろした垂線の足R391、R392の座標も求めることができる。
【0226】
図の右側には、絶対座標系XYに変換した状態を示した。道路は直線とは限らないから、絶対座標系では、撮影時に取得された位置座標に従い、パスRP39は曲線状に描かれることもある。
各存在領域M391、M392の位置および向きは次の方法で求める。
まず、この曲線状のパスRP39の基準点からの距離に応じて、存在領域の垂線の足R391、R392のパスRP39上での位置を求める。そして、点R391、R392から、それぞれ法線ベクトルV391、V392を描き、その終点を重心G391、G392とする。法線ベクトルV391、V392の大きさは、直線状の連結画像における点R391、G391間の距離、および点R392、G392間の距離にそれぞれ等しい。存在領域M391、M392の方向は、長手方向が法線ベクトルV391、V392と直交するように配置する。つまり、存在領域M391、M392と、重心G391、G392、および垂線の足R391、R392の相対的な位置関係が、直線状の連結画像(図の左側)と絶対座標系(図の右側)とで同一となるように、存在領域M391、M392を配置するのである。
この変換処理により、抽出された各標示の位置を絶対座標系の位置座標で表すことが可能となる。
【0227】
上述した絶対座標系への位置座標の変換処理は、次の方法で行っても良い。
まず、各存在領域の構成点、つまり存在領域の頂点の位置を、それぞれの頂点が属する路面テクスチャの代表点を基準とする相対座標で求める。そして、それぞれの路面テクスチャを絶対座標系XYでの配置に変換する際に、同様の変換をそれぞれの構成点に施すのである。こうすることにより、比較的容易に絶対座標系での構成点の位置座標を得ることができる。
ただし、この方法では、構成点ごとに座標変換するため、変換時に存在領域の形状が崩れる場合がある。従って、変換後の構成点の配置を、存在領域の形状に適合させる修正処理を施しても良い。
【0228】
D.効果:
以上で説明した実施例の道路面撮影システム100および路面標示地図生成装置200によれば、道路を走行しながら取得したフレーム画像を正射変換して得られた路面テクスチャを配置することにより、走行軌跡(パス)に沿って位置精度のよい連結画像を得ることができる。更に、複数のパスに沿って得られた連結画像同士を、位置合わせして合成することにより、道路全体の路面画像を得ることができる。この際、画像を撮影した際の各パスの位置精度が最も高いものを基準パスとして、他のパスをこの基準パスに合わせる方法を採ることにより、全体の位置精度を確保しつつ路面画像を生成することができる。
本実施例では、各パスの連結画像は、路面テクスチャを配置するまでに留め、これらを一枚の画像として合成していない。従って、路面テクスチャ単位で配置を平行移動することによって、複数パスの連結画像を容易に合成可能である。
【0229】
本実施例では、各パスの連結画像の生成、および複数パスの連結画像の合成のいずれの処理も、路面テクスチャに対するアフィン変換を施す必要がなく、単純な平行移動で行う。従って、複雑な画像処理に伴う画質の劣化を回避することができ、路面標示が鮮明な状態で表示された路面画像を得ることが可能である。また、平行移動で行うため、路面テクスチャ内の代表点を基準とする相対的な座標系は、連結画像の生成および合成の前後で維持される。この結果、代表点の絶対位置座標が得られれば、路面テクスチャ内の各点の絶対位置座標を容易に取得することが可能となり、路面標示の絶対位置座標を取得することも可能となる。
【0230】
また、本実施例では、距離軸に沿って路面テクスチャを配置することによって、直線状の連結画像を生成し、道路面の標示を抽出することができる。この結果、横断歩道は距離軸に平行な線分が、距離軸に直交する方向に並ぶ縞模様になるなど、それぞれの標示は定型的な現れ方をするため、比較的精度良く標示を認識することが可能となる。
こうして認識された標示の認識結果は、存在領域の位置および大きさで表すこともできるため、比較的低容量のデータで認識結果を保存することができる利点もある。
更に、直線状の連結画像を描くための座標系から、絶対座標の座標系に変換することによって、認識された標示の位置を、絶対座標系で得ることができる。従って、本実施例によれば、道路を撮影した画像から、道路面の標示の位置を精度良く取得することが可能となる。
【0231】
E.変形例:
(1)ゴミ画像による影響:
実施例では、連結画像にペイントが比較的良好に写されている場合に、ペイントを認識する処理を例示した。しかし、実際の撮影時には、ペイント以外の種々の対象が写り込むことがある。例えば、車両で道路を走行しながら撮影を行う場合には、自車が走行する車線の隣に停車または走行する他の車両が画面内に写り込むことがある。
【0232】
図40は異物の写り込みを例示する説明図である。
図40(a)にはフレーム画像を例示した。図中の中央あたりの枠A40内が、路面テクスチャの生成に利用される部分である(図7参照)。この例では、矢印P40cが描かれた車線を走行しているものとする。この枠内には、矢印P40cや車線境界線P40bなどのペイントが写されている他、右隣の車線を走行するトラックの後部P40aが異物として写り込んでいる。
図40(b)は、異物が写り込んだフレーム画像を用いて生成した連結画像を示している。図40(a)のように異物が写り込んだ部分は、連結画像では、図中の領域G40に示すように、ペイントとして認識不能な部分として表される。以下、フレーム画像内に写り込んだ異物や、連結画像に表された異物をゴミ画像と呼ぶ。
このようなゴミ画像がある状態で、標示の認識をしようとすれば、ゴミ画像の部分が何らかの標示と誤認識されたり、認識不能でエラーとなったりするおそれがある。
かかる弊害を抑制するため、変形例では、ゴミ画像を認識し、その結果を反映させてペイントを認識させるものとした。
【0233】
(2)ゴミ画像の認識結果の反映方法:
図41はゴミ画像の認識結果の反映方法を示すフローチャートである。ゴミ画像の認識結果は、ペイントの抽出に先立って行う前処理による反映方法と、ペイントの抽出後に行う後処理による反映方法とが可能である。
図中のフローチャートでは、左側に前処理、右側に後処理の場合の反映方法を示した。
これらの処理を実行するにあたり、別途、ゴミ認識処理(ステップS410)によって、フレーム画像または連結画像内のゴミ画像が認識されており、その結果がゴミ画像データに格納されているものとする。ゴミ認識処理(ステップS410)の内容は、後述する。
ここでは、ゴミ認識処理を独立して行う例を示しているが、前処理または後処理の過程に組み込んでも構わない。
【0234】
前処理の場合、コンピュータのCPUはフレーム画像を読み込み(ステップS300A)、ゴミ画像データを用いて、フレーム画像からゴミ画像を削除する(ステップS301)。この処理によって、例えば、図40(a)に示した画像では、トラック後部の写り込みP40aが削除されることになる。
CPUは、ゴミ画像が除去されたフレーム画像を用いて、実施例(図21参照)で説明した手順に従って、ペイントを抽出する。つまり、縦配置処理を行い(ステップS302)、横断関連ペイントを抽出し(ステップS310)、各種ペイントの抽出を行う(ステップS350)。そして、相対座標変換処理(図39参照)を行う(ステップS370)。
前処理の方法によれば、ゴミ画像が除去されたフレーム画像を用いてペイントを抽出するため、ゴミ画像による誤認識を抑制することができる。
【0235】
後処理の場合、CPUはフレーム画像を読み込み(ステップS300A)、実施例(図21)で説明した手順に従って、縦配置処理(ステップS302)、横断関連ペイント抽出(ステップS310)、各種ペイント抽出(ステップS350)、および相対座標変換処理(ステップS370)を行う。ここまでの処理は、ゴミ画像が含まれた連結画像を用いて行われるため、ゴミ画像による誤認識も含まれている。
次に、CPUはゴミ画像データを用いてゴミ画像の存在位置を読み込む(ステップS411)。ゴミ画像の存在位置とは、フレーム画像内で認識されたゴミ画像を、実施例と同様の方法で正射投影し(図7参照)、位置合わせ加工(図8参照)を施したものである。ゴミ画像はペイント抽出に使用される訳ではないので、縦配置処理は不要であり、縦配置の結果を絶対座標系の位置に変換するための相対座標変換処理は不要である。
CPUは、こうしてゴミ画像の存在領域が得られると、ペイントとゴミ画像の存在領域の位置関係を調べ、存在領域に重なるペイントを削除する(ステップS412)。かかるペイントは、ゴミ画像が誤認識されたものと判断されるからである。
後処理の方法によれば、認識されたペイントのうち、ゴミ画像と位置的に重複するものを除去するため、ゴミ画像を誤認識したペイントが残存するのを抑制することができる。
【0236】
図41では、前処理と後処理とを別個独立の処理として説明した。ゴミ認識結果の反映は、前処理または後処理のいずれか一方の方法で行うものとしてもよいし、前処理を行った上で、更に後処理を適用してもよい。
以下では、ステップS410のゴミ画像認識処理の内容について具体的に説明する。ゴミ画像の認識方法としては、オプティカルフローによる方法と、階調差分による方法とがある。
【0237】
(3)ゴミ画像認識処理(1)〜オプティカルフロー:
図42はゴミ画像認識処理(1)のフローチャートである。オプティカルフローを利用する処理例を示した。
CPUは、まず撮影位置約1m間隔で配置された2枚のフレームデータを読み込む。走行しながら撮影されたフレーム画像は、1mよりも短い距離間隔で得られているが、処理負荷を軽減するため、約1m間隔でフレーム画像を間引き、その中の連続した2枚を読み込むものとした。約1mとしたのは、フレーム画像は厳密に1m間隔で撮影されている訳ではないからである。
CPUは、フレーム画像の読み込みと併せて、その位置座標に基づき、フレーム間の距離を算出する(ステップS422)。算出された距離は、後述する正規化に利用される。
【0238】
次に、CPUは各フレーム画像から左右の検査領域を抽出する(ステップS423)。図中に検査領域の概要を示した。検査領域とは、フレーム画像FL42のうち、路面テクスチャの生成に使用される矩形領域の中で、更に中央部分A42Cを除いた左右の領域A42L、A42Rである。路面テクスチャの生成に使用される領域に限るのは、この他の領域にゴミ画像が存在してもペイントの認識には影響を与えないからである。中央部分A42Cを除いたのは、自車が走行している車線には他の停車車両その他の異物は存在しないためである。なぜならば、自車が走行する走行レーンにおいては前方を走行する車両が画像作成範囲に入ってこないように車間距離を開けて走行することが可能だからである。
検査領域は、フレーム画像を解析して得るものではなく、フレーム画像内における固定の領域でよい。カメラが車両に固定された状態で撮影が行われているため、フレーム画像FL42のうちテクスチャに使用可能な部分は固定されるし、ゴミ画像の認識が不要となる車両正面の領域A42Cも固定されるからである。車両正面の領域A42Cは、任意に設定可能であるが、例えば、自車が走行する車線幅に相当する領域となるよう設定することができる。
【0239】
次に、CPUは、左右の検査領域の画像に基づきオプティカルフローを生成する(ステップS424)。オプティカルフローの大きさは、生成に利用される2つのフレーム画像の間隔にも依存する。CPUは、フレーム画像の間隔に依存しない値に、オプティカルフローを正規化する。この例では、正規化として1m間隔のフレーム画像から得られる値相当に換算する方法を採った。正規化は、例えば、次の方法で行うことができる。
(Vx,Vy)=(OFx/DIST,OFy/DIST);
Vx,Vy…正規化移動ベクトルのx、y成分;
OFx,OFy…オプティカルフローのx、y成分;
DIST…2つのフレーム画像の間隔;
CPUは、検査領域内の各オプティカルフローを正規化して得られた正規化移動量ベクトルのそれぞれについて、次の3種類の評価値を求める(ステップS425)。
|V|…正規化移動量ベクトルの大きさ;
Vx…正規化移動量ベクトルのx成分;
Vy…正規化移動量ベクトルのy成分;
【0240】
そして、いずれかの評価値が異常となる点、即ち予め設定された閾値範囲を超える点を抽出する(ステップS426)。例えば、正規化移動量ベクトルの大きさ|V|が、予め設定された最小値|V|minより小さくなったり、最大値|V|maxよりも大きくなったりした場合には、異常と判断される。同様に、x成分、y成分についても、その最小値Vxmin、Vyminより小さくなったり、最大値Vxmax,Vymaxよりも大きくなったちした場合には、異常と判断される。
閾値範囲は評価値の絶対値の許容範囲として設定してもよい。この場合には、正規化移動量ベクトルの大きさ|V|が、予め設定された閾値|V|thを超える場合に異常と判断される。同様に、x成分、y成分についても、その絶対値|Vx|、|Vy|が、それぞれの閾値|Vx|th、|Vy|thを超える場合に異常と判断される。
評価値が異常か否かを判断するための閾値は任意に設定可能である。例えば、異物の写っていない画面の正規化移動量ベクトルを求め、ここから得られる評価値の範囲に基づいて設定する方法を採ることができる。
また、ここでは検査領域の全点に対し、統一的な閾値を用いるものとしたが、左右の検査領域で異なる閾値を用いてもよい。検査領域を更に細分化した部分ごとに閾値を変化させてもよい。
ステップS426では、正規化移動量ベクトルの大きさ、x成分、y成分のいずれか一つでも異常と判断された点を抽出しているが、全ての点が異常となる点を抽出するなど、他の評価方法をとることもできる。
【0241】
CPUは、次に、異常と判断された点を包含する凸ポリゴンを生成し、これをゴミ画像として格納する(ステップS427)。
CPUは以上の処理を、全フレームデータについて繰り返し実行して(ステップS428)、ゴミ画像認識処理を終了する。
【0242】
図43はオプティカルフローの例である。自車の走行レーン正面の領域A43Cの両側に実線で囲んだ部分が検査領域A43L、A43Rである。図中に点状に示したのがオプティカルフローV43である。この例では、検査領域A43L、A43Rにかかわらず、画像内全体でオプティカルフローV43を求めた例を示した。検査領域A43L、A43Rには異物が存在していないため、オプティカルフローは自車の走行に伴って画面内で路面標示が移動する量および方向を示すベクトルとなる。1m程度の移動では、図示するように点状に表される程度の大きさのベクトルに過ぎない。
このオプティカルフローを正規化した上で、正規化移動量ベクトルの大きさ、x成分、y成分の分布を求めれば、その最大値、最小値に基づいて、ゴミ認識処理(図42)のステップS426で用いる閾値を設定することができる。
【0243】
図44は走行車両がある場合のオプティカルフローの例である。自車の左側の車線を車両C44が追い越していった場合の例を示した。左側の検査領域について、オプティカルフローV44を示している。自車を追い越す車両の特徴点は、自車の移動よりも速い速度で移動するから、自車に対して前方、即ち画面内の右上方向に移動する。従って、オプティカルフローV44は、右上方向を向くベクトルとなる。
この結果、車両A44に該当する部分では、オプティカルフローV44の評価値(大きさ、x成分、y成分)は、予め設定された閾値を超え、異常と判断される。
異常と判断された点を包含する凸ポリゴンを生成することにより、ゴミ画像A44が認識される。車両C44の上側および左側がゴミ画像A44に含まれていないのは、これらの部分が検査領域外だからである。また、ゴミ画像A44内の曲線L44は、正規化移動量ベクトルの大きさ、x成分、y成分のうち、いずれの評価値で閾値を超えたかによる区分を表している。変形例では、いずれかの評価値が閾値を超えていれば全てゴミ画像と判断しているため、曲線L44は特に意味を持たない。
【0244】
図45は停止車両がある場合のオプティカルフローの例である。自車の左側の車線に車両C45が停車している場合の例を示した。左側の検査領域について、オプティカルフローV45を示している。停車車両C45は移動速度が0という点では路面標示と何ら変わらないが、路面標示と異なり立体であるため、フレーム画像では路面標示とは異なるオプティカルフローが得られる。追い越し車両(図44)が、全体に右斜め上方向のオプティカルフローが得られているのに対し、停止車両では、車両右側面では左斜め下方向のオプティカルフローが得られ、車両後部では、左方向その他の複雑なオプティカルフローとなっている。
これらのオプティカルフローV45を正規化し、閾値範囲を超える異常な点を包含する凸ポリゴンを生成した結果が、ゴミ画像A45である。この例では、車両C45の全体をゴミ画像と認識することはできていないが、閾値範囲を調整することにより、全体をゴミ画像と認識することも可能である。
【0245】
(4)ゴミ画像認識処理(2)〜階調差分:
図46はゴミ画像認識処理(2)のフローチャートである。階調差分を利用する処理例を示した。
CPUは、まず連結画像において連続するテクスチャ画像の重なり領域を抽出する(ステップS461)。図中に処理例を示した。左側に示すように連結画像内で隣接するテクスチャT461、T462に着目する。両者は、ハッチングの部分で重複している。従って、CPUは、右側に示すように、テクスチャT461のうち、テクスチャT462と重なる領域A461を切り出す。また、同様に、テクスチャT462からは領域A461を切り出す。
【0246】
次に、CPUは、平滑化フィルタを適用し、重なり領域の画像をぼかす(ステップS462)。平滑化フィルタは、任意のものを適用可能である。
平滑化を行う理由は次の通りである。このゴミ認識処理では、後述する通り、上述の重なり領域の画素ごとの階調差分に基づいてゴミ画像か否かを判断する。重なり領域では路面標示同士も重なるはずであり、ゴミ画像の部分にのみ階調差分が生じるはずだからである。しかし、実際には撮影時や処理過程で種々の誤差が含まれるため、重なり領域で路面標示の位置が完全に一致するとは限らない。かかる状態で、画素ごとに階調差分を算出すると、路面標示の部分もゴミ画像と誤認識されるおそれがある。そこで、ステップS462では、重なり領域の画像に平滑化フィルタを施し、重なり領域で路面標示の位置にずれが生じた場合でも、大きな階調差分が生じないようにした。
【0247】
こうして平滑化された画像を用いて、CPUは重なり領域間の階調差分を求め、階調差分が閾値を超える画素を抽出する(ステップS463)。
図中に処理例を示した。重なり画像A461の画素Pxaの色成分がH(色相)S(彩度)V(明度)系で(Ha、Sa、Va)と表されるとする。重なり画像A462内で、これに対応する画素Pxbの色成分が(Hb、Sb、Vb)と表されるとする。
そして、両者の階調差分が閾値を超える画素を抽出する。
色相については|Ha−Hb|>閾値THHとなる画素が抽出される。
彩度については|Sa−Sb|>閾値THSとなる画素が抽出される。
明度については|Va−Vb|>閾値THVとなる画素が抽出される。
ここでは、明度の差分が閾値を超える画素を抽出する方法をとった。路面標示は白または黄色が使われているため、路面標示とその他のゴミ画像とは、明度の階調差分が最も顕著に生じるからである。もっとも、色相、彩度についての階調差分が閾値を超える画素も併せて抽出してもよい。また、明度、彩度、色相の全てで閾値を超える画素のみを抽出する方法をとることもできる。
【0248】
CPUは、抽出された画素を結合して、ゴミ画像領域を特定する(ステップS464)。結合は、例えば、次の方法で行うことができる。まず、ゴミ画像として抽出された画素のうち、隣接する部分を結合する。次に、各画素について上下左右に所定画素ずつ太らせ処理を行う。太らせ処理は、図22のサイドカット処理例で説明したのと同様の処理である。この太らせ処理の結果、結合された画素があれば、その部分も一つのポリゴンとして認識する。こうすることにより、CPUはゴミ画像領域を生成することができる。画素を結合して得られたポリゴンの凹部を埋め合わせて凸ポリゴン化してもよい。
最後に、CPUは閾値以下の微小面積の領域を削除する(ステップS465)。停車車両その他の異物は通常、大きなゴミ画像として認識されるからであり、また、微小面積のゴミ画像は残しておいたとしてもペイントの認識に大きな悪影響を与えないからである。もっとも、この処理は省略しても差し支えない。
【0249】
図47はゴミ画像の認識例を示す説明図である。図47(a)および図47(b)が、二つのテクスチャから切り出された重なり領域である。両者は、右側にゴミ画像G472、G473が写り込んでいる。また、図47(a)には、別のゴミ画像G471が写り込んでいる。
図47(c)、図47(d)は、それぞれ図47(a)、図47(b)に平滑化フィルタを適用した結果である。原データに比較して、路面標示等の輪郭がぼけていることが分かる。
図47(e)、図47(f)は、それぞれ図47(c)と図47(d)の間の階調差分を求めた結果である。明度の階調差分が閾値THVを超える範囲が実線で示したゴミ画像G474〜G477である。ゴミ画像G474,G476、およびG475,G477は、それぞれ同じものとなる。ここでは、図47(c)、図47(d)との対比が分かるよう、それぞれと重ね合わせて示したに過ぎない。
例えば、図47(f)だけを見るとゴミ画像G476の部分は適正な路面標示に見える。しかし、ここと重ね合わされる図47(e)のゴミ画像G474が存在するため、階調差分は閾値を超える異常値となっているのである。
一方、ゴミ画像G475,G477は、異物の写り込みである。この例では、異物の写り込み全体をゴミ画像と認識できてはいないが、閾値の調整次第で全体を認識することが可能である。
【0250】
図47(g)は、別のテクスチャについての認識結果である。上述の方法で階調差分を求めた結果、ゴミ画像G478が認識されている。ただし、これらのゴミ画像G478は、微小であるため、CPUはゴミ画像から除外する(図46のステップS465参照)。
【0251】
(5)効果:
以上で説明したゴミ認識処理によれば、フレーム画像またはテクスチャ内のゴミ画像を認識して抽出することができる。
このゴミ画像の抽出結果をペイント認識処理の前処理として反映させることにより、ゴミ画像を除去した連結画像に基づいてペイントを認識することができ、認識精度を向上させることができる。
また、ゴミ画像の抽出結果をペイント認識処理の後処理に反映させれば、ペイントの認識結果に対して、ゴミ画像か否かを判断することが可能となり、ゴミ画像に基づくペイントの誤認識を排除することができる。
【0252】
変形例では、ゴミ画像の認識方法として、オプティカルフローを用いた方法と、階調差分を用いた方法の2通りを説明した。これらの方法は、単独で用いても良いし、併用してもよい。併用することにより、ゴミ画像の認識精度をより向上させることができる利点がある。
【0253】
以上、本発明の種々の実施例について説明したが、本発明はこれらの実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。
例えば、連結画像は、路面テクスチャを合成した一枚の画像として生成してもよい。この場合、複数パスの合成を行う際には、連結画像を路面テクスチャに相当する複数の領域に分割した上で、領域ごとに平行移動すればよい。
本実施例では、車両に搭載したビデオカメラで撮影した画像を利用する例を示したが、車両に限らず自転車その他の種々の移動体を利用可能であり、歩行しながら撮影する方法を採っても良い。
【符号の説明】
【0254】
100…道路面撮影システム
110…位置計測部
110…計測データ
112…コントローラ
114…GPS
114A…アンテナ
116…IMU
118…DMI
120…ビデオカメラ
130…記録装置
140…ハードディスク
142…画像データ
144…同期データ
146…計測データ
150…基準局データ
200…路面標示地図生成装置
201…主制御部
202…コマンド入力部
203…表示制御部
204…データ入力部
205…軌跡データ算出部
206…画像変換部
207…1パス画像合成部
210a…軌跡データ
210b…路面軌跡データ
210c…路面テクスチャ
210d…連結画像
210e…道路画像
210f…道路画像用登録データ
210g…軌跡用登録データ
210…処理データ記憶部
220…位置合わせ処理部
221…透明化ポリゴン設定部

【特許請求の範囲】
【請求項1】
道路面に施された標示が含まれる路面標示地図をコンピュータによって生成する路面標示地図生成方法であって、
コンピュータが実行する工程として、
(a) 撮影対象である道路を移動しながら前記標示が施された道路面を撮影した連続画像の画像データ、および該画像データの撮影位置を表す位置座標データを入力する工程と、
(b) 前記入力された画像データを構成する各フレーム画像を変換して、前記道路面を真上から見た状態の正射画像を得る工程と、
(c) 二次元平面において予め設定された方向に、撮影された道路を移動した際の移動軌跡であるパス上の基準点からの距離を表す直線状の距離軸上に、前記パスに沿った前記基準点からの距離に基づいて、前記正射画像を配置することにより、前記パスの道路面を表す直線状の連結画像を生成する工程と、
(d) 前記連結画像に基づいて、前記道路面に施された標示の種別および位置を認識する標示認識工程と
を備える路面標示地図生成方法。
【請求項2】
請求項1記載の路面標示地図生成方法であって、更に、
(f1) 複数のパスのうち2本以上のパスの連結画像に共通して撮影されている領域内で、前記工程(d)において認識された標示に基づいて、パス間で対応する対応点を特定する工程と、
(f2) 前記複数のパスのうち1本を基準パスとして設定する工程と、
(f3) 前記位置座標データを表す絶対座標系において、前記対応する対応点の位置が一致するように設定された移動ベクトルに基づいて、前記基準パス以外のパスを構成する領域ごとに平行移動して、前記複数のパスにまたがる前記道路面の合成画像を生成する工程と
を備える路面標示地図生成方法。
【請求項3】
請求項1または2記載の路面標示地図生成方法であって、更に、
(g) 前記標示の代表点から前記距離軸への垂線の足を標示の基準点とし、前記位置座標データに基づく絶対座標系に示した前記パス上の前記基準点から該パスに垂直に前記垂線を描き、該垂線の端点に前記標示の代表点を配置することによって、前記標示の絶対座標系での位置座標を得る工程を備える路面標示地図生成方法。
【請求項4】
請求項1〜3いずれか記載の路面標示地図生成方法であって、
前記工程(d)は、前記標示を包含するように、該標示の種別ごとに定められた幾何形状の位置およびサイズを決定する路面標示地図生成方法。
【請求項5】
請求項1〜4いずれか記載の路面標示地図生成方法であって、
前記工程(d)は、予め前記連結画像について前記距離軸から所定距離以上離れた両端領域を削除した上で前記標示の認識を行う路面標示地図生成方法。
【請求項6】
請求項1〜5いずれか記載の路面標示地図生成方法であって、
前記工程(d)は、前記連結画像から前記標示に用いられる所定色の部分を抽出した上で、前記標示の種別ごとに予め用意された標示パターンと該抽出された部分とのマッチングによって前記標示の認識を行う路面標示地図生成方法。
【請求項7】
請求項1〜5いずれか記載の路面標示地図生成方法であって、
前記工程(d)は、前記連結画像から前記標示に用いられる所定色の部分を抽出した上で、該抽出された部分の前記距離軸に対する方向および大きさに基づいて、前記標示の種別を認識する路面標示地図生成方法。
【請求項8】
請求項1〜7いずれか記載の路面標示地図生成方法であって、更に、
(e) 連続する2つのフレーム画像から、複数の特徴点の移動を表すオプティカルフローを求める工程と、
(f) 前記オプティカルフローに基づいて、前記標示以外の写り込みを前記フレーム画像内で抽出する工程と
を備え、前記工程(b)では、前記正射画像とともに、または前記正射画像に代えて、前記フレーム画像に前記写り込みの抽出結果を反映した正射画像を生成し、
前記工程(c)または工程(d)では、前記工程(b)で生成された正射画像に基づき、前記写り込みの抽出結果を反映した連結画像の生成、または前記道路面に施された標示の種別および位置の認識を行う路面標示地図生成方法。
【請求項9】
請求項1〜8いずれか記載の路面標示地図生成方法であって、更に、
(h) 前記距離軸上に配置された正射画像同士が重なる部分において、該正射画像間の各点の階調差分に基づいて前記標示以外の写り込みを抽出する工程を備え、
前記工程(c)または工程(d)では、前記工程(h)における前記写り込みの抽出結果を反映した連結画像の生成、または前記道路面に描かれた標示の種別および位置の認識を行う路面標示地図生成方法。
【請求項10】
請求項9記載の路面標示地図生成方法であって、
前記工程(h)では、前記正射画像に平滑化フィルタを適用した上で、前記階調差分を求める路面標示地図生成方法。
【請求項11】
道路面に施された標示が含まれる路面標示地図を生成する路面標示地図生成装置であって、
撮影対象である道路を移動しながら前記標示が施された道路面を撮影した連続画像の画像データ、および該画像データの撮影位置を表す位置座標データを入力する入力部と、
前記入力された画像データを構成する各フレーム画像を変換して、前記道路面を真上から見た状態の正射画像を得る画像変換部と、
二次元平面において予め設定された方向に、撮影された道路を移動した際の移動軌跡であるパス上の基準点からの距離を表す直線状の距離軸上に、前記パスに沿った前記基準点からの距離に基づいて、前記正射画像を配置することにより、前記パスの道路面を表す直線状の連結画像を生成する連結画像生成部と、
前記連結画像に基づいて、前記道路面に描かれた標示の種別および位置を認識する標示認識部と
を備える路面標示地図生成装置。
【請求項12】
道路面に施された標示が含まれる路面標示地図を生成するためのコンピュータプログラムであって、
撮影対象である道路を移動しながら前記標示が施された道路面を撮影した連続画像の画像データ、および該画像データの撮影位置を表す位置座標データを入力する入力サブプログラムと、
前記入力された画像データを構成する各フレーム画像を変換して、前記道路面を真上から見た状態の正射画像を得る画像変換サブプログラムと、
二次元平面において予め設定された方向に、撮影された道路を移動した際の移動軌跡であるパス上の基準点からの距離を表す直線状の距離軸上に、前記パスに沿った前記基準点からの距離に基づいて、前記正射画像を配置することにより、前記パスの道路面を表す直線状の連結画像を生成する連結画像生成サブプログラムと、
前記連結画像に基づいて、前記道路面に描かれた標示の種別および位置を認識する標示認識サブプログラムと
を備えるコンピュータプログラム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図4】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図17】
image rotate

【図18】
image rotate

【図40】
image rotate

【図41】
image rotate

【図42】
image rotate

【図43】
image rotate

【図44】
image rotate

【図45】
image rotate

【図46】
image rotate

【図47】
image rotate


【公開番号】特開2009−259215(P2009−259215A)
【公開日】平成21年11月5日(2009.11.5)
【国際特許分類】
【出願番号】特願2009−17472(P2009−17472)
【出願日】平成21年1月29日(2009.1.29)
【出願人】(597151563)株式会社ゼンリン (155)
【Fターム(参考)】