JP4516957B2 - 3次元オブジェクトについて検索を行なうための方法、システムおよびデータ構造 - Google Patents

3次元オブジェクトについて検索を行なうための方法、システムおよびデータ構造 Download PDF

Info

Publication number
JP4516957B2
JP4516957B2 JP2006502981A JP2006502981A JP4516957B2 JP 4516957 B2 JP4516957 B2 JP 4516957B2 JP 2006502981 A JP2006502981 A JP 2006502981A JP 2006502981 A JP2006502981 A JP 2006502981A JP 4516957 B2 JP4516957 B2 JP 4516957B2
Authority
JP
Japan
Prior art keywords
model
skeleton
search
dimensional
graph
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.)
Expired - Lifetime
Application number
JP2006502981A
Other languages
English (en)
Other versions
JP2006520948A (ja
Inventor
カーティク ラマニ,
ナトラジ アイヤー,
クイヤン ロウ,
サブラマニアム ジャヤンティ,
Original Assignee
パーデュー リサーチ ファンデーション
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 パーデュー リサーチ ファンデーション filed Critical パーデュー リサーチ ファンデーション
Publication of JP2006520948A publication Critical patent/JP2006520948A/ja
Application granted granted Critical
Publication of JP4516957B2 publication Critical patent/JP4516957B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • 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/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]
    • G06F30/10Geometric CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/34Smoothing or thinning of the pattern; Morphological operations; Skeletonisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/196Recognition using electronic means using sequential comparisons of the image signals with a plurality of references
    • G06V30/1983Syntactic or structural pattern recognition, e.g. symbolic string recognition
    • G06V30/1988Graph matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/02CAD in a network environment, e.g. collaborative CAD or distributed simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/20Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/20Design reuse, reusability analysis or reusability optimisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Library & Information Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Computational Linguistics (AREA)
  • Computer Hardware Design (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)

Description

