首页 / 专利库 / 电脑图像 / 网格模型 / 三次元モデル・データを処理するための方法および装置

三次元モデル・データを処理するための方法および装置

阅读:601发布:2024-01-12

专利汇可以提供三次元モデル・データを処理するための方法および装置专利检索,专利查询,专利分析的服务。并且【課題】三次元モデル・データを処理するための方法および装置を提供すること。【解決手段】本発明は、コンピュータ・グラフィックスのネットワーク送信および表示に関する。三次元モデル・データを処理するための方法および装置が提供され、この方法は、元のメッシュ・モデルのメッシュ・データを取得するステップと、あらかじめ定義されたメッシュ・モデル構築アルゴリズムを使用することによって元のメッシュ・モデルの頂点データから派生メッシュ・モデルを構築するステップと、元のメッシュ・モデルのメッシュ・データを派生メッシュ・モデルのメッシュ・データと比較して、派生メッシュ・モデルのエラー・データを取得するステップと、元のメッシュ・モデルに関連する頂点データを送信するステップと、派生メッシュ・モデルのエラー・データを送信するステップとを含む。【選択図】図3,下面是三次元モデル・データを処理するための方法および装置专利的具体信息内容。

  • 三次元モデル・データを処理するための方法であって、
    元のメッシュ・モデルのメッシュ・データを取得するステップと、
    あらかじめ定義されたメッシュ・モデル構築アルゴリズムを使用することによって前記元のメッシュ・モデルの頂点データから派生メッシュ・モデルを構築するステップと、
    前記元のメッシュ・モデルの前記メッシュ・データを前記派生メッシュ・モデルの前記メッシュ・データと比較して、前記派生メッシュ・モデルのエラー・データを取得するステップと、
    前記元のメッシュ・モデルに関連する頂点データを送信するステップと、
    前記派生メッシュ・モデルの前記エラー・データを送信するステップとを含む、方法。
  • 前記元のメッシュ・モデルの前記メッシュ・データを前記派生メッシュ・モデルの前記メッシュ・データと前記比較するステップが、前記元のメッシュ・モデルの辺データを前記派生メッシュ・モデルの辺データと比較するステップを含み、前記エラー・データが、余分な辺データおよび欠けている辺データを含み、前記余分な辺データが、前記派生メッシュ・モデルに存在するが前記元のメッシュ・モデルには存在しないあらゆる辺を含み、前記欠けている辺データが、前記元のメッシュ・モデルに存在するが前記派生メッシュ・モデルには存在しないあらゆる辺を含む、請求項1に記載の方法。
  • 前記元のメッシュ・モデルの前記メッシュ・データを前記派生メッシュ・モデルの前記メッシュ・データと前記比較するステップが、前記元のメッシュ・モデルの面データを前記派生メッシュ・モデルの面データと比較するステップを含み、前記エラー・データが、余分な面データおよび欠けている面データを含み、前記余分な面データが、前記派生メッシュ・モデルに存在するが前記元のメッシュ・モデルには存在しないあらゆる面を含み、前記欠けている面データが、前記元のメッシュ・モデルに存在するが前記派生メッシュ・モデルには存在しないあらゆる面を含む、請求項1に記載の方法。
  • 前記派生メッシュ・モデルの前記エラー・データを前記送信するステップが、前記エラー・データを複数のエラー・データ部分集合に分割するステップと、前記エラー・データ部分集合のすべてが送信されるまで、毎回、前記エラー・データ部分集合の1つを送信するステップとを含む、請求項2または3に記載の方法。
  • 前記元のメッシュ・モデルに関連する前記頂点データが、前記元のメッシュ・モデルの前記頂点データである、請求項1に記載の方法。
  • 前記元のメッシュ・モデルの前記頂点データに従って導出頂点データを生成するステップをさらに含み、
    前記元のメッシュ・モデルに関連する前記頂点データが、前記導出頂点データを含む、請求項1に記載の方法。
  • 三次元モデル・データを処理するための方法であって、
    三次元メッシュ・モデルをレンダリングするためにデータを受信するステップと、
    前記受信したデータが元のメッシュ・モデルに関連する頂点データであることに応じて、
    あらかじめ定義されたメッシュ・モデル構築アルゴリズムを使用することによって前記元のメッシュ・モデルの頂点データから派生メッシュ・モデルを構築すること、および 前記構築された派生メッシュ・モデルに基づいて三次元モデルを表示することを行うステップと、
    前記受信したデータが前記派生メッシュ・モデルのエラー・データであることに応じて、前記受信されたエラー・データを用いて表示中の前記三次元メッシュ・モデルを修正するステップとを含む、方法。
  • 前記元のメッシュ・モデルに関連する前記頂点データが、
    前記元のメッシュ・モデルの前記頂点データ、または 前記元のメッシュ・モデルの前記頂点データから導出された頂点データのうちの1つを含む、請求項7に記載の方法。
  • 前記エラー・データが、
    余分な辺データ、
    欠けている辺データ、
    余分な面データ、および 欠けている面データのうちの少なくとも1つを含み、
    前記受信したエラー・データを用いて表示されている前記三次元メッシュ・モデルを前記修正するステップが、
    前記エラー・データが前記余分な辺データを含むことに応じて、前記余分な辺データ中の辺を、現在表示されている前記三次元メッシュ・モデルから削除するステップと、
    前記エラー・データが前記欠けている辺データを含むことに応じて、前記欠けている辺データ中の辺を、現在表示されている前記三次元メッシュ・モデルに追加するステップと、
    前記エラー・データが前記余分な面データを含むことに応じて、前記余分な面データ中の面を、現在表示されている前記三次元メッシュ・モデルから削除するステップと、
    前記エラー・データが前記欠けている面データを含むことに応じて、前記欠けている面データ中の面を、現在表示されている前記三次元メッシュ・モデルに追加するステップとを含む、請求項7に記載の方法。
  • 前記派生メッシュ・モデルの前記エラー・データが、
    前記派生メッシュ・モデルのメッシュ・データと前記元のメッシュ・モデルのメッシュ・データとの差異を表すデータ、および 前記派生メッシュ・モデルと前記元のメッシュ・モデルとの差異を表す前記データの部分集合のうちの1つを含む、請求項9に記載の方法。
  • 三次元モデル・データを処理するための装置であって、
    元のメッシュ・モデルのメッシュ・データを取得するように構成された、データ取得ユニットと、
    あらかじめ定義されたメッシュ・モデル構築アルゴリズムを使用することによって、前記元のメッシュ・モデルの頂点データから派生メッシュ・モデルを構築するように構成された、メッシュ・モデル構築ユニットと、
    前記元のメッシュ・モデルの前記メッシュ・データを前記派生メッシュ・モデルのメッシュ・データと比較して、前記派生メッシュ・モデルのエラー・データを取得するように構成された、比較ユニットと、
    前記元のメッシュ・モデルに関連する頂点データを送信するように構成された、頂点データ送信ユニットと、
    前記派生メッシュ・モデルの前記エラー・データを送信するように構成された、エラー・データ送信ユニットとを含む、装置。
  • 前記比較ユニットが、前記元のメッシュ・モデルの辺データを前記派生メッシュ・モデルの辺データと比較するように構成され、前記エラー・データが、余分な辺データおよび欠けている辺データを含み、前記余分な辺データが、前記派生メッシュ・モデルに存在するが前記元のメッシュ・モデルには存在しないあらゆる辺を含み、前記欠けている辺データが、前記元のメッシュ・モデルに存在するが前記派生メッシュ・モデルには存在しないあらゆる辺を含む、請求項11に記載の装置。
  • 前記比較ユニットが、前記元のメッシュ・モデルの面データを前記派生メッシュ・モデルの面データと比較するように構成され、前記エラー・データが、余分な面データおよび欠けている面データを含み、前記余分な面データが、前記派生メッシュ・モデルに存在するが前記元のメッシュ・モデルには存在しないあらゆる面を含み、前記欠けている面データが、前記元のメッシュ・モデルに存在するが前記派生メッシュ・モデルには存在しないあらゆる面を含む、請求項11に記載の装置。
  • 前記エラー・データ送信ユニットが、前記エラー・データを複数のエラー・データ部分集合に分割し、前記エラー・データ部分集合のすべてが送信されるまで、毎回、前記エラー・データ部分集合の1つを送信するように構成された、請求項12または13に記載の装置。
  • 前記元のメッシュ・データに関連する前記頂点データが、前記元のメッシュ・データの前記頂点データである、請求項11に記載の装置。
  • 前記元のメッシュ・モデルの前記頂点データに従って導出頂点データを生成するように構成された、データ導出ユニットをさらに含み、前記元のメッシュ・データに関連する前記頂点データが、前記導出頂点データを含む、請求項11に記載の装置。
  • 三次元モデル・データを処理するための装置であって、
    三次元(3D)メッシュ・モデルをレンダリングするためにデータを受信するように構成された、データ受信ユニットと、
    前記データ受信ユニットによって受信された前記データの型を判断するように構成された、データ型判断ユニットと、
    前記受信したデータが元のメッシュ・モデルに関連する頂点データであることに応じて、あらかじめ定義されたメッシュ・モデル構築アルゴリズムを使用することによって、前記元のメッシュ・モデルの頂点データから派生メッシュ・モデルを構築するように構成された、メッシュ・モデル構築ユニットと、
    前記構築された派生メッシュ・モデルを表示するように構成された、3Dモデル・レンダリング・ユニットであって、前記受信したデータが前記派生メッシュ・モデルのエラー・データであることに応じて、受信した前記エラー・データを用いて表示されている3Dの前記メッシュ・モデルを修正するようにさらに構成された、前記3Dモデル・レンダリング・ユニットとを含む、装置。
  • 前記元のメッシュ・モデルに関連する前記頂点データが、
    前記元のメッシュ・モデルの前記頂点データ、または 前記元のメッシュ・モデルの前記頂点データから導出された頂点データのうちの1つを含む、請求項17に記載の装置。
  • 前記エラー・データが、
    余分な辺データ、
    欠けている辺データ、
    余分な面データ、および 欠けている面データのうちの少なくとも1つを含み、
    前記3Dモデル・レンダリング・ユニットが、
    前記エラー・データが前記余分な辺データを含んでいることに応じて、現在表示されている前記三次元メッシュ・モデルから前記余分な辺データ中の辺を削除する、
    前記エラー・データが前記欠けている辺データを含んでいることに応じて、現在表示されている前記三次元メッシュ・モデルに前記欠けている辺データ中の辺を追加する、
    前記エラー・データが前記余分な面データを含んでいることに応じて、現在表示されている前記三次元メッシュ・モデルから前記余分な面データ中の面を削除する、および 前記エラー・データが前記欠けている面データを含んでいることに応じて、現在表示されている前記三次元メッシュ・モデルに前記欠けている面データ中の面を追加するように構成された、請求項17に記載の装置。
  • 前記派生メッシュ・モデルの前記エラー・データが、
    前記派生メッシュ・モデルのメッシュ・データと前記元のメッシュ・モデルのメッシュ・データとの差異を表すデータ、および 前記派生メッシュ・モデルと、前記元のメッシュ・モデルとの差異を表す前記データの部分集合のうちの1つを含む、請求項19に記載の装置。
  • 说明书全文

    本発明は、概してコンピュータ・グラフィックスのネットワーク送信および表示に関し、詳細には、三次元グラフィックスのためのメッシュ・データの処理に関する。

    三次元(3D)グラフィックスは、仮想世界、ビデオゲームなどのようなマルチメディア応用において広く使用されている。 三次元グラフィックスは、通常三次元モデルを用いて表現され、メッシュ・モデルは一般的に使用される三次元モデルである。 一般に、メッシュ・モデルを描くためのメッシュ・データは、膨大な量のデータである。 インターネット・ベースの3Dグラフィックス・アプリケーションでは、多くの場合、ネットワークを介してソース・コンピュータ(例えば、サーバ)からターゲット・コンピュータ(例えば、クライアント)へ大量のメッシュ・データを送信することが必要とされる。 ネットワーク帯域幅リソースが限られている場合、ソース・コンピュータからターゲット・コンピュータへ送信されるメッシュ・データの量が大きい場合、メッシュ・データを適時に送信することができない可能性があり、その結果、対応する3Dグラフィックスを適時に示すことができず、これはユーザ体験に悪影響を及ぼす。 マルチメディア・ユーザは、帯域幅リソースが限られている場合でも、コンピュータ・ネットワークを介して満足のいく速度でメッシュ・データを送信できることを希望する場合がある。

    従来の技術には、メッシュ・モデル・データをプログレッシブに(progressively)送信するための方法がある。 例えば、論文「Progressive Mesh」(H.Hoppe, ACM SIGGRAPH 1996Proceedings)において、3Dメッシュ・モデルを送信するための方法が提案されている。 この方法によれば、3Dメッシュ・モデルは、階層メッシュに変換され、これがサーバに格納される。 階層メッシュは、いくつかのサブメッシュを含む。 サブメッシュはそれぞれ、3Dメッシュ・モデルに関する情報の一部を含み、その情報量は様々である。 各サブメッシュを送信することにより、3Dメッシュ・モデルのデータは受信側に徐々に送信される。 受信側は、サブメッシュの情報を受信すると、対応する三次元グラフィックスを表示することになる。 時間とともに、受信側で表示される三次元グラフィックスは、元の3Dメッシュ・モデルに次第に近くなり、最終的に同じになる。 上述した従来の技術の方法は、サブメッシュを送信する際に、元の3Dメッシュ・モデルの頂点データと辺データの両方を同時に送信することが必要とされる。

    「Progressive Mesh」(H.Hoppe, ACM SIGGRAPH 1996 Proceedings) 「A New Voronoi-Based SurfaceReconstruction Algorithm」(Amenta et al., SIGGRAPH 1998) 「Poisson Surface Reconstruction」(Kazhdan et al., Symposium on Geometry Processing 2006)

    本発明の目的は、データを受信するターゲット・コンピュータにおいて3Dグラフィックスを表示する速度を上げるための、コンピュータ・ネットワークを介してメッシュ・モデルのメッシュ・データを送信する改善された方法を提供することである。

    1つの態様では、元のメッシュ・モデルのメッシュ・データを取得するステップと、あらかじめ定義されたメッシュ・モデル構築アルゴリズムを使用することによって元のメッシュ・モデルの頂点データから派生メッシュ・モデルを構築するステップと、元のメッシュ・モデルのメッシュ・データを派生メッシュ・モデルのメッシュ・データと比較して、派生メッシュ・モデルのエラー・データを取得するステップと、元のメッシュ・モデルと関連する頂点データを送信するステップと、派生メッシュ・モデルのエラー・データを送信するステップとを含む、三次元モデル・データを処理するための方法が提供される。

    別の態様では、三次元メッシュ・モデルをレンダリングするためにデータを受信するステップと、受信したデータが元のメッシュ・モデルに関連する頂点データであることに応じて、あらかじめ定義されたメッシュ・モデル構築アルゴリズムを使用することによって元のメッシュ・モデルの頂点データから派生メッシュ・モデルを構築すること、および構築した派生メッシュ・モデルに基づいて三次元モデルを表示することを行うステップと、受信したデータが派生メッシュ・モデルのエラー・データであることに応じて、受信したエラー・データを用いて表示されている三次元メッシュ・モデルを修正するステップとを含む、三次元モデル・データを処理するための方法が提供される。

    さらに別の態様では、元のメッシュ・モデルのメッシュ・データを取得するように構成された、データ取得ユニットと、あらかじめ定義されたメッシュ・モデル構築アルゴリズムを使用することによって元のメッシュ・モデルの頂点データから派生メッシュ・モデルを構築するように構成された、メッシュ・モデル構築ユニットと、元のメッシュ・モデルのメッシュ・データを派生メッシュ・モデルのメッシュ・データと比較して、派生メッシュ・モデルのエラー・データを取得するように構成された、比較ユニットと、元のメッシュ・データに関連する頂点データを送信するように構成された、頂点データ送信ユニットと、派生メッシュ・モデルのエラー・データを送信するように構成された、エラー・データ送信ユニットとを含む、三次元モデル・データを処理するための装置が提供される。

    さらに別の態様では、三次元(3D)メッシュ・モデルをレンダリングするためにデータを受信するように構成された、データ受信ユニットと、データ受信ユニットによって受信されたデータの型を判断するように構成された、データ型判断ユニットと、受信されたデータが元のメッシュ・モデルに関連する頂点データであることに応じて、あらかじめ定義されたメッシュ・モデル構築アルゴリズムを使用することによって元のメッシュ・モデルの頂点データから派生メッシュ・モデルを構築するように構成された、メッシュ・モデル構築ユニットと、構築された派生メッシュ・モデルを表示するように構成され、受信されたデータが派生メッシュ・モデルのエラー・データであることに応じて、受信されたエラー・データを用いて表示されている三次元メッシュ・モデルを修正するようにさらに構成された、3Dモデル・レンダリング・ユニットとを含む、三次元モデル・データを処理するための装置が提供される。

    図面と併せて、また次の詳細な説明を参照して、限定的ではなく例示的な方法で示される本発明のいくつかの実施形態から、本発明の実施形態の特徴、利点、および他の側面がさらに明らかになるであろう。

    本発明の様々な実施形態を実現するために使用されるように構成された例示的コンピューティング・システム100の図である。

    三次元グラフィックスのメッシュ・モデル、およびメッシュ・モデルのデータ表現を例示的に示す図である。

    本発明の一実施形態による三次元モデル・データを処理するための方法のフロー・チャートを例示的に示す図である。

    派生メッシュ・モデルを概略的に示す図である。

    元のメッシュ・モデルに関連する頂点データを概略的に示す図である。

    元のメッシュ・モデルに関連する頂点データを概略的に示す図である。

    元のメッシュ・モデルに関連する頂点データを概略的に示す図である。

    本発明の一実施形態による三次元モデル・データを処理するための方法のフロー・チャートを例示的に示す図である。

    ターゲット・コンピュータ202において三次元メッシュ・モデルをレンダリングする処理を概略的に示す図である。

    ターゲット・コンピュータ202において三次元メッシュ・モデルをレンダリングする処理を概略的に示す図である。

    ターゲット・コンピュータ202において三次元メッシュ・モデルをレンダリングする処理を概略的に示す図である。

    本発明の一実施形態による三次元モデル・データを処理するための装置を例示的に示す図である。

    本発明の別の実施形態による三次元モデル・データを処理するための装置を例示的に示す図である。

    図中のフロー・チャートおよびブロックは、本発明の実施形態によるコンピュータ・プログラム製品によって実行可能なシステム、方法、ならびにアーキテクチャ、機能、および動作を示す。 この点に関して、フロー・チャートまたはブロック中の各ブロックは、モジュール、プログラム・セグメント、またはコードの一部を表すことができ、1つまたは複数の指定された論理機能を実行するための1つまたは複数の実行可能命令を含む。 いくつかの代替的な実施では、ブロックに示した機能が、図に示した順序とは異なる順序で行われる場合もあることに注意すべきである。 例えば連続して示される2つのブロックは、ほぼ並行して、または逆の順序で行われる場合がある。 これは、関連機能によって決まる。 ブロック図またはフロー・チャート、あるいはその両方の中の各ブロック、ならびにブロック図またはフロー・チャート、あるいはその両方の中のブロックの組合せは、特定機能または動作を行う専用ハードウェアベースのシステムによって、あるいは専用ハードウェアとコンピュータ命令の組合せによって、実行可能であることにも注意すべきである。

    以下に、様々な例示の実施形態を参照して本発明の原理および趣旨を説明する。 これらの実施形態の提供は、当業者が本発明をよりよく理解し、さらに実施できるようにするものであり、本発明の範囲をいかなる方法でも限定することを目的としていないことを理解すべきである。

    図1は、本発明の実施形態を実装するように構成された例示的コンピューティング・システム100のブロック図を示す。 図1に示すコンピューティング・システム100は、CPU(中央処理装置)101と、RAM(ランダム・アクセス・メモリ)102と、ROM(読取り専用メモリ)103と、システム・バス104と、ハード・ディスク・コントローラ105と、キーボード・コントローラ106と、シリアル・インタフェース・コントローラ107と、パラレル・インタフェース・コントローラ108と、ディスプレイ・コントローラ109と、ハード・ディスク110と、キーボード111と、シリアル周辺装置112と、パラレル周辺装置113と、ディスプレイ114とを含む。 これらの構成要素のうち、CPU101、RAM102、ROM103、ハード・ディスク・コントローラ105、キーボード・コントローラ106、シリアル・インタフェース・コントローラ107、パラレル・インタフェース・コントローラ108、およびディスプレイ・コントローラ109は、システム・バス104に接続される。 ハード・ディスク110は、ハード・ディスク・コントローラ105に接続され、キーボード11は、キーボード・コントローラ106に接続され、シリアル周辺装置112は、シリアル・インタフェース・コントローラ107に接続され、パラレル周辺装置113は、パラレル・インタフェース・コントローラ108に接続され、ディスプレイ114は、ディスプレイ・コントローラ109に接続される。 図1の構造ブロック図は、単に例示の目的で示しており、本発明の範囲を限定することを意図していないことを理解すべきである。 いくつかの例では、必要に応じていくつかのデバイスを追加する、または削除することができる。 例えば、コンピュータ・ネットワークにアクセスする能を有するように、コンピューティング・システム100のためにネットワーク・アダプタを構成することができる。

    図1に示すコンピューティング・システム100は、本発明の様々な実施形態に適用できるソース・コンピュータおよび宛先コンピュータの実装に使用することができる。

    本発明の様々な実施形態を説明する前に、三次元グラフィックスのメッシュ・モデルおよびメッシュ・モデルのデータ表現についてまず説明する。 図2は、三次元グラフィックスのメッシュ・モデル、およびメッシュ・モデルを表すデータ表現を概略的に示す。

    図2には、三次元グラフィックス210の一例を示している。 グラフィックスの頭部は、参照符号220で示す3Dメッシュ・モデル(「メッシュ・モデル」とも呼ばれる)で表現することができる。 メッシュ・モデルの細部は、多数の三形面によって構成される。

    参照符号230は、単純化したメッシュ・モデルを示す。 メッシュ・モデル230は、10個の頂点v1からv10と、11個の三角形面f1からf11とによって構成された、閉じた構造体である。

    参照符号240は、メッシュ・モデル230の頂点の幾何学的情報を提供する、メッシュ・モデル230の頂点リストを示す。 詳細には、頂点リスト240には、メッシュ・モデル230の頂点{v1,v2,v3. . . }のすべてと、頂点のそれぞれの三次元座標、例えば頂点v1とその座標(x1,y1,z1)が一覧表示される。

    参照符号250は、メッシュ・モデル230の面リストを示す。 面リスト250では、メッシュ・モデル230の面(f1,f2,...)のすべてと、面のそれぞれを構成している頂点、例えば面f1とその構成頂点(v1,v2,v3)が一覧表示される。

    面リスト250の等価の形式が、辺リスト260である。 辺リスト260は、メッシュ・モデル230の辺のすべて、例えば2つの頂点v1およびv2を結ぶ辺e1を、一覧表示する。 辺リスト260は、メッシュ・モデル230の頂点の間の接続の情報を提供する。

    頂点リスト240および面リスト250は、「メッシュ・データ」と呼ばれる、メッシュ・モデル230のデータ集合を構成する。 明らかに、メッシュ・モデル230のデータ集合、またはメッシュ・データもまた、頂点リスト240および辺リスト260で表されるデータからなる、すなわちメッシュ・モデルの頂点集合および辺集合からなることができる。

    メッシュ・モデル(以下では、単に「メッシュ」とも呼ぶ)は、頂点および頂点を結んだ辺によって構成される閉じた構造体であると言うことができる。

    説明の便宜上、次の説明では、頂点が位置している辺を頂点の「隣接辺」と呼び、例えば辺e1と辺e3の両方が頂点v1の隣接辺である。 明らかに、1つの頂点が、2つ以上の隣接辺を有する可能性がある。 また頂点が位置している面は、頂点の「隣接面」と呼ばれ、例えば面f1と面f2の両方が頂点v1の隣接面である。 明らかに、1つの頂点が、2つ以上の隣接面を有する可能性がある。

    図2の下部に、本発明の適用のシナリオを示す。 図示のように、インターネット・ベースの三次元適用例では、送信側として機能しているソース・マシン(例えば、サーバ)201から、受信側として機能しているターゲット・コンピュータ(例えば、クライアント)202へ、ネットワーク203を介して三次元グラフィックスのメッシュ・データを送信する必要がある。 三次元グラフィックスのメッシュ・モデルのデータ量は、通常非常に大きく(最大約10メガバイト)、グラフィックスの精度の要求が高まるほど、データ量は大きくなる。 これにより、ネットワーク203の帯域幅に対する要求が高まる。 帯域幅が不十分である場合、メッシュ・モデル・データは、ソース・コンピュータ201からターゲット・コンピュータ202へ適時に送信できない恐れがある。 その結果、3Dグラフィックスは、ターゲット・コンピュータにおいて適時にレンダリングされることが不可能であり、受信側におけるユーザの体験に悪影響を及ぼす。

    発明者らは、メッシュ・モデルの辺の数は、頂点の数の増加とともに増えることに注目した。 オイラーの公式によれば、実際の適用例におけるより複雑なメッシュ・モデルについては、辺の数は頂点の数のおよそ3倍である可能性がある。 発明者らは、コンピュータ・ネットワークを介してメッシュ・モデルを送信するとき、ソース・コンピュータ201は頂点データに関する情報と、面/辺データに関する情報とを同時に送信する必要がなく、ターゲット・コンピュータ202は、3Dメッシュ・モデルをプログレッシブに表示することもできることを発見した。

    本発明の基本的な考えは、ソース・コンピュータ201に、まずターゲット・コンピュータ202にメッシュ・データ中の頂点データに関する情報を個別に送信させ、次いでターゲット・コンピュータ202にメッシュ・データ中の辺/面データに関する情報を送信させることである。

    したがって、ターゲット・コンピュータ202は、メッシュ・データ中の頂点データに関する情報を受信すると、従来の技術に既存のあらかじめ定義されたアルゴリズムを使用して派生メッシュ・モデルを推論的に構築し、構築した派生メッシュ・モデルを表示し、メッシュ・データ中の辺/面データに関する情報を受信した後に派生メッシュ・モデルを修正することになる。 辺/面データに関する情報を送信するのと同時に頂点データに関する情報を送信する必要がないので、大量の送信帯域幅が節約され、頂点データに関する情報、および辺データもしくは面データに関する情報をターゲット・コンピュータ202に滞りなく、適時に送信することができる。 頂点データに関する情報がターゲット・コンピュータに到着した後、ターゲット・コンピュータは、頂点データに関する情報に従ってメッシュ・モデルを推論的に構築し、元の3Dグラフィックスに近い3Dグラフィックスを表示することができる。 その後、辺データまたは面データに関する情報がターゲット・コンピュータに到着した後、ターゲット・コンピュータは、表示される3Dグラフィックが3Dグラフィックスと同じになるまで、表示される3Dグラフィックを修正することができる。

    次に図3を参照し、図2に示すメッシュ・モデル230例にとって、三次元モデルのメッシュ・データを処理するための方法を説明する。 図3は、本発明の一実施形態による三次元モデルのメッシュ・データを処理するための方法のフロー・チャートを概略的に示す。

    図3に示す方法は、ソース・コンピュータ201で実行することができる。 処理は、次のようである。

    まず、ステップS310において、元のメッシュ・モデルのメッシュ・データが取得される。

    元のメッシュ・モデルは、ターゲット・コンピュータ202で表示されるべきメッシュ・モデルである。 元のメッシュ・モデル・データのメッシュ・データは、頂点データ、ならびに辺データまたは面データを含む。

    メッシュ・モデルは、例えば、図2のメッシュ・モデル230とすることができ、そのメッシュ・データは、頂点リスト240および辺リスト260によって表されるか、または等価なものとして、頂点リスト240および面リスト250によって表される。 これらのリストのデータは、事前にデータベース(図示せず)に格納することができる。 したがって、ステップS310において、メッシュ・モデルのメッシュ・データは、データベースから取得することができる。

    ステップS320において、あらかじめ定義されたメッシュ・モデル構築アルゴリズムを使用することによって元のメッシュ・モデルの頂点データから、派生メッシュ・モデルが構築される。

    従来の技術には、様々なメッシュ・モデル構築アルゴリズムがある。 これらのアルゴリズムは、入力として頂点の集合を用いて派生メッシュ・モデルを推論的に計算することができるように設計される。 ドロネー三角形分割アルゴリズム(Delaunay Triangulation Algorithm)はこのようなアルゴリズムである。 他の同様のアルゴリズムは、例えば「A New Voronoi-Based Surface Reconstruction Algorithm」(Amenta et al., SIGGRAPH 1998)および「PoissonSurface Reconstruction」(Kazhdan et al, Symposium onGeometry Processing 2006)に見つけることができる。 これらのアルゴリズムから、あるアルゴリズムをあらかじめ定義されたメッシュ・モデル構築アルゴリズムとなるように決定することができる。

    本発明の一実施形態によれば、ステップS320においてドロネー三角形分割アルゴリズムを選択することができる。

    ドロネー三角形分割アルゴリズムは、頂点の集合から頂点間の空間幾何学的関係に基づいて、頂点間に辺を生成することができ、それによって三角形面の集合を構築し、ひいては目標とするメッシュ・モデルを構築することができる。 詳細には、ドロネー三角形分割アルゴリズムは、各三角形面の3つの内角の最小の値を最大にしようと試みることによって、間に接続線が存在する頂点を推論的に計算することができる。 ほとんどの場合、ドロネー三角形分割アルゴリズムは、細く、長すぎる形状の三角形(例えば、内角の少なくとも1つが10度未満である三角形)を生成しない。 いくつかの文献に開示された実験結果から、多数の頂点の場合、ドロネー三角形分割アルゴリズムは、頂点の間の辺について比較的正確な推測を行うことができることがわかる。

    図2に示すメッシュ・モデル230を例にとる。 メッシュ・モデル、すなわち派生メッシュ・モデルは、入力としてメッシュ・モデル230の頂点集合VS={v1,v2,v3,v4,v5,v6,v7,v8,v9,v10}を用いてドロネー三角形分割アルゴリズムを使用して構築することができる。 派生メッシュ・モデルは、図4に参照符号Mkで示す。

    図4に示すように、派生メッシュ・モデルMkは、正確にはメッシュ・モデル230と同じではないが、メッシュ・モデル230との一定の類似性を有する。 例えば、派生メッシュ・モデルMkについては、頂点v1と頂点v6との間の辺、および頂点v7と頂点v8との間の辺があるが、メッシュ・モデル230については、頂点v1と頂点v6との間に辺はなく、また頂点v7と頂点v8との間に辺はない。 また、メッシュ・モデル230については、頂点v3と頂点v4との間の辺、および頂点v6と頂点v9との間の辺があるが、派生メッシュ・モデルMkについては、頂点v3と頂点v4との間に辺(点線で示す)はなく、また頂点v6と頂点v9との間に辺(点線で示す)はない。

    ステップS330において、元のメッシュ・モデルのメッシュ・データおよび派生メッシュ・モデルのメッシュ・データを比較して、派生メッシュ・モデルのエラー・データを取得する。

    元のメッシュ・モデルのメッシュ・データは、元のメッシュ・モデルを定義するためのデータであり、例えば頂点データおよび辺データ/面データである。 派生メッシュ・モデルのメッシュ・データは、派生メッシュ・モデルのデータを定義するためのデータであり、例えば頂点データおよび辺データ/面データである。 上述のように、ドロネー三角形分割アルゴリズムは推論的アルゴリズムである。 アルゴリズムによりメッシュ・モデル230の頂点データから構築された派生メッシュ・モデルは、メッシュ・モデル230と厳密には同じではない可能性があり、すなわち、派生メッシュ・モデルと元のメッシュ・モデル230との間にはいくつかの差異またはエラーがある。

    このようなエラーは、元のメッシュ・モデルのメッシュ・データを、派生メッシュ・モデルMkのメッシュ・データと比較することによって確認することができる。

    本発明の一実施形態によれば、元のメッシュ・モデルのメッシュ・データと派生メッシュ・モデルのメッシュ・データとの上記の比較は、元のメッシュ・モデルの辺データを派生メッシュ・モデルの辺データと比較することを含み、エラー・データは、余分な辺データおよび欠けている辺データを含み、余分な辺データは、派生メッシュ・モデルに存在するが元のメッシュ・モデルには存在しないあらゆる辺を含み、欠けている辺データは、元のメッシュ・モデルに存在するが派生メッシュ・モデルには存在しないあらゆる辺を含む。

    例えば、元のメッシュ・モデル230の辺データを派生メッシュ・モデルMkの辺データと比較することによって、Mkの派生メッシュ・モデルのエラー・データは、次のように取得することができる:
    余分な辺データ:頂点v1と頂点v6との間の辺、および頂点v7と頂点v8との間の辺。
    欠けている辺データ:頂点v3と頂点v4との間の辺および頂点v6と頂点v9との間の辺。

    一般的には、派生メッシュ・モデルの余分な辺データV(i,+e)は、次の式(1)に従って派生メッシュ・モデルの頂点に基づいて表すことができる。
    V(i,+e)={e(i,1,+),e(i,2,+),...e(i,p,+)}......(1)
    ここで、プラス記号「+」は「余分」を示し、表現「e(i,1,+)」は頂点iと頂点1との間の余分な辺を示し、...「e(i,p,+)」は頂点iと頂点pとの間の余分な辺を示す。 言い換えれば、式(1)によって、すべての余分な辺は、派生メッシュ・モデルの頂点iの隣接辺から示すことができる。

    例えば、元のメッシュ・モデル230では、頂点v1の隣接辺は、頂点v1と頂点v2との間、頂点v3との間、および頂点v4との間の辺e1、辺e2、辺e3をそれぞれ含む。 派生メッシュ・モデルMkの頂点v1については、さらに隣接辺、すなわち頂点v1と頂点v6との間の辺がある。 したがって、頂点v1と頂点v6との間の辺は余分な辺である。 余分な辺は、余分な辺データV(1,+e)において「{e(1,6,+)}」として示すことができる。

    同様に、頂点v7と頂点v8との間の辺もまた余分な辺であり、これは余分な辺データV(7,+e)において「{e(7,8,+) }」と示す。

    一般的に、n個の頂点(1...n)を有する派生メッシュ・モデルの余分な辺の集合は、VS1で示され、ここでVS1={V(1,+e),V(2,+e)...V(n,+e)}......(2)
    である。

    その結果、派生メッシュ・モデルMkの余分な辺の集合は:
    VS1={{e(1,6,+)},{e(7,8,+)}}
    である。

    一般的に、派生メッシュ・モデルの欠けている辺データV(i,−e)は、次の式(3)により派生メッシュ・モデル中の頂点に基づいて表すことができる。
    V(i,−e)={e(i,1,−),e(i,2−),…e(i,p−)}. . . . . . (3)
    ここでマイナス記号「−」は、「欠けている」ことを示し、表現「e(i,1,−)」は、頂点iと頂点1との間の欠けている辺を示し、...「e(i,p,−)」は、頂点iと頂点pとの間の欠けている辺を示す。 言い換えれば、式(3)によって、派生メッシュ・モデルの頂点iの隣接辺から、すべての欠けている辺を示すことができる。

    例えば、派生メッシュ・モデルMkでは、頂点v3と頂点v4との間の辺はないが、元のメッシュ・モデル230では、v3とv4との間の辺がある。 したがって、派生メッシュ・モデルの頂点v3と頂点v4との間の辺は、欠けている辺であり、これを欠けている辺データV(3,−e)において「{e(3,4,−)}」と示すことができる。

    同様に、派生メッシュ・モデルMkの欠けている辺は、頂点v6と頂点v9との間の辺も含み、これを欠けている辺データV(6,−e)において「{e(6,9,−)}」と示すことができる。

    一般的に、n個の頂点(1...n)を有する派生メッシュ・モデルの欠けている辺の集合は、VS2で示され、ここでVS2={V(1,−e),V(2,−e). . . V(n,−e)}......(4)
    である。

    例えば、派生メッシュ・モデルMkについては、VS2={{e(3,4,-)},{e(6,9,-)}}である。

    したがって、派生メッシュ・モデルのエラー・データの集合は、VS ERROR =VS1+VS2、すなわちVS ERROR ={V(1,+e),V(2,+e). . . V(n,+e),V(1,−e),V(2,−e). . . V(n,−e)}
    である。

    例えば、派生メッシュ・モデルMkのエラー・データ集合VS ERROR ={{e(1,6,+)},{e(7,8,+)},{e(3,4,−)},{e(6,9,−)}}である。

    本発明の別の実施形態によれば、元のメッシュ・モデルのメッシュ・データと派生メッシュ・モデルのメッシュ・データとの上記の比較は、元のメッシュ・モデルの面データを派生メッシュ・モデルの面データと比較することを含み、エラー・データは、余分な面データと欠けている面データとを含み、余分な面データは、派生メッシュ・モデルに存在するが元のメッシュ・モデルには存在しないあらゆる面を含み、欠けている面データは、元のメッシュ・モデルに存在するが派生メッシュ・モデルには存在しないあらゆる面を含む。

    図2と併せて上述したように、辺データと面データとの間には、一種の等価性がある。 先の1つの実施形態で説明したように元のメッシュ・モデルの辺データと派生メッシュ・モデルの辺データとの比較によれば、元のメッシュ・モデルの面データと派生メッシュ・モデルの面データとの比較方法を理解し、エラー・データ、すなわち余分な面データおよび欠けている面データを取得することは困難ではない。

    上記のステップS310〜S330は、ネットワーク203を介してターゲット・コンピュータ202に送信され、メッシュ・モデルのレンダリングに使用されるデータに行われる前処理である。 明らかに、前処理は、いかなる時および処理においても行うことができる。 前処理の結果を、格納することができる。

    上記の前処理が行われ、前処理の結果が格納された後、データは、ネットワーク203を介して受信側202に送信することができる。

    ネットワークを介して受信側202にデータを送信するとき、まずステップS340が行われる。

    ステップ340において、元のメッシュ・モデルに関連する頂点データが送信される。

    本発明の一実施形態によれば、元のメッシュ・モデルに関連する頂点データは、頂点の集合VS={v1,v2,v3,v4,v5,v6,v7,v8,v9,v10}のような、元のメッシュ・モデルの頂点データである。

    あるいは、元のメッシュ・モデルに関連する頂点データは、元のメッシュ・モデルの頂点データから導出された頂点データであることもある。

    本発明の一実施形態によれば、導出頂点データは、ステップ340の前に元のメッシュ・モデルの頂点データに基づいて生成することができる。

    したがって、ステップ340において、元のメッシュ・モデルに関連する頂点データは、導出頂点データであることもある。

    次に図5〜7を参照して、導出頂点データを生成する方法について説明する。 図5〜7は、元のメッシュ・モデルに関連する頂点データを概略的に示す。 図5は、元のメッシュ・モデルの頂点集合VSを示す。 図に示すように、図5の点線ブロック中に示す頂点は、量および幾何学的位置に関して図2のメッシュ・モデル230の頂点と同じである。

    本発明の1つの実施形態によれば、頂点集合は、いくつかの部分集合、すなわち、VS_1、VS_2、. . . VS_x(x>1)に分けることができる。 部分集合のそれぞれに含まれる頂点データは、導出頂点データ、さら削減頂点データである。 例えば、頂点集合VSは、2つの部分集合、VS_1={v3,v6,v7}と、VS_2=VS−VS_1とに分けられる。 図6の点線ブロック中の頂点は、頂点部分集合VS_2に含まれる頂点を表す。 図5と比べると、図6の点線ブロックには頂点v3、v6、およびv7がない、すなわち頂点部分集合VS_2は、頂点v3、v6、およびv7を含まない。

    元のメッシュ・モデルの頂点集合が非常に大きく、帯域幅が不十分であるという状況下では、1つの頂点部分集合の頂点データ、例えば部分集合VS_2の頂点データをまず送信することができる。 次に、他の頂点部分集合の頂点データ、例えば部分集合VS_1の頂点データを送信することができる。

    本発明の一実施形態によれば、元のメッシュ・モデルの頂点集合VSが非常に大きい場合、頂点集合VS中の頂点をクラスタリングし、生成された頂点集合のデータを、派生頂点データとして使用することができる。 この派生頂点データは、削減頂点データである。 例えば、図7は、頂点集合VS中の頂点のクラスタリングの結果として生成された、導出頂点データを示す。 図7を図5と比較すると、図5では、頂点v3、v6、およびv7が、図4Dの点線ブロック中の頂点Vclに削減されていることがわかり、頂点Vclは頂点v3、v6、およびv7をクラスタリングした結果として生成された頂点であることを意味する。 クラスタリングにより生成された頂点Vclならびにクラスタリング前の頂点v3、v6、およびv7は、マッピング関係を有する、すなわちVcl<−>{v3,v6,v7}である。 マッピング関係もまた、一種の導出頂点データであり、元のメッシュ・モデルに関連する頂点データに属する。

    元のメッシュ・モデルの頂点集合が大きく、帯域幅が不十分である場合、図7に示す導出頂点データ、すなわち{v1,v2,v4,v5,v8,v9,v10,Vcl}をまず送信することができる。 ターゲット・コンピュータは、図7に示す導出頂点データに基づいて3Dグラフィックスをレンダリングすることができる。 次に、マッピング関係、すなわちVcl<−>{v3,v6,v7}が送信される。 ターゲット・コンピュータは、その後に受信されたマッピング関係Vcl<−>{v3,v6,v7}に従って頂点データをVSであると判断し、VSに従って3Dグラフィックスを表示することができる。 このようにして、三次元グラフィックスをプログレッシブに表示することができる。

    元のメッシュ・モデル関連の頂点データは、ステップ340において送信され、ターゲット・コンピュータ202によって使用されて、三次元メッシュ・モデルを表示することができる。 これについては、図8と併せて以下の記述でさらに説明する。

    次に、ステップS350において、派生メッシュ・モデルMkのエラー・データが送信される。 例えば、派生メッシュ・モデルMkのエラー・データ集合、すなわちVS ERROR ={{e(1,6,+)},{e(7,8,+)},{e(3,4,−)},{e(6,9,−)}}が送信されることがある。

    本発明の一実施形態によれば、派生メッシュ・モデルのエラー・データを送信することは、エラー・データを複数のエラー・データ部分集合に分割することと、エラー・データ部分集合のすべてが送信されるまで、毎回、エラー・データ部分集合の1つを送信することとを含む。

    例えば、派生メッシュ・モデルのエラー・データ集合VS ERRORは、次のようにいくつかのエラー・データ部分集合に分割することができる:
    {V(1,+e),V(2,+e),V(1,−e),V(2,−e)}
    {V(3,+e),V(4,+e),V(3,−e),V(4,−e)}
    ...
    {V(n−1,+e),V(n,+e),V(n−1,−e). . . V(n,−e)}

    エラー・データ部分集合のすべてが送信されるまで、毎回、エラー・データ部分集合の1つが送信される。

    例えば、エラー・データ部分集合VS ERROR ={{e(1,6,+)},{e(7,8,+)},{e(3,4,−)},{e(6,9,−)}}は、2つのエラー・データ部分集合:{{e(1,6,+)},{e(3,4,−)}}および{{e(6,9,−)},{e(7,8,+)}}に分割することができる。 次に、2つのエラー・データ部分集合は、それぞれ送信される。

    上記の2つのエラー・データ部分集合は単に例であることに注意すべきである。 実際の適用例では、各エラー・データ部分集合のデータ量は、例のデータ量よりもはるかに多い。 しかしながら、個々のエラー・データ部分集合のデータ量は、エラー・データ集合VS ERRORのデータ量よりも少ない。 ネットワーク203の帯域幅が不十分である場合、ソース・コンピュータ201が帯域幅の状態に従ってより少ないデータ量のエラー・データ部分集合を送信すると、エラー・データ集合は適時にターゲット・コンピュータ202に到着することができる。

    ステップS350において送信されたエラー・データは、三次元メッシュ・モデルをレンダリングするためにターゲット・コンピュータ202によって使用されることが可能である。

    以下に、図8を参照して、元のメッシュ・モデルに関連する頂点データおよびソース・コンピュータ201から送信された派生メッシュ・モデルのエラー・データに対してそれぞれターゲット・コンピュータ202によって行われる処理について説明する。

    図8は、本発明の一実施形態に従って三次元メッシュ・モデルをプログレッシブに表示するための方法のフロー・チャートを示す。 図8に示す方法は、ターゲット・コンピュータ202で実行することができる。 続いて処理が行われる。

    ステップS510において、三次元モデルのデータが、ネットワーク203を介してソース・コンピュータ201から受信される。

    図3と併せた上記の説明から、ソース・コンピュータ201からターゲット・コンピュータ202に送信されるデータは、元のメッシュ・モデルに関連する頂点データであることがあり(ステップS340)、導出メッシュ・モデルのエラー・データであることもある(ステップS350)ことがわかる。

    ステップS520において、ターゲット・コンピュータ202は、対応する処理を行うために受信データの型を判断する。 データの型を判断を実施する様々な方法がある。 例えば、単純な方法は、送信側によって送信されるデータの型を区別するためにデータ型を示す識別子を設定することである。

    受信データの様々な型に応じて、ターゲット・コンピュータ202は様々な処理を行うことになる。 本発明の一実施形態によれば、プリズム・ブロック521および522にそれぞれ示すように、受信側は、単に頂点データおよびエラー・データの処理を行うことを要求される。

    受信データが元のメッシュ・モデルに関連する頂点データであることに応じて、ステップS530において以下の動作が行われる:
    あらかじめ定義されたメッシュ・モデル構築アルゴリズムを使用することによって元のメッシュ・モデルの頂点データから、派生メッシュ・モデルを構築することと、
    構築された派生メッシュ・モデルに基づいて、三次元モデルを表示すること。

    本発明の一実施形態によれば、あらかじめ定義されたメッシュ・モデル構築アルゴリズムは、ドロネー三角形分割アルゴリズムとすることができる。

    あらかじめ定義されたモデル構築アルゴリズムは、ソース・コンピュータ202によって使用されるメッシュ・モデル構築アルゴリズムと同じものであるべきである。 実際には、あらかじめ定義されたメッシュ・モデル構築アルゴリズムは、ターゲット・コンピュータ上で展開されるメッシュ・モデル構築アルゴリズムとすることができ、これはあらかじめ指定される。 ターゲット・コンピュータ上で様々なメッシュ・モデル構築アルゴリズムが展開される場合、ソース・コンピュータからの通知に基づいていかなる時でもメッシュ・モデル構築アルゴリズムの1つを選択することもできる。

    図3と併せて上述した説明では、あらかじめ定義されたメッシュ・モデル構築アルゴリズムを用いて辺データまたは面データを生成する方法を説明した。

    図3と併せて上述したステップ340についての説明では、ステップS340で送信される元のメッシュ・モデルに関連する頂点データは、元のメッシュ・モデルの頂点データ、または導出頂点データとすることができることが指摘されている。

    本発明の一実施形態によれば、元のメッシュ・モデルに関連する頂点データは、元のメッシュ・モデル230の頂点データ、すなわち頂点の集合VS={v1,v2,v3,v4,v5,v6,v7,v8,v9,v10}である。 この場合、頂点集合VSに従って、図4に示す派生メッシュ・モデルMkが構築される。 次に、三次元メッシュ・モデルは、派生メッシュ・モデルMkのデータに従って表示される。

    本発明の一実施形態によれば、元のメッシュ・モデルに関連する頂点データは、例えば上述の図6または7に示す導出頂点データのような、導出頂点データである。 この場合、派生メッシュ・モデルMkは、図6または7に示す頂点集合に従って構築されることも可能である。 次に、三次元メッシュ・モデルは、派生メッシュ・モデルMkのデータに従って表示される。

    ステップ530の後、処理はステップS510に戻ってデータの受信を続ける。

    受信データが派生メッシュ・モデルのエラー・データであることに応じて、現在表示されている三次元メッシュ・モデルは、ステップS540において受信したエラー・データで修正される。

    上記で図3と併せて述べたように、派生メッシュ・モデルのエラー・データは、次のうちの少なくとも1つ、すなわち、余分な辺データ、欠けている辺データ、余分な面データ、および欠けている面データのうちの少なくとも1つを含む。

    本発明の一実施形態によれば、エラー・データが余分な辺データを含むことに応じて、余分な辺データ中の辺は、現在表示されている三次元メッシュ・モデルから削除される。 エラー・データが欠けている辺データを含むことに応じて、欠けている辺データ中の辺は、現在表示されている三次元メッシュ・モデルに追加される。 エラー・データが余分な面データを含むことに応じて、余分な面データ中の面は、現在表示されている三次元メッシュ・モデルから削除される。 また、エラー・データが欠けている面データを含むことに応じて、欠けている面データ中の面は、現在表示されている三次元メッシュ・モデルに追加される。

    派生メッシュ・モデルのエラー・データは、派生メッシュ・モデルのメッシュ・データと元のメッシュ・モデルのメッシュ・データとの差異を表すデータ、または派生メッシュ・モデルのメッシュ・データと元のメッシュ・モデルのメッシュ・データとの差異を表すデータの部分集合、すなわちエラー・データの部分集合であることが可能である。

    図9〜11を参照すると、これらはターゲット・コンピュータ202において三次元メッシュ・モデルをレンダリングする処理を概略的に示している。 例えば図4に示す派生メッシュ・モデルMkが、ステップ530において頂点集合VSに基づいて構築されると仮定する。 その後、三次元メッシュ・モデルは、派生メッシュ・モデルMkのデータに従って表示される。 図9は、現在表示されている三次元メッシュ・モデルを示す。

    図3を参照して先に説明したように、例えばメッシュ・モデルMkから導出されるエラー・データは、VS ERROR ={{e(1,6,+)},{e(7,8,+)},{e(3,4,−)},{e(6,9,−)}}である。 すなわち、現在表示されている三次元メッシュについて、頂点v1と頂点v6との間の辺、頂点v7と頂点v8との間の辺は、余分な辺である。 頂点v3と頂点v4との間の辺、および頂点v6と頂点v9との間の辺は、欠けている辺である。

    エラー・データVS ERRORは、2つのエラー・データ部分集合、すなわち{{e(1,6,+)},{e(3,4,−)}}と、{{e(6,9,−)},{e(7,8,+)}}とに分割されると仮定する。

    ステップS510において受信されたデータがエラー・データ部分集合{{e(1,6,+)},{e(3,4,−)}}である場合、ステップS540において、頂点v1と頂点v6との間の辺は、図9に示す、現在表示されている三次元メッシュ・モデルから削除されることになり、頂点v3と頂点v4との間の辺が追加されることになる。 結果は、図10に示す通りである。

    ステップ540の後に、処理はステップS510に戻る。

    次に、ステップS510で受信されたデータは、エラー・データ部分集合{{e(6,9,−)},{e(7,8,+)}}である。 したがって、ステップS540において、頂点v7と頂点v8との間の辺は、図10に示す、現在表示されている三次元メッシュ・モデルから削除されることになり、頂点v6と頂点v9との間の辺は追加される。 結果は、図11に示す通りである。

    上記において、本発明の実施形態に従って、三次元モデルのメッシュ・データを処理するための方法、および三次元モデルをプログレッシブにレンダリングするための方法を説明している。 同じ発明の概念によれば、本発明はまた、三次元モデルのメッシュ・データを処理する装置、および三次元モデルをプログレッシブにレンダリングするための装置を提供する。

    図12を参照すると、この図は、本発明の一実施形態により三次元モデルのメッシュ・データを処理するための装置のブロック図を概略的に示している。

    一般的に、図12に示す装置は、データ取得ユニット710と、メッシュ・モデル構築ユニット720と、比較ユニット730と、頂点データ送信ユニット740と、エラー・データ送信ユニット750とを含む。

    データ取得ユニット710は、元のメッシュ・モデルのメッシュ・データを取得するように構成される。

    メッシュ・モデル構築ユニット720は、あらかじめ定義されたメッシュ・モデル構築アルゴリズムを使用することによって、元のメッシュ・モデルの頂点データから派生メッシュ・モデルを構築するように構成される。

    比較ユニット730は、元のメッシュ・モデルのメッシュ・データを派生メッシュ・モデルのメッシュ・データと比較して、派生メッシュ・モデルのエラー・データを取得するように構成される。

    頂点データ送信ユニット740は、元のメッシュ・モデルに関連する頂点データを送信するように構成される。

    エラー・データ送信ユニット750は、派生メッシュ・モデルのエラー・データを送信するように構成される。

    本発明の一実施形態によれば、あらかじめ定義されたメッシュ・モデル構築アルゴリズムは、ドロネー三角形分割アルゴリズムを含む。

    本発明の一実施形態によれば、比較ユニット730は、元のメッシュ・モデルの辺データを派生メッシュ・モデルの辺データと比較するように構成され、エラー・データは、余分な辺データおよび欠けている辺データを含み、余分な辺データは、派生メッシュ・モデルに存在するが元のメッシュ・モデルには存在しないあらゆる辺を含み、欠けている辺データは、元のメッシュ・モデルに存在するが派生メッシュ・モデルには存在しないあらゆる辺を含む。

    本発明の一実施形態によれば、比較ユニット730は、元のメッシュ・モデルの面データを派生メッシュ・モデルの面データと比較するように構成され、エラー・データは、余分な面データおよび欠けている面データを含み、余分な面データは、派生メッシュ・モデルに存在するが元のメッシュ・モデルには存在しないあらゆる面を含み、欠けている面データは、元のメッシュ・モデルに存在するが派生メッシュ・モデルには存在しないあらゆる面を含む。

    本発明の一実施形態によれば、エラー・データ送信ユニット750は、エラー・データを複数のエラー・データ部分集合に分割し、エラー・データ部分集合のすべてが送信されるまで、毎回、エラー・データ部分集合の1つを送信するように構成される。

    次に図13を参照すると、この図は、本発明の別の実施形態により三次元モデルのメッシュ・データを処理するための装置のブロック図を概略的に示している。

    一般に、図8に示す装置は、データ受信ユニット810と、データ型判断ユニット820と、メッシュ・モデル構築ユニット830と、3Dモデル・レンダリング・ユニット840とを含む。

    データ受信ユニット810は、三次元メッシュ・モデルをレンダリングするためにデータを受信するように構成される。

    データ型判断ユニット820は、データ受信ユニットによって受信されたデータの型を判断するように構成される。

    メッシュ・モデル構築ユニット830は、受信データが元のメッシュ・モデルに関連する頂点データであることに応じて、あらかじめ定義されたメッシュ・モデル構築アルゴリズムを使用することによって、元のメッシュ・モデルの頂点データから派生メッシュ・モデルを構築するように構成される。

    本発明の一実施形態によれば、元のメッシュ・モデルに関連する頂点データは、次のうちの1つ、すなわち元のメッシュ・モデルの頂点データ、元のメッシュ・モデルの頂点データから導出された頂点データのうちの1つを含む。

    3Dモデル・レンダリング・ユニット840は、構築された派生メッシュ・モデルを表示するように構成され、3Dモデル・レンダリング・ユニットはさらに、受信データが派生メッシュ・モデルのエラー・データであることに応じて、受信エラー・データを用いて、表示されている三次元メッシュ・モデルを修正するように構成される。

    本発明の一実施形態によれば、あらかじめ定義されたメッシュ・モデル構築アルゴリズムは、ドロネー三角形分割アルゴリズムを含む。

    本発明の一実施形態によれば、エラー・データは、次のうちの少なくとも1つ、すなわち、余分な辺データ、欠けている辺データ、余分な面データ、および欠けている面データのうちの少なくとも1つを含む。 3Dモデル・レンダリング・ユニット840は、エラー・データが余分な辺データを含んでいることに応じて、現在表示されている三次元メッシュ・モデルから余分な辺データの辺を削除し、エラー・データが欠けている辺データを含んでいることに応じて、現在表示されている三次元メッシュ・モデルに欠けている辺データの辺を追加し、エラー・データが余分な面データを含んでいることに応じて現在表示されている三次元メッシュ・モデルから余分な面データの面を削除し、エラー・データが欠けている面データを含んでいることに応じて、現在表示されている三次元メッシュ・モデルに欠けている面データの面を追加するように構成される。

    本発明の諸実施形態により三次元モデルを処理するための装置について、上述している。 本発明のID連携(identity federation)構成を構成するための方法の諸実施形態の詳細な説明を前の節で行っているが、上記における装置の説明は、繰り返しの内容、または方法の説明から容易に導き出すことができる内容を省略している。

    上記の説明は、単に例示であり、本発明を限定することを目的としていないことに注意すべきである。 本発明の他の実施形態では、この方法はより多くのステップ、またはより少ないステップ、または異なるステップを有する可能性があり、ステップを番号付けするのは、単に説明をより簡潔に、さらに明確にするためであって、各ステップ間の順序を厳密に限定するためではなく、諸ステップの順序は、説明とは異なる可能性がある。

    したがって、いくつかの実施形態では、上記の1つまたは複数のオプションのステップを省略することができる。 各ステップの特定の実施形態は、説明とは異なる可能性がある。 これらの変形はすべて、本発明の趣旨および範囲に含まれる。

    本発明は、ハードウェアの実施形態、ソフトウェアの実施形態、またはハードウェア構成要素とソフトウェア構成要素とを含む実施形態の形を採用することができる。 好ましい実施形態では、本発明は、これらに限定ではないが、ファームウェア、常駐ソフトウェア、マイクロコードなどを含む、ソフトウェアとして実装される。

    さらに、本発明は、コンピュータから利用できる、あるいはコンピュータもしくは任意の命令実行システムによって、またはこれらと接続して使用するためのプログラム・コードを提供するコンピュータ可読媒体によってアクセスできる、コンピュータ・プログラム製品として実装されることが可能である。 説明のために、コンピュータ使用可能媒体またはコンピュータ可読媒体は、命令実行システム、装置、またはデバイスによって、あるいはこれらと接続して使用するためのプログラムを収容する、格納する、伝達する、伝搬するまたは搬送することができるいかなる有形手段とすることもできる。

    媒体は、電気、磁気、光、電磁気、赤外線、または半導体のシステム(装置もしくはデバイス)、もしくは伝搬媒体とすることができる。 コンピュータ可読媒体の例には、半導体またはソリッド・ストレージ・デバイス、磁気テープ、ポータブル・コンピュータ・ディスケット、ランダム・アクセス・メモリ(RAM)、読取り専用メモリ(ROM)、ハード・ディスク、および光ディスクが含まれる。 現在の光ディスクの例には、コンパクト・ディスク読取り専用メモリ(CD−ROM)、コンパクト・ディスク読取り/書込み(CD−R/W)、およびDVDが含まれる。

    プログラム・コードを格納する、または実行するように適合されたデータ処理システムは、直接に、またはシステム・バスを介して、メモリ素子に結合された少なくとも1つのプロセッサを含む。 メモリ素子は、プログラム・コードを実際に実行中に利用できるローカル・メモリ、大容量メモリ、および実行中に大容量メモリからコードを検索するための回数を減らすためにプログラム・コードの少なくとも一部に対して一次記憶装置を提供するキャッシュを含むことができる。

    入力/出力すなわちI/O装置(キーボード、ディスプレイ、ポインティング・デバイスなどを含むが、これらに限らない)は、直接に、または中間I/Oコントローラを介して、システムに接続することができる。

    本発明の真の趣旨から逸脱することなく、本発明のそれぞれの実施形態に対して変更および改変を行うことができることを、前述の説明から理解されたい。 本明細書中の説明は、例示となることを目的としており、限定するものではない。 本発明の範囲は、添付の特許請求の範囲によってのみ限定される。

    本発明の真の趣旨から逸脱することなく、本発明のそれぞれの実施形態に対して変更および改変を行うことができることを、前述の説明から理解されたい。 本明細書中の説明は、例示となることを目的としており、限定するものではない。 本発明の範囲は、添付の特許請求の範囲によってのみ限定される。

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