説明

画像処理システム、画像処理装置、収差補正方法及びプログラム

【課題】
収差に起因した結像位置のずれの補正に際して画素の座標変換に用いるテーブル(座標変換前後の位置の対応関係を保持)のサイズを小さくしても、座標変換誤差を低減させられるようにした技術を提供する。
【解決手段】
画像の画素を座標変換することによって光学系で生じる収差を補正する画像処理システムであって、座標変換前後の画素の位置の対応関係を保持するテーブルを有し、当該テーブルから変換対象となる代表点の座標に対応する変換後の座標を取得し、当該取得した代表点間の画素の変換後の座標をラグランジュ補間式を用いた補間演算によって算出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、光学系の収差を補正する画像処理システム、画像処理装置、収差補正方法及びプログラムに関する。
【背景技術】
【0002】
近年、現実世界と仮想世界とをリアルタイム且つシームレスに融合させる技術として複合現実感、いわゆるMR(Mixed Reality)技術が知られている。MR技術の1つに、ビデオシースルー型HMD(Head Mounted Display:以下、HMDと呼ぶ)を利用する技術が知られている。この技術では、HMD装着者の瞳位置から観察される被写体と略一致する被写体をビデオカメラなどで撮像し、その撮像画像にCG(Computer Graphics)を重畳表示する。これにより、HMD装着者は、複合現実画像を観察できる。
【0003】
ビデオシースルー型HMDでは、CCD等の電荷結合素子により被写体を撮像し、その被写体のデジタル画像データを得るとともに、CG画像を重畳したMR画像(複合現実画像)を液晶等の表示デバイスを介して装着者(ユーザ)に表示する構成になっている。
【0004】
このような頭部に装着するHMDは、小型化・軽量化が望まれている。撮像及び表示の光学系に関しても、一般的にはサイズや重量が増大する光学的なアプローチにより各種収差を補正する方式よりも、信号処理による電子的な補正を施す方式を選び、廉価なレンズの採用やレンズ枚数を減らす取り組みがなされている。
【0005】
このようにレンズを廉価にしたり、レンズの枚数を抑えたりして光学系を構成する場合、レンズの収差に起因し、表示する画像の画質を良好に保持できないおそれがある。すなわち、レンズの歪曲収差に起因して、樽型の像が得られたり、糸巻型の像が得られたりする。また、レンズの倍率色収差に起因して、被写体像の境界部分に赤や青や緑の色にじみが生じる。このため、上記のようなレンズの収差に起因した被写体像の画質低下を補正する技術が望まれている。
【0006】
光学系の各種収差の内、歪曲収差と倍率色収差とを信号処理によって補正する技術が開示されている。主な手法として大きく3種類あり、その概要を以下に説明する。
【0007】
一つ目は、アドレス変換による歪曲収差、倍率色収差の補正処理である。アドレス変換は、撮像系の光学系において、理想的な光学系で得られる結像位置と実際の収差の影響を受けた結像位置との対応関係に基づき、歪んだ画像を理想的な画像位置へと移動する手法である。変換後の位置に関する対応関係をテーブル化し、単にメモリの読み出しと書き込みとの対応関係(アドレス)を変換するものから、精度の高い変換後の座標データを保持するものまで様々である。表示系においても表示する画素と実際に表示される位置との対応関係によって表示位置を変換する。このように画素の変換を行えば画像の歪みである歪曲収差を補正でき、また、画素を構成する色毎に変換を行えば色ずれである倍率色収差を補正できる。
【0008】
二つ目は、解像度変換による倍率色収差の補正処理において、色によって変倍率が異なることを利用して基準となる色に対して、拡大、縮小処理を適用することで色にじみの少ない画像が得られる。
【0009】
三つ目は、多項式を利用した歪曲収差、各色の歪曲収差補正による倍率色収差の補正処理において、補正パラメータを係数とする高次の多項式で近似を行ない、変換後の座標群を算出するものである。
【0010】
上述したアドレス変換は、比較的汎用性が高く、また座標の変換精度を高くできる技術として知られている。但し、変換後の座標との対応関係を格納した参照テーブルのサイズは元となる画像のサイズや変換精度に依存し、昨今の高解像、高画質の流れの中ではテーブルサイズも肥大化している。このため、参照テーブルには、対応する全ての変換点の情報を納めるのではなく、間引きを行った代表点を格納し、その間の座標値は代表点間の補間処理によって算出する構成が一般的に採られている。
【0011】
また、色ずれを補正する色収差補正の場合は、複数色のうちの一色を基準色とし、他の色については基準色との差分を格納する構成や、光学系の対称性を利用してテーブルを削減する構成が知られている(特許文献1)。
【0012】
ここで、画像に対して左右や上下が対象であれば、対象部分の参照値を一方向側から生成することが可能なため、テーブルサイズを半減させることが可能となる。更には、上下左右とも対称であれば(回転対称系であれば)1/4に低減することも可能である。
【0013】
代表点間の補間処理として良く用いられるのが線形補間(一次補間)である。代表点の間隔をそれほど広く採らなければ、補間時の誤差を少なくすることが可能である。同じ代表点の間隔であれば、高次の補間式を採用することで一般的にはより補間誤差を小さくすることができる。また、従来、HMDで採用されることの多いSVGAからSXGAクラスの表示画像サイズにおいては、8画素から16画素間隔程度であれば採用する補間アルゴリズムによらず、見た目に良好な補間演算を行なうことができる。但し、それ以上の間隔で間引きを行なうと補間時の誤差が大きくなる。座標変換時の補間処理として双三次補間であるバイキュービック(Bicubic)を使用することで、より高精度の収差補正を実現する構成も知られている(特許文献2)。
【特許文献1】特開平8−205181号公報
【特許文献2】特開2004−153323号公報
【発明の開示】
【発明が解決しようとする課題】
【0014】
しかしながら、上述した従来の技術においては、以下のような問題があった。
【0015】
上述した通り、アドレス変換によって必要な精度を実現するためには、ある程度の間隔で代表点を設ける必要であった。上述した通り、SXGAの解像度(画像サイズ)では、補間アルゴリズムとして線形補間を用いて16画素間隔より大きくすると変換精度が落ちてしまう場合が多い。また、より精度を求めるため、上述した高次の多項式を利用してもよいが、この場合、10次以上の次数となることもあり、リアルタイム性を求められるHMDでは演算に多くの乗算器が必要となり、回路規模が飛躍的に増大してしまう。
【0016】
撮像系デバイスや表示系デバイスは、HMDのみならず、その解像度の向上が求められており、今後更に参照テーブルのサイズが増え、テーブルを構成するメモリへのアクセス頻度も高まる傾向にある。そのため、テーブルサイズの削減と変換精度の維持向上との両立はますます難しくなることが予想される。
【0017】
双方のバランス、すなわち、回路規模や変換精度のバランスを考慮すると、特許文献2に記載されるように、三次式であるバイキュービックを採用する方法が考えられる。しかし、この場合、均一な媒質、屈折率を持つ光学レンズ、プリズムであれば、その形状、結像回数、レンズ枚数によらず、収差による結像位置のずれは、どの位置においても非常に滑らかに変化する傾向となる。バイキュービックは、画像の補間演算において高画質な処理を実現することが知られているが、これは線形補間(バイリニア)に比べて参照点数が多いこと、画像の尖鋭度を高める効果を持つことの2つの理由による。
【0018】
座標変換時の補間処理においては、その恣意的な尖鋭効果を生む補間曲線の採用によって、線形補間(一次補間)と比べ、座標変換誤差が大きいことが確認されている。これは滑らかに変化する結像位置のずれの補間には、バイキュービック補間が向いていないことを示している。
【0019】
このことから理想的には高次の多項式並の変換誤差に納めることを実現しつつ、代表点間隔を広げられる、すなわち、現実的な回路構成、テーブルサイズ(メモリ容量)で納まる補間処理の方式が望まれている。
【0020】
本発明は、上記課題に鑑みてなされたものであり、収差に起因した結像位置のずれの補正に際して画素の座標変換に用いるテーブルのサイズを小さくしても、座標変換誤差を低減させられるようにした技術を提供することを目的とする。
【課題を解決するための手段】
【0021】
上記目的を達成するため、本発明の一態様は、画像の画素を座標変換することによって光学系で生じる収差を補正する画像処理システムであって、座標変換前後の画素の位置の対応関係を保持するテーブルと、前記テーブルから変換対象となる代表点の座標に対応する変換後の座標を取得する取得手段と、前記取得手段により取得された代表点間の画素の変換後の座標をラグランジュ補間式を用いた補間演算によって算出する座標算出手段とを具備することを特徴とする。
【0022】
また、本発明の一態様は、画像の画素を座標変換することによって光学系で生じる収差を補正する画像処理装置であって、座標変換前後の画素の位置の対応関係を保持するテーブルから変換対象となる代表点の座標に対応する変換後の座標を取得する取得手段と、前記取得手段により取得された代表点間の画素の変換後の座標をラグランジュ補間式を用いた補間演算によって算出する座標算出手段とを具備することを特徴とする。
【0023】
また、本発明の一態様は、画像の画素を座標変換することによって光学系で生じる収差を補正する収差補正方法であって、座標変換前後の画素の位置の対応関係を保持するテーブルから変換対象となる代表点の座標に対応する変換後の座標を取得する取得工程と、前記取得工程で取得された代表点間の画素の変換後の座標をラグランジュ補間式を用いた補間演算によって算出する座標算出工程とを含むことを特徴とする。
【0024】
また、本発明の一態様によるプログラムは、画像の画素を座標変換することによって光学系で生じる収差を補正する画像処理装置に内蔵されたコンピュータを、座標変換前後の画素の位置の対応関係を保持するテーブルから変換対象となる代表点の座標に対応する変換後の座標を取得する取得手段、前記取得手段により取得された代表点間の画素の変換後の座標をラグランジュ補間式を用いた補間演算によって算出する座標算出手段として機能させる。
【発明の効果】
【0025】
本発明によれば、収差に起因した結像位置のずれの補正に際して画素の座標変換に用いるテーブル(座標変換前後の位置の対応関係を保持)のサイズを小さくしても、座標変換誤差を低減させられる。
【発明を実施するための最良の形態】
【0026】
以下、本発明に係わる画像処理システム、画像処理装置、収差補正方法及びプログラムの一実施の形態について添付図面を参照して詳細に説明する。なお、本実施形態においては、本発明に係わる画像処理システムを適用したMRシステムを例に挙げて説明する。
【0027】
(実施形態1)
図1は、MRシステムの全体構成の一例を示す図である。
【0028】
複合現実感、いわゆるMR技術は、現実世界と仮想世界とをリアルタイム且つシームレスに融合させる技術として知られている。MR技術では、撮像機能付表示装置(以下、HMDと略す)を利用する。
【0029】
HMDは、その撮像ユニット203により取得した装着者視点の現実空間の背景画像に、装着者の位置、方向などの三次元位置姿勢情報に基づいて生成されたCG画像を重畳し、その合成画像を表示ユニット208に表示する。その結果、HMD装着者は、CGで描画されたオブジェクトが、観察している現実空間内にあたかも存在しているかのような複合現実感を体感することができる。なお、図1には、頭部装着型タイプのHDMが示されているが、これに限られない。例えば、双眼鏡のような手持ちタイプであってもよい。
【0030】
ここで、MRシステムは、HMD101、画像処理装置103を具備して構成される。HMD101は、撮像ユニット203と、表示ユニット208とを具備して構成される。撮像ユニット203は、装着者の観察している現実空間の画像を撮像する。表示ユニット208は、撮像した現実空間画像、画像処理装置103からの出力画像、又は画像処理装置103により生成したCG画像を現実空間画像に重畳した合成画像、などをHMD装着者に向けて表示する。HMD101は、画像処理装置103と通信を行なう機能や、画像の解像度変換、色空間変換、光学系の歪み補正を含む各種画像処理や、伝送フォーマットの変換等を行なう機能を有する。なお、HMD101は、外部(例えば、画像処理装置103)からの電源供給を受けて駆動する構成であってもよいし、自装置に装着されたバッテリーからの電源供給を受けて駆動する構成であってもよい。
【0031】
画像処理装置103は、CG画像の描画を行なうCG描画部211と、現実空間画像とCG画像を合成する画像合成部213とを具備して構成される。画像処理装置103は、HMD101と通信を行なう。この通信により、HMD101は、合成画像を受信し、表示ユニット208において、その合成画像を表示する。
【0032】
以上が、本実施形態に係わるMRシステムの全体構成の一例についての説明である。なお、図1に示す構成は、あくまで一例であり、これに限られない。例えば、HMD101において、解像度変換、色空間変換、光学系の歪み補正を含む各種画像処理や伝送フォーマットの変換等の処理を行なう構成となっていたが、図2に示すように、これら機能の一部又はその全てを別装置(コントローラ102)に実現してもよい。この場合、HMD101と、画像処理装置103とは、このコントローラ102を介してデータの授受を行なうことになる。なお、勿論、このコントローラ102が果たす機能の一部又はその全てを画像処理装置103側に実現してもよい。すなわち、これら装置各々が果たす機能は、必ずしも上記図示した通りに実現される必要はなく、システム内におけるいずれかの装置にその一部又はその全てが実現されていればよい。また、図1では、各々の装置は、有線で接続されているが、これらの一部又はその全てを無線で接続するようにしてもよい。
【0033】
図3は、図1に示すHMD101及び画像処理装置103における機能的な構成の一例を示す図である。
【0034】
HMD(ビデオシースルー型)101は、撮像ユニット203と、表示ユニット208と、I/F206と、三次元位置姿勢センサ205と、撮像系収差補正部204と、表示系収差補正部207とを具備して構成される。
【0035】
撮像ユニット203は、HMD装着者の視線位置と略一致する外界の観察画像を撮像する。撮像ユニット203は、例えば、ステレオ画像を生成するための右目用及び左目用の2組の撮像素子と、光学系(以下、撮像光学系と呼ぶ)と、後述する画像処理を行なうための信号処理回路とから構成される。すなわち、撮像ユニット203による撮像は、撮像光学系により撮像素子上に撮像画像を結像させることで行なわれる。
【0036】
撮像系収差補正部204は、撮像光学系で生じる収差を補正する。収差は、光学系を介した光が理想的な結像位置とずれることにより生じ、この収差を起因にして、例えば、撮影画像の画質低下等を招いてしまう。なお、この収差を補正する処理の詳細については後述する。
【0037】
三次元位置姿勢センサ205は、HMD装着者の位置姿勢情報を得るセンサである。センサとしては、例えば、磁気センサやジャイロセンサ(加速度、角速度)が用いられる。三次元位置姿勢センサ205は、画像処理装置103(詳細には、位置姿勢情報生成部210)に向けてセンサ出力する。なお、撮像画像のみに基づいて位置姿勢情報を取得するように構成した場合には、三次元位置姿勢センサ205は省略してもよい。
【0038】
I/F206は、撮像ユニット203で撮像された画像を画像処理装置103に伝送したり、また、合成されたMR画像を画像処理装置103からHMD101へ伝送したりする。I/F206は、HMD101と画像処理装置103との間のデータ通信を行なう際にインターフェースとして機能するものである。このI/F206は、画像処理装置103側に設けられているI/F209と同様の機能を果たす。なお、I/F206、I/F209の何れについても、リアルタイム性が求められるため、大容量の伝送が可能な通信規格を採用することが望ましい。有線系であれば、USB(Universal Serial Bus)やIEEE1394のメタル線、GigabitEthernet(登録商標)等の光ファイバが使用される。無線系であれば、IEEE802.11のワイヤレスLAN、IEEE802.15のワイヤレスPAN規格等に準拠した高速無線通信が使用される。本実施形態においては、有線系であれば光ファイバ、無線系であればUWB(Ultra Wide Band)を想定している。なお、光ファイバの伝送帯域は数Gbpsであり、UWBの伝送帯域は数百Mbpsである。
【0039】
表示ユニット208は、合成されたMR画像を表示する。表示ユニット208は、例えば、右目用及び左目用の2組の表示デバイスと、光学系(以下、表示光学系と呼ぶ)とから構成される。表示ユニット208による表示は、表示光学系により表示画像を(拡大して)HMD装着者の瞳位置に結像させることで行なわれる。なお、表示デバイスには、例えば、小型の液晶ディスプレイやMEMS(Micro Electro Mechanical System)による網膜スキャンタイプのデバイスが使用される。なお、光学系の構成については後述する。
【0040】
表示系収差補正部207は、表示光学系で生じる収差を補正する。表示系収差補正部207における処理内容は、撮像系収差補正部204と同様となる。以上が、HMD101についての説明である。
【0041】
画像処理装置103は、例えば、パソコンやワークステーション等の高性能な演算処理機能や、グラフィック表示機能を有して構成される。画像処理装置103は、例えば、HMD101から受け取った撮像画像から位置姿勢情報を生成し、その位置姿勢情報に基づいてCG画像を生成するとともに、そのCG画像と撮像画像とを合成する。
【0042】
ここで、画像処理装置103は、I/F209と、位置姿勢情報生成部210と、CG描画部211と、コンテンツDB(Database)212と、画像合成部213とを具備して構成される。
【0043】
I/F209は、画像処理装置103とHMD101との間のデータ通信を行なう際にインターフェースとして機能する。なお、機能的には、HMD101内のI/F206と同様となる。
【0044】
位置姿勢情報生成部210は、HMD装着者の位置姿勢情報を生成する。例えば、HMD101から受け取った撮像画像からマーカーや、マーカーの代わりとなる特徴点を抽出し位置姿勢情報を生成する。不図示の客観視点による撮像画像や、HMD101に取り付けられた三次元位置姿勢センサ205による情報を補足的に使用することで精度を上げ、撮像画像中に使用すべきマーカーや特徴点がない場合であっても位置姿勢情報を生成できる。
【0045】
コンテンツDB212は、仮想画像のコンテンツを格納し、仮想空間を構成する各仮想物体に係るデータを保持するデータベースである。仮想物体に係るデータは、例えば、仮想物体の配置位置姿勢や、その動作則を示すデータを含む。なお、仮想物体がポリゴンで構成されている場合には、各ポリゴンの法線ベクトルデータやその色データ、ポリゴンを構成している各頂点の座標位置データ等も含まれる。また、仮想物体にテクスチャマッピングを施す場合には、テクスチャデータも含まれる。
【0046】
CG描画部211は、コンテンツDB212に保持されている仮想物体各々に係るデータを用いて、仮想物体各々を仮想空間中に配置した仮想空間を描画する。描画した仮想空間において、観察者の視点から見える仮想画像(CG画像と呼ぶ場合もある)を生成する。なお、所定の位置姿勢を有する視点から見える仮想空間の画像を生成する処理については周知であるので、これに関する詳細な説明については省略する。
【0047】
画像合成部213は、背景画像として描画された撮像画像と、CG画像とを合成する。画像合成部213により合成されたMR画像は、I/F209を介してHMD101側に送られ、表示されることになる。
【0048】
ここで、本実施形態に係わるMRシステムの説明を分かり易くするために、HMD装着者にMR画像を表示する際の処理の流れについて簡単に説明する。
【0049】
HMD101は、撮像ユニット203において、HMD装着者の視線位置と略一致する外界の観察画像を撮像する。この撮像された撮像画像は、撮像系収差補正部204において、撮像光学系の収差が補正された後、I/F206を介して画像処理装置103へ送られる。
【0050】
画像処理装置103では、位置姿勢情報生成部210において、撮像画像内の識別用マーカーや、その他の特徴量に基づき、HMD101の位置姿勢情報を算出する。その後、画像処理装置103は、CG描画部211において、前述した位置姿勢情報に基づいてCG画像を生成するとともに、画像合成部213において、CG画像と、撮像画像とを重畳し、合成画像であるMR画像を生成する。このMR画像は、I/F209を介して画像処理装置103からHMD101へ送られる。HMD101は、表示系収差補正部207において、撮像系同様に、表示光学系の収差を補正し、表示ユニット208において、その補正後の画像を表示する。
【0051】
以上の構成及び処理プロセスにより、収差の補正された撮像画像や表示画像を得ることができるため、好ましい画像を使用者の瞳に導くことが可能となる。
【0052】
図4は、図1に示す画像処理装置103に内蔵されるコンピュータのハードウェア構成の一例を示す図である。なお、図3を説明した機能的な構成と同一のものには、同一の符号を付してあり、その説明については省略する。
【0053】
コンピュータは、そのハードウェア構成として、CPU301と、RAM302と、ROM303と、操作部304と、表示部305と、外部記憶装置306と、I/F209とを具備して構成される。
【0054】
CPU301は、RAM302やROM303に格納されているプログラムやデータを用いて、コンピュータ全体の制御を行なう。すなわち、画像処理装置103における処理を統括制御する。
【0055】
RAM302は、外部記憶装置306からロードされたプログラムやデータ、I/F307を介して外部(例えば、HMD101)から受信したデータ等を一時的に記憶する。また、CPU301が各種処理を実行する際にはワークエリアとして利用される。ROM303は、設定データやブートプログラム(BIOS)等を格納する。
【0056】
操作部304は、例えば、キーボードやマウス等で構成され、操作者からの入力操作を装置内に入力する。これにより、操作者は、CPU301に対して各種指示を入力することができる。
【0057】
表示部305は、例えば、CRT(Cathode Ray Tube)や液晶画面等で構成され、各種画面を表示する。すなわち、CPU301やグラフィックスボード(不図示)による処理結果を画像や文字をもって操作者へ提示する。
【0058】
外部記憶装置306は、ハードディスクドライブ装置等に代表される大容量情報記憶装置である。外部記憶装置306には、OS(Operating System)や、CPU301に実行させるためのプログラムやデータが格納される。これらプログラムやデータは、CPU301による制御に従って適宜RAM302にロードされる。バス308は、コンピュータの各部を繋ぐ。
【0059】
図5は、図1に示すHMD101のハードウェア構成の一例を示す図である。なお、図3を説明した機能的な構成と同一のものには、同一の符号を付してあり、その説明については省略する。
【0060】
HMD101は、そのハードウェア構成として、撮像ユニット203と、表示ユニット208と、RAM403と、ROM404と、三次元位置姿勢センサ205と、CPU406と、I/F206と、収差補正LSI408とを具備して構成される。
【0061】
CPU406は、HMD101の初期設定を始め、各種デバイスを制御するプログラムを実行し、HMD101全体を制御する。
【0062】
RAM403は、CPU406が各種処理を実行する際にワークエリアとして用いられ、また、I/F206を介して外部(例えば、画像処理装置103)から受信したデータを一時的に記憶するためのエリアとして用いられる。ROM404は、CPU406に実行されるプログラムやデータが格納される。バス409は、HMD101の各部を繋ぐ。
【0063】
収差補正LSI(Large Scale Integration)408は、収差(例えば、歪曲収差や倍率色収差)の補正処理を行なう専用集積回路(ASIC)である。すなわち、図3に示す撮像系収差補正部204及び表示系収差補正部207は、この集積回路により実現される。なお、本実施形態においては、専用集積回路により収差を補正する場合を例に挙げて説明するが、信号処理プロセッサであるDSP(Digital Signal Processor)によってソフト的にこの機能を実現するようにしてもよい。
【0064】
ここで、まず、図6を用いて、歪曲収差、倍率色収差の概要について説明する。
【0065】
図6(A)は歪曲のない状態、図6(B)は歪曲した状態、図6(C)は歪曲に加えて倍率色収差の生じた状態を示している。図6(C)においては、RGB三原色の内、Greenを実線で示し、Redを破線で示し、Blueを一点鎖線で示している。これはRed、Green、Blueの各波長によってレンズでの屈折率が異なるためである。撮像光学系では、Greenの像に対して、Redの像は外側、Blueの像は内側に結ぶ現象が起こり、白黒の被写体であってもその像のエッジに色にじみ(色ずれ)が生じる。カラー画像の被写体であっても、境界領域等の色味が変わるエッジ部分では同様の色にじみが生じる。
【0066】
実レンズにおける結像においては、図6(A)のような図形を撮像した場合、図6(C)のように画像が歪み、また、色によって結像位置(倍率)が異なる(ずれる)現象が生じる。単色における前者を歪曲収差と呼び、色の違いによる倍率の差を倍率色収差と呼ぶ。
【0067】
光の屈折は、波長が短いほど顕著になり、上記の凸レンズをイメージした撮像光学系では、外側に赤色がずれるが、拡大光学系である表示光学系では逆に、青色が外側にずれることになる。電子的な収差補正処理では、ずれる方向と逆方向にずれるように補正を行なうことになる。例えば、表示光学系の収差補正であれば、青色を内側に、赤色を外側に配置するような画像を形成することで光学系の収差と相殺して瞳位置では各色ずれのない好ましい画像を得る。
【0068】
次に、図7、図8を用いて、光学系の概要について説明する。図7は、撮像光学系の光路断面図を示し、図8は、表示光学系の構成を示している。
【0069】
701は、(小型の)表示パネルを示しており、このパネル上には、操作者に提示する画像が形成される。表示パネル701は、例えば、TFT液晶や有機EL等で構成される。表示パネル701がTFT液晶で構成される場合は、不図示のバックライトを光源とした光を各色のフィルタを経由して照射する構成となる。表示パネル701が有機ELデバイスで構成される場合は、自発光であるためバックライトは不要である。
【0070】
702は、自由曲面プリズムであり、(小型の)表示パネル701からの光線を拡大し瞳に導く。自由曲面プリズム702は、単なるレンズと比べて薄型、小型化を実現することができる。703は、表示パネルで形成した画像の結像位置を示している。この位置に瞳を持ってくることで、表示パネル701の画像が拡大された表示画像を操作者に観察させることができる。
【0071】
以上が、光学系の概要についての説明である。なお、光学系で生じる各種収差は、一般に、複数のレンズ群によってその影響を抑えるが、HMDの小型化するためには、光学系の簡略化や小型・軽量化が欠かせない。そのため、各種収差を電子的に補正する協調システムの設計が有用となる。
【0072】
図9は、図5に示す収差補正LSI408における機能的な構成の一例を示す図である。すなわち、撮像系収差補正部204、表示系収差補正部207各々において実現される機能的な構成の一例が示される。
【0073】
収差補正LSI408は、バッファ801と、色分離部802と、収差補正テーブル803と、補正値取得部804と、座標算出部805と、補間処理部806〜808と、色結合部809とを具備して構成される。
【0074】
バッファ801は、RGBの色成分を持つ画素からなる画像データを格納する。色分離部802は、バッファから所望の座標(アドレス)の画素の値を読み出し、RGBの色成分に分離する。
【0075】
収差補正テーブル803は、座標変換前後の画素の位置の対応関係を保持する。具体的には、変換対象となる代表点(以下、参照点と呼ぶ場合もある)の座標に対応する変換後の座標値を算出するための補正値が格納されている。収差補正テーブル803は、容量削減のため、特定色については変換後の座標を格納しているが、特定色以外の色については、この特定色を基準とした差分を格納している。なお、収差補正テーブル803の詳細については、後述する。
【0076】
補正値取得部804は、各色の補正値を取得する。表示する画素の参照点を決定し、参照点が変換される座標を参照テーブル、すなわち、収差補正テーブル803から読み出す。なお、補正値取得部804では、参照点の座標と対応する変換座標を算出するための補正値を読み出す。
【0077】
座標算出部805は、補正値取得部804により取得された補正値に基づいて各色の変換後の座標を演算する。座標算出部805では、ラグランジュ補間式を用いた補間演算によって変換後の座標を求める。
【0078】
補間処理部806、807及び808は、変換後の座標と、元の画素のそれぞれの色の値とに基づいて補間位置における新たな色情報を算出する。補間処理部806は、Greenについて新たな色情報を算出し、補間処理部807は、Redについて新たな色情報を算出し、補間処理部808は、Blueについて新たな色情報を算出する。なお、ここで言う補間位置とは、表示光学系であれば表示パネル上の画素位置を示す。
【0079】
色結合部809は、補間処理部806〜808でそれぞれ求められた補間位置における新たな色情報に基づいて表示画素における色情報を結合する。例えば、各色8ビットの入力データが存在する場合には、変換後の画素の結合により合計24ビットの画素データを出力する。
【0080】
以上が、収差補正LSI408における機能的な構成についての説明である。なお、図9では、不図示であるが、ローパスフィルタやフォーマット変換部を設け、前処理を行なうようにしてもよい。ローパスフィルタは、高周波成分を除去できるため、ローパスフィルタを設けた場合には、折り返し歪みの影響を低減させることができる。また、フォーマット変換部は、収差補正処理が可能なフォーマットに入力画像を変換する。フォーマット変換では、例えば、輝度と色差信号とが入力である場合は、画素を各色成分に構成し直す処理を行なう。フィルタによる強調処理や色味の補正及びその後の画像フォーマットへ変換する後処理も必要に応じて追加してもよい。
【0081】
図10は、図9に示す収差補正テーブル803の一例を示す図である。
【0082】
収差補正テーブル803には、変換前座標である参照位置のアドレスと、変換後の座標(アドレス)の差分値とが対応して格納されている。参照するアドレスによって所望の画素のX−Y座標を指定することによって、基準色(本実施形態においてはG)については、変換後の座標を得ることができ、また基準色以外の他色(RとB)については、基準色との差分値(テーブル格納値)を得ることができる。Rの座標は、格納されているGとの差分値901(Gx―Rx)と、Gの変換後の座標Gxとから求めることができ、Bの座標は、格納されているGの差分値902(Bx―Gx)と、Gの座標Gxとから求めることができる。
【0083】
以上が、収差補正テーブル803の一例についての説明である。なお、本実施形態では、変換前の座標についてもテーブルに保持する場合を例に挙げて説明するが、これに限られない。例えば、変換前の座標をメモリアクセス時のアドレスと対応付けるようにすれば、変換前の座標をテーブルに保持する必要がなく、メモリサイズを削減できる。
【0084】
図11は、図5に示す収差補正LSI408において収差を補正する際の処理の流れ一例を示すフローチャートである。なお、この処理は、図3に示す撮像系収差補正部204、表示系収差補正部207各々において実施されることになる。
【0085】
ステップS1001では、収差補正LSI408は、収差補正の前段として前処理を実施するか否かを判断する。ここでいう前処理とは、モアレ除去のためのローパスフィルタ適用や色収差補正が適用できる画像フォーマットへの変換処理などが含まれる。前処理を行なう場合は、ステップS1002の処理に進み、前処理を行わない場合は、ステップS1003の処理に進む。
【0086】
ステップS1002では、収差補正LSI408は、収差補正の前段である前処理を実施する。
【0087】
ステップS1003では、収差補正LSI408は、色分離部802において、RGBの三原色で構成される画素の情報を各色プレーン、色毎に分離する。なお、本実施形態においては、RGBの三原色で分離しているが、収差補正テーブル自体が他の色のずれ量を示す補正データで構成されていれば、RGB以外の色に分離するようにしてもよい(例えば、補色系のCMYK等)。
【0088】
ステップS1004では、収差補正LSI408は、座標算出部805において、詳細については後述するが、座標変換処理を実施する。座標変換処理では、例えば、各画素の色毎にどの位置へ結像位置がずれるのか、又は理想的な結像位置へ導くためには、どこに画素を配置すればよいのかを計算し、変換後の座標を導出する。
【0089】
ステップS1005では、収差補正LSI408は、補間処理部806〜808において、詳細については後述するが、画素補間処理を実施する。画素補間処理では、例えば、ステップS1004の処理で得られた変換座標と参照画素が持つ画素情報とに基づいて新たな構成位置(補間位置)における画素の値を再構成する。例えば、表示パネル上では、予め規定された画素位置にしか画素を表示できないため、これに合わせて画素の値を再構成する。
【0090】
ステップS1006では、収差補正LSI408は、色結合部809において、新たな画素の色情報の再結合を行なう。なお、この色情報の再結合は、色毎に座標変換、画素補間された画素の色情報に基づいて行なわれる。
【0091】
ステップS1007では、収差補正LSI408は、収差補正処理の後段として後処理を実施するか否かを判断する。後処理としては、例えば、強調処理や色補正を等が挙げられる。後処理を行なう場合は、ステップS1008の処理に進み、後処理を行なわない場合は、この処理を終了する。
【0092】
ステップS1008では、収差補正LSI408は、収差補正後の画像に対して後処理を実施する。その後、この処理は、終了する。
【0093】
図12は、図11に示すステップS1004における座標変換処理の流れの一例を示すフローチャートである。
【0094】
ステップS1101では、収差補正LSI408は、座標算出部805において、補間画素のアドレスとなる補間位置の座標を指定する。
【0095】
ステップS1102では、収差補正LSI408は、座標算出部805において、参照画素の座標を指定する。ここでは、補間位置の座標の指定後、参照画素を指定しているが、この処理順序は特に問わず、ステップS1101の処理とステップS1102の処理との順番は入れ替えてもよい。
【0096】
ステップS1103では、収差補正LSI408は、座標算出部805において、参照点の変換後のアドレスを得るために必要な補正値を収差補正テーブル803から取得する。
【0097】
ステップS1104では、収差補正LSI408は、座標算出部805において、ステップS1103の処理で得られた収差補正テーブル803に格納されている値に基づいて参照画素におけるそれぞれの色の変換後の座標を取得する。すなわち、歪曲収差であれば画素のずれに基づいて参照画素におけるそれぞれの色の変換後の座標を取得する。また、収差補正テーブル803に格納されている値が、色収差であれば各色の変換後の座標を算出するための色ずれ量に基づいて参照画素におけるそれぞれの色の変換後の座標を取得する。ここで、収差補正テーブル803に格納されている値、すなわち、参照点は、間引きされた代表点の値(代表値)であるため、その間の値は、補間演算によって算出することになる。この補間演算についての詳細は、後述するが、例えば、ラグランジュ補間式の三次式までを適用して演算を行なう。
【0098】
ステップS1105では、収差補正LSI408は、座標算出部805において、処理対象となる全画素に対して座標変換処理を実施したか否かを判断し、全画素に対して処理が終了している場合は、この座標変換処理を終了する。終了していない場合は、ステップS1101に戻り、再度、上述した処理を繰り返し実行する。
【0099】
次に、ラグランジュ補間式を用いた補間演算について説明する。
【0100】
図13は、ラグランジュ補間曲線の一例を示す図である。図13は、ラグランジュ補間式で表される曲線の他、比較用の補間曲線及び直線を示す模式図である。波線として示されている1201は、線形補間(一次補間)のリニア直線であり、一点鎖線で示されている1202は、三次補間曲線の中でも尖鋭度の高いバイキュービック補間曲線であり、実線で示されている1203が今回対象となるラグランジュ補間曲線である。軸上の数値は、画素間隔で正規化した値である。周囲の参照点と新たなポイント(補間点)とにおける関係式は、それぞれ以下で示される。なお、補間演算の概念については後述する。
【0101】
【数3】