(優先権)
本出願は、米国仮出願第60/442、373号、2003年1月25日出願の、”3D形状探索システムのアーキテクチャおよび記述(Architecture and Description for 3D Shape Search System)”の優先権を主張する。この開示はここに引例として組み込まれている。
(技術分野)
本発明の実施の形態は一般に、探索および検索に関し、特に詳しくは、3次元オブジェクトに基づく探索および検索に関する。
(背景情報)
テキストおよび画像のサーチエンジンは、過去10年の間に相当開発されてきた。本発明は、コンピュータコンピュータ支援設計(CAD)モデルのリポジトリから3次元(3D)モデルを探索することを扱う。
CADおよびコンピュータ支援製造(CAM)ソフトウェアは、独立型環境からネットワークベースの協働環境へと成長してきた。3Dグラフィックスハードウェアにおける進歩は、3DCADモデルの使用がますます増加していることに大きく寄与している。3Dジオメトリの使用が増加することは、内部設計リポジトリにつながっていくことになる。これは、CADモデル等製品関連情報および仕様書、製造プラン等のコンテキスト固有の文書を含むものである。通常、設計リポジトリは、企業内の各種の部署/人員に拡大する分散型データベースに類似するものである。
設計者はしばしば、コストおよび時間の要件に拘束されるので、設計を再利用することは魅力的な選択肢である。設計を再利用するには、部品や組み立て品の過去の設計を探索することが必要になる。また、設計者が企業内で交代するので、多くの”ナレッジ”が過去の設計者と共に失われる。この”失われたコーポレートナレッジ”の大抵のものは、過去の設計を探索することにより、取り戻すことができる。明らかに、大量の設計リポジトリから過去の設計およびナレッジ再利用することは、製品開発時間を短縮する重要な要因となり、企業に効果のある戦略的な利点を与えることができる。
従って、次の問題に向けた技術を開発する必要がある。
・設計の再利用:企業内の過去の設計を探索することにより、設計を再利用することができる。クラスタマップインターフェースまたは3D簡易形状生成インターフェースを用いて、設計されたものに最も類似している部品を選択またスケッチすることができる。
・コスト見積もり:検索した部品の設計履歴を利用可能にするので、コスト見積もり処理が可能になる。設計者は最も類似の部品を探すことができるので、エラーを減らし、コスト見積もりにかかる時間を短縮することができる。
・見積もり処理の支援:見積もり要求を受け取ると、過去の設計を探索するのにしばしば時間がかかる。従って、見積もり要求(RFQ)に対応する時間を短縮する必要がある。
・部品分類システム:大抵の企業では、データベース内の部品を分類する人員を特に雇用している。これには時間はかからないが、人間の精度に依存していることにもなる。従って、この処理を合理化して、所望の基準値に基づいて部品を分類する必要がある。
・重複する部品の低減:部品を設計する前に、類似の部品がすでに設計されているかどうか、設計者はデータベースの利用可能な部品を探索して調べることができるようにする必要がある。
・3D形状のためのサーチエンジン:現在利用可能な3D形状サーチエンジンでは良い結果が得られない。従って、従来の3D形状サーチエンジンを改良する必要がある。
現在利用可能なデータベース探索技術は、キーワードまたは自然言語ベースの方法を用いている。しかしながら、3DCADデータベースの場合は、コンテキストがCADモデルから切り離されているので、キーワードを用いてCADモデルを探索することが困難である。また、モデルファイルネームを用いるキーワード探索等のアプローチが非効率的であるのは、大抵の企業は経時的に変化するネーミング方法を有しているからである。さらに、大抵の設計者は、製品コンテキストよりも形状を記憶する傾向があるので、キーワードベースの探索はユーザにとって魅力のあるものではない。
また、新薬発見およびドッキング等に応用するための3Dタンパク質構造を探索することを改良する必要がある。
(発明の要約)
本発明の実施の形態は、3D探索および検索の技術を提供する。特に詳しくは、またある実施の形態では、3D形状(オブジェクト)をグラフィックデータ構造として表現して、1つ以上の探索可能なデータ記憶装置に格納する。各3D形状または特定の3D形状の部品を、特徴ベクトルを用いてデータ記憶装置から検索することができる。特徴ベクトルは、位相情報および3D形状または3D形状の部品内のエンティティに対応付けられたローカル幾何情報を含む。
実施の形態のあるものでは、3D形状または3D形状の一部を、1つ以上の探索可能なデータ記憶装置に対する探索要求として用いることができる。探索要求として組み込まれた3D形状または部分を、対話形式でゼロから構成したり、3D形状または部品のデータ記憶装置を閲覧することにより選択したり、あるいは既存の3D形状または部品からペーストしたり選択したりすることができる。
さらに別の実施の形態では、3D探索要求から返送されたアンサーセットを、1つ以上の関連クラスタに構成することができる。各クラスタは、アンサーセットの特定の部分に対応付けられた1つ以上の3D形状または部品を含む。返送された結果およびクラスタを、対話形式で関連性または非関連性を評価して、変更した探索要求として再送信することができる。サーチャーが結果に満足するまで、対話回数および再送信して変更した探索要求数を続けることができる。また、関連性情報をサーチャーに対応付けて、サーチャーが発行した任意の次の探索要求をコンピュータで変更することができる。
(詳細な説明)
各種の本発明の実施の形態では、”ユーザ”という用語を提示している。ユーザはサーチャーであり、サーチャーは、エージェント、サービス、アプリケーション、物理ユーザ、その他等のコンピュータがアクセス可能な媒体として表される任意のエンティティとすることができる。また、各種の実施の形態ではデータベースの仕様が述べられているが、データベースを、電子ファイルになったもの、ディレクトリ、リレーショナルデータベース、オブジェクト指向データベース、データウェアハウス等の、任意のデータ記憶装置またはデータ記憶装置の集合とすることができることを理解されたい。最後に、3Dオブジェクトとは3D形状または3D形状の部分の電子表現であって、場合によっては3Dオブジェクトのあるのもを3Dモデルとして表示することができる。
図1は、3D形状探索システム100を示す図である。システム100はユーザに、3Dモデルの大量のリポジトリから類似のモデルを探索するプラットフォームを提供する。複雑な3Dモデルを、スケルトンと呼ばれるより簡単な表現に縮小する。3Dモデルおよびスケルトンとから重要な際立った特徴を抽出して、データベース内に特徴ベクトルとして保存する。最後に、データベースを探索して、結果をクラスタ化した出力として示す。複雑な3Dモデルを簡易なスケルトン形式(以下、”スケルトン化”という)に変換して、スケルトン表現を探索して、出力をクラスタ化するという処理の間、図1に示すようにたくさんの中間ステップが発生する。
探索システム100を、以下を含むように構成する。
・形状の小変更に反応しない。
・ジオメトリおよび位相の組み合わせ。
・形状のマルチレベルおよびマルチカテゴリ表現。
・精度および計算効率。
・簡単で、ユーザがカスタマイズ可能なクエリー構成。
(動的なクエリー生成および変更)
3D探索システム100は、ユーザにインテリジェントインターフェースを提供する。ユーザがモデルのスケルトンをスケッチしてこれをクエリーとして実行するだけでなく、ユーザが検索したモデルのスケルトンを動的に変更して、さらにユーザの意図する部品を発見する機会を向上させるように、3Dスケルトンモデリングインターフェースを実行する。システム100は、3Dスケルトンの生成および3D操作が可能な最初のものである。モデルのスケルトンの位相に対して変更が行われた場合は、システム100は再び探索を行うが、スケルトンのジオメトリに対する変更だけであれば、検索をやり直すだけである。この相互作用を介して、クエリーはさらにユーザの意図に近いものになり、システム100はその性能を効率的に向上させることができる。
(ローカルクエリー)
従来、ユーザが生成できるのは1種類のクエリーだけで、入力CADモデルを特定することにより類似のCADモデルを検索していたが、ユーザの要件を最適に満たすことはない。例えば、ユーザが特定の特徴により重要性(または強調)を与えたいと所望したり、彼/彼女の主な探索対象がモデル全体自体ではなくCADモデルのローカルな特徴であったりすることがある。このような柔軟性は、過去の装置およびそれらのインターフェースでは不可能である。各探索は異なるものであり、ユーザインターフェースは異なる要件を処理するのに十分な柔軟性を持つ必要がある。さらに、より良いクエリー処理は、各種の要求に対応する必要がある。システム100は、ユーザ要件により適切に合致するように設計され、これを達成するのに必要なクエリー処理を向上させるように設計されている。
(探索基準の柔軟性/普遍性)
過去の技術は一般に、2つの形状の比較に重点が置かれていた。しかし、アプリケーション分野に特有のたくさんの問題がある。主たる問題の1つは、CADモデルの類似性の解釈である。例えば、製造分野では、CADモデルの各種の機械加工特徴が非常に重要であると考えられている。任意の形状記述子の数字を計算するにあたって、確率論的形状分散方法では、特定のドメインをカスタマイズ可能することができないので、ユーザのニーズに適切に答えることができない。
(類似性の測定)
最後に、ユーザが入力と結果との間の形状の類似性を定量化したい場合がある。これは、形状関数方法ではある程度可能である。しかし、類似性自体の定義がユーザに依存している。従って、インターフェースは、形状の類似性に対するユーザの考え方を学習するようにする必要がある。これは、既存のリサー利技術では不可能なことである。
(形状:ジオメトリおよび位相の組み合わせ)
任意の3Dモデルの形状は、位相とその構成要素エンティティのジオメトリとの組み合わせである。ジオメトリはエンティティの形状、サイズおよび位置の定量的な大きさであるが、位相はモデルの幾何エンティティの間の関係情報である。従って、任意の写実的な形状表現は、これら2つの考えを十分に反映する必要がある。これらの特性を別々に表現することにより、類似の形状について階層的探索方法が行えるようになる。
従来技術のアプローチは、形状をこれらの量の1つとして、あるいは’複合の程度’のいずれかとして表現しており、ジオメトリと位相とをまったく区別していない。例えば、モーメント不変量および形状分散等の形状記述子は形状の’複合の程度’であって、モデルのジオメトリと位相とをまったく区別していない。ユーザの意図に基づく探索が可能でなければ、特定のアプローチは総じてまったく記述できない。グラフ/木等の関連構造で3Dモデルを表現することにより、ジオメトリと位相との間の違いをさらに維持することができる。しかしながら、グラフ表現だけでは、ユーザの意図を把握する問題を解決することはできない。従って、探索/索引処理の間に幾何情報を効率的に活用するには、さらにリサーチを行うことが必要である。
(木データ構造に代わるグラフデータ構造)
ここに新規の方法、システム、およびデータ構造について述べることで、なぜ従来の技術が機械工学等のある環境に応用できないかという理由を説明することにより、本発明を過去のアプローチから区別する。
従来のスケルトン/ショックグラフベースの3D形状照合システムは、マルチメデイア検索のために開発された。飛行機(全体の、概略の3Dモデル)、自動車、果物等のモデルが一般的である3Dオブジェクトは、ドメイン固有のものではない。従来のアプローチのあるものでは、位相にホールのないモデルについてテストが行われていたのは、閉じたホールを構成するサーフェス集合を有するソリッド形状を従来の木構造で取り込むことができないからである。しかしながら、このような閉ループエンティティに遭遇することはよくあり、特に機械工学分野で顕著である。これはそれらの表現のグラフ構造と呼ばれるものである。また、他の従来のアプローチは、ローカルジオメトリまたは部分的照合を比較するのには適応できないものである。ここに示すシステム100および他の新規の技術は、スケルトンをグラフデータ構造に変換して、ループをソリッド形状に取り込むものである。
(多段階探索方法)
従来技術では、1つのクエリーしか生成できず、この1つのクエリーを改良することができない。またその探索は、事前に定義した、特徴ベクトルの固定集合に基づくものであり、該当する形状の検索を保証するものではない。システム100により、ユーザが多段階探索インターフェースを連続して用いて、探索結果を選別することができるようになる。このアプローチは該当する形状の検索を保証するものではないが、該当する形状を検索する機会を増やすので、従来のアプローチに比べて基本的な改良をもたらす。モーメント不変量、ボリューム、アスペクト比、および固有値を含む多数の特徴をユーザに提供して、多段階クエリーを生成する際の支援を行うことができる。
(計算効率)
計算効率により、システムが莫大なボリュームを処理する能力を制御する。境界表現グラフに関する従来の方法のなかには、境界表現グラフが簡易3Dモデルのサイズとしては非常に大きくなると、非効率的なものがある。正確なグラフ照合アルゴリズムはNP困難となる。従って、境界表現グラフ方法を用いて任意のCADモデルをデータベース内の何百万もの部品と比較することは、スーパーコンピュータでも不可能と思われる。
図2は、CADおよび境界表現グラフを示す図200である。図200は、簡易部品とその対応する境界表現グラフとを示す。3Dモデルの比較のために開発された大抵の従来のアプローチは、ドメインナレッジを用いることに失敗している。この方向ではショック/スケルトングラフベースのアプローチが1歩先んじているが、モデルに存在する情報を適切に検索してグラフ/木照合問題の計算量を低減していない。本発明は、エンティティ(ループ/稜線)の種類、ローカルジオメトリおよびボリューム情報を含むドメイン固有のナレッジを用いて、探索の計算量を低減して、ドメイン固有の探索システムを開発する。
(ディスクI/O効率)
ディスクI/Oに関する従来の効率は、けして満足の行くものではない。CADモデルの数が非常に多くなると、ディスクI/O時間がクエリー時間の大きな部分をしめるようになる。例えば、データベースに百万個のモデルがあり、ディスクI/O時間が15ミリ秒で、および各CADモデルが1つのディスクページ(あるリサーチでは、照合から得られるディスクファイルは平均、1MBのディスク空間を占める)とすると、データベース内のレコードを柔軟にスキャンするのに4時間かかる。従って、データに索引を付けて探索速度を上げることが重要である。しかしながら、非常に成果を収めているB+木等の現在のデータベースシステムの索引構造は、これら多次元データには適当でない。従って、不要なディスクI/Oを選別する新しい索引が非常に重要である。しかしながら、この問題には十分重点が置かれていなかった。この理由の1つは、現在の3D形状探索の大抵のものが、効率的なアプローチのために、今だ非常に少ない数のCADモデルを探索することに重点が置いているからである。
(システム処理)
3Dモデルの探索処理について、次の動作シーケンスにより説明することができる:
(1.ユーザインターフェース側)
(1.1.クエリースケッチインターフェース)
・必要な形状を3Dでスケッチする。または、
・必要な3D形状のスケルトン(棒線画)をスケッチする。または、
・モデルクラスタからモデルを選択する。または、
・ローカルハードドライブから3Dソリッドモデルを選択する。または、
・3Dモデルのオーソグラフィックビューを実行するかスケッチする。
(1.2.特徴ベクトルインターフェース)
・探索およびクラスタ化のための特徴ベクトルの必要な組み合わせを選択する。
(2.サーバまたはサービス処理)
(2.1.ボクセル化)
・3Dモデルをニュートラルの離散ボクセル表現に変換する。
・3Dモデルおよびボクセル特徴ベクトルを抽出して保存する。
(2.2.スケルトン化)
ボクセルモデルの検出した位相により、3つのスケルトン化動作を実行する(詳細は後で示す)。
(2.2.1.角柱状スケルトン化)
(2.2.2.管状スケルトン化)
・簡易型ワイヤフレーム。
・スケルトン特徴ベクトルを抽出して保存する。
(2.3.グラフの生成)
・スケルトンタイプにより、スケルトンからエンティティを検出する(ループ、稜線またはサーフェス)。
・グラフ特徴ベクトルを抽出して保存する。
(2.4.2D図の3Dモデルへの変換)
・ノイズ消去。
・次元およびタイトルブロックの抽出および消去。
・2Dシンニングまたは2Dスケルトン化。
・稜線およびエンティティの認識。
・オーソグラフィックビューにおいて連続閉セグメントループを得る。
・内部独立ループの識別。
・MATを用いた非独立ループのスケルトン化。
・スケルトンの3Dスケルトンへの変換。
・任意の上記スケルトン化方法を用いた3Dモデルのスケルトンへの変換。
(3.データベース、探索およびクラスタ化)
(3.1.グラフの比較)
・グラフ/サブグラフ同定、対応付けグラフ技術または確率論的グラフ照合技術のいずれかによる。
(3.2.多次元索引構造の生成)
・R−木、R+木、KD−木、X−木または任意の他の空間パーティショニング技術を用いて、データベースに索引を付ける。
(3.3.特徴ベクトルの比較)
・特徴ベクトルのデフォルトの組み合わせを用いない場合は、1.2に記載のユーザ基本設定に基づく。
(3.4.データベース内のクラスタモデル)
・自己組織化マップ(SOM)または任意の他の階層型クラスタ化技術を用いる。
(3.5.クラスタマップディスプレイを介したユーザへの結果の提示)
・各クラスタから典型的なモデルを選んで、ユーザ一フレンドリーインターフェースを介して部品画像を表示する。
・モデルを選んで閲覧できるようにする。
(3.6.関連性フィードバック)
・ユーザが該当する部品、該当しない部品を選ぶ。
・サーバを介して結果をデータベースに返送する。
・ユーザ関連性フィードバック結果を用いて、クラスタマップを更新する。
・結果をユーザに再表示する。
(3.7.学習エージェント)
・ニューラルネットワーク等の学習アルゴリズムが、ユーザ関連性フィードバック基本設定を”学習”して、ユーザプロファイルに保存する。
(3.8.多段階探索)
・連続または段階的なやり方で、ユーザが異なる特徴ベクトルおよびスケルトングラフを用いて探索結果を絞り込めるようにする。類似性比較は、上記3.1および3.3に述べたものと同じである。システム100のアーキテクチャについては、図1に高レベルで最もよく説明する事ができる。以下のセクションでは、本発明の実施の形態についてより詳細に説明する。
(1.ユーザインターフェース側)
再び図1を参照すると、ユーザインターフェースは基本的に3つのインターフェースから成る。すなわち、スケッチによるクエリー(Query−by−sketch:QBS)、例示によるクエリー(Query−by−example:QBE)、および特徴ベクトルインターフェースである。QBSインターフェースは、2つの異なるバージョンを実行する。(i)3Dソリッドモデルスケッチインターフェースと、(ii)3Dスケルトンスケッチインターフェースとである。QBEインターフェースは、(i)クラスタマップインターフェースと、(ii)ローカルハードドライブと、(iii)2D図インターフェースとから成る。
(1.1.クエリーインターフェース)
次のサブセクションでは、本発明のシステム(QBSおよびQBE)において、3Dソリッドモデル、3Dスケルトンモデルとして直接に、または3Dモデルの2Dビューからのいずれかからクエリーを構成するために用いられる各種の方法およびモジュールについて説明する。
(1.1.1.3Dソリッドモデルスケッチ)
(モジュールの説明)
このモジュールは、概略の幾何形状をできるだけ素早く生成する、ウェブベースでプラットフォーム独立型システムを提供する。これは、ハイブリッドアプローチを形状生成に用いる。例えば、特徴ベースでスケッチベースのソリッドモデリングを用いる。スケッチインターフェースにより、マウスストロークを解釈して、これら離散ストロークを、ベクトル化アルゴリズムを用いて線、点、円弧といったプリミティブエンティティに変換する。次に、変換したスケッチを用いて、ソリッドジオメトリを形成することができる。また、ユーザは、ブロック、円柱ホール等の事前に定義した形状特徴をプリミティブ構成ブロックとして用いることもできる。次に、これら特徴のフェースをキャンバスとして用いて、さらにスケッチを行うことができる。
システム100は以下のように動作する。
・形状探索ウェブサイトにログインした後、ユーザは新しいセッションを開始する。
・ユーザはすでに存在するCADファイルをアップロードするか、または開く。
・モデリングを開始する別の方法は、ブロック、円柱といった、事前に生成したソリッド形状特徴をドラッグアンドドロップしたり、マウスまたはペンをドラッグして概略のスケッチプロファイルをスケッチしたりすることにより行う。
・スケッチを生成したならば、これをサーバに送って押し出しを行う。個別のボタンを用いるか、押し出しを示すマウスまたはペンストロークを介するかのいずれかにより、これを行うことができる。
・サーバはコマンドを受信して、これにより、スケッチを押し出しソリッドに変換して、ファセット化オブジェクトをクライアントに返送する。
・新たに生成したソリッドを、クライアントウインドウで表示する。
・ユーザはソリッドのフェースを選択して、この上でスケッチを行う。
・ドラッグした、事前に定義した形状特徴を編集して、概略の形状を得ることができる。この編集には、特徴の次元または位置の変更、特徴のコピーや特徴の削除または表示しないこと等が含まれる。
・概略の幾何形状により、ソリッドに不要のぶら下がりや突き出した部分がある場合がある。ユーザは次に、3Dイレーザを用いて不要の部分を消去することができる。
・計算集約型機能の大部分、例えばソリッドモデリング、特徴生成および変更を、クライアントのサイズを小さくするために、サーバに移行する。
(モジュールアーキテクチャ)
図3は、モジュールインビューアーキテクチャ(Module−in−View Architecture:MVA)で発生する相互作用を示す図300である。提案したインターフェースは、ツールCADアーキテクチャに基づく。これは、モデルビューコントローラ(Model−View−Controller:MVC)アーキテクチャから成る。これがモジュールの要を形成する。
・モデルはアプリケーションオブジェクトである。この場合のジオメトリオブジェクトである。これは、生成したジオメトリの詳細を含む。この場合のジオメトリは、生成したソリッド形状から成る。
・ビューは、モデルの画面表現である。マジシャンライブラリを用いて、それらの対応する相対変換を用いてファセット化ジオメトリオブジェクトを表示する。
・コントローラはユーザインターフェースがユーザ入力に反応する手段である。マジシャンライブラリを用いて、選択、ドラッグ等のユーザ入力を取り込む。
図4は、MVA300の機能を示す図400である。この場合、図400は生成した特徴およびスケッチのリストを有する。特徴は事前に定義したオブジェクトで、フェース、稜線のリストといったデータを有する。押し出されたスケッチを特徴に変換する。元となるスケッチに対してポインタを有している場合に限り、これらは事前に定義した特徴と同じである。図400は、ユーザに提示するファセット化データから成る。ユーザはこのデータで対話して、これを変更することができる。
図5は、特徴インターフェースオブジェクト500を示す図である。これによりさらに、モデルが複数の生成物を保つことができる階層へのもう1段階を表すこともできる。各生成物は個別のジオメトリオブジェクトを有し、生成した、または事前に定義した特徴を順に有することになる。ジオメトリはまた、特徴にブール演算を行った後で形成したソリッドモデルのファセット化表現も有することになる。ユーザに表示するために、このファセット化構造500を、ビューオブジェクトで用いる。
特徴モジュール:特徴は事前に定義した3D形状で、ソリッドモデルの生成に直接用いることができる。しばしば、ユーザは同じ形状を何回もモデルに保ちたいことがある。最も共通する例は、矩形ソリッドブロック、円柱、ホール、スロット等があげられる。ジオメトリ生成速度を向上するには、作業空間に配置できるようにこのような形状をいつも準備する。これら形状は、作業空間に最初に配置された時に、デフォルトサイズを有している。しかしながら、特徴の各フェースは、特徴のサイズおよび位置を操作するためのハンドルを有する。特徴を選択すると、これらのハンドルを表示して、ユーザがこれらのハンドルをドラッグして、対話形式で特徴のサイズを変更する。ACISソリッドモデルを用いて特徴を生成する。これはサーバに送られて、次にファセット化されてフェースのリストを生成する。各特徴を用いて、これらフェースの稜線を抽出して保存する。すべての特徴は、単に稜線のリストとして表される。従って、ユーザが特徴を選択すると、それはワイヤフレーム方式で示される。しかしながら、特徴の実際の3Dモデルをサーバ側に保存して、次にこれを用いて、前に生成した全形状についてブール演算を行って、最終的な形状モデルを得る。各スケッチして押し出した形状もまたユーザ生成の特徴で、後で用いるために別々に保存することができる。従って、インターフェースは非常にカスタマイズ可能なものである。これらのユーザ生成の特徴は、これらを生成した元となるスケッチに対してポインタを有している。
スケッチモジュール:ユーザがスケッチ面を定義した後で、スケッチは、画面に対して並列になるようにスケッチ面を自動的に回転することにより開始する。ユーザは次に、アウトラインまたはプロファイルをスケッチする。プロファイルを次に、ベクトル化アルゴリズムによりベクトルに解釈する。例示だけであるが、ダブ・ドリ(Dov Dori)およびリュー・インウェン(Liu Wenyin)のベクトル化アルゴリズム等である。これらのベクトルでワイヤのプロファイルを形成して、押し出しによりソリッドを形成する。
形状生成ツール:処理を簡単にするため、ツールをいくつか選択として用意する。これらのツールは以下のものとすることができる。
スケッチ面:ユーザはソリッド形状の任意のフェースを選択して、次の方法のいずれかでスケッチ面を生成する。例示のスケッチ面ツール600を図6に示す。このツールで次の処理を実行することができる:
1.すでに生成したソリッドのフェースに対するオフセット
2.3つの点を選択して、それを介して面を送る
3.既存のソリッドの任意の稜線を選択して、それを介して面を生成する
4.ソリッドの任意の稜線でスケッチ面を回転する。
切断面:切断面は、スケッチ面と同様である。しかしながら、ユーザが対話形式で用いてソリッドに切り込みを入れる。面は、任意のスケッチしたプロファイルとすることができる。例示の切断面ツール700を図7に示す。図7は、切断面ツール700の動作を示している。このツール700はフェースをドラッグする機能を用い、次にACISを用い、最後にソリッドに切り込みを形成する。
デジタルペンまたはマウスストロークを介する押し出し:この機能は、2D形状プロファイルから押し出しを形成するために重要である。一旦スケッチループが完成すれば、ユーザがマウスまたはデジタルペンといった同じ装置を用いてプロファイルの押し出しを行えることは、直感での使用を超えるものになる。従って、ユーザがループを完成させた後、ユーザに次のマウスストロークまたはドラッグを介する押し出しの実行を促し、彼/彼女が所望するプロファイルの押し出しを行うまで、対話形式でデプスを指定する。これは切断面を用いることにいっそう類似している。例示の押し出しツール800を、図8に示す。
3Dイレーザ:この機能を用いて、ソリッド特徴のぶら下がり部分を消去することができる。このために、ソリッド形状のボクセル化モデルを用いる。図9の例示の3Dイレーザツール900に示すように、ユーザは選択により消去するボクセルを選択して、次にこれが終わったら、ソリッドモデルを用いて選択したボクセルのブール減算を行って、結果をユーザに表示する。ユーザは、元となるボクセルモデルを見ることもできるし、見なくても良い。このツール900を用いて、モデル内の任意の不一致を消去する。
(1.1.2.3Dスケルトン生成および変更インターフェース)
ユーザがモデルのスケルトンをスケッチして、これをクエリーとして実行するだけでなく、ユーザが検索したモデルのスケルトンを動的に変更させることができるように、3Dスケルトンモデリングインターフェースを実行する。モデルの位相に対して変更が行われた場合は、システムは再び探索を行うが、スケルトンのジオメトリに対する変更だけであれば、検索結果を整理し直すだけである。クエリーはさらにユーザの意図に近いものになり、システムはその性能を効率的に向上させることができる。
ユーザがクエリーのための適した例を見つけられないという事実により、このインターフェースを起動する。システムにより、ユーザはまず、プリミティブ形状を組み立てることにより3Dスケルトンを構成して、次に3D空間で形状を操作することができる(図10の、3D形状操作のビューを示す図1000を参照のこと)。得られた”スケルトン”は、ちょうどスケルトン化から得られたスケルトンファイルのように、基本的な位相および幾何情報を含む。現在、プリミティブ形状は、直線および曲線等の稜線と、円および矩形等のループとを含む。3D操作の注釈は、回転、パン、スケーリング、ズーム等を含む。これらは、個別の形状プリミティブおよびグローバルアセンブリの両方のために設計されている。また、インターフェースにより、ユーザが選択した形状を削除し、現在の構成をクリアし、スケルトングラフファイルをインポートしてこれをビジュアル化し、構築したスケルトンクエリーとして実行して類似の形状を探索することが可能になる。
(1.1.3.クラスタマップインターフェース)
セクション3.5の記載と以下の記載を参照のこと。
(1.1.4.ローカルハードドライブインターフェース)
すでに生成したCADファイルを選択する選択肢をユーザに与える。ファイルは、ユーザがファイルにアクセス可能な場所ならばいずれの場所にも配置できる。ファイルは、本発明でサポートされる任意のCADフォーマットとすることができる。標準のポップアップウインドウをユーザに用意して、CADファイルを選択できるようにする。
(1.1.5.2D図インターフェース)
ユーザには、それらのスキャンした図をサーバに送信する選択肢を用意する。
(1.2.特徴ベクトルインターフェース)
本発明は、図11の図1100に示すように、ユーザがユーザの探索意図を正確に記述することにより、特徴ベクトルを部分的または全体的にカスタム化する技術を含む。探索クエリーを複数のレベル/段階で実行して、より良い結果を得る。このインターフェースにより、ユーザが異なる特徴ベクトルを探索処理内のこれら各種の層に割り当てることが可能になる。これにより、ユーザがユーザの探索意図をより正確に記述することを支援する。ユーザはさらに、ユーザの探索を向上させるのに適用できるように、重みをこれら特徴ベクトルに再割り当てすることができる。インターフェース内で各種の選択肢を実行することによりシステムに命令して、正確な、または部分的な探索を行うことができる。部分的探索クエリーはサブグラフ同定を含み、これはスケルトングラフレベルで処理される。また、ユーザは、ニューラルネットワークを用いて効率的なクエリー結果を得ることができる。ユーザは、自分の探索基本設定を設定して、これを自分のプロファイルに保存することもできる。ユーザは、自分の頻繁に用いる要件ごとに、複数のプロファイルを各種の探索状況に定義することができる。また、このインターフェースにより、ユーザがこれらのプロファイルを管理して、関連性フィードバックをシステムに備えることも可能になる。
(2.サーバまたはサービス側)
(2.1.ボクセル化)
ボクセル化は、3D幾何オブジェクトをそれらの連続幾何表現からボクセルの集合に変換する処理である。これにより、連続オブジェクトを3D離散空間に最もよく近似する。3D離散空間は、デカルト座標(x,y,z)で定義される3Dユークリッド空間の一体化したグリッド点の集合である。ボクセルは、一体化したグリッド点を中心とした空間格子ボリュームである。ボクセル値を{0,1}にマッピングする。”1”が割り当てられたボクセルを”ブラック”ボクセルと呼び、不透明なオブジェクトを表し、”0”が割り当てられたものを”ホワイト”ボクセルとして、透明な背景を表す。図12は、2D空間の離散化の一例を示す図1200である。
頂点、稜線またはフェースを共有している場合は(図12を参照のこと)、2つのボクセルは”26隣接”である。各ボクセルは26個のこのような隣接ボクセルを有する。8個は頂点(角)を中心ボクセルと共有し、12個は稜線を共有し、6個はフェースを共有している。フェース共有ボクセルを”6隣接”と定義して、稜線共有およびフェース共有ボクセルを”18隣接”と定義する。ボクセル化の従来のアプローチでは、多角形モデル、パラメトリック曲線または陰関数表面を入力として用いる。スキャン充填または反復細分アルゴリズムを、ボクセル化に用いる。ボクセル化の前に、モデルを変換およびスケーリングに対して正規化する。スケール要因をデータベースに保存して、さらに計算を行う。
一実施の形態では、3Dモデルのボクセル化のACISソリッドモデリングカーネルを用いる。ACISカーネルに対する入力は、境界表現モデルである。図13は、ボクセル化アルゴリズムの例示の疑似コードを示す図1300である。一実施の形態では、3Dモデルの境界ボックスを構築して、最小境界ボックス次元により選択したボクセルサイズ、またはユーザ指定のボクセルサイズを用いる。次に、離散境界ボックスの次元を計算する。3Dモデルの全フェースおよび稜線にはそれぞれ、フェースIDと稜線IDとが割り当てられていて、スタックを各フェースおよび各稜線に生成する。各種のプログラム条件やメモリ等により、フェースおよび稜線スタックを独立させることも、依存させることもできる。ボクセルサイズを増分することにより3Dモデルをループして、モデルとの各ボクセルの交点を調べる。’1’を、ボクセルを含む位置でテキストファイルに追加して’0’をボクセルを含まない位置にそれぞれ追加する。ボクセルを含むすべての位置には、モデルと交差するすべてのフェースおよび稜線が与えられて、対応するフェースおよび稜線のフェースIDと稜線IDとを検討中のボクセルに保存する。ボクセルと交差するフェースおよび稜線については、検討中のボクセルをフェースおよび稜線スタックに保存する。従って、現時点では、フェース/稜線からボクセルを参照したり、その逆を行ったりすることができる。この文書のいずれかに記載の簡易型ワイヤレームアルゴリズムへの入力としてこれを用いることができる。多角形モデルのボクセル化についても行うことができることに留意することは重要である。多角形モデルのボクセル化処理について、次のセクションで示す。
3Dモデルは、フェースオブジェクトのリストから成る。フェースオブジェクトは、得られる3次元ソリッドのフェースを表す。フェースは、フェースの頂点の整列したリストと、図14に示す例示の3Dモデル1400に示すようなファセットオブジェクトのリストとから成る。ファセットリストは、ソリッドのフェースを三角形にすることにより生成した三角形のリストを含む。この構造は、ソリッドモデルの正しいワイヤフレームビューを示すことができるので、ファセット三角形のリストだけを保存することよりも良い。この構造はまた、フェースに属するすべての三角形の情報を維持する。これにより、クライアント側でフェースを選ぶことができるようになる。図15は、立方体1500のこのデータ構造の一例を示す。立方体1500は、6つのフェースオブジェクトから成る。フェースオブジェクトは、点およびファセットオブジェクトから成る。例えば、フェース2は4点(A、B、C、およびD)と2つのファセットオブジェクトから成る。図15に示すように、ファセットオブジェクトの1つは、3つの点A、BおよびCと、ファセットに対する法線と、およびファセットが属するフェース数とを保存する。ファセットとフェースとの間のマッピングがわかっているので、多角形モデルのボクセル化を行って、上記図13の例示の疑似コード1300で述べたように、フェースIDを各ボクセルに保存することができる。
例示のボクセル化アルゴリズムと前述のアプローチとの間の大きな違いについて、以下に列挙する。
並列化:ボクセル化は簡易ドメイン分解問題なので、並列計算の対象となる。各スレーブ処理装置にドメイン範囲を割り当てることができ、マスタ処理装置は結果を集めることができる。
ボクセルサイズ:3Dエンジニアリングモデルのボクセル化のサイズ範囲を拡大する。大抵のエンジニアリング形状に対する理想的なボクセルサイズは、最小境界ボックス次元の1/32〜1/64倍の範囲にある。”理想的な”ボクセルサイズの条件は、部品の大きな特徴がボクセルモデルに取り込まれていることである。すなわち、非常に小さな特徴がボクセル化する間に失われてしまうのは、特徴サイズがボクセルサイズよりも小さいからである。
適応ボクセル化:3Dモデルの適応ボクセル化を実行する。適応ボクセル化は、3Dモデルをボクセル化して、ボクセルモデルを3Dモデルとの正確度について評価して、および最後に許容できるボクセルモデルが得られるまで、前のボクセルサイズをより小さいボクセルサイズに成るまで再びボクセルかするという反復処理である。
フェース/稜線情報のボクセルへの保存:3Dモデルはフェース/稜線情報を各サーフェスボクセルに保存している。ボクセルに保存にしたフェースIDの一例を、図16の図1600に示す。ボクセル化の前に、フェースおよび稜線IDを、3Dモデルの各フェースおよび稜線に割り当てる。ボクセル化が実行されているので、各ボクセルに対するフェース/稜線の交点を調べて、フェース/稜線IDを交差しているボクセルに保存する。稜線ID保存処理は、図16に示すフェースIDの保存処理と同様である。フェース/稜線ID情報を簡易型ワイヤフレームに用いる。これは本発明で後からより詳細に説明する。
ソリッドモデリングカーネルを用いるボクセル化:各種の本発明の実施の形態では、任意の利用可能なアルゴリズムを用いてボクセル化を実行するのとは反対に、ACISソリッドモデリングカーネルを用いてボクセル化を実行している。これが重要な理由は、従来利用可能なアルゴリズムでは、フェースおよび稜線IDをボクセルモデルに保存することが不可能だからである。
他にも本ボクセル化アルゴリズムをいろいろ用いることができる。例えば、
距離ボリューム生成:距離ボリュームを、ボリュームデータセット内で表現する。特定のボクセルに保存にした特定の値はそれを表す3Dモデルのサーフェスまでの最短距離を表している。距離ボリューム表現は、多数のグラフィックスアプリケーションにとって重要なデータセットであり、製造における視覚化領域では最も顕著である。モデルのサーフェスからの距離を計算して、ボクセルデータ構造にそれを保存することができるので、距離ボリュームは、ボクセル化にACISを用いることでの自然の成り行きである。距離ボリュームを用いるアプリケーションのいくつかとして、CSGサーフェス評価、オフセットサーフェス生成、実形状製造における最大または最小厚さの範囲の決定、および3Dモデルモルフィングがあげられる。
(2.2.スケルトン化)
(2.2.1.スケルトン化の定義)
各種の本発明の実施の形態では、スケルトン表現(以下”スケルトン”)を、3D部品の主形状の最小表現”として定義している。言い換えれば、スケルトンは、小さな円弧やホール等の形状の”小さな”特徴は無視しているが、”主な”特徴は保持して、部品の”主な”位相関係を保っている簡易型表現である。スケルトン化は、このようなスケルトンを生成する任意の処理である。
スケルトンは、
a.境界から生成され、
b.接続性を保ち、
c.境界ノイズが無く、
d.回転不変量で、
e.計算が簡易である。
(2.2.2.スケルトンの数学的モデルおよびスケルトン化)
(スケルトンの正規の定義)
スケルトンは、タプルS=〈G,T〉ただし、
G={g,g,…,g}はスケルトンを構成する幾何エンティティの有限集合で、且つ、
Tが、要素Gの間の位相接続性を定義する、n×n隣接関係行列である。
スケルトンが存在するには、Gを以下の集合として定義する:
G=E∪L∪S∪H、ただし、
E={e,e,…,e}は稜線の集合で、
L={l,l,…,l}はループの集合で、
S={s,s,…,s}はサーフェスの集合で、
H={h,h,…,h}はホールの集合である。
しかしながら、集合E,L,S,およびHは、インスタンスSについてすべてがゼロ以外である必要はない。
行列Tを次のように定義する:
T=[tijn×n、ただし、
ij=gがgに隣接しているならばN
そうでないならば0
且つ、Nは、エンティティgとgとの間の接続性を記述するゼロ以外の数である。
スケルトンが存在するには、GとTとはゼロ以外でなければならない。
(幾何特徴の正規の定義)
形状Ψの幾何特徴γを、スケルトンSたった1つの幾何エンティティに縮小する幾何エンティティe(i=1..n)の集合として定義する。場合によっては、全形状を1つの幾何特徴とすることが可能である。
図17に示す例示の形状1700では、Ψ内の幾何エンティティが3つ以上であっても、形状Ψに2つの幾何特徴が示されている。スケルトンSは2つの幾何エンティティを有する。ループおよび稜線である。
(形状の正規の定義)
形状は、タプルΨ<γ,τ>である。ただし、γ={γ,γ,…,γ}形状を構成する幾何特徴の集合で、且つ、
τは、要素γの間の位相接続性を定義するm×mの隣接関係である。
行列τ=[τuvm×m、ただし、
τij=γがγに隣接しているならば1
そうでないならば0
形状が存在するには、γとτとが共にゼロ以外である。
(スケルトン化の正規の定義)
スケルトン化を、マッピングO:Ψ→S−□と定義する。ただし、
は、形状Ψをスケルトン化演算子にかけて生成したもので、□はスケルトン化の間に除去したノイズ係数である。
スケルトン化マッピングの一例である図18に示すように、本コンテキストスケルトン化は多対1マッピングであることが容易にわかる。
(2.2.3.形状のカテゴリ分類)
工学的形状を、次のカテゴリに分類することができる:
i.ソリッド:ソリッド様形状は通常、そのサイズと比較して、素材の使用率が高い。大抵、一定でない壁の厚さを有し、特徴がほとんどない。ソリッド形状は通常、機械加工または鍛造で製造される。成形または鋳造等の実形状処理で製造されるソリッド部品は非常に少ない。
ii.シェル:シェル様形状は通常、そのサイズと比較して、素材の使用率はきわめて小さい。大抵、一定の厚さを有し、簡易な形状である。ソリッド形状は通常、シート状金属または成形または鋳造等の実形状処理で製造される。管状形状についても、シェル様形状のカテゴリに入る。
iii.ハイブリッド:名称が示唆するように、ハイブリッド形状は、上記2つの形状の組み合わせである。形状のある部分はソリッド様特徴を有し、ある部分はシェル様特徴を有する。通常、成形または鋳造により製造される。
図19に例示の各タイプの形状を示す。
(2.2.4.スケルトン化方法)
上記の形状の3つのカテゴリに対するスケルトン化方法は互いに異なることがわかる。また図19は、形状の異なるカテゴリに対するスケルトン化方法を示す。例えば、ソリッド形状のための角柱状スケルトン化方法、特別なカテゴリである管状形状(これはシェル様である)のための管状スケルトン化方法、残りの形状(シェル様またはハイブリッドである)のための簡易型ワイヤフレーム方法である。角柱状、管状および簡易型ワイヤフレームスケルトンの任意の組み合わせを、ユーザが適切に相互作用させてスケルトンとして形成することもできる。
(2.2.4.1.角柱状スケルトン化)
スケルトンの概念は、形状の一意の記述子である。従って、本発明の実施の形態のあるものでは、スケルトンは、類似の工学的特性を持つ形状の種類について説明している。各種の本実施の形態は、類似のスケルトンを探索する。これにより、類似の形状を導く。画像処理の関連領域では、スケルトン化処理を用いて、複雑なピクセル(2D)またはボクセル(3D)離散ジオメトリをワイヤ(1D)表現に単純化する。スケルトンから3Dジオメトリを生成する3つのアプローチは次の通りである:
i.距離変換:距離変換は、スケルトン化で広く用いられている。早く簡単に計算を行う。しかしながら、遠くからスケルトンを変換するには、かなりのノイズ除去が必要となり、しばしば位相が不安定になる。すなわち、位相を保てない。
ii.ユークリッドスケルトン:ユークリッドスケルトンは、内側軸変換とも呼ばれる。これらは計算上複雑で、スケルトン化の間に不要の付属物を生成する。これらの理由により、ユークリッドスケルトンを本発明の各種の実施の形態で用いることは、好ましくない。しかしながら、さらに簡潔化処理を発展させて、本発明で用いることができる。ユークリッドスケルトンの一例を図20に示す。
iii.シンニングアルゴリズム:シンニングアルゴリズムは、医用画像作成分野で広く用いられている。シンニングは、ボクセルモデルをボクセルの厚さであるスケルトン表現に縮小する処理である。条件位相保存する条件を調べた後で、ボクセルを消去する。6つの方向は通常、位相接続性を調べるために定義される。上下東西南北である。シンニングアルゴリズムには、従来2つのタイプがある。直列と並列である。
名称が示唆するように、直列アルゴリズムは、ボクセルを6つの方向の任意の1つから別々に消去することにより、シンニングを実行する。並列アルゴリズムは、ボクセルを6つの方向すべてから同時に消去する。実際には、これらアルゴリズムのいずれもシンニングに用いられる。本発明では、任意の並列シンニングアルゴリズムはいずれも、中間サーフェスを用いるというよりもむしろ、3Dボクセルモデルを内側軸に縮小する。その中間サーフェスおよびその中間の、例示の3Dボクセルモデルを図21に示す。位相接続性、小変更下での安定性、および計算効率の要件のバランスが最もよくとれているので、シンニングは、本発明でスケルトン化方法として用いる方法である。また、距離変換とシンニングとの組み合わせを用いて、角柱状スケルトンを得ることができる。
(2.2.4.2.管状スケルトン化)
管状モデルを、1つ以上の管構造を有する3Dジオメトリモデルとして定義する。シンニングアルゴリズムは、角柱状部品に基づいて、3D管状部品のシンニングを行うと、不測の結果が生じることが間々ある。例示の図22の管状部品に示すように、部品が複数の管から成る場合は、シンニングアルゴリズムはうまく作用しない。この場合は、内部キャビティボリューム充填(Filling Internal Cavity Volume:FICV)と呼ばれる前処理工程を部品ボクセルに用いて、管状部品ボクセルを角柱状部品ボクセルに変換することができる。
図23は、充填して管状部品ボクセルを角柱状部品ボクセルに変換する必要があるボリュームを示す。図23の陰影の付いたボリュームを、管状キャビティボリュームと呼ぶ。FICVに基本的な概念は、管状キャビティボリュームの充填である。管状キャビティボリュームを充填するには、キャビティボリュームのどの部分を充填するのか、モデルの境界ボリューム内の全キャビティボリュームから識別する必要がある。ボクセルモデルを介してキャビティボリュームを得ることができる。ボクセル化の後、ボクセルがモデル内に存在する場合は、各ボクセルは”1”の値を有し、ボクセルがモデルの外にあれば、”0”の値を有する。図24の画像2はボクセル化の結果を示し、図24の画像4はキャビティボリュームを表す逆のボクセル化の結果を示す。しかしながら、キャビティボリュームが常にキャビティボリュームを意味するわけではないのは、キャビティボリュームが境界ボリューム内の余分なボリュームも含んでいるからである。ボクセルの位置に基づいて、キャビティボリュームを、内部キャビティボリュームおよび外部キャビティボリュームとして分類することができる。内部キャビティボリュームは、部分が囲むキャビティボリュームの一部である。管状構造では、この内部キャビティボリュームにより管のキャビティボリュームを表すことができる。内部キャビティボリュームとは逆に、外部キャビティボリュームは、モデル境界の外側に位置するキャビティボリュームの一部である。FICV処理は、キャビティボリュームの内部キャビティボリュームと呼ばれる管状のボリュームをどのように識別するかということに大きく寄与している。
内部キャビティの主な特性の1つは、その視認性である。大抵の場合、内部キャビティボリュームはモデルに隠れているか、遮られているので、外部ボリュームよりも見えにくくなっている。ボリュームがどの程度見えているかを測定するには、視認性の度合を定義する。視認性の度合は、ボリュームがどの程度見えているか識別するものである。ボリュームが全方向から完全に見えている場合は、その視認性の度合は1である。ボリュームが完全に他のオブジェクトから遮断されている場合はどの方向からも見えないので、その視認性の度合は0である。”A”のキャビティボクセル(図25に図示)の場合、管状ボリュームの入り口にあるので、ボクセル半分見えているためその視認性は0.5である。FICV処理の基本的なやり方は、その視認性を用いて内部キャビティボリュームを識別することである。まず、FICVによりキャビティボリュームをボクセル化して、各キャビティボクセルの視認性の度合を測定して、その視認性の度合いが低い場合はキャビティボクセルを内部キャビティとして決定する。
数学的な形式で視認性の度合いを表すには、ソリッド角度の概念を本発明の実施の形態に用いる。ソリッド角度を、半径の二乗に数値的に等しいそのサーフェス状の領域により、球体の中心に振られた角度として定義する。図26は、ソリッド角度の概念を示す。図からわかるように、図26以外に、形状の領域はまったく問題ではない。同じ領域を持たない球体のサーフェス状の任意の形状により、同じサイズのソリッド角度を定義する。また、図2600はソリッド角度を定義する要素を示すだけで、ソリッド角度それ自体ではない。ソリッド角度は円すい形に切り取られた空間の定量的なもので、その頂点として球体の中心と、その球状断面の1つとして球体サーフェス状の領域とを持ち、無限に伸びている。最大ソリッド角度は約12.57で、単位球面の全領域に対応し、4πである。ソリッド角度の標準単位は、ステラジアン(sr)である(数学的に、ソリッド角度に単位はないが、実用上ステラジアンを割り当てている)。すべての可視方向を単位球面に投影すると、視認性の度合は次のようになる。
視認性の度合=単位球面の可視領域/単位球面のサーフェス領域
指向性の視認性を、ある方向でボクセルが見えるか見えないかによって定義する。ボクセルのすべての指向性の視認性がわかれば、次に視認性の度合を計算することができる。ボクセルからの方向の数無限なので、ボクセルのすべての指向性の視認性を計算する計算コストは非常に高くなる。計算コストを節約するには、離散指向性の視認性を計算する。離散指向性の視認性という発想は、ボクセル内の有限数の可視方向を等しく分散して定義して、可視領域に対し可視方向の全数をマッピングすることである。N個の等しく分散した方向を定義して、M個の可視方向が存在するとすると、視認性の度合いを、M/Nと表すことができる。分散型等しく分散した方向を集めるには、本発明では、マスクと呼ぶN×N×Nサイズの立方体を用いる。図27は、3×3×3マスクを示す。図27では、各境界ボクセルはボクセルからの可能な可視方向を表す。例えば、指向性のマスクボクセル”A”は、デカルト座標の方向(−1,−1,l)を表す。ボクセルが方向”A”からみえるならば、次にマスクボクセル”A”が見えると印をつける。そうでなければ、見えないと印をつける。この場合、各マスクボクセルは、単位球面を4π/26(全単位球面サーフェス領域/可能な方向の数)ステラジアン占めているものと考えられる。26方向の視認性をすべて得た後で、視認性の度合を以下の計算式の定義から計算することができる。
視認性の度合=単位球面内の可視領域/単位球面のサーフェス領域
=可視マスクボクセル数/全マスクボクセル数
この発想は、N×N×N個のマスクに発展させることができる。例えば、5×5×5マスクは、5−3=98個の指向性マスクボクセルをマスクの境界に有し、N×N×N個のマスクは、N−(N−2)=6N−12N+8個の指向性マスクボクセルを有することになる。
方向(a,b,c)の指向性の視認性を、光線追跡法を用いて計算することができる。光線(a,b,c)を中心ボクセルに放射する。任意のモデルボクセルを通過したならば、次にボクセルは(a,b,c)方向で見えなくなる。言い換えれば、光線が全キャビティボクセルを通過して、最後にその境界当たるなら、次にボクセルは方向(a,b,c)で見えることになる。(a,b,c)方向の指向性の視認性をN×N×Nマスクについて決定するには、マスクの中心から光線(a,b,c)が通過したボクセルのすべての位置を知る必要がある。3Dベルセンハムアルゴリズムは、個の問題を解決する最も一般的に用いられているアルゴリズムである。
本発明の実施の形態では、ボクセルを通過して、3D空間に展開するために2Dブレセンハムアルゴリズムをどのように応用するか、示している。図28は、ブレセンハムアルゴリズムが2次元空間でどのように作用するか示している。2D面のにu=v線があり、ペンを原点から”P”の位置まで引いたと仮定する。次のステップは2つ考えられる。点Aへの対角線と、点Bへの水平のステップである。
Figure 0004516957
ならば、次に点Aは点Bよりも完全線に近づき、そうでなければ、点Bが点Aよりも近づく。次に、アルゴリズムにより、より近い点として次のステップを選択して、次のステップの発見を繰り返す。アルゴリズムを、3Dドメインに展開することができる。線
Figure 0004516957
が3D面にあり、|u|>max(|v|,|w|)と仮定する。次に、ベルセンハイムアルゴリズムをP:(x,y)およびQ:(x,z)ドメインに適応可能で、結果点の集合(x,y)、(X,y)、(x,y)…および(x,z)、(x,z)、(x,z)…となる。次に、PドメインおよびQドメインをxで合成する。その結果、点の集合(x,v,z)、(x,y,z)、(x,y,z)…が得られる。
図29は、2Dの7×5マスクにブレセンハムアルゴリズムを用いて、どのように指向性の視認性が得られるかを示している。ボクセルA(0,0)と方向マスクボクセルB(3,−2)がある。ボクセル”A”の視認性の方向(3,−2)を調べるには、処理”FICV”で、光線A−Bが充填モデルボクセルで遮られているかどうか、光線A−Bの全ボクセルを調べる。ブレセンハムアルゴリズムを適用した後、ボクセル”A”と指向性のマスクボクセル”B”との間に位置する全ボクセル”c”および”d”{c(1,−1)、d(2,−1)、B(3,−2)}を計算することができる。ボクセルが充填されているかどうか、各ボクセルを調べる。ボクセル”c”、”d”または”B”がモデルボクセルならば、方向AB(3,−2)を、不可視方向と考える。そうでなければ、ベクトル(3,−2)をボクセルc(1,−1)−>c’(4,−33)、d(2,−1)−>d’(5,−3)、B(3,−2)−>B’(6,−4)に進めることにより、テストを次のパターンに展開する。次に、c’,d’,B’ボクセルがモデルボクセルかどうか調べる。ボクセルの範囲が境界から出るまで、このテストを展開する。計算コストを低減するには、各キャビティボクセルの冗長計算を避けることができるように、3Dブレセンハムアルゴリズムの変数を各方向マスクに保存する。
一旦、全指向性の視認性情報を計算したならば、ボクセルが内部キャビティなのか外部キャビティなのか、視認性の度合から決定することが可能になる。これは、N×N×Nマスクのすべての可能な方向の全数で分割した、N×N×Nマスクのすべての可視方向の数である。統計的分析によれば、視認性の度合が0.30より少なければボクセルを内部キャビティとして決定することが可能である。
内部キャビティボリュームの識別結果は、いろいろと応用することができる。応用例の1つは、鋳造領域におけるコアおよび分割コア候補を検出することである。本発明では、各内部キャビティボリュームが、分割方向によりコア候補部品を表している。分割方向を構成した後、本発明を適用して、コアの数を検出して、コアの形状の複雑性を計算することもできる。
(2.2.4.3.簡易型ワイヤフレーム)
簡易型ワイヤフレームスケルトンは、ボクセル化したモデルから開始する。これは、3Dモデルのフェースおよび稜線に対する基準を有する簡易型ワイヤフレームの目的は、3Dモデルのすべての’主な’特徴/部分を保持して、3Dモデルの’主な’位相を保持することである。また詳細さのレベルの単純化を行うことができる。図31に示すように、ボクセルに保存したフェースIDが2つ以上あるすべてのボクセルを保持することにより、ボクセルワイヤフレームモデルを構成する。
簡易型ワイヤフレームを得る第1の工程は、データの前処理を行ってフェースループを識別することである。すべてのフェーススタックを考慮して、ボクセルを降順にソートする。ボクセルの降順に、スタックを選ぶ。各スタックは、ボクセルから開始して、隣接ボクセルとの隣接関係を調べて、連結リストタイプのデータ構造を’前’および’次の’ポインタで形成する。再び第1のボクセルになったら、ループを終了する。スタックのすべてのボクセルが横断していない場合は、フェースは内部ループを有している。横断していないボクセルから開始して、連結リストタイプのデータ構造を生成する前の工程を繰り返す。この様に、フェース内の全ループ(連結または非連結の)を識別することができる。残りの作業は、どのループが内部または外部であるか識別することである。別の方法を用いることができるが、フェースの各ループのボクセル数を調べるアプローチを用いることは、利点があって最適である。上位の数のボクセルは’外部’ループで、他のものはすべて、内部に含まれている。すなわち、’内部’ループである。従って、各ループが内部または外部であるか区別されて、フェーススタック内のすべてのループを得ることになる。識別したループが3Dモデルの稜線に沿って傾斜していることが容易にわかる。
次のステップは、図30に示すように、ボクセルワイヤフレーム内のループを横断させることである。すべてのボクセルおよびループが3Dモデル内の稜線に属しているので、モデルを稜線に沿って横断させることができるモデルの最も長い稜線、すなわち、最も大きい数値のボクセルを選ぶ。N×N×Nマスクを構築する。N=2n+1(i=0,1,2…,n)である。3Dモデルの次元および他のヒューリスティックによる。マスク内に有り、且つ3Dモデルの稜線を横断する任意のボクセルを’D’(削除を意味する)と印をつけるループを完全に横断させた後、ボクセルの削除により位相が大きく変化するかどうか調べる。図32に示すように、位相の変更を、方向を速やかに変更する方向ベクトルにより識別する。削除の際に位相が大きく変化するボクセルを、横断させた際に削除したボクセルに連結する。ボクセルを削除する際に、削除したボクセルのフェースIDおよび稜線IDを、それらを削除したボクセルに渡す。すべてのループを使うまでこの処理を繰り返す。これにより、図33に示すように、第1のディテールのレベル(LOD)の単純化が行われる。
さらにLOD単純化を行うには、各保持したループのボクセル数を数えて、ループ間の関係を識別する。すなわち、交差するループ、または共通稜線を共有するループである。これにより、ボクセルに保存にした稜線IDおよびフェースIDから識別することができる。モデルとして可能なLOD単純化の一例を、図34に示す。
CADシステム製造業者がCADモデルにモデル特徴履歴を格納して、およびCADモデルを再実行できる場合は、本発明のようなLOD縮小を有することが可能である。このようなLOD縮小を、スケルトンとして用いることができる。
(2.2.5.ディテールのレベル)
エンジニアリング部品の異なるディテールを、異なるレベルでスケルトングラフで取り込んで、同じ部品の解像度とする。各種の実施の形態では、スケルトングラフの階層型集合により、3Dモデルを異なるレベルの解像度で表す。ここで述べる3Dモデルのボクセル解像度を変更することにより、各種の階層型スケルトングラフを生成する3Dモデルのボクセル数を、その境界ボックスの最も小さな大きさに基づいて決定する。ボクセルサイズをs/2”として計算する。sが最も小さな境界ボックスで、nが所望の解像度のレベルである。図35は、nの値を変更して生成したいくつかのスケルトンを生成するための例示の疑似コードを示す。
階層型構造は、人の認知の研究で十分サポートされている。このような研究の1つは、形状組織に対する知覚アプローチが動的なものであることを示唆している。半順序は形状記述の一体部分である仮説的発展または形態形成に基づいていることが明白である。従来のアプローチでは、差異が視覚的にすべて見えない形状は、結局概算に終わってしまう。一般にオブジェクトの形状についての人の理解は、”遠くから近くへ”、”外側から内側へ”、”全体から細部へ”という原理にしたがっている。
階層型スケルトングラフ構造は、形状記述に対する動的なアプローチの一例である。動的なアプローチを用いる利点は、異なる解像度で類似の形状を検出できることである。例えば、図36の形状を考える。これら形状は視覚的に類似であるが、従来のアプローチにより非常に異なる形状記述子を持っている。同じボクセル解像度でのこれら形状のスケルトンも、やはり異なる。しかしながら、それぞれボクセル解像度が異なる類似のスケルトンを生成する。従って、あるディテールのレベルでは、それらは類似のものとして検出できる。
(2.3.グラフ生成)
上述の方法から得られたスケルトンを処理して高レベルのエンティティを識別できる。稜線、ループ、ノードである。稜線はボクセルの集合で、基本的な幾何エンティティを構成する。ループは、閉経路から成る1つの稜線または稜線群を構成する。ノードは、稜線/ループの終端/交点に記されるボクセルである。スケルトングラフの用語の一例を図37に示す。ボリューム分散した例示のスケルトン稜線を図38に示す。また、例示のスケルトンを有するCADモデルの一例を図39に示す。
各種の本発明の実施の形態では、これらエンティティをスケルトンから識別するスケルトンマーチングアルゴリズムを図40の例示の疑似コード4000として示している。図40に示すこのマーチングアルゴリズム4000は、マスクの集合を用いてスケルトン内の各ボクセルについて隣接ボクセルの種類を識別する。アルゴリズム4000は、マーチングの開始ボクセルを選択する。通常のボクセルは2つの近傍を持つ。各ボクセルの近傍の数を、訪れたものとして計算する。ボクセルが3つ以上の近傍を持つ場合は、それは可能なノード候補である。また、ボクセルがその26ボクセルの近隣で近傍を1つしか持たない場合は、それは終端ノードである。これらボクセル近傍域でさらに処理を行って、正しいノードを識別する。2つのノードの間の訪れたボクセルの集合が、稜線を構成する。次に、稜線を構成しているこのボクセルの集合に、エンティティIDを割り当てて、エンティティスタックに保存する。曲線フィッティングサブルーチンを用いて、稜線のジオメトリを近似する。これは、探索処理での正確な照合に用いることができる。
マーチングアルゴリズム4000がその任意のノードを再訪する場合は、ループが横断したことを意味する。次に、エンティティスタックを処理して稜線、またはループを形成する稜線の集合を識別する。アルゴリズム4000は、ノードスタックを維持して、各ノードの分岐を1つ1つ処理する。一旦、すべてのボクセルを訪ねて関連稜線/ループ処理を行ったならば、アルゴリズム4000を終了する。複数のループが同じスケルトンに存在する場合は、ループのいくつかが1つまたは多数の稜線を他のループと共有している。任意の稜線またはノードを他のループと共有しているループを簡易ループと呼ぶ。マーチングアルゴリズム4000は、すべての簡易ループを識別する。スケルトン内のすべての非簡易ループを得るには、後処理をいくつか行う必要がある。スケルトングラフを深さ優先技術に基づいて分析して、稜線またはノードを共有している複数のループを識別する。
稜線セグメント化は、連結頂点の間で識別された稜線を、容易に比較できる簡易幾何エンティティに変換することを扱う。これには、ねじれのない直線または平面曲線に属しているかどうか、調べることが含まれる。ボクセルが平面曲線を構成していなければ、曲線を2つの直交面に投影して、ねじれ値を用いて曲線を平面曲線にセグメント化する。集合内の各ボクセルを、3空間の離散点として扱う。線をはじめに、ボクセルの集合の2つの新たに検出した終点の間に構成する。このような直線の間の距離で、且つ、集合の最も遠いボクセルを用新しい頂点を決定して、新しいより簡易のエンティティを生成する。これにより、順に新しいノードおよび稜線を形成して、スケルトングラフを生成する。この処理が簡易エンティティを出力して、低レベルグラフマッチャーで曲率を用いて、2Dで容易に比較することができるようになる。図41は、新しい頂点を検出して、曲線を簡易セグメントの集合(2つの平面曲線cおよびC、および直線稜線E)に変換する際の、次のステップを示す。図41の右側の図は、新しいエンティティの生成による、グラフ構造での必然的な変更を示す。
最後に、スケルトングラフの稜線ループのリストをスケルトンノードに対するポインタで構成する。このグラフをデータベースに保存して、後の探索に用いる。従って、3Dモデルのジオメトリを、スケルトンの個別のエンティティ(図38および図39)およびスケルトングラフの位相に取り込む。
(2.4.特徴ベクトルの抽出)
スケルトングラフをさらに処理して、探索に用いることができるグラフ関連特徴ベクトル成分を識別する。主な成分いくつかは、稜線ループ、ノード等の数である。スケルトングラフをさらに処理して、ノードのエンティティの間の位相連結の度合いを識別する。異なるタイプの位相連結を、スケルトングラフから計算されるエンティティ隣接関係行列内の適したラプラシアン係数で表す。さらに属性をスケルトングラフから導出して、以下に述べるグラフ比較で用いる。
(2.5.2D図面の3Dスケルトンへの変換)
製造業企業の第1の課題は、より短い時間フレームとより低いコストとで、より良い製品を設計することである。近年、2DCAD設計技術を、3Dソリッドモデリングの利点を持つ技術へ移行することが顕著になっている。より低いコストと、コンピュータ支援ツールへのユニバーサルアクセスが可能なこととから、ほとんどすべての製造業企業は、何らかの種類のCADシステムを設置している。機械工学マガジンによる1998年の調査によると、96%の機械工学のプロが現在CADシステムを使用している。しかし、入手可能で使用が簡単な3Dモデリング技術の出現にも関わらず、製造業企業の大部分が、いまだにそれらの設計処理を2DCAD技術と図面データとに基づいている。コンピュータ援用工学マガジンの1998年の調査によると、60パーセントを超えるCADエンジニアリング作業を2Dで行っていることがわかった。従って、設計者が、類似の3Dモデルと任意の2D図面の2D図面とを探索できる探索機構が必要である。このような探索システムにより、企業が受け継がれたデータを最大に再利用できるようになる。この分野の大抵の該当する作業は類似の部品および画像を検索するコンテンツ/コンテキストベースの探索機構に焦点がおかれている。ジオメトリベースの探索機構も提案されている。類似/照合2D画像および2D図面をデータベースから検索するものである。このようなシステムの1つが提案されている。抽出した線パターンまたはグラフから計算した属性のヒストグラムに基づく属性グラフを用いて、画像(図面)を表すものである。検索を、ヒストグラム比較またはグラフ照合を用いることのいずれかで実行する。このアプローチを適用した方法は形状情報を含んでいるが、3つのオーソグラフィックビューが互いに関連しているという事実が最大限に用いられていないこれら技術は、異なるビューを比較して、2つの図面が一致しているかいないか決定している。本発明の実施の形態では、2D図面を3Dモデルに変換して、類似のモデルを3Dで探索するアプローチを用いている。得られた3D表現を用いて3Dモデルの照合を探索することができるので、従って、CAD図面/モデルのデータベースから2D図面および3Dモデルを探索することが可能になる。これにより、受け継がれたデータの再利用が可能になる。3D形状探索アプリケーションはすでに提示されていて、再構築した3Dモデルを用いて類似のモデルを探索することができる。3Dモデルをまず3Dスケルトンに変換して、次にそれを用いて探索する。従って、この技術では、3D形状サーチエンジンで用いることができる3Dスケルトンを編み出すことになる。
エンジニアリング図面からソリッドモデルを構成することは、興味のある問題につながっている。この領域の研究は、約30年前にさかのぼる。この30年の間、多数の異なるアプローチを採用してこの問題を解決しているが、まずまず成功している。しかし、事実上問題はいまだ存在し、関心のあるトピックは問題の計算量の表示である。この分野での主な推進要因は、設計再利用、複雑な図面の整合性の自動的な確認、広い応用範囲である。これら生成したソリッドモデルは、FEA、CFD、または設計を分析し、最適化しあるいは評価するシミュレーション、製造の際の素早い試作品製造およびNCパスプランニングに応用されている。図面をソリッドモデルに変換する2つの広いアプローチがある。ソリッドモデルを2D図面から再構築する既存の方法は、おおまかに2つのタイプに分類できる。
>ワイヤフレーム指向アプローチまたはボトムアップアプローチ。
>ボリューム指向アプローチまたはトダウンアプローチ。
ボトムアップアプローチは、ソリッドモデルを構成する順序で候補となる頂点、稜線およびフェースを組み立てたものである。トップダウンアプローチは、2D投影でパターンを認識することにより基本のソリッドを生成して、それらを組み立てて解を得るものである。
従って、本発明の実施の形態は、2D図面を3Dスケルトンに変換する。
(方法論)
2D図面を3Dスケルトンに変換することは、多数の異なるやり方で達成できる。方法のいくつかを次に列挙する:
a)ワイヤフレームベースのアプローチ:受け継いだデータはほとんど、スキャン図面として存在する。従って、入力するものはスキャン図面であると考えられる。以下の説明では、入力するものはスキャン図面であると仮定する。ワイヤフレームベースのアプローチ以下のようになる:
・前処理:このステップで、スキャンした2D図面をベクトル形式に変換する。ベクトル化した出力は、3つのオーソグラフィックビューに関係するデータを含む
・3Dワイヤ一フレームに対してベクトル化した図面:3つのオーソグラフィックビューを合成して、3Dワイヤフレームモデルを得る
・3Dモデルに対する3Dワイヤフレーム:次に、3Dワイヤフレームモデルをボリュームベースの3Dモデルに変換する
・3Dスケルトンに対する3Dモデル:次に、3Dモデルを正規化してスケルトン化して、3Dスケルトンを得る。3Dスケルトンを得た後の処理は、セクションl.2.で述べた
b)ボリュームベースのアプローチ:ボリュームベースのアプローチは次の処理のようになる:
・前処理:このステップで、スキャンした2D図面をベクトル形式に変換する。ベクトル化した出力は、3つのオーソグラフィックビューに関係するデータを含む
・3Dモデルに対してベクトル化したビュー:次に、3つのオーソグラフィックビューモデルをボリュームベースの3Dモデルに変換する
・3Dスケルトンに対する3Dモデル:次に3Dモデルを正規化してスケルトン化して、3Dスケルトンを得る。3Dスケルトンを得た後の処理は、セクション1.2.で述べた
c)中間3Dモデルを得ない3Dスケルトンへの直接変換:
・前処理:このステップで、スキャンした2D図面をベクトル形式に変換する。ベクトル化した出力は、3つのオーソグラフィックビューに関係するデータを含む
・ベクトル化したオーソグラフィックビュー3Dスケルトンに直接変換する:この処理は、上記セクション2.3で説明した。前処理が完了してすぐに、正規化を行って、エラーに関するサイズをすべて消去することに留意することが重要である
(用いられる用語:)
ここに示す各種の実施の形態を容易に理解するために、用いられる用語について説明する。
1)共通座標軸:1対のビューで共通の座標軸である。
2)基本稜線およびビュー−稜線:ビューGに頂点が全くない場合は、ビューGの2D稜線Eを基本稜線という。これはIN稜線Eに存在する。そうでなければ、ビュー稜線という。
3)ループ:同一平面稜線の簡易閉路を、ループと定義する。
4)接頂点:1次連続の1対の稜線を分割する2Dビューの頂点を接(tangency)頂点という。接頂点の概念が1対の稜線に対応付けられているので、これをループの頂点に用いる。
5)影頂点:その頂点での稜線の接線がG1とG2との間の共通座標軸に対して垂直ならば、2DビューG1の接頂点G1Vを、隣接ビューG2に対する影という。従って、頂点を1対のビューに対して定義する。
6)ループの分類:ループを、次のようにループに対して分類することができる:
に属するすべての稜線EがループGL1の内側にあるならば、ループはINループを持つといえる
・GL2に属する稜線のいくつかが領域Pの外側にあって、その他が内側にある場合は、はON−INループを持つといえる
はON−OUTループを持つといえる
7)ドットループおよびソリッドループ:その稜線のすべてをビュー内のソリッドラインタイプで表すならば、2Dビューのループをソリッドループという。そうでなければドットループという。
8)隣接ループ:ビュー内の2つのループが2つ以上の共通稜線を持つ場合は、次にこれらループを隣接ループという。
9)基本ループおよび非基本ループ:基本ループは、ビュー内にON−INループはないがINループを持つような稜線ループである他のループはすべて、非基本ループという。図42は、例示のループの分類を示す。図42では、ビューlの{1,2,3,9,8,7,5,6,1}、{8,9,10,7,8}および{3,4,5,7,10,9,3}が基本ループである。
10)独立ループ:独立ループは、ビュー内にON−OUTループはないが、OUTループがありうる基本ループである。
11)照合頂点:共通座標軸に沿って同じ座標値を持つ場合は、ビュー内の頂点G1Vを、別のビューG2内の頂点G2Vと一致するという。照合頂点をG1V<−>G2Vと記すことができる。ビュー内に、他のビューの頂点と一致する2つ以上の照合頂点が存在することもある。
12)照合ループ:各頂点G2V⊂G2LがG1V⊂G1L内の少なくとも1つの頂点と一致する場合は、G1に属するループG1Lは、G2に属する照合ループG2Lを持つという(G1!=G2)。1対のビューの影頂点でないすべての接頂点を消去することにより、G2Vを得る。G2LもG1Lを照合ループとして持つ必要はない。しかし持つ場合は、2つのループは上への照合ループとしてわかる。G1L<−>G2Lと記す。
13)上への形成:上への形成は、次の特性を満たすループの集合(l)である:
a.iに対し、j=1,…n(i!=j),GiLi<−>GjLj
ただし、GiLiではLjは集合lに属する
b.|l|=n、ただし、nは入力2Dビューの数である。
14)所望の稜線:入力オーソグラフィックビュー内の稜線で、現在のソリッドの2D投影にない稜線である。
(方法の例示の実施の形態)
次のセクションでは、で参照した方法論の処理について述べる:
(1.前処理)
2D形状探索の問題を解決するために、まず書類を電子フォーマットに移す。最も広く用いられている方法はスキャンで、”ラスタ画像”を生成する。スキャンした図面を、ピクセル行列に分解する。書類に含まれる語義情報を電子ファイルには移せない。すなわち、符号の意味を解釈しない。従って、”ベクトル化”として知られる前処理ステップがいくつか必要となる。これにより、幾何エンティティ(直線、円弧等)および符号(文字等)の定義に必要な情報をラスタ画像から得る。従って、電子ファイルに保存した情報を解釈して用いて、特徴に基づいて探索して、ソリッドモデル/スケルトン再構成に基づいて再利用することができる。


