JP7473335B2 - ソリッドcadフィーチャを推測するためのニューラルネットワークの学習 - Google Patents
ソリッドcadフィーチャを推測するためのニューラルネットワークの学習 Download PDFInfo
- Publication number
- JP7473335B2 JP7473335B2 JP2019237149A JP2019237149A JP7473335B2 JP 7473335 B2 JP7473335 B2 JP 7473335B2 JP 2019237149 A JP2019237149 A JP 2019237149A JP 2019237149 A JP2019237149 A JP 2019237149A JP 7473335 B2 JP7473335 B2 JP 7473335B2
- Authority
- JP
- Japan
- Prior art keywords
- curve
- data
- parameter
- solid cad
- neural network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 239000007787 solid Substances 0.000 title claims description 191
- 238000013528 artificial neural network Methods 0.000 title claims description 76
- 238000012549 training Methods 0.000 title claims description 72
- 238000000034 method Methods 0.000 claims description 190
- 238000009826 distribution Methods 0.000 claims description 48
- 238000013527 convolutional neural network Methods 0.000 claims description 11
- 238000009877 rendering Methods 0.000 claims description 11
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 125000004122 cyclic group Chemical group 0.000 claims description 9
- 230000002787 reinforcement Effects 0.000 claims description 9
- 230000000306 recurrent effect Effects 0.000 claims description 8
- 238000013500 data storage Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 43
- 238000010801 machine learning Methods 0.000 description 40
- 230000015572 biosynthetic process Effects 0.000 description 24
- 238000013459 approach Methods 0.000 description 20
- 238000004519 manufacturing process Methods 0.000 description 19
- 238000013461 design Methods 0.000 description 18
- 238000005070 sampling Methods 0.000 description 15
- 239000013598 vector Substances 0.000 description 14
- 230000003993 interaction Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 230000002194 synthesizing effect Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 230000009471 action Effects 0.000 description 6
- 238000004088 simulation Methods 0.000 description 5
- 238000011960 computer-aided design Methods 0.000 description 4
- 238000010408 sweeping Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000007667 floating Methods 0.000 description 3
- 230000001788 irregular Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000003094 perturbing effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 238000009827 uniform distribution Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 206010003830 Automatism Diseases 0.000 description 1
- 241000208125 Nicotiana Species 0.000 description 1
- 235000002637 Nicotiana tabacum Nutrition 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 125000002015 acyclic group Chemical group 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000003796 beauty Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 235000013361 beverage Nutrition 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000001125 extrusion Methods 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000013341 scale-up Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/23—Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/046—Forward inferencing; Production systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
- G06V20/647—Three-dimensional objects by matching two-dimensional images to three-dimensional objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/18—Manufacturability analysis or optimisation for manufacturability
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- Geometry (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Medical Informatics (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Databases & Information Systems (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Biodiversity & Conservation Biology (AREA)
- Processing Or Creating Images (AREA)
Description
- ニューラルネットワークは、再帰型ニューラルネットワーク(RNN)セルを含み、各RNNセルは、それぞれの時間ステップで、ソリッドCADフィーチャのそれぞれの曲線の推測をするためのそれぞれのデータを出力し、
- 曲線の候補セットは、曲線タイプの離散セットと、各曲線タイプについて、各々がそれぞれのパラメータである1つまたは複数のパラメータ領域のそれぞれの離散セットとの間のセットプロダクトを含み、各パラメータ領域は、それぞれのパラメータのそれぞれのパラメータ値を有し、各曲線タイプは、1つまたは複数のパラメータ領域のそれぞれの離散セットの各々についてそれぞれのパラメータ値を用いて、曲線の候補セットのそれぞれの要素を形成し、
- ソリッドCADフィーチャのそれぞれの曲線の推測をするためのそれぞれのデータは、それぞれの曲線タイプの推測をするためのそれぞれの第1のデータと、1つまたは複数のパラメータ領域のそれぞれの離散セットの各々についてそれぞれのパラメータ値の推測をするためのそれぞれの第2のデータとを含み、
- 1つまたは複数の以前のRNNセルを有する各RNNセルは、1つまたは複数の以前のRNNセルによって出力されたそれぞれのデータから推測可能な情報を入力としてとり、
- ソリッドCADフィーチャは、スイープ操作を含み、方法は、スイープ操作の候補セットを提供するステップをさらに含み、学習するステップは、スイープ操作の候補セットにさらに基づき、
- ニューラルネットワークは、ソリッドCADフィーチャのスイープ操作の推測をするためのデータを出力するニューラルネットワーク部を含み、
- スイープ操作の候補セットは、スイープ曲線タイプの離散セットと、各スイープ曲線タイプについて、各々がそれぞれのパラメータである1つまたは複数のパラメータ領域のそれぞれの離散セットとの間のセットプロダクトを含み、各パラメータ領域は、それぞれのパラメータのそれぞれのパラメータ値を有し、各スイープ曲線タイプは、1つまたは複数のパラメータ領域のそれぞれの離散セットの各々についてそれぞれのパラメータ値を用いて、スイープ操作の候補セットのそれぞれの要素を形成し、
- ソリッドCADフィーチャのスイープ操作の推測をするためのデータは、スイープ曲線タイプの推測をするための第1のデータと、1つまたは複数のパラメータ領域のそれぞれの離散セットの各々についてパラメータ値の推測をするための第2のデータとを含み、
- ニューラルネットワークは、フリーハンド描画を表す画像を符号化する畳み込みニューラルネットワーク(CNN)を含み、
- データセットは、1つまたは複数のフリーハンド描画の各々について、フリーハンド描画に関係する3D形状を表すそれぞれのソリッドCADフィーチャをさらに含み、学習するステップは、損失Lsupを最小化することを含む監視トレーニングを含み、損失Lsupは、任意選択で、各ソリッドCADフィーチャが曲線のそれぞれのシーケンスを含むシーケンス巡回置換、および/または、各ソリッドCADフィーチャがスイープ操作を含む参照ベースのスケッチに対して不変であり、および/または、
- 学習するステップは、損失Lunsupを最小化することを含む非監視トレーニングを含み、損失Lunsupは、フリーハンド描画について、それぞれの推測可能なソリッドCADフィーチャから導出されたレンダリングとの相違にペナルティを課し、ニューラルネットワークは、任意選択で、確率の1つまたは複数の離散分布を出力し、最小化することは、各々が確率のそれぞれの離散分布を表す1つまたは複数の変数に関する損失Lunsupの勾配のバックプロパゲーションを含み、勾配は、補強アルゴリズムで得られる。
- 閉じられた輪郭をもたらす平面的な曲線のシーケンス(たとえば、シーケンス曲線)によって構成された閉じられた2D平面的スケッチと、
- それに続く、3D空間における2D平面的スケッチによって定義される閉じられたサーフェスをスイープすることによってソリッドを生成するスイープ操作(たとえば、スイープ曲線によって定義される)とによって(によってのみ)特に定義されてよい。すなわち、ソリッドは、閉じられたサーフェスが通過する体積によって定義される。
- 曲線シーケンスの長さは、N1より高くN2未満のすべての整数のセット上の均一な分布に従ってサンプリングされてよく、N1は、0より高く、および/または5未満、たとえば1に等しい「最小深度」整数であり、N2は、N1より高く、および/または100、50、または20未満、たとえば10に等しい「最大深度」整数である。
- グラウンドトゥルース曲線の1つまたは複数のそれぞれのパラメータ値と、その対応するそれぞれのデータの1つまたは複数のそれぞれのパラメータ値との相違、および/または
- (RNNセル時間ステップについてのみ)対応するグラウンドトゥルースの終了対継続状態に起因するそれぞれの確率(RNNセルによって出力された)の確率の低さ
換言すれば、監視ありトレーニングは、そのような損失を最小化することによって、各RNNセルおよびNN部によって出力されるそれぞれの確率を、対応するグラウンドトゥルース曲線タイプについて1(すなわち、低ではない)に近づけ、他の曲線タイプについて0(すなわち、低)に近づける、ならびに/または各RNNセルおよびNN部によって出力されるそれぞれの連続的なパラメータ値をそれらのグラウンドトゥルース値に近づける傾向となるように、ニューラルネットワークの重みに作用してよい。そのような損失は、問題の離散的/連続的な混合を正確に扱う。また、損失は、推測される曲線シーケンス長の、そのグラウンドトゥルース値との相違にペナルティを課す。
再帰型ニューラルネットワーク
例示的な機械学習プロセスは、再帰型ニューラルネットワーク(RNN)に基づく。再帰型ニューラルネットワークは、内部メモリ状態を有するディープニューラルネットワークである。したがって、再帰型ニューラルネットワークは、フィードフォワードニューラルネットワークとは異なり、時間的挙動を示すことができる。これらは、次の結果を予測するために過去のエントリを暗黙に考慮する。これらは、
例示的な機械学習プロセスの目的
ソリッドのフリーハンド描画を与えられて、例示的な機械学習プロセスは、フリーハンド描画を表す妥当なソリッドCADフィーチャを得ることを目的とする。例示的な機械学習プロセスは、
- 閉じられた輪郭をもたらす平面的な曲線のシーケンスによって構成された閉じられた2D平面的スケッチと、
- それに続く、3D空間における2D平面的スケッチによって定義される閉じられたサーフェスをスイープすることによってソリッドを生成するスイープ操作とによって(によってのみ)、3D空間に対して定義されたソリッドCADフィーチャに注目する。すなわち、ソリッドは、閉じられたサーフェスが通過する体積によって定義される。
例示的な機械学習プロセスの原理
例示的な機械学習プロセスは、ソリッドのフリーハンドパースペクティブ描画を入力としてとり、エンドトゥエンドディープラーニングモデルによってソリッドCADフィーチャを作り出す。
1.最初に、描画のコンパクトな潜在表現が畳み込みニューラルネットワーク(CNN)によって生成される。
2.次いで、ソリッドCADフィーチャがこの潜在表現から2つのステップで推測される。
例示的な機械学習プロセスの実装オプション
例示的な機械学習プロセスは、パラメトリック曲線のシーケンス、およびパラメトリックスイープ操作によって構成された任意のタイプの2D平面的スケッチに一般化することができる。
・Line(ライン):pstartおよびpendは、セグメントの2つの境界(すなわち、開始終了)点であるパラメータx=(pstart,pend)を有する直線ラインセグメント。
cx(u)=pstart+(pend-pstart)u,∀u∈[0,1]
・Arc(円弧):pstart、pinter、およびpendを通るパラメータx=(pstart,pinter,pend)を有する円弧セグメント。pstartおよびpendは、セグメントの2つの境界点であり、pinterは、中間点である。完全を期すために、付録セクションは、3点からの円弧式を提供する。
・Cubic Hermite interpolated segment(キュービックエルミート補間セグメント)。pstartおよびpendがセグメントの2つの境界点であり、tstartおよびtendは、それぞれそれらの接線であるパラメータx=(pstart,tstart,pend,tend)を有するキュービックエルミート補間によって定義されるセグメント。
cx(u)=(2u3-3u2+1)pstart+(u3-2u2+u)tstart+(-2u3+3u2)pend+(u3-u2)tend,∀u∈[0,1]
これらの曲線タイプを選択するための異なる理由は、以下を含む。
例示的な機械学習プロセスのパイプラインオプション
例示的な機械学習プロセスパイプラインの主なステップは、以下である。
1.合成的ラベル付きデータセット(必要な場合)を生成する
2.モデルをエンドトゥエンドでトレーニングする(監視あり、ラベル付きデータを伴う)
3.モデルをエンドトゥエンドでトレーニングする(監視なし、ラベル付けされていないデータを伴う)
4.推測
例示的な機械学習プロセスは、モデルをトレーニングする2つの異なる手法を企図する。ラベル付きデータが使用可能である(またはステップ1で合成的に生成される)とき、モデルは、監視あり式にトレーニングされてよい。そのような場合の例では、モデルは、監視あり式でのみであってよく、および/またはステップ3が省略されてもよい。そのような場合の代替例では、モデルは、合成的データで事前トレーニングされた後、監視なし式でトレーニングされてよい。そのような場合の代替として、モデルは、監視なし式でのみトレーニングされてよい。
例示的な機械学習プロセスの説明
1.合成的ラベル付きデータセット(必要な場合)を生成する
例示的な機械学習プロセスは、ラベル付きデータセットを、ソリッドの実際のジオメトリを生成することができるソリッドCADフィーチャに関連付けられたソリッドのフリーハンド描画のセットとみなす。そのようなデータセットは、使用可能であることがまれである。ない場合、乱数発生器で合成的にそれを生成することができる。
a.ソリッドCADフィーチャ生成
最初に、ソリッドCADフィーチャが所与の分布からサンプリングされる。分布は、任意の後の適用を考慮してユーザによって設計されてよい。例示的な機械学習プロセスは、この分布のソリッドCADフィーチャを取り出すための学習に特化されることになる。
・ シーケンスTiの長さは、
・
・
○曲線タイプ
○
○
○インスタンス化された曲線が、それ自体、または以前のインスタンス化された曲線の1つと交差する場合、プロセスは、そうでなくなるまで繰り返される。ある回数、たとえば10回の試行後、依然としていくつかの交点がある場合、サンプル全体が最初から再生成される。
・曲線タイプは、可能な曲線タイプの中で均一に選ばれる。
・パラメータ
○曲線タイプsiが何であれ、パラメータpstartは、原点で設定される。pendパラメータは、[-0.5,0.5]×[-0.5,0.5]×[0.1,1.0]において均一にサンプリングされる。
○曲線タイプsiに応じて、残りのパラメータが、2D平面的スケッチの曲線の場合と同じようにして、しかしそれらを強制的に「グラウンド平面」内にあるようにすることなしにサンプリングされる。
・規則的な直角柱
○このタイプの曲線は、Line曲線タイプ(
○シーケンスTiの長さは、
○ラインセグメントの境界点は、単項の円(
○スイープラインは、垂直になるように設定される(スイープ曲線のpendパラメータは、{0}×{0}×[0.1,1.0]で均一にサンプリングされる)。
・円柱
○2D平面的スケッチは、単項の円を形成する円弧によって構成される。曲線のタイプは、2D平面的スケッチのためのArc曲線タイプに制限され(
○スイープ操作曲線のタイプは、Line曲線タイプ(si=Line)に制限される。
○スイープラインは、垂直になるように設定される(スイープ曲線のpendパラメータは、{0}×{0}×[0.1,1.0]で均一にサンプリングされる)。
b.トレーニングサンプル生成
次いで、各ソリッドCADフィーチャについて、1つまたは複数の視点が、原点にて中心合わせされた球で均一にサンプリングされる。球の半径は、ソリッドCADフィーチャ全体がこの位置からレンダリングされ原点を見る画像において可視であるように選ばれてよい。
c.サンプル摂動
最後に、レンダリングされたエッジおよび輪郭は、フリーハンドストロークを真似るために乱されてよい。
・輪郭およびエッジは、svgフォーマットなどベクトルのようにして事前にレンダリングされる(すなわち、各レンダリングされたセグメントは、パラメトリック曲線に対応する)。
・各曲線は、任意の数の曲線(たとえば、ベジェ曲線)に分割される。
・ガウスノイズが曲線の各パラメータに追加される。
2.モデルをエンドトゥエンドでトレーニングする(監視あり、ラベル付きデータを伴う)
モデルをトレーニングするために、例示的な機械学習プロセスは、サイズNのデータセットを考える。iによってインデックス付けされたデータセットの各サンプルは、フリーハンド描画画像
モデル定義
モデルは、入力として、フリーハンド描画(合成的またはそうでないもの)
・フィーチャベクトル
・任意選択で、以前のRNNセルおよび/またはそれらの推定パラメータ
・フィーチャベクトル
・任意選択で、以前のRNNセルおよび/またはそれらの推定パラメータ
損失定義
簡単にするために、我々は、今後、推定分布およびパラメータを入力画像
Lsup(w)=Ltype(w)+Llength(w)+λLparameters(w) (式4)
ただし、λは重みパラメータである。それを、たとえば
損失修正:シーケンス巡回置換に対して不変にする
2つの曲線シーケンスは、一方が他方の巡回置換である、すなわち同じシーケンスであるが異なる点で開始する場合、等価である(同じ2Dベースのスケッチを生成する)。その結果、トレーニング中、例示的な機械学習プロセスのモデルは、正確な2Dベースのスケッチを生成するが、予測がグラウンドトゥルースの巡回置換であるので高い損失をもたらす曲線シーケンス分布を予測することがある。この問題を回避するために、我々は、式(式1)および(式3)内の損失を巡回置換に対して不変になるように修正する。
同等に2つのソリッドCADフィーチャが同じジオメトリ上に生じることがある。実際、第2の2D平面的サーフェスが、スイープ操作の端部境界に形成されることになる。その結果、この第2のサーフェスの2D平面的スケッチおよび元のスイープ操作に従うが逆であるスイープ操作によって定義されるソリッドCADフィーチャが、同じソリッド内にもたらされることになる。
モデルは、微調整される、または実データで最初から(すなわち、ステップ2を省略する)トレーニングされる可能性がある。
4.推測
モデルが学習された後で、推測は簡単なものであってよい。ユーザは、新しいフリーハンド描画を確立し、それをモデルに供給してよい。次いで、最も確からしい(推測された分布に従って)ソリッドCADフィーチャが生成されてよい。そうでない場合、いくつかの妥当なソリューションが、推測された分布からサンプリングによって計算されてよい。予測パラメータのいくつかは、閉じられた2Dベースのスケッチを確実にするために修正される(すなわち、シーケンスの曲線の終点は、次の曲線の開始点と一致していなければならない)。一実装では、プロセスは、強制的に
付録:3点からの円弧式
pstart、pinter、およびpendを空間内の3点とする。我々は、以下のように定義する。
○これらの点pstart、pinter、およびpendを通る平面Π
○Πに属する3次元の点を平面Πの局所2次元座標系における2次元の点に変換する適用
○
ただし、
○θstart<θinter<θendの場合には、α=θstartおよびβ=θend
○θstart<θend<θinterまたはθinter<θstart<θendの場合には、α=θendおよびβ=θstart+2π
○θinter<θend<θstartまたはθend<θstart<θinterの場合には、α=θstartおよびβ=θend+2π
○θend<θinter<θstartの場合には、α=θendおよびβ=θstart
Claims (14)
- 3D形状を表すフリーハンド描画から、前記3D形状を表すソリッドCADフィーチャの推測をするために構成されたニューラルネットワークを学習するためのコンピュータ実施方法であって、
それぞれの3D形状を各々が表すフリーハンド描画を含むデータセットを提供するステップと、
前記データセットに基づいて前記ニューラルネットワークを学習するステップと
を含み、
前記ソリッドCADフィーチャは、曲線のそれぞれのシーケンスを含むことを特徴とする、
方法。 - 当該方法は、曲線の候補セットを提供するステップをさらに含み、前記学習するステップは、曲線の前記候補セットにさらに基づくことを特徴とする請求項1に記載の方法。
- 前記ニューラルネットワークは、再帰型ニューラルネットワーク(RNN)セルを含み、各RNNセルは、それぞれの時間ステップ(t)で、ソリッドCADフィーチャのそれぞれの曲線の推測をするためのそれぞれのデータを出力することを特徴とする請求項2に記載の方法。
- 前記曲線の候補セットは、
曲線タイプの離散セットと、
各曲線タイプについて、各々がそれぞれのパラメータである1つまたは複数のパラメータ領域のそれぞれの離散セットとの間のセットプロダクトを含み、各パラメータ領域は、前記それぞれのパラメータのそれぞれのパラメータ値を有し、
各曲線タイプは、1つまたは複数のパラメータ領域の前記それぞれの離散セットの各々についてそれぞれのパラメータ値を用いて、前記曲線の候補セットのそれぞれの要素を形成し、任意選択で、
前記ソリッドCADフィーチャのそれぞれの曲線の推測をするための前記それぞれのデータは、それぞれの曲線タイプの推測をするためのそれぞれの第1のデータと、1つまたは複数のパラメータ領域の前記それぞれの離散セットの各々についてそれぞれのパラメータ値の推測をするためのそれぞれの第2のデータとを含むことを特徴とする請求項3に記載の方法。 - 1つまたは複数の以前のRNNセルを有する各RNNセルは、前記1つまたは複数の以前のRNNセルによって出力された前記それぞれのデータから推測可能な情報を入力としてとることを特徴とする請求項3または4に記載の方法。
- 前記ソリッドCADフィーチャは、スイープ操作を含み、当該方法は、スイープ操作の候補セットを提供するステップをさらに含み、前記学習するステップは、スイープ操作の前記候補セットにさらに基づくことを特徴とする請求項1ないし5のいずれか1つに記載の方法。
- 前記ニューラルネットワークは、前記ソリッドCADフィーチャの前記スイープ操作の推測をするためのデータを出力するニューラルネットワーク部を含むことを特徴とする請求項6に記載の方法。
- 前記スイープ操作の候補セットは、
スイープ曲線タイプの離散セットと、
各スイープ曲線タイプについて、各々がそれぞれのパラメータである1つまたは複数のパラメータ領域のそれぞれの離散セットとの間のセットプロダクトを含み、各パラメータ領域は、前記それぞれのパラメータのそれぞれのパラメータ値を有し、
各スイープ曲線タイプは、1つまたは複数のパラメータ領域の前記それぞれの離散セットの各々についてそれぞれのパラメータ値を用いて、前記スイープ操作の候補セットのそれぞれの要素を形成し、任意選択で、
前記ソリッドCADフィーチャの前記スイープ操作の推測をするための前記データは、スイープ曲線タイプの推測をするための第1のデータと、1つまたは複数のパラメータ領域の前記それぞれの離散セットの各々についてパラメータ値の推測をするための第2のデータとを含むことを特徴とする請求項7に記載の方法。 - 前記ニューラルネットワークは、前記フリーハンド描画を表す画像を符号化する畳み込みニューラルネットワーク(CNN)を含むことを特徴とする請求項1ないし8のいずれか1つに記載の方法。
- 前記データセットは、1つまたは複数のフリーハンド描画の各々について、前記フリーハンド描画に関係する、前記3D形状を表すそれぞれのソリッドCADフィーチャをさらに含み、前記学習するステップは、損失Lsupを最小化することを含む監視トレーニングを含み、前記損失Lsupは、任意選択で、
各ソリッドCADフィーチャが曲線のそれぞれのシーケンスを含む、シーケンス巡回置換、および/または
各ソリッドCADフィーチャがスイープ操作を含む、参照ベースのスケッチ
に対して不変であり、ならびに/または、
前記学習するステップは、損失Lunsupを最小化することを含む、非監視トレーニングを含み、前記損失Lunsupは、フリーハンド描画について、それぞれの推測可能なソリッドCADフィーチャから導出されたレンダリングとの相違にペナルティを課し、前記ニューラルネットワークは、任意選択で、確率の1つまたは複数の離散分布を出力し、前記最小化することは、各々が確率のそれぞれの離散分布を表す1つまたは複数の変数に関する前記損失Lunsupの勾配のバックプロパゲーションを含み、前記勾配は、補強アルゴリズムで得られることを特徴とする請求項1ないし9のいずれか1つに記載の方法。 - 請求項1ないし10のいずれか1つに記載の方法に従って学習可能なニューラルネットワークを表すデータ構造の使用のためのコンピュータ実施方法であって、
3D形状を表すフリーハンド描画を提供するステップと、
前記ニューラルネットワークを前記フリーハンド描画に適用するステップと、
前記適用するステップの結果に基づいて、前記3D形状を表すソリッドCADフィーチャを推測するステップと
を含むことを特徴とする方法。 - 請求項1ないし10のいずれか1つに記載の方法を実施するための命令を含むことを特徴とするコンピュータプログラム。
- 請求項12に記載のプログラムが記録されたデータ記憶媒体を備えたことを特徴とするデバイス。
- 前記データ記憶媒体に結合されたプロセッサをさらに備えたことを特徴とする請求項13に記載のデバイス。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP18306886.5 | 2018-12-29 | ||
EP18306886.5A EP3675062A1 (en) | 2018-12-29 | 2018-12-29 | Learning a neural network for inference of solid cad features |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020109661A JP2020109661A (ja) | 2020-07-16 |
JP7473335B2 true JP7473335B2 (ja) | 2024-04-23 |
Family
ID=65200561
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019237149A Active JP7473335B2 (ja) | 2018-12-29 | 2019-12-26 | ソリッドcadフィーチャを推測するためのニューラルネットワークの学習 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20200210845A1 (ja) |
EP (1) | EP3675062A1 (ja) |
JP (1) | JP7473335B2 (ja) |
CN (1) | CN111382530A (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3671660A1 (en) * | 2018-12-20 | 2020-06-24 | Dassault Systèmes | Designing a 3d modeled object via user-interaction |
EP3675063A1 (en) * | 2018-12-29 | 2020-07-01 | Dassault Systèmes | Forming a dataset for inference of solid cad features |
EP3674984B1 (en) * | 2018-12-29 | 2024-05-15 | Dassault Systèmes | Set of neural networks |
EP3958162A1 (en) | 2020-08-20 | 2022-02-23 | Dassault Systèmes | Neural network for outputting a parameterized 3d model |
EP3958182A1 (en) | 2020-08-20 | 2022-02-23 | Dassault Systèmes | Variational auto-encoder for outputting a 3d model |
JP2023548654A (ja) * | 2020-10-08 | 2023-11-20 | ナイキ イノベイト シーブイ | 履き物デジタルアセットを生成するためのコンピュータアーキテクチャ |
WO2023128027A1 (ko) | 2021-12-30 | 2023-07-06 | 주식회사 리콘랩스 | 비정형 스케치 기반 3차원 모델링 방법 및 시스템 |
DE102022108379A1 (de) | 2022-04-07 | 2023-10-12 | Dr. Ing. H.C. F. Porsche Aktiengesellschaft | Verfahren, System und Computerprogrammprodukt zum optimierten Konstruieren und/oder Designen einer technischen Komponente |
EP4266257A1 (en) * | 2022-04-21 | 2023-10-25 | Dassault Systèmes | 3d reconstruction from images |
US12056799B2 (en) * | 2022-04-28 | 2024-08-06 | Dassault Systemes Solidworks Corporation | Converting images to sketches that are modifiable using computer-aided design (CAD) software |
DE102022113702A1 (de) | 2022-05-31 | 2023-11-30 | Dr. Ing. H.C. F. Porsche Aktiengesellschaft | Verfahren, System und Computerprogrammprodukt zum autonomen intuitiven Konstruieren eines technischen Bauteils für eine Entität |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150193972A1 (en) | 2013-10-17 | 2015-07-09 | Cherif Atia Algreatly | Method of 3d modeling |
JP2017142780A (ja) | 2015-12-07 | 2017-08-17 | ダッソー システムズDassault Systemes | 二次元画像からの三次元モデル化オブジェクトの認識 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0896138A (ja) * | 1994-09-20 | 1996-04-12 | Just Syst Corp | 形状認識装置 |
JPH08335279A (ja) * | 1995-06-08 | 1996-12-17 | Olympus Optical Co Ltd | 設計支援システム |
-
2018
- 2018-12-29 EP EP18306886.5A patent/EP3675062A1/en active Pending
-
2019
- 2019-12-26 US US16/727,413 patent/US20200210845A1/en active Granted
- 2019-12-26 JP JP2019237149A patent/JP7473335B2/ja active Active
- 2019-12-30 CN CN201911396199.3A patent/CN111382530A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150193972A1 (en) | 2013-10-17 | 2015-07-09 | Cherif Atia Algreatly | Method of 3d modeling |
JP2017142780A (ja) | 2015-12-07 | 2017-08-17 | ダッソー システムズDassault Systemes | 二次元画像からの三次元モデル化オブジェクトの認識 |
Non-Patent Citations (1)
Title |
---|
DELANOY,Johanna,et al.,3D Sketching using Multi-View Deep Volumetric Prediction,ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY,米国,2017年07月26日,pp.1-15 |
Also Published As
Publication number | Publication date |
---|---|
CN111382530A (zh) | 2020-07-07 |
EP3675062A1 (en) | 2020-07-01 |
JP2020109661A (ja) | 2020-07-16 |
US20200210845A1 (en) | 2020-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7473335B2 (ja) | ソリッドcadフィーチャを推測するためのニューラルネットワークの学習 | |
JP7473336B2 (ja) | ソリッドcadフィーチャを推測するためのニューラルネットワークの学習 | |
EP3674983B1 (en) | Machine-learning for 3d modeled object inference | |
JP7491685B2 (ja) | ニューラルネットワークのセット | |
JP7509537B2 (ja) | 編集可能なフィーチャツリーの推測のためのデータ集合を形成すること | |
US11869147B2 (en) | Neural network for outputting a parameterized 3D model | |
US11436795B2 (en) | Learning a neural network for inference of editable feature trees | |
US12002157B2 (en) | Variational auto-encoder for outputting a 3D model | |
EP3671660A1 (en) | Designing a 3d modeled object via user-interaction | |
US11893687B2 (en) | Segmenting a 3D modeled object representing a mechanical assembly | |
CN113205609A (zh) | 变形基础学习 | |
CN113378448A (zh) | 确定3d建模对象变形 | |
US20230342507A1 (en) | 3d reconstruction from images |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221206 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231121 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231128 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240227 |
|
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: 20240312 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240411 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7473335 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |