説明

画像変換用演算装置

【課題】 魚眼レンズを用いて撮像された魚眼画像を表示用の平面画像に変換するためのハードウェアを安価にすることのできる画像変換用演算装置を提供すること。
【解決手段】 平面画像の座標を魚眼撮像面の仮想物体面へ投影した第1投影座標を求めるための第1座標演算部35と、この第1座標演算部35により求めた第1投影座標を魚眼撮像面へ投影した第2投影座標を求めるための第2座標演算部36とを備え、演算のための論理回路は、加減算、乗算、平方根の演算を行なう場合に限定し、除算及びその他の関数演算はルックアップテーブル37,38により対応するように構成して、ハードウェアを簡素化した。

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、魚眼レンズを用いて撮像された魚眼画像を表示用の平面画像に変換するための画像変換用演算装置に関するものである。
【0002】
【従来の技術】かかる装置は、例えば、監視カメラによる監視システムにおいて用いられるものである。オペレータは監視システムに設けられているモニターに映し出された、監視カメラからの撮影画像をみて監視カメラが設けられている空間内 (例えば、店内) の様子を監視するものである。ここで、カメラに装着されるレンズが通常の標準レンズであれば、この標準レンズの有する画角の範囲内しか監視することができない。そうすると、カメラの設置空間内をもれなくモニターするにはカメラの向きを適宜変更させるための機構を設けなければならない。
【0003】かかる機構を設けるとコストが上昇する要因になるとともに、さらにカメラの遠隔操作も必要となりもなるためオペレータによっては煩雑である。そこで、カメラに広い画角を有する魚眼レンズを装着してモニターすることが考えられる。しかし、魚眼レンズにより撮影された画像は、標準的なレンズで撮影された画像と比較すると歪んだ画像であり、オペレータにとっては非常に見づらいものである。そのため、魚眼レンズで撮影された画像を平面画像に変換する技術が、特表平6−501585号公報のカメラオリエンテーションシステムとして開示されている。このシステムでは、魚眼レンズを使用して得られた円形画像から、演算処理により通常撮影用のレンズ (例えば、標準レンズ) で撮影された画像に変換するものであり、任意の視点から見た平面画像を得ることができる。この場合、高速な演算装置を使用すれば、ソフトウェアのみでも平面画像データをリアルタイムに求めることは可能であるが、多くの場合ネットワークにつながれた端末装置においては、通信処理やヒューマンインターフェースとしての操作等に多くの時間が必要であるから、画像変換処理のうち同一処理の繰り返しの部分をハードウェア化するのが好ましい。
【0004】そして、魚眼画像をカメラに設けられた撮像素子(CCDなど) へ投影する場合の投影方式 (立体射影、等距離射影、正射影など)は設計時に決まっているから、数式通りの演算をハードウェアにより行なうことで、平面画像のデータに変換することは可能である。
【0005】
【発明が解決しようとする課題】しかしながら、上述した特表平6−501585号公報に開示されたごとく、変換する際の計算を一度に数式化し、この計算式通りの演算をハードウェアで行なうと、加減乗除算に加えて平方根や三角関数など多くの演算をハードウェアで実現する必要があり、必然的に高価な装置とならざるを得ない。
【0006】本発明は上記実情に鑑みてなされたものであり、その目的は、魚眼レンズを用いて撮像された魚眼画像を表示用の平面画像に変換するためのハードウェアを安価にすることのできる画像変換用演算装置を提供することである。
【0007】
【課題を解決するための手段】上記目的を達成するため、本発明にかかる画像処理装置は、魚眼レンズを用いて撮像された魚眼画像を表示用の平面画像に変換するための画像変換用演算装置であって、前記平面画像の座標を魚眼撮像面の仮想物体面へ投影した第1投影座標を求めるための第1座標演算部と、この第1座標演算部により求めた前記第1投影座標を前記魚眼撮像面へ投影した第2投影座標を求めるための第2座標演算部とを備えたことを特徴とするものである。
【0008】この構成による作用は次の通りである。すなわち、(ステップ1)第1座標演算部により、平面画像の座標を魚眼撮像面の仮想物体面へ投影した第1投影座標を求める。
(ステップ2) 第1投影座標を前記魚眼撮像面へ投影した第2投影座標を求める。つまり、画像変換する際に一度に数式化するのではなく、座標変換の手順を追って段階的に座標演算を行なうのである。これにより、単純な演算回路を組み合わせて演算部を構成することが可能になり画像変換用演算装置のハードウェア部分を安価にすることができる。
【0009】本発明の好適な実施形態として、前記第1及び第2座標演算部は、演算のための論理回路がパイプライン方式により構成されていることを特徴とするものがあげられる。論理回路をパイプライン化することにより、座標変換を手順を追って段階的に行うことができ、回路構成を部分的に簡素化することが可能になり、その結果画像変換用演算装置のハードウェア部分を安価にすることができる。
【0010】本発明の別の好適な実施形態として、前記演算のための論理回路は、加減算、乗算、平方根の演算を行なう場合に限定し、除算及びその他の関数演算はルックアップテーブルにより対応するように構成されているものがあげられる。
【0011】計算式通りの演算をハードウェアにより行う場合、加減乗除算に加えて平方根や三角関数などの多くの演算をハードウェアで実現するようにする必要がある。そうすると、規模の大きな回路部品を使用する必要がでてくる。特に魚眼レンズの投影法式によっては、三角関数や無限多項式での近似が発生する場合などもある。そこで、演算のための論理回路は、加減算、乗算、平方根に限定し、除算やその他の関数で表現される部分はルックアップテーブルにより対応することで、ハードウェアを簡素化することができ、画像変換用演算装置のコストダウンにより貢献することができる。
【0012】本発明の更に別の好適実施形態によると、前記第2座標演算部は、前記第1投影座標に所定の係数を乗算して前記第2投影座標を求めるものであり、前記所定の係数が前記ルックアップテーブルにより求められるものがあげられる。
【0013】魚眼レンズの投影法式が異なると、上記係数が異なってくる。したがって、ルックアップテーブルのデータ変更のみで投影法式の違いに対応することができ、わざわざハードウェア部分を組み替える必要がない。したがって、この点においても画像変換用演算装置のハードウェア部分を安価にすることができた。
【0014】
【発明の実施の形態】次に、本発明にかかる画像変換用演算装置の好適な実施形態を図面を用いて説明する。図1R>1は、座標系の設定を示す図、図2は、補正係数k1 を説明する図、図3はハードウェアによる座標の変換手順を説明する図、図4はPCIバス基板に搭載される回路ブロックを示す図である。
【0015】<座標系の位置関係>図1により、まず変換される座標の位置関係を説明する。座標系の設定は次のように行う。まず、被写体の位置を示すための空間として、魚眼レンズの位置を原点とし、光軸の方向をz軸とする、(x、y、z)座標空間を考える。また、上記原点から見た被写体位置を示すパラメータとして、方位角(ψ)、天頂角(θ)を考える。
【0016】魚眼レンズで撮影される被写体は、その魚眼レンズから見た角度で撮像素子(CCDなど)上での位置が決まるので、被写体は半径1の半球面上に位置しているものと仮定する。なお、この半球面を仮想物体面と呼ぶこととする。そして、結果として求めたい平面画像については、図1に(u,v)座標系で示されており、(u,v)座標系の中心(原点)は、(x、y、z)座標系の原点から距離1の位置にあり、前述の仮想物体面である半球面に接しているものとする。この(u,v)座標系で表わされる平面は、モニターにおける表示画像の画素と対応づけられるものである。なお、この座標系のu軸が、(x、y)平面となす角、更に詳しく言うと、(u,v)座標系の原点を通り(x,y)平面と平行な面と、(u,v)平面との交線とu軸とのなす角を(α)とする。
【0017】魚眼レンズを通して得られる画像平面(魚眼画像)は、図1のように(p,q)座標系で表わすものとする。(p,q)座標系は、(x,y)平面と平行な位置関係にあり、その原点はz軸上にあるものとする。撮像面上の位置(例えば、CCD撮像素子上での画素の位置)では、撮像素子の寸法や、魚眼レンズの焦点距離によりイメージサークル径が異なってくるため、レンズ正面から90度の位置(z=0)にある被写体が投影される映像の半径を1とする円に魚眼画像が映っているものとし、実使用時には倍率調整を行う。
【0018】画像変換は、平面画像上の点(u,v座標)が、撮像面(p,q座標)のどの位置に投影されているかを演算により求め、その点の輝度情報を参照することにより、結果として得たい平面画像のデータを生成することができる。視点(ψ、θ、α)や平面画像のサイズとなる拡大率(ズーム倍率)の情報は、オペレータがキーボードやポインティングデバイスなどを介して入力される情報であり、これらの情報はあらかじめ上位の演算処理装置で演算のためのデータとして求めて設定しておく。
【0019】まず、必要なパラメータとしては、図1にも示すように、平面画像の中心(原点)を示す(x0 ,y0 ,z0 );(u,v)座標系の上で各方向へ1画素分(モニター画面上での1画素分に相当する。)移動した場合の、(x,y,z)座標での各軸方向の変化分を、∂ux,∂vx,∂uy,∂vy,∂uz,∂vz;
が必要である。これらのパラメータは、上記の視点の角度情報(ψ,θ,α)、画像の拡大率の情報から容易に求めることができる。
【0020】<画像変換の演算手順>次に、画像変換のための演算手順を、図3を参照しながら説明する。演算手順は、大きく分けて、ステップ1とステップ2の2段階に分けて行われる。
【0021】(ステップ1)まず、平面画像上(u,v座標の上)の点Pが、仮想物体面である半球面上に投影された点P’(第1投影座標)の座標を求める。点Pのx,y,z座標を(x1 ,y1 ,z1 )、u,v座標を(u1 ,v1 )とすると、x1 =x0 +u1 ・∂ux+v1 ・∂vxy1 =y0 +u1 ・∂uy+v1 ・∂vyz1 =z0 +u1 ・∂uz+v1 ・∂vzである。また、図2にわかりやすく説明しているように、点P’は、OP間を結ぶ線上にあるため、ある係数をk1 として、(x2 ,y2 ,z2 )=k1 ・(x1 ,y1 ,z1
という関係が成立する(図2を参照)。そして、(x,y,z)座標系の原点と、(u,v)座標系の原点(x0 ,y0 ,z0 )、及び、座標(x2 ,y2 ,z2 )で表わされる点P’の距離は1である。したがって、点Pの(u,v)座標系の原点からの距離Lは、L=(u2 +v20.5となる。k1 については、上記距離Lが決まれば一定となるから、距離Lに対するk1 の表をルックアップテーブルとして作成しておき、このルックアップテーブルより求めたk1 を乗じることにより、上記のごとく(x2 ,y2 ,z2 )を求めることができる。つまり、図3にも示すように、x2 =k1 ・x12 =k1 ・y12 =k1 ・z1である。これにより、半球面上の第1投影座標が求まった。
【0022】(ステップ2)次に演算の第2段階として、先ほど求めた第1投影座標(x2 ,y2 ,z2 )から、魚眼撮像面上への第2投影座標W(p1 ,q1 )を求めるための手順を説明する。Wについては図1を参照のこと。既に説明してきたように、点P’が半径1の半球面上にあるということから、点P’の天頂角(θ1 )は、z2 の値から一意に決まる(θ1 については、図1を参照)。したがって、θ1 =cos-1(z2 )・・・(1)
となる。また、撮像面上の点Wと、半球面上の点P’の方位角は同じであるから、(p1 ,q1 )=k2 ・(x2 ,y2 )・・・(2)
という関係が成立する。ここで、魚眼画像の投影方式から、魚眼撮像面の原点(p,q座標系の原点)から、点Wまでの高さ(h)は、θ1 の関数として表わされるため、h=F(θ1 )・・・(3)
と表わすことができる。ここで、投影法式によるF(θ1 )の具体的関数をいくつか例示すると、魚眼レンズの焦点距離をfとして、等距離射影:h=f・θ立体射影:h=2f・tan(θ/2)
となる。
【0023】さて、式(3)に式(1)を代入すると、h=F(cos-1(z2 ))・・・(4)
となり、z2 で決まる関数として表わすことができる。また、点P’を(x,y)平面に投影した点Qの(x,y,z)座標系の原点からの距離rは、点P’が半径1の球面上の点であることから、r=(1−z220.5 ・・・(5)
と表わすことができる。したがって、上記式(4)(5)より、 k2 =h/r =F(cos-1(z2 ))/(1−z2 20.5 ・・・(6)
つまり、式(2)の係数k2 はz2 の関数として求めることができる。そこで、係数k2 については、z2 の値から式(3)に従って求めるためのルックアップテーブルを作成し、その値を用いて撮像面への第2投影座標(p1 ,q1 )を求めることができる。すなわち、p1 =k2 ・x21 =k2 ・y2となる。
【0024】以上説明してきたように、画像変換のための第1ステップにおいては、加減算、乗算、平方根に演算を限定し、それ以外の関数はルックアップテーブルにより対応している。また、第2ステップにおいては演算は乗算に限定されており、それ以外の関数計算などはやはりルックアップテーブルにより対応している。そして、各演算を段階を追うことにより、単純な演算回路(加算器等の論理回路)をパイプライン化して構成することができる。又、複雑な関数計算を行う部分はルックアップテーブルに対応することで回路規模を押さえることができる。また、ステップ2におけるk2 を求めるテーブルを変更することで、異なる投影方式の魚眼レンズに簡単に、しかも同一の演算回路により対応することができる。
【0025】<回路構成例>次に、図4により具体的な回路ブロック構成を説明する。この構成は、PCIバスを持ったコンピュータシステム用に構成した基板の例である。CCDカメラ1には魚眼レンズ2が装着されており、CCDカメラのより撮影された画像情報はPCIバス基板3に送られて画像変換のための処理がなされる。このPCIバス基板3は、CCDカメラ1に設けられたCCDからの魚眼画像データを取り込むカメラインターフェース30と、1フレーム分の魚眼画像データを記憶するフレームメモリ31と、演算部40の演算結果に基づいて補間演算を行う補完演算部32と、FIFOメモリ33と、フレームメモリ31への魚眼画像データの取り込みを制御する取り込み制御部34と、本発明の特徴構成を有する演算部40(破線で囲まれた部分)と、座標変換後の平面画像データを送り出すためのPCIバスインターフェース39とを備えている。
【0026】さらに、演算部40は、第1座標演算部35と、第2座標演算部36と、第1座標演算部35と接続された第1ルックアップテーブル37と、第2座標演算部36と接続された第2ルックアップテーブル38とで構成されている。先ほど説明した座標変換手順との関係で説明すると、第1座標演算部35は、図3に示されている第1ステップの演算を行う部分であり、平面画像における(u,v)座標から、半球面上への第1投影座標(x2 ,y2 ,z2 )を求めることができる。第1ルックアップテーブル37は、距離Lから補正係数k1 を求めるためのテーブルである。
【0027】第2座標演算部36は、図3の第2ステップの演算を行う部分であり、第1座標演算部35により求められた上記第1投影座標(x2 ,y2 ,z2 )から魚眼撮像面への第2投影座標(p1 ,q1 )を求めることができる。第2ルックアップテーブル38は、補正係数k2 を求めるためのテーブルである。
【0028】<回路の動作説明>次に、図4に示される回路の動作について説明する。CCDカメラ1で撮影された魚眼画像データは、カメラインターフェース30を経由してフレームメモリ31に書き込まれる。演算部40において、表示画面上の座標(u,v)に対応する撮像面上の座標(p,q)が求められているから、この演算部40により順次指定される座標(p,q)に対応する画像データがフレームメモリ31から読み出されて、補間演算部32に送られる。
【0029】モニターに表示させたい平面画像の各画素に対応する、魚眼画像上での画素の位置は正確には一致することがない。その場合は、近傍の画素のデータをフレームメモリ31から数点読み出し、加重平均して補間を行うことによって、自然な平面画像を得ることができる。補間演算された画像データは、FIFOメモリで速度調整がされ、ホストコンピュータ側へのメモリに、PCIバスインターフェース39を介して転送される。この図4の構成例の場合、座標演算、補間演算などの処理は、中規模のFPGA(又は、ゲートアレイ)により構成できるため、比較的に安価にハードウェア化することができた。
【図面の簡単な説明】
【図1】座標系の設定を示す図
【図2】補正係数k1 を説明する図
【図3】ハードウェアによる座標の変換手順を説明する図
【図4】PCIバス基板に搭載される回路ブロックを示す図
【符号の説明】
1 CCDカメラ
2 魚眼レンズ
35 第1座標演算部
36 第2座標演算部
37 第1ルックアップテーブル
38 第2ルックアップテーブル
40 演算部

【特許請求の範囲】
【請求項1】 魚眼レンズを用いて撮像された魚眼画像を表示用の平面画像に変換するための画像変換用演算装置であって、前記平面画像の座標を魚眼撮像面の仮想物体面へ投影した第1投影座標を求めるための第1座標演算部と、この第1座標演算部により求めた前記第1投影座標を前記魚眼撮像面へ投影した第2投影座標を求めるための第2座標演算部とを備えたことを特徴とする画像変換用演算装置。
【請求項2】 前記第1及び第2座標演算部は、演算のための論理回路がパイプライン方式により構成されていることを特徴とする請求項1に記載の画像変換用演算装置。
【請求項3】 前記演算のための論理回路は、加減算、乗算、平方根の演算を行なう場合に限定し、除算及びその他の関数演算はルックアップテーブルにより対応するように構成されていることを特徴とする請求項2に記載の画像変換用演算装置。
【請求項4】 前記第2座標演算部は、前記第1投影座標に所定の係数を乗算して前記第2投影座標を求めるものであり、前記所定の係数が前記ルックアップテーブルにより求められるように構成されていることを特徴とする請求項3に記載の画像変換用演算装置。

【図1】
image rotate


【図2】
image rotate


【図3】
image rotate


【図4】
image rotate


【公開番号】特開2000−235645(P2000−235645A)
【公開日】平成12年8月29日(2000.8.29)
【国際特許分類】
【出願番号】特願平11−34770
【出願日】平成11年2月12日(1999.2.12)
【出願人】(593076194)株式会社アドバネット (4)
【出願人】(596010382)株式会社リオスコーポレーション (1)
【出願人】(594066648)有限会社フィット (2)
【Fターム(参考)】