JP5552892B2 - 画像処理装置および画像処理プログラム - Google Patents

画像処理装置および画像処理プログラム Download PDF

Info

Publication number
JP5552892B2
JP5552892B2 JP2010111389A JP2010111389A JP5552892B2 JP 5552892 B2 JP5552892 B2 JP 5552892B2 JP 2010111389 A JP2010111389 A JP 2010111389A JP 2010111389 A JP2010111389 A JP 2010111389A JP 5552892 B2 JP5552892 B2 JP 5552892B2
Authority
JP
Japan
Prior art keywords
image
data
unit
camera
vehicle
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.)
Expired - Fee Related
Application number
JP2010111389A
Other languages
English (en)
Other versions
JP2011239349A (ja
Inventor
宗太郎 金子
友彦 井筒
徹 鶴田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2010111389A priority Critical patent/JP5552892B2/ja
Publication of JP2011239349A publication Critical patent/JP2011239349A/ja
Application granted granted Critical
Publication of JP5552892B2 publication Critical patent/JP5552892B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Fittings On The Vehicle Exterior For Carrying Loads, And Devices For Holding Or Mounting Articles (AREA)
  • Closed-Circuit Television Systems (AREA)

Description

本発明は、画像処理装置および画像処理プログラムに関する。
車両の上方の位置から車両全体を撮影したような俯瞰画像をモニタに表示することで、ドライバの運転操作を支援する画像変換装置が存在する。例えば、この画像変換装置は、車両の前後左右に設置された4台の車載カメラがそれぞれ撮影した4つの画像を合成することで俯瞰画像を生成する。
画像変換装置は、車載カメラの設置位置や設置角度などのカメラパラメータを利用して俯瞰画像を生成する。このため、カメラパラメータに誤差が生じると、各画像を合成する際にずれなどが発生してしまい、正確な俯瞰画像を生成することができない。パラメータに生じる誤差は、車両の走行中に何らかの原因で発生し得る。したがって、ドライバは、自動車ディーラーなどに車両を持って行き、カメラパラメータの誤差の修正を依頼する。
カメラパラメータの誤差を修正する技術には様々なものが存在する。例えば、車載カメラの撮影範囲が重なる領域に形状が既知のマーカを配置し、マーカの特徴点を用いてカメラパラメータの誤差を修正するという技術が存在する。また、路面上の特徴部分をマーカに見立ててカメラパラメータの誤差を修正するという技術も存在する。
特開2008−148474号公報 特許第3286306号公報 特開2008−187566号公報
しかしながら、上記従来技術では、カメラパラメータを修正する場合に車両を所定の場所に停止させることが前提条件となっており、車両の走行中にパラメータを修正することができないという問題があった。なお、かかる問題は、車両の車載カメラだけでなく、その他の移動体のカメラのパラメータを修正する場合にも同様に発生し得る。
開示の技術は、上記に鑑みてなされたものであって、移動体の走行中にカメラのパラメータを修正することができる画像処理装置および画像処理プログラムを提供することを目的とする。
本願の開示する画像処理装置は、対になるカメラの撮影範囲が重複する領域を示す重複領域の画像を異なる重複領域毎に取得する画像取得部と、所定の形状の対象物の画像と前記重複領域の画像とを比較して、前記重複領域の画像に含まれる前記対象物の画像を抽出し、抽出した対象物の画像を該画像を撮影したカメラと対応づけて記憶部に保存する対象物抽出部と、前記異なる重複領域毎に、前記対になるカメラがそれぞれ撮影した対象物の画像が前記記憶部に記憶された場合に、各対象物の特徴点の位置と所定の寸法とに基づいて、各特徴点の位置の誤差を算出する誤差算出部とを備えたことを要件とする。
本願の開示する画像処理装置の一つの態様によれば、移動体の走行中にカメラのパラメータを修正することができるという効果を奏する。
図1は、本実施例1にかかる画像処理装置の構成を示す図である。 図2は、車載カメラの配置位置とオーバーラップ部分を示す図である。 図3は、本実施例2にかかるキャリブレーション装置の構成を示す図である。 図4は、画像管理テーブルのデータ構造の一例を示す図である。 図5は、テンプレートデータのデータ構造の一例を示す図である。 図6は、テンプレートの特徴点の一例を示す図である。 図7は、キャリブレーション実行部の構成を示す図である。 図8は、各種画像データを抽出するタイミングを示す図である。 図9は、対象物画像管理テーブルのデータ構造の一例を示す図である。 図10は、カメラパラメータ調整部の処理を説明するための図である。 図11は、本実施例2にかかるキャリブレーション装置の処理手順を示すフローチャートである。 図12は、カメラパラメータ調整処理の処理手順を示すフローチャートである。 図13は、調整候補判定処理の処理手順を示すフローチャートである。 図14は、画像データを対象物画像管理テーブルに登録する処理手順を示すフローチャートである。 図15は、実施例にかかるキャリブレーション装置を構成するコンピュータのハードウェア構成を示す図である。
以下に、本願の開示する画像処理装置および画像処理プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
図1は、本実施例1にかかる画像処理装置の構成を示す図である。図1に示すように、この画像処理装置10は、画像取得部11、対象物抽出部12、記憶部13、誤差算出部14を有する。画像取得部11は、対になるカメラの撮影範囲が重複する領域を示す重複領域の画像を異なる重複領域毎に取得する。
対象物抽出部12は、所定の形状の対象物の画像と重複領域の画像とを比較して、重複領域の画像に含まれる対象物の画像を抽出し、抽出した対象物の画像を該画像を撮影したカメラと対応づけて記憶部13に保存する。
記憶部13は、対象物の画像とこの画像を撮影したカメラとを対応づけて記憶する。誤差算出部14は、異なる重複領域毎に、対になるカメラがそれぞれ撮影した対象物の画像が記憶部13に記憶された場合に、各対象物の特徴点の位置と所定の寸法に基づいて、各特徴点の位置の誤差を算出する。
通常、車両に配置されたカメラのカメラパラメータを調整する場合には、重複領域に含まれる対象物の画像が、異なる重複領域毎に必要である。このため、従来技術では、車両を一旦停止させて、異なる重複領域毎に対象物をそれぞれ配置し、異なる重複領域毎の画像を取得していた。
これに対して、上記画像処理装置10は、カメラが撮影した重複領域の画像に対象物が含まれている場合に、重複領域の画像を記憶部13に記憶しておき、記憶部13に異なる重複領域毎の対象物の画像が記憶されるのを待つ。そして、画像処理装置10は、記憶部13に異なる重複領域毎の対象物の画像が記憶された後に、各対象物の特徴点と所定の寸法とを比較して、各特徴点の位置の誤差を算出する。このような構成にすることで、画像処理装置10は、例えば、車両が走行中であっても、記憶部13に必要な対象物の画像を記憶することができる。また、各対象物の特徴点の位置の誤差を利用することで、カメラパラメータを調整することも可能である。このため、本実施例1にかかる画像処理装置10は、車両の走行中にカメラのパラメータを修正することができるという効果を奏する。
まず、車載カメラの配置位置およびオーバーラップ部分の一例について説明する。オーバーラップ部は、各車載カメラの撮影範囲が重複する部分を示す。図2は、車載カメラの配置位置とオーバーラップ部分を示す図である。図2に示すように、車両50の前後左右に車載カメラCF、CB、CL、CRが配置されている。具体的には、車両50の前側に車載カメラCFが配置され、車両50の後側に車載カメラCBが配置される。また、車両50の左側に車載カメラCLが配置され、車両50の右側に車載カメラCRが配置される。
車載カメラCFの撮影範囲を50Fとし、車載カメラCBの撮影範囲を50Bとする。車載カメラCLの撮影範囲を50Lとし、車載カメラCRの撮影範囲を50Rとする。そして、車載カメラCFの撮影範囲50Fと車載カメラCRの撮影範囲50Rとのオーバーラップ部をAFRとし、車載カメラCRの撮影範囲50Rと車載カメラCBの撮影範囲50Bとのオーバーラップ部をARBとする。車載カメラCBの撮影範囲50Bと車載カメラCLの撮影範囲50Lとのオーバーラップ部分をABLとし、車載カメラCLの撮影範囲50Lと車載カメラCFの撮影範囲50Fとのオーバーラップ部分をALFとする。
次に、本実施例2にかかるキャリブレーション装置の構成について説明する。このキャリブレーション装置は、例えば、車両50の内部に配置される。図3は、本実施例2にかかるキャリブレーション装置の構成を示す図である。図3に示すように、このキャリブレーション装置100は、記憶部110、画像入力部120、画像補正部130、キャリブレーション実行部140、画像合成部150、表示部160を有する。また、キャリブレーション装置100は、車載カメラCF、CR、CB、CLに接続される。
記憶部110は、各種のデータを記憶する記憶部である。この記憶部110は、画像管理テーブル110a、キャリブレーションポイント110b、テンプレートデータ110c、対象物画像管理テーブル110d、カメラパラメータ110eを記憶する。
画像管理テーブル110aは、車載カメラCF、CR、CB、CLが撮影した画像データを記憶するテーブルである。図4は、画像管理テーブルのデータ構造の一例を示す図である。図4に示すように、この画像管理テーブル110aは、カメラ識別情報と画像データと撮影時間とを対応づけて記憶する。カメラ識別情報は、画像データを撮影した車載カメラを一意に識別する情報である。画像データは、各車載カメラが撮影した画像データである。撮影時間は、車載カメラが画像を撮影した時間である。図4では一例として、各車載カメラの撮影範囲の画像データを記憶する場合を示したが、撮影範囲のうち、オーバーラップ部分の画像データのみを記憶してもよい。
キャリブレーションポイント110bは、所定の座標情報を有する。この座標情報に対応する位置周辺には、交差点や道路標識、路上のマークなどが存在する。例えば、路上のマークには、前方に横断歩道ありの意味を持つ「ひし形」マークや、Uターン禁止の意味を持つ「バツ」マーク、進行方向を示す「矢印」マークが存在する。以下の説明において、交差点、道路標識、路上のマークをまとめて対象物と表記する。
テンプレートデータ110cは、対象物の形状データをそれぞれ記憶する。図5は、テンプレートデータのデータ構造の一例を示す図である。図5に示すように、このテンプレートデータ110cは、テンプレート識別情報と形状データと特徴点間の寸法とを対応づけて記憶する。テンプレート識別情報は、テンプレートを一意に識別する情報である。形状データは、テンプレートの形状を示すデータである。特徴点間の寸法は、テンプレートに含まれる特徴点間の寸法を示す。
テンプレートの特徴点は、テンプレートによって異なる。図6は、テンプレートの特徴点の一例を示す図である。図6に示すように、テンプレートAの形状が矢印の場合には、テンプレートAの特徴点は矢印の各端A1〜A5となる。テンプレートBの形状がバツ印の場合には、テンプレートBの特徴点はバツ印の各端B1〜B8となる。テンプレートCの形状がひし形の場合には、テンプレートCの特徴点はひし形の各端C1〜C4となる。
対象物画像管理テーブル110dは、オーバーラップ部分ALF、AFR、ARB、ABLに含まれる対象物の画像データを記憶する。カメラパラメータ110eは、車載カメラCF、CR、CB、CLの設置位置や設置角度などをそれぞれ記憶する。
画像入力部120は、車載カメラCF、CR、CB、CLから画像データを取得し、取得した各画像データを画像補正部130に出力する処理部である。各画像データは、撮影範囲の画像の他に、画像を撮影した車載カメラを識別する情報や撮影時刻の情報を含んでいるものとする。
画像補正部130は、各画像データに対して、レンズの歪み補正などの画像補正を行う処理部である。画像補正部130は、画像補正を行った後に、各画像データを画像管理テーブル110aに記憶する。
キャリブレーション実行部140は、オーバーラップ部分ALF、AFR、ARB、ABLに対象物が含まれるたびに、対象物の画像データを対象物画像管理テーブル110dに登録する。そして、キャリブレーション実行部140は、オーバーラップ部分ALF、AFR、ARB、ABLに対応する対象物の画像データが全て揃った場合に、対象物の特徴点の誤差を算出する。キャリブレーション実行部140は、かかる誤差を利用してカメラパラメータ110eを調整する。キャリブレーション実行部140の処理の詳細は後述する。
画像合成部150は、車載カメラCF、CR、CB、CLが撮影した画像データを画像管理テーブル110aから取得し、カメラパラメータ110eに基づいて各画像データを合成することで、合成画像データを生成する処理部である。画像合成部150は、合成画像データを表示部160に出力する。
表示部160は、合成画像データをディスプレイなどの表示装置に表示させる処理部である。この合成画像データは、例えば、車両50を上方の位置から車両50全体を撮影したような俯瞰画像に対応する。
上記の画像入力部120、画像補正部130、キャリブレーション実行部140、画像合成部150、表示部160は、例えば、ASIC(Application Specific Integrated Circuit)や、FPGA(Field Programmable Gate Array)などの集積装置に対応する。また、上記処理部130、140、150、160は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の電子回路に対応する。
上記の記憶部110は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子、またはハードディスク、光ディスクなどの記憶装置に対応する。
次に、図3に示したキャリブレーション実行部140の構成について説明する。図7は、キャリブレーション実行部の構成を示す図である。図7に示すように、このキャリブレーション実行部140は、位置データ取得部140a、誤差補正判定部140b、オブジェクト探索部140c、有効画像判定部140d、カメラパラメータ調整部140eを有する。
位置データ取得部140aは、車両50の位置データを取得し、位置データをオブジェクト探索部140cに出力する。この位置データは、車両50の位置座標を含む。位置データ取得部140aは、例えば、GPS(Global Positioning System)等の機能を利用して、車両50の位置座標を取得する。
誤差補正判定部140bは、カメラパラメータ110eの調整を行うか否かを判定し、判定結果をカメラパラメータ調整部140eに出力する。例えば、誤差補正判定部140bは、外部の入力装置を介して、利用者からカメラパラメータの調整指示を受け付けた場合に、カメラパラメータ110eの調整を行うと判定する。また例えば、誤差補正判定部140bは、カメラパラメータを調整した前回のタイミングから経過した時間が、所定時間以上である場合に、カメラパラメータ110eの調整を行うと判定しても良い。この場合に、所定時間は、走行中の振動や季節の温度差によるボディの変化などのカメラパラメータに誤差を生じさせる原因を考慮して設定することが考えられる。
オブジェクト探索部140cは、テンプレートデータ110cに記憶された対象物の形状データと、画像管理テーブル110aの各画像データとを比較して、対象物を含む画像データを抽出する。オブジェクト探索部140cは、対象物の画像データを対象物画像管理テーブル110dに記憶する。
ここで、オブジェクト探索部140cが対象物の画像データを抽出する処理の一例について説明する。オブジェクト探索部140cは、テンプレートデータ110cの形状データの向きや大きさを所定の割合で変化させながら、画像管理テーブル110aの各画像データとパターンマッチングを行う。そして、オブジェクト探索部140cは、形状データと一致する画像データを、対象物の画像データとして抽出する。
オブジェクト探索部140cは、対象物の画像データを抽出した場合には、対象物の画像データを対象物画像管理テーブル110dに登録する。なお、オブジェクト探索部140cは、対の車載カメラが撮影した対象物の画像データを対応づけて、対象物画像管理テーブル110dに登録する。
ここでは一例として、車載カメラCF、CRの組、車載カメラCR、CBの組、車載カメラCB、CLの組、車載カメラCL、CRの組を対の車載カメラとする。また、車載カメラCF、CRがそれぞれ撮影した画像データの組をAFRデータとし、車載カメラCR、CBがそれぞれ撮影した画像データの組をARBデータとする。また、車載カメラCB、CLがそれぞれ撮影した画像データの組をABLデータとし、車載カメラCL、CFがそれぞれ撮影した画像データの組をALFデータとする。
図8、図9を用いて、オブジェクト探索部140cが各種画像データを対象物画像管理テーブル110dに登録する処理を説明する。図8は、各種画像データを抽出するタイミングを示す図である。図8の横軸は時間軸である。図8に示すように、オブジェクト探索部140cは、時間t1において、ARFデータ1を抽出し、時間t2において、ALFデータ1を抽出する。また、オブジェクト探索部140cは、時間t3において、AFRデータ2を抽出し、時間t4において、ARBデータ1、ABLデータ1を抽出する。
図9は、対象物画像管理テーブルのデータ構造の一例を示す図である。図9に示すように、対象物画像管理テーブル110dは、時間と、ALFデータ、AFRデータ、ARBデータ、ABLデータとを対応づけて記憶する。時間は、各種データを取得した時間を示す。
オブジェクト探索部140cは、時間t1にAFRデータ1を抽出するので、時間t1のAFRデータに対応するデータ領域にAFRデータ1を登録する。オブジェクト探索部140cは、時間t2にALFデータ1を抽出するので、時間t2のALFデータに対応するデータ領域にALFデータ1を登録する。また、オブジェクト探索部140cは、AFRデータ1を、時間t2のAFRデータに対応するデータ領域に繰り越す。
オブジェクト探索部140cは、時間t3にAFRデータ2を抽出するので、時間t3のAFRデータに対応するデータ領域にAFRデータ2を登録する。また、オブジェクト探索部140cは、ALFデータ1を、時間t3のALFデータに対応するデータ領域に繰り越す。
オブジェクト探索部140cは、時間t4にARBデータ1、ABLデータ1を抽出する。このため、オブジェクト探索部140cは、時間t4のARBデータに対応するデータ領域にARBデータ1を登録する。また、オブジェクト探索部140cは、時間t4のABLデータに対応するデータ領域にABLデータ1を登録する。また、オブジェクト探索部140cは、ALFデータ1を、時間t4のALFデータに対応するデータ領域に繰り越す。オブジェクト探索部140cは、AFRデータ2を、時間t4のAFRデータに対応するデータ領域に繰り越す。上記のような処理をオブジェクト探索部140cが実行することで、オブジェクト探索部140cは、対象物の画像データを対象物画像管理テーブル110dに記憶する。
なお、オブジェクト探索部140cは、車両50の位置に応じて、対象物の画像データを対象物画像管理テーブル110dに登録する処理を制限してもよい。オブジェクト探索部140cは、位置データ取得部140aから取得する位置データと、キャリブレーションポイント110bとを比較する。そして、オブジェクト探索部140cは、車両50の位置が、キャリブレーションポイント110bの座標情報に含まれている場合には、対象物の画像データを対象物画像管理テーブル110dに登録する処理を継続する。このように車両50の位置が、キャリブレーションポイント110bの座標情報に含まれている場合には、周辺に対象物が存在する可能性が高いため、効率よく対象物の画像データを収集できる。
これに対して、オブジェクト探索部140cは、車両50の位置が、キャリブレーションポイント110bの座標情報に含まれてない場合には、対象物の画像データを対象物画像管理テーブル110dに登録する処理を中断する。このように車両50の位置が、キャリブレーションポイント110bの座標情報に含まれてない場合には、周辺に対象物が存在する可能性が低いため、オブジェクト探索部140cにかかる負荷を軽減させることができる。
また、オブジェクト探索部140cは、ALFデータ、AFRデータ、ARBデータ、ABLデータをはじめて取得した場合には、対象物が存在するしないにかかわらず、対象物画像管理テーブル110dに登録してもよい。また、図9に示した例では、オブジェクト探索部140cは、AFRデータ1を取得した後に、AFRデータ2を取得した場合に、AFRデータ1をAFRデータ2で上書きしているがこれに限定されるものではない。オブジェクト探索部140cは、最適なデータを選択して、データを対象物画像管理テーブル110dに登録してもよい。例えば、オブジェクト探索部140cは、各データのうち、対象物の特徴点を多く含んでいる方の画像を最適なデータと判定する。
図7の説明に戻る。有効画像判定部140dは、対象物画像管理テーブル110dを参照し、ALFデータ、AFRデータ、ARBデータ、ABLデータが揃ったか否かを判定する。有効画像判定部140dは、ALFデータ、AFRデータ、ARBデータ、ABLデータが揃ったと判定した場合には、最初に登録されたデータの登録時間から、最後に登録されたデータの登録時間までの時間がTC時間以内であるか否かを判定する。
有効画像判定部140dは、最初に登録されたデータの登録時間から、最後に登録されたデータの登録時間までの時間がTC時間以内の場合には、ALFデータ、AFRデータ、ARBデータ、ABLデータを、カメラパラメータ調整部140eに出力する。
図9に示す例では、時間t4にALFデータ、AFRデータ、ARBデータ、ABLデータが揃っている。このデータのうち、最初に登録されたデータはALFデータ1であり、登録時間はt2である。また、最後に登録されたデータはARBデータ1、ABLデータ1であり、登録時間はt4である。時間t2から時間t4までの時間がTC以内であるとする。この場合には、有効画像判定部140dは、ALFデータ1、AFRデータ2、ARBデータ1、ABLデータ1をカメラパラメータ調整部140eに出力する。
カメラパラメータ調整部140eは、異なる重複領域の対象物の画像を基にして、カメラパラメータ110eを調整する処理部である。この異なる重複領域の対象物の画像は、上記のALFデータ、AFRデータ、ARBデータ、ABLデータに対応する。また、カメラパラメータ調整部140eは、カメラパラメータ110eの調整を行う旨の判定結果を誤差補正判定部140bから通知されている場合に、カメラパラメータ110eの調整を行うものとする。
以下において、カメラパラメータ調整部140eの処理を具体的に説明する。まず、カメラパラメータ調整部140eは、対象物の特徴点の座標を算出する。そして、カメラパラメータ調整部140eは、各特徴点の座標の誤差を算出し、誤差が最大となる車載カメラを判定する。誤差が大きいほど、該当する車載カメラのカメラパラメータがずれていることを意味する。
ここでは一例として、ALFデータを用いて説明する。このALFデータは上記のように、車載カメラCLが撮影した対象物の画像データと、車載カメラCFが撮影した対象物の画像データとを含んでおり、実空間上で各対象物は同一である。
図10は、カメラパラメータ調整部の処理を説明するための図である。図10の対象物DLは、車載カメラCLが撮影した対象物に対応し、対象物DFは、車載カメラCFが撮影した対象物に対応する。
カメラパラメータ調整部140eは、車載カメラCLが撮影した対象物DLの特徴点DL1〜DL4を、所定の位置を基準としたグローバル座標系の座標に変換する。また、カメラパラメータ調整部140eは、車載カメラCFが撮影した対象物DFの特徴点DF1〜DF4を、グローバル座標系の座標に変換する。例えば、カメラパラメータ調整部140eは、画像上の座標とグローバル座標系の座標とを対応付けた座標変換テーブルを用いて、特徴点の座標を求める。
カメラパラメータ調整部140eは、グローバル座標のDL1とDF1との誤差d1、DL2とDF2との誤差d2、DL3とDF3との誤差d3、DL4とDF4との誤差d4を算出し、d1、d2、d3、d4を平均化することで平均誤差を算出する。具体的に、平均誤差は
平均誤差=(d1+d2+d3+d4)/4
となる。
カメラパラメータ調整部140eは、上記処理と同様の処理をAFRデータ、ARBデータ、ABLデータに対して実行し、各データから平均誤差を算出する。以下では、ALFデータから求めた平均誤差をD1、AFRデータから求めた平均誤差をD2、ARBデータから求めた平均誤差をD3、ABLデータから求めた平均誤差をD4とする。
カメラパラメータ調整部140eは、各平均誤差の所定の組み合わせの和となるDC1〜DC4を算出し、算出結果に基づいて調整対象の車載カメラを判定する。具体的に、カメラパラメータ調整部140eは、DC1〜DC4を
DC1=D1+D2
DC2=D2+D3
DC3=D3+D4
DC4=D4+D1
により算出する。
カメラパラメータ調整部140eは、DC1〜DC4のうち最大のものを判定し、判定結果に基づいて調整対象の車載カメラを特定する。カメラパラメータ調整部140eは、DC1が最大となる場合には、車載カメラCFを調整対象の車載カメラとする。カメラパラメータ調整部140eは、DC2が最大となる場合には、車載カメラCRを調整対象の車載カメラとする。カメラパラメータ調整部140eは、DC3が最大となる場合には、車載カメラCBを調整対象の車載カメラとする。カメラパラメータ調整部140eは、DC4が最大となる場合には、車載カメラCLを調整対象の車載カメラとする。
続いて、カメラパラメータ調整部140eは、ALFデータ、AFRデータ、ARBデータ、ABLデータそれぞれについて、実際の特徴点間の寸法と、画像上から求めた対象物の特徴点間の寸法とのずれを示す評価関数fを作成する。この評価関数fの値は、カメラパラメータ110eの値に依存する。また、実際の特徴点間の寸法は、テンプレートデータ110cに登録されている。
カメラパラメータ調整部140eは、調整対象となるカメラパラメータの値を所定の割合で変化させていき、各評価関数fの総和が最小となるカメラパラメータの値を算出する。カメラパラメータ調整部140eは、算出したカメラパラメータの値により、カメラパラメータ110eを更新する。なお、カメラパラメータ調整部140eは、例えば、特開2009−294109に記載された技術を利用して、カメラパラメータの値を算出してもよい。
次に、本実施例2にかかるキャリブレーション装置100の処理手順について説明する。図11は、本実施例2にかかるキャリブレーション装置の処理手順を示すフローチャートである。図11に示す処理は、例えば、車載カメラCF、CR、CB、CLから画像データを取得したことを契機にして実行される。
図11に示すように、キャリブレーション装置100は、オーバーラップ上の画像データを取得し(ステップS101)、該当オーバーラップ部分において、初の画像データか否かを判定する(ステップS102)。キャリブレーション装置100は、該当オーバーラップ部分において、初の画像データではない場合には(ステップS102,No)、最適な画像データを判定し、最適な画像データを対象物画像管理テーブル110dに保存する(ステップS103)。キャリブレーション装置100は、最適な画像データを対象物画像管理テーブル110dに保存した後に、ステップS105に移行する。
キャリブレーション装置100は、該当オーバーラップ部分において、初の画像データの場合には(ステップS102,Yes)、画像データを対象物画像管理テーブル110dに保存する(ステップS104)。
キャリブレーション装置100は、TC時間以内に画像データが全てそろっていない場合には(ステップS105,No)、再度ステップS101に移行する。一方、キャリブレーション装置100は、TC時間以内に画像データが全てそろった場合には(ステップS105,Yes)、カメラパラメータを調整するか否かを判定する(ステップS106)。
キャリブレーション装置100は、カメラパラメータを調整する場合には(ステップS106,Yes)、カメラパラメータ調整処理を実行する(ステップS107)。一方、キャリブレーション装置100は、カメラパラメータを調整しない場合には(ステップS106,No)、処理を終了する。
次に、図11のステップS107に示したカメラパラメータ調整処理の処理手順について説明する。図12は、カメラパラメータ調整処理の処理手順を示すフローチャートである。キャリブレーション実行部140は、D1〜D4を算出する(ステップS201)。
キャリブレーション実行部140は、誤差が閾値未満の場合には(ステップS202,Yes)、カメラパラメータ調整処理を終了する。キャリブレーション実行部140は、誤差が閾値以上の場合には(ステップS202,No)、カメラ候補判定処理を実行する(ステップS203)。
キャリブレーション実行部140は、調整候補の車載カメラと、前回調整したカメラとが同じ場合には(ステップS204,Yes)、カメラパラメータ調整処理を終了する。一方、キャリブレーション実行部140は、調整候補の車載カメラと、前回調整したカメラとが異なる場合には(ステップS204,No)、調整候補の車載カメラのカメラパラメータを算出する(ステップS205)。
キャリブレーション実行部140は、カメラパラメータ110eを調整する(ステップS206)。キャリブレーション実行部140は、調整前のカメラパラメータと調整後のカメラパラメータとの差分の絶対値が閾値未満の場合には(ステップS207,Yes)、カメラパラメータ調整処理を終了する。一方、キャリブレーション実行部140は、調整前のカメラパラメータと調整後のカメラパラメータとの差分の絶対値が閾値以上の場合には(ステップS207,No)、再度ステップS201に移行する。
次に、図12のステップS203に示した調整候補判定処理の処理手順について説明する。図13は、調整候補判定処理の処理手順を示すフローチャートである。キャリブレーション実行部140は、Nに車載カメラの台数を代入し(ステップS301)、誤差の最大値Dmaxを初期値に設定する(ステップS302)。
キャリブレーション実行部140は、iに1を代入し(ステップS303)、iの値がNの値より大きい場合には(ステップS304,Yes)、処理を終了する。一方、キャリブレーション実行部140は、iの値がNの値以下の場合には(ステップS304,No)、DmaxがDCi未満であるか否かを判定する(ステップS305)。
キャリブレーション実行部140は、Dmaxの値がDCiの値以上の場合には(ステップS305,No)、ステップS308に移行する。一方、キャリブレーション実行部140は、Dmaxの値がDCiの値未満の場合には(ステップS305,Yes)、DmaxにDCiの値を代入する(ステップS306)。
キャリブレーション実行部140は、DCiに対応する車載カメラを調整カメラ候補に設定する(ステップS307)。キャリブレーション実行部140は、iの値に1を加算した値をiに代入し(ステップS308)、再度ステップS304に移行する。
次に、キャリブレーション実行部140が画像データを対象物画像管理テーブル110dに登録する処理手順について説明する。図14は、画像データを対象物画像管理テーブルに登録する処理手順を示すフローチャートである。例えば、図14に示す処理は、キャリブレーション実行部140が車両の位置データを取得したことを契機にして実行される。
図14に示すように、キャリブレーション実行部140は、位置データを取得し(ステップS401)、車両の位置がキャリブレーションポイントの付近であるか否かを判定する(ステップS402)。
キャリブレーション実行部140は、車両の位置がキャリブレーションポイントの付近ではない場合には(ステップS402,No)、処理を終了する。一方、キャリブレーション実行部140は、車両の位置がキャリブレーションポイントの付近の場合には(ステップS402,Yes)、対の車載カメラによって撮影されたオーバーラップ部の画像データをそれぞれ取得する(ステップS403)。
キャリブレーション実行部140は、画像データがテンプレートの形状データと一致しない場合には(ステップS404,No)、処理を終了する。一方、キャリブレーション実行部140は、画像データがテンプレートの形状データと一致する場合には(ステップS404,Yes)、画像データを対象物画像管理テーブルに保存する(ステップS405)。
上述してきたように、キャリブレーション装置100は、車載カメラCF、CR、CB、CLが撮影した重複領域ALF、AFR、ARB、ABLの画像に対象物が含まれている場合に、重複領域の画像を対象物画像管理テーブル110dに登録しておく。また、キャリブレーション装置100は、対象物画像管理テーブル110dに、ALFデータ、AFRデータ、ALBデータ、ABLデータが揃った場合に、対象物の特徴点の誤差とテンプレートデータ110cとを基にして、カメラパラメータ110eを調整する。カメラパラメータ110eの調整で必要となる対象物画像管理テーブル110dのALFデータ、AFRデータ、ABLデータは、車両走行中に順次記憶することができる。このため、キャリブレーション装置100によれば、車両の走行中にカメラのパラメータを修正することができるという効果を奏する。
また、上記キャリブレーション装置100は、ALFデータ、AFRデータ、ARBデータ、ABLデータが、所定の時間幅TC内に撮影された場合に、かかるALFデータ、AFRデータ、ARBデータ、ABLデータを利用してカメラパラメータを調整する。このため、車載カメラの長期的な経年変化の影響を除外して、カメラパラメータを精度よく調整することができる。
なお、時間幅TCを長く設定すると、人の乗り降りが発生し、車載カメラの状態を一定に保つことができなくなる。このため、キャリブレーション装置100は、時間幅TCを短く設定することで、例えば、利用者が車両に乗り降りすることによる影響を除外して、カメラパラメータを精度よく調整することができる。
また、上記キャリブレーション装置100は、評価関数を利用して、対象物の特徴点の誤差が最小となるようにカメラパラメータを調整する。このため、簡易な方法により、カメラパラメータを再調整することが可能となる。
なお、本実施例2では、移動体の一例として、車両を用いて実施例の説明を行ったがこれに限定されるものではない。例えば、路面電車、自動二輪車等の車両を含む移動体にも同様にして本願発明を適用することができる。
ところで、図3に示したキャリブレーション装置100の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、キャリブレーション装置100の分散、統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
例えば、キャリブレーション装置100に通信機能を持たせ、キャリブレーション実行部140の機能をネットワーク上のサーバ装置に持たせ、テンプレートデータ110c、対象物画像管理テーブル110dをサーバ装置に記憶させる。そして、キャリブレーション装置100は、各画像データをサーバ装置に送信し、カメラパラメータ110eの修正依頼を行ってもよい。
キャリブレーション装置100は、既知のパーソナルコンピュータ、ワークステーション、携帯電話、PHS端末、移動体通信端末またはPDAなどの情報処理装置に、キャリブレーション装置100の各機能を搭載することによって実現することもできる。
図15は、実施例にかかるキャリブレーション装置を構成するコンピュータのハードウェア構成を示す図である。図15に示すように、このコンピュータ200は、各種演算処理を実行するCPU(Central Processing Unit)201と、ユーザからのデータの入力を受け付ける入力装置202と、モニタ203を有する。また、コンピュータ200は、記憶媒体からプログラム等を読取る媒体読み取り装置204と、ネットワークを介して他のコンピュータとの間でデータの授受を行うネットワークインターフェース装置205を有する。また、コンピュータ200は、画像を撮影する複数のカメラ206と、各種情報を一時記憶するRAM(Random Access Memory)207と、ハードディスク装置208を有する。各装置201〜208は、バス209に接続される。
そして、ハードディスク装置208には、図3に示した画像補正部130、キャリブレーション実行部140に対応するキャリブレーションプログラム208aを記憶する。また、ハードディスク装置208は、図3に示した画像合成部150に対応する画像合成プログラム208bを記憶する。また、ハードディスク装置208は、各種データ208cを記憶する。この各種データ208cは、図3の各種データ110a〜110eに対応する。
CPU201がキャリブレーションプログラム208aをハードディスク装置208から読み出してRAM207に展開することにより、キャリブレーションプログラム208aは、キャリブレーションプロセス207aとして機能するようになる。CPU201が画像合成プログラム208bをハードディスク装置208から読み出してRAM207に展開することにより、画像合成プログラム208bは、画像合成プロセス207bとして機能するようになる。また、CPU201は、各種データ208cを読み出して、RAM207に格納する。
キャリブレーションプロセス207aは、重複領域の画像データを利用して、各種データ207cに含まれるカメラパラメータを調整する。画像合成プロセス207bは、各種データ207cに含まれるカメラパラメータを基にして、各画像データを合成し、モニタに合成画像を表示させる。
なお、上記のキャリブレーションプログラム208a、画像合成プログラム208bは、必ずしもハードディスク装置208に格納されている必要はない。例えば、CD−ROM等の記憶媒体に記憶されたキャリブレーションプログラム208a、画像合成プログラム208bを、コンピュータ200が読み出して実行するようにしてもよい。また、公衆回線、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)等にこのキャリブレーションプログラム208a、画像合成プログラム208bを記憶させておいてもよい。この場合、コンピュータ200がこれらからキャリブレーションプログラム208a、画像合成プログラム208bを読み出して実行するようにしてもよい。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)対になるカメラの撮影範囲が重複する領域を示す重複領域の画像を、異なる重複領域毎に取得する画像取得部と、
所定の形状の対象物の画像と前記重複領域の画像とを比較して、前記重複領域の画像に含まれる前記対象物の画像を抽出し、抽出した対象物の画像を該画像を撮影したカメラと対応づけて記憶部に保存する対象物抽出部と、
前記異なる重複領域毎に、前記対になるカメラがそれぞれ撮影した対象物の画像が前記記憶部に記憶された場合に、各対象物の特徴点の位置と所定の寸法とに基づいて、各特徴点の位置の誤差を算出する誤差算出部と、
を備えたことを特徴とする画像処理装置。
(付記2)前記カメラの位置または角度を含むパラメータに基づいて、各カメラが撮影した画像を合成する画像合成部と、前記誤差算出部が算出した誤差に基づいて前記パラメータを調整するパラメータ調整部とを更に備えたことを特徴とする付記1に記載の画像処理装置。
(付記3)前記対象物抽出部は、前記対象物の画像を前記記憶部に保存する場合に、前記対象物の画像が撮影された時間を対応づけて記憶し、前記誤差算出部は、前記記憶部に記憶された異なる重複領域毎の対象物の画像の撮影時間の差が所定時間内の場合に、各特徴点の位置の誤差を算出すること特徴とする付記1または2に記載の画像処理装置。
(付記4)前記パラメータ調整部は、対のカメラに対応する対象物の特徴点の誤差の総和が最小となるように前記パラメータを調整することを特徴とする付記2または3に記載の画像処理装置。
(付記5)コンピュータに、
対になるカメラの撮影範囲が重複する領域を示す重複領域の画像を、異なる重複領域毎に取得する画像取得手順と、
所定の形状の対象物の画像と前記重複領域の画像とを比較して、前記重複領域の画像に含まれる前記対象物の画像を抽出し、抽出した対象物の画像を該画像を撮影したカメラと対応づけて記憶部に保存する対象物抽出手順と、
前記異なる重複領域毎に、前記対になるカメラがそれぞれ撮影した対象物の画像が前記記憶部に記憶された場合に、各対象物の特徴点の位置と所定の寸法とに基づいて、各特徴点の位置の誤差を算出する誤差算出手順と、
を実行させることを特徴とする画像処理プログラム。
(付記6)前記カメラの位置または角度を含むパラメータに基づいて、各カメラが撮影した画像を合成する画像合成手順と、前記誤差算出手順が算出した誤差に基づいて前記パラメータを調整するパラメータ調整手順とを更にコンピュータに実行させることを特徴とする付記5に記載の画像処理プログラム。
(付記7)前記対象物抽出手順は、前記対象物の画像を前記記憶部に保存する場合に、前記対象物の画像が撮影された時間を対応づけて記憶し、前記誤差算出手順は、前記記憶部に記憶された異なる重複領域毎の対象物の撮影時間の差が所定時間内の場合に、各特徴点の位置の誤差を算出すること特徴とする付記5または6に記載の画像処理プログラム。
(付記8)前記パラメータ調整手順は、対のカメラに対応する対象物の特徴点の誤差の総和が最小となるように前記パラメータを調整することを特徴とする付記6または7に記載の画像処理プログラム。
10 画像処理装置
11 画像取得部
12 対象物抽出部
13 記憶部
14 誤差算出部

