(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023014131
(43)【公開日】2023-01-26
(54)【発明の名称】線検出装置、線検出方法、プログラム、及び記憶媒体
(51)【国際特許分類】
G06T 7/60 20170101AFI20230119BHJP
G06T 7/00 20170101ALI20230119BHJP
G08G 1/16 20060101ALI20230119BHJP
【FI】
G06T7/60 200J
G06T7/00 650A
G08G1/16 C
【審査請求】有
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022183129
(22)【出願日】2022-11-16
(62)【分割の表示】P 2018042658の分割
【原出願日】2018-03-09
(71)【出願人】
【識別番号】000005016
【氏名又は名称】パイオニア株式会社
(74)【代理人】
【識別番号】100110928
【弁理士】
【氏名又は名称】速水 進治
(74)【代理人】
【識別番号】100127236
【弁理士】
【氏名又は名称】天城 聡
(72)【発明者】
【氏名】長▲瀬▼ 太郎
(72)【発明者】
【氏名】高橋 克彦
(72)【発明者】
【氏名】山崎 理
(72)【発明者】
【氏名】伊藤 宏平
(57)【要約】
【課題】走行路を含む画像から特定の色の線を精度よく検出できるようにする。
【解決手段】線検出装置10は、第1検出部100及び第2検出部200を備えている。第1検出部100は、移動体が走行する走行路を含む画像を処理することにより、当該画像に含まれる第1色の線を検出する。第2検出部200は、輝度が予め定められた基準を満たす画素を抽出し、抽出した画素の画像内における位置に基づいて、画像に含まれる第2色の線を検出する。第2検出部200は、上記した基準を、第1検出部100が検出した第1色の線の輝度を用いて定める。
【選択図】
図13
【特許請求の範囲】
【請求項1】
移動体が走行する走行路を含む画像を処理することにより、当該画像に含まれる第1色の線を検出する第1処理部と、
輝度が予め定められた基準を満たす画素を抽出し、前記画像における前記抽出した画素の位置に基づいて、前記画像に含まれる第2色の線を検出する第2処理部と、
を備え、
前記第2処理部は、前記基準を、検出した第1色の線の輝度を用いて定める、線検出装置。
【請求項2】
請求項1に記載の線検出装置において、
前記基準は、輝度が閾値以上であること、又は輝度が閾値以下であること、のいずれか一方である、線検出装置。
【請求項3】
請求項1又は2に記載の線検出装置において、
前記第1色は黄色であり、前記第2色は白色である線検出装置。
【請求項4】
請求項1~3のいずれか一項に記載の線検出装置において、
前記第2処理部は、前記第1色の線を基準にして範囲を定め、当該範囲に位置する前記第2色の線を検出する線検出装置。
【請求項5】
請求項1~4のいずれか一項に記載の線検出装置において、
前記画像は、前記移動体に搭載された撮像装置によって撮像されている、線検出装置。
【請求項6】
請求項5に記載の線検出装置において、
前記画像は前記移動体の前方を撮像した画像である、線検出装置。
【請求項7】
コンピュータが、
移動体が走行する走行路を含む画像を処理することにより、当該画像に含まれる第1色の線を検出する処理と、
輝度が予め定められた基準を満たす画素を抽出し、前記画像における前記抽出した画素の位置に基づいて、前記画像に含まれる第2色の線を検出する処理と、
前記基準を、検出した第1色の線の輝度を用いて定める処理と、
を実行する線検出方法。
【請求項8】
コンピュータに、
移動体が走行する走行路を含む画像を処理することにより、当該画像に含まれる第1色の線を検出する処理と、
輝度が予め定められた基準を満たす画素を抽出し、前記画像における前記抽出した画素の位置に基づいて、前記画像に含まれる第2色の線を検出する第2処理と、
前記基準を、検出した第1色の線の輝度を用いて定めさせる処理と、
を実行させるプログラム。
【請求項9】
コンピュータが実行可能なプログラムを記憶したコンピュータ読み取り可能な記憶媒体であって、
前記プログラムは、コンピュータに、
移動体が走行する走行路を含む画像を処理することにより、当該画像に含まれる第1色の線を検出する処理と、
輝度が予め定められた基準を満たす画素を抽出し、前記画像における前記抽出した画素の位置に基づいて、前記画像に含まれる第2色の線を検出する第2処理と、
前記基準を、検出した第1色の線の輝度を用いて定めさせる処理と、
を実行させる記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、走行路に描かれている線を検出する線検出装置、線検出方法、プログラム、及び記憶媒体に関する。
【背景技術】
【0002】
近年、車両などの移動体を自動で動かすための技術開発が進められている。このような技術において、走行路に描かれている線を精度よく検出することは重要である。この線は、色によって意味が異なっているため、線の色も検知できるようにする必要がある。例えば特許文献1には、画像において、色の変化のエッジを抽出することにより、特定の色の線を検出している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
走行路には互いに異なる色の線が用いられているが、各色の線には意味がある。このため、特定の色の線を精度よく検出できるようにすることが好ましい。
【0005】
本発明が解決しようとする課題としては、走行路を含む画像から特定の色の線を精度よく検出できるようにするこが一例として挙げられる。
【課題を解決するための手段】
【0006】
本開示に係る第1の発明は、移動体が走行する走行路を含む画像を処理することにより、当該画像に含まれる第1色の線を検出する第1処理部と、
輝度が予め定められた基準を満たす画素を抽出し、前記画像における前記抽出した画素の位置に基づいて、前記画像に含まれる第2色の線を検出する第2処理部と、
を備え、
前記第2処理部は、前記基準を、検出した第1色の線の輝度を用いて定める、線検出装置である。
【0007】
本開示に係る第2の発明は、コンピュータが、
移動体が走行する走行路を含む画像を処理することにより、当該画像に含まれる第1色の線を検出する処理と、
輝度が予め定められた基準を満たす画素を抽出し、前記画像における前記抽出した画素の位置に基づいて、前記画像に含まれる第2色の線を検出する処理と、
前記基準を、検出した第1色の線の輝度を用いて定める処理と、
を実行する線検出方法である。
【0008】
本開示に係る第3の発明は、コンピュータに、
移動体が走行する走行路を含む画像を処理することにより、当該画像に含まれる第1色の線を検出する処理と、
輝度が予め定められた基準を満たす画素を抽出し、前記画像における前記抽出した画素の位置に基づいて、前記画像に含まれる第2色の線を検出する第2処理と、
前記基準を、検出した第1色の線の輝度を用いて定めさせる処理と、
を実行させるプログラムである。
【0009】
本開示に係る第4の発明は、コンピュータが実行可能なプログラムを記憶したコンピュータ読み取り可能な記憶媒体であって、
前記プログラムは、コンピュータに、
移動体が走行する走行路を含む画像を処理することにより、当該画像に含まれる第1色の線を検出する処理と、
輝度が予め定められた基準を満たす画素を抽出し、前記画像における前記抽出した画素の位置に基づいて、前記画像に含まれる第2色の線を検出する第2処理と、
前記基準を、検出した第1色の線の輝度を用いて定めさせる処理と、
を実行させる記憶媒体である。
【図面の簡単な説明】
【0010】
【
図1】第1の実施形態に係る線検出装置の機能構成を示す図である。
【
図2】線検出装置が搭載された移動体を示す図である。
【
図3】線検出装置のハードウェア構成の一例を示す図である。
【
図4】線検出装置が行う処理を示すフローチャートである。
【
図5】
図4に示したステップS20を説明するための図である。
【
図6】(A)及び(B)は
図4に示したステップS40,S60を説明するための図である。
【
図7】(A)及び(B)は
図4に示したステップS80を説明するための図である。
【
図8】第2の実施形態において分割部が行う処理を説明するための図である。
【
図9】第3の実施形態に係る線検出装置の機能構成を示す図である。
【
図11】第4の実施形態に係る線検出装置の構成を示す図である。
【
図12】(A)、(B)及び(C)は領域設定部が行う処理を模式的に説明するための図である。
【
図13】第5の実施形態に係る線検出装置の機能構成を示す図である。
【
図14】第2検出部の機能構成の一例を示す図である。
【
図15】線検出装置が行う処理の一例を示すフローチャートである。
【
図16】第2検出部による処理の対象となる領域の一例を説明するための図である。
【
図17】第6の実施形態に係る線検出装置の機能構成を示す図である。
【
図18】(A)及び(B)は判断部が行う処理の一例を説明するための図である。
【発明を実施するための形態】
【0011】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【0012】
(第1の実施形態)
図1は、第1の実施形態に係る線検出装置10の機能構成を示す図である。
図2は、線検出装置10が搭載された移動体40を示す図である。線検出装置10は移動体40が走行する走行路に描かれている線を検出する装置であり、分割部120、推定情報生成部160、及び特定処理部180(第1特定処理部)を備えている。分割部120は、移動体が走行する走行路を含む画像(以下、処理画像と記載)を、走行路が延在する方向の成分を含む第1方向に沿って分割することにより、複数の第1の分割画像を生成する。推定情報生成部160は、第1の候補画素を選択する処理を、複数の第1の分割画像のそれぞれに対して実行する。第1の候補画素は、走行路に描かれている第1の線の一部と推定される画素である。特定処理部180は、処理画像における複数の第1の候補画素の位置に基づいて、処理画像に含まれる第1の線を特定する。そして第1検出部100は、特定した第1の線を示す情報(第1の線情報)を出力する。
【0013】
また、線検出装置10は、分布情報生成部140を備えている。このため、線検出装置10は、分布情報生成部140、推定情報生成部160、及び特定処理部180を備えているとも見なせる。分布情報生成部140は、処理画像から、基準を満たす画素の分布を示す第1の分布情報を生成する。推定情報生成部160は、第1の分布情報を用いて第1の候補画素を選択する。特定処理部180は、上記した画像における第1の候補画素の位置に基づいて、処理画像に含まれる第1の線を特定する。
【0014】
以下、本実施形態について、詳細に説明する。
【0015】
移動体40は、例えば自動車や自動2輪などの車両である。この場合、走行路の一例は道路であり、第1の線及び後述する第2の線は、車線を定義する線である。ただし、移動体40は飛行機であってもよい。この場合、走行路は滑走路である。
【0016】
図2に示すように、移動体40は、撮像装置20及び制御装置30を備えている。撮像装置20は移動体40の前方を撮影することにより、走行路を含む動画を生成する。そして、この動画を構成する複数のフレーム画像は、線検出装置10に出力される。線検出装置10は、フレーム画像毎に走行路に含まれる第1の線を検出し、検出した第1の線を示す第1線情報を生成する。第1線情報は、第1の線の位置、及び第1の線の色を含んでいる。この第1線情報を生成する処理は、複数のフレーム画像のそれぞれに対して行われる。ただし、動画を構成する一部のフレーム画像に対してのみ、第1線情報を生成する処理が行われてもよい。
【0017】
第1線情報は、制御装置30に出力される。制御装置30は、移動体40の移動を制御する装置である。移動体40が自動車の場合、制御装置30は自動運転のための制御装置である。制御装置30が行う自動運転のレベルは、例えばレベル3以上であるが、これに限定されない。制御装置30は、移動体40の移動を制御する際に、第1線情報を用いる。なお、制御装置30は、移動体40の移動を直接制御するのではなく、移動体40の移動を制御する際に必要な情報を生成してもよい。この場合においても、制御装置30は、第1線情報を用いて必要な情報を生成する。ここで生成される情報は、例えば、車線変更の可否を通知(例えば表示)するための情報や、一時停止の必要性を通知(例えば表示)するための情報などである。この情報は、例えば移動体40の操縦者が目視可能な表示装置(例えば車内のナビゲーション装置のディスプレイ)に表示される。
【0018】
線検出装置10は、
図1に示すように、分割部120、分布情報生成部140、推定情報生成部160、及び特定処理部180を備えている。これらが行う処理の詳細については、フローチャートを用いて後述する。
【0019】
なお、
図2に示す例において、線検出装置10は移動体40に搭載されている。ただし、線検出装置10は、移動体40の外部に位置していてもよい。この場合、線検出装置10は、無線の通信回線を介して撮像装置20及び制御装置30に接続する。また、制御装置30は移動体40の外部に位置していてもよいし、移動体40に対して取り外し可能に取り付けられていてもよい。例えば、線検出装置10が移動体40の外部(外部サーバ等)に位置している場合には、撮像装置20から動画を取得し、この動画を構成するフレーム画像を解析することにより、移動体40が走行した走行路に描かれている線(例えば区画線)を特定し、特定した線を特定するための情報を用いて地図情報を更新することもできる。この場合、容易に地図情報を整備することができる。
【0020】
図3は、線検出装置10のハードウェア構成の一例を示す図である。線検出装置10の主な構成は、集積回路を用いて実現される。この集積回路は、バス402、プロセッサ404、メモリ406、ストレージデバイス408、入出力インタフェース410、及びネットワークインタフェース412を有する。バス402は、プロセッサ404、メモリ406、ストレージデバイス408、入出力インタフェース410、及びネットワークインタフェース412が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ404などを互いに接続する方法は、バス接続に限定されない。プロセッサ404は、マイクロプロセッサなどを用いて実現される演算処理装置である。メモリ406は、RAM(Random Access Memory)などを用いて実現されるメモリである。ストレージデバイス408は、ROM(Read Only Memory)やフラッシュメモリなどを用いて実現されるストレージデバイスである。
【0021】
入出力インタフェース410は、線検出装置10を周辺デバイスと接続するためのインタフェースである。本図において、入出力インタフェース410には撮像装置20及び制御装置30が接続されている。
【0022】
ネットワークインタフェース412は、線検出装置10を通信網に接続するためのインタフェースである。この通信網は、例えばCAN(Controller Area Network)通信網である。なお、ネットワークインタフェース412が通信網に接続する方法は、無線接続であってもよいし、有線接続であってもよい。
【0023】
ストレージデバイス408は、線検出装置10の各機能要素を実現するためのプログラムモジュールを記憶している。プロセッサ404は、このプログラムモジュールをメモリ406に読み出して実行することで、線検出装置10の各機能を実現する。
【0024】
なお、上記した集積回路のハードウエア構成は本図に示した構成に限定されない。例えば、プログラムモジュールはメモリ406に格納されてもよい。この場合、集積回路は、ストレージデバイス408を備えていなくてもよい。
【0025】
図4は、線検出装置10が行う処理を示すフローチャートである。
図5~
図7は、
図4に示した処理を説明するための図である。まず、撮像装置20が動画を構成するフレーム画像を生成すると、線検出装置10は、このフレーム画像を処理画像50として取得する。そして線検出装置10は、フレーム画像を取得するたびに、
図4に示す処理を行う。
【0026】
まず、線検出装置10の分割部120は、
図5に示すように、処理画像50を第1方向に沿って分割することにより、複数の分割画像52(第1の分割画像)を生成する(
図4のステップS20)。一つの処理画像50から生成される分割画像52の数は、例えば10以上30以下であるが、これに限定されない。撮像装置20が移動体40の前方を撮影している場合、y軸方向は、走行路(例えば道路)が延在している方向の成分を含んでいる。このため、
図5に示す例において、分割部120は、y軸方向に処理画像50を分割することにより、分割画像52を生成する。この場合、分割画像52の生成処理に必要な負荷は小さくなる。
【0027】
次いで、分布情報生成部140は、分割画像52のそれぞれに対し、基準を満たす画素の分布を示す第1の分布情報を生成する処理を行う(
図4のステップS40)。ここで用いられる基準は、例えば、色空間において予め定められた範囲に属する色を有することである。例えば線検出装置10が黄色線を検知する場合、上記した「予め定められた範囲」は、黄色と認識される範囲である。例えば分布情報生成部140は、予め定められた範囲に属する画素を1、その他の画素を0に変換する(2値化処理)。そして、第1の分布情報は、上記した第1方向に交わる第2方向における画素の分布を示す情報である。例えば
図5に示したように第1方向がy軸方向である場合、第2方向は、例えばx軸方向である。そして、第1の分布情報は、例えば
図6(A)及び(B)に示す通り、第2方向において基準を満たす画素数の分布を示す情報になる。
【0028】
次いで、推定情報生成部160は、分布情報生成部140が生成した第1の分布情報を用いて、走行路に描かれている第1の線の一部と推定される画素(以下、第1画素と記載)を選択する処理を行う(
図4のステップS60)。この処理は、分割画像52のそれぞれに対して行われる。例えば分布情報が、
図6に示すように、第2方向において基準を満たす画素数の分布を示している場合、推定情報生成部160は、第1の分布情報における標準偏差及び分散の少なくとも一方を用いて、第1画像を選択する。例えば標準偏差が基準値以下の場合、又は分散が基準値以下の場合、推定情報生成部160は、第1の候補画素のすべてを第1画素として選択する。この場合、推定情報生成部160は、その分割画像52に第1の線が含まれていると判断していることになる。例えば
図6(A)に示す場合、標準偏差や分散が小さいため、第1の候補画素のすべてを第1画素として選択する。一方、
図6(B)に示すように標準偏差や分散が大きい場合、第1の候補画素からは第1画素を選択しない。
【0029】
ただし、推定情報生成部160は、第1の候補画素の一部を第1画素として選択してもよい。この場合、
図6(A)に示すように、推定情報生成部160は、例えば、第1の分布情報において画素数が基準値以上の領域に含まれる画素を、第1画素として選択する。
【0030】
次いで、特定処理部180は、推定情報生成部160が選択した第1画素の処理画像50内における位置(又は分割画像52内における位置)を用いて、処理画像50に含まれる第1の線の位置を推定する(
図4のステップS80)。例えば特定処理部180は、第1画素の第1方向における位置の平均値を、その分割画像52における第1の線の位置と推定する。そして、複数の分割画像52における第1の線の位置を繋いだり、または回帰分析を行うことにより、処理画像50に含まれる第1の線を推定する。また分割画像52における第1の線の位置と推定する際には、第1画素の第1方向における位置の平均値の代わりに最頻値や中央値を用いることとしても良い。
【0031】
図7の各図は、
図4のステップS80の一例であり、特定処理部180が回帰分析を用いて第1の線を推定する場合を説明するための図である。この例においては回帰直線が用いられている。
図7(A)は、第1の線の推定位置をプロットした図である。そして、特定処理部180は、この図において回帰直線を生成し、生成した回帰直線が第1の線を示すと推定する。
図7(B)は、処理画像50において推定した第1の線を適用した例である。この場合、例えば推定した第1の線は、処理画像50の下方部分(
図7(A)のプロットが存在している箇所)に存在し、かつ、処理画像50の上方部分の上端まで延長していることを示している。
【0032】
なお、
図7(B)に示すように、特定処理部180は、第1画素のうちこの回帰直線と重なる画素、及びこの画素と連続している画素を、第1の線を構成する画素と特定してもよい。言い換えると、特定処理部180は、分割画像52のそれぞれにおいて、第1画素の塊のうち回帰直線と重なる塊を、第1の線を構成する画素と特定してもよい。
【0033】
また、分布情報生成部140は、輝度が予め定められた基準を満たす画素を選択し、選択した画素の分布情報(以下、第2の分布情報と記載)を生成することもできる。この基準は、例えば下限値以上であってもよいし、上限値未満であってもよいし、下限値以上かつ上限値以下であってもよい。この場合、推定情報生成部160及び特定処理部180が第1の分布情報の代わりに第2の分布情報を用いると、線検出装置10は、白線を検知することができる。
【0034】
以上、本実施形態によれば、分割部120、推定情報生成部160、及び特定処理部180が行う処理には、エッジ検出処理は含まれていない。このため、第1の線を特定する際に必要な演算量は少なくなる。従って、演算速度が速い演算装置は不要となり、その結果、線検出装置10の製造コストは低くなる。
【0035】
また、線検出装置10の分布情報生成部140は、第1の分布情報を生成している。推定情報生成部160は、この第1の分布情報を用いて第1画素(すなわち第1の線を構成すると推定される画素)を選択する。このため、推定情報生成部160が行う演算量、すなわち第1の線を構成すると推定される画素を選択する際の演算量は少なくなる。
【0036】
(第2の実施形態)
本実施形態に係る線検出装置10は、分割部120が行う処理を除いて、第1の実施形態に示した線検出装置10と同様である。
【0037】
図8は、本実施形態において分割部120が行う処理を説明するための図である。本実施形態において、線検出装置10は、処理画像50のすべてを分割画像52の生成対象とするのではなく、処理画像50の一部54のみを分割画像52の生成対象としている。例えば線検出装置10は、処理画像50の一部54を取り出し、この一部54を分割することにより分割画像52を生成する。このようにすると、分布情報生成部140、推定情報生成部160、及び特定処理部180が処理を行うべき領域が処理画像50の一部54に限られるため、線検出装置10が行う演算量はさらに少なくなる。
【0038】
なお、処理画像50における一部54の位置は、予め設定されている。例えば撮像装置20が移動体40に搭載されている場合、道路は処理画像50の下側に写っている可能性が高い。このため、一部54は、移動体40の下方に設定されるのが好ましい。
【0039】
(第3の実施形態)
図9は、第3の実施形態に係る線検出装置10の機能構成を示す図である。本実施形態に係る線検出装置10は、データ変換部110を備えている点を除いて、第1又は第2の実施形態に係る線検出装置10と同様の構成である。
【0040】
撮像装置20が生成する処理画像50は、RGB色空間で示された画像である。データ変換部110は、この処理画像50を、色相、明度(輝度)、彩度という指標で定義された色空間で示された画像、例えばHLS色空間で示された画像(変換後画像)に変換する。なお、HLS色空間の代わりにHSV色空間やLab色空間が用いられてもよい。そして、分割部120、分布情報生成部140、推定情報生成部160、及び特定処理部180は、この変換後の処理画像50を用いて処理を行う。
【0041】
第1の線の色によっては、RGB色空間で示された画像よりも、色相、明度(輝度)、彩度という指標で定義された色空間、例えばHLS色空間で示された画像のほうが、分布情報生成部140が処理しやすい(2値化処理を行いやすい)ことがある。このような場合において、本実施形態に係る線検出装置10は、RGB色空間で示された処理画像50を直接処理する場合と比較して、高い精度で第1の線を検出することができる。第1の線が黄色線の場合、この傾向は顕著になる。
【0042】
なお、
図10に示すように、データ変換部110は、処理画像50ではなく分割画像52に対して上記したデータ変換処理を行ってもよい。
【0043】
(第4の実施形態)
図11は、第4の実施形態に係る線検出装置10の構成を示す図である。本実施形態に係る線検出装置10は、領域設定部130を有している点を除いて、第1~第3の実施形態に係る線検出装置10のいずれかと同様である。
図11は、第3の実施形態と同様の場合を示している。
【0044】
領域設定部130は、第1のフレーム画像において特定処理部180が第1の線を検出できた場合、第1のフレーム画像より後(例えば次)に処理されるフレーム画像(以下、第2のフレーム画像と記載)において、分布情報生成部140の処理対象となる領域を狭める。具体的には、領域設定部130は、第1のフレーム画像で検出された第1の線の第2方向の位置(例えば
図7におけるx軸方向の位置)に基づいて分布情報生成部140の処理対象となる領域を狭める。例えば領域設定部130は、第1のフレーム画像における第1の線の第2方向の位置が、処理対象となる領域の中心となるようにする。そして、領域設定部130は処理対象となる領域の幅を狭める。領域設定部130は、例えば分割画像52に対して上記した処理を行う。
【0045】
図12の各図は、領域設定部130が行う処理を模式的に説明するための図である。
図12(A)に示すように、第1のフレーム画像(処理画像50a)において特定処理部180が第1の線L1を特定した場合、領域設定部130は、その線L1の位置を示す情報(例えば回帰分析によって得られた線を示す情報)を特定処理部180から取得する。そして領域設定部130は、
図12(B)に示すように、第2のフレーム画像(処理画像50b)に対して、分布情報生成部140の処理対象となる領域56を設定する。次いで、この第2のフレーム画像(処理画像50b)に対しても特定処理部180が第1の線L1を特定できた場合、第2のフレーム画像(処理画像50b)より後の第3のフレーム画像(処理画像50c)における領域56を、第2のフレーム画像(処理画像50b)における領域56よりも狭くする。
【0046】
このように、第1の線L1の検出が検出され続けると領域56はだんだん狭くなっていくが、この大きさ(例えば幅)には下限がある。すなわち領域設定部130は、領域56の大きさ(例えば幅)が下限を下回らないようにする。ここで用いられる下限は、上記した、分割画像52が線の一部を含むか否かの判断基準となる標準偏差の基準値に相当する幅よりも大きく設定されることが好ましい。
【0047】
また、領域設定部130は、領域56を設定した後、いずれかのフレーム画像(処理画像50)において第1の線を特定できなかった場合、その後(例えば次)のフレーム画像において、領域56を広げるか、又は領域56の設定を解除する。
【0048】
なお、領域設定部130は、上記した領域56の設定を、分割部120が処理する前の処理画像50(データ変換部110が返還した後の処理画像50であってもよい)に対して行ってもよいし、分布情報生成部140が生成した第1の分布情報に対して行ってもよい。
【0049】
本実施形態によれば、領域設定部130が、分布情報生成部140の処理対象となる領域56を狭める。この際、領域設定部130は、領域56を、処理済みのフレーム画像における第1の線L1の位置に基づいて設定する。このため、線L1の検出精度を維持しつつ、線検出装置10の演算量を少なくすることができる。尚、分布情報生成部140の処理対象として領域56を狭めることによって、線L1の検出には不要となるノイズの影響を抑制することもできる。例えば、ノイズとしては線L1とは異なる道路上の黄色線で描かれている文字、黄色線で描かれている表示物等が一例としてあげられる。
【0050】
(第5の実施形態)
図13は、第5の実施形態に係る線検出装置10の機能構成を示す図である。本実施形態に係る線検出装置10は、第1検出部100の他に第2検出部200を備えている。第1検出部100は、上記したいずれかの実施形態と同様である。
【0051】
第2検出部200は、処理画像50を構成する画素の輝度を用いて走行路に描かれている線を検出する。具体的には、第2検出部200は、輝度が基準を満たす画素を処理画像50から選択し、選択した画素を用いて線(第2の線)を検出する。この処理の一例は、2値化処理である。
【0052】
この際、輝度の基準を適切に設定しないと、第2検出部200は、第1検出部100が検出した第1の線を、その他の線とともに検出する可能性が出てくる。例えば第1検出部100は黄色線を検出することを目的としており、第2検出部200は白線を検出することを目的としている場合、第2検出部200は、白線とともに黄色線も検出する可能性がある。そこで本実施形態において、第2検出部200は、第1検出部100が検出した第1の線を構成する画素の輝度を用いて、輝度の基準を設定する。
【0053】
例えば第2検出部200が白線を検出することを目的としている場合、上記した輝度の基準は、下限値である。すなわち、第2検出部200は、基準値以上の輝度を有する画素を選択する。逆に、第2検出部200は、基準値以下の輝度を有する画素を選択してもよい。この場合、第2検出部200は、目的とする線以外の領域を構成する画素を選択することにより、間接的に目的とする線を検出することができる。そして第2検出部200は、第1検出部100が検出した第1の線を構成する画素の輝度を統計処理した値を基準に、上記した下限値を設定する。ここで、統計処理した値の例としては、例えば平均値、最頻値などがある。また、第2検出部200は、例えば、この統計処理した値に定数を加えた値を下限値と設定する。
【0054】
また、第2検出部200は、第1検出部100によって特定された第1の線を構成する画素を処理画像50から除外し、除外した画像から、基準値より輝度が高い画素を選択することにより、白線を検知してもよい。この場合の下限値は、例えば固定値であり、一般的な道路面の輝度値よりも高い値が用いられる。
【0055】
図14は、第2検出部200の機能構成の一例を示す図である。本図に示す例において、第2検出部200は、分割部220、分布情報生成部240、推定情報生成部260、及び特定処理部280(第2特定処理部、第3特定処理部、又は白線検出処理部の一例)を備えている。分割部220が行う処理は分割部120が行う処理と同様である、また、分布情報生成部240、推定情報生成部260、及び特定処理部280が行う処理は、画素の選択基準が輝度である点を除いて、それぞれ分布情報生成部140、推定情報生成部160、及び特定処理部280が行う処理と同様である。このため、本実施形態において、第1検出部100が第2検出部200の機能を兼ねることもできる。さらに第2検出部200は、分割部220の前にデータ変換部110を有していてもよい。
【0056】
分布情報生成部240は、輝度が予め定められた基準を満たす画素を選択し、選択した画素の分布情報(第2の分布情報)を生成する。分布情報生成部240は、この処理で用いられる基準を、上記したように、第1検出部100が検出した第1の線を構成する画素の輝度を用いて設定する。
【0057】
また分布情報生成部240は、第1検出部100が検出した画素を分割画像52から除外し、除外した後の分割画像52を用いて第2の分布情報を生成してもよい。
【0058】
図15は、本実施形態に係る線検出装置10が行う処理の一例を示すフローチャートである。線検出装置10は、複数のフレーム画像のそれぞれに対して、本図に示す処理を行う。まず、第1検出部100は第1の線(第1色の線)の検出処理を行う。その後、第2検出部200は、第1検出部100から第1の線の輝度情報を受け取ってから、第2の線(第2色の線)の検出処理を行う。ここで、第1の線の輝度は、第2の線の輝度よりも低い。
【0059】
第1検出部100が処理を行う前に第2検出部200が処理を行った場合、すなわち第2の線を第1の線よりも先に検出した場合、第2検出部200は、第2の線を検出する際に用いられる輝度の基準が低すぎるなどの理由により、第2の線とともに第1の線を検出する可能性が出てくる。これに対して本実施形態では、第1検出部100が処理を行った後に第2検出部200が処理を行っている。このため、第2の線とともに第1の線を検出する可能性は低くなる。例えば、上記したように、第2検出部200が処理を行う際に、第1検出部100が検出した第1の線(黄色線)を構成する画素を除外することにより、第2検出部では、白線だけを検出することが可能となる。
【0060】
なお、第1の線の検出処理の詳細は、上記したいずれかの実施形態で示した通りである。また、第2の線の検出処理の詳細は、上記した通りである。
【0061】
なお、第1検出部100が第1の線を検出できない場合もあり得る。この場合、第2検出部200の分布情報生成部240は、予め定められた輝度の基準を用いて、第2の分布情報の生成処理を行う。
【0062】
また、第2検出部200は、処理画像50の全体に対して第2の線の検出処理を行ってもよいし、処理画像50の一部に対してのみ第2の線の検出処理を行ってもよい。後者の場合、第2検出部200は、第1の線の位置を基準にして第2の線の検出処理を行う領域を決定してもよい。このようにすると、第2検出部200が行う演算処理の量は少なくなる。
【0063】
図16は、第2検出部200による処理の対象となる領域の一例を説明するための図である。本図に示すように、走行路(例えば道路)には、第1の線L1(例えば黄色線)に対して第2の線L2(例えば白線)が互いに平行に描かれている場合がある。このような場合、第2検出部200は、第1の線L1に交わる方向において第1の線L1の基準にして処理対象となる範囲を定め、当該範囲に位置する第2の線L2を検出する。例えば第2検出部200は、処理画像50の横方向(x軸方向)において、第1の線L1の中心として+方向に第1の幅W1をとり、かつ-方向に第2の幅W2をとる。そして、この範囲を、領域58と設定する。なお、第1の幅W1と第2の幅W2は互いに等しくてもよいし、異なっていてもよい。また、領域58の幅は、線L1が延在する方向に沿って変更されてもよい。例えば処理画像50の上側に行くにつれて処理画像50に含まれる領域の幅が狭くなっている場合、領域58の幅は、処理画像50の上側に行くにつれて狭くなってもよい。
【0064】
以上、本実施形態によれば、第1の線を精度よく検出できるとともに、第2の線も精度よく検出することができる。
【0065】
(第6の実施形態)
図17は、第6の実施形態に係る線検出装置10の機能構成を示す図である。本実施形態に係る線検出装置10は、判断部300を備えている点を除いて、第5の実施形態に係る線検出装置10と同様の構成である。
【0066】
上記したように第1検出部100は処理画像50に含まれる第1の線を検出し、第2検出部200は処理画像50に含まれる第2の線を検出する。処理画像50は、動画を構成するフレーム画像のそれぞれである。判断部300は、フレーム画像のそれぞれに対する第1検出部100の処理結果を用いて第1の線の検出周期を算出し、第1の線が点線であるか否かを決定する。判断部300は、第2の線に対しても同様の処理を行う。
【0067】
以下、判断部300が第1の線を処理する場合について説明する。判断部300は、第1検出部100がフレーム画像(処理画像50)を処理するたびに、そのフレーム画像に含まれる第1の線を特定する。そして、判断部300は、この特定結果のフレーム画像間の推移を処理することにより、第1の線の検出周期を判断する。
【0068】
例えば上記したように、第1検出部100の推定情報生成部160が、分割画像52に第1の線が含まれているか否かを判断する処理を各分割画像52に対して行っている場合を考える。この場合、判断部300は、第1の線が含まれていると判断された分割画像52の数を算出する。そして、判断部300は、
図18の各図に示すように、この分割画像52の数の推移を用いて、第1の線が点線であるか否かを判断する。具体的には、判断部300は、分割画像52の数の増減が一定の周期で繰り返されている場合、第1の線が点線であると判断する。一方、判断部300は、算出した分割画像52の数が基準数以上(例えば一枚のフレーム画像に含まれる分割画像52の数の70%以上)である状態が、ある一定数以上のフレーム画像で継続している場合、第1の線は連続線であると判断する。また、判断部300は、分割画像52の数の増減が不規則に繰り返されている場合、第1の線は連続線であるが部分的になくなっている(又はかすれている)と判断する。
【0069】
なお、
図18(A)は、上記した分割画像52の数をフレーム画像毎にプロットした結果を示しており、
図18(B)は、上記した分割画像52の数を、連続する複数枚(例えば5枚)のフレーム画像で平均した値の推移をプロットした結果を示している。いずれの場合においても、分割画像52の数の増減が一定の周期で繰り返されているため、判断部300による処理の対象とすることができる。なお、
図18(B)は、上記した分割画像52の平均値は一定の範囲に入ることも示している。
【0070】
なお、線検出装置10は、撮像装置20が処理画像50を生成したときの移動体40の速度を特定するための情報を取得してもよい。例えば線検出装置10は、処理画像50が生成されたときの時刻を示す情報を各処理画像50について取得するとともに、移動体40の速度を時刻別に示す情報を取得する。この場合、判断部300は、さらにこの速度を用いて第1の線が点線であるか否かを判断することもできる。
【0071】
具体的には、判断部300は、上記した第1の線の検出周期と移動体40の速度を用いて、第1の線の長さを算出する。例えば
図8に示すように、処理画像50に一部54が設定されている場合を考える。判断部300は、第1の線が含まれていると判断された分割画像52の数が基準数以上になったフレーム画像から、その分割画像52の数が基準数以下になったフレーム画像までの枚数をカウントし、この枚数にフレームレート及び移動体40の速度を乗ずることにより、第1の線の長さを算出する。また、判断部300は、第1の線が含まれていると判断された分割画像52の数が基準数以下になったフレーム画像から、その分割画像52の数が基準数以上になったフレーム画像までの枚数をカウントし、この枚数にフレームレート及び移動体40の速度を乗ずることにより、第1の線の間隔を算出する。そして、判断部300は、算出した第1の線の長さのばらつき及び第1の線の間隔のばらつきが一定値以下である場合、第1の線が点線であると判断する。一方、算出した第1の線の長さのばらつきが一定値以上である場合、第1の線は連続線であるが部分的になくなっている(又はかすれている)と判断する。
【0072】
判断部300は、第1の線の長さ及び第1の線の間隔の少なくとも一方を算出する場合、この長さと基準長さの一致度を用いて、第1の線が点線であるか否かを判断してもよい。この場合、
図17に示すように、判断部300は、走行路の種類を特定するための種類情報を取得し、上記した基準長さを、前記種類情報を用いて定めてもよい。この種類情報は、例えば走行路が一般道、有料道路、及び高速道路のいずれであるかを特定するための情報である。そして、高速道路の場合、一般道の場合と比較して基準長さは長くなる。なお、上記した種類情報は、上記した道路を直接特定する情報であってもよいし、移動体40の位置を示す情報(例えばGPS情報などの緯度経度を示す情報)及び地図情報であってもよい。
【0073】
判断部300による判断結果は、移動体40の制御装置30に出力される。制御装置30は、この判断結果、すなわち第1の線(又は第2の線)が連続線であるか点線であるかを示す情報を用いて、移動体40の移動(例えば走行線の変更の可否)を制御する。この判断の具体例は、例えば交通ルールに基づいて定められる。
【0074】
以上、本実施形態によれば、判断部300は、精度よく第1の線及び第2の線が点線であるか否かを判断することができる。そして移動体40の制御装置30は、この判断結果を用いて移動体40の移動を制御するため、移動体40の自動運転を高度にすることできる。
【0075】
なお、第1~第4の実施形態に係る線検出装置10においても、上記した判断部300を備えていてもよい。
【0076】
以上、図面を参照して実施形態及び実施例について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。
【符号の説明】
【0077】
10 線検出装置
20 撮像装置
30 制御装置
40 移動体
50 処理画像
52 分割画像
54 画像の一部
56 領域
58 領域
100 第1検出部
110 データ変換部
120 分割部
130 領域設定部
160 推定情報生成部
180 特定処理部
140 分布情報生成部
200 第2検出部
220 分割部
240 分布情報生成部
260 推定情報生成部
280 特定処理部
300 判断部
L1 線