JP2010231347A - 画像生成方法及びその装置 - Google Patents
画像生成方法及びその装置 Download PDFInfo
- Publication number
- JP2010231347A JP2010231347A JP2009076343A JP2009076343A JP2010231347A JP 2010231347 A JP2010231347 A JP 2010231347A JP 2009076343 A JP2009076343 A JP 2009076343A JP 2009076343 A JP2009076343 A JP 2009076343A JP 2010231347 A JP2010231347 A JP 2010231347A
- Authority
- JP
- Japan
- Prior art keywords
- image
- texture
- light
- vector
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Image Generation (AREA)
Abstract
【課題】
部分的に質感が異なる画像を少ない処理ステップで高品質に生成できるようにする。
【解決手段】
法線マップの法線ベクトルの長さを、対応するテクスチャ画像の質感の違いにより異ならせる。そして、ライトベクトルをテクスチャ画像に乗算してディフューズ光によるレンダリング画像を生成するとともに、ハーフアングルベクトルとテクスチャ画像に対応した上記法線マップの法線ベクトルとの内積を計算し、この内積値を所定のスペキュラカラーに乗算してスペキュラ光によるレンダリング画像を生成する。そして、ディフューズ光によるレンダリング画像とスペキュラ光によるレンダリング画像とを加算して出力画像を生成する。
【選択図】図6
部分的に質感が異なる画像を少ない処理ステップで高品質に生成できるようにする。
【解決手段】
法線マップの法線ベクトルの長さを、対応するテクスチャ画像の質感の違いにより異ならせる。そして、ライトベクトルをテクスチャ画像に乗算してディフューズ光によるレンダリング画像を生成するとともに、ハーフアングルベクトルとテクスチャ画像に対応した上記法線マップの法線ベクトルとの内積を計算し、この内積値を所定のスペキュラカラーに乗算してスペキュラ光によるレンダリング画像を生成する。そして、ディフューズ光によるレンダリング画像とスペキュラ光によるレンダリング画像とを加算して出力画像を生成する。
【選択図】図6
Description
本発明は、二次元以上の空間にモデルと光源と視点を設定して、視点からモデルを見たときの画像を生成する画像生成方法及びその装置に関し、特に、法線マップを用いたバンプマッピング技術を応用して部分的に質感が異なる画像を生成する方法及びその装置に関する。
例えばバーチャルリアリティ(VR)システムは、コンピュータの中に互いに直交する3つの座標軸(X軸,Y軸,Z軸)によって仮想的に表現された三次元座標系の立体空間に、種々の立体モデルと光源を設定するとともに、入力装置からの入力信号によって上記立体空間内を自由に移動できる視点を設定し、この視点から見た立体空間の画像を生成し、スクリーンやディスプレイ等の画面に表示させることによって、鑑賞者自身があたかも仮想空間内に入り込み、立体モデルを見ているような感覚が得られるというものである。
ところで、立体モデルの表面は様々な模様を持つ。これらの模様は、テクスチャと称される画像データとしてコンピュータ内の記憶装置に予め記憶されている。そして画像生成時に、テクスチャ画像は該当する立体モデルの表面に貼り付けられ、視点や光源の位置等によりシェーディング(陰影付け)されて、画面に表示される。
また、模様のなかには凸凹感を持たせることによって、よりリアルな画像が得られる場合がある。凸凹のないテクスチャ画像を凸凹があるかのように見せるのも、シェーディングによって可能である。このようなシェーディングを、バンプマッピングと称している。バンプマッピングとしては、法線マップを用いた技術が一般的である。
図13に法線マップ1の一例を示す。この法線マップ1は、図14に示すテクスチャ2の画像に対応して作成されたものである。法線マップ1は、図15に示すように、X軸,Y軸及びZ軸からなる三次元座標系に対する画素pの向きを、画素p毎に法線ベクトルS(X,Y,Zの各ベクトル値からなる)の傾きで表現したもので、X,Y,Zの各々のベクトル値がそれぞれR(Red),G(Green),B(Blue)値に変換されて画素p毎に設定されている。ここで、法線ベクトルSの長さは、全て“1”に正規化されている。したがって、法線ベクトルSの傾きの大きさは−1.0〜1.0の範囲となるが、色の強さは0〜255なので、例えば法線ベクトルS(X,Y,Z)が(0.0,0.0,1.0)となる平らの部分は、(R,G,B)=(127,127,255)となり、青色で表現される。
図16は、この種の画像を生成する画像生成装置が実行する従来のバンプマップ処理の手順を示す流れ図である。すなわち画像生成装置は、立体モデルの表面に貼り付けられる画像のテクスチャ2と、このテクスチャ2の画像に対応して作成された法線マップ1を記憶部から取得する(ST1,ST2)。
次に、画像生成装置は、当該テクスチャ2の画像が貼り付けられる立体モデルの面の向きと光源の位置とから、当該面の光源方向への向きを示すライトベクトルを画素p毎に計算する(ST3)。次に、画像生成装置は、このライトベクトルと、当該テクスチャ2の画像に対応する法線マップ1の法線ベクトルSとの内積を画素p毎に計算して、ディフューズ(Diffuse:拡散反射)光に対する各画素pの輝度値を求める(ST4)。しかる後、この内積演算結果(内積値)である各画素pの輝度値を当該テクスチャ2の画像に乗算して、ディフューズ光によるレンダリング画像を生成する(ST5)。
また、画像生成装置は、当該テクスチャ2の画像が貼り付けられる立体モデルの面の向きと光源及び視点の各位置とから、当該面の光源からの光方向と視点からの視線方向との和の向きを示すハーフアングルベクトルを画素p毎に計算する(ST6)。次に、画像生成装置は、このハーフアングルベクトルと前記法線マップ1の法線ベクトルSとの内積を画素p毎に計算して、スペキュラ(Specular:鏡面反射)光に対する各画素pの輝度値を求める(ST7)。しかる後、この内積演算結果である各画素pの輝度値を、所定のスペキュラカラーに乗算して、スペキュラ光によるレンダリング画像を生成する(ST8)。なお、スペキュラカラーは、当該テクスチャ2の画像が貼り付けられる面を照射する光源の種類によって決まる。
こうして、ディフューズ光によるレンダリング画像とスペキュラ光によるレンダリング画像とを生成したならば、画像生成装置は、両レンダリング画像を加算して最終出力画像を得る(ST9)。そして画像生成装置は、この最終出力画像を表示装置に出力して(ST10)、スクリーンやディスプレイの画面に表示させていた。
なお、ST3〜ST5のディフューズ光によるレンダリング画像生成処理と、ST6〜ST8のスペキュラ光によるレンダリング画像生成処理とは、どちらを先に処理してもよく、また、並行して処理してもよいものである。
さて、従来のバンプマップ処理によってシェーディングが施された画像の一例を図17に示す。この画像は、画面中央の襖を示す立体モデルの表面に、図14に示したテクスチャ2の画像を貼り付けたもので、テクスチャ2の画像は、松以外の部分に金箔が貼られていることを表現しているので、バンプマップ処理を施して金箔の光沢感を高めている。しかしながら、従来のバンプマップ処理では、襖絵全体で光沢感が均一となるため、襖絵全体に光沢があるように表現されてしまっており、金箔の部分が目立たなくなっていた。
そこで、図18に示すように、襖絵の光沢感がない松の部分を黒くしたマスク用画像のテクスチャ3を用意する。そして画像生成装置は、図16の破線で示すように、スペキュラ光によるレンダリング画像に上記マスク用画像を乗算して、マスク部分の輝度値を低くした後(ST11)、ディフューズ光によるレンダリング画像を加算して(ST9)、最終出力画像を得るようにする(ST10)。こうすることにより、金箔が貼られていない松の部分は光沢が抑えられるので、金箔の光沢感が高められる。
因みに、図17に示した画像を生成する場合において、マスク用画像のテクスチャ3を適用する前のスペキュラ光によるレンダリング画像を図19に示し、マスク用画像のテクスチャ3を適用した後のスペキュラ光によるレンダリング画像を図20に示す。
しかしながら、テクスチャ画像の光沢感が部分的に異なるためにマスク用画像のテクスチャ3を適用する場合には、テクスチャ2の画像からマスク用画像のテクスチャ3を予め作成しておかなければならない煩雑さがある上、テクスチャ2や法線マップ1以外に、マスク用画像のテクスチャ3を記憶保持するための記憶領域も必要で、記憶容量が大容量になるという問題があった。また、スペキュラ光によるレンダリング画像に上記マスク用画像を乗算する処理ステップが追加されるため処理に時間がかかり、バーチャルリアリティシステムのように画像をごく短時間に次々と生成しなければならないものに対しては不向きであった。
本発明はこのような事情に基づいてなされたもので、その目的とするところは、部分的に質感が異なる画像を少ない処理ステップで高品質に生成できる上、記憶容量も節約できる画像生成方法及びその装置を提供しようとするものである。
本発明はかかる課題を解決するものであり、請求項1に対応する発明は、二次元以上の空間に、部分的に質感が異なる画像のテクスチャを貼り付けたモデルと光源と視点をそれぞれ設定して、視点からモデルを見たときの画像を生成する画像生成方法であって、モデルのテクスチャ画像が貼り付けられる面の光源方向への向きを示すライトベクトルの長さをテクスチャ画像に乗算してディフューズ光によるレンダリング画像を生成するステップと、モデルのテクスチャ画像が貼り付けられる面の光源からの光方向と視点からの視線方向との和の向きを示すハーフアングルベクトルとテクスチャ画像に対応した法線マップの法線ベクトルとの内積を計算し、この内積値を所定のスペキュラカラーに乗算してスペキュラ光によるレンダリング画像を生成するステップと、ディフューズ光によるレンダリング画像とスペキュラ光によるレンダリング画像とを加算して出力画像を生成するステップとからなり、法線マップの法線ベクトルの長さを、対応するテクスチャ画像の質感の違いにより異ならせたものである。
この請求項1に対応する発明の画像生成方法においては、法線マップの画素毎に設定された各法線ベクトルの長さが、対応するテクスチャ画像の質感の違いにより異なっている。したがって、スペキュラ光によるレンダリング画像は、ハーフアングルベクトルと上記法線マップの法線ベクトルとの内積を計算し、この内積値を所定のスペキュラカラーに乗算することによって生成しているので、法線ベクトルに応じてスペキュラ光の輝度値が異なり、質感の違いが高品質に表現される。なお、法線ベクトルの長さが不揃いだと、ディフューズ光の計算時にテクスチャの画像情報が損なわれて黒ずんでしまう。そこで、本発明では、ディフューズ光の計算に法線ベクトルを考慮しないように、ライトベクトルの高さ方向の成分をテクスチャの画像データに乗算するだけでディフューズ光によるレンダリング画像を生成している。
本発明の請求項2に対応する発明は、上記請求項1に対応する発明において、部分的に光沢感が異なる画像のテクスチャに対応する法線マップは、画素毎に設定された各法線ベクトルのうち、対応するテクスチャ画像の中で光沢感を抑える画像に対応する画素の法線ベクトルの長さを他の画素の法線ベクトルとは異なる長さにしたものである。
この請求項2に対応する発明の画像生成方法においては、法線マップの法線ベクトルは、対応するテクスチャ画像の中で光沢感を抑える画像に対応する画素の法線ベクトルが他の画素の法線ベクトルより短くなっている。したがって、スペキュラ光によるレンダリング画像は、法線ベクトルが短い部分はスペキュラ光の輝度がその分小さくなるので、この部分に対応した画像の光沢感が抑えられる。
本発明の請求項3に対応する発明は、二次元以上の空間にモデルと光源と視点をそれぞれ設定して、視点からモデルを見たときの画像を生成する画像生成装置において、モデルに貼り付けるテクスチャ画像及びこのテクスチャ画像に対応した法線マップを記憶する記憶手段と、テクスチャ画像が光沢感に斑のある画像であるとき、モデルのテクスチャ画像が貼り付けられる面の光源方向への向きを示すライトベクトルを当該テクスチャ画像に乗算してディフューズ光によるレンダリング画像を生成するディフューズ光レンダリング手段と、テクスチャの画像が光沢感に斑のある画像であるとき、モデルのテクスチャ画像が貼り付けられる面の光源からの光方向と視点からの視線方向との和の向きを示すハーフアングルベクトルとテクスチャ画像に対応した法線マップの法線ベクトルとの内積を計算し、この内積値を所定のスペキュラカラーに乗算してスペキュラ光によるレンダリング画像を生成するスペキュラ光レンダリング手段と、ディフューズ光レンダリング手段により生成されたディフューズ光によるレンダリング画像とスペキュラ光レンダリング手段により生成されたスペキュラ光によるレンダリング画像とを加算して出力画像を生成する出力画像生成手段とを備え、法線マップは、法線ベクトルの長さを、対応するテクスチャ画像の質感の違いにより異ならせたものである。
この請求項3に対応する発明の画像生成装置においては、記憶手段により、モデルに貼り付けるテクスチャ画像と、このテクスチャ画像に対応した法線マップとが記憶手段により記憶されている。ここで、法線マップは、法線ベクトルの長さが、対応するテクスチャ画像の質感の違いにより異なっている。
ディフューズ光によるレンダリング画像は、ライトベクトルの高さ方向の成分が当該テクスチャ画像に乗算されて生成される。一方、スペキュラ光によるレンダリング画像は、ハーフアングルベクトルと当該テクスチャ画像に対応する法線マップの法線ベクトルとの内積が計算され、この内積値がスペキュラカラーに乗算されて生成される。しかして、ディフューズ光によるレンダリング画像とスペキュラ光によるレンダリング画像とが加算されて、法線ベクトルの長さにより部分的に質感が異なった出力画像が生成される。
請求項1によれば、部分的に質感が異なる画像を少ない処理ステップで高品質に生成できる上、記憶容量も節約できる画像生成方法を提供できる。
また、請求項2によれば、部分的に光沢感が異なる画像を少ない処理ステップで高品質に生成できる上、記憶容量も節約できる画像生成方法を提供できる。
また、請求項3によれば、部分的に質感が異なる画像を少ない処理ステップで高品質に生成できる上、記憶容量も節約できる画像生成装置を提供できる。
以下、本発明の一実施の形態を図面を用いて説明する。
なお、この実施の形態は、バーチャルリアリティシステムで表示される立体空間画像を生成する場合について説明する。
ただし、本発明は以下に記す三次元空間でなくてもよく、二次元以上であればよい。すなわち2次元平面的な画像を生成する場合に適用することも可能である。
なお、この実施の形態は、バーチャルリアリティシステムで表示される立体空間画像を生成する場合について説明する。
ただし、本発明は以下に記す三次元空間でなくてもよく、二次元以上であればよい。すなわち2次元平面的な画像を生成する場合に適用することも可能である。
図1は本実施の形態における画像生成装置10の要部構成を示すブロック図であり、この画像生成装置10は、例えばパーソナルコンピュータやワークステーション等のコンピュータによって構成されている。
画像生成装置10は、入力装置20から入力される各種の信号を、それぞれ対応する内容の入力指令に変換し、この入力指令を画像生成演算部13に与える入力信号変換部11と、モデルファイル121,光源ファイル122,テクスチャファイル123,法線マップファイル124などの種々のデータファイルを記憶保存する記憶手段としてのデータ記憶部12と、前記入力信号変換部11から与えられた入力指令に従い前記データ記憶部12のデータを使用して立体空間画像を生成する画像生成演算部13と、この画像生成演算部13により生成された立体空間画像のデータを記憶するフレームメモリ14と、このフレームメモリ14に記憶された画像データを読出し、アナログの映像信号に変換して表示装置30に出力するD/A(ディジタル/アナログ)変換部15とから構成されている。
なお、入力装置20は、立体空間に設定される視点の位置や視線方向を移動させるためのものである。表示装置30は、スクリーンやディスプレイ等の画面に立体空間画像を投影して表示するものである。
モデルファイル121には、立体空間に設定される各種立体モデルの形状や位置等に関するデータが記憶保存されている。図2に、モデルファイル121に記憶保存されるデータレコード41の一例を示す。図2において、項目「モデルID」は、各種立体モデルを一意に識別するためにモデル毎に設定された固有のコードである。例えば、一意に定めたモデル毎のファイル名であってもよい。項目「形状データ」は、対応するモデルIDが設定された立体モデルの三次元形状の各頂点座標等を示すデータである。項目「位置座標」は、互いに直交する3つの座標軸(X軸,Y軸,Z軸)によって仮想的に表現された三次元座標系の立体空間において、対応するモデルIDの立体モデルが設置された位置座標を示すデータである。項目「テクスチャNo」は、対応するモデルIDが設定された立体モデルの表面に貼り付けられるテクスチャ画像を特定する識別記号である。この識別記号は、例えばテクスチャ画像のファイル名であってもよい。
光源ファイル122には、立体空間に設定される各種光源に関するデータが記憶保存されている。図3に、光源ファイル122に記憶保存されるデータレコード42の一例を示す。図3において、項目「光源ID」は、各種光源を識別するために光源毎に一意に設定された固有のコードである。項目「種別」は、対応する光源IDが設定された光源の種類(無限遠光源,点光源,線光源,環境光等)を示すデータである。項目「位置座標」は、前記三次元座標系の立体空間において、対応する光源IDの光源が設置された位置座標を示すデータである。
テクスチャファイル123には、各種立体モデルの面に貼り付けられる模様や材質等を示すテクスチャデータが記憶保存されている。図4に、テクスチャファイル123に記憶保存されるデータレコードの一例を示す。図4において、項目「テクスチャNo」は、各テクスチャデータを識別するためにテクスチャ毎に設定された固有の識別記号である。例えばテクスチャNoは、テクスチャデータのファイル名であってもよい。項目「画像データ」は、対応するテクスチャNoが設定されたテクスチャの画像データである。項目「法線マップNo」は、対応するテクスチャNoのテクスチャ画像から作成された法線マップを特定する識別記号である。例えば法線マップNoは、法線マップデータのファイル名であってもよい。項目「光沢フラグ」は、対応するテクスチャNoのテクスチャ画像が光沢感に斑のある画像か否かを識別するデータである。
また、このテクスチャファイル123のファイルには、「レンダリング指示」と呼ばれる項目が備えられていてもよい。このレンダリング指示とは、モデルの表面をレンダリングする際の指示が記載されたものである。例えば、このレンダリング指示は、モデルAに対して通常のバンプマッピング、モデルBに対しては法線マップAと法線マップB、モデルCに対しては法線マップB、モデルDに対しては本発明を実施するに必要な法線マップE等のように、立体モデルと手法との対応付けが行なわれているものである。このようなレンダリング指示をファイルに記載しておくことによって、異なった立体モデルに対して同一の法線マップなどの手法を対応付けることができる。これにより、重複した法線マップを記録する必要がなくなる。
法線マップファイル124には、各種テクスチャ画像から生成された法線マップに関するデータが記憶保存されている。図5に、法線マップファイル124に記憶保存されるデータレコードの一例を示す。図5において、項目「法線マップNo」は、各法線マップを識別するために法線マップ毎に設定された固有の識別記号である。各「法線マップデータ」は、対応する法線マップNoが設定された法線マップの各画素の法線ベクトルである。
また、図2から図5までの各種ファイルの各レコードを集約して一つのファイル、1つのレコードとしてもよい。この場合には、重複する項目は省略される。
ここで、本実施の形態では、従来の手法で行なわれている各法線ベクトルの長さを1に正規化するという制約を外し、法線マップの画素毎に設定された各法線ベクトルの大きさを、対応するテクスチャ画像の質感の違いによって異ならせている。このような法線ベクトルは、例えば下記(1)式によって算出される。
(R,G,B)=[(r,g,b)−(127,127,127)]×α+(127,127,127) …(1)
ただし、r,g,bは法線ベクトルを1に正規化したときのX,Y,Zのベクトルにそれぞれ対応したRGB値。αは0≦α≦1の範囲内で任意。
ただし、r,g,bは法線ベクトルを1に正規化したときのX,Y,Zのベクトルにそれぞれ対応したRGB値。αは0≦α≦1の範囲内で任意。
さて、かかる構成の画像生成装置において、画像生成演算部13は、三次元座標系の立体空間に、モデルファイル121に設定された各種立体モデルと、光源ファイル122に設定された各種光源を設定し、入力装置20からの入力信号によって視点の位置と視線方向とが定まると、その視点から見た立体空間の画像を生成する。このとき、画像生成演算部13は、所定の立体モデルに対してバンプマップ処理を実行して、その立体モデルの面に凹凸感のあるテクスチャ画像を貼り付ける。
図6は、画像生成演算部13が実行するバンプマップ処理の手順を示す流れ図である。先ず、画像生成演算部13は、モデルファイル21から取得した立体モデルに関するデータレコード41から当該モデルに貼り付けるテクスチャの画像データのテクスチャNoを取得すると、ST21としてテクスチャファイル123から当該テクスチャNoのデータレコード43を読込む。
次に、画像生成演算部13は、ST22としてテクスチャデータレコード43から法線マップNoを検出し、法線マップファイル124から当該法線マップNoのデータレコード44を読込む。
次に、画像生成演算部13は、テクスチャデータレコードの光沢フラグを調べる。そして、光沢フラグが光沢感に斑のある画像であることを示すときには、ST24,25で示すディフューズ光によるレンダリング画像生成処理と、ST26〜ST28で示すスペキュラ光によるレンダリング画像生成処理を実行する。なお、この処理はどちらを先に処理してもよいし、両方を並行して処理してもよい。
すなわち、画像生成演算部13は、ST24としてテクスチャの画像が貼り付けられる立体モデルの面の向きと光源の位置とから、当該面の光源方向への向きを示すライトベクトルを画素p毎に計算する。そして画像生成演算部13は、ST25としてこのライトベクトルの高さ方向の成分(通常はライトベクトルのZ軸成分)を、テクスチャファイル123から読込んだテクスチャデータレコード43の画像データ(テクスチャの画像データ)に乗算して、ディフューズ光によるレンダリング画像を生成する(ディフューズ光レンダリング手段)。
また、画像生成演算部13は、ST26としてテクスチャの画像データが貼り付けられる立体モデルの面の向きと光源及び視点の各位置とから、当該面の光源からの光方向と視点からの視線方向との和の向きを示すハーフアングルベクトルを画素毎に計算する。次いで、画像生成演算部13は、このハーフアングルベクトルと、法線マップファイル124から読込んだ法線マップデータレコード44の法線マップデータ(法線ベクトルS)との内積を画素毎に計算して、スペキュラ光に対する各画素の内積値つまり輝度値を求める。そして、この内積演算結果である各画素の輝度値を、所定のスペキュラカラーに乗算して、スペキュラ光によるレンダリング画像を生成する。なお、スペキュラカラーは、当該テクスチャの画像が貼り付けられる面を照射する光源の種類によって決まる。
こうして、ディフューズ光によるレンダリング画像とスペキュラ光によるレンダリング画像とを生成したならば、画像生成演算部13は、ST29として両レンダリング画像を加算して最終出力画像を得る。そこで、画像生成演算部13は、ST30としてこの最終出力画像をフレームメモリ14に描画出力する。
フレームメモリ14に描画された最終出力画像の画像データは、D/A変換部15によりアナログの映像信号に変換されて、表示装置32によりスクリーンやディスプレイ等の画面に表示されるものとなっている。
このように構成された本実施の形態においては、例えば図12に示す立体空間画像を生成する場合、予め画面中央の襖を形成する立体モデルの面に貼り付けられる襖絵のテクスチャとして、図14に示す画像のテクスチャ2をテクスチャファイル123に記憶するとともに、このテクスチャ2の画像に対応した法線マップとして、図7に示すように、テクスチャ画像の光沢感がない松の部分に対応する画素の法線ベクトルの長さを、光沢感がある金箔の部分に対応する画素の法線ベクトルの長さとは異なる値にした法線マップ1′を、法線マップファイル124に記憶しておく。
そして、画像生成演算部13において、当該立体モデルに対するバンプマップ処理が実行されると、図8に示すようなライトベクトルが計算され、このライトベクトルの高さ方向の成分がテクスチャ2の画像データに乗算されて、図10に示すようなディフューズ光によるレンダリング画像が生成される。また、図9に示すようなハーフアングルベクトルが算出され、このハーフアングルベクトルと法線マップ1′の法線ベクトルとの内積が計算された後、この内積値、つまり輝度値に所定のスペキュラカラーが乗算されて、図11に示すようなスペキュラ光によるレンダリング画像が生成される。そして、このディフューズ光によるレンダリング画像とスペキュラ光によるレンダリング画像とが加算されて、図12に示すような最終出力画像が得られる。この最終出力画像は、法線マップ1′の法線ベクトルが短い部分、つまり光沢感のない松の部分の光沢が抑えられるので、逆に、法線ベクトルが長い部分、つまり金箔が貼られている部分の光沢感が高められ、従来のマスク用画像のテクスチャ3を用いたときと同等若しくはそれに近い品質の画像が得られる。
したがって、本実施の形態によれば、マスク用画像のテクスチャ3を不要にできるので、このマスク用画像のテクスチャ3を作成する手間をなくすことができる上、このマスク用画像のテクスチャを保存する記憶部の記憶容量も節約できる。また、スペキュラ光によるレンダリング画像にマスク用画像のテクスチャ3を乗算する処理ステップが不要となり処理ステップも少なくなるので、処理時間を短縮できる。
しかも、法線ベクトルの長さが不揃いだと、ディフューズ光の計算時にテクスチャの画像情報が損なわれて黒ずんでしまうおそれがあるが、本実施の形態では、ディフューズ光の計算に法線ベクトルを考慮しないように、ライトベクトルの高さ方向の成分をテクスチャの画像データに乗算するだけでディフューズ光によるレンダリング画像を生成しているので、このような問題も起こり得ない。
なお、この発明は、バーチャルリアリティシステムにおける画像生成技術に限らず、例えばCGアニメーションやTVゲームにおいて立体空間画像を生成する際にも適用できる。
また、この発明は、金箔部以外の質感が異なる画像の生成にも適用して効果的である。
また、従来の技術ではディフューズ光の輝度値をライトベクトルと法線ベクトルとの内積を求めることにより得ていたが、この発明においては、全ての画素において法線ベクトルは鉛直上向き(0,0,1)とすることにより、ライトベクトルの高さ成分だけで輝度値を得ている。したがって、この発明では、立体空間画像が全く均一に光を受ける平坦な表面であるならば、より一層の質感及び光沢感を演出することができる。
1,1′…法線マップ
2…テクスチャ
10…画像生成装置
11…入力信号変換部
12…データ記憶部
13…画像生成演算部
14…フレームメモリ
15…D/A変換部
20…入力装置
30…表示装置
121…モデルファイル
122…光源ファイル
123…テクスチャファイル
124…法線マップファイル
2…テクスチャ
10…画像生成装置
11…入力信号変換部
12…データ記憶部
13…画像生成演算部
14…フレームメモリ
15…D/A変換部
20…入力装置
30…表示装置
121…モデルファイル
122…光源ファイル
123…テクスチャファイル
124…法線マップファイル
Claims (3)
- 二次元以上の空間に、部分的に質感が異なる画像のテクスチャを貼り付けたモデルと光源と視点をそれぞれ設定して、前記視点から前記モデルを見たときの画像を生成する画像生成方法であって、
前記モデルの前記テクスチャ画像が貼り付けられる面の前記光源方向への向きを示すライトベクトルを前記テクスチャ画像に乗算してディフューズ光によるレンダリング画像を生成するステップと、
前記モデルの前記テクスチャ画像が貼り付けられる面の前記光源からの光方向と前記視点からの視線方向との和の向きを示すハーフアングルベクトルと前記テクスチャ画像に対応した法線マップの法線ベクトルとの内積を計算し、この内積値を所定のスペキュラカラーに乗算してスペキュラ光によるレンダリング画像を生成するステップと、
前記ディフューズ光によるレンダリング画像と前記スペキュラ光によるレンダリング画像とを加算して出力画像を生成するステップとからなり、
前記法線マップの法線ベクトルの長さを、対応するテクスチャ画像の質感の違いにより異ならせたことを特徴とする画像生成方法。 - 請求項1記載の画像生成方法において、
部分的に光沢感が異なる画像のテクスチャに対応する法線マップは、画素毎に設定された各法線ベクトルのうち、対応するテクスチャ画像の中で光沢感を抑える画像に対応する画素の法線ベクトルを他の画素の法線ベクトルとは異なる長さにしたものであることを特徴とする画像生成方法。 - 二次元以上の空間にモデルと光源と視点をそれぞれ設定して、前記視点から前記モデルを見たときの画像を生成する画像生成装置において、
前記モデルに貼り付けるテクスチャ画像及びこのテクスチャ画像に対応した法線マップを記憶する記憶手段と、
前記テクスチャ画像が光沢感に斑のある画像であるとき、前記モデルの前記テクスチャ画像が貼り付けられる面の前記光源方向への向きを示すライトベクトルを当該テクスチャ画像に乗算してディフューズ光によるレンダリング画像を生成するディフューズ光レンダリング手段と、
前記テクスチャの画像が光沢感に斑のある画像であるとき、前記モデルの前記テクスチャ画像が貼り付けられる面の前記光源からの光方向と前記視点からの視線方向との和の向きを示すハーフアングルベクトルと前記テクスチャ画像に対応した法線マップの法線ベクトルとの内積を計算し、この内積値を所定のスペキュラカラーに乗算してスペキュラ光によるレンダリング画像を生成するスペキュラ光レンダリング手段と、
前記ディフューズ光レンダリング手段により生成されたディフューズ光によるレンダリング画像と前記スペキュラ光レンダリング手段により生成されたスペキュラ光によるレンダリング画像とを加算して出力画像を生成する出力画像生成手段とを具備し、
前記法線マップは、法線ベクトルの長さを、対応するテクスチャ画像の質感の違いにより異ならせたものであることを特徴とする画像生成装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009076343A JP2010231347A (ja) | 2009-03-26 | 2009-03-26 | 画像生成方法及びその装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009076343A JP2010231347A (ja) | 2009-03-26 | 2009-03-26 | 画像生成方法及びその装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010231347A true JP2010231347A (ja) | 2010-10-14 |
Family
ID=43047124
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009076343A Pending JP2010231347A (ja) | 2009-03-26 | 2009-03-26 | 画像生成方法及びその装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010231347A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016160601A1 (en) * | 2015-04-01 | 2016-10-06 | Otoy, Inc. | Generating 3d models with surface details |
CN111243099A (zh) * | 2018-11-12 | 2020-06-05 | 联想新视界(天津)科技有限公司 | 一种处理图像的方法和装置以及在ar设备中显示图像的方法和装置 |
CN114511672A (zh) * | 2022-01-25 | 2022-05-17 | 浙江慧脑信息科技有限公司 | 一种控制三维模型贴图效果的方法 |
KR102543512B1 (ko) * | 2022-10-31 | 2023-06-13 | 서울대학교산학협력단 | 뉴럴 렌더링을 위한 저정밀도 하드웨어 가속기 및 그 동작 방법 |
CN116894911A (zh) * | 2023-03-28 | 2023-10-17 | 网易(杭州)网络有限公司 | 三维重建方法、装置、电子设备及可读存储介质 |
-
2009
- 2009-03-26 JP JP2009076343A patent/JP2010231347A/ja active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016160601A1 (en) * | 2015-04-01 | 2016-10-06 | Otoy, Inc. | Generating 3d models with surface details |
US9972123B2 (en) | 2015-04-01 | 2018-05-15 | Otoy, Inc. | Generating 3D models with surface details |
US10573064B2 (en) | 2015-04-01 | 2020-02-25 | Otoy, Inc. | Generating 3D models with surface details |
CN111243099A (zh) * | 2018-11-12 | 2020-06-05 | 联想新视界(天津)科技有限公司 | 一种处理图像的方法和装置以及在ar设备中显示图像的方法和装置 |
CN111243099B (zh) * | 2018-11-12 | 2023-10-27 | 联想新视界(天津)科技有限公司 | 一种处理图像的方法和装置以及在ar设备中显示图像的方法和装置 |
CN114511672A (zh) * | 2022-01-25 | 2022-05-17 | 浙江慧脑信息科技有限公司 | 一种控制三维模型贴图效果的方法 |
KR102543512B1 (ko) * | 2022-10-31 | 2023-06-13 | 서울대학교산학협력단 | 뉴럴 렌더링을 위한 저정밀도 하드웨어 가속기 및 그 동작 방법 |
CN116894911A (zh) * | 2023-03-28 | 2023-10-17 | 网易(杭州)网络有限公司 | 三维重建方法、装置、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10540817B2 (en) | System and method for creating a full head 3D morphable model | |
US20230039100A1 (en) | Multi-layer reprojection techniques for augmented reality | |
JP5463866B2 (ja) | 画像処理装置および画像処理方法、並びにプログラム | |
CN110490896B (zh) | 一种视频帧图像处理方法和装置 | |
US7952577B2 (en) | Automatic 3D modeling system and method | |
CN115699114A (zh) | 用于分析的图像增广 | |
CN111161392B (zh) | 一种视频的生成方法、装置及计算机系统 | |
US8351689B2 (en) | Apparatus and method for removing ink lines and segmentation of color regions of a 2-D image for converting 2-D images into stereoscopic 3-D images | |
US5995110A (en) | Method and system for the placement of texture on three-dimensional objects | |
CN112700528B (zh) | 一种用于头戴增强现实设备的虚拟物体阴影渲染方法 | |
CN112954292B (zh) | 一种基于增强现实的数字博物馆导览系统和方法 | |
CN105447898A (zh) | 一种虚拟现实设备中显示2d应用界面的方法和装置 | |
CN109478344A (zh) | 用于合成图像的方法和设备 | |
CN108197555B (zh) | 一种基于人脸追踪的实时人脸融合方法 | |
JP3810943B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラムを記録した記録媒体 | |
JP2011159329A (ja) | 自動3dモデリングシステム及び方法 | |
JP2010231347A (ja) | 画像生成方法及びその装置 | |
JP2007066064A (ja) | 画像生成装置及びプログラム | |
EP1922700B1 (en) | 2d/3d combined rendering | |
CN106447756A (zh) | 用于生成用户定制的计算机生成动画的方法和系统 | |
US5793372A (en) | Methods and apparatus for rapidly rendering photo-realistic surfaces on 3-dimensional wire frames automatically using user defined points | |
US20020175923A1 (en) | Method and apparatus for displaying overlapped graphical objects using depth parameters | |
CN109002185B (zh) | 一种三维动画处理的方法、装置、设备及存储介质 | |
JP4078926B2 (ja) | 画像生成方法及びその装置 | |
US20170053431A1 (en) | Browser-based texture map generation and application |