IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社アストライアーソフトウエアの特許一覧

特許71901473次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム
<>
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図1
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図2
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図3
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図4
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図5
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図6
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図7
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図8
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図9
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図10
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図11
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図12
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図13
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図14
  • 特許-3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2022-12-07
(45)【発行日】2022-12-15
(54)【発明の名称】3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システム
(51)【国際特許分類】
   G06N 20/00 20190101AFI20221208BHJP
   G06T 7/00 20170101ALI20221208BHJP
【FI】
G06N20/00
G06T7/00 C
G06T7/00 350C
【請求項の数】 4
(21)【出願番号】P 2022014874
(22)【出願日】2022-02-02
【審査請求日】2022-08-25
【新規性喪失の例外の表示】特許法第30条第2項適用 2021年7月2日に、ウェブサイト(https://www.astraea-soft.com/)上で公開。
【早期審査対象出願】
(73)【特許権者】
【識別番号】522046070
【氏名又は名称】株式会社アストライアーソフトウエア
(74)【代理人】
【識別番号】100181940
【弁理士】
【氏名又は名称】緒方 禎浩
(72)【発明者】
【氏名】チャン フォン
(72)【発明者】
【氏名】丸山 康司
(72)【発明者】
【氏名】四條 清文
【審査官】山本 俊介
(56)【参考文献】
【文献】米国特許出願公開第2020/0372626(US,A1)
【文献】国際公開第2019/078006(WO,A1)
【文献】特開2014-102746(JP,A)
【文献】特開2019-8337(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-99/00
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
3次元形状から、その表面データを学習データとして採取し、前記学習データを用いて、所定のエンコーダ・デコーダをセットとしてトレーニングしたものを3次元形状記述子抽出器とする3次元形状記述子抽出器の製造方法であり、
前記トレーニングは、前記エンコーダで前記学習データから3次元形状記述子を抽出(エンコード)し、前記デコーダで前記3次元形状記述子を元に戻(デコード)し、前記エンコード前と前記デコード後の差(誤差)を評価し、前記誤差が収束するように前記エンコーダ・デコーダを調整するものであり、
前記3次元形状から、その表面データとしてメッシュデータを採取し、所定のスケールにして、前記エンコーダ・デコーダをトレーニングする3次元形状記述子抽出器の製造方法。
【請求項2】
3次元形状から、その表面データを学習データとして採取し、前記学習データを用いて、所定のエンコーダ・デコーダをセットとしてトレーニングしたものを3次元形状記述子抽出器とする3次元形状記述子抽出器の製造方法であり、
前記トレーニングは、前記エンコーダで前記学習データから3次元形状記述子を抽出(エンコード)し、前記デコーダで前記3次元形状記述子を元に戻(デコード)し、前記エンコード前と前記デコード後の差(誤差)を評価し、前記誤差が収束するように前記エンコーダ・デコーダを調整するものであり、
請求項1の製造方法によって製造された3次元形状記述子抽出器によってエンコード・デコード可能なメッシュについて、隣接するメッシュ面が形成する表面角度に応じて、前記表面角度が鋭くなるほど、その表面データとして点群データを多く採取し、前記エンコーダ・デコーダをトレーニングする3次元形状記述子抽出器の製造方法。
【請求項3】
既存の3次元形状データの中から、ドラフトデータの3次元形状に類似する3次元形状を検索する3次元形状検索方法であり、
まず、前記既存の3次元形状データの中から前記ドラフトデータが該当する形状類型(クラス)を予測するものであり、
前記ドラフトデータが該当するクラスの予測は、請求項1の製造方法で製造された3次元形状記述子抽出器によって前記ドラフトデータから抽出した3次元形状記述子に基づき、AIモデルが行うものであり、
前記AIモデルは、請求項1の製造方法で製造された3次元形状記述子抽出器によって前記既存の3次元形状データから抽出した3次元形状記述子と、当該3次元形状記述子に係る3次元形状データが属するクラスのクラス名と、を一対の学習データとして学習、生成し、前記3次元形状記述子と前記クラス名の関係性をあらかじめ学習させた学習済みモデルであり、
次に、前記予測されたクラスに属する3次元形状データの中から、前記ドラフトデータの3次元形状に類似する3次元形状のものを検索するものであり、
前記検索は、請求項2の製造方法で製造された3次元形状記述子抽出器によって、前記ドラフトデータと前記クラスに属する3次元形状データの3次元形状記述子を抽出し、それぞれの3次元形状記述子を比較し、前記ドラフトデータの3次元形状記述子との距離が最も近い3次元形状記述子に係る3次元形状データを類似するものとする3次元形状検索方法。
【請求項4】
ドラフトデータの取得部と、
既存の3次元形状データが格納された格納部と、
請求項1の製造方法によって製造された3次元形状記述子抽出器、請求項2の製造方法によって製造された3次元形状記述子抽出器によって3次元形状記述子を抽出する抽出部と、
前記既存の3次元形状データの中から、前記取得部で取得されたドラフトデータが該当する形状類型(クラス)を予測する予測部と、
所望の3次元形状データの中から、前記取得部で取得された3次元形状記述子に係るドラフトデータが類似するものを検索し、出力する類推部と、を備える3次元形状検索システムであり、
前記ドラフトデータが該当するクラスの予測は、請求項1の製造方法で製造された3次元形状記述子抽出器によって前記ドラフトデータから抽出した3次元形状記述子に基づき、AIモデルが行うものであり、
前記AIモデルは、請求項1の製造方法で製造された3次元形状記述子抽出器によって前記既存の3次元形状データから抽出した3次元形状記述子と、当該3次元形状記述子に係る3次元形状データが属するクラスのクラス名と、を一対の学習データとして学習、生成し、前記3次元形状記述子と前記クラス名の関係性をあらかじめ学習させた学習済みモデルであり、
前記検索は、請求項2の製造方法で製造された3次元形状記述子抽出器によって、前記ドラフトデータと前記クラスに属する3次元形状データの3次元形状記述子を抽出し、それぞれの3次元形状記述子を比較し、前記ドラフトデータの3次元形状記述子との距離が最も近い3次元形状記述子に係る3次元形状データを類似するものとする3次元形状検索システム。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、3次元形状記述子抽出器の製造方法、3次元形状検索方法及び3次元形状検索システムに関するものである。
【背景技術】
【0002】
近年、人工知能(AI)に不可欠なディープニューラルネットワーク(DNN)による2次元形状認識等、様々な2次元データを利用した人工知能(AI)が開発され、実用化されている。
【0003】
一方、3次元形状の認識技術は、2次元形状の認識技術に比べると、実用化が難しい現状がある。
【0004】
3次元形状は、2次元形状を表現するピクセル配列のように、形状の構成要素同士の関係性が定型的に表現困難だからである。このように、コンピュータが処理可能なレベルにまで、3次元形状の特徴を維持しながらデータを圧縮することが難しいため、3次元形状データを扱うAIは、実用化されてこなかった。
【0005】
そのような中、3次元形状の被写体を認識する装置として、被写体の3次元形状データとテクスチャデータとに基づいて生成される被写体展開画像を用いて画像検索対象である複数のデータベース画像から被写体候補のデータベース画像を選択して出力する被写体認識装置であって、前記被写体展開画像から特徴箇所を抽出し、該被写体展開画像における特徴箇所の第1の局所記述子を算出するクエリ特徴表現手段と、画像検索対象のデータベース画像から特徴箇所を抽出し、該データベース画像における特徴箇所の第2の局所記述子を算出するデータベース特徴表現手段と、前記第1の局所記述子と前記第2の局所記述子とを比較した結果に基づいて生成した最近傍特徴点のペアから射影変換行列を求め、該射影変換行列を用いて前記最近傍特徴点のペアの絞り込みを行った後に類似度のスコアを算出し、該スコアに基づき前記被写体展開画像に類似する前記データベース画像を特定する照合手段とを備えることを特徴とする被写体認識装置が挙げられる(特許文献1)。
【0006】
また、所定領域の物体を識別する物体識別システムであって、前記所定領域を撮像する撮像部と、前記撮像部から前記所定領域までの距離を測定する測距部と、前記測距部で測定される距離に基づいて、前記所定領域のメッシュモデルを生成するモデル生成部と、前記モデル生成部で生成された前記所定領域のメッシュモデルにおいて、前記所定領域の背景のメッシュモデルから突出した対象物のメッシュモデルを抽出する対象物抽出部と、前記対象物抽出部で抽出された前記対象物のメッシュモデルと、データベースに格納された物体の情報とを照合し、当該対象物を特定する対象物特定部と、を有することを特徴とする、物体識別システムが挙げられる(特許文献2)。
【0007】
しかしながら、特許文献1の技術は、被写体を2次元画像として展開するものであり、特許文献2の技術は、撮像されなかった部分を補完して推定する必要がある等、3次元形状データに基づき3次元形状を高精度に識別するには不向きである。
【先行技術文献】
【特許文献】
【0008】
【文献】特開2014-102746
【文献】特開2019-8337
【発明の概要】
【発明が解決しようとする課題】
【0009】
本発明が解決しようとする課題は、簡易かつ高精度に3次元形状を識別することである。
【課題を解決するための手段】
【0010】
第1の発明は、3次元形状から、その表面データを学習データとして採取し、前記学習データを用いて、所定のエンコーダ・デコーダをセットとしてトレーニングしたものを3次元形状記述子抽出器とする3次元形状記述子抽出器の製造方法であり、前記トレーニングは、前記エンコーダで前記学習データから3次元形状記述子を抽出(エンコード)し、前記デコーダで前記3次元形状記述子を元に戻(デコード)し、前記エンコード前と前記デコード後の差(誤差)を評価し、前記誤差が収束するように前記エンコーダ・デコーダを調整するものであり、前記3次元形状から、その表面データとしてメッシュデータを採取し、所定のスケールにして、前記エンコーダ・デコーダをトレーニングする3次元形状記述子抽出器の製造方法である。また、第2の発明は、3次元形状から、その表面データを学習データとして採取し、前記学習データを用いて、所定のエンコーダ・デコーダをセットとしてトレーニングしたものを3次元形状記述子抽出器とする3次元形状記述子抽出器の製造方法であり、前記トレーニングは、前記エンコーダで前記学習データから3次元形状記述子を抽出(エンコード)し、前記デコーダで前記3次元形状記述子を元に戻(デコード)し、前記エンコード前と前記デコード後の差(誤差)を評価し、前記誤差が収束するように前記エンコーダ・デコーダを調整するものであり、第1の発明の製造方法によって製造された3次元形状記述子抽出器によってエンコード・デコード可能なメッシュについて、隣接するメッシュ面が形成する表面角度に応じて、前記表面角度が鋭くなるほど、その表面データとして点群データを多く採取し、前記エンコーダ・デコーダをトレーニングする3次元形状記述子抽出器の製造方法である。また、第3の発明は、既存の3次元形状データの中から、ドラフトデータの3次元形状に類似する3次元形状を検索する3次元形状検索方法であり、まず、前記既存の3次元形状データの中から前記ドラフトデータが該当する形状類型(クラス)を予測するものであり、前記ドラフトデータが該当するクラスの予測は、第1の発明の製造方法で製造された3次元形状記述子抽出器によって前記ドラフトデータから抽出した3次元形状記述子に基づき、AIモデルが行うものであり、前記AIモデルは、第1の発明の製造方法で製造された3次元形状記述子抽出器によって前記既存の3次元形状データから抽出した3次元形状記述子と、当該3次元形状記述子に係る3次元形状データが属するクラスのクラス名と、を一対の学習データとし、前記3次元形状記述子と前記クラス名の関係性をあらかじめ学習させた学習済みモデルであり、次に、前記予測されたクラスに属する3次元形状データの中から、前記ドラフトデータの3次元形状に類似する3次元形状のものを検索するものであり、前記検索は、第2の発明の製造方法で製造された3次元形状記述子抽出器によって、前記ドラフトデータと前記クラスに属する3次元形状データの3次元形状記述子を抽出し、それぞれの3次元形状記述子を比較し、前記ドラフトデータの3次元形状記述子との距離が最も近い3次元形状記述子に係る3次元形状データを類似するものとする3次元形状検索方法である。また、第4の発明は、ドラフトデータの取得部と、既存の3次元形状データが格納された格納部と、第1の発明の製造方法によって製造された3次元形状記述子抽出器、第2の発明の製造方法によって製造された3次元形状記述子抽出器によって3次元形状記述子を抽出する抽出部と、前記既存の3次元形状データの中から、前記取得部で取得されたドラフトデータが該当する形状類型(クラス)を予測する予測部と、所望の3次元形状データの中から、前記取得部で取得された3次元形状記述子に係るドラフトデータが類似するものを検索し、出力する類推部と、を備える3次元形状検索システムであり、前記ドラフトデータが該当するクラスの予測は、第1の発明の製造方法で製造された3次元形状記述子抽出器によって前記ドラフトデータから抽出した3次元形状記述子に基づき、AIモデルが行うものであり、前記AIモデルは、第1の発明の製造方法で製造された3次元形状記述子抽出器によって前記既存の3次元形状データから抽出した3次元形状記述子と、当該3次元形状記述子に係る3次元形状データが属するクラスのクラス名と、を一対の学習データとして学習、生成し、前記3次元形状記述子と前記クラス名の関係性をあらかじめ学習させた学習済みモデルであり、前記検索は、第2の発明の製造方法で製造された3次元形状記述子抽出器によって、前記ドラフトデータと前記クラスに属する3次元形状データの3次元形状記述子を抽出し、それぞれの3次元形状記述子を比較し、前記ドラフトデータの3次元形状記述子との距離が最も近い3次元形状記述子に係る3次元形状データを類似するものとする3次元形状検索システムである。
【発明の効果】
【0011】
本発明は、3次元形状の表面データとしてメッシュデータを用いるため、3次元形状を簡易、かつ、高精度に表現する学習データとして、エンコーダ・デコーダをトレーニングでき、3次元形状記述子抽出器を製造できる効果が期待できる。また、本発明は、当該トレーニングによってエンコード、デコード可能なメッシュについて、隣接するメッシュ面の表面角度に応じて、前記表面角度が大きくなるほど、その表面データとして点群データを多く採取することで、高精度にエンコーダ・デコーダをトレーニングでき、高精度な3次元形状記述子抽出器を製造できる効果が期待できる。また、本発明は、メッシュデータによるトレーニングによってサイズ情報を含まない3次元形状記述子抽出器と点群データによるトレーニングによってサイズ情報を含む3次元形状記述子抽出器により、高精度な3次元形状識別子を抽出し、AI分野で検索等に利用できる効果が期待できる。
【図面の簡単な説明】
【0012】
図1】3次元形状記述子抽出器の製造フローである。
図2】メッシュデータの前処理フローである。
図3】メッシュデータによるエンコーダ、デコーダのトレーニングフローである。
図4】3次元形状の表現イメージである。
図5】点群データの前処理フローである。
図6】三次元形状の表面に設定された隣接メッシュのイメージである。
図7】隣接メッシュ面の角度と点群サンプル数のイメージである。
図8】メッシュ内のサンプル領域のイメージである。
図9】点群データによるエンコーダ、デコーダのトレーニングフローである。
図10】3次元形状検索方法のフローである。
図11】学習モデルの生成に係る入力情報と出力情報の関係性イメージである。
図12】3次元形状データのクラス別イメージである。
図13図10のステップS10とステップS20の概念図である。
図14図10のステップS30とステップS40の概念図である。
図15】3次元形状検索システムの一例である。
【発明を実施するための形態】
【0013】
<用語>
本発明における用語を以下に説明する。
【0014】
本発明において、3次元形状記述子とは、3次元座標・表面データを元データとして得られる3次元形状の特徴を表す数値データである。本発明に係る技術分野では、特徴ベクトルや特徴量ベクトルと言われるものである。また、本発明において、3次元形状の、サイズ情報を含まない3次元形状記述子とは、形状の特徴だけを含むものであり、サイズ情報を含む3次元形状記述子とは、形状の特徴に加え寸法情報を含むものである。
【0015】
本発明において、エンコーダとは、3次元座標・表面データを変換し、3次元形状記述子を抽出(エンコード)するためのプログラムである。3次元形状記述子は、いわゆるディープニューラルネットワーク(DNN)により抽出される。また、デコーダとは、エンコーダの逆の操作をし、3次元形状記述子を元に戻(デコード)すためのプログラムである。
【0016】
本発明において、メッシュデータとは、3次元形状の表面から採取、加工が可能なデータであり、三角メッシュデータ、四角メッシュデータ、その他多角メッシュデータのいずれも含むものである。また、点群データとは、3次元形状の表面から採取、加工が可能なデータであり、任意の複数点からなるものである。
【0017】
本発明において、3次元形状記述子抽出器とは、所定のエンコーダ、デコーダをセットとして、トレーニング、検証されたものである。トレーニングとは、3次元形状の表面データをトレーニングデータとして、エンコード、デコードし、エンコード前とデコード後の誤差が収束されるまで、エンコーダ、デコーダが設定調整される繰り返し作業のことである。また、検証とは、3次元形状の表面データを検証データとして、トレーニングされた3次元形状記述子抽出器の誤差を確認する作業のことである。
【0018】
本発明において、隣接するメッシュ面の表面角度とは、2つのメッシュ面がなす角度のことである。表面角度が鋭いとは、平坦な面で隣接する状態から遠ざかった状態にあることを意味する。
【0019】
本発明において、クラスとは、既存の3次元形状データの特徴によって分類され、所有者や管理者によってタグ付けされた形状類型のことである。管理者は、クラス名を設定し、各々の3次元形状データに当該クラス名をタグ付けする。
【0020】
本発明において、クラス予測を行うAIモデルとは、いわゆる教師あり学習によって生成された学習済みモデルのことである。学習のアルゴリズムは、限定されるものではない。
【0021】
<本発明における各種処理>
本発明に係る処理は、本発明に係る処理に必要な機能を備えた装置やプログラムによって行われる。例えば、装置としては、データの通信、入出力のための端末、CPU(制御装置、演算装置)や記憶装置(主記憶装置、補助記憶装置)等が挙げられる。また、プログラムの実行は、補助記憶装置に記憶された所定のプログラムやその他の処理を実行するためのプログラムが主記憶装置に読み出され、CPUで行われる例が挙げられる。このような処理は、ネットワークを介して行われるものでもよい。
【0022】
<実施例1>
メッシュデータからの3次元形状記述子抽出器の製造及び点群データからの3次元形状記述子の製造を実施例1として以下に説明する。
【0023】
図1は、サイズ情報を含まない3次元形状記述子抽出器の製造フロー図である。大まかな流れとしては、まず、検証のための学習データが準備される(ステップS1)。学習データは、トレーニング用と検証用に分割される。トレーニング用データはエンコーダ、デコーダのトレーニングに使用され、検証用データはトレーニングされたエンコーダ、デコーダの検証に使用される。
【0024】
次に、エンコーダ、デコーダのトレーニングのために、学習データの前処理が行われる(ステップS2)(詳細後述)。
【0025】
次に、エンコーダ、デコーダのトレーニングが行われる(ステップS3)。エンコーダ、デコーダは、所定のライブラリにおいて公開され、利用可能なプログラムである。当該プログラムは、トレーニングを通じて、改良・チューニングを行う(詳細後述)。トレーニングは、指定した数だけ繰り返し行われる。
【0026】
次に、検証データでのエンコード、デコードの結果が検証される(ステップS4)。誤差が所定範囲内に収束すれば、処理は終了となる。誤差が所定範囲内に収束しなければ、エンコーダ、デコーダの設定が変更され(ステップS6)、作業がループの先頭に戻され、誤差が所定範囲内になるまで繰り返される。
【0027】
メッシュデータからの3次元形状記述子抽出器の製造について詳述する。
まず、学習データとして3次元形状データが準備される(ステップS1)。3次元形状データは、その表面を表すためのメッシュの頂点の座標とその座標の接続(接線)のためのデータが含まれるものであればよい。例えば、3DCADや3Dスキャナー等から3次元形状に係るデータが取得される。ただし、データの取得方法は限定されるものではない。
【0028】
次に、エンコーダ、デコーダのトレーニングのためのデータの前処理が行われる(ステップS2)。図2は、当該前処理の詳細を表すメッシュデータの前処理フローである。まず、取得されたメッシュデータが、前処理のために読み込まれる(ステップS21)。
【0029】
次に、読み込まれたメッシュデータがソリッドデータであるか否かが判断される(S22)。本発明において必要とされるのは、表面データのみであるため、3次元形状の内部情報が含まれる場合、表面データのみが取り出される(ステップS23)。
【0030】
次に、3次元形状のサイズが所定の基準に調整され(ステップ24)、当該メッシュによって3次元形状の表面形状が構成されるようになり、簡略化の余地がある場合、所定の節点数まで簡略化される(ステップS25)。ここで、サイズの調整は、処理上、扱いやすくするためのもので、メッシュデータのスケールが所定サイズ内に統一化されるものである。当該処理により、メッシュデータから抽出される3次元形状記述子は、サイズ情報を含まない(3次元形状の特徴だけに基づく)ものとなる。また、簡略化は、エンコーダ、デコーダのトレーニングにかかる時間が許容される範囲まで、特徴量を失わない範囲で、節点数が下げられる(解像度が下げられる)。
【0031】
次に、前処理後のメッシュデータでエンコーダ、デコーダがトレーニングされる(ステップS3)。図3は、メッシュデータによるエンコーダ、デコーダのトレーニングフローである。このトレーニングは、前処理されたメッシュデータを入力データとしてエンコードし、3次元形状記述子を出力データとして抽出するステップ(S31)と、抽出された3次元形状記述子をデコードするステップ(S32)と、デコード後のメッシュデータがエンコード前のメッシュデータの誤差を算出するステップ(S33)と、必要に応じて、メッシュデータの再現度を高めるためのエンコーダ、デコーダの調整ステップ(S31~S33)とからなる。
【0032】
ここで、エンコーダ、デコーダは、一般公開されているライブラリの組合わせ、改良・チューニングされたものから用いられたものである。本発明では、エンコーダ、デコーダとしては、メッシュデータをエンコード、デコードできるものであればどのようなものが用いられても良い。ただし、エンコーダ、デコーダとしては、次の要件を満たしていることが必要である。
【0033】
第1の要件は、粗いメッシュ、形状が不規則なメッシュをエンコード、デコードできることである。メッシュは、エンコード・デコードのパフォーマンス向上のために、前処理によって解像度が下げられ、粗くなるためである。
【0034】
第2の要件は、3次元形状の表面を構成するメッシュのサイズが小さく、密集する場合にもエンコード、デコードできることである。複雑な3次元形状、細かな3次元形状は、その表面を構成するメッシュのサイズは小さく、密集したものになるからである。
【0035】
第3の要件は、デコード後のメッシュが交差しないこと、閉じられたメッシュ形状であることである。デコード後のメッシュが交差部分や開放部分があると、3次元形状を表せなくなるからである。
【0036】
第4の要件は、3次元形状の特徴を失うことなくエンコード、デコードできることである。3次元形状の各表面だけでなく、各表面同士の関係を維持し、全体形状が維持されている必要がある。
【0037】
第5の要件は、3次元形状のノード、エッジの関係、3次元形状のサイズの影響を受けずにエンコード、デコードできることである。メッシュデータによるトレーニングは、3次元形状のサイズ情報を有しない、形状のみの特徴をとらえる3次元形状記述子抽出器を製造するものである。そのため、サイズの影響を受けるべきではないからである。
【0038】
第6の要件は、同一の3次元形状について、エンコードされ、得られた3次元形状記述子が変動しないことである。エンコード、デコード結果に堅守性が求められるからである。
【0039】
第7の要件は、同一の3次元形状記述子がデコードされ、得られた3次元形状記述子が変動しないことである。上記第6の要件と同様の理由からである。
【0040】
第8の要件は、等方性変換(平行移動、均一スケーリング、回転)された3次元形状について、エンコード、デコードの結果が変動しないことである。上記第6、第7の要件と同様の理由からである。
【0041】
本実施例では、以上の要件から、エンコーダの選定には、三角形メッシュの接続をラプラシアン・スペクトル分析でエンコードした結果と、表面データをパッチに分割し、それらを集約した MPB (メッシュプーリングブロック)というデータセットで表せるLaplacianNetを採用した(Qiao,Y.L.,Gao,L.,Rosin,P.,Lai,Y.K.and Chen,X.,2020.Learning on 3D Meshes with Lapla cian Encoding and Pooling.IEEE Transactions on Visualization and Computer Graphics)。
【0042】
ただし、当該ライブラリのプログラムは、入力される形状データに多様性が必要との制約があることから、Sharp等によるLaplacianNetの改良(Sharp,N.and Crane,K.,2020,August.A Laplacian for nonmanifold triangle meshes. In Computer Graphics Forum (Vol.39,No.5,pp.69-80).)に基づき、入力データの準備等の問題が軽減されたものを採用した。なお、本発明に係る技術分野においては、ライブラリ中のプログラムの利用、改良は技術常識の範疇であるため、利用目的や機能に関する記載にとどめ、詳細については省略する。
【0043】
また、デコーダの選定には、AtrasNetを採用した(Groueix,T.,Fisher,M.,Kim,V.G.,Russell,B.C.and Aubry,M.,2018.A papier mache approach to learning 3d surface generation.In Proceedings of the IEEE conference on computer vision and pattern recognition(pp.216-224).)。AtrasNetは、3次元形状記述子を 3次元形状の表面要素値の集合としてとらえ、点群・ ボクセルメッシュを生成する方法とは異なり、3次元形状の表面を推測する方法であり、高精度・コンピュータのメモリ低消費・任意の解像度にデコードできるからである。
【0044】
また、当該ライブラリのデコーダは、交差しない閉じられたメッシュ形状にデコードすることができないケースがあるため、交差しない閉じられたメッシュ形状にデコードできるNeural Mesh Flowも併せて利用した(Gupta,K.,2020.Neural Mesh Flow:3D Manifold Mesh Generation via Diffeomorphic Flows.University of Californ ia,San Diego.)。具体的には、AtrasNetのプログラムによって表面形状の類推、Neural Mesh Fllowのプログラムによって類推結果から球状メッシュの作成、それを段階的に変形させることで、高精度・メモリ低消費・任意の解像度で、かつ、交差しない閉じられたメッシュ形状へのデコードが行われた。
【0045】
検証データによる検証は、検証データが用いられてエンコード、デコードされるものである(ステップS4)。エンコード前とデコード後の誤差が許容範囲に収束する場合は、トレーニングが終了し、許容範囲に収束しない場合は、エンコーダ、デコーダ、学習データが調整され、許容範囲に収束すると評価されるまでトレーニングが繰り返される(ステップS5、ステップS6)。
【0046】
なお、サイズ情報なしの形状記述子抽出器の製造方法を、後述のクラス分類に利用する際には、デコードしてエンコーダの誤差を収束させる代わりに、当該3次元形状記述子に係る3次元形状データが属するクラス名を学習させ、正しくクラス分類するように調整することで、エンコーダの誤差を収束させることもできる。
【0047】
図4は、メッシュ及び点群(後述)による3次元形状の表現イメージである。図4の左図のように、3次元形状の表面が隣接する三角メッシュの集合によって表現される。この表面を構成するそれぞれの三角メッシュ(より正確には、三角メッシュの頂点座標と接線データ)がエンコーダ、デコーダのトレーニングに供され、3次元形状記述子抽出器が製造される。上述のフローによって製造された3次元形状記述子抽出器は、3次元形状のサイズ情報は含まない、形状特徴に係る3次元形状記述子を抽出するものである。
【0048】
次に、点群データからの3次元形状記述子抽出器の製造について詳述する。
点群データから製造される3次元形状記述子抽出器は、形状的特徴に加え、3次元形状に係るサイズ情報を含む3次元形状記述子を抽出するものである。基本的な製造フローは、図1に示されたメッシュデータからの3次元形状記述子抽出器の製造と同様である(説明の便宜上、点群データからの3次元形状記述子抽出器の製造についても図1に基づく)。
【0049】
まず、3次元形状データが取得される(ステップS1)。ここで、取得される3次元形状データは、上述のメッシュデータにおけるデータの取得と同様である。
【0050】
次に、エンコーダ、デコーダのトレーニングのためのデータの前処理が行われる(ステップS2)。図5は、当該前処理の詳細を表す点群データの前処理フローである。まず、取得されたデータが、前処理のために読み込まれる(ステップS´21)。
【0051】
次に、読み込まれたデータがソリッドデータであるか否かが判断される(S´22)。本発明において必要とされるのは、表面データのみであるため、3次元形状の内部情報が含まれる場合、表面データのみが取り出される(ステップS´23)。
【0052】
次に、3次元形状の表面を表現するために、表面データとして取り出されたメッシュの表面から点群がサンプリングされる(ステップS´24)。ここで点群のサンプリングは、隣接するメッシュ面が形成する表面角度に応じて行われる。具体的には、隣接するメッシュ面によって形成される表面角度が鋭くなるほど、点群のサンプルが多く採取される。
【0053】
ここで、隣接するメッシュ面の表面角度について説明する。図6は、三次元形状の表面に設定された隣接メッシュのイメージである。図6は、五角柱形状の表面を構成するメッシュのうち、所定のメッシュ(メッシュA、メッシュB、メッシュC)に焦点を当てたものである。
【0054】
メッシュAは五角柱の上面の一部を構成し、メッシュBとメッシュCは当該五角柱の同一側面の一部を構成する。メッシュAとメッシュBは、当該五角柱形の上面と側面の際(きわ)の部分で隣接し、2面は直角を形成する。メッシュAとメッシュCも当該五角柱形の上面と側面の際(きわ)の1点で隣接し、2面は直角を形成する。メッシュBとメッシュCは、当該五角形の側面で隣接し、2面は平坦である。
【0055】
図7は、2つのメッシュの関係に着目した場合の、隣接メッシュ面の角度と点群サンプル数のイメージである。平坦な面でメッシュが隣接する場合が最も点群サンプル数が少なく、隣接メッシュ面の角度が鋭くなるほど点群サンプル数が多くなる。
【0056】
図6に示されたメッシュAとメッシュB、メッシュBとメッシュCのそれぞれの関係にのみ限定すると、メッシュAとメッシュBの表面角度は、メッシュBとメッシュCの表面角度よりも鋭いため、メッシュAとメッシュBから点群サンプル数が多くなる。表面角度が鋭いほど点群サンプル数が多くなるのは、表面角度が鋭いということは、3次元形状の際(きわ)が鋭角、すなわち、形状的特徴部分であると評価できるからである。
【0057】
上例は、2つのメッシュ面の関係に限定したものであるが、実際には、一つのメッシュが隣接するメッシュ数は複数になる。そのため、点群サンプル数は、それぞれの隣接メッシュ面との表面角度の関係がトータル的に反映されることになる。例えば、表面角度が鋭いものであったとしても、1点で隣接するメッシュ同士よりも、2点(メッシュの一辺)で隣接するメッシュの方が、三次元形状の際(きわ)となる領域をより包含すると評価される。そのため、2点で隣接するメッシュ面からの点群サンプル数が多くなるほど、3次元形状の把握により適したトレーニングデータとなる。
【0058】
また、一つのメッシュ面におけるサンプル箇所が調整されることで、より適した点群のサンプルが可能になる。図8は、メッシュ内のサンプル領域のイメージである。三角メッシュの一辺が隣接し、表面角度が鋭い場合、隣接辺部に近い領域がサンプル領域となり、三角メッシュの頂点が隣接し、表面角度が鋭い場合、隣接頂点部に近い領域がサンプル領域となる運用でもよい。
【0059】
このようにして採取された点群データで、エンコーダ、デコーダがトレーニングされる(ステップS3)。図9は、点群データによるエンコーダ、デコーダのトレーニングフローである。
【0060】
このトレーニングは、点群データを入力データとしてエンコードし、3次元形状記述子を出力データとして抽出するステップ(S´31)と、抽出された3次元形状記述子をデコードするステップ(S´32)と、デコード後のメッシュデータがエンコード前のメッシュデータの誤差を算出するステップ(S´33)と、必要に応じて、メッシュデータの再現度を高めるためのエンコーダ、デコーダの調整ステップ(S´31~S´33)とからなるもので、基本的な流れは、メッシュデータによるトレーニングと同じである。
【0061】
メッシュデータによるトレーニングの場合と同じく、エンコーダ、デコーダは、一般公開されているライブラリが利用され、改良・チューニングされたものである。本発明では、エンコーダ、デコーダとしては、点群データをエンコード、デコードできるものであればどのようなものが用いられても良い。
【0062】
ただし、エンコーダ、デコーダに求められる要件としては、(デコード結果がメッシュ形状であるため)メッシュデータのトレーニングにおけるエンコーダ、デコーダの選定に係る上述の要件1~8と同様であり、エンコーダ、デコーダの要件として、3次元形状から点群データを抽出できることを加え、選定された。
【0063】
本実施例では、以上の要件から、エンコーダの選定には、PointNetが利用された(Qi,C.R.,Su,h.,Mo,K.and Guibas,L.J.,2017.Pointnet:Deep learning on point sets for 3d classification and segmentation. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp.652-660).)。当該ライブラリのプログラムは、点群データを直接エンコードできる方式のものである。デコーダの選定には、AtrasNet及びNeural Mesh Flowが利用された。
【0064】
点群データによるエンコーダ、デコーダのトレーニング後の検証データによる検証(ステップS4)、検証データでの誤差の評価(ステップS5)、誤差が許容範囲に収束しない場合のトレーニング方法、設定の変更(ステップS6)に関しては、上述のメッシュデータの場合と同様である。
【0065】
以上が、メッシュデータによる3次元形状記述子抽出器の製造方法及び点群データによる3次元形状記述子抽出器の製造方法である。メッシュデータからの3次元形状記述子抽出器は、3次元形状データからサイズ情報を含まない3次元形状記述子を抽出する。一方、メッシュデータから点群データがサンプリングされ、点群データからの3次元形状記述子抽出器は、サイズ情報を含む3次元形状記述子を抽出する。
【0066】
3次元形状を把握するために、寸法情報が不要な場合は、サイズ情報を含まない3次元形状記述子の抽出によって、少ない情報で迅速な3次元形状の把握が可能となる。一方、3次元形状の寸法を含め、3次元形状を把握する場合は、サイズ情報を含む3次元形状記述子の抽出によって、より精緻に3次元形状の把握が可能となる。
【0067】
実際に、7つの分類からなる180種類のボルトを対象とした場合に形状の分類予測と形状の類似性比較が行われた。サイズ情報を含まない3次元形状記述子の抽出を通じて、従前の分類通りに7つに分類できること、サイズ情報を含む3次元形状記述子の抽出を通じて、180種類のボルトの類似性が比較され、同一ボルトの類似性が最も高くなることが確認できた。さらに、30種類のブラケットを対象に、サイズ情報を含む3次元形状記述子の抽出を通じて、30種類のブラケットの類似性が比較され、同一ブラケットの類似性が最も高くなることが確認された(以上の分類予測と類似性比較に係る詳細は実施例2にて後述)。
【0068】
<実施例2>
実施例1によって製造された3次元形状記述子抽出器による3次元形状の検索方法及び3次元形状検索システムについて実施例2として以下に説明する。
【0069】
図10は、3次元形状検索方法のフローである。当該方法により、既存の3次元形状データの中から所望の3次元形状を検索することが可能になる。具体的には、所望の3次元形状をドラフトデータ(例えば、3DCAD図面や3Dスキャナーでスキャンされた3D図面)とし、これに類似する既存の3次元形状データが格納されたライブラリ内からドラフトデータに係る3次元形状に類似する形状が検索される。
【0070】
3次元形状検索方法の大まかな流れは、ドラフトデータの作成ステップ(図1では省略)と、ドラフトデータの3次元形状データからサイズ情報を含まない3次元形状記述子の抽出ステップ(S10)と、抽出された3次元形状記述子に基づきドラフトデータが既存の3次元形状データのライブラリのどのクラスに相当するかを学習済みAIが予測するステップ(S20)と、学習済みAIによって予測されたクラス内に属する3次元形状データからサイズ情報を含む3次元形状記述子を抽出するステップ(S30)と、抽出された3次元形状記述子に基づき、学習済みAIによって予測されたクラス内に属する3次元形状データの中からドラフトデータの3次元形状との類似度を算出し、類似する3次元形状データを出力するステップ(S40)とからなる。
【0071】
各ステップについて、以下に詳述する。
まず、ドラフトデータが準備される。例えば、試作品がある場合、当該試作品が3Dスキャナーにより読取られ、3次元形状に係る表面データがドラフトデータとして作成される。
【0072】
次に、メッシュデータから製造された3次元形状記述子抽出器により、ドラフトデータの3次元形状記述子が抽出される(ステップS10)。この3次元形状記述子は、サイズ情報を含まないものである。
【0073】
次に、ドラフトデータの3次元形状が、既存の3次元形状データの中の、どの3次元形状のクラスに属するかAIモデルによって予測される(ステップS20)。AIモデルは、上述のメッシュデータによるトレーニングで製造された3次元形状記述子抽出器によって既存データから抽出された3次元形状記述子と、当該3次元形状記述子に係る3次元形状データが属するクラスのクラス名との学習により生成されたものである。
【0074】
図11は、学習モデルの生成に係る入力情報と出力情報の関係性イメージである。入力情報は、サイズ情報を含まない3次元形状記述子である。また、出力情報は、クラス名(3次元形状データの保有者等によって形状類型別に付された名称)である。このように、3次元形状のクラスを予測する学習モデルは、サイズ情報を含まない3次元形状記述子とクラス名が一対の学習データとして、あらかじめ学習、生成されたものである。
【0075】
図12は、既存の3次元形状データのライブラリのクラス別イメージである。図12では、ボルト部品がヘッド形状別にクラス分類されている(図中のグループ名がクラスに該当)。それぞれの3次元形状データには、クラス名がタグ付けされる。
【0076】
図13は、図10のステップS10とステップS20の概念図である。まず、メッシュデータから製造された3次元形状記述子抽出器によって、ドラフトデータからサイズ情報を含まない3次元形状記述子が抽出される。次に、学習済みモデルが、抽出されたサイズ情報を含まない3次元形状記述子を入力データとして、ドラフトデータに係る3次元形状が既存データのどのクラスに相当するのか出力(クラスを予測)する。
【0077】
ここでは、クラスの予測にとどまるが、予測されたクラス内の全データが類似データとして出力されるものでもよいし、サイズ情報を含まない3次元形状記述子に基づき類似度が算出され、類似データが出力されるものでもよい。
【0078】
次に、点群データから製造された3次元形状記述子抽出器により、ドラフトデータと予測されたクラス内の3次元形状データの3次元形状記述子が抽出される(ステップステップS30)。これらの3次元形状記述子は、サイズ情報を含むものである。
【0079】
次に、ドラフトデータから抽出された3次元形状記述子と予測されたクラス内の3次元形状データから抽出された3次元形状記述子の類似度が算出され、類似すると判断されたデータが出力される(ステップS40)。類似度の算出は、ドラフトデータとクラス内の3次元形状データから抽出された3次元形状記述子(N次元データ)間の距離(誤差)に基づいて行われる。このN次元データの同一次元間の差が2乗された数値の合算値の平方根(((X-Y+(X-Y+・・・・+(X-Y)の平方根)が距離になる。この距離が最も近いものが類似するものと判断され、当該3次元形状記述子に係る3次元形状データが出力される。図14は、図10のステップS30とステップS40の概念図である。また、3次元形状の類似度判断は、予測されたクラス内だけではなく、任意の範囲内で行うこともできる。
【0080】
以上の3次元形状の検索方法によって、第三者の要求(3次元形状の検索ニーズ)にも対応することが可能になる。図15は、3次元形状検索システム1の一例である。ここでは、ネットワークを介する、3次元形状検索を実現するためのサーバ2、サービス提供者(管理者端末2)とサービス利用者(利用者端末3)の関係が表現されている。
【0081】
サービス提供者は、管理者端末3から、又は、サービス利用者の利用者端末4から、サーバ2が備える3次元検索に係る機能を利用可能なように環境を整え、3次元形状の検索を実現する。ただし、図15は、あくまでシステムの一形態であり、本発明に係る3次元形状の検索方法に基づく限り、3次元形状システム1に関わるプレーヤーの数、端末やプログラム、データの所有、その他システム構成等が限定されるものではない。また、本発明は、装置等の名称によって解釈されるべきではなく、発明の構成要素から柔軟に解釈されるべきである。
【0082】
ここで、サーバ2は、制御部、記憶部を備え、制御部は、各種データの取得部、3次元形状データからサイズ情報を含まない3次元形状記述子又はサイズ情報を含む3次元形状記述子を抽出する抽出部、サイズ情報を含まない3次元形状記述子に基づき3次元形状のクラスを予測する予測部、サイズ情報を含む3次元形状記述子により3次元形状の類似度合いを類推する類推部等を備え、記憶部は、3次元形状データ、サイズ情報を含まない3次元形状記述子とクラス名の関係性についての学習済みモデル(上述の学習済みモデルと同様のモデル)等を備えたものが挙げられる(図省略)。また、サイズ情報を含まない3次元形状記述子とそのクラス名を教師データとして、学習を実行し、学習済みAIモデルを生成する学習部を備えたものも本発明に係るシステムの範疇である。ドラフトデータから得られたサイズ情報を含まない3次元形状記述子も、学習データとして利用され、学習済みモデルが強化、更新される。
【0083】
サービス利用者が既存の3次元形状データの中から、所望の3次元形状データを見つけたいケースでは、次の例として説明される。
【0084】
まず、サービス利用者は、所望のデータを得るために、ドラフトデータを作成する。このドラフトデータの3次元形状に類似するものが所望のデータとなる。サービス利用者は、利用者端末4にドラフトデータを入力する。次に、サーバ2の取得部が、利用者端末4からドラフトデータを取得する。次に、抽出部が、ドラフトデータのサイズ情報を含まない3次元形状記述子を抽出する。次に、予測部が学習済みモデルを参照し、抽出されたサイズ情報を含まない3次元形状記述子に基づき、ドラフトデータの3次元形状のクラス(既存の3次元形状データ内のクラス)を予測する。次に、抽出部が、ドラフトデータと予測クラス内の3次元形状データのサイズ情報を含む3次元形状記述子を抽出する。次に、類推部が、抽出されたサイズ情報を含む3次元形状記述子に基づき、ドラフトデータの3次元形状に類似するものを検索する。検索結果とその他必要な情報は、利用者端末4で取得される。サービル提供者は、必要に応じて、管理者端末3から、これらの操作の監視、サポート、代行検索等を行う。またサービス利用者は、クラスの予測を行わずに、ライブラリ内全ての3次元形状データと類似性判断を行うことも選択することができる。
【0085】
<実施例3>
実施例1及び実施例2を受けて、本発明に係る考察を実施例3として、以下に説明する。
【0086】
実施例1では、メッシュデータ、点群データを学習データとして、一般公開され、利用可能なエンコーダとデコーダがセットになったもののトレーニング、検証により、3次元形状記述子抽出器が製造された。本発明では、上述の各ライブラリが利用されたが、エンコーダ、デコーダは、限定されるものではない。上述の各要件の観点から、繰り返しのトレーニングを介し、エンコーダ、デコーダが評価、選定、チューニング等されればよい。
【0087】
また、本発明において、メッシュデータを学習データとする3次元形状記述子抽出器は、サイズ情報を含まない3次元形状記述子を抽出する。これによってデータ量が軽減され、3次元形状の特徴を簡易かつ精度よくとらえた3次元形状記述子の抽出が可能になった。
【0088】
また、本発明において、点群データを学習データとする3次元形状記述子抽出器は、サイズ情報を含む3次元形状記述子を抽出する。これまでは、メッシュデータを利用する方法、3次元表面からの点群をランダムにサンプリングする方法では、サイズ情報を含む3次元形状記述子の抽出は困難であった。これが、上述のメッシュデータ(3次元形状の表面を構成する隣接メッシュ)からの情報を活用することで、サイズ情報を含む3次元形状記述子を抽出することが可能になった。
【0089】
また、サイズ情報を含まない3次元形状記述子とサイズ情報を含む3次元形状記述子の両方が抽出可能になったことで、効率的な3次元形状の検索が可能になった。すなわち、大量の3次元形状データが存在する場合に、サイズ情報を含まない3次元形状記述子が形状別のクラス分けに利用され、サイズ情報を含む3次元形状記述子がクラス内の3次元形状検索に利用されることで、少ないデータ処理量での検索が可能となった。
【0090】
ただし、サイズ情報を含む3次元形状記述子の抽出は、所定のクラス外から行われることが否定されるものではない。例えば、利用者の要求に応じて、所望のクラスから3次元形状記述子が抽出されるものでもよいし、全クラスから抽出されるものでもよい。
【産業上の利用可能性】
【0091】
本発明は、3次元形状の検索に係る分野への利用が可能である。例えば、メーカーの設計部等で、所望する形状に近しい形状の図面をベースとして新たな図面が作成されるケースにおいて、大量の既存図面の中から簡易、迅速、高精度な図面検索方法、図面検索システムとして利用可能である。また、図面の所有数が少ない企業等において、図面ライブラリの中から有効活用できる図面の提供が、本発明の利用例として挙げられる。
【符号の説明】
【0092】
1 3次元形状検索システム
【要約】
【課題】 簡易かつ高精度に3次元形状を識別するための3次元形状記述子抽出器の製造方法を提供する。
【解決手段】 3次元形状から、その表面データを学習データとして採取し、前記学習データを用いて、所定のエンコーダ・デコーダをセットとしてトレーニングしたものを3次元形状記述子抽出器とするもので、前記トレーニングは、前記エンコーダで前記学習データから3次元形状記述子を抽出(エンコード)し、前記デコーダで前記3次元形状記述子を元に戻(デコード)し、前記エンコード前と前記デコード後の差(誤差)を評価し、前記誤差が収束するように前記エンコーダ・デコーダを調整するものであり、前記3次元形状から、その表面データとしてメッシュデータを採取し、所定のスケールにして、前記エンコーダ・デコーダをトレーニングする。
【選択図】図1

図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15