JP2003271988A - 画像生成装置及びプログラム - Google Patents

画像生成装置及びプログラム

Info

Publication number
JP2003271988A
JP2003271988A JP2002072301A JP2002072301A JP2003271988A JP 2003271988 A JP2003271988 A JP 2003271988A JP 2002072301 A JP2002072301 A JP 2002072301A JP 2002072301 A JP2002072301 A JP 2002072301A JP 2003271988 A JP2003271988 A JP 2003271988A
Authority
JP
Japan
Prior art keywords
intersection
object elements
bounding box
bounding
bounding volume
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.)
Granted
Application number
JP2002072301A
Other languages
English (en)
Other versions
JP3931701B2 (ja
Inventor
Takeshi Osada
岳史 長田
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2002072301A priority Critical patent/JP3931701B2/ja
Publication of JP2003271988A publication Critical patent/JP2003271988A/ja
Application granted granted Critical
Publication of JP3931701B2 publication Critical patent/JP3931701B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

(57)【要約】 【課題】 光線追跡法を用いて3次元物体の2次元画像
を短時間で生成できる画像生成装置及びプログラムを提
供する。 【解決手段】 3次元物体を構成する各物体要素の重心
の分布をX軸方向・Y軸方向・Z軸方向に関して調べ
(S330)、最も広い範囲に分布する軸方向に沿って
重心の座標順に各物体要素をリストとして並べ(S34
0)、物体要素の数が偶数である場合はリストの中央で
2つのグループに分割し、物体の要素が奇数である場合
はリストの中央に位置する物体要素を境界としその物体
要素がいずれか一方のグループに含まれるように2つの
グループに分割する。そして、各々のグループにバウン
ディングボックスを設定する(S350)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、光線追跡法を用い
た画像生成装置等に関する。
【0002】
【従来の技術及び発明が解決しようとする課題】光線追
跡法は、視点から物体の方向に向かって画像を追跡し、
光線が物体と交差すればその交点における物体の光の状
態を求め、それを画像面(スクリーン)に投影させて2
次元の画像を生成する手法である。この手法は光線と物
体との交点を求める交点計算に非常に時間がかかるた
め、様々な高速化方法が考え出されている。その高速化
方法の一つとしてバウンディングボリュームを用いる方
法がある。
【0003】バウンディングボリュームは球体や直方体
(この場合を特に「バウンディングボックス」と言う)
の形状を有し、1又は複数の物体要素を内包する。光線
と物体要素との交点を求める前にバウンディングボリュ
ームと光線とが交差するか否かを判定し、バウンディン
グボリュームと光線とが交差する場合のみ光線と物体要
素との交点を求めるようにして、不要な交点計算を減ら
す。尚、このバウンディングボリュームを用いる場合
は、階層的にバウンディングボリュームを設定すること
も行われている。
【0004】以下に従来のバウンディングボリュームの
設定方法について説明する。尚、ここではバウンディン
グボリュームとしてバウンディングボックスを用い、2
次元モデルで代用して説明する。図6は、バウンディン
グボックスの設定方法を示す説明図である。図6(1)
において物体Aは画像生成の対象であり、物体Aは符号
aから符号pで示される16の物体要素から構成され
る。
【0005】第1段階では、物体Aを内包するバウンデ
ィングボックス20を定め、このバウンディングボック
ス20と光線(図示せず)とが交差するか否かを判定す
る。バウンディングボックス20と光線とが交差しない
場合はバウンディングボックス20に内包される物体A
は光線と交差しないと判定する。一方、バウンディング
ボックス20と光線とが交差する場合は物体Aと光線と
は交差する可能性がある。ここでは、バウンディングボ
ックス20と光線とは交差すると仮定して説明を進め
る。
【0006】第2段階では、バウンディングボックス2
0の長い方の2辺に注目し、2辺の中点を結ぶ線分20
aを境にしてバウンディングボックス21とバウンディ
ングボックス22とを設定する。そして、バウンディン
グボックス21に属する物体要素として、バウンディン
グボックス21に完全に内包される物体要素a〜e・h
だけでなく、バウンディングボックス21に一部だけ含
まれる物体要素f・g・i〜l(網掛けで示す物体要
素)もバウンディングボックス21に属する物体要素と
して考える。一方、バウンディングボックス22につい
ても同様に、完全に内包される物体要素m〜pだけでな
く、一部だけ含まれる物体要素f・g・i〜l(網掛け
で示す物体要素)もバウンディングボックス22に属す
る物体要素として考える。
【0007】そして、バウンディングボックス21・2
2が光線と交差するか否かを判定する。バウンディング
ボックス21が光線と交差する場合は物体要素a〜lは
光線と交差する可能性があると判定し、バウンディング
ボックス21が光線と交差しない場合は物体要素a〜l
は光線と交差しないと判定する。同様にして、バウンデ
ィングボックス22が光線と交差する場合は物体要素f
・g・i〜pは光線と交差する可能性があると判定し、
バウンディングボックス21が光線と交差しない場合は
物体要素f・g・i〜pは光線と交差しないと判定す
る。尚、両方の判定が矛盾する物体要素については、光
線と交差する可能性があると判断する。ここでは、バウ
ンディングボックス21・22は光線と交差すると仮定
して説明を進める。
【0008】第3段階として、図6(2)に示すように
バウンディングボックス21に属する物体要素に注目
し、バウンディングボックス21の長い方の2辺の中点
を結ぶ線分21aを境にしてバウンディングボックス2
3とバウンディングボックス24とを設定する。そし
て、バウンディングボックス23に属する物体要素とし
て物体要素a〜d・f・g・i・jとする。一方、バウ
ンディングボックス24に属する物体要素として物体要
素a〜e・h・i・k・lとを考える。
【0009】そして、バウンディングボックス23・2
4が光線と交差するか否かを判定する。バウンディング
ボックス23が光線と交差する場合は物体要素a〜d・
f・g・i・jは光線と交差する可能性があると判定
し、バウンディングボックス23が光線と交差しない場
合は物体要素a〜d・f・g・i・jは光線と交差しな
いと判定する。同様に、バウンディングボックス24が
光線と交差する場合は物体要素a〜e・h・i・k・l
は光線と交差する可能性があると判定し、バウンディン
グボックス24が光線と交差しない場合は物体要素a〜
e・h・i・k・lは光線と交差しないと判定する。
尚、両方の判定が矛盾している物体要素については、光
線と交差する可能性があると判断する。
【0010】バウンディングボックス22についても同
様の処理を行うが説明は省略する。このようにして、第
4段階以降、所定の段階まで同様の処理を続ける。この
様子を2分木を用いて示すと図7のようになる。設定し
たバウンディングボックスは光線と全て交差したとし、
第6段階まで行った。白塗りの丸は物体要素を有するバ
ウンディングボックスを表し、黒塗りの丸は物体要素を
有しないバウンディングボックスを表す。特に、英字の
入っている白塗りの丸は物体要素を一つだけ有するバウ
ンディングボックスを表し、その英字は物体要素に対応
する。
【0011】本例は、バウンディングボックスを等分し
て2つの新たなバウンディングボックスを設定し、その
バウンディングボックス両方にかかる物体要素について
は、両バウンディングボックスそれぞれに便宜的に属す
るようにしている点が特徴である。
【0012】次に、他の従来例について説明する。図8
に示すように、第1段階で物体Aを内包するようにバウ
ンディングボックス40を定め、第2段階では次に述べ
るようなバウンディングボックス41・42を定める。
バウンディングボックス40の長い方の2辺の中点を結
ぶ線分を境界線40aにして2つのグループに分ける。
境界線40aにかかる物体要素をどちらか一方のグルー
プに属するようにし、それぞれのグループの物体要素を
完全に内包するようにバウンディングボックス41・4
2を設定する。本例では、バウンディングボックス41
に物体要素a〜i(網掛けで示す物体要素)を含めるよ
うにし、バウンディングボックス42に物体要素j〜p
を含めるようにした。そして、バウンディングボックス
41・42共に光線と交差すると仮定する。
【0013】続いて第3段階で、バウンディングボック
ス41に内包される物体要素a〜iに注目し、次に述べ
るようなバウンディングボックス43・44を定める。
バウンディングボックス41の長い方の2辺の中点を結
ぶ線分を境界線41aにして2つのグループに分ける。
境界線41aにかかる物体要素をどちらか一方のグルー
プに属するようにし、それぞれのグループの物体要素を
完全に内包するようにバウンディングボックス43・4
4を設定する。本例では、バウンディングボックス43
に物体要素b・d・f・g(網掛けで示す物体要素)を
含めるようにし、バウンディングボックス44に物体要
素a・c・e・h・iを含めるようにした。
【0014】バウンディングボックス42についても同
様の処理を行うが説明は省略する。このようにして、第
4段階以降、所定の段階まで同様の処理を続ける。この
様様子を2分木を用いて例示すると図9のようになる。
尚、設定したバウンディングボックスは全て光線と交差
したとし、第6段階までにすべてのバウンディングボッ
クスが物体要素を一つだけ内包する状態となる。
【0015】本例は、バウンディングボックスを等分し
て物体要素を2つのグループに分け、その際に境界線に
かかる物体要素については、どちらか一方のグループに
属するようにする。そして、それぞれのグループの物体
要素を完全に内包するようにバウンディングボックスを
設定する点が特徴である。
【0016】以上説明したような従来の方法を用いた画
像生成装置は、物体要素を重複して扱うため結果的に計
算量が多くなるという問題や、バウンディングボックス
に属する物体要素が1つだけになるまで分割することが
不可能な場合が生じるといった問題があった。また、二
分木で表現した場合にバランス木にならないため、バラ
ンス木に比べて計算時間を要するという問題もあった。
【0017】本発明はこうした問題に鑑み為されたもの
であり、物体要素を適切なグループに分けてバウンディ
ングボックスを設定し、画像を生成するまでの時間が短
縮された画像生成装置を提供することを目的とする。
【0018】
【課題を解決するための手段及び発明の効果】上記目的
を達成するために為された請求項1に記載の画像生成装
置は、バウンディングボリューム設定手段が、設定処理
(物体要素の個数差が1又は0になるように重複なく物
体要素を2つのグループに分け、各グループに対して物
体要素が内包されるようにバウンディングボリュームを
設定する処理)を実行する。そして、バウンディングボ
リューム設定手段によって設定処理が実行されると、交
差判定手段が交差判定(バウンディングボリュームと光
線とが交差するか否かを判定)を実行する。その交差判
定の判定結果がバウンディングボリュームと光線とが交
差するという判定結果であった場合、交点算出手段が交
点算出処理(バウンディングボリュームに内包される物
体要素に対して光線との交点を求める処理)を実行す
る。この求められた交点における光の状態を算出して2
次元画像が生成される。
【0019】このため、2つのバウンディングボリュー
ムの両方に重複して含まれる物体要素は無く、それぞれ
に含まれる物体要素の数の差も0又は1となる。したが
って、2つのバウンディングボリュームに含まれる物体
要素の数に偏りがないため、光線と交差しないと判定さ
れる物体要素の数も平均化される。その結果、画像生成
が効率的に行われ、画像生成にかかる時間を短縮でき
る。
【0020】また、バウンディングボリューム設定手段
が実行する設定処理は1度だけであってもよいが、請求
項2に記載の画像生成装置のように、バウンディングボ
リューム設定手段は、交差判定手段が実行した交差判定
の判定結果がバウンディングボリュームと光線とが交差
するという判定結果であったバウンディングボリューム
に対して、そのバウンディングボリュームに含まれる物
体要素の数が1になるまで設定処理を再帰的に実行する
ようにしてもよい。そして、その場合は交点算出手段
は、グループに含まれる物体要素の数が1になったとき
に交点算出処理を実行すればよい。
【0021】このように、バウンディングボリューム設
定手段が再帰的に設定処理を実行することによって、光
線と交差しない物体要素に対して交点計算を行うことを
より避けられる。したがって、画像生成装置が画像生成
にかかる時間を短縮できる。尚、バウンディングボリュ
ーム設定手段は、設定する2つのバウンディングボリュ
ームに含まれる物体要素の数が1になるまで再帰的に設
定処理を行っても良いが、画像生成を行う対象の物体に
よってはバウンディングボリュームに含まれる物体要素
の数が1になるまで設定処理を行うと、設定処理にかか
るトータルの計算量が増大するため、設定処理を再帰的
に行う意味が薄れる場合もある。そのため、請求項3に
記載の画像生成装置のように、バウンディングボリュー
ム設定手段は、交差判定手段が実行した交差判定の判定
結果がバウンディングボリュームと光線とが交差すると
いう判定結果であったバウンディングボリュームに対し
て、そのバウンディングボリュームに含まれる物体要素
の数が2以上の定数n以下になるまで設定処理を再帰的
に実行するようにしてもよい。そして、その場合は交点
算出手段は、グループに含まれる物体要素の数が2以上
の定数n以下になったときに交点算出処理を実行すれば
よい。
【0022】このようにすれば、対象の物体要素の個数
が定数n以下になったらバウンディングボリューム設定
手段は設定処理を停止するため、不毛に計算量を増大さ
せることを防げる。尚、この定数nは、例えば実験によ
って定めることが考えられる。その場合、バウンディン
グボリューム設定手段が設定処理を行うことによって増
大する計算量と、設定処理を行うことによって光線との
交点計算を行う物体要素の数を減少できる割合と、を鑑
みて設定する方法が考えられる。
【0023】また、請求項2及び請求項3に記載の画像
生成装置におけるバウンディングボリューム設定手段が
行う設定処理は、物体要素を再帰的に2つのグループに
分けるため、請求項4に記載の画像生成装置のように、
更に、管理手段が、バウンディングボリューム設定手段
の実行する設定処理によって分けられたグループをノー
ドとする二分木データ構造を用いて各グループに属する
物体要素の情報を管理し、バウンディングボリューム設
定手段、交差判定手段及び交点算出手段は、管理手段か
ら情報を取得し、その情報に基づいて各々設定処理、交
差判定及び交点算出処理を実行するとよい。
【0024】このように、管理手段が二分木構造を用い
て情報を管理することによって、一般的な計算機で容易
に物体要素の情報を管理できる。そして、バウンディン
グボリューム設定手段、交差判定手段及び交点算出手段
が管理手段の管理する情報を利用することによって各手
段の計算量が減少し、画像生成装置が画像生成にかかる
時間を短縮できる。
【0025】また、請求項5に記載の画像生成装置のよ
うに、バウンディングボリューム設定手段は、バウンデ
ィングボリュームとして直方体の形状を有し各辺がXY
Z直交座標系における各軸と平行であるバウンディング
ボックスを用い、設定処理の中で物体要素を2つのグル
ープに分ける際に、まず当該物体要素を全て含むバウン
ディングボックスを設定し、そのバウンディングボック
スについてX軸方向・Y軸方向・Z軸方向の何れか最も
長い方向を2分するように物体要素を2つのグループに
分けるようにしてもよい。
【0026】このようにすると、バウンディングボック
スの最も長い辺が分割されることになり、バウンディン
グボックスが光線と交差しない確率が増える。その結
果、光線と交差しない物体要素を効率的に特定すること
ができ、画像生成装置が画像生成にかかる時間を短縮で
きる。
【0027】また、請求項6に記載の画像生成装置のよ
うに、バウンディングボリューム設定手段は、バウンデ
ィングボリュームとして直方体の形状を有し各辺がXY
Z直交座標系における各軸と平行であるバウンディング
ボックスを用い、設定処理の中で物体要素を2つのグル
ープに分ける際に、まず各物体要素の重心の分布をX軸
方向・Y軸方向・Z軸方向に関して調べ、最も広い範囲
に分布する軸方向に沿って重心の座標順に各物体要素を
リストとして並べ、物体要素の数が偶数である場合はリ
ストの中央で2つのグループに分割(偶数分割)し、物
体の要素が奇数である場合はリストの中央に位置する物
体要素(中央物体要素)を境界としその物体要素がいず
れか一方のグループに含まれるように2つのグループに
分割(奇数分割)するようにしてもよい。
【0028】このようにすれば、物体要素の位置関係が
考慮され、重心位置の近い物体要素同士が集まったバウ
ンディングボックスが設定される。このようにして設定
されたバウンディングボックスは、物体要素の位置関係
を考慮しない場合と比べ小さくなるため、交差判定手段
が実行する交差判定によって光線と交差しないと判定さ
れる可能性が高い。したがって、画像生成装置が画像生
成にかかる時間を短縮できる。
【0029】尚、請求項7に記載のように、物体要素の
うちリストの両端に位置する物体要素を端部物体要素と
し、バウンディングボリューム設定手段は、奇数分割の
際に中央物体要素の重心の座標から2つの端部物体要素
の重心の座標までの距離をそれぞれ求め、中央物体要素
からの距離が近い方の端部物体要素が含まれるグループ
に中央物体要素を含めるようにすると更によい。
【0030】このようにすれば、さらにバウンディング
ボックスを小さく設定でき、交差判定手段が実行する交
差判定によって光線とバウンディングボックスとは交差
しないと判定される可能性が増える。したがって、光線
と交差しない物体要素を効率的に特定することができ、
画像生成装置が画像生成にかかる時間を短縮できる。
【0031】一方、請求項8に記載の画像生成装置のよ
うに、バウンディングボックス設定手段は、重心の替わ
りに当該物体要素のみを含むバウンディングボックスの
中心を用いるようにしてもよい。このようにしても、同
様の作用及び効果が得られる。
【0032】また、請求項1から請求項8の何れかに記
載の画像生成装を構成する各手段は、ハードウェア上で
実現されてもよいが、請求項9に示すように、コンピュ
ータで機能させるためのプログラムとして実現させても
よい。このようにプログラムで実現させれば、磁気ディ
スク、光磁気ディスク、メモリカード等のコンピュータ
が読み取り可能な記録媒体に記録し、必要に応じてコン
ピュータにロードして起動することにより用いることが
できる。また、ネットワークを介してロードして起動す
ることにより用いることもできる。
【0033】
【発明の実施の形態】以下、本発明が適用された実施例
について図面を用いて説明する。図1は画像生成装置2
の構成を示すブロック図である。画像生成装置2は主
に、CPU4と、ROM6と、RAM8と、VRAM
(ビデオRAM)10と、IF(インタフェース)12
とを備え、これらはバス14で相互に接続されている。
【0034】CPU14は各種演算や制御を司り、特許
請求の範囲におけるバウンディングボリューム設定手
段、交差判定手段、交点算出手段及び管理手段として機
能する。また、ROM6には光線追跡法によって2次元
画像を生成するためのプログラムが格納され、RAM8
はプログラムを実行するための一時領域として利用さ
れ、VRAM10には生成結果の2次元画像が格納され
る。そして、VRAM10に格納された2次元画像は、
IF12より接続ケーブル18を介して表示装置16に
伝達され、表示装置16で画像として表示される。
【0035】このように構成された画像生成装置2にお
いて、図示しない操作部を利用者が操作すると、CPU
4はROM6からプログラムを読み込み、画像生成処理
を開始する。図2は画像生成処理を表すフローチャート
である。本処理ではバウンディングボリュームとしてバ
ウンディングボックスを使用し、そのバウンディングボ
ックスの辺はXYZ直交座標の座標軸に平行であるとす
る。
【0036】処理が開始されると、まずS100で光線
を設定する。これは、視点を起点とし、2次元画像が投
影されると仮定するスクリーン上の一点(ピクセル)を
通って更に延びる半直線を設定することである。尚、本
ステップでは毎回異なるスクリーン上のピクセルを選択
し、全てのピクセルを選択し終えた場合は、光線の設定
は行わない。
【0037】続いてS110では、S100において光
線の設定が行われたか否かによって分岐する。光線の設
定が行われた場合はS120に進み、光線の設定が行わ
れなかった場合は画像生成処理を終了する。S120で
は、後述する交差判定対象の設定を行う。
【0038】続くS130ではS120の結果に基づい
て交差判定対象が存在するか否かを判定する。交差判定
対象が存在する場合はS140に進み、交差判定対象が
存在しない場合(例えばこの時点で全てのバウンディン
グボックスとの交差判定を終了してしまった場合等)
は、S100に戻って光線の設定を行う。
【0039】S140では、交差判定の対象がバウンデ
ィングボックスか否かを判定する。交差判定の対象がバ
ウンディングボックスである場合はS150に進み、交
差判定の対象がバウンディングボックスでない場合、す
なわち物体要素である場合はS180に進む。
【0040】S150では、バウンディングボックス交
差判定処理を実行する。これは、光線とバウンディング
ボックスとが交差するか否かを判定する処理である。続
くS160では、S150の結果に基づいて光線とバウ
ンディングボックスとが交差するか否かによって分岐す
る。光線とバウンディングボックスとが交差しない場合
はS170に進み、光線とバウンディングボックスとが
交差する場合はS120に戻る。
【0041】S170では、当該バウンディングボック
スを交差判定対象から除外する。そしてS120に戻
る。一方、S180では、光線と物体要素とが交差する
か否かの判定を行う。その結果に応じてS190で分岐
する。光線と物体要素とが交差する場合はS200に進
み、交差しない場合はS100に戻る。
【0042】S200では、光線と物体要素との交点を
求め、その交点における光の状態を算出する。そして、
射影されるスクリーン上のピクセルを設定しVRAM1
0に画像データを書き込む。書き込みが終了するとS1
00に戻る。尚、VRAM10に書き込まれた画像デー
タは、IF12及び接続ケーブル18を介して逐一表示
装置16に送られる。
【0043】ここで、S120の交差判定対象の設定に
ついて詳しく説明する。図3は交差判定対象の設定を表
すフローチャートである。本処理もCPU4で起動され
実行される。尚、CPU4は本処理の中でバウンディン
グボックスや物体要素を二分木構造のデータを用いて管
理する。
【0044】まず、S300で初回の実行か否かを判定
する。初回の実行であればS400に進み、初回の実行
でなければS310に進む。S400では、物体を物体
要素に分割する。続いてS410で各物体要素の重心を
算出する。そして、S420で物体全体にバウンディン
グボックスを設定し、そのバウンディングボックスを選
択して本処理を終了する。
【0045】一方、S310では交差判定を実行してい
ないバウンディングボックスが存在するか否かを判定す
る。交差判定を実行していないバウンディングボックス
が存在する場合はS390に進み、存在しない場合はS
320に進む。S390では、S310で交差判定を実
行していないバウンディングボックスとして判定された
バウンディングボックスを選択する。そして本処理を終
了する。
【0046】一方、S320では物体要素を2つ以上内
包しているバウンディングボックスが存在するか否かを
判定する。物体要素を2つ以上内包しているバウンディ
ングボックスが存在する場合はS330に進み、存在し
ない場合はS370に進む。S370では、交差判定を
実行していない物体要素が存在するか否かを判定する。
交差判定を実行していない物体要素が存在する場合はS
380に進み、存在しない場合は何も選択せずに本処理
を終了する。
【0047】S380では、S370で交差判定を実行
していないとして判定された物体要素を選択する。そし
て本処理を終了する。一方、S330では、S320で
分割可能と判定されたバウンディングボックスに含まれ
る物体要素の重心分布をX・Y・Z軸方向それぞれにつ
いて調べ、最も広く分布している軸を選択する。
【0048】続いてS340では、S330で選択され
た軸に沿って、重心の座標順に対象の物体要素をリスト
として並べる。続いてS350では、S340で並べら
れたリストをその中央で2分して物体要素を2つのグル
ープに分ける。尚、グループに分ける物体要素の数が奇
数である場合は、リストの中央に位置する物体要素とリ
ストの両端に位置する2つの端部物体要素との空間上の
距離をそれぞれ求め、近い方の端部物体要素が含まれる
グループになるように中央に位置する物体要素を分ける
(請求の範囲における奇数分割に相当する)。そしてそ
れぞれのグループにバウンディングボックスを設定す
る。
【0049】続いてS360では、S350で設定した
バウンディングボックスの何れか一方を選択し、本処理
を終了する。交差判定対象の設定について説明したが、
ここで、バウンディングボックスの設定の一例を具体的
に示す。尚、従来技術の箇所で例に挙げた物体Aを用
い、X軸・Y軸方向のみからなる2次元で説明する。
【0050】図4は、バウンディングボックスの設定方
法を示す説明図である。図面の左右方向をX軸方向、上
下方向をY軸方向とする。第1段階で、物体Aを内包す
るバウンディングボックス60を定め(図3のS420
に対応する)、このバウンディングボックス60と光線
(図示せず)とが交差するか否かを判定する。バウンデ
ィングボックス60と光線とが交差しない場合はバウン
ディングボックス60に内包される物体Aは光線と交差
しないと判定する。一方、バウンディングボックス60
と光線とが交差する場合は物体Aと光線とは交差する可
能性がある。ここでは説明のため、バウンディングボッ
クス60と光線とは交差すると仮定する。
【0051】第2段階で物体要素a〜pの重心の分布範
囲を座標軸方向について調べる(図3のS330に対応
する)。図4の物体Aは紙面上で左右方向に重心の分布
範囲が広いので、重心座標のX値を用いて物体要素a〜
pを並べてリストを作成する(図3のS340に対応す
る)。次に、そのリストの中心で物体要素を二つのグル
ープに分ける。本実施例では物体要素a〜h(網掛けで
示す物体要素)のグループと物体要素i〜pのグループ
に分ける。そして、物体要素a〜hが内包されるように
バウンディングボックス61を設定し、物体要素i〜p
が内包されるようにバウンディングボックス62を設定
する(図3のS350に対応する)。
【0052】続いてバウンディングボックス61・62
が光線と交差するか否かを判定する。バウンディングボ
ックス61が光線と交差する場合は、物体要素a〜hは
光線と交差する可能性があると判定し、バウンディング
ボックス61が光線と交差しない場合は、物体要素a〜
hは光線と交差しないと判定する。同様にして、バウン
ディングボックス62が光線と交差する場合は物体要素
i〜pは光線と交差する可能性があると判定し、バウン
ディングボックス62が光線と交差しない場合は物体要
素i〜pは光線と交差しないと判定する。
【0053】第3段階として、図4(2)に示すように
バウンディングボックス61に属する物体要素に注目
し、第2段階の時と同様にしてリストを作り、物体要素
a〜hを2つのグループに分ける。本実施例では、物体
要素b・d・g・f(網掛けで示す物体要素)のグルー
プと、物体要素a・c・e・hのグループとに分ける。
そして、物体要素b・d・g・fを内包するようにバウ
ンディングボックス63を設定し、物体要素a・c・e
・hを内包するようにバウンディングボックス64を設
定する。
【0054】続いてバウンディングボックス63・64
が光線と交差するか否かを判定する。バウンディングボ
ックス63が光線と交差する場合は、物体要素b・d・
f・gは光線と交差する可能性があると判定し、バウン
ディングボックス63が光線と交差しない場合は、物体
要素b・d・f・gは光線と交差しないと判定する。同
様に、バウンディングボックス64が光線と交差する場
合は、物体要素a・c・e・hは光線と交差する可能性
があると判定し、バウンディングボックス64が光線と
交差しない場合は、物体要素a・c・e・hは光線と交
差しないと判定する。
【0055】バウンディングボックス62についても同
様の処理を行うが説明は省略する。このようにして、第
4段階以降バウンディングボックスが設定可能な限り、
すなわちバウンディングボックスに含まれる物体要素の
数が1になるまで同様の処理を続ける。この様子を2分
木を用いて例示すると図5のようになる。記号は従来技
術の説明にて用いたものと同じである。尚、設定したバ
ウンディングボックスは光線と全て交差したとし、第5
段階でバウンディングボックスに含まれる物体要素の数
が1になる。説明に用いた物体Aは、構成する物体要素
の数が16であったため請求の範囲における偶数分割し
か行われなかったが、分割対象の物体要素の数が奇数で
あった場合は奇数分割を行うことは言うまでもない。
【0056】したがって、本実施例の画像生成装置2に
おいては、各段階で設定される2つのバウンディングボ
ックスには重複して含まれる物体要素は無い。そして、
それぞれのバウンディングボックスに含まれる物体要素
の数の差も0又は1となるように設定される。このた
め、分割したバウンディングボックスに含まれる物体要
素の数に偏りがないため、光線と交差しないと判定され
る物体要素の数も平均化される。また、物体要素の位置
関係も考慮され、重心位置の近い物体要素同士が集まっ
たバウンディングボックスが設定される。このようにし
て設定されたバウンディングボックスは、物体要素の位
置関係を考慮しない場合と比べ小さくなるため、交差判
定によって光線と交差しないと判定される可能性が高
い。故に、画像生成にかかる時間を短縮できる。
【0057】以上、一実施例を説明したが、本発明は上
記の実施例に限定されるものではなく種々の態様を取る
ことができる。例えば、上記実施例では物体要素の重心
を用いてリストを作ったが、物体要素毎に当該物体要素
のみを内包するバウンディングボックスを設定し、この
バウンディングボックスの中心を用いてリストを作って
もよい。このようにすれば、物体要素の重心座標の算出
が複雑な場合でも、バウンディングボックス設定できれ
ば、比較的容易にリストを作成することができる。
【0058】また、上記実施例では第m+1段階のバウ
ンディングボックスを設定する際に第m段階のバウンデ
ィングボックスに内包される物体要素の重心に着目した
が、第m段階のバウンディングボックスの形状のみに着
目し、そのバウンディングボックスの最も長い辺を2分
するように第m+1段階のバウンディングボックスを設
定してもよい。もちろん、この際も物体要素は重複なく
差が1又は0になるようにする。
【0059】また、上記実施例ではバウンディングボッ
クスに含まれる物体要素の数が1になるまで新たなバウ
ンディングボックスを設定し続けたが、バウンディング
ボックスに含まれる物体要素の数が2以上の定数n以下
になったら、それ以上新たにバウンディングボックスを
設定しないようにしてもよい。この定数nは、例えば実
験によって定めることが考えられる。その場合、バウン
ディングボリューム設定手段が設定処理を行うことによ
って増大する計算量と、設定処理を行うことによって光
線との交点計算を行う物体要素の数を減少できる割合
と、を鑑みて設定する方法が考えられる。
【0060】また、上記実施例では交差判定対象の設定
(図2のS120)の中でバウンディングボックスを設
定し、交差判定対象の設定(S120)と交差判定処理
(S150及びS180)とを繰り返し実行している
が、光線の設定(S100)の前に全てのバウンディン
グボックスを設定しておき、交差判定対象の設定(S1
20)では単に交差判定を行う対象を選択するだけにし
てもよい。このようにしても、上記実施例と同様の効果
が得られる。
【図面の簡単な説明】
【図1】 画像生成装置の構成を表すブロック図であ
る。
【図2】 画像生成処理を表すフローチャートである。
【図3】 交差判定対象の設定を表すフローチャートで
ある。
【図4】 バウンディングボックスの設定方法を示す説
明図である。
【図5】 バウンディングボックスの設定状態を示す二
分木である。
【図6】 バウンディングボックスの設定方法を示す説
明図である。
【図7】 バウンディングボックスの設定状態を示す二
分木である。
【図8】 バウンディングボックスの設定方法を示す説
明図である。
【図9】 バウンディングボックスの設定状態を示す二
分木である。
【符号の説明】
2…画像生成装置、4…CPU、6…ROM、8…RA
M、10…VRAM、12…IF、14…バス、16…
表示装置、18…接続ケーブル。

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】視点からスクリーン上の点を通って更に延
    びる光線と複数の物体要素からなる3次元物体との交点
    を求め、該交点の光の状態を算出して前記スクリーン上
    の点の色を決定する光線追跡法を用いて2次元画像を生
    成する画像生成装置において、 前記物体要素の個数差が1又は0になるように重複なく
    前記物体要素を2つのグループに分け、各グループに対
    して前記物体要素が内包されるようにバウンディングボ
    リュームを設定する設定処理を実行するバウンディング
    ボリューム設定手段と、 該バウンディングボリューム設定手段によって前記設定
    処理が実行されると、前記バウンディングボリュームと
    前記光線とが交差するか否かの交差判定を実行する交差
    判定手段と、 該交差判定手段が実行した前記交差判定の判定結果が、
    前記バウンディングボリュームと前記光線とが交差する
    という判定結果であった場合、前記バウンディングボリ
    ュームに内包される前記物体要素に対して前記光線との
    交点を求める交点算出処理を実行する交点算出手段と、 を備えることを特徴とする画像生成装置。
  2. 【請求項2】請求項1に記載の画像生成装置において、 前記バウンディングボリューム設定手段は、前記交差判
    定手段が実行した前記交差判定の判定結果が前記バウン
    ディングボリュームと前記光線とが交差するという判定
    結果であったバウンディングボリュームに対して、該バ
    ウンディングボリュームに含まれる前記物体要素の数が
    1になるまで前記設定処理を再帰的に実行し、 前記交点算出手段は、前記グループに含まれる前記物体
    要素の数が1になったときに前記交点算出処理を実行す
    ることを特徴とする画像生成装置。
  3. 【請求項3】請求項1に記載の画像生成装置において、 前記バウンディングボリューム設定手段は、前記交差判
    定手段が実行した前記交差判定の判定結果が前記バウン
    ディングボリュームと前記光線とが交差するという判定
    結果であったバウンディングボリュームに対して、該バ
    ウンディングボリュームに含まれる前記物体要素の数が
    2以上の定数n以下になるまで前記設定処理を再帰的に
    実行し、 前記交点算出手段は、前記グループに含まれる前記物体
    要素の数が2以上の定数n以下になったときに前記交点
    算出処理を実行することを特徴とする画像生成装置。
  4. 【請求項4】請求項2又は請求項3に記載の画像生成装
    置において、 更に、前記バウンディングボリューム設定手段が実行す
    る前記設定処理によって分けられた前記グループをノー
    ドとする二分木データ構造を用いて前記各グループに属
    する前記物体要素の情報を管理する管理手段を備え、 前記バウンディングボリューム設定手段、前記交差判定
    手段及び前記交点算出手段は、前記管理手段から前記情
    報を取得し、該情報に基づいて各々前記設定処理、前記
    交差判定及び前記交点算出処理を実行することを特徴と
    する画像生成装置。
  5. 【請求項5】請求項1から請求項4の何れかに記載の画
    像生成装置において、 前記バウンディングボリューム設定手段は、前記バウン
    ディングボリュームとして直方体の形状を有し各辺がX
    YZ直交座標系における各軸と平行であるバウンディン
    グボックスを用い、前記設定処理の中で前記物体要素を
    2つのグループに分ける際に、まず当該物体要素を全て
    含む前記バウンディングボックスを設定し、該バウンデ
    ィングボックスについてX軸方向・Y軸方向・Z軸方向
    の何れか最も長い方向を2分するように前記物体要素を
    2つのグループに分けることを特徴とする画像生成装
    置。
  6. 【請求項6】請求項1から請求項4の何れかに記載の画
    像生成装置において、 前記バウンディングボリューム設定手段は、前記バウン
    ディングボリュームとして直方体の形状を有し各辺がX
    YZ直交座標系における各軸と平行であるバウンディン
    グボックスを用い、前記設定処理の中で前記物体要素を
    2つのグループに分ける際に、まず前記各物体要素の重
    心の分布をX軸方向・Y軸方向・Z軸方向に関して調
    べ、最も広い範囲に分布する軸方向に沿って重心の座標
    順に前記各物体要素をリストとして並べ、前記物体要素
    の数が偶数である場合は前記リストの中央で2つのグル
    ープに分割(偶数分割)し、前記物体の要素が奇数であ
    る場合は前記リストの中央に位置する前記物体要素(中
    央物体要素)を境界とし該物体要素がいずれか一方のグ
    ループに含まれるように2つのグループに分割(奇数分
    割)することを特徴とする画像生成装置。
  7. 【請求項7】請求項6に記載の画像生成装置において、 前記物体要素のうち前記リストの両端に位置する物体要
    素を端部物体要素とし、前記バウンディングボリューム
    設定手段は、前記奇数分割の際に前記中央物体要素の重
    心の座標から2つの前記端部物体要素の重心の座標まで
    の距離をそれぞれ求め、前記中央物体要素からの距離が
    近い方の前記端部物体要素が含まれるグループに前記中
    央物体要素を含めることを特徴とする画像生成装置。
  8. 【請求項8】請求項6又は請求項7に記載の画像生成装
    置において、 バウンディングボックス設定手段は、物体要素の重心の
    替わりに当該物体要素のみを含むバウンディングボック
    スの中心を用いることを特徴とする画像生成装置。
  9. 【請求項9】コンピュータを、請求項1から請求項8の
    何れかに記載の画像生成装置を構成する各手段として機
    能させるためのプログラム。
JP2002072301A 2002-03-15 2002-03-15 画像生成装置及びプログラム Expired - Lifetime JP3931701B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002072301A JP3931701B2 (ja) 2002-03-15 2002-03-15 画像生成装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002072301A JP3931701B2 (ja) 2002-03-15 2002-03-15 画像生成装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2003271988A true JP2003271988A (ja) 2003-09-26
JP3931701B2 JP3931701B2 (ja) 2007-06-20

Family

ID=29202335

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002072301A Expired - Lifetime JP3931701B2 (ja) 2002-03-15 2002-03-15 画像生成装置及びプログラム

Country Status (1)

Country Link
JP (1) JP3931701B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009514059A (ja) * 2005-06-23 2009-04-02 メンタル イメージス, ゲーエムベーハー 高精度の実時間レイトレーシング
KR100903777B1 (ko) 2007-08-24 2009-06-19 연세대학교 산학협력단 3차원 광선 추적 시스템에서 적응형 다중 계층 케이디-트리구조 알고리즘을 이용한 광선 추적 방법 및 장치
EP2075762A2 (en) 2007-12-26 2009-07-01 Aisin Aw Co., Ltd. Three-dimensional data processing device, three-dimensional image generating device, navigation device, and three-dimensional data processing program
JP2009534759A (ja) * 2006-04-19 2009-09-24 メンタル イメージズ ゲーエムベーハー 瞬時光線追跡
JP2012018573A (ja) * 2010-07-08 2012-01-26 Square Enix Co Ltd 画像生成装置及び画像生成プログラム
CN107803831A (zh) * 2017-09-27 2018-03-16 杭州新松机器人自动化有限公司 一种aoaae层次包围盒碰撞检测方法
CN112872114A (zh) * 2021-02-20 2021-06-01 南京航空航天大学 一种融合obb包围盒及几何算法的钣金折弯过程三维干涉检测方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009514059A (ja) * 2005-06-23 2009-04-02 メンタル イメージス, ゲーエムベーハー 高精度の実時間レイトレーシング
JP2009534759A (ja) * 2006-04-19 2009-09-24 メンタル イメージズ ゲーエムベーハー 瞬時光線追跡
JP4858795B2 (ja) * 2006-04-19 2012-01-18 メンタル イメージズ ゲーエムベーハー 瞬時光線追跡
KR100903777B1 (ko) 2007-08-24 2009-06-19 연세대학교 산학협력단 3차원 광선 추적 시스템에서 적응형 다중 계층 케이디-트리구조 알고리즘을 이용한 광선 추적 방법 및 장치
EP2075762A2 (en) 2007-12-26 2009-07-01 Aisin Aw Co., Ltd. Three-dimensional data processing device, three-dimensional image generating device, navigation device, and three-dimensional data processing program
US8441479B2 (en) 2007-12-26 2013-05-14 Aisin Aw Co., Ltd. Three dimensional data processing device and method, three dimensional image generating device, navigation device, and computer-readable medium containing three-dimensional data processing program
JP2012018573A (ja) * 2010-07-08 2012-01-26 Square Enix Co Ltd 画像生成装置及び画像生成プログラム
CN107803831A (zh) * 2017-09-27 2018-03-16 杭州新松机器人自动化有限公司 一种aoaae层次包围盒碰撞检测方法
CN107803831B (zh) * 2017-09-27 2019-12-31 杭州新松机器人自动化有限公司 一种aoaae层次包围盒碰撞检测方法
CN112872114A (zh) * 2021-02-20 2021-06-01 南京航空航天大学 一种融合obb包围盒及几何算法的钣金折弯过程三维干涉检测方法
CN112872114B (zh) * 2021-02-20 2022-03-29 南京航空航天大学 一种钣金折弯过程三维干涉检测方法

Also Published As

Publication number Publication date
JP3931701B2 (ja) 2007-06-20

Similar Documents

Publication Publication Date Title
US6952204B2 (en) 3D computer modelling apparatus
US20170186219A1 (en) Method for 360-degree panoramic display, display module and mobile terminal
US20080231631A1 (en) Image processing apparatus and method of controlling operation of same
WO2008067483A1 (en) Ray tracing a three dimensional scene using a grid
JP2003085586A (ja) 画像表示装置、画像表示方法、情報記憶媒体および画像表示プログラム
CN112090078B (zh) 游戏角色移动控制方法、装置、设备和介质
CN111161398A (zh) 一种图像生成方法、装置、设备及存储介质
CN110223216A (zh) 一种基于并行plb的数据处理方法、装置及计算机存储介质
CN101154293A (zh) 图像处理方法和图像处理装置
JP2003271988A (ja) 画像生成装置及びプログラム
WO2024088144A1 (zh) 增强现实画面的处理方法、装置、电子设备及存储介质
JP2005182207A (ja) 画像描画装置及び方法、プログラム並びに記録媒体
JP2937937B2 (ja) 三次元オブジェクトデータ処理方法
CN114596401A (zh) 渲染方法、设备以及系统
JP2003233836A (ja) モデリング時の距離成分を用いてレンダリング陰影処理を行う画像処理装置とその方法
CN116127802A (zh) 3d视景展示cae仿真结果的方法、装置及系统
EP0670560B1 (en) A method for sorting polygon data, a video game machine employing the same and acomputer program performing the method
CN115496835A (zh) 一种基于cpu和gpu异构并行架构的点云数据赋色方法和系统
JP2005228150A (ja) 画像照合装置
JP2005165283A (ja) 地図表示装置
JP2007334739A (ja) 画像生成装置
Debenham New algorithms for computing field of vision over 2D grids
JP4920775B2 (ja) 画像生成装置及び画像生成プログラム
JP2019046080A (ja) 情報処理装置、方法及びプログラム
US11861785B2 (en) Generation of tight world space bounding regions

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040506

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070213

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070220

A61 First payment of annual fees (during grant procedure)

Effective date: 20070305

Free format text: JAPANESE INTERMEDIATE CODE: A61

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100323

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110323

Year of fee payment: 4

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

Year of fee payment: 5

Free format text: PAYMENT UNTIL: 20120323

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

Free format text: PAYMENT UNTIL: 20120323

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130323

Year of fee payment: 6