(57)【要約】【課題】より精度の高い視点変換画像を得ることができるようにした画像処理装置および方法を提供すること。【解決手段】画像処理装置１０は、平面画像を取得する平面画像取得部２０と、奥行き情報を有する距離画像を取得する距離画像取得部３０と、平面画像から立体物の範囲に相当する立体物領域Ｏｂ１，Ｏｂ２を抽出する画像認識部と、立体物領域の奥行き情報を距離画像に基づいて算出する距離修正部と、平面画像を所定の視点から見える視点変換画像に座標変換する座標変換情報を、算出された立体物領域の奥行き情報に基づいて補正するテーブル補正部と、補正された座標変換情報を用いて平面画像を座標変換することにより、視点変換画像ＰＧ１，ＰＧ２を生成する画像変換部と、を備える。【選択図】図１
2019185520.tif 000002
【特許請求の範囲】
【請求項１】
平面画像取得部から取得する平面画像から立体物の範囲に相当する立体物領域を抽出する画像認識部と、
前記立体物領域の奥行き情報を、距離画像取得部から取得する奥行き情報を有する距離画像に基づいて算出する距離修正部と、
前記平面画像中の一部領域に該当する奥行き情報を前記距離画像中の一部領域から特定する対応付け部と、
前記平面画像を所定の視点から見える視点変換画像に座標変換する座標変換情報を、前記算出された前記立体物領域の奥行き情報に基づいて補正するテーブル補正部と、
前記補正された座標変換情報を用いて前記平面画像を座標変換することにより、前記視点変換画像を生成する画像変換部と、
を備える画像処理装置。
【請求項２】
前記距離画像取得部が前記距離画像を取得する距離画像取得範囲は、前記平面画像取得部が前記平面画像を取得する平面画像取得範囲よりも小さく、かつ、前記平面画像取得範囲の一部に重なるように設定されている、
請求項１に記載の画像処理装置。
【請求項３】
前記画像認識部は、前記平面画像の輝度、明度、彩度、または明度のうち少なくとも１つに基づいて、前記立体物領域を含む複数の領域の輪郭を抽出する、
請求項１または２のいずれか一項に記載の画像処理装置。
【請求項４】
前記座標変換情報は、前記平面画像上の変換元座標と前記視点変換画像上の変換先座標との組み合わせを複数含み、
前記テーブル補正部は、前記算出された立体物領域の奥行き情報に基づいて、前記変換先座標を補正する、
請求項１または２のいずれか一項に記載の画像処理装置。
【請求項５】
前記座標変換情報は、前記平面画像が地面の被写体を写した画像であるとして予め作成されており、
前記画像認識部は、前記平面画像に含まれる前記被写体ごとに、前記平面画像を複数の領域に分割し、
前記テーブル補正部は、前記距離画像に基づいて、前記分割された複数の領域が前記立体物領域であるか否かを判断し、前記立体物領域であると判断した領域について、当該領域内の前記変換元座標に対応する前記変換先座標を補正する、
請求項４に記載の画像処理装置。
【請求項６】
前記座標変換情報は、前記平面画像上の変換元座標と前記視点変換画像上の変換先座標との組み合わせを複数含み、
前記テーブル補正部は、前記変換元座標を前記立体物領域の輪郭の所定範囲内に位置するように補正する、
請求項１または２のいずれか一項に記載の画像処理装置。
【請求項７】
前記テーブル補正部は、前記立体物領域の輪郭の前記所定範囲内であって、前記立体物領域の外部または内部の少なくともいずれかに前記変換元座標を配置する、
請求項６に記載の画像処理装置。
【請求項８】
前記座標変換情報は、前記平面画像内の被写体が予め設定される基準高さを持つ基準高さ平面内に存在することを前提に算出されており、
前記テーブル補正部は、
前記距離修正部が算出した前記立体物領域の奥行き情報を用いることにより、前記被写体の前記基準高さ平面からの高さ、および前記被写体の前記基準高さ平面上での位置を算出し、
視点変換の基準位置と、算出した前記被写体の前記基準高さ平面からの高さと、算出した前記被写体の前記基準高さ平面上での位置とを用いることにより、前記座標変換情報を補正する、
請求項１または２のいずれか一項に記載の画像処理装置。
【請求項９】
前記所定の視点は、前記平面画像取得部の視点と異なるように設定される仮想的な視点である、
請求項１または２のいずれか一項に記載の画像処理装置。
【請求項１０】
前記平面画像取得部が前記平面画像を取得する際の解像度は、前記距離画像取得部が前記距離画像を取得する際の解像度よりも大きく設定されており、
前記距離修正部は、前記立体物領域の奥行き情報を前記距離画像に基づいて補間して算出する、
請求項１または２のいずれか一項に記載の画像処理装置。
【請求項１１】
前記視点変換画像を表示部に表示させる表示制御部をさらに備える、
請求項１または２のいずれか一項に記載の画像処理装置。
【請求項１２】
画像を処理する画像処理方法であって、
カメラを用いて平面画像を取得し、
距離検出部を用いて奥行き情報を有する距離画像を取得し、
前記平面画像から立体物の範囲に相当する立体物領域を抽出し、
前記立体物領域の奥行き情報を前記距離画像に基づいて算出し、
前記算出された前記立体物領域の奥行き情報に基づいて前記平面画像を座標変換することにより、所定の視点から見える視点変換画像を生成する、
画像処理方法。
【請求項１３】
前記距離画像を取得する距離画像取得範囲は、前記平面画像を取得する平面画像取得範囲よりも小さく、かつ、前記平面画像取得範囲の一部に重なるように設定される、
請求項１２に記載の画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法に関する。
【背景技術】
【０００２】
車両に設置されたカメラで車両の周囲を撮影し、撮影された画像を変形合成して視点変換画像を生成し、車内に表示する画像表示システムが知られている。このような画像表示システムを利用することにより、運転者は、車両周辺の様子を視認性高く確認することができる。
【０００３】
特許文献１には、第１射影変換を用いて撮影画像から周辺俯瞰画像を生成する周辺俯瞰画像生成部と、車載カメラの視野内に存在する立体物を検知して、当該立体物の位置を含む立体物情報を出力する立体物検知部と、立体物情報に基づいて撮影画像から立体物が写っている画像領域である立体物画像を抽出する立体物抽出部と、周辺俯瞰画像における立体物の歪みを低減する第２射影変換を用いて立体物画像から立体物俯瞰画像を生成する立体物俯瞰画像生成部と、立体物情報に基づき周辺俯瞰画像に立体物俯瞰画像を画像合成する画像合成部を備えた画像生成装置が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１４７１４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載の発明では、カメラと立体物を検出するモジュールとで測定する範囲が異なる場合、視点変換画像において立体物の形状に歪みが発生する。距離センサを併用することにより立体形状を再現する手法も考えられるが、歪みの少ない視点変換画像を生成することは困難である。
【０００６】
本発明は上記の課題に鑑みてなされたもので、その目的は、より精度の高い視点変換画像を得ることができるようにした画像処理装置および方法を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決すべく、本発明の一つの観点に従う画像処理装置は、平面画像取得部から取得する平面画像から立体物の範囲に相当する立体物領域を抽出する画像認識部と、前記立体物領域の奥行き情報を、距離画像取得部から取得する奥行き情報を有する距離画像に基づいて算出する距離修正部と、前記平面画像中の一部領域に該当する奥行き情報を前記距離画像中の一部領域から特定する対応付け部と、前記平面画像を所定の視点から見える視点変換画像に座標変換する座標変換情報を、前記算出された前記立体物領域の奥行き情報に基づいて補正するテーブル補正部と、前記補正された座標変換情報を用いて前記平面画像を座標変換することにより、前記視点変換画像を生成する画像変換部と、を備える。
【発明の効果】
【０００８】
本発明によれば、平面画像から抽出される立体物領域の奥行き情報を距離画像に基づいて算出し、算出された奥行き情報に基づいて座標変換情報を補正することができるため、歪みの発生を抑制した視点変換画像を得ることができる。
【図面の簡単な説明】
【０００９】
【図１】画像処理装置のハードウェア構成と処理の概要を示す説明図。
【図２】カメラの撮影範囲と距離検出部の測定範囲との関係を模式的に示す説明図であって、図２（１）はカメラの撮影範囲の概念図、図２（２）はカメラの撮影範囲と比較して十分に広い理想的な距離検出部の測定範囲の概念図、図２（３）はカメラの撮影範囲と比較して狭い距離検出部の測定範囲の概念図である。
【図３】画像処理装置の機能ブロック図。
【図４】画像処理装置を搭載する車両を上方から見下ろした説明図。
【図５】車両を側面から見た説明図。
【図６】カメラ座標系と仮想視点座標系とワールド座標系の定義を示す説明図。
【図７】テーブルデータの例を示す説明図。
【図８】テーブルデータの補正の例を示す説明図。
【図９】カメラの撮影した平面画像と距離修正部の測定した距離画像との関係を示す説明図であって、図９（１）はカメラの撮影画像を示す図、図９（２）は距離検出部が取得した距離画像を示す図、図９（３）は理想的な距離検出部で取得した距離画像を示す図である。
【図１０】平面画像内の立体物の奥行き情報（距離情報）を距離検出部で測定した距離画像を利用して補正する様子を示す説明図であって、図１０（１）は距離画像中の立体物の輪郭を示す図、図１０（２）は立体物に対する距離検出部の測定範囲の境界を示す図、図１０（３）はテーブルデータの座標対応画素を重畳した図、図１０（４）は距離情報を補正した図である。
【図１１】画像セグメントの例を示す説明図であって、図１１（１）はセグメント分割の例を示す図、図１１（２）は各セグメントに識別子を付した図である。
【図１２】画像処理装置の動作を示すフローチャート。
【図１３】変形例に係るテーブルデータの例を示す図。
【発明を実施するための形態】
【００１０】
以下、図面に基づいて、本発明の実施の形態を説明する。本実施形態に係る画像処理装置は、例えば、乗用車、バス、トラックなどの自動車、ホイールローダや油圧ショベルなどの建設機械、鉄道車両、飛行ロボット（いわゆるドローン）、人型ロボットなどに用いることができる。さらに、本実施形態に係る画像処理装置は、例えば、住宅、商業施設、工場、倉庫などの建築物の周辺を監視するセキュリティシステムにも適用することができる。以下の説明では、自動車に適用する場合を例に挙げるが、本実施形態は上述のように、自動車以外の製品にも適用可能である。
【実施例１】
【００１１】
図１〜図１２を用いて第１実施例を説明する。図１は、車両１に搭載される画像処理装置１０のハードウェア構成と画像処理の概要とを示す説明図である。
【００１２】
車両１は、例えば、車体、駆動機構、制御機構などを有する。本実施例に係る画像処理装置１０は、制御機構の一部として車両１に搭載される。
【００１３】
車両１は、例えば、画像処理装置１０と、車両１の前方に設けられる前カメラ２０ａと、車両１の左側面に設けられる左カメラ２０ｂと、車両１の右側面に設けられる右カメラ２０ｃと、車両１の後方に設けられる後カメラ２０ｄと、距離検出部３０と、ユーザインターフェース部（ＵＩ部）４０とを備える。距離検出部３０は、例えば、車両１の前後方および側方の物体を検出できるように、車両１の前後の四隅に配置される。
【００１４】
以下、前カメラ２０ａと左カメラ２０ｂと右カメラ２０ｃと後カメラ２０ｄとを区別しない場合、カメラ２０と呼ぶ。カメラ２０は、「画像取得部」の例である。カメラ２０は、例えば、ＣＣＤ（Charge Coupled Device）カメラまたはＣＭＯＳ（Complementary Metal Oxide Semiconductor）カメラなどの主に可視域を検出する撮像素子と、撮像素子で検出した信号を記録する画像メモリと、検出信号を増幅等する処理回路（いずれも不図示）とを含むことができる。車両１は、さらに、赤外線を検出可能な撮像素子を有するカメラを搭載することもできる。画像処理装置１０は、赤外線カメラからの信号を取り込んで画像として処理してもよい。
【００１５】
カメラ２０により撮影して得られた画像を撮影画像と呼ぶ。撮影画像は「平面画像」の例である。撮影画像の解像度は、例えばカメラ２０に内蔵される撮像素子の数により決定される。カメラ２０は、例えば１９２０×１０８０の解像度を有する。以下、解像度を空間解像度とも呼ぶ。
【００１６】
カメラの撮影範囲は、例えば、カメラ２０に内蔵される撮像素子の大きさとレンズの焦点距離とにより決定される。本実施例では、例えば水平方向に１８０度の角度で撮影可能であるとする。以下、撮影可能な角度を測定範囲とも呼ぶ。
【００１７】
カメラ２０と距離検出部３０とは同期して動作しており、同一タイミングで周囲の情報を取得する。画像処理装置１０は、カメラ２０の撮影画像を用いて、仮想視点５３（図５参照）から車両１の周囲を見渡した場合の画像（以下、視点変換画像）を生成する。仮想視点５３は、カメラ２０の設置位置とは異なる場所（例えば、車両１の上方など）に設定される。
【００１８】
画像処理装置１０の生成した視点変換画像は、ユーザインターフェース部４０に送られて表示される。ユーザ（ドライバ）は、ユーザインターフェース部４０に表示された視点変換画像を見ることにより、車両１の周囲の状況を一目で把握することができる。
【００１９】
カメラ２０の車両１への取付位置、および取付姿勢は既知であり、記憶部１４に格納されている。
【００２０】
「距離画像取得部」の例である距離検出部３０は、車両１の周囲の物体の奥行き情報を、水平方向および垂直方向に（すなわち２次元に）分解能を持った情報として検出する装置である。距離検出部３０は、例えば、ＬｉＤＡＲ（Light  Detection  and  Ranging）である。ＬｉＤＡＲ以外に距離情報を測定可能な装置を用いてもよい。以下、距離検出部３０が取得する２次元に分解能を有する距離情報を「距離画像」と呼ぶ。
【００２１】
距離検出部３０の測定範囲は、カメラ２０の撮影範囲の少なくとも一部と重複する。ただし距離検出部３０が取得する距離画像の測定範囲（距離画像取得範囲）は、カメラ２０の測定範囲（平面画像取得範囲）よりも狭い。例えば、カメラ２０は水平方向ｘ垂直方向が１８０度ｘ１６０度の測定範囲を有するのに対して、距離検出部３０は１２０度ｘ１２０の測定範囲を有する。すなわちカメラ２０の測定範囲を第１の測定範囲、距離検出部３０の測定範囲を第２の測定範囲と呼ぶと、第２の測定範囲は第１の測定範囲よりも低い。距離検出部３０の車両１への取付位置および取付姿勢は既知であり、記憶部１４に格納される。
【００２２】
ユーザインターフェース部４０は、ユーザとの間で情報を交換する装置である。ユーザインターフェース部４０は、ユーザが画像処理装置１０へ指示する情報入力部と、画像処理装置１０がユーザへ情報を提供する情報出力部とを有することができる。
【００２３】
情報入力部としては、例えば、タッチパネル、キーボード、音声入力装置、手動スイッチ、ブレイン・マシン・インターフェース（Brain-machine Interface：BMI）などを用いることができる。情報出力部としては、例えば、ＬＣＤ（Liquid Crystal Display）ディスプレイ、プロジェクタ、車両１に搭載されたカーナビゲーション装置の表示部、ヘッドマウントディスプレイなどを用いることができる。
【００２４】
ユーザインターフェース部４０は、画像処理装置１０と有線または無線で接続されることができる。ユーザインターフェース部４０が無線で画像処理装置１０と接続される場合には、携帯電話（いわゆるスマートフォンを含む）、ノート型またはタブレット型、ブレスレット型、眼鏡型などの携帯情報端末をユーザインターフェース部４０として用いることもできる。
【００２５】
画像処理装置１０は、例えば、マイクロプロセッサ（ＣＰＵ：Central Processing Unit）１１、ＲＯＭ（Read Only Memory）１２、ＲＡＭ（Random access memory）１３、記憶部１４、通信インターフェース１５、ユーザインターフェース（UI-IF）１６を備えることができる。図示は省略するが、ＧＰＵ（Graphics Processing Unit）、特定の処理に特化した専用回路、ＦＰＧＡ（Field-Programmable Gate Array）などを備えてもよい。
【００２６】
ＲＯＭ１２には、後述の画像処理動作を実行するコンピュータプログラムなどが記憶されている。記憶部１４は、例えば、フラッシュメモリデバイスやハードディスクドライブのように、不揮発性の記憶装置として構成される。記憶部１４には、画像変換に使用するテーブルや、カメラ２０の取付位置および角度、距離検出部３０の取付位置および角度などが記憶されている。
【００２７】
通信インターフェース１５は、画像処理装置１０と他の装置が情報を交換するための出入り口である。カメラ２０および距離検出部３０からのデータは、通信インターフェース１５を介して、画像処理装置１０へ入力される。通信インターフェース１５は、例えば、シリアルポートとして構成してもよいし、Ａ／Ｄ（Analog / Digital）コンバータなどを含んでもよい。
【００２８】
図１の下側に画像処理装置１０による画像処理の概要を示す。車両１の前方に、例えば信号機や樹木などのオブジェクト（三次元対象物）Ｏｂ１，Ｏｂ２が存在するものとして説明する。
【００２９】
画像処理装置１０は、カメラ２０から平面画像（撮影画像）２１を取得するとともに（Ｓ１）、距離検出部３０から距離画像３１を取得する（Ｓ２）。画像処理装置１０は、平面画像から立体物であるオブジェクトＯｂ１，Ｏｂ２の範囲に相当するセグメントＳＧ１，ＳＧ２を抽出する（Ｓ３）。平面画像２１を複数のセグメントに分割する場合、立体的なオブジェクトＯｂ１，Ｏｂ２以外の部分もセグメントとして分割されるが、図１ではその過程を省略して示す。
【００３０】
画像処理装置１０は、「立体物領域」としてのセグメントＳＧ１，ＳＧ２と距離画像３１とを比較することにより、距離画像３１のうちセグメントＳＧ１，ＳＧ２に対応する領域の距離を求める（Ｓ４）。
【００３１】
画像処理装置１０は、セグメントＳＧ１，ＳＧ２内の未知の距離を、距離画像３１の対応部分から得られる既知の距離に基づいて補正（補間）する（Ｓ５）。
【００３２】
最後に、画像処理装置１０は、平面画像２１を仮想視点５３から見た場合の視点変換画像に変換する（Ｓ６）。オブジェクトＯｂ１，Ｏｂ２の輪郭を示すセグメントＳＧ１，ＳＧ２は、所定の曲面上に広がるオブジェクトＰＧ１，ＰＧ２に変換されて、ユーザインターフェース部４０に表示される。
【００３３】
図１では、１つの平面画像から視点変換画像を生成するかのように説明したが、実際には、前後左右の各カメラ２０ａ〜２０ｄで撮影した平面画像のそれぞれについて、距離を検知できなかった領域の距離情報を補正し、補正後の各平面画像を合成して変換することにより視点変換画像を得る。以下、さらに詳細に説明する。
【００３４】
図２（１）は、カメラ２０により撮影される測定範囲Ａ２０の概念図である。図２（２）は、理想的な距離検出部３０ｒの測定範囲Ａ３０ｒの概念図である。測定範囲Ａ３０ｒは、カメラ２０の測定範囲Ａ２０と比較して十分に広い。十分に広い測定範囲を持つ距離検出部３０ｒは、説明のために示しており、実際の車両１には搭載されない。図２（３）は、実際に車両１に搭載されている距離検出部３０の測定範囲Ａ３０の概念図である。測定範囲Ａ３０は、カメラ２０の測定範囲Ａ２０と比較して狭い。
【００３５】
図２（４）は、カメラ２０の測定範囲Ａ２０と理想的な距離検出部３０ｒの測定範囲Ａ３０ｒとを比較する平面図である。同様に、図２（５）は、カメラ２０の測定範囲Ａ２０と実際の距離検出部３０の測定範囲Ａ３０とを比較する平面図である。図２では、視認性向上のために、図２（１）のカメラ２０と図２（５）の測定範囲Ａ２０とを結ぶ線を省略している。
【００３６】
図２（１）〜（３）は、カメラ２０もしくは距離検出部３０を水平方向に向けて設置したときの測定範囲を上面図として示した例である。図中のθx_cam、θx_range1、θx_range2はそれぞれ、カメラ２０もしくは距離検出部３０の水平方向の測定範囲を示す。
【００３７】
ここで、図２（４），（５）では、カメラ２０の水平方向の測定範囲は、いずれもθx_camである。しかし、図２（４）では、カメラ２０の測定範囲Ａ２０よりも理想的な距離検出部３０ｒの測定範囲Ａ３０ｒの方が十分に広い。これに対し、図２（５）では、実際の距離検出部３０の測定範囲Ａ３０は、カメラ２０の測定範囲Ａ２０よりも小さい。このため、図２（５）では、カメラ２０の測定範囲Ａ２０の一部が距離検出部３０で網羅できていない。つまり、距離検出部３０は、カメラ２０の測定範囲Ａ２０のうち一部の距離情報のみ取得することができ、残りの部分については距離情報を取得できない。
【００３８】
図２（５）の場合、カメラ２０で撮影される立体物の一部は、距離検出部３０により距離画像を取得することができないため、その立体形状を検出することができない。本実施例では、カメラ２０と比較して測定範囲の狭い距離検出部３０を使用するが、後述する手法により、図２（２）に示す測定範囲の広い距離検出部３０ｒを使用する場合と近い結果を得ることができる。
【００３９】
図３は、画像処理装置１０の有する機能を示す機能ブロック図である。画像処理装置１０は、その機能として、例えば、画像認識部１０１と、距離修正部１０２と、テーブル補正部１０３と、対応付け部１０４と、画像変換部１０５と、ユーザインターフェース制御部１０６とを備える。
【００４０】
「座標変換情報」の例であるテーブルデータ１０７は、記憶部１４に格納される情報である。テーブルデータ１０７は、俯瞰画像や鳥瞰画像などの視点変換画像を生成する際に用いられるルックアップテーブルである。テーブルデータ１０７は、画像処理装置１０を含むシステムの設計段階において、車両１に設置するカメラ２０の位置および角度と、仮想視点５３の位置および角度と、撮像条件とにより予め作成される。テーブルデータ１０７は、カメラ２０のそれぞれについて視点変換を行う仮想視点ごとに存在する。以下では、主に一つのカメラ（例えば前カメラ２０ａ）についての、或る１つの仮想視点５３を例に挙げて説明する。
【００４１】
画像認識部１０１は、カメラ２０の撮影した画像（平面画像）を処理対象とし、撮影画像に含まれる被写体ごとの輪郭（立体物領域）を抽出して、撮影画像を複数の領域に分割するセグメント分割処理を行う。
【００４２】
以下の説明では、画像認識部１０１が行うセグメント分割処理によって撮影画像内に設定される各領域を「セグメント」と称する。本処理における被写体の輪郭抽出は、既知の輪郭検出法に基づいてもよい。あるいは、撮影画像の色情報を解析し、輝度、色相、彩度、および明度の類似性から撮影画像を複数の領域に分割して各領域の輪郭を抽出する方法を採用することもできる。
【００４３】
距離画像認識部１０８は、距離検出部３０の検出した距離画像を処理対象とし、距離画像から距離情報の変化を抽出することにより、距離画像を複数の領域に分割するセグメント分割処理を行う。以下の説明では、距離画像認識部１０８が行うセグメント分割処理によって距離画像内に設定される各領域を「距離画像セグメント」と称する。距離画像セグメントの分割方法としては、例えば、距離情報から得られる３次元情報を解析して平面、立体形状を推測し、形状から各領域を抽出する方法を採用することができる。
【００４４】
距離修正部１０２は、画像認識部１０１の認識結果に含まれる立体物に対応するセグメント、すなわち被写体が立体物である領域が存在する場合に、当該セグメントについて、距離を補正する。距離修正部１０２は、後述するそれぞれの座標対応点を対象として、距離検出部３０の測定値である距離を補正する。距離修正部１０２により補正された距離を、以後は「立体物距離」と呼ぶ。
【００４５】
テーブル補正部１０３は、距離修正部１０２が算出した立体物距離を用いて、テーブルデータ１０７を書き換える。
【００４６】
対応付け部１０４は、カメラ２０および距離検出部３０の、それぞれの車両１への取付位置および取付姿勢に基づいて、撮影画像と距離画像とを対応付ける。例えば、対応付け部１０４は、撮影画像上の或る領域に対応する距離画像上の領域を算出し、あるいは、距離画像上の或る領域に対応する撮影画像上の領域を算出する。
【００４７】
画像変換部１０５は、テーブル補正部１０３により書き換えられたテーブルデータ１０７を用いてカメラ２０の撮影画像を変換することにより、カメラ２０の撮影画像を組み合わせて仮想視点５３における視点変換画像を生成する。
【００４８】
ユーザインターフェース制御部１０６は、画像変換部１０５により生成された視点変換画像をユーザインターフェース部４０に出力して表示させる。
【００４９】
（動作環境）
【００５０】
図４および図５は、画像処理装置１０の動作環境を説明する。図４は、画像処理装置１０を搭載する車両１を上部から見下ろした図である。図５は、車両１を側面から見た図である。
【００５１】
車両１は、車両通行帯を示す白線である直線ＬＬ，ＬＲに挟まれた領域に存在する。車両１の前方正面の地面にはマーカ５２が設置されている。車両１の前方左には、樹木のような立体物５１がある。
【００５２】
車両１の前部には前カメラ２０ａが設置されている。前カメラ２０ａの光軸は、車両１の前方の路面に向けられており、立体物５１およびマーカ５２をその撮影範囲内に捉えている。
【００５３】
同様に、車両１の左部、右部および後部には、それぞれ左カメラ２０ｂ、右カメラ２０ｃ、および後カメラ２０ｄが設置されている。各カメラ２０ｂ，２０ｃ，２０ｄの光軸は、それぞれ車両１の左方、右方、後方の路面に向けられている。
【００５４】
本実施例のカメラ２０は、広角レンズを備えており、約１８０度の画角を有する。カメラ２０および距離検出部３０の、設置位置および設置角度は、車両１の設計段階において予め定められており、既知である。その値は記憶部１４に格納されている。
【００５５】
図５に示す仮想視点５３は、車両１の前方上部から真下を撮像することにより、車両１の前方を俯瞰する視点である。以下、図５に示す状況において、仮想視点５３から得られる画像の作成方法を説明する。図１でも述べたように、画像処理装置１０は車両１の前後左右にそれぞれカメラ２０ａ〜２０ｄを備えるが、ここでは、主に前カメラ２０ａの撮影画像を変換する場合を代表して説明する。
【００５６】
（座標変換）
【００５７】
図６は、カメラ座標系、仮想視点座標系、およびワールド座標系の定義を示す説明図である。
【００５８】
カメラ座標系とは、画像を撮影するカメラ２０を基準とする座標系である。図６には、前カメラ２０ａを基準とするカメラ座標系Ｒの３軸、すなわちＸｒ，Ｙｒ，Ｚｒが示されている。
【００５９】
仮想視点座標系とは、予め定められた仮想視点５３を基準とする座標系である。図６には、仮想視点５３を基準とする仮想視点座標系Ｖの３軸、すなわちＸｖ，Ｙｖ，Ｚｖが示されている。
【００６０】
ワールド座標系とは、車両１が走行する路面を基準に設定された座標系である。図６には、ワールド座標系Ｗの３軸、すなわちＸｗ，Ｙｗ，Ｚｗが示されている。ＸｗおよびＹｗは路面に平行であり、Ｚｗ＝０の基準高さ平面５０１に路面が含まれる。
【００６１】
カメラ座標系Ｒの１つの軸Ｚｒは、前カメラ２０ａの光軸と一致しており、すなわち撮像素子と直交する。他の軸Ｘｒおよび軸Ｙｒは、前カメラ２０ａの撮像素子の長辺および短辺と平行である。カメラの焦点距離ｚｒを用いて表すと、撮影画像５０２を構成する各画素の位置は、Ｚｒ＝ｚｒに位置するＸｒＹｒ平面上の座標データで表現される。すなわち、カメラ座標系Ｒは、撮影画像５０２の座標系と等しい。
【００６２】
仮想視点座標系の軸Ｚｖは、仮想視点５３に置かれた仮想的なカメラの光軸と一致しており、すなわち仮想的な撮像素子と直交する。他の軸Ｘｖおよび軸Ｙｖは、仮想的な撮像素子の長辺および短辺と平行である。仮想視点５３に置かれるカメラの焦点距離ｚvを用いて表すと、視点変換画像５０３を構成する各画素の位置は、Ｚｖ＝ｚｖに位置するＸｖＹｖ平面上の座標データで表現される。すなわち、仮想視点座標系Ｖは、視点変換画像５０３の座標系と等しい。
【００６３】
ここで、或る点Ｐをワールド座標系Ｗでは点Ｐｗと呼び、その座標を（ｘｗ、ｙｗ、ｚｗ）と表す。前カメラ２０ａにより点Ｐｗを撮影した際の撮影画像における点を点Ｐｒと呼び、点Ｐｒの座標を（ｘｒ、ｙｒ、ｚｒ）と表す。仮想視点５３から得られる画像における点を点Ｐｖと呼び、Ｐｖの座標を（ｘｖ、ｙｖ、ｚｖ）と表す。
【００６４】
ワールド座標系Ｗにおける点Ｐｗの座標（ｘｗ、ｙｗ、ｚｗ）をカメラ座標系Ｒの点Ｐｒの座標（ｘｒ、ｙｒ、ｚｒ）に座標変換するには、例えば、数１に示すようなアフィン変換が用いられる。
【００６５】
【数１】
2019185520.tif 000003
【００６６】
ここで、Ｍｒは、数２に示されるような４×４の透視投影変換行列である。
【００６７】
【数２】
2019185520.tif 000004
【００６８】
数２において、Ｒｒは３×３の回転行列、Ｔｒは１×３の平行移動行列、０は３×１の零行列である。回転行列Ｒｒおよび平行移動行列Ｔｒは、ワールド座標系上でのカメラ２０ａの設置位置および設置角度、カメラ２０ａの内部パラメータである焦点距離および撮像素子の有効画素サイズなどに基づいて、周知な方法で算出される。
【００６９】
ワールド座標系Ｗの点Ｐｗの座標（ｘｗ、ｙｗ、ｚｗ）を仮想視点座標系Ｖの点Ｐｖの座標（ｘｖ、ｙｖ、ｚｖ）に座標変換するには、例えば、数３に示すようなアフィン変換が用いられる。
【００７０】
【数３】
2019185520.tif 000005
【００７１】
ここで、Ｍｖは、数４に示されるような４×４の透視投影変換行列である。
【００７２】
【数４】
2019185520.tif 000006
【００７３】
数４において、Ｒｖは３×３の回転行列、Ｔｖは１×３の平行移動行列、０は３×１の零行列である。回転行列Ｒｖおよび平行移動行列Ｔｖは、ワールド座標系上での仮想視点５３の位置および角度、仮想視点５３の仮想的な焦点距離および撮像素子の有効画素サイズなどに基づいて周知な方法で算出される。
【００７４】
上述した数１と数３とを組み合わせると、カメラ座標系Ｒの点Ｐｒの座標を仮想視点座標系Ｖの点Ｐｖの座標に座標変換するための式（数５）が得られる。
【００７５】
【数５】
2019185520.tif 000007
【００７６】
数５では、透視投影変換行列Ｍｒの逆行列によりカメラ座標系Ｒの点Ｐｒの座標をワールド座標系の点Ｐｗの座標に座標変換し、その点Ｐｗの座標を透視投影変換行列Ｍｖにより仮想視点座標系Ｖの点Ｐｖの座標（ｘｖ，ｙｖ，ｚｖ）に座標変換している。数５による座標変換結果を用いて、視点変換画像５０３の点Ｐｖの画素値を、対応する撮影画像５０２の点Ｐｒの画素値から算出することができる。
【００７７】
ただしカメラ２０の撮影画像からは、被写体までの距離情報が得られないので、例えば点Ｐｗが路面上、すなわちｚw＝０の平面上にあると仮定することで視点変換画像５０３の点Ｐｖの画素値を算出することができる。そして路面上にない被写体が撮影された領域のみ視点変換画像５０３の点Ｐｖの画素値を改めて計算する。
【００７８】
例えば撮影画像５０２における点Ｐｒが路面上の点Ｐｗではなく、Ｚw＝ｚw1（≠０）の平面上に存在する点Ｐｗ1であった場合は、視点変換画像５０３における対応点は点Ｐｖではなく点Ｐｖ1となる。カメラ２０の撮影画像の被写体が路面上に存在するか否かは、被写体までの距離により判断可能である。また被写体が路面上に存在しない場合は、その距離情報を用いることで視点変換画像５０３における対応点を算出可能である。
【００７９】
図６を参照して対応点の算出の例を説明する。まず画像処理装置１０は、ワールド座標系におけるカメラ座標系Ｒの原点位置と、点Ｐｒの座標の幾何的な関係と、距離修正部１０２が算出した被写体までの距離情報とを用いて、被写体の基準高さ平面５０１からの高さ、すなわち点Ｐｗ1のＺ座標であるｚw1の値を算出する。
【００８０】
画像処理装置１０は、点Ｐｗ1の基準高さ平面上の位置、すなわち点Ｐｗ1のＸ座標およびＹ座標を算出する。そして、画像処理装置１０は、カメラ５３の位置と、算出した点Ｐｗ1の位置から視点変換画像５０３における対応点Ｐv1の座標とを算出して、テーブルデータ１０７を補正する。
【００８１】
（テーブルデータ）
【００８２】
記憶部１４に格納される各テーブルデータ１０７は、予め被写体がすべて路面上に存在するとの仮定の下で計算された、撮影画像上の点Ｐｒと視点変換画像上の点Ｐｖとの対応関係を複数組について記述したものである。換言すると、テーブルデータ１０７は、被写体が基準高さ平面５０１内に存在することを前提に算出されている。
【００８３】
すなわち、カメラ座標系Ｒの所定の点Ｐｒ１の座標（ｘｒ１，ｙｒ１）、Ｐｒ２の座標（ｘｒ２，ｙｒ２）、・・・をそれぞれ上述の数５で仮想視点座標系Ｖの対応点への座標に変換して得られたものである。
【００８４】
ここで、２つの座標系で対応する点同士、すなわち画素同士の対応関係を座標対応情報と呼び、この座標対応情報がテーブルデータ１０７として作成されている。なお、テーブルデータ１０７においては、カメラ２０ａの焦点距離等が固定されているものとして、Ｚｒ座標の情報は省略されている。
【００８５】
以降の説明では、撮影画像５０２および視点変換画像５０３の画素のうち、テーブルデータ１０７に座標対応情報が記憶されている画素を座標対応画素、あるいは座標対応点と呼ぶ。すなわち、撮影画像５０２および視点変換画像５０３には、複数の座標対応点が予め設定されている。
【００８６】
テーブルデータ１０７を予め記憶部１４に記憶しておき、視点変換画像５０３を作成する際に参照することで、上述した数５の演算回数を低減することができ、座標変換に要する処理時間を短縮することができる。
【００８７】
なお、テーブルデータ１０７に予め記憶しておく座標対応情報が増加するほど、テーブルデータ１０７のデータ量が増加する。そこで、テーブルデータ１０７のデータ量を削減するため、撮影画像５０２の一部の画素についてのみ座標対応情報を予め記憶し、他の画素については補間処理により点Ｐｖの画素値を算出してもよい。テーブルデータ１０７は、カメラ２０のレンズの歪みなどを考慮して作成されてもよい。
【００８８】
上述の通り、テーブルデータ１０７は、予め被写体がすべて路面上に存在するとの仮定の下で計算されている。そのため、被写体が路面上に存在しない場合、すなわち高さを有する立体物である場合は、距離情報に基づき計算を行いテーブルデータ１０７を書き換える必要がある。以下では、このテーブルデータ１０７の書き換えを、テーブルデータ１０７の補正とも呼ぶ。
【００８９】
本実施例では、テーブル補正部１０３がテーブルデータ１０７を補正する。すなわちテーブル補正部１０３は、テーブルデータ１０７における立体物５１の領域に含まれる座標対応点を補正する。以下、補正対象の座標対応点を「補正対象座標対応点」と呼ぶ。
【００９０】
図７は、テーブルデータ１０７の一例を示す。テーブルデータ１０７は、撮影画像５０２の離散的な画素の座標と、その座標に対応する視点変換画像５０３の画素の座標との対応関係を定義する座標対応テーブルである。図７では、「対応関係番号」で示す各画素の座標対応情報が示されている。画像処理装置１０は、撮影画像５０２の各画素の座標ごとにテーブルデータ１０７を参照することにより、対応する視点変換画像５０３の画素の座標を演算する。
【００９１】
図８は、テーブルデータ１０７から補正対象座標対応点を抽出し、補正前後の座標を示したテーブル１０７ａである。テーブル１０７ａでは、テーブルデータ１０７の補正に必要な立体物距離も併記している。図８に示すテーブル１０７ａは、説明のために例示したにすぎず、ＲＡＭ１３や記憶部１４に格納される必要はない。
【００９２】
本実施例では、テーブル補正部１０３がテーブルデータ１０７の各座標対応点に関する座標対応情報のうち、上記の補正対象座標対応点に関する座標対応情報を補正することで、テーブルデータ１０７を補正する。
【００９３】
具体的には、補正対象座標対応点ｏ１、ｏ２、ｏ３、・・・、ｏｉについて、これらの視点変換画像上の座標、すなわち仮想視点座標系Ｖにおける座標である、（ｘｖ＿ｏ１，ｙｖ＿ｏ１）、（ｘｖ＿ｏ２，ｙｖ＿ｏ２）、（ｘｖ＿ｏ３，ｙｖ＿ｏ３）、・・・、（ｘｖ＿ｏｉ，ｙｖ＿ｏｉ）を、（ｘｖ＿ｏ１’，ｙｖ＿ｏ１’）、（ｘｖ＿ｏ２’，ｙｖ＿ｏ２’）、（ｘｖ＿ｏ３’，ｙｖ＿ｏ３’）、・・・、（ｘｖ＿ｏｉ’，ｙｖ＿ｏｉ’）にそれぞれ補正する。前述の通り、テーブル補正部１０３は、立体物距離を用いて補正する。
【００９４】
仮に、カメラ２０ａの撮影画像の全領域に立体物が撮影されていた場合は、テーブルデータ１０７の全ての座標対応点について、視点変換画像上の座標が書き換えられることとなる。しかしこの場合でも、テーブルデータ１０７における撮影画像上の座標は書き換えられない。
【００９５】
（距離画像と補正の必要性）
【００９６】
図９（１）は、前カメラ２０ａの撮影画像５０５を示す。図９（２）は、距離検出部３０が取得した距離画像５０６を示す図、図９（３）は理想的な距離検出部で取得した距離画像５０７を示す図である。図９（２），（３）では、距離を濃淡で表している。
【００９７】
図９（１）に示すように、撮影画像５０５には、左手に位置する立体物５１と、中央の下から上へ延びる白線ＬＬ，ＬＲとが含まれている。図９（１）の下部には、マーカ５２があり、図９（１）の上部には地平線５４がある。
【００９８】
図９（２）に示すように、距離検出部３０が取得した距離画像５０６では、図２にて示したように撮影画像５０５のうちの一部が測定されている。立体物５１は、符号５１０で示すようにその一部が欠けて示されている。これは、距離検出部３０の測定範囲が前カメラ２０ａの測定範囲（撮影範囲、平面画像取得範囲）よりも狭いためである。
【００９９】
もしも仮に、図２（２）で述べた理想的な距離検出部３０ｒを用いることができるならば、図９（３）に示す距離画像５０７が得られる。理想的な距離画像５０７では、符号５１１で示すように、立体物５１の全体形状が測定される。
【０１００】
図１０（１）は、図９（２）の符号５１０付近を拡大し、立体物５１の輪郭を重畳した図である。図１０（２）は、図１０（１）において測定範囲の境界を示す図である。図１０（３）は、図１０（２）の図に対して、テーブルデータ１０７の座標対応画素を重畳した図である。
【０１０１】
図１０（３）における座標対応画素は、バツ印（×）、丸印（○）、三角印（△）の３種類で示している。バツ印は、距離情報が得られている点を示す。丸印は、立体物５１に該当する箇所であって、距離情報が得られていない点を示す。三角印は、地面に該当する箇所であって、距離情報が得られていない点を示す。
【０１０２】
例えば符号５１２で示す丸印は、立体物５１の一部なので、立体物５１の他の部位と略同一の距離に認識されるべきである。符号５１３で示す三角印の点は、地面に含まれる点であるため、符号５５で示す地面部分と略同一の距離に認識されるべきである。
【０１０３】
そこで、距離修正部１０２は、後述する処理により、図１０（４）に示すように、距離情報を補正する。すなわち、距離修正部１０２により、図８に示した立体物距離が算出される。テーブル補正部１０３は、算出された立体物距離を用いて、テーブルデータ１０７を補正する。これにより、テーブルデータ１０７の全ての座標対応画素において、適切な変換が行われる。
【０１０４】
（画像認識部の動作例）
【０１０５】
図９（１）および図１１を参照して、画像認識部１０１の動作例を説明する。画像認識部１０１は、図９（１）に示すカメラ２０ａの撮影画像５０５を処理対象として、前述の色情報を用いた手法等によるセグメント分割処理により、撮影画像を複数の領域、すなわちセグメントに分割する。
【０１０６】
図１１（１）では、立体物５１が符号６０１で示す１つの領域と認識されており、マーカ５２が符号６０３で示すように４つの領域に認識されている。符号６０２，６０４は、道路の白線に対応する。符号６００は地平線に対応する。
【０１０７】
図１１（２）は、図１１（１）に示すそれぞれのセグメントに便宜的に記号を付した図である。図１１（２）に示すように、画像認識部１０１により撮影画像はＳＧ１１〜ＳＧ１９の９セグメントに分割されている。ただし、このセグメント分割では、各セグメントが立体物と路面のどちらであるかは区別されていない。
【０１０８】
（距離修正部の動作）
【０１０９】
距離修正部１０２は、セグメントごとに、そのセグメント内の座標対応点の距離を、次の３つのいずれかの方法で修正する。
【０１１０】
第１の方法は、単純平均である。距離修正部１０２は、セグメント内の全ての座標対応点の距離情報の平均値を算出し、この平均値を処理対象セグメント内の全ての座標対応点の立体物距離とする。すなわち第１の方法によれば、セグメント内の全ての座標対応点は同一の立体物距離を有する。第１の方法を用いると、図１０（３）のバツ印のうち立体物５１に該当する距離情報がｄｎ（ｎは立体物５１に含まれるバツ印の個数）であるとき、図１０（３）の丸印５１２には距離情報の平均値であるΣｄｎ／ｎを与えることとなる。
【０１１１】
第２の方法は、１次近似である。距離修正部１０２は、セグメント内の座標対応点について、それぞれの座標値と距離情報の相関を一次関数で近似する。距離修正部１０２は、その近似式に基づき、それぞれの座標対応点の立体物距離を決定する。すなわち第２の方法によれば、例えば、車両１に対して斜めに正対する壁の距離などを正確に算出することができる。第２の方法を用いると、図１０（３）のバツ印のうち立体物５１に該当する距離情報ｄｎ（ｎは立体物５１に含まれるバツ印の個数）に対し最小二乗法を用いて、座標値（ｘ，ｙ）に対する距離情報ｄをｄ＝ｆ（ｘ，ｙ）として近似できるとき、図１０（３）の丸印５１２の距離情報もｆ（ｘ，ｙ）を用いてから求めることとなる。
【０１１２】
第３の方法は、多次元近似である。第３の方法は、第２の方法における近似を２次以上の多次元関数とするものである。第３の方法によれば、複雑な形状を有する物体の距離も正確に算出できる。
【０１１３】
たとえば、図６に示すワールド座標系において距離検出部３０を点Ｓ（ｘｓ，ｙｓ，ｚｓ）に設置したとき、撮影画像５０２中の点Ｐｒに対応する距離情報を示す点Ｐｗ１の座標は次のように求めることができる。点Ｓから点Ｐｗ１に引く線分がなす方位角をθａ（Ｙｘ軸と平行のときα＝０）、仰角をθｅとすると、線分の長さである距離情報ｄを用いてｘｗ１＝ｄ・ｃｏｓθｅ・ｓｉｎθａ＋ｘｓ、ｙｗ１＝ｄ・ｃｏｓθｅ・ｃｏｓθａ＋ｙｓ、ｚｗ１＝Ｒ・ｓｉｎθｅ＋ｚｓとして得ることができる。このとき、数１、数３に示すアフィン変換は、図６に示す各座標値を用いて、それぞれ数６、数７のように表すことができる。
【０１１４】
【数６】
2019185520.tif 000008
【０１１５】
【数７】
2019185520.tif 000009
【０１１６】
数６と数７を組み合わせて、撮影画像５０２の点Ｐｒを視点変換画像５０３の点に座標変換する式（数８）が得られる。
【０１１７】
【数８】
2019185520.tif 000010
【０１１８】
以上より、距離情報を用いることにより、撮影画像５０２中の点Ｐｒは視点変換画像５０３において、点Ｐｖから点Ｐｖ１に補正されることとなる。
【０１１９】
（画像処理装置の動作）
【０１２０】
図１２を参照して、視点変換画像をユーザインターフェース部４０に表示する際の画像処理装置１０の動作を説明する。以下に説明する画像処理装置１０の動作は、所定の時間ごとに実行される。以下に説明する各ステップの実行主体は、ＣＰＵ１１である。但し、図１２に示すステップ図は一例であり、以下に記載する処理が実現できるのであれば例えばＳ１１とＳ１２の順番が逆であってもよい。
【０１２１】
まず始めに、ＣＰＵ１１は、距離検出部３０から距離画像を取得する（Ｓ１１）。ＣＰＵ１１は、カメラ２０から撮影画像を取得する（Ｓ１２）。ＣＰＵ１１は、ステップＳ１２で取得した距離画像を画像認識部１０１に処理させることにより、セグメント分割を実行させる（Ｓ１３）。ステップＳ１３の例は、図１１で説明したとおりである。
【０１２２】
ＣＰＵ１１は、以下に説明するステップＳ１５〜Ｓ１８を、ステップＳ１３で算出された各セグメントに対して順番に実行する（Ｓ１４）。全てのセグメントについて、平行してＳ１５〜Ｓ１８の処理を実行してもよい。ここでは、処理対象を変化させて１つずつ順番にセグメントを処理する例を説明する。処理対象のセグメントを処理対象セグメントと呼ぶ。
【０１２３】
ＣＰＵ１１は、処理対象セグメント内の距離情報に基づいて、その処理対象セグメントが立体物に対応する領域であるか、それとも路面に対応する領域であるかを判断する（Ｓ１５）。
【０１２４】
処理対象セグメントが立体物であるか否かの判断は、例えば以下のように行うことができる。すなわち、カメラ２０の取付位置および取付姿勢は既知なので、対応付け部１０４は、撮影対象を路面と仮定することにより、撮影画像内の位置と距離との関係を予め算出できる。したがって、セグメント内の距離情報と、そのセグメントの撮影画像内の位置から算出される前述の距離との差を比較することにより、そのセグメントにおける被写体が路面であるか否か判断できる。
【０１２５】
ＣＰＵ１１は、処理対象セグメントにおける被写体が立体物であると判断する場合はステップＳ１６に進み、そのセグメントにおける被写体が路面であると判断する場合はステップＳ１８に進む。距離が無限大または測定不能であると判定された場合および処理対象セグメントの被写体が空であると判断する場合は、ステップＳ１８に進む。
【０１２６】
ステップＳ１６において、ＣＰＵ１１は、距離修正部１０２を用いて処理対象セグメント内の全ての座標対応点の距離情報を修正する。すなわちＣＰＵ１１は、立体物距離を算出する。
【０１２７】
続いてＣＰＵ１１は、テーブル補正部１０３に対し、テーブルデータ１０７における処理対象セグメント内の全ての座標対応点について書き換えさせ（Ｓ１７）、その後ステップＳ１９へ進む。
【０１２８】
ただしステップＳ１７において補正されたテーブルデータ１０７は、後述するステップＳ１９の実行完了後に破棄されるものである。すなわち、ステップＳ１７の処理は、テーブルデータ１０７の一時的なコピーに対する補正である。
【０１２９】
ステップＳ１５において、処理対象セグメントが路面であると判断されると、ステップＳ１８が実行される。この場合、ＣＰＵ１１は、テーブル補正部１０３にテーブルデータ１０７を補正させることなく、ステップＳ１９へ進む。すなわちステップＳ１８では、特段の処理を行わないので、ステップＳ１５において路面であると判断された場合（Ｓ１５：ＮＯ）、そのままステップＳ１９へ進んでもよい。
【０１３０】
ステップＳ１８では、ＣＰＵ１１は、全てのセグメントを処理対象としたか否かを判断する。ＣＰＵ１１は、未処理のセグメントが存在すると判断すると、そのセグメントを処理対象に設定してステップＳ１５へ戻る。ＣＰＵ１１は、全てのセグメントを処理対象にしたと判断すると、ステップＳ１９へ進む。
【０１３１】
ステップＳ１９において、ＣＰＵ１１は、ステップＳ１７で画像変換部１０５により補正されたテーブルデータ１０７を用いることにより、カメラ２０の撮影画像を仮想視点５３から見た視点変換画像に変換する。そして、ステップＳ１９では、ユーザインターフェース制御部１０６が視点変換画像をユーザインターフェース部４０に出力し、本処理を終了する。
【０１３２】
このように構成される本実施例によれば、以下の作用効果を奏する。
【０１３３】
本実施例に係る画像処理装置１０は、撮影画像を取得するカメラ２０と、距離画像を取得する距離検出部３０と、撮影画像において立体物に対応する立体物領域を含む領域を抽出する画像認識部１０１と、距離画像に基づき立体物領域の奥行き情報を算出する距離修正部１０２と、撮影画像を座標変換するための座標変換情報であるテーブルデータ１０７を距離修正部１０２が算出した立体物領域の奥行き情報に基づき補正するテーブル補正部１０３と、テーブル補正部１０３により補正されたテーブルデータ１０７を用いて撮影画像を座標変換した視点変換画像を生成する画像変換部１０５と、を備える。したがって、本実施例によれば、距離画像の値を利用して平面画像中の立体物領域を立体的に処理し、視点変換画像を得ることができる。
【０１３４】
本実施例に係る画像処理装置１０では、距離検出部３０が距離画像を取得する距離画像取得範囲Ａ３０は、カメラ２０が平面画像を取得する平面画像取得範囲Ａ２０よりも小さく、かつ、平面画像取得範囲Ａ２０の一部に重なるように設定されている。したがって、本実施例の画像処理装置１０によれば、カメラ２０と比較して測定範囲が狭い距離画像を用いる場合でも、距離画像の測定範囲を超えた広範囲の立体物について高精度な視点変換画像を生成することができる。
【０１３５】
本実施例に係る画像認識部１０１は、撮影画像の輝度、明度、彩度、および明度の少なくとも１つに基づき立体物領域を含む複数のセグメントの輪郭を抽出する。そのため画像認識部１０１は撮影画像を容易に立体物領域を含む複数のセグメントに分割することができる。
【０１３６】
本実施例では、テーブルデータ１０７は、撮影画像上の変換元座標と視点変換画像上の変換先座標との組み合わせを複数含む。テーブル補正部１０３は、距離画像における立体物領域の距離情報に基づき、図８に示すように変換先座標、すなわち視点変換画像上の座標を補正する。これにより本実施例では、距離画像を取得していない測定範囲外についても距離情報を与えることができる。
【０１３７】
本実施例では、テーブルデータ１０７は、撮影画像における被写体が路面上の領域であることを前提として予め作成される。画像認識部１０１は、撮影画像に含まれる被写体ごとに撮影画像を複数のセグメントに分割する。テーブル補正部１０３は、距離画像に基づき複数のセグメントが立体物領域であるか否かをそれぞれ判断し（図１２のＳ１５）、立体物領域であると判断したセグメント内の変換元座標に対応する変換先座標をテーブルデータ１０７において補正する（Ｓ１７）。これにより本実施例では、立体物ではない領域についてはテーブルデータ１０７の補正を行う必要がなく、処理時間を短縮することができる。
【０１３８】
本実施例では、テーブルデータ１０７は、撮影画像の被写体が基準高さ平面内に存在することを前提に算出される。テーブル補正部１０３は、距離修正部１０２が算出した立体物領域の奥行き情報を用いて被写体の基準高さ平面５０１からの高さ、および被写体の基準高さ平面上の位置を算出する。さらにテーブル補正部１０３は、視点変換の基準位置、算出した被写体の基準高さ平面からの高さ、および算出した被写体の基準高さ平面上の位置を用いてテーブルデータ１０７を補正する。
【０１３９】
（変形例１）
【０１４０】
第１実施例の変形例を説明する。以下、第１実施例との相違を中心に述べる。第１実施例におけるテーブルデータ１０７は、上述した数５により表される撮影画像上の点Ｐｒと視点変換画像上の点Ｐｖとの対応関係を示すものであった。
【０１４１】
しかし、テーブルデータ１０７は、数１により表される撮影画像上の点Ｐｒと三次元空間上の点Ｐｗとの対応関係を示すものであってもよい。本変形例におけるテーブルデータを第１実施例におけるテーブルデータ１０７と区別するために、以下ではテーブルデータ１０７ｂと呼ぶ。
【０１４２】
本変形例においては、テーブルデータ１０７ｂを補正することにより、３次元区間上に投影される撮影画像が変形される。画像変換部１０５は、３次元空間上に投影された撮影画像を仮想視点から撮影した画像、すなわち視点変換画像を作成する。
【０１４３】
図１３は、テーブルデータ１０７ｂの一例を示す。テーブルデータ１０７ｂは、数１により表される撮影画像５０２上の点Ｐｒと三次元空間上の点Ｐｗとの対応関係を示すものである。ただし本変形例では、補正前のテーブルデータ１０７ｂにおいて、３次元空間上の点ＰｗのＺｗ座標の値は全てゼロである。すなわち補正前のテーブルデータ１０７ｂは、撮影画像５０２上の点Ｐｒと三次元空間上のＺｗ＝０の平面上の点Ｐｗとの対応関係を示す。
【０１４４】
このように構成される本変形例によれば、事前に想定していない仮想視点がユーザにより設定された場合であっても、テーブルデータ１０７ｂを用いて視点変換画像を作成することができる。
【０１４５】
（変形例２）
【０１４６】
第２の変形例を説明する。第１実施例のテーブルデータ１０７は、被写体がすべて路面上に存在するとの仮定の下で予め作成されていた。しかし、テーブルデータ１０７を予め作成せず随時作成してもよい。この場合、図１２に示す処理において、テーブルデータ１０７が作成される。すなわちステップＳ１７において、テーブルデータ１０７のうち該当する箇所が作成される。テーブルデータ１０７を随時作成することにより、記憶領域の使用量を低減することができる。
【０１４７】
（変形例３）
【０１４８】
第３変形例を説明する。第１実施例では、車両１は前カメラ２０ａ、左カメラ２０ｂ、右カメラ２０ｃ、および後カメラ２０ｄの４つのカメラを備えた。しかし車両１は少なくとも１つのカメラを備えればよい。車両１は、５つ以上のカメラを備えてもよい。
【０１４９】
（変形例４）
【０１５０】
第４変形例を説明する。第１実施例では、画像認識部１０１がセグメント分割処理を行うことで撮影画像を複数の領域に分割する。そして、第１実施例では、立体物に対応する領域の座標対応点を処理対象として、テーブル補正部１０３がテーブルデータ１０７の補正を行う。
【０１５１】
これに代えて、画像認識部１０１は、撮影画像内で立体物に対応する領域のみを特定してもよい。例えば、距離画像において奥行き情報が段階的に変化していない部分を抽出し、その部分に対応する同一被写体の領域を撮影画像において特定することで、立体物に対応する領域を撮影画像内で特定することが可能である。
【０１５２】
（変形例５）
【０１５３】
第５変形例を説明する。第１実施例では、テーブルデータ１０７は、被写体がすべて路面上に存在するとの仮定の下で予め作成されていた。しかし、一定の立体形状に沿って存在するとの仮定の下でテーブルデータ１０７を予め作成してもよい。例えば、車両中心を原点とした球を設定して、テーブルデータ１０７を作成しても良い。
【０１５４】
なお、本発明は上記各実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記各実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。
【０１５５】
上記の各構成、機能、処理部、および処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。
【０１５６】
上記の各構成、および機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。  各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【０１５７】
制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【０１５８】
本発明の各構成要素は、任意に取捨選択することができ、取捨選択した構成を具備する発明も本発明に含まれる。さらに特許請求の範囲に記載された構成は、特許請求の範囲で明示している組合せ以外にも組み合わせることができる。
【符号の説明】
【０１５９】
１：車両、１０：画像処理装置、２０ａ〜２０ｄ，２０：カメラ、３０：距離検出部、４０：ユーザインターフェース部、１０１：画像認識部、１０２：距離修正部、１０３：テーブル補正部、１０４：対応付け部、１０５：画像変換部、１０６：ユーザインターフェース制御部、１０７：テーブルデータ、１０８：距離画像認識部
【図１】
2019185520.tif 000011
【図２】
2019185520.tif 000012
【図３】
2019185520.tif 000013
【図４】
2019185520.tif 000014
【図５】
2019185520.tif 000015
【図６】
2019185520.tif 000016
【図７】
2019185520.tif 000017
【図８】
2019185520.tif 000018
【図９】
2019185520.tif 000019
【図１０】
2019185520.tif 000020
【図１１】
2019185520.tif 000021
【図１２】
2019185520.tif 000022
【図１３】
2019185520.tif 000023