・スキャンタイプ
大抵のエンジニアリング図面は、1ビットモノクロームとしてスキャンできる。記憶空間をほとんど取らず、表示や処理が速い。古い青写真等の汚れがあって背景にしみのある図面ならば、8ビットグレースケールでスキャンして、画像作成ソフトウェアを用いて拡大して、背景やノイズを消去することができる(自動ベクトル化の前に、1対のグレーレベル閾値を用いてノイズおよび他のアーチファクトを取り除くことができる)。
・ラスタベクトル変換
スキャンしたラスタ画像を得た後、これをベクトルフォーマットに変換して、さらに操作を行う。完全なラスタベクトル変換処理には、画像取得、前処理、ライントレース、テキスト抽出、形状認識、位相生成および属性割り当てである。パッケージのいくつかは、各種のタイプのアプリケーションとして販売されている。エンジニアリング図面変換では、ベクトルをラスタ画像から抽出するために、画像のどの部分が線からなり、これらの線がどこから開始してどこで終わるか決定する必要がある。通常、2つの処理が含まれる:
1.画像処理(背景およびノイズの消去)。
2.1ピクセル幅の線へのラスタ画像のシンニング。
3.ベクトル化(ピクセル線から稜線の抽出)。
4.エンティティ認識(直線、円弧円、線ループ等の定義)。
厚みがあったり、しみがあったりする領域を1つのピクセル幅を持つアイテムに縮小して、画像をピクセル線に変換するアプローチが、シンニングである。多数の現在利用可能なシンニングおよび稜線検出方法は多数あって、それぞれ異なる数学的アルゴリズムを用いて、異なる結果を生成する。
これら前処理ステップはすべて、該当する形状情報を抽出するために、画像に含まれる情報を理解する画像処理を含む。
(2.ボトムアップアプローチを用いたオーソグラフィックビューの3Dモデルへの変換:)
ワイヤフレームアプローチはまた、ボトムアップアプローチとして知られている。この方法に含まれる各種の処理は次の通りである:
・各ビュー内の2D頂点から3D候補頂点を生成する。
・3D候補頂点から3D候補稜線を生成する。
・同じサーフェス上の3D候補稜線から3D候補フェースを構成する。
・候補フェースから3Dオブジェクトを構成する。
(このアプローチのメリット)
・より正確である。
・通常ACISから得られる他の基準値についてもあることができる。
(このアプローチのデメリット)
・入力ビューにおける不一致の結果として問題が発生する事がある。
・計算上非常に高価である。特に、バックトラッキングおよびヒューリスティックを行う可能性のある探索を行って、非常に多くの数の可能なソリッドから解となるソリッドを選ぶ探索を含むからである。
(3.トップダウンアプローチを用いたオーソグラフィックビューの3Dモデルへの変換)
このアプローチに含まれる一般的な処理について以下に述べる:
1)疑似頂点スケルトンを構成する。
2)疑似ワイヤフレームを構成する。
3)仮想フェースを構成する。
4)切断稜線を導入する。
5)仮想ブロックを構成する。
6)決定する。
図43は、この処理の詳細をさらに示す。他の方法もある。別の実施の形態では、セルベースの再構成を用いる。同様に、2位相再構成についても開発されている。
(このアプローチのメリット)
・常に入力ビューに一致した有効なソリッドモデルがある。
・ワイヤフレーム方法と比較して、計算上安価である。
・形状探索には、概略の3Dモデルだけで十分である。
(このアプローチのデメリット)
・このアプローチは、処理可能なオブジェクトドメインだけに限られている。
(4.中間3Dモデルのない3Dスケルトンへの直接変換)
上述のように、3D形状探索には、有効な3Dスケルトンで十分である。従って、任意のセットの2Dオーソグラフィックビューを直接3Dスケルトンに変換する方法を提示する。3つのオーソグラフィックビューそれぞれに、2Dスケルトンを得る。次に、オーソグラフィックビューを合成して、所望の3Dスケルトンを得る。この方法を、2Dスケルトン化処理によりさらに2つのアプローチに細分化する。第1のアプローチは、画像処理方法を用いてスケルトン化を実行ととで、第2のアプローチはジオメトリベースの方法を用いてスケルトン化を実行することである。次の説明では、2Dスケルトンを得るジオメトリベースのアプローチを前提としているが、このアプローチを適切に変更して第1のアプローチと共に実行することもできる。
(二重接続連結リストおよびフェース構造の生成)
次に、3つのオーソグラフィックビューを構成する線セグメントを、二重接続連結リスト構造で表す。この方法を行って、二重接続連結リスト構造を構成する。二重接続連結リスト構造は、線セグメント配列の効率的な表現である。
頂点のデータ構造を次のように表す:
・頂点のX座標。
・頂点のY座標。
・入射稜線のリスト(反時計回り方向の順の傾き)。
ハーフ稜線のデータ構造を次のように表す。
・原点の頂点。
・ツインハーフ稜線(一方は入射)。
・入射フェース(各ハーフ稜線は正確に1つのフェースに属する)。
・次のハーフ稜線(フェースに属する次の連結ハーフ稜線)。
・前のハーフ稜線(フェースに属する前の連結ハーフ稜線)。
・傾き角度(0から360度の間)。
フェースのデータ構造を次のように表す。
・外側ループの開始稜線。
・内側稜線の開始稜線のリスト。
従って、反時計回り方向で頂点の入射稜線を移動するには、上記データ構造を最大に活かすように用いることができる。稜線が頂点に入射しているとすると、そのハーフ稜線の対をとって、そのハーフ稜線に対する次のハーフ稜線を検出することができる。これにより、任意の頂点から入射ハーフ稜線を得ることができる。得られたハーフ稜線が反時計回り方向の次のものであるのは、反時計回り方向に稜線をたどることによりフェースを構成するハーフ稜線を得たからである。同じ手順を繰り返して、この配列内のすべてのフェース/ループを検出することができる。データ構造およびアルゴリズムは、従来利用可能である。線セグメントのセットの配列をO(nLogn)時間で構成することができる。
(3つのオーソグラフィックビューの頂点、稜線およびループの照合の識別)
頂点、稜線およびループの照合の識別について、従来詳細に説明されており、当業者が容易に利用できるようになっている。照合ループおよび頂点を検出する方法についても、説明されている:
1.頂点およびループの照合:ループおよび頂点の照合は、3Dソリッド内の同じエンティティに対応するエンティティをグルーピングすることを意味する。影頂点以外に接頂点を用いないが、異なるビュー内の1対の2つのループの照合を行う。また、共通座標の値により、頂点の照合を行う。ループが互いに一致しているならば、次に、上への照合としてフラグを立てる。
2.上への生成:上への生成を検出するには、ループ照合独立ループまたは基本ループと一致するループを検討する。ビュー内のループは、隣接ビュー内に基本または非基本照合ループを有することができる。まず始めに、検討中のすべての基本ループ照合ループが上への照合かどうか調べる。得られた任意の上への照合ループを、リストに保存する。次に、隣接基本ループの合成により、それぞれ検討中の他のビュー内の基本ループに一致する非基本の上への照合ループを得ることが可能かどうか調べる。これらを保存してさらに処理を行う。これらエンティティの保存に用いるデータ構造は、グラフである。
一般に、上への生成を、任意のセットのビューで識別する。図44では、ループを、ノードおよび2つのノードと連結する稜線として表している。2つのループは上への照合である。これは、n個に分かれたグラフのループとして見ることができる。nはループの数である。従って、上への生成の検出は、基数nのサブグラフの検出と同等である。幅優先探索を用いて、nlog(n)内にこれを検出する。nは検討中のループの平均の数である。ループの上への照合は、すべてのビュー内のループのセットで、互いに一致している。
(3つのオーソグラフィックビューの整理)
上への照合ループのセットを得た後、小特徴を記述する上への照合ループのセットを消去する。上への照合ループのセットは独立または基本ループのみであるよう注意する。またこれらループを消去した結果、得られるビューが分離しないようにする必要がある。
(2Dスケルトン化)
次のステップでは、これらループまたはフェースをスケルトン化して図面を簡略化するが、位相は保持する。多角形図形のスケルトンを得るのに、各種の方法が提案されている。これら方法の大部分は、内軸変換(Medial Axis Transformation:MAT)を決定するものである。これら方法の大部分は、ボロノイ図またはデローネイ三角形分割手法のいずれかを利用している。ボロノイまたはデローネイ三角形分割手法を用いずにスケルトンまたはMATを得る、他のアプローチがある。また、適応細分アルゴリズムが提案されている。これは、デローネイ三角形分割手法を利用している。2D領域のスケルトンを、その内点として定義する。これは2つ以上の最も近傍を有する。多角形図形のスケルトンを、最悪でもO(nlogn)時間で得ることができる。多角形図形の境界ノードの数である。図45は、一般的な2D多角形図形のスケルトンを示す。
(スケルトンの消去)
得られた2Dスケルトンのある部分が必要ないことが、図45からわかる。入力ビューの境界/頂点と接しているスケルトンの稜線を、消去する。従って、簡易型スケルトンが得られる(図46に図示)。
(照合ループおよび隣接ループ関係を用いて3つのビュー内のスケルトンの稜線を連結して3Dスケルトンを得る)
一旦、各種のフェースのスケルトンを消去したならば、次のステップは、3つのビュー内のスケルトンを連結して3Dスケルトンを得ることである。図44を参照すると、図44Aは実際の3Dモデルを示し、図44Bは任意のオブジェクトの2Dオーソグラフィックビューを示している。図44Cは、それぞれのビューのスケルトンを消去したものを示している。最初の第2のステップで得られた照合ループを用いて、2Dスケルトン稜線の各種の稜線の接続性を決定する。接続性を維持するとは、すべての照合ループの連結であって、また、3Dスケルトンの各稜線が1つのものとして確かに現れることになる。例えば、ビュー正面図では、縦線が図形の奥行き/高さを表す。また、側面図では、5本の縦線が図形の奥行き/高さを表す。従って、最終のスケルトンでは、たった一本の稜線を保持して図形の奥行きを表す。
(3Dスケルトンの稜線のボクセル化)
一旦、3D稜線が得られたならば、次にボクセル化表現に変換する。基本的に、ボクセル化表現は、3Dスケルトンの稜線の離散化表現である。このステップは簡単な処理ステップである。ボクセル化および正規化についてさらに詳しくは、上記サブセクション2.1を参照のこと。
(データ構造の各種のループおよび稜線の接続性の保存)
最後に、3Dスケルトンが得られたら、サブセクション2.2で説明したように、各種のループ、稜線等をスケルトングラフデータ構造に保存する。次に、これをグラフ比較モジュールの入力として提供する。
(3.データベース、探索およびクラスタ化)
(3.1.グラフの比較)
探索システムでデータベースにあるグラフを探索する。このグラフは、クエリー3Dモデルのスケルトングラフに類似している。システムにより、クエリーグラフとデータベースの各モデルとの間の照合の度合いに基づく類似性の程度を評価する。本発明は、間接グラフの形式のスケルトンで表す。グラフのノードがスケルトンの稜線/エンティティを表し、グラフの2つのノードに連結する任意の円弧が対応するスケルトンエンティティの間の連結を表す。従って、スケルトンは、基本的に稜線グラフとして表される。グラフの各ノードは、スケルトン稜線の次の幾何特性を保持する:
(1)稜線タイプ(直線、曲線、サーフェスループまたはホール)。
(2)サーフェスループの曲率情報(凸面/凹面/面)。
(3)曲線のパラメトリック計算式。
(4)特定のエンティティに収束する特徴のローカルボリューム。
(5)特定のエンティティに収束する特徴のローカルモーメント。
(6)サーフェスからのローカル距離。
従って、スケルトンの位相をグラフの位相によって取り込み、ジオメトリをグラフのノードに保存する。図47は、現在の本システムのグラフ照合モジュールのフローチャートを示す。
(高レベルグラフ照合)
上記最初の2つの特性(1および2)を、高レベルグラフ照合ステップ(図47を参照のこと)に用いる。この後、類似のモデルを有するデータベースのサブセットを検索する。これらモデルは、クエリーモデルに全体的な幾何および位相類似性を有する。続くステップでは、上述の個別の幾何特性(3)、(4)および(5)の類似性に基づいて、検索したモデルをさらに分類する(低レベルグラフマッチャー)。従って、高レベルマッチャーによリサーチ空間を選別して、該当する部品を検出する。この選別で用いるグラフ特性は、スケルトン内の最も高い度合いのノード、サーフェスループの数、直線および曲線稜線の数、およびホールの数を含み、クエリーモデル(またはクエリーグラフ)に類似していないグラフを除去する。
高レベルグラフマッチャーで検索したモデルより小さなセットを、次に低レベルグラフマッチャーに渡す。低レベルグラフマッチャーは、上記のグラフ照合アルゴリズムに基づいて、クエリーモデルとこれらモデルとの間の類似性の度合いを検出する。しかしながら、ユーザはまた、位相および高レベル幾何特性を用いて、より高いレベルの抽象化だけで照合を行うことを選ぶこともある。この照合を可能にするには、グラフの隣接関係行列を、これら幾何特性を表現するように設計する。行列のゼロ以外のエントリは、2つの幾何エンティティの間の連結を表す(位相)。エントリの値は、連結の種類を一意に表す(稜線ループ、ループ−ループ、サーフェス−サーフェス、稜線稜線等)。この隣接関係行列を用いて、決定理論的サブグラフ同定アルゴリズムと共に対応付けグラフ技術を含む任意のグラフ照合方法を実行することができる。
(低レベルグラフ照合)
従来技術のセクションで、グラフを比較して類似性の度合いを評価するために、各種のアルゴリズムが提案されている。これらアルゴリズムを、正確および不正確なグラフ照合アルゴリズムにおおまかに分類することができる。前者の分類のアルゴリズムは、2つのグラフの間のまたは2つのグラフのサブグラフの間の正確な一致を検出する(すなわち、ノイズがない)。後者のセットのアルゴリズムは、たとえノイズが存在しているとしても、距離測定の形式で2つのグラフの間のあいまいな類似性の度合いを与える。本発明のシステムの要件は、類似の部品を検出することである(正確に同じでない)。本発明のシステムは、グラフ比較のために不正確なアルゴリズムを用いる。
グラフ比較のための従来のグラフ同定は、NP完全問題を導く。すなわち、小さなグラフ以外を用いてコンピュータで解を検出することが不可能である。不正確なグラフ照合の分野(エラー許容グラフ照合とも言う)について長年にわたって研究され、解についての多数の異なるフレーム構造が導かれている。場面グラフの類似性を含む各種のアプリケーションで、グラフの比較に対応付けグラフ技術が適用されて効果を上げている。現在のシステムでは、グラフ照合問題を、クエリーおよびモデルグラフに対応付けグラフを生成することにより、最大重み付クリーク問題に変換する。本発明の確率論的重みは、対応付けグラフノードを含む。これら重みを、次のエンティティのローカル幾何特徴類似性に基づいて評価する。(1)曲率、(2)ローカルボリューム、および(3)ローカルモーメントである。これにより、該当するモデルを除外せずに、モデル間の類似性の度合いにおけるあいまいさが可能になる。
(対応付けグラフ技術)
対応付けグラフ法は、コンピュータビジョンおよびパターン認識のグラフ照合分野では周知であるが、本発明の問題に適するように変更すると共に、完全性のために、この方法についてここで説明する(本発明の問題の文脈で)。対応付けグラフ(または割り当てグラフ)のノードは、比較されるグラフの頂点対(v,v)を表す(例えば、G=(V,E)およびG=(V,E))。ノードvおよびvが同じノード特性記述を有する場合は、v∈V,v∈V等の頂点対(v,v)を、アサインメントと呼ぶ。(さらに)すべてのvQとvQ’との間の関係がすべてvおよびv’に成り立つならば、2つのアサインメント(v,v)および(v’,v’)に互換性がある。アサインメントのセットが、アサインメントグラフGaのノードVaのセットを定義する。Ga2つのノード,VおよびV’は、これら2つのノードに互換性があれば、アサインメントグラフ、Gの円弧により連結している(図48を参照のこと)。従って、2つのグラフGおよびGの最大照合サブグラフの探索は、対応付けグラフGの最大クリーク(全体的に連結したサブグラフ)の探索である。その代わりに、アサインメントが、vとvとの間の類似性の度合いも重みとして表している場合は、次にグラフ照合を最大重み付クリーク問題に変換する。従って、対応付けグラフ内の最も大きい最大重み付クリークが、2つのグラフGとGとの間の最も良い一致を表すことになる。
(ローカル類似性基準値)
このセクションは、形状照合アルゴリズム詳細に説明することにあてられている。これは、対応付けグラフ技術に基づいている。用語’ノード’および’頂点’と共に’稜線’および’円弧’がグラフ理論で区別なく用いられているが、理解しやすいように、ノードおよび稜線を用いてスケルトングラフを説明して、頂点および円弧で対応付けグラフを構成する。対応付けグラフの頂点は、2つのオリジナルグラフのノード間の相関性を表す。ノード間の相関性を決定するこの処理を対応付けという。また対応付けグラフの2つの頂点をつなぐ円弧は、対応するノード間の互換性を表す。
グラフAは、頂点Aのセット、稜線Aijのセット、頂点属性のセットν(A)、および稜線属性として表されている。
ここに示す各種の実施の形態では、スケルトングラフ構造は、稜線とループとを区別している。同じ種類のエンティティ間で対応付けが可能であるで、1つのグラフのループを他のスケルトン等のループとだけ対応付ける。長さの類似性と共に類似性の度合いに基づいて、対応するノード(例えば、A1およびB2)間の類似性を決定する。重みを、これら2つの基準値に対応付ける。
従ってグラフAのノードA1とグラフBのB2との間の類似性を、ノードの重み付けとして表す。これは、計算式(1)から得られる。
Figure 0004516957
ここで、lEiはエンティティ長さ、dEiはエンティティEの度合いである。Wは長さの類似性に与えられた重み、Wはそれらの度合いに基づいてスケルトンエンティティ間の類似性に与えられた重みである(検討中のエンティティに連結したその他のエンティティの数)。ノードの度合いへのより高い重みにより、位相がさらに類似しているモデルを検索して、長さの類似性へのより高い重みが、より高い幾何類似性を持つモデルになる。従って、ユーザはまた、探索基準によりこれら重みを変更することができる。他のローカル特性を比較する基準値はさらに、(i)ボリューム分散、(ii)距離変換、(iii)ローカル主モーメント、および(iv)ローカル曲率を含む。これらの項を計算式(1)に追加する。
同様に、対応付けグラフの円弧は、対応するエンティティが連結しているかどうかを表す。もし連結していれば、エンティティ間の相対類似性である。例えば、ノード(A1−B2)および(A2−B3)をつなぐ円弧は、A1がA2に連結しているかどうか、B2がB3に連結しているかどうか記述する。また、対応するエンティティ間の連結をさらによく記述する他のヒューリスティックも含む。連結したエンティティ間の角度等である。ある実施例では、円弧の重み付けの決定に計算式(2)を用いて度合いを得た。
Figure 0004516957
ここで、θEiEjは、エンティティEとEとの間の角度である。
lrは長さに比に与えられた重みで、Wθは角度に与えられた重みである。有効なグラフ照合を得るためには、制約の数に注意することに留意のこと。例えば、モデルAの任意のスケルトンエンティティがモデルBの2つ以上のエンティティと一致しない、またはその逆の場合である。これら制約について、図48に楕円で示す。対応付けグラフの円弧を、これら制約を考慮して生成する。
次に、これでモデルAとモデルBとの間のグラフ照合問題が、最大クリーク問題になる。アプリケーションの対応付けグラフに重みが存在しているので、問題を、最大重み付クリーク問題として表す。従って、最も大きい重みを持つクリークは、2つのグラフ間の最も良い類似性を表す。従って、類似性は、任意のクリークに対するノードの重みと円弧の重みとの合計である。従って、2つのモデル間の’最も良い類似性照合’を検出する問題は、基本的に、目的関数が類似性の度合いである組み合わせ最適化問題である。
ヒューリスティックベースの遺伝的アルゴリズムを用いて、上述の対応付けグラフの最大重み付クリークを活用する。しかしながら、任意の組み合わせ最適化アルゴリズムを用いて、最大重み付クリークを得ることができる。近似アルゴリズムで大きなグラフのグローバルで最適の解が得られる保証はないが、これにより、大きなグラフサイズでは処理しにくい全数探索を回避する。従って、近似アルゴリズムは、このアプローチを用いて各種の実施の形態で最適化を行うのに利点がある。
(計算量)
対応付けグラフ技術を用いる主な利点は、それが簡易グラフ理論構造で、最大クリーク検出等の純粋グラフ理論アルゴリズムに適用可能であることである。しかしながら、対応付けグラフの構成は純粋にドメイン依存である。従って、このアプローチの有効性は、このグラフの構成および続いて用いるグラフ理論アルゴリズムに依存している。最大クリーク検出問題はNP完全であることに留意されたい。しかしながら、本発明のスケルトングラフには幾何情報が豊富に存在するので、多数の不要の比較を除去することにより、最大クリーク検出問題(MC問題)の平均計算量を相当低減することができるようになる。アルゴリズムを、次のヒューリスティックを用いることができるように設計する。a)辞書式順序のノードと、b)前のクリークサイズと、c)高レベル幾何エンティティの数(サーフェスループ/ホール/稜線)とである。これによリサーチ空間を小さくする。例えば、ループを直線稜線および曲線と比較することを、または曲線を直線稜線と比較することを省くことができる。スケルトンのループは基本的に、元の3Dモデルの大きなホールを表す。従って、これら特徴のあるものは、元の3Dモデルの製造特徴を暗黙に表す。これは、グラフ照合のドメインナレッジを用いるとどのくらい平均計算量を相当低減することができるかについて、説明するものである。対応付けグラフ技術を変更することにより、適当な時間で3Dモデルの探索が行えるようになる。この技術について、次に詳しく説明する。
ノードを表す直線を表すQ個のノードのうち、クエリーグラフがQ個のノードから成ると仮定する。Q個のノードがループを表す。同様に、MおよびMが、それぞれモデルグラフの直線稜線およびループを表すノードの数とする(全部でM個のノードである)。さらに、M,M,およびMはそれぞれ、Q,Q,Qより大きいと仮定する。従って、サブグラフ同定に必要な比較の回数を、次のように検出する。
Figure 0004516957
しかしながら、ノード属性(サーフェス/ループ/稜線)を用いない場合は、比較の回数を次の計算式で得る。
Figure 0004516957
グラフ構造に存在する幾何情報を用いて、多数の不要の(ナイーブ)比較を省略するので、照合の計算量を低減することがわかる。また、この情報なしに対応付けグラフに生成する必要があるノードの数は、M×Qである。しかしながら、このアプローチを用いると、この数を(M×Q)+(M×Q)に低減する。前述の単純化では、最悪計算量は、入力グラフのノードの数が指数関数的になるが、本発明の対応付けグラフのサイズを平均の場合に低減する。スケルトンが同じタイプのエンティティ(すなわち、すべてのループ、すべて直線稜線である、等)で構成されている場合に、最悪の場合が発生する。また、上述のグラフ照合アルゴリズムを、シェル様およびハイブリッド部品に発展することもできる。1)凸面と、2)サーフェスループの曲率半径とを含む幾何特徴をさらに用いて、これら部品の探索空間を低減することができる。
(幾何特徴照合)
高レベル照合から検索したモデル間の類似性/距離の度合いをさらに正確にするために、スケルトンエンティティの幾何特徴属性を比較する。上述のように、非類似のエンティティタイプはグラフ類似性基準値と比較しない。
(角柱状の形状)
ベジェ曲線を用いて、角柱状スケルトンエンティティのパラメトリック計算式を得る。これにより、曲線形状のアフィン不変量の程度を与える。曲線類似性比較の曲率に基づくアルゴリズムを用いる。類似の曲線は、類似の曲率プロファイルを持つ。2つの曲線を比較するには、曲線を定義した数のエンティティに分割して、曲線の曲率プロファイルが、曲線の一方の端からもう一方までの曲率シーケンスとなる。類似性のあいまいさの程度を、これら2つの曲率プロファイル間の距離から導出する。ベジェ曲線の計算式曲線の任意の点の曲率は、次のように与えられる:
・5次ベジェ曲線フィッティング
Figure 0004516957
n=5
Pi−制御点
Figure 0004516957
・計算式からの曲率
Figure 0004516957
他の実施の形態のローカル形状特徴照合は、ローカル特徴のボリュームおよびサーフェス領域を比較して、最終のスケルトン内の特定のスケルトンエンティティに収束する。同様に、個別の特徴のローカルモーメント不変量および稜線長さについても、類似性基準値に組み込む。
(シェル様およびハイブリッド形状)
シェル様およびハイブリッド形状は、異なる種類のスケルトンエンティティを生成するので、異なる処理が比較のために必要となる。パラメトリックベジェサーフェスを、サーフェスを構成するボクセルのセットに当てはめた後、凸面およびサーフェス曲率等のエンティティのグローバル幾何特徴を類似性基準値に用いる。さらに詳細に比較するには、角柱状スケルトンで説明したものを、シェル様スケルトンのサーフェスエンティティまたはワイヤフレームスケルトンエンティティに用いることができる。サーフェスを、標準の数の分割に離散化して、曲率プロファイルと共に個別のサーフェス領域をこれらサーフェスと比較することもできる。
(ローカル強調および関連性フィードバック)
,W,Wθ,Wlr等のローカル幾何特徴の重み(計算式1および2)を用いることで、関連性フィードバックからユーザ基本設定を学習することができるので、システムとユーザとの間の意味的ギャップを低減する。セクション3.6に記載の標準重み再構成機構を介して、重みを学習することができる。また、ユーザは、3Dソリッドモデルまたは3Dスケルトンモデルのローカル特徴を強調することもできる。重みを特定のスケルトンエンティティに期することができるので、照合の際に類似性の基準値によりより高い重みを特定のローカル特徴に与えることができる。
(異なるディテールのレベルの比較)
角柱状およびシェル様スケルトンの異なるディテールのレベルを、次のやり方で用いる。データベースモデルの各ディテールのレベルをクエリースケルトンと比較して、最も高い類似性の値を得るディテールのレベルをクエリー3Dモデルとデータベースからの特定のモデルとの間の類似性と考える。スケルトングラフに基づく3Dモデルのクラスタ化は、すべての2つのモデルの4つのディテールのレベルすべてを互いに比較して、2つのモデル間の最も良い類似性を得る。これら類似性の値を用いて、モデルのデータベース類似のモデル群にクラスタ化する。あるいは、ユーザは、クラスタ化に用いるすべてのモデルのディテールの特定のレベルを指定することもできる。この場合は、特定のLODを用いてクラスタ化を行う。
(並列化)
この処理は、クエリーグラフおよびデータベースからのグラフを扱って別々に比較するので、グラフ照合ステップは並列化可能である。高レベルグラフ照合ステップでは、自動クラスタを用いて比較の回数を減らすこともできる。従って、各クラスタのプロトタイプモデルをそれぞれクエリーグラフと比較する。続いて、そのプロトタイプがクエリーグラフと最も近いクラスタを用いてさらに探索する。従って、階層型クラスタを用いて探索空間を小さくすることができる。探索が、次のクラスタのモデルの数が妥当である適当な状態になったら(リアルタイム探索が可能)、低レベルグラフ照合を並列化できるので、探索時間を最適化することになる。
(従来のシステムとの相違)
・ジオメトリおよび位相の分離。
・階層型グラフ照合。
・高レベル幾何特徴の隣接関係行列への包含。
・自動クラスタに関するグラフ照合の並列化。
(3.2.多次元索引)
企業に3Dモデルが普及するにつれて、データベースに索引を付けて効率的な検索を可能にしたいという差し迫った要求がある。市販のデータベースシステムで広く用いられているが、B+木およびハッシュテーブル等の幅広く使える索引構造が、3Dモデル探索の際の効率を十分改良することは、残念ながら現在のところ不可能なことである。3Dモデル類似性を使って仕事をするエンジニアは、データベースでの形状探索よりも、少数のモデルの3D形状照合に注目している。それらのアプローチでは、データベースを基準化することは困難である。
従って、ここに示す実施の形態は、モデルの類似性によりデータベースに索引を付けることができる索引構造を開発した。この構造は、同時に特徴ベクトルの各要素の情報を用いて、形状類似性を評価した。革新的で新規の方法では、異なる特徴の索引から供給した類似性を合成することにより、全体的な類似性を計算する。合成方法により、各索引の探索の規則数列を協働させる。
索引構造を、木ベースの多次元索引として実行する。多次元性が3Dモデルデータベースで重要であるのは、全体的な類似性をこれら特徴要素の組み合わせで定義するからである。また、特徴要素を選別として用いることは、3Dモデル探索の文脈では不適切である。
索引構造の構造を、図49および図50に示す。葉ノードは、3Dモデルの表現を含み、内部ノードが葉ノードへの短い経路の検出を支援する。3Dモデルを表す特徴ベクトルが、それらの類似性によって葉データノードにグループ化される。各データノードは、モデルの全体的な情報を保存する収容ボックスとして表される。内部ノードを構築して、葉ノードに索引を付ける。各ノードの抽象情報により、類似のモデルこのデータノードにある可能性があるかどうか決定する。従って、ノードを簡潔にして、探索段階の間に全副木をこれらノードに根付かせる。
図51Aは、39個のモデルの予備の索引構造である。図51Bは、2つの葉データノードのコンテンツを示す。この索引が類似性により十分にモデルをグループ化していることを示している。また、複数の多次元索引を効率的に用いて類似性を計算するアルゴリズムを開発する。3Dモデルは、複数の特徴として表される。各特徴は、対応する多次元索引を有する。各索引から検索した類似性により、全体的な類似性を計算する。探索木を簡素化する能力により、多次元索引の効率を決定する。簡素化能力は、探索基準に依存する。それは、クエリー点からの半径である。アルゴリズムは各索引内の探索を協働させて、各索引内の探索半径を最小にしようとする。これらアルゴリズムは、簡素化能力および多次元索引の効率を大幅に向上させたものである。
類似のモデルを確実にグループ化するためには、SOMを用いて特徴ベクトルの前処理を行い、類似のモデルをクラスタ化する。これらクラスタ化したモデルを一括でロードするように、索引を構築する。これにより、この多次元索引の質を大幅に向上させるのは、索引内のデータノードが、類似性により確実にモデルをグループ化するからである。十分な数のモデルがデータベースにセットされて、索引の質を損なう場合は、SOMを再び用いて索引を再構築する。
(3.3.特徴ベクトル比較)
現在の探索システムは通常、1種類の特徴を用いていて、3Dモデルの固有の特性を十分にを取り込むものではない。組み合わせ特徴ベクトルを用いる技術がいくつかあるとしても、これら特徴間の内部関係を完全に理解していなかった。1次結合は簡易であるが、これを共通に用いて、それらの関係を無視して、各特徴に基づく全体的な類似性を計算するものである。
従って、本発明の実施の形態では、および固有の特徴ベクトルをさらに多く抽出して、3Dモデルの重要な特性を取り込む。特徴ベクトルの関係をより良く理解することにより、個別の特徴について定義したことに基づく全体的な類似性を計算する、さらに進んだ方法を開発することが可能になる。
本発明は、特徴ベースの3Dモデル探索システムを利用するシステムを用いる。これは、高レベルのキーワードの代わりに低レベルの特徴を用いて、複雑なジオメトリを表す。元の3Dモデルを処理すると、異なるディテールのレベルを持つ異なるモデルを生成した。これらモデルから、統計的、空間的、および時間的情報を、3Dモデルを表す特徴として抽出する。図52は、本システムの実施の形態で現在用いられる特徴ベクトルである。これら特徴ベクトルは、元の3Dモデルの数字の指紋である。3Dモデルの比較および探索をこれら指紋に適用するのは、元のモデルでは探索しにくいからである。
特徴要素を座標と考えると、3Dモデルは、多次元特徴空間内の点として表される。図53に、一例として2次元空間を用いてこれを示す。
モデルを特徴空間内のデータ点として考えると、座標上で定義された異なる距離を用いて、類似性モデルの類似性を計測することができる。例えば、ユークリッド距離L2、最大基準値L∞およびマンハッタン基準値L1を用いる。これら距離を計算する計算式について、次のように列挙する。
これら類似性の定義に基づいて、各特徴の類似性の程度を計算する特徴ベースの画像探索と異なり、システム内の特徴のいくつかは完全に独立していない。従って、特徴類似性に基づいて全体的な類似性を計算すると、1次結合の他にさらに複雑な結合方法を用いることになる。これら方法は、2次、3次、およびニューラルネットワークで表されるさらに複雑な関数を含む。また、グラフ照合を特徴ベースの類似性探索と共に用いる。特徴表現についてここで説明して、グラフ照合セクションにグラフ表現を導入する。
すべての特徴ベクトルを同時に用いてデータベースを探索するワンステップ探索方法を用いる代わりに、決定木として探索をシミュレーションする。認知心理学リサーチに基づいて、選択的特徴をいくつか含むアスペクト比および対称情報等である。他の実施の形態では、他のさらに進んだ特徴をいくつか用いることもできる。また、以前に用いた特徴を続いて用いることもできる。
この検索システムの利点は次のものである。(1)すべての特徴は、システムが客観的に計算した固有の値なので、客観的なアプローチである。データベース内のモデルの表現を、特徴抽出アルゴリズムにより決定するシステム内のCADモデル表現がどのユーザからも偏りがない。従って、システムは、すべてのユーザに対して中立の特徴を持つ。(2)すべての情報が客観的なので、容易に自動化できる。ユーザが全く関わることなくアルゴリズムを発展させて、CADモデルから計算するようにできる。(3)キーワードベースの検索システムよりも、類似性の度合いがより正確に定量化する。各特徴を目盛の数字(通常0−1)で表しているので、類似性をある数学的演算で容易に特徴づけることができる。システムがCADモデルから情報を十分抽出する限り、システムは類似のモデルを正常に検索することになる。
主な欠点は、特徴ベクトルを定義するのが難しいことである。特徴ベクトルはすべての非類似のモデルの選別には適しているが、類似のものをすべて保持している。しかしながら、本発明の実施の形態に適用した多段階探索方法(セクション3.8に記載)により、ユーザが異なる特徴ベクトルを試して所望のモデルのセットを得ることができる。
(3.4.クラスタ化技術)
本発明の実施の形態により、ユーザがデータベース内の異なるモデルを容易に閲覧して、彼/彼女の要件に類似の部品を検出できる。ビジュアルクエリーインターフェースの一部は、この機能を促進するようになっている。インターフェースをビジュアル化して、2つの異なるシナリオで動作させることができる(図54を参照のこと)。第1の場合では、ユーザは頭で考えた3Dモデルだけが有り、データベース内の利用可能な部品を閲覧して、該当する部品を選ぶ場合である。この探索を効率的にするためには、データベースのすべてのモデルの階層型部品クラスタマップを用意して、データベースに新しいモデルが加わると動的にこれを更新する。より高いレベルのクラスタ内の各部品クラスタが、次のレベルの多数のクラスタを指し示し、これを繰り返す。他のシナリオでは、ユーザがクエリーモデルをスケッチインターフェースから入力して、クエリーと類似していると検出されたすべての部品を検索する。各検索したモデルは、それが属するクラスタへのリンクを示しているので、さらに閲覧が可能になる。対応するリンクをたどって、モデルが属するクラスタを閲覧することができる。
クラスタ化アルゴリズムを、知識発見およびデータ発掘の分野で広範囲に用いる。最も重要なものは、階層型クラスタ化、k−クラスタ化および自己組織化マップ(SOM)である。これら異なるアルゴリズムでは、SOMは最も簡単に実行することができ、クラスタを容易にビジュアル化して解釈することができる。SOMはニューラルネットワークアルゴリズムで、教師なし学習に基づくものである。しばしばニューロンと呼ばれる計算単位のレイヤから成り、入力パターンの母集団に適応させる。入力パターンを提示するとすぐに、このパターンに最も近いニューロンを決定して(獲得ニューロンと呼ぶ)、次に更新して新しいパターン取り入れるが、隣接ノードのいくつかについても更新して、獲得ニューロンに近づける。SOMは、ベクトル量子化およびベクトル投影アルゴリズムの特性を共に有するので、より高い次元でのデータ投影をより低い次元にすることができる(通常2次元)。これはビジュアル化に適用可能である。この特徴が本発明の実施の形態で利点があるのはユーザがモデルを閲覧するための有益なビジュアルインターフェースを開発する支援となるからである。また、SOMは、新しい部品をデータベースに追加して、クラスタマップを動的に更新することも可能にする。
従来、特徴ベクトルだけでSOMを用いていた。やっと最近になって、SOMをグラフおよび木等のより強力なデータ構造と共に用いて、パターン認識作業に用いようとする試みがある。これらの試みは、SOMのニューロンの更新に用いるグラフ編集距離に基づくグラフ距離基準値を用いていた。逆に、本発明の実施の形態では次の組み合わせを用いる。(a)3Dモデルから得られた特徴ベクトル、および(b)グラフ比較から得られたグラフ距離程度である。従って、ニューロンを設計して、すべての特徴ベクトルと共に3Dスケルトンの典型的なグラフを含むようにさせる(図55を参照のこと)。SOMを更新して、次の新しいクラスタマップを提示する。(1)ユーザが構成した異なる類似性定義を持ち、(2)新しいモデルをシステムへ追加するクラスタマップである。このインターフェースは、次のことを素早く評価するのに有益である。(1)本発明で提案する類似性の基準値と、(2)従来技術が3Dモデルの比較のために提案した基準値である。2つのニューロン間の距離基準値は、ユークリッド、マンハッタン距離等の、任意の標準ベクトル距離とすることができる。
(従来技術との相違)
1.グラフ特性のSOMニューロンデータ構造への包含。
2.3Dモデルスケルトングラフに基づくクラスタ化のためのSOMの使用。
3.クラスタ化のための類似性の定義生成の際のユーザとの相互作用。
(3.5.クラスタマップインターフェース)
クラスタマップインターフェースは、探索システムのメインビジュアル出力インターフェースである。インターフェースは、1)自動2)双方向の2つのシナリオで動作する。図56は、2つの状況の2つの異なる経路を示す。自動方式では、システムが定義したデフォルト類似性基準値に基づいて、データベースモデルを各種のクラスタに自動的に分類するクラスタマップ(図57)は、典型的な3Dモデルをユーザに部品クラスタウインドウ上で提示する。これにより、ユーザはボタンやマウスの動きでモデルをパンし、ズームし、回転することができる。各図の右側には、特定のクラスタ内に提示されているモデル数の棒グラフを示している。類似のモデル”ボタンをクリックすることにより、クラスタをさらにを閲覧するすることができる。双方向方式では、ユーザは次のことを行う。1)特徴ベクトルを再構成することにより、ユーザの類似性の程度を伝えることと、2)階層型データベースを閲覧して、ユーザが考えているモデルを探索することである。部品クラスタマップを更新することにより、クラスタマップインターフェースを介してユーザに提示する。
また、探索クエリーを実行した後、クラスタマップインターフェースを用いて検索した類似のモデルを表すことができる(図58)。類似性クエリーから探索した各モデルは、”類似のモデル”ボタンを介してそれが属するクラスタへのリンクを持つ。各検索したモデルの類似性の度合いについても、百分率の程度としてユーザに提示する。また、各モデルはスライドバーを持ち、ニューラルネットワーク学習のためのシステムに関連性フィードバックを行う。
(3.6.関連性フィードバック)
検索システムは、低レベルの特徴ベクトルに関する類似性しか測定しない。しかしながら、ユーザの類似性は、ユーザの認識に基づいている。3Dモデルは複雑なオブジェクトなので、3Dモデルを正確に表す特徴を抽出することは、大きな課題である。低レベル特徴ベクトルの類似性定義と高レベル3Dモデルとの間に”意味的ギャップ”がある。
従来の3D形状探索システムの探索モデルは、事前に定義した類似性の程度およびワンショット機構に基づいている。ユーザとシステムとの間の類似性の意味的ギャップは、これら従来のシステムの性能を大きく損なっている。
しかしながら、関連性フィードバックは、ユーザとシステムとの間の通信を向上させる重要な方法である。それは、システムおよびユーザ類似性の定義がそれぞれ存在する2つの意味上の面の間の掛け橋である。関連性フィードバックにより、ユーザが正確にクエリーを構築して、類似性の程度の特徴を選ぶ負担を大幅に低減する。また、探索システムが対話から学習して、対話に基づいてシステムを再構成することができる。
例示の手順は、次のステップから成る。(a)システムがモデルクエリーの例示に基づいてモデルをいくつか検索すると、特徴ベクトルの類似性の程度によりモデルを順序立てて、ユーザに提示する。(b)ユーザは該当するグループと該当しないグループとに分類して、システムに知らせる。(c)システムは、今度はシステム自体を構成してユーザの嗜好を考慮して再び探索を行う。(d)ユーザが満足するか、もしくはシステムがこれ以上優れたものにならないと考えるまで、この処理を何回か繰り返す。
図59は、関連性フィードバックの手順を示す。また、ユーザの関連性フィードバック内の情報を用いる異なる方法を実行することもできる。これを、本発明の広い範囲に入るようにする。これらの方法は、計算ジオメトリおよび粒子群等の社会的行動しシミュレートする事に基づいている。
本方法により、ユーザとシステムとの対話が可能になるので、類似性の意味的ギャップをつなぐ。また、クエリーベクトルを再構築して関連性フィードバックに基づくシステムを再構成するアルゴリズムを、開発する。
ユーザが彼/彼女の視点からどれが該当するモデルでどれが該当しないモデルかシステムに知らせることができるように、探索結果をインターフェースに提示する。
関連性フィードバック情報に基づいて探索システムを再構成するアルゴリズムを、開発する。これが効果のある探索システムに重要なのは、別々のユーザが3Dモデルの類似性について異なる認識を持つこともあるからである。始めに、システムを構成して、大部分のユーザの類似性を反映するようにする。例えば、90%のユーザが類似していると考えられるモデルである。ユーザがこのシステムを用いて探索を行うと、彼/彼女の関連性フィードバックを用ちいてシステムを良いものに構成する。フィードバックから、システムはユーザがさらに関心を持つ特徴ベクトルを用いてシステムを再構成して、ユーザの好みを反映させることができる。また、初期クエリーベクトルおよび関連性フィードバックに基づいて、システムはクエリーベクトルを再構築することができる。
(3.7.学習エージェント)
関連性フィードバックは意味的ギャップをつなぐ効果的な方法であるが、時間がかかるものである。たとえ、ユーザがクエリーモデルとして再び実行する同じモデルであっても、時間がかかる関連性フィードバックを再び実行しなければならない。
従って、本発明の実施の形態の技術は、人工知能、ニューラルネットワークを実行して、ユーザの関連性フィードバックを学習する。この技術により、データベースおよび索引構造の内容を変更することなく、異なるユーザおよび入力クエリーモデルに対してシステムのカスタム化が可能になる。これは、学習およびカスタム化を行う索引の上位のレイヤである。図600は、このような方法の1つを示す。
ニューラルネットワークを導入して、ユーザの関連性フィードバックのパターンを学習し、識別する。重要な点は、ニューラルネットワーク等の素早く学習するネットワークシステムを実行することである。多層フィードフォワードニューラルネットワークシステムを、本発明の実施の形態のいくつかに用いた。社会的行動の粒子システム、およびバックプロパゲーションからのアルゴリズムを用いて、はじめにニューラルネットワークを訓練する。
学習エージェントを用いて、特定のユーザの意図をより良く表すクエリーベクトルを素早く再構築することができる。意味的ギャップのために、ユーザが低レベルの特徴要素を持つクエリーを実行することが難しい。例示のクエリーだけが、ユーザに彼/彼女の意図についてのおおまかな考えを与えさせることになる。従って、ユーザの意図をよりよく解釈するように、クエリーベクトルをさらに良いものにする。ユーザが学習エージェントを起動する場合は、訓練の例としてユーザが行った関連性フィードバックを用いる。ゴールは、直接に基づくユーザの探索履歴および現在次に実行したクエリーに基づいてクエリーベクトルを再構築することである。重要な点は、ニューラルネットワークの成熟度の検出および過剰学習の回避である。
また、学習エージェントを用いて探索システムを再構成することもできる。すなわち、特徴要素の重みの再構成である。安定したパターンを識別するならば、次にシステムを再構成して、特徴の相対重要性についてのユーザの見方を反映させることができる。また、ここでのゴールは、関連性フィードバックの時間を短縮することである。学習エージェントを導入する利点は次のことである。a)関連性フィードバックの間に、クエリー再構成と重み付け再構成とを分離することと、b)異なるユーザおよび/または同じユーザが実行した異なるクエリーのためにシステムをカスタマイズすることである。
ニューラルネットワークの寄与が重要なものとなっているのはシステムをユーザとクエリー入力との両方に対してカスタマイズできることである。以下は、場合によっては、重みの設定が入力に依存することの1例である。
特徴ベクトルが2つの要素からなると仮定する。1つはF1で、もう一方はF2である。図61は、データベースの特徴ベクトルを表の左側に示している。ユーザのクエリーベクトルは表の右側である。矢印は、ユーザのクエリー入力とデータベースのものとの照合である。この照合をユーザの関連性フィードバックから発見することができる。
第1の木関連性フィードバックに基づくと、重みを再構成することが理にかなっている。W (1)=W (0)およびW (1)=3×W (0)である。しかしながら、第2の木関連性フィードバックに基づくと、システムを再構成することになる。W (1)=W (0)およびW (1)=10×W (0)である。言い換えれば、再構成は、F1の存在する範囲に依存している。1つの重みを単純に代入すると、システムの精度が他のものではよいが、モデルのいくつかからはほとんど満足の行くものではなくなってしまう。
(3.8.多段階探索処理)
真の探索システムは、事前に定義した類似性基準値に基づくモデルのセットではなく、彼/彼女が探しているモデルをユーザが検出できるようなものでなければならない。この目的のために、本発明の実施の形態は多段階探索方法を組み込んで、異なる照合基準を用いてユーザが部品を探索できるようにする。例えば、ユーザは探索の第1の段階でスケルトングラフを用いてデータベースを探索できる。これにより、位相的に類似のモデルを検索することになる。続いて、異なる基準値、例えば、全ボリュームを用いて、検索したモデルを除外することもできる。これにより、ユーザが探索基準にブール演算を用いることができるので、該当する部品を素早く検索する。
多段階アプローチは、汎用および特に工学分野用に、3D形状探索システムのために提案されたものの最初のものである。
本発明の実施の形態のシステムにより、類似性不変量と共にfor多段階探索のスケルトングラフを組み込むことができる。このような多段階探索処理の一例を、図62に示す:
a.各種の特徴ベクトル(すなわち、モーメント不変量、スケルトングラフの固有値、幾何パラメータ)を用いて、探索空間(N個のモデルを持つデータベース)を小さな数Mに低減する。ただし、M<Nである。
b.スケルトングラフ不変量(<ノードの度合い>、<数L,E,C>、<数L−L,L−E,E−Eの接続性>等)を用いてさらに探索空間を低減する。例えばMである。ただし、M<M0である。
c.不正確なグラフ照合を行って、探索空間を低減して、探索結果をモデルのより小さなセットに並べる。M<Mである。
d.ユーザが以下のステップのようにシステムと対話して、(必要ならば)探索空間を低減する:
i.不変量ベースの基準を指定して、探索空間を低減する
ii.ブール演算を探索基準に用いる
iii.類似性閾値基準を指定して、最終結果を得る。
図63は、多段階絞込みからの特定の探索結果を示す。スケルトングラフベースの類似性を用いて初期クエリーを実行して、モーメント不変量を用いて結果を絞り込んで、該当するモデルを検索した。
特定の実施の形態について、ここに説明し述べてきたが、当業者ならば、同じ目的を達成するために計算する任意の構成を、示した特定の実施の形態と置換できることが理解できるであろう。この開示は本発明の各種の実施の形態を適用例または変形例をすべて含むことを意図している。上記の記載が説明のためだけになされたことを理解されたい。ここで特に記載されていない上記の実施の形態の組み合わせ、および他の実施の形態については、上記の記載を検討すれば、当業者に明らかになるであろう。本発明の各種の実施の形態の範囲は、上記構造および方法を用いた他のいずれの応用例についても含むものである。従って、各種の本発明の実施の形態の範囲については、このような請求の範囲に与えられる同等物の全範囲と共に、添付の請求の範囲を参照して決められるものである。
米国特許法§1.72(b)に基づいて要約が用意されていることを強調する。要約により、読む者が本質および技術開示の要旨を簡単に把握できるように規定したものである。これを用いて請求の範囲あるいは意味を解釈したり限定したりしないという認識の元で、これを提出する。
前述の詳細な説明では、説明のために各種の特徴を共に1つの実施の形態まとめていた。この開示の方法を、各請求項に特に記載した以上の特徴を必要とするという意図を反映するものとして、請求の本発明の実施の形態を解釈するべきではない。むしろ、以下の請求の範囲が反映するように、発明の内容は、1つの開示の実施の形態のすべての特徴に包含されるといえない。これにより、各請求項はそれ自体個別の好適な実施の形態として、以下の請求の範囲は詳細な説明に組み込まれる。
図1は、3D形状探索システムを示す図である。 図2は、CADおよび境界表現グラフを示す図である。 図3は、モジュールインビューアーキテクチャ(MVA)の相互作用を示す図である。 図4は、MVAの特徴を示す図である。 図5は、特徴インターフェースデータ構造を示す図である。 図6は、スケッチした面ツールの一例を示す図である。 図7は、切断面ツールの一例を示す図である。 図8は、押し出しツールの一例を示す図である。 図9は、消去したデータ構造の部分を示す図である。 図10は、スケルトン生成および変更の例示のビューを示す図である。 図11は、例示のクエリーおよび探索インターフェースのグラフィックビューを示す図である。 図12は、2D離散空間の離散化の一例を示す図である。 図13は、3D離散空間のボクセル隣接関係の種類を示す図である。 図14は、ボクセル化アルゴリズムの例示の疑似コードを示す図である。 図15は、フェースオブジェクトを表す3Dモデルを示す図である。 図16は、立方体のフェースおよびファセットデータ構造を示す図である。 図17は、3Dモデルのボクセル内に保存したフェース識別を示す図である。 図18は、形状およびそのスケルトンの一例を示す図である。 図19は、スケルトン化を示す図である。 図20は、サンプル形状のカテゴリ分類を示す図である。 図21は、不要の付属物に印がつけられたユークリッド構造の一例を示す図である。 図22は、3Dボクセルモデルの一例を示す図である。 図23は、例示の管状部品を示す図である。 図24は、例示の内部キャビティを示す図である。 図25は内部キャビティおよびその例示の疑似コードをファイリングする技術を図で示したものである。 図26は、ボクセルの分類に基づく視認性を示す図である。 図27は、ソリッド角度の一例を示す図である。 図28は、3×3×3マスクの一例および×形状の一例のその対応する方向を示す図である。 図29は、2D空間のブレセンハムアルゴリズムの一例を図で示したものである。 図30は、図29の例示のブレセンハムアルゴリズムの別のビューを示す図である。 図31は、ワイヤフレーム技術の一例を示す図である。 図32は、ワイヤフレームモデルの一例の位相の保存を示す図である。 図33は、簡易型ワイヤフレームモデルを示す図である。 図34は、簡易型ワイヤフレームモデルの各種のレベルの詳細(Levels Of Detail:LOD)を示す図である。 図35は、簡易型ワイヤフレームモデルの各種のLODをさらに表すビューを示す図である。 図36は、視覚的に似ているが異なるモデルを示す図である。 図37は、スケルトングラフの一例を示す図である。 図38は、ローカルボリューム分散の例示のスケルトン稜線を示す図である。 図39は、スケルトンエンティティを有するCADモジュールの一例を示す図である。 図40は、マーチングアルゴリズムの例示の疑似コードを示す図である。 図41は、稜線のセグメント化を示す図である。 図42は、ループの分類を示す図である。 図43は、ボリュームベースの再構成を図で示したものである。 図44Aは、マーチングアルゴリズムに対応付けられた処理結果のビューを図で示したものである。 図44Bは、マーチングアルゴリズムに対応付けられた処理結果の別のビューを図で示したものである。 図44Cは、処理結果マーチングアルゴリズムに対応付けられた別のビューを図で示したものである。 図45は、スケルトンモデルの一例を示す図である。 図46は、整理したスケルトンモデルを示す図である。 図47は、マーチングアルゴリズムに対応付けられたデータフローのフローチャートを示す図である。 図48は、対応付けグラフ技術を示す図である。 図49は、木ベースの多次元索引を示す図である。 図50は、木ベースの多次元索引のノードを示す図である。 図51Aは、木ベースの多次元索引データ構造の一例を示す図である。図51Bは、木ベースの多次元索引データ構造の別の一例を示す図である。 図52は、特徴ベクトルを示す図である。 図53は、特徴空間内の点としてモデルを示す図である。 図54は、部品クラスタマップのビジュアルインターフェースを示す図である。 図55は、自己組織化マップ(SOM)データ構造を示す図である。 図56は、クラスタマップインターフェースを示す図である。 図57は、自動クラスタを有する閲覧用のクラスタマップを示す図である。 図58は、類似性クエリーを行った後のクラスタマップを示す図である。 図59は、関連性フィードバックの方法を表すフローチャートを示す図である。 図60は、関連性フィードバックに基づくカスタム化技術を示す図である。 図61は、データ記憶装置ベクトルとクエリーベクトルとの間の照合技術を示す図である。 図62は、多段階探索処理方法の一例を示す図である。 図63は、多段階探索処理から生成した例示の探索結果を示す図である。

