(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022113025
(43)【公開日】2022-08-03
(54)【発明の名称】3次元CADモデル部分検索方法
(51)【国際特許分類】
G06F 30/10 20200101AFI20220727BHJP
G06F 16/245 20190101ALI20220727BHJP
【FI】
G06F17/50 614B
G06F16/245
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2021009110
(22)【出願日】2021-01-22
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り 令和2年2月14日オンライン公開、第12回データ工学と情報マネジメントに関するフォーラム予稿集論文 令和2年3月4日発表、第12回データ工学と情報マネジメントに関するフォーラム(オンライン開催)にて発表
(71)【出願人】
【識別番号】305027401
【氏名又は名称】東京都公立大学法人
(74)【代理人】
【識別番号】100165179
【弁理士】
【氏名又は名称】田▲崎▼ 聡
(74)【代理人】
【識別番号】100175824
【弁理士】
【氏名又は名称】小林 淳一
(74)【代理人】
【識別番号】100152272
【弁理士】
【氏名又は名称】川越 雄一郎
(74)【代理人】
【識別番号】100181722
【弁理士】
【氏名又は名称】春田 洋孝
(72)【発明者】
【氏名】片山 薫
【テーマコード(参考)】
5B046
5B146
5B175
【Fターム(参考)】
5B046DA08
5B046FA16
5B046KA05
5B146DL04
5B146DL08
5B175DA10
5B175HB03
(57)【要約】
【課題】迅速かつ部品の形状とレイアウトの両方を考慮した検索を行うことができる3次元CADモデル部分検索方法の提供を目的の一つとする。
【解決手段】検索対象である検索モデルの特徴量を算出する第1の算出ステップと、データベース中に保存された被検索対象の比較モデルの特徴量を算出する第2の算出ステップと、検索モデルおよび比較モデルの特徴量を比較し、検索モデルおよび比較モデルの相違度を算出する比較ステップと、を有し、検索モデルおよび比較モデルは、それぞれ複数のサブアセンブリモデルから構成され、第1の算出ステップおよび第2の算出ステップでは、構成する全てのサブアセンブリモデルに対して、サブアセンブリモデルと、当該サブアセンブリモデルを除いたアセンブリモデルと、がそれぞれ3次元ラドン変換され、変換された値から前記特徴量が導かれる、3次元CADモデル部分検索方法。
【選択図】
図5
【特許請求の範囲】
【請求項1】
検索モデルを、データベース中に保存された比較モデルと比較し相違度を評価する3次元CADモデル部分検索方法であり、
前記検索モデルおよび前記比較モデルは、複数のサブアセンブリモデルから構成されるアセンブリモデルの3次元CADデータであり、
前記検索モデルの特徴量を算出する第1の算出ステップと、
前記比較モデルの特徴量を算出する第2の算出ステップと、
前記検索モデルおよび前記比較モデルの前記特徴量を比較し、前記検索モデルおよび前記比較モデルの相違度を算出する比較ステップと、を有し、
前記第1の算出ステップおよび前記第2の算出ステップでは、前記検索モデルおよび前記比較モデルを構成する全てのサブアセンブリモデルに対して、サブアセンブリモデルと、当該サブアセンブリモデルを除いたアセンブリモデルと、がそれぞれ3次元ラドン変換され、変換された値から前記特徴量が導かれる、
3次元CADモデル部分検索方法。
【請求項2】
前記第1の算出ステップおよび前記第2の算出ステップにおいて、複数の方向から3次元ラドン変換を行う、
請求項1に記載の3次元CADモデル部分検索方法。
【請求項3】
前記比較ステップは、
前記方向を固定して、前記検索モデルと前記比較モデルとの、全てのサブアセンブリモデル同士の組み合わせに対して、前記特徴量の差分の総和を特定組み合わせ相違度として算出する方向固定第1ステップと、
前記方向固定第1ステップにおいて算出した特定組み合わせ相違度が最小となるサブアセンブリモデルの組み合わせを導き、このときの特定組み合わせ相違度を、前記方向に対する特定方向相違度とする方向固定第2ステップと、
さらに、全ての方向に対して、前記方向固定第1ステップおよび前記方向固定第2ステップを行い、前記特定方向相違度が最小となる前記方向を導き、このときの前記特定方向相違度から前記検索モデルと前記比較モデルとの前記相違度を導く決定ステップと、を有する、
請求項2に記載の3次元CADモデル部分検索方法。
【請求項4】
前記決定ステップにおいて、前記特定方向相違度が最小となる前記方向を導き、このときの前記特定方向相違度を前記比較モデルのサブアセンブリの数で割ることで前記相違度を導く、
請求項3に記載の3次元CADモデル部分検索方法。
【請求項5】
前記第1の算出ステップおよび前記第2の算出ステップにおいて、
サブアセンブリモデルおよび当該サブアセンブリモデルを除いたアセンブリモデルの前記特徴量は、それぞれ含まれるすべての部品を個別に3次元ラドン変換して当該部品の体積の近似値で割った値の総和である、
請求項4に記載の3次元CADモデル部分検索方法。
【請求項6】
前記方向固定第1ステップにおいて、前記検索モデルおよび前記比較モデルについて、比較するサブアセンブリモデル同士の特徴量の差分と、当該比較するサブアセンブリモデルを除いたアセンブリモデル同士の特徴量の差分と、の和を基に前記特定組み合わせ相違度を算出する、
請求項5に記載の3次元CADモデル部分検索方法。
【請求項7】
前記方向固定第1ステップにおいて、前記和を、さらに、前記比較モデルの比較するサブアセンブリモデルの部品数で割ったもので前記特定組み合わせ相違度を算出する、
請求項6に記載の3次元CADモデル部分検索方法。
【請求項8】
前記比較ステップにおいて、比較する前記特徴量同士を相対的に平行移動させて、前記特徴量の差分の総和が最小となる値を求める、
請求項1~7の何れか一項に記載の3次元CADモデル部分検索方法。
【請求項9】
前記データベースには、被検索対象の複数の前記比較モデルが記憶され、
前記検索モデルを、複数の前記比較モデルと順に比較し前記相違度が最も小さいものを導出する、
請求項1~8の何れか一項に記載の3次元CADモデル部分検索方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、3次元CADモデル部分検索方法に関する。
【背景技術】
【0002】
近年、製造業などでは、3次元コンピュータ設計ツール(CAD:Computer-Aided Design)を用いたモデル設計が行われている。設計業務の効率化を進めるためには、蓄積された3次元モデルデータの活用が必要不可欠である。そのため、3次元モデルデータの検索、クラスタリング、分類、検出など様々な技術の研究開発が行われている。
【0003】
3次元モデルデータ活用の技術について共通して必要となるものの一つに、モデル間の類似度計算がある。また、モデル間の類似度計算の研究として、モデル同士の検索技術の研究が多く行われている。これまで、3次元モデルの検索技術に関する研究は盛んに行われているものの、そのほとんどはモデルの形状の情報のみを考慮した検索技術となっており、部品のレイアウトを厳密に比較できる検索技術は見られない。
【0004】
機械設計などで作られる3次元モデルは、複数の部品を組み合わせたアセンブリモデルであることが多い。特に自動車などの複雑で大型な機械の設計では、複数の階層に渡って部品が組み合わさって構成されており、膨大な数の部品を含んだ巨大なモデルが作られている。このような、複数の部品を組み合わせたモデルをアセンブリモデルと呼び、各階層でのまとまりをサブアセンブリモデルという。3次元CADモデルの最小単位を部品として、サブアセンブリモデルは部品の集合であり、アセンブリモデルはサブアセンブリモデルの集合である。アセンブリモデルに対しては、その複雑さのために部分検索技術の活用が困難であった。
【0005】
このようなサブアセンブリモデルの検索を行う検索方法として、特許文献1には、3次元CADデータを構成する構成要素ごとに検索を行い、かかる構成要素から完成品である3次元CADデータにアクセスする3次元CADモデル検索方法が提案されている。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、従来提案されている検索方法では、3次元CADデータの投影画像に2次元ラドン変換を施し、得られたサイノグラムの性質を利用し比較を行うことで部分検索を実現しているため、3次元データから算出された特徴量のデータ量が大きくなり未だ迅速な検索の点では不十分であるという問題があった。
【0008】
本発明は、迅速かつ正確性の高い検索を行うことができる3次元CADモデル部分検索方法の提供を目的の一つとする。
【課題を解決するための手段】
【0009】
本発明に係る3次元CADモデル部分検索方法は、検索モデルを、データベース中に保存された比較モデルと比較し相違度を評価する3次元CADモデル部分検索方法であり、前記検索モデルおよび前記比較モデルは、複数のサブアセンブリモデルから構成されるアセンブリモデルの3次元CADデータであり、前記検索モデルの特徴量を算出する第1の算出ステップと、前記比較モデルの特徴量を算出する第2の算出ステップと、前記検索モデルおよび前記比較モデルの特徴量を比較し、前記検索モデルおよび前記比較モデルの相違度を算出する比較ステップと、を有し、前記第1の算出ステップおよび前記第2の算出ステップでは、前記検索モデルおよび前記比較モデルを構成する全てのサブアセンブリモデルに対して、サブアセンブリモデルと、当該サブアセンブリモデルを除いたアセンブリモデルと、がそれぞれ3次元ラドン変換され、変換された値から前記特徴量が導かれる。
【発明の効果】
【0010】
本発明によれば、迅速かつ正確性の高い検索を行うことができる3次元CADモデル部分検索方法を提供できる。
【図面の簡単な説明】
【0011】
【
図1】
図1は、検索モデルの一例として示すアセンブリモデルの透視図である。
【
図2】
図2は、比較モデルの一例として示すアセンブリモデルの透視図である。
【
図3】
図3は、比較モデルの一例として示すアセンブリモデルの透視図である。
【
図4】
図4は、本実施形態の3次元CADモデル部分検索方法の一例を示す模式図であり、主に比較ステップを表す。
【
図5】
図5は、本実施形態の3次元CADモデル部分検索方法の一例を示す模式図であり、主に比較ステップの方向固定第1ステップを表す。
【発明を実施するための形態】
【0012】
本実施形態の3次元CADモデル部分検索方法(以下、単に部分検索方法)において対象となる3次元CADデータ(以下、単にCADデータ)は、複数のサブアセンブリモデルを含むアセンブリモデルである。
【0013】
本実施形態の部分検索方法は、検索モデルを、データベース中に保存された比較モデルと比較し相違度を評価する方法である。なお、本実施形態の部分検索方法は、検索モデルが比較モデルの一部を含む場合であっても、比較モデルが検索モデルの一部を含む場合であっても、何れにおいても対応可能である。本実施形態では、データベースに保存された複数の比較モデルの中から、検索モデルに含まれるものを見つけ出す場合について説明する。
【0014】
なお、検索モデルおよび比較モデルは、複数のサブアセンブリモデルから構成されるアセンブリモデルの3次元CADデータである。
また、相違度とは、比較モデルが検索モデルにどの程度含まれていないか(検索モデルと比較モデルとが概念的にどれほど離間しているか)を表す指標である。相違度は、0又は0以上の正の値をとる。検索モデルが比較モデルを含んでいれば、相違度は0になる。したがって、相違度の値が小さくなればなるほど、比較モデルが検索モデルに含まれる程度が高いことを意味する。
【0015】
本明細書において、アセンブリモデルとは、複数のサブアセンブリモデルを組み合わせて構成される3次元モデルである。また、本明細書において、サブアセンブリモデルとは、アセンブリモデルの一部を構成する3次元モデルである。したがって、アセンブリモデルは、複数の異なる又は同一のサブアセンブリモデルを有する。サブアセンブリモデルは、複数の部品を組み合わせて構成される3次元モデルである。また、サブアセンブリモデルは、単一の部品のみを有する3次元モデルであってもよい。
【0016】
<例示的な説明>
図1~
図3を基に、本実施形態の部分検索方法について例示的に説明する。ここでの説明はあくまで、部分検索方法の概念を例示的に説明するものであり、厳密な意味において後述する実施形態の部分検索方法とは手法が異なる。
【0017】
図1~
図3は、それぞれ第1~第3のアセンブリモデル11、12、13の透視図である。
図1~
図3において、それぞれのアセンブリモデルに含まれるサブアセンブリモデルは、模様分けされている。
【0018】
図1に示す第1のアセンブリモデル11は、ベース部10と、第1のサブアセンブリモデル21と、第2のサブアセンブリモデル22と、第3のサブアセンブリモデル23と、第4のサブアセンブリモデル24と、を有する。
図2に示す第2のアセンブリモデル12は、ベース部10と、第1のサブアセンブリモデル21と、第2のサブアセンブリモデル22と、第5のサブアセンブリモデル25と、を有する。
図3に示す第3のアセンブリモデル13は、ベース部10と、第1のサブアセンブリモデル21と、第5のサブアセンブリモデル25と、第6のサブアセンブリモデル26と、を有する。
なお、ベース部10も、サブアセンブリモデルの1つとみなされる。
【0019】
ここでは、第1のアセンブリモデル11に対する第2および第3のアセンブリモデル12、13の相違度の判定について検討する。すなわち、この例では、第1のアセンブリモデル11が、検索モデルにあたり、第2および第3のアセンブリモデル12、13が比較モデルにあたる。
【0020】
第2のアセンブリモデル12は、第1のアセンブリモデル11が有さない第5のサブアセンブリモデル25を有する。また、第3のアセンブリモデル13は、第1のアセンブリモデル11が有さない第5のサブアセンブリモデル25および第6のサブアセンブリモデル26を有する。
【0021】
第2および第3のアセンブリモデル12、13に含まれる第5のサブアセンブリモデル25は、第1のアセンブリモデル11に含まれる第3のサブアセンブリモデル23の一部である。一方で、第3のアセンブリモデル13に含まれる第6のサブアセンブリモデル26は、第1のアセンブリモデル11に含まれるサブアセンブリモデル22と同じ部品から構成されるが、第1のアセンブリモデル11とは他のサブアセンブリモデルとの位置関係が異なる。
【0022】
第1のアセンブリモデル11と第2および第3のアセンブリモデル12、13とを比較した結果、第2のアセンブリモデル12に含まれる部品は全て、第1のアセンブリモデル11に同じ配置で含まれている。それに対して、第3のアセンブリモデル13に含まれる部品は全て、第1のアセンブリモデル11に含まれるものの、第6のサブアセンブリモデル26の配置が、第1のアセンブリモデル11に含まれる第2のサブアセンブリモデル22とは異なる。そこで、このような例の場合、第1のアセンブリモデル11と類似性が高い(すなわち相違度が低い)のは、第2のアセンブリモデル12であると判定される。このように、本実施形態の部分検索方法は、サブアセンブリモデルの配置を考慮したものである。
【0023】
ここで例示した第1~第3のアセンブリモデル11、12、13は、姿勢が互いにそろっている。しかしながら、実際に作成さているアセンブリモデルのデータは、基準となる方向がモデル毎に互いに異なっている場合がある。このため、部分検索方法では、アセンブリモデル間で、相対的な姿勢を変えた場合のそれぞれの相対的な位置関係を考慮する必要がある。
【0024】
<実施形態>
以下、実施形態について説明する。
本実施形態では、検索対象のアセンブリモデルを検索モデルと呼ぶ。また、データベース中に保存された被検索対象のアセンブリモデルを比較モデルと呼ぶ。
【0025】
本実施形態の部分検索方法は、第1の算出ステップと、第2の算出ステップと、比較ステップと、出力ステップと、を有する。なお、第1の算出ステップと第2の算出ステップの順序は、逆であってもよい。また、比較ステップは、第1および第2の算出ステップで得た値(特徴量)を用いるため、第1および第2の算出ステップの後に行う。
【0026】
第1の算出ステップと第2の算出ステップとは、主に同様の手順で行われるが、算出対象となるCADデータが異なる。第1の算出ステップは、検索対象である検索モデルから特徴量を算出するステップである。一方で、第2の算出ステップは、データベース中に保存された比較モデルの特徴量をそれぞれ算出するステップである。
【0027】
本実施形態の部分検索方法のアルゴリズムをメインアルゴリズムとして表1に示す。
【0028】
【0029】
ここで、メインアルゴリズムおよび以降で用いる記号を定義する。
Mcompは、検索モデルを表す。
Mpartは、比較モデルを表す。
検索モデルMcompおよび比較モデルMpartはサブアセンブリモデルsaの集合である。
VcompおよびVpartは、それぞれ3次元ラドン変換を行う方向の集合である。VcompおよびVpartの要素vは空間極座標で方向を表す2次元ベクトルである。より具体的には、単位球面上に一様に分布する点で方向を指定する。
【0030】
本実施形態において、第1の算出ステップにおける3次元ラドン変換を行う方向の数(Vcompに含まれる要素数)は、第2の算出ステップにおける3次元ラドン変換を行う方向の数(Vpartに含まれる要素数)より少ない。一般的に、検索モデルから特徴量を算出するステップ(第1の算出ステップ)は、オンラインで実行され、比較モデルから特徴量を算出するステップ(第2の算出ステップ)は、同一サーバー内で予め実行され記憶される。第1の算出ステップにおける3次元ラドン変換を行う方向の数を抑制することで、オンラインで行う特徴量の算出を高速に行うとともに、第2の算出ステップにおける3次元ラドン変換を行う方向の数を増加させることで、検索結果の正確性を担保できる。
【0031】
メインアルゴリズムは、以下に示す3つのステップを経て検索モデルと比較モデルとの間の相違度計算を行う。
(1)第1の算出ステップ
(2)第2の算出ステップ
(3)比較ステップ
以下、それぞれのステップについてより具体的に説明する。
【0032】
<第1および第2の算出ステップ>
第1の算出ステップでは、検索対象である検索モデルを複数の方向から3次元ラドン変換することで特徴量が算出される。同様に、第2の算出ステップでは、被検索対象の比較モデルを複数の方向から3次元ラドン変換することで特徴量が算出される。
【0033】
検索モデルMcompと比較モデルMpartが与えられたとき、2つのアセンブリモデル(検索モデルおよび比較モデル)間のサブアセンブリモデルの対応は一般的に未知である。また、2つのアセンブリモデルの位置や向きの関係も未知である。よって本実施形態の部分検索方法では、すべてのサブアセンブリモデル同士の組み合わせ、すべて方向の組み合わせで比較をし、その中でアセンブリモデル間の相違度が最小となるような組み合わせを選択する。
【0034】
ここで、3次元ラドン変換のアルゴリズムを第1のサブアルゴリズムとして、表2に示す。第1のサブアルゴリズムは、第1および第2の算出ステップの一部であり、3次元ラドン変換を導出するアルゴリズムである。第1のサブアルゴリズムは、表1に示すメインアルゴリズムにおいて、Radon3Dと表現されたアルゴリズムである。
【0035】
【0036】
第1のサブアルゴリズムにおいて、方向v∈Vに沿って3次元ラドン変換を行うとき、まずはvがx軸正の方向になるようモデルの回転を行う。
第1のサブアルゴリズムでは、2行目の関数sa´=Rotate(sa,v)において、回転前のサブアセンブリモデルsaにおけるvがsa′のx軸正の方向となるよう回転する。
【0037】
次にx軸正の方向に沿って、x軸に垂直な面でのモデルの断面積を計算する。第1のサブアルゴリズムの4行目の関数calculateCrossSectionArea(sa′,x)は、モデルsa′のx軸方向の値がxであるところでの断面積を求める関数である。ここでxは指定されたサンプリング間隔ごとに変化し、モデルの存在する区間を走査する。
【0038】
実際の3次元CADモデルは、様々なデータ形式で保存される。標準的な形状の記述形式にSTL(Standard Triangulated Language)データ形式がある。STLファイル形式は、3次元立体の表面を小さな三角形の面の集合で表すポリゴン形式である。STLデータ形式は、全ての主要な3次元データ形式から変換可能な形式である。このような形式において、幾何学的な計算から断面積が計算できる。こうして得られる特徴量featureは、非負の値を持つ、(方向の個数)×(サンプリング数)の二次実数配列である。
【0039】
第1の算出ステップにおいて、第1のサブアルゴリズムを実行することで、比較モデルMpartの特徴量Fpartが算出される。第1の算出ステップにおいて、第1のサブアルゴリズムを実行することで、検索モデルMcompの特徴量Fcompが算出される。
【0040】
本実施形態によれば、第1の算出ステップおよび第2の算出ステップにおいて、3次元CADモデルを3次元ラドン変換することで特徴量が算出される。3次元ラドン変換は、原点に対する方向(球面上の座標)および原点からの距離における3次元CADモデルの断面積を算出する計算方法である。このため、3次元ラドン変換によって得られる特徴量は、原点に対する方向および距離に紐づけられたスカラー値となり、特許文献1に開示される検索方法と比較して、データ量を小さくすることができる。結果的に、第1の算出ステップおよび第2の算出ステップにおける特徴量の算出時間、並びに、後述する比較ステップにおける計算時間を大幅に短縮することができる。加えて、計算時間が短縮されることから、サンプル数を増加させやすくなり、相違度の評価の正確性を高めることができる。
【0041】
本実施形態によれば、第1の算出ステップおよび第2の算出ステップにおいて、複数の方向から断面積を計算する。このため、互いに姿勢が異なる検索モデルと比較モデルとの比較においても、有効に差分を評価できる特徴量が算出される。
【0042】
本実施形態の第1および第2の算出ステップでは、アセンブリモデルに含まれるサブアセンブリモデルの相対的な位置関係を特徴量として算出することが求められる。そこで、本発明者らは、比較するサブアセンブリモデルと、当該サブアセンブリモデルを除くアセンブリモデルとを、それぞれ3次元ラドン変換して得た値を組み合わせて特徴量として扱うことを想到した。
【0043】
本実施形態によれば、第1の算出ステップおよび第2の算出ステップにおいて、構成する全てのサブアセンブリモデルに対し、サブアセンブリモデルと、当該サブアセンブリモデルを除いたアセンブリモデルと、がそれぞれ3次元ラドン変換され、変換された値が特徴量とされる。
すなわち、第1の算出ステップで導かれる特徴量fcompは、サブアセンブリモデルsaの3次元ラドン変換の結果(fcomp,sa)と、当該サブアセンブリモデルsaを除いたアセンブリモデルの3次元ラドン変換の結果(fcomp,others)と、からなる。
同様に、第2の算出ステップで導かれる特徴量fpartは、サブアセンブリモデルsaの3次元ラドン変換の結果(fpart,sa)と、当該サブアセンブリモデルsaを除いたアセンブリモデルの3次元ラドン変換の結果(fpart,others)と、からなる。
【0044】
第1の算出ステップおよび第2の算出ステップにおいて、サブアセンブリモデルおよび当該サブアセンブリモデルを除いたアセンブリモデルの特徴量は、正規化されている。これにより、各部品の大小が特徴量に影響を与えることを抑制することができる。
より具体的には、第1の算出ステップおよび第2の算出ステップにおいて、サブアセンブリモデルおよび当該サブアセンブリモデルを除いたアセンブリモデルの特徴量は、それぞれ含まれるすべての部品を個別に3次元ラドン変換して部品の体積の近似値で割った値の総和である。
【0045】
図4および
図5は、本実施形態の3次元CADモデル部分検索方法の一例を示す模式図である。各図において、比較モデル30のサブアセンブリモデル31、32および検索モデル40のサブアセンブリモデル41、42、43を模式的に示す。各図において、1つの立方体は、1つの部品を表す。同一の模様で表される立方体の集合は、1つのサブアセンブリを表す。
【0046】
この例において、比較モデル30は、第1のサブアセンブリモデル31と第2のサブアセンブリモデル32とを有する。比較モデル30の第1のサブアセンブリ31は、2つの部品31a、31bからなる。比較モデル30の第2のサブアセンブリ32は、1つの部品32aからなる。
【0047】
この例において、検索モデル40は、第1のサブアセンブリモデル41と第2のサブアセンブリモデル42と第3のサブアセンブリモデル43とを有する。検索モデル40の第1のサブアセンブリ41は、1つの部品41aからなる。検索モデル40の第2のサブアセンブリ42は、2つの部品42a、42bからなる。検索モデル40の第3のサブアセンブリ43は、1つの部品43aからなる。
【0048】
図4は、後述する比較ステップにおいて、比較モデル30および検索モデル40のサブアセンブリモデルの比較する組み合わせB1、B2、B3、B4、B5、B6を表す図である。比較ステップでは、
図4の全ての組み合わせB1、B2、B3、B4、B5、B6の比較を順次行う。
【0049】
図5は、後述する比較ステップにおいて、比較モデル30の第1のサブアセンブリモデル31と、検索モデル40の第1のサブアセンブリ41と、を比較する際のそれぞれの特徴量の取り扱いを示す図である。
図5は、比較ステップのうち、
図4の表中の組み合わせB1における比較する工程を示す図であり、比較モデル30および検索モデル40の第1のサブアセンブリ31、41が比較される。
【0050】
図5に示すように、比較モデル30の特徴量としては、第1のサブアセンブリモデル31の特徴量と、第1のサブアセンブリモデル31を除いたアセンブリモデル(すなわち、第2のサブアセンブリモデル32)の特徴量と、が算出される。なお、比較モデル30の特徴量を算出するステップは、第1の算出ステップである。
【0051】
上述したように、比較されるサブアセンブリモデルおよび当該比較されるサブアセンブリモデルを除いたアセンブリモデルの特徴量は、それぞれ含まれるすべての部品を個別に3次元ラドン変換して部品の体積の近似値で割った値の総和である。
【0052】
比較モデル30の第1のサブアセンブリモデル31には、2つの部品31a、31bが含まれる。このため、2つの部品31a、31bを個別に3次元ラドン変換して、それぞれの部品の体積の近似値で割った値の総和が、比較モデル30の第1のサブアセンブリモデル31の特徴量となる。
【0053】
一方で、比較モデル30の第1のサブアセンブリモデル31を除いたアセンブリモデル(すなわち、第2のサブアセンブリモデル32)に含まれるのは、1つの部品32aのみである。このため、部品32aを3次元ラドン変換した値を、部品32aの体積の近似値で割った値が第2のサブアセンブリモデル31を除いたアセンブリモデルの特徴量となる。
【0054】
また、検索モデル40の特徴量としては、第1のサブアセンブリモデル41の特徴量と、第1のサブアセンブリモデル41を除いたアセンブリモデル(すなわち、第2、第3のサブアセンブリモデル42、43)の特徴量と、が算出される。なお、検索モデル40の特徴量を算出するステップは、第2の算出ステップである。
【0055】
検索モデル40の第1のサブアセンブリモデル41に含まれるのは、1つの部品41aのみである。このため、部品41aを3次元ラドン変換した値を、部品41aの体積の近似値で割った値が検索モデル40の第1のサブアセンブリモデル41の特徴量となる。
【0056】
一方で、検索モデル40の第1のサブアセンブリモデル41を除いたアセンブリモデル(すなわち、第2、第3のサブアセンブリモデル42、43)には、合わせて3つの部品42a、42b、43aか含まれる。このため、3つの部品42a、42b、43aを個別に3次元ラドン変換して、それぞれの部品の体積の近似値で割った値の総和が、第1のサブアセンブリモデル41を除いたアセンブリモデルの特徴量となる。
【0057】
本実施形態によれば、サブアセンブリモデルと当該サブアセンブリモデルを除くアセンブリモデルと、をそれぞれ個別に3次元ラドン変換して特徴量とする。これら2つの特徴量を同時に比較することにより、アセンブリモデルに対するサブアセンブリモデルの相対的な位置関係が考慮された特徴量を算出できる。結果的に、サブアセンブリモデルの幾何学的な配置を考慮して検索モデルと比較モデルとの相違度の算出を行うことができる。
【0058】
本実施形態によれば、サブアセンブリモデルを3次元ラドン変換した値と、当該サブアセンブリモデルを除くアセンブリモデルを3次元ラドン変換した値と、をそれぞれ個別に特徴量として扱う。このため、例えば、これらの値の和を用いる場合(特許文献1参照)と比較して、相対的な位置関係を表す情報が薄まることがなく、特徴量によって相違度を明確に判定し易い。
なお、本実施形態によれば、特許文献1に開示される検索方法と比較して、特徴量を算出する手法として3次元ラドン変換が採用されることで特徴量のデータ容量が情報量に対して小さくすることができている。このため、サブアセンブリモデルを3次元ラドン変換した値と、当該サブアセンブリモデルを除くアセンブリモデルを3次元ラドン変換した値と、をそれぞれ個別に特徴量とした場合であっても、全体としてのデータ容量が大きくなりすぎることを抑制できる。
【0059】
<比較ステップ>
比較ステップは、検索モデルおよび比較モデルの特徴量を比較し、検索モデルおよび比較モデルの相違度を算出するステップである。
【0060】
表1のメインアルゴリズムに示すように、(3)比較ステップは、(3-1)方向固定第1ステップと、(3-2)方向固定第2ステップと、(3-3)決定ステップと、を有する。
(3-1)方向固定第1ステップは、方向を固定した上で、サブアセンブリ間の可能な全ての対応関係に対して、検索モデルと比較モデルの特徴量から、それらの間の相違度(特定組み合わせ相違度)を計算するステップである。
(3-2)
方向固定第2ステップは、方向固定第1ステップで導かれた複数の特定組み合わせ相違度の中から最小の値を選び、この方向における相違度(特定方向相違度)とするステップである。
(3-3)決定ステップは、方向固定第2ステップで導かれたそれぞれの方向における特定方向相違度の中から、最小のものを選び、比較モデルと検索モデルの相違度を導くステップである。
【0061】
(方向固定第1ステップ)
方向固定第1ステップは、特定の方向に対し、検索モデルと比較モデルのサブアセンブリモデルの全ての組み合わせに対して相違度を算出するステップである。方向固定第1ステップでは、検索モデルの全てのサブアセンブリモデルと、比較モデルの全てのサブアセンブリモデルとの相違度を総当たりで算出する。
【0062】
方向固定第1ステップでは、固定された特定の方向に対して、検索モデルと比較モデルとが比較される。また、後述する決定ステップに示すように、固定される特定の方向をあらゆる方向に変化させることで、最終的にすべての方向に対して、検索モデルと比較モデルとが比較される。
【0063】
ここで、方向固定第1ステップで算出される、総当たりのサブアセンブリモデルの組み合わせのそれぞれの相違度を、「特定組み合わせ相違度」と呼ぶ。方向固定第1ステップでは、固定された方向において総当たりでされたサブアセンブリモデルの組み合わせと同数の特定組み合わせ相違度が算出される。
【0064】
すなわち、方向固定第1ステップは、方向を固定して、検索モデルの全てのサブアセンブリモデルと、比較モデルの全てのサブアセンブリモデルと、の全ての組み合わせに対して、特徴量の差分の総和を特定組み合わせ相違度として算出するステップである。
【0065】
この点について、
図4の模式図を基に説明する。
この例において、比較モデル30は、2つのサブアセンブリモデル(第1および第2のサブアセンブリモデル31、32)を有する。一方で、検索モデル40は、3つのサブアセンブリモデル(第1、第2および第3のサブアセンブリモデル41、42、43)を有する。方向固定第1ステップでは、固定された特定の方向において、比較モデル30の第1のサブアセンブリモデル31に対し検索モデル40の第1、第2および第3のサブアセンブリモデル41、42、43を比較し、比較モデル30の第2のサブアセンブリモデル32に対し検索モデル40の第1、第2および第3のサブアセンブリモデル41、42、43を比較する。結果的に、比較モデル30のサブアセンブリモデルの個数と、検索モデル40のサブアセンブリモデルの個数と、の積(
図4において、2×3)に相当する個数の特定組み合わせ相違度を算出する。
【0066】
第1および第2の算出ステップにおいて検索モデルMcompおよび比較モデルMpartの比較する特徴量fcomp,fpartを決めたとき、特定組み合わせ相違度を計算するアルゴリズムを第2のサブアルゴリズムとして、表3に示す。第2のサブアルゴリズムは、表1に示すメインアルゴリズムにおいて、ComputePartialDissimilarityと表現されたアルゴリズムである。
【0067】
【0068】
アセンブリモデルは一般に、3次元空間内における姿勢や位置がデータによって異なる。そのため、回転や平行移動に対して頑健な特徴量の差分を導出するため、特徴量は平行移動させながら差分を導出する。ただし、アセンブリ内におけるサブアセンブリモデルの相対的な位置情報は必要なため、着目しているサブアセンブリモデルを平行移動させると同時に、当該サブアセンブリモデルを除いたアセンブリモデル全体の特徴量(fcomp,others、fpart,others)を同時に平行移動させ、これについても同様に特徴量の差分を導出する。
【0069】
すなわち、比較ステップにおいて、比較する特徴量同士を相対的に平行移動させて、特徴量の差分の総和が最小となる値を相違度とする。
【0070】
本実施形態によれば、検索モデルおよび比較モデルの特徴量を相対的に平行移動させて相違度を算出すため、検索モデルと比較モデルとの相対的な位置関係について網羅的に確認して最適な相違度を算出でき、相対的な位置関係のずれを相殺することができる。
【0071】
比較モデルのサブアセンブリモデルの特徴量fpart,saおよび検索モデルのサブアセンブリモデルの特徴量fcomp,saには、着目しているサブアセンブリモデルの形状、および配置の情報が含まれており、その差分(fpart,sa - fcomp,sa)は、形状や配置の違いを表す値となる。ここで比較モデルが検索モデルに完全に含まれるとき、(fpart,sa - fcomp,sa)の要素に正の値は含まれず、0または負の値のみとなる。
【0072】
このとき、第2のサブアルゴリズムの7行目および8行目のように、差の値と0の大きい方の値を採用することにより、完全に部分一致する場合は0に、そうでない場合は0でない差が検索モデルに含まれていない程度を表しており、はみ出した部分の値が特徴量同士の差分となる。
【0073】
また、当該サブアセンブリモデルを除いた検索モデルの特徴量f
comp,
othersおよび当該サブアセンブリモデルを除いた比較モデルの特徴量f
part,
othersも同時に比較している。
図5を基に説明したように、これらはそれぞれ、対象となるサブアセンブリモデルを構成する部品の特徴量の和をもって計算される。
【0074】
第2のサブアルゴリズムの10行目および11行目において、サブアセンブリモデルの特徴量の差と当該サブアセンブリモデルを除いたアセンブリモデルの特徴量の差のそれぞれを比較モデル側のサブアセンブリモデルに含まれる部品の数で割っている。また、この割った値を用いて、比較ステップの各特徴量の差の比較が行われる。これにより、サブアセンブリモデルに含まれる部品の数が、特徴量の差に影響を及ぼすことを抑制できる。
【0075】
図5において模式的に示すように、比較ステップにおいて、第1の算出ステップおよび第2の算出ステップで算出されたサブアセンブリモデルおよび当該サブアセンブリモデルを除いたアセンブリモデルの特徴量として、それぞれを構成する部品を3次元ラドン変換し当該部品の体積の近似値で割ったものの総和を用いることが好ましい。
【0076】
すなわち、方向固定第1ステップにおいて、検索モデルおよび比較モデルについて、比較するサブアセンブリモデル同士の特徴量の差分と、当該比較するサブアセンブリモデルを除いたアセンブリモデル同士の特徴量の差分と、の和を基に特定組み合わせ相違度が算出される。3次元ラドン変換による特徴量の値は、モデルの体積に影響を受ける。本実施形態では、部品を3次元ラドン変換し当該部品の体積の近似値で割ったものの総和を基に、特定組み合わせ相違度を算出することで、部品の体積が特定組み合わせ相違度の算出に及ぼす影響を軽減できる。
【0077】
なお、体積の近似値としては、3次元ラドン変換により算出した断面積の合計(積分値)を用いることもできる。これにより、別途体積の算出を行うことなく正規化を実行でき、処理時間の短縮を図ることができる。
【0078】
さらに、方向固定第1ステップにおいて、検索モデルおよび比較モデルについての比較するサブアセンブリモデル同士の特徴量の差分と、当該比較するサブアセンブリモデルを除いたアセンブリモデル同士の特徴量の差分と、の和を、さらに、比較モデルの比較するサブアセンブリモデルの部品数で割ったもので特定組み合わせ相違度を算出することが好ましい。上述の和を、比較モデルのサブアセンブリモデルの部品数で割ることで、部品の数が特定組み合わせ相違度の算出に及ぼす影響を軽減できる。
【0079】
この点について、
図5の模式図を基に説明する。
方向固定第1ステップでは、方向を固定して、比較モデル30と検索モデル40との、全てのサブアセンブリモデル同士の組み合わせに対して、特徴量の差分の総和を特定組み合わせ相違度として算出するステップである。
【0080】
図5では、比較モデル30の第1のサブアセンブリモデル31と、検索モデル40の第1のサブアセンブリモデル41と、を比較している。
【0081】
比較モデル30の第1のサブアセンブリ31の特徴量は、2つの部品31a、31bを個別に3次元ラドン変換して、それぞれの部品の体積の近似値で割り正規化したものの総和である。一方で、検索モデル40の第1のサブアセンブリ41の特徴量は、部品41aを3次元ラドン変換して部品41aの体積の近似値で割り正規化したものである。
このステップでは、比較モデル30の第1のサブアセンブリ31の特徴量と、検索モデル40の第1のサブアセンブリ41の特徴量と、の差分(第1の差分D1)が算出される。
【0082】
比較モデル30の第1のサブアセンブリモデル31を除いたアセンブリモデル(すなわち、第2のサブアセンブリモデル32)の特徴量は、部品32aを3次元ラドン変換して部品32aの体積の近似値で割り正規化されたものである。一方で、検索モデル40の第1のサブアセンブリモデル41を除いたアセンブリモデル(すなわち、第2、第3のサブアセンブリモデル42、43)の特徴量は、3つの部品42a、42b、43aを個別に3次元ラドン変換して、それぞれの部品の体積の近似値で割り正規化したものの総和である。
このステップでは、比較モデル30の第1のサブアセンブリモデル31を除いたアセンブリモデルと、検索モデル40の第1のサブアセンブリモデル41を除いたアセンブリモデルの特徴量と、の差分(第2の差分D2)が算出される。
【0083】
方向固定ステップでは、第1の差分D1と第2の差分D2との和を、さらに、比較モデル30の比較する第1のサブアセンブリモデル31の部品数で割って、特定組み合わせ相違度を算出する。
図5の例では、比較モデル30の比較する第1のサブアセンブリ31の部品数は、2である。このため、この例では、第1の差分D1と第2の差分D2との和は、2で割られる。
【0084】
本実施形態によれば、第1の算出ステップにおいて、比較モデル30の第1のサブアセンブリモデル31および当該サブアセンブリモデル31を除いたアセンブリモデル(すなわち、サブアセンブリモデル32)の特徴量は、それぞれ含まれるすべての部品を個別に3次元ラドン変換して当該部品の体積の近似値で割った値の総和である。同様に、本実施形態の第2の算出ステップにおいて、検索モデル40の第1のサブアセンブリモデル41および当該サブアセンブリモデル41を除いたアセンブリモデル(すなわち、サブアセンブリモデル42、43)の特徴量は、それぞれ含まれるすべての部品を個別に3次元ラドン変換して当該部品の体積の近似値で割った値の総和である。また、本実施形態の方向固定第1ステップにおいて、比較モデル30および検索モデル40について、比較するサブアセンブリモデル(第1のサブアセンブリモデル31、41)同士の特徴量の差分と、当該比較するサブアセンブリモデルを除いたアセンブリモデル同士の特徴量の差分と、の和を基に特定組み合わせ相違度を算出する。より具体的には、この和を、さらに、比較モデル30の比較する第1のサブアセンブリモデル31の部品数(この構成では2つ)で割ったもので特定組み合わせ相違度を算出する。これらの操作を行うことで、サブアセンブリモデルに含まれる部品の体積および部品の数に関わらず、全てのサブアセンブリモデルが等しい重みで評価され、正確にアセンブリモデル間の相違度を評価できる。
【0085】
(方向固定第2ステップ)
方向固定第2ステップは、特定の方向に対する相違度(以下、「特定方向相違度と呼ぶ)を選ぶステップである。このステップで導かれた特定方向相違度は、特定の方向に限ってみた場合の、検索モデルと比較モデルとの相違度を表す。
【0086】
方向固定第2ステップでは、まず、方向固定第1ステップで導かれた複数の特定組み合わせ相違度の中から最小の値が選ばれる。次いで、選ばれた最小の値を、この方向における相違度(特定方向相違度)と定める。
【0087】
すなわち、方向固定第2ステップは、方向固定第1ステップにおいて算出した特定組み合わせ相違度が最小となるサブアセンブリモデルの組み合わせを導き、このときの特定組み合わせ相違度を、当該方向に対する特定方向相違度とするステップである。
【0088】
この点について、
図4の模式図を基に説明する。
この例において、比較モデル30が2つのサブアセンブリモデル31、32を有し、検索モデル40が3つのサブアセンブリモデル41、42、43を有する。このため、比較モデル30と検索モデル40は、40とは、6つのサブアセンブリモデルの組み合わせB1、B2、B3、B4、B5、B6の特定組み合わせ相違度を比較し、さらに、6つそれぞれの組み合わせB1、B2、B3、B4、B5、B6の特定組み合わせ相違度のうち最小の値を選び特定方向相違度とする。
【0089】
表1に示すメインアルゴリズムの方向固定第2ステップについて詳細を示す。
まず、メインアルゴリズムの16行目にて、これまでの処理で得られた特徴量fcomp,fpartについて,sacomp∈Mcompとsapart∈Mpartのすべての組み合わせの中から、特徴量同士の差分の総和が最小となる組み合わせを解く。本実施形態では、比較モデルのサブアセンブリの数が、検索モデルのサブアセンブリの数より少ない。この場合、全ての組み合わせとは、比較モデルのサブアセンブリの集合から検索モデルのサブアセンブリの集合への全ての単射(写像)を意味する。
【0090】
方向固定第2ステップにおける特徴量同士の差分の総和を、アセンブリ間の差分の総和とする。この最適な組み合わせを探す問題は、割当問題と呼ばれる組み合わせ最適化問題として定式化して解いている。
【0091】
(決定ステップ)
決定ステップでは、想定される全ての方向に対して最も小さい相違度を決定するステップである。決定ステップを経ることで、検索モデルと比較モデルとの相違度を示す相違度が算出される。本実施形態では、検索モデルの特徴量を算出する際の3次元ラドン変換を行う方向の数(Vcompに含まれる要素数)は、比較モデルの特徴量を算出する際の3次元ラドン変換を行う方向の数(Vpartに含まれる要素数)より少ない。相違度は、VcompからVpartへの単射の中から相違度が最小となる単射を見つけ、その時の相違度から最終的なアセンブリ間の相違度を導く。相違度が最小となる単射は、割当問題として定式化して解かれる。
【0092】
決定ステップでは、まず、全ての方向に対して、方向固定第1ステップおよび方向固定第2ステップを行う。すなわち、方向を変えながら、方向固定第1ステップおよび方向固定第2ステップを繰り返し行う。これにより、全ての方向の組み合わせにおいて特定方向相違度が求まる。次に、これらのなかで最も小さい特定方向相違度を選び出す。さらに、最も小さい特定方向相違度を、比較モデルのサブアセンブリの数で割ることで相違度を導く。
【0093】
すなわち、決定ステップは、全ての方向に対して、方向固定第1ステップおよび方向固定第2ステップを行い、特定方向相違度が最小となる方向を導き、このときの特定方向相違度から検索モデルと比較モデルとの相違度を導くステップである。
【0094】
また、本実施形態では、メインアルゴリズム(表1参照)の19行目に示すように、決定ステップにおいて得られた結果(検索モデルと比較モデルとの相違度)は、比較モデルに含まれるサブアセンブリの数(|Mpart|)によって割られる。すなわち、本実施形態によれば、相違度は、比較モデルに含まれるサブアセンブリの数によって正規化される。これによって、比較モデルのサブアセンブリの数が、相違度に影響を与えることを抑制できる。検索モデルと複数の比較モデルとの相違度を比較する場合に、比較モデル同士のサブアセンブリの数に差異がある場合であっても、正確な検索結果を算出することができる。
【0095】
こうして得られた相違度をもとに行う検索は、モデルの姿勢や位置に対して頑健であり、サブアセンブリモデルの識別子にも依存せず、モデルの形状と配置をともに考慮した部分検索となっている。
【0096】
ここでは、被検索対象として、1つの比較モデルを用意する場合について説明した。しかしながら、実際の実装では、データベースには、被検索対象として複数の比較モデルが記憶される。それぞれの比較モデルは、予め特徴量が算出され、関連情報として記憶されていることが好ましい。
【0097】
検索モデルを、データベース中の複数のアセンブリモデルに対して検索する場合、検索モデルと、データベース中の複数の比較モデルとを順に比較し相違度が最も小さい比較モデルを導出する。これにより、データベース中の複数の比較モデルから、検索モデルに最も類似した1つを検索者に提供することができる。
【0098】
以上に、本発明の様々な実施形態を説明したが、各実施形態における各構成およびそれらの組み合わせ等は一例であり、本発明の趣旨から逸脱しない範囲内で、構成の付加、省略、置換およびその他の変更が可能である。また、本発明は実施形態によって限定されることはない。
【符号の説明】
【0099】
10…ベース部、11…第1のアセンブリモデル、12…第2のアセンブリモデル、13…第3のアセンブリモデル、21…第1のサブアセンブリモデル、22…第2のサブアセンブリモデル、23…第3のサブアセンブリモデル、24…第4のサブアセンブリモデル、25…第5のサブアセンブリモデル、26…第6のサブアセンブリモデル