(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023086569
(43)【公開日】2023-06-22
(54)【発明の名称】キャリブレーション装置およびキャリブレーション方法
(51)【国際特許分類】
G01B 11/00 20060101AFI20230615BHJP
G01B 11/26 20060101ALI20230615BHJP
G06T 7/80 20170101ALI20230615BHJP
G06T 7/00 20170101ALI20230615BHJP
【FI】
G01B11/00 H
G01B11/26 H
G06T7/80
G06T7/00 650Z
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2021201178
(22)【出願日】2021-12-10
(71)【出願人】
【識別番号】000001487
【氏名又は名称】フォルシアクラリオン・エレクトロニクス株式会社
(74)【代理人】
【識別番号】110002365
【氏名又は名称】弁理士法人サンネクスト国際特許事務所
(72)【発明者】
【氏名】齋藤 司
【テーマコード(参考)】
2F065
5L096
【Fターム(参考)】
2F065AA04
2F065AA37
2F065BB27
2F065FF04
2F065FF64
2F065FF65
2F065FF67
2F065JJ03
2F065JJ26
2F065MM06
2F065QQ31
2F065SS13
5L096BA04
5L096DA02
5L096FA67
5L096FA69
(57)【要約】
【課題】車両に設けられたカメラのパラメータを容易にキャリブレーションし得るキャリブレーション装置を提供する。
【解決手段】取得部は、規定の位置に設置されたマーカをカメラが撮影可能な第1の地点から、マーカをカメラが撮影可能な第2の地点に車両が移動したときの移動情報を取得し、キャリブレーション部は、移動情報と規定の位置を示す所定の座標系における規定の座標情報と第1の地点でカメラにより取得された第1の画像と第2の地点でカメラにより取得された第2の画像とを用いてカメラのパラメータをキャリブレーションするようにした。
【選択図】
図1
【特許請求の範囲】
【請求項1】
車両に取り付けられ、前記車両の周囲の画像を取得するカメラのパラメータをキャリブレーションするキャリブレーション装置であって、
前記車両が移動したときの移動情報を取得する取得部と、
前記取得部により取得された移動情報と、前記カメラにより取得された画像とをもとに前記カメラのパラメータをキャリブレーションするキャリブレーション部と、
を備え、
前記取得部は、規定の位置に設置されたマーカを前記カメラが撮影可能な第1の地点から、前記マーカを前記カメラが撮影可能な第2の地点に前記車両が移動したときの移動情報を取得し、
前記キャリブレーション部は、前記移動情報と前記規定の位置を示す所定の座標系における規定の座標情報と前記第1の地点で前記カメラにより取得された第1の画像と前記第2の地点で前記カメラにより取得された第2の画像とを用いて前記カメラのパラメータをキャリブレーションする、
キャリブレーション装置。
【請求項2】
前記所定の座標系は、前記車両外に原点がある座標系であり、
前記キャリブレーション部は、
前記パラメータを用いて前記第1の画像から前記マーカの第1の座標情報を算出し、前記パラメータを用いて前記第2の画像から前記マーカの第2の座標情報を算出し、
前記移動情報に基づいて、前記規定の位置に対応する移動後の規定の位置を示す移動後の規定の座標情報を算出し、
前記移動情報に基づいて、前記第1の座標情報に対応する移動後の第1の座標情報を算出し、
前記移動後の規定の座標情報と前記移動後の第1の座標情報とが一致し、かつ、前記規定の座標情報と前記第2の座標情報とが一致するように、前記カメラのパラメータを最適化する、
請求項1に記載のキャリブレーション装置。
【請求項3】
前記カメラは、前記車両の前後左右に設けられ、
前記マーカには、所定の左マーカおよび所定の右マーカが含まれ、
前記左マーカは、前記車両の前方のカメラと前記車両の後方のカメラとの何れか一方のカメラの撮影範囲と前記車両の左方のカメラの撮影範囲とが重なる共通領域内の規定の左方の位置に設けられ、
前記右マーカは、前記一方のカメラの撮影範囲と前記車両の右方のカメラの撮影範囲とが重なる共通領域内の規定の右方の位置に設けられる、
請求項2に記載のキャリブレーション装置。
【請求項4】
前記キャリブレーション部は、
前記第1の地点で前記左方のカメラにより取得された画像から、前記左マーカの前記第1の地点の第1の左方の座標情報を算出し、前記第2の地点で前記左方のカメラにより取得された画像から、前記左マーカの前記第2の地点の第2の左方の座標情報を算出し、
前記第1の地点で前記右方のカメラにより取得された画像から、前記右マーカの前記第1の地点の第1の右方の座標情報を算出し、前記第2の地点で前記右方のカメラにより取得された画像から、前記右マーカの前記第2の地点の第2の右方の座標情報を算出し、
前記移動情報に基づいて、前記規定の左方の位置に対応する移動後の規定の左方の位置を示す移動後の規定の左方の座標情報と、前記規定の右方の位置に対応する移動後の規定の右方の位置を示す移動後の規定の右方の座標情報とを算出し、
前記移動情報に基づいて、前記第1の左方の座標情報に対応する移動後の第1の左方の座標情報と、前記第1の右方の座標情報に対応する移動後の第1の右方の座標情報とを算出し、
前記移動後の規定の左方の座標情報と前記移動後の第1の左方の座標情報とが一致し、かつ、前記規定の左方の位置を示す規定の左方の座標情報と前記第2の左方の座標情報とが一致するように、前記左方のカメラのパラメータを最適化し、
前記移動後の規定の右方の座標情報と前記移動後の第1の右方の座標情報とが一致し、かつ、前記規定の右方の位置を示す規定の右方の座標情報と前記第2の右方の座標情報とが一致するように、前記右方のカメラのパラメータを最適化する、
請求項3に記載のキャリブレーション装置。
【請求項5】
前記キャリブレーション部は、
前記第1の地点で前記一方のカメラにより取得された画像から、前記左マーカの前記第1の地点の第1の左方の座標情報を算出し、
前記画像から、前記右マーカの前記第1の地点の第1の右方の座標情報を算出し、
前記移動情報に基づいて、前記第1の左方の座標情報に対応する移動後の第1の左方の座標情報と前記第1の右方の座標情報に対応する移動後の第1の右方の座標情報とを算出し、
前記移動後の規定の左方の座標情報と前記移動後の第1の左方の座標情報とが一致し、かつ、前記移動後の規定の右方の座標情報と前記移動後の第1の右方の座標情報とが一致するように、前記一方のカメラのパラメータを最適化する、
請求項4に記載のキャリブレーション装置。
【請求項6】
前記キャリブレーション部は、
前記一方のカメラとは異なる他方のカメラにより前記第2の地点で取得された画像から、前記左マーカの前記第2の地点の第2の左方の座標情報を算出し、
前記画像から、前記右マーカの前記第2の地点の第2の右方の座標情報を算出し、
前記規定の左方の座標情報と前記第2の左方の座標情報とが一致し、かつ、前記規定の右方の座標情報と前記第2の右方の座標情報とが一致するように、前記他方のカメラのパラメータを最適化する、
請求項5に記載のキャリブレーション装置。
【請求項7】
前記所定の座標系は、前記車両上に原点がある座標系であり、
前記キャリブレーション部は、
前記パラメータを用いて前記第1の画像から前記マーカの第1の座標情報を算出し、前記パラメータを用いて前記第2の画像から、前記マーカの第2の座標情報を算出し、
前記移動情報に基づいて、前記規定の位置に対応する移動前の規定の位置を示す移動前の規定の座標情報を算出し、
前記規定の座標情報と前記第1の座標情報とが一致し、かつ、前記移動前の規定の座標情報と前記第2の座標情報とが一致するように、前記カメラのパラメータを最適化する、
請求項1に記載のキャリブレーション装置。
【請求項8】
車両に取り付けられ、前記車両の周囲の画像を取得するカメラのパラメータをキャリブレーションするキャリブレーション方法であって、
取得部が、前記車両が移動したときの移動情報を取得することと、
キャリブレーション部が、前記取得部により取得された移動情報と、前記カメラにより取得された画像とをもとに前記カメラのパラメータをキャリブレーションすることと、
を含み、
前記取得部は、規定の位置に設置されたマーカを前記カメラが撮影可能な第1の地点から、前記マーカを前記カメラが撮影可能な第2の地点に前記車両が移動したときの移動情報を取得し、
前記キャリブレーション部は、前記移動情報と前記規定の位置を示す所定の座標系における規定の座標情報と前記第1の地点で前記カメラにより取得された第1の画像と前記第2の地点で前記カメラにより取得された第2の画像とを用いて前記カメラのパラメータをキャリブレーションする、
キャリブレーション方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、概して、車両に設けられたカメラのパラメータをキャリブレーションする技術に関する。
【背景技術】
【0002】
現在、提案されている車載カメラのパラメータをキャリブレーションするキャリブレーション装置は、大掛かりな設備を規定の位置に設置しなければならないため、作業者にとって大きな負担になっている。
【0003】
近年、床面に設けるマーカの数を抑制できる車載カメラのキャリブレーション装置が開示されている(特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献に記載の技術では、車両は直進走行しなければならず、少しでも蛇行してしまうと精度低下の原因になってしまう。
【0006】
本発明は、以上の点を考慮してなされたもので、車両に設けられたカメラのパラメータを容易にキャリブレーションし得るキャリブレーション装置等を提案しようとするものである。
【課題を解決するための手段】
【0007】
かかる課題を解決するため本発明においては、車両に取り付けられ、前記車両の周囲の画像を取得するカメラのパラメータをキャリブレーションするキャリブレーション装置であって、前記車両が移動したときの移動情報を取得する取得部と、前記取得部により取得された移動情報と、前記カメラにより取得された画像とをもとに前記カメラのパラメータをキャリブレーションするキャリブレーション部と、を備え、前記取得部は、規定の位置に設置されたマーカを前記カメラが撮影可能な第1の地点から、前記マーカを前記カメラが撮影可能な第2の地点に前記車両が移動したときの移動情報を取得し、前記キャリブレーション部は、前記移動情報と前記規定の位置を示す所定の座標系における規定の座標情報と前記第1の地点で前記カメラにより取得された第1の画像と前記第2の地点で前記カメラにより取得された第2の画像とを用いて前記カメラのパラメータをキャリブレーションするようにした。
【0008】
上記構成では、例えば、マーカが規定の位置に設置され、任意の距離、任意の方向に車両が移動したときの車両の移動情報と、規定の座標情報と、移動前のマーカの画像と、移動後のマーカの画像とが用いられて、車両のカメラのパラメータがキャリブレーションされる。このように、マーカが規定の位置に設置されるといった簡易な構成により、車両のカメラのパラメータをキャリブレーションすることができる。
【発明の効果】
【0009】
本発明によれば、利便性の高いキャリブレーション装置を実現することができる。上記以外の課題、構成、および効果は、以下の実施の形態の説明により明らかにされる。
【図面の簡単な説明】
【0010】
【
図1】第1の実施の形態によるキャリブレーションシステムの一例を示す図である。
【
図2】第1の実施の形態によるキャリブレーションシステムに係るハードウェア構成の一例を示す図である。
【
図3】第1の実施の形態によるキャリブレーション処理の一例を示す図である。
【
図4】第1の実施の形態によるマーカの設置態様の一例を示す図である。
【
図5】第1の実施の形態による画像の一例を示す図である。
【
図6】第1の実施の形態による基準領域とマーカ領域との一例を示す図である。
【
図7】第2の実施の形態による基準領域とマーカ領域との一例を示す図である。
【発明を実施するための形態】
【0011】
以下、本発明の一実施の形態を詳述する。ただし、本発明は、実施の形態に限定されるものではない。例えば、本発明に係るキャリブレーション装置は、車両のカメラがキャリブレーションマーカ(マーカ)を撮影可能な第1の地点から、当該カメラが当該マーカを撮影可能な第2の地点に車両が移動したときの移動情報を取得する。移動情報には、車両の移動を示す情報として、移動距離、移動向き等の情報が含まれる。また、本キャリブレーション装置は、移動情報と、マーカが設置される所定の座標系における規定の位置を示す規定の座標情報と、第1の地点でカメラにより取得された第1の画像と、第2の地点でカメラにより取得された第2の画像とを用いて、カメラのパラメータをキャリブレーションする。所定の座標系は、車両外に原点が設定される座標系、または、車両上に原点が設定される座標系である。なお、マーカの形状としては、任意の形状を採用できる。車両に複数のカメラが取り付けられている場合に、一度にキャリブレーションされるカメラは、1つであってもよいし、左右のカメラ等、複数のカメラであってもよい。
【0012】
(I)第1の実施の形態
本実施の形態では、4つの頂点を認識可能な規定サイズのマーカ2つを規定の位置に設置することで、4つのカメラのパラメータをキャリブレーションする方法について説明する。主なステップは、次の通りである。
Step1:
マーカが前方カメラとサイドカメラとの共通領域の規定の位置に設置された場合、前方カメラとサイドカメラとによりカメラ画像が取得される。なお、1つのカメラのパラメータをキャリブレーションする場合は、マーカは、当該カメラの撮影領域に含まれればよく、共通領域に設置される必要はない。
Step2:
マーカがサイドカメラと後方カメラとの共通領域に含まれるまで車両が走行される。なお、1つのカメラのパラメータをキャリブレーションする場合は、マーカは、当該カメラの撮影領域に含まれればよく、共通領域に設置される必要はない。また、走行は、直進である必要はない。
Step3:
サイドカメラと後方カメラによりカメラ画像が取得される。
Step4:
移動前のカメラ画像と移動前のカメラ画像とを用いて4つのカメラのパラメータをキャリブレーションする。なお、Step4では規定の位置は後方に存在するが、前方にも存在すると定義し、規定の位置4つに囲まれているように模擬してキャリブレーションが実行される。
【0013】
本明細書等における「第1」、「第2」、「第3」等の表記は、構成要素を識別するために付するものであり、必ずしも、数または順序を限定するものではない。また、構成要素の識別のための番号は、文脈毎に用いられ、1つの文脈で用いた番号が、他の文脈で必ずしも同一の構成を示すとは限らない。また、ある番号で識別された構成要素が、他の番号で識別された構成要素の機能を兼ねることを妨げるものではない。
【0014】
次に、本発明の実施の形態を図面に基づいて説明する。以下の記載および図面は、本発明を説明するための例示であって、説明の明確化のため、適宜、省略および簡略化がなされている。本発明は、他の種々の形態でも実施することが可能である。特に限定しない限り、各構成要素は、単数でも複数でも構わない。
【0015】
なお、以下の説明では、図面において同一要素については、同じ番号を付し、説明を適宜省略する。また、同種の要素を区別しないで説明する場合には、枝番を含む参照符号のうちの共通部分(枝番を除く部分)を使用し、同種の要素を区別して説明する場合は、枝番を含む参照符号を使用することがある。例えば、カメラを特に区別しないで説明する場合には、「カメラ102」と記載し、個々のカメラを区別して説明する場合には、「前方カメラ102-1」、「後方カメラ102-2」のように記載することがある。
【0016】
図1は、第1の実施の形態によるキャリブレーションシステム100の一例を示す図である。キャリブレーションシステム100は、前輪が操舵輪である車両101を含んで構成される。車両101の前後左右には、カメラ102が設けられている。例えば、前方カメラ102-1および後方カメラ102-2は、ナンバープレート付近の車体に取り付けられ、左方カメラ102-3および右方カメラ102-4は、サイドミラーの下部等に取り付けられている。
【0017】
カメラ102には、車両101の全周囲の画像を取得できるように、広角の魚眼レンズを備えた魚眼カメラが採用される。カメラ102は、広角の画像を取得するために、既知の歪み関数に基づいて画像を歪ませている。また、カメラ102は、車両101に対し、理想的には、予め設定されたデフォルトのパラメータを以て車両101に設置される。しかしながら、実際には、設置許容差、部品誤差、組立て誤差等の誤差があるため、誤差がなくなるようにカメラ102のパラメータが調整(キャリブレーション)される。
【0018】
ここで、キャリブレーションシステム100では、車両101外の任意の地点に原点Oが設定される。例えば、カメラ102のパラメータをキャリブレーションするための実行指示が入力(キャリブレーション機能がオン)されたときの車両101のリアシャフト中心から鉛直下方に下ろした地面上の点が空間座標の原点Oとして設定される。カメラ102の光軸方向が鉛直方向の下向きの設置姿勢を、カメラ102の基準姿勢として決めておくことで、車両101に取り付けられるカメラ102の設置位置および設置姿勢を特定することができる。以下では、車両101が移動しても原点Oが移動しない座標系を「世界座標系」と記す。
【0019】
キャリブレーションシステム100では、キャリブレーションに用いられるマーカを作業者が設置するための世界座標系における規定の位置に当該マーカと同サイズの規定領域111が定められている。当該マーカは、矩形状であり、キャリブレーションの際、車両101の左前方の左規定領域111-1と車両101の右前方の右規定領域111-2とに設置される。以下では、左規定領域111-1の頂点C1-1(x1,y1,z1)~頂点C1-4(x4,y4,z4)を示す情報を「左方規定座標情報」と記し、右規定領域111-2の頂点C2-1(x5,y5,z5)~頂点C2-4(x8,y8,z8)を示す情報を「右方規定座標情報」と記すことがある。なお、各図において、説明の便宜のために頂点に黒丸を示していることがあるが、実際には、黒丸は存在しなくてもよい。
【0020】
図2は、キャリブレーションシステム100に係るハードウェア構成の一例を示す図である。キャリブレーションシステム100は、カメラ102と、演算装置210と、RAM(Random Access Memory)220と、ROM(Read Only Memory)230と、表示装置240と、車速センサ250と、舵角センサ260と、ヨーレートセンサ270と、入力装置280と、通信装置290とを備えている。
【0021】
演算装置210は、カメラ102、車速センサ250、舵角センサ260、ヨーレートセンサ270、入力装置280、通信装置290等から送信される種々の情報を受け取る。演算装置210は、受け取った情報を用いて、プログラム等に基づき演算処理を実行する。
【0022】
RAM220には、演算装置210における演算処理の過程で必要となる数値データ、演算処理の途中結果に対するプログラムの変数等のデータが書き込まれる。書き込まれたデータは、演算装置210の演算処理の過程で適宜必要に応じて読み出されて演算処理に使用される。また、RAM220には、各カメラ102によって撮像された画像(画像データ)等も格納される。
【0023】
ROM230には、キャリブレーションを実行するプログラム、プログラムで必要となる情報等が格納される。例えば、ROM230には、各カメラ102の設置位置および角度(ピッチ角、ヨー角、ロール角、カメラ高さ)の設計値(外部パラメータ)、各カメラ102の焦点距離、画素サイズ、光軸中心、歪み関数等(内部パラメータ)のパラメータが格納される。また、例えば、ROM230には、左方規定座標情報および右方規定座標情報が格納される。
【0024】
表示装置240は、演算装置210の処理結果を受け取り、ディスプレイ等を用いてその処理結果をユーザに提示する。なお、ユーザは、運転者、同乗者、作業者等である。例えば、ユーザに対してカメラ102の画像を視点変換した俯瞰画像を表示する。また、表示装置240は、車両101の後方を撮像する後方カメラ102-2の画像だけを表示する等、演算装置210の出力に従って表示内容を切り替えることもできる。
【0025】
車速センサ250は、車速を検出するセンサである。舵角センサ260は、舵角を検出するセンサである。なお、舵角センサ260では、前輪のタイヤ角が舵角として検出される。ヨーレートセンサ270は、ヨーレートを検出するセンサである。各センサで検出されたセンサ情報は、演算装置210に出力され、演算装置210における演算処理で利用される。
【0026】
入力装置280は、スイッチ、ボタン等といった、ユーザの操作を受け付ける装置である。入力装置280は、キャリブレーション機能のオン/オフ、キャリブレーション結果の初期化、キャリブレーション方法の変更等に利用される。入力装置280を介して入力された各種情報は、演算装置210に出力される。
【0027】
通信装置290は、不図示の外部機器との通信に使用される装置である。演算装置210は、通信装置290を介して外部機器から各種情報を受信すると共に、演算装置210で演算された各種情報を外部機器へ出力する。
【0028】
各カメラ102において撮像された画像は、演算装置210に出力される。ここで、演算装置210は、画像生成装置211とキャリブレーション装置212とを備える。
【0029】
例えば、画像生成装置211は、各カメラ102から入力された画像を視点変換し、上方から地面を見下ろしたような俯瞰画像を生成する。より詳細には、画像生成装置211は、各カメラ102において撮像された画像(車両101の周囲の路面が撮像されたスルー画像)について、ROM230等に格納された内部パラメータを用いて画像の歪みを除去した画像を生成する。画像生成装置211は、その歪みを除去した各画像を、ROM230等に格納された外部パラメータを用いて、俯瞰視点から見た画像に視点変換する。このような視点変換処理は、周知のカメラの幾何変換式を使って、俯瞰画像の特定の画素とそれに対応する各カメラ102の特定の画素とを計算し、その画素の輝度値を俯瞰画像の画素に割り当てることによって実現できる。対応する画素が小数点を含み、該当する画素がない場合は、周知の輝度の補間処理によって周辺画素の中間輝度を割り当てる処理が行われる。
【0030】
キャリブレーション装置212は、車両101の周囲の画像を取得するカメラ102のパラメータ(例えば、外部パラメータ)をキャリブレーションする。キャリブレーション装置212は、視点変換される俯瞰画像が車両101を真上から見下ろした画像となるように、各カメラ102のパラメータをキャリブレーションする。キャリブレーション装置212は、例えば、ECU(Electronic Control Unit)であり、CPU(Central Processing Unit)、ROM、RAM等を含むマイクロコントローラを主体として構成される。キャリブレーション装置212の機能(取得部213、キャリブレーション部214等)は、例えば、CPUがROMに格納されたプログラムをRAMに読み出して実行すること(ソフトウェア)により実現されてもよいし、専用の回路等のハードウェアにより実現されてもよいし、ソフトウェアとハードウェアとが組み合わされて実現されてもよい。なお、キャリブレーション装置212の1つの機能は、複数の機能に分けられていてもよいし、複数の機能は、1つの機能にまとめられていてもよい。また、キャリブレーション装置212の機能の一部は、別の機能として設けられてもよいし、他の機能に含められていてもよい。
【0031】
取得部213は、車両101が移動したときの車両101の移動情報を取得する。キャリブレーション部214は、取得部213により取得された移動情報と、カメラ102により取得された画像とをもとにカメラ102のパラメータをキャリブレーションするキャリブレーション処理を実行する。
【0032】
図3は、キャリブレーション処理の一例を示す図である。以下では、
図4~
図6を適宜に用いてキャリブレーション処理を説明する。なお、キャリブレーション処理は、マーカ400が規定領域111に設置され、入力装置280を介してキャリブレーション機能がオンされた場合に開始する。
【0033】
ここで、
図4では、左規定領域111-1は、左マーカ400-1により隠れているが、前方カメラ102-1の撮影範囲401-1と、左方カメラ102-3の撮影範囲401-3とに共通する領域(左前共通領域411-1)に設けられている。また、右規定領域111-2は、右マーカ400-2により隠れているが、前方カメラ102-1の撮影範囲401-1と、右方カメラ102-4の撮影範囲401-4とに共通する領域(右前共通領域411-2)に設けられている。なお、撮影範囲401は、
図4に示す位置、大きさ、および範囲に限るものではない。
【0034】
作業者は、マーカ400を規定領域111に設置した後、入力装置280を操作して、カメラ102による撮影を指示する。左マーカ400-1は、左規定領域111-1と同じ規定サイズであり、左規定領域111-1に重なるように設置される。右マーカ400-2は、右規定領域111-2と同じ規定サイズであり、右規定領域111-2に重なるように設置される。
【0035】
S301では、キャリブレーション装置212は、前方カメラ102-1と、左方カメラ102-3および右方カメラ102-4(サイドカメラ)とから、マーカ400が撮像された画像を取得する。
図5には、右方カメラ102-4から取得される画像510の一例が示されている。画像510に示すように、右マーカ400-2は、マーカ画像511として撮像されている。
【0036】
続いて、作業者は、後方カメラ102-2の撮影範囲401-2と、左方カメラ102-3の撮影範囲401-3とに共通する領域(左後共通領域411-3)および後方カメラ102-2の撮影範囲401-2と、右方カメラ102-4の撮影範囲401-4とに共通する領域(右後共通領域411-4)にマーカ400が含まれるように車両101の移動を開始する。例えば、作業者は、後方カメラ102-2の映像と、左方カメラ102-3の映像および/または右方カメラ102-4の映像とを映しているディスプレイを確認し、これらの映像にマーカ400が映るまで車両101を前方に移動させる。
【0037】
なお、左規定領域111-1は、左後共通領域411-3に設けられていてもよい。この場合、右規定領域111-2は、右後共通領域411-4に設けられている。そして、作業者は、前方カメラ102-1の映像と、左方カメラ102-3の映像および/または右方カメラ102-4の映像とを映しているディスプレイを確認し、これらの映像にマーカ400が映るまで車両101を後方に移動させる。
【0038】
つまり、左マーカ400-1は、車両101の前方カメラ102-1と車両101の後方カメラ102-2との何れか一方のカメラ102の撮影範囲401と車両101の左方カメラ102-3の撮影範囲401-3とが重なる共通領域411内の規定の左方の位置に設けられてもよい。この場合、右マーカ400-2は、上記一方のカメラ102の撮影範囲401と車両101の右方カメラ102-4の撮影範囲401-4とが重なる共通領域411内の規定の右方の位置に設けられる。
上記構成によれば、例えば、規定の左方の位置に左マーカ400-1を設置し、規定の右方の位置に右マーカ400-2を設置するといった簡易な構成により、車両101の前後左右に設けられたカメラ102のパラメータをキャリブレーションすることができる。
【0039】
S302では、キャリブレーション装置212は、車両101の移動中(車両101が停止したことを検出するまで)、センサからセンサ情報を取得する。より具体的には、キャリブレーション装置212は、走行開始から停車するまでの車速センサ250、舵角センサ260、およびヨーレートセンサ270の各々のセンサ情報を取得して保存する。
【0040】
S303では、キャリブレーション装置212は、左後共通領域411-3および右後共通領域411-4にマーカ400が含まれているか否かを判定する。キャリブレーション装置212は、マーカ400が含まれていると判定した場合、S304に処理を移し、マーカ400が含まれていないと判定した場合、キャリブレーション処理を終了する。
【0041】
S304では、キャリブレーション装置212は、後方カメラ102-2と、左方カメラ102-3および右方カメラ102-4(サイドカメラ)とから、マーカ400が撮像された画像を取得する。
図5には、右方カメラ102-4から取得される画像520の一例が示されている。画像520に示すように、右マーカ400-2は、マーカ画像521として撮像されている。
【0042】
S305では、キャリブレーション装置212は、S302において取得したセンサ情報から、走行開始から停車まで車両101がどの向きへどの程度の距離を走行したかを示す移動情報(車両101の移動距離および車両101の移動向き)を算出する。
【0043】
S306では、キャリブレーション装置212は、模擬規定領域を生成する。ここで、車両101の移動後、規定領域111は後方に存在するが、キャリブレーション装置212は、前方にも規定領域が存在すると定義し、4つの規定領域に囲まれているように模擬してキャリブレーションする。例えば、キャリブレーション装置212は、規定領域111の各頂点Cに移動情報を加算した各位置を頂点とする模擬規定領域(規定領域600)を生成する。これにより同じタイミングで車両101周辺に4つの規定領域が配置されているように定義することができる。キャリブレーション装置212は、これらの規定領域を用いてキャリブレーションを実行する。
【0044】
つまり、キャリブレーション装置212は、左規定領域111-1の4つの頂点C1に対応する左規定領域600-1の4つの頂点CD1(CD1-1、CD1-2、CD1-3、CD1-4)を算出する。また、キャリブレーション装置212は、右規定領域111-2の4つの頂点C2に対応する右規定領域600-2の4つの頂点CD2(CD2-1、CD2-2、CD2-3、CD2-4)を算出する。なお、移動情報が加味された頂点には、添え字「D」を付している。
【0045】
S307では、キャリブレーション装置212は、S301において取得した各画像におけるマーカ400の各頂点のカメラ座標を世界座標に変換する。
【0046】
例えば、キャリブレーション装置212は、画像510に矩形検出を行い、マーカ画像511の4つ頂点512を抽出する。そして、キャリブレーション装置212は、4つの頂点512の画像510上の座標を右方カメラ102-4のパラメータを用いて、画像座標から世界座標に変換する。このときの世界座標におけるマーカ領域の4つの頂点P2を、頂点P2-1、頂点P2-2、頂点P2-3、および頂点P2-4と記す。そして、キャリブレーション装置212は、4つの頂点P2に移動情報を加算した移動後の右マーカ領域611-2の4つの頂点PD2(頂点PD2-1、頂点PD2-2、頂点PD2-3、頂点PD2-4)を算出する。
【0047】
また、例えば、キャリブレーション装置212は、画像520に矩形検出を行い、マーカ画像521の4つ頂点522を抽出する。そして、キャリブレーション装置212は、4つの頂点522の画像520上の座標を右方カメラ102-4のパラメータを用いて、画像座標から世界座標に変換する。このときの世界座標における右マーカ領域621-2の4つの頂点Q2を、頂点Q2-1、頂点Q2-2、頂点Q2-3、および頂点Q2-4と記す。
【0048】
なお、キャリブレーション装置212は、左方カメラ102-3についても上記と同様に処理し、図示は省略する頂点P1(P1-1、P1-2、P1-3、P1-4)と、移動後の左マーカ領域611-1の頂点PD1(PD1-1、PD1-2、PD1-3、PD1-4)と、左マーカ領域621-1の頂点Q1(Q1-1、Q1-2、Q1-3、Q1-4)とを算出する。また、図示は省略するが、キャリブレーション装置212は、前方カメラ102-1についても、左マーカ400-1に対応する頂点R1(R1-1、R1-2、R1-3、R1-4)および頂点RD1(RD1-1、RD1-2、RD1-3、RD1-4)と、右マーカ400-2に対応する頂点R2(R2-1、R2-2、R2-3、R2-4)および頂点RD2(RD2-1、RD2-2、RD2-3、RD2-4)とを算出する。更に、キャリブレーション装置212は、後方カメラ102-2についても、左マーカ400-1に対応する頂点S1(S1-1、S1-2、S1-3、S1-4)と、右マーカ400-2に対応する頂点S2(S2-1、S2-2、S2-3、S2-4)とを算出する。
【0049】
S308では、キャリブレーション装置212は、前方カメラ102-1のパラメータをキャリブレーションする。より具体的には、キャリブレーション装置212は、左規定領域600-1の4つの頂点CD1の各々と、前方カメラ102-1で取得された画像から算出された4つの頂点RD1の各々とが一致し、かつ、右規定領域600-2の4つの頂点CD2の各々と、前方カメラ102-1で取得された画像から算出された4つの頂点RD2の各々とが一致するように、前方カメラ102-1のパラメータを最適化する。
【0050】
このように、キャリブレーション部214は、第1の地点で前方カメラ102-1により取得された画像から、左マーカ400-1の1以上の頂点R1(第1の左方の座標情報)を算出し、当該画像から、右マーカ400-2の1以上の頂点R2(第1の右方の座標情報を算出する。第1の地点は、規定領域111に設置されたマーカ400を前方カメラ102-1が撮影可能な車両101の地点である。キャリブレーション部214は、移動情報に基づいて、左規定領域111-1(規定の左方の位置)に対応する移動後の左規定領域600-1(規定の左方の位置)を示す移動後の頂点CD1(規定の左方の座標情報)と右規定領域111-2(規定の右方の位置)に対応する移動後の右規定領域600-2(規定の右方の位置)を示す移動後の頂点CD2(規定の右方の座標情報)とを算出する。キャリブレーション部214は、移動情報に基づいて、頂点R1に対応する移動後の頂点RD1と頂点R2に対応する頂点RD2とを算出する。また、キャリブレーション部214は、頂点CD1と頂点RD1とが一致し、かつ、頂点CD2と頂点RD2とが一致するように、前方カメラ102-1のパラメータを最適化する。なお、キャリブレーション部214は、頂点C1と頂点R1とが一致し、かつ、頂点C2と頂点R2とが一致するように、前方カメラ102-1のパラメータを最適化してもよい。
上記構成によれば、例えば、左規定領域111-1に左マーカ400-1を設置し、右規定領域111-2に右マーカ400-2を設置するといった簡易な構成により、車両101の前方カメラ102-1のパラメータをキャリブレーションすることができる。
【0051】
S309では、キャリブレーション装置212は、後方カメラ102-2のパラメータをキャリブレーションする。より具体的には、キャリブレーション装置212は、左規定領域600-1の4つの頂点C1の各々と、後方カメラ102-2で取得された画像から算出された4つの頂点S1の各々とが一致し、かつ、右規定領域600-2の4つの頂点C2の各々と、後方カメラ102-2で取得された画像から算出された4つの頂点S2の各々とが一致するように、後方カメラ102-2のパラメータを最適化する。
【0052】
このように、キャリブレーション部214は、マーカ400を後方カメラ102-2が撮影可能な第2の地点で後方カメラ102-2により取得された画像から、左マーカ400-1の頂点Q1を算出する。キャリブレーション部214は、当該画像から、右マーカ400-2の頂点Q2を算出する。ここで、第2の地点は、左マーカ400-1が左後共通領域411-3に含まれ、かつ、右マーカ400-2が右後共通領域411-4に含まれる車両101の地点である。ただし、サイドカメラのパラメータをキャリブレーションしない場合、第2の地点は、左マーカ400-1および右マーカ400-2が後方カメラ102-2の撮影範囲401-2に含まれる車両101の地点であってよい。キャリブレーション部214は、頂点C1と頂点Q1とが一致し、かつ、頂点C2と頂点Q2とが一致するように、後方カメラ102-2のパラメータを最適化する。
例えば、左規定領域111-1に左マーカ400-1を設置し、右規定領域111-2に右マーカ400-2を設置するといった簡易な構成により、車両101の後方カメラ102-2のパラメータをキャリブレーションすることができる。
【0053】
S310では、キャリブレーション装置212は、左方カメラ102-3のパラメータをキャリブレーションする。より具体的には、キャリブレーション装置212は、左規定領域600-1の4つの頂点CD1の各々と、S301において左方カメラ102-3で取得された画像から算出された4つの頂点PD1の各々とが一致し、かつ、左規定領域111-1の4つの頂点C1の各々と、S304において左方カメラ102-3で取得された画像から算出された4つの頂点Q1の各々とが一致するように、左方カメラ102-3のパラメータを最適化する。
【0054】
S311では、キャリブレーション装置212は、右方カメラ102-4のパラメータをキャリブレーションする。より具体的には、キャリブレーション装置212は、右規定領域600-2の4つの頂点CD2の各々と、S301において右方カメラ102-4で取得された画像から算出された4つの頂点PD2の各々とが一致し、かつ、右規定領域111-2の4つの頂点C2の各々と、S304において右方カメラ102-4で取得された画像から算出された4つの頂点Q2の各々とが一致するように、右方カメラ102-4のパラメータを最適化する。
【0055】
なお、S308~S311の最適化には、PSO(Particle Swarm Optimization)、DE(Differential Evolution)等の公知の技術を用いることができる。
【0056】
このように、キャリブレーション部214は、S301において左方カメラ102-3により取得された画像から、左マーカ400-1の頂点P1を算出し、S304において左方カメラ102-3により取得された画像から、左マーカ400-1の頂点Q1を算出する。また、キャリブレーション部214は、S301において右方カメラ102-4により取得された画像から、右マーカ400-2の頂点P2を算出し、S304において右方カメラ102-4により取得された画像から、右マーカ400-2の頂点Q2を算出する。キャリブレーション部214は、移動情報に基づいて、左規定領域111-1に対応する移動後の左規定領域600-1を示す移動後の頂点CD1と、右規定領域111-2に対応する移動後の右規定領域600-2を示す移動後の頂点CD2とを算出する。キャリブレーション部214は、動情報に基づいて、頂点P1に対応する移動後の頂点PD1と、頂点P2に対応する移動後の頂点PD2とを算出する。キャリブレーション部214は、移動後の頂点CD1と移動後の頂点PD1とが一致し、かつ、頂点C1と頂点Q1とが一致するように、左方カメラ102-3のパラメータを最適化する。キャリブレーション部214は、移動後の頂点CD2と移動後の頂点PD2とが一致し、かつ、頂点C2と頂点Q2とが一致するように、右方カメラ102-4のパラメータを最適化する。
上記構成によれば、例えば、左規定領域111-1に左マーカ400-1を設置し、右規定領域111-2に右マーカ400-2を設置するといった簡易な構成により、車両101の左方カメラ102-3のパラメータと車両101の右方カメラ102-4のパラメータとを一度にキャリブレーションすることができる。
【0057】
以上のように、キャリブレーション部214は、第1の地点でカメラ102により取得された第1の画像から世界座標系のマーカ400の第1のマーカ領域を算出し、第2の地点でカメラ102により取得された第2の画像から世界座標系のマーカ400の第2のマーカ領域621を算出する。キャリブレーション部214は、第1の地点から第2の地点までの車両101の移動情報に基づいて、規定領域111に対応する移動後の規定領域600を算出する。キャリブレーション部214は、上記移動情報に基づいて、第1のマーカ領域に対応する移動後の第1のマーカ領域611を算出する。キャリブレーション部214は、移動後の規定領域600と移動後の第1のマーカ領域611とが一致し、かつ、規定領域111と第2のマーカ領域621とが一致するように、カメラ102のパラメータを最適化する。
上記構成では、世界座標系を用いた簡易な構成により、車両101の前後左右に設けられた各カメラ102のパラメータをキャリブレーションすることができる。
【0058】
(II)第2の実施の形態
第1の実施の形態では、世界座標系を用いてカメラ102のパラメータをキャリブレーションする方法について説明したが、本実施の形態では、車両101の移動に応じて原点Oが移動する車両座標系を用いてカメラ102のパラメータをキャリブレーションする方法について説明する。なお、第1の実施の形態と同じ構成については、同じ符号を用いてその説明を省略する。
【0059】
図7に示すように、本実施の形態のキャリブレーションシステム700では、空間座標の原点Oは、車両101上の任意の場所に設定される。例えば、原点Oは、車両101上のフロントシャフト中心点に設定される。キャリブレーションシステム700におけるキャリブレーション処理は、
図3と同様の手順で実施され、異なる処理内容について説明する。
【0060】
S306では、キャリブレーション装置212は、模擬規定領域を生成する。ここで、規定領域111は、車両座標により定義され、車両101と共に移動する。よって、車両101の移動後、規定領域111は前方に存在するが、キャリブレーション装置212は、後方にも規定領域が存在すると定義し、4つの規定領域に囲まれているように模擬してキャリブレーションする。例えば、キャリブレーション装置212は、規定領域111の各頂点Cに移動情報を減算した各位置を頂点とする模擬規定領域(規定領域710)を生成する。これにより同じタイミングで車両101周辺に4つの規定領域が配置されているように定義することができる。キャリブレーション装置212は、これらの規定領域を用いてキャリブレーションを実行する。
【0061】
つまり、キャリブレーション装置212は、左規定領域111-1の4つの頂点C1に対応する左規定領域710-1の4つの頂点CD1(CD1-1、CD1-2、CD1-3、CD1-4)を算出する。また、キャリブレーション装置212は、右規定領域111-2の4つの頂点C2に対応する右規定領域710-2の4つの頂点CD2(CD2-1、CD2-2、CD2-3、CD2-4)を算出する。
【0062】
S307では、キャリブレーション装置212は、S301において取得した各画像におけるマーカ400の各頂点のカメラ座標を車両座標に変換する。
【0063】
例えば、キャリブレーション装置212は、画像510に矩形検出を行い、マーカ画像511の4つ頂点512を抽出する。そして、キャリブレーション装置212は、4つの頂点512の画像510上の座標を右方カメラ102-4のパラメータを用いて、画像座標から車両座標に変換する。このときの車両座標における右マーカ領域611-2の4つの頂点P2を、頂点P2-1、頂点P2-2、頂点P2-3、および頂点P2-4と記す。
【0064】
また、例えば、キャリブレーション装置212は、画像520に矩形検出を行い、マーカ画像521の4つ頂点522を抽出する。そして、キャリブレーション装置212は、4つの頂点522の画像520上の座標を右方カメラ102-4のパラメータを用いて、画像座標から車両座標に変換する。このときの車両座標における右マーカ領域621-2の4つの頂点Q2を、頂点Q2-1、頂点Q2-2、頂点Q2-3、および頂点Q2-4と記す。
【0065】
なお、キャリブレーション装置212は、左方カメラ102-3についても上記と同様に処理し、左マーカ領域611-1の頂点P1(P1-1、P1-2、P1-3、P1-4)と、左マーカ領域621-1の頂点Q1(Q1-1、Q1-2、Q1-3、Q1-4)とを算出する。また、図示は省略するが、キャリブレーション装置212は、前方カメラ102-1についても、左マーカ400-1に対応する頂点R1(R1-1、R1-2、R1-3、R1-4)と、右マーカ400-2に対応する頂点R2(R2-1、R2-2、R2-3、R2-4)とを算出する。更に、キャリブレーション装置212は、後方カメラ102-2についても、左マーカ400-1に対応する頂点S1(S1-1、S1-2、S1-3、S1-4)と、右マーカ400-2に対応する頂点S2(S2-1、S2-2、S2-3、S2-4)とを算出する。
【0066】
S308では、キャリブレーション装置212は、前方カメラ102-1のパラメータをキャリブレーションする。より具体的には、キャリブレーション装置212は、左規定領域111-1の4つの頂点C1の各々と、前方カメラ102-1で取得された画像から算出された4つの頂点R1の各々とが一致し、かつ、右規定領域111-2の4つの頂点C2の各々と、前方カメラ102-1で取得された画像から算出された4つの頂点R2の各々とが一致するように、前方カメラ102-1のパラメータを最適化する。
【0067】
S309では、キャリブレーション装置212は、後方カメラ102-2のパラメータをキャリブレーションする。より具体的には、キャリブレーション装置212は、左規定領域710-1の4つの頂点CD1の各々と、後方カメラ102-2で取得された画像から算出された4つの頂点S1の各々とが一致し、かつ、右規定領域710-2の4つの頂点CD2の各々と、後方カメラ102-2で取得された画像から算出された4つの頂点S2の各々とが一致するように、後方カメラ102-2のパラメータを最適化する。
【0068】
S310では、キャリブレーション装置212は、左方カメラ102-3のパラメータをキャリブレーションする。より具体的には、キャリブレーション装置212は、左規定領域111-1の4つの頂点C1の各々と、S301において左方カメラ102-3で取得された画像から算出された4つの頂点P1の各々とが一致し、かつ、左規定領域710-1の4つの頂点CD1の各々と、S304において左方カメラ102-3で取得された画像から算出された4つの頂点Q1の各々とが一致するように、左方カメラ102-3のパラメータを最適化する。
【0069】
S311では、キャリブレーション装置212は、右方カメラ102-4のパラメータをキャリブレーションする。より具体的には、キャリブレーション装置212は、右規定領域111-2の4つの頂点C2の各々と、S301において右方カメラ102-4で取得された画像から算出された4つの頂点P2の各々とが一致し、かつ、右規定領域710-2の4つの頂点CD2の各々と、S304において右方カメラ102-4で取得された画像から算出された4つの頂点Q2の各々とが一致するように、右方カメラ102-4のパラメータを最適化する。
【0070】
以上のように、キャリブレーション部214は、第1の地点でカメラ102により取得されたから車両座標系のマーカ400の第1のマーカ領域611を算出し、第2の地点でカメラ102により取得された第2の画像から、車両座標系のマーカ400の第2のマーカ領域621を算出する。キャリブレーション部214は、第1の地点から第2の地点までの車両101の移動情報に基づいて、規定領域111に対応する移動前の規定領域710を算出する。キャリブレーション部214は、規定領域111と第1のマーカ領域611とが一致し、かつ、移動前の規定領域710と第2のマーカ領域621とが一致するように、カメラ102のパラメータを最適化する。
上記構成では、車両座標系を用いた簡易な構成により、車両101の前後左右に設けられた各カメラ102のパラメータをキャリブレーションすることができる。
【0071】
(III)付記
上述の実施の形態には、例えば、以下のような内容が含まれる。
【0072】
上述の実施の形態においては、本発明をキャリブレーション装置に適用するようにした場合について述べたが、本発明はこれに限らず、この他種々のシステム、装置、方法、プログラムに広く適用することができる。
【0073】
また、上述の実施の形態においては、車両101に設けられる全てのカメラ102のパラメータをキャリブレーションする場合について述べたが、本発明はこれに限らない。例えば、車両101に設けられる一部のカメラ102のパラメータをキャリブレーションするようにしてもよい。
【0074】
また、上述の実施の形態においては、隣接する2台のカメラ102で取得される映像の一部が重畳する場合について述べたが、本発明はこれに限らない。例えば、隣接する2台のカメラ102で取得される映像が接するように構成してもよい。この場合、共通領域411は存在しないので、車両101は、撮影範囲401内にマーカ400が含まれる範囲で移動され、カメラ102毎にキャリブレーションが実施される。
【0075】
また、上述の実施の形態においては、マーカおよび規定領域の形状は、矩形状を採用する場合について述べたが、本発明はこれに限らない。例えば、マーカおよび規定領域の形状は、任意の形状を採用することができる。
【0076】
また、上述の実施の形態においては、マーカの頂点および規定領域の頂点をキャリブレーションに用いる場合について述べたが、本発明はこれに限らない。例えば、マーカおよび規定領域に同じ態様で含まれる特徴的な形状(ドットパターン、チェックパターン、縞模様等)をキャリブレーションに用いるようにしてもよい。
【0077】
また、上述の実施の形態において、プログラムの一部またはすべては、プログラムソースから、キャリブレーション装置にインストールされてもよい。プログラムソースは、例えば、ネットワークで接続されたプログラム配布サーバまたはコンピュータが読み取り可能な記録媒体(例えば非一時的な記録媒体)であってもよい。また、上述の説明において、2以上のプログラムが1つのプログラムとして実現されてもよいし、1つのプログラムが2以上のプログラムとして実現されてもよい。
【0078】
また、上記の説明において、各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記憶装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
【0079】
また上述した構成については、本発明の要旨を超えない範囲において、適宜に、変更したり、組み替えたり、組み合わせたり、省略したりしてもよい。
【0080】
「A、B、およびCのうちの少なくとも1つ」という形式におけるリストに含まれる項目は、(A)、(B)、(C)、(AおよびB)、(AおよびC)、(BおよびC)または(A、B、およびC)を意味することができると理解されたい。同様に、「A、B、またはCのうちの少なくとも1つ」の形式においてリストされた項目は、(A)、(B)、(C)、(AおよびB)、(AおよびC)、(BおよびC)または(A、B、およびC)を意味することができる。
【符号の説明】
【0081】
101……車両、102……カメラ、111……規定領域、400……マーカ。