Claims (6)

  1. コンピュータにより実行される探索方法であって、
    該コンピュータは、入力手段と、プロセッサと、データベースを格納するメモリ手段と、表示手段とを備え、
    該方法は、
    (a)該入力手段が2次元オブジェクトの最初のスケッチを受け取るステップであって、該2次元オブジェクトは、複数の予め定義された3次元幾何エンティティから構成される3次元モデルを表す、ステップと、
    (b)該プロセッサが、該最初のスケッチに対してボクセル化を実行することにより、該最初のスケッチに対応するボクセルのセットを生成するステップと、
    (c)該プロセッサが、該ボクセルのセットをベクトル形式に変換するステップであって、該ベクトル形式は、3つの直交ビューに関係する直交ビューデータを含む形式であるステップと、
    (d)該プロセッサが、該複数の予め定義された3次元幾何エンティティのセットを決定し、該プロセッサが、該直交ビューデータを比較することにより、該複数の予め定義された3次元幾何エンティティのセットの各エンティティの間の接続を決定し、該プロセッサが、該決定された複数の予め定義された3次元幾何エンティティのセットと該決定されたセットの各エンティティの間の接続とを用いて、該直交ビューデータを所望の3次元モデルに対応するスケルトンに変換することによって、スケルトン化を実行するステップであって、該複数の予め定義された3次元幾何エンティティのセットは、複数の稜線と、複数の稜線のうちの少なくとも1つによって形成される複数のループとを含む、ステップと、
    (e)該プロセッサが、該変換されたスケルトンを形成するために組み合わせて用いられる該決定された複数の予め定義された3次元幾何エンティティのセットら稜線のセットとループのセットとを識別し、該プロセッサが、該変換されたスケルトンを用いて、ノードのセットをさらに識別するステップであって、該ノードのセット内の各ノードは、識別された稜線の終、または該識別された稜線のうちの少なくとも2つの稜線およびループの交点に対応するステップと、
    (f)該プロセッサが、該データベースを検索して、該稜線、ループおよびノードの識別されたセットを用いて、該メモリ手段に格納された複数の3次元モデルから少なくとも1つの3次元モデルを取得するステップであって、該複数の3次元モデルの各々は、該複数の3次元モデルの各々が当該3次元モデルから識別可能な稜線、ループまたはノードの関連付けられたセットに基づいて検索可能なように、該データベースに格納されている、ステップと、
    (g)該表示手段が、該取得された少なくとも1つの3次元モデルの各々を表示するステップ
    を包含する、方法。
  2. 前記プロセッサが、直交ビューデータをスケルトンに変換することによって、スケルトン化を実行するステップは、
    前記プロセッサが、前記決定された複数の予め定義された3次元幾何エンティティのセットを用いて、該直交ビューデータを、前記所望の3次元モデルに対応する2次元スケルトンに変換することによって、スケルトン化を実行するステップと、
    該プロセッサが、前記決定されたセットの各エンティティの間の接続を用いて、該2次元スケルトンを3次元スケルトンにさらに変換するステップと
    をさらに包含する、請求項1に記載の方法。
  3. 前記プロセッサにより識別するステップは、前記稜線の識別されたセット、前記ループの識別されたセットおよび前記ノードの識別されたセットの選択数関連性評価関連付けることをさらに包含し、
    該プロセッサにより検索するステップは、該稜線、ループおよびノードの識別されたセットの各々に関連付けられた該関連性評価に基づいて、前記メモリ手段に格納された複数の3次元モデルから前記少なくとも1つの3次元モデルを検索することをさらに包含する、請求項1に記載の方法。
  4. 前記関連性評価は、前記プロセッサにより実行されるさらなる検索ステップに対する優先フィルタとして用いられる、請求項3に記載の方法。
  5. 記稜線、ループおよびノードの関連付けられたセットの各々は、複数の関連クラスタとして構成され、検索可能であり、各クラスタは、該稜線、ループおよびノードの関連付けられたセットの選択数を含む、請求項1に記載の方法。
  6. 前記直交ビューデータをスケルトンに変換することによって、スケルトン化を実行するステップは、
    前記プロセッサが、前記決定された複数の予め定義された3次元幾何エンティティのセットを用いて、該直交ビューデータを、前記所望の3次元モデルに対応する2次元スケルトンに変換することによって、スケルトン化を実行するステップと、
    該プロセッサが、該2次元スケルトンの2次元頂点の各々から、該2次元スケルトンの各ビューについて候補の3次元頂点を生成するステップと、
    該プロセッサが、候補の3次元フェースを、該生成された候補の3次元稜線のセットから生成するステップであって、該生成された候補の3次元稜線のセットの各々は、共通のサーフェスを共有する候補の3次元稜線を含む、ステップと、
    該プロセッサが、該3次元フェースを組み立てることにより、該所望の3次元モデルの成分に対応する1つ以上の3次元オブジェクトを該候補の3次元フェースから生成するステップと、
    所望の3次元モデルに対応するスケルトンとして、該1つ以上の3次元オブジェクトを前記受け取られた2次元オブジェクトに関連付けるステップと
    をさらに包含する、請求項1に記載の方法。
