"カメラから画像を取得し、前記画像から、路面上にある特徴点を規定する抽出条件を満たす特徴点を抽出し、抽出された前記特徴点から前記カメラまでの実空間での距離を、前記画像内での前記特徴点の位置に基づいて求められる前記特徴点の前記カメラに対する実空間上での角度と、前記カメラの俯角及び路面からの距離を含む設置情報とを用いて算出する、処理をコンピュータに実行させるための距離算出プログラム。前記特徴点を抽出する場合、画像の消失点及び水平線に基づき設定された領域内で特徴点を抽出する請求項1記載の距離算出プログラム。前記距離を算出する場合、前記特徴点の位置と、前記カメラのレンズの歪み特性とから前記角度を求める請求項1又は2記載の距離算出プログラム。前記画像とは異なる他の画像から前記抽出条件を満たす特徴点を抽出し、前記画像の特徴点と、前記他の画像の特徴点とが対応するかを判定し、対応すると判定された前記他の画像の特徴点から前記カメラまでの実空間上での距離を、前記他の画像の特徴点の前記カメラに対する実空間上での角度及び前記設置情報を用いて算出し、前記画像の特徴点の前記距離及び角度と、前記他の画像の特徴点の前記距離及び角度との差分から前記カメラを搭載する車両の移動量を算出する、処理をコンピュータにさらに実行させるための請求項1乃至3いずれか一項に記載の距離算出プログラム。前記画像の特徴点を抽出する領域よりも、前記他の画像の特徴点を抽出する領域を大きくする請求項4記載の距離算出プログラム。カメラから画像を取得し、前記画像から、路面上にある特徴点を規定する抽出条件を満たす特徴点を抽出し、抽出された前記特徴点から前記カメラまでの実空間上での距離を、前記画像内での前記特徴点の位置に基づいて求められる前記特徴点の前記カメラに対する実空間上での角度と、前記カメラの俯角及び路面からの距離を含む設置情報とを用いて算出する距離算出方法。カメラにより撮像された画像から、路面上にある特徴点を規定する抽出条件を満たす特徴点を抽出する抽出部と、抽出された前記特徴点から前記カメラまでの実空間上での距離を、前記画像内での前記特徴点の位置に基づいて求められる前記特徴点の前記カメラに対する実空間上での角度と、前記カメラの俯角及び路面からの距離を含む設置情報とを用いて算出する相対位置算出部と、を備える距離算出装置。しかし、従来技術では、既知である道路標識が画像から得られない場合に、車両速度を算出することができない。よって、従来技術では、適用可能な場面が限られてしまい、汎用性に欠ける。また、他の従来技術では、路面にマークを形成するためのマーク形成手段を車両に備える必要があり、汎用性に欠ける。そこで、汎用性を上げるため、画像内の対象物とカメラとの実空間での距離を算出することを考える。対象物とカメラとの実空間での距離を算出すれば、この距離の時間変化量に基づき車両の移動量を算出することができるからである。しかしながら、画像内の対象物とカメラとの実空間での距離を算出する場合、撮像した画像から何を対象物とすればよいか、その対象物からの距離をどのように算出すればよいかなどの様々な問題点があった。そこで、開示の技術は、画像内から距離算出に適切な対象物を特定し、この対象物からカメラまでの距離を適切に算出することができる距離算出プログラム、距離算出方法及び距離算出装置を提供することを目的とする。開示の一態様における距離算出プログラムは、カメラから画像を取得し、前記画像から、路面上にある特徴点を規定する抽出条件を満たす特徴点を抽出し、抽出された前記特徴点から前記カメラまでの実空間での距離を、前記画像内での前記特徴点の位置に基づいて求められる前記特徴点の前記カメラに対する実空間上での角度と、前記カメラの俯角及び路面からの距離を含む設置情報とを用いて算出する、処理をコンピュータに実行させる。開示の技術は、画像内から距離算出に適切な対象物を特定し、この対象物からカメラまでの距離を適切に算出することができる。以下、添付図面を参照しながら各実施例について詳細に説明する。[実施例1]<構成>図1は、実施例1における距離算出装置10の構成の一例を示すブロック図である。図1に示す例では、距離算出装置10は、カメラ部101、抽出部102、歪み特性保持部103、設置情報保持部104、相対位置算出部105、相対位置保持部106を備える。カメラ部101は、例えばNTSCNationalTelevisionSystemCommittee出力を備えたCCDカメラであり、路面を含む画像を所定間隔例えば、1秒間に30回で撮像する。撮像された画像は、抽出部102に出力される。カメラ部101は、車両に設置される。抽出部102は、カメラ部101から画像を取得し、画像内の路面上にある特徴点を規定する抽出条件を満たす特徴点を抽出する。路面上の特徴点は、例えば、路面上にある対象物内の特徴点である。路面上の特徴点を抽出する理由は、図6を用いて後述する。この対象物の例として、例えば、路面上にある道路標示横断歩道、停止線、中央線、車道外側線、止まれなどの指示文字など、マンホール、排水口のふた、駐車枠などがある。特徴点としては、道路標示の角やマンホール内の文字や模様の角などを特徴点とすればよい。他にも、抽出部102は、構造物と路面との設置面から特徴点として抽出してもよい。例えば、抽出部102は、歩道の縁石、ガードレールのポール、電柱などの構造物と路面の設置面から特徴点として抽出してもよい。また、抽出部102は、車止めと路面との設置面、屋内駐車場の柱と路面との設置面などから特徴点を抽出してもよい。抽出部102は、道路標示のうち、停止線などを検知する場合には、ハフ変換を用いて白線検知技術を用いればよい。また、抽出部102は、止まれなどの文字や、マンホール、排水口のふたなどは、形状及び色を含む辞書と照合するパターンマッチングにより検知可能である。抽出部102は、歩道、ガードレール、電柱などもパターンマッチングで認識し、これらの構造物の縦方向のエッジが消失し、横方向のエッジが生じる境界点を特徴点と判断すればよい。これにより、抽出部102は、路面上にある特徴点を抽出することができる。また、抽出部102は、予め画像内の座標ごとにその座標の映像が車両移動時にどのように動くかを定義しておき、当該座標に位置する特徴点の動きがその定義から大きく逸脱するものを排除し、残りの特徴点を路面上にある特徴点とみなしてもよい。抽出部102は、例えば、車両停車時には全ての特徴点は移動量が0であるため、車両が停車していることが判断できる。抽出部102は、大部分の特徴点が止まっているのに一部分の特徴点に動きがある場合、当該特徴点は移動物体の特徴点とみなして除去することができる。次に、車両が移動し始めたとき、車両はゆっくり移動する。そのときの特徴点の動き閾値を座標ごとに抽出部102に設定しておく。路面上にある対象物よりも立体物の方が距離が近いため、立体物の動きが大きい。動き始めの直後例えば100ms後などの特徴点の動きから、想定した動き以上の大きさを示している場合は、抽出部102は、立体物の特徴点として除去する。時間が経過した場合は、車両の速度は不明なので、抽出部102は、抽出した特徴点を路面上の対象物の特徴点とみなして、距離算出に適用してもよい。抽出部102は、前述したいずれかの抽出条件を用いて特徴点を抽出する。抽出部102は、複数の抽出条件を適用して特徴点を抽出してもよい。例えば、抽出部102は、まず、ハフ変換により停止線などを検知し、その停止線の角などを特徴点として抽出するが、ハフ変換で停止線が検知できないときに、パターンマッチングを行って、路面上の対象物を検知してから特徴点を抽出するようにしてもよい。また、抽出部102は、画像を縮小してから抽出条件に合致する特徴点を抽出するようにしてもよい。これにより、ノイズを除去した後に特徴点を抽出することができる。また、抽出部102は、特徴点を抽出する抽出領域を予め設定しておいてもよい。この抽出領域は、例えば、消失点及び水平線に基づき設定される。消失点は、無限遠点であり、路面の両側の線が交わる点である。水平線は、路面の両側の線のことである。消失点は、カメラのフォーカスポイントに基づき定まる点であり、水平線は、カメラのレンズの歪み特性に基づき定まる線である。また、抽出領域は、簡易的には、画像下部の所定の矩形領域などでもよい。抽出領域は、例えば、消失点及び水平線から所定ピクセル下の線を上限とし、画像下部から所定ピクセル上の線を下限として設定すればよい。所定ピクセルは、例えば20ピクセルである。消失点及び水平線から所定ピクセル下の線を上限を抽出領域の境界線とする理由は、坂道などのときに、水平線や消失点が上下してしまうためである。図2は、抽出領域の一例を示す図である。図2に示す画像は、車両のフロントに設けたカメラにより撮像された画像の例である。図2に示すa11は、消失点を示し、a12は、水平線を示す。a14は、抽出領域を示し、a13は、抽出領域内の特徴点の候補を示す。抽出部102は、抽出領域a14内から特徴点を抽出する。例えば、白線の角や白線を示す線の交点などが特徴点となる。抽出部102は、抽出範囲を抽出領域に絞ることで、演算量を削減しつつ、路面上にある物体を見つけやすくなる。図3は、特徴点の例を示す図である。図3Aは、路面上にある文字の角を特徴点とする例である。図3Aに示す画像では、路面上にある止まれの文字の止の左下の角を特徴点とする。図3Bは、路面上にある横断歩道の白線の角を特徴点とする例である。図3Bに示す画像では、路面上にある一番左の白線の下の両角を特徴点とする。抽出部102は、抽出した特徴点を相対位置算出部105に出力する。なお、抽出部102は、複数の特徴点を抽出する際、抽出領域に散在するように多量例えば数百個の特徴点を抽出するようにすればよい。これにより、特徴点の誤抽出のリスクを下げることができる。抽出部102は、例えば、抽出領域を複数の領域に分け、各領域内からそれぞれ特徴点を抽出するようにすれば、特徴点が散在するようになる。また、特徴点が多ければ、統計処理によりノイズを除去することができる。図1に戻り、歪み特性保持部103は、カメラ部101のレンズの歪み特性を示す情報を保持する。ここで、カメラの特性について説明する。カメラでは、カメラの中心から同一線上にある物体は、カメラとの距離に関わらず、映像画像上は、同じ位置に撮像される。図4は、画像内の物体の位置の一例を示す図である。図4Aは、カメラ201と物体203、204との位置関係を上から見た図である。図4Aに示すように、物体203、204は、カメラ201のレンズ202の中心から同一線上にある。図4Aに示す状態で撮像された画像は、図4Bに示す。図4Bに示す画像210では、物体203、204は、同じ位置にあるように撮像される。図4で説明した関係を示すデータがカメラのレンズの歪み特性である。図5は、カメラのレンズの歪み特性の一例を示す図である。図5Aは、レンズ202中心からの物体203までの角度θを示す図である。図5Bは、画像中心b11から物体203までの画像上での距離δを示す図である。図5Cは、角度θと距離δとの関係を示す図である。図5Cに示す関係が、レンズの歪み特性を示す。図5Cに示す例では、レンズの歪み特性をルックアップテーブルで保持する例である。距離δは、画像中心b11からの画素数で表してもよい。また、レンズの歪み特性にはさらに縦横の歪み比率があり、この縦横歪み比率を用いることで、画像中心b11からの縦方向の距離とカメラの縦方向の角度とを対応づけることができる。これを合成することで、映像上の中心からの任意の座標x,yに位置する物体が、3次元の実空間上でどのような角度に存在するかを、後述する相対位置算出部106により算出することができる。なお、レンズの歪み特性は、高機能なレンズで歪みがない場合には、画像中心b11からの画素数と角度θとの関係を示せばよい。レンズの歪み特性を表すデータは、ディストーションデータとも呼ばれる。歪み特性保持部103は、例えば、図5Cに示すようなルックアップテーブルを保持し、必要に応じて相対位置算出部105により読み出される。図1に戻り、設置情報保持部104は、カメラの設置位置に関する情報を表す設置情報を保持する。設置情報は、路面からの高さ、俯角、パン角、ロール角などを含む。路面からの高さは、路面からカメラまでの距離を示し、俯角は、水平線とカメラの視線方向との角度を示し、パン角は、カメラの横方向の角度を示し、ロール角は、カメラ自身の回転角を示す。設置情報は、必要に応じて相対位置算出部106により読み出される。相対位置算出部105は、抽出部102により抽出された特徴点の画像中心からの位置と、歪み特性と、設置情報とに基づいて、カメラから特徴点までの距離を算出する。例えば、相対位置算出部105は、特徴点の画像内での位置と歪み特性とを用いて角度θを求める。相対位置算出部105は、求めた角度θと、設置情報に含まれる俯角、パン角、ロール角とを用いて、対象物又は対象物の特徴点からカメラの設置位置までの角度λを算出する。相対位置算出部105は、例えば、求めた角度θや角度λと、設置情報のパラメータとを三角関数に当てはめることで、特徴点を含む対象物からカメラまでの距離とを算出することができる。図6は、距離算出を説明するための図である。図6に示す例では、簡略化するため、ロール角、パン角はいずれも0とし、横から見た平面で長手方向の距離Zを算出する。図6に示す例では、カメラの設置情報を、路面からの高さh、俯角φとする。特徴点の位置と歪み特性とによって求められた対象物の特徴点Aまでのレンズ中心からの角度は、θとする。対象物の特徴点Aは、路面上の特徴点である。相対位置算出部105は、図6に示すような路面からの高さh、俯角φ、角度θに基づき、カメラから対象物の特徴点Aまでの距離Zを次の式1により算出する。Z=h×tan90°-φθ式1相対位置算出部105は、図6を例にして算出した距離と同様にして、上から見た平面で左右方向の距離を算出して合成することで、実空間3次元での対象物の特徴点からカメラまでの距離を算出できる。対象物の特徴点Aは、路面上にあるため、相対位置算出部105は、距離Zを式1で算出することができるが、対象物の特徴点Bの場合、距離ZではなくBC間の距離を算出してしまう。C点は、カメラから路面に対しての垂直な線と路面との交点を示す。よって、相対位置算出部105は、対象物の高さABが未知であれば、対象物の特徴点Bから対象物までの距離Zを算出することができない。したがって、本実施例以下に説明する各実施例も含むでは、特徴点を抽出するための対象物を、路面からの高さ0近辺の物体と定義する。また、本実施例では、路面からの高さ0近辺の物体だけではなくて、物体と路面との設置面における特徴点を抽出してもよい。相対位置算出部105は、算出した特徴点の角度θ、角度λ、距離Zなどを実空間における相対位置として相対位置保持部106に出力する。図1に戻り、相対位置保持部106は、対象物の実空間における相対位置を画像の撮像時刻に関連付けて保持する。相対位置を示す情報は、表示部に表示されたり、後述する実施例で説明する移動量算出のために用いられたりする。<動作>次に、実施例1における距離算出装置の動作について説明する。図7は、実施例1における距離算出処理の一例を示すフローチャートである。図7に示すステップS101で、抽出部102は、カメラ部101により撮像された画像を取得する。ステップS102で、抽出部102は、取得した画像内の路面上の特徴点を抽出する。抽出部102は、例えば、路面内の抽出領域の中から抽出条件に合致する特徴点を1又は複数抽出する。ステップS103で、相対位置算出部105は、抽出部102により抽出された1又は複数の特徴点の位置を示す座標を算出する。ステップS104で、相対位置算出部105は、抽出された1又は複数の特徴点の座標、歪み特性、設置情報に基づいて、特徴点とカメラとの距離、方位角度を算出する。算出された距離、方位は、相対位置保持部106に記憶される。以上、実施例1によれば、カメラにより撮像された画像内の路面上の対象物に着目することで、この対象物からカメラまでの適切な距離を算出することができる。よって、路面上にある物体あるいは路面上と物体との設置面があれば、この物体との距離を適切に算出することができるため、本実施例の適用場面が限られることがなく、汎用性が高い。[実施例2]次に、実施例2における距離算出装置20について説明する。実施例2では、撮像時刻が異なる少なくとも2枚の画像を用いて、車両の移動量を算出する。距離算出装置20は、車両の移動量を算出することから移動量算出装置でもある。<構成>図8は、実施例2における距離算出装置移動量算出装置20の構成の一例を示すブロック図である。図8に示す距離算出装置20は、カメラ部401、抽出部402、歪み特性保持部103、設置情報保持部104、追跡部403、相対位置算出部404、相対位置保持部405、移動量算出部406を備える。図8に示す構成で、図1に示す構成と同様のものは同じ符号を付し、その説明を省略する。カメラ部401は、例えば車両のフロントに設置されたカメラであり、所定間隔で路面を撮像し、撮像した画像を抽出部402及び追跡部403に出力する。例えば時刻t0で撮像した画像を第1画像とし、時刻t1で撮像した画像を第2画像とする。抽出部402は、実施例1と同様にして、カメラ部401から取得した画像から路面上にある特徴点を抽出する。抽出部402は、抽出した特徴点を追跡部403及び相対位置算出部404に出力する。追跡部403は、時刻t0の第1画像で抽出された特徴点と、時刻t1の第2画像で抽出された特徴点とが対応するかを判定する。この判定処理は、対象物や特徴点の追跡を行うことで処理できる。追跡部403は、例えば、第1画像の特徴点から対象物を認識し、その物体が時刻t1の第2画像でどの位置に移動したかの追跡をし、特徴点の座標を求める。なお、追跡部403は、第1画像の特徴点に対応する第2画像の特徴点を相対位置算出部404に通知し、第2画像の特徴点の座標を求めるのは相対位置算出部404が行ってもよい。追跡処理は、例えば、第1画像で認識した対象物をテンプレートとし、第2画像のどこに位置するかをテンプレートマッチングにより処理する。また、追跡処理は、KLTKanadeLucasTomasi法、モラベックオペレータ、ハリスオペレータや、その他公知の特徴点マッチング処理などの処理を行って特徴点を追跡してもよい。追跡部403は、第2画像の特徴点のうち、第1画像の特徴点に対応する特徴点の座標を相対位置算出部404に出力する。追跡部403は、特徴点を追跡する際の追跡領域は、特徴点を抽出する際の抽出領域よりも大きくしてもよい。これにより、次の時刻で前の画像の抽出領域外に特徴点が移動したとしても、この特徴点を追跡するができる。なお、この追跡領域は、第2画像から特徴点を抽出するための抽出領域を示す。相対位置算出部404は、実施例1と同様にして、第1画像の特徴点の位置と、歪み特性と、設置情報とに基づき、特徴点からカメラまでの実空間での距離及び方位角度を算出する。また、相対位置算出部404は、前述したように、第2画像の特徴点の位置と、歪み特性と、設置情報とに基づき、特徴点からカメラまでの実空間での距離及び方位角度を算出する。相対位置算出部404は、相対位置保持部405及び移動量算出部406に算出した距離、方位を出力する。図9は、直進時の車両の軌跡を説明するための図である。図9に示す車両501は、直進しているとする。カメラは、車両501の正面中心に設置されているとする。画像510は、時刻t0の撮像画像を示す。画像511は、時刻t1の撮像画像を示す。抽出部402は、対象物502の路面上にある特徴点c11を抽出する。相対位置算出部404は、画像510から、特徴点c11から画像中心までの距離δ0を算出し、この距離δ0と歪み特性と設置情報とに基づいて角度θ0を算出する。また、相対位置算出部404は、角度θ0方位と設置情報とに基づき、三角関数を用いて特徴点c11からカメラまでの距離を算出する。相対位置算出部404は、画像511から、追跡部403により時刻t0の特徴点c11に対応する時刻t1の特徴点c11について、時刻t0の特徴点c11と同様の処理を行い、距離、方位を算出する。図8に戻り、相対位置保持部405は、相対位置算出部404から出力される距離、方位を時刻に関連付けて保持する。例えば、相対位置保持部405は、時刻t0の距離、方位を記憶し、次に、時刻t1の距離、方位を記憶する。移動量算出部406は、異なる画像における特徴点の時間変化量に基づき、車両の移動量を算出する。移動量算出部406は、車両が直進している場合は、時刻t0と時刻t1での特徴点の距離の差を、時刻の差で除算すれば、車両の移動速度を算出することができる。図10は、直進時の移動量算出処理を説明するための図である。図10に示す例では、時刻t0での車両601から対象物602までの距離をZ0、角度をθ0とし、時刻t1での車両601から対象物602までの距離をZ1、角度をθ1とする。時刻t0、t1におけるカメラの法線方向の対象物602までの距離X0、X1は次に式で求められる。X0=Z0cosθ0式2X1=Z1cosθ1式3移動量算出部406は、時刻t0からt1までの移動距離|ΔX|を算出する。|ΔX|=|Z1cosθ1-Z0cosθ0|式4移動量算出部406は、この移動距離を時刻差t1-t0で除算すれば、車両の移動速度vを算出することができる。また、移動量算出部406は、時刻差を微小例えば100msとして連続して移動速度を算出し、速度の変動を求めることで加速度を算出することも可能である。なお、移動量算出部406は、複数の特徴点における移動速度を算出した場合は、平均的な移動速度に対して、明らかな外れ値である移動速度を除去した後の移動速度の平均を求めればよい。移動量算出部406は、算出した移動量を車両の表示部に表示すれば、運転者に車両の速度を知らせることができる。また、本実施例の場合、例えば、10km/h以下などの低速度の場合でも、適切な速度を算出することができる。<動作>次に、実施例2における距離算出装置20の動作について説明する。図11は、実施例2における移動量算出処理の一例を示すフローチャートである。図11に示すステップS201で、抽出部402は、カメラ部401により時刻t0に撮像された第1画像を取得する。ステップS202で、抽出部402は、取得した第1画像内の路面上の特徴点を抽出する。抽出部402は、例えば、画像内の抽出領域の中から抽出条件に合致する特徴点を1又は複数抽出する。ステップS203で、相対位置算出部404は、抽出部402により抽出された1又は複数の特徴点の位置を示す座標を算出する。ステップS204で、相対位置算出部404は、抽出された1又は複数の特徴点の座標、歪み特性、設置情報に基づいて、特徴点とカメラとの距離1、方位角度1を算出する。算出された距離1、方位1は、時刻t0と関連付けられて相対位置保持部405に記憶される。ステップS205で、抽出部402は、カメラ部401により時刻t1に撮像された第2画像を取得する。ステップS206で、追跡部403は、第1画像の特徴点と、第2画像の特徴点とが対応するかを判定する。例えば、追跡部403は、第1画像の特徴点の追跡処理を、第2画像に対して行う。追跡処理は、前述したように、テンプレートマッチング処理や特徴点マッチング処理などの何れかの処理を行えばよい。ステップS207で、相対位置算出部404は、追跡部403により追跡された1又は複数の特徴点の位置を示す座標を算出する。ステップS208で、相対位置算出部404は、追跡された1又は複数の特徴点の座標、歪み特性、設置情報に基づいて、特徴点とカメラとの距離2、方位角度2を算出する。算出された距離2、方位2は、時刻t1と関連付けられて相対位置保持部405に記憶される。ステップS209で、移動量算出部406は、距離1、方位1及び距離2、方位2から車両の直進時の移動量を算出する。算出の仕方は図10を用いて前述した通りである。以上、実施例2によれば、適切に算出された対象物までの距離、方位の時間変化量に基づいて、車両の直進時の移動量を算出することができる。実施例2によれば、移動量算出の適用場面を限定されることなく、また、低速時の移動量であっても適切に算出することができる。[実施例3]次に、実施例3における距離算出装置30について説明する。実施例3では、車両が直進しているか、旋回しているかを判断し、それぞれに応じた移動量の算出を行う。距離算出装置30は、移動量を算出する機能を有することから移動量算出装置でもある。<構成>図12は、実施例3における距離算出装置移動量算出装置30の構成の一例を示すブロック図である。図12に示す例では、距離算出装置30は、カメラ部401、抽出部402、追跡部403、歪み特性保持部103、設置情報保持部104、相対位置算出部404、相対位置保持部405、特徴点抽出部701、特徴点追跡部702、フロー判定部703、移動量算出部704を備える。図12に示す構成で、図1、図8と同様のものは同じ符号を付し、その説明を省略する。図12に示す特徴点抽出部701は、カメラ部401により撮像された画像を取得する。このとき、取得する画像は、抽出部402、追跡部403に出力される画像と同じ画像でもよいし、この画像と撮影時刻が近い画像でもよい。特徴点抽出部701は、例えば、画像内から周辺との差があり、区別しやすい点を特徴点として複数個抽出する。この場合、抽出される特徴点は、路面上の特徴点に限られない。特徴点抽出部701は、カメラ部401から画像を取得する度に特徴点を抽出し、抽出した特徴点を特徴点追跡部702に出力する。特徴点追跡部702は、異なる時刻の画像内で同一の特徴点がどこに位置しているのかを追跡する。特徴点の抽出、追跡処理については、前述しようにKLTやモラベックオペレータなどの何れかの処理を用いればよい。特徴点追跡部702は、追跡した特徴点の移動量動きベクトルをフロー判定部703に出力する。フロー判定部703は、取得した動きベクトルの横向きの成分横向きベクトルの大きさに基づいて、車両が直進しているか旋回しているかを判定する。図13は、直進時の背景のフローについて説明するための図である。図13に示すように、直進時に車両のフロントに設置されたカメラで撮影すると、画像の中心から左右に流れるように物体が撮影される。図14は、右旋回時の背景のフローについて説明するための図である。図14に示すように、右旋回時に車両のフロントに設置されたカメラで撮影すると、左に流れるように物体が撮影される。図13や図14で説明したフローの関係を用いて、車両が直進しているか旋回しているかを判定する。フロー判定部703は、例えば、横向きベクトルの頻度分布を作成し、直進又は旋回の判定を行う。図15は、横向きベクトルの頻度分布の例を示す図である。図15Aは、直進時の頻度分布の例を示す。図15Aに示すように、頻度分布が双峰性を有していれば、フロー判定部703は、車両が直進していると判定できる。図15Bは、右旋回時の頻度分布の例を示す。図15Bに示すように、頻度分布が単峰性を有していれば、フロー判定部703は、車両が旋回していると判定できる。フロー判定部703は、左向きの領域に単峰性があれば右旋回していると判定し、右向きの領域に単峰性があれば左旋回していると判定する。図12に戻り、移動量算出部704は、フロー判定部703の判定結果に基づいて、直進時の移動量を算出するか、旋回時の移動量を算出するかを決定する。移動量算出部704は、決定された移動量の算出方法で、移動量を算出する。移動量算出部704は、直進時の移動量を算出する場合は、実施例2で説明した算出方法により移動量を算出できる。旋回時の移動量の算出方法について説明する。図16は、旋回時の車両の軌跡を説明するための図である。図16に示す例では、車両801は左旋回を行う。このとき、カメラは、車両801のフロントに設置されるとする。画像810は、時刻t0に撮像された画像であり、画像811は、時刻t1に撮像された画像である。時刻t0の画像810を用いて、相対位置算出部404は、画像中心から対象物802の特徴点d11までの距離δ0に基づき、上記実施例と同様にして角度θ0を算出する。時刻t1の画像811を用いて、相対位置算出部404は、画像中心から対象物802の特徴点d11までの距離δ1に基づき、上記実施例と同様にして角度θ1を算出する。移動量算出部704は、図16に示す関係から、旋回時の旋回半径M、旋回角ωを算出する。旋回半径M、旋回角ωを算出する場合、少なくとも2つの対象物のそれぞれの特徴点が用いられる。図17は、旋回時の移動量の算出を説明するための図である。図17Aでは、時刻t0での対象物850の特徴点X、対象物851の特徴点Y、カメラの中心Oの位置関係を示す。図17Aに示すように、特徴点Yの垂直方向の線と、特徴点Xの水平方向の線とが交わる点をWとする。相対位置算出部404により、特徴点Xまでの距離Z0、角度θ0、特徴点Yまでの距離Z1、角度θ1が算出される。ここで、移動量算出部704は、三角関数を用いて、辺XW、YWを次の式により求める。XW=Z1sinθ1Z0sinθ0=A1式5YW=Z1cosθ1-Z0cosθ0=B1式6移動量算出部704は、対象物の特徴点X、Y間の距離XYを、次の式により算出する。XY=sqrtA12B12=C1式7移動量算出部704は、角OXYを分解したα0とα1を、それぞれ次の式により算出する。α0=90-θ0式8α1=cos-1A1/C1式9また、移動量算出部704は、角XYOのα2を次の式により算出する。α2=tan-1A1/B1-θ1式10これにより、移動量算出部704は、カメラの中心O、対象物850の特徴点X、対象物851の特徴点Y間の位置関係を算出できる。時刻t0からt1の間に車両が旋回し、時刻t1でカメラの中心位置がOに移動したとする。図17Bでは、時刻t1での対象物850の特徴点X、対象物851の特徴点Y、カメラの中心Oの位置関係を示す。相対位置算出部404は、特徴点Xまでの距離Z00、角度θ00、特徴点Yまでの距離Z11、角度θ11を算出する。移動量算出部704は、図17Aと同様にして、角度α00、α22を、θ00、θ11、Z00、Z11を用いて算出する。図17Cは、OとOの位置関係を示す図である。移動量算出部704は、図17Cに示すOとOの垂直距離χと、角度ωとを求める。まず、角度ωは、三角形OQ0Yに着目する。移動量算出部704は、三角形OQ0Yのそれぞれの角度を次の式により算出する。角度OYQ0=α2-α22式11角度OQ0Y=90θ1式12角度YOQ0=ω90-θ11式13三角形の全ての角の和は180°であることを利用し、移動量算出部704は、角度ωを次の式により算出する。180=α2-α2290θ1ω90-θ11式14ω=θ11-θ1α22-α2式15移動量算出部704は、次に垂直距離χを算出する。垂直距離χは、辺Q1Q2と等しい。ここで、三角形OXQ1に着目する。移動量算出部704は、角度XOQ1を次の式により算出する。角度XOQ1=90-θ00-ω式16移動量算出部704は、辺XQ1を次の式により算出する。XQ1=Z00sin90-θ00-ω式17移動量算出部704は、三角形OXQ2に着目し、辺XQ2の長さを次の式により算出する。XQ2=Z00sin90-θ0式18移動量算出部704は、垂直距離χを次の式により算出する。χ=XQ2-XQ1=Z0sin90-θ0-Z00sin90-θ00-ω式19これにより、移動算出部704は、車両の移動OからOにおける旋回角度ω、垂直距離χを取得することができる。図17Dは、回転半径Mと垂直距離χと旋回角度ωとの関係を示す。移動量算出部704は、旋回角度ω、垂直距離χが算出されたので、次の式により回転半径Mを算出する。M=χ/sinω式20これにより、移動量算出部704は、旋回角度ω、回転半径Mを算出した。移動量算出部704は、旋回角度ωを2点間の時刻差t1-t0で除算ことによって、さらに角速度を算出することができる。また、移動量算出部704は、時刻差を微小例えば100msとして連続して角速度を算出し、角速度の変動を求めることで角加速度を算出することも可能である。移動量算出部704は、前述したように、フロー判定の結果に応じて、直進時の移動量を算出するか、旋回時の移動量を算出するかを切り替える。<動作>次に、実施例3における距離算出装置30の動作について説明する。図18は、実施例3における移動量算出処理の一例を示すフローチャートである。図18に示すステップS301~308は、図11に示すステップS201~208と同様の処理であるため、その説明を省略する。ステップS309で、フロー判定部703は、例えば、横向きベクトルの頻度分布に基づいて、直進しているか否かを判定する。この判定結果は、移動量算出部704に出力される。移動量算出部704は、判定結果が直進を示す場合ステップS309-YES、ステップS310の処理を行い、判定結果が旋回を示す場合ステップS309-NO、ステップS311の処理を行う。ステップS310で、移動量算出部704は、直進時の移動量を算出する。直進時の移動量の算出処理は、実施例2で説明した処理と同様である。ステップS311で、移動量算出部704は、旋回時の移動量を算出する。旋回時の移動量の算出処理は、実施例3で説明した処理と同様である。以上、実施例3によれば、車両が直進しているか、旋回しているかを判断し、それぞれに応じた移動量の算出を行うことができる。また、フロー判定部703は、抽出部402、追跡部403により抽出、追跡された特徴点の動きベクトルを用いてもよい。これにおり、処理負荷を軽減させることができる。[実施例4]次に、実施例4における距離算出装置40について説明する。実施例4では、直進時の移動とみなして算出した移動量の変位に基づいて直進しているか、旋回しているかを判定する。距離算出装置40は、移動量を算出する機能を有することから移動量算出装置でもある。<構成>図19は、実施例4における距離算出装置移動量算出装置40の構成の一例を示すブロック図である。図19に示す例では、距離算出装置40は、カメラ部401、抽出部402、追跡部403、歪み特性保持部103、設置情報保持部104、相対位置算出部404、相対位置保持部405を備える。また、距離算出装置40は、直進移動量算出部901、直進移動量保持部902、旋回判定部903、移動量算出部904を備える。図19に示す構成で、図1、図8と同様のものは同じ符号を付し、その説明を省略する。直進移動量算出部901は、実施例2における移動量算出部406と同様の処理を行う。直進移動量算出部901は、車両が直進しているとみなして、直進時の移動量を算出する。直進移動量算出部901は、算出した移動量を移動量算出部904及び直進移動量保持部902に出力する。直進移動量保持部902は、直進移動量算出部901により算出された移動量を保持する。旋回判定部903は、直進移動量保持部902に記憶された直近の複数の移動量を比較し、移動量の変位特徴点の移動方向に基づいて直進しているか旋回しているかを判定する。旋回判定部903は、例えば、時刻t0からt1までの特徴点Pの動きベクトルv1の同一線上に、時刻t1からt2までの特徴点Pの動きベクトルv2があれば直進していると判定する。なお、旋回判定部903は、動きベクトルv1とv2とが、必ずしも同一線上である必要はなく、所定距離内で略平行を示していれば、直進と判定してもよい。旋回判定部903は、動きベクトルv1の同一線上に動きベクトルv2がなければ旋回していると判定する。これにより、特徴点のフローを算出することなく、簡単な演算量で車両が直進しているか、旋回しているかを判定することができる。旋回判定部903は、判定結果を移動量算出部904に出力する。移動量算出部904は、判定結果が直進を示す場合、直進移動量算出部901から取得した移動量を出力し、判定結果が旋回を示す場合、実施例3で説明したように、旋回時の移動量を算出する。算出した移動量は、例えば、車両の表示部に表示される。<動作>次に、実施例4における距離算出装置40の動作について説明する。図20は、実施例4における移動量算出処理の一例を示すフローチャートである。図20に示すステップS401~409は、図11に示すステップS201~209と同様の処理であるため、その説明を省略する。ステップS410で、旋回判定部903は、直進時の移動量の変位に基づき、旋回しているか否かを判定する。旋回判定部903は、判定結果を移動量算出部904に出力する。移動量算出部904は、判定結果が旋回を示す場合ステップS410-YES、ステップS411の処理を行い、判定結果が直進を示す場合ステップS410-NO、算出処理を終了する。ステップS411で、移動量算出部904は、旋回時の移動量を算出する。算出処理は、実施例3で説明した処理と同様である。以上、実施例4によれば、特徴点のフローを算出することなく、簡単な演算量で車両が直進しているか、旋回しているかを判定することができる。[実施例5]次に、実施例5における距離算出装置50について説明する。近年、車両には、前方にブラインドコーナモニタのカメラ、後方にバックガイドモニタのカメラなど、複数のカメラを設置する場合がある。そこで、実施例5では、車両の前後にカメラを設置し、各カメラで撮像した画像に基づいて、直進しているか、旋回しているかを判定する。距離算出装置50は、移動量を算出する機能を有することから移動量算出装置でもある。<構成>図21は、実施例5における距離算出装置移動量算出装置50の構成の一例を示すブロック図である。図21に示す例では、距離算出装置50は、カメラ部401-1、401-2、抽出部402、追跡部403、歪み特性保持部103、設置情報保持部104、相対位置算出部404、相対位置保持部405を備える。また、距離算出装置50は、直進移動量算出部901、直進移動量保持部902、ベクトル交差判定部1001、移動量算出部1002を備える。図21に示す構成で、図1、図8、図19と同様のものは同じ符号を付す。カメラ部401-1は、例えば、車両のフロントに設置されたカメラであり、カメラ部401-2は、例えば、車両のバックに設置されたカメラである。なお、抽出部402、追跡部403、相対位置算出部404、相対位置保持部405、直進移動量算出部901は、カメラ毎にそれぞれ独立して処理を行う。直進移動量保持部902は、カメラ毎に直進移動量を保持する。ベクトル交差判定部1001は、直進移動量保持部902に記憶されるカメラ部401-1の直進移動量に基づき、フロントカメラの移動量を求める。ベクトル交差判定部1001は、直進移動量保持部902に記憶されるカメラ部401-2の直進移動量に基づき、リアカメラの移動量を求める。ベクトル交差判定部1001は、各カメラの移動量の向きが平行であるか否かを判定する。例えば、ベクトル交差判定部1001は、各カメラの移動量の向きの差が閾値未満である場合、直進していると判定し、各カメラの移動量の向きの差が閾値以上であれば、旋回していると判定する。図22は、各カメラの移動量の例を示す図である。図22Aは、直進時の車両1101のフロントカメラ1102、リアカメラ1103の移動量を示す。図22Bは、旋回時の車両1101のフロントカメラ1102、リアカメラ1103の移動量を示す。フロントカメラ1102で撮像した画像には、対象物1105が含まれる。フロントカメラ1102の移動量1は、対象物1105の特徴点に基づいて算出される。リアカメラ1103で撮像した画像には、対象物1106が含まれる。リアカメラ1103の移動量2は、対象物1106の特徴点に基づいて算出される。ベクトル交差判定部1001は、図22Aに示す例では、フロントカメラ1102の移動量1の向きと、リアカメラ1103の移動量2の向きが同じであると言えるため、直進していると判定する。ベクトル交差判定部1001は、図22Bに示す例では、フロントカメラ1102の移動量1の向きと、リアカメラ1103の移動量2の向きが異なるベクトルが交差するであると言えるため、旋回していると判定する。ベクトル交差判定部1001は、判定結果を移動量算出部1002に出力する。移動量算出部1002は、判定結果が直進を示す場合、直進移動量算出部901から取得した移動量を出力し、判定結果が旋回を示す場合、実施例3で説明したように、旋回時の移動量を算出する。算出した移動量は、例えば、車両の表示部に表示される。<動作>次に、実施例5における距離算出装置50の動作について説明する。実施例5における移動量算出処理は、図20に示す処理と同様である。実施例5では、ステップ401~S409の処理を各カメラの画像毎に行い、ステップS410の旋回判定をベクトル交差判定部1001が行えばよい。以上、実施例5によれば、例えば、車両の前後に設置した複数のカメラを用いて、各カメラで撮像した画像に基づいて、直進しているか、旋回しているかを判定することができる。なお、実施例5では、車両の前後に設置したカメラを用いて、各カメラで撮像した物体のフローの違いで直進しているか、旋回しているかを判定してもよい。車両が直進している時は、前方カメラで撮像した物体は、内側から外側へのフローになる図13参照。一方、後方カメラで撮像した物体は、徐々に遠ざかっていくため、消失点に向かって縮小していくように見える。この場合、フローの向きは外側から内側となり、フロントカメラと正反対のフローの向きが支配的となる。車両が旋回している時は、前方カメラで撮像した物体、後方カメラで撮像した物体は共に同じフローの向きとなる。よって、距離算出装置50は、前後カメラのフローの向きの違いにより、自車が直進か旋回かを推定し、この推定結果に基づいて、直進か旋回か、いずれかの移動量を算出する。実施例5では、複数の映像を使用するため、1カメラのみ用いる場合と比較して、より精度良く車両が直進しているのか、旋回しているのかを推定することができる。[実施例6]図23は、各実施例における情報処理装置60のハードウェア構成の一例を示すブロック図である。図23に示す情報処理装置60は、CPU1201、記憶装置1202、メモリ1203、読み取り装置1204、通信インタフェース1206、カメラ1207、表示装置1208を含む。情報処理装置60は、車両に搭載される。CPU1201は、各装置の制御やデータの演算、加工を行う。CPU1201は、メモリ1203を利用して距離算出プログラムや移動量算出プログラムを実行する。記憶装置1202は、HDDHardDiskDriveなどであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。記憶装置1202は、例えば距離算出プログラムや移動量算出プログラムを格納する。なお、記憶装置1202は、外部記録装置であってもよい。メモリ1203は、例えばROMReadOnlyMemoryやRAMRandomAccessMemoryなどである。メモリ1203は、例えばCPU1201が実行する基本ソフトウェアであるOSやアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。読み取り装置1204は、CPU1201の指示に従って可搬型記録媒体1205にアクセスする。可搬性記録媒体1205は、例えば、半導体デバイスPCカード等、磁気的作用により情報が入出力される媒体、光学的作用により情報が入出力される媒体を含むものとする。通信インタフェース1206は、CPU1201の指示に従って、ネットワークを介してデータを送受信する。カメラ1207は、車両に1又は複数設置され、路面を撮像する。表示装置1208は、車両内の表示部である。なお、各実施例における構成で、抽出部、追跡部、相対位置算出部、移動量算出部、特徴点抽出部、特徴点追跡部、フロー判定部、直進移動量算出部、ベクトル交差判定部は、例えばCPU1201である。カメラ部は、例えばカメラ1207である。歪み特性保持部103、設置情報保持部104は、例えば記憶装置1202である。相対位置保持部、直進移動量保持部は、例えばメモリ1203である。各実施例に係わる距離算出プログラム又は移動量算出プログラムは、例えば、下記の形態で提供される。記憶装置1202に予めインストールされている。可搬型記録媒体1205により提供される。プログラムサーバ1210からダウンロードする。上記構成の情報処理装置60で距離算出プログラム又は移動量算出プログラムを実行することにより、各実施例に係わる装置が実現される。[変形例]前述した実施例では、車両が直進しているとみなして、旋回判定を行う例について説明したが、車両が旋回しているとみなして直進判定を行うようにしてもよい。この場合、車両に搭載される情報処理装置60の情報処理能力によって、どちらとみなすかを決める。情報処理装置60の情報処理能力が高ければ移動量算出の間隔が短い例えば100ms毎ため、車両の移動は直進とみなして移動量を算出すればよい。この場合、前述したように、過去の移動量を比較して、方位が変動している場合は、旋回中とみなすことができる。情報処理装置60の情報処理能力が高くなければ移動量算出の間隔が長い例えば1秒ため、車両の移動は旋回しているとみなして移動量を算出すればよい。この場合、旋回半径Mが閾値以上であれば、車両の移動は直進とみなしてよい。閾値は、例えば2000mである。なお、前述した直進か、旋回かの判定結果は、接近物検知処理に用いられてもよい。接近物検知処理では、直進時には適切に検知することができるが、旋回時には適切に検知することができない。よって、運転手に対し、接近物検知処理が適切に作動しているか否かを知らせる必要がある。そこで、各実施例や変形例で旋回と判定された場合に、接近物検知処理をOFFにする又は適切に作動しないことを運転手に明示することができる。また、前述した移動量算出の結果は、ナビゲーション画面の切替に用いられてもよい。例えば、所定速度未満の場合は、フロントカメラの映像を表示部に映し、所定速度以上になった場合は、ナビゲーション画面を表示部に映すようにしてもよい。所定速度は、例えば5km/hである。以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、上記変形例以外にも種々の変形及び変更が可能である。なお、以上の実施例に関し、さらに以下の付記を開示する。付記1カメラから画像を取得し、前記画像から、路面上にある特徴点を規定する抽出条件を満たす特徴点を抽出し、抽出された前記特徴点から前記カメラまでの実空間での距離を、前記画像内での前記特徴点の位置に基づいて求められる前記特徴点の前記カメラに対する実空間上での角度と、前記カメラの俯角及び路面からの距離を含む設置情報とを用いて算出する、処理をコンピュータに実行させるための距離算出プログラム。付記2前記特徴点を抽出する場合、画像の消失点及び水平線に基づき設定された領域内で特徴点を抽出する付記1記載の距離算出プログラム。付記3前記距離を算出する場合、前記特徴点の位置と、前記カメラのレンズの歪み特性とから前記角度を求める付記1又は2記載の距離算出プログラム。付記4前記画像とは異なる他の画像から前記抽出条件を満たす特徴点を抽出し、前記画像の特徴点と、前記他の画像の特徴点とが対応するかを判定し、対応すると判定された前記他の画像の特徴点から前記カメラまでの実空間上での距離を、前記他の画像の特徴点の前記カメラに対する実空間上での角度及び前記設置情報を用いて算出し、前記画像の特徴点の前記距離及び角度と、前記他の画像の特徴点の前記距離及び角度との差分から前記カメラを搭載する車両の移動量を算出する、処理をコンピュータにさらに実行させるための付記1乃至3いずれか一項に記載の距離算出プログラム。付記5前記画像の特徴点を抽出する領域よりも、前記他の画像の特徴点を抽出する領域を大きくする付記4記載の距離算出プログラム。付記6前記画像の特徴点と、該特徴点に対応する前記他の画像の特徴点に基づき、前記車両が直進しているか、旋回しているかを判定し、前記移動量を算出する場合、直進と判定されたときは直進時の移動量算出処理を実行させ、旋回と判定されたときは旋回時の移動量算出処理を実行させるための付記4又は5記載の距離算出プログラム。付記7前記直進又は旋回しているかの判定は、前記画像の特徴点と、該特徴点に対応する前記他の画像の特徴点との横向きの移動ベクトルに基づいて判定される付記6記載の距離算出プログラム。付記8前記直進又は旋回しているかの判定は、前記画像の特徴点と、該特徴点に対応する前記他の画像の特徴点との移動ベクトルの変化量に基づいて判定される付記6記載の距離算出プログラム。付記9第1カメラと第2カメラが前記車両に搭載される場合、前記直進又は旋回しているかの判定は、前記第1カメラで撮像した複数の画像に基づいて求めた前記第1カメラの移動量と、前記第2カメラで撮像した複数の画像に基づいて求めた前記第2カメラの移動量とに基づいて判定される付記6記載の距離算出プログラム。付記10カメラから画像を取得し、前記画像から、路面上にある特徴点を規定する抽出条件を満たす特徴点を抽出し、抽出された前記特徴点から前記カメラまでの実空間上での距離を、前記画像内での前記特徴点の位置に基づいて求められる前記特徴点の前記カメラに対する実空間上での角度と、前記カメラの俯角及び路面からの距離を含む設置情報とを用いて算出する距離算出方法。付記11カメラにより撮像された画像から、路面上にある特徴点を規定する抽出条件を満たす特徴点を抽出する抽出部と、抽出された前記特徴点から前記カメラまでの実空間上での距離を、前記画像内での前記特徴点の位置に基づいて求められる前記特徴点の前記カメラに対する実空間上での角度と、前記カメラの俯角及び路面からの距離を含む設置情報とを用いて算出する相対位置算出部と、を備える距離算出装置。"