Claims (5)

  1. 対になるカメラの撮影範囲が重複する領域を示す重複領域の画像を、異なる重複領域毎に取得する画像取得部と、
    所定の形状の対象物の画像と前記重複領域の画像とを比較して、前記重複領域の画像に含まれる前記対象物の画像を抽出し、抽出した対象物の画像を該画像を撮影したカメラと対応づけて記憶部に保存する対象物抽出部と、
    前記異なる重複領域毎に、前記対になるカメラがそれぞれ撮影した対象物の画像が前記記憶部に記憶された場合に、各対象物の特徴点の位置と所定の寸法とに基づいて、各特徴点の位置の誤差を算出する誤差算出部と、
    を備えたことを特徴とする画像処理装置。
  2. 前記カメラの位置または角度を含むパラメータに基づいて、各カメラが撮影した画像を合成する画像合成部と、前記誤差算出部が算出した誤差に基づいて前記パラメータを調整するパラメータ調整部とを更に備えたことを特徴とする請求項1に記載の画像処理装置。
  3. 前記対象物抽出部は、前記対象物の画像を前記記憶部に保存する場合に、前記対象物の画像が撮影された時間を対応づけて記憶し、前記誤差算出部は、前記記憶部に記憶された異なる重複領域毎の対象物の画像の撮影時間の差が所定時間内の場合に、各特徴点の位置の誤差を算出すること特徴とする請求項1または2に記載の画像処理装置。
  4. 前記パラメータ調整部は、対のカメラに対応する対象物の特徴点の誤差の総和が最小となるように前記パラメータを調整することを特徴とする請求項2に記載の画像処理装置。
  5. コンピュータに、
    対になるカメラの撮影範囲が重複する領域を示す重複領域の画像を、異なる重複領域毎に取得する画像取得手順と、
    所定の形状の対象物の画像と前記重複領域の画像とを比較して、前記重複領域の画像に含まれる前記対象物の画像を抽出し、抽出した対象物の画像を該画像を撮影したカメラと対応づけて記憶部に保存する対象物抽出手順と、
    前記異なる重複領域毎に、前記対になるカメラがそれぞれ撮影した対象物の画像が前記記憶部に記憶された場合に、各対象物の特徴点の位置と所定の寸法とに基づいて、各特徴点の位置の誤差を算出する誤差算出手順と、
    を実行させることを特徴とする画像処理プログラム。
