3次元モデルデータベース

Hamid Laga(東京工業大学),高橋 裕樹(電気通信大学)

Keywords: コンピュータグラフィックス,3次元モデル,データベース

1. まえがき

コンピュータグラフィックス(CG; Computer Graphics)の初期において, 3次元モデルはハリウッドのPixarやWalt Disneyなどに代表される制作会社の 熟練モデラが作成するものであった. しかし,グラフィックスハードウエアの急速な進歩にともない,エンドユーザが 利用可能な3次元モデリングソフトウエアや3次元形状計測機器が非常に安価になっ てきた. 今日では,コンピュータとCGに関する知識があれば,誰もが高品質なコンテンツ を作成できる環境が整ってきている. このような状況にともない,CAD(Computer Aided Design)やエンタテインメント から分子生物学,医学までの幅広い応用分野に膨大な3次元モデルデータベース が存在するようになってきた. さらに,インターネット技術によって,3次元データを共有することが可能になっ た. オンラインレポジトリに含まれる3次元モデルの総量が劇的に増加するのにとも ない,我々の興味は,「3次元モデルをどのように作成するのか」から「既存の3 次元モデルをどのように再利用するのか」に移行してきている.

データを再利用しようとする考え方は,とても自然な考えである. 以前作成した文章やスライドを編集,加工して新しい原稿や資料を作成すること は,多くの人が経験していることであろう. CGの多くのアプリケーションにおいて,一から新しい3次元モデルを作成する ということは,場合によっては,手間の掛かることである. 1994年の調査では,デザイナが適切な情報を探すために総作業時間の60%以 上を費しており,デザイン活動の75%は過去のデザイン知識から新し いデザインの問題をどのように解決するかに当てられている [1] . 最近では,CGも検索技術の恩恵を受け始めており,3次元モデルに適した検索技 術を開発するだけではなく,検索技術に基づいた次世代のモデリングシステムを 開発することも重要な研究となってきている. 本稿では,既存の3次元モデルデータベースについて紹介するとともに,3次元CG 分野の初学者にとって有益な利用方法について述べる.

2. 3次元モデルの作成

物体は,その幾何学的形状によって定義される. 一般に3次元モデルとよばれる仮想3次元物体は,頂点と稜線,面の集まりとして 作成され,一般に三角形や四角形が面として使われる. また,球や円柱,三角錐などの基本的な形状をプリミティブとよび,プリミティ ブの集合演算で3次元モデルを作成する場合もある. コンピュータで3次元モデルを作成する処理を3次元モデリングといい, 多くの場合,モデリングソフトウエアが利用される. 作成されたモデルは,コンピュータのスクリーン上で可視化される. この3次元モデルをスクリーンや紙面上で見ることができる画像に変換する処理 をレンダリングとよぶ.

2.1 モデリング処理

3次元モデルは,手作業,あるいは,手続き型モデリングとよばれるアルゴリズ ム的な処理によって作られるとともに,3次元スキャナとよばれる特別な装置を 用いて計測されたデータで構成される. 手作業によるモデリング処理では,多くの場合,ある一つのプリミティブから作 業がはじめられる. モデラは,ある一つの単純な形状や3次元スキャナを用いて計測した形状をもと に,詳細な形状を付加することによって,求める仮想的な形状を作成する. 同様に,複数のプリミティブを合成し3次元モデルを作成することも可能である. 最終的に,複数の3次元モデルを配置して仮想的なシーンを作成する.

いずれの場合においても3次元モデルを表現するための代表的な3種類の方法とし て (1) ポリゴンによるモデリング, (2) NURBS(Non-Uniform Rational B-Spline)によるモデリング, (3) スプラインとパッチによるモデリング, がある. ポリゴンによるモデリングでは,3次元空間上の頂点を直線で連結して多角形メッ シュを形成している. NURBSによるモデリングでは,それぞれ重み付けされた制御点の集合に対し,そ れらの制御点にしたがった曲線が形成され,制御点の重みを増やすことによって, 曲線を制御点に近付けるなどの曲線の制御が可能である. 特に,NURBSは,人間などの有機物のモデリングに適している. スプラインとパッチによるモデリングは,スプライン曲線を用いて3次元モデル の表面を直接定義している. パッチの再分割を行うことで,丸みを帯びた滑らかな3次元モデルを作成できる. スプラインによるモデリングは,その難しさから,あまり一般的には利用されて いないが,有機的なモデルを作成する場合には非常に有効である.

2.2 モデリングソフトウエア

