日本バーチャルリアリティ学会第 11 回大会論文集 (2006 年 9 月) CG 描画のためのアウトラインカラースペクトル Outlined Color Spectrum for CG Rendering 渡辺啓蔵 Keizo WATANABE 株式会社 数理設計研究所 (〒 371-0816 群馬県前橋市上佐鳥町 54-2, wakei dol.hi-ho.ne.jp) Abstract : A new color reproduction system for CG rendering is proposed instead of conventional RGB system. Each of spectral luminance and spectral reflectance is defined as a piecewise linear function with a limited number of control points and that enables processing of both smoothly distributed and spiky spectra. The number of the control points forming that a function is kept constant in spite of light reflecting and color mixing operations to consume much less memory. Key Words: Outlined Color Spectrum, Spectral Luminance, Spectral Reflectance 1. はじめに (a) では赤色 LED (∼630 nm) と緑色 LED (∼530 nm) を 従来,CG を作成する上での色再現には RGB 等の三原 組み合わせたものを,図 2 (b) では黄色 LED (∼587 nm) 色が多く用いられてきた.熱放射による光源や自然物体に を単独で用いている.白色の球に反射された光はほぼ同色 よる反射を想定した場合はこれで十分だが,ルミネセンス に見えるが,赤色の球に反射された光は異なる色を示して による光源 [1] や光の干渉を利用した塗料 [2] による反射を いる.一般的な赤色塗料は波長 600 nm 以上の光のみをよ 想定した場合には鋭いピークを持つスペクトルを扱わなく く反射するため,同じ赤色の球上でも,図 2 (a) では赤色 てはならないため,正確な色再現が困難になる. LED からの光が強いまま観察され,図 2 (b) では黄色 LED からの光が大きく減じられて観察されている. 白色光源下で図 1 の写真のような色を呈する物体に,黄 この様子を RGB 三原色を用いて CG 上に再現し,図 3 色の光を当てた様子を図 2 の写真に示す.光源として図 2 に示す.図 2 の写真と同じく図 3 (a), (b) で異なる光源を 用いたが,写真に見られたような違いが現れない.RGB 三 原色を用いた場合は赤色 LED と緑色 LED の混合色も,黄 色 LED の単色光も R 成分と G 成分を足したものとして扱 われ,細かな分光情報が無視されるためである. このような不具合を解決するために,分光的色再現を可 能にする数々の手法が考案されてきた [3][4].本研究ではア ウトラインカラースペクトルと称した,輝度と反射率に関 する分光情報を折れ線一次関数で管理する手法を提案する. 図 1: 白色光源下の写真 (a) (b) (a) (b) 図 2: 写真 (a) 赤色 LED と緑色 LED の混合色光源下, 図 3: RGB 三原色を用いた CG (a) 赤色 LED と緑色 (b) 黄色 LED の単色光源下 LED の混合色光源下,(b) 黄色 LED の単色光源下 414 Spectral Reflectance Rλ [%] 3 Spectral Luminance Lλ [cd/m ] x 1013 1.0 0.8 0.6 0.4 0.2 0 380 500 600 700 780 100 80 60 40 20 0 380 500 600 700 780 Wavelength λ [nm] Wavelength λ [nm] 図 4: 折れ線関数で定めたタングステンランプの輝度 図 5: 折れ線関数で定めた赤色塗料の反射率 2. 分光情報の設定 2.1 塗料の分光反射率である.輝度の場合と異なり,左右両端 分光輝度 の制御点は横軸と平行に伸ばした直線でグラフ両端と結ぶ. 放射輝度 Le [W/sr/m2 ] は物理量であるため,異なる波 輝度の場合と同様,制御点の波長 λ を定めるために 8 ビッ 長ごとの強度である分光放射輝度 Le,λ [W/sr/m3 ] の線形和 トの記憶領域を使用する.制御点の分光反射率 Rλ は 8 ビッ と等しくなる.一方,輝度 L [cd/m2 ] は物理刺激量であり, トの符号なし整数を用いて 256 階調で表す.1 つの制御点 波長ごとの強度に分けることは厳密にはできない.しかし, を定めるために計 16 ビットを費やすことになり,図 5 のよ ある程度の加法則は成立する [5] ことから,本研究において うな 10 個の制御点から構成される分光反射率を設定するた は分光輝度 Lλ [cd/m3 ] なるものを めには 160 ビットの記憶領域を要することになる. Lλ = Km V (λ)Le,λ (1) 3. 分光情報の演算 3.1 780 Lλ dλ L= 制御点削減 記憶領域の節約のため,分光輝度を構成する制御点の数 (2) に上限 N を設ける.入力された分光輝度の制御点数が N 380 より大きい場合や,後に述べる 3.2, 3.3 の演算の過程で N を超えた場合には,以下に述べる手順によって制御点を削 と定義する.ここで Km = 683 [lm/W] と V (λ) は CIE の 定めた明所視における,最大視感効果度と標準分光視感効率 減する.例として図 6 のような分光輝度を挙げる.説明の である.これを用いて輝度に関する分光情報を波長 λ [nm] 必要上,同一の値を持つ 2 つのグラフを並べて表示する. に対する分光輝度 Lλ の折れ線一次関数として設定する.図 この分光輝度は 11 個の制御点で設定されている.ここで 4 にこうして定められたタングステンランプの分光輝度を示 N = 10 とした場合,1 つの制御点を削除しなくてはならな す.グラフ中の小さい円は一次関数の直線同士の接続部を い.このとき,輝度 L を極力変化させないことを削除対象 表しており,これらを制御点と呼ぶことにする.グラフに の制御点を選ぶ基準とする.2.1 で述べたように L はグラ おけるこれら制御点の座標を決定すると,折れ線関数は一 フ上の折れ線関数に囲まれた面積に比例する.従って図 6 の 意に定まる.このとき左,右両端の制御点はそれぞれグラ グラフ上の赤く塗られた三角形の面積は,各制御点を削除 フ両端の (380, 0) と (780, 0) の座標と直線で結ばれる. した際に増加,または減少する輝度の値を表すことになる. この例の場合,この三角形の面積が最も小さい制御点 k が 制御点の座標を決定するための記憶領域を次のように割 り当てる.まず,波長 λ を表す横軸を 380 nm から 780 nm 削除対象となる.これを削除した結果,図 7 の折れ線関数 まで 2 nm ずつに刻み,201 点のいずれかを 8 ビット符号 で表される分光輝度を得る. なし整数で定める.分光輝度 Lλ を表すのには 8 ビットの 複数の制御点を削除する必要がある場合は,この作業を制 仮数部,8 ビットの 2 を基数とする指数部からなる 16 ビッ 御点が N 個になるまで繰り返す.その後,全ての制御点の Lλ ト符号なし浮動小数点数を用いる.計 24 ビットを用いて 1 に,制御点削減前の削減後に対する輝度の比 Lbefore /Lafter つの制御点を定める.図 4 に示した分光輝度は 10 個の制御 を乗じて輝度の合わせこみを行う.Lbefore , Lafter はグラフ 点で構成されるため,240 ビットの記憶領域が必要になる. 上の折れ線関数に囲まれた面積を求めることにより容易に 算出される. 波長を細かく指定できるため,単色性の高い光が扱える. 3.2 最も単色性の高いものでは,スペクトル半値幅 1 nm のレー 反射 波長 λ において,ある光源の分光輝度が L1λ ,ある物体 ザ光を設定することもできる.また,(2) 式より輝度 L はグ ラフ上の折れ線関数に囲まれた領域の面積に比例する. の分光反射率が Rλ である場合,反射後の光の同波長にお 2.2 ける分光輝度 L0λ は 分光反射率 反射率の分光情報も波長 λ に対する分光反射率 Rλ [%] L0λ = Rλ L1λ の折れ線一次関数として設定する.図 5 に示したのは赤色 415 (3) e 0.8 0.6 0.4 i c 0.2 0 a g 380 500 k 600 700 780 x 1013 tungsten lamp luminance 1.0 80 0.6 60 0.4 40 0.2 20 0 0 380 500 600 700 780 Wavelength λ [nm] 13 x 10 3 図 8: タングステンランプの分光輝度と赤色塗料の分光反 1.0 d 射率 0.8 Spectral Luminance Lλ [cd/m3] Spectral Luminance Lλ [cd/m ] 100 0.8 Wavelength λ [nm] 0.6 0.4 h f 0.2 b j 0 380 500 600 700 780 Wavelength λ [nm] 図 6: 制御点削除前の分光輝度 13 x 10 before reduction 1.0 after reduction 0.8 0.6 0.4 0.2 0 380 500 600 700 780 Wavelength λ [nm] 13 x 10 3 1.0 d e 図 9: タングステンランプの光の赤色塗料による反射 0.8 Spectral Luminance Lλ [cd/m3] Spectral Luminance Lλ [cd/m ] red paint reflectance Spectral Reflectance Rλ [%] 1.0 Spectral Luminance Lλ [cd/m3] 3 Spectral Luminance Lλ [cd/m ] x 1013 0.6 0.4 c 0.2 h i f b 0 a 380 j g 500 k 600 700 780 Wavelength λ [nm] 図 7: 制御点削除後の分光輝度 14 x 10 tungsten lamp luminance 1.0 blue LED luminance 0.8 0.6 0.4 0.2 0 380 500 600 700 780 Wavelength λ [nm] 図 10: タングステンランプと青色 LED の分光輝度 とすることで得られる.本来ならば全波長域に渡ってこの Spectral Luminance Lλ [cd/m3] 計算を行い反射後の分光輝度を得るべきであるが,その場 合は結果が折れ線二次関数となり扱いづらい.本手法では 以下の手順で折れ線一次関数による近似値を得る. まず,分光輝度と分光反射率の制御点のいずれかが存在 する波長においてのみ (3) 式の計算を行い,得られた L0λ と λ で新たな制御点を作成する.こうして得た制御点全て を直線で結ぶと折れ線一次関数が得られるため,これを反 射後の分光輝度とする.この手順を経て図 8 中に示したタ ングステンランプの光が,同じく図 8 中の赤色塗料に反射 x 1014 1.0 before reduction after reduction 0.8 0.6 0.4 0.2 0 380 500 600 700 780 Wavelength λ [nm] される様子を再現し,反射後の分光輝度を得た.図 9 中の 図 11: タングステンランプと青色 LED の光の混合 緑の折れ線関数がそれである.この例では反射前の分光輝 度,分光反射率が共に 10 個の制御点で構成されていたため, して図 9 中に示した. 反射後の分光輝度は 20 個の制御点から成っている.制御点 3.3 のいくつかは同じ位置に重なっている. 2 色混合 波長 λ において,分光輝度 L1λ と L2λ の光を混合した場 次に,得られた分光輝度の制御点の数が N を超える場合, 合,混合後の光の分光輝度 L0λ は 3.1 で述べた手順に従って制御点を削減する.この例では N = 10 として制御点削減を行い,結果を黒の折れ線関数と L0λ = L1λ + L2λ 416 (4) Blue LED Green LED Blue LED Red LED Green LED (a) Red LED (b) 図 13: アウトラインカラースペクトルを用いた白色光源下 図 12: 分光視感効率により得られる画像の違い (a) V (λ) の CG を用いた場合,(b) Vb,10 (λ) を用いた場合 となる.ここでも制御点の存在する波長においてのみ (4) 式 の計算を行い,L0λ と λ で新たに作成した制御点を直線で 結び折れ線一次関数を得る.この場合は全波長域に渡って 分光輝度を加算した場合と同じ結果が得られる.図 10 中に 示した,それぞれ 10 個の制御点から成るタングステンラン (a) プと青色 LED の光を混合した場合,まず図 11 中の,20 個 図 14: アウトラインカラースペクトルを用いた CG (a) 赤 の制御点で構成される緑の折れ線関数が得られる. 色 LED と緑色 LED の混合色光源下,(b) 黄色 LED の その後,3.1 に従い制御点が N 個になるまで削減する. 単色光源下 この例では N = 10 として,図 11 中に黒の折れ線関数で表 される分光輝度を得た. 4. 6. N = 10 とし,分光視感効率には Vb,10 (λ) を用いた.図 13 最終的に得られた分光輝度 Lλ は CIE 1931 等色関数 x̄(λ), 780 X= 380 アウトラインカラースペクトルを用いた CG 描画 本手法を用いて 1. で述べた物体を CG 上に再現した. CIE 1931 表色系への変換 ȳ(λ), z̄(λ) を用いて (b) の CG は図 1 の写真に,図 14 の CG は図 2 の写真に対応 する.図 14 (a), (b) 共に白色の球に反射された光はほぼ同 x̄(λ) Lλ dλ V (λ) 色に見えるが,赤色の球に反射された光は光源の組み合わ (5) せに依存して異なる色を示しており,写真の様子がよく再 現されている. 780 Y = 380 ȳ(λ) Lλ dλ V (λ) 参考文献 (6) [1] K. Bando, K. Sakano, Y. Noguchi and Y. Shimizu: Development of High-bright and Pure-white LED 780 Z= 380 z̄(λ) Lλ dλ V (λ) Lamps, Journal of Light and Visual Environment, (7) Vol. 22, No. 1, pp. 2-5, 1998. [2] R. W. Phillips, T. Mayer and G. S. Ash: Opti- と CIE 1931 表色系へ変換できる. cally variable printing ink, United States Patent No. 本稿では更に IEC 61966-2-1 に従い 8 ビット sRGB 値に 5279657, 1994. [3] M. G. Raso and A. Fournier: A Piecewise Polynomial 変換し,画像を作成した. Approach to Shading Using Spectral Distributions, 5. 図 12 は本手法を用い,N = 10 の条件で作成した CG で Proceedings Graphics Interface ’91, pp. 40-46, 1991. [4] M. S. Peercy: Linear Color Representations for Full ある.白色の球に赤色 LED (∼630 nm),緑色 LED (∼530 Spectral Rendering, SIGGRAPH 93 Conference Pro- nm),青色 LED (∼470 nm) の光が 3 方向から当たる様子 ceedings, pp. 191-198, 1993. [5] W. de W. Abney: Researches in Colour Vision and 分光視感効率の選択 を表した.図 12 (a) では複数の光が重ねて当たる部分で青 the Trichromatic Theory, Longmans, Green and Co., 色の光が欠けている.これは青色等の短波長部分における pp. 105-106, 1913. [6] Commission Internationale de l’Éclairage: Spectral 標準分光視感効率 V (λ) の値が他の波長部分と比較して極 端に小さく,制御点削減時にこの部分の制御点が優先的に luminous efficiency functions based upon brightness 削除されるためである.図 12 (b) では分光視感効率として matching for monochromatic point sources, 2˚ and V (λ) の替わりに 視野角 10˚における,単色光の直接比較法 10˚fields, Publication CIE No. 75, 1988. に基づく Vb,10 (λ) [6] を用いてこの不具合を改善した. 417
© Copyright 2026 Paperzz