【0102】
この関係式に示されるように、ラグランジュ補間曲線は、同じ双三次補間曲線であるバイキュービックと比べて、線形補間に近いカーブを描く曲線となる。これは、画像に対してこの補間曲線を適用した補間処理を行った場合には尖鋭度が低くなることになり、つまり、ぼけた画像になることを示している。バイキュービックは、補間曲線として有名なsinc関数に近い軌跡を描く。
【0103】
図14は、画像に対して適用した際の尖鋭度を示す曲線と線形補間直線とに囲まれる部分の面積との関係の一例を示す図である。ここでは、バイキュービック補間曲線を一例として示している。斜線で示されている1204は、各軸と線形補間直線とに囲まれる部分であり、面積は0.5となる。これに対してバイキュービックは、xが1までの間は直線より上に、1と2の間では直線より下に軌跡を描く。このとき、0≦x≦1の範囲で曲線と直線とに囲まれる部分の面積を1205、1≦x≦2の範囲で曲線と直線とに囲まれる部分の面積を1206とすると、それぞれの面積は、各区間内の定積分として求めることができる。
【0104】
以下にバイキュービックとラグランジュにおける面積の計算式とその値を示す。
【0105】
【数4】

【0106】
この結果を参照して分かるように、面積1205及び面積1206は共に、0.042以下の数値となり、同じ値(0.041666...)となる。画像に対する補間処理においては、面積1205及び面積1206の値が大きいほど尖鋭効果を生む結果となる。逆に、座標変換時の補間処理のように連続性が求められる処理においては、数値が大きいほど変換誤差が大きくなる傾向にある。何れの曲線、直線もx=1に変曲点を持つが、三次曲線では比較的滑らかにつながる。線形補間直線は、変換誤差の点では理想的に見えるが、変曲点による不連続さによって変換誤差が局所的に大きくなる傾向がある。総じて三次曲線を含めた変曲点を滑らかにつなぐ、自由曲線の方が変換の誤差が小さくなる。
【0107】
以上二つの傾向により、変換誤差が小さくなるのは線形補間直線の値に近く、かつ変曲点において滑らかなつながりを持つ曲線となる。この場合、ラグランジュ補間曲線は理想的である。
【0108】
なお、他の三次補間曲線は尖鋭度及びx=0のときの値によって以下のように分類できる。
【0109】
Bicubic、sinc: 尖鋭度 高、x=0のときy=1
Lanczos、Hermit: 尖鋭度 中、x=0のときy=1
Michell、Bell、B−Spline: 尖鋭度 小、x=0のときy≠1
このように数ある補間曲線の内、光学系の補間処理に用いて変換精度を最も小さくできる傾向を示すのはラグランジュ補間曲線であると言える。
【0110】
シミュレーションの結果として、レンズの光学設計値を用いた各種補間曲線採用時の座標変換誤差を代表点の間隔を変えたもので比較すると以下のようになる。
【0111】
【数5】