3D Studio Max(R)やBlenderなどの3次元モデラとよばれるソフト ウエアやシーン記述言語であるPOV-RayやVRML(Virtual Reality Modeling Language)などを利用することで,3次元モデルを作成することができる. 一度3次元モデルを作成すると,スクリーン上で可視化したり,紙に印刷したり, 3次元プリンタで3次元モデルを作成したりすることができる.

数万円から数十万円で高機能な3次元モデリングソフトウエアを購入することがで きる. Autodesk(R) 3D StudioMax(R)やNew Teck社のLightwave(R)などが, 高機能な3次元モデルとアニメーション機能を備えた 代表的な商用ソフトウエアとして挙げられる.

また,別な選択肢として,Blenderな どのオープンソースプログラムを利用する方法がある. インタフェースの外見上,商用ソフトウエアに比べて多少見劣りする部分はある が,機能面では,他のフリーウエアや多くの商用ソフトウエアに引けを取らない. Blenderには,パーティクルシステム,アニメーション,レンダリング,彫刻ツー ル,ゲームエンジンなどの多様な組み込み機能がある. 図1にBlenderでのモデリングの様子を示す.

3次元プリミティブを扱う豊富なツールが含まれいるソフトウエアは多数あり, 複雑な3次元モデルを作成するための次に示す有用な機能がある.

  1. メッシュの幾何形状を制御するための,メッシュの一部を移動, 回転,拡大縮小する機能
  2. 分割モデリング: プリミティブを複数の部分に分割したり,あるいは,削っ たりすることでモデルの一部分を作成する機能
  3. スプライン モデリング

多くのモデリングソフトウエアに類似の機能があるため,一つのソフトウエアを 使いこなすことによって,他のソフトウエアを短期間で習熟することができる. 初心者にとっても,熟練のCGクリエータにとっても,Blenderは無視できないソ フトウエアであると言える.

オープンソースソフトウエア

図1: オープンソースソフトウエア "Blender"で作成した複雑な3次元形状例 ( 画像出展)

3. 3次元モデル検索エンジン

モデルの作成過程はモデルを準備するまでに複数の段階を経る必要があるため, 3次元モデルを作成するためのモデリングツールは多数存在するが,複雑で時間 の掛かる作業となる. 一方,すでにインターネット上に存在する3次元モデルや3次元部品が取り揃えら れている大規模な資源を利用することは,初心者と熟練者の双方にとって非常に 有益である.

3.1 3次元モデルデータベース

インターネットは,3次元モデルを含む膨大なマルチメディア情報資源である. 近年では,多くのユーザが作成した3次元モデルを共有することによって, インターネット上に存在する3次元モデルの量は非常に増加している. 表1に3次元モデルのオンライン資源一覧を示す. Protein Data BankやCADモデルのためのNational Design Repositoryのような,ある目的に特化したデータベースや Princeton Shape Benchmarkやaim@shape repositoryのようにより一般的なモデ ルを収集しているデータベースがある. 3D Cafeのような商用サイトでは,しばし個人利用に限りフリーのモデルを提供 している場合がある.

表1: オンライン3次元モデルコレクション
コレクション名 データの種類
The Protein Data Bank プロテイン
The National Design Repository CAD
The Princeton Shape Database 一般
The Utrecht Database 一般
aim@shape 一般
The ITI Database 一般
3D Cafe フリーと商用
Ultimate 3D links フリーと商用
Amazing 3D Graphics フリーと商用
3d02 online store 商用

オンラインデータベースでは,様々なファイルフォーマットで3次元モデルを提 供している. Princeton Universityのデータベースやaim@shape repositoryのような学術的サ イトでは,学術目的や研究目的のフリーな3次元モデルを提供しており,オープ ンファイルフォーマット(.off)やVRML(.wrl)フォーマットのどちらかが利用され ている. その他のサイトでは,例えば,3D Studio Max(R)や LightWave(R),AutoCAD(R)などの, 3次元モデルを作成した商用ソフトウエア独自のファイルフォーマットが利用さ れている. しかし,ファイルフォーマット変換ツールもいくつか存在する. Deep Explorationは,$200 程度で購入可能な変換ツールである. また,Blenderなどのオープンソースソフトウエアや多くの商用モデリングソフ トウエアでも異るファイルフォーマットの読み込みや書き出しが可能である.

3.2 3次元モデル検索エンジン

