(57)【特許請求の範囲】
【請求項１】
複数のカメラから被写体を含む複数の画像データが入力され、ＬＵＴデータを参照して座標変換したデータを出力する第１制御部と、
前記被写体について、前記複数の画像データの光学中心との判定距離をそれぞれ求め、前記判定距離に基づいて前記複数の画像データの内の１つを選択画像データとして選択し、前記選択画像データにおける前記被写体の画素に対応する座標を求めて前記ＬＵＴデータを書き換える第２制御部と、を有し、
前記第２制御部は、前記判定距離が増すにつれて前記画像データの画質が低下し、その後さらに前記判定距離が増したときに前記画像データの画質が向上する領域が存在する場合、前記画質が向上する領域に対応する判定距離に対して『１』よりも小さい定数を乗算する、
ことを特徴とする描画装置。
【請求項２】
前記第２制御部は、前記複数のカメラのそれぞれの位置および角度データ、および、予め準備した前記複数のカメラのカメラ特性を参照して、前記選択画像データを選択する、
ことを特徴とする請求項１に記載の描画装置。
【請求項３】
前記第２制御部は、前記複数のカメラのそれぞれの位置および角度データ、および、前記複数の画像データから求めた前記複数のカメラのカメラ特性を参照して、前記選択画像データを選択する、
ことを特徴とする請求項１に記載の描画装置。
【請求項４】
前記第２制御部は、前記複数の画像データの内、前記判定距離が最短になる画像データを前記選択画像データとして選択する、
ことを特徴とする請求項１乃至請求項３のいずれか１項に記載の描画装置。
【請求項５】
さらに、
前記複数の画像データを、それぞれフレーム画像として格納するメモリを有し、
前記複数の画像データの光学中心は、それぞれの前記フレーム画像における画像中心の位置に対応し、
前記被写体について、前記判定距離は、それぞれの前記フレーム画像において、前記画像中心の位置から前記被写体までの距離である、
ことを特徴とする請求項１乃至請求項４のいずれか１項に記載の描画装置。
【請求項６】
前記フレーム画像において、前記画像中心の位置を原点(０，０)とし、前記被写体の注目位置の座標を(ｘ，ｙ)とし、前記判定距離をｄとすると、
前記判定距離は、ｄ＝(ｘ2＋ｙ2)1/2として求められる、
ことを特徴とする請求項５に記載の描画装置。
【請求項７】
複数のカメラから被写体を含む複数の画像データを受け取り、ＬＵＴデータを参照して座標変換したデータを出力する描画方法であって、
前記被写体について、前記複数の画像データの光学中心との判定距離をそれぞれ求め、
前記判定距離に基づいて前記複数の画像データの内の１つを選択画像データとして選択し、
前記選択画像データにおける前記被写体の画素に対応する座標を求めて前記ＬＵＴデータを書き換え、
前記判定距離が増すにつれて前記画像データの画質が低下し、その後さらに前記判定距離が増したときに前記画像データの画質が向上する領域が存在する場合、前記画質が向上する領域に対応する判定距離に対して『１』よりも小さい定数を乗算する、
ことを特徴とする描画方法。
【請求項８】
前記選択画像データとして選択するのは、前記複数の画像データの内、前記判定距離が最短になる画像データを前記選択画像データとして選択する、
ことを特徴とする請求項７に記載の描画方法。
【請求項９】
前記複数の画像データは、それぞれフレーム画像としてメモリに格納され、
前記複数の画像データの光学中心は、それぞれの前記フレーム画像における画像中心の位置に対応し、
前記被写体について、前記判定距離は、それぞれの前記フレーム画像において、前記画像中心の位置から前記被写体までの距離である、
ことを特徴とする請求項７または請求項８に記載の描画方法。
【請求項１０】
複数のカメラから被写体を含む複数の画像データを受け取り、ＬＵＴデータを参照して座標変換したデータを出力する制御装置を有する描画装置の描画プログラムであって、
前記制御装置に、
前記被写体について、前記複数の画像データの光学中心との判定距離をそれぞれ求め、
前記判定距離に基づいて前記複数の画像データの内の１つを選択画像データとして選択し、
前記選択画像データにおける前記被写体の画素に対応する座標を求めて前記ＬＵＴデータを書き換え、
前記判定距離が増すにつれて前記画像データの画質が低下し、その後さらに前記判定距離が増したときに前記画像データの画質が向上する領域が存在する場合、前記画質が向上する領域に対応する判定距離に対して『１』よりも小さい定数を乗算する、処理を実行させる、
ことを特徴とする描画プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で言及する実施例は、描画装置、描画方法および描画プログラムに関する。
【背景技術】
【０００２】
近年、例えば、自動車に対して、画角がオーバーラップする複数のカメラを搭載し、その複数のカメラによる画像(映像)を合成処理し、運転者が自動車の周囲全体を確認しながら縦列駐車や車庫入れを行うようにした全周囲モニタが実用化されている。
【０００３】
すなわち、例えば、カメラなど複数の入力装置から取得した実像を、地面に見立てた三次元投影面に投影することにより、上から地面を見るような映像をシミュレートする描画装置が実用化されている。
【０００４】
このような描画装置(合成画像の生成装置)は、自動車に搭載される全周囲モニタ(マルチアングル全周囲モニタ)に限定されず、例えば、列車、船舶、航空機または建物に搭載され、或いは、監視カメラや家電製品または玩具等にも適用することができる。
【０００５】
なお、本明細書では、描画装置として、自動車の前後左右に４つのカメラを配置した全周囲モニタを例として説明するが、本実施例は、上述したように、様々な分野または対象に対して適用することができ、カメラの数も４つに限定されるものではない。
【０００６】
また、合成画像(描画像)に関しても、高い所から見下ろす画像(俯瞰画像)に限定されず、例えば、上空から斜めに見下ろす鳥瞰画像や下から上を仰ぎ見る仰瞰画像、或いは、様々な合成処理を行った画像であってもよいのはもちろんである。
【０００７】
ところで、従来、複数のカメラにより撮影された複数の画像データを処理して描画像を生成する描画技術としては、様々な提案がなされている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】国際公開第２０１１／０３６８９２号
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上述したように、例えば、複数のカメラにより撮影された複数の画像データを処理して描画像を得る描画技術としては、様々な提案がなされている。しかしながら、例えば、複数の画像データを処理して描画像(例えば、俯瞰画像)をシミュレートする場合、高画質なシミュレート結果を得るには、例えば、三次元(３Ｄ)の座標に基づいて所定のカメラによる画像データを選択するといった複雑な処理を行っている。
【００１０】
或いは、複数のカメラによる複数の画像データを、カメラの取り付け位置等に基づいて選択するため、各カメラ(レンズ)の特性を十分に発揮させた高画質なシミュレート結果(描画データ(描画像))を得ることが難しいという課題がある。
【課題を解決するための手段】
【００１１】
一実施形態によれば、複数のカメラから被写体を含む複数の画像データが入力され、ＬＵＴデータを参照して座標変換したデータを出力する第１制御部と、第２制御部と、を有する描画装置が提供される。
【００１２】
前記第２制御部は、前記被写体について、前記複数の画像データの光学中心との判定距離をそれぞれ求め、前記判定距離に基づいて前記複数の画像データの内の１つを選択画像データとして選択する。さらに、前記第２制御部は、前記選択画像データにおける前記被写体の画素に対応する座標を求めて前記ＬＵＴデータを書き換える。前記第２制御部は、前記判定距離が増すにつれて前記画像データの画質が低下し、その後さらに前記判定距離が増したときに前記画像データの画質が向上する領域が存在する場合、前記画質が向上する領域に対応する判定距離に対して『１』よりも小さい定数を乗算する。
【発明の効果】
【００１３】
開示の描画装置、描画方法および描画プログラムは、簡単な処理で高画質の描画データを得ることができるという効果を奏する。
【図面の簡単な説明】
【００１４】
【図１】図１は、元画像データに対してＬＵＴデータを適用して描画像を得る様子を説明するための図である。
【図２】図２は、自動車に搭載される描画装置の一例を説明するための図(その１)である。
【図３】図３は、自動車に搭載される描画装置の一例を説明するための図(その２)である。
【図４】図４は、図２および図３に示す描画装置における描画処理の一例を説明するための図である。
【図５】図５は、図２および図３に示す描画装置における描画処理の他の例を説明するための図である。
【図６】図６は、図５に示す描画処理におけるＬＵＴデータの生成処理の一例を説明するためのフローチャートである。
【図７】図７は、自動車に搭載される描画装置のカメラ配置の一例を示す図である。
【図８】図８は、図７に示す描画装置のカメラ配置における課題の一例を説明するための図である。
【図９】図９は、図７に示す描画装置のカメラ配置における課題の他の例を説明するための図である。
【図１０】図１０は、本実施例に係る描画装置を概略的に示すブロック図である。
【図１１】図１１は、カメラのレンズ特性の一例を説明するための図である。
【図１２】図１２は、自動車に搭載される描画装置の各カメラにより撮影される画像データを説明するための図である。
【図１３】図１３は、本実施例に係る描画装置におけるＬＵＴデータの書き換え処理の一例を説明するための図(その１)である。
【図１４】図１４は、本実施例に係る描画装置におけるＬＵＴデータの書き換え処理の一例を説明するための図(その２)である。
【図１５】図１５は、本実施例に係る描画装置におけるＬＵＴデータの生成処理の一例を説明するためのフローチャートである。
【図１６】図１６は、図１０に示す描画装置の一構成例を示すブロック図である。
【図１７】図１７は、本実施例に係る描画装置の効果を説明するための図である。
【図１８】図１８は、図１０に示す描画装置の変形例を概略的に示すブロック図である。
【発明を実施するための形態】
【００１５】
まず、本実施例の描画装置、描画方法および描画プログラムを詳述する前に、図１〜図９を参照して、描画技術の例、並びに、その課題を説明する。図１は、元画像データに対してＬＵＴ(Look Up Table)データを適用して描画像を得る様子を説明するための図である。
【００１６】
図１において、参照符号Ｂ１は、元画像データ(テクスチャ画像)を格納するバッファ(ＳＲＣバッファ)を示し、Ｂ２は、ＬＵＴデータ(テクスチャ座標)を格納するバッファ(ＷＡＲＰ)バッファを示す。また、参照符号Ｂ３は、描画結果(シミュレート結果)の描画像を格納するバッファ(描画バッファ)を示す。
【００１７】
図１に示されるように、例えば、二次元(２Ｄ)描画エンジンは、ＳＲＣバッファＢ１に格納された元画像データに対して、ＷＡＲＰバッファＢ２に格納されたＬＵＴデータを参照して座標変換し、その結果(描画結果)を描画バッファＢ３に格納する。
【００１８】
図２および図３は、自動車に搭載される描画装置の一例を説明するための図であり、自動車の前後左右に設けた４つのカメラにより撮影された画像データから、自動車の周囲全体の画像を生成する全周囲モニタを説明するためのものである。
【００１９】
図２において、参照符号１００は自動車(車両)を示し、ＣFは前カメラ、ＣBは後カメラ、ＣLは左カメラ、そして、ＣRは右カメラを示す。また、参照符号ＩFは前カメラＣFにより撮影された前画像、ＩBは後カメラＣBにより撮影された後画像、ＩLは左カメラＣLにより撮影された左画像、ＩRは右カメラＣRにより撮影された右画像、そして、Ｉoは合成された俯瞰画像(高い所から見下ろす画像)を示す。
【００２０】
図３において、参照符号ＶＰは視点を示し、ＣRoaは右カメラＣR(レンズ)の光軸を示し、ＰＰは投影面(Ｚ＝０)を示す。図２および図３に示されるように、描画装置(全周囲モニタ)は、例えば、画角が１８０°のカメラＣF，ＣB，ＣL，ＣRを自動車１００の前後左右に設け、各カメラからの画像(画像データ)ＩF，ＩB，ＩL，ＩRに基づいて俯瞰画像Ｉoを合成する。
【００２１】
具体的に、描画装置は、例えば、画像ＩF，ＩB，ＩL，ＩRを合成処理して、カメラＣF，ＣB，ＣL，ＣRの視野範囲におけるＺ＝０の投影面(地面)ＰＰに相当する三次元投影面の画像(俯瞰画像Ｉo)を生成(描画)する。
【００２２】
すなわち、図１を参照して説明したように、各カメラＣF，ＣB，ＣL，ＣRからの画像(実像)ＩF，ＩB，ＩL，ＩRをテクスチャ画像とし、バッファＢ２に格納された、各カメラの位置に応じて計算されたテクスチャ座標(ＬＵＴデータ)に基づいてマッピングする。
【００２３】
ここで、前述したように、テクスチャ座標に基づいてマッピングしたデータを計算および出力するには、２Ｄ描画エンジン(二次元グラフィックス計算装置)を使用する。この機能を、ＬＵＴ(Look Up Table)と呼び、テクスチャ座標を保持するバッファＢ２をＷＡＲＰバッファと呼ぶ。
【００２４】
なお、本明細書では、自動車の前後左右に４つのカメラを配置して俯瞰画像を生成する全周囲モニタを例として説明するが、カメラの数が４つに限定されるものではなく、また、生成される画像も俯瞰画像に限定されないのはいうまでもない。
【００２５】
さらに、描画装置としては、自動車に搭載される全周囲モニタに限定されず、例えば、ドライブモニタ、或いは、列車、船舶、航空機または建物に搭載されるモニタ、若しくは、監視カメラや家電製品または玩具等にも適用することができる。
【００２６】
図４は、図２および図３に示す描画装置における描画処理の一例を説明するための図である。図４に示されるように、ＳＲＣバッファＢ１に格納された前後左右のテクスチャ画像(キャプチャ入力)ＩF，ＩB，ＩL，ＩRは、ＷＡＲＰバッファＢ２に格納されたＬＵＴデータを参照してマッピング処理され、中間ファイルが生成される。
【００２７】
前後左右の中間ファイル(マッピング結果)は、マスク領域(図４におけるアルファマップの黒塗りつぶし領域)を規定するアルファブレンディング処理により、描画結果として描画バッファＢ３に格納される前後左右の領域が決められる。なお、アルファマップのマッピング領域(マスク領域)は、固定とされている。
【００２８】
すなわち、前後左右の中間ファイルにおける重複領域に関して、どの中間ファイルのデータを使用して描画像を生成するかが決められる。このようにして、描画バッファＢ３(レイヤ０)には、描画像(俯瞰画像)Ｉoが格納され、その俯瞰画像Ｉoが、レイヤ０から読み出され、例えば、ディスプレイに表示される。
【００２９】
ここで、図４に示されるように、例えば、２Ｄ描画エンジンは、テクスチャ画像ＩF，ＩB，ＩL，ＩRにＬＵＴデータを適用して中間ファイルを生成するのに、マッピング処理を４回行う。さらに、４つの中間ファイルに対してアルファブレンディング処理を行って描画像を生成するのに、マッピング処理を４回行う。すなわち、図４に示す描画処理は、２Ｄ描画エンジンによるマッピング処理を８回行うことになる。
【００３０】
図５は、図２および図３に示す描画装置における描画処理の他の例を説明するための図である。
【００３１】
図５に示されるように、ＳＲＣバッファＢ１に格納された前後左右のテクスチャ画像ＩF，ＩB，ＩL，ＩRは、ＷＡＲＰバッファＢ２に格納されたＬＵＴデータを参照してマッピング処理され、前後左右の描画像が描画バッファＢ３に格納される。
【００３２】
ここで、ＬＵＴデータは、マスク領域(図５におけるＬＵＴデータの黒塗りつぶし領域)を含み、テクスチャ画像ＩF，ＩB，ＩL，ＩRをＬＵＴデータに基づいてマッピング処理した描画像(部分描画像)は、描画バッファＢ３の異なる４つのレイヤ０〜３に格納される。なお、ＬＵＴデータのマッピング領域(マスク領域)は、固定とされている。
【００３３】
そして、例えば、ディスプレイに描画像(俯瞰画像)Ｉoを表示する場合、ディスプレイコントローラが、描画バッファＢ３のレイヤ０〜３に格納された４つの部分描画像を読み出して俯瞰画像Ｉoを合成し、ディスプレイに表示する。
【００３４】
ここで、図５に示されるように、例えば、２Ｄ描画エンジンは、テクスチャ画像ＩF，ＩB，ＩL，ＩRにＬＵＴデータを適用して部分描画像を生成するのに、マッピング処理を４回行うだけでよい。
【００３５】
しかしながら、生成された４つの部分描画像は、それぞれ描画バッファＢ３の異なるレイヤ０〜３に格納し、また、描画像をディスプレイに表示するには、ディスプレイコントローラによりレイヤ０〜３に格納された部分描画像を合成することになる。
【００３６】
このように、図４に示す描画処理は、２Ｄ描画エンジンによるマッピング処理を８回行うことになり、また、図５に示す描画処理は、描画バッファＢ３の４つのレイヤを使用することになる。さらに、図４および図５に示す描画処理は、両方ともマッピング領域が固定とされている。
【００３７】
図６は、図５に示す描画処理におけるＬＵＴデータの生成処理の一例を説明するためのフローチャートである。図６に示されるように、ＬＵＴデータの生成処理が開始すると、ステップＳＴ１０１において、任意の投影面の頂点座標を作成し、ステップＳＴ１０２に進む。
【００３８】
ここで、投影面の頂点座標とは、例えば、ポリゴン処理を行って自動車の前後左右に配置されたカメラによる撮影画像(ＩF，ＩB，ＩL，ＩR)から俯瞰画像を生成する場合等において、一般的に利用されているＸＹＺ(三次元)空間における頂点の座標である。
【００３９】
ステップＳＴ１０２では、ステップＳＴ１０１で作成された投影面の頂点座標およびカメラ位置等に応じたテクスチャ座標(ＬＵＴデータ)を作成し、ＬＵＴデータの生成処理を終了する。
【００４０】
ここで、ステップＳＴ１０２における、投影面の頂点座標およびカメラ位置等に基づいて作成したテクスチャ座標は、例えば、図５を参照して説明したように、マッピング領域が固定とされている。
【００４１】
図７は、自動車に搭載される描画装置のカメラ配置の一例を示す図である。ここで、自動車１００の前後左右に設けた前カメラＣF，後カメラＣB，左カメラＣLおよび右カメラＣRは、１８０°の画角を有しているものとする。
【００４２】
さらに、前カメラＣFは、前方中央に向けて取り付けられ、後カメラＣBは、後方中央に向けて取り付けられ、左カメラＣLは、左後方約４５°に向けて取り付けられ、そして、右カメラＣRは、右後方約１５°に向けて取り付けられている。なお、各カメラＣF，ＣB，ＣL，ＣRの取り付け角度は、単なる例であり、様々な場合があり得るのはいうまでもない。
【００４３】
図７の俯瞰画像Ｉoにおいて、参照符号ＲFLは、前カメラＣFで撮影された前画像ＩFと左カメラＣLで撮影された左画像ＩLが重なり合う領域を示し、ＲFRは、前画像ＩFと右カメラＣRで撮影された右画像ＩRが重なり合う領域を示す。なお、参照符号ＲFは、前画像ＩFにおいて、前カメラＣFだけが撮影可能な領域を示す。
【００４４】
また、俯瞰画像Ｉoにおいて、参照符号ＲBLは、後カメラＣBで撮影された後画像ＩBと左画像ＩLが重なり合う領域を示し、ＲBRは、後画像ＩBと右画像ＩRが重なり合う領域を示し、ＲBLRは、後画像ＩBと左画像ＩLと右画像ＩRが重なり合う領域を示す。なお、参照符号ＲLRは、左画像ＩLと右画像ＩRが重なり合う領域を示す。
【００４５】
さらに、俯瞰画像Ｉoにおいて、参照符号ＲLは、左画像ＩLにおいて、左カメラＣLだけが撮影可能な領域を示し、ＲRは、右画像ＩRにおいて、右カメラＣRだけが撮影可能な領域を示す。
【００４６】
従って、前カメラＣFによる前画像ＩFは、俯瞰画像Ｉoにおける領域ＲFL，ＲFおよびＲFRの描画が可能であり、後カメラＣBによる後画像ＩBは、俯瞰画像Ｉoにおける領域ＲBL，ＲBLRおよびＲBRの描画が可能である。
【００４７】
さらに、左カメラＣLによる左画像ＩLは、俯瞰画像Ｉoにおける領域ＲFL，ＲL，ＲBL，ＲBLRおよびＲLRの描画が可能であり、右カメラＣRによる右画像ＩRは、俯瞰画像Ｉoにおける領域ＲFR，ＲR，ＲLR，ＲBRおよびＲBLRの描画が可能である。
【００４８】
なお、図７では、自動車１００自体が障害になるため撮影が不可能な領域、例えば、ＲBLRおよびＲLRは考慮されておらず、実際には、これらの領域ＲBLRおよびＲLRは、それぞれＲBRおよびＲRに含まれることになる。
【００４９】
図８は、図７に示す描画装置のカメラ配置における課題の一例を説明するための図であり、固定のカメラマッピング処理による俯瞰画像Ｉoの描画(合成)を説明するためのものである。ここで、図８(a)は、固定のカメラマッピング領域の一例を示し、図８(b)は、そのときに描画された俯瞰画像Ｉoを示す。
【００５０】
図８(a)に示されるように、俯瞰画像Ｉoを描画するとき、自動車１００の前後左右に設けた前カメラＣF，後カメラＣB，左カメラＣLおよび右カメラＣRに対して、固定のカメラマッピング領域ＦF，ＦB，ＦLおよびＦRを適用すると、例えば、図８(b)のようになる。
【００５１】
すなわち、各カメラＣF，ＣB，ＣL，ＣRからの画像ＩF，ＩB，ＩL，ＩRは、固定のカメラマッピング領域ＦF，ＦB，ＦL，ＦRに基づいて選択され、俯瞰画像Ｉoの描画が行われる。
【００５２】
しかしながら、図７を参照して説明したように、例えば、左カメラＣLが、左側中央ではなく、左後方約４５°に向けて取り付けられる場合、左カメラＣLによる画像ＩLがマッピング領域ＦLの全領域をカバーすることができずに欠損領域ＤＤが生じる虞がある。
【００５３】
このように、固定のカメラマッピング処理を行って俯瞰画像を描画する場合、各カメラのマッピング領域(画像(映像)の使用範囲)を固定で決めることになるため、カメラ位置に依存して該当個所が写っていないカメラによる画像が使用される虞がある。
【００５４】
その結果、描画した俯瞰画像に欠損領域が含まれることになってしまう。この俯瞰画像(描画像)における欠損領域の問題は、複数のカメラにより撮影した各画像における最適な(最も高画質な)画像の選択にも関連する。
【００５５】
すなわち、固定のカメラマッピング処理を行って俯瞰画像を描画すると、描画結果に画質の低い画像が使用され、或いは、実際に写っていないカメラによる画像が使用されることになり、最適な描画結果を得ることは難しい。
【００５６】
なお、ユーザーが描画結果(俯瞰画像)に基づいて、各カメラの映像の使用範囲を微調整することもできるが、例えば、目視では、或る画素(ピクセル)に対してどのカメラの映像が最も画質が高く最適であるかを確認することは困難である。
【００５７】
図９は、図７に示す描画装置のカメラ配置における課題の他の例を説明するための図であり、最も近い位置のカメラによる画像を使用するように、最近接位置のカメラマッピング処理による俯瞰画像Ｉoの描画を説明するためのものである。ここで、図９(a)は、最近接位置のカメラマッピング領域の一例を示し、図９(b)は、そのときに描画された俯瞰画像Ｉoを示す。
【００５８】
図９(a)に示されるように、俯瞰画像Ｉoを描画するとき、自動車１００に設けた前カメラＣF，後カメラＣB，左カメラＣLおよび右カメラＣRに対して、最近接位置のカメラマッピング領域ＮF，ＮB，ＮLおよびＮRを適用すると、例えば、図９(b)のようになる。
【００５９】
すなわち、各カメラＣF，ＣB，ＣL，ＣRからの画像ＩF，ＩB，ＩL，ＩRは、最近接位置のカメラマッピング領域ＮF，ＮB，ＮLおよびＮRに基づいて選択され、俯瞰画像Ｉoの描画が行われる。
【００６０】
しかしながら、例えば、左カメラＣLが左後方約４５°に向けて取り付けられ、また、右カメラＣRが右後方約１５°に向けて取り付けられている場合、自動車１００の四隅の部分に欠損領域ＤＤ1，ＤＤ2，ＤＤ3，ＤＤ4が生じる虞がある。
【００６１】
このように、最近接位置のカメラマッピング処理を行って俯瞰画像を描画する場合、例えば、取り付けるカメラの向きを考慮していないため、カメラの向きによって写っていない部分により、描画した俯瞰画像に欠損領域が含まれることになってしまう。
【００６２】
すなわち、最近接位置のカメラマッピング処理を行って俯瞰画像を描画すると、やはり描画結果に画質の低い画像が使用され、或いは、実際に写っていないカメラによる画像が使用されることになり、高画質の描画データ(最適な描画結果)を得るのが困難になる。なお、例えば、カメラの向きを考慮して、その画素が写っているかどうかを判定するには、そのための追加の処理を行うことになり、好ましくない。
【００６３】
以下、描画装置、描画方法および描画プログラムの実施例を、添付図面を参照して詳述する。図１０は、本実施例に係る描画装置を概略的に示すブロック図である。
【００６４】
図１０に示されるように、本実施例の描画装置は、第１制御部(２Ｄ描画エンジン)１と、第２制御部(ＬＵＴ算出装置)２と、ＬＵＴ３と、を含み、複数のカメラ５１，５２により撮影された複数の画像データＩ1，Ｉ2から、描画像(合成画像)を生成する。ここで、カメラは、少なくとも２つ設けられ、それら少なくとも２つのカメラで撮影された少なくとも２つの画像には、同じ被写体が撮影された領域が含まれるものとする。
【００６５】
本実施例の描画装置において、第１制御部１は、複数のカメラ５１，５２から被写体を含む複数の画像データＩ1，Ｉ2を受け取り、ＬＵＴ(ＬＵＴデータ)３を参照して座標変換したデータを描画データとして、ディスプレイ４に出力する。
【００６６】
第２制御部２は、被写体について、複数の画像データＩ1，Ｉ2の光学中心との判定距離(ｄ)をそれぞれ求め、その判定距離に基づいて複数の画像データの内の１つを選択画像データとして選択する。
【００６７】
さらに、第２制御部２は、選択画像データにおける被写体の画素(ピクセル)に対応する座標を求め、ＬＵＴ３に格納されるＬＵＴデータを書き換える。例えば、第２制御部２は、カメラ特性(カメラのカメラ特性)に基づき、複数の画像データＩ1，Ｉ2において、撮影された同じ場所(被写体の同じ画素)に対応する座標を求めてＬＵＴデータの書き換えを行う。
【００６８】
ここで、カメラ特性には、例えば、レンズデータ(レンズディストーションデータ)のようなレンズに起因した特性、並びに、撮像素子(例えば、ＣＭＯＳイメージセンサ)および画像エンジン等に起因した特性を含めることができる。
【００６９】
ただし、説明を簡略化するために、複数のカメラ５１，５２は、レンズの画角や撮像素子等は同様のものとし、主として、レンズ特性による各撮影領域の画質に注目して記載する。
【００７０】
図１１は、カメラのレンズ特性の一例を説明するための図であり、カメラ(５１，５２)により撮影された画像データＩ(Ｉ1，Ｉ2)の一例を示す。図１１に示されるように、画像データ(フレームメモリ上の二次元的な画像データ)Ｉにおいて、画像中心Ｏからの距離が長い周辺部では、解像度や集光力が低くて歪みが大きく、画質が低いことが分かる。
【００７１】
すなわち、描画装置に適用されるカメラのレンズは、通常、魚眼レンズや(超)広角レンズと呼ばれる広い画角(例えば、１８０°の画角)のレンズであり、レンズの光軸に近い撮影領域(画像中心Ｏからの距離が短い中央部)ほど、高画質になる。
【００７２】
これは、一般的に、広角(魚眼)レンズでは、周辺減光や圧縮のため光軸中心(画像中心)に近い画素ほど描画精度が高く、光軸中心から遠い画素ほど描画精度が低くなる。そのため、実世界のある一点(被写体の注目位置ＯＰ)を表す画素を考えたとき、すべてのカメラの中で最も画質のよい画素とは、通常、光軸中心から最も近い画素だと言える。
【００７３】
そこで、図１０に示す本実施例の描画装置では、第２制御部２が、カメラ特性(レンズ特性)に基づいて、例えば、複数の画像データＩ1，Ｉ2において、判定距離ｄが最短のものを選択画像データとして選択するように、ＬＵＴデータを書き換える。
【００７４】
なお、図１０に示す描画装置は、カメラ５１のレンズ特性が、判定距離ｄの長さに従って、単純に画質の低下をきたす以外の場合、例えば、判定距離ｄが所定の距離までは画質が低下するが、その後、画質が向上し、再び画質が低下する場合にも対応可能である。
【００７５】
すなわち、第２制御部２は、レンズ特性に基づいて、判定距離ｄにより画像データＩ1またはＩ2のどちらを選択するかのＬＵＴデータを決定するため、例えば、所定の距離を超えて高画質になる判定距離ｄに対しては、定数(＜１)を乗算する。
【００７６】
このように、例えば、判定距離ｄが長いにも関わらず画質が高い領域が存在する場合には、その領域に対応する判定距離ｄに対して、『１』よりも小さい定数を乗算することで、画質が高い領域の画像データを選択され易くすることができる。
【００７７】
また、例えば、カメラ５１，５２のレンズの画角が異なる場合、或いは、撮像素子等による特性がそれぞれのカメラ５１，５２で異なる場合等においても、判定距離ｄに対して所定の処理を行うことにより、最適な画像データを選択することが可能になる。なお、このような処理は、例えば、知られている様々な手法を適用することにより実現することができる。
【００７８】
上述した本実施例の描画装置は、例えば、カメラを４台とし、自動車の前後左右に取り付け、それらのカメラにより撮影した画像を合成処理して俯瞰画像を生成(描画)し、ディスプレイ４に表示する全周囲モニタに適用することができる。
【００７９】
ただし、本実施例は、自動車に搭載される全周囲モニタに限定されず、例えば、ドライブモニタ、或いは、列車、船舶、航空機または建物に搭載されるモニタ、若しくは、監視カメラや家電製品または玩具等にも適用することができる。また、カメラの数は４つに限定されず、生成する画像も、俯瞰画像に限定されるものではない。
【００８０】
さらに、複数のカメラの画角や撮影された画像の解像度は、通常、同一であるが、必ずしも同一のものを適用しなくてもよい。この場合、例えば、第２制御部２による比較処理(判定距離ｄによる画像データの選択処理)を変形し、最適な画像データを選択データとして選択するようにする。
【００８１】
図１２は、自動車に搭載される描画装置の各カメラにより撮影される画像データを説明するための図である。ここで、図１２は、自動車(車両)１００の前後左右に設けた４つのカメラＣF，ＣB，ＣL，ＣRにより撮影された画像データ(ＩF，ＩB，ＩL，ＩR)から、自動車の周囲全体の画像(俯瞰画像)Ｉoを生成する全周囲モニタの場合を示す。
【００８２】
また、図１２において、前述した図７と同様に、左カメラＣLは、左後方約４５°に向けて取り付けられ、右カメラＣRは、右後方約１５°に向けて取り付けられている。すなわち、前カメラＣFの光軸ＣFoaは前方中央に向けられ、後カメラＣBの光軸ＣBoaは後方中央に向けられ、左カメラＣLの光軸ＣLoaは左後方約４５°に向けられ、そして、右カメラＣRの光軸ＣRoaは右後方約１５°に向けられている。
【００８３】
このように、例えば、自動車１００の前後左右に設けられた画角が１８０°のカメラＣF，ＣB，ＣL，ＣRで撮影した画像データＩF，ＩB，ＩL，ＩRから、俯瞰画像(Ｚ＝０の投影面(地面)に相当する三次元投影面の画像)Ｉoを合成(描画)する場合を考える。
【００８４】
図１２に示されるように、まず、すべてのカメラＣF，ＣB，ＣL，ＣRにより被写体(周囲)を撮影する。このとき、例えば、俯瞰画像Ｉoにおける左側前方角の位置(被写体の注目位置ＯＰ)は、画角から外れるため、後カメラＣBおよび右カメラＣRでは撮影できず、前カメラＣFおよび左カメラＣLで撮影した画像データＩFおよびＩLにのみ含まれることになる。
【００８５】
本実施例では、すべてのカメラＣF，ＣB，ＣL，ＣRで撮影された画像データＩF，ＩB，ＩL，ＩRにおいて、同じ被写体を撮影した複数の画像データの中から、最も好ましい画質のデータが描画データ(選択データ)として選択され、俯瞰画像Ｉoの生成に使用される。
【００８６】
すなわち、本実施例によれば、被写体の注目位置ＯＰが重複して撮影された少なくとも２つの画像データにおいて、最も高画質のデータを選択して俯瞰画像Ｉoの描画に使用するように、ＬＵＴデータの書き換えが行われるようになっている。
【００８７】
図１３および図１４は、本実施例に係る描画装置におけるＬＵＴデータの書き換え処理の一例を説明するための図である。ここで、図１３は、前述した図７に相当するものであり、俯瞰画像Ｉoにおける被写体の注目位置ＯＰと、自動車１００の前後左右に取り付けたカメラＣF，ＣB，ＣL，ＣRにより撮影された画像(画像データ)ＩF，ＩB，ＩL，ＩRを示す。
【００８８】
また、図１４(a)は、前画像データＩFにおける処理を示し、図１４(b)は、左画像データＩLにおける処理を示す。なお、図１３に示されるように、被写体の注目位置ＯＰは、領域ＲFL内に存在するため、画像データＩFおよびＩLには、注目位置ＯＰFおよびＯＰLとして含まれるが、画像データＩBおよびＩRには、含まれないことになる。
【００８９】
すなわち、前述した図１０に示す描画装置において、第２制御部２は、カメラ特性(レンズデータ(レンズディストーションデータ))により、被写体の注目位置ＯＰが、後カメラＣBおよび右カメラＣRでは、撮影範囲外であることを認識する。
【００９０】
ここで、レンズディストーションデータは、例えば、カメラの光軸に対するベクトル(または、光軸となす入射角)と、結像する二次元座標(または、実像高)の対応テーブルを含む。
【００９１】
これにより、第２制御部２は、前カメラＣFによる前画像データＩF、および、左カメラＣLによる左画像データＩLに対して、図１４を参照して説明するような処理を行って、どちらの画像データを選択画像データとするかの処理を行う。
【００９２】
図１４(a)に示されるように、例えば、俯瞰画像Ｉoにおける被写体の注目位置ＯＰは、前カメラＣFで撮影した画像データ(フレームメモリに格納されたフレーム画像)ＩFにおいて、注目位置ＯＰFとして撮影されている。
【００９３】
ここで、フレーム画像ＩFにおける画像中心の位置を原点ＯF(０，０)とし、注目位置ＯＰFの座標を(ｘF，ｙF)とすると、原点ＯFから注目位置ＯＰFまでの距離(判定距離)ｄFは、ｄF＝(ｘF2，ｙF2)1/2として求められる。
【００９４】
また、図１４(b)に示されるように、例えば、俯瞰画像Ｉoにおける被写体の注目位置ＯＰは、左カメラＣLで撮影した画像データ(フレームメモリに格納されたフレーム画像)ＩLにおいて、注目位置ＯＰLとして撮影されている。
【００９５】
ここで、フレーム画像ＩLにおける画像中心の位置を原点ＯL(０，０)とし、注目位置ＯＰLの座標を(ｘL，ｙL)とすると、原点ＯFから注目位置ＯＰFまでの判定距離ｄLは、ｄL＝(ｘL2，ｙL2)1/2として求められる。
【００９６】
そして、判定距離ｄFとｄLを比較し、例えば、ｄF＜ｄLの場合には、判定距離が短い方の画像データＩFを選択画像データとして選択する。すなわち、前述した図１０に示す描画装置において、第２制御部２は、判定距離が短い画像データＩFを選択画像データとして選択するように、ＬＵＴデータの書き換えを行う。
【００９７】
なお、被写体の注目位置ＯＰが１つの画像データだけに撮影されていた場合、第２制御部２は、その画像データが選択データとして選択されるように、ＬＵＴデータを書き換えるのはいうまでもない。
【００９８】
また、例えば、使用するカメラの数が多数で、被写体の注目位置ＯＰが３つ以上の画像データに撮影されていた場合、第２制御部２は、判定距離ｄが最も短くなる画像データが選択データとして選択されるように、ＬＵＴデータを書き換えることになる。
【００９９】
このように、本実施例によれば、各フレーム画像において、画像中心(原点)Ｏと注目位置ＯＰまでの二次元的な判定距離ｄを求めて比較するという簡単な処理を行うだけで、高画質の描画データ(俯瞰画像)を得ることができる。
【０１００】
また、本実施例によれば、複数のカメラＣF，ＣB，ＣL，ＣRにより撮影された画像データＩF，ＩB，ＩL，ＩRのいずれかに含まれていれば、その画像データが選択データになるため、描画像(俯瞰画像)における欠けを生じないようにすることができる。
【０１０１】
すなわち、本実施例によれば、カメラ位置によって異なる、各画素に対する最適な画像データ(カメラ映像)を自動的に判別(選択)することができる。また、実際に映っている画像から、その画素に対して最も画質のよいカメラ映像を選択するため、カメラの向きなどを考慮することなく、高画質の映像を得ることができる。さらに、計算が二次元座標上の距離を求めるだけでよいため、高速な処理が可能になる。
【０１０２】
図１５は、本実施例に係る描画装置におけるＬＵＴデータの生成処理の一例を説明するためのフローチャートである。図１５に示されるように、ＬＵＴデータの生成処理が開始すると、ステップＳＴ１において、任意の投影面の頂点座標を作成し、ステップＳＴ２に進んで、すべての画素(ピクセル)を処理したかどうかを判定する。
【０１０３】
ステップＳＴ２において、すべての画素を処理したと判定する(Ｙｅｓ)と、ＬＵＴデータの生成処理を終了し、すべての画素を処理していないと判定する(Ｎｏ)と、ステップＳＴ３に進む。
【０１０４】
なお、前述したように、投影面の頂点座標とは、例えば、ポリゴン処理を行って自動車の前後左右に配置されたカメラによる撮影画像から俯瞰画像を生成する場合等において、一般的に利用されている三次元空間における頂点の座標である。
【０１０５】
ステップＳＴ３では、ステップＳＴ１で作成された投影面の頂点座標における各視線ベクトルまたは光軸となす入射角に基づいてレンズディストーションデータを探索し、対応する入力画像上の二次元座標または実像高を取得して、ステップＳＴ４に進む。
【０１０６】
ステップＳＴ４では、入力画像の二次元座標から画像中心(光軸)への距離(判定距離ｄ)を算出し、ステップＳＴ５に進む。ステップＳＴ５において、すべてのカメラで中心からの距離を算出および比較し、最も距離が短い画素をテクスチャ座標として画素に割り当てる。そして、上述したように、ステップＳＴ２において、すべての画素を処理したと判定すると、データの生成処理を終了する。
【０１０７】
なお、例えば、それぞれのカメラでレンズディストーションデータ(レンズ特性)が異なっている場合、或いは、中心からの距離と画質の関係が複雑に変化する場合等には、各カメラによる撮影画像の判定距離に対して定数を乗算する等の処理が行われることになる。
【０１０８】
図１６は、図１０に示す描画装置の一構成例を示すブロック図である。図１６に示されるように、描画装置の一例は、２Ｄ描画エンジン１，ＬＵＴ算出装置２，ＲＯＭ(Read Only Memory)２０１およびＲＡＭ(Random Access Memory)２０２を含む。さらに、描画装置の一例は、内部バス２０３，外部バス２０４，複数(４個)のカメラＣF，ＣB，ＣL，ＣRおよびディスプレイ４を含む。
【０１０９】
ＲＯＭ２０１には、起動直後に動作するブートローダー２１１，ＬＵＴ付２Ｄ描画処理を行うソフトウェアプログラム２１２、並びに、レンズディストーションデータ，任意３次元投影面およびカメラ位置／角度等のデータ２１３が格納(配置)されている。
【０１１０】
ＲＡＭ２０２は、例えば、起動時に、ブートローダー２１１に基づいて、ＲＯＭ２０１に格納されたソフトウェアプログラム２１２およびデータ２１３をコピーして展開するメモリ領域(ソフトウェアプログラム２２２およびデータ２２３)を含む。ここで、データ２２３は、図１０におけるカメラ特性(レンズデータ)に対応する。
【０１１１】
さらに、ＲＡＭ２０２は、カメラ入力画像(テクスチャ画像)を格納するバッファ(ＳＲＣバッファ)Ｂ１，ＬＵＴデータを格納するＬＵＴ３(ＷＡＲＰバッファＢ２)および描画結果を格納するバッファ(描画バッファ)Ｂ３として使用されるメモリ領域(データ)を含む。
【０１１２】
２Ｄ描画エンジン(第１制御部)１は、内部バス２０３を介してＲＡＭ２０２に接続され、ＲＡＭ２０２からソフトウェアプログラム２２２を読み出して、ＬＵＴ付２Ｄ描画処理を実行する。
【０１１３】
すなわち、２Ｄ描画エンジン１は、バッファＢ１からカメラ入力画像(画像データＩF，ＩB，ＩL，ＩR)を読み出すと共に、ＬＵＴ３からＬＵＴデータを読み出し、ＬＵＴデータを参照して座標変換したデータを描画データとしてバッファＢ３に出力する。
【０１１４】
なお、カメラＣF，ＣB，ＣL，ＣRおよびディスプレイ４は、外部バス２０４を介してＲＡＭ２０２に接続され、各カメラＣF，ＣB，ＣL，ＣRで撮影した画像データＩF，ＩB，ＩL，ＩRは、外部バス２０４を介してバッファＢ１に入力されて書き込まれる、また、バッファＢ３に格納された描画データ(例えば、俯瞰画像)は、外部バス２０４を介してディスプレイ４に出力されて表示される。
【０１１５】
ＬＵＴ算出装置(第２制御部)２は、内部バス２０３を介してＲＡＭ２０２に接続され、ＲＡＭ２０２からデータ(カメラ特性)２２３を読み出して、ＬＵＴ算出処理を行う。このＬＵＴ算出処理は、例えば、ＲＡＭ(メモリ)２０２のバッファＢ１に格納されたフレーム画像(テクスチャ画像ＩF，ＩB，ＩL，ＩR)のそれぞれにおいて、画像中心Ｏと被写体の注目位置ＯＰの距離に基づいてＬＵＴデータを書き換える処理に相当する。
【０１１６】
次に、図１６に示す描画装置の動作の概要を説明する。ここで、ＲＯＭ２０１には、予め、ブートローダー２１１、ソフトウェアプログラム２１２およびデータ(最適化テクスチャ座標データ)を格納しておく。
【０１１７】
まず、ブートローダー２１１の先頭から処理を開始し、ブートローダー２１１の処理によって、ソフトウェアプログラム２１２およびデータ２１３がＲＡＭ２０２に展開される。そして、ブートローダー２１１の処理が終了すると、ソフトウェアプログラム２２２が起動し、カメラＣF，ＣB，ＣL，ＣRで撮影した画像データＩF，ＩB，ＩL，ＩRが、外部バス２０４を介してバッファＢ１に入力される。
【０１１８】
ＬＵＴ算出装置(第２制御部)２は、例えば、レンズディストーションデータ，任意三次元投影面およびカメラ位置／角度のデータ(カメラ特性)を参照し、描画バッファＢ３(描画像Ｉo)の各画素に対するそれぞれのカメラの解像度(結合点と光軸中心の判定距離ｄ)を算出する。
【０１１９】
すべてのカメラの画像(フレーム画像)ＩF，ＩB，ＩL，ＩRの中で、その画素の解像度を比較し、最も解像度の高いカメラの画素の値をマッピング対象として出力、すなわち、ＬＵＴデータの算出(書き換え)を行う。
【０１２０】
そして、２Ｄ描画エンジン１がバッファＢ２(ＬＵＴデータ)とバッファＢ１(テクスチャ画像)を参照してＬＵＴ付２Ｄ描画処理を行う。なお、描画結果は、描画バッファＢ３に書き込まれ、その描画結果が、ディスプレイ４に読み出されて表示される。
【０１２１】
ここで、２Ｄ描画エンジン１，ＬＵＴ算出装置２，ＲＯＭ２０１，ＲＡＭ２０２および内部バス２０３は、１つの半導体集積回路(描画装置用ＬＳＩ)として形成することができる。なお、カメラＣF，ＣB，ＣL，ＣRおよびディスプレイ４は、外部バス２０４を介して描画装置用ＬＳＩと接続される。
【０１２２】
或いは、ＬＵＴ算出装置２を、描画装置用ＬＳＩから分離し、１つのツールとして提供することもできる。例えば、２Ｄ描画エンジン１，ＲＯＭ２０１およびＲＡＭ２０２等を含む描画装置用ＬＳＩ、複数のカメラＣF，ＣB，ＣL，ＣRおよびディスプレイ４を搭載した自動車(１００)に対して、ＬＵＴ算出装置２を、ツールとして提供することも可能である。
【０１２３】
また、本実施例は、描画装置の描画プログラムとして提供することができ、この場合、描画プログラムは、ＲＯＭ２０１またはＬＵＴ算出装置２のメモリ等に格納することができる。なお、ＲＯＭ２０１は、例えば、電気的に書き換え可能なフラッシュメモリ等とすることもでき、例えば、ソフトウェアプログラム２１２およびデータ２１３を更新(アップデート)可能なようにしてもよい。
【０１２４】
図１７は、本実施例に係る描画装置の効果を説明するための図である。ここで、図１７(a)は、図７および図１３に対応し、図１７(b)および図１７(c)は、図８(a)および図８(b)に対応する。また、図１７(d)および図１７(e)は、本実施例による図１７(b)および図１７(c)に相当する図である。
【０１２５】
図１７(b)および図１７(c)に示されるように、例えば、描画像Ｉoを生成するとき、自動車１００の前後左右に設けたカメラＣF，ＣB，ＣL，ＣRに対して、固定のカメラマッピング領域ＦF，ＦB，ＦLおよびＦRを適用すると、欠損領域ＤＤが生じる。さらに、図１７(c)に示す描画像Ｉoは、カメラＣF，ＣB，ＣL，ＣRにより撮影した画像データＩF，ＩB，ＩL，ＩRを最大限に活用した高画質の画像とはなっていない。
【０１２６】
これに対して、図１７(d)および図１７(e)に示されるように、本実施例によれば、描画像Ｉoは、前に詳述したように、画像データＩF，ＩB，ＩL，ＩRによりカメラマッピング領域ＦF，ＦB，ＦLおよびＦRが最適化されている。
【０１２７】
すなわち、本実施例の描画装置により生成された描画像Ｉoは、少なくともいずれかのカメラＣF，ＣB，ＣL，ＣRで撮影されていれば、欠落する(欠損領域ＤＤが生じる)ことはない。さらに、本実施例の描画装置により生成された描画像Ｉoは、画像データＩF，ＩB，ＩL，ＩRを最大限に活用した高画質の画像になっている。
【０１２８】
このように、本実施例によれば、例えば、カメラの位置や向きが異なっていても、その状態におけるカメラで撮影された画像データを十分に活用して、画質のバラつきやマッピングミスの少ない高画質の描画像を生成することが可能になる。特に、周辺減光や縮尺のバラつき(画像の歪み)等の影響が大きい広角(魚眼)レンズでの効果が大きくなる。
【０１２９】
図１８は、図１０に示す描画装置の変形例を概略的に示すブロック図である。図１８と、前述した図１０の比較から明らかなように、本変形例では、第２制御部２に対して、予め準備した複数のカメラ５１，５２のカメラ特性(レンズデータ)の代わりに、画像データＩ1，Ｉ2が入力されるようになっている。
【０１３０】
すなわち、図１８に示す変形例の描画装置では、例えば、初期設定として、所定パターンとされた被写体をカメラ５１，５２で撮影し、その画像データＩ1，Ｉ2を第２制御部２に入力する。
【０１３１】
第２制御部２は、例えば、カメラ５１，５２により所定パターンを撮影した画像データＩ1，Ｉ2から、各カメラ５１，５２のカメラ特性を算出し、その算出されたカメラ特性を参照して選択画像データの選択を行う。
【０１３２】
この図１８に示す変形例では、例えば、初期設定として行うカメラ特性の算出には、多少の手間を要するが、この場合、レンズに起因した特性だけでなく、撮像素子や画像エンジン等に起因した特性も含めて、カメラ特性を設定することができる。
【０１３３】
なお、第２制御部２によるカメラ特性の設定以外は、図１０を参照して説明したカメラ５１，５２、第１制御部１、第２制御部２、ＬＵＴ３およびディスプレイ４と同様であり、その説明は省略する。
【０１３４】
なお、本実施例は、自動車の前後左右に４つのカメラを配置して俯瞰画像を生成する全周囲モニタに限定されるものではない。すなわち、本実施例は、例えば、ドライブモニタ、或いは、列車、船舶、航空機または建物に搭載されるモニタ、若しくは、監視カメラや家電製品または玩具等にも適用することができる。
【０１３５】
また、カメラの数も４つに限定されるものではなく、撮影した少なくとも２つの画像に同じ被写体が写っていれば、本実施例を適用することができる。また、生成される描画像も俯瞰画像に限定されるものではない。
【０１３６】
以上、実施形態を説明したが、ここに記載したすべての例や条件は、発明および技術に適用する発明の概念の理解を助ける目的で記載されたものであり、特に記載された例や条件は発明の範囲を制限することを意図するものではない。また、明細書のそのような記載は、発明の利点および欠点を示すものでもない。発明の実施形態を詳細に記載したが、各種の変更、置き換え、変形が発明の精神および範囲を逸脱することなく行えることが理解されるべきである。
【０１３７】
以上の実施例を含む実施形態に関し、さらに、以下の付記を開示する。
（付記１）
複数のカメラから被写体を含む複数の画像データが入力され、ＬＵＴデータを参照して座標変換したデータを出力する第１制御部と、
前記被写体について、前記複数の画像データの光学中心との判定距離をそれぞれ求め、前記判定距離に基づいて前記複数の画像データの内の１つを選択画像データとして選択し、前記選択画像データにおける前記被写体の画素に対応する座標を求めて前記ＬＵＴデータを書き換える第２制御部と、を有する、
ことを特徴とする描画装置。
【０１３８】
（付記２）
前記第２制御部は、前記複数のカメラのそれぞれの位置および角度データ、および、予め準備した前記複数のカメラのカメラ特性を参照して、前記選択画像データを選択する、
ことを特徴とする付記１に記載の描画装置。
【０１３９】
（付記３）
前記第２制御部は、前記複数のカメラのそれぞれの位置および角度データ、および、前記複数の画像データから求めた前記複数のカメラのカメラ特性を参照して、前記選択画像データを選択する、
ことを特徴とする付記１に記載の描画装置。
【０１４０】
（付記４）
前記第２制御部は、前記複数の画像データの内、前記判定距離が最短になる画像データを前記選択画像データとして選択する、
ことを特徴とする付記１乃至付記３のいずれか１項に記載の描画装置。
【０１４１】
（付記５）
さらに、
前記複数の画像データを、それぞれフレーム画像として格納するメモリを有し、
前記複数の画像データの光学中心は、それぞれの前記フレーム画像における画像中心の位置に対応し、
前記被写体について、前記判定距離は、それぞれの前記フレーム画像において、前記画像中心の位置から前記被写体までの距離である、
ことを特徴とする付記１乃至付記４のいずれか１項に記載の描画装置。
【０１４２】
（付記６）
前記フレーム画像において、前記画像中心の位置を原点(０，０)とし、前記被写体の注目位置の座標を(ｘ，ｙ)とすると、
前記判定距離ｄは、ｄ＝(ｘ2＋ｙ2)1/2として求められる、
ことを特徴とする付記５に記載の描画装置。
【０１４３】
（付記７）
前記第２制御部は、前記フレーム画像の全領域に対して処理を行う、
ことを特徴とする付記６に記載の描画装置。
【０１４４】
（付記８）
前記メモリは、前記ＬＵＴデータを格納するＬＵＴを含む、
ことを特徴とする付記１乃至付記７のいずれか１項に記載の描画装置。
【０１４５】
（付記９）
さらに、
前記第１制御部から出力される前記描画データを表示するディスプレイを有する、
ことを特徴とする付記１乃至付記８のいずれか１項に記載の描画装置。
【０１４６】
（付記１０）
複数のカメラから被写体を含む複数の画像データを受け取り、ＬＵＴデータを参照して座標変換したデータを出力する描画方法であって、
前記被写体について、前記複数の画像データの光学中心との判定距離をそれぞれ求め、
前記判定距離に基づいて前記複数の画像データの内の１つを選択画像データとして選択し、
前記選択画像データにおける前記被写体の画素に対応する座標を求めて前記ＬＵＴデータを書き換える、
ことを特徴とする描画方法。
【０１４７】
（付記１１）
前記選択画像データとして選択するのは、前記複数のカメラのそれぞれの位置および角度データ、および、予め準備した前記複数のカメラのカメラ特性を参照して、前記選択画像データを選択する、
ことを特徴とする付記１０に記載の描画方法。
【０１４８】
（付記１２）
前記選択画像データとして選択するのは、前記複数のカメラのそれぞれの位置および角度データ、および、前記複数の画像データから求めた前記複数のカメラのカメラ特性を参照して、前記選択画像データを選択する、
ことを特徴とする付記１０に記載の描画方法。
【０１４９】
（付記１３）
前記選択画像データとして選択するのは、前記複数の画像データの内、前記判定距離が最短になる画像データを前記選択画像データとして選択する、
ことを特徴とする付記１０乃至付記１２のいずれか１項に記載の描画方法。
【０１５０】
（付記１４）
前記複数の画像データは、それぞれフレーム画像としてメモリに格納され、
前記複数の画像データの光学中心は、それぞれの前記フレーム画像における画像中心の位置に対応し、
前記被写体について、前記判定距離は、それぞれの前記フレーム画像において、前記画像中心の位置から前記被写体までの距離である、
ことを特徴とする付記１０乃至付記１３のいずれか１項に記載の描画方法。
【０１５１】
（付記１５）
前記フレーム画像において、前記画像中心の位置を原点(０，０)とし、前記被写体の注目位置の座標を(ｘ，ｙ)とすると、
前記判定距離ｄは、ｄ＝(ｘ2＋ｙ2)1/2として求められる、
ことを特徴とする付記１４に記載の描画方法。
【０１５２】
（付記１６）
複数のカメラから被写体を含む複数の画像データを受け取り、ＬＵＴデータを参照して座標変換したデータを出力する制御装置を有する描画装置の描画プログラムであって、
前記制御装置に、
前記被写体について、前記複数の画像データの光学中心との判定距離をそれぞれ求め、
前記判定距離に基づいて前記複数の画像データの内の１つを選択画像データとして選択し、
前記選択画像データにおける前記被写体の画素に対応する座標を求めて前記ＬＵＴデータを書き換える、処理を実行させる、
ことを特徴とする描画プログラム。
【符号の説明】
【０１５３】
１    第１制御部(２Ｄ描画エンジン，二次元グラフィックス計算装置)
２    第２制御部(ＬＵＴ算出装置，制御装置)
３    ＬＵＴ(ＬＵＴデータ)
４    ディスプレイ
５１，５２，ＣF，ＣB，ＣL，ＣR    カメラ
ｄ，ｄF，ｄB，ｄL，ｄR    判定距離
Ｉ1，Ｉ2，ＩF，ＩB，ＩL，ＩR    画像データ(フレーム画像)
Ｉo    俯瞰画像(描画像，合成画像)
Ｏ，ＯF，ＯB，ＯL，ＯR    画像中心(原点)
ＯＰ，ＯＰF，ＯＰB，ＯＰL，ＯＰR    注目位置
【図１】
0006582557.tif 000002
【図２】
0006582557.tif 000003
【図３】
0006582557.tif 000004
【図４】
0006582557.tif 000005
【図５】
0006582557.tif 000006
【図６】
0006582557.tif 000007
【図７】
0006582557.tif 000008
【図８】
0006582557.tif 000009
【図９】
0006582557.tif 000010
【図１０】
0006582557.tif 000011
【図１１】
0006582557.tif 000012
【図１２】
0006582557.tif 000013
【図１３】
0006582557.tif 000014
【図１４】
0006582557.tif 000015
【図１５】
0006582557.tif 000016
【図１６】
0006582557.tif 000017
【図１７】
0006582557.tif 000018
【図１８】
0006582557.tif 000019