JP2002032777A - 画像処理装置及び画像処理方法、並びに、記憶媒体 - Google Patents

画像処理装置及び画像処理方法、並びに、記憶媒体

Info

Publication number
JP2002032777A
JP2002032777A JP2000218919A JP2000218919A JP2002032777A JP 2002032777 A JP2002032777 A JP 2002032777A JP 2000218919 A JP2000218919 A JP 2000218919A JP 2000218919 A JP2000218919 A JP 2000218919A JP 2002032777 A JP2002032777 A JP 2002032777A
Authority
JP
Japan
Prior art keywords
hair
color
skin
layer
image processing
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
Application number
JP2000218919A
Other languages
English (en)
Inventor
Hitoshi Ishikawa
仁 石川
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2000218919A priority Critical patent/JP2002032777A/ja
Publication of JP2002032777A publication Critical patent/JP2002032777A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 【課題】 ポアッソン分布に従わない長い毛の表現を可
能とし、毛の流れを表現する色計算を好適に行う。 【解決手段】 長い毛を多段の短い毛として定義して、
各段の毛の色を毛色計算部で計算し、毛の上にさらに毛
を重ねて多層の多層の色計算を行うことで、長い毛の色
計算を実現する。また、下の層の毛の密度に関連する値
及び毛の方向を基に上の層の毛の密度に関連する値を毛
の密度に関連する値を計算したり、あるいは毛の密度に
関連する値や毛の方向に乱数を導入して、上の層におけ
る透過度計算並びに混合処理に利用することができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータ・デ
ィスプレイ上にコンピュータ・グラフィックス(CG)
画面を生成する画像処理装置及び画像処理方法に係り、
特に、ラスタライズ過程において各ピクセルに関する好
適な描画色を決定するための色計算を行う画像処理装置
及び画像処理方法に関する。
【0002】更に詳しくは、本発明は、毛皮の色計算を
行なう画像処理装置及び画像処理方法に係り、特に、長
い毛の流れを表現する色計算を行う画像処理装置及び画
像処理方法に関する。
【0003】
【従来の技術】昨今のコンピュータ・システムにおける
演算速度の向上や描画機能の強化とも相俟って、コンピ
ュータ資源を用いて図形や画像の作成や処理を行なう、
いわゆる「コンピュータ・グラフィックス」(CG)技
術が盛んに研究・開発され、さらに実用化されている。
【0004】例えば、3次元グラフィックスは、3次元
オブジェクトが所定の光源によって照らされたときの光
学現象を数学モデルで表現して、該モデルに基づいてオ
ブジェクト表面に陰影や濃淡を付けたり、さらには模様
を貼り付けたりして、よりリアルで3次元的な2次元高
精彩画像を生成するものである。コンピュータ・グラフ
ィックスは、科学、工学、製造などの応用分野でのCA
D/CAM、その他の各種開発分野においてますます盛
んに利用されるようになってきている。
【0005】3次元グラフィックスは、一般には、フロ
ントエンドとして位置付けられる「ジオメトリ・サブシ
ステム」と、バックエンドとして位置付けられる「ラス
タ・サブシステム」とで構成される。
【0006】ジオメトリ・サブシステムは、ディスプレ
イ・スクリーン上に表示する3次元オブジェクトの位置
や姿勢などの幾何学的な演算処理を行なう過程のことで
ある。ジオメトリ・サブシステムでは、一般に、オブジ
ェクトは多数のポリゴンの集合体として扱われ、ポリゴ
ン単位で、「座標変換」、「クリッピング」、「光源計
算」などの幾何学的な演算処理が行なわれる。
【0007】一方、ラスタ・サブシステムは、オブジェ
クトを構成する各ピクセル(pixel)を塗りつぶす過程
のことである。ラスタライズ処理は、例えば、ポリゴン
の頂点毎に求められた画像パラメータを基にして、ポリ
ゴン内部のすべてのピクセルの画像パラメータを補間す
ることによって実現される。ここで言う画像パラメータ
には、RGB形式などで表される色(描画色)データ、
奥行き方向の距離を表すZ値などがある。また、最近の
高精彩な3次元グラフィックス処理では、遠近感を醸し
出すためのf(fog:霧)や、物体表面の素材感や模
様を表現してリアリティを与えるテクスチャt(tex
ture)なども、画像パラメータの1つとして含まれ
ている。
【0008】ところで、各ピクセルの描画色の計算(以
下、「色計算」とする)には表面の材質が大きく影響を
及ぼす。平坦で均質な素材の表面の色計算は比較的容易
であるが、例えば動物の毛皮などの色計算は困難であ
る。何故ならば、表面形状が複雑で、毛の密度によって
は皮膚の色の影響を受けたり、毛の流れによって色も変
化からである。勿論、毛の1本1本を直接モデルとして
扱うことにより毛皮を忠実且つ自然に表現することもで
きるが、このような場合、モデルの増加に伴う計算コス
トの増大や、拡大に伴う画質の低下といった問題があ
る。
【0009】通常良く用いられる色計算の方法として、
Phongのライティング式やテクスチャ・マッピング
を用いる方法が挙げられる。
【0010】しかしながら、Phongのライティング
式は、金属やプラスティックのような表面が均質で滑ら
かな物体を表現するのには適しているが、毛皮のような
素材に対しては表現力が不足している。一般に、視線と
毛の方向が直交するような場合には毛の色が濃くなり、
逆に視線と毛の方向が平行な場合には皮膚の色が濃く見
えるが、Phongのライティング式によると、このよ
うな現象を表現することができない。
【0011】また、テクスチャ・マッピングを用いた方
法は、通常はライテングを行なった結果と重ね合わせて
描画色を得るようにしている。ライティングにPhon
gの方法を用いると、上記と同様に、不自然な結果を招
来する。
【0012】一方、James T. Kajiya and Timothy L.Ka
y著の"Rendering Fur With Three Dimensional Textur
e."(SIGGRAPH 89 Conference Proceedings pages 271-
277)には、各テクセル毎に密度や毛の方向ベクトルを
定義した3次元テクスチャを用いて(テクセルは毛皮表
面を扱う単位)、視線方向にテクセルを走査しながら色
計算を行う方法が提案されている。
【0013】Kajiya等による方法によれば、質感のある
毛を充分に表現することができる。しかしながら、各テ
クセル毎に毛の密度や毛の方向を設定して色計算時にこ
れを視線方向に走査する必要があるため、メモリ参照が
多く発生してしまい、色計算の時間的コストが増大して
しまう。また、3次元テクスチャを保持するために、大
容量のメモリが必要となる。
【0014】また、Dan B. Goldman著の"Fake Fur Rend
ering"(SIGGRAPH 97 Conference Proceedings pages 1
27-134)には、動物の非常に短い毛を表現するのに有効
な色計算方法である"Fake Fur"アルゴリズムについて提
案されている。Fake Furアルゴリズムは、上記のKajiya
等の方法とは異なり、視線方向にテクセルを探索する必
要がないことから、高速な色計算が可能となる。また、
テクスチャを保持する大容量メモリも必要でない。
【0015】以下では、このFake Furアルゴリズムにつ
いて説明しておく。
【0016】図6には、Fake Furアルゴリズムを実現す
る画像処理装置50の機能構成例を示している。
【0017】同図に示すように、画像処理装置50は、
毛の色を計算する毛色計算部51と、皮膚の色を計算す
る皮膚色計算部52と、これら各色計算部51及び52
から出力された毛の色及び皮膚の色を混合する混合部5
4と、毛の透過度を計算する透過度計算部53とで構成
される。本アルゴリズムにおいて、透過度の計算は重要
な役割を果たす。
【0018】この画像処理装置50では、毛色計算部5
1で毛の色が計算され、皮膚色計算部52で皮膚の色が
計算され、さらに、透過度計算部53では毛の方向と毛
の密度に関連する値を用いて毛の透過度を計算する。そ
して、混合部54では、透過度に基づいて、毛の色と皮
膚の色とを混合して、最終的な描画色Cを決定すること
ができる。
【0019】また、同図中で、毛色計算部51に入力さ
れるE,L,T,Nは、それぞれ、図7に示すように、
視線方向の正規化ベクトル、光源方向の正規化ベクト
ル、毛の方向の正規化ベクトル、及び皮膚表面の法線方
向の正規化ベクトルを示すものとする。
【0020】また、DAHは、毛の密度と毛の面積を乗
じた値である。例えば、図7に示すように、面積Asの
皮膚領域中に、上端の半径がrtで下端の半径がrbで
長さがlとなる毛(但し、毛の断面は円形とみなす)が
ni本だけ植設されているような場合、DAHは、以下
の式によって求めることができる。
【0021】
【数1】DAH=(ni/As)l(rt+rb)/2
【0022】Fake Furアルゴリズムでは、ni、As、
rt、rbという変数をそれぞれ独立に考慮する必要は
なく、DAHという単一の変数だけを考慮すればよい。
以下の説明では、変数DAHのみを用いて表すが、その
実体は[数1]に示したものと略同一であると理解され
たい。
【0023】前述したように、Fake Furアルゴリズムで
は透過度の計算が重要である。ベクトルT、ベクトル
N、及びベクトルVを用いて、毛がポアッソン(Poisso
n)分布に従うと仮定した場合、透過度αは、以下の式
のように近似的に表すことができる。但し、ベクトルV
は、ベクトルE又はベクトルLのいずれかであり、必要
に応じて選択される。
【0024】
【数2】α=1−exp(−DAH×sin(V,T)
/V・N)
【0025】透過度αは、ベクトルVの方向から皮膚及
び毛を眺めた場合に、その投影スクリーン上でどの程度
の割合で毛が見えるかを示す指標値である。αが1に近
いほど毛の見える割合が多いことを示し、0に近いほど
皮膚の見える割合が多いことを示す。
【0026】ベクトルEに対する透過度αeは、視点か
ら眺めた場合のスクリーン上での毛の割合を示す。ま
た、ベクトルLに対する透過度αlは、光源から眺めた
場合のスクリーン上での毛の割合を示し、これはすなわ
ち毛がスクリーン上におとす影の割合を求めていること
になる。
【0027】なお、αは、V、T、N、DAHをパラメ
ータとする関数であり、以下でこれを関数として取り扱
う場合には、α(V,T,N,DAH)と表記すること
にする。
【0028】図9には、Fake Furアルゴリズムに従う処
理手順をフローチャートの形式で示している。以下、こ
のフローチャートを参照しながら説明する。
【0029】まず、毛から毛に落とす影の影響を考慮す
る(ステップS1)。すなわち、毛色計算部51は透過
度計算部53にベクトルL、T、Nを与え、透過度計算
部53は光源から眺めた場合の透過度αlを上記の[数
2]に従って求め、これを毛色計算部51に渡す。
【0030】次いで、毛色計算部51は、影の影響αl
を考慮しながら毛の色Chを計算して、混合部54に出
力する(ステップS2)。
【0031】毛の色Chは、上述したKajiya等により提
案されるライティング式により求めた毛の色Ch’にα
lを考慮して、以下の式のように表すことができる。但
し、同式においてH2Hは、毛が毛に落とす影の影響の
度合いを調整するためのパラメータである。
【0032】
【数3】Ch=(1−H2H×αl)×Ch’
【0033】次いで、毛から皮膚に落とす影の影響を計
算する(ステップS3)。すなわち、皮膚色計算部52
は透過度計算部53にベクトルL、T、Nを与え、透過
度計算部53は光源から眺めた場合の透過度αlを上記
の[数2]に従って求め、これを皮膚色計算部52に渡
す。
【0034】なお、このステップS3で求める透過度α
lは、ステップS1で求めた透過度と同一であるので、
透過度計算部53は最初の計算結果を保持しておくこと
によって再度の計算を省略することができる。
【0035】次いで、皮膚色計算部52は、影の影響α
lを考慮しながら、皮膚の色Csを計算して、その結果
を混合部54に出力する(ステップS4)。
【0036】皮膚の色Csは、影を考慮しない皮膚の色
Cs’にαlを考慮して、以下の式のように表すことが
できる。
【0037】
【数4】Cs=(1−αl)×Cs’
【0038】次いで、毛と皮膚の見える割合を計算する
(ステップS5)。すなわち、混合部54は透過度計算
部53にE、T、Nを与える。これに対し、透過度計算
部53は視点から眺めた場合の透過度αeを上記の[数
2]に従って求め、混合部54に渡す。
【0039】次いで、混合部54は、毛と皮膚の見える
割合αeを用いて、毛色Chと皮膚色Csを、例えば以
下に示す混合式に従って混合して、最終的な描画色Cと
して出力する(ステップS6)。
【0040】
【数5】C=αe×Ch+(1−αe)×Cs
【0041】図9に示すようなFake Furアルゴリズムに
従って色計算を行うことにより、視線と毛の方向が直交
するような場合には毛の色が濃くなり、逆に視線と毛の
方向が平行な場合には皮膚の色が濃く見えるという短い
毛に特有の光学的現象を好適に表現することができる。
この結果、従来のPhongのライティング式を用いた
色計算方法における表現力の乏しさという問題を解消す
ることができる。
【0042】
【発明が解決しようとする課題】動物などの毛皮を表現
する方法は幾つか提案されているが、毛の1本1本をモ
デルとして取り扱うと、モデルの増加に伴う計算コスト
の増大や拡大に伴う画質劣化を招来する。
【0043】Kajiya等が提案する3次元テクスチャを用
いた方法は、視線方向へのテクセルの走査に伴う計算量
が大きく、またテクスチャ格納用の大容量メモリが必要
となる。これに対し、Fake Furアルゴリズムは動物の非
常に短い毛を計算するのに有効である(上述)。
【0044】しかしながら、Fake Furアルゴリズムは、
毛皮において通常感じられるような毛の流れを表現する
ことが困難である。すなわち、毛の流れの一部は毛の密
度が流れ方向に相関を持つことによって現れるが、従来
のFake Furアルゴリズムではこのような毛の流れを表現
することができない。
【0045】これは、Fake Furアルゴリズムが非常に短
い毛を対象としていることに依拠する。短い毛の密度分
布は、毛の方向とは無関係にほぼポアッソン分布に従
う。これに対し、充分に長い毛を用いて毛の方向に沿っ
て密度の相関を作り出せば、ポアッソン分布とは異なる
ような、流れを感じさせる密度分布を生じると考えられ
る。
【0046】本発明は以上のような技術的課題を勘案し
たものであり、その目的は、ラスタライズ過程において
各ピクセルに関する適当な描画色を決定するための色計
算を好適に行うことができる、優れた画像処理装置及び
画像処理方法を提供することにある。
【0047】本発明の更なる目的は、動物などの毛皮の
色計算を低い計算コストと少ないメモリ容量で行なうこ
とができる、優れた画像処理装置及び画像処理方法を提
供することにある。
【0048】本発明の更なる目的は、ポアッソン分布に
従わない長い毛の表現を可能とし、毛の流れを表現する
色計算を好適に行うことができる、優れた画像処理装置
及び画像処理方法を提供することにある。
【0049】
【課題を解決するための手段】本発明は、上記課題を参
酌してなされたものであり、その第1の側面は、毛皮の
色計算を行なう画像処理装置であって、毛の色を計算す
る毛色計算部と、皮膚の色を計算する皮膚色計算部と、
毛の方向と毛の密度に関連する値に基づく透過度に従っ
て毛の色と皮膚の色を混合する混合部とを備え、長い毛
を多層の短い毛として定義して各層の毛の色を前記毛色
計算部で計算し、前記混合部では、該多層に定義された
毛について、直前の層において得られた色を次の層にお
ける皮膚色として毛の色と混合することを特徴とする画
像処理装置である。
【0050】ここで、前記毛色計算部は毛が皮膚に落と
す影の影響及び/又は毛が毛に落とす影の影響を考慮し
ながら毛の色を計算するようにしてもよい。長い毛が多
層に定義されている場合には、毛の流れを影によって効
果的に表現することができる。
【0051】また、前記毛色計算部は、多層に定義され
た毛について、毛の材質パラメータを各層毎及び/又は
皮膚表面に沿って変化させて、異なる材質の毛が混在す
る様子を表現するようにしてもよい。
【0052】また、前記皮膚色計算部は毛から皮膚に落
とす影の影響を考慮しながら皮膚の色を計算するように
してもよい。
【0053】また、本発明の第1の側面に係る画像処理
装置は、さらに、上記多層に定義された毛について、下
層の毛の方向と下層の毛の密度に関連する値に基づい
て、上層の毛の密度に関連する値を計算する計算手段を
備えていてもよい。このような場合、前記混合部では、
該計算手段による計算値に基づく透過度に従って毛の色
と皮膚の色を混合することができる。
【0054】また、前記計算手段は、多層に定義された
毛について、毛の密度に関連する値を層の変化に応じて
所定の割合で変化させることにより、層の変化に応じて
全体的な毛のボリュームが変化する様子を表現すること
ができる。
【0055】あるいは、前記計算手段は、多層に定義さ
れた毛について、毛の方向と毛の密度に関連する値につ
いて乱数を導入することにより、揺らぎを持った毛の流
れを表現することができる。
【0056】また、本発明の第2の側面は、毛の方向と
毛の密度に関連する値に基づく透過度に従って毛の色と
皮膚の色を混合することによって毛皮の色計算を行なう
画像処理方法であって、皮膚の色を計算する皮膚色計算
ステップと、長い毛を多層の短い毛として定義して各層
の毛の色を計算する毛色計算ステップと、該多層に定義
された毛について、直前の層において得られた色を次の
層における皮膚色として毛の色と混合する混合ステップ
と、を具備することを特徴とする画像処理方法である。
【0057】ここで、前記毛色計算ステップでは毛が皮
膚に落とす影の影響及び/又は毛が毛に落とす影の影響
を考慮しながら毛の色を計算するようにしてもよい。長
い毛が多層に定義されている場合には、毛の流れを影に
よって効果的に表現することができる。
【0058】また、前記毛色計算ステップでは、多層に
定義された毛について、毛の材質パラメータを各層毎及
び/又は皮膚表面に沿って変化させて、異なる材質の毛
が混在する様子を表現するようにしてもよい。
【0059】また、前記皮膚色計算ステップでは毛から
皮膚に落とす影の影響を考慮しながら皮膚の色を計算す
るようにしてもよい。
【0060】また、本発明の第2の側面に係る画像処理
方法は、上記多層に定義された毛について、下層の毛の
方向と下層の毛の密度に関連する値に基づいて、上層の
毛の密度に関連する値を計算する計算ステップをさらに
備えていてもよい。このような場合、前記混合ステップ
では、該計算ステップによる計算値に基づく透過度に従
って毛の色と皮膚の色を混合することができる。
【0061】また、前記計算ステップでは、多層に定義
された毛について、毛の密度に関連する値を層の変化に
応じて所定の割合で変化させることにより、層の変化に
応じて全体的な毛のボリュームが変化する様子を表現す
ることができる。
【0062】あるいは、前記計算ステップでは、多層に
定義された毛について、毛の方向と毛の密度に関連する
値について乱数を導入することにより、揺らぎを持った
毛の流れを表現することができる。
【0063】また、本発明の第3の側面は、毛の方向と
毛の密度に関連する値に基づく透過度に従って毛の色と
皮膚の色を混合することによって毛皮の色計算を行なう
画像処理をコンピュータ・システム上で実行するように
記述されたコンピュータ・ソフトウェアをコンピュータ
可読形式で物理的に格納した記憶媒体であって、前記コ
ンピュータ・ソフトウェアは、皮膚の色を計算する皮膚
色計算ステップと、長い毛を多層の短い毛として定義し
て各層の毛の色を計算する毛色計算ステップと、該多層
に定義された毛について、直前の層において得られた色
を次の層における皮膚色として毛の色と混合する混合ス
テップと、を具備することを特徴とする記憶媒体であ
る。
【0064】本発明の第3の側面に係る記憶媒体は、例
えば、様々なプログラム・コードを実行可能な汎用性の
コンピュータ・システムに対して、コンピュータ・ソフ
トウェアをコンピュータ可読な形式で物理的に提供する
媒体である。このような媒体は、例えば、CD(Compac
t Disc)やFD(Floppy Disc)、MO(Magneto-Optic
al disc)などの着脱自在で可搬性の記憶媒体である。
あるいは、ネットワーク(ネットワークは無線、有線の
区別を問わない)などの伝送媒体などを経由してコンピ
ュータ・ソフトウェアを特定のコンピュータ・システム
にコンピュータ可読形式で提供することも技術的に可能
である。
【0065】このような記憶媒体は、コンピュータ・シ
ステム上で所定のコンピュータ・ソフトウェアの機能を
実現するための、コンピュータ・ソフトウェアと記憶媒
体との構造上又は機能上の協働的関係を定義したもので
ある。換言すれば、本発明の第3の側面に係る記憶媒体
を介して所定のコンピュータ・ソフトウェアをコンピュ
ータ・システムにインストールすることによって、コン
ピュータ・システム上では協働的作用が発揮され、本発
明の第1及び第2の各側面に係る画像処理装置及び方法
と同様の作用効果を得ることができる。
【0066】
【作用】本発明に係る画像処理装置は、長い毛を多層の
短い毛として定義して、各層の毛の色を毛色計算部で計
算し、混合部では直前の層において得られた色を次の層
における皮膚色として毛の色と混合する。すなわち、毛
の上にさらに毛を重ねて多層の色計算を順次行っていく
ことで、結果的に長い毛の色計算を実現することができ
る。
【0067】また、下の層の毛の密度に関連する値及び
毛の方向を基に上の層の毛の密度に関連する値を毛の密
度に関連する値を計算する手段をさらに備え、上の層に
おける透過度計算並びに混合処理に利用することができ
る。
【0068】あるいは、毛の密度に関連する値や毛の方
向に乱数を導入することで、長い毛の揺らぎを生じさせ
ることができる。
【0069】また、毛色計算部は、多層に表現された毛
が皮膚及び毛自身に及ぼす影響を考慮して毛の色を計算
するようにしてもよい。また、多層に表現された毛につ
いて、各層毎にあるいは皮膚表面に沿って、毛の材質パ
ラメータを変化させながら毛色の計算を行なうようにし
てもよい。
【0070】本発明のさらに他の目的、特徴や利点は、
後述する本発明の実施例や添付する図面に基づくより詳
細な説明によって明らかになるであろう。
【0071】
【発明の実施の形態】以下、図面を参照しながら本発明
の実施例を詳解する。
【0072】図1には、毛の色の上にさらに毛を重ねて
多層(図示の名では3層)に毛を表現する様子を示して
いる。
【0073】図示の通り、本発明に係る色計算アルゴリ
ズムによれば、Fake Furアルゴリズムで扱った短い毛を
多層にすることで、長い毛を表現することが可能とな
る。
【0074】同図において、各テクセル座標(図示の例
では、(u1,v1),(u2,v2),(u3,v
3),(u4,v4),(u5,v5)…)について、
各層毎に毛の方向の正規化ベクトルTが定義されてい
る。同様に、DAHについても、それぞれのテクセルに
ついて各層毎に定義されている。
【0075】以下の説明では、描画すなわち色計算した
いピクセルのテクセル座標を(u,v)とする。また、
テクセル座標(u,v)のi層目における毛の方向ベク
トルをT[u,v,i]とし、そのDAHをDAH
[u,v,i]と記述することにする。また、層の総数
をMとし、変数iは0からM−1までの整数とする。
【0076】i層目のDAHは、例えば下式に示すよう
に、i−1層目のDAHとTに基づいて計算することが
できる。
【0077】
【数6】 (iが0のとき) DAH[u,v,i]=DAH[u,v,0] (iが0でないとき) DAH[u,v,i] =clamp(du[u−1,v−1,i−1]) ×clamp(dv[u−1,v−1,i−1]) ×DAH[u−1,v−1,i−1] +clamp(1−|du[u,v−1,i−1]|) ×clamp(dv[u,v−1,i−1]) ×DAH[u,v−1,i−1] +clamp(−du[u+1,v−1,i−1]) ×clamp(dv[u+1,v−1,i−1]) ×DAH[u+1,v−1,i−1] +clamp(du[u−1,v,i−1]) ×clamp(1−|dv[u−1,v,i−1]|) ×DAH[u−1,v,i−1] +clamp(1−|du[u,v,i−1]|) ×clamp(1−|dv[u,v,i−1]|) ×DAH[u,v,i−1] +clamp(−du[u+1,v,i−1]) ×clamp(1−|dv[u+1,v,i−1]|) ×DAH[u+1,v,i−1] +clamp(du[u−1,v+1,i−1]) ×clamp(−dv[u−1,v+1,i−1]) ×DAH[u−1,v+1,i−1] +clamp(1−|du[u,v+1,i−1]) ×clamp(−dv[u,v+1,i−1]) ×DAH[u,v+1,i−1] +clamp(−du[u+1,v+1,i−1]) ×clamp(−dv[u+1,v+1,i−1]) ×DAH[u+1,v+1,i−1]
【0078】但し、上式において、clamp(x)
は、xの値が0以下の場合は0を、1以上の場合には1
を、それ以外の場合にはxを返す関数である。
【0079】また、上式において、du並びにdvはそ
れぞれ以下の式によって計算される。
【0080】
【数7】 du[u,v,i]=ρ(T[u,v,i]・PU[u,v]) dv[u,v,i]=ρ(T[u,v,i]・PV[u,v])
【0081】ここで、PU及びPVは、2次元テクセル
座標におけるu方向及びv方向の単位ベクトルである。
したがって、[数7]は毛の方向ベクトルTがu方向及
びv方向にどれだけの大きさを持っているかを示してい
る。また、ρは、各層間の高さの差がu,v各方向の1
テクセルに対して相対的にどれだけの大きさを持つかを
示す値である。
【0082】[数6]及び[数7]は、テクセル座標
(u,v)の近傍の9個のテクセルの毛の流れを考え
て、i−1層目の9個の隣接テクセルがi層目のテクセ
ル座標(u,v)なるテクセルにどの程度の毛を流れ込
ませるかを表現したものである。図2には、i−1層目
の9個の隣接テクセルがi層目のテクセル座標(u,
v)なるテクセルに毛を流れ込ませている様子を図解し
ている。
【0083】また、図3には、隣接するテクセルの一例
として、i−1層目のテクセル座標(u−1,v−1)
のテクセルからの毛がi層目のテクセル座標(u,v)
のテクセルに流れ込む様子を図解している。
【0084】流れ込む毛の量は、図3のうち塗りつぶし
た小さな四角の面積、すなわちdu[u−1,v−1,
i−1]×dv[u−1,v−1,i−1]となる。但
し、du[u−1,v−1,i−1]あるいはdv[u
−1,v−1,i−1]のいずれかが負となる場合があ
る。この場合は流れ込む毛の量は0であることを意味す
る。上記の[数6]では、関数clamp()を用いて
このような場合を表現している。
【0085】隣接する9個のテクセルすべてについて図
3に示すような影響を考慮することによって、[数6]
並びに[数7]が導き出されるということを充分理解さ
れたい。
【0086】なお、[数6]に従ってDAHを計算する
とき、算出されたDAHを一定の割合で変化させること
は有効である。例えば、層の変化に応じて全体的な毛の
ボリュームが変化する様子を表現することが可能とな
る。この場合には、[数6]の右辺の計算結果に変化さ
せる割合を乗じればよい。
【0087】また、[数6]のDAH[u,v,0]に
対して乱数の作用を導入することも有効である。例え
ば、0層目のDAHの揺らぎは、流れ方向(すなわちベ
クトルTの方向)に相関がなくても、層を重ねて[数
6]を順次計算していくことにより、流れ方向の相関を
生じさせることができる。
【0088】また、[数6]に従ってDAHを計算する
際に、計算された途中の層のDAHに乱数を導入するこ
とは有効である。この場合には、[数6]の右辺に乱数
で振らせた値を乗じればよい。
【0089】毛の方向ベクトルTは、すべての層、及び
/又は、すべてのテクセルで一定の方向に定義しておい
ても構わない。このようにすることで、毛の方向ベクト
ルTを各層、各テクセル毎に定義する必要がなくなり、
必要なメモリ容量が小さくて済む。
【0090】一方、ベクトルTに乱数を導入することに
よって、DAHへ与える乱数と同様に、多様な揺らぎの
効果を生ずることが可能である。
【0091】影を考慮した皮膚色の計算は、下式に示す
ように、影を考慮しない皮膚色Cs’に対して、上の層
の毛の累積的な効果を考慮することによって行なうこと
ができる。
【0092】
【数8】
【0093】また、影を考慮したi層目の毛の色の計算
は、下式に示すように、影を考慮しないi層目の毛の色
Ch’に対して、上の毛の累積的な効果を考慮すること
によって行なうことができる。
【0094】
【数9】
【0095】以上のように、Fake Furアルゴリズムを多
層に適用することによって、短い毛だけでなく、長い毛
のリアルな表現が可能となり、且つ、その毛の流れを表
現できるようになる。
【0096】なお、上記の[数6]及び[数7]に示し
たようなDAHの計算式及びテクセルに流れ込む毛の量
の計算式は一例に過ぎず、本発明の要旨はこれら各式に
限定されない。すなわち、下層の毛の密度及び方向と上
の層の毛の密度を関連付けることによって、最終的に一
番上の層では毛の流れが密度の相関となって現れてく
る。
【0097】また、多層に定義された毛について、各層
毎あるいは皮膚表面に沿って毛の材質パラメータを変化
させることは有効である。例えば、短い毛は白っぽい色
に、長い毛は茶色っぽい色に、それぞれ変化させること
により、異なる材質の毛が混在する場合の表現が可能と
なる。
【0098】図4には、本発明の実施に供される画像処
理装置1の機能構成を模式的に示している。
【0099】同図に示すように、画像処理装置10は、
毛の色を計算する毛色計算部1と、皮膚の色を計算する
皮膚色計算部2と、これら各色計算部1及び2から出力
された毛の色及び皮膚の色を混合する混合部4と、毛の
透過度を計算する透過度計算部3と、多層に計算を行う
ための繰り返し制御部5と、下層のDAH及びTから上
層のDAHを求めるためのDAH計算部6とで構成され
る。
【0100】この画像処理装置10では、毛色計算部1
で毛の色が計算され、皮膚色計算部2で皮膚の色が計算
され、さらに、透過度計算部3では毛の方向と毛の密度
に関連する値を用いて毛の透過度を計算する。そして、
混合部4では、透過度に基づいて、毛の色と皮膚の色と
を混合して、最終的な描画色Cを決定することができ
る。
【0101】透過度計算部3は、一度計算を行った透過
度を保持するための透過度保持部3−1を備えている。
【0102】また、制御部5は、すべての層の(u,
v)近傍のテクセルにおけるT及びDAHを所持するた
めの、T保持部5−1及びDAH保持部5−2を備えて
いる。また、制御部5は、繰り返し処理に関わる層番号
をカウントするための層番号カウンタ5−3を備えてい
る。
【0103】以下の説明では、透過度αe及びαlの値
をそれぞれαe[i]、αl[i]と記述する場合があ
るが、これはそれぞれ第i層目のαe、αlの値である
ことを示す。さらに、αlの値をαl[i1,i2]と
記述する場合には、i1層目からi2層目までのαlの
値の配列を示すものである。
【0104】また、T[u,v,i]、DAH[u,
v,i]、αe[i]、αl[i]において、*なる文
字をu、v、iのいずれか若しくはすべてのフィールド
に指定する場合がある。
【0105】u、vのフィールドに*を指定した場合
は、テクセル(u,v)における値のみではなく、
(u,v)の近傍のテクセル値をまとめて(すなわち配
列型で)表すものとする。また、iのフィールドに*を
指定した場合は、1つの層における値のみではなく、す
べての層(すなわち0〜M−1層)の値をまとめて(す
なわち配列型で)表すものとする。例えば、T[*,
*,i]は、i層目の(u,v)の近傍のすべてのテク
セルTを表す。また、DAH[*,*,*]は、すべて
の層における(u,v)の近傍のすべてのテクセルのD
AHを表す。
【0106】図5には、画像処理装置1上で実行される
毛皮の色計算処理の手順をフローチャートの形式で示し
ている。以下、このフローチャートに従って説明する。
【0107】まず、すべての層のDAHを計算する(ス
テップS11)。
【0108】制御部5は、DAH[*,*,0]を取得
する。また、制御部5は、T[*,*,*]を取得し
て、T保持部5−1に保持する。
【0109】その後、制御部5がDAH計算部6に対し
てDAH[*,*,i]及びT[*,*,i]を与え、
DAH計算部6が上記の式[数6]に従ってDAH
[*,*,i+1]を計算してその結果を制御部5に渡
す、という処理をi=0〜M−2に関して繰り返し実行
することによって、DAH[*,*,*]を求め、結果
をDAH保持部5−2に保持する。
【0110】次いで、すべての層の透過度を計算する
(ステップS12)。
【0111】制御部5は、DAH[u,v,*]及びT
[u,v,*]を透過度計算部3に出力する。また、透
過度計算部3は、ベクトルL、E、Nを取得して、これ
らの値を基に、上記の式[数2]に従って、すべての層
についての透過度αl[*]及びαe[*]を計算し
て、透過度保持部3−1に保持する。
【0112】次いで、影の影響を考慮しながら皮膚の色
を計算して、下層の色とする(ステップS13)。
【0113】透過度計算部3は、皮膚色計算部2に対し
て、αl[*]を与える。皮膚色計算部2は、L、E、
Nを取得して、これを用いて影を考慮しない皮膚の色C
s’を求める。
【0114】その後、皮膚色計算部2は、上記の式[数
8]に従って皮膚色Csを求め、制御部5に出力する。
そして、制御部5は、層カウンタ5−1の値を0に初期
化するとともに、取得した皮膚色Csを下層色Caとし
て混合部4に出力する。
【0115】次いで、影の影響を考慮しながら毛の色を
計算する(ステップS14)。
【0116】制御部5は、層番号カウンタ5−1の値i
を層番号iとして毛色計算部1に出力するとともに、層
番号iに相当するT[u,v,i]を毛色計算部1に出
力する。毛色計算部1は、取得した層番号を透過度計算
部3に与える。
【0117】透過度計算部3は、iから上のすべての層
の透過度、すなわちαl[i,M−1]を毛色計算部1
に出力する。
【0118】また、毛色計算部1は、ベクトルL、E、
Nを取得して、これらと取得したT[u,v,i]を用
いて、影を考慮しない毛の色Ch’を求める。そして、
毛色計算部1は、上記の式[数9]に従って毛色Chを
求めて、これを混合部4に出力する。
【0119】次いで、毛色と下層色が見える割合で混合
して、次の下層色とする(ステップS15)。
【0120】制御部5は、層番号カウンタ5−1の値i
を層番号iとして混合部4に出力する。混合部4は、こ
の層番号iを透過度計算部3に出力する。透過度計算部
3は、iの値に相当する透過度αe、すなわちαe
[i]を混合部4に出力する。
【0121】混合部4は、これらを用いて、以下の式に
従って混合色Cbを計算して制御部5に出力する。
【0122】
【数10】Cb=αe[i]×Ch+(1−αe
[i])×Ca
【0123】ここで、[数10]は上述の式[数5]と
まったく同じ意味の式であるが、記号の変更に応じて修
正したものである。
【0124】制御部5は、与えられた混合色Cbを、そ
のまま次の下層色Caとして、混合部4に出力する。
【0125】次いで、上層が未だあるか否かをチェック
する(ステップS16)。
【0126】制御部5は、層番号カウンタ5−1の値が
M−1よりも小さいならば、層番号間歌5−1の値をイ
ンクリメントした後、ステップS4に戻って上記と同様
の処理を繰り返し行う。他方、層番号カウンタ5−1の
値がM−1以上であれば、次ステップS17に進む。
【0127】ステップS17では、混合色を描画色とし
て出力する。すなわち、制御部5は、混合部4より取得
した混合色Cbを、最終的な描画色Cとして出力して、
本処理ルーチン全体を終了する。
【0128】[追補]以上、特定の実施例を参照しなが
ら、本発明について詳解してきた。しかしながら、本発
明の要旨を逸脱しない範囲で当業者が該実施例の修正や
代用を成し得ることは自明である。すなわち、例示とい
う形態で本発明を開示してきたのであり、限定的に解釈
されるべきではない。本発明の要旨を判断するために
は、冒頭に記載した特許請求の範囲の欄を参酌すべきで
ある。
【0129】
【発明の効果】以上詳記したように、本発明によれば、
ラスタライズ過程において各ピクセルに関する適当な描
画色を決定するための色計算を好適に行うことができ
る、優れた画像処理装置及び画像処理方法を提供するこ
とができる。
【0130】また、本発明によれば、動物などの毛皮の
色計算を低い計算コストと少ないメモリ容量で行なうこ
とができる、優れた画像処理装置及び画像処理方法を提
供することができる。
【0131】また、本発明によれば、ポアッソン分布に
従わない長い毛の表現を可能とし、さらに毛の流れを表
現する色計算を好適に行うことができる、優れた画像処
理装置及び画像処理方法を提供することができる。
【0132】本発明に係る画像処理装置及び方法によれ
ば、毛の色の上にさらに毛を重ねて多層に色計算を行な
うことによって、従来のFake Furアルゴリズムを利用し
ながら長い毛を表現することができる。
【0133】また、本発明に係る画像処理装置及び方法
によれば、下の層の毛の密度に関連する値及び/又は毛
の方向から、上の層の毛の密度に関連する値の計算を行
なうことによって、毛の流れを表現することができる。
【0134】また、本発明に係る画像処理装置及び方法
によれば、毛の密度に関連する値を、層の変化に応じて
一定の割合で変化させるようにすることによって、層の
変化に応じて全体的な毛のボリュームが変化する様子を
表現することができる。
【0135】また、本発明に係る画像処理装置及び方法
によれば、毛の密度及び毛の方向について乱数を導入す
ることで、揺らぎを生じさせて、揺らぎを持った毛の流
れを表現することができる。
【0136】また、本発明に係る画像処理装置及び方法
によれば、多層に表現された毛が皮膚及び毛自身に及ぼ
す影響を計算することによって、毛の流れを影により効
果的に表現することができる。
【0137】また、本発明に係る画像処理装置及び方法
によれば、多層に表現された毛について、各層毎あるい
は皮膚表面に沿って毛の材質パラメータを変化させるこ
とによって、異なる材質の毛が混在する様子を表現する
ことができる。
【図面の簡単な説明】
【図1】毛の色の上にさらに毛を重ねて多層(図示の名
では3層)に毛を表現する様子を示した図である。
【図2】テクセル座標(u,v)の近傍の9個のテクセ
ルの毛の流れを考えて、i−1層目の9個の隣接テクセ
ルがi層目のテクセル座標(u,v)なるテクセルに流
れ込ませている様子を示した図である。
【図3】i−1層目のテクセル座標(u−1,v−1)
のテクセルからの毛がi層目のテクセル座標(u,v)
のテクセルに流れ込む様子を描写した図である。
【図4】本発明の実施に供される画像処理装置1の機能
構成を模式的に示した図である。
【図5】画像処理装置1上で実行される毛皮の色計算処
理の手順を示したフローチャートである。
【図6】Fake Furアルゴリズムを実現する画像処理装置
50の機能構成(従来例)を示した図である。
【図7】毛色計算部51に入力されるE,L,T,Nを
説明するための図である。
【図8】DAHの計算方法を説明するための図である。
【図9】Fake Furアルゴリズムに従う描画色決定の処理
手順(従来例)を示したフローチャートである。
【符号の説明】
2…毛色計算部 3…皮膚色計算部 4…透過度計算部 5…制御部 6…DAH計算部 10…画像処理装置(本発明) 50…画像処理装置(従来例) 51…毛色計算部 52…皮膚色計算部 53…透過度計算部 54…混合部

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】毛皮の色計算を行なう画像処理装置であっ
    て、 毛の色を計算する毛色計算部と、皮膚の色を計算する皮
    膚色計算部と、毛の方向と毛の密度に関連する値に基づ
    く透過度に従って毛の色と皮膚の色を混合する混合部と
    を備え、 長い毛を多層の短い毛として定義して各層の毛の色を前
    記毛色計算部で計算し、 前記混合部では、該多層に定義された毛について、直前
    の層において得られた色を次の層における皮膚色として
    毛の色と混合することを特徴とする画像処理装置。
  2. 【請求項2】前記毛色計算部は毛が皮膚に落とす影の影
    響及び/又は毛が毛に落とす影の影響を考慮しながら毛
    の色を計算することを特徴とする請求項1に記載の画像
    処理装置。
  3. 【請求項3】前記毛色計算部は、多層に定義された毛に
    ついて、毛の材質パラメータを各層毎及び/又は皮膚表
    面に沿って変化させることを特徴とする請求項1に記載
    の画像処理装置。
  4. 【請求項4】前記皮膚色計算部は毛から皮膚に落とす影
    の影響を考慮しながら皮膚の色を計算することを特徴と
    する請求項1に記載の画像処理装置。
  5. 【請求項5】上記多層に定義された毛について、下層の
    毛の方向と下層の毛の密度に関連する値に基づいて、上
    層の毛の密度に関連する値を計算する計算手段をさらに
    備え、 前記混合部では、該計算手段による計算値に基づく透過
    度に従って毛の色と皮膚の色を混合することを特徴とす
    る請求項1に記載の画像処理装置。
  6. 【請求項6】前記計算手段は、多層に定義された毛につ
    いて、毛の密度に関連する値を層の変化に応じて所定の
    割合で変化させることを特徴とする請求項5に記載の画
    像処理装置。
  7. 【請求項7】前記計算手段は、多層に定義された毛につ
    いて、毛の方向と毛の密度に関連する値について乱数を
    導入することを特徴とする請求項5に記載の画像処理装
    置。
  8. 【請求項8】毛の方向と毛の密度に関連する値に基づく
    透過度に従って毛の色と皮膚の色を混合することによっ
    て毛皮の色計算を行なう画像処理方法であって、 皮膚の色を計算する皮膚色計算ステップと、 長い毛を多層の短い毛として定義して各層の毛の色を計
    算する毛色計算ステップと、 該多層に定義された毛について、直前の層において得ら
    れた色を次の層における皮膚色として毛の色と混合する
    混合ステップと、を具備することを特徴とする画像処理
    方法。
  9. 【請求項9】前記毛色計算ステップでは毛が皮膚に落と
    す影の影響及び/又は毛が毛に落とす影の影響を考慮し
    ながら毛の色を計算することを特徴とする請求項7に記
    載の画像処理方法。
  10. 【請求項10】前記毛色計算ステップでは、多層に定義
    された毛について、毛の材質パラメータを各層毎及び/
    又は皮膚表面に沿って変化させることを特徴とする請求
    項8に記載の画像処理方法。
  11. 【請求項11】前記皮膚色計算ステップでは毛から皮膚
    に落とす影の影響を考慮しながら皮膚の色を計算するこ
    とを特徴とする請求項8に記載の画像処理方法。
  12. 【請求項12】上記多層に定義された毛について、下層
    の毛の方向と下層の毛の密度に関連する値に基づいて、
    上層の毛の密度に関連する値を計算する計算ステップを
    さらに備え、 前記混合ステップでは、該計算ステップによる計算値に
    基づく透過度に従って毛の色と皮膚の色を混合すること
    を特徴とする請求項8に記載の画像処理方法。
  13. 【請求項13】前記計算ステップでは、多層に定義され
    た毛について、毛の密度に関連する値を層の変化に応じ
    て所定の割合で変化させることを特徴とする請求項12
    に記載の画像処理方法。
  14. 【請求項14】前記計算ステップでは、多層に定義され
    た毛について、毛の方向と毛の密度に関連する値につい
    て乱数を導入することを特徴とする請求項12に記載の
    画像処理方法。
  15. 【請求項15】毛の方向と毛の密度に関連する値に基づ
    く透過度に従って毛の色と皮膚の色を混合することによ
    って毛皮の色計算を行なう画像処理をコンピュータ・シ
    ステム上で実行するように記述されたコンピュータ・ソ
    フトウェアをコンピュータ可読形式で物理的に格納した
    記憶媒体であって、前記コンピュータ・ソフトウェア
    は、 皮膚の色を計算する皮膚色計算ステップと、 長い毛を多層の短い毛として定義して各層の毛の色を計
    算する毛色計算ステップと、 該多層に定義された毛について、直前の層において得ら
    れた色を次の層における皮膚色として毛の色と混合する
    混合ステップと、を具備することを特徴とする記憶媒
    体。
