(57)【特許請求の範囲】
【請求項１】
入力画像データを取得する画像入力手段と、
動作を規定する２以上の命令によって画像変換に関わる動作を実行することが可能な画像変換手段と、
前記画像入力手段と前記画像変換手段との間でのデータの送受に用いられるラインメモリと、
前記画像入力手段によって前記ラインメモリ上に取得された前記入力画像データと変換後の変換後画像データとの対応関係が記述された変換指定手段と、を含む画像変換装置を２以上含む画像変換システムであって、
前記変換指定手段は前記入力画像データの１の領域及び前記変換後画像データの１の領域との対応を三角形パッチによって記述し、入力側の２以上の前記三角形パッチの縦サイズを固定するとともに、底辺を前記ラインメモリの横のラインにそろえて短冊状にし、前記変換後画像データの２以上の前記三角形パッチを可変形状とすることを特徴とする画像変換システム。
【請求項２】
請求項１に記載の画像変換システムにおいて、
前記２以上の前記画像変換装置は同期を取りながら同じ記憶媒体上に変換結果を出力することを特徴とする画像変換システム。
【請求項３】
請求項１に記載の画像変換システムにおいて、
前記画像変換システムは、更に映像表示手段を含み、
前記２以上の前記画像変換装置は同期を取りながら前記映像表示手段上に変換結果を出力することを特徴とする画像変換システム。
【請求項４】
請求項２に記載の画像変換システムにおいて、
前記画像変換システムは、更に映像表示手段を含み、
前記２以上の前記画像変換装置から出力された変換結果を結合して前記映像表示手段より出力可能なことを特徴とする画像変換システム。
【請求項５】
請求項２乃至４のいずれか１項に記載の画像変換システムにおいて、
前記２以上の前記画像変換装置は、前記変換指定手段に記述された割り込み命令により同期を取ることを特徴とする画像変換システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像変換装置及び画像処理方法、特に撮像手段から取得された画像データに対して様々な変換画像を高速に取得する事に関する。
【背景技術】
【０００２】
近年、複数の画像入力装置を搭載した車載システムが広まりつつある。例えば、自動車の前後左右に一つずつカメラを設置し、周辺の環境全てを映像でドライバーたる使用者に提示する事で運転時の安全性を高めるものがある。
【０００３】
このようなシステムにおいては、使用者に対してより分かりやすい画像を表示するため、疑似的な視点から見た画像（例えば車両の上部から俯瞰したような映像）を生成することがある。この際、それぞれの入力画像に対して疑似的な視点から見た画像になるように変換処理をかける必要がある。
【０００４】
また、俯瞰変換の様な画像だけでなく、画像処理を容易にする為にレンズの歪みを補正した画像も求められる。この場合も前処理として画像に変換を施す必要がある。この様に用途に応じた変換画像を取得する事がニーズとして求められている。用途は一つであるとは限らず、例えば一つの入力映像からユーザに見せるための俯瞰画像と、画像処理をする為の歪み補正画像を取る事が求められる。
【０００５】
変換画像を取得する構成として例えば特開２００３−３３３５８８号公報（特許文献１）に見られるように、撮像装置と補正手段と記憶媒体がバスを介して繋がっている構成が考えられる。
【０００６】
また、特開２００１−１４５０１２号公報（特許文献２）や特開２００７−１１４９２３号公報（特許文献３）では、撮像装置と補正手段の中間に少量のバッファを設けて、映像入力から画像変換までの処理時間を短縮する工夫がなされている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００３−３３３５８８号公報
【特許文献２】特開２００１−１４５０１２号公報
【特許文献３】特開２００７−１１４９２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、自動車の運転中には検知遅れが発生することで、事故につながる可能性がある場合も多い。従って、自動車に搭載するような画像処理装置では、障害物検知の様にリアルタイム性が求められるものがある。
【０００９】
特許文献１記載の技術では、一旦撮像装置から入力された画像データはバスを介して記憶媒体に保存され、その画像データを画像変換装置にて変換する構成を取っている。この構成では画像データの転送が撮像装置から記憶媒体、記憶媒体から画像変換装置、画像変換装置から記憶媒体の合計３回発生し、バスの負荷が大きくなる問題がある。また、一旦１フレーム分の画像データを記憶媒体に保存した後に画像変換装置によって起動する為、撮像装置で画像を取得し、画像変換装置によって画像変換するまでの処理時間がかかる。
【００１０】
特許文献２及び特許文献３記載の技術では、撮像装置と画像変換装置の間に少量のバッファが設けられ、撮像装置から入って来たデータが順次画像変換装置に入力される。これによって、特許文献１の撮像装置から記憶媒体、記憶媒体から画像変換装置間のデータ転送が無くなり、バスの負荷を低減でき、かつ画像入力から画像変換までの処理時間も短縮される。しかし、一つの入力画像から一度に複数の画像を出力したり、画像変換の途中で変換装置の設定を変えたりする柔軟な変換を行う事ができない。
【００１１】
本発明の目的は、撮像手段から入力された映像データを記憶媒体に一旦全て保存することなく複数の変換結果を出力することが可能な画像変換を可能とする手段を提供することにある。
【００１２】
本発明の前記並びにその他の目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１３】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次の通りである。
【００１４】
本発明の代表的な実施の形態に関わる画像変換装置は、入力画像を取得する画像入力手段と、動作を規定する２以上の命令によって画像変換に関わる動作を実行することが可能な画像変換手段と、画像入力手段と画像変換手段との間でのデータの送受に用いられるラインメモリと、画像入力手段によってラインメモリ上に取得された入力画像データと変換後の画像データとの対応関係が記述された変換指定手段と、を含み、変換指定手段は、命令を組み合わせることによって記述され、それらの命令を解釈することで、画像変換手段の動作や出力先を指定又は動作途中で変更可能なことを特徴とする。
【００１５】
これらの画像変換装置において、画像変換手段はラインメモリ上の入力画像データに対して複数の画像を生成することが可能なことを特徴としても良い。
【００１６】
これらの画像変換装置において、更に同期手段を有し、ラインメモリに入力される画像データの入力待ちを指定することが可能な待機命令が動作を規定する２以上の命令の一命令として存在し、待機命令に従って同期手段はラインメモリへの画像入力と、画像変換手段との同期を取ることを特徴としても良い。
【００１７】
これらの画像変換装置において、画像変換手段はラインメモリ上の任意の位置から入力画像データを読み出すことが可能であることを特徴としても良い。
【００１８】
これらの画像変換装置において、変換指定手段は汎用の記憶媒体上に２種以上が配置され、汎用の記憶媒体上の２種以上の変換指定手段のうち１を用いるよう選択可能なことを特徴としても良い。
【００１９】
これらの画像変換装置において、変換指定手段は汎用演算器によって書き換え可能なことを特徴としても良い。
【００２０】
これらの画像変換装置において、更に映像表示手段を含み、一つの映像入力に対しての複数の変換後データを映像表示手段より出力可能なことを特徴としても良い。
【００２１】
これらの画像変換装置において、変換指定手段は入力画像データの１の領域及び変換結果の１の領域との対応を三角形パッチによって記述し、入力側の２以上の三角形パッチの底辺をそろえて短冊状にし、変換結果の２以上の三角形パッチを可変形状とすることを特徴としても良い。
【００２２】
本発明の代表的な実施の形態に関わる画像変換システムは、画像入力手段と、画像変換手段と、ラインメモリと、を含む画像変換装置を２以上含み、２以上の画像変換装置は同期を取りながら同じ記憶媒体上に変換結果を出力することを特徴とする。
【００２３】
本発明の代表的な実施の形態に関わる画像変換システムは、画像入力手段と、画像変換手段と、ラインメモリと、を含む画像変換装置を２以上含み、該画像変換システムは更に映像表示手段を含み、２以上の画像変換装置は同期を取りながら映像表示手段上に変換結果を出力することを特徴としても良い。
【発明の効果】
【００２４】
本発明に関わる画像変換装置を用いる事で、小さい量のラインメモリで柔軟な変換を行うことが可能となる。
【００２５】
また、本発明に関わる画像変換装置を用いる事で、様々な変換画像を高速に取得することが可能となる。
【００２６】
また、本発明に関わる画像変換装置を複数組み合わせることで、画像出力に対して多様な応用を行うことが可能となる。
【図面の簡単な説明】
【００２７】
【図１】本発明の第１の実施の形態に関わる画像変換装置の使用環境を表すブロック図である。
【図２】本発明に関わる入力画像、歪み補正画像及び補正画像を示す概念図である。
【図３】三角形パッチによる変換の基本例を表す概念図である。
【図４】三角形パッチを用いた変換の例を表す概念図である。
【図５】変換指定手段の三角形パッチの記述についての一例である。
【図６】図４の変換の一部を省略する形で記載した三角形パッチの記述についての一例である。
【図７】図６の三角形パッチの記述が図４のどこについてのものかを表す図である。
【図８】画像変換処理部の詳細を表す図である。
【図９】一つの入力画像を複数の出力画像に変換する変換リストについての概念図である。
【図１０】ラインメモリの概略説明図である。
【図１１】線形補間の説明を補助する図である。
【図１２】視点変換を順次行う構成を示す概念図である。
【図１３】複数の当該画像変換装置を搭載した画像変換システムの構成例を示すブロック図である。
【図１４】図１３の複数の当該画像変換装置を搭載した画像変換システムの構成を用いた周辺表示システムの構成を表す概念図である。
【発明を実施するための形態】
【００２８】
以下の実施の形態においては、便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明する。しかし、特に明示した場合を除き、それは互いに無関係なものではなく、一方は他方の一部又は全部の変形例、詳細、補足説明などの関係にある。また、以下の実施の形態において、要素の数など（個数、数値、量、範囲などを含む）に言及する場合、特に明示した場合及び原理的に明らかに特定の数に限定される場合などを除き、その特定の数に限定されるものでなく、特定の数以上でも以下でも良い。
【００２９】
以下、図を用いて本発明の実施の形態を説明する。
【００３０】
（第１の実施の形態）
図１は、本発明の第１の実施の形態に関わる画像変換装置１００１の使用環境を表すブロック図である。
【００３１】
画像変換装置１００１にはビデオＩ／Ｆを介して、カメラ等の撮像手段１００２が接続されている。
【００３２】
撮像手段１００２は撮影により得られたデジタル画像データをライン毎に画像変換装置１００１に出力する画像入力手段である。静止画や動画、赤外線画像、温度分布画像など、取得する画像の性質は問わない。出力する画像を取得するのに最も適した入力画像を取得できれば良い。
【００３３】
画像変換装置１００１の内部構成は、ラインメモリ１００３、画像変換処理部１００４、バッファ１００５、命令デコーダ１００６を含んで構成される。
【００３４】
ラインメモリ１００３は数本〜数十本のラインデータを保存する容量を持つＲＡＭなどの記憶媒体である。
【００３５】
画像変換処理部１００４は、ラインメモリ１００３に格納された任意位置のデータを読み出し、命令デコーダ１００６経由で汎用演算手段１０１０により指定された手段で画像データの変換を行う。画像変換処理部１００４は、変換後の画像データを後段のバッファ１００５に対して出力する。
【００３６】
バッファ１００５は、バス１００８を経由して外部に変換後の画像データを出力する際に、データの一次記憶用に用いられるＲＡＭなどの記憶媒体である。変換後の画像データはバッファ１００５の適切な位置に格納され、後述する記憶媒体１００７や映像表示手段１０１１に出力される。
【００３７】
命令デコーダ１００６は、バス１００８経由で通知される変換命令をデコードし、その変換内容を画像変換処理部１００４に伝達するデコーダ回路である。
【００３８】
バス１００８は、画像変換装置１００１と画像変換装置１００１外部とを接続するための汎用バスである。
【００３９】
画像変換装置１００１は、バス１００８を介して、記憶媒体１００７、汎用演算手段１０１０、映像表示手段１０１１と接続されている。
【００４０】
記憶媒体１００７は、汎用演算手段１０１０が動作するためのプログラムのほか、本発明に関わる変換指定手段１００９が記憶されている不揮発性もしくは／及び揮発性の記憶媒体である。なお、変換指定手段１００９は、汎用の記憶媒体１００７に保存されているため、汎用演算手段１０１０、映像表示手段１０１１などからもデータを読み書きすることが可能である。
【００４１】
変換指定手段１００９は、入力画像と出力画像の対応関係を記述したもの（命令セット）である。本実施の形態では、三角形パッチに基づいた変換指定を用いることを想定する。これは、画像を細かい三角形の小領域に区分して、変換元画像と変換前画像のそれぞれの頂点の対応関係を記述したものである。変換指定手段１００９はラインメモリ上の一つの変換元頂点（三角形パッチ）に対して複数の変換先頂点（三角形パッチ）を指定する事が可能である。
【００４２】
汎用演算手段１０１０は、ＣＰＵなどの中央処理装置を想定する。
【００４３】
映像表示手段１０１１は、フラットパネルディスプレイ、ヘッドアップディスプレイ等の映像表示手段である。ここでは、画像変換装置１００１による変換後の映像を出力することも想定されている。
【００４４】
次に、この図１に基づき、どのような処理がなされているかを説明する。
【００４５】
画像変換処理部１００４が変換に必要な変換前の画像データがラインメモリ１００３に蓄積されたことを検知すると、画像変換処理部１００４はこの変換前の画像データを読み込み、画像変換を開始する。ここで言う「画像変換」とは、図２のような変換処理を指す。
【００４６】
図２は、本発明に関わる入力画像、歪み補正画像及び補正画像を示す概念図である。本図（Ａ）は撮像手段１００２によって得られたそのままの画像データである。本図（Ｂ）は、撮像手段１００２のレンズ歪み補正後の変換画像、本図（Ｃ）は上空に視点を持つ第三者視点による俯瞰に基づく変換画像である。
【００４７】
これらの（Ａ）から（Ｂ）、への変換は変換指定手段１００９に規定された命令を命令デコーダ１００６に送ることで指定される。
【００４８】
命令デコーダ１００６は、この記憶媒体１００７に記録された変換指定手段１００９を受領する。この際、汎用演算手段１０１０が変換指定手段１００９の適切な命令を読み出し、命令デコーダ１００６に出力する。命令デコーダ１００６は受け取った命令をデコードし、画像変換処理部１００４に出力する。画像変換処理部１００４は、デコードされた命令に基づき変換処理を実行することとなる。
【００４９】
次に、本実施の形態の一例として三角形パッチによる画像変換について説明する。図３は三角形パッチによる変換の基本例を表す概念図である。同図（Ａ）は画像変換処理部１００４への入力画像を示す。また同図（Ｂ）は画像変換処理部１００４からの出力画像を示す。
【００５０】
入力画像（Ａ）には二つの三角形パッチ３００２、３００３が存在する。三角形パッチ３００２の頂点は頂点３００４、３００６、３００７から構成される。また、三角形パッチ３００３の頂点は頂点３００４、３００５、３００６から構成される。
【００５１】
これらの二つの三角形パッチ３００２、３００３は、画像変換処理部１００４にて出力画像（Ｂ）の三角形パッチ３００９、３０１０に変換される。
【００５２】
頂点の対応は、入力画像の頂点３００４−３００７が出力画像の頂点３０１１−３０１４に対応する。
【００５３】
このような三角形パッチを用いて様々な変換を行う。図４は、三角形パッチを用いた変換の例を表す概念図である。この図においては１つの入力画像４００１を２つの変換方式で異なる出力画像を得ることを考える。なお、本図から図７に示す入出力画像は破線による短冊状に区切っている。この一つの短冊が画像上の一つのラインデータを示す。
【００５４】
出力画像４００３は樽型の歪みを持つレンズを用いて入力画像４００１の画像の歪みを補正する変換を想定している。一方、出力画像４００５は、入力画像４００１の縦方向の長さ（＝高さ）を２分の１にして出力する処理である。
【００５５】
「樽型の歪み」とは、例えば図２の画像（Ａ）に示すような、画像中心から外側に行くほど樽状に膨らんだ歪みのこと言う。
【００５６】
まず、入力画像４００１を仮定し、図のように三角形のパッチで入力画像を区切る。それぞれの三角形パッチの頂点を変換し、樽型の歪みを補正するように新たな三角形パッチを仮想上の出力画像４００３に形成する。入力画像上の三角形パッチ（ここでは入力画像４００１の三角形パッチ４００２）と出力画像上の三角形パッチ（ここでは出力画像４００３の三角形パッチ４００４）は一対一に対応する。
【００５７】
この例は、１つの入力画像に対して、１つの出力画像を形成するような変換である。しかし、１つの入力画像から２以上の出力画像を変換することも考えられる。図４では、出力画像４００３とあわせて、出力画像４００５も記載している。これは上述の１の入力画像から２以上の出力画像を得ることを想定したものである。この際入力画像４００１の三角形パッチ４００２と、出力画像４００３の三角形パッチ４００４、出力画像４００５の三角形パッチ４００６が対応する。
【００５８】
このように１つの入力画像から２以上の出力画像を変換する場合には、変換指定手段内には1対多の三角形パッチの変換の対応も記述する必要がある。
【００５９】
図５は、変換指定手段１００９の三角形パッチの記述についての一例である。
【００６０】
三角形パッチ間の対応は、ＴＲＩＡＮＧＬＥコマンド５００１で指定する。図５の５００１行から５００７行までは、この対応関係の指定する記述である。５００２行、５００４行、５００６行は入力画像（ＳＲＣ）の座標を指定している。一方、５００３行、５００５行、５００７行は、出力画像（ＤＳＴ）の座標を表す。図中のｘ＃、ｙ＃（＃は1以上の整数）がそれぞれ一つの頂点座標を表す。＃が等しい行がペアを示す。
【００６１】
このＴＲＩＡＮＧＬＥコマンド及び頂点の指定を繰り返すことで変換を記述する。ただし、三角形パッチの記述方法はこの限りではない。
【００６２】
例えば連続する三角形パッチは図３のように２つの頂点座標を共有する場合もある。従って、このような場合、この重複部分の冗長性を省くような命令形態にすることが望ましい。
【００６３】
図６は、図４の変換の一部を省略する形で記載した三角形パッチの記述についての一例である。また、図７は図６の三角形パッチの記述が図４のどこについてのものかを表す図である。
【００６４】
図６の三角形パッチの記述は、図７の変換対象７００１（入力画像４００１の範囲）から被変換対象７００２（出力画像４００３の範囲）、被変換対象７００３（出力画像４００５の範囲）への変換が該当する。
【００６５】
この三角形パッチの記述では、３頂点の対応（図５の５００２−５００７行）は三点リーダで省略して記載している。
【００６６】
図７の変換では、三角形パッチが変換対象７００１中には８つの三角形パッチが含まれる。従って、図６の三角形パッチの記述では、これらの８つの三角形パッチに対応する記述が必要である。このため、ＴＲＩＡＮＧＬＥコマンドは８つ必要となる。図６でも８つのＴＲＩＡＮＧＬＥコマンドが存在する（図６中の６００２）。
【００６７】
図６末尾にはＳＹＮＣコマンドが記載されている。このコマンドは、映像入力が別途指定のライン数が入力されるまで画像変換処理部１００４を待機させるコマンドである。ＳＹＮＣコマンドが待つライン数は予め定義しておくか、ＳＹＮＣコマンド毎に個別に設定する方法が考えられる。ただし、この図６ではＳＹＮＣコマンドが待つライン数は定数とする。
【００６８】
このＳＹＮＣコマンドが待つライン数を以下ＲＥＡＤ＿ＬＩＮＥＳと記載する。ＳＹＮＣコマンドは、直前のＳＹＮＣコマンドが発行された時点でのラインにＲＥＡＤ＿ＬＩＮＥＳを加えたラインの映像入力が終わるまで画像変換処理部１００４の処理を待機させる。
【００６９】
言い換えれば、ＲＥＡＤ＿ＬＩＮＥＳの値だけライン入力が終わるまで、ＳＹＮＣコマンドの次のコマンドは実行されない。
【００７０】
ＴＲＩＡＮＧＬＥコマンドとＳＹＮＣコマンドの他に、変換指定手段１００９中には1フレームの入力が終わったことを検知するＳＹＮＣＦコマンド、読み込みライン数指定手段等の様な画像変換手段の設定値を変更するＷＲＩＴＥコマンド、汎用演算手段に割り込みを通知するＩＮＴコマンド、変換指定の終了を示すＥＮＤコマンドを有する。
【００７１】
これらの変換指定手段１００９の命令群によって本実施例の画像変換装置は柔軟な使用方法を可能としている。
【００７２】
これらの変換指定手段１００９の命令群は、命令デコーダ１００６によって解釈される。また、画像変換処理部１００４に解釈された内容が反映される。
【００７３】
図８は画像変換処理部１００４の詳細を表す図である。これを用いてＳＹＮＣコマンド、ＴＲＩＡＮＧＬＥコマンドの座標の管理を実現する構成を説明する。
【００７４】
この画像変換処理部１００４は、同期制御手段８０００、ラインメモリアドレス生成手段８００５、出力画像オフセット指定手段８００６、変換リスト指定手段８００７、変換モード指定手段８００８、パッチ変換部８００９を含んで構成される。また、同期制御手段８０００は、読込ライン数指定手段８００１、初期読込ライン数指定手段８００２、ライン入力数カウンタ８００３、次同期待機ライン指定手段８００４を含む。
【００７５】
読込ライン数指定手段８００１は、ＲＥＡＤ＿ＬＩＮＥＳを指定するモジュールである。
【００７６】
初期読込ライン数指定手段８００２は、映像入力開始から何ラインの入力を待つかを指定するモジュールである。
【００７７】
同期制御手段８０００は、これらの情報を利用してラインメモリと画像変換手段との同期を取る。この際に、ライン入力数カウンタ８００３と次同期待機ライン指定手段８００４を持つ。
【００７８】
このライン入力数カウンタ８００３は、撮像手段１００２から垂直同期信号等を受け取る等して入力済みのライン数を保持する機能を持つ。
【００７９】
次同期待機ライン指定手段８００４は、次のＳＹＮＣ命令が発行される際に待機すべきラインを保持するバッファモジュールである。この次同期待機ライン指定手段８００４の初期値は、初期読込ライン数指定手段８００２で指定された値を用いる。ＳＹＮＣ命令が発行されると、ライン入力数カウンタ８００３と次同期待機ライン指定手段８００４とを比較して、ライン入力数カウンタ８００３が次同期待機ライン指定手段８００４で指定されるラインに到達するまで画像変換処理部１００４の処理を待機する。
【００８０】
両者の値が等しくなると画像変換処理部１００４の処理を再開する。変換指定手段で言い換えるとＳＹＮＣ命令の次の命令を実行する。ここで、画像変換手段内に同期手段を設けたが、これらの分配は本実施例に制限されるものではない。例えば、画像変換手段の外に同期指定手段を保持する構成も考えられる。
【００８１】
ＴＲＩＡＮＧＬＥコマンドに記述してあるＳＲＣ頂点座標は先述したとおり、仮想の入力画像の頂点座標である。このため、画像変換装置はその座標を一旦ラインメモリ上での座標に変換する必要がある。
【００８２】
この変換には、例えば、ライン入力数カウンタ８００３を見て、座標とラインメモリ１００３上のアドレスの整合性を取ればよい。ラインメモリアドレス生成手段８００５は、これらの処理の管理を行う。
【００８３】
このような座標変換の手段を内部に持つことで、外装値のユーザはラインメモリ１００３でのアドレスを気にすることなく変換指定手段の記述をすることが可能となる。
【００８４】
その様に変換された入力側の頂点座標を用いてラインメモリ１００３上から、画像変換手段内のパッチ変換部８００９に三角形パッチ内の画像を読み出し、変換を行う。出力側に関してもＴＲＩＡＮＧＬＥ命令に記述されたＤＳＴ座標は出力先のメモリ空間上のアドレスを指すわけではないため、その座標にアドレスオフセットを加算する必要がある。出力画像オフセット指定手段８００６は、そのオフセットを管理する手段である。
【００８５】
このようにして、画像変換手段は出力先の画像アドレスを管理する。
【００８６】
変換リスト指定手段８００７は、変換リストの記憶媒体上のアドレスを保持し、命令デコーダが読み込む変換リストを指定する。変換リスト指定手段８００７の初期値は汎用演算装置などを用いて設定する。
【００８７】
上述した変換指定手段１００９のコマンド群を用いて図４及び図７に示した様に一つの画像を複数の画像に変換する変換リストについて図９を用いて説明する。
【００８８】
図９は一つの入力画像を複数の出力画像に変換する変換リスト１１００１についての概念図である。この変換リスト１１００１を用いて、以下実際の変換の流れを説明する。なお、ラインメモリ１００３の本数はここでは１０本を想定する。ただし、この本数に限られるものではない。
【００８９】
変換リスト指定手段８００７に変換リスト１１００１の記憶媒体上のアドレスを設定し、画像変換処理部１００４が変換命令をそのアドレスから読み出せるようにする。読込ライン数指定手段８００１、初期読込ライン数指定手段８００２、に設定する値を３、５とする。
【００９０】
図９ａ行、ｂ行はこれらの初期設定を行うコマンドである。ａ行は読込ライン数指定手段８００１に対する初期値の設定のＷＲＩＴＥコマンドである。また、ｂ行は初期読込ライン数指定手段８００２、に対する初期値の設定のためのＷＲＩＴＥコマンドである。なお、図上では便宜上８００１、８００２のように本明細書添付の図上の番号を用いているが、これを記載し易いように名称を付しても問題は無い。
【００９１】
この状態で画像変換手段の起動をかけると、画像変換手段は変換リスト指定手段８００７で指定されたアドレスから自律的に変換リスト１１００１を読み出し、命令デコーダ１００６で命令を解釈、実行する。
【００９２】
図９ａ行、ｂ行の２つのＷＲＩＴＥコマンドで読込ライン数指定手段８００１、初期読込ライン数指定手段８００２に設定値が反映され、次のＳＹＮＣ命令で画像変換処理部１００４は待機状態となる。
【００９３】
ここでラインメモリ１００３について概略を説明する。図１０はラインメモリ１００３の概略説明図である。
【００９４】
既述の通り、ラインメモリ１００３は１０本のラインを有している。この図１０では、各ラインに９００１ないし９０１０の番号を振っている。
【００９５】
撮像手段１００２からラインメモリ１００３上に、図９ｂ行で指定したライン数分だけ入力を行う（ステップＳ９０１１）。ステップＳ９０１１の処理が終わると、同期制御手段８０００は、それを上述の構成によって検知し、画像変換処理部１００４の処理を再開する。この図の例でも、ライン９００１からライン９００５までの５行に画像のラインデータが入力済みとなっている。
【００９６】
同期が通達されると、変換リスト１１００１の次のコマンド群１１００２の処理を実行する。このコマンド群１１００２は図７の変換対象７００１から被変換対象７００２への変換を記述したものである。このコマンド群１１００２では、８つ必要なＴＲＩＡＮＧＬＥコマンドを三点リーダで便宜上省略している。
【００９７】
このコマンド群１１００２の最初のＷＲＩＴＥコマンドで、出力画像オフセット指定手段８００６に記憶媒体上の出力画像Ａの記憶媒体上のアドレスのオフセットＤＳＴ＿Ａを書き込み、出力先を指定する。
【００９８】
次に、ＴＲＩＡＮＧＬＥコマンドを実行し、三角形パッチの変換を行う。アクセスされるラインメモリは既に画像入力の終わったライン９００１乃至９００５が対象となる。
【００９９】
対象となるラインメモリはラインメモリアドレス生成手段８００５によってＴＲＩＡＮＧＬＥコマンドで指定された座標から変換されているものとする。
【０１００】
このラインメモリ上から読み出された三角形パッチの出力画像データは、パッチ変換部８００９で出力画像側の三角形パッチに変換される。出力データは出力画像オフセット指定手段８００６で指定されるアドレスオフセットに従ってバッファ（キャッシュ）上に出力される。
【０１０１】
このように図６中の６００２のＴＲＩＡＮＧＬＥ命令の読み込み、デコード、実行を繰り返し、出力を得る。
【０１０２】
歪み変換用の８つのＴＲＩＡＮＧＬＥコマンドが終了すると、次はスルー画像用の８つのＴＲＩＡＮＧＬＥコマンドを実行する。これが図９のコマンド群１１００３に当たり、図７では変換対象７００１から被変換対象７００３への変換を記述したものである。
【０１０３】
まず、ＷＲＩＴＥコマンドで出力画像オフセット指定手段８００６に記憶媒体上の出力画像Ｂの記憶媒体上のアドレスのオフセットＤＳＴ＿Ｂを書き込み、出力先を再指定する。
【０１０４】
その後、画像変換手段はＳＹＮＣＭコマンドにいたるまで、処理を続け再び待ち状態に入る。
【０１０５】
この様にして、一つの入力三角形パッチデータから複数の出力三角形パッチデータを同時に取得することが出来る。
【０１０６】
使用するライン数が入力側の三角形パッチの縦のサイズ３本より多い５本であるのは、出力側の三角形パッチ作成の際に補間処理として周辺画素を必要とするからである。本実施例では補間処理として線形補間を想定している。図１１は線形補間の説明を補助する図である。
【０１０７】
線形補間とは、図１１のように座標１０００１が整数で指定されない場合に、その指定座標における画素値を周辺の整数座標１０００２〜１０００５における画素値を用いて求める方法である。
【０１０８】
以下は補間処理の定義式である。
【０１０９】
【数１】
0005959684.tif 000002
【０１１０】
I (x,y)が求めたい画素値を示し、f(x,y)が参照画像を示す。記号[  ]はガウス記号で[  ]内の値を超えない最大の整数値を返すものである。但し、補間方法は線形補間に限定されず、最近傍法やバイキュービック補間を用いる方法も考えられる。
【０１１１】
これらの変換処理が行われている間も、撮像手段からはラインメモリ１００３上に画像データが入力され続ける。
【０１１２】
入力されるラインは、ライン９００６以降である。ライン９００８への映像入力が完了すると再び同期制御手段８０００がそれを検知し変換指定手段上の次のコマンドを実行する（図１０ステップＳ９０１２）。なお、この検知ラインが３となるのは読込ライン数指定手段８００１に定義された値に基づく。変換リスト６００１ではＳＹＮＣコマンド以下を省略している。しかし、図７の被変換対象７００２（出力画像４００３の範囲）、被変換対象７００３（出力画像４００５の範囲）に続くパッチ群の変換処理を行う。これらの変換指定は図６中の６００２同様、１６個のＴＲＩＡＮＧＬＥコマンドと一つのＳＹＮＣコマンドで指定される。画像変換手段はそれらの歪み変換用のＴＲＩコマンドとスルー画像用のＴＲＩコマンドを実行し、変化結果をバッファに出力した後に、ＳＹＮＣコマンドで次の３本のラインメモリへの入力が終わるのを待つ。この変換で使用されるラインメモリは９００４から９００８までの５本である。一方、撮像手段から出力された画像のラインデータは次のライン９００９、ライン９０１０に入力した後に、ライン９００１に戻って入力される（図１０ステップＳ９０１３）。
【０１１３】
つまり、ラインメモリ１００３はリングバッファとして利用される。
【０１１４】
このようにラインメモリは映像変換手段による読み出し用途と、撮像手段からの画像データの入力用途に役割を入れ替えながら使用される。
【０１１５】
これらの処理を繰り返し、最終的に一つの画像から同時に２つの画像を求めることが可能となる。
【０１１６】
バッファ（キャッシュ）１００５のサイズは出力画像を全て保持できるほどには大きくない。そのため、画像変換処理部１００４から出力された変換後のデータは、一通り揃った時点で記憶媒体１００７中の画像領域１０１２やディスプレイなどの映像表示手段１０１１に出力される。バッファ１００５は、例えば一般的なキャッシュの様に、ＴＬＢ（トランスレーション・ルックアサイド・バッファ）を持つことで、小さなサイズのバッファを用いてより大きなサイズの例えば画像領域１０１２等に出力することを保証する。
【０１１７】
本実施の形態では、図７に見られるように入力側の三角形パッチの縦サイズを固定し、横のラインを揃えることで、短冊状に並ぶように制限した。一方、出力側の三角形パッチの形状を可変にした。これは少数のラインメモリを効率的に使用し、必要なラインメモリ数を抑えるためである。
【０１１８】
逆に、入力側を可変形状にして出力側を固定形状にすることも考えられる。この形式で入力画像から出力画像への変換を行うと、参照するラインが限定されないため、ラインメモリの幅がより必要になる。一方で、ラインメモリの幅を限定しようとすると、変換の柔軟性が失われる。従って、本実施の形態では、入力側のサイズを固定し、出力側のパッチの形状を任意の形にすることで、最小限のラインメモリ数で柔軟な変換を可能としている。
【０１１９】
ただし、変換指定方法はこれに限定されず、用途によって両方を可変形状にする、片側だけを可変形状にする、などその方式は問わない。
【０１２０】
また、今回同一の入力三角形パッチから複数の出力三角形パッチを生成する変換を書いたがそれに限定されない。一つの画像変換と、別の画像変換で違う入力三角形パッチを用いても良い。
【０１２１】
上述したように、ＷＲＩＴＥコマンドで画像変換処理部１００４の設定を書き換えることができる。例えば、変換モード指定手段８００８で、入力画像をカラー映像として扱うか濃淡画像として扱うか指定できるようにしても良い。このときＷＲＩＴＥコマンドの機能を用いて、モードを切り替えながら、例えば片方の画像はカラー画像を出力し、他方の画像は濃淡画像を高速に出力することが可能である。
【０１２２】
また、画像変換処理部１００４内にコントラスト調整やノイズ低減の処理モードを指定できる手段があるとする。この場合にＷＲＩＴＥコマンドを用いてコントラスト調整をした画像とノイズ低減をした画像の両方の画像を一つの画像入力から高速に生成することができる。
【０１２３】
つまり、本実施の形態では、歪み補正などの画像の形状の変換を例に出したが、画像変換手段の担う役割は、それには限定されないことが分かる。
【０１２４】
変換指定手段は、記憶媒体に保存され汎用演算手段によって書き換えが可能である。また、画像変換指定手段は任意の変換指定手段を指定する事が出来る。この二つの特徴により、画像変換装置は状況に合わせた画像変換を省メモリで行う事が出来る。
【０１２５】
状況に合わせた画像変換とは例えば、図１２に示す様にカメラの視点の位置が順次切り替わる場合が想定できる。図１２は、視点変換を順次行う構成を示す概念図である。
【０１２６】
この時、二つの変換指定手段（変換リスト）を用意する。そして、片方を画像変換手段が処理している間に、もう片方の記述を汎用演算手段で書き換え実現する方法が考えられる。
【０１２７】
従来の方式では、カメラの視点の位置が１０個必要だとすると、１０回分書き変えながら使う事になる。もし、変換指定手段が固定で変更できないような構成の場合は、変換リストを１０個用意する必要がある。さらに視点変換画像とは別の画像を生成する事を考えそれが状況によって１０個必要であるとすると、全ての組み合わせで合計１００個の変換リストを用意する必要があり、メモリ領域を大きく消費する危険性がある。
【０１２８】
本構成はその危険性を避ける構成になっている。
【０１２９】
また、本実施の形態では、画像変換装置の各構成要素が一つの構成を示した。しかしこれだけには限られず、画像変換装置１００１に接続される撮像手段１００２を複数有する、ラインメモリ１００３のライン数を増やす、ラインメモリ１００３自体を複数持つ、などの対応も可能である。また、画像変換装置１００１自体を複数持つ構成も考えられる。
【０１３０】
図１３は、複数の当該画像変換装置を搭載した画像変換システムの構成例を示すブロック図である。
【０１３１】
撮像手段１４００１には画像変換装置１４００５が１対１で接続されている。同様に撮像手段１４００２には画像変換装置１４００６が、撮像手段１４００３には画像変換装置１４００７が、撮像手段１４００４には画像変換装置１４００８が接続されている。これらの撮像手段が撮影した入力画像は対応する画像変換手段に入力される。各画像変換装置は変換指定手段１４００９乃至１４０１２の指定に従って、変換内容が指定される。各画像変換手段は変換指定手段によって指定された変換方式に従って入力画像を変換する。変換後の出力画像は同じメモリ領域の記憶媒体１４００９や表示装置１４０１１に出力される。
【０１３２】
この機構を利用して、全周囲撮影のようなことも可能になる。
【０１３３】
図１４は、図１３の複数の当該画像変換装置を搭載した画像変換システムの構成を用いた周辺表示システムの構成を表す概念図である。
【０１３４】
この周辺表示システムは、撮像手段１４００１乃至１４００４が四周を見渡すように配置されている。そしてこれらの撮像手段１４００１乃至１４００４から得られる画像を俯瞰変換し、それぞれから得られる画像１５００１乃至１５００４を結合して一枚の画像として表示するものである。
【０１３５】
このシステムを実現するためには、車両後方の撮像手段１４００４の変換指定手段１４０１２に、同じ入力から同時に２つの画像を生成する命令を持たせる。そして、それ以外の変換指定手段１４００９乃至１４０１２で撮像手段１４００１乃至１４００４の画像を生成する命令を持たせる。そして、出力画像の同期は、変換指定手段に割り込み命令を持たせる事で実現する。この出力画像の出力先を映像表示手段や画像領域に指定する事で本システムを実現する。
【０１３６】
このように画像変換手段を複数用いる事で、より多彩な変換を高速に実現することが可能となり、各種応用の可能性が広がる。
【０１３７】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記の実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更が可能であることは言うまでもない。
【０１３８】
上記の三角形パッチに基づいた変換指定は例示であり、これには限定されない。適用可能な他の例としては、入力画像の画像座標と出力画像の画像座標の対応を全て記述したマップが他の実現手段として考えられる。
【産業上の利用可能性】
【０１３９】
本発明は、入力画像に対して補正を行い出力画像を取得する画像変換手段、及びその応用分野での利用を想定する。しかしそれだけには限られず、明細書本文中で述べたようにコントラスト調整やノイズ低減処理及びそれらの処理をおこなう回路を有する表示装置での実施も可能である。
【符号の説明】
【０１４０】
１００１…画像変換装置、１００２…撮像手段、１００３…ラインメモリ、
１００４…画像変換処理部、１００５…バッファ、１００６…命令デコーダ、
１００７…記憶媒体、１００８…バス、１０１０…汎用演算手段、
１０１１…映像表示手段、
４００１…入力画像、４００３、４００５…出力画像、
８０００…同期制御手段、８００１…読込ライン数指定手段、
８００２…初期読込ライン数指定手段、８００３…ライン入力数カウンタ、
８００４…次同期待機ライン指定手段、８００５…ラインメモリアドレス生成手段、
８００６…出力画像オフセット指定手段、８００７…変換リスト指定手段、
８００８…変換モード指定手段、８００９…パッチ変換部、
１４００１、１４００２、１４００３、１４００４…撮像手段
１４００５、１４００６、１４００７、１４００８…画像変換装置。
【図１】
0005959684.tif 000003
【図２】
0005959684.tif 000004
【図３】
0005959684.tif 000005
【図４】
0005959684.tif 000006
【図５】
0005959684.tif 000007
【図６】
0005959684.tif 000008
【図７】
0005959684.tif 000009
【図８】
0005959684.tif 000010
【図９】
0005959684.tif 000011
【図１０】
0005959684.tif 000012
【図１１】
0005959684.tif 000013
【図１２】
0005959684.tif 000014
【図１３】
0005959684.tif 000015
【図１４】
0005959684.tif 000016