以下、図面に基づいて、本発明の実施形態について説明する。なお、以下においては、車両に搭載され、自車両の前方を撮像した撮像画像から消失点を検出する画像処理システムを例示して、本発明を説明する。
図1は、本実施形態に係る画像処理システムを示す構成図である。本実施形態に係る画像処理システムは、図1に示すように、カメラ10と、画像処理装置20とを備える。
カメラ10は、CCDイメージセンサー、MOSセンサー、又はCID等の複数の光電変換素子が二次元に配置された撮像素子を備えており、撮像素子で撮像画像を所定の周期で撮像し、撮像した撮像画像を画像処理装置20に出力する。また、カメラ10は、図1に示すように、自車両の進行方向前方を撮像するように車両に設置されており、自車両の進行方向前方を撮像する。さらに、本実施形態においては、撮像画像の1/2から2/3程度の画像領域で、道路の路面が撮像されるように、カメラ10の俯角が設定されている。
画像処理装置20は、消失点を検出するためのプログラムが格納されたROM(Read Only Memory)と、このROMに格納されたプログラムを実行する動作回路としてのCPU(Central Processing Unit)と、撮像画像などを一時的に記憶するRAM(Random Access Memory)と、を備えている。なお、動作回路としては、CPU(Central Processing Unit)に代えて又はこれとともに、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などを用いることができる。
本実施形態に係る画像処理装置20は、ROMに格納されたプログラムをCPUにより実行することにより、検出領域設定機能と、ヒストグラム生成機能と、投票領域設定機能と、投票機能と、消失点検出機能と、信頼度判定機能の各機能を実現する。以下に、画像処理装置20が実現する各機能について説明する。
画像処理装置20の検出領域設定機能は、撮像画像から方向成分を検出するための領域を検出領域として設定する。ここで、図2は、検出領域設定機能により設定された検出領域の一例を示す図である。具体的には、検出領域設定機能は、まず、図2に示すように、カメラ10から取得した撮像画像のうち道路が撮像される撮像画像下部の画像領域を処理範囲として設定する。たとえば、本実施形態においては、撮像画像の下端から1/2〜2/3程度の画像領域において、自車両が走行する道路が撮像されるようにカメラ10が設置されているため、検出領域設定機能は、図2に示すように、撮像画像の下端から1/2〜2/3程度の画像領域を処理範囲として設定する。
そして、検出領域設定機能は、図2に示すように、処理範囲内において、複数の検出領域を設定する。たとえば、本実施形態において、検出領域設定機能は、5×5画素の大きさや、9×9画素の大きさで、検出領域を設定することができる。なお、検出領域の大きさは、特に限定されないが、方向成分を算出することが可能な大きさであり、かつ、処理範囲内において複数の検出領域が設定できる大きさとすべきである。また、図2に示す例では、3つの検出領域を例示しているが、検出領域の設置位置および数は特に限定されず、たとえば、処理範囲内の任意の位置に検出領域を設定する構成としてもよいし、また、処理範囲を複数の領域に分割し、分割した領域をそれぞれ検出領域として設定してもよい。あるいは、処理範囲内の方向成分を全て検出するために、検出領域を1画素ずつずらして、複数の検出領域を設定する構成としてもよい。
次に、画像処理装置20のヒストグラム生成機能について説明する。ヒストグラム生成機能は、検出領域設定機能により設定された検出領域内の方向成分を検出し、検出した方向成分に基づいて、方向成分ヒストグラムを生成する。図3は、方向成分ヒストグラムの一例を示す図であり、図3(A)〜(C)に示す方向成分ヒストグラムは、図2に示す検出領域A〜Cでそれぞれ検出された方向成分に基づくものである。
ヒストグラム生成機能は、方向成分ヒストグラムを生成するために、まず、各検出領域の方向成分を検出する。たとえば、ヒストグラム生成機能は、複数の方向に対応する複数のガボールフィルターを用意し、各方向に対応するガボールフィルターをそれぞれ用いて、検出領域内の画像の輝度値の畳み込み演算を行うことで、各検出方向で検出されたエッジ成分を、検出領域内の各方向に対応する方向成分として検出する。たとえば、本実施形態において、ヒストグラム生成機能は、検出領域の中心位置を中心点として検出領域内の方向を0°から360°で表した場合に、検出領域内の方向成分を、たとえば1°単位あるいは5°単位で検出することで、検出領域内において複数の方向の方向成分を検出することができる。また、ヒストグラム生成機能は、後述する方向成分ヒストグラムを生成するために、検出した各方向成分に対してカウント値をそれぞれ出力する。たとえば、ヒストグラム生成機能は、検出した各方向成分に対してカウント値「1」を出力することができる。なお、カウント値は「1」に限定されるものではなく、適宜設定することができる。
そして、ヒストグラム生成機能は、検出領域で検出した複数方向の方向成分に基づいて、方向成分ヒストグラムを生成する。具体的には、ヒストグラム生成機能は、方向成分を検出した検出方向ごとに、方向成分のカウント値をカウントすることで、図3に示すように、方向成分の検出方向を横軸とし、方向成分のカウント値の合計を縦軸とした、方向成分ヒストグラムを生成する。
たとえば、図2に示す例において、検出領域Aには、複数方向の方向成分がほぼ均一に含まれており、そのため、図3(A)に示すように、検出領域Aの方向成分ヒストグラムは比較的平坦なものとなる。一方、図2に示す例において、検出領域Bには、撮像画像の左上方向に伸びる道路端が含まれるため、左上方向の方向成分が多く検出されることとなり、その結果、検出領域Bの方向成分ヒストグラムでは、図3(B)に示すように、道路端が伸びる左上方向に方向成分のピークを有することとなる。さらに、図2に示す例において、検出領域Cには、撮像画像の左上方向に伸びる道路端と、撮像画像の上方向に伸びる道路標識のポールが含まれるため、左上方向の方向成分と上方向の方向成分とが多く検出されることとなり、その結果、検出領域Cの方向成分ヒストグラムでは、図3(C)に示すように、道路端が伸びる左上方向と道路標識のポールが伸びる上方向に方向成分のピークを有することとなる。
次に、画像処理装置20の投票領域設定機能について説明する。投票領域設定機能は、ヒストグラム生成機能により生成された方向成分ヒストグラムに基づいて、投票領域を設定する。ここで、図4は、投票領域の設定方法を説明するための図である。なお、図4に例においては、図2に示す検出領域Bで生成された方向成分ヒストグラムに基づいて、投票領域Bを設定する方法について例示する。
具体的には、投票領域設定機能は、図4に示すように、検出領域の中心Oを始点とした放射状の領域を、投票領域として設定する。また、投票領域設定機能は、方向成分ヒストグラムがピークとなる方向に沿って投票領域を設定する。たとえば、図4に示す検出領域Bは、撮像画像の左上方向に伸びる道路端を含むため、左上方向の方向成分が多く検出されることとなり、その結果、検出領域Bの方向成分ヒストグラムでは、図3(B)に示すように、道路端が伸びる左上方向に方向成分のピークを有することとなる、そのため、投票領域設定機能は、図4に示すように、検出領域Bの方向成分ヒストグラムがピークとなる方向、すなわち、撮像画像の左上方向に沿って、放射状の投票領域Bを設定する。
さらに、投票領域設定機能は、投票領域を設定する際に、方向成分ヒストグラムのピーク近傍の分散に基づいて、投票領域の大きさを決定する。具体的には、投票領域設定機能は、方向成分ヒストグラムのピーク近傍の分散が小さいほど(方向成分ヒストグラムのピークの先鋭度が大きいほど)、投票領域の始点Oを頂点とする角度θを小さくし、方向成分ヒストグラムのピーク近傍の分散が大きいほど(方向成分ヒストグラムのピークの先鋭度が小さいほど)、投票領域の始点Oを頂点とする角度θを大きくすることで、投票領域の大きさを決定する。たとえば、投票領域設定機能は、方向成分ヒストグラムの標準偏差σまたは2σに応じて、投票領域の角度θを決定することで、投票領域の大きさを決定することができる。
なお、方向成分ヒストグラムが2以上のピークを有する場合には、投票領域設定機能は、方向成分ヒストグラムのピークごとに、投票領域を設定する。すなわち、図3(C)に示すように、方向成分ヒストグラムのピークが2つある場合には、投票領域設定機能は、2つの投票領域を設定することができる。
そして、投票領域設定機能は、処理範囲内に設定された複数の検出領域について複数の投票領域を設定する。たとえば、処理範囲に5つの検出領域が設定されている場合には、投票領域設定機能は、これら5つの検出領域の中心位置をそれぞれ始点とする5以上の投票領域を設定する。
次に、画像処理装置20の投票機能について説明する。投票機能は、投票領域設定機能により設定された投票領域内の各座標位置(XY座標で特定可能な各単位領域)に投票値を投票する。なお、投票機能による投票方法は、特に限定されず、たとえば、投票機能は、投票領域内の全ての座標位置に投票値「1」を均等に投票する構成としてもよいし、あるいは、方向成分ヒストグラムのピーク近傍の分散に基づいて、投票領域内の座標位置ごとに投票値の重み付けを行う構成としてもよい。以下に、投票領域内の座標位置ごとに投票値の重み付けを行う方法について詳細に説明する。
投票領域内の座標位置ごとに投票値の重み付けを行う場合には、投票機能は、まず、方向成分ヒストグラムの標準偏差σを、方向成分ヒストグラムのピーク近傍の分散を示す値として算出する。そして、投票機能は、標準偏差σが所定の第1判定値以上であり、方向成分ヒストグラムのピークが鋭いと判断できる場合には、図5(A)に示すように、投票領域Bを放射状の3つの領域B1〜B3に分割し、投票領域B内の各座標位置の投票値の重みを、領域B1〜B3の順に、‘0.1’,‘0.8’,‘0.1’に設定する。そして、投票機能は、重み付けを行った領域B1〜B3のそれぞれに、領域B1〜B3の重みに1を乗じた値を投票値として投票する。たとえば、図5(A)に示す例では、領域B1の各座標位置には投票値「0.1」が投票され、領域B2の各座標位置には投票値「0.8」が投票され、領域B3の各座標位置には投票値「0.1」が投票されることとなる。
また、投票機能は、方向成分ヒストグラムのピーク近傍の分散(すなわち標準偏差σ)が第1判定値未満であり、かつ、第1判定値よりも小さい第2判定値以上である場合には、図5(B)に示すように、投票領域Bを放射状の5つの領域B1〜B5に分割し、投票領域B内の各座標位置の投票値の重みを、領域B1〜B5の順に‘0.05’,‘0.2’,‘0.5’,‘0.2’,‘0.05’に設定する。そして、投票機能は、重み付けを行った投票領域B1〜B5のそれぞれに、投票領域B1〜B5の重みに1を乗じた値を投票値として投票する。たとえば、図5(B)に示す例では、投票領域B1の各座標位置には投票値「0.05」が投票され、投票領域B2の各座標位置には投票値「0.2」が投票され、投票領域B3の各座標位置には投票値「0.5」が投票され、投票領域B4の各座標位置には投票値「0.2」が投票され、投票領域B5の各座標位置には投票値「0.05」が投票されることとなる。
さらに、投票機能は、図示していないが、方向成分ヒストグラムのピーク近傍の分散(すなわち標準偏差σ)が第2判定値未満であり、方向成分ヒストグラムのピークがなだらかであると判断できる場合には、投票領域Bを放射状の7つの領域B1〜B7に分割し、投票領域B内の各座標位置の投票値の重みを、領域B1〜B7の順に‘0.05’,‘0.1’,‘0.2’,‘0.3’,‘0.2’,‘0.1’,‘0.05’に設定する。そして、投票機能は、重み付けを行った各領域B1〜B7の各座標位置に、領域B1〜B7の重みに1を乗じた値を投票値として投票する。
なお、投票領域の投票値に重み付けを行う方法は、上述した方法に限定されるものではなく、たとえば、方向成分ヒストグラムのピーク近傍の分散にかかわらず、たとえば、図5(A)に示すように、投票領域を放射状の3つの領域に分割して、投票領域内の投票値の重み付けを行う構成としてもよい。
また、本実施形態において、投票機能は、方向成分ヒストグラムがピークとなる方向が、撮像画像の垂直方向(Y軸方向)、または、水平方向(X軸方向)である場合には、垂直方向(Y軸方向)に沿って設定された投票領域の投票値と、水平方向(X軸方向)に沿って設定された投票領域の投票値の重み付けをゼロとすることで、垂直方向(Y軸方向)に沿って設定された投票領域の座標位置、および、水平方向(X軸方向)に沿って設定された投票領域の座標位置に、投票値を投票しない構成とすることができる。垂直方向(Y軸方向)の方向成分、および、水平方向(X軸方向)の方向成分は、図6の検出領域D,Eに示すように、自車両前方に存在する他車両のバンパー、建物、道路標識のポールなどから検出された方向成分である可能性が高く、このような方向成分を消失点の検出対象から除外するためである。なお、図6は、自車両前方に他車両が存在する場合の撮像画像の一例を示す図である。
また、車のバンパー、建物、道路標識のポールなどはコントラストが大きいため、車のバンパー、建物、道路標識のポールを含む検出領域の方向成分の強度は大きくなる傾向にあり、その結果、検出領域の方向成分ヒストグラムのピーク近傍の分散は大きくなる傾向にある。そのため、投票機能は、垂直方向(Y軸方向)または水平方向(X軸方向)の方向成分のピーク近傍の分散(すなわち標準偏差σ)を算出し、標準偏差σが所定値以上である場合にのみ、垂直方向(Y軸方向)または水平方向(X軸方向)に沿って設定された投票領域の投票値の重みをゼロとする構成としてもよい。
さらに、投票機能は、図3(C)に示すように、方向成分ヒストグラムのピークが複数存在し、1つの方向成分ヒストグラムに対して複数の投票領域が設定されている場合には、各投票領域の座標位置に対して投票値を投票する。また、投票機能は、1つの方向成分ヒストグラムにおいて3以上の方向成分のピークが存在する場合には、ピークの大きさが上から2番目までのピークに対応する投票領域の座標位置のみに投票値を投票する構成としてもよいし、最も大きいピークと、最も大きいピークに対して、たとえば80%以上の大きさを持つピークに対応する投票領域の座標位置のみに投票値を投票する構成としてもよい。
さらに、投票機能は、方向成分ヒストグラムのピークの大きさが所定の基準値未満であるか否かを判定し、ピークの大きさが基準値未満である場合には、このピークに対応する投票領域の座標位置に対して、投票値を投票しない構成としてもよい。これにより、たとえば図3(A)に示すように、ほぼ平坦な方向成分ヒストグラムを消失点の検出対象から除外することができ、消失点の検出精度の向上を図ることができる。なお、上述した基準値の大きさは、特に限定されないが、たとえば、各方向成分ヒストグラムで最大ピークを検出し、全ての方向成分ヒストグラムの最大ピークの平均値を算出し、この最大ピークの平均値の半分の値を上記基準値の値として設定することができる。また同様に、投票機能は、方向成分ヒストグラムのピーク近傍の分散が所定の基準値以上であるか否かを判定し、方向成分ヒストグラムのピーク近傍の分散が基準値未満である場合に、このピークに対応する投票領域の座標位置に対して、投票値を投票しない構成としてもよい。
次に、画像処理装置20の消失点検出機能について説明する。消失点検出機能は、投票機能による投票値の投票結果に基づいて、撮像画像内の消失点を検出する。具体的には、消失点検出機能は、撮像画像内の各座標位置の投票値を算出し、投票値が最も大きい座標位置を消失点として検出する。
ここで、図7は、消失点の検出方法を説明するための図である。たとえば、図7(A)に示すように、処理範囲内に5つの検出領域が設定されている場合には、図7(B)に示すように、5以上の投票領域が設定される。このように、複数の投票領域が設定される場合には、図7(B)に示すように、一部の座標位置において異なる投票領域が重複する場合がある。消失点検出機能は、各座標位置の投票値を算出する際に、複数の投票領域が重複している座標位置については、それぞれの投票領域で投票された投票値を合計して、該画素位置の投票値を算出する。たとえば、座標位置xにおいて投票領域Yと投票領域Zが重複しており、投票領域Yでの座標位置xの投票値が「0.8」であり、投票領域Zでの座標位置xの投票値が「0.2」である場合には、座標位置xの投票値は「1.0」として算出される。
そして、消失点検出機能は、全ての座標位置の投票値を比較し、投票値が最も大きい座標位置を、消失点として検出する。
また、本実施形態では、所定の撮影フレームで撮影される撮像画像ごとに消失点を検出しており、今回検出した消失点が前回検出した消失点の位置から一定距離以上離れている場合には、消失点を検出できなかったと判断する構成としてもよい。また、カルマンフィルターやパーティクルフィルターなどの時系列フィルターを用いて、一定時間前までに検出された複数の消失点の座標位置の平均値を計算し、今回検出した消失点が過去の消失点の平均値の座標位置から一定距離以上離れている場合に、消失点を検出できなかったと判断する構成としてもよい。これにより、消失点の検出精度を向上することができる。
次に、画像処理装置20の信頼度判定機能について説明する。信頼度判定機能は、消失点検出機能により検出された消失点の信頼度を判定する。消失点の信頼度を判定するために、信頼度判定機能は、まず、消失点の信頼度を判定するための放射状領域を設定する。具体的には、信頼度判定機能は、図8(A)に示すように、消失点検出機能により検出された消失点を基準とし、消失点よりも下部の画像領域を放射状に分割した領域を、放射状領域として設定する。また、信頼度判定機能は、放射状領域を設定する際に、消失点を頂点とする各放射状領域の角度θ’が、たとえば10°あるいは20°となるように、複数の放射状領域を設定することができる。
そして、信頼度判定機能は、たとえば、方向成分ヒストグラムに基づいて設定した投票領域が消失点を含む場合に、このような方向成分ヒストグラムが得られた検出領域を検出対象として特定し、放射状領域内に存在する複数の検出領域のうち、検出対象として特定された検出領域の数を、放射状領域ごとにカウントする。そして、信頼度判定機能は、図8(B)に示すように、カウント値を縦軸とし、各放射状領域を横軸とするヒストグラムを、信頼度ヒストグラムとして生成する。
ここで、図8(A)においては、各検出領域の方向成分ヒストグラムのピークの方向を矢印で示している。たとえば、図8(A)に示す例では、道路端を含む放射状領域3,8、および、タイヤの跡や轍を含む放射状領域5内の検出領域において、方向成分ヒストグラムのピーク方向が消失点に向かっており、これらの検出領域が検出対象として特定される。そのため、図8(B)に示すように、放射状領域3、放射状領域5、放射状領域8に対応する位置においてカウント値が高い信頼度ヒストグラムが生成されることとなる。
たとえば、道路端、白線、タイヤの跡、轍などの方向成分に基づいて検出された消失点は信頼度が高く、このような方向成分は、図8(B)に示すように、特定の放射状領域のみにおいて検出される傾向にあり、その分、信頼度ヒストグラムの分散は大きくなる。これに対して、路面以外の方向成分(すなわちノイズ)が消失点の検出に影響している場合には、その分だけ、信頼度ヒストグラムの分散は低くなる。そのため、信頼度判定機能は、信頼度ヒストグラムの分散を算出し、たとえば図8(B)に示すように、信頼度ヒストグラムの分散が所定の信頼度判定値以上となる場合には、消失点の信頼度が高いと判定することができる。一方、信頼度判定機能は、信頼度ヒストグラムの分散が所定の信頼度判定値未満となる場合には、消失点の信頼度が低いと判定することができる。なお、上述した信頼度判定値の値は、特に限定されず、実験などにより適宜設定することができる。また、信頼度ヒストグラムのピーク近傍の分散のみを算出し、信頼度ヒストグラムのピーク近傍の分散が所定の信頼度判定値以上となる場合に、消失点の信頼度が高いと判定する構成としてもよい。
なお、信頼度判定機能は、信頼度ヒストグラムを生成する際に、検出対象となる検出領域のそれぞれに対して均等に「1」をカウントする構成としてもよいし、または、投票領域の投票値に重み付けを行っている場合には、消失点での投票値の重みが所定の閾値(たとえば0.5)以上である場合にのみ、このような投票領域に対応する検出領域を、検出対象の検出領域として特定してカウントする構成としてもよい。
続いて、図9を参照して、第1実施形態に係る画像処理装置について説明する。図9は、第1実施形態に係る画像処理を示すフローチャートである。なお、図9に示す画像処理は、たとえば、イグニッションがオンとなった場合に、画像処理装置20により実行される。
まず、ステップS101では、検出領域設定機能により、処理範囲の設定が行われる。具体的には、検出領域設定機能は、図2に示すように、カメラ10で撮像した撮像画像のうち、撮像画像の下端から1/2〜2/3程度の画像領域を処理範囲として設定する。そして、ステップS102では、検出領域設定機能により、図2に示すように、ステップS101で設定された処理範囲内に、複数の検出領域が設定される。
ステップS103では、ヒストグラム生成機能により、ステップS102で設定された各検出領域において、方向成分の検出が行われる。そして、ステップS104では、ヒストグラム生成機能により、ステップS103で検出した方向成分に基づいて、図3に示すように、方向成分ヒストグラムの生成が行われる。
ステップS105では、投票領域設定機能により、ステップS104で生成された方向成分ヒストグラムに基づいて、投票領域の設定が行われる。具体的には、投票領域設定機能は、図4に示すように、ステップS104で生成された方向成分ヒストグラムがピークとなる方向に沿って、放射状の投票領域を設定する。
ステップS106では、投票機能により、ステップS105で設定した投票領域の各座標位置に、投票値が投票される。そして、ステップS107では、消失点検出機能により、ステップS106で投票された投票値に基づいて、消失点の検出が行われる。具体的には、消失点検出機能は、撮像画像の各座標位置の投票値を算出し、投票値が最も大きい座標位置を消失点として検出する。
ステップS108では、ステップS107で検出した消失点の信頼度を判定するために、信頼度判定機能により、まず、放射状領域の設定が行われる。具体的には、信頼度判定機能は、図8(A)に示すように、消失点よりも下部の画像領域を、消失点を基準として放射状に分割することで、複数の放射状領域を設定する。
ステップS109では、信頼度判定機能により、信頼度ヒストグラムの生成が行われる。たとえば、信頼度判定機能は、方向成分ヒストグラムに基づいて設定した投票領域が消失点を含む場合に、このような方向成分ヒストグラムが得られた検出領域を検出対象として特定し、放射状領域内に存在する複数の検出領域のうち、検出対象として特定された検出領域の数を、放射状領域ごとにカウントすることで、信頼度ヒストグラムとして生成する。
そして、ステップS110では、信頼度判定機能により、ステップS109で生成した信頼度ヒストグラムに基づいて、消失点の信頼度の算出が行われる。具体的には、信頼度判定機能は、信頼度ヒストグラムの分散を算出し、信頼度ヒストグラムの分散が所定の信頼度判定値以上である場合には、消失点の信頼度が高いと判定して、ステップS111に進む。一方、信頼度ヒストグラムの分散が所定の信頼度判定値未満である場合には、消失点の信頼度が低いと判定して、ステップS112に進む。
ステップS111では、消失点の信頼度が高いと判定されているため、消失点が検出できたものと判定され、ステップS107で検出された消失点を、図9に示す画像処理により検出した消失点として出力する。
一方、ステップS110で消失点の信頼度が低いと判定された場合には、ステップS112に進む。ステップS112では、消失点検出機能により、消失点の不検出処理が行われる。たとえば、消失点検出機能は、処理範囲内における検出領域の設置位置を変更し、変更した検出領域の方向成分に基づいて、消失点を検出する処理を繰り返す。そして、消失点検出機能は、所定の信頼度判定値以上の信頼度の消失点が検出された場合には、消失点が検出できたものと判定し、検出した消失点を出力する。一方、消失点検出機能は、検出領域の設置位置を変更して消失点を検出する処理を所定回数繰り返した場合でも、信頼度判定値以上の消失点が検出できない場合には、消失点は検出できないものと判定し、消失点は検出できないとの検出結果を出力する。あるいは、消失点検出機能は、ステップS107で検出した消失点を、信頼度が低いという情報を付加して出力する構成としてもよい。
以上のように、第1実施形態では、自車両前方の道路を撮像した撮像画像内に、複数の検出領域を設定し、各検出領域内の方向成分に基づいて、検出領域ごとに、方向成分ヒストグラムを生成する。そして、方向成分ヒストグラムごとに、方向成分ヒストグラムがピークとなる方向に沿って投票領域を設定し、投票領域の各座標位置に投票値を投票し、投票値が最も大きい座標位置を消失点として検出する。これにより、本実施形態では、撮像画像に散在する方向成分が最も多く向かう座標位置を消失点として検出することができるため、たとえば、道路がカーブやS字路などである場合や未舗装である場合でも、タイヤの跡や轍などの方向成分に基づいて、消失点を適切に検出することができる。
ここで、図10(A)は、未舗装の屈曲路を撮像した撮像画像の一例を示す図である。図10(A)に示すように、未舗装の屈曲路において、白線などの直線成分が存在しない場合でも、タイヤの跡や轍などの方向成分が存在する場合がある。このような場合に、方向成分ヒストグラムを生成し、図10(B)に示すように、方向成分ヒストグラムに基づいて投票領域を設定し、投票領域の各座標位置に投票値を投票することで、撮像画像内の方向成分が最も多く向かう座標位置を、消失点として検出することができる。
また、本実施形態では、撮像画像に散在する方向成分の検出方向に沿って複数の投票領域を設定し、複数の投票領域が重複している座標位置においては、各投票領域において投票された投票値を合計することで、各座標位置の投票値を算出する。このように、本実施形態では、撮像画像内に散在する複数の方向成分から消失点を検出することで、たとえ道路に白線などが存在せず、1つ1つの方向成分が不鮮明である場合であっても、消失点を適切に検出することができる。
さらに、本実施形態では、方向成分ヒストグラムのピーク近傍の分散が小さいほど、投票領域の大きさ(検出領域の中心位置を頂点とする投票領域の角度θ)を小さくする。ここで、白線などの直線成分は、コントラストが大きく、所定方向の方向成分が得られやすいため、方向成分ヒストグラムのピーク近傍の分散は小さくなる。また、白線などの直線成分は、その方向に消失点が存在する可能性が高い。そのため、方向成分ヒストグラムのピーク近傍の分散が小さいほど、投票領域の大きさを小さくすることで、投票領域を、消失点が存在する可能性が高い領域に限定し、これにより、消失点の検出精度を向上することができる。また、本実施形態では、方向成分ヒストグラムのピーク近傍の分散が小さいほど、投票領域のうちピーク方向に対応する領域の投票値の重み付けを大きくすることで、白線などの直線成分に応じた方向の投票値の重みを大きくすることができ、その結果、消失点の検出精度をさらに高めることができる。
加えて、本実施形態では、垂直方向(Y軸方向)に沿って設定された投票領域の各座標位置、および水平方向(X軸方向)に沿って設定された投票領域の各座標位置に投票値を投票しないことで、前方車両のバンパー、建物、道路標識のポールなどに起因する可能性が高い、垂直方向(Y軸方向)の方向成分、および、水平方向(X軸方向)の方向成分を消失点の検出対象から除外することができ、これにより、消失点の検出精度を高くすることができる。
また、本実施形態では、方向成分ヒストグラムのピークの大きさが所定の基準値以上であるか否かを判定し、ピークの大きさが基準値以上のピークに対応する投票領域のみに投票値を投票することで、図3(A)に示すように、方向成分のピークが得られない方向成分ヒストグラムを消失点の検出対象から除外することができ、これにより、消失点の検出精度を高めることができるとともに、消失点検出時の処理負荷を軽減することができる。
さらに、本実施形態では、方向成分ヒストグラムに複数のピークが存在する場合でも、それぞれのピークの方向に沿って投票領域を設定する。ここで、方向成分ヒストグラムに複数のピークが存在する場合には、一方のピークの方向に消失点が存在し、他の方向には消失点は存在しないため、消失点が存在しない方向に投票領域を設定しない構成とすることも考えられる。しかしながら、消失点が存在しない方向には、他の検出領域から投票領域が設定される可能性は低く、消失点の誤検出が生じる可能性は低い。一方、単に、方向成分ヒストグラムにピークがある場合に、ピークの方向に沿って投票領域を設定する構成とすることで、消失点の検出処理を単純化することができ、これにより、消失点の検出処理の軽減化・高速化を図ることができる。また、このような構成とした場合でも、仮に、道路に道路標示があるために、方向成分ヒストグラムにおいて複数の方向でピークが検出された場合でも、消失点を安定して検出することができる。
さらに、本実施形態では、検出した消失点を基準として放射状領域を設定し、放射状領域内に存在する検出領域のうち、消失点を含む投票領域に対応する検出領域の数をカウントすることで、信頼度ヒストグラムを生成し、生成した信頼度ヒストグラムに基づいて、消失点の信頼度を判定する。ここで、白線などの直線成分に基づく消失点は信頼性が高く、このような直線成分は、消失点を中心として放射状に広がる複数の放射状領域のうち、特定の放射状領域のみに存在する傾向があり、その分、信頼度ヒストグラムの分散は大きくなる傾向にある。そこで、本実施形態では、信頼度ヒストグラムの分散が所定の信頼度判定値以上の場合に、消失点の信頼度が高いと判定し、信頼度が高いと判定された消失点のみを検出することで、消失点の検出精度を高めることができる。
なお、上述した本実施形態では、図2に示すように、撮像画像の下端から1/2〜2/3程度の画像領域を処理範囲として設定する構成を例示したが、この構成に限定されず、たとえば、図11(A)に示すように、処理範囲を横長のライン状とする構成としてもよい。この場合も、図11(B)に示すように、ライン状とした処理範囲内の方向成分に基づいて、消失点を検出することができる。特に、図6に示すように、自車両前方に他車両が存在するために消失点を適切に検出できない場合でも、図11(A)に示すように、自車両前方の他車両を含まないように処理範囲を設定することで、消失点を適切に検出することができる。なお、自車両前方の他車両が存在する場合には、他車両のバンパーなどの水平方向の方向成分が多く検出される。そのため、水平方向の方向成分を検出し、水平方向の方向成分が所定値以上検出されている場合には、自車両前方に他車両が存在するものと判断して、自車両前方の他車両を含まないように処理範囲をライン状に設定する構成とすることができる。
なお、本実施形態では、路面の傷や路面に描画された道路標示など、消失点が存在する方向以外の方向成分も検出される場合があるが、このような方向成分が存在する割合は低いため、消失点の検出精度に大きな影響が与えるものではない。
《第2実施形態》
続いて、本発明の第2実施形態について説明する。第2実施形態における画像処理システムは、図1に示す第1実施形態の画像処理システムと同様の構成を有し、以下に説明するように動作すること以外は、第1実施形態に係る画像処理システムと同様に動作する。
第2実施形態に係る画像処理装置20は、第1実施形態に係る画像処理装置20の機能に加えて、消失点検出機能により検出された消失点に基づいて、自車両の進行方向前方の道路形状を検出する道路形状検出機能をさらに備える。以下に、図12を参照して、第2実施形態に係る道路形状検出機能について説明する。なお、図12は、道路形状の検出方法を説明するための図である。
道路形状検出機能は、自車両前方の道路形状を検出するために、まず、図12(A)に示すように、処理範囲内に水平ライン領域を設定する。なお、本実施形態では、処理範囲内に複数の水平ライン領域を下から順に配置するため、道路形状検出機能は、まず、1つ目の水平ライン領域を処理範囲の下端近傍に設定することが好ましい。また、水平ライン領域の大きさ(Y軸方向の大きさ)は、特に限定されないが、たとえば、処理範囲内に5〜7個の水平ライン領域を配置できる大きさ、あるいは、処理範囲内に10〜20個の水平ライン領域を配置できる大きさなどに設定することができる。
次に、道路形状検出機能は、水平ライン領域に複数の検出領域を設定し、水平ライン領域の検出領域の方向成分に基づいて、水平ライン領域の方向成分に基づく消失点を検出する。たとえば、図12(A)に示す例では、道路形状検出機能は、水平ライン領域A内に設置した複数の検出領域(不図示)の方向成分に基づいて、消失点Aを検出する。
そして、道路形状検出機能は、図12(A)に示すように、検出した消失点Aと水平ライン領域Aの左右の端部とを結ぶ線LAR,LALをそれぞれ設定し、図12(B)に示すように、消失点Aと線LAR,LALとにより形成される三角形状の範囲(図12(B)において破線で示す範囲)において、新たな水平ライン領域Bを設定する。
そして、道路形状検出機能は、水平ライン領域Bの方向成分に基づいて消失点Bを検出し、検出した消失点Bと水平ライン領域Bの左右端部とを結ぶ線LBR,LBLをそれぞれ設定し、消失点Bと線LBR,LBLとにより形成される三角形状の範囲内において、新たな水平ライン領域Cを設定する。同様に、道路形状検出機能は、水平ライン領域の設定と消失点の検出とを繰り返すことで、図13に示すように、複数の水平ライン領域に対応する複数の消失点を、消失点の列データとして検出する。
そして、道路形状検出機能は、検出した消失点の列データに基づいて、自車両前方の道路形状を検出する。ここで、水平ライン領域ごとに検出した消失点は、それぞれの水平ライン領域の方向成分に基づくものである。そのため、水平ライン領域の道路が直進している場合には、この水平ライン領域の消失点は自車両の直進方向に検出され、水平ライン領域が左方向にカーブしている場合には、この水平ライン領域の消失点は自車両の直進方向よりも左側に検出され、水平ライン領域が右方向にカーブしている場合には、この水平ライン領域の消失点は自車両の直進方向よりも右側に検出される。
そこで、道路形状検出機能は、消失点の列データが直進方向に真っ直ぐ伸びている場合には、道路の形状は直線であると検出し、また、消失点の列データが右方向にカーブしている場合には道路の形状を右カーブであると検出し、消失点の列データが左にカーブしている場合には、道路の形状は左カーブであると検出する。また、図13に示すように、消失点の列データが左右に蛇行している場合には、道路の形状は左右に蛇行していると検出する。
また、道路形状検出機能は、図14に示すように、水平ライン領域ごとに、水平ライン領域の左右両端の中点を検出し、複数の水平ライン領域で算出した複数の中点の列データに基づいて、自車両前方の道路の形状を検出することもできる。たとえば、図14に示す例では、図13に示す例と同様に、中点の列データが蛇行しているため、道路形状検出機能は、自車両前方の道路の形状を左右に蛇行しているものとして検出する。
さらに、第2実施形態において、道路形状検出機能は、消失点の列データに基づいて、道路勾配の検出を行う。たとえば、水平エリア領域が下り坂である場合には、水平エリア領域の消失点は、水平アリア領域が平坦である場合の消失点よりも下側(Y座標正方向側)に検出される。反対に、水平エリア領域が上り坂である場合には、水平エリア領域の消失点は、水平アリア領域A1が平坦である場合の消失点よりも上側(Y座標負方向側)に検出される。そのため、道路形状検出機能は、たとえば、各水平エリア領域が平坦である場合の消失点のY座標位置を記憶しておき、各水平エリア領域が平坦である場合の消失点のY座標位置と、実際に検出した各水平エリアの消失点のY座標位置とを比較することで、自車両前方の道路勾配を検出することができる。
続いて、図15を参照して、第2実施形態に係る画像処理装置について説明する。図15は、第2実施形態に係る画像処理を示すフローチャートである。なお、図15に示す画像処理は、たとえば、イグニッションがオンとなった場合に、画像処理装置20により実行される。
まず、ステップS201では、ステップS101と同様に、処理範囲の設定が行われる。そして、ステップS202では、図12(A)に示すように、道路形状検出機能により、ステップS201で設定された処理範囲内において、水平ライン領域の設定が行われる。ステップS203では、ステップS202で設定された水平ライン領域内に、複数の検出領域の設定が行われる。
ステップS204〜S210では、第1実施形態のステップS103〜S111と同様に、各検出領域の方向成分に基づいて、消失点の検出が行われる。すなわち、第2実施形態では、ステップS202で設定された水平ライン領域の方向成分に基づいて、該水平ライン領域の消失点が検出されることとなる。
ステップS211では、道路形状検出機能により、水平ライン領域が全て設定されたか否かの判断が行われる。図13に示すように、処理範囲内に水平ライン領域が全て設定されており、複数の水平ライン領域に対応する複数の消失点が、消失点の列データとして検出された場合には、ステップS212に進む。一方、水平ライン領域が全て設定されていない場合には、ステップS203に戻り、図12(B)に示すように、消失点と水平ライン領域の左右両端とを結ぶ三角形状の範囲内で、新たな水平ライン領域の設定が行われる。
ステップS212では、消失点の列データが検出されたと判断されているため、道路形状検出機能により、消失点の列データに基づいて、道路形状の検出が行われる。具体的には、道路形状検出機能は、消失点の列データが直進方向に真っ直ぐ伸びている場合には、道路の形状は直線であると検出し、また、消失点の列データが右方向にカーブしている場合には道路の形状を右カーブと検出し、消失点の列データが左にカーブしている場合には、道路の形状は左カーブであると検出する。
さらに、ステップS213において、道路形状検出機能は、消失点の列データに基づいて、自車両前方の道路勾配を検出する。たとえば、道路形状検出機能は、各水平エリア領域が平坦である場合の消失点のY座標位置と、実際に検出した各水平エリアの消失点のY座標位置とを比較することで、自車両前方の道路勾配を検出することができる。
以上のように、第2実施形態では、処理範囲内に複数の水平ライン領域を設定し、各水平ライン領域の方向成分に基づいて消失点を検出することで、複数の水平ライン領域に対応する複数の消失点を、消失点の列データとして検出し、検出した消失点の列データに基づいて、自車両前方の道路形状を検出する。水平ライン領域ごとに検出した各消失点は、それぞれの水平ライン領域の方向成分に基づくものであるため、水平ライン領域の消失点の列データに基づいて、道路形状を適切に検出することができる。
また、第2実施形態では、水平ライン領域を設定する際に、既に設定した水平ライン領域の方向成分に基づく消失点と、既に設定した水平ライン領域の左右端部とを結ぶ三角形状の範囲内において、新たな水平ライン領域を設定することで、新たに設定する水平ライン領域を、路面を撮像した画像領域に限定することができ、路面以外の方向成分を消失点の検出対象から除外することができるため、消失点の検出精度を高めることができる。
さらに、第2実施形態では、消失点の列データに基づいて、自車両前方の道路勾配を検出する。水平エリア領域が下り坂である場合には、水平エリア領域の消失点は、水平アリア領域が平坦である場合の消失点よりも下側(Y座標正方向側)に検出され、水平エリア領域が上り坂である場合には、水平エリア領域の消失点は、水平アリア領域が平坦である場合の消失点よりも上側(Y座標負方向側)に検出される。そのため、第2実施形態では、水平エリア領域ごとに、水平エリア領域が平坦である場合の消失点のY座標位置と、実際に検出した各水平エリアの消失点のY座標位置とを比較することで、自車両前方の道路勾配を適切に検出することができる。
以上説明した実施形態は、本発明の理解を容易にするために記載されたものであって、本発明を限定するために記載されたものではない。したがって、上記の実施形態に開示された各要素は、本発明の技術的範囲に属する全ての設計変更や均等物をも含む趣旨である。
たとえば、上述した実施形態では、撮像画像の下端から1/2〜2/3程度の画像領域を処理範囲として設定する構成を例示したが、この構成に限定されず、たとえば、消失点よりも所定画素数(たとえば10〜20画素程度)下の位置から撮像画像の最下端までの画像領域を処理範囲として設定する構成としてもよい。
また、上述した第2実施形態では、消失点の列データを検出する際に、複数の水平ライン領域を隣接するように配置する構成を例示したが、この構成に限定されず、たとえば、水平ライン領域の一部が互いに重複するように、複数の水平ライン領域をY軸方向に数画素ずつずらして配置する構成としてもよいし、あるいは、複数の水平ライン領域をY軸方向に数画素だけ離して配置する構成としてもよい。
さらに、上述した実施形態では、方向成分ヒストグラムのピークに沿って投票領域を設定し、投票領域に投票値を投票し、投票値が最も大きい座標位置を消失点として検出する構成を例示したが、この構成に限定されず、たとえば、方向成分ヒストグラムのピークに沿って、消失点を検出するための投票領域を設定し、撮像画像内の座標位置のうち投票領域が最も重複する座標値を消失点として検出する構成としてもよい。この場合も、撮像画像内に散在する方向成分が最も多く向かう方向にある座標位置を消失点として検出することができるため、たとえ白線などの直線成分が存在しない場合でも、消失点を適切に検出することができる。
なお、上述した実施形態のカメラ10は本発明の撮像手段に、画像処理装置20の検出領域設定機能は本発明の検出領域設定手段に、画像処理装置20のヒストグラム生成機能は本発明の方向成分検出手段および生成手段に、画像処理装置20の投票領域設定機能は本発明の評価領域設定手段に、画像処理装置20の投票機能は本発明の投票手段に、画像処理装置20の消失点検出機能は本発明の消失点検出手段に、画像処理装置20の信頼度判定機能は本発明の放射状領域設定手段、信頼度ヒストグラム生成手段、および信頼度判定手段に、画像処理装置20の道路形状検出機能は本発明の帯状領域設定手段、消失点列検出手段、および道路形状検出手段に、それぞれ対応する。