IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日立オートモティブシステムズ株式会社の特許一覧

<>
  • 特許-処理装置及び車載カメラ装置 図1
  • 特許-処理装置及び車載カメラ装置 図2
  • 特許-処理装置及び車載カメラ装置 図3
  • 特許-処理装置及び車載カメラ装置 図4
  • 特許-処理装置及び車載カメラ装置 図5
  • 特許-処理装置及び車載カメラ装置 図6
  • 特許-処理装置及び車載カメラ装置 図7
  • 特許-処理装置及び車載カメラ装置 図8
  • 特許-処理装置及び車載カメラ装置 図9
  • 特許-処理装置及び車載カメラ装置 図10
  • 特許-処理装置及び車載カメラ装置 図11
  • 特許-処理装置及び車載カメラ装置 図12
  • 特許-処理装置及び車載カメラ装置 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-18
(45)【発行日】2023-12-26
(54)【発明の名称】処理装置及び車載カメラ装置
(51)【国際特許分類】
   H04N 23/60 20230101AFI20231219BHJP
   G01C 3/00 20060101ALI20231219BHJP
   G01C 3/06 20060101ALI20231219BHJP
   H04N 23/45 20230101ALI20231219BHJP
【FI】
H04N23/60
G01C3/00 120
G01C3/06 110V
H04N23/45
【請求項の数】 6
(21)【出願番号】P 2020121784
(22)【出願日】2020-07-16
(65)【公開番号】P2022018583
(43)【公開日】2022-01-27
【審査請求日】2023-02-03
(73)【特許権者】
【識別番号】509186579
【氏名又は名称】日立Astemo株式会社
(74)【代理人】
【識別番号】110002572
【氏名又は名称】弁理士法人平木国際特許事務所
(72)【発明者】
【氏名】青木 利幸
(72)【発明者】
【氏名】山崎 和良
(72)【発明者】
【氏名】別井 圭一
(72)【発明者】
【氏名】永崎 健
(72)【発明者】
【氏名】大塚 裕史
(72)【発明者】
【氏名】多田 直也
【審査官】▲徳▼田 賢二
(56)【参考文献】
【文献】特開2017-62198(JP,A)
【文献】特開2017-32280(JP,A)
【文献】特開2013-195783(JP,A)
【文献】特開2010-85186(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 23/60
G01C 3/00
G01C 3/06
H04N 23/45
(57)【特許請求の範囲】
【請求項1】
車載カメラからの距離が異なる複数のマーカを撮像した画像及びモデル化された車両の窓のデータから前記車載カメラの設置ずれを取得し、前記設置ずれを使用して、前記車載カメラの画像を補正するための補正データを変更する処理装置であって、
前記設置ずれとは、前記マーカが存在するチャートに対して前記車載カメラが配置されるべき位置に対する位置ずれである、処理装置。
【請求項2】
前記マーカは、上下方向に前記車載カメラからの距離が異なるよう配置されており、
前記処理装置は、前記マーカの間隔及び距離ずれをもとに前記設置ずれを取得し、
前記設置ずれは、前記車両のピッチ角ずれである、請求項1に記載の処理装置。
【請求項3】
前記マーカは、左右方向に前記車載カメラからの距離が異なるよう配置されており、
前記処理装置は、前記マーカの間隔及び距離ずれをもとに、前記設置ずれを取得し、
前記設置ずれは、前記車両のヨー角ずれである、請求項1に記載の処理装置。
【請求項4】
前記処理装置は、画像上の前記マーカの水平方向及び垂直方向の間隔ずれをもとに、前記窓の水平方向及び垂直方向の拡大率を取得する、請求項1に記載の処理装置。
【請求項5】
前記車両の設置ずれを検出する車両設置ずれ検出部を有し、
前記車両の前記設置ずれ及び前記車載カメラの前記設置ずれをもとに、前記車両に対する前記車載カメラの取付ずれを算出して、前記車載カメラの前記設置ずれ及び前記車載カメラの前記取付ずれを使用して、前記車載カメラの画像を補正するための補正データを変更する、請求項1に記載の処理装置。
【請求項6】
請求項1に記載の処理装置を備えた車載カメラ装置であって、
第1のカメラ及び第2のカメラを有し、
前記処理装置は、
前記第1のカメラが前記マーカを撮像した第1の画像及び前記第2のカメラが前記マーカを撮像した第2の画像を取得し、
前記第1の画像及び前記第2の画像から得られたマーカ間隔ずれ及び位置ずれをもとに、前記第1のカメラ及び前記第2のカメラに関する前記窓の拡大率ずれ、オフセットずれ、及び共通の車両設置ずれを取得し、
前記拡大率ずれ、前記オフセットずれ、及び前記共通の車両設置ずれをもとに、前記第1のカメラ及び前記第2のカメラのための補正データを変更する、車載カメラ装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一または複数のカメラ画像を歪のない画像に補正するデータを算出する処理装置及び車載カメラ装置に関する。
【背景技術】
【0002】
特許文献1の従来技術は、第1カメラと第2カメラを有するステレオカメラを車両に設置した後に、フロントガラス(透明体)を介して撮影した第1カメラの画像を校正する第1カメラの補正パラメータを算出する。次に、第1カメラと第2カメラの被写体の視差ずれを校正する第2カメラの補正パラメータを算出することにより、フロントガラスによる画像のずれを除去する。
【0003】
特許文献2の従来技術は、フロントガラス(透明体)を介在したときと、介在しないときに、被写体をステレオカメラで撮影し、画像上の被写体の座標を求め、それらの座標との差をもとに、画像を構成する補正パラメータを算出する。この補正パラメータをもとに、フロントガラスによる画像のずれを除去する。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2019-132855号公報
【文献】特開2015-169583号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
カメラを取り付けた車両にチャートに対する設置ずれがある場合や、カメラに車両に対する取付ずれがある場合、フロントガラスによる画像のずれとして構成する補正パラメータに、車両の設置ずれ及びカメラの取付ずれによる画像のずれが含まれてしまう。これにより、校正のために撮影した被写体の距離と異なる距離の対象物を撮影したときに、第1カメラと第2カメラの画像上の対象物に垂直方向のずれが発生して、パターン・マッチング処理で対象物の像が正常に一致せず、正確な視差を検出できなくなる。また、第1カメラと第2カメラの画像上の対象物に水平方向のずれが発生して、視差誤差が発生する。このように視差誤差により、対象物の距離が正確に計測できない。
【0006】
本発明の課題は、単眼カメラやステレオカメラを車両に取り付けて、校正のためのマーカを撮影したときに、車両の設置ずれやカメラの取付ずれによるマーカに対するカメラの設置ずれを検出して、この要因による画像のずれの影響を受けないように、ガラスによる画像ずれを校正して、距離を正確に計測する処理装置を提供することである。
【課題を解決するための手段】
【0007】
本発明による処理装置は、車載カメラからの距離が異なる複数のマーカを撮像した画像及びモデル化された車両の窓のデータから前記車載カメラの設置ずれを取得し、前記設置ずれを使用して、前記車載カメラの画像を補正するための補正データを変更する処理装置であって、前記設置ずれとは、前記マーカが存在するチャートに対して前記車載カメラが配置されるべき位置に対する位置ずれである。
【発明の効果】
【0008】
本発明によれば、距離の異なるマーカの画像上の間隔及び位置ずれをもとに、距離に依存しない車両のガラスのモデルの拡大率及びオフセットずれ、距離に依存するマーカとカメラ間位置及び姿勢ずれを検出することができる。そして、カメラ位置に車両設置ずれ及びカメラ取付ずれがあるとして、フロントガラスによる画像のずれを校正するように、画像を補正するデータを変更することにより、1回の撮影だけで車両設置ずれ及びカメラ取付ずれによる画像のずれを除去でき、距離を正確に計測できる。
【図面の簡単な説明】
【0009】
図1】本発明の処理装置及び車載カメラ装置の実施形態を示す図である。
図2】マーカの配置領域の例を示す図である。
図3】本発明の処理装置及び車載カメラ装置の実施形態を示す図である。
図4】処理装置及び車載カメラ装置の動作を示す図である。
図5】補正画像上のマーカの位置を示す図である。
図6】マーカ、ステレオカメラ及び車両の配置を上方から見た例を示す図である。
図7】マーカ、ステレオカメラ及びガラスの配置を側方から見た例を示す図である。
図8】ステレオカメラの動作を示す図である。
図9】2つの撮像系部の補正画像上の視差を算出する例を示す図である。
図10図3に示す処理装置及び車載カメラ装置の変形例を示す図である。
図11図3に示す処理装置及び車載カメラ装置の変形例を示す図である。
図12】カメラの動作を示す図である。
図13】距離計測の対象物が撮影された画像の例を示す図である。
【発明を実施するための形態】
【0010】
(実施形態1)
図1は、本発明の一実施例の形態の画像校正装置の構成を示す図である。図2は、マーカの配置領域の例を示す図である。図3は、本発明の一実施例の形態の画像校正装置のステレオカメラの構成を示す図である。
【0011】
本実施形態の処理装置は、たとえば画像校正装置である。画像校正装置は、フロントガラス112を通さない状態で撮影した画像の歪及びずれを補正するための画像補正データを有しており、車両111が所定の位置121及び所定の姿勢(方向122)からずれた位置及び姿勢(方向123)に設置される。ステレオカメラ104が車両111に対して所定の位置及び姿勢(方向122)からずれた位置及び姿勢(方向124)に取り付けられた状態で、車両111の設置ずれ及びステレオカメラ104の取付ずれの影響を除去して、フロントガラス112による画像ずれを補正するように、画像補正データを変更する。
【0012】
図1及び図3に本発明の画像校正装置の一実施例の構成を示す。ここで、灰色で表示した補正画像記憶部316、視差画像記憶部317、距離検出部330は、画像校正装置に含まれず、立体物の距離を検出するケースで稼働する。これらの動作は後述する。
【0013】
画像校正装置は、複数のマーカ、車両設置ずれ検出部105及びステレオカメラ104を備える。
【0014】
複数のマーカは、図2に示すように、丸の形状を有している。複数のマーカ201は車両の正面に配置され、複数のマーカ202、複数のマーカ203、複数のマーカ204及び複数のマーカ205は、複数のマーカ201に対してそれぞれ左上の手前、右上の手前、左下の手前及び右下の手前に配置されている。ここで、マーカ201、マーカ202、マーカ203、マーカ204及びマーカ205は、それぞれ、チャート206、チャート207、チャート208、チャート209及びチャート210に描かれている。また、マーカ101は、マーカ201を、マーカ102は、マーカ202または204を、マーカ203は、マーカ203またはマーカ205を表している。マーカ201~205の配置は、カメラから異なる距離に配置されていれば、図2に示す以外の配置でも構わない。
【0015】
LiDAR(Light Detection and Ranging)及び演算部などから構成される車両設置ずれ検出部105は、設計通り設置したときの車両の表面形状データ(設計値)及び車両の位置(設計位置)を有しており、車両111の表面位置(計測値)を計測して、車両111の表面形状データの設計値と車両111の表面位置の計測値を照合して、車両111の設計位置からの位置ずれ及び姿勢ずれを検出する。
【0016】
ステレオカメラ104は、車両111に取り付けられており、車両111のフロントガラス112を通して、マーカ201~205を撮影する。また、ステレオカメラ104は、撮像系部300a、撮像系部300b、及び演算部310を備えており、車両位置ずれ検出部105と接続している。
【0017】
カメラなどの撮像系部300aは、光学素子部301a、及び撮像素子部302aを備えている。レンズなどの光学素子部301aは、光を屈折させて、撮像素子部302a上に像を結ぶ。撮像素子などの撮像素子部302aは、光学素子部301aにより屈折した光の像を受光し、その光の強さに応じた画像を生成する。
【0018】
カメラなどの撮像系部300bは、光学素子部301b、及び撮像素子部302bを備えている。また、撮像系部300aと撮像系部300bの焦点距離の設計値は同じである。撮像系部300aと撮像系部300bの光軸の方向は、おおむね同じである。レンズなどの光学素子部301bは、光を屈折させて、撮像素子部302b上に像を結ぶ。撮像素子などの撮像素子部302bは、光学素子部301bにより屈折した光の像を受光し、その光の強さに応じた画像を生成する。
【0019】
撮像系部300aが撮像した画像は、視差画像を作成するときに基準となる画像であるため、基準画像と呼ぶ。また、撮像系部300bが撮像した画像は、視差画像を作成するときに、基準画像から抽出した領域と一致する領域を探索される画像であり、参照画像と呼ぶ。
【0020】
CPU(central processing unit、中央演算処理装置)及びメモリなどの演算部310は、撮像画像記憶部311、画像補正情報記憶部312、校正情報記憶部313、同期信号発生部314、基準画像取込部315a、参照画像取込部315b、画像校正部320、補正画像記憶部316、視差画像記憶部317、ずれ補正記憶部318、及び距離検出部330を備えている。
【0021】
メモリなどの撮像画像記憶部311は、撮像系部300a及び撮像系部300bから出力される画像を格納する。
【0022】
メモリなどの画像補正情報記憶部312は、撮像系部300aの画像及び撮像系部300bの画像について、撮影画像(歪がない画像)上の各画素に対応する補正画像(歪がある撮像後の画像)上の2次元座標(画像補正データ)を格納する。画像補正情報記憶部312は、事前に、フロントガラス112がない状態で求められた撮像系部300a及び撮像系部300bの画像補正データを格納するとともに、画像補正データ変更部が作成した、フロントガラス112越しに歪がない画像に補正する画像補正データを格納する。ここで、歪がない画像とは、ピンホールモデルで透視投影を行った画像である。この画像補正データは、撮像後の画像のレンズ歪みや光軸ずれを補正する処理に用いられ、撮像時の画像の歪を表している。
【0023】
メモリなどの校正情報記憶部313は、撮像系部300a及び撮像系部300bの焦点距離、画素ピッチ、撮影画像上の光軸位置、補正画像上の光軸位置、車両111にずれがないように設置したときのステレオカメラ104に対するマーカ201~205の3次元位置、撮像系部300a及び撮像系部300bにおけるフロントガラス112による画像変形モデルのデータ(ガラス変形データ)の設計値及びそのときの補正画像上の各マーカ画像、フロントガラス112による画像変形のモデルの水平方向及び垂直方向の拡大率及びオフセットずれ、車両設置の位置ずれ及び姿勢ずれ、カメラ取付の位置ずれ及び姿勢ずれが格納されている。
【0024】
ここで、フロントガラス112による画像変形の水平方向及び垂直方向の拡大率及びオフセットずれ量、車両設置の位置ずれ及び姿勢ずれ、カメラ取付の位置ずれ及び姿勢ずれは、画像ずれ要因検出部322で算出されている。フロントガラス112による画像変形の水平方向及び垂直方向の拡大率の初期値は1であり、それ以外の初期値はゼロである。ガラス変形データは、フロントガラス112を通る前の画像上の各画素に対応したフロントガラス112を通った後の画像上の位置の2次元座標である。
【0025】
同期信号発生部314は、同期信号を生成し、発信する。
【0026】
基準画像取込部315aは、同期信号発生部314の同期信号に合わせて、撮像素子部302aに同期信号及び露光時間の情報を送った後に、撮像素子部302aが生成する画像を取得して、画像を撮像画像記憶部311に格納する。
【0027】
参照画像取込部315bは、同期信号発生部314の同期信号に合わせて、撮像素子部302bに同期信号及び露光時間の情報を送った後に、撮像素子部302bが生成する画像を取得して、画像を撮像画像記憶部311に格納する。
【0028】
画像校正部320は、マーカ位置検出部321、画像ずれ要因検出部322、及び画像補正データ変更部323を備えている。
【0029】
マーカ位置検出部321は、画像補正情報記憶部312に事前に格納されている画像補正データ、フロントガラス112による画像変形データの設計値をもとに、フロントガラス112越しの撮影画像を補正する画像補正データを算出して、その画像補正データを用いて、撮像系部300a及び撮像系部300bの撮影画像を補正する。マーカ位置検出部321は、次に、パターン・マッチング処理を行い、校正情報記憶部313に格納されているマーカ画像と、それらの補正画像上のマーカ像に一致させて、補正画像上のマーカ位置(検出位置)を検出する。
【0030】
画像ずれ要因検出部322は、校正情報記憶部313に格納されている撮像系部300a及び撮像系部300bの焦点距離、画素ピッチ、撮影画像上の光軸位置、補正画像上の光軸位置、車両111にずれがないように設置したときのステレオカメラ104に対するマーカの3次元位置、撮像系部300a及び撮像系部300bのガラス変形データの設計値をもとに、車両111にずれがないように設置して、フロントガラス112による画像ずれが設計値通りである場合の補正画像上のマーカ位置(設計位置)を算出する。
【0031】
さらに、画像ずれ要因検出部322は、補正画像上のマーカ201~205の検出位置及び設計位置をもとに、フロントガラス112による画像ずれがステレオカメラ104とマーカ201~205との間の距離に依存しないこと、カメラ設置ずれがステレオカメラ104とマーカ201~205との間の距離に依存することを利用して、フロントガラス112による画像変形の水平方向及び垂直方向の拡大率及びオフセットずれ、カメラ設置ずれを算出する。ここで、カメラ設置ずれはマーカ201~205とステレオカメラ104との間の位置ずれ及び姿勢ずれ(設計箇所からのずれ)である。次に、車両設置ずれ検出部105が検出した車両設置ずれ、画像ずれ要因検出部322が算出したカメラ設置ずれをもとに、カメラ取付ずれを算出する。ここで、カメラ取付ずれは、車両111にステレオカメラ104を取り付けたときの車両111に対するステレオカメラ104の位置ずれ及び姿勢ずれ(設計箇所からのずれ)である。
【0032】
画像補正データ変更部323は、校正情報記憶部313に格納されている撮像系部300a及び撮像系部300bの焦点距離、画素ピッチ、撮影画像上の光軸位置、補正画像上の光軸位置、車両111にずれがないように設置したときのステレオカメラ104に対するマーカ201~205の3次元位置を読み込む。
【0033】
また、画像補正データ変更部323は、画像ずれ要因検出部322が検出したカメラ設置ずれ、カメラ取付ずれ、フロントガラス112のモデルの水平方向及び垂直方向の拡大率、オフセットずれを用いて、カメラ設置ずれによる画像ずれを表すカメラ設置ずれデータ、カメラ取付方向ずれによる画像ずれを表すカメラ取付方向ずれデータ、フロントガラス112のモデルの水平方向及び垂直方向の拡大率、オフセットずれがあるときのガラスずれデータを算出する。
【0034】
また、画像補正データ変更部323は、2次元線形補間を用いて、カメラ取付方向ずれデータによる変換、ガラスずれデータによる変換、ガラス変形データによる変換、カメラ設置ずれデータによる変換、フロントガラス112を通さないときの画像補正データ(撮像時の画像の歪を表す)による変換を画素ごとに順次行う。これにより、画像補正データ変更部323は、カメラ設置ずれによる画素ずれを除去するとともに、車両111の進行方向を向いたときのフロントガラス112越しの画像補正データを基準画像及び参照画像について算出して、これらの画像補正データを画像補正情報記憶部312に格納する。
【0035】
メモリなどの補正画像記憶部316は、画像補正部331が撮像系部300a及び撮像系部300bの画像補正データを用いて、それぞれの撮影画像を補正した補正画像を格納する。メモリなどの視差画像記憶部317は、視差画像を格納する。メモリなどのずれ補正情報記憶部318は、基準画像及び参照画像における縦エッジと横エッジの両方がある領域の位置の時系列データ、消失点位置の設計値、消失点位置データ(検出値)、カメラ取付ずれによる水平方向及び垂直方向の画像ずれを格納する。
【0036】
距離検出部330は、画像補正部331、視差算出部332、認識部333、及びカメラ取付ずれ検出部334を備える。
【0037】
画像補正部331は、画像補正情報記憶部312から読み込んだ基準画像及び参照画像の画像補正データを用いて、撮像画像記憶部311から読み込んだ撮影時の基準画像及び参照画像を、歪のない画像に変換する。これらの補正後の基準画像及び参照画像を補正画像記憶部316に格納する。
【0038】
視差算出部332は、補正画像記憶部316から補正後の基準画像及び参照画像を読み込み、補正後の基準画像上から抽出した所定のサイズの領域(基準領域と呼ぶことにする)に対応する補正後の参照画像上の同じ高さにある領域を探索する。視差算出部332は、基準領域と一致する参照画像上の領域(参照領域と呼ぶことにする)の位置と、基準領域の位置の差すなわち視差を算出する。各基準領域について視差を算出することにより、視差画像を算出する。
【0039】
認識部333は、視差画像記憶部317から視差画像を読み込み、視差、撮像系部300aと撮像系部300bの焦点の距離(基線長)、焦点距離及びの1画素のサイズをもとに、撮像系部300a及び撮像系部300bの光軸方向にステレオカメラ104から画像上の対象物までの距離を算出する。認識部333は、各領域について距離を算出することにより、距離画像を算出する。
【0040】
認識部333は、次に、補正画像記憶部316から補正後の基準画像を読み込み、補正後の基準画像及び距離画像を用いて、基準画像に写っている対象物及び基準画像上の対象物の位置を認識し、ステレオカメラ104に対する対象物の3次元の相対位置及び相対速度を算出する。ここで、ステレオカメラ104に対する3次元の相対位置座標系は、撮像系部300aの入射瞳中心を原点として、撮像系部100aに対して右方向にx座標、下方向にy座標、光軸方向にz座標をとる。また、認識部333は、ステレオカメラ104と対象物の相対位置及び相対速度をもとに衝突までに時間を算出して、所定の時間内に衝突するかどうかを判定する。
【0041】
カメラ取付ずれ検出部334は、補正画像記憶部316から読み込んだ前回と今回の補正後の基準画像について、水平方向及び垂直方向のエッジ画像を作成して、縦エッジ(垂直方向のエッジ)と横エッジ(水平方向のエッジ)を両方含む領域を検出する。次に、カメラ取付ずれ検出部334は、パターン・マッチング処理を行い、今回の補正後の基準画像上の領域に対応する前回の補正後の基準画像上の領域を探索して、縦エッジと横エッジの両方を含む領域の位置の時系列データを求める。
【0042】
さらに、カメラ取付ずれ検出部334は、上記領域の位置の時系列データの近似曲線を複数求め、それらの交点をもとに、基準画像上の消失点の位置(検出値)を検出する。カメラ取付ずれ検出部334は、基準画像上の消失点の位置の検出値と設計値の差をカメラ取付ずれとして、ずれ補正情報記憶部318に格納する。最後に、カメラ取付ずれ検出部334は、画像補正情報記憶部312からを読み込んだ基準画像の画像補正データを、カメラ取付ずれだけ補正して、画像補正情報記憶部312に格納する。参照画像について、同様の処理を行う。
【0043】
図1図3に示す本実施形態のステレオカメラ104の一実施例の動作手順を、図4を用いて説明する。
【0044】
ステップ401:同期信号発生部314は、同期信号を生成して、基準画像取込部315a及び参照画像取込部315bに送る。
【0045】
基準画像取込部315aは、同期信号発生部314からの同期信号を受け取った直後に、撮像素子部302aに同期信号及び露光時間の情報を送る。撮像素子部302aは、基準画像取込部315aからの同期信号及び露光時間の情報を受け取った直後に、光学素子部301aにより屈折した光の像を露光時間だけ受光し、その光の強さに応じた画像を生成して、基準画像取込部315aに画像を送る。基準画像取込部315aは、撮像素子部302aから画像を受け取るとともに、画像を撮像画像記憶部311に格納する。
【0046】
参照画像取込部315bは、同期信号発生部314からの同期信号を受け取った直後に、撮像素子部302bに同期信号及び露光時間の情報を送る。撮像素子部302bは、参照画像取込部315bからの同期信号及び露光時間の情報を受け取った直後に、光学素子部301bにより屈折した光の像を露光時間だけ受光し、その光の強さに応じた画像を生成して、参照画像取込部315bに画像を送る。参照画像取込部315bは、撮像素子部302bから画像を受け取るとともに、画像を撮像画像記憶部311に格納する。
【0047】
ステップ402:マーカ位置検出部321は、撮像画像記憶部311から撮像時の基準画像及び参照画像を、画像補正情報記憶部312から、事前に格納されている基準画像及び参照画像の画像補正データを、校正情報記憶部313から、事前に格納されている基準画像及び参照画像のガラス変形データを、それぞれ読み込む。
【0048】
フロントガラス112を通さないときの基準画像の画像補正テーブル(F12x、F12y)を式(1)及び(2)に示す。ここで、(X1、Y1)は撮影画像(光学素子を通った後)上の位置、(X2、Y2)はフロントガラス112を通さないときの補正画像(光学素子を通る前)上の位置である。
【0049】
X1=F12x(X2、Y2) ・・・(1)
Y1=F12y(X2、Y2) ・・・(2)
【0050】
式(3)及び(4)を用いて、ガラス変形データ(Gx、Gy)をもとに、フロントガラス112を通す前の補正後の基準画像上の位置(X3、Y3)に対応するフロントガラス112を通った後の補正後の基準画像上の位置(X2、Y2)を算出する。
【0051】
X2=Gx(X3、Y3) ・・・(3)
Y2=Gy(X3、Y3) ・・・(4)
【0052】
フロントガラス112を通った後の補正後の基準画像上の位置(X2、Y2)は実数である。そのため、位置(X2、Y2)の近傍にある値が整数となる4つの位置に対して、式(1)及び(2)を用いて、フロントガラス112を通った後の補正後(光学素子を通る前)の基準画像上の位置に対応する撮影後(光学素子を通った後)の基準画像上の位置を求め、2次元線形補間を行う。これにより、フロントガラス112越しの補正後の基準画像上の位置(X3、Y3)に対応する撮影後の基準画像上の位置を算出する。この処理を各画素について行い、撮影画像をフロントガラス112越しの補正画像に変換するための画像補正データ(式(5)及び(6))を算出する。
【0053】
X1=F13x(X3、Y3) ・・・(5)
Y1=F13y(X3、Y3) ・・・(6)
【0054】
この画像補正データを用いて、撮影後の基準画像の位置(X1、Y1)の周辺4画素の輝度値に2次元線形補間を実施することにより、画像補正後の基準画像の画素(X3、Y3)の輝度値を算出する。補正後の基準画像の各画素について上記の手順を実施して、設計通りのフロントガラス112である場合の補正後の基準画像の輝度値を算出する。
【0055】
マーカ位置検出部321は、校正情報記憶部313に格納されている撮像系部300a及び撮像系部300bの焦点距離、画素ピッチ、撮影画像上の光軸位置、補正画像上の光軸位置、車両111にずれがないように設置したときのステレオカメラ104に対するマーカ201~205の3次元位置を読み込む。マーカ位置検出部321は、さらに、これらのパラメータの値をもとに、ステレオカメラ104に設置ずれがなく、フロントガラス112を通さず、光学素子のゆがみがないときの補正画像上のマーカ位置(設計位置)を算出する。
【0056】
次に、マーカ位置検出部321は、校正情報記憶部313に格納されている各マーカ画像を読み込み、マーカ位置の設計の付近における画像補正後の基準画像の輝度値とマーカ画像の輝度値の差の絶対値の和(SAD、Sum of Absolute Difference)を算出する。マーカ位置検出部321は、マーカ201~205の設計位置の付近でSADが最も小さい位置を求める。
【0057】
マーカ位置検出部321は、SADが最も小さい位置の左右の画素のSADをもとに、等角直線フィッティングを行い、画像補正後の基準画像とマーカ画像が最も一致する位置のサブピクセルを算出する。マーカ位置検出部321は、SADが最も小さい水平方向の位置にこのサブピクセルを加算することにより、マーカ201~205の水平方向の位置を算出する。
【0058】
次に、マーカ位置検出部321は、SADが最も小さい位置の上下の画素のSADをもとに、等角直線フィッティングを行い、画像補正後の基準画像とマーカ画像が最も一致する位置のサブピクセルを算出する。SADが最も小さい垂直方向の位置にこのサブピクセルを加算することにより、マーカ201~205の垂直方向の位置を算出する。同様に、他のマーカ201~205についても同様の処理を行い、補正後の基準画像上のマーカ201~205の位置を算出する。以上の処理で検出したマーカ201~205の位置を検出位置と呼ぶことにする。また、このマーカ201~205の検出位置は図5において補正画像501上のマーカ502及びマーカ504に相当する。
【0059】
参照画像についても、以上の画像補正及びマーカ位置検出の処理を行う。
【0060】
ステップ403:画像ずれ要因検出部322は、校正情報記憶部313から撮像系部300a及び撮像系部300bの焦点距離、画素ピッチ、撮影画像上の光軸位置、補正画像上の光軸位置、車両111にずれがないように設置したときのステレオカメラ104に対するマーカ201~205の3次元位置、撮像系部300a及び撮像系部300bのガラス変形データの設計値を読み込む。これらの情報をもとに、画像ずれ要因検出部322は、車両111にずれがないように設置して、フロントガラス112による画像ずれが設計値通りである場合の補正画像上のマーカ201~205の位置(設計位置)を算出する。このマーカ201~205の設計位置は図5において補正画像501上のマーカ503及びマーカ505に相当する。
【0061】
画像ずれ要因検出部322は、上記のように算出した補正画像上のマーカ201~205の設計位置と、ステップ402で検出したマーカ201~205の検出位置をもとに、下記のように、フロントガラス112の拡大率及びカメラ設置ずれなどを推定していく。ここでは、ステレオカメラ104からの距離が異なるマーカ201~205の位置をもとに、フロントガラス112による画像ずれがステレオカメラ104とマーカ201~205間距離に依存しないこと、カメラ設置ずれがステレオカメラ104とマーカ201~205間距離に依存することを利用する。
【0062】
ステップ403:画像ずれ要因検出部322は、ステップ402で求めた補正画像上のマーカ201~205の設計位置及び検出位置をもとに、下記のように、フロントガラス112の拡大率及びカメラ設置ずれなどを推定していく。ここでは、ステレオカメラ104からの距離が異なるマーカ201~205の位置をもとに、フロントガラス112による画像ずれがステレオカメラ104とマーカ201~205間距離に依存しないこと、カメラ設置ずれがステレオカメラ104とマーカ201~205間距離に依存することを利用する。
【0063】
まず、基準画像について、画像ずれ要因検出部322は、補正画像におけるチャート206上のマーカ201の検出位置及び設計位置について、水平方向及び垂直方向に隣り合うマーカ201の間隔の平均を算出する。同様にチャート207~210上のマーカ202~205の検出位置及び設計位置の間隔の平均を算出する。そこで、フロントガラス112による画像ずれがステレオカメラ104とマーカ201~205との間の距離に依存しないこと、カメラ設置ずれがステレオカメラ104とマーカ201~205との間の距離に依存することを利用する。これにより、式(7)から式(10)を用いて、フロントガラス112による水平方向及び垂直方向の拡大率Mgh、Mgv、ステレオカメラ104とマーカ201間距離dLcを算出する。ここで、遠いマーカはマーカ201、近いマーカはマーカ202~205である。
【0064】
Mgh = Mifh Minh (Lf - Ln) / (Minh Lf - Mifh Ln) ・・・(7)
Mgv = Mifv Minv (Lf - Ln) / (Minv Lf - Mifv Ln) ・・・(8)
Mifh = Wifh / Wdfh ・・・(9)
Mifv = Wifv / Wdfv ・・・(10)
Minh = Winh / Wdnh ・・・(11)
Minv = Winv / Wdnv ・・・(12)
dLc = (dLch + dLcv) / 2 ・・・(13)
dLch = (Mifh - Minh) Lf Ln / (Minh Lf - Mifh Ln) ・・・(14)
dLcv = (Mifv - Minv) Lf Ln / (Minv Lf - Mifv Ln) ・・・(15)
・遠いマーカ201とステレオカメラ104との距離の設計値:Lf
・近いマーカ202~205とステレオカメラ104との距離の設計値:Ln
・マーカ201~205とステレオカメラ104との距離ずれ:dLc
・フロントガラス112による水平方向の拡大率:Mgh
・フロントガラス112による垂直方向の拡大率:Mgv
・補正画像上の遠いマーカ201の設計位置の水平方向の間隔の平均:Wdfh
・補正画像上の近いマーカ202~205の設計位置の水平方向の間隔の平均:Wdnh
・補正画像上の遠いマーカ201の設計位置の垂直方向の間隔の平均:Wdfv
・補正画像上の近いマーカ202~205の設計位置の垂直方向の間隔の平均:Wdnv
・補正画像上の遠いマーカ201の検出位置の水平方向の間隔の平均:Wifh
・補正画像上の近いマーカ202~205の検出位置の水平方向の間隔の平均:Winh
・補正画像上の遠いマーカ201の設計位置の検出方向の間隔の平均:Wifv
・補正画像上の近いマーカ202~205の検出位置の垂直方向の間隔の平均:Winv
・補正画像上の遠いマーカ201の間隔の水平方向の拡大率:Mifh
・補正画像上の近いマーカ202~205の間隔の水平方向の拡大率:Minh
・補正画像上の遠いマーカ201の間隔の垂直方向の拡大率:Mifv
・補正画像上の近いマーカ202~205の間隔の垂直方向の拡大率:Minv
【0065】
マーカ202に近い位置にあるチャート206上のマーカ201を遠いマーカとして、マーカ202を近いマーカとして、式(13)~(15)を用いて、画像上の左上にあるマーカ202とステレオカメラ104との間の距離ずれdLcluを算出する。同様の計算を行い、マーカ203~205とステレオカメラ104との間の距離ずれdLcru(画像上の右上)、dLcld(画像上の左下)、dLclu(画像上の右下)を算出する。図6に示すように、ステレオカメラ104の光軸方向601に垂直な水平方向の線602及び線603に対する左右のマーカ間の距離ずれをともに、マーカとステレオカメラ104との間のヨー角ずれを算出できる。そこで、式(16)~式(18)を用いて、マーカとステレオカメラ104との間のヨー角ずれdψcを算出する。
【0066】
dψc = atan((dLcl - dLcr) / Llr) ・・・(16)
dLcl = (dLcul + dLcdl) / 2 ・・・(17)
dLcr = (dLcur + dLcdr) / 2 ・・・(18)
・左側のマーカ202及び204の距離ずれの平均dLcl
・右側のマーカ203及び205の距離ずれの平均dLcr
・左側と右側のマーカ間の距離の設計値の平均Llr
【0067】
図7に示すように、ステレオカメラ104の光軸方向703に垂直な垂直方向の線704及び線705に対する上下のマーカ間の距離ずれをともに、マーカとステレオカメラ104間のピッチ角ずれを算出できる。そこで、式(19)~式(21)を用いて、マーカとステレオカメラ104間のピッチ角ずれdφcを算出する。
【0068】
dφc = atan((dLcd - dLcu) / Lud) ・・・(19)
dLcu = (dLcul + dLcur) / 2 ・・・(20)
dLcd = (dLcdl + dLcdr) / 2 ・・・(21)
・上側のマーカ202及び203とステレオカメラ間の距離ずれの平均:dLcu
・下側のマーカ204及び205とステレオカメラ間の距離ずれの平均:dLcd
・上側と下側のマーカ間の距離の設計値の平均:Lud
【0069】
マーカとステレオカメラ104との間のロール角ずれは、補正画像上の光軸位置(あるいは中心位置)を中心に、マーカの検出位置と設計位置の回転ずれに相当する。そこで、補正画像上の式(22)を用いて、ロール角ずれdθcを算出する。
【0070】
dθc = - atan[Σ{(Vi - Vo)(Ud - Uo) - (Ui - Uo)(Vd - vo)} / Σ{(Ui - Uo)(Ud - Uo) + (Vi - Vo)(Vd - Vo)}] ・・・(22)
・マーカ201~205の各検出位置:(Ui、 Vi)
・マーカ201~205の各設計位置:(Ud、 Vd)
・補正画像上の光軸位置(中心位置):(Uo、 Vo)
【0071】
マーカとステレオカメラ104間の水平方向及び垂直方向の位置ずれは、ステレオカメラ104とマーカとの間の距離に依存するが、フロントガラス112によるオフセットずれはステレオカメラ104とマーカとの間の距離に依存しない。このことを利用して、式(23)~式(26)を用いて、フロントガラス112による水平方向及び主直方向のオフセットずれdUg及びdVg、マーカとステレオカメラ104間の水平方向及び垂直方向の位置ずれdXc及びdYcを算出する。ここで、遠いマーカはマーカ201に、近いマーカはマーカ202~205に相当する。
【0072】
dXc = (dUin - dUif) c Lf Ln / {f (Lf - Ln)} ・・・(23)
dYc = (dVin - dVif) c Lf Ln / {f (Lf - Ln)} ・・・(24)
dUg = (dUin Ln - dUif Lf) / (Lf - Ln) ・・・(25)
dVg = (dVin Ln - dVif Lf) / (Lf - Ln) ・・・(26)
・レンズの焦点距離:f
・撮像素子の画素ピッチ:c
・補正画像上の遠いマーカの水平方向の検出位置と設計位置の差の平均:dUif
・補正画像上の近いマーカの水平方向の検出位置と設計位置の差の平均:dUin
・補正画像上の遠いマーカの垂直方向の検出位置と設計位置の差の平均:dVif
・補正画像上の遠いマーカの垂直方向の検出位置と設計位置の差の平均:dVin
【0073】
基準画像で実施した上記の処理を、参照画像についても実施する。
【0074】
基準画像と参照画像を用いて、算出したステレオカメラ104とマーカ間の水平方向及び垂直方向の位置ずれ、距離ずれ、ピッチ角ずれ、ヨー角ずれ、ロール角ずれの平均を算出する。これらをステレオカメラ104の設置ずれとする。また、以上の算出により、基準画像及び参照画像のフロントガラス112による水平方向及び垂直方向の拡大率及びオフセットずれが求められる。
【0075】
ステップ404:車両設置ずれ検出部105は、車両111にレーザー光を照射して、その反射光の受光時間をもとに車両111の表面の複数箇所までの距離及び受光角度を検出する。それらの距離及び受光角度をもとに、車両111の表面の複数箇所の検出位置に変換する。
【0076】
車両設置ずれ検出部105は、設計通り設置したときの車両111の表面形状データ及び車両111の位置(設計位置)及び姿勢(設計姿勢)を有しており、これらのデータをもとに、車両111の表面の複数箇所の設計位置を算出する。
【0077】
車両111の表面の各箇所の検出位置に最も近い設計位置を探索して、その設計位置を検出位置の対応点と設定する。車両111の表面の各箇所の検出位置(Xvm、 Yvm、 Zvm)及び設計位置(Xvd、 Yvd、 Zvd)をもとに、式(27)~式(32)を用いて、車両111の位置ずれ(dXv、 dYv、 dLv)及び姿勢ずれ(dφv、 dψv、 dθv)を算出する。
【0078】
dXv = Σ(Xvd - Xvm) / Nm ・・・(27)
dYv = Σ(Yvd - Yvm) / Nm ・・・(28)
dLv = Σ(Zvd - Zvm) / Nm ・・・(29)
dφv = - atan[Σ{(Zvm - Zo)(Yvd - Yvo) - (Yvm - Yvo)(Zvd - Zvo)} / Σ{(Yvm - Yvo)(Yvd - Yvo) + (Zvm - Zvo)(Zvd - Zvo)}] ・・・(30)
dψv = - atan[Σ{(Xvm - Xo)(Zvd - Zvo) - (Zvm - Zvo)(Xvd - Xvo)} / Σ{(Zvm - Zvo)(Zvd - Zvo) + (Xvm - Xvo)(Xvd - Xvo)}] ・・・(31)
dθv = - atan[Σ{(Yvm - Yo)(Xvd - Xvo) - (Xvm - Xvo)(Yvd - Yvo)} / Σ{(Xvm - Xvo)(Xvd - Xvo) + (Yvm - Yvo)(Yvd - Yvo)}] ・・・(32)
・計測点の数Nm
・車両111の回転中心(Xvo、 Yvo、 Zvo)
【0079】
上記のように算出した車両111の位置ずれ及び姿勢ずれを、車両111の設計位置及び設計姿勢に加算して、車両111の表面形状データをもとに、再び、車両111の表面の複数箇所の設計位置を算出する。そして、車両111の表面の各箇所の検出位置に最も近い設計位置を探索して、その設計位置を検出位置の対応点と設定して、式(27)~式(32)を用いて、車両111の位置ずれ及び姿勢ずれを算出する処理を繰り返す。式(27)~式(32)で算出したずれの値が所定の閾値よりも小さい場合、処理を終了して、それまでのそれらのずれを加算した値を車両設置の位置ずれ及び姿勢ずれとする。
【0080】
ステップ405:カメラ取付ずれ検出部334は、式(33)~式(38)を用いて、カメラ設置の位置ずれ及び姿勢ずれから車両設置の位置ずれ及び姿勢ずれを引くことにより、カメラ取付の位置ずれ(dXa、 dYa、 dLa)及び姿勢ずれ(dφa、 dψa、 dθa)を算出する。
【0081】
dXa = dXc - dXv ・・・(33)
dYa = dYc - dYv ・・・(34)
dZa = dZc - dZv ・・・(35)
dφa = dφc - dφv ・・・(36)
dψa = dψc - dψv ・・・(37)
dθa = dθc - dθv ・・・(38)
【0082】
ステップ406:画像補正データ変更部323は、校正情報記憶部313に格納されている撮像系部300a及び撮像系部300bの焦点距離、画素ピッチ、撮影画像上の光軸位置、補正画像上の光軸位置、車両111にずれがないように設置したときのステレオカメラ104に対するマーカの3次元位置を読み込む。画像補正データ変更部323は、これらのパラメータの値をもとに、ステレオカメラ104に設置ずれがなく、フロントガラス112を通さず、光学素子の歪がないときの補正画像上のマーカ位置(設計位置)を算出する。
【0083】
画像補正データ変更部323は、画像ずれ要因検出部322が算出したステレオカメラ104の設置の位置ずれ及び姿勢ずれをもとに、フロントガラス112を通さないときの補正画像上のマーカ位置を算出する。画像補正データ変更部323は、これらの2つの補正画像上のマーカ位置の変化をもとに、カメラ設置ずれによる画像ずれを表すカメラ設置ずれデータを作成する。
【0084】
次に、画像補正データ変更部323は、画像ずれ要因検出部322が算出したステレオカメラ104設置の位置ずれ及び姿勢ずれがある状態から、車両111の進行方向に対するカメラの取付方向のずれだけがない(除去された)ときの補正画像上のマーカ位置を算出する。そして、画像補正データ変更部323は、ステレオカメラ設置ずれがあるときと、そこから車両111の進行方向に対するカメラの取付方向ずれをなくしたときの補正画像上のマーカ位置をもとに、カメラ取付方向ずれデータを算出する。
【0085】
画像補正データ変更部323は、画像ずれ要因検出部322が算出したフロントガラス112のモデルの水平方向及び垂直方向の拡大率、オフセットずれがあるときのガラスずれデータを算出する。画像補正データ変更部323は、ステップ402に示すような2次元線形補間を用いて、カメラ取付方向ずれデータによる変換、ガラスずれデータによる変換、ガラス変形データによる変換、カメラ設置ずれデータによる変換、フロントガラス112を通さないときの画像補正データ(光学素子による歪を表す)による変換を画素ごとに順次行う。
【0086】
これにより、画像補正データ変更部323は、カメラ設置ずれによる画素ずれを除去するとともに、車両111の進行方向を向いたときのフロントガラス112越しの画像補正データを基準画像及び参照画像について算出する。画像補正データ変更部323は、これらの画像補正データを画像補正情報記憶部312に格納する。
【0087】
図3に示す本実施形態のステレオカメラ104は、車両111が走行している間、図8に示す動作を行うことにより、作成した画像補正データを用いて、立体物の距離を検出するとともに、カメラ取付ずれを検出して、画像補正データを変更する。
【0088】
ステップ801:同期信号発生部314は、同期信号を生成して、基準画像取込部315a及び参照画像取込部315bに送る。
【0089】
基準画像取込部315aは、同期信号発生部314からの同期信号を受け取った直後に、撮像素子部302aに同期信号及び露光時間の情報を送る。撮像素子部302aは、基準画像取込部315aからの同期信号及び露光時間の情報を受け取った直後に、光学素子部301aにより屈折した光の像を露光時間だけ受光し、その光の強さに応じた画像を生成して、基準画像取込部315aに画像を送る。基準画像取込部315aは、撮像素子部302aから画像を受け取るとともに、画像を撮像画像記憶部311に格納する。
【0090】
参照画像取込部315bは、同期信号発生部314からの同期信号を受け取った直後に、撮像素子部302bに同期信号及び露光時間の情報を送る。撮像素子部302bは、参照画像取込部315bからの同期信号及び露光時間の情報を受け取った直後に、光学素子部301bにより屈折した光の像を露光時間だけ受光し、その光の強さに応じた画像を生成して、参照画像取込部315bに画像を送る。参照画像取込部315bは、撮像素子部302bから画像を受け取るとともに、画像を撮像画像記憶部311に格納する。
【0091】
ステップ802:画像補正部331は、撮像画像記憶部311から撮像後の基準画像及び参照画像を読み込む。画像補正部331は、画像補正情報記憶部312から基準画像及び参照画像の画像補正データを読み込む。
【0092】
式(39)及び式(40)を用いて、補正後の基準画像上の各画素に対応する撮像後の画像上の座標(Fx(X4、Y4)、Fy(X4、Y4))をもとに、補正後の基準画像の画素(X4、Y4)に対応する撮像後の基準画像の位置(X1、Y1)を算出する。
【0093】
X1=Fx(X4、Y4) ・・・(39)
Y1=Fy(X4、Y4) ・・・(40)
【0094】
基準画像の位置(X1、Y1)の周辺4画素の輝度値を、2次元線形補間を実施することにより、補正後の基準画像の画素(X4、Y4)の輝度値を算出する。補正後の基準画像の各画素について上記の手順を実施して、補正後の基準画像の輝度値を算出する。また、参照画像についても上記の手順を実施して、参照画像の補正画像の輝度値を算出する。補正後の基準画像及び参照画像を補正画像記憶部316に格納する。
【0095】
ステップ803:視差算出部332は、補正画像記憶部316から基準画像及び参照画像の補正画像を読み込む。視差算出部332は、図9に示すように、補正後の基準画像901の所定のサイズの領域903(基準領域と呼ぶことにする)を抽出する。視差算出部332は、補正後の参照画像902で基準領域903と同じ対象物が写っている領域の画像を以下のパターン・マッチングで探索する。
【0096】
視差算出部332は、基準画像903と同じ高さにある参照画像902の所定のサイズの領域904(参照領域)を抽出して、基準領域903の輝度値と参照領域904の輝度値の差の絶対値の和(SAD、Sum of Absolute Difference)を算出する。視差算出部332は、基準領域903と同じ高さにある参照画像902上の各参照領域904についてSADを算出して、SADが最も小さい値の参照領域905を探索する。視差算出部332は、参照領域905のSAD及び参照領域905から1画素の左右隣の参照領域のSADを用いて、等角直線フィッティングを行い、基準領域903と最も一致する参照画像上の参照領域905のサブピクセルを算出する。視差算出部332は、基準領域903と参照領域905の位置の差にサブピクセルを加算することにより、補正後の基準画像901上の基準領域903の視差を算出する。
【0097】
視差算出部332は、このような処理を画像補正後の基準画像901上の全ての領域について実施して、基準画像901の全体での視差を算出する。視差算出部332は、このようにして算出した視差画像を視差画像記憶部317に格納する。
【0098】
ステップ804:認識部333は、視差画像記憶部317から視差画像を読み込む。
【0099】
認識部333は、式(41)を用いて、視差画像上の領域におけるステレオカメラ104との光軸方向の距離Lを算出する。ここで、fは撮像系部300a及び撮像系部300bの焦点距離の設計値、Bは撮像系部300aと撮像系部300bの主点間の距離(基線長)、dは視差、cは撮像素子部302a及び撮像素子部302bの画素ピッチである。
【0100】
L=f×B/(d×c) ・・・(41)
【0101】
認識部333は、この処理を視差画像の全ての領域について実施して、視差画像全体におけるステレオカメラ104との光軸方向の距離を算出して、距離画像を作成する。
【0102】
認識部333は、式(42)~式(44)を用いて、距離画像上の領域における3次元位置を算出する。ここで、3次元座標系は、ステレオカメラ104の撮像系部300aの光学素子部301aの主点から垂直に下した路面上の点を原点として、右方向にX座標を、上方向にY座標を、進行方向にZ座標をとる。また、(U、V)は、距離画像上の各位置、(U0、V0)は、基準画像上の光軸位置、Hは路面からのステレオカメラ104の取付高さである。
【0103】
X=L×c×(U-U0)/f ・・・(42)
Y=H+L×c×(V-V0)/f ・・・(43)
Z=L ・・・(44)
【0104】
認識部333は、この処理を視差画像の全ての領域について実施して、視差画像全体で3次元位置を算出する。
【0105】
認識部333は、距離画像上で距離の比率が処理の閾値以内であり、隣接する領域を検出して、その領域の面積が閾値以上であり、それらの領域の路面からの高さ(Y座標)が閾値以上である場合、立体物であると推定する。
【0106】
ステップ805:カメラ取付ずれ検出部334は、補正画像記憶部316から、前回及び今回の処理で作成した補正後の基準画像を読み込む。カメラ取付ずれ検出部334は、前回と今回の補正後の基準画像について、水平方向及び垂直方向のエッジ画像を作成する。カメラ取付ずれ検出部334は、これらのエッジ画像上の所定のサイズの領域内に縦エッジと横エッジが両方存在する領域を検出する。カメラ取付ずれ検出部334は、パターン・マッチング処理を用いて、この領域に一致する前回の補正後の基準画像上の領域を探索する。
【0107】
カメラ取付ずれ検出部334は、前回と今回の補正画像上に一致するエッジを検出した場合、前回と今回のエッジ位置を検出して、ずれ補正情報記憶部318に、検出した前回のエッジ位置と一致するエッジ位置に今回のエッジ位置を追加して、格納する。カメラ取付ずれ検出部334は、前回と今回の補正画像上に一致するエッジがない場合、今回のエッジ位置を新たにずれ補正情報記憶部318に格納する。このように、カメラ取付ずれ検出部334は、エッジの時系列位置を格納していく。
【0108】
カメラ取付ずれ検出部334は、あるエッジ位置の時系列データの数が所定の閾値以上である場合、エッジ一致の時系列データを結んだ近似直線を求める。カメラ取付ずれ検出部334は、縦エッジと横エッジの両方を含む各領域についてこの処理を実施する。カメラ取付ずれ検出部334は、これらの近似直線の組合せごとの画像上の交点の位置を求めて、それらの交点の位置を平均する。
【0109】
カメラ取付ずれ検出部334は、交点の位置の平均値が設計上の消失点位置から閾値以内の距離である場合、直進していると判定して、交点の位置の平均値を消失点位置として、消失点位置データの数を一つ増やして、ずれ補正情報記憶部318に格納する。カメラ取付ずれ検出部334は、交点の位置の平均値が設計上の消失点位置から閾値以上の距離である場合、旋回中であると判定して、その消失点位置データが正しく検出されていないと判定して、破棄する。
【0110】
カメラ取付ずれ検出部334は、ずれ補正情報記憶部318に格納されている消失点位置データの数が所定の閾値以上である場合、ずれ補正情報記憶部318に格納されている消失点位置データを平均して、消失点位置の検出値を求め、消失点位置の検出値と設計値の差を、カメラ取付ずれによる水平方向及び垂直方向の画像ずれとする。
【0111】
カメラ取付ずれ検出部334は、参照画像について、上記の処理を行う。基準画像及び参照画像におけるカメラ取付ずれによる水平方向及び垂直方向の画像ずれの平均を算出して、ずれ補正情報記憶部318に格納する。
【0112】
ステップ806:カメラ取付ずれ検出部334は、画像補正情報記憶部312から基準画像の画像補正データを、ずれ補正情報記憶部318からカメラ取付ずれによる水平方向及び垂直方向の画像ずれを読み込む。カメラ取付ずれ検出部334は、ステップ402に示すような2次元線形補間を用いて、基準画像の画像補正データによる変換、カメラ取付ずれによる水平方向及び垂直方向の画像ずれを補正する変換を各画素ごとに順次行う。これにより、カメラ取付ずれ検出部334は、カメラ取付ずれを除去する画像補正データを算出する。
【0113】
カメラ取付ずれ検出部334は、参照画像について、上記の処理を行う。カメラ取付ずれ検出部334は、このように算出した基準画像及び参照画像の画像補正データを画像補正情報記憶部312に格納する。
【0114】
車両111にステレオカメラ104を取り付けるときに、車両設置ずれやステレオカメラ取付ずれがあると、フロントガラス112による画像ずれと区別できない。すると、車両設置ずれやステレオカメラ取付ずれによる画像ずれがフロントガラス112による画像ずれに含まれ、変更された画像補正データに誤差が発生する。そして、マーカと異なる距離にある対象物の補正後の基準画像と参照画像に水平方向及び垂直方向の画像ずれが発生する。そして、この垂直方向の画像ずれにより、パターン・マッチング処理で基準画像と参照画像の領域が一致せず、正常に視差を算出できなくなる。また、仮に垂直ずれが補正されたとしても、水平方向の画像ずれにより、視差誤差が発生する。
【0115】
本実施形態によれば、距離の異なるマーカの画像上の間隔及び位置ずれをもとに、距離に依存しない車両111のガラスのモデルの拡大率及びオフセットずれ、距離に存するマーカとカメラ間位置及び姿勢ずれを検出する。そして、カメラ位置に車両設置ずれ及びカメラ取付ずれがあるとして、フロントガラス112による画像のずれを校正するように、画像を補正するデータを変更する。これにより、1回の撮影だけで車両設置ずれ及びカメラ取付ずれによる画像のずれを除去でき、距離を正確に計測できる。
【0116】
図3に示す本実施形態によれば、車両111が走行する間、図8に示す動作手順のステップ805及びステップ806において、カメラ取付ずれ検出部334が、補正画像上の消失点位置(検出位置)を検出する。そして、カメラ取付ずれ検出部334が、消失点の設計位置の差をもとに、カメラ取付ずれによる水平方向及び垂直方向の画像ずれとして、それらを補正するように、画像補正データを変更する。これにより、経年的に発生するステレオカメラ104の設置ずれや変形などによる補正ずれを補正できる。
【0117】
なお、本発明の処理装置及び車載カメラ装置は、上述の実施形態に限定されるものではなく、様々に変形して適用することができる。以下では、本発明の処理装置及び車載カメラ装置の実施形態の変形例について説明する。
【0118】
(変形例1-1)(画像校正の処理を計算部で実施する実施形態)
図1及び図10に本発明の処理装置及び車載カメラ装置の一実施形態の構成を示す。本変形例は、図1及び図3に示す処理装置及び車載カメラ装置の一実施形態において、ステレオカメラ104から校正情報記憶部313、画像校正部320を外して、新たに追加した計算部106(1000)に校正情報記憶部313、画像校正部320が備えられている。
【0119】
計算部106(1000)はステレオカメラ104及び車両設置ずれ検出部105と接続されている。各部の動作は、図1及び図3に示す処理装置及び車載カメラ装置の実施形態と同様である。このように、ステレオカメラ104から校正情報記憶部313、画像校正部320を外すことにより、画像校正処理を行う実行ファイルをステレオカメラ104から除去でき、ステレオカメラ104内で使用するメモリ量を削減できる。また、新たに追加した計算部106(1000)は、車両111に取り付ける工程に専用に設置されるものであり、計算部106(1000)の演算処理能力はステレオカメラ104よりも速い。このため、画像校正処理にかかる時間を短縮でき、時間当たりに画像を校正できる台数を増加できる。
【0120】
(変形例1-2)(カメラ設置ずれのみの検出)
本変形例は、図1及び図3に示す本発明の処理装置及び車載カメラ装置の実施形態において、車両設置ずれ検出部105を削除する。また、図4に示す動作手順におけるステップ404及びステップ405を実施しない。さらに、ステップ406において、カメラ取付方向ずれデータによる変換、ガラスずれデータによる変換、ガラス変形データによる変換、カメラ設置ずれデータによる変換、フロントガラス112を通さないときの画像補正データ(光学素子による歪を表す)による変換を各画素ごとに順次行う代わりに、ガラスずれデータによる変換、ガラス変形データによる変換、カメラ設置ずれデータによる変換、フロントガラス112を通さないときの画像補正データ(光学素子による歪を表す)による変換を各画素ごとに順次行う。
【0121】
これにより、車両設置ずれ検出部105を備えなくても、車両設置ずれによるステレオカメラ104の設置ずれによる補正誤差を画像補正データから除去できる。この変形例では、ステレオカメラ取付ずれによる画像上の消失点位置に誤差が生じるが、図8に示す動作手順のステップ805及びステップ806において、カメラ取付ずれを検出して、それによる画像ずれを補正する画像補正データを算出することにより、ステレオカメラ取付ずれによる画像ずれを補正できる。
【0122】
(変形例1-3)(マーカ中心の位置を検出する実施形態)
本変形例では、図1及び図3に示す本発明の処理装置及び車載カメラ装置の実施形態において、校正情報記憶部313は、補正画像上の各マーカ画像を格納しない。また、ステップ402で、マーカ画像を用いて、パターン・マッチング処理を行い、特徴点位置を検出する代わりに、画像補正後の基準画像及び参照画像において、所定の輝度値以下の画素を1とし、それ以外の画素を0と設定する二値化処理を行い、二値化した画像上の各マーカの重心位置を算出することにより、マーカの位置を検出する。これにより、マーカ画像を予め作成して、記憶させる作業を低減できる。
【0123】
(変形例1-4)(単眼カメラの画像校正装置)
本変形例では、図1及び図3に示す本発明の処理装置及び車載カメラ装置の実施形態において、図1に示すステレオカメラ104を単眼カメラ104に変更して、図3に示すステレオカメラの代わりに、図11に示す単眼カメラを備え、図8に示す走行時の動作手順の代わりに、図12に示す動作手順を行うとともに、図4及び図12に示す動作手順において、各部は、撮像系部300a及び撮像系部300bの画像に関する処理を行う代わりに、撮像系部1000の画像に関する処理を行う。
【0124】
図1及び図11に本発明の画像校正装置の一実施例の構成を示す。ここで、灰色で表示した補正画像記憶部316、距離検出部330は、本実施形態に含まれず、立体物の距離を検出するケースで稼働する。これらの動作を後述する。
【0125】
単眼カメラは、車両111に取り付けられており、車両111のフロントガラス112を通して、マーカ201~205を撮影する。また、単眼カメラは、撮像系部1000と演算部210を備えており、車両設置ずれ検出部105と接続している。
【0126】
カメラなどの撮像系部1000は、光学素子部1001と撮像素子部1002を備えている。レンズなどの光学素子部1001は、光を屈折させて、撮像素子部1002上に像を結ぶ。撮像素子などの撮像素子部1002は、光学素子部1001により屈折した光の像を受光し、その光の強さに応じた画像を生成する。
【0127】
CPU(central processing unit、中央演算処理装置)及びメモリなどの演算部310は、撮像画像記憶部311、画像補正情報記憶部312、校正情報記憶部313、補正画像記憶部316、ずれ補正記憶部318、画像取込部1015、画像校正部320、距離検出部1030を備えている。
【0128】
距離検出部1030は、画像補正部331、認識部1032、立体物距離検出部1033、カメラ取付ずれ検出部334を備えている。
【0129】
メモリなどの撮像画像記憶部311、画像補正情報記憶部312、校正情報記憶部313、補正画像記憶部316、ずれ補正記憶部318は、撮像系部300a及び撮像系部300bの情報の代わりに、撮像系部1000の情報を記憶する。
【0130】
画像取込部1015は、撮像素子部1002が生成する画像を取得して、画像を撮像画像記憶部311に格納する。
【0131】
マーカ位置検出部321、画像ずれ要因検出部322、画像補正データ変更部323、画像補正部331、カメラ取付ずれ検出部334は、撮像系部300a及び撮像系部300bの画像に関する処理を行う代わりに、撮像系部1000の画像に関する同様の処理を行う。
【0132】
認識部1032は、画像補正部331が補正した画像における各領域で車両111の特徴量を算出して、車両111の特徴と一致する領域を検出する。また、認識部1032は、補正後の画像における各領域で歩行者の特徴量を算出して、歩行者の特徴と一致する領域を検出する。
【0133】
立体物距離検出部1033は、車両111の領域及び歩行者の領域の下部の位置を、路面と接する位置として、路面と接する位置をもとに、車両111及び歩行者の距離を算出する。
【0134】
図1及び図11に示す本変形例は、図4に示す動作手順で動作する。ここで、ステップ401では、下記の処理を行うとともに、マーカ位置検出部321、画像ずれ要因検出部322、画像補正データ変更部323は、撮像系部300a及び撮像系部300bの画像に関する処理を行う代わりに、撮像系部1000の画像に関する処理を行うことにより、カメラ設置ずれ、車両設置ずれ、カメラ取付ずれ、フロントガラス112の水平方向及び垂直方向の拡大率を検出する。
【0135】
ステップ401:画像取込部1015は、撮像素子部1002に撮像信号及び露光時間の情報を送る。撮像素子部1002は、画像取込部1015からの撮像信号及び露光時間の情報を受け取った直後に、光学素子部1001により屈折した光の像を露光時間だけ受光し、その光の強さに応じた画像を生成して、画像取込部1015に画像を送る。画像取込部1015は、撮像素子部1002から画像を受け取るとともに、画像を撮像画像記憶部311に格納する。
【0136】
図1及び図11に示す本変形例の単眼カメラの実施形態は、図8に示す動作手順の代わりに、図12に示す動作手順を行うことにより、立体物の距離を検出するとともに、カメラ取付ずれを検出して、画像補正データを変更する。ここで、ステップ801では、同期信号発生部を使わない変形例1-4のステップ401(上述)と同じ処理を行う。また、ステップ802及びステップ805~806では、撮像系部300a及び撮像系部300bの画像に関する処理を行う代わりに、撮像系部1000の画像に関する同様の処理を行うため、それらのステップの説明を省略して、ステップ1103及びステップ1104のみの説明を示す。
【0137】
ステップ1103:認識部1032は、補正画像記憶部316に格納されている補正後の画像を読み込む。補正後の画像1201における各領域で車両111の特徴量を算出して、図13に示すように、車両111の特徴と一致する領域1202を検出する。また、認識部1032は、補正後の画像1201における各領域で歩行者の特徴量を算出して、歩行者の特徴と一致する領域1203を検出する。
【0138】
ステップ1104:立体物距離検出部1034は、車両111の領域1202及び歩行者の領域1203の下部の位置を、路面と接する位置として、路面と接する位置をもとに、車両111及び歩行者の距離を算出する。
【0139】
車両111に単眼カメラを取り付けるときに、車両設置ずれや単眼カメラ取付ずれがあると、フロントガラス112による画像ずれと区別できず、車両設置ずれや単眼カメラ取付ずれによる画像ずれがフロントガラス112による画像ずれに含まれ、変更された画像補正データに誤差が発生して、マーカと異なる距離にある対象物の補正後の画像に水平方向及び垂直方向の画像ずれが発生して、この垂直方向の画像ずれにより、それらの距離に誤差が発生する。
【0140】
変形例1-4では、距離の異なるマーカの画像上の間隔及び位置ずれをもとに、距離に依存しない車両111のフロントガラス112のモデルの拡大率及びオフセットずれ、距離に存するマーカとカメラ間位置及び姿勢ずれを検出する。そして、カメラ位置に車両設置ずれ及びカメラ取付ずれがあるとして、フロントガラス112による画像のずれを校正するように、画像を補正するデータを変更することにより、1回の撮影だけで車両設置ずれ及びカメラ取付ずれによる画像のずれを除去でき、距離を正確に計測できる。
【0141】
なお、変形例1-4の単眼カメラは、上術の実施形態に限定されるものではなく、変形例1-1~変形例1-3に示すように、様々に変形して適用することができ、同様の効果が得られる。
【0142】
以上、図面を用いて本開示に係る処理装置及び車載カメラ装置の実施形態を詳述してきたが、具体的な構成はこの実施形態に限定されるものではなく、本開示の要旨を逸脱しない範囲における設計変更等があっても、それらは本開示に含まれるものである。
【符号の説明】
【0143】
101…マーカ、102…マーカ、103…マーカ、104…ステレオカメラ、105…車両設置ずれ検出部、106…計算部、111…車両、112…フロントガラス、121…所定の車両の位置、122…所定の車両の姿勢(方向)、123…車両の姿勢(方向)、124…ステレオカメラの姿勢(方向)、201…マーカ、202…マーカ、203…マーカ、204…マーカ、205…マーカ、206…チャート、207…チャート、208…チャート、209…チャート、210…チャート、300b…撮像系部、301a…光学素子部、301b…光学素子部、302a…撮像素子部、302b…撮像素子部、310…演算部、311…撮像画像記憶部、312…画像補正情報記憶部、313…校正情報記憶部、314…同期信号発生部、315a…基準画像取込部、315b…参照画像取込部、316…補正画像記憶部、317…視差画像記憶部、318…ずれ補正情報記憶部、320…画像校正部、321…マーカ位置検出部、322…画像ずれ要因検出部、323…画像補正データ変更部、330…距離検出部、331…画像補正部、332…視差算出部、333…認識部、334…カメラ取付ずれ検出部、501…補正画像、502…マーカの検出位置、503…マーカの設計位置、504…マーカの検出位置、マーカの設計位置、601…光軸方向、602…光軸方向に垂直な水平方向の線、603…光軸方向に垂直な水平方向の線、701…マーカ、702…マーカ、703…光軸方向、704…光軸方向に垂直な垂直方向の線、705…光軸方向に垂直な垂直方向の線、901…補正後の基準画像、902…補正後の参照画像、903…基準領域、904…参照領域、905…基準領域に最も一致する参照領域、1000…計算部、1000…撮像系部、1001…光学素子部、1002…撮像素子部、画像取得部…1015、1030…距離検出部、1032…認識部、1033…立体物距離検出部、1201…補正画像、1202…車両、1203…歩行者
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13