(57)【要約】【課題】車両の進行方向と平行な直線を正確に検出し、検出にかかる処理時間を低減した平行線検出方法、平行線検出装置を提供する。【解決手段】  撮影された車外の映像を用いて、車両の進行方向と平行な直線を検出する平行線検出装置であって、映像におけるオプティカルフロー発生点を検出する発生点検出手段と、映像におけるエッジ点を検出するエッジ点検出手段と、エッジ点とオプティカルフロー発生点とを結ぶ直線である第１の直線と、予め定められた直線である第２の直線とがなす角度を計算する角度計算手段と、角度の分布に基づき、第１の直線の中から平行線を検出する平行線検出手段とを有する。【選択図】  図４
2006350641.tif 000002
【特許請求の範囲】
【請求項１】
撮影された車外の映像を用いて、車両の進行方向と平行な直線を検出する平行線検出装置であって、
前記映像におけるオプティカルフロー発生点を検出する発生点検出手段と、
前記映像におけるエッジ点を検出するエッジ点検出手段と、
前記エッジ点と前記オプティカルフロー発生点とを結ぶ直線である第１の直線と、予め定められた直線である第２の直線とがなす角度を計算する角度計算手段と、
前記角度の分布に基づき、前記第１の直線の中から平行線を検出する平行線検出手段と
を有することを特徴とする平行線検出装置。
【請求項２】
前記平行線検出手段は、前記角度の分布数において極大となっている極大角度を検出し、
前記極大角度のうち、その分布数が所定の閾値を超えている極大角度を取得し、
前記取得された角度をなす第１の直線を平行線として検出することを特徴とする請求項１に記載の平行線検出装置。
【請求項３】
前記平行線検出手段は、前記角度の分布数において極大となっている極大角度を検出し、
前記極大角度のうち、その分布数が大きい順に、予め定められた個数の極大角度を取得し、
前記取得された角度をなす第１の直線を平行線として検出することを特徴とする請求項１に記載の平行線検出装置。
【請求項４】
撮影された車外の映像を用いて、車両の進行方向と平行な直線を検出する平行線検出方法であって、
前記映像におけるオプティカルフロー発生点を検出する発生点検出段階と、
前記映像におけるエッジ点を検出するエッジ点検出段階と、
前記エッジ点と前記オプティカルフロー発生点とを結ぶ直線である第１の直線と、予め定められた直線である第２の直線とがなす角度を計算する角度計算段階と、
前記角度の分布に基づき、前記第１の直線の中から平行線を検出する平行線検出段階と
を有することを特徴とする平行線検出方法。
【請求項５】
前記平行線検出段階は、前記角度の分布数において極大となっている極大角度を検出し、
前記極大角度のうち、その分布数が所定の閾値を超えている極大角度を取得し、
前記取得された角度をなす第１の直線を平行線として検出することを特徴とする請求項４に記載の平行線検出方法。
【請求項６】
前記平行線検出段階は、前記角度の分布数において極大となっている極大角度を検出し、
前記極大角度のうち、その分布数が大きい順に、予め定められた個数の極大角度を取得し、
前記取得された角度をなす第１の直線を平行線として検出することを特徴とする請求項４に記載の平行線検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラで撮影した映像を用いて、白線や路肩など、車両の進行方向と平行な直線を認識する平行線検出方法、平行線検出装置に関する。
【背景技術】
【０００２】
近年の車両には動画が撮影可能なカメラが搭載されていることが多い。そして、このカメラで撮影した映像から、車外の情報を取得し、運転手に必要な情報を提供したり、車両の制御に役立てる処理が提案されている。
【０００３】
このような処理の一つとして、白線の認識処理が挙げられる。ここでの白線は、例えば中央線や路肩を示す白線であり、この認識処理は、例えば車両の自動運転には非常に重要なものである。
【０００４】
この白線を認識するものとして、特許文献１がある。この特許文献１には、時間Δｔごとに白線データＤ４を取得することで、白線を推定したり、ＧＰＳを用いる実施形態が開示されている。また、白線を認識する他のものとして、ハフ変換を用いたものもある。
【特許文献１】特開２０００−２５９９９８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に開示されている白線推定手段では、推定した白線の正確性が十分とはいえない。また、ハフ変換を用いる白線の認識では、角度と位置の２次元空間での探索が必要であり、処理時間がかかるという問題点がある。
【０００６】
本発明はこのような問題点に鑑み、車両の進行方向と平行な直線を正確に検出し、検出にかかる処理時間を低減した平行線検出方法、平行線検出装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明は、撮影された車外の映像を用いて、車両の進行方向と平行な直線を検出する平行線検出装置であって、前記映像におけるオプティカルフロー発生点を検出する発生点検出手段と、前記映像におけるエッジ点を検出するエッジ点検出手段と、前記エッジ点と前記オプティカルフロー発生点とを結ぶ直線である第１の直線と、予め定められた直線である第２の直線とがなす角度を計算する角度計算手段と、前記角度の分布に基づき、前記第１の直線の中から平行線を検出する平行線検出手段とを有することを特徴とする。
【０００８】
また、上記課題を解決するために、本発明は、前記平行線検出手段は、前記角度の分布数において極大となっている極大角度を検出し、前記極大角度のうち、その分布数が所定の閾値を超えている極大角度を取得し、前記取得された角度をなす第１の直線を平行線として検出することを特徴とする。
【０００９】
また、上記課題を解決するために、本発明は、前記平行線検出手段は、前記角度の分布数において極大となっている極大角度を検出し、前記極大角度のうち、その分布数が大きい順に、予め定められた個数の極大角度を取得し、前記取得された角度をなす第１の直線を平行線として検出することを特徴とする。
【００１０】
また、上記課題を解決するために、本発明は、撮影された車外の映像を用いて、車両の進行方向と平行な直線を検出する平行線検出方法であって、前記映像におけるオプティカルフロー発生点を検出する発生点検出段階と、前記映像におけるエッジ点を検出するエッジ点検出段階と、前記エッジ点と前記オプティカルフロー発生点とを結ぶ直線である第１の直線と、予め定められた直線である第２の直線とがなす角度を計算する角度計算段階と、前記角度の分布に基づき、前記第１の直線の中から平行線を検出する平行線検出段階とを有することを特徴とする。
【００１１】
また、上記課題を解決するために、本発明は、前記平行線検出段階は、前記角度の分布数において極大となっている極大角度を検出し、前記極大角度のうち、その分布数が所定の閾値を超えている極大角度を取得し、前記取得された角度をなす第１の直線を平行線として検出することを特徴とする。
【００１２】
また、上記課題を解決するために、本発明は、前記平行線検出段階は、前記角度の分布数において極大となっている極大角度を検出し、前記極大角度のうち、その分布数が大きい順に、予め定められた個数の極大角度を取得し、前記取得された角度をなす第１の直線を平行線として検出することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、車両の進行方向と平行な直線を正確に検出し、検出にかかる処理時間を低減した平行線検出方法、平行線検出装置を提供できる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態について図面に基づいて説明する。なお、本実施の形態における直線は線分を含むものとする。
【００１５】
まず最初に本実施の形態における平行線検出方法の概要について説明する。図１は、撮影された車外の映像を示す図である。この映像には、オプティカルフロー発生点１０（以下、発生点と記すことがある）と、直線１１、１２、１３、１４が示されている。直線１１は、ガードレールが映し出されたことによる直線である。直線１２、１４は、路肩であることを示す白線が映し出されたことによる直線である。直線１３は、中央線が映し出されたことによる直線である。いずれの直線１１、１２、１３、１４も車両の進行方向と平行な直線である。
【００１６】
このような車両の進行方向と平行な直線を延長したものは、図２に示されるように発生点１０を含むことが知られている。そこで、この映像を、図３に示されるようなｘｙ座標上で表現する。この図３の場合のｘｙ座標は、説明を分かりやすくするために、直線１２と発生点１０にのみ着目したものである。
【００１７】
このｘｙ座標において、ｘ軸とのなす角度を計算する対象となる直線は、映像におけるエッジ点と発生点１０とを結ぶ直線である。この直線は第１の直線に対応している。エッジ点は、白線や立木などが映し出された映像において、白線や立木のふちがなす点が主なものである。
【００１８】
この図３においては、発生点１０の座標を（ａ，ｂ）とし、直線１２上の任意の点１５の座標を（ｃ，ｄ）とする。点２０、２１は、立木が映し出された映像におけるエッジ点とする。直線１２は、映し出された白線のエッジ点の集合とする。
【００１９】
さらに、直線１２とｘ軸（y=0）とがなす角度をθとする。また、点２０または点２１と発生点１０とを結ぶ直線と、ｘ軸とがなす角度を、ぞれぞれφ、ρとする。このy=0は、第２の直線に対応する。
【００２０】
この場合、直線１２上の全ての点と発生点１０とを結ぶ直線（すなわち直線１２）と、ｘ軸とがなす角度がθであるので、図４に示されるように、θの分布数はφやρの分布数と比較して多いといえる。よって、分布数が多い角度をなす直線が平行線といえる。なお、図４は、図２における角度の分布数を示すものである。図２には、４つの直線が描かれているので、４つの極大値が示されている。
【００２１】
以上が本実施の形態における平行線検出方法の概要である。以下、平行線検出方法を実行する平行線検出装置と、平行線検出装置における処理について説明する。なお、以下の説明において、エッジ点とオプティカルフロー発生点とを結ぶ直線を、単に直線Ｌと表現することがある。
【００２２】
図５は、車外を撮影するカメラ３１と、平行線検出装置３０との車両における位置を示す図である。カメラ３１は、車両の前方を撮影可能なように取り付けられ、撮影した映像を平行線検出装置３０に送信する。平行線検出装置３０は、例えばＥＣＵに組み込まれ、カメラ３１が送信した映像から平行線を検出する。なお、車両後方における平行線を検出したい場合には、車両後方が撮影可能な位置にカメラを設置する。
【００２３】
次に、図６を用いて平行線検出装置３０のブロック図について説明する。平行線検出装置３０は、発生点検出部５１と、エッジ点検出部５２と、角度計算部５３と、平行線検出部３４とで構成される。この平行線検出装置３０は、ソフトウェアである上記各部を動作させるためのＣＰＵと、プログラムが格納されたＲＯＭと、プログラムやデータが展開されるＲＡＭなどを有する。
【００２４】
発生点検出部５１は、カメラから映像が入力され、この映像におけるオプティカルフロー発生点を検出する。エッジ点検出部５２は、カメラから映像が入力され、この映像におけるエッジ点を検出する。角度計算部５３は、発生点検出部５１から取得したオプティカルフロー発生点とエッジ点検出部５２から取得した各エッジ点から、直線Ｌを求める。この各エッジ点に対応する直線Ｌと、予め定められた直線とがなす角度を角度計算部５３は計算する。
【００２５】
なお、予め定められた直線はいかなる直線でもよいが、角度を計算する際には全ての直線Ｌに対して同一の直線を用いる。上述した図３において、予め定められた直線はy=0であった。
【００２６】
ここで、上記角度計算部５３の角度計算方法例を、図３の場合を例にして説明する。角度計算部５３は、（ｂ−ｄ）／（ａ−ｃ）を計算する。この計算により求まる値は、直線１２の傾きである。したがって、（ｂ−ｄ）／（ａ−ｃ）＝ｔａｎθを満たすθを求めることで、角度を計算することができる。逆正接を求める関数は、Ｃ言語などの高級言語であれば標準関数として備わっている。
【００２７】
以上説明した角度計算方法例に示されるように、結果として直線Ｌとy=0とがなす角度が計算される。
【００２８】
次に、平行線検出部３４について説明する。平行線検出部３４は、角度の分布に基づき、直線Ｌの中から平行線を検出する。そして、平行線検出部３４は、平行線に関する平行線情報を出力する。この平行線情報は、平行線を特定できればよいので、例えばｘｙ座標における平行線のｙ切片と、角度計算部が計算した角度との２つの情報で構成するようにしてもよい。この平行線情報は、上述したように、車両の自動運転などに用いることができる。
【００２９】
平行線の検出方法には２種類ある。まず１つめの方法は、平行線検出部３４が角度の分布数において極大となっている極大角度を検出し、これらの極大角度のうち、その分布数が所定の閾値を超えている極大角度を取得し、取得された角度をなす直線Ｌを平行線として検出する方法である。この方法によれば、検出される平行線の本数は不定となるが、すべての平行線を検出できる可能性が高い。
【００３０】
次に２つめの方法は、平行線検出部３４が、角度の分布数において極大となっている極大角度を検出し、極大角度のうち、その分布数が大きい順に、予め定められた個数の極大角度を取得し、取得された角度をなす直線Ｌを平行線として検出する方法である。この方法によれば、検出される平行線の本数の上限は確定するが、すべての平行線を検出できる可能性が低くなる。しかしながら、通常、車両は２本の白線の間を走行するので、予め定められた個数を２個から３個と定めておくと、有効な白線のみを検出できる可能性が高い。
【００３１】
次に、平行線検出装置の処理を、図７のフローチャートを用いて説明する。このフローチャートは、平行線検出装置に映像が入力されてから平行線を検出するまでの処理を示すフローチャートである。
【００３２】
ステップＳ１０１で、発生点検出部は、映像からオプティカルフロー発生点を検出する。次に、ステップＳ１０２で、エッジ点検出部は、映像から各エッジ点を検出する。ステップＳ１０３で、角度計算部５３は、オプティカルフロー発生点と、各エッジ点を結ぶ直線と、ｘ軸とがなす角度を計算する。そして、ステップＳ１０４で、平行線検出部は、角度の分布に基づき、直線Ｌの中から平行線を検出する。
【００３３】
以上説明したように、本実施の形態における平行線検出方法は、ハフ変換を用いた場合と比較して、非常に少ない計算量のため、検出にかかる処理時間を低減させることができ、正確に白線などの車両の進行方向と平行な直線を検出することができる。
【図面の簡単な説明】
【００３４】
【図１】撮影された車外の映像を示す図である。
【図２】オプティカルフロー発生点が延長した直線に含まれることを示す図である。
【図３】ｘｙ座標を示す図である。
【図４】角度の分布数を示す図である。
【図５】カメラと平行線検出装置との車両における位置を示す図である。
【図６】平行線検出装置のブロック図である。
【図７】平行線検出装置の処理を示すフローチャートである。
【符号の説明】
【００３５】
１０  オプティカルフロー発生点
１１、１２、１３、１４  直線
１５、２０、２１  点
３０  平行線検出装置
３１  カメラ
５１  発生点検出部
５２  エッジ点検出部
５３  角度計算部
５４  平行線検出部
【図１】
2006350641.tif 000003
【図２】
2006350641.tif 000004
【図３】
2006350641.tif 000005
【図４】
2006350641.tif 000006
【図５】
2006350641.tif 000007
【図６】
2006350641.tif 000008
【図７】
2006350641.tif 000009