最近では,CGやCAD,分子生物学において,3次元モデルのインデキシングや検索 を行うアプリケーション付のデータベースが出現してきている. このようなシステムのアーキテクチャは一般的な情報検索システムの構造と同一 である. オフラインでデータのインデキシングを行い,ユーザがある決まった形式で検 索キーを指定することで,システムがインデックステーブルと検索キーの一致度 を計算し,最も一致するデータを返している. テキストによる注釈はとても有益で,検索空間を削減できる. しかし,手作業による注釈付けは時間の掛かる作業であり,言語間の対応付け技 術も必要になる. さらに,3次元モデルは,少数のキーワードでは表現が困難なモデル自身の幾何 情報と機能によって特徴付けられているという問題もある.

一方,テキストに基づいた検索エンジンの制限を克服するためにコンテンツに基 づいた方法が提案されている. 例えば,それらの方法では,3次元モデルに含まれる幾何学的な関係を見付け出 すのと同じように,少数のキーワードでは言い表せないいくつかの形状特徴を表 現する. このような手法は,画像や映像などの他の種類のマルチメディアデータベース検 索でも良く用いられているが,3次元モデル検索においては検索アルゴリズムに 影響を及ぼすいくつかの新しく,興味深い特徴を持っている. 例えば,次のような特徴である.

  1. 表現: 3次元モデルには適切なパラメータ化手法が不足している. 画素毎に色を実数で符号化した行列として表現される画像とは異り, 3次元モデルは頂点,稜線,面の非正則グラフとして表現される.
  2. 位相: 3次元モデルは任意の位相を持つ.
  3. 次元: 3次元モデルの特徴空間は高次元になるため, 姿勢の登録や特徴の対応,モデルのパラメータにより3次元モデルの検索 が困難になる. 従来の入力装置が2次元入力を中心としているため,検索キーインタフェー スの設計も困難なものとなる.
  4. 形状の類似性: 3次元モデルは,位相的,幾何学的誤差を生じ易い. メッシュの連結が僅かに異ったとしても,図2 に示すように幾何学的な形状や位相が大きく異ってしまう.

3次元形状表現における異る位相の例

図2: 3次元形状表現における異る位相の例

一方,3次元モデルは,センサ,発光素子の仕様や周囲の物体に依存しないため, 3次元モデルを解析する場合には,画像にみられる投影,反射,陰影,隠れなど に起因する問題が存在しない.

表2にいくつかの有名な3次元モデル検索エンジンを示す. これらのシステムは異る検索キーを採用している. テキストに基づいた検索では,ユーザがキーワードを入力し,データベースに含 まれる注釈に関連した3次元モデルを検索する. 一方,希望する形状の2次元の概形をスケッチすることで,システムが3次元モデ ルの投影像とスケッチが一致する3次元モデルを検索するシステムもある. また,ユーザが検索キーとして3次元形状を指定することで,その形状に類似し た3次元モデルを検索するシステムもある. どの場合においても,最初に検索された3次元モデルを用いて再検索することに よって,検索キーを精度良くすることが可能である.

表2: 3次元モデル検索システム
システム名 データベースの大きさ 検索キーの種類
Voyage 不明 テキスト
National Taiwan University >10,000 テキスト,2次元スケッチ,3次元モデル
Ogden - National Institute of Multimedia Education - Japan 不明 3次元モデル
Princeton University's [4] & >36,000 テキスト,2次元スケッチ,3次元モデル
3D Search Informatics and Telematics Institute 不明 3次元モデル

図3に国立台湾大学の 3次元モデル検索エンジンのスクリーンショットを示す. ユーザは,左上の部分に "Lion"というキーワードを指定し,動物のよう なシルエットを描いている. "Search"ボタンをクリックすることによって,システムは2次元スケッチ とキーワードに最も類似する3次元モデルをデータベースから検索する. そして,上位のサムネイルがメインウインドウに表示される. ユーザは,検索結果を一つ選び,そのモデルを検索キーとして再検索することも できる.

3次元モデル検索システム例

図3: 3次元モデル検索システム例
多くのシステムが検索キーとして (1) キーワード (2) 手書きの2次元スケッチ (3) 3次元モデルサンプル を用いる.

4. 3次元モデルの再利用

既存の3次元モデリングシステムでは,ユーザが3次元モデルの詳細な部分まで作成 することができるように幅広い機能が提供されている. しかし,それらの機能は,習熟することが難しいこともあるため,熟練ユーザに 使用が限られるということがある. 初心者がそのようなソフトウエアを利用して,細かい幾何学形状を作成しよう とした場合,3次元モデルのデザインコンセプトや創作に割り当てる時間が少な くなってしまう. 別な選択として,スケッチに基づいたモデリングシステムを利用する方法がある が,現状のシステムでは簡単な物体の作成に制限される.

