本発明は、画像変換に関するものであり、特に、拡大や縮小などの画像変換やテクスチャマッピングを、テクスチャ感を保存したまま実現する技術に関するものである。
画像機器とネットワークのデジタル化により、任意の画像機器が接続できるようになり、画像交換の自由度が高まっている。そして、利用者がシステムの違いに制約を受けることなく、自由に画像を扱える環境が整備されてきた。例えば、利用者は、デジタルスチルカメラで撮影した画像をプリンタに出力したり、ネットワーク上で公開したり、家庭のテレビで鑑賞したりすることが可能になっている。
逆にシステム側は、様々な画像フォーマットに対応する必要があり、画像フォーマット変換には自ずと高度化が求められる。例えば画像サイズの変換は頻繁に発生し、アップコンバータ(画素数、ライン数を増やす変換装置)やダウンコンバータ(画素数、ライン数を減らす装置)が必要になる。例えば、600dpiの解像度でA4用紙(297mm×210mm)に印刷する場合、7128画素×5040ラインの原稿が必要になるが、多くのデジタルスチルカメラの解像度はこれを下回るため、アップコンバータが必要になる。一方、ネットワーク上に公開された画像は、最終的な出力形態が決まっていないため、出力デバイスが決まる都度、対応する画像サイズに変換する必要がある。また、家庭用テレビでは、デジタル地上波のサービスが開始されており、従来の標準テレビ画像とHD(High Definition)テレビ画像とが混在し、画像サイズの変換が頻繁に用いられる。
画像拡大や画像縮小などの画像変換は、コンピュータグラフィックスにおけるテクスチャマッピングでも多用される(被写体表面に現れる模様やパターンを総称して、「テクスチャ」と呼ぶ)。テクスチャマッピングはコンピュータ内に形成した3次元物体表面に2次元画像を貼り付けて物体表面の模様や質感を表現する手法である。2次元画像を3次元物体の表面の向きに合わせて貼り付けるため、2次元画像に拡大、縮小、変形、回転などの処理を施す必要がある(非特許文献1を参照)。
従来、画像拡大や画像縮小などの処理は、複数の画素間での輝度値の違いを利用している。
すなわち、画像拡大では、サンプリング時に存在しなかった画素データを新たに生成するために、バイリニア法やバイキュービック法などによって、輝度値を内挿する(非特許文献1を参照)。内挿ではサンプリングデータの中間的な値しか生成できないため、エッジなどの先鋭度が劣化する傾向がある。そこで、初期拡大画像として内挿画像を用い、その後、エッジ部を抽出してエッジのみを強調する技術が開示されている(非特許文献2、非特許文献3を参照)。特に、非特許文献3では、多重解像度表現とリプシッツ指数の導入によって、エッジの先鋭さに応じてエッジ強調を選択的に行う工夫が成されている。
画像縮小では、画素の一部を削除するが、サンプリング点の個数が減少するため、サンプリング周期が減少する。サンプリング周波数が画像中の最高周波数の2倍(ナイキスト周波数)に満たない場合、折り返しが発生し、モアレが生じてしまう。そこで、画素の一部を削除する前に低域通過フィルタを掛けて高周波成分を除去し、その後、画素の一部を削除する方法が一般的である。
荒屋真二著,「明解 3次元コンピュータグラフィックス」,共立出版,pp.144−145、2003年9月25日, H.Greenspan,C.H.Anderson,「Image enhanced by non−linear extrapolation in frequect space」,SPIE Vol.2182 Image and Video Processing II,1994年 中静真ら、「多重スケール輝度こう配平面における画像高解像度化」、電子情報通信学会論文誌D−II Vol.J81−D−II No.10 pp.2249−2258 1998年10月 画像処理ハンドブック編集委員会編,「画像処理ハンドブック」,昭晃堂,pp.392−407、1987年6月8日 R.J.Woodham,「Photometric methodfor determining surface orientation from multiple images」,Optical Engieering、vol.19,pp.139−144,1980年 梅山伸二,「物体の見えからの拡散/鏡面反射成分の分離−偏光フィルタを介した多重観測と確率的独立性を用いて−」,画像の認識・理解シンポジウム2002,pp.I−469−pp.I−476、2002年
しかし、従来の技術では次のような問題があった。
被写体からの拡散反射成分を対象にした場合、画素間の輝度を線形補間して画像拡大を行うと、拡大後の画像と被写体実物の輝度分布とは必ずしも一致しない。これについて、簡単に説明する。
拡散反射光の輝度値Idは例えば、
で与えられる。ここで、θは被写体の表面法線と光源からの入射光とが成す角度であり、(数1)の式から、拡散反射光の輝度値Idは角度θの余弦に従うことが分かる(非特許文献1、pp.92)。画像拡大する場合、被写体の形状自体は変わらないので、被写体の表面法線を線形補間して高密化すればよい。ところが上述のように、拡散反射光の輝度値は表面法線の余弦で与えられるので、輝度値を線形補間して得た画像では、実際の画像との間で輝度値に誤差が生じる。すなわち、図12に示すように、0から1の余弦である線LN1は上に凸の非線形特性を持ち、このため、輝度値を線形補間したことに相当する直線LN2との誤差が生じる。この誤差は、線LN3のようになり、最大値は0.21に達する。この誤差は、元の画像が有する隣接画素間の輝度値の関係を崩すものであり、見た目には、テクスチャ感を変質させる。
前記の問題に鑑み、本発明は、テクスチャ感を保存できる画像変換を、簡易な処理によって、実現可能にすることを課題とする。
人間の視覚系がコントラストを検出する能力は、輝度が低いほど、低下する、といわれている。すなわち、いわゆるコントラスト感度は、輝度が低くなるほど低くなり、輝度値の低い影部では、人間は、詳細を見分ける能力が低くなる。
図13(a)に示すテスト刺激A,Bは、左から右へ空間解像度が次第に高くなり、かつ、下から上へコントラストが次第に低くなる。そこで、下から上に明暗のパターンが見えなくなる位置を特定することによって、視覚系のコントラスト感度が得られる。なお、テスト刺激Aよりもテスト刺激Bの方が、平均輝度が低い。図13(b)は(a)のテスト刺激A,Bを用いて得た空間周波数とコントラスト感度との関係を示すグラフである。
図13(b)から分かるように、視覚系のコントラスト感度は、画像が明るいほど高くなり、細かな違いを見分ける能力が高い。すなわち、輝度値が高く明るい部分では、コントラスト感度が高いため、上述したような輝度値の線形補間による実際の画像との誤差は、テクスチャ感を変質させる原因になり、無視できない。これに対して、輝度値が低く暗い部分では、上述したような誤差はさほど目立たなくなり、無視できると考えられる。
このような知見から、本発明では、輝度値の低い影部では、輝度値を用いた変換を行い、輝度値の高い、影部以外の部分では、表面法線を用いた変換を行う。
すなわち、本発明では、与えられた第1の画像において、影部を識別し、影部について、所定の画像変換の内容に応じて、画素の輝度値を用いた第1の変換処理を行う一方、影部以外の部分について、前記所定の画像変換の内容に応じて、被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行い、それぞれの処理結果を用いて、第2の画像を生成するものである。
本発明によると、人間の視覚系が低感度である輝度の低い影部では、画素の輝度値を用いた変換処理が行われる一方、人間の視覚系が高感度である輝度の高い影以外の部分では、表面法線パラメータを用いた変換処理が行われる。このため、処理負荷の増大を抑制しつつ、テクスチャ感を保存した画像変換が実現できる。
本発明によると、影部と影以外の部分とで処理を切り分け、影部では、輝度値を用いた変換処理を行い、影以外の部分では、表面法線パラメータを用いた変換処理を行うので、処理負荷とテクスチャ感保存を両立させた画像変換が可能になる。
影と輝度分布の関係を模式的に示す図である。
本発明の第1の実施形態に係る画像変換方法を示すフローチャートである。
前提となる幾何条件と光学条件を示す概念図である。
表面法線ベクトルの計測手法の例を説明するための図である。
表面法線ベクトルの補正処理を概念的に示す図である。
本発明の第2の実施形態に係る画像変換方法を示すフローチャートである。
本発明の第3の実施形態に係る画像変換方法を実現する構成例を示すブロック図である。
パラメータを高密化する処理を示す図である。
本発明の第4の実施形態を説明するための図であり、レンダリング処理の流れを示す図である。
本発明を実現する第1の構成例であり、パーソナルコンピュータを用いた構成を示す図である。
本発明を実現する第2の構成例であり、サーバークライアントシステムを用いた構成を示す図である。
輝度値の線形補間と表面法線の線形補間との誤差を説明するための図である。
コントラスト感度の例を示す図である。
符号の説明
SH 影部
203 影部識別部
205 画像生成部
IIN 入力画像(第1の画像)
SIIN 影識別画像
本発明の第1態様では、第1の画像に対して所定の画像変換を行い、第2の画像を生成する方法として、前記第1の画像において影部を識別する第1のステップと、前記影部について、前記所定の画像変換の内容に応じて画素の輝度値を用いた第1の変換処理を行う第2のステップと、前記影部以外の部分について、前記所定の画像変換の内容に応じて被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行う第3のステップとを備え、前記第2および第3のステップにおける処理結果を用いて、前記第2の画像を生成するものを提供する。
本発明の第2態様では、前記第1の画像を、拡散反射成分のみからなるように処理する前処理を備えた第1態様の画像変換方法を提供する。
本発明の第3態様では、前記所定の画像変換は画像拡大であり、前記第1の変換処理は輝度値を補間して画像を拡大する処理であり、前記第2の変換処理は、表面法線パラメータを補間して画像を拡大する処理である第1態様の画像変換方法を提供する。
本発明の第4態様では、前記所定の画像変換は画像縮小であり、前記第1の変換処理は輝度値をサブサンプリングして画像を縮小する処理であり、前記第2の変換処理は表面法線パラメータをサブサンプリングして画像を縮小する処理である第1態様の画像変換方法を提供する。
本発明の第5態様では、前記第3のステップの前に、前記第1の画像の表面法線パラメータを、空間位置による変化が滑らかになるように補正する処理を含む第4態様の画像変換方法を提供する。
本発明の第6態様では、前記第1のステップは、前記第1の画像について表面法線パラメータを算出するステップと、被写体表面は滑らかであると仮定して、算出した表面法線パラメータを補正するステップと、補正後の表面法線パラメータから、所定の照明方程式に従って輝度値を算出するステップと、算出した輝度値と実際の輝度値との差を画素毎に求め、その差が所定値よりも大きい画素を影部として認識するステップとを備えたものである第1態様の画像変換方法を提供する。
本発明の第7態様では、前記表面法線パラメータとして、表面法線と光源方向とが成す角度を用いる第1態様の画像変換方法を提供する。
本発明の第8態様では、テクスチャ画像を3次元CGモデルのオブジェクトに貼り付ける前処理ステップと、前記オブジェクトに貼り付けられた前記テクスチャ画像において、影部を識別する第1のステップと、前記影部について、所定の画像変換の内容に応じて、画素の輝度値を用いた第1の変換処理を行う第2のステップと、前記影部以外の部分について、前記所定の画像変換の内容に応じて、被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行う第3のステップとを備え、前記第2および第3のステップにおける処理結果を用いて、前記オブジェクトの画像を生成するテクスチャマッピング方法を提供する。
本発明の第9態様では、第1の画像に対して所定の画像変換を行い、第2の画像を生成する装置として、前記第1の画像において、影部を識別する影部識別部と、前記影部識別部によって識別された影部について、前記所定の画像変換の内容に応じて、画素の輝度値を用いた第1の変換処理を行う第1の変換部と、前記影部以外の部分について、前記所定の画像変換の内容に応じて、被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行う第2の変換部とを備え、前記第1および第2の変換部による処理結果を用いて、前記第2の画像を生成するものを提供する。
本発明の第10態様では、画像変換を行うサーバークライアントシステムとして、第9態様の影部識別部を有するサーバーと、第9態様の第1および第2の変換部を有するクライアントとを備えたものを提供する。
本発明の第11態様では、第1の画像に対して所定の画像変換を行い、第2の画像を生成する方法をコンピュータに実行させるプログラムとして、前記第1の画像において、影部を識別する第1のステップと、前記影部について、前記所定の画像変換の内容に応じて、画素の輝度値を用いた第1の変換処理を行う第2のステップと、前記影部以外の部分について、前記所定の画像変換の内容に応じて、被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行う第3のステップと、前記第2および第3のステップにおける処理結果を用いて、前記第2の画像を生成する第4のステップとをコンピュータに実行させるものを提供する。
以下、本発明の実施の形態について、図面を参照して説明する。
まず初めに、影部を識別する方法について、図1を用いて説明する。図1は凹凸のある被写体に光が照射されたときの画像と輝度分布を模式的に示す図である。図1では、被写体の表面の形状が、山、谷、山と滑らかに変化している。
ここで、光源LSの光が真上から鉛直に入射した場合(ケースA)、被写体表面のどの位置にも影が生じないので、輝度分布から(数1)に従って表面法線を求めると、被写体表面の形状が正確に算出される。一方、光源LSからの光が左斜め45度方向から入射する場合(ケースB)は、谷の左側に影ができるので(影部SH)、輝度分布では、DC1,DC2のような輝度が不連続に変化する位置が生じる。このため、輝度分布から(数1)に従って表面法線を求めると、算出される被写体表面の形状は位置DC1,DC2において不連続になってしまう。これは(数1)が影を含まないことを前提とするモデルであることに起因している。すなわち、輝度分布から表面法線を求める場合、画像に影部が含まれているときは、表面法線の不連続性という矛盾が発生する。
このことを利用して、本実施形態では、被写体表面の形状は滑らかに変化していると仮定して、この滑らかさの仮定が崩れるとき、影部であると判断する。具体的には、元の画像の輝度値から(数1)に従って表面法線を算出し、滑らかさの仮定から表面法線を補正する。そして、補正された表面法線から(数1)に従って輝度値を求め直し、得られた輝度値と元の画像の輝度値とが異なるとき、その部分を影部と判断する。
(第1の実施形態)
図2は本発明の第1の実施形態に係る画像変換方法を示すフローチャートである。本実施形態では、与えられた第1の画像に対して、所定の画像変換として画像拡大を行い、第2の画像を生成する。なお、本実施形態に係る画像変換方法は、当該方法を実現するためのプログラムをコンピュータに実行させることによって、実現することができる。
まずステップS00において、初期設定を行う。図3は被写体表面SF上の注目点Pに関する幾何条件を示す模式図である。ステップS00では、図3に示す、光源ベクトルL、注目点の入射光の輝度Ii、および被写体の拡散反射成分の双方向反射率ρdを取得する。ここでは、光源ベクトルL、入射光の輝度Iiおよび双方向反射率ρdは予め設定されているものとする。また、後述のステップS2においてハイライト部を検出するために用いられるハイライト部判定用閾値THHの設定も行う。
ステップS1において、第1の画像を、拡散反射成分のみからなるように処理する前処理を実行する。被写体からの反射光は、一般に鏡面反射成分と拡散反射成分とからなるが、本発明では、拡散反射成分のみを対象とするため、拡散反射成分のみが撮像されている画素を抽出する、または、拡散反射成分のみを撮影して第1の画像として記録する。
拡散反射と鏡面反射とを分離する手法として、例えば非特許文献6には、鏡面反射成分が偏光する性質を利用する技術が開示されている。光が物体表面で反射する場合、光の入反射面に平行な電場成分と垂直な電場成分とでは、通常、フレネル係数が異なるため、反射光は偏光する。このため、鏡面反射成分は一般的に偏光しているが、拡散反射は乱反射であるため、偏光性を持たない。そこで、図4に示すように、偏光フィルタPFを通して反射光RRを観測した場合、透過光RRPの強度は、反射光RRのうち偏光フィルタPFの偏光軸PFAに平行な成分の強度となる。このため、偏光フィルタPFを回転させながら物体表面SFからの鏡面反射成分を観測した場合、透過光RRPの強度は偏光フィルタPFの偏光軸PFAと鏡面反射の偏光面SPPとの間の角度ψに応じて変化し、次式で与えられる。
ここで、Ldは拡散反射成分の輝度、Lsは鏡面反射成分の輝度、θ’iは微小反射面での光の入射角、FPは絶縁体に対する平行電場成分のフレネル係数、FVは絶縁体に対する垂直電場成分のフレネル係数である。
次にステップS2において、第1の画像のハイライト部を検出する。ハイライト部とは輝度が最も高い画素のことをいい、図1の輝度分布では、位置HL1,HL2,HL3,HL4に相当する。ハイライト部の表面法線は、光源LSからの入射光方向(すなわち図3の光源ベクトルL)に一致する。光源ベクトルLはステップS00で与えられるため、ハイライト部の表面法線ベクトルも既知となる。
なお、撮像された画像は通常、ノイズを含むため、各ハイライト部(例えば位置HL1〜HL4)の輝度が一致することは稀である。このため、ハイライト部を検出する場合には、ある程度、輝度値の幅を持たせるのが好ましい。そこで例えば、画像中の最高輝度Idmaxの95%をハイライト部判定用閾値THHとし、輝度値がこの閾値THHよりも大きい画素をハイライト部として検出する。
次にステップS3において、第1の画像の輝度値から(数1)に従って、推定表面法線ベクトルPNを算出する。表面法線(ベクトル)を表す表面法線パラメータとして、表面法線と光源方向とが成す角度θ(または余弦cosθ)が用いられる。ここで、第1の画像の輝度値が最高輝度Idmaxを持つとき、光源ベクトルLと表面法線ベクトルNが一致し、両ベクトルの内積が1と最大になるため、拡散反射光の輝度値Idを最高輝度Idmaxで正規化しておく。
ステップS4において、近傍画素間で推定表面法線ベクトルPNの滑らかさの補正を行い、補正表面法線ベクトルSPNを算出する。すなわち、表面法線パラメータを、空間位置による変化が滑らかになるように補正する。図5はステップS4における補正処理を概念的に示す図である。図5(a)では、折り返しのある変化La1が滑らかな変化La2に補正されており、図5(b)では、飛びがある変化Lb1が滑らかに連続した変化Lb2に補正されている。
ここで、影部以外の推定表面法線ベクトルPNは信頼性が高いため、ここでの補正は、影部以外の部分をできるだけ多く含めて行うのが望ましいが、補正方法そのものは任意であり、制限を与えるものではない。一例として、スプライン補間などがある。被写体形状のモデルはコンピュータグラフィックスの分野で多々開発されており、ベジエ曲線やNURBS曲線などによる自由曲面の表現方法がある(非特許文献1 pp.36−38)。本発明では、影部は輝度値で補間をして拡大画像を生成するため、補正された表面法線そのものは利用されない。すなわち、ここで表面法線を求める目的は、影部の検出にあり、影が落ちているか否かが重要であるのであって、補正された表面法線1本1本の精度を求めるものではない。
ステップS5において、補正表面法線ベクトルSPNから(数1)に従って、拡散反射光の輝度値Ivを計算し、これを補正輝度値SPIvとして出力する。
ステップS6において、補正輝度値SPIvと第1の画像の輝度値とを比較し、異なる画素の部分は影部と判断し、一致する画素の部分は影部以外であると判断する。なお、補正輝度値SPIvと第1の画像の輝度値との差に許容範囲(例えば、輝度値を0〜1に正規化したとき、0.01程度)を設けて、補正輝度値SPIvと第1の画像の輝度値との差が許容範囲を超えたとき、影部に該当すると判定してもかまわない。ステップS2〜S6によって、本発明の第1のステップが構成されている。
影部と判定された部分については、第2のステップとしてのステップS7において、第1の画像の輝度値を補間して画像を拡大する。一方、影部以外と判定された部分については、ステップS8において、補正表面法線ベクトルSPNを補間して画像を拡大する。そしてステップS9において、補間拡大された補正表面法線ベクトルから(数1)に従って拡散反射光の輝度値Ivを算出する。ステップS8,S9によって、本発明の第3のステップが構成されている。本発明は、補間方法として処理負荷の小さい線形補間法が適用できるように工夫されているが、補間法そのものを限定するものではない。
ステップS7およびステップS8,S9における処理結果を用いて、第2の画像が生成される。
以上のように本実施形態によると、人間の視覚系が低感度である輝度の低い影部では、輝度を線形補間し、人間の視覚系が高感度である輝度の高い影以外の部分では、表面法線を線形補間することによって、画像拡大が実現される。このような切り分けた処理によって、処理負荷とテクスチャ感保存とを両立させた画像拡大が可能になる。
また、表面法線が必要になる影以外の部分では、画素の輝度値から表面法線を推定するため、特別な機器を要することなく、撮像情報のみから、テクスチャ感が保存された画像拡大を実現することができる。被写体の表面法線を求めるためには、レンジファインダによる計測やPhotometric stereoによる算出などが利用できる。ところが、前者は、機器の規模や被写体の大きさなどの観点から利用できるシーンが限られ、汎用性の点で問題があり(非特許文献4参照)、後者は、被写体表面に影が落ちていると原理的に表面法線の算出は不可能であるので(非特許文献5参照)、被写体の向きや光源の位置を変えるなど観測点に影を作らない工夫が必要であり、実用面で問題がある。これに対して本実施形態では、特別な機器なしに、撮像情報のみから、表面法線を求めることができる。
なお、ステップS2〜S6を実行する影部識別部と、ステップS7を実行する第1の変換部と、ステップS8,S9を実行する第2の変換部とを備えた画像変換装置を、構成してもよい。
(第2の実施形態)
図6は本発明の第2の実施形態に係る画像変換方法を示すフローチャートである。本実施形態では、与えられた第1の画像に対して、所定の画像変換として画像縮小を行い、第2の画像を生成する。なお、本実施形態に係る画像変換方法は、当該方法を実現するためのプログラムをコンピュータに実行させることによって、実現することができる。また、ステップS2〜S6を実行する影部識別部と、ステップS17を実行する第1の変換部と、ステップS18,S19を実行する第2の変換部とを備えた画像変換装置を、構成してもよい。
図6において、ステップS00,S1〜S6の処理は、図2と同様であるため、ここではその説明を省略する。
ステップS6において影部と判定された部分については、第2のステップとしてのステップS17において、第1の画像の輝度値をサブサンプリングして画像を縮小する。影部では、視覚系のコントラスト感度が低いため、モアレ発生によるテクスチャ感の変質は影部以外の部分よりも少なくなる。
一方、ステップS6において影部以外と判定された部分については、ステップS18において、補正表面法線ベクトルSPNをサブサンプリングして画像を縮小する。そしてステップS19において、サブサンプリングされた補正表面法線ベクトルから(数1)に従って拡散反射光の輝度値Ivを算出する。ステップS18,S19によって、本発明の第3のステップが構成されている。
なお、画像縮小に伴うサンプリング点数の減少によって、ナイキスト周波数が低下し、モアレが発生する可能性が高まる。ところが本実施形態では、ステップS4において、表面法線パラメータに対し、空間位置による変化が滑らかになるように補正を行っている。このため、高周波成分が抑えられ、モアレの発生を抑制することができる。すなわち、ステップS4が、表面法線パラメータをサブサンプリングする際の前処理の役割を果たしている。すなわち、この前処理によって、従来技術のように、別途、低域通過フィルタを作用させる必要がない。
以上のように本実施形態によると、人間の視覚系が低感度である輝度の低い影部では、輝度をサブサンプリングし、人間の視覚系が高感度である輝度の高い影以外の部分では、表面法線をサブサンプリングすることによって、モアレ発生を抑えた画像縮小が実現される。このような切り分けた処理によって、処理負荷とテクスチャ感保存とを両立させた画像縮小が可能になる。また、表面法線が必要になる影以外の部分では、画素の輝度値から表面法線を推定するため、特別な機器を要することなく、撮像情報のみから、テクスチャ感が保存された画像縮小を実現することができる。
(第3の実施形態)
図7は本発明の第3の実施形態に係る画像変換方法を実現する構成例を示すブロック図である。本実施形態では、与えられた第1の画像IINに対して、所定の画像変換として画像拡大を行い、第2の画像IOUTを生成する。なお、本実施形態に係る画像変換方法は、当該方法を実現するためのプログラムをコンピュータに実行させることによって、実現することができる。
第1の画像IINは、拡散反射・鏡面反射分離部11によって、鏡面反射成分SRと拡散反射成分DRとに分離される。拡散反射・鏡面反射分離部11は、上述のステップS1と同様の処理を行う。例えば、図4に示す偏光性を用いた方法(非特許文献6を参照)を活用する。拡散反射成分DRは影部検出部12によって、影部SPと影部以外NSPとに分離される。影部検出部12は、例えば上述のステップS2〜S6と同様の処理を行う。影部SPは輝度値補間部13によって空間的に高密化される。画像合成部14は、輝度値補間部13の出力である輝度高密化画像LDIと、後述するパラメータ高密化画像IPDIとを合成して、第2の画像IOUTを生成する。パラメータ高密化画像IPDIは、拡散反射成分の影部以外NSPと鏡面反射成分SRとが空間的に高密化された画像である。
鏡面反射成分SRと影部以外NSPは、画像特徴解析部15によって画像特徴ベクトルIINFVに変換される。画像特徴解析部15では、例えば、ウェーブレット変換等による空間応答特性を用いる。画像特徴ベクトルデータベース21は、画像特徴ベクトルIINFVに最も近い画像特徴ベクトルを選定し、画像特徴ベクトル番号IINFVNとして出力する。照明方程式パラメータデータベース22は、画像特徴ベクトル番号IINFVNを受けて、これに相当する照明方程式パラメータを原パラメータIINLEPとして出力する。照明方程式としては例えば、
を用いる。ここで、Iaは環境光の輝度、ρaは環境光の反射率、Iiは照明の輝度、ベクトルNは表面法線ベクトル、ベクトルLは光源方向を表わす光源ベクトル、dωは光源の立体角、ρdは拡散反射成分の双方向反射率、ρsは鏡面反射成分の双方向反射率、kdは拡散反射成分比、ksは鏡面反射成分比を表わし、kd+ks=1の関係を持つ。
原パラメータIINLEPは、パラメータ高密化部16によって空間的に高密化される。例えば図8に示すように、照明方程式パラメータのうち、類似の値を持つ隣接画素を同質領域としてまとめ、同質領域内で照明方程式パラメータを高密化する。図8では、画素(黒丸で表す)の属性平均値がP1である同質領域AE1と、画素の属性平均値がP2である同質領域AE2とが隣接しており、その境界に位置する画素S1とS2の輝度差がエッジを形成している。図8(a)の分布を例えば2倍に画像拡大するためには、図8(b)のように、画素の間に画素(白丸で表す)を挿入すればいい。挿入する画素の属性値は、例えば隣接する画素の属性平均値とする。またエッジを形成する画素S1と画素S2との間には、いずれかの属性値をそのままコピーして新たな画素S3を生成すればよい。図8(b)では、画素S1の属性値を画素S3にコピーし、画素S2と画素S3との輝度差を図8(a)における画素S1と画素S2の輝度差に一致させる。これにより、高密化後においてもエッジは保存される。
ところで、原パラメータIINLEPの中には表面法線ベクトルNが含まれるが、これは、影部以外NSPの輝度値から表面法線算出部19によって算出した推定表面法線ENとほぼ同一になる。ただし、照明方程式パラメータデータベース22はデータ容量の観点から離散的にデータを持つため、例えば(数1)に従って算出した推定表面法線ENの方が、真値に対する誤差が小さいと考えられる。そこで、照明方程式パラメータのうち、表面法線ベクトルNに関しては、原パラメータIINLEPではなく、推定表面法線ENを用いるのが好ましい。
パラメータ高密化部16から出力された高密化パラメータNLEPは、画像生成部17において輝度値に戻され、パラメータ高密化画像IPDIとして出力される。そして、上述したとおり、輝度高密化画像LDIとパラメータ高密化画像IPDIとが、画像合成部14において合成されて、第2の画像IOUTが得られる。
なお、画像縮小についても、輝度値補間に代えて、輝度値のサブサンプリングを行い、パラメータの高密化に代えて、パラメータの低密化を行うことによって、同様に実行可能となる。
(第4の実施形態)
本発明の第4の実施形態では、上述したような画像変換方法を、コンピュータグラフィックスにおけるテクスチャマッピングに適用する。
図9はレンダリング処理の主な流れを示すフローチャートである。レンダリング処理とは、コンピュータグラフィックスにおいて、コンピュータ内に生成した3次元モデルを2次元の画像データに変換する処理のことである(例えば非特許文献1のpp.79を参照)。図9に示すように、レンダリング処理は、視点と光源の設定S101、座標変換S102、陰面消去S103、シェーディングとシャドーイングS104、テクスチャマッピングS105、およびビューポート変換S106が、主なステップとなる。
まずステップS101において、視点VAと光源LSが設定されると、見え方が決まる。次にステップS102において、ローカル座標系で管理されていた各オブジェクトが正規座標系にまとめられ、ステップS103において、視点から見えない陰面部が削除される。そしてステップS104において、光源LSからオブジェクトOA、OBへの光のあたり方が計算され、陰Shadeと影Shadowが生成される。
そして、ステップS105においてテクスチャマッピングを行い、オブジェクトOA、OBに対するテクスチャTA、TBを生成する。テクスチャは画像データとして取得するのが一般的であり、テクスチャ画像TIAをオブジェクトOAの形状に合わせて変形し、オブジェクトOA上に合成する。同様に、テクスチャ画像TIBをオブジェクトOBの形状に合わせて変形し、オブジェクトOB上に合成する。
本実施形態では、このテクスチャマッピングにおいて、上述したような画像変換を適用する。すなわち、まず、テクスチャ画像TIA,TIBを、3次元CGモデルのオブジェクトOA,OBに貼り付ける前処理を行う。そして、図2のフローに従って処理を行う。ステップS00では、2次元テクスチャ画像TIA,TIBの光学パラメータと、オブジェクトOA,OBに貼り付けられたテクスチャ画像TIA,TIBの各画素について、図3に示すようなパラメータを取得する。以降の処理は、第1の実施形態と同様である。
最後に、ステップS106において、ビューポート変換を行い、表示されるスクリーンSCNまたはウィンドウWNDに合わせた画像サイズの2次元画像を生成する。
ここで、レンダリング処理は、視点や光源の位置が変わるために実行する必要があり、ゲーム機器のようなインタラクティブシステムでは、頻繁にレンダリング処理が繰り返される。テクスチャマッピングでは通常、物体表面に貼り付けるテクスチャデータを画像として準備するので、視点や光源が変わると、そのたびに、テクスチャデータを拡大、縮小、回転、色換え等によって変換する必要がある。
上述したように、輝度値のみに基づいた画像変換では、テクスチャ感を保存して新たな画像を作ることが困難である。これに対して本実施形態のように、影部では輝度値を用いた補間やサブサンプリングを行い、影部以外では表面法線の補間やサブサンプリングを行うことによって、テクスチャ感を保存したまま、様々な視点や光源設定に応じたテクスチャマッピングを実現することができる。
以下、本発明を実現する構成例を例示する。
(第1の構成例)
図10は第1の構成例を示す図であり、パーソナルコンピュータを用いて本発明に係る画像変換を行う構成の一例である。カメラ101の解像度はディスプレイ102の解像度よりも低く、ディスプレイ102の表示能力を最大限に生かすために、メインメモリ103にロードされた画像変換プログラムによって拡大画像を作成する。カメラ101で取り込まれた低解像度画像は画像メモリ104に記録される。外部記憶装置105には予め、光源ベクトルL、注目点の入射光の輝度Ii、被写体の拡散反射成分の双方向反射率ρd、およびハイライト部判定用閾値THHが設定されており、メインメモリ103の画像変換プログラムから参照可能になっている。
画像変換プログラムによる処理は、第1の実施形態と同様であり、カメラ画像から影部を識別し、影部では輝度値を線形補間し、影部以外では表面法線を線形補間する。すなわち、メモリバス106を介して画像メモリ104の低解像度画像を読み込み、これをディスプレイ102の解像度に合わせて高解像度画像に変換し、再びメモリバス106経由でビデオメモリ107に転送する。ビデオメモリ107に転送された高解像度画像は、ディスプレイ102に表示される。
なお、本発明は図10の構成に拘束されるものではなく、様々な構成をとることができる。例えば、光源ベクトルL、入射光の輝度Ii、被写体の拡散反射成分の双方向反射率ρdは、計測器によって被写体から直接計測してもかまわない。また低解像度画像をネットワーク108から取得してもかまわない。また、外部記憶装置105にテクスチャデータを保持し、メインメモリ103において第4の実施形態で示したテクスチャマッピングを実行してもかまわない。
また、カメラ101の解像度がディスプレイ102の解像度よりも高い場合は、メインメモリ103にロードされた画像変換プログラムは、第2の実施形態で示したように画像縮小を行えばよい。また、カメラ101としては、カメラ付携帯電話やデジタルスチルカメラ、ビデオムービーカメラなど任意のタイプの撮像装置が適用できる。さらに、予め録画した映像を再生する再生装置においても、本発明を実現することができる。
(第2の構成例)
図11は第2の構成例を示す図であり、サーバークライアントシステムを用いて本発明に係る画像変換を行う構成の一例である。カメラ201の解像度はディスプレイ202の解像度よりも低く、ディスプレイ202の表示能力を最大限に生かすために、サーバークライアントシステムにおいて画像拡大を実行する。
サーバー301では、影部識別部203が、第1の実施形態と同様の処理によって、入力画像としての第1の画像IINの影部を識別し、影部の情報を含む影識別画像SIINを生成する。ここでの影識別画像SIINは例えば、影部を0、影部以外を1で表現した1ビット階調の画像である。そしてデータ送信部204が、ネットワーク206を介してクライアント302に、第1の画像IINと影識別画像SIINを送信する。クライアント302では、本発明の第1の変換部および第2の変換部を含む画像生成部205が、第1の実施形態と同様の処理によって、受信した第1の画像IINと影識別画像SIINから第2の画像としての拡大画像を生成し、ディスプレイ202に供給する。
なお、本発明は図11の構成に拘束されるものではなく、カメラ201の解像度がディスプレイ202の解像度よりも高い場合は、第2の実施形態と同様に、画像生成部205が画像を縮小することも可能である。また、カメラ201としては、カメラ付携帯電話やデジタルスチルカメラ、ビデオムービーカメラなど任意のタイプの撮像装置が適用できる。さらに、予め録画した映像を再生する再生装置においても、本発明を実現することができる。
以上のように本発明は、広く普及しているパーソナルコンピュータや、サーバークライアントシステム、または、カメラ付携帯電話やデジタルスチルカメラ、ビデオムービーカメラ、テレビなどビデオ機器全般で実行可能であり、特別な機器、運用、管理などは必要ない。なお、専用ハードウェアへの実装やソフトウェアとハードウェアの組み合わせなど、機器接続形態や機器内部の構成を拘束するものではない。
本発明では、処理負荷とテクスチャ感保存を両立させた画像変換が可能になるので、例えば、スポーツや観光、記念撮影など目の前のシーンを映像として記録する映像エンタテイメント分野において利用することができる。また、文化芸術の分野では、被写体や撮影場所に制限されない自由度の高いデジタルアーカイブシステムを提供するために利用することができる。
本発明は、画像変換に関するものであり、特に、拡大や縮小などの画像変換やテクスチャマッピングを、テクスチャ感を保存したまま実現する技術に関するものである。
画像機器とネットワークのデジタル化により、任意の画像機器が接続できるようになり、画像交換の自由度が高まっている。そして、利用者がシステムの違いに制約を受けることなく、自由に画像を扱える環境が整備されてきた。例えば、利用者は、デジタルスチルカメラで撮影した画像をプリンタに出力したり、ネットワーク上で公開したり、家庭のテレビで鑑賞したりすることが可能になっている。
逆にシステム側は、様々な画像フォーマットに対応する必要があり、画像フォーマット変換には自ずと高度化が求められる。例えば画像サイズの変換は頻繁に発生し、アップコンバータ(画素数、ライン数を増やす変換装置)やダウンコンバータ(画素数、ライン数を減らす装置)が必要になる。例えば、600dpiの解像度でA4用紙(297mm×210mm)に印刷する場合、7128画素×5040ラインの原稿が必要になるが、多くのデジタルスチルカメラの解像度はこれを下回るため、アップコンバータが必要になる。一方、ネットワーク上に公開された画像は、最終的な出力形態が決まっていないため、出力デバイスが決まる都度、対応する画像サイズに変換する必要がある。また、家庭用テレビでは、デジタル地上波のサービスが開始されており、従来の標準テレビ画像とHD(High Definition)テレビ画像とが混在し、画像サイズの変換が頻繁に用いられる。
画像拡大や画像縮小などの画像変換は、コンピュータグラフィックスにおけるテクスチャマッピングでも多用される(被写体表面に現れる模様やパターンを総称して、「テクスチャ」と呼ぶ)。テクスチャマッピングはコンピュータ内に形成した3次元物体表面に2次元画像を貼り付けて物体表面の模様や質感を表現する手法である。2次元画像を3次元物体の表面の向きに合わせて貼り付けるため、2次元画像に拡大、縮小、変形、回転などの処理を施す必要がある(非特許文献1を参照)。
従来、画像拡大や画像縮小などの処理は、複数の画素間での輝度値の違いを利用している。
すなわち、画像拡大では、サンプリング時に存在しなかった画素データを新たに生成するために、バイリニア法やバイキュービック法などによって、輝度値を内挿する(非特許文献1を参照)。内挿ではサンプリングデータの中間的な値しか生成できないため、エッジなどの先鋭度が劣化する傾向がある。そこで、初期拡大画像として内挿画像を用い、その後、エッジ部を抽出してエッジのみを強調する技術が開示されている(非特許文献2、非特許文献3を参照)。特に、非特許文献3では、多重解像度表現とリプシッツ指数の導入によって、エッジの先鋭さに応じてエッジ強調を選択的に行う工夫が成されている。
画像縮小では、画素の一部を削除するが、サンプリング点の個数が減少するため、サンプリング周期が減少する。サンプリング周波数が画像中の最高周波数の2倍(ナイキスト周波数)に満たない場合、折り返しが発生し、モアレが生じてしまう。そこで、画素の一部を削除する前に低域通過フィルタを掛けて高周波成分を除去し、その後、画素の一部を削除する方法が一般的である。
荒屋真二著,「明解 3次元コンピュータグラフィックス」,共立出版,pp.144−145、2003年9月25日,
H.Greenspan, C.H.Anderson,「Image enhanced by non−linear extrapolation in frequect space」,SPIE Vol.2182 Image and Video Processing II,1994年
中静真ら、「多重スケール輝度こう配平面における画像高解像度化」、電子情報通信学会論文誌 D−II Vol.J81−D−II No.10 pp.2249−2258 1998年10月
画像処理ハンドブック編集委員会編,「画像処理ハンドブック」,昭晃堂,pp.392−407、1987年6月8日
R.J.Woodham,「Photometric methodfor determining surface orientation from multiple images」,Optical Engieering、 vol.19,pp.139−144, 1980年
梅山伸二,「物体の見えからの拡散/鏡面反射成分の分離 −偏光フィルタを介した多重観測と確率的独立性を用いて−」,画像の認識・理解シンポジウム2002,pp.I−469−pp.I−476、2002年
しかし、従来の技術では次のような問題があった。
被写体からの拡散反射成分を対象にした場合、画素間の輝度を線形補間して画像拡大を行うと、拡大後の画像と被写体実物の輝度分布とは必ずしも一致しない。これについて、簡単に説明する。
拡散反射光の輝度値Idは例えば、
で与えられる。ここで、θは被写体の表面法線と光源からの入射光とが成す角度であり、(数1)の式から、拡散反射光の輝度値Idは角度θの余弦に従うことが分かる(非特許文献1、pp.92)。画像拡大する場合、被写体の形状自体は変わらないので、被写体の表面法線を線形補間して高密化すればよい。ところが上述のように、拡散反射光の輝度値は表面法線の余弦で与えられるので、輝度値を線形補間して得た画像では、実際の画像との間で輝度値に誤差が生じる。すなわち、図12に示すように、0から1の余弦である線LN1は上に凸の非線形特性を持ち、このため、輝度値を線形補間したことに相当する直線LN2との誤差が生じる。この誤差は、線LN3のようになり、最大値は0.21に達する。この誤差は、元の画像が有する隣接画素間の輝度値の関係を崩すものであり、見た目には、テクスチャ感を変質させる。
前記の問題に鑑み、本発明は、テクスチャ感を保存できる画像変換を、簡易な処理によって、実現可能にすることを課題とする。
人間の視覚系がコントラストを検出する能力は、輝度が低いほど、低下する、といわれている。すなわち、いわゆるコントラスト感度は、輝度が低くなるほど低くなり、輝度値の低い影部では、人間は、詳細を見分ける能力が低くなる。
図13(a)に示すテスト刺激A,Bは、左から右へ空間解像度が次第に高くなり、かつ、下から上へコントラストが次第に低くなる。そこで、下から上に明暗のパターンが見えなくなる位置を特定することによって、視覚系のコントラスト感度が得られる。なお、テスト刺激Aよりもテスト刺激Bの方が、平均輝度が低い。図13(b)は(a)のテスト刺激A,Bを用いて得た空間周波数とコントラスト感度との関係を示すグラフである。
図13(b)から分かるように、視覚系のコントラスト感度は、画像が明るいほど高くなり、細かな違いを見分ける能力が高い。すなわち、輝度値が高く明るい部分では、コントラスト感度が高いため、上述したような輝度値の線形補間による実際の画像との誤差は、テクスチャ感を変質させる原因になり、無視できない。これに対して、輝度値が低く暗い部分では、上述したような誤差はさほど目立たなくなり、無視できると考えられる。
このような知見から、本発明では、輝度値の低い影部では、輝度値を用いた変換を行い、輝度値の高い、影部以外の部分では、表面法線を用いた変換を行う。
すなわち、本発明では、与えられた第1の画像において、影部を識別し、影部について、所定の画像変換の内容に応じて、画素の輝度値を用いた第1の変換処理を行う一方、影部以外の部分について、前記所定の画像変換の内容に応じて、被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行い、それぞれの処理結果を用いて、第2の画像を生成するものである。
本発明によると、人間の視覚系が低感度である輝度の低い影部では、画素の輝度値を用いた変換処理が行われる一方、人間の視覚系が高感度である輝度の高い影以外の部分では、表面法線パラメータを用いた変換処理が行われる。このため、処理負荷の増大を抑制しつつ、テクスチャ感を保存した画像変換が実現できる。
本発明によると、影部と影以外の部分とで処理を切り分け、影部では、輝度値を用いた変換処理を行い、影以外の部分では、表面法線パラメータを用いた変換処理を行うので、処理負荷とテクスチャ感保存を両立させた画像変換が可能になる。
本発明の第1態様では、第1の画像に対して所定の画像変換を行い、第2の画像を生成する方法として、前記第1の画像において影部を識別する第1のステップと、前記影部について、前記所定の画像変換の内容に応じて画素の輝度値を用いた第1の変換処理を行う第2のステップと、前記影部以外の部分について、前記所定の画像変換の内容に応じて被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行う第3のステップとを備え、前記第2および第3のステップにおける処理結果を用いて、前記第2の画像を生成するものを提供する。
本発明の第2態様では、前記第1の画像を、拡散反射成分のみからなるように処理する前処理を備えた第1態様の画像変換方法を提供する。
本発明の第3態様では、前記所定の画像変換は画像拡大であり、前記第1の変換処理は輝度値を補間して画像を拡大する処理であり、前記第2の変換処理は、表面法線パラメータを補間して画像を拡大する処理である第1態様の画像変換方法を提供する。
本発明の第4態様では、前記所定の画像変換は画像縮小であり、前記第1の変換処理は輝度値をサブサンプリングして画像を縮小する処理であり、前記第2の変換処理は表面法線パラメータをサブサンプリングして画像を縮小する処理である第1態様の画像変換方法を提供する。
本発明の第5態様では、前記第3のステップの前に、前記第1の画像の表面法線パラメータを、空間位置による変化が滑らかになるように補正する処理を含む第4態様の画像変換方法を提供する。
本発明の第6態様では、前記第1のステップは、前記第1の画像について表面法線パラメータを算出するステップと、被写体表面は滑らかであると仮定して、算出した表面法線パラメータを補正するステップと、補正後の表面法線パラメータから、所定の照明方程式に従って輝度値を算出するステップと、算出した輝度値と実際の輝度値との差を画素毎に求め、その差が所定値よりも大きい画素を影部として認識するステップとを備えたものである第1態様の画像変換方法を提供する。
本発明の第7態様では、前記表面法線パラメータとして、表面法線と光源方向とが成す角度を用いる第1態様の画像変換方法を提供する。
本発明の第8態様では、テクスチャ画像を3次元CGモデルのオブジェクトに貼り付ける前処理ステップと、前記オブジェクトに貼り付けられた前記テクスチャ画像において、影部を識別する第1のステップと、前記影部について、所定の画像変換の内容に応じて、画素の輝度値を用いた第1の変換処理を行う第2のステップと、前記影部以外の部分について、前記所定の画像変換の内容に応じて、被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行う第3のステップとを備え、前記第2および第3のステップにおける処理結果を用いて、前記オブジェクトの画像を生成するテクスチャマッピング方法を提供する。
本発明の第9態様では、第1の画像に対して所定の画像変換を行い、第2の画像を生成する装置として、前記第1の画像において、影部を識別する影部識別部と、前記影部識別部によって識別された影部について、前記所定の画像変換の内容に応じて、画素の輝度値を用いた第1の変換処理を行う第1の変換部と、前記影部以外の部分について、前記所定の画像変換の内容に応じて、被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行う第2の変換部とを備え、前記第1および第2の変換部による処理結果を用いて、前記第2の画像を生成するものを提供する。
本発明の第10態様では、画像変換を行うサーバークライアントシステムとして、第9態様の影部識別部を有するサーバーと、第9態様の第1および第2の変換部を有するクライアントとを備えたものを提供する。
本発明の第11態様では、第1の画像に対して所定の画像変換を行い、第2の画像を生成する方法をコンピュータに実行させるプログラムとして、前記第1の画像において、影部を識別する第1のステップと、前記影部について、前記所定の画像変換の内容に応じて、画素の輝度値を用いた第1の変換処理を行う第2のステップと、前記影部以外の部分について、前記所定の画像変換の内容に応じて、被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行う第3のステップと、前記第2および第3のステップにおける処理結果を用いて、前記第2の画像を生成する第4のステップとをコンピュータに実行させるものを提供する。
以下、本発明の実施の形態について、図面を参照して説明する。
まず初めに、影部を識別する方法について、図1を用いて説明する。図1は凹凸のある被写体に光が照射されたときの画像と輝度分布を模式的に示す図である。図1では、被写体の表面の形状が、山、谷、山と滑らかに変化している。
ここで、光源LSの光が真上から鉛直に入射した場合(ケースA)、被写体表面のどの位置にも影が生じないので、輝度分布から(数1)に従って表面法線を求めると、被写体表面の形状が正確に算出される。一方、光源LSからの光が左斜め45度方向から入射する場合(ケースB)は、谷の左側に影ができるので(影部SH)、輝度分布では、DC1,DC2のような輝度が不連続に変化する位置が生じる。このため、輝度分布から(数1)に従って表面法線を求めると、算出される被写体表面の形状は位置DC1,DC2において不連続になってしまう。これは(数1)が影を含まないことを前提とするモデルであることに起因している。すなわち、輝度分布から表面法線を求める場合、画像に影部が含まれているときは、表面法線の不連続性という矛盾が発生する。
このことを利用して、本実施形態では、被写体表面の形状は滑らかに変化していると仮定して、この滑らかさの仮定が崩れるとき、影部であると判断する。具体的には、元の画像の輝度値から(数1)に従って表面法線を算出し、滑らかさの仮定から表面法線を補正する。そして、補正された表面法線から(数1)に従って輝度値を求め直し、得られた輝度値と元の画像の輝度値とが異なるとき、その部分を影部と判断する。
(第1の実施形態)
図2は本発明の第1の実施形態に係る画像変換方法を示すフローチャートである。本実施形態では、与えられた第1の画像に対して、所定の画像変換として画像拡大を行い、第2の画像を生成する。なお、本実施形態に係る画像変換方法は、当該方法を実現するためのプログラムをコンピュータに実行させることによって、実現することができる。
まずステップS00において、初期設定を行う。図3は被写体表面SF上の注目点Pに関する幾何条件を示す模式図である。ステップS00では、図3に示す、光源ベクトルL、注目点の入射光の輝度Ii、および被写体の拡散反射成分の双方向反射率ρdを取得する。ここでは、光源ベクトルL、入射光の輝度Iiおよび双方向反射率ρdは予め設定されているものとする。また、後述のステップS2においてハイライト部を検出するために用いられるハイライト部判定用閾値THHの設定も行う。
ステップS1において、第1の画像を、拡散反射成分のみからなるように処理する前処理を実行する。被写体からの反射光は、一般に鏡面反射成分と拡散反射成分とからなるが、本発明では、拡散反射成分のみを対象とするため、拡散反射成分のみが撮像されている画素を抽出する、または、拡散反射成分のみを撮影して第1の画像として記録する。
拡散反射と鏡面反射とを分離する手法として、例えば非特許文献6には、鏡面反射成分が偏光する性質を利用する技術が開示されている。光が物体表面で反射する場合、光の入反射面に平行な電場成分と垂直な電場成分とでは、通常、フレネル係数が異なるため、反射光は偏光する。このため、鏡面反射成分は一般的に偏光しているが、拡散反射は乱反射であるため、偏光性を持たない。そこで、図4に示すように、偏光フィルタPFを通して反射光RRを観測した場合、透過光RRPの強度は、反射光RRのうち偏光フィルタPFの偏光軸PFAに平行な成分の強度となる。このため、偏光フィルタPFを回転させながら物体表面SFからの鏡面反射成分を観測した場合、透過光RRPの強度は偏光フィルタPFの偏光軸PFAと鏡面反射の偏光面SPPとの間の角度ψに応じて変化し、次式で与えられる。
ここで、Ldは拡散反射成分の輝度、Lsは鏡面反射成分の輝度、θ’iは微小反射面での光の入射角、FPは絶縁体に対する平行電場成分のフレネル係数、FVは絶縁体に対する垂直電場成分のフレネル係数である。
次にステップS2において、第1の画像のハイライト部を検出する。ハイライト部とは輝度が最も高い画素のことをいい、図1の輝度分布では、位置HL1,HL2,HL3,HL4に相当する。ハイライト部の表面法線は、光源LSからの入射光方向(すなわち図3の光源ベクトルL)に一致する。光源ベクトルLはステップS00で与えられるため、ハイライト部の表面法線ベクトルも既知となる。
なお、撮像された画像は通常、ノイズを含むため、各ハイライト部(例えば位置HL1〜HL4)の輝度が一致することは稀である。このため、ハイライト部を検出する場合には、ある程度、輝度値の幅を持たせるのが好ましい。そこで例えば、画像中の最高輝度Idmaxの95%をハイライト部判定用閾値THHとし、輝度値がこの閾値THHよりも大きい画素をハイライト部として検出する。
次にステップS3において、第1の画像の輝度値から(数1)に従って、推定表面法線ベクトルPNを算出する。表面法線(ベクトル)を表す表面法線パラメータとして、表面法線と光源方向とが成す角度θ(または余弦cosθ)が用いられる。ここで、第1の画像の輝度値が最高輝度Idmaxを持つとき、光源ベクトルLと表面法線ベクトルNが一致し、両ベクトルの内積が1と最大になるため、拡散反射光の輝度値Idを最高輝度Idmaxで正規化しておく。
ステップS4において、近傍画素間で推定表面法線ベクトルPNの滑らかさの補正を行い、補正表面法線ベクトルSPNを算出する。すなわち、表面法線パラメータを、空間位置による変化が滑らかになるように補正する。図5はステップS4における補正処理を概念的に示す図である。図5(a)では、折り返しのある変化La1が滑らかな変化La2に補正されており、図5(b)では、飛びがある変化Lb1が滑らかに連続した変化Lb2に補正されている。
ここで、影部以外の推定表面法線ベクトルPNは信頼性が高いため、ここでの補正は、影部以外の部分をできるだけ多く含めて行うのが望ましいが、補正方法そのものは任意であり、制限を与えるものではない。一例として、スプライン補間などがある。被写体形状のモデルはコンピュータグラフィックスの分野で多々開発されており、ベジエ曲線やNURBS曲線などによる自由曲面の表現方法がある(非特許文献1 pp.36−38)。本発明では、影部は輝度値で補間をして拡大画像を生成するため、補正された表面法線そのものは利用されない。すなわち、ここで表面法線を求める目的は、影部の検出にあり、影が落ちているか否かが重要であるのであって、補正された表面法線1本1本の精度を求めるものではない。
ステップS5において、補正表面法線ベクトルSPNから(数1)に従って、拡散反射光の輝度値Ivを計算し、これを補正輝度値SPIvとして出力する。
ステップS6において、補正輝度値SPIvと第1の画像の輝度値とを比較し、異なる画素の部分は影部と判断し、一致する画素の部分は影部以外であると判断する。なお、補正輝度値SPIvと第1の画像の輝度値との差に許容範囲(例えば、輝度値を0〜1に正規化したとき、0.01程度)を設けて、補正輝度値SPIvと第1の画像の輝度値との差が許容範囲を超えたとき、影部に該当すると判定してもかまわない。ステップS2〜S6によって、本発明の第1のステップが構成されている。
影部と判定された部分については、第2のステップとしてのステップS7において、第1の画像の輝度値を補間して画像を拡大する。一方、影部以外と判定された部分については、ステップS8において、補正表面法線ベクトルSPNを補間して画像を拡大する。そしてステップS9において、補間拡大された補正表面法線ベクトルから(数1)に従って拡散反射光の輝度値Ivを算出する。ステップS8,S9によって、本発明の第3のステップが構成されている。本発明は、補間方法として処理負荷の小さい線形補間法が適用できるように工夫されているが、補間法そのものを限定するものではない。
ステップS7およびステップS8,S9における処理結果を用いて、第2の画像が生成される。
以上のように本実施形態によると、人間の視覚系が低感度である輝度の低い影部では、輝度を線形補間し、人間の視覚系が高感度である輝度の高い影以外の部分では、表面法線を線形補間することによって、画像拡大が実現される。このような切り分けた処理によって、処理負荷とテクスチャ感保存とを両立させた画像拡大が可能になる。
また、表面法線が必要になる影以外の部分では、画素の輝度値から表面法線を推定するため、特別な機器を要することなく、撮像情報のみから、テクスチャ感が保存された画像拡大を実現することができる。被写体の表面法線を求めるためには、レンジファインダによる計測やPhotometric stereoによる算出などが利用できる。ところが、前者は、機器の規模や被写体の大きさなどの観点から利用できるシーンが限られ、汎用性の点で問題があり(非特許文献4参照)、後者は、被写体表面に影が落ちていると原理的に表面法線の算出は不可能であるので(非特許文献5参照)、被写体の向きや光源の位置を変えるなど観測点に影を作らない工夫が必要であり、実用面で問題がある。これに対して本実施形態では、特別な機器なしに、撮像情報のみから、表面法線を求めることができる。
なお、ステップS2〜S6を実行する影部識別部と、ステップS7を実行する第1の変換部と、ステップS8,S9を実行する第2の変換部とを備えた画像変換装置を、構成してもよい。
(第2の実施形態)
図6は本発明の第2の実施形態に係る画像変換方法を示すフローチャートである。本実施形態では、与えられた第1の画像に対して、所定の画像変換として画像縮小を行い、第2の画像を生成する。なお、本実施形態に係る画像変換方法は、当該方法を実現するためのプログラムをコンピュータに実行させることによって、実現することができる。また、ステップS2〜S6を実行する影部識別部と、ステップS17を実行する第1の変換部と、ステップS18,S19を実行する第2の変換部とを備えた画像変換装置を、構成してもよい。
図6において、ステップS00,S1〜S6の処理は、図2と同様であるため、ここではその説明を省略する。
ステップS6において影部と判定された部分については、第2のステップとしてのステップS17において、第1の画像の輝度値をサブサンプリングして画像を縮小する。影部では、視覚系のコントラスト感度が低いため、モアレ発生によるテクスチャ感の変質は影部以外の部分よりも少なくなる。
一方、ステップS6において影部以外と判定された部分については、ステップS18において、補正表面法線ベクトルSPNをサブサンプリングして画像を縮小する。そしてステップS19において、サブサンプリングされた補正表面法線ベクトルから(数1)に従って拡散反射光の輝度値Ivを算出する。ステップS18,S19によって、本発明の第3のステップが構成されている。
なお、画像縮小に伴うサンプリング点数の減少によって、ナイキスト周波数が低下し、モアレが発生する可能性が高まる。ところが本実施形態では、ステップS4において、表面法線パラメータに対し、空間位置による変化が滑らかになるように補正を行っている。このため、高周波成分が抑えられ、モアレの発生を抑制することができる。すなわち、ステップS4が、表面法線パラメータをサブサンプリングする際の前処理の役割を果たしている。すなわち、この前処理によって、従来技術のように、別途、低域通過フィルタを作用させる必要がない。
以上のように本実施形態によると、人間の視覚系が低感度である輝度の低い影部では、輝度をサブサンプリングし、人間の視覚系が高感度である輝度の高い影以外の部分では、表面法線をサブサンプリングすることによって、モアレ発生を抑えた画像縮小が実現される。このような切り分けた処理によって、処理負荷とテクスチャ感保存とを両立させた画像縮小が可能になる。また、表面法線が必要になる影以外の部分では、画素の輝度値から表面法線を推定するため、特別な機器を要することなく、撮像情報のみから、テクスチャ感が保存された画像縮小を実現することができる。
(第3の実施形態)
図7は本発明の第3の実施形態に係る画像変換方法を実現する構成例を示すブロック図である。本実施形態では、与えられた第1の画像IINに対して、所定の画像変換として画像拡大を行い、第2の画像IOUTを生成する。なお、本実施形態に係る画像変換方法は、当該方法を実現するためのプログラムをコンピュータに実行させることによって、実現することができる。
第1の画像IINは、拡散反射・鏡面反射分離部11によって、鏡面反射成分SRと拡散反射成分DRとに分離される。拡散反射・鏡面反射分離部11は、上述のステップS1と同様の処理を行う。例えば、図4に示す偏光性を用いた方法(非特許文献6を参照)を活用する。拡散反射成分DRは影部検出部12によって、影部SPと影部以外NSPとに分離される。影部検出部12は、例えば上述のステップS2〜S6と同様の処理を行う。影部SPは輝度値補間部13によって空間的に高密化される。画像合成部14は、輝度値補間部13の出力である輝度高密化画像LDIと、後述するパラメータ高密化画像IPDIとを合成して、第2の画像IOUTを生成する。パラメータ高密化画像IPDIは、拡散反射成分の影部以外NSPと鏡面反射成分SRとが空間的に高密化された画像である。
鏡面反射成分SRと影部以外NSPは、画像特徴解析部15によって画像特徴ベクトルIINFVに変換される。画像特徴解析部15では、例えば、ウェーブレット変換等による空間応答特性を用いる。画像特徴ベクトルデータベース21は、画像特徴ベクトルIINFVに最も近い画像特徴ベクトルを選定し、画像特徴ベクトル番号IINFVNとして出力する。照明方程式パラメータデータベース22は、画像特徴ベクトル番号IINFVNを受けて、これに相当する照明方程式パラメータを原パラメータIINLEPとして出力する。照明方程式としては例えば、
を用いる。ここで、Iaは環境光の輝度、ρaは環境光の反射率、Iiは照明の輝度、ベクトルNは表面法線ベクトル、ベクトルLは光源方向を表わす光源ベクトル、dωは光源の立体角、ρdは拡散反射成分の双方向反射率、ρsは鏡面反射成分の双方向反射率、kdは拡散反射成分比、ksは鏡面反射成分比を表わし、kd+ks=1の関係を持つ。
原パラメータIINLEPは、パラメータ高密化部16によって空間的に高密化される。例えば図8に示すように、照明方程式パラメータのうち、類似の値を持つ隣接画素を同質領域としてまとめ、同質領域内で照明方程式パラメータを高密化する。図8では、画素(黒丸で表す)の属性平均値がP1である同質領域AE1と、画素の属性平均値がP2である同質領域AE2とが隣接しており、その境界に位置する画素S1とS2の輝度差がエッジを形成している。図8(a)の分布を例えば2倍に画像拡大するためには、図8(b)のように、画素の間に画素(白丸で表す)を挿入すればいい。挿入する画素の属性値は、例えば隣接する画素の属性平均値とする。またエッジを形成する画素S1と画素S2との間には、いずれかの属性値をそのままコピーして新たな画素S3を生成すればよい。図8(b)では、画素S1の属性値を画素S3にコピーし、画素S2と画素S3との輝度差を図8(a)における画素S1と画素S2の輝度差に一致させる。これにより、高密化後においてもエッジは保存される。
ところで、原パラメータIINLEPの中には表面法線ベクトルNが含まれるが、これは、影部以外NSPの輝度値から表面法線算出部19によって算出した推定表面法線ENとほぼ同一になる。ただし、照明方程式パラメータデータベース22はデータ容量の観点から離散的にデータを持つため、例えば(数1)に従って算出した推定表面法線ENの方が、真値に対する誤差が小さいと考えられる。そこで、照明方程式パラメータのうち、表面法線ベクトルNに関しては、原パラメータIINLEPではなく、推定表面法線ENを用いるのが好ましい。
パラメータ高密化部16から出力された高密化パラメータNLEPは、画像生成部17において輝度値に戻され、パラメータ高密化画像IPDIとして出力される。そして、上述したとおり、輝度高密化画像LDIとパラメータ高密化画像IPDIとが、画像合成部14において合成されて、第2の画像IOUTが得られる。
なお、画像縮小についても、輝度値補間に代えて、輝度値のサブサンプリングを行い、パラメータの高密化に代えて、パラメータの低密化を行うことによって、同様に実行可能となる。
(第4の実施形態)
本発明の第4の実施形態では、上述したような画像変換方法を、コンピュータグラフィックスにおけるテクスチャマッピングに適用する。
図9はレンダリング処理の主な流れを示すフローチャートである。レンダリング処理とは、コンピュータグラフィックスにおいて、コンピュータ内に生成した3次元モデルを2次元の画像データに変換する処理のことである(例えば非特許文献1のpp.79を参照)。図9に示すように、レンダリング処理は、視点と光源の設定S101、座標変換S102、陰面消去S103、シェーディングとシャドーイングS104、テクスチャマッピングS105、およびビューポート変換S106が、主なステップとなる。
まずステップS101において、視点VAと光源LSが設定されると、見え方が決まる。次にステップS102において、ローカル座標系で管理されていた各オブジェクトが正規座標系にまとめられ、ステップS103において、視点から見えない陰面部が削除される。そしてステップS104において、光源LSからオブジェクトOA、OBへの光のあたり方が計算され、陰Shadeと影Shadowが生成される。
そして、ステップS105においてテクスチャマッピングを行い、オブジェクトOA、OBに対するテクスチャTA、TBを生成する。テクスチャは画像データとして取得するのが一般的であり、テクスチャ画像TIAをオブジェクトOAの形状に合わせて変形し、オブジェクトOA上に合成する。同様に、テクスチャ画像TIBをオブジェクトOBの形状に合わせて変形し、オブジェクトOB上に合成する。
本実施形態では、このテクスチャマッピングにおいて、上述したような画像変換を適用する。すなわち、まず、テクスチャ画像TIA,TIBを、3次元CGモデルのオブジェクトOA,OBに貼り付ける前処理を行う。そして、図2のフローに従って処理を行う。ステップS00では、2次元テクスチャ画像TIA,TIBの光学パラメータと、オブジェクトOA,OBに貼り付けられたテクスチャ画像TIA,TIBの各画素について、図3に示すようなパラメータを取得する。以降の処理は、第1の実施形態と同様である。
最後に、ステップS106において、ビューポート変換を行い、表示されるスクリーンSCNまたはウィンドウWNDに合わせた画像サイズの2次元画像を生成する。
ここで、レンダリング処理は、視点や光源の位置が変わるために実行する必要があり、ゲーム機器のようなインタラクティブシステムでは、頻繁にレンダリング処理が繰り返される。テクスチャマッピングでは通常、物体表面に貼り付けるテクスチャデータを画像として準備するので、視点や光源が変わると、そのたびに、テクスチャデータを拡大、縮小、回転、色換え等によって変換する必要がある。
上述したように、輝度値のみに基づいた画像変換では、テクスチャ感を保存して新たな画像を作ることが困難である。これに対して本実施形態のように、影部では輝度値を用いた補間やサブサンプリングを行い、影部以外では表面法線の補間やサブサンプリングを行うことによって、テクスチャ感を保存したまま、様々な視点や光源設定に応じたテクスチャマッピングを実現することができる。
以下、本発明を実現する構成例を例示する。
(第1の構成例)
図10は第1の構成例を示す図であり、パーソナルコンピュータを用いて本発明に係る画像変換を行う構成の一例である。カメラ101の解像度はディスプレイ102の解像度よりも低く、ディスプレイ102の表示能力を最大限に生かすために、メインメモリ103にロードされた画像変換プログラムによって拡大画像を作成する。カメラ101で取り込まれた低解像度画像は画像メモリ104に記録される。外部記憶装置105には予め、光源ベクトルL、注目点の入射光の輝度Ii、被写体の拡散反射成分の双方向反射率ρd、およびハイライト部判定用閾値THHが設定されており、メインメモリ103の画像変換プログラムから参照可能になっている。
画像変換プログラムによる処理は、第1の実施形態と同様であり、カメラ画像から影部を識別し、影部では輝度値を線形補間し、影部以外では表面法線を線形補間する。すなわち、メモリバス106を介して画像メモリ104の低解像度画像を読み込み、これをディスプレイ102の解像度に合わせて高解像度画像に変換し、再びメモリバス106経由でビデオメモリ107に転送する。ビデオメモリ107に転送された高解像度画像は、ディスプレイ102に表示される。
なお、本発明は図10の構成に拘束されるものではなく、様々な構成をとることができる。例えば、光源ベクトルL、入射光の輝度Ii、被写体の拡散反射成分の双方向反射率ρdは、計測器によって被写体から直接計測してもかまわない。また低解像度画像をネットワーク108から取得してもかまわない。また、外部記憶装置105にテクスチャデータを保持し、メインメモリ103において第4の実施形態で示したテクスチャマッピングを実行してもかまわない。
また、カメラ101の解像度がディスプレイ102の解像度よりも高い場合は、メインメモリ103にロードされた画像変換プログラムは、第2の実施形態で示したように画像縮小を行えばよい。また、カメラ101としては、カメラ付携帯電話やデジタルスチルカメラ、ビデオムービーカメラなど任意のタイプの撮像装置が適用できる。さらに、予め録画した映像を再生する再生装置においても、本発明を実現することができる。
(第2の構成例)
図11は第2の構成例を示す図であり、サーバークライアントシステムを用いて本発明に係る画像変換を行う構成の一例である。カメラ201の解像度はディスプレイ202の解像度よりも低く、ディスプレイ202の表示能力を最大限に生かすために、サーバークライアントシステムにおいて画像拡大を実行する。
サーバー301では、影部識別部203が、第1の実施形態と同様の処理によって、入力画像としての第1の画像IINの影部を識別し、影部の情報を含む影識別画像SIINを生成する。ここでの影識別画像SIINは例えば、影部を0、影部以外を1で表現した1ビット階調の画像である。そしてデータ送信部204が、ネットワーク206を介してクライアント302に、第1の画像IINと影識別画像SIINを送信する。クライアント302では、本発明の第1の変換部および第2の変換部を含む画像生成部205が、第1の実施形態と同様の処理によって、受信した第1の画像IINと影識別画像SIINから第2の画像としての拡大画像を生成し、ディスプレイ202に供給する。
なお、本発明は図11の構成に拘束されるものではなく、カメラ201の解像度がディスプレイ202の解像度よりも高い場合は、第2の実施形態と同様に、画像生成部205が画像を縮小することも可能である。また、カメラ201としては、カメラ付携帯電話やデジタルスチルカメラ、ビデオムービーカメラなど任意のタイプの撮像装置が適用できる。さらに、予め録画した映像を再生する再生装置においても、本発明を実現することができる。
以上のように本発明は、広く普及しているパーソナルコンピュータや、サーバークライアントシステム、または、カメラ付携帯電話やデジタルスチルカメラ、ビデオムービーカメラ、テレビなどビデオ機器全般で実行可能であり、特別な機器、運用、管理などは必要ない。なお、専用ハードウェアへの実装やソフトウェアとハードウェアの組み合わせなど、機器接続形態や機器内部の構成を拘束するものではない。
本発明では、処理負荷とテクスチャ感保存を両立させた画像変換が可能になるので、例えば、スポーツや観光、記念撮影など目の前のシーンを映像として記録する映像エンタテイメント分野において利用することができる。また、文化芸術の分野では、被写体や撮影場所に制限されない自由度の高いデジタルアーカイブシステムを提供するために利用することができる。
影と輝度分布の関係を模式的に示す図である。
本発明の第1の実施形態に係る画像変換方法を示すフローチャートである。
前提となる幾何条件と光学条件を示す概念図である。
表面法線ベクトルの計測手法の例を説明するための図である。
表面法線ベクトルの補正処理を概念的に示す図である。
本発明の第2の実施形態に係る画像変換方法を示すフローチャートである。
本発明の第3の実施形態に係る画像変換方法を実現する構成例を示すブロック図である。
パラメータを高密化する処理を示す図である。
本発明の第4の実施形態を説明するための図であり、レンダリング処理の流れを示す図である。
本発明を実現する第1の構成例であり、パーソナルコンピュータを用いた構成を示す図である。
本発明を実現する第2の構成例であり、サーバークライアントシステムを用いた構成を示す図である。
輝度値の線形補間と表面法線の線形補間との誤差を説明するための図である。
コントラスト感度の例を示す図である。
符号の説明
SH 影部
203 影部識別部
205 画像生成部
IIN 入力画像(第1の画像)
SIIN 影識別画像
本発明は、画像変換に関するものであり、特に、拡大や縮小などの画像変換やテクスチャマッピングを、テクスチャ感を保存したまま実現する技術に関するものである。
画像機器とネットワークのデジタル化により、任意の画像機器が接続できるようになり、画像交換の自由度が高まっている。そして、利用者がシステムの違いに制約を受けることなく、自由に画像を扱える環境が整備されてきた。例えば、利用者は、デジタルスチルカメラで撮影した画像をプリンタに出力したり、ネットワーク上で公開したり、家庭のテレビで鑑賞したりすることが可能になっている。
逆にシステム側は、様々な画像フォーマットに対応する必要があり、画像フォーマット変換には自ずと高度化が求められる。例えば画像サイズの変換は頻繁に発生し、アップコンバータ(画素数、ライン数を増やす変換装置)やダウンコンバータ(画素数、ライン数を減らす装置)が必要になる。例えば、600dpiの解像度でA4用紙(297mm×210mm)に印刷する場合、7128画素×5040ラインの原稿が必要になるが、多くのデジタルスチルカメラの解像度はこれを下回るため、アップコンバータが必要になる。一方、ネットワーク上に公開された画像は、最終的な出力形態が決まっていないため、出力デバイスが決まる都度、対応する画像サイズに変換する必要がある。また、家庭用テレビでは、デジタル地上波のサービスが開始されており、従来の標準テレビ画像とHD(High Definition)テレビ画像とが混在し、画像サイズの変換が頻繁に用いられる。
画像拡大や画像縮小などの画像変換は、コンピュータグラフィックスにおけるテクスチャマッピングでも多用される(被写体表面に現れる模様やパターンを総称して、「テクスチャ」と呼ぶ)。テクスチャマッピングはコンピュータ内に形成した3次元物体表面に2次元画像を貼り付けて物体表面の模様や質感を表現する手法である。2次元画像を3次元物体の表面の向きに合わせて貼り付けるため、2次元画像に拡大、縮小、変形、回転などの処理を施す必要がある(非特許文献1を参照)。
従来、画像拡大や画像縮小などの処理は、複数の画素間での輝度値の違いを利用している。
すなわち、画像拡大では、サンプリング時に存在しなかった画素データを新たに生成するために、バイリニア法やバイキュービック法などによって、輝度値を内挿する(非特許文献1を参照)。内挿ではサンプリングデータの中間的な値しか生成できないため、エッジなどの先鋭度が劣化する傾向がある。そこで、初期拡大画像として内挿画像を用い、その後、エッジ部を抽出してエッジのみを強調する技術が開示されている(非特許文献2、非特許文献3を参照)。特に、非特許文献3では、多重解像度表現とリプシッツ指数の導入によって、エッジの先鋭さに応じてエッジ強調を選択的に行う工夫が成されている。
画像縮小では、画素の一部を削除するが、サンプリング点の個数が減少するため、サンプリング周期が減少する。サンプリング周波数が画像中の最高周波数の2倍(ナイキスト周波数)に満たない場合、折り返しが発生し、モアレが生じてしまう。そこで、画素の一部を削除する前に低域通過フィルタを掛けて高周波成分を除去し、その後、画素の一部を削除する方法が一般的である。
荒屋真二著,「明解 3次元コンピュータグラフィックス」,共立出版,pp.144−145、2003年9月25日,
H.Greenspan, C.H.Anderson,「Image enhanced by non−linear extrapolation in frequect space」,SPIE Vol.2182 Image and Video Processing II,1994年
中静真ら、「多重スケール輝度こう配平面における画像高解像度化」、電子情報通信学会論文誌 D−II Vol.J81−D−II No.10 pp.2249−2258 1998年10月
画像処理ハンドブック編集委員会編,「画像処理ハンドブック」,昭晃堂,pp.392−407、1987年6月8日
R.J.Woodham,「Photometric methodfor determining surface orientation from multiple images」,Optical Engieering、 vol.19,pp.139−144, 1980年
梅山伸二,「物体の見えからの拡散/鏡面反射成分の分離 −偏光フィルタを介した多重観測と確率的独立性を用いて−」,画像の認識・理解シンポジウム2002,pp.I−469−pp.I−476、2002年
しかし、従来の技術では次のような問題があった。
被写体からの拡散反射成分を対象にした場合、画素間の輝度を線形補間して画像拡大を行うと、拡大後の画像と被写体実物の輝度分布とは必ずしも一致しない。これについて、簡単に説明する。
拡散反射光の輝度値Idは例えば、
で与えられる。ここで、θは被写体の表面法線と光源からの入射光とが成す角度であり、(数1)の式から、拡散反射光の輝度値Idは角度θの余弦に従うことが分かる(非特許文献1、pp.92)。画像拡大する場合、被写体の形状自体は変わらないので、被写体の表面法線を線形補間して高密化すればよい。ところが上述のように、拡散反射光の輝度値は表面法線の余弦で与えられるので、輝度値を線形補間して得た画像では、実際の画像との間で輝度値に誤差が生じる。すなわち、図12に示すように、0から1の余弦である線LN1は上に凸の非線形特性を持ち、このため、輝度値を線形補間したことに相当する直線LN2との誤差が生じる。この誤差は、線LN3のようになり、最大値は0.21に達する。この誤差は、元の画像が有する隣接画素間の輝度値の関係を崩すものであり、見た目には、テクスチャ感を変質させる。
前記の問題に鑑み、本発明は、テクスチャ感を保存できる画像変換を、簡易な処理によって、実現可能にすることを課題とする。
人間の視覚系がコントラストを検出する能力は、輝度が低いほど、低下する、といわれている。すなわち、いわゆるコントラスト感度は、輝度が低くなるほど低くなり、輝度値の低い影部では、人間は、詳細を見分ける能力が低くなる。
図13(a)に示すテスト刺激A,Bは、左から右へ空間解像度が次第に高くなり、かつ、下から上へコントラストが次第に低くなる。そこで、下から上に明暗のパターンが見えなくなる位置を特定することによって、視覚系のコントラスト感度が得られる。なお、テスト刺激Aよりもテスト刺激Bの方が、平均輝度が低い。図13(b)は(a)のテスト刺激A,Bを用いて得た空間周波数とコントラスト感度との関係を示すグラフである。
図13(b)から分かるように、視覚系のコントラスト感度は、画像が明るいほど高くなり、細かな違いを見分ける能力が高い。すなわち、輝度値が高く明るい部分では、コントラスト感度が高いため、上述したような輝度値の線形補間による実際の画像との誤差は、テクスチャ感を変質させる原因になり、無視できない。これに対して、輝度値が低く暗い部分では、上述したような誤差はさほど目立たなくなり、無視できると考えられる。
このような知見から、本発明では、輝度値の低い影部では、輝度値を用いた変換を行い、輝度値の高い、影部以外の部分では、表面法線を用いた変換を行う。
すなわち、本発明では、与えられた第1の画像において、影部を識別し、影部について、所定の画像変換の内容に応じて、画素の輝度値を用いた第1の変換処理を行う一方、影部以外の部分について、前記所定の画像変換の内容に応じて、被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行い、それぞれの処理結果を用いて、第2の画像を生成するものである。
本発明によると、人間の視覚系が低感度である輝度の低い影部では、画素の輝度値を用いた変換処理が行われる一方、人間の視覚系が高感度である輝度の高い影以外の部分では、表面法線パラメータを用いた変換処理が行われる。このため、処理負荷の増大を抑制しつつ、テクスチャ感を保存した画像変換が実現できる。
また、本発明では、画像について表面法線パラメータを算出し、被写体表面は滑らかであると仮定して、算出した表面法線パラメータを補正し、補正後の表面法線パラメータから所定の照明方程式に従って輝度値を算出し、算出した輝度値と実際の輝度値との差を画素毎に求め、その差が所定値よりも大きい画素を影部として認識する。
本発明によると、影部を精度良く識別することができる。
本発明によると、影部と影以外の部分とで処理を切り分け、影部では、輝度値を用いた変換処理を行い、影以外の部分では、表面法線パラメータを用いた変換処理を行うので、処理負荷とテクスチャ感保存を両立させた画像変換が可能になる。
本発明の第1態様では、第1の画像に対して画像拡大または画像縮小である所定の画像変換を行い、第2の画像を生成する方法として、前記第1の画像において影部を識別する第1のステップと、前記影部について、前記所定の画像変換の内容に応じて画素の輝度値を用いた第1の変換処理を行う第2のステップと、前記影部以外の部分について、前記所定の画像変換の内容に応じて被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行う第3のステップとを備え、前記第1のステップは、前記第1の画像について、表面法線パラメータを算出するステップと、被写体表面は滑らかであると仮定して、算出した表面法線パラメータを補正するステップと、補正後の表面法線パラメータから、所定の照明方程式に従って、輝度値を算出するステップと、算出した輝度値と実際の輝度値との差を、画素毎に求め、その差が所定値よりも大きい画素を、影部として認識するステップとを備え、前記第2および第3のステップにおける処理結果を用いて、前記第2の画像を生成するものを提供する。
本発明の第2態様では、前記第1の画像を、拡散反射成分のみからなるように処理する前処理を備えた第1態様の画像変換方法を提供する。
本発明の第3態様では、前記所定の画像変換は画像拡大であり、前記第1の変換処理は輝度値を補間して画像を拡大する処理であり、前記第2の変換処理は、表面法線パラメータを補間して画像を拡大する処理である第1態様の画像変換方法を提供する。
本発明の第4態様では、前記所定の画像変換は画像縮小であり、前記第1の変換処理は輝度値をサブサンプリングして画像を縮小する処理であり、前記第2の変換処理は表面法線パラメータをサブサンプリングして画像を縮小する処理である第1態様の画像変換方法を提供する。
本発明の第5態様では、前記第3のステップの前に、前記第1の画像の表面法線パラメータを、空間位置による変化が滑らかになるように補正する処理を含む第4態様の画像変換方法を提供する。
本発明の第6態様では、前記表面法線パラメータとして、表面法線と光源方向とが成す角度を用いる第1態様の画像変換方法を提供する。
本発明の第7態様では、テクスチャ画像を3次元CGモデルのオブジェクトに貼り付ける前処理ステップと、前記オブジェクトに貼り付けられた前記テクスチャ画像において、影部を識別する第1のステップと、前記影部について、画像拡大または画像縮小である所定の画像変換の内容に応じて、画素の輝度値を用いた第1の変換処理を行う第2のステップと、前記影部以外の部分について、前記所定の画像変換の内容に応じて、被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行う第3のステップとを備え、前記第1のステップは、前記テクスチャ画像について、表面法線パラメータを算出するステップと、被写体表面は滑らかであると仮定して、算出した表面法線パラメータを補正するステップと、補正後の表面法線パラメータから、所定の照明方程式に従って、輝度値を算出するステップと、算出した輝度値と実際の輝度値との差を、画素毎に求め、その差が所定値よりも大きい画素を、影部として認識するステップとを備え、前記第2および第3のステップにおける処理結果を用いて、前記オブジェクトの画像を生成するテクスチャマッピング方法を提供する。
本発明の第8態様では、第1の画像に対して画像拡大または画像縮小である所定の画像変換を行い、第2の画像を生成する装置として、前記第1の画像において、影部を識別する影部識別部と、前記影部識別部によって識別された影部について、前記所定の画像変換の内容に応じて、画素の輝度値を用いた第1の変換処理を行う第1の変換部と、前記影部以外の部分について、前記所定の画像変換の内容に応じて、被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行う第2の変換部とを備え、前記影部識別部は、前記第1の画像について、表面法線パラメータを算出する手段と、被写体表面は滑らかであると仮定して、算出した表面法線パラメータを補正する手段と、補正後の表面法線パラメータから、所定の照明方程式に従って、輝度値を算出する手段と、算出した輝度値と実際の輝度値との差を、画素毎に求め、その差が所定値よりも大きい画素を、影部として認識する手段とを備え、前記第1および第2の変換部による処理結果を用いて、前記第2の画像を生成するものを提供する。
本発明の第9態様では、画像変換を行うサーバークライアントシステムとして、第8態様の影部識別部を有するサーバーと、第8態様の第1および第2の変換部を有するクライアントとを備えたものを提供する。
本発明の第10態様では、第1の画像に対して画像拡大または画像縮小である所定の画像変換を行い、第2の画像を生成する方法をコンピュータに実行させるプログラムとして、前記第1の画像において、影部を識別する第1のステップと、前記影部について、前記所定の画像変換の内容に応じて、画素の輝度値を用いた第1の変換処理を行う第2のステップと、前記影部以外の部分について、前記所定の画像変換の内容に応じて、被写体の表面法線を表す表面法線パラメータを用いた第2の変換処理を行う第3のステップと、前記第2および第3のステップにおける処理結果を用いて、前記第2の画像を生成する第4のステップとをコンピュータに実行させるものであり、前記第1のステップは、前記第1の画像について、表面法線パラメータを算出するステップと、被写体表面は滑らかであると仮定して、算出した表面法線パラメータを補正するステップと、補正後の表面法線パラメータから、所定の照明方程式に従って、輝度値を算出するステップと、算出した輝度値と実際の輝度値との差を、画素毎に求め、その差が所定値よりも大きい画素を、影部として認識するステップとを備えたものを提供する。
本発明の第11態様では、画像において影部を識別する影認識方法として、前記画像について、表面法線パラメータを算出するステップと、被写体表面は滑らかであると仮定して、算出した表面法線パラメータを補正するステップと、補正後の表面法線パラメータから、所定の照明方程式に従って、輝度値を算出するステップと、算出した輝度値と実際の輝度値との差を、画素毎に求め、その差が所定値よりも大きい画素を、影部として認識するステップとを備えたものを提供する。
本発明の第12態様では、画像において、影部を識別する影認識装置として、前記画像について、表面法線パラメータを算出する手段と、被写体表面は滑らかであると仮定して、算出した表面法線パラメータを補正する手段と、補正後の表面法線パラメータから、所定の照明方程式に従って、輝度値を算出する手段と、算出した輝度値と実際の輝度値との差を、画素毎に求め、その差が所定値よりも大きい画素を、影部として認識する手段とを備えたものを提供する。
以下、本発明の実施の形態について、図面を参照して説明する。
まず初めに、影部を識別する方法について、図1を用いて説明する。図1は凹凸のある被写体に光が照射されたときの画像と輝度分布を模式的に示す図である。図1では、被写体の表面の形状が、山、谷、山と滑らかに変化している。
ここで、光源LSの光が真上から鉛直に入射した場合(ケースA)、被写体表面のどの位置にも影が生じないので、輝度分布から(数1)に従って表面法線を求めると、被写体表面の形状が正確に算出される。一方、光源LSからの光が左斜め45度方向から入射する場合(ケースB)は、谷の左側に影ができるので(影部SH)、輝度分布では、DC1,DC2のような輝度が不連続に変化する位置が生じる。このため、輝度分布から(数1)に従って表面法線を求めると、算出される被写体表面の形状は位置DC1,DC2において不連続になってしまう。これは(数1)が影を含まないことを前提とするモデルであることに起因している。すなわち、輝度分布から表面法線を求める場合、画像に影部が含まれているときは、表面法線の不連続性という矛盾が発生する。
このことを利用して、本実施形態では、被写体表面の形状は滑らかに変化していると仮定して、この滑らかさの仮定が崩れるとき、影部であると判断する。具体的には、元の画像の輝度値から(数1)に従って表面法線を算出し、滑らかさの仮定から表面法線を補正する。そして、補正された表面法線から(数1)に従って輝度値を求め直し、得られた輝度値と元の画像の輝度値とが異なるとき、その部分を影部と判断する。
(第1の実施形態)
図2は本発明の第1の実施形態に係る画像変換方法を示すフローチャートである。本実施形態では、与えられた第1の画像に対して、所定の画像変換として画像拡大を行い、第2の画像を生成する。なお、本実施形態に係る画像変換方法は、当該方法を実現するためのプログラムをコンピュータに実行させることによって、実現することができる。
まずステップS00において、初期設定を行う。図3は被写体表面SF上の注目点Pに関する幾何条件を示す模式図である。ステップS00では、図3に示す、光源ベクトルL、注目点の入射光の輝度Ii、および被写体の拡散反射成分の双方向反射率ρdを取得する。ここでは、光源ベクトルL、入射光の輝度Iiおよび双方向反射率ρdは予め設定されているものとする。また、後述のステップS2においてハイライト部を検出するために用いられるハイライト部判定用閾値THHの設定も行う。
ステップS1において、第1の画像を、拡散反射成分のみからなるように処理する前処理を実行する。被写体からの反射光は、一般に鏡面反射成分と拡散反射成分とからなるが、本発明では、拡散反射成分のみを対象とするため、拡散反射成分のみが撮像されている画素を抽出する、または、拡散反射成分のみを撮影して第1の画像として記録する。
拡散反射と鏡面反射とを分離する手法として、例えば非特許文献6には、鏡面反射成分が偏光する性質を利用する技術が開示されている。光が物体表面で反射する場合、光の入反射面に平行な電場成分と垂直な電場成分とでは、通常、フレネル係数が異なるため、反射光は偏光する。このため、鏡面反射成分は一般的に偏光しているが、拡散反射は乱反射であるため、偏光性を持たない。そこで、図4に示すように、偏光フィルタPFを通して反射光RRを観測した場合、透過光RRPの強度は、反射光RRのうち偏光フィルタPFの偏光軸PFAに平行な成分の強度となる。このため、偏光フィルタPFを回転させながら物体表面SFからの鏡面反射成分を観測した場合、透過光RRPの強度は偏光フィルタPFの偏光軸PFAと鏡面反射の偏光面SPPとの間の角度ψに応じて変化し、次式で与えられる。
ここで、Ldは拡散反射成分の輝度、Lsは鏡面反射成分の輝度、θ’iは微小反射面での光の入射角、FPは絶縁体に対する平行電場成分のフレネル係数、FVは絶縁体に対する垂直電場成分のフレネル係数である。
次にステップS2において、第1の画像のハイライト部を検出する。ハイライト部とは輝度が最も高い画素のことをいい、図1の輝度分布では、位置HL1,HL2,HL3,HL4に相当する。ハイライト部の表面法線は、光源LSからの入射光方向(すなわち図3の光源ベクトルL)に一致する。光源ベクトルLはステップS00で与えられるため、ハイライト部の表面法線ベクトルも既知となる。
なお、撮像された画像は通常、ノイズを含むため、各ハイライト部(例えば位置HL1〜HL4)の輝度が一致することは稀である。このため、ハイライト部を検出する場合には、ある程度、輝度値の幅を持たせるのが好ましい。そこで例えば、画像中の最高輝度Idmaxの95%をハイライト部判定用閾値THHとし、輝度値がこの閾値THHよりも大きい画素をハイライト部として検出する。
次にステップS3において、第1の画像の輝度値から(数1)に従って、推定表面法線ベクトルPNを算出する。表面法線(ベクトル)を表す表面法線パラメータとして、表面法線と光源方向とが成す角度θ(または余弦cosθ)が用いられる。ここで、第1の画像の輝度値が最高輝度Idmaxを持つとき、光源ベクトルLと表面法線ベクトルNが一致し、両ベクトルの内積が1と最大になるため、拡散反射光の輝度値Idを最高輝度Idmaxで正規化しておく。
ステップS4において、近傍画素間で推定表面法線ベクトルPNの滑らかさの補正を行い、補正表面法線ベクトルSPNを算出する。すなわち、表面法線パラメータを、空間位置による変化が滑らかになるように補正する。図5はステップS4における補正処理を概念的に示す図である。図5(a)では、折り返しのある変化La1が滑らかな変化La2に補正されており、図5(b)では、飛びがある変化Lb1が滑らかに連続した変化Lb2に補正されている。
ここで、影部以外の推定表面法線ベクトルPNは信頼性が高いため、ここでの補正は、影部以外の部分をできるだけ多く含めて行うのが望ましいが、補正方法そのものは任意であり、制限を与えるものではない。一例として、スプライン補間などがある。被写体形状のモデルはコンピュータグラフィックスの分野で多々開発されており、ベジエ曲線やNURBS曲線などによる自由曲面の表現方法がある(非特許文献1 pp.36−38)。本発明では、影部は輝度値で補間をして拡大画像を生成するため、補正された表面法線そのものは利用されない。すなわち、ここで表面法線を求める目的は、影部の検出にあり、影が落ちているか否かが重要であるのであって、補正された表面法線1本1本の精度を求めるものではない。
ステップS5において、補正表面法線ベクトルSPNから(数1)に従って、拡散反射光の輝度値Ivを計算し、これを補正輝度値SPIvとして出力する。
ステップS6において、補正輝度値SPIvと第1の画像の輝度値とを比較し、異なる画素の部分は影部と判断し、一致する画素の部分は影部以外であると判断する。なお、補正輝度値SPIvと第1の画像の輝度値との差に許容範囲(例えば、輝度値を0〜1に正規化したとき、0.01程度)を設けて、補正輝度値SPIvと第1の画像の輝度値との差が許容範囲を超えたとき、影部に該当すると判定してもかまわない。ステップS2〜S6によって、本発明の第1のステップが構成されている。
影部と判定された部分については、第2のステップとしてのステップS7において、第1の画像の輝度値を補間して画像を拡大する。一方、影部以外と判定された部分については、ステップS8において、補正表面法線ベクトルSPNを補間して画像を拡大する。そしてステップS9において、補間拡大された補正表面法線ベクトルから(数1)に従って拡散反射光の輝度値Ivを算出する。ステップS8,S9によって、本発明の第3のステップが構成されている。本発明は、補間方法として処理負荷の小さい線形補間法が適用できるように工夫されているが、補間法そのものを限定するものではない。
ステップS7およびステップS8,S9における処理結果を用いて、第2の画像が生成される。
以上のように本実施形態によると、人間の視覚系が低感度である輝度の低い影部では、輝度を線形補間し、人間の視覚系が高感度である輝度の高い影以外の部分では、表面法線を線形補間することによって、画像拡大が実現される。このような切り分けた処理によって、処理負荷とテクスチャ感保存とを両立させた画像拡大が可能になる。
また、表面法線が必要になる影以外の部分では、画素の輝度値から表面法線を推定するため、特別な機器を要することなく、撮像情報のみから、テクスチャ感が保存された画像拡大を実現することができる。被写体の表面法線を求めるためには、レンジファインダによる計測やPhotometric stereoによる算出などが利用できる。ところが、前者は、機器の規模や被写体の大きさなどの観点から利用できるシーンが限られ、汎用性の点で問題があり(非特許文献4参照)、後者は、被写体表面に影が落ちていると原理的に表面法線の算出は不可能であるので(非特許文献5参照)、被写体の向きや光源の位置を変えるなど観測点に影を作らない工夫が必要であり、実用面で問題がある。これに対して本実施形態では、特別な機器なしに、撮像情報のみから、表面法線を求めることができる。
なお、ステップS2〜S6を実行する影部識別部と、ステップS7を実行する第1の変換部と、ステップS8,S9を実行する第2の変換部とを備えた画像変換装置を、構成してもよい。
(第2の実施形態)
図6は本発明の第2の実施形態に係る画像変換方法を示すフローチャートである。本実施形態では、与えられた第1の画像に対して、所定の画像変換として画像縮小を行い、第2の画像を生成する。なお、本実施形態に係る画像変換方法は、当該方法を実現するためのプログラムをコンピュータに実行させることによって、実現することができる。また、ステップS2〜S6を実行する影部識別部と、ステップS17を実行する第1の変換部と、ステップS18,S19を実行する第2の変換部とを備えた画像変換装置を、構成してもよい。
図6において、ステップS00,S1〜S6の処理は、図2と同様であるため、ここではその説明を省略する。
ステップS6において影部と判定された部分については、第2のステップとしてのステップS17において、第1の画像の輝度値をサブサンプリングして画像を縮小する。影部では、視覚系のコントラスト感度が低いため、モアレ発生によるテクスチャ感の変質は影部以外の部分よりも少なくなる。
一方、ステップS6において影部以外と判定された部分については、ステップS18において、補正表面法線ベクトルSPNをサブサンプリングして画像を縮小する。そしてステップS19において、サブサンプリングされた補正表面法線ベクトルから(数1)に従って拡散反射光の輝度値Ivを算出する。ステップS18,S19によって、本発明の第3のステップが構成されている。
なお、画像縮小に伴うサンプリング点数の減少によって、ナイキスト周波数が低下し、モアレが発生する可能性が高まる。ところが本実施形態では、ステップS4において、表面法線パラメータに対し、空間位置による変化が滑らかになるように補正を行っている。このため、高周波成分が抑えられ、モアレの発生を抑制することができる。すなわち、ステップS4が、表面法線パラメータをサブサンプリングする際の前処理の役割を果たしている。すなわち、この前処理によって、従来技術のように、別途、低域通過フィルタを作用させる必要がない。
以上のように本実施形態によると、人間の視覚系が低感度である輝度の低い影部では、輝度をサブサンプリングし、人間の視覚系が高感度である輝度の高い影以外の部分では、表面法線をサブサンプリングすることによって、モアレ発生を抑えた画像縮小が実現される。このような切り分けた処理によって、処理負荷とテクスチャ感保存とを両立させた画像縮小が可能になる。また、表面法線が必要になる影以外の部分では、画素の輝度値から表面法線を推定するため、特別な機器を要することなく、撮像情報のみから、テクスチャ感が保存された画像縮小を実現することができる。
(第3の実施形態)
図7は本発明の第3の実施形態に係る画像変換方法を実現する構成例を示すブロック図である。本実施形態では、与えられた第1の画像IINに対して、所定の画像変換として画像拡大を行い、第2の画像IOUTを生成する。なお、本実施形態に係る画像変換方法は、当該方法を実現するためのプログラムをコンピュータに実行させることによって、実現することができる。
第1の画像IINは、拡散反射・鏡面反射分離部11によって、鏡面反射成分SRと拡散反射成分DRとに分離される。拡散反射・鏡面反射分離部11は、上述のステップS1と同様の処理を行う。例えば、図4に示す偏光性を用いた方法(非特許文献6を参照)を活用する。拡散反射成分DRは影部検出部12によって、影部SPと影部以外NSPとに分離される。影部検出部12は、例えば上述のステップS2〜S6と同様の処理を行う。影部SPは輝度値補間部13によって空間的に高密化される。画像合成部14は、輝度値補間部13の出力である輝度高密化画像LDIと、後述するパラメータ高密化画像IPDIとを合成して、第2の画像IOUTを生成する。パラメータ高密化画像IPDIは、拡散反射成分の影部以外NSPと鏡面反射成分SRとが空間的に高密化された画像である。
鏡面反射成分SRと影部以外NSPは、画像特徴解析部15によって画像特徴ベクトルIINFVに変換される。画像特徴解析部15では、例えば、ウェーブレット変換等による空間応答特性を用いる。画像特徴ベクトルデータベース21は、画像特徴ベクトルIINFVに最も近い画像特徴ベクトルを選定し、画像特徴ベクトル番号IINFVNとして出力する。照明方程式パラメータデータベース22は、画像特徴ベクトル番号IINFVNを受けて、これに相当する照明方程式パラメータを原パラメータIINLEPとして出力する。照明方程式としては例えば、
を用いる。ここで、Iaは環境光の輝度、ρaは環境光の反射率、Iiは照明の輝度、ベクトルNは表面法線ベクトル、ベクトルLは光源方向を表わす光源ベクトル、dωは光源の立体角、ρdは拡散反射成分の双方向反射率、ρsは鏡面反射成分の双方向反射率、kdは拡散反射成分比、ksは鏡面反射成分比を表わし、kd+ks=1の関係を持つ。
原パラメータIINLEPは、パラメータ高密化部16によって空間的に高密化される。例えば図8に示すように、照明方程式パラメータのうち、類似の値を持つ隣接画素を同質領域としてまとめ、同質領域内で照明方程式パラメータを高密化する。図8では、画素(黒丸で表す)の属性平均値がP1である同質領域AE1と、画素の属性平均値がP2である同質領域AE2とが隣接しており、その境界に位置する画素S1とS2の輝度差がエッジを形成している。図8(a)の分布を例えば2倍に画像拡大するためには、図8(b)のように、画素の間に画素(白丸で表す)を挿入すればいい。挿入する画素の属性値は、例えば隣接する画素の属性平均値とする。またエッジを形成する画素S1と画素S2との間には、いずれかの属性値をそのままコピーして新たな画素S3を生成すればよい。図8(b)では、画素S1の属性値を画素S3にコピーし、画素S2と画素S3との輝度差を図8(a)における画素S1と画素S2の輝度差に一致させる。これにより、高密化後においてもエッジは保存される。
ところで、原パラメータIINLEPの中には表面法線ベクトルNが含まれるが、これは、影部以外NSPの輝度値から表面法線算出部19によって算出した推定表面法線ENとほぼ同一になる。ただし、照明方程式パラメータデータベース22はデータ容量の観点から離散的にデータを持つため、例えば(数1)に従って算出した推定表面法線ENの方が、真値に対する誤差が小さいと考えられる。そこで、照明方程式パラメータのうち、表面法線ベクトルNに関しては、原パラメータIINLEPではなく、推定表面法線ENを用いるのが好ましい。
パラメータ高密化部16から出力された高密化パラメータNLEPは、画像生成部17において輝度値に戻され、パラメータ高密化画像IPDIとして出力される。そして、上述したとおり、輝度高密化画像LDIとパラメータ高密化画像IPDIとが、画像合成部14において合成されて、第2の画像IOUTが得られる。
なお、画像縮小についても、輝度値補間に代えて、輝度値のサブサンプリングを行い、パラメータの高密化に代えて、パラメータの低密化を行うことによって、同様に実行可能となる。
(第4の実施形態)
本発明の第4の実施形態では、上述したような画像変換方法を、コンピュータグラフィックスにおけるテクスチャマッピングに適用する。
図9はレンダリング処理の主な流れを示すフローチャートである。レンダリング処理とは、コンピュータグラフィックスにおいて、コンピュータ内に生成した3次元モデルを2次元の画像データに変換する処理のことである(例えば非特許文献1のpp.79を参照)。図9に示すように、レンダリング処理は、視点と光源の設定S101、座標変換S102、陰面消去S103、シェーディングとシャドーイングS104、テクスチャマッピングS105、およびビューポート変換S106が、主なステップとなる。
まずステップS101において、視点VAと光源LSが設定されると、見え方が決まる。次にステップS102において、ローカル座標系で管理されていた各オブジェクトが正規座標系にまとめられ、ステップS103において、視点から見えない陰面部が削除される。そしてステップS104において、光源LSからオブジェクトOA、OBへの光のあたり方が計算され、陰Shadeと影Shadowが生成される。
そして、ステップS105においてテクスチャマッピングを行い、オブジェクトOA、OBに対するテクスチャTA、TBを生成する。テクスチャは画像データとして取得するのが一般的であり、テクスチャ画像TIAをオブジェクトOAの形状に合わせて変形し、オブジェクトOA上に合成する。同様に、テクスチャ画像TIBをオブジェクトOBの形状に合わせて変形し、オブジェクトOB上に合成する。
本実施形態では、このテクスチャマッピングにおいて、上述したような画像変換を適用する。すなわち、まず、テクスチャ画像TIA,TIBを、3次元CGモデルのオブジェクトOA,OBに貼り付ける前処理を行う。そして、図2のフローに従って処理を行う。ステップS00では、2次元テクスチャ画像TIA,TIBの光学パラメータと、オブジェクトOA,OBに貼り付けられたテクスチャ画像TIA,TIBの各画素について、図3に示すようなパラメータを取得する。以降の処理は、第1の実施形態と同様である。
最後に、ステップS106において、ビューポート変換を行い、表示されるスクリーンSCNまたはウィンドウWNDに合わせた画像サイズの2次元画像を生成する。
ここで、レンダリング処理は、視点や光源の位置が変わるために実行する必要があり、ゲーム機器のようなインタラクティブシステムでは、頻繁にレンダリング処理が繰り返される。テクスチャマッピングでは通常、物体表面に貼り付けるテクスチャデータを画像として準備するので、視点や光源が変わると、そのたびに、テクスチャデータを拡大、縮小、回転、色換え等によって変換する必要がある。
上述したように、輝度値のみに基づいた画像変換では、テクスチャ感を保存して新たな画像を作ることが困難である。これに対して本実施形態のように、影部では輝度値を用いた補間やサブサンプリングを行い、影部以外では表面法線の補間やサブサンプリングを行うことによって、テクスチャ感を保存したまま、様々な視点や光源設定に応じたテクスチャマッピングを実現することができる。
以下、本発明を実現する構成例を例示する。
(第1の構成例)
図10は第1の構成例を示す図であり、パーソナルコンピュータを用いて本発明に係る画像変換を行う構成の一例である。カメラ101の解像度はディスプレイ102の解像度よりも低く、ディスプレイ102の表示能力を最大限に生かすために、メインメモリ103にロードされた画像変換プログラムによって拡大画像を作成する。カメラ101で取り込まれた低解像度画像は画像メモリ104に記録される。外部記憶装置105には予め、光源ベクトルL、注目点の入射光の輝度Ii、被写体の拡散反射成分の双方向反射率ρd、およびハイライト部判定用閾値THHが設定されており、メインメモリ103の画像変換プログラムから参照可能になっている。
画像変換プログラムによる処理は、第1の実施形態と同様であり、カメラ画像から影部を識別し、影部では輝度値を線形補間し、影部以外では表面法線を線形補間する。すなわち、メモリバス106を介して画像メモリ104の低解像度画像を読み込み、これをディスプレイ102の解像度に合わせて高解像度画像に変換し、再びメモリバス106経由でビデオメモリ107に転送する。ビデオメモリ107に転送された高解像度画像は、ディスプレイ102に表示される。
なお、本発明は図10の構成に拘束されるものではなく、様々な構成をとることができる。例えば、光源ベクトルL、入射光の輝度Ii、被写体の拡散反射成分の双方向反射率ρdは、計測器によって被写体から直接計測してもかまわない。また低解像度画像をネットワーク108から取得してもかまわない。また、外部記憶装置105にテクスチャデータを保持し、メインメモリ103において第4の実施形態で示したテクスチャマッピングを実行してもかまわない。
また、カメラ101の解像度がディスプレイ102の解像度よりも高い場合は、メインメモリ103にロードされた画像変換プログラムは、第2の実施形態で示したように画像縮小を行えばよい。また、カメラ101としては、カメラ付携帯電話やデジタルスチルカメラ、ビデオムービーカメラなど任意のタイプの撮像装置が適用できる。さらに、予め録画した映像を再生する再生装置においても、本発明を実現することができる。
(第2の構成例)
図11は第2の構成例を示す図であり、サーバークライアントシステムを用いて本発明に係る画像変換を行う構成の一例である。カメラ201の解像度はディスプレイ202の解像度よりも低く、ディスプレイ202の表示能力を最大限に生かすために、サーバークライアントシステムにおいて画像拡大を実行する。
サーバー301では、影部識別部203が、第1の実施形態と同様の処理によって、入力画像としての第1の画像IINの影部を識別し、影部の情報を含む影識別画像SIINを生成する。ここでの影識別画像SIINは例えば、影部を0、影部以外を1で表現した1ビット階調の画像である。そしてデータ送信部204が、ネットワーク206を介してクライアント302に、第1の画像IINと影識別画像SIINを送信する。クライアント302では、本発明の第1の変換部および第2の変換部を含む画像生成部205が、第1の実施形態と同様の処理によって、受信した第1の画像IINと影識別画像SIINから第2の画像としての拡大画像を生成し、ディスプレイ202に供給する。
なお、本発明は図11の構成に拘束されるものではなく、カメラ201の解像度がディスプレイ202の解像度よりも高い場合は、第2の実施形態と同様に、画像生成部205が画像を縮小することも可能である。また、カメラ201としては、カメラ付携帯電話やデジタルスチルカメラ、ビデオムービーカメラなど任意のタイプの撮像装置が適用できる。さらに、予め録画した映像を再生する再生装置においても、本発明を実現することができる。
以上のように本発明は、広く普及しているパーソナルコンピュータや、サーバークライアントシステム、または、カメラ付携帯電話やデジタルスチルカメラ、ビデオムービーカメラ、テレビなどビデオ機器全般で実行可能であり、特別な機器、運用、管理などは必要ない。なお、専用ハードウェアへの実装やソフトウェアとハードウェアの組み合わせなど、機器接続形態や機器内部の構成を拘束するものではない。
本発明では、処理負荷とテクスチャ感保存を両立させた画像変換が可能になるので、例えば、スポーツや観光、記念撮影など目の前のシーンを映像として記録する映像エンタテイメント分野において利用することができる。また、文化芸術の分野では、被写体や撮影場所に制限されない自由度の高いデジタルアーカイブシステムを提供するために利用することができる。
影と輝度分布の関係を模式的に示す図である。
本発明の第1の実施形態に係る画像変換方法を示すフローチャートである。
前提となる幾何条件と光学条件を示す概念図である。
表面法線ベクトルの計測手法の例を説明するための図である。
表面法線ベクトルの補正処理を概念的に示す図である。
本発明の第2の実施形態に係る画像変換方法を示すフローチャートである。
本発明の第3の実施形態に係る画像変換方法を実現する構成例を示すブロック図である。
パラメータを高密化する処理を示す図である。
本発明の第4の実施形態を説明するための図であり、レンダリング処理の流れを示す図である。
本発明を実現する第1の構成例であり、パーソナルコンピュータを用いた構成を示す図である。
本発明を実現する第2の構成例であり、サーバークライアントシステムを用いた構成を示す図である。
輝度値の線形補間と表面法線の線形補間との誤差を説明するための図である。
コントラスト感度の例を示す図である。
符号の説明
SH 影部
203 影部識別部
205 画像生成部
IIN 入力画像(第1の画像)
SIIN 影識別画像