JP2006502981A 2003-01-25 2004-01-23 3次元オブジェクトについて検索を行なうための方法、システムおよびデータ構造 Expired - Lifetime JP4516957B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US44237303P 2003-01-25 2003-01-25
PCT/US2004/001962 WO2004068300A2 (en) 2003-01-25 2004-01-23 Methods, systems, and data structures for performing searches on three dimensional objects

Publications (2)

Publication Number Publication Date
JP2006520948A JP2006520948A (ja) 2006-09-14
JP4516957B2 true JP4516957B2 (ja) 2010-08-04

Family

ID=32825208

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006502981A Expired - Lifetime JP4516957B2 (ja) 2003-01-25 2004-01-23 3次元オブジェクトについて検索を行なうための方法、システムおよびデータ構造

Country Status (4)

Country Link
US (2) US8429174B2 (ja)
EP (1) EP1586020A2 (ja)
JP (1) JP4516957B2 (ja)
WO (1) WO2004068300A2 (ja)

Families Citing this family (321)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9704128B2 (en) * 2000-09-12 2017-07-11 Sri International Method and apparatus for iterative computer-mediated collaborative synthesis and analysis
WO2004061620A2 (en) * 2003-01-02 2004-07-22 University Of Rochester Temporal affinity analysis using reuse signatures
US8429174B2 (en) 2003-01-25 2013-04-23 Purdue Research Foundation Methods, systems, and data structures for performing searches on three dimensional objects
US7239989B2 (en) * 2003-07-18 2007-07-03 Oracle International Corporation Within-distance query pruning in an R-tree index
US20050149258A1 (en) * 2004-01-07 2005-07-07 Ullas Gargi Assisting navigation of digital content using a tangible medium
JP4267475B2 (ja) * 2004-02-13 2009-05-27 富士通株式会社 図面照合装置
US7679615B2 (en) * 2004-05-04 2010-03-16 Iucf-Hyu (Industry-University Cooperation Foundation Hanyang University) Calculating three-dimensional (3D) Voronoi diagrams
US7548650B2 (en) * 2004-06-30 2009-06-16 Iowa State University Research Foundation, Inc. Geometric search engine
GB2415876B (en) * 2004-06-30 2007-12-05 Voxar Ltd Imaging volume data
US7346382B2 (en) 2004-07-07 2008-03-18 The Cleveland Clinic Foundation Brain stimulation models, systems, devices, and methods
EP1617326A1 (en) * 2004-07-14 2006-01-18 Sap Ag Technique for handling hierarchical application data
EP1617355A1 (en) * 2004-07-14 2006-01-18 Sap Ag Technique for flexible path optimization
US8126907B2 (en) * 2004-08-03 2012-02-28 Nextengine, Inc. Commercial shape search engine
JP2006099385A (ja) * 2004-09-29 2006-04-13 Fujitsu Ltd 形状設計支援プログラム
US7856413B2 (en) * 2004-10-14 2010-12-21 International Business Machines Corporation Dynamic search criteria on a search graph
US7158853B2 (en) * 2004-10-25 2007-01-02 Amada Company, Limited Pattern recognition for sheet metal part models
US7583272B2 (en) * 2004-11-29 2009-09-01 Purdue Research Foundation Methods for retrieving shapes and drawings
JP2006163894A (ja) * 2004-12-08 2006-06-22 Hitachi Software Eng Co Ltd クラスタリングシステム
KR20060066340A (ko) * 2004-12-13 2006-06-16 삼성전자주식회사 3차원 구조 스케치 제작장치와 방법 및 컴퓨터 프로그램을저장하는 컴퓨터로 읽을 수 있는 기록매체
US8300062B2 (en) * 2005-04-18 2012-10-30 Steve Tsang Method, system and computer program for using a suggestive modeling interface
WO2006124878A2 (en) * 2005-05-12 2006-11-23 Mark Lawson Palmer Method for achieving virtual resolution enhancement of a diagnostic imaging modality by using coupled fea analyses
WO2006124719A2 (en) * 2005-05-12 2006-11-23 Mark Benjamin Willis Method for using coupled fea analyses of different levels of organization within an entity to analyze the entity
US20070198588A1 (en) * 2005-10-17 2007-08-23 Siemens Corporate Research Inc Automatic Qualification of Plant Equipment
US7756855B2 (en) * 2006-10-11 2010-07-13 Collarity, Inc. Search phrase refinement by search term replacement
US8429184B2 (en) 2005-12-05 2013-04-23 Collarity Inc. Generation of refinement terms for search queries
US8903810B2 (en) 2005-12-05 2014-12-02 Collarity, Inc. Techniques for ranking search results
US7716169B2 (en) * 2005-12-08 2010-05-11 Electronics And Telecommunications Research Institute System for and method of extracting and clustering information
US20070179760A1 (en) * 2006-01-06 2007-08-02 Intel Corporation Method of determining graph isomorphism in polynomial-time
US7584179B2 (en) * 2006-01-27 2009-09-01 William Derek Finley Method of document searching
US20070192181A1 (en) * 2006-02-10 2007-08-16 Microsoft Corporation Automatically modifying web pages to integrate advertising without changing UI
JP4990917B2 (ja) * 2006-02-23 2012-08-01 イマジネスティクス エルエルシー データベース内の構成部品を探索するための入力としてユーザが構成部品を描くことができるようにする方法
US8422763B2 (en) 2006-02-28 2013-04-16 Parametric Technology Corporation Method for comparing first computer-aided 3D model with a second computer-aided 3D model
JP4878178B2 (ja) * 2006-02-28 2012-02-15 株式会社日立製作所 データ処理方法および装置並びにその処理プログラム
KR101195942B1 (ko) * 2006-03-20 2012-10-29 삼성전자주식회사 카메라 보정 방법 및 이를 이용한 3차원 물체 재구성 방법
JP2007299238A (ja) * 2006-04-28 2007-11-15 Toshiba Corp Cadシステム、および設計/解析方法
US7970746B2 (en) * 2006-06-13 2011-06-28 Microsoft Corporation Declarative management framework
US7840388B2 (en) * 2006-06-26 2010-11-23 Yokogawa Electric Corporation Engineering device
US8015125B2 (en) * 2006-08-31 2011-09-06 Drexel University Multi-scale segmentation and partial matching 3D models
US20080086324A1 (en) * 2006-09-14 2008-04-10 Junichi Yamagata Parts managing system, parts managing method, and computer program product
US8103547B2 (en) * 2006-09-18 2012-01-24 Microsoft Corporation Logocons: AD product for brand advertisers
US7969434B2 (en) 2006-09-19 2011-06-28 Caustic Graphics, Inc. Method, apparatus, and computer readable medium for accelerating intersection testing in ray-tracing rendering
US9478062B2 (en) 2006-09-19 2016-10-25 Imagination Technologies Limited Memory allocation in distributed memories for multiprocessing
US9665970B2 (en) 2006-09-19 2017-05-30 Imagination Technologies Limited Variable-sized concurrent grouping for multiprocessing
US7830379B2 (en) * 2006-09-19 2010-11-09 Caustic Graphics, Inc. Architectures for parallelized intersection testing and shading for ray-tracing rendering
US8018457B2 (en) * 2006-09-19 2011-09-13 Caustic Graphics, Inc. Ray tracing system architectures and methods
US8674987B2 (en) 2006-09-19 2014-03-18 Caustic Graphics, Inc. Dynamic ray population control
US7627542B2 (en) * 2006-09-22 2009-12-01 Microsoft Corporation Group identification in large-scaled networks via hierarchical clustering through refraction over edges of networks
JP2008077594A (ja) * 2006-09-25 2008-04-03 Fujitsu Ltd 設計支援装置,設計支援方法,設計支援プログラム,および設計支援システム
US8442972B2 (en) * 2006-10-11 2013-05-14 Collarity, Inc. Negative associations for search results ranking and refinement
JP2008117031A (ja) * 2006-11-01 2008-05-22 Fujitsu Ltd 設計支援装置,設計支援方法,設計支援プログラムおよびcadシステム
US7739260B1 (en) * 2006-12-28 2010-06-15 Scientific Components Corporation Database search system using interpolated data with defined resolution
US8417502B1 (en) 2006-12-28 2013-04-09 Scientific Components Corporation Mixer harmonics calculator
US7688318B2 (en) 2007-02-02 2010-03-30 Dassault Systemes Solidworks Corporation Reusable data constructs for a modeling system
FI20075084A0 (fi) * 2007-02-06 2007-02-06 Tekla Corp Tietokoneavusteinen mallintaminen
JP4845761B2 (ja) * 2007-02-09 2011-12-28 富士通株式会社 3次元モデルの形状簡略化装置及び3次元モデルの形状簡略化プログラム
US8374829B2 (en) 2007-03-16 2013-02-12 Lego A/S Automatic generation of building instructions for building element models
US7979251B2 (en) * 2007-03-16 2011-07-12 Lego A/S Automatic generation of building instructions for building element models
US20080294368A1 (en) * 2007-03-23 2008-11-27 Jun Wan System and method for calculating the internal volume of a solid model
WO2008128338A1 (en) * 2007-04-19 2008-10-30 D-Wave Systems Inc. Systems, methods, and apparatus for automatic image recognition
US20080269942A1 (en) * 2007-04-26 2008-10-30 David Mitchell Free Computer system and method for providing real-world market-based information corresponding with a theoretical cad model and/or rfq/rfp data
US20080297503A1 (en) * 2007-05-30 2008-12-04 John Dickinson System and method for reconstructing a 3D solid model from a 2D line drawing
CN101836235A (zh) * 2007-08-16 2010-09-15 皇家飞利浦电子股份有限公司 用于对三维(3d)图像数据体积中的横截平面进行采样的成像方法
US9063979B2 (en) * 2007-11-01 2015-06-23 Ebay, Inc. Analyzing event streams of user sessions
US8237711B2 (en) * 2007-11-19 2012-08-07 Caustic Graphics, Inc. Tracing of shader-generated ray groups using coupled intersection testing
JP2009129337A (ja) * 2007-11-27 2009-06-11 Hitachi Ltd 三次元類似形状検索装置
JP5309570B2 (ja) * 2008-01-11 2013-10-09 株式会社リコー 情報検索装置、情報検索方法、制御プログラム
US8122442B2 (en) * 2008-01-31 2012-02-21 Oracle America, Inc. Method and system for array optimization
US9220889B2 (en) 2008-02-11 2015-12-29 Intelect Medical, Inc. Directional electrode devices with locating features
US8019440B2 (en) 2008-02-12 2011-09-13 Intelect Medical, Inc. Directional lead assembly
JP5351182B2 (ja) * 2008-02-25 2013-11-27 アティジオ リミテッド ライアビリティ カンパニー 関心領域についての関連情報の決定
US20090222446A1 (en) * 2008-03-03 2009-09-03 Emmanuel Goldschmidt Three-dimensional object identification through resonance frequencies analysis
JP5192055B2 (ja) * 2008-03-04 2013-05-08 コードエスイー カンパニー リミテッド 3次元応用プログラムフレームワーク構造及びこれを基盤とするアプリケーション具現方法、並びに3次元応用ソフトウェアフレームワーク基盤の自動テストシステム及びその方法
WO2009124139A1 (en) * 2008-04-01 2009-10-08 The Government Of The United States Of America, As Represented By The Secretaty Of The Navy Methods and systems of comparing face models for recognition
US9272153B2 (en) 2008-05-15 2016-03-01 Boston Scientific Neuromodulation Corporation VOA generation system and method using a fiber specific analysis
US9058695B2 (en) 2008-06-20 2015-06-16 New Bis Safe Luxco S.A R.L Method of graphically representing a tree structure
US8438178B2 (en) 2008-06-26 2013-05-07 Collarity Inc. Interactions among online digital identities
WO2010011911A2 (en) * 2008-07-25 2010-01-28 Cornell University Apparatus and methods for digital manufacturing
US8463053B1 (en) 2008-08-08 2013-06-11 The Research Foundation Of State University Of New York Enhanced max margin learning on multimodal data mining in a multimedia database
US8421801B2 (en) * 2008-09-09 2013-04-16 Caustic Graphics, Inc. Ray tracing using ray-specific clipping
US8521757B1 (en) * 2008-09-26 2013-08-27 Symantec Corporation Method and apparatus for template-based processing of electronic documents
US8204340B2 (en) * 2008-09-29 2012-06-19 Two Pic Mc Llc Methods and apparatus for dot marker matching
EP2175356B1 (en) 2008-10-08 2018-08-15 ExB Asset Management GmbH Distance dependent selection of information entities
JP4806706B2 (ja) * 2008-12-18 2011-11-02 株式会社日立製作所 解析モデルの変形方法および計算機
US9607052B2 (en) * 2008-12-29 2017-03-28 Technion Research & Development Foundation Limited Query networks evaluation system and method
US20100194778A1 (en) * 2009-01-30 2010-08-05 Microsoft Corporation Projecting data dimensions on a visualization data set
US8380644B2 (en) * 2009-02-10 2013-02-19 Siemens Audiologische Technik Gmbh System and method for prototyping by learning from examples wherein a prototype is calculated for each shape class cluster
US8260583B2 (en) * 2009-03-12 2012-09-04 Siemens Product Lifecycle Management Software Inc. System and method for identifying wall faces in an object model
US8812475B2 (en) 2009-04-20 2014-08-19 International Business Machines Corporation Facilitating object searches in virtual worlds
US9330204B2 (en) 2009-05-29 2016-05-03 Siemens Product Lifecycle Management Software Inc. CAD system and method for wireframe coupling
US8952961B2 (en) * 2009-06-29 2015-02-10 Imagination Technologies, Limited Systems and methods for photon map querying
CN101599077B (zh) * 2009-06-29 2011-01-05 清华大学 一种三维对象检索的方法
WO2011025865A1 (en) 2009-08-27 2011-03-03 The Cleveland Clinic Foundation System and method to estimate region of tissue activation
JP5229161B2 (ja) * 2009-08-28 2013-07-03 富士通株式会社 情報提供装置、情報提供方法および情報提供プログラム
US8447576B2 (en) * 2009-10-23 2013-05-21 Siemens Product Lifecycle Management Software Inc. System and method for producing editable three-dimensional models
WO2011068997A1 (en) 2009-12-02 2011-06-09 The Cleveland Clinic Foundation Reversing cognitive-motor impairments in patients having a neuro-degenerative disease using a computational modeling approach to deep brain stimulation programming
KR101626384B1 (ko) * 2009-12-04 2016-06-13 한국전자통신연구원 3차원 모델 데이터 검색 장치 및 방법
US9009163B2 (en) 2009-12-08 2015-04-14 Intellectual Ventures Fund 83 Llc Lazy evaluation of semantic indexing
WO2011078698A1 (en) 2009-12-14 2011-06-30 Business Intelligence Solutions Safe B.V. A method and system for optimizing the arrangement of spatial elements
US8875038B2 (en) 2010-01-19 2014-10-28 Collarity, Inc. Anchoring for content synchronization
JP5530732B2 (ja) * 2010-01-29 2014-06-25 株式会社日立製作所 作業指示生成システム、方法及びプログラム
TWI393071B (zh) * 2010-02-12 2013-04-11 Nat Univ Tsing Hua 可保留影像特徵之影像處理方法及系統
US20110202326A1 (en) * 2010-02-17 2011-08-18 Lockheed Martin Corporation Modeling social and cultural conditions in a voxel database
JP5430456B2 (ja) * 2010-03-16 2014-02-26 キヤノン株式会社 幾何特徴抽出装置、幾何特徴抽出方法、及びプログラム、三次元計測装置、物体認識装置
US8463756B2 (en) * 2010-04-21 2013-06-11 Haileo, Inc. Systems and methods for building a universal multimedia learner
GB201008228D0 (en) * 2010-05-18 2010-06-30 Univ Edinburgh Command interface
AU2011267853B2 (en) 2010-06-14 2016-12-08 Boston Scientific Neuromodulation Corporation Programming interface for spinal cord neuromodulation
US8443300B2 (en) * 2010-08-24 2013-05-14 Ebay Inc. Three dimensional navigation of listing information
US9128998B2 (en) 2010-09-03 2015-09-08 Robert Lewis Jackson, JR. Presentation of data object hierarchies
US9177041B2 (en) * 2010-09-03 2015-11-03 Robert Lewis Jackson, JR. Automated stratification of graph display
US8704824B2 (en) * 2010-09-29 2014-04-22 Siemens Product Lifecycle Management Software Inc. Integrated history-free and history-based modeling
EP2474928A1 (en) 2010-12-30 2012-07-11 Dassault Systèmes Merging of modeled objects
EP2474929A1 (en) 2010-12-30 2012-07-11 Dassault Systèmes Modeled object updating
EP2474930B1 (en) * 2010-12-30 2018-10-24 Dassault Systèmes Updating a modeled object
JP5625920B2 (ja) * 2011-01-06 2014-11-19 セイコーエプソン株式会社 画像処理装置、画像処理方法及びそのプログラム
CN103327925B (zh) * 2011-01-20 2016-12-14 美敦力巴肯研究中心有限公司 用于确定组织中的对象的移动的至少一个适用路径的方法
WO2012121728A1 (en) * 2011-03-10 2012-09-13 Textwise Llc Method and system for unified information representation and applications thereof
JP2014513622A (ja) 2011-03-29 2014-06-05 ボストン サイエンティフィック ニューロモデュレイション コーポレイション 治療刺激提供システムのための通信インタフェース
US8811719B2 (en) * 2011-04-29 2014-08-19 Microsoft Corporation Inferring spatial object descriptions from spatial gestures
WO2012149961A1 (en) * 2011-05-03 2012-11-08 Fujitsu Limited Computer - implemented method of simplifying a complex part in a geometric model
EP2521055B1 (en) 2011-05-06 2019-07-10 Dassault Systèmes Selection of three-dimensional parametric shapes
EP2521057A1 (en) 2011-05-06 2012-11-07 Dassault Systèmes Determining a parameter of a geometrical cad operation
EP2521056A1 (en) * 2011-05-06 2012-11-07 Dassault Systèmes Cad design with primitive closed shapes
EP2521058A1 (en) * 2011-05-06 2012-11-07 Dassault Systèmes Determining a geometrical CAD operation
EP2521059B1 (en) 2011-05-06 2019-10-16 Dassault Systèmes Design operations on shapes divided in portions
EP2523130A1 (en) 2011-05-11 2012-11-14 Dassault Systèmes Method for designing a geometrical three-dimensional modeled object
US9592389B2 (en) 2011-05-27 2017-03-14 Boston Scientific Neuromodulation Corporation Visualization of relevant stimulation leadwire electrodes relative to selected stimulation information
JP2012256109A (ja) * 2011-06-07 2012-12-27 Sony Corp 情報処理装置、プログラム及び情報処理方法
CN103765376B (zh) 2011-06-16 2017-05-31 想象技术有限公司 具有无阻塞并行架构的图形处理器
US10061618B2 (en) 2011-06-16 2018-08-28 Imagination Technologies Limited Scheduling heterogenous computation on multithreaded processors
EP2541437A1 (en) * 2011-06-30 2013-01-02 dimensio informatics GmbH Data base indexing
WO2013019961A2 (en) * 2011-08-02 2013-02-07 Design Play Technologies Inc. Real-time collaborative design platform
US9925382B2 (en) 2011-08-09 2018-03-27 Boston Scientific Neuromodulation Corporation Systems and methods for stimulation-related volume analysis, creation, and sharing
US8768921B2 (en) 2011-10-20 2014-07-01 International Business Machines Corporation Computer-implemented information reuse
JP5654438B2 (ja) * 2011-11-29 2015-01-14 株式会社日立製作所 類似設計構造検索装置、および類似設計構造検索方法
JP5490080B2 (ja) * 2011-12-06 2014-05-14 株式会社セルシス スケルトンモデルの姿勢制御方法,及びプログラム
US20130275431A1 (en) * 2012-04-12 2013-10-17 Nainesh Rathod Visual clustering method
US20130275903A1 (en) * 2012-04-13 2013-10-17 Christine Marie Kennefick Method and Device to Design, Store and Analyze Patterns of Three Dimensional Structural Elements at the Atomic, Nanoscale, Microscale and Larger Scale Levels
DE102012208999A1 (de) * 2012-05-29 2013-12-05 Siemens Aktiengesellschaft Bearbeitung einer Datenmenge
US10002164B2 (en) * 2012-06-01 2018-06-19 Ansys, Inc. Systems and methods for context based search of simulation objects
US9442959B2 (en) * 2012-06-28 2016-09-13 Adobe Systems Incorporated Image search refinement using facets
US10176291B2 (en) * 2012-07-06 2019-01-08 Siemens Product Lifecycle Management Software Inc. Ordering optional constraints in a variational system
US9164503B2 (en) * 2012-07-13 2015-10-20 The Boeing Company Method of optimizing toolpaths using medial axis transformation
US9604067B2 (en) 2012-08-04 2017-03-28 Boston Scientific Neuromodulation Corporation Techniques and methods for storing and transferring registration, atlas, and lead information between medical devices
US9390174B2 (en) * 2012-08-08 2016-07-12 Google Inc. Search result ranking and presentation
US9372871B2 (en) * 2012-08-24 2016-06-21 Google Inc. Combining unstructured image and 3D search results for interactive search and exploration
US9514522B2 (en) * 2012-08-24 2016-12-06 Microsoft Technology Licensing, Llc Depth data processing and compression
WO2014036079A2 (en) 2012-08-28 2014-03-06 Boston Scientific Neuromodulation Corporation Parameter visualization, selection, and annotation interface
US9836483B1 (en) * 2012-08-29 2017-12-05 Google Llc Using a mobile device for coarse shape matching against cloud-based 3D model database
US9501869B2 (en) * 2012-10-31 2016-11-22 Gulfstream Aerospace Corporation Systems and methods for presenting vehicle component information
WO2014070290A2 (en) 2012-11-01 2014-05-08 Boston Scientific Neuromodulation Corporation Systems and methods for voa model generation and use
US20140188768A1 (en) * 2012-12-28 2014-07-03 General Electric Company System and Method For Creating Customized Model Ensembles On Demand
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
IL224482B (en) 2013-01-29 2018-08-30 Verint Systems Ltd System and method for keyword spotting using representative dictionary
EP2981932B1 (en) 2013-04-02 2018-11-14 3M Innovative Properties Company Systems and methods for note recognition
US10127196B2 (en) 2013-04-02 2018-11-13 3M Innovative Properties Company Systems and methods for managing notes
EP2981931B1 (en) 2013-04-02 2021-03-03 3M Innovative Properties Company Systems and methods for managing notes
US10776978B2 (en) * 2013-04-08 2020-09-15 Holcomb Technologies, L.L.C. Method for the automated identification of real world objects
US9836879B2 (en) * 2013-04-16 2017-12-05 Autodesk, Inc. Mesh skinning technique
CN103198522B (zh) * 2013-04-23 2015-08-12 清华大学 三维场景模型生成方法
IL226056A (en) * 2013-04-28 2017-06-29 Verint Systems Ltd Keyword Finding Systems and Methods by Adaptive Management of Multiple Template Matching Algorithms
US9147125B2 (en) 2013-05-03 2015-09-29 Microsoft Technology Licensing, Llc Hand-drawn sketch recognition
EP2808810B1 (en) 2013-05-28 2017-01-11 Dassault Systèmes Compression and decompression of 3d modeled object
GB2515833A (en) * 2013-07-05 2015-01-07 Recipero Ltd System for generating a security document
WO2015006275A1 (en) 2013-07-09 2015-01-15 3M Innovative Properties Company Systems and methods for note content extraction and management using segmented notes
EP2823952A1 (de) * 2013-07-09 2015-01-14 Siemens Aktiengesellschaft Anpassungsverfahren und Herstellverfahren für mittels SLM gefertigte Bauteile
US9355123B2 (en) 2013-07-19 2016-05-31 Nant Holdings Ip, Llc Fast recognition algorithm processing, systems and methods
DE102013015239A1 (de) * 2013-09-13 2015-03-19 Liebherr-Verzahntechnik Gmbh Verfahren zum Rüsten einer Verzahnmaschine sowie Verzahnmaschine
US9047509B2 (en) 2013-10-16 2015-06-02 3M Innovative Properties Company Note recognition and association based on grouping indicators
EP3058509A4 (en) 2013-10-16 2017-08-09 3M Innovative Properties Company Note recognition for overlapping physical notes
EP3058512B1 (en) 2013-10-16 2022-06-01 3M Innovative Properties Company Organizing digital notes on a user interface
US10573059B2 (en) * 2018-03-27 2020-02-25 Desprez, Llc Methods of secret sharing for secure collaborative graphical design
US9274693B2 (en) 2013-10-16 2016-03-01 3M Innovative Properties Company Editing digital notes representing physical notes
TWI653571B (zh) 2013-10-16 2019-03-11 3M新設資產公司 用於處理數位便箋之方法、電腦系統、非暫時性電腦可讀取媒體及計算裝置
EP3058513B1 (en) 2013-10-16 2021-05-19 3M Innovative Properties Company Multi-color channel detection for note recognition and management
WO2015061689A1 (en) * 2013-10-24 2015-04-30 Ramos Olivia System and method for mining data using haptic feedback
KR101512084B1 (ko) * 2013-11-15 2015-04-17 한국과학기술원 가상현실 기반의 3차원 웹 검색 인터페이스를 제공하는 웹 검색 시스템 및 그 제공 방법
US10307961B2 (en) * 2013-11-21 2019-06-04 Siemens Product Lifecycle Management Software Inc. Intelligent 3D printer and method
KR101912794B1 (ko) * 2013-11-27 2018-10-29 한화테크윈 주식회사 영상 검색 시스템 및 영상 검색 방법
US9165100B2 (en) * 2013-12-05 2015-10-20 Honeywell International Inc. Methods and apparatus to map schematic elements into a database
WO2015087308A2 (fr) * 2013-12-15 2015-06-18 7893159 Canada Inc. Methode et systeme de comparaison de modeles 3d
US11010593B2 (en) * 2013-12-15 2021-05-18 7893159 Canada Inc. Method and system for comparing 3D models
US11886493B2 (en) 2013-12-15 2024-01-30 7893159 Canada Inc. Method and system for displaying 3D models
IN2013MU04141A (ja) * 2013-12-31 2015-08-07 Dassault Systemes
US10037403B2 (en) * 2014-01-13 2018-07-31 The Boeing Company Method and system for managing aircraft parts
WO2015116803A1 (en) 2014-01-31 2015-08-06 3M Innovative Properties Company Note capture and recognition with manual assist
WO2015123647A1 (en) 2014-02-14 2015-08-20 Nant Holdings Ip, Llc Object ingestion through canonical shapes, systems and methods
US20150253974A1 (en) 2014-03-07 2015-09-10 Sony Corporation Control of large screen display using wireless portable computer interfacing with display controller
US11501042B2 (en) 2014-03-24 2022-11-15 Imagars Llc Decisions with big data
JP2015191617A (ja) * 2014-03-28 2015-11-02 富士通株式会社 算出プログラム、算出装置および算出方法
JP6311404B2 (ja) 2014-03-31 2018-04-18 富士通株式会社 管理プログラム、管理装置および管理方法
US9727784B2 (en) * 2014-06-03 2017-08-08 Digitalglobe, Inc. Some automated and semi-automated tools for linear feature extraction in two and three dimensions
US10817526B2 (en) * 2014-07-16 2020-10-27 Machine Research Corporation Systems and methods for searching a machining knowledge database
US9959388B2 (en) 2014-07-24 2018-05-01 Boston Scientific Neuromodulation Corporation Systems, devices, and methods for providing electrical stimulation therapy feedback
US10265528B2 (en) 2014-07-30 2019-04-23 Boston Scientific Neuromodulation Corporation Systems and methods for electrical stimulation-related patient population volume analysis and use
US10272247B2 (en) 2014-07-30 2019-04-30 Boston Scientific Neuromodulation Corporation Systems and methods for stimulation-related volume analysis, creation, and sharing with integrated surgical planning and stimulation programming
US10402067B2 (en) * 2014-08-01 2019-09-03 Autodesk, Inc. Bi-directional search and sorting
CN105745652B (zh) * 2014-08-29 2020-02-11 微软技术许可有限责任公司 制造三维对象
US10466681B1 (en) 2014-09-02 2019-11-05 Machine Research Corporation Systems and methods for machining knowledge reuse
WO2016057544A1 (en) 2014-10-07 2016-04-14 Boston Scientific Neuromodulation Corporation Systems, devices, and methods for electrical stimulation using feedback to adjust stimulation parameters
US9026407B1 (en) 2014-10-16 2015-05-05 Christine Marie Kennefick Method of making and using a material model of elements with planar faces
CN104298758A (zh) * 2014-10-22 2015-01-21 天津大学 一种多视角目标检索的方法
US10664068B2 (en) 2015-01-30 2020-05-26 Hewlett-Packard Development Company, L.P. Physical document for navigation
US10678217B2 (en) * 2015-04-20 2020-06-09 Hewlett-Packard Development Company, L.P. Creating a voxel representation of a three dimensional (3-D) object
US10780283B2 (en) 2015-05-26 2020-09-22 Boston Scientific Neuromodulation Corporation Systems and methods for analyzing electrical stimulation and selecting or manipulating volumes of activation
AU2016268259B2 (en) 2015-05-26 2019-01-31 Boston Scientific Neuromodulation Corporation Systems and methods for analyzing electrical stimulation and selecting or manipulating volumes of activation
EP3098735A1 (en) 2015-05-28 2016-11-30 Dassault Systèmes Querying a database with thickness criterion
EP3098734A1 (en) 2015-05-28 2016-11-30 Dassault Systèmes Querying a database with likeness criterion
US11356451B2 (en) * 2015-06-12 2022-06-07 Miblok/Sheryldene-Anne Valente Cube-based user interface for online community
US10441800B2 (en) 2015-06-29 2019-10-15 Boston Scientific Neuromodulation Corporation Systems and methods for selecting stimulation parameters by targeting and steering
US20160375248A1 (en) 2015-06-29 2016-12-29 Boston Scientific Neuromodulation Corporation Systems and methods for selecting stimulation parameters based on stimulation target region, effects, or side effects
US9721356B2 (en) 2015-08-18 2017-08-01 Honeywell International Inc. Methods and systems for programatically identifying shapes in graphical artifacts
WO2017062378A1 (en) 2015-10-09 2017-04-13 Boston Scientific Neuromodulation Corporation System and methods for clinical effects mapping for directional stimulations leads
IL242218B (en) 2015-10-22 2020-11-30 Verint Systems Ltd A system and method for maintaining a dynamic dictionary
IL242219B (en) 2015-10-22 2020-11-30 Verint Systems Ltd System and method for keyword searching using both static and dynamic dictionaries
TW201719572A (zh) * 2015-11-19 2017-06-01 國立交通大學 三維模型分析及搜尋方法
CN105701142A (zh) * 2015-11-26 2016-06-22 中国传媒大学 一种基于关键字的三维模型检索方法
KR102431194B1 (ko) 2015-12-11 2022-08-11 한화디펜스 주식회사 객체 이동 경로를 이용한 장애물 충돌 여부 판단 방법 및 이를 위한 장치
US9799106B2 (en) * 2015-12-16 2017-10-24 Dropbox, Inc. Enhancing a digital image
US9875258B1 (en) * 2015-12-17 2018-01-23 A9.Com, Inc. Generating search strings and refinements from an image
US10360438B2 (en) 2015-12-30 2019-07-23 Dassault Systemes 3D to 2D reimaging for search
US10127333B2 (en) * 2015-12-30 2018-11-13 Dassault Systemes Embedded frequency based search and 3D graphical data processing
US10049479B2 (en) 2015-12-30 2018-08-14 Dassault Systemes Density based graphical mapping
JP6557606B2 (ja) * 2016-01-13 2019-08-07 株式会社日立製作所 モデル作成支援システム、モデル作成支援方法、及びモデル作成支援プログラム
WO2017131771A1 (en) 2016-01-29 2017-08-03 Hewlett-Packard Development Company, L.P. Identify a model that matches a 3d object
US10192000B2 (en) * 2016-01-29 2019-01-29 Walmart Apollo, Llc System and method for distributed system to store and visualize large graph databases
US10108637B2 (en) * 2016-03-08 2018-10-23 International Business Machines Corporation Spatial-temporal storage system, method, and recording medium
US10824638B2 (en) * 2016-03-25 2020-11-03 Microsoft Technology Licensing, Llc Enhancing object representations using inferred user intents
US10719193B2 (en) * 2016-04-20 2020-07-21 Microsoft Technology Licensing, Llc Augmenting search with three-dimensional representations
US10716942B2 (en) 2016-04-25 2020-07-21 Boston Scientific Neuromodulation Corporation System and methods for directional steering of electrical stimulation
US20170316004A1 (en) * 2016-04-28 2017-11-02 Microsoft Technology Licensing, Llc Online engine for 3d components
WO2017192746A1 (en) 2016-05-03 2017-11-09 Affera, Inc. Medical device visualization
EP3454734B1 (en) 2016-05-11 2024-04-17 Affera, Inc. Anatomical model generation
US20170325901A1 (en) 2016-05-12 2017-11-16 Affera, Inc. Anatomical model controlling
US11468111B2 (en) * 2016-06-01 2022-10-11 Microsoft Technology Licensing, Llc Online perspective search for 3D components
WO2017223505A2 (en) 2016-06-24 2017-12-28 Boston Scientific Neuromodulation Corporation Systems and methods for visual analytics of clinical effects
EP3264286B1 (en) 2016-06-28 2020-11-18 Dassault Systèmes Querying a database with morphology criterion
WO2018031959A1 (en) * 2016-08-12 2018-02-15 Aquifi, Inc. Systems and methods for automatically generating metadata for media documents
WO2018044881A1 (en) 2016-09-02 2018-03-08 Boston Scientific Neuromodulation Corporation Systems and methods for visualizing and directing stimulation of neural elements
US10780282B2 (en) 2016-09-20 2020-09-22 Boston Scientific Neuromodulation Corporation Systems and methods for steering electrical stimulation of patient tissue and determining stimulation parameters
US11741137B2 (en) * 2016-09-26 2023-08-29 Sanjiv Kapoor Biased string search structures with embedded range search structures
US20180089260A1 (en) * 2016-09-26 2018-03-29 Illinois Institute Of Technology Heterogenous string search structures with embedded range search structures
AU2017341910B2 (en) 2016-10-14 2020-05-14 Boston Scientific Neuromodulation Corporation Systems and methods for closed-loop determination of stimulation parameter settings for an electrical simulation system
KR102223983B1 (ko) * 2016-10-27 2021-03-08 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 첨가제 제조 명령어 생성 기법
WO2018085859A1 (en) * 2016-11-07 2018-05-11 Ayasdi, Inc. Dimension grouping and reduction for model generation, testing, and documentation
EP3321817A1 (en) 2016-11-14 2018-05-16 Dassault Systèmes Querying a database based on a parametric view function
US10275909B2 (en) * 2016-11-23 2019-04-30 3Dsystems, Inc. Systems and methods for an integrated system for visualizing, simulating, modifying and 3D printing 3D objects
AU2017391436B2 (en) 2017-01-03 2020-06-18 Boston Scientific Neuromodulation Corporation Systems and methods for selecting MRI-compatible stimulation parameters
ES2821752T3 (es) 2017-01-10 2021-04-27 Boston Scient Neuromodulation Corp Sistemas y procedimientos para crear programas de estimulación en base a áreas o volúmenes definidos por el usuario
US11059229B2 (en) * 2017-01-27 2021-07-13 Hewlett-Packard Development Company, L.P. Rules for printing three-dimensional parts
US10872178B2 (en) 2017-01-29 2020-12-22 Hewlett-Packard Development Company, L.P. Processing 3D objects
US10325413B2 (en) * 2017-02-28 2019-06-18 United Technologies Corporation Generating smooth optimized parts
US10625082B2 (en) 2017-03-15 2020-04-21 Boston Scientific Neuromodulation Corporation Visualization of deep brain stimulation efficacy
US11357986B2 (en) 2017-04-03 2022-06-14 Boston Scientific Neuromodulation Corporation Systems and methods for estimating a volume of activation using a compressed database of threshold values
US10962958B2 (en) 2017-06-05 2021-03-30 Raytheon Technologies Corporation Library of predefined shapes for additive manufacturing processes
US10380175B2 (en) * 2017-06-06 2019-08-13 International Business Machines Corporation Sketch-based image retrieval using feedback and hierarchies
AU2018301355B2 (en) 2017-07-14 2020-10-01 Boston Scientific Neuromodulation Corporation Systems and methods for estimating clinical effects of electrical stimulation
US10960214B2 (en) 2017-08-15 2021-03-30 Boston Scientific Neuromodulation Corporation Systems and methods for controlling electrical stimulation using multiple stimulation fields
US10956510B2 (en) * 2017-10-05 2021-03-23 International Business Machines Corporation Generate a knowledge graph using a search index
JP2019075062A (ja) * 2017-10-12 2019-05-16 株式会社エプコ 設計支援装置および設計支援方法
JP7250784B2 (ja) * 2017-10-16 2023-04-03 モビディウス リミテッド ボリュームデータの密度座標ハッシュ化
EP3483755B1 (en) 2017-11-09 2022-07-13 Dassault Systèmes Additive manufacturing of a 3d part
US11074486B2 (en) 2017-11-27 2021-07-27 International Business Machines Corporation Query analysis using deep neural net classification
CN108021683B (zh) * 2017-12-11 2021-06-22 首都航天机械公司 一种基于三维标注的相似模型检索实现方法
US11281824B2 (en) 2017-12-13 2022-03-22 Dassault Systemes Simulia Corp. Authoring loading and boundary conditions for simulation scenarios
PL423917A1 (pl) 2017-12-15 2019-06-17 General Electric Company Wskaźnik do kwalifikowania stanu łopatki turbiny
US10628703B2 (en) 2017-12-19 2020-04-21 International Business Machines Corporation Identifying temporal changes of industrial objects by matching images
US10902053B2 (en) * 2017-12-21 2021-01-26 Adobe Inc. Shape-based graphics search
US20190251744A1 (en) * 2018-02-12 2019-08-15 Express Search, Inc. System and method for searching 3d models using 2d images
KR102580012B1 (ko) * 2018-02-16 2023-09-18 코벤터, 인크. 충진 분율 복셀 데이터 (fill-fraction voxel data) 로부터 복수 재료 메시 생성을 위한 시스템 및 방법
KR102468979B1 (ko) * 2018-03-05 2022-11-18 케이엘에이 코포레이션 3차원 반도체 구조의 시각화
US10794839B2 (en) 2019-02-22 2020-10-06 Kla Corporation Visualization of three-dimensional semiconductor structures
CN110309332A (zh) * 2018-03-09 2019-10-08 中国空空导弹研究院 一种融合工程语义的cad模型局部结构检索方法
CN108717424B (zh) * 2018-04-25 2021-06-11 鹰霆(天津)科技有限公司 一种基于分解式图匹配的三维模型检索方法
AU2019260740B2 (en) 2018-04-27 2022-05-19 Boston Scientific Neuromodulation Corporation Multi-mode electrical stimulation systems and methods of making and using
EP3784332B1 (en) 2018-04-27 2023-04-26 Boston Scientific Neuromodulation Corporation Systems for visualizing and programming electrical stimulation
US11657297B2 (en) * 2018-04-30 2023-05-23 Bank Of America Corporation Computer architecture for communications in a cloud-based correlithm object processing system
US10789288B1 (en) * 2018-05-17 2020-09-29 Shutterstock, Inc. Relational model based natural language querying to identify object relationships in scene
US11537719B2 (en) 2018-05-18 2022-12-27 Deepmind Technologies Limited Deep neural network system for similarity-based graph representations
US10520923B2 (en) * 2018-05-22 2019-12-31 Mantle Inc. Method and system for automated toolpath generation
CN109272013B (zh) * 2018-08-03 2021-09-14 天津大学 基于学习的相似性度量方法
EP3614281A1 (en) * 2018-08-20 2020-02-26 Bricsys NV Improved geometry-based detail propagation in cad models
CN110880006B (zh) * 2018-09-05 2024-05-14 广州视源电子科技股份有限公司 用户分类方法、装置、计算机设备和存储介质
WO2020056388A1 (en) * 2018-09-13 2020-03-19 Board Of Regents Of The University Of Nebraska Simulating heat flux in additive manufacturing
EP3623968A1 (en) * 2018-09-17 2020-03-18 Bricsys NV Automated block generation in cad
EP3637319B1 (en) * 2018-10-11 2022-05-25 Honda Research Institute Europe GmbH Method for generating shape descriptors for two- or three-dimensional geometric shapes
US10957117B2 (en) * 2018-10-15 2021-03-23 Adobe Inc. Intuitive editing of three-dimensional models
EP3886031A4 (en) * 2018-11-21 2022-06-29 Il Inc. Product customizing method via terminal
CN109726442B (zh) * 2018-12-05 2022-03-15 电子科技大学 一种基于acis平台的三维实体模型重构方法
US11429756B2 (en) * 2018-12-24 2022-08-30 Dassault Systemes Solidworks Corporation CAD models by creating best-fit approximate 3D B-rep geometry
EP3675063A1 (en) * 2018-12-29 2020-07-01 Dassault Systèmes Forming a dataset for inference of solid cad features
EP3675062A1 (en) 2018-12-29 2020-07-01 Dassault Systèmes Learning a neural network for inference of solid cad features
US11494377B2 (en) * 2019-04-01 2022-11-08 Nec Corporation Multi-detector probabilistic reasoning for natural language queries
WO2020219053A1 (en) * 2019-04-25 2020-10-29 Hewlett-Packard Development Company, L.P. Compensating for dimensional variation in 3d printing
EP3983913A4 (en) * 2019-06-13 2022-08-10 Caja Elastic Dynamic Solutions Ltd. METHODS AND SYSTEMS FOR PATHWAY PLANNING IN A KNOWN ENVIRONMENT
US11546721B2 (en) 2019-06-18 2023-01-03 The Calany Holding S.À.R.L. Location-based application activation
CN112102498A (zh) * 2019-06-18 2020-12-18 明日基金知识产权控股有限公司 用于将应用虚拟地附接到动态对象并实现与动态对象的交互的系统和方法
US11516296B2 (en) 2019-06-18 2022-11-29 THE CALANY Holding S.ÀR.L Location-based application stream activation
US11341727B2 (en) 2019-06-18 2022-05-24 The Calany Holding S. À R.L. Location-based platform for multiple 3D engines for delivering location-based 3D content to a user
US11204968B2 (en) 2019-06-21 2021-12-21 Microsoft Technology Licensing, Llc Embedding layer in neural network for ranking candidates
US11397742B2 (en) * 2019-06-21 2022-07-26 Microsoft Technology Licensing, Llc Rescaling layer in neural network
US11386667B2 (en) 2019-08-06 2022-07-12 Cisco Technology, Inc. Video analysis using a deep fusion reasoning engine (DFRE)
CN110807797B (zh) * 2019-10-22 2022-03-22 中国测绘科学研究院 顾及全局寻优的多源异构面实体与点实体的匹配方法及其存储介质
US11615542B2 (en) * 2019-11-14 2023-03-28 Panasonic Avionics Corporation Automatic perspective correction for in-flight entertainment (IFE) monitors
CN111079208B (zh) * 2019-11-20 2024-01-23 杭州电子科技大学 基于粒子群算法的cad模型之间面对应关系识别方法
CN114730459B (zh) * 2019-11-28 2024-02-13 三菱电机株式会社 工件图像检索装置及工件图像检索方法
US11429662B2 (en) * 2019-12-20 2022-08-30 SWATCHBOOK, Inc. Material search system for visual, structural, and semantic search using machine learning
US11182980B1 (en) 2020-03-26 2021-11-23 Apple Inc. Procedural generation of computer objects
US11199940B1 (en) * 2020-04-21 2021-12-14 Corel Corporation Three-dimensional operations based on planar projections in graphic user interfaces
JP7143368B2 (ja) * 2020-05-26 2022-09-28 株式会社ミスミ 見積システム、見積方法、及び見積プログラム
JP6975370B1 (ja) * 2020-06-12 2021-12-01 3D Nest株式会社 画像表示方法、プログラム及びデータ生成方法
CN111709252B (zh) * 2020-06-17 2023-03-28 北京百度网讯科技有限公司 基于预训练的语义模型的模型改进方法及装置
US11308693B2 (en) * 2020-06-26 2022-04-19 Lucasfilm Entertainment Company Ltd. Smart edge loop selection
CN115702400B (zh) * 2020-06-30 2023-11-24 三菱电机株式会社 加工程序检索装置及加工程序检索方法
US20220075833A1 (en) * 2020-09-09 2022-03-10 Royal Bank Of Canada Web services for data aggregation and application for path traversal in knowledge graphs
CN112149691B (zh) * 2020-10-10 2021-10-15 北京鹰瞳科技发展股份有限公司 用于双目视觉匹配的神经网络搜索方法及设备
JP2022075139A (ja) * 2020-11-06 2022-05-18 富士通株式会社 形状データ出力プログラム、形状データ出力方法および情報処理装置
US11947491B2 (en) 2020-12-22 2024-04-02 Paperless Parts, Inc. Apparatus and methods for geometric searching
JP7353330B2 (ja) 2021-07-16 2023-09-29 ヤフー株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
WO2023095956A1 (ko) * 2021-11-26 2023-06-01 삼인이엔에스 주식회사 3차원 모델의 형상 관계 정보 검색 및 제공 방법, 장치 및 시스템
US20230177224A1 (en) * 2021-12-07 2023-06-08 Autodesk, Inc. Computer aided generative design with feature thickness control to facilitate manufacturing and structural performance

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2813722B2 (ja) * 1991-02-01 1998-10-22 日本電信電話株式会社 スケッチによる画像検索方式
US5760778A (en) * 1995-08-15 1998-06-02 Friedman; Glenn M. Algorithm for representation of objects to enable robotic recongnition
CA2248909A1 (en) * 1996-03-15 1997-09-25 Zapa Digital Arts Ltd. System for producing an animation sequence according to character behaviour characteristics
US6133921A (en) * 1996-05-24 2000-10-17 University Of Washington Constructing shape skeletons of 3D objects using generalized Voronoi diagrams
US6026409A (en) * 1996-09-26 2000-02-15 Blumenthal; Joshua O. System and method for search and retrieval of digital information by making and scaled viewing
US6070176A (en) * 1997-01-30 2000-05-30 Intel Corporation Method and apparatus for graphically representing portions of the world wide web
US6631364B1 (en) * 1997-03-26 2003-10-07 National Research Council Of Canada Method of searching 3-Dimensional images
US6016487A (en) * 1997-03-26 2000-01-18 National Research Council Of Canada Method of searching three-dimensional images
US6148095A (en) * 1997-09-08 2000-11-14 University Of Iowa Research Foundation Apparatus and method for determining three-dimensional representations of tortuous vessels
US6381346B1 (en) * 1997-12-01 2002-04-30 Wheeling Jesuit University Three-dimensional face identification system
JPH11232291A (ja) * 1998-02-16 1999-08-27 Seibutsu Bunshi Kogaku Kenkyusho:Kk 蛋白質立体構造データベース検索方法
US6574632B2 (en) * 1998-11-18 2003-06-03 Harris Corporation Multiple engine information retrieval and visualization system
US6347313B1 (en) * 1999-03-01 2002-02-12 Hewlett-Packard Company Information embedding based on user relevance feedback for object retrieval
GB2375212B (en) 1999-04-29 2003-06-11 Mitsubishi Electric Inf Tech Method and apparatus for searching for an object using shape
KR100605050B1 (ko) * 1999-09-08 2006-07-26 주식회사 팬택앤큐리텔 인간의 3차원 자세 검색방법 및 장치
US6549201B1 (en) * 1999-11-23 2003-04-15 Center For Advanced Science And Technology Incubation, Ltd. Method for constructing a 3D polygonal surface from a 2D silhouette by using computer, apparatus thereof and storage medium
US6807290B2 (en) * 2000-03-09 2004-10-19 Microsoft Corporation Rapid computer modeling of faces for animation
AU2001251539A1 (en) * 2000-04-11 2001-10-23 Cornell Research Foundation Inc. System and method for three-dimensional image rendering and analysis
JP2001338294A (ja) * 2000-05-24 2001-12-07 Monolith Co Ltd トポロジーに注目する形状解析器
US6879322B2 (en) * 2000-05-30 2005-04-12 Fujitsu Limited Three-dimensional object display system, three-dimensional object display method and recording medium recording a three-dimensional object display program
US7353188B2 (en) * 2000-06-30 2008-04-01 Lg Electronics Product selling system and method for operating the same
US7039630B2 (en) * 2000-07-27 2006-05-02 Nec Corporation Information search/presentation system
WO2002025588A2 (en) * 2000-09-21 2002-03-28 Md Online Inc. Medical image processing systems
US7099860B1 (en) * 2000-10-30 2006-08-29 Microsoft Corporation Image retrieval systems and methods with semantic and feature based relevance feedback
KR100516289B1 (ko) 2000-11-02 2005-09-21 주식회사 케이티 퍼지 적분을 이용하여 사용자 의견을 반영한 내용기반영상 검색 장치 및 그 방법
EP1425718B1 (en) * 2001-08-31 2011-01-12 Dassault Systemes SolidWorks Corporation Simultaneous use of 2d and 3d modeling data
US6816629B2 (en) * 2001-09-07 2004-11-09 Realty Mapping Llc Method and system for 3-D content creation
US6825838B2 (en) * 2002-10-11 2004-11-30 Sonocine, Inc. 3D modeling system
US8429174B2 (en) 2003-01-25 2013-04-23 Purdue Research Foundation Methods, systems, and data structures for performing searches on three dimensional objects