【0112】
この表に示されるように、サンプリング間隔である代表点の間隔を広げると、急激に変換精度が落ちてくるのが通常であるが、ラグランジュ補間曲線においては、変換誤差を小さくした状態を維持しているのが明らかに分かる。ここでは、比較対象として12次の係数を持った多項式近似による結果を付記しているが、64画素間隔(通常使用できる範囲の4倍程度の間隔)でもこの多項式近似と同程度の変換誤差となる。
【0113】
このように座標変換時の補間処理にラグランジュ補間曲線を採用することで、同一の代表点間隔であれば圧倒的に変換誤差を小さくすることができ、また同一の変換誤差であれば代表点間隔を大きく広げることができる。その結果、補正テーブルサイズの削減、すなわちメモリ容量を大幅に少なくすることができるとともに、メモリアクセス頻度も少なくできる。これにより、設計の自由度、回路規模の低減、引いては消費電力を下げ小型化へ寄与することができる。
【0114】
図15は、三次補間の概念を示す模式図である。ここでは、補間位置における新たな画素値算出処理である補間処理として、三次補間の概念を説明する。
【0115】
二次元の座標系における表示中心座標o(x0,y0)を原点とするレンズの歪曲収差情報、色収差情報及び解像度情報より、二次元座標系における各画素の各々の位置における位置ずれ量を求める。つまり、位置ずれ量だけ補正するためのx軸方向、y軸方向の各々の座標変換量を画素毎に求めることになる。これが座標変換処理である。
【0116】
座標変換した各画素各色の位置と色情報とを元に、二次元座標系における各画素本来の位置の画素データ(RGBの各値)を補間演算によって求める。補間演算においては、補間画素1301のx座標「sx」とy座標「sy」とを指定し、まず、参照点と補間画素との正規化された距離「px」と「py」とを求める。そして、距離「px」と「py」とを用いた重み係数を、「x」と「y」の各座標において求める。求める際に使用する三次関数が、上述した各三次式による補間曲線となり、バイキュービックであれば式(3)及び(4)、ラグランジュであれば(5)及び(6)に示す三次補間式で定義される。
【0117】
「x」、「y」のそれぞれの座標に対して上記三次式に「px」と「py」の値を代入し、参照点の重み係数を算出する。なお、「px」と「py」は正規化を行っており、例えば、参照点である代表点の間隔が16画素おきであれば、16画素の距離で正規化を行なうことになる。図15では、補間画素1301の周囲の点線で囲まれた部分が正規化された1の領域となる。すなわち、「y」と「y+1」の軸及び「x」と「x+1」の軸上に存在する4つの参照点と補間画素との距離「px」、「py」はともに、1よりも小さくなる。逆にその周りの12画素は、1と2の間の値をとる。最近傍4画素の重み付け係数演算の際に使用する三次式は、バイキュービックであれば(3)、ラグランジュであれば(5)となる。外周12画素の重み付け係数演算の債に使用する三次式は、バイキュービックであれば(4)に、ラグランジュであれば(6)となる。これらの重み係数をx方向、y方向それぞれ求めた後、参照点の画素値とこれら「x」と「y」の重み係数を掛け合わせ、その掛け合わせた値を周辺16画素で加算した値が補間画素における新たな画素値となる。
【0118】
なお、ここでは色収差補正を行なうことを前提にして、各色で座標を求め、補間演算を行なう場合を例に挙げて説明したが、歪曲収差のみ、つまり歪みの補正を行なう場合も同様である。その場合は、各色を分離せず、一つの画素として、補間演算処理を行なうことになる。
【0119】
図16は、外周データ利用の概念を示す模式図である。
【0120】
ラグランジュ補間は、その精度を上げるために、参照点の存在が必要となる。一般に、補間演算を行なう際には、その周辺領域の画素を参照する。画像領域の最外周の画素については、実際には参照する画素が存在しないため、何か参照する値を用意する必要がある。精度が余り求められない場合は、最外周の実画素を更に外側に存在する参照画素としても利用する方法がある。
【0121】
収差補正に関しては、外周部に向かうほど収差量、すなわち、光線のずれ量が増えるため、精度の高い座標変換が求められる。また、ラグランジュ補間に関しては、他の補間処理と比べて、参照画素の有無が精度に大きく影響する。そのため、ここでは、画像領域の最外周の更に外側に参照用の画素を予め準備する。
【0122】
1401a、1401b、1401cは、画像領域の最外周の参照点を示している。1402は、最外周の参照点の間に存在する参照画素の座標を示しており、これらは補間演算によって算出される。
【0123】
1403は、画像領域の更に外側に準備した参照画素である。実際にはこれらの画素は存在しないため、光学設計値を収差補正の参照値として使用する場合は、画像領域外まで設計の対象を広げることが必要となる。光線が届かない領域となる場合もあるが、こちらはシミュレーションによって理想的な状態を作り出し算出する。
【0124】
実測値を使用する場合は、この外周の参照点の座標の実測は不可能であるため、実際に存在する画素のずれ量から外周の参照点の存在を予想し、その値を使用する。実際には存在する複数の点をつなぐ曲線として高次の多項式を求め、想定される位置における座標を算出する方法などを用いればよい。このように補間処理用に存在しない外周のデータを準備しておくことで、画像領域の最外周部の座標変換時のずれ量をより正確に算出することができる。
【0125】
図17は、図11に示すステップS1005における画素補間処理の流れの一例を示すフローチャートである。
【0126】
ステップS1501では、収差補正LSI408は、補間処理部806において、新たに補間を行なう位置である座標の指定を行なう。
【0127】
ステップS1502では、収差補正LSI408は、補間処理部806において、補間位置に新たに生成する画素の周辺、すなわち、新たに生成する画素から所定範囲内にある16点の参照画素を指定する。
【0128】
ステップS1503では、収差補正LSI408は、補間処理部806において、参照画素である周辺16画素のそれぞれの座標を取得する。
【0129】
ステップS1504では、収差補正LSI408は、補間処理部806において、補間画素と各参照画素との距離を算出する。なお、距離は、代表点の間隔で正規化された値として準備する。二次元空間を対象としているため、x座標、y座標それぞれの値を求める。
【0130】
ステップS1505では、収差補正LSI408は、補間処理部806において、ステップS1504の処理で算出した距離を補間曲線又は直線に代入して各参照画素の重み係数を求める。ここでは、座標変換時の補間演算と同じ三次補間式の採用を想定しているが、線形補間(バイリニア)アルゴリズムを採用しても構わない。
【0131】
ステップS1506では、収差補正LSI408は、補間処理部806において、各参照画素の値と、x、y座標における重み係数との積を加算し、補間画素の値を演算する。その後、この処理は終了する。
【0132】
以上説明したように本実施形態によれば、光学系で生じる収差(例えば、歪曲収差、色収差)を画像の画素の座標変換により補正する際に、画素の座標変換に用いる補間演算アルゴリズムにラグランジュ補間式を用いる。これにより、変換対象となる座標の代表点の間隔を広げても、座標変換誤差を小さく抑えることができる。すなわち、収差補正テーブルのサイズを大幅に削減しても演算精度を維持できる。また逆に、通常の補間演算と同等のテーブルサイズが確保できる場合は、演算精度を向上させられる。例えば、12次の高次多項式と同程度の変換精度を満足しながら、回路規模は線形補間処理より少し大きい程度に納めることができる。この結果、回路規模の削減やメモリアクセスを低減できるため、コストダウンや小型化、更には省電力化を図ることができる。
【0133】
(実施形態2)
次に、実施形態2について説明する。なお、実施形態2における装置構成は、実施形態1を説明した図1〜図5に示す構成と同一であるため、その説明については省略し、ここでは、相違点について説明する。相違点としては、実施形態1においては、座標変換時の補間処理と、画素補間処理とを別機能ブロックとして構成していたのに対して、実施形態2においては、補間処理機能ブロックを共用する構成にした点にある。
【0134】
図18は、実施形態2に係わる収差補正LSI408における機能的な構成の一例を示す図である。なお、実施形態1を説明した図9に示す機能的な構成と同一のものには、同一の符号を付してあり、その説明については省略する。
【0135】
収差補正LSI408は、バッファ801と、色分離部802と、収差補正テーブル803と、色結合部809と、R色収差補正部810と、G色収差補正部811と、B色収差補正部812とを具備して構成される。すなわち、実施形態1の構成から、補正値取得部804と、座標算出部805と、補間処理部806〜808を除き、R色収差補正部810と、G色収差補正部811と、B色収差補正部812を加えた構成となる。
【0136】
色収差補正部810、811、812は、各色の色収差を補正する。色収差補正部810、811、812においては、各色の色収差の補正とともに、座標変換処理と画素補間処理とを実施する。
【0137】
図19は、図18に示す各色収差補正部810〜812における機能的な構成の一例を示す図である。
【0138】
各色収差補正部810〜812各々は、補正値取得部1702と、三次補間処理部1703と、補間演算係数格納部1704と、変換座標格納部1705とを具備して構成される。なお、補正値取得部1702は、図9に示す補正値取得部804と同様の機能を有するため、その説明については省略する。
【0139】
三次補間処理部1703は、座標変換時の補間処理と、画素補間時の補間処理とを実施する。具体的には、各色変換後の座標を演算するラグランジュ補間による座標算出を行なう機能と、算出した変換後の座標と参照画素のそれぞれの色情報とに基づいて補間位置における新たな色情報を算出する機能(三次補間による補間演算)とを備える共用回路である。なお、ラグランジュ補間による座標算出は、補正値取得部1702で選択された収差補正テーブル803から取得した補正値に基づいて行なわれる。ここで、座標変換時の三次式と画素補間時の三次式とによる重み係数は、後述する補間演算係数格納部1704から取得する。なお、取得する重み係数は、処理に合わせて切り換える。本実施形態では、ハードウェア回路による処理形態を想定しているが、DSP等の信号処理回路を使用する場合は、係数パラメータを変更することで対応すればよい。
【0140】
補間演算係数格納部1704は、三次補間処理部1703で使用される三次式の重み係数を格納する。三次補間処理部1703では、ここに格納された値を適宜読み出し、座標変換時の補間演算と、画素補間時の補間演算との係数パラメータとして使用する。
【0141】
例えば、三次補間曲線としてバイキュービック補間曲線を使用する場合は、(3)及び(4)の式で表される三次式を用いるため、係数はそれぞれ以下のようになる。
【0142】
【数6】

