(57)【要約】【課題】画像処理の負荷を低減できる画像処理装置及び画像処理方法を提供する。【解決手段】画像処理装置１００を、制御部１１０と記憶部１２０から構成する。記憶部１２０には、投影面を所定角度で複数に分割した分割投影面の各頂点の座標情報及び識別番号が紐付けられた投影面頂点情報、並びに座標変換情報が格納されている。制御部１１０は、仮想視点からの立体視画像の投影先となる投影領域を構成するすべての分割投影面を特定し、特定した分割投影面の識別番号を取得し、取得した識別情報に基づいて頂点の座標情報を記憶部１２０から取得する情報制御部としての仮想カメラ情報取得部１１１、投影面識別番号算出部１１２及び描画制御部１１３と、分割投影面の各頂点の座標情報を座標変換し、撮像部から出力される画像信号に基づいて立体視画像を生成する表示制御部１１４とを備える。【選択図】図３
2020107089.tif 000002
【特許請求の範囲】
【請求項１】
車両の周囲を撮像する撮像部から出力される画像信号に基づいて、所定の仮想視点から所定の投影面に投影した立体視画像を生成する画像処理装置であって、
前記投影面を、所定角度で複数に分割した分割投影面の各頂点の座標情報及び前記分割投影面に付与された識別情報が紐付けられた投影面頂点情報、並びに前記座標情報の座標変換情報が格納されている記憶部と、
前記仮想視点からの前記立体視画像の投影先となる投影領域を構成するすべての前記分割投影面を特定し、特定した前記分割投影面の前記識別情報を取得し、取得した前記識別情報に基づいて前記頂点の前記座標情報を前記記憶部から取得する情報制御部と、
前記情報制御部で取得した前記分割投影面の各頂点の前記座標情報を前記記憶部の前記座標変換情報に基づいて座標変換し、座標変換後の前記座標情報及び前記撮像部から出力される前記画像信号に基づいて前記立体視画像を生成する表示制御部と、
を備えたことを特徴とする画像処理装置。
【請求項２】
前記投影面は、半球型の投影面から構成され、前記半球型の投影面は、半球の中心から水平方向に、所定角度ずつ分割された複数の前記分割投影面を有し、前記分割投影面に、前記識別情報として識別番号が昇順に付与されていることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記情報制御部は、
所定の入力部から入力される前記仮想視点の位置座標、視線方向及び視野角を含む仮想視点情報を取得し、
前記仮想視点の前記位置座標及び前記視線方向に基づいて、水平方向の所定の基準方向に対する前記視線方向の角度を算出し、
前記角度及び前記視野角に基づいて、前記基準方向に対する前記投影領域の最小角度及び最大角度を算出し、
前記最小角度及び前記最大角度に基づいて、前記投影領域に含まれるすべての前記分割投影面の前記識別情報を算出することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記情報制御部は、前記基準方向に対する前記視線方向の角度をφとし、前記視野角をθとし、補正値をＭとしたとき、前記投影領域の最小角及び最大角を、次式
ｉｎｔ（φ）  ±  ［ｉｎｔ（θ／２）  ＋  Ｍ］
により算出することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記情報制御部は、前記仮想視点の前記位置座標及び前記視野角に基づいて、前記投影面と視野との水平方向における交点Ａ，Ｂの座標情報を算出し、
前記交点Ａ，Ｂの座標に基づいて算出した前記交点Ａ，Ｂ間の距離をＡＢとし、前記投影面の半径をｒとしたとき、前記投影面の原点を仮想視点と想定したときの前記原点からの視野角θ’を、次式
ｒ２＋ｒ２−２ｒ２ｃｏｓθ’  ＝  ｜ＡＢ｜２
θ’＝ａｒｃｃｏｓ（１−｜ＡＢ｜２／２ｒ２）
により算出し、
前記原点からの前記視線方向の前記基準方向に対する角度をφとし、前記原点からの前記視野角をθ’とし、補正値をＭとしたとき、前記原点からの前記投影領域の最小角及び最大角を、次式
ｉｎｔ（φ）  ±  ［ｉｎｔ（θ／２）  ＋  Ｍ］
により算出することを特徴とする請求項３に記載の画像処理装置。
【請求項６】
前記情報制御部は、所定の入力部から入力される前記仮想視点からの視線方向の変更指示に基づいて、前記仮想視点からの前記投影領域を、一回の変更指示に対して水平方向に前記分割投影面を１つずつ変更していくが、前記入力部からの変更指示の入力状態に応じて、前記投影領域を、一回の変更指示に対して前記分割投影面を複数個分ずつ変更していくように構成されたことを請求項１〜５のいずれか一項に記載の画像処理装置。
【請求項７】
前記情報制御部は、前記仮想視点からの前記投影領域を、前記車両の走行状態に応じて変更することを特徴とする請求項１〜６のいずれか一項に記載の画像処理装置。
【請求項８】
前記情報制御部は、前記記憶部から、前記分割投影面の前記頂点の前記座標情報が格納された先頭アドレスと、前記頂点の個数とを、前記投影領域に対応する前記分割投影面ごとに取得して前記表示制御部に送信するように構成され、
前記表示制御部は、前記表示制御部から取得した前記分割投影面ごとの前記先頭アドレス及び前記頂点の個数に基づいて、前記記憶部から、前記分割投影面のすべての前記頂点の前記座標情報を取得し、座標変換を行うように構成されたことを特徴とする請求項１〜７のいずれか一項に記載の画像処理装置。
【請求項９】
請求項１〜８のいずれか一項に記載の画像処理装置によって実行される画像処理方法であって、
前記仮想視点からの前記立体視画像の投影先となる前記投影領域を構成するすべての前記分割投影面を特定するステップと、
特定した前記分割投影面の前記識別情報を取得するステップと、
取得した前記識別情報に基づいて前記頂点の前記座標情報を前記記憶部から取得するステップと、
取得した前記分割投影面の各頂点の前記座標情報を前記座標変換情報に基づいて座標変換するステップと、
座標変換後の前記座標情報及び前記撮像部から出力される前記画像信号に基づいて前記立体視画像を生成するステップと、
を含むことを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両の周囲の路面を撮像する撮像装置から出力される画像信号に基づいて、所定の仮想視点からの立体視画像を生成する画像処理装置及び画像処理方法に関するものである。
【背景技術】
【０００２】
車両に取り付けた複数のカメラで撮影された映像を合成して、車両周辺の俯瞰映像や立体視映像を生成し、モニターに表示する技術は公知である。このような合成映像を表現する言葉として、「３Ｄビュー」と呼ばれる表現がある。この３Ｄビューは、投影面として３Ｄ座標を用いることで、車両とその周辺映像を立体的に表現する技術である。
【０００３】
また、３Ｄビューを利用した従来技術として、コンピュータグラフィクスにより作り出された仮想世界を、ユーザがリアルタイムでウォークスルー、ドライブスルー、あるいはフライスルーすることのできる、リアルタイムのシミュレーション映像を生成する模擬映像生成装置が開示されている（例えば特許文献１参照）。
【０００４】
特許文献１に開示されたでは、仮想カメラを２つ設定して、１つを３Ｄモデル選定用、もう1つを表示用に使用している。このとき３Ｄモデル選定用の仮想カメラの視野範囲を、表示用の仮想カメラの視野範囲よりも大きくとっている。特許文献１に開示された技術では、まず、選定用仮想カメラの視野範囲を使い、将来表示されるであろう範囲（新たな表示すべき範囲）も含めて描画している。次に、表示用仮想カメラで表示範囲を切り出して表示部に表示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−０３３０３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１に開示された技術では、選定用の仮想カメラが別途必要であり、かつ描画範囲を大きめにとる必要があるため、描画に用いる３Ｄモデルデータは、表示範囲よりも大きな範囲で選定する必要がある。その結果、演算処理が複雑で処理時間も膨大となり、記憶容量も増大するため、ＧＰＵ（Graphics Processing Unit）等のプロセッサに過大な負荷がかかっていた。
【０００７】
本発明は、上記の事情に鑑みてなされたもので、画像処理の負荷を低減することが可能な画像処理装置及び画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の画像処理装置は、上述した目的を達成するため、車両の周囲を撮像する撮像部から出力される画像信号に基づいて、所定の仮想視点から所定の投影面に投影した立体視画像を生成する画像処理装置であって、前記投影面を、所定角度で複数に分割した分割投影面の各頂点の座標情報及び前記分割投影面に付与された識別情報が紐付けられた投影面頂点情報、並びに前記座標情報の座標変換情報が格納されている記憶部と、前記仮想視点からの前記立体視画像の投影先となる投影領域を構成するすべての前記分割投影面を特定し、特定した前記分割投影面の前記識別情報を取得し、取得した前記識別情報に基づいて前記頂点の前記座標情報を前記記憶部から取得する情報制御部と、前記情報制御部で取得した前記分割投影面の各頂点の前記座標情報を前記記憶部の前記座標変換情報に基づいて座標変換し、座標変換後の前記座標情報及び前記撮像部から出力される前記画像信号に基づいて前記立体視画像を生成する表示制御部と、を備えたことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、任意の仮想視点から立体視画像を投影する投影面を複数に分割し、仮想視点からの投影先である投影領域に対応する分割投影面のみの座標情報を記憶部から取得して座標変換処理を行っている。そのため、座標変換処理及び変換後の座標情報に基づく立体視画像の生成を、より少ない情報の容量で、簡易かつ高速に実行できる。したがって、画像処理の負荷を低減することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態である画像処理装置が適用される運転支援装置の概略構成を示すブロック図である。
【図２】実施の形態である運転支援装置の撮像装置の配置位置の一例を示す図である。
【図３】実施の形態である画像処理装置の概略構成を示す機能ブロック図である。
【図４】実施の形態である画像処理装置で用いられる半球型（お椀型）の投影面のイメージを示す図である。
【図５】複数の分割投影面（短冊）に分割された投影面と、分割投影面の頂点を示す概略図である。
【図６】記憶部の投影面頂点データ格納領域に格納される分割投影面の各頂点の座標データを説明するための図であって、（ａ）は複数の頂点を有する分割投影面（短冊）の概略図であり、（ｂ）は投影面頂点データ格納領域のデータ構造を示す。
【図７】実施の形態である画像処理装置の動作の一例を説明するためのフローチャートであり、（ａ）は画像処理の全体の流れを示すフローチャートであり、（ｂ）は投影面識別番号算出処理の一実施例の流れを示すフローチャートであり、（ｃ）は投影面識別番号算出処理の変形例の流れを示すフローチャートである。
【図８】実施の形態である画像処理装置において実行される識別番号算出処理の一実施例を説明するための図である。
【図９】ナビゲーション装置のモニターへの画像の一表示例を示す図である。
【図１０】実施の形態である画像処理装置において実行される識別番号算出処理の変形例を説明するための図である。
【発明を実施するための形態】
【００１１】
（運転支援装置の概略構成）
以下、この発明の実施の形態を図面に基づいて説明する。図１は、本発明の実施の形態である画像処理装置及び画像処理方法が適用される運転支援装置の概略構成を示すブロック図、図２は実施の形態である運転支援装置の撮像装置の配置位置の一例を示す図である。
【００１２】
図１に示すように、運転支援装置１は、車両Ｖ（図２参照）に搭載され、運転支援動作を行う。具体的には、運転支援装置１は、この車両Ｖの周囲を撮像した画像に基づいて所定の仮想視点からの立体視画像（３Ｄビュー画像）を生成し、この立体視画像をドライバに提示することで、車両Ｖの運転の支援を行う。
【００１３】
車両Ｖの前後左右には、図２に示すように複数の小型カメラ（撮像装置）が備えられている。具体的には、車両Ｖのフロントバンパまたはフロントグリルには、車両Ｖの前方に向けて前方カメラ２０ａが装着されている。車両Ｖのリアバンパまたはリアガーニッシュには、車両Ｖの後方に向けて後方カメラ２０ｂが装着されている。車両Ｖの左ドアミラーには、車両Ｖの左側方に向けて左側方カメラ２０ｃが装着されている。車両Ｖの右ドアミラーには、車両Ｖの右側方に向けて右側方カメラ２０ｄが装着されている。
【００１４】
前方カメラ２０ａ、後方カメラ２０ｂ、左側方カメラ２０ｃ、右側方カメラ２０ｄには、それぞれ、広範囲を観測可能な広角レンズや魚眼レンズが装着されており、４台のカメラ２０ａ〜２０ｄで車両Ｖの周囲の路面を含む領域を漏れなく観測することができるようになっている。これらカメラ２０ａ〜２０ｄにより、車両Ｖの周囲の路面を撮像する撮像装置が構成されている。なお、以下の説明において、個々のカメラ（撮像装置）２０ａ〜２０ｄを区別せずに説明する場合は単にカメラ２０として説明する。
【００１５】
図１に戻って、運転支援装置１は、前方カメラ２０ａ、後方カメラ２０ｂ、左側方カメラ２０ｃ、右側方カメラ２０ｄと、カメラＥＣＵ２１と、ナビゲーション装置３０と、車輪速センサ３３と、操舵角センサ３４とを有する。
【００１６】
カメラＥＣＵ２１は、カメラ２０を制御するとともに、カメラ２０が検知した情報を用いて、立体視画像の生成処理（座標変換処理）等を行う。
【００１７】
ナビゲーション装置（表示装置）３０は画像表示機能を有するモニター３１と、ユーザが入力操作する操作部３２と、を有する。ナビゲーション装置３０は、経路案内用の地図データ等が格納された記憶部を有する。ナビゲーション装置３０は、この地図データ等及び図略のＧＰＳ装置等により検出された車両Ｖの現在位置に基づいて、ナビゲーション装置３０の操作者が設定した目標地点までの経路案内を行う。
【００１８】
経路案内動作中の各種画像はモニター３１に表示される。このモニター３１は、画像等が表示される表示面に、タッチパネル式の操作部が重畳されたタッチパネルディスプレイからなる。操作部３２は、モニター３１のタッチパネル、モニター３１の周囲に設けられたジョイスティックや各種操作ボタン等から構成される。ドライバ等のユーザは、操作部３２の操作によって、ナビゲーション装置３０を通じて運転支援装置１の各部に所定の指示を与える。また、操作部３２は、ユーザの操作入力を受けて、画像処理装置１００へ送出するための仮想カメラ情報（仮想視点情報）を生成する。よって、操作部３２は、画像処理装置１００への仮想カメラ情報の入力部として機能する。仮想カメラ情報の詳細は後述する。
【００１９】
車輪速センサ３３は、車両Ｖの車輪速を検知するセンサである。車輪速センサ３３で検知された検知情報（車輪速）は、車両制御ＥＣＵ４０に入力される。
【００２０】
操舵角センサ３４は、車両Ｖのステアリングの操舵角を検知する。車両Ｖが直進状態で走行するときの操舵角を中立位置（０度）とし、その中立位置からの回転角度を操舵角として送出する。操舵角センサ３４で検知された検知情報（操舵角）は、車両制御ＥＣＵ４０に入力される。
【００２１】
さらに、運転支援装置１は、車両制御ＥＣＵ４０と、ステアリング制御ユニット５０と、スロットル制御ユニット６０と、ブレーキ制御ユニット７０とを有する。
【００２２】
車両制御ＥＣＵ４０は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）等から構成されたマイコンを主体として構成される。車両制御ＥＣＵ４０は、カメラＥＣＵ２１、車輪速センサ３３及び操舵角センサ３４から入力された各検知情報に基づいて、パワステアクチュエータ５１、スロットルアクチュエータ６１及びブレーキアクチュエータ７１）を駆動制御し、車両Ｖの運転を支援する各種処理を実行する。
【００２３】
具体的には、例えば図略の自動駐車開始スイッチをドライバがオン操作して運転支援装置１を作動させると、車両制御ＥＣＵ４０は、カメラＥＣＵ２１が検出した駐車枠に車両Ｖを自動で駐車させる自動駐車処理などを実行する。
【００２４】
ステアリング制御ユニット５０は、車両制御ＥＣＵ４０で決定した車両制御情報に基づいて、パワステアクチュエータ５１を駆動して、車両Ｖの操舵角を制御する。
【００２５】
スロットル制御ユニット６０は、車両制御ＥＣＵ４０で決定した車両制御情報に基づいて、スロットルアクチュエータ６１を駆動して、車両Ｖのスロットルを制御する。
【００２６】
ブレーキ制御ユニット７０は、車両制御ＥＣＵ４０で決定した車両制御情報に基づいて、ブレーキアクチュエータ７１を駆動して、車両Ｖのブレーキを制御する。
【００２７】
なお、カメラＥＣＵ２１、車輪速センサ３３及び操舵角センサ３４と、車両制御ＥＣＵ４０との間は、車内ＬＡＮ（Local Area Network）であるセンサ情報ＣＡＮ（登録商標）（Controller Area Network）８０によって接続される。
【００２８】
また、ステアリング制御ユニット５０、スロットル制御ユニット６０及びブレーキ制御ユニット７０と、車両制御ＥＣＵ４０との間は、車内ＬＡＮである車両情報ＣＡＮ（登録商標）８１によって接続される。
【００２９】
以上の構成を有する運転支援装置１において、本実施の形態の画像処理方法を実行する画像処理装置１００は、カメラＥＣＵ２１により主に構成されている。以下、画像処理装置１００の機能構成について詳細に説明する。
【００３０】
（画像処理装置の機能構成）
図３は、本実施の形態である画像処理装置１００の概略構成を示す機能ブロック図である。この図３に示すように、本実施の形態である画像処理装置１００は、制御部１１０及び記憶部１２０を有する。
【００３１】
主にカメラＥＣＵ２１から構成される制御部１１０は、画像処理装置１００全体の制御を行う。制御部１１０はＣＰＵ、ＦＰＧＡ、ＧＰＵ（Graphics Processing Unit、描画ユニット）などのプログラマブルロジックデバイス、ＡＳＩＣ等の集積回路に代表される演算素子を有する。本実施の形態では、３Ｄグラフィック画像処理を高速に行うべく、制御部１１０は、画像処理に特化したＧＰＵ、高速演算可能な演算素子（例えばＦＰＧＡ）などを有することが好ましい。
【００３２】
画像処理装置１００の記憶部１２０は、投影面頂点データ格納領域１２１を有する。この投影面頂点データ格納領域１２１には、後述する分割投影面２０１の各頂点２０２の座標データと、分割投影面２０１に付与された識別番号とが紐付けられた投影面頂点データが格納されている。また、記憶部１２０には、座標変換処理に用いられる座標変換情報等、画像処理に用いられる各種情報、パラメータ等が格納されている。
【００３３】
さらに、記憶部１２０には、制御用プログラム（画像処理プログラム）が格納されている。この制御用プログラムが画像処理装置１００の起動時に制御部１１０により実行されることで、画像処理装置１００は図３に示すような機能構成を備えたものとなる。
【００３４】
すなわち、制御部１１０は、仮想カメラ情報取得部１１１、投影面識別番号算出部１１２、描画制御部１１３及び表示制御部１１４を有する。仮想カメラ情報取得部１１１、投影面識別番号算出部１１２及び描画制御部１１３は、情報制御部として機能する。表示制御部１１４は、座標変換処理部１１５及び表示画像合成部１１６を有する。表示制御部１１４は、ＧＰＵから構成される。
【００３５】
本実施の形態である画像処理装置１００では、３Ｄ画像を投影する３Ｄモデル（空間モデル）として、図４に示すように、車両モデルＶ’を中心に半球状に延在する半球型（お椀型）の投影面２００を想定している。この半球型の投影面２００では、半球の中心を天頂とし、この天頂を通る鉛直方向をＹ軸とし、このＹ軸に直交する一つの軸をＸ軸とし、Ｘ軸及びＹ軸に直交する軸をＺ軸としている（図４、図５、図８等参照）。
【００３６】
仮想カメラ情報取得部１１１は、入力部としての操作部３２から仮想カメラ情報を取得する。また、仮想カメラ情報取得部１１１は、取得した仮想カメラ情報を、投影面識別番号算出部１１２に送出する。仮想カメラ情報は、所定の仮想視点に仮想的に設置された仮想カメラＰに関する情報である。
【００３７】
本実施の形態で用いる仮想カメラ情報としては、仮想カメラＰの３Ｄモデル上での位置座標（Ｘ座標，Ｙ座標，Ｚ座標）、仮想カメラＰの視線方向（表示方向）、視野角等が挙げられる。視線方向は、カメラ２０の位置及び角度（ロール角、ピッチ角、ヨー角）から算出した方角のベクトル、または仮想カメラＰの位置と、仮想カメラＰの注視点から求めるベクトルとして設定される。なお、角度、或いは注視点は、操作部３２の操作方向や操作量から求められる。ここでいう仮想カメラＰの注視点とは、ユーザが見たい場所を示す座標である。
【００３８】
仮想カメラ（仮想視点）Ｐは、半球型の投影面２００の３次元空間の任意の位置に設定できる。ユーザは、操作部３２を操作することで、モニター３１に立体視画像を表示する際の所望の仮想カメラＰ（仮想視点）の位置と、所望の視線方向（表示方向）を設定できる。具体的には、例えば、操作部３２のタッチパネルを上下左右方向に操作（タッチ、ドラッグ、スワイプ又はフリック）したり、ジョイスティック等を操作したりすることで、仮想視点の位置を指定したり、所望の視線方向を選択したりできる。このユーザによる操作を操作部３２が取得し、仮想カメラ情報を生成して仮想カメラ情報取得部１１に送出する。
【００３９】
投影面識別番号算出部１１２は、仮想カメラ情報取得部１１１からの仮想カメラ情報に基づいて、半球型の投影面２００を所定角度ごとに分割した分割投影面２０１のうち、立体視画像の投影先となる投影面２００を構成するすべての分割投影面２０１を特定し、特定された分割投影面２０１に付与された識別情報を算出する。投影面識別番号算出部１１２は、算出した識別番号を描画制御部１１３に送出する。
【００４０】
投影面２００は、図５、図６（ａ）に示すように、所定角度ごとに縦方向に分割した複数の微細な３Ｄモデル、すなわち分割投影面２０１を有する。この分割投影面２０１は、短冊形を呈している（図６（ａ）参照）。そのため、以下では分割投影面２０１を「短冊２０１」と呼ぶことがあり、図６（ａ）には「短冊２０１」と表している。
【００４１】
図５、図６（ａ）に示す例では、投影面２００をＹ軸回り（水平方向）に１度ごとに分割し、３６０個の分割投影面（短冊）２０１を設けている。このような投影面２００では、仮想カメラＰの視線方向をＹ軸回りに１度ずつ移動させて、その視線方向に対応した立体視画像を生成することができる。
【００４２】
各分割投影面２０１には、予め識別情報としての識別番号（短冊番号）が付与されている。図５等の例では、各分割投影面２０１に、Ｘ軸からの角度と同一の番号が付与されている。具体的には、Ｘ軸に対する角度０度の分割投影面２０１の識別番号は、０番（＃０、短冊２０１−０）、Ｘ軸に対する角度１度の分割投影面２０１の識別番号を１番（＃１、短冊２０１−１）とする。同様にしてすべての分割投影面２０１に識別番号を付与してゆき、Ｘ軸に対する角度３５９度の分割投影面２０１の識別番号を３５９番（＃３５９、短冊２０１−３０５）とする。
【００４３】
このように、角度と分割投影面２０１の識別番号とを一致させておくことが、記憶部１２０のアクセス速度の向上や紐付けのし易さ等の観点から望ましい。なお、本実施の形態では、投影面２００を１度ずつ３６０個の分割投影面２０１に分割し、０番から３５９番まで識別番号を付与しているが、これに限定されるものではない。他の異なる実施の形態として、例えば投影面２００を０．５度ずつ、より細かく分割し、０度に０番、０．５度に１番、１度に２番、１．５度に３番、・・・のように識別番号を付してもよいし、投影面２００を５度ずつ、より大きい角度で分割し、０度に０番、５度に１番、１０度に２番、１５度に３番、・・・のように識別番号を付してもよい。
【００４４】
分割投影面２０１は、複数の頂点２０２，２０２・・・を有している（図５、図６（ａ）等参照）。これら複数の頂点２０２の座標（Ｘ座標、Ｙ座標、Ｚ座標）のデータ（投影面頂点データ）は、記憶部１２０の投影面頂点データ格納領域１２１に格納される。この投影面頂点データ格納領域１２１には、図６（ｂ）に示すように、識別番号０番の短冊２０１−０のすべての頂点２０２の座標データが順番に格納され、その次に識別番号１番の短冊２０１−１のすべての頂点２０２の座標データが順番に格納されるといったように、識別番号０番の短冊２０１−０から２５９番の短冊２０１−５９までの各頂点２０２の座標が直列的に連続して格納されている。
【００４５】
描画制御部１１３は、投影面識別番号算出部１１２から入力される識別番号に基づいて、記憶部１２０の投影面頂点データ格納領域１２１から識別番号に対応する分割投影面２０１の頂点座標２０２の座標データを取得し、ＧＰＵ設定値とともに表示制御部１１４に送出する。
【００４６】
より詳細には、描画制御部１１３は、投影面頂点データ格納領域１２１において、算出された識別番号ごとに、対応する分割投影面２０１の頂点２０２の座標データが格納された先頭アドレスと頂点２０２の個数を表示制御部１１４（ＧＰＵ）に送出する。
【００４７】
ここで、ＧＰＵに投影面の頂点の座標データを送信する従来の手法として、投影面のすべての頂点の座標データをＧＰＵに一括送信する手法がある。しかし、この手法では仮想カメラＰの視野に無関係にすべての座標データをＧＰＵに送信するため、ＧＰＵの負荷が膨大で、かつ視野とは関係ない無駄な頂点の座標データが存在することとなる。
【００４８】
これに対して、本実施の形態のように、投影面２００を複数に分割し、さらに、仮想カメラＰの投影先に対応する分割投影面２０１のみの座標データを表示制御部１１４（ＧＰＵ）に送信している。これにより、ＧＰＵの負荷を削減して、より高速な演算処理が可能となる。
【００４９】
表示制御部１１４の座標変換処理部１１５は、描画制御部１１３から入力された識別番号ごとの先頭アドレス及び頂点２０２の個数に基づいて、各識別番号に対する頂点２０２の座標データを、投影面頂点データ格納領域１２１から取得する。そして、取得した座標データに対して座標変換処理を行う。座標変換処理部１１５では、予め各分割投影面２０１の頂点２０２の座標データと、座標変換情報（変換式を含む）とが、テーブル等によって対応付けられている。
【００５０】
表示画像合成部１１６は、座標変換処理部１１５で座標変換された座標データと、カメラ２０からの画像信号（撮像画像）を取得し、これらに基づいてモニター３１に表示するための立体視画像を合成し、この立体視画像を表示させるための表示制御信号をナビゲーション装置３０（モニター３１）に送出する。
【００５１】
（画像処理装置の動作）
次に、本実施の形態である画像処理装置１００の動作の一例（画像処理方法）を、図７（ａ）〜図７（ｃ）のフローチャート及び図８〜図１０の説明図を参照して説明する。
【００５２】
図７（ａ）は画像処理装置１００の全体動作を説明するためのフローチャートである。図７（ａ）のフローチャートに示す動作は、ドライバがモニター３１のタッチパネル等の操作部３２を操作して、立体視画像の表示開始の指示入力を行うことにより開始する。
【００５３】
ステップＳ１では、画像処理装置１００の制御部１１０の仮想カメラ情報取得部１１１が、ナビゲーション装置３０の操作部３２から、仮想カメラ情報を取得する。仮想カメラ情報は、仮想カメラ（仮想視点）Ｐの位置座標、視線方向及び視野角である。
【００５４】
視野角は、使用するカメラ２０によって予め決まっている。図８では、視野角はθで表されている。これに対して、仮想カメラＰの位置座標及び視線方向（図８に矢印で示す方向）は、前述したように、ユーザが操作部３２を操作することで任意に設定できる。処理開始後であってユーザによる操作部３２の操作前では、仮想カメラＰの位置座標の初期値として、予め決められた座標データ、例えば、車両Ｖの真上の所定高さの位置座標、つまりＹ軸上の所定の位置座標（０，Ｙ，０）が設定される。なお、Ｙ座標も固定で決められていてもよい。視線方向は、初期値として、例えばＸ軸に沿った方向が設定される。
【００５５】
次に、ステップＳ２では、ステップＳ１で取得した仮想カメラＰの位置座標、視線方向及び視野角θに基づいて、投影面識別番号算出部１１２が、分割投影面２０１に付与した識別情報（短冊番号）のうち、立体視画像の投影先（投影領域）を構成するすべての分割投影面２０１の識別番号を算出する。投影領域は、視線方向と視野角に基づいて算出できる。
【００５６】
この投影面識別番号算出部１１２による識別番号の算出手順の一実施例を、図７（ｂ）及び図８を参照して説明する。図８は、投影面２００の天頂から見下ろした平面図であり、仮想カメラＰは、Ｙ軸上の固定の位置「（０，Ｙ，０）」に位置している。
【００５７】
図７（ｂ）に示すように、ステップＳ２１で、仮想カメラ情報の視線方向（表示方向）に基づき、Ｘ軸（基準方向）に対する視線方向の角度φを算出する（図８参照）。次に、ステップＳ２２で、ステップＳ２１で算出された角度φと、ステップＳ１で取得した視野角θから、下記式（１）、（２）を用いて、視野のＸ軸に対する最小角αと最大角βを求める
【００５８】
α＝φ  −  θ／２          （１）
β＝φ  ＋  θ／２          （２）
【００５９】
次のステップＳ２３では、下記式（３）を用いて、描画対象の短冊領域Ｎ（仮想カメラＰからの投影領域に対応する分割投影面２０１を包含する領域）を算出する。すなわち、ステップＳ２２で式（１）、（２）を用いて算出した最小角αと最大角βとを式（３）により整数化（四捨五入）し、この整数化された最小角と最大角の間を短冊領域Ｎとする。このとき、図８に示すように、Ｎに所定のマージンＭ（調整値）を加算して（Ｎ＋マージンＭ）、Ｎの値を調整してもよい。下記式（３）中、ｉｎｔ（）は小数点以下を四捨五入して、整数を算出する関数であり、Ｍはマージン（調整値）を示す。
【００６０】
Ｎ＝ｉｎｔ（φ）  ±  ［ｉｎｔ（θ／２）  ＋  Ｍ］      （３）
【００６１】
ステップＳ２４では、上記式（３）によって算出した短冊領域Ｎに基づき、立体視画像を描画すべき分割投影面２０１の識別番号を取得する。すなわち、短冊領域Ｎに含まれる角度を、識別番号として取得する。
【００６２】
以下、識別番号の算出手順の具体例１、２、３を挙げる。
【００６３】
具体例１：φ＝４５．０（度）、θ＝９０．０（度），Ｍ＝０としたとき、
Ｎ  ＝  ４５  ±  ４５  ＝  ０，９０
よって、識別番号として、０番〜９０番が取得される。
【００６４】
具体例２：φ＝０．０（度）、θ＝１８０．０（度）、Ｍ＝０としたとき、
Ｎ  ＝  ０  ±  ９０  ＝  −９０，９０
よって、識別番号として、−９０度〜９０度の範囲、つまり０番〜９０番と、２７０番〜３５９番が取得される。
【００６５】
具体例３：φ＝１．５（度）、θ＝１８０．０（度）．  Ｍ＝１としたとき、
Ｎ  ＝  １  ±  ９０  ＝  −９０，９２
よって、識別番号として、−９０度〜９２度の範囲、つまり０番〜９２番と、２７０番〜３５９番が取得される。
【００６６】
図７（ａ）に戻って、ステップＳ３では、描画制御部１１３が、上記ステップＳ２で算出されたすべての識別番号に対応する分割投影面２０１について、頂点２０２の座標データ（ここでは各分割投影面２０１の座標データの格納領域の先頭アドレス）を、記憶部１２０の投影面頂点データ格納領域１２１から取得する。描画制御部１１３は、取得した各分割投影面２０１の座標データ（先頭アドレス）と、その頂点２０２の個数を、ＧＰＵ設定値とともに表示制御部１１４（ＧＰＵ）の座標変換処理部１１５に送出する。
【００６７】
ＧＰＵ設定値としては、具体的には、例えば、下記が挙げられる。
［行列］：主に座標変換に使用
・回転行列、拡大／縮小行列、平行移動行列
［描画条件］
・透過率設定、ライトの設定（光の強さ、方向など）、物体の質感情報
【００６８】
ステップＳ４では、座標変換処理部１１５が、描画制御部１１３から入力される座標データ（各識別番号の座標データの先頭アドレス及び頂点２０２の個数に基づいて投影面頂点データ格納領域１２１から取得した座標データ）に対して、ＧＰＵ設定値に基づいて、座標変換処理を行う。
【００６９】
ＧＰＵから構成される表示制御部１１４は、３Ｄビューの描画においては、上記回転行列、拡大／縮小行列、平行移動行列の３つの行列を組み合わせて、以下のような意味を持つ行列を算出して使用する。そこで、表示制御部１１４の座標変換処理部１１５は、これらの行列に各頂点２０２の座標データを掛け合せることで、座標変換を行う。
【００７０】
・モデル変換行列（モデルそのものの移動、回転、拡大縮小を担う変換行列）
・ビュー変換行列（カメラ位置を原点とするように座標を変換する行列）
・投影変換行列（遠近感を出す変換行列）
【００７１】
最後に、ステップＳ５で、表示画像合成部１１６が、座標変換処理部１１５によって変換された座標データと、車両Ｖの周囲を撮影するカメラ２０から取得した画像信号（撮像画像データ）に基づいて、モニター３１に表示するための立体視画像を合成する。立体視画像の合成を行う際には、例えばテクスチャマッピング等の公知の手法を用いて行える。そして、表示画像合成部１１６は、生成した立体視画像を表示させるための表示制御信号を、ナビゲーション装置３０に送出する。
【００７２】
このとき、モニター３１に立体視画像と並べて、例えば車両Ｖを真下に見下ろした画像を表示すべく、表示画像合成部１１６は、各カメラ２０の画像信号に基づいて俯瞰画像を合成し、この俯瞰画像を表示させるための表示制御信号も併せてナビゲーション装置３０に送出してもよい。
【００７３】
以上により、画像処理装置１００による画像処理が完了する。ナビゲーション装置３０は、画像処理装置１００から入力される表示制御信号に基づき、モニター３１に画像を表示する。図９に、モニター３１への画像の一表示例を示す。この図９に示す例では、モニター３１の表示面に、画像処理装置１００によって生成された立体視画像３１ａと、俯瞰画像３１ｂが並べて表示されている。ユーザは、立体視画像３１ａ等を視認することで、例えば、駐車時の死角の確認等を行いつつ、駐車を行うことができる。すなわち、立体視画像３１ａによって運転支援が行われる。
【００７４】
そして、このモニター３１に表示された立体視画像３１ａ上で、ユーザがタッチパネルを操作して、仮想カメラＰのＹ軸方向の位置又は視線方向を変更すると、操作部３２がこの操作を受付けて、変更された仮想カメラ情報を画像処理装置１００に送出する。この仮想カメラ情報の入力を受けて、画像処理装置１００は、図７（ａ）のステップＳ１〜Ｓ５の処理を繰り返すことで、変更された仮想カメラ情報に基づいた立体視画像を生成し、その表示制御信号をナビゲーション装置３０のへ送出する。これにより、ユーザは、所定の仮想カメラＰから、ユーザが変更指示した所望の視線方向に更新された立体視画像を視認することができる。
【００７５】
図６（ｂ）の投影面頂点データ格納領域１２１のデータ構造の上方に、仮想カメラＰが、ある仮想視点（仮想視点１）から他の仮想視点（仮想視点２）へ移動されたときに、描画制御部１１３によって座標変換処理部１１５に送出される座標データの範囲を、矢印で示した。この例によれば、仮想視点１の場合は、識別番号０から所定数の分割投影面２０１の頂点２０２の座標データが送出される。そして、操作部３２からの入力操作によって、仮想視点が仮想視点２に移動したときは、１度分ずれた識別番号１から所定数の分割投影面２０１の頂点２０２の座標データが送出される。
【００７６】
（変形例）
次に、投影面識別番号算出部１１２による識別番号の算出手順の変形例（ステップＳ２’）について、図７（ｃ）のフローチャート及び図１０の図を参照しながら説明する。上記では、図８を用いて、仮想カメラＰの位置座標が「（０，Ｙ，０）」でＹ軸上にあり、視線方向が任意の場合の識別番号の算出手順について説明している。これに対して、当該変形例では、ユーザの操作部３２の操作により、仮想カメラＰのＸ軸、Ｙ軸及びＺ軸方向の位置と視線方向とが任意に指定できるようになっている。このような場合の識別番号の算出手順について説明する。
【００７７】
投影面識別番号算出部１１２には、仮想カメラ情報取得部１１１で取得された仮想カメラＰの位置座標（Ｘ，Ｙ，Ｚ）と、視線方向と、視野角θとが入力される。
【００７８】
図７（ｃ）に示すように、ステップＳ１２１では、投影面識別番号算出部１１２は、仮想カメラＰの位置座標（Ｘ，Ｙ，Ｚ）と、視野角θに基づいて、投影面２００と仮想カメラＰの視野との交点Ａ，Ｂ（図１０参照）の座標データを算出する。
【００７９】
次に、ステップＳ１２２で、投影面識別番号算出部１１２は、ステップＳ１２１で算出された交点Ａ，Ｂの座標データに基づいて、下記式（４）、（５）を用いて、原点に設置された基準仮想カメラＰ’（基準仮想視点）における視野角θ’を算出する。下記式（４）、（５）中、ｒは半球型の投影面２００の半径を、ＡＢは交点Ａと交点Ｂとの距離を示す。
【００８０】
ｒ２＋ｒ２−２ｒ２ｃｏｓθ’  ＝  ｜ＡＢ｜２            （４）
θ’＝ａｒｃｃｏｓ（１−｜ＡＢ｜２／２ｒ２）        （５）
【００８１】
次に、ステップＳ１２３において、投影面識別番号算出部１１２は、ステップＳ１２１で算出された交点Ａ及び交点Ｂの座標データに基づいて、その中点Ｃの座標データを算出する。次のステップＳ１２４において、ステップＳ１２３で算出された中点Ｃの座標データと、基準仮想カメラＰ’（原点）の座標データとに基づいて、基準仮想カメラＰ’からの視線方向を算出する。この視線方向に基づいて、Ｘ軸に対する視線方向の角度φを算出する。
【００８２】
次いで、投影面識別番号算出部１１２は、ステップＳ１２５において、ステップＳ１２４で算出された基準仮想カメラＰ’（原点）からの視線方向に関する角度φと、ステップＳ１２２で算出された視野角θ’に基づいて、描画対象の短冊領域Ｎを算出する。この短冊領域Ｎは、前出の式（３）を用いて、実施例のステップＳ２３と同様の算出手順を用いて算出できる。
【００８３】
そして、画像処理装置１００では、上述のようにして算出された短冊領域Ｎに基づいて、図７（ａ）のステップＳ３の描画制御処理、ステップＳ４の座標変換処理、ステップＳ５の表示画像合成処理を実行することで立体視画像を生成し、その表示制御信号をナビゲーション装置３０に送出する。これにより、ユーザが指定した所望の位置の仮想カメラＰから、所望の視線方向へ投影した立体視画像がモニター３１に表示される。
【００８４】
（画像処理装置の効果）
以上説明したように、本実施の形態である画像処理装置１００は、車両Ｖの周囲を撮像するカメラ２０から出力される画像信号に基づいて、所定の仮想視点から所定の投影面２００に投影した立体視画像を生成する画像処理装置である。画像処理装置１００は、投影面２００を、所定角度で複数に分割した分割投影面２０１の各頂点２０２の座標情報及び識別情報が紐付けられた投影面頂点情報、並びに座標変換情報が格納された記憶部１２０を有する。また、仮想視点（仮想カメラＰ）からの立体視画像の投影先となる投影領域を構成するすべての分割投影面２０１を特定し、特定した分割投影面２０１の識別情報を取得し、取得した識別情報に基づいて頂点２０２の座標情報を記憶部１２０から取得する情報制御部（仮想カメラ情報取得部１１１、投影面識別番号算出部１１２、描画制御部１１３）と、分割投影面の各頂点の座標情報を記憶部１２０の座標変換情報に基づいて座標変換し、座標変換後の座標情報及び撮像部から出力される画像信号に基づいて立体視画像を生成する表示制御部１１４（座標変換処理部１１５、表示画像合成部１１６）と、を備える。
【００８５】
また、本実施の形態である画像処理装置１００で実行される画像処理方法は、仮想視点（仮想カメラＰ）からの立体視画像の投影先となる投影領域を構成するすべての分割投影面２０１を特定するステップと、特定した分割投影面２０１の識別情報を取得するステップと、取得した識別情報に基づいて頂点２０２の座標情報を記憶部１２０から取得するステップと、取得した分割投影面２０１の各頂点２０２の座標情報を座標変換情報に基づいて座標変換するステップと、座標変換後の座標情報及びカメラ２０から出力される画像信号に基づいて立体視画像を生成するステップと、を含む。
【００８６】
したがって、本実施の形態によれば、投影面２００を複数に分割し、さらに、仮想視点からの投影先である投影領域に対応する分割投影面２０１のみの座標情報を記憶部１２０から取得して座標変換処理を行っている。そのため、ＧＰＵからなる表示制御部１１４の負荷を大幅に低減でき、画像処理全体の負荷を削減できる。その結果、仮想視点が変更されても、仮想視点に対応した立体視画像を、迅速かつ高精度に提示することができる。
【００８７】
また、本実施の形態では、投影面２００は、半球型の投影面から構成される。この半球型の投影面は、半球の中心から水平方向に、所定角度(例えば、１度)ずつ分割された複数の分割投影面２０１を有し、各分割投影面２０１に、識別情報として識別番号が昇順に付与されている。これにより、識別番号と分割投影面２０１との対応付けが簡易かつ明確となり、画像処理の負荷の削減と高速化を、より合理的に図ることができる。
【００８８】
また、本実施の形態では、情報制御部は、所定の入力部（例えば、操作部３２）から入力される仮想視点（仮想カメラＰ）の位置座標、視線方向及び視野角を含む仮想視点情報（仮想カメラ情報）を取得し、仮想視点の位置座標及び視線方向に基づいて、水平方向の所定の基準方向に対する視線方向の角度を算出し、これら角度及び視野角に基づいて、基準方向に対する投影領域の最小角度及び最大角度を算出し、最小角度及び最大角度に基づいて、投影領域に含まれるすべての分割投影面の識別情報を算出している。そのため、分割投影面の特定処理が簡易となり、計算速度を速め、画像処理の負荷を削減できる。
【００８９】
このとき、投影領域の最小角及び最大角を、前出の一実施例のように、式（３）に基づいて算出してもよい。また、仮想視点の位置座標が任意に指定される場合は、前出の変形例のように式（４）、（５）を用いて、仮想視点からの視線方向と視野角を、原点からの視線方向と視野角とに変換した後、式（３）を用いて投影領域の最小角及び最大角を算出してもよい。いずれの場合でも、分割投影面２０１の特定を、簡易な計算式を用いて高速に行うことができ、画像処理の負荷を削減できる。
【００９０】
以上、図面を参照して、本発明の実施の形態及び変形例を詳述してきたが、具体的な構成は、この実施の形態及び変形例に限らず、本発明の要旨を逸脱しない程度の設計的変更は、本発明に含まれる。
【００９１】
例えば、上記実施の形態及び変形例では、分割投影面２０１（短冊）として３Ｄモデルデータをそのまま描画に使用しているが、この手法に限定されるものではない。他の異なる実施の形態として、あくまで投影対象（描画対象）の識別番号の算出のみを行うように画像処理装置及び画像処理方法を構成し、予め各識別番号に割り当てておいた任意の３Ｄモデルデータを描画するものとしてもよい。
【００９２】
また、上記実施の形態では、入力部から入力される仮想視点からの視線方向の変更指示に基づいて、投影領域について、分割投影面２０１を１つずつ、つまり１度ずつ変更し、投影する立体視画像を更新しているが、これに限定されるものではない。他の異なる実施の形態として、例えば、ユーザによる操作部３２の操作速度、より具体的には、タッチパネル上でのドラッグやフリック動作の速度や操作量に応じた角度で視線方向を変更し、立体視画像を更新してもよい。例えば、操作速度が低速又はドラッグ等の操作距離が短いときには、１度ずつ視線方向変更して分割投影面２０１を１つずつずらし、操作速度が高速又はドラッグ等の操作距離が長いときには、５度ずつ視線方向を変更して分割投影面２０１を５つずつずらし、各々の視線方向からの立体視画像に更新してもよい。これにより、比較的機能が低いＧＰＵを用いた場合であっても、ユーザの操作に追従させて、立体視画像を更新していくことができる。
【００９３】
また、上記実施の形態では、操作部３２からのユーザの入力操作に応じて、仮想視点からの投影領域、すなわち仮想カメラ情報の位置や視線方向を変更しているが、これに限定されるものではない。他の異なる実施の形態として、例えば、仮想視点からの投影領域を、車両Ｖの走行状態に応じて変更してもよい。具体的には、操舵角センサ３４で検知した車両Ｖのステアリングの操舵角に基づいて、仮想カメラＰの位置や視線方向を自動で変更し、これに基づいて立体視画像を生成してもよい。この場合、操舵角センサ３４も仮想カメラ情報の入力部の一つとして機能する。これにより、車両Ｖの走行方向やステアリング方向等に対応した適切な立体視像が自動で表示される。
【００９４】
さらに異なる実施の形態として、例えば、操舵角センサ３４で検知した車両Ｖのステアリングの操舵角に追従して仮想カメラＰの視線方向を変更する場合に、さらに車輪速センサ３３で検知した車輪速、つまり車速に応じて角度を変更してもよい。この場合、操舵角センサ３４及び車輪速センサ３３も仮想カメラ情報の入力部の一つとして機能する。
【００９５】
この構成では、例えば、所定以下の車速では、投影先の分割投影面２０１を１度ずつ移動させて立体視画像を更新する。これにより、所定以下の低速走行時には、より精細な立体視画像をユーザに提示できる。これに対して、車速が所定超の高速となったとき、投影先の分割投影面２０１を５度ずつ移動させて立体視画像を更新する。これにより、高速走行に追従して迅速に立体視画像を更新してユーザに提示できる。
【００９６】
また、本実施の形態の画像処理装置１００及び画像処理方法で作成した立体視画像を、電子ミラー用の画像として用いることもできる。本実施の形態では、視野角に適した分割投影面２０１を選定して立体視画像を生成し、画像処理（特にＧＰＵ）の負荷を低減しているため、電子ミラー用の画像の生成に適用しても、画像処理の負荷を低減して、好適な電子ミラー画像をドライバに提示できる。
【符号の説明】
【００９７】
２０      ：カメラ
３１      ：モニター
３２      ：操作部（入力部）
３３      ：車輪速センサ（入力部）
３４      ：操舵角センサ（入力部）
１００    ：画像処理装置
１１１    ：仮想カメラ情報取得部（情報制御部）
１１２    ：投影面識別番号算出部（情報制御部）
１１３    ：描画制御部（情報制御部）
１１４    ：表示制御部
１１５    ：座標変換処理部（表示制御部）
１１６    ：表示画像合成部（表示制御部）
１２０    ：記憶部
１２１    ：投影面頂点データ格納領域
２００    ：投影面（半球型モデル）
２０１    ：分割投影面（短冊）
２０２      ：頂点
Ｐ        ：仮想カメラ（仮想視点）
Ｐ’      ：基準仮想カメラ（原点）
Ｖ        ：車両
【図１】
2020107089.tif 000003
【図２】
2020107089.tif 000004
【図３】
2020107089.tif 000005
【図４】
2020107089.tif 000006
【図５】
2020107089.tif 000007
【図６】
2020107089.tif 000008
【図７】
2020107089.tif 000009
【図８】
2020107089.tif 000010
【図９】
2020107089.tif 000011
【図１０】
2020107089.tif 000012