(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-06
(45)【発行日】2024-08-15
(54)【発明の名称】画像処理装置、画像処理方法およびプログラム
(51)【国際特許分類】
G06T 7/90 20170101AFI20240807BHJP
G06T 7/00 20170101ALI20240807BHJP
H04N 7/18 20060101ALI20240807BHJP
【FI】
G06T7/90 A
G06T7/00 650A
H04N7/18 J
(21)【出願番号】P 2021009829
(22)【出願日】2021-01-25
【審査請求日】2023-11-06
(73)【特許権者】
【識別番号】000233295
【氏名又は名称】株式会社日立情報通信エンジニアリング
(74)【代理人】
【識別番号】110000442
【氏名又は名称】弁理士法人武和国際特許事務所
(72)【発明者】
【氏名】久保田 守
【審査官】岡本 俊威
(56)【参考文献】
【文献】特開2020-095621(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00-7/90
H04N 7/18
(57)【特許請求の範囲】
【請求項1】
カメラで取得した撮影画像を合成し、合成画像を生成する画像合成部と、
前記合成画像の色相値を算出し、色相マップを作成するマップ作成部と、
予め定めた期間分の、予め定めた範囲の、予め定めた領域毎の前記色相マップの前記色相値を蓄積し、蓄積マップを作成する蓄積マップ作成部と、
前記蓄積マップから、駐車領域を抽出する駐車領域抽出部と、
前記駐車領域を出力する出力処理部と、を備えること
を特徴とする画像処理装置。
【請求項2】
請求項1記載の画像処理装置であって、
前記マップ作成部は、前記合成画像の前記色相値を算出不可な領域について、明度値を算出し、明度マップを作成し、
前記蓄積マップ作成部は、前記予め定めた期間分の前記予め定めた範囲の、前記予め定めた領域毎の前記明度マップの前記明度値も蓄積すること
を特徴とする画像処理装置。
【請求項3】
請求項2記載の画像処理装置であって、
前記駐車領域抽出部は、前記蓄積マップの、前記色相値が予め定めた色相変化閾値以上変化する前記領域である色相変化領域および前記色相値を算出可能な前記領域と不可能な前記領域との境界領域とを特定し、前記色相変化領域と前記境界領域とを用いて、駐車枠線候補および駐車スペース候補を特定すること
を特徴とする画像処理装置。
【請求項4】
請求項3記載の画像処理装置であって、
前記駐車領域抽出部は、前記蓄積マップの、前記明度値が予め定めた明度変化閾値以上変化する前記領域である明度変化領域を特定し、当該明度変化領域をさらに用い、前記駐車枠線候補および前記駐車スペース候補を特定すること
を特徴とする画像処理装置。
【請求項5】
請求項3または4記載の画像処理装置であって、
前記蓄積マップ作成部は、蓄積した値を用いて、前記蓄積マップの前記予め定めた領域毎の確信度を算出する確信度算出部を備え、
前記駐車領域抽出部は、前記駐車枠線候補および前記駐車スペース候補のうち、前記確信度が予め定めた閾値以上の候補を、前記駐車領域として抽出すること
を特徴とする画像処理装置。
【請求項6】
請求項5記載の画像処理装置であって、
前記確信度は、前記色相値の分散である色相分散値と前記明度値の分散である明度分散値とに応じて、定められること
を特徴とする画像処理装置。
【請求項7】
請求項1から6いずれか1項記載の画像処理装置であって、
前記撮影画像は、前記カメラを搭載する車両の周囲の画像であって、
前記合成画像は、前記車両を俯瞰する俯瞰画像であること
を特徴とする画像処理装置。
【請求項8】
カメラで取得した撮影画像を合成し、合成画像を生成する画像合成ステップと、
前記合成画像の色相値を算出し、色相マップを作成するマップ作成ステップと、
予め定めた期間分の、予め定めた範囲の、予め定めた領域毎の前記色相マップの前記色相値を蓄積し、蓄積マップを作成する蓄積マップ作成ステップと、
前記蓄積マップから、駐車領域を抽出する駐車領域抽出ステップと、
前記駐車領域を出力する出力ステップと、を備えること
を特徴とする画像処理方法。
【請求項9】
コンピュータを、
カメラで取得した撮影画像を合成し、合成画像を生成する画像合成手段、
前記合成画像の色相値を算出し、色相マップを作成するマップ作成手段、
予め定めた期間分の、予め定めた範囲の、予め定めた領域毎の前記色相マップの前記色相値を蓄積し、蓄積マップを作成する蓄積マップ作成手段、
前記蓄積マップから、駐車領域を抽出する駐車領域抽出手段、
前記駐車領域を出力する出力処理手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カラー画像を処理する画像処理技術に関する。
【背景技術】
【0002】
車載カメラで撮影した画像を用いて、駐車場の白線を検出する技術がある。例えば、特許文献1には、「第1白線検出部の検出結果に基づいて、第1駐車枠検出部で前方俯瞰画像における駐車枠を検出し、第1駐車枠検出部の検出結果を参照して、側方俯瞰画像から駐車枠線を第2白線検出部で検出するように構成した。そして、第1白線検出部および第2白線検出部の検出結果に基づいて、前方俯瞰画像と側方俯瞰画像とにまたがって存在する駐車枠を第2駐車枠検出部で検出するように構成した(要約抜粋)」技術が開示されている。
【0003】
また、黄色の線を検出する画像処理技術がある。例えば、特許文献2には、「画像処理装置において線分抽出部は、算出部と、補正部と、抽出部とを備える。算出部は、撮像装置によって得られた画像データの画素に対し、R値またはG値と、B値との差に基づく彩度を算出する。補正部は、算出された彩度を強調量として所定の黄色条件を満たす画素の輝度値を補正する。抽出部は、補正後の輝度値に基づいて路面に表示された区画線を検出する(要約抜粋)」技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2014-106738号公報
【文献】特開2020-095621号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載の技術は、路面と駐車枠線の輝度差をもとに駐車枠を認識している。このため、輝度差の少ない環境、例えば、曇天時、夜間、屋内等では認識が難しい。
【0006】
特許文献2に記載の技術は、色情報を考慮し、駐車枠を認識する。しかしながら、黄色成分の強さを基の輝度に加算する技術であり、認識対象が、一般的な黄色(オレンジ色)の駐車枠線に限定されている。
【0007】
本発明は、上記事情に鑑みてなされたもので、環境によらず、精度よく駐車領域を検出する技術を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の画像処理装置は、カメラで取得した撮影画像を合成し、合成画像を生成する画像合成部と、前記合成画像の色相値を算出し、色相マップを作成するマップ作成部と、予め定めた期間分の、予め定めた範囲の、予め定めた領域毎の前記色相マップの前記色相値を蓄積し、蓄積マップを作成する蓄積マップ作成部と、前記蓄積マップから、駐車領域を抽出する駐車領域抽出部と、前記駐車領域を出力する出力処理部と、を備えることを特徴とする。
【発明の効果】
【0009】
本発明によれば、環境によらず、精度よく駐車領域を検出できる。上記した以外の課題、構成および効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0010】
【
図1】本発明の実施形態の概要を説明するための説明図である。
【
図2】(a)および(b)は、それぞれ、本発明の実施形態の画像処理装置の、ハードウェア構成図および機能ブロック図である。
【
図3】本発明の実施形態の駐車領域特定処理のフローチャートである。
【
図4】本発明の実施形態のマップ作成処理を説明するための説明図である。
【
図5】(a)および(b)は、それぞれ、本発明の実施形態の蓄積マップおよび蓄積マップの各グリッドに対応づけて登録されるデータを説明するための説明図である。
【
図6】本発明の実施形態の蓄積マップ作成処理を説明するための説明図である。
【
図7】(a)は、本発明の実施形態の確信度算出処理のフローチャートであり、(b)および(c)は、それぞれ、本発明の実施形態の明度増減値テーブルおよび色相増減値テーブルの一例を説明するための説明図である。
【
図8】本発明の実施形態の駐車領域抽出処理のフローチャートである。
【
図9】(a)および(b)は、それぞれ、本発明の実施形態の彩色部分の抽出処理および無彩色部分の抽出処理のフローチャートである。
【
図10】本発明の変形例の蓄積マップ作成処理を説明するための説明図である。
【
図11】(a)および(b)は、本発明の変形例の駐車領域抽出手法を説明するための説明図である。
【発明を実施するための形態】
【0011】
以下、図面を参照しながら本発明の実施の形態を説明する。なお、本発明は、本実施形態に制限されず、本発明の思想に合致するあらゆる応用例がその技術的範囲に含まれる。また、特に明示しない限り、各構成要素は複数でも単数でも構わない。
【0012】
まず、本実施形態の概要を、説明する。
図1は、本実施形態の概要を説明するための図である。本実施形態では、車両910に搭載されたカメラで画像(撮影画像)を取得する毎に、その撮影画像を合成し、変換することにより俯瞰画像210を生成する。俯瞰画像210は、車両910の上方から車両周囲を俯瞰する画像である。そして、俯瞰画像210の、各画素211、212の色相値および明度値を算出する。
【0013】
その後、所定期間の、所定範囲の色相値および明度値を、所定領域(グリッド222)毎に蓄積し、所定範囲の蓄積マップ220を生成する。このとき、各グリッド222の蓄積値の確信度を算出してもよい。そして、これらの蓄積値を用いて、所定範囲内の駐車領域300を抽出する。なお、本実施形態では、駐車領域300として、駐車枠線310により囲まれた領域と、駐車スペース320と、を含む。
【0014】
本実施形態では、上記処理を車載の画像処理装置100により実現する。まず、本実施形態の画像処理装置100について説明する。
【0015】
[ハードウェア構成]
図2(a)は、本実施形態の画像処理装置のハードウェア構成図である。本図に示すように、本実施形態の画像処理装置100は、CPU(Central Processing Unit)111と、メモリ112と、記憶装置113と、入力装置114と、出力装置115と、データI/F116と、を備える。さらに、通信I/F等を備えてもよい。画像処理装置100は、例えば、汎用の情報処理装置(コンピュータ)で実現される。
【0016】
CPU111は、所定のプログラムに従って画像処理装置100全体を制御する主制御部(メインプロセッサ)である。マイクロプロセッサユニット(MPU)で実現されてもよい。
【0017】
メモリ112は、一時記憶領域、ワーク領域である。例えば、RAM(Randam Access Memory)等が用いられる。RAMは、CPU111と一体構成であっても良い。
【0018】
記憶装置113は、CPU111が処理に利用するデータ、処理により生成したデータ等が記憶される。ROM(Read OnlyMemory)や、フラッシュメモリ、ハードディスク等が用いられる。
【0019】
入力装置114は、操作指示の入力を受け付ける。電源キー、音量キー、ホームキー等の操作キーや、タッチセンサ等を備えてもよい。なお、タッチセンサは、タッチパネルとして後述のディスプレイに重ねて配置される。なお、音声入力を受け付ける場合、マイクであってもよい。
【0020】
出力装置115は、処理結果を出力する。例えば、ディスプレイ、スピーカ、ランプ等を備えてもよい。
【0021】
データI/F116は、車内の例えば、ECU(Electronic Control Unit)との間でデータの送受信を行ったり、車載カメラ191(
図2(b)参照)からデータを受信したりするインタフェースである。
【0022】
なお、車載カメラ191は、例えば、CCD(Charge Coupled Device)やCMOS(Cpmplementary Metal Oxide Semiconductor)などの撮像素子を備え、当該カメラが搭載される車両910の周囲を撮影する。
【0023】
車載カメラ191の数は限定されず、車両の周囲360度を撮影できればよい。例えば、水平画角が90度以上のカメラを4つ、それぞれ、車両の前方、後方、左側方、右側方を撮影してもよい。また、360度カメラ(全天球カメラ)1つであってもよい。以下、本実施形態では、車載カメラ191を複数備える場合を例にあげて説明する。
【0024】
[機能ブロック]
本実施形態では、画像処理装置100は、上述のように、車載カメラ191で取得した撮影画像を用いて、車両910の周囲の駐車領域300を特定する。これを実現する本実施形態の画像処理装置100の機能構成を以下に説明する。
図2(b)は、本実施形態の画像処理装置100の機能ブロック図である。
【0025】
画像処理装置100は、画像合成部120と、演算処理部130と、出力処理部140と、を備える。演算処理部130は、マップ作成部131と、蓄積マップ作成部132と、駐車領域抽出部134と、を備える。また、蓄積マップ作成部132は、確信度算出部133を備える。
【0026】
画像合成部120は、複数の車載カメラ191で取得した各撮影画像を合成し、合成画像(俯瞰画像210)を生成する画像合成処理を行う。俯瞰画像210は、各撮影画像を、撮影方向に応じて座標変換した上で、つなぎ合わせることによって合成される。本処理は、周知の各種処理を用いることができる。画像合成処理は、所定の間隔、例えば、各車載カメラ191から撮影画像が入力される毎に行われる。
【0027】
なお、ここで生成される合成画像は、俯瞰画像210に限定されない。車両910の周囲を把握可能な画像であればよい。
【0028】
なお、俯瞰画像210は、各画素について、RGBの色情報(以下、RGB値と呼ぶ。)を備える。色情報の形式はカメラの画像出力形式によるが、ここではRGB形式で各車載カメラ191が色情報を出力するものとする。
【0029】
演算処理部130は、俯瞰画像210に対し、予め定めた演算を行い、車両周囲の駐車領域300を認識する。
【0030】
マップ作成部131は、画像合成部120で作成された俯瞰画像210から、色相マップおよび明度マップを作成する。マップ作成部131は、最新の俯瞰画像210の各画素のRGB値をHSV形式に変換し、俯瞰画像210に対応する領域の色相マップと明度マップとを作成する。
【0031】
なお、HSVとは、色を色相(Hue;以下H)と、彩度(Saturation)と、明度(Value・Brightness;以下、V)との3要素で表現する方式である。本実施形態では、このうち、色相(H)と明度(V)とを用いる。よって、色相マップは、車両910の周辺の、俯瞰画像210の範囲の色情報をマッピングしたものであり、明度マップは、同範囲の明度をマッピングしたものである。
【0032】
蓄積マップ作成部132は、マップ作成部131が作成した色相マップの色相値および明度マップの明度値を、予め定めた領域(グリッド)単位で蓄積し、蓄積マップ220を作成する。なお、蓄積マップ220は、現時点から所定期間遡った所定数の色相マップおよび明度マップを用いて、実空間上の同じ位置に対応するグリッドの、色相値および明度値を蓄積したものである。蓄積は、俯瞰画像210より広い、予め定めた範囲について行う。
【0033】
確信度算出部133は、蓄積マップ220の各グリッドの確信度を計算する。ここで、確信度は、そのグリッドの値の確からしさを示す度合いである。
【0034】
駐車領域抽出部134は、蓄積マップ作成部132で作成した、確信度を含む蓄積マップ220から、2種類の駐車領域300を抽出する。ここでは、所定の面領域である駐車スペース320で規定される駐車領域300と、駐車枠線310のペアで規定される駐車領域300と、を抽出する。
【0035】
出力処理部140は、駐車領域抽出部134が抽出した駐車領域300を、出力画像として生成し、出力装置115から出力する。または、データI/F116を介して、ECUへ出力する。例えば、ECUでは、自動駐車制御等にこの情報を用いてもよい。
【0036】
画像処理装置100の各機能は、例えば、CPU111が、記憶装置113に記憶されたプログラムを、メモリ112にロードして実行することにより実現される。なお、画像処理装置100は、一部が、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などで実現されてもよい。
【0037】
[駐車領域特定処理]
本実施形態の演算処理部130による駐車領域特定処理の流れを、
図3に示す。本処理は、画像合成部120が画像を合成し、俯瞰画像210を生成する毎に実行される。
【0038】
まず、マップ作成部131は、マップ作成処理を実行する(ステップS1101)。これにより、マップ作成部131は、俯瞰画像210の各画素位置の画素値が色相値である色相マップと、明度値である明度マップとを作成する。マップ作成処理の詳細は、後述する。
【0039】
次に、蓄積マップ作成部132は、蓄積マップ220を作成する蓄積マップ作成処理を実行する(ステップS1102)。蓄積マップ作成処理の詳細は、後述する。このとき、確信度算出部133は、各グリッドの確信度を算出する。
【0040】
そして、駐車領域抽出部134は、蓄積マップから、駐車領域300を抽出し(ステップS1103)、処理を終了する。
【0041】
なお、出力処理部140は、演算処理部130が抽出した駐車領域300を出力画像とし、ディスプレイ等に表示する。本実施形態では、例えば、元の俯瞰画像210に駐車領域300を重畳して表示する。
【0042】
以下、上記演算処理の各処理の詳細を説明する。
【0043】
[マップ作成]
マップ作成部131は画像合成部120で作成した、各画素値がRGB値である俯瞰画像210から、各画素値が(H)値である色相マップおよび明度(V)値である明度マップを生成する。色相マップおよび明度マップは、
図4に示すように、俯瞰画像210上に、車両910周辺の色情報、明度情報をマッピングしたものである。
【0044】
上述のように、俯瞰画像210の各画素は、それぞれ、RGB値を有する。このRGB値からHV値を算出する際の変換式は、以下の式(1)の通りである。
【数1】
なお、各画素において、RGBの3つの値のうち、最大のものをMAX、最小のものをMINとする。
【0045】
例えば、
図4の画素211に対応する俯瞰画像210の画素が、(R,G,B)=(128,128,128)である場合、画素211の色相値、明度値は、(H,V)=(定義不可,128)となる。同様に画素212に対応する俯瞰画像210の画素が、(R,G,B)=(140,170,220)の場合、画素212の色相値、明度値は、(H,V)=(159.5,220)となる。
【0046】
なお、色相が算出できない箇所(MIN=MAX)は定義不可領域として色相マップ上に記録する。ここで、定義不可の画素は、各画素のRGB値が全て同じ値、すなわち、白、灰色、黒等のグレースケール(無彩色)の画素である。このように、本実施形態では、色相(H)が算出不可の場合でも色相マップではH=定義不可として情報が保持される。
【0047】
[蓄積マップ作成]
蓄積マップ220は、過去に作成した色相マップおよび明度マップの色相値および明度値をそれぞれ蓄積し、保持したマップである。蓄積マップ220は、2次元のグリッドを持ったマップであり、
図5(a)に示すように色相マップおよび明度マップに比べサイズの大きいマップである。また、各グリッドは、色相マップおよび明度マップの元の俯瞰画像210の画素に対応してもよいし、複数の画素を含んでもよい。以下、色相マップおよび明度マップを特に区別する必要がない場合、色相マップ等と呼ぶ。
【0048】
本実施形態では、例えば、蓄積マップ220は、色相マップ等(俯瞰画像210)に比べ、縦横それぞれ2倍の大きさとする。例えば、色相マップ等が、車両910を中心とし、一辺が8mの矩形とすると、蓄積マップ220は、同じく車両910を中心とした一辺が16mの矩形とする。
【0049】
なお、蓄積マップ220と色相マップ等(俯瞰画像210)とのサイズ比はこれに限定されない。蓄積マップ220のサイズが、色相マップ等より大きければよい。また、蓄積マップ220のサイズは、固定値であってもよいし、抽出対象の駐車領域300に合わせて変更してもよい。
【0050】
蓄積マップ220の各グリッド221は、
図5(b)に示すように、色相蓄積値と、明度蓄積値と、確信度と、の情報を保持する。色相蓄積値および明度蓄積値は、予め定めた領域の色相マップ等の、現実空間の同じ位置に対応する、過去の所定期間の、それぞれ、色相値および明度値を蓄積したものである。蓄積数は、予め定めておく。
【0051】
確信度は、過去の信頼度情報をもとに、現在の色相蓄積値または明度蓄積値の状況を判定して値を算出する。
【0052】
車載カメラ191は、車両910に搭載される。このため、
図6に示すように、車両910の移動に伴い、車載カメラ191により撮影される領域が異なる。すなわち、撮影画像の撮影範囲が異なり、撮影画像から生成される俯瞰画像210がカバーする現実空間の範囲も異なる。したがって、俯瞰画像210に対応する色相マップ等の範囲も異なる。
【0053】
図6に、一例として、車両910が位置Aにいるときのマップ210Aおよび蓄積マップ220Aと、車両910が位置Bにいるときのマップ210Bおよび蓄積マップ220Bと、を示す。このように、車両910が位置Aから位置Bに移動するのに伴い、マップに対応する俯瞰画像210がカバーする現実空間の範囲、それに伴う蓄積マップ220のカバーする現実空間の範囲も変化する。
【0054】
色相マップおよび明度マップの元となる俯瞰画像210の各画素の画素位置は、車両910に固定されたローカル座標系(以下、車両座標系)で特定される。車両座標系は、例えば、車両910の重心を原点とする座標系である。
【0055】
蓄積マップ作成部132は、色相マップおよび明度マップの各画素のローカル座標系の座標値を、空間に固定されたワールド座標系の座標値に変換する。ワールド座標系は、例えば、予め定めた路面上の特定の位置を原点とする座標系である。ワールド座標系は、例えば、緯度経度であってもよい。
【0056】
変換は、例えば、ECU経由で取得した車両情報および車載カメラ191の情報を用いて行う。具体的には、車両情報のうち、加速度情報、速度情報等と、車載カメラ191の搭載位置、撮影視野等を用いて、車両910の姿勢の変化、移動量、実空間上での撮影範囲等を算出する。そして、それを用いて、最新の俯瞰画像210(すなわち、色相マップおよび明度マップ)の、各画素の、予め定めたワールド座標系での座標位置を特定する。
【0057】
そして、蓄積マップの、ワールド座標系の同じ座標値を含むグリッドに、それぞれ、色相値および明度値を、色相蓄積値および明度蓄積値として蓄積する。蓄積する際は、時刻情報に対応づけて蓄積してもよい。
【0058】
なお、蓄積は、予め定めた1以上の画素を含むグリッド単位で行う。1グリッドが複数の画素を含む場合、各グリッドを構成する複数の画素の値(色相値、明度値)の統計値を用いる。統計値は、例えば、平均値等である。
【0059】
例えば、
図6の例において、その時点でマップ210Aおよびマップ210Bのみが算出されているものとすると、グリッド225は、何も値が登録されない。また、グリッド226には、マップ210Aの値が登録される。グリッド227には、マップ210Aの値と、マップ210Bの値とが登録される。そして、グリッド228には、マップ210Bの値が登録される。
【0060】
[確信度算出処理]
蓄積マップ220の各グリッドには、さらに、確信度が蓄積される。以下、確信度算出部133による確信度算出処理について説明する。
【0061】
確信度算出処理の流れを
図7(a)に示す。確信度算出処理は、グリッド毎に、グリッド毎の確信度を算出する。確信度は、例えば、初期値を0とし、そのグリッドの色相値または明度値の分散の値に応じて、その値が増減される。なお、確信度算出処理は、蓄積マップ220が更新される毎に実行される。更新される毎に蓄積マップ220の全グリッドについて確信度を算出してもよいし、値が更新されたグリッドについてのみ、確信度を算出してもよい。以下、特定のグリッド(対象グリッドと呼ぶ。)の確信度算出処理について説明する。
【0062】
まず、確信度算出部133は、対象グリッドの色相蓄積値について判別する。ここでは、全てが定義不可であるか否かを判別する(ステップS1201)。
【0063】
全てが定義不可、すなわち、蓄積を開始してから、ずっと無彩色の領域である場合(S1201;Yes)、明度蓄積値を用いて確信度の増減を決める。ここでは、まず、明度蓄積値の分散(明度分散値)を算出する(ステップS1202)。
【0064】
そして、算出した明度分散値に応じた確信度の増減値を決定する(ステップS1203)。明度分散値に応じた増減値は、予め明度増減値テーブルとして定めておく。ここで、明度増減値テーブル410の一例を、
図7(b)に示す。例えば、予め定めた第一閾値を用いて、明度分散値が第一閾値未満であれば、第一固定値分、増加させ、第一閾値以上であれば、第一固定値分、減少させる。よって、ここでは、増減値として、分散値が予め定めた第一閾値未満の場合、プラス第一固定値、第一閾値以上の場合、マイナス第一固定値、と決定される。
【0065】
すなわち、本実施形態では、明度分散値が第一閾値未満の場合、明度が安定していると判断され、それに伴い、確信度も高められる。逆に、第一閾値以上の場合は、明度が不安定であるため、確信度は減らされる。増減を決定する第一閾値は、予め定めておく。
【0066】
そして、決定した増減値を用いて、最新の確信度を決定する(ステップS1204)。ここでは、現状の確信度に対し、ステップS1203で決定した増減値を適用する。例えば、明度分散値が予め定めた第一閾値未満の場合、現状の確信度の値に、予め定めた第一固定値を加算する。一方、分散値が第一閾値以上の場合、現状の確信度から、第一固定値を減算する。
【0067】
また、過去に1度でも、定義不可でない値がある場合(S1201;No)、その色相の蓄積値の値を用いて、確信度の増減を決める。ここでは、まず、色相蓄積値の分散(色相分散値)を算出する(ステップS1205)。
【0068】
そして、算出した色相分散値と、定義不可である蓄積値の個数との組み合わせで、増減値を決定する(ステップS1206)。これらは、予め色相増減値テーブル420として定めておく。例えば、定義不可の個数が予め定めた閾値未満であるか否かで分類し、それぞれにおいて、色相分散値が予め定めた閾値未満であるか否かで、増減値を決定する。
【0069】
色相増減値テーブル420の一例を、
図7(c)に示す。例えば、定義不可の蓄積値の個数が、第四閾値未満である場合、色相分散値を、第二閾値と比較する。そして、第二閾値未満であれば、予め定めた第二固定値分、増加させる。一方、第二閾値以上であれば、第二固定値分、減少させる。また、定義不可の蓄積値の個数が、第四閾値以上の場合、色相分散値を、第三閾値と比較する。そして、第三閾値未満であれば、予め定めた第三固定値分、増加させる。一方、第三閾値以上であれば、第三固定値分、減少させる。
【0070】
ここで、第二固定値と第三固定値とは、第二固定値の方が大きく設定される。これは、定義不可の数が少ない場合の、確信度に対する影響度を、定義不可の数が多い場合の影響度より大きくするためである。分散に関しては、明度の場合と同様の理由である。第二閾値、第三閾値、第四閾値は、予め定められる。
【0071】
そして、ステップS1204へ移行し、決定した増減値を現状の確信度に反映させ、処理を終了する。
【0072】
[駐車枠抽出処理]
次に、駐車領域抽出部134による駐車領域抽出処理について説明する。駐車領域抽出部134は、作成した蓄積マップ220から駐車領域300を抽出する。本実施形態では、
図5に示す、駐車枠線310を2つ組み合わせた領域と、駐車スペース320と、を駐車領域300として抽出する。
【0073】
駐車領域抽出部134による駐車領域抽出処理の流れを、
図8に示す。本処理は、例えば、蓄積マップ220が更新される毎に行われる。
【0074】
駐車領域抽出部134は、まず、蓄積マップ220の各グリッドを、彩色部分か、無彩色部分か、分類する(ステップS1301)。ここでは、色相蓄積値が全て定義不可の部分を無彩色部分とし、その他の部分、すなわち、色相蓄積値に定義不可以外がある部分を彩色部分と分類する。
【0075】
次に、彩色部分の抽出処理(ステップS1302)を行い、その後、無彩色部分の抽出処理(ステップS1303)を行う。彩色部分の抽出処理は、彩色部分で、駐車領域を特定し、その座標、種別(形状)を取得する。また、無彩色部分の抽出処理は、無彩色部分で駐車領域を特定し、その座標、種別(形状)を取得する。
【0076】
ここで、彩色部分の抽出処理について説明する。
図9(a)は、本実施形態の駐車領域抽出部134による彩色部分の抽出処理の処理フローである。
【0077】
まず、駐車領域抽出部134は、最新の蓄積マップ220を走査する(ステップS1401)。そして、色相の傾向が変わる点(色相変化領域)を抽出する(ステップS1402)。色相変化領域は、走査方向に並んだ(隣接する)グリッドの間で、無彩色から彩色に変化する箇所(境界点;境界領域)、彩色から無彩色に変化する箇所(境界点)、および、彩色から彩色への変化において、色相値の変化量が閾値以上の箇所(色相変化点)、のいずれかである。
【0078】
ここで、駐車領域抽出部134は、境界点を、上記の分類に従って、特定する。一方、色相変化点については、例えば、特定のグリッドの、蓄積された複数の値の平均値と、当該グリッドに隣接するグリッドの同じく平均値とを比較し、変化量が閾値以上であるかを判別し、閾値以上である場合、色相変化点と特定する。
【0079】
このようなグリッドを、色相変化領域として抽出すると、駐車領域抽出部134は、所定のペアのグリッドを特定する(ステップS1403)。ここでは、抽出した色相変化領域のうち、所定の間隔(駐車枠線の横幅、または駐車スペースの横幅)に相当するペアを特定する。枠線の横幅、スペースの横幅の値は、例えば、グリッド数等で予め所定範囲の値を記憶しておく。特定する際、枠線の横幅に対応するペアか、スペースの横幅に対応するペアかを決定し、識別可能な情報(識別情報)を付与しておく。なお、抽出する際、方向は問わない。
【0080】
次に、駐車領域抽出部134は、抽出したペアに対し、グルーピングを行い、その後、フィルタリングを行う(ステップS1404)。グルーピングは、同種の色相変化点のペアで直線状に並んでいるものを一つのグループとして関連付ける処理である。同種のペアとは、同じ識別情報が付与されているペアであり、本実施形態では、枠線のペアか、スペースのペアか、である。また、フィルタリングは、長さが閾値未満のグループは無効なグループとして削除する処理である。
【0081】
駐車領域抽出部134は、フィルタリング後に残ったグループを駐車枠線候補または駐車スペース候補と判定し、それぞれの領域の、ワールド座標系の座標値と種別(駐車枠線候補、駐車スペース候補)とを取得し(ステップS1405)、記録して処理を終了する。
【0082】
次に、無彩色部分の抽出処理について説明する。
図9(b)は、駐車領域抽出部134による無彩色部分の抽出処理の処理フローである。
【0083】
本処理は、基本的に彩色部分の処理と同様である。すなわち、まず、蓄積マップ220を走査する(ステップS1501)。
【0084】
次に、無彩色部分の抽出処理では、明度変化領域を抽出する(ステップS1502)。明度変化領域は、走査方向に並んだグリッドの間で、無彩色から彩色に変化する箇所(境界点)、彩色から無彩色に変化する箇所(境界点)、および、無彩色から無彩色への変化において、明度値の変化量が閾値以上の箇所(明度変化点)、のいずれかである。なお、明度変化点は、上記彩色部分の抽出処理と同様、蓄積された複数の値の平均値を用いて特定する。
【0085】
そして、抽出した明度変化領域について、彩色部分の処理同様、ペアのグリッドを特定し(ステップS1503)、その後、グルーピングとフィルタリングとを行い(ステップS1504)、残ったグループを駐車枠線候補または駐車スペース候補と判定し、それぞれの領域の座標値と種別(駐車枠線候補、駐車スペース候補)とを取得し(ステップS1405)、記録して処理を終了する。
【0086】
図8に戻り、駐車領域抽出部134は、彩色部分の抽出処理および無彩色部分の抽出処理で特定した駐車枠線候補および駐車スペース候補の情報から、駐車枠線および駐車スペースを特定する(ステップS1304)。ここでは、抽出した駐車枠候補のうち、隣接する2線の間隔が、予め定めた閾値内であり、かつ、2線の角度差が閾値未満の組を抽出し、駐車領域を構成する駐車枠線の組とする。また、駐車スペース候補は、そのまま、駐車スペースとする。
【0087】
次に、確信度によるフィルタリングを行う(ステップS1305)。ここでは、ステップS1304で特定された駐車枠線および駐車スペースに含まれるグリッドの確信度の平均値を算出する。算出した確信度の平均値が、予め定めた閾値以上の領域を、駐車領域300と決定し(ステップS1306)、処理を終了する。
【0088】
なお、決定した駐車領域300は、そのワールド座標系での座標値を出力部に出力する、なお、さらに、記憶装置113に記憶してもよい。
【0089】
以上説明したように、本実施形態の画像処理装置100は、車載カメラ191で取得した撮影画像を合成し、合成画像(俯瞰画像210)を生成する画像合成部120と、合成画像の色相値を算出し、色相マップを作成するマップ作成部131と、予め定めた期間分の、予め定めた範囲の、予め定めた領域(グリッド)毎の色相マップの色相値を蓄積し、蓄積マップ220を作成する蓄積マップ作成部132と、蓄積マップ220から、駐車枠を抽出する駐車領域抽出部134と、前記駐車枠を出力する出力処理部と、を備える。
【0090】
このように、本実施形態によれば、俯瞰画像210から算出した、色相と明度とを用いて駐車領域を特定する。具体的には、まず、色相を用いて駐車領域候補を検出し、色相が取得できない領域については、その明度を用いて駐車領域候補を検出する。RGBのような輝度値ではないため、曇天時、夜間、屋内等、輝度差が少ない環境においても、精度よく検出することができる。また、色相値を用いて検出するため、色の制約もない。
【0091】
また、色相値、すなわち、色情報が取得できないグレースケールの領域については、補完的に明度値を用いて検出する。このため、さらに幅広く対応ができる。
【0092】
本実施形態の画像処理装置によれば、芝生が用いられていたり、障碍者用の駐車スペース等、特定の色で塗られていたり、ショッピングモール等、エリア別に色分けされている等、多様な駐車場において、駐車領域を適切に抽出できる。
【0093】
さらに、本実施形態によれば、色相、明度を用いて検出した駐車領域候補を、確信度を用いてフィルタリングする。このため、さらに高い精度で駐車領域300を特定できる。
【0094】
これにより、本実施形態によれば、環境によらず、精度よく駐車領域を検出できる。
【0095】
<変形例1>
なお、上記実施形態では、確信度を算出しているが、確信度は算出しなくてもよい。ステップS1304で算出した駐車枠線候補および駐車スペース候補をそのまま駐車枠線、駐車スペースとして決定してもよい。
【0096】
また、確信度は、上記手法以外の手法で決定してもよい。例えば、分散値の逆数、蓄積値の標準偏差の逆数等を用いてもよい。
【0097】
また、ステップS1304で算出した駐車枠線候補および駐車スペース候補をそのまま駐車枠線、駐車スペースと決定し、確信度とともに、記憶するよう構成してもよい。そして、例えば、別の日に、同じ領域で駐車領域抽出処理を行う際、演算処理部130は、確信度が所定未満の場合のみ、抽出処理を行い、確信度が所定以上の場合は、記憶された駐車領域をそのまま用いるよう構成してもよい。
【0098】
<変形例2>
また、上記実施形態では、実空間上(ワールド座標系)での蓄積マップ220の範囲は、車両910の移動に伴って変化しているが、これに限定されない。実空間上で、蓄積マップ220の範囲は固定であってもよい。例えば、
図10にしめすように、車両910が位置Aにいる場合であっても、位置Bにいる場合であっても、蓄積マップ220の範囲は、同じとする。作成する蓄積マップ220の範囲は、予めワールド座標系等で特定しておく。
【0099】
このように構成することで、例えば、駐車場全体のエリアが予めわかっているとき等、駐車場エリアの色相値、明度値を多数蓄積でき、その分、抽出精度も高まる。
【0100】
<変形例3>
また、上記実施形態では、駐車領域抽出部134は、彩色部分の抽出処理の色相変化点の特定および無彩色部分の抽出処理の明度変化点の特定において、蓄積値の平均値を用いている。しかしながら、これに限定されない。例えば、各値取得時の、自車(車両910)とその地点の距離との逆数を重みとした、重みづけ平均を用いてもよい。
【0101】
俯瞰画像210の各画素に対応する距離値(車両910から当該画素に対応する実空間の位置までの距離)は、カメラ191が取得した撮影画像に基づいて算出する。そして、蓄積マップ作成部132は、
図11(a)および
図11(b)に示すように、蓄積マップ220作成時に、各グリッドの距離値を算出し、色相値および明度値とともに、蓄積する。なお、カメラ191以外に、車両910は、必要に応じて、さらに、別途距離センサを搭載してもよい。この場合、画像処理装置100の、マップ作成部131は、この距離センサの出力を用いて、俯瞰画像210の各画素に対応する距離値を算出する。
【0102】
駐車領域抽出部134は、色相変化点、明度変化点を算出する際、当該グリッドの色相値として、この距離蓄積値を用いて、自車(車両910)に近いほど重みを高くした、加重平均を算出する。すなわち、i番目に登録されている距離蓄積値をL_iとすると、重みWiは、1/Liで算出される。この重みを、i番目に登録されている色相値Hiに対して乗算して得た加重平均値を、そのグリッドの値とする。
【0103】
例えば、
図11(a)の例では、L2が自車(車両910)と最も近くなるので、重みW2=1/L2の値が一番大きくなり、この時に取得した色相値H2の重みが一番大きくなる。
【0104】
駐車領域抽出部134は、この加重平均値を各グリッドについて算出し、隣接するグリッドの加重平均値と比較し、色相変化点を特定する。
【0105】
これにより、取得時の距離に応じて重みづけをした値を用いて、各グリッドの色相値の変化を判定できる。したがって、より高い精度で色相変化点、明度変化点を特定することができる。
【0106】
<その他の変形例>
処理中の各閾値は、任意に設定可能である。確信度の増減値は、例えば、ユーザが入力装置114を介して自由に入力可能としてもよい。
【0107】
さらに、輝度による駐車領域の検出も組み合わせてもよい。
【0108】
さらに、本実施形態は、駐車領域検出のみに限定されない。例えば、走行路の白線の検出に用いてもよい。
【0109】
なお、本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。また、上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【0110】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD等の記録装置、または、ICカード、SDカード、光ディスク等の記録媒体に置いてもよい。また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。例えば実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【0111】
100:画像処理装置、111:CPU、112:メモリ、113:記憶装置、114:入力装置、115:出力装置、116:データI/F、120:画像合成部、130:演算処理部、131:マップ作成部、132:蓄積マップ作成部、133:確信度算出部、134:駐車領域抽出部、140:出力処理部、191:車載カメラ、
210:俯瞰画像、210A:マップ、210B:マップ、211:画素、212:画素、220:蓄積マップ、220A:蓄積マップ、220B:蓄積マップ、221:グリッド、222:グリッド、225:グリッド、226:グリッド、227:グリッド、228:グリッド、
300:駐車領域、310:駐車枠線、320:駐車スペース、410:明度増減値テーブル、420:色相増減値テーブル、910:車両