【0143】
同じく三次式としてラグランジュ補間曲線を使用する場合は、(5)及び(6)式より、係数は以下のようになる。
【0144】
【数7】

【0145】
このように座標変換時の補間演算で使用する係数パラメータを(9)及び(10)、画素補間時の補間演算で使用する係数パラメータを(7)及び(8)として、処理に応じた係数を選択することで異なる補間演算を実施できることになる。
【0146】
変換座標格納部1705は、三次補間処理部1703で算出された変換後の座標を一時的に格納する。三次補間処理部1703では、ここに格納した変換座標を読み出し、画素補間を行なう。
【0147】
図20は、実施形態2に係わる収差補正LSI408において収差を補正する際の処理の流れ一例を示すフローチャートである。
【0148】
ステップS1801では、収差補正LSI408は、色分離部802において、画素が持つ色情報を分離する。この処理は、図11のステップS1003の処理と同様であるため、その説明については省略する。
【0149】
ステップS1802では、収差補正LSI408は、各色収差補正部810〜812の補正値取得部1702において、色ずれ量算出のため、収差補正テーブル803から収差補正値を取得する。
【0150】
ステップS1803では、収差補正LSI408は、各色収差補正部810〜812の三次補間処理部1703において、座標変換時の補間処理で使用する三次式の係数を補間演算係数格納部1704から取得し、演算回路の係数パラメータとして設定する。
【0151】
ステップS1804では、収差補正LSI408は、各色収差補正部810〜812の三次補間処理部1703において、三次のラグランジュ補間式による補間演算を実施し、変換後の座標を算出する。なお、この処理の内容についても、実施形態1を説明した図11における処理と同様であるため、その説明については省略する。
【0152】
ステップS1805では、収差補正LSI408は、各色収差補正部810〜812の三次補間処理部1703において、ステップS1804の処理で算出した変換後の座標を一時的に変換座標格納部1705へ格納する。
【0153】
ステップS1806では、収差補正LSI408は、各色収差補正部810〜812の三次補間処理部1703において、画素補間時に使用する三次式の係数パラメータを、補間演算係数格納部1704から取得し、演算回路の係数パラメータとして設定する。なお、三次式の補間処理を固定小数点化する際に必要となる小数点以下を表現する値のビット数は、座標変換時の変換誤差を0.1画素未満に抑える場合には6ビット以上必要となる。
【0154】
ステップS1807では、収差補正LSI408は、各色収差補正部810〜812の三次補間処理部1703において、参照画素の色情報と変換座標格納部1705へ一次格納した変換後の座標情報とを取得する。
【0155】
ステップS1808では、収差補正LSI408は、各色収差補正部810〜812の三次補間処理部1703において、取得した参照画素の情報と変換座標とから補間位置における新たな画素値を算出する。
【0156】
ステップS1809では、収差補正LSI408は、色結合部809において、各画素の色情報に基づいて新たな画素の色情報の再結合を行なう。この処理は、図11のステップS1006の処理と同様であるため、その説明については省略する。
【0157】
以上説明したように実施形態2によれば、座標変換時の補間処理と、画素補間時の補間処理とを同一回路上で実現する。これにより、回路規模の低減を図ることができる。処理時間に余裕がある場合は、上記の構成を採ることが有用であり、更なるコストダウン、小型化へ寄与することになる。
【0158】
以上が本発明の代表的な実施形態の一例であるが、本発明は、上記及び図面に示す実施形態に限定することなく、その要旨を変更しない範囲内で適宜変形して実施できるものである。
【0159】
例えば、実施形態1及び2では、光学系に関しては、特に言及しなかったが、採用するレンズ、プリズムなどの光学部材が上下又は左右非対称系であっても、また複数レンズの組み合わせや結像面を複数回生成する光学系であってもよい。何れの場合であっても、良好な変換精度を維持することできる。
【0160】
また、実施形態1及び2では、接眼の拡大光学系を採用するHMDに対して収差補正処理を適用する場合を例に挙げて説明したが、これに限られない。実施形態1及び2で説明した収差補正処理は、光学系を有しその収差の補正が必要なデジタルカメラ、カメラ付きの携帯電話及びデジタルビデオカメラの他、背面投射型のテレビやカメラ等に搭載されるEVF等に適用しても構わない。これらに適用した場合であっても、上述した実施形態1及び2と同様の効果が得られることは言うまでもない。
【0161】
また、実施形態1及び実施形態2で説明した構成の一部、又はその全てを互いに組み合わせて実施できることは説明するまでもない。更には、実施形態1及び2における様々な技術を適宜組み合わせて新たなシステムを構成することは、当業者であれば容易に相当し得るものであり、このような様々な組み合わせによるシステムもまた、本発明の範疇に属するものである。
【0162】
なお、本発明は、例えば、システム、装置、方法、プログラム若しくは記録媒体等としての実施態様を採ることもできる。具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【0163】
また、本発明は、ソフトウェアのプログラムをシステム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置に内蔵されたコンピュータが該供給されたプログラムコードを読み出して実行することにより実施形態の機能が達成される場合をも含む。この場合、供給されるプログラムは実施形態で図に示したフローチャートに対応したコンピュータプログラムである。
【0164】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OS(Operating System)に供給するスクリプトデータ等の形態であってもよい。
【0165】
コンピュータプログラムを供給するためのコンピュータ読み取り可能な記録媒体としては以下が挙げられる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などである。
【0166】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムをハードディスク等の記録媒体にダウンロードすることが挙げられる。この場合、ダウンロードされるプログラムは、圧縮され自動インストール機能を含むファイルであってもよい。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【0167】
また、本発明のプログラムを暗号化してCD−ROM等の記録媒体に格納してユーザに配布するという形態をとることもできる。この場合、所定の条件をクリアしたユーザに、インターネットを介してホームページから暗号を解く鍵情報をダウンロードさせ、その鍵情報を使用して暗号化されたプログラムを実行し、プログラムをコンピュータにインストールさせるようにもできる。
【0168】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどとの協働で実施形態の機能が実現されてもよい。この場合、OSなどが、実際の処理の一部又は全部を行ない、その処理によって前述した実施形態の機能が実現される。
【0169】
更に、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれて前述の実施形態の機能の一部或いは全てが実現されてもよい。この場合、機能拡張ボードや機能拡張ユニットにプログラムが書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU(Central Processing Unit)などが実際の処理の一部又は全部を行なう。
【図面の簡単な説明】
【0170】
【図1】本発明に係わる画像処理システムを適用したMRシステムの全体構成の一例を示す図である。
【図2】図1に示すMRシステムの全体構成の変形例を示す図である。
【図3】図1に示すHMD101及び画像処理装置103における機能的な構成の一例を示す図である。
【図4】図1に示す画像処理装置103に内蔵されるコンピュータのハードウェア構成の一例を示す図である。
【図5】図1に示すHMD101のハードウェア構成の一例を示す図である。
【図6】歪曲収差、倍率色収差の概要を示す図である。
【図7】図3に示す撮像ユニット203(撮像光学系)の概要を示す図である。
【図8】図3に示す撮像ユニット203(表示光学系)の概要を示す図である。
【図9】図5に示す収差補正LSI408における機能的な構成の一例を示す図である。
【図10】図9に示す収差補正テーブル803の一例を示す図である。
【図11】図5に示す収差補正LSI408において収差を補正する際の処理の流れ一例を示すフローチャートである。
【図12】図11に示すステップS1004における座標変換処理の流れの一例を示すフローチャートである。
【図13】ラグランジュ補間曲線の一例を示す図である。
【図14】バイキュービック補間曲線の一例を示す図である。
【図15】三次補間の概念を示す模式図である。
【図16】外周データ利用の概念を示す模式図である。
【図17】図11に示すステップS1005における画素補間処理の流れの一例を示すフローチャートである。
【図18】実施形態2に係わる収差補正LSI408における機能的な構成の一例を示す図である。
【図19】図18に示す各色収差補正部810〜812における機能的な構成の一例を示す図である。
【図20】実施形態2に係わる収差補正LSI408において収差を補正する際の処理の流れ一例を示すフローチャートである。
【符号の説明】
【0171】
101 HMD
102 コントローラ
103 画像処理装置
203 撮像ユニット
204 撮像系収差補正部
205 三次元位置姿勢センサ
206、209 I/F
207 表示系収差補正部
208 表示ユニット
210 位置姿勢情報生成部
211 CG描画部
212 コンテンツDB
213 画像合成部
301、406 CPU
302、403 RAM
303、404 ROM
304 操作部
305 表示部
306 外部記憶装置
408 収差補正LSI
801 バッファ
802 色分離部
803 収差補正テーブル
804、1702 補正値取得部
805 座標算出部
806、807、808 補間処理部
809 色結合部
810 R色収差補正部
811 G色収差補正部
812 B色収差補正部
1703 三次元補間処理部
1704 補間演算係数格納部
1705 変換座標格納部

