(57)【特許請求の範囲】
【請求項１】
形状データを所望の詳細度に近似化する形状データの近似化方法であって、
形状データの所望の部分に対して近似化の詳細度に関する情報を使用者が指定してコンピュータが入力処理する工程であって、近似化の詳細度に関する情報として重要度情報を用いる指定工程と、
コンピュータが、形状データを構成する各部の面、あるいはエッジ、あるいは頂点についての、形状データを表現するための重要度を示す評価値を求め、この評価値と、上記形状データの上記指定された部分については上記指定に基づき与えられる上記重要度情報とを用いて、階層的に形状データの近似化を施す近似化工程とを有し、
上記指定工程では、近似化の詳細度に関する情報として、上記形状データ評価値に乗ずる重み係数を用い、重みの大小によって重要度を部分的に調整すること
を特徴とする形状データの近似化方法。
【請求項２】
形状データを所望の詳細度に近似化する形状データの近似化方法であって、
形状データの所望の部分に対して近似化の詳細度に関する情報を使用者が指定してコンピュータが入力処理する工程であって、近似化の詳細度に関する情報として重要度情報を用いる指定工程と、
コンピュータが、形状データを構成する各部の面、あるいはエッジ、あるいは頂点についての、形状データを表現するための重要度を示す評価値を求め、この評価値と、上記形状データの上記指定された部分については上記指定に基づき与えられる上記重要度情報とを用いて、階層的に形状データの近似化を施す近似化工程とを有し、
上記指定工程では、近似化の詳細度に関する情報として、上記評価値を、その重要度の順に並べたとき、その重要度の序列中の位置を示す情報を用い、
上記近似化工程では、使用者が指定した形状部分に関しては、評価値を上記序列中の位置に相当する評価値に置換してから近似を行うことによって、重要度を部分的に調整すること
を特徴とする形状データの近似化方法。
【請求項３】
形状データを所望の詳細度に近似化する形状データの近似化方法であって、
形状データの所望の部分に対して近似化の詳細度に関する情報を使用者が指定してコンピュータが入力処理する指定工程と、
コンピュータが、上記形状データの上記指定された部分については上記指定された詳細度に関する情報を用いて、階層的に形状データの近似化を施す近似化工程とを有し、
上記近似化工程では、近似化対象となった形状データに対して使用者がその対称性を面、線、あるいは点のような指標で指定し、コンピュータが、その指標を元に、形状データの対称性を保存するように形状の近似化を行うこと
を特徴とする形状データの近似化方法。
【請求項４】
形状データを所望の詳細度に近似化する描画装置であって、
近似化時に形状データのどのエッジを除去するかを決定するエッジ除去決定部と、
形状データの所望の部分に対して近似化の詳細度に関する情報を指定する手段であって、近似化の詳細度に関する情報として重要度情報を用いる指定手段と、
形状データを構成する各部の面、あるいはエッジ、あるいは頂点についての、形状データを表現するための重要度を示す評価値を求め、この評価値と、上記形状データの上記指定された部分については上記指定に基づき与えられる上記重要度情報とを用いて、階層的に形状データの近似化を施す形状近似化制御手段とを有し、
上記指定手段は、近似化の詳細度に関する情報として、上記形状データ評価値に乗ずる重み係数を用い、重みの大小によって重要度を部分的に調整すること
を特徴とする描画装置。
【請求項５】
形状データを所望の詳細度に近似化する描画装置であって、
近似化時に形状データのどのエッジを除去するかを決定するエッジ除去決定部と、
形状データの所望の部分に対して近似化の詳細度に関する情報を指定する手段であって、近似化の詳細度に関する情報として重要度情報を用いる指定手段と、
形状データを構成する各部の面、あるいはエッジ、あるいは頂点についての、形状データを表現するための重要度を示す評価値を求め、この評価値と、上記形状データの上記指定された部分については上記指定に基づき与えられる上記重要度情報とを用いて、階層的に形状データの近似化を施す形状近似化制御手段とを有し、
上記指定手段は、近似化の詳細度に関する情報として、上記評価値を、その重要度の順に並べたとき、その重要度の序列中の位置を示す情報を用い、
上記形状近似化制御手段は、使用者が指定した形状部分に関しては、評価値を上記序列中の位置に相当する評価値に置換してから近似を行うことによって、重要度を部分的に調整すること
を特徴とする描画装置。
【請求項６】
形状データを所望の詳細度に近似化する描画装置であって、
近似化時に形状データのどのエッジを除去するかを決定するエッジ除去決定部と、
形状データの所望の部分に対して近似化の詳細度に関する情報を指定する指定手段と、
上記形状データの上記指定された部分については上記指定された詳細度に関する情報を用いて、階層的に形状データの近似化を施す形状近似化制御手段とを有し、
上記形状近似化制御手段は、近似化対象となった形状データに対して使用者がその対称性を面、線、あるいは点のような指標で指定し、その指標を元に、形状データの対称性を保存するように形状の近似化を行うこと
を特徴とする描画装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＣＧ（コンピュータグラフィックス:Computer Graphics）において使用される形状モデルを、その大局的な形状を保ったまま近似化することでデータ量を削減するための形状データの近似化方法及び描画装置に関する。
【０００２】
【従来の技術】
いわゆるＣＧ（コンピュータグラフィックス:Computer Graphics）の描画の際には、モデルの位置、大きさ、奥行、視聴者の注目点、モデルの移動速度に関係なく、常に同じモデルを使って描画するのが一般的である。この形状モデルはポリゴンモデルと称され、複数の面から構成されている。
【０００３】
しかし描画には常に同じモデルを必要とするわけではなく、画面内でのモデルの位置、大きさ、奥行、視聴者の注目点、モデルの移動速度によって、モデルを切り替え、オリジナルの詳細なモデルだけではなく、より簡略化されたモデルを使用して描画することで、十分な画像品質を得ることができる。
【０００４】
すなわち、前もって詳細度の異なるモデルを準備し、描画時に切り替えることで見かけ上は同じモデルを使っているのと変わらない品質を得ることができる。しかもＣＧの描画時間はデータ量に依存するため、オリジナルモデルに比べてデータ量の少ないモデルを使うことで高速に描画できる。このような描画を行うことで、ＣＧの描画に求められている高速描画と高品質描画の２つの要求を同時に満たすことが可能となる。
【０００５】
このように詳細度の異なるモデルを作成する技術は、ＣＧモデルの表示には有用なものであるが、モデルの詳細度を落とす際に、そのデータ量を単純に削減するだけでは視聴者が近似化モデルを見た際に違和感を感じてしまう。この見た目の違和感を抑えるためには、モデルの持つ大局的な特徴部分を残し、それ以外の部分を削減しながらデータ量を減らすことが望ましい。このようなモデルの近似化はこれまではデザイナーの手作業によって行われており、多くの手間と時間が必要とされていた。
【０００６】
【発明が解決しようとする課題】
ところで、形状の近似化に関して、例えばGreg Turk による文献 "Re-Tiling Polygonal Surface" (Computer Graphics, Vol.26, No.2, July 1992) においては、ポリゴンモデル表面に点を配置し、この点を結んでモデルの再構築を行い、モデルを階層的に近似する試行を行っている。しかしながら、この文献のアルゴリズムは、丸みを帯びた形状には適用できるが、角張った形状には適さない問題点があり、一般的な形状を対象としていない。またモデルを部分的に近似化したりすることは、言及していない。また、Francis J.M.Schmitt, Brian A.Barsky, Wen-Hui Du による "An Adaptive Subdivision Method for Surface-Fitting from Sampled Data" (Computer Graphics Vol.20, No.4, August 1986) では、３次元の形状に対してベジエパッチを張り付けて形状の近似を行っている。しかしこの文献では、ＣＧに使われている一般的なポリゴンを対象としていない。さらに、Hugues Hoppeらによる文献 "Mesh Optimization" (Computer Graphics Proceedings, Annual Conference Series, SIGGRAPH 1993) においては、近似化モデルの評価にエネルギーを導入し、このエネルギーを最小とするようにエッジの除去、パッチの分割、エッジのスワップを繰り返してモデルを近似化している。しかし、この文献の手法では、エネルギーの最小点を見いだすまでに長い反復計算を必要とするばかりでなく、局所的な最小点に陥らないために他のエネルギー最小問題と同様にsimulated annealing などの解決手法を必要とする。またエネルギー最小点が必ずしも視覚的に最良となる保証もない。また、ここでもモデルのある部分を優先、あるいは非優先的に近似化する処理や、近似化対象となったモデルとその近似化結果の因果関係をあきらかにする処理については、言及していない。以上のように、過去における研究ではモデル近似化に対して問題を含んでいた。
【０００７】
すなわち、従来は形状近似化時の部分的な詳細度を使用者の指定に応じて制御する手法が取られていなかった。また、近似化対象となった形状モデルと、その近似化結果との因果関係がはっきりと示されていなかった。また、近似化対象となった形状モデルに画像データが張り付けられていた場合、近似化によって画像データの張り付け方が変わることを確認する手段がなかった。
【０００８】
本発明は、このような実情に鑑みてなされたものであり、ＣＧに使用される形状モデルの近似化の際に、使用者側で所望の部分を指定して詳細度を変更することが容易に行えるような形状データの近似化方法及び描画装置を提供することを目的とする。
【０００９】
【課題を解決するための手段】
本発明は、上述した課題を解決するために、形状データの所望の部分に対して近似化の詳細度に関する情報を指定し、形状データの指定された部分については指定された詳細度に関する情報を用いて、階層的に形状データの近似化を施すことを特徴としている。
【００１０】
すなわち本発明は、形状データを所望の詳細度に近似化する際に、形状データの所望の部分に対して近似化の詳細度に関する情報を指定すると共に近似化の詳細度に関する情報として重要度情報を用い、形状データを構成する各部の面、あるいはエッジ、あるいは頂点についての、形状データを表現するための重要度を示す評価値を求め、この評価値と、上記形状データの上記指定された部分については上記指定に基づき与えられる上記重要度情報とを用いて、階層的に形状データの近似化を施し、上記指定の際の近似化の詳細度に関する情報として、上記形状データ評価値に乗ずる重み係数を用い、重みの大小によって重要度を部分的に調整することを特徴としている。
【００１１】
また、本発明は、形状データを所望の詳細度に近似化する際に、形状データの所望の部分に対して近似化の詳細度に関する情報を指定すると共に近似化の詳細度に関する情報として重要度情報を用い、形状データを構成する各部の面、あるいはエッジ、あるいは頂点についての、形状データを表現するための重要度を示す評価値を求め、この評価値と、上記形状データの上記指定された部分については上記指定に基づき与えられる上記重要度情報とを用いて、階層的に形状データの近似化を施し、上記指定の際の近似化の詳細度に関する情報として、上記評価値を、その重要度の順に並べたとき、その重要度の序列中の位置を示す情報を用い、上記使用者が指定した形状部分に関しては、評価値を上記序列中の位置に相当する評価値に置換してから近似を行うことによって、重要度を部分的に調整することを特徴とする。
【００１２】
さらに、本発明は、形状データを所望の詳細度に近似化する際に、形状データの所望の部分に対して近似化の詳細度に関する情報を指定し、上記形状データの上記指定された部分については上記指定された詳細度に関する情報を用いて、階層的に形状データの近似化を施ようにし、近似化対象となった形状データに対して使用者がその対称性を面、線、あるいは点のような指標で指定し、その指標を元に、形状データの対称性を保存するように形状の近似化を行うことを特徴とする。
【００１３】
本発明によれば、形状データを近似化して、所望の詳細度を持ったモデルを得る際に、形状データの所望の領域を使用者からの指定に応じて形状近似化制御部で優先的、あるいは非優先的に近似化の制御を行う。また、形状データの近似化による、オリジナルモデルと、近似化モデルの因果関係を、近似化結果管理部において木構造によって管理する。また、形状データに画像データが張り付けられている場合には、近似化によって、オリジナルモデルに張られていた画像データがどのように変化したかを、画像データ確認部で確認する。これらの手順によって、形状データから所望の詳細度を持った形状モデルを作成することができる。
【００１４】
【発明の実施の形態】
以下、本発明に係る法線ベクトル付き形状データの近似化方法及び装置の実施の形態について、図面を参照しながら説明する。
【００１５】
図１は、本発明の実施の形態におけるポリゴンモデルの階層的近似化のフローチャートを示している。ポリゴンの近似化を行うためには、ポリゴンを構成するエッジの除去を行い、その形状を近似化する。この近似化処理全体の概要を、図１のステップST１〜ST１１の手順に従って説明する。
【００１６】
図１において、先ずステップST１では、オリジナルのポリゴンデータの入力を行う。ステップST２では、ポリゴンモデルの部分的な詳細度（解像度、精細度）を使用者が指定する。ステップST３では、どの程度までモデルを近似化するかを指定する。ステップST４では、エッジ除去を行うために各エッジを評価する。ステップST５では、評価値をその大きさでソートする。ステップST６では、使用者による部分的近似度指定に応じて、評価値の制御を行う。ステップST７では、評価値最小のエッジを選択し、除去する。ステップST８では、近似化が所望の近似度まで到達したかを判定する。ステップST９では、エッジを除去した後に残る頂点の位置を決定する。ステップST１０では、モデルに画像データが張り付いている場合には、近似化結果に基づいて、使用者からの指定があれば、近似化モデルでの画像データの張り付け方を表示、あるいは保存する。ステップST１１では、近似化したモデルを複数の階層から選択して描画したり、保存といった処理を行う。上記、ステップST４からステップST９の処理は所望の近似度に合わせて繰り返し実行する。
【００１７】
次に、上述した各処理の内、本発明の実施の形態の要部となるステップST２、ステップST３、ステップST６、ステップST９、及びステップST１０の処理について、詳細に説明する。
【００１８】
先ずステップST１で、近似化対象となるポリゴンデータの入力を行った後、ステップST２で、モデルを全体的に均一な近似化するだけでなく、部分的に詳細にしたり、あるいは粗くしたりといった部分的な詳細度の指定を行う。
【００１９】
すなわちステップST２では、モデルを全体的に均一に近似化するだけでなく、モデルの任意の部分は、近似を積極的に行って他の部分よりもモデルを粗くしたり、あるいは逆に近似をあまり行わずに詳細なままで残すと言った部分的な詳細度の違いを、使用者が指定する入力の処理を行う。
【００２０】
形状モデルを近似化する際には、モデルを構成する各エッジの評価値を算出し、この評価値の大小によってエッジの重要度を計り、最も評価値の小さなエッジから除去することによって、モデルの近似化を実行する。ここで単純にモデル全体の各エッジ評価値を計算して近似化を行うと、モデル全体にわたっての近似化になる。例えば大小の三角形から構成されているポリゴンモデルの場合なら、その近似化結果は全体的に均一な面積の面から構成されるようになる。しかしモデルの近似化を行う使用者は、ある部分だけを詳細なままで残したり、あるいは逆に、ある部分だけを粗く近似化したいという要求を持っている。このように、モデル内の任意の部分を細かく、あるいは粗く近似化するようにユーザが部分的な詳細度を指定する処理がステップST２である。
【００２１】
図２に、この指定方法の例を示す。例えば、使用者が、図２の（ａ）のように、モデルの左側の円で示される領域は、詳細に残しながら近似化し、右側の円で示される領域は、粗く近似化をしたい要求を持っているとする。そのためには、使用者自身がモデルの希望する領域を、希望する詳細度で近似化するように指定する。この指定方法は、画面に表示されたモデルに対して、図２の（ｂ）、図２の（ｃ）で示されるように、矢印や＋印といった、面や辺、頂点を指定できる表示を使って任意の領域の指定を行う。また、必ずしも画面からのみならず、面や辺、頂点の番号を入力するなど、モデルを構成する要素が指定する手法もある。また、直接部分を示すのではなく、画面に表示した枠内部に入る部位を含む領域全てを指定する方法もある。
【００２２】
さらに詳細度を指定するために、例えば図３に示すように「Importance」（インポータンス）として表示されている領域４１内の各選択ボタンの「＋２」から「−２」までの範囲内で希望する詳細度を選ぶ。ここでは最も詳細に残したい部分を「＋２」とし、「＋１」はやや詳細に残したい部分、「０」は、特に詳細度を指定せず、逆に「−２」は詳細度を最も粗く残し、「−１」は、やや粗く残したい部分としている。ここでは「＋２」から「−２」までの幅に設定した例を示しているが、この幅はさらに大きくする場合や小さくする場合もある。また、この「＋２」から「−２」までの数はガイドであり、何も詳細度を指定しない場合に比べて、どれぐらい詳細度を部分的に重み付けるかを表す数として使っている。したがって実際にこの数をモデルに対して付加もできるが、単なる指標として使うこともできる。詳細度の指定としては、「詳細に」、あるいは「粗く」と言った指定以外に、その部分をオリジナルのモデルそのままにして一切近似化を行わない指定もできる。
【００２３】
また、図２のように領域を指定する場合に、使用者が指定する場所のみならず、その周辺の領域まで同時に指定できると、それぞれの領域について逐一近似度を指定する必要が無くなり、使用者の手間を省くことができる。この広げる数は、例えば図３の下部に示す「Brush Size」（ブラシサイズ）の表示領域４２の各選択ボタン「１」〜「３」により選択するようにすればよい。したがって領域を指定する場合に、この「Brush Size」を選択すれば、ある領域を指定しても、その部分のみならず、さらに広い範囲を指定したことと同じことになる。例えば図３に示す「Brush Size」が「１」の場合に比べると、「２」はより広い領域を示し、「３」は「２」に比べさらに広い領域となる。ここでもこの「１」から「３」の数値は、指標として使われ、各数値での指定範囲を比較した場合の広がり具合いを判りやすく示す数である。
【００２４】
このような領域の広さを指定する場合の具体例を示すと、図４の（ａ）のように＋で示した面を指定した場合、図４の（ｂ）では指定した面のみの領域であり、図４の（ｃ）では図４の（ｂ）の面を構成する頂点を含む周辺の面までの領域である。このように１つの面を指定しても、そのまわりまで含めて指定したことにすれば、広い領域を指定したい場合にも何度も指定する必要がない。図３では「１」から「３」までの３つのサイズを示しているが、もっと小さなサイズや、あるいはさらに大きなサイズにすることができる。また「１」から「３」までのような整数のみならず、小数点の数やａ、ｂのようにアルファベットを使ったりすることも可能であり、サイズの違いが認識されるものであれば良い。
【００２５】
また、上記図２の（ｂ）、（ｃ）や、図３と共に説明した指定は、一旦使用者によって指定が行われても取り消すことができるようにすることが好ましく、例えば、いわゆる「Undo」（アンドゥ）の指定ボタン（図示せず）を設定することにより、詳細度の指定や広さの指定の解除が容易になる。さらに上書きを許せば、簡単に訂正をすることもできる。さらに全ての指定を解除するようにできれば、最初にオリジナルのモデルを読み込んだ上記ステップST１の処理直後の状態に戻すことができる。
【００２６】
なお、部分的な詳細度の指定を行った場合、その指定が有効になったことを示すため、指定された領域の色や輝度を変えれば良い。この場合、例えば「＋２」の指定部分は赤、「＋１」は橙色、「−２」は青色、「−１」は水色と言った具合にすれば各詳細度の判別が容易になる。またこの色の例のように、詳細に残る部分は暖色系、粗くする部分は寒色系とすれば、詳細度そのものはわからなくても、おおまかな指定は知ることができる。
【００２７】
ステップST３は、形状モデル全体をどのくらいの近似度まで近似化するかを使用者が指定する処理である。
【００２８】
図５に、この指定方法の例を示す。図５に示す内容を、近似化を実行する装置の画面に表示させる。ここでは、近似化割合領域４６と現在の頂点数領域４７と目標頂点数領域４８が表示されている。領域４６の近似化割合とは、近似化対象となった形状モデル（オリジナルモデル）に比べ、どのくらいまで近似化させるかを示す割合である。例えば、オリジナルモデルの頂点に対して、近似化モデルでは頂点数を何パーセントにするかという数である。ここでは頂点数の場合を記述したが、頂点数のみならず、辺（エッジ）の数、面の数、テクスチャの数、法線の数といった形状モデルを表現する数を対象として割合を示せばよい。領域４７の現在の頂点数は、近似化対象となっている形状モデルの頂点数である。領域４８の目標頂点数は、近似化結果のモデルでの頂点数をいくつにするかの数である。図５では近似化割合が６０％になっており、現在の頂点数が１６０であるため、目標頂点数は９６になっている。近似化対象となる形状モデルが決定されると、その頂点数はすぐに判明する。したがって近似化割合が既に決まっていれば、目標頂点数は決定済の近似化割合を適用することによって、自動的に決まることになる。こうすることで使用者は、改めて目標頂点数を計算して入力する手間を省くことができる。また、オリジナルに比べてどの程度の割合で近似化されているかを容易に知ることができる。
【００２９】
逆に使用者が目標頂点数を変更した場合には、その数に応じて近似化割合を計算して表示すれば、使用者は自分が変更した目標頂点数が、オリジナルに比べてどの程度の近似化割合になるのかを知ることができ、計算する必要がない。現在の頂点数以外の２つの項目（近似化割合と目標頂点数）は、使用者の希望により、いつでも変更できるように設定すれば、一旦近似化割合と目標頂点数が決定されても、使用者の希望に応じて変更することができる。ここでは、頂点数を一つの指標として説明したが、頂点数のみならず、形状モデルを表現する面数、エッジ数、テクスチャ数、法線数といった数を対象することもできる。また、近似化割合は使用者が毎回入力することなく、事前にある基準を決めて、その数を設定しておけば、入力する手間を省くことができる。また、この数をある数値に固定しておけば、近似化処理を繰り返した時に等比級数の形で近似化結果を得ることができる。すなわち、近似するごとに、もとのモデルに対して面数が一定になるモデルが次々に生成される。等比級数の和は一定値に収束する。例えば６０％ずつの近似の場合、近似を次々に繰り返した時、モデルの面数の総和は元のモデルの２５０％に収束する。
【００３０】
このように等比級数となるような近似を行うことで、近似モデル群のデータ量の総和は発散せず、一定値に収束することができるため、モデル群を記憶するメモリ量が少なくてすむ。
【００３１】
さらに、この近似化割合は、一時的に固定しておいても、使用者が希望すればいつでも変更できるようになっているので、任意の近似度への近似化も可能である。
【００３２】
次に、ステップST４でのエッジ評価について説明する。
前述のように、ポリゴンの近似は、例えばエッジ除去を繰り返すことで実行する。この除去に適したエッジを選択するには、モデルを構成するエッジがどれほどモデル形状に寄与しているかを評価する評価関数を導入する。この評価関数Ｆ(ｅ)の一例を、下記の式（１）に示す。
【００３３】
【数１】
0003785709.tif 000002
【００３４】
この式（１）中の各記号Ｅ，Ｎｉ，Ａｉ，v1〜v10 は、図６に示すようなポリゴンモデルのエッジｅを表すベクトルＥ，法線ベクトルＮｉ，面Ａｉ，頂点v1〜v10 に対応するものであり、この図６では、上記式（１）の説明を行うために図形データの一部を拡大している。
【００３５】
式（１）の評価関数Ｆ(ｅ)は、２頂点v1, v2から構成されるエッジｅを評価する。ここで、エッジｅ(v1, v2)を構成する２頂点v1, v2について、これらを頂点として含む面の集合をＳ(v1)、Ｓ(v2)と書けば、ｉの範囲はＳ(v1)∪Ｓ(v2)となる。またＥはエッジｅの向きと長さを持つベクトル、Ｎｉは各面の単位法線ベクトル、Ａｉは面の面積、｜Ｅ｜は、ベクトルＥの長さを示す。
【００３６】
式（１）の評価関数Ｆ(ｅ)は、２つの項からなり、第１項Ｖｉは、評価対象となるエッジを除去した場合に変化する体積量を表している。第２項Ｓｉは、対象エッジの両脇に存在する面と対象エッジの長さを乗算した値である。これは対象エッジだけを含んだ面の体積変化分を意味する。上記２つの項にはそれぞれａ、ｂの係数がかけられており、どちらの項を優先するかにしたがってユーザは係数の大小を選択することができる。第１項のＶｉは評価対象となるエッジの周辺形状に大きく依存する。一方第２項のＳｉは対象エッジの長さとその両脇に存在する面の面積に依存する。モデル形状が一枚の紙のようにフラットな物は、ＶｉよりもＳｉの変化量が大きい。また全ての面が同じような形状と面積の面で構成されているモデルでは、ＳｉよりもＶｉの項による変化量が大きくなる。
【００３７】
図形モデルを構成する各エッジについて式（１）の値を計算し、その計算値を大きさの順にソートして最も小さな評価値のエッジを選択すれば、そのエッジがエッジ除去時のモデル形状への寄与が最小のエッジとなる。このモデル形状の近似化処理がステップST４，ST５，ST７である。
【００３８】
図７にエッジ除去の例を示し、（ａ）がエッジ除去前、（ｂ）がエッジ除去後をそれぞれ示している。この例では２つの頂点v1とv2からなるエッジを除去している。エッジ除去に伴い、頂点v2も除去され、頂点v1は残っている。v1はエッジ除去以前の位置にそのまま残す手法もあるが、それよりもエッジ除去後の形状変化を最小にする位置に移動した方が近似化したモデルの品質を良くすることができる。
【００３９】
図７の例の場合には、頂点v1とv2の中間位置にv1を移動したほうが近似化モデルの品質が良くなる。このようにステップST５ではエッジ除去後の頂点位置の決定を行う。またこの頂点位置の決定では、除去対象となったエッジを構成している２頂点間のどのように配分して置くかという配分値（係数）を計算し、それを出力することができる。これを図８の（ａ）〜（ｃ）に示す。
【００４０】
図８では、２つの頂点v2とv3からなるエッジを（ａ）から（ｂ）のように除去している。エッジ除去後には、２つの頂点v2とv3は、v2に統合され、これを便宜上v2' としている。v2' の位置はv2とv3間で線形補間し、配分は（ｃ）に示すようにt:1-t の割合にして配置する。この配分比率ｔは、エッジ評価値の大きさに応じて配分する手法や、ｔを固定値の0.5 として、エッジ間の中間に置くといった手法や、0.5 以外の他の固定値にしてエッジ間であらかじめ決めた配分の位置に置く手法もある。
【００４１】
上述したように、上記式（１）の評価関数は、エッジを除去した場合の体積変化分と面積変化分の２項の合計を意味し、各変化分に係数ａ，ｂを乗算することにより、各項の重み付けを変化させることができる。すなわち、ステップST２で指定した部分的な詳細度は、この評価関数を異なる詳細度を指定された部分においては、重み付けをかえて計算したり、一旦、計算した後に値の操作をすることによって、部分的な詳細度を変えたモデルの近似化を実現する。
【００４２】
ステップST５では、ステップST４で計算した各エッジの評価値をソートする。ソート法は既にデータ処理の手法として広く知られているクイックソートや、ヒープソートなどを使用する。これらの手法は、一般に書籍などに掲載されているため、ここではその説明を省略する。
【００４３】
ステップST６では、ステップST２で使用者が詳細度を指定した場合に、部分的に詳細度を変えたモデル近似化を行うため、評価値の制御を行う。モデルの近似化はエッジ除去を繰り返すことで実行する。この場合、エッジ評価値が小さなエッジから優先的に削られていく。したがって詳細に残したい部分は、モデル全体の中で、エッジ評価値が大きな部類になれば、エッジ除去の対象とならずに、結果としてその部分が詳細に残る。逆に粗く残したい部分は、エッジ評価値がモデル全体の中で小さな部類にあれば、優先的にエッジが除去されることになり、結果としてその部分が粗くなる。この現象を利用すれば、モデル近似化における部分的な詳細度の制御を行うことができる。これを図９の例で説明する。
【００４４】
まず、ステップST４でモデルの全エッジで計算したエッジ評価値のヒストグラムを図９の（ａ）とする。これは横軸にエッジの評価値、縦軸に各評価値のエッジがいくつ存在するかを示す数を表している。例えば評価値をＥとして、Ｅが０≦Ｅ＜１の範囲になるエッジが９個あることになる。仮にあるエッジＥ0 の評価値が、0.5 であったとする。エッジＥ0 の評価値は、モデル全体にわたる評価値として小さな部類になるため、モデルの近似化のためにエッジ除去を繰り返すと、比較的に早い時期に除去される可能性が大きい。しかし、もしステップST２において、エッジＥ0 の部分を最も詳細に残したいと使用者が指定した場合、上記のようにエッジＥ0 の部分は除去せずに、できるだけその部分を残し、詳細に保つ必要がある。このためにはエッジＥ0 の評価値を大きくして、その評価値が、モデル全体のエッジ評価値の中で比べて大きな分類に入るようにすれば、エッジ除去が行われず、結果としてエッジＥ0 は除去されないことになる。例えば、図９の（ｂ）に示すようにエッジＥ0 を評価値が５から６の範囲内にすれば、その結果は図９の（ｃ）のように、そのエッジ評価値がモデル全体の中で最も大きな分類になる。同じように仮にエッジ評価値がモデル全体の評価値の中で非常に大きな値を持っていても、そのエッジ評価値に１より小さな係数を乗算することで値を小さくすれば、モデル近似化時には優先的に除去されていくことになる。このように形状モデルを構成するエッジの各評価値を計算した後、その分布を求め、その分布の操作を利用して、形状モデル形状の近似化で部分的な詳細度の変更を行うことができる。
【００４５】
図９の例ではエッジ評価値を６段階に分類し、その中で該当エッジの評価値に係数を乗算してエッジ評価値分布を操作したが、詳細度の指定の段階に合わせて、分類する数の増減すれば良い。また、図９の例ではエッジＥ0 の評価値を最小の分類から、最大の分類へ操作したが、該当エッジに乗算する係数の大きさを制御することによって、図１０に示すように、エッジの評価値の変更先は最大の分類のみならず、任意の分類に操作することができる。
【００４６】
以上、評価値のヒストグラムを使った制御を説明したが、これ以外にも評価値の序列を使う手法がある。
【００４７】
例えば、仮に１０個のエッジから構成されるモデルがあるとする。この各エッジの評価値を小さな順に並べると図１１の（ａ）のようになる。
【００４８】
この場合、エッジの除去は最も評価値の小さなエッジから実行されるから、最初のエッジ除去は評価値0.2 のエッジになる。しかし、使用者がこのエッジを近似化の最後まで残したい場合、図１１の（ｂ）に示すように、評価値0.2 のエッジを序列の中で最も大きな位置に移すように操作すれば良い。操作結果は図１１の（ｃ）になり、結果として評価値0.2 のエッジはエッジ除去が実行されても残ることになる。単純に序列の位置をずらすだけでなく、評価値そのものにある係数をかけ、結果として評価値の大きさを変更することにより、序列の位置を変える手法もある。図１１の（ｄ）がこの例であり、ここでは最初の評価値0.2 にある係数を乗算、あるいは加算することにより、その評価値を変更して、1.8 にしたものである。こうすれば最も大きな値になり、序列の最大になる。その結果、モデル内でそのエッジを残すことができる。
【００４９】
さらに、単に評価値を序例内で最大にするだけでなく、最大値からのある順番に配置する手法や、逆に最小値や、最小値からのある順番に配置することによって制御する手法もある。
【００５０】
また、ここでは序列の位置（順番）で近似化制御を説明したが、これのみならず序列の中での割合で制御する手法もある。これは、例えば残したいエッジがある場合、そのエッジの評価値を序列の最大値から１０％以内に変更すれば、結果としてそのエッジの除去は行われず、エッジは残ることになる。１０％という数字に固定するのではなく、使用者からの指定によって変更したり、他のパーセントにすることも可能である。また、評価値そのものを変更することもできるが、前述の図１１の（ｃ）の例のように評価値そのものは変えず、序列の中の割合での順番だけを変えることもできる。
【００５１】
ステップST７では、最も評価値の小さな値を持つエッジを除去し、これによってモデルの近似化を行う。エッジ除去によってモデルを構成するエッジが消え、これによりそのエッジに関わる面、頂点も減ることになる。エッジ除去の処理では、単純に評価値が最小のエッジを除去するだけでなく、その除去順番を制御することにより、結果として近似化結果を制御することも可能である。例えば、形状モデルがある面や線、点に対して対称に作られている場合、その形状モデルの近似化を行う使用者は、形状モデルの対称性を近似化結果にも維持したい場合がある。そのような場合に使用者は、図１２に示すように、近似化対象の形状モデルがある面５２や線、点について対称であることを入力する。図１２の例では、形状モデル５１が面５２について対称である例を示している。形状モデルの対称性が指定された後で、エッジ除去をこの対称指標（面、線、点などによる指定）に基づいて制御する。例えば、図１３に示すように面５３で指定された場合、仮に対称面の右側に位置するエッジを除去した場合、次のエッジ除去ステップでは、対称面の左側の同じ位置するエッジを除去することにより、モデルの対称性を維持することができる。同様の処理を対称性を指定した他の場合（線、点など）でも行えば良い。
【００５２】
ステップST８では、エッジ除去後に伴う頂点位置の位置決定を行う。
すなわち、モデルからエッジを除去すれば、除去対象エッジに関わる面と、エッジを構成する頂点も合わせて除去される。この時、エッジ除去後に残る頂点位置を調整することにより、近似化されたモデルの形状変化を少なくしてモデルの品質を良くすることができる。この処理がステップST８である。
【００５３】
ステップST９では、近似化処理の結果が、ステップST３で決定済の近似度に達しているかを判定し、もし達していなければステップST４からステップST８までを繰り返し、達していればループ処理を終了して、次に進む。
【００５４】
ステップST１０では、形状モデルに画像データが張り付けられている場合に、その処理を行う。ただし、使用者がこのステップST１０を不必要であると判断した場合には、処理を行わずに次に進む。
【００５５】
ところでＣＧ（コンピュータグラフィックス）においては、モデルを描画する際の見た目の品質を向上させるために、モデルに画像データを張り付ける、「テクスチャマッピング」と呼ばれる手法が取られる。図１４にその例を示す。
【００５６】
図１４の（ａ）は、描画対象となる形状モデルであり、ここでは八面体となっている。図１４の（ｂ）は、その形状モデルに張り付ける画像データである。この場合、形状モデルに張り付ける画像データは、２次元データである。テクスチャマッピングでは、形状モデルのどの面に、画像データのどの画像を張り付けるかを指定する。つまり画像データをより小さな画像に細かく分け、その分割した画像領域を形状モデルの各面へ張り付けるのである。図１４の（ｃ）は、画像データを図１４の（ａ）の形状モデルへ張り付けるために分割した例を示し、斜線で示す領域６１が形状データへ張り付ける部分であり、他の領域６２が形状データに張り付けない部分である。
【００５７】
このように、画像データをどのような形に分割して張るかは、テクスチャマッピングを行う場合の描画品質にも影響し、ＣＧ画像を作成する使用者は、その分割法に注意を払う必要がある。仮に図１４の（ａ）の形状データを近似化して、六面体の形状にした場合にも、テクスチャマッピングを行うなら、近似化前と同様に画像データを分割して、近似化した形状データに張り付けねばならない。例えば図１４の（ａ）の八面体を近似化し、その結果が六面体になった場合、近似化されてエッジが除去され、面が減少するわけであるから、同じ画像データを張り付ける場合の分割法は図１５の（ａ）の領域６１から図１５の（ｂ）の領域６３のように変化する。近似化したモデルへのテクスチャマッピング結果はＣＧの描画を行えば判明するが、テクスチャ画像データの分割がどのようになったかは、ＣＧの描画だけでは判明しない。したがって図１５の（ｂ）に示すような形で表現すれば、使用者は容易に画像データがどのような分割に変わったかを知ることができる。
【００５８】
図１５では、分割の様子を斜線部の面で示したが、この方法のみならず、線、枠、色付けされた領域といった分割領域を識別できる表示形式で示せば良い。また単に画面に表示するだけでなく、その画像をＧＩＦやＪＰＥＧといった任意の画像ファイルに保存すれば、近似化後いつでも使用者は確認できる。またハードコピーやネットワークを使った表示、保存も有効である。以上、これまでに説明したステップST３からST９の処理を、所望の近似度になるまで繰り返すことによってモデルの近似化を行う。
【００５９】
ステップST１１では、上記のようにして近似化したモデルを、複数ある場合には、その中から所望の解像度を持つモデルを選択し、描画したり、あるいは保存したりする。
【００６０】
以上の処理により、形状モデルを所望の部分的詳細度と近似度で近似化することができる。この近似化処理は近似化可能な範囲内で任意の回数行うことができる。したがってあるモデルを近似化対象とした場合に、異なる近似度で複数の近似化を実行した場合、その関係を把握するのが困難になる。しかし、例えば図１６の（ａ）に示すように画面上でそれぞれのモデルの因果関係をモデルに名付けたファイル名を示し、その関係をリスト構造のように線で引けば、容易にどのモデルからどのモデルを得たかを知ることができる。同様に図１６の（ｂ）のようにモデルをＣＧで描画し、その画像を線で引いても関係は容易に把握できる。したがって、ファイル名やＣＧ画像のみならず、それぞれのモデルを表現できる形を、お互いにその関係を示すことができるような線や位置などで表現すれば、近似化過程での因果関係を使用者に示せる。また、例えば画面にモデル全てを表示できなくなった場合でも、図１６の（ａ）に示す各モデルファイル名の枠を指定し、その指定されたモデルだけを表示すれば、必要なモデルのみを描画することができる。この場合、現在表示中のモデルの枠だけはハイライトにしたり、色を変えるなどの手法により、使用者は今、どのモデルが描画されているかを判断できる。また、図１６のように現在画面に表示されているモデルやファイル名のみならず、一旦これらのモデルをハードディスクなどの媒体に保存をした後、改めて読み出した際にも、各モデルの因果関係が判明するように、その因果関係をモデルとは別な形で記録しておけば良い。これにより一度モデルの近似化を行って、モデルの保存を行えば、後でも各モデルの因果関係を知ることができる。保存先は、ハードディスクなどの媒体のみならず、ネットワーク上や、電子的なメモリなど、一時的に、あるいは永久的に記録できる物であれば良い。
【００６１】
次に、図１７に本発明の実施の形態を適用した描画装置の構成例を示す。
この図１７に示す描画装置において、描画のための演算処理、特に上述したような形状近似化制御を行うためのＣＰＵ７１が設けられており、このＣＰＵ７１には、バスライン７２を介して一時記憶用のＲＡＭ７３、プログラムやデータ等が予め記憶されたＲＯＭ７４が接続されている。また、バスライン７２には、大容量記憶媒体のハードディスク装置７５や、画像表示用のＣＲＴ（陰極線管）７６や、キーボード及びマウス等の入力装置７７や、交換可能な記録媒体であるフロッピィディスク７８を記録再生するフロッピィディスク駆動装置７９等が接続されている。
【００６２】
上述した形状近似化の際には、ＣＰＵ７１は、事前に得た階層的近似化モデルを図１７に示すＲＡＭ７３等の記憶装置に配置し、画面上でのモデルの見かけの大きさ、速度、表示位置、視聴者の注目点などの情報に応じて、適宜モデルを切り替えて表示を行う。記憶装置としては、ＲＡＭ７３等の電子的なメモリ上に配置する場合や、ハードディスク装置７５等のような媒体に記憶することもでき、ユーザの要望にしたがって選択することができる。またモデルは事前に近似化したモデルを作っておくだけではなく、描画時にリアルタイムに近似化してその近似化したモデルを使って描画することも可能である。
【００６３】
また、ＣＰＵ７１を含むコンピュータシステムによりソフトウェア的に実現される機能部として、上述したような近似化結果管理部や、画像データ確認部を設けることができる。すなわち、近似化結果管理部は、上記形状データを近似化した結果を木構造の連結によって表示して、原因とその結果の因果関係を明らかにし、各近似化形状データの管理を行う機能部であり、また、画像データ確認部は、上記形状データに画像データを張り付けて近似化する際に、上記形状データからエッジを任意の回数分除去することで近似化を行い、各面に張り付けられて画像データがどのように変化したかを判別するために、画像データ上で上記近似化後の形状データに対する張り付け領域を表示あるいは記録することにより、画像データ付き形状データの近似化結果の確認を行う機能部である。
【００６４】
このような構成によれば、ＣＧに使用する形状データを近似化する際に、使用者の希望に応じて、部分的に近似化することや、近似化度の指定を容易にすることができる。また、画像データを張り付けた形状モデルでは、その張り付け状況を容易に確認することも容易になる。また、形状モデルの近似化における因果関係を容易に知ることもできる。本発明の実施の形態によって得た図形データを使うことによって、高速描画と高品質描画を満足することが可能となる。
【００６５】
ここで、本発明の実施の形態で説明したような形状データの近似化の技術を用いて描画された画像を図１８に、従来の近似化を行わないで描画された画像を図１９に示す。従来において、ＣＧの描画の際には、モデル１１の位置、大きさ、奥行、視聴者の注目点、モデルの移動速度に関係なく、図１９に示すように常に同じモデル１１を使って表示画面１０内の各位置のモデル３１、３２、３３を描画するのが一般的である。しかし描画には常に同じモデルを必要とするわけではなく、画面内でのモデルの位置、大きさ、奥行、視聴者の注目点、モデルの移動速度によって、図１８に示すようにモデルを切り替え、オリジナルの詳細なモデル１１だけではなく、より簡略化されたモデル１２、１３を使用して画面内のモデル２１、２２、２３を描画することで、十分な画像品質を得ることができる。
【００６６】
このようなモデルを近似化する際には、モデル全体を近似化するのみならず、使用者からの指定に応じて、モデル内の任意の領域を優先的、あるいは非優先的に近似化することにより、デザイナーや使用者の意図を反映して、モデルを近似化することが可能となる。さらに近似化対象となったオリジナルモデルと、その近似化結果の因果関係を明らかにすることにより、どのモデルを近似化した結果がどれになったかを容易に判別することができる。また形状モデルに画像を張り付けることによって、描画品質を向上させるテクスチャマッピングという手法が一般には用いられることも多い。この場合には、形状モデルを近似化することによって、画像データを張り付ける対象が変化するわけであるから、オリジナルモデルに張り付けた画像データが、近似化モデルではどのように変化するかを知る必要が出てくる。つまり画像データを張り付ける対象となる形状データが変化するため、画像データの張り付け方も変化するわけである。このように、形状データのどの面に、画像データのどの部位を張り付けるのかを明らかにすすることにより、近似化した形状モデルに修正を加えたり、逆に画像データに修正を加えるなどの処理が容易になる。
【００６７】
このように、ＣＧ（コンピュータグラフィックス:Computer Graphics）において使用される形状モデルを、その大局的な形状を保ったまま近似化することでデータ量を削減することができる。これを利用することによってＣＧの描画を品質を維持しながら、非常に高速に行うことが可能となる。また描画時間の制約から限られていたモデルの数を増加させて描画できるだけでなく、描画品質を保つこともできる。ＣＧを利用するゲームや、ＶＲ（仮想現実:Virtual Reality）、デザインなど幅広い利用が可能である。
【００６８】
【発明の効果】
本発明によれば、形状データの所望の部分に対して近似化の詳細度に関する情報を指定し、形状データの指定された部分については指定された詳細度に関する情報を用いて、階層的に形状データの近似化を施すことにより、使用者が形状データの所望の部分の詳細度を他の部分の詳細度と異ならせて近似化することができる。
【００６９】
すなわち、本発明によれば、ＣＧ（コンピュータグラフィックス:Computer Graphics）に使用する幾何モデルを、部分的に近似化することや、近似度の指定を容易にでき、このとき指定部分の色を変えて表示するため、近似化の効果が明瞭にわかる。
【００７０】
また、事前にある近似度が設定されているため、同じ近似度を使用する場合は、毎回、近似度を入力する必要がなく、入力の手間を省くことが出来るだけでなく、等比級数の形で近似化モデルを得ることができるので、全体としてのメモリ量を収束できる。さらにモデルの対称性を考慮した近似化も実行できる。
【００７１】
また、画像データを張り付けたモデルでは、近似化によって画像データの張り付け方がどのように変化するかを容易に確認することができる。
【００７２】
また、形状モデルの近似化における因果関係を容易に知ることができ、これはモデル保存後に再度読み直しも、容易に行える。
このようにして近似化したモデルを使用することにより、ＣＧの描画において、高速かつ高画質の要求を満たすことが可能となる。
【図面の簡単な説明】
【図１】本発明の実施の形態の処理の全体を説明するためのフローチャートである。
【図２】近似化での部分的詳細度指定を説明するための図である。
【図３】詳細度の入力と指定範囲の入力の具体例を説明するための図である。
【図４】領域指定の具体例を説明するための図である。
【図５】所望する近似度を指定するための具体例を示す図である。
【図６】近似化におけるエッジ評価を説明するための図である。
【図７】エッジ除去処理を説明するための図である。
【図８】エッジ除去後の頂点位置決定を説明するための図である。
【図９】エッジのヒストグラム操作を説明するための図である。
【図１０】他のエッジヒストグラム操作を説明するための図である。
【図１１】エッジ評価値の序列操作を説明するための図である。
【図１２】形状モデルの対称性指定を説明するための図である。
【図１３】対称性指定後のエッジ除去順番を説明するための図である。
【図１４】形状モデルに画像データを張り付けた場合の画像データ分割を説明するための図である。
【図１５】形状モデルの近似化による画像データ分割の変化を説明するための図である。
【図１６】近似化対象モデルとその近似化結果の因果関係表示を説明するための図である。
【図１７】本発明び実施の形態が適用される描画装置の構成例を示すブロック図である。
【図１８】本発明の実施の形態により近似化した形状データ及びその表示例を説明するための図である。
【図１９】従来の技術による表示例を説明するための図である。
【符号の説明】
７１  ＣＰＵ、  ７３  ＲＡＭ、  ７４  ＲＯＭ、  ７５  ハードディスク装置、  ７６  ＣＲＴ（陰極線管）、  ７７  入力装置
【図１】
0003785709.tif 000003
【図２】
0003785709.tif 000004
【図３】
0003785709.tif 000005
【図４】
0003785709.tif 000006
【図５】
0003785709.tif 000007
【図６】
0003785709.tif 000008
【図７】
0003785709.tif 000009
【図８】
0003785709.tif 000010
【図９】
0003785709.tif 000011
【図１０】
0003785709.tif 000012
【図１１】
0003785709.tif 000013
【図１２】
0003785709.tif 000014
【図１３】
0003785709.tif 000015
【図１４】
0003785709.tif 000016
【図１５】
0003785709.tif 000017
【図１６】
0003785709.tif 000018
【図１７】
0003785709.tif 000019
【図１８】
0003785709.tif 000020
【図１９】
0003785709.tif 000021