特許第5959311号(P5959311)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 富士通テン株式会社の特許一覧

<>
  • 特許5959311-データ導出装置、及び、データ導出方法 図000012
  • 特許5959311-データ導出装置、及び、データ導出方法 図000013
  • 特許5959311-データ導出装置、及び、データ導出方法 図000014
  • 特許5959311-データ導出装置、及び、データ導出方法 図000015
  • 特許5959311-データ導出装置、及び、データ導出方法 図000016
  • 特許5959311-データ導出装置、及び、データ導出方法 図000017
  • 特許5959311-データ導出装置、及び、データ導出方法 図000018
  • 特許5959311-データ導出装置、及び、データ導出方法 図000019
  • 特許5959311-データ導出装置、及び、データ導出方法 図000020
  • 特許5959311-データ導出装置、及び、データ導出方法 図000021
  • 特許5959311-データ導出装置、及び、データ導出方法 図000022
  • 特許5959311-データ導出装置、及び、データ導出方法 図000023
  • 特許5959311-データ導出装置、及び、データ導出方法 図000024
  • 特許5959311-データ導出装置、及び、データ導出方法 図000025
  • 特許5959311-データ導出装置、及び、データ導出方法 図000026
  • 特許5959311-データ導出装置、及び、データ導出方法 図000027
  • 特許5959311-データ導出装置、及び、データ導出方法 図000028
  • 特許5959311-データ導出装置、及び、データ導出方法 図000029
  • 特許5959311-データ導出装置、及び、データ導出方法 図000030
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5959311
(24)【登録日】2016年7月1日
(45)【発行日】2016年8月2日
(54)【発明の名称】データ導出装置、及び、データ導出方法
(51)【国際特許分類】
   G06T 3/00 20060101AFI20160719BHJP
   B60R 1/00 20060101ALI20160719BHJP
【FI】
   G06T3/00 710
   B60R1/00 A