【特許請求の範囲】
【請求項1】
画像の画素を座標変換することによって光学系で生じる収差を補正する画像処理システムであって、
座標変換前後の画素の位置の対応関係を保持するテーブルと、
前記テーブルから変換対象となる代表点の座標に対応する変換後の座標を取得する取得手段と、
前記取得手段により取得された代表点間の画素の変換後の座標をラグランジュ補間式を用いた補間演算によって算出する座標算出手段と
を具備することを特徴とする画像処理システム。
【請求項2】
前記座標算出手段により算出された座標と本来の画素値とに基づいて表示手段の画素位置に対応する画素値を補間演算によって算出する画素補間手段
を更に具備することを特徴とする請求項1記載の画像処理システム。
【請求項3】
前記座標算出手段による座標変換時の補間演算と前記画素補間手段による画素補間時の補間演算には、三次の補間式が用いられる
ことを特徴とする請求項2記載の画像処理システム。
【請求項4】
前記座標算出手段及び前記画素補間手段は、
同一の回路上に実現される
ことを特徴とする請求項2又は3記載の画像処理システム。
【請求項5】
前記画素補間手段による前記三次の補間式を用いた補間演算は、
前記変換対象となる画素の周辺16画素の画素値を用いる
ことを特徴とする請求項3記載の画像処理システム。
【請求項6】
前記画素補間手段による前記三次の補間式を用いた補間演算を固定小数点化する際に必要となる小数点以下を表現する値のビット数は6ビット以上である
ことを特徴とする請求項3記載の画像処理システム。
【請求項7】
前記ラグランジュ補間式は、以下の三次式で定義される
【数1】

