画像変換装置
【課題】魚眼レンズで撮影された歪曲円形画像から、任意部分を切り出し、歪みの少ない平面正則画像に変換する演算の負担を軽減する。
【解決手段】歪曲円形画像をメモリ220に格納する。ユーザがユニット110に対して、切出中心点PP、倍率m、平面傾斜角φを指定すると、係数算出部240において回転係数A〜Fが算出される。座標変換部270は、この係数A〜Fを用いた変換式により、メモリ220内の座標(x,y)とメモリ230内の座標(u,v)との相互変換を行い、メモリ230内に平面正則画像を得る。正射影方式以外の魚眼レンズを用いる場合には、変換部210,280による射影方式変換を行って正射影方式の変換式を適用する。座標変換部270における座標変換や、変換部280における射影方式変換を行う際に、開平算・逆数算を含む演算を、予め用意されたテーブルを参照する処理で代用し、演算負担を軽減する。
【解決手段】歪曲円形画像をメモリ220に格納する。ユーザがユニット110に対して、切出中心点PP、倍率m、平面傾斜角φを指定すると、係数算出部240において回転係数A〜Fが算出される。座標変換部270は、この係数A〜Fを用いた変換式により、メモリ220内の座標(x,y)とメモリ230内の座標(u,v)との相互変換を行い、メモリ230内に平面正則画像を得る。正射影方式以外の魚眼レンズを用いる場合には、変換部210,280による射影方式変換を行って正射影方式の変換式を適用する。座標変換部270における座標変換や、変換部280における射影方式変換を行う際に、開平算・逆数算を含む演算を、予め用意されたテーブルを参照する処理で代用し、演算負担を軽減する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像変換装置に関し、特に、魚眼レンズを用いた撮影により得られた歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う装置に関する。
【背景技術】
【0002】
魚眼レンズを用いると、メカニカルな動作機構なしに、半球状の全方位を示す円形画像を得ることができる。このため、奇抜な効果を狙った風景写真などを撮影する際に広く利用されている。また、最近では、魚眼レンズを用いた監視システムの開発も行われている。標準レンズを備えたカメラを用いて、広い画角にわたる空間の監視を行うためには、通常、パンチルトズームなどの機械的な駆動機構を用いて、レンズの向きを動かす必要がある。これに対して、魚眼レンズを備えたカメラを用いれば、機械的な駆動を行うことなしに、広い画角の画像を得ることができる。ただ、魚眼レンズを用いた撮影で得られる画像は、歪曲した円形の画像になるため、芸術写真などの用途にはそのまま利用することが可能かもしれないが、監視システムなどの一般的な用途には不向きである。
【0003】
そこで、魚眼レンズを用いた撮影により得られた歪曲円形画像を、歪みの少ない平面正則画像に変換する処理を行う装置が提案されている。たとえば、下記の特許文献1および2には、コンピュータを利用して歪曲円形画像の一部分を平面正則画像にリアルタイムで変換する技術が開示されている。このような変換技術を利用すれば、魚眼レンズを用いて撮影した歪曲円形画像からなる動画を、平面正則画像からなる動画としてリアルタイムで観察することが可能になり、180°の画角をもった監視システムなどへの応用が期待できる。
【0004】
一方、下記の特許文献3には、魚眼レンズを用いた撮影により得られた歪曲円形画像を、円筒面上に展開された画像に変換することにより、水平方向にパノラマ表示を行う技術が開示されており、また、下記の特許文献4には、歪曲円形画像を平面正則画像に変換する際に必要な関数演算等を、ルックアップテーブルを参照する処理で代用することにより、ハードウエアの実装を軽減する技術が開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特許第3012142号公報
【特許文献2】特許第3051173号公報
【特許文献3】特許第3025255号公報
【特許文献4】特許第3126955号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
防犯用の監視システムなどでは、魚眼レンズを装着した防犯カメラを建物の天井や壁面に設置し、この防犯カメラで撮影した画像をモニタ装置に映し出すことになる。このような用途では、モニタ画面上で人物の顔や衣服などの特徴を正確に把握する必要性から、できるだけ歪みのない平面正則画像を得ることが望まれる。このため、魚眼レンズを用いた撮影により得られた歪曲円形画像上の任意の一部分を、歪みのない平面正則画像に変換する画像変換装置が不可欠になる。しかも、リアルタイムで監視を行うシステムでは、ユーザから見た応答性を十分に確保する必要があるため、平面正則画像への変換演算をできるだけ短時間で実行する必要がある。
【0007】
ところが、前掲の特許文献1〜3に記載されているとおり、魚眼レンズを用いた撮影により得られた歪曲円形画像のデータを平面正則画像のデータに変換する処理を行うためには、開平算や逆数演算などを組み合わせた複雑な演算処理が必要である。このような複雑な演算処理を短時間で実行するためには、高性能の演算処理回路やCPUが必要になり、また、ハードウエアの実装規模も大きくならざるを得ない。このため、装置のコストは高騰せざるを得ない。
【0008】
一方、前掲の特許文献4には、一部の関数演算等を、ルックアップテーブルを参照する処理で代用することにより、ハードウエアの実装を軽減する技術が開示されている。このように、複雑な演算処理をルックアップテーブルの参照処理に置き換えれば、演算負担を軽減させることができるので、ハードウエアの実装規模を低減させ、装置のコストを低減させることが可能になる。しかしながら、従来から提案されているルックアップテーブルを用いた手法では、演算の効率化が必ずしも十分ではなく、実用上、依然として大きな演算負担が問題となっている。たとえば、前掲の特許文献4に開示されている手法では、ルックアップテーブルを参照するためのアドレスを生成する過程において、依然として負担の大きい演算が必要になる。
【0009】
従来技術のもうひとつの問題は、変換により得られた平面正則画像に歪みが生じる点である。たとえば、上述した特許文献1,2に開示されている技術を用いると、魚眼レンズを用いた撮影により得られた歪曲円形画像から、ユーザが所望する箇所を切り出して、矩形の平面正則画像を得ることが可能であるが、得られた平面正則画像は歪んだものとなり、人物の細かな特徴を確認する用途には不十分である。特に、得られる矩形の平面正則画像の外側部分(輪郭近傍)の歪みは大きくなるため、切り出し箇所を徐々に移動させて水平パニングを行うような場合、滑らかなパニング映像を得ることができなくなる。
【0010】
一方、上述した特許文献3に開示されている技術では、水平方向に細長いパノラマ画像が得られるので、その一部を切り出してモニタ画面上に表示すれば、水平パニングを行うような場合でも、滑らかなパニング映像を得ることができる。しかしながら、この技術で得られたパノラマ画像は、水平方向に関しての歪みは小さいが、垂直方向に関しての歪みは大きくなるため、実用上、切り出し可能な領域に制限が課せられる。具体的には、半球状の領域を撮影したとしても、その天頂部付近を切り出した平面正則画像には大きな歪みが生じるため、実用上、天頂部付近を切り出すことはできなくなる。このように、切り出し可能箇所に制限が課せられると、防犯カメラに利用した場合に死角が生じることになるので好ましくない。
【0011】
そこで、本発明は、魚眼レンズを用いた撮影により得られた歪曲円形画像から、所望の任意部分を切り出し、歪みの少ない平面正則画像に変換することが可能であり、しかも演算負担の少ない画像変換装置を提供することを目的とする。
【課題を解決するための手段】
【0012】
<<< 正射影方式の撮影画像に適用するための発明の態様 >>>
【0013】
(1) 本発明の第1の態様は、正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
座標(x,y)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
歪曲円形画像用メモリ内の対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
x=R(uA+vB+wC)/√(u2+v2+w2)
y=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)と逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=1/√T1」なる関係式で定まるK1の値を、T1の値に基づいて参照することができるT1→K1テーブルと、
T1→K1テーブルを参照することにより、T1演算手段によって求められたT1に対応するK1を決定するT1→K1変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
Kx,Ky,K1に基づいて、「x=K1・Kx」および「y=K1・Ky」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有しているようにしたものである。
【0014】
(2) 本発明の第2の態様は、正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
座標(x,y)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
歪曲円形画像用メモリ内の対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
x=R(uA+vB+wC)/√(u2+v2+w2)
y=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)と逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=√N」なる関係式で定まる開平値K1の値を、Nの値に基づいて参照することができる開平値テーブルと、
T1演算手段によって求められたT1に基づいて、逆数N=1/T1を求めるための除算を行い、開平値テーブルを参照することにより、得られた逆数Nの開平値としてK1を決定するT1→K1変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
Kx,Ky,K1に基づいて、「x=K1・Kx」および「y=K1・Ky」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有しているようにしたものである。
【0015】
(3) 本発明の第3の態様は、正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
座標(x,y)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
歪曲円形画像用メモリ内の対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「点Gが側面上の1点をなし、二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(x,y)との対応関係を示す正射影画像用対応関係式として、
x=R(u′A+vB+w′C)/√(u′2+v2+w′2)
y=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)のうちの座標vと逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=1/√T2」なる関係式で定まるK2の値を、T2の値に基づいて参照することができるT2→K2テーブルと、
T2→K2テーブルを参照することにより、T2演算手段によって求められたT2に対応するK2を決定するT2→K2変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
Kxx,Kyy,K2に基づいて、「x=K2・Kxx」および「y=K2・Kyy」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有しているようにしたものである。
【0016】
(4) 本発明の第4の態様は、正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
座標(x,y)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
歪曲円形画像用メモリ内の対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「点Gが側面上の1点をなし、二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(x,y)との対応関係を示す正射影画像用対応関係式として、
x=R(u′A+vB+w′C)/√(u′2+v2+w′2)
y=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)のうちの座標vと逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=√N」なる関係式で定まる開平値K2の値を、Nの値に基づいて参照することができる開平値テーブルと、
T2演算手段によって求められたT2に基づいて、逆数N=1/T2を求めるための除算を行い、開平値テーブルを参照することにより、得られた逆数Nの開平値としてK2を決定するT2→K2変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
Kxx,Kyy,K2に基づいて、「x=K2・Kxx」および「y=K2・Kyy」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有しているようにしたものである。
【0017】
(5) 本発明の第5の態様は、上述の第3または第4の態様に係る画像変換装置において、
KxxKyy決定手段が、
座標uおよび逆数tに基づいて、「θ=ut」なる演算を行い、θを求めるθ演算手段と、
θに基づいて「T3=sinθ」なる値T3を参照することができるsinテーブルと、
θに基づいて「T4=cosθ」なる値T4を参照することができるcosテーブルと、
sinテーブルを参照することにより、θ演算手段によって求められたθに対応するT3を決定するθ→T3変換手段と、
cosテーブルを参照することにより、θ演算手段によって求められたθに対応するT4を決定するθ→T4変換手段と、
T3,T4,与えられた係数A,B,C,D,E,F,座標v,逆数tに基づいて、「Kxx=A・T3+vtB+C・T4」および「Kyy=D・T3+vtE+F・T4」なる演算を行い、KxxおよびKyyを求めるKxxKyy演算手段と、
を有しているようにしたものである。
【0018】
(6) 本発明の第6の態様は、上述の第1〜第5の態様に係る画像変換装置において、
係数算出部が、正射影歪曲円形画像上で指定された切出中心点P(x0,y0)の座標値x0,y0に基づいて、切出中心点P(x0,y0)を通りZ軸に平行な直線と原点Oを中心として半径Rをもった仮想球面との交点G(x0,y0,z0)を求め、原点Oを起点として交点G(x0,y0,z0)を通るベクトルを視線ベクトルnとして、係数の算出を行うようにしたものである。
【0019】
(7) 本発明の第7の態様は、上述の第6の態様に係る画像変換装置において、
歪曲円形画像用メモリが、半径R=1となるように正規化された正射影歪曲円形画像を格納し、
係数算出部が、
座標値x0,y0に基づいて、
ra=√(x02+y02)
z0=√(1−ra2)
なる演算を行い、raおよびz0を算出する演算手段と、
座標値x0,y0およびz0,ra、ならびに平面傾斜角φに基づいて、
A=(y0・cosφ+x0・z0・sinφ)/ra
B=(−y0・sinφ+x0・z0・cosφ)/ra
C=−x0
D=(−x0・cosφ+y0・z0・sinφ)/ra
E=(x0・sinφ+y0・z0・cosφ)/ra
F=−y0
なる演算(但し、ra=0の場合は、A=cosφ,B=−sinφ,C=0,D=sinφ,E=cosφ,F=0)を行い、係数A,B,C,D,E,Fを算出する演算手段と、
倍率mに基づいて、
t=1/m
なる演算を行い、係数tを算出する演算手段と、
を有しているようにしたものである。
【0020】
(8) 本発明の第8の態様は、上述の第6または第7の態様に係る画像変換装置において、
歪曲円形画像用メモリに格納されている正射影歪曲円形画像および平面正則画像用メモリに格納されている平面正則画像をそれぞれ表示するモニタ装置と、
切出中心点P(x0,y0)の座標値x0,y0と、平面傾斜角φと、倍率mと、をパラメータとして入力して係数算出部に与えるパラメータ入力ユニットと、
を更に設け、
パラメータ入力ユニットが、モニタ装置上に表示されている正射影歪曲円形画像上においてユーザが指定した1点を切出中心点P(x0,y0)として認識し、その座標値x0,y0を入力する機能を有するようにしたものである。
【0021】
<<< 非正射影方式の撮影画像に適用するための発明の態様 >>>
【0022】
(9) 本発明の第9の態様は、非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
歪曲円形画像用メモリ内の座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
xa=R(uA+vB+wC)/√(u2+v2+w2)
ya=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)と逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=1/√T1」なる関係式で定まるK1の値を、T1の値に基づいて参照することができるT1→K1テーブルと、
T1→K1テーブルを参照することにより、T1演算手段によって求められたT1に対応するK1を決定するT1→K1変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
Kx,Ky,K1に基づいて、「xa=K1・Kx」および「ya=K1・Ky」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有しているようにしたものである。
【0023】
(10) 本発明の第10の態様は、非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
歪曲円形画像用メモリ内の座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
xa=R(uA+vB+wC)/√(u2+v2+w2)
ya=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)と逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=√N」なる関係式で定まる開平値K1の値を、Nの値に基づいて参照することができる開平値テーブルと、
T1演算手段によって求められたT1に基づいて、逆数N=1/T1を求めるための除算を行い、開平値テーブルを参照することにより、得られた逆数Nの開平値としてK1を決定するT1→K1変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
Kx,Ky,K1に基づいて、「xa=K1・Kx」および「ya=K1・Ky」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有しているようにしたものである。
【0024】
(11) 本発明の第11の態様は、非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
歪曲円形画像用メモリ内の座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「点Gが側面上の1点をなし、二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(xa,ya)との対応関係を示す正射影画像用対応関係式として、
xa=R(u′A+vB+w′C)/√(u′2+v2+w′2)
ya=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)のうちの座標vと逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=1/√T2」なる関係式で定まるK2の値を、T2の値に基づいて参照することができるT2→K2テーブルと、
T2→K2テーブルを参照することにより、T2演算手段によって求められたT2に対応するK2を決定するT2→K2変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
Kxx,Kyy,K2に基づいて、「xa=K2・Kxx」および「ya=K2・Kyy」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有しているようにしたものである。
【0025】
(12) 本発明の第12の態様は、非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
歪曲円形画像用メモリ内の座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「点Gが側面上の1点をなし、二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(xa,ya)との対応関係を示す正射影画像用対応関係式として、
xa=R(u′A+vB+w′C)/√(u′2+v2+w′2)
ya=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)のうちの座標vと逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=√N」なる関係式で定まる開平値K2の値を、Nの値に基づいて参照することができる開平値テーブルと、
T2演算手段によって求められたT2に基づいて、逆数N=1/T2を求めるための除算を行い、開平値テーブルを参照することにより、得られた逆数Nの開平値としてK2を決定するT2→K2変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
Kxx,Kyy,K2に基づいて、「xa=K2・Kxx」および「ya=K2・Kyy」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有しているようにしたものである。
【0026】
(13) 本発明の第13の態様は、上述の第11または第12の態様に係る画像変換装置において、
KxxKyy決定手段が、
座標uおよび逆数tに基づいて、「θ=ut」なる演算を行い、θを求めるθ演算手段と、
θに基づいて「T3=sinθ」なる値T3を参照することができるsinテーブルと、
θに基づいて「T4=cosθ」なる値T4を参照することができるcosテーブルと、
sinテーブルを参照することにより、θ演算手段によって求められたθに対応するT3を決定するθ→T3変換手段と、
cosテーブルを参照することにより、θ演算手段によって求められたθに対応するT4を決定するθ→T4変換手段と、
T3,T4,与えられた係数A,B,C,D,E,F,座標v,逆数tに基づいて、「Kxx=A・T3+vtB+C・T4」および「Kyy=D・T3+vtE+F・T4」なる演算を行い、KxxおよびKyyを求めるKxxKyy演算手段と、
を有しているようにしたものである。
【0027】
(14) 本発明の第14の態様は、上述の第9〜第13の態様に係る画像変換装置において、
射影方式逆変換部が、
座標(xa,ya)に基づいて、「G=xa2+ya2」なる演算を行ってGを求めるG演算手段と、
「Kb=(sin-1√G/√G)・2/π」なる関係式で定まるKbの値を、Gの値に基づいて参照することができるG→Kbテーブルと、
G→Kbテーブルを参照することにより、G演算手段によって求められたGに対応するKbを決定するG→Kb変換手段と、
座標(xa,ya)とKbとに基づいて、「xb=Kb・xa」および「yb=Kb・ya」なる演算を行い、座標(xb,yb)を求める射影方式変換手段と、
を有し、半径R=1となるように正規化された正射影歪曲円形画像上の座標(xa,ya)を、等距離射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等距離射影歪曲円形画像上の座標(xb,yb)に変換する機能を有するようにしたものである。
【0028】
(15) 本発明の第15の態様は、上述の第9〜第13の態様に係る画像変換装置において、
射影方式逆変換部が、
座標(xa,ya)に基づいて、「G=xa2+ya2」なる演算を行ってGを求めるG演算手段と、
「Kb=1/(1+√(1−G))」なる関係式で定まるKbの値を、Gの値に基づいて参照することができるG→Kbテーブルと、
G→Kbテーブルを参照することにより、G演算手段によって求められたGに対応するKbを決定するG→Kb変換手段と、
座標(xa,ya)とKbとに基づいて、「xb=Kb・xa」および「yb=Kb・ya」なる演算を行い、座標(xb,yb)を求める射影方式変換手段と、
を有し、半径R=1となるように正規化された正射影歪曲円形画像上の座標(xa,ya)を、立体射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された立体射影方式歪曲円形画像上の座標(xb,yb)に変換する機能を有するようにしたものである。
【0029】
(16) 本発明の第16の態様は、上述の第9〜第13の態様に係る画像変換装置において、
射影方式逆変換部が、
座標(xa,ya)に基づいて、「G=xa2+ya2」なる演算を行ってGを求めるG演算手段と、
「Kb=1/√(1+√(1−G))」なる関係式で定まるKbの値を、Gの値に基づいて参照することができるG→Kbテーブルと、
G→Kbテーブルを参照することにより、G演算手段によって求められたGに対応するKbを決定するG→Kb変換手段と、
座標(xa,ya)とKbとに基づいて、「xb=Kb・xa」および「yb=Kb・ya」なる演算を行い、座標(xb,yb)を求める射影方式変換手段と、
を有し、半径R=1となるように正規化された正射影歪曲円形画像上の座標(xa,ya)を、等立体角射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等立体角射影歪曲円形画像上の座標(xb,yb)に変換する機能を有するようにしたものである。
【0030】
(17) 本発明の第17の態様は、上述の第9〜第16の態様に係る画像変換装置において、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、非正射影歪曲円形画像上で指定された切出中心点PP(x00,y00)の座標x00,y00を、正射影歪曲円形画像上で対応する切出中心点P(x0,y0)の座標x0,y0に変換する射影方式正変換部を更に設け、
係数算出部が、切出中心点P(x0,y0)の座標値x0,y0に基づいて、切出中心点P(x0,y0)を通りZ軸に平行な直線と原点Oを中心として半径Rをもった仮想球面との交点G(x0,y0,z0)を求め、原点Oを起点として交点G(x0,y0,z0)を通るベクトルを視線ベクトルnとして、係数の算出を行うようにしたものである。
【0031】
(18) 本発明の第18の態様は、上述の第17の態様に係る画像変換装置において、
歪曲円形画像用メモリが、半径R=1となるように正規化された非正射影歪曲円形画像を格納し、
係数算出部が、
座標値x0,y0に基づいて、
ra=√(x02+y02)
z0=√(1−ra2)
なる演算を行い、raおよびz0を算出する演算手段と、
座標値x0,y0およびz0,ra、ならびに平面傾斜角φに基づいて、
A=(y0・cosφ+x0・z0・sinφ)/ra
B=(−y0・sinφ+x0・z0・cosφ)/ra
C=−x0
D=(−x0・cosφ+y0・z0・sinφ)/ra
E=(x0・sinφ+y0・z0・cosφ)/ra
F=−y0
なる演算(但し、ra=0の場合は、A=cosφ,B=−sinφ,C=0,D=sinφ,E=cosφ,F=0)を行い、係数A,B,C,D,E,Fを算出する演算手段と、
倍率mに基づいて、
t=1/m
なる演算を行い、係数tを算出する演算手段と、
を有するようにしたものである。
【0032】
(19) 本発明の第19の態様は、上述の第17または第18の態様に係る画像変換装置において、
歪曲円形画像用メモリに格納されている非正射影歪曲円形画像および平面正則画像用メモリに格納されている平面正則画像をそれぞれ表示するモニタ装置と、
切出中心点PP(x00,y00)の座標値x00,y00をパラメータとして入力して射影方式正変換部に与えるとともに、平面傾斜角φと、倍率mと、をパラメータとして入力して係数算出部に与えるパラメータ入力ユニットと、
を更に設け、
パラメータ入力ユニットが、モニタ装置上に表示されている非正射影歪曲円形画像上においてユーザが指定した1点を切出中心点PP(x00,y00)として認識し、その座標値x00,y00を入力する機能を有するようにしたものである。
【0033】
(20) 本発明の第20の態様は、上述の第17〜第19の態様に係る画像変換装置において、
射影方式正変換部が、
座標(x00,y00)に基づいて、「rb=√(x002+y002)」なる演算を行ってrbを求めるrb演算手段と、
rbを用いて「Ka=(sin(πrb/2))/rb」なる演算式で定義されるKaを求めるrb→Ka変換手段と、
座標(x00,y00)とKaとに基づいて、「x0=Ka・x00」および「y0=Ka・y00」なる演算を行い、座標(x0,y0)を求める射影方式変換手段と、
を有し、等距離射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等距離射影歪曲円形画像上の座標(x00,y00)を、半径R=1となるように正規化された正射影歪曲円形画像上の座標(x0,y0)に変換する機能を有するようにしたものである。
【0034】
(21) 本発明の第21の態様は、上述の第17〜第19の態様に係る画像変換装置において、
射影方式正変換部が、
座標(x00,y00)に基づいて、「rb=√(x002+y002)」なる演算を行ってrbを求めるrb演算手段と、
rbを用いて「Ka=2/(1+rb2)」なる演算式で定義されるKaを求めるrb→Ka変換手段と、
座標(x00,y00)とKaとに基づいて、「x0=Ka・x00」および「y0=Ka・y00」なる演算を行い、座標(x0,y0)を求める射影方式変換手段と、
を有し、立体射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された立体射影歪曲円形画像上の座標(x00,y00)を、半径R=1となるように正規化された正射影歪曲円形画像上の座標(x0,y0)に変換する機能を有するようにしたものである。
【0035】
(22) 本発明の第22の態様は、上述の第17〜第19の態様に係る画像変換装置において、
射影方式正変換部が、
座標(x00,y00)に基づいて、「rb=√(x002+y002)」なる演算を行ってrbを求めるrb演算手段と、
rbを用いて「Ka=√(2−rb2)」なる演算式で定義されるKaを求めるrb→Ka変換手段と、
座標(x00,y00)とKaとに基づいて、「x0=Ka・x00」および「y0=Ka・y00」なる演算を行い、座標(x0,y0)を求める射影方式変換手段と、
を有し、等立体角射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等立体角射影歪曲円形画像上の座標(x00,y00)を、半径R=1となるように正規化された正射影歪曲円形画像上の座標(x0,y0)に変換する機能を有するようにしたものである。
【0036】
<<< その他の特徴をもった発明の態様 >>>
【0037】
(23) 本発明の第23の態様は、上述の第1〜第22の態様に係る画像変換装置において、
画素値決定部が、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する際に、データ読出部が読み出した複数の画素の画素値を用いた補間演算を行うようにしたものである。
【0038】
(24) 本発明の第24の態様は、上述の第1〜第7、第9〜第18、第20〜第23の態様に係る画像変換装置を、コンピュータにプログラムを組み込むことにより実現したものである。
【0039】
(25) 本発明の第25の態様は、上述の第1〜第7、第9〜第18、第20〜第23の態様に係る画像変換装置を、電子回路が組み込まれた半導体集積回路により実現したものである。
【0040】
(26) 本発明の第26の態様は、上述の第1〜第7、第9〜第18、第20〜第23の態様に係る画像変換装置に、
魚眼レンズを装着したデジタルカメラと、
歪曲円形画像用メモリに格納されている歪曲円形画像および平面正則画像用メモリに格納されている平面正則画像をそれぞれ表示するモニタ装置と、
視線ベクトルn,平面傾斜角φ,倍率mを指定するためのパラメータを入力するパラメータ入力ユニットと、
を付加し、
デジタルカメラを用いた撮影により得られた歪曲円形画像が歪曲円形画像用メモリへと格納され、平面正則画像用メモリに得られた平面正則画像がモニタ装置によって表示されるように構成することにより、魚眼監視システムを実現したものである。
【発明の効果】
【0041】
本発明の画像変換装置によれば、歪曲円形画像上の座標と平面正則画像上の座標との対応関係を示す対応関係式を、演算負担が効果的に軽減される理想形式に導き、しかも開平算や逆数演算の部分を、ルックアップテーブルを参照する処理で代用するようにしたため、演算負担を大幅に低減させることができる。しかも、円柱側面に沿った湾曲座標系を利用する態様では、より歪みの少ない平面正則画像を得ることができる。
【図面の簡単な説明】
【0042】
【図1】正射影方式の魚眼レンズを用いた撮影により歪曲円形画像Sを形成する基本モデルを示す斜視図である。
【図2】魚眼レンズを用いた撮影によって得られた歪曲円形画像Sの一例を示す平面図である(歪曲円形画像Sの一般的なイメージを示すものであり、正確な画像を示すものではない)。
【図3】歪曲円形画像Sの一部分に切出領域Eを定義した例を示す平面図である。
【図4】歪曲円形画像Sを含む二次元XY直交座標系と、平面正則画像Tを含む二次元UV直交座標系との関係を示す斜視図である。
【図5】二次元UV直交座標系上に定義された平面正則画像Tと平面傾斜角φとの関係を示す平面図である。
【図6】二次元XY直交座標系から二次元UV直交座標系への座標変換の原理を示す斜視図である。
【図7】図6の斜視図に示されている各構成要素を水平方向から見た図である。
【図8】図6の斜視図に示されている各構成要素を上方から見た図である。
【図9】倍率mを考慮したモデルにおいて、二次元XY直交座標系上における点Si(xi,yi)と二次元UV直交座標系上における点Ti(ui,vi)との対応関係を示す斜視図である。
【図10】倍率m=1に設定した場合の二次元UV直交座標系の配置および切出領域E1の範囲を示す側面図である。
【図11】倍率m>1に設定した場合の二次元UV直交座標系の配置および切出領域E2の範囲を示す側面図である。
【図12】図2に示す歪曲円形画像Sの一部分を切り出すことにより、二次元UV直交座標系上に得られた平面正則画像Tの一例を示す平面図である。
【図13】図2に示す歪曲円形画像Sの一部分を切り出すことにより、二次元UV直交座標系上に得られた平面正則画像Tの別な一例を示す平面図である。
【図14】二次元UV直交座標系上に定義された平面正則画像Tを示す平面図である。
【図15】二次元XY直交座標系上に定義された歪曲円形画像Sを示す平面図である。
【図16】二次元XY直交座標系上における点S1(x1,y1),S2(x2,y2)と、二次元UV直交座標系上における点T1(u1,v1),T2(u2,v2)との対応関係を示すための仮想球面の側面図である。
【図17】二次元XY直交座標系上における座標(x,y)と二次元UV直交座標系上における座標(u,v)との対応関係を示す正射影画像用対応関係式である。
【図18】図17に示す対応関係式の意味合いを説明するための図である。
【図19】正射影方式の魚眼レンズにおける入射光の投影状態を示す側面図である。
【図20】正射影方式の魚眼レンズを用いて形成される正射影歪曲円形画像と、等距離射影方式の魚眼レンズを用いて形成される等距離射影歪曲円形画像と、の関係を示す斜視図である。
【図21】等距離射影歪曲円形画像上の座標と正射影歪曲円形画像上の座標との間で座標変換を行うための変換式を示す図である。
【図22】図21に示す式について、半径R=1とする正規化を行うことにより導かれる式を示す図である。
【図23】半径R=1とする正規化を行った場合の等距離射影歪曲円形画像上の座標と正射影歪曲円形画像上の座標との間の座標変換式を示す図である。
【図24】半径R=1とする正規化を行った場合の様々な歪曲円形画像上の座標と正射影歪曲円形画像上の座標との間の座標変換式を示す図である。
【図25】二次元UV直交座標系上における点と、二次元XaYa直交座標系上の正射影歪曲円形画像上の点と、二次元XbYb直交座標系上の実際の射影方式の歪曲円形画像上の点と、の対応関係を示す斜視図である。
【図26】図17の下段に示す式を切出中心点P(x0,y0,z0)の各座標値を用いた式に変形するプロセスを示す図である。
【図27】図17の上段に示す式を変形するプロセスを示す図である。
【図28】本発明の基本的な実施形態に係る画像変換装置の構成を示すブロック図である。
【図29】図28に示す装置200における射影方式正変換部210の詳細な構成を示すブロック図である。
【図30】図28に示す装置200における係数算出部240の詳細な構成を示すブロック図である。
【図31】図28に示す装置200における座標変換部270の詳細な構成を示すブロック図である。
【図32】図28に示す装置200における射影方式逆変換部280の詳細な構成を示すブロック図である。
【図33】図9の基本モデルに修正を加えた変形モデルを示す斜視図である。
【図34】二次元UV直交座標系上における点T(u,v)と二次元UV湾曲座標系上における点C(u,v)との対応関係を示す斜視図である。
【図35】二次元XY直交座標系上における座標(x,y)と二次元UV湾曲座標系上における座標(u,v)との対応関係を示す正射影歪曲円形画像用の対応関係式を示す図である。
【図36】図35に示す式を変形するプロセスを示す図である。
【図37】二次元UV湾曲座標系を用いる実施例において、図28に示す装置200における座標変換部270の代わりに用いる座標変換部270′の詳細な構成を示すブロック図である。
【図38】図37に示すKxxKyy決定手段271′の詳細な構成例を示すブロック図である。
【発明を実施するための最良の形態】
【0043】
以下、本発明を図示する実施形態に基づいて説明する。
【0044】
<<< §1.画像変換処理の基本モデル >>>
【0045】
はじめに、魚眼レンズを用いた撮影により得られた歪曲円形画像の一般的な特徴と、その一部分を切り出して、平面正則画像に変換する処理の基本原理を説明する。図1は、正射影方式の魚眼レンズを用いた撮影により歪曲円形画像Sを形成する基本モデルを示す斜視図である。一般に、魚眼レンズは、その投影方式によって複数の種類に分けられるが、この図1に示すモデルは、正射影方式の魚眼レンズについてのものである(正射影方式以外の魚眼レンズに本発明を適用する手法は、§4で述べる)。
【0046】
図1には、三次元XYZ直交座標系におけるXY平面上に歪曲円形画像Sが形成された例が示されている。ここでは、図示のとおり、Z軸を図の上方にとり、Z軸の正の領域側にドーム状の仮想球面H(半球)を定義した例を示すことにする。
【0047】
XY平面上に形成された歪曲円形画像Sは、座標系の原点Oを中心とした半径Rの円を構成する画像であり、Z軸の正の領域側における180°の画角をもった領域に存在する像を歪ませて記録したものに相当する。図2は、魚眼レンズを用いた撮影によって得られた歪曲円形画像Sの一例を示す平面図である。このように、歪曲円形画像Sには、Z軸の正の領域側に存在するすべての像が記録されることになるが、その中心部分と周囲部分とでは、像の縮尺倍率が異なっており、記録された像の形状は歪んだものになる。なお、図2に示す歪曲円形画像Sは、魚眼レンズを用いた撮影により得られた歪曲円形画像の一般的なイメージを示すものであり、実際の魚眼レンズを用いて得られる正確な画像を示すものではない。
【0048】
実際の魚眼レンズは、複数の凸レンズや凹レンズを組み合わせた光学系によって構成されるが、その光学的な特性は、図1に示すような仮想球面Hによってモデル化できることが知られている。すなわち、歪曲円形画像Sの上面に、半径Rをもったドーム状の仮想球面H(半球)を配置したモデルを考えれば、正射影方式の魚眼レンズの光学的特性は、仮想球面H上の任意の点H(x,y,z)に対して法線方向から入射する入射光線L1は、Z軸に平行な入射光線L2として、XY平面上の点S(x,y)へ向かう振る舞いをする、と考えてよい。逆言すれば、図2において歪曲円形画像S上の点S(x,y)に位置する画素は、図1に示す入射光線L1の延長線上に存在する物体上の1点を示していることになる。
【0049】
もちろん、実際の魚眼レンズで生じている光学的現象は、複数の凸レンズや凹レンズによる屈折により、撮像対象となる物体の特定の点が、XY平面上の特定の点S(x,y)上に結像する現象ということになるが、画像変換処理などを行う上では、図1に示すような仮想球面Hを用いたモデルに置き換えた議論を行っても何ら支障はない。したがって、前掲の特許文献に開示されている画像変換処理でも、このようなモデルを前提とした手法が示されており、本発明における以下の説明においても、このようなモデルを前提とした説明を行うことにする。
【0050】
本発明に係る画像変換装置の目的は、歪曲円形画像S上の一部分を切り出して、平面正則画像に変換する処理を行うことである。たとえば、図2に示す歪曲円形画像Sを見たユーザが、その左下に描かれている女性の画像を、歪みのない正しい画像で観察したいと考えたとしよう。このような場合、ユーザは、歪曲円形画像Sのどの部分を切り出して変換を行うべきかを指定する必要がある。たとえば、図3にハッチングを施して示すような切出領域Eを変換対象とすべき領域として指定するのであれば、最も直観的な指定方法は、その中心点P(x0,y0)の位置を指定する方法であろう。本願では、このようにしてユーザが指定する点Pを、切出中心点Pと呼ぶことにする。もっとも、歪曲円形画像Sは歪んだ画像であるため、切出中心点Pは、切出領域Eについての正確な幾何学的中心にはならない。
【0051】
ここでは、切出中心点P(x0,y0)を中心とした切出領域E内の画像を、平面正則画像に変換するために、次のような基本モデルを考える。図4は、この基本モデルにおいて、歪曲円形画像Sを含む二次元XY直交座標系と、平面正則画像Tを含む二次元UV直交座標系との関係を示す斜視図である。図示のとおり、歪曲円形画像Sは、三次元XYZ直交座標系のXY平面上に定義されているので、歪曲円形画像S自身は、二次元XY直交座標系上に定義された画像である。そこで、この歪曲円形画像S上に定義された切出中心点P(x0,y0)を通りZ軸に平行な直線と仮想球面Hとの交点Gを考える。この交点Gは、いわば切出中心点P(x0,y0)の真上の点であり、その位置座標は(x0,y0,z0)である。
【0052】
次に、この交点G(x0,y0,z0)において、仮想球面Hに接する接平面を定義し、この接平面上に二次元UV直交座標系を定義する。そして、平面正則画像Tを、この二次元UV直交座標系上の画像として求めることにする。図4に示す例の場合、交点G(x0,y0,z0)が原点となるように二次元UV直交座標系が定義されている。結局、このモデルにおけるUV座標系の原点Gは、仮想球面H上のいずれかに設定され、UV座標系を構成するUV平面は、この原点Gの位置における仮想球面Hに対する接平面に一致する。
【0053】
UV座標系の原点となる点G(x0,y0,z0)の位置は、図示のとおり、方位角αと天頂角βとによって特定することができる。ここで、方位角α(0≦α<360°)は、切出中心点P(x0,y0)とXY座標系の原点Oとを結ぶ直線とY軸とのなす角であり、天頂角β(0≦β≦90°)は、UV座標系の原点となる点G(x0,y0,z0)とXY座標系の原点Oとを結ぶ直線とZ軸とのなす角(鋭角)である。
【0054】
このように、UV平面は、方位角αと天頂角βとを指定することによって特定することができるが、UV座標系を決定するには、更にもう1つの角度φを指定する必要がある。この角度φは、直線OGを回転軸としたUV座標系の向きを示すパラメータであり、図4の例では、U軸とJ軸とのなす角度として定義されている。ここで、J軸は、点G(x0,y0,z0)を通り、XY平面に平行かつ直線OGに直交する軸であり、以下、回転基準軸と呼ぶことにする。要するに、角度φは、UV座標系においてU軸方向を向いたベクトルUと、回転基準軸Jの方向を向いたベクトルJと、を定義したときに、ベクトルUとベクトルJとのなす角度として定義される角であり、通常、「平面傾斜角」と呼ばれている。
【0055】
図5は、UV座標系上に定義された平面正則画像Tと平面傾斜角φとの関係を示す平面図である。ここに示す例の場合、平面正則画像Tは、UV座標系の原点G(x0,y0,z0)を中心とするUV平面上の矩形として定義されており、その長辺はU軸に平行、短辺はV軸に平行になっている。平面傾斜角φは、上述したとおり、U軸とJ軸とのなす角であるから、図5に示す例の場合、UV平面上での平面正則画像Tの回転ファクターを示すパラメータということになる。
【0056】
結局、図4に示す平面正則画像Tを形成するためのUV座標系の位置および向きは、方位角α,天頂角β,平面傾斜角φという3つの角度からなるパラメータを設定することにより一義的に決定される。この3つの角度は、一般にオイラー角と呼ばれている。
【0057】
さて、ここで行うべき画像変換処理は、結局、XY座標系からUV座標系への座標変換ということになる。そこで、XY座標系とUV座標系との幾何学的な位置関係を、もう少し詳しく見てみよう。図6の斜視図に示されているように、XY平面上の歪曲円形画像Sを、方位角αによって示される方向に対して、天頂角βだけ傾斜すると、傾斜面S1が得られる。ここで、図示のとおり、XY座標系の原点OからUV座標系の原点Gへ向かう方向に視線ベクトルnを定義し、傾斜面S1をこの視線ベクトルnの方向に距離Rだけ平行移動させると、接平面S2が得られることになる。移動距離Rは、歪曲円形画像Sの半径であり、仮想球面Hの半径でもある。
【0058】
接平面S2は、点Gにおいて仮想球面Hに接する平面であり、視線ベクトルnは、点Gにおける仮想球面Hの法線方向を示すベクトルである。そして、UV座標系は、この接平面S2上に定義される座標系であり、点Gを原点とし、U軸とJ軸(点Gを通り、XY平面に平行かつ視線ベクトルnに直交する軸であり、図における傾斜面S1とXY平面との交線に平行な軸になる。)とのなす角が平面傾斜角φとなるように定義された二次元直交座標系である。図7は、図6の斜視図に示されている各構成要素を水平方向から見た図である。前述したとおり、点G(x0,y0,z0)は、歪曲円形画像S上に定義された切出中心点P(x0,y0)を通りZ軸に平行な直線と仮想球面Hとの交点として定まる点であり、その位置は方位角αおよび天頂角βによって定まる。一方、図8は、図6の斜視図に示されている各構成要素を上方から見た図である。図に示す交点G(x0,y0,z0)は、仮想球面H上の点であり、XY平面の上方に位置している。そして、この交点G(x0,y0,z0)における仮想球面Hに対する接平面上にUV座標系が定義される。このとき、U軸とJ軸とのなす角がφとなるように、U軸の向きが定められる。
【0059】
<<< §2.倍率を加味した画像変換処理の基本原理 >>>
【0060】
§1では、原点G(x0,y0,z0)が仮想球面H上の1点となるように、UV座標系を定義する基本モデルを述べた。この場合、XY座標系の原点OとUV座標系の原点Gとの距離は半径Rに一致する。これに対して、通常は、変換により得られる平面正則画像にスケーリングファクタを導入した実用モデルが利用される。すなわち、所定の倍率mを設定し、2点OG間の距離が、半径Rのm倍となるような位置にUV座標系を配置し、このUV座標系上に、倍率mに対応するサイズをもった平面正則画像Tを定義する実用モデルが用いられる。ここでは、この実用モデルにおける画像変換処理の基本原理を説明する。
【0061】
図9は、この実用モデルについて、二次元XY直交座標系上における点Si(xi,yi)と二次元UV直交座標系上における点Ti(ui,vi)との対応関係を示す斜視図である。図4に示す基本モデルとの相違は、二次元UV直交座標系の原点G(xg,yg,zg)の位置である。すなわち、図9に示す実用モデルの場合、2点OG間の距離は、m・Rに設定されている。図9は、m=2に設定した例である。図4に示す基本モデルは、この実用モデルにおいて、m=1に設定し、原点G(xg,yg,zg)を球面上対応点Q(x0,y0,z0)に一致させるようにした特殊な例に相当する。
【0062】
ここで、球面上対応点Q(x0,y0,z0)は、切出中心点P(x0,y0)に対応した仮想球面H上の点であり、正射影方式の魚眼レンズの場合、切出中心点P(x0,y0)を通りZ軸に平行な直線と仮想球面Hとの交点として定義される点である。視線ベクトルnは、原点Oから球面上対応点Q(x0,y0,z0)へ伸びるベクトルとして定義されるので、切出中心点P(x0,y0)を定めることは、視線ベクトルnを定めることと等価である。
【0063】
もちろん、この図9に示す実用モデルの場合も、二次元UV直交座標系の原点G(xg,yg,zg)は、視線ベクトルn上の点であり、UV座標系は、この視線ベクトルnに直交する平面上に定義される。また、U軸の向きは、平面傾斜角φに基づいて決定される。具体的には、図示のとおり、原点G(xg,yg,zg)を通る回転基準軸JとU軸とのなす角度が、平面傾斜角φに一致するように、UV座標系の向きが決定されることになる。
【0064】
ここで行う画像変換処理の目的は、XY座標系上に定義された歪曲円形画像S上の切出中心点P(x0,y0)を中心とした切出領域内の歪曲画像を切り出して変形し、UV座標系上に平面正則画像Tを得ることにある。具体的には、UV座標系上に得られる平面正則画像T上の1点Ti(ui,vi)に位置する画素の画素値を、これに対応するXY座標系上の1点Si(xi,yi)の近傍に位置する画素の画素値に基づいて決定することである。そのためには、§3で述べるように、座標(ui,vi)と座標(xi,yi)との対応関係を示す対応関係式が必要になる。
【0065】
このような画像変換処理を行う上で、視線ベクトルnは、平面正則画像の切り出し位置を示すパラメータとして機能する。視線ベクトルnを図示の方向に設定した場合、切出中心点P(x0,y0)を中心とした切出領域内から、平面正則画像の切り出しが行われることになる。視線ベクトルnの方向を変えれば、切出中心点Pの位置も変わることになり、平面正則画像の切り出し位置も変わってくる。一方、平面傾斜角φは、平面正則画像の切り出し向きを示すパラメータとして機能し、倍率m(2点OG間の距離を決めるファクター)は、平面正則画像の切り出しサイズを示すパラメータとして機能する。
【0066】
図10および図11は、倍率mと切出領域Eとの関係を示す側面図である。図10は、倍率m=1に設定したモデル(図4に示すモデル)に相当し、切出中心点Pの真上に位置する球面上対応点Qが、そのままUV座標系の原点G1となっており、2点O,G1間の距離は半径Rに等しい。これに対して、図11は、倍率m>1に設定したモデル(図9に示すモデル)に相当し、切出中心点Pの真上に位置する球面上対応点Qから離れた位置にUV座標系の原点G2が設定されており、2点O,G2間の距離は半径Rのm倍に等しい。いずれも切出中心点Pの位置、球面上対応点Qの位置、視線ベクトルnの位置は同じであるが、原点の位置G1,G2が異なるため、UV座標系の位置(その上に形成される平面正則画像T1,T2の位置)も異なっている。
【0067】
図10と図11とを比較すれば、倍率mに応じて、切出領域Eが異なることが理解できよう。すなわち、倍率m=1の設定では、図10のように、E1が切出領域となるのに対して、倍率m>1の設定では、図11のように、E2が切出領域となり、倍率mが大きくなるほど、切出領域Eの面積は小さくなる。ここで、得られる平面正則画像T1,T2をモニタ装置の画面上に表示させる場合、平面正則画像T1,T2の大きさ(モニタ画面の大きさに応じて定まる)は一定である。したがって、平面正則画像T1,T2は、いずれも切出中心点Pを中心として切り出した画像であるが、倍率m>1に設定した平面正則画像T2の方が、より狭い切出領域E2を拡大表示した画像になる。別言すれば、平面正則画像T1が、画角F1内の被写体を撮影した画像になるのに対して、平面正則画像T2は、より狭い画角F2内の被写体を撮影した画像になる。
【0068】
これに対して、平面傾斜角φは、平面正則画像の切り出し向きを示すパラメータであり、平面傾斜角φを変えると、平面正則画像T内に現れる被写体と画像枠との位置関係(回転方向に関する位置関係)が変わることになる。これは、図5において、角度φを増加させると、U軸(およびV軸)が反時計回りに回転し、平面正則画像Tの画像枠も反時計回りに回転することから、容易に理解できよう。
【0069】
結局、ユーザは、視線ベクトルn(切出中心点P),倍率m,平面傾斜角φという3つのパラメータを設定することにより、UV座標系上に所望の平面正則画像Tを得ることができる。また、得られた平面正則画像Tが満足のゆくものでなかった場合には、これら3つのパラメータを適宜修正することにより、平面正則画像Tを修正することができる。すなわち、得られた画像の向きに満足しなければ、平面傾斜角φを修正すればよいし、得られた画像の画角に満足しなければ、倍率mを修正すればよいし、得られた画像の切り出し位置に満足しなければ、視線ベクトルn(切出中心点P)を修正すればよい。
【0070】
図12は、図2に例示した歪曲円形画像Sについて、上記3つのパラメータを適宜設定し、その一部分を切り出して変換することによりUV座標系上に得られた平面正則画像Tの一例を示す平面図である。この例では、図2に示す歪曲円形画像Sにおける女性の鼻の位置が切出中心点Pとして設定されており、女性の顔周辺の画像が切り出されている。ただ、女性の身長方向がU軸となるような切り出し向きが設定されているため、図示のように、U軸を水平方向にとったモニタ画面に表示させると、女性は横向きに表示されてしまう。
【0071】
このような場合、ユーザは、平面傾斜角φを修正すればよい。たとえば、角度φを90°程度減少させれば、U軸(およびV軸)が時計回りに回転し、平面正則画像Tの画像枠も時計回りに回転することになり、女性の正立像が得られることになる。ただ、図示のモニタ画面は、横方向寸法a(水平方向の画素数)より縦方向寸法b(垂直方向の画素数)の方が小さい矩形枠を有しているため、女性の胸元まで表示するためには、倍率mを若干減少させる修正も必要になる。
【0072】
図13は、このような修正によって得られた平面正則画像Tである。ユーザの要望どおり、女性の胸元までの正立像が得られている。図12も図13も、視線ベクトルn(切出中心点P)は同一の設定となっており、いずれも女性の鼻の位置に指定した切出中心点Pが中心となる画像になっている。ただ、両者では定義されるUV座標系の位置および向きが異なっているため、得られる平面正則画像Tが異なる結果となっている。
【0073】
なお、本願にいう「平面正則画像」とは、必ずしも「歪みのない完全な画像」を意味するものではなく、「魚眼レンズを用いた撮影により得られる歪曲円形画像Sに比べて、通常レンズを用いた撮影により得られる画像に近い平面画像」を意味するものである。したがって、図2に示す歪曲円形画像S上の女性像に比べれば、図12,図13に示す平面正則画像Tは歪みのない画像に見えるが、完全に歪みが取り除かれているわけではない。実際、従来の画像変換で得られる平面正則画像は、人物の細かな特徴を確認する用途には、歪み矯正が不十分であり、特に、画像の外側部分(輪郭近傍)の歪みはかなり大きい。
【0074】
<<< §3.正射影方式の対応関係式 >>>
【0075】
図14は、二次元UV直交座標系上に定義された平面正則画像Tを示す平面図である。ここでは、この平面正則画像T上の任意の点Tiを、UV座標系の座標値ui,viを用いて、Ti(ui,vi)と表すことにする。図9に示すとおり、このUV座標系の原点Gは、三次元XYZ直交座標系上における座標を用いて、点G(xg,yg,zg)で示されることになるが、二次元UV直交座標系を用いて示すと、図14に示すとおり、点T(0,0)ということになる。
【0076】
一方、図15は、二次元XY直交座標系上に定義された歪曲円形画像Sを示す平面図である。ここでは、この歪曲円形画像S上の任意の点Siを、XY座標系の座標値xi,yiを用いて、Si(xi,yi)と表すことにする。図14に示す原点G(点T(0,0))上の画像は、図15に示す切出中心点P(x0,y0)上の画像に対応し、図14に示す任意の点Ti(ui,vi)上の画像は、図15に示す点Si(xi,yi)上の画像に対応する。
【0077】
前述したとおり、二次元UV直交座標系上に平面正則画像Tを得るためには、図14に示す点Ti(ui,vi)に位置する画素の画素値を、図15に示す点Si(xi,yi)に位置する画素(二次元XY直交座標系上の歪曲円形画像S内の画素)の画素値に基づいて決定する必要がある。そのためには、二次元UV直交座標系上の座標(ui,vi)と二次元XY直交座標系上の座標(xi,yi)との間の1対1の対応関係を示す対応関係式が必要になる。このような対応関係式を用いれば、図14に示す平面正則画像T上の任意の点は、図15に示す歪曲円形画像Sの切出領域E内のいずれかの点に対応づけられることになり、切出領域E内の歪曲画像を平面正則画像Tに変換することができる。
【0078】
このような対応関係式は、三次元XYZ座標系の空間内に配置されたUV座標系の位置および向きが決定すれば、幾何学的な手法で一義的に定義することが可能である。たとえば、図9に示す例において、平面正則画像T上の点Ti(ui,vi)と、歪曲円形画像S上の点Si(xi,yi)との位置関係に着目すれば、点Si(xi,yi)の真上にある仮想球面H上の点を球面上対応点Qi(xi,yi,zi)としたときに、原点Oと球面上対応点Qiとを結ぶ直線niとUV座標系の座標平面との交点に、点Ti(ui,vi)が位置することになる。
【0079】
図16は、このような2点間の位置関係をより明確に説明するための側面図である。この図16において、視線ベクトルnは、原点Oから天頂角βをもつ方向に伸び、視線ベクトルnと仮想球面Hとの交点Qは、切出中心点P(x0,y0)の真上に位置している。また、視線ベクトルn上における原点Oからの距離がmRの位置に点Gが定義されている。この点Gは、二次元UV直交座標系の原点であり、このUV座標系の座標面は、視線ベクトルnに直交しており、平面正則画像Tは、このUV座標系の座標面上に定義される。
【0080】
平面正則画像T上の任意の点T1(u1,v1)についての歪曲円形画像S上の対応点S1(x1,y1)は、次のようにして定義される。すなわち、点T1(u1,v1)と原点Oとを結ぶ直線と仮想球面Hとの交点位置に、球面上対応点Q1を求め、この球面上対応点Q1の真下の位置にある歪曲円形画像S上の点を、対応点S1(x1,y1)とすればよい。同様に、平面正則画像T上の任意の点T2(u2,v2)については、点T2(u2,v2)と原点Oとを結ぶ直線と仮想球面Hとの交点位置に、球面上対応点Q2を求め、この球面上対応点Q2の真下の位置にある歪曲円形画像S上の点を、対応点S2(x2,y2)とすればよい。
【0081】
このような2点間の対応関係は、幾何学的な対応関係式で記述することができる。具体的には、図17に示す式(1)〜(9)によって記述できることが知られており、たとえば、前掲の特許文献1,2などに、このような対応関係式を用いた画像変換の方法が開示されている。なお、座標系のとり方や角度の定義方法などによって、各項の符号等に多少の相違が生じるため、文献によっては、掲載されている式に若干の食い違いが生じるが、本質的には同一の幾何学演算を示す式である。
【0082】
この図17に示す対応関係式は、図9に示す座標系および角度の定義を行った場合の式であり、UV座標系の位置を示すパラメータα,βと、UV座標系の向きを示すパラメータφとを含む式になっている。これら3つのパラメータは、前述したオイラー角、すなわち、方位角α,天頂角β,平面傾斜角φである。
【0083】
具体的には、
x=R(uA+vB+wC)/
√(u2+v2+w2) 式(1)
は、UV座標系上の1点T(u,v)の座標値u,vを用いて、XY座標系上の対応点S(x,y)のx座標値を求めるための式であるが、A,B,Cは、それぞれ、
A=cosφ cosα − sinφ sinα cosβ 式(3)
B=−sinφ cosα − cosφ sinα cosβ 式(4)
C=sinβ sinα 式(5)
なる数式で求まる値であり、オイラー角α,β,φの三角関数を用いた演算によって決定されることになる。
【0084】
同様に、
y=R(uD+vE+wF)/
√(u2+v2+w2) 式(2)
は、UV座標系上の1点T(u,v)の座標値u,vを用いて、XY座標系上の対応点S(x,y)のy座標値を求めるための式であるが、D,E,Fは、それぞれ、
D=cosφ sinα + sinφ cosα cosβ 式(6)
E=−sinφ sinα + cosφ cosα cosβ 式(7)
F=−sinβ cosα 式(8)
なる数式で求まる値であり、オイラー角α,β,φの三角関数を用いた演算によって決定されることになる。
【0085】
なお、式(1),(2)におけるwは、
w=mR 式(9)
で与えられる値である。ここで、Rは、既に述べたとおり、歪曲円形画像Sの半径であり、mは倍率である。倍率mは、座標値u,vのスケーリングと、座標値x,yのスケーリングとの関係を示すものであり、倍率mを大きく設定すればするほど、平面正則画像Tには拡大された画像が求められるが、歪曲円形画像Sの切出領域Eは小さくなる。
【0086】
結局、図17に示す式において、Rの値は歪曲円形画像Sの半径として既知であり(後述するように、歪曲円形画像Sのサイズを正規化しておけば、R=1に設定することができる)、mの値はユーザによって指定された倍率として既知であるから、ユーザがオイラー角α,β,φを指定することにより、UV座標系の位置および向きを決定してやれば、図17に示す対応関係式において、座標値x,yを算出するための未知数はu,vのみになる。したがって、この対応関係式を用いれば、平面正則画像Tにおける任意の1点T(u,v)に対応する歪曲円形画像S上の対応点S(x,y)を決定することができる。
【0087】
図18は、この図17に示す対応関係式の意味合いを簡単に説明するための図である。この図18には、切出中心点P(x0,y0)を三次元XYZ直交座標系の原点Oの位置に設定した特殊な場合のUV座標系の位置が示されている。この場合、方位角α=0°、天頂角β=0°に設定され、視線ベクトルnは、真上(Z軸正方向)を向くことになる。また、UV座標系の原点GはZ軸上に配置され、三次元XYZ直交座標系上での座標はG(0,0,mR)となり、UV座標面(平面正則画像Tの形成面)は、XY平面に平行な平面になる。ここで、平面傾斜角φをφ=0°とすると、X軸とU軸は平行になり、Y軸とV軸は平行になる。
【0088】
このような特殊な条件では、平面正則画像T上の任意の点T(u,v)と、歪曲円形画像S上の対応点S(x,y)との位置関係は、図示のとおりである。すなわち、点S(x,y)の真上に位置する仮想球面H上の点Qを求め、2点OQを結ぶ直線とUV座標系の座標平面との交点を求めれば、当該交点が点T(u,v)となる関係にある。このため、座標(x,y)と座標(u,v)との間には、
x=(R/L)・u 式(10)
y=(R/L)・v 式(11)
なる簡単な対応関係式が得られる。
【0089】
図17に示す式(1),(2)は、上述の式(10),(11)に対して、方位角α,天頂角β,平面傾斜角φで規定される回転ファクターによる補正を施すことにより得られる式に他ならない。式(1),(2)の分母√(u2+v2+w2)は、式(10),(11)におけるLに対応するものである。図18に示すとおり、Lは、原点Oと点T(u,v)との距離であり、L=√(u2+v2+w2)である。一方、式(1),(2)の分子の(uA+vB+wC)および(uD+vE+wF)は、回転ファクターによる補正項である。ここでは、A〜Fを回転係数と呼ぶことにする。回転係数A〜Fは、図17の式(3)〜(8)に示すとおり、オイラー角α,β,φの三角関数を用いた演算式で示される係数になる。
【0090】
前掲の特許文献1,2等に開示されている画像変換の方法は、この図17に示す対応関係式を用いて、歪曲円形画像Sの一部を平面正則画像Tに変換するものである。しかしながら、この図17に示す対応関係式には、三角関数演算、開平演算、逆数演算という演算負荷の大きな演算が含まれており、このような複雑な演算処理を短時間で実行するためには、高性能の演算処理回路やCPUが必要になり、また、ハードウエアの実装規模も大きくならざるを得ない。このため、装置のコストが高騰せざるを得ない、という問題がある点は、既に述べたとおりである。
【0091】
<<< §4.非正射影方式への適用 >>>
【0092】
これまでの例は、いずれも正射影方式の魚眼レンズを用いた例であり、画像変換に用いる対応関係式も、正射影方式の魚眼レンズで撮影された正射影歪曲円形画像Sを前提とした式になっていた。ところが、実際に市販されている魚眼レンズは、必ずしも正射影方式のレンズとは限らない。実際、魚眼レンズの投影方式としては、等距離射影方式、立体射影方式、等立体角射影方式など、様々な方式が知られており、用途に応じて、これら様々な射影方式をとる魚眼レンズが利用されている。ここでは、このような非正射影方式の魚眼レンズによって撮影された非正射影歪曲円形画像に対して本発明を適用する方法を説明する。
【0093】
正射影方式の魚眼レンズの光学的特性は、既に述べたとおり、図1に示すようなモデルによって説明することができる。すなわち、仮想球面H上の任意の入射点H(x,y,z)に対して、その法線方向から入射する入射光線L1は、Z軸に平行な方向に進む入射光線L2として、XY平面上の点S(x,y)へ到達する、という特性である。図19は、この正射影方式の魚眼レンズにおける入射光の投影状態を示す正面図である。図示のとおり、天頂角βをもった仮想球面H上の入射点H(x,y,z)に対して、その法線方向から入射した入射光線L1は、Z軸に平行な方向に進む入射光線L2として、XY平面上の点S(x,y)へ到達している。
【0094】
ここで、入射点H(x,y,z)の天頂角βと、当該入射点H(x,y,z)を経た入射光線L2がXY平面上で到達する到達点S(x,y)の原点Oからの距離rと、の関係は、正射影方式の魚眼レンズを用いた撮影によって形成される正射影画像の場合(この場合の距離をraとする)、ra=f・sinβなる式で表される。ここで、fは、魚眼レンズに固有の定数である。これに対して、たとえば、等距離射影方式の魚眼レンズを用いた撮影によって形成される等距離射影画像の場合(この場合の距離をrbとする)、両者の関係は、rb=f・βなる式で表されることになる。
【0095】
図20は、正射影方式の魚眼レンズを用いて形成される正射影歪曲円形画像Sと、等距離射影方式の魚眼レンズを用いて形成される等距離射影歪曲円形画像SSと、の関係を示す斜視図である。図に同心円状に示す線は、同一の天頂角βをもつ入射点を経た入射光線についてのXY平面上での到達点の集合を示している。図20(a) に示す正射影画像Sの場合、ra=f・sinβなる式が成り立つため、隣接する同心円状の線の配置間隔は、中心から周囲に向かうほど小さくなってゆく。これに対して、図20(b) に示す等距離射影画像SSの場合、rb=f・βなる式が成り立つため、同心円状の線は、中心から周囲に向かって等間隔に配置される。
【0096】
このように、正射影画像Sと等距離射影画像SSとは、いずれも歪曲円形画像という点では共通するものの、その歪みの状態が両者では異なっているため、当然ながら、平面正則画像に変換するために用いる変換演算式も異なったものになる。したがって、正射影画像Sを平面正則画像Tに変換する場合には、図17に示す正射影画像用対応関係式を用いることができるが、等距離射影画像などの非正射影画像SSを平面正則画像Tに変換する場合には、それぞれについての専用の対応関係式を用いる必要がある。
【0097】
ただ、正射影画像S上の座標と非正射影画像SS上の座標とは、所定の座標変換式を介して相互に変換することが可能である。したがって、本発明を実施するにあたって、変換対象となる歪曲円形画像が、非正射影方式の魚眼レンズによって撮影された非正射影画像SSである場合には、正射影画像S上の座標と非正射影画像SS上の座標との間の座標変換式を用いて正射影画像用対応関係式を補正することにより得られる非正射影画像用対応関係式を用いるようにすればよい。以下、非正射影画像として、等距離射影画像を用いた場合を例にとって、この方法を説明する。
【0098】
図20に示すように、正射影画像上の任意の1点と、等距離射影画像上の特定の1点とは、相互に1対1の対応関係を定義することができる(図の破線は、この対応関係を示している)。具体的には、等距離射影画像SS上の任意の1点の座標を(xb,yb)とし、これに対応する正射影画像S上の特定の1点の座標を(xa,ya)とすれば、両者間には、図21の上段に示すように、
xa=xb(R/rb) sin (πrb/2R) 式(12)
ya=yb(R/rb) sin (πrb/2R) 式(13)
但し、rb=√(xb2+yb2) 式(14)
なる式が成り立つ。ここで、rbは、等距離射影画像SS上の点(xb,yb)と原点Oとの距離を示す変数である。
【0099】
逆に、正射影画像S上の任意の1点の座標を(xa,ya)とし、これに対応する等距離射影画像SS上の特定の1点の座標を(xb,yb)とすれば、両者間には、図21の下段に示すように、
xb=xa(2R/πra) sin-1 (ra/R) 式(15)
yb=ya(2R/πra) sin-1 (ra/R) 式(16)
但し、ra=√(xa2+ya2) 式(17)
が成り立つ。ここで、raは、正射影画像S上の点(xa,ya)と原点Oとの距離を示す変数である。
【0100】
結局、上記式(12)〜(14)は、等距離射影画像SS上の座標(xb,yb)を正射影画像S上の座標(xa,ya)に変換する式(ここでは、射影方式正変換式と言う)であり、上記式(15)〜(17)は、正射影画像S上の座標(xa,ya)を等距離射影画像SS上の座標(xb,yb)に変換する式(ここでは、射影方式逆変換式と言う)ということになる。
【0101】
そこで、変換対象となる歪曲円形画像が、等距離射影方式の魚眼レンズによって撮影された等距離射影画像SSである場合には、まず、図17に示す正射影画像用対応関係式を用いて、任意の座標(u,v)に対応する座標(x,y)を算出する。こうして算出された座標(x,y)は、もちろん、二次元XY直交座標系上に正射影画像Sが配置されている場合の対応座標である。そこで、ここでは、この図17に示す対応関係式で得られた座標(x,y)を座標(xa,ya)と記すことにする。続いて、図21下段に示す射影方式逆変換式(15)〜(17)を用いて、正射影画像S上の座標(xa,ya)を等距離射影画像SS上の座標(xb,yb)に変換すれば、得られた座標(xb,yb)が、座標(u,v)に対応する本来の対応座標ということになる。
【0102】
なお、ユーザに、歪曲円形画像上の1点P(x0,y0)を切出中心点として指定させる場合にも、留意が必要である。すなわち、変換対象となる歪曲円形画像が、正射影方式の魚眼レンズによって撮影された正射影画像Sである場合には、図9のモデルのように、切出中心点P(x0,y0)を通りZ軸に平行な直線と仮想球面Hとの交点Q(x0,y0,z0)を定義し、原点Oを起点として交点Q(x0,y0,z0)を通るベクトルを視線ベクトルnとすることができる。これは、正射影方式の場合、切出中心点Pの真上の位置に、その球面上対応点Qが位置するからである。
【0103】
ところが、変換対象となる歪曲円形画像が、非正射影方式の魚眼レンズによって撮影された非正射影画像SSである場合には、球面上対応点Qは切出中心点Pの真上には位置しない。そこで、この場合、正射影画像S上の座標と非正射影画像SS上の座標との間の座標変換式を用いて、切出中心点Pの座標を補正し、補正後の点を通りZ軸に平行な直線と仮想球面Hとの交点Qを定義し、原点Oを起点としてこの交点Qを通るベクトルを視線ベクトルnとする必要がある。
【0104】
変換対象となる歪曲円形画像が等距離射影画像の場合、当該歪曲円形画像上の1点として指定された切出中心点Pの座標は、等距離射影画像SS上での座標(xb,yb)である。したがって、図21の上段に示す射影方式正変換式(12)〜(14)を用いて、等距離射影画像SS上の座標(xb,yb)を正射影画像S上の座標(xa,ya)に変換し、得られた座標(xa,ya)を用いて視線ベクトルnを決定すればよい。すなわち、座標(xa,ya)で示される補正後の切出中心点を通りZ軸に平行な直線と仮想球面Hとの交点Qを定義し、原点Oを起点として当該交点Qを通るベクトルを視線ベクトルnとすることができる。
【0105】
このような方法を採れば、変換対象となる歪曲円形画像が、等距離射影方式の魚眼レンズによって撮影された等距離射影画像である場合にも、基本的には、これまで述べてきた方法と同等の変換処理を適用することが可能になる。もちろん、この方法は、等距離射影画像への適用に限定されるものではなく、非正射影画像一般に広く適用することが可能である。
【0106】
なお、図21に示す射影方式正変換式(12)〜(14)や、射影方式逆変換式(15)〜(17)に基づく演算を実行する場合、変換対象となる歪曲円形画像の半径RをR=1とする正規化を行うのが好ましい。後述するとおり、変換対象となる歪曲円形画像は、実際にはメモリ上の画像データとして格納されることになり、半径Rの寸法値は任意の単位で取り扱うことが可能である。したがって、画像変換装置の内部処理を行う上で、変換対象となる歪曲円形画像の半径Rを「寸法の基準単位」に設定するようにすれば、これまで述べてきた様々な演算式における半径Rの値を、R=1とおくことができ、演算負担を軽減することが可能になる。
【0107】
たとえば、図21に示す等距離射影画像に関する変換式(12)〜(17)の場合、R=1とする正規化を行えば、図22にも示すとおり、次のように単純化することができる。
<等距離射影→正射影>
xa=xb・ sin (πrb/2)/rb 式(18)
ya=yb・ sin (πrb/2)/rb 式(19)
但し、rb=√(xb2+yb2) (0≦rb≦1) 式(20)
<正射影→等距離射影>
xb=xa・ sin-1 (ra)/ra・2/π 式(21)
yb=ya・ sin-1 (ra)/ra・2/π 式(22)
但し、ra=√(xa2+ya2) (0≦ra≦1) 式(23)
【0108】
ここで、図23に示すように、
Ka= sin (πrb/2)/rb 式(24)
Kb= sin-1 (ra)/ra・2/π 式(25)
とおけば、
<等距離射影→正射影>
xa=Ka・xb, ya=Ka・yb 式(26)
<正射影→等距離射影>
xb=Kb・xa, yb=Kb・ya 式(27)
なる式が得られる。後述する実施形態では、この式(24)〜(27)の形で演算を行っている。
【0109】
以上、変換対象となる歪曲円形画像が、等距離射影方式の魚眼レンズによって撮影された等距離射影画像である場合について、本発明を適用する具体的な方法を述べたが、本発明は、この他の非正射影画像一般にも広く適用することが可能である。図24は、半径R=1とする正規化を行った場合の様々な歪曲円形画像上の座標と正射影歪曲円形画像上の座標との間の座標変換式を示す図である。
【0110】
図24の上段に示すとおり、魚眼レンズの実際の射影方式で撮影することにより得られた歪曲円形画像を、正射影歪曲円形画像に変換する場合の一般式は、
xa=Ka・xb, ya=Ka・yb 式(26)
となり、逆に、正射影歪曲円形画像を、魚眼レンズの実際の射影方式で撮影することにより得られた歪曲円形画像に変換する場合の一般式は、
xb=Kb・xa, yb=Kb・ya 式(27)
となる。ここで、Ka,Kbは、魚眼レンズの実際の射影方式の種類に応じて値が異なる係数であり、図24にも示すとおり、次のような値をとる。
【0111】
<実際の射影方式が正射影の場合>
Ka=Kb=1 式(28)
(実際には、座標を変換する演算は必要ない)
<実際の射影方式が等距離射影の場合>
Ka= sin (πrb/2)/rb 式(24)
Kb= sin-1 (ra)/ra・2/π 式(25)
<実際の射影方式が立体射影の場合>
Ka=2/(1+rb2) 式(29)
Kb=1/(1+√(1−ra2)) 式(30)
<実際の射影方式が等立体角射影の場合>
Ka=√(2−rb2) 式(31)
Kb=1/√(1+√(1−ra2)) 式(32)
但し、ra=√(xa2+ya2) (0≦ra≦1) 式(33)
但し、rb=√(xb2+yb2) (0≦rb≦1) 式(34)
【0112】
<<< §5.本発明における画像変換処理の基本方針 >>>
【0113】
続いて、本発明における画像変換処理の基本方針を説明する。図25は、図9に示すモデルの下方に、更に、別な座標系を追加したモデルを示す斜視図である。図25の上段に示すXaYaZa座標系は、図9に示すモデルにおけるXYZ座標系に対応するものであり、二次元XaYa直交座標系は正射影方式の座標系である。これに対して、下段に示すXbYbZb座標系は、同様に三次元直交座標系であるが、二次元XbYb直交座標系は実際の射影方式の座標系である。実際の撮影によって得られた歪曲円形画像SSは、下段に示す二次元XbYb直交座標系に配置される。
【0114】
上段に示す二次元XaYa直交座標系は、二次元UV直交座標系への座標変換を行うための仲介ステージとして利用される。すなわち、実際の撮影によって得られた歪曲円形画像SSと、二次元UV直交座標系上の平面正則画像Tとは、二次元XaYa直交座標系上の正射影画像Sを媒介として対応づけられることになる。
【0115】
この図25に示すモデルにおいて、二次元XaYa直交座標系(正射影方式の座標系)上の任意の点の座標値を(xa,ya)とし、二次元XbYb直交座標系(実際の射影方式の座標系)上の対応する点の座標値を(xb,yb)とすれば、これら2点の座標値は、図24に示す式(26)および式(27)を用いて相互に変換可能になる。ここで、係数Ka,Kbの値は、実際の射影方式が、正射影方式の場合は式(28)により決定され、等距離射影方式の場合は式(24),(25)により決定され、立体射影方式の場合は式(29),(30)により決定され、等立体角射影方式の場合は式(31),(32)により決定される。
【0116】
一方、二次元XaYa直交座標系(正射影方式の座標系)上の任意の点の座標値(xa,ya)と、二次元UV直交座標系上の対応点の座標値(u,v)とは、既に述べたとおり、図17に示す式(1)〜(9)によって関連づけられる(式(1)および(2)の(x,y)を、(xa,ya)に置き換えればよい)。結局、二次元XbYb直交座標系上の任意の点の座標値(xb,yb)と、二次元UV直交座標系上の対応点の座標値(u,v)とは、二次元XaYa直交座標系上の点の座標値(xa,ya)を介して関連づけられることになる。
【0117】
さて、まず、XbYb直交座標系上に配置されている歪曲円形画像SS(実際の撮影によって得られた画像)をユーザに提示し、任意の位置に切出中心点PP(x00,y00)を指定させる。既に述べたとおり、この切出中心点PP(x00,y00)は、ユーザが歪曲円形画像SSから切り出して平面正則画像に変換したいと欲する切出領域Eの中心を示す点である。ユーザは、実際の撮影によって得られた画像SSを見ながら、当該画像SS上の所望の位置に、切出中心点PP(x00,y00)を指定することができる。
【0118】
この切出中心点PP(x00,y00)は、図25の左上に示すUV座標系の原点G(xg,yg,zg)の位置、別言すれば、視線ベクトルnの方向を決定するためのパラメータになる。しかしながら、この切出中心点PP(x00,y00)の位置から直接的には、視線ベクトルnの方向を左右する交点Q(x0,y0,z0)を求めることはできない。交点Q(x0,y0,z0)は、XaYa座標系(正射影方式の座標系)上の切出中心点P(x0,y0)を通りZ軸に平行な直線と仮想球面Hとの交点として定義される点である。
【0119】
そこで、図25に一点鎖線で示すように、まず、切出中心点PP(x00,y00)の位置に基づいて、切出中心点P(x0,y0)の位置を求める。すなわち、座標(x00,y00)を座標(xb,yb)とし、座標(x0,y0)を座標(xa,ya)として、図24に示す式(26)を適用すれば、座標(x00,y00)に対応する座標(x0,y0)を算出することができる。こうして、切出中心点P(x0,y0)の位置が定まれば、交点Q(x0,y0,z0)を決定し、視線ベクトルnの方向を決定することができる。更に、倍率mおよび平面傾斜角φの値が、ユーザからパラメータとして与えられれば、UV座標系の位置および向きを決定することができる。これは、図17に示す対応関係式(1)〜(9)が定まることを意味する。
【0120】
すなわち、図17に示す式(1)〜(9)において、方位角αおよび天頂角βは、視線ベクトルnの方向が定まれば一義的に定まり、倍率mおよび平面傾斜角φの値がパラメータとして与えられ、歪曲円形画像の半径Rも既知であるため(前述したとおり、実用上は、R=1になるような正規化を行う)、任意の座標(u,v)の値を式(1),(2)に代入すれば、座標(x,y)の値を得ることができる。こうして得られた座標(x,y)は、図25に示すモデルにおけるXaYa座標系上の座標(xa,ya)に相当する。したがって、たとえば、図25に示すように、UV座標系上の任意の点Ti(ui,vi)に対して、XaYa座標系上の対応する点Si(xi,yi)を求めることができる。
【0121】
続いて、図25に一点鎖線で示すように、この点Si(xi,yi)の位置に基づいて、XbYb座標系上の対応する点SSi(xii,yii)を求める。すなわち、座標(xi,yi)を座標(xa,ya)とし、座標(xii,yii)を座標(xb,yb)として、図24に示す式(27)を適用すれば、座標(xi,yi)に対応する座標(xii,yii)を算出することができる。そこで、歪曲円形画像SS上における対応点SSi(xii,yii)に位置する画素の画素値を、平面正則画像T上における点Ti(ui,vi)の画素の画素値と決定する。このような処理を、平面正則画像T上の個々の点(画素の配置点)について繰り返し実行すれば、所望の切出中心点PP(x00,y00)の位置を中心とした所定の切出領域E内の歪曲円形画像SSについて、対応する平面正則画像Tを得ることができる。
【0122】
本発明の重要な特徴は、上述した画像変換処理を行う際に、演算負担を軽減させるための特有の演算手法を採る点にある。以下、この特徴について説明する。上述したとおり、図25に示すモデルにおいて、UV座標系上の任意の点Ti(ui,vi)に対して、XaYa座標系上の対応する点Si(xi,yi)を求める際に、図17に示す対応関係式(1)〜(9)が用いられる。これらの式には、三角関数演算、開平演算、逆数演算が含まれており、式のとおりに演算を行うと、その演算負担はかなり重くなる。
【0123】
そこで、図26に示すような方法で、式の変形を試みる。まず、歪曲円形画像Sの半径(仮想球面Hの半径)をR=1とする正規化が行われているとして、図25に示すXaYaZa座標系上の切出中心点P(x0,y0,0)について、球面上対応点Q(x0,y0,z0)をとった場合の方位角αおよび天頂角βの余弦および正弦を考えると、
cos α=y0/ra, cos β=z0,
sin α=−x0/ra, sin β=ra
但し、raは、XaYa平面上の2点OPの距離 式(35)
なる関係が得られる。そこで、図17の式(3)〜(8)に、上式を代入すると、
A=(y0・cosφ+x0・z0・sinφ)/ra 式(36)
B=(−y0・sinφ+x0・z0・cosφ)/ra 式(37)
C=−x0 式(38)
D=(−x0・cosφ+y0・z0・sinφ)/ra 式(39)
E=(x0・sinφ+y0・z0・cosφ)/ra 式(40)
F=−y0 式(41)
となる。ここで、
ra=√(x02+y02), z0=√(1−ra2) 式(42)
である。
【0124】
図17に示す演算式(3)〜(8)と比べると、図26に示す演算式(36)〜(41)では、三角関数演算が大幅に低減していることがわかる。したがって、図26に示す演算式(36)〜(41)を用いて回転係数A〜Fを算出するようにすれば、演算負担の軽減を図ることができる。
【0125】
なお、切出中心点P(x0,y0,0)が原点Oの位置であった場合(歪曲円形画像の中心点が切出中心点として指定された場合)、ra=0となるので、式(35)〜(41)の分母が零となり、回転係数A〜Fの値は定義できなくなる。そこで、ra=0の場合は、A=cosφ,B=−sinφ,C=0,D=sinφ,E=cosφ,F=0と定義する。これは、図18に示した特殊な場合に相当し、当該特殊な場合に限り、上述した定義を行うようにすることにより、正しい対応関係を示すための回転係数A〜Fが得られる。
【0126】
次に、図17に示す演算式(1),(2)を変形してみる。図25に示すモデルでは、演算式(1),(2)によって得られる座標(x,y)は、Xa,Ya座標系上の座標であるので、ここでは座標(xa,ya)と記すことにする。すると、演算式(1),(2)は、図27の上段に示すように、
xa=R(uA+vB+wC)/
√(u2+v2+w2) 式(44)
ya=R(uD+vE+wF)/
√(u2+v2+w2) 式(45)
と書き直せる。この式(44),(45)において、半径R=1とする正規化を前提としてR=1を代入し、更に、分母分子をwで除し、1/w=tとおけば、図27の中段に示すように、
xa=(utA+vtB+C)/
√((ut)2+(vt)2+1) 式(46)
ya=(utD+vtE+F)/
√((ut)2+(vt)2+1) 式(47)
なる式が得られる。
【0127】
ここで、更に、係数K1,Kx,Kyを
K1=1/√((ut)2+(vt)2+1) 式(48)
Kx=utA+vtB+C 式(49)
Ky=utD+vtE+F 式(50)
のように定義すると、
xa=K1・Kx 式(51)
ya=K1・Ky 式(52)
という単純な式が得られる。
【0128】
上記係数K1は、式(48)で定義されるため、実際に演算によって求めるには、開平演算および逆数演算を行う必要がある。そこで、本発明では、後述するように、この係数K1をルックアップテーブルを参照する処理を利用して求めるようにしている。一方、tは、wの逆数として与えられる値である。こうして、係数K1と逆数tとが与えられれば、式(49)〜(52)の演算は、単なる積および和の演算であり、その演算負担は極めて軽いものである。
【0129】
このように、本発明では、上記式(46),(47)の演算を、式(48)で定義される係数K1をルックアップテーブルを参照して求める処理と、wの逆数tを求める演算処理(ルックアップテーブルを参照して求める処理でもよい)と、式(49)〜(52)に示す積和演算処理と、に分けて行う。その結果、全体の演算負担は大幅に軽減されることになる。
【0130】
<<< §6.本発明に係る画像変換装置の基本構成 >>>
【0131】
ここでは、図28のブロック図を参照しながら、本発明の一実施形態に係る画像変換装置を、魚眼監視システムに利用した例を説明する。図示のとおり、この魚眼監視システムは、パラメータ入力ユニット110,魚眼レンズ装着デジタルカメラ120,モニタ装置130,画像変換装置200,インターフェイス115,125,135によって構成されている。インターフェイス115,125,135は、それぞれパラメータ入力ユニット110,魚眼レンズ装着デジタルカメラ120,モニタ装置130と、画像変換装置200との間のデータの受け渡しの仲介処理を行う構成要素である。
【0132】
本発明の一実施形態に係る画像変換装置200は、図28に一点鎖線で囲まれた構成要素210〜290によって構成され、魚眼レンズを用いた撮影により得られた歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う機能を有している。図示の構成要素210〜290は、それぞれ所定の電子回路によって構成することができ、画像変換装置200は、これら電子回路が組み込まれた半導体集積回路によって実現することができる。あるいは、この画像変換装置200を、汎用コンピュータに専用のプログラムを組み込むことにより構成することも可能である。この場合、図にブロックで示す各構成要素210〜290は、コンピュータのハードウエアもしくはプログラムとして組み込まれたソフトウエアによって実現されることになる。
【0133】
歪曲円形画像用メモリ220は、二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった歪曲円形画像を格納する構成要素である。魚眼レンズ装着デジタルカメラ120を用いた撮影により得られた歪曲円形画像SSは、インターフェイス125を介して、この歪曲円形画像用メモリ220内に格納される。こうして格納された歪曲円形画像SSは、図25に示すモデルにおいて、XbYb座標系に配置された画像SSに対応する。したがって、デジタルカメラ120に装着されている魚眼レンズは任意の射影方式のものでかまわない。
【0134】
一方、平面正則画像用メモリ230は、二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する構成要素である。こうして格納された平面正則画像Tは、図25に示すモデルにおいて、UV座標系に配置された画像Tに対応する。この画像変換装置200で実行される処理の目的は、「平面正則画像用メモリ230内の座標(u,v)」に対応する「歪曲円形画像用メモリ220内の座標(x,y)」を演算によって求め、座標(u,v)で示される位置に配置された画素の画素値を、座標(x,y)で示される位置(もしくはその近傍)に配置された画素の画素値に基づいて決定し、平面正則画像用メモリ230内に平面正則画像Tを作成することにある。
【0135】
歪曲円形画像用メモリ220および平面正則画像用メモリ230は、一般的な画像データ格納用のバッファメモリによって構成することができる。歪曲円形画像用メモリ220に格納された歪曲円形画像SSおよび平面正則画像用メモリ230に格納された平面正則画像Tは、ユーザの要望に応じて、インターフェイス135を介してモニタ装置130上に表示される。
【0136】
魚眼レンズ装着デジタルカメラ120は、監視カメラなどに利用されている一般的なデジタルビデオカメラであり、180°の画角をもって周囲の被写体を撮影し、半径Rをもった歪曲円形画像SSをデジタルデータとして生成する機能を有する。このデジタルデータとして生成された歪曲円形画像SSは、歪曲円形画像用メモリ220へと格納される。この歪曲円形画像SSの所定の一部分は平面正則画像Tに変換され、平面正則画像用メモリ230に格納される。こうして、平面正則画像用メモリ230に得られた平面正則画像Tは、モニタ装置130によって画面上に表示される。
【0137】
パラメータ入力ユニット110は、ユーザの操作に基づいて、視線ベクトルn,平面傾斜角φ,倍率mを指定するためのパラメータを入力する構成要素である。既に述べたとおり、これらのパラメータは、図25に示すモデルにおける二次元UV直交座標系の位置および向きを決定するために必要なパラメータである。
【0138】
ここに示す実施形態の場合、視線ベクトルnを指定するためのパラメータとして、切出中心点PP(x00,y00)の位置が用いられる。たとえば、ユーザは、モニタ装置130上に表示された歪曲円形画像SSを見ながら、画像上の所望の1点をマウスクリックなどの操作で指定する操作を行えばよい。パラメータ入力ユニット110に、このようなマウスクリック操作に基づいて切出中心点PP(x00,y00)の位置を取り込む機能をもたせておけば、インターフェイス115を介して、切出中心点PP(x00,y00)の位置を画像変換装置200側へ与えることができる。
【0139】
一方、ユーザが指定した平面傾斜角φおよび倍率mも、インターフェイス115を介して、画像変換装置200側へ引き渡される。平面傾斜角φや倍率mをユーザに指定させる仕組みはどのようなものでもかまわない。φやmの値をキーボードなどから数値入力させてもよいし、モニタ装置130の画面上におけるマウス操作により、所望のφやmの値を決定させるようにしてもかまわない。
【0140】
パラメータ入力ユニット110から与えられた切出中心点PP(x00,y00)の位置を示す情報は、射影方式正変換部210へ与えられる。射影方式正変換部210は、図25のモデルにおいて一点鎖線で示す点PP(x00,y00)から点P(x0,y0)への変換処理を行う構成要素である。すなわち、正射影方式の歪曲円形画像上の座標(xa,ya)と実際の射影方式の歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式(図24参照)を用いて、実際の射影方式の歪曲円形画像上で指定された切出中心点PP(x00,y00)の座標x00,y00を、正射影歪曲円形画像上で対応する切出中心点P(x0,y0)の座標x0,y0に変換する処理が行われる。
【0141】
こうして得られた切出中心点P(x0,y0)の座標x0,y0は、係数算出部240へ与えられる。この係数算出部240には、パラメータ入力ユニット110によって入力された平面傾斜角φおよび倍率mも与えられる。係数算出部240は、歪曲円形画像用メモリ220に格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と、平面正則画像用メモリ230に格納されている平面正則画像Tを構成する画素の座標(u,v)との対応関係を示す対応関係式(図27の上段に示す式(44),(45))に必要な回転係数A〜Fを算出するための構成要素である。
【0142】
座標(u,v)と座標(xa,ya)との対応関係式を決定するためには、図25のモデルに示す視線ベクトルn,平面傾斜角φ,倍率mを決定する必要がある。係数算出部240は、切出中心点P(x0,y0)の座標値x0,y0に基づいて、この切出中心点P(x0,y0)を通りZ軸に平行な直線と原点Oを中心として半径Rをもった仮想球面との交点G(x0,y0,z0)を求め、原点Oを起点として交点G(x0,y0,z0)を通るベクトルを視線ベクトルnとして、係数の算出を行うことになる。平面傾斜角φおよび倍率mとしては、パラメータ入力ユニット110から与えられた値をそのまま利用すればよい。
【0143】
ここに示す実施形態では、歪曲円形画像用メモリ220に格納される歪曲円形画像SSの半径Rは、R=1となるように正規化されている。したがって、§5で述べたとおり、回転係数A〜Fは、図26に示す式(36)〜(43)を用いて算出できる。また、係数算出部240では、wの逆数値tを得る逆数演算も実行される。図17の式(9)に示すとおり、wの値は、w=mRによって与えられる。
【0144】
こうして、係数算出部240で算出された回転係数A〜Fおよび逆数tは、座標変換部270へ与えられる。一方、uv座標値発生部290は、平面正則画像用メモリ230内の平面正則画像Tを構成する個々の画素の位置を示す座標(u,v)を順次発生させ、座標変換部270に与える機能を果たす。座標変換部270は、こうしてuv座標値発生部290が発生させた特定の座標(u,v)に対して、係数算出部240によって算出された回転係数A〜Fおよび逆数tが含まれた対応関係式を用いた演算を施すことにより、正射影歪曲円形画像S上での対応座標(xa,ya)を求める処理を行う。具体的には、図27に示す式(48)〜(52)に基づく演算が行われる。この演算は、図25に示すモデルの場合、点Ti(ui,vi)の座標(ui,vi)に基づいて、点Si(xi,yi)の座標(xi,yi)を求める演算に相当する。
【0145】
こうして、座標変換部270が求めた座標(xa,ya)は、正射影歪曲円形画像S上での座標(図25に示すモデルの場合、XaYa座標系上の座標)であるので、続いて、これを実際の射影方式の座標(xb,yb)(図25に示すモデルの場合、XbYb座標系上の座標)に変換する必要がある。射影方式逆変換部280は、このような変換処理を行う構成要素である。すなわち、正射影歪曲円形画像上の座標(xa,ya)と実際の射影方式の歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式(図24参照)を用いて、座標(xa,ya)を座標(xb,yb)に変換する処理を行う。この演算は、図25に示すモデルの場合、点Si(xi,yi)の座標(xi,yi)に基づいて、点SSi(xii,yii)の座標(xii,yii)を求める演算に相当する。
【0146】
こうして、射影方式逆変換部280によって変換された座標(xb,yb)は、データ読出部250に与えられる。このデータ読出部250は、歪曲円形画像用メモリ220内の座標(xb,yb)の位置に配置された画素の画素値を読み出し、これを画素値決定部255に与える。画素値決定部255は、この読み出された画素値をデータ書込部260に与え、データ書込部260は、当該画素値を、uv座標値発生部290が発生させた座標(u,v)に位置する画素の画素値として、平面正則画像用メモリ230に書き込む処理を行う。
【0147】
かくして、uv座標値発生部290が発生させた座標(u,v)に位置する1つの画素の画素値が決定することになる。前述したように、uv座標値発生部290は、平面正則画像Tを構成する個々の画素の位置を示す座標(u,v)を順次発生させる機能を有している。したがって、上述した処理を各画素について繰り返し実行すれば、平面正則画像Tを構成する全画素の画素値が決定し、平面正則画像用メモリ230に、平面正則画像Tが得られることになる。
【0148】
もっとも、歪曲円形画像用メモリ220内に格納されている歪曲円形画像SSは、二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成された画像であり、実際には、所定ピッチで縦横に配列された多数の格子点の位置に、それぞれ固有の画素値を定義したデジタルデータによって構成されている。このため、射影方式逆変換部280から得られた座標(xb,yb)の位置は、通常、複数の格子点の間の位置になる。たとえば、歪曲円形画像SSが、ピッチ1で縦横に配列された多数の格子点位置の画素値を定義したデジタルデータによって構成されている場合、いずれの格子点も、その座標値は整数値になる。よって、与えられた座標xbおよびybの値が小数を含む値であると(多くの場合はそうなるであろう)、対応座標(xb,yb)の位置は、複数の格子点の間の位置になり、対応する画素値を1つに決めることはできない。
【0149】
したがって、実際には、データ読出部250は、歪曲円形画像用メモリ220内の座標(xb,yb)の近傍に配置された複数の画素の画素値を読み出し、これを画素値決定部255に与える。画素値決定部255は、読み出した画素値に基づいて、座標(u,v)で示される平面正則画像上の画素の画素値を決定する。このような決定をする際には、読み出された複数の参照画素の画素値に対する補間演算を行う必要がある。このような補間演算を行う方法としては、たとえば、バイリニア補間法、バイキュービック・スプライン補間法など、様々な方法が公知であるため、ここでは詳しい説明は省略する。もちろん、そのような補間を行わずに、対応座標(xb,yb)で示される位置に最も近い画素の画素値をそのまま用いる方法を採ることも可能である。
【0150】
なお、上述した実施形態では、歪曲円形画像をメモリ220内に格納する際に、その半径Rが、R=1となるように正規化する例を述べた。ここで、R=1とする正規化を行う理由は、既に述べたとおり、座標変換の演算処理を単純化するためである。したがって、実用上は、少なくとも座標変換部270および射影方式逆変換部280における演算において、R=1とする正規化が行われていれば、実際にメモリ220内に格納されている歪曲円形画像の半径Rは、必ずしも正規化しておく必要はない。
【0151】
もし、メモリ220内に格納する歪曲円形画像の半径Rを正規化しない運用を採る場合には、係数算出部240においては実際の半径値Rを用いた演算を行って係数値を算出し、座標変換部270および射影方式逆変換部280では、上述した実施形態で説明したとおり、R=1とする正規化を行った場合の演算式で座標変換の演算を行えばよい。その上で、射影方式逆変換部280で得られた座標値(xb,yb)に対して、実際の半径値Rを乗じる補正を行い、補正後の座標値をデータ読出部250に与えるようにすればよい。要するに、座標変換部270および射影方式逆変換部280における演算において、メモリ220内に格納されている歪曲円形画像を、半径R=1となるように正規化した取り扱いがなされるようにすればよい。
【0152】
<<< §7.各構成要素の詳細構成 >>>
【0153】
続いて、図28に示す装置200における射影方式正変換部210,係数算出部240,座標変換部270,射影方式逆変換部280のより詳細な構成を説明する。
【0154】
図29は、射影方式正変換部210の詳細な構成を示すブロック図である。図示のとおり、ここに示す射影方式正変換部210は、rb演算手段211、rb→Ka変換手段212、射影方式変換手段213によって構成されており、与えられた切出中心点PP(x00,y00)の座標値x00,y00に基づいて、切出中心点P(x0,y0)の座標値x0,y0を算出する機能を有している。これは、非正射影方式の魚眼レンズを用いた撮影により得られる歪曲円形画像上の座標(x00,y00)を、正射影歪曲円形画像上の座標(x0,y0)に変換する処理である。
【0155】
rb演算手段211は、座標(x00,y00)に基づいて、「rb=√(x002+y002)」なる演算(図24の式(34)に対応する演算)を行ってrbを求める処理を行う。
【0156】
rb→Ka変換手段212は、こうして得られたrbを用いて、係数Kaを求める処理を行う。ここで、係数Kaを求める演算式は、歪曲円形画像用メモリ220内に格納されている歪曲円形画像SSの実際の射影方式(すなわち、デジタルカメラ120に装着されている魚眼レンズの射影方式)の種類によって異なる。すなわち、等距離射影方式の場合は、「Ka=(sin(πrb/2))/rb」なる演算式(図24の式(24))が用いられ、立体射影方式の場合は、「Ka=2/(1+rb2)」なる演算式(図24の式(29))が用いられ、等立体角射影方式の場合は、「Ka=√(2−rb2)」なる演算式(図24の式(31))が用いられる。
【0157】
なお、様々な射影方式の魚眼レンズを装着したデジタルカメラ120によって撮影された歪曲円形画像に対応できるようにするには、rb→Ka変換手段212内に、予め上述したような複数種類の射影方式に対応した演算式に基づく演算機能を用意しておき、変換対象となる歪曲円形画像の射影方式の種類に応じて、対応する演算式を選択できるような構成にしておけばよい。
【0158】
射影方式変換手段213は、座標(x00,y00)と係数Kaとに基づいて、「x0=Ka・x00」および「y0=Ka・y00」なる演算(図24の式(26)に対応する演算)を行い、座標(x0,y0)を求める処理を行う。
【0159】
この射影方式正変換部210で実行される演算処理には、開平演算(式(34),(31)や三角関数演算(式(24))が含まれている。これらの演算自体は、いずれも演算負荷が重い処理であるが、図28に示す画像変換装置200全体の処理を考慮すると、それほど演算負荷が問題になる処理ではない。なぜなら、そもそも射影方式正変換部210による変換演算は、ユーザが所望の切出中心点PP(x00,y00)を指定するたびに1回だけ行えばよい処理であり、座標変換部270における演算処理や射影方式逆変換部280における演算処理に比べて、頻度が極めて低い処理になるからである。
【0160】
たとえば、平面正則画像用メモリ230上に得られる平面正則画像Tのサイズが、640画素×480画素であったとすると、平面正則画像Tは約30万個の画素の集合から構成されることになる。この場合、uv座標値発生部290は、この約30万個の画素のそれぞれの座標(u,v)を順次発生させ、座標変換部270に与えることになる。したがって、1枚の平面正則画像Tを得るために、座標変換部270および射影方式逆変換部280は、30万通りの座標(u,v)のそれぞれについて演算処理を実行しなければならない。これに対して、射影方式正変換部210による演算処理は、1枚の平面正則画像Tを得るために、1回行えば足りる処理であり、演算頻度は約30万分の1になる。
【0161】
このように、射影方式正変換部210で実行される演算処理の負担は、画像変換装置200全体の処理負担に比べて極めて小さいものになる。したがって、図29に示すように、射影方式正変換部210で実行される演算処理に、開平演算や三角関数演算などの負荷の大きな演算処理が含まれていても、実用上は、大きな問題にはならない。
【0162】
図30は、係数算出部240の詳細な構成を示すブロック図である。図示のとおり、ここに示す係数算出部240は、3つの演算手段241,242,243によって構成されており、射影方式正変換部210から与えられた切出中心点P(x0,y0)の座標値x0,y0と、パラメータ入力ユニット110から与えられた平面傾斜角φおよび倍率mに基づいて、回転係数A〜Fおよび逆数tを算出する機能を有している。
【0163】
演算手段241は、座標値x0,y0に基づいて、「ra=√(x02+y02)」および「z0=√(1−ra2)」なる演算(図26の式(42))を行い、ra,z0を求める処理を行う。演算手段242は、こうして求められたra,z0および座標値x0,y0、ならびに平面傾斜角φに基づいて、
A=(y0・cosφ+x0・z0・sinφ)/ra 式(36)
B=(−y0・sinφ+x0・z0・cosφ)/ra 式(37)
C=−x0 式(38)
D=(−x0・cosφ+y0・z0・sinφ)/ra 式(39)
E=(x0・sinφ+y0・z0・cosφ)/ra 式(40)
F=−y0 式(41)
なる演算(但し、ra=0の場合は、A=cosφ,B=−sinφ,C=0,D=sinφ,E=cosφ,F=0)を行い、係数A,B,C,D,E,Fを算出する処理を行う(図26の各式)。また、演算手段243は、与えられた倍率mに基づいて、t=1/mなる逆数演算を行い、係数tを算出する。図17の式(9)に示すとおり、wの値は、w=mRによって与えられるが、R=1とする正規化が行われているため、w=mになる。したがって、mの逆数値として算出された係数tは、wの逆数値に等しい。
【0164】
この係数算出部240で実行される演算処理にも、開平演算(式(42))、三角関数演算および除算(式(36),(37),(39),(40))、逆数演算が含まれている。これらの演算自体は、いずれも演算負荷が重い処理であるが、やはり図28に示す画像変換装置200全体の処理を考慮すると、それほど演算負荷が問題になる処理ではない。これは、射影方式正変換部210による変換演算と同様に、係数算出部240で実行される演算は、ユーザが所望の切出中心点PP(x00,y00)を指定するたびに1回だけ行えばよい処理であり、座標変換部270における演算処理や射影方式逆変換部280における演算処理に比べて、頻度が極めて低い処理になるからである。したがって、図30に示すように、係数算出部240で実行される演算処理に、開平演算、三角関数演算、除算、逆数演算などの負荷の大きな演算処理が含まれていても、実用上は、大きな問題にはならない。もちろん、演算負担軽減のために、一部分の処理を実際の演算ではなく、ルックアップテーブルを引く処理に置き換えてもかまわない。
【0165】
図31は、座標変換部270の詳細な構成を示すブロック図である。図示のとおり、ここに示す座標変換部270は、KxKy演算手段271、xy演算手段272、T1→K1変換手段273、T1→K1テーブル274、T1演算手段275によって構成されており、与えられた回転係数A〜Fおよび逆数tを用いて、任意の座標(u,v)に対応する対応座標(xa,ya)を求める機能を有している。
【0166】
T1演算手段275は、与えられた座標(u,v)と逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求める処理を行う。一方、T1→K1テーブル274は、「K1=1/√T1」なる関係式で定まるK1の値を、T1の値に基づいて参照することができるルックアップテーブルであり、予想範囲内のT1の値に対応する各K1の値(開平値の逆数)を予め収録している。T1→K1変換手段273は、このT1→K1テーブル274を参照することにより、T1演算手段275によって求められたT1に対応するK1を決定する処理を行う。
【0167】
なお、変形例として、T1→K1テーブル274の代わりに、「K1=√N」なる関係式で定まる開平値K1の値を、Nの値に基づいて参照することができる開平値テーブル(開平値のルックアップテーブル)を利用することも可能である。この場合、T1→K1変換手段273は、次のような処理を行えばよい。まず、T1演算手段275によって求められたT1に基づいて、逆数N=1/T1を求めるための除算を行う。続いて、上述した開平値テーブルを参照することにより、得られた逆数Nの開平値としてK1を求めれば、結局、「K1=1/√T1」なる関係式で定まるK1の値が得られる。この変形例では、逆数N=1/T1を求めるための除算が必要になるため、演算負担は若干増えることになるが、開平値テーブルの利用により開平演算は省略できる。
【0168】
KxKy演算手段271は、与えられた座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算(図27の式(49),(50))を行い、KxおよびKyを求める処理を行う。そして、xy演算手段272は、Kx,Ky,K1に基づいて、「xa=K1・Kx」および「ya=K1・Ky」なる演算を行い、座標(xa,ya)を求める処理を行う。なお、R=1とする正規化を行わない場合は、更にRを乗じる演算を追加すればよい。
【0169】
この座標変換部270で実行される処理に着目すると、いずれも積和演算のみであることがわかる。T1→K1変換手段273は、T1に基づいて、「K1=1/√T1」なる関係式で定まるK1の値を決定する処理を行うが、当該処理は演算によって行われるものではなく、T1→K1テーブル274を参照することによって行われるものである。したがって、この座標変換部270では、開平演算や逆数演算は排除されている。一般に積和演算は比較的負担の小さい演算であるため、この座標変換部270で実行される演算処理の負担は極めて小さくなる。上述したとおり、座標変換部270は、平面正則画像Tを構成する全画素のそれぞれについて、座標(u,v)を座標(xa,ya)に変換する処理を実行しなければならないので、この座標変換部270の演算負担を軽減させることは、画像変換装置200全体の演算負担を軽減させる上で大きな意義がある。
【0170】
図32は、射影方式逆変換部280の詳細な構成を示すブロック図である。図示のとおり、ここに示す射影方式逆変換部280は、G演算手段281、G→Kb変換手段282、G→Kbテーブル283、射影方式変換手段284によって構成されており、正射影歪曲円形画像上の座標(xa,ya)を、実際の射影方式の歪曲円形画像上の座標(xb,yb)に変換する機能を有している。
【0171】
G演算手段281は、与えられた座標(xa,ya)に基づいて、「G=xa2+ya2」なる演算(図24の式(33)に準じた演算)を行ってGを求める処理を行う。ここで、Gは「ra2」に対応する値である。「ra」を求めずに、「ra2」に対応する値Gを求めているのは、開平演算を避けるための便宜である。
【0172】
G→Kb変換手段282は、こうして得られたGを用いて、係数Kbを求める処理を行う。ここで、係数Kbを求める演算式は、歪曲円形画像用メモリ220内に格納されている歪曲円形画像SSの実際の射影方式(すなわち、デジタルカメラ120に装着されている魚眼レンズの射影方式)の種類によって異なる。すなわち、等距離射影方式の場合は、「Kb=(sin-1√G/√G)・2/π」なる演算式(図24の式(25))が用いられ、立体射影方式の場合は、「Kb=1/(1+√(1−G))」なる演算式(図24の式(30))が用いられ、等立体角射影方式の場合は、「Kb=1/√(1+√(1−G))」なる演算式(図24の式(32))が用いられる。
【0173】
もっとも、G→Kb変換手段282は、実際に上記演算式に基づく演算を実行して係数Kbを求める処理を行うわけではなく、G→Kbテーブル283を参照することにより、G演算手段281によって求められたGに対応するKbを決定する処理を行う。G→Kbテーブル283は、上記各関係式で定まるKbの値を、Gの値に基づいて参照することができるルックアップテーブルであり、予想範囲内のGの値に対応する各Kbの値を予め収録している。G→Kb変換手段282は、このG→Kbテーブル283を参照することにより、G演算手段281によって求められたGに対応するKbを決定する処理を行う。
【0174】
ここでも、様々な射影方式の魚眼レンズを装着したデジタルカメラ120によって撮影された歪曲円形画像に対応できるようにするには、G→Kbテーブル283内に、予め上述したような複数種類の射影方式に対応した演算式に基づく演算の結果として得られたKbの値をそれぞれ用意しておき、G→Kb変換手段282が、変換対象となる歪曲円形画像の射影方式の種類に応じて、G→Kbテーブル283内の対応するKbの値を選択的に参照できるような構成にしておけばよい。
【0175】
射影方式変換手段284は、与えられた座標(xa,ya)とKbとに基づいて、「xb=Kb・xa」および「yb=Kb・ya」なる演算(図24の式(27))を行い、座標(xb,yb)を求める処理を行う。
【0176】
この射影方式逆変換部280で実行される演算も、積和演算のみで構成されており、演算負担は非常に軽いものになる。G→Kb変換手段282は、Gに基づいて、式(25),(30),(32)に示す関係式で定まるKbの値を決定する処理を行うが、当該処理は演算によって行われるものではなく、G→Kbテーブル283を参照することによって行われる。このため、G→Kb変換手段282で実行される処理の負担は非常に軽い。上述したとおり、射影方式逆変換部280は、平面正則画像Tを構成する全画素のそれぞれについて、座標(xa,ya)を座標(xb,yb)に変換する処理を実行しなければならないので、この射影方式逆変換部280の演算負担を軽減させることは、画像変換装置200全体の演算負担を軽減させる上で大きな意義がある。
【0177】
以上述べたとおり、図28に示す画像変換装置200における射影方式正変換部210,係数算出部240,座標変換部270,射影方式逆変換部280を、図29〜図32に示すような構成とすることにより、画像変換装置200全体の演算負担は極めて軽減されることになる。
【0178】
<<< §8.正射影画像を変換するための装置構成 >>>
【0179】
図28に示す画像変換装置200は、任意の射影方式の魚眼レンズを用いて撮影された歪曲円形画像に対する変換に広く適用できる装置であり、そのために、射影方式正変換部210および射影方式逆変換部280が設けられている。
【0180】
しかしながら、歪曲円形画像用メモリ220に格納されている歪曲円形画像が、正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像である場合は、図25のモデルにおいて、XaYa座標系とXbYb座標系とが同一となり、座標値(xa,ya)と座標値(xb,yb)とが同一となるので、座標値(xa,ya)と座標値(xb,yb)との間の相互変換を行う必要はなく、これらの座標値を単に座標値(x,y)として取り扱えば足りる。
【0181】
したがって、変換対象となる歪曲円形画像が、正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像である場合には、図28に示す画像変換装置200の構成から、射影方式正変換部210および射影方式逆変換部280を除外することができる。この場合、パラメータ入力ユニット110によって入力される切出中心点PP(x00,y00)は、切出中心点P(x0,y0)に一致するため、そのまま係数算出部240に与えることができる。また、座標変換部270から得られる座標(xa,yb)は、座標(xb,yb)に一致し、両者を区別する必要はなく、いずれも座標(x,y)と表すことができるので、この座標(x,y)をそのままデータ読出部250に与えれば足りる。
【0182】
<<< §9.円柱面に定義された湾曲座標系を用いる変形例 >>>
【0183】
これまで、図9に示すモデルを基本として、二次元XY直交座標系上の正射影歪曲円形画像Sを二次元UV直交座標系上の平面正則画像Tに変換する原理を用いた実施形態を述べてきた。変換対象が非正射影画像SSの場合は、図25の変形モデルを用いて射影方式の変換プロセスを付加することになるが、平面正則画像Tが二次元UV直交座標系上に得られるという基本原理に変わりはない。
【0184】
しかしながら、この図9に示すモデルを基本とした変換(図17に示す対応関係式に基づく変換)により得られる平面正則画像Tは、元の歪曲円形画像S,SSに比べると「正則画像」と言うことができるが、通常のレンズを用いて撮影された通常の「正則画像」と比較すると、まだまだ歪みが残った「変則画像」と言わざるを得ない。このため、実用上は、人物の細かな特徴を確認する必要がある監視システムなどの用途に用いるには不十分である。特に、平面正則画像Tの外側部分(輪郭近傍)の歪みは大きく、水平パニングを行うような場合、滑らかなパニング映像を得ることができない。そこで、この§9では、より歪みの少ない平面正則画像に変換することが可能な変形例を述べることにする。
【0185】
図33は、図9の基本モデルに修正を加えた変形モデルを示す斜視図である。両者の相違点は、UV座標系の定義の仕方だけである。すなわち、図9の基本モデルでは、UV座標系は、点G(xg,yg,zg)を通り、視線ベクトルnに直交する平面上に定義されているのに対し、図33の変形モデルでは、この平面上に定義されたUV座標系を円柱側面に沿って湾曲させている。したがって、図9の基本モデルでは、二次元UV直交座標系(平面上の座標系)上に平面正則画像Tが得られることになるのに対して、図33の変形モデルでは、二次元UV湾曲座標系(円柱側面上の座標系)上に湾曲正則画像Cが得られることになる。
【0186】
図33に破線で示す平面正則画像Tは、図9に実線で示す平面正則画像Tと同じものであり、点G(xg,yg,zg)を通り、視線ベクトルnに直交する平面上に定義された二次元UV直交座標系上の画像である。これに対して、図33に実線で示す湾曲正則画像Cは、この平面正則画像Tを湾曲させた画像に相当し、円柱側面に沿った曲面上の画像になる。
【0187】
要するに、この図33に示すモデルで定義される二次元UV湾曲座標系は、三次元XYZ直交座標系を構成する空間内の所望の位置において、仮想円柱の側面に沿った湾曲面上に配置された座標系ということになり、この湾曲座標系上に定義される湾曲正則画像Cも、仮想円柱の側面に沿って湾曲した画像ということになる。
【0188】
この二次元UV湾曲座標系も、U軸とV軸とを有する二次元の座標系であるから、湾曲正則画像C内の任意の1点が(u,v)なる座標で示される点は、通常の平面上の二次元座標系の場合と同じである。上述したとおり、この二次元UV湾曲座標系は、点Gを原点とし、視線ベクトルnに直交する平面上に配置された二次元UV直交座標系を、仮想円柱の側面に沿って湾曲させることにより定義された座標系であるが、この湾曲のプロセスには、若干の条件が課せられている。
【0189】
すなわち、湾曲プロセスに用いる仮想円柱は、二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸V′をもち、半径がmR(点OG間の距離)に等しい円柱にする。図33において、一点鎖線で示す軸V′がこの円柱の中心軸であり、V軸とV′軸とは平行である。2点OGを結ぶ線分は、この仮想円柱の半径を構成することになり、点Gは仮想円柱の側面上の点になる。
【0190】
この湾曲プロセスを、実在の物体を用いて比喩的に述べれば、次のように説明することができる。まず、図14に示すように、横方向にU軸が描かれ、縦方向にV軸が描かれた長方形の紙片を用意する。この長方形の紙片の表面は、二次元UV直交座標系の座標面に相当する。ここで、U軸もV軸も座標軸であるので、各軸上には所定の座標目盛が刻まれており、紙片の中心点(両軸の交点)の座標はT(0,0)である。この紙片を、その中心点T(0,0)が三次元XYZ直交座標系上の点G(xg,yg,zg)の位置にくるように配置する。紙片はまだ平面の状態を維持させておき、視線ベクトルnに直交する向きに配置する。また、図33に示すように、紙片に描かれているU軸が、回転基準軸Jに対して平面傾斜角φをなすような向きに配置する。
【0191】
続いて、半径mRをもった円柱を用意し、この円柱を、その中心軸が軸V′上にくるように配置する。ここで、軸V′は、紙片に描かれているV軸に平行で、原点Oを通る直線である。円柱をこのような位置に配置すると、紙片に描かれているV軸は、円柱の側面に接触した状態になる。当然、紙片の中心点T(0,0)、すなわち点G(xg,yg,zg)も、円柱の側面に接した点になる。そこで、この紙片を、円柱側面に巻き付けるようにして湾曲させ、そのまま円柱側面に貼り付ければ、この湾曲した紙片上に描かれている座標系が、二次元UV湾曲座標系になる。
【0192】
結局、二次元UV湾曲座標系のV軸は、二次元UV直交座標系のV軸と全く同じものであり、直線状の座標軸になるが、二次元UV湾曲座標系のU軸は、円柱側面に沿った円弧状の軸になる。別言すれば、この二次元UV湾曲座標系は、仮想円柱の中心軸V′に平行なV軸と、このV軸に直交する面によって仮想円柱を切断したときの断面を構成する円の円周に沿った円弧状のU軸と、によって構成されることになる。当然、U軸上に刻まれた座標目盛は、この円弧に沿って定義された目盛になる。
【0193】
さて、この二次元UV湾曲座標系上に湾曲正則画像Cを得る原理は、二次元UV直交座標系上に平面正則画像Tを得る原理と全く同じである。すなわち、湾曲正則画像C上の1点Ci(ui,vi)について、正射影歪曲円形画像S上の1点Si(xi,yi)を対応づけ、点Ci(ui,vi)に位置する画素の画素値を、点Si(xi,yi)の近傍に位置する画素の画素値に基づいて決定すればよい。そのためには、二次元UV湾曲座標系上の任意の座標(u,v)とXY平面上の対応座標(x,y)とを1対1に対応づける対応関係式が必要になる。このような対応関係式は、§10で詳述するとおり、図17に示す対応関係式に対して補正を行うことにより得ることができる。
【0194】
こうして、二次元UV湾曲座標系上に多数の画素の集合体によって構成される湾曲正則画像Cを得ることができたら、この二次元UV湾曲座標系を平面上に展開する処理を行い、湾曲正則画像Cを平面正則画像Tに変換すればよい。この平面上への展開処理は、上述した例において、円柱側面に貼り付けた紙片を剥がし、これを平面上に貼り直す作業と考えればよい。
【0195】
もっとも、この平面上への展開処理は、演算処理上は、何ら具体的な作業を必要とするものではない。二次元UV湾曲座標系上で座標(u,v)に位置する画素(湾曲正則画像Cを構成する画素)は、平面上への展開処理を行うことにより二次元UV直交座標系上の画素(平面正則画像Tを構成する画素)になったとしても、同一座標(u,v)に位置する画素であることに変わりはない。したがって、二次元UV湾曲座標系上において、所定の座標(u,v)に位置する多数の画素の画素値を示す画素配列データが得られたら、当該画素配列データを、そのまま二次元UV直交座標系上の画素配列データとして出力し、通常のモニタ画面(平面画面)に画像表示を行えば、モニタ画面上には、平面上への展開処理後の平面正則画像Tが表示されることになる。
【0196】
このように、本来は円柱側面をなす二次元UV湾曲座標系に湾曲正則画像Cを表示するために得られた画素配列データを用いて、二次元UV直交座標系をもつ通常のモニタ画面(平面上の画面)に画像表示を行う処理は、上述した例において、円柱側面に貼り付けた紙片を剥がし、これを平面上に貼り直す作業に対応する。表示画面は円柱側面から平面に変わるが、画素配列データそれ自身については、何ら変更を加える必要はない。
【0197】
結局、ここで述べる変形例では、二次元UV直交座標系上に平面正則画像Tを求める代わりに、円柱側面上に定義された二次元UV湾曲座標系上に湾曲正則画像Cを求め、この湾曲正則画像Cを示す画素配列データを用いて、通常のモニタ画面(平面画面)に画像表示を行うことにより、最終的に当該モニタ画面上に平面正則画像Tを得る方法が採られることになる。
【0198】
もちろん、図33に示す変形モデルは、非正射影方式の魚眼レンズを用いた撮影により得られる歪曲円形画像にも適用可能である。この場合は、図25に示すモデルにおいて、二次元UV直交座標系上に平面正則画像Tを求める代わりに、円柱側面上に定義された二次元UV湾曲座標系上に湾曲正則画像Cを求めるようにすればよい。
【0199】
このように二次元UV湾曲座標系上に湾曲正則画像Cを求めるプロセスを行う画像変換装置の基本構成は、図28に示す画像変換装置200とほとんど同じである。ただ、§10で詳述するように、座標変換部270における座標変換処理に若干の補正を加える必要がある。これは、二次元UV直交座標系上の平面正則画像Tへの座標変換を行う代わりに、二次元UV湾曲座標系上の湾曲正則画像Cへの座標変換を行う必要があるためである。すなわち、座標変換部270では、二次元UV直交座標系上の座標(u,v)に対応する対応座標(x,y)を算出する代わりに、二次元UV湾曲座標系上の座標(u,v)に対応する対応座標(x,y)を算出する必要がある。
【0200】
前述したとおり、二次元UV直交座標系も二次元UV湾曲座標系も、U軸とV軸とを有する二次元座標系である点は共通しており、二次元UV直交座標系上に定義される平面正則画像Tも、二次元UV湾曲座標系上に定義される湾曲正則画像Cも、座標値(u,v)で示される位置に配置された多数の画素の配列から構成される点では共通する。したがって、図28に示す構成において、平面正則画像用メモリ230内に格納された画素配列データに基づいて、平面上に画像を表示すれば平面正則画像Tが得られるが、円柱側面上に画像を表示すれば湾曲正則画像Cが得られることになる。ここでは、説明の便宜上、変換後の画素配列データが得られるメモリ230を「平面正則画像用メモリ」と呼んでいるが、当該メモリ230に格納される画素配列データそれ自身は、平面正則画像T用のデータと言うこともできるし、湾曲正則画像C用のデータと言うこともできる。
【0201】
図9の基本モデルに基づく変換方法と、図33の変形モデルに基づく変換方法との特徴の相違を端的に説明すれば、次のとおりである。まず、前者では、「メモリ230内の座標(u,v)に位置する特定の画素の画素値」を、「二次元UV『直交』座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式を用いて求めた、メモリ220内の座標(x,y)(非正射影画像の場合は、更に射影方式逆変換を施すことにより得られる座標(xb,yb))の近傍に位置する画素の画素値」に基づいて決定し、変換後の画素配列データに基づいて平面上のモニタ画面に画像を表示することにより、平面正則画像Tを得ることになる。これに対して、後者では、「メモリ230内の座標(u,v)に位置する特定の画素の画素値」を、「二次元UV『湾曲』座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式を用いて求めた、メモリ220内の座標(x,y)(非正射影画像の場合は、更に射影方式逆変換を施すことにより得られる座標(xb,yb))の近傍に位置する画素の画素値」に基づいて決定し、変換後の画素配列データに基づいて平面上のモニタ画面に画像を表示することにより、平面正則画像Tを得ることになる。
【0202】
このように、図9の基本モデルに基づく変換方法と、図33の変形モデルに基づく変換方法との相違は、用いる対応関係式の相違のみであるが、当該相違により、得られる平面正則画像T上の歪みは大幅に改善される。特に、図14に示す例における画像の右辺輪郭近傍や左辺輪郭近傍に関しては、歪みは大幅に改善されるため、水平パニングを行うような場合でも、滑らかなパニング映像を得ることができるようになる。もちろん、監視システムに利用した場合、画像の右端や左端に位置する人物の細かな特徴を把握する視認性も大幅に向上する。これは、二次元UV湾曲座標系において、U軸を直線軸ではなく、円弧状の軸としたためである。
【0203】
ただ、二次元UV湾曲座標系は円柱側面上の座標系であるから、U軸は円弧状の軸であっても、V軸は直線軸となる。このため、図14に示す例における画像の上辺輪郭近傍や下辺輪郭近傍に関しては、歪みの矯正効果はそれほど得られない。もっとも、水平パニングを行う場合、動画を構成するフレームは横方向にずれてゆくことになるので、左右の輪郭近傍における歪みが緩和されていれば、十分に滑らかなパニング映像を得ることができる。また、監視カメラの用途においても、通常、上下の輪郭近傍の視認性よりも、左右の輪郭近傍の視認性が重要となるので、円弧状のU軸が水平方向軸となるような設定を行えば、実用上、十分な歪み矯正効果が得られることになる。
【0204】
<<< §10.湾曲座標系を用いる変形例における対応関係式 >>>
【0205】
上述したとおり、図9の基本モデルで示す変換方法と、図33の変形モデルで示す変換方法との実質的な相違は、任意の座標(u,v)について、正射影歪曲円形画像S上の対応座標(x,y)(変換対象が非正射影画像の場合は座標(xa,ya)、以下同じ)を求める際に用いる対応関係式の相違のみである。すなわち、前者が、「二次元UV『直交』座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式」を用いるのに対して、後者は、「二次元UV『湾曲』座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式」を用いることになる。そして、前者の対応関係式は、§3で述べたとおり、図17の式(1)〜(9)のようになる。ここでは、これらの式を若干修正することにより、後者の対応関係式が得られることを説明する。
【0206】
既に§3で述べたとおり、図17の式(1)〜(9)は、図18に示すような特殊な条件を満たすモデルについての座標(u,v)と座標(x,y)との関係を示す式(10),(11)に対して、方位角α,天頂角β,平面傾斜角φで規定される回転ファクターによる補正を施すことにより得られる。そこで、まず、この図18に示すような特殊な条件を満たすモデル、すなわち、β=0°とし、三次元XYZ直交座標系上での座標(0,0,mR)の位置に原点Gをもち、XY平面に平行な平面上に二次元UV直交座標系を定義したモデルについて、二次元UV直交座標系と二次元UV湾曲座標系との相違を考えてみよう。
【0207】
図34は、二次元UV直交座標系(座標面は図のTになる)と、これを湾曲することにより得られる二次元UV湾曲座標系(座標面は図のCになる)との位置関係を示す側面図である。二次元UV直交座標系の座標面であるUV平面は、XYZ三次元直交座標系上のXY平面に平行な面であり、両者の間隔は、w=mRに設定されている。図示のとおり、このUV平面に沿った水平方向にU軸が定義され、点Gにおいて紙面垂直方向にV軸が定義されている。そして、このUV平面上に、平面正則画像Tが定義されることになる。
【0208】
一方、二次元UV湾曲座標系の座標面であるUV曲面は、UV平面を仮想円柱の側面に沿って湾曲させることにより得られる面である。ここで、仮想円柱は、Y軸(原点Oにおいて紙面垂直方向を向く軸)を中心軸とし、半径w=mRをもった円柱であり、軸Vの位置においてUV平面に接している。UV曲面は、この仮想円柱の側面に一致し、半径w=mRをもった円の円弧に沿った方向にU軸が定義され、点Gにおいて紙面垂直方向にV軸が定義されている。そして、このUV曲面上に、湾曲正則画像Cが定義されることになる。
【0209】
このように、二次元UV直交座標系と二次元UV湾曲座標系とは、一方の座標軸であるV軸を共通とするが、他方の座標軸であるU軸の空間的な位置は異なっている。ただ、座標目盛の刻み幅はいずれも同じであり、座標面上の任意の1点の位置が、座標(u,v)で示される点も同じである。そこで、同一座標(u,v)で示される各座標面上の2点の関係について考えてみよう。
【0210】
まず、図の左上に示すように、二次元UV直交座標系上における点T(u,v)に着目しよう。この点T(u,v)は、平面正則画像T上の点であり、原点GからU軸に沿って座標値uだけ隔たり(図では、太線で描かれた線分Dの長さだけ離れた位置にプロットされている)、V軸方向に関して座標値vだけ隔たった点ということになる(V軸方向に関する隔たりは、紙面垂直方向に関する隔たりになるため、図には示されていない)。
【0211】
次に、二次元UV湾曲座標系上における点C(u,v)に着目しよう。この点C(u,v)は、湾曲正則画像C上の点であり、原点Gから円弧Aに沿って座標値uだけ隔たり、V軸方向に関して座標値vだけ隔たった点ということになる(V軸方向に関する隔たりは、紙面垂直方向に関する隔たりになるため、図には示されていない)。ここで、太線で描かれた円弧Aの長さは、太線で描かれた線分Dの長さに等しい。
【0212】
このように、点T(u,v)と点C(u,v)とは、いずれも座標(u,v)で表される点であるが、異なる座標系で定義された点であるため、XYZ三次元直交座標系で示される空間上の位置は異なっている。すなわち、XYZ三次元直交座標系の座標値で考えると、点T(u,v)の座標はT(u,v,w)になるのに対して、点C(u,v)の座標はC(u′,v,w′)になる。ここで、図示のとおり、
u′=w・sinθ 式(53)
w′=w・cosθ 式(54)
である。
【0213】
また、円弧Aの長さは座標値uの絶対値に等しく、円弧Aの半径はwであるから、図34に示す角度θは、θ=u/wラジアンである。よって、図示のとおり、
u′=w・sin(u/w) 式(55)
w′=w・cos(u/w) 式(56)
が得られる。なお、両UV座標系は、V軸を共通の座標軸としているため、点T,CのY座標値はいずれも同一の座標値vになる。
【0214】
結局、図27に示す式(44),(45)における変数uの代わりに式(55)に示す変数u′を用い、変数wの代わりに式(56)に示す変数w′を用いれば、図35の上段に示すとおり、
xa=R(u′A+vB+w′C)/
√(u′2+v2+w′2) 式(57)
ya=R(u′D+vE+w′F)/
√(u′2+v2+w′2) 式(58)
なる式が得られる。この場合、オイラー角α,β,φに基づく回転ファクターによる補正に変更はないので、回転係数A〜Fの算出については、図17の式(3)〜(9)をそのまま用いることができる。
【0215】
結局、ここで述べる湾曲座標系を用いた変形例の場合、図28に示す画像変換装置200(非正射影画像にも対応した装置)内の座標変換部270による座標変換処理に用いるべき対応関係式、すなわち、二次元UV湾曲座標系上の座標(u,v)と二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式は、図35の上段に示す式(57),(58)および図17の式(3)〜(9)として与えられることになる。なお、既に述べたとおり、図17の式(3)〜(8)は、より単純な図26の式(36)〜(41)の形に変形して用いることができる。
【0216】
ここで、図35に示すように、式(57),(58)のu′およびv′に、図34の式(55),(56)を代入すれば、
xa=R((w・sin(u/w))A
+vB+(w・cos(u/w))C)/
√((w・sin(u/w))2
+v2+(w・cos(u/w))2) 式(59)
ya=R((w・sin(u/w))D
+vE+(w・cos(u/w))F)/
√((w・sin(u/w))2
+v2+(w・cos(u/w))2) 式(60)
なる式が得られる。
【0217】
一方、「(sin(u/w))2+(cos(u/w))2=1」であるから、式(59),(60)の分母は、√(w2+v2)になる。ここで、R=1とする正規化を行うこととし、式(59),(60)に、R=1を代入して、分母分子をwで除し、更に、1/w=tとおけば、図35の下段に示すとおり、
xa=(A・sin(ut)+vtB+C・cos(ut))/
√((vt)2+1) 式(61)
ya=(D・sin(ut)+vtE+F・cos(ut))/
√((vt)2+1) 式(62)
なる式が得られる。更に、図36に示すように、
K2=1/√((vt)2+1) 式(63)
Kxx=A・sin(ut)+vtB+C・cos(ut) 式(64)
Kyy=D・sin(ut)+vtE+F・cos(ut) 式(65)
とおけば、
xa=K2・Kxx 式(66)
ya=K2・Kyy 式(67)
という単純な式が得られる。
【0218】
結局、湾曲座標系を用いる変形例の場合、図31に示す座標変換部270を、図37に示す構成をもった座標変換部270′に置き換えればよい。いずれも、与えられた回転係数A〜F、逆数t、座標(u,v)に基づいて、座標(xa,ya)を求める機能を有する構成要素であるが、内部で行われる処理に若干の相違があるため、得られる座標(xa,ya)の値も若干異なったものになる。
【0219】
図37は、座標変換部270′の詳細な構成を示すブロック図である。図示のとおり、ここに示す座標変換部270′は、KxxKyy決定手段271′、xy演算手段272′、T2→K2変換手段273′、T2→K2テーブル274′、T2演算手段275′によって構成されており、与えられた回転係数A〜Fおよび逆数tを用いて、任意の座標(u,v)に対応する対応座標(xa,ya)を求める機能を有している。
【0220】
T2演算手段275′は、与えられた座標(u,v)のうちの座標vと逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求める処理を行う。一方、T2→K2テーブル274′は、「K2=1/√T2」なる関係式で定まるK2の値を、T2の値に基づいて参照することができるルックアップテーブルであり、予想範囲内のT2の値に対応する各K2の値(開平値の逆数)を予め収録している。T2→K2変換手段273′は、このT2→K2テーブル274′を参照することにより、T2演算手段275′によって求められたT2に対応するK2を決定する処理を行う。
【0221】
なお、変形例として、T2→K2テーブル274′の代わりに、「K2=√N」なる関係式で定まる開平値K2の値を、Nの値に基づいて参照することができる開平値テーブル(開平値のルックアップテーブル)を利用することも可能である。この場合、T2→K2変換手段273′は、次のような処理を行えばよい。まず、T2演算手段275′によって求められたT2に基づいて、逆数N=1/T2を求めるための除算を行う。続いて、上述した開平値テーブルを参照することにより、得られた逆数Nの開平値としてK2を求めれば、結局、「K2=1/√T2」なる関係式で定まるK2の値が得られる。この変形例では、逆数N=1/T2を求めるための除算が必要になるため、演算負担は若干増えることになるが、開平値テーブルの利用により開平演算は省略できる。
【0222】
KxxKyy決定手段271′は、与えられた座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式(図36の式(64),(65))で定義されるKxxおよびKyyを求める処理を行う。そして、xy演算手段272′は、Kxx,Kyy,K2に基づいて、「xa=K2・Kxx」および「ya=K2・Kyy」なる演算(図36の式(66),(67))を行い、座標(xa,ya)を求める処理を行う。なお、R=1とする正規化を行わない場合は、更にRを乗じる演算を追加すればよい。
【0223】
この座標変換部270′で実行される処理に着目すると、KxxKyy決定手段271′で行われる処理を除き、積和演算処理とルックアップテーブルを参照する処理とによって構成されていることがわかる。T2→K2変換手段273′は、T2に基づいて、「K2=1/√T2」なる関係式で定まるK2の値を決定する処理を行うが、当該処理は演算によって行われるものではなく、T2→K2テーブル274′を参照することによって行われるものである。したがって、この座標変換部270′では、開平演算や逆数演算は排除されている。
【0224】
なお、KxxKyy決定手段271′では、三角関数演算を含む式(64),(65)を利用して、係数Kxx,Kyyを決定する必要があるが、一般に、三角関数の演算には、テーラー展開した形の演算式が利用される。したがって、三角関数演算も実質的には積和演算によって実現することができ、KxxKyy決定手段271′によって行われる演算も積和演算によって構成することができる。結局、座標変換部270′で実行される演算はすべて積和演算ということになり、演算処理の負担は比較的軽いものになる。
【0225】
もっとも、三角関数のテーラー展開式は数学的に無限の項を含む式であるため、実際の演算には、有限個の項によって構成される近似式を用いる必要がある。したがって、精度の高い演算結果を得るためには、できるだけ多くの項を含む正確な近似式を用いる必要が生じ、積和演算の項数はそれだけ多くなってしまう。そこで、KxxKyy決定手段271′で実行される演算負担を軽減するために、式(64),(65)の結果をルックアップテーブルを参照することによって得るようにしてもよい。
【0226】
具体的には、KxxKyy決定手段271′を、図38に示すような構成にすればよい。この例の場合、KxxKyy決定手段271′は、KxxKyy演算手段271a、θ→T3変換手段271b、θ→T4変換手段271c、sinテーブル271d、cosテーブル271e、θ演算手段271fによって構成されており、与えられた回転係数A〜F、逆数t、座標(u,v)に基づいて、係数KxxおよびKyyを求める機能を有している。
【0227】
θ演算手段271fは、座標uおよび逆数tに基づいて、「θ=ut」なる演算を行う。sinテーブル271dおよびcosテーブル271eは、それぞれ sinθおよび cosθの値を、θの値に基づいて参照することができるルックアップテーブルであり、予想範囲内のθの値に対応する各値を予め収録している。θ→T3変換手段271bは、sinテーブル271dを参照することにより、θ演算手段271fによって求められたθに対応する sinθの値を求め、これを係数T3として出力する。同様に、θ→T4変換手段271cは、cosテーブル271eを参照することにより、θ演算手段271fによって求められたθに対応する cosθの値を求め、これを係数T4として出力する。そして、KxxKyy演算手段271aは、T3,T4,回転係数A,B,C,D,E,F,座標v,逆数tに基づいて、「Kxx=A・T3+vtB+C・T4」および「Kyy=D・T3+vtE+F・T4」なる演算を行い、KxxおよびKyyを求める。
【0228】
KxxKyy決定手段271′を、このような構成にすれば、三角関数演算を回避することができ、純然たる積和演算のみによって、係数Kxx,Kyyを算出することができる。したがって、演算負担はより軽減される。
【符号の説明】
【0229】
110:パラメータ入力ユニット
115:インターフェイス
120:魚眼レンズ装着デジタルカメラ
125:インターフェイス
130:モニタ装置
135:インターフェイス
200:画像変換装置
210:射影方式正変換部
211:rb演算手段
212:rb→Ka変換手段
213:射影方式変換手段
220:歪曲円形画像用メモリ
230:平面正則画像用メモリ
240:係数算出部
241:演算手段
242:演算手段
243:演算手段
250:データ読出部
255:画素値決定部
260:データ書込部
270,270′:座標変換部
271:KxKy演算手段
271′:KxxKyy決定手段
271a:KxxKyy演算手段
271b:θ→T3変換手段
271c:θ→T4変換手段
271d:sinテーブル
271e:cosテーブル
271f:θ演算手段
272,272′:xy演算手段
273:T1→K1変換手段
273′:T2→K2変換手段
274:T1→K1テーブル
274′:T2→K2テーブル
275:T1演算手段
275′:T2演算手段
280:射影方式逆変換部
281:G演算手段
282:G→Kb変換手段
283:G→Kbテーブル
284:射影方式変換手段
290:uv座標値発生部
A:円弧
A〜F:回転係数
a:モニタ装置の横方向寸法(水平方向の画素数)
b:モニタ装置の縦方向寸法(垂直方向の画素数)
C:二次元UV湾曲座標系上の湾曲正則画像
C(u,v):二次元UV湾曲座標系上の湾曲正則画像C内の点
Ci(ui,vi):二次元UV湾曲座標系上の湾曲正則画像C内の点
D:線分
E,E1,E2:切出領域
F1,F2:画角
f:魚眼レンズに固有の定数
G:係数
G,G1,G2:二次元UV直交座標系の原点
G(x0,y0,z0):二次元UV直交座標系の原点
G(xg,yg,zg):二次元UV直交座標系の原点
G(0,0,mR):二次元UV直交座標系の原点
H:仮想球面
H(x,y,z):仮想球面H上の入射点
J:回転基準軸
K1,K2,Ka,Kb,Kx,Kxx,Ky,Kyy:係数
L:2点間の距離
L1,L2:入射光線
m:倍率
n:視線ベクトル
ni:OとQiとを結ぶ直線
O:三次元XYZ直交座標系の原点
P,P(x0,y0),PP(x00,y00):切出中心点
Q,Q1,Q2:球面上対応点
Q(x0,y0,z0):球面上対応点
Qi(xi,yi,zi):球面上対応点
R:歪曲円形画像Sの半径(仮想球面Hの半径)
r,ra,rb:歪曲円形画像Sの中心点からの距離
S,SS:歪曲円形画像
S1:傾斜面
S2:接平面
S(x,y):二次元XY直交座標系上の歪曲円形画像S内の点
S1(x1,y1):二次元XY直交座標系上の歪曲円形画像S内の点
S2(x2,y2):二次元XY直交座標系上の歪曲円形画像S内の点
Si(xi,yi):二次元XY直交座標系上の歪曲円形画像S内の点
SSi(xii,yii):二次元XY直交座標系上の歪曲円形画像SS内の点
T,T1,T2:二次元UV直交座標系上の平面正則画像
T1〜T4:係数
T(u,v):二次元UV直交座標系上の平面正則画像T内の点
T(0,0):二次元UV直交座標系の原点
T1(u1,v1):二次元UV直交座標系上の平面正則画像T内の点
T2(u2,v2):二次元UV直交座標系上の平面正則画像T内の点
Ti(ui,vi):二次元UV直交座標系上の平面正則画像T内の点
t:wの逆数
U:二次元UV直交座標系の座標軸/二次元UV湾曲座標系の座標軸
u:二次元UV直交座標系もしくは二次元UV湾曲座標系の座標軸Uに関する座標値
u′:座標値uの補正値
V:二次元UV直交座標系の座標軸/二次元UV湾曲座標系の座標軸
v:二次元UV直交座標系もしくは二次元UV湾曲座標系の座標軸Vに関する座標値
V′:座標軸Vに平行かつ原点Oを通る直線(仮想円柱の中心軸)
w:m×Rで与えられる数値
w′:数値wの補正値
X,Xa,Xb:三次元XYZ直交座標系の座標軸
x,xa,xb:二次元XY直交座標系の座標軸Xに関する座標値
Y,Ya,Yb:三次元XYZ直交座標系の座標軸
y,ya,yb:二次元XY直交座標系の座標軸Yに関する座標値
Z,Za,Zb:三次元XYZ直交座標系の座標軸
α:方位角
β:天頂角
θ:角度
φ:平面傾斜角
【技術分野】
【0001】
本発明は、画像変換装置に関し、特に、魚眼レンズを用いた撮影により得られた歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う装置に関する。
【背景技術】
【0002】
魚眼レンズを用いると、メカニカルな動作機構なしに、半球状の全方位を示す円形画像を得ることができる。このため、奇抜な効果を狙った風景写真などを撮影する際に広く利用されている。また、最近では、魚眼レンズを用いた監視システムの開発も行われている。標準レンズを備えたカメラを用いて、広い画角にわたる空間の監視を行うためには、通常、パンチルトズームなどの機械的な駆動機構を用いて、レンズの向きを動かす必要がある。これに対して、魚眼レンズを備えたカメラを用いれば、機械的な駆動を行うことなしに、広い画角の画像を得ることができる。ただ、魚眼レンズを用いた撮影で得られる画像は、歪曲した円形の画像になるため、芸術写真などの用途にはそのまま利用することが可能かもしれないが、監視システムなどの一般的な用途には不向きである。
【0003】
そこで、魚眼レンズを用いた撮影により得られた歪曲円形画像を、歪みの少ない平面正則画像に変換する処理を行う装置が提案されている。たとえば、下記の特許文献1および2には、コンピュータを利用して歪曲円形画像の一部分を平面正則画像にリアルタイムで変換する技術が開示されている。このような変換技術を利用すれば、魚眼レンズを用いて撮影した歪曲円形画像からなる動画を、平面正則画像からなる動画としてリアルタイムで観察することが可能になり、180°の画角をもった監視システムなどへの応用が期待できる。
【0004】
一方、下記の特許文献3には、魚眼レンズを用いた撮影により得られた歪曲円形画像を、円筒面上に展開された画像に変換することにより、水平方向にパノラマ表示を行う技術が開示されており、また、下記の特許文献4には、歪曲円形画像を平面正則画像に変換する際に必要な関数演算等を、ルックアップテーブルを参照する処理で代用することにより、ハードウエアの実装を軽減する技術が開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特許第3012142号公報
【特許文献2】特許第3051173号公報
【特許文献3】特許第3025255号公報
【特許文献4】特許第3126955号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
防犯用の監視システムなどでは、魚眼レンズを装着した防犯カメラを建物の天井や壁面に設置し、この防犯カメラで撮影した画像をモニタ装置に映し出すことになる。このような用途では、モニタ画面上で人物の顔や衣服などの特徴を正確に把握する必要性から、できるだけ歪みのない平面正則画像を得ることが望まれる。このため、魚眼レンズを用いた撮影により得られた歪曲円形画像上の任意の一部分を、歪みのない平面正則画像に変換する画像変換装置が不可欠になる。しかも、リアルタイムで監視を行うシステムでは、ユーザから見た応答性を十分に確保する必要があるため、平面正則画像への変換演算をできるだけ短時間で実行する必要がある。
【0007】
ところが、前掲の特許文献1〜3に記載されているとおり、魚眼レンズを用いた撮影により得られた歪曲円形画像のデータを平面正則画像のデータに変換する処理を行うためには、開平算や逆数演算などを組み合わせた複雑な演算処理が必要である。このような複雑な演算処理を短時間で実行するためには、高性能の演算処理回路やCPUが必要になり、また、ハードウエアの実装規模も大きくならざるを得ない。このため、装置のコストは高騰せざるを得ない。
【0008】
一方、前掲の特許文献4には、一部の関数演算等を、ルックアップテーブルを参照する処理で代用することにより、ハードウエアの実装を軽減する技術が開示されている。このように、複雑な演算処理をルックアップテーブルの参照処理に置き換えれば、演算負担を軽減させることができるので、ハードウエアの実装規模を低減させ、装置のコストを低減させることが可能になる。しかしながら、従来から提案されているルックアップテーブルを用いた手法では、演算の効率化が必ずしも十分ではなく、実用上、依然として大きな演算負担が問題となっている。たとえば、前掲の特許文献4に開示されている手法では、ルックアップテーブルを参照するためのアドレスを生成する過程において、依然として負担の大きい演算が必要になる。
【0009】
従来技術のもうひとつの問題は、変換により得られた平面正則画像に歪みが生じる点である。たとえば、上述した特許文献1,2に開示されている技術を用いると、魚眼レンズを用いた撮影により得られた歪曲円形画像から、ユーザが所望する箇所を切り出して、矩形の平面正則画像を得ることが可能であるが、得られた平面正則画像は歪んだものとなり、人物の細かな特徴を確認する用途には不十分である。特に、得られる矩形の平面正則画像の外側部分(輪郭近傍)の歪みは大きくなるため、切り出し箇所を徐々に移動させて水平パニングを行うような場合、滑らかなパニング映像を得ることができなくなる。
【0010】
一方、上述した特許文献3に開示されている技術では、水平方向に細長いパノラマ画像が得られるので、その一部を切り出してモニタ画面上に表示すれば、水平パニングを行うような場合でも、滑らかなパニング映像を得ることができる。しかしながら、この技術で得られたパノラマ画像は、水平方向に関しての歪みは小さいが、垂直方向に関しての歪みは大きくなるため、実用上、切り出し可能な領域に制限が課せられる。具体的には、半球状の領域を撮影したとしても、その天頂部付近を切り出した平面正則画像には大きな歪みが生じるため、実用上、天頂部付近を切り出すことはできなくなる。このように、切り出し可能箇所に制限が課せられると、防犯カメラに利用した場合に死角が生じることになるので好ましくない。
【0011】
そこで、本発明は、魚眼レンズを用いた撮影により得られた歪曲円形画像から、所望の任意部分を切り出し、歪みの少ない平面正則画像に変換することが可能であり、しかも演算負担の少ない画像変換装置を提供することを目的とする。
【課題を解決するための手段】
【0012】
<<< 正射影方式の撮影画像に適用するための発明の態様 >>>
【0013】
(1) 本発明の第1の態様は、正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
座標(x,y)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
歪曲円形画像用メモリ内の対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
x=R(uA+vB+wC)/√(u2+v2+w2)
y=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)と逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=1/√T1」なる関係式で定まるK1の値を、T1の値に基づいて参照することができるT1→K1テーブルと、
T1→K1テーブルを参照することにより、T1演算手段によって求められたT1に対応するK1を決定するT1→K1変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
Kx,Ky,K1に基づいて、「x=K1・Kx」および「y=K1・Ky」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有しているようにしたものである。
【0014】
(2) 本発明の第2の態様は、正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
座標(x,y)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
歪曲円形画像用メモリ内の対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
x=R(uA+vB+wC)/√(u2+v2+w2)
y=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)と逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=√N」なる関係式で定まる開平値K1の値を、Nの値に基づいて参照することができる開平値テーブルと、
T1演算手段によって求められたT1に基づいて、逆数N=1/T1を求めるための除算を行い、開平値テーブルを参照することにより、得られた逆数Nの開平値としてK1を決定するT1→K1変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
Kx,Ky,K1に基づいて、「x=K1・Kx」および「y=K1・Ky」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有しているようにしたものである。
【0015】
(3) 本発明の第3の態様は、正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
座標(x,y)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
歪曲円形画像用メモリ内の対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「点Gが側面上の1点をなし、二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(x,y)との対応関係を示す正射影画像用対応関係式として、
x=R(u′A+vB+w′C)/√(u′2+v2+w′2)
y=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)のうちの座標vと逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=1/√T2」なる関係式で定まるK2の値を、T2の値に基づいて参照することができるT2→K2テーブルと、
T2→K2テーブルを参照することにより、T2演算手段によって求められたT2に対応するK2を決定するT2→K2変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
Kxx,Kyy,K2に基づいて、「x=K2・Kxx」および「y=K2・Kyy」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有しているようにしたものである。
【0016】
(4) 本発明の第4の態様は、正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
座標(x,y)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
歪曲円形画像用メモリ内の対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「点Gが側面上の1点をなし、二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(x,y)との対応関係を示す正射影画像用対応関係式として、
x=R(u′A+vB+w′C)/√(u′2+v2+w′2)
y=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)のうちの座標vと逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=√N」なる関係式で定まる開平値K2の値を、Nの値に基づいて参照することができる開平値テーブルと、
T2演算手段によって求められたT2に基づいて、逆数N=1/T2を求めるための除算を行い、開平値テーブルを参照することにより、得られた逆数Nの開平値としてK2を決定するT2→K2変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
Kxx,Kyy,K2に基づいて、「x=K2・Kxx」および「y=K2・Kyy」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有しているようにしたものである。
【0017】
(5) 本発明の第5の態様は、上述の第3または第4の態様に係る画像変換装置において、
KxxKyy決定手段が、
座標uおよび逆数tに基づいて、「θ=ut」なる演算を行い、θを求めるθ演算手段と、
θに基づいて「T3=sinθ」なる値T3を参照することができるsinテーブルと、
θに基づいて「T4=cosθ」なる値T4を参照することができるcosテーブルと、
sinテーブルを参照することにより、θ演算手段によって求められたθに対応するT3を決定するθ→T3変換手段と、
cosテーブルを参照することにより、θ演算手段によって求められたθに対応するT4を決定するθ→T4変換手段と、
T3,T4,与えられた係数A,B,C,D,E,F,座標v,逆数tに基づいて、「Kxx=A・T3+vtB+C・T4」および「Kyy=D・T3+vtE+F・T4」なる演算を行い、KxxおよびKyyを求めるKxxKyy演算手段と、
を有しているようにしたものである。
【0018】
(6) 本発明の第6の態様は、上述の第1〜第5の態様に係る画像変換装置において、
係数算出部が、正射影歪曲円形画像上で指定された切出中心点P(x0,y0)の座標値x0,y0に基づいて、切出中心点P(x0,y0)を通りZ軸に平行な直線と原点Oを中心として半径Rをもった仮想球面との交点G(x0,y0,z0)を求め、原点Oを起点として交点G(x0,y0,z0)を通るベクトルを視線ベクトルnとして、係数の算出を行うようにしたものである。
【0019】
(7) 本発明の第7の態様は、上述の第6の態様に係る画像変換装置において、
歪曲円形画像用メモリが、半径R=1となるように正規化された正射影歪曲円形画像を格納し、
係数算出部が、
座標値x0,y0に基づいて、
ra=√(x02+y02)
z0=√(1−ra2)
なる演算を行い、raおよびz0を算出する演算手段と、
座標値x0,y0およびz0,ra、ならびに平面傾斜角φに基づいて、
A=(y0・cosφ+x0・z0・sinφ)/ra
B=(−y0・sinφ+x0・z0・cosφ)/ra
C=−x0
D=(−x0・cosφ+y0・z0・sinφ)/ra
E=(x0・sinφ+y0・z0・cosφ)/ra
F=−y0
なる演算(但し、ra=0の場合は、A=cosφ,B=−sinφ,C=0,D=sinφ,E=cosφ,F=0)を行い、係数A,B,C,D,E,Fを算出する演算手段と、
倍率mに基づいて、
t=1/m
なる演算を行い、係数tを算出する演算手段と、
を有しているようにしたものである。
【0020】
(8) 本発明の第8の態様は、上述の第6または第7の態様に係る画像変換装置において、
歪曲円形画像用メモリに格納されている正射影歪曲円形画像および平面正則画像用メモリに格納されている平面正則画像をそれぞれ表示するモニタ装置と、
切出中心点P(x0,y0)の座標値x0,y0と、平面傾斜角φと、倍率mと、をパラメータとして入力して係数算出部に与えるパラメータ入力ユニットと、
を更に設け、
パラメータ入力ユニットが、モニタ装置上に表示されている正射影歪曲円形画像上においてユーザが指定した1点を切出中心点P(x0,y0)として認識し、その座標値x0,y0を入力する機能を有するようにしたものである。
【0021】
<<< 非正射影方式の撮影画像に適用するための発明の態様 >>>
【0022】
(9) 本発明の第9の態様は、非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
歪曲円形画像用メモリ内の座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
xa=R(uA+vB+wC)/√(u2+v2+w2)
ya=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)と逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=1/√T1」なる関係式で定まるK1の値を、T1の値に基づいて参照することができるT1→K1テーブルと、
T1→K1テーブルを参照することにより、T1演算手段によって求められたT1に対応するK1を決定するT1→K1変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
Kx,Ky,K1に基づいて、「xa=K1・Kx」および「ya=K1・Ky」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有しているようにしたものである。
【0023】
(10) 本発明の第10の態様は、非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
歪曲円形画像用メモリ内の座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
xa=R(uA+vB+wC)/√(u2+v2+w2)
ya=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)と逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=√N」なる関係式で定まる開平値K1の値を、Nの値に基づいて参照することができる開平値テーブルと、
T1演算手段によって求められたT1に基づいて、逆数N=1/T1を求めるための除算を行い、開平値テーブルを参照することにより、得られた逆数Nの開平値としてK1を決定するT1→K1変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
Kx,Ky,K1に基づいて、「xa=K1・Kx」および「ya=K1・Ky」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有しているようにしたものである。
【0024】
(11) 本発明の第11の態様は、非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
歪曲円形画像用メモリ内の座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「点Gが側面上の1点をなし、二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(xa,ya)との対応関係を示す正射影画像用対応関係式として、
xa=R(u′A+vB+w′C)/√(u′2+v2+w′2)
ya=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)のうちの座標vと逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=1/√T2」なる関係式で定まるK2の値を、T2の値に基づいて参照することができるT2→K2テーブルと、
T2→K2テーブルを参照することにより、T2演算手段によって求められたT2に対応するK2を決定するT2→K2変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
Kxx,Kyy,K2に基づいて、「xa=K2・Kxx」および「ya=K2・Kyy」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有しているようにしたものである。
【0025】
(12) 本発明の第12の態様は、非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置において、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
uv座標値発生部が発生させた特定の座標(u,v)に対して、係数算出部によって算出された係数が含まれた対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
歪曲円形画像用メモリ内の座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
画素値決定部により決定された画素値を、特定の画素の画素値として、平面正則画像用メモリへ書き込むデータ書込部と、
を設け、
座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、視線ベクトルn上における、原点Oから「倍率mと半径Rとの積m・R」だけ離れた点Gを原点とし、点Gを通り視線ベクトルnに直交する平面上に平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「点Gが側面上の1点をなし、二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(xa,ya)との対応関係を示す正射影画像用対応関係式として、
xa=R(u′A+vB+w′C)/√(u′2+v2+w′2)
ya=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
係数算出部は、視線ベクトルn、平面傾斜角φ、倍率mを示すパラメータに基づいて、対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
座標変換部は、
特定の座標(u,v)のうちの座標vと逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=√N」なる関係式で定まる開平値K2の値を、Nの値に基づいて参照することができる開平値テーブルと、
T2演算手段によって求められたT2に基づいて、逆数N=1/T2を求めるための除算を行い、開平値テーブルを参照することにより、得られた逆数Nの開平値としてK2を決定するT2→K2変換手段と、
特定の座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
Kxx,Kyy,K2に基づいて、「xa=K2・Kxx」および「ya=K2・Kyy」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有しているようにしたものである。
【0026】
(13) 本発明の第13の態様は、上述の第11または第12の態様に係る画像変換装置において、
KxxKyy決定手段が、
座標uおよび逆数tに基づいて、「θ=ut」なる演算を行い、θを求めるθ演算手段と、
θに基づいて「T3=sinθ」なる値T3を参照することができるsinテーブルと、
θに基づいて「T4=cosθ」なる値T4を参照することができるcosテーブルと、
sinテーブルを参照することにより、θ演算手段によって求められたθに対応するT3を決定するθ→T3変換手段と、
cosテーブルを参照することにより、θ演算手段によって求められたθに対応するT4を決定するθ→T4変換手段と、
T3,T4,与えられた係数A,B,C,D,E,F,座標v,逆数tに基づいて、「Kxx=A・T3+vtB+C・T4」および「Kyy=D・T3+vtE+F・T4」なる演算を行い、KxxおよびKyyを求めるKxxKyy演算手段と、
を有しているようにしたものである。
【0027】
(14) 本発明の第14の態様は、上述の第9〜第13の態様に係る画像変換装置において、
射影方式逆変換部が、
座標(xa,ya)に基づいて、「G=xa2+ya2」なる演算を行ってGを求めるG演算手段と、
「Kb=(sin-1√G/√G)・2/π」なる関係式で定まるKbの値を、Gの値に基づいて参照することができるG→Kbテーブルと、
G→Kbテーブルを参照することにより、G演算手段によって求められたGに対応するKbを決定するG→Kb変換手段と、
座標(xa,ya)とKbとに基づいて、「xb=Kb・xa」および「yb=Kb・ya」なる演算を行い、座標(xb,yb)を求める射影方式変換手段と、
を有し、半径R=1となるように正規化された正射影歪曲円形画像上の座標(xa,ya)を、等距離射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等距離射影歪曲円形画像上の座標(xb,yb)に変換する機能を有するようにしたものである。
【0028】
(15) 本発明の第15の態様は、上述の第9〜第13の態様に係る画像変換装置において、
射影方式逆変換部が、
座標(xa,ya)に基づいて、「G=xa2+ya2」なる演算を行ってGを求めるG演算手段と、
「Kb=1/(1+√(1−G))」なる関係式で定まるKbの値を、Gの値に基づいて参照することができるG→Kbテーブルと、
G→Kbテーブルを参照することにより、G演算手段によって求められたGに対応するKbを決定するG→Kb変換手段と、
座標(xa,ya)とKbとに基づいて、「xb=Kb・xa」および「yb=Kb・ya」なる演算を行い、座標(xb,yb)を求める射影方式変換手段と、
を有し、半径R=1となるように正規化された正射影歪曲円形画像上の座標(xa,ya)を、立体射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された立体射影方式歪曲円形画像上の座標(xb,yb)に変換する機能を有するようにしたものである。
【0029】
(16) 本発明の第16の態様は、上述の第9〜第13の態様に係る画像変換装置において、
射影方式逆変換部が、
座標(xa,ya)に基づいて、「G=xa2+ya2」なる演算を行ってGを求めるG演算手段と、
「Kb=1/√(1+√(1−G))」なる関係式で定まるKbの値を、Gの値に基づいて参照することができるG→Kbテーブルと、
G→Kbテーブルを参照することにより、G演算手段によって求められたGに対応するKbを決定するG→Kb変換手段と、
座標(xa,ya)とKbとに基づいて、「xb=Kb・xa」および「yb=Kb・ya」なる演算を行い、座標(xb,yb)を求める射影方式変換手段と、
を有し、半径R=1となるように正規化された正射影歪曲円形画像上の座標(xa,ya)を、等立体角射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等立体角射影歪曲円形画像上の座標(xb,yb)に変換する機能を有するようにしたものである。
【0030】
(17) 本発明の第17の態様は、上述の第9〜第16の態様に係る画像変換装置において、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、非正射影歪曲円形画像上で指定された切出中心点PP(x00,y00)の座標x00,y00を、正射影歪曲円形画像上で対応する切出中心点P(x0,y0)の座標x0,y0に変換する射影方式正変換部を更に設け、
係数算出部が、切出中心点P(x0,y0)の座標値x0,y0に基づいて、切出中心点P(x0,y0)を通りZ軸に平行な直線と原点Oを中心として半径Rをもった仮想球面との交点G(x0,y0,z0)を求め、原点Oを起点として交点G(x0,y0,z0)を通るベクトルを視線ベクトルnとして、係数の算出を行うようにしたものである。
【0031】
(18) 本発明の第18の態様は、上述の第17の態様に係る画像変換装置において、
歪曲円形画像用メモリが、半径R=1となるように正規化された非正射影歪曲円形画像を格納し、
係数算出部が、
座標値x0,y0に基づいて、
ra=√(x02+y02)
z0=√(1−ra2)
なる演算を行い、raおよびz0を算出する演算手段と、
座標値x0,y0およびz0,ra、ならびに平面傾斜角φに基づいて、
A=(y0・cosφ+x0・z0・sinφ)/ra
B=(−y0・sinφ+x0・z0・cosφ)/ra
C=−x0
D=(−x0・cosφ+y0・z0・sinφ)/ra
E=(x0・sinφ+y0・z0・cosφ)/ra
F=−y0
なる演算(但し、ra=0の場合は、A=cosφ,B=−sinφ,C=0,D=sinφ,E=cosφ,F=0)を行い、係数A,B,C,D,E,Fを算出する演算手段と、
倍率mに基づいて、
t=1/m
なる演算を行い、係数tを算出する演算手段と、
を有するようにしたものである。
【0032】
(19) 本発明の第19の態様は、上述の第17または第18の態様に係る画像変換装置において、
歪曲円形画像用メモリに格納されている非正射影歪曲円形画像および平面正則画像用メモリに格納されている平面正則画像をそれぞれ表示するモニタ装置と、
切出中心点PP(x00,y00)の座標値x00,y00をパラメータとして入力して射影方式正変換部に与えるとともに、平面傾斜角φと、倍率mと、をパラメータとして入力して係数算出部に与えるパラメータ入力ユニットと、
を更に設け、
パラメータ入力ユニットが、モニタ装置上に表示されている非正射影歪曲円形画像上においてユーザが指定した1点を切出中心点PP(x00,y00)として認識し、その座標値x00,y00を入力する機能を有するようにしたものである。
【0033】
(20) 本発明の第20の態様は、上述の第17〜第19の態様に係る画像変換装置において、
射影方式正変換部が、
座標(x00,y00)に基づいて、「rb=√(x002+y002)」なる演算を行ってrbを求めるrb演算手段と、
rbを用いて「Ka=(sin(πrb/2))/rb」なる演算式で定義されるKaを求めるrb→Ka変換手段と、
座標(x00,y00)とKaとに基づいて、「x0=Ka・x00」および「y0=Ka・y00」なる演算を行い、座標(x0,y0)を求める射影方式変換手段と、
を有し、等距離射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等距離射影歪曲円形画像上の座標(x00,y00)を、半径R=1となるように正規化された正射影歪曲円形画像上の座標(x0,y0)に変換する機能を有するようにしたものである。
【0034】
(21) 本発明の第21の態様は、上述の第17〜第19の態様に係る画像変換装置において、
射影方式正変換部が、
座標(x00,y00)に基づいて、「rb=√(x002+y002)」なる演算を行ってrbを求めるrb演算手段と、
rbを用いて「Ka=2/(1+rb2)」なる演算式で定義されるKaを求めるrb→Ka変換手段と、
座標(x00,y00)とKaとに基づいて、「x0=Ka・x00」および「y0=Ka・y00」なる演算を行い、座標(x0,y0)を求める射影方式変換手段と、
を有し、立体射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された立体射影歪曲円形画像上の座標(x00,y00)を、半径R=1となるように正規化された正射影歪曲円形画像上の座標(x0,y0)に変換する機能を有するようにしたものである。
【0035】
(22) 本発明の第22の態様は、上述の第17〜第19の態様に係る画像変換装置において、
射影方式正変換部が、
座標(x00,y00)に基づいて、「rb=√(x002+y002)」なる演算を行ってrbを求めるrb演算手段と、
rbを用いて「Ka=√(2−rb2)」なる演算式で定義されるKaを求めるrb→Ka変換手段と、
座標(x00,y00)とKaとに基づいて、「x0=Ka・x00」および「y0=Ka・y00」なる演算を行い、座標(x0,y0)を求める射影方式変換手段と、
を有し、等立体角射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等立体角射影歪曲円形画像上の座標(x00,y00)を、半径R=1となるように正規化された正射影歪曲円形画像上の座標(x0,y0)に変換する機能を有するようにしたものである。
【0036】
<<< その他の特徴をもった発明の態様 >>>
【0037】
(23) 本発明の第23の態様は、上述の第1〜第22の態様に係る画像変換装置において、
画素値決定部が、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する際に、データ読出部が読み出した複数の画素の画素値を用いた補間演算を行うようにしたものである。
【0038】
(24) 本発明の第24の態様は、上述の第1〜第7、第9〜第18、第20〜第23の態様に係る画像変換装置を、コンピュータにプログラムを組み込むことにより実現したものである。
【0039】
(25) 本発明の第25の態様は、上述の第1〜第7、第9〜第18、第20〜第23の態様に係る画像変換装置を、電子回路が組み込まれた半導体集積回路により実現したものである。
【0040】
(26) 本発明の第26の態様は、上述の第1〜第7、第9〜第18、第20〜第23の態様に係る画像変換装置に、
魚眼レンズを装着したデジタルカメラと、
歪曲円形画像用メモリに格納されている歪曲円形画像および平面正則画像用メモリに格納されている平面正則画像をそれぞれ表示するモニタ装置と、
視線ベクトルn,平面傾斜角φ,倍率mを指定するためのパラメータを入力するパラメータ入力ユニットと、
を付加し、
デジタルカメラを用いた撮影により得られた歪曲円形画像が歪曲円形画像用メモリへと格納され、平面正則画像用メモリに得られた平面正則画像がモニタ装置によって表示されるように構成することにより、魚眼監視システムを実現したものである。
【発明の効果】
【0041】
本発明の画像変換装置によれば、歪曲円形画像上の座標と平面正則画像上の座標との対応関係を示す対応関係式を、演算負担が効果的に軽減される理想形式に導き、しかも開平算や逆数演算の部分を、ルックアップテーブルを参照する処理で代用するようにしたため、演算負担を大幅に低減させることができる。しかも、円柱側面に沿った湾曲座標系を利用する態様では、より歪みの少ない平面正則画像を得ることができる。
【図面の簡単な説明】
【0042】
【図1】正射影方式の魚眼レンズを用いた撮影により歪曲円形画像Sを形成する基本モデルを示す斜視図である。
【図2】魚眼レンズを用いた撮影によって得られた歪曲円形画像Sの一例を示す平面図である(歪曲円形画像Sの一般的なイメージを示すものであり、正確な画像を示すものではない)。
【図3】歪曲円形画像Sの一部分に切出領域Eを定義した例を示す平面図である。
【図4】歪曲円形画像Sを含む二次元XY直交座標系と、平面正則画像Tを含む二次元UV直交座標系との関係を示す斜視図である。
【図5】二次元UV直交座標系上に定義された平面正則画像Tと平面傾斜角φとの関係を示す平面図である。
【図6】二次元XY直交座標系から二次元UV直交座標系への座標変換の原理を示す斜視図である。
【図7】図6の斜視図に示されている各構成要素を水平方向から見た図である。
【図8】図6の斜視図に示されている各構成要素を上方から見た図である。
【図9】倍率mを考慮したモデルにおいて、二次元XY直交座標系上における点Si(xi,yi)と二次元UV直交座標系上における点Ti(ui,vi)との対応関係を示す斜視図である。
【図10】倍率m=1に設定した場合の二次元UV直交座標系の配置および切出領域E1の範囲を示す側面図である。
【図11】倍率m>1に設定した場合の二次元UV直交座標系の配置および切出領域E2の範囲を示す側面図である。
【図12】図2に示す歪曲円形画像Sの一部分を切り出すことにより、二次元UV直交座標系上に得られた平面正則画像Tの一例を示す平面図である。
【図13】図2に示す歪曲円形画像Sの一部分を切り出すことにより、二次元UV直交座標系上に得られた平面正則画像Tの別な一例を示す平面図である。
【図14】二次元UV直交座標系上に定義された平面正則画像Tを示す平面図である。
【図15】二次元XY直交座標系上に定義された歪曲円形画像Sを示す平面図である。
【図16】二次元XY直交座標系上における点S1(x1,y1),S2(x2,y2)と、二次元UV直交座標系上における点T1(u1,v1),T2(u2,v2)との対応関係を示すための仮想球面の側面図である。
【図17】二次元XY直交座標系上における座標(x,y)と二次元UV直交座標系上における座標(u,v)との対応関係を示す正射影画像用対応関係式である。
【図18】図17に示す対応関係式の意味合いを説明するための図である。
【図19】正射影方式の魚眼レンズにおける入射光の投影状態を示す側面図である。
【図20】正射影方式の魚眼レンズを用いて形成される正射影歪曲円形画像と、等距離射影方式の魚眼レンズを用いて形成される等距離射影歪曲円形画像と、の関係を示す斜視図である。
【図21】等距離射影歪曲円形画像上の座標と正射影歪曲円形画像上の座標との間で座標変換を行うための変換式を示す図である。
【図22】図21に示す式について、半径R=1とする正規化を行うことにより導かれる式を示す図である。
【図23】半径R=1とする正規化を行った場合の等距離射影歪曲円形画像上の座標と正射影歪曲円形画像上の座標との間の座標変換式を示す図である。
【図24】半径R=1とする正規化を行った場合の様々な歪曲円形画像上の座標と正射影歪曲円形画像上の座標との間の座標変換式を示す図である。
【図25】二次元UV直交座標系上における点と、二次元XaYa直交座標系上の正射影歪曲円形画像上の点と、二次元XbYb直交座標系上の実際の射影方式の歪曲円形画像上の点と、の対応関係を示す斜視図である。
【図26】図17の下段に示す式を切出中心点P(x0,y0,z0)の各座標値を用いた式に変形するプロセスを示す図である。
【図27】図17の上段に示す式を変形するプロセスを示す図である。
【図28】本発明の基本的な実施形態に係る画像変換装置の構成を示すブロック図である。
【図29】図28に示す装置200における射影方式正変換部210の詳細な構成を示すブロック図である。
【図30】図28に示す装置200における係数算出部240の詳細な構成を示すブロック図である。
【図31】図28に示す装置200における座標変換部270の詳細な構成を示すブロック図である。
【図32】図28に示す装置200における射影方式逆変換部280の詳細な構成を示すブロック図である。
【図33】図9の基本モデルに修正を加えた変形モデルを示す斜視図である。
【図34】二次元UV直交座標系上における点T(u,v)と二次元UV湾曲座標系上における点C(u,v)との対応関係を示す斜視図である。
【図35】二次元XY直交座標系上における座標(x,y)と二次元UV湾曲座標系上における座標(u,v)との対応関係を示す正射影歪曲円形画像用の対応関係式を示す図である。
【図36】図35に示す式を変形するプロセスを示す図である。
【図37】二次元UV湾曲座標系を用いる実施例において、図28に示す装置200における座標変換部270の代わりに用いる座標変換部270′の詳細な構成を示すブロック図である。
【図38】図37に示すKxxKyy決定手段271′の詳細な構成例を示すブロック図である。
【発明を実施するための最良の形態】
【0043】
以下、本発明を図示する実施形態に基づいて説明する。
【0044】
<<< §1.画像変換処理の基本モデル >>>
【0045】
はじめに、魚眼レンズを用いた撮影により得られた歪曲円形画像の一般的な特徴と、その一部分を切り出して、平面正則画像に変換する処理の基本原理を説明する。図1は、正射影方式の魚眼レンズを用いた撮影により歪曲円形画像Sを形成する基本モデルを示す斜視図である。一般に、魚眼レンズは、その投影方式によって複数の種類に分けられるが、この図1に示すモデルは、正射影方式の魚眼レンズについてのものである(正射影方式以外の魚眼レンズに本発明を適用する手法は、§4で述べる)。
【0046】
図1には、三次元XYZ直交座標系におけるXY平面上に歪曲円形画像Sが形成された例が示されている。ここでは、図示のとおり、Z軸を図の上方にとり、Z軸の正の領域側にドーム状の仮想球面H(半球)を定義した例を示すことにする。
【0047】
XY平面上に形成された歪曲円形画像Sは、座標系の原点Oを中心とした半径Rの円を構成する画像であり、Z軸の正の領域側における180°の画角をもった領域に存在する像を歪ませて記録したものに相当する。図2は、魚眼レンズを用いた撮影によって得られた歪曲円形画像Sの一例を示す平面図である。このように、歪曲円形画像Sには、Z軸の正の領域側に存在するすべての像が記録されることになるが、その中心部分と周囲部分とでは、像の縮尺倍率が異なっており、記録された像の形状は歪んだものになる。なお、図2に示す歪曲円形画像Sは、魚眼レンズを用いた撮影により得られた歪曲円形画像の一般的なイメージを示すものであり、実際の魚眼レンズを用いて得られる正確な画像を示すものではない。
【0048】
実際の魚眼レンズは、複数の凸レンズや凹レンズを組み合わせた光学系によって構成されるが、その光学的な特性は、図1に示すような仮想球面Hによってモデル化できることが知られている。すなわち、歪曲円形画像Sの上面に、半径Rをもったドーム状の仮想球面H(半球)を配置したモデルを考えれば、正射影方式の魚眼レンズの光学的特性は、仮想球面H上の任意の点H(x,y,z)に対して法線方向から入射する入射光線L1は、Z軸に平行な入射光線L2として、XY平面上の点S(x,y)へ向かう振る舞いをする、と考えてよい。逆言すれば、図2において歪曲円形画像S上の点S(x,y)に位置する画素は、図1に示す入射光線L1の延長線上に存在する物体上の1点を示していることになる。
【0049】
もちろん、実際の魚眼レンズで生じている光学的現象は、複数の凸レンズや凹レンズによる屈折により、撮像対象となる物体の特定の点が、XY平面上の特定の点S(x,y)上に結像する現象ということになるが、画像変換処理などを行う上では、図1に示すような仮想球面Hを用いたモデルに置き換えた議論を行っても何ら支障はない。したがって、前掲の特許文献に開示されている画像変換処理でも、このようなモデルを前提とした手法が示されており、本発明における以下の説明においても、このようなモデルを前提とした説明を行うことにする。
【0050】
本発明に係る画像変換装置の目的は、歪曲円形画像S上の一部分を切り出して、平面正則画像に変換する処理を行うことである。たとえば、図2に示す歪曲円形画像Sを見たユーザが、その左下に描かれている女性の画像を、歪みのない正しい画像で観察したいと考えたとしよう。このような場合、ユーザは、歪曲円形画像Sのどの部分を切り出して変換を行うべきかを指定する必要がある。たとえば、図3にハッチングを施して示すような切出領域Eを変換対象とすべき領域として指定するのであれば、最も直観的な指定方法は、その中心点P(x0,y0)の位置を指定する方法であろう。本願では、このようにしてユーザが指定する点Pを、切出中心点Pと呼ぶことにする。もっとも、歪曲円形画像Sは歪んだ画像であるため、切出中心点Pは、切出領域Eについての正確な幾何学的中心にはならない。
【0051】
ここでは、切出中心点P(x0,y0)を中心とした切出領域E内の画像を、平面正則画像に変換するために、次のような基本モデルを考える。図4は、この基本モデルにおいて、歪曲円形画像Sを含む二次元XY直交座標系と、平面正則画像Tを含む二次元UV直交座標系との関係を示す斜視図である。図示のとおり、歪曲円形画像Sは、三次元XYZ直交座標系のXY平面上に定義されているので、歪曲円形画像S自身は、二次元XY直交座標系上に定義された画像である。そこで、この歪曲円形画像S上に定義された切出中心点P(x0,y0)を通りZ軸に平行な直線と仮想球面Hとの交点Gを考える。この交点Gは、いわば切出中心点P(x0,y0)の真上の点であり、その位置座標は(x0,y0,z0)である。
【0052】
次に、この交点G(x0,y0,z0)において、仮想球面Hに接する接平面を定義し、この接平面上に二次元UV直交座標系を定義する。そして、平面正則画像Tを、この二次元UV直交座標系上の画像として求めることにする。図4に示す例の場合、交点G(x0,y0,z0)が原点となるように二次元UV直交座標系が定義されている。結局、このモデルにおけるUV座標系の原点Gは、仮想球面H上のいずれかに設定され、UV座標系を構成するUV平面は、この原点Gの位置における仮想球面Hに対する接平面に一致する。
【0053】
UV座標系の原点となる点G(x0,y0,z0)の位置は、図示のとおり、方位角αと天頂角βとによって特定することができる。ここで、方位角α(0≦α<360°)は、切出中心点P(x0,y0)とXY座標系の原点Oとを結ぶ直線とY軸とのなす角であり、天頂角β(0≦β≦90°)は、UV座標系の原点となる点G(x0,y0,z0)とXY座標系の原点Oとを結ぶ直線とZ軸とのなす角(鋭角)である。
【0054】
このように、UV平面は、方位角αと天頂角βとを指定することによって特定することができるが、UV座標系を決定するには、更にもう1つの角度φを指定する必要がある。この角度φは、直線OGを回転軸としたUV座標系の向きを示すパラメータであり、図4の例では、U軸とJ軸とのなす角度として定義されている。ここで、J軸は、点G(x0,y0,z0)を通り、XY平面に平行かつ直線OGに直交する軸であり、以下、回転基準軸と呼ぶことにする。要するに、角度φは、UV座標系においてU軸方向を向いたベクトルUと、回転基準軸Jの方向を向いたベクトルJと、を定義したときに、ベクトルUとベクトルJとのなす角度として定義される角であり、通常、「平面傾斜角」と呼ばれている。
【0055】
図5は、UV座標系上に定義された平面正則画像Tと平面傾斜角φとの関係を示す平面図である。ここに示す例の場合、平面正則画像Tは、UV座標系の原点G(x0,y0,z0)を中心とするUV平面上の矩形として定義されており、その長辺はU軸に平行、短辺はV軸に平行になっている。平面傾斜角φは、上述したとおり、U軸とJ軸とのなす角であるから、図5に示す例の場合、UV平面上での平面正則画像Tの回転ファクターを示すパラメータということになる。
【0056】
結局、図4に示す平面正則画像Tを形成するためのUV座標系の位置および向きは、方位角α,天頂角β,平面傾斜角φという3つの角度からなるパラメータを設定することにより一義的に決定される。この3つの角度は、一般にオイラー角と呼ばれている。
【0057】
さて、ここで行うべき画像変換処理は、結局、XY座標系からUV座標系への座標変換ということになる。そこで、XY座標系とUV座標系との幾何学的な位置関係を、もう少し詳しく見てみよう。図6の斜視図に示されているように、XY平面上の歪曲円形画像Sを、方位角αによって示される方向に対して、天頂角βだけ傾斜すると、傾斜面S1が得られる。ここで、図示のとおり、XY座標系の原点OからUV座標系の原点Gへ向かう方向に視線ベクトルnを定義し、傾斜面S1をこの視線ベクトルnの方向に距離Rだけ平行移動させると、接平面S2が得られることになる。移動距離Rは、歪曲円形画像Sの半径であり、仮想球面Hの半径でもある。
【0058】
接平面S2は、点Gにおいて仮想球面Hに接する平面であり、視線ベクトルnは、点Gにおける仮想球面Hの法線方向を示すベクトルである。そして、UV座標系は、この接平面S2上に定義される座標系であり、点Gを原点とし、U軸とJ軸(点Gを通り、XY平面に平行かつ視線ベクトルnに直交する軸であり、図における傾斜面S1とXY平面との交線に平行な軸になる。)とのなす角が平面傾斜角φとなるように定義された二次元直交座標系である。図7は、図6の斜視図に示されている各構成要素を水平方向から見た図である。前述したとおり、点G(x0,y0,z0)は、歪曲円形画像S上に定義された切出中心点P(x0,y0)を通りZ軸に平行な直線と仮想球面Hとの交点として定まる点であり、その位置は方位角αおよび天頂角βによって定まる。一方、図8は、図6の斜視図に示されている各構成要素を上方から見た図である。図に示す交点G(x0,y0,z0)は、仮想球面H上の点であり、XY平面の上方に位置している。そして、この交点G(x0,y0,z0)における仮想球面Hに対する接平面上にUV座標系が定義される。このとき、U軸とJ軸とのなす角がφとなるように、U軸の向きが定められる。
【0059】
<<< §2.倍率を加味した画像変換処理の基本原理 >>>
【0060】
§1では、原点G(x0,y0,z0)が仮想球面H上の1点となるように、UV座標系を定義する基本モデルを述べた。この場合、XY座標系の原点OとUV座標系の原点Gとの距離は半径Rに一致する。これに対して、通常は、変換により得られる平面正則画像にスケーリングファクタを導入した実用モデルが利用される。すなわち、所定の倍率mを設定し、2点OG間の距離が、半径Rのm倍となるような位置にUV座標系を配置し、このUV座標系上に、倍率mに対応するサイズをもった平面正則画像Tを定義する実用モデルが用いられる。ここでは、この実用モデルにおける画像変換処理の基本原理を説明する。
【0061】
図9は、この実用モデルについて、二次元XY直交座標系上における点Si(xi,yi)と二次元UV直交座標系上における点Ti(ui,vi)との対応関係を示す斜視図である。図4に示す基本モデルとの相違は、二次元UV直交座標系の原点G(xg,yg,zg)の位置である。すなわち、図9に示す実用モデルの場合、2点OG間の距離は、m・Rに設定されている。図9は、m=2に設定した例である。図4に示す基本モデルは、この実用モデルにおいて、m=1に設定し、原点G(xg,yg,zg)を球面上対応点Q(x0,y0,z0)に一致させるようにした特殊な例に相当する。
【0062】
ここで、球面上対応点Q(x0,y0,z0)は、切出中心点P(x0,y0)に対応した仮想球面H上の点であり、正射影方式の魚眼レンズの場合、切出中心点P(x0,y0)を通りZ軸に平行な直線と仮想球面Hとの交点として定義される点である。視線ベクトルnは、原点Oから球面上対応点Q(x0,y0,z0)へ伸びるベクトルとして定義されるので、切出中心点P(x0,y0)を定めることは、視線ベクトルnを定めることと等価である。
【0063】
もちろん、この図9に示す実用モデルの場合も、二次元UV直交座標系の原点G(xg,yg,zg)は、視線ベクトルn上の点であり、UV座標系は、この視線ベクトルnに直交する平面上に定義される。また、U軸の向きは、平面傾斜角φに基づいて決定される。具体的には、図示のとおり、原点G(xg,yg,zg)を通る回転基準軸JとU軸とのなす角度が、平面傾斜角φに一致するように、UV座標系の向きが決定されることになる。
【0064】
ここで行う画像変換処理の目的は、XY座標系上に定義された歪曲円形画像S上の切出中心点P(x0,y0)を中心とした切出領域内の歪曲画像を切り出して変形し、UV座標系上に平面正則画像Tを得ることにある。具体的には、UV座標系上に得られる平面正則画像T上の1点Ti(ui,vi)に位置する画素の画素値を、これに対応するXY座標系上の1点Si(xi,yi)の近傍に位置する画素の画素値に基づいて決定することである。そのためには、§3で述べるように、座標(ui,vi)と座標(xi,yi)との対応関係を示す対応関係式が必要になる。
【0065】
このような画像変換処理を行う上で、視線ベクトルnは、平面正則画像の切り出し位置を示すパラメータとして機能する。視線ベクトルnを図示の方向に設定した場合、切出中心点P(x0,y0)を中心とした切出領域内から、平面正則画像の切り出しが行われることになる。視線ベクトルnの方向を変えれば、切出中心点Pの位置も変わることになり、平面正則画像の切り出し位置も変わってくる。一方、平面傾斜角φは、平面正則画像の切り出し向きを示すパラメータとして機能し、倍率m(2点OG間の距離を決めるファクター)は、平面正則画像の切り出しサイズを示すパラメータとして機能する。
【0066】
図10および図11は、倍率mと切出領域Eとの関係を示す側面図である。図10は、倍率m=1に設定したモデル(図4に示すモデル)に相当し、切出中心点Pの真上に位置する球面上対応点Qが、そのままUV座標系の原点G1となっており、2点O,G1間の距離は半径Rに等しい。これに対して、図11は、倍率m>1に設定したモデル(図9に示すモデル)に相当し、切出中心点Pの真上に位置する球面上対応点Qから離れた位置にUV座標系の原点G2が設定されており、2点O,G2間の距離は半径Rのm倍に等しい。いずれも切出中心点Pの位置、球面上対応点Qの位置、視線ベクトルnの位置は同じであるが、原点の位置G1,G2が異なるため、UV座標系の位置(その上に形成される平面正則画像T1,T2の位置)も異なっている。
【0067】
図10と図11とを比較すれば、倍率mに応じて、切出領域Eが異なることが理解できよう。すなわち、倍率m=1の設定では、図10のように、E1が切出領域となるのに対して、倍率m>1の設定では、図11のように、E2が切出領域となり、倍率mが大きくなるほど、切出領域Eの面積は小さくなる。ここで、得られる平面正則画像T1,T2をモニタ装置の画面上に表示させる場合、平面正則画像T1,T2の大きさ(モニタ画面の大きさに応じて定まる)は一定である。したがって、平面正則画像T1,T2は、いずれも切出中心点Pを中心として切り出した画像であるが、倍率m>1に設定した平面正則画像T2の方が、より狭い切出領域E2を拡大表示した画像になる。別言すれば、平面正則画像T1が、画角F1内の被写体を撮影した画像になるのに対して、平面正則画像T2は、より狭い画角F2内の被写体を撮影した画像になる。
【0068】
これに対して、平面傾斜角φは、平面正則画像の切り出し向きを示すパラメータであり、平面傾斜角φを変えると、平面正則画像T内に現れる被写体と画像枠との位置関係(回転方向に関する位置関係)が変わることになる。これは、図5において、角度φを増加させると、U軸(およびV軸)が反時計回りに回転し、平面正則画像Tの画像枠も反時計回りに回転することから、容易に理解できよう。
【0069】
結局、ユーザは、視線ベクトルn(切出中心点P),倍率m,平面傾斜角φという3つのパラメータを設定することにより、UV座標系上に所望の平面正則画像Tを得ることができる。また、得られた平面正則画像Tが満足のゆくものでなかった場合には、これら3つのパラメータを適宜修正することにより、平面正則画像Tを修正することができる。すなわち、得られた画像の向きに満足しなければ、平面傾斜角φを修正すればよいし、得られた画像の画角に満足しなければ、倍率mを修正すればよいし、得られた画像の切り出し位置に満足しなければ、視線ベクトルn(切出中心点P)を修正すればよい。
【0070】
図12は、図2に例示した歪曲円形画像Sについて、上記3つのパラメータを適宜設定し、その一部分を切り出して変換することによりUV座標系上に得られた平面正則画像Tの一例を示す平面図である。この例では、図2に示す歪曲円形画像Sにおける女性の鼻の位置が切出中心点Pとして設定されており、女性の顔周辺の画像が切り出されている。ただ、女性の身長方向がU軸となるような切り出し向きが設定されているため、図示のように、U軸を水平方向にとったモニタ画面に表示させると、女性は横向きに表示されてしまう。
【0071】
このような場合、ユーザは、平面傾斜角φを修正すればよい。たとえば、角度φを90°程度減少させれば、U軸(およびV軸)が時計回りに回転し、平面正則画像Tの画像枠も時計回りに回転することになり、女性の正立像が得られることになる。ただ、図示のモニタ画面は、横方向寸法a(水平方向の画素数)より縦方向寸法b(垂直方向の画素数)の方が小さい矩形枠を有しているため、女性の胸元まで表示するためには、倍率mを若干減少させる修正も必要になる。
【0072】
図13は、このような修正によって得られた平面正則画像Tである。ユーザの要望どおり、女性の胸元までの正立像が得られている。図12も図13も、視線ベクトルn(切出中心点P)は同一の設定となっており、いずれも女性の鼻の位置に指定した切出中心点Pが中心となる画像になっている。ただ、両者では定義されるUV座標系の位置および向きが異なっているため、得られる平面正則画像Tが異なる結果となっている。
【0073】
なお、本願にいう「平面正則画像」とは、必ずしも「歪みのない完全な画像」を意味するものではなく、「魚眼レンズを用いた撮影により得られる歪曲円形画像Sに比べて、通常レンズを用いた撮影により得られる画像に近い平面画像」を意味するものである。したがって、図2に示す歪曲円形画像S上の女性像に比べれば、図12,図13に示す平面正則画像Tは歪みのない画像に見えるが、完全に歪みが取り除かれているわけではない。実際、従来の画像変換で得られる平面正則画像は、人物の細かな特徴を確認する用途には、歪み矯正が不十分であり、特に、画像の外側部分(輪郭近傍)の歪みはかなり大きい。
【0074】
<<< §3.正射影方式の対応関係式 >>>
【0075】
図14は、二次元UV直交座標系上に定義された平面正則画像Tを示す平面図である。ここでは、この平面正則画像T上の任意の点Tiを、UV座標系の座標値ui,viを用いて、Ti(ui,vi)と表すことにする。図9に示すとおり、このUV座標系の原点Gは、三次元XYZ直交座標系上における座標を用いて、点G(xg,yg,zg)で示されることになるが、二次元UV直交座標系を用いて示すと、図14に示すとおり、点T(0,0)ということになる。
【0076】
一方、図15は、二次元XY直交座標系上に定義された歪曲円形画像Sを示す平面図である。ここでは、この歪曲円形画像S上の任意の点Siを、XY座標系の座標値xi,yiを用いて、Si(xi,yi)と表すことにする。図14に示す原点G(点T(0,0))上の画像は、図15に示す切出中心点P(x0,y0)上の画像に対応し、図14に示す任意の点Ti(ui,vi)上の画像は、図15に示す点Si(xi,yi)上の画像に対応する。
【0077】
前述したとおり、二次元UV直交座標系上に平面正則画像Tを得るためには、図14に示す点Ti(ui,vi)に位置する画素の画素値を、図15に示す点Si(xi,yi)に位置する画素(二次元XY直交座標系上の歪曲円形画像S内の画素)の画素値に基づいて決定する必要がある。そのためには、二次元UV直交座標系上の座標(ui,vi)と二次元XY直交座標系上の座標(xi,yi)との間の1対1の対応関係を示す対応関係式が必要になる。このような対応関係式を用いれば、図14に示す平面正則画像T上の任意の点は、図15に示す歪曲円形画像Sの切出領域E内のいずれかの点に対応づけられることになり、切出領域E内の歪曲画像を平面正則画像Tに変換することができる。
【0078】
このような対応関係式は、三次元XYZ座標系の空間内に配置されたUV座標系の位置および向きが決定すれば、幾何学的な手法で一義的に定義することが可能である。たとえば、図9に示す例において、平面正則画像T上の点Ti(ui,vi)と、歪曲円形画像S上の点Si(xi,yi)との位置関係に着目すれば、点Si(xi,yi)の真上にある仮想球面H上の点を球面上対応点Qi(xi,yi,zi)としたときに、原点Oと球面上対応点Qiとを結ぶ直線niとUV座標系の座標平面との交点に、点Ti(ui,vi)が位置することになる。
【0079】
図16は、このような2点間の位置関係をより明確に説明するための側面図である。この図16において、視線ベクトルnは、原点Oから天頂角βをもつ方向に伸び、視線ベクトルnと仮想球面Hとの交点Qは、切出中心点P(x0,y0)の真上に位置している。また、視線ベクトルn上における原点Oからの距離がmRの位置に点Gが定義されている。この点Gは、二次元UV直交座標系の原点であり、このUV座標系の座標面は、視線ベクトルnに直交しており、平面正則画像Tは、このUV座標系の座標面上に定義される。
【0080】
平面正則画像T上の任意の点T1(u1,v1)についての歪曲円形画像S上の対応点S1(x1,y1)は、次のようにして定義される。すなわち、点T1(u1,v1)と原点Oとを結ぶ直線と仮想球面Hとの交点位置に、球面上対応点Q1を求め、この球面上対応点Q1の真下の位置にある歪曲円形画像S上の点を、対応点S1(x1,y1)とすればよい。同様に、平面正則画像T上の任意の点T2(u2,v2)については、点T2(u2,v2)と原点Oとを結ぶ直線と仮想球面Hとの交点位置に、球面上対応点Q2を求め、この球面上対応点Q2の真下の位置にある歪曲円形画像S上の点を、対応点S2(x2,y2)とすればよい。
【0081】
このような2点間の対応関係は、幾何学的な対応関係式で記述することができる。具体的には、図17に示す式(1)〜(9)によって記述できることが知られており、たとえば、前掲の特許文献1,2などに、このような対応関係式を用いた画像変換の方法が開示されている。なお、座標系のとり方や角度の定義方法などによって、各項の符号等に多少の相違が生じるため、文献によっては、掲載されている式に若干の食い違いが生じるが、本質的には同一の幾何学演算を示す式である。
【0082】
この図17に示す対応関係式は、図9に示す座標系および角度の定義を行った場合の式であり、UV座標系の位置を示すパラメータα,βと、UV座標系の向きを示すパラメータφとを含む式になっている。これら3つのパラメータは、前述したオイラー角、すなわち、方位角α,天頂角β,平面傾斜角φである。
【0083】
具体的には、
x=R(uA+vB+wC)/
√(u2+v2+w2) 式(1)
は、UV座標系上の1点T(u,v)の座標値u,vを用いて、XY座標系上の対応点S(x,y)のx座標値を求めるための式であるが、A,B,Cは、それぞれ、
A=cosφ cosα − sinφ sinα cosβ 式(3)
B=−sinφ cosα − cosφ sinα cosβ 式(4)
C=sinβ sinα 式(5)
なる数式で求まる値であり、オイラー角α,β,φの三角関数を用いた演算によって決定されることになる。
【0084】
同様に、
y=R(uD+vE+wF)/
√(u2+v2+w2) 式(2)
は、UV座標系上の1点T(u,v)の座標値u,vを用いて、XY座標系上の対応点S(x,y)のy座標値を求めるための式であるが、D,E,Fは、それぞれ、
D=cosφ sinα + sinφ cosα cosβ 式(6)
E=−sinφ sinα + cosφ cosα cosβ 式(7)
F=−sinβ cosα 式(8)
なる数式で求まる値であり、オイラー角α,β,φの三角関数を用いた演算によって決定されることになる。
【0085】
なお、式(1),(2)におけるwは、
w=mR 式(9)
で与えられる値である。ここで、Rは、既に述べたとおり、歪曲円形画像Sの半径であり、mは倍率である。倍率mは、座標値u,vのスケーリングと、座標値x,yのスケーリングとの関係を示すものであり、倍率mを大きく設定すればするほど、平面正則画像Tには拡大された画像が求められるが、歪曲円形画像Sの切出領域Eは小さくなる。
【0086】
結局、図17に示す式において、Rの値は歪曲円形画像Sの半径として既知であり(後述するように、歪曲円形画像Sのサイズを正規化しておけば、R=1に設定することができる)、mの値はユーザによって指定された倍率として既知であるから、ユーザがオイラー角α,β,φを指定することにより、UV座標系の位置および向きを決定してやれば、図17に示す対応関係式において、座標値x,yを算出するための未知数はu,vのみになる。したがって、この対応関係式を用いれば、平面正則画像Tにおける任意の1点T(u,v)に対応する歪曲円形画像S上の対応点S(x,y)を決定することができる。
【0087】
図18は、この図17に示す対応関係式の意味合いを簡単に説明するための図である。この図18には、切出中心点P(x0,y0)を三次元XYZ直交座標系の原点Oの位置に設定した特殊な場合のUV座標系の位置が示されている。この場合、方位角α=0°、天頂角β=0°に設定され、視線ベクトルnは、真上(Z軸正方向)を向くことになる。また、UV座標系の原点GはZ軸上に配置され、三次元XYZ直交座標系上での座標はG(0,0,mR)となり、UV座標面(平面正則画像Tの形成面)は、XY平面に平行な平面になる。ここで、平面傾斜角φをφ=0°とすると、X軸とU軸は平行になり、Y軸とV軸は平行になる。
【0088】
このような特殊な条件では、平面正則画像T上の任意の点T(u,v)と、歪曲円形画像S上の対応点S(x,y)との位置関係は、図示のとおりである。すなわち、点S(x,y)の真上に位置する仮想球面H上の点Qを求め、2点OQを結ぶ直線とUV座標系の座標平面との交点を求めれば、当該交点が点T(u,v)となる関係にある。このため、座標(x,y)と座標(u,v)との間には、
x=(R/L)・u 式(10)
y=(R/L)・v 式(11)
なる簡単な対応関係式が得られる。
【0089】
図17に示す式(1),(2)は、上述の式(10),(11)に対して、方位角α,天頂角β,平面傾斜角φで規定される回転ファクターによる補正を施すことにより得られる式に他ならない。式(1),(2)の分母√(u2+v2+w2)は、式(10),(11)におけるLに対応するものである。図18に示すとおり、Lは、原点Oと点T(u,v)との距離であり、L=√(u2+v2+w2)である。一方、式(1),(2)の分子の(uA+vB+wC)および(uD+vE+wF)は、回転ファクターによる補正項である。ここでは、A〜Fを回転係数と呼ぶことにする。回転係数A〜Fは、図17の式(3)〜(8)に示すとおり、オイラー角α,β,φの三角関数を用いた演算式で示される係数になる。
【0090】
前掲の特許文献1,2等に開示されている画像変換の方法は、この図17に示す対応関係式を用いて、歪曲円形画像Sの一部を平面正則画像Tに変換するものである。しかしながら、この図17に示す対応関係式には、三角関数演算、開平演算、逆数演算という演算負荷の大きな演算が含まれており、このような複雑な演算処理を短時間で実行するためには、高性能の演算処理回路やCPUが必要になり、また、ハードウエアの実装規模も大きくならざるを得ない。このため、装置のコストが高騰せざるを得ない、という問題がある点は、既に述べたとおりである。
【0091】
<<< §4.非正射影方式への適用 >>>
【0092】
これまでの例は、いずれも正射影方式の魚眼レンズを用いた例であり、画像変換に用いる対応関係式も、正射影方式の魚眼レンズで撮影された正射影歪曲円形画像Sを前提とした式になっていた。ところが、実際に市販されている魚眼レンズは、必ずしも正射影方式のレンズとは限らない。実際、魚眼レンズの投影方式としては、等距離射影方式、立体射影方式、等立体角射影方式など、様々な方式が知られており、用途に応じて、これら様々な射影方式をとる魚眼レンズが利用されている。ここでは、このような非正射影方式の魚眼レンズによって撮影された非正射影歪曲円形画像に対して本発明を適用する方法を説明する。
【0093】
正射影方式の魚眼レンズの光学的特性は、既に述べたとおり、図1に示すようなモデルによって説明することができる。すなわち、仮想球面H上の任意の入射点H(x,y,z)に対して、その法線方向から入射する入射光線L1は、Z軸に平行な方向に進む入射光線L2として、XY平面上の点S(x,y)へ到達する、という特性である。図19は、この正射影方式の魚眼レンズにおける入射光の投影状態を示す正面図である。図示のとおり、天頂角βをもった仮想球面H上の入射点H(x,y,z)に対して、その法線方向から入射した入射光線L1は、Z軸に平行な方向に進む入射光線L2として、XY平面上の点S(x,y)へ到達している。
【0094】
ここで、入射点H(x,y,z)の天頂角βと、当該入射点H(x,y,z)を経た入射光線L2がXY平面上で到達する到達点S(x,y)の原点Oからの距離rと、の関係は、正射影方式の魚眼レンズを用いた撮影によって形成される正射影画像の場合(この場合の距離をraとする)、ra=f・sinβなる式で表される。ここで、fは、魚眼レンズに固有の定数である。これに対して、たとえば、等距離射影方式の魚眼レンズを用いた撮影によって形成される等距離射影画像の場合(この場合の距離をrbとする)、両者の関係は、rb=f・βなる式で表されることになる。
【0095】
図20は、正射影方式の魚眼レンズを用いて形成される正射影歪曲円形画像Sと、等距離射影方式の魚眼レンズを用いて形成される等距離射影歪曲円形画像SSと、の関係を示す斜視図である。図に同心円状に示す線は、同一の天頂角βをもつ入射点を経た入射光線についてのXY平面上での到達点の集合を示している。図20(a) に示す正射影画像Sの場合、ra=f・sinβなる式が成り立つため、隣接する同心円状の線の配置間隔は、中心から周囲に向かうほど小さくなってゆく。これに対して、図20(b) に示す等距離射影画像SSの場合、rb=f・βなる式が成り立つため、同心円状の線は、中心から周囲に向かって等間隔に配置される。
【0096】
このように、正射影画像Sと等距離射影画像SSとは、いずれも歪曲円形画像という点では共通するものの、その歪みの状態が両者では異なっているため、当然ながら、平面正則画像に変換するために用いる変換演算式も異なったものになる。したがって、正射影画像Sを平面正則画像Tに変換する場合には、図17に示す正射影画像用対応関係式を用いることができるが、等距離射影画像などの非正射影画像SSを平面正則画像Tに変換する場合には、それぞれについての専用の対応関係式を用いる必要がある。
【0097】
ただ、正射影画像S上の座標と非正射影画像SS上の座標とは、所定の座標変換式を介して相互に変換することが可能である。したがって、本発明を実施するにあたって、変換対象となる歪曲円形画像が、非正射影方式の魚眼レンズによって撮影された非正射影画像SSである場合には、正射影画像S上の座標と非正射影画像SS上の座標との間の座標変換式を用いて正射影画像用対応関係式を補正することにより得られる非正射影画像用対応関係式を用いるようにすればよい。以下、非正射影画像として、等距離射影画像を用いた場合を例にとって、この方法を説明する。
【0098】
図20に示すように、正射影画像上の任意の1点と、等距離射影画像上の特定の1点とは、相互に1対1の対応関係を定義することができる(図の破線は、この対応関係を示している)。具体的には、等距離射影画像SS上の任意の1点の座標を(xb,yb)とし、これに対応する正射影画像S上の特定の1点の座標を(xa,ya)とすれば、両者間には、図21の上段に示すように、
xa=xb(R/rb) sin (πrb/2R) 式(12)
ya=yb(R/rb) sin (πrb/2R) 式(13)
但し、rb=√(xb2+yb2) 式(14)
なる式が成り立つ。ここで、rbは、等距離射影画像SS上の点(xb,yb)と原点Oとの距離を示す変数である。
【0099】
逆に、正射影画像S上の任意の1点の座標を(xa,ya)とし、これに対応する等距離射影画像SS上の特定の1点の座標を(xb,yb)とすれば、両者間には、図21の下段に示すように、
xb=xa(2R/πra) sin-1 (ra/R) 式(15)
yb=ya(2R/πra) sin-1 (ra/R) 式(16)
但し、ra=√(xa2+ya2) 式(17)
が成り立つ。ここで、raは、正射影画像S上の点(xa,ya)と原点Oとの距離を示す変数である。
【0100】
結局、上記式(12)〜(14)は、等距離射影画像SS上の座標(xb,yb)を正射影画像S上の座標(xa,ya)に変換する式(ここでは、射影方式正変換式と言う)であり、上記式(15)〜(17)は、正射影画像S上の座標(xa,ya)を等距離射影画像SS上の座標(xb,yb)に変換する式(ここでは、射影方式逆変換式と言う)ということになる。
【0101】
そこで、変換対象となる歪曲円形画像が、等距離射影方式の魚眼レンズによって撮影された等距離射影画像SSである場合には、まず、図17に示す正射影画像用対応関係式を用いて、任意の座標(u,v)に対応する座標(x,y)を算出する。こうして算出された座標(x,y)は、もちろん、二次元XY直交座標系上に正射影画像Sが配置されている場合の対応座標である。そこで、ここでは、この図17に示す対応関係式で得られた座標(x,y)を座標(xa,ya)と記すことにする。続いて、図21下段に示す射影方式逆変換式(15)〜(17)を用いて、正射影画像S上の座標(xa,ya)を等距離射影画像SS上の座標(xb,yb)に変換すれば、得られた座標(xb,yb)が、座標(u,v)に対応する本来の対応座標ということになる。
【0102】
なお、ユーザに、歪曲円形画像上の1点P(x0,y0)を切出中心点として指定させる場合にも、留意が必要である。すなわち、変換対象となる歪曲円形画像が、正射影方式の魚眼レンズによって撮影された正射影画像Sである場合には、図9のモデルのように、切出中心点P(x0,y0)を通りZ軸に平行な直線と仮想球面Hとの交点Q(x0,y0,z0)を定義し、原点Oを起点として交点Q(x0,y0,z0)を通るベクトルを視線ベクトルnとすることができる。これは、正射影方式の場合、切出中心点Pの真上の位置に、その球面上対応点Qが位置するからである。
【0103】
ところが、変換対象となる歪曲円形画像が、非正射影方式の魚眼レンズによって撮影された非正射影画像SSである場合には、球面上対応点Qは切出中心点Pの真上には位置しない。そこで、この場合、正射影画像S上の座標と非正射影画像SS上の座標との間の座標変換式を用いて、切出中心点Pの座標を補正し、補正後の点を通りZ軸に平行な直線と仮想球面Hとの交点Qを定義し、原点Oを起点としてこの交点Qを通るベクトルを視線ベクトルnとする必要がある。
【0104】
変換対象となる歪曲円形画像が等距離射影画像の場合、当該歪曲円形画像上の1点として指定された切出中心点Pの座標は、等距離射影画像SS上での座標(xb,yb)である。したがって、図21の上段に示す射影方式正変換式(12)〜(14)を用いて、等距離射影画像SS上の座標(xb,yb)を正射影画像S上の座標(xa,ya)に変換し、得られた座標(xa,ya)を用いて視線ベクトルnを決定すればよい。すなわち、座標(xa,ya)で示される補正後の切出中心点を通りZ軸に平行な直線と仮想球面Hとの交点Qを定義し、原点Oを起点として当該交点Qを通るベクトルを視線ベクトルnとすることができる。
【0105】
このような方法を採れば、変換対象となる歪曲円形画像が、等距離射影方式の魚眼レンズによって撮影された等距離射影画像である場合にも、基本的には、これまで述べてきた方法と同等の変換処理を適用することが可能になる。もちろん、この方法は、等距離射影画像への適用に限定されるものではなく、非正射影画像一般に広く適用することが可能である。
【0106】
なお、図21に示す射影方式正変換式(12)〜(14)や、射影方式逆変換式(15)〜(17)に基づく演算を実行する場合、変換対象となる歪曲円形画像の半径RをR=1とする正規化を行うのが好ましい。後述するとおり、変換対象となる歪曲円形画像は、実際にはメモリ上の画像データとして格納されることになり、半径Rの寸法値は任意の単位で取り扱うことが可能である。したがって、画像変換装置の内部処理を行う上で、変換対象となる歪曲円形画像の半径Rを「寸法の基準単位」に設定するようにすれば、これまで述べてきた様々な演算式における半径Rの値を、R=1とおくことができ、演算負担を軽減することが可能になる。
【0107】
たとえば、図21に示す等距離射影画像に関する変換式(12)〜(17)の場合、R=1とする正規化を行えば、図22にも示すとおり、次のように単純化することができる。
<等距離射影→正射影>
xa=xb・ sin (πrb/2)/rb 式(18)
ya=yb・ sin (πrb/2)/rb 式(19)
但し、rb=√(xb2+yb2) (0≦rb≦1) 式(20)
<正射影→等距離射影>
xb=xa・ sin-1 (ra)/ra・2/π 式(21)
yb=ya・ sin-1 (ra)/ra・2/π 式(22)
但し、ra=√(xa2+ya2) (0≦ra≦1) 式(23)
【0108】
ここで、図23に示すように、
Ka= sin (πrb/2)/rb 式(24)
Kb= sin-1 (ra)/ra・2/π 式(25)
とおけば、
<等距離射影→正射影>
xa=Ka・xb, ya=Ka・yb 式(26)
<正射影→等距離射影>
xb=Kb・xa, yb=Kb・ya 式(27)
なる式が得られる。後述する実施形態では、この式(24)〜(27)の形で演算を行っている。
【0109】
以上、変換対象となる歪曲円形画像が、等距離射影方式の魚眼レンズによって撮影された等距離射影画像である場合について、本発明を適用する具体的な方法を述べたが、本発明は、この他の非正射影画像一般にも広く適用することが可能である。図24は、半径R=1とする正規化を行った場合の様々な歪曲円形画像上の座標と正射影歪曲円形画像上の座標との間の座標変換式を示す図である。
【0110】
図24の上段に示すとおり、魚眼レンズの実際の射影方式で撮影することにより得られた歪曲円形画像を、正射影歪曲円形画像に変換する場合の一般式は、
xa=Ka・xb, ya=Ka・yb 式(26)
となり、逆に、正射影歪曲円形画像を、魚眼レンズの実際の射影方式で撮影することにより得られた歪曲円形画像に変換する場合の一般式は、
xb=Kb・xa, yb=Kb・ya 式(27)
となる。ここで、Ka,Kbは、魚眼レンズの実際の射影方式の種類に応じて値が異なる係数であり、図24にも示すとおり、次のような値をとる。
【0111】
<実際の射影方式が正射影の場合>
Ka=Kb=1 式(28)
(実際には、座標を変換する演算は必要ない)
<実際の射影方式が等距離射影の場合>
Ka= sin (πrb/2)/rb 式(24)
Kb= sin-1 (ra)/ra・2/π 式(25)
<実際の射影方式が立体射影の場合>
Ka=2/(1+rb2) 式(29)
Kb=1/(1+√(1−ra2)) 式(30)
<実際の射影方式が等立体角射影の場合>
Ka=√(2−rb2) 式(31)
Kb=1/√(1+√(1−ra2)) 式(32)
但し、ra=√(xa2+ya2) (0≦ra≦1) 式(33)
但し、rb=√(xb2+yb2) (0≦rb≦1) 式(34)
【0112】
<<< §5.本発明における画像変換処理の基本方針 >>>
【0113】
続いて、本発明における画像変換処理の基本方針を説明する。図25は、図9に示すモデルの下方に、更に、別な座標系を追加したモデルを示す斜視図である。図25の上段に示すXaYaZa座標系は、図9に示すモデルにおけるXYZ座標系に対応するものであり、二次元XaYa直交座標系は正射影方式の座標系である。これに対して、下段に示すXbYbZb座標系は、同様に三次元直交座標系であるが、二次元XbYb直交座標系は実際の射影方式の座標系である。実際の撮影によって得られた歪曲円形画像SSは、下段に示す二次元XbYb直交座標系に配置される。
【0114】
上段に示す二次元XaYa直交座標系は、二次元UV直交座標系への座標変換を行うための仲介ステージとして利用される。すなわち、実際の撮影によって得られた歪曲円形画像SSと、二次元UV直交座標系上の平面正則画像Tとは、二次元XaYa直交座標系上の正射影画像Sを媒介として対応づけられることになる。
【0115】
この図25に示すモデルにおいて、二次元XaYa直交座標系(正射影方式の座標系)上の任意の点の座標値を(xa,ya)とし、二次元XbYb直交座標系(実際の射影方式の座標系)上の対応する点の座標値を(xb,yb)とすれば、これら2点の座標値は、図24に示す式(26)および式(27)を用いて相互に変換可能になる。ここで、係数Ka,Kbの値は、実際の射影方式が、正射影方式の場合は式(28)により決定され、等距離射影方式の場合は式(24),(25)により決定され、立体射影方式の場合は式(29),(30)により決定され、等立体角射影方式の場合は式(31),(32)により決定される。
【0116】
一方、二次元XaYa直交座標系(正射影方式の座標系)上の任意の点の座標値(xa,ya)と、二次元UV直交座標系上の対応点の座標値(u,v)とは、既に述べたとおり、図17に示す式(1)〜(9)によって関連づけられる(式(1)および(2)の(x,y)を、(xa,ya)に置き換えればよい)。結局、二次元XbYb直交座標系上の任意の点の座標値(xb,yb)と、二次元UV直交座標系上の対応点の座標値(u,v)とは、二次元XaYa直交座標系上の点の座標値(xa,ya)を介して関連づけられることになる。
【0117】
さて、まず、XbYb直交座標系上に配置されている歪曲円形画像SS(実際の撮影によって得られた画像)をユーザに提示し、任意の位置に切出中心点PP(x00,y00)を指定させる。既に述べたとおり、この切出中心点PP(x00,y00)は、ユーザが歪曲円形画像SSから切り出して平面正則画像に変換したいと欲する切出領域Eの中心を示す点である。ユーザは、実際の撮影によって得られた画像SSを見ながら、当該画像SS上の所望の位置に、切出中心点PP(x00,y00)を指定することができる。
【0118】
この切出中心点PP(x00,y00)は、図25の左上に示すUV座標系の原点G(xg,yg,zg)の位置、別言すれば、視線ベクトルnの方向を決定するためのパラメータになる。しかしながら、この切出中心点PP(x00,y00)の位置から直接的には、視線ベクトルnの方向を左右する交点Q(x0,y0,z0)を求めることはできない。交点Q(x0,y0,z0)は、XaYa座標系(正射影方式の座標系)上の切出中心点P(x0,y0)を通りZ軸に平行な直線と仮想球面Hとの交点として定義される点である。
【0119】
そこで、図25に一点鎖線で示すように、まず、切出中心点PP(x00,y00)の位置に基づいて、切出中心点P(x0,y0)の位置を求める。すなわち、座標(x00,y00)を座標(xb,yb)とし、座標(x0,y0)を座標(xa,ya)として、図24に示す式(26)を適用すれば、座標(x00,y00)に対応する座標(x0,y0)を算出することができる。こうして、切出中心点P(x0,y0)の位置が定まれば、交点Q(x0,y0,z0)を決定し、視線ベクトルnの方向を決定することができる。更に、倍率mおよび平面傾斜角φの値が、ユーザからパラメータとして与えられれば、UV座標系の位置および向きを決定することができる。これは、図17に示す対応関係式(1)〜(9)が定まることを意味する。
【0120】
すなわち、図17に示す式(1)〜(9)において、方位角αおよび天頂角βは、視線ベクトルnの方向が定まれば一義的に定まり、倍率mおよび平面傾斜角φの値がパラメータとして与えられ、歪曲円形画像の半径Rも既知であるため(前述したとおり、実用上は、R=1になるような正規化を行う)、任意の座標(u,v)の値を式(1),(2)に代入すれば、座標(x,y)の値を得ることができる。こうして得られた座標(x,y)は、図25に示すモデルにおけるXaYa座標系上の座標(xa,ya)に相当する。したがって、たとえば、図25に示すように、UV座標系上の任意の点Ti(ui,vi)に対して、XaYa座標系上の対応する点Si(xi,yi)を求めることができる。
【0121】
続いて、図25に一点鎖線で示すように、この点Si(xi,yi)の位置に基づいて、XbYb座標系上の対応する点SSi(xii,yii)を求める。すなわち、座標(xi,yi)を座標(xa,ya)とし、座標(xii,yii)を座標(xb,yb)として、図24に示す式(27)を適用すれば、座標(xi,yi)に対応する座標(xii,yii)を算出することができる。そこで、歪曲円形画像SS上における対応点SSi(xii,yii)に位置する画素の画素値を、平面正則画像T上における点Ti(ui,vi)の画素の画素値と決定する。このような処理を、平面正則画像T上の個々の点(画素の配置点)について繰り返し実行すれば、所望の切出中心点PP(x00,y00)の位置を中心とした所定の切出領域E内の歪曲円形画像SSについて、対応する平面正則画像Tを得ることができる。
【0122】
本発明の重要な特徴は、上述した画像変換処理を行う際に、演算負担を軽減させるための特有の演算手法を採る点にある。以下、この特徴について説明する。上述したとおり、図25に示すモデルにおいて、UV座標系上の任意の点Ti(ui,vi)に対して、XaYa座標系上の対応する点Si(xi,yi)を求める際に、図17に示す対応関係式(1)〜(9)が用いられる。これらの式には、三角関数演算、開平演算、逆数演算が含まれており、式のとおりに演算を行うと、その演算負担はかなり重くなる。
【0123】
そこで、図26に示すような方法で、式の変形を試みる。まず、歪曲円形画像Sの半径(仮想球面Hの半径)をR=1とする正規化が行われているとして、図25に示すXaYaZa座標系上の切出中心点P(x0,y0,0)について、球面上対応点Q(x0,y0,z0)をとった場合の方位角αおよび天頂角βの余弦および正弦を考えると、
cos α=y0/ra, cos β=z0,
sin α=−x0/ra, sin β=ra
但し、raは、XaYa平面上の2点OPの距離 式(35)
なる関係が得られる。そこで、図17の式(3)〜(8)に、上式を代入すると、
A=(y0・cosφ+x0・z0・sinφ)/ra 式(36)
B=(−y0・sinφ+x0・z0・cosφ)/ra 式(37)
C=−x0 式(38)
D=(−x0・cosφ+y0・z0・sinφ)/ra 式(39)
E=(x0・sinφ+y0・z0・cosφ)/ra 式(40)
F=−y0 式(41)
となる。ここで、
ra=√(x02+y02), z0=√(1−ra2) 式(42)
である。
【0124】
図17に示す演算式(3)〜(8)と比べると、図26に示す演算式(36)〜(41)では、三角関数演算が大幅に低減していることがわかる。したがって、図26に示す演算式(36)〜(41)を用いて回転係数A〜Fを算出するようにすれば、演算負担の軽減を図ることができる。
【0125】
なお、切出中心点P(x0,y0,0)が原点Oの位置であった場合(歪曲円形画像の中心点が切出中心点として指定された場合)、ra=0となるので、式(35)〜(41)の分母が零となり、回転係数A〜Fの値は定義できなくなる。そこで、ra=0の場合は、A=cosφ,B=−sinφ,C=0,D=sinφ,E=cosφ,F=0と定義する。これは、図18に示した特殊な場合に相当し、当該特殊な場合に限り、上述した定義を行うようにすることにより、正しい対応関係を示すための回転係数A〜Fが得られる。
【0126】
次に、図17に示す演算式(1),(2)を変形してみる。図25に示すモデルでは、演算式(1),(2)によって得られる座標(x,y)は、Xa,Ya座標系上の座標であるので、ここでは座標(xa,ya)と記すことにする。すると、演算式(1),(2)は、図27の上段に示すように、
xa=R(uA+vB+wC)/
√(u2+v2+w2) 式(44)
ya=R(uD+vE+wF)/
√(u2+v2+w2) 式(45)
と書き直せる。この式(44),(45)において、半径R=1とする正規化を前提としてR=1を代入し、更に、分母分子をwで除し、1/w=tとおけば、図27の中段に示すように、
xa=(utA+vtB+C)/
√((ut)2+(vt)2+1) 式(46)
ya=(utD+vtE+F)/
√((ut)2+(vt)2+1) 式(47)
なる式が得られる。
【0127】
ここで、更に、係数K1,Kx,Kyを
K1=1/√((ut)2+(vt)2+1) 式(48)
Kx=utA+vtB+C 式(49)
Ky=utD+vtE+F 式(50)
のように定義すると、
xa=K1・Kx 式(51)
ya=K1・Ky 式(52)
という単純な式が得られる。
【0128】
上記係数K1は、式(48)で定義されるため、実際に演算によって求めるには、開平演算および逆数演算を行う必要がある。そこで、本発明では、後述するように、この係数K1をルックアップテーブルを参照する処理を利用して求めるようにしている。一方、tは、wの逆数として与えられる値である。こうして、係数K1と逆数tとが与えられれば、式(49)〜(52)の演算は、単なる積および和の演算であり、その演算負担は極めて軽いものである。
【0129】
このように、本発明では、上記式(46),(47)の演算を、式(48)で定義される係数K1をルックアップテーブルを参照して求める処理と、wの逆数tを求める演算処理(ルックアップテーブルを参照して求める処理でもよい)と、式(49)〜(52)に示す積和演算処理と、に分けて行う。その結果、全体の演算負担は大幅に軽減されることになる。
【0130】
<<< §6.本発明に係る画像変換装置の基本構成 >>>
【0131】
ここでは、図28のブロック図を参照しながら、本発明の一実施形態に係る画像変換装置を、魚眼監視システムに利用した例を説明する。図示のとおり、この魚眼監視システムは、パラメータ入力ユニット110,魚眼レンズ装着デジタルカメラ120,モニタ装置130,画像変換装置200,インターフェイス115,125,135によって構成されている。インターフェイス115,125,135は、それぞれパラメータ入力ユニット110,魚眼レンズ装着デジタルカメラ120,モニタ装置130と、画像変換装置200との間のデータの受け渡しの仲介処理を行う構成要素である。
【0132】
本発明の一実施形態に係る画像変換装置200は、図28に一点鎖線で囲まれた構成要素210〜290によって構成され、魚眼レンズを用いた撮影により得られた歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う機能を有している。図示の構成要素210〜290は、それぞれ所定の電子回路によって構成することができ、画像変換装置200は、これら電子回路が組み込まれた半導体集積回路によって実現することができる。あるいは、この画像変換装置200を、汎用コンピュータに専用のプログラムを組み込むことにより構成することも可能である。この場合、図にブロックで示す各構成要素210〜290は、コンピュータのハードウエアもしくはプログラムとして組み込まれたソフトウエアによって実現されることになる。
【0133】
歪曲円形画像用メモリ220は、二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、二次元XY直交座標系の原点Oを中心とし半径Rをもった歪曲円形画像を格納する構成要素である。魚眼レンズ装着デジタルカメラ120を用いた撮影により得られた歪曲円形画像SSは、インターフェイス125を介して、この歪曲円形画像用メモリ220内に格納される。こうして格納された歪曲円形画像SSは、図25に示すモデルにおいて、XbYb座標系に配置された画像SSに対応する。したがって、デジタルカメラ120に装着されている魚眼レンズは任意の射影方式のものでかまわない。
【0134】
一方、平面正則画像用メモリ230は、二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する構成要素である。こうして格納された平面正則画像Tは、図25に示すモデルにおいて、UV座標系に配置された画像Tに対応する。この画像変換装置200で実行される処理の目的は、「平面正則画像用メモリ230内の座標(u,v)」に対応する「歪曲円形画像用メモリ220内の座標(x,y)」を演算によって求め、座標(u,v)で示される位置に配置された画素の画素値を、座標(x,y)で示される位置(もしくはその近傍)に配置された画素の画素値に基づいて決定し、平面正則画像用メモリ230内に平面正則画像Tを作成することにある。
【0135】
歪曲円形画像用メモリ220および平面正則画像用メモリ230は、一般的な画像データ格納用のバッファメモリによって構成することができる。歪曲円形画像用メモリ220に格納された歪曲円形画像SSおよび平面正則画像用メモリ230に格納された平面正則画像Tは、ユーザの要望に応じて、インターフェイス135を介してモニタ装置130上に表示される。
【0136】
魚眼レンズ装着デジタルカメラ120は、監視カメラなどに利用されている一般的なデジタルビデオカメラであり、180°の画角をもって周囲の被写体を撮影し、半径Rをもった歪曲円形画像SSをデジタルデータとして生成する機能を有する。このデジタルデータとして生成された歪曲円形画像SSは、歪曲円形画像用メモリ220へと格納される。この歪曲円形画像SSの所定の一部分は平面正則画像Tに変換され、平面正則画像用メモリ230に格納される。こうして、平面正則画像用メモリ230に得られた平面正則画像Tは、モニタ装置130によって画面上に表示される。
【0137】
パラメータ入力ユニット110は、ユーザの操作に基づいて、視線ベクトルn,平面傾斜角φ,倍率mを指定するためのパラメータを入力する構成要素である。既に述べたとおり、これらのパラメータは、図25に示すモデルにおける二次元UV直交座標系の位置および向きを決定するために必要なパラメータである。
【0138】
ここに示す実施形態の場合、視線ベクトルnを指定するためのパラメータとして、切出中心点PP(x00,y00)の位置が用いられる。たとえば、ユーザは、モニタ装置130上に表示された歪曲円形画像SSを見ながら、画像上の所望の1点をマウスクリックなどの操作で指定する操作を行えばよい。パラメータ入力ユニット110に、このようなマウスクリック操作に基づいて切出中心点PP(x00,y00)の位置を取り込む機能をもたせておけば、インターフェイス115を介して、切出中心点PP(x00,y00)の位置を画像変換装置200側へ与えることができる。
【0139】
一方、ユーザが指定した平面傾斜角φおよび倍率mも、インターフェイス115を介して、画像変換装置200側へ引き渡される。平面傾斜角φや倍率mをユーザに指定させる仕組みはどのようなものでもかまわない。φやmの値をキーボードなどから数値入力させてもよいし、モニタ装置130の画面上におけるマウス操作により、所望のφやmの値を決定させるようにしてもかまわない。
【0140】
パラメータ入力ユニット110から与えられた切出中心点PP(x00,y00)の位置を示す情報は、射影方式正変換部210へ与えられる。射影方式正変換部210は、図25のモデルにおいて一点鎖線で示す点PP(x00,y00)から点P(x0,y0)への変換処理を行う構成要素である。すなわち、正射影方式の歪曲円形画像上の座標(xa,ya)と実際の射影方式の歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式(図24参照)を用いて、実際の射影方式の歪曲円形画像上で指定された切出中心点PP(x00,y00)の座標x00,y00を、正射影歪曲円形画像上で対応する切出中心点P(x0,y0)の座標x0,y0に変換する処理が行われる。
【0141】
こうして得られた切出中心点P(x0,y0)の座標x0,y0は、係数算出部240へ与えられる。この係数算出部240には、パラメータ入力ユニット110によって入力された平面傾斜角φおよび倍率mも与えられる。係数算出部240は、歪曲円形画像用メモリ220に格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と、平面正則画像用メモリ230に格納されている平面正則画像Tを構成する画素の座標(u,v)との対応関係を示す対応関係式(図27の上段に示す式(44),(45))に必要な回転係数A〜Fを算出するための構成要素である。
【0142】
座標(u,v)と座標(xa,ya)との対応関係式を決定するためには、図25のモデルに示す視線ベクトルn,平面傾斜角φ,倍率mを決定する必要がある。係数算出部240は、切出中心点P(x0,y0)の座標値x0,y0に基づいて、この切出中心点P(x0,y0)を通りZ軸に平行な直線と原点Oを中心として半径Rをもった仮想球面との交点G(x0,y0,z0)を求め、原点Oを起点として交点G(x0,y0,z0)を通るベクトルを視線ベクトルnとして、係数の算出を行うことになる。平面傾斜角φおよび倍率mとしては、パラメータ入力ユニット110から与えられた値をそのまま利用すればよい。
【0143】
ここに示す実施形態では、歪曲円形画像用メモリ220に格納される歪曲円形画像SSの半径Rは、R=1となるように正規化されている。したがって、§5で述べたとおり、回転係数A〜Fは、図26に示す式(36)〜(43)を用いて算出できる。また、係数算出部240では、wの逆数値tを得る逆数演算も実行される。図17の式(9)に示すとおり、wの値は、w=mRによって与えられる。
【0144】
こうして、係数算出部240で算出された回転係数A〜Fおよび逆数tは、座標変換部270へ与えられる。一方、uv座標値発生部290は、平面正則画像用メモリ230内の平面正則画像Tを構成する個々の画素の位置を示す座標(u,v)を順次発生させ、座標変換部270に与える機能を果たす。座標変換部270は、こうしてuv座標値発生部290が発生させた特定の座標(u,v)に対して、係数算出部240によって算出された回転係数A〜Fおよび逆数tが含まれた対応関係式を用いた演算を施すことにより、正射影歪曲円形画像S上での対応座標(xa,ya)を求める処理を行う。具体的には、図27に示す式(48)〜(52)に基づく演算が行われる。この演算は、図25に示すモデルの場合、点Ti(ui,vi)の座標(ui,vi)に基づいて、点Si(xi,yi)の座標(xi,yi)を求める演算に相当する。
【0145】
こうして、座標変換部270が求めた座標(xa,ya)は、正射影歪曲円形画像S上での座標(図25に示すモデルの場合、XaYa座標系上の座標)であるので、続いて、これを実際の射影方式の座標(xb,yb)(図25に示すモデルの場合、XbYb座標系上の座標)に変換する必要がある。射影方式逆変換部280は、このような変換処理を行う構成要素である。すなわち、正射影歪曲円形画像上の座標(xa,ya)と実際の射影方式の歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式(図24参照)を用いて、座標(xa,ya)を座標(xb,yb)に変換する処理を行う。この演算は、図25に示すモデルの場合、点Si(xi,yi)の座標(xi,yi)に基づいて、点SSi(xii,yii)の座標(xii,yii)を求める演算に相当する。
【0146】
こうして、射影方式逆変換部280によって変換された座標(xb,yb)は、データ読出部250に与えられる。このデータ読出部250は、歪曲円形画像用メモリ220内の座標(xb,yb)の位置に配置された画素の画素値を読み出し、これを画素値決定部255に与える。画素値決定部255は、この読み出された画素値をデータ書込部260に与え、データ書込部260は、当該画素値を、uv座標値発生部290が発生させた座標(u,v)に位置する画素の画素値として、平面正則画像用メモリ230に書き込む処理を行う。
【0147】
かくして、uv座標値発生部290が発生させた座標(u,v)に位置する1つの画素の画素値が決定することになる。前述したように、uv座標値発生部290は、平面正則画像Tを構成する個々の画素の位置を示す座標(u,v)を順次発生させる機能を有している。したがって、上述した処理を各画素について繰り返し実行すれば、平面正則画像Tを構成する全画素の画素値が決定し、平面正則画像用メモリ230に、平面正則画像Tが得られることになる。
【0148】
もっとも、歪曲円形画像用メモリ220内に格納されている歪曲円形画像SSは、二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成された画像であり、実際には、所定ピッチで縦横に配列された多数の格子点の位置に、それぞれ固有の画素値を定義したデジタルデータによって構成されている。このため、射影方式逆変換部280から得られた座標(xb,yb)の位置は、通常、複数の格子点の間の位置になる。たとえば、歪曲円形画像SSが、ピッチ1で縦横に配列された多数の格子点位置の画素値を定義したデジタルデータによって構成されている場合、いずれの格子点も、その座標値は整数値になる。よって、与えられた座標xbおよびybの値が小数を含む値であると(多くの場合はそうなるであろう)、対応座標(xb,yb)の位置は、複数の格子点の間の位置になり、対応する画素値を1つに決めることはできない。
【0149】
したがって、実際には、データ読出部250は、歪曲円形画像用メモリ220内の座標(xb,yb)の近傍に配置された複数の画素の画素値を読み出し、これを画素値決定部255に与える。画素値決定部255は、読み出した画素値に基づいて、座標(u,v)で示される平面正則画像上の画素の画素値を決定する。このような決定をする際には、読み出された複数の参照画素の画素値に対する補間演算を行う必要がある。このような補間演算を行う方法としては、たとえば、バイリニア補間法、バイキュービック・スプライン補間法など、様々な方法が公知であるため、ここでは詳しい説明は省略する。もちろん、そのような補間を行わずに、対応座標(xb,yb)で示される位置に最も近い画素の画素値をそのまま用いる方法を採ることも可能である。
【0150】
なお、上述した実施形態では、歪曲円形画像をメモリ220内に格納する際に、その半径Rが、R=1となるように正規化する例を述べた。ここで、R=1とする正規化を行う理由は、既に述べたとおり、座標変換の演算処理を単純化するためである。したがって、実用上は、少なくとも座標変換部270および射影方式逆変換部280における演算において、R=1とする正規化が行われていれば、実際にメモリ220内に格納されている歪曲円形画像の半径Rは、必ずしも正規化しておく必要はない。
【0151】
もし、メモリ220内に格納する歪曲円形画像の半径Rを正規化しない運用を採る場合には、係数算出部240においては実際の半径値Rを用いた演算を行って係数値を算出し、座標変換部270および射影方式逆変換部280では、上述した実施形態で説明したとおり、R=1とする正規化を行った場合の演算式で座標変換の演算を行えばよい。その上で、射影方式逆変換部280で得られた座標値(xb,yb)に対して、実際の半径値Rを乗じる補正を行い、補正後の座標値をデータ読出部250に与えるようにすればよい。要するに、座標変換部270および射影方式逆変換部280における演算において、メモリ220内に格納されている歪曲円形画像を、半径R=1となるように正規化した取り扱いがなされるようにすればよい。
【0152】
<<< §7.各構成要素の詳細構成 >>>
【0153】
続いて、図28に示す装置200における射影方式正変換部210,係数算出部240,座標変換部270,射影方式逆変換部280のより詳細な構成を説明する。
【0154】
図29は、射影方式正変換部210の詳細な構成を示すブロック図である。図示のとおり、ここに示す射影方式正変換部210は、rb演算手段211、rb→Ka変換手段212、射影方式変換手段213によって構成されており、与えられた切出中心点PP(x00,y00)の座標値x00,y00に基づいて、切出中心点P(x0,y0)の座標値x0,y0を算出する機能を有している。これは、非正射影方式の魚眼レンズを用いた撮影により得られる歪曲円形画像上の座標(x00,y00)を、正射影歪曲円形画像上の座標(x0,y0)に変換する処理である。
【0155】
rb演算手段211は、座標(x00,y00)に基づいて、「rb=√(x002+y002)」なる演算(図24の式(34)に対応する演算)を行ってrbを求める処理を行う。
【0156】
rb→Ka変換手段212は、こうして得られたrbを用いて、係数Kaを求める処理を行う。ここで、係数Kaを求める演算式は、歪曲円形画像用メモリ220内に格納されている歪曲円形画像SSの実際の射影方式(すなわち、デジタルカメラ120に装着されている魚眼レンズの射影方式)の種類によって異なる。すなわち、等距離射影方式の場合は、「Ka=(sin(πrb/2))/rb」なる演算式(図24の式(24))が用いられ、立体射影方式の場合は、「Ka=2/(1+rb2)」なる演算式(図24の式(29))が用いられ、等立体角射影方式の場合は、「Ka=√(2−rb2)」なる演算式(図24の式(31))が用いられる。
【0157】
なお、様々な射影方式の魚眼レンズを装着したデジタルカメラ120によって撮影された歪曲円形画像に対応できるようにするには、rb→Ka変換手段212内に、予め上述したような複数種類の射影方式に対応した演算式に基づく演算機能を用意しておき、変換対象となる歪曲円形画像の射影方式の種類に応じて、対応する演算式を選択できるような構成にしておけばよい。
【0158】
射影方式変換手段213は、座標(x00,y00)と係数Kaとに基づいて、「x0=Ka・x00」および「y0=Ka・y00」なる演算(図24の式(26)に対応する演算)を行い、座標(x0,y0)を求める処理を行う。
【0159】
この射影方式正変換部210で実行される演算処理には、開平演算(式(34),(31)や三角関数演算(式(24))が含まれている。これらの演算自体は、いずれも演算負荷が重い処理であるが、図28に示す画像変換装置200全体の処理を考慮すると、それほど演算負荷が問題になる処理ではない。なぜなら、そもそも射影方式正変換部210による変換演算は、ユーザが所望の切出中心点PP(x00,y00)を指定するたびに1回だけ行えばよい処理であり、座標変換部270における演算処理や射影方式逆変換部280における演算処理に比べて、頻度が極めて低い処理になるからである。
【0160】
たとえば、平面正則画像用メモリ230上に得られる平面正則画像Tのサイズが、640画素×480画素であったとすると、平面正則画像Tは約30万個の画素の集合から構成されることになる。この場合、uv座標値発生部290は、この約30万個の画素のそれぞれの座標(u,v)を順次発生させ、座標変換部270に与えることになる。したがって、1枚の平面正則画像Tを得るために、座標変換部270および射影方式逆変換部280は、30万通りの座標(u,v)のそれぞれについて演算処理を実行しなければならない。これに対して、射影方式正変換部210による演算処理は、1枚の平面正則画像Tを得るために、1回行えば足りる処理であり、演算頻度は約30万分の1になる。
【0161】
このように、射影方式正変換部210で実行される演算処理の負担は、画像変換装置200全体の処理負担に比べて極めて小さいものになる。したがって、図29に示すように、射影方式正変換部210で実行される演算処理に、開平演算や三角関数演算などの負荷の大きな演算処理が含まれていても、実用上は、大きな問題にはならない。
【0162】
図30は、係数算出部240の詳細な構成を示すブロック図である。図示のとおり、ここに示す係数算出部240は、3つの演算手段241,242,243によって構成されており、射影方式正変換部210から与えられた切出中心点P(x0,y0)の座標値x0,y0と、パラメータ入力ユニット110から与えられた平面傾斜角φおよび倍率mに基づいて、回転係数A〜Fおよび逆数tを算出する機能を有している。
【0163】
演算手段241は、座標値x0,y0に基づいて、「ra=√(x02+y02)」および「z0=√(1−ra2)」なる演算(図26の式(42))を行い、ra,z0を求める処理を行う。演算手段242は、こうして求められたra,z0および座標値x0,y0、ならびに平面傾斜角φに基づいて、
A=(y0・cosφ+x0・z0・sinφ)/ra 式(36)
B=(−y0・sinφ+x0・z0・cosφ)/ra 式(37)
C=−x0 式(38)
D=(−x0・cosφ+y0・z0・sinφ)/ra 式(39)
E=(x0・sinφ+y0・z0・cosφ)/ra 式(40)
F=−y0 式(41)
なる演算(但し、ra=0の場合は、A=cosφ,B=−sinφ,C=0,D=sinφ,E=cosφ,F=0)を行い、係数A,B,C,D,E,Fを算出する処理を行う(図26の各式)。また、演算手段243は、与えられた倍率mに基づいて、t=1/mなる逆数演算を行い、係数tを算出する。図17の式(9)に示すとおり、wの値は、w=mRによって与えられるが、R=1とする正規化が行われているため、w=mになる。したがって、mの逆数値として算出された係数tは、wの逆数値に等しい。
【0164】
この係数算出部240で実行される演算処理にも、開平演算(式(42))、三角関数演算および除算(式(36),(37),(39),(40))、逆数演算が含まれている。これらの演算自体は、いずれも演算負荷が重い処理であるが、やはり図28に示す画像変換装置200全体の処理を考慮すると、それほど演算負荷が問題になる処理ではない。これは、射影方式正変換部210による変換演算と同様に、係数算出部240で実行される演算は、ユーザが所望の切出中心点PP(x00,y00)を指定するたびに1回だけ行えばよい処理であり、座標変換部270における演算処理や射影方式逆変換部280における演算処理に比べて、頻度が極めて低い処理になるからである。したがって、図30に示すように、係数算出部240で実行される演算処理に、開平演算、三角関数演算、除算、逆数演算などの負荷の大きな演算処理が含まれていても、実用上は、大きな問題にはならない。もちろん、演算負担軽減のために、一部分の処理を実際の演算ではなく、ルックアップテーブルを引く処理に置き換えてもかまわない。
【0165】
図31は、座標変換部270の詳細な構成を示すブロック図である。図示のとおり、ここに示す座標変換部270は、KxKy演算手段271、xy演算手段272、T1→K1変換手段273、T1→K1テーブル274、T1演算手段275によって構成されており、与えられた回転係数A〜Fおよび逆数tを用いて、任意の座標(u,v)に対応する対応座標(xa,ya)を求める機能を有している。
【0166】
T1演算手段275は、与えられた座標(u,v)と逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求める処理を行う。一方、T1→K1テーブル274は、「K1=1/√T1」なる関係式で定まるK1の値を、T1の値に基づいて参照することができるルックアップテーブルであり、予想範囲内のT1の値に対応する各K1の値(開平値の逆数)を予め収録している。T1→K1変換手段273は、このT1→K1テーブル274を参照することにより、T1演算手段275によって求められたT1に対応するK1を決定する処理を行う。
【0167】
なお、変形例として、T1→K1テーブル274の代わりに、「K1=√N」なる関係式で定まる開平値K1の値を、Nの値に基づいて参照することができる開平値テーブル(開平値のルックアップテーブル)を利用することも可能である。この場合、T1→K1変換手段273は、次のような処理を行えばよい。まず、T1演算手段275によって求められたT1に基づいて、逆数N=1/T1を求めるための除算を行う。続いて、上述した開平値テーブルを参照することにより、得られた逆数Nの開平値としてK1を求めれば、結局、「K1=1/√T1」なる関係式で定まるK1の値が得られる。この変形例では、逆数N=1/T1を求めるための除算が必要になるため、演算負担は若干増えることになるが、開平値テーブルの利用により開平演算は省略できる。
【0168】
KxKy演算手段271は、与えられた座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算(図27の式(49),(50))を行い、KxおよびKyを求める処理を行う。そして、xy演算手段272は、Kx,Ky,K1に基づいて、「xa=K1・Kx」および「ya=K1・Ky」なる演算を行い、座標(xa,ya)を求める処理を行う。なお、R=1とする正規化を行わない場合は、更にRを乗じる演算を追加すればよい。
【0169】
この座標変換部270で実行される処理に着目すると、いずれも積和演算のみであることがわかる。T1→K1変換手段273は、T1に基づいて、「K1=1/√T1」なる関係式で定まるK1の値を決定する処理を行うが、当該処理は演算によって行われるものではなく、T1→K1テーブル274を参照することによって行われるものである。したがって、この座標変換部270では、開平演算や逆数演算は排除されている。一般に積和演算は比較的負担の小さい演算であるため、この座標変換部270で実行される演算処理の負担は極めて小さくなる。上述したとおり、座標変換部270は、平面正則画像Tを構成する全画素のそれぞれについて、座標(u,v)を座標(xa,ya)に変換する処理を実行しなければならないので、この座標変換部270の演算負担を軽減させることは、画像変換装置200全体の演算負担を軽減させる上で大きな意義がある。
【0170】
図32は、射影方式逆変換部280の詳細な構成を示すブロック図である。図示のとおり、ここに示す射影方式逆変換部280は、G演算手段281、G→Kb変換手段282、G→Kbテーブル283、射影方式変換手段284によって構成されており、正射影歪曲円形画像上の座標(xa,ya)を、実際の射影方式の歪曲円形画像上の座標(xb,yb)に変換する機能を有している。
【0171】
G演算手段281は、与えられた座標(xa,ya)に基づいて、「G=xa2+ya2」なる演算(図24の式(33)に準じた演算)を行ってGを求める処理を行う。ここで、Gは「ra2」に対応する値である。「ra」を求めずに、「ra2」に対応する値Gを求めているのは、開平演算を避けるための便宜である。
【0172】
G→Kb変換手段282は、こうして得られたGを用いて、係数Kbを求める処理を行う。ここで、係数Kbを求める演算式は、歪曲円形画像用メモリ220内に格納されている歪曲円形画像SSの実際の射影方式(すなわち、デジタルカメラ120に装着されている魚眼レンズの射影方式)の種類によって異なる。すなわち、等距離射影方式の場合は、「Kb=(sin-1√G/√G)・2/π」なる演算式(図24の式(25))が用いられ、立体射影方式の場合は、「Kb=1/(1+√(1−G))」なる演算式(図24の式(30))が用いられ、等立体角射影方式の場合は、「Kb=1/√(1+√(1−G))」なる演算式(図24の式(32))が用いられる。
【0173】
もっとも、G→Kb変換手段282は、実際に上記演算式に基づく演算を実行して係数Kbを求める処理を行うわけではなく、G→Kbテーブル283を参照することにより、G演算手段281によって求められたGに対応するKbを決定する処理を行う。G→Kbテーブル283は、上記各関係式で定まるKbの値を、Gの値に基づいて参照することができるルックアップテーブルであり、予想範囲内のGの値に対応する各Kbの値を予め収録している。G→Kb変換手段282は、このG→Kbテーブル283を参照することにより、G演算手段281によって求められたGに対応するKbを決定する処理を行う。
【0174】
ここでも、様々な射影方式の魚眼レンズを装着したデジタルカメラ120によって撮影された歪曲円形画像に対応できるようにするには、G→Kbテーブル283内に、予め上述したような複数種類の射影方式に対応した演算式に基づく演算の結果として得られたKbの値をそれぞれ用意しておき、G→Kb変換手段282が、変換対象となる歪曲円形画像の射影方式の種類に応じて、G→Kbテーブル283内の対応するKbの値を選択的に参照できるような構成にしておけばよい。
【0175】
射影方式変換手段284は、与えられた座標(xa,ya)とKbとに基づいて、「xb=Kb・xa」および「yb=Kb・ya」なる演算(図24の式(27))を行い、座標(xb,yb)を求める処理を行う。
【0176】
この射影方式逆変換部280で実行される演算も、積和演算のみで構成されており、演算負担は非常に軽いものになる。G→Kb変換手段282は、Gに基づいて、式(25),(30),(32)に示す関係式で定まるKbの値を決定する処理を行うが、当該処理は演算によって行われるものではなく、G→Kbテーブル283を参照することによって行われる。このため、G→Kb変換手段282で実行される処理の負担は非常に軽い。上述したとおり、射影方式逆変換部280は、平面正則画像Tを構成する全画素のそれぞれについて、座標(xa,ya)を座標(xb,yb)に変換する処理を実行しなければならないので、この射影方式逆変換部280の演算負担を軽減させることは、画像変換装置200全体の演算負担を軽減させる上で大きな意義がある。
【0177】
以上述べたとおり、図28に示す画像変換装置200における射影方式正変換部210,係数算出部240,座標変換部270,射影方式逆変換部280を、図29〜図32に示すような構成とすることにより、画像変換装置200全体の演算負担は極めて軽減されることになる。
【0178】
<<< §8.正射影画像を変換するための装置構成 >>>
【0179】
図28に示す画像変換装置200は、任意の射影方式の魚眼レンズを用いて撮影された歪曲円形画像に対する変換に広く適用できる装置であり、そのために、射影方式正変換部210および射影方式逆変換部280が設けられている。
【0180】
しかしながら、歪曲円形画像用メモリ220に格納されている歪曲円形画像が、正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像である場合は、図25のモデルにおいて、XaYa座標系とXbYb座標系とが同一となり、座標値(xa,ya)と座標値(xb,yb)とが同一となるので、座標値(xa,ya)と座標値(xb,yb)との間の相互変換を行う必要はなく、これらの座標値を単に座標値(x,y)として取り扱えば足りる。
【0181】
したがって、変換対象となる歪曲円形画像が、正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像である場合には、図28に示す画像変換装置200の構成から、射影方式正変換部210および射影方式逆変換部280を除外することができる。この場合、パラメータ入力ユニット110によって入力される切出中心点PP(x00,y00)は、切出中心点P(x0,y0)に一致するため、そのまま係数算出部240に与えることができる。また、座標変換部270から得られる座標(xa,yb)は、座標(xb,yb)に一致し、両者を区別する必要はなく、いずれも座標(x,y)と表すことができるので、この座標(x,y)をそのままデータ読出部250に与えれば足りる。
【0182】
<<< §9.円柱面に定義された湾曲座標系を用いる変形例 >>>
【0183】
これまで、図9に示すモデルを基本として、二次元XY直交座標系上の正射影歪曲円形画像Sを二次元UV直交座標系上の平面正則画像Tに変換する原理を用いた実施形態を述べてきた。変換対象が非正射影画像SSの場合は、図25の変形モデルを用いて射影方式の変換プロセスを付加することになるが、平面正則画像Tが二次元UV直交座標系上に得られるという基本原理に変わりはない。
【0184】
しかしながら、この図9に示すモデルを基本とした変換(図17に示す対応関係式に基づく変換)により得られる平面正則画像Tは、元の歪曲円形画像S,SSに比べると「正則画像」と言うことができるが、通常のレンズを用いて撮影された通常の「正則画像」と比較すると、まだまだ歪みが残った「変則画像」と言わざるを得ない。このため、実用上は、人物の細かな特徴を確認する必要がある監視システムなどの用途に用いるには不十分である。特に、平面正則画像Tの外側部分(輪郭近傍)の歪みは大きく、水平パニングを行うような場合、滑らかなパニング映像を得ることができない。そこで、この§9では、より歪みの少ない平面正則画像に変換することが可能な変形例を述べることにする。
【0185】
図33は、図9の基本モデルに修正を加えた変形モデルを示す斜視図である。両者の相違点は、UV座標系の定義の仕方だけである。すなわち、図9の基本モデルでは、UV座標系は、点G(xg,yg,zg)を通り、視線ベクトルnに直交する平面上に定義されているのに対し、図33の変形モデルでは、この平面上に定義されたUV座標系を円柱側面に沿って湾曲させている。したがって、図9の基本モデルでは、二次元UV直交座標系(平面上の座標系)上に平面正則画像Tが得られることになるのに対して、図33の変形モデルでは、二次元UV湾曲座標系(円柱側面上の座標系)上に湾曲正則画像Cが得られることになる。
【0186】
図33に破線で示す平面正則画像Tは、図9に実線で示す平面正則画像Tと同じものであり、点G(xg,yg,zg)を通り、視線ベクトルnに直交する平面上に定義された二次元UV直交座標系上の画像である。これに対して、図33に実線で示す湾曲正則画像Cは、この平面正則画像Tを湾曲させた画像に相当し、円柱側面に沿った曲面上の画像になる。
【0187】
要するに、この図33に示すモデルで定義される二次元UV湾曲座標系は、三次元XYZ直交座標系を構成する空間内の所望の位置において、仮想円柱の側面に沿った湾曲面上に配置された座標系ということになり、この湾曲座標系上に定義される湾曲正則画像Cも、仮想円柱の側面に沿って湾曲した画像ということになる。
【0188】
この二次元UV湾曲座標系も、U軸とV軸とを有する二次元の座標系であるから、湾曲正則画像C内の任意の1点が(u,v)なる座標で示される点は、通常の平面上の二次元座標系の場合と同じである。上述したとおり、この二次元UV湾曲座標系は、点Gを原点とし、視線ベクトルnに直交する平面上に配置された二次元UV直交座標系を、仮想円柱の側面に沿って湾曲させることにより定義された座標系であるが、この湾曲のプロセスには、若干の条件が課せられている。
【0189】
すなわち、湾曲プロセスに用いる仮想円柱は、二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸V′をもち、半径がmR(点OG間の距離)に等しい円柱にする。図33において、一点鎖線で示す軸V′がこの円柱の中心軸であり、V軸とV′軸とは平行である。2点OGを結ぶ線分は、この仮想円柱の半径を構成することになり、点Gは仮想円柱の側面上の点になる。
【0190】
この湾曲プロセスを、実在の物体を用いて比喩的に述べれば、次のように説明することができる。まず、図14に示すように、横方向にU軸が描かれ、縦方向にV軸が描かれた長方形の紙片を用意する。この長方形の紙片の表面は、二次元UV直交座標系の座標面に相当する。ここで、U軸もV軸も座標軸であるので、各軸上には所定の座標目盛が刻まれており、紙片の中心点(両軸の交点)の座標はT(0,0)である。この紙片を、その中心点T(0,0)が三次元XYZ直交座標系上の点G(xg,yg,zg)の位置にくるように配置する。紙片はまだ平面の状態を維持させておき、視線ベクトルnに直交する向きに配置する。また、図33に示すように、紙片に描かれているU軸が、回転基準軸Jに対して平面傾斜角φをなすような向きに配置する。
【0191】
続いて、半径mRをもった円柱を用意し、この円柱を、その中心軸が軸V′上にくるように配置する。ここで、軸V′は、紙片に描かれているV軸に平行で、原点Oを通る直線である。円柱をこのような位置に配置すると、紙片に描かれているV軸は、円柱の側面に接触した状態になる。当然、紙片の中心点T(0,0)、すなわち点G(xg,yg,zg)も、円柱の側面に接した点になる。そこで、この紙片を、円柱側面に巻き付けるようにして湾曲させ、そのまま円柱側面に貼り付ければ、この湾曲した紙片上に描かれている座標系が、二次元UV湾曲座標系になる。
【0192】
結局、二次元UV湾曲座標系のV軸は、二次元UV直交座標系のV軸と全く同じものであり、直線状の座標軸になるが、二次元UV湾曲座標系のU軸は、円柱側面に沿った円弧状の軸になる。別言すれば、この二次元UV湾曲座標系は、仮想円柱の中心軸V′に平行なV軸と、このV軸に直交する面によって仮想円柱を切断したときの断面を構成する円の円周に沿った円弧状のU軸と、によって構成されることになる。当然、U軸上に刻まれた座標目盛は、この円弧に沿って定義された目盛になる。
【0193】
さて、この二次元UV湾曲座標系上に湾曲正則画像Cを得る原理は、二次元UV直交座標系上に平面正則画像Tを得る原理と全く同じである。すなわち、湾曲正則画像C上の1点Ci(ui,vi)について、正射影歪曲円形画像S上の1点Si(xi,yi)を対応づけ、点Ci(ui,vi)に位置する画素の画素値を、点Si(xi,yi)の近傍に位置する画素の画素値に基づいて決定すればよい。そのためには、二次元UV湾曲座標系上の任意の座標(u,v)とXY平面上の対応座標(x,y)とを1対1に対応づける対応関係式が必要になる。このような対応関係式は、§10で詳述するとおり、図17に示す対応関係式に対して補正を行うことにより得ることができる。
【0194】
こうして、二次元UV湾曲座標系上に多数の画素の集合体によって構成される湾曲正則画像Cを得ることができたら、この二次元UV湾曲座標系を平面上に展開する処理を行い、湾曲正則画像Cを平面正則画像Tに変換すればよい。この平面上への展開処理は、上述した例において、円柱側面に貼り付けた紙片を剥がし、これを平面上に貼り直す作業と考えればよい。
【0195】
もっとも、この平面上への展開処理は、演算処理上は、何ら具体的な作業を必要とするものではない。二次元UV湾曲座標系上で座標(u,v)に位置する画素(湾曲正則画像Cを構成する画素)は、平面上への展開処理を行うことにより二次元UV直交座標系上の画素(平面正則画像Tを構成する画素)になったとしても、同一座標(u,v)に位置する画素であることに変わりはない。したがって、二次元UV湾曲座標系上において、所定の座標(u,v)に位置する多数の画素の画素値を示す画素配列データが得られたら、当該画素配列データを、そのまま二次元UV直交座標系上の画素配列データとして出力し、通常のモニタ画面(平面画面)に画像表示を行えば、モニタ画面上には、平面上への展開処理後の平面正則画像Tが表示されることになる。
【0196】
このように、本来は円柱側面をなす二次元UV湾曲座標系に湾曲正則画像Cを表示するために得られた画素配列データを用いて、二次元UV直交座標系をもつ通常のモニタ画面(平面上の画面)に画像表示を行う処理は、上述した例において、円柱側面に貼り付けた紙片を剥がし、これを平面上に貼り直す作業に対応する。表示画面は円柱側面から平面に変わるが、画素配列データそれ自身については、何ら変更を加える必要はない。
【0197】
結局、ここで述べる変形例では、二次元UV直交座標系上に平面正則画像Tを求める代わりに、円柱側面上に定義された二次元UV湾曲座標系上に湾曲正則画像Cを求め、この湾曲正則画像Cを示す画素配列データを用いて、通常のモニタ画面(平面画面)に画像表示を行うことにより、最終的に当該モニタ画面上に平面正則画像Tを得る方法が採られることになる。
【0198】
もちろん、図33に示す変形モデルは、非正射影方式の魚眼レンズを用いた撮影により得られる歪曲円形画像にも適用可能である。この場合は、図25に示すモデルにおいて、二次元UV直交座標系上に平面正則画像Tを求める代わりに、円柱側面上に定義された二次元UV湾曲座標系上に湾曲正則画像Cを求めるようにすればよい。
【0199】
このように二次元UV湾曲座標系上に湾曲正則画像Cを求めるプロセスを行う画像変換装置の基本構成は、図28に示す画像変換装置200とほとんど同じである。ただ、§10で詳述するように、座標変換部270における座標変換処理に若干の補正を加える必要がある。これは、二次元UV直交座標系上の平面正則画像Tへの座標変換を行う代わりに、二次元UV湾曲座標系上の湾曲正則画像Cへの座標変換を行う必要があるためである。すなわち、座標変換部270では、二次元UV直交座標系上の座標(u,v)に対応する対応座標(x,y)を算出する代わりに、二次元UV湾曲座標系上の座標(u,v)に対応する対応座標(x,y)を算出する必要がある。
【0200】
前述したとおり、二次元UV直交座標系も二次元UV湾曲座標系も、U軸とV軸とを有する二次元座標系である点は共通しており、二次元UV直交座標系上に定義される平面正則画像Tも、二次元UV湾曲座標系上に定義される湾曲正則画像Cも、座標値(u,v)で示される位置に配置された多数の画素の配列から構成される点では共通する。したがって、図28に示す構成において、平面正則画像用メモリ230内に格納された画素配列データに基づいて、平面上に画像を表示すれば平面正則画像Tが得られるが、円柱側面上に画像を表示すれば湾曲正則画像Cが得られることになる。ここでは、説明の便宜上、変換後の画素配列データが得られるメモリ230を「平面正則画像用メモリ」と呼んでいるが、当該メモリ230に格納される画素配列データそれ自身は、平面正則画像T用のデータと言うこともできるし、湾曲正則画像C用のデータと言うこともできる。
【0201】
図9の基本モデルに基づく変換方法と、図33の変形モデルに基づく変換方法との特徴の相違を端的に説明すれば、次のとおりである。まず、前者では、「メモリ230内の座標(u,v)に位置する特定の画素の画素値」を、「二次元UV『直交』座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式を用いて求めた、メモリ220内の座標(x,y)(非正射影画像の場合は、更に射影方式逆変換を施すことにより得られる座標(xb,yb))の近傍に位置する画素の画素値」に基づいて決定し、変換後の画素配列データに基づいて平面上のモニタ画面に画像を表示することにより、平面正則画像Tを得ることになる。これに対して、後者では、「メモリ230内の座標(u,v)に位置する特定の画素の画素値」を、「二次元UV『湾曲』座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式を用いて求めた、メモリ220内の座標(x,y)(非正射影画像の場合は、更に射影方式逆変換を施すことにより得られる座標(xb,yb))の近傍に位置する画素の画素値」に基づいて決定し、変換後の画素配列データに基づいて平面上のモニタ画面に画像を表示することにより、平面正則画像Tを得ることになる。
【0202】
このように、図9の基本モデルに基づく変換方法と、図33の変形モデルに基づく変換方法との相違は、用いる対応関係式の相違のみであるが、当該相違により、得られる平面正則画像T上の歪みは大幅に改善される。特に、図14に示す例における画像の右辺輪郭近傍や左辺輪郭近傍に関しては、歪みは大幅に改善されるため、水平パニングを行うような場合でも、滑らかなパニング映像を得ることができるようになる。もちろん、監視システムに利用した場合、画像の右端や左端に位置する人物の細かな特徴を把握する視認性も大幅に向上する。これは、二次元UV湾曲座標系において、U軸を直線軸ではなく、円弧状の軸としたためである。
【0203】
ただ、二次元UV湾曲座標系は円柱側面上の座標系であるから、U軸は円弧状の軸であっても、V軸は直線軸となる。このため、図14に示す例における画像の上辺輪郭近傍や下辺輪郭近傍に関しては、歪みの矯正効果はそれほど得られない。もっとも、水平パニングを行う場合、動画を構成するフレームは横方向にずれてゆくことになるので、左右の輪郭近傍における歪みが緩和されていれば、十分に滑らかなパニング映像を得ることができる。また、監視カメラの用途においても、通常、上下の輪郭近傍の視認性よりも、左右の輪郭近傍の視認性が重要となるので、円弧状のU軸が水平方向軸となるような設定を行えば、実用上、十分な歪み矯正効果が得られることになる。
【0204】
<<< §10.湾曲座標系を用いる変形例における対応関係式 >>>
【0205】
上述したとおり、図9の基本モデルで示す変換方法と、図33の変形モデルで示す変換方法との実質的な相違は、任意の座標(u,v)について、正射影歪曲円形画像S上の対応座標(x,y)(変換対象が非正射影画像の場合は座標(xa,ya)、以下同じ)を求める際に用いる対応関係式の相違のみである。すなわち、前者が、「二次元UV『直交』座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式」を用いるのに対して、後者は、「二次元UV『湾曲』座標系上の座標(u,v)と二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式」を用いることになる。そして、前者の対応関係式は、§3で述べたとおり、図17の式(1)〜(9)のようになる。ここでは、これらの式を若干修正することにより、後者の対応関係式が得られることを説明する。
【0206】
既に§3で述べたとおり、図17の式(1)〜(9)は、図18に示すような特殊な条件を満たすモデルについての座標(u,v)と座標(x,y)との関係を示す式(10),(11)に対して、方位角α,天頂角β,平面傾斜角φで規定される回転ファクターによる補正を施すことにより得られる。そこで、まず、この図18に示すような特殊な条件を満たすモデル、すなわち、β=0°とし、三次元XYZ直交座標系上での座標(0,0,mR)の位置に原点Gをもち、XY平面に平行な平面上に二次元UV直交座標系を定義したモデルについて、二次元UV直交座標系と二次元UV湾曲座標系との相違を考えてみよう。
【0207】
図34は、二次元UV直交座標系(座標面は図のTになる)と、これを湾曲することにより得られる二次元UV湾曲座標系(座標面は図のCになる)との位置関係を示す側面図である。二次元UV直交座標系の座標面であるUV平面は、XYZ三次元直交座標系上のXY平面に平行な面であり、両者の間隔は、w=mRに設定されている。図示のとおり、このUV平面に沿った水平方向にU軸が定義され、点Gにおいて紙面垂直方向にV軸が定義されている。そして、このUV平面上に、平面正則画像Tが定義されることになる。
【0208】
一方、二次元UV湾曲座標系の座標面であるUV曲面は、UV平面を仮想円柱の側面に沿って湾曲させることにより得られる面である。ここで、仮想円柱は、Y軸(原点Oにおいて紙面垂直方向を向く軸)を中心軸とし、半径w=mRをもった円柱であり、軸Vの位置においてUV平面に接している。UV曲面は、この仮想円柱の側面に一致し、半径w=mRをもった円の円弧に沿った方向にU軸が定義され、点Gにおいて紙面垂直方向にV軸が定義されている。そして、このUV曲面上に、湾曲正則画像Cが定義されることになる。
【0209】
このように、二次元UV直交座標系と二次元UV湾曲座標系とは、一方の座標軸であるV軸を共通とするが、他方の座標軸であるU軸の空間的な位置は異なっている。ただ、座標目盛の刻み幅はいずれも同じであり、座標面上の任意の1点の位置が、座標(u,v)で示される点も同じである。そこで、同一座標(u,v)で示される各座標面上の2点の関係について考えてみよう。
【0210】
まず、図の左上に示すように、二次元UV直交座標系上における点T(u,v)に着目しよう。この点T(u,v)は、平面正則画像T上の点であり、原点GからU軸に沿って座標値uだけ隔たり(図では、太線で描かれた線分Dの長さだけ離れた位置にプロットされている)、V軸方向に関して座標値vだけ隔たった点ということになる(V軸方向に関する隔たりは、紙面垂直方向に関する隔たりになるため、図には示されていない)。
【0211】
次に、二次元UV湾曲座標系上における点C(u,v)に着目しよう。この点C(u,v)は、湾曲正則画像C上の点であり、原点Gから円弧Aに沿って座標値uだけ隔たり、V軸方向に関して座標値vだけ隔たった点ということになる(V軸方向に関する隔たりは、紙面垂直方向に関する隔たりになるため、図には示されていない)。ここで、太線で描かれた円弧Aの長さは、太線で描かれた線分Dの長さに等しい。
【0212】
このように、点T(u,v)と点C(u,v)とは、いずれも座標(u,v)で表される点であるが、異なる座標系で定義された点であるため、XYZ三次元直交座標系で示される空間上の位置は異なっている。すなわち、XYZ三次元直交座標系の座標値で考えると、点T(u,v)の座標はT(u,v,w)になるのに対して、点C(u,v)の座標はC(u′,v,w′)になる。ここで、図示のとおり、
u′=w・sinθ 式(53)
w′=w・cosθ 式(54)
である。
【0213】
また、円弧Aの長さは座標値uの絶対値に等しく、円弧Aの半径はwであるから、図34に示す角度θは、θ=u/wラジアンである。よって、図示のとおり、
u′=w・sin(u/w) 式(55)
w′=w・cos(u/w) 式(56)
が得られる。なお、両UV座標系は、V軸を共通の座標軸としているため、点T,CのY座標値はいずれも同一の座標値vになる。
【0214】
結局、図27に示す式(44),(45)における変数uの代わりに式(55)に示す変数u′を用い、変数wの代わりに式(56)に示す変数w′を用いれば、図35の上段に示すとおり、
xa=R(u′A+vB+w′C)/
√(u′2+v2+w′2) 式(57)
ya=R(u′D+vE+w′F)/
√(u′2+v2+w′2) 式(58)
なる式が得られる。この場合、オイラー角α,β,φに基づく回転ファクターによる補正に変更はないので、回転係数A〜Fの算出については、図17の式(3)〜(9)をそのまま用いることができる。
【0215】
結局、ここで述べる湾曲座標系を用いた変形例の場合、図28に示す画像変換装置200(非正射影画像にも対応した装置)内の座標変換部270による座標変換処理に用いるべき対応関係式、すなわち、二次元UV湾曲座標系上の座標(u,v)と二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式は、図35の上段に示す式(57),(58)および図17の式(3)〜(9)として与えられることになる。なお、既に述べたとおり、図17の式(3)〜(8)は、より単純な図26の式(36)〜(41)の形に変形して用いることができる。
【0216】
ここで、図35に示すように、式(57),(58)のu′およびv′に、図34の式(55),(56)を代入すれば、
xa=R((w・sin(u/w))A
+vB+(w・cos(u/w))C)/
√((w・sin(u/w))2
+v2+(w・cos(u/w))2) 式(59)
ya=R((w・sin(u/w))D
+vE+(w・cos(u/w))F)/
√((w・sin(u/w))2
+v2+(w・cos(u/w))2) 式(60)
なる式が得られる。
【0217】
一方、「(sin(u/w))2+(cos(u/w))2=1」であるから、式(59),(60)の分母は、√(w2+v2)になる。ここで、R=1とする正規化を行うこととし、式(59),(60)に、R=1を代入して、分母分子をwで除し、更に、1/w=tとおけば、図35の下段に示すとおり、
xa=(A・sin(ut)+vtB+C・cos(ut))/
√((vt)2+1) 式(61)
ya=(D・sin(ut)+vtE+F・cos(ut))/
√((vt)2+1) 式(62)
なる式が得られる。更に、図36に示すように、
K2=1/√((vt)2+1) 式(63)
Kxx=A・sin(ut)+vtB+C・cos(ut) 式(64)
Kyy=D・sin(ut)+vtE+F・cos(ut) 式(65)
とおけば、
xa=K2・Kxx 式(66)
ya=K2・Kyy 式(67)
という単純な式が得られる。
【0218】
結局、湾曲座標系を用いる変形例の場合、図31に示す座標変換部270を、図37に示す構成をもった座標変換部270′に置き換えればよい。いずれも、与えられた回転係数A〜F、逆数t、座標(u,v)に基づいて、座標(xa,ya)を求める機能を有する構成要素であるが、内部で行われる処理に若干の相違があるため、得られる座標(xa,ya)の値も若干異なったものになる。
【0219】
図37は、座標変換部270′の詳細な構成を示すブロック図である。図示のとおり、ここに示す座標変換部270′は、KxxKyy決定手段271′、xy演算手段272′、T2→K2変換手段273′、T2→K2テーブル274′、T2演算手段275′によって構成されており、与えられた回転係数A〜Fおよび逆数tを用いて、任意の座標(u,v)に対応する対応座標(xa,ya)を求める機能を有している。
【0220】
T2演算手段275′は、与えられた座標(u,v)のうちの座標vと逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求める処理を行う。一方、T2→K2テーブル274′は、「K2=1/√T2」なる関係式で定まるK2の値を、T2の値に基づいて参照することができるルックアップテーブルであり、予想範囲内のT2の値に対応する各K2の値(開平値の逆数)を予め収録している。T2→K2変換手段273′は、このT2→K2テーブル274′を参照することにより、T2演算手段275′によって求められたT2に対応するK2を決定する処理を行う。
【0221】
なお、変形例として、T2→K2テーブル274′の代わりに、「K2=√N」なる関係式で定まる開平値K2の値を、Nの値に基づいて参照することができる開平値テーブル(開平値のルックアップテーブル)を利用することも可能である。この場合、T2→K2変換手段273′は、次のような処理を行えばよい。まず、T2演算手段275′によって求められたT2に基づいて、逆数N=1/T2を求めるための除算を行う。続いて、上述した開平値テーブルを参照することにより、得られた逆数Nの開平値としてK2を求めれば、結局、「K2=1/√T2」なる関係式で定まるK2の値が得られる。この変形例では、逆数N=1/T2を求めるための除算が必要になるため、演算負担は若干増えることになるが、開平値テーブルの利用により開平演算は省略できる。
【0222】
KxxKyy決定手段271′は、与えられた座標(u,v)と係数A,B,C,D,E,Fおよび逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式(図36の式(64),(65))で定義されるKxxおよびKyyを求める処理を行う。そして、xy演算手段272′は、Kxx,Kyy,K2に基づいて、「xa=K2・Kxx」および「ya=K2・Kyy」なる演算(図36の式(66),(67))を行い、座標(xa,ya)を求める処理を行う。なお、R=1とする正規化を行わない場合は、更にRを乗じる演算を追加すればよい。
【0223】
この座標変換部270′で実行される処理に着目すると、KxxKyy決定手段271′で行われる処理を除き、積和演算処理とルックアップテーブルを参照する処理とによって構成されていることがわかる。T2→K2変換手段273′は、T2に基づいて、「K2=1/√T2」なる関係式で定まるK2の値を決定する処理を行うが、当該処理は演算によって行われるものではなく、T2→K2テーブル274′を参照することによって行われるものである。したがって、この座標変換部270′では、開平演算や逆数演算は排除されている。
【0224】
なお、KxxKyy決定手段271′では、三角関数演算を含む式(64),(65)を利用して、係数Kxx,Kyyを決定する必要があるが、一般に、三角関数の演算には、テーラー展開した形の演算式が利用される。したがって、三角関数演算も実質的には積和演算によって実現することができ、KxxKyy決定手段271′によって行われる演算も積和演算によって構成することができる。結局、座標変換部270′で実行される演算はすべて積和演算ということになり、演算処理の負担は比較的軽いものになる。
【0225】
もっとも、三角関数のテーラー展開式は数学的に無限の項を含む式であるため、実際の演算には、有限個の項によって構成される近似式を用いる必要がある。したがって、精度の高い演算結果を得るためには、できるだけ多くの項を含む正確な近似式を用いる必要が生じ、積和演算の項数はそれだけ多くなってしまう。そこで、KxxKyy決定手段271′で実行される演算負担を軽減するために、式(64),(65)の結果をルックアップテーブルを参照することによって得るようにしてもよい。
【0226】
具体的には、KxxKyy決定手段271′を、図38に示すような構成にすればよい。この例の場合、KxxKyy決定手段271′は、KxxKyy演算手段271a、θ→T3変換手段271b、θ→T4変換手段271c、sinテーブル271d、cosテーブル271e、θ演算手段271fによって構成されており、与えられた回転係数A〜F、逆数t、座標(u,v)に基づいて、係数KxxおよびKyyを求める機能を有している。
【0227】
θ演算手段271fは、座標uおよび逆数tに基づいて、「θ=ut」なる演算を行う。sinテーブル271dおよびcosテーブル271eは、それぞれ sinθおよび cosθの値を、θの値に基づいて参照することができるルックアップテーブルであり、予想範囲内のθの値に対応する各値を予め収録している。θ→T3変換手段271bは、sinテーブル271dを参照することにより、θ演算手段271fによって求められたθに対応する sinθの値を求め、これを係数T3として出力する。同様に、θ→T4変換手段271cは、cosテーブル271eを参照することにより、θ演算手段271fによって求められたθに対応する cosθの値を求め、これを係数T4として出力する。そして、KxxKyy演算手段271aは、T3,T4,回転係数A,B,C,D,E,F,座標v,逆数tに基づいて、「Kxx=A・T3+vtB+C・T4」および「Kyy=D・T3+vtE+F・T4」なる演算を行い、KxxおよびKyyを求める。
【0228】
KxxKyy決定手段271′を、このような構成にすれば、三角関数演算を回避することができ、純然たる積和演算のみによって、係数Kxx,Kyyを算出することができる。したがって、演算負担はより軽減される。
【符号の説明】
【0229】
110:パラメータ入力ユニット
115:インターフェイス
120:魚眼レンズ装着デジタルカメラ
125:インターフェイス
130:モニタ装置
135:インターフェイス
200:画像変換装置
210:射影方式正変換部
211:rb演算手段
212:rb→Ka変換手段
213:射影方式変換手段
220:歪曲円形画像用メモリ
230:平面正則画像用メモリ
240:係数算出部
241:演算手段
242:演算手段
243:演算手段
250:データ読出部
255:画素値決定部
260:データ書込部
270,270′:座標変換部
271:KxKy演算手段
271′:KxxKyy決定手段
271a:KxxKyy演算手段
271b:θ→T3変換手段
271c:θ→T4変換手段
271d:sinテーブル
271e:cosテーブル
271f:θ演算手段
272,272′:xy演算手段
273:T1→K1変換手段
273′:T2→K2変換手段
274:T1→K1テーブル
274′:T2→K2テーブル
275:T1演算手段
275′:T2演算手段
280:射影方式逆変換部
281:G演算手段
282:G→Kb変換手段
283:G→Kbテーブル
284:射影方式変換手段
290:uv座標値発生部
A:円弧
A〜F:回転係数
a:モニタ装置の横方向寸法(水平方向の画素数)
b:モニタ装置の縦方向寸法(垂直方向の画素数)
C:二次元UV湾曲座標系上の湾曲正則画像
C(u,v):二次元UV湾曲座標系上の湾曲正則画像C内の点
Ci(ui,vi):二次元UV湾曲座標系上の湾曲正則画像C内の点
D:線分
E,E1,E2:切出領域
F1,F2:画角
f:魚眼レンズに固有の定数
G:係数
G,G1,G2:二次元UV直交座標系の原点
G(x0,y0,z0):二次元UV直交座標系の原点
G(xg,yg,zg):二次元UV直交座標系の原点
G(0,0,mR):二次元UV直交座標系の原点
H:仮想球面
H(x,y,z):仮想球面H上の入射点
J:回転基準軸
K1,K2,Ka,Kb,Kx,Kxx,Ky,Kyy:係数
L:2点間の距離
L1,L2:入射光線
m:倍率
n:視線ベクトル
ni:OとQiとを結ぶ直線
O:三次元XYZ直交座標系の原点
P,P(x0,y0),PP(x00,y00):切出中心点
Q,Q1,Q2:球面上対応点
Q(x0,y0,z0):球面上対応点
Qi(xi,yi,zi):球面上対応点
R:歪曲円形画像Sの半径(仮想球面Hの半径)
r,ra,rb:歪曲円形画像Sの中心点からの距離
S,SS:歪曲円形画像
S1:傾斜面
S2:接平面
S(x,y):二次元XY直交座標系上の歪曲円形画像S内の点
S1(x1,y1):二次元XY直交座標系上の歪曲円形画像S内の点
S2(x2,y2):二次元XY直交座標系上の歪曲円形画像S内の点
Si(xi,yi):二次元XY直交座標系上の歪曲円形画像S内の点
SSi(xii,yii):二次元XY直交座標系上の歪曲円形画像SS内の点
T,T1,T2:二次元UV直交座標系上の平面正則画像
T1〜T4:係数
T(u,v):二次元UV直交座標系上の平面正則画像T内の点
T(0,0):二次元UV直交座標系の原点
T1(u1,v1):二次元UV直交座標系上の平面正則画像T内の点
T2(u2,v2):二次元UV直交座標系上の平面正則画像T内の点
Ti(ui,vi):二次元UV直交座標系上の平面正則画像T内の点
t:wの逆数
U:二次元UV直交座標系の座標軸/二次元UV湾曲座標系の座標軸
u:二次元UV直交座標系もしくは二次元UV湾曲座標系の座標軸Uに関する座標値
u′:座標値uの補正値
V:二次元UV直交座標系の座標軸/二次元UV湾曲座標系の座標軸
v:二次元UV直交座標系もしくは二次元UV湾曲座標系の座標軸Vに関する座標値
V′:座標軸Vに平行かつ原点Oを通る直線(仮想円柱の中心軸)
w:m×Rで与えられる数値
w′:数値wの補正値
X,Xa,Xb:三次元XYZ直交座標系の座標軸
x,xa,xb:二次元XY直交座標系の座標軸Xに関する座標値
Y,Ya,Yb:三次元XYZ直交座標系の座標軸
y,ya,yb:二次元XY直交座標系の座標軸Yに関する座標値
Z,Za,Zb:三次元XYZ直交座標系の座標軸
α:方位角
β:天頂角
θ:角度
φ:平面傾斜角
【特許請求の範囲】
【請求項1】
正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記座標(x,y)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
前記歪曲円形画像用メモリ内の前記対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
x=R(uA+vB+wC)/√(u2+v2+w2)
y=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)と前記逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=1/√T1」なる関係式で定まるK1の値を、T1の値に基づいて参照することができるT1→K1テーブルと、
前記T1→K1テーブルを参照することにより、前記T1演算手段によって求められたT1に対応するK1を決定するT1→K1変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
前記Kx,前記Ky,前記K1に基づいて、「x=K1・Kx」および「y=K1・Ky」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項2】
正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記座標(x,y)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
前記歪曲円形画像用メモリ内の前記対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
x=R(uA+vB+wC)/√(u2+v2+w2)
y=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)と前記逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=√N」なる関係式で定まる開平値K1の値を、Nの値に基づいて参照することができる開平値テーブルと、
前記T1演算手段によって求められたT1に基づいて、逆数N=1/T1を求めるための除算を行い、前記開平値テーブルを参照することにより、得られた逆数Nの開平値としてK1を決定するT1→K1変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
前記Kx,前記Ky,前記K1に基づいて、「x=K1・Kx」および「y=K1・Ky」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項3】
正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記座標(x,y)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
前記歪曲円形画像用メモリ内の前記対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「前記点Gが側面上の1点をなし、前記二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(x,y)との対応関係を示す正射影画像用対応関係式として、
x=R(u′A+vB+w′C)/√(u′2+v2+w′2)
y=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)のうちの座標vと前記逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=1/√T2」なる関係式で定まるK2の値を、T2の値に基づいて参照することができるT2→K2テーブルと、
前記T2→K2テーブルを参照することにより、前記T2演算手段によって求められたT2に対応するK2を決定するT2→K2変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
前記Kxx,前記Kyy,前記K2に基づいて、「x=K2・Kxx」および「y=K2・Kyy」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項4】
正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記座標(x,y)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
前記歪曲円形画像用メモリ内の前記対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「前記点Gが側面上の1点をなし、前記二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(x,y)との対応関係を示す正射影画像用対応関係式として、
x=R(u′A+vB+w′C)/√(u′2+v2+w′2)
y=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)のうちの座標vと前記逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=√N」なる関係式で定まる開平値K2の値を、Nの値に基づいて参照することができる開平値テーブルと、
前記T2演算手段によって求められたT2に基づいて、逆数N=1/T2を求めるための除算を行い、前記開平値テーブルを参照することにより、得られた逆数Nの開平値としてK2を決定するT2→K2変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
前記Kxx,前記Kyy,前記K2に基づいて、「x=K2・Kxx」および「y=K2・Kyy」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項5】
請求項3または4に記載の画像変換装置において、
KxxKyy決定手段が、
座標uおよび逆数tに基づいて、「θ=ut」なる演算を行い、θを求めるθ演算手段と、
θに基づいて「T3=sinθ」なる値T3を参照することができるsinテーブルと、
θに基づいて「T4=cosθ」なる値T4を参照することができるcosテーブルと、
前記sinテーブルを参照することにより、前記θ演算手段によって求められたθに対応するT3を決定するθ→T3変換手段と、
前記cosテーブルを参照することにより、前記θ演算手段によって求められたθに対応するT4を決定するθ→T4変換手段と、
前記T3,前記T4,与えられた係数A,B,C,D,E,F,座標v,逆数tに基づいて、「Kxx=A・T3+vtB+C・T4」および「Kyy=D・T3+vtE+F・T4」なる演算を行い、KxxおよびKyyを求めるKxxKyy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項6】
請求項1〜5のいずれかに記載の画像変換装置において、
係数算出部が、正射影歪曲円形画像上で指定された切出中心点P(x0,y0)の座標値x0,y0に基づいて、前記切出中心点P(x0,y0)を通りZ軸に平行な直線と原点Oを中心として半径Rをもった仮想球面との交点G(x0,y0,z0)を求め、前記原点Oを起点として前記交点G(x0,y0,z0)を通るベクトルを視線ベクトルnとして、係数の算出を行うことを特徴とする画像変換装置。
【請求項7】
請求項6に記載の画像変換装置において、
歪曲円形画像用メモリが、半径R=1となるように正規化された正射影歪曲円形画像を格納し、
係数算出部が、
座標値x0,y0に基づいて、
ra=√(x02+y02)
z0=√(1−ra2)
なる演算を行い、raおよびz0を算出する演算手段と、
座標値x0,y0および前記z0,ra、ならびに平面傾斜角φに基づいて、
A=(y0・cosφ+x0・z0・sinφ)/ra
B=(−y0・sinφ+x0・z0・cosφ)/ra
C=−x0
D=(−x0・cosφ+y0・z0・sinφ)/ra
E=(x0・sinφ+y0・z0・cosφ)/ra
F=−y0
なる演算(但し、ra=0の場合は、A=cosφ,B=−sinφ,C=0,D=sinφ,E=cosφ,F=0)を行い、係数A,B,C,D,E,Fを算出する演算手段と、
倍率mに基づいて、
t=1/m
なる演算を行い、係数tを算出する演算手段と、
を有することを特徴とする画像変換装置。
【請求項8】
請求項6または7に記載の画像変換装置において、
歪曲円形画像用メモリに格納されている正射影歪曲円形画像および平面正則画像用メモリに格納されている平面正則画像をそれぞれ表示するモニタ装置と、
切出中心点P(x0,y0)の座標値x0,y0と、平面傾斜角φと、倍率mと、をパラメータとして入力して係数算出部に与えるパラメータ入力ユニットと、
を更に備え、
前記パラメータ入力ユニットが、前記モニタ装置上に表示されている正射影歪曲円形画像上においてユーザが指定した1点を切出中心点P(x0,y0)として認識し、その座標値x0,y0を入力する機能を有することを特徴とする画像変換装置。
【請求項9】
非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
前記歪曲円形画像用メモリ内の前記座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
xa=R(uA+vB+wC)/√(u2+v2+w2)
ya=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)と前記逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=1/√T1」なる関係式で定まるK1の値を、T1の値に基づいて参照することができるT1→K1テーブルと、
前記T1→K1テーブルを参照することにより、前記T1演算手段によって求められたT1に対応するK1を決定するT1→K1変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
前記Kx,前記Ky,前記K1に基づいて、「xa=K1・Kx」および「ya=K1・Ky」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項10】
非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
前記歪曲円形画像用メモリ内の前記座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
xa=R(uA+vB+wC)/√(u2+v2+w2)
ya=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)と前記逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=√N」なる関係式で定まる開平値K1の値を、Nの値に基づいて参照することができる開平値テーブルと、
前記T1演算手段によって求められたT1に基づいて、逆数N=1/T1を求めるための除算を行い、前記開平値テーブルを参照することにより、得られた逆数Nの開平値としてK1を決定するT1→K1変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
前記Kx,前記Ky,前記K1に基づいて、「xa=K1・Kx」および「ya=K1・Ky」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項11】
非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
前記歪曲円形画像用メモリ内の前記座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「前記点Gが側面上の1点をなし、前記二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(xa,ya)との対応関係を示す正射影画像用対応関係式として、
xa=R(u′A+vB+w′C)/√(u′2+v2+w′2)
ya=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)のうちの座標vと前記逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=1/√T2」なる関係式で定まるK2の値を、T2の値に基づいて参照することができるT2→K2テーブルと、
前記T2→K2テーブルを参照することにより、前記T2演算手段によって求められたT2に対応するK2を決定するT2→K2変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
前記Kxx,前記Kyy,前記K2に基づいて、「xa=K2・Kxx」および「ya=K2・Kyy」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項12】
非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
前記歪曲円形画像用メモリ内の前記座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「前記点Gが側面上の1点をなし、前記二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(xa,ya)との対応関係を示す正射影画像用対応関係式として、
xa=R(u′A+vB+w′C)/√(u′2+v2+w′2)
ya=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)のうちの座標vと前記逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=√N」なる関係式で定まる開平値K2の値を、Nの値に基づいて参照することができる開平値テーブルと、
前記T2演算手段によって求められたT2に基づいて、逆数N=1/T2を求めるための除算を行い、前記開平値テーブルを参照することにより、得られた逆数Nの開平値としてK2を決定するT2→K2変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
前記Kxx,前記Kyy,前記K2に基づいて、「xa=K2・Kxx」および「ya=K2・Kyy」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項13】
請求項11または12に記載の画像変換装置において、
KxxKyy決定手段が、
座標uおよび逆数tに基づいて、「θ=ut」なる演算を行い、θを求めるθ演算手段と、
θに基づいて「T3=sinθ」なる値T3を参照することができるsinテーブルと、
θに基づいて「T4=cosθ」なる値T4を参照することができるcosテーブルと、
前記sinテーブルを参照することにより、前記θ演算手段によって求められたθに対応するT3を決定するθ→T3変換手段と、
前記cosテーブルを参照することにより、前記θ演算手段によって求められたθに対応するT4を決定するθ→T4変換手段と、
前記T3,前記T4,与えられた係数A,B,C,D,E,F,座標v,逆数tに基づいて、「Kxx=A・T3+vtB+C・T4」および「Kyy=D・T3+vtE+F・T4」なる演算を行い、KxxおよびKyyを求めるKxxKyy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項14】
請求項9〜13のいずれかに記載の画像変換装置において、
射影方式逆変換部が、
座標(xa,ya)に基づいて、「G=xa2+ya2」なる演算を行ってGを求めるG演算手段と、
「Kb=(sin-1√G/√G)・2/π」なる関係式で定まるKbの値を、Gの値に基づいて参照することができるG→Kbテーブルと、
前記G→Kbテーブルを参照することにより、前記G演算手段によって求められたGに対応するKbを決定するG→Kb変換手段と、
前記座標(xa,ya)と前記Kbとに基づいて、「xb=Kb・xa」および「yb=Kb・ya」なる演算を行い、座標(xb,yb)を求める射影方式変換手段と、
を有し、半径R=1となるように正規化された正射影歪曲円形画像上の座標(xa,ya)を、等距離射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等距離射影歪曲円形画像上の座標(xb,yb)に変換する機能を有することを特徴とする画像変換装置。
【請求項15】
請求項9〜13のいずれかに記載の画像変換装置において、
射影方式逆変換部が、
座標(xa,ya)に基づいて、「G=xa2+ya2」なる演算を行ってGを求めるG演算手段と、
「Kb=1/(1+√(1−G))」なる関係式で定まるKbの値を、Gの値に基づいて参照することができるG→Kbテーブルと、
前記G→Kbテーブルを参照することにより、前記G演算手段によって求められたGに対応するKbを決定するG→Kb変換手段と、
前記座標(xa,ya)と前記Kbとに基づいて、「xb=Kb・xa」および「yb=Kb・ya」なる演算を行い、座標(xb,yb)を求める射影方式変換手段と、
を有し、半径R=1となるように正規化された正射影歪曲円形画像上の座標(xa,ya)を、立体射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された立体射影方式歪曲円形画像上の座標(xb,yb)に変換する機能を有することを特徴とする画像変換装置。
【請求項16】
請求項9〜13のいずれかに記載の画像変換装置において、
射影方式逆変換部が、
座標(xa,ya)に基づいて、「G=xa2+ya2」なる演算を行ってGを求めるG演算手段と、
「Kb=1/√(1+√(1−G))」なる関係式で定まるKbの値を、Gの値に基づいて参照することができるG→Kbテーブルと、
前記G→Kbテーブルを参照することにより、前記G演算手段によって求められたGに対応するKbを決定するG→Kb変換手段と、
前記座標(xa,ya)と前記Kbとに基づいて、「xb=Kb・xa」および「yb=Kb・ya」なる演算を行い、座標(xb,yb)を求める射影方式変換手段と、
を有し、半径R=1となるように正規化された正射影歪曲円形画像上の座標(xa,ya)を、等立体角射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等立体角射影歪曲円形画像上の座標(xb,yb)に変換する機能を有することを特徴とする画像変換装置。
【請求項17】
請求項9〜16のいずれかに記載の画像変換装置において、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、非正射影歪曲円形画像上で指定された切出中心点PP(x00,y00)の座標x00,y00を、正射影歪曲円形画像上で対応する切出中心点P(x0,y0)の座標x0,y0に変換する射影方式正変換部を更に備え、
係数算出部が、前記切出中心点P(x0,y0)の座標値x0,y0に基づいて、前記切出中心点P(x0,y0)を通りZ軸に平行な直線と原点Oを中心として半径Rをもった仮想球面との交点G(x0,y0,z0)を求め、前記原点Oを起点として前記交点G(x0,y0,z0)を通るベクトルを視線ベクトルnとして、係数の算出を行うことを特徴とする画像変換装置。
【請求項18】
請求項17に記載の画像変換装置において、
歪曲円形画像用メモリが、半径R=1となるように正規化された非正射影歪曲円形画像を格納し、
係数算出部が、
座標値x0,y0に基づいて、
ra=√(x02+y02)
z0=√(1−ra2)
なる演算を行い、raおよびz0を算出する演算手段と、
座標値x0,y0および前記z0,ra、ならびに平面傾斜角φに基づいて、
A=(y0・cosφ+x0・z0・sinφ)/ra
B=(−y0・sinφ+x0・z0・cosφ)/ra
C=−x0
D=(−x0・cosφ+y0・z0・sinφ)/ra
E=(x0・sinφ+y0・z0・cosφ)/ra
F=−y0
なる演算(但し、ra=0の場合は、A=cosφ,B=−sinφ,C=0,D=sinφ,E=cosφ,F=0)を行い、係数A,B,C,D,E,Fを算出する演算手段と、
倍率mに基づいて、
t=1/m
なる演算を行い、係数tを算出する演算手段と、
を有することを特徴とする画像変換装置。
【請求項19】
請求項17または18に記載の画像変換装置において、
歪曲円形画像用メモリに格納されている非正射影歪曲円形画像および平面正則画像用メモリに格納されている平面正則画像をそれぞれ表示するモニタ装置と、
切出中心点PP(x00,y00)の座標値x00,y00をパラメータとして入力して射影方式正変換部に与えるとともに、平面傾斜角φと、倍率mと、をパラメータとして入力して係数算出部に与えるパラメータ入力ユニットと、
を更に備え、
前記パラメータ入力ユニットが、前記モニタ装置上に表示されている非正射影歪曲円形画像上においてユーザが指定した1点を切出中心点PP(x00,y00)として認識し、その座標値x00,y00を入力する機能を有することを特徴とする画像変換装置。
【請求項20】
請求項17〜19のいずれかに記載の画像変換装置において、
射影方式正変換部が、
座標(x00,y00)に基づいて、「rb=√(x002+y002)」なる演算を行ってrbを求めるrb演算手段と、
前記rbを用いて「Ka=(sin(πrb/2))/rb」なる演算式で定義されるKaを求めるrb→Ka変換手段と、
前記座標(x00,y00)と前記Kaとに基づいて、「x0=Ka・x00」および「y0=Ka・y00」なる演算を行い、座標(x0,y0)を求める射影方式変換手段と、
を有し、等距離射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等距離射影歪曲円形画像上の座標(x00,y00)を、半径R=1となるように正規化された正射影歪曲円形画像上の座標(x0,y0)に変換する機能を有することを特徴とする画像変換装置。
【請求項21】
請求項17〜19のいずれかに記載の画像変換装置において、
射影方式正変換部が、
座標(x00,y00)に基づいて、「rb=√(x002+y002)」なる演算を行ってrbを求めるrb演算手段と、
前記rbを用いて「Ka=2/(1+rb2)」なる演算式で定義されるKaを求めるrb→Ka変換手段と、
前記座標(x00,y00)と前記Kaとに基づいて、「x0=Ka・x00」および「y0=Ka・y00」なる演算を行い、座標(x0,y0)を求める射影方式変換手段と、
を有し、立体射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された立体射影歪曲円形画像上の座標(x00,y00)を、半径R=1となるように正規化された正射影歪曲円形画像上の座標(x0,y0)に変換する機能を有することを特徴とする画像変換装置。
【請求項22】
請求項17〜19のいずれかに記載の画像変換装置において、
射影方式正変換部が、
座標(x00,y00)に基づいて、「rb=√(x002+y002)」なる演算を行ってrbを求めるrb演算手段と、
前記rbを用いて「Ka=√(2−rb2)」なる演算式で定義されるKaを求めるrb→Ka変換手段と、
前記座標(x00,y00)と前記Kaとに基づいて、「x0=Ka・x00」および「y0=Ka・y00」なる演算を行い、座標(x0,y0)を求める射影方式変換手段と、
を有し、等立体角射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等立体角射影歪曲円形画像上の座標(x00,y00)を、半径R=1となるように正規化された正射影歪曲円形画像上の座標(x0,y0)に変換する機能を有することを特徴とする画像変換装置。
【請求項23】
請求項1〜22のいずれかに記載の画像変換装置において、
画素値決定部が、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する際に、データ読出部が読み出した複数の画素の画素値を用いた補間演算を行うことを特徴とする画像変換装置。
【請求項24】
請求項1〜7,9〜18,20〜23のいずれかに記載の画像変換装置としてコンピュータを機能させるためのプログラム。
【請求項25】
請求項1〜7,9〜18,20〜23のいずれかに記載の画像変換装置として機能する電子回路が組み込まれた半導体集積回路。
【請求項26】
請求項1〜7,9〜18,20〜23のいずれかに記載の画像変換装置と、
魚眼レンズを装着したデジタルカメラと、
歪曲円形画像用メモリに格納されている歪曲円形画像および平面正則画像用メモリに格納されている平面正則画像をそれぞれ表示するモニタ装置と、
視線ベクトルn,平面傾斜角φ,倍率mを指定するためのパラメータを入力するパラメータ入力ユニットと、
を備え、
前記デジタルカメラを用いた撮影により得られた歪曲円形画像が前記歪曲円形画像用メモリへと格納され、前記平面正則画像用メモリに得られた平面正則画像が前記モニタ装置によって表示されるように構成されていることを特徴とする魚眼監視システム。
【請求項1】
正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記座標(x,y)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
前記歪曲円形画像用メモリ内の前記対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
x=R(uA+vB+wC)/√(u2+v2+w2)
y=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)と前記逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=1/√T1」なる関係式で定まるK1の値を、T1の値に基づいて参照することができるT1→K1テーブルと、
前記T1→K1テーブルを参照することにより、前記T1演算手段によって求められたT1に対応するK1を決定するT1→K1変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
前記Kx,前記Ky,前記K1に基づいて、「x=K1・Kx」および「y=K1・Ky」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項2】
正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記座標(x,y)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
前記歪曲円形画像用メモリ内の前記対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
x=R(uA+vB+wC)/√(u2+v2+w2)
y=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)と前記逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=√N」なる関係式で定まる開平値K1の値を、Nの値に基づいて参照することができる開平値テーブルと、
前記T1演算手段によって求められたT1に基づいて、逆数N=1/T1を求めるための除算を行い、前記開平値テーブルを参照することにより、得られた逆数Nの開平値としてK1を決定するT1→K1変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
前記Kx,前記Ky,前記K1に基づいて、「x=K1・Kx」および「y=K1・Ky」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項3】
正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記座標(x,y)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
前記歪曲円形画像用メモリ内の前記対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「前記点Gが側面上の1点をなし、前記二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(x,y)との対応関係を示す正射影画像用対応関係式として、
x=R(u′A+vB+w′C)/√(u′2+v2+w′2)
y=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)のうちの座標vと前記逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=1/√T2」なる関係式で定まるK2の値を、T2の値に基づいて参照することができるT2→K2テーブルと、
前記T2→K2テーブルを参照することにより、前記T2演算手段によって求められたT2に対応するK2を決定するT2→K2変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
前記Kxx,前記Kyy,前記K2に基づいて、「x=K2・Kxx」および「y=K2・Kyy」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項4】
正射影方式の魚眼レンズを用いた撮影により得られた正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記座標(x,y)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、対応座標(x,y)を求める座標変換部と、
前記歪曲円形画像用メモリ内の前記対応座標(x,y)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「前記点Gが側面上の1点をなし、前記二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(x,y)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(x,y)との対応関係を示す正射影画像用対応関係式として、
x=R(u′A+vB+w′C)/√(u′2+v2+w′2)
y=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(x,y)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)のうちの座標vと前記逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=√N」なる関係式で定まる開平値K2の値を、Nの値に基づいて参照することができる開平値テーブルと、
前記T2演算手段によって求められたT2に基づいて、逆数N=1/T2を求めるための除算を行い、前記開平値テーブルを参照することにより、得られた逆数Nの開平値としてK2を決定するT2→K2変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
前記Kxx,前記Kyy,前記K2に基づいて、「x=K2・Kxx」および「y=K2・Kyy」なる演算を行い、座標(x,y)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項5】
請求項3または4に記載の画像変換装置において、
KxxKyy決定手段が、
座標uおよび逆数tに基づいて、「θ=ut」なる演算を行い、θを求めるθ演算手段と、
θに基づいて「T3=sinθ」なる値T3を参照することができるsinテーブルと、
θに基づいて「T4=cosθ」なる値T4を参照することができるcosテーブルと、
前記sinテーブルを参照することにより、前記θ演算手段によって求められたθに対応するT3を決定するθ→T3変換手段と、
前記cosテーブルを参照することにより、前記θ演算手段によって求められたθに対応するT4を決定するθ→T4変換手段と、
前記T3,前記T4,与えられた係数A,B,C,D,E,F,座標v,逆数tに基づいて、「Kxx=A・T3+vtB+C・T4」および「Kyy=D・T3+vtE+F・T4」なる演算を行い、KxxおよびKyyを求めるKxxKyy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項6】
請求項1〜5のいずれかに記載の画像変換装置において、
係数算出部が、正射影歪曲円形画像上で指定された切出中心点P(x0,y0)の座標値x0,y0に基づいて、前記切出中心点P(x0,y0)を通りZ軸に平行な直線と原点Oを中心として半径Rをもった仮想球面との交点G(x0,y0,z0)を求め、前記原点Oを起点として前記交点G(x0,y0,z0)を通るベクトルを視線ベクトルnとして、係数の算出を行うことを特徴とする画像変換装置。
【請求項7】
請求項6に記載の画像変換装置において、
歪曲円形画像用メモリが、半径R=1となるように正規化された正射影歪曲円形画像を格納し、
係数算出部が、
座標値x0,y0に基づいて、
ra=√(x02+y02)
z0=√(1−ra2)
なる演算を行い、raおよびz0を算出する演算手段と、
座標値x0,y0および前記z0,ra、ならびに平面傾斜角φに基づいて、
A=(y0・cosφ+x0・z0・sinφ)/ra
B=(−y0・sinφ+x0・z0・cosφ)/ra
C=−x0
D=(−x0・cosφ+y0・z0・sinφ)/ra
E=(x0・sinφ+y0・z0・cosφ)/ra
F=−y0
なる演算(但し、ra=0の場合は、A=cosφ,B=−sinφ,C=0,D=sinφ,E=cosφ,F=0)を行い、係数A,B,C,D,E,Fを算出する演算手段と、
倍率mに基づいて、
t=1/m
なる演算を行い、係数tを算出する演算手段と、
を有することを特徴とする画像変換装置。
【請求項8】
請求項6または7に記載の画像変換装置において、
歪曲円形画像用メモリに格納されている正射影歪曲円形画像および平面正則画像用メモリに格納されている平面正則画像をそれぞれ表示するモニタ装置と、
切出中心点P(x0,y0)の座標値x0,y0と、平面傾斜角φと、倍率mと、をパラメータとして入力して係数算出部に与えるパラメータ入力ユニットと、
を更に備え、
前記パラメータ入力ユニットが、前記モニタ装置上に表示されている正射影歪曲円形画像上においてユーザが指定した1点を切出中心点P(x0,y0)として認識し、その座標値x0,y0を入力する機能を有することを特徴とする画像変換装置。
【請求項9】
非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
前記歪曲円形画像用メモリ内の前記座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
xa=R(uA+vB+wC)/√(u2+v2+w2)
ya=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)と前記逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=1/√T1」なる関係式で定まるK1の値を、T1の値に基づいて参照することができるT1→K1テーブルと、
前記T1→K1テーブルを参照することにより、前記T1演算手段によって求められたT1に対応するK1を決定するT1→K1変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
前記Kx,前記Ky,前記K1に基づいて、「xa=K1・Kx」および「ya=K1・Ky」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項10】
非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
前記歪曲円形画像用メモリ内の前記座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
との定義の下で、
xa=R(uA+vB+wC)/√(u2+v2+w2)
ya=R(uD+vE+wF)/√(u2+v2+w2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)と前記逆数tとに基づいて、「T1=(ut)2+(vt)2+1」なる演算を行い、T1を求めるT1演算手段と、
「K1=√N」なる関係式で定まる開平値K1の値を、Nの値に基づいて参照することができる開平値テーブルと、
前記T1演算手段によって求められたT1に基づいて、逆数N=1/T1を求めるための除算を行い、前記開平値テーブルを参照することにより、得られた逆数Nの開平値としてK1を決定するT1→K1変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kx=utA+vtB+C」および「Ky=utD+vtE+F」なる演算を行い、KxおよびKyを求めるKxKy演算手段と、
前記Kx,前記Ky,前記K1に基づいて、「xa=K1・Kx」および「ya=K1・Ky」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項11】
非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
前記歪曲円形画像用メモリ内の前記座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「前記点Gが側面上の1点をなし、前記二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(xa,ya)との対応関係を示す正射影画像用対応関係式として、
xa=R(u′A+vB+w′C)/√(u′2+v2+w′2)
ya=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)のうちの座標vと前記逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=1/√T2」なる関係式で定まるK2の値を、T2の値に基づいて参照することができるT2→K2テーブルと、
前記T2→K2テーブルを参照することにより、前記T2演算手段によって求められたT2に対応するK2を決定するT2→K2変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
前記Kxx,前記Kyy,前記K2に基づいて、「xa=K2・Kxx」および「ya=K2・Kyy」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項12】
非正射影方式の魚眼レンズを用いた撮影により得られた非正射影歪曲円形画像の一部分を切り出して、平面正則画像に変換する処理を行う画像変換装置であって、
二次元XY直交座標系上の座標(x,y)で示される位置に配置された多数の画素の集合体によって構成され、前記二次元XY直交座標系の原点Oを中心とし半径Rをもった非正射影歪曲円形画像を格納する歪曲円形画像用メモリと、
二次元UV直交座標系上の座標(u,v)で示される位置に配置された多数の画素の集合体によって構成される平面正則画像を格納する平面正則画像用メモリと、
前記歪曲円形画像用メモリに格納されている画像が正射影歪曲円形画像であったと仮定した場合に、この正射影歪曲円形画像を構成する画素の座標(xa,ya)と前記座標(u,v)との対応関係を示す対応関係式に必要な係数を算出する係数算出部と、
前記平面正則画像を構成する個々の画素の位置を示す座標(u,v)を順次発生させるuv座標値発生部と、
前記uv座標値発生部が発生させた特定の座標(u,v)に対して、前記係数算出部によって算出された係数が含まれた前記対応関係式を用いた演算を施すことにより、正射影歪曲円形画像上での対応座標(xa,ya)を求める座標変換部と、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、座標(xa,ya)を座標(xb,yb)に変換する射影方式逆変換部と、
前記歪曲円形画像用メモリ内の前記座標(xb,yb)の近傍に配置された画素の画素値を読み出すデータ読出部と、
読み出した画素値に基づいて、前記特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する画素値決定部と、
前記画素値決定部により決定された画素値を、前記特定の画素の画素値として、前記平面正則画像用メモリへ書き込むデータ書込部と、
を備え、
前記座標変換部は、三次元XYZ直交座標系上のXY平面に、原点Oを中心として半径Rをもった正射影歪曲円形画像が配置され、原点Oを起点として所定方向を向く視線ベクトルnと、所定の平面傾斜角φと、所定の倍率mと、が定められた場合に、前記視線ベクトルn上における、前記原点Oから「前記倍率mと前記半径Rとの積m・R」だけ離れた点Gを原点とし、前記点Gを通り前記視線ベクトルnに直交する平面上に前記平面傾斜角φに応じた向きをもって配置された二次元UV直交座標系を、「前記点Gが側面上の1点をなし、前記二次元UV直交座標系のV軸に平行かつ原点Oを通る中心軸を有する仮想円柱」の側面に沿って湾曲させることにより二次元UV湾曲座標系を定義し、この二次元UV湾曲座標系上の座標(u,v)と前記二次元XY直交座標系上の座標(xa,ya)との対応関係を示す対応関係式として、前記視線ベクトルnのXY平面上への正射影とY軸とのなす角を方位角αとし、前記視線ベクトルnとZ軸正方向とのなす角を天頂角βとして、
A=cosφ cosα − sinφ sinα cosβ
B=−sinφ cosα − cosφ sinα cosβ
C=sinβ sinα
D=cosφ sinα + sinφ cosα cosβ
E=−sinφ sinα + cosφ cosα cosβ
F=−sinβ cosα
w=mR
u′=w・sin(u/w)
w′=w・cos(u/w)
との定義の下で、座標(u,v)と座標(xa,ya)との対応関係を示す正射影画像用対応関係式として、
xa=R(u′A+vB+w′C)/√(u′2+v2+w′2)
ya=R(u′D+vE+w′F)/√(u′2+v2+w′2)
なる式に基づく処理を行うことにより、任意の座標(u,v)に対応する対応座標(xa,ya)を求め、
前記係数算出部は、前記視線ベクトルn、前記平面傾斜角φ、前記倍率mを示すパラメータに基づいて、前記対応関係式に必要な係数A,B,C,D,E,F,wと、wの逆数tを求め、
前記座標変換部は、
前記特定の座標(u,v)のうちの座標vと前記逆数tとに基づいて、「T2=(vt)2+1」なる演算を行い、T2を求めるT2演算手段と、
「K2=√N」なる関係式で定まる開平値K2の値を、Nの値に基づいて参照することができる開平値テーブルと、
前記T2演算手段によって求められたT2に基づいて、逆数N=1/T2を求めるための除算を行い、前記開平値テーブルを参照することにより、得られた逆数Nの開平値としてK2を決定するT2→K2変換手段と、
前記特定の座標(u,v)と前記係数A,B,C,D,E,Fおよび前記逆数tに基づいて、「Kxx=A・sin(ut)+vtB+C・cos(ut)」および「Kyy=D・sin(ut)+vtE+F・cos(ut)」なる演算式で定義されるKxxおよびKyyを求めるKxxKyy決定手段と、
前記Kxx,前記Kyy,前記K2に基づいて、「xa=K2・Kxx」および「ya=K2・Kyy」なる演算を行い、座標(xa,ya)を求めるxy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項13】
請求項11または12に記載の画像変換装置において、
KxxKyy決定手段が、
座標uおよび逆数tに基づいて、「θ=ut」なる演算を行い、θを求めるθ演算手段と、
θに基づいて「T3=sinθ」なる値T3を参照することができるsinテーブルと、
θに基づいて「T4=cosθ」なる値T4を参照することができるcosテーブルと、
前記sinテーブルを参照することにより、前記θ演算手段によって求められたθに対応するT3を決定するθ→T3変換手段と、
前記cosテーブルを参照することにより、前記θ演算手段によって求められたθに対応するT4を決定するθ→T4変換手段と、
前記T3,前記T4,与えられた係数A,B,C,D,E,F,座標v,逆数tに基づいて、「Kxx=A・T3+vtB+C・T4」および「Kyy=D・T3+vtE+F・T4」なる演算を行い、KxxおよびKyyを求めるKxxKyy演算手段と、
を有していることを特徴とする画像変換装置。
【請求項14】
請求項9〜13のいずれかに記載の画像変換装置において、
射影方式逆変換部が、
座標(xa,ya)に基づいて、「G=xa2+ya2」なる演算を行ってGを求めるG演算手段と、
「Kb=(sin-1√G/√G)・2/π」なる関係式で定まるKbの値を、Gの値に基づいて参照することができるG→Kbテーブルと、
前記G→Kbテーブルを参照することにより、前記G演算手段によって求められたGに対応するKbを決定するG→Kb変換手段と、
前記座標(xa,ya)と前記Kbとに基づいて、「xb=Kb・xa」および「yb=Kb・ya」なる演算を行い、座標(xb,yb)を求める射影方式変換手段と、
を有し、半径R=1となるように正規化された正射影歪曲円形画像上の座標(xa,ya)を、等距離射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等距離射影歪曲円形画像上の座標(xb,yb)に変換する機能を有することを特徴とする画像変換装置。
【請求項15】
請求項9〜13のいずれかに記載の画像変換装置において、
射影方式逆変換部が、
座標(xa,ya)に基づいて、「G=xa2+ya2」なる演算を行ってGを求めるG演算手段と、
「Kb=1/(1+√(1−G))」なる関係式で定まるKbの値を、Gの値に基づいて参照することができるG→Kbテーブルと、
前記G→Kbテーブルを参照することにより、前記G演算手段によって求められたGに対応するKbを決定するG→Kb変換手段と、
前記座標(xa,ya)と前記Kbとに基づいて、「xb=Kb・xa」および「yb=Kb・ya」なる演算を行い、座標(xb,yb)を求める射影方式変換手段と、
を有し、半径R=1となるように正規化された正射影歪曲円形画像上の座標(xa,ya)を、立体射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された立体射影方式歪曲円形画像上の座標(xb,yb)に変換する機能を有することを特徴とする画像変換装置。
【請求項16】
請求項9〜13のいずれかに記載の画像変換装置において、
射影方式逆変換部が、
座標(xa,ya)に基づいて、「G=xa2+ya2」なる演算を行ってGを求めるG演算手段と、
「Kb=1/√(1+√(1−G))」なる関係式で定まるKbの値を、Gの値に基づいて参照することができるG→Kbテーブルと、
前記G→Kbテーブルを参照することにより、前記G演算手段によって求められたGに対応するKbを決定するG→Kb変換手段と、
前記座標(xa,ya)と前記Kbとに基づいて、「xb=Kb・xa」および「yb=Kb・ya」なる演算を行い、座標(xb,yb)を求める射影方式変換手段と、
を有し、半径R=1となるように正規化された正射影歪曲円形画像上の座標(xa,ya)を、等立体角射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等立体角射影歪曲円形画像上の座標(xb,yb)に変換する機能を有することを特徴とする画像変換装置。
【請求項17】
請求項9〜16のいずれかに記載の画像変換装置において、
正射影歪曲円形画像上の座標(xa,ya)と非正射影歪曲円形画像上の座標(xb,yb)との対応関係を示す座標変換式を用いて、非正射影歪曲円形画像上で指定された切出中心点PP(x00,y00)の座標x00,y00を、正射影歪曲円形画像上で対応する切出中心点P(x0,y0)の座標x0,y0に変換する射影方式正変換部を更に備え、
係数算出部が、前記切出中心点P(x0,y0)の座標値x0,y0に基づいて、前記切出中心点P(x0,y0)を通りZ軸に平行な直線と原点Oを中心として半径Rをもった仮想球面との交点G(x0,y0,z0)を求め、前記原点Oを起点として前記交点G(x0,y0,z0)を通るベクトルを視線ベクトルnとして、係数の算出を行うことを特徴とする画像変換装置。
【請求項18】
請求項17に記載の画像変換装置において、
歪曲円形画像用メモリが、半径R=1となるように正規化された非正射影歪曲円形画像を格納し、
係数算出部が、
座標値x0,y0に基づいて、
ra=√(x02+y02)
z0=√(1−ra2)
なる演算を行い、raおよびz0を算出する演算手段と、
座標値x0,y0および前記z0,ra、ならびに平面傾斜角φに基づいて、
A=(y0・cosφ+x0・z0・sinφ)/ra
B=(−y0・sinφ+x0・z0・cosφ)/ra
C=−x0
D=(−x0・cosφ+y0・z0・sinφ)/ra
E=(x0・sinφ+y0・z0・cosφ)/ra
F=−y0
なる演算(但し、ra=0の場合は、A=cosφ,B=−sinφ,C=0,D=sinφ,E=cosφ,F=0)を行い、係数A,B,C,D,E,Fを算出する演算手段と、
倍率mに基づいて、
t=1/m
なる演算を行い、係数tを算出する演算手段と、
を有することを特徴とする画像変換装置。
【請求項19】
請求項17または18に記載の画像変換装置において、
歪曲円形画像用メモリに格納されている非正射影歪曲円形画像および平面正則画像用メモリに格納されている平面正則画像をそれぞれ表示するモニタ装置と、
切出中心点PP(x00,y00)の座標値x00,y00をパラメータとして入力して射影方式正変換部に与えるとともに、平面傾斜角φと、倍率mと、をパラメータとして入力して係数算出部に与えるパラメータ入力ユニットと、
を更に備え、
前記パラメータ入力ユニットが、前記モニタ装置上に表示されている非正射影歪曲円形画像上においてユーザが指定した1点を切出中心点PP(x00,y00)として認識し、その座標値x00,y00を入力する機能を有することを特徴とする画像変換装置。
【請求項20】
請求項17〜19のいずれかに記載の画像変換装置において、
射影方式正変換部が、
座標(x00,y00)に基づいて、「rb=√(x002+y002)」なる演算を行ってrbを求めるrb演算手段と、
前記rbを用いて「Ka=(sin(πrb/2))/rb」なる演算式で定義されるKaを求めるrb→Ka変換手段と、
前記座標(x00,y00)と前記Kaとに基づいて、「x0=Ka・x00」および「y0=Ka・y00」なる演算を行い、座標(x0,y0)を求める射影方式変換手段と、
を有し、等距離射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等距離射影歪曲円形画像上の座標(x00,y00)を、半径R=1となるように正規化された正射影歪曲円形画像上の座標(x0,y0)に変換する機能を有することを特徴とする画像変換装置。
【請求項21】
請求項17〜19のいずれかに記載の画像変換装置において、
射影方式正変換部が、
座標(x00,y00)に基づいて、「rb=√(x002+y002)」なる演算を行ってrbを求めるrb演算手段と、
前記rbを用いて「Ka=2/(1+rb2)」なる演算式で定義されるKaを求めるrb→Ka変換手段と、
前記座標(x00,y00)と前記Kaとに基づいて、「x0=Ka・x00」および「y0=Ka・y00」なる演算を行い、座標(x0,y0)を求める射影方式変換手段と、
を有し、立体射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された立体射影歪曲円形画像上の座標(x00,y00)を、半径R=1となるように正規化された正射影歪曲円形画像上の座標(x0,y0)に変換する機能を有することを特徴とする画像変換装置。
【請求項22】
請求項17〜19のいずれかに記載の画像変換装置において、
射影方式正変換部が、
座標(x00,y00)に基づいて、「rb=√(x002+y002)」なる演算を行ってrbを求めるrb演算手段と、
前記rbを用いて「Ka=√(2−rb2)」なる演算式で定義されるKaを求めるrb→Ka変換手段と、
前記座標(x00,y00)と前記Kaとに基づいて、「x0=Ka・x00」および「y0=Ka・y00」なる演算を行い、座標(x0,y0)を求める射影方式変換手段と、
を有し、等立体角射影方式の魚眼レンズを用いた撮影により得られ、半径R=1となるように正規化された等立体角射影歪曲円形画像上の座標(x00,y00)を、半径R=1となるように正規化された正射影歪曲円形画像上の座標(x0,y0)に変換する機能を有することを特徴とする画像変換装置。
【請求項23】
請求項1〜22のいずれかに記載の画像変換装置において、
画素値決定部が、特定の座標(u,v)で示される平面正則画像上の特定の画素の画素値を決定する際に、データ読出部が読み出した複数の画素の画素値を用いた補間演算を行うことを特徴とする画像変換装置。
【請求項24】
請求項1〜7,9〜18,20〜23のいずれかに記載の画像変換装置としてコンピュータを機能させるためのプログラム。
【請求項25】
請求項1〜7,9〜18,20〜23のいずれかに記載の画像変換装置として機能する電子回路が組み込まれた半導体集積回路。
【請求項26】
請求項1〜7,9〜18,20〜23のいずれかに記載の画像変換装置と、
魚眼レンズを装着したデジタルカメラと、
歪曲円形画像用メモリに格納されている歪曲円形画像および平面正則画像用メモリに格納されている平面正則画像をそれぞれ表示するモニタ装置と、
視線ベクトルn,平面傾斜角φ,倍率mを指定するためのパラメータを入力するパラメータ入力ユニットと、
を備え、
前記デジタルカメラを用いた撮影により得られた歪曲円形画像が前記歪曲円形画像用メモリへと格納され、前記平面正則画像用メモリに得られた平面正則画像が前記モニタ装置によって表示されるように構成されていることを特徴とする魚眼監視システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図36】
【図37】
【図38】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図36】
【図37】
【図38】
【公開番号】特開2010−224691(P2010−224691A)
【公開日】平成22年10月7日(2010.10.7)
【国際特許分類】
【出願番号】特願2009−69098(P2009−69098)
【出願日】平成21年3月19日(2009.3.19)
【出願人】(000002897)大日本印刷株式会社 (14,506)
【Fターム(参考)】
【公開日】平成22年10月7日(2010.10.7)
【国際特許分類】
【出願日】平成21年3月19日(2009.3.19)
【出願人】(000002897)大日本印刷株式会社 (14,506)
【Fターム(参考)】
[ Back to top ]