(57)【特許請求の範囲】
【請求項１】
物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う装置であって、
処理対象となる物体の三次元形状データを、処理前データとして入力し、これを格納する処理前データ格納手段と、
前記物体の周囲を囲う包囲体の三次元形状データである包囲体データを設定する包囲体データ設定手段と、
前記物体の外部、かつ、前記包囲体の内部の位置に光源を設定し、この光源から発せられた照明光のエネルギーが、前記物体および前記包囲体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、前記物体各部の輝度を演算する輝度演算手段と、
前記処理前データのうち、前記輝度演算手段により求められた輝度が所定のしきい値以下となる部分に関するデータを削除し、残りのデータを処理後データとして出力するデータ削除手段と、
を備えることを特徴とする物体の三次元形状データの削減装置。
【請求項２】
物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う装置であって、
処理対象となる物体の三次元形状データを、処理前データとして入力し、これを格納する処理前データ格納手段と、
前記物体の内部の位置に光源を設定し、この光源から発せられた照明光のエネルギーが、前記物体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、前記物体各部の輝度を演算する輝度演算手段と、
前記処理前データのうち、前記輝度演算手段により求められた輝度が所定のしきい値以下となる部分に関するデータを削除し、残りのデータを処理後データとして出力するデータ削除手段と、
を備えることを特徴とする物体の三次元形状データの削減装置。
【請求項３】
物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う装置であって、
処理対象となる物体の三次元形状データを、処理前データとして入力し、これを格納する処理前データ格納手段と、
前記処理前データによって示される物体が配置された三次元仮想空間に、直接もしくは間接的に互いに光が行き来できる空間上での連続領域からなる視点配置可能領域を設定する視点配置可能領域設定手段と、
前記物体の周囲を囲う包囲体の三次元形状データである包囲体データを設定する包囲体データ設定手段と、
前記視点配置可能領域に属し、かつ、前記包囲体の内部の位置に、光源を設定し、この光源から発せられた照明光のエネルギーが、前記物体および前記包囲体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、前記物体各部の輝度を演算する輝度演算手段と、
前記処理前データのうち、前記輝度演算手段により求められた輝度が所定のしきい値以下となる部分に関するデータを削除し、残りのデータを、前記視点配置可能領域を示すデータとともに、処理後データとして出力するデータ削除手段と、
を備えることを特徴とする物体の三次元形状データの削減装置。
【請求項４】
物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う装置であって、
処理対象となる物体の三次元形状データを、処理前データとして入力し、これを格納する処理前データ格納手段と、
前記処理前データによって示される物体が配置された三次元仮想空間に、前記物体内部に位置する領域であって当該領域の内部では光が自由に行き来できるが外部への行き来が阻害された領域として、視点配置可能領域を設定する視点配置可能領域設定手段と、
前記視点配置可能領域内に、光源を設定し、この光源から発せられた照明光のエネルギーが、前記物体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、前記物体各部の輝度を演算する輝度演算手段と、
前記処理前データのうち、前記輝度演算手段により求められた輝度が所定のしきい値以下となる部分に関するデータを削除し、残りのデータを、前記視点配置可能領域を示すデータとともに、処理後データとして出力するデータ削除手段と、
を備えることを特徴とする物体の三次元形状データの削減装置。
【請求項５】
請求項３または４に記載の削減装置において、
視点配置可能領域設定手段が、三次元仮想空間上の指示点をオペレータから入力する機能を有し、前記指示点の空間位置に対して直接もしくは間接的に互いに光が行き来できる空間上での連続領域を視点配置可能領域として設定することを特徴とする物体の三次元形状データの削減装置。
【請求項６】
請求項５に記載の削減装置において、
輝度演算手段が、視点配置可能領域設定手段によって入力された指示点位置に、光源を設定することを特徴とする物体の三次元形状データの削減装置。
【請求項７】
請求項１〜６のいずれかに記載の削減装置において、
データ削除手段が、削除するか否かの判定に用いる輝度のしきい値を０に設定し、輝度が０となる部分に関するデータを削除することを特徴とする物体の三次元形状データの削減装置。
【請求項８】
請求項１〜７のいずれかに記載の削減装置において、
処理前データ格納手段が、物体の三次元形状データをポリゴンの集合体として入力し、これを格納する機能を有し、
輝度演算手段が、個々のポリゴンを１つの単位面として取り扱い、個々の単位面ごとに輝度を求める演算を行い、
データ削除手段が、求められた輝度が所定のしきい値以下となる単位面を構成するポリゴンのデータを削除することを特徴とする物体の三次元形状データの削減装置。
【請求項９】
請求項１〜７のいずれかに記載の削減装置において、
処理前データ格納手段が、物体の三次元形状データをポリゴンの集合体として入力し、これを格納する機能を有し、
輝度演算手段が、個々のポリゴンを複数の単位面に分割し、個々の単位面ごとに輝度を求める演算を行い、
データ削除手段が、求められた輝度が所定のしきい値以下となる単位面のみから構成されるポリゴンのデータを削除することを特徴とする物体の三次元形状データの削減装置。
【請求項１０】
請求項１〜７のいずれかに記載の削減装置において、
処理前データ格納手段が、物体の三次元形状データを、所定の関数およびこの関数で用いられるパラメータ値によって表現されるパラメトリック曲面の集合体として入力し、これを格納する機能を有し、
輝度演算手段が、個々のパラメトリック曲面を複数の単位面に分割もしくは近似し、個々の単位面ごとに輝度を求める演算を行い、
データ削除手段が、求められた輝度が所定のしきい値以下となる単位面のみから構成されるパラメトリック曲面のデータを削除することを特徴とする物体の三次元形状データの削減装置。
【請求項１１】
請求項８〜１０のいずれかに記載の削減装置において、
輝度演算手段が、個々の単位面ごとに、光源もしくは他の単位面から受け取るエネルギーおよび他の単位面へと放出するエネルギーをそれぞれ計算し、両者の差を蓄積エネルギーとし、個々の単位面についての蓄積エネルギーを当該単位面の輝度とする演算を行うことを特徴とする物体の三次元形状データの削減装置。
【請求項１２】
請求項８〜１０のいずれかに記載の削減装置において、
輝度演算手段が、
第ｊ番目の単位面から放出された全エネルギーＢｊのうち、第ｉ番目の単位面に到達するエネルギーの占める割合を示すフォームファクタＦｉｊを、「第ｉ番目の単位面から第ｊ番目の単位面へのフォームファクタ」として、全ｎ個の単位面のすべての組み合わせについて予め計算する機能と、
第ｉ番目の単位面から放出されるエネルギーＢｉを、当該第ｉ番目の単位面自身から生成され放出される成分Ｅｉ、当該第ｉ番目の単位面の反射率ρｉ、第ｊ番目の単位面から放出される全エネルギーＢｊを用いて、
Ｂｉ＝Ｅｉ＋ρｉ・Σｊ＝１〜ｎＦｉｊ・Ｂｊ
なる式で求める機能と、
を備え、光源から発せられた照明光のエネルギーが各単位面で繰り返し反射される現象のシミュレーションを、前記フォームファクタおよび前記式を用いて実行することを特徴とする物体の三次元形状データの削減装置。
【請求項１３】
請求項８〜１０のいずれかに記載の削減装置において、
輝度演算手段が、光源を１つの単位面として取り扱い、
第ｊ番目の単位面から放出された全エネルギーＢｊのうち、第ｉ番目の単位面に到達するエネルギーの占める割合を示すフォームファクタＦｉｊを、「第ｉ番目の単位面から第ｊ番目の単位面へのフォームファクタ」として、全ｎ個の単位面のすべての組み合わせについて予め計算する処理と、
全単位面について、第１の値をもつ判定フラグを初期値として設定する処理と、
光源を構成する単位面の判定フラグを第２の値に変える処理と、
判定フラグが第１の値から第２の値に変化したばかりの単位面を着目単位面として抽出し、前記着目単位面へのフォームファクタが０でなく、かつ、自分自身の判定フラグが第１の値である単位面についての判定フラグを第２の値に変える作業を、着目単位面が抽出されなくなるまで繰り返し実行する処理と、
判定フラグが第１の値のままである単位面に対して、所定のしきい値以下となる輝度を与える処理と、
を行う機能を有することを特徴とする物体の三次元形状データの削減装置。
【請求項１４】
請求項１〜１３のいずれかに記載の削減装置としてコンピュータを機能させるためのプログラム。
【請求項１５】
物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う方法であって、
処理前データ格納手段が、処理対象となる物体の三次元形状データを、処理前データとして入力する処理前データ入力ステップと、
包囲体データ設定手段が、前記物体の周囲を囲う包囲体の三次元形状データである包囲体データを設定する包囲体データ設定ステップと、
輝度演算手段が、前記物体の外部、かつ、前記包囲体の内部の位置に設定された光源から発せられた照明光のエネルギーが、前記物体および前記包囲体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、前記物体各部の輝度を演算する輝度演算ステップと、
データ削除手段が、前記処理前データのうち、前記輝度演算ステップにより求められた輝度が所定のしきい値以下となる部分に関するデータを削除するデータ削除ステップと、
前記データ削除手段が、前記データ削除ステップの後に残ったデータを、処理後データとして出力するデータ出力ステップと、
を有することを特徴とする物体の三次元形状データの削減方法。
【請求項１６】
物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う方法であって、
処理前データ格納手段が、処理対象となる物体の三次元形状データを、処理前データとして入力する処理前データ入力ステップと、
輝度演算手段が、前記物体の内部の位置に設定された光源から発せられた照明光のエネルギーが、前記物体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、前記物体各部の輝度を演算する輝度演算ステップと、
データ削除手段が、前記処理前データのうち、前記輝度演算ステップにより求められた輝度が所定のしきい値以下となる部分に関するデータを削除するデータ削除ステップと、
前記データ削除手段が、前記データ削除ステップの後に残ったデータを、処理後データとして出力するデータ出力ステップと、
を有することを特徴とする物体の三次元形状データの削減方法。
【請求項１７】
物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う方法であって、
処理前データ格納手段が、処理対象となる物体の三次元形状データを、処理前データとして入力する処理前データ入力ステップと、
視点配置可能領域設定手段が、オペレータの指示に基づいて、前記処理前データによって示される物体が配置された三次元仮想空間に、直接もしくは間接的に互いに光が行き来できる空間上での連続領域からなる視点配置可能領域を設定する視点配置可能領域設定ステップと、
包囲体データ設定手段が、前記物体の周囲を囲う包囲体の三次元形状データである包囲体データを設定する包囲体データ設定ステップと、
輝度演算手段が、前記視点配置可能領域に属し、かつ、前記包囲体の内部の位置に、光源を設定し、この光源から発せられた照明光のエネルギーが、前記物体および前記包囲体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、前記物体各部の輝度を演算する輝度演算ステップと、
データ削除手段が、前記処理前データのうち、前記輝度演算ステップにより求められた輝度が所定のしきい値以下となる部分に関するデータを削除するデータ削除ステップと、
前記データ削除手段が、前記データ削除ステップの後に残ったデータを、前記視点配置可能領域を示すデータとともに、処理後データとして出力するデータ出力ステップと、
を有することを特徴とする物体の三次元形状データの削減方法。
【請求項１８】
物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う方法であって、
処理前データ格納手段が、処理対象となる物体の三次元形状データを、処理前データとして入力する処理前データ入力ステップと、
視点配置可能領域設定手段が、オペレータの指示に基づいて、前記処理前データによって示される物体が配置された三次元仮想空間に、前記物体内部に位置する領域であって当該領域の内部では光が自由に行き来できるが外部への行き来が阻害された領域として、視点配置可能領域を設定する視点配置可能領域設定ステップと、
輝度演算手段が、前記視点配置可能領域内に、光源を設定し、この光源から発せられた照明光のエネルギーが、前記物体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、前記物体各部の輝度を演算する輝度演算ステップと、
データ削除手段が、前記処理前データのうち、前記輝度演算ステップにより求められた輝度が所定のしきい値以下となる部分に関するデータを削除するデータ削除ステップと、
前記データ削除手段が、前記データ削除ステップの後に残ったデータを、前記視点配置可能領域を示すデータとともに、処理後データとして出力するデータ出力ステップと、
を有することを特徴とする物体の三次元形状データの削減方法。
【請求項１９】
請求項１５〜１８のいずれかに記載の削減方法において、
処理前データ格納手段が、処理対象となる物体の三次元形状データとして、当該物体の設計に用いたＣＡＤデータを入力するようにしたことを特徴とする物体の三次元形状データの削減方法。
【請求項２０】
請求項１５〜１９のいずれかに記載の削減方法において、
輝度演算ステップにおいて、輝度演算手段が、処理前データを複数の単位面の集合体として認識し、光源を１つの単位面として認識し、
第ｊ番目の単位面から放出された全エネルギーＢｊのうち、第ｉ番目の単位面に到達するエネルギーの占める割合を示すフォームファクタＦｉｊを、「第ｉ番目の単位面から第ｊ番目の単位面へのフォームファクタ」として、全ｎ個の単位面のすべての組み合わせについて予め計算する段階と、
全単位面について、第１の値をもつ判定フラグを初期値として設定する段階と、
光源を構成する単位面の判定フラグを第２の値に変える段階と、
判定フラグが第１の値から第２の値に変化したばかりの単位面を着目単位面として抽出し、前記着目単位面へのフォームファクタが０でなく、かつ、自分自身の判定フラグが第１の値である単位面についての判定フラグを第２の値に変える作業を、着目単位面が抽出されなくなるまで繰り返し実行する段階と、
判定フラグが第１の値のままである単位面に対して、所定のしきい値以下となる輝度を与える段階と、
を行うことを特徴とする物体の三次元形状データの削減方法。
【請求項２１】
請求項１５〜２０のいずれかに記載の削減方法において、
処理前データ格納手段が、処理前データ入力ステップで、処理前データを、所定の関数およびこの関数で用いられるパラメータ値によって表現されるパラメトリック曲面の集合体として入力するようにし、
輝度演算ステップで、輝度演算手段が、個々のパラメトリック曲面を複数の単位面に分割もしくは近似する処理を行い、個々の単位面ごとに輝度を求める演算を行うようにし、
データ削除手段が、データ削除ステップで、求められた輝度が所定のしきい値以下となる単位面のみから構成されるパラメトリック曲面のデータを削除することを特徴とする物体の三次元形状データの削減方法。
【請求項２２】
請求項１５〜２１のいずれかに記載の削減方法において、
データを削除するか否かの判定に用いる輝度のしきい値を０に設定し、輝度が０となる部分に関するデータを削除することを特徴とする物体の三次元形状データの削減方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、物体の三次元形状データの削減装置および削減方法に関し、特に、三次元ＣＡＤなどを用いて作成された物体の三次元形状データのうち、二次元表現には不要な部分を削除して、全データ容量を削減する技術に関する。
【背景技術】
【０００２】
コンピュータの性能向上により、産業界の様々な分野でＣＧ画像が利用されるようになってきている。たとえば、建築物、家具、自動車などの設計段階では、通常、多くのＣＧ画像が利用されている。また、コンピュータを利用した製品のプレゼンテーションや映画などの種々の映像表現においても、物品の様々なＣＧ画像が不可欠である。更に、最近では、商品カタログなどにも、実際の商品写真の代わりに、ＣＧ画像が利用される例も少なくない。一般に、ＣＡＤを用いた設計段階を経て製品化された商品の場合、設計に用いたＣＡＤデータを流用してＣＧ画像を作成することができるため、商品カタログに掲載するＣＧ画像も比較的容易に作成することが可能になる。
【０００３】
建築物、家具、自動車の内装部品などのＣＡＤデータは、仮想物体の三次元データであるのに対して、提示用のＣＧ画像は、通常、二次元画像として用意される。したがって、ＣＡＤデータを利用してＣＧ画像を作成する際には、コンピュータ内に仮想物体の三次元データを取り込み、照明条件や視点位置を定めて二次元画像を作成するレンダリング処理が必要になる。このレンダリング処理は、コンピュータの演算負荷が非常に高い処理であり、処理対象となる三次元データや照明条件が複雑になればなるほど、得られるＣＧ画像の品質は高くなるが、必要な演算時間は長くなる。このため、得られるＣＧ画像の品質をできるだけ損なわずに、レンダリング処理の負担を軽減する手法が従来から望まれており、特に、大量の静止画像を生成する必要があるアニメーションの制作現場においては、このような手法が切望されている。
【０００４】
また、近年、ＣＧの利用分野は極めて広範にわたるようになってきており、ユーザには、制作者側が作成した静止画や動画を一方的に鑑賞するだけでなく、自分の意志で、視点の位置を自由に動かし、物品や建造物を任意の方向から観察できるような環境が与えられるようになってきた。たとえば、オンラインショップで商品を観察したり、オンラインゲームで仮想市街を探検したりする場合、ユーザは自分の意志で、視線の位置や向きを変えることができる。このような用途にＣＧを用いる場合、いわゆるリアルタイムレンダラーと呼ばれるシステムにより、三次元形状データに対するレンダリング処理をリアルタイムで実施する必要がある。したがって、レンダリング処理の負荷が大きいと、処理に時間がかかり、極めて操作性が低下することになる。
【０００５】
レンダリング処理に負荷を与える代表的な要因は、レンダリング処理の対象として与えられる三次元形状データのデータ容量である。一般的に、高精細な三次元形状データを用意すればするほど、得られる二次元ＣＧ画像の写実性は高まる。しかしながら、レンダリング処理の演算はそれだけ複雑になり、また、データを格納するために必要なメモリ容量も増大し、演算に必要な時間も増加することになる。このような点を鑑み、たとえば、下記の特許文献１には、人間の毛髪など、三次元形状データの容量が極めて大きくなる部分を近似画像に置き換えることにより、データ容量を削減する手法が開示されている。
【特許文献１】特開２００１−２９７３３１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
前掲の特許文献１に開示されている手法は、人間の毛髪部分のように、部分的に解像度が低下しても、全体的な画像の品質にはあまり影響のない部分について、三次元形状データを間引くことによりデータ容量を削減するという技術思想に基づくものであるが、工業製品などの一般的な画像にまで広く適用できる手法ではない。いずれにしても、三次元形状データを間引くことによりデータ容量を削減するという発想に基づく限り、得られる二次元ＣＧ画像の品質が低下することは免れない。
【０００７】
これに対して、レンダリング処理の演算に不要な部分を削除することにより、データ容量を削減するという発想に基づけば、得られる二次元ＣＧ画像の品質低下という問題は生じない。たとえば、家庭電化製品・時計などの精密機械、自動車・船舶・航空機などの輸送機械、住宅・店舗・公共施設などの建造物は、通常、ＣＡＤデータに基づく設計が行われるので、これらの製品や建造物についての二次元ＣＧ画像を作成する上では、このＣＡＤデータを流用すると非常に効率的である。ところが、設計に用いたＣＡＤデータには、機械や構造物の内部を構成するパーツまでが、三次元形状データとして用意されていることが多く、カタログに掲載するＣＧ画像を作成する場合などを考えると、レンダリング処理の演算には不要なデータが含まれていることになる。具体的には、機械式の時計の場合、歯車やゼンマイなど、外部からは決して見えないパーツについての三次元形状データがＣＡＤデータに含まれていたとしても、カタログに掲載するＣＧ画像の作成には全く不要のデータということになる。このような場合、ＣＡＤデータから、これら不要のデータを削除する処理を行えば、全体的なデータ容量を削減することが可能である。
【０００８】
しかしながら、与えられたＣＡＤデータのうち、どのデータが必要で、どのデータが不要であるか、という判断を行うには、かなり高度な判断能力を必要とする。このため、個々のデータについて、要不要の判断を行い、不要なデータを削除するという処理は、熟練したオペレータの手作業に負わねばならず、判断ミスも少なからず生じていた。
【０００９】
そこで本発明は、レンダリング処理に不要なデータの削除処理を自動的に行うことが可能な物体の三次元形状データの削減装置および削減方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
(1)   本発明の第１の態様は、物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う物体の三次元形状データの削減装置において、
処理対象となる物体の三次元形状データを、処理前データとして入力し、これを格納する処理前データ格納手段と、
物体の周囲を囲う包囲体の三次元形状データである包囲体データを設定する包囲体データ設定手段と、
物体の外部、かつ、包囲体の内部の位置に光源を設定し、この光源から発せられた照明光のエネルギーが、物体および包囲体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、物体各部の輝度を演算する輝度演算手段と、
処理前データのうち、輝度演算手段により求められた輝度が所定のしきい値以下となる部分に関するデータを削除し、残りのデータを処理後データとして出力するデータ削除手段と、
を設けるようにしたものである。
【００１１】
(2)   本発明の第２の態様は、物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う物体の三次元形状データの削減装置において、
処理対象となる物体の三次元形状データを、処理前データとして入力し、これを格納する処理前データ格納手段と、
物体の内部の位置に光源を設定し、この光源から発せられた照明光のエネルギーが、物体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、物体各部の輝度を演算する輝度演算手段と、
処理前データのうち、輝度演算手段により求められた輝度が所定のしきい値以下となる部分に関するデータを削除し、残りのデータを処理後データとして出力するデータ削除手段と、
を設けるようにしたものである。
【００１２】
(3)   本発明の第３の態様は、物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う物体の三次元形状データの削減装置において、
処理対象となる物体の三次元形状データを、処理前データとして入力し、これを格納する処理前データ格納手段と、
処理前データによって示される物体が配置された三次元仮想空間に、直接もしくは間接的に互いに光が行き来できる空間上での連続領域からなる視点配置可能領域を設定する視点配置可能領域設定手段と、
物体の周囲を囲う包囲体の三次元形状データである包囲体データを設定する包囲体データ設定手段と、
視点配置可能領域に属し、かつ、包囲体の内部の位置に、光源を設定し、この光源から発せられた照明光のエネルギーが、物体および包囲体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、物体各部の輝度を演算する輝度演算手段と、
処理前データのうち、輝度演算手段により求められた輝度が所定のしきい値以下となる部分に関するデータを削除し、残りのデータを、視点配置可能領域を示すデータとともに、処理後データとして出力するデータ削除手段と、
を設けるようにしたものである。
【００１３】
(4)   本発明の第４の態様は、物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う物体の三次元形状データの削減装置において、
処理対象となる物体の三次元形状データを、処理前データとして入力し、これを格納する処理前データ格納手段と、
処理前データによって示される物体が配置された三次元仮想空間に、物体内部に位置する領域であって当該領域の内部では光が自由に行き来できるが外部への行き来が阻害された領域として、視点配置可能領域を設定する視点配置可能領域設定手段と、
視点配置可能領域内に、光源を設定し、この光源から発せられた照明光のエネルギーが、物体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、物体各部の輝度を演算する輝度演算手段と、
処理前データのうち、輝度演算手段により求められた輝度が所定のしきい値以下となる部分に関するデータを削除し、残りのデータを、視点配置可能領域を示すデータとともに、処理後データとして出力するデータ削除手段と、
を設けるようにしたものである。
【００１４】
(5)   本発明の第５の態様は、上述の第３または第４の態様に係る物体の三次元形状データの削減装置において、
視点配置可能領域設定手段に、三次元仮想空間上の指示点をオペレータから入力する機能をもたせ、入力した指示点の空間位置に対して直接もしくは間接的に互いに光が行き来できる空間上での連続領域を視点配置可能領域として設定するようにしたものである。
【００１５】
(6)   本発明の第６の態様は、上述の第５の態様に係る物体の三次元形状データの削減装置において、
輝度演算手段が、視点配置可能領域設定手段によって入力された指示点位置に、光源を設定するようにしたものである。
【００１６】
(7)   本発明の第７の態様は、上述の第１〜第６の態様に係る物体の三次元形状データの削減装置において、
データ削除手段が、削除するか否かの判定に用いる輝度のしきい値を０に設定し、輝度が０となる部分に関するデータを削除するようにしたものである。
【００１７】
(8)   本発明の第８の態様は、上述の第１〜第７の態様に係る物体の三次元形状データの削減装置において、
処理前データ格納手段が、物体の三次元形状データをポリゴンの集合体として入力し、これを格納する機能を有し、
輝度演算手段が、個々のポリゴンを１つの単位面として取り扱い、個々の単位面ごとに輝度を求める演算を行い、
データ削除手段が、求められた輝度が所定のしきい値以下となる単位面を構成するポリゴンのデータを削除するようにしたものである。
【００１８】
(9)   本発明の第９の態様は、上述の第１〜第７の態様に係る物体の三次元形状データの削減装置において、
処理前データ格納手段が、物体の三次元形状データをポリゴンの集合体として入力し、これを格納する機能を有し、
輝度演算手段が、個々のポリゴンを複数の単位面に分割し、個々の単位面ごとに輝度を求める演算を行い、
データ削除手段が、求められた輝度が所定のしきい値以下となる単位面のみから構成されるポリゴンのデータを削除するようにしたものである。
【００１９】
(10)  本発明の第１０の態様は、上述の第１〜第７の態様に係る物体の三次元形状データの削減装置において、
処理前データ格納手段が、物体の三次元形状データを、所定の関数およびこの関数で用いられるパラメータ値によって表現されるパラメトリック曲面の集合体として入力し、これを格納する機能を有し、
輝度演算手段が、個々のパラメトリック曲面を複数の単位面に分割もしくは近似し、個々の単位面ごとに輝度を求める演算を行い、
データ削除手段が、求められた輝度が所定のしきい値以下となる単位面のみから構成されるパラメトリック曲面のデータを削除するようにしたものである。
【００２０】
(11)  本発明の第１1の態様は、上述の第８〜第１０の態様に係る物体の三次元形状データの削減装置において、
輝度演算手段が、個々の単位面ごとに、光源もしくは他の単位面から受け取るエネルギーおよび他の単位面へと放出するエネルギーをそれぞれ計算し、両者の差を蓄積エネルギーとし、個々の単位面についての蓄積エネルギーを当該単位面の輝度とする演算を行うようにしたものである。
【００２１】
(12)  本発明の第１２の態様は、上述の第８〜第１０の態様に係る物体の三次元形状データの削減装置において、
輝度演算手段に、
第ｊ番目の単位面から放出された全エネルギーＢｊのうち、第ｉ番目の単位面に到達するエネルギーの占める割合を示すフォームファクタＦｉｊを、「第ｉ番目の単位面から第ｊ番目の単位面へのフォームファクタ」として、全ｎ個の単位面のすべての組み合わせについて予め計算する機能と、
第ｉ番目の単位面から放出されるエネルギーＢｉを、当該第ｉ番目の単位面自身から生成され放出される成分Ｅｉ、当該第ｉ番目の単位面の反射率ρｉ、第ｊ番目の単位面から放出される全エネルギーＢｊを用いて、
Ｂｉ＝Ｅｉ＋ρｉ・Σｊ＝１〜ｎＦｉｊ・Ｂｊ
なる式で求める機能と、
をもたせ、光源から発せられた照明光のエネルギーが各単位面で繰り返し反射される現象のシミュレーションを、フォームファクタおよび上記式を用いて実行するようにしたものである。
【００２２】
(13)  本発明の第１３の態様は、上述の第８〜第１０の態様に係る物体の三次元形状データの削減装置において、
輝度演算手段が、光源を１つの単位面として取り扱い、
第ｊ番目の単位面から放出された全エネルギーＢｊのうち、第ｉ番目の単位面に到達するエネルギーの占める割合を示すフォームファクタＦｉｊを、「第ｉ番目の単位面から第ｊ番目の単位面へのフォームファクタ」として、全ｎ個の単位面のすべての組み合わせについて予め計算する処理と、
全単位面について、第１の値をもつ判定フラグを初期値として設定する処理と、
光源を構成する単位面の判定フラグを第２の値に変える処理と、
判定フラグが第１の値から第２の値に変化したばかりの単位面を着目単位面として抽出し、着目単位面へのフォームファクタが０でなく、かつ、自分自身の判定フラグが第１の値である単位面についての判定フラグを第２の値に変える作業を、着目単位面が抽出されなくなるまで繰り返し実行する処理と、
判定フラグが第１の値のままである単位面に対して、所定のしきい値以下となる輝度を与える処理と、
を行うようにしたものである。
【００２３】
(14)  本発明の第１４の態様は、上述の第１〜第１３の態様に係る物体の三次元形状データの削減装置としてコンピュータを機能させるためのプログラムを用意し、これをコンピュータに組み込むようにしたものである。
【００２４】
(15)  本発明の第１５の態様は、物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う物体の三次元形状データの削減方法において、
処理前データ格納手段が、処理対象となる物体の三次元形状データを、処理前データとして入力する処理前データ入力ステップと、
包囲体データ設定手段が、物体の周囲を囲う包囲体の三次元形状データである包囲体データを設定する包囲体データ設定ステップと、
輝度演算手段が、物体の外部、かつ、包囲体の内部の位置に設定された光源から発せられた照明光のエネルギーが、物体および包囲体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、物体各部の輝度を演算する輝度演算ステップと、
データ削除手段が、処理前データのうち、輝度演算ステップにより求められた輝度が所定のしきい値以下となる部分に関するデータを削除するデータ削除ステップと、
データ削除手段が、データ削除ステップの後に残ったデータを、処理後データとして出力するデータ出力ステップと、
を行うようにしたものである。
【００２５】
(16)  本発明の第１６の態様は、物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う物体の三次元形状データの削減方法において、
処理前データ格納手段が、処理対象となる物体の三次元形状データを、処理前データとして入力する処理前データ入力ステップと、
輝度演算手段が、物体の内部の位置に設定された光源から発せられた照明光のエネルギーが、物体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、物体各部の輝度を演算する輝度演算ステップと、
データ削除手段が、処理前データのうち、輝度演算ステップにより求められた輝度が所定のしきい値以下となる部分に関するデータを削除するデータ削除ステップと、
データ削除手段が、データ削除ステップの後に残ったデータを、処理後データとして出力するデータ出力ステップと、
を行うようにしたものである。
【００２６】
(17)  本発明の第１７の態様は、物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う物体の三次元形状データの削減方法において、
処理前データ格納手段が、処理対象となる物体の三次元形状データを、処理前データとして入力する処理前データ入力ステップと、
視点配置可能領域設定手段が、オペレータの指示に基づいて、処理前データによって示される物体が配置された三次元仮想空間に、直接もしくは間接的に互いに光が行き来できる空間上での連続領域からなる視点配置可能領域を設定する視点配置可能領域設定ステップと、
包囲体データ設定手段が、物体の周囲を囲う包囲体の三次元形状データである包囲体データを設定する包囲体データ設定ステップと、
輝度演算手段が、視点配置可能領域に属し、かつ、包囲体の内部の位置に、光源を設定し、この光源から発せられた照明光のエネルギーが、物体および包囲体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、物体各部の輝度を演算する輝度演算ステップと、
データ削除手段が、処理前データのうち、輝度演算ステップにより求められた輝度が所定のしきい値以下となる部分に関するデータを削除するデータ削除ステップと、
データ削除手段が、データ削除ステップの後に残ったデータを、視点配置可能領域を示すデータとともに、処理後データとして出力するデータ出力ステップと、
を行うようにしたものである。
【００２７】
(18)  本発明の第１８の態様は、物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行う物体の三次元形状データの削減方法において、
処理前データ格納手段が、処理対象となる物体の三次元形状データを、処理前データとして入力する処理前データ入力ステップと、
視点配置可能領域設定手段が、オペレータの指示に基づいて、処理前データによって示される物体が配置された三次元仮想空間に、物体内部に位置する領域であって当該領域の内部では光が自由に行き来できるが外部への行き来が阻害された領域として、視点配置可能領域を設定する視点配置可能領域設定ステップと、
輝度演算手段が、視点配置可能領域内に、光源を設定し、この光源から発せられた照明光のエネルギーが、物体の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、物体各部の輝度を演算する輝度演算ステップと、
データ削除手段が、処理前データのうち、輝度演算ステップにより求められた輝度が所定のしきい値以下となる部分に関するデータを削除するデータ削除ステップと、
データ削除手段が、データ削除ステップの後に残ったデータを、視点配置可能領域を示すデータとともに、処理後データとして出力するデータ出力ステップと、
を行うようにしたものである。
【００２８】
(19)  本発明の第１９の態様は、上述の第１５〜第１８の態様に係る物体の三次元形状データの削減方法において、
処理前データ格納手段が、処理対象となる物体の三次元形状データとして、当該物体の設計に用いたＣＡＤデータを入力するようにしたものである。
【００２９】
(20)  本発明の第２０の態様は、上述の第１５〜第１９の態様に係る物体の三次元形状データの削減方法において、
輝度演算ステップにおいて、輝度演算手段が、処理前データを複数の単位面の集合体として認識し、光源を１つの単位面として認識し、
第ｊ番目の単位面から放出された全エネルギーＢｊのうち、第ｉ番目の単位面に到達するエネルギーの占める割合を示すフォームファクタＦｉｊを、「第ｉ番目の単位面から第ｊ番目の単位面へのフォームファクタ」として、全ｎ個の単位面のすべての組み合わせについて予め計算する段階と、
全単位面について、第１の値をもつ判定フラグを初期値として設定する段階と、
光源を構成する単位面の判定フラグを第２の値に変える段階と、
判定フラグが第１の値から第２の値に変化したばかりの単位面を着目単位面として抽出し、着目単位面へのフォームファクタが０でなく、かつ、自分自身の判定フラグが第１の値である単位面についての判定フラグを第２の値に変える作業を、着目単位面が抽出されなくなるまで繰り返し実行する段階と、
判定フラグが第１の値のままである単位面に対して、所定のしきい値以下となる輝度を与える段階と、
を行うようにしたものである。
【００３０】
(21)  本発明の第２１の態様は、上述の第１５〜第２０の態様に係る物体の三次元形状データの削減方法において、
処理前データ格納手段が、処理前データ入力ステップで、処理前データを、所定の関数およびこの関数で用いられるパラメータ値によって表現されるパラメトリック曲面の集合体として入力するようにし、
輝度演算ステップで、輝度演算手段が、個々のパラメトリック曲面を複数の単位面に分割もしくは近似する処理を行い、個々の単位面ごとに輝度を求める演算を行うようにし、
データ削除手段が、コンピュータが、求められた輝度が所定のしきい値以下となる単位面のみから構成されるパラメトリック曲面のデータを削除するようにしたものである。
【００３１】
(22)  本発明の第２２の態様は、上述の第１５〜第２１の態様に係る物体の三次元形状データの削減方法において、
データを削除するか否かの判定に用いる輝度のしきい値を０に設定し、輝度が０となる部分に関するデータを削除するようにしたものである。
【発明の効果】
【００３２】
本発明によれば、与えられた物体の三次元形状データのうち、所定の視点配置条件下で利用する限りにおいては不要となるデータを、自動的に削除することが可能になる。
【発明を実施するための最良の形態】
【００３３】
以下、本発明を図示する実施形態に基づいて説明する。
【００３４】
＜＜＜  §１．本発明の基本原理  ＞＞＞
はじめに、本発明の基本原理を説明する。いま、図１に示すような三次元仮想空間を考える。この三次元仮想空間内には、部屋Ｒが定義され、その中に複数の物体が配置されている。すなわち、床面中央には、テーブル１０、花瓶２０、花３０が置かれており、部屋の左壁付近には、戸棚下部４０および戸棚上部５０が置かれている。これら戸棚は断面図で示されており、戸棚下部４０内には、透明な瓶４１および缶詰４２が配置され、戸棚上部５０内には、透明な瓶５１および缶詰５２が配置されている。ここで、戸棚上部５０の前面には、ガラス戸Ｇが嵌め込まれているため、瓶５１および缶詰５２は室内から観察可能な状態になっているが、戸棚下部４０は不透明な扉によって仕切られているため、瓶４１および缶詰４２は、この状態では、室内から観察できない状態になっているものとする。
【００３５】
このように、三次元仮想空間内に配置された個々の物体の実体は、それぞれポリゴンの集合体やパラメトリック曲面の集合体からなる三次元形状データであり、コンピュータに、各物体の三次元形状データを読み込むことにより、図示のような仮想空間をコンピュータ上に構築することができる。このように、物体が配置された三次元仮想空間を、ディスプレイ画面もしくは印刷物上の画像として人間に提示するためには、光源および視点位置を設定することにより、二次元投影画像を作成するためのレンダリング処理を行う必要がある。
【００３６】
図２は、このようなレンダリング処理の概念を示す側面図である。図示の例では、部屋Ｒ内の右上部分に、光源Ｌおよび視点Ｅ１が定義されている。レンダリング処理では、光源Ｌから放出された照明光が、物体の各部分で反射し、この反射光が視点Ｅ１に向かう現象がコンピュータによってシミュレートされ、視点Ｅ１から観察したときの二次元画像が作成されることになる。物体の三次元形状データは、物体各部の形状および反射率を示すデータであり、このデータに基づいて、物体表面を構成する個々の単位面（一般に、パッチと呼ばれている）ごとに、入射照明光に起因して生じる反射光の向きや強度が演算される。
【００３７】
たとえば、図２には、単位面Ｐ１〜Ｐ４（単位面は、物体の表面を構成する微小な平面であるが、ここでは図示の便宜上、黒点として示す）から、視点Ｅ１へ向かう反射光が一点鎖線として示されている。単位面Ｐ１，Ｐ２からの反射光は、視点Ｅ１へと直接向かう光となり、単位面Ｐ３，Ｐ４からの反射光は、ガラス戸Ｇを通して、視点Ｅ１へと向かう光になる。テーブル１０の下面の単位面Ｐ５からの反射光は、視点Ｅ１に直接届くことはない。また、戸棚下部４０の内部の物体上の単位面Ｐ６，Ｐ７には、光源Ｌからの照明光は届かず、当然、ここからの反射光が視点Ｅ１に届くことはない。更に、ここでは便宜上、花瓶２０の口の部分が、花３０の茎の部分で密閉された状態になっているものとすると、花瓶２０の内部にも、光源Ｌからの照明光は届かないことになる。
【００３８】
結局、各物体１０〜５２に対して、図２に示す位置に視点Ｅ１を設定して、この視点Ｅ１から観察した二次元画像を作成するレンダリング処理を行うことを前提とすると、図示の単位面Ｐ１〜Ｐ４に関する物体のデータは必要になるが、単位面Ｐ６，Ｐ７に関する物体のデータは不要であることがわかる。視点Ｅ１が、図示のように、戸棚下部４０の外側に配置されている限りは、戸棚下部４０の内部の単位面Ｐ６や、戸棚下部４０に収容された缶詰４２上の単位面Ｐ７からの反射光が視点Ｅ１に届くことはない。したがって、図示の例では、視点を図示の位置Ｅ１に配置するという利用条件を定めることにより、花瓶２０の内側表面に関する三次元形状データ、戸棚下部４０の内側表面に関する三次元形状データ、瓶４１および缶詰４２に関するすべての三次元形状データを削除することが可能である。また、瓶５１は表面が透明な物体であるため、内部のデータも必要になるが、缶詰５２は表面が不透明な物体であるため、仮に、缶詰内部に詰め込まれている食材の三次元形状データまでもが含まれていたとしても、この缶詰内部のデータは削除することが可能である。
【００３９】
それでは、「視点Ｅ１から観察した二次元画像を作成する」という利用条件を定めれば、視点Ｅ１の位置から見えない部分の物体のデータを、すべて削除することが可能になるのであろうか。その答は、反射光の強度演算を行う際に用いる陰影形成モデル（シェーディングモデル）に応じて変わってくる。すなわち、光源からの直射光の反射成分のみを考慮したシェーディングを行うのであれば、視点Ｅ１から直接見えない部分のデータ（隠面のデータ）は削除してしまってかまわない。図示の例の場合、たとえば、花瓶２０の裏側（図の左面）のデータは削除してかまわないことになる。しかしながら、コンピュータの性能が向上した今日では、写実性に富んだ高品質の二次元画像を得ることができるように、大域照明モデルを用いたシェーディングを行うのが一般的であり、その場合には、視点Ｅ１の位置から見えない部分の物体のデータをすべて削除することはできない。この大域照明モデルでは、光源からの直射光の反射成分のみでなく、壁や他の物体から反射してきた間接光の反射成分をも考慮したレンダリング処理が行われる。
【００４０】
たとえば、図２に示す単位面Ｐ５は、テーブル１０の下面に形成された面であるため、この単位面Ｐ５には、光源Ｌからの照明光が直接照射されることもないし、この単位面Ｐ５からの反射光が、視点Ｅ１に直接届くこともない。しかしながら、大域照明モデルを用いた場合、光源Ｌからの光は、たとえば図３に示す例のように、単位面Ｐ８，Ｐ９で反射して単位面Ｐ５に入射することも考慮に入れる必要があり、この単位面Ｐ５からの反射光が、単位面Ｐ１０，Ｐ１１，Ｐ１２で反射して視点Ｅ１に到達することも考慮に入れる必要がある。もちろん、光源Ｌから放出された照明光の強度は、各部で反射を繰り返すことにより、徐々に減衰してゆくことになるので、反射を繰り返して視点Ｅ１まで到達した光の強度は比較的小さいものになるが、写実性に富んだ二次元画像を作成する上では、このように各部で繰り返し反射した光まで考慮したシェーディングの演算を行う必要がある。
【００４１】
図３に示す例では、単位面Ｐ５の三次元形状データは、単位面Ｐ１０，Ｐ１１の輝度に影響を与え、単位面Ｐ１２の輝度にも間接的に影響を与えることになるので、最終的に得られる二次元画像にも影響を与えることになる。したがって、大域照明モデルを用いたシェーディングを行う場合、視点Ｅ１の位置から直接的には見えない部分であるからといって、当該部分のデータを即座に削除することはできない。結局、図２に示す例の場合、単位面Ｐ６，Ｐ７のデータは削除することができる。これは、大域照明モデルを用いた場合でも、単位面Ｐ６，Ｐ７からの反射光が、直接もしくは間接的に視点Ｅ１に影響を与えることはないからである。ところが、単位面Ｐ５のデータは、上述したように、削除することはできない。
【００４２】
そこで本発明では、大域照明モデルを利用することを前提として、次のような基準で、個々の物体の三次元形状データについて、削除すべきか否かを判定できるようにした。すなわち、本発明における削除可否の判定原理は、視点位置に対して光学的な連続領域内に位置する部分については削除不可、光学的な連続領域外に位置する部分については削除可と判定する、というものである。ここで、光学的な連続領域とは、「直接もしくは間接的に互いに光が行き来できる空間上での連続領域」というべきものであり、別言すれば、光を遮蔽する物体で隔離された閉領域というべきものである。
【００４３】
たとえば、図２に示す例の場合、単位面Ｐ１，Ｐ２，Ｐ３，Ｐ４，Ｐ５は、いずれも視点Ｅ１に対して、光学的な連続領域内に位置しており、光は遮蔽されることなく、相互に行き来できる状態となっている。これに対して、単位面Ｐ６，Ｐ７は、視点Ｅ１に対して、光学的な連続領域外に位置しており、戸棚下部４０の不透明な扉という遮蔽物によって隔離された閉領域内に位置する単位面となっている。その結果、視点Ｅ１に対して、光学的な連続領域内に位置する単位面Ｐ１，Ｐ２，Ｐ３，Ｐ４，Ｐ５は削除できないが、連続領域外に位置する単位面Ｐ６，Ｐ７については削除できる、との判定を行うことができる。
【００４４】
上述した判定結果は、視点位置が光学的な連続領域内で移動したとしても普遍である。たとえば、図４に示すように、視点位置が、Ｅ１からＥ２に変更になったとしても、単位面Ｐ１，Ｐ２，Ｐ３，Ｐ４，Ｐ５が、視点Ｅ２に対して光学的な連続領域内に位置しており、単位面Ｐ６，Ｐ７が、視点Ｅ２に対して光学的な連続領域外に位置している、という状況に変わりはない。視点位置が、Ｅ３やＥ４に変わった場合も、状況は全く同じである。視点Ｅ４は、戸棚上部５０の内側に位置しているため、物理的には、視点Ｅ１と視点Ｅ４とは、ガラス戸Ｇによって隔絶されてしまっている。しかしながら、ガラス戸Ｇは光を透過するため、視点Ｅ１と視点Ｅ４とは、光学的には同一の連続領域に位置することになる。
【００４５】
これに対して、視点が光学的な連続領域外へ移動した場合は、状況は変わってくる。たとえば、図４に示す視点Ｅ５が、缶詰５２の内部の点であるものとすれば、缶詰の缶という不透明な金属隔壁によって、視点Ｅ１とＥ５とは隔絶されてしまっているので、もはや視点Ｅ５は視点Ｅ１に対して、光学的な連続領域内にあるとは言えない。同様に、戸棚下部４０内の視点Ｅ６も、視点Ｅ１に対して、光学的な連続領域内にあるとは言えない。このように、視点が光学的な連続領域外へ移動した場合は、「単位面Ｐ６，Ｐ７についてはデータ削除が可能」という上述の判定結果をそのまま適用することはできなくなる。
【００４６】
以上をまとめると、図５に示すように、図示の位置に視点Ｅ１を定義した場合、この図にハッチングを施して示す部分（花瓶２０の内部、缶詰５２の内部、戸棚下部４０の内部）は、視点Ｅ１からの観察に影響を与えない部分と言うことができ、視点の配置位置をＥ１に限定するという利用条件を定めれば、このハッチング部分についての物体の三次元形状データは削除可能と判定することができる。しかも、当該判定結果は、視点位置を図５に示す視点Ｅ１に定めた場合だけに限定されるものではなく、視点Ｅ１を光学的な連続領域内で移動させた場合にも同様に適用可能ということになる。
【００４７】
図６は、視点Ｅ１についての光学的な連続領域にハッチングを施して示したものである。レンダリング処理を行う上での視点を、このハッチングを施して示した領域内の１点に定義するという条件を設定すれば、当該条件で利用する限りにおいて、図５にハッチングを施した部分についてのデータは不要ということになり、削除してもかまわないことになる。
【００４８】
結局、三次元仮想空間内の光学的な連続領域として、「視点配置可能領域」を予め設定しておき、レンダリング処理を行う際には、この「視点配置可能領域」内に視点を配置して利用する、という条件を課しておけば、当該「視点配置可能領域」外に位置する部分のデータについては、削除することが可能になり、総データ量を削減することが可能になる。これが本発明の基本原理である。たとえば、図６にハッチングを施して示した領域（光学的な連続領域）を、「視点配置可能領域」と定めた場合、「視点配置可能領域」外の部分は、図５にハッチングを施した部分ということになり、この部分についてのデータを削除することが可能になる。この場合、削除後のデータは、「視点配置可能領域」内に視点を配置する、という条件下でのみ、レンダリング処理に利用することができる。
【００４９】
＜＜＜  §２．光学的な連続領域内か否かの判定  ＞＞＞
上述したように、本発明の基本原理に従ってデータの削減を行うには、まず、視点配置可能領域を設定し、処理対象となる物体の三次元形状データのうち、この視点配置可能領域外の部分を削除する、という処理を行えばよい。
【００５０】
もっとも、視点配置可能領域を設定するにあたって、三次元仮想空間上での領域の境界を具体的な三次元形状データとして指定する必要はない。すなわち、利用者（三次元形状データに基づいて、レンダリング処理を行い、二次元画像を作成する作業を行う者）に対しては、当該領域を概念的に伝達できればよいので、論理的に特定することが可能な領域になっていれば、どのような方法で視点配置可能領域を設定してもかまわない。
【００５１】
図６には、視点配置可能領域の設定例を、ハッチングを施した領域として示したが、実用上は、このような領域が設定されていることを、論理的に定義できればよいので、たとえば、点Ｅ１の位置のみを示し、「点Ｅ１と光学的に連続した領域」として、視点配置可能領域を定義すれば、当該領域を論理的に特定することが可能である。別言すれば、図６において、視点配置可能領域として、「点Ｅ１と光学的に連続した領域」という情報さえ設定しておけば、図６にハッチングで施した領域を把握することが可能である。
【００５２】
これに対して、与えられた物体の三次元形状データから、不要なデータを削減する処理をコンピュータ上で実行するためには、物体の個々の部分について、視点配置可能領域内に位置するのか、視点配置可能領域外に位置するのかを判定する作業（別言すれば、視点位置に対する光学的な連続領域に含まれるか否かを判定する作業）を、コンピュータに実行させる必要があり、何らかの判定アルゴリズムが必要になる。
【００５３】
本願発明者は、このような判定アルゴリズムとして、従来からレンダリング処理に利用されている大域照明モデルの輝度計算アルゴリズムを転用できることに気がついた。大域照明モデルは、図３を参照して説明したとおり、光源からの直接反射光だけでなく、物体や壁などの表面で繰り返し反射して視点へと到達した間接光も考慮するモデルであり、非常に写実的な二次元画像を作成することができるため、近年、広く利用されているモデルである。この大域照明モデルを用いた輝度計算を行えば、物体を構成する個々の単位面が、所定の光源に対する光学的な連続領域内にあるか、当該領域外にあるか、を判定することができる。
【００５４】
たとえば、図３に示す例において、単位面Ｐ８，Ｐ９，Ｐ５，Ｐ１０，Ｐ１１，Ｐ１２には、光源Ｌからの光が直接もしくは間接的に到達することができる。同様に、単位面Ｐ１，Ｐ２，Ｐ３，Ｐ４にも、光源Ｌからの光が到達することができる。したがって、これらの各単位面は、光源Ｌに対して「直接もしくは間接的に互いに光が行き来できる位置」に配置されていることになり、光源Ｌについての光学的な連続領域の内部に存在することになる。これに対して、単位面Ｐ６，Ｐ７は、戸棚下部４０内に位置するため、光源Ｌからの光が届かない単位面になる。別言すれば、単位面Ｐ６，Ｐ７と光源Ｌとの間は「直接もしくは間接的に互いに光が行き来できない」ことになる。したがって、単位面Ｐ６，Ｐ７は、光源Ｌについての光学的な連続領域の外部に存在することになる。
【００５５】
このように、着目する単位面が、光源Ｌについての光学的な連続領域の内側にあるのか、外側にあるのか、を判定するには、光源Ｌに対して「直接もしくは間接的に互いに光が行き来できるか否か」を調べればよい。大域照明モデルを用いた輝度計算は、所定位置に光源を定義し、物体の各部を構成する単位面について、繰り返し反射した間接光も考慮に入れて輝度を求めるものである。したがって、この大域照明モデルを用いた輝度計算によって得られた輝度の計算値が０でなかった単位面については、光源Ｌからの光の一部が「何らかの光路」を経て到達していると判断することができ、当該「何らかの光路」を形成する空間を介して、光源Ｌに光学的に連続していることになる。
【００５６】
実際、図３に示す例の場合、単位面Ｐ５についての輝度を大域照明モデルを用いた輝度計算によって求めれば、少なくとも図に一点鎖線で示されている光路「Ｌ→Ｐ８→Ｐ９→Ｐ５」を経て、光源Ｌからの光が単位面Ｐ５まで到達するので、単位面Ｐ５の輝度としては、０でない値が求まることになる。これに対して、単位面Ｐ６，Ｐ７については、光源Ｌからの光が到達することはないので、輝度は０になる。したがって、光源Ｌを設定し、大域照明モデルを用いた輝度計算を行うと、図５にハッチングを施して示す領域内の単位面の輝度は０になり、それ以外の領域内の単位面には、０でない輝度が与えられる。
【００５７】
ここで、図５において、光源Ｌの代わりに、視点Ｅ１の位置に光源を配置して、上述と同様の輝度計算を行えば、「図５のハッチング領域内の輝度は０になり、それ以外の輝度は０でない」という同じ結果が得られる。これは、図５において、光源Ｌと視点Ｅ１とは、同じ光学的な連続領域に配置されているからである。実際、光源Ｌの位置を、視点Ｅ１に対して光学的な連続領域内に配置する限り、「図５のハッチング領域内の輝度は０になり、それ以外の輝度は０でない」という同じ結果が得られることになるので、図６にハッチングを施して示した視点配置可能領域内の任意の位置に光源Ｌを配置しても、やはり「図５のハッチング領域内の輝度は０になり、それ以外の輝度は０でない」という同じ結果が得られる。
【００５８】
結局、物体各部について、設定した視点配置可能領域の内部の部分か否かを判定するには、視点配置可能領域に属する任意の位置に光源を設定し、この光源を用いて、大域照明モデルをによる輝度計算を行い、輝度が０の部分は「視点配置可能領域の外部」と判定し、輝度が０でない部分は「視点配置可能領域の内部」と判定すればよいことになる。そして、輝度が０である「視点配置可能領域外の部分」については、視点配置可能領域内に視点を設定する限りにおいて、当該視点との間での直接もしくは間接的な光の往来は存在しないので、三次元形状データは削除してかまわないことになる。
【００５９】
＜＜＜  §３．本発明に係るデータ削減方法の基本手順  ＞＞＞
続いて、上述した基本原理に基づく本発明の基本手順を説明する。本発明の目的は、物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行うことにある。そこで、ここでは、図７に示すような単純な構造をもった物体６０の三次元形状データが、処理対象となるデータとして与えられたときに、所定の視点配置条件を定めることにより、不要となるデータを削除する処理を行うことを考える。
【００６０】
図７に側断面図を示す物体６０は、内部に空洞を有する物体であり、三次元形状データは、外部表面のデータと内部表面のデータとによって構成されている。このように、物体の三次元形状データは、通常、当該物体の表面（外部表面および内部表面）を示すデータから構成される。そして、この表面を示すデータとしては、ポリゴンの集合体もしくはパラメトリック曲面の集合体からなるデータが一般に用いられている。
【００６１】
ポリゴンの集合体からなるデータは、物体表面を多数の微小な多角形によって表すためのデータであり、たとえば、図７に示す物体６０をポリゴンの集合として表す場合、外部表面および内部表面を多数の多角形に分割し、個々の多角形の頂点座標などを示すデータによって、当該物体６０の三次元形状データを構成することになる。一方、図７に示す物体６０をパラメトリック曲面の集合として表す場合、外部表面のデータは、球の方程式およびこの方程式に用いられるパラメータの値（たとえば、球の半径の値）からなるデータによって構成できる。また、内部表面の球状部分は、外部表面と同様に、球の方程式およびこの方程式に用いられるパラメータの値からなるデータによって構成でき、中心へ向けての隆起部分については、たとえば、放物線の回転体として把握することにより、当該放物線の方程式およびこの方程式に用いられるパラメータの値からなるデータによって構成できる。
【００６２】
ここでは、まず、物体６０の外部に視点を配置するという条件を課す場合について、本発明の基本手順を説明しよう。図７に示す物体６０について、物体外部に視点を配置して利用するという条件を設定した場合、図にドットによるハッチングを施した部分が視点配置可能領域ということになる。この視点配置可能領域は、処理対象となる物体６０が配置された三次元仮想空間における光学的な連続領域である。§２で述べた基本原理によれば、この視点配置可能領域に所属する任意の位置に光源を設定し、この光源を用いて、物体６０の各部について、大域照明モデルによる輝度計算を行い、輝度が０の部分のデータを削除すればよいことになる。ただ、このような輝度計算を行うためには、図１〜図６に示す例における部屋Ｒに相当する何らかの包囲体が必要である。
【００６３】
そこで、図８に示すように、物体６０の周囲を囲う包囲体７０を定義し、この包囲体７０の三次元形状データである包囲体データを設定する。この包囲体７０は、光を反射する内面を有し、物体６０の周囲を囲うことができるものであれば、形状および大きさは不問である。このような包囲体７０の三次元形状データは、オペレータ側で用意して、コンピュータに入力することも可能であるが、形状や大きさを示すオペレータの指示入力に基づいて、コンピュータ側で作成させることも可能である。あるいは、§５で説明するように、オペレータの指示なしに、コンピュータ側で自動的に作成させることも可能である。
【００６４】
続いて、図８に示すように、視点配置可能領域に属し、かつ、包囲体７０の内部の位置に、光源Ｌを設定する。そして、この光源Ｌから発せられた照明光のエネルギーが、物体６０および包囲体７０の各部で繰り返し反射することを考慮した照明シミュレーション（大域照明モデルにおけるシミュレーション）を実施し、物体６０各部の輝度を演算する。
【００６５】
この照明シミュレーションは、実際には、物体６０の各部を構成する単位面における反射現象を繰り返し演算することにより行われる。たとえば、図９に示す例のように、光源Ｌから発せられた照明光が、単位面Ｐ１１，Ｐ１２，Ｐ１３に照射されたものとしよう。単位面Ｐ１１，Ｐ１２は、物体６０の外部表面上の面であり、単位面Ｐ１３は、包囲体７０の内部表面上の面であり、それぞれ所定の反射率がデータとして与えられている。もちろん、光源Ｌからの光は、この他にも多数の単位面に照射される。続いて、この光源Ｌからの照明光を受けた各単位面は、それぞれ所定方向に所定の強度をもった反射光を生じさせる。たとえば、図示の例の場合、単位面Ｐ１１，Ｐ１２，Ｐ１３からの反射光は、それぞれ単位面Ｐ２１，Ｐ２２，Ｐ２３へと入射する。更に、これら各単位面からも、所定方向に所定の強度をもった反射光が生じ、図示の例の場合、それぞれ単位面Ｐ３１，Ｐ３２，Ｐ３３へと入射する。
【００６６】
この図９では、３本の光路に沿って、光源Ｌから出た光が、単位面Ｐ３１，Ｐ３２，Ｐ３３へと到達する様子を示した。もちろん、実際には、物体６０の表面や包囲体７０の表面には多数の単位面が形成されており、膨大な数の光路について、光の伝播がシミュレートされることになる。たとえば、単位面Ｐ１１には、光源Ｌからの光だけではなく、包囲体７０側の多数の単位面から反射した光が照射されることになる。通常は、反射光として、拡散反射の成分が考慮されるので、１つの単位面から様々な方向に反射光が射出することになる。また、図９に示す例では、光源Ｌから出た光が、３回目の反射を行うために、単位面Ｐ３１，Ｐ３２，Ｐ３３へと到達したときの様子を示したが、単位面Ｐ３１，Ｐ３２，Ｐ３３から射出した反射光は、更に４回目の反射を行うために、次の反射面へと向かうことになる。
【００６７】
ここで、１つの単位面に入射する光のエネルギーと、そこから反射する光のエネルギーとを比較すると、通常、後者は前者より小さくなる。したがって、光源Ｌから射出した光のエネルギーは、単位面で１回反射するごとに、その一部が失われ、徐々に減衰してゆくことになる。１回の反射でどの程度のエネルギーが失われるかは、当該単位面の反射率で決定される。反射で失われたエネルギーは、当該単位面に吸収されたエネルギーということになる。
【００６８】
一般的な大域照明モデルにおける輝度計算では、このように、個々の単位面について、光の入射と反射のシミュレーションを十分な回数だけ繰り返し行い、個々の単位面ごとに、光源もしくは他の単位面から受け取るエネルギーおよび他の単位面へと放出するエネルギーをそれぞれ計算し、両者の差を蓄積エネルギーとし、個々の単位面についての蓄積エネルギーを当該単位面の輝度とする演算を行うことになる。
【００６９】
本発明では、大域照明モデルにおける輝度計算のこのような特徴に着目し、物体６０を構成する個々の単位面が、光源Ｌに対して光学的な連続領域にあるか否かを判定するのである。すなわち、上述したような各単位面における入射／反射のシミュレーションを十分な回数だけ繰り返せば、結局、物体６０の外部表面を構成するすべての単位面には、光源Ｌから射出した光が直接もしくは間接的に照射されることになり、最終的にいくらかのエネルギーが蓄積されるはずである。別言すれば、これら外部表面を構成する単位面の輝度は０にはならない。これに対して、物体６０の内部表面を構成するすべての単位面には、光源Ｌからの射出光が、直接的にも間接的にも、照射されることはない。したがって、これら内部表面を構成する単位面の輝度は０になる。
【００７０】
このように、シミュレーションの結果、輝度が０となった単位面は、「光源Ｌに対して光学的な連続領域にない」ということができるので、「光源Ｌに対して光学的な連続領域にある」位置に視点を設定するという条件を定める限り、当該単位面に関するデータは不要であり、削除してかまわないことになる。図９に示す例の場合、物体６０の内部表面を構成するすべての単位面のデータは削除できることになる。図１０は、このような方針で、データ削除を実行した結果を示す側断面図である。実線で示されている残存部６５の実体は、物体６０の外部表面に関するデータであり、破線で示す内部表面に関するデータは削除されている。物体６０全体のデータの代わりに、残存部６５のデータを用いても、図７にドットによるハッチングを施した視点配置可能領域内に視点を設定して利用する限り、何ら支障は生じない。
【００７１】
図１１は、本発明に係る三次元形状データの削減方法の基本手順を示す流れ図である。まず、ステップＳ１において、処理対象となる物体の三次元形状データを、処理前データとしてコンピュータに入力する処理が行われる。前述の例の場合、図７に示す物体６０の三次元形状データがコンピュータに入力されることになる。
【００７２】
続いて、ステップＳ２では、この物体６０が配置された三次元仮想空間に、光学的な連続領域からなる視点配置可能領域を設定するためのオペレータの指示がコンピュータに入力される。図７に示す例では、物体６０の外部（ドットによるハッチング部）に、視点配置可能領域の設定が行われている。もっとも、この視点配置可能領域の設定は、論理的に特定の領域が画定できるのであれば、どのような形式で設定してもかまわない。実用上は、オペレータが、コンピュータに対して、三次元仮想空間上の指示点を入力するようにし、この指示点の空間位置と光学的に連続する領域を視点配置可能領域として設定すれば十分である。たとえば、図８に示すように、三次元仮想空間上に物体６０が定義されている場合、点Ｌの位置を指示点として入力すれば、「この指示点と光学的に連続する領域」として、図にドットによるハッチングを施した視点配置可能領域を特定することが可能になる。
【００７３】
次のステップＳ３では、包囲体の設定が行われる。図８には、物体６０の周囲を囲う包囲体７０が示されている。包囲体７０を示す包囲体データは、前述したとおり、オペレータが用意してコンピュータに入力してもよいし、オペレータの指示入力に基づいてコンピュータ側で作成してもよいし、所定の作成アルゴリズムに基づいてコンピュータ側で自動生成されるようにしてもよい。
【００７４】
続いて、ステップＳ４において、光源の設定が行われる。図８に示す例では、光源Ｌが設定されている。光源Ｌの位置は、視点配置可能領域に属し、かつ、包囲体の内部の位置であれば、どこでもかまわない。この光源Ｌの位置設定も、オペレータの指示入力に基づいて行うようにしてもよいし、コンピュータ側で自動設定するようにしてもかまわない。たとえば、ステップＳ２において、視点配置可能領域を設定するために、オペレータから点Ｌの位置が指示点として入力され、この点Ｌが包囲体７０の内部の点であれば、この指示点位置に点光源Ｌを自動的に設定するようにしてかまわない。この場合、オペレータによる指示点は、視点配置可能領域を指示する点であるとともに、光源位置を指示する点ということになる。
【００７５】
こうして、図８に示す例のように、物体６０、包囲体７０、光源Ｌについての設定が完了したら、ステップＳ５において、前述したように、大域照明モデルを用いた各単位面の輝度計算がコンピュータによって実行される。すなわち、光源Ｌから発せられた照明光のエネルギーが、物体６０および包囲体７０の各単位面で繰り返し反射することを考慮した照明シミュレーションが実施され、各単位面の輝度が演算される。
【００７６】
続く、ステップＳ６では、この輝度計算の結果に基づいて、不要なデータを削除する処理がコンピュータによって実行される。すなわち、ステップＳ１で入力された処理前データのうち、ステップＳ５の輝度計算ステップにより求められた輝度が０である部分に関するデータが削除される。図８に示す設定では、前述したとおり、物体６０の内部表面を構成する各単位面の輝度が０になるため、これらの単位面のデータを削除した結果、図１０に示す残存部６５（物体６０の外部表面）に対応するデータが残ることになる。
【００７７】
最後のステップＳ７では、このステップＳ６のデータ削除処理の後に残ったデータが、処理後データとして出力される。このとき、ここで述べる実施形態では、出力される処理後データに、ステップＳ２で設定した視点配置可能領域を示すデータを含ませるようにしてある。たとえば、図１０に示す例の場合、残存部６５に対応する三次元形状データに、光源として用いた点Ｌの位置を示すデータを、視点配置可能領域を示すデータとして添付し、これを処理後データとして出力すればよい。そうすれば、この処理後データを利用する利用者は、当該処理後データに含まれている三次元形状データ（残存部６５に対応するデータ）を利用するにあたっては、「点Ｌに対して光学的に連続した領域（概念的には、物体６０の外部）に視点を配置する」という視点配置条件が課されていることを認識することができ、当該条件に適った利用を行うことができる。
【００７８】
もちろん、「視点配置可能領域を示すデータ」は、図１０に示す点Ｌの位置に限定されるものではなく、利用者に対して、視点配置可能領域を認識させることができるデータであれば、どのようなデータを用いてもかまわない。たとえば、「物体外部」というような文字データであってもかまわない。
【００７９】
以上、視点配置可能領域を物体外部に設定した場合について、本発明に係るデータ削減方法の基本手順を述べたが、続いて、視点配置可能領域を物体内部に設定した場合の基本手順を説明しよう。たとえば、図１２に示す例のように、物体６０に関して、内部の空洞部分に視点配置可能領域を定義した場合を考える。このような設定は、物体６０が比較的小さな物体の場合はあまり現実的ではないが、物体６０が、たとえば、窓のない宇宙船であったような場合を想定すれば、宇宙飛行士の目で見た船内の様子を二次元画像として提示するような用途には十分に利用できる。
【００８０】
このように、物体内部に視点配置可能領域を設定した場合の手順も、基本的には、図１１に示す流れ図の手順とほぼ同じである。ただ、この場合は、物体を囲う包囲体を設定する必要はなくなるので（もちろん、包囲体を設定しても、特に支障は生じないが）、図１１に示すステップＳ３は省略することができる。具体的には、次のような手順になろう。
【００８１】
まず、ステップＳ１において、処理対象となる物体の三次元形状データを、処理前データとしてコンピュータに入力する。具体例では、図１２に示す物体６０の三次元形状データがコンピュータに入力されることになる。続くステップＳ２では、この物体６０が配置された三次元仮想空間に、光学的な閉領域からなり、物体内部に位置する視点配置可能領域を設定するためのオペレータの指示がコンピュータに入力される。図１２に示す例では、物体６０の内部（ドットによるハッチング部）に、視点配置可能領域の設定が行われているが、このような領域を設定するには、領域内の１点Ｌを指示する入力を行えばよい。そうすれば、指示点Ｌと光学的に連続する領域として、図にドットによるハッチングを施した視点配置可能領域を特定することが可能になる。
【００８２】
次に、上述したとおりステップＳ３を省略し、ステップＳ４において、光源の設定が行われる。光源Ｌの位置は、視点配置可能領域に属する位置であれば、どこでもかまわないので、オペレータの指示入力に基づいて設定するようにしてもよいし、コンピュータ側で自動設定するようにしてもかまわない。ステップＳ２において、視点配置可能領域を設定するために、オペレータから点Ｌの位置が指示点として入力されたのであれば、この指示点位置に点光源Ｌを自動的に設定すれば簡単である。
【００８３】
こうして、図１２に示す例のように、物体６０および光源Ｌについての設定が完了したら、ステップＳ５において、大域照明モデルを用いた各単位面の輝度計算がコンピュータによって実行される。すなわち、光源Ｌから発せられた照明光のエネルギーが、物体６０の各単位面で繰り返し反射することを考慮した照明シミュレーションが実施され、各単位面の輝度が演算される。そして、ステップＳ６において、この輝度計算の結果に基づいて、不要なデータを削除する処理がコンピュータによって実行される。すなわち、ステップＳ１で入力された処理前データのうち、ステップＳ５の輝度計算ステップにより求められた輝度が０である部分に関するデータが削除される。図１２に示す設定では、物体６０の外部表面を構成する各単位面の輝度が０になるため、これらの単位面のデータを削除した結果、図１３に示す残存部６６（物体６０の内部表面）に対応するデータが残ることになる。
【００８４】
最後のステップＳ７では、このステップＳ６のデータ削除処理の後に残ったデータが、処理後データとして出力される。このとき、ステップＳ２で設定した視点配置可能領域を示すデータを含ませるようにする。図１３に示す例の場合、残存部６６に対応する三次元形状データに、光源として用いた点Ｌの位置を示すデータを、視点配置可能領域を示すデータとして添付し、これを処理後データとして出力すればよい。そうすれば、この処理後データを利用する利用者は、当該処理後データに含まれている三次元形状データ（残存部６６に対応するデータ）を利用するにあたっては、「点Ｌに対して光学的に連続した領域（概念的には、物体６０の内部）に視点を配置する」という視点配置条件が課されていることを認識することができ、当該条件に適った利用を行うことができる。
【００８５】
なお、内部に複数の空洞部を有する物体についても、これまで述べた手順と同様の手順が適用可能である。たとえば、図１４に示す物体８０は、２つの空洞部８１，８２を有する構造をもつ。このような物体８０について、物体外部に視点配置可能領域を設定する場合の処理は、図７に示す物体６０について行った処理と全く同じである。
【００８６】
一方、物体内部に視点配置可能領域を設定する場合は、空洞部８１か空洞部８２のいずれかを視点配置可能領域として設定することになる。空洞部８１を視点配置可能領域として設定する場合は、たとえば、点Ｌ１の位置を視点配置可能領域を特定するための指示点として指定し、この点Ｌ１の位置に光源を設定して輝度計算を行えばよい。この場合、処理後データとして出力される三次元形状データは、空洞部８１の内壁面を示すデータ（図１３に示す残存部６６を示すデータと同じ）ということになる。一方、空洞部８２を視点配置可能領域として設定する場合は、たとえば、点Ｌ２の位置を視点配置可能領域を特定するための指示点として指定し、この点Ｌ２の位置に光源を設定して輝度計算を行えばよい。この場合、処理後データとして出力される三次元形状データは、空洞部８２の内壁面を示すデータということになる。
【００８７】
最後に、上述した基本手順を、図１に示す例に適用した結果を述べよう。図１５は、図１に示す三次元仮想空間上における光学的閉領域を示す側面図（一部分は側断面図）である。図に太線で示した部分は、光学的閉領域を隔絶する境界を表しており、各太線の両側に、それぞれ独立した光学的閉領域が形成されていることになる。別言すれば、この太線で示す部分は、光を遮蔽する材質からなり、隣接する光学的閉領域に対する光の行き来を阻害していることになる。
【００８８】
図１６は、図１に示す三次元仮想空間上に配置された各物体の位相幾何学的な構造を示す構造断面図である。図に斜線のハッチングを施した部分は、光を遮蔽する材質からなる構造部分であり、ハッチングが施されていない部分は、光を透過する材質からなる構造部分もしくは自由空間である。この図１６に示す構造は、図１５に示す構造と、光学的な見地において、位相幾何学的に等価である。図示のとおり、部屋Ｒ内には、５つの光学的閉領域ＳＰ１〜ＳＰ５が形成されている。個々の光学的閉領域ＳＰ１〜ＳＰ５は、それぞれが１つの光学的な連続領域を形成しており、各領域の内部では、光が自由に行き来できるが、隣接する領域間での光の行き来は阻害されることになる。
【００８９】
図１７は、図１６に示す構造断面図において、光学的閉領域ＳＰ１を視点配置可能領域に設定し、上述した基本手順を実行することにより、最終的に得られた処理後データに対応する部分を示す図である。図にドットによるハッチングを施した部分が、視点配置可能領域であり、実線で示す部分が、処理後データに対応する部分である。図示のとおり、いずれも光学的閉領域ＳＰ１の空間内に露出している外部表面のデータのみが残存し、花瓶２０の内部に位置する部分のデータ、戸棚下部４０の内部に位置する部分のデータ、缶詰５２の内部に位置する部分のデータは削除される。
【００９０】
一方、図１８(a) ，(b) ，(c) ，(d) は、それぞれ光学的閉領域ＳＰ２，ＳＰ３，ＳＰ４，ＳＰ５を視点配置可能領域に設定し、上述した基本手順を実行することにより、最終的に得られた処理後データに対応する部分を示す図であり、やはり、図にドットによるハッチングを施した部分が、視点配置可能領域であり、実線で示す部分が、処理後データに対応する部分である。図１８(a) に示すように、光学的閉領域ＳＰ２を視点配置可能領域に設定した場合は、花瓶２０の内部および花３０の花瓶内に位置する部分のデータのみが残存し、その他のデータはすべて削除される。一方、図１８(b) に示すように、光学的閉領域ＳＰ３を視点配置可能領域に設定した場合は、戸棚下部４０の内部表面の部分のデータ、瓶４１のデータ、缶詰４２の外部表面の部分のデータが残存し、その他のデータはすべて削除される。また、図１８(c) に示すように、光学的閉領域ＳＰ４を視点配置可能領域に設定した場合は、缶詰４２の内部の部分のデータが残存し、その他のデータはすべて削除され、図１８(d) に示すように、光学的閉領域ＳＰ５を視点配置可能領域に設定した場合は、缶詰５２の内部の部分のデータが残存し、その他のデータはすべて削除される。
【００９１】
＜＜＜  §４．大域照明モデルを利用した具体的な輝度計算法  ＞＞＞
ここでは、図１１の流れ図におけるステップＳ５の輝度計算の具体的な方法を述べる。既に述べたとおり、この輝度計算は、大域照明モデルを用いて行われ、物体表面を多数の単位面（通常、パッチと呼ばれている）の集合体として把握し、個々の単位面どうしの光の相互反射を考慮した輝度計算が行われる。
【００９２】
図１１の流れ図におけるステップＳ１において、物体の三次元形状データがポリゴンの集合体として入力され、これを処理前データとして利用する場合であれば、個々のポリゴンを１つの単位面として取り扱い、個々の単位面ごとに輝度を求める演算を行い、ステップＳ６でデータ削除を行う際には、求められた輝度が０である単位面を構成するポリゴンのデータを削除すればよい。
【００９３】
図１９は、ポリゴンの集合体として表現された物体の三次元形状データの概念図である。図示の例では、個々のポリゴンはいずれも三角形によって構成されており、１つの三角形が１つの単位面として取り扱われ、各三角形ごとに輝度の計算が行われることになる。そして、輝度が０である三角形については、当該三角形のデータそのものが削除されることになる。
【００９４】
なお、個々のポリゴンを１つの単位面として取り扱う代わりに、個々のポリゴンをそれぞれ複数の単位面に分割する取り扱いを行うことも可能である。図１９に示す例の場合、個々の三角形を更に細かな三角形に分割し、この細かな三角形をそれぞれ単位面として輝度計算を行えばよい。この場合、ステップＳ６でデータ削除を行う際には、求められた輝度が０である単位面のみから構成されるポリゴンのデータを削除するようにすればよい。別言すれば、輝度が０でない単位面を１つでも含むポリゴンのデータは、削除されずに残ることになる。
【００９５】
一方、  図１１の流れ図におけるステップＳ１において、物体の三次元形状データが所定の関数およびこの関数で用いられるパラメータ値によって表現されるパラメトリック曲面の集合体として入力され、これを処理前データとして利用する場合は、個々のパラメトリック曲面を複数の単位面に分割もしくは近似し、個々の単位面ごとに輝度を求める演算を行い、ステップＳ６では、求められた輝度が０である単位面のみから構成されるパラメトリック曲面のデータを削除するようにすればよい。
【００９６】
図２０は、パラメトリック曲面の集合体として表現された物体の三次元形状データの概念図である。この例では、３つのパラメトリック曲面Ｃ１，Ｃ２，Ｃ３から構成される物体が示されている。各曲面Ｃ１，Ｃ２，Ｃ３は、所定の関数およびこの関数で用いられるパラメータ値によって定義されている。この場合、各曲面をそれぞれ複数の単位面に分割して取り扱えばよい。図には、曲面Ｃ１を破線によって複数の単位面に分割した状態が示されている。演算を簡略化するためには、各単位面が平面となるようにするのが好ましいので、必要に応じて、曲面Ｃ１を複数の曲面に分割し、各分割曲面に近似する平面を単位面と定義すればよい。こうして、各単位面について輝度計算を行い、輝度が０である単位面のみから構成されるパラメトリック曲面については、そのデータを削除すればよい。別言すれば、輝度が０でない単位面を１つでも含むパラメトリック曲面のデータは、削除されずに残ることになる。
【００９７】
図２０に示す例の場合、破線で囲まれた各単位面のうち、１つでも輝度が０でない単位面があれば、パラメトリック曲面Ｃ１のデータは削除されずに残ることになる。もちろん、実用上は、各パラメトリック曲面と、これを分割して得られた複数の単位面との関係を予め登録しておき、輝度演算が完了した後に、どのパラメトリック曲面が削除可能であるかを把握できるようにしておく必要がある。なお、パラメトリック曲面を、平面からなる複数の単位面で近似する処理は、一般に「テッセレーション」と呼ばれている公知の処理であり、ここでは詳しい処理方法の説明は省略する。
【００９８】
続いて、個々の単位面ごとの輝度計算を行う上での具体的な手法を述べる。大域照明モデルを用いた各単位面の輝度計算の手法自体は、既に知られている技術であり、ラジオシティ法やフォトンマッピング法といった具体的な方法が広く利用されている。これらの方法の基本原理は、個々の単位面ごとに、光の入射／反射のプロセスをシミュレートし、光源もしくは他の単位面から受け取るエネルギーおよび他の単位面へと放出するエネルギーをそれぞれ計算し、両者の差を蓄積エネルギーとし、光の入射／反射のプロセスを繰り返しシミュレートして、個々の単位面についての蓄積エネルギーを当該単位面の輝度とする演算を行うことにある。
【００９９】
しかしながら、本発明では、個々の単位面の輝度を正確に計算する必要はない。本発明の目的は、与えられた物体の三次元形状データに基づいてレンダリング処理を行い、二次元画像を得ることにあるわけではないので、各単位面の輝度自体は必要ないのである。本発明の目的は、与えられた物体の三次元形状データを削減することにあり、そのためには、個々の単位面について、削除可能か否かの判定を行う必要がある。そして、この判定基準として、各単位面の輝度を利用し、輝度が０である単位面については削除可能との判定を下すことになる。
【０１００】
結局、本発明で必要な情報は、「各単位面の輝度がいくつであるか」という情報ではなく、「各単位面の輝度が０であるか否か」という情報である。そうすると、ある単位面の輝度が０でなくなった時点で、当該単位面に関しては、もはや輝度の値を演算する必要はないことがわかる。たとえば、図３において、光源Ｌからの光は、単位面Ｐ８で反射した後、単位面Ｐ９に照射され、この単位面Ｐ９で反射した後、単位面Ｐ５へと向かっている。ここで、単位面Ｐ９に着目すると、単位面Ｐ８からきた反射光のエネルギーの一部を蓄積し、残りを反射光として射出することになるので、この時点で、単位面Ｐ９の輝度は０でないことが判明する。したがって、単位面Ｐ９に関する限り、もはや輝度計算のためのシミュレーションは不要ということになる。
【０１０１】
ただ、単位面Ｐ９の輝度が０でないことが判明した時点で、直ちに単位面Ｐ９に関する光の入射／反射のプロセスのシミュレーションを中止してよいかというと、必ずしも、中止してよいことにはならない。なぜなら、シミュレーションを繰り返し実行してゆくうちに、単位面Ｐ８ではない別な単位面からの光が単位面Ｐ９に入射することになり、その反射光に起因して、初めて光の照射を受ける新たな単位面が現れる可能性があるからである。後に詳述するとおり、単位面Ｐ９に関する光の入射／反射のプロセスのシミュレーションを中止してよい時期は、単位面Ｐ９の蓄積エネルギーが０ではなくなっており（別言すれば、単位面Ｐ９に関して、少なくとも１回は光の入射／反射のプロセスのシミュレーションが実行されており）、かつ、単位面Ｐ９からの反射光が直接到達する可能性のあるすべての単位面の蓄積エネルギーが０ではなくなっている、という条件を満たしたとき、ということになる。
【０１０２】
この条件の意味するところをもう少し詳しく説明するために、図２１の流れ図に示す手順を説明しよう。この流れ図は、図１１のステップＳ５の具体的な処理手順を示すものであり、ラジオシティ法を利用した処理手順である。ラジオシティ法は、大域照明モデルを用いた輝度計算の代表的な手法の１つであり、個々の単位面（パッチ）を拡散反射面として取り扱い、この単位面からの放射エネルギー（ラジオシティ）を計算する演算が行われる。そのために、まず、個々の単位面どうしの放射エネルギーの授受の割合を示すフォームファクタを計算しておき、このフォームファクタを用いて、上述した光の入射／反射のプロセスのシミュレーションを実行する。
【０１０３】
たとえば、単位面の総数がｎ個であるとすると、これらｎ個の単位面のすべての組み合わせについて、フォームファクタを定義することができる。具体的には、第ｉ番目の単位面と、第ｊ番目の単位面との間には、次のようにして、フォームファクタＦｉｊを定義することができる。いま、第ｊ番目の単位面から何らかのエネルギーが放出され、この放出された全エネルギーがＢｊであったものとしよう。そして、この全エネルギーＢｊのうち、第ｉ番目の単位面に到達するエネルギーの占める割合をフォームファクタＦｉｊとするのである。ここで、このフォームファクタＦｉｊを、「第ｉ番目の単位面から第ｊ番目の単位面へのフォームファクタ」と呼ぶことにする。フォームファクタＦｉｊ＝０の場合は、第ｊ番目の単位面から第ｉ番目の単位面には、全くエネルギーが届かないことを示しており、両者間には、直接的に光が行き来することはない。
【０１０４】
このようなフォームファクタを、全ｎ個の単位面のすべての組み合わせについて予め計算しておくようにする（Ｆｉｉ＝０とする）。なお、光源も、１つもしくは複数の単位面の集合として取り扱うようにする。フォームファクタＦｉｊの値は、第ｉ番目の単位面の形状、大きさ、配置と、第ｊ番目の単位面の形状、大きさ、配置という幾何学的な条件のみによって計算される値となる。したがって、物体の三次元形状データおよび光源の情報が与えられれば、これに基づいて、全ｎ個の単位面のすべての組み合わせについてのフォームファクタを計算によって求めることができる。
【０１０５】
このようなフォームファクタＦｉｊを定義すると、第ｉ番目の単位面から放出されるエネルギーＢｉは、
Ｂｉ＝Ｅｉ＋ρｉ・Σｊ＝１〜ｎＦｉｊ・Ｂｊ
なる式で表すことができる。ここで、Ｅｉは、この第ｉ番目の単位面自身から生成され放出される成分であり、光源となる単位面以外についてはＥｉ＝０である。ρｉは、この第ｉ番目の単位面の反射率であり、Ｂｊは、第ｊ番目の単位面から放出される全エネルギーである。したがって、上式におけるΣｊ＝１〜ｎＦｉｊ・Ｂｊなる項は、自分（第ｉ番目の単位面）以外のすべての単位面から放出されたエネルギーのうち、自分宛に届くエネルギーの合計ということになり、全入射エネルギーということになる。この全入射エネルギーに、自分に固有の反射率ρｉを乗じ、自分の生成するエネルギーＥｉを加えたものが、自分が放出する全エネルギーＢｉということになる。
【０１０６】
予め、このようなフォームファクタを計算しておけば、光源から発せられた照明光のエネルギーが各単位面で繰り返し反射される現象のシミュレーションを、このフォームファクタおよび上記式を用いて実行することができる。たとえば、図９の例において、単位面Ｐ１１が光源Ｌから受け取るエネルギーは、「単位面Ｐ１１から光源Ｌ（単位面の１つ）へのフォームファクタ」をＦ（Ｐ１１，Ｌ）とし、光源Ｌから放出される全エネルギーをＢ（Ｌ）とすれば、Ｆ（Ｐ１１，Ｌ）・Ｂ（Ｌ）ということになる。単位面Ｐ１１には、他の単位面からのエネルギーも届くので（もちろん、フォームファクタが０となる相手方の単位面から受け取るエネルギーは０である。）、これら受け取るエネルギーの総和に、反射率を乗じた値が、単位面Ｐ１１から放出される全エネルギーということになる。
【０１０７】
それでは、図２１の流れ図に示すステップを順に見てゆこう。まず、ステップＳ１１において、全単位面についてのフォームファクタの計算が行われる。上述したとおり、光源も１つの単位面として取り扱うようにするため、物体を構成する単位面、光源を構成する単位面、そして包囲体を設定した場合には、包囲体を構成する単位面のそれぞれについて、相互のフォームファクタを計算することになる。具体的には、第ｊ番目の単位面から放出された全エネルギーＢｊのうち、第ｉ番目の単位面に到達するエネルギーの占める割合を示すフォームファクタＦｉｊを、「第ｉ番目の単位面から第ｊ番目の単位面へのフォームファクタ」として、全ｎ個の単位面のすべての組み合わせについて計算を行うことになる。なお、このフォームファクタの計算は、ラジオシティ法における常套手段とも言うべき手法であり、その具体的な手順は既に公知の技術であるため、ここでは説明は省略する。
【０１０８】
続いて、ステップＳ１２において、全単位面に判定フラグを定義し、全判定フラグを初期値０に設定する。この判定フラグは、後に行われる光の入射／反射のプロセスのシミュレーションによって、当該単位面に１回でも光の入射があったか否かを示すフラグであり、初期値は０であるが、１回でも光の入射があった場合には、フラグの値を１に変えるようにする。したがって、フラグの値が１になった単位面には、少なくとも１回は、光源からの直接光もしくは他の単位面からの反射光が照射されたことになり、当該単位面の輝度は０ではなくなる。逆に、シミュレーションが完了した時点で、フラグの値が初期値０のままである単位面は、１回も光の入射がなかった単位面ということになるので、当該単位面の輝度は０になり、後のステップでの削除対象になる。
【０１０９】
もちろん、フラグの値としては、必ずしも０と１を用いる必要はなく、互いに区別可能な第１の値と第２の値であれば、任意の値を用いることができるが、コンピュータによる二進処理の便宜を考慮すると、上述の例のような０と１を用いるのが好ましい。こうして、ステップＳ１２において、全単位面の判定フラグを初期値０に設定しておけば、この時点では、まだいずれの単位面にも光の入射はないことになる。
【０１１０】
次に、ステップＳ１３において、光源を構成する単位面の判定フラグを１に変える処理が行われる。前述したとおり、一般的なラジオシティ法では、光源も単位面として取り扱う処理が行われ、光源は少なくとも１枚の単位面を有し、自ら発光する物体として機能する。もちろん、光源自体は、本発明によるデータ削減の対象になるわけではないが、以下の判定処理の便宜上、まず、光源を構成する単位面については、判定フラグを１に変えておく。
【０１１１】
続いて、ステップＳ１４において、判定フラグが変化したばかりの単位面を着目単位面として抽出する処理が行われる。ここで、「判定フラグが変化したばかり」とは、このステップＳ１４の直前のステップ（ステップＳ１３もしくはステップＳ１６）で判定フラグが変化したことを意味している。ステップＳ１３からステップＳ１４へと遷移した場合は、当然、光源を構成する単位面の判定フラグが０から１に変化したばかりなので、これら光源を構成する単位面のすべてが着目単位面として抽出されることになる。
【０１１２】
そして、ステップＳ１５では、ステップＳ１４において、着目単位面が１つでも抽出されたか否かが判定され、１つでも抽出された場合にはステップＳ１６へと遷移し、１つも抽出されなかった場合にはステップＳ１７へと遷移する。
【０１１３】
ステップＳ１６へ遷移した場合は、着目単位面へのフォームファクタが０でなく、かつ、自分自身の判定フラグが０である単位面を探し、そのような単位面があった場合には、当該単位面の判定フラグを１に変える処理が行われる。たとえば、全ｎ個の単位面の中の第ｊ番目の単位面Ｐｊが着目単位面として抽出された場合を考えてみよう。この場合、着目単位面Ｐｊは、判定フラグが変化したばかりの単位面であり、初めて光の入射があった単位面ということになる。一方、第ｉ番目の単位面Ｐｉが、「判定フラグが現時点では０であり、かつ、第ｊ番目の単位面ＰｊへのフォームファクタＦｉｊが０ではない」という条件を満たす単位面として見つかったとすると、ステップＳ１６では、この第ｉ番目の単位面Ｐｉの判定フラグを１に変える処理が実行される。
【０１１４】
この処理は、着目単位面Ｐｊからの反射光が別な単位面Ｐｉへと入射する現象のシミュレーションに相当する。フォームファクタＦｉｊが０ではないので、着目単位面Ｐｊから放出された全エネルギーＢｊのうち、単位面Ｐｉには、Ｂｊ×Ｆｉｊなる０でない量のエネルギーが到達することになる。単位面Ｐｉの判定フラグを１に変えるのは、このように着目単位面Ｐｊからの反射光の入射という現象に基づくものである。なお、フォームファクタＦｉｊが０の場合は、着目単位面Ｐｊからの光が単位面Ｐｉに届くことは全くないので（たとえば、単位面Ｐｊ−Ｐｉ間に光の遮蔽物が存在するような場合）、単位面Ｐｉへの光の入射はなく、判定フラグは０のままにしておくことになる。また、単位面Ｐｉの判定フラグが既に１になっていたとしたら、判定フラグを変更する必要はない。ステップＳ１６における「判定フラグが現時点では０であり、かつ、第ｊ番目の単位面ＰｊへのフォームファクタＦｉｊが０ではない」という条件は、このような点を考慮したものである。
【０１１５】
こうして、ステップＳ１６の処理が完了したら、再びステップＳ１４からの処理が繰り返される。これは、１つの単位面で反射した光が別な単位面に入射し、その結果として発生する反射光が更に別な単位面に入射し、…というプロセスの繰り返しをシミュレートするためのものである。ステップＳ１６で、新たに判定フラグが１に変えられた単位面が存在すれば、そのような単位面はステップＳ１４において新たな着目単位面として抽出されることになる。
【０１１６】
このような処理を、ステップＳ１５において、新たな着目単位面が１つも抽出されない、と判断されるまで繰り返し実行する。そして、新たな着目単位面が１つも抽出されなかった場合には、ステップＳ１５からステップＳ１７へと分岐し、各単位面について、その時点での判定フラグの値をそのまま当該単位面の輝度とする処理が行われる。以上で、図１１の流れ図におけるステップＳ５の各単位面の輝度計算の処理は完了である。結局、判定フラグが初期値０のままであった単位面については、輝度０が与えられることになり、図１１の流れ図におけるステップＳ６で削除処理が行われる。
【０１１７】
この図２１の流れ図に示す輝度計算の手順は、各単位面の輝度が０か、０でないか、を判定するための手順として、極めて合理的であり、非常に小さな演算負担で必要な判定を行うことができるという特徴を有する。ステップＳ１４〜Ｓ１６の繰り返しループは、着目単位面、すなわち、直前のステップで判定フラグが０から１に変化したばかりの単位面についてのみ行う処理である。別言すれば、ある特定の単位面が、着目単位面としてステップＳ１４で抽出され、当該単位面についてステップＳ１６の処理が一度実行されると、当該単位面は二度と着目単位面として抽出されることはない。したがって、ステップＳ１４〜Ｓ１６に繰り返しループが存在するものの、同一の単位面を着目単位面として、ステップＳ１６の処理が２回以上実行されることはないのである。
【０１１８】
このように、１つの単位面を着目単位面とするステップＳ１６の処理が、１回だけで済む理由は、ステップＳ１６において、当該着目単位面からの反射光が直接届く可能性がある他のすべての単位面（すなわち、当該着目単位面へのフォームファクタが０ではない単位面）についての検討が行われるからである。ステップＳ１６の処理において、判定フラグが０から１に変えられる単位面は、上述したとおり、「着目単位面へのフォームファクタが０でなく、かつ、自分自身の判定フラグが０である」という条件を満たす単位面であり、このような条件を満たすすべての単位面は、このステップＳ１６の処理において、判定フラグが０から１へ変えられることになる。したがって、着目単位面からの反射光が直接届く可能性があり、かつ、現時点では、まだ判定フラグが０であるような単位面は、このステップＳ１６の処理によって、判定フラグが０から１に必ず変えられることになる。その結果、もはや着目単位面からの反射光の影響によって、判定フラグが０から１に変えられるような単位面は存在しないことになるので、当該着目単位面については、以後、ステップＳ１６の処理を行う必要はないのである。
【０１１９】
かくして、ステップＳ１５において、着目単位面が１つも抽出されない、という状態に到達したと判断されれば、もはやステップＳ１６を実施しても、判定フラグを０から１に変えるべく単位面は存在しないことになる。よって、その時点をもって、ステップＳ１４〜Ｓ１６の繰り返しループ処理を中止し、ステップＳ１７へと分岐するわけである。
【０１２０】
もちろん、この図２１に示す手順は、本来のラジオシティ法からは若干逸脱しているので、個々の単位面の本来の輝度を求めることはできない。すなわち、この手順における各単位面についての唯一の輝度計算というべき処理は、ステップＳ１６の処理であるが、この処理は、単に判定フラグを０から１に変えるだけの処理であり、通常のラジオシティ法で行われるエネルギーの蓄積処理は、この手順では全く行われることがない。したがって、最終的に個々の単位面について得られる結果は、輝度が０（判定フラグ＝０）か、０でないか（判定フラグ＝１）の２値情報として与えられるだけである。しかしながら、本発明の目的を達成する上では、「個々の単位面に関するデータを削除できるか否か」という２値情報があれば十分であり、この図２１に示す手順に基づく輝度計算は、本発明においては極めて効率的な方法として有効に機能する。
【０１２１】
最後に、図２２に示す単純なモデルについて、図２１の処理手順を適用した簡単なプロセスを述べておく。図２２に示すモデルは、６個の単位面Ｐ１〜Ｐ６と、１個の光源Ｌ（１つの単位面として扱う）とを含むだけの単純なモデルであり、図にハッチングを施して示す部分は、遮光部として機能するものとする。また、ここでは説明の便宜上、各単位面を黒点として示すことにする。図の遮光部は、光の通過を阻害するので、２つの単位面の間を結ぶ直線が、この遮光部にかからなければ、両者間で光の直接的な行き来が可能であり（すなわち、両者間のフォームファクタが０ではない）、遮光部にかかってしまうと、両者間で光の直接的な行き来が阻害されることになる（すなわち、両者間のフォームファクタが０になる）。
【０１２２】
まず、図２１のステップＳ１１では、これらすべての単位面Ｐ１〜Ｐ６，Ｌについて、相互のフォームファクタが計算される。もっとも、図２１の流れ図に示す手順では、フォームファクタの値は、０か、０でないか、の判定に利用されるだけなので、実際には、フォームファクタの具体的な数値まで求める必要はなく、０か、０でないかの区別がつけば十分である。続くステップＳ１２では、全単位面の判定フラグが初期値０に設定される。図２３は、図２２に示す各単位面Ｐ１〜Ｐ６，Ｌについての判定フラグの変遷を示す表である。図示のとおり、時点ｔ０の段階では、いずれの単位面についても、判定フラグ＝０に設定されている。
【０１２３】
次のステップＳ１３では、光源を構成する単位面の判定フラグが１に変えられる。図２３に示す時点ｔ１は、このときの状態を示している。すなわち、時点ｔ１では、光源Ｌについての判定フラグが、０から１に変わっている。他の単位面Ｐ１〜Ｐ６の判定フラグは、初期値０のままである。そして、ステップＳ１４において、判定フラグが変化したばかりの単位面が着目単位面として抽出される。この場合、光源Ｌが着目単位面として抽出されることになる。そして、ステップＳ１５を経てステップＳ１６が実行され、着目単位面Ｌへのフォームファクタが０でなく、かつ、自分自身の判定フラグが０である単位面が捜索される。図２２の例では、着目単位面Ｌへのフォームファクタが０でない単位面（すなわち、着目単位面Ｌから直接光が届く単位面）は、単位面Ｐ１のみである。この単位面Ｐ１の判定フラグはまだ０であるから、ステップＳ１６の条件を満たすことになり、単位面Ｐ１の判定フラグが０から１に変えられる。図２３に示す時点ｔ２は、このときの状態を示している。なお、図２３に太線で示す欄は、その時点における着目単位面である。時点ｔ２における着目単位面は、図示のとおり、時点ｔ１において判定フラグが変化したばかりの光源Ｌである。
【０１２４】
続いて、再びステップＳ１４へと戻り、判定フラグが変化したばかりの単位面が着目単位面として抽出される。この場合、時点ｔ２において判定フラグが変化したばかりの単位面Ｐ１が着目単位面として抽出されることになる。そして、ステップＳ１５を経てステップＳ１６が実行され、着目単位面Ｐ１へのフォームファクタが０でなく、かつ、自分自身の判定フラグが０である単位面が捜索される。図２２の例では、着目単位面Ｐ１へのフォームファクタが０でない単位面（すなわち、着目単位面Ｐ１から直接光が届く単位面）は、単位面Ｌ，Ｐ２，Ｐ３のみである。このうち、単位面Ｌの判定フラグは既に１になっているため、ステップＳ１６の条件を満たさないことになり、ここでは単位面Ｌに関しては何も操作は行わない。残る単位面Ｐ２，Ｐ３の判定フラグはまだ０であるから、ステップＳ１６の条件を満たすことになり、単位面Ｐ２，Ｐ３の判定フラグが０から１に変えられる。図２３に示す時点ｔ３は、このときの状態を示している。
【０１２５】
次に、再びステップＳ１４へと戻り、判定フラグが変化したばかりの単位面が着目単位面として抽出される。今度は、時点ｔ３において判定フラグが変化したばかりの単位面Ｐ２，Ｐ３が着目単位面として抽出されることになる。そして、ステップＳ１５を経てステップＳ１６が実行され、着目単位面Ｐ２もしくはＰ３へのフォームファクタが０でなく、かつ、自分自身の判定フラグが０である単位面が捜索される。図２２の例では、着目単位面Ｐ２へのフォームファクタが０でない単位面（すなわち、着目単位面Ｐ２から直接光が届く単位面）は、単位面Ｐ１のみであるが、単位面Ｐ１の判定フラグは既に１となっている。一方、着目単位面Ｐ３へのフォームファクタが０でない単位面（すなわち、着目単位面Ｐ３から直接光が届く単位面）は、単位面Ｐ１およびＰ４であるが、単位面Ｐ１の判定フラグは既に１となっている。結局、ステップＳ１６では、新たに単位面Ｐ４の判定フラグが０から１に変えられる。図２３に示す時点ｔ４は、このときの状態を示している。
【０１２６】
ここで、再びステップＳ１４へと戻り、判定フラグが変化したばかりの単位面が着目単位面として抽出される。ここでは、時点ｔ４において判定フラグが変化したばかりの単位面Ｐ４が着目単位面として抽出されることになる。そして、ステップＳ１５を経てステップＳ１６が実行され、着目単位面Ｐ４へのフォームファクタが０でなく、かつ、自分自身の判定フラグが０である単位面が捜索される。図２２の例では、着目単位面Ｐ４へのフォームファクタが０でない単位面（すなわち、着目単位面Ｐ４から直接光が届く単位面）は、単位面Ｐ３およびＰ５であるが、単位面Ｐ３の判定フラグは既に１となっている。結局、ステップＳ１６では、新たに単位面Ｐ５の判定フラグが０から１に変えられる。図２３に示す時点ｔ５は、このときの状態を示している。
【０１２７】
続いて、もう一度、ステップＳ１４へと戻り、判定フラグが変化したばかりの単位面が着目単位面として抽出される。ここでは、時点ｔ５において判定フラグが変化したばかりの単位面Ｐ５が着目単位面として抽出されることになる。そして、ステップＳ１５を経てステップＳ１６が実行され、着目単位面Ｐ５へのフォームファクタが０でなく、かつ、自分自身の判定フラグが０である単位面が捜索される。図２２の例では、着目単位面Ｐ５へのフォームファクタが０でない単位面（すなわち、着目単位面Ｐ５から直接光が届く単位面）は、単位面Ｐ４のみであるが、単位面Ｐ４の判定フラグは既に１となっている。結局、ステップＳ１６の条件を満足させる単位面は存在しないことになる。図２３に示す時点ｔ６は、このときの状態を示しており、この時点では、判定フラグの変化は全く生じないことになる。
【０１２８】
最後に、再びステップＳ１４へと戻るが、判定フラグが変化したばかりの単位面は、もはや存在しないことになる（時点ｔ６では、判定フラグの変化は生じていない）。そこで、ステップＳ１４では、新たな着目単位面は１つも抽出されないことになり、ステップＳ１５からステップＳ１７への分岐が行われる。かくして、図２３の時点ｔ６に示すように、単位面Ｐ１〜Ｐ５については輝度１が与えられ、単位面Ｐ６については輝度０が与えられることになる。最終的に、輝度０が与えられた単位面Ｐ６に関するデータは削除される。
【０１２９】
＜＜＜  §５．三次元形状データの削減装置の構成  ＞＞＞
続いて、本発明に係る三次元形状データの削減装置の構成および動作を説明する。図２４は、この削減装置の基本構成を示すブロック図である。この削減装置の基本機能は、処理前データＤbeforeとして与えられた物体の三次元形状データについて、視点配置条件を定めることにより、当該条件下で利用する限りは不要となるデータを削除する処理を行い、処理後に残ったデータを処理後データＤafterとして出力することである。
【０１３０】
図示のとおり、この削減装置は、処理前データ格納手段１１０、視点配置可能領域設定手段１２０、包囲体データ設定手段１３０、輝度演算手段１４０、データ削除手段１５０なる構成要素からなる。
【０１３１】
まず、処理前データ格納手段１１０は、処理対象となる物体の三次元形状データを、処理前データＤbeforeとして入力し、これを格納する構成要素であり、実用上は、コンピュータ用のデータ読込手段および記憶装置によって構成すればよい。
【０１３２】
視点配置可能領域設定手段１２０は、オペレータの指示に基づいて、処理前データＤbeforeによって示される物体が配置された三次元仮想空間に、光学的な連続領域からなる視点配置可能領域を特定するための何らかのデータを設定する構成要素である。前述したように、この視点配置可能領域を設定するための指示は、物体が配置された三次元仮想空間上での所定の指示点を指定する入力によって行うことができる。この場合、当該指示点の座標データによって、視点配置可能領域が特定されることになる。
【０１３３】
たとえば、処理前データ格納手段１１０に、図８に示すような物体６０の三次元形状データが処理前データＤbeforeとして格納されている場合、視点配置可能領域設定手段１２０は、この処理前データＤbeforeに基づいて、図８に示すように、物体６０をディスプレイ画面上に表示し、オペレータからの指示点入力を受け付ける処理を行えばよい。オペレータが、このディスプレイ画面上で、図８に示すように、点Ｌを指示点とする入力を行ったとすれば、この点Ｌの座標値（物体６０に対する相対的な位置が認識できる座標値であればよい）が、視点配置可能領域を設定するためのデータということになる。この場合、当該指示点Ｌの空間位置と光学的に連続する領域（図８にドットによるハッチングを施した物体外部の領域）が、視点配置可能領域として設定されたことになる。一方、オペレータが、ディスプレイ画面上で、図１２に示すように、点Ｌを指示点とする入力を行ったとすれば、この点Ｌの座標値が、視点配置可能領域を設定するためのデータということになる。この場合、当該指示点Ｌの空間位置と光学的に連続する領域（図１２にドットによるハッチングを施した物体内部の領域）が、視点配置可能領域として設定されたことになる。
【０１３４】
包囲体データ設定手段１３０は、物体の周囲を囲う包囲体の三次元形状データである包囲体データを設定する構成要素である。たとえば、図８に示す例の場合、物体６０の周囲を囲う包囲体７０が設定されている。前述したとおり、包囲体７０は、光を反射する内面を有し、物体６０の周囲を囲うことができるものであれば、形状および大きさは不問である。この包囲体７０を定義するための包囲体データは、オペレータ側で用意して、コンピュータに入力することも可能である。この場合、包囲体データ設定手段１３０は、オペレータが用意した包囲体データを入力し、格納する機能を果たすことになる。
【０１３５】
あるいは、包囲体データ設定手段１３０に対して、形状や大きさを示すオペレータの指示入力を与えるようにしておき、この指示入力に基づいて、包囲体データ設定手段１３０が所定の包囲体データを作成できるようにすることも可能である。たとえば、包囲体データ設定手段１３０に、図８に示すように、物体６０をディスプレイ画面上に表示させる機能をもたせておき、この画面上でオペレータが包囲体７０の形状や大きさを指定する指示入力を行うと、この指示入力に基づいて、包囲体データ設定手段１３０が、図８に示すような包囲体７０を設定することができるようにしておけばよい。
【０１３６】
また、包囲体データ設定手段１３０に、所定のアルゴリズムに基づいて、オペレータの指示なしに自動的に包囲体データを作成する機能をもたせておくことも可能である。たとえば、物体６０の三次元形状データを、ＸＹＺ三次元座標系上に取り込んだ場合であれば、当該形状データのＸ座標値の最大値Ｘmaxおよび最小値Ｘmin、Ｙ座標値の最大値Ｙmaxおよび最小値Ｙmin、Ｚ座標値の最大値Ｚmaxおよび最小値Ｚminを求め、Ｘ＝Ｘmax＋α１、Ｘ＝Ｘmin−α２、Ｙ＝Ｙmax＋α３、Ｙ＝Ｙmin−α４、Ｚ＝Ｚmax＋α５、Ｚ＝Ｚmin−α６なる各方程式で表される６つの平面（α１〜α６は、任意の定数）をもった直方体を定義し、当該直方体の内面に所定の反射率を定義すれば、これを包囲体データとして利用することが可能である。このようなアルゴリズムで包囲体を設定するようにしておけば、オペレータの指示なしに、コンピュータが物体６０の三次元形状データに基づいて、包囲体７０の包囲体データを自動的に作成することができる。
【０１３７】
なお、§３で述べたとおり、包囲体は、視点配置可能領域が物体外部に設定された場合に必要なものであり、視点配置可能領域が物体内部に設定された場合には、包囲体を設定する必要はない。したがって、必ず物体内部に視点配置可能領域を設定するという前提であれば、包囲体データ設定手段１３０は省略することが可能である。
【０１３８】
輝度演算手段１４０は、所定位置に光源を設定し、この光源から発せられた照明光のエネルギーが、物体および包囲体（設定されている場合）の各部で繰り返し反射することを考慮した照明シミュレーションを実施し、物体各部の輝度を演算する機能を果たす構成要素である。ここで、光源は、視点配置可能領域設定手段１２０によって設定された視点配置可能領域内に設定する必要がある。したがって、視点配置可能領域が、物体内部に設定されていた場合には、光源も物体内部に設定すればよい。逆に、視点配置可能領域が、物体外部に設定されていた場合には、光源も物体外部に設定すればよい。ただ、包囲体が設定されている場合は、光源を包囲体の内部に設定する必要がある。
【０１３９】
このような光源位置の設定は、オペレータの指示入力に基づいて行うようにしてもよいし、輝度演算手段１４０による自動設定が行われるようにしてもかまわない。たとえば、視点配置可能領域設定手段１２０に、上述したように、オペレータが入力した指示点に基づいて視点配置可能領域を設定する機能をもたせておいた場合は、この指示点に光源を設定するようにすればよい。具体的には、図８に示すような点Ｌが、視点配置可能領域を指示する点として視点配置可能領域設定手段１２０に入力されたのであれば、この点Ｌに光源を配置すればよいし、図１２に示すような点Ｌが、視点配置可能領域を指示する点として視点配置可能領域設定手段１２０に入力されたのであれば、この点Ｌに光源を配置すればよい。いずれの場合も、光源は、必ず視点配置可能領域内の点ということになる。
【０１４０】
もちろん、輝度演算手段１４０に、オペレータからの指示入力なしに、自動的に光源設定を行う機能をもたせておくことも可能である。この場合は、視点配置可能領域設定手段１２０内に設定された視点配置可能領域を所定のアルゴリズムで解析し、この視点配置可能領域内の１点に、光源を自動設定すればよい。光源は、必ずしも空間上の点である必要はなく、物体表面上の１点であってもかまわない。したがって、視点配置可能領域が、物体の外側に設定されている場合には、物体の外部表面上の任意の１点を自動的に光源として設定することができる。同様に、視点配置可能領域が、物体の内側に設定されている場合には、物体の内部表面上の任意の１点を自動的に光源として設定することができる。
【０１４１】
こうして、光源の設定が完了すると、輝度演算手段１４０は、この光源から発せられた照明光を用いて、大域照明モデルに基づく照明シミュレーションを実施し、物体各部の輝度を演算する。このような大域照明モデルを用いた照明シミュレーションによる具体的な輝度計算方法は、既に§４で述べたとおりである。
【０１４２】
すなわち、一般的なラジオシティ法を利用して輝度を求めるのであれば、光源を１つの単位面として取り扱い、第ｊ番目の単位面から放出された全エネルギーＢｊのうち、第ｉ番目の単位面に到達するエネルギーの占める割合を示すフォームファクタＦｉｊを、「第ｉ番目の単位面から第ｊ番目の単位面へのフォームファクタ」として、全ｎ個の単位面のすべての組み合わせについて予め計算する処理を実行し、第ｉ番目の単位面から放出されるエネルギーＢｉを、当該第ｉ番目の単位面自身から生成され放出される成分Ｅｉ、当該第ｉ番目の単位面の反射率ρｉ、第ｊ番目の単位面から放出される全エネルギーＢｊを用いて、
Ｂｉ＝Ｅｉ＋ρｉ・Σｊ＝１〜ｎＦｉｊ・Ｂｊ
なる式で求めるようにし、光源から発せられた照明光のエネルギーが各単位面で繰り返し反射される現象のシミュレーションを、フォームファクタおよび上記式を用いて実行することにより、物体各部に位置する単位面についての輝度が求められる。
【０１４３】
特に、図２１の流れ図に示す手法を用いるのであれば、全単位面について、第１の値（たとえば、「０」）を初期値としてもつ判定フラグを設定し、光源を構成する単位面の判定フラグを第２の値（たとえば、「１」）に変える処理を実行し、更に、判定フラグが第１の値から第２の値に変化したばかりの単位面を着目単位面として抽出し、この着目単位面へのフォームファクタが０でなく、かつ、自分自身の判定フラグが第１の値である単位面についての判定フラグを第２の値に変える作業を、着目単位面が抽出されなくなるまで繰り返し実行し、最後に、それぞれの単位面の判定フラグの値を当該単位面の輝度として与えるようにすればよい。この手法によれば、輝度は、０か、０でないか、の二値情報として与えられることになる。
【０１４４】
データ削除手段１５０は、処理前データのうち、輝度演算手段１４０により求められた輝度が０になる部分に関するデータを削除し、残りのデータを、視点配置可能領域を示すデータとともに、処理後データＤafterとして出力する構成要素である。ポリゴンを複数に分割して単位面を構成したり、パラメトリック曲面を複数に分割して単位面を構成したりした場合には、前述したように、構成要素となるすべての単位面の輝度が０となったポリゴンやパラメトリック曲面を削除対象とすればよい。
【０１４５】
以上、図２４のブロック図を参照しながら、本発明に係る物体の三次元形状データの削減装置の基本構成を説明したが、この削減装置は、実際にはコンピュータに専用のプログラムを組み込むことにより実現される装置であり、この装置を構成する各手段は、コンピュータのハードウエアとソフトウエアとの組み合わせにより構築されることになる。
【０１４６】
この削減装置を利用すれば、オペレータが、処理対象となる物体の三次元形状データを処理前データＤbeforeとしてこの装置に入力し、視点配置可能領域設定手段１２０に対して、視点配置可能領域を設定するための指示入力を行えば、処理後データＤafterが自動的に生成されることになる。処理後データＤafterには、データ削減後の物体の三次元形状データとともに、視点配置可能領域を示すデータが含まれているので、この処理後データＤafterを利用する利用者は、どの領域に視点を配置して利用すればよいかを認識することが可能である。
【０１４７】
この削減装置は、特に、ＣＡＤを用いて設計された物体に関する三次元形状データについて、データの削減を行う場合に有用である。オペレータは、当該物体の設計に用いたＣＡＤデータを用意し、このＣＡＤデータを処理前データＤbeforeとして与えることにより、処理後データＤafterを得ることができるようになる。
【０１４８】
たとえば、ＣＡＤを用いて設計された時計について、カタログに収録するための画像を用意する必要があった場合を考えよう。このような場合、従来は、実物の時計を所定角度から撮影し、得られた撮影画像をカタログに掲載するのが一般的であった。本発明に係るデータ削減装置を利用すれば、まず、当該時計の設計に用いたＣＡＤデータをそのまま流用し、これを処理前データＤbeforeとして入力し、「物体の外側」を視点配置可能領域として設定すればよい。これにより、当該時計を外側から観察したときにのみ必要なデータと、当該データを利用する場合には物体の外側に視点を配置するという条件が必要であることを示すデータ（視点配置可能領域を示すデータ）と、を含む処理後データＤafterが自動作成されることになる。この処理後データＤafterを、カタログ作成者に提供すれば、カタログ作成者は、当該データに基づいて、所定のレンダリング処理を行い、カタログに掲載するための二次元画像を作成することができる。もちろん、このレンダリング処理時には、視点配置可能領域内に視点を配置することになる。
【０１４９】
本発明におけるデータ削減は、視点配置条件を制限する、という根本原理に基づくものであるから、削減後のデータを利用する際には、当該視点配置条件の下で利用することが前提となる。処理後データＤafter内に、視点配置可能領域を示すデータを含ませておくことにより、利用者に対して、この視点配置条件を明確に示すことが可能になる。
【０１５０】
もちろん、上述の時計の例のように、物体の外側あるいは内側という単純概念で視点配置条件を示すことができる場合には、視点配置可能領域を示すデータを、処理後データＤafter内に入れることを省いてもかまわない。しかしながら、非常に複雑な三次元形状データの場合には、視点配置可能領域を示すデータを、処理後データＤafter内に入れるようにするのが好ましい。たとえば、地下牢を探検するようなゲームの場合、地下の各部屋の構造を示すために多数の光学的な閉領域をもった三次元形状データが利用される。このような場合、処理後データＤafter内に視点配置可能領域を示すデータを含ませておくことは極めて重要になる。
【０１５１】
＜＜＜  §６．種々の変形例  ＞＞＞
最後に、本発明のいくつかの変形例を述べておく。
【０１５２】
(1) 削除判定にしきい値を設定する変形例
これまで述べてきた実施形態では、各単位面の輝度が０か、０でないかを判定し、輝度が０の単位面に関するデータを削除するという処理を行っていた。これは、輝度が０でない単位面には、設定した光源からの光がわずかであっても到達しているのであるから、当該単位面は、視点に対して何らかの影響を与えることになる、という論理に基づくものである。しかしながら、視点に対する影響が極めて小さな単位面については、削除しても重大な影響が生じることがないのも事実である。
【０１５３】
たとえば、表面に虫食い穴が形成されているリンゴがあったとする。この虫食い穴は、非常に径が小さく深いものであったとすると、この虫食い穴の壁面からの反射光が、リンゴ全体の見え方に与える影響は極めて小さいと言える。したがって、論理的には、この虫食い穴の壁面は、リンゴ表面に連なる面（リンゴの外部表面）であったとしても、実用上は、削除してしまっても重大な支障は生じない。実際、リンゴの外側に光源を設定した大域照明モデルによるシミュレーションを行って輝度を計算すると、虫食い穴の壁面を形成する単位面の輝度は、リンゴ表面を形成する単位面の輝度よりも極めて小さくなるであろう。
【０１５４】
そこで、データを削除するか否かの判定基準を、０ではなく、所定のしきい値に設定し、輝度演算により求められた輝度が、所定のしきい値以下となる部分に関するデータを削除する、というような運用を行えば、上述の例のような虫食い穴の壁面についても、データ削除の対象とすることが可能になる。これまで述べてきた実施形態は、データを削除するか否かの判定に用いる輝度のしきい値を０に設定し、輝度が０となる部分に関するデータを削除する運用と言うことができる。
【０１５５】
(2) 視点配置可能領域を固定する取り扱い
前述した実施形態では、視点配置可能領域の設定処理が必須となっていたが、「視点配置可能領域を常に物体の外部の領域とする」という運用や、「視点配置可能領域を常に物体の内部の領域とする」という運用を行い、視点配置可能領域を固定する取り扱いを行うのであれば、視点配置可能領域の設定処理は必ずしも必要ではない。たとえば、前述したように、ＣＡＤを用いて設計された時計について、カタログに収録するための二次元画像を作成するという用途のみを考えた場合、処理後データＤafterの利用形態は、視点を時計外部に設定したレンダリングを行う形態に限定されるであろう。このような利用形態を前提とする場合であれば、「視点配置可能領域は常に物体の外部」ということになるので、図１１に示す流れ図におけるステップＳ２の視点配置可能領域の設定処理は不要になり、図２４に示す装置における視点配置可能領域設定手段１２０も不要になる。また、図１１に示す流れ図のステップＳ７や、図２４に示す装置におけるデータ削除手段１５０では、処理後データに、視点配置可能領域を示すデータを添付する必要はなくなる。
【０１５６】
本発明の原理上、各単位面についての輝度演算を行う際の光源位置は、必ず視点配置可能領域内にする必要があるが、「視点配置可能領域は常に物体の外部」という前提であれば、光源位置も常に物体の外部に設定すればよいことになる。逆に、「視点配置可能領域は常に物体の内部」という前提であれば、光源位置も常に物体の内部に設定すればよいことになる。
【０１５７】
この場合、利用者に提供される処理後データＤafterには、視点配置可能領域を示すデータが含まれていないことになるが、利用者に対して処理後データＤafterを提供する際には、「視点配置可能領域は常に物体の外部」もしくは「視点配置可能領域は常に物体の内部」という前提でデータの提供を行うようにし、利用者が、この前提を認識してデータを利用するのであれば、重大な支障は生じない。
【０１５８】
(3) 他の大域照明モデルを用いた輝度演算
上述の実施形態では、大域照明モデルを用いた輝度演算として、最も一般的なラジオシティ法に準じた方法を述べたが、本発明における照明シミュレーションは、大域照明モデルを前提としたシミュレーションであれば、必ずしもラジオシティ法に準じた方法を用いる必要はない。たとえば、大域照明モデルを用いた別なシミュレーションの手法として、拡散反射成分だけでなく鏡面反射成分も考慮した取り扱いを行うフォトンマッピング法なども知られているが、本発明を実施する上では、もちろん、このフォトンマッピング法を用いて輝度計算を行ってもかまわない。
【図面の簡単な説明】
【０１５９】
【図１】本発明の基本原理を示す、複数の物体が配置された三次元仮想空間の側面図（一部分は側断面図）である。
【図２】図１に示す三次元仮想空間上に配置された各物体に対するレンダリング処理の概念を示す側面図（一部分は側断面図）である。
【図３】図１に示す三次元仮想空間において、光源Ｌからの光が複数回反射して視点Ｅ１へ到達するプロセスを示す側面図（一部分は側断面図）である。
【図４】図１に示す三次元仮想空間内に設定された複数とおりの視点位置を示す側面図（一部分は側断面図）である。
【図５】図１に示す三次元仮想空間において、視点Ｅ１からの観察に影響を与えない部分を示す側面図（一部分は側断面図）である。
【図６】図１に示す三次元仮想空間について設定された視点配置可能領域の一例を示す側面図（一部分は側断面図）である。
【図７】単純な物体６０のみを配置した三次元仮想空間モデルについての視点配置可能領域の設定例を示す側断面図である。
【図８】図７に示す三次元仮想空間モデルに包囲体２０を設定した状態を示す側断面図である。
【図９】図８に示すモデルにおける光の反射プロセスの一例を示す側断面図である。
【図１０】図８に示すモデルにおいて、不要なデータを削除した後に残る残存部６５を示す側断面図である。
【図１１】本発明に係る三次元形状データの削減方法の基本手順を示す流れ図である。
【図１２】単純な物体１０のみを配置した三次元仮想空間モデルについて、物体内部に視点配置可能領域を設定した例を示す側断面図である。
【図１３】図１２に示すモデルにおいて、不要なデータを削除した後に残る残存部６６を示す側断面図である。
【図１４】内部に複数の空洞部８１，８２を有する物体８０を示す側断面図である。
【図１５】図１に示す三次元仮想空間上における光学的閉領域を示す側面図（一部分は側断面図）である。
【図１６】図１に示す三次元仮想空間上に配置された各物体の位相幾何学的な構造を示す構造断面図である。
【図１７】図１６に示す構造断面図において、光学的閉領域ＳＰ１を視点配置可能領域とした場合の処理後データに対応する部分を示す図である。
【図１８】図１６に示す構造断面図において、光学的閉領域ＳＰ２〜ＳＰ５を視点配置可能領域とした場合の処理後データに対応する部分を示す図である。
【図１９】ポリゴンの集合体として表現された物体の三次元形状データの概念図である。
【図２０】パラメトリック曲面の集合体として表現された物体の三次元形状データの概念図である。
【図２１】図１１のステップＳ５の具体的な処理手順を示す流れ図である。
【図２２】図２１の処理手順の具体的なプロセスを示す平面図である。
【図２３】図２２に示す具体的なプロセスにおける判定フラグの変遷を示す表である。
【図２４】本発明に係る三次元形状データの削減装置の基本構成を示すブロック図である。
【符号の説明】
【０１６０】
１０…テーブル
２０…花瓶
３０…花
４０…戸棚下部
４１…瓶
４２…缶詰
５０…戸棚上部
５１…瓶
５２…缶詰
６０…物体
６５，６６…残存部
７０…包囲体
８０…物体
８１，８２…空洞部
１１０…処理前データ格納手段
１２０…視点配置可能領域設定手段
１３０…包囲体データ作成手段
１４０…輝度演算手段
１５０…データ削除手段
Ｃ１〜Ｃ３…パラメトリック曲面
Ｄbefore…処理前データ
Ｄafter…処理後データ
Ｅ１〜Ｅ６…視点
Ｇ…ガラス戸
Ｌ，Ｌ１，Ｌ２…光源
Ｐ１〜Ｐ３３…単位面
Ｒ…部屋（包囲体）
Ｓ１〜Ｓ１７…流れ図の各ステップ
ＳＰ１〜ＳＰ５…光学的閉領域
ｔ０〜ｔ６…輝度演算処理の各時点
【図１】
0004779479.tif 000002
【図２】
0004779479.tif 000003
【図３】
0004779479.tif 000004
【図４】
0004779479.tif 000005
【図５】
0004779479.tif 000006
【図６】
0004779479.tif 000007
【図７】
0004779479.tif 000008
【図８】
0004779479.tif 000009
【図９】
0004779479.tif 000010
【図１０】
0004779479.tif 000011
【図１１】
0004779479.tif 000012
【図１２】
0004779479.tif 000013
【図１３】
0004779479.tif 000014
【図１４】
0004779479.tif 000015
【図１５】
0004779479.tif 000016
【図１６】
0004779479.tif 000017
【図１７】
0004779479.tif 000018
【図１８】
0004779479.tif 000019
【図１９】
0004779479.tif 000020
【図２０】
0004779479.tif 000021
【図２１】
0004779479.tif 000022
【図２２】
0004779479.tif 000023
【図２３】
0004779479.tif 000024
【図２４】
0004779479.tif 000025