JP7049807B2 - パラメトリックビュー関数に基づくデータベースの照会 - Google Patents

パラメトリックビュー関数に基づくデータベースの照会 Download PDF

Info

Publication number
JP7049807B2
JP7049807B2 JP2017209113A JP2017209113A JP7049807B2 JP 7049807 B2 JP7049807 B2 JP 7049807B2 JP 2017209113 A JP2017209113 A JP 2017209113A JP 2017209113 A JP2017209113 A JP 2017209113A JP 7049807 B2 JP7049807 B2 JP 7049807B2
Authority
JP
Japan
Prior art keywords
signature
modeled object
parametric
function
database
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017209113A
Other languages
English (en)
Other versions
JP2018109948A (ja
Inventor
リエティア アンドレ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dassault Systemes SE
Original Assignee
Dassault Systemes SE
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dassault Systemes SE filed Critical Dassault Systemes SE
Publication of JP2018109948A publication Critical patent/JP2018109948A/ja
Application granted granted Critical
Publication of JP7049807B2 publication Critical patent/JP7049807B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/289Object oriented databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/51Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/53Querying
    • G06F16/532Query formulation, e.g. graphical querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/56Information retrieval; Database structures therefor; File system structures therefor of still image data having vectorial format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5854Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using shape and object relationship
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/757Matching configurations of points or features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • G06V20/647Three-dimensional objects by matching two-dimensional images to three-dimensional objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Library & Information Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Computational Linguistics (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Architecture (AREA)

Description

本発明は、コンピュータプログラムおよび及びシステムの分野に関し、より具体的には、それぞれが現実の物体の物理的属性を表すモデル化オブジェクトを含むデータベースを照会/構築するための方法、システム、およびプログラムと、そのようなデータベースに関する。
オブジェクトの設計、エンジニアリング、製造のため、多数のシステムおよびプログラムが市場に提供されている。CADは、コンピュータ支援設計(Computer-Aided Design)の略語であり、例えば、オブジェクトを設計するためのソフトウェア・ソリューションに関する。CAEは、コンピュータ支援エンジニアリング(Computer-Aided Engineering)の略語であり、例えば、将来の製品の物理的挙動をシミュレーションするためのソフトウェア・ソリューションに関する。CAMは、コンピュータ支援製造(Computer-Aided Manufacturing)の略語であり、例えば、製造工程および動作を定義するためのソフトウェア・ソリューションに関する。このようなコンピュータ支援設計システムにおいて、グラフィカル・ユーザ・インターフェースは、技術の効率に関して、重要な役割を果たす。これらの技術は、製品ライフサイクル管理(Product Lifecycle Management: PLM)システムに組み込むことができる。PLMとは、企業が、拡張エンタープライズの概念全体にわたって、製品データを共有し、共通の工程を適用し、構想に始まり製品寿命の終わりに至る製品開発のための企業知識を活用するのを支援するビジネス戦略を指す。ダッソー・システムズが提供するPLMソリューション(製品名CATIA、ENOVIA、DELMIA)は、製品エンジニアリング知識をオーガナイズするエンジニアリング・ハブ、製品エンジニアリング知識を管理する製造ハブ、およびエンジニアリング・ハブと製造ハブの両方に対するエンタープライズ統合と接続を可能にするエンタープライズ・ハブを提供する。全てのシステムは、製品、工程、リソースを結ぶオープンなオブジェクトモデルを提供し、最適化された製品定義、製造準備、生産およびサービスを推進する、動的な知識ベースの製品作成および意思決定支援を可能にする。
このような文脈、およびその他の文脈において、データベース内の既存のモデル化オブジェクトを、異なる基準に従って検索する必要がある。
所定の基準に従ったデータベース内のモデル化オブジェクトの検索は、多くの場合、3つのステップで実行される可能性がある。第1のステップは、モデル化オブジェクトに対して、少なくとも、いわゆる「署名」または「記述子」の関数の値を算出して、データベースの各モデル化オブジェクトに関連付けることである。署名関数は、「署名」と呼ばれ、入力の典型的な側面を合成するコンパクトな情報を出力する関数である。第2のステップは、ユーザが、例えば特定の署名の値を設定することにより、クエリを特定することである。この署名の値は、選択したオブジェクトに対応し得るものであり、その目的は、データベースにおける類似のオブジェクトを見つけ出すことであってもよい。また、署名は設計中のオブジェクトに対応し得るものであり、その目的は、この場合も、データベースにおける類似のオブジェクト見つけ出すことである。第3のステップは検索ステップである。これは、システムが、ユーザが入力した署名の値に対応する署名の値を有するデータベースのオブジェクトを見つけるためのものである。このステップでは、大量の署名の値が比較される。
署名は、理想的には、必要とするメモリが少なく、算出が簡単で、比較が非常に速く、なおかつ高い再現率と高い適合率で、関連する結果につながるように設計することができる。
図1は、既存の検索ソフトウェア製品を例示した図である。
これら既存のソフトウェアは、データベース内の3Dモデル化オブジェクトを索引付けするために、平面シルエットおよびビュー方向に基づく、数値署名を用いる。以下の論文が一例を提供している:Raluca Diana Petre,Zaharia Titus,Francoise Preteux,An experimental evaluation of view-based 2D/3D indexing methods,2010 IEEE 26th Convention of Electrical and Electronics Engineers in Israel,2010年11月,イスラエル,924~928ページ。
各3Dモデル化オブジェクトは、データベース内の複数の数値署名を生成し、各数値署名は当該オブジェクトおよびそれぞれのビュー方向に従って算出される。データベースのインデックスは、数値署名の空間内における有限の(しかし非常に大きな)点の集合として理解できる。データベースへの入力はオフラインで実行される。入力された3Dモデル化オブジェクトの平面シルエットが与えられれば、検索は、その数値署名を算出し、データベース内で最も近いものを見つけるものとなり得る。これにより、この最も近い数値署名に関連付けられた、類似の3Dモデル化オブジェクト、および、ビュー方向が出力される。この演算は、ユーザの指示に従って、インラインで実行される。
しかし、これら既存のソフトウェアは、場合により不正確なものとなる。これについては、図2を参照して例示する。
2つの3Dモデル化オブジェクトAおよびBが、それぞれの署名とともに、データベースに格納されていると仮定する。また、入力オブジェクトに最も近いオブジェクトを見つけるためにデータベースの照会を行い、Aが物理的に正しい結果であり、クエリによって返されると仮定する。
ここで、σ(A,U)およびσ(A,V)を、それぞれ、データベースに格納されたビュー方向UおよびVに応じた3DオブジェクトAの数値署名とする。σ(B,D)を、データベースに格納されたビュー方向Dに応じた3DオブジェクトBの数値署名とする。σをクエリにより提供された入力オブジェクトのシルエットの数値署名とする。明らかに、図に示されるように、σに最も近いデータベースの数値署名は、σ(B,D)であり得るから、オブジェクトBが、データベースにおける、入力オブジェクトに最も類似したオブジェクトとして(誤って)見つけ出される。照会の結果としてAが出力された場合、ビュー方向Wに応じたオブジェクトAの数値署名σ(A,W)もデータベースに格納されている必要がある。しかし、説明のために図に示されているが、また、ビュー方向WはUおよびVに近いが、データベースの作成方法によっては、数値署名σ(A,W)は、単純に、データベースに存在しないことがある。そのような場合、残念ながら、正しい解決策は得られない。これは、明らかな記憶容量に関する理由により、単に、データベースは、3Dオブジェクトが取り得るすべての数値署名を格納することができないためである。
したがって、既存の文献にもかかわらず、依然として、データベース内のモデル化オブジェクト検索の分野を改善する必要性がある。
したがって、モデル化オブジェクトを含むデータベースを照会するための、コンピュータによって実施される方法(「照会方法」または「インライン処理」)が提供される。各モデル化オブジェクトは、それぞれ、現実の物体の物理的属性を表す。データベースは、各モデル化オブジェクトについて、単体複体(simplicial complex)を含む。各モデル化オブジェクトの単体複体は、パラメトリックビュー関数と署名関数の合成による、パラメトリックビュー関数のパラメトリック領域のメッシュとモデル化オブジェクトからなる組の画像である。パラメトリックビュー関数は、パラメトリック領域、およびモデル化オブジェクト空間において連続している。署名関数は、パラメトリックビュー関数の範囲において連続している。
本方法は、署名関数の値を含む署名基準を含むクエリを提供することを含む。本方法はまた、照会の結果として、データベースの各モデル化オブジェクトを返すことを含む。各モデル化オブジェクトは、各モデル化オブジェクトが署名基準に準拠する単体複体を有する度合いに基づいて返される。
本照会方法は、以下の1つまたは複数を含むことができる。
・各モデル化オブジェクトが署名基準に準拠する単体複体を有する度合いは、署名基準の署名関数の値と署名関数の範囲内の各単体複体との間の距離に依存する。
・パラメトリックビュー関数のパラメトリック領域の各メッシュは、署名関数の範囲内における適合率基準に準拠する。
各単体複体は、非退化の単体のみを有する。
・物理的属性は3D形状であり、モデル化オブジェクトは3Dモデル化オブジェクトであり、パラメトリックビュー関数は2Dシルエット関数であり、パラメトリック領域はジオメトリビューパラメータの領域であり、かつ/あるいは、
・ジオメトリビューパラメータの領域は、ジオメトリビュー方向の領域を含む。
さらには、そのようなデータベースが提供される。そしてデータベースは、上記のように、モデル化オブジェクト、および、各モデル化オブジェクトについて、単体複体を含む。
さらには、そのようなデータベースを構築するための、コンピュータによって実施される方法(「構築方法」または「オフライン処理」)が提供される。
本構築方法は、以下の1つまたは複数を含むことができる。
・本構築方法は、モデル化オブジェクトを提供することと、各モデル化オブジェクトについて、それぞれの単体複体を決定することと、各モデル化オブジェクトと、それぞれの単体複体との関係を記憶することとを含む。
・各単体複体を決定することは、各モデル化オブジェクトについて、メッシュを提供することと、パラメトリックビュー関数と署名関数の合成によって、メッシュとモデル化オブジェクトからなる組の画像を決定することとを含み、かつ/あるいは、
・メッシュは頂点を有し、メッシュとモデル化オブジェクトからなる組の画像を、パラメトリックビュー関数と署名関数の合成によって決定することは、メッシュの各頂点について、モデル化オブジェクト上で、パラメトリックビュー関数と署名関数の合成を評価することを含み、パラメトリックビュー関数は頂点に対応するパラメトリック領域の値を用いてパラメータ化される。
本構築方法は、例えばコンピュータネットワークを介して、1人または複数のユーザによって、本照会方法の1つまたは複数の例も含むグローバルデータベース検索処理内で実行されてもよい。グローバル処理には、本構築方法のいくつかの例も含まれる。本構築方法の最初の例は、データベースを作成するために、照会方法の任意の例の前に実行されてもよい。本構築方法の他の例は、既に作成されたデータベースへの追加に対応して、いつでも実行することができる。
さらに、上記の方法のいずれか1つまたは任意の組み合わせを実行するための命令を含むコンピュータプログラムが提供される。
さらに、当該コンピュータプログラム、および/または、当該データベースを記録したデータ記憶媒体が提供される。
さらに、当該コンピュータプログラム、および/または、当該データベースを記録したメモリに接続されたプロセッサを備えるシステムが提供される。
以下、非限定的な例として、本発明の実施の形態を添付の図面を参照しつつ説明する。
先行技術を例示した図である。 先行技術を例示した図である。 本方法の例のフローチャートを示す。 本方法の例のフローチャートを示す。 本システムのグラフィカル・ユーザ・インターフェースの一例を示す。 本システムの一例を示す。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。 本方法の例を示す図である。
図3のフローチャートを参照して、モデル化オブジェクトを含むデータベースを照会するための、コンピュータによって実施される方法を提案する。各モデル化オブジェクトは、それぞれ、現実の物体の物理的属性を表す。データベースは、各モデル化オブジェクトについて、単体複体を含む。各モデル化オブジェクトの単体複体は、特定の関数による、パラメトリックビュー関数のパラメトリック領域のメッシュとモデル化オブジェクトからなる組の画像である。当該特定の関数は、パラメトリックビュー関数と署名関数の合成であり、パラメトリックビュー関数は、モデル化されたオブジェクトを入力として取り込んで出力を提供し、当該出力は署名関数の入力となる。パラメトリックビュー関数は、パラメトリック領域(すなわち、パラメトリックビュー関数のパラメータ値を含む空間)、およびモデル化オブジェクト空間(すなわち、モデル化オブジェクトを含む空間)において、連続している。署名関数は、パラメトリックビュー関数の範囲(すなわち、パラメトリックビュー関数によって出力された値を含む空間)において連続している。本照会方法は、署名基準を含むクエリを提供すること(S10)を含む。署名基準は、定義上、署名関数の(すなわち少なくとも1つの)値(すなわち、署名関数によって出力された値)を含む照会(または検索)基準である。本照会方法はまた、照会の結果として、データベースの各モデル化オブジェクトを返すこと(S20)を含む。各モデル化オブジェクトは、各モデル化オブジェクトが署名基準に準拠する単体複体を有する度合いに基づいて返される。このような照会方法は、データベース検索の分野を改善する。
また、図4のフローチャートを参照して、そのようなデータベースを構築するための、コンピュータによって実施される方法を提案する。本構築方法は、モデル化オブジェクトを提供すること(S50)と、各モデル化オブジェクトについて、それぞれの単体複体を決定すること(S60)と、各モデル化オブジェクトと、それぞれの単体複体との関係を(データベースに)記憶すること(S70)とを含む。データベースは、最初、第1の提供(S50)の後に作成される。この関係は、データベース工学の分野で知られているように、各単体複体を、それぞれのモデル化オブジェクトにリンクさせるデータである。データベースは、この関係に加えて、単体複体、および/または、モデル化オブジェクト、および/または、単体複体へのポインタ、および/または、モデル化オブジェクトを同様に格納していてもよい。このような構築方法により、改善された方法で検索可能なデータの構築が可能になる。
本方法は、コンピュータにより実施される。すなわち、本方法のステップ(あるいは略全てのステップ)が少なくとも1つのコンピュータ、または類似の任意のシステムによって実行される。よって本方法のステップは、コンピュータにより、完全に自動的に、あるいは半自動的に実行される可能性がある。例えば、本方法の少なくともいくつかのステップは、ユーザとコンピュータの対話を通じて始動されてもよい。求められるユーザとコンピュータの対話レベルは、想定される自動性のレベルに応じたものであって、ユーザの要望を実装する必要性との間でバランスをとるものとしてもよい。例えば、このレベルは、ユーザが設定し、かつ/あるいは、予め定義されていてもよい。
方法のコンピュータによる実施の典型的な例は、この目的に適したシステムを用いて本方法を実行することである。当該システムは、本方法を実行するための命令を含むコンピュータプログラムを記録したメモリに接続されたプロセッサ、および、グラフィカル・ユーザ・インターフェース(GUI)を備えていてもよい。メモリは、データベースを記憶していてもよい。メモリは、そのような記憶に適した任意のハードウェアであり、場合により、物理的に区別可能ないくつかの部分(例えば、プログラム用に1つ、場合によりデータベース用に1つ)を含む。
データベースとは、検索および取得用に最適化されたデータ(すなわち情報)の任意の集合(例えば所定の構造化言語、例えばSQLに基づく、例えばリレーショナルデータベース)を意味する。データベースは、メモリに格納されると、コンピュータによる迅速な検索および取得を可能にする。データベースは、実際、様々なデータ処理動作と連動して、データの記憶、取得、修正、および削除を容易にするよう構造化されている。データベースは、それぞれ1つまたは複数のフィールドからなるレコードに分割可能な1つのファイルあるいはファイルのセットからなっていてもよい。フィールドは、データ記憶の基本単位である。ユーザは、主としてクエリによってデータを取得してもよい。ユーザは、使用されているデータベース管理システムのルールに従って、キーワードとソートコマンドを用いて、多数のレコードにおけるフィールドを、迅速に、検索、再配置、グループ化、および選択し、特定の集積データに関するレポートを取得または作成することができる。
本方法は、一般に、モデル化オブジェクトを操作する。モデル化オブジェクトは、例えばデータベースに格納されたデータによって定義される任意のオブジェクトである。さらには、「モデル化オブジェクト」という表現は、データそのものも指す。システムの種類に応じて、異なる種類のデータによってモデル化オブジェクトが定義されてもよい。実際、システムは、CADシステム、CAEシステム、CAMシステム、PDMシステム、および/またはPLMシステムのうちの任意の組み合わせであってもよい。それら異なるシステムにおいて、モデル化オブジェクトは、対応するデータによって定義される。したがって、CADオブジェクト、PLMオブジェクト、PDMオブジェクト、CAEオブジェクト、CAMオブジェクト、CADデータ、PLMデータ、PDMデータ、CAMデータ、CAEデータについて言及することがある。しかしながら、モデル化オブジェクトは、これらのシステムの任意の組み合わせに対応するデータによって定義されてもよいため、これらのシステムは、互いに排他的なものではない。したがって、以下に示すこのようなシステムの定義から明らかなように、システムは、CAD兼PLMシステムであってもよい。
CADシステムは、少なくとも、CATIAのようなモデル化オブジェクトのグラフィック表現に基づくモデル化オブジェクトの設計に適した任意のシステムをも意味する。この場合、モデル化オブジェクトを定義するデータは、モデル化オブジェクトを表現可能にするデータを含む。CADシステムは、例えば、辺や線を用い、また、場合により面や曲面を用いて、CADモデル化オブジェクトの表現を提供してもよい。線、辺、あるいは面は、例えば、非一様有理Bスプライン(NURBS)など、様々な様式で表現されてもよい。具体的には、CADファイルは仕様を含み、その仕様に基づきジオメトリが生成可能であり、よって表現が生成可能となる。モデル化オブジェクトの仕様は1つまたは複数のCADファイルに格納されていてもよい。CADシステムでモデル化オブジェクトを表現するファイルの典型的なサイズは、一部分あたり1メガバイトの範囲である。また、モデル化オブジェクトは、典型的には、数千の部分の集合体であってもよい。
CADの文脈において、モデル化オブジェクトは、典型的には、3Dモデル化オブジェクト、例えば、一つの部品や部品の集合体などの製品、あるいは製品の集合体を表現するものであってもよい。「3Dモデル化オブジェクト」は、3D表現が可能なデータによってモデル化される任意のオブジェクトを意味する。3D表現は、その部品をすべての角度から見ることを可能にする。たとえば、3Dで表現された3Dモデル化オブジェクトは、その軸のうちの任意の軸、あるいは、その表現が表示された画面中の任意の軸を中心に、処理して回転させることが可能である。これは、特に、3Dモデル化されていない2Dアイコンについては除外される。3D表現の表示は、設計を容易にする(すなわち、設計者が作業を達成するスピードを統計的に速める)。製品の設計は製造工程の一部であるから、これによって当該産業における製造工程が迅速化する。
3Dモデル化オブジェクトは、CADソフトウェア・ソリューションやCADシステム等を用いた仮想的デザインの完了後に実世界において製造される製品、すなわち(例えば機械)部品や、部品の集合体(あるいは同様に部品の集合体。なぜなら部品の集合体は本方法の観点では一つの部品としてみることができ、また、本方法は集合体における各部品に独立して適用することができるからである)など、より一般的には任意の剛体の集合体(例えば移動機構)などの製品のジオメトリを表現してもよい。CADソフトウェア・ソリューションは、航空宇宙、建築、建設、消費財、ハイテク機器、産業機器、輸送、海洋、および/または海洋石油/ガス生産、または交通を含む、限定されることのない様々な産業分野において製品の設計を可能にする。ここでの3Dモデル化オブジェクトは、このように、地上車両の部品(例えば、自動車および軽トラック機器、レーシングカー、オートバイ、トラックおよびモーター機器、トラック、バス、電車を含む)、航空車両の部品(例えば、航空機体機器、航空宇宙機器、推進機器、防衛製品、航空路線機器、宇宙機器を含む)、海軍車両の部品(例えば、海軍用機器、商業用船舶、オフショア機器、ヨットおよび作業船、船舶用機器を含む)、一般的な機械部品(例えば、工業用製造機械、大型移動機械または機器、設置機器、産業機器製品、加工金属製品、タイヤ製造製品を含む)、または電気機械部品または電子部品(例えば、家電、セキュリティおよび/または制御および/または計装製品、コンピューティングおよび通信機器、半導体、医療装置および設備を含む)、消費者製品(例えば、家具、家庭用および庭用製品、レジャー用品、ファッション用品、耐久消費財小売用品、織物類小売用品を含む)、包装(例えば、食品および飲料およびたばこ、美容およびパーソナルケア、家庭用製品包装を含む)などのように、任意の機械部品であり得る工業製品を表してもよい。
PLMシステムは、物理的な、製造された製品(または製造される予定の製品)を表すモデル化オブジェクトの管理に適した任意のシステムをも指す。PLMシステムでは、モデル化オブジェクトは、このように、物理的な物体の製造に適したデータによって定義される。これらは、典型的には、寸法の値および/または公差の値であってもよい。物体を正しく製造するために、実際、このような値を用いるのが望ましい。
CAMソリューションとは、製品の製造データを管理するのに適した、ハードウェアのソフトウェアである、あらゆるソリューションをも指す。製造データは、一般に、製造する製品、製造工程、および必要なリソースに関するデータを含む。CAMソリューションは、製品の製造工程全体を計画し最適化するのに用いられる。例えば、実現可能性、製造工程の期間、または製造工程における特定のステップで使用され得るリソース、例えば特定のロボットの数に関する情報をCAMユーザに提供することができる。これにより、管理や必要な投資についての決定を可能にする。CAMは、CAD工程、および、場合によりCAE工程に続く工程である。このようなCAMソリューションは、ダッソー・システムズにより、DELMIA(登録商標)として提供されている。
CAEソリューションとは、モデル化オブジェクトの物理的挙動の分析に適した、ハードウェアのソフトウェアである、あらゆるソリューションをも指す。よく知られており広く用いられているCAE技術は有限要素法(Finite Element Method:FEM)であり、これは、典型的には、モデル化オブジェクトを、物理的挙動を方程式によって計算しシミュレーションできる要素に分割することを含む。このようなCAEソリューションは、ダッソー・システムズにより、SIMULIA(登録商標)として提供されている。成長するCAE技術のもう1つは、CADジオメトリデータを使用せずに異なる物理分野の複数の要素で構成される複雑なシステムのモデリングと解析を行うことを含む。CAEソリューションはシミュレーションを可能にし、それにより、製造する製品の最適化、改善および検証を可能にする。このようなCAEソリューションは、ダッソー・システムズにより、DYMOLA(登録商標)として提供されている。
PDMはProduct Data Management(生産データ管理)の略である。PDMソリューションとは、特定の製品に関するすべての種類のデータを管理するのに適した、ハードウェアのソフトウェアである、あらゆるソリューションを指す。PDMソリューションは、製品のライフサイクルにかかわるすべての関係者によって使用されてもよい。これには、主として技術者のほか、プロジェクトマネージャー、財務担当者、営業担当者、およびバイヤーも含まれる。PDMソリューションは、一般に、製品指向のデータベースに基づく。これにより、関係者が製品に関する一貫したデータを共有することが可能になり、これにより、関係者が異なるデータを用いるのを防止する。このようなPDMソリューションは、ダッソー・システムズにより、ENOVIA(登録商標)として提供されている。
図5は、本システムのGUIの一例を示すものであって、当該システムは、CADシステムである。照会方法は、3Dモデル化オブジェクト2000に基づいて、またはそれを生じるように、そのようなGUIを用いて起動することができる。構築方法もまたそのようなGUIを用いて起動することができ、例えば、3Dモデル化オブジェクト2000をデータベースに追加する。
GUI2100は、標準的なメニューバー2110,2120、ならびに底部および側面のツールバー2140,2150を有する典型的なCADのようなインターフェースであってもよい。このようなメニューバーおよびツールバーは、ユーザが選択可能なアイコンのセットを含み、各アイコンは、当技術分野で知られているように、1つまたは複数の操作または機能に関連付けられている。これらのアイコンのいくつかは、GUI2100に表示された3Dモデル化オブジェクト2000の編集および/または作業に適合したソフトウェアツールに関連付けられている。ソフトウェアツールはワークベンチに分類することができる。各ワークベンチは、ソフトウェアツールのサブセットを含む。特に、ワークベンチの1つは、モデル化製品2000のジオメトリ的特徴を編集するのに適した編集ワークベンチである。操作中、設計者は、例えば、オブジェクト2000の一部を予め選択し、次いで、適切なアイコンを選択することによって、操作を開始する(例えば、寸法、色などを変更する)か、ジオメトリ的制約を編集することができる。例えば、典型的なCAD操作は、スクリーン上に表示された3Dモデル化オブジェクトのパンチングまたは折り畳みのモデリングである。GUIは、例えば、表示された製品2000に関連するデータ2500を表示してもよい。図の例では、「特徴ツリー」として表示されたデータ2500およびそれらの3D表現2000は、ブレーキキャリパおよびディスクを含むブレーキ部品に関するものである。GUIは、編集された製品の動作のシミュレーションを起動するため、または表示された製品2000の様々な属性を描画するために、例えばオブジェクトの3D定位を容易にするための様々なタイプのグラフィックツール2130,2070,2080をさらに示してもよい。カーソル2060は、ユーザがグラフィックツールを用いて対話操作ができるように、触覚デバイスによって制御されてもよい。
図6は、本システムの一例を示すものであって、当該システムは、クライアントコンピュータシステム、例えばユーザのワークステーションである。
本例のクライアントコンピュータは、内部通信バス1000に接続された中央演算処理装置(CPU)1010、および同じくバスに接続されたランダムアクセスメモリ(RAM)1070とを備える。クライアントコンピュータは、さらに、バスに接続されたビデオランダムアクセスメモリ1100と関連付けられたグラフィックス処理装置(GPU)1110を備える。ビデオRAM1100は、当該技術分野において、フレームバッファとしても知られる。大容量記憶装置コントローラ1020は、ハードドライブ1030などの大容量記憶装置へのアクセスを管理する。コンピュータプログラムの命令及びデータを具体的に実現するのに適した大容量メモリ装置は、例として、EPROM、EEPROM及びフラッシュメモリ装置のような半導体メモリ装置、内蔵ハードディスクやリムーバブルディスクなどの磁気ディスク、光磁気ディスク、およびCD-ROMディスク1040を含む、全ての形式の不揮発性メモリを含む。前述のいずれも、特別に設計されたASIC(特定用途向け集積回路)によって補完されてもよいし、組み入れられてもよい。ネットワークアダプタ1050は、ネットワーク1060へのアクセスを管理する。クライアントコンピュータはまた、カーソル制御装置、キーボードなどの触覚装置1090を含んでいてもよい。カーソル制御装置は、ユーザがディスプレイ1080上の任意の所望の位置にカーソルを選択的に位置させることを可能にするために、クライアントコンピュータ内で使用される。さらに、カーソル制御デバイスは、ユーザが様々なコマンドを選択し、制御信号を入力することを可能にする。カーソル制御装置は、システムに制御信号を入力するための多数の信号生成装置を含む。典型的には、カーソル制御装置はマウスであってもよく、マウスのボタンは信号を生成するために使用される。あるいは、または追加的に、クライアントコンピュータシステムは、感知パッドおよび/または感知スクリーンを備えてもよい。
コンピュータプログラムは、コンピュータによって実行可能な命令を含んでいてもよく、命令は、上記システムに方法を実行させるための手段を含む。プログラムは、システムのメモリを含む任意のデータ記憶媒体に記録可能であってもよい。プログラムは、例えば、デジタル電子回路、またはコンピュータハードウェア、ファームウェア、ソフトウェア、またはそれらの組み合わせで実装されてもよい。プログラムは、例えばプログラマブルプロセッサによる実行のための機械読み取り可能な記憶装置に具体的に実現された製品のような装置として実装されてもよい。方法ステップは、プログラム可能なプロセッサが命令のプログラムを実行し、入力データを操作して出力を生成することによって方法の機能を実行することによって実行されてもよい。したがって、プロセッサは、データ記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信し、また、それらにデータおよび命令を送信するようにプログラム可能であってもよく、またそのように接続されていてもよい。アプリケーションプログラムは、高水準の手続き型またはオブジェクト指向のプログラミング言語で、または必要に応じてアセンブリ言語または機械語で実装されていてもよい。いずれの場合も、言語はコンパイラ型言語またはインタープリタ型言語であってもよい。プログラムは、フルインストールプログラムまたは更新プログラムであってもよい。いずれの場合も、プログラムをシステムに適用すると、本方法を実行するための指示が得られる。
本方法は、(例えば3D)モデル化オブジェクトを設計する工程の一部であってもよく、またはそのような工程に従うことができる。「モデル化オブジェクトの設計」とは、モデル化オブジェクトを作り上げる工程の少なくとも一部である任意の行為あるいは一連の行為を指す。したがって、工程は、(ユーザが)最初の3Dモデル化オブジェクトを、例えばスケッチのような工程を通して、一から作ることを含んでもよい。そして、本工程は、クエリを(例えば、基準のユーザ入力に基づくユーザコマンドに応じて、あるいは、例えば、設計中のオブジェクトの署名に基づく自動的なバックグラウンドプロセスとして)本照会方法に従って実行することを含んでいてもよい。あるいは、基準は、ユーザによって直接、値として、あるいは署名の値が算出されたビューを介して、提供される。次に、本方法は、オプションとして、(少なくとも1つの結果がある場合に)結果をユーザに表示し、好ましい結果を(ユーザが)選択することを含んでいてもよい。最後に、ユーザは、クエリの結果(例えば、選択されたもの)を変更することによって、またはクエリの結果を現在の設計に追加することによって、設計を続けてもよい。これは、設計者が、以前に設計されたモデルを不必要に再設計することなく、その代わりに、そのような以前の設計を再利用するのを支援するのに役立つ。しかし、照会方法を実行する他の理由も考えられる。例えば、本方法は、(例えば、冗長性を排除してデータベースのサイズを縮小するために)複製された(またはほぼ複製された、すなわち非常に類似した)モデル化オブジェクトをデータベースから探し出して、例えば削除したり、あるいは部品を同一のカテゴリに、または類似性に基づいて、分類したりするのに用いてもよい。設計工程の最後には、ユーザは、例えば、設計されたモデル化ブジェクトについて、それぞれの単体複体を決定することと、関係を記憶することとを開始することによって、その設計をデータベースに追加してもよい。
本方法は、本方法を実行した後に、モデル化オブジェクトにジオメトリ的に対応する物理的製品を生産する工程を含み得る製造工程に含まれていてもよい。いずれの場合も、本方法によって設計されたモデル化オブジェクトは、製造オブジェクトを表してもよい。したがって、モデル化オブジェクトは、モデル化立体(すなわち、立体を表すモデル化オブジェクト)であってもよい。製造オブジェクトは、部品などの製品であってもよいし、または部品の集合体であってもよい。本方法は、モデル化オブジェクトの設計を改善するので、本方法はまた、製品の製造を改善し、したがって、製造工程の生産性を高める。
提供すること(S10)は、データベース、または、そのようなデータベース上で動作するプラグイン/スクリプトに対して、例えばクライアントコンピュータシステムにおいて、または、サーバコンピュータシステム、すなわちデータベースホストに対して行うことができ、例えば、クライアントはサーバと混同される可能性があり、それは、例えば、それらが同じマシンによってホストされている場合に起こり得る。クエリには基準が含まれている(クエリを定義するデータの一部として、また例えばクエリを構成する幾つかの基準の少なくとも1つとして含む。例えば、クエリは、他の基準、および、オプションとして、異なる基準に割り当てられた重みを含む。これはデータベース検索の分野において非常に古典的である)。照会方法はまた、照会の結果として、データベースの各モデル化オブジェクトを(例えば、クライアントに対して、またはサーバにおいて)返すステップ(S20)を含む(すなわち、返されるデータは、クエリおよび/または検索されたデータの内容に応じて、1つまたは複数のそのような結果を含むか、または結果が含まれない(ヌルの結果)。これは、必ずしも複数の結果が返されるとは限らないことを意味し、複数形が使われているのは、それが一般的な表現だからである)。各モデル化オブジェクトは、それが基準に準拠する度合いに基づいて返される。「基準」という表現は、基準に関係するデータに関連するモデル化オブジェクトのデータにのみ基づいて、データベースのモデル化オブジェクトをフィルタリング、および/または、ランク付けする任意の方法を指す。データベースを照会するとは、データベース工学におけるそのような表現の古典的な意味に従ってクエリがデータベース上で実行されることを意味し、データベースからの情報が照会の結果(場合によりヌル)としてデータベースから抽出されることを意味する。照会方法の場合、データベースのモデル化オブジェクト(すなわち、その任意の特徴データ)が返され、場合により、ダウンロードされる追加データのユーザ選択、および/または、ユーザトリガの対象となる。これもまた、データベース工学の分野でそれ自体知られている。
本方法の場合、クエリは、署名関数の少なくとも1つの値を含む少なくとも1つの基準(場合によっては基準のみ)を含み、この基準は、言い換えれば、署名関数に関連する基準、例えば、署名関数の1つ以上の値に関連する任意の検索基準、例えば、入力された検索対象のモデル化オブジェクト(それに対して署名関数の1つ以上の値が算出される)である。これは、定義上、可能性のある結果(この時点では、データベースのデータ)がこの基準に一致する度合いが評価され(クエリの重みを使用していくつかの基準を処理するという問題については、古典的に扱うことができる実装の詳細であるため、除外する)、情報を結果として考慮すべきか否かが評価されることを意味する。度合いがどれくらい正確に評価されるかを表す効率的な例は、後ほど提供する。度合いはバイナリ(データが基準に準拠しているかどうか)であっても、プログレッシブ(厳密には、2レベル以上の準拠度であって、例えば、結果が入力値に等しい署名値を有することが基準である場合、最小値、例えば0から、最大値、例えば1への、例えば2つの等しい署名値に対応する連続値)であってもよい。各モデル化オブジェクトが、当該モデル化オブジェクトについて評価された度合いに基づいて、返されるべき結果であるか否かが、どの程度正確に決定されるかは、実施上の問題である。
各モデル化オブジェクトは、それぞれ現実の物体の物理的属性を表すので、本方法は、S10で照会を行い、現実の物体の物理的属性を表す照会データの結果として、S20で返すことを可能にする。現実の物体は、単一の物理的物体、あるいはその集合体など、現実世界の任意の物体である。単一の物理的物体は、例えば製品((例えば機械の)部品など)、生物学的物体(人、動物、あるいは植物など)、建築物(建物など)、風景要素(山や谷など)などの立体であってもよい。したがって、データベースにおける現実の物体は、それぞれ、そのような単一の物理的物体または単一の物理的物体の集合体であってもよい。あるいは、データベースは、以下の現実の物体のいずれか1つまたは任意の組み合わせからなる集合を含んでいてもよい:液体、気体、および/または、波(例えば、電磁波、音、または光)。現実の物体の物理的属性は、その現実の物体の任意の物理的特性、すなわち、その現実の物体に関する物理的な現象を任意に実体化したものである。単一の物理的物体またはその集合体である現実の物体の場合、物理的属性はその現実の物体の3D形状であってもよい。言い換えると、モデル化オブジェクトは、現実の物体の3D形状を表す。そのような場合、モデル化オブジェクトは3Dモデル化オブジェクトであってもよく、かつ/あるいは、現実の物体の境界を表すジオメトリ的サーフェスを特定するデータ、および/または現実の物体が占有する空間を表すジオメトリ的ボリュームを特定するデータを含む。単一の物理的物体またはその集合体である現実の物体の他の例において、物理的属性は、色分布、パターン分布、あるいは、材料分布であってもよい。現実の物体が風景である例では、物理的属性は風景の地形であってもよい。現実の物体が都市の景観である例では、物理的属性は都心の景観における建築物であってもよい。現実の物体が気体である例では、物理的属性は粒子速度分布であってもよい。現実の物体が液体である例では、物理的属性は圧力分布であってもよい。
本方法は、モデル化オブジェクトをそのまま直接入力とはせず、モデル化オブジェクトのビューを入力とする、署名関数に基づいている。署名関数は、それ自体が知られているように、入力の領域(この場合、モデル化オブジェクトのビューの空間)と出力の領域に対して、「署名空間」と呼ばれる範囲において、異なる入力同士の識別を可能にする一方、消費メモリが入力より少なく(例えば、消費メモリが少なくとも2倍少なく、例えば消費メモリが少なくとも10倍少なく)、かつ/あるいは、高速比較(例えば、比較は単に二つのベクトル間の距離である)を可能にするデータ(「署名」とも呼ばれる)を適用する関数である。署名は数値であってもよく、これはすなわち、署名が1つの数、または複数の数(例えば、実数または整数)のベクトルであることを意味する。本方法の場合、署名関数は、パラメトリックビュー関数の範囲、すなわち、(パラメトリックビュー関数によって到達可能な)ビューの空間において連続している。このような場合、互いに近い2つのビューから、互いに近い2つの署名が得られ、それにより、S20で返す時点で、関連する比較が可能になる。
モデル化オブジェクトのビューは、モデル化オブジェクトにビュー関数を適用した結果に対応するデータ構造である。ビュー関数は、モデル化オブジェクトを入力とし、モデル化オブジェクトを簡略化して表すデータを出力するデータ処理である。「簡略化して」とは、ビューに含まれる情報が、モデル化オブジェクトに含まれる情報を再配置したものに対応し、人間であるユーザに理解しやすく、かつ/あるいはビュー内の情報量が、モデル化オブジェクト内の情報量と比較して低減されることを意味する。例えば、モデル化オブジェクトのビューは、モデル化オブジェクト自体よりも簡単に生成できる場合がある。このように、提供すること(S10)は、例えば、ユーザが1つまたは複数の入力ビューを提供することによって、比較的簡単な方法で実行することができ、次に、システムは入力ビューに対する署名関数の値を自動的に決定する。そして、この値は署名基準に含められる。また、モデル化オブジェクトのビューのサイズ(メモリ消費量に関して)は、モデル化オブジェクトのサイズより小さくてもよい。
本方法は、予め定められすべてのモデル化オブジェクトに対して同一の、そのようなビュー関数に基づいている。また、ビュー関数はパラメトリックである。つまり、ビュー関数は、モデル化オブジェクトだけではなく、パラメータ値も入力とする。パラメータ値を含む空間は、「パラメトリック領域」と呼ばれる。そのようなパラメトリック関数により、本方法は、パラメータ値を変化させることによって、同じモデル化オブジェクトの異なるビューを提供することができる。したがって、ビューが最初のモデル化オブジェクトにおける情報の損失を意味する場合、ユーザ(ユーザは、モデル化オブジェクト全体ではなく、ビューを提供することでクエリを起動できる)に提供される単純化に伴うこのような情報の損失は、モデル化オブジェクトに関して、単一のビューの単なる署名関数値以上をデータベースに包ませることによって緩和することができる。具体的には、データベースは、各モデル化オブジェクトについて、署名空間上に定義された単体複体を含む。
単体複体は、各モデル化オブジェクトについて、適切な場合にクエリの結果として返される可能性が高くなるよう、十分な情報(少なくとも単一の署名値以上)を形成する。具体的には、データベースにおける各モデル化オブジェクトに関連付けられた単体複体は、パラメトリックビュー関数と署名関数の合成による、パラメトリック領域のメッシュとモデル化オブジェクトからなる組の画像である。言い換えると、まず、パラメトリック領域がメッシュ化されていると考えられる(例えば、そのようなメッシュ化は、データベースを構築するときに実行されてもよい)。メッシュは、任意のタイプのメッシュ(数学的グラフ構造)、例えば、三角形メッシュまたは四角形メッシュである。メッシュは、比率の所定の閾値を超えるパラメトリック領域、例えば実質的に全てのパラメトリック領域をカバーする。各メッシュは、例えばパラメトリック領域の少なくとも50%をカバーすることができる。メッシュは、パラメトリックビュー関数のパラメトリック領域上に定義された構造であり、メッシュの各位置は、任意のモデル化オブジェクトのビューに関連付けることができる。次に、与えられたモデル化オブジェクトについて、署名関数を、メッシュの位置(すなわち、パラメトリック領域における位置)と与えられたモデル化オブジェクトとから作られた(すなわち、それらからなる)組(すなわち、順序付けられたデータのペア)に適用することができる。これは、定義上、メッシュの上記位置(ビュー関数のパラメータ化に対応する位置)に対応する与えられたモデル化オブジェクトのビューに、署名関数を適用することに相当する。ここで、メッシュ全体と同じ与えられたモデル化オブジェクトとを考慮するとき、署名関数(すなわち、その「画像」)の適用は、トポロジの分野でそれ自体知られているように、署名空間における単体複体をもたらす。データベースは、モデル化オブジェクトごとにそのような単体複体を格納する。単体複体が基づくメッシュは、各モデル化オブジェクトについて同じであってもよいし、異なっていてもよい。後に提供される例では、照会の効率を高めるために、メッシュ化された各オブジェクトに適応されている。
照会の時点で、署名関数、すなわち、モデル化オブジェクトの1つのビューの署名の値が与えられた場合、データベースはその値を格納しない可能性があるが、本方法では、データベースに格納されている単体複体に基づいて結果を返すことができる。例えば、各モデル化オブジェクトが署名基準に準拠する単体複体を有する程度は、署名基準の署名関数の値と各単体複体との間の距離に依存してもよい。言い換えると、クエリの署名値とデータベースの単体複体との間の近接性を評価してもよい。例えば、入力された署名値との距離が最も小さい複体が返されてもよい。一例として、距離はL距離であってもよい。これは、署名空間が
Figure 0007049807000001

のタイプ(mは整数)の場合に特に関連する距離である。署名空間に関連する他の任意の距離を考慮することができる。
パラメトリックビュー関数は、モデル化オブジェクト空間、すなわち物理的属性によって取り得るすべての値に対応する空間(例えば、3Dモデル化オブジェクトの場合の3D空間)において連続的である。これは、基本的には、ビュー関数のパラメータ化(すなわち、パラメータの設定)のために、2つの現実の物体の物理的属性値(例えば、物理的属性について類似した2つの現実の物体の物理的属性値)が互いに近づき、したがって、2つのモデル化オブジェクトが互いに近づき、2つのビュー関数値が互いに近づくことを意味する。また、ビュー関数はパラメトリック領域において連続する。これは、所与のモデル化オブジェクトについて、ビュー関数の2つのパラメータ化が互いに近づく(すなわち、パラメータの近似値となる)ことにより、互いに近い2つのビュー関数値が得られることを意味する。その結果、本方法では、物理的属性の類似性に関して比較的関連性の高い結果を導き出せるビューベースの検索を、ユーザが簡単に操作できるようなかたちで提供する。特に、連続性条件は、単体複体が、すべてのビューに対してモデル化オブジェクトの署名の比較的正確な表現を伝えることを可能にする。
上記の命題の逆は必ずしも真ではない。言い換えると、互いに近い2つのビュー関数値は、必ずしも互いに近い2つの現実の物体の物理的属性値を導くわけではない。これは、図2を参照して先に説明したように、ビューベース検索の、よく知られた不正確さにつながる可能性がある。単体複体が署名基準に準拠する程度に基づいて、単体複体をデータベースに格納し、S20において結果を戻すことによって(異なるビュー関数値に対応する異なる署名関数値の集合を格納し、格納された署名基準にもっとも準拠する署名関数を検索するのではない)、本方法は、そのような不正確さの発生を減少させ、これにより本方法は頑強になる。さらに、単体複体表現は単純である(例えば、パラメトリック表現または多項式表現のような別のタイプの表現と比較して)。これにより、データベースを、サイズに関して、軽く保つことができる。実際、本方法は、(各モデル化オブジェクトについて)メッシュのサイズのオーダーのメモリを消費するだけで済む。
したがって、本方法は、パラメータ依存のビューを有するモデル化オブジェクトを検索するという文脈の範囲内にある。本方法は、モデル化オブジェクトのビューに非依存の署名に依存することを強いるものではない。したがって、署名関数はビューに依存するものであってもよい。したがって、本方法は、そのような方法論により、適合率不足とならない。さらに、本方法では、同じオブジェクトのすべてのビューの署名値をデータベースに取り込むソリューションほど、データベースのメモリを必要としない。
ビュー関数は、モデル化オブジェクトの投影であってもよい。例えば、モデル化オブジェクトは、情報のベクトル(例えば、各情報は、対応するデータによって表される)を介して物理的属性を表す。ビュー関数は、例えば、より低次元の空間におけるベクトルの投影に対応していてもよい。モデル化オブジェクトが3Dモデル化ブジェクトである場合、その投影はジオメトリ的投影であってもよい。例えば、モデル化オブジェクトは、現実の物体の物理的属性を表す3Dモデル化オブジェクトであってもよく、物理的属性は、現実の物体の3D形状であってもよい。そのような場合、ビュー関数は、2D空間上のジオメトリ的投影であってもよい。ビュー関数は、2Dシルエット関数、すなわちジオメトリビューに従って2Dシルエット(すなわち、2D投影によって占められた輪郭または空間)を出力する関数であってもよい。そのような場合、パラメトリック領域は、例えば視点の位置、および/または、ビュー方向を含むジオメトリビューパラメータを含んでいてもよい。また、そのような場合、署名関数は、サイズに依存しない平面並進不変式、および/または、平面回転不変式であってもよい(すなわち、入力2Dシルエットの署名は、そのサイズおよび/または位置に依存せず、その概形のみに依存する)。
例えば、物理的属性は物理的な形状(すなわち、現実の物体によって定義された材料の物理的位置の集合)であり、したがってモデル化オブジェクトは、3Dモデル化オブジェクト、例えばCADファイルである。このような場合、ビュー関数は、例えば、パラメトリック領域としてビュー方向の領域を有する2Dシルエットとすることができる。言い換えれば、所与のビュー方向についての3Dモデル化オブジェクトの2Dシルエットは、投影に垂直な2D平面上の、所与のビュー方向に沿った投影である。視野方向の領域は、例えば単位球面など、球面として提供することができる。球上の各位置は、各ビュー方向を定義する(したがって、ビュー関数の各パラメータ化を定義する)。
そのような場合、提供すること(S10)は、例えば、そのようなシルエットをスケッチすることによって、現実の物体を表す1つまたは複数の2Dシルエットをユーザが入力することによって実行されてもよい。スケッチは、マウスを用いて、または、より簡単には、タッチパッド、および/または、感知スクリーン上で、タッチペンまたは指を用いて行うことができる。ユーザは、例えば、現実の物体の1つまたは複数の2D輪郭を描いてもよい。入力2Dシルエット、または各入力2Dシルエットについて、本照会方法は、所定の署名関数(例えば、データベースの構築、すなわち、単体複体の記憶において使用されるものと同じもの)に基づいて、署名値を自動的に算出することができる。署名関数は、サイズに依存しない平面並進不変式、および/または、平面回転不変式であってもよい。したがって、そのような署名値は照会基準に含まれる(例えば、任意の形で、例えば、見つけるべき値として、または範囲を定義する値として、または最も近いモデル化オブジェクトを見つけるための値として。例えば、複数の入力署名値が何らかの方法で処理される場合)。本照会方法は、次に、照会を実行し、入力されたビューに基づいて、モデル化オブジェクトの単体複体が照会基準にどの程度準拠するかに基づいて、S20で、モデル化オブジェクトを返してもよい。
そのような場合および他の場合には、本照会方法は、結果として、モデル化オブジェクトだけでなく、それらが返されるパラメータの値も出力してもよい。実際、各モデル化オブジェクトが署名基準に準拠する単体複体を有する程度が評価されるとき、最適なパラメータ(の集合)が決定されてもよい。実際、単体複体上の最適位置が決定され、パラメトリック領域におけるメッシュの最適位置は、それに基づいて追跡することができる。このような情報は、S20において、ユーザに返すことができる。例えば、現実の物体の3D形状を表す3Dモデル化オブジェクトの2Dシルエットビューの場合、ユーザは、照会対象の2Dシルエットに最も合致するデータベースの3Dモデル化オブジェクトだけでなく、返された3Dモデル化オブジェクトが結果として選択されたビューパラメータ(例えばビュー方向)にも興味を持つかもしれない。
入力オブジェクトに類似するデータベース内のオブジェクトを検索する方法の例を、図7-図25を参照して説明する。
入力オブジェクトは、ビュー方向に従ってそのシルエットを表す平面画像によって与えられる。データベース内で索引付けされるオブジェクトおよび検索工程は、平面シルエット画像およびビュー方向を使用して算出された数値署名に基づく。
本方法の例の特徴は、同じ3Dオブジェクトに関連付けられた数値署名上のトポロジ構造である。このトポロジは、ビュー方向の球面三角メッシュであってもよい。このように、三角メッシュの各頂点は、ビュー方向に関連付けられた3Dオブジェクトの数値署名であってもよい。データベース内の各3Dオブジェクトは、数値署名の空間内の三角形メッシュに関連付けられてもよい。三角形メッシュは、例を示す図7に例示されるように、オフライン工程中に算出してもよい。
データベースの3Dオブジェクトに関連付けられたメッシュ構造をインラインプロセス中に使用して類似した3Dオブジェクトを見つけてもよい。上記メッシュからの、入力署名に最も近い署名を算出することができる。最も近い署名が、データベース内の既存の署名である頂点である場合、その解決策は、現状技術のものと同じであってもよい。しかし、最も近い署名が三角形の内側にある場合、類似のオブジェクトを特定するだけでなく、正確なビュー方向を補間によって算出することができる。
図8において、σ**は、3DオブジェクトAに関連付けられたメッシュからの、入力署名σに最も近い署名である。これはσ(B,D)よりσに近いため、3DオブジェクトAは入力と類似していると認識される。さらに、σ(A,U)とσ(A,V)を結ぶ辺上にσ**が存在するため、ビュー方向WはUとVを補間することによって算出される。
この例の方法は、従来技術よりも正確である。類似したオブジェクトをより安全に認識可能であり、ビュー方向がより正確になり得る。現状技術の場合、ビュー方向の数を増やして適合率を上げようとすると、データベースが大きくなり、演算時間が大幅に長くなる。
本方法では、単体複体を利用する。この広く知られているトポロジカルオブジェクトは、特に以下の文献で詳細に説明されている:James R.Munkres,Elements of algebraic topology,Addison-Wesley。この数学的概念は、統一された一般的なデータ形式を提供するものであり、一貫性を保つため、以下に要約する。
大まかに言えば、単体複体は、あらゆる次元において、三角形分割の通常の概念を一般化する。単体の次元数として整数k≧0が与えられると、k次元の単体は、少なくともk次元の周囲空間におけるk+1個の点からなる凸包である。これらk+1個の点は、単体の頂点と呼ばれる。頂点v,・・・,vを有するk次元の単体は、[v,・・・,v]と表される。
凸包の定義により、すべてのi∈{0,・・・,k}について、
Figure 0007049807000002

である
Figure 0007049807000003

およびλ≧0を満たすような、k+1個の実数λが存在する場合のみ、p∈[v,・・・,v]となる。
例えば、図9に示すように、0次元の単体[v]は点(または頂点)であり、1次元の単体[v,v]は2つの異なる点間の線分であり、2次元の単体[v,v,v]は、同一直線上にない3つの点にわたる三角形であり、3次元の単体[v,v,v,v]は、同一平面上にない4つの点にわたる四面体であり、4次元の単体[v,v,v,v,v]は、少なくとも4次元の空間内の任意の3次元アファイン部分空間に収まらない5つの点にわたる。「単体」という語は、次元kが指定されていない場合には、k次元の単体の代わりに用いられる。
定義上、k次元の単体Cの面は、j≦kを満たす任意のj次元の単体であり、その頂点はCの頂点の部分集合である。図10は、左側に3次元の単体を例示し、また右側に3次元の単体のすべての面を例示する。これには、三角形、線分、点とともに、3次元の単体そのものが含まれる。
定義上、単体複体Kは、以下のような単体の集合である:
・単体がKに属するとき、全ての面がKに属する。
・Kにおいて2つの単体が交差する部分は、空であるか、両方の面である。
第2の条件は、単体複体が自己交差を特徴としないことを意味する。単体複体の次元は、その単体のうちの最大の次元である。例えば、三角形分割は、2次元の単体複体である。単体複体の単体は、それが別の単体の面でない場合、最大であると言える。たとえば、三角メッシュのすべての三角形は最大の単体である。
索引付けの観点から、単体複体Kのすべての頂点の集合{v,v,・・・,v}に注目すると、Kの各単体Cは、単射インデックスマッピングφで定義される。dim(C)を単体Cの次元とすると、このマッピングは、
Figure 0007049807000004

となり、Cは
Figure 0007049807000005

と表される。
ここで、オフライン工程の例について説明する。
Pを仮想3Dオブジェクト、典型的には多面体とする。D=1,・・・,nを、ビュー方向を定義する、3次元空間
Figure 0007049807000006

におけるn個の単位ベクトルとする。S
Figure 0007049807000007

における単位球面とすると、これは、i=1,・・・,nについてD∈Sと書くのと等しい。立体Pのシルエット画像Sは、各ビュー方向Dについて算出され、これはS=S(P,D)で表される。ここで、S(・)はシルエットアルゴリズムである。その本質から、各シルエット画像Sは平面バイナリマップである。
図11は、左から右に、立体P、ビュー方向D,i=1,・・・,6、および対応するシルエット画像S、i=1,・・・,6を示す。
画像Sの数値署名σは、σがSの平面並進および平面回転のもとで不変式となるように算出される。そのための典型的なアルゴリズムは、以下の2つの論文に記載されている。Petros Daras,Apostolos Axenopoulos,A 3D Shape Retrieval Framework Supporting Multimodal Queries, Int J Comput Vis(2010)89:229~247,and Mingqiang Yang,Kidiyo Kpalma,Joseph Ronsin。A Survey of Shape Feature Extraction Techniques.Peng-Yeng Yin.Pattern Recognition,IN-TECH,pp.43-90,2008。表記はσ=σ(S)であり、σ(・)は署名アルゴリズムである。各署名σは、m個の実数からなるベクトルであり、有限次元空間
Figure 0007049807000008

内の点として解釈される。したがって、立体Pの数値署名は、
Figure 0007049807000009

内のn個の点からなり、
Figure 0007049807000010

と表される。
図12は、シルエット画像S,・・・,Sから算出された数値シルエット署名σ,・・・,σを示す。なお、σ,・・・,σはm次元空間において解釈されるべきである。
これらの例の特徴は、数値署名のn組(σ,・・・,σ)に関連付けられたトポロジである。これは以下のように定義される。n個のビュー方向Dは、
Figure 0007049807000011

における球面S上の点と同数である。Mを点D,i=1,・・・,nの球面三角メッシュとする。
典型的なメッシュは、点Dの凸包である。図13に示すように、12個のビュー方向をサポートする二十面体であってもよい。
Mのトポロジは、単体複体のフォーマットに従って捉えられる。頂点は、{D,D,・・・,D}である。各三角形Tは、そのインデックスマッピング
Figure 0007049807000012

を介して
Figure 0007049807000013

で定義される2次元の単体である。各線分Lは、そのインデックスマッピング
Figure 0007049807000014

を介して
Figure 0007049807000015

で定義される1次元の単体である。
図14は、6つのビュー方向(左図)の球面メッシュ(右図)を示している。例えば、三角形Tのインデックスマッピングは、φ(0)=1、φ(1)=3、および、φ(2)=4であり、線分Lのインデックスマッピングはφ(0)=2、および、φ(1)=5である。
数値署名の空間
Figure 0007049807000016

へのメッシュMの埋め込みは、Σで表される。これは、同じインデックス構造を用いて、各ビュー方向Dを、それに対応する署名σ=σ(S(D,P))で置き換えることによって得られる。
図15は、その埋め込みを例示している。左図は、
Figure 0007049807000017

における球面Sの球面メッシュMであり、右図は、
Figure 0007049807000018

におけるΣである。
最後に、立体Pのトポロジ署名はΣで定義され、Σ(P)で表される。これは、
Figure 0007049807000019

における三角形メッシュである。なお、
Figure 0007049807000020

におけるΣ(P)の形状は、頂点σの座標に応じて、ねじったり折ったりできることを理解する必要がある。特に、Σ(P)は、必ずしも
Figure 0007049807000021

における球面メッシュの凸を保存せず、退化単体を特徴とし得る。
ここで、S20で返された結果の関連性に関するトポロジの値について説明する。
先に説明したように、ビュー方向の球面メッシュは、空間
Figure 0007049807000022

における署名Σ(P)のトポロジを提供する。なお、単に署名の有限集合
Figure 0007049807000023

を調べるだけでトポロジを取得する方法はないことを理解することが重要である。2Dのビュー方向の集合(単位円)および2Dの署名空間を用いて例示する。
図16は、ビュー方向の正確なトポロジ(点線の単位円)と、署名の正確な(および未知の)トポロジ(点線の閉じた折れ線)を示す。
図17は、署名の有限集合上のトポロジを作成する候補として、ビュー方向のサンプリング(左図)、対応する署名(中央図)、および署名の凸包の境界(右図)を示す。凸包によって示唆されるトポロジは、2つの署名が関与していないため、明らかに適切ではない。
図18は、ビュー方向のサンプリング(左図)をメッシュ化し、シグネチャ空間内で移動することによって導かれた、署名のトポロジ(右図)を例示する。前の図とは異なり、すべての署名が関与している。さらに、後述するように、ビュー方向空間の高密度サンプリングは、署名サーフェスの高密度サンプリングを提供する。
ここで、オプションの、退化単体を除去することからなるオフラインプロセスの改善について説明する。この除去により、データベースにおける各単体複体は、非退化の単体のみを有することになる。
このため、前処理においてΣ(P)から退化単体を除去し、データベースと、さらなるジオメトリ的アルゴリズムが、より安全になるようにする。退化の診断は、以下のようなものであってもよい。
単体複体Kの各単体
Figure 0007049807000024

について、行列
Figure 0007049807000025

を考える。
行列M(C)は、はdim(C)個の列とm個の行を特徴とする。行列M(C)の階数がdim(C)に等しい場合、単体Cは非退化である。そうでなければ退化であり、Kから取り除かれる。なお、単体Cを取り除いても頂点は取り除かれないことを理解する必要がある。さらに、結果として生じる単体複体は、自己交差を特徴としてもよいが、経験上、それらは演算に影響しない。
図19~20は、退化の状況を例示する。図19は、2次元の単体複体として描かれた規則的な三角形分割Kである。0Dの単体は7個の頂点v、・・・、vであり、1次元の単体は12個の線分L=[v,v]、L=[v,v]などであり、2次元の単体は6個の三角形T=[v,v,v]、T=[v,v,v]、T=[v,v,v]、T=[v,v,v]、T=[v,v,v]、T=[v,v,v]である。図20は、頂点vを辺[v,v]上に移動することによってKから得られる三角形分割K’である。これにより三角形Tが退化三角形に変化する。なぜなら、ベクトルv-vおよびv-vが同一線上にあり、行列M(T)=[v-v-v]の画像を1次元空間にするためである。その結果、前処理ではK’から三角形Tが除去され、K’は、5個の三角形、12個の辺、7個の頂点から構成されることになる。K’における自己交差とは、頂点vが線分[v,v]に属し、これがトポロジ関係によって捉えられないことである。この例では、非自己交差複体は、単体[v,v]も取り除くことで得られるが、それには価値がない。
ここで、別のオプションである、署名サーフェスの局所的な精緻化からなるオフラインプロセスの改善について説明する。この局所的な精緻化の結果、パラメトリックビュー関数Sのパラメトリック領域Sの各メッシュM(D∈S;i=1,・・・,n)は、それぞれ、署名関数σ(・)の範囲
Figure 0007049807000026

における適合率基準に準拠する。
ビュー方向Dに応じて、立体Pに関連付けられ、立体Pのシルエット画像の数値署名によって単位球面
Figure 0007049807000027

上に定義されたマッピング
Figure 0007049807000028

すなわちΔ(D)=σ(S(P,D))について考える。
ここで、Σ(P)={Δ(D),D∈S}で表される、すべてのD∈SについてのすべてのΔ(D)の集合を考える。マッピングΔは連続的であることが証明できる。これは例えば、以下の論文において説明されている:Petros Daras,Apostolos Axenopoulos,A 3D Shape Retrieval Framework Supporting Multimodal Queries, Int J Comput Vis(2010)89:229~247。これにより、Σ(P)が、署名サーフェスと呼ばれる、
Figure 0007049807000029

の連続的な2Dサーフェスになる。
構築すると、Σ(P)は理論上の署名サーフェスΣ(P)の三角補間である。精緻化工程(後述)を用いることにより、頂点と三角形をΣ(P)に追加して、サグ(sag)基準に達することができ、これによりΣ(P)がΣ(P)のより好ましい補間となる。この特性は、オフライン工程中に使用して、適合率重視の署名データベースを構築することができる。
精緻化工程は、以下の例において用いてもよい。適合率閾値ε>0および立体Pが与えられると、Σ(P)の各辺が訪問され、その中間点が適合率に対してテストされる。適合率が十分でない場合は、新しい頂点と隣接する三角形が作成される。
Figure 0007049807000030

ステップ05で算出される数sは、署名の平均
Figure 0007049807000031

と、ビュー方向の平均
Figure 0007049807000032

に応じた立体Pの画像の署名との間の距離である。言い換えれば、eの中点とΣ(P)との間の距離である。
ステップ07の「細分化」手順は、空間
Figure 0007049807000033

において、図21に示すように、隣接する三角形と共に辺の中間点に新たなビュー方向を作成することであってもよい。
ここで、インライン工程の例について説明する。
Σ(P),i=1,・・・,Nを、データベース内のすべての3DオブジェクトP,i=1,・・・,Nのトポロジ署名とする。入力シルエット数値署名
Figure 0007049807000034

が与えられるとすると、検索工程は、i=1,・・・,Nについてのすべてのトポロジ署名Σ(P)のうち、最も近い点σ**を見つけることである。その本質から、σ**は特にΣ(P)に属し、これは立体Pが入力と類似していることを意味する。また、ビュー方向Dが算出される。これは図22に例示されている。
インライン工程の全体的なアルゴリズムは、以下のように実行されてもよい。主なメソッドはSimSol(σ,P,D)で、「類似の立体」を意味する。入力は、立体のデータベース(およびそれぞれのトポロジ署名)とシルエット署名σであってもよい。出力は、類似の立体Pおよびビュー方向Dであってもよい。これには、入力署名から単体複体までの距離(例えば、L距離)を算出するメソッドDC(・)を利用する。このメソッドは、重心座標を算出するメソッドBC(・)を用いて単体への距離を算出するメソッドDS(・)を使用する。すべてのメソッドの詳細は以下のとおりである。
図23の図が呼び出しシーケンスを表している。
Figure 0007049807000035

前のアルゴリズムの「for」のループの後、σに最も近い署名σ**は、単体複体Σ(P)の単体
Figure 0007049807000036

に属する。さらに、その重心座標(後述)は、単体C上のλ=(λ,・・・,λdim(C))であるので、次のように算出される。
Figure 0007049807000037

対応するビュー方向Dは、単体Cの頂点に関連付けられたビュー方向D(φC(i))を補間することによって得られる。すなわち、
Figure 0007049807000038

ここで、単体複体に最も近い点の決定の例について説明する。
ここではジオメトリのみを扱うため、明確にするために、「点」という言葉を「署名」よりも優先して用いている。
このアルゴリズムへの入力は、空間
Figure 0007049807000039

における点p、および空間
Figure 0007049807000040

における単体複体Kであってもよい。出力は、pから最も近いKの単体C、C上の最も近い点の重心座標λ、およびpとKとの間の距離dであってもよい。このメソッドは、複体までの距離(Distance to Complex)、DC(p,K,C,λ,d)である。これには、重心座標算出のためのメソッドBC(p,C,λ,d)、および、単体までの距離算出ためのメソッドDS(p,C,E,λ,d)を用いることができる。
ここで、重心座標について説明する。
k=dim(C)として、Kのk次元の単体
Figure 0007049807000041

を考える。メソッドBC(p,C,λ,d)は、点vφ(0),・・・,vφ(k)によって生成されたアフィン部分空間
Figure 0007049807000042

に属する点pに最も近い点qの重心座標
Figure 0007049807000043

を算出する。
定義上、重心座標は、
Figure 0007049807000044

および
Figure 0007049807000045

を満たす。
Figure 0007049807000046

を選択すると、点qは以下のように表される。
Figure 0007049807000047

これは点pへの最短距離を特徴とするので、λ,・・・,λは以下を満たす。
Figure 0007049807000048

したがって、最適なλは、すべてのi=1,・・・,kについて、
Figure 0007049807000049

を特徴とする。古典的な方法で、これにより線型システム
Figure 0007049807000050

が得られ、行列
Figure 0007049807000051


Figure 0007049807000052

を満たし、ベクトル
Figure 0007049807000053


Figure 0007049807000054

を満たす。行列Eは単体Cが非退化であるため可逆的であり、よって最適なλ,・・・,λ
Figure 0007049807000055

によって算出され、
Figure 0007049807000056

となる。メソッドBC(p,C,λ,d)の終了時、最も近い点はq(λ,・・・,λ)となり、出力距離は、
Figure 0007049807000057

となる。
ここで、単体に最も近い点について説明する。
メソッドDS(p,C,E,λ,d)は、重心座標を用いて、入力単体
Figure 0007049807000058

から入力点pへの最も近い点を繰り返し算出する。出力は、Cの面E、最も近い点の重心座標λ、およびCからpまでの距離dである。もちろん、重心座標λは面E上に与えられているので、最も近い点qは、
Figure 0007049807000059

となる。
凸包の定義上、すべてのi∈{0,・・・,dim(C)}について、λ≧0の場合にのみ、点qは単体に属する。
固有のLIFOリストを、標準的な命令Push(・)、Pop(・)、およびSizeを通じて使用できる。命令Push(C)は、オブジェクトCをリストの上に追加し、そのサイズをインクリメントする。命令Pop(C)はCで表されるリストの最後のオブジェクトを返し、リストから削除し、そのサイズをデクリメントする。次のアルゴリズムにおけるX-[vφX(i)]は、単体Xの定義から、頂点vφX(i)を取り除くことにより次元dim(Y)=dim(X)-1を定義する。単体Yの索引付けは、
Figure 0007049807000060

であって、
Figure 0007049807000061

は、j<iのときφ(j)=φ(j)であり、j≧iのときφ(j)=φ(j+1)である。
Figure 0007049807000062

図24は、三角形T=[v,v,v]からの、点pまでの最も近い点の算出を例示している。入力単体[v,v,v]が、リストにおいてプッシュされる。リストから[v0,v1,v2]を得た後、点pは、まず、点v、v、vによって生成された平面U上に投影される。これにより、p=μ+μ+μが得られ、μ<0、μ>0、μ>0である。μ<0であるから、単体[v,v]が、リストにおいてプッシュされる。リストから[v,v]を得た後、点pは、点v、vによって生成された線V上に投影されてもよい。これにより、p=μ+μが得られ、μ>0、μ>0である。したがって、
Figure 0007049807000063

となり、
Figure 0007049807000064

となる。リストは空になり、反復は終了する。最後に、三角形Tの、点pに最も近い点の重心座標は、面[v,v]におけるλ=(μ,μ)である。
ここで、複体に最も近い点の決定の例について説明する。
最後に、メソッドDC(p,K,C,λ,d)は、メソッドDS(・)を用いて、複体Kから点pに最も近い点を算出する。出力は、点pに最も近い単体C、C上の最も近い点の重心座標λ、およびpとKとの間の距離dである。
Figure 0007049807000065

本方法の例について、図6~24を参照して説明した。しかし、異なる一般化が考えられる。ここで、非限定的な一般化の例のリストについて説明する。
ビュー方向の一般化が考えられる。
これまでの例では、ビュー方向は正規化されたベクトルによって定義した。つまり、立体のシルエット画像は、平行なビューに応じて算出される。立体から有限距離に位置する観察者を扱うには、それぞれビュー方向と立体への距離である、正規化されたベクトルDと正の数rからなる組(D,r)を考える必要がある。このような拡張されたビュー方向は、Dのみによって定義される平行ビューとは対照的に、斜視ビューと呼ばれる。すべての斜視ビューの集合は、デカルト積S×[a,b]であり、ここで、aおよびbは、それぞれ、観察者の立体からの最小距離および最大距離である。これは、図25に示すように、立体の基準軸系の原点を中心とする球の族である。
デカルト積S×[a,b]は、(3次元)四面体メッシュで近似することができ、以前のアルゴリズムを再利用することができる。
光源位置、および/または、光強度など、より多くのパラメータを使用することで、他の一般化を検討できる。
シルエット署名の一般化も考えられる。
ここまで、数値署名は、立体の2Dシルエットを用いて定義してきた。例えば、等長変換、および/または相似の下で不変であれば、任意の数値署名に一般化することができる。
一般的なフレームワークも考えられる。
実際、例は、一般的なパラメータ化された署名フレームワークに一般化できる。入力される数学的実体は以下のとおりである。オブジェクトの集合Pおよびパラメータ化署名マッピング
Figure 0007049807000066

パラ―メータ空間Lは、有限次元空間
Figure 0007049807000067

の部分多様体である。マッピングσは、すべてのオブジェクトとパラメータの組(p,λ)∈P×Lについて、ベクトル
Figure 0007049807000068

を算出する。
課題は、
Figure 0007049807000069

が与えられたとき、σ(p,λ)がσにできるだけ近くなるような(p,λ)∈P×Lの組を見つけることである。
第1に、解決策のフレームワークは、
Figure 0007049807000070

における単体複体K(λ,・・・,λ)でLを近似し、すべてのp∈Pについて、単体複体K(σ(p,λ),・・・,σ(p,λ))を、場合により局所的精緻化を用いて、データベースに入れることである。第2に、解決策は、単体複体と点との間の距離を算出して、σに最も近い(p,λ)を見つけることである。

Claims (8)

  1. モデル化オブジェクトを含むデータベースを照会するための、コンピュータによって実施される方法であって、
    各モデル化オブジェクトは、それぞれ、現実の物体の物理的属性を表し、
    前記データベースは、各モデル化オブジェクト(P)について、一の単体複体(Σ(P))を含み、
    各モデル化オブジェクト(P)の単体複体(Σ(P))は、パラメトリックビュー関数と署名関数(σ(・))の合成(σ・S)による、当該パラメトリックビュー関数(
    Figure 0007049807000071
    )のパラメトリック領域(S)のメッシュ(M(D∈S;i=1,・・・,n))
    とモデル化オブジェクト(P)からなる組の画像(σ(S(M(D∈S;i=1,・・・,n),P)))であり、
    前記パラメトリックビュー関数は、パラメトリック領域、およびモデル化オブジェクト空間において連続しており、
    前記署名関数(σ(・))は、前記パラメトリックビュー関数の範囲において連続しており、
    前記署名関数の値を含む署名基準を含むクエリを提供することと、
    前記クエリの結果として、前記データベースの各モデル化オブジェクトを返すことであって、各モデル化オブジェクトが前記署名基準に準拠する単体複体を有する程度に基づいて返されるような、返すことと
    を含み、
    前記パラメトリックビュー関数(S )のパラメトリック領域(S )の各メッシュ(M(D ∈S ;i=1,・・・,n))は、前記署名関数(σ(・))の範囲(
    Figure 0007049807000072
    )内における適合率基準(
    Figure 0007049807000073
    )に準拠する
    ことを特徴とする方法。
  2. 各モデル化オブジェクトが前記署名基準に準拠する単体複体を有する程度は、前記署名基準の前記署名関数の値と、前記署名関数(σ(・))の範囲(
    Figure 0007049807000074
    )内の各単体複体との間の距離に依存する
    ことを特徴とする請求項1に記載の方法。
  3. 各単体複体(Σ(P))は、非退化の単体のみを有する
    ことを特徴とする請求項1または2に記載の方法。
  4. 前記物理的属性は3D形状であり、前記モデル化オブジェクトは3Dモデル化オブジェクトであり、前記パラメトリックビュー関数は2Dシルエット関数であり、前記パラメトリック領域(S)はジオメトリビューパラメータの領域である
    ことを特徴とする請求項1~のいずれか1項に記載の方法。
  5. 前記ジオメトリビューパラメータの領域は、ジオメトリビュー方向の領域を含む
    ことを特徴とする請求項に記載の方法。
  6. コンピュータに、複数のモデル化オブジェクトを含むデータベースを照会させるためのプログラムであって、
    各モデル化オブジェクトは、現実の物体の物理的属性を表し、前記データベースは、各モデル化オブジェクト(P)について、一の単体複体(Σ(P))を含み、
    各モデル化オブジェクト(P)の単体複体(Σ(P))は、パラメトリックビュー関数と署名関数(σ(・))の合成(σ・SD)による、当該パラメトリックビュー関数(
    Figure 0007049807000075
    )のパラメトリック領域(S2)のメッシュ(M(Di∈S2;i=1,・・・,n))とモデル化オブジェクト(P)からなる組の画像(σ(S(M(Di∈S2;i=1,・・・,n),P)))であり、
    前記パラメトリックビュー関数は、パラメトリック領域、およびモデル化オブジェクト空間において連続しており、
    前記署名関数(σ(・))は、前記パラメトリックビュー関数の範囲において連続しており、
    前記プログラムは、
    前記署名関数の値を含む署名基準を含むクエリを提供するステップと、
    前記クエリの結果として、前記データベースの各モデル化オブジェクトを返すステップであって、各モデル化オブジェクトが前記署名基準に準拠する単体複体を有する程度に基づいて返されるような、ステップと、
    を含み、
    前記パラメトリックビュー関数(SD)のパラメトリック領域(S2)の各メッシュ(M(Di∈S2;i=1,・・・,n))は、前記署名関数(σ(・))の範囲(
    Figure 0007049807000076
    )内における適合率基準(
    Figure 0007049807000077
    )に準拠する
    ことを特徴とする、プログラム。
  7. 請求項6に記載のプログラムが記録された、コンピュータ読み取り可能な記憶媒体。
  8. 複数のモデル化オブジェクトを含むデータベースを照会させるためのコンピュータシステムであって、
    各モデル化オブジェクトは、現実の物体の物理的属性を表し、前記データベースは、各モデル化オブジェクト(P)について、一の単体複体(Σ(P))を含み、
    各モデル化オブジェクト(P)の単体複体(Σ(P))は、パラメトリックビュー関数と署名関数(σ(・))の合成(σ・SD)による、当該パラメトリックビュー関数(
    Figure 0007049807000078
    )のパラメトリック領域(S2)のメッシュ(M(Di∈S2;i=1,・・・,n))とモデル化オブジェクト(P)からなる組の画像(σ(S(M(Di∈S2;i=1,・・・,n),P)))であり、
    前記パラメトリックビュー関数は、パラメトリック領域、およびモデル化オブジェクト空間において連続しており、
    前記署名関数(σ(・))は、前記パラメトリックビュー関数の範囲において連続しており、
    前記コンピュータシステムは、
    前記署名関数の値を含む署名基準を含むクエリを提供する手段と、
    前記クエリの結果として、前記データベースの各モデル化オブジェクトを返す手段であって、各モデル化オブジェクトが前記署名基準に準拠する単体複体を有する程度に基づいて返されるような、手段と
    を含み、
    前記パラメトリックビュー関数(SD)のパラメトリック領域(S2)の各メッシュ(M(Di∈S2;i=1,・・・,n))は、前記署名関数(σ(・))の範囲(
    Figure 0007049807000079
    )内における適合率基準(
    Figure 0007049807000080
    )に準拠する
    ことを特徴とする、コンピュータシステム。
JP2017209113A 2016-11-14 2017-10-30 パラメトリックビュー関数に基づくデータベースの照会 Active JP7049807B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP16306488.4 2016-11-14
EP16306488.4A EP3321817A1 (en) 2016-11-14 2016-11-14 Querying a database based on a parametric view function

Publications (2)

Publication Number Publication Date
JP2018109948A JP2018109948A (ja) 2018-07-12
JP7049807B2 true JP7049807B2 (ja) 2022-04-07

Family

ID=57348621

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017209113A Active JP7049807B2 (ja) 2016-11-14 2017-10-30 パラメトリックビュー関数に基づくデータベースの照会

Country Status (4)

Country Link
US (1) US10719549B2 (ja)
EP (1) EP3321817A1 (ja)
JP (1) JP7049807B2 (ja)
CN (1) CN108073682B (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3098734A1 (en) 2015-05-28 2016-11-30 Dassault Systèmes Querying a database with likeness criterion
EP3098735A1 (en) 2015-05-28 2016-11-30 Dassault Systèmes Querying a database with thickness criterion
EP3264286B1 (en) 2016-06-28 2020-11-18 Dassault Systèmes Querying a database with morphology criterion
US11281824B2 (en) 2017-12-13 2022-03-22 Dassault Systemes Simulia Corp. Authoring loading and boundary conditions for simulation scenarios
CN109325063B (zh) * 2018-09-25 2022-03-15 奇瑞汽车股份有限公司 数据管理方法及装置
CN109766641A (zh) * 2018-11-30 2019-05-17 中国航空工业集团公司沈阳飞机设计研究所 基于知识重用的多物理场cae建模方法
EP3675062A1 (en) 2018-12-29 2020-07-01 Dassault Systèmes Learning a neural network for inference of solid cad features
EP3675063A1 (en) * 2018-12-29 2020-07-01 Dassault Systèmes Forming a dataset for inference of solid cad features
US20230047459A1 (en) * 2021-08-11 2023-02-16 FootPrintKu Inc. Method and system for analyzing viewing direction of electronic component, computer program product with stored program, and computer readable medium with stored program
US20230067997A1 (en) * 2021-09-01 2023-03-02 The Boeing Company Method and apparatus for efficiently extracting and representing information from technical diagrams
CN116340368B (zh) * 2023-05-30 2023-07-21 壹仟零壹艺网络科技(北京)有限公司 一种用于bim数据可视化的缓存优化方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005066852A1 (ja) 2003-12-26 2005-07-21 Toyota Jidosya Kabushiki Kaisya 三次元cadデータの近似および表示方法、その方法を実行するシステム
US20060114252A1 (en) 2004-11-29 2006-06-01 Karthik Ramani Methods for retrieving shapes and drawings

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5533148A (en) 1993-09-30 1996-07-02 International Business Machines Corporation Method for restructuring physical design images into hierarchical data models
US5842004A (en) 1995-08-04 1998-11-24 Sun Microsystems, Inc. Method and apparatus for decompression of compressed geometric three-dimensional graphics data
US5966140A (en) * 1997-06-20 1999-10-12 Microsoft Corporation Method for creating progressive simplicial complexes
US6778970B2 (en) 1998-05-28 2004-08-17 Lawrence Au Topological methods to organize semantic network data flows for conversational applications
FR2779848B1 (fr) * 1998-06-15 2001-09-14 Commissariat Energie Atomique Procede invariant d'indexation d'une image utilisant des caracterisations fractales et par moments
JP2000057184A (ja) 1998-08-06 2000-02-25 Nissan Motor Co Ltd 3次元形状モデルの作成方法
US6768928B1 (en) 1999-05-20 2004-07-27 Olympus Optical Co., Ltd. Mechanism component design support system
US6879946B2 (en) 1999-11-30 2005-04-12 Pattern Discovery Software Systems Ltd. Intelligent modeling, transformation and manipulation system
US6397206B1 (en) 1999-12-15 2002-05-28 International Business Machines Corporation Optimizing fixed, static query or service selection and execution based on working set hints and query signatures
JP3829972B2 (ja) 2000-03-06 2006-10-04 サイテック株式会社 3次元cadシステム
JP3536786B2 (ja) 2000-06-07 2004-06-14 株式会社デンソー 3次元モデリングシステム
US6570568B1 (en) * 2000-10-10 2003-05-27 International Business Machines Corporation System and method for the coordinated simplification of surface and wire-frame descriptions of a geometric model
US7136063B2 (en) * 2001-03-19 2006-11-14 Microsoft Corporation Triangle management in triangular meshes based on a tri-edge structure
US6721614B2 (en) 2001-05-21 2004-04-13 International Business Machines Corporation Multi-discipline universal CAD library
US6615503B1 (en) 2002-04-16 2003-09-09 General Electric Company Calibration software for surface reconstruction of small objects
US7027054B1 (en) 2002-08-14 2006-04-11 Avaworks, Incorporated Do-it-yourself photo realistic talking head creation system and method
US20040122630A1 (en) 2002-12-19 2004-06-24 Wallace Ronald Hugh Fife Method and apparatus for linking finite element models to computer-aided design models
JP4516957B2 (ja) 2003-01-25 2010-08-04 パーデュー リサーチ ファンデーション 3次元オブジェクトについて検索を行なうための方法、システムおよびデータ構造
EP1794703A4 (en) 2004-09-17 2012-02-29 Cyberextruder Com Inc SYSTEM, METHOD AND APPARATUS FOR GENERATING THREE-DIMENSIONAL REPRESENTATION FROM ONE OR MORE TWO-DIMENSIONAL IMAGES
FR2882169B1 (fr) * 2005-02-14 2007-05-25 Cofluent Design Sarl Procede de simulation d'un systeme complexe incluant une hierarchie d'ordonnanceurs, produit programme d'ordinateur et moyen de stockage correspondants
US7269808B2 (en) 2005-05-26 2007-09-11 International Business Machines Corporation Design verification
US7913190B2 (en) 2005-07-18 2011-03-22 Dassault Systèmes Method, system and software for visualizing 3D models
EP1955238A4 (en) 2005-11-22 2014-08-27 Exxonmobile Upstream Res Company SIMULATION SYSTEM AND METHOD
US8576224B2 (en) 2006-05-31 2013-11-05 The Boeing Company Methods and apparatus for automated part positioning based on geometrical comparisons
US8988420B2 (en) 2006-08-11 2015-03-24 Siemens Product Lifecycle Management Software Inc. Visual file representation
US7688318B2 (en) 2007-02-02 2010-03-30 Dassault Systemes Solidworks Corporation Reusable data constructs for a modeling system
US7844105B2 (en) * 2007-04-23 2010-11-30 Mitsubishi Electric Research Laboratories, Inc. Method and system for determining objects poses from range images
CN100460813C (zh) 2007-05-10 2009-02-11 上海交通大学 三维空间连杆曲线匹配度的检测方法
EP2031564B1 (en) 2007-06-25 2018-08-29 Dassault Systèmes Method of computer-aided design of a 3D object modeled by geometries
US7830377B1 (en) 2008-01-09 2010-11-09 Spaceclaim Corporation, Inc. Systems and methods for using a single tool for the creation and modification of solids and surfaces
US20090182450A1 (en) 2008-01-14 2009-07-16 Emmanuel Goldschmidt Web application for increasing mold reusability
US8630022B2 (en) * 2008-05-31 2014-01-14 Hewlett-Packard Development Company, L.P. Method of identifying a target simplex
US8368689B2 (en) 2008-09-25 2013-02-05 Siemens Product Lifecycle Management Software Inc. System, method, and computer program product for radial functions and distributions of three dimensional object models
EP2189918A1 (en) * 2008-11-07 2010-05-26 Dassault Systèmes Computer-implemented method of computing, in a computer aided design system, of a boundary of a modeled object.
US8659596B2 (en) 2008-11-24 2014-02-25 Mixamo, Inc. Real time generation of animation-ready 3D character models
US8982122B2 (en) 2008-11-24 2015-03-17 Mixamo, Inc. Real time concurrent design of shape, texture, and motion for 3D character animation
US8606774B1 (en) 2009-05-18 2013-12-10 Google Inc. Methods and systems for 3D shape retrieval
US8384717B2 (en) 2010-02-16 2013-02-26 Siemens Product Lifecycle Management Software Inc. Method and system for B-rep face and edge connectivity compression
JP5469491B2 (ja) 2010-03-15 2014-04-16 オムロン株式会社 画像処理装置および画像処理方法
EP2387004B1 (en) 2010-05-11 2016-12-14 Dassault Systèmes Lossless compression of a structured set of floating point numbers, particularly for CAD systems
CN101995231B (zh) 2010-09-20 2012-07-18 深圳大学 一种大型薄壳物体表面的三维检测系统及其检测方法
EP2439664A1 (en) 2010-09-23 2012-04-11 Dassault Systèmes Designing a modeled object within a session of a computer-aided design system interacting with a database
EP2474929A1 (en) 2010-12-30 2012-07-11 Dassault Systèmes Modeled object updating
US9916538B2 (en) 2012-09-15 2018-03-13 Z Advanced Computing, Inc. Method and system for feature detection
US9239895B2 (en) 2011-12-02 2016-01-19 Dassault Systèmes Simulia Corp. Periodic media analysis
US8416240B1 (en) 2012-04-02 2013-04-09 Google Inc. Determining 3D model information from stored images
US20140192050A1 (en) 2012-10-05 2014-07-10 University Of Southern California Three-dimensional point processing and model generation
EP2750109B1 (en) * 2012-12-28 2021-07-07 Dassault Systèmes Tessellation of a parameterized 3D modeled object
EP2750107B1 (en) 2012-12-31 2017-03-15 Dassault Systèmes Groups of faces that form a geometrical pattern
EP2750106B1 (en) 2012-12-31 2021-09-15 Dassault Systèmes Geometrical elements transformed by rigid motions
EP2808810B1 (en) 2013-05-28 2017-01-11 Dassault Systèmes Compression and decompression of 3d modeled object
JP6255491B2 (ja) 2013-06-21 2017-12-27 ダッソー システムズ ソリッドワークス コーポレイション コンピュータ支援設計(cad)モデルをシミュレートするためのファスナの自動作成
US20150032420A1 (en) 2013-07-25 2015-01-29 Ansys, Inc. Systems and Methods for Creating Engineering Models
WO2015027196A1 (en) 2013-08-22 2015-02-26 Bespoke, Inc. Method and system to create custom products
CN104574515B (zh) 2013-10-09 2017-10-17 华为技术有限公司 一种三维物体重建的方法、装置和终端
CA2934031C (en) 2013-12-15 2024-03-26 7893159 Canada Inc. Method and system for comparison of 3d models
IN2013MU04141A (ja) * 2013-12-31 2015-08-07 Dassault Systemes
JP5824537B2 (ja) 2014-01-16 2015-11-25 キヤノン株式会社 情報処理装置および情報処理方法
US9916345B1 (en) 2014-02-12 2018-03-13 Google Llc Searching three-dimensional (3D) object data models
US9507815B2 (en) * 2014-07-07 2016-11-29 Sap Se Column store optimization using simplex store
US10817526B2 (en) 2014-07-16 2020-10-27 Machine Research Corporation Systems and methods for searching a machining knowledge database
EP3016062A1 (en) 2014-10-27 2016-05-04 Thomson Licensing Method for watermarking a three-dimensional object
EP3098734A1 (en) 2015-05-28 2016-11-30 Dassault Systèmes Querying a database with likeness criterion
EP3098735A1 (en) 2015-05-28 2016-11-30 Dassault Systèmes Querying a database with thickness criterion
US9830703B2 (en) 2015-08-12 2017-11-28 Nvidia Corporation Model-based three-dimensional head pose estimation
CN105184868B (zh) * 2015-09-01 2018-10-12 广东顺德中山大学卡内基梅隆大学国际联合研究院 一种基于三维实体模型的三角形表面网格生成方法
EP3264286B1 (en) 2016-06-28 2020-11-18 Dassault Systèmes Querying a database with morphology criterion
WO2018006073A1 (en) * 2016-07-01 2018-01-04 Ayasdi, Inc. Scalable topological data analysis
US11281824B2 (en) 2017-12-13 2022-03-22 Dassault Systemes Simulia Corp. Authoring loading and boundary conditions for simulation scenarios

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005066852A1 (ja) 2003-12-26 2005-07-21 Toyota Jidosya Kabushiki Kaisya 三次元cadデータの近似および表示方法、その方法を実行するシステム
US20060114252A1 (en) 2004-11-29 2006-06-01 Karthik Ramani Methods for retrieving shapes and drawings

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Raluca Diana Petre,外2名,"An experimental evaluation of eiew-based 2D/3D indxing methods",hal.archives-ouvertes,IL,2014年10月04日,https://hal.archives-ouvertes.fr/hal-00738212
中澤 昌俊,外3名,「見かけに基づく特徴量を用いた3次元形状の形状類似検索」,Virtual Computing グラフィックスとCAD 合同シンポジウム2003 予稿集,日本,社団法人情報処理学会,2003年06月19日,p.19-24

Also Published As

Publication number Publication date
CN108073682B (zh) 2024-03-29
US20180137118A1 (en) 2018-05-17
JP2018109948A (ja) 2018-07-12
EP3321817A1 (en) 2018-05-16
CN108073682A (zh) 2018-05-25
US10719549B2 (en) 2020-07-21

Similar Documents

Publication Publication Date Title
JP7049807B2 (ja) パラメトリックビュー関数に基づくデータベースの照会
CN108228987B (zh) 副本选择
JP6835484B2 (ja) 類似性基準を用いてデータベースにクエリを実行すること
JP6850116B2 (ja) 切り欠きの検出
JP6975558B2 (ja) モフォロジー基準によるデータベースの照会
JP6294072B2 (ja) 剛体運動によって変換される幾何学要素
JP7343963B2 (ja) 画像を入力とする関数を学習するためのデータセット
JP2017142780A (ja) 二次元画像からの三次元モデル化オブジェクトの認識
CN106227760B (zh) 用于构建、查询数据库的方法、装置和介质
CN105389412B (zh) 顺序更新的执行
CN105389413B (zh) 按序更新的准则
JP2020115340A (ja) 弱型定義を用いるモデリング
CN111524218A (zh) 设计以凸起或凹陷为特征的部件
JP7017852B2 (ja) 記述子を用いた3dオブジェクトの位置特定
JP6947503B2 (ja) 量子化を用いた3dオブジェクトの位置特定
CN112182790A (zh) 设计以凹凸为特征的零件
JP2021131852A (ja) 機械部品の構造シミュレーション
US20200211296A1 (en) Flexible modeling using a weak type definition
JP2008533614A (ja) 整合輪郭プロファイルを生成するシステム及び方法
JP2022065659A (ja) 3dクラスタリングのナビゲーション

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201001

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210624

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210720

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211020

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220308

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220328

R150 Certificate of patent or registration of utility model

Ref document number: 7049807

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150