Also Published As

Publication number Publication date
EP1586020A2 (en) 2005-10-19
WO2004068300A2 (en) 2004-08-12
US20130311450A1 (en) 2013-11-21
US20040249809A1 (en) 2004-12-09
JP2006520948A (ja) 2006-09-14
WO2004068300A3 (en) 2005-09-22
US8429174B2 (en) 2013-04-23
US9348877B2 (en) 2016-05-24

Similar Documents

Publication Publication Date Title
JP4516957B2 (ja) 3次元オブジェクトについて検索を行なうための方法、システムおよびデータ構造
US11507099B2 (en) Systems and methods for graph-based AI training
EP3179407B1 (en) Recognition of a 3d modeled object from a 2d image
Theologou et al. A comprehensive overview of methodologies and performance evaluation frameworks in 3D mesh segmentation
Poux The smart point cloud: Structuring 3D intelligent point data
Poux et al. Model for Semantically Rich Point Cloud Data
Poux et al. A smart point cloud infrastructure for intelligent environments
US20220189070A1 (en) Machine-learning for 3d object detection
Fonseca et al. Content-based retrieval of technical drawings
Gao et al. Multiresolutional similarity assessment and retrieval of solid models based on DBMS
Hu et al. Curve skeleton extraction from 3D point clouds through hybrid feature point shifting and clustering
JP7017852B2 (ja) 記述子を用いた3dオブジェクトの位置特定
Malott et al. Fast computation of persistent homology with data reduction and data partitioning
US20100185672A1 (en) Techniques for spatial representation of data and browsing based on similarity
JP4166678B2 (ja) 知覚的に認識可能な3次元形状の記述方法と、それを利用した3次元グラフィックモデルのデータベース検索方法及び装置
JP6947503B2 (ja) 量子化を用いた3dオブジェクトの位置特定
Mohan et al. Room layout estimation in indoor environment: a review
Wang Research on shape feature recognition of B-rep model based on wavelet transform
Biasotti et al. 3D object comparison based on shape descriptors
Ochmann Automatic reconstruction of parametric, volumetric building models from 3D point clouds
Jung et al. A Transfer Function Design Using A Knowledge Database based on Deep Image and Primitive Intensity Profile Features Retrieval
G Sneltvedt Online Panoptic Mapping of Indoor Environments: A complete panoptic mapping framework
Leimer et al. Relation-based parametrization and exploration of shape collections
Hachani Reeb Graph Modeling of 3-D Animated Meshes and its Applications to Shape Recognition and Dynamic Compression
Gebremeskel et al. The Integral of Spatial Data Mining in the Era of Big Data: Algorithms and Applications

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090831

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100330

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: 20100427

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100517

R150 Certificate of patent or registration of utility model

Ref document number: 4516957

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130521

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term