ことを特徴とする請求項1記載の画像処理システム。
【請求項8】
線形補間直線が以下で定義される場合に、
【数2】

前記三次式のラグランジュ補間式の補間曲線と前記線形補間直線とで囲まれる部分の面積は0.042以下の数値となる
ことを特徴とする請求項7に記載の画像処理システム。
【請求項9】
前記座標算出手段により算出された変換後の座標は、
二次元の座標におけるそれぞれの軸上の値を持つ
ことを特徴とする請求項1記載の画像処理システム。
【請求項10】
前記テーブルは、
代表点に係わる画素の位置について座標変換前後の前記対応関係を保持する
ことを特徴とする請求項1記載の画像処理システム。
【請求項11】
前記テーブルは、
基準色については変換後の座標を保持し、それ以外の色については該基準色との差分値を保持する
ことを特徴とする請求項1又は10記載の画像処理システム。
【請求項12】
前記光学系で生じる収差は、
前記収差に起因した理想的な結像位置とのずれである
ことを特徴とする請求項1記載の画像処理システム。
【請求項13】
前記光学系は、
撮像画像を撮像素子上に結像させる光学系と、
表示画像を拡大してユーザの瞳位置に結像させる光学系と
を具備することを特徴とする請求項1記載の画像処理システム。
【請求項14】
画像の画素を座標変換することによって光学系で生じる収差を補正する画像処理装置であって、
座標変換前後の画素の位置の対応関係を保持するテーブルから変換対象となる代表点の座標に対応する変換後の座標を取得する取得手段と、
前記取得手段により取得された代表点間の画素の変換後の座標をラグランジュ補間式を用いた補間演算によって算出する座標算出手段と
を具備することを特徴とする画像処理装置。
【請求項15】
画像の画素を座標変換することによって光学系で生じる収差を補正する収差補正方法であって、
座標変換前後の画素の位置の対応関係を保持するテーブルから変換対象となる代表点の座標に対応する変換後の座標を取得する取得工程と、
前記取得工程で取得された代表点間の画素の変換後の座標をラグランジュ補間式を用いた補間演算によって算出する座標算出工程と
を含むことを特徴とする収差補正方法。
【請求項16】
画像の画素を座標変換することによって光学系で生じる収差を補正する画像処理装置に内蔵されたコンピュータを、
座標変換前後の画素の位置の対応関係を保持するテーブルから変換対象となる代表点の座標に対応する変換後の座標を取得する取得手段、
前記取得手段により取得された代表点間の画素の変換後の座標をラグランジュ補間式を用いた補間演算によって算出する座標算出手段
として機能させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate


【公開番号】特開2010−92360(P2010−92360A)
【公開日】平成22年4月22日(2010.4.22)
【国際特許分類】
【出願番号】特願2008−263057(P2008−263057)
【出願日】平成20年10月9日(2008.10.9)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】