JP2010111389A 2010-05-13 2010-05-13 画像処理装置および画像処理プログラム Expired - Fee Related JP5552892B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010111389A JP5552892B2 (ja) 2010-05-13 2010-05-13 画像処理装置および画像処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010111389A JP5552892B2 (ja) 2010-05-13 2010-05-13 画像処理装置および画像処理プログラム

Publications (2)

Publication Number Publication Date
JP2011239349A JP2011239349A (ja) 2011-11-24
JP5552892B2 true JP5552892B2 (ja) 2014-07-16

Family

ID=45326797

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010111389A Expired - Fee Related JP5552892B2 (ja) 2010-05-13 2010-05-13 画像処理装置および画像処理プログラム

Country Status (1)

Country Link
JP (1) JP5552892B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5971939B2 (ja) * 2011-12-21 2016-08-17 アルパイン株式会社 画像表示装置、画像表示装置における撮像カメラのキャリブレーション方法およびキャリブレーションプログラム
JP6154905B2 (ja) * 2013-08-30 2017-06-28 クラリオン株式会社 カメラ校正装置、カメラ校正システム、及びカメラ校正方法
JP6260174B2 (ja) * 2013-09-27 2018-01-17 日産自動車株式会社 監視画像提示システム
JP6367584B2 (ja) * 2014-03-24 2018-08-01 クラリオン株式会社 カメラキャリブレーション装置
JP6326624B2 (ja) * 2014-04-02 2018-05-23 パナソニックIpマネジメント株式会社 キャリブレーション装置、キャリブレーション方法、キャリブレーション機能を備えたカメラ及びプログラム
JP2016001378A (ja) * 2014-06-11 2016-01-07 株式会社デンソー 車載カメラの校正装置
TWI514065B (zh) * 2014-11-07 2015-12-21 Papago Inc 360 degree road traffic recorder
WO2017126072A1 (ja) * 2016-01-21 2017-07-27 株式会社日立製作所 画像認識システム、カメラ状態推定装置及び記憶媒体
JP6614042B2 (ja) * 2016-06-15 2019-12-04 株式会社Jvcケンウッド 姿勢変化判定装置、俯瞰映像生成装置、俯瞰映像生成システム、姿勢変化判定方法およびプログラム
JP6798926B2 (ja) * 2017-04-13 2020-12-09 クラリオン株式会社 車載カメラのキャリブレーション装置
WO2021033632A1 (ja) * 2019-08-20 2021-02-25 日立オートモティブシステムズ株式会社 車両制御方法及び車両制御装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000007373A1 (fr) * 1998-07-31 2000-02-10 Matsushita Electric Industrial Co., Ltd. Procede et appareil d'affichage d'images
JP4681856B2 (ja) * 2004-11-24 2011-05-11 アイシン精機株式会社 カメラの校正方法及びカメラの校正装置
JP4820221B2 (ja) * 2006-06-29 2011-11-24 日立オートモティブシステムズ株式会社 車載カメラのキャリブレーション装置およびプログラム
JP4803449B2 (ja) * 2006-11-17 2011-10-26 アイシン精機株式会社 車載カメラの校正装置、校正方法、並びにこの校正方法を用いた車両の生産方法
JP2008187566A (ja) * 2007-01-31 2008-08-14 Sanyo Electric Co Ltd カメラ校正装置及び方法並びに車両
JP4555876B2 (ja) * 2008-05-30 2010-10-06 株式会社日本自動車部品総合研究所 車載カメラのキャリブレーション方法
JP2009294109A (ja) * 2008-06-05 2009-12-17 Fujitsu Ltd キャリブレーション装置

