(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-07-18
(45)【発行日】2023-07-26
(54)【発明の名称】白線検出装置及び方法
(51)【国際特許分類】
G06T 7/60 20170101AFI20230719BHJP
G08G 1/16 20060101ALI20230719BHJP
【FI】
G06T7/60 200J
G08G1/16 C
(21)【出願番号】P 2019111336
(22)【出願日】2019-06-14
【審査請求日】2022-04-07
(73)【特許権者】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】100101454
【氏名又は名称】山田 卓二
(74)【代理人】
【識別番号】100091524
【氏名又は名称】和田 充夫
(74)【代理人】
【識別番号】100172236
【氏名又は名称】岩木 宣憲
(72)【発明者】
【氏名】向井 仁志
【審査官】佐藤 実
(56)【参考文献】
【文献】特開2007-200191(JP,A)
【文献】特開2019-067159(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/60
G08G 1/16
(57)【特許請求の範囲】
【請求項1】
制御部を備え、
前記制御部は、
車両に取り付けられた3次元距離センサが出力する強度画像に基づいて、俯瞰画像を生成する俯瞰画像生成部と、
前記俯瞰画像における前記車両の進行方向に沿って前記俯瞰画像の画素値を積算する一方向積算部と
を含み、
前記制御部は、更に、
前記3次元距離センサが出力する前記強度画像を入力し、前記強度画像に対して、前記強度画像における前記車両の進行方向と直交する方向に微分処理を行い、微分画像を作成して出力する微分画像生成部を含み、
更に、微分画像生成部は、前記強度画像の中央を境に左右対称の微分処理を行うものであり、
前記俯瞰画像生成部は、前記微分画像生成部が出力する微分画像を入力して前記俯瞰画像を生成する、
白線検出装置。
【請求項2】
前記制御部は、更に、
一方向積算により足し込まれた画素値が極大となる位置をピークとして全て検出するピーク検出部と、
前記ピーク検出部が検出したピークのうち、白線に該当するもの以外を誤検出として除去する誤検出除去部と、
前記誤検出除去部を経由して残ったピーク位置を、白線検出位置として出力する検出結果出力部と
を含む請求項
1に記載の白線検出装置。
【請求項3】
前記誤検出除去部は、
前記3次元距離センサが出力する距離画像に基づく、路面領域情報と、
前記検出結果出力部が出力した過去の白線検出位置情報と
の、少なくとも一つを用いて、白線に該当するもの以外を誤検出として除去する
請求項
2に記載の白線検出装置。
【請求項4】
前記制御部は、更に、非平行白線検出部を含み、
前記非平行白線検出部は、前記ピーク検出部が検出したピークのうち、前記誤検出除去部が白線に該当するもの以外を誤検出として除去して残ったピーク位置の、近傍範囲に存在する画素だけを用いて、直線近似若しくは曲線近似を行って白線の向きを検出し、
前記検出結果出力部は、前記非平行白線検出部が検出した近似直線若しくは近似曲線を出力する
請求項
2に記載の白線検出装置。
【請求項5】
プロセッサを備えるコンピュータにおいて路面上の白線を検出する方法であって、
車両に取り付けられた3次元距離センサが出力する強度画像に基づいて、俯瞰画像を生成するステップと、
前記俯瞰画像における前記車両の進行方向である一方向に沿って前記俯瞰画像の画素値を積算するステップと
を含み、
更に、
前記3次元距離センサが出力する前記強度画像を入力し、前記強度画像に対して、前記強度画像における前記車両の進行方向と直交する方向に微分処理を行い、微分画像を作成するステップを含み、
前記微分処理は、前記強度画像の中央を境に左右対称の微分を行うものであり、
前記俯瞰画像を生成するステップは、前記微分画像を生成するステップで生成される前記微分画像を入力して前記俯瞰画像を生成するものである、
白線を検出する方法。
【請求項6】
更に、
前記俯瞰画像の画素値を積算するステップにて、一方向積算により足し込まれた画素値が極大となる位置をピークとして全て検出するステップと、
前記検出するステップにて検出されたピークのうち、白線に該当するもの以外を誤検出として除去するステップと、
前記誤検出として除去するステップを経由して残ったピーク位置を、白線検出位置として出力するステップと
を含む請求項
5に記載の白線を検出する方法。
【請求項7】
前記誤検出として除去するステップでは、
前記3次元距離センサが出力する距離画像に基づく、路面領域情報と、
前記白線検出位置として出力するステップにて出力された過去の白線検出位置情報と
の、少なくとも一つを用いて、白線に該当するもの以外が誤検出として除去される
請求項
6に記載の白線を検出する方法。
【請求項8】
更に、
前記極大となる位置をピークとして全て検出するステップにて検出されたピークのうち、前記白線に該当するもの以外を誤検出として除去するステップにて白線に該当するもの以外が誤検出として除去されて残った、ピーク位置の、近傍範囲に存在する画素だけを用いて、直線近似若しくは曲線近似を行って白線の向きを検出するステップを含み、
前記白線検出位置として出力するステップでは、前記直線近似若しくは曲線近似を行って白線の向きを検出するステップにて、検出された近似直線若しくは近似曲線が出力される
請求項
6に記載の白線を検出する方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、自動車等の車両に搭載される3次元距離センサが出力する画像を用いて路面上の白線(区画線)の位置を検出する装置及び方法に関する。
【背景技術】
【0002】
自動車等の車両におけるレーンキープアシスト(LKAS)を正確に実現すること等のために、走行中の車両が、前方にある路面上の白線(区画線とも称される。以下、白線と言う。)、及びその位置、特に車両との相対位置をリアルタイムで正確に検出することが要求される。
【0003】
白線は通常、レーザの反射率の高いビーズを含んでおり、距離センサは、赤外線レーザにより白線などの存在を感知する。
【0004】
特許文献1では、レーザ反射率の高い点を抽出し、HOUGH(ハフ)変換などの直線あてはめを行う、駐車場における白線検出装置が提案されている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1に開示の技術は、車両の走行時における前方の白線に対しては適用が困難である。
【0007】
更に、車両の走行時に前方にある白線を検出しようとする場合には、白線以外の様々なノイズを車載センサが感知してしまうことが多い。そのような様々なノイズがある場合には、安定して白線を検出することが非常に困難である。更に、様々なノイズを省いた上で正しく白線を検出するには、検出装置における計算負荷が非常に高くなる、という問題が生じる。
【0008】
本開示に係る白線検出装置は、車載距離センサが出力する画像を用いて、ノイズが多い場面でも安定して路面上の白線の位置を検出するものである。
【課題を解決するための手段】
【0009】
本開示に係る白線検出装置は、制御部を備える。制御部は、車両に取り付けられた3次元距離センサが出力する強度画像に基づいて、俯瞰画像を生成する俯瞰画像生成部と、俯瞰画像における車両の進行方向に沿って俯瞰画像の画素値を積算する一方向積算部とを含む。制御部は、更に、3次元距離センサが出力する強度画像を入力し、強度画像に対して、強度画像における車両の進行方向と直交する方向に微分処理を行い、微分画像を作成して出力する微分画像生成部を含む。更に、微分画像生成部は、強度画像の中央を境に左右対称の微分処理を行うものであり、俯瞰画像生成部は、微分画像生成部が出力する微分画像を入力して俯瞰画像を生成する。制御部は、更に、一方向積算により足し込まれた画素値が極大となる位置をピークとして全て検出するピーク検出部と、ピーク検出部が検出したピークのうち、白線に該当するもの以外を誤検出として除去する誤検出除去部と、誤検出除去部を経由して残ったピーク位置を、白線検出位置として出力する検出結果出力部とを含む。
【発明の効果】
【0010】
本開示に係る白線検出装置は、ノイズが多い場面でも安定して路面上の白線の位置を検出することができる。更に、本開示に係る白線検出装置は、白線位置を検出するに当たり行われる計算負荷を低くすることができる。
【図面の簡単な説明】
【0011】
【
図1】
図1(A)は、3次元距離センサが出力する(反射)強度画像である。
図1(B)は、本開示に係る白線検出装置の出力を加えた、3次元距離センサが出力する(反射)強度画像である。
【
図2】実施の形態1に係る白線検出システム及び白線検出装置の構成を示すブロック図である。
【
図3】実施の形態1に係る白線検出装置における、白線検出処理のフローチャートである。
【
図5】
図5(A)は、(反射)強度画像である。
図5(B)は、
図5(A)の(反射)強度画像に基づいて、実施の形態1に係る白線検出装置の微分画像生成部が出力する微分画像である。
図5(C)は、微分画像生成部における微分カーネルを説明する図である。
【
図6】
図6(A)は、(反射)強度画像である。
図6(B)は、
図6(A)の(反射)強度画像に基づく微分画像である。
図6(C)は、
図6(B)の微分画像を変換して作成された俯瞰画像である。
図6(D)は、センサ撮像面から、真上から見た画像(俯瞰画像)への変換を説明する図である。
【
図8】路面座標値からセンサ座標値の計算を説明する図である。
【
図9】俯瞰画像における画素値の積算の範囲を説明するための図である。
【
図10】一方向積算により足し込まれた画素値におけるピークを検出することを、説明する図である。
【
図11】誤検出除去部より誤検出が除去された、一方向積算により足し込まれた画素値におけるピークを示す図である。
【
図12】
図12(A)は、誤検出除去部を経由して残ったピーク位置を示す図である。
図12(B)は、誤検出除去部を経由して残ったピーク位置を示す線を重ねた俯瞰画像である。
図12(C)は、誤検出除去部を経由して残ったピーク位置を示す線を、変換した上で重ねた、レーザ反射強度画像である。
【
図13】実施の形態2に係る白線検出システム及び白線検出装置の構成を示すブロック図である。
【
図14】実施の形態2に係る白線検出装置における、白線検出処理のフローチャートである。
【
図15】
図15(A)は、進行方向に平行でない白線の俯瞰画像を含むある俯瞰画像における画素値を、列(縦)方向に沿って積算することにより検出されたピークを示す図である。
図15(B)は、検出されたピークの近傍範囲であって、前述の俯瞰画像において直線近似若しくは曲線近似を行う列の範囲を示す図である。
図15(C)は、前述の俯瞰画像において、直線近似若しくは曲線近似を行う様子を示す図である。
【
図16】実施の形態4に係る白線検出システム及び白線検出装置の構成を示すブロック図である。
【
図17】実施の形態4に係る白線検出装置における、白線検出処理のフローチャートである。
【発明を実施するための形態】
【0012】
以下、適宜図面を参照しながら、本発明に係る実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。
【0013】
なお、発明者らは、当業者が本開示を十分に理解するために添付図面および以下の説明を提供するのであって、これらによって特許請求の範囲に記載の主題を限定することを意図するものではない。
【0014】
[本発明に到る経緯及び本発明の適用場面]
本発明に係る白線検出装置は、自動車等の車両に搭載される3次元距離センサが出力する画像を用いて路面上の白線(区画線)の位置を検出する。車両に搭載される3次元距離センサとして通常、LIDAR(Light Detection and Ranging、或いはLaser Imaging Detection and Ranging)装置が用いられる。LIDARとは周知のように、光を用いたリモートセンシング技術の一つであり、パルス状に発光するレーザ照射に対する散乱光を測定して、遠距離にある対象までの距離やその対象の性質を分析する技術である。なお、以下でも説明するように、3次元距離センサとして、例えば、赤外線カメラが用いられてもよい。LIDAR装置は、通常、車両の前部中央部分に進行方向に向けて取り付けられている。
【0015】
図1(A)は、LIDAR装置が出力する(反射)強度画像である。
図1(B)は、本発明に係る白線検出装置4の出力を加えた、LIDAR装置が出力する(反射)強度画像である。本発明に係る白線検出装置は、
図1(B)に示すように、LIDAR装置を搭載する車両に対する白線の相対位置をリアルタイムで正確に検出する装置である。
【0016】
従来、LIDAR装置が出力する(反射)強度画像を用いて路面上の白線を検出する検出装置は、HOUGH(ハフ)変換を用いていた(特許文献1参照)。このHOUGH変換を用いる検出装置は、画像上のあらゆる位置においてあらゆる方向を探索した上で白線候補を絞り込む。そうすると、従来の検出装置は、白線以外のノイズをどうしても拾いやすくなる。更に、画像上のあらゆる位置においてあらゆる方向を探索するため、白線検出における計算負荷が非常に高くなる。
【0017】
本発明に係る白線検出装置は、白線以外の様々なノイズを拾うことをできるだけ回避しようとする検出装置である。それと同時に本発明に係る白線検出装置は、白線検出のための計算負荷を低くしようとするものである。
【0018】
なお、本発明に係る車両は、どのような種類の自動車であってもよい。また自動車以外の、自動二輪車などであってもよい。
【0019】
[構成例]
以下にて、白線検出システム1及び白線検出装置4の構成例としての実施の形態を説明する。
【0020】
[実施の形態1]
[1.1.白線検出システム及び白線検出装置の構成]
図2は、実施の形態1に係る白線検出システム1及び白線検出装置4の構成を示すブロック図である。
図2に示すように、実施の形態1に係る白線検出システム1は、3次元距離センサ2と、白線検出装置4と、出力装置6とを備える。
【0021】
3次元距離センサ2は、例えば、LIDAR装置、即ち、LIDARによるレーザ反射強度画像及び距離画像出力装置であり、例えば、後で説明するように、垂直線を円筒状に走査(スキャン)する回転ミラー方式を採用している(
図8参照)。 垂直線からは例えば、32本の赤外線レーザが出射される。垂直線は、例えば、左右70°回転し、1°毎に赤外線レーザが出射される。垂直線は、例えば、20Hzの走査を繰り返す。LIDAR装置である3次元距離センサ2は、レーザ反射強度画像(
図1参照)と距離画像とを出力する。
【0022】
白線検出装置4は、適宜のソフトウエアを搭載したコンピュータにより構成される。ここでのコンピュータは、パーソナルコンピュータでも、タブレット端末でも、カーナビゲーション端末でも、ECU(engine control unit)でもよい。ここでのコンピュータは、例えば、マイコン、CPU、MPU、GPU、DSP、FPGA、ASIC等のプロセッサで構成される制御部7と、白線検出装置4の各種動作を実現するために必要なプログラム及びデータを記憶する記憶媒体である記憶部(メモリ)8とを備える。制御部7は、記憶部(メモリ)8に格納されたデータ及びプログラムを読み出して種々の演算処理を行うことにより、種々の動作を実現してもよい。記憶部(メモリ)8は、例えばROM、RAM、ハードディスク(HDD)、SSD、SRAM、DRAM、強誘電体メモリ、フラッシュメモリ、磁気ディスク、又はこれらの組み合わせによって実現され得る。記憶部(メモリ)8は、例えば、制御部7の作業エリアとして動作するように構成されてもよい。
【0023】
出力装置6は、例えば、適宜のディスプレイ装置により構成されればよい。
【0024】
[1.1.1.白線検出装置の構成]
前述のように、白線検出装置4は、制御部7と、記憶部(メモリ)8とを備える。更に、
図2に示すように、制御部7は、俯瞰画像生成部10と、一方向積算部12と、ピーク検出部14と、路面検出部18と、誤検出除去部16と、及び、検出結果出力部20とを含む。また、記憶部(メモリ)8は、過去検出位置保持部22を含む。なお、制御部7は、LIDAR装置(3次元距離センサ)2と俯瞰画像生成部10との間に、微分画像生成部9を備えてもよい。
【0025】
[1.1.1.1.微分画像生成部]
微分画像生成部9は、LIDAR装置(3次元距離センサ)2が出力するレーザ反射強度画像に対して、強度画像における車両の進行方向と直交する方向、即ち、水平方向に微分処理を行い、微分画像を作成して出力する。強度画像を微分するのは、白線の「内側」をより明確に捉えるためである。
図4(A)~(F)は、様々な路面上の白線を示す図である。夫々の図における矢印は、白線の内側の位置、及び白線の内側の幅を示している。例えば、車両におけるレーンキープアシスト(LKAS)を正確に実現するためには、走行する車両に最も近い左右の白線の内側を捉えることがより重要となる。左右の白線の内側を捉えるために、微分画像生成部9は、強度画像の中央を境に左右対称の微分処理を行う。
【0026】
図5(A)は、レーザ反射強度画像である。
図5(B)は、
図5(A)のレーザ反射強度画像を入力して、微分画像生成部9が出力する微分画像である。
図5(C)は、微分画像生成部9における微分カーネルを説明する図である。
図5(C)に示すように、微分画像生成部9は、レーザ反射強度画像の中央よりも左では、水平方向の連続する三つの画素における画素値(強度値)に対して左方向に向かって、例えば、-0.5、0、+0.5の係数を乗じて加算し、中央の画素における微分値を求める。微分値をその画素における微分画素値とする。なお、白線の内側を捉えるための微分処理であるから、微分値がマイナス値になればその画素の微分画素値はゼロ(0)であるとしている。
【0027】
同様にレーザ反射強度画像の中央よりも右では、微分画像生成部9は、水平方向の連続する三つの画素における画素値(強度値)に対して右方向に向かって、例えば、-0.5、0、+0.5の係数を乗じて加算し、中央の画素における微分値を求める。微分値をその画素における微分画素値とする。白線の内側を捉えるための微分処理であるから、微分値がマイナス値になればその画素の微分画素値はゼロ(0)であるとしている。
【0028】
制御部7は、微分画像生成部9を設けなくてもよい。即ち、後で説明する一方向積算部12は、強度画像の俯瞰画像を車両の進行方向に沿って積算するようにしても、白線検出装置4による白線検出に繋げることができる。
【0029】
[1.1.1.2.俯瞰画像生成部]
俯瞰画像生成部10は、微分画像生成部9が出力する微分画像(若しくは、LIDAR装置(3次元距離センサ)2から直接得られるレーザ反射強度画像)を、俯瞰画像、即ち、真上から見た画像に変換する。
【0030】
図6(A)は、LIDAR装置(3次元距離センサ)2が出力するレーザ反射強度画像である。
図6(B)は、
図6(A)のレーザ反射強度画像に基づく微分画像である。
図6(C)は、
図6(B)の微分画像を変換して作成された俯瞰画像である。
図6(D)は、センサ撮像面から、真上から見た画像(俯瞰画像)への変換を説明する図である。
図6(A)の強度画像及び
図6(B)の微分画像は、
図6(D)における、センサ撮像面における画像であり、
図6(C)の俯瞰画像は、
図6(D)における、路面を真上から見た画像である。
【0031】
図7は、俯瞰画像生成部10が俯瞰画像を作成する手順を、説明する図である。なお、路面座標系は、路面上の座標系であり、車両の走行方向、
図7では図面の上方向にZ軸を、車両の走行方向に直交する右方向、
図7では図面の右方向にX軸を採っている。センサ座標系は、
図8に示すように(前に説明した)LIDAR装置における走査のための垂直線が、走査する円筒面上の座標系であり、当該円筒面の右方向、
図7では右方向にu軸を、当該円筒面の下方向、
図7では下方向にv軸を採っている。
【0032】
俯瞰画像の各画素値は、以下[1]~[3]の手順で設定される。
[1]俯瞰画像上の各画素を隈無く走査する。
図7では、左上から右下に走査している。
[2]俯瞰画像上の各画素の路面座標値(X,Z)について、対応するセンサ座標値(u,v)(即ち、路面上の各画素の位置がセンサ画像上で映る位置)を算出する。路面座標値(X,Z)からセンサ座標値(u,v)の計算については、後で説明する(
図8参照)。
[3]センサ座標値における画素値を計算し、それを俯瞰画像上の画素値にセットする。
【0033】
図7では、路面座標値(X,Z)に対応するセンサ座標値(u、v)の画素値Vの計算式を示している。同時に
図7では、センサ座標値(u、v)の点が、画素値V
0、V
1、V
2、及びV
3の値を持つ四つの点(画素)により形成される矩形セルの内部の点であることを示している。
図7に示すように、センサ座標値(u、v)の点が、この矩形セルを、a:(1-a)に内分し、且つb:(1-b)に内分する点であるとすると、センサ座標値(u、v)の画素値Vは、例えば、以下の値で表すことができる。
【数1】
なお、この計算式では画素値をバイリニアによる補間方式で求めている。補間方式は他のものであってもよく、例えば、四つの点の単純平均によるものでもよい。また、四つの点のうち最も近い点の画素値を採用する等の方式を採用してもよい。
【0034】
図8は、路面座標値(X,Z)からセンサ座標値(u,v)の計算を説明する図である。左の座標図は、真上から見た路面座標系及びセンサ座標系を示す図であり、右の座標図は、車両の進行方向の左側から見た路面座標系及びセンサ座標系を示す図である。左右の座標図に示されるように、センサ座標系は、LIDAR装置における走査のための垂直線が、走査する円筒面上の座標系である。ここで、「d
u」及び「d
v」は、センサ座標系のu軸方向及びv軸方向の夫々におけるセンサの角度分解能、即ち、水平及び垂直夫々の方位角について1度あたりのセンサの画素数である。「h」は、センサが取り付けられる地面からの高さである。センサ座標値(u,v)は、以下の式で表される。
【数2】
【数3】
【0035】
なお、3次元距離センサとして赤外線カメラが用いられてもよい。その場合、センサ座標系は、路面に直交する平面状のものとなる。このような場合も、センサ画素の任意の画素位置(u,v)から、そこでの光線をそのまま延長して路面とぶつかるところの座標値(X,Z)が計算され得るから、路面座標値(X,Z)からセンサ座標値(u,v)を計算することができる。この計算に基づいて、俯瞰画像生成部10は俯瞰画像を生成することとなる。
【0036】
また、微分画像生成部8が、LIDAR装置(3次元距離センサ)2と俯瞰画像生成部10との間ではなく、俯瞰画像生成部10と一方向積算部12との間に設けられてもよい。この場合、俯瞰画像生成部10は、LIDAR装置(3次元距離センサ)2から直接得られるレーザ反射強度画像を、俯瞰画像に変換することになる。更に、微分画像生成部8は、俯瞰画像生成部10が出力する俯瞰画像に対して、俯瞰画像における車両の進行方向と直交する水平方向に微分処理を行い、微分された俯瞰画像を出力することになる。
【0037】
[1.1.1.3.一方向積算部]
一方向積算部12は、車両の進行方向に沿って俯瞰画像の画素値を積算する。センサであるLIDAR装置(3次元距離センサ)2は通常、車両の進行方向に向けて取り付けられているので、俯瞰画像の縦方向、即ち、列方向が車両の進行方向となる。
【0038】
図9は、俯瞰画像における画素値の積算の方向及び範囲を説明するための図である。一方向積算部12は、俯瞰画像の所定の範囲の画素値を、車両の進行方向である列(縦)方向に沿って積算する。
図9の特に上部では、一方向積算部12は、俯瞰画像における直線Z1と直線Z2の間の所定の範囲にて、画素値の積算を行うことを示している。
図9の下部では、積算により足し込まれた画素値が列毎に示されている。足し込まれた画素値は、列の位置のみに従属する1次元のデータとなる。
【0039】
なお、一方向積算部12は、俯瞰画像の上から下まで全部を足し込んでも構わない。但し、例えば、先行車両がいて、それが俯瞰画像に映り込んでいる場合、広い範囲にて俯瞰画像の画素値を足し込むとそれら不要なものまで足し込んでノイズとなる可能性がある。従って、
図9に示す例では、一方向積算部12は、積算のための一定の範囲(Z1とZ2の間)を予め設けている。
【0040】
[1.1.1.4.ピーク検出部]
ピーク検出部14は、一方向積算、即ち、列積算により足し込まれた画素値が極大となる位置をピークとして全て検出する。ここでのピークは、白線位置候補となる。
図10は、一方向積算(列積算)により足し込まれた画素値におけるピークを検出することを説明する図である。極大値検出は、左右±n列(nは所定の自然数)の範囲で最大値となる位置の値を極大値とするものである。
【0041】
白線(区画線)は車両の進行方向に平行であることから、進行方向に沿って足し込めば白線(区画線)が存在する位置にピークが立つ、ということを、ピーク検出部14及びそれを備える白線検出装置4は前提としている。なお、
図10に示すようにピークは複数存在することがあるが、後で説明するように、ピークの急峻度合いや前フレームの検出位置からの距離などを鑑みて、ピークは取捨選択される。
【0042】
[1.1.1.5.誤検出除去部]
誤検出除去部16は、ピーク検出部14が検出したピークのうち、白線に該当するもの以外を誤検出として除去する。
図10に示すように、ピークは3箇所以上で検出され得るので、白線検出のためには何らかのフィルタリングが必要である。誤検出除去部16は、ピークのうち、例えば、以下の条件[1]~[4]の何れかに当てはまるものを誤検出として除去する。
[1]ピーク位置の左右 ±n列(nは所定の自然数)の範囲内での「高さ」が所定の閾値より低い。ここで「高さ」=「範囲内での積算値の最大値と最小値の差」、である。
[2]ピーク位置の左右 ±n列(nは所定の自然数)の範囲内にて、(高さ)/(当該範囲内のピーク全体の面積)が所定の閾値より低い。
[3]ピーク位置の左右 ±n列(nは所定の自然数)の範囲内にて、(高さ)/(当該範囲の幅)が所定の閾値より低い。
[4]その位置の近傍±m列(mは所定の自然数)の範囲内で、過去Nフレーム(Nは所定の自然数)内に検出された白線が存在しない。
【0043】
誤検出除去部16は、上述以外の条件により誤検出を除去してもよい。
図2に示すように、白線検出装置4の制御部は、路面検出部18を含む。この路面検出部18の出力データが用いられてもよい。例えば、路面検出部18は、LIDAR装置(3次元距離センサ)2が出力する距離画像を入力して、距離画像から生成される3次元点群に対して、平面あてはめを行い、路面領域を推定する。誤検出除去部16は、路面検出部18により推定された路面領域内から外れた位置にあるピークを除去するようにしてもよい。
【0044】
更に、誤検出除去部16は、車両位置(レーザ反射強度画像の左右中心位置)から、所定の幅未満の位置の検出されたピークは除去する、などの条件を入れてもよい。
【0045】
[1.1.1.6.検出結果出力部]
検出結果出力部20は、誤検出除去部16を経由して残ったピーク位置を、白線検出位置として出力する。
図12(A)は、誤検出除去部16を経由して残ったピーク位置を示す図である。
【0046】
検出結果出力部20は、誤検出除去部16を経由して残ったピーク位置を示す線を俯瞰画像に重ねて、出力装置6に表示することができる。
図12(B)は、誤検出除去部16を経由して残ったピーク位置を示す線を重ねた俯瞰画像である。
【0047】
また、検出結果出力部20は、必要に応じて俯瞰画面上のピーク位置から、(センサ出力画像である)レーザ反射強度画像上での対応する直線の位置及び方向に変換して、レーザ反射強度画像と共に出力装置6に表示することができる。
図12(C)は、誤検出除去部16を経由して残ったピーク位置を示す線を、変換した上で重ねた、レーザ反射強度画像である。
【0048】
検出結果出力部20が出力する白線検出位置情報は、過去検出位置保持部22に記憶される。過去の白線検出位置情報は、例えば、次フレーム以降の、誤検出除去部16による誤検出除去のために用いられる。
【0049】
[1.2.白線検出装置の動作]
以上のように構成される白線検出装置4の動作について、
図3に記載する白線検出処理のフローチャートを参照しつつ説明する。
図3は、実施の形態1に係る白線検出装置4における白線検出処理のフローチャートである。
【0050】
白線検出装置4の制御部7は、LIDAR装置(3次元距離センサ)2からレーザ反射強度画像と強度画像を1フレーム分、取得する(ステップS04)。
【0051】
微分画像生成部9は、レーザ反射強度画像の微分画像を生成する(ステップS06)。なお、このステップS06は、省かれてもよい。
【0052】
俯瞰画像生成部10は、微分画像(若しくは、レーザ反射強度画像)から、俯瞰画像を生成する(ステップS08)。
【0053】
なお、微分画像生成部8が、俯瞰画像生成部10と一方向積算部12との間に設けられる場合には、ステップS06とステップS08の順序は入れ替わる。即ち、 俯瞰画像生成部10は、レーザ反射強度画像から、俯瞰画像を生成し(ステップS08’)、微分画像生成部9は、その俯瞰画像の微分画像を生成する(ステップS06’)。
【0054】
続いて一方向積算部12は、俯瞰画像の画素値を、車両の進行方向である列方向に沿って積算する(ステップS10)。
【0055】
ピーク検出部14は、一方向積算により足し込まれた画素値(積算値)(1次元データ)の中から、ピークを取る位置を白線位置候補として検出する(ステップS12)。
【0056】
誤検出除去部16は、各白線位置候補について誤検出か否かを判定し、誤検出と判定されるピーク位置を除去する(ステップS14)。
【0057】
検出結果出力部20は、誤検出除去部16を経由して残ったピーク位置を、白線検出位置として出力する(ステップS16)。
【0058】
白線検出装置4の制御部7は、次フレームがあれば(ステップS18・YES)、ステップS04~ステップS16を繰り返し、次フレームが無ければ(ステップS18・NO)、白線検出処理を終了する(ステップS20)。
【0059】
[1.3.実施の形態1の変形例]
以上の実施の形態1に係る白線検出システム1では、LIDAR装置(3次元距離センサ)2は、車両の前部中央部分に進行方向に向けて取り付けられているものとした。LIDAR装置(3次元距離センサ)2の取付の位置及び方向が、前部中央部分及び進行方向で無くても、本実施の形態を適用することができる。
【0060】
例えば、LIDAR装置(3次元距離センサ)2は、車両の側部部分に、進行方向に直交する方向に向けて、取り付けられてもよい。但しこの場合、車両の進行方向は、俯瞰画像において左右に亘る横方向となり、白線(区画線)の方向もそれに平行な方向となる。従って、一方向積算部12の代わりに、車両の進行方向である行(横)方向に沿って俯瞰画像の画素値を積算する一方向積算部12’が設けられる。また、LIDAR装置(3次元距離センサ)2の取付位置が車両の側部部分であることから、誤検出除去部16を経由して検出結果出力部20が出力する白線検出位置は、1本の白線に関するものとなる。
【0061】
更に、LIDAR装置(3次元距離センサ)2が、車両の別の位置にて、別の方向に向けて、取り付けられてもよい。その場合、例えば、一方向積算部12は、車両の進行方向が列(縦)方向と一致するように俯瞰画像を回転変換した上で、列(縦)方向に沿って俯瞰画像の画素値を積算するようにすればよい。
【0062】
[1.3.まとめ]
以上のように、本実施の形態に係る白線検出装置4は、制御部7を備える。制御部7は、車両に取り付けられた3次元距離センサ2が出力する強度画像に基づいて、俯瞰画像を生成する俯瞰画像生成部10と、俯瞰画像における車両の進行方向に沿って俯瞰画像の画素値を積算する一方向積算部12とを含む。制御部7は、更に、3次元距離センサが出力する強度画像を入力し、強度画像に対して、強度画像における車両の進行方向と直交する方向に微分処理を行い、微分画像を作成して出力する微分画像生成部9を含む。更に、微分画像生成部9は、強度画像の中央を境に左右対称の微分処理を行うものであり、俯瞰画像生成部10は、微分画像生成部9が出力する微分画像を入力して俯瞰画像を生成する。制御部7は、更に、一方向積算により足し込まれた画素値が極大となる位置をピークとして全て検出するピーク検出部14と、ピーク検出部14が検出したピークのうち、白線に該当するもの以外を誤検出として除去する誤検出除去部16と、誤検出除去部16を経由して残ったピーク位置を、白線検出位置として出力する検出結果出力部20とを含む。
【0063】
以上の白線検出装置4により、ノイズが多い場でも安定して路面上の白線の位置を検出することができる。更に、本実施の形態の白線検出装置4は、白線位置を検出するに当たり行う計算負荷を低くすることができる。
【0064】
[実施の形態2]
次に、実施の形態2に係る白線検出システム及び白線検出装置を説明する。実施の形態2に係る白線検出システム及び白線検出装置は、実施の形態1に係る白線検出システム及び白線検出装置と略同様のものであるので、それらの差異を中心に説明する。
【0065】
実施の形態1に係る白線検出装置4の一方向積算部12は、俯瞰画像の上の所定の範囲の画素値を、進行方向である列(縦)方向に沿って積算する。これに対して、実施の形態2に係る白線検出装置4の一方向積算部12では、積算対象の俯瞰画像上の範囲が可変である。
【0066】
図13は、実施の形態2に係る白線検出システム1及び白線検出装置4の構成を示すブロック図である。実施の形態2に係る白線検出装置4の一方向積算部12は、LIDAR装置(3次元距離センサ)2が出力する距離画像を参照する。一方向積算部12は、距離画像に基づいて前方の他の車両の有無を推定し、更に、前方に他の車両が存在すればその相対位置を推定する。その上で一方向積算部12は、俯瞰画像上の他の車両の存在する位置を回避して積算対象の範囲を設定し、当該範囲の画素値を列(縦)方向に沿って積算する。
【0067】
図14は、俯瞰画像における画素値の積算範囲の設定を説明するための図である。
図9にて示したように、実施の形態1に係る白線検出装置4の一方向積算部12は、直線Z1と直線Z2の間の固定の範囲にて画素値の積算を行うものである。本実施の形態では、前方に他の車両の存在を推定すれば、一方向積算部12は、例えば、積算対象の範囲を「直線Z1と直線Z2の間」から「直線Z3と直線Z2の間」に変更する。
【0068】
このようにして、本実施の形態の白線検出装置4は、積算対象の範囲内に白線以外のノイズが混入し得る機会を排除することができ、より正確に白線位置を検出することができる。
【0069】
[実施の形態3]
次に、実施の形態3に係る白線検出システム及び白線検出装置を説明する。実施の形態3に係る白線検出システム及び白線検出装置も、実施の形態1に係る白線検出システム及び白線検出装置と略同様のものであるので、それらの差異を中心に説明する。
【0070】
実施の形態1では微分画像生成部9は、白線の内側を捉えるために、ある画素の微分値がマイナス値になればその画素の微分画素値はゼロ(0)であるとしている。これに対して、実施の形態3に係る白線検出装置4における微分画像生成部9は、ある画素の微分値がマイナス値となってもその画素の微分画素値をそのマイナス値とする。
【0071】
これを受けて、俯瞰画像生成部10は、マイナス値はマイナス値のまま俯瞰画像を生成し、一方向積算部12は、マイナス値はマイナス値として積算する。更に、ピーク検出部14がプラスのピークに加えてマイナスのピークを検出し、誤検出除去部16は、マイナスのピークにおける、白線に該当するもの以外のものを除去する。このようにすることで、実施の形態3に係る白線検出装置4は、白線の外側、及び白線の幅を捉えることができる。
【0072】
なお、白線は進行方向に対して常時完全に平行であるとは限らない。即ち、各線が進行方向に対して完全には平行ではない状況も想定され得る。そのような場合に、実施の形態3に係る白線検出装置4が、白線に関するプラスのピークとマイナスのピークを検出することにより、進行方向からの白線のずれ具合を少なくとも部分的に検出することができる。
【0073】
[実施の形態4]
次に、実施の形態4に係る白線検出システム及び白線検出装置を説明する。実施の形態4に係る白線検出システム及び白線検出装置も、実施の形態1に係る白線検出システム及び白線検出装置と略同様のものであるので、それらの差異を中心に説明する。
【0074】
実施の形態1に係る白線検出装置4の検出対象である白線は、車両の進行方向に略平行であることが想定されているものである。しかしながら、白線は進行方向に対して常時完全に平行であるとは限らない。実施の形態4に係る白線検出システム及び白線検出装置は、進行方向に対して平行でない白線を検出することができるものである。
【0075】
図15(A)は、進行方向に平行でない白線を含むある俯瞰画像における画素値を、列(縦)方向に沿って積算することにより検出されたピークを示す図である。
図15(B)は、検出されたピークの近傍範囲であって、前述の俯瞰画像において直線近似若しくは曲線近似を行う列の範囲を示す図である。
図15(C)は、前述の俯瞰画像において、直線近似若しくは曲線近似を行う様子を示す図である。
【0076】
つまり、ピークが検出される
図15(A)における列の範囲αを、直線近似若しくは曲線近似を行う列の範囲として
図15(B)のように取り出し、この列の範囲に対応する俯瞰画像の領域、即ち、列の範囲αと、一方向積算(列積算)の対象範囲を示す直線Z1及び直線Z2とで区切られた領域にて、
図15(C)に示すように直線近似若しくは曲線近似が行われる。俯瞰画像上においては、検出されたピークの近傍範囲に存在する画素だけを用いて、例えば最小二乗法などで直線近似若しくは曲線近似を行うことで、進行方向に平行でない白線の詳細な向きも検出が可能となる。
【0077】
図16は、実施の形態4に係る白線検出システム及び白線検出装置の構成を示すブロック図である。
図2に示す実施の形態1に係る白線検出システム及び白線検出装置の構成と略同様であるが、本実施の形態に係る白線検出装置4の制御部7では、誤検出除去部16と検出結果出力部20との間に、非平行白線検出部17が設けられる。非平行白線検出部17は、ピーク検出部14が検出したピークのうち、誤検出除去部16が白線に該当するもの以外を誤検出として除去して残ったピーク位置の、近傍範囲に存在する画素だけを用いて、最小二乗法などで直線近似若しくは曲線近似を行って非平行の白線の詳細な向きを検出する。
【0078】
更に、本実施の形態では、検出結果出力部20は、残ったピーク位置を示す線を俯瞰画像に重ねて出力装置6に表示する際には、検出した近似直線若しくは近似曲線を表示することができる。同様に、本実施の形態では、検出結果出力部20は、必要に応じて俯瞰画面上の近似曲線若しくは近似曲線から、(センサ出力画像である)レーザ反射強度画像上での対応する直線若しくは曲線の位置及び方向に変換して、レーザ反射強度画像と共に出力装置6に表示することができる。
【0079】
図17は、実施の形態4に係る白線検出装置における、白線検出処理のフローチャートである。
図3に示す実施の形態1に係る白線検出装置4における白線検出処理のフローチャートと略同様であるが、誤検出除去部16が、各白線位置候補について誤検出か否かを判定し誤検出と判定されるピーク位置を除去した(ステップS14)後、非平行白線検出部17が、非平行の白線を検出する(ステップS15)。検出結果出力部20は、誤検出除去部16及び非平行白線検出部17を経由して残ったピーク位置を、非平行の白線位置として出力する(ステップS16)。
【符号の説明】
【0080】
1・・・白線検出システム、2・・・LIDAR装置(3次元距離センサ)、4・・・白線検出装置、6・・・出力装置、7・・・制御部、8・・・記憶部(メモリ)、9・・・微分画像生成部、10・・・俯瞰画像生成部、12・・・一方向積算部、14・・・ピーク検出部、16・・・誤検出除去部、18・・・路面検出部、20・・・検出結果出力部、22・・・過去検出位置保持部。