【請求項の数】4
【全頁数】20
(21)【出願番号】特願2012-119374(P2012-119374)
(22)【出願日】2012年5月25日
(65)【公開番号】特開2013-246606(P2013-246606A)
(43)【公開日】2013年12月9日
【審査請求日】2015年3月31日
(73)【特許権者】
【識別番号】000237592
【氏名又は名称】富士通テン株式会社
(72)【発明者】
【氏名】藤岡 稔
(72)【発明者】
【氏名】生田目 慎也
【審査官】 ▲広▼島 明芳
(56)【参考文献】
【文献】 特開2009−267603(JP,A)
【文献】 特開2011−228857(JP,A)
【文献】 特開2007−158695(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 3/00
B60R 1/00
(57)【特許請求の範囲】
【請求項1】
カメラに関するデータを導出するデータ導出装置であって、
2つのマークを前記カメラで撮影して得られた撮影画像中の前記2つのマークそれぞれのマーク像の位置を特定する特定手段と、
前記2つのマーク像の位置に基づいて、前記カメラの設計上の第1ディストーションに基づく設計像高を基準とした、前記撮影画像中の被写体像の実際の像高の誤差率を導出する第1導出手段と、
前記誤差率と前記第1ディストーションとに基づいて、前記カメラの実際の第2ディストーションを導出する第2導出手段と、
を備え
前記第1導出手段は、前記撮影画像中の前記2つのマーク像の位置に基づいて導出される前記2つのマークの相互間の導出距離と、前記2つのマークの相互間の実際の実距離との比較結果に基づいて、前記誤差率を導出することを特徴とするデータ導出装置。
【請求項2】
請求項1に記載のデータ導出装置において、
前記第2ディストーションと、前記2つのマークを前記カメラで撮影して得られた撮影画像とに基づいて、前記カメラの設置に関する設置パラメータを取得する取得手段、
をさらに備えることを特徴とするデータ導出装置。
【請求項3】
請求項1または2に記載のデータ導出装置において、
前記データ導出装置は、車両に搭載された複数のカメラそれぞれの前記第2ディストーションを導出するものであり、
前記複数のカメラそれぞれで得られた撮影画像と、前記複数のカメラそれぞれの前記第2ディストーションとを用いて、仮想視点からみた前記車両の周辺の様子を示す合成画像を生成する生成手段、
をさらに備えることを特徴とするデータ導出装置。
【請求項4】
カメラに関するデータを導出するデータ導出方法であって、
(a)2つのマークを前記カメラで撮影して得られた撮影画像中の前記2つのマークそれぞれのマーク像の位置を特定する工程と、
(b)前記2つのマーク像の位置に基づいて、前記カメラの設計上の第1ディストーションに基づく設計像高を基準とした、前記撮影画像中の被写体像の実際の像高の誤差率を導出する工程と、
(c)前記誤差率と前記第1ディストーションとに基づいて、前記カメラの実際の第2ディストーションを導出する工程と、
を備え
前記工程(b)は、前記撮影画像中の前記2つのマーク像の位置に基づいて導出される前記2つのマークの相互間の導出距離と、前記2つのマークの相互間の実際の実距離との比較結果に基づいて、前記誤差率を導出することを特徴とするデータ導出方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カメラに関するデータを導出する技術に関する。
【背景技術】
【0002】
カメラで得られた撮影画像中においては、ディストーション(歪曲収差)と呼ばれる被写体の像が歪む現象が生じる。特に魚眼レンズを用いたカメラで得られた撮影画像においては、比較的大きなディストーションが生じる。
【0003】
このようなカメラのディストーションは、例えば、非特許文献1に記載されたZhangの手法などによって求めることができる。Zhangの手法においては、格子状に配列された多数のマークをカメラで撮影し、得られた撮影画像に含まれる多数のマークの像の位置に基づいてカメラのディストーションを求めるようになっている。
【0004】
なお、本発明に関連する技術を開示する先行技術文献として以下の特許文献1がある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特許第4803449号公報
【非特許文献】
【0006】
【非特許文献1】"A flexible new technique for camera calibration". IEEE Transactions on Pattern Analysis and Machine Intelligence, 22(11):1330-1334, 2000.
【発明の概要】
【発明が解決しようとする課題】
【0007】
ところで、カメラのディストーションの特性は、被写体からの光の入射角と、当該被写体の像の像高(画像中心からの距離)との関係で表すことができる。このようなカメラのディストーションの特性は設計によって定められるものである。しかしながら、カメラの実際のディストーションは、製造誤差等に起因してカメラごとに相違しており、設計上のディストーションとは異なっている。
【0008】
近年、車両に複数のカメラを設け、これら複数のカメラで得られた複数の撮影画像を合成して、仮想視点からみた車両の周辺の様子を示す合成画像(俯瞰画像)を生成する技術が普及してきている。このような合成画像を生成する場合には、ディストーションの特性が考慮されて撮影画像中の被写体の像の歪みが補正される。しかしながら、カメラの実際のディストーションは設計上のディストーションとは異なるため、設計上のディストーションを示すデータを単純に用いた場合には、被写体の像の歪みが正しく補正されない。その結果、生成される合成画像においては、撮影画像同士の境界部分において同一の被写体の像が分断されるなどの不具合が生じる。
【0009】
これに対応するためには、複数のカメラそれぞれの実際のディストーションを、上述したZhangの手法などによって求める必要がある。しかしながら、車両工場などの作業場においては設備の配置に関して様々な制約があるため、このような作業場に多数のマークを格子状に配置することは現実には困難である。このため、より簡便な設備でカメラの実際のディストーションを導出できる技術が要望されていた。
【課題を解決するための手段】
【0011】
上記課題を解決するため、請求項1の発明は、カメラに関するデータを導出するデータ導出装置であって、2つのマークを前記カメラで撮影して得られた撮影画像中の前記2つのマークそれぞれのマーク像の位置を特定する特定手段と、前記2つのマーク像の位置に基づいて、前記カメラの設計上の第1ディストーションに基づく設計像高を基準とした、前記撮影画像中の被写体像の実際の像高の誤差率を導出する第1導出手段と、前記誤差率と前記第1ディストーションとに基づいて、前記カメラの実際の第2ディストーションを導出する第2導出手段と、を備え、前記第1導出手段は、前記撮影画像中の前記2つのマーク像の位置に基づいて導出される前記2つのマークの相互間の導出距離と、前記2つのマークの相互間の実際の実距離との比較結果に基づいて、前記誤差率を導出する。
【0012】
また、請求項2の発明は、請求項1に記載のデータ導出装置において、前記第1導出手段は、前記撮影画像中の前記2つのマーク像の位置に基づいて導出される前記2つのマークの相互間の導出距離と、前記2つのマークの相互間の実際の実距離との比較結果に基づいて、前記誤差率を導出する。
【0013】
また、請求項の発明は、請求項1に記載のデータ導出装置において、前記第2ディストーションと、前記2つのマークを前記カメラで撮影して得られた撮影画像とに基づいて、前記カメラの設置に関する設置パラメータを取得する取得手段、をさらに備えている。
【0014】
また、請求項の発明は、請求項1または2に記載のデータ導出装置において、前記データ導出装置は、車両に搭載された複数のカメラそれぞれの前記第2ディストーションを導出するものであり、前記複数のカメラそれぞれで得られた撮影画像と、前記複数のカメラそれぞれの前記第2ディストーションとを用いて、仮想視点からみた前記車両の周辺の様子を示す合成画像を生成する生成手段、をさらに備えている。
【0015】
また、請求項の発明は、カメラに関するデータを導出するデータ導出方法であって、(a)2つのマークを前記カメラで撮影して得られた撮影画像中の前記2つのマークそれぞれのマーク像の位置を特定する工程と、(b)前記2つのマーク像の位置に基づいて、前記カメラの設計上の第1ディストーションに基づく設計像高を基準とした、前記撮影画像中の被写体像の実際の像高の誤差率を導出する工程と、(c)前記誤差率と前記第1ディストーションとに基づいて、前記カメラの実際の第2ディストーションを導出する工程と、を備え、前記第1導出手段は、前記撮影画像中の前記2つのマーク像の位置に基づいて導出される前記2つのマークの相互間の導出距離と、前記2つのマークの相互間の実際の実距離との比較結果に基づいて、前記誤差率を導出する。
【発明の効果】
【0016】
請求項1ないしの発明によれば、撮影画像中の2つのマーク像の位置からカメラの実際の第2ディストーションを導出する。このため、比較的簡便な設備でカメラの実際の第2ディストーションを導出できる。また、比較的単純なアルゴリズムで、カメラの実際の第2ディストーションを導出することができる。
【0018】
また、特に請求項の発明によれば、カメラの実際の第2ディストーションを利用して、精度の高い設置パラメータを取得することができる。
【0019】
また、特に請求項の発明によれば、カメラの実際の第2ディストーションを利用して、車両の周囲の全体を正しく示す合成画像を生成することができる。

【図面の簡単な説明】
【0020】
図1図1は、データ導出装置を含む校正システムを示す図である。
図2図2は、標識体の外観を示す図である。
図3図3は、複数のカメラの配置及び撮影方向を示す図である。
図4図4は、車載装置の構成を示す図である。
図5図5は、画像合成部が合成画像を生成する手法を説明する図である。
図6図6は、投影面の領域と撮影画像との対応関係を示す図である。
図7図7は、合成画像の生成に用いられる撮影画像の一例を示す図である。
図8図8は、キャリブレーション処理の流れを示す図である。
図9図9は、キャリブレーション処理用の撮影画像の一例を示す図である。
図10図10は、カメラのディストーションの特性を示す図である。
図11図11は、誤差率と入射角との関係を示す図である。
図12図12は、ワールド座標系とカメラ座標系との関係を示す図である。
図13図13は、カメラと2つのマークとの位置関係を示す図である。
図14図14は、ディストーション導出処理の流れを示す図である。
図15図15は、逆算像高を導出する手法を説明する図である。
図16図16は、視線ベクトルv及び視線ベクトルvを示す図である。
図17図17は、角度θ及び角度θを示す図である。
図18図18は、ベクトルT及びベクトルTを示す図である。
図19図19は、ベクトルTを示す図である。
【発明を実施するための形態】
【0021】
以下、図面を参照しつつ本発明の実施の形態について説明する。
【0022】
<1.システムの概要>
図1は、本実施の形態のデータ導出装置を含む校正システム10を示す図である。この校正システム10は、車両(本実施の形態では自動車)9に搭載される複数のカメラ5そぞれのデータを取得するために用いられる。校正システム10は、キャリブレーション処理を実行し、各カメラ5の実際のディストーション(歪曲収差)を示すディストーションデータ(以下、「実データ」という。)と、各カメラ5の設置に関する設置パラメータとを取得する。
【0023】
各カメラ5の実際のディストーションは、設計上のディストーションとは異なっている。このため、校正システム10は、カメラ5の実際のディストーションを示す実データを取得する。また、各カメラ5の光軸の方向は、設計上の方向とは僅かに異なっている。このため、校正システム10は、パン角、チルト角及びロール角などの各カメラ5の設置に関する設置パラメータを取得する。
【0024】
校正システム10は、車両9に搭載される複数のカメラ5及び車載装置2、並びに、車両9の外部に配置される4つの標識体7を備えている。4つの標識体7はそれぞれ、車両工場や車両整備場などキャリブレーション処理を実行する作業場の所定位置に配置される。
【0025】
図2に示すように、4つの標識体7はそれぞれ、直立可能な立体形状を有している。標識体7は、直立させたプラスチック板などの板状体79を有している。板状体79における車両9に対向する側の主面には、所定の模様のマーク70が形成されている。マーク70の模様は、例えば、二色の正方形を交互に配した市松模様である。この模様を形成する二色のうちの一方は相対的に暗い色(例えば、黒)、他方は相対的に明るい色(例えば、白)となっている。
【0026】
キャリブレーション処理を実行する場合には、図1に示すように、作業場の所定位置に略正確に車両9が正対装置などにより停車される。これにより、車両9に対する4つの標識体7の相対的な位置は一定となる。4つの標識体7は、車両9の左前方、右前方、左後方、及び、右後方の各領域A1,A2,A3,A4にそれぞれ配置された状態となる。この状態で、車両9に搭載されたカメラ5が、標識体7を含む車両9の周囲を撮影して撮影画像を取得する。
【0027】
車載装置2は、このようにして得られた撮影画像に基づいて、カメラ5のデータを導出するデータ導出装置として機能する。車載装置2は、撮影画像に基づいて、カメラ5の実際のディストーションを示す実データと、カメラ5の設置パラメータとを導出する。車載装置2は、撮影画像に含まれるマーク70の像の位置を特定し、このマーク70の像の位置に基づいて実データ及び設置パラメータを導出する。
【0028】
このようなキャリブレーション処理は、車両9に複数のカメラ5を取り付けた際に実行される。キャリブレーション処理で得られた実データ及び設置パラメータは、車載装置2に記憶され、以降、車載装置2が実行する画像処理において利用される。
【0029】
<2.車載カメラ>
図3は、複数のカメラ5の配置及び撮影方向を示す図である。複数のカメラ5はそれぞれ、レンズと撮像素子とを備えており、車両9の周辺を示す撮影画像を電子的に取得する。複数のカメラ5はそれぞれ、車載装置2とは別に車両9の適位置に配置され、取得した撮影画像を車載装置2に入力する。
【0030】
複数のカメラ5は、フロントカメラ5F、バックカメラ5B、左サイドカメラ5L、及び、右サイドカメラ5Rを含んでいる。これら4つのカメラ5F,5B,5L,5Rは、互いに異なる位置に配置され、車両9の周辺の異なる方向を撮影する。
【0031】
フロントカメラ5Fは、車両9の前端の左右中央の近傍に設けられ、その光軸5Faは車両9の前方(直進方向)に向けられる。バックカメラ5Bは、車両9の後端の左右中央の近傍に設けられ、その光軸5Baは車両9の後方(直進方向の逆方向)に向けられる。左サイドカメラ5Lは車両9の左側のサイドミラー93Lに設けられ、その光軸5Laは車両9の左側方(直進方向の直交方向)に向けられる。また、右サイドカメラ5Rは車両9の右側のサイドミラー93Rに設けられ、その光軸5Raは車両9の右側方(直進方向の直交方向)に向けられる。
【0032】
これらのカメラ5のレンズには魚眼レンズが採用され、各カメラ5は180度以上の画角αを有している。このため、4つのカメラ5F,5B,5L,5Rを利用することで、車両9の全周囲を撮影することが可能である。車両9の左前方、右前方、左後方、及び、右後方の各領域A1,A2,A3,A4は、4つのカメラ5のうちの2つのカメラ5によって重複して撮影可能となっている。このように重複して撮影可能な4つの領域A1,A2,A3,A4に、4つの標識体7がそれぞれ配置される(図1参照。)。これにより、4つのカメラ5のそれぞれは2つの標識体7のマーク70を撮影することが可能となる。
【0033】
<3.車載装置>
図4は主に、車載装置2の構成を示す図である。図に示すように、車載装置2は、4つのカメラ5と通信可能に接続されている。車載装置2は、4つのカメラ5でそれぞれ得られた4つの撮影画像を合成して仮想視点からみた車両9の周辺の様子を示す合成画像を生成し、この合成画像を表示する機能を備えている。車載装置2は、この合成画像を生成する際に、キャリブレーション処理で得られた実データと設置パラメータとを利用する。
【0034】
車載装置2は、ディスプレイ26と、操作部25と、画像取得部22と、画像合成部23と、記憶部24と、制御部21とを備えている。
【0035】
ディスプレイ26は、例えば、液晶パネルなどを備えた薄型の表示装置であり、各種の情報や画像を表示する。操作部25は、ユーザの操作を受け付ける操作ボタンなどである。ユーザが操作部25を操作した場合は、その操作の内容を示す信号が制御部21に入力される。
【0036】
画像取得部22は、4つのカメラ5から、各カメラ5で得られた撮影画像を取得する。画像取得部22は、アナログの撮影画像をデジタルの撮影画像に変換するA/D変換機能などの基本的な画像処理機能を有している。画像取得部22は、取得した撮影画像に所定の画像処理を行い、処理後の撮影画像を画像合成部23及び制御部21に入力する。
【0037】
画像合成部23は、例えばハードウェア回路であり、所定の画像処理を実行する。画像合成部23は、4つのカメラ5でそれぞれ取得された4つの撮影画像を用いて、任意の仮想視点からみた車両9の周辺の様子を示す合成画像(俯瞰画像)を生成する。画像合成部23が仮想視点からみた合成画像を生成する手法については後述する。
【0038】
記憶部24は、例えば、フラッシュメモリなどの不揮発性メモリであり、各種の情報を記憶する。記憶部24は、設計データ24a、実データ24b及び設置パラメータ24cを記憶している。また、記憶部24は、車載装置2のファームウェアとなるプログラムも記憶している。
【0039】
設計データ24aは、カメラ5の設計上のディストーションを示すディストーションデータである。一方、実データ24bは、カメラ5の実際のディストーションを示すディストーションデータである。設計データ24aは、4つのカメラ5F,5B,5L,5Rで共通であるが、実データ24bは各カメラ5ごとに異なっている。実データ24bは、設計データ24aに基づいてキャリブレーション処理によって取得される。このため、キャリブレーション処理の実行前は、記憶部24に設計データ24aは記憶されているが、実データ24bは記憶されていない。
【0040】
また、設置パラメータ24cは、カメラ5の設置に関するパラメータである。設置パラメータ24cには、パン角、チルト角及びロール角などのカメラ5の光軸の方向を示すパラメータが含まれる。設置パラメータ24cは、各カメラ5ごとに異なっている。設置パラメータ24cも、キャリブレーション処理によって取得されるため、キャリブレーション処理の実行前は記憶部24に記憶されていない。
【0041】
記憶部24には、4つのカメラ5F,5B,5L,5Rそれぞれに対応する実データ24bと設置パラメータ24cとが記憶される。これらの実データ24b及び設置パラメータ24cは、画像合成部23が合成画像を生成する際に利用される。
【0042】
制御部21は、車載装置2の全体を統括的に制御するマイクロコンピュータである。制御部21は、CPU、RAM及びROMなどを備えている。制御部21の各種の機能は、記憶部24に記憶されたプログラムに従ってCPUが演算処理を行うことで実現される。図中に示す位置特定部21a、誤差率導出部21b、ディストーション導出部21c、及び、パラメータ取得部21dは、プログラムに従ってCPUが演算処理を行うことで実現される機能部の一部である。これら機能部は、キャリブレーション処理に係る処理を実行することになるが、その詳細は後述する。
【0043】
<4.合成画像の生成>
次に、画像合成部23が合成画像を生成する手法について説明する。図5は、画像合成部23が合成画像を生成する手法を説明する図である。
【0044】
車載装置2のフロントカメラ5F、バックカメラ5B、左サイドカメラ5L、及び、右サイドカメラ5Rのそれぞれで撮影が行われると、車両9の前方、後方、左側方及び右側方をそれぞれ示す4つの撮影画像GF,GB,GL,GRが取得される。これら4つの撮影画像GF,GB,GL,GRには、車両9の全周囲の被写体の像が含まれている。
【0045】
画像合成部23は、これら4つの撮影画像GF,GB,GL,GRに含まれるデータ(各画素の値)を、仮想的な三次元空間における立体曲面である投影面TSに投影する。投影面TSは、例えば略半球状(お椀形状)をしている。この投影面TSの中心部分(お椀の底部分)は、車両9の位置として定められている。一方、投影面TSの中心以外の部分は、撮影画像GF,GB,GL,GRのいずれかと対応付けられている。画像合成部23は、投影面TSの中心以外の部分に、撮影画像GF,GB,GL,GRに含まれるデータを投影する。
【0046】
図6に示すように、画像合成部23は、投影面TSにおいて車両9の前方に相当する領域に、フロントカメラ5Fの撮影画像GFのデータを投影する。また、画像合成部23は、投影面TSにおいて車両9の後方に相当する領域に、バックカメラ5Bの撮影画像GBのデータを投影する。さらに、画像合成部23は、投影面TSにおいて車両9の左側方に相当する領域に左サイドカメラ5Lの撮影画像GLのデータを投影し、投影面TSにおいて車両9の右側方に相当する領域に右サイドカメラ5Rの撮影画像GRのデータを投影する。
【0047】
図5に戻り、このように投影面TSの各部分にデータを投影すると、次に、画像合成部23は、車両9の三次元形状を示すポリゴンのモデルを仮想的に構成する。この車両9のモデルは、投影面TSが設定される三次元空間において、車両9の位置と定められた略半球状の中心部分に配置される。
【0048】
次に、画像合成部23は、三次元空間に対して仮想視点VPを設定する。画像合成部23は、三次元空間における任意の視点位置に任意の視野方向に向けて仮想視点VPを設定することができる。そして、画像合成部23は、投影面TSのうち、設定した仮想視点VPからみて所定の視野角に含まれる領域を画像として切り出す。また、画像合成部23は、設定した仮想視点VPに応じてポリゴンのモデルに関してレンダリングを行い、その結果となる二次元の車両像90を、切り出した画像に対して重畳する。これにより、画像合成部23は、仮想視点VPからみた車両9及び車両9の周辺の領域を示す合成画像CPを生成する。
【0049】
例えば図5に示すように、視点位置を車両9の直上、視野方向を直下とした仮想視点VPaを設定した場合には、車両9及び車両9の周辺の領域を俯瞰する合成画像CPaが生成される。また、視点位置を車両9の左後方、視野方向を車両9の前方とした仮想視点VPbを設定した場合には、車両9の左後方からその周辺全体を見渡すように、車両9及び車両9の周辺の領域を示す合成画像CPbが生成されることになる。
【0050】
図7は、このような合成画像CPの生成に用いられる撮影画像Gの一例を示す図である。カメラ5のレンズは魚眼レンズであるため、図に示すように、撮影画像Gに含まれる被写体の像(以下、「被写体像」という。)は歪んでいる。このため、画像合成部23は、投影面TSへの投影前に、4つの撮影画像GF,GB,GL,GRそれぞれに含まれる被写体像の歪みを、4つのカメラ5それぞれのディストーションの特性を考慮して補正する。
【0051】
前述のようにカメラ5の実際のディストーションは、設計上のディストーションと異なっている。したがって、被写体像の歪みの補正に設計上のディストーションを示す設計データ24aを単純に用いた場合は、正しく被写体像の歪みが補正されないことになる。その結果、投影面TSに投影した撮影画像同士の境界部分B(図6参照。)において、同一の被写体の像が分断されるなどの不具合が生じる。このため、画像合成部23は、撮影画像G中の被写体像の歪みの補正に、当該撮影画像Gを取得したカメラ5の実際のディストーションを示す実データ24bを用いるようにしている。
【0052】
また、撮影画像Gにおいて、投影面TSに投影すべきデータを含む領域は、当該撮影画像Gを取得したカメラ5の設置上の誤差に応じて変化する。このため、画像合成部23は、カメラ5の設置パラメータ24c(パン角、チルト角及びロール角など)を用いて、画像Gの投影面TSに投影する領域を修正する。
【0053】
仮に図7に示す撮影画像Gを取得したカメラ5に関して設置上の誤差がないとした場合は、投影面TSに投影すべきデータを含む領域はデフォルトの領域R1となる。通常はカメラ5には設置上の誤差が存在することから、画像合成部23は、当該カメラ5の設置パラメータ24cに基づいて、投影面TSに投影する領域を領域R1から領域R2に修正する。そして、画像合成部23は、この領域R2に含まれるデータを投影面TSに投影することになる。
【0054】
このように、画像合成部23は、合成画像CPを生成する際に、カメラ5の実データ24b及び設置パラメータ24cを用いることで、適切な合成画像CPを生成することができる。
【0055】
<5.キャリブレーション処理>
次に、カメラ5の実データ24bと設置パラメータ24cとを取得するキャリブレーション処理について説明する。キャリブレーション処理は、図1に示すように4つの標識体7が予め配置された作業場の所定位置に車両9を停車させた状態で、作業員が操作部25を介して所定の操作を行うことで実行される。図8は、このキャリブレーション処理の流れを示す図である。以下、キャリブレーション処理の流れについて説明する。
【0056】
まず、制御部21が、4つのカメラ5のうち一のカメラ5を処理の対象とする「注目カメラ5」として選択する(ステップS11)。以降のステップS12〜S14の処理では、この注目カメラ5の実データ24bと設置パラメータ24cとが取得されることになる。
【0057】
ステップS12では、注目カメラ5が、2つの標識体7のマーク70を含む車両9の周辺の領域を撮影して撮影画像を取得する。図9は、このようにして取得されたキャリブレーション処理用の撮影画像GCの一例を示す図である。図に示すように、撮影画像GCには、2つのマーク70の像(以下、「マーク像」という。)71a,72aが含まれている。
【0058】
次に、ステップS13では、注目カメラ5の実際のディストーションを示す実データ24bを導出するディストーション導出処理がなされる。ディストーション導出処理では、撮影画像GCに含まれる2つのマーク像71a,72aの位置に基づいて、実データ24bが導出される。ディストーション導出処理は、位置特定部21a、誤差率導出部21b、及び、ディストーション導出部21cによって実行されるが詳細は後述する。ディストーション導出処理で得られた実データ24bは、注目カメラ5に関連付けて記憶部24に記憶される。
【0059】
次に、ステップS14では、パラメータ取得部21dが、注目カメラ5の設置に関する設置パラメータ24cを取得するパラメータ取得処理を実行する。パラメータ取得部21dは、まず、ステップS13で得られた実データ24bを用いて、撮影画像GCの被写体像の歪みを補正する。そして、パラメータ取得部21dは、例えば、特許文献1に記載の手法など周知の手法を用いて、撮影画像GCに含まれる2つのマーク像71a,72aの位置に基づいて注目カメラ5の設置パラメータ24cを導出する。例えば、パラメータ取得部21dは、撮影画像GC中の2つのマーク像71a,71bの左右の位置に基づいてパン角、2つのマーク像71a,71bの上下の位置に基づいてチルト角、撮影画像GC中の2つのマーク像71a,71bの高さの差に基づいてロール角をそれぞれ導出できる。
【0060】
このようにパラメータ取得部21dは、注目カメラ5の実際のディストーションを示す実データ24bを用いて撮影画像GCの被写体像の歪みを補正した後に、撮影画像GCに基づいて設置パラメータ24cを導出する。このため、精度の高い設置パラメータ24cを取得することができる。パラメータ導出処理で得られた設置パラメータ24cは、注目カメラ5に関連付けて記憶部24に記憶される。
【0061】
パラメータ導出処理が完了すると、次に、制御部21は、4つのカメラ5の全てについて実データ24b及び設置パラメータ24cの導出が完了したか否かを判定する。そして、これらの導出が完了していないカメラ5がある場合は(ステップS15にてNo)、注目カメラ5に設定されていない他のカメラ5が新たな注目カメラ5に設定されて、上述した処理が繰り返される。このような処理が繰り返されることにより、4つのカメラ5の全ての実データ24b及び設置パラメータ24cが導出される。4つのカメラ5の全ての実データ24b及び設置パラメータ24cが導出されると(ステップS15にてYes)、キャリブレーション処理が終了する。
【0062】
<6.ディストーション導出処理>
次に、ステップS13のディストーション導出処理について詳細に説明する。まず、カメラ5の設計上のディストーションを示す設計データ24aと、実際のディストーションを示す実データ24bとの関係について説明する。
【0063】
図10は、カメラ5のディストーションの特性を示す図である。図10は、ディストーションの特性を、被写体からの光の入射角θ(deg)と、撮影画像中における当該被写体の像の像高(mm)との関係で表している。設計データ24a及び実データ24bは、図10に示す入射角θと像高との関係を示したものとなっている。設計データ24aは、設計上のディストーションに基づく像高(以下、「設計像高」という。)rを示す実線のカーブに相当する。一方、実データ24bは、撮影画像中の実際の像高(以下、「実像高」という。)r’を示す一点鎖線のカーブに相当する。
【0064】
図に示すように、設計像高rと実像高r’とでは誤差が生じている。この設計像高rに対する実像高r’の誤差(r’−r)は、入射角θが大きくなるほど大きくなる。このため、カメラ5の光軸から離れた被写体の像ほど、このようなディストーションの相違の影響を受けることになる。
【0065】
ここで、設計像高rを基準とした実像高r’の誤差率err(%)を、次の数1によって定義する。
【0066】
【数1】
また、fをカメラ5の焦点距離とした場合、設計像高rは、例えば、次の数2によって定められる。
【0067】
【数2】
一方、実際のディストーションが設計上のディストーションと異なるのは、カメラ5のレンズと撮像素子との距離(焦点距離fに対応)に関する製造誤差に起因する。したがって、焦点距離fの誤差をkとすると、実像高r’は次の数3で表すことができる。
【0068】
【数3】
したがって、像高の誤差率errは、図11に示すように、入射角θに依存せずに一定となる。この誤差率errは、例えば、−5.0(%)から+5.0(%)までの範囲の値となる。ディストーション導出処理では、まず、誤差率導出部21bがこの誤差率errを導出し、そして、ディストーション導出部21cが誤差率errと設計データ24aとに基づいて実データ24bを導出するようになっている。
【0069】
また、ディストーション導出処理では、注目カメラ5を基準としたカメラ座標系が用いられる。図12は、ワールド座標系とカメラ座標系との関係を示す図である。ワールド座標系は、Xw軸,Yw軸,Zw軸を有する三次元直交座標系であり、車両9を基準として設定される。これに対して、カメラ座標系は、Xc軸,Yc軸,Zc軸を有する三次元直交座標系であり、注目カメラ5を基準として設定される。
【0070】
ワールド座標系の原点Owとカメラ座標系の原点Ocとは相違している。また一般に、ワールド座標系とカメラ座標系とでは各座標軸の方向も一致しない。ワールド座標系におけるカメラ座標系の原点Ocの座標位置(すなわち、車両9に対する注目カメラ5の位置)は既知である。また、カメラ座標系のZc軸は、注目カメラ5の光軸に沿っている。
【0071】
図13は、注目カメラ5と、注目カメラ5で撮影される2つのマーク70との位置関係を示す図である。図に示すように、注目カメラ5からみて左側にマーク71、右側にマーク72がそれぞれ配置されている。
【0072】
前述のように、標識体7は所定位置に配置され、車両9に対する標識体7の相対的な位置は一定である。このため、マーク71,72のワールド座標系における座標位置は既知である。したがって、注目カメラ5から左側のマーク71までの距離d、注目カメラ5から右側のマーク72までの距離d、及び、2つのマーク71,72の相互間の実際の距離mは、ワールド座標系における注目カメラ5及びマーク71,72の3つの座標位置から求めることができる。これらの距離d,d,mは、予め記憶部24に記憶され、ディストーション導出処理において利用される。なお、これらの距離d,d,mを、3つの座標位置に基づいてディストーション導出処理の一つの工程において求めてもよい。
【0073】
図14は、ディストーション導出処理(図8のステップS13)の流れを示す図である。以下、このディストーション導出処理の流れについて説明する。この処理の開始時点においては、注目カメラ5によって2つのマーク像71a,72aを含む撮影画像GCが取得されている。また、設計データ24a、及び、距離d,d,mが記憶部24に記憶されている。
【0074】
まず、位置特定部21aが、撮影画像GC中の2つのマーク像71a,72aの位置を特定する(ステップS21)。位置特定部21aは、例えば、ハリスオペレータなどの周知のコーナ検出法を用いて、図15の上段に示すような撮影画像GC中の2つのマーク像71a,72aを検出する。そして、位置特定部21aは、図15の中段に示すように、撮影画像GCにおける2つのマーク像71a,72aそれぞれの中心となる位置(市松模様の二色の境界線が交差する位置)P1,P2を特定する。
【0075】
次に、誤差率導出部21bが、撮影画像GCにおける2つのマーク像71a,72aの位置P1,P2に基づいて誤差率errを導出する。誤差率導出部21bは、この処理において、探索対象となる誤差率errに仮値を設定する。そして、誤差率導出部21bは、この誤差率errの仮値を用いてステップS23〜S27の一連の処理を実行して、評価値Eを導出する。
【0076】
誤差率導出部21bは、誤差率err(%)として設定する仮値を、−5.0から+5.0までの範囲で0.1ずつ変更し(ステップS22,S28,S29)、誤差率errの仮値を変更するごとにステップS23〜S27の一連の処理を繰り返す。これにより、誤差率導出部21bは、誤差率errに設定した仮値ごとに評価値Eを導出する。
【0077】
ステップS23では、仮値が設定された誤差率errを用いて、2つのマーク像71a,72aそれぞれの設計像高rが導出される。
【0078】
まず、図15の中段に示すように、撮影画像GCの画像中心(光軸の位置)からステップS21で特定された位置P1,P2までの距離をそれぞれ導出することで、撮影画像GCにおける2つのマーク像71a,72aそれぞれの実像高r’,r’が求められる。この実像高r’,r’は、設計像高rに対して誤差を含んだ値であるといえる。
【0079】
このため、図15の下段に示すように、誤差率errの仮値と、実像高r’,r’とに基づいて、2つのマーク像71a,72aそれぞれの誤差を含まない設計像高r,rが逆算される。以下、このように逆算される設計像高を「逆算像高」という。逆算像高r,rは、数1を変形した次の数4によって導出できる。
【0080】
【数4】
次に、ステップS24(図14参照。)では、図16に示すように、カメラ座標系における、注目カメラ5から2つのマーク71,72それぞれに向かう方向の単位ベクトルである視線ベクトルv,vが導出される。
【0081】
まず、設計データ24a(図10の実線のカーブ)が参照され、左側のマーク71の逆算像高rに基づいて、マーク71からの光の入射角θが求められる。同様に、右側のマーク72の逆算像高rに基づいて、マーク72からの光の入射角θが求められる。これにより、図17に示すように、注目カメラ5の光軸5aに対して、注目カメラ5からマーク71までの直線L1がなす角度θと、注目カメラ5からマーク72までの直線L2がなす角度θとが求められる。
【0082】
ここで、撮影画像GCにおいて、水平ラインに対して画像中心から位置P1までの直線がなす角度をΦ、水平ラインに対して画像中心から位置P2までの直線がなす角度をΦとする(図15参照。)。
【0083】
前述のように注目カメラ5の光軸5aはカメラ座標系のZc軸に沿っており、注目カメラ5の位置はカメラ座標系の原点である。したがって、次の数5に示すように、注目カメラ5から左側のマーク71に向かう方向の単位ベクトルである視線ベクトルv図16参照。)は、角度θ及び角度Φに基づいて求めることができる。また、注目カメラ5からマーク72まで向かう方向の単位ベクトルである視線ベクトルvは、角度θ及び角度Φに基づいて求めることができる。
【0084】
【数5】
次に、ステップS25(図14参照。)では、2つのマーク71,72の相互間の距離が導出される。
【0085】
まず、図18に示すように、注目カメラ5を始点とし左側のマーク71を終点とするベクトルT、及び、注目カメラ5を始点とし右側のマーク72を終点とするベクトルTが求められる。次の数6に示すように、ベクトルTは、注目カメラ5から左側のマーク71までの距離dと、視線ベクトルvとに基づいて導出される。また、ベクトルTは、注目カメラ5から右側のマーク72までの距離dと、視線ベクトルvとに基づいて導出される。
【0086】
【数6】
そして、図19に示す、右側のマーク72を始点とし左側のマーク71を終点とするベクトルTが、ベクトルT及びベクトルTを用いて数7により導出される。
【0087】
【数7】
さらに、数8により、このベクトルTの長さが、2つのマーク71,72の相互間の距離(以下、「導出距離」という。)Mとして導出される。
【0088】
【数8】
次に、ステップS26(図14参照。)では、誤差率errの仮値に基づいて上記のようにして導出された導出距離Mと、2つのマーク71,72の相互間の実際の距離mとが比較され、その比較結果となる評価値Eが導出される。具体的には、次の数9により、導出距離Mと実際の距離mとの差の絶対値が評価値Eとして導出される。
【0089】
【数9】
この評価値Eは、誤差率errに設定された仮値の正確さの程度を示すものであり、評価値Eが小さいほど(すなわち、導出距離Mと実際の距離mとの差が小さいほど)、仮値が実際の誤差率errの値に近いことになる。
【0090】
次に、ステップS27では、今回の誤差率errの仮値に関する評価値Eが、過去に導出済の評価値Eの最小値と比較される。そして、今回の評価値Eが、過去に導出済の評価値Eの最小値よりも小さい場合は、最小値が更新され、今回の評価値Eが新たな最小値とされる。
【0091】
このようなステップS23〜S27の一連の処理が繰り返され、誤差率errに設定すべき全ての仮値に関する処理が完了した場合は(ステップS28にてYes)、その時点で最小値となった評価値Eに対応する仮値が、実際の誤差率errの値に最も近いことになる。このため、誤差率導出部21bは、この仮値を、実際の誤差率errとして導出する(ステップS30)。
【0092】
このように誤差率導出部21bが誤差率errが導出すると、次に、ディストーション導出部21cが、導出された誤差率errと設計データ24a(図10の実線のカーブ)とに基づいて、注目カメラ5の実際のディストーションを示す実データ24b(図10の一点鎖線のカーブ)を導出する(ステップS31)。実像高r’は、設計データ24aが示す設計像高rに基づいて、数1を変形した次の数10によって導出できる。
【0093】
【数10】
以上のように、本実施の形態の車載装置2では、位置特定部21aが2つのマーク71,72をカメラ5で撮影して得られた撮影画像GC中のマーク像71a,72aの位置P1,P2を特定する(ステップS21)。そして、誤差率導出部21bが、2つのマーク像71a,72aの位置P1,P2に基づいて、設計像高rを基準とした実像高r’の誤差率errを導出する(ステップS22〜S30)。さらに、ディストーション導出部21cが、誤差率errと設計上のディストーション(設計データ24a)とに基づいてカメラ5の実際のディストーション(実データ24b)を導出する(ステップS31)。
【0094】
このように、撮影画像GC中の2つのマーク像71a,72aの位置P1,P2からカメラ5の実際のディストーションを導出できるため、実際のディストーションを導出するために、作業場に多数のマークを格子状に配置するなどの大掛かりな設備は必要とならない。したがって、比較的簡便な設備でカメラ5の実際のディストーションを導出できる。
【0095】
また、誤差率導出部21bは、誤差率errに仮値を設定し、この誤差率errの仮値と撮影画像GC中の2つのマーク像71a,72aの位置P1,P2とに基づいて2つのマーク71,72の相互間の導出距離Mを導出する。そして、誤差率導出部21bは、この導出距離Mと、2つのマーク71,72の相互間の実際の実距離mとの比較結果である評価値Eに基づいて、実際の誤差率errを導出する。このため、比較的単純なアルゴリズムで、カメラ5の実際のディストーションを導出することができる。
【0096】
また、パラメータ取得部21dは、カメラ5の実際のディストーションと、2つのマーク71,72をカメラ5で撮影して得られた撮影画像GCとに基づいて、カメラ5の設置に関する設置パラメータを取得する。このように設置パラメータの取得に際してカメラ5の実際のディストーションを用いるため、精度の高い設置パラメータを取得することができる。
【0097】
また、画像合成部23は、複数のカメラ5それぞれで得られた撮影画像と、複数のカメラ5それぞれの実際のディストーションとを用いて、仮想視点からみた車両9の周辺の様子を示す合成画像を生成する。このため、同一の被写体の像が分断されるなどの大きな不具合を防止でき、車両9の周囲の全体を正しく示す合成画像を生成することができる。
【0098】
<7.変形例>
以上、本発明の実施の形態について説明してきたが、この発明は上記実施の形態に限定されるものではなく様々な変形が可能である。以下では、このような変形例について説明する。上記実施の形態及び以下で説明する形態を含む全ての形態は、適宜に組み合わせ可能である。
【0099】
上記実施の形態では、位置特定部21aが、演算により撮影画像GC中のマーク像71a,72aの位置P1,P2を特定していた。これに対して、位置特定部21aが、ユーザ(作業員)に指定された位置に基づいて、撮影画像GC中のマーク像71a,72aの位置P1,P2を特定するようにしてもよい。この場合は、ユーザが、ディスプレイ26に表示された撮影画像GCを確認しつつ、マーク像71a,72aの位置P1,P2をカーソルなどで指定することになる。
【0100】
また、上記実施の形態では、マーク70は直立可能な標識体7に形成されていた。これに対して、マーク70は、例えば、直立できない板状の標識体の主面に形成してもよく、また、作業場の床面に形成してもよい。
【0101】
また、上記実施の形態では、各カメラ5は2つのマーク70を撮影すると説明したが、3以上のマーク70を撮影してもよい。すなわち、各カメラ5は少なくとも2つのマーク70を撮影できるようにすればよい。
【0102】
また、上記実施の形態では、プログラムに従ったCPUの演算処理によってソフトウェア的に各種の機能が実現されると説明したが、これら機能のうちの一部は電気的なハードウェア回路により実現されてもよい。また逆に、ハードウェア回路によって実現されるとした機能のうちの一部は、ソフトウェア的に実現されてもよい。
【符号の説明】
【0103】
2 車載装置
5 カメラ
9 車両
10 校正システム
24a 設計データ
24b 実データ
70,71,72 マーク
71a,72a マーク像
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19