JPH1153576A - 天空画像作成装置 - Google Patents

天空画像作成装置

Info

Publication number
JPH1153576A
JPH1153576A JP21313797A JP21313797A JPH1153576A JP H1153576 A JPH1153576 A JP H1153576A JP 21313797 A JP21313797 A JP 21313797A JP 21313797 A JP21313797 A JP 21313797A JP H1153576 A JPH1153576 A JP H1153576A
Authority
JP
Japan
Prior art keywords
sky
value
image
cloud
fractal
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.)
Withdrawn
Application number
JP21313797A
Other languages
English (en)
Inventor
Makoto Yasuda
安田  真
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP21313797A priority Critical patent/JPH1153576A/ja
Publication of JPH1153576A publication Critical patent/JPH1153576A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 天空画像を、画像としての現実性を保ちつ
つ、高速で描画する。 【解決手段】 天空画像の全天を表す、複数の多角形で
構成されたフレームを設定するフレーム設定手段12
と、多角形頂点のうちの雲画像を構成する多角形頂点の
各々について、フラクタル値を雲画像の雲厚として当該
雲画像の雲内部の太陽光線の経路長をこの天空画像にお
ける太陽光線照射方向に基づいて算出し、カラーデータ
の輝度値を経路長に基づいて指数関数的に減衰させた減
衰輝度値を算出する減衰輝度算出手段16と、減衰輝度
値と天空輝度分布の算出結果とを各多角形頂点について
それぞれ加色合成し、加色合成結果に基づいて天空画像
を生成する加色合成手段20とを具える。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、コンピュータグ
ラフィックス(CG)を用いて見かけの天空画像(雲を
含む空の画像)を作成する装置に関する。
【0002】
【従来の技術】従来のコンピュータグラフィックスを用
いた天空画像、特に空の色の作成方法の一例が、文献
1:「情報処理学会第36回(昭和63年前期)全国大
会の予稿集、1Z−1、p2069」に開示されてい
る。この文献1に開示の技術によれば、任意の時刻の天
空輝度の不均一な分布を求めて、自然で現実的な天空画
像を実現している。この技術によれば、天空輝度分布を
求めるにあたり、太陽位置、大気およびエアロゾルによ
る光の散乱・吸収効果を、大気の密度分布も考慮した計
算により導入している。
【0003】また、従来のコンピュータグラフィックス
を用いた天空画像、特に曇り空の作成方法の一例が、文
献2:「特開平6−180748号公報」に開示されて
いる。この文献2に開示の技術によれば、直接テクスチ
ャ画像を用いるのではなく、原テクスチャ材質データを
画像成形して透明度を設定した後、半透明テクスチャを
作成し、これをポリゴン上にマッピングすることで曇り
空を表現している。
【0004】また、従来のコンピュータグラフィックス
を用いた天空画像、特に雲の形状の作成方法の一例が、
文献3:「Visual Computing’94
V−4,pp.97−98」に開示されている。この文
献3に開示の技術によれば、雲の形状を対話的に決定し
たものをデータベースに登録し、これを景観画面内の任
意の位置に配置し得るようにしたものである。雲の形状
は楕円体を基本として、その表面に正弦波により形状の
変化をつけている。
【0005】
【発明が解決しようとする課題】しかしながら、上記の
文献1に開示の技術によれば、天空輝度分布を計算する
ために、天球を微細な帯光源等の要素に細かく分割し
て、視野に及ぼす各要素からの寄与を数値積分により求
め、その上、スペクトル計算を行なう際には空気分子密
度の高度依存性も考慮する必要がある。このため、文献
1に開示の技術によれば、天空輝度分布を計算するため
に膨大な計算が必要となり、その結果、多大な時間を要
するという問題点がある。
【0006】また、上記の文献2に開示の技術によれ
ば、現実的な天空画像が得られるが、予め用意された濃
淡画像とテクスチャ材質で決まる画像しか表示すること
ができない。このため、文献2に開示の技術では、様々
な天候状態や空模様の時間変化などを随時イメージ通り
に生成して表現することができないという問題点があっ
た。
【0007】また、上記の文献3に開示の技術によれ
ば、雲画像の雲の形状種類が限られている。実際の雲の
形状の特徴は周知にようにフラクタル性にある。このた
め、限られた種類の形状の雲を画像に配置したところ
で、自然な感じは得られない。また、文献3に開示の技
術では、予め用意した画像しか表示できないので、様々
な天候状態や空模様の時間変化などを随時イメージ通り
に生成して表現することができないという問題点があっ
た。
【0008】このため、天空画像を画像としての現実性
を保ちつつ、高速で描画できる天空画像作成装置の実現
が望まれていた。
【0009】
【課題を解決するための手段】
(第1の天空画像作成装置)この発明の第1の天空画像
作成装置によれば、天空画像の全天を表す、複数の多角
形で構成されたフレームを設定するフレーム設定手段
と、フレームの多角形頂点の各々について、フラクタル
手法により発生させたフラクタル値をそれぞれ設定し、
当該フラクタル値に基づいて、天空画像のうちの空画像
を構成する多角形頂点と雲画像を構成する多角形頂点と
をそれそれぞれ決定し、かつ、各多角形頂点でのフラク
タル値をカラーデータにそれぞれ変換して空・雲画像を
生成する空・雲画像生成手段と、多角形頂点のうちの雲
画像を構成する多角形頂点の各々について、フラクタル
値を雲画像の雲厚として当該雲画像の雲内部の太陽光線
の経路長をこの天空画像における太陽光線照射方向に基
づいて算出し、カラーデータの輝度値をこの経路長に基
づいて指数関数的に減衰させた減衰輝度値を算出する減
衰輝度値算出手段と、天空画像の全天の天空輝度分布を
算出する天空輝度分布算出手段と、減衰輝度値と天空輝
度分布の算出結果とを各多角形頂点についてそれぞれ加
色合成し、加色合成結果に基づいて天空画像を生成する
加色合成手段とを具えてなることを特徴とする。
【0010】このように、この発明の第1の天空画像作
成装置によれば、複数の多角形で構成されたフレームを
設定して天空画像を作成し、その上、雲による太陽光線
の輝度の減衰効果を計算して天空画像を作成する。この
ため、この第1の天空画像作成装置によれば、天空画像
を画像としての現実性を保ちつつ、高速で描画できる。
その上、輝度の減衰効果を計算する際に設定する太陽の
高度および方位によって、天候や時間の効果を表現する
ことができる。従って、この第1の天空画像作成装置に
よれば、特にリアルタイム性が要求される分野で用いる
のに好適な天空画像を作成することができる。
【0011】また、この発明の第1の天空画像作成装置
において、好ましくは、減衰輝度算出手段は、雲内部の
太陽光線の経路長を算出するにあたり、雲画像を構成す
るフレーム上の多角形頂点における単位面法線ベクトル
を算出し、各多角形頂点における、当該単位面法線ベク
トルとフラクタル値との積を面法線ベクトルとして算出
し、当該面法線ベクトルと太陽光線照射方向単位ベクト
ルとの内積を経路長とすると良い。
【0012】また、この発明の第1の天空画像作成装置
において、好ましくは、天空輝度分布算出手段は、天空
画像における太陽高度をΘ、および、天空の最小輝度を
Lzmin とそれぞれ設定して、天空画像における天頂輝
度Lzを Lz=1−(1−Lzmin )21/2 sin((π/2−
Θ)/2) として算出すると良い。
【0013】また、この発明の第1の天空画像作成装置
において、好ましくは、天空輝度分布算出手段は、天空
画像の全天の曇り具合を表すパラメータをCLおよびC
min によって (1−CLmin )(1−CL)+CLmin 但し(0≦CL、CLmin ≦1)と定義される曇り度数
を天頂輝度に乗ずると良い。
【0014】(第2の天空画像作成装置)ところで、実
際の天空においては、大気層を通過する太陽光線が散乱
される。この出願に係る発明者は、この大気による太陽
光線の散乱を考慮して天空画像を作成すれば、より現実
的な天空画像を作成することができると考えた。
【0015】そこで、この発明の第2の天空画像作成装
置によれば、天空画像の全天を表す、複数の多角形で構
成されたフレームを設定するフレーム設定手段と、フレ
ームの多角形頂点の各々について、フラクタル手法によ
り発生させたフラクタル値をそれぞれ設定し、当該フラ
クタル値に基づいて、空画像を構成する多角形頂点と雲
画像を構成する多角形頂点とをそれそれぞれ決定し、各
多角形頂点でのフラクタル値をカラーデータにそれぞれ
変換して空・雲画像を生成する空・雲画像生成手段と、
天空画像の太陽の高度と天空画像の作成にあたり設定す
る大気層の厚さとから当該大気層の内部の太陽光線の経
路長を算出する経路長算出手段と、標準光分光分布を経
路長に基づいて指数関数的に減衰させた減衰結果を各多
角形頂点についてそれぞれ算出する減衰結果算出手段
と、空画像を構成する各多角形頂点でのカラーデータを
色度座標および輝度値に変換して、変換された当該色度
座標および当該輝度値と減衰結果とを各多角形頂点につ
いてそれぞれ加色合成し、加色合成結果に基づいて予備
天空画像を生成する第1加色合成手段と、天空画像の全
天の天空輝度分布を算出する天空輝度分布算出手段と、
予備天空画像と天空輝度分布とを各多角形頂点について
それぞれ加色合成し、加色合成結果に基づいて天空画像
を作成する第2加色合成手段とを具えてなることを特徴
とする。
【0016】このように、この発明の第2の天空画像作
成装置によれば、大気層による太陽光線の散乱効果を計
算し、かつ、加色合成を行なって天空画像を作成する。
その結果、より現実的な天空画像を作成することができ
る。
【0017】その上、太陽光線の散乱効果を計算する際
に設定する太陽の高度および方位によって、天候や時間
の効果を表現することができる。従って、この第1の天
空画像作成装置によれば、特にリアルタイム性が要求さ
れる分野で用いるのに好適な天空画像を作成することが
できる。
【0018】また、この発明の第2の天空画像作成装置
において、好ましくは、経路長算出手段は、天空画像に
おける太陽高度をΘ、地球半径をR、および、平均大気
層厚をHとそれぞれ設定して、経路長pathを path=−RsinΘ+(R2 sin2 Θ+2RH+
21/2 と算出すると良い。
【0019】また、この発明の第2の天空画像作性装置
において、好ましくは、減衰結果算出手段は、天空画像
における大気層の散乱・吸収係数をRATIO、大気層
内部の太陽光経路長をpath、平均大気層厚をH、お
よび、計算対象とする可視領域における最大波長をλ
max とそれぞれ設定して、波長λにおける光エネルギー
の減衰率Dを D=exp{−RATIO(path/H)(λmax
λ[i] )4 } として減衰結果を算出すると良い。
【0020】また、この発明の第2の天空画像作成装置
において、好ましくは、減衰結果算出手段は、減衰結果
における最小輝度をLzmin と設定し、天頂相対輝度L
zを Lz=1−(1−Lzmin )21/2 sin((π/2−
Θ)/2) と算出すると良い。
【0021】また、この発明の第2の天空画像作成装置
において、好ましくは、天空輝度分布計算手段は、全天
の曇り具合を表すパラメータCLおよびCLmin によっ
て (1−CLmin )(1−CL)+CLmin 但し(0≦CL、CLmin ≦1)と定義される曇り度数
を天頂相対輝度Lzに乗ずると良い。
【0022】(第3の天空画像作成装置)ところで、自
然の雲は、その発生高度によって、地表付近〜上空2k
m程度の低層雲、上空2〜7km程度の中層雲および高
層雲に大まかに分けることができる。そして、自然の雲
は、各層によってそれぞれ特徴を持った形状が見受けら
れる。
【0023】この出願に係る発明者は、この知見に着目
して、2つの発生高度において雲画像をそれぞれ作成す
れば、3次元的な構造の雲画像を計算しなくても、現実
的な見かけの雲画像が得られると考えた。
【0024】そこで、この発明の第3の天空画像作成装
置によれば、天空画像の全天を表す、複数の多角形でそ
れぞれ構成された内層フレームおよび外層フレームをそ
れぞれ設定するフレーム設定手段と、内層フレームおよ
び外層フレームの多角形頂点の各々について、フラクタ
ル手法により発生させたフラクタル値を設定し、当該フ
ラクタル値を基準値とを比較して、当該フラクタル値を
基準値との比較結果に基づいてRGB値に変換して空・
雲画像を生成する空・雲画像生成手段と、内層フレーム
の空画像を透明とする条件で、内層フレームの空・雲画
像と外層フレームの空・雲画像とをα混合法により混合
する比率を表すα値を設定するα値設定手段と、内層フ
レームおよび外層フレームそれぞれの周辺部分の背景色
を設定する背景色設定手段と、内層フレームおよび外層
フレームの多角形頂点の各々について、背景色とRGB
値とを合成し、外層フレームと内層フレームとをα混合
して天空画像を作成する混合手段とを具えてなることを
特徴とする。
【0025】このように第3の天空画像作成装置によれ
ば、内層フレームおよび外層フレームからなる2重のフ
レームを設定する。その結果、内層フレームおよび外層
フレームにそれぞれ雲画像を作成することにより、2層
の雲画像を作成することができる。その結果、現実的な
見かけの雲画像を作成することができる。
【0026】従って、この第3の天空画像作成装置によ
れば、3次元的な構造を計算して雲画像を作成する必要
がない。このため、第3の天空画像作成装置によれば、
雲画像の計算にあたり、3次元的な構造を計算をする場
合よりもデータ量を低減することができ、また、雲画像
の計算に要する時間の低減を図ることができる。
【0027】また、この発明の第3の天空画像作成装置
において、好ましくは、α値設定手段は、α値の最大値
をAmax 、算出対象とするフラクタル値をT、および、
基準値をTC とそれぞれ設定し、パラメータSを設定し
て、 α=Amax /[exp{(TC −T)/S}+1] と計算すると良い。
【0028】また、この発明の第3の天空画像作成装置
において、好ましくは、空・雲画像生成手段は、フラク
タル値の最大値をTmax 、および、フラクタル値の最小
値をTmin とそれぞれ設定し、パラメータCLOUD
(但し、0≦CLOUD≦1)を設定して、基準値TC
を TC =Tmin +(Tmax −Tmin )CLOUD と計算すると良い。
【0029】また、この発明の第3の天空画像作成装置
において、好ましくは、背景色設定手段は、背景色のカ
ラーデータとしてのRGB値を{ER、EG、EB}、
当該RGB値の影響範囲の多角形頂点の数をRANGE
と設定して、外層フレームの縁からの距離LがRANG
E以内の多角形頂点での背景色のRGB値を、それぞ
れ、 ER=ER/RANGE・L EG=EG/RANGE・L EB=EB/RANGE・L と計算すると良い。
【0030】また、この発明の第3の天空画像作成装置
において、好ましくは、混合手段は、外層フレームの多
角形頂点でのRGB値を{FR、FG、FB}、背景色
のRGB値を{BR、BG、BB}、フラクタル値をT
および基準値をTC とそれぞれ設定して、当該多角形頂
点でのRGB値と背景色のRGB値との合成後のRGB
値{R、G、B}をTC ≦Tの場合は、 R=(FRおよびBRのうちの大きな方の値) G=(FGおよびBGのうちの大きな方の値) B=BB と計算し、TC >Tの場合は、 R=BR G=BG B=BB と計算すると良い。
【0031】また、この発明の第3の天空画像作成装置
において、好ましくは、α値設定手段は、α値を、算出
対象とするフラクタル値に関するシグモイド関数として
求めると良い。
【0032】また、この発明の第3の天空画像作成装置
において、好ましくは、α値設定手段は、算出対象とす
るフラクタル値をT、基準値をTC およびα値の最大値
をAmaxとそれぞれ設定して、当該α値をTC >Tの場
合に、α≒0とし、TC ≦Tの場合に、α≒Amax かつ
C 近傍でのみ急激な変化をする折れ線近似した関数と
すると良い。
【0033】従って、この発明の第3の天空画像作成装
置によれば、天空画像のうちの特に雲画像を、現実性を
保ちつつ高速で描画できる。
【0034】(第4の天空画像作成装置)ところで、自
然の雲の形状には、例えば巻雲、層雲、積雲といった基
本形状に分類されるように、大まかな規則性があること
が知られている。この出願に係る発明者は、この知見に
着目して、雲画像を作成する際に設定するフラクタル値
に、各種演算を施すことにより適度な規則性を与えれ
ば、より現実的な雲画像の表現が可能になると考えた。
【0035】そこで、この発明の第4の天空画像作成装
置によれば、天空画像の全天を表す、複数の多角形で構
成されたフレームを設定するフレーム設定手段と、フレ
ームの多角形頂点の各々について、フラクタル手法によ
り発生させたフラクタル値を設定するフラクタル値設定
手段と、フラクタル値に規則性を与える処理を行なう演
算手段と規則性を与えられた処理後フラクタル値を基準
値とを比較して、当該処理後フラクタル値を基準値との
比較結果に基づいてRGB値に変換して空・雲画像を生
成する空・雲画像生成手段と、フレームの周辺部分の背
景色を設定する背景色設定手段と、フレームの多角形頂
点の各々について、背景色とRGB値とを合成し、合成
結果に基づいて天空画像を作成する合成手段とを具えて
なることを特徴とする。
【0036】このように、この発明の第4の天空画像作
成装置によれば、フレームの多角形頂点の各々のフラク
タル値に規則性を与える処理を行なうことにより、より
現実的な雲画像を作成することができる。
【0037】従って、この発明の第4の天空画像作成装
置によれば、天空画像のうちの特に雲画像を画像として
の現実性を十分に保ちつつ高速で描画でき、その上、随
時雲の形状変更が可能である。従って、この第4の天空
画像作成装置によれば、多種多彩な雲画像を高速で描画
することができる。このため、特にリアルタイム性が要
求される分野で用いるのに好適である。
【0038】また、この発明の第4の天空画像作成装置
において、好ましくは、演算手段は、天空画像の地平面
に相当する水平面をxy平面とし、フレームの格子分割
数をDと設定し、 f(x,y)=MAX(ABS(x−D/2)、ABS
(y−D/2)) と定義されたf(x,y)に対してほぼ単調増加する関
数であって、かつ、f(x,y)=D/2で最大値をと
り、f(x,y)=0で最小値をとる関数を、雲画像を
構成する各多角形頂点のフラクタル値にそれぞれ加算し
て積雲状パターンの雲画像を作成すると良い。
【0039】また、この発明の第4の天空画像作成装置
において、好ましくは、演算手段は、天空画像の地平面
に相当する水平面に含まれる軸を設定し、パラメータb
ottom、パラメータtop(但し、bottom<
top)および、全雲画像に占める筋状パタンの雲画像
の割合を表すパラメータratio(但し、0≦rat
io≦1)をそれぞれ設定し、この水平面にフレームを
投影して得られる投影フレーム底面において、投影され
た多角形頂点が軸に沿った筋状パタンを有する雲画像を
構成する多角形頂点と、投影された多角形頂点が軸に直
交する方向に沿った筋状パタンを有する雲画像を構成す
る多角形頂点とをそれぞれ交互に順次に選択して、選択
された多角形頂点のうちのratioの割合の多角形頂
点でのフラクタル値に、topおよびbottomを加
算して筋状パタンの雲画像を作成するのが良い。
【0040】また、この発明の第4の天空画像作成装置
において、好ましくは、演算手段は、パラメータbot
tom、パラメータtop(bottom<top)、
および、全雲画像に占める鱗状パタンの雲画像の割合を
表すパラメータratio(0≦ratio≦1)をそ
れぞれ設定し、雲画像を構成する多角形頂点のうちのr
atioの割合の多角形頂点について、当該多角形頂点
でのフラクタル値にtopまたはbottomを隣り合
った当該多角形頂点どうしで交互となるように加算して
鱗状パタンの雲画像を作成すると良い。
【0041】また、この発明の第4の天空画像作成装置
において、好ましくは、演算手段は、天空画像の地平面
に相当する水平面をxy平面とし、当該xy平面にフレ
ームを投影して得られる投影フレーム底面の幅をW、当
該幅あたりの当該投影フレーム底面を構成する底面多角
形の数をD、x軸方向の多角形頂点の座標をX[x]、
および、y軸方向の多角形頂点の座標をY[y]と設定
し、N(N:自然数)、振幅an {n|0、1、・・・
N−1}、振幅bn {n|0、1、・・・N−1}、周
期2L(W/D≦L≦W/2)、および、初期位相
ωan、ωbn{n|0、1、・・・、N−1}をパラメー
タとして設定し、全てのxについて下記の(1)をフラ
クタル値に加算するか、若しくは、全てのyについて下
記の(2)式をフラクタル値に加算して波状パタンの雲
画像を作成すると良い。
【0042】
【数2】
【0043】また、この発明の第4の天空画像作成装置
において、好ましくは、演算手段は、フラクタル値の最
大値をTmax 、および、フラクタル値の最小値をTmin
とそれぞれ設定し、パラメータCLOUD(但し(0≦
CLOUD≦1)を設定して、基準値TC を TC =Tmin +(Tmax −Tmin )CLOUD と計算すると良い。
【0044】また、この発明の第4の天空画像作成装置
において、好ましくは、背景色設定手段は、フレームの
フレーム端での背景色のRGB値を{ER、EG、E
B}と設定し、かつ、当該RGB値の影響範囲に含まれ
る多角形頂点の数をRANGEと設定して、フレームの
フレーム端からの距離LがRANGE以内にある多角形
頂点における背景色RGB値{R、G、B}を、それぞ
れ、 R=ER/RANGE・L、 G=EG/RANGE・L、 B=EB/RANGE・L と計算すると良い。
【0045】また、この発明の第4の天空画像作成装置
において、好ましくは、合成手段は、フレームの多角形
頂点の各々について、フラクタル値から変換されたRG
B値(以下、フラクタルRGB値ともいう。)と背景色
のRGB値(以下、背景色RGB値ともいう。)とを合
成するにあたり、ある多角形頂点でのフラクタルRGB
値を{FR、FG、FB}、背景色RGB値を{BR、
BG、BB}、フラクタル値をTおよび基準値をTC
それぞれ設定し、合成結果のRGB値{R、G、B}
を、TC ≦Tの場合に、 R=(FRおよびBRのうちの大きな方の値) G=(FGおよびBGのうちの大きな方の値) B=BB と計算し、TC >Tの場合に、 R=BR G=BG B=BB と計算すると良い。
【0046】
【発明の実施の形態】以下、図面を参照して、この発明
の第1〜第4の天空画像作成装置の例についてそれぞれ
説明する。
【0047】(第1の実施の形態)第1の実施の形態に
おいては、図1を参照して、第1の天空画像作成装置の
例について説明する。図1は、第1の実施の形態の天空
画像作成装置の説明に供する機能ブロック図である。
【0048】第1の実施の形態の天空画像作成装置は、
入力手段10、フレーム設定手段12、空・雲画像生成
手段14、減衰輝度算出手段16、天空輝度分布算出手
段18、加色合成手段20、記憶装置22および表示手
段24を具えている。
【0049】そして、この入力手段10は、フレームサ
イズ、天空画像作成上の各種パラメータや太陽位置とい
った情報を入力するための手段である。
【0050】また、フレーム設定手段12は、この発明
の第1の天空画像作成装置によれば、天空画像の全天を
表す、複数の多角形で構成されたフレームを設定する。
【0051】また、空・雲画像生成手段14は、フレー
ムの多角形頂点の各々について、フラクタル手法により
発生させたフラクタル値をそれぞれ設定する。そして、
空・雲画像生成手段14は、当該フラクタル値に基づい
て、天空画像のうちの空画像を構成する多角形頂点と雲
画像を構成する多角形頂点とをそれそれぞれ決定し、か
つ、各多角形頂点でのフラクタル値をカラーデータにそ
れぞれ変換して空・雲画像を生成する。
【0052】また、減衰輝度算出手段16は、多角形頂
点のうちの雲画像を構成する多角形頂点の各々につい
て、フラクタル値を雲画像の雲厚として当該雲画像の雲
内部の太陽光線の経路長をこの天空画像における太陽光
線照射方向に基づいて算出する。そして、減衰輝度算出
手段16は、この経路長に基づいて、カラーデータの輝
度値を指数関数的に減衰させた減衰輝度値を算出する。
【0053】また、天空輝度分布算出手段18は、天空
画像の全天の天空輝度分布を算出する。
【0054】また、加色合成手段20は、減衰輝度値と
天空輝度分布の算出結果とを各多角形頂点についてそれ
ぞれ加色合成し、加色合成結果に基づいて天空画像を生
成する。
【0055】また、記憶装置22は、画像データを記憶
する装置である。
【0056】また、表示手段24は、画像データを表示
する手段である。
【0057】次に、図2に、この天空画像作成装置を実
現する際の基本ハードウエア構成例を示す。この基本ハ
ードウエアは、入力装置26、CPU28、記憶装置3
0、ディスプレイメモリ32、表示装置34および表示
制御装置36を以って構成されている。そして、表示装
置34以外の構成要素は、バスライン40に接続されて
いる。
【0058】そして、この入力装置26は、フレームサ
イズ、天空画像作成上の各種パラメータや太陽位置とい
った情報を入力する装置である。
【0059】また、記憶装置30は、天空画像作成処理
のためのプログラムおよびデータを格納する装置であ
る。
【0060】また、ディスプレイメモリ32は、表示デ
ータを格納するメモリである。
【0061】また、表示制御装置36は、グラフィック
表示装置を制御する装置である。
【0062】そして、CPU28は、記憶装置30に格
納されているプログラムに従って、各構成成分の動作を
制御する。
【0063】次に、図3を参照して、第1の実施の形態
の天空画像作成装置の動作、すなわち、天空画像の描画
処理について説明する。図3は、第1の実施の形態の描
画処理の説明に供するフローチャートである。
【0064】ステップ1:第1の実施の形態の天空画像
の描画処理においては、先ず、フレーム設定手段12に
おいて、天空描画のフレームを設定する(図3のS
1)。すなわち、フレーム設定手段12は、天空画像の
全天を表す、複数の多角形で構成されたフレームを設定
する。
【0065】天空を描画するためのフレームの設定あた
っては、一般に、半球を用い、これを経緯方向にそれぞ
れ等角分割した構造体で表現するのが一般的である。
尚、フレームの構造としては、任意好適なものを用いる
と良い。
【0066】この実施の形態においては、フレーム上の
位置を表す座標系として、地球楕円体上に固定された座
標系である地心直交座標系を用いる。
【0067】ステップ2:次に、空・雲画像生成手段1
4において、空・雲画像を生成する(図3のS2)。す
なわち、空・雲画像生成手段14は、フレームの多角形
頂点の各々について、フラクタル手法により発生させた
フラクタル値をそれぞれ設定し、当該フラクタル値に基
づいて、天空画像のうちの空画像を構成する多角形頂点
と雲画像を構成する多角形頂点とをそれそれぞれ決定す
る。そして、各多角形頂点でのフラクタル値をカラーデ
ータにそれぞれ変換して空・雲画像を生成する。
【0068】この実施の形態においては、フラクタル値
を発生させるフラクタル手法として、フラクタル画像の
生成手法として一般的な中点変移法を用いる。中点変移
法については、例えば、文献:(M.F.Barnsl
ey著の「The,Science of FRACT
AL IMAGES」、Springer−Verla
g刊)に記載されている。
【0069】そして、生成したフラクタル値をフレーム
の多角形頂点(分割頂点)の各々に対応させる。この実
施の形態では、各多角形頂点をインデックス[i](但
し0≦i≦全多角形頂点数−1)で表す。従って、各イ
ンデックス[i]にそれぞれフラクタル値h[i]が与
えられる。
【0070】次に、フラクタル値h[i]をRGB値に
変換する。この実施の形態では、変換に値、適当な基準
値(しきい値)h ̄(但し、h ̄は、hの直上にバー
(横棒)を付けた状態を便宜的に表す。)を決定する。
【0071】そして、(i)h ̄≦h[i]の場合に
は、RGB値のR[i]、G[i]およびB[i]をそ
れぞれ下記の(3)式、(4)式および(5)で与え
る。
【0072】
【数3】
【0073】また、(ii)h ̄≧h[i]の場合には、
RGB値のR[i]およびG[i]を下記の(6)式で
与え、B[i]を下記の(7)式で与える。
【0074】
【数4】
【0075】この変換により、空・雲画像、すなわち、
青空を背景とした雲画像を得ることができる。
【0076】ステップ3:次に、空・雲画像生成手段1
4において、RGB値をCIEカラーモデルデータの色
度座標および輝度に変換する(図3のS3)。空・雲画
像生成手段14は、各多角形頂点でのフラクタル値をカ
ラーデータにそれぞれ変換して空・雲画像を生成する。
【0077】次に、公知の方法を用いて、RGB値を国
際照明委員会(CIE)カラーモデルの色度座標(x、
y)および輝度(Y)に変換する。
【0078】ステップ4:次に、減衰輝度算出手段16
において、雲による減衰輝度を算出する(図3のS
4)。すなわち、減衰輝度算出手段16は、多角形頂点
のうちの雲画像を構成する多角形頂点の各々について、
フラクタル値を雲画像の雲厚として当該雲画像の雲内部
の太陽光線の経路長をこの天空画像における太陽光線照
射方向に基づいて算出し、カラーデータの輝度値を経路
長に基づいて指数関数的に減衰させた減衰輝度値を算出
する。
【0079】雲による太陽光線の輝度の減衰(減光)
は、光のエネルギーに損出(減衰)が起こる現象であ
る。この損失は、媒質中の吸収と散乱による。この損失
により、輝度は、指数関数的に減衰する。減衰の程度
は、減衰係数や散乱係数といった定数で表される。
【0080】また、雲に入射した太陽光線は、雲の粒子
によって反射される。この雲の粒子は太陽光線の波長よ
りも大きい。このため、太陽光線の波長はこの散乱によ
ってはほとんど変化しない。例えば、強度I0 で雲に入
射した太陽光線の、雲を通過した後の強度Iは、下記の
(8)式で与えられる。但し、「RATIO」は、吸収
係数を表す。また、「path」は、太陽光線が雲の内
部で辿った経路長を表す。
【0081】 I=I0 exp{−RATIO・path}・・・(8) 以下、図4を参照して、この経路長「path」を求め
て、雲による輝度の減衰効果を算出する方法について説
明する。図4は、減衰効果の算出方法の説明に供するフ
ローチャートである。
【0082】ここでは、減衰効果を算出するにあたり、
先ず、フレームの全多角形頂点のうち、雲画像を構成す
る多角形頂点を抽出する。この抽出にあたっては、多角
形頂点を表すインデックス「i」のカウンタを0から全
多角形頂点数まで1つずつ増加させながら、各頂点での
フラクタル値h[i]と基準値h ̄とを比較して、h ̄
≦h[i]を満たしている多角形頂点を抽出する。
【0083】そのために、先ず、インデックス[i]の
iに「0」を代入する(図4のS401)。
【0084】次に、インデックス[i]に対応するフラ
クタル値h[i]と基準値h ̄とを比較する(図4のS
402)。
【0085】そして、(i)h ̄≦h[i]の場合、す
なわち「yes」の場合には、次のS403のステップ
へ進む。
【0086】これに対して、(ii)h ̄>h[i]の場
合、すなわち「no」の場合には、S408のステップ
へ進む。S408のステップにおいては、パラメータ
[i]をインクリメント(iの代入値を1増加)する。
このインクリメントされたパラメータは、次の多角形頂
点に対応する(図4のS408)。そして、S409の
ステップにおいて、パラメータ[i]の値が、全多角形
頂点数と等しいか否かを判定する。判定の結果が等しい
場合、すなわち「yes」の場合には、処理を終了す
る。これに対して、判定の結果が等しくない場合には、
S402のステップへ進む。
【0087】次に、減衰効果を算出するにあたり、太陽
光線の雲の内部での経路長を算出する。経路長の算出に
あたっては、先ず、雲画像を構成するフレーム上の多角
形頂点における単位面法線ベクトルを算出する(図4の
S403)。次に、各多角形頂点における、当該単位面
法線ベクトルとフラクタル値との積を面法線ベクトルと
して算出する(図4のS404)。次に、太陽光線照射
方向単位ベクトル(照射ベクトル)を算出する(図4の
S405)。そして、面法線ベクトルと太陽光線照射方
向単位ベクトルとの内積を経路長とする(図4のS40
6)。
【0088】ここで、図5を参照して、経路長の算出方
法について説明する。図5は、経路長の算出方法の説明
に供する図であり、天空画像の水平面に垂直な平面に沿
った切り口でのフレームの要部断面図である。図5にお
いては、フレームの切り口を折れ線Aで示す。そして、
折れ線Aに沿って、いずれも雲画像を構成する多角形頂
点P[a]、P[b]およびP[c]を示す。
【0089】そして、多角形頂点P[a]、P[b]お
よびP[c]における内向きの単位面法線ベクトルn→
(nx、ny、nz)を従来周知の方法を用いてそれぞ
れ算出する(図4のS403)。尚、単位面法線ベクト
ルの表記「n→」は、「n」の上に「→」を付した表記
と同じとする。
【0090】次に、面法線ベクトルN→を算出する(図
4のS404)。尚、面法線ベクトルの表記「N→」
は、「N」の上に「→」を付した表記と同じとする。面
法線ベクトルN→の算出にあたっては、面法線ベクトル
の大きさvalを下記の(9)式で与える。そして、面
法線ベクトルN→を下記の(10)式で与える。尚、
(9)式中の「hmax 」は、フラクタル値のうちの最大
値を表す。
【0091】
【数5】
【0092】また、図5に、多角形頂点P[a]、P
[b]およびP[c]における面法線ベクトルをそれぞ
れ「N→[a]」、「N→[b]」および「N→
[c]」で示す。また、図5に、各多角形頂点P
[a]、P[b]およびP[c]を中心として、各頂点
での面法線ベクトルの大きさを半径とした球面の断面を
それぞれ破線R[a]、R[b]およびR[c]で示
す。そして、この半径(すなわち面法線ベクトルの大き
さ)程度を雲層の厚みとみなして雲による太陽光線の輝
度の減衰を算出する。
【0093】そのために、次に、太陽光線の照射ベクト
ルを算出する(図4のS405)。図5に、太陽光線の
照射ベクトルの一例を「L→」で示す。尚、太陽光線の
照射ベクトルの表記「L→」は、「L」の上に「→」を
付した表記と同じとする。
【0094】地心直交座標系における太陽の高度をΘと
表し、太陽の方位角Φと表すと、照射ベクトルL→の各
成分lx 、ly およびlz は、それぞれ下記の(11)
式、(12)式および(13)式で与えられる。
【0095】
【数6】
【0096】次に、太陽光線の経路長を算出する(図4
のS406)。
【0097】雲の内部を通過して来る光の経路を面法線
ベクトルの太陽光線の照射方向成分で近似すると、これ
は、面法線ベクトルN→と照射ベクトルL→との内積と
なる。従って、例えば多角形頂点P[b]を中心とする
球面R[b]の内側の経路長path[b]は、下記の
(14)式で与えられる。但し、照射ベクトルL→の大
きさを|L→|で表し、|L→|=1とする。
【0098】さらに、経路長pathは、照射ベクトル
L→の各成分lx 、ly およびlzを用いて、下記の
(15)式で表される。
【0099】
【数7】
【0100】次に、経路長pathを用いて太陽光線の
輝度の減衰効果を計算する(図4のS407)。減衰前
の輝度値をY0 とすると、雲を通過した太陽光線の輝度
値Yは、経路長pathを用いて、下記の(16)式で
与えられる。
【0101】
【数8】
【0102】吸収係数「RATIO」の値を適当に選ぶ
ことにより、雲の厚い状態や薄い状態を表現することが
できる。また、太陽の高度をΘおよび太陽の方位角Φを
適当に選ぶことにより、所望の時刻の太陽の位置を表現
することができる。そして、この太陽の位置の変化は、
全天の雲部分の輝度分布に反映する。
【0103】ステップ5:次に、天空輝度分布算出手段
18において、天空輝度分布を算出する(図3のS
5)。すなわち、天空輝度分布算出手段18は、天空画
像の全天の天空輝度分布を算出する。
【0104】この実施の形態においては、全天の天空輝
度分布を、CIEより提案されている、曇天時および晴
天時の実験式を用いて算出する。
【0105】この実験式によれば、地心座標系におい
て、全天のうちの高度θ、方位角度φの点の曇天時の輝
度L(θ,φ)は、下記の(17)式で与えらえる。
【0106】 L(θ,φ)=Lz{1+2cos(π/2−θ)}/3・・・(17) ここで、(17)式中の「Lz」は、天空画像の天頂輝
度を表す。この天頂輝度は、天空の最小輝度をLzmin
として、下記の(18)式で与えられる。
【0107】 Lz=1−(1−Lzmin )21/2 sin((π/2−Θ)/2)・・・(1 8) また、この実験式によれば、晴天時の輝度L(θ,φ)
は、下記の(19)式で与えらえる。また、(19)式
中の「γ」は、太陽と天空要素との成す角度を表し、下
記の(20)式で与えられる。
【0108】
【数9】
【0109】また、例えば薄曇りの場合には、上述した
曇天時の輝度と晴天時の輝度とを適当な割合で合わせる
ことで、曇天時と晴天時との中間状態を近似的に表現す
ることができる。さらに、天頂輝度に適当な曇り度数を
導入することにより、一層現実的な、薄曇りの場合の天
空画像を表現することができる。
【0110】例えば、天空画像の全天の曇り具合を表す
パラメータCLおよびCLmin によって下記の(21)
式で定義される曇り度数を天頂輝度に乗ずると良い。
【0111】 (1−CLmin )(1−CL)+CLmin ・・・(21) 但し(0≦CL、CLmin ≦1) また、2つのパラメータCLおよびCLmin を様々な値
とすることにより、様々な空模様を描画することができ
る。例えば、CL=0の場合には、完全に快晴の空模様
が描画される。また、CL=1の場合には、全天曇天の
空模様が描画される。
【0112】ステップ6:次に、加色合成手段20にお
いて、加色合成処理を行なう(図3のS6)。すなわ
ち、加色合成手段20は、減衰輝度値と天空輝度分布の
算出結果とを各多角形頂点についてそれぞれ加色合成す
る。加色合成にあたっては、例えば、文献:(D.F.
Rogers著、「Mathematical ele
ments of Computer Graphic
s」、McGraw−Hill刊)をはじめとする種々
の文献に記載されている周知の方法を用いると良い。
【0113】ステップ7:次に、加色合成手段20にお
いて、CIEカラーモデルデータの色度座標および輝度
をRGB値に逆変換する(図3のS7)。すなわち、加
色合成手段20は、加色合成結果に基づいて天空画像を
生成する。
【0114】尚、この実施の形態においては、S4のス
テップを実行した後にS5のステップを実行したが、こ
の発明においては、S4およびS5のステップの実行順
序は交換可能である。
【0115】また、この天空画像作成装置によれば、天
空描画フレームの次元数に応じて、2次元または3次元
いずれの天空画像としても描画することが可能である。
【0116】(第2の実施の形態)第2の実施の形態に
おいては、図6を参照して、第2の天空画像作成装置の
例について説明する。図6は、第2の実施の形態の天空
画像作成装置の説明に供する機能ブロック図である。
【0117】第2の実施の形態の天空画像作成装置は、
入力手段40、フレーム設定手段42、空・雲画像生成
手段44、経路長算出手段46、減衰結果算出手段4
8、第1加色合成手段50、天空輝度分布算出手段5
2、第2加色合成手段54、記憶装置56および表示手
段58を具えている。
【0118】そして、この入力手段40は、フレームサ
イズ、天空画像作成上の各種パラメータや太陽位置とい
った情報を入力するための手段である。
【0119】また、フレーム設定手段42は、この発明
の第2の天空画像作成装置によれば、天空画像の全天を
表す、複数の多角形で構成されたフレームを設定する。
【0120】また、空・雲画像生成手段44は、フレー
ムの多角形頂点の各々について、フラクタル手法により
発生させたフラクタル値をそれぞれ設定する。そして、
空・雲画像生成手段44は、当該フラクタル値に基づい
て、天空画像のうちの空画像を構成する多角形頂点と雲
画像を構成する多角形頂点とをそれそれぞれ決定し、か
つ、各多角形頂点でのフラクタル値をカラーデータにそ
れぞれ変換して空・雲画像を生成する。
【0121】また、経路長算出手段46は、天空画像の
太陽の高度と天空画像の作成にあたり設定する大気層の
厚さとから当該大気層の内部の太陽光線の経路長を算出
する。
【0122】また、減衰結果算出手段48は、標準光分
光分布を経路長に基づいて指数関数的に減衰させた減衰
結果を各多角形頂点についてそれぞれ算出する。
【0123】また、第1加色合成手段50は、空画像を
構成する各多角形頂点でのカラーデータを色度座標およ
び輝度値に変換して、変換された当該色度座標および当
該輝度値と減衰結果とを各多角形頂点についてそれぞれ
加色合成し、加色合成結果に基づいて予備天空画像を生
成する。
【0124】また、天空輝度分布算出手段52は、天空
画像の全天の天空輝度分布を算出する。
【0125】また、第2加色合成手段54は、予備天空
画像と天空輝度分布とを各多角形頂点ついてそれぞれ加
色合成し、加色合成結果に基づいて天空画像を作成す
る。
【0126】また、記憶装置56は、画像データを記憶
する装置である。
【0127】また、表示手段58は、画像データを表示
する手段である。
【0128】尚、この天空画像作成装置を実現する際の
基本ハードウエア構成は、例えば、第1の実施の形態に
おいて図2を用いて説明した基本ハードウエア構成とす
ると良い。
【0129】次に、図7を参照して、第2の実施の形態
の天空画像作成装置の動作、すなわち、天空画像の描画
処理について説明する。図7は、第2の実施の形態の描
画処理の説明に供するフローチャートである。
【0130】ステップ1:第2の実施の形態の天空画像
の描画処理においては、先ず、フレーム設定手段42に
おいて、天空描画のフレームを設定する(図7のS
1)。すなわち、フレーム設定手段42は、天空画像の
全天を表す、複数の多角形で構成されたフレームを設定
する。
【0131】天空を描画するためのフレームの設定にあ
たっては、一般に、半球を用い、これを経緯方向にそれ
ぞれ等角分割した構造体で表現するのが一般的である。
尚、フレームの構造としては、任意好適なものを用いる
と良い。
【0132】この実施の形態においては、フレーム上の
位置を表す座標系として、地球楕円体上に固定された座
標系である地心直交座標系を用いる。
【0133】ステップ2:次に、空・雲画像生成手段4
4において、空・雲画像を生成する(図7のS2)。す
なわち、空・雲画像生成手段44は、フレームの多角形
頂点の各々について、フラクタル手法により発生させた
フラクタル値をそれぞれ設定し、当該フラクタル値に基
づいて、天空画像のうちの空画像を構成する多角形頂点
と雲画像を構成する多角形頂点とをそれそれぞれ決定す
る。そして、各多角形頂点でのフラクタル値をカラーデ
ータにそれぞれ変換して空・雲画像を生成する。
【0134】この実施の形態においては、フラクタル値
を発生させるフラクタル手法として、フラクタル画像の
生成手法として一般的な中点変移法を用いる。中点変移
法については、例えば、文献:(M.F.Barnsl
ey著の「The,Science of FRACT
AL IMAGES」、Springer−Verla
g刊)に記載されている。
【0135】そして、生成したフラクタル値をフレーム
の多角形頂点(分割頂点)の各々に対応させる。この実
施の形態では、各多角形頂点をインデックス[i](但
し0≦i≦全多角形頂点数−1)で表す。従って、各イ
ンデックス[i]にそれぞれフラクタル値h[i]が与
えられる。
【0136】次に、フラクタル値h[i]をRGB値に
変換する。この実施の形態では、変換に値、適当な基準
値(しきい値)h ̄(但し、h ̄は、hの直上にバー
(横棒)を付けた状態を便宜的に表す。)を決定する。
【0137】そして、(i)h ̄≦h[i]の場合に
は、RGB値のR[i]、G[i]およびB[i]をそ
れぞれ下記の(3)式、(4)式および(5)で与え
る。
【0138】
【数10】
【0139】また、(ii)h ̄≧h[i]の場合には、
RGB値のR[i]およぼG[i]を下記の(6)式で
与え、B[i]を下記の(7)式で与える。
【0140】
【数11】
【0141】この変換により、空・雲画像、すなわち、
青空を背景とした雲画像を得ることができる。
【0142】ステップ3:次に、空・雲画像生成手段4
4において、RGB値をCIEカラーモデルデータの色
度座標および輝度に変換する(図7のS3)。空・雲画
像生成手段14は、各多角形頂点でのフラクタル値をカ
ラーデータにそれぞれ変換して空・雲画像を生成する。
【0143】ここでは、公知の方法を用いて、RGB値
を国際照明委員会(CIE)カラーモデルの色度座標
(x、y)および輝度(Y)に変換する。
【0144】ステップ4:次に、経路長算出手段46に
おいて、大気層内部の太陽光線経路長を算出する。そし
て、減衰結果算出手段48において、標準光分光分布を
経路長に基づいて指数関数的に減衰させた減衰結果を各
多角形頂点についてそれぞれ算出する(図7のS4)。
ここで、経路長および減衰結果の算出にあたり、計算を
容易にするために、以下の(1)〜(5)の条件を前提
として計算を行なう。
【0145】(1)太陽は無限遠にあるものとみなす。
従って、太陽光線を平行光線として扱う。
【0146】(2)太陽光線は、地表に近付くに従っ
て、オゾン層、空気分子、大気中の微粒子によって散
乱、吸収、屈折を一般に受ける。しかし、オゾン層の影
響および屈折による効果は、他の効果に比べて微小であ
る。このため、オゾン層の影響および屈折による効果を
無視する。
【0147】(3)大気中の空気分子および微粒子によ
る散乱は、光の波長に依存する。このため、R(赤)、
G(緑)およびB(青)それぞれの波長について、散乱
を個別に計算する。
【0148】(4)大気中の空気分子密度の高度依存性
を無視する。
【0149】(5)大気中の空気分子および微粒子によ
る散乱光は、一般に2次光源となる。しかし、2次光源
の光の強度は太陽光線(1次光源)の光強度にくらべて
微小である。このため、2次光源を無視する。
【0150】以下、図8を参照して、経路長算出および
減衰結果の算出について説明する。図8は、経路長算出
および減衰結果の算出の説明に供するフローチャートで
ある。
【0151】この処理にあたり、先ず、太陽高度Θを入
力する(図8のS401)。
【0152】次に、図9を参照して、経路長の算出方法
について説明する(図8のS402)。図9は、経路長
の算出方法の説明に供する図であり、地球の直径(大
円)を含む面における要部断面図である。
【0153】また、図9に、地球の表面の切り口をEで
示す。また、大気層の上端を破線の半円弧A−Aで示
す。また、観測地点(座標原点とする。)をOで示す。
そして、地表を半径Rの半円弧E−Eで表し、大気層の
平均厚さをHで表す。また、観測地点Oからみた太陽の
方向をS→で表す。尚、「S→」の表記は、「S」の直
上に「→」を付した表記と同一とする。
【0154】そして、大気層中の太陽光線の経路長をp
ath、地心座標系における太陽の高度をΘとすると、
幾何学的関係から、下記の(21)式が成り立つ。そし
て、(21)式から、下記の(22)式で与えられる。
【0155】 (path・sinΘ+R22 +(path・cosΘ)2 =(R+H)2 ・・・(21) path=−RsinΘ+(R2 sin2 Θ+2RH+H21/2 ・・・(2 2) 上記の(22)式から、経路長をpathは、大気層の
厚さHおよび地球の半径Rの値が分かれば求められるこ
とが分かる。
【0156】ところで、空気分子密度は高度に対して指
数関数的に変化する。そして、高度0(m)での空気密
度をN0 、スケールハイトをH0 とすると、高度hの空
気密度Nは、N0 exp{−h/H0 }で与えられる。
【0157】ここでは、(m)は、大気層の厚さHとし
て、このスケールハイトH0 =7994値を用いる。ま
た、地球の半径Rとして、赤道半径を用いる場合は、R
=6,377,397(m)である。
【0158】これらの数値を用いて経路長pathを計
算することができる。この経路長pathは、太陽が天
頂位置にあるときに最小値Hをとる。また、この経路長
pathは、太陽が観測地点からみて地平線方向にある
ときに最大値(H2 +2RH)1/2 をとる。
【0159】次に、減衰結果、特に、空気層による太陽
光線の短波長成分の散乱効果による減衰結果の算出方法
について説明する。減光は、光のエネルギーに損失(減
衰)が起こる現象であって、媒質中の吸収と散乱とによ
るものを指す。
【0160】空気分子による散乱は、レイリーの散乱機
構に則って生ずることが知られている。レイリー散乱と
は、光の散乱のうち、光の波長に比べて十分に小さな微
粒子によって起こる散乱であって、光の波長変化を伴わ
ないものをいう。
【0161】例えば、散乱体の体積をv、散乱体の誘電
率をε、媒質の誘電率をε0 、媒質の単位体積中の散乱
体の粒子数をN、媒質に入射する入射光の波長をλ、入
射光の強度をI0 すると、入射方向に対する散乱角度φ
の方向で散乱体から距離rの点での散乱光の強度Iは、
下記の(23)式で表される。特に、散乱光の強度I
が、入射光の波長λの4乗すなわちλ4 に反比例するこ
とをレイリーの散乱法則という。
【0162】
【数12】
【0163】しかしながら、この実施の形態において
は、散乱現象を統一的に扱うために、下記の(24)式
で示す、より一般的な散乱公式を適用する。下記の(2
4)式で示す、この一般的な散乱公式では、光の強度
は、指数関数的に減衰する。そして、この減衰の程度
は、減衰係数や散乱係数といった定数で表される。
【0164】 I=I0 exp{−μ・path}・・・(24) また、上記の(24)式において、μは、全吸収係数を
表し、下記の(25)式で与えらえる。
【0165】 μ=τ(エネルギー級数係数)+σ(散乱係数)・・・(25) また、上記の(25)式をより具体的に表せば、全吸収
係数μは、下記の(26)式で与えられる。
【0166】
【数13】
【0167】次に、太陽光線の減光計算に先立ち、天頂
輝度Lzを算出する(図8のS403)。ここでは、天
頂輝度Lzを下記の(27)式で与える。但し、(2
7)式中のLmin は、適宜設定された最小輝度を表す。
また、Θは太陽高度を表す。
【0168】
【数14】
【0169】ここで、図10を参照して、上記の(2
7)式で与えられた天頂輝度Lzについて説明する。図
10は、天頂輝度の説明に供する図であり、地球の直径
(大円)を含む面における要部断面模式図である。図1
0に、地平を直線B−Bで示す。また、地平上の観測地
点Oからみた天頂をTで示す。また、観測地点Oから見
た見かけ上の空の高さをH ̄で表す。尚、「H ̄」の表
記は、「H」の直上に「 ̄」を付した表記と同じとす
る。また、観測地点Oを中心とした半径H ̄の半円弧を
見かけ上の天空とする。また、この半円弧と、観測地点
Oから太陽の方向へ伸ばした直線とが交わる点を交点S
とする。
【0170】ここでは、観測地点Oからみた太陽の方向
が、天頂Tから地平Bまで変化すると、天頂輝度が1
(最大値)からLzmin (最小値)まで変化する。この
場合、天頂輝度Lzは、天頂Tと交点Sとの距離L ̄を
用いて、下記の(28)式で与えられる。但し、「L
 ̄」の表記は、「L」の直上に「 ̄」を付した表記と同
じとする。また、距離L ̄は、下記の(29)式で与え
られる。
【0171】
【数15】
【0172】上記の(29)式から、天頂輝度Lzは、
太陽が天頂方向にある場合を最大値として、太陽高度Θ
に応じた値となることが分かる。
【0173】次に、吸収・散乱の計算方法(減光計算と
も称する)について説明する。図8中、減光計算のステ
ップを破線Iで囲んで示す。
【0174】先ず、カウンタ「i」の値を「0」とし、
後述する散乱・吸収効果dist[i]と、重価係数S
x[i]、Sy[i]およびSz[i]との積和の値を
「0」とする。
【0175】また、減光計算にあたっては、計算のベー
スとなる分光分布として、CIE(JIS Z 870
1)の標準光分光分布を適用する。また、図10に、こ
のCIEの標準光分光分布の一部抜粋を示す。図11で
は、波長380nmから760nmまで、10nmステ
ップでデータが与えられているもとする。
【0176】従って、iをカウンタとして、i=0から
i=38まで1つずつ増加させた場合、波長λは、λ
[i]=380+10iで与えられる(図8のS40
5)。
【0177】また、分光分布S(λ[i])の3刺激値
をx ̄(λ[i])、y ̄(λ[i])およびz ̄(λ
[i])で表す。但し、「x ̄」、「y ̄」および「z
 ̄」の表記は、それぞれ「x」の直上に「 ̄」を付した
表記、「y」の直上に「 ̄」を付した表記、および
「z」の直上に「 ̄」を付した表記と同じとする。
【0178】そして、重価係数Sx[i]、Sy[i]
およびSz[i]は、Sx[i]=S(λ[i])x ̄
(λ[i])、Sy[i]=S(λ[i])y ̄(λ
[i])およびSz[i]=S(λ[i])z ̄(λ
[i])としてそれぞれ与えられる。
【0179】また、上記の(24)式および(26)式
から、散乱・吸収効果dist[i]は、下記の(3
0)式で与えられる(図8のS406)。
【0180】
【数16】
【0181】そして、散乱・吸収効果dist[i]
と、重価係数Sx[i]、Sy[i]およびSz[i]
との積和を、それぞれ下記の(31)式、(32)式お
よび(33)式で与える(図8のS407)。
【0182】
【数17】
【0183】そして、カウンタ[i]を1ずつ増加する
(図8のS408)。
【0184】次に、カウンタ[i]の値が、38を超え
るか否かを判定する(図8のS409)そして、i≦3
8の場合には、S405のステップへ戻る。また、i>
38の場合には、次のS410のステップへ進む。
【0185】次に、色度座標(x1 、y1 )を計算する
(図8のS410)。色度座標のx1 およびy1 は、そ
れぞれ下記の(34)式および(35)式で与えられ
る。
【0186】 x1 =Ssx/(Ssx+Ssy+Ssz)・・・(34) y1 =Ssy/(Ssx+Ssy+Ssz)・・・(35) このようにして、経路長算出および減衰結果の算出の処
理を終了する。
【0187】ステップ5:次に、第1加色合成手段50
において、空画像を構成する各多角形頂点でのカラーデ
ータを色度座標および輝度値に変換して、変換された当
該色度座標および当該輝度値と減衰結果とを各多角形頂
点についてそれぞれ加色合成し、加色合成結果に基づい
て予備天空画像を生成する(図7のS5)。すなわち、
上記の(34)式および(35)式で求めた色度座標
(x1 、y1 )と、現在の色度座標値および輝度値(上
述のステップ3において求めたCIE値)との合成を行
なう。
【0188】ここでは、図12を参照して、この加色合
成について説明する。
【0189】先ず、フレームの各多角形頂点にインデッ
クス[j](0≦j≦全天頂数)を付す。そして、上述
のステップ3において求めたCIE値を(x01[j]、
01[j]、Y0 [j])として、全ての多角形頂点に
ついて、加色合成を行なう。ここでは、先ず、インデッ
クス[j]に0を代入する(図12のS501)。そし
て、そのインデックス[j]に対応する多角形頂点につ
いての加色合成を行なう(図12のS502)。そし
て、インデックス[j]の値を1増加する(図12のS
503)。そして、インデックス[j]の値が全頂点数
と等しいか否かを判定する(図12のS504)。等し
い場合には、終了する。一方、等しく無い場合には、S
502のステップへ進む。
【0190】そしてS502のステップにおいて、加色
合成後の色度座標x01[j]、y01[j]および輝度Y
01は、それぞれ下記の(36)式、(37)式および
(38)式で与えられる。但し、T0 [j]およびT1
は、それぞれ下記の(39)式および(40)式で与え
られる。また、Yconst は、適当な定数(例えば0.1
程度)である。
【0191】
【数18】
【0192】このようにして、予備天空画像を作成す
る。
【0193】ステップ6:次に、天空輝度分布算出手段
52において、天空輝度分布を算出する(図7のS
6)。すなわち、天空輝度分布算出手段52は、天空画
像の全天の天空輝度分布を算出する。
【0194】この実施の形態においては、全天の天空輝
度分布を、CIEより提案されている、曇天時および晴
天時の実験式を用いて算出する。
【0195】この実験式によれば、地心座標系におい
て、全天のうちの高度θ、方位角度φの点の曇天時の輝
度L(θ,φ)は、上述の第1の実施の形態の場合と同
様に、下記の(17)式で与えらえる。
【0196】 L(θ,φ)=Lz{1+2cos(π/2−θ)}/3・・・(17) ここで、(17)式中の「Lz」は、天空画像の天頂輝
度を表す。この天頂輝度は、天空の最小輝度をLzmin
として、下記の(18)式で与えられる。
【0197】 Lz=1−(1−Lzmin )21/2 sin((π/2−Θ)/2)・・・(1 8) また、この実験式によれば、晴天時の輝度L(θ,φ)
は、下記の(19)式で与えらえる。また、(19)式
中の「γ」は、太陽と天空要素との成す角度を表し、下
記の(20)式で与えられる。
【0198】
【数19】
【0199】また、例えば薄曇りの場合には、上述した
曇天時の輝度と晴天時の輝度とを適当な割合で合わせる
ことで、曇天時と晴天時との中間状態を近似的に表現す
ることができる。例えば、全輝度分布Ltotal を、ブレ
ンドファクタα(0≦α≦1)を用いて、下記の(4
1)式で表しても良い。
【0200】 Ltotal =αL(θ)+(1−α)L(θ,φ)・・・(41) さらに、天頂輝度に適当な曇り度数を導入することによ
り、一層現実的な、薄曇りの場合の天空画像を表現する
ことができる。
【0201】例えば、天空画像の全天の曇り具合を表す
パラメータCLおよびCLmin によって下記の(21)
式で定義される曇り度数を天頂輝度に乗ずると良い。、 (1−CLmin )(1−CL)+CLmin ・・・(21) 但し(0≦CL、CLmin ≦1) また、2つのパラメータCLおよびCLmin を様々な値
とすることにより、様々な空模様を描画することができ
る。例えば、CL=0の場合には、完全に快晴の空模様
が描画される。また、CL=1の場合には、全天曇天の
空模様が描画される。
【0202】ステップ7:次に、第2加色合成手段54
において、予備天空画像と天空輝度分布とを各多角形頂
点ついてそれぞれ加色合成する(図7のS7)。
【0203】ステップ5において求めた予備天空画像の
色度座標および輝度を、それぞれ(x01[j]、y
01[j]、Y01[j])とする。また、ステップ6にお
いて求めた天空輝度分布の色度座標および輝度を、それ
ぞれ、それぞれ(x2 [j]、y2 [j]、Y2
[j])とする。そして、これらを加色合成した後(合
成後)の色度座標および輝度(x012 、y012 、Y
012 )は、それぞれ下記の(42)式、(43)式およ
び(44)式で与えられる。但し、T01[j]およびT
2 [j]は、それぞれ下記の(45)式および(46)
式で与えられる。
【0204】
【数20】
【0205】このようにして、全ての多角形頂点につい
て加色合成を行なう。
【0206】尚、大気減光計算式には、太陽方位角が含
まれていないが、輝度分布計算結果との合成を行なうこ
とによって、最終的な天空画像には太陽高度および方位
角の両方を反映させることができる。例えば、西空に夕
陽を描くことができる。
【0207】ステップ8:次に、第2加色合成手段54
において、CIEカラーモデルデータの色度座標および
輝度をRGB値に逆変換する(図7のS8)。すなわ
ち、第2加色合成手段54は、加色合成結果に基づいて
天空画像を生成する。
【0208】尚、この実施の形態においては、S4のス
テップとS5のステップの実行順序は交換可能である。
また、S4およびS6のステップのうちのいずれか一方
のみ実行しても良い。その場合には、S7の加色合成の
処理を行なう必要はない。
【0209】また、この天空画像作成装置によれば、天
空描画フレームの次元数に応じて、2次元または3次元
いずれの天空画像としても描画することが可能である。
【0210】(第3の実施の形態)第3の実施の形態に
おいては、図13を参照して、第3の天空画像作成装置
の例について説明する。図13は、第3の実施の形態の
天空画像作成装置の説明に供する機能ブロック図であ
る。
【0211】第3の実施の形態の天空画像作成装置は、
入力手段60、フレーム設定手段62、空・雲画像生成
手段64、α値設定手段66、背景色設定手段68、混
合手段70、記憶装置72および表示手段74を具えて
いる。
【0212】そして、この入力手段60は、フレームサ
イズ、天空画像作成上の各種パラメータや太陽位置とい
った情報を入力するための手段である。
【0213】また、フレーム設定手段62は、この発明
の第3の天空画像作成装置によれば、天空画像の全天を
表す、複数の多角形で構成されたフレームを設定する。
【0214】また、空・雲画像生成手段64は、フレー
ムの多角形頂点の各々について、フラクタル手法により
発生させたフラクタル値をそれぞれ設定する。そして、
空・雲画像生成手段64は、当該フラクタル値に基づい
て、天空画像のうちの空画像を構成する多角形頂点と雲
画像を構成する多角形頂点とをそれそれぞれ決定し、か
つ、各多角形頂点でのフラクタル値をカラーデータにそ
れぞれ変換して空・雲画像を生成する。
【0215】また、α値設定手段66は、内層フレーム
の空画像を透明とする条件で、内層フレームの空・雲画
像と外層フレームの空・雲画像とをα混合法により混合
する比率を表すα値を設定する。
【0216】また、背景色設定手段68は、内層フレー
ムおよび外層フレームそれぞれの周辺部分の背景色を設
定する。
【0217】また、混合手段70は、内層フレームおよ
び外層フレームの多角形頂点の各々について、背景色と
RGB値とを合成し、外層フレームと内層フレームとを
α混合して天空画像を作成する。
【0218】また、記憶装置72は、画像データを記憶
する装置である。
【0219】また、表示手段74は、画像データを表示
する手段である。
【0220】尚、この実施の形態の天空画像作成装置を
実現する際の基本ハードウエア構成は、例えば、第1の
実施の形態において図2を用いて説明した基本ハードウ
エア構成とすると良い。
【0221】次に、図14を参照して、第3の実施の形
態の天空画像作成装置の動作のうち、フレーム設定手段
62で実行される、天空描画フレームの生成処理につい
て説明する。図14は、天空描画フレームの生成処理の
説明に供するフローチャートである。尚、この実施の形
態においては、座標系として、地球楕円体上に固定され
た限定を観測点においた座標系である、測心直交座標系
を用いる。
【0222】最初のステップでは、天空を描画するため
の第1のフレーム(内側フレーム)を作成する。フレー
ムの構造としては、様々な形状が考えられるが、ここで
は、図15に示した構造を用いる。図15は、フレーム
の断面構造を示す。また、フレームを点O、E’、T、
EおよびAを通る半円弧で示す。また、このフレーム
は、画像中に与えられた矩形の地形を完全に覆うことが
できる。
【0223】そして、この実施の形態では、フレームの
作成にあたり、先ず、第1フレームの構造パラメータを
読み込む(図14のS301)。ここでは、構造パラメ
ータとして、被覆すべき矩形領域幅(すなわち、フレー
ム底面の幅)W1 、x=y=0の点におけるフレームの
高さHT1 、および、フレームの縦横分割数Dを読み込
む。但し、分割数Dは、後述する理由により、2の冪乗
とする。
【0224】そして、読み込まれた構造パラメータに基
づいて、地平面EE’をxy面に水平にとる。そして、
フレームの中央を、このxy面に直交するz軸上にお
く。
【0225】次に、第1フレームを生成する(図14の
S302)。
【0226】ここで、図16に、フレームの底面である
xy平面上の地平面をz軸+方向からみた様子を示す。
そして、図16に示すように、フレームの底面をD×D
に等分割する。そして、図15においてETE’を通る
円弧で示されたフレームの、z軸を含む断面に沿った切
り口の形状が円弧となる構造を選ぶ。すると、各分割点
1 [x][y](0<x,y≦D1 )におけるフレー
ムの高さZ1 [x][y]は、下記の(47)式で与え
られる。
【0227】但し、(47)式中のRは、下記の(4
8)式で与えられる。また、(47)式中のxy ̄
[x][y]は、下記の(49)式で与えられる。ま
た、(49)中のxy ̄[x][y]およびxy ̄
[x][y]は、それぞれ下記の(50)式および(5
1)式で与えられる。
【0228】尚、「xy ̄」の表記は、「xy」の直上
に「 ̄」を付した表記と同じとする。また、「x ̄」の
表記は、「x」の直上に「 ̄」を付した表記と同じとす
る。また、「y ̄」の表記は、「y」の直上に「 ̄」を
付した表記と同じとする。
【0229】また、(49)式中の関数MAX(a,
b)は、aおよびbのうちの大きなものを表す。また、
(49)式中の関数ABS(c)は、cの絶対値を表
す。
【0230】
【数21】
【0231】ここで、図17に、この第1のフレームの
作成処理の結果得られるフレームの画像例を示す。図1
7には、斜め上方からみたフレームを示す。
【0232】尚、この実施の形態では、計算を容易にす
るため、x軸方向とy軸方向のフレーム底面幅を互いに
等しくし、かつ、縦横分割数D1 を互いに等しくした。
しかし、これらの値は、互いに等しくなくとも良い。
【0233】また、この発明では、フレームの構造は、
図15、図16および図17において示した構造に限定
する必要はなく、以外に任意好適な構造とすることがで
きる。例えば、半球を経緯方向にそれぞれ等角分割した
構造としても良い。
【0234】また、この発明では、内層フレーム(第1
のフレーム)および外層フレーム(第2のフレーム)、
すなわち大小2つのフレームを用意して、天空画像描画
フレームを二重に設定する。このように二重のフレーム
を設定する理由は、雲画像を作成するためのデータ量を
減らすためである。すなわち、天空画像において雲を2
層で表現することにより、3次元的な構造の雲を作成せ
ずに、現実的に見かけの雲画像を作成するためである。
【0235】そこで、次に、第2のフレームの作成にあ
たり、先ず、第2フレームの構造パラメータを読み込む
(図14のS303)。ここでは、構造パラメータとし
て、被覆すべき矩形領域幅(すなわち、フレーム底面の
幅)W2 、x=y=0の点におけるフレームの高さHT
2 、および、フレームの縦横分割数D2 を読み込む。但
し、分割数D2 は、後述する理由により、2の冪乗とす
る。
【0236】また、この実施の形態においては、第1フ
レームの外側に第2フレームを設ける。このため、W1
<W2 、かつ、HT1 <HT2 とする。但し、この発明
では、これらの関係に限定する必要はない。例えば、第
2フレームを第1フレームの内側に設けても良い。ま
た、例えばW1 >W2 かつHT1 <HT2 として、第1
フレームと第2フレームとを一部分で交差させても良
い。
【0237】そして、読み込まれた構造パラメータに基
づいて、地平面EE’をxy面に水平にとる。そして、
フレームの中央を、このxy面に直交するz軸上にお
く。
【0238】次に、第1フレームを生成した場合と同様
にして、第2フレームを生成する(図14のS30
4)。
【0239】次に、フレーム上に天空画像を描画するに
あたり、フラクタル手法について説明する。
【0240】例えば、ある長さの物差しτを用いて多角
形の周辺長L(τ)と面積S(τ)を測定する場合を考
える。この場合、2つの多角形について、共に下記の
(52)式が成り立つとき、これらの図形はフラクタル
的に相似であるという。そして、(52)式中のFdを
フラクタル次元と呼ぶ。
【0241】
【数22】
【0242】雲は、面積において6〜7桁の範囲にわた
って上記の(52)式を満たすことが知られている。従
って、雲は、自然界に見られる形状の中でも、他に例を
見ない程の一様性を示す。このため、雲画像の作成にあ
たっては、フラクタル手法を用いることが好適である。
【0243】また、フレーム上に描く天空画像は2次元
である。従って、この2次元のデータを生成するために
は、フラクタル手法として一般的な中点変移法を用い
る。
【0244】次に、図18を参照して、中点変移法につ
いて説明する。図18は、中点変移法の概念図である。
【0245】端点A(x1 =T(x1 )=0)と端点B
(x2 =1.0、T(x2 ))のうち、T(x2 )は、
平均値0かつ分散σ2 の正規分布乱数列から適当に抽出
した数値である。そして、適当な数値t1 、t2 (0<
1 、t2 <1)に対して、T(t2 )−T(t1 )の
分散は、下記の(53)式で表される。
【0246】 V(T(t2 )−T(t1 ))=|t2 −t1 |σ2 ・・・(53) また、x1 とx2 との中点をx3 とする。そして、C
(x3 、T(x3 ))を下記の(54)式で与える。但
し、(54)式中のO1 は、平均値0かつ分散δ1 2の正
規分布乱数列から得たオフセット値である。
【0247】 T(x3 )={(T(x2 )−T(x1 ))/2}+T(x1 )+O1 ・・・ (54) そして、この場合、下記の(55)式が成り立つので、
下記の(56)式が得られる。
【0248】 V(T(x2 )−T(x3 ))=V(T(x2 )−T(x1 )) =σ2 /4+δ1 2=σ2 /2・・・(55) δ1 2=σ2 /4・・・(56) 同様にして、D(x4 、T(x4 ))、E(x5 、T
(x5 ))は、下記の(57)式および(58)式でそ
れぞれ与えられる。
【0249】 T(x4 )={(T(x3 )−T(x1 ))/2}+T(x1 )+O2 ・・・ (57) T(x5 )={(T(x2 )−T(x3 ))/2}+T(x3 )+O3 ・・・ (58) そして、下記の(59)式および(60)式が成り立
つ。
【0250】 V(T(x3 )−T(x4 ))=V(T(x4 )−T(x1 )) =σ2 /8+δ2 2=σ2 /4・・・(59) V(T(x2 )−T(x5 ))=V(T(x5 )−T(x3 )) =σ2 /8+δ2 2=σ2 /4・・・(60) そして、上記の(59)式および(60)式から下記の
(61)式が導かれる。
【0251】δ2 2=σ2 /8・・・(61) また、これの結果から、変数On の分散は下記の(6
2)式で与えられる。
【0252】δn 2=σ2 /2n+1 ・・・(62) 尚、正規分布に従い乱数列randomを発生させるた
めには、例えばC言語の標準ライブラリとして用意され
ている整数の一様乱数rand()を用いて、下記の
(63)式で計算すると良い。但し、(63)式中のA
は、rand()の値閾を表し、Σrandi は、ra
nd()をNR回呼び出して加算することを表す。NR
の値は、例えば3または4程度で実用上十分である。
【0253】
【数23】
【0254】ところで、Mandelbrotが(Th
e Fractal Geometry of Nat
ure,W.H.Freeman,1982)において
論じているように、一般に位置の像に対して、分散は、
下記の(64)式の依存性を有する。
【0255】 V(T(xn-1 )−T(xn ))=|Xn+1 −Xn2Hσ2 ・・・(64) 但し、上記の(64)式中の指数Hは、フラクタル余次
元と呼ばれ、フラクタル次元Fdとは、下記の(65)
式の関係を有する。
【0256】Fd=3−H・・・(65) また、上記の(64)式を2次元で書き下すと下記の
(66)式で表せる。
【0257】
【数24】
【0258】また、次に、図19の(A)に、作成され
たフレームのxy平面投影図の一部分を示す。また、図
19の(B)および(C)に、図19の(A)に示した
xy平面投影図の黒丸で示す各格子点に新たな白丸で示
す格子点を加えながら格子を分割して、格子点間隔を減
少させていく手順を示す。図19の(A)〜図19の
(C)にそれぞれ示すxy平面投影図の順に、格子点間
隔の減少比率は1/21/2 とする。したがって、上記の
(66)式から、n回目の処理に際しては、(1/2)
nHσ2 の正規分布乱数をオフセット値として加算すれば
良いことが分かる。
【0259】次に、図20を参照して、第3の実施の形
態の天空画像作成装置の動作のうち、空・雲画像生成手
段64で実行される、空・雲画像の生成処理について説
明する。図20は、空・雲画像の生成処理の説明に供す
るフローチャートである。
【0260】空・雲画像を生成するにあたり、先ず、1
層目のフレームの雲の作成に必要なパラメータを読み込
む(図20のS401)。このパラメータは、フラクタ
ルデータの生成に必要なものと、雲の表現に関するデー
タとに分けられる。そして、このフラクタルデータT
[x][y]の生成に必要なデータは、使用する乱数系
列の標準偏差σ1 、乱数発生回数NR1 およびフラクタ
ル余次元数H1 を含む。また、この雲の表現に関するデ
ータは、フレーム端での天空画像のRGB値{ER1
EG1 、EB1 }、同値適用ρ域RANGE1 (0≦R
ANGE≦D1 /2)と空部分と雲部分との協会を定め
る数値CLOUD(0≦CLOUD≦1)およびα値設
定関数の傾きを与えるパラメータS1 を含む。尚、雲の
表現に関するデータの意味については後述する。
【0261】次に、1層目のフレームの格子の各多角形
頂点に対応するフラクタルデータを発生させる(図20
のS402)。ここでは、フレーム分割数がD1 である
とき、(D1 +1)×(D1 +1)個の格子頂点に対応
したフラクタルデータを、基底0の2次元配列Tに収め
る。また、標準偏差σ1 の正規分布乱数系列から得た乱
数値をgauss(σ1 )で表す。
【0262】また、フレーム4角A(T[0]
[0])、B(T[D1 ][0])、C(T[0][D
1 ])およびD(T[D1 ][D1 ])の初期データを
発生させる。これらの初期データは、下記の(67)〜
(70)式でそれぞれ与えられる。
【0263】 T[0][0]=gauss(σ1 )・σ1 2・・・(67) T[D1 ][0]=gauss(σ1 )・σ1 2・・・(68) T[0][D1 ]=gauss(σ1 )・σ1 2・・・(69) T[D1 ][D1 ]=gauss(σ1 )・σ1 2・・・(70) 次に、この4点A、B、CおよびDから開始して、順次
に格子点計算を繰返すことにより、上述の19の(A)
〜(C)に示すように、フレームを分割して、順次に格
子点間隔を減少させていく。
【0264】次に、図21を参照して、フレームの分割
処理のより具体的な例として、D1=4の場合の例につ
いて説明する。図21は、フレームの構格子点の分割処
理の説明に供する図である。
【0265】先ず、2M =D1 で定義される繰返し数M
(この場合はM=2)を求めておく。また、簡単のた
め、σ1 2をΣ、gauss(σ1 )をGauss(Σ)
と表記する。
【0266】そして、先ず、(0)Mを下記の(71)
式で与える。
【0267】M=logD1 /log2・・・(71) 次に、(1)Σ初期値を下記の(72)式として設定す
る。
【0268】Σ=σ1 2・・・(72) 次に、(2)周辺格子初期値A(T[0][0])、B
(T[4][0])、C(T[0][4])およびD
(T[4][4])を設定する。
【0269】次に、(3)Σに(1/2)H1を乗ずる。
(但し、指数を表す「H1」の表記は「H1 」の表記と
同じとする。)乗じた結果は、下記の(73)式で与え
られる。
【0270】Σ=Σ(1/2)H1・・・(73) 次に、(4)中間格子点E(T[2][2])を下記の
(74)式として算出する。
【0271】
【数25】
【0272】次に、(5)さらに、Σに(1/2)H1
乗ずる。
【0273】次に、(6)周辺格子点F(T[2]
[0])、G(T[0][2])、H(T[4]
[2])およびI(T[2][4])を、それぞれ下記
の(75)式から(78)式として算出する。
【0274】
【数26】
【0275】次に、(7)内部格子点を算出する。但
し、この段階では、算出すべき格子点がないため処理を
スキップする。
【0276】以降の処理は、Mの値に応じた上記の
(3)〜(7)の処理の繰返しである。次に(8)上記
の(3)の処理と同様に、さらに。Σに(1/2)H1
乗ずる。
【0277】次に、(9)上記の(4)の処理と同様
に、中点格子点J(T[1][1])、K(T[3]
[1])、L(T[1][3])およびM(T[3]
[3])をそれぞれ算出する。
【0278】次に、(10)上記の(3)の処理と同様
に、さらに。Σに(1/2)H1を乗ずる。
【0279】次に、(11)上記の(6)の処理と同様
に、周辺格子点(N[1][0])、O(T[3]
[0])、P(T[0][1])、Q(T[4]
[1])、(R[0][3])、S(T[4]
[3])、T(T[1][4])およびU(T[3]
[4])をそれぞれ算出する。
【0280】次に、(12)内部格子点V(T[2]
[1])、W(T[1][2])、X(T[3]
[2])およびY(T[2][3])をそれぞれ算出す
る。
【0281】また、各内部格子点は、下記の(79)式
〜(82)式でそれぞれ与えられる。
【0282】
【数27】
【0283】上記の(1)〜(12)の処理により、最
初2×2格子点のフレームを分割して5×5格子点のフ
レームを生成する。
【0284】次に、図22を参照して、上述したフレー
ムの分割処理の手順について、さらに説明する。図22
は、フレームの分割処理の手順の説明に供するフローチ
ャートである。
【0285】先ず、パラメータとして、フレーム分割数
1 、使用する乱数系列の標準偏差σ1 およびフラクタ
ル余次元数H1 の値をそれぞれ読み込む(図22のS5
01)。
【0286】次に、ΣをΣ=σ2 として表記し、繰返し
数MをM=logD1 /log2として算出する。さら
に、変数d0 およびd1 の初期値をそれぞれd0 =D
1 、d1 =D1 /2と設定する。
【0287】次に、フレーム4角のデータ初期値を設定
する(図22のS503)。
【0288】そして、以降の、図22のS504〜S5
12のステップの格子点算出処理ループをカウンタ変数
loopによりカウントしながらM回にわたって実行す
る。すなわち、先ず、カウンタ変数loopの値に1を
代入する(図22のS504)。
【0289】次に、ΣをΣ=(1/2)H1と再設定する
(図22のS505)。
【0290】次に、中点格子点を下記の(83)式のよ
うにして算出する(図22のS506)。
【0291】
【数28】
【0292】次に、ΣをΣ=(1/2)H1と再設定する
(図22の(S507)。
【0293】次に、周辺格子点を下記の(84)式のよ
うにして算出する(図22のS508)。
【0294】
【数29】
【0295】次に、内部格子点を下記の(85)式のよ
うにして算出する(図22のS509)。
【0296】
【数30】
【0297】次に、変数d0 およびd1 を再設定する。
すなわち変数d0 およびd1 にそれぞれd0 =d0
2、d1 =d1 /2を代入する(図22のS510)。
【0298】次に、カウンタ変数loopの値をインク
リメントする(図22のS511)。
【0299】次に、カウンタ変数loopの値が、繰返
し数Mを越えたか否かを判定する。。そして、カウンタ
変数loopの値が繰返し数Mを越えた場合(すなわち
「yes」の場合)は、処理を終了する。また、カウン
タ変数loopの値が繰返し数Mを越えていない場合
(すなわち「no」場合)は、上記のS505のステッ
プへ進む(図22のS512)。
【0300】以上のようにして、フレーム分割処理を行
なう。
【0301】次に、各格子点のデータをレンダリングで
きるように、カラーデータ形式に変換する。この実施の
形態においては、2層のフレームに天空画像を描くの
で、内側の層から外側の層が見通せなければならない。
そこで、内側の層である第1層は雲部分を残して残りの
部分を透明にして、そこから外側の層である第2層が見
通せるようにする。このようなことを実現する手段とし
て、α混合法が知られている。α混合法とは、ソースと
ターゲットとなる描画オブジェクトのカラー値を混合す
ることにより、透明および半透明な物体の表現を可能と
する方法である。そして、カラー値の混合値を決めるの
がα値(以下、Aで表す)。尚、α混合法については、
例えば、文献:(「GRAPHICS GEMS」A.
S.Glasser著、ACADEMIC PRESS
刊、1990年)に記載されている。また、α値を含め
たカラーデータ形式のRGB値を、「RGBA値」とも
表記する。
【0302】そして、RGBA値を求めるにあたり、先
ず、閾値T ̄を決める。但し、「T ̄」の表記は、
「T」の直上に「 ̄」を付した表記を同じとする。そし
て、全ての格子点のフラクタル値T[x][y]につい
てT ̄との大小関係を調べる。
【0303】そして、T ̄≦T[x][y]ならば、カ
ラーデータR[x][y]、G[x][y]、B[x]
[y]およびA[x][y]の値を下記の(86)式〜
(89)式でそれぞれ与える。
【0304】また、T ̄>T[x][y]ならば、カラ
ーデータR[x][y]、G[x][y]、およびA
[x][y]の値を下記の(90)式で与え、B[x]
[y]の値を下記の(91)式で与える。
【0305】
【数31】
【0306】そして、このようにして求めたRGBA値
をレンダリングするために、各格子点間隔で例えばグロ
ーシェーディングといったシェーディングを施せば、雲
部分を残した雲画像が得られる。尚、シェーディング方
法については、例えば文間:(「PROCEDURAL
ELEMENTS FOR COMPUTER GR
APHICS」,D.F.Rogers著、McGra
w−Hill刊、1985年)に記載されている。
【0307】しかしながら、上記のようにしてRGBA
値を設定した場合、天空画像の雲周辺部分に、空の青色
が一部残ってしまう。この理由は、シェーディングによ
る補完によって閾値T ̄内領域(T ̄≦T[x]
[y])にも青色が侵入するためである。このような雲
画像が第2フレームの雲部分と重なると、極めて不自然
な天空画像となってしまう。
【0308】そこで、より適切なα値の設定方法につい
て考える。ここで、図23のグラフに、上記の(89)
式および(90)式で与えられたα値(A(T))とフ
ラクタル値T[x][y]との関係について説明する。
図23のグラフは、横軸にフラクタル値T[x][y]
をとり、縦軸にα値(A(T))をとっている。そし
て、フラクタル値Tが閾値T ̄以下の場合は、A(T)
の値は、0である。また、フラクタル値Tが閾値T ̄を
越えた場合はA(T)の値は、Amax である。そして、
フラクタル値Tを表す線Iは、閾値T ̄で不連続となっ
ている。この閾値T ̄での不連続を解消することで、上
記の雲の部分に空の青色が侵入する問題点を解決するこ
とができる。
【0309】α値(A(T))をフラクタル値の関数で
表現する場合に、この関数に要求される性質は、T<T
 ̄においてA(T)≒0かつ、T ̄<TにおいてA
(T)≒Amax であって、A(T)の値がT ̄の近傍の
みで急激に変化することである。このようの性質を満た
す関数はいくつか考えられる。
【0310】ここでは、そのうちの一例として、下記の
(92)式で与えられる式について、図24を参照して
説明する。図24は、α値を表現する関数の説明に供す
るグラフである。そして、グラフの横軸にフラクタル値
(任意単位)をとり、縦軸にα値(任意単位)をとって
いる。
【0311】
【数32】
【0312】また、図24中の曲線I、IIおよびIII
は、それぞれ、関数y=10.0/{exp(T ̄−
T)/S1 +1}において、S=0.1、1.0および
10.0を代入した場合の特性である。図24の、各曲
線I、IIおよびIIに示すように、α値A(T)は、フラ
クタル値Tが増加するにつれて単調増加する。また、α
値A(T)は、S1 が減少するにつれてT=T ̄におい
てより急激に立ち上がるようになる。また、S1 の値に
関係なく、各曲線I、IIおよびIII は、点(T ̄、A
max /2)を通る。
【0313】尚、上記の(92)式以外の関係式として
は、例えばシグモイド関数やこれら関数を折れ線近似し
た関係式を適用することができる。
【0314】次に、天空画像の現実性を高めるために、
背景色の導入を行なう。背景データをものにフレーム端
近辺(フレーム周辺部)の色合いを決めるものである。
これは、低高度の遠景が大気中の微粒子(エアロゾル)
の影響で白く霞んで見える効果を再現する。背景色の導
入にあたり、フレーム端でのRGB値を{ER1 、EG
1 、EB1 }と設定する。そして、フレーム端でのRG
B値と同値のRGB値となる影響範囲を示すフレーム周
辺領域RANGE1 を設定する。このフレーム周辺領域
の一例を図25に示す。また、背景色の導入にあたり、
変数ΔRおよびΔGを下記の(93)式および(94)
式でそれぞれ定義する。
【0315】ΔR=δR・_xy・・・(93) ΔG=δG・_xy・・・(94) 但し、上記の(93)式において、δR=ER1 /(R
ANGE1 )とする。また、上記の(94)式におい
て、δG=EG1 /(RANGE1 )とする。
【0316】また、_xは、x≦RANGE1 のときに
_x=RANGE1 −xであり、D1 −x≦RANGE
1 のときに_x=RANGE1 +x−D1 であり、その
他の場合(すなわちx>RANGE1 かつD1 −x>R
ANGE1 の場合)には_x=0である。
【0317】また、_yは、y≦RANGE1 のときに
_y=RANGE1 −yであり、D1 −y=RANGE
1 のときに_y=RANGE1 +y−D1 であり、その
外の場合(すなわちy>RANGE1 かつD1 −y>R
ANGE1 の場合)には −y=0である。
【0318】但し、RANGE1 =0の場合は、δR=
δG=δB=0とする。
【0319】そして、より適切な方法でα値を設定する
ために、閾値設定にあたりパラメータCLOUD1 を導
入すれば、RGBA値の変換点順は以下のように表され
る。
【0320】第1フレームの各格子点データを、雲画像
として表示するためにRGBA値に変換する(図20の
S403)。その為に、先ず、各格子点データに対する
適当な閾値を設定する。この閾値は空領域と雲領域との
分離境界を定める。そのために、先ず、フラクタル値T
[x][y]の最大値をTmax とし、最小値をTmin
する。そして、閾値T ̄を下記の(95)式で与える。
【0321】 T ̄=Tmin +(Tmax −Tmin )CLOUD1 ・・・(95) そして、T ̄≦T[x][y]のときは、RGBA値の
R[x][y]、G[x][y]、B[x][y]およ
びA[x][y]の値は、それぞれ下記の(96)式、
(97)式、(98)式、(99)式で与えられる。
【0322】
【数33】
【0323】また、T ̄≦T[x][y]のときは、R
GBA値のR[x][y]、G[x][y]、B[x]
[y]およびA[x][y]の値は、それぞれ下記の
(100)式、(101)式、(102)式、(10
3)式で与えられる。
【0324】
【数34】
【0325】また、パラメータCLOUD1 の作用は、
CLOUD1 =1ならば完全な晴天であり、CLOUD
1 =0ならば完全な曇天である。そして、0<CLOU
<1で中間状態の雲密度画像を作る。
【0326】次に、第1フレームの場合と同様にして、
第2フレームの雲画像の作成に必要なパラメータを読み
込む(図20のS404)。ここでは、パラメータとし
て、標準偏差σ 、乱数発生回数NR2 、フラクタル
余次元数H2 、フレーム端での天空画像のRGB値{E
1 、EG1 、EB1 }、影響範囲RANGE2 、曇度
数CLOUD2 を読み込む。但し、α値は、最大値に固
定してある。従って、第2フレームの場合は、上記の
(92)式のS1 の代わりにS2 を設定する必要はな
い。尚、一般に雲は高度によってその形状が異なる。従
って、第1フレームにおけるパラメータσ1 およびH1
と第2フレームにおけるパラメータσ2 およびH2
は、互いに異なる値とすることが望ましい。
【0327】次に、第1フレームの場合(図20のS4
02)と同様にして、第2フレームのフラクタルデータ
を生成する(図20のS405)。
【0328】次に、第1フレームの場合(図20のS4
03)と同様にして、第2フレームのRGBA値の変換
を行なう(図20のS406)。但し、α値は最大値に
固定しておけば良いので、α値(A[x][y])は、
フラクタル値T[x][y]の値に関係なく、下記の
(104)式の値とする。
【0329】A[x][y]=Amax ・・・(104) 次に、このようにして生成したRGBA値を混合手段7
0でレンダリング処理し、記憶装置72、表示手段74
に送ることにより、2層のフレームからなる空・雲画像
を描画することができる。
【0330】尚、天空画像を描画するためのフレーム
は、2層に限定されるものではない。さらに、フレーム
の次元数に応じて、2次元または3次元、いずれの天空
としても描画することができる。
【0331】(第4の実施の形態)第4の実施の形態に
おいては、図26を参照して、第4の天空画像作成装置
の例について説明する。図26は、第4の実施の形態の
天空画像作成装置の説明に供する機能ブロック図であ
る。
【0332】第4の実施の形態の天空画像作成装置は、
入力手段80、フレーム設定手段82、フラクタル値設
定手段84、演算手段86、空・雲画像生成手段88、
合成手段90記憶装置92および表示手段94を具えて
いる。
【0333】そして、この入力手段80は、フレームサ
イズ、天空画像作成上の各種パラメータや太陽位置とい
った情報を入力するための手段である。
【0334】また、フレーム設定手段82は、この発明
の第4の天空画像作成装置によれば、天空画像の全天を
表す、複数の多角形で構成されたフレームを設定する。
【0335】また、フラクタル値設定手段84は、フレ
ームの多角形頂点の各々について、フラクタル手法によ
り発生させたフラクタル値を設定する。
【0336】また、演算手段86は、フラクタル値に規
則性を与える処理を行なう。
【0337】また、空・雲画像生成手段88は、フレー
ムの多角形頂点の各々について、フラクタル手法により
発生させたフラクタル値をそれぞれ設定する。そして、
空・雲画像生成手段88は、当該フラクタル値に基づい
て、天空画像のうちの空画像を構成する多角形頂点と雲
画像を構成する多角形頂点とをそれそれぞれ決定し、か
つ、各多角形頂点でのフラクタル値をカラーデータにそ
れぞれ変換して空・雲画像を生成する。
【0338】また、合成手段90は、フレームの多角形
頂点の各々について、背景色とRGB値とを合成し、合
成結果に基づいて天空画像を作成する。
【0339】また、記憶装置92は、画像データを記憶
する装置である。
【0340】また、表示手段94は、画像データを表示
する手段である。
【0341】尚、この実施の形態の天空画像作成装置を
実現する際の基本ハードウエア構成は、例えば、第1の
実施の形態において図2を用いて説明した基本ハードウ
エア構成とすると良い。
【0342】次に、第4の実施の形態の天空画像作成装
置の動作について説明する。
【0343】先ず、フレーム設定手段82において、1
層のフレームを設定する。ここでは、上述の第3の実施
の形態の場合と同様にしてフレームを設定するため、フ
レーム設定方法の詳細な説明を省略する。
【0344】次に、天空画像の描画処理行なう。図27
に、天空画像描画データの掲載処理フローチャートを示
す。
【0345】天空画像の描画処理にあたり、先ず、雲画
像を作成するためのパラメータを読み込む(図27のS
401)。この実施の形態では、上述の第3の実施の形
態の場合と同様にして雲パラメータを読み込む。但し、
この実施の形態においては、天空画像の描画のためのパ
ラメータとして、第3の実施の形態において読み込んだ
パラメータに加えて、演算処理モードパラメータ「MO
DE」を読み込む。このパラメータMODEは、演算手
段86において行なう演算処理の内容を指定する。
【0346】次に、フラクタル値設定手段84におい
て、フラクタルデータを生成する。ここでは、上述の第
3の実施の形態と同様にして、フラクタル値を設定する
ため、フラクタル値の設定方法の詳細な説明を省略す
る。
【0347】ところで、フラクタル値をそのまま用いて
雲画像を作成すると、雲の形状はランダムとなる。これ
に対して、実際の雲の形状は、例えば巻雲、層雲、積雲
等の基本形状に分類される。従って、実際の雲の形状に
は大まかな規則性がある。
【0348】そこで、第4の実施の形態では、より現実
的な雲画像を作成するため、演算手段86において、フ
ラクタルデータに対する演算処理を行なって、フラクタ
ル値に規則性を与える処理を行なう(図27のS40
3)。
【0349】ここで、図28を参照して、フラクタル値
の演算処理について説明する。図28は、フラクタル値
演算処理の説明に供するフローチャートである。
【0350】演算処理を行なうにあたり、先ず、演算処
理モードパラメータMODEの中から処理に要するパラ
メータを選択する。ここでは、7つの演算処理モードの
パラメータの中から選択する(図28のS601)。7
つの演算処理モードのパラメータとは、(1)Edge
d,(2)Striped1D,(3)Striped
2D,(4)Dotted1,(5)Dotted2,
(6)Waved1Dおよび(7)Waved2Dであ
る。
【0351】この(1)Edgedは、雲の形状に積雲
の様な規則性を与える演算処理を指定する。また、
(2)Striped1Dは、雲の形状に筋状の規則性
を与える演算処理を指定する。また、(3)Strip
ed2Dは、雲の形状に2次元の筋状の規則性を与える
演算処理を指定する。また、(4)Dotted1およ
び(5)Dotted2は、雲の形状に鱗状の規則性を
与える演算処理を指定する。(6)Waved1Dは、
雲の形状に波状の規則性を与える演算処理を指定する。
(7)Waved2Dは、雲の形状に2次元の波状の規
則性を与える演算処理を指定する。
【0352】尚、上記の7つのモードのうち、(2)〜
(5)のモードは、互いに重複して選択しても画像上の
意味はない。しかし、(2)〜(5)のモードの中のい
ずれか1つのモードと、(1)のモード、(6)のモー
ドおよび(7)のモードの名中の少なくとも1つのモー
ドとを組合せれば、より多彩なパターンの雲の形状を作
成することができる。
【0353】次に、演算処理モードが、(1)Edge
dであるか否かを判定する(図28のS602)。判定
の結果が「no」である場合は、S604のステップへ
進む。また、判定の結果が「yes」の場合は、S60
3のステップへ進む。
【0354】また、判定の結果が「yes」の場合は、
(1)Edgedの指定する、雲画像において雲パタ−
ンをフレーム周辺部分に集中させて、雲の形状に積雲状
の規則性を与える演算処理を行なう(図28のS60
3)。
【0355】(Edgedの演算処理について)ここで
は、図29を参照して、(1)Edgedの演算処理に
ついて説明する。
【0356】(1)Edgedの演算処理を行なうにあ
たり、先ず、必要なパラメータを読み込む(図29のS
701)。ここでは、パラメータとして、フレームの中
心から周辺領域内周部までのフレームを構成する多角形
頂点数を表すパラメータ「inner」と、フレームの
中心から周辺領域外周部までのフレームを構成する多角
形頂点数を表すパラメータ「outer」とを読み込
む。但し、0≦inner<outer≦D/2の関係
を満たす。
【0357】次に、変数slopeを定義する(図29
のS702)。ここでは、変数slopeを下記の(1
05)式で与える。
【0358】 slope=(outer−inner)/(D/2)・・・(105) そして、全ての多角形頂点[x、y]について、フラク
タル値T[x][y]の演算処理を行なうために、先
ず、「y」の「0」を代入する(図29のS703)。
【0359】次に、「x」に「0」を代入する(図29
のS704)。
【0360】そして、フラクタル値T[x][y]の演
算処理を行なう(図29のS705)。ここでは、フラ
クタル値T[x][y]を下記の(106)式によって
再計算する。
【0361】 T[x][y]=T[x][y]+slope・MAX(ABS(x−D/2 ),ABS(y−D/2))・・・(106) 次に、「x」の代入値を「x+1」にインクリメントす
る(図29のS706)。
【0362】次に、「x」の値がDを超えたか否か判定
する(図29のS707)。「yes」の場合には、次
のS708のステップへ進む。また、「no」の場合に
は、S705のステップへ戻る。
【0363】次に、「y」の代入値を「y+1」にイン
クリメントとする(図29のS708)。
【0364】次に、「y」の値がDを超えたか否か判定
する(図29のS709)。「yes」の場合には、
(1)Edgedの演算処理を終了する。また、「n
o」の場合には、S704のステップへ戻る。
【0365】以上のようにして、(1)Edgedの演
算処理を行なう。
【0366】次に、選択されたモードが、上記の7つの
モードのうちの(2)〜(5)のモードであるか否かを
判定する(図28のS604)。
【0367】選択されたモードが(2)であると判定さ
れた場合は、S605のステップへ進む。また、(3)
であると判定された場合は、S606のステップへ進
む。また、(4)であると判定された場合は、S607
のステップへ進む。また、(5)であると判定された場
合は、S608のステップへ進む。そして、(2)〜
(5)のいずれでもないと判定された場合は、S609
のステップへ進む。
【0368】(Striped1Dの演算処理につい
て)ここでは、先ず、図30を参照して、(2)Str
iped1Dの指定する、筋状の雲パターンを発生させ
る演算処理について説明する。
【0369】(2)Striped1Dの演算処理を行
なうにあたり、先ず、必要なパラメータを読み込む(図
30のS801)。ここでは、「bottom」、「t
op」および「ratio」の3つのパラメータを読み
込む。
【0370】このパラメータbottomおよびtop
は、それぞれ、現在のフラクタル値に加算する数値であ
り、bottom<topの関係を満たす。そして、パ
ラメータbottomを加算した部分は、筋状の雲パタ
ーンの凹部を生成する。また、パラメータtopを加算
した部分は、筋状の雲パターンの凸部を生成する。
【0371】また、パラメータratioは、全雲パタ
ーンに占める筋状の雲パターンの部分の比率を与え、0
≦ratio≦1の関係を満たす。
【0372】次に、変数limitを算出する(図30
のS802)。ここでは、変数limitの算出にあた
り、適当な乱数発生関数rand()を用いる。そし
て、この乱数の値域をRANDMAX として、変数lim
itを下記の(107)式で与える。
【0373】 limit=RANDMAX (1−ratio)・・・(107) 以下、S803〜S811のステップにおいて、筋状の
雲パターンの凸部を作成するための計算を行なう。
【0374】そして、多角形頂点[x、y]のうちの
「y」が偶数の頂点について、フラクタル値T[x]
[y]の演算処理を行なうために、先ず、「y」の
「0」を代入する(図30のS803)。
【0375】次に、このとき乱数発生関数rand()
で発生させた乱数の値が、上記の(107)式で与えら
れる変数limitの値以上であるか否かを判定する。
そして、「yes」の場合には、S805のステップへ
進む。また、「no」の場合には、S810のステップ
へ進む。
【0376】次に、S804において「yes」の場合
には、「x」に「0」を代入する(図30のS80
5)。
【0377】次に、このとき乱数発生関数rand()
で発生させた乱数の値が、上記の(107)式で与えら
れる変数limitの値以上であるか否かを判定する。
そして、「yes」の場合には、S807のステップへ
進む。また、「no」の場合には、S808のステップ
へ進む。
【0378】そして、S806において「yes」の場
合には、フラクタル値T[x][y]の演算処理を行な
う(図30のS807)。ここでは、フラクタル値T
[x][y]を下記の(108)式によって再計算す
る。
【0379】 T[x][y]=T[x][y]+top・・・(108) 次に、「x」の代入値をインクリメントする(図30の
S808)。
【0380】次に、「x」の値がDを超えたか否か判定
する(図30のS809)。超えた場合には、次のS8
10のステップへ進む。また、超えていない場合には、
S806のステップへ戻る。
【0381】次に、「y」の代入値を2増加する(図3
0のS810)。
【0382】次に、「y」の値がDを超えたか否か判定
する(図30のS811)。超えた場合には、S812
のステップへ進む。また、超えていない場合には、S8
04のステップへ戻る。
【0383】次に、S812のステップにおいては、上
記のS803〜S811における凸部の計算の場合と同
様にして、「y」が奇数の頂点について、筋状の雲パタ
ーンの凹部を作成するための計算を行なう。そして、S
812においては、S807におけるフラクタル値の再
計算にあたり、上記の(108)式の代わりに、下記の
(109)式によって再計算を行なう。
【0384】 T[x][y]=T[x][y]+bottom・・・(109) 以上のようにして、(2)Striped1Dの演算処
理を行なう。
【0385】(Striped2Dの演算処理につい
て)次に、図31および図32を参照して、図28のS
606の処理(3)の内容として(3)Striped
2Dの指定する、2次元の筋状の雲パターンを発生させ
る演算処理について説明する。この雲パターンは、
(2)Striped1Dの指定する筋状の雲パターン
を2次元に拡張したものである。図31は、(3)St
riped2Dの演算処理の説明に供する前半のフロー
チャートである。また、図32は、図31につながる、
後半のフローチャートである。
【0386】(3)Striped2Dの演算処理を行
なうにあたり、先ず、必要なパラメータを読み込む(図
31のS901)。ここでは、「bottom」、「t
op」および「ratio」の3つのパラメータを読み
込む。
【0387】このパラメータbottomおよびtop
は、それぞれ、現在のフラクタル値に加算する数値であ
り、bottom<topの関係を満たす。そして、パ
ラメータbottomを加算した部分は、筋状の雲パタ
ーンの凹部を生成する。また、パラメータtopを加算
した部分は、筋状の雲パターンの凸部を生成する。
【0388】また、パラメータratioは、全雲パタ
ーンに占める筋状の雲パターンの部分の比率を与え、0
≦ratio≦1の関係を満たす。
【0389】次に、変数limitを算出する(図31
のS902)。ここでは、変数limitの算出にあた
り、適当な乱数発生関数rand()を用いる。そし
て、この乱数の値域をRANDMAX として、変数lim
itを下記の(110)式で与える。
【0390】 limit=RANDMAX (1−ratio)・・・(110) 以下、S903〜S920のステップにおいて、筋状の
雲パターンの凸部を作成するための計算を行なう。
【0391】そして、多角形頂点[x、y]のうちの
「y」が偶数の頂点について、フラクタル値T[x]
[y]の演算処理を行なうために、先ず、「y」の
「0」を代入する(図31のS903)。
【0392】次に、変数lenを設定する(図31のS
904)。ここでは、変数lenを下記の(111)式
で定義する。
【0393】 len=ABS(D−2y)・・・(111) この変数lenは、y=x軸上およびy=D−x軸上で
の2重演算処理を避けるために設定する。そして、両軸
からそれぞれ変数lenの範囲内にある頂点を、フラク
タル値の演算処理対象からはずす。
【0394】次に、このとき乱数発生関数rand()
で発生させた乱数の値が、上記の(107)式で与えら
れる変数limitの値以上であり、かつ、y<D/2
であるか否かを判定する(図31のS905)。そし
て、「yes」の場合には、S906のステップへ進
む。そして、S906〜S911のステップにおいて、
y≦x≦y+lenを満たす全てのxについて、y=D
−xの軸よりも原点寄りの領域内の頂点について処理を
行なう。また、「no」の場合には、S912のステッ
プへ進む。
【0395】次に、S905において「yes」の場合
には、「x」に「y」を代入する(図31のS90
6)。
【0396】次に、このとき乱数発生関数rand()
で発生させた乱数の値が、上記の(107)式で与えら
れる変数limitの値以上であるか否かを判定する
(図31のS907)。そして、「yes」の場合に
は、S908のステップへ進む。また、「no」の場合
には、S910のステップへ進む。
【0397】そして、S907において「yes」の場
合には、フラクタル値T[x][y]の演算処理を行な
う(図31のS908)。ここでは、フラクタル値T
[x][y]を下記の(112)式によって再計算す
る。
【0398】 T[x][y]=T[x][y]+top・・・(112) 次に、フラクタル値T[y][x]の演算処理を行なう
(図31のS909)。ここでは、フラクタル値T
[y][x]を下記の(113)式によって再計算す
る。
【0399】 T[y][x]=T[y][x]+top・・・(113) 次に、「x」の代入値をインクリメントする(図31の
S910)。
【0400】次に、「x」の値がy+lenを超えたか
否か判定する(図31のS911)。「yes」の場合
には、次のS912のステップへ進む。また、「no」
の場合には、S907のステップへ戻る。
【0401】次に、このとき乱数発生関数rand()
で発生させた乱数の値が、上記の(107)式で与えら
れる変数limitの値以上であり、かつ、D/2≦y
であるか否かを判定する(図32のS912)。そし
て、「yes」の場合には、S913のステップへ進
む。そして、S913〜S918のステップにおいて、
D−y≦x≦D−y+lenを満たす全てのxについ
て、y=D−xの軸に対して原点と反対側の領域内の頂
点について処理を行なう。また、「no」の場合には、
S919のステップへ進む。
【0402】次に、S912において「yes」の場合
には、「x」に「D−y」を代入する(図32のS91
3)。
【0403】次に、このとき乱数発生関数rand()
で発生させた乱数の値が、上記の(107)式で与えら
れる変数limitの値以上であるか否かを判定する
(図32のS914)。そして、「yes」の場合に
は、S915のステップへ進む。また、「no」の場合
には、S917のステップへ進む。
【0404】そして、S914において「yes」の場
合には、フラクタル値T[x][y]の演算処理を行な
う(図32のS915)。ここでは、フラクタル値T
[x][y]を上記の(112)式によって再計算す
る。
【0405】次に、フラクタル値T[y][x]の演算
処理を行なう(図32のS916)。ここでは、フラク
タル値T[y][x]を上記の(113)式によって再
計算する。
【0406】次に、「x」の代入値をインクリメントす
る(図32のS917)。
【0407】次に、「x」の値がD−y+lenを超え
たか否か判定する(図32のS918)。「yes」の
場合には、次のS919のステップへ進む。また、「n
o」の場合には、S914のステップへ戻る。
【0408】次に、「y」の代入値を2増加する(図3
2のS919)。
【0409】次に、「y」の値がDを超えたか否か判定
する(図32のS920)。「yes」の場合には、S
921のステップへ進む。また、「no」の場合には、
S914のステップへ戻る。
【0410】次に、S921のステップにおいては、上
記のS903〜S820における凸部の計算の場合と同
様にして、「y」が奇数の頂点について、筋状の雲パタ
ーンの凹部を作成するための計算を行なう。そして、S
921においては、S908およびS915におけるフ
ラクタル値の再計算にあたり、上記の(112)式の代
わりに、下記の(114)式によって再計算を行なう。
【0411】 T[x][y]=T[x][y]+bottom・・・(114) また、S921においては、フラクタル値の再計算にあ
たり、S909およびS916における上記の(11
3)式の代わりに、下記の(115)式によって再計算
を行なう。
【0412】 T[y][x]=T[y][x]+bottom・・・(115) 以上のようにして、(3)Striped2Dの演算処
理を行なう。
【0413】(Dotted1Dの演算処理について)
ここでは、先ず、図33を参照して、(4)Dotte
d1Dの指定する、筋状の雲パターンを発生させる演算
処理について説明する。
【0414】(4)Dotted1Dの演算処理を行な
うにあたり、先ず、必要なパラメータを読み込む(図3
3のS1001)。ここでは、「bottom」、「t
op」および「ratio」の3つのパラメータを読み
込む。
【0415】このパラメータbottomおよびtop
は、それぞれ、現在のフラクタル値に加算する数値であ
り、bottom<topの関係を満たす。そして、パ
ラメータbottomを加算した部分は、鱗状の雲パタ
ーンの凹部を生成する。また、パラメータtopを加算
した部分は、鱗状の雲パターンの凸部を生成する。
【0416】また、パラメータratioは、全雲パタ
ーンに占める鱗状の雲パターンの部分の比率を与え、0
≦ratio≦1の関係を満たす。
【0417】次に、変数limitを算出する(図33
のS1002)。ここでは、変数limitの算出にあ
たり、適当な乱数発生関数rand()を用いる。そし
て、この乱数の値域をRANDMAX として、変数lim
itを下記の(116)式で与える。
【0418】 limit=RANDMAX (1−ratio)・・・(116) 以下、S1003〜S1011のステップにおいて、鱗
状の雲パターンの凸部を作成するための計算を行なう。
【0419】そして、多角形頂点[x、y]のうちの
「y」が偶数の頂点について、フラクタル値T[x]
[y]の演算処理を行なうために、先ず、「y」の
「0」を代入する(図33のS1003)。
【0420】次に、このとき乱数発生関数rand()
で発生させた乱数の値が、上記の(116)式で与えら
れる変数limitの値以上であるか否かを判定する。
そして、「yes」の場合には、S1005のステップ
へ進む。また、「no」の場合には、S1010のステ
ップへ進む。
【0421】次に、S1004において「yes」の場
合には、「x」が偶数の頂点について、フラクタル値T
[x][y]の演算処理を行なうために、先ず、「x」
に「0」を代入する(図33のS1005)。
【0422】次に、このとき乱数発生関数rand()
で発生させた乱数の値が、上記の(116)式で与えら
れる変数limitの値以上であるか否かを判定する。
そして、「yes」の場合には、S1007のステップ
へ進む。また、「no」の場合には、S1008のステ
ップへ進む。
【0423】そして、S1006において「yes」の
場合には、フラクタル値T[x][y]の演算処理を行
なう(図33のS1007)。ここでは、フラクタル値
T[x][y]を下記の(117)式によって再計算す
る。
【0424】 T[x][y]=T[x][y]+top・・・(117) 次に、「x」の代入値を2増加する(図33のS100
8)。
【0425】次に、「x」の値がDを超えたか否か判定
する(図33のS1009)。超えた場合には、次のS
1010のステップへ進む。また、超えていない場合に
は、S1006のステップへ戻る。
【0426】次に、「y」の代入値を2増加する(図3
3のS1010)。
【0427】次に、「y」の値がDを超えたか否か判定
する(図33のS1011)。超えた場合には、S10
12のステップへ進む。また、超えていない場合には、
S1004のステップへ戻る。
【0428】次に、S1012のステップにおいては、
上記のS1003〜S1011における凸部の計算の場
合と同様にして、「x」が奇数の頂点について、鱗状の
雲パターンの凸部を作成するための計算を行なう。
【0429】次に、S1013のステップにおいては、
上記のS1003〜S1012における凸部の計算の場
合と同様にして、「y」が奇数の頂点について、鱗状の
雲パターンの凹部を作成するための計算を行なう。
【0430】そして、S1013においては、S100
7におけるフラクタル値の再計算にあたり、上記の(1
17)式の代わりに、下記の(118)式によって再計
算を行なう。
【0431】 T[x][y]=T[x][y]+bottom・・・(118) 以上のようにして、(4)Dotted1Dの演算処理
を行なう。
【0432】(Dotted2Dの演算処理について) (5)Dotted2Dの演算処理の内容は、上述し
た、(3)Striped2Dの演算処理と同様である
ので、その詳細な説明を省略する。但し、(5)Dot
ted2Dの演算処理においては、(3)Stripe
d2Dの演算処理におけるS910およびS917にお
けるxのインクリメント数が1から2に変わる。また、
Dotted2Dの演算処理においては、(3)Str
iped2Dの演算処理におけるS921の凹部処理
で、yだけでなく、xも偶数および奇数について計算す
る。
【0433】次に、演算処理モードが、(6)Wave
d1Dまたは(7)Waved2Dであるか否かを判定
する(図28のS609)。演算処理モードが、(6)
Waved1Dの場合は、S610のステップへ進む。
また、演算処理モードが、(7)Waved2Dの場合
は、S611のステップへ進む。また、判定の結果が
「no」である場合は、演算処理を終了する。
【0434】(Waved1Dの演算処理について)次
に、図34を参照して、(6)Waved1Dの演算処
理について説明する。
【0435】(6)Waved1Dの演算処理において
は、前述の(1)式で与えられる、正弦波と余弦波との
合成関数を全てのxについてフラクタル値に加算するこ
とで波状パターンを作り出す。
【0436】そのために、先ず、必要なパラメータを読
み込む(図34のS1101)。ここでは、パラメータ
として、正の整数N(N=1、2、・・・)、振幅a
n 、振幅bn 、周期2L(W/D≦L≦W/2)、初期
位相ωanおよび初期位相ωbnを読み込む。但し、nは、
{n|0,1,・・・,N−1}を満足する。
【0437】次に、周期Pを算出する(図34のS11
02)。ここでは、周期Pを下記の(119)式で与え
る。
【0438】P=2π/L・・・(119) そして、全てのn、xおよびyについて、フラクタル値
T[x][y]の演算処理を行なうために、先ず、
「n」の「0」を代入する(図34のS1103)。次
に、「y」の「0」を代入する(図34のS110
4)。次に、「x」に「0」を代入する(図34のS1
105)。
【0439】そして、フラクタル値T[x][y]の演
算処理を行なう(図34のS1106)。ここでは、フ
ラクタル値T[x][y]を下記の(120)式によっ
て再計算する。
【0440】
【数35】
【0441】次に、「x」の代入値を「x+1」にイン
クリメントする(図34のS1107)。
【0442】次に、「x」の値がDを超えたか否か判定
する(図34のS1108)。「yes」の場合には、
次のS1109のステップへ進む。また、「no」の場
合には、S1106のステップへ戻る。
【0443】次に、「y」の代入値を「y+1」にイン
クリメントとする(図34のS1109)。
【0444】次に、「y」の値がDを超えたか否か判定
する(図34のS1110)。「yes」の場合には、
次のS1111のステップへ進む。また、「no」の場
合には、S1106のステップへ戻る。
【0445】次に、「n」の代入値を「n+1」にイン
クリメントする(図34のS1111)。
【0446】次に、「n」の値がNを超えたか否か判定
する(図34のS1112)。「yes」の場合には、
(6)Wavedの演算処理を終了する。また、「n
o」の場合には、S1104のステップへ戻る。
【0447】以上のようにして、(6)Waved1D
の演算処理を行なう。
【0448】(Waved2Dの演算処理について)次
に、図35を参照して、(7)Waved2Dの演算処
理について説明する。
【0449】(7)Waved2Dの演算処理において
は、上記の(1)式で与えられる、正弦波と余弦波との
合成関数を全てのxについてフラクタル値に加算し、上
記の(2)式で与えられる、正弦波と余弦波との合成関
数を全てのxについてフラクタル値に加算することで波
状パターンを作り出す。
【0450】そのために、先ず、必要なパラメータを読
み込む(図35のS1201)。ここでは、パラメータ
として、正の整数N(N=1、2、・・・)、振幅a
n 、振幅bn 、周期2L(W/D≦L≦W/2)、初期
位相ωanおよび初期位相ωbnを読み込む。但し、nは、
{n|0,1,・・・,N−1}を満足する。
【0451】次に、周期Pを算出する(図35のS12
02)。ここでは、周期Pを下記の(121)式で与え
る。
【0452】P=2π/L・・・(121) そして、全てのn、xおよびyについて、フラクタル値
T[x][y]の演算処理を行なうために、先ず、
「n」の「0」を代入する(図35のS1203)。次
に、「y」の「0」を代入する(図35のS120
4)。
【0453】次に、変数lenを設定する(図35のS
1205)。ここでは、変数lenを下記の(122)
式で定義する。
【0454】 len=ABS(D−2y)・・・(122) この変数lenは、y=x軸上およびy=D−x軸上で
の2重演算処理を避けるために設定する。そして、両軸
からそれぞれ変数lenの範囲内にある頂点を、フラク
タル値の演算処理対象からはずす。
【0455】次に、y<D/2であるか否かを判定する
(図35のS1206)。そして、「yes」の場合に
は、S1207のステップへ進む。そして、S1207
〜S1211のステップにおいて、y≦x≦y+len
を満たす全てのxについて、y=D−xの軸よりも原点
寄りの領域内の頂点について処理を行なう。また、「n
o」の場合には、S1212のステップへ進む。
【0456】次に、S1206において「yes」の場
合には、「x」に「y」を代入する(図35のS120
7)。
【0457】次に、フラクタル値T[x][y]の演算
処理を行なう(図35のS1208)。ここでは、フラ
クタル値T[x][y]を下記の(123)式によって
再計算する。
【0458】
【数36】
【0459】次に、フラクタル値T[y][x]の演算
処理を行なう(図35のS1209)。ここでは、フラ
クタル値T[y][x]を下記の(124)式によって
再計算する。
【0460】
【数37】
【0461】次に、「x」の代入値を「x+1」にイン
クリメントする(図35のS1210)。
【0462】次に、「x」の値がy+lenを超えたか
否か判定する(図35のS1211)。「yes」の場
合には、次のS1212のステップへ進む。また、「n
o」の場合には、S1208のステップへ戻る。
【0463】次に、S1211において「yes」の場
合には、「x」に「D−y」を代入する(図35のS1
212)。そして、S1212〜S1216のステップ
において、D−y≦x≦D−y+lenを満たす全ての
xについてフラクタル値を再計算する。
【0464】次に、フラクタル値T[x][y]の演算
処理を行なう(図35のS1213)。ここでは、フラ
クタル値T[x][y]を上記の(123)式によって
再計算する。
【0465】次に、フラクタル値T[y][x]の演算
処理を行なう(図35のS1214)。ここでは、フラ
クタル値T[y][x]を上記の(124)式によって
再計算する。
【0466】次に、「x」の代入値を「x+1」にイン
クリメントする(図35のS1215)。
【0467】次に、「x」の値がD−y+lenを超え
たか否か判定する(図35のS1216)。「yes」
の場合には、次のS1217のステップへ進む。また、
「no」の場合には、S1213のステップへ戻る。
【0468】次に、「y」の代入値を「y+1」にイン
クリメントする(図35のS1217)。
【0469】次に、「y」の値がDを超えたか否か判定
する(図35のS1218)。「yes」の場合には、
次のS1219のステップへ進む。また、「no」の場
合には、S1205のステップへ戻る。
【0470】次に、「n」の代入値を「n+1」にイン
クリメントする(図35のS1219)。
【0471】次に、「n」の値がN以上か否か判定する
(図35のS1220)。「yes」の場合には、
(7)Waved2Dの演算処理を終了する。また、
「no」の場合には、S1204のステップへ戻る。
【0472】以上のようにして、(7)Waved2D
の演算処理を行なう。
【0473】尚、上記の各演算処理は、必要に応じて複
数回実行することも可能である。また、演算手法の中で
2次元処理を行なうものについては、処理例としてx軸
およびy軸方向に対してパターンを発生させる方法を示
したが、パターンの発生方向はこれに限定されるもので
はない。例えば、対角線方向(x軸およびy軸に対して
45°の方向)にパターンを発生させても良い。
【0474】次に、上述の第3の実施の形態の場合と同
様にして、演算処理結果をRGB変換のための閾値を算
出する(図27のS404)。
【0475】次に、上述の第3の実施の形態の場合と同
様にして、演算処理結果をRGBデータに変換する(図
27のS405)。
【0476】以上のようにして、第4の実施の形態にお
ける天空画像を作成する。
【0477】
【発明の効果】この発明の第1の天空画像作成装置によ
れば、複数の多角形で構成されたフレームを設定して天
空画像を作成し、さらに、雲による太陽光線の輝度の減
衰効果を計算して天空画像を作成する。このため、この
第1の天空画像作成装置によれば、天空画像を画像とし
ての現実性を保ちつつ、高速で描画できる。その上、輝
度の減衰効果を計算する際に設定する太陽高度によっ
て、天候や時間の効果を表現することができる。従っ
て、この第1の天空画像作成装置によれば、特にリアル
タイム性が要求される分野で用いるのに好適な天空画像
を作成することができる。
【0478】また、この発明の第2の天空画像作成装置
によれば、大気層による太陽光線の散乱効果を計算し、
かつ、加色合成を行なって天空画像を作成する。その結
果、より現実的な天空画像を作成することができる。そ
の上、太陽光線の散乱効果を計算する際に設定する太陽
高度によって、天候や時間の効果を表現することができ
る。従って、この第2の天空画像作成装置によれば、特
にリアルタイム性が要求される分野で用いるのに好適な
天空画像を作成することができる。
【0479】また、この発明の第3の天空画像作成装置
によれば、 このように第3の天空画像作成装置によれ
ば、内層フレームおよび外層フレームからなる2重のフ
レームを設定する。その結果、内層フレームおよび外層
フレームにそれぞれ雲画像を作成することにより、2層
の雲画像を作成することができる。その結果、現実的な
見かけの雲画像を作成することができる。従って、この
第3の天空画像作成装置によれば、3次元的な構造を計
算して雲画像を作成する必要がない。このため、第3の
天空画像作成装置によれば、雲画像の計算にあたり、3
次元的な構造を計算をする場合よりもデータ量を低減す
ることができ、また、雲画像の計算に要する時間の低減
を図ることができる。
【0480】また、この発明の第4の天空画像作成装置
によれば、フレームの多角形頂点の各々のフラクタル値
に規則性を与える処理を行なうことにより、より現実的
な雲画像を作成することができる。従って、この発明の
第4の天空画像作成装置によれば、天空画像のうちの特
に雲画像を画像としての現実性を十分に保ちつつ高速で
描画でき、その上、随時雲の形状変更が可能である。従
って、この第4の天空画像作成装置によれば、多種多彩
な雲画像を高速で描画することができる。このため、特
にリアルタイム性が要求される分野で用いるのに好適で
ある。
【図面の簡単な説明】
【図1】第1の実施の形態の天空画像作成装置の機能ブ
ロック図である。
【図2】基本ハードウエアの説明に供するブロック図で
ある。
【図3】第1の実施の形態の描画処理の説明に供するフ
ローチャートである。
【図4】減衰輝度算出の説明に供するフローチャートで
ある。
【図5】雲内部の経路長の算出の説明に供する図であ
る。
【図6】第2の実施の形態の天空画像作成装置の機能ブ
ロック図である。
【図7】第2の実施の形態の天空画像の描画処理の説明
に供するフローチャートである。
【図8】経路長および減光効果の説明に供するフローチ
ャートである。
【図9】経路長の説明図である。
【図10】天頂輝度の説明図である。
【図11】CIE標準光分光分布データ例である。
【図12】加色合成の説明に供するフローチャートであ
る。
【図13】第3の実施の形態の天空画像作成装置の機能
ブロック図である。
【図14】第3の実施の形態の天空画像の描画処理の説
明に供するフローチャートである。
【図15】天空描画フレームの構造の説明に供する図で
ある。
【図16】天空描画フレームの構造の説明に供する図で
ある。
【図17】天空描画フレームの構造の説明に供する図で
ある。
【図18】中点変移法の概念の説明に供する図である。
【図19】格子点分割の説明に供する図である
【図20】第3の実施の形態における天空描画データの
計算処理のフローチャートである。
【図21】格子分割例の説明に供する図である。
【図22】フレーム分割処理のフローチャートである。
【図23】α値設定関数の振舞を示す図(1)である。
【図24】α値設定関数の振舞を示す図(2)である。
【図25】フレーム周辺領域の説明に供する図である。
【図26】第4の実施の形態の天空画像作成装置の機能
ブロック図である。
【図27】第4の実施の形態における天空描画データの
計算処理のフローチャートである。
【図28】フラクタル値演算処理のフローチャートであ
る。
【図29】(1)Edgedの演算処理のフローチャー
トである。
【図30】(2)Striped1Dの演算処理のフロ
ーチャートである。
【図31】(3)Striped2Dの演算処理の前半
フローチャートである。
【図32】図31続く、後半のフローチャートである。
【図33】(4)Dotted1Dの演算処理のフロー
チャートである。
【図34】(6)Waved1Dの演算処理のフローチ
ャートである。
【図35】(7)Waved2Dの演算処理のフローチ
ャートである。
【符号の説明】
10:入力手段 12:フレーム設定手段 14:空・雲画像生成手段 16:減衰輝度算出手段 18:天空輝度分布算出手段 20:加色合成手段 22:記憶装置 24:表示手段 26:入力装置 28:CPU 30:記憶装置 32:ディスプレイメモリ 34:表示装置 36:表示制御装置 40:入力手段 42:フレーム設定手段 44:空・雲画像生成手段 46:経路長算出手段 48:減衰結果算出手段 50:第1加色合成手段 52:天空輝度分布算出手段 54:第2加色合成手段 56:記憶装置 58:表示手段 60:入力手段 62:フレーム設定手段 64:空・雲画像生成手段 66:α値設定手段 68:背景色設定手段 70:混合手段 72:記憶装置 74:表示手段 80:入力手段 82:フレーム設定手段 84:フラクタル値設定手段 86:演算手段 88:空・雲画像生成手段 90:合成手段 92:記憶装置 94:表示手段

Claims (25)

    【特許請求の範囲】
  1. 【請求項1】 天空画像の全天を表す、複数の多角形で
    構成されたフレームを設定するフレーム設定手段と、 前記フレームの多角形頂点の各々について、フラクタル
    手法により発生させたフラクタル値をそれぞれ設定し、
    当該フラクタル値に基づいて、天空画像のうちの空画像
    を構成する多角形頂点と雲画像を構成する多角形頂点と
    をそれそれぞれ決定し、かつ、各多角形頂点でのフラク
    タル値をカラーデータにそれぞれ変換して空・雲画像を
    生成する空・雲画像生成手段と、 前記多角形頂点のうちの前記雲画像を構成する多角形頂
    点の各々について、前記フラクタル値を雲画像の雲厚と
    して当該雲画像の雲内部の太陽光線の経路長を該天空画
    像における太陽光線照射方向に基づいて算出し、前記カ
    ラーデータの輝度値を前記経路長に基づいて指数関数的
    に減衰させた減衰輝度値を算出する減衰輝度値算出手段
    と、 前記天空画像の全天の天空輝度分布を算出する天空輝度
    分布算出手段と、 前記減衰輝度値と前記天空輝度分布の算出結果とを各多
    角形頂点についてそれぞれ加色合成し、加色合成結果に
    基づいて天空画像を生成する加色合成手段とを具えてな
    ることを特徴とする天空画像作成装置。
  2. 【請求項2】 請求項1に記載の天空画像作成装置にお
    いて、 前記減衰輝度算出手段は、前記経路長を算出するにあた
    り、 前記雲画像を構成するフレーム上の多角形頂点における
    単位面法線ベクトルを算出し、 各多角形頂点における、当該単位面法線ベクトルとフラ
    クタル値との積を面法線ベクトルとして算出し、 当該面法線ベクトルと太陽光線照射方向単位ベクトルと
    の内積を前記経路長とすることを特徴とする天空画像作
    成装置。
  3. 【請求項3】 請求項1に記載の天空画像作成装置にお
    いて、 前記天空輝度分布算出手段は、 天空画像における太陽高度をΘ、および、天空の最小輝
    度をLzmin とそれぞれ設定して、天空画像における天
    頂輝度Lzを Lz=1−(1−Lzmin )21/2 sin((π/2−
    Θ)/2) として算出することを特徴とする天空画像作成装置。
  4. 【請求項4】 請求項1に記載の天空画像作成装置にお
    いて、好ましくは、 前記天空輝度分布算出手段は、 天空画像の全天の曇り具合を表すパラメータをCLおよ
    びCLmin によって (1−CLmin )(1−CL)+CLmin 但し(0≦CL、CLmin ≦1)と定義される曇り度数
    を天頂輝度に乗ずることを特徴とする天空画像作成装
    置。
  5. 【請求項5】 天空画像の全天を表す、複数の多角形で
    構成されたフレームを設定するフレーム設定手段と、 前記フレームの多角形頂点の各々について、フラクタル
    手法により発生させたフラクタル値をそれぞれ設定し、
    当該フラクタル値に基づいて、空画像を構成する多角形
    頂点と雲画像を構成する多角形頂点とをそれそれぞれ決
    定し、各多角形頂点でのフラクタル値をカラーデータに
    それぞれ変換して空・雲画像を生成する空・雲画像生成
    手段と、 天空画像の太陽の高度と天空画像の作成にあたり設定す
    る大気層の厚さとから当該大気層の内部の太陽光線の経
    路長を算出する経路長算出手段と、 標準光分光分布を前記経路長に基づいて指数関数的に減
    衰させた減衰結果を各多角形頂点についてそれぞれ算出
    する減衰結果算出手段と、 前記空画像を構成する各多角形頂点での前記カラーデー
    タを色度座標および輝度値に変換して、変換された当該
    色度座標および当該輝度値と前記減衰結果とを各多角形
    頂点についてそれぞれ加色合成し、加色合成結果に基づ
    いて予備天空画像を生成する第1加色合成手段と、 天空画像の全天の天空輝度分布を算出する天空輝度分布
    算出手段と、 前記予備天空画像と前記天空輝度分布とを各多角形頂点
    についてそれぞれ加色合成し、加色合成結果に基づいて
    天空画像を作成する第2加色合成手段とを具えてなるこ
    とを特徴とする天空画像作成装置。
  6. 【請求項6】 請求項5に記載の天空画像作成装置にお
    いて、 前記経路長算出手段は、 天空画像における太陽高度をΘ、地球半径をR、およ
    び、平均大気層厚をHとそれぞれ設定して、前記経路長
    pathを path=−RsinΘ+(R2 sin2 Θ+2RH+
    21/2 と算出することを特徴とする天空画像作成装置。
  7. 【請求項7】 請求項5に記載の天空画像作成装置にお
    いて、 前記減衰結果算出手段は、 天空画像における大気層の散乱・吸収係数をRATI
    O、大気層内部の太陽光経路長をpath、平均大気層
    厚をH、および、計算対象とする可視領域における最大
    波長をλmax とそれぞれ設定して、波長λにおける光エ
    ネルギーの減衰率Dを D=exp{−RATIO(path/H)(λmax
    λ[i] )4 } として減衰結果を算出することを特徴とする天空画像作
    成装置。
  8. 【請求項8】 請求項5に記載の天空画像作成装置にお
    いて、 前記減衰結果算出手段は、 前記減衰結果における最小輝度をLzmin と設定し、天
    頂相対輝度Lzを Lz=1−(1−Lzmin )21/2 sin((π/2−
    Θ)/2) と算出することを特徴とする天空画像作成装置。
  9. 【請求項9】 請求項5に記載の天空画像作成装置にお
    いて、 前記天空輝度分布計算手段は、 全天の曇り具合を表すパラメータCLおよびCLmin
    よって (1−CLmin )(1−CL)+CLmin 但し(0≦CL、CLmin ≦1)と定義される曇り度数
    を天頂相対輝度Lzに乗ずることを特徴とする天空画像
    作成装置。
  10. 【請求項10】 天空画像の全天を表す、複数の多角形
    でそれぞれ構成された内層フレームおよび外層フレーム
    をそれぞれ設定するフレーム設定手段と、 前記内層フレームおよび前記外層フレームの多角形頂点
    の各々について、フラクタル手法により発生させたフラ
    クタル値を設定し、当該フラクタル値を基準値とを比較
    して、当該フラクタル値を前記基準値との比較結果に基
    づいてRGB値に変換して空・雲画像を生成する空・雲
    画像生成手段と、 前記内層フレームの空画像を透明とする条件で、前記内
    層フレームの空・雲画像と前記外層フレームの空・雲画
    像とをα混合法により混合する比率を表すα値を設定す
    るα値設定手段と、 前記内層フレームおよび前記外層フレームそれぞれの周
    辺部分の背景色を設定する背景色設定手段と、 前記内層フレームおよび前記外層フレームの多角形頂点
    の各々について、前記背景色と前記RGB値とを合成
    し、前記外層フレームと前記内層フレームとをα混合し
    て天空画像を作成する混合手段とを具えてなることを特
    徴とする天空画像作成装置。
  11. 【請求項11】 請求項10に記載の天空画像作成装置
    において、 前記α値設定手段は、 前記α値の最大値をAmax 、算出対象とするフラクタル
    値をT、および、基準値をTC とそれぞれ設定し、パラ
    メータSを設定して、 α=Amax /[exp{(TC −T)/S}+1] と計算することを特徴とする天空画像作成装置。
  12. 【請求項12】 請求項10に記載の天空画像作成装置
    において、 前記空・雲画像生成手段は、 前記フラクタル値の最大値をTmax 、および、前記フラ
    クタル値の最小値をTmin とそれぞれ設定し、パラメー
    タCLOUD(但し、0≦CLOUD≦1)を設定し
    て、前記基準値TC を TC =Tmin +(Tmax −Tmin )CLOUD と計算することを特徴とする天空画像作成装置。
  13. 【請求項13】 請求項10に記載の天空画像作成装置
    において、 前記背景色設定手段は、 前記背景色のカラーデータとしてのRGB値を{ER、
    EG、EB}、当該RGB値の影響範囲の多角形頂点の
    数をRANGEと設定して、 前記外層フレームの縁からの距離LがRANGE以内の
    多角形頂点での背景色のRGB値を、それぞれ、 ER=ER/RANGE・L EG=EG/RANGE・L EB=EB/RANGE・L と計算することを特徴とする天空画像作成装置。
  14. 【請求項14】 請求項10に記載の天空画像作成装置
    において、 前記混合手段は、 前記外層フレームの多角形頂点でのRGB値を{FR、
    FG、FB}、前記背景色のRGB値を{BR、BG、
    BB}、フラクタル値をTおよび前記基準値をTC とそ
    れぞれ設定して、当該多角形頂点でのRGB値と前記背
    景色のRGB値との合成後のRGB値{R、G、B}を
    C ≦Tの場合は、 R=(FRおよびBRのうちの大きな方の値) G=(FGおよびBGのうちの大きな方の値) B=BB と計算し、TC >Tの場合は、 R=BR G=BG B=BB と計算することを特徴とする天空画像作成装置。
  15. 【請求項15】 請求項10に記載の天空画像作成装置
    において、 前記α値設定手段は、 前記α値を、算出対象とするフラクタル値に関するシグ
    モイド関数として求めることを特徴とする天空画像作成
    装置。
  16. 【請求項16】 請求項10に記載の天空画像作成装置
    において、 前記α値設定手段は、 算出対象とするフラクタル値をT、前記基準値をTC
    よび前記α値の最大値をAmax とそれぞれ設定して、当
    該α値をTC >Tの場合に、α≒0とし、 TC ≦Tの場合に、α≒Amax かつTC 近傍でのみ急激
    な変化をする折れ線近似した関数とすることを特徴とす
    る天空画像作成装置。
  17. 【請求項17】 天空画像の全天を表す、複数の多角形
    で構成されたフレームを設定するフレーム設定手段と、 前記フレームの多角形頂点の各々について、フラクタル
    手法により発生させたフラクタル値を設定するフラクタ
    ル値設定手段と、 前記フラクタル値に規則性を与える処理を行なう演算手
    段と規則性を与えられた処理後フラクタル値を基準値と
    を比較して、当該処理後フラクタル値を前記基準値との
    比較結果に基づいてRGB値に変換して空・雲画像を生
    成する空・雲画像生成手段と、 前記フレームの周辺部分の背景色を設定する背景色設定
    手段と、 前記フレームの多角形頂点の各々について、前記背景色
    と前記RGB値とを合成し、合成結果に基づいて天空画
    像を作成する合成手段とを具えてなることを特徴とする
    天空画像作成装置。
  18. 【請求項18】 請求項17に記載の天空画像作成装置
    において、 前記演算手段は、 天空画像の地平面に相当する水平面をxy平面とし、 前記フレームの格子分割数をDと設定し、 f(x,y)=MAX(ABS(x−D/2)、ABS
    (y−D/2)) と定義されたf(x,y)に対してほぼ単調増加する関
    数であって、かつ、f(x,y)=D/2で最大値をと
    り、f(x,y)=0で最小値をとる関数を、雲画像を
    構成する各多角形頂点のフラクタル値にそれぞれ加算し
    て積雲状パターンの雲画像を作成することを特徴とする
    天空画像作成装置。
  19. 【請求項19】 請求項17に記載の天空画像作成装置
    において、 前記演算手段は、 天空画像の地平面に相当する水平面に含まれる軸を設定
    し、 パラメータbottom、パラメータtop(但し、b
    ottom<top)および、全雲画像に占める筋状パ
    タンの雲画像の割合を表すパラメータratio(但
    し、0≦ratio≦1)をそれぞれ設定し、 該水平面に前記フレームを投影して得られる投影フレー
    ム底面において、投影された多角形頂点が前記軸に沿っ
    た筋状パタンを有する雲画像を構成する多角形頂点と、
    投影された多角形頂点が前記軸に直交する方向に沿った
    筋状パタンを有する雲画像を構成する多角形頂点とをそ
    れぞれ交互に順次に選択して、選択された多角形頂点の
    うちのratioの割合の多角形頂点でのフラクタル値
    に、前記topおよび前記bottomを加算して筋状
    パタンの雲画像を作成することを特徴とする天空画像作
    成装置。
  20. 【請求項20】 請求項17に記載の天空画像作成装置
    において、 前記演算手段は、 パラメータbottom、パラメータtop(bott
    om<top)、および、全雲画像に占める鱗状パタン
    の雲画像の割合を表すパラメータratio(0≦ra
    tio≦1)をそれぞれ設定し、 前記雲画像を構成する多角形頂点のうちの前記rati
    oの割合の多角形頂点について、当該多角形頂点でのフ
    ラクタル値に前記topまたは前記bottomを隣り
    合った当該多角形頂点どうしで交互となるように加算し
    て鱗状パタンの雲画像を作成することを特徴とする天空
    画像作成装置。
  21. 【請求項21】 請求項17に記載の天空画像作成装置
    において、 前記演算手段は、 天空画像の地平面に相当する水平面をxy平面とし、 当該xy平面に前記フレームを投影して得られる投影フ
    レーム底面の幅をW、当該幅あたりの当該投影フレーム
    底面を構成する底面多角形の数をD、x軸方向の多角形
    頂点の座標をX[x]、および、y軸方向の多角形頂点
    の座標をY[y]と設定し、 N(N:自然数)、振幅an {n|0、1、・・・N−
    1}、振幅bn {n|0、1、・・・N−1}、周期2
    L(W/D≦L≦W/2)、および、初期位相ωan、ω
    bn{n|0、1、・・・、N−1}をパラメータとして
    設定し、 全てのxについて下記の(1)をフラクタル値に加算す
    るか、若しくは、全てのyについて下記の(2)式をフ
    ラクタル値に加算して波状パタンの雲画像を作成するこ
    とを特徴とする天空画像作成装置。 【数1】
  22. 【請求項22】 請求項17に記載の天空画像作成装置
    において、 請求項18〜請求項21の画像処理装置うちの少なくと
    も2つ以上の画像処理装置において行なう処理を行なう
    ことを特徴とする天空画像作成装置。
  23. 【請求項23】 請求項17に記載の天空画像作成装置
    において、 前記演算手段は、 フラクタル値の最大値をTmax 、および、フラクタル値
    の最小値をTmin とそれぞれ設定し、パラメータCLO
    UD(但し(0≦CLOUD≦1)を設定して、前記基
    準値TC を TC =Tmin +(Tmax −Tmin )CLOUD と計算することを特徴とする天空画像作成装置。
  24. 【請求項24】 請求項17に記載の天空画像作成装置
    において、 前記背景色設定手段は、 前記フレームのフレーム端での前記背景色のRGB値を
    {ER、EG、EB}と設定し、かつ、当該RGB値の
    影響範囲に含まれる多角形頂点の数をRANGEと設定
    して、前記フレームのフレーム端からの距離LがRAN
    GE以内にある多角形頂点における背景色RGB値
    {R、G、B}を、それぞれ、 R=ER/RANGE・L、 G=EG/RANGE・L、 B=EB/RANGE・L と計算することを特徴とする天空画像作成装置。
  25. 【請求項25】 請求項17に記載の天空画像作成装置
    において、 前記合成手段は、 前記フレームの多角形頂点の各々について、前記フラク
    タル値から変換された前記RGB値(以下、フラクタル
    RGB値ともいう。)と前記背景色のRGB値(以下、
    背景色RGB値ともいう。)とを合成するにあたり、 ある多角形頂点でのフラクタルRGB値を{FR、F
    G、FB}、背景色RGB値を{BR、BG、BB}、
    フラクタル値をTおよび前記基準値をTC とそれぞれ設
    定し、 前記合成結果のRGB値{R、G、B}を、 TC ≦Tの場合に、 R=(FRおよびBRのうちの大きな方の値) G=(FGおよびBGのうちの大きな方の値) B=BB と計算し、 TC >Tの場合に、 R=BR G=BG B=BB と計算することを特徴とする天空画像作成装置。
JP21313797A 1997-08-07 1997-08-07 天空画像作成装置 Withdrawn JPH1153576A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21313797A JPH1153576A (ja) 1997-08-07 1997-08-07 天空画像作成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21313797A JPH1153576A (ja) 1997-08-07 1997-08-07 天空画像作成装置

Publications (1)

Publication Number Publication Date
JPH1153576A true JPH1153576A (ja) 1999-02-26

Family

ID=16634196

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21313797A Withdrawn JPH1153576A (ja) 1997-08-07 1997-08-07 天空画像作成装置

Country Status (1)

Country Link
JP (1) JPH1153576A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150029353A (ko) * 2013-09-10 2015-03-18 삼성전자주식회사 영상 처리 장치 및 영상 처리 방법
US10410375B2 (en) 2014-11-14 2019-09-10 Japan Agency For Marine-Earth Science And Technology Image processing apparatus, image processing method, and a non-transitory computer readable medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150029353A (ko) * 2013-09-10 2015-03-18 삼성전자주식회사 영상 처리 장치 및 영상 처리 방법
US10410375B2 (en) 2014-11-14 2019-09-10 Japan Agency For Marine-Earth Science And Technology Image processing apparatus, image processing method, and a non-transitory computer readable medium

Similar Documents

Publication Publication Date Title
Westover Interactive volume rendering
Praun et al. Lapped textures
EP1000409B1 (en) Texture mapping and other uses of scalar fields on subdivision surfaces in computer graphics and animation
US6888544B2 (en) Apparatus for and method of rendering 3D objects with parametric texture maps
Jones The production of volume data from triangular meshes using voxelisation
US5488684A (en) Method and apparatus for rendering trimmed parametric surfaces
KR0172462B1 (ko) 렌더링 및 와핑 영상 생성 시스템 및 방법
US5977982A (en) System and method for modification of the visual characteristics of digital 3D objects
Lambert et al. 3D edge bundling for geographical data visualization
CA1317383C (en) Apparatus and system for generating smooth shaded continuous tone images
WO1996036011A1 (en) Graphics system utilizing homogeneity values for depth for occlusion mapping and texture mapping
US8217939B1 (en) Method and system for calculating visually improved edge voxel normals when converting polygon data to voxel data
JPH06348864A (ja) 画像表示装置、コンピュータ・グラフィックス・システム及び画像表示方法
US20030001859A1 (en) Interactive horizon mapping
US20030184565A1 (en) Analytic warping
Szirmay-Kalos Theory of three-dimensional computer graphics
AU2013206560A1 (en) Method, system and apparatus for rendering
Westerteiger et al. Spherical Terrain Rendering using the hierarchical HEALPix grid
JPH10247256A (ja) 光学的に複雑な特性を有する物体の美感設計をコンピュータ上で対話的に行う方法
JP2909616B2 (ja) 3次元形状表示方法
US7034827B2 (en) Extension of fast phong shading technique for bump mapping
JPH1153576A (ja) 天空画像作成装置
CN114943797A (zh) 基于WebGL大尺寸热力图渲染方法、系统、介质和设备
Abdul-Rahman et al. Spectral volume rendering based on the kubelka-munk theory
US9514566B2 (en) Image-generated system using beta distribution to provide accurate shadow mapping

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20041102