JP2000218919A 2000-07-19 2000-07-19 画像処理装置及び画像処理方法、並びに、記憶媒体 Pending JP2002032777A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000218919A JP2002032777A (ja) 2000-07-19 2000-07-19 画像処理装置及び画像処理方法、並びに、記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000218919A JP2002032777A (ja) 2000-07-19 2000-07-19 画像処理装置及び画像処理方法、並びに、記憶媒体

Publications (1)

Publication Number Publication Date
JP2002032777A true JP2002032777A (ja) 2002-01-31

Family

ID=18713795

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000218919A Pending JP2002032777A (ja) 2000-07-19 2000-07-19 画像処理装置及び画像処理方法、並びに、記憶媒体

Country Status (1)

Country Link
JP (1) JP2002032777A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012059052A (ja) * 2010-09-09 2012-03-22 Konami Digital Entertainment Co Ltd 画像処理装置、画像処理装置の制御方法、及びプログラム
WO2020125785A1 (zh) * 2018-12-21 2020-06-25 北京达佳互联信息技术有限公司 毛发渲染方法、装置、电子设备和存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012059052A (ja) * 2010-09-09 2012-03-22 Konami Digital Entertainment Co Ltd 画像処理装置、画像処理装置の制御方法、及びプログラム
WO2020125785A1 (zh) * 2018-12-21 2020-06-25 北京达佳互联信息技术有限公司 毛发渲染方法、装置、电子设备和存储介质
US11393154B2 (en) 2018-12-21 2022-07-19 Beijing Dajia Internet Information Technology Co., Ltd Hair rendering method, device, electronic apparatus, and storage medium

