(57)【要約】【課題】  小さな容量のバッファメモリしか必要が無く、かつ、高速で画像変換が可能な画像変換装置を提供する。【解決手段】  魚眼画像データを入力し、中心射影画像データを出力する画像変換用バッファメモリ３と、そのバッファメモリ３の書き込み制御回路４と、前記バッファメモリの書き込み制御回路に同期して駆動される前記バッファメモリの読み出し制御回路５と、画像変換用参照座標を格納するメモリ６を備え、前記魚眼画像データの入力が撮像装置をラスタスキャンすることによって行われ、前記バッファメモリ３からの読み出しが、読み出して形成される画像データがラスタスキャンによって表示されるように行われ、前記バッファメモリ３のサイズが、前記ラスタスキャンのライン方向の画素数と、ラインに垂直な方向の、画像変換の最大移動量の和との積以上であり、画像全体に対応するメモリサイズより小さいことを特徴とする画像変換装置。【選択図】  図１
2007156795.tif 000002
【特許請求の範囲】
【請求項１】
魚眼レンズを用いて撮像された魚眼画像を歪みの小さい平面画像に変換するための画像変換装置であって、魚眼画像データ（等距離射影画像データ）を入力し、中心射影画像データを出力する画像変換用バッファメモリと、そのバッファメモリの書き込み制御回路と、前記バッファメモリの書き込み制御回路に同期して駆動される前記バッファメモリの読み出し制御回路と、画像変換用参照座標を格納するメモリを備え、前記魚眼画像データの入力が撮像装置をラスタスキャンすることによって行われ、前記バッファメモリからの読み出しが、読み出して形成される画像データがラスタスキャンによって表示されるように行われ、前記バッファメモリのサイズが、前記ラスタスキャンのライン方向の画素数と、ラインに垂直な方向の、画像変換の最大移動量の和との積以上であり、画像全体に対応するメモリサイズより小さいことを特徴とする画像変換装置。
【請求項２】
前記読み出し制御回路の待ち時間（レイテンシ）を、前記ラスタスキャンのライン方向の画素数と、画像中央のデータの取り込みから画像取り込み終了時までの間の、ラインに垂直な方向の、画像変換の最大移動量との積によって決定することを特徴とする請求項１に記載の画像変換装置。
【請求項３】
前記画像変換用参照座標を格納するメモリに、変換前の等距離射影画像座標と変換後の中心射影画像座標の差分値を格納することを特徴とする請求項１又は請求項２に記載の画像変換装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像変換装置に関するものである。
【背景技術】
【０００２】
魚眼レンズで撮影された等距離射影の画像を、歪みのない中心射影画像に変換する装置の概要のブロック図を図１に示す。１は魚眼レンズ、２はCMOSセンサを表している。３は画像変換を行うために画像データを貯めるデュアルポートＲＡＭからなるバッファ、４はそのバッファに画像データを書き込むアドレス及びタイミングを生成する書き込み制御回路、５はバッファから画像データを読み出すアドレス及びタイミングを生成する読み出し制御回路、６は等距離射影から中心射影に変換する際の座標変換情報を格納するメモリを表している。
【０００３】
以下、上記回路の動作について説明する。参照座標メモリ６には、通常中心射影座標を表示するために参照する、入力画像座標（等距離射影座標）が格納されている。バッファ３が横Ｘ、縦ＹのＸ＊Ｙピクセルの容量を持つとし、各ピクセルの画像データをＡ（ｉ，ｊ）で表す。参照座標メモリ６も横Ｘ、縦Ｙに対応する容量を有する。参照座標メモリ６のデータをＢ（ｍ，ｎ）で表す。
【０００４】
Ｂ（ｍ，ｎ）の座標（ｍ，ｎ）は、画像変換された後の各ピクセルの画像の座標を表し、Ｂ（ｍ，ｎ）には、変換後の座標（ｍ，ｎ）に対応する変換前の座標（ｉ，ｊ）の値が書き込まれている。よって、バッファ３に変換前の入力データを全部読み込んだ後、ｍ＝１〜Ｘ、ｎ＝１〜Ｙの組合せについて、（ｍ，ｎ）の座標を持つピクセルに、Ｂ（ｍ，ｎ）で決定される（ｉ，ｊ）に対応するバッファのピクセル格納されている画像データＡ（ｉ，ｊ）を書き込んで行くことにより、画像変換を行うことができる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述のような方法では、全画像データを蓄積するだけの容量を有するバッファ３が必要となり、バッファ３の容量が大きくなるという問題点がある。又、全画像をバッファ３に読み込むまで画像変換処理ができず、画像変換に時間がかかるという問題点もある。
【０００６】
本発明はこのような事情に鑑みてなされたもので、小さな容量のバッファメモリしか必要が無く、かつ、高速で画像変換が可能な画像変換装置を提供することを課題とする。
【課題を解決するための手段】
【０００７】
前記課題を解決するための第１の手段は、魚眼レンズを用いて撮像された魚眼画像を歪みの小さい平面画像に変換するための画像変換装置であって、魚眼画像データ（等距離射影画像データ）を入力し、中心射影画像データを出力する画像変換用バッファメモリと、そのバッファメモリの書き込み制御回路と、前記バッファメモリの書き込み制御回路に同期して駆動される前記バッファメモリの読み出し制御回路と、画像変換用参照座標を格納するメモリを備え、前記魚眼画像データの入力が撮像装置をラスタスキャンすることによって行われ、前記バッファメモリからの読み出しが、読み出して形成される画像データがラスタスキャンによって表示されるように行われ、前記バッファメモリのサイズが、前記ラスタスキャンのライン方向の画素数と、ラインに垂直な方向の、画像変換の最大移動量の和との積以上であり、画像全体に対応するメモリサイズより小さいことを特徴とする画像変換装置である。
【０００８】
前記課題を解決するための第２の手段は、前記第１の手段であって、前記読み出し制御回路の待ち時間（レイテンシ）を、前記ラスタスキャンのライン方向の画素数と、画像中央のデータの取り込みから画像取り込み終了時までの間の、ラインに垂直な方向の、画像変換の最大移動量との積によって決定することを特徴とするものである。
【０００９】
前記課題を解決するための第３の手段は、前記第１の手段又は第２の手段であって、前記画像変換用参照座標を格納するメモリに、変換前の等距離射影画像座標と変換後の中心射影画像座標の差分値を格納することを特徴とするものである。
【発明の効果】
【００１０】
本発明によれば、小さな容量のバッファメモリしか必要が無く、かつ、高速で画像変換が可能な画像変換装置を提供することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施の形態について説明するが、それに先立ち、本発明の基本的な考え方を説明する。図２は１枚の画像を示し、その幅がwidthピクセル、縦がHightピクセルで構成されているとする。以下、図に示すように座標が（ｘ，ｙ）で示されるデータを１次元データとして、ｙ＊width＋ｘ番目のデータとして表すことがある。このようにすると、たとえば図１のバッファ３が１次元であるとき取り扱いが容易である。これは、画像データを、水平方向をラインとするラスタスキャンデータとして表していることを意味する。
【００１２】
本実施の形態の装置的な構成は、従来技術である図１とは、画像同期信号が読み出し制御回路５に入力されている以外は全く同じであるので、同じ図を使用して説明を行う。魚眼レンズ１で撮像された物体の像が、CMOSセンサ２の撮像面に結像する。従来の書き込み制御回路４は、ラスタスキャンにより、CMOSセンサ２の値をバッファ３に書き込む。すなわちｙを０としてｘを０〜(width-1)まで変化させて対応するピクセルのデータを順次バッファ３に書き込み、それが終わるとｙを１だけインクリメントしてｘを０〜(width-1)まで変化させて対応するピクセルのデータを順次バッファ３に書き込む。これをｙが(height-1)となるまで繰り返す。
【００１３】
本実施の形態においては、バッファ３の容量は全画素に対するだけ持っておらず、かつ、全画素の読み込みが終わらないうちに画像変換と出力を開始することである。又、バッファ３は実際には１次元であるので、前述のような変換により実際のバッファのアドレスが計算される。バッファ３の容量は、全画素を記憶するだけ無いため、バッファ３が一杯になると、新しいデータが１個書き込まれるごとに、最も古いデータが１個捨てられる。これは、最も古いデータに、最も新しいデータを上書きすることにより実現できる。
【００１４】
書き込み制御回路４の書き込みアドレス（１次元に変換されたもの）を０から１，２，・・・と順にカウントアウトし（バッファサイズ−１）を超えると又０に戻して再びカウントアップする動作を繰り返して書き込みアドレスへの書き込みを行えばよい。
【００１５】
読み出し制御回路５は、画像同期信号を検出して、あるタイミングが来ると、出力されるデータによって形成される画像の画像データがラスタスキャンにより表示されるようにバッファ３からの出力制御を行う。すなわち、中心射影画像データとしてのアドレスのｙを０としてｘを０〜(width-1)まで変化させて対応するピクセルのデータを順次バッファ３にから読み出し、それが終わるとｙを１だけインクリメントしてｘを０〜(width-1)まで変化させて対応するピクセルのデータを順次バッファ３から読み出す。これをｙが(height-1)となるまで繰り返す。
【００１６】
この場合も、実際のアドレスは前述のように１次元化されている。又、バッファ３への書き込みが前述のように行われているので、最後のデータを読み終わると、最初に戻ってデータを読み出すサイクリックな読み出し方法により、有効データを読み出すことができる。
【００１７】
入力画像のピクセルと出力画像のピクセルとの関係は、従来技術の欄で説明したように参照座標メモリ６に格納されており、画像変換の方法は従来技術と同じである。
【００１８】
ところで、本実施の形態においては、全画素の読み込みが終わらないうちに画像変換と出力を開始するので、バッファ３の容量が小さすぎると、出力すべきピクセルに対応する入力データがまだ読み込まれていなかったり、既に捨てられてしまっている場合がある。よって、バッファ３の容量は、こうしたことが起こらないように決定しなければならない。
【００１９】
図３（ａ）は正方形を魚眼レンズで撮影した画像を示しており、図３（ｂ）はそれを中心射影に変換した画像を示している。斜線部分は画像がない無効領域を示している。
Ｙ方向（垂直方向）に座標移動（変換）する量で、上から下へ移動する最大量はd1で、下から上に移動する最大量はd2となる。d1とd2は無効領域の高さを示す。又、最大移動量d1が適用されるデータは、画像取り込み開始時から画像中央のデータの取り込み時までに存在し、最大移動量d2が適用されるデータは、画像中央のデータの取り込み時から画像取り込み終了時までに存在する。画像の中心付近は、移動量がd1、d2よりも小さくなる。なお、変換の順序は、左上から右下に向かって水平方向をラインとするラスタスキャンによって行われるものとする。
【００２０】
もし、バッファ３の容量がwidth＊d1だけあれば、画像変換を行おうとしたとき、対応する入力データが既に捨てられてしまってバッファ３中に残っていないということが無くなる。又、バッファ３の容量がwidth＊d2だけあれば、画像変換を行おうとしたとき、対応する入力データがまだ読み込まれていないということがなくなる。結局、本実施の形態のような方式を採用した場合には、バッファ３の容量としてwidth＊(d1+d2)だけ持っていれば、画像変換が可能となる。これ以上持っていてもよいが、１フレーム分の容量より少なくすることで、本発明の目的を達成できる。これが、課題を解決するための手段における「前記バッファメモリのサイズが、前記ラスタスキャンのライン方向の画素数と、ラインに垂直な方向の、画像変換の最大移動量の和との積以上であり、画像全体に対応するメモリサイズより小さい」ということの意味である。
【００２１】
又、読み出し制御回路５による画像変換の開始は、width＊d2だけのデータが読み込まれたときに開始すればよい。読み出し制御回路５に入力される画像同期信号を検出することで、開始のタイミングが分かる。これより開始の時期が遅れてもよいが、その分だけバッファ３の容量を増やす必要がある。
【００２２】
以上の説明においては、参照座標メモリ６における座標対応データの持ち方としてＢ（ｍ，ｎ）に対応する変換前の座標（ｉ，ｊ）を書き込んでいた。しかし、変換前の座標（ｉ，ｊ）の代わりに、座標（ｍ，ｎ）と座標（ｉ，ｊ）との相対アドレスのずれ（ｍ−ｉ，ｎ−ｊ）を書き込んでおいて、読み出し制御回路５において計算により（ｉ，ｊ）を求めるようにしてもよい。このようにすると、参照座標メモリ６のデータのビット数を減らすことができる。
【００２３】
図４は、このように、参照座標メモリ６に座標（ｍ，ｎ）と座標（ｉ，ｊ）との相対アドレスのずれ（ｍ−ｉ，ｎ−ｊ）を書き込んである場合の読み出し制御回路５の動作を説明するための図である。但し、アドレスは、前述のように１次元化されて表されているものとする。
【００２４】
アップカウンタは読み出し開始と同時に動作を開始し、０から１，２，・・・と順番にカウントアップし、（バッファサイズ−１）を超えるとまた０になり、再びカウントアップする動作を、有効画像が出力されている間繰り返す。そのカウンタ値と参照座標メモリ６の値を加算し、その結果が（バッファサイズ−１）を超えなければそのまま読み出しアドレスとし、（バッファサイズ−１）を超えたら、加算結果から（バッファサイズ−１）を減算した結果を読み出しアドレスとする。
【００２５】
カメラを組み立てる際、レンズの光軸がCMOSセンサの中心からずれたり、CMOSセンサが少し回転したり傾いたりすることがある。それに対してはキャリブレーションを行って補正する。キャリブレーションの結果は参照座標メモリ６の値に反映される。つまり画像処理（変換）で補正される。
【００２６】
キャリブレーションの結果によって、図５のように無効画像領域の高さd1、d2が変わる。特に光軸のずれの場合は、(d1+d2)の量はあまり変化せずd1が増えるとd2が減る。従って、キャリブレーション結果から画像の下から上に移動する最大量d2がわかるので、バッファから画像データを読み出す待ち時間（レイテンシ）をd2に依存して設定できるようにするとバッファサイズの増加を抑えることができる。
【図面の簡単な説明】
【００２７】
【図１】魚眼レンズで撮影された等距離射影の画像を、歪みのない中心射影画像に変換する装置の概要のブロック図である。
【図２】１枚の画像を示す図である。
【図３】正方形を魚眼レンズで撮影した画像と、それを中心射影に変化した画像を示すである。
【図４】読み出し制御回路の動作を説明するための図である。
【図５】レンズの光軸がCMOSセンサの中心からずれたり、CMOSセンサが少し回転したり傾いたりした場合の、無効画像領域の変化を示す図である。
【符号の説明】
【００２８】
１…魚眼レンズ、２…CMOSセンサ、３…バッファ、４…書き込み制御回路、５…読み出し制御回路、６…参照座標メモリ
【図１】
2007156795.tif 000003
【図２】
2007156795.tif 000004
【図３】
2007156795.tif 000005
【図４】
2007156795.tif 000006
【図５】
2007156795.tif 000007