検索技術は,これらの制限を次に示す3つの点において解消することが可能であ る. 第一に,ユーザは,希望のモデルを検索することができ,見付けることができれ ば,データをダウンロードし,色,テクスチャ,質感などの属性を修正したり, 細かい形状を追加したりすることができる. 図3に,その例を示す. これらのことによって,3次元モデル作成時間を大幅に削減することができる.

第二に,例えば,ユーザが探している3次元モデルがデータベースに存在しない など,コンテンツが存在しない場合である. この問題は,ユーザの創作性やニーズに制限がないという観点からは良くある問 題である. この場合,検索技術と3次元モデリングを融合することで,ユーザが既存の3次元 モデルから新たなモデルを合成することができる. 例えば,ユーザが膨大なデータベースから希望する部品を含む3次元モデルを検 索し,メッシュの中から希望する部品を切り出し,新しい物体を形成するために 様々な方法でそれらの部品を合成する[6]. ユーザは新しいモデルのコンセプトデザインに集中できるだけでなく,幾何学的 な細部形状もデータベースのサンプルから作成可能である. 図4にデータベースで検索したモデル集合から複雑な3次元モデルを合成した例を 示す.

ユーザはデータベースで検索したモデルからある一部を選択,切り取
 り,編集し,別なモデルに貼り付ける.

図4: ユーザはデータベースで検索したモデルからある一部を選択,切り取 り,編集し,別なモデルに貼り付ける. These models are from the Nonrigid world 3D database v1.0,courtesy of Alex Bronstein, 2007

最後に,検索システムは既存の3次元計測デバイスの限界を克服することも可能 である. スキャナの設定によって,物体による隠れ,計測に不向きな表面反射特性や幾何 学形状の制限などのため,既存のデバイスでは,雑音を多く含み,不完全なデー タ集合となることが良くある. Paulyら[7]は,検索技術を用いて,不完全な計測データから 矛盾の無い3次元モデルを得る方法を提案した. 3次元モデルデータベースは欠落したデータの幾何学的重要度を与えるために利 用し,検索技術はデータベースから適切な内容のモデルを検索するために利用す る. 検索したモデルを入力データに一致するように変形し,変形したモデルを最終的 な統合3次元形状に矛盾無く合成することができる.

5. おわりに

3次元技術は急速な進化を遂げており,ユーザは3次元モデリングシステムを習得 する時間を少なくし,創造性を発揮するために,より直感的で,知的かつ柔軟な ツールを探している. 21世紀の技術革新な技術となる情報検索は,3次元モデリング技術を融合するこ とで,その目標へと一歩近付くことであろう.

本稿では,3次元モデルデータベースおよび検索機能を備えたデータベースにつ いて簡単に紹介した.また,検索した3次元モデルの再利用方法について述べ, 初心者が一から3次元モデルを作成することなく,既存の3次元モデルを活用する ための研究動向について簡単に説明した. 現状の技術では,初心者が3次元モデルを再利用するための満足な環境が整って いるとは言いがたいが,スケッチに基づいたインタフェースと検索技術が融合す ることで,初心者への新しいツールを提供することが近い将来可能になると予想 される. 例えば,ユーザが3次元モデルのラフスケッチを描き,システムがデータベース からデータを検索し,置き換える部分をアドバイスする. このような方向性に進むことで,将来の3次元モデリングシステムは,CG技術, 情報検索技術,3次元モデルの自動合成のための機械学習を融合したものになる であろう.

参考文献

  1. N. Iyer, S. Jayanti, K. Lou, Y. Kalyanaraman and K. Ramani: "Three-dimensional shape searching: state-of-the-art review and future trends.", Computer-Aided Design, 37, 5, pp.509-530(2005).
  2. Blender software
  3. Deep Exploration, standard and CAD editions.
  4. T. Funkhouser, M. Kazhdan, P. Min and P. Shilane: "Shape-based retrieval and analysis of 3d models", Commun. ACM, 48, 6, pp. 58-64(2005).
  5. 3D Model Retrieval System, Taiwan University.
  6. T. Funkhouser, M. Kazhdan, P. Shilane, P. Min, W. Kiefer, A. Tal, S. Rusinkiewicz and D. Dobkin: "Modeling by example", ACM Transactions on Graphics, 23, 3, pp.652-663(2004).
  7. M. Pauly, N. J. Mitra, J. Giesen, M. Gross and L. J. Guibas: "Example-based 3D scan completion", SGP '05: Proceedings of the third Eurographics symposium on Geometry processing, Airela-Ville, Switzerland, Switzerland, Eurographics Association, p.23(2005).

hamid@img.cs.titech.ac.jp, rocky@hc.uec.ac.jp