Similar Documents

Publication Publication Date Title
Praun et al. Real-time hatching
Dollner et al. Texturing techniques for terrain visualization
CN106575445B (zh) 毛皮虚拟化身动画
US7777745B2 (en) Edge effect
JP2004521422A (ja) テクスチャ処理方法および装置
CN110866967B (zh) 水波纹渲染方法、装置、设备及存储介质
Bruckner et al. Hybrid visibility compositing and masking for illustrative rendering
US7064753B2 (en) Image generating method, storage medium, image generating apparatus, data signal and program
CN116670723A (zh) 用于定制产品的合成视图的高质量渲染的系统和方法
CN113822981B (zh) 一种图像渲染方法、装置、电子设备及存储介质
CN114693856B (zh) 对象生成方法、装置、计算机设备和存储介质
CN111773719A (zh) 虚拟对象的渲染方法和装置、存储介质、电子装置
Suarez et al. Real-time 3D rendering with hatching
JP3326051B2 (ja) 模擬海洋波画像の生成方法および生成装置
US8952968B1 (en) Wave modeling for computer-generated imagery using intersection prevention on water surfaces
JP2002032777A (ja) 画像処理装置及び画像処理方法、並びに、記憶媒体
Talgorn et al. Real-time sketch-based terrain generation
JP4060375B2 (ja) スポットライト特性形成方法及びこれを用いた画像処理装置
Pastor et al. Frame-Coherent Stippling.
US8217955B2 (en) Producing wrinkles and other effects for a computer-generated character based on surface stress
US11132836B2 (en) Method for determining real world measurements from an apparel 3D model
JP2002015336A (ja) 画像処理装置及び画像処理方法、並びに、記憶媒体
Lee et al. Point-Based Stylization: An Interactive Rendering Approach for Non-Uniform Artistic Representation
Staudhammer et al. Computer graphics for half-tone three-dimensional object images
Steiner Post processing effects