JP2011087308A - 車載カメラの校正装置、方法、及びプログラム - Google Patents

車載カメラの校正装置、方法、及びプログラム Download PDF

Info

Publication number
JP2011087308A
JP2011087308A JP2010262348A JP2010262348A JP2011087308A JP 2011087308 A JP2011087308 A JP 2011087308A JP 2010262348 A JP2010262348 A JP 2010262348A JP 2010262348 A JP2010262348 A JP 2010262348A JP 2011087308 A JP2011087308 A JP 2011087308A
Authority
JP
Japan
Prior art keywords
adjustment
camera
coordinate system
coordinates
calibration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2010262348A
Other languages
English (en)
Other versions
JP5240527B2 (ja
Inventor
Yoji Inui
陽司 乾
Kazutaka Hayakawa
和孝 早川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Aisin Corp
Original Assignee
Aisin Seiki Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Aisin Seiki Co Ltd filed Critical Aisin Seiki Co Ltd
Priority to JP2010262348A priority Critical patent/JP5240527B2/ja
Publication of JP2011087308A publication Critical patent/JP2011087308A/ja
Application granted granted Critical
Publication of JP5240527B2 publication Critical patent/JP5240527B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】簡単な構成で、短時間で精度良く車載カメラを校正することができる生産性の高い車載カメラの校正装置を提供する。
【解決手段】理想的な校正点の座標を確定前のカメラ調整値を用いて変換座標に変換する座標変換部13と、撮影画像に基づいてカメラ座標系の射影面上で特定された実座標及び変換座標に基づいて、カメラ座標系の3つの軸の内の1つ又は2つの軸を中心とする回転角に対応する調整値を演算してカメラ調整値を更新する第1調整部14と、変換座標及び実座標に基づいて、カメラ座標系の残りの軸を中心とする回転角に対応する調整値を演算してカメラ調整値を更新する第2調整部15と、所定の完了条件を満たした場合に、第1調整部及び第2調整部により演算されて更新されたカメラ調整値を確定させるカメラ調整値設定部19とを備える。
【選択図】図6

Description

本発明は、車載カメラを車両に取り付けた際の取り付け誤差を調整して車載カメラを校正する車載カメラの校正装置に関する。
近年、ドライバーの視野を補ったり、運転支援のための画像処理の入力情報としたりするために、車両周辺の情景を撮影するカメラが車両に搭載されることが増えている。カメラにより撮影された画像が駐車支援装置などに利用される場合には、カメラによる撮影画像の座標系と、画像処理に用いる画像の座標系との相関関係が精度良く整合されている必要がある。しかし、実際には、カメラ自体の生産上の精度や、車両にカメラを取り付ける際の取り付け精度などにより、両座標系の相関関係は、設計上の理想的な相関関係とはならないことが多い。従って、車両の生産工程においてカメラの校正を行い、両座標系の整合が図られている。
特開2001−245326号公報(特許文献1)や、特開2005−77107号公報(特許文献2)には、上述したような、車両の生産工程においてカメラの校正を行う技術が開示されている。これらには、作業者による調整ボタンの操作により、ディスプレイ画面上において、カメラにより撮影された校正指標と、撮影画像に重畳表示された調整枠とを所定の基準のもとに一致させてカメラの校正を行う技術が記載されている。調整枠は、三次元直交座標系におけるロール・チルト・パンに対応して3種設けられる。順次、これらの調整枠に校正指標が収まるように調整ボタンを操作することによって、カメラパラメータが変更される。3つの軸に対する調整が全て完了すると、変更されたカメラパラメータがメモリに記録される。
特許文献1や特許文献2に記載された技術は、簡単な構成でカメラを校正することができる優れたものである。しかし、カメラの回転に対応する3軸に対する調整を、作業者がディスプレイ画面を見ながら手動で調整ボタンを操作して行うため、校正に時間を要する。また、作業者によって校正精度が安定せず、校正が不充分な製品が後工程に送られる可能性もある。そこで、特開2008―131177号公報(特許文献3)に示すように、カメラの回転行列を演算して、カメラパラメータ(投影パラメータ)を求める技術が提案されている。これによれば、基準座標において所定の位置に配置された校正点の基準座標系における座標に基づいて第1行列が演算される。また、カメラの撮影画像から特定された校正点の画像座標系の座標に基づいて第2行列が演算される。そして、第1行列と第2行列とからカメラの回転行列(第3行列)が演算される。
特開2001−245326号公報(第22〜23段落、第34〜44段落、図5等) 特開2005−77107号公報(第43〜63段落等) 特開2008−131177号公報(第60〜102段落等)
特許文献3に記載された技術は、特許文献1や2のように「視覚的に合わせ込む」のではなく、カメラの回転行列を求めることによって理想的にカメラを校正する優れたものである。しかし、現実の生産現場では様々な誤差要因が存在することから、しばしば、求められた回転行列にも誤差が生じる。この場合には、校正後においても視覚的にずれが生じることになる。このため、特許文献3の技術においても、第106段落に記載されているように、校正の成否を判定する成否判定工程が設けられている。成否判定工程において校正ができていないと判定されると、再度、校正を行う必要があり、結果として生産性を低下させることになる。校正指標の数を増やし、詳細な演算を実施すれば回転行列の精度も高くなるが、生産設備を増やし、また演算時間も増大することから、好ましくはない。
本発明は、上記課題に鑑みて創案されたもので、簡単な構成で、短時間で精度良く車載カメラを校正することができる生産性の高い車載カメラの校正装置を提供することを目的とする。また、本発明は、同様の車載カメラの校正方法、並びに車載カメラの校正機能をコンピュータに実行させるための車載カメラの校正プログラムを提供することを目的とする。
上記課題に鑑み創案された本発明に係る車載カメラの校正装置の特徴構成は、
3次元直交座標系の基準座標系における規定位置に規定の姿勢で車両に取り付けられた車載カメラの3次元直交座標系のカメラ座標系と前記基準座標系との関係を前記車載カメラの実際の取り付け姿勢に応じて定義して、前記車載カメラを校正する車載カメラの校正装置であって、
前記車載カメラにより、前記基準座標系の異なる2箇所の所定位置に配置されたそれぞれの校正点を視界内に含んで撮影された撮影画像を取得する画像取得部と、
前記カメラ座標系の射影面である前記撮影画像においてそれぞれの前記校正点を検出し、前記射影面に設定される2次元直交座標系においてそれぞれの前記校正点の座標を実座標として特定する校正点特定部と、
前記車載カメラが前記規定位置に前記規定の姿勢で取り付けられた際の前記カメラ座標系と前記基準座標系との関係を定義するカメラパラメータに基づいて前記射影面においてそれぞれの前記校正点が特定される座標である初期座標を、当該カメラパラメータを前記車載カメラの実際の取り付け姿勢に応じて補正するカメラ調整値の確定前の値を用いて変換座標に変換する座標変換部と、
前記変換座標及び前記実座標に基づいて、前記カメラ座標系の3つの軸の内の1つ又は2つの軸を中心とする回転角に対応する前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の1つ又は2つの調整値を演算して、前記カメラ調整値を更新する第1調整部と、
前記第1調整部により更新された前記カメラ調整値を用いて前記座標変換部により座標変換された変換座標及び前記実座標に基づいて、前記カメラ座標系の3つの軸の内、前記第1調整部で調整された軸を除く残りの2つ又は1つの軸を中心とする回転角に対応する前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の内、前記第1調整部で演算された調整値を除く残りの2つ又は1つの調整値を演算して、前記カメラ調整値を更新する第2調整部と、
前記第1調整部及び前記第2調整部における調整時の前記変換座標と前記実座標との変位量に基づいて、前記カメラ調整値の調整が完了したと判定する調整完了判定部と、
前記調整完了判定部による調整完了の判定結果に基づいて、前記第1調整部及び前記第2調整部において演算された調整値により更新された前記カメラ調整値を確定させるカメラ調整値設定部と、
を備える点にある。
3次元のカメラ座標系の誤差を2次元の撮影画像を用いて調整しなければならないが、第1調整部と第2調整部とを用いて2段階で調整することによって、簡単な構成によりカメラの校正装置を構築することができる。第1調整部による調整結果によりカメラ調整値は更新され、そのカメラ調整値を用いて座標変換された変換座標を利用して第2調整部による調整が実施される。従って、第1調整部と第2調整部とは、所定の順序でカメラ調整値の調整を行うことになる。但し、2次元の撮影画像上で検出された校正点に基づいて、3次元のカメラ座標系の3軸の何れかを調整すると、他の軸に対する調整結果に影響を与える可能性がある。従って、この影響を踏まえて第1調整部及び第2調整部のそれぞれにおいて調整対象となるカメラ座標系の軸が設定される。その上で、第1調整部と、第1調整部の結果を用いて調整を実施する第2調整部とによって、カメラ調整値が調整される。従って、短時間で精度良く車載カメラを校正することができる生産性の高い車載カメラの校正装置が提供される。
また、本発明に係る車載カメラの校正装置は、
前記画像取得部は、前記車載カメラにより、前記基準座標系の異なる2箇所の所定位置に配置された校正指標を視界内に含んで撮影された撮影画像を取得し、
前記校正点特定部は、前記カメラ座標系の射影面である前記撮影画像において前記校正指標の中のそれぞれの校正点を検出し、前記射影面に設定される2次元直交座標系においてそれぞれの前記校正点の座標を実座標として特定すると好適である。
このような構成によれば、校正指標を含む撮影画像に基づき容易に校正点を検出し、当該検出された校正点を基に、カメラ調整値を調整することができる。
また、本発明に係る車載カメラの校正装置は、
前記調整完了判定部が、前記第1調整部及び前記第2調整部における調整時の前記変換座標と前記実座標との変位量がそれぞれ所定の基準変位量未満である場合に、前記カメラ調整値の調整が完了したと判定すると好適である。
このような構成によれば、カメラ調整値の調整が完了したか否かを容易に判定することができる。
また、上記課題に鑑み創案された本発明に係る車載カメラの校正方法の特徴構成は、
3次元直交座標系の基準座標系における規定位置に規定の姿勢で車両に取り付けられた車載カメラの3次元直交座標系のカメラ座標系と前記基準座標系との関係を前記車載カメラの実際の取り付け姿勢に応じて定義して、前記車載カメラを校正する車載カメラの校正方法であって、
前記車載カメラにより、前記基準座標系の異なる2箇所の所定位置に配置されたそれぞれの校正点を視界内に含んで撮影された撮影画像を取得する画像取得工程と、
前記カメラ座標系の射影面である前記撮影画像においてそれぞれの前記校正点を検出し、前記射影面に設定される2次元直交座標系においてそれぞれの前記校正点の座標を実座標として特定する校正点特定工程と、
前記車載カメラが前記規定位置に前記規定の姿勢で取り付けられた際の前記カメラ座標系と前記基準座標系との関係を定義するカメラパラメータに基づいて前記射影面においてそれぞれの前記校正点が特定される座標である初期座標を、当該カメラパラメータを前記車載カメラの実際の取り付け姿勢に応じて補正するカメラ調整値の確定前の値を用いて第1変換座標に変換する第1座標変換工程と、
前記第1変換座標及び前記実座標に基づいて、前記カメラ座標系の3つの軸の内の1つ又は2つの軸を中心とする回転角に対応する前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の1つ又は2つの調整値を演算して、前記カメラ調整値を更新する第1調整工程と、
前記第1調整工程において更新された確定前の前記カメラ調整値を用いて前記初期座標を第2変換座標に変換する第2座標変換工程と、
前記第2変換座標及び前記実座標に基づいて、前記カメラ座標系の3つの軸の内、前記第1調整工程において調整された軸を除く残りの2つ又は1つの軸を中心とする回転角に対応する前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の内、前記第1調整工程において演算された調整値を除く残りの2つ又は1つの調整値を演算して、前記カメラ調整値を更新する第2調整工程と、
前記第1調整工程及び前記第2調整工程において、前記第1変換座標と前記実座標との変位量、及び、前記第2変換座標と前記実座標との変位量に基づいて前記カメラ調整値の調整が完了したと判定する調整完了判定工程と、
前記調整完了判定工程において前記調整が完了した場合に移行され、前記第1調整工程及び前記第2調整工程において演算された調整値により更新された前記カメラ調整値を確定させるカメラ調整値設定工程と、
を備える点にある。
また、上記課題に鑑み創案された本発明に係る車載カメラの校正プログラムの特徴構成は、
3次元直交座標系の基準座標系における規定位置に規定の姿勢で車両に取り付けられた車載カメラの3次元直交座標系のカメラ座標系と前記基準座標系との関係を前記車載カメラの実際の取り付け姿勢に応じて定義して、前記車載カメラを校正するための機能をコンピュータに実行させる車載カメラの校正プログラムであって、
前記車載カメラにより、前記基準座標系の異なる2箇所の所定位置に配置されたそれぞれの校正点を視界内に含んで撮影された撮影画像を取得する画像取得機能と、
前記カメラ座標系の射影面である前記撮影画像においてそれぞれの前記校正点を検出し、前記射影面に設定される2次元直交座標系においてそれぞれの前記校正点の座標を実座標として特定する校正点特定機能と、
前記車載カメラが前記規定位置に前記規定の姿勢で取り付けられた際の前記カメラ座標系と前記基準座標系との関係を定義するカメラパラメータに基づいて前記射影面においてそれぞれの前記校正点が特定される座標である初期座標を、当該カメラパラメータを前記車載カメラの実際の取り付け姿勢に応じて補正するカメラ調整値の確定前の値を用いて第1変換座標に変換する第1座標変換機能と、
前記第1変換座標及び前記実座標に基づいて、前記カメラ座標系の3つの軸の内の1つ又は2つの軸を中心とする回転角に対応する前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の1つ又は2つの調整値を演算して、前記カメラ調整値を更新する第1調整機能と、
前記第1調整機能の実行により更新された確定前の前記カメラ調整値を用いて前記初期座標を第2変換座標に変換する第2座標変換機能と、
前記第2変換座標及び前記実座標に基づいて、前記カメラ座標系の3つの軸の内、前記第1調整機能の実行により調整された軸を除く残りの2つ又は1つの軸を中心とする回転角に対応する前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の内、前記第1調整機能の実行により演算された調整値を除く残りの2つ又は1つの調整値を演算して、前記カメラ調整値を更新する第2調整機能と、
前記第1調整機能及び前記第2調整機能が実行された際に、前記第1変換座標と前記実座標との変位量、及び、前記第2変換座標と前記実座標との変位量に基づいて前記カメラ調整値の調整が完了したと判定する調整完了判定機能と、
前記調整完了判定機能の実行により前記調整が完了した場合に実行され、前記第1調整機能及び前記第2調整機能の実行により演算された調整値により更新された前記カメラ調整値を確定させるカメラ調整値設定機能と、
を有する点にある。
また、本発明に係る車載カメラの校正プログラムは、好適な一形態として、
前記第1調整機能が、
前記射影面において、2つの前記実座標を結ぶ直線である実直線と2つの前記変換座標を結ぶ直線である変換直線との成す角度を、前記射影面に直交する前記カメラ座標系の1つの軸を中心とするロール回転におけるロール角の差分値として演算する第1差分値演算機能と、
当該ロール角の差分値に基づいて前記ロール回転における前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の1つであるロール調整値を演算して前記カメラ調整値を更新する第1調整値演算機能と、を有し、
前記第2調整機能が、
前記カメラ座標系において、前記カメラ座標系の原点と前記射影面上の2つの前記実座標の中点とを結ぶ直線である第2実直線と、当該原点と前記射影面上の2つの前記第2変換座標の中点とを結ぶ直線である第2変換直線との成す角度を、前記射影面に平行な前記カメラ座標系の一方の軸を中心とするパン回転におけるパン角の差分値、及び他方の軸を中心とするチルト回転におけるチルト角の差分値の少なくとも一方の差分値として演算する第2差分値演算機能と、
当該パン角の差分値に基づいて求められ、前記パン回転における前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の1つであるパン調整値、及び当該チルト角の差分値に基づいて求められ、前記チルト回転における前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の1つであるチルト調整値、の少なくとも一方の調整値を演算して前記カメラ調整値を更新する第2調整値演算機能と、を有し、
前記調整完了判定機能が、前記第1差分値演算機能及び前記第2差分値演算機能の実行により演算された差分値が、それぞれ所定の完了しきい値未満であることを前記カメラ調整値の調整の完了条件として判定を行い、当該完了条件を満たさない場合は、前記第1座標変換機能、前記第1差分値演算機能、前記第1調整値演算機能、前記第2座標変換機能、前記第2差分値演算機能、前記第2調整値演算機能を繰り返し実行させ、当該完了条件を満たす場合は、これらの機能の繰り返し実行を完了させて次の機能を実行させる機能であるプログラムとすることができる。
これら、車載カメラの校正方法や、車載カメラの校正プログラムもまた、上述した車載カメラの校正装置と同様の作用効果を有する。また、変換座標と実座標との差が所定の完了しきい値未満となるまで、繰り返しカメラ調整値が調整されるので、精度良く車載カメラを校正することができる。この際、第1調整及び第2調整の内の一方の調整が他方の調整結果に与える影響に鑑みて、第1調整と第2調整との順序が設定されている。従って、演算の繰り返しによりカメラ調整値を早期に収束させることが可能となる。
校正用マーカと車両との配置関係の一例を示す説明図 校正用マーカの一例を示す説明図 本発明の車載カメラの校正装置を含む車両内のシステム構成の一例を模式的に示すブロック図 ワールド座標系とカメラ座標系との関係を示す説明図 カメラ座標系と画像座標系との関係を示す説明図 本発明の車載カメラの校正装置の構成の一例を模式的に示すブロック図 モニタ装置の一例を示す正面図 関心領域を示す枠をモニタ装置へ表示する例を示す図 関心領域の設定原理を示す説明図 エッジ検出後の画像の一例を示す説明図 直線検出の一例を示す説明図 校正点検出の一例を示す説明図 カメラ調整値の演算手順を模式的に示すフローチャート 実直線と変換直線との校正前の関係を示す説明図 回転調整の原理を示す説明図 位置調整の原理を示す説明図 水平位置調整の原理を示す説明図 垂直位置調整の原理を示す説明図 カメラの校正が成功した時のモニタ装置への表示例を示す図 カメラの校正が成功しなかった時のモニタ装置への表示例を示す図 確認マーカの他の例を示す図 校正装置起動時の表示部への表示例を示す図
以下、車両90の後方の情景を撮影するカメラ1(車載カメラ)を校正する場合を例として、本発明の校正装置の実施形態を図面に基づいて説明する。カメラ1(車載カメラ)は、車両90の後方のナンバープレートの上方に車軸から側方へオフセットした位置に、光軸を下方(例えば水平から30°下方)に向けて設置される。カメラ1は、例えば視野角110〜120°の広角レンズを備えて構成され、後方約8m程度までの領域を撮影可能である。このカメラ1は、車両の生産工場等で車両90に取り付けられる際に取り付け誤差を吸収するべく校正される。また、修理工場などにおいて、走行による振動の累積や衝撃などによるカメラ1のずれを修正するべく校正される。
図1に示すように、本実施形態においてマーカ80(校正指標)は、カメラ1の視野範囲内において2箇所に配置される。また、マーカ80は、ワールド座標系(基準座標系)においてその座標が既知となるように所定位置に配置される。本例において、マーカ80は、図2に示すように白黒の市松模様のパターンを有している。パターン中央の点Qが校正点であり、カメラ1の校正の基準となる。つまり、マーカ80は、ワールド座標系においてこの校正点Qの座標が既知となるように配置される。
尚、ここでは白の矩形2個、黒の矩形2個の計4個の矩形により校正指標8が構成される例を示したが、合計4個以上の矩形によってマーカ80が構成されても良く、その数を限定するものではない。また、マーカ80は複数箇所であれば、3箇所以上に配置されてもよく、校正点Qも3つ以上の異なる座標に配置されてもよい。また、白と黒とに限定されることなく、他の色彩を用いてマーカ80が着色されていてもよい。さらに、マーカ80の外形形状は方形状に限定されるものではなく、円形などの他の形状であってもよい。即ち、パターン中央の点Qが良好に検出可能であれば、種々の形状を採用することが可能である。
図1に示す例では、2つのマーカ80はワールド座標系におけるYWW平面に相当する床上に、ワールド座標系のZW軸に相当する車両の主軸に対して左右対称に配置されている(D1=D2、W1=W2)。ただし、常に左右対称である必要はなく、カメラ1の視野内であって、座標値が既知であればその配置は自由である。マーカ80は、異なる工場等であっても、共通に配置されると校正装置を共通化することができて好ましい。但し、マーカ80の配置の差異は、プログラムやパラメータの変更によって容易に対応できることも多い。従って、工場において確保できる広さや他の設備との関係によってマーカ80は任意に配置されることが可能である。
マーカ80の寸法は、カメラ1の分解能や校正装置が備える画像処理機能の性能、マーカの配置位置などに応じて、精度良く校正点Qを検出できるように適切に定められる。一例として、D1やD2が1〜2m、W1やW2が1.5m程度である場合には、図2に示すように、各白黒が10〜15cm四方、全体が20〜30cm四方のマーカ80が利用される。
尚、マーカ80は、壁面や衝立などの垂直面上に設置されてもよい。この場合も、校正点Qのワールド座標(XW,YW,ZW)を正確に把握することが可能である。つまり、マーカ80は、カメラ1の視野内であれば、床面及び壁面を含む任意の面に配置可能である。本実施形態では、カメラ1を下方に向けて車両に搭載しているため、天井面にマーカ80を配置することは適切ではない。しかし、天井面がカメラ1の視野に入る場合には勿論天井面に配置されてもよい。また、マーカ80は、ワールド座標(XW,YW,ZW)の軸に対して、垂直に配置される必要はない。当然、2つのマーカ80の一方が床面上、他方が衝立上に配置されるなど、異なる面上に配置されてもよい。重要であるのは校正点Qであり、マーカ80はどのような面に配置されても構わない。つまり、ワールド座標系において校正点Qが正確に配置され、カメラ1の撮影画像から校正点Qが良好に検出可能であればマーカ80の設置方向は任意である。
本実施形態において、車両90は駐車支援装置を搭載しており、カメラ1により撮影された車両90の周辺の情景はこの駐車支援装置に利用される。この駐車支援装置は、車庫入れ駐車や縦列駐車における後退時に、ドライバーが設定したり、駐車支援装置により自動設定されてドライバーによって確認されたりした駐車位置に車両90を誘導する。この誘導は、例えば、ドライバーにより操作されるステアリングの操舵角を検出して、車両90の予想進路を撮影画像に重畳表示させるものである。また、別の誘導は、たとえば、駐車位置に対して車両90を移動させるべく、自動的に操舵制御を行うものである。
図3は、このような駐車支援装置40を搭載する車両90のシステム構成の一例を模式的に示すブロック図である。駐車支援装置40には、後述するように画像認識などの高度な画像処理を行い、駐車支援装置40の中核を担うCPU(central processing unit)5が備えられている。CPU5は、プログラムメモリ6に格納されたプログラムや、パラメータメモリ7に格納されたパラメータを利用して各種処理を実行する。ここでは、プログラムメモリ6やパラメータメモリ7は、CPU5とは別の不揮発性メモリであるが、CPU5と同一のパッケージ内に集積されていてもよい。駐車支援装置40は、CPU5やメモリ、その他の周辺回路と共に、駐車支援ECU(electronic control unit)9として構成される。本例では、CPU5を中核としたが、駐車支援装置40は、DSP(digital signal processor)など、他の論理演算プロセッサや論理回路を中核として構成されてもよい。
図3に示すように、カメラ1により撮影された画像は、スーパーインポーズ部2a、グラフィック描画部2b、フレームメモリ2cなどを有する画像処理モジュール2を介して、モニタ装置4に表示される。カメラ1は、CCD(charge coupled device)やCIS(CMOS image sensor)などの撮像素子を用いて、毎秒15〜30フレームの2次元画像を撮影し、デジタル変換して動画データを出力するデジタルカメラである。各フレームの2次元画像は、フレームメモリ2cに格納され、フレームごとに画像処理やグラフィックの重畳を施されることが可能である。グラフィック描画部2bへの描画指示や、スーパーインポーズ部2aへのグラフィック重畳指示は、CPU5から発せられる。
モニタ装置4は、ナビゲーションシステムのモニタ装置が兼用されている。図3に示すように、モニタ装置4は、表示部4aと、表示部4aに形成されたタッチパネル4bと、スピーカ4cとを有している。表示部4aは、画像処理モジュール2から提供されるカメラ1の撮影画像や、グラフィック画像、それらが合成された合成画像などを表示する。一例として、表示部4aは液晶ディスプレイによって構成される。タッチパネル4bは、表示部4aと共に形成され、指などによる接触位置をロケーションデータとして出力することができる感圧式や静電式の指示入力装置である。図3においては、スピーカ4cは、モニタ装置4に備えられている場合を例示しているが、スピーカ4cはドアの内側など、他の場所に備えられても良い。スピーカ4cは、CPU5の指示に応じて音声処理モジュール3から提供される音声を出力する。尚、CPU5は、単純にブザー8を介して報知音を鳴らす場合もある。
CPU5は、図3において符号50で示す車内ネットワークを介して種々のシステムやセンサと通信可能に接続されている。本実施形態においては、車内ネットワークとしてCAN(controller area network)50を例示している。図3に示すように、駐車支援装置40(CPU5)は、車内のパワーステアリングシステム31やブレーキシステム37と接続される他、外部接続用端子などを介して外部システム33と接続される。これら各システムは、駐車支援装置40と同様にCPUなどの電子回路を中核として構成され、駐車支援ECU9と同様に周辺回路と共にECUを有して構成される。
パワーステアリングシステム31は、電動パワーステアリング(EPS : electric power steering)システムやSBW(steer-by-wire)システムである。このシステムは、ドライバーにより操作されるステアリングホイールにアクチュエータ41によりアシストトルクを付加する他、ステアリングホイールや操舵輪をアクチュエータ41により駆動することによって自動操舵を行う。
ブレーキシステム37は、ブレーキのロックを抑制するABS(anti lock braking system)や、コーナリング時の車両の横滑りを抑制する横滑り防止装置(ESC : electronic stability control)、ブレーキ力を増強させるブレーキアシストなどを有した電動ブレーキシステムや、BBW(brake-by-wire)システムである。このシステムは、アクチュエータ47を介して車両90に制動力を付加することができる。外部システム33は、車両90の生産時や点検、整備の際に使用される検査システムや調整システム、ディーラーやユーザーが接続コネクタなどを介して取り付けるオプションシステムである。
図3において、各種センサの一例として、ステアリングセンサ21や車輪速センサ23、シフトレバースイッチ25、アクセルセンサ29がCAN50に接続されている。ステアリングセンサ21は、ステアリングホイールの操舵量(回転角度)を検出するセンサであり、例えばホール素子などを用いて構成される。駐車支援装置40は、ドライバーによるステアリングホイールの操舵量や、自動操舵時の操舵量をステアリングセンサ21から取得して各種制御を実行する。
車輪速センサ23は、車両90の車輪の回転量や単位時間当たりの回転数を検出するセンサであり、例えばホール素子などを用いて構成される。駐車支援装置40は、車輪速センサ23から取得した情報に基づいて車両90の移動量などを演算し、各種制御を実行する。車輪速センサ23は、ブレーキシステム37に備えられている場合もある。ブレーキシステム37は、左右の車輪の回転差などからブレーキのロックや、車輪の空回り、横滑りの兆候などを検出して、各種制御を実行する。車輪速センサ23がブレーキシステム37に備えられている場合には、駐車支援装置40は、ブレーキシステム37を介して情報を取得する。ブレーキセンサ27は、ブレーキペダルの操作量を検出するセンサであり、駐車支援装置40は、ブレーキシステム37を介して情報を取得する。駐車支援装置40は、例えば、自動操舵中にブレーキペダルが踏み込まれたような場合に、自動操舵に不都合な環境下にあるとして自動操舵を中断したり中止したりする制御を行うことができる。
シフトレバースイッチ25は、シフトレバーの位置を検出するセンサ又はスイッチであり、変位センサなどを用いて構成される。例えば、シフトがリバースにセットされた場合に、駐車支援装置40は支援制御を開始したり、リバースから前進に変更された場合に支援制御を終了させたりすることができる。
また、ステアリングホイールへの操作トルクを検出するトルクセンサ22は、ドライバーがステアリングホイールを握っているか否かについても検出することが可能である。駐車支援装置40は、自動操舵中にドライバーがステアリングホイールを操作するために強く握った場合などに、自動操舵に不都合な環境下にあるとして自動操舵を中断したり中止したりする制御を行うことができる。また、自動操舵時には、一般的にエンジンのアイドリングによる車両90のクリーピングが利用される。従って、ドライバーがアクセルを操作したことがアクセルセンサ29により検出された場合、駐車支援装置40は、自動操舵に不都合な環境下にあるとして自動操舵を中断したり中止したりする制御を行うことができる。
図3に示す各種システムやセンサ、これらの接続形態については一例であり、他の構成や接続形態が採用されてもよい。また、上述したように、センサは直接CAN50に接続されても良いし、種々のシステムを介して接続されてもよい。
上述したように、駐車支援装置40は、CPU5を中核として構成され、プログラムメモリ6に格納されたプログラム(ソフトウェア)と協働して駐車支援のための種々の演算を実施する。上述したような駐車支援を実施する際には、カメラ1による撮影画像の座標系と、画像処理に用いる画像の座標系との相関関係を規定する必要がある。駐車支援装置40は、両座標系の相関関係を規定するためのカメラパラメータが格納されたパラメータメモリ7を有している。つまり、駐車支援装置40は、CPU5のハードウェアと、プログラムメモリ6に格納されたプログラム(ソフトウェア)と、パラメータメモリ7に格納されたカメラパラメータとの協働によって機能する。
カメラパラメータは、ワールド座標系とカメラ1のカメラ座標系との関係を定義する値である。カメラパラメータは、カメラ1自体の光学系の精度や、カメラ1を車両90に取り付ける際の取り付け精度などにより、設計上の理想的な値とはならないことが多い。例えば、カメラ1は、3次元直交座標系のワールド座標系における規定位置に規定の姿勢で車両に取り付けられるが、取り付け誤差が存在する。後述するように特に姿勢に関する誤差が問題となる。このため、カメラ1の実際の取り付け姿勢に応じてカメラパラメータを補正することによって、ワールド座標系と実際のカメラ1のカメラ座標系との関係を定義する。カメラ調整値は、このカメラパラメータを補正するパラメータである。カメラ調整値は、カメラ1の車両90への取り付け状態によって変動する値である。従って、車両90の生産工程においてカメラ調整値を調整し、確定させることによってカメラ1の校正を行う必要がある。
また、車両90の整備工場において、定期的にカメラ1の校正が可能であったり、車両90に過度の衝撃が加わった後の点検や整備において、カメラ1の校正が可能であったりすることが好ましい。このため、車両90には、カメラ1を校正する校正装置10が搭載される。あるいは、車両90に校正装置10が接続可能に構成される。尚、上述したカメラ調整値も、パラメータメモリ7に記憶される。パラメータメモリ7は、書き換え可能な記憶媒体により構成され、校正により決定されたカメラ調整値に更新される。パラメータメモリ7には、カメラパラメータの初期値(設計値)とカメラ調整値とが格納され、使用時に調整されても良いし、これらに加えてカメラ調整値により補正されたカメラパラメータが格納されてもよい。また、補正されたカメラパラメータのみが更新されて格納される構成であってもよい。
1つの形態として、駐車支援装置40を構成するCPU5及びプログラムメモリ6を校正装置10として利用することが可能である。あるいは、駐車支援装置40を構成するプリグラムメモリ6とは別のプログラムメモリとCPU5とによって、校正装置10が構成されてもよい。また、外部システム33として、校正装置10が構成されてもよい。本実施形態においては、駐車支援装置40を構成するCPU5、プログラムメモリ6、パラメータメモリ7を校正装置10として利用する場合を例として説明する。
まず、カメラ調整値や座標系について説明する。カメラ1により撮影される画像は2次元であるが、実際の空間は3次元である。従って、駐車支援装置40においては、2次元空間と3次元空間との間の相互変換が必要であり、その変換のためには、全てのカメラパラメータが精度良く設定されていることが好ましい。
カメラパラメータには、大きく分けて内部パラメータと外部パラメータとがある。カメラの内部パラメータとは、カメラの内部の光学系に関するパラメータである。デジタルカメラの場合には、撮像素子とレンズの中心との間の距離(焦点距離)、撮像素子の大きさや画素数、画素の縦配列と横配列との角度などを元にして設定されるパラメータである。厳密には、内部パラメータも一定ではなくカメラごとに誤差を有するが、車両90へのカメラ1の取り付け精度の差に比べれば非常に小さい差と考えてもよく、ここでは内部パラメータは精度良く設定されているものとする。
外部パラメータは、基準座標系(ワールド座標系)に対するカメラの位置や姿勢に関するパラメータである。本実施形態では、カメラ1の車両90への取り付け精度に依存するパラメータに相当する。外部パラメータには、カメラの位置に関する並進パラメータと、カメラの姿勢に関する回転パラメータとがある。図1及び図4に示すように、3次元空間の座標系であるワールド座標系(XW,YW,ZW)の1点を座標中心OCとしてカメラ座標系(XC,YC,ZC)が存在する。つまり、カメラ1は、基準座標系であるワールド座標系における規定座標を座標中心OCとするカメラ座標系を形成するような規定位置及び規定の姿勢で車両90に設置される。
カメラ1が設置される規定位置とは、カメラ座標系の座標中心OCのワールド座標系における座標によって定義される。カメラ1が設置される位置、つまり、カメラ座標系の位置は、3次元直交座標系であるワールド座標系の各軸に対してそれぞれ平行な並進成分T(TX,TY,TZ)により定義される。一般的には、並進成分Tは3行1列の行列により定義される。定義される位置と実際にカメラ1が設置される位置との間にずれが生じることは、外部パラメータにおける並進成分Tの誤差となる。但し、並進成分Tの誤差が、撮影画像を見るドライバーに与える違和感は比較的少ない。また、この設置位置の誤差は、カメラ1の光軸の方向には影響しない。従って、カメラ1と被写体との距離や位置関係に拘わらず、画像処理に与える影響も少ない。つまり、カメラ1の設置位置に関して、生産工程において適正な公差が設定され、適正に公差管理されていれば、並進パラメータは精度良く設定されているものと考えてもほとんど問題はない。
カメラ1の設置時の姿勢、つまり、カメラ座標系の回転は、図4に示すように、3次元直交座標系であるカメラ座標系の各直交軸を中心とする回転成分により定義される。一般的には、回転成分は、3行3列の行列により定義される。定義される姿勢(回転)と実際にカメラ1が設置される姿勢との間にずれが生じることは、外部パラメータにおける回転成分の誤差となる。回転成分の誤差が撮影画像を見るドライバーに与える違和感は、並進成分Tの誤差に比べて大きい。
例えば、図5に示すように撮影画像に相当する射影面Πに対して直交するZC軸を中心としてカメラ1が回転するロール(Roll)が生じた場合には、撮影画像が傾くことになる。従って、ロールが生じた場合には、撮影画像を見るドライバーに与える違和感は大きくなる。また、射影面Πに平行な軸の一方であるXC軸を中心としてカメラ1が回転するパン(Pan)や、射影面Πに平行な軸の他方であるYC軸を中心としてカメラ1が回転するチルト(Tilt)が生じた場合には、カメラ1の光軸の向きが変動する。従って、カメラ1と被写体との距離や位置関係に応じて、撮影画像における被写体の位置が大きく変動し、画像処理に与える影響も大きくなる。従って、カメラ1が車両90に取り付けられた実際の姿勢に応じて回転パラメータを精度良く調整し、カメラ1を校正することが重要である。
上述したように、カメラパラメータには、内部パラメータと並進パラメータと回転パラメータとがあるが、この内、外部パラメータの1つである回転パラメータを精度良く調整することが重要である。図1や図4からも理解できるように、カメラ1が誤差無く車両90に設置されたとしても、カメラ座標系はワールド座標系に対して回転している。従って、カメラ1が理想的な位置に理想的な姿勢で取り付けられた場合の回転パラメータは、設計値として一義的に設定される。本発明の校正装置10は、この回転パラメータを、カメラ1の実際の取り付け姿勢に応じて調整するパラメータ(カメラ調整値)を求めて、回転パラメータを調整することによってカメラ1を校正する。
上述したように、カメラ1の回転は、撮影画像に対して次のような影響を与える。ロールは撮影画像の傾き(画像の回転)として現れる。パン及びチルトは、撮影画像における被写体の位置に対して影響を与える。従って、以下の説明において「回転の調整」と称した場合には、3軸全ての回転ではなく、狭義にロールの調整のみを指すことがある。また、以下の説明において「位置の調整」と称した場合には、並進成分の調整ではなく、狭義にパン及びチルトの調整を指すことがある。
ここで、3次元のカメラ座標系(XC,YC,ZC)と、2次元の画像座標系(x,y)との関係について説明する。画像座標系(x,y)は、図5に示すようにカメラ1の光軸に一致するカメラ座標系のZC軸に垂直な2次元射影空間(射影面Π)に存在する2次元直交座標系である。射影面Πは、カメラ座標系のZC軸方向にカメラ座標の原点OCからカメラ1の焦点距離fだけ離れて存在する。図5において、u軸はカメラ1の撮像素子の画素の縦配列の方向を示し、v軸はカメラ1の撮像素子の画素の横配列の方向を示す。理想的には、u軸及びv軸は、それぞれ画像座標系のx軸及びy軸に一致する。また、u軸とv軸とのなす角φは、理想的には画像座標系のx軸とy軸とのなす角と同様に90度である。角φは、上述した内部パラメータの1つであるが、上述したように、ここでは理想的な90度であるとする。
カメラ座標系とワールド座標系との整合が取れていれば、図5に示すように、ワールド座標系において座標Mに存在する点は、画像座標系において座標mに存在するものとして、カメラ座標系から画像座標系へ座標変換される。逆に、撮影画像、つまり画像座標系の座標mにおいて検出された点は、床上に存在するなどの一定条件の下で、カメラ座標系を経てワールド座標系の座標Mにある点として座標変換されることが可能である。
一方、カメラ座標系とワールド座標系との整合が取れていない場合には、図5に示すように、実際のカメラ1のカメラ座標系の射影面Π’と、理想通りのカメラ座標系の射影面Πとは異なる平面となる。このため、実際に車両90に取り付けられたカメラ1のカメラ座標系とワールド座標系との整合が取れなくなる。例えば、ワールド座標系において座標Mに存在する点は、実際のカメラ1のカメラ座標系の射影面Π’において、座標m’に存在するものとして検出される。そして、この座標m’が理想通りのカメラ座標系の射影面Πの座標として扱われ、カメラ座標系を経てワールド座標系に座標変換される。つまり、ワールド座標系において座標Mに存在する点は、図5に示すように、ワールド座標系において座標M’に存在する点として座標変換されることになる。
このような誤差が生じると、駐車支援装置40は精度良く駐車支援を行うことができない。校正装置10は、このような誤差を抑制するべく、カメラ調整値を求めて、実際に車両90に取り付けられたカメラ1のカメラ座標系と、理想的なカメラ座標系との関係を定義する。つまり、カメラ調整値によりカメラ1の回転パラメータを補正して、実際に車両90に取り付けられたカメラ1のカメラ座標系と理想的なカメラ座標系とを一致させるために、実際のカメラ1の姿勢に応じてカメラ調整値を調整する。ここでは、上述したようなワールド座標系において座標Mに存在する点の画像座標系におけるずれを利用してカメラ1を校正する。具体的には、ワールド座標系におけるマーカ80の校正点Q(Q1、Q2)の座標を座標Mに見立ててカメラ1を校正する。
上述したように、本実施形態においては、駐車支援装置40を構成するCPU5、プログラムメモリ6、パラメータメモリ7を校正装置10として利用する。校正装置10は、主にCPU5などのハードウェア及びプログラムメモリ6などに格納されたソフトウェア(プログラム)が協働することによって、図6に示すような複数の機能部を有して構成される。図6に示すように、校正装置10は、画像取得部11と、校正点特定部12と、座標変換部13と、回転調整部(第1調整部)14と、位置調整部(第2調整部)15と、調整完了判定部18と、カメラ調整値設定部19と、HMI制御部20とを有して構成される。尚、回転調整部14は、射影面Πの傾き(回転)、つまり、図4に示すロールの調整を行う機能部である。また、位置調整部15は、並進成分の調整ではなく、図4に示すパン及びチルトの調整を行う機能部である。座標変換部13、回転調整部14と、位置調整部15と、調整完了判定部18は、調整部30を構成する。
画像取得部11は、3次元のワールド座標系の異なる2箇所の所定位置に配置されたマーカ80を視界内に含んで、車両90に取り付けられたカメラ1により撮影された撮影画像を取得する機能部である。校正点特定部12は、この撮影画像においてマーカ80の中のそれぞれの校正点Qを検出し、カメラ座標系の射影面Πに設定される2次元直交座標系(画像座標系)においてそれぞれの校正点Qの座標を実座標として特定する機能部である。校正点特定部12は、後述するように、校正点分布範囲設定部121と、校正指標分布範囲設定部122と、校正点検出部123とを有して構成される。これら各機能部の詳細については、後述する。
座標変換部13は、カメラ1が規定位置に規定の姿勢で取り付けられた際に、射影面Πにおいてそれぞれの校正点Qが特定される座標である初期座標を、確定前のカメラ調整値に基づいて変換座標に変換する機能部である。尚、後述するように、調整部30は、カメラ調整値を修正しながら繰り返し演算を実行することによって、カメラ調整値を求める。従って、座標変換部13が座標変換に用いる確定前のカメラ調整値は、調整の途上において随時修正され、様々な値を取り得るものである。
回転調整部14及び位置調整部15は、上述したカメラの外部パラメータの内の回転パラメータを調整する調整値(カメラ調整値)を演算する機能部である。回転調整部14は、カメラ座標系のロール回転における差分値を求めて、ロール回転における規定の姿勢からの変位量であり、カメラ調整値を構成する調整値の1つであるロール調整値を演算して確定前のカメラ調整値を更新する機能部である。従って、回転調整部14は、ロール調整部に相当する。位置調整部15は、「パン回転における差分値を求めて、パン回転における規定の姿勢からの変位量であり、カメラ調整値を構成する調整値の1つであるパン調整値」及び「チルト回転における差分値を求めて、チルト回転における規定の姿勢からの変位量であり、カメラ調整値を構成する調整値の1つであるチルト調整値」の少なくとも一方の調整値を演算して確定前のカメラ調整値を更新する機能部である。
位置のずれは2次元のずれであり、直交座標系で考えれば、水平方向と垂直方向との2方向のずれによって定義することができる。このため、位置調整部15は、水平位置調整部16と垂直位置調整部17とを有して構成される。水平位置調整部16は、パン調整部に相当し、垂直位置調整部17は、チルト調整部に相当する。水平位置調整部16は、カメラ調整値を構成する調整値の1つであるパン調整値を演算する機能部である。また、垂直位置調整部17は、カメラ調整値を構成する調整値の1つであるチルト調整値を演算する機能部である。
回転調整部(ロール調整部)14、水平位置調整部(パン調整部)16、垂直位置調整部(チルト調整部)17は、それぞれ、ロール回転、パン回転、チルト回転における差分値を演算する差分値演算部14a、16a、17aと、求められた差分値に基づいて調整値を演算する調整値演算部14b、16b、17bとを備えて構成される。詳細については、後述する。
調整完了判定部18は、回転調整部14及び位置調整部15において演算された差分値が、それぞれ所定の完了しきい値未満である場合に、カメラ調整値の調整が完了したと判定する機能部である。座標変換部13、回転調整部14、位置調整部15、調整完了判定部18を有して構成される調整部30は、カメラ調整値を修正しながら繰り返し演算を実行することによってカメラ調整値を調整する。調整完了判定部18は、この繰り返し演算の途上の確定前のカメラ調整値を用いて初期座標が補正された補正座標と実座標との差が所定の距離未満に近づいた場合に繰り返し演算を完了させる。調整完了判定部18の詳細については後述する。
尚、後述する回転調整しきい値や位置調整しきい値は、上記完了しきい値に相当する。また、上記における「カメラ調整値の調整が完了したとの判定」は、調整部30による繰り返し演算の完了の判定に相当する。後述するように、調整完了判定部18は、繰り返し演算を所定回数実行した場合にも、調整部30による繰り返し演算が完了したと判定する。繰り返し演算の完了時には、その時点において最新であり、確定される前のカメラ調整値が仮カメラ調整値(未確定カメラ調整値)として設定されていると考えることができる。
カメラ調整値設定部19は、調整完了判定部18によるカメラ1の調整完了の判定結果に基づいて、回転調整部14及び位置調整部15において演算された調整値をカメラ調整値として確定させる機能部である。つまり、カメラ調整値設定部19は、確定前のカメラ調整値である仮カメラ調整値をカメラ調整値として確定させる。カメラ調整値設定部19は、HMI制御部20を介して与えられる指示入力に応じて仮カメラ調整値をカメラ調整値として設定することも可能である。詳細については後述する。
HMI制御部20は、視覚的効果や聴覚的効果により、ユーザー(校正の作業者)に対する報知を行ったり、ユーザーから与えられる操作指示を受け取って各機能部へ伝達したりするインターフェース機能を担う機能部である。例えば、HMI制御部20は、画像処理モジュール2に対して撮影画像に重畳させるグラフィックの指定や重畳の指示を行ったり、音声処理モジュール3に対してスピーカ4cから音声や音響を出力させたりする。また、タッチパネル4bを介してユーザーより与えられた指示を受け取って、指示に対応する機能部を働かせる。図6に示すように、HMI制御部20は、表示制御部201と指示入力受付部202とを有して構成される。表示制御部201及び指示入力受付部202の具体的な機能については後述する。
本実施形態においては、駐車支援装置40を構成するCPU5を利用して校正装置10が構成される。また、駐車支援装置40のモニタ装置4は、ナビゲーションシステムのモニタ装置が兼用されている。従って、モニタ装置4は、校正装置10のモニタ装置としても兼用される。モニタ装置4の前面パネルには、図7に示すような様々なスイッチが設けられている。符号4dは、地図の縮尺を変更するボタンである。符号4eは、目的地を設定するための画面を表示させるボタンである。符号4fは、車両90の現在位置を表示させるボタンである。符号4gは、音量の調節ボタンである。符号4hは、システムの各種設定を行うための画面を表示させるシステム設定ボタンである。図7においては、車両90の現在位置と共に地図が表示されている場合を例示している。
生産工場や修理工場において、作業者は、システム設定ボタン4hを操作して、表示部4aに設定画面を表示させ、タッチパネル4bの所定のタッチボタンを操作する。HMI制御部20の指示入力受付部202は、タッチボタンの指示を受け付け、CPU5は、プログラムメモリ6に格納されたカメラ校正プログラムに定義された各機能を実行することにより、校正装置10として機能する。尚、生産工程においては、初期画面をカメラ校正モードとしておき、カメラ1の校正が完了した後に所定の操作を行うことで、初期画面がナビゲーションシステムの画面となるように構成されていてもよい。
〔画像取得工程〕
カメラ校正プログラムが起動され、校正装置10によるカメラ校正が開始されると、CPU5により画像取得機能が実行される。つまり、画像取得部11により、カメラ1により撮影された動画像がキャプチャされる。キャプチャされた画像(撮影画像)は、画像処理モジュール2を介して、図8に示すようにモニタ装置4に表示される。
〔校正点特定工程/関心領域設定工程/校正点分布範囲設定工程〕
撮影画像が取得されると、CPU5は校正点特定機能を実行する。つまり、校正点特定部12は、キャプチャされた画像から、校正点Qを検出し、画像座標系における校正点Qの座標を実座標として設定する。校正点Qの検出に先立って、関心領域設定機能が実行され、画像処理の対象となる領域が関心領域(ROI : region of interest)として射影面Πに設定される。つまり、撮影画像において校正点Qを検出するための画像処理が実施される画像処理対象領域が、関心領域ROIとして設定される。
この関心領域ROIは、公差の平均値による画像上(射影面Π上)の位置を基準として、カメラ1の取り付け公差の範囲と画像処理のためのマージンを考慮して定められた位置とサイズに基づいて設定される。関心領域ROIは、例えば、経験上の一般的な公差やマージンに基づいて、大まかに設定することができる。撮影画像に対して関心領域ROIは狭いので、画像処理の演算負荷は軽減される。また、以下のように精度良く関心領域ROIを設定してもよい。
1つの好適な例として、CPU5により校正点分布範囲設定機能が実行される。つまり、校正点分布範囲設定部121により、カメラ1が規定位置に規定の姿勢で取り付けられた際の回転パラメータに基づいて、校正点Qが存在する理論上の座標値(初期座標)が演算される。そして、カメラ1がカメラ座標系の各軸を中心としてそれぞれ所定角度回転した際に理論上の座標値である初期座標が分布する範囲が校正点分布範囲として求められる。この際、カメラの光学中心(カメラ座標系の原点)のずれ、つまり、並進パラメータTのずれも加味して関心領域ROIが設定されてもよい。
〔校正点特定工程/関心領域設定工程/校正指標分布範囲設定工程〕
次に、校正指標分布範囲設定機能が実行される。つまり、校正点分布範囲に基づいて、画像座標系においてマーカ80が分布する範囲が校正指標分布範囲として、校正指標分布範囲設定部122により設定される。本実施形態においては、この校正指標分布範囲が、関心領域ROIに相当する。具体的には、図9に示すように、カメラ1の光軸が設計値通りの方向を向いている場合に対して、カメラ座標系の3軸それぞれに±3度〜5度のずれが発生しても、マーカ80が必ず含まれるように、関心領域ROIが設定される。校正指標分布範囲は、実質的に校正点Qを検出するための画像処理を実施する画像処理対象領域に対応する。従って、校正指標分布範囲設定部122は、画像処理対象領域設定部としても機能する。
ここで、CPU5が領域枠表示機能を実行すると好適である。つまり、表示制御部201が、画像処理モジュール2を介して、画像処理対象領域や校正指標分布範囲をグラフィック画像によるROI枠(領域枠)Fとして撮影画像に重畳させて撮影画像と共に表示部4aに表示させると好適である(領域枠表示工程)。ROI枠Fは、例えば緑色で表示部4aにおいて撮影画像に重畳表示される。ROI枠Fは、カメラ1が理想的に取り付けられた場合、即ち、規定位置に規定の姿勢で取り付けられたと仮定した場合に、所定位置に配置されたマーカ80が中央にくるように、射影面Πに設定される。図2に示すように、校正点Qは、マーカ80の中央に設定されているので、図9に示すように、理想的な校正点QはROI枠Fの中央となる。
作業者は、マーカ80がROI枠Fから外れているなど、非常に大きな誤差を有してカメラ1が車両90に取り付けられていることを容易に確認することができる。作業者は、図8に示すようにタッチパネル4bに表示されたキャンセルボタンを操作することによって、校正を中断してカメラ1の設置状態を確認したり、不良として生産ラインから車両90を排除したりすることができる。このように、撮影画像上にROI枠Fが表示されることにより、CPU5によって自動調整が行われている最中であっても、作業者がカメラ1の調整作業(校正作業)に参加することができる。自動調整と作業者による目視確認とを併用した半自動調整(半自動校正)ということもできる。
タッチパネル4bを操作することによって、CPU5による自動調整を中断することができるので、指示入力受付部202や、これを含むHMI制御部20は、調整中断部(調整中断手段)として機能するといえる。また、CPU5は、受け付けた指示入力に基づいて調整中断機能を実行するともいえる。カメラ1が大きな誤差を有して車両90に設置されていた場合に、調整作業の初期において、調整を中断したり中止したりすることができるので、生産性が向上する。CPU5は、切れ目なく校正点特定工程から下記に詳述する調整工程へと処理を続けていく。従って、作業者による確認のためのROI枠Fは、自動調整が実施されている間、つまり調整工程の間にも継続して表示されると好適である。また、同様に調整の中止や中断の指示入力を与えるためのタッチボタンも、自動調整が実施されている間、継続して表示されると好適である。
尚、画像処理の対象となる関心領域ROIと、校正指標分布範囲とは、必ずしも一致している必要はない。余裕をみて、校正指標分布範囲よりも広域な関心領域ROIが設定されてもよい。また、上記においては、撮影画像上に表示されるROI枠Fが、画像処理の対象となる関心領域ROIに一致する場合を例として説明した。しかし、校正指標分布範囲よりも広域な関心領域ROIが設定されるような場合において、ROI枠Fが、校正指標分布範囲に一致して重畳表示されてもよい。また、関心領域ROIが設定されず、撮影画像の全域に亘って画像処理が実施される場合も同様である。このような場合、作業者は、マーカ80がROI枠Fから外れていることによって、設計値に対して非常に大きな誤差を有してカメラ1が車両90に取り付けられていることを容易に確認することができる。画像処理の対象領域である関心領域ROIとROI枠Fとは一致していることが好ましいが、このように一致していない場合であっても、同様の効果が得られる。従って、校正指標分布範囲がグラフィック画像によるROI枠(領域枠)Fとして撮影画像に重畳され、表示部4aに表示されることも非常に有用である。
〔校正点特定工程/校正点検出工程/エッジ検出工程〕
関心領域ROIが設定されると、校正点検出機能が実行される。つまり、校正点検出部123は、関心領域ROIの範囲内を画像処理対象として、校正点Qを検出する。校正点Qを特定するために、校正点検出部123は、マーカ80の中心点である校正点Qの撮影画像上における座標を検出する。つまり、画像座標系における座標を検出する。この座標は、現実に車両90に設置されたカメラ1により撮影された画像に基づいて検出されるので、本発明における校正点Qの「実座標」に相当する。本実施形態のように、マーカ80として市松模様が使用される場合、公知のコーナ検出器を用いて校正点Qを検出することが可能である。
本実施形態では、ガウシアンフィルタ(Gaussian filter)が組み込まれたCannyエッジ検出器を利用したエッジ検出機能が実行される。Cannyエッジ検出器は、エッジ特徴を保存すると共に、画像に含まれるノイズを除去する働きがあり、安定したエッジ検出が可能である。Cannyエッジ検出器に関しては、J.F.Canny "Finding edge and lines in images". Master's thesis, AITR-720. MIT, Cambridge, USA, 1983などに詳しいので、ここでは詳細な説明を省略する。尚、当然ながら、Cannyエッジ検出器に限らず、Tomasi-Kanade検出器や、ハリス検出器など、他の方法を用いてエッジ検出を行ってもよい。
〔校正点特定工程/校正点検出工程/歪み補正工程〕
上述したように、カメラ1は広角レンズを有して構成されており、撮影画像は歪みを有している。校正点Qを検出するためには、後述するように直線認識が必要となる。そこで、歪み補正機能が実行され、エッジ検出後の画像データに対して歪み補正処理が施される。尚、当然ながら、エッジ検出を行う前、つまり、関心領域ROIの範囲内の元画像に対して歪み補正を実施してもよいし、撮影画像全体に対して歪み補正を実施してもよい。しかし、撮影画像や撮影画像中の関心領域ROIの範囲内の画像は、カラーグレイ画像データであるので、データ量が多く演算負荷も大きくなる。本実施形態では、エッジ検出後のデータは、図10に示すようにエッジ点群Eにより構成されたモノクロ2値データとなっているので、データ量が圧倒的に少なく演算負荷が軽くなる。図10(a)は、歪み補正処理を施された後のマーカ80aのエッジ点群E、図10(b)は、歪み補正処理を施された後のマーカ80bのエッジ点群Eを示している。
〔校正点特定工程/校正点検出工程/直線検出工程〕
続いて、直線検出機能が実行され、これらエッジ点群Eに対して、直線検出処理(直線当てはめ処理)が実施される。直線検出処理には、最小自乗法やハフ変換などを利用することも可能であるが、これらは演算負荷が大きい処理である。本実施形態では、これらの手法よりも遙かに演算量の少ないRANSAC(RANdom SAmple Consensus)手法を用いて直線の当てはめを行うことによって直線検出を行う。RANSAC手法では、直線や曲線の当てはめに必要な最小点数の点がエッジ点群Eから選択され、フィッティングモデルが設定される。直線の場合の最小点数は2点であり、ランダムに選択された2点を結ぶ直線が直線モデルとして設定される。そして、エッジ点群Eの他の点がこの直線モデルに対してどの程度当てはまるかについて評価される。順次、2点を選んで所定回数、評価を繰り返し、最も適合度の高い直線モデルが直線として決定される。図11は、図10に示すエッジ点群Eに対して直線Gを当てはめた例を示している。
〔校正点特定工程/校正点検出工程/交点演算工程〕
直線Gが当てはめられると、次に、交点演算機能が実行され、当てはめられた直線Gの交点の座標が算出される。直線Gは一次関数であるから簡単な計算により、図12に示すように、画像座標系における交点座標(校正点Q)を特定することができる。尚、この座標は、車両90に取り付けられたカメラ1のカメラ座標系の射影面における座標(実座標)であるから、カメラ1が完全に誤差無く取り付けられていない限り、理想的なカメラ座標系の射影面における座標とは異なる。
〔調整工程〕
カメラ1が規定位置に規定の姿勢で完全に誤差なく取り付けられたと仮定した場合、つまり、理想的なカメラ座標系の射影面において、それぞれの校正点(後述するP1int、P2int)が特定される理論上の座標を「初期座標」とする。つまり、カメラ座標系とワールド座標系とが理想的な関係を満たす際に、ワールド座標系に対してカメラ座標系を規定するカメラパラメータ(特に回転パラメータ)の初期値により射影面において校正点が特定される座標が「初期座標」である。尚、一度校正されたカメラ1の再校正の場合には、前回の校正結果により確定されたカメラパラメータが初期値となることがある。従って、ここでいう「初期値」は、現時点における校正(調整)開始時のパラメータである。
上記「初期座標」と上記「実座標」とはカメラ1が完全に誤差無く取り付けられていない限り異なるものである。以下、繰り返し演算により、カメラ調整値を修正しながら調整して当該カメラ調整値を決定し、カメラ1を校正する手順を図13のフローチャートも参照しながら詳述する。
初期座標は、理想的なカメラ座標系とワールド座標系との関係を規定する回転パラメータを用いて特定される。座標変換部3は、確定前のカメラ調整値を用いて、「初期座標」を「変換座標」へと変換する。正確には、カメラ調整値を用いて補正された回転パラメータにより、後述する校正点P(P1、P2)が射影面Π上において特定される座標が「変換座標」である。
従って、カメラ1が正しく校正され、確定前のカメラ調整値、つまり、調整前のカメラ調整値(初期値)が適正な値であれば、「変換座標」は、上記「実座標」に一致するものとなる。カメラ1が誤差を有して車両90に取り付けられ、カメラ1の校正が完了しておらず、カメラ調整値が適正でなければ、「変換座標」と「実座標」とは一致しない。従って、以下に詳述するように、「変換座標」と「実座標」とが一致するように「カメラ調整値」を演算することによって、カメラ1が校正される。座標変換機能は、下記に詳述する調整工程において随時実行され、座標変換工程が設けられるので、詳細については都度説明する。
〔調整工程/初期化工程〕
CPU5は、以下に説明する調整機能を実行することにより、カメラ調整値を調整する。始めに、初期化機能が実行される。カメラ調整値は、図4に示した3つの回転方向に対応して、Δroll、Δpan、Δtiltとして設定される。カメラ調整値の演算を行うに際して、CPU5は、各種の演算変数を初期化する。図6のブロック図には不図示であるが、CPU5とプログラムとによって、初期化演算部が構成されていてもよい。カメラ調整値は、修正されながら調整されていくので、演算変数の1つでもあり、演算を開始するに際して、下記式(1)に示すように、例えば各値がゼロの初期値に初期化される(図13#1)。
Figure 2011087308
尚、生産工場において初めてカメラ1が校正されるような場合には、式(1)に示すように、各値が全てゼロであると好適である。しかし、修理工場や整備工場において再調整されるような場合には、前回の校正結果を踏まえたゼロではない値が初期値として設定されることも当然にあり得ることである。
初期化工程においては、上述したカメラ調整値の他にも、調整演算時の演算変数であるカメラ姿勢値(roll_in、pan_in、tilt_in)、調整演算時の差分値(roll_out、pan_out、tilt_out)なども、下記式(2)〜(3)に示すように初期化される(図13#1)。これら各変数の示す意味などは後述する。尚、本実施形態においては、カメラ調整値を含めて、これらの変数はロール回転、パン回転、チルト回転における回転角度を表すものとして説明する。
Figure 2011087308
Figure 2011087308
〔調整工程/回転調整工程(第1調整工程)/カメラ姿勢設定工程〕
初期化工程に続いて、調整工程が実施される。校正プログラムが有する調整機能には、回転調整機能と位置調整機能とがある。つまり、図13のフローチャートに示すように、回転調整工程(第1調整工程)#10と、位置調整工程(第2調整工程)#20とがある。本実施形態では、まず、回転調整機能(第1調整機能)が実行される。回転調整機能の始めには、CPU5によりカメラ姿勢設定機能が実行され、カメラ姿勢が設定される(図13#2)。カメラ姿勢設定機能は、下記に示す第1座標変換機能に含めてもよい。ここでは、回転調整部14がカメラ姿勢を設定し、カメラ姿勢設定工程(#2)が回転調整工程(#10)に含まれる場合を例示している。しかし、CPU5とプログラムとによってカメラ姿勢を設定するカメラ姿勢設定部が構成されてもよい。下記式(4)は、カメラ姿勢の設計値(roll、pan、tilt)を示す。
Figure 2011087308
これらは、カメラ1が設計値通りに理想的に車両90に設置されていた場合の回転パラメータから求められるカメラ姿勢を示す値である。カメラ姿勢の設計値(roll、pan、tilt)も、それぞれ、θr、θp、θtとして角度によって定義される。これらは、ワールド座標系に基づく基準(ref_r、ref_p、ref_t)に対して設定される。つまり、カメラ1は、ワールド座標系に基づく基準(ref_r、ref_p、ref_t)に対して、ロール、パン、チルトの各成分においてθr、θp、θtの角度偏差を有した姿勢を「規定の姿勢」として取り付けられている。
カメラ1が理想的に設置されているとき、このカメラ設計値に基づけば、射影面Πにおける「初期座標」に存在する校正点(P1int、P2int)は、検出された校正点Qに一致する。しかし、実際には、カメラ1の姿勢には誤差が含まれることが多いため、下記式(5)〜(7)に示すように、カメラ姿勢の設計値(roll、pan、tilt)に、カメラ調整値(Δroll、Δpan、Δtilt)を加えて、カメラ姿勢値(roll_in、pan_in、tilt_in)が設定される(図13#2)。
Figure 2011087308
ここで、カメラ調整値(Δroll、Δpan、Δtilt)の各変数は、初期値であるから、カメラ姿勢値は、下記式(8)〜(10)に示すように、それぞれ、カメラ姿勢の設計値θr、θp、θtに設定される。
Figure 2011087308
〔調整工程/回転調整工程/校正点演算工程(第1座標変換工程)〕
次に、CPU5は、上記式(5)〜(7)((8)〜(10))に基づき工程#2において設定されたカメラ姿勢値に基づいて、校正点Pを演算する(図13#3)。つまり、CPU5は、カメラ1が規定位置に規定の姿勢で取り付けられた際に、射影面Πにおいてそれぞれの校正点Qが特定される座標である初期座標を確定前のカメラ調整値を用いて変換座標(第1変換座標)に変換する第1座標変換機能を実行する。「初期座標」から「変換座標」への変換は座標変換部13によって実行される。ここでは、カメラ調整値が初期値(=ゼロ)であるので、「変換座標=初期座標」となる。
座標変換される校正点は、校正点特定部12によって特定された校正点Q(Q1、Q2)と区別するため、校正点P(P1、P2)と称する。図14には、校正点特定部12によって特定された校正点Q(Q1、Q2)と、座標変換部13により変換された校正点P(P1、P2)が射影面Π(画像座標系)における点として示されている。校正点Q1、Q2の座標は、それぞれ「実座標」であり、校正点P1、P2の座標は「変換座標」である。図14においては、カメラ調整値が初期値であるので、校正点P1、P2は「初期座標」に位置する理想校正点P1int、P2intでもある。尚、図14に示すように、カメラ姿勢の設計値rollは、ワールド座標系に基づくロール基準(ref_r)に対して設定されている。
〔調整工程/回転調整工程/第1差分値演算工程(回転差分値演算工程)〕
図14に示すように、射影面Π上には、実座標である校正点Q1とQ2を結んで得られる直線である実直線Ltgtと、変換座標である校正点P1とP2とを結んで得られる直線である変換直線Lcnvとが得られる。図14においては、カメラ調整値が初期値であるので、変換直線Lcnvが、初期直線Lintと一致する。CPU5は、回転差分値演算機能(第1差分値演算機能、ロール差分値演算機能)を実行する。つまり、回転調整部14の差分値演算部14aは、実直線Ltgtと変換直線Lcnvとの成す角度δrollを、射影面Πに直交するZC軸を中心とするロール回転におけるロール角の差分値roll_outとして演算するロール差分値演算工程(第1差分値演算工程)を実施する(図13#4)。
具体的には、差分値演算部14aは、変換直線Lcnv(校正点P1とP2とを結ぶ線分)の中点PCを中心として、実直線Ltgtと変換直線Lcnvとの成す角度δrollだけ変換直線Lcnvを回転させる。これにより、図15(a)に示すように、実直線Ltgtと傾きが一致する補正直線Lansが得られる。2点の実座標(Q1、Q2)の射影面Πの両軸方向における差分は、図15(b)に示すように、補正直線において実座標に相当する2点の差分(x1,y1)に等しい。また、図15(b)に示すように、2点の変換座標(P1、P2)の射影面Πの両軸方向 における差分は(x2,y2)である。射影面Π上において、差分(x1,y1)により定義される補正直線Lansの傾きをaans(=x1/y1)、差分(x2,y2)により定義される変換直線Lcnvの傾きをacnv(=x2/y2)とすれば、ロール角の差分値roll_outは下記式(11)によって算出される。尚、この差分値roll_outは、実直線Ltgtに一致させる前の変換直線Lcnvと実直線Ltgtとの成す角度δrollにほぼ等しい。
Figure 2011087308
〔調整工程/回転調整工程/第1調整値演算工程(回転調整値演算工程)〕
ロール角の差分値roll_outが求まると、差分値roll_outに基づいてロール回転における規定の姿勢(ロールの角度偏差θr)からの変位量であり、カメラ調整値を構成する調整値の1つである回転調整値(ロール調整値)Δrollを演算してカメラ調整値を更新する回転調整値演算機能(第1調整値演算機能、ロール調整演算機能)が実行される。つまり、回転調整部14を構成する調整値演算部14bが、ロール調整値Δrollを演算するロール調整値演算工程を実施する。ロール調整値Δrollは、下記式(12)に示すように、初期化工程#1において設定され、回転調整を実施する前のロール調整値Δrollに差分値roll_outを加算して、ロール調整値Δrollを更新することによって求められる(図13#5)。
Figure 2011087308
上述したように、ロール調整値Δrollは、初期値(=ゼロ)に設定されている。従って、この段階では、ロール調整値Δrollとして、差分値演算により求められた差分値roll_outが設定される。これにより、カメラ調整値(Δroll、Δpan、Δtilt)の各変数は、下記式(13)のように更新されることになる。
Figure 2011087308
〔調整工程/位置調整工程(第2調整工程)/カメラ姿勢設定工程〕
CPU5は、回転調整機能の実行に引き続き、位置調整機能(第2調整機能)を実行する。射影面Πと同一平面上における回転(ロール回転)を調整する回転調整工程に続いて、射影面Πと同一平面上での位置ずれを調整する位置調整工程が位置調整部15によって行われる。位置調整に先立って、回転調整の結果を反映した座標変換(校正点演算)を行うためにカメラ姿勢値(roll_in、pan_in、tilt_in)が再び設定される(図13#6)。つまり、回転調整機能の実行開始時と同様に、位置調整機能の実行開始時には、CPU5によりカメラ姿勢設定機能が実行され、カメラ姿勢が設定される。このカメラ姿勢設定機能は、下記に示す第2座標変換機能に含めてもよい。上述した式(8)〜(10)の内、位置ずれに関するカメラ調整値(pan_in、tilt_in)は、変更がないので再設定されず、回転調整値roll_outに関する式(8)のみが、式(14)のように再設定される。
Figure 2011087308
カメラ姿勢設定工程は、図13の#2の工程と同様に、不図示のカメラ姿勢設定部が行ってもよいし、位置調整部15が行ってもよい。ここでは、位置調整部15により行われ、カメラ姿勢設定工程(図13#6)が位置調整工程(図13#20)に含まれる場合を例示している。
〔調整工程/位置調整工程/校正点演算工程(第2座標変換工程)〕
次に、CPU5は、上記式(14)、(9)、(10)に基づき工程#6において再設定されたカメラ姿勢値(roll_in、pan_in、tilt_in)に基づいて、校正点P1及びP2を再計算する(図13#7)。つまり、CPU5は、回転調整値演算機能の実行により更新された確定前のカメラ調整値を用いて初期座標を変換座標(第2変換座標)に変換する第2座標変換機能を実行する。この変換は、座標変換部13によって実行される。図16には、校正点特定部12によって特定された校正点Q(Q1、Q2)と、第2座標変換工程において求められた校正点P(P1、P2)とが射影面Π(画像座標系)における点として示されている。また、図16には、校正点P1、P2を結んで得られた変換直線Lcnv及び実直線Ltgtも示されている。
〔調整工程/位置調整工程/水平位置調整工程と垂直位置調整工程〕
射影面Πと同一平面上における位置ずれは、図5に示すように射影面Πの画像座標系が2次元であるので、2つの軸を用いて定義することができる。つまり、図16に示すように、射影面Πにおけるy方向とx方向とのずれ量によって定義することができる。図16において、点PCは変換直線の線分の中点、つまり変換座標(第2変換座標)の中点を示す。また、点QCは実直線の線分の中点、つまり実座標の中点を示す。例えば、傾きを維持したままで変換直線Lcnvをx軸のずれ量分だけ矢印A方向へ移動させ、y軸のずれ量分だけ矢印B方向へ移動させると、変換直線Lcnvは矢印C方向へ移動したことになり、実直線Ltgtと変換直線Lcnvとは一致する。
位置調整工程(第2調整工程)において、一度に矢印C方向への移動を実施することも可能ではあるが、本実施形態では、矢印A方向への移動と、矢印B方向への移動との2段階に分けて実施する。図1、図4、図5より明らかなように、水平方向は画像座標系のy軸方向であり、垂直方向は画像座標系のx軸方向である。本実施形態においては、図13に示すように、位置調整工程(#20)を水平位置調整工程(#8a、#9a)と、垂直位置調整工程(#8b、#9b)とに分けて実施する。本実施形態においては、CPU5は、図13に破線矢印で示すように、水平位置調整機能を実行した後、垂直位置調整機能を実行する。当然ながら、垂直位置調整機能を実行した後に、水平位置調整機能を実行することも可能である。尚、水平(#8a)及び垂直(#8b)の位置差分値演算機能(位置差分値演算工程(#8))を実行した後に、水平(#9a)及び垂直(#9b)の位置調整値演算機能(位置調整値演算工程(#9))を実行することも可能である。
校正装置10の位置調整部15は、水平位置調整部16と垂直位置調整部17とを有して構成されている。また、水平位置調整部16は、回転調整部14と同様に、差分値演算部16aと調整値演算部16bとを有して構成されている。同様に、垂直位置調整部17も、差分値演算部17aと調整値演算部17bとを有して構成されている。水平位置調整部16により水平位置調整工程が実施され、垂直位置調整部17により垂直位置調整工程が実施される。
上述したように、回転差分値演算工程(図13#4)において、中点PCを中心として変換直線Lcnvを回転させて補正直線Lansを演算した。従って、中点PCの座標は変動しておらず、変換直線Lcnvの中点PCは、初期直線Lintの中点と同一座標であるとも考えられる。但し、位置調整工程(#20)の冒頭において、ロール調整値Δrollを再設定して再度変換直線Lcnvを求めている。
図5に示すように、カメラ姿勢値のロール成分roll_inは、画像座標系の原点OIを中心とする回転を規定する。図5における座標mを射影面Π上の校正点Pとして考えると、回転中心は、中点PCではなく、原点OIであるから、再度変換された変換直線Lcnvの中点は、初期直線Lintの中点と必ずしも同一座標とはならない。このため、位置調整工程(#20)において、点PCと点QCとを一致させた場合に、ロール回転の誤差を招く可能性がある。このように、回転調整工程(#10)と位置調整工程(#20)とは、相互に影響を及ぼし合う。従って、校正装置10は、カメラ調整値を修正しながら、回転調整工程(#10)と位置調整工程(#20)とを繰り返し実施して、カメラ調整値を収束させていく。
本実施形態では、回転調整工程(#10)の後に位置調整工程(#20)を実施するという所定の順序でカメラ調整値の調整を行っている。この順序は、調整により、他のパラメータに与える影響が大きいパラメータの調整を先に行うという条件の元に設定される。1つの軸の調整が、他の軸に対する変位量に与える影響の大きさは、3つの軸において共通ではない。
第2調整部15は、第1調整部14の調整結果を反映されて実行される。従って、第2調整部15による調整に起因して、第1調整部14の調整結果が大きく変動すると、第1調整部14による調整が無駄になってしまう。その結果、第1調整部14と第2調整部15とに繰り返し調整を行わせても、カメラ調整値が収束できない可能性も生じる。このため、第1調整部14による調整が、第2調整部15の調整結果に与える影響の方が相対的に大きくなるように、第1調整部14と第2調整部15とが調整する軸が設定されると好適である。即ち、第1調整部14による調整後の第2調整部15による調整により生じる再調整誤差が、第2調整部15による調整後の第1調整部14による調整により生じる再調整誤差よりも小さくなるように、第1調整部14において調整される軸が設定されるとよい。
本実施形態のような車輌に搭載されるカメラ1の場合には、ロールの調整が、パン、チルトに与える影響が大きい。上述したように、ロールの調整時には、変換直線Lcnvの中点PCを中心とした射影面Πの回転量を演算するが、実際には、ロールの変位量は画像座標系の原点OIを中心とした回転量であることも一因である。本実施形態においては、このような背景に鑑みて、第1調整部14を回転調整部14として、ロール角の調整を行い、第2調整部15を位置調整部15として、パン角及びチルト角の調整を行う。
〔調整工程/位置調整工程/水平位置(パン)調整工程/差分値演算工程〕
上述したように、本実施形態では、CPU5は、先に水平位置調整機能(パン調整機能)を実行する。CPU5は、位置差分値演算機能(第2差分値演算機能)の1つである水平位置差分値演算機能(パン差分値演算機能)を実行する。 即ち、第2差分値演算工程の1つである水平位置差分値演算工程(パン差分値演算工程)が実施される(図13#8a)。
図17の上段には、図16と同様に、射影面Πをカメラ座標系のZC軸に沿った方向から見た場合、つまり、射影面Πに対向して見た場合の様子が示されている。カメラ座標系のYC−XC平面における座標を示しているともいえる。図17に示すように、水平位置調整部16の差分値演算部16aは、実直線Ltgtの中点QCのy座標ytgtに変換直線Lcnvの中点PCのy座標ycnvを一致させる。これにより、図17に示すように、実直線Ltgtとy座標が一致する補正直線Lansが得られる。補正直線Lansの中点RCのy座標yansは、実直線Ltgtの中点QCのy座標ytgtと一致する。
図17の下段には、射影面Πをカメラ座標系のXC軸に沿った方向から見た場合、即ち、射影面Πの面方向に沿った方向から見た場合の様子が示されている。カメラ座標系のYC−ZC平面における座標を示しているともいえる。ここで、射影面Πは、画像座標系のy軸に相当する直線で示されており、校正点PやQ、中点PC、QC、RCは、y座標成分によって、射影面Πを示す直線上にプロットされている。また、射影面Πを示す直線上には、画像座標系における原点OIもプロットされている。
図17に示すように、カメラ座標系において、カメラ座標系の原点OCと射影面Π上の2つの実座標の中点QCとを結ぶ直線を第2実直線Ltgt2と称する。水平位置調整工程においては、水平方向のみに注目しているため、カメラ座標系のYC−ZC平面においては、補正直線Lansの中点RCとカメラ座標系の原点OCとを結ぶ直線Lans2は、第2実直線Ltgt2と一致する。また、カメラ座標系において、原点OCと射影面Π上の2つの変換座標(第2変換座標)の中点PCとを結ぶ直線を第2変換直線Lcnv2と称する。
差分値演算部16aは、カメラ座標系のYC−ZC平面において、第2実直線Ltgt2と第2変換直線Lcnv2との成す角度を、射影面Πに平行なカメラ座標系の一方の軸であるXc軸を中心とするパン回転におけるパン角の差分値pan_outとして演算する(図13#8a)。
画像座標系における原点OIは、図5に示すように、カメラ座標系のZC軸と射影面Πとが直交する点である。また、画像座標系の原点OIとカメラ座標系の原点OCとは、焦点距離fだけ離間している。画像座標系のy軸方向、つまり、撮像素子のv軸方向における単位長さ当たりの画素数をkvとすると、焦点距離fを撮像素子のv方向の単位長さ当たりの画素数により換算したy軸のスケールファクターSyは、下記式(15)に示すように、単位長さ当たりの画素数kvと焦点距離fとの積となる。
Figure 2011087308
水平位置調整部16の差分値演算部16aは、画像座標系の原点OIのy座標yCと、変換直線Lcnvの中点PCのy座標ycnvと、実直線Ltgtの中点QCのy座標ytgt(補正直線Lansの中点RCのy座標yans)と、スケールファクターSyとに基づいて、第2実直線Ltgt2と第2変換直線Lcnv2との成す角度をパン角の差分値pan_outとして演算する(図13#8a)。具体的には、下記式(16)に示す演算が実行され、パン角の差分値pan_outが算出される。
Figure 2011087308
〔調整工程/位置調整工程/水平位置調整工程/調整値演算工程〕
差分値pan_outが求まると、CPU5は、位置調整値演算機能(第2調整値演算機能)の1つである水平位置調整値演算機能(パン調整値演算機能)を実行する。つまり、位置調整値演算工程(第2調整値演算工程)の1つである水平位置調整値演算工程(パン調整値演算工程)が行われる(図13#9a)。
CPU5は、差分値pan_outに基づいてパン回転における規定の姿勢(パンの角度偏差θp)からの変位量であり、カメラ調整値を構成する調整値の1つである位置調整値の内の水平位置調整値(パン調整値)Δpanを演算してカメラ調整値を更新する水平位置調整値演算機能を実行する。位置調整部15を構成する水平位置調整部16の調整値演算部16bは、下記式(17)に示すように、水平位置調整を実施する前のパン調整値Δpanに差分値pan_outを加算して、パン調整値Δpanを更新する(図13#9a)。
Figure 2011087308
上述したように、パン調整値Δpanは、初期値(=ゼロ)に設定されているので、この段階では、パン調整値Δpanとして、校正点演算時の差分値pan_outが設定される。これにより、カメラ調整値(Δroll、Δpan、Δtilt)の各変数は、下記式(18)のように更新されることになる。
Figure 2011087308
〔調整工程/位置調整工程/垂直位置(チルト)調整工程/差分値演算工程〕
水平位置調整に続いて、CPU5は、位置調整機能(第2調整機能)の1つである垂直位置調整機能(チルト調整機能)を実行する。CPU5は、位置差分値演算機能(第2差分値演算機能)の1つである垂直位置差分値演算機能(チルト差分値演算機能)を実行する。即ち、第2差分値演算工程の1つである垂直位置差分値演算工程(チルト差分値演算工程)が実施される(図13#8b)。
本実施形態では、垂直位置調整においても、水平位置調整の前に座標変換により設定された変換直線Lcnvが利用される場合を例として説明する。つまり、上記式(14)、(9)、(10)に基づき工程#6において再設定されたカメラ姿勢値(roll_in、pan_in、tilt_in)に基づいて座標変換部13によって演算された校正点P1及びP2を結んで得られた変換直線Lcnvが利用される。図18の左側には射影面Πをカメラ座標系のZC軸に沿った方向から見た図、つまり、射影面Πに対向して見た場合の様子が示されている。カメラ座標系のYC−XC平面における座標を示しているともいえる。ここでは、変換直線Lcnvが破線で、実直線Ltgtが実線で示されている。
図16を利用して上述したように、射影面Πと同一平面上における位置ずれは射影面Πにおけるy方向とx方向とのずれ量によって定義することができる。本実施形態では、一度に図16に示す矢印C方向への移動を実施せず、矢印A方向への移動と、矢印B方向への移動との2段階に分けて実施している。矢印A方向の移動は、画像座標系のy軸方向に沿った水平方向の移動であり、これは、上述したように水平位置調整工程において水平位置調整部16により実行されている。従って、以下、垂直位置調整部17により実施される垂直位置調整工程について説明する。
図18の左側に示すように、垂直位置調整部17の差分値演算部17aは、実直線Ltgtの中点QCのx座標xtgtに変換直線Lcnvの中点PCのx座標xcnvを一致させる。これにより、図18に示すように、実直線Ltgtとx座標が一致する補正直線Lansが得られる。補正直線Lansの中点RCのx座標xansは、実直線Ltgtの中点QCのx座標xtgtと一致する。
尚、水平位置調整工程(図13#8a、#9a)において中点のx座標xcnvは変更していない。従って、水平位置調整工程の補正直線Lansを垂直位置調整工程の変換直線Lcnvとして、ここから垂直位置調整工程の補正直線Lansを求めることも可能である。このようにすると、垂直位置調整工程における補正直線Lansの中点RCの座標(xans,yans)と、実直線Ltgtの中点QCの座標(xtgt,ytgt)とが一致する。つまり、垂直位置調整工程において補正直線Lansと実直線Ltgtとが一致することとなる。ここでは、理解を容易にするために、図16に示す変換直線Lcnvを利用して垂直位置調整を実行する例を説明する。これにより、水平位置調整及び垂直位置調整の何れを先に実行しても問題が無いことが明らかとなる。
尚、水平位置調整工程(#8a、#9a)の後、垂直位置調整工程(#8b、#9b)の前に再度、座標変換を行って、変換座標を求めておくこともできる。しかし、水平、垂直の位置調整を何れの順番に実施しても同様なことから明らかなように、ここで座標変換を実施する効果は高くない。従って、座標変換の頻度を増やすことなく、連続して水平、垂直の位置調整を実施する方が好適である。
図18の右側には、射影面Πをカメラ座標系のYC軸に沿った方向から見た場合、即ち、射影面Πの面方向に沿った方向から見た場合の様子が示されている。カメラ座標系のXC−ZC平面における座標を示しているともいえる。ここで、射影面Πは、画像座標系のx軸に相当する直線で示されており、校正点PやQ、中点PC、QC、RCは、x座標成分によって、射影面Πを示す直線上にプロットされている。また、射影面Πを示す直線上には、画像座標系における原点OIもプロットされている。
図17に基づいて上述したように、図18においても、カメラ座標系において、カメラ座標系の原点OCと射影面Π上の2つの実座標の中点QCとを結ぶ直線を第2実直線Ltgt2と称する。垂直位置調整工程においては、垂直方向のみに注目しているため、カメラ座標系のXC−ZC平面においては、補正直線Lansの中点RCとカメラ座標系の原点OCとを結ぶ直線Lans2は、第2実直線Ltgt2と一致する。また、カメラ座標系において、原点OCと射影面Π上の2つの変換座標(第2変換座標)の中点PCとを結ぶ直線を第2変換直線Lcnv2と称する。
差分値演算部17aは、カメラ座標系のXC−ZC平面において、第2実直線Ltgt2と第2変換直線Lcnv2との成す角度を、射影面Πに平行なカメラ座標系の一方の軸であるYc軸を中心とするチルト回転におけるチルト角の差分値tilt_outとして演算する(図13#8b)。
原点OIは、図5に示すように、カメラ座標系のZC軸と射影面Πとが直交する点であり、カメラ座標系の原点OCと焦点距離fだけ離間している。画像座標系のx軸方向、つまり、撮像素子のu軸方向における単位長さ当たりの画素数をkuとすると、焦点距離fを撮像素子のu方向の単位長さ当たりの画素数により換算したx軸のスケールファクターSxは、下記式(19)に示すように、単位長さ当たりの画素数kuと焦点距離fとの積となる。
Figure 2011087308
垂直位置調整部17の差分値演算部17aは、画像座標系の原点OIのx座標xCと、変換直線Lcnvの中点PCのx座標xcnvと、実直線Ltgtの中点QCのx座標xtgt(補正直線Lansの中点RCのx座標xans)と、スケールファクターSxとに基づいて、第2実直線Ltgt2と第2変換直線Lcnv2との成す角度をチルト角の差分値tilt_outとして演算する(図13#8b)。具体的には、下記式(20)に示す演算が実行され、チルト角の差分値tilt_outが算出される。
Figure 2011087308
〔調整工程/位置調整工程/垂直位置(チルト)調整工程/調整値演算工程〕
差分値tilt_outが求まると、CPU5は、位置調整値演算機能(第2調整値演算機能)の1つである垂直位置調整値演算機能(チルト調整値演算機能)を実行する。つまり、図13#9bに示すように、位置調整値演算工程(第2調整値演算工程)の1つである垂直位置調整値演算工程(チルト調整値演算工程)が行われる。
CPU5は、チルト角の差分値tilt_outに基づいてチルト回転における規定の姿勢(チルトの角度偏差θt)からの変位量であり、カメラ調整値を構成する調整値の1つである位置調整値の内の垂直位置調整値(チルト調整値)Δtiltを演算してカメラ調整値を更新する垂直位置調整値演算機能を実行する。位置調整部15を構成する垂直位置調整部17の調整値演算部17bは、下記式(21)に示すように、垂直位置調整を実施する前のチルト調整値Δtiltに差分値tilt_outを加算して、チルト調整値Δtiltを更新する(図13#9b)。
Figure 2011087308
上述したように、チルト調整値Δtiltは、初期値(=ゼロ)に設定されているので、この段階では、チルト調整値Δtiltとして、チルト角の差分値tilt_outが設定される。これにより、カメラ調整値(Δroll、Δpan、Δtilt)の各変数は、下記式(22)のように更新されることになる。
Figure 2011087308
尚、上記説明においては、水平位置差分値演算機能、水平位置調整値演算機能、垂直位置差分値演算機能、垂直位置調整値演算機能の順に実行される場合を例示した。しかし、水平位置差分値演算機能に続いて垂直位置差分値演算機能が実行されるように構成された位置差分値演算機能が実行され、それに続いて、水平位置調整値演算機能に続いて垂直位置調整値演算機能が実行されるように構成された位置調整値演算機能が実行されてもよい。また、水平方向と垂直方向の調整を別々に実施することなく、第2実直線Ltgt2と第2変換直線Lcnv2との成す3次元上の角度(立体角)を求め、立体角の成分を分解して、差分値pan_out及びtilt_outを演算する位置差分値演算機能が実行されてもよい。
〔調整工程/調整完了判定工程〕
このように、カメラ調整値(Δroll、Δpan、Δtilt)の各変数が一通り演算されると、調整完了判定部18は、カメラ1の調整が完了したか否かを判定する。上述したように、調整工程は、カメラ調整値を修正しながら繰り返し行われるので、調整完了判定部18は、繰り返し演算を完了させるか否かを判定する。具体的には、調整完了判定部18は、回転調整部14及び位置調整部15において演算された差分値(roll_out、pan_out、tilt_out)が、それぞれ所定の完了しきい値未満である場合に、カメラ調整値の調整が完了したと判定する。
回転調整部14において演算されるロール回転の差分値roll_outに対する完了しきい値は、ロール調整しきい値(回転調整しきい値)roll_thである。位置調整部15において演算されるパン回転の差分値pan_outに対する完了調整しきい値は、位置調整しきい値の1つであるパン調整しきい値(水平位置調整しきい値)pan_thである。位置調整部15において演算されるチルト回転の差分値tilt_outに対する完了調整しきい値は、位置調整しきい値の1つであるチルト調整しきい値(垂直位置調整しきい値)tilt_thである。これら3つのしきい値は、個別の値を設定可能であるが、当然、同一の値に設定されることを妨げるものではない。調整完了判定部18は、下記に示す論理式(23)が真である場合に、カメラ1の調整が完了したと判定する(図13#30)。
Figure 2011087308
尚、これら完了しきい値は、本発明の基準変位量に相当する。本発明の第1調整部に相当する回転調整部14では、第1変換座標と実座標とを利用して、差分値roll_outを演算する。差分値roll_outは、第1変換座標と実座標との変位量をロール角によって表したものである。同様に、本発明の第2調整部に相当する位置調整部15では、第2変換座標と実座標とを利用して、差分値pan_out、tilt_outを演算する。差分値pan_out、tilt_outは、第2変換座標と実座標との変位量をそれぞれパン角及びチルト角によって表したものである。差分値roll_out、pan_out、tilt_outに対する完了しきい値であるロール調整しきい値roll_th、パン調整しきい値pan_th、チルト調整しきい値tilt_thは、それぞれ本発明の基準変位量に相当する。従って、調整完了判定部18は、第1調整部14及び第2調整部15における調整時の変換座標と実座標との変位量がそれぞれ所定の基準変位量未満である場合に、カメラ調整値(Δroll、Δpan、Δtilt)の調整が完了したと判定する機能部である。
校正装置10は、工程#30において「真」となるまで、図13に示すフローチャートの工程#2〜#30を繰り返し行ってカメラ1を校正する。図13の#30の工程において「真」と判定されると繰り返しを完了して、ループを抜ける。例えば、図14〜図18を参照して上述した工程は、この繰り返し演算の最初の流れを模擬したものである。調整の開始時であるので、この時点における差分値roll_out、pan_out、tilt_outは、比較的大きい値であることが多い。従って、多くの場合、工程#30において「偽」の判定となり、2度目のルーチンが開始される。
つまり、CPU5は、回転差分値演算機能及び位置差分値演算機能の実行により演算された差分値(roll_out、pan_out、tilt_out)が、それぞれ所定の完了しきい値(roll_th、pan_th、tilt_th)未満であることをカメラ調整値の調整の完了条件として判定を行い、完了条件を満たさない場合は、CPU5は、第1座標変換機能、回転差分値演算機能、回転調整値演算機能、第2座標変換機能、位置差分値演算機能、位置調整値演算機能を繰り返し実行させ、完了条件を満たす場合は、繰り返し実行を完了させて次の機能を実行させる調整完了判定機能を実行する。
〔調整工程の繰り返し〕
工程#30において「偽」の判定となると、再び工程#2が実行される。前回は、カメラ調整値(Δroll、Δpan、Δtilt)が式(1)に示すように、全てゼロであったので、校正点演算時のカメラ姿勢値(roll_in、pan_in、tilt_in)は、式(2)に示すように、カメラ姿勢の設計値(roll、pan、tilt)と等価であった。しかし、工程#2の2回目以降の実行時には、下記式(24)〜(26)に示すように、前回までの一連の工程(工程#10及び工程#20)によって演算されたカメラ調整値(Δroll、Δpan、Δtilt)が用いられる。
Figure 2011087308
次に、工程#3において、第1座標変換機能が実行される。上記式(24)〜(26)に示すように、1回目の調整を経た後の工程#2において設定されたカメラ姿勢値(roll_in、pan_in、tilt_in)を用いて変換された変換座標Pは、1回目の変換座標Pよりも実座標Qに近づいているはずである。上述したように、1回目の一連の調整においても回転調整はなされているが、ロール回転の回転中心が異なることや、その後に位置調整が実行されることによって、再びロール回転の誤差が生じている場合がある。このため、変換座標Pは、1回目の調整により実座標Qに近づいてはいるが一致しているとは限らない。
工程#3に続いて工程#4が実施され、ロール回転における差分値roll_outが式(11)に基づいて算出される。差分値roll_outが求まると、次に、工程#5において、式(12)に示すように、現時点でのロール調整値Δrollに差分値roll_outを加算することによって新たなロール調整値Δrollが演算され、更新される。
次に、工程#6において新たなロール調整値Δrollを用いて、ロールに関するカメラ姿勢値roll_inが再設定される。新たなロール調整値をΔrollNEWとすると、カメラ姿勢値(roll_in、pan_in、tilt_in)は、下記式(27)及び上記式(25)、式(26)により定義されることになる。
Figure 2011087308
次に、工程#7において、式(25)〜式(27)に基づいて定義されたカメラ姿勢値(roll_in、pan_in、tilt_in)に基づいて、校正点Pが算出される。さらに、工程#8の位置調整が実施されて、位置調整時の差分値pan_out及びtilt_outが上記式(16)及び式(20)に基づいて算出される。また、これら差分値pan_out及びtilt_outを用いて工程#9が実行され、上記式(17)及び式(21)に基づいて位置調整値Δpan、Δtiltが算出され、更新される。
〔調整工程/調整完了判定工程〕
全てのカメラ調整値(Δroll、Δpan、Δtilt)が一通り再演算されると、調整完了判定部18は、カメラ調整値の調整が完了したか否かを判定する。複数回、工程#2〜#9が繰り返されることによって、次第に実座標Qと変換座標Pとが近づいていく。従って、回転調整工程(#10)及び位置調整工程(#20)において算出される差分値roll_out、pan_out、tilt_outも、回数を重ねるごとに次第に小さくなり、収束していく。ここでは、2回の繰り返しによって、実座標Qと変換座標Pとが、ほぼ一致する程度まで近づいたとする。その結果、上記論理式(23)は「真」となり、次の工程へ移行する。尚、図13のフローチャートには図示していないが、工程#30が「偽」であっても、所定回数にわたって繰り返し演算が実行された場合には、プログラムの無限ループを抑制するために、調整完了判定部18は調整完了と判定し、次の工程へ移行させる。
〔確認座標演算工程〕
調整完了判定部18により、繰り返し演算の完了が判定された時点におけるカメラ調整値(Δroll、Δpan、Δtilt)は、初期値から修正を加えられてきたものであり、随時、回転調整工程や位置調整工程において使用されてきた。しかし、これらのカメラ調整値(Δroll、Δpan、Δtilt)は、確定された値ではなく、確定前の仮カメラ調整値(未確定カメラ調整値)である。つまり、CPU5内の所定のレジスタやRAM(random access memory)などのワークエリアに一時記憶されている値である。
ここで、CPU5は、仮カメラ調整値を用いて初期座標を確認座標に補正する確認座標演算機能を実行すると好適である。つまり、座標変換部13は、仮カメラ調整値を用いて補正されたカメラパラメータ(回転パラメータ)により、校正点Qのワールド座標系の3次元座標値を2次元の射影面Π上の座標値に変換する。これにより、自動調整の完了時の仮のカメラパラメータ(未確定カメラパラメータ)を用いて求められた理論上の校正点Qの座標値が確認座標として演算される。
〔調整完了確認工程〕
確認座標が演算されると、CPU5は、確認座標の位置を撮影画像上において明示する確認マーカをグラフィック画像として撮影画像に重畳させて表示部に表示させる調整完了確認機能を実行する。つまり、HMI制御部20の表示制御部201は、図19に示すように、画像処理モジュール2を介してモニタ装置4の表示部4aに、グラフィック画像としてマーカ枠H(確認マーカ)やタッチボタンを撮影画像に重畳表示させる。マーカ枠Hは、調整が正しく完了していた場合に、その枠内にマーカ80が表示される位置に設定されている。確認座標は、マーカ枠Hの中央の座標となる。マーカ枠Hの各辺は、マーカ80がマーカ枠Hの中央にある場合に、画像座標系においてマーカ80の各辺と2〜5画素の余裕を持つように設定されると好適である。マーカ枠Hは、カメラ調整値(Δroll、Δpan、Δtilt)に与えられた調整の許容差に相当する分の余裕を持った大きさに設定されることができる。マーカ枠Hは、例えば緑色で表示されるROI枠Fとの混同を避けるために、ROI枠Fとは異なる色、例えば黄色で表示されると好適である。
尚、ここでは、確認マーカとして方形のマーカ枠Hを例示しているが、図21に示すような十字型マーカJを用いることも可能である。確認マーカが十字型マーカJの場合には、図21に示すように校正点Pが確認座標において交差するような十字が描画される。人間工学的には、十字の交差点で示されたような確認マーカと校正点との一致を確認するよりも、枠などの中央に目標物が入っていることを確認する方が容易と言われている。また、人間工学的には、点に対して点を合わせるよりも、囲いの中央に目標物を納める方が容易と言われている。従って、マーカ80の中央の点と、十字型マーカJの十字の交差点との一致を確認するよりも、マーカ枠Hの枠内にマーカ80が入っていることを確認する方が容易といえる。このため、本実施形態では、確認マーカとしてマーカ枠Hを用いている。
本実施形態のようにマーカ80の外形形状が方形の場合は、図19に示すように、撮影画像上で平行四辺形に近い形となるマーカ80の外形形状に相似形状の確認マーカとすると好適である。また、マーカ80の外形形状が円形の場合には、撮影画像上で楕円に近い形となるマーカ80の外形形状に相似形の楕円を確認マーカとすると好適である。マーカ80の外形形状は既知であるから、所定のマージンを有して撮影画像上のマーカ80を内包する適切な確認マーカを表示させることが可能である。
作業者は、画面を目視により確認し、マーカ枠Hの中にマーカ80が入っている場合には、カメラ1の校正が良好に完了したと判断して、タッチパネル4bの完了ボタンを操作する。タッチパネル4bへの操作は、HMI制御部20の指示入力受付部202を介して調整部30やカメラ調整値設定部19へ伝達される。
〔カメラ調整値設定工程〕
上記、調整完了確認工程におけるタッチパネル4bへの操作は、仮カメラ調整値をカメラ調整値として確定させる確定指示入力である。確定指示入力を受け取ったCPU5は、回転調整値演算機能及び位置調整値演算機能の実行により演算された仮カメラ調整値(Δroll、Δpan、Δtilt)をカメラ調整値として確定させるカメラ調整値設定機能を実行する。つまり、指示入力受付部202を介して、この確定指示入力を受け取ったカメラ調整値設定部19は、ロール調整値Δrollとパン調整値Δpanとチルト調整値Δtiltとをカメラ調整値として確定させる。
具体的には、図3に示すように、CPU5に接続されたパラメータメモリ7に記憶されるカメラ調整値が、CPU5によって書き換えられる。上述したように、パラメータメモリ7は、書き換え可能な不揮発性メモリや、バックアップ電源を有したその他のメモリによって構成されている。好適には、フラッシュメモリやE2PROMを用いるとよい。カメラ調整値設定工程において、CPU5のワークエリアに一時記憶された調整済みの仮カメラ調整値が、パラメータメモリ7に書き込まれ、更新されることによってカメラ1の校正が完了する。例えば、生産工場におけるカメラ1の校正作業が完了する。校正装置10の全ての処理が完了すると、モニタ装置4の表示部4aには、図7と同様に、例えば、ナビゲーションシステムの地図画面が表示される。
尚、上記においては、調整完了判定工程において完了条件を満たしたと判定され、さらに、調整完了確認工程を経て、カメラ調整値設定工程が実施されたが、調整完了判定工程の後に、カメラ調整値設定工程が実施されてもよい。調整完了判定部18が、回転調整部14及び位置調整部15において演算された差分値(roll_out、pan_out、tilt_out)が、それぞれ所定の完了しきい値(roll_th、pan_th、tilt_th)未満であることをカメラ調整値の調整の完了条件として判定を行い、完了条件が満たされていれば、必ずしも確認は必要ではない。従って、調整完了判定工程の後に、直ちにカメラ調整値が、パラメータメモリ7に書き込まれてもよい。調整完了判定工程の後、直ちにカメラ調整値設定工程が実施されても、調整完了判定工程の後、調整完了確認工程などの他の工程を経て、カメラ調整値設定工程が実施されても、調整完了判定の結果に基づいて、仮カメラ調整値をカメラ調整値として確定させることに変わりはない。また、調整完了確認工程などの他の工程が、調整完了判定工程又はカメラ調整値設定工程に含まれると考えることもできる。従って、調整完了判定の結果に基づいて、仮カメラ調整値をカメラ調整値として確定させることに変わりはない。
尚、カメラパラメータの使用時に、確定されたカメラ調整値により、カメラパラメータが調整される場合には、パラメータメモリ7に、カメラパラメータの初期値(設計値)と確定されたカメラ調整値とが格納されればよい。この場合、カメラ調整値設定工程において、パラメータメモリ7には、カメラ調整値が書き込まれる。しかし、パラメータメモリ7には、予め、カメラ調整値により調整されたカメラパラメータが格納されてもよい。従って、カメラ調整値設定工程は、パラメータメモリ7に、カメラ調整値により調整されたカメラパラメータが書き込まれることを含む。いずれによせ、カメラ調整値設定工程において、調整を完了した仮カメラ調整値が確定されることに変わりはない。
〔再調整工程(手動調整工程)〕
調整完了確認工程において、図20に示すように、マーカ枠Hの中にマーカ80が入っていない場合には、作業者は、カメラ1の校正が完了していないと判断する。上述したように、所定回数に亘って調整を繰り返しても、上記論理式(23)が「真」とならない場合にも、カメラ調整値設定工程(図13#40)へ移行して調整が完了することがある。この場合、図20のように、マーカ枠Hの中にマーカ80が入らない可能性がある。このとき、表示制御部201は、マーカ枠Hや十字型マーカJを上記とは異なる表示形態で表示させる。例えば、マーカ枠Hや十字型マーカJを点滅させたり、上述した黄色とは異なる表示色である赤色で表示させたりする。
また、表示制御部201は、校正点検出部12により校正点が検出される際とは異なる表示形態でROI枠Fを表示させる。上述したように、CPU5は、切れ目なく校正点特定工程から調整工程(#10、#20)へと処理を続けていくので、作業者による確認のためのROI枠Fは、調整工程の間も継続して表示されると好適である。従って、ROI枠Fが継続して表示されていた場合には、表示制御部201は、ROI枠Fの表示形態を変化させる。例えば、ROI枠Fの表示色を緑色から赤色に変化させたり、点滅させたりすることによって、作業者に注意喚起する。連続して表示されていたROI枠Fの表示形態を変化させるので作業者に対する視認性が向上する。これらもまた、CPU5により実行される調整完了確認機能の1つの機能である。
上記論理式(23)が「真」となることなく校正が完了したことはCPU5が認識可能である。具体的には、CPU5は、調整部30による自動調整の完了時の仮カメラ調整値を用いて求められた確認座標と実座標との差が所定の確定しきい値以上であるとき、自動調整による調整結果が不充分であると判定する自動調整結果判定機能を実行することができる。従って、この判定結果に基づいて、表示制御部201は、確認マーカ(マーカ枠Hや十字型マーカJ)や領域枠(ROI枠F)の表示形態を良好に制御することが可能である。
このような場合、表示制御部201は、さらに、図20に示すようにタッチパネル4bに矢印ボタンを表示させる。作業者は、タッチパネル4bの矢印ボタンを操作して、引き続き、手動でカメラ1の再調整を行う。つまり、CPU5は、手動調整機能を実行する。マーカ枠Hの中央の確認座標は、自動調整における最後の補正直線Lans上の校正点の位
置に相当する。従って、図20に仮想線で示すように、撮影画像上には補正直線Lans
存在することになる。
作業者は、必要に応じてタッチパネル4bの矢印ボタンを操作し、補正直線Lansの回転角度や上下左右の位置を調整することによって、マーカ枠Hにマーカ80が収まるように手動で校正を行う。ここでは、補正直線Lansを表示部4aには表示されない仮想線として例示したが、明示的に表示させると作業性の向上が期待できる。CPU5(手動調整部60)は、特許文献1や特許文献2と同様に、タッチパネル4bに表示されたタッチボタンの操作量に応じて、上記において算出されたカメラ調整値を補正する。手動調整により補正されたカメラ調整値は、CPU5のワークエリアに一時記憶される仮カメラ調整値(未確定カメラ調整値)である。
本実施形態では、確認マーカとしてマーカ枠Hを用いている。上述したように、人間工学的には、点と点とを一致させるよりも、囲いの中に対象物を収める方が容易と言われている。従って、このような手動調整を実施する場合にも、マーカ枠Hを用いる方が高い作業性を得ることができる。本実施形態においては、マーカ枠H(確認マーカ)は、校正点の理論上の座標の位置である確認座標を中心として、撮影画像上におけるマーカ80を所定のマージンを有して内包する大きさの枠である。上述したように、マーカ80は、方形状に構成されており、マーカ枠Hも方形状である。従って、調整完了確認工程においても再調整工程(手動調整工程)においても、マーカ80の外形形状とマーカ枠Hとして表示される外枠とを良好に比較することができる。
〔カメラ調整値設定工程〕
マーカ枠Hにマーカ80が収まると、作業者は、タッチパネル4bの完了ボタンを操作する。タッチパネル4bへの操作は、HMI制御部20の指示入力受付部202を介して調整部30や手動調整部60、カメラ調整値設定部19へ伝達される。そして、手動調整後の仮カメラ調整値(未確定カメラ調整値)がパラメータメモリ7に書き込まれ、カメラ調整値として確定される。校正装置10の全ての処理が完了し、モニタ装置4の表示部4aには、図7と同様に、例えば、ナビゲーションシステムの地図画面が表示される。
〔調整完了確認工程及びカメラ調整値設定工程の特殊例〕
尚、表示制御部201は、上述した調整完了確認工程において、確認座標と実座標との差が所定の確定しきい値未満であっても、確認マーカ(マーカ枠Hや十字型マーカJ)や領域枠(ROI枠F)の表示形態を変化させることがある。具体的には、表示制御部201は、カメラ1が規定位置に規定の姿勢で取り付けられた際の回転パラメータと、調整部30による繰り返し演算の完了時の仮カメラ調整値を用いて調整された回転パラメータとが同一の値であるとき、確定しきい値による判定結果に拘わらず、確認マーカや領域枠を異なる表示形態で表示させる。又は、カメラ調整値(Δroll、Δpan、Δtilt)が全て初期値であるゼロであった場合に、確認マーカや領域枠を異なる表示形態で表示させる。
この際、回転パラメータが有するロール、パン、チルトの内の何れか1つが同一の値である場合に、確定しきい値による判定結果に拘わらず、確認マーカや領域枠を異なる表示形態で表示させてもよい。当然ながら、カメラ調整値(Δroll、Δpan、Δtilt)の内の少なくとも1つが、ゼロとなる場合に認マーカや領域枠を異なる表示形態で表示させてもよい。
回転パラメータの誤差は、一般的な自然現象と同様に正規分布する。しかし、その中央値は回転パラメータが理想的な場合とはならない。つまり、カメラ調整値(Δroll、Δpan、Δtilt)がゼロとなる点が正規分布の中央値とはならない。回転パラメータの誤差につながる全ての部品が理想的な設計値になる確率は非常に低いため、正規分布の中央値が理想的な回転パラメータとはなることは稀である。また、カメラ1を車両90に設置する際の生産上の最頻姿勢も、理想的な回転パラメータRとなる姿勢ではないと考えられる。従って、カメラ調整値(Δroll、Δpan、Δtilt)の全てがゼロとなり、理想的な回転パラメータと、仮カメラ調整値を用いて調整された回転パラメータとが同一の値となるのは稀なことともいえる。
このようなケースでは、CPU5による演算が正しく実行されずにカメラ調整値(Δroll、Δpan、Δtilt)初期値のままであったことも考えられる。従って、画面上で作業者に目視確認を促し、注意を喚起するために、再調整工程と同様に、表示制御部201は、確認マーカ(マーカ枠Hや十字型マーカJ)や領域枠(ROI枠F)を異なる表示形態で表示させると好適である。
また、カメラ調整値設定部19は、このような状態でパラメータメモリ7にカメラ調整値(Δroll、Δpan、Δtilt)を書き込んだことを作業ログに記録しておくと好適である。例えば、CAN50を介して生産管理用コンピュータ等に記録を伝送する。又は、駐車支援ECU9内部のダイアグノーシスメモリ等に記録しておく。つまり、パラメータメモリ7が未校正で初期状態のままであるのではなく、校正されて初期値と同一の値が再書込されたものであることを記録として残しておく。これにより、後にカメラ1が所望の姿勢に対してずれて設置されていること発見された際に、使用上生じたものであるか、生産不良により生じたものであるのかなどの追跡や解析が容易となる。
〔他の実施形態〕
(1)上述した本実施形態では、作業者がモニタ装置4のシステム設定ボタン4hを操作して、表示部4aに設定画面を表示させ、タッチパネル4bの所定のタッチボタンを操作することで、校正装置10を起動させた。また、校正装置10は、基本的に自動調整を行い、確認工程において手動調整が必要な場合に作業者が手動で調整を実施した。しかし、生産工場や修理工場ごとに設備が異なる場合もあり、全ての生産工場や修理工場において自動調整が可能であるとは限らない。そこで、校正装置10の起動時においては、図22に示すように、自動調整と手動調整とが選択可能に構成されていると好適である。
上述したように、生産工場や修理工場において、作業者は、図7に示すシステム設定ボタン4hを操作して、表示部4aに設定画面を表示させる。表示部4aには、図22の上段に示すように、車両90の現在位置と共に地図が表示されているが、図22の中断に示すような設定画面(第1設定画面)が表示される。ここで、タッチパネル4bの「カメラ調整」ボタンを作業者が選択すると、HMI制御部20の指示入力受付部202は、タッチボタンの指示を受け付け、CPU5は、カメラ校正プログラムを起動する。ここまでは、上記実施形態と同様であり、上記実施形態においては上述したような自動調整演算が実行される。
本実施形態においては、図22の下段に示すように、さらに選択画面が表示される。ここで、タッチパネル4bの「自動調整」ボタンを作業者が選択すると、HMI制御部20の指示入力受付部202は、タッチボタンの指示を受け付け、CPU5は、自動調整プログラムを起動する。この自動調整プログラムは、上述した実施形態のカメラ校正プログラムと同様である。選択画面において、タッチパネル4bの「手動調整」ボタンを作業者が選択すると、HMI制御部20の指示入力受付部202は、タッチボタンの指示を受け付け、CPU5は、手動調整プログラムを起動する。手動調整が選択された場合には、特許文献1や特許文献2と同様の手動調整演算を実行するカメラ校正プログラムが起動される。
(2)上記実施形態においては、車両90の後方を撮影するカメラ1の校正を行う場合を例示したが、前方や側方を撮影するカメラの校正にも本発明の校正装置を適用することが可能である。
(3)上記実施形態においては、第1調整部が回転調整部14であり、第2調整部が位置調整部15である場合を例として説明した。しかし、これに限定されることなく、校正対象のカメラの構造や、その取り付け方法によっては、第1調整部が位置調整部15であり、第2調整部が回転調整部14であってもよい。
(4)カメラ1の取り付け精度の公差管理において上述したパン回転、又はチルト回転の何れか一方が高精度に管理可能である場合、位置調整部15は、水平位置調整部16又は垂直位置調整部17の何れか一方のみにより構成されてもよい。位置調整工程(#20)や、位置調整機能についても同様である。
(5)関心領域ROIの設定や、このROI枠Fを表示部4aに重畳させることは、カメラ校正方法に依らず可能である。手動調整の場合を含め、上記実施形態とは異なる演算手法によってカメラの校正を行う場合、例えば特許文献3に記載したようなアルゴリズムを用いる場合においても可能である。また、確認マーカとして方形のマーカ枠Hを用いる点についても、カメラ校正方法に依らず可能である。つまり、手動調整の場合を含め、上記実施形態とは異なる演算手法によってカメラの校正を行う場合、例えば特許文献3に記載したようなアルゴリズムを用いる場合においても可能である。
以上説明したように、本発明によって、簡単な構成で、短時間で精度良く車載カメラを校正することができる生産性の高い車載カメラの校正装置を提供することが可能となる。
1:カメラ(車載カメラ)
10:校正装置
11:画像取得部
12:校正点特定部
13:座標変換部
14:回転調整部、ロール調整部(第1調整部)
15:位置調整部(第2調整部)
16:水平位置調整部(パン調整部)
17:垂直位置調整部(チルト調整部)
18:調整完了判定部
19:カメラ調整値設定部
80:マーカ(校正指標)
90:車両
pan_out:パン回転の差分値
pan_th:パン調整しきい値(完了しきい値)
roll_out:ロール回転の差分値
roll_th:ロール調整しきい値(完了しきい値)
tilt_out:チルト回転の差分値
tilt_th:チルト調整しきい値(完了しきい値)
tgt:実直線
cnv:変換直線
tgt2:第2実直線
cnv2:第2変換直線
C:カメラ座標の原点
C:変換直線の中点
Q、Q1、Q2、P、P1、P2、P1int、P2int:校正点
C:実直線の中点
Π:射影面
Δroll:ロール調整値、回転調整値、カメラ調整値
Δpan:パン調整値、水平位置調整値、位置調整値、カメラ調整値
Δtilt:チルト調整値、垂直位置調整値、位置調整値、カメラ調整値
(xcnv,ycnv):変換直線の中点の座標
(xtgt,ytgt):実直線の中点の座標
(xans,yans):補正直線の中点の座標

Claims (5)

  1. 3次元直交座標系の基準座標系における規定位置に規定の姿勢で車両に取り付けられた車載カメラの3次元直交座標系のカメラ座標系と前記基準座標系との関係を前記車載カメラの実際の取り付け姿勢に応じて定義して、前記車載カメラを校正する車載カメラの校正装置であって、
    前記車載カメラにより、前記基準座標系の異なる2箇所の所定位置に配置されたそれぞれの校正点を視界内に含んで撮影された撮影画像を取得する画像取得部と、
    前記カメラ座標系の射影面である前記撮影画像においてそれぞれの前記校正点を検出し、前記射影面に設定される2次元直交座標系においてそれぞれの前記校正点の座標を実座標として特定する校正点特定部と、
    前記車載カメラが前記規定位置に前記規定の姿勢で取り付けられた際の前記カメラ座標系と前記基準座標系との関係を定義するカメラパラメータに基づいて前記射影面においてそれぞれの前記校正点が特定される座標である初期座標を、当該カメラパラメータを前記車載カメラの実際の取り付け姿勢に応じて補正するカメラ調整値の確定前の値を用いて変換座標に変換する座標変換部と、
    前記変換座標及び前記実座標に基づいて、前記カメラ座標系の3つの軸の内の1つ又は2つの軸を中心とする回転角に対応する前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の1つ又は2つの調整値を演算して、前記カメラ調整値を更新する第1調整部と、
    前記第1調整部により更新された前記カメラ調整値を用いて前記座標変換部により座標変換された変換座標及び前記実座標に基づいて、前記カメラ座標系の3つの軸の内、前記第1調整部で調整された軸を除く残りの2つ又は1つの軸を中心とする回転角に対応する前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の内、前記第1調整部で演算された調整値を除く残りの2つ又は1つの調整値を演算して、前記カメラ調整値を更新する第2調整部と、
    前記第1調整部及び前記第2調整部における調整時の前記変換座標と前記実座標との変位量に基づいて、前記カメラ調整値の調整が完了したと判定する調整完了判定部と、
    前記調整完了判定部による調整完了の判定結果に基づいて、前記第1調整部及び前記第2調整部において演算された調整値により更新された前記カメラ調整値を確定させるカメラ調整値設定部と、
    を備える車載カメラの校正装置。
  2. 前記画像取得部は、前記車載カメラにより、前記基準座標系の異なる2箇所の所定位置に配置された校正指標を視界内に含んで撮影された撮影画像を取得し、
    前記校正点特定部は、前記カメラ座標系の射影面である前記撮影画像において前記校正指標の中のそれぞれの校正点を検出し、前記射影面に設定される2次元直交座標系においてそれぞれの前記校正点の座標を実座標として特定する請求項1に記載の車載カメラの校正装置。
  3. 前記調整完了判定部が、前記第1調整部及び前記第2調整部における調整時の前記変換座標と前記実座標との変位量がそれぞれ所定の基準変位量未満である場合に、前記カメラ調整値の調整が完了したと判定する請求項1に記載の車載カメラの校正装置。
  4. 3次元直交座標系の基準座標系における規定位置に規定の姿勢で車両に取り付けられた車載カメラの3次元直交座標系のカメラ座標系と前記基準座標系との関係を前記車載カメラの実際の取り付け姿勢に応じて定義して、前記車載カメラを校正する車載カメラの校正方法であって、
    前記車載カメラにより、前記基準座標系の異なる2箇所の所定位置に配置されたそれぞれの校正点を視界内に含んで撮影された撮影画像を取得する画像取得工程と、
    前記カメラ座標系の射影面である前記撮影画像においてそれぞれの前記校正点を検出し、前記射影面に設定される2次元直交座標系においてそれぞれの前記校正点の座標を実座標として特定する校正点特定工程と、
    前記車載カメラが前記規定位置に前記規定の姿勢で取り付けられた際の前記カメラ座標系と前記基準座標系との関係を定義するカメラパラメータに基づいて前記射影面においてそれぞれの前記校正点が特定される座標である初期座標を、当該カメラパラメータを前記車載カメラの実際の取り付け姿勢に応じて補正するカメラ調整値の確定前の値を用いて第1変換座標に変換する第1座標変換工程と、
    前記第1変換座標及び前記実座標に基づいて、前記カメラ座標系の3つの軸の内の1つ又は2つの軸を中心とする回転角に対応する前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の1つ又は2つの調整値を演算して、前記カメラ調整値を更新する第1調整工程と、
    前記第1調整工程において更新された確定前の前記カメラ調整値を用いて前記初期座標を第2変換座標に変換する第2座標変換工程と、
    前記第2変換座標及び前記実座標に基づいて、前記カメラ座標系の3つの軸の内、前記第1調整工程において調整された軸を除く残りの2つ又は1つの軸を中心とする回転角に対応する前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の内、前記第1調整工程において演算された調整値を除く残りの2つ又は1つの調整値を演算して、前記カメラ調整値を更新する第2調整工程と、
    前記第1調整工程及び前記第2調整工程において、前記第1変換座標と前記実座標との変位量、及び、前記第2変換座標と前記実座標との変位量に基づいて前記カメラ調整値の調整が完了したと判定する調整完了判定工程と、
    前記調整完了判定工程において前記調整が完了した場合に移行され、前記第1調整工程及び前記第2調整工程において演算された調整値により更新された前記カメラ調整値を確定させるカメラ調整値設定工程と、
    を備える車載カメラの校正方法。
  5. 3次元直交座標系の基準座標系における規定位置に規定の姿勢で車両に取り付けられた車載カメラの3次元直交座標系のカメラ座標系と前記基準座標系との関係を前記車載カメラの実際の取り付け姿勢に応じて定義して、前記車載カメラを校正するための機能をコンピュータに実行させる車載カメラの校正プログラムであって、
    前記車載カメラにより、前記基準座標系の異なる2箇所の所定位置に配置されたそれぞれの校正点を視界内に含んで撮影された撮影画像を取得する画像取得機能と、
    前記カメラ座標系の射影面である前記撮影画像においてそれぞれの前記校正点を検出し、前記射影面に設定される2次元直交座標系においてそれぞれの前記校正点の座標を実座標として特定する校正点特定機能と、
    前記車載カメラが前記規定位置に前記規定の姿勢で取り付けられた際の前記カメラ座標系と前記基準座標系との関係を定義するカメラパラメータに基づいて前記射影面においてそれぞれの前記校正点が特定される座標である初期座標を、当該カメラパラメータを前記車載カメラの実際の取り付け姿勢に応じて補正するカメラ調整値の確定前の値を用いて第1変換座標に変換する第1座標変換機能と、
    前記第1変換座標及び前記実座標に基づいて、前記カメラ座標系の3つの軸の内の1つ又は2つの軸を中心とする回転角に対応する前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の1つ又は2つの調整値を演算して、前記カメラ調整値を更新する第1調整機能と、
    前記第1調整機能の実行により更新された確定前の前記カメラ調整値を用いて前記初期座標を第2変換座標に変換する第2座標変換機能と、
    前記第2変換座標及び前記実座標に基づいて、前記カメラ座標系の3つの軸の内、前記第1調整機能の実行により調整された軸を除く残りの2つ又は1つの軸を中心とする回転角に対応する前記規定の姿勢からの変位量であり、前記カメラ調整値を構成する調整値の内、前記第1調整機能の実行により演算された調整値を除く残りの2つ又は1つの調整値を演算して、前記カメラ調整値を更新する第2調整機能と、
    前記第1調整機能及び前記第2調整機能が実行された際に、前記第1変換座標と前記実座標との変位量、及び、前記第2変換座標と前記実座標との変位量に基づいて前記カメラ調整値の調整が完了したと判定する調整完了判定機能と、
    前記調整完了判定機能の実行により前記調整が完了した場合に実行され、前記第1調整機能及び前記第2調整機能の実行により演算された調整値により更新された前記カメラ調整値を確定させるカメラ調整値設定機能と、
    を有する車載カメラの校正プログラム。
JP2010262348A 2010-11-25 2010-11-25 車載カメラの校正装置、方法、及びプログラム Active JP5240527B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010262348A JP5240527B2 (ja) 2010-11-25 2010-11-25 車載カメラの校正装置、方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010262348A JP5240527B2 (ja) 2010-11-25 2010-11-25 車載カメラの校正装置、方法、及びプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2009085537A Division JP4636346B2 (ja) 2009-03-31 2009-03-31 車載カメラの校正装置、方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2011087308A true JP2011087308A (ja) 2011-04-28
JP5240527B2 JP5240527B2 (ja) 2013-07-17

Family

ID=44079879

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010262348A Active JP5240527B2 (ja) 2010-11-25 2010-11-25 車載カメラの校正装置、方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP5240527B2 (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140001005U (ko) * 2012-08-06 2014-02-14 아카드 테크놀로지 코포레이션 적성 주행 보조 감시 녹화 시스템
JP2015075426A (ja) * 2013-10-10 2015-04-20 株式会社フジタ 建設機械に搭載される俯瞰画像表示装置におけるカメラのキャリブレーション方法及びその結果を用いた俯瞰画像表示装置
KR20160114942A (ko) * 2015-03-25 2016-10-06 현대모비스 주식회사 인식 고장 진단 장치 및 인식 고장 진단 방법
JP2017062848A (ja) * 2016-12-13 2017-03-30 三菱電機株式会社 キャリブレーション方法、プログラムおよびコンピュータ
JP2018512593A (ja) * 2015-04-10 2018-05-17 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツングRobert Bosch Gmbh 車両の移動データを使用した車載カメラによる物体位置測定
WO2019176118A1 (ja) * 2018-03-16 2019-09-19 三菱電機株式会社 重畳表示システム
CN110728720A (zh) * 2019-10-21 2020-01-24 北京百度网讯科技有限公司 用于相机标定的方法、装置、设备和存储介质
EP3644279A1 (en) * 2018-10-25 2020-04-29 Continental Automotive GmbH Static camera calibration using motion of vehicle portion
CN111260729A (zh) * 2020-01-10 2020-06-09 上海兆芯集成电路有限公司 用于车载环视系统中鱼眼镜头标定的方法及装置
CN111508272A (zh) * 2019-01-31 2020-08-07 斯特拉德视觉公司 提供基于照相机的鲁棒物体距离预测的方法及装置
CN112673284A (zh) * 2018-09-21 2021-04-16 日立建机株式会社 坐标转换系统及作业机械
CN113942458A (zh) * 2021-10-29 2022-01-18 禾多科技(北京)有限公司 用于车载摄像头调整系统的控制方法、装置、设备和介质
CN115278184A (zh) * 2022-07-18 2022-11-01 峰米(重庆)创新科技有限公司 投影画面校正方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001245326A (ja) * 1999-12-24 2001-09-07 Aisin Seiki Co Ltd 車載カメラの校正装置および校正方法、並びに校正指標
JP2006148745A (ja) * 2004-11-24 2006-06-08 Aisin Seiki Co Ltd カメラの校正方法及びカメラの校正装置
JP2006306162A (ja) * 2005-04-26 2006-11-09 Toyota Auto Body Co Ltd 車載光学装置の方向調整方法
JP2008131250A (ja) * 2006-11-20 2008-06-05 Aisin Seiki Co Ltd 車載カメラの校正装置及び当該装置を用いた車両の生産方法
JP2008131177A (ja) * 2006-11-17 2008-06-05 Aisin Seiki Co Ltd 車載カメラの校正装置、校正方法、並びにこの校正方法を用いた車両の生産方法
JP2008187564A (ja) * 2007-01-31 2008-08-14 Sanyo Electric Co Ltd カメラ校正装置及び方法並びに車両
JP2008193188A (ja) * 2007-02-01 2008-08-21 Sanyo Electric Co Ltd カメラ校正装置及び方法並びに車両
JP4636346B2 (ja) * 2009-03-31 2011-02-23 アイシン精機株式会社 車載カメラの校正装置、方法、及びプログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001245326A (ja) * 1999-12-24 2001-09-07 Aisin Seiki Co Ltd 車載カメラの校正装置および校正方法、並びに校正指標
JP2006148745A (ja) * 2004-11-24 2006-06-08 Aisin Seiki Co Ltd カメラの校正方法及びカメラの校正装置
JP2006306162A (ja) * 2005-04-26 2006-11-09 Toyota Auto Body Co Ltd 車載光学装置の方向調整方法
JP2008131177A (ja) * 2006-11-17 2008-06-05 Aisin Seiki Co Ltd 車載カメラの校正装置、校正方法、並びにこの校正方法を用いた車両の生産方法
JP2008131250A (ja) * 2006-11-20 2008-06-05 Aisin Seiki Co Ltd 車載カメラの校正装置及び当該装置を用いた車両の生産方法
JP2008187564A (ja) * 2007-01-31 2008-08-14 Sanyo Electric Co Ltd カメラ校正装置及び方法並びに車両
JP2008193188A (ja) * 2007-02-01 2008-08-21 Sanyo Electric Co Ltd カメラ校正装置及び方法並びに車両
JP4636346B2 (ja) * 2009-03-31 2011-02-23 アイシン精機株式会社 車載カメラの校正装置、方法、及びプログラム

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140001005U (ko) * 2012-08-06 2014-02-14 아카드 테크놀로지 코포레이션 적성 주행 보조 감시 녹화 시스템
KR200481509Y1 (ko) 2012-08-06 2016-10-10 아카드 테크놀로지 코포레이션 적성 주행 보조 감시 녹화 시스템
JP2015075426A (ja) * 2013-10-10 2015-04-20 株式会社フジタ 建設機械に搭載される俯瞰画像表示装置におけるカメラのキャリブレーション方法及びその結果を用いた俯瞰画像表示装置
KR20160114942A (ko) * 2015-03-25 2016-10-06 현대모비스 주식회사 인식 고장 진단 장치 및 인식 고장 진단 방법
KR102299446B1 (ko) 2015-03-25 2021-09-08 현대모비스 주식회사 인식 고장 진단 장치 및 인식 고장 진단 방법
JP2018512593A (ja) * 2015-04-10 2018-05-17 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツングRobert Bosch Gmbh 車両の移動データを使用した車載カメラによる物体位置測定
US10423164B2 (en) 2015-04-10 2019-09-24 Robert Bosch Gmbh Object position measurement with automotive camera using vehicle motion data
JP2017062848A (ja) * 2016-12-13 2017-03-30 三菱電機株式会社 キャリブレーション方法、プログラムおよびコンピュータ
JPWO2019176118A1 (ja) * 2018-03-16 2020-12-03 三菱電機株式会社 重畳表示システム
JP7003219B2 (ja) 2018-03-16 2022-01-20 三菱電機株式会社 重畳表示システム
WO2019176118A1 (ja) * 2018-03-16 2019-09-19 三菱電機株式会社 重畳表示システム
CN112673284A (zh) * 2018-09-21 2021-04-16 日立建机株式会社 坐标转换系统及作业机械
EP3644279A1 (en) * 2018-10-25 2020-04-29 Continental Automotive GmbH Static camera calibration using motion of vehicle portion
US10964059B2 (en) 2018-10-25 2021-03-30 Continental Automotive Gmbh Static camera calibration using motion of vehicle portion
CN111508272B (zh) * 2019-01-31 2022-04-26 斯特拉德视觉公司 提供基于照相机的鲁棒物体距离预测的方法及装置
CN111508272A (zh) * 2019-01-31 2020-08-07 斯特拉德视觉公司 提供基于照相机的鲁棒物体距离预测的方法及装置
CN110728720A (zh) * 2019-10-21 2020-01-24 北京百度网讯科技有限公司 用于相机标定的方法、装置、设备和存储介质
CN110728720B (zh) * 2019-10-21 2023-10-13 阿波罗智能技术(北京)有限公司 用于相机标定的方法、装置、设备和存储介质
CN111260729A (zh) * 2020-01-10 2020-06-09 上海兆芯集成电路有限公司 用于车载环视系统中鱼眼镜头标定的方法及装置
CN111260729B (zh) * 2020-01-10 2022-08-19 格兰菲智能科技有限公司 用于车载环视系统中鱼眼镜头标定的方法及装置
CN113942458A (zh) * 2021-10-29 2022-01-18 禾多科技(北京)有限公司 用于车载摄像头调整系统的控制方法、装置、设备和介质
CN113942458B (zh) * 2021-10-29 2022-07-29 禾多科技(北京)有限公司 用于车载摄像头调整系统的控制方法、装置、设备和介质
CN115278184A (zh) * 2022-07-18 2022-11-01 峰米(重庆)创新科技有限公司 投影画面校正方法及装置
CN115278184B (zh) * 2022-07-18 2024-03-15 峰米(重庆)创新科技有限公司 投影画面校正方法及装置

Also Published As

Publication number Publication date
JP5240527B2 (ja) 2013-07-17

Similar Documents

Publication Publication Date Title
JP4636346B2 (ja) 車載カメラの校正装置、方法、及びプログラム
JP5240527B2 (ja) 車載カメラの校正装置、方法、及びプログラム
JP4751939B2 (ja) 車載カメラの校正装置
JP4690476B2 (ja) 車載カメラの校正装置
JP5081313B2 (ja) 車載カメラの校正装置
JP4803450B2 (ja) 車載カメラの校正装置及び当該装置を用いた車両の生産方法
JP4803449B2 (ja) 車載カメラの校正装置、校正方法、並びにこの校正方法を用いた車両の生産方法
US10467789B2 (en) Image processing device for vehicle
JP2009288152A (ja) 車載カメラのキャリブレーション方法
JP6565769B2 (ja) 車載カメラの取付角度検出装置、取付角度較正装置、取付角度検出方法、取付角度較正方法、およびコンピュータープログラム
JP2004297808A (ja) 移動体周辺監視装置
JP2006268076A (ja) 運転支援システム
JP6614754B2 (ja) 車両上に配置された全方向カメラからの全方向画像をレクティリニア画像に変換する方法
US9162621B2 (en) Parking support apparatus
US20160090044A1 (en) Periphery monitoring apparatus and periphery monitoring system
JP2004120661A (ja) 移動体周辺監視装置
JP2018528514A (ja) 後方交差交通のクイックルック
KR102227850B1 (ko) 차량용 후방 카메라의 영상 보정 방법
JP4855278B2 (ja) カメラパラメータ取得装置
JP2007096964A (ja) カメラ補正装置及びカメラ補正方法
JP2018113622A (ja) 画像処理装置、画像処理システム、及び、画像処理方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A132

Effective date: 20130110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130215

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130307

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130320

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160412

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 5240527

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160412

Year of fee payment: 3