JP4667161B2 - 表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法および生成装置 - Google Patents

表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法および生成装置 Download PDF

Info

Publication number
JP4667161B2
JP4667161B2 JP2005232402A JP2005232402A JP4667161B2 JP 4667161 B2 JP4667161 B2 JP 4667161B2 JP 2005232402 A JP2005232402 A JP 2005232402A JP 2005232402 A JP2005232402 A JP 2005232402A JP 4667161 B2 JP4667161 B2 JP 4667161B2
Authority
JP
Japan
Prior art keywords
curvature
sample point
angle
fiber sheet
virtual object
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.)
Expired - Fee Related
Application number
JP2005232402A
Other languages
English (en)
Other versions
JP2007048084A (ja
Inventor
直樹 河合
和夫 松藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2005232402A priority Critical patent/JP4667161B2/ja
Publication of JP2007048084A publication Critical patent/JP2007048084A/ja
Application granted granted Critical
Publication of JP4667161B2 publication Critical patent/JP4667161B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Generation (AREA)

Description

本発明は、表面に繊維シートを張り付けた三次元仮想物体を、所定方向から観察したときの二次元画像を作成する技術に関し、特に、コンピュータを利用したレンダリング処理の技術に関する。
コンピュータの性能向上により、産業界の様々な分野でCG画像が利用されるようになってきている。たとえば、建築物、家具、自動車などの設計段階では、通常、多くのCG画像が利用されている。また、コンピュータを利用した製品のプレゼンテーションや映画などの種々の映像表現においても、物品の様々なCG画像が不可欠である。更に、最近では、商品カタログなどにも、実際の商品写真の代わりに、CG画像が利用される例も少なくない。一般に、CADを用いた設計段階を経て製品化された商品の場合、設計に用いたCADデータを流用してCG画像を作成することができるため、商品カタログに掲載するCG画像も比較的容易に作成することが可能になる。
建築物、家具、自動車の内装部品などのCADデータは、仮想物体の三次元データであるのに対して、提示用のCG画像は、通常、二次元画像として用意される。したがって、CADデータを利用してCG画像を作成する際には、コンピュータ内に仮想物体の三次元データを取り込み、照明条件、視点位置、投影平面を設定した上で、三次元の仮想物体の二次元投影像を投影平面上に得るためのレンダリング処理が行われる。この処理は、基本的には、照明条件で定められた光源からの照明光が仮想物体の各部で反射して視点位置へ向かう現象をコンピュータ上でシミュレートするものであり、視点位置へ向かう反射光の強度を演算する処理ということができる。仮想物体の表面に、何らかの絵柄をもったシート状素材が張り付けられる場合には、当該シート状素材の絵柄をテクスチャデータとして用意し、仮想物体の表面にこの絵柄をマッピングした上で、反射率の演算が行われることになる。たとえば、下記の特許文献1には、二次元テクスチャを三次元物体の表面にマッピングした上で、レンダリング処理を施し、二次元画像を生成する手法が開示されている。
特開2005−63041号公報
椅子やソファなどの家具、自動車の内装、バッグや靴などの物品には、表面に布などの繊維質材料からなるシート(以下、繊維シートと呼ぶ)を張り付けたものが少なくない。このように、表面に繊維シートを張り付けた三次元仮想物体を、所定の照明条件の下で、所定の視点位置から観察したときに得られる二次元画像を生成する場合、通常は、繊維シート表面を表現するためのテクスチャのデータを用意し、このテクスチャを三次元仮想物体にマッピングした上でレンダリング処理を行うことになる。
しかしながら、従来の一般的なテクスチャマッピングの手法を用いた場合、実際の繊維シートのもつ素材の特徴を十分に表現することができないという問題がある。特に、デニム、玉虫織り、タオル、ビロードなどのパイル地といった繊維シートの質感は、非常に繊細であり、従来のレンダリング方法では、二次元画像上にその質感を十分に表現することができない。
そこで本発明は、仮想物体の三次元データに基づいて、この仮想物体の表面に繊維シートを張り付けた状態を示す二次元データを生成する際に、繊維の質感が十分に表現された二次元画像を生成することができる二次元画像生成方法および生成装置を提供することを目的とする。
(1) 本発明の第1の態様は、物体の三次元データに基づいて、当該物体の表面に繊維シートを張り付け、これを所定の視点から観察したときに得られる投影画像を示す二次元データを生成する、表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
実在の繊維シートを所定の曲率を有する実在の物体上に張り付け、所定の条件で照明を行い、繊維シート表面から得られる反射光を所定方向から観察する測定を、複数通りの曲率についてそれぞれ行うことにより、曲率が反射光強度に及ぼす影響を含んだ曲率依存反射特性を求める曲率依存反射特性測定段階と、
コンピュータが、仮想物体の立体形状を示す三次元データを入力するデータ入力段階と、
コンピュータが、照明条件、視点位置、投影平面を設定する投影条件設定段階と、
コンピュータが、仮想物体の表面上に定義された所定のサンプル点の位置について、仮想物体表面の曲率を求める曲率演算段階と、
コンピュータが、繊維シートを仮想物体の表面に張り付けた場合に、サンプル点から視点位置に向かう反射光の強度を、当該サンプル点位置における曲率に対応する曲率依存反射特性を考慮して求める反射光強度演算段階と、
コンピュータが、サンプル点からの反射光と投影平面との交点位置に、反射光の強度に応じた画素値をもつ画素を定義する画素定義段階と、
コンピュータが、多数のサンプル点について定義された多数の画素の集合により、仮想物体の投影画像を示す二次元投影データを生成する投影データ生成段階と、
を行うようにしたものである。
(2) 本発明の第2の態様は、上述した第1の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
曲率依存反射特性測定段階では、実在の繊維シートを実在の物体上に張り付ける際に、実在の繊維シート上に基準方向線を定義し、この基準方向線が実在の物体上でそれぞれ異なる方向を向くように複数通りの向きで張り付けるようにし、向きのファクターをもった曲率を定義し、曲率依存反射特性を、向きのファクターをもった個々の曲率ごとにそれぞれ求め、
データ入力段階では、仮想物体に対する繊維シートの張り付け向きに関する情報を併せて入力し、
曲率演算段階では、向きのファクターをもった曲率を求め、
反射光強度演算段階では、向きのファクターをもった曲率に対応する曲率依存反射特性を考慮して反射光強度を求めるようにしたものである。
(3) 本発明の第3の態様は、上述した第2の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
曲率依存反射特性測定段階では、実在の物体の円柱側面に実在の繊維シートを所定の向きに張り付け、円柱の半径の逆数を用いて曲率σを定義し、円柱の中心軸を半径方向に投影することにより円柱側面上に得られる投影線と繊維シートの基準方向線とのなす角ξを当該曲率σについての曲率角度と定義し、個々の曲率σおよび個々の曲率角度ξの各組み合わせに対応する曲率依存反射特性をそれぞれ求め、
データ入力段階では、仮想物体上に張り付けられる繊維シートの基準方向線の向きに関する情報を入力し、
曲率演算段階では、所定のサンプル点の位置について、基準方向線の向きに関する情報を参照することにより、曲率σおよびこの曲率σに応じた湾曲方向と基準方向線とのずれを示す曲率角度ξを求め、
反射光強度演算段階では、曲率σおよび曲率角度ξの組み合わせに対応する曲率依存反射特性を考慮して反射光強度を求めるようにしたものである。
(4) 本発明の第4の態様は、上述した第3の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
曲率依存反射特性測定段階では、uv二次元座標系上に定義された絵柄データT(u,v)で示される絵柄をもった実在の繊維シートを用いた測定を行うようにし、座標値u,vの値に応じた曲率依存反射特性を求め、
反射光強度演算段階では、サンプル点における入射照明光の強度をIiとしたときに、反射光強度Iを、座標値u,vおよび曲率パラメータσ,ξの関数として与えられる反射係数kを用いて、
I=k・Ii
なる式で求めるようにしたものである。
(5) 本発明の第5の態様は、上述した第3の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
反射光強度演算段階では、サンプル点における入射照明光の強度をIi、仮想物体表面上のサンプル点位置に立てた法線nと入射照明光とのなす角をα、拡散反射係数をkdとしたときに、反射光強度Iを、
I=kd・Ii・cos α
なる式で求め、拡散反射係数kdを、曲率パラメータσ,ξを考慮して決定するようにしたものである。
(6) 本発明の第6の態様は、上述した第5の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
曲率依存反射特性測定段階では、uv二次元座標系上に定義された絵柄データT(u,v)で示される絵柄をもった実在の繊維シートを用いた測定を行うようにし、座標値u,vの値に応じた曲率依存反射特性を求め、
反射光強度演算段階では、拡散反射係数kdを、座標値u,vおよび曲率パラメータσ,ξを考慮して決定するようにしたものである。
(7) 本発明の第7の態様は、上述した第3の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
反射光強度演算段階では、サンプル点における入射照明光の強度をIi、仮想物体表面上のサンプル点位置に立てた法線nと入射照明光とのなす角をα、この角度αに依存した反射係数をk(α)、鏡面反射の鋭さを示すパラメータをβ、サンプル点における鏡面反射光の射出方向と視点方向とのなす角をγとしたときに、反射光強度Iを、
I=k(α)・Ii・cos βγ
なる式で求め、係数k(α)およびβを、曲率パラメータσ,ξを考慮して決定するようにしたものである。
(8) 本発明の第8の態様は、上述した第7の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
角度αに依存した反射係数をk(α)の代わりに、角度αに依存しない係数ksを用い、反射光強度Iを、
I=ks・Ii・cos βγ
なる式で求め、係数ksおよびβを、曲率パラメータσ,ξを考慮して決定するようにしたものである。
(9) 本発明の第9の態様は、上述した第3の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
反射光強度演算段階では、サンプル点における入射照明光の強度をIi、仮想物体表面上のサンプル点位置に立てた法線nと入射照明光とのなす角をθL、法線nに直交する直交平面上への入射照明光の投影像と直交平面上のサンプル点を通る基準線とのなす角度をφL、法線nと反射光とのなす角度をθV、直交平面上への反射光の投影像と基準線とのなす角度をφVとしたときに、反射光強度Iを、θL,φL,θV,φVおよび曲率パラメータσ,ξの関数として与えられる反射係数kbを用いて、
I=kb・Ii
なる式で求めるようにしたものである。
(10) 本発明の第10の態様は、上述した第3の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
曲率依存反射特性測定段階では、uv二次元座標系上に定義された絵柄データT(u,v)で示される絵柄をもった実在の繊維シートを用いた測定を行うようにし、座標値u,vの値に応じた曲率依存反射特性を求め、
反射光強度演算段階では、サンプル点における入射照明光の強度をIi、仮想物体表面上のサンプル点位置に立てた法線nと入射照明光とのなす角をθL、法線nに直交する直交平面上への入射照明光の投影像と直交平面上のサンプル点を通る基準線とのなす角度をφL、法線nと反射光とのなす角度をθV、直交平面上への反射光の投影像と基準線とのなす角度をφVとしたときに、反射光強度Iを、θL,φL,θV,φV,座標値u,vおよび曲率パラメータσ,ξの関数として与えられる反射係数kbを用いて、
I=kb・Ii
なる式で求めるようにしたものである。
(11) 本発明の第11の態様は、上述した第9または第10の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
曲率依存反射特性測定段階では、照明条件および観察方向を変化させることにより、角度θL,φLで定義される入射照明光の向きおよび角度θV,φVで定義される反射光の向きを複数通りに変えた測定を行い、曲率依存反射特性を、角度θL,φL,θV,φVの組み合わせごとにそれぞれ求めるようにし、
反射光強度演算段階では、演算対象となるサンプル点についての入射照明光の向きを示す角度θL,φLおよび反射光の向きを示す角度θV,φVの組み合わせに対応した曲率依存反射特性を用いた演算を行うようにしたものである。
(12) 本発明の第12の態様は、上述した第1〜第11の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
投影条件設定段階で、複数の光源を有する照明条件を設定し、
反射光強度演算段階で、1つのサンプル点から視点位置に向かう反射光の強度を、複数の光源のそれぞれからの入射照明光に基づいて発生する各反射光強度の総和として求めるようにしたものである。
(13) 本発明の第13の態様は、上述した第1〜第12の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
データ入力段階では、仮想物体の立体形状を多角形の集合体として入力し、
曲率演算段階で、特定のサンプル点Qについての曲率を求める際に、当該特定のサンプル点を含むJ個の辺を有する着目多角形について、当該着目多角形とこれに隣接する複数J個の隣接多角形との間の仮想物体の内側についての形成角ω1〜ωJをそれぞれ求め、第j番目の隣接多角形との間の境界を形成する第j番目の辺に関する曲率として、第j番目の形成角ωjが180°に近くなればなるほど小さくなり、かつ、着目多角形および第j番目の隣接多角形の大きさが大きくなればなるほど小さくなるような絶対値をもち、第j番目の形成角ωjと180°との大小関係に応じた符号を有する曲率σjを定義し、第1番目の辺〜第J番目の辺についてそれぞれ曲率σ1〜σJを定義し、特定のサンプル点と第j番目の辺との距離が短ければ短いほど、第j番目の曲率σjの影響が大きくなるように、J個の曲率σ1〜σJを合成することにより、サンプル点Qについての曲率σQを求めるようにしたものである。
(14) 本発明の第14の態様は、上述した第13の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
曲率依存反射特性測定段階では、実在の繊維シートを実在の物体上に張り付ける際に、実在の繊維シート上に基準方向線を定義し、この基準方向線が実在の物体上でそれぞれ異なる方向を向くように複数通りの向きで張り付けるようにし、向きのファクターをもった曲率を定義し、曲率依存反射特性を、向きのファクターをもった個々の曲率ごとにそれぞれ求め、
データ入力段階では、基準方向線に関する情報を併せて入力し、
曲率演算段階では、基準方向線と着目多角形の第1番目の辺〜第J番目の辺のそれぞれとのなす角ξ1〜ξJを、各辺についての曲率角度としてそれぞれ求め、サンプル点Qと第j番目の辺との距離が短ければ短いほど、第j番目の曲率角度ξjの影響が大きくなるように、J個の曲率角度ξ1〜ξJを合成することにより、サンプル点Qについての曲率角度ξQを求め、
反射光強度演算段階では、曲率角度ξQで示される向きのファクターをもった曲率に対応する曲率依存反射特性を考慮して反射光強度を求めるようにしたものである。
(15) 本発明の第15の態様は、上述した第1〜第12の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
データ入力段階では、仮想物体の立体形状を三角形の集合体として入力し、
曲率演算段階で、特定のサンプル点Qについての曲率を求める際に、当該特定のサンプル点を含む着目三角形Tqについて、当該着目三角形Tqと、辺A,B,Cを境界としてこれに隣接する3個の隣接三角形Ta,Tb,Tcとの間の仮想物体の内側についての形成角ωa,ωb,ωcをそれぞれ求め、辺Aに関する曲率として、形成角ωaが180°に近くなればなるほど小さくなり、かつ、着目三角形Tqおよび隣接三角形Taの大きさが大きくなればなるほど小さくなるような絶対値をもち、形成角ωaと180°との大小関係に応じた符号を有する曲率σaを定義し、辺Bに関する曲率として、形成角ωbが180°に近くなればなるほど小さくなり、かつ、着目三角形Tqおよび隣接三角形Tbの大きさが大きくなればなるほど小さくなるような絶対値をもち、形成角ωbと180°との大小関係に応じた符号を有する曲率σbを定義し、辺Cに関する曲率として、形成角ωcが180°に近くなればなるほど小さくなり、かつ、着目三角形Tqおよび隣接三角形Tcの大きさが大きくなればなるほど小さくなるような絶対値をもち、形成角ωcと180°との大小関係に応じた符号を有する曲率σcを定義し、サンプル点Qと辺Aとの距離が短ければ短いほど曲率σaの影響が大きくなり、サンプル点Qと辺Bとの距離が短ければ短いほど曲率σbの影響が大きくなり、サンプル点Qと辺Cとの距離が短ければ短いほど曲率σcの影響が大きくなるように、曲率σa,σb,σcを合成することにより、サンプル点Qについての曲率σQを求めるようにしたものである。
(16) 本発明の第16の態様は、上述した第15の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
辺Aに関する曲率を定義する際に、着目三角形Tqの辺Aに対する対角から辺Aに下ろした垂線の長さhqaと、隣接三角形Taの辺Aに対する対角から辺Aに下ろした垂線の長さhaと、を求め、平面上に、「長さhqaをもった線分」と「長さhaをもった線分」とを、それぞれの一端が接続点Jaで接続され、かつ、接続点Jaにおける両線分のなす角が形成角ωaとなるように配置し、「長さhqaをもった線分」の垂直二等分線と「長さhaをもった線分」の垂直二等分線との交点Oaと接続点Jaとの距離Raの逆数を、辺Aに関する曲率σaの絶対値と定義し、
辺Bに関する曲率を定義する際に、着目三角形Tqの辺Bに対する対角から辺Bに下ろした垂線の長さhqbと、隣接三角形Tbの辺Bに対する対角から辺Bに下ろした垂線の長さhbと、を求め、平面上に、「長さhqbをもった線分」と「長さhbをもった線分」とを、それぞれの一端が接続点Jbで接続され、かつ、接続点Jbにおける両線分のなす角が形成角ωbとなるように配置し、「長さhqbをもった線分」の垂直二等分線と「長さhbをもった線分」の垂直二等分線との交点Obと接続点Jbとの距離Rbの逆数を、辺Bに関する曲率σbの絶対値と定義し、
辺Cに関する曲率を定義する際に、着目三角形Tqの辺Cに対する対角から辺Cに下ろした垂線の長さhqcと、隣接三角形Tcの辺Cに対する対角から辺Cに下ろした垂線の長さhcと、を求め、平面上に、「長さhqcをもった線分」と「長さhcをもった線分」とを、それぞれの一端が接続点Jcで接続され、かつ、接続点Jcにおける両線分のなす角が形成角ωcとなるように配置し、「長さhqcをもった線分」の垂直二等分線と「長さhcをもった線分」の垂直二等分線との交点Ocと接続点Jcとの距離Rcの逆数を、辺Cに関する曲率σcの絶対値と定義するようにしたものである。
(17) 本発明の第17の態様は、上述した第15または第16の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
サンプル点Qについての曲率σQを求める際に、着目三角形Tqの辺Aに対する対角とサンプル点Qとの距離をLa、着目三角形Tqの辺Bに対する対角とサンプル点Qとの距離をLb、着目三角形Tqの辺Cに対する対角とサンプル点Qとの距離をLcとしたときに、
σQ=(La・σa+Lb・σb+Lc・σc)/(La+Lb+Lc)
なる演算を行うようにしたものである。
(18) 本発明の第18の態様は、上述した第15または第16の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
サンプル点Qについての曲率σQを求める際に、サンプル点Qから辺Aに下ろした垂線と、サンプル点Qから辺Bに下ろした垂線と、サンプル点Qから辺Cに下ろした垂線と、によって、着目三角形Tqを3つの領域に分割し、辺Aに対する対角を含む領域の面積をUa、辺Bに対する対角を含む領域の面積をUb、辺Cに対する対角を含む領域の面積をUcとしたときに、
σQ=(Ua・σa+Ub・σb+Uc・σc)/(Ua+Ub+Uc)
なる演算を行うようにしたものである。
(19) 本発明の第19の態様は、上述した第15〜第18の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
曲率依存反射特性測定段階では、実在の繊維シートを実在の物体上に張り付ける際に、実在の繊維シート上に基準方向線を定義し、この基準方向線が実在の物体上でそれぞれ異なる方向を向くように複数通りの向きで張り付けるようにし、向きのファクターをもった曲率を定義し、曲率依存反射特性を、向きのファクターをもった個々の曲率ごとにそれぞれ求め、
データ入力段階では、基準方向線に関する情報を併せて入力し、
曲率演算段階では、基準方向線と着目三角形の辺A,辺B,辺Cのそれぞれとのなす角ξa,ξb,ξcを、各辺についての曲率角度としてそれぞれ求め、サンプル点Qと辺Aとの距離が短ければ短いほど曲率角度ξaの影響が大きくなり、サンプル点Qと辺Bとの距離が短ければ短いほど曲率角度ξbの影響が大きくなり、サンプル点Qと辺Cとの距離が短ければ短いほど曲率角度ξcの影響が大きくなるように、曲率角度ξa,ξb,ξcを合成することにより、サンプル点Qについての曲率角度ξQを求め、
反射光強度演算段階で、サンプル点Qについての反射光強度を求める際に、曲率角度ξQなる向きのファクターをもった曲率σQを用いて、対応する曲率依存反射特性を決定するようにしたものである。
(20) 本発明の第20の態様は、上述した第19の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
サンプル点Qについての曲率角度ξQを求める際に、着目三角形Tqの辺Aに対する対角とサンプル点Qとの距離をLa、着目三角形Tqの辺Bに対する対角とサンプル点Qとの距離をLb、着目三角形Tqの辺Cに対する対角とサンプル点Qとの距離をLcとしたときに、
ξQ=(La・ξa+Lb・ξb+Lc・ξc)/(La+Lb+Lc)
なる演算を行うようにしたものである。
(21) 本発明の第21の態様は、上述した第19の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
サンプル点Qについての曲率角度ξQを求める際に、サンプル点Qから辺Aに下ろした垂線と、サンプル点Qから辺Bに下ろした垂線と、サンプル点Qから辺Cに下ろした垂線と、によって、着目三角形Tqを3つの領域に分割し、辺Aに対する対角を含む領域の面積をUa、辺Bに対する対角を含む領域の面積をUb、辺Cに対する対角を含む領域の面積をUcとしたときに、
σQ=(Ua・ξa+Ub・ξb+Uc・ξc)/(Ua+Ub+Uc)
なる演算を行うようにしたものである。
(22) 本発明の第22の態様は、上述した第1〜第12の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法において、
データ入力段階では、仮想物体の立体形状を、数式およびこの数式に用いられているパラメータの値によって表現されるパラメトリック曲面として入力し、
曲率演算段階で、特定のサンプル点Qについての曲率を、数式およびパラメータの値を用いた演算により求めるようにしたものである。
(23) 本発明の第23の態様は、上述した第1〜第22の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法における曲率依存反射特性測定段階以外の各段階をコンピュータに実行させるために、コンピュータプログラムを用意するようにしたものである。
(24) 本発明の第24の態様は、物体の三次元データに基づいて、当該物体の表面に繊維シートを張り付け、これを所定の視点から観察したときに得られる投影画像を示す二次元データを生成する、表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成装置を、
外部から与えられる種々のデータを入力するデータ入力部と、
データ入力部から入力された、仮想物体の立体形状を示す三次元データを格納する三次元データ格納部と、
データ入力部から入力された、繊維シートについての「曲率が反射光強度に及ぼす影響」を含んだ曲率依存反射特性を格納する曲率依存反射特性格納部と、
データ入力部から入力されたデータに基づき、照明条件、視点位置、投影平面を設定する投影条件設定部と、
三次元データに基づいて、仮想物体の表面上に定義された所定のサンプル点の位置について、仮想物体表面の曲率を求める曲率演算部と、
繊維シートを仮想物体の表面に張り付けた場合に、サンプル点から視点位置に向かう反射光の強度を、三次元データ、照明条件、視点位置、当該サンプル点位置における曲率に対応する曲率依存反射特性を考慮して求める反射光強度演算部と、
サンプル点からの反射光と投影平面との交点位置に、反射光の強度に応じた画素値をもつ画素を定義する画素定義部と、
多数のサンプル点について定義された多数の画素の集合を、仮想物体の投影画像を示す二次元投影データとして格納する投影データ格納部と、
によって構成するようにしたものである。
(25) 本発明の第25の態様は、上述した第24の態様に係る表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成装置において、
データ入力部に、繊維シートを仮想物体に張り付けたときに、繊維シート上に定義された基準方向線の向きに関する情報を入力する機能をもたせ、
曲率依存反射特性格納部に、曲率と、この曲率に応じた湾曲方向と基準方向線とのずれを示す曲率角度と、についての種々の組み合わせにそれぞれ対応する曲率依存反射特性を格納する機能をもたせ、
曲率演算部に、サンプル点位置における曲率とともに曲率角度を求める機能をもたせ、
反射光強度演算部に、サンプル点位置における曲率および曲率角度に対応する曲率依存反射特性を考慮して、反射光強度を求める機能をもたせるようにしたものである。
本発明に係る二次元画像生成方法および生成装置によれば、繊維シートを張り付けた仮想物体の各部からの反射光強度を演算する際に、当該各部の曲率を考慮した演算を行うようにしたため、繊維の質感が十分に表現された二次元画像を生成することが可能になる。
以下、本発明を図示する実施形態に基づいて説明する。
<<< §1.本発明の基本概念 >>>
本発明は、コンピュータを用いたレンダリング処理に係るものであり、特に、表面に繊維シート(布などの繊維質材料からなるシート)を張り付けた三次元仮想物体についてのレンダリング処理に係るものである。ここでは、本発明に係るレンダリング処理の基本概念を説明する。
まず、図1(a) に示すような三次元仮想物体10を、所定の視点位置から観察した場合に得られる二次元画像を生成する処理を考えよう。この仮想物体10は、直方体状の立体であり、実際には全6面を有しているが、得られた二次元画像上には、図示のとおり上面11、前面12,側面13の3面のみが現れている。レンダリング処理は、仮想物体10の三次元データに基づいて、図示のような二次元画像を生成する処理であり、仮想物体10の三次元データをコンピュータに入力し、照明条件(光源の種類や位置)、視点位置、投影平面を設定した上で、光源からの照明光が、仮想物体10の表面各部から反射して視点位置方向へ向かう光学現象をシミュレートする処理ということができる。所定の投影平面上において、仮想物体10の表面各部からの反射光強度分布を演算することにより、この投影平面上に二次元画像を得ることができる。
一方、図1(b) に示す仮想物体20は、図1(a) に示す仮想物体10の表面に、繊維シートを張り付けたものである。図示のとおり、得られた二次元画像上には、上面21、前面22,側面23の3面が現れているが、いずれも繊維シートを張り付けた面となっている。このように、三次元仮想物体の表面に、何らかの二次元シートを張り付けた状態を示すレンダリング処理は、通常、テクスチャマッピングの手法を利用して行われる。すなわち、二次元シートの絵柄情報を二次元テクスチャデータ(二次元の反射特性分布を示すデータ)として用意しておき、仮想物体の表面に、このテクスチャデータを張り付けた状態で、各部の反射率を演算する処理が行われる。テクスチャデータとして、繊維1本1本の濃淡が表現された絵柄データを用意しておけば、得られる二次元画像上にも、繊維の質感が表現されることになる。
しかしながら、前述したとおり、従来の一般的なテクスチャマッピングの手法を用いた場合、実際の繊維シートのもつ素材の特徴を十分に表現することが困難である。このため、CGにより生成された二次元画像は、実物の写真画像に比べると、繊維の質感が不自然に見え、リアルな臨場感に乏しい結果となる。
そこで、本願発明者は、繊維シートを張り付けた物体の二次元画像をCGで生成した場合に、十分な繊維質表現を行うことができない原因をいろいろな方法で探求してみた。その結果、ソファなどの家具や自動車のシートなどについては、特に、繊維質表現の不自然さが顕著になる傾向があることがわかった。更に技術的な検証・考察を重ねることにより、次の2つの事実に気がついた。
第1の事実は、繊維シートを仮想物体の平面に張り付けた場合より、曲面に張り付けた場合の方が、不自然さがより顕著であるという点である。たとえば、図1(a) に示すような平面のみからなる仮想物体10よりも、図2(a) に示すような曲面を含む仮想物体30の方が、不自然さが顕著になる。仮想物体30には、上面31と側面32とが現れているが、このうちの上面31は曲面を構成している。ここで、図2(b) に示すように、表面に繊維シートを張り付けた仮想物体40を用意して、従来の一般的な方法でレンダリング処理を行った場合、平面からなる側面42の繊維質表現よりも、曲面からなる上面41の繊維質表現の方が不自然に見える傾向にあることが判明した。
第2の事実は、繊維質表現が不自然になるのは、特に、デニム、玉虫織り、タオル、ビロードなどのパイル地といった繊維シートを張り付けた場合に顕著であるという点である。これらの生地に共通するのは、表面が植毛構造をなしていたり、視野に投影される縦糸と横糸との面積比が固定されていなかったりして、生地を曲げると、表面の構造に変化が生じるという点である。
たとえば、図2(b) に示す例の場合、生地を側面42(平面)に張り付けた場合を基準の状態とすると、生地を上面41(曲面)に張り付けた場合は、生地は凸状に湾曲することになる。このため、表面に多数の植毛構造をもった生地の場合、1本1本の毛の先端部の間隔がより広がることになる。たとえば、タオル地の場合、ベースとなる素材に対して、多数のパイルが植毛された構造を有しているが、生地を凸状に湾曲させると、個々のパイルの先端部の間隔が広がり、ベースとなる素材が観察される面積が増加することになる。逆に、生地を凹状に湾曲させると、個々のパイルの先端部の間隔が狭まり、ベースとなる素材が観察される面積は減少する。その結果、生地を張り付ける面の曲率によって、生地の観察態様が変化することになる。
また、玉虫織りの場合は、視野に投影される縦糸と横糸との面積比が、生地の観察態様に大きな影響を与えることになるが、生地を凹状に湾曲させた場合と、凸状に湾曲させた場合とでは、視野に投影される縦糸と横糸との面積比が変化することになる。この場合、生地の観察態様は、湾曲させる方向にも依存して変化する。あるいはフェルト地などでは、凸状に湾曲させることによって、鏡面反射成分が増加する現象もみられる。これは、生地の湾曲によって生じる張力によって、繊維の向きが一方向に揃うためと考えられる。同様の現象は、フェルトのみならず、様々な繊維シートで生じていると思われる。
このような2つの事実から、繊維シートを張り付けた仮想物体の二次元画像において、繊維の質感に不自然さが生じる要因の1つは、曲面に張り付けた繊維シートの表面構造の変化にある、と考えることができる。そこで、本願発明者は、二次元画像をCGで作成する場合に、繊維シートの表面構造の変化を考慮したレンダリング処理を行うことにより、不自然さを払拭することができるのではないかと考えたのである。そのためには、レンダリング処理において、仮想物体表面における反射特性を定量的に評価する際に、当該仮想物体表面の曲率を考慮するようにすればよい。以下、この概念をより詳細に説明する。
図3は、一般的なレンダリング処理の原理を示す斜視図である。この例は、仮想物体50を、視点Eから観察したときに、投影平面M上に投影画像55を求めるシェーディングモデルを示すものである。このとき、仮想繊維シート60を仮想物体50の表面に張り付けた状態の投影像を求めるようにする。このようなレンダリング処理を行うために、まず、仮想物体50を示す三次元データが用意される。たとえば、図示の例では、XYZ三次元座標系上に定義された多数のポリゴン(多角形)の集合として、仮想物体50が表現されており、仮想物体50の表面の各部は、それぞれポリゴンによって構成されている。
一方、仮想繊維シート60は、二次元のテクスチャデータとして用意される。図示の例では、uv二次元座標系上に定義された画像データとして、仮想繊維シート60の繊維の濃淡およびハート型の絵柄が表現されている。この絵柄データは、結局、仮想繊維シート60の反射特性の分布を示す反射特性データということができる。レンダリング処理を行う際には、このuv座標系上に定義された絵柄データを、XYZ座標系上に定義された仮想物体の表面にマッピングし、仮想物体表面の各部の反射特性を決定することになる。
レンダリング処理にあたっては、この他、照明条件、視点位置、投影平面を設定する必要がある。照明条件としては、光源の種類(たとえば、形状、大きさ、波長特性など)や位置などを設定する。図示の例の場合、光源G、視点E、投影平面Mが図示の位置に設定されている。また、投影平面M上には、xy二次元座標系が定義されており、投影画像55(レンダリング処理の目的物として得られる二次元画像)は、このxy座標系上の画像データとして得られることになる。
いま、図示のとおり、仮想物体50上にサンプル点Qを定義し、このサンプル点Qから視点Eに向かう反射光Vを考える。この反射光Vは、光源Gからの照明光Lが、サンプル点Qで反射することにより得られる光であり、視点Eの位置で観察される光である。もっとも、ここでいう「反射」とは、「鏡面反射」のみでなく、「拡散反射」も含めた広い概念であり、サンプル点Qに様々な角度で入射する照明光がそれぞれ反射光として視点Eに向かうことになる。したがって、図示の反射光Vは、様々な角度から入射した照明光から得られる反射光の集まりというべきものになる。
1つのサンプル点Qから視点Eに向かう反射光Vと投影平面Mとの交点位置に、当該反射光Vの強度に応じた画素値をもつ画素Pを定義するようにし、仮想物体50の表面上の多数のサンプル点から視点Eに向かう各反射光について、同様に、投影平面M上に画素を定義すれば、多数のサンプル点について定義された多数の画素の集合により、仮想物体50の投影画像が投影平面M上に得られることになる。実用上は、予め投影平面M上に所望の解像度で画素配列を定義しておき、視点Eと個々の画素Pの代表点(たとえば、中心位置)とを結ぶ線を仮想物体50上へと伸ばし、仮想物体表面との交点位置にサンプル点Qを定義し、上述した手法により、個々の画素Pの画素値を演算すれば、必要な解像度をもった二次元データを得ることができる。
このように、投影平面M上の画素Pの画素値を求めるためには、サンプル点Qから画素Pを通って視点Eに向かう反射光Vの強度を求める必要があるが、このような反射光Vの強度は、基本的に、サンプル点Qに入射する照明光Lの強度と、サンプル点Qにおける光の反射率(鏡面反射率や拡散反射率)とを考慮した演算によって求めることができる。もちろん、このとき、サンプル点Qを含むポリゴンの向きを考慮に入れた演算が行われ、サンプル点Qにマッピングされたテクスチャデータ(uv座標系上に定義された繊維シート60の画像データ)も考慮に入れた演算が行われる。したがって、仮想物体50の表面が曲面であれば、当該曲面に応じた陰影をもった投影画像55が得られることになり、仮想繊維シート60の反射特性データ(テクスチャデータ)が、図示のように、1本1本の繊維の濃淡とハート型の絵柄の情報をもっていれば、投影画像55上にも、この繊維の濃淡およびハート型の絵柄が表現されることになる(図3では、この絵柄の図示は省略)。
しかしながら、従来のテクスチャマッピングの手法では、テクスチャデータを三次元仮想物体の表面にマッピングする場合、単に、二次元データを幾何学的にマッピングするだけなので、生地を曲げると、表面の構造に変化が生じるような繊維シートを、曲面にマッピングした場合に、十分な質感表現を行うことができない。本発明の基本概念は、このレンダリング処理の際に、更に、サンプル点Qにおける仮想物体50の曲率を考慮に入れて反射光の強度演算を行うようにする、という点にある。
この基本概念を、図4を参照しながら、もう少し詳しく説明しよう。図4は、繊維シートと物体表面の曲率との関係を示す斜視図である。ここでは、まず、図4(a) に示すように、半径r1の円柱からなる実在の物体51が、その中心軸Hを水平方向に向けて配置されている状態において、縦糸および横糸によって編まれた繊維とハート型の絵柄の情報をもった実在の繊維シート61を、円柱側面に沿って張り付けた場合を考えよう。このとき、繊維シート61の縦方向に、図示のとおり基準方向線Wを定義する。この基準方向線Wは、繊維シート61の縦糸の方向を示すことになる。この繊維シート61を図示の向きのまま、円柱状の物体51の周囲に巻き付けたとすると、基準方向線Wは、円柱の円周方向を向くことになる。ここで、便宜上、円柱の中心軸Hを半径方向に投影することにより円柱側面上に得られる投影線H′と張り付けられた繊維シート61の基準方向線Wとのなす角を曲率角度ξと呼ぶことにすれば、図4(a) の例の場合、曲率角度ξ=90°になる。
図4(b) は、やはり曲率角度ξ=90°となるように、繊維シート61を円柱状の物体52に張り付けたものであるが、物体52の半径はr2であり(r2<r1)、物体51よりも若干細い円柱となっている。ここでは、各円柱側面の曲率σを、その半径の逆数と定義してみる。すると、繊維シート61は、図4(a) の例では、曲率σ=1/r1の曲面に張り付けられていることになり、図4(b) の例では、曲率σ=1/r2の曲面に張り付けられていることになる。一方、図4(c) は、半径r1の円柱状物体51を用いている点は図4(a) と同じであるが、円柱の中心軸Hを垂直方向に向けて配置した状態で、繊維シート61を張り付けているため、投影線H′と基準方向線Wとは同一方向を向くことになるので、両者のなす角として定義される曲率角度はξ=0°となる。
結局、図4(a) 〜(c) は、いずれも同一の繊維シート61を張り付けた例であるが、図4(a) の場合、曲率σ=1/r1,曲率角度90°、図4(b) の場合、曲率σ=1/r2,曲率角度90°、図4(c) の場合、曲率σ=1/r1,曲率角度0°ということになる。この3通りの場合を、コンピュータ上でシミュレートするために、従来の方法でレンダリング処理を行うことを考えよう。この場合、もちろん、各円柱側面は、XYZ三次元座標系上での曲面として取り扱われ、光源からの照明光の照射角度や反射光の方向などを求める演算において、この曲面の情報が反映されることになる。また、繊維シート61のテクスチャデータがマッピングされるため、繊維シートの縦糸や横糸およびハート型の絵柄の情報を考慮した演算が行われる。しかしながら、繊維シート61が同一である以上、図4(a) 〜(c) のいずれの場合も、同一のテクスチャデータを用いた演算が行われる。このような従来の手法は、同一の繊維シート61を張り付ける限り、張り付け対象となる面がどのような面であっても、そのテクスチャの情報に変わりはない、という前提に立っている。
しかしながら、実際には、繊維シート61を曲面上に張り付けると、多かれ少なかれ、その表面構造に変化が生じ、テクスチャの情報が変化することになる。たとえば、繊維シート61が縦糸と横糸からなる織物であった場合、図4(a) に示すように、曲率角度ξ=90°となるように張り付けると、横糸と横糸との間から露出する縦糸の面積は増加する。図4(b) に示すように、曲率がより大きな曲面(半径がより小さな円柱側面)に張り付けた場合、縦糸の露出割合は更に大きくなる。一方、図4(c) に示すように、曲率角度ξ=0°になると、縦糸と縦糸との間から露出する横糸の面積が増加するようになる。もちろん、曲率角度ξは、30°,45°,60°といった任意の角度をとることができ、縦糸と縦糸との間から露出する横糸の面積や、横糸と横糸との間から露出する縦糸の面積は、これらの角度に依存して変わってくる。
結局、繊維シート61のテクスチャ情報は、張り付け対象となる面の曲率と、曲率角度に応じて変化することになる。もちろん、このような繊維の表面構造の変化は、通常、ハート型の模様を星型に変えるといった劇的な変化をもたらすものではなく、わずかな色合いの変化などをもたらす程度であることが多いが、CG画像の微妙な自然の風合いを左右する要因になることは確かである。現実的には、既に列挙したとおり、デニム、玉虫織り、タオル、ビロードなどのパイル地といった繊維シートを張り付けた物体のCG画像を作成する場合に、特に顕著な要因として現れてくる。
したがって、自然の風合いまで忠実に再現したCG画像を作成するには、張り付け対象となる面の曲率および曲率角度に応じて変化するテクスチャ情報を考慮した取り扱いを行えばよい。もちろん、理論的には、繊維シートのテクスチャ情報として、単なる二次元画像データではなく、1本1本の繊維の三次元構造までも厳密に定義したデータを用意し、繊維シートを三次元的に取り扱う処理を行えば、実物の繊維の質感を忠実に再現したCG画像が得られる。しかしながら、そのような処理は非常に複雑な演算を必要とするため、現実的には好ましくない。
そこで本発明では、予め実在の繊維シートを所定の曲率を有する実在の物体上に張り付け、所定の条件で照明を行い、繊維シート表面から得られる反射光を所定方向から観察する測定を、複数通りの曲率についてそれぞれ行うことにより、曲率が反射光強度に及ぼす影響を含んだ曲率依存反射特性を求めておき、コンピュータ上でレンダリング処理を行う際に、この曲率依存反射特性を考慮した反射光強度演算を行うようにしている。
たとえば、実在の繊維シート61を、図4(a) に示すように、半径r1の実在の円柱状物体51に張り付けたものと、図4(b) に示すように、半径r2の実在の円柱状物体52に張り付けたものとを、同一の照明環境で同一方向から実際に観察し、得られる画像を比べると、両画像は当然相違する。両画像の相違の要因には、物体51,52の立体形状の違い(空間的な占有位置の違い)による影響と、繊維シート61の張り付け面の曲率に基づく影響とが含まれている。そこで、様々な半径をもった円柱状物体を用いた観察を行えば、曲率σ(半径の逆数)が反射光強度に及ぼす影響を含んだ曲率依存反射特性を定量的に実測することができるので、コンピュータ上でのレンダリング処理では、この実測した曲率依存反射特性を考慮した反射光強度演算を行うようにすればよい。その具体的手法に関しては後述する。
<<< §2.本発明に係る二次元画像生成方法の基本手順 >>>
続いて、本発明に係る二次元画像生成方法の基本手順を、図5の流れ図を参照しながら説明する。ここでは、便宜上、自動車のカタログに掲載する車内の内装写真を、CGを用いて作成する場合を例にとって説明を行う。
この場合、必要になるものは、内装部品の三次元データと、内装に実際に用いられる繊維シートの実物である。たとえば、ウレタンからなる座席本体の表面に、デニム地からなる繊維シートを張り付けて、車内の座席を構成する場合に、当該座席の画像をCGで作成する場合を考える。この場合、ウレタンからなる座席本体は、通常、CADを利用して設計されるので、この座席本体の三次元データはCADデータから流用することが可能である。一方、デニム地の実物は、ある程度の面積をもったサンプルが用意できれば十分である。
図5に示す手順は、ステップS1の実測段階と、ステップS2〜S9のコンピュータによる処理段階とによって構成される。前段の実測段階は、繊維シートとして提供されたデニム地の実物を用いて、当該繊維シートについての固有の曲率依存反射特性を実測する段階であり、後段のコンピュータによる処理段階は、座席本体の三次元データを用いたレンダリング処理を行う段階である。
本発明において、繊維シートの「曲率依存反射特性」とは、当該繊維シートを物体の曲面に張り付けたときに、当該曲面の曲率が反射光強度に及ぼす影響を含んだ反射特性であり、ステップS1の実測段階において測定される反射特性である。図4を参照して説明したとおり、曲率依存反射特性は、物体の曲面の曲率σの関数になるだけでなく、この曲率σに応じた湾曲方向(円柱モデルの場合は円周方向)と繊維シートの基準方向Wとのずれを示す曲率角度ξの関数にもなる。ここでは、この曲率σと曲率角度ξとを曲率パラメータと呼ぶことにする。
ここに示す実施例の場合、曲率σを、円柱の半径の逆数と定義している。これは、繊維シートを円柱側面に張り付けることを前提とした便宜上の定義であるが、もちろん、実際に繊維シートを張り付ける対象となる曲面は、必ずしも円柱側面でなくてもかまわない。一方、曲率角度ξは、繊維シートの基準方向と曲率に応じた湾曲方向との向きの関係(90°−ξ=ずれ角)を示す変数というべきものであり、本実施形態の場合、前述したとおり、円柱の中心軸Hを半径方向に投影することにより円柱側面上に得られる投影線H′と繊維シートの基準方向線Wとのなす角として定義される。曲率角度ξ=90°の場合は、図4(a) ,(b) に示すように、繊維シートの基準方向線Wが円柱の円周方向を向くように張り付けが行われていることを示し、湾曲方向と基準方向とのずれ角が0°である場合に対応する。一方、曲率角度ξ=0°の場合は、図4(c) に示すように、繊維シートの基準方向線Wが円柱の中心線Hと平行な方向を向くように張り付けが行われていることを示し、湾曲方向と基準方向とのずれ角が90°である場合に対応する。
図5に示すステップS1では、用意された実在のデニム地(繊維シート)を用いて、当該デニム地に固有の曲率依存反射特性を測定する処理が行われる。図6は、このような測定方法の具体的な一例を示す図である。この例では、まず、図6(a) に示すように、四角柱からなる物体71の側面に、デニム地の繊維シート61を張り付け、所定位置に配置した光源Gからの照明光Lを照射し、測定領域F1から視点Eに向けて反射してくる反射光Vの強度を測定している。同様の測定を、図6(b) に示すように、半径r1の円柱からなる物体72の側面に繊維シート61を張り付けた場合、図6(c) に示すように、半径r2の円柱からなる物体73の側面に繊維シート61を張り付けた場合についても繰り返し実行する。図6(b) の場合は、測定領域F2からの反射光Vが測定対象となり、図6(c) の場合は、測定領域F3からの反射光Vが測定対象となる。
いずれの場合も、光源Gや視点Eの位置は全く同じである。また、測定領域F1〜F3は、図の縦方向の寸法は微小で、いずれも紙面に垂直な方向に細長いスリット状の同一面積をもった領域であり、各領域の法線ベクトルは、いずれも同一方向(紙面左方向)であるものとする。このような条件で3通りの測定を行うと、光源G,視点E,測定領域F1〜F3がほぼ同一であり、また、張り付けた繊維シート61も同一であるので、測定結果に差が生じたとすれば、それは測定領域F1〜F3の曲率の差に起因したものと考えることができる。前述のように、円柱の半径の逆数に相当する値を曲率σと定義すると、図6(a) に示す四角柱からなる物体71の表面は平面であるため、半径無限大の円柱と考えることができ、曲率σ=0になる。これに対して、図6(b) に示す半径r1の円柱からなる物体72の表面の曲率はσ=1/r1となり、図6(c) に示す半径r2の円柱からなる物体73の表面の曲率はσ=1/r2となる(繊維シート61の厚みdを考慮した場合は、それぞれ1/(r1+d),1/(r2+d)になる)。
ここで、たとえば、図6(a) に示す測定系において実測された反射光Vの強度を基準値「1」としたときに、図6(b) に示す測定系において実測された反射光Vの強度が「0.9」であり、図6(c) に示す測定系において実測された反射光Vの強度が「0.8」であったとすれば、全く同一のデニム地を用いて、曲率パラメータ以外は全く同一の条件で測定しているにもかかわらず、それぞれ異なる反射特性が求まったことになる。こうして求まった反射特性は、曲率依存反射特性と言うことができる。
図6には、半径r1,r2の2種類の円柱に張り付けた場合の測定例を示してあるが、実際には、半径値が少しずつ異なる多種類の円柱に張り付けた場合の実測を行い、離散的ではあるが、より広範囲の曲率について、それぞれ曲率依存反射特性を求めるようにすればよい。また、前述したとおり、曲率依存反射特性は、曲率σだけでなく、曲率角度ξにも依存したものとなる。したがって、実際には、同一半径の円柱に対して、デニム地(繊維シート)の張り付け向きを少しずつ変えた測定を行い、曲率σと曲率角度ξとの関数として、曲率依存反射特性を実測しておくようにする。そのためには、予め、デニム地に基準方向線W(たとえば、縦糸の方向)を定義しておき、この基準方向線Wが様々な方向を向くように複数通りの向きで張り付けを行い、そのそれぞれについて曲率依存反射特性を実測すればよい。そうすれば、曲率依存反射特性を向きのファクターをもった個々の曲率ごとに求めることができる。
図7は、平面(σ=0)を含めた8通りの曲率σと、0°〜90°まで10°おきに定めた10通りの曲率角度ξとの組み合わせとして、合計80通りの曲率依存反射特性を実測したテーブルの一例(テーブル内の具体的な数値は図示省略)を示す図である。曲率σの単位としては、たとえば、「1/cm」を用いることができる。この場合、半径100cmの円柱側面の曲率は、σ=1/100ということになる。なお、光の各波長成分ごとに曲率依存反射特性が異なるような場合には、たとえば、三原色RGBの各波長成分ごとに、それぞれ別個の曲率依存反射特性を測定し、色成分Rに関する曲率依存反射特性、色成分Gに関する曲率依存反射特性、色成分Bに関する曲率依存反射特性をそれぞれ別個のテーブルとして求めればよい。
もちろん、こうして求めた曲率依存反射特性は、当該デニム地に固有の値であり、当該デニム地を張り付けた仮想物体についてのレンダリング処理にのみ利用することができる。なお、曲率依存反射特性は、必ずしも図7に示すようなテーブルの形式で求める必要はない。たとえば、何らかの関数によって近似可能な測定結果が得られた場合であれば、変数σおよび変数ξを引数として含む関数によって、曲率依存反射特性を定義することも可能である。なお、図7に示すテーブルにおいて、各欄に単一の反射特性値が得られるのは、測定対象となった繊維シートが絵柄を有していない無地の生地であり、どの位置についても同一の反射特性値が得られ、しかもその反射特性値は、入射照明光の方向や反射光の方向にも依存しない、という単純なモデルを想定した場合である。より複雑なモデルの場合、反射特性値は曲率パラメータσ,ξのみでは一義的に決定されず、繊維シート上に定義された二次元座標の座標値u,v、入射照明光の方向を示すパラメータθL,φL、反射光の方向を示すパラメータθV,φVなどのパラメータも考慮して決定されることになる。これについては§3で詳述する。
このように、図5のステップS1の処理は、実在の繊維シートを所定の曲率を有する実在の物体上に張り付け、所定の条件で照明を行い、繊維シート表面から得られる反射光を所定方向から観察する測定を、複数通りの曲率についてそれぞれ行うことにより、曲率が反射光強度に及ぼす影響を含んだ曲率依存反射特性を求める処理ということができる。
続くステップS2では、仮想物体の立体形状を示す三次元データを、コンピュータに入力する処理が行われる。具体的には、仮想物体の三次元データはXYZ三次元座標系上に入力される。ここで述べる実施例の場合、車両の座席本体の三次元データが仮想物体の立体形状を示すデータとして入力されることになる。前述したとおり、座席本体の三次元データは、設計に用いたCADデータを流用することにより、比較的容易に作成することができる。
通常、このような三次元データは、ポリゴンの集合体を示すデータもしくはパラメトリック曲面(関数式とパラメータ値で示される曲面)の集合体を示すデータによって構成される。また、このステップS2のデータ入力段階では、仮想物体に対する繊維シートの張り付け向きに関する情報を併せて入力するようにする。すなわち、座席本体にデニム地を張り付けるときに、座席本体の各面のどの方向に、デニム地の基準方向線Wを向けて張り付けるか、という情報を入力しておくようにする。
次に、ステップS3において、レンダリングを行うための投影条件の設定を行う。ここで言う投影条件とは、図3に示すように、仮想物体50の投影画像55を投影平面M上に得るための条件であり、照明条件、視点位置、投影平面という3要素からなる。ここで、照明条件としては、XYZ三次元座標系上において、光源の形状、大きさ、波長特性、位置が設定される。同様に、視点Eの位置および投影平面Mの位置もXYZ三次元座標系上に設定される。なお、図3に示すとおり、投影平面M上には、投影画像55を得るためのxy二次元座標系が定義される。
以上でレンダリング処理の準備は完了である。続くステップS4〜S8の処理は、実際のレンダリング処理を行う手順であり、投影平面M上のxy二次元座標系上に定義された1画素ごとに、それぞれ画素値を定義する処理を繰り返し実行することになる。まず、ステップS4において、仮想物体50の表面上に1つのサンプル点Qを定義する。具体的には、予め投影平面M上に所望の解像度で画素配列を定義しておき、視点Eと1つの画素Pの代表点(たとえば、中心位置)とを結ぶ線を仮想物体50上へと伸ばし、仮想物体表面との交点位置にサンプル点Qを定義すればよい。
続いて、ステップS5では、このサンプル点Qの位置について、仮想物体50の表面の曲率σを求める演算が行われる。仮想物体50が、ポリゴンの集合体からなる三次元データとして入力された場合であっても、パラメトリック曲面の集合体からなる三次元データとして入力された場合であっても、任意のサンプル点Qの近傍における物体表面の形状は定義されているので、その位置における曲率σを演算で求めることが可能である。ただ、ここで述べる実施例の場合、ステップS1の実測段階では、円柱状の実在物体に繊維シートを張り付けた測定を行ったため、曲率σを円柱の半径の逆数として定義することができたが、ステップS5における曲率演算の対象となる仮想物体50は、任意の曲面形状をもった車両の座席本体であるから、円柱における曲率の定義をそのまま利用することはできない。したがって、このステップS5を実行する上では、任意曲面上の任意の点における曲率の定義方法を予め定めておく必要がある。その具体的な方法については、§4で詳述する。
また、このステップS5では、曲率σを向きのファクターとともに求めるようにする。ここで、向きのファクターとは、予め定められた向きに繊維シートを張り付けたときに、繊維シートの基準方向線Wに対する曲率σに応じた湾曲方向を示すものであり、円柱の半径を用いて曲率σを定義した場合、前述したような曲率角度ξとして定義される量である。たとえば、図4(a) に示す円柱状の物体51の円柱側面上の任意の点については、曲率σ=1/r1、曲率角度ξ=90°なる値が定義されるが、図4(c) に示す円柱状の物体51の円柱側面上の任意の点については、曲率σ=1/r1、曲率角度ξ=0°なる値が定義されることになり、曲率σは同じでも、曲率角度ξは異なる。これは、繊維シート61の張り付ける向きが異なるためである。前述したとおり、ステップS2では、仮想物体に対する繊維シートの張り付け向きに関する情報(デニム地の基準方向線Wの向きを示す情報)が入力されるので、この情報を利用すれば、任意のサンプル点Qの位置において、曲率σとともに、曲率角度ξを演算することが可能である。もっとも、仮想物体50に対しては、円柱における曲率の定義をそのまま利用することはできないので、円柱における曲率角度の定義もそのまま利用することはできず、ステップS5を実行する上では、任意曲面上の任意の点における曲率角度の定義方法も予め定めておく必要がある。その具体的な方法についても、後の§4で述べることにする。
こうして、定義したサンプル点Qについて、曲率パラメータとして曲率σと曲率角度ξとが求まったら、続いて、ステップS6において、当該サンプル点Qからの反射光強度演算を行う。すなわち、ステップS3で設定した投影条件により、図3に示すようなシェーディングモデルが定義できるので、このモデルにおいて、サンプル点Qから視点Eに向かう反射光Vの強度を求める演算を行うことになる。具体的なシェーディングモデルのいくつかについては、§3で述べることにするが、本発明の特徴は、この反射光強度演算を、ステップS1で実測した曲率依存反射特性を用いて行うという点にある。
従来の一般的なレンダリングの手法を図3に示すモデルに適用した場合、サンプル点Qから視点Eに向かう反射光Vの強度に影響を与える因子は、照明光Lの強度、サンプル点Qの近傍における物体表面の傾き、繊維シート60を張り付けたときのサンプル点Qの位置にマッピングされる反射特性といった因子になるが、本発明の場合、この反射特性が、サンプル点Qの位置における曲率σおよび曲率角度ξに依存した特性になる。
たとえば、ステップS1の実測段階により、図7に示すような曲率依存反射特性がテーブルとして求められていたとすれば、ステップS6の反射光強度演算では、サンプル点Qの位置についての曲率パラメータσ,ξを用いてこのテーブルを引くことにより得られた特定の曲率依存反射特性を用いた演算が実行されることになる。具体的には、たとえば、ステップS5において、特定のサンプル点Qについて、曲率σ=1/50、曲率角度ξ=30°という具体的な値が求まったとすれば、図7のテーブルにおいて、曲率σ=1/50、曲率角度ξ=30°の欄に記載された曲率依存反射特性を求め、この曲率依存反射特性を用いて反射光強度演算を行えばよい。
なお、図7に示すテーブルにおいて、曲率σおよび曲率角度ξの値は離散値として与えられているので、ステップS5で演算された曲率σおよび曲率角度ξが、これら離散値の中間的な値をとる場合には、必要に応じて曲率依存反射特性に対する補間演算を行うようにするのが好ましい。
こうして、1つのサンプル点Qから視点Eに向かう反射光Vの強度を求める演算が完了したら、ステップS7において、1つの画素の定義が行われる。すなわち、このサンプル点Qからの反射光Vと投影平面Mとの交点位置に、当該反射光Vの強度に応じた画素値をもつ画素Pが定義される。カラー画像を取り扱う場合、前述したとおり、図7に示すような曲率依存反射特性のテーブルが三原色RGBのそれぞれについて別個に用意されているので、ステップS6における反射光Vの強度演算も各色成分ごとに行うことができる。したがって、ステップS7では、三原色RGBのそれぞれについて所定の画素値をもった画素を定義することができる。
こうして、ステップS4〜S7の手順を経ることにより、投影平面M上の1つの画素Pの画素値が定義できる。そこで、ステップS8から再びステップS4へと戻る処理を、必要な全画素が定義されるまで繰り返し実行する。そして、最後に、ステップS9において、多数のサンプル点について定義された多数の画素の集合により、仮想物体50の投影画像55を示す二次元投影データを生成する処理が行われ、必要に応じて、生成した二次元データがコンピュータから出力されることになる。
このように、図5に示す手順は、基本的には、従来の一般的なレンダリングの手法に従うものであり、図3に示すような一般的なシェーディングモデルを基礎とするものである。ただ、この図5のステップS1に示す曲率依存反射特性の測定手順は、本発明に固有の手順であり、ステップS5に示すサンプル点の曲率演算手順も本発明に固有の手順であり、更に、ステップS6の反射光強度演算において、ステップS1,S5の結果を利用し、曲率パラメータσ,ξを考慮した演算を行う点が、本発明の本質ともいうべき特徴的な手順になる。
既に述べたとおり、デニム、玉虫織り、タオル、ビロードといった生地は、表面の湾曲状態によってその見え方が変化する性質をもった繊維シートである。そのため、これらの生地を仮想物体の曲面に張り付けレンダリング処理を行うと、得られたCG画像上では、繊維の質感を十分に表現することができなかった。ところが、図5に示す本発明に係る手順でレンダリング処理を実施すると、従来の手法に比べて、繊維の質感がより忠実に表現された画像が得られるようになる。
<<< §3.様々なシェーディングモデルへの適用 >>>
ここでは、図5の流れ図のステップS6で行われる反射光強度演算の具体的な手法をいくつか述べることにする。従来から、このような反射光強度演算を行うために、種々のシェーディングモデルが提案されている。これらシェーディングモデルの多くは、仮想物体上のサンプル点(テクスチャをマッピングする場合は、マッピング後のサンプル点)に、それぞれ所定の反射特性を定義し、照明光Lと各部に定義された反射特性とに基づいて、反射光の強度を求める演算を行うものである。通常、1つのサンプル点に、複数の照明光が入射するような照明条件(複数の光源を用いた照明条件)が設定されるので、個々の光源からの入射照明光に基づいて発生する複数の反射光強度の総和として、当該サンプル点から視点へ向かう反射光の強度を演算することになる。
本発明の基本思想は、新たなシェーディングモデルの提案にあるわけではなく、1つのサンプル点についての反射光強度演算を行う際に、当該サンプル点における物体表面の曲率を考慮した演算を行う、という点にある。したがって、本発明を実施する上で、どのようなシェーディングモデルを用いるかは重要ではなく、実際、様々なシェーディングモデルに本発明を適用することが可能である。以下、従来から用いられている一般的なシェーディングモデルに本発明を適用した具体例をいくつか述べることにする。
(1) 単純なテクスチャマッピングモデル
このモデルは、テクスチャとなる二次元画像を、スキャナ装置やデジタルカメラなどを用いて入力し、反射率分布を示す反射特性データとして利用する単純なモデルである。このモデルに本発明を適用するのであれば、図5のステップS1において、実物として提供されたデニム地などを種々の曲率の曲面に張りつけ、その平面画像をデジタルカメラなどを用いて取り込めばよい。取り込んだデニム地の画像は、uv二次元座標系上に定義された絵柄データT(u,v)となり、繊維シートの反射率分布を示す反射特性データとして用いられる。ただし、絵柄データT(u,v)は、曲率パラメータσ,ξにも依存したデータということになり、座標値u,vで示される位置の反射特性は、u,v,σ,ξの関数として与えられる。ステップS6の反射光強度演算段階では、サンプル点Qにおける入射照明光の強度をIiとしたときに、反射光強度Iを、反射係数kを用いて、
I=k・Ii
なる式で求めることができる。ここで、従来の一般的なテクスチャマッピングモデルの場合、反射係数kは、座標値u,vの関数として求められるだけであったが、本発明の場合、反射係数kは、座標値u,vおよび曲率パラメータσ,ξの関数として与えられることになる。
(2) 古典的な拡散反射モデル
拡散反射モデルは、古くからレンダリング処理に利用されてきたモデルであり、サンプル点Qにおける入射照明光の強度をIi、仮想物体表面上のサンプル点Q位置に立てた法線nと入射照明光とのなす角をα、拡散反射係数をkdとしたときに、反射光強度Iを、
I=kd・Ii・cos α
なる式で求めるモデルである。ここで、古典的な拡散反射モデルの場合、拡散反射係数kdは、定数として与えられる所定の反射特性データによって定められることになるが、本発明の場合、拡散反射係数kdは、図5のステップS1で行った実測結果に基づいて、曲率パラメータσ,ξを考慮した値として決定されることになる。
なお、古典的な拡散反射モデルには、テクスチャマッピングの概念がないので、これを本発明にそのまま適用した場合、繊維シートの縦糸や横糸などから構成されるテクスチャ模様は表現されないことになる。もちろん、繊維シートの模様を再現する必要がない場合には、それでもかまわないが、実用上は、この古典的な拡散反射モデルに更にテクスチャマッピングモデルを組み合わせたモデルを用いるのが好ましい。この場合は、上述した単純なテクスチャマッピングモデルと同様に、実測結果に基づいて、座標値u,vおよび曲率パラメータσ,ξの関数として拡散反射係数kdを決定すればよい。
(3) Phongの鏡面反射モデル
Phongの鏡面反射モデルは、鏡面反射の代表的なシェーディングモデルであり、サンプル点Qにおける入射照明光の強度をIi、仮想物体表面上のサンプル点Q位置に立てた法線nと入射照明光とのなす角をα、この角度αに依存した反射係数をk(α)、鏡面反射の鋭さを示すパラメータをβ、サンプル点Qにおける鏡面反射光の射出方向と視点方向とのなす角をγとしたときに、反射光強度Iを、
I=k(α)・Ii・cos βγ
なる式で求めるモデルである。ここで、従来のPhongの鏡面反射モデルの場合、反射係数k(α)およびパラメータβは定数として与えられる所定の反射特性データに基づいて定められるが、本発明の場合、反射係数k(α)およびβを、実測結果に基づいて、曲率パラメータσ,ξの関数として決定することになる。
もっとも、実用上は、角度αに依存した反射係数k(α)を用いる代わりに、角度αに依存しない反射係数ksを用い、反射光強度Iを、
I=ks・Ii・cos βγ
なる式で求める場合も少なくない。この場合は、係数ksおよびβを、曲率パラメータσ,ξの関数として決定するようにすればよい。
なお、このPhongの鏡面反射モデルにも、テクスチャマッピングの概念がないので、これを本発明にそのまま適用した場合、繊維シートの縦糸や横糸などから構成されるテクスチャ模様は表現されないので、必要なら、上述の単純なテクスチャマッピングモデルを組み合わせて用い、反射係数k(α)(または係数ks)およびβを、座標値u,vおよび曲率パラメータσ,ξの関数として決定すればよい。
(4) BRDFモデル
上述した古典的な拡散反射モデルやPhongの鏡面反射モデルでは、サンプル点Qの反射特性が、照明光の入射角や反射光の反射角に依存しないものとして取り扱っているが、絹のような布地やブラシ仕上げの金属のように、異方性反射を表現する必要がある場合には、反射特性を、照明光の入射角や反射光の反射角に依存する量として取り扱うのが好ましい。このような取り扱いを行うモデルとして、BRDF(Bi-directional Reflection Distribution Function)と呼ばれるモデルが提案されている。
図8は、このBRDFモデルの原理を説明するための斜視図である。図示のとおり、仮想物体表面上のサンプル点Qの位置に法線nを立て、サンプル点Qを含み、法線nに直交する直交平面Sを定義する。そして、法線nと入射照明光Lとのなす角をθL、直交平面S上への入射照明光Lの投影像L′とこの直交平面S上のサンプル点Qを通る所定の基準線ζとのなす角度をφLとし、入射照明光Lの向きを角度θLおよび角度φLの組み合わせで定義する。同様に、法線nと反射光Vとのなす角をθV、直交平面S上への反射光Vの投影像V′と基準線ζとのなす角度をφVとし、反射光Vの向きを角度θVおよび角度φVの組み合わせで定義する。そして、サンプル点Qにおける入射照明光Lの強度をIiとしたとき、サンプル点Qからの反射光Vの強度Iを、θL,φL,θV,φVの関数として与えられる反射係数kbを用いて、
I=kb・Ii
なる式で求めるのである。このように、BRDFモデルの特徴は、反射係数kbを、入射照明光Lの向きを示すパラメータ「θL,φL」および反射光Vの向きを示すパラメータ「θV,φV」の関数として与える点にある。
このBRDFモデルを本発明に適用する場合は、反射係数kbを、θL,φL,θV,φVおよび曲率パラメータσ,ξの関数として与えるようにすればよい。すなわち、このBRDFモデルが、サンプル点Qからの反射光Vの強度Iを、BRDFなる関数を用いて、
I=BRDF・Ii
なる形で定義するモデルであると考えると、従来のBRDFモデルの場合、関数BRDFを、4つの変数θL,φL,θV,φVをもつ関数として定義し、
I=BRDF(θL,φL,θV,φV)・Ii
なる形式の式で反射光強度Iを求めていたのに対し、本発明に係るモデルの場合、関数BRDFを、6つの変数θL,φL,θV,φV,σ,ξをもつ関数として定義し、
I=BRDF(θL,φL,θV,φV,σ,ξ)・Ii
なる形式の式で反射光強度Iを求めればよいことになる。
(5) BTFモデル
上述したBRDFモデルには、テクスチャマッピングの概念がないので、これを本発明にそのまま適用した場合、繊維シートの縦糸や横糸などから構成されるテクスチャ模様は表現されないことになる。ここで述べるBTF(Bi-directional Texture Function)は、いわば上述したBRDFモデルに、テクスチャマッピングモデルを組み合わせたモデルというべきものである。したがって、このBTFモデルを利用するには、前述した単純なテクスチャマッピングモデルと同様に、uv二次元座標系上の座標値u,vをパラメータとして追加し、反射特性を、θL,φL,θV,φV,u,v,σ,ξなる8個のパラメータによって決定される値として定義しておけばよい。
一方、反射光強度演算段階では、上述したBRDFモデルと同様に、サンプル点Qにおける入射照明光Lの強度をIiとしたとき、サンプル点Qからの反射光Vの強度Iを、反射係数kbを用いて、
I=kb・Ii
なる式で求めることになる。ただし、このBTFモデルの場合、反射係数kbは、θL,φL,θV,φV,u,v,σ,ξの関数として与えられることになる。
別言すれば、従来のBTFモデルが、サンプル点Qからの反射光Vの強度Iを、BTFなる関数を用いて、
I=BTF・Ii
なる形で定義するモデルであると考えると、従来のBTFモデルの場合、関数BTFを、6つの変数θL,φL,θV,φV,u,vをもつ関数として定義し、
I=BTF(θL,φL,θV,φV,u,v)・Ii
なる形式の式で反射光強度Iを求めていたのに対し、本発明に係るモデルの場合、関数BTFを、8つの変数θL,φL,θV,φV,u,v,σ,ξをもつ関数として定義し、
I=BTF(θL,φL,θV,φV,u,v,σ,ξ)・Ii
なる形式の式で反射光強度Iを求めればよいことになる。
(6) 曲率依存反射特性の測定
上述したBRDFモデルを本発明に適用する場合、ステップS1における曲率依存反射特性測定段階で、照明条件および観察方向を変化させることにより、角度θL,φLで定義される入射照明光Lの向きおよび角度θV,φVで定義される反射光Vの向きを複数通りに変えた測定を行い、更に、曲率σおよび曲率角度ξを様々に変えた測定を行い、曲率依存反射特性を、σ,ξ,θL,φL,θV,φVの組み合わせごとにそれぞれ求めるようにすればよい。すなわち、曲率σおよび曲率角度ξを加えた6つの因子「σ,ξ,θL,φL,θV,φV」の組み合わせごとに、所定の曲率依存反射特性の値を求めておくようにすればよい。具体的には、図7に示すテーブルが2つの変数σおよびξについての二次元のテーブルであるのに対して、6つの変数「σ,ξ,θL,φL,θV,φV」についての六次元のテーブルが作成されることになる。BTFモデルの場合は、更に、座標値u,vを加えた8つの変数「σ,ξ,θL,φL,θV,φV,u,v」についての八次元のテーブルが作成される。
そうすれば、ステップS6の反射光強度演算段階では、BRDFモデルの場合、演算対象となるサンプル点QについてステップS5で求められた曲率σおよび曲率角度ξと、入射照明光Lの向きを示す角度θL,φLおよび反射光Vの向きを示す角度θV,φVとの組み合わせに対応した曲率依存反射特性を、六次元のテーブルを引く処理によって求めることが可能になる。BTFモデルの場合は、更に、座標値u,vを加えた八次元のテーブルを引く処理を行えばよい。
なお、ステップS1において、角度θL,φL,θV,φVをそれぞれ変えることにより、曲率依存反射特性を実測する作業を行うためには、測定対象に対して、照明光Lの照射方向を角度θL,φLという2自由度で変化させることが可能な光源装置を用意するとともに、反射光Vの観察方向を角度θV,φVという2自由度で変化させることが可能な撮影装置を用意すればよい。このような機能をもった光源装置や撮影装置は、既に公知の装置であるため、ここでは詳しい説明は省略する。
(7) 各原色ごとの取り扱い
既に述べたとおり、カラー画像を作成する場合には、1つのサンプル点Qから発生する反射光Lを、各原色成分ごとに別個に取り扱う処理が行われる。上述した各モデルは、このような各色成分を考慮しない簡単なモデルであるが、これらのモデルをカラー画像作成に適用するのであれば、個々の式を、たとえば三原色RGBのそれぞれについて用意しておけばよい。
<<< §4.ポリゴンを用いた具体的実施例 >>>
これまで述べてきたように、本発明では、仮想物体上のサンプル点Qについて、曲率σおよび曲率角度ξを求めることが非常に重要である。ここで、曲率σおよび曲率角度ξは、図4に示すような円柱状のモデルを用いれば、簡単に定義することができる。たとえば、図4(a) に示す例の場合、円柱状の物体51の半径r1の逆数を曲率σと定義し、円柱の中心軸Hを半径方向に投影することにより円柱側面上に得られる投影線H′と繊維シート61の基準方向線Wとのなす角ξを当該曲率σについての曲率角度と定義している。
したがって、図5のステップS1の実測段階では、図6に示すように、円柱形状をもった実在の物体72,73の円柱側面に実在の繊維シート61を所定の向きに張り付ければ、曲率σおよび曲率角度ξを容易に定義することが可能であり、個々の曲率σおよび個々の曲率角度ξの各組み合わせに対応する曲率依存反射特性をそれぞれ実測することができる。
しかしながら、図5のステップS5では、任意形状をもった仮想物体上のサンプル点Qについて、曲率σおよび曲率角度ξを求める必要があるので、実際には、曲率σおよび曲率角度ξの定義に、円柱モデルをそのまま利用することはできない。もっとも、任意曲面についての曲率を定義する手法は種々の方法が知られているので、ステップS5では、これら公知の手法のいずれかを利用して、何らかの形で曲率σおよび曲率角度ξを定義することができれば問題はない。
ここでは、仮想物体の立体形状を示す三次元データが、微小なポリゴン(多角形)の集合体として入力された場合について、ステップS5における曲率σおよび曲率角度ξを定義する具体的な方法の一例を述べることにする。特に、ここでは、ポリゴンとして三角形を用いた具体的な例を説明する。すなわち、以下に示す例では、仮想物体の表面形状は、微小な三角形の集合体として表現されていることになり、仮想物体の曲面は、実際には、多数の微小三角形(平面図形)の集合体から構成されることになる。
いま、図9に示すように、仮想物体上の1つのサンプル点Qが、1つの三角形Tq上の点であった場合を考える。ここでは、説明の便宜上、サンプル点Qを含む三角形Tqを、着目三角形と呼ぶことにする。また、着目三角形Tqの3辺を図示のとおり、辺A,辺B,辺Cと呼ぶことにし、辺Aを境界として隣接している三角形を隣接三角形Ta、辺Bを境界として隣接している三角形を隣接三角形Tb、辺Cを境界として隣接している三角形を隣接三角形Tcと呼ぶことにする。更に、着目三角形Tqの3つの頂点を、図示のとおりそれぞれ頂点D1,D2,D3とし、隣接三角形Ta,Tb,Tcのもう1つの頂点を、それぞれ頂点D4,D5,D6とする。
なお、図9では、すべての三角形が同一平面上に描かれているが、実際には、頂点D1,D2,D3は紙面上の点であるが、頂点D4,D5,D6は紙面外の点(紙面の上方もしくは紙面の下方に位置する点)であるものとする。別言すれば、着目三角形Tqは紙面上の三角形であるが、隣接三角形Ta,Tb,Tcは、いずれも紙面上にはない三角形ということになる。結局、図9には、4つの三角形Tq,Ta,Tb,Tcからなる図形が描かれているが(もちろん、実際には、三角形Ta,Tb,Tcの外側にも、多数の別な三角形が連続している)、この図形は、辺A,B,Cを折り目として、互いに所定角度をなすように折り曲げられていることになる。
ステップS5で求めるべき値は、サンプル点Qについての曲率σおよび曲率角度ξであるが、ここではまず、着目三角形Tqについての曲率σなるものを定義することにする。もっとも、着目三角形Tq自身は、単なる平面図形であり、曲面を形成するものではない。ここに示す実施例の場合、仮想物体の曲面は、微小な三角形の集合体によって擬似的に表現されているにすぎない。したがって、着目三角形Tqについての曲率σなるものを定義するとすれば、それは3つの隣接三角形Ta,Tb,Tcとの間の形成角に応じた値として定義されねばならない。
そこで、辺Aを境界線として、着目三角形Tqと隣接三角形Taとが形成する角を形成角ωaとし、辺Bを境界線として、着目三角形Tqと隣接三角形Tbとが形成する角を形成角ωbとし、辺Cを境界線として、着目三角形Tqと隣接三角形Tcとが形成する角を形成角ωcとする。そして、着目三角形Tqの隣接三角形Taとの関係における曲率を「辺Aに関する曲率σa」と定義し、着目三角形Tqの隣接三角形Tbとの関係における曲率を「辺Bに関する曲率σb」と定義し、着目三角形Tqの隣接三角形Tcとの関係における曲率を「辺Cに関する曲率σc」と定義することにする。この場合、辺Aに関する曲率σaを形成角ωaに基づいて定まる値とし、辺Bに関する曲率σbを形成角ωbに基づいて定まる値とし、辺Cに関する曲率σcを形成角ωcに基づいて定まる値とすれば、それぞれ隣接三角形との関係における曲率として意味のある値になる。
具体的には、各形成角が180°に近くなればなるほど、曲率は小さくなるように設定すればよい。たとえば、仮に頂点D4が図の紙面上の点であったとすると、着目三角形Tqと隣接三角形Taは同一紙面上の三角形ということになり、両者の形成角ωa=180°ということになる。この場合、着目三角形Tqから隣接三角形Taへと連なる面は完全な平面であり、辺Aに関する曲率σaは、最小値0に設定すればよいことになる。
このように、各辺に関する曲率を、当該辺を挟んだ2つの三角形の形成角に応じて、当該形成角が180°に近くなればなるほど小さな曲率となるように設定する、ということが、合理的な曲率の設定法であることは、直感的に理解できよう。ただ、本願発明者は、曲率の定義を、両三角形の形成角のみに基づいて定義するのではなく、両三角形の大きさというファクターを入れて定義すると、より好ましいことに気がついた。
仮想物体を表現する微小三角形は、仮想物体全体の大きさから比べると、いずれも非常に小さな図形である。しかし、個々の三角形同士を相互に比較すると、その大きさは様々であり、面積の大きな三角形もあれば、面積の小さな三角形もある。そうすると、面積の大きな三角形については、平面が広い領域にわたって連続しているのであるから、小さな三角形に比べて、より小さな曲率を定義した方が理にかなっている。逆に、面積の小さな三角形については、平面が連続する領域が狭いのであるから、大きな三角形に比べて、より大きな曲率を定義した方が理にかなっている。
そこで、各辺に関する曲率を、着目三角形自身の大きさ(面積)および隣接三角形の大きさ(面積)に依存して決定するようにし、これらの大きさが大きくなればなるほど小さな曲率が定義されるような設定を行えばよいことがわかる。具体的には、辺Aに関する曲率としては、形成角ωaが180°に近くなればなるほど小さくなり、かつ、着目三角形Tqおよび隣接三角形Taの大きさが大きくなればなるほど小さくなるような曲率σaを定義し、辺Bに関する曲率としては、形成角ωbが180°に近くなればなるほど小さくなり、かつ、着目三角形Tqおよび隣接三角形Tbの大きさが大きくなればなるほど小さくなるような曲率σbを定義し、辺Cに関する曲率としては、形成角ωcが180°に近くなればなるほど小さくなり、かつ、着目三角形Tqおよび隣接三角形Tcの大きさが大きくなればなるほど小さくなるような曲率σcを定義すればよい。
以上、各辺に関する曲率を定義するための基本概念を述べたが、このような基本概念に基づいて、実際に各辺に関する曲率を定義するには、たとえば、次のような方法をとることができる。ここでは、図9において、辺Aに関する曲率σaの具体的な求め方の一例を説明しよう。辺Aに関する曲率σaとは、前述したとおり、着目三角形Tqの隣接三角形Taとの関係における曲率というべきものであり、上述した基本概念に従えば、形成角ωaが180°に近くなればなるほど小さくなり、かつ、着目三角形Tqおよび隣接三角形Taの大きさが大きくなればなるほど小さくなるような値として定義すればよい。
そこで、まず、図9に示されているとおり、着目三角形Tqの辺Aに対する対角D3から辺Aに対して垂線を下ろし、この垂線の長さhqaを求める。同様に、隣接三角形Taの辺Aに対する対角D4から辺Aに対して垂線を下ろし、この垂線の長さhaを求める。こうして求めた垂線の長さhqa,haは、それぞれ着目三角形Tqおよび隣接三角形Taの大きさにある程度関連した量になり、各三角形が大きくなればなるほど、これら垂線の長さも長くなる傾向にある。
次に、こうして求めた垂線の長さhqa,haと、着目三角形Tqと隣接三角形Taとの間の形成角ωaと、を用いて、図10に示すような作図を行う。すなわち、平面上に、「長さhqaをもった線分」と「長さhaをもった線分」とをそれぞれの一端が接続点Jaで接続され、かつ、この接続点Jaにおける両線分のなす角が形成角ωaとなるように配置する。続いて、この図10上において、「長さhqaをもった線分」の垂直二等分線と「長さhaをもった線分」の垂直二等分線との交点Oaを求め、求めた交点Oaと接続点Jaとの距離Raを図示のように求める。そして、この距離Raの逆数を、辺Aに関する曲率σaと定義するのである。
図10において、距離Raは、「長さhqaをもった線分」と「長さhaをもった線分」とを滑らかな円弧で近似した場合の半径に相当するものである。ここで、もし形成角ωaが180°になると、図に破線で示す2本の垂直二等分線は平行になってしまうので、交点Oaの位置は無限遠となり、距離Ra=無限大となる。その結果、曲率σa=0になる。形成角ωaが小さくなればなるほど、交点Oaは接続点Jaに接近し、距離Raは小さくなるので、曲率σaは大きくなる。結局、曲率σaは、形成角ωaが180°に近くなればなるほど小さくなる、という上述の基本概念に合致した値になる。
一方、長さhqaや長さhaがより長くなると、交点Oaは接続点Jaからより離れることになり、距離Raは大きくなり、曲率σaは小さくなることが、図10から容易に理解できよう。前述したとおり、長さhqaおよび長さhaは、それぞれ着目三角形Tq,隣接三角形Taの大きさにある程度関連した量になるので、結局、曲率σaは、着目三角形Tqおよび隣接三角形Taの大きさが大きくなればなるほど小さくなる、という上述の基本概念に合致した値になる。
以上のことから、着目三角形Tqの辺Aに対する対角D3から辺Aに下ろした垂線の長さhqaと、隣接三角形Taの辺Aに対する対角D4から辺Aに下ろした垂線の長さhaと、を求め、平面上に、「長さhqaをもった線分」と「長さhaをもった線分」とを、それぞれの一端が接続点Jaで接続され、かつ、接続点Jaにおける両線分のなす角が形成角ωaとなるように配置し、「長さhqaをもった線分」の垂直二等分線と「長さhaをもった線分」の垂直二等分線との交点Oaと接続点Jaとの距離Raの逆数を、辺Aに関する曲率σaと定義すれば、上述した基本概念に合致するような曲率σaの定義を行うことができる。
同様に、辺Bに関する曲率σbを定義するには、図示は省略するが、次のような作図を行えばよい。すなわち、着目三角形Tqの辺Bに対する対角D2から辺Bに下ろした垂線の長さhqbと、隣接三角形Tbの辺Bに対する対角D5から辺Bに下ろした垂線の長さhbと、を求め、平面上に、「長さhqbをもった線分」と「長さhbをもった線分」とを、それぞれの一端が接続点Jbで接続され、かつ、接続点Jbにおける両線分のなす角が形成角ωbとなるように配置し、「長さhqbをもった線分」の垂直二等分線と「長さhbをもった線分」の垂直二等分線との交点Obと接続点Jbとの距離Rbの逆数を、辺Bに関する曲率σbと定義すればよい。
また、辺Cに関する曲率σcを定義するには、同様に、次のような作図を行えばよい。まず、着目三角形Tqの辺Cに対する対角D1から辺Cに下ろした垂線の長さhqcと、隣接三角形Tcの辺Cに対する対角D6から辺Cに下ろした垂線の長さhcと、を求め、平面上に、「長さhqcをもった線分」と「長さhcをもった線分」とを、それぞれの一端が接続点Jcで接続され、かつ、接続点Jcにおける両線分のなす角が形成角ωcとなるように配置し、「長さhqcをもった線分」の垂直二等分線と「長さhcをもった線分」の垂直二等分線との交点Ocと接続点Jcとの距離Rcの逆数を、辺Cに関する曲率σcと定義すればよい。
さて、以上述べた手順により、着目三角形Tqについて、辺Aに関する曲率σa,辺Bに関する曲率σb,辺Cに関する曲率σcという3通りの曲率を定義することができた。しかしながら、図5のステップS5で求める必要がある曲率は、この着目三角形Tq内に位置するサンプル点Qについての曲率σQである。そこで、このサンプル点Qについての曲率σQを、3つの曲率σa,σb,σcを合成して求めるようにする。この合成を行う上での基本概念は、サンプル点Qと、各辺A,B,Cとの距離に応じて、曲率σa,σb,σcを按分する、という考え方である。すなわち、サンプル点Qと辺Aとの距離が短ければ短いほど曲率σaの影響が大きくなり、サンプル点Qと辺Bとの距離が短ければ短いほど曲率σbの影響が大きくなり、サンプル点Qと辺Cとの距離が短ければ短いほど曲率σcの影響が大きくなるように、曲率σa,σb,σcを合成して、サンプル点Qについての曲率σQを求めるようにすれば、理にかなった方法で曲率σQを決定できる。
このような基本概念に基づいて、曲率σQを求める第1の方法を、図11を参照して説明する。図11に示されている各三角形は、図9に示されている各三角形と全く同じものであり、着目三角形Tq内に、サンプル点Qが位置している。そこで、まず、着目三角形Tqの辺Aに対する対角D3とサンプル点Qとの距離Laを求め、着目三角形Tqの辺Bに対する対角D2とサンプル点Qとの距離をLbを求め、着目三角形Tqの辺Cに対する対角D1とサンプル点Qとの距離をLcを求める。そして、サンプル点Qについての曲率σQを、
σQ=(La・σa+Lb・σb+Lc・σc)/(La+Lb+Lc)
なる演算によって定義するのである。このような方法で曲率σQを定義すれば、上述の基本概念に合致した方法での定義が可能になる。
一方、図12は、上述の基本概念に基づいて曲率σQを求める第2の方法を示す図である。この図においても、各三角形は、図9に示されている各三角形と全く同じものであり、着目三角形Tq内に、サンプル点Qが位置している。この第2の方法では、まず、サンプル点Qから辺Aに垂線を下ろし、その足をaとする。同様に、サンプル点Qから辺Bに垂線を下ろし、その足をbとし、サンプル点Qから辺Cに垂線を下ろし、その足をcとする。そして、着目三角形Tqを、これら3本の垂線(図では破線で示す)によって、3つの領域Ua,Ub,Ucに分割する。ここで、領域Uaは、辺Aに対する対角D3を含む領域であり、領域Ubは、辺Bに対する対角D2を含む領域であり、領域Ucは、辺Cに対する対角D1を含む領域である。ここで、各領域Ua,Ub,Ucの面積を、それぞれ同じ記号Ua,Ub,Ucで示すことにし、サンプル点Qについての曲率σQを、
σQ=(Ua・σa+Ub・σb+Uc・σc)/(Ua+Ub+Uc)
なる演算によって定義するのである。このような方法で曲率σQを定義すれば、やはり上述の基本概念に合致した方法での定義が可能になる。
以上、仮想物体の立体形状を示す三次元データが、微小な三角形の集合体として入力された場合について、任意のサンプル点Qにおける曲率σQを定義する具体的な方法を述べた。この方法によれば、円柱曲面に限定されることなく、任意の曲面をもった仮想物体上の任意のサンプル点Qの位置における曲率σQを決定することができる。
続いて、任意の曲面をもった仮想物体上の任意のサンプル点Qの位置における曲率角度ξQを求める方法について述べる。そもそも曲率角度ξとは、サンプル点Qの位置に所定の曲率σQが定義されている場合に、この曲率σQに応じた湾曲方向と繊維シート上の基準方向線とのずれを示す要素である。たとえば、図4に示す円柱曲面の場合、基準方向線Wと円柱の中心軸Hの投影線H′とのなす角度として、曲率角度ξを定義しているが、このような定義を行った場合、曲率角度ξ=90°となる方向が、曲率σに応じた湾曲方向(すなわち、円周方向)ということになる。
図4(a) に示す例も、図4(c) に示す例も、いずれも曲率の値はσ=1/r1と同一である。しかしながら、曲率角度ξは、前者の場合は90°、後者の場合は0°となり、両者は大きく相違する。これは、繊維シート61の基準方向線Wの方向に着目したときに、前者では、基準方向線Wが、1/r1なる曲率に応じた湾曲方向(円周方向)を向くように張り付けられているのに対して、後者では、基準方向線Wが、1/r1なる曲率に応じた湾曲方向(円周方向)に対して90°をなす方向(すなわち、中心軸Hに平行な方向)を向くように張り付けられていることを示している。そして、曲率角度ξ=90°となる前者の場合、基準方向線Wの向きが、曲率σ=1/r1に応じた湾曲方向(円周方向)に一致することになる。このように、曲率角度ξは、曲率に応じた湾曲方向に対する基準方向線Wのずれ量を示す角度に相当するパラメータであり、90°〜0°の範囲をとり、ξ=90°の場合は、ずれ量がないこと示し、ξ=0°の場合は、ずれ量が最大であることを示すことになる。
図5のステップS1においても、このような円柱曲面を前提とした曲率σおよび曲率角度ξの定義を行っているので、ステップS5においても、この円柱曲面を前提とした定義に近い方法で、曲率角度ξを定義する必要がある。そこで、以下、仮想物体の立体形状を示す三次元データが、微小な三角形の集合体として入力された場合について、任意のサンプル点Qの位置における曲率角度ξQを定義する具体的な方法の一例を述べる。
まず、図13に示すように、サンプル点Qを含む着目三角形Tqと、これに隣接する3つの隣接三角形Ta,Tb,Tcを考える。これらの各三角形は、図9に示されている各三角形と全く同じものである。また、ステップS2では、前述したとおり、仮想物体に対する繊維シートの張り付け向きに関する情報も入力されているので、ステップS5の段階では、図示のとおり、繊維シートの基準方向線Wの向きを定義することができる。ここでは、この基準方向線Wを、着目三角形Tqと同一平面上の直線として定義している。ステップS2において、基準方向線Wが、XYZ三次元座標系上の直線として入力された場合には、これを着目三角形Tqを含む平面上にこの平面の法線方向に投影することにより得られる投影像を、図示する基準方向線Wとして定義すればよい。また、テクスチャマッピングやBTFが適用されている場合には、既にポリゴンに与えられている二次元座標系(u,v)を基準として、そのポリゴン内のたとえばv軸方向を基準方向線Wとして利用すればよい。
続いて、図13に示すように、この基準方向線Wと着目三角形Tqの辺A,辺B,辺Cのそれぞれとのなす角(交差しない場合には、各辺の延長線とのなす角)ξa,ξb,ξcを、それぞれ各辺A,B,Cに関する曲率角度として求める。そして、これら各辺に関する曲率角度ξa,ξb,ξcを合成することにより、サンプル点Qについての曲率角度ξQを求めるようにすればよい。この合成を行う上での基本概念は、サンプル点Qと、各辺A,B,Cとの距離に応じて、曲率角度ξa,ξb,ξcを按分する、という考え方である。すなわち、サンプル点Qと辺Aとの距離が短ければ短いほど曲率角度ξaの影響が大きくなり、サンプル点Qと辺Bとの距離が短ければ短いほど曲率角度ξbの影響が大きくなり、サンプル点Qと辺Cとの距離が短ければ短いほど曲率角度ξcの影響が大きくなるように、曲率角度ξa,ξb,ξcを合成することにより、サンプル点Qについての曲率角度ξQを決定すればよい。
このような基本概念に基づいて、曲率角度ξQを求める第1の方法を、図14を参照して説明する。図14に示されている各三角形は、図13に示されている各三角形と全く同じものであり、着目三角形Tq内に、サンプル点Qが位置している。そこで、まず、着目三角形Tqの辺Aに対する対角D3とサンプル点Qとの距離Laを求め、着目三角形Tqの辺Bに対する対角D2とサンプル点Qとの距離をLbを求め、着目三角形Tqの辺Cに対する対角D1とサンプル点Qとの距離をLcを求める。そして、サンプル点Qについての曲率角度ξQを、
ξQ=(La・ξa+Lb・ξb+Lc・ξc)/(La+Lb+Lc)
なる演算によって定義するのである。このような方法で曲率角度ξQを定義すれば、上述の基本概念に合致した方法での定義が可能になる。この方法の原理は、図11を参照して説明した曲率σQを定義する方法の原理と共通するものである。
一方、曲率角度ξQを求める第2の方法として、図12を参照して説明した曲率σQを定義する方法の原理を利用した方法も可能である。すなわち、図12に示すように、サンプル点Qから各辺A,B,Cに垂線を下ろし、着目三角形Tqを、これら3本の垂線によって、3つの領域Ua,Ub,Ucに分割する。そして、これら3つの領域Ua,Ub,Ucの面積を、それぞれ同じ記号Ua,Ub,Ucで示すことにし、サンプル点Qについての曲率角度ξQを、
ξQ=(Ua・ξa+Ub・ξb+Uc・ξc)/(Ua+Ub+Uc)
なる演算によって定義するのである。このような方法で曲率角度ξQを定義すれば、やはり上述の基本概念に合致した方法での定義が可能になる。
以上のとおり、仮想物体の立体形状を示す三次元データが、微小な三角形の集合体として入力された場合は、上述した具体的手法を適用することにより、任意のサンプル点Qにおける曲率σQおよび曲率角度ξQを定義することが可能である。しかしながら、ポリゴンを用いて立体形状を表現する場合、必ずしも三角形が用いられるとは限らず、四角形や六角形など、任意の多角形の集合からなる三次元データが用いられる場合も少なくない。このように、仮想物体が、任意の多角形の集合からなる三次元データとして与えられた場合であっても、多角形は必ず複数の三角形に分割することができるので、上述した三角形についての実施例は、ポリゴンを用いて立体形状が表現されている場合に広く適用可能である。
ただ、上述した三角形の集合からなる三次元データが用いられた場合についての基本原理は、任意の多角形の集合からなる三次元データが用いられた場合にも、多角形を複数の三角形に分割することなしに、多角形のままでも適用可能である。すなわち、この基本原理を一般的なJ角形に拡張した場合は、次のような方法で、サンプル点Qについての曲率σQおよび曲率角度ξQを求めるようにすればよい。
まず、曲率を求める対象となるサンプル点Qを含むJ角形(J個の辺を有する多角形)を着目多角形として抽出する。そして、この着目多角形について、当該着目多角形とこれに隣接する複数J個の隣接多角形との間の形成角ω1〜ωJをそれぞれ求める。続いて、第j番目(j=1〜J)の隣接多角形との間の境界を形成する第j番目の辺に関する曲率として、第j番目の形成角ωjが180°に近くなればなるほど小さくなり、かつ、着目多角形および第j番目の隣接多角形の大きさが大きくなればなるほど小さくなるような曲率σjを定義し、第1番目の辺〜第J番目の辺についてそれぞれ曲率σ1〜σJを定義する。最後に、このサンプル点Qと第j番目の辺との距離が短ければ短いほど、第j番目の曲率σjの影響が大きくなるように、J個の曲率σ1〜σJを合成することにより、サンプル点Qについての曲率σQを求めるようにすればよい。
一方、曲率角度ξについては、基準方向線Wと着目多角形の第1番目の辺〜第J番目の辺のそれぞれとのなす角ξ1〜ξJを、各辺についての曲率角度としてそれぞれ求め、サンプル点Qと第j番目の辺との距離が短ければ短いほど、第j番目の曲率角度ξjの影響が大きくなるように、J個の曲率角度ξ1〜ξJを合成することにより、サンプル点Qについての曲率角度ξQを求めるようにすればよい。
以上、図5のステップS2に示すデータ入力段階において、仮想物体の立体形状が、ポリゴンの集合を示す三次元データとして入力された場合に、任意のサンプル点Qについての曲率σQおよび曲率角度ξQを求める具体的な方法を述べたが、本発明を実施する上では、仮想物体の立体形状を、必ずしもポリゴンの集合を示す三次元データとして入力する必要はない。たとえば、仮想物体の立体形状を、数式およびこの数式に用いられているパラメータの値によって表現されるパラメトリック曲面として入力した場合は、特定のサンプル点Qについての曲率σQおよび曲率角度ξQを、この数式およびパラメータの値を用いた演算により求めるようにすればよい。
<<< §5.本発明に係る二次元画像生成装置 >>>
図5に示す流れ図において、ステップS1は、実在の繊維シートを実在の物体上に張り付けた実測により行われる手順であるが、ステップS2〜S9は、コンピュータの内部で行われる処理であり、各手順は、実際にはコンピュータプログラムに基づいて実行されることになる。
本発明に係る二次元画像生成装置は、この図5のステップS2〜S9に示されている各手順を実行する機能をもったコンピュータによって構成される装置であり、図15のブロック図に示す各構成要素からなる装置である。以下、この装置の構成および動作を説明する。
この二次元画像生成装置は、物体の三次元データに基づいて、当該物体の表面に繊維シートを張り付け、これを所定の視点から観察したときに得られる投影画像を示す二次元データを生成する機能をもった装置であり、図15に示されているとおり、データ入力部110、三次元データ格納部120、曲率依存反射特性格納部130、曲率演算部140、反射光強度演算部150、投影条件設定部160、画素定義部170、投影データ格納部180によって構成されている。実際には、これらの各構成要素は、コンピュータに専用のプログラムを組み込むことによって実現される。
データ入力部110は、外部から与えられる種々のデータを入力するための構成要素であり、図5のステップS2で入力される種々のデータは、このデータ入力部110からコンピュータに取り込まれることになる。具体的には、このデータ入力部110は、コンピュータ用のキーボード、マウス、スキャナ装置、デジタルカメラ、磁気もしくは光データ読込装置などの装置によって構成されることになる。
三次元データ格納部120は、データ入力部110から入力された、仮想物体の立体形状を示す三次元データを格納するための構成要素であり、実際には、コンピュータ用の磁気記録装置やメモリ装置などによって実現される。前述した実施例の場合、三次元データ格納部120には、CADデータを流用して作成された三次元データが格納される。
曲率依存反射特性格納部130は、データ入力部110から入力された、繊維シートについての「曲率が反射光強度に及ぼす影響」を含んだ曲率依存反射特性を格納する構成要素であり、実際には、コンピュータ用の磁気記録装置やメモリ装置などによって実現される。曲率依存反射特性は、図5のステップS1によって実測される、個々の繊維シートに固有のデータであり、たとえば、図7に示すようなテーブル形式のデータとして、曲率依存反射特性格納部130に格納されることになる。また、投影条件設定部160は、データ入力部110から入力されたデータに基づき、照明条件、視点Eの位置、投影平面Mを設定する構成要素であり、実際には、コンピュータ用の磁気記録装置やメモリ装置などによって実現される。
曲率演算部140は、三次元データ格納部120に格納されている三次元データに基づいて、仮想物体の表面上に定義された所定のサンプル点Qの位置について、仮想物体表面の曲率σQおよび曲率角度ξQを求める機能をもった構成要素である。任意曲面上のサンプル点Qについての曲率σQおよび曲率角度ξQを求める具体的な手法は、§4に例示したとおりである。
反射光強度演算部150は、レンダリング処理を行う構成要素であり、繊維シートを仮想物体の表面に張り付けた場合に、サンプル点Qから視点Eに向かう反射光Vの強度を、三次元データ格納部120内に格納されている三次元データ、曲率依存反射特性格納部130内に格納されている「曲率演算部140で演算されたサンプル点Qについての曲率σQおよび曲率角度ξQに対応する曲率依存反射特性」、投影条件設定部160に設定されている投影条件(照明条件、視点位置、投影平面)に基づいて演算する機能を有する。具体的な演算内容については、§3に例示したとおりである。
画素定義部170は、サンプル点Qからの反射光Vと投影平面Mとの交点位置に、当該反射光Vの強度に応じた画素値をもつ画素Pを定義する構成要素であり、投影データ格納部180は、多数のサンプル点Qについて定義された多数の画素Pの集合を、仮想物体の投影画像を示す二次元投影データとして格納する構成要素である。
この図15に示す二次元画像生成装置を用いて、所望の二次元投影画像を得るための操作は次のとおりである。まず、オペレータは、仮想物体の三次元データと、実在の繊維シートとを用意する。仮想物体の三次元データとしては、たとえば、CADデータを流用したものをそのまま利用すればよい。そして、図5のステップS1で説明した実測作業を行い、用意した実在の繊維シートについて、たとえば、図7に示すテーブルのような曲率依存反射特性を求める。続いて、データ入力部110を操作することにより、仮想物体の三次元データを三次元データ格納部120へと格納し、実測して得られた曲率依存反射特性を曲率依存反射特性格納部130へと格納する。また、データ入力部110を操作することにより、投影条件設定部160に対して、照明条件、視点位置、投影平面の設定を行う。
以上で、オペレータが行う実体的な操作は完了である。この後、この装置に対して、レンダリング処理を開始する旨の指示を与えれば、曲率演算部140によって、レンダリング処理に必要な個々のサンプル点Qについての曲率σQおよび曲率角度ξQが演算され、反射光強度演算部150によって、個々のサンプル点Qから視点Eに向かう反射光Vの強度が演算され、画素定義部170によって、個々の反射光Vの強度に応じた画素値をもつ画素Pが定義され、これらの画素Pの集合として、投影データ格納部180内に、目的となる二次元画像が格納されることになる。オペレータは、こうして投影データ格納部180内に得られた二次元画像を、必要に応じて、所望の媒体上に出力させればよい。
以上、本発明を図示する実施形態に基づいて説明したが、本発明はこれらの実施形態に限定されるものではなく、この他にも種々の態様で実施可能である。たとえば、上述の実施形態の場合、曲率σに曲率角度ξという向きのファクターを加味したものを曲率パラメータと定義したが、利用形態によっては、曲率角度ξという概念は必ずしも必要なものではない。具体的には、繊維シートとして、縦糸と横糸とを編んだデニム地や玉虫織りを用いる場合は、生地自体に方向性があるため、たとえば、縦糸の方向に基準方向線Wを定義するようなことができる。しかしながら、タオル地などのパイルを植毛してなる生地を繊維シートとして用いる場合は、生地が等方性をもつため、物体に張り付ける際の方向を定義しても意味はない。このような場合、曲率パラメータとして、曲率σのみを定義し、曲率角度ξなる概念を用いない運用を行えばよい。
<<< §6.符号を用いた曲率定義 >>>
これまで述べた実施形態では、仮装物体の湾曲が凸状になっている例のみを示したが、実際には、仮装物体の表面は必ずしも凸状の湾曲のみから構成されているとは限らず、凹状の湾曲を有する仮装物体が用いられる場合もある。本発明は、もちろん、凸状の湾曲をもった仮装物体のみならず、凹状の湾曲をもった仮装物体についても適用可能である。
ところで、ある曲面が、凸状であるか凹状であるかは、視点を置く位置に依存して定まる事項であり、同一曲面であっても、視点位置によって凸状曲面になったり、凹状曲面になったりする。そこで曲率の定義に符号の概念を導入すれば、凸状曲面と凹状曲面とを統一的に取り扱うことが可能になる。ここでは、このような符号を用いた曲率の定義を行うことにより、凸状曲面と凹状曲面との双方を取り扱う具体的な方法を述べる。
たとえば、図16(a) は、図6(b) と同一の図であり、曲率σ=1/r1の円柱側面を有する実在の物体72に、実在の繊維シート61を張り付け、光源Gからの照明光Lを測定領域F2に照射し、視点Eに向かう反射光Vの強度を測定する作業を示している。この測定作業では、この繊維シート61(ここでは、説明の便宜上、厚みは無視する)についての、曲率σ=1/r1についての曲率依存反射特性を求めることができる。これに対して、図16(b) も、曲率σ=1/r1の円柱側面を有する実在の物体74に、実在の繊維シート61を張り付け、光源Gからの照明光Lを測定領域F4に照射し、視点Eに向かう反射光Vの強度を測定する作業を示す図である。この測定作業では、この繊維シート61(ここでは、説明の便宜上、厚みは無視する)についての、やはり曲率σ=1/r1についての曲率依存反射特性を求めることができる。
図16(a) に示す物体72も、図16(b) に示す物体74も、いずれも表面に幾何学的な円柱側面を有する物体であるが、前者は円柱の外面が物体の外面になっているため、繊維シート61が視点Eから見て凸状に湾曲しているのに対して、後者は円柱の内面が物体の外面となっているため、繊維シート61が視点Eから見て凹状に湾曲している。もっとも、視点E(各物体72,74の外側)から見るかわりに、各物体72,74の内側から見ると、上述した凹凸の関係は逆転する。ここで、曲率σを各円柱の半径の逆数と定義すると、いずれの場合も曲率はσ=1/r1になる(繊維シート61の厚みを考慮すると、前者の曲率はσ=1/(r1+d)になり、後者の曲率はσ=1/(r1−d)になる)。
そこで、ここでは、同じ曲率であっても、視点Eから見て凸状に湾曲している場合には正の符号をつけて示し、視点Eから見て凹状に湾曲している場合には負の符号をつけて示すことにする。すなわち、半径r1の円柱側面が与えられた場合であっても、当該円柱側面の外面については、図16(a) に示すように正の曲率値σ=1/r1が与えられ、当該円柱側面の内面については、図16(b) に示すように負の曲率値σ=−1/r1が与えられることになるので、絶対値は同じであっても、符号によって両者を区別することが可能である(もちろん、符号は逆に定義してもかまわない)。なお、本願にいう「円柱側面」とは、このように、幾何学的な円柱の側方を構成する曲面の外面と内面との双方を意味する文言として用いている。
実用上は、図5のステップS1における曲率依存反射特性の実測段階において、図16(a) に示すような正の曲率をもった物体を用いた測定と、図16(b) に示すような負の曲率をもった物体を用いた測定との双方を行っておくようにすればよい。この場合、測定によって得られる曲率依存反射特性のテーブルは、図7に示すテーブルに、更に、σが負の値をとる領域を付加したものになる(すなわち、図7のテーブルの左側に、σ=−1,−1/3,−1/5,…,−1/100の各欄が追加される)。
一方、図5のステップS5における曲率演算や、図15の曲率演算部140では、所定のサンプル点の位置における仮装物体の曲率を、符号付きの値として求めるようにすればよい。すなわち、視点から見て凸状に湾曲している場合には正の曲率、凹状に湾曲している場合には負の曲率が定義されるようにすればよい。
たとえば、隣接する2つの多角形間の形成角ωなるものを、仮装物体の内側について計った角度と定義しておく。図10に示す例の場合、図の下側に示されている部分が物体の内部、図の上側に示されている部分が物体の外部であるとすれば、着目三角形Tqと隣接三角形Taとの間の形成角は、図示の角度ωaということになる。そして、図示の例のように、形成角ωaが180°よりも小さければ、視点(仮装物体の外部)から見て、凸状に湾曲していることになるので、正の曲率を与え、逆に、形成角ωaが180°よりも大きければ、視点(仮装物体の外部)から見て、凹状に湾曲していることになるので、負の曲率を与えるようにすればよい。
このように、形成角と180°との大小関係に応じて、符号を定めるようにすれば、図5のステップS5における曲率演算や、図15の曲率演算部140において、与えられたサンプル点の位置における仮装物体の曲率を、符号付きの値として求めることができるようになるので、凸状曲面と凹状曲面との双方に対応した取り扱いが可能になる。もちろん、曲率の絶対値は、§4で述べた具体的な実施例における算出法をそのまま用いるようにすればよい。
平面から構成される仮想物体に繊維シートを張り付ける状態を示す斜視図である。 曲面を有する仮想物体に繊維シートを張り付ける状態を示す斜視図である。 一般的なレンダリング処理の原理を示す斜視図である。 繊維シートと物体表面の曲率との関係を示す斜視図である。 本発明に係る二次元画像生成方法の手順を示す流れ図である。 図5の流れ図における曲率依存反射特性測定段階S1の具体的な測定方法を示す図である。 図5の流れ図における曲率依存反射特性測定段階S1を実施することにより得られた曲率依存反射特性のテーブルの一例を示す図である。 照明光および反射光の向きを考慮して反射率を決定するBRDFモデルの原理を説明するための斜視図である。 多数の三角形の集合により表現された仮想物体について、三角形の一辺についての曲率を定義する原理を示す平面図である。 図9に示す例において、辺Aについての曲率を定義する原理を示す平面図である。 図9に示す例において、三角形内のサンプル点Qについての曲率を定義する原理を示す平面図である。 図9に示す例において、三角形内のサンプル点Qについての曲率を定義する別な原理を示す平面図である。 図9に示す例において、各辺A,B,Cについての曲率角度を定義する原理を示す平面図である。 図9に示す例において、三角形内のサンプル点Qについての曲率角度を定義する原理を示す平面図である。 本発明に係る二次元画像生成装置の構成を示すブロック図である。 本発明において、負の曲率を定義した取り扱いを示す図である。
符号の説明
10…仮想物体
11…仮想物体の上面
12…仮想物体の前面
13…仮想物体の側面
20…繊維シートを張り付けた仮想物体
21…繊維シートを張り付けた仮想物体の上面
22…繊維シートを張り付けた仮想物体の前面
23…繊維シートを張り付けた仮想物体の側面
30…仮想物体
31…仮想物体の上面
32…仮想物体側面
40…繊維シートを張り付けた仮想物体
41…繊維シートを張り付けた仮想物体の上面
42…繊維シートを張り付けた仮想物体の側面
50…仮想物体
51,52…円柱状の実在の物体
55…仮想物体の投影画像
60…仮想繊維シート
61…実在の繊維シート
71…四角柱からなる物体
72…半径r1の円柱からなる物体
73…半径r2の円柱からなる物体
74…半径r1の円柱のくぼみを有する物体
110…データ入力部
120…三次元データ格納部
130…曲率依存反射特性格納部
140…曲率演算部
150…反射光強度演算部
160…投影条件設定部
170…画素定義部
180…投影データ格納部
A,B,C…三角形の各辺
a,b,c…垂線の足
D1〜D6…三角形の頂点
E…視点
F1〜F4…測定領域
G…光源
H…円柱の中心軸
H′…円柱の中心軸の投影線
ha,hqa…垂線の長さ
Ja…接続点
L…照明光
L′…照明光の投影像
La…点Qと点D3との距離
Lb…点Qと点D2との距離
Lc…点Qと点D1との距離
M…投影平面
n…法線
Oa…垂直二等分線の交点
P…画素
Q…サンプル点
Ra…点Oaと点Jaとの距離
r1,r2…円柱の半径
S…法線に直交する直交平面
S1〜S9…流れ図の各ステップ
Ta,Tb,Tc…隣接三角形
Tq…着目三角形
Ua,Ub,Uc…個々の分割領域およびその面積
u,v…絵柄を示す二次元座標系の各座標軸
V…反射光
V′…反射光の投影像
W…基準方向線
X,Y,Z…三次元座標系の各座標軸
x,y…投影平面M上の二次元座標系の各座標軸
ζ…基準線
θL…照明光Lの入射角
θV…反射光Vの射出角
ξ…曲率角度
ξa…辺Aに関する曲率角度
ξb…辺Bに関する曲率角度
ξc…辺Cに関する曲率角度
ξQ…サンプル点Qの曲率角度
σ…曲率
σa…辺Aに関する曲率
σb…辺Bに関する曲率
σc…辺Cに関する曲率
σQ…サンプル点Qの曲率
φL…照明光Lの方位角
φV…反射光Vの方位角
ωa…面もしくは線分の形成角

Claims (25)

  1. 物体の三次元データに基づいて、当該物体の表面に繊維シートを張り付け、これを所定の視点から観察したときに得られる投影画像を示す二次元データを生成する方法であって、
    実在の繊維シートを所定の曲率を有する実在の物体上に張り付け、所定の条件で照明を行い、前記繊維シート表面から得られる反射光を所定方向から観察する測定を、複数通りの曲率についてそれぞれ行うことにより、曲率が反射光強度に及ぼす影響を含んだ曲率依存反射特性を求める曲率依存反射特性測定段階と、
    コンピュータが、仮想物体の立体形状を示す三次元データを入力するデータ入力段階と、
    コンピュータが、照明条件、視点位置、投影平面を設定する投影条件設定段階と、
    コンピュータが、前記仮想物体の表面上に定義された所定のサンプル点の位置について、前記仮想物体表面の曲率を求める曲率演算段階と、
    コンピュータが、前記繊維シートを前記仮想物体の表面に張り付けた場合に、前記サンプル点から前記視点位置に向かう反射光の強度を、当該サンプル点位置における曲率に対応する曲率依存反射特性を考慮して求める反射光強度演算段階と、
    コンピュータが、サンプル点からの反射光と前記投影平面との交点位置に、前記反射光の強度に応じた画素値をもつ画素を定義する画素定義段階と、
    コンピュータが、多数のサンプル点について定義された多数の画素の集合により、前記仮想物体の投影画像を示す二次元投影データを生成する投影データ生成段階と、
    を有することを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  2. 請求項1に記載の二次元画像生成方法において、
    曲率依存反射特性測定段階では、実在の繊維シートを実在の物体上に張り付ける際に、実在の繊維シート上に基準方向線を定義し、この基準方向線が実在の物体上でそれぞれ異なる方向を向くように複数通りの向きで張り付けるようにし、向きのファクターをもった曲率を定義し、曲率依存反射特性を、向きのファクターをもった個々の曲率ごとにそれぞれ求め、
    データ入力段階では、仮想物体に対する繊維シートの張り付け向きに関する情報を併せて入力し、
    曲率演算段階では、向きのファクターをもった曲率を求め、
    反射光強度演算段階では、向きのファクターをもった曲率に対応する曲率依存反射特性を考慮して反射光強度を求めることを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  3. 請求項2に記載の二次元画像生成方法において、
    曲率依存反射特性測定段階では、実在の物体の円柱側面に実在の繊維シートを所定の向きに張り付け、円柱の半径の逆数を用いて曲率σを定義し、円柱の中心軸を半径方向に投影することにより円柱側面上に得られる投影線と繊維シートの基準方向線とのなす角ξを当該曲率σについての曲率角度と定義し、個々の曲率σおよび個々の曲率角度ξの各組み合わせに対応する曲率依存反射特性をそれぞれ求め、
    データ入力段階では、仮想物体上に張り付けられる繊維シートの基準方向線の向きに関する情報を入力し、
    曲率演算段階では、所定のサンプル点の位置について、前記基準方向線の向きに関する情報を参照することにより、曲率σおよびこの曲率σに応じた湾曲方向と前記基準方向線とのずれを示す曲率角度ξを求め、
    反射光強度演算段階では、前記曲率σおよび曲率角度ξの組み合わせに対応する曲率依存反射特性を考慮して反射光強度を求めることを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  4. 請求項3に記載の二次元画像生成方法において、
    曲率依存反射特性測定段階では、uv二次元座標系上に定義された絵柄データT(u,v)で示される絵柄をもった実在の繊維シートを用いた測定を行うようにし、座標値u,vの値に応じた曲率依存反射特性を求め、
    反射光強度演算段階では、サンプル点における入射照明光の強度をIiとしたときに、反射光強度Iを、座標値u,vおよび曲率パラメータσ,ξの関数として与えられる反射係数kを用いて、
    I=k・Ii
    なる式で求めることを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  5. 請求項3に記載の二次元画像生成方法において、
    反射光強度演算段階では、サンプル点における入射照明光の強度をIi、仮想物体表面上の前記サンプル点位置に立てた法線nと前記入射照明光とのなす角をα、拡散反射係数をkdとしたときに、反射光強度Iを、
    I=kd・Ii・cos α
    なる式で求め、前記拡散反射係数kdを、曲率パラメータσ,ξを考慮して決定することを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  6. 請求項5に記載の二次元画像生成方法において、
    曲率依存反射特性測定段階では、uv二次元座標系上に定義された絵柄データT(u,v)で示される絵柄をもった実在の繊維シートを用いた測定を行うようにし、座標値u,vの値に応じた曲率依存反射特性を求め、
    反射光強度演算段階では、拡散反射係数kdを、座標値u,vおよび曲率パラメータσ,ξを考慮して決定することを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  7. 請求項3に記載の二次元画像生成方法において、
    反射光強度演算段階では、サンプル点における入射照明光の強度をIi、仮想物体表面上の前記サンプル点位置に立てた法線nと前記入射照明光とのなす角をα、この角度αに依存した反射係数をk(α)、鏡面反射の鋭さを示すパラメータをβ、前記サンプル点における鏡面反射光の射出方向と視点方向とのなす角をγとしたときに、反射光強度Iを、
    I=k(α)・Ii・cos βγ
    なる式で求め、前記係数k(α)およびβを、曲率パラメータσ,ξを考慮して決定することを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  8. 請求項7に記載の二次元画像生成方法において、
    角度αに依存した反射係数をk(α)の代わりに、角度αに依存しない係数ksを用い、反射光強度Iを、
    I=ks・Ii・cos βγ
    なる式で求め、前記係数ksおよびβを、曲率パラメータσ,ξを考慮して決定することを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  9. 請求項3に記載の二次元画像生成方法において、
    反射光強度演算段階では、サンプル点における入射照明光の強度をIi、仮想物体表面上の前記サンプル点位置に立てた法線nと前記入射照明光とのなす角をθL、前記法線nに直交する直交平面上への前記入射照明光の投影像と前記直交平面上の前記サンプル点を通る基準線とのなす角度をφL、前記法線nと反射光とのなす角度をθV、前記直交平面上への前記反射光の投影像と前記基準線とのなす角度をφVとしたときに、反射光強度Iを、θL,φL,θV,φVおよび曲率パラメータσ,ξの関数として与えられる反射係数kbを用いて、
    I=kb・Ii
    なる式で求めることを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  10. 請求項3に記載の二次元画像生成方法において、
    曲率依存反射特性測定段階では、uv二次元座標系上に定義された絵柄データT(u,v)で示される絵柄をもった実在の繊維シートを用いた測定を行うようにし、座標値u,vの値に応じた曲率依存反射特性を求め、
    反射光強度演算段階では、サンプル点における入射照明光の強度をIi、仮想物体表面上の前記サンプル点位置に立てた法線nと前記入射照明光とのなす角をθL、前記法線nに直交する直交平面上への前記入射照明光の投影像と前記直交平面上の前記サンプル点を通る基準線とのなす角度をφL、前記法線nと反射光とのなす角度をθV、前記直交平面上への前記反射光の投影像と前記基準線とのなす角度をφVとしたときに、反射光強度Iを、θL,φL,θV,φV,座標値u,vおよび曲率パラメータσ,ξの関数として与えられる反射係数kbを用いて、
    I=kb・Ii
    なる式で求めることを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  11. 請求項9または10に記載の二次元画像生成方法において、
    曲率依存反射特性測定段階では、照明条件および観察方向を変化させることにより、角度θL,φLで定義される入射照明光の向きおよび角度θV,φVで定義される反射光の向きを複数通りに変えた測定を行い、曲率依存反射特性を、角度θL,φL,θV,φVの組み合わせごとにそれぞれ求めるようにし、
    反射光強度演算段階では、演算対象となるサンプル点についての入射照明光の向きを示す角度θL,φLおよび反射光の向きを示す角度θV,φVの組み合わせに対応した曲率依存反射特性を用いた演算を行うようにすることを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  12. 請求項1〜11のいずれかに記載の二次元画像生成方法において、
    投影条件設定段階で、複数の光源を有する照明条件を設定し、
    反射光強度演算段階で、1つのサンプル点から視点位置に向かう反射光の強度を、前記複数の光源のそれぞれからの入射照明光に基づいて発生する各反射光強度の総和として求めることを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  13. 請求項1〜12のいずれかに記載の二次元画像生成方法において、
    データ入力段階では、仮想物体の立体形状を多角形の集合体として入力し、
    曲率演算段階で、特定のサンプル点Qについての曲率を求める際に、当該特定のサンプル点を含むJ個の辺を有する着目多角形について、当該着目多角形とこれに隣接する複数J個の隣接多角形との間の前記仮想物体の内側についての形成角ω1〜ωJをそれぞれ求め、第j番目の隣接多角形との間の境界を形成する第j番目の辺に関する曲率として、第j番目の形成角ωjが180°に近くなればなるほど小さくなり、かつ、前記着目多角形および前記第j番目の隣接多角形の大きさが大きくなればなるほど小さくなるような絶対値をもち、前記第j番目の形成角ωjと180°との大小関係に応じた符号を有する曲率σjを定義し、第1番目の辺〜第J番目の辺についてそれぞれ曲率σ1〜σJを定義し、前記特定のサンプル点と第j番目の辺との距離が短ければ短いほど、第j番目の曲率σjの影響が大きくなるように、J個の曲率σ1〜σJを合成することにより、前記サンプル点Qについての曲率σQを求めることを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  14. 請求項13に記載の二次元画像生成方法において、
    曲率依存反射特性測定段階では、実在の繊維シートを実在の物体上に張り付ける際に、実在の繊維シート上に基準方向線を定義し、この基準方向線が実在の物体上でそれぞれ異なる方向を向くように複数通りの向きで張り付けるようにし、向きのファクターをもった曲率を定義し、曲率依存反射特性を、向きのファクターをもった個々の曲率ごとにそれぞれ求め、
    データ入力段階では、前記基準方向線に関する情報を併せて入力し、
    曲率演算段階では、前記基準方向線と着目多角形の第1番目の辺〜第J番目の辺のそれぞれとのなす角ξ1〜ξJを、各辺についての曲率角度としてそれぞれ求め、サンプル点Qと第j番目の辺との距離が短ければ短いほど、第j番目の曲率角度ξjの影響が大きくなるように、J個の曲率角度ξ1〜ξJを合成することにより、前記サンプル点Qについての曲率角度ξQを求め、
    反射光強度演算段階では、前記曲率角度ξQで示される向きのファクターをもった曲率に対応する曲率依存反射特性を考慮して反射光強度を求めることを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  15. 請求項1〜12のいずれかに記載の二次元画像生成方法において、
    データ入力段階では、仮想物体の立体形状を三角形の集合体として入力し、
    曲率演算段階で、特定のサンプル点Qについての曲率を求める際に、当該特定のサンプル点を含む着目三角形Tqについて、当該着目三角形Tqと、辺A,B,Cを境界としてこれに隣接する3個の隣接三角形Ta,Tb,Tcとの間の前記仮想物体の内側についての形成角ωa,ωb,ωcをそれぞれ求め、辺Aに関する曲率として、前記形成角ωaが180°に近くなればなるほど小さくなり、かつ、前記着目三角形Tqおよび前記隣接三角形Taの大きさが大きくなればなるほど小さくなるような絶対値をもち、前記形成角ωaと180°との大小関係に応じた符号を有する曲率σaを定義し、辺Bに関する曲率として、前記形成角ωbが180°に近くなればなるほど小さくなり、かつ、前記着目三角形Tqおよび前記隣接三角形Tbの大きさが大きくなればなるほど小さくなるような絶対値をもち、前記形成角ωbと180°との大小関係に応じた符号を有する曲率σbを定義し、辺Cに関する曲率として、前記形成角ωcが180°に近くなればなるほど小さくなり、かつ、前記着目三角形Tqおよび前記隣接三角形Tcの大きさが大きくなればなるほど小さくなるような絶対値をもち、前記形成角ωcと180°との大小関係に応じた符号を有する曲率σcを定義し、前記サンプル点Qと辺Aとの距離が短ければ短いほど曲率σaの影響が大きくなり、前記サンプル点Qと辺Bとの距離が短ければ短いほど曲率σbの影響が大きくなり、前記サンプル点Qと辺Cとの距離が短ければ短いほど曲率σcの影響が大きくなるように、曲率σa,σb,σcを合成することにより、前記サンプル点Qについての曲率σQを求めることを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  16. 請求項15に記載の二次元画像生成方法において、
    辺Aに関する曲率を定義する際に、着目三角形Tqの辺Aに対する対角から辺Aに下ろした垂線の長さhqaと、隣接三角形Taの辺Aに対する対角から辺Aに下ろした垂線の長さhaと、を求め、平面上に、「長さhqaをもった線分」と「長さhaをもった線分」とを、それぞれの一端が接続点Jaで接続され、かつ、前記接続点Jaにおける両線分のなす角が形成角ωaとなるように配置し、前記「長さhqaをもった線分」の垂直二等分線と前記「長さhaをもった線分」の垂直二等分線との交点Oaと前記接続点Jaとの距離Raの逆数を、辺Aに関する曲率σaの絶対値と定義し、
    辺Bに関する曲率を定義する際に、着目三角形Tqの辺Bに対する対角から辺Bに下ろした垂線の長さhqbと、隣接三角形Tbの辺Bに対する対角から辺Bに下ろした垂線の長さhbと、を求め、平面上に、「長さhqbをもった線分」と「長さhbをもった線分」とを、それぞれの一端が接続点Jbで接続され、かつ、前記接続点Jbにおける両線分のなす角が形成角ωbとなるように配置し、前記「長さhqbをもった線分」の垂直二等分線と前記「長さhbをもった線分」の垂直二等分線との交点Obと前記接続点Jbとの距離Rbの逆数を、辺Bに関する曲率σbの絶対値と定義し、
    辺Cに関する曲率を定義する際に、着目三角形Tqの辺Cに対する対角から辺Cに下ろした垂線の長さhqcと、隣接三角形Tcの辺Cに対する対角から辺Cに下ろした垂線の長さhcと、を求め、平面上に、「長さhqcをもった線分」と「長さhcをもった線分」とを、それぞれの一端が接続点Jcで接続され、かつ、前記接続点Jcにおける両線分のなす角が形成角ωcとなるように配置し、前記「長さhqcをもった線分」の垂直二等分線と前記「長さhcをもった線分」の垂直二等分線との交点Ocと前記接続点Jcとの距離Rcの逆数を、辺Cに関する曲率σcの絶対値と定義することを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  17. 請求項15または16に記載の二次元画像生成方法において、
    サンプル点Qについての曲率σQを求める際に、着目三角形Tqの辺Aに対する対角とサンプル点Qとの距離をLa、着目三角形Tqの辺Bに対する対角とサンプル点Qとの距離をLb、着目三角形Tqの辺Cに対する対角とサンプル点Qとの距離をLcとしたときに、
    σQ=(La・σa+Lb・σb+Lc・σc)/(La+Lb+Lc)
    なる演算を行うことを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  18. 請求項15または16に記載の二次元画像生成方法において、
    サンプル点Qについての曲率σQを求める際に、サンプル点Qから辺Aに下ろした垂線と、サンプル点Qから辺Bに下ろした垂線と、サンプル点Qから辺Cに下ろした垂線と、によって、着目三角形Tqを3つの領域に分割し、辺Aに対する対角を含む領域の面積をUa、辺Bに対する対角を含む領域の面積をUb、辺Cに対する対角を含む領域の面積をUcとしたときに、
    σQ=(Ua・σa+Ub・σb+Uc・σc)/(Ua+Ub+Uc)
    なる演算を行うことを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  19. 請求項15〜18のいずれかに記載の二次元画像生成方法において、
    曲率依存反射特性測定段階では、実在の繊維シートを実在の物体上に張り付ける際に、実在の繊維シート上に基準方向線を定義し、この基準方向線が実在の物体上でそれぞれ異なる方向を向くように複数通りの向きで張り付けるようにし、向きのファクターをもった曲率を定義し、曲率依存反射特性を、向きのファクターをもった個々の曲率ごとにそれぞれ求め、
    データ入力段階では、前記基準方向線に関する情報を併せて入力し、
    曲率演算段階では、前記基準方向線と着目三角形の辺A,辺B,辺Cのそれぞれとのなす角ξa,ξb,ξcを、各辺についての曲率角度としてそれぞれ求め、サンプル点Qと辺Aとの距離が短ければ短いほど曲率角度ξaの影響が大きくなり、サンプル点Qと辺Bとの距離が短ければ短いほど曲率角度ξbの影響が大きくなり、サンプル点Qと辺Cとの距離が短ければ短いほど曲率角度ξcの影響が大きくなるように、曲率角度ξa,ξb,ξcを合成することにより、サンプル点Qについての曲率角度ξQを求め、
    反射光強度演算段階で、サンプル点Qについての反射光強度を求める際に、曲率角度ξQなる向きのファクターをもった曲率σQを用いて、対応する曲率依存反射特性を決定することを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  20. 請求項19に記載の二次元画像生成方法において、
    サンプル点Qについての曲率角度ξQを求める際に、着目三角形Tqの辺Aに対する対角とサンプル点Qとの距離をLa、着目三角形Tqの辺Bに対する対角とサンプル点Qとの距離をLb、着目三角形Tqの辺Cに対する対角とサンプル点Qとの距離をLcとしたときに、
    ξQ=(La・ξa+Lb・ξb+Lc・ξc)/(La+Lb+Lc)
    なる演算を行うことを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  21. 請求項19に記載の二次元画像生成方法において、
    サンプル点Qについての曲率角度ξQを求める際に、サンプル点Qから辺Aに下ろした垂線と、サンプル点Qから辺Bに下ろした垂線と、サンプル点Qから辺Cに下ろした垂線と、によって、着目三角形Tqを3つの領域に分割し、辺Aに対する対角を含む領域の面積をUa、辺Bに対する対角を含む領域の面積をUb、辺Cに対する対角を含む領域の面積をUcとしたときに、
    σQ=(Ua・ξa+Ub・ξb+Uc・ξc)/(Ua+Ub+Uc)
    なる演算を行うことを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  22. 請求項1〜12のいずれかに記載の二次元画像生成方法において、
    データ入力段階では、仮想物体の立体形状を、数式およびこの数式に用いられているパラメータの値によって表現されるパラメトリック曲面として入力し、
    曲率演算段階で、特定のサンプル点Qについての曲率を、前記数式およびパラメータの値を用いた演算により求めることを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法。
  23. 請求項1〜22のいずれかに記載の二次元画像生成方法における曲率依存反射特性測定段階以外の各段階をコンピュータに実行させるためのプログラム。
  24. 物体の三次元データに基づいて、当該物体の表面に繊維シートを張り付け、これを所定の視点から観察したときに得られる投影画像を示す二次元データを生成する装置であって、
    外部から与えられる種々のデータを入力するデータ入力部と、
    前記データ入力部から入力された、仮想物体の立体形状を示す三次元データを格納する三次元データ格納部と、
    前記データ入力部から入力された、繊維シートについての「曲率が反射光強度に及ぼす影響」を含んだ曲率依存反射特性を格納する曲率依存反射特性格納部と、
    前記データ入力部から入力されたデータに基づき、照明条件、視点位置、投影平面を設定する投影条件設定部と、
    前記三次元データに基づいて、前記仮想物体の表面上に定義された所定のサンプル点の位置について、前記仮想物体表面の曲率を求める曲率演算部と、
    前記繊維シートを前記仮想物体の表面に張り付けた場合に、前記サンプル点から前記視点位置に向かう反射光の強度を、前記三次元データ、前記照明条件、前記視点位置、当該サンプル点位置における曲率に対応する前記曲率依存反射特性を考慮して求める反射光強度演算部と、
    サンプル点からの反射光と前記投影平面との交点位置に、前記反射光の強度に応じた画素値をもつ画素を定義する画素定義部と、
    多数のサンプル点について定義された多数の画素の集合を、前記仮想物体の投影画像を示す二次元投影データとして格納する投影データ格納部と、
    を備えることを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成装置。
  25. 請求項24に記載の二次元画像生成装置において、
    データ入力部が、繊維シートを仮想物体に張り付けたときに、繊維シート上に定義された基準方向線の向きに関する情報を入力する機能を有し、
    曲率依存反射特性格納部が、曲率と、この曲率に応じた湾曲方向と前記基準方向線とのずれを示す曲率角度と、についての種々の組み合わせにそれぞれ対応する曲率依存反射特性を格納する機能を有し、
    曲率演算部が、サンプル点位置における曲率とともに曲率角度を求める機能を有し、
    反射光強度演算部が、サンプル点位置における曲率および曲率角度に対応する曲率依存反射特性を考慮して、反射光強度を求める機能を有することを特徴とする表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成装置。
JP2005232402A 2005-08-10 2005-08-10 表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法および生成装置 Expired - Fee Related JP4667161B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005232402A JP4667161B2 (ja) 2005-08-10 2005-08-10 表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法および生成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005232402A JP4667161B2 (ja) 2005-08-10 2005-08-10 表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法および生成装置

Publications (2)

Publication Number Publication Date
JP2007048084A JP2007048084A (ja) 2007-02-22
JP4667161B2 true JP4667161B2 (ja) 2011-04-06

Family

ID=37850849

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005232402A Expired - Fee Related JP4667161B2 (ja) 2005-08-10 2005-08-10 表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法および生成装置

Country Status (1)

Country Link
JP (1) JP4667161B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5272718B2 (ja) * 2008-12-24 2013-08-28 セイコーエプソン株式会社 質感情報データ取得装置、それを備える表示制御システム、質感情報データ取得方法、及び、コンピュータプログラム
JP6410451B2 (ja) * 2014-03-31 2018-10-24 キヤノン株式会社 情報処理装置、計測システム、情報処理方法およびプログラム。
DE102014115331A1 (de) * 2014-10-21 2016-04-21 Isra Surface Vision Gmbh Verfahren und Vorrichtung zur Ermittlung einer dreidimensionalen Verzerrung
US9818021B2 (en) 2014-10-21 2017-11-14 Isra Surface Vision Gmbh Method for determining a local refractive power and device therefor
JP7406348B2 (ja) 2019-11-14 2023-12-27 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000227966A (ja) * 1999-02-04 2000-08-15 Canon Inc 3dコンピュ―タ・グラフィックス処理装置及び方法
JP2004152015A (ja) * 2002-10-30 2004-05-27 Digital Fashion Ltd 画像処理装置、画像処理プログラム、そのプログラムを記録する記録媒体、画像処理方法、シェーディング情報取得装置及びデータ構造
JP2005122719A (ja) * 2003-09-24 2005-05-12 Fuji Photo Film Co Ltd コンピュータグラフィックスシステム、コンピュータグラフィックス再現方法およびプログラム
JP2005181038A (ja) * 2003-12-18 2005-07-07 Olympus Corp 反射特性測定装置とそれを用いた高色再現デザインシステム及び反射特性測定方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000227966A (ja) * 1999-02-04 2000-08-15 Canon Inc 3dコンピュ―タ・グラフィックス処理装置及び方法
JP2004152015A (ja) * 2002-10-30 2004-05-27 Digital Fashion Ltd 画像処理装置、画像処理プログラム、そのプログラムを記録する記録媒体、画像処理方法、シェーディング情報取得装置及びデータ構造
JP2005122719A (ja) * 2003-09-24 2005-05-12 Fuji Photo Film Co Ltd コンピュータグラフィックスシステム、コンピュータグラフィックス再現方法およびプログラム
JP2005181038A (ja) * 2003-12-18 2005-07-07 Olympus Corp 反射特性測定装置とそれを用いた高色再現デザインシステム及び反射特性測定方法

Also Published As

Publication number Publication date
JP2007048084A (ja) 2007-02-22

Similar Documents

Publication Publication Date Title
Lawonn et al. A survey of surface‐based illustrative rendering for visualization
Bando et al. A simple method for modeling wrinkles on human skin
Zwicker et al. Perspective accurate splatting
US6888544B2 (en) Apparatus for and method of rendering 3D objects with parametric texture maps
US8432435B2 (en) Ray image modeling for fast catadioptric light field rendering
JP4335588B2 (ja) 3dオブジェクトをモデル化する方法
JP5002742B2 (ja) パラメトリックテクスチャマップを使用して3dオブジェクトをレンダリングするための装置および方法
US20090153555A1 (en) System and Computer-Implemented Method for Modeling the Three-Dimensional Shape of An Object by Shading of a Two-Dimensional Image of the Object
JP4667161B2 (ja) 表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法および生成装置
Arikan et al. Large-scale point-cloud visualization through localized textured surface reconstruction
JP4693555B2 (ja) 表面に繊維シートを張り付けた三次元仮想物体に基づく二次元画像生成方法および生成装置
Sanzharov et al. Level of detail for precomputed procedural textures
Zerbi et al. Digital technologies for the virtual reconstruction and projection of lost decorations: the case of the proscenium of the Farnese Theatre in Parma.
EP0950987A2 (en) Three-Dimensional image creating apparatus
Sitnik et al. From cloud-of-point coordinates to three-dimensional virtual environment: the data conversion system
Kočevar et al. Modelling and visualisation of the optical properties of cloth
US20210074057A1 (en) System for computing the appearance of weave patterns
JP3693735B2 (ja) 画像合成装置
Vanhoey et al. Simplification of meshes with digitized radiance
Andersen et al. Height and tilt geometric texture
JP2004054634A (ja) 画像処理装置およびその方法
Krumpen et al. OctreeBTFs–A compact, seamless and distortion-free reflectance representation
Pastor et al. Graph-based point relaxation for 3d stippling
CA2282240C (en) System and computer-implemented method for modeling the three-dimensional shape of an object by shading of a two-dimensional image of the object
Öhrn Different mapping techniques for realistic surfaces

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080709

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101228

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110111

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140121

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4667161

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees