CN115702400A - 加工程序检索装置及加工程序检索方法 - Google Patents

加工程序检索装置及加工程序检索方法 Download PDF

Info

Publication number
CN115702400A
CN115702400A CN202080101828.XA CN202080101828A CN115702400A CN 115702400 A CN115702400 A CN 115702400A CN 202080101828 A CN202080101828 A CN 202080101828A CN 115702400 A CN115702400 A CN 115702400A
Authority
CN
China
Prior art keywords
dimensional model
dimensional
machining
model
data
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.)
Granted
Application number
CN202080101828.XA
Other languages
English (en)
Other versions
CN115702400B (zh
Inventor
松原晋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of CN115702400A publication Critical patent/CN115702400A/zh
Application granted granted Critical
Publication of CN115702400B publication Critical patent/CN115702400B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4093Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • 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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2237Vectors, bitmaps or matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/909Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/17Mechanical parametric or variational design
    • 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/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • 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
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36225Select and insert program from library, select case, variant
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36337Select similar shape and derive motion defining sentences from original shape
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/16Customisation or personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/06Recognition of objects for industrial automation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Physics (AREA)
  • Fuzzy Systems (AREA)
  • Library & Information Science (AREA)
  • Computational Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Automation & Control Theory (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Numerical Control (AREA)

Abstract

加工程序检索装置(100)具有模型变换部(20),其取得表示三维空间中的多个分割空间各自是位于第1三维模型的内部、外部或者边界部之中的哪个部分的第1位置信息,和在第2三维模型各自中,表示多个分割空间各自是位于第2三维模型的内部、外部或者边界部之中的哪个部分的多个第2位置信息。加工程序检索装置具有:相似度判定部(40),其对第1位置信息和第2位置信息进行比较,由此对第1三维模型和第2三维模型的形状的相似度进行判定;以及登记程序取得部(50),其基于相似度判定部中的判定结果,从数据库检索而取得用于对多个第2三维模型之中的形状的相似度相对高的第2三维模型进行机械加工的加工程序。

Description

加工程序检索装置及加工程序检索方法
技术领域
本发明涉及对与加工对象形状类似的形状的加工程序进行检索的加工程序检索装置及加工程序检索方法。
背景技术
由数控(Numerical Control:NC)装置等控制装置进行控制的工作机械将加工对象机械加工为各种加工成品形状。为了通过工作机械执行机械加工,控制装置需要按照加工程序对工作机械进行控制。但是,控制装置所使用的用于对工作机械进行控制的加工程序的创建需要大量的时间及经验,因此对加工程序的创建进行辅助的创建辅助功能的充实化不断发展。例如,作为加工程序的创建辅助功能,存在用户一边观察附图、一边将加工对象的尺寸设定于NC画面从而创建加工程序的功能,以及将计算机辅助设计(Computer-Aided Design:
CAD)数据直接读入而对如NC程序这样的加工程序进行创建的功能等。这些创建辅助功能是以从头开始创建加工程序为前提的,即使是在对与过去创建过加工程序的加工成品形状类似形状的加工成品形状进行加工的情况下,也要从头开始创建加工程序,因此加工程序的创建效率差。
在由用户创建加工程序时,通过沿用与上述类似形状的加工成品形状相对应的加工程序,从而创建效率提高,但为了沿用加工程序,需要判别新加工的加工成品形状是否与过去创建过加工程序的加工成品形状类似。
专利文献1所记载的检索系统公开了与三维形状检索相关的技术,即,针对三维形状数据库,对三维形状模型的一部分或者整体进行检索询问,将与检索询问中的部分的形状类似的三维形状从三维数据库选出。具体地说,检索系统作为前处理而将三维物体变换为点群,通过多视点绘制而提取部分形状,作为特征量提取而进行该部分形状的姿态归一化,使用来自多视点的法线直方图而求出第一特征矢量。而且,检索系统针对检索询问,将三维物体变换为点群,通过多视点绘制而提取部分形状,作为特征量提取而进行该部分形状的姿态归一化,使用来自多视点的法线直方图而求出第二特征矢量。检索系统在三维形状的检索时,求出第一特征矢量及第二特征矢量间的差异度,通过该差异度的值将与检索询问中的部分的形状类似的三维形状从三维数据库选出。
专利文献1:日本特开2018-136642号公报
发明内容
但是,在上述专利文献1的技术中,将表示三维物体的三维形状模型变换为点群,在通过多视点绘制而变换为图像后,使用法线直方图而提取出特征量。因此,在专利文献1的技术中存在下述问题,即,无法检测出包含通过多视点绘制变换后的图像中表现不出的三维物体的形状内包部及形成于三维物体的孔等所涉及的空间在内的三维形状。
本发明就是鉴于上述情况而提出的,其目的在于得到从数据库自动且容易地检索对与工作机械中的机械加工的加工成品形状类似的形状进行加工的加工程序的加工程序检索装置。
为了解决上述的课题,并达到目的,本发明所涉及的加工程序检索装置将数据库作为检索对象,该数据库登记有在工作机械中用于对加工对象进行机械加工的不同的多个加工程序。加工程序检索装置具有模型变换部,其将表示新创建加工程序的加工对象的加工成品形状的三维模型即第1三维模型,和表示通过登记于数据库的多个加工程序进行机械加工后的多个加工对象的加工成品形状的三维模型即多个第2三维模型,配置于由X轴、Y轴、Z轴这3轴构成,在分别沿3轴的多个分割空间形成的假想的三维空间,在第1三维模型中,取得表示三维空间中的多个分割空间各自是位于第1三维模型的内部、外部或者边界部之中的哪个部分的第1位置信息,和在多个第2三维模型各自中,表示多个分割空间各自是位于第2三维模型的内部、外部或者边界部之中的哪个部分的多个第2位置信息。加工程序检索装置具有:相似度判定部,其对第1位置信息和第2位置信息进行比较,由此对第1三维模型和第2三维模型的形状的相似度进行判定;以及登记程序取得部,其基于相似度判定部中的判定结果,从数据库检索而取得用于对多个第2三维模型之中的形状的相似度相对高的第2三维模型进行机械加工的加工程序。
发明的效果
本发明所涉及的加工程序检索装置具有下述效果,即,能够从数据库自动且容易地检索对与工作机械中的机械加工的加工成品形状类似的形状进行加工的加工程序。
附图说明
图1是表示实施方式1所涉及的加工程序检索装置的结构的图。
图2是表示实施方式1所涉及的加工程序检索装置所具有的模型变换部的结构的图。
图3是表示实施方式1所涉及的加工程序检索装置所具有的相似度判定部的结构的图。
图4是表示实施方式1所涉及的加工程序检索装置的处理顺序的流程图。
图5是表示实施方式1所涉及的模型变换部的网格数据生成部的处理顺序的流程图。
图6是描绘出由实施方式1所涉及的模型变换部的网格数据生成部取得的三维模型数据所示的三维模型的一个例子的图。
图7是表示将由实施方式1所涉及的模型变换部的网格数据生成部取得的三维模型数据所示的三维模型配置于网格空间上而描绘出的一个例子的图。
图8是表示实施方式1所涉及的模型变换部的数据压缩部的处理顺序的流程图。
图9是表示实施方式1所涉及的相似度判定部的处理顺序的流程图。
图10是表示实施方式1中的新三维模型的例子的图。
图11是表示实施方式1中的登记三维模型的例子的图。
图12是表示从图11所示的20个登记三维模型,作为与图10所示的新三维模型类似的登记三维模型而检索出的登记三维模型的图。
图13是表示使用了实施方式1中的机器学习的相似度判定部的结构的图。
图14是表示实施方式1所涉及的相似度判定部的处理顺序的流程图。
图15是表示在实施方式1中通过k-means法将20个三维模型聚类为4个群集的例子中的分类为第1群集的三维模型的图。
图16是表示在实施方式1中通过k-means法将20个三维模型聚类为4个群集的例子中的分类为第2群集的三维模型的图。
图17是表示在实施方式1中通过k-means法将20个三维模型聚类为4个群集的例子中的分类为第3群集的三维模型的图。
图18是表示在实施方式1中通过k-means法将20个三维模型聚类为4个群集的例子中的分类为第4群集的三维模型的图。
图19是表示实施方式1所涉及的机器学习部的结构的图
图20是表示实施方式1所涉及的机器学习装置所使用的神经网络的结构的图。
图21是表示将相对于图10所示的新三维模型的相似度按照从高到低的顺序排序后的登记三维模型的图。
图22是表示在图1所示的加工程序检索装置中执行数据扩展的模型变换部的结构的图。
图23是表示通过实施方式1所涉及的模型变换部执行的数据扩展处理的流程图。
图24是表示实施方式2所涉及的加工程序检索装置的结构的图。
图25是表示实施方式2所涉及的加工程序检索装置所具有的差异识别部的结构的图。
图26是表示实施方式2所涉及的差异识别部的处理顺序的流程图。
具体实施方式
下面,基于附图,对实施方式所涉及的加工程序检索装置及加工程序检索方法详细地进行说明。此外,本发明并不由该实施方式限定。
实施方式1
图1是表示实施方式1所涉及的加工程序检索装置100的结构的图。加工程序检索装置100是对成为加工对象的工件的加工后的形状类似的加工程序进行检索的计算机。
加工程序检索装置100与CAD系统110连接,从CAD系统110取得三维模型数据。三维模型数据是表示成为加工对象的工件的加工后的形状即三维的加工成品形状的加工形状数据。即,三维模型能够换言之是加工对象的加工成品形状。在三维模型数据中包含工件的加工成品形状的信息及工件的加工成品形状的几何信息。几何信息是坐标系中的三维形状的信息。加工程序检索装置100基于所取得的三维模型数据,对与三维模型数据所示的形状类似的形状的三维模型进行检索,将检索出的三维模型和与该三维模型相对应的加工程序进行输出。下面,有时将三维模型简称为模型。
加工程序检索装置100具有被输入信息的输入部11、对信息进行显示的显示部12、将信息输出的输出部13、执行各种处理的处理器14和对信息进行存储的存储器15。
CAD系统110通过三维(three-dimensional:3D)CAD,对表示成为加工对象的工件的三维的加工成品形状的加工形状数据进行创建。
输入部11从加工程序检索装置100的外部的外部装置即CAD系统110,对由通过CAD系统110创建的CAD数据构成的三维模型数据进行接收,发送至后面记述的模型变换部20。即,输入部11作为输入加工形状数据的加工形状数据输入部起作用。
但是,三维模型数据并不限定于CAD数据。三维模型数据只要是在加工程序检索装置100中能够解释的数据即可。显示部12通过画面对信息进行显示而提示给用户。输出部13将信息输出至加工程序检索装置100的外部而提示给用户。
处理器14是CPU(Central Processing Unit)、处理装置、运算装置、微处理器、微型计算机或DSP(Digital Signal Processor)。存储器15包含RAM(Random AccessMemory)、ROM(Read Only Memory)、闪存、EPROM(Erasable Programmable Read OnlyMemory)或者EEPROM(注册商标)(Electrically Erasable Programmable Read OnlyMemory)、HDD(Hard Disk Drive)或者SSD(Solid State Drive)。加工程序检索装置100的处理程序储存于存储器15。处理器14执行在存储器15中储存的程序。
存储器15对数据库60和加工程序检索装置100的未图示的处理程序等进行存储。
数据库60对三维模型数据进行存储。在本实施方式1中,对数据库60存储有模型数据D1至模型数据DN(N为自然数)的情况进行说明。模型数据D1至模型数据DN各自包含有三维模型数据和对该三维模型数据所示的加工成品形状进行加工的加工程序。如上所述,数据库60存储有多组三维模型数据和加工程序的组合。三维模型数据的加工程序是在对与三维模型数据相对应的加工成品形状进行加工时使用的程序。模型数据D1至模型数据DN各自从输入部11输入而存储于数据库60。
此外,在下面的说明中,在无需对模型数据D1至模型数据DN进行识别的情况下,有时将模型数据D1至模型数据DN的任意者称为模型数据Dx。第x(x为1至N的任意的自然数)模型数据Dx包含有第x三维模型数据和与第x三维模型数据相对应的加工程序。如上所述,在模型数据Dx中,第x三维模型数据和第x加工程序相关联。即,在数据库60中将三维模型和在对与该三维模型相对应的工件进行加工时使用的加工程序相关联地存储。
此外,数据库60也可以配置于加工程序检索装置100的外部。即,数据库60也可以是加工程序检索装置100的外部装置。
在图1示出了通过使用处理器14而实现的加工程序检索装置100的功能结构。加工程序检索装置100具有模型变换部20、登记模型取得部30、相似度判定部40和登记程序取得部50。
登记模型取得部30从在数据库60中登记的模型数据Dx取得三维模型数据。登记模型取得部30将所取得的三维模型数据发送至模型变换部20。登记模型取得部30复制而取得数据库60的三维模型数据。即,登记模型取得部30在数据库60中保留三维模型数据而取得三维模型数据。
模型变换部20进行三维模型数据所示的三维模型的数据变换。模型变换部20将从输入部11取得的三维模型数据所示的三维模型和从登记模型取得部30取得的三维模型数据所示的三维模型数据变换为网格数据。模型变换部20将数据变换后的网格数据发送至相似度判定部40。
在下面的说明中,有时将由模型变换部20从输入部11取得的三维模型数据所示的三维模型称为新三维模型,将由模型变换部20从登记模型取得部30取得的三维模型数据所示的三维模型称为登记三维模型。另外,有时将与新三维模型相对应的网格数据称为新网格数据,将与登记三维模型相对应的网格数据称为登记网格数据。另外,如果将新三维模型设为第1三维模型,则登记三维模型可以说是第2三维模型。
图2是表示实施方式1所涉及的加工程序检索装置100所具有的模型变换部20的结构的图。模型变换部20具有网格数据生成部21和数据压缩部22。
网格数据生成部21基于三维模型数据所示的三维模型而生成网格数据。网格数据是将三维模型的形状针对三维坐标中的假想的每个三维空间即网格进行分割而数据化得到的。网格数据生成部21生成新三维模型的新网格数据,将新三维模型变换为新网格数据。另外,网格数据生成部21生成登记三维模型的登记网格数据,将登记三维模型变换为登记网格数据。在创建网格数据时使用的假想的三维空间由X轴、Y轴、Z轴这3轴构成。而且,假想的三维空间是由分别沿这3轴对假想的三维空间进行分割的多个分割空间形成的。网格数据是在该假想的三维空间对三维模型进行配置而创建的。即,新网格数据可以说是第1位置信息,该第1位置信息表示假想的三维空间中的分割为多个的多个分割空间各自位于第1三维模型的内部、外部或者边界部之中的哪个部分。另外,登记网格数据可以说是第2位置信息,该第2位置信息表示假想的三维空间中的分割为多个的多个分割空间各自位于第2三维模型的内部、外部或者边界部之中的哪个部分。
数据压缩部22从在网格数据生成部21中生成的登记网格数据及新网格数据,对预先决定的多个选择数的网格块的网格数据进行选择,将多个选择数的网格数据压缩为1个压缩网格数据。
相似度判定部40对从输入部11取得的三维模型数据所示的三维模型和从数据库60取得的三维模型数据所示的三维模型的形状的相似度进行判定。相似度判定部40对新三维模型的网格数据和登记网格数据之间的网格数据的相似度进行判定,由此对新三维模型和登记网格数据的形状的相似度进行判定。
图3是表示实施方式1所涉及的加工程序检索装置100所具有的相似度判定部40的结构的图。相似度判定部40具有哈希值计算部41、汉明距离计算部42和汉明距离排序部43。
哈希值计算部41根据在模型变换部20中对三维模型进行变换后的网格数据而对哈希值进行计算。哈希值计算部41将计算出的哈希值发送至汉明距离计算部42。
哈希值是通过根据原始的数据而预先决定的计算顺序所求出的没有规则性的固定长度的值。用于求出哈希值的计算顺序被称为哈希函数、汇总函数、消息摘要函数等。哈希值不依赖于原始的数据的长度而是成为预先决定的长度,根据相同的数据必定得到相同的哈希值。另一方面,哈希值从少许不同的数据多个数据得到完全不同的哈希值。哈希值是经由不可逆而包含信息量的缺损的计算过程而计算的。因此,无法根据哈希值对原始的数据进行复原。
汉明距离计算部42根据新三维模型的哈希值和1个登记三维模型的哈希值对汉明距离进行计算。汉明距离是在将位数相同的2个值相比时,在2个值中处于对应的位置的不同值的位数的个数。在将位数相同的2个值相比时,判定为汉明距离小是相似度高。汉明距离计算部42将计算出的汉明距离发送至汉明距离排序部43。
汉明距离排序部43基于在汉明距离计算部42中计算出的全部登记三维模型的汉明距离,判定全部登记三维模型相对于新三维模型的相似度。
登记程序取得部50基于在相似度判定部40中判定出的相似度,从数据库60取得与新三维模型所示的形状相似度高的登记三维模型的加工程序。即,登记程序取得部50可以说基于相似度判定部40中的判定结果,从数据库60检索而取得用于对多个第2三维模型之中的形状的相似度相对高的第2三维模型进行机械加工的加工程序。登记程序取得部50将相似度高的登记三维模型和与该登记三维模型相关联的加工程序进行关联而输出至输出部13。
接下来,对由加工程序检索装置100执行的检索处理的整体的处理顺序进行说明。图4是表示实施方式1所涉及的加工程序检索装置100的处理顺序的流程图。
在步骤S1中,模型变换部20经由输入部11从CAD系统110取得三维模型数据。
在步骤S2中,模型变换部20取得在数据库60中登记的全部三维模型数据。具体地说,登记模型取得部30从数据库60取得全部三维模型数据,发送至模型变换部20。
在步骤S3中,模型变换部20将三维模型数据所示的三维模型数据变换为网格数据。即,模型变换部20将从CAD系统110取得的三维模型数据所示的新三维模型和从数据库60取得的三维模型数据所示的登记三维模型数据变换为网格数据。
对由模型变换部20执行的处理进行说明。首先,对由网格数据生成部21执行的处理进行说明。图5是表示实施方式1所涉及的模型变换部20的网格数据生成部21的处理顺序的流程图。模型变换部20将从输入部11取得的新三维模型和由登记模型取得部30从数据库60取得的全部登记三维模型变换为网格数据。
如上所述,在数据库60中,将三维模型数据和对该三维模型数据所示的加工成品形状进行加工的加工程序相关联地存储。登记模型取得部30与数据库60连接,从数据库60取得登记的全部三维模型数据。
在步骤S10中,网格数据生成部21将三维模型数据所示的三维模型配置于预先决定的假想的三维空间即网格空间上。具体地说,网格数据生成部21生成从输入部11取得的三维模型数据所示的三维模型的形状,X轴、Y轴、Z轴这3轴配置于由预先决定的长度构成的网格空间上。网格空间是假想的三维空间,是由预先决定的长度构成的多个分割空间,即网格分别沿3轴三维地排列而成的空间。即,网格数据生成部21将三维模型由预先决定出3轴的长度构成,配置于排列有多个网格的网格空间的坐标系上。
图6是描绘出由实施方式1所涉及的模型变换部20的网格数据生成部21取得的三维模型数据所示的三维模型的一个例子的图。图7是表示将由实施方式1所涉及的模型变换部20的网格数据生成部21取得的三维模型数据所示的三维模型配置于网格空间上而描绘出的一个例子的图。
网格空间例示出作为网格将例如1mm四方的立方体作为1个网格块,在三维坐标上在X轴方向、Y轴方向及Z轴方向各自的方向各配置有200个网格块,由200×200×200=8000000个网格块构成的假想三维空间。网格块的大小及个数根据使用的三维模型而适当变更即可。
在步骤S20中,网格数据生成部21在网格块的顶点进行三维模型的形状的内外判定。具体地说,网格数据生成部21关于网格空间的全网格块各自的顶点的三维坐标值,判定是处于三维模型的内部、还是处于三维模型的外部或者处于三维模型的边界。网格块的顶点的三维坐标值是处于三维模型的内部、外部或者边界之中的哪一者的判定,能够通过进行公知的实体模型的形状的内外判定处理而进行。
网格数据生成部21关于网格块的顶点的三维坐标值,在判定为处于三维模型的内部的网格块的顶点分配值:1。网格数据生成部21关于网格块的顶点的三维坐标值,在判定为处于三维模型的外部的网格块的顶点分配值:0。网格数据生成部21关于网格块的顶点的三维坐标值,在判定为处于三维模型的边界的网格块的顶点分配值:0.5。
在步骤S30中,网格数据生成部21将分配给1个网格块的全顶点的值的总和除以顶点数,将计算出的值分配给网格块。下面,将分配给网格块的值称为网格数据。网格数据生成部21针对全部网格块而实施以上的处理,由此生成从输入部11取得的新三维模型的新网格数据,将新三维模型变换为新网格数据。由此,在第1三维模型中,能够作为表示三维空间中的分割空间各自是位于三维模型的内部、外部或者边界部的哪个部分的第1位置信息而取得新网格数据。
通过步骤S30进行的网格数据向网格块的分配,例如在1个网格块的全部8个顶点处于三维模型的内部的情况下,对网格块分配值:1=8/8。在1个网格块的全部8个顶点处于三维模型的外部的情况下,对网格块分配值:0=0/8。在1个网格数据中的7个顶点处于三维模型的内部、1个顶点处于三维模型的外部的情况下,对网格块分配0.875=7/8。在1个网格块的5个顶点处于三维模型的内部、2个顶点处于三维模型的外部、1个顶点处于三维模型的边界的情况下,对网格块分配0.6875=5.5/8。
而且,网格数据生成部21关于从登记模型取得部30取得的全部登记三维模型,也分别针对登记三维模型进行上述的处理而生成网格数据,将登记三维模型变换为登记网格数据。由此,在第2三维模型各自中,作为表示三维空间中的分割空间各自是位于三维模型的内部、外部或者边界部的哪个部分的多个第2位置信息,能够取得多个登记网格数据。网格数据生成部21将生成的新网格数据和登记网格数据发送至数据压缩部22。
网格数据生成部21将新三维模型和与新三维模型相对应的新网格数据相关联而发送至数据压缩部22。另外,网格数据生成部21将登记三维模型和与登记三维模型相对应的登记网格数据相关联而发送至数据压缩部22。
接下来,对由数据压缩部22执行的处理进行说明。图8是表示实施方式1所涉及的模型变换部20的数据压缩部22的处理顺序的流程图。
在步骤S110中,数据压缩部22从在网格数据生成部21中生成的新网格数据,对预先决定的多个选择数的网格块的网格数据进行选择。选择数是数据压缩部22为了对网格数据进行压缩而选择的多个网格块的数量,与进行压缩的网格数据的数量相对应。而且,数据压缩部22对分配给选择出的多个网格块的网格数据的总和进行计算。
在步骤S120中,数据压缩部22将求出的网格数据的总和除以选择数,将计算出的值作为由选择数的网格块构成的1个压缩化网格块的网格数据即压缩网格数据而分配数据。压缩网格数据对由选择数的网格块构成的1个压缩化网格块分配的、选择数的网格块的网格数据被压缩后的网格数据。由此,数据压缩部22能够将预先决定的多个选择数的网格数据压缩为1个压缩网格数据。
在将网格数据压缩为1/2的情况下,选择数为2的3次方=8即可。在将网格数据压缩为1/4的情况下,选择数为4的3次方=64即可。例如在对8个网格块进行选择而将网格数据压缩为1/2的情况下,在选择出的8个网格块的网格数据全部为1的情况下,压缩化网格块的压缩网格数据的值成为1。在对8个网格块进行选择而将网格数据压缩为1/2的情况下,选择出的8个网格块之中的7个网格块的网格数据为1,且在1个网格块的网格数据为0.75的情况下,压缩化网格块的压缩网格数据的值成为0.96875=7.75/8。
数据压缩部22针对三维模型的全部网格数据而实施上述的处理,由此进行三维模型的网格数据的压缩。此外,不是必须对网格数据进行压缩,只要根据计算机的能力、计算机的使用环境、计算机的计算成本等各条件而决定压缩率即可。
数据压缩部22针对从网格数据生成部21取得的新网格数据和登记网格数据的全部而进行上述处理。数据压缩部22将与新网格数据和登记网格数据有关的压缩后的网格数据即压缩网格数据发送至相似度判定部40。
数据压缩部22将新三维模型和与新三维模型相对应的压缩新网格数据相关联而发送至相似度判定部40。压缩新网格数据是压缩后的新网格数据。另外,数据压缩部22将登记三维模型和与登记三维模型相对应的压缩登记网格数据相关联而发送至相似度判定部40。压缩登记网格数据是压缩后的登记网格数据。
返回至图4,在步骤S4中,相似度判定部40对新三维模型和登记三维模型的形状的相似度进行判定。具体地说,相似度判定部40对新三维模型的网格数据和登记网格数据之间的网格数据的相似度进行判定,对新三维模型和登记网格数据的形状的相似度进行判定。即,在本实施方式1中,相似度判定部40对与新三维模型相对应的压缩新网格数据和与登记三维模型相对应的压缩登记网格数据进行比较,对压缩新网格数据和压缩登记网格数据的相似度进行判定。
对由相似度判定部40执行的处理进行说明。图9是表示实施方式1所涉及的相似度判定部40的处理顺序的流程图。
在步骤S210中,哈希值计算部41根据在模型变换部20中将三维模型变换后的网格数据,对哈希值进行计算。哈希值计算部41根据与新三维模型相对应的压缩新网格数据,对新三维模型的哈希值进行计算。哈希值计算部41根据与登记三维模型相对应的压缩登记网格数据,对登记三维模型的哈希值进行计算。此外,在不对新网格数据及登记网格数据进行压缩的情况下,可以根据新网格数据及登记网格数据对哈希值进行计算。
在步骤S220中,汉明距离计算部42根据新三维模型的哈希值和1个登记三维模型的哈希值对汉明距离进行计算。汉明距离计算部42关于全部登记三维模型的哈希值对汉明距离进行计算。汉明距离计算部42将计算出的汉明距离发送至汉明距离排序部43。
在步骤S230中,汉明距离排序部43对在汉明距离计算部42中计算出的汉明距离进行排序。具体地说,汉明距离排序部43将在汉明距离计算部42中计算出的全部登记三维模型的汉明距离从数值小向数值大升序地排列。
而且,汉明距离排序部43将排列的登记三维模型的汉明距离的升序判定为新三维模型和登记三维模型的形状的相似度的顺序。即,汉明距离排序部43在对由汉明距离计算部42计算出的多个汉明值进行比较时,汉明距离的值越小的登记三维模型,判定为与新三维模型的形状的相似度越高。升序地排列的登记三维模型的汉明距离的升序的信息,是新三维模型和登记三维模型的形状的相似度的顺序的信息即相似度顺序信息。
而且,汉明距离排序部43将登记三维模型、与登记三维模型相对应的汉明距离和与登记三维模型相对应的相似度顺序信息相关联地发送至登记程序取得部50。
此外,相似度的判定也能够不使用利用了哈希值的方法,而是使用将新三维模型和登记三维模型配置于同一坐标系上的情况下的将相同位置的新三维模型的网格数据和登记三维模型的网格数据进行比较而对不同的值的位数的个数进行计算的方法。在该情况下,不同的值的位数的个数小判定为相似度高。此外,在该情况下,可以对新三维模型的压缩网格数据和登记三维模型的压缩网格数据进行比较,对不同的值的位数的个数进行计算。
另外,相似度的判定可以使用网格数据的特征量的提取、近似最近邻探索、将网格数据矢量化而求出差分的方法等。
返回至图4,在步骤S5中,登记程序取得部50按照从相似度判定部40的汉明距离排序部43取得的相似度顺序信息所示的相似度高的登记三维模型的顺序,从数据库60取得与登记三维模型相对应的加工程序。登记程序取得部50将从相似度判定部40及数据库60取得的登记三维模型、加工程序、相似度顺序信息和相似度信息相关联而发送至输出部13。相似度信息是相似度顺序信息中的登记三维模型的相似度的顺位的信息。
在步骤S6中,输出部13将从登记程序取得部50取得的加工程序、登记三维模型、相似度顺序信息、相似度信息输出至显示装置等,提示给用户。由此,加工程序检索装置100能够从数据库60对与新三维模型类似的登记三维模型的加工程序进行检索,提示给用户。
图10是表示实施方式1中的新三维模型的例子的图。图11是表示实施方式1中的登记三维模型的例子的图。图12是表示从图11所示的20个登记三维模型,作为与图10所示的新三维模型类似的登记三维模型而检索出的登记三维模型的图。在加工程序检索装置100中实施上述的从步骤S1至步骤S6的处理,由此,例如从图11所示的20个登记三维模型,作为与图10所示的新三维模型类似的登记三维模型,从数据库60对图12所示的登记三维模型进行检索。由此,在加工程序检索装置100中,作为与图10所示的新三维模型类似的登记三维模型所对应的加工程序,从数据库60对与图12所示的登记三维模型相对应的加工程序进行检索。
在以上所述的本实施方式1所涉及的加工程序检索装置100中,在对三维模型数据所示的三维模型进行了图像显示的情况下,包含有在图像中未显示的三维物体的形状内包部及包含形成于三维物体的孔形状在内的形状的细部,类似的三维模型的检索能够自动且高精度地进行。由此,能够容易地从数据库60探索在创建用于对新的新三维模型进行加工的新的加工程序时所沿用的加工程序,能够节省用于对新三维模型进行加工的新的加工程序的创建中的用户的工作量。
另外,在本实施方式1所涉及的加工程序检索装置100中,根据压缩后的网格数据对相似度进行计算,由此能够减少处理的数据量,能够高速且高精度地对新三维模型和登记三维模型的形状的相似度进行计算。
接下来,对在加工程序检索装置100的相似度判定部40中使用机器学习的方式进行说明。图13是表示使用了实施方式1中的机器学习的相似度判定部40a的结构的图。相似度判定部40a具有教师数据生成部71、机器学习部72、推断部73、相似度计算部74和相似度排序部75。
教师数据生成部71将从模型变换部20取得的多个三维模型的网格数据作为输入而进行聚类,将聚类的结果作为标签,生成教师数据。
机器学习部72基于预先准备的多个教师数据及与教师数据相对应的三维模型的网格数据,进行有教师机器学习,生成训练好的模型。在这里的教师数据是将由教师数据生成部71生成的三维模型的网格数据进行输入,将分类结果即标签进行输出的教师数据。
推断部73使用通过机器学习部72学习到的训练好的模型,将三维模型数据所示的登记三维模型的网格数据及输入至输入部11的三维模型数据所示的新三维模型的网格数据作为输入而进行推断,取得输出数据。
相似度计算部74将与从推断部73输出的新三维模型有关的输出数据作为新三维模型的多维特征量矢量,另外将关于在数据库60中登记的登记三维模型而从推断部73输出的输出数据作为登记三维模型的多维特征量矢量,对新三维模型的多维特征量矢量和登记三维模型的多维特征量矢量之间的距离进行计算而作为相似度。即,相似度计算部74能够换言之,是取得第1三维模型的特征量和第2三维模型的特征量的特征量取得部。
相似度排序部75将与在相似度计算部74中计算出的全部登记三维模型有关的相似度从数值小的相似度向数值大的相似度升序地排列。此外,相似度排序部75只要能够将相似度按照从高到低的顺序排序即可,可以将1除以相似度的数值,将相除后的数值从数值大的数值向数值小的数值降序地排列而排序。
接下来,对由相似度判定部40a执行的处理进行说明。图14是表示实施方式1所涉及的相似度判定部40a的处理顺序的流程图。
在步骤S310中,教师数据生成部71从模型变换部20取得多个三维模型的网格数据。
在步骤S320中,教师数据生成部71将多个三维模型的网格数据作为输入数据,进行多个三维模型的网格数据的聚类,将聚类后的结果作为三维模型的分类结果即标签,生成教师数据。即,教师数据生成部71生成将三维模型的网格数据作为输入、将三维模型的分类结果即标签作为输出的教师数据。下面,对在聚类使用k-means法的情况进行说明。
k-means法是将输入数据分类为特征量的欧几里德距离最近的群集的方法。具体地说,首先将输入数据随机地分类为预先决定的k个群集。而且,求出k个各群集内的输入数据的特征量的平均值,针对每个群集而创建将特征量的平均值可视化后的图像数据。接下来,关于各图像数据,根据输入数据的特征量,针对具有欧几里德距离最近的特征量的平均值的群集对输入数据进行再分类。在不进行该再分类时,聚类处理完成。聚类处理完成时的聚类结果被决定为三维模型的分类结果即标签。在聚类结果的标签存在偏聚的情况下,也可以进行将网格数据投影至XY平面、YZ平面、ZX平面后的数据设为输入数据的方法。
教师数据的生成只要是进行没有外部的基准而自动地将赋予的输入数据分类的聚类即可,可以使用沃德法、群平均法、最短距离法、最长距离法这样的算法。另外,用户也可以针对每个三维模型而手动地进行设定。
图15是表示在实施方式1中通过k-means法将20个三维模型聚类为4个群集的例子中的分类为第1群集C1的三维模型的图。图16是表示在实施方式1中通过k-means法将20个三维模型聚类为4个群集的例子中的分类为第2群集C2的三维模型的图。图17是表示在实施方式1中通过k-means法将20个三维模型聚类为4个群集的例子中的分类为第3群集C3的三维模型的图。图18是表示在实施方式1中通过k-means法将20个三维模型聚类为4个群集的例子中的分类为第4群集C4的三维模型的图。
在步骤S330中,机器学习部72基于由教师数据生成部71生成的将三维模型的网格数据输入、将三维模型的分类结果即标签输出的多个教师数据,和与教师数据相对应的三维模型的网格数据,进行有教师机器学习,生成训练好的模型。训练好的模型是根据三维模型的网格数据,用于对使用了将三维模型聚类后的结果即分类结果的指标进行类推的训练好的模型。机器学习可以直至得到期望的收敛结果为止进行重复。机器学习部72使生成的训练好的模型即三维模型的分类条件存储于存储器15。因此,机器学习部72对从多个三维模型取得的网格数据进行聚类而取得教师数据,将从多个三维模型取得的网格数据和教师数据一并作为数据集,基于数据集而生成训练好的模型。
图19是表示实施方式1所涉及的机器学习部的结构的图。图20是表示实施方式1所涉及的机器学习装置所使用的神经网络的结构的图。
机器学习部72是具有数据取得部721和学习部722的分类条件学习部。数据取得部721取得从教师数据生成部71输出的将三维模型的网格数据输入、将分类结果即标签输出的预先准备的多个教师数据,和与教师数据相对应的三维模型的网格数据,作为数据集而发送至学习部722。此外,与教师数据相对应的三维模型的网格数据是在创建教师数据时输入的网格数据。即,在机器学习部72中,将表示加工对象的加工成品形状的三维模型配置于三维空间,在三维模型中,表示三维空间中的多个分割空间各自是位于三维模型的内部、外部或者边界部之中的哪个部分的位置信息,和将多个三维模型分类为多个分类的教师数据设为是数据集。数据取得部721取得数据集。
学习部722基于数据集对三维模型数据所示的三维模型的分类条件进行学习,该数据集是基于将三维模型的网格数据输入、将分类结果即标签输出的预先准备的多个教师数据、和与教师数据相对应的三维模型数据所示的三维模型的网格数据的组合而创建的。学习部722使学习到的三维模型的分类条件存储于存储器15。即,学习部722基于数据集,生成用于由推断部73对使用了三维模型的分类结果的指标进行推断的训练好的模型。
机器学习部72例如按照神经网络模型,通过所谓的有教师学习,对用于将网格数据分类为作为分类结果的标签的分类条件,即三维模型的分类条件进行学习。而且,机器学习部72通过对三维模型的分类条件进行学习,从而生成用于对使用了三维模型的分类结果的指标进行推断的训练好的模型。通过使机器学习部72学习将网格数据分类为何种标签,从而能够由推断部73判定新输入的网格数据接近哪个标签。在这里,有教师学习是指下述模型,即,通过将某输入和结果(标签)的数据的组大量地赋予给学习装置,从而对这些数据集中存在的特征进行学习,根据输入而推定结果。
神经网络由通过多个神经元构成的输入层、通过多个神经元构成的中间层(隐藏层)及通过多个神经元构成的输出层构成。中间层可以为1层,也可以为大于或等于2层。另外,也可以在机器学习使用其他方法,例如使用支持向量机等。
例如,图20所示的神经网络是3层神经网络。输入层包含神经元X1、X2、X3。中间层包含神经元Y1、Y2。输出层包含神经元Z1、Z2、Z3。此外,各层的神经元的数量是任意的。向输入层输入的多个值乘以权重W1即w11、w12、w13、w14、w15、w16而向中间层输入。向中间层输入的多个值乘以权重W2即w21、w22、w23、w24、w25、w26而从输出层输出。从输出层输出的输出结果按照权重W1、W2的值而变化。
接下来,在步骤S340中,推断部73使用由机器学习部72生成的训练后的训练好的模型,将在数据库60中登记的三维模型数据所示的登记三维模型的网格数据及输入至输入部11的三维模型数据所示的新三维模型的网格数据作为输入而进行推断,取得输出数据。即,通过推断得到的输出数据的取得,是针对在数据库60中登记的全部三维模型数据所示的登记三维模型的网格数据和输入至输入部11的三维模型数据所示的新三维模型的网格数据而取得输出数据。
推断部73将某输入的数据应用于通过机器学习生成的训练好的模型,将成为有教师学习时的分类结果即标签的概率进行输出。推断部73关于有教师学习时的分类结果即全部标签,将成为标签的概率进行输出。因此,从推断部73,作为输出数据将标签的个数量的数值进行输出。在这里,推断部73将在数据库60中登记的三维模型数据所示的新三维模型的网格数据应用于训练好的模型,将成为有教师学习时的分类结果即标签的概率进行输出。此外,推断部73可以构成为对后面记述的多维特征量矢量进行输出。即,推断部73使用训练好的模型对利用了三维模型的分类结果的指标进行推断。
接下来,在步骤S350中,相似度计算部74将与从输入部11输入的新三维模型有关的从推断部73输出的输出数据作为新三维模型的多维特征量矢量,另外将与在数据库60中登记的登记三维模型有关的从推断部73输出的输出数据作为登记三维模型的多维特征量矢量。而且,相似度计算部74将新三维模型的多维特征量矢量和全部登记三维模型的多维特征量矢量进行比较,进行最附近探索,对新三维模型的多维特征量矢量和登记三维模型的多维特征量矢量之间的距离进行计算而作为相似度。相似度是新三维模型的形状和登记三维模型的形状之间的相似度。相似度计算部74将计算出的相似度发送至相似度排序部75。
此外,作为相似度的计算,只要将新三维模型的多维特征量矢量和登记三维模型的多维特征量矢量进行比较而求出距离尺度即可,可以使用近似最近邻探索这样的算法。
接下来,在步骤S360中,相似度排序部75对在相似度计算部74中计算出的相似度进行排序。具体地说,相似度排序部75将与在相似度计算部74中计算出的全部登记三维模型有关的相似度从数值小的相似度向数值大的相似度升序地排列。在这里,相似度排序部75将相似度从数值小的相似度向数值大的相似度升序地排列,但相似度排序部75只要能够将相似度按照从高到低的顺序排列即可,可以将1除以相似度的数值,将相除后的数值从数值大的数值向数值小的数值降序地排列。
通过进行上述的处理,从而在相似度判定部40a中也与相似度判定部40同样地,能够判定与全部登记三维模型有关的相似度。
在以上所述的本实施方式所涉及的加工程序检索装置100中,在相似度判定部40a中进行三维模型的分类条件的机器学习,基于学习到的三维模型的分类条件,对新三维模型和登记网格数据的形状的相似度进行计算。由此,能够对三维模型的形状特征高效地进行识别,对新三维模型和登记网格数据的形状的相似度进行计算,能够容易地从数据库60探索在创建用于对新的新三维模型进行加工的新的加工程序时所沿用的加工程序。
图21是表示将相对于图10所示的新三维模型的相似度按照从高到低的顺序排序后的登记三维模型的图。在图21中,越是靠左侧所示的登记三维模型,则相对于图10所示的新三维模型的相似度越高,越是靠右侧所示的登记三维模型,则相对于图10所示的新三维模型的相似度越低。
接下来,对模型变换部20的其他方式进行说明。首先,对由模型变换部20执行的数据扩展进行说明。图22是表示在图1所示的加工程序检索装置100中执行数据扩展的模型变换部20a的结构的图。模型变换部20a具有模型形状变换部23、前述的网格数据生成部21和前述的数据压缩部22。模型形状变换部23对从输入部11输入而配置于网格空间上的新三维模型的形状进行形状变换。形状变换是指形状的旋转移动、形状的扩大及形状的缩小之中的至少1个。
接下来,对由模型变换部20a执行的处理进行说明。图23是表示由实施方式1所涉及的模型变换部20a执行的数据扩展处理的流程图。
首先,网格数据生成部21实施上述的步骤S10。
接下来,在步骤S410中,模型形状变换部23对在网格空间上配置的新三维模型的形状进行形状变换。
然后,针对实施了形状变换的新三维模型,实施上述的步骤S20、步骤S30、步骤S110及步骤S120,针对实施了形状变换的新三维模型,实施网格数据的生成至网格数据的压缩。
在以上所述的本实施方式所涉及的加工程序检索装置100中,在将配置于网格空间上的新三维模型在各种方向,或者形状变换为各种大小后,能够生成三维模型的网格数据。另外,新三维模型和登记三维模型之中的一者以网格空间上的方向及大小变得相等的方式进行形状变换即可。由此,能够对三维模型的形状特征高精度地进行识别,对相似度进行计算。另外,不需要预先将新三维模型和登记三维模型的朝向在三维模型数据中对齐这样的限制。
并且,加工程序检索装置100使用模型变换部20a和相似度判定部40a,由此能够将三维模型在各种方向,或者以各种大小将数据量扩展而进行机器学习,对相似度进行计算,因此能够对三维模型的形状特征高精度地进行识别,对相似度进行计算。
如上所述,在本实施方式1所涉及的加工程序检索装置100中,在对三维模型数据所示的三维模型进行了图像显示的情况下,包含有在图像中未显示的三维物体的形状内包部及包含形成于三维物体的孔形状在内的形状的细部,类似的三维模型的检索能够自动且高精度地进行。由此,在加工程序检索装置100中,能够容易地从数据库60探索在创建用于对新的新三维模型进行加工的新的加工程序时所沿用的加工程序,能够减少用于对新三维模型进行加工的新的加工程序创建中的用户的负荷。
另外,在本实施方式1所涉及的加工程序检索装置100中,根据压缩后的网格数据对相似度进行计算,由此能够减少处理的数据量,能够高速且高精度地对新三维模型和登记三维模型的形状的相似度进行计算。
另外,在加工程序检索装置100中,在相似度判定部40a中进行三维模型的分类条件的机器学习,基于学习到的三维模型的分类条件,对新三维模型和登记网格数据的形状的相似度进行计算。由此,能够对三维模型的形状特征高效地进行识别,对新三维模型和登记网格数据的形状的相似度进行计算,能够容易地从数据库60探索在创建用于对新的新三维模型进行加工的新的加工程序时所沿用的加工程序。
因此,本实施方式1所涉及的加工程序检索装置100具有下述效果,即,能够从数据库自动且容易地检索对与工件的加工后的加工成品形状类似的形状进行加工的加工程序。
实施方式2
图24是表示实施方式2所涉及的加工程序检索装置101的结构的图。对图24的各结构要素之中的与图1所示的实施方式1的加工程序检索装置100实现同一功能的结构要素标注同一标号,省略重复的说明。
在实施方式2所涉及的加工程序检索装置101中,对新创建加工程序的三维模型的形状和过去创建过加工程序的三维模型的形状的差异部进行识别,将差异部所涉及的加工程序进行输出。即,在加工程序检索装置101中,对新三维模型的形状和登记三维模型的形状的差异部进行识别,将差异部所涉及的加工程序进行输出。
加工程序检索装置101在加工程序检索装置100所具有的结构要素的基础上,还具有差异识别部80。差异识别部80连接于输入部11、登记模型取得部30、登记程序取得部50和输出部13。
差异识别部80对新创建加工程序的三维模型的形状和过去创建过加工程序的三维模型的形状的差异部进行识别。即,在加工程序检索装置101中,对新三维模型的形状和登记三维模型的形状的差异部进行识别。
图25是表示实施方式2所涉及的加工程序检索装置101所具有的差异识别部80的结构的图。差异识别部80具有模型差异取得部81和加工程序差异取得部82。
模型差异取得部81取得从输入部11输入的三维模型数据所示的新三维模型和由登记模型取得部30取得的三维模型数据所示的登记三维模型。而且,模型差异取得部81取得新三维模型的形状和登记三维模型的形状之间的形状的差异部的信息。
加工程序差异取得部82基于从模型差异取得部81取得的新三维模型的形状和登记三维模型的形状之间的形状的差异部的信息,取得差异部所涉及的加工程序部位。即,加工程序差异取得部82取得对新三维模型的加工成品形状进行加工的程序和对登记三维模型的加工成品形状进行加工的程序之间的差异。
接下来,对由差异识别部80执行的处理进行说明。图26是表示实施方式2所涉及的差异识别部80的处理顺序的流程图。
在步骤S510中,模型差异取得部81取得从输入部11输入的新三维模型的三维模型数据,另外从登记模型取得部30取得登记三维模型的三维模型数据,取得新三维模型和登记三维模型的三维模型间的形状的差异。具体地说,模型差异取得部81对从新三维模型的形状减去登记三维模型的形状后的形状即第1差异形状进行计算。另外,模型差异取得部81对从登记三维模型的形状减去新三维模型的形状后的形状即第2差异形状进行计算。形状的相减只要使用实体模型的集合运算即可。模型差异取得部81将计算出的第1差异形状的信息和第2差异形状的信息发送至加工程序差异取得部82。
接下来,在步骤S520中,加工程序差异取得部82基于从模型差异取得部81取得的第1差异形状的信息和第2差异形状的信息,取得与第1差异形状和第2差异形状相对应的加工程序部位。与第1差异形状相对应的加工程序需要相对于登记三维模型的加工程序进行编辑或者追加加工。与第2差异形状相对应的加工程序需要相对于登记三维模型的加工程序进行编辑或者减少加工。在存在第2差异形状的情况下,与第2差异形状的差异部相对应的差异部加工程序如果登记三维模型的加工程序的加工部位和差异部的形状在三维坐标上发生干涉,则缓冲的部分的加工程序部分成为与差异部相对应的差异部加工程序。加工程序差异取得部82从登记三维模型的加工程序对与差异部相对应的差异部加工程序进行提取。
加工程序差异取得部82将新三维模型的形状和登记三维模型的形状的差异部的信息,即,第1差异形状的信息和第2差异形状之中的至少一者发送至输出部13。另外,加工程序差异取得部82将差异部所涉及的加工程序部分的信息发送至输出部13。
输出部13将新三维模型的形状和登记三维模型的形状的差异部的信息、差异部加工程序和从登记程序取得部50取得的加工程序等一起输出至显示装置等,提示给用户。由此,加工程序检索装置101能够将与新三维模型类似的登记三维模型和新三维模型的形状的差异部及与差异部相对应的加工程序部分容易地提示给用户。
如上所述,在本实施方式1所涉及的加工程序检索装置101中,将新三维模型的形状和登记三维模型的形状的差异部的信息、差异部所涉及的加工程序部分的信息提示给用户。由此,用户的加工程序编辑作业的效率提高。
以上的实施方式所示的结构表示一个例子,也能够与其他公知技术组合,也能够将实施方式彼此组合,在不脱离主旨的范围也能够将结构的一部分省略、变更。
标号的说明
11输入部,12显示部,13输出部,14处理器,15存储器,20模型变换部,21网格数据生成部,22数据压缩部,23模型形状变换部,30登记模型取得部,40、40a相似度判定部,41哈希值计算部,42汉明距离计算部,43汉明距离排序部,50登记程序取得部,60数据库,71教师数据生成部,72机器学习部,73推断部,74相似度计算部,75相似度排序部,80差异识别部,81模型差异取得部,82加工程序差异取得部,100、101加工程序检索装置,110CAD系统,721数据取得部,722学习部,C1第1群集,C2第2群集,C3第3群集,C4第4群集,D1、DN模型数据。

Claims (8)

1.一种加工程序检索装置,其特征在于,将数据库作为检索对象,该数据库登记有在工作机械中用于对加工对象进行机械加工的不同的多个加工程序,
该加工程序检索装置具有:
模型变换部,其将表示新创建加工程序的加工对象的加工成品形状的三维模型即第1三维模型,和表示通过登记于所述数据库的所述多个加工程序进行机械加工后的多个加工对象的加工成品形状的三维模型即多个第2三维模型,配置于由X轴、Y轴、Z轴这3轴构成并在分别沿所述3轴的多个分割空间形成的假想的三维空间,在所述第1三维模型中,取得表示所述三维空间中的所述多个分割空间各自是位于所述第1三维模型的内部、外部或者边界部之中的哪个部分的第1位置信息,和在多个所述第2三维模型各自中,表示所述多个分割空间各自是位于所述第2三维模型的内部、外部或者边界部之中的哪个部分的多个第2位置信息;
相似度判定部,其对所述第1位置信息和所述第2位置信息进行比较,由此对所述第1三维模型和所述第2三维模型的形状的相似度进行判定;以及
登记程序取得部,其基于所述相似度判定部中的判定结果,从所述数据库检索而取得用于对多个所述第2三维模型之中的所述形状的相似度相对高的所述第2三维模型进行机械加工的所述加工程序。
2.根据权利要求1所述的加工程序检索装置,其特征在于,
具有输出部,该输出部对所述登记程序取得部所取得的所述加工程序进行输出。
3.根据权利要求1或2所述的加工程序检索装置,其特征在于,
所述模型变换部针对配置于所述三维空间的所述第1三维模型和所述第2三维模型之中的至少一者,进行形状的旋转移动、形状的扩大及形状的缩小之中的至少1个处理,取得所述第1位置信息和多个所述第2位置信息。
4.根据权利要求1至3中任一项所述的加工程序检索装置,其特征在于,
所述相似度判定部对所述分割空间的同一位置处的所述第1位置信息和多个所述第2位置信息进行比较。
5.根据权利要求2至4中任一项所述的加工程序检索装置,其特征在于,
具有模型差异取得部,该模型差异取得部取得所述第1三维模型和多个所述第2三维模型的形状的差异部的信息。
6.根据权利要求5所述的加工程序检索装置,其特征在于,
从用于对所述第2三维模型进行机械加工的加工程序取得差异部加工程序,该差异部加工程序是用于对与所述形状的差异部相对应的所述第2三维模型进行机械加工的加工程序。
7.一种加工程序检索装置,其特征在于,将数据库作为检索对象,该数据库登记有在工作机械中用于对加工对象进行机械加工的不同的多个加工程序,
该加工程序检索装置具有:
模型变换部,其将表示新创建加工程序的加工对象的加工成品形状的三维模型即第1三维模型,和表示通过登记于所述数据库的所述多个加工程序进行机械加工后的多个加工对象的加工成品形状的三维模型即多个第2三维模型,配置于由X轴、Y轴、Z轴这3轴构成并在分别沿所述3轴的多个分割空间形成的假想的三维空间,在所述第1三维模型中,取得表示所述三维空间中的所述多个分割空间各自是位于所述第1三维模型的内部、外部或者边界部之中的哪个部分的第1位置信息,和在多个所述第2三维模型各自中,表示所述多个分割空间各自是位于所述第2三维模型的内部、外部或者边界部之中的哪个部分的多个第2位置信息;
机器学习部,其具有数据取得部和学习部,该数据取得部将表示加工对象的加工成品形状的三维模型配置于所述三维空间,在所述三维模型中,取得表示所述三维空间中的所述多个分割空间各自是位于所述三维模型的内部、外部或者边界部之中的哪个部分的位置信息,和将多个所述三维模型分类为多个分类的分类结果即教师数据而作为数据集,该学习部基于所述数据集,生成用于对使用了所述三维模型的所述分类结果的指标进行推断的训练好的模型;
特征量取得部,其基于根据所述第1位置信息和所述第2位置信息而使用所述训练好的模型输出的、使用了所述第1位置信息中的所述三维模型的所述分类结果的指标和使用了所述第2位置信息中的所述三维模型的所述分类结果的指标,取得所述第1三维模型的特征量和所述第2三维模型的特征量;
相似度判定部,其通过将所述第1三维模型的特征量和所述第2三维模型的特征量进行比较,从而对所述第1三维模型和所述第2三维模型的形状的相似度进行判定;以及
登记程序取得部,其基于所述相似度判定部中的判定结果,从所述数据库检索而取得用于对多个所述第2三维模型之中的所述形状的相似度相对高的所述第2三维模型进行机械加工的所述加工程序。
8.一种加工程序检索方法,其将数据库作为检索对象,该数据库登记有在工作机械中用于对加工对象进行机械加工的不同的多个加工程序,
该加工程序检索方法的特征在于,包含下述步骤:
将表示新创建加工程序的加工对象的加工成品形状的三维模型即第1三维模型,和表示通过登记于所述数据库的所述多个加工程序进行机械加工后的多个加工对象的加工成品形状的三维模型即多个第2三维模型并配置于由X轴、Y轴、Z轴这3轴构成,在分别沿所述3轴的多个分割空间形成的假想的三维空间,在所述第1三维模型中,取得表示所述三维空间中的所述多个分割空间各自是位于所述第1三维模型的内部、外部或者边界部之中的哪个部分的第1位置信息,和在多个所述第2三维模型各自中,表示所述多个分割空间各自是位于所述第2三维模型的内部、外部或者边界部之中的哪个部分的多个第2位置信息;
对所述第1位置信息和所述第2位置信息进行比较,由此对所述第1三维模型和所述第2三维模型的形状的相似度进行判定;以及
基于对所述形状的相似度进行判定的步骤中的判定结果,从所述数据库检索而取得用于对多个所述第2三维模型之中的所述形状的相似度相对高的所述第2三维模型进行机械加工的所述加工程序。
CN202080101828.XA 2020-06-30 2020-06-30 加工程序检索装置及加工程序检索方法 Active CN115702400B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/025675 WO2022003828A1 (ja) 2020-06-30 2020-06-30 加工プログラム検索装置および加工プログラム検索方法

Publications (2)

Publication Number Publication Date
CN115702400A true CN115702400A (zh) 2023-02-14
CN115702400B CN115702400B (zh) 2023-11-24

Family

ID=74661637

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080101828.XA Active CN115702400B (zh) 2020-06-30 2020-06-30 加工程序检索装置及加工程序检索方法

Country Status (4)

Country Link
JP (1) JP6833150B1 (zh)
CN (1) CN115702400B (zh)
DE (1) DE112020007144T5 (zh)
WO (1) WO2022003828A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7325775B2 (ja) * 2021-07-20 2023-08-15 シリコンスタジオ株式会社 画像処理システム、方法、及びプログラム

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003296382A (ja) * 2002-04-02 2003-10-17 Yappa Corp 3次元モデルの開発支援システム
US20040186614A1 (en) * 2003-01-31 2004-09-23 Fujitsu Limited Working control device
JP2006520948A (ja) * 2003-01-25 2006-09-14 パーデュー リサーチ ファンデーション 3次元オブジェクトについて検索を行なうための方法、システムおよびデータ構造
WO2014091543A1 (ja) * 2012-12-10 2014-06-19 三菱電機株式会社 Ncプログラム検索方法、ncプログラム検索装置、ncプログラム作成方法およびncプログラム作成装置
CN104951496A (zh) * 2014-03-28 2015-09-30 富士通株式会社 计算设备及计算方法
US20160019270A1 (en) * 2014-07-16 2016-01-21 Machine Research Corporation Systems and methods for searching a machining knowledge database
WO2017122462A1 (ja) * 2016-01-14 2017-07-20 株式会社リコー 造形処理装置、造形処理システムおよびプログラム
JP2018136642A (ja) * 2017-02-20 2018-08-30 国立大学法人豊橋技術科学大学 三次元形状検索方法及び三次元形状検索システム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10466681B1 (en) * 2014-09-02 2019-11-05 Machine Research Corporation Systems and methods for machining knowledge reuse
EP3525175A1 (en) * 2018-02-09 2019-08-14 Dassault Systèmes Designing a part manufacturable by milling operations

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003296382A (ja) * 2002-04-02 2003-10-17 Yappa Corp 3次元モデルの開発支援システム
JP2006520948A (ja) * 2003-01-25 2006-09-14 パーデュー リサーチ ファンデーション 3次元オブジェクトについて検索を行なうための方法、システムおよびデータ構造
US20040186614A1 (en) * 2003-01-31 2004-09-23 Fujitsu Limited Working control device
WO2014091543A1 (ja) * 2012-12-10 2014-06-19 三菱電機株式会社 Ncプログラム検索方法、ncプログラム検索装置、ncプログラム作成方法およびncプログラム作成装置
CN104951496A (zh) * 2014-03-28 2015-09-30 富士通株式会社 计算设备及计算方法
US20160019270A1 (en) * 2014-07-16 2016-01-21 Machine Research Corporation Systems and methods for searching a machining knowledge database
WO2017122462A1 (ja) * 2016-01-14 2017-07-20 株式会社リコー 造形処理装置、造形処理システムおよびプログラム
JP2018136642A (ja) * 2017-02-20 2018-08-30 国立大学法人豊橋技術科学大学 三次元形状検索方法及び三次元形状検索システム

Also Published As

Publication number Publication date
JP6833150B1 (ja) 2021-02-24
WO2022003828A1 (ja) 2022-01-06
JPWO2022003828A1 (zh) 2022-01-06
DE112020007144T5 (de) 2023-02-16
CN115702400B (zh) 2023-11-24

Similar Documents

Publication Publication Date Title
CN107038751B (zh) 从2d图像进行3d建模对象的识别的方法、介质与系统
US11367222B2 (en) Three-dimensional shape classification and retrieval using convolutional neural networks and majority vote
JP6888484B2 (ja) 検索プログラム、検索方法、及び、検索プログラムが動作する情報処理装置
JP7061536B2 (ja) 最適化装置、シミュレーションシステム及び最適化方法
CN107545025B (zh) 利用形态学标准查询数据库
CN108073682A (zh) 基于参数视图函数查询数据库
JP4693454B2 (ja) 3次元形状比較プログラム及び3次元類似形状検索プログラム
CN109886297A (zh) 一种用于从二维图像识别三维模型对象的方法
CA3012320A1 (en) Methods and system to predict hand positions for multi-hand grasps of industrial objects
Ning et al. Part machining feature recognition based on a deep learning method
Zhang et al. A surface based approach to recognition of geometric features for quality freeform surface machining
JP2011248622A (ja) 類似モデル検索システム及び作業指示再利用システム
CN115702400B (zh) 加工程序检索装置及加工程序检索方法
JP2017168081A (ja) 記述子を用いた3dオブジェクトの位置特定
CN111597367B (zh) 基于视图和哈希算法的三维模型检索方法
JP4772341B2 (ja) 目標識別装置
CN115997213A (zh) 计算机辅助设计(cad)组件的约束的基于机器学习的生成
Takaishi et al. Free-form feature classification for finite element meshing based on shape descriptors and machine learning
KR102504319B1 (ko) 영상 객체 속성 분류 장치 및 방법
CN113836382A (zh) 多维数字内容搜索
Roj et al. Classification of CAD-Models Based on Graph Structures and Machine Learning
Rios et al. Back to meshes: Optimal simulation-ready mesh prototypes for autoencoder-based 3D car point clouds
CN117314928B (zh) 基于图像分割和虚拟现实的自然景观模拟系统
EP4095747A1 (en) Automatic search and detection
CN114730459B (zh) 工件图像检索装置及工件图像检索方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant