説明

位置検出装置、位置検出方法、位置検出プログラムおよび記録媒体

【課題】移動量に伴う誤差を累積することなく、的確な位置検出を図ること。
【解決手段】オプティカルフロー算出部202は、任意のルート上を走行する移動体の側方に関する一連のフレーム画像に基づいて、オプティカルフローを算出する。そして、距離算出部203は、算出されたオプティカルフローと、移動速度検出部201によって検出された車両401の移動速度と、に基づいて被写体までの距離を算出する。地物特定部204は、算出された被写体までの距離に基づいて、被写体がどのような地物であるかを特定する。位置検出部205は、特定された地物の地点データと、算出された被写体までの距離と、に基づいて、移動体の現在位置を検出する。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、移動体の左右側方に関する一連のフレーム画像に基づいて、移動体の現在位置を検出する位置検出装置、位置検出方法、位置検出プログラムおよび記録媒体に関する。
【背景技術】
【0002】
従来、車両などの移動体に搭載されるナビゲーション装置は、人工衛星から発信される電波の到達時間を利用して測位するGPS(Global Positioning System)により、自車位置を計測して、ドライバーにナビゲーションサービスを提供する。GPSによる測位精度は数メートル〜数十メートルであり、今後はRTK−GPS(Real Time Kinematic−GPS)のような電波位相差を利用した測位や、EU(European Union)のガリレオや日本の準天頂衛星の打ち上げにより、さらに測位精度の高精度化が期待される。したがって、GPSは、今後とも車両の測位手法として主流となるものである。
【0003】
GPSは、人工衛星からの電波が不安定となるような高架下やビルの谷間などでは、マルチパスの影響などによって測位精度が著しく低下することがある。このマルチパスの影響を除去するため、建物などの構造物についての位置情報と高さ情報を記憶し、GPS衛星からの電波に基づき車両の位置を検出する。そして、GPS衛星と車両を結ぶ一直線上に構造物が存在するか否かを判定して、構造物が存在した場合は、構造物の反射を考慮して位置を補正する位置検出装置の提案がされている(たとえば、下記特許文献1参照。)。
【0004】
その他、近年では、車両の現在位置を正確に求めるため、多くのナビゲーション装置がマップマッチングにより、車両の現在位置候補から、車両の現在位置を実際の現在位置に近い道路データ上に修正する手法を有している。より具体的には、マップマッチングは、地図データ上の各ノード点を結ぶ道路リンクのうち、GPSによる測位座標に最も近い道路リンク上に車両の現在位置を対応付けている。また、マップマッチングは、タイヤの回転に応じて出力される車速パルスとタイヤの円周とに基づいて、車両の移動距離を求めて進行方向の位置補正をおこなったりしている。
【0005】
【特許文献1】特開2005−195493号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、上述したマップマッチングによれば、道路リンク上(あるいはリンク列上)のどの位置に車両が存在しているかについて、車両進行方向の測位精度を高める機能はない。したがって、車両進行方向についてのGPS誤差そのものは解消されず、また、マップマッチングのアルゴリズムによっては進行方向の誤差が増大するという問題があった。
【0007】
また、車速パルスを用いて位置補正をおこなう場合、タイヤの円周は、空気圧やタイヤの摩耗などの影響を受けてしまうという問題がある。くわえて、移動量の加算により車両の現在位置を測ることになるため、タイヤの円周の誤差が微少であったとしても、車両の走行距離の増加に伴って誤差が蓄積するという問題があった。
【0008】
この発明は、上述した従来技術による問題点を解消するため、GPSを補完する技術として、誤差を蓄積せずに移動体の位置を検出できる位置検出装置、位置検出方法、位置検出プログラムおよび記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0009】
上述した課題を解決し、目的を達成するため、この発明にかかる位置検出装置、位置検出方法、位置検出プログラムおよび記録媒体は、任意のルート上を走行する移動体の移動速度を検出し、前記ルート上における、前記移動体の左右いずれか一方の側方に関する一連のフレーム画像に基づいて、前記一方の側方のオプティカルフローを算出し、検出された移動速度と算出されたオプティカルフローとに基づいて、前記一方の側方に関する被写体までの距離を算出し、算出された距離に基づいて、前記被写体がどのような地形または物体(以下、「地物」という)であるかを特定し、前記特定手段によって特定された地物の地点データと前記被写体までの距離とに基づいて、前記移動体の現在位置を検出することを特徴とする。
【0010】
この発明によれば、移動体の左右いずれか一方の側方に関する一連のフレーム画像に基づいて、被写体までの距離を算出するとともに、被写体がどのような地物であるかを特定する。そして、特定された地物の地点データと、被写体までの距離と、に基づいて、移動体の現在位置を検出する。したがって、移動体の移動量に関する情報を用いることなく、現在位置が検出できる。
【0011】
また、上記発明において、地図情報データベースから前記ルート上における前記被写体までの距離を取得し、算出された距離と取得された距離とを比較し、さらに、比較された比較結果に基づいて、前記移動体の現在位置を検出することとしてもよい。
【0012】
この発明によれば、地図情報データベースからルート上の被写体までの距離を取得して、算出された距離と比較する。そして、比較結果に基づいて移動体の現在位置を検出するため、地図情報データベースを補完して、現在位置の検出の的確化を図ることができる。
【0013】
また、上記発明において、さらに、前記ルート上における、前記移動体の他方の側方に関する一連のフレーム画像に基づいて、前記他方の側方のオプティカルフローを算出し、さらに、前記移動速度と算出された前記他方の側方のオプティカルフローとに基づいて、前記他方の側方に関する被写体までの距離を算出し、さらに、算出された前記他方の側方に関する被写体までの距離に基づいて、前記他方の側方に関する被写体がどのような地形または物体(以下、「地物」という)であるかを特定し、さらに、特定された前記他方の側方からの地物の地点データに基づいて、前記移動体の現在位置を検出することとしてもよい。
【0014】
この発明によれば、移動体の他方の側方に関する一連のフレーム画像に基づいて、他方の側方に関する被写体までの距離を算出するとともに、他方の側方に関する被写体がどのような地物であるかを特定する。そして、特定された他方の側方からの地物の地点データに基づいて、移動体の現在位置を検出する。したがって、移動体の左右少なくとも一方のフレーム画像から移動体の現在位置を検出でき、汎用的な利用を図ることができる。
【0015】
また、上記発明において、算出された前記他方の側方に関する被写体までの距離に基づいて、前記移動体の現在位置がどのような地形であるかを特定し、さらに、特定された現在位置の地形に基づいて、前記移動体の現在位置を検出することとしてもよい。
【0016】
この発明によれば、他方の側方に関する被写体までの距離に基づいて、移動体の現在位置がどのような地形であるかを特定して、移動体の現在位置を検出する。したがって、現在位置の地形に適した現在位置の検出を図ることができる。
【0017】
また、上記発明において、さらに、前記一方の側方に関する被写体までの距離と前記他方の側方に関する被写体までの距離との距離差に基づいて、前記移動体の旋回方向を特定することとしてもよい。
【0018】
この発明によれば、一方の側方に関する被写体までの距離と他方の側方に関する被写体までの距離との距離差に基づいて、移動体の旋回方向を特定する。したがって、移動体の旋回方向に適した現在位置の検出を図ることができる。
【発明の効果】
【0019】
本発明にかかる位置検出装置、位置検出方法、位置検出プログラムおよび記録媒体によれば、移動量に伴う誤差を累積することなく、的確な位置検出を図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【0020】
以下に添付図面を参照して、この発明にかかる位置検出装置、位置検出方法、位置検出プログラムおよび記録媒体の好適な実施の形態を詳細に説明する。
【0021】
(実施の形態1)
(位置検出装置のハードウェア構成)
まず、この発明の実施の形態1にかかる位置検出装置のハードウェア構成について説明する。図1は、この発明の実施の形態1にかかる位置検出装置のハードウェア構成を示すブロック図である。
【0022】
図1において、位置検出装置は、CPU101と、ROM102と、RAM103と、HDD(ハードディスクドライブ)104と、HD(ハードディスク)105と、FDD(フレキシブルディスクドライブ)106と、着脱可能な記録媒体の一例としてのFD(フレキシブルディスク)107と、ディスプレイ108と、通信I/F(インターフェース)109と、入力デバイス110と、車速センサ111と、映像I/F112と、カメラ113と、を備えている。また、各構成部はバス100によってそれぞれ接続されている。
【0023】
ここで、CPU101は、位置検出装置の全体の制御を司る。ROM102は、ブートプログラムなどのプログラムを記憶している。RAM103は、CPU101のワークエリアとして使用される。HDD104は、CPU101の制御にしたがってHD105に対するデータのリード/ライトを制御する。HD105は、HDD104の制御で書き込まれたデータを記憶する。
【0024】
FDD106は、CPU101の制御にしたがってFD107に対するデータのリード/ライトを制御する。FD107は、FDD106の制御で書き込まれたデータを記憶したり、FD107に記憶されたデータを位置検出装置に読み取らせたりする。
【0025】
また、着脱可能な記録媒体として、FD107のほか、CD−ROM(CD−R、CD−RW)、MO、DVD(Digital Versatile Disk)、メモリカードなどであってもよい。ディスプレイ108は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ108は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【0026】
通信I/F109は、通信回線を通じてインターネットなどのネットワーク114に接続され、このネットワーク114を介して他の装置に接続される。そして、通信I/F109は、ネットワーク114と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。通信I/F109には、たとえばモデムやLANアダプタなどを採用することができる。
【0027】
入力デバイス110は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。また、マウスなどを操作することで、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなってもよい。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【0028】
車速センサ111は、車両などの移動体における速度を検出し、位置検出装置へ入力する。車速センサ111は、たとえば、車輪が1回転するごとに1パルスを発生する車速パルス発生器と計数カウンタによって構成してもよく、タイヤの回転数とタイヤの円周に基づいて単位時間あたりの移動距離を算出することで移動速度を検出することとしてもよい。また、車両などのトランスミッションの出力側シャフトから検出してもよいし、車両の加速度に基づいて検出することとしてもよい。
【0029】
また、映像I/F112は、カメラ113と接続される。映像I/F412は、カメラ113全体の制御をおこなう制御ICと、カメラ113によって撮影されたフレーム画像を一時的に記録するVRAM(Video RAM)などのバッファメモリなどによって構成される。また、バッファメモリは、複数のフレームバッファを有する構成でもよく、たとえば、2つのフレームバッファにより、後述するカメラ113によって撮影されるフレーム画像を交互に格納することとしてもよい。また、フレームバッファは2次元メモリでもよく、フレーム画像における各画素を8bit、256階調のデータとして格納する構成でもよい(図8参照)。そして、カメラ113によって撮影されたフレーム画像について、位置検出装置の各構成への入出力を制御する構成でもよい。
【0030】
カメラ113は、被写体を撮影して連続する一連のフレーム画像として取り込む。カメラ113が車両などの移動体に搭載されたカメラである場合、被写体として周囲の地形または物体などの地物を撮影することができる。地物は、本明細書では、道路わきの建物や地面などの地表物や、移動体から臨む道路わきからの建物や地面などの地表物も含む。また、カメラ113は、モノクロやカラーのどちらでもよく、ビデオカメラなどによって構成され、C−MOS(Complementary Metal Oxide Semiconductor)あるいはCCD(Charge Coupled Device)などの光電変換素子を有している。
【0031】
また、カメラ113は、USB(Universal Serial Bus)やIEEE1394(Institute of Electrical and Electronic Engineers 1394)などによって映像I/F112と接続されており、撮影したフレーム画像を、映像I/F112を介して逐次位置検出装置へ出力する。
【0032】
(位置検出装置の機能的構成)
つぎに、図2を用いて、この発明の実施の形態1にかかる位置検出装置の機能的構成について説明する。図2は、この発明の実施の形態1にかかる位置検出装置の機能的構成を示すブロック図である。図2において、位置検出装置200は、移動速度検出部201と、オプティカルフロー算出部202と、距離算出部203と、地物特定部204と、位置検出部205と、から構成されている。
【0033】
移動速度検出部201は、任意のルート上を走行する移動体の移動速度を検出する。移動速度検出部201は、たとえば、車速センサ111などによって構成されていてもよく、タイヤの回転数とタイヤの円周に基づいて移動速度を検出したり、トランスミッションの出力側シャフトから移動速度を検出する構成でもよい。また、加速度センサなどから加速度情報を検出して、移動速度を算出する構成でもよい。
【0034】
オプティカルフロー算出部202は、任意のルート上における、移動体の左右いずれか一方の側方に関する一連のフレーム画像に基づいて、当該一方の側方のオプティカルフローを算出する。一連のフレーム画像は、たとえば、車両側方を撮影する向きに設置されたカメラ113によって撮影される。なお、カメラ113の設置については、図4に後述する。また、オプティカルフローは、たとえば、カメラ113によって撮影されたフレーム画像のフレーム中の車両移動方向における任意の位置について算出してもよく、詳細は、図5−1〜図10に後述する。
【0035】
距離算出部203は、移動速度検出部201によって検出された移動速度とオプティカルフロー算出部202によって算出されたオプティカルフローとに基づいて、一方の側方に関する被写体までの距離を算出する。被写体までの距離Dの算出については、図7に後述するが、オプティカルフローの大きさOFと、車速Vと、カメラ113の焦点距離fと、撮影のフレームレートFを用いて算出できる。
【0036】
地物特定部204は、距離算出部203によって算出された距離に基づいて、被写体がどのような地物であるかを特定する。ここで地物とは、地形や物体であり、建物や信号機などの構造物や、交差点やT字路などの道路形状などを含むものである。また、地物の特定は、被写体がどのような地物であるかを特定するもので、たとえば、カメラ113によって撮影されたフレーム画像のフレームにおいて、車両の走行と被写体までの距離Dとの相関に基づいて特定してもよい。より具体的には、たとえば、車両進行方向に沿って被写体距離がなめらかに増加し、かつ遠方の被写体距離が一定距離(たとえば30メートル)以上となるフレーム画像が、車両進行方向に一定距離(たとえば6メートル)以上継続する場合、交差点と特定する所定のルールを設けて地物を特定してもよい。
【0037】
位置検出部205は、地物特定部204によって特定された地物の地点データと被写体までの距離Dとに基づいて、移動体の現在位置を検出する。地物の地点データは、たとえば、座標値であってもよく、地点データと被写体までの距離Dの位置に車両の現在位置を検出する。
【0038】
ここで、図3を用いて、この発明の実施の形態1にかかる位置検出部205による車両の現在位置の検出の概要について説明する。図3は、この発明の実施の形態1にかかる位置検出部による車両の現在位置の検出の概要について示す説明図である。
【0039】
図3において、地図データ300上には、車両の走行位置301と、地物の地点データ302と、被写体までの距離Dが示されている。走行中の車両は、地物特定部204によって特定された地物の地点データ302を起点として、距離算出部203によって算出された被写体までの距離Dの位置を、位置検出部205によって車両の現在位置303として検出される。換言すれば、車両の走行位置301は、地点データ302と被写体までの距離Dに基づいて、マップマッチングされて、現在位置303となる。
【0040】
なお、図2において上述した移動速度検出部201、オプティカルフロー算出部202、距離算出部203、地物特定部204、位置検出部205は、具体的には、たとえば、図1に示したROM102、RAM103、HD105などの記録媒体に記録されたプログラムを、CPU101が実行することによって、また通信I/F109や映像I/F112によって、その機能を実現する。
【0041】
(カメラ113の設置概要)
つぎに、図4を用いて、この発明の実施の形態1にかかるカメラ113の設置の概要について説明する。図4は、この発明の実施の形態1にかかるカメラ113の設置の概要を示す説明図である。図4において、任意のルート400上を走行する車両401には、カメラ113が設置されている。
【0042】
カメラ113は、車両401の側方を撮影する向きに設置されており、左右の側方どちらかを限定するものではない。また、カメラ113は、モノクロやカラーのどちらでもよく、ビデオカメラなどによって構成され、1秒間に数十フレームの間隔で連続的に側方画像を撮影する。なお、単位時間あたりに撮影するフレーム数が、前述のフレームレートFとなる。
【0043】
(オプティカルフロー算出に関する説明)
ここで、図5−1、図5−2を用いて、この発明の実施の形態1にかかるカメラ113によって連続的に撮影された隣接する2つフレームについて説明する。図5−1は、この発明の実施の形態1にかかる(n−1)フレームのフレーム画像を示す説明図である。また、図5−2は、この発明の実施の形態1にかかる(n)フレームのフレーム画像を示す説明図である。
【0044】
図5−1および図5−2において、(n−1)フレームのフレーム画像510、(n)フレームのフレーム画像520は、時間的に隣接する2つのフレーム画像で、それぞれ画像の中心に鉛直線511と鉛直線521と、を有している。フレーム画像510およびフレーム画像520は、カメラ113によって撮影され、2つのフレームバッファに交互に格納される。
【0045】
つぎに、図6を用いて、(n−1)フレームと(n)フレームの間の車両401の移動におけるオプティカルフローについて説明する。図6は、この発明の実施の形態1にかかる(n−1)フレームと(n)フレームの間のオプティカルフローを示す説明図である。図6において、車両の移動方向602に対して、(n)フレームのフレーム画像520の鉛直線521上各点におけるオプティカルフロー601が計測されている。
【0046】
オプティカルフロー601は、車両が移動する場合、(n−1)フレームと(n)フレームの間において、ほぼ移動方向602と平行な成分のみとなる。また、オプティカルフロー601は、フレーム画像520中における任意の位置のもので、本図においては、車両401の移動方向602と垂直となる、鉛直線521上の各点について計測している。このオプティカルフロー601は、各フレームごとにその前のフレームとの間で画像相関を用いるなどして決定する構成でもよい(図10参照)。
【0047】
ここで、図7を用いて、この発明の実施の形態1にかかる被写体までの距離Dの算出について説明する。図7は、この発明の実施の形態1にかかる被写体までの距離の算出について示す説明図である。図7において、(n−1)フレームにおける被写体701と、(n)フレームにおける被写体702のフレーム間の移動量は、車速Vと撮影のフレームレートFを用いると、V/Fとすることができる。フレームレートFは、単位時間あたりに撮影されるフレーム数で、1秒あたり30フレーム撮影することとしてもよい。
【0048】
また、焦点距離fは、カメラ113におけるレンズ703から投影面704までの距離である。本図より、(n)フレームの被写体702まで距離Dは、オプティカルフローOFと、フレーム間の移動量V/Fと、焦点距離fを用いて、下記式(1)であらわすことができる。
【0049】
【数1】

【0050】
つづいて、図8〜図10を用いて、オプティカルフローの算出の詳細について説明する。図8は、この発明の実施の形態1にかかるフレームバッファに格納された(n)フレームのフレーム画像の構成を示す説明図である。図8において、フレーム画像520は、横軸(X)方向に320画素、縦軸(Y)方向に240画素を有しており、映像I/F112の備えるフレームバッファに格納されている。フレームバッファは、2次元メモリであり、各画素値を8bit、256階調のデータp(n,x,y)801として格納する。なお、nはフレームの番号、xは横軸(X)の値、yは縦軸(Y)の値である。
【0051】
図9は、この発明の実施の形態1にかかる鉛直線上における垂直8画素単位の分割を示す説明図である。オプティカルフロー算出部202は、フレームバッファに格納されたフレーム画像520を参照して、フレーム画像520中心の鉛直線521上で垂直8画素単位のオプティカルフローを算出する。換言すれば、オプティカルフロー算出部202は、縦軸(Y)方向における240画素を8画素ずつに分割し、30個のオプティカルフローを算出する。8画素幅の分割は、たとえば、i本(i=0〜29の整数)のライン(1画素分)によって分割する構成でもよい。
【0052】
つづいて、図10を用いて、この発明の実施の形態1にかかるオプティカルフローの算出の一例について説明する。図10は、この発明の実施の形態1にかかるオプティカルフローの算出の一例を示す説明図である。図10は、連続する(n−1)フレームと(n)フレームのフレーム画像における、上からi番目(i=0〜29の整数)の8画素幅領域を切り出したものである。i番目の8画素幅領域の切り出しは、たとえば、(8×i)ラインから((8×(i+1)−1)ラインで切り出すもので、本図では、(n−1)フレームのフレーム画像における切り出し領域1001と、(n)フレームのフレーム画像における切り出し領域1011と、を示している。
【0053】
つづいて、オプティカルフロー算出部202は、本図における(n−1)フレームのフレーム画像の中心付近において、横100画素×縦8画素を第1のテンプレート領域1002とし、この領域と最も近似する領域を(n)フレームのフレーム画像から検索し、第2のテンプレート領域1012に設定する。この第1のテンプレート領域1002と、第2のテンプレート領域1012の移動量が中心位置のオプティカルフローOF(n,i)1020となる。
【0054】
第1のテンプレート領域1002と最も近似した領域の検索は、下記式(2)を満たすオプティカルフローOF(n,i)1020を、各値を変えながら探索する構成でもよい。なお、このとき車両は水平に移動しているので、垂直成分は考慮しないものとした。
【0055】
【数2】

【0056】
上記式(2)によるオプティカルフローOF(n,i)1020を用いて、距離算出部203は、被写体までの距離D(n,i)を算出できる。より具体的には、前述の式(1)より、(n)フレームにおける位置iの被写体までの距離は、下記式(3)によって算出される。
【0057】
【数3】

【0058】
(位置検出装置200の処理の内容)
つぎに、図11を用いて、この発明の実施の形態1にかかる位置検出装置200の処理の内容について説明する。図11は、この発明の実施の形態1にかかる位置検出装置の処理の内容を示すフローチャートである。図11のフローチャートにおいて、まず、位置検出装置200は、車両401が走行中となったか否かを判断する(ステップS1101)。車両401における走行中に関する判断は、たとえば、エンジンキーの状態や、車速センサ111の出力などに基づいておこなってもよい。ここで、車両が走行中となるのを待って、走行中となった場合(ステップS1101:Yes)は、つづいて、映像I/F112は、カメラ113を制御して、車両401の路側画像を撮影する(ステップS1102)。
【0059】
ステップS1102において撮影された路側画像は、2つのフレームバッファに交互に、各フレーム画像における各画素を8bit、256階調のデータとして格納される。そして、オプティカルフロー算出部202は、フレームバッファに格納されたフレーム画像に基づいて、オプティカルフローを算出する(ステップS1103)。オプティカルフローの算出は、たとえば、連続するフレーム画像間において、フレーム画像の中心の鉛直線上における30個のオプティカルフローを算出する構成でもよい。なお、本図の説明では、図8〜図10で前述したように、n番目のフレームの上からi番目のオプティカルフローをOF(n,i)1020として説明する。
【0060】
つぎに、距離算出部203は、移動速度検出部201によって検出された車両401の移動速度と、ステップS1103において算出されたオプティカルフローOF(n,i)1020とに基づいて、被写体までの距離を算出する(ステップS1104)。被写体までの距離は、たとえば、前述の式(2)によってD(n,i)として求めることができる。また、被写体までの距離D(n,i)の算出とあわせて、直前の(n−1)フレームからの車両401の移動量d(n)を、下記式(4)を用いて算出する。
【0061】
【数4】

【0062】
そして、CPU101は、HDD104などを制御して、HD105などの記録媒体に、ステップS1104において算出された車両401の移動量と被写体までの距離を関連付けて記録する(ステップS1105)。本ステップの記録は、たとえば、算出された30個の被写体までの距離D(n,i)と、フレーム画像間における移動量d(n)の入力をすべて記録してもよいし、有限個数だけを記録するFIFO(First−in First−out)バッファなどに記録して、一定の区間走行したら廃棄することとしてもよい。
【0063】
つづいて、地物特定部204は、ステップS1105において記録された被写体までの距離D(n,i)と、フレーム画像間における移動量d(n)に基づいて、地物を特定する(ステップS1106)。地物とは、地形や物体のことで、建物や信号機などの構造物や、交差点やT字路などの道路形状などを含むものである。また、地物の特定は、たとえば、被写体がどのような地物であるか特定するもので、過去の距離記録などを参照して地物の特定をおこなってもよい。より具体的には、たとえば、車両進行方向に沿って被写体距離がなめらかに増加し、かつ遠方の被写体距離が一定距離(たとえば30メートル)以上となるフレーム画像が、車両進行方向に一定距離(たとえば6メートル)以上継続する場合、交差点と特定する所定のルールを設けて地物を特定してもよい。
【0064】
つぎに、位置検出部205は、ステップS1106において特定された地物の地点データと、被写体までの距離D(n,i)とに基づいて、車両401の現在位置を検出したか否かを判断する(ステップS1107)。ここで、現在位置を検出した場合(ステップS1107:Yes)は、車両401の現在位置に関して、位置補正処理をおこなう(ステップS1108)。また、現在位置を検出しなかった場合(ステップS1107:No)は、ステップS1109へ移行して、位置検出装置200は、車両401の走行が終了したか否かを判断する(ステップS1109)。
【0065】
ここで、ステップS1108における位置補正処理は、たとえば、ステップS1107において検出された結果を、通信I/F109を介して、図示しないカーナビゲーション装置などに出力し、車両の現在位置の補正をおこなうこととしてもよい。カーナビゲーション装置などによる位置補正は、たとえば、GPSや車速センサなどによって推定される車両401の現在位置を、ステップS1107において検出された現在位置に適した位置に変更する。
【0066】
そして、位置検出装置200は、車両401の走行が終了したか否かを判断する(ステップS1109)。車両401の走行に関する判断は、たとえば、エンジンキーの状態や、車速センサ111の出力などに基づいておこなってもよい。ここで、車両401の走行が終了しない場合(ステップS1109:No)は、ステップS1102へ戻って処理を繰り返す。また、車両401の走行が終了した場合(ステップS1109:Yes)は、そのまま一連の処理を終了する。
【0067】
ここで、ステップS1106における地物の特定について、特に交差点を判定する場合について説明する。なお、交差点の判定は下記に限るものではないが、たとえば、まず、あらかじめカメラ113の設置条件から路面が撮影される可能性が高い領域を設定する。路面が撮影される領域について、より具体的に、図12を用いて説明する。
【0068】
図12は、この発明の実施の形態1にかかるステップS1102において撮影された路側画像におけるフレーム画像の一例を示す説明図である。図12において、フレーム画像1200は、前述した図10のように、複数の8画素幅領域から構成されており、領域ifar1201からinear1202までの、道路が撮影されている可能性の高い道路領域1203が設定されている。ifar1201は、水平線が撮影されている8画素幅領域よりも十分下方に設定する。また、inear1202は、最も車両401に近い8画素幅領域に設定する。
【0069】
交差点の判定は、下記式(5)の条件を満たす負でない整数aについて、常に下記式(6)および式(7)が成り立つ場合に、交差点であると判定する。
【0070】
【数5】

【0071】
【数6】

【0072】
【数7】

【0073】
ここで、上記式(5)は、連続aフレームの移動区間がしきい値R(交差する道路として想定されている道幅の長さ)を超えるための条件である。また、式(6)は、被写体までの距離が画面の上から下に至るまで単調減少するための条件であり、式(7)は、ifar1201の位置がしきい値C(交差する道路がどの程度先までつづいていれば交差点と判定するかの目安となる値)を超えるための条件である。このほか、各フレーム画像におけるifar1201からinear1202の被写体までの距離が路面形状として認定できるだけのフラットさをもつかを示す条件を入れてもよい。
【0074】
そして、前述の式(5)〜式(7)において交差点の判定がされると、その情報はカーナビゲーション装置へ通知される構成でもよい。カーナビゲーション装置では、たとえば、GPSや車速センサなどによって推定される車両401の現在位置に最も近い交差点に現在位置を変更したり、十分に近い交差点がなければ通知を無視してつぎの交差点の通知を受けるまで通常の処理をおこなうようにしてもよい。
【0075】
以上説明したように、この発明の実施の形態1によれば、左右どちらか一方の側方の路側画像を撮影して、オプティカルフローを算出して現在位置を検出する。したがって、車速パルスから計算した移動量のように、誤差が蓄積することなく現在位置の検出をおこなうことができる。また、検出された結果に基づいて、自車位置を補正することもでき、複数の地物の検知を繰り返して補正をおこなえば、正確な現在位置の測位を図ることができる。
【0076】
(実施の形態2)
つぎに、この発明の実施の形態2について説明する。前述の実施の形態1では、移動体の位置検出を、距離記録あるいは判定式などを用いておこなったが、あらかじめカメラ113で撮影したフレーム画像を処理したデータを利用してもよい。この発明の実施の形態2では、前述の実施の形態1で説明した位置検出装置200における移動体の位置検出を、あらかじめ用意された地図情報データベース中の参照用側方データを参照しておこなう場合について説明する。
【0077】
この発明の実施の形態2にかかる参照用側方データは、たとえば、カメラ113で撮影した地物を処理したときの時系列被写体距離(もしくは時系列オプティカルフロー)を、あらかじめ参照用側方データとして用意することとしてもよい。そして、参照用側方データと、現在走行中に取得した被写体までの距離とを比較して、最もよくマッチングした位置に基づいて位置補正処理をおこなうこととしてもよい。
【0078】
なお、この発明の実施の形態2にかかる位置検出装置のハードウェア構成については図1、車両の現在位置の検出の概要については図3、カメラ113の設置については図4、オプティカルフローの算出については図5−1〜図10、とそれぞれほぼ同様であるため説明を省略する。
【0079】
(位置検出装置の機能的構成)
ここで、図13を用いて、この発明の実施の形態2にかかる位置検出装置の機能的構成について説明する。図13は、この発明の実施の形態2にかかる位置検出装置の機能的構成を示すブロック図である。図13において、位置検出装置1300は、移動速度検出部201と、オプティカルフロー算出部202と、距離算出部203と、地物特定部204と、位置検出部205と、取得部1301と、比較部1302と、から構成されている。なお、位置検出装置1300において、前述の実施の形態1にかかる位置検出装置200とほぼ同様の機能を有する構成については、符号を同じものとして、説明を省略する。
【0080】
取得部1301は、地図情報データベースから任意のルート上における被写体までの距離を取得する。地図情報データベースは、たとえば、HD105やFD107などの記録媒体によって構成され、あらかじめカメラ113で撮影したフレーム画像を処理した参照用側方データを保存している。なお、参照用側方データの保存については図14−1,図14−2に後述する。
【0081】
比較部1302は、距離算出部203によって算出された被写体までの距離と、取得部1301によって取得された被写体までの距離を比較する。距離の比較は、たとえば、所定のしきい値を設定しておこなってもよく、より具体的には。距離差としきい値を比較することとしてもよい。そして、位置検出部205は、比較部1302によって比較された比較結果に基づいて、移動体の現在位置を検出する。
【0082】
なお、図13において上述した移動速度検出部201、オプティカルフロー算出部202、距離算出部203、地物特定部204、位置検出部205は、取得部1301と、比較部1302と、具体的には、たとえば、図1に示したROM102、RAM103、HD105などの記録媒体に記録されたプログラムを、CPU101実行することによって、また通信I/F109や映像I/F112によって、その機能を実現する。
【0083】
(参照用側方データの生成処理)
つぎに、図14−1,図14−2を用いて、この発明の実施の形態2にかかる参照用側方データの生成処理について説明する。図14−1は、この発明の実施の形態2にかかる参照用側方データの生成処理の一例を示すフローチャートである。この発明の実施の形態2において参照用側方データの生成処理は、あらかじめ位置検出装置1300がおこなうものとするが、同様の機能を有する機器でおこなうこととしてもよい。
【0084】
図14−1のフローチャートにおいて、まず、位置検出装置1300は、車両401が走行中となったか否かを判断する(ステップS1401)。車両401における走行中に関する判断は、たとえば、エンジンキーの状態や、車速センサ111の出力などに基づいておこなってもよい。ここで、車両が走行中となるのを待って、走行中となった場合(ステップS1401:Yes)は、つづいて、位置検出装置1300は、車両401の車両位置を計測する(ステップS1402)。車両位置の計測は、たとえば、絶対位置である緯度経度を計測するもので、図示しないGPSユニットなどの測位デバイスによっておこなってもよい。また、通信I/F109を介して、外部から取得する構成としてもよい。
【0085】
つづいて、映像I/F112は、カメラ113を制御して、車両401の路側画像を撮影する(ステップS1403)。そして、ステップS1403において撮影された路側画像は、2つのフレームバッファに交互に、各フレーム画像における各画素を8bit、256階調のデータとして格納される。そして、オプティカルフロー算出部202は、フレームバッファに格納されたフレーム画像に基づいて、オプティカルフローを算出する(ステップS1404)。オプティカルフローの算出は、たとえば、連続するフレーム画像間において、フレーム画像の中心の鉛直線上における30個のオプティカルフローを算出する構成でもよい。なお、本図の説明では、図8〜図10で前述したように、n番目のフレームの上からi番目のオプティカルフローをOF(n,i)1020として説明する。
【0086】
つぎに、距離算出部203は、移動速度検出部201によって検出された車両401の移動速度と、ステップS1404において算出されたオプティカルフローOF(n,i)1020とに基づいて、被写体までの距離を算出する(ステップS1405)。被写体までの距離は、たとえば、前述の式(2)によってD(n,i)として求めることができる。
【0087】
そして、CPU101は、HDD104などを制御して、HD105などの記録媒体にステップS1402において計測された車両位置と、ステップS1405において算出された被写体までの距離D(n,i)を関連付けて記録する(ステップS1406)。本ステップの記録は、たとえば、フレーム間における移動量d(n)を1メートルに揃えたときの被写体までの距離D(n,i)の各項目に緯度経度情報を付記したものでもよく、道路リンクごとに整備される構成でもよい。
【0088】
そして、位置検出装置200は、車両401の走行が終了したか否かを判断する(ステップS1407)。車両401の走行に関する判断は、たとえば、エンジンキーの状態や、車速センサ111の出力などに基づいておこなってもよい。ここで、車両401の走行が終了しない場合(ステップS1407:No)は、ステップS1402へ戻って処理を繰り返す。また、車両401の走行が終了した場合(ステップS1407:Yes)は、CPU101は、ステップS1406において記録されたデータを参照用側方データとして出力して(ステップS1408)、一連の処理を終了する。参照用側方データの出力は、たとえば、HD105などの記録媒体に保存したり、通信I/F109を介して外部機器へ送信することとしてもよい。
【0089】
なお、本図の説明においては、ステップS1402において計測された車両位置を用いて処理をおこなっているが、後処理で位置を補正して精度を向上させることとしてもよい。また、参照用側方データは、路側変化とともに更新する必要があるものの、地図メーカが定期的に更新して配信するものであってもよい。
【0090】
つぎに、図14−2を用いて、この発明の実施の形態2にかかる参照用側方データの生成処理について説明する。図14−2は、この発明の実施の形態2にかかる参照用側方データの生成処理の一例を示すフローチャートである。本図の説明では、参照用側方データで生成をカーナビゲーション装置の有する路側3次元データを用いて生成する処理について説明する。なお、本図においては、データ上での処理のため位置精度や被写体距離について計測誤差は発生しない。
【0091】
図14−2のフローチャートにおいて、まず、位置検出装置1300は、参照用側方データを作成するためのデータ作成ルートを決定する(ステップS1451)。データ作成ルートの決定は、たとえば、ユーザが入力デバイス110を操作しておこなってもよく、ナビゲーション装置における3次元CG(Computer Graphics)表示のための路側3次元データが蓄積されている区間の道路についておこなうこととしてもよい。
【0092】
つづいて、CPU101は、ステップS1451において決定されたデータ作成ルート上における車両位置を決定する(ステップS1452)。車両位置は、たとえば、データ作成ルート上の所定の間隔で決定することとしてもよい。
【0093】
そして、CPU101は、路側3次元データから地物までの距離を算出する(ステップS1453)とともに、HD105などの記録媒体に、車両までの距離と地物までの距離を関連付けて記録する(ステップS1454)。
【0094】
つづいて、CPU101は、ステップS1451において決定されたデータ作成ルートにおける全ルートのデータ作成が終了したか否かを判断する(ステップS1455)。ステップS1455において、全ルートのデータ作成が終了していない場合(ステップS1455:No)は、ステップS1452に戻って処理を繰り返す。また、テップS1455において、全ルートのデータ作成が終了した場合(ステップS1455:Yes)は、CPU101は、ステップS1454において記録されたデータを参照用側方データとして出力して(ステップS1456)、一連の処理を終了する。参照用側方データの出力は、たとえば、HD105などの記録媒体に保存したり、通信I/F109を介して外部機器へ送信することとしてもよい。
【0095】
(位置検出装置1300の処理の内容)
つぎに、図15を用いて、この発明の実施の形態2にかかる位置検出装置1300の処理の内容について説明する。図15は、この発明の実施の形態2にかかる位置検出装置の処理の内容を示すフローチャートである。図15のフローチャートにおいて、まず、位置検出装置1300は、車両401が走行中となったか否かを判断する(ステップS1501)。車両401における走行中に関する判断は、たとえば、エンジンキーの状態や、車速センサ111の出力などに基づいておこなってもよい。ここで、車両が走行中となるのを待って、走行中となった場合(ステップS1501:Yes)は、つづいて、映像I/F112は、カメラ113を制御して、車両401の路側画像を撮影する(ステップS1502)。
【0096】
ステップS1502において撮影された路側画像は、2つのフレームバッファに交互に、各フレーム画像における各画素を8bit、256階調のデータとして格納される。そして、オプティカルフロー算出部202は、フレームバッファに格納されたフレーム画像に基づいて、オプティカルフローを算出する(ステップS1503)。オプティカルフローの算出は、たとえば、連続するフレーム画像間において、フレーム画像の中心の鉛直線上における30個のオプティカルフローを算出する構成でもよい。なお、本図の説明では、図8〜図10で前述したように、n番目のフレームの上からi番目のオプティカルフローをOF(n,i)1020として説明する。
【0097】
つぎに、距離算出部203は、移動速度検出部201によって検出された車両401の移動速度と、ステップS1503において算出されたオプティカルフローOF(n,i)1020とに基づいて、被写体までの距離を算出する(ステップS1504)。被写体までの距離は、たとえば、前述の式(2)によってD(n,i)として求めることができる。また、被写体までの距離D(n,i)の算出とあわせて、直前の(n−1)フレームからの車両401の移動量d(n)を、前述の式(4)を用いて算出する。
【0098】
そして、CPU101は、HDD104などを制御して、HD105などの記録媒体に、ステップS1504において算出された車両401の移動量と被写体までの距離を関連付けて記録する(ステップS1505)。本ステップの記録は、たとえば、算出された30個の被写体までの距離D(n,i)と、フレーム画像間における移動量d(n)の入力をすべて記録してもよいし、有限個数だけを記録するFIFO(First−in First−out)バッファなどに記録して、一定の区間走行したら廃棄することとしてもよい。
【0099】
そして、比較部1302は、ステップS1505において記録された被写体までの距離D(n,i)と、フレーム画像間における移動量d(n)について、取得部1301によって取得された参照用側方データと比較し(ステップS1506)、地物特定部204は、ステップS1506において比較された比較結果に基づいて、地物を特定する(ステップS1507)。そして、位置検出部205は、ステップS1507において特定された地物に基づいて、車両401の現在位置を検出したか否かを判断する(ステップS1508)。ここで、現在位置を検出した場合(ステップS1508:Yes)は、車両401の現在位置に関して、位置補正処理をおこなう(ステップS1509)。また、現在位置を検出しなかった場合(ステップS1508:No)は、位置検出装置200は、車両401の走行が終了したか否かを判断する(ステップS1510)。
【0100】
ここで、ステップS1506〜ステップS1509における処理について具体的に説明する。ステップS1506において、参照用側方データは、たとえば、ステップS1505において記録された被写体までの距離D(n,i)の直近数フレーム分について正規化され、1メートルの移動量に揃えた被写体距離データと比較することとしてもよい。
【0101】
そして、現在走行中のリンクを図示しない測位デバイス、あるいはカーナビゲーション装置から取得して、その位置に対応する参照用側方データを参照し、誤差が最小で一致する参照用データの部位を算出する。そして、算出された部位に記録されている緯度経度情報を車両401の現在位置として、カーナビゲーション装置などに出力し、車両401の現在位置の補正をおこなう。
【0102】
そして、ステップS1510において、車両401の走行が終了しない場合(ステップS1510:No)は、ステップS1502へ戻って処理を繰り返す。また、車両401の走行が終了した場合(ステップS1510:Yes)は、そのまま一連の処理を終了する。
【0103】
以上説明したように、この発明の実施の形態2によれば、あらかじめ参照用側方データを用意して処理をおこなうため、装置に対するデータ処理の負荷を軽減させて自車位置の検出をおこなうことができる。
【0104】
(実施の形態3)
つぎに、この発明の実施の形態3について説明する。前述の実施の形態1では、カメラ113で撮影した、移動体の左右いずれか一方の側方に対するフレーム画像をについて移動体の位置検出をおこなった。この発明の実施の形態3では、前述の実施の形態1で説明した位置検出装置200における移動体の位置検出を、移動体の左右の側方に対するフレーム画像をについておこなう場合について説明する。
【0105】
なお、この発明の実施の形態3にかかる位置検出装置のハードウェア構成については図1、車両の現在位置の検出の概要については図3、オプティカルフローの算出については図5−1〜図10、とそれぞれほぼ同様であるため説明を省略する。
【0106】
(位置検出装置の機能的構成)
この発明の実施の形態3にかかる位置検出装置の機能的構成は、図2とほぼ同様であるため、相違する点について図2を用いて説明する。図2において、オプティカルフロー算出部202は、任意のルート上における、移動体の他方の側方に関する一連のフレーム画像に基づいて、他方の側方のオプティカルフローを算出する。他方の側方は、たとえば、実施の形態1で算出された側方と別の方向で、たとえば、両側の側方のオプティカルフローを算出することとしてもよい。
【0107】
距離算出部203は、移動速度検出部201によって検出された移動速度とオプティカルフロー算出部202によって算出されたオプティカルフローとに基づいて、他方の側方に関する被写体までの距離を算出する。
【0108】
地物特定部204は、距離算出部203によって算出された他方の側方に関する被写体までの距離に基づいて、被写体がどのような地物であるかを特定する。また、地物特定部204は、他方の側方に関する被写体までの距離に基づいて、移動体の現在位置がどのような地形であるかを特定してもよい。さらに、地物特定部204は、一方の側方に関する被写体までの距離と他方の側方に関する被写体までの距離との距離差に基づいて、移動体の旋回方向を特定することとしてもよい。
【0109】
位置検出部205は、地物特定部204によって特定された他方の側方からの地物の地点データに基づいて、移動体の現在位置を検出する。地物の地点データは、たとえば、座標値であってもよく、地点データと被写体までの距離の位置に車両の現在位置を検出する。また、位置検出部205は、地物特定部204によって特定された現在位置の地形に基づいて、移動体の現在位置を検出することとしてもよい。
【0110】
(カメラ113の設置概要)
つぎに、図16−1および図16−2を用いて、この発明の実施の形態3にかかるカメラ113の設置の概要について説明する。図16−1は、この発明の実施の形態3にかかる2台のカメラを設置した場合の説明図である。図16−1において、任意のルート1600上を走行する車両1601には、カメラ113が設置されている。
【0111】
カメラ113は、車両401の左右の側方を撮影する向きに設置されている。また、カメラ113は、モノクロやカラーのどちらでもよく、ビデオカメラなどによって構成され、1秒間に数十フレームの間隔で連続的に側方画像を撮影する。なお、単位時間あたりに撮影するフレーム数が、前述のフレームレートFとなる。
【0112】
また、図16−2は、この発明の実施の形態3にかかるカメラとミラーを設置した場合の説明図である。図16−2において、任意のルート1600上を走行する車両1601には、カメラ113と、ミラー1602と、が設置されている。
【0113】
本図において、カメラ113は、車両1601の前方(あるいは後方でもよい)に向けて1台設置されており、ミラー1602によって左右側方を撮影することができる。ミラー1602は、プリズムなどその他光学系を利用したものであればよく、現在では見通しの悪い交差点の接近車両確認用などに使われている。
【0114】
図16−1や図16−2で示したように、左右側方を撮影した場合には、左右のフレーム画像におけるオプティカルフローの差を利用して現在位置の検出が可能となる。ここで、図17を用いて、この発明の実施の形態3にかかる交差点の左折について説明する。なお、図17では左折について説明しているが、右折についても同様の構成である。
【0115】
図17は、この発明の実施の形態3にかかる交差点の左折について示す説明図である。図17において、車両1601は、交差点1700上を左折しており、左右側方を撮影するカメラ113を備えている。たとえば、車両左側に設置されたカメラ113は、左路側画像を撮影し、左フレーム画像1701を記録する。また、車両右側に設置されたカメラ113は、右路側画像を撮影し、右フレーム画像1711を記録する。
【0116】
左フレーム画像1701の中心における鉛直線1702上について、道路が撮影される道路領域1704には、オプティカルフロー1703が算出されている。同様に、右フレーム画像1711の中心における鉛直線1712上について、道路が撮影される道路領域1714には、オプティカルフロー1713が算出されている。
【0117】
車両1601が直進している場合、左右のカメラ113との距離がほぼ等しい距離にある物体、より具体的には、路面におけるオプティカルフロー1703,1713は、左フレーム画像1701と右フレーム画像1711でほぼ等しくなる。ここで、車両1601が交差点など小さい回転半径で旋回した場合、回転中心方向である左路側画像を撮影しているカメラ113の左フレーム画像1701におけるオプティカルフロー1703は小さくなり、回転中心と逆方向である右路側画像を撮影しているカメラ113の右フレーム画像1711におけるオプティカルフロー1713は、オプティカルフロー1703と比較して大きくなる。
【0118】
このオプティカルフロー1703,1713の差は、車両1601の旋回によって生じ、その差の大きさは回転半径に反比例して大きくなる。したがって、前述の式(1)あるいは式(3)より、被写体までの距離Dから本来(直進の場合)等距離となる左右の路面距離の差を算出し、路面距離の差が一定以上である場合に左折をしたと判定する構成としてもよい。
【0119】
(位置検出装置200の処理の内容)
つぎに、図18を用いて、この発明の実施の形態3にかかる位置検出装置200の処理の内容について説明する。図18は、この発明の実施の形態3にかかる位置検出装置の処理の内容について示すフローチャートである。本図の説明では、位置検出装置200によって交差点の右左折を検出する処理について説明する。図18のフローチャートにおいて、まず、位置検出装置200は、車両401が走行中になったか否かを判断する(ステップS1801)。ここで、車両が走行中となるのを待って、走行中となった場合(ステップS1801:Yes)は、つづいて、映像I/F112は、カメラ113を制御して、車両401の左路側画像を撮影する(ステップS1802)。
【0120】
ステップS1802において撮影された左路側画像は、左用の2つのフレームバッファに交互に、各フレーム画像における各画素を8bit、256階調のデータとして格納される。そして、オプティカルフロー算出部202は、フレームバッファに格納されたフレーム画像に基づいて、オプティカルフローを算出する(ステップS1803)。オプティカルフローの算出は、たとえば、連続するフレーム画像間において、フレーム画像の中心の鉛直線上における30個のオプティカルフローを算出する構成でもよい。なお、本図の説明では、図8〜図10で前述したように、n番目のフレームの上からi番目のオプティカルフローをOF(n,i)1020として説明する。
【0121】
つぎに、距離算出部203は、移動速度検出部201によって検出された車両401の移動速度と、ステップS1803において算出されたオプティカルフローOF(n,i)1020とに基づいて、左被写体までの距離を算出する(ステップS1804)。被写体までの距離は、たとえば、前述の式(2)によってD(n,i)として求めることができる。また、被写体までの距離D(n,i)の算出とあわせて、直前の(n−1)フレームからの車両401の移動量d(n)を、前述の式(4)を用いて算出する。
【0122】
また、前述のステップS1802〜ステップS1804と同様にして、映像I/F112は、カメラ113を制御して、右路側画像を撮影し(ステップS1805)、オプティカルフロー算出部202は、オプティカルフローを算出し(ステップS1806)、距離算出部203は、右被写体までの距離を算出する(ステップS1807)。
【0123】
そして、CPU101は、HDD104などを制御して、HD105などの記録媒体に、ステップS1804およびステップS1807において算出された車両401の移動量と左右被写体までの距離を関連付けて記録する(ステップS1808)。
【0124】
つづいて、地物特定部204は、ステップS1808において記録された左右被写体までの距離D(n,i)に基づいて、左被写体までの距離と右被写体までの距離を比較する(ステップS1809)。左被写体および右被写体は、たとえば、前述の図17において説明した路面でもよい。そして、地物特定部204および位置検出部205は、一定区間において、しきい値以上の距離差があるか否かを判断する(ステップS1810)。
【0125】
ステップS1810において、一定区間において、しきい値以上の距離差がある場合(ステップS1810:Yes)は、地物特定部204および位置検出部205は、車両が交差点を右左折したことを検出して、交差点と右左折情報を出力する(ステップS1811)。交差点と、右左折情報の出力は、たとえば、通信I/F109を介して、図示しないカーナビゲーション装置などに出力し、車両の現在位置の補正をおこなうようにしてもよい。なお、交差点と右左折の検出についての詳細は後述する。そして、位置検出装置200は、車両401の走行が終了したか否かを判断する(ステップS1812)。
【0126】
また、ステップS1810において、一定区間において、しきい値以上の距離差がない場合(ステップS1810:No)は、つづいて、位置検出装置200は、車両401の走行が終了したか否かを判断する(ステップS1812)。車両401の走行に関する判断は、たとえば、エンジンキーの状態や、車速センサ111の出力などに基づいておこなってもよい。ここで、車両401の走行が終了しない場合(ステップS1812:No)は、ステップS1802あるいはステップS1805へ戻って処理を繰り返す。また、車両401の走行が終了した場合(ステップS1812:Yes)は、そのまま一連の処理を終了する。
【0127】
ここで、ステップS1809〜ステップS1811における交差点の右左折の検出について説明する。まず、図19を用いて、この発明の実施の形態3にかかる道路が確実に撮影されている領域について説明する。図19は、この発明の実施の形態3にかかる道路が確実に撮影されている領域について示す説明図である。
【0128】
図19において、フレーム画像1900は、ステップS1802あるいはステップS1805において、カメラ113で撮影された左右路側画像であり、前述した図10のように、複数の8画素幅領域から構成されている。また、フレーム画像1900におけるiroad1901は、道路が確実に撮影されている領域である。iroad1901は、たとえば、水平線が撮影されている8画素幅領域よりも下、かつ右左折に関わらず道路が撮影されるように十分下方に設定する。
【0129】
地物特定部204および位置検出部205は、ステップS1808において記録された左右被写体までの距離D(n,i)に基づいて、左被写体までの距離と右被写体までの距離を比較し、距離差によって右左折および交差点を判定する。右左折の判定は、カメラ113が確実に近傍の路面を撮影している1つあるいは複数の8画素幅領域iroad1901の被写体までの距離を用いておこなってもよい。
【0130】
左路側画像を撮影するカメラ113のフレーム画像1900におけるiroad1901で算出される被写体までの距離DL(n,iroad)、右路側画像を撮影するカメラ113のフレーム画像1900におけるiroad1901で算出される被写体までの距離DR(n,iroad)として、下記式(8)を満たす負でない整数bについて、記式(9)および式(10)が常に一方について成り立つならば交差点と判定する。
【0131】
【数8】

【0132】
【数9】

【0133】
【数10】

【0134】
ここで、上記式(8)は、連続bフレームの移動区間がしきい値R(交差点右左折に必要な車両移動量)を超えるための条件である。また、式(9)は、左折時の条件であり、左側の被写体までの距離DL(n,iroad)が右側の被写体までの距離DR(n,iroad)よりもしきい値TLだけ大きいと左折と判断する。また、同様に、式(10)は、右折時の条件であり、しきい値TRである。なお、右折と左折でしきい値が異なるのは、複数車線上での通行時(左側通行あるいは右側通行)には、右左折の曲率が異なるためである。そして、地物特定部204は、地物を交差点であると特定し、位置検出部205は、特定された交差点の右左折の位置に関する自車検出する。
【0135】
そして、交差点での右左折が検出されると、その情報をカーナビゲーション装置へ通知するなどして、カーナビゲーション装置では、たとえば、GPSや車速センサなどによって推定される車両401の現在位置に最も近い交差点に現在位置を変更したうえで、現在のルートを右折あるいは左折後の道路リンクへ推移するように変更したり、十分に近い交差点がなければ通知を無視してつぎの交差点の通知を受けるまで通常の処理をおこなうようにしてもよい。
【0136】
以上説明したように、この発明の実施の形態3によれば、左右両側の路側画像を撮影する構成にした場合、実施の形態1あるいは実施の形態2で説明した機能を左右独立に機能させることができる。したがって、駐車車両、併走車両、右左折車両などによる悪影響がある場合など、左右のどちらかの被写体までの距離が正確に算出できない場合でも、他方の算出結果を利用して位置検出を図ることができる。また、交差点の検出が片方のカメラからである場合には、交差点でなくT字路であることを検出することもでき、より的確な位置検出ができ、位置補正に役立てることができる。
【0137】
なお、実施の形態3の説明では、参照用側方データを用いて処理をおこなうこととしないが、実施の形態2と同様に参照用側方データを参照して処理をおこなってもよい。
【0138】
なお、本実施の形態で説明した位置検出方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体であってもよい。
【0139】
(付記1)任意のルート上を走行する移動体の移動速度を検出する移動速度検出手段と、
前記ルート上における、前記移動体の左右いずれか一方の側方に関する一連のフレーム画像に基づいて、前記一方の側方のオプティカルフローを算出するオプティカルフロー算出手段と、
前記移動速度検出手段によって検出された移動速度と前記オプティカルフロー算出手段によって算出されたオプティカルフローとに基づいて、前記一方の側方に関する被写体までの距離を算出する距離算出手段と、
前記距離算出手段によって算出された距離に基づいて、前記被写体がどのような地形または物体(以下、「地物」という)であるかを特定する特定手段と、
前記特定手段によって特定された地物の地点データと前記被写体までの距離とに基づいて、前記移動体の現在位置を検出する位置検出手段と、
を備えることを特徴とする位置検出装置。
【0140】
(付記2)地図情報データベースから前記ルート上における前記被写体までの距離を取得する取得手段と、
前記距離算出手段によって算出された距離と前記取得手段によって取得された距離とを比較する比較手段と、を備え、
前記位置検出手段は、
さらに、前記比較手段によって比較された比較結果に基づいて、前記移動体の現在位置を検出することを特徴とする付記1に記載の位置検出装置。
【0141】
(付記3)前記オプティカルフロー算出手段は、
さらに、前記ルート上における、前記移動体の他方の側方に関する一連のフレーム画像に基づいて、前記他方の側方のオプティカルフローを算出し、
前記距離算出手段は、
さらに、前記移動速度と前記オプティカルフロー算出手段によって算出された前記他方の側方のオプティカルフローとに基づいて、前記他方の側方に関する被写体までの距離を算出し、
前記特定手段は、
さらに、前記距離算出手段によって算出された前記他方の側方に関する被写体までの距離に基づいて、前記他方の側方に関する被写体がどのような地形または物体(以下、「地物」という)であるかを特定し、
前記位置検出手段は、
さらに、前記特定手段によって特定された前記他方の側方からの地物の地点データに基づいて、前記移動体の現在位置を検出することを特徴とする付記1に記載の位置検出装置。
【0142】
(付記4)前記特定手段は、
前記距離算出手段によって算出された前記他方の側方に関する被写体までの距離に基づいて、前記移動体の現在位置がどのような地形であるかを特定し、
前記位置検出手段は、
さらに、前記特定手段によって特定された現在位置の地形に基づいて、前記移動体の現在位置を検出することを特徴とする付記3に記載の位置検出装置。
【0143】
(付記5)前記特定手段は、
さらに、前記一方の側方に関する被写体までの距離と前記他方の側方に関する被写体までの距離との距離差に基づいて、前記移動体の旋回方向を特定することを特徴とする付記4に記載の位置検出装置。
【0144】
(付記6)任意のルート上を走行する移動体の移動速度を検出する移動速度検出工程と、
前記ルート上における、前記移動体の左右いずれか一方の側方に関する一連のフレーム画像に基づいて、前記一方の側方のオプティカルフローを算出するオプティカルフロー算出工程と、
前記移動速度検出工程によって検出された移動速度と前記オプティカルフロー算出工程によって算出されたオプティカルフローとに基づいて、前記一方の側方に関する被写体までの距離を算出する距離算出工程と、
前記距離算出工程によって算出された距離に基づいて、前記被写体がどのような地形または物体(以下、「地物」という)であるかを特定する特定工程と、
前記特定工程によって特定された地物の地点データと前記被写体までの距離とに基づいて、前記移動体の現在位置を検出する位置検出工程と、
を含んだことを特徴とする位置検出方法。
【0145】
(付記7)地図情報データベースから前記ルート上における前記被写体までの距離を取得する取得工程と、
前記距離算出工程によって算出された距離と前記取得工程によって取得された距離とを比較する比較工程と、を含み、
前記位置検出工程は、
さらに、前記比較工程によって比較された比較結果に基づいて、前記移動体の現在位置を検出することを特徴とする付記6に記載の位置検出方法。
【0146】
(付記8)前記オプティカルフロー算出工程は、
さらに、前記ルート上における、前記移動体の他方の側方に関する一連のフレーム画像に基づいて、前記他方の側方のオプティカルフローを算出し、
前記距離算出工程は、
さらに、前記移動速度と前記オプティカルフロー算出工程によって算出された前記他方の側方のオプティカルフローとに基づいて、前記他方の側方に関する被写体までの距離を算出し、
前記特定工程は、
さらに、前記距離算出工程によって算出された前記他方の側方に関する被写体までの距離に基づいて、前記他方の側方に関する被写体がどのような地形または物体(以下、「地物」という)であるかを特定し、
前記位置検出工程は、
さらに、前記特定工程によって特定された前記他方の側方からの地物の地点データに基づいて、前記移動体の現在位置を検出することを特徴とする付記6に記載の位置検出方法。
【0147】
(付記9)任意のルート上を走行する移動体の移動速度を検出させる移動速度検出工程と、
前記ルート上における、前記移動体の左右いずれか一方の側方に関する一連のフレーム画像に基づいて、前記一方の側方のオプティカルフローを算出させるオプティカルフロー算出工程と、
前記移動速度検出工程によって検出された移動速度と前記オプティカルフロー算出工程によって算出されたオプティカルフローとに基づいて、前記一方の側方に関する被写体までの距離を算出させる距離算出工程と、
前記距離算出工程によって算出された距離に基づいて、前記被写体がどのような地形または物体(以下、「地物」という)であるかを特定させる特定工程と、
前記特定工程によって特定された地物の地点データと前記被写体までの距離とに基づいて、前記移動体の現在位置を検出させる位置検出工程と、
をコンピュータに実行させることを特徴とする位置検出プログラム。
【0148】
(付記10)地図情報データベースから前記ルート上における前記被写体までの距離を取得させる取得工程と、
前記距離算出工程によって算出された距離と前記取得工程によって取得された距離とを比較させる比較工程と、をコンピュータに実行させ、
前記位置検出工程は、
さらに、前記比較工程によって比較された比較結果に基づいて、前記移動体の現在位置を検出させることを特徴とする付記9に記載の位置検出プログラム。
【0149】
(付記11)前記オプティカルフロー算出工程は、
さらに、前記ルート上における、前記移動体の他方の側方に関する一連のフレーム画像に基づいて、前記他方の側方のオプティカルフローを算出させ、
前記距離算出工程は、
さらに、前記移動速度と前記オプティカルフロー算出工程によって算出された前記他方の側方のオプティカルフローとに基づいて、前記他方の側方に関する被写体までの距離を算出させ、
前記特定工程は、
さらに、前記距離算出工程によって算出された前記他方の側方に関する被写体までの距離に基づいて、前記他方の側方に関する被写体がどのような地形または物体(以下、「地物」という)であるかを特定させ、
前記位置検出工程は、
さらに、前記特定工程によって特定された前記他方の側方からの地物の地点データに基づいて、前記移動体の現在位置を検出させることを特徴とする付記9に記載の位置検出プログラム。
【0150】
(付記12)付記9〜11のいずれか一つに記載の位置検出プログラムを記録したコンピュータに読み取り可能な記録媒体。
【産業上の利用可能性】
【0151】
以上のように、本発明にかかる位置検出装置、位置検出方法、位置検出プログラムおよび記録媒体は、ITS(Intelligent Transportation Systems)に有用であり、特に、車載のカーナビゲーション装置に用いられる測位機能の補助に適している。
【図面の簡単な説明】
【0152】
【図1】この発明の実施の形態1にかかる位置検出装置のハードウェア構成を示すブロック図である。
【図2】この発明の実施の形態1にかかる位置検出装置の機能的構成を示すブロック図である。
【図3】この発明の実施の形態1にかかる位置検出部による車両の現在位置の検出の概要について示す説明図である。
【図4】この発明の実施の形態1にかかるカメラの設置の概要を示す説明図である。
【図5−1】この発明の実施の形態1にかかる(n−1)フレームのフレーム画像を示す説明図である。
【図5−2】この発明の実施の形態1にかかる(n)フレームのフレーム画像を示す説明図である。
【図6】この発明の実施の形態1にかかる(n−1)フレームと(n)フレームの間のオプティカルフローを示す説明図である。
【図7】この発明の実施の形態1にかかる被写体までの距離の算出について示す説明図である。
【図8】この発明の実施の形態1にかかるフレームバッファに格納された(n)フレームのフレーム画像の構成を示す説明図である。
【図9】この発明の実施の形態1にかかる鉛直線上における垂直8画素単位の分割を示す説明図である。
【図10】この発明の実施の形態1にかかるオプティカルフローの算出の一例を示す説明図である。
【図11】この発明の実施の形態1にかかる位置検出装置の処理の内容を示すフローチャートである。
【図12】この発明の実施の形態1にかかるステップS1102において撮影された路側画像におけるフレーム画像の一例を示す説明図である。
【図13】この発明の実施の形態2にかかる位置検出装置の機能的構成を示すブロック図である。
【図14−1】この発明の実施の形態2にかかる参照用側方データの生成処理の一例を示すフローチャートである。
【図14−2】この発明の実施の形態2にかかる参照用側方データの生成処理の一例を示すフローチャートである。
【図15】この発明の実施の形態2にかかる位置検出装置の処理の内容を示すフローチャートである。
【図16−1】この発明の実施の形態3にかかる2台のカメラを設置した場合を示す説明図である。
【図16−2】この発明の実施の形態3にかかるカメラとミラーを設置した場合を示す説明図である。
【図17】この発明の実施の形態3にかかる交差点の左折について示す説明図である。
【図18】この発明の実施の形態3にかかる位置検出装置の処理の内容について示すフローチャートである。
【図19】この発明の実施の形態3にかかる道路が確実に撮影されている領域について示す説明図である。
【符号の説明】
【0153】
100 バス
101 CPU
102 ROM
103 RAM
104 HDD
105 HD
106 FDD
107 FD
108 ディスプレイ
109 通信I/F
110 入力デバイス
111 車速センサ
112 映像I/F
113 カメラ
200,1300 位置検出装置
201 移動速度検出部
202 オプティカルフロー算出部
203 距離算出部
204 地物特定部
205 位置検出部
701,702 被写体
703 レンズ
704 投影面
1301 取得部
1302 比較部


【特許請求の範囲】
【請求項1】
任意のルート上を走行する移動体の移動速度を検出する移動速度検出手段と、
前記ルート上における、前記移動体の左右いずれか一方の側方に関する一連のフレーム画像に基づいて、前記一方の側方のオプティカルフローを算出するオプティカルフロー算出手段と、
前記移動速度検出手段によって検出された移動速度と前記オプティカルフロー算出手段によって算出されたオプティカルフローとに基づいて、前記一方の側方に関する被写体までの距離を算出する距離算出手段と、
前記距離算出手段によって算出された距離に基づいて、前記被写体がどのような地形または物体(以下、「地物」という)であるかを特定する特定手段と、
前記特定手段によって特定された地物の地点データと前記被写体までの距離とに基づいて、前記移動体の現在位置を検出する位置検出手段と、
を備えることを特徴とする位置検出装置。
【請求項2】
地図情報データベースから前記ルート上における前記被写体までの距離を取得する取得手段と、
前記距離算出手段によって算出された距離と前記取得手段によって取得された距離とを比較する比較手段と、を備え、
前記位置検出手段は、
さらに、前記比較手段によって比較された比較結果に基づいて、前記移動体の現在位置を検出することを特徴とする請求項1に記載の位置検出装置。
【請求項3】
前記オプティカルフロー算出手段は、
さらに、前記ルート上における、前記移動体の他方の側方に関する一連のフレーム画像に基づいて、前記他方の側方のオプティカルフローを算出し、
前記距離算出手段は、
さらに、前記移動速度と前記オプティカルフロー算出手段によって算出された前記他方の側方のオプティカルフローとに基づいて、前記他方の側方に関する被写体までの距離を算出し、
前記特定手段は、
さらに、前記距離算出手段によって算出された前記他方の側方に関する被写体までの距離に基づいて、前記他方の側方に関する被写体がどのような地形または物体(以下、「地物」という)であるかを特定し、
前記位置検出手段は、
さらに、前記特定手段によって特定された前記他方の側方からの地物の地点データに基づいて、前記移動体の現在位置を検出することを特徴とする請求項1に記載の位置検出装置。
【請求項4】
任意のルート上を走行する移動体の移動速度を検出する移動速度検出工程と、
前記ルート上における、前記移動体の左右いずれか一方の側方に関する一連のフレーム画像に基づいて、前記一方の側方のオプティカルフローを算出するオプティカルフロー算出工程と、
前記移動速度検出工程によって検出された移動速度と前記オプティカルフロー算出工程によって算出されたオプティカルフローとに基づいて、前記一方の側方に関する被写体までの距離を算出する距離算出工程と、
前記距離算出工程によって算出された距離に基づいて、前記被写体がどのような地形または物体(以下、「地物」という)であるかを特定する特定工程と、
前記特定工程によって特定された地物の地点データと前記被写体までの距離とに基づいて、前記移動体の現在位置を検出する位置検出工程と、
を含んだことを特徴とする位置検出方法。
【請求項5】
地図情報データベースから前記ルート上における前記被写体までの距離を取得する取得工程と、
前記距離算出工程によって算出された距離と前記取得工程によって取得された距離とを比較する比較工程と、を含み、
前記位置検出工程は、
さらに、前記比較工程によって比較された比較結果に基づいて、前記移動体の現在位置を検出することを特徴とする請求項4に記載の位置検出方法。
【請求項6】
前記オプティカルフロー算出工程は、
さらに、前記ルート上における、前記移動体の他方の側方に関する一連のフレーム画像に基づいて、前記他方の側方のオプティカルフローを算出し、
前記距離算出工程は、
さらに、前記移動速度と前記オプティカルフロー算出工程によって算出された前記他方の側方のオプティカルフローとに基づいて、前記他方の側方に関する被写体までの距離を算出し、
前記特定工程は、
さらに、前記距離算出工程によって算出された前記他方の側方に関する被写体までの距離に基づいて、前記他方の側方に関する被写体がどのような地形または物体(以下、「地物」という)であるかを特定し、
前記位置検出工程は、
さらに、前記特定工程によって特定された前記他方の側方からの地物の地点データに基づいて、前記移動体の現在位置を検出することを特徴とする請求項4に記載の位置検出方法。
【請求項7】
任意のルート上を走行する移動体の移動速度を検出させる移動速度検出工程と、
前記ルート上における、前記移動体の左右いずれか一方の側方に関する一連のフレーム画像に基づいて、前記一方の側方のオプティカルフローを算出させるオプティカルフロー算出工程と、
前記移動速度検出工程によって検出された移動速度と前記オプティカルフロー算出工程によって算出されたオプティカルフローとに基づいて、前記一方の側方に関する被写体までの距離を算出させる距離算出工程と、
前記距離算出工程によって算出された距離に基づいて、前記被写体がどのような地形または物体(以下、「地物」という)であるかを特定させる特定工程と、
前記特定工程によって特定された地物の地点データと前記被写体までの距離とに基づいて、前記移動体の現在位置を検出させる位置検出工程と、
をコンピュータに実行させることを特徴とする位置検出プログラム。
【請求項8】
地図情報データベースから前記ルート上における前記被写体までの距離を取得させる取得工程と、
前記距離算出工程によって算出された距離と前記取得工程によって取得された距離とを比較させる比較工程と、をコンピュータに実行させ、
前記位置検出工程は、
さらに、前記比較工程によって比較された比較結果に基づいて、前記移動体の現在位置を検出させることを特徴とする請求項7に記載の位置検出プログラム。
【請求項9】
前記オプティカルフロー算出工程は、
さらに、前記ルート上における、前記移動体の他方の側方に関する一連のフレーム画像に基づいて、前記他方の側方のオプティカルフローを算出させ、
前記距離算出工程は、
さらに、前記移動速度と前記オプティカルフロー算出工程によって算出された前記他方の側方のオプティカルフローとに基づいて、前記他方の側方に関する被写体までの距離を算出させ、
前記特定工程は、
さらに、前記距離算出工程によって算出された前記他方の側方に関する被写体までの距離に基づいて、前記他方の側方に関する被写体がどのような地形または物体(以下、「地物」という)であるかを特定させ、
前記位置検出工程は、
さらに、前記特定工程によって特定された前記他方の側方からの地物の地点データに基づいて、前記移動体の現在位置を検出させることを特徴とする請求項7に記載の位置検出プログラム。
【請求項10】
請求項7〜9のいずれか一つに記載の位置検出プログラムを記録したコンピュータに読み取り可能な記録媒体。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5−1】
image rotate

【図5−2】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14−1】
image rotate

【図14−2】
image rotate

【図15】
image rotate

【図16−1】
image rotate

【図16−2】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate


【公開番号】特開2007−147458(P2007−147458A)
【公開日】平成19年6月14日(2007.6.14)
【国際特許分類】
【出願番号】特願2005−342623(P2005−342623)
【出願日】平成17年11月28日(2005.11.28)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】