Also Published As

Publication number Publication date
JP2011239349A (ja) 2011-11-24

Similar Documents

Publication Publication Date Title
JP5552892B2 (ja) 画像処理装置および画像処理プログラム
JP5279875B2 (ja) オブジェクト表示装置、オブジェクト表示方法及びオブジェクト表示プログラム
US9270891B2 (en) Estimation of panoramic camera orientation relative to a vehicle coordinate frame
JP5375958B2 (ja) 画像処理装置および画像処理方法
JPWO2017022033A1 (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP6701930B2 (ja) オーサリング装置、オーサリング方法およびオーサリングプログラム
CN105551020B (zh) 一种检测目标物尺寸的方法及装置
CN110431835B (zh) 图像合成装置、图像合成方法及记录介质
JP6759175B2 (ja) 情報処理装置および情報処理システム
JP4521235B2 (ja) 撮影画像の変化抽出装置及び方法
CN112184827B (zh) 校准多个摄像机的方法及装置
JP6278791B2 (ja) 車両位置検出装置、車両位置検出方法及び車両位置検出用コンピュータプログラムならびに車両位置検出システム
KR20180022539A (ko) 중첩영역의 제어점들을 이용한 시차 최소화 스티칭 장치 및 방법
JP2020500319A (ja) 機械学習とイメージプロセッシングを利用した地図製作装置
JP2009230233A (ja) 縞模様検知システム、縞模様検知方法および縞模様検知用プログラム
JP6165422B2 (ja) 情報処理システム、情報処理装置、サーバ、端末装置、情報処理方法、及びプログラム
JP2009140402A (ja) 情報表示装置、情報表示方法、情報表示プログラム及び情報表示プログラムを記録した記録媒体
JP2010258897A (ja) 判定プログラムおよびキャリブレーション装置
JP2019100924A (ja) 車両軌跡補正装置
JP2014106739A (ja) 車載画像処理装置
CN110832851B (zh) 图像处理装置、图像变换方法
JP2009260475A (ja) 情報処理装置及び情報処理方法及びプログラム
KR20200057513A (ko) 차량 위치 추정 장치 및 방법
JP2014138332A (ja) 画像処理装置及びプログラム
JP7145440B2 (ja) 学習データ生成方法、学習データ生成装置、及び、プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130403

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140212

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140407

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: 20140430

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140513

R150 Certificate of patent or registration of utility model

Ref document number: 5552892

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees