[go: up one dir, main page]

CN118710942B - 3D model data identification matching method, system, device, medium and program - Google Patents

3D model data identification matching method, system, device, medium and program Download PDF

Info

Publication number
CN118710942B
CN118710942B CN202411197563.4A CN202411197563A CN118710942B CN 118710942 B CN118710942 B CN 118710942B CN 202411197563 A CN202411197563 A CN 202411197563A CN 118710942 B CN118710942 B CN 118710942B
Authority
CN
China
Prior art keywords
model data
model
calibration
matching
file
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
Application number
CN202411197563.4A
Other languages
Chinese (zh)
Other versions
CN118710942A (en
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.)
Metavacs Shaoxing Technology Co ltd
Zhejiang Yuanmao Digital Technology Co ltd
Zhejiang Nanometer Technology Co ltd
Original Assignee
Metavacs Shaoxing Technology Co ltd
Zhejiang Yuanmao Digital Technology Co ltd
Zhejiang Nanometer Technology Co ltd
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 Metavacs Shaoxing Technology Co ltd, Zhejiang Yuanmao Digital Technology Co ltd, Zhejiang Nanometer Technology Co ltd filed Critical Metavacs Shaoxing Technology Co ltd
Priority to CN202411197563.4A priority Critical patent/CN118710942B/en
Publication of CN118710942A publication Critical patent/CN118710942A/en
Application granted granted Critical
Publication of CN118710942B publication Critical patent/CN118710942B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/211Selection of the most significant subset of features
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/757Matching configurations of points or features
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/18Details relating to CAD techniques using virtual or augmented reality
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/20Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2113/00Details relating to the application field
    • G06F2113/10Additive manufacturing, e.g. 3D printing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本公开涉及一种3D模型数据的识别匹配方法、系统、设备、介质和程序,方法包括:将预先渲染的虚拟环境发送至客户端中,获取所述客户端针对所述虚拟环境所返回的标定模型数据;获取所述虚拟环境对应的存储组件,对所述存储组件进行模型定位,得到定位模型文件;对所述定位模型文件进行模式模型筛选以及存储特征筛选,得到初级模型数据组;对所述标定模型数据进行顶点结构特征提取,得到标定模型特征,根据所述标定模型特征对所述初级模型数据组进行结构特征匹配,得到次级模型数据组;根据所述标定模型数据对所述次级模型数据组进行逐面细节匹配,得到匹配模型数据,提高了模型数据匹配的效率。

The present disclosure relates to a method, system, device, medium and program for identifying and matching 3D model data. The method comprises: sending a pre-rendered virtual environment to a client, and obtaining calibration model data returned by the client for the virtual environment; obtaining a storage component corresponding to the virtual environment, and performing model positioning on the storage component to obtain a positioning model file; performing pattern model screening and storage feature screening on the positioning model file to obtain a primary model data group; performing vertex structural feature extraction on the calibration model data to obtain calibration model features, and performing structural feature matching on the primary model data group according to the calibration model features to obtain a secondary model data group; performing face-by-face detail matching on the secondary model data group according to the calibration model data to obtain matching model data, thereby improving the efficiency of model data matching.

Description

3D模型数据的识别匹配方法、系统、设备、介质和程序3D model data recognition and matching method, system, device, medium and program

技术领域Technical Field

本公开涉及数据匹配技术领域,特别地涉及一种3D模型数据的识别匹配方法、系统、设备、介质和程序。The present disclosure relates to the technical field of data matching, and in particular to a method, system, device, medium and program for identifying and matching 3D model data.

背景技术Background Art

3D打印是一种先进的制造技术,也被称为增材制造(Additive Manufacturing,简称AM),3D打印的一个应用场景是对虚拟环境中的对象模型进行打印,为此需要从内存或缓存等存储空间中匹配出待打印的对象模型的模型数据。3D printing is an advanced manufacturing technology, also known as additive manufacturing (AM). One application scenario of 3D printing is to print object models in a virtual environment. To do this, it is necessary to match the model data of the object model to be printed from storage space such as memory or cache.

传统的数据匹配技术是基于模型标识符的匹配方法,即根据各个对象模型的唯一标识符从存储空间中匹配出对应的模型数据,实际应用中,基于模型标识符的匹配方法需要用户事先知道选定的对象模型的模型标识符,需要平台的支持,而虚拟环境一般并不提供针对各对象模型的模型标识符展示,为此需要从存储空间中自行进行查找,可能导致在对模型数据进行识别匹配时的效率较低。Traditional data matching technology is a matching method based on model identifiers, that is, matching the corresponding model data from the storage space according to the unique identifier of each object model. In practical applications, the matching method based on model identifiers requires the user to know the model identifier of the selected object model in advance and requires platform support. However, the virtual environment generally does not provide a display of model identifiers for each object model. Therefore, it is necessary to search from the storage space by itself, which may lead to low efficiency in identifying and matching model data.

发明内容Summary of the invention

本公开提供一种3D模型数据的识别匹配方法、系统、设备、介质和程序,以模式匹配和存储特征匹配的方法进行初步识别定位,以顶点特征匹配的方式进一步缩减匹配模型数据的范围,并通过逐面的细节匹配实现了模型数据的精确匹配,节省了模型匹配的时间,提高了模型数据匹配的效率。The present disclosure provides a 3D model data recognition and matching method, system, device, medium and program, which perform preliminary recognition and positioning by pattern matching and storage feature matching, further reduce the scope of matching model data by vertex feature matching, and achieve accurate matching of model data by face-by-face detail matching, thereby saving model matching time and improving the efficiency of model data matching.

第一方面,本公开提供了一种3D模型数据的识别匹配方法,包括:将预先渲染的虚拟环境发送至客户端中,获取所述客户端针对所述虚拟环境所返回的标定模型数据;获取所述虚拟环境对应的存储组件,对所述存储组件进行模型定位,得到定位模型文件;对所述定位模型文件进行模式模型筛选以及存储特征筛选,得到初级模型数据组;对所述标定模型数据进行顶点结构特征提取,得到标定模型特征,根据所述标定模型特征对所述初级模型数据组进行结构特征匹配,得到次级模型数据组;根据所述标定模型数据对所述次级模型数据组进行逐面细节匹配,得到匹配模型数据。In a first aspect, the present disclosure provides a method for identifying and matching 3D model data, comprising: sending a pre-rendered virtual environment to a client, and obtaining calibration model data returned by the client for the virtual environment; obtaining a storage component corresponding to the virtual environment, performing model positioning on the storage component, and obtaining a positioning model file; performing pattern model screening and storage feature screening on the positioning model file to obtain a primary model data group; performing vertex structural feature extraction on the calibration model data to obtain calibration model features, and performing structural feature matching on the primary model data group according to the calibration model features to obtain a secondary model data group; performing facet-by-face detail matching on the secondary model data group according to the calibration model data to obtain matching model data.

在一些实施例中,所述对所述存储组件进行模型定位,得到定位模型文件,包括:对所述存储组件进行目录解析,得到存储目录以及所述存储目录对应的目录属性;利用模型关键词匹配的方法从所述存储目录中提取出初级模型文件;从所述目录属性中提取出文件属性特征集,对所述文件属性特征集进行模型属性筛选,得到模型属性特征组;将所述存储目录中所述模型属性特征组对应的文件汇集成次级模型文件;利用递归遍历的方式对所述存储目录进行树结构映射,得到文件索引树;根据所述初级模型文件和所述次级模型文件对所述文件索引树进行关联文件匹配,得到索引模型文件;根据所述初级模型文件、所述次级模型文件以及所述索引模型文件生成定位模型文件。In some embodiments, the model positioning of the storage component to obtain a positioning model file includes: performing directory parsing on the storage component to obtain a storage directory and directory attributes corresponding to the storage directory; extracting a primary model file from the storage directory using a model keyword matching method; extracting a file attribute feature set from the directory attributes, and performing model attribute screening on the file attribute feature set to obtain a model attribute feature group; aggregating files corresponding to the model attribute feature group in the storage directory into a secondary model file; performing tree structure mapping on the storage directory using a recursive traversal method to obtain a file index tree; performing associated file matching on the file index tree according to the primary model file and the secondary model file to obtain an index model file; and generating a positioning model file based on the primary model file, the secondary model file, and the index model file.

在一些实施例中,所述对所述定位模型文件进行模式模型筛选以及存储特征筛选,得到初级模型数据组,包括:对所述定位模型文件进行标识符模式匹配,得到标识符模型数据组;对所述定位模型文件进行结构模式匹配,得到结构模型数据组;从所述定位模型文件中提取出文件元数据集,将所述文件元数据集特征编码成文件元特征集;对所述文件元特征集进行模型特征筛选,得到模型特征组;根据所述模型特征组从所述定位模型文件中筛选出元数据模型数据组;根据所述标识符模型数据组、所述结构模型数据组以及所述元数据模型数据组生成初级模型数据组。In some embodiments, the pattern model screening and storage feature screening of the positioning model file to obtain a primary model data group includes: performing identifier pattern matching on the positioning model file to obtain an identifier model data group; performing structure pattern matching on the positioning model file to obtain a structure model data group; extracting a file metadata data set from the positioning model file, and encoding the file metadata data set features into a file meta feature set; performing model feature screening on the file meta feature set to obtain a model feature group; screening a metadata model data group from the positioning model file according to the model feature group; and generating a primary model data group according to the identifier model data group, the structure model data group, and the metadata model data group.

在一些实施例中,所述对所述标定模型数据进行顶点结构特征提取,得到标定模型特征,包括:从所述标定模型数据中提取出标定类型;根据所述标定类型对所述标定模型数据进行类型解析,得到解析模型数据;分别从所述解析模型数据中统计出标定顶点数据、标定法线数据以及标定三角面数据;对所述标定顶点数据、所述标定法线数据以及所述标定三角面数据进行结构特征编码,得到标定模型特征。In some embodiments, the extracting vertex structural features of the calibration model data to obtain calibration model features includes: extracting a calibration type from the calibration model data; performing type parsing on the calibration model data according to the calibration type to obtain parsed model data; respectively counting calibration vertex data, calibration normal data, and calibration triangle data from the parsed model data; and performing structural feature encoding on the calibration vertex data, the calibration normal data, and the calibration triangle data to obtain calibration model features.

在一些实施例中,所述根据所述标定模型数据对所述次级模型数据组进行逐面细节匹配,得到匹配模型数据,包括:从所述标定模型数据中提取出标定坐标系,根据所述标定坐标系对所述标定模型数据进行坐标系矫正,得到矫正标定模型数据;逐个选取所述次级模型数据组中的次级模型数据作为目标次级模型数据,对所述矫正标定模型数据和所述目标次级模型数据进行逐面细节匹配,得到细节偏差值;判断所述细节偏差值是否小于预设的细节偏差阈值;若否,则返回所述逐个选取所述次级模型数据组中的次级模型数据作为目标次级模型数据的步骤;若是,则将所述细节偏差值添加至预设的细节偏差值组中,直至所述目标次级模型数据是所述次级模型数据组中的最后一个次级模型数据时,将所述细节偏差值组中数值最小的细节偏差值作为匹配细节偏差值;将所述匹配细节偏差值对应的次级模型数据作为匹配模型数据。In some embodiments, performing face-by-face detail matching on the secondary model data group according to the calibration model data to obtain matching model data includes: extracting a calibration coordinate system from the calibration model data, and performing coordinate system correction on the calibration model data according to the calibration coordinate system to obtain corrected calibration model data; selecting the secondary model data in the secondary model data group as target secondary model data one by one, and performing face-by-face detail matching on the corrected calibration model data and the target secondary model data to obtain a detail deviation value; judging whether the detail deviation value is less than a preset detail deviation threshold; if not, returning to the step of selecting the secondary model data in the secondary model data group as the target secondary model data one by one; if yes, adding the detail deviation value to the preset detail deviation value group, until the target secondary model data is the last secondary model data in the secondary model data group, and then taking the detail deviation value with the smallest value in the detail deviation value group as the matching detail deviation value; and taking the secondary model data corresponding to the matching detail deviation value as the matching model data.

在一些实施例中,所述对所述矫正标定模型数据和所述目标次级模型数据进行逐面细节匹配,得到细节偏差值,包括:按照距离坐标原点由近到远的顺序逐个选取所述矫正标定模型数据中的三角面作为目标标定三角面,将所述目标标定三角面的法线作为目标标定法线;按照距离坐标原点由近到远的顺序逐个选取所述目标次级模型数据中的三角面作为目标次级三角面,将所述目标次级三角面的法线作为目标次级法线;计算出所述目标标定三角面和所述目标次级三角面之间的边比例偏差值;计算出所述目标标定法线和所述目标次级法线之间的法线斜率偏差值;根据所有的边比例偏差值和所有的法线斜率偏差值生成细节偏差值。In some embodiments, the corrected calibration model data and the target secondary model data are matched face by face in detail to obtain detail deviation values, including: selecting triangular faces in the corrected calibration model data as target calibration triangular faces one by one in order from near to far from the coordinate origin, and using the normals of the target calibration triangular faces as target calibration normals; selecting triangular faces in the target secondary model data as target secondary triangular faces one by one in order from near to far from the coordinate origin, and using the normals of the target secondary triangular faces as target secondary normals; calculating the edge ratio deviation value between the target calibration triangular faces and the target secondary triangular faces; calculating the normal slope deviation value between the target calibration normal and the target secondary normal; and generating detail deviation values according to all edge ratio deviation values and all normal slope deviation values.

在一些实施例中,所述根据所述标定模型特征对所述初级模型数据组进行结构特征匹配,得到次级模型数据组,包括:逐个选取所述初级模型数据组中的初级模型数据作为目标初级模型数据,对所述目标初级模型数据进行顶点结构特征提取,得到目标初级模型特征;计算出所述目标初级模型特征和所述标定模型特征之间的特征偏差值;判断所述特征偏差值是否大于预设的偏差阈值;若是,则返回所述逐个选取所述初级模型数据组中的初级模型数据作为目标初级模型数据的步骤;若否,则将所述目标初级模型数据作为次级模型数据添加至预设的次级模型数据组中。In some embodiments, performing structural feature matching on the primary model data group according to the calibration model features to obtain a secondary model data group includes: selecting primary model data in the primary model data group one by one as target primary model data, performing vertex structural feature extraction on the target primary model data to obtain target primary model features; calculating a feature deviation value between the target primary model features and the calibration model features; determining whether the feature deviation value is greater than a preset deviation threshold; if so, returning to the step of selecting primary model data in the primary model data group one by one as target primary model data; if not, adding the target primary model data as secondary model data to the preset secondary model data group.

第二方面,本公开提供了一种3D模型数据的识别匹配系统,包括:模型标定模块,用于将预先渲染的虚拟环境发送至客户端中,获取所述客户端针对所述虚拟环境所返回的标定模型数据;数据定位模块,用于获取所述虚拟环境对应的存储组件,对所述存储组件进行模型定位,得到定位模型文件;初级筛选模块,用于对所述定位模型文件进行模式模型筛选以及存储特征筛选,得到初级模型数据组;次级筛选模块,用于对所述标定模型数据进行顶点结构特征提取,得到标定模型特征,根据所述标定模型特征对所述初级模型数据组进行结构特征匹配,得到次级模型数据组;细节匹配模块,用于根据所述标定模型数据对所述次级模型数据组进行逐面细节匹配,得到匹配模型数据。In a second aspect, the present disclosure provides a 3D model data recognition and matching system, comprising: a model calibration module, used to send a pre-rendered virtual environment to a client, and obtain calibration model data returned by the client for the virtual environment; a data positioning module, used to obtain a storage component corresponding to the virtual environment, perform model positioning on the storage component, and obtain a positioning model file; a primary screening module, used to perform pattern model screening and storage feature screening on the positioning model file, and obtain a primary model data group; a secondary screening module, used to perform vertex structural feature extraction on the calibration model data, and obtain calibration model features, and perform structural feature matching on the primary model data group according to the calibration model features to obtain a secondary model data group; a detail matching module, used to perform face-by-face detail matching on the secondary model data group according to the calibration model data, and obtain matching model data.

第三方面,本公开提供了一种计算机设备,包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现上述方面所述一种3D模型数据的识别匹配方法的步骤。In a third aspect, the present disclosure provides a computer device, including a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the steps of a 3D model data recognition and matching method described in the above aspect.

第四方面,本公开提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方面所述一种3D模型数据的识别匹配方法的步骤。In a fourth aspect, the present disclosure provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of a 3D model data recognition and matching method described in the above aspect.

第五方面,本公开提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序被处理器执行时实现上述方面所述一种3D模型数据的识别匹配方法的步骤。In a fifth aspect, the present disclosure provides a computer program product, including a computer program/instructions, which, when executed by a processor, implements the steps of a 3D model data recognition and matching method described in the above aspects.

本公开提供的一种3D模型数据的识别匹配方法、系统、设备、介质和程序,通过获取所述标定模型数据,能够得到待匹配模型的标定模型数据,从而方便进行模型匹配,通过进行模型定位,能够匹配出存储组件中模型数据所在的文件夹,从而实现了初步的模型数据定位,减少了模型数据匹配的查询工作量,提高了模型数据的匹配效率。The present disclosure provides a 3D model data recognition and matching method, system, device, medium and program. By acquiring the calibration model data, the calibration model data of the model to be matched can be obtained, thereby facilitating model matching. By performing model positioning, the folder where the model data is located in the storage component can be matched, thereby achieving preliminary model data positioning, reducing the query workload of model data matching, and improving the matching efficiency of model data.

通过进行模式模型筛选以及存储特征筛选能够实现针对定位模型文件中数据的初步筛选,将所述定位模型文件中除模型数据之外的数据筛除,从而提高模型数据匹配的效率,通过进行顶点结构特征提取以及结构特征匹配,能够根据标定模型数据的结构特征实现初步的模型数据匹配,从而减少后续需要匹配的模型数据的数量,并进一步提高模型数据匹配的准确性。By performing pattern model screening and storage feature screening, it is possible to perform preliminary screening of the data in the positioning model file, and to filter out data other than model data in the positioning model file, thereby improving the efficiency of model data matching; by performing vertex structure feature extraction and structure feature matching, it is possible to achieve preliminary model data matching based on the structural features of the calibration model data, thereby reducing the amount of model data that needs to be matched subsequently and further improving the accuracy of model data matching.

通过进行逐面细节匹配,能够结合模型数据的各个三角面以及对应的法线的偏差实现更进一步的匹配,提高了模型数据识别匹配的精确度。By performing face-by-face detail matching, further matching can be achieved by combining the deviations of the various triangular faces of the model data and the corresponding normals, thereby improving the accuracy of model data recognition and matching.

附图说明BRIEF DESCRIPTION OF THE DRAWINGS

在下文中将基于实施例并参考附图来对本公开进行更详细的描述:The present disclosure will be described in more detail below based on embodiments and with reference to the accompanying drawings:

图1显示了本公开实施例一的3D模型数据的识别匹配方法的流程示意图。FIG1 shows a schematic flow chart of a method for identifying and matching 3D model data according to a first embodiment of the present disclosure.

图2显示了本公开实施例一中筛选出初级模型数据组的流程示意图。FIG. 2 shows a schematic diagram of a process for screening out a primary model data group in the first embodiment of the present disclosure.

图3显示了本公开实施例一中计算细节偏差值的流程示意图。FIG3 shows a schematic diagram of a process for calculating detail deviation values in the first embodiment of the present disclosure.

图4显示了本公开实施例二的3D模型数据的识别匹配方法的流程示意图。FIG. 4 shows a schematic flow chart of a method for identifying and matching 3D model data according to a second embodiment of the present disclosure.

图5显示了本公开实施例三的3D模型数据的识别匹配系统的功能模块图。FIG5 shows a functional module diagram of a 3D model data recognition and matching system according to a third embodiment of the present disclosure.

在附图中,相同的部件使用相同的附图标记,附图并未按照实际的比例绘制。In the drawings, the same reference numerals are used for the same components, and the drawings are not drawn to scale.

具体实施方式DETAILED DESCRIPTION

为了使本技术领域的人员更好地理解本公开的技术方案,并对本公开如何应用技术手段来解决技术问题,并达到相应技术效果的实现过程能充分理解并据以实施,下面将结合本公开实施例中的附图,对本公开的实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分的实施例,而不是全部的实施例。本公开的实施例以及实施例中的各个特征,在不相冲突前提下可以相互结合,所形成的技术方案均在本公开的保护范围之内。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本公开保护的范围。In order to enable those skilled in the art to better understand the technical solution of the present disclosure, and to fully understand and implement how the present disclosure applies technical means to solve technical problems and achieve the corresponding technical effects, the technical solution in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are only embodiments of a part of the present disclosure, not all of the embodiments. The embodiments of the present disclosure and the various features in the embodiments can be combined with each other without conflict, and the technical solutions formed are all within the scope of protection of the present disclosure. Based on the embodiments in the present disclosure, all other embodiments obtained by ordinary technicians in this field without making creative work should fall within the scope of protection of the present disclosure.

需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。It should be noted that the terms "first", "second", etc. in the specification and claims of the present disclosure and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present disclosure described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product, or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products, or devices.

需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。It should be noted that the steps shown in the flowcharts of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and that, although a logical order is shown in the flowcharts, in some cases, the steps shown or described can be executed in an order different from that shown here.

实施例一Embodiment 1

图1为本公开实施例提供的一种3D模型数据的识别匹配方法的流程示意图。如图1所示,一种3D模型数据的识别匹配方法,包括:FIG1 is a flow chart of a method for identifying and matching 3D model data provided by an embodiment of the present disclosure. As shown in FIG1 , a method for identifying and matching 3D model data includes:

S1、将预先渲染的虚拟环境发送至客户端中,获取所述客户端针对所述虚拟环境所返回的标定模型数据。S1. Send a pre-rendered virtual environment to a client, and obtain calibration model data returned by the client for the virtual environment.

详细地,可以利用Unity、Unreal Engine或Blender等渲染引擎对所述虚拟环境进行渲染,所述虚拟环境是指由计算机技术创建的数字空间,在这个数字空间中,用户可以通过视觉、听觉甚至触觉等方式进行交互和体验,所述虚拟环境可以是游戏或虚拟现实中的虚拟空间。In detail, the virtual environment can be rendered using rendering engines such as Unity, Unreal Engine or Blender. The virtual environment refers to a digital space created by computer technology, in which users can interact and experience through vision, hearing and even touch. The virtual environment can be a virtual space in a game or virtual reality.

具体地,所述客户端是指客户用于与所述虚拟环境进行交互的终端,所述客户端可以是智能手机或电脑等设备,所述标定模型数据是指客户端的用户利用例如鼠标、键盘、手柄或头戴式显示器(Head-Mounted Display,简称HMD)的手势识别技术对需要进行打印的对象模型进行标定得到的数据,所述标定模型数据标定了所述对象模型的多个顶点、边或者平面的坐标。Specifically, the client refers to a terminal used by a client to interact with the virtual environment. The client may be a device such as a smart phone or a computer. The calibration model data refers to data obtained by a user of the client using gesture recognition technology such as a mouse, keyboard, handle or head-mounted display (HMD) to calibrate the object model to be printed. The calibration model data calibrates the coordinates of multiple vertices, edges or planes of the object model.

本公开实施例中,通过获取所述标定模型数据,能够得到待匹配模型的标定模型数据,从而方便进行模型匹配。In the disclosed embodiment, by acquiring the calibration model data, the calibration model data of the model to be matched can be obtained, thereby facilitating model matching.

S2、获取所述虚拟环境对应的存储组件,对所述存储组件进行模型定位,得到定位模型文件。S2. Obtain a storage component corresponding to the virtual environment, perform model positioning on the storage component, and obtain a positioning model file.

详细地,所述存储组件是指用于存储所述虚拟环境相关数据的存储介质,所述存储组件可以是内存或缓存,所述定位模型文件是指所述存储组件中存储了虚拟环境中所有对象模型的模型资源的文件夹。In detail, the storage component refers to a storage medium for storing data related to the virtual environment, and the storage component may be a memory or a cache. The positioning model file refers to a folder in the storage component that stores model resources of all object models in the virtual environment.

本公开实施例中,所述对所述存储组件进行模型定位,得到定位模型文件,包括:对所述存储组件进行目录解析,得到存储目录以及所述存储目录对应的目录属性;利用模型关键词匹配的方法从所述存储目录中提取出初级模型文件;从所述目录属性中提取出文件属性特征集,对所述文件属性特征集进行模型属性筛选,得到模型属性特征组;将所述存储目录中所述模型属性特征组对应的文件汇集成次级模型文件;利用递归遍历的方式对所述存储目录进行树结构映射,得到文件索引树;根据所述初级模型文件和所述次级模型文件对所述文件索引树进行关联文件匹配,得到索引模型文件;根据所述初级模型文件、所述次级模型文件以及所述索引模型文件生成定位模型文件。In the disclosed embodiment, the storage component is model-located to obtain a location model file, including: performing directory parsing on the storage component to obtain a storage directory and directory attributes corresponding to the storage directory; extracting a primary model file from the storage directory using a model keyword matching method; extracting a file attribute feature set from the directory attributes, and performing model attribute screening on the file attribute feature set to obtain a model attribute feature group; aggregating files corresponding to the model attribute feature group in the storage directory into a secondary model file; performing tree structure mapping on the storage directory using a recursive traversal method to obtain a file index tree; performing associated file matching on the file index tree according to the primary model file and the secondary model file to obtain an index model file; and generating a location model file according to the primary model file, the secondary model file, and the index model file.

具体地,可以利用python的os或os.path模块进行目录解析,所述存储目录是指所述存储组件中存储的各个文件夹的列表目录,所述目录属性是指所述存储目录中各个文件夹的属性,所述属性包括文件夹的大小、创建者以及软件版本等信息。Specifically, Python's os or os.path module can be used for directory parsing, the storage directory refers to the list directory of each folder stored in the storage component, the directory attributes refer to the attributes of each folder in the storage directory, and the attributes include information such as the size, creator, and software version of the folder.

详细地,所述模型关键词匹配是指利用预设的模型关键词从所述存储目录中匹配出对应的文件夹作为初级模型文件,可以利用正则表达式进行模型关键词匹配,所述模型关键词可以是“NameDode”、“Hive”或“Minio”等。In detail, the model keyword matching refers to using preset model keywords to match the corresponding folders from the storage directory as primary model files. Regular expressions can be used for model keyword matching. The model keywords can be "NameDode", "Hive" or "Minio" and the like.

具体地,所述文件属性特征集中的各个文件属性特征对应所述目录属性中各个文件夹的属性特征,所述属性特征是指将所述文件夹的属性按照固定格式向量化后得到的特征向量。Specifically, each file attribute feature in the file attribute feature set corresponds to an attribute feature of each folder in the directory attribute, and the attribute feature refers to a feature vector obtained by vectorizing the attributes of the folder in a fixed format.

详细地,所述模型属性筛选是指利用预先训练的支持向量机或卷积神经网络等对所述文件属性特征集中的各个文件属性特征进行类型识别,将识别后得到的类型为模型类型的文件属性特征作为模型属性特征汇集成模型属性特征组。In detail, the model attribute screening refers to using a pre-trained support vector machine or convolutional neural network to identify the type of each file attribute feature in the file attribute feature set, and aggregating the file attribute features of the model type obtained after identification into a model attribute feature group as model attribute features.

具体地,可以用命令行工具tree、命令行工具find或anytree库进行树结构映射,所述文件索引树是以树形结构表示的所述存储目录,所述文件索引树中记录了所述存储目录中各个文件夹的父子文件夹关系。Specifically, the tree structure mapping can be performed using the command line tool tree, the command line tool find or the anytree library, wherein the file index tree is the storage directory represented by a tree structure, and the parent-child folder relationship of each folder in the storage directory is recorded in the file index tree.

详细地,可以利用pyexiv2库或pillow库进行关联文件匹配,所述关联文件匹配是指根据所述初级模型文件和所述次级模型文件在所述文件索引树中的结构关系将具有关联的文件夹作为索引模型文件,所述定位模型文件由所述初级模型文件、所述次级模型文件以及所述索引模型文件构成。In detail, the pyexiv2 library or the pillow library can be used for associated file matching, and the associated file matching refers to using the associated folder as the index model file according to the structural relationship between the primary model file and the secondary model file in the file index tree, and the positioning model file is composed of the primary model file, the secondary model file and the index model file.

本公开实施例中,通过进行模型定位,能够匹配出存储组件中模型数据所在的文件夹,从而实现了初步的模型数据定位,减少了模型数据匹配的查询工作量,提高了模型数据的匹配效率。In the disclosed embodiment, by performing model positioning, the folder where the model data is located in the storage component can be matched, thereby achieving preliminary model data positioning, reducing the query workload of model data matching, and improving the matching efficiency of model data.

S3、对所述定位模型文件进行模式模型筛选以及存储特征筛选,得到初级模型数据组。S3. Performing pattern model screening and storage feature screening on the positioning model file to obtain a primary model data set.

详细地,所述定位模型文件中除了模型数据之外,还存在对象模型的音频数据以及脚本数据等无关数据,为了进一步实现模型数据的识别匹配,需要对所述定位模型文件进行筛选,得到仅包含模型数据的初级模型数据组。In detail, in addition to the model data, the positioning model file also contains irrelevant data such as audio data of the object model and script data. In order to further realize the recognition and matching of the model data, the positioning model file needs to be screened to obtain a primary model data group that only contains the model data.

具体地,所述初级模型数据组是指根据数据的格式和模型数据存储相关的特征筛选出的所有3D模型对应的模型数据构成的组合,所述初级模型数据组中的各个初级模型数据对应所述虚拟环境中一个对象模型的模型数据。Specifically, the primary model data group refers to a combination of model data corresponding to all 3D models screened out according to data format and features related to model data storage, and each primary model data in the primary model data group corresponds to model data of an object model in the virtual environment.

本公开实施例中,参照图2所示,所述对所述定位模型文件进行模式模型筛选以及存储特征筛选,得到初级模型数据组,包括:In the embodiment of the present disclosure, as shown in FIG. 2 , the pattern model screening and storage feature screening of the positioning model file to obtain the primary model data group includes:

S21、对所述定位模型文件进行标识符模式匹配,得到标识符模型数据组;S21, performing identifier pattern matching on the positioning model file to obtain an identifier model data group;

S22、对所述定位模型文件进行结构模式匹配,得到结构模型数据组;S22, performing structural pattern matching on the positioning model file to obtain a structural model data group;

S23、从所述定位模型文件中提取出文件元数据集,将所述文件元数据集特征编码成文件元特征集;S23, extracting a file metadata set from the positioning model file, and encoding features of the file metadata set into a file metadata feature set;

S24、对所述文件元特征集进行模型特征筛选,得到模型特征组;S24, performing model feature screening on the file meta-feature set to obtain a model feature group;

S25、根据所述模型特征组从所述定位模型文件中筛选出元数据模型数据组;S25, filtering out a metadata model data group from the positioning model file according to the model feature group;

S26、根据所述标识符模型数据组、所述结构模型数据组以及所述元数据模型数据组生成初级模型数据组。S26. Generate a primary model data group according to the identifier model data group, the structure model data group and the metadata model data group.

详细地,所述标识符模式匹配是指对所述定位模型文件中的各个文件的后缀名进行匹配,将属于3D模型格式的后缀名对应的模型数据汇集成标识符模型数据组,所述属于3D模型格式的后缀名可以是obj、fbx、3ds以及gltf等,可以利用正则表达式进行标识符模式匹配。In detail, the identifier pattern matching refers to matching the suffix names of each file in the positioning model file, and aggregating the model data corresponding to the suffix names belonging to the 3D model format into an identifier model data group. The suffix names belonging to the 3D model format can be obj, fbx, 3ds, gltf, etc., and regular expressions can be used for identifier pattern matching.

具体地,所述结构模式匹配是指对所述定位模型文件中的各个文件的文件头进行匹配,将属于3D模型结构格式的文件头对应的模型数据汇集成结构模型数据组,可以利用PyWavefront或PyFBX等解析库进行结构模式匹配。Specifically, the structural pattern matching refers to matching the file headers of each file in the positioning model file, and aggregating the model data corresponding to the file headers belonging to the 3D model structure format into a structural model data group. Structural pattern matching can be performed using parsing libraries such as PyWavefront or PyFBX.

详细地,所述文件元数据集是指所述定位模型文件中各个数据的元数据组成的集合,所述元数据又称中介数据、中继数据,为描述数据的数据,主要是描述数据属性的信息,用来支持如指示文件的创建者、软件版本、模型名称等功能。In detail, the file metadata set refers to a collection of metadata of each data in the positioning model file. The metadata is also called intermediate data or relay data. It is data that describes the data, mainly information that describes the attributes of the data, and is used to support functions such as indicating the creator of the file, the software version, and the model name.

具体地,可以利用预先训练后的变分自编码器或transformer模型的编码器模块进行特征编码,所述模型特征筛选是指可以利用预先训练后的变分自编码器或transformer模型的解码器模块对所述文件元特征集进行特征解码,得到文件元类型集,从所述文件元类型集中筛选出模型数据对应的文件元类型汇集成模型文件元组,将所述文件元特征集中所述模型文件元组对应的文件元特征汇集成模型特征组。Specifically, feature encoding can be performed using the encoder module of a pre-trained variational autoencoder or transformer model, and the model feature screening refers to performing feature decoding on the file meta-feature set using the decoder module of a pre-trained variational autoencoder or transformer model to obtain a file meta-type set, filtering out file meta-types corresponding to model data from the file meta-type set and gathering them into model file tuples, and gathering file meta-features corresponding to the model file tuples in the file meta-feature set into a model feature group.

详细地,所述根据所述标识符模型数据组、所述结构模型数据组以及所述元数据模型数据组生成初级模型数据组是指将所述标识符模型数据组、所述结构模型数据组以及所述元数据模型数据组对应的所有数据作为初级模型数据汇集成初级模型数据组。In detail, generating a primary model data group according to the identifier model data group, the structure model data group and the metadata model data group means collecting all data corresponding to the identifier model data group, the structure model data group and the metadata model data group as primary model data into a primary model data group.

本公开实施例中,通过进行模式模型筛选以及存储特征筛选能够实现针对定位模型文件中数据的初步筛选,将所述定位模型文件中除模型数据之外的数据筛除,从而提高模型数据匹配的效率。In the disclosed embodiment, by performing pattern model screening and storage feature screening, preliminary screening of data in the positioning model file can be achieved, and data other than model data in the positioning model file can be screened out, thereby improving the efficiency of model data matching.

S4、对所述标定模型数据进行顶点结构特征提取,得到标定模型特征,根据所述标定模型特征对所述初级模型数据组进行结构特征匹配,得到次级模型数据组。S4. Extract vertex structural features from the calibration model data to obtain calibration model features, and perform structural feature matching on the primary model data set according to the calibration model features to obtain a secondary model data set.

详细地,所述标定模型特征是指所述标定模型数据对应的模型顶点以及模型结构等特征,所述次级模型数据组是针对所述初级模型数据组进行进一步匹配筛选后得到的模型数据的组合。In detail, the calibration model features refer to features such as model vertices and model structures corresponding to the calibration model data, and the secondary model data group is a combination of model data obtained after further matching and screening the primary model data group.

本公开实施例中,所述对所述标定模型数据进行顶点结构特征提取,得到标定模型特征,包括:从所述标定模型数据中提取出标定类型;根据所述标定类型对所述标定模型数据进行类型解析,得到解析模型数据;分别从所述解析模型数据中统计出标定顶点数据、标定法线数据以及标定三角面数据;对所述标定顶点数据、所述标定法线数据以及所述标定三角面数据进行结构特征编码,得到标定模型特征。In the disclosed embodiment, the extracting of vertex structural features from the calibration model data to obtain calibration model features includes: extracting a calibration type from the calibration model data; performing type parsing on the calibration model data according to the calibration type to obtain parsed model data; respectively counting calibration vertex data, calibration normal data, and calibration triangle data from the parsed model data; and performing structural feature encoding on the calibration vertex data, the calibration normal data, and the calibration triangle data to obtain calibration model features.

具体地,所述标定类型是指所述标定模型数据的数据类型,所述标定类型可以是OBJ、FBX或STL类型,所述标定顶点数据是指所述标定模型数据中顶点的数量,所述标定法线数据是指所述标定模型数据中法线的数量,所述标定三角面数据是指所述标定模型数据中三角面的数量。Specifically, the calibration type refers to the data type of the calibration model data, and the calibration type may be OBJ, FBX or STL type. The calibration vertex data refers to the number of vertices in the calibration model data. The calibration normal data refers to the number of normals in the calibration model data. The calibration triangle data refers to the number of triangles in the calibration model data.

详细地,所述根据所述标定类型对所述标定模型数据进行类型解析,例如,在所述标定类型为OBJ类型时,可以通过统计以“v”开头的行数得到标定顶点数据,可以通过统计以“f”开头的行数得到标定三角面数据,可以通过统计以“vn”开头的行数得到标定法线数据。In detail, the calibration model data is parsed according to the calibration type. For example, when the calibration type is OBJ type, the calibration vertex data can be obtained by counting the number of rows starting with "v", the calibration triangle data can be obtained by counting the number of rows starting with "f", and the calibration normal data can be obtained by counting the number of rows starting with "vn".

详细地,所述根据所述标定模型特征对所述初级模型数据组进行结构特征匹配,得到次级模型数据组,包括:逐个选取所述初级模型数据组中的初级模型数据作为目标初级模型数据,对所述目标初级模型数据进行顶点结构特征提取,得到目标初级模型特征;计算出所述目标初级模型特征和所述标定模型特征之间的特征偏差值;判断所述特征偏差值是否大于预设的偏差阈值;若是,则返回所述逐个选取所述初级模型数据组中的初级模型数据作为目标初级模型数据的步骤;若否,则将所述目标初级模型数据作为次级模型数据添加至预设的次级模型数据组中。In detail, the structural feature matching of the primary model data group according to the calibration model features to obtain the secondary model data group includes: selecting the primary model data in the primary model data group one by one as the target primary model data, extracting the vertex structural features of the target primary model data to obtain the target primary model features; calculating the feature deviation value between the target primary model features and the calibration model features; judging whether the feature deviation value is greater than a preset deviation threshold; if so, returning to the step of selecting the primary model data in the primary model data group one by one as the target primary model data; if not, adding the target primary model data as the secondary model data to the preset secondary model data group.

具体地,所述顶点结构特征提取的方法与上述对所述标定模型数据进行顶点结构特征提取的方法一致,可以利用余弦特征距离算法、欧式特征距离算法或曼哈顿特征距离算法计算出特征偏差值,所述特征偏差值是指所述目标初级模型特征和所述标定模型特征之间的差异值。Specifically, the method for extracting vertex structure features is consistent with the above-mentioned method for extracting vertex structure features on the calibration model data. The feature deviation value can be calculated using a cosine feature distance algorithm, a Euclidean feature distance algorithm or a Manhattan feature distance algorithm. The feature deviation value refers to the difference between the target primary model feature and the calibration model feature.

本公开实施例中,通过进行顶点结构特征提取以及结构特征匹配,能够根据标定模型数据的结构特征实现初步的模型数据匹配,从而减少后续需要匹配的模型数据的数量,并进一步提高模型数据匹配的准确性。In the disclosed embodiment, by performing vertex structural feature extraction and structural feature matching, preliminary model data matching can be achieved based on the structural features of the calibration model data, thereby reducing the amount of model data that needs to be matched subsequently and further improving the accuracy of model data matching.

S5、根据所述标定模型数据对所述次级模型数据组进行逐面细节匹配,得到匹配模型数据。S5. Perform face-by-face detail matching on the secondary model data set according to the calibration model data to obtain matching model data.

详细地,所述次级模型数据组中可能存在与待匹配的模型数据顶点数、三角面数以及法线数相近的模型数据,为了实现精准匹配,还需要根据标定模型数据的细节特征进行进一步匹配,所述匹配模型数据是指匹配出的待打印的对象模型的模型数据。In detail, the secondary model data group may contain model data with similar number of vertices, triangles and normals to the model data to be matched. In order to achieve accurate matching, further matching is required based on the detailed features of the calibration model data. The matching model data refers to the matched model data of the object model to be printed.

本公开实施例中,所述根据所述标定模型数据对所述次级模型数据组进行逐面细节匹配,得到匹配模型数据,包括:从所述标定模型数据中提取出标定坐标系,根据所述标定坐标系对所述标定模型数据进行坐标系矫正,得到矫正标定模型数据;逐个选取所述次级模型数据组中的次级模型数据作为目标次级模型数据,对所述矫正标定模型数据和所述目标次级模型数据进行逐面细节匹配,得到细节偏差值;判断所述细节偏差值是否小于预设的细节偏差阈值;若否,则返回所述逐个选取所述次级模型数据组中的次级模型数据作为目标次级模型数据的步骤;若是,则将所述细节偏差值添加至预设的细节偏差值组中,直至所述目标次级模型数据是所述次级模型数据组中的最后一个次级模型数据时,将所述细节偏差值组中数值最小的细节偏差值作为匹配细节偏差值;将所述匹配细节偏差值对应的次级模型数据作为匹配模型数据。In the disclosed embodiment, the step of performing face-by-face detail matching on the secondary model data group according to the calibration model data to obtain matching model data includes: extracting a calibration coordinate system from the calibration model data, and performing coordinate system correction on the calibration model data according to the calibration coordinate system to obtain corrected calibration model data; selecting the secondary model data in the secondary model data group as target secondary model data one by one, and performing face-by-face detail matching on the corrected calibration model data and the target secondary model data to obtain a detail deviation value; judging whether the detail deviation value is less than a preset detail deviation threshold; if not, returning to the step of selecting the secondary model data in the secondary model data group as target secondary model data one by one; if yes, adding the detail deviation value to a preset detail deviation value group until the target secondary model data is the last secondary model data in the secondary model data group, and then using the detail deviation value with the smallest value in the detail deviation value group as the matching detail deviation value; and using the secondary model data corresponding to the matching detail deviation value as the matching model data.

详细地,所述标定坐标系是指所述标定模型数据对应的屏幕坐标系、投影坐标系以及视图坐标系,所述标定模型数据是用户直接针对屏幕进行标定得到的模型数据,因此需要将标定模型数据转化成与所述次级模型数据组中各个次级模型数据对应的局部坐标系内的数据,从而进行匹配。In detail, the calibration coordinate system refers to the screen coordinate system, projection coordinate system and view coordinate system corresponding to the calibration model data. The calibration model data is model data obtained by the user directly calibrating the screen. Therefore, the calibration model data needs to be converted into data in the local coordinate system corresponding to each secondary model data in the secondary model data group for matching.

具体地,所述根据所述标定坐标系对所述标定模型数据进行坐标系矫正,得到矫正标定模型数据,包括:根据所述标定坐标系对所述标定模型数据进行屏幕坐标投影,得到投影标定模型数据;根据所述标定坐标系对所述投影标定模型数据进行视图坐标转换,得到视图标定模型数据;根据所述标定坐标系对所述视图标定模型数据进行世界坐标转换,得到世界标定模型数据;从所述世界标定模型数据中计算出模型中点,根据所述模型中点对所述世界标定模型数据进行局部坐标转换,得到矫正标定模型数据。Specifically, the coordinate system correction of the calibration model data according to the calibration coordinate system to obtain the corrected calibration model data includes: performing screen coordinate projection on the calibration model data according to the calibration coordinate system to obtain projection calibration model data; performing view coordinate transformation on the projection calibration model data according to the calibration coordinate system to obtain view calibration model data; performing world coordinate transformation on the view calibration model data according to the calibration coordinate system to obtain world calibration model data; calculating the model midpoint from the world calibration model data, and performing local coordinate transformation on the world calibration model data according to the model midpoint to obtain the corrected calibration model data.

详细地,所述屏幕坐标投影是指将屏幕坐标系的所述标定模型数据转换成投影坐标系的投影标定模型数据,所述视图坐标转换是指将投影坐标系的投影标定模型数据转换成视图坐标系的视图标定模型数据,所述世界坐标转换是指将视图坐标系的视图标定模型数据转换成世界坐标系的世界标定模型数据,所述模型中点是指所述世界标定模型数据对应的模型的中心位置坐标,所述局部坐标转换是指将世界坐标系的世界标定模型数据转化成一所述模型中点为坐标原点的局部坐标系的矫正标定模型数据。In detail, the screen coordinate projection refers to converting the calibration model data of the screen coordinate system into projection calibration model data of the projection coordinate system, the view coordinate conversion refers to converting the projection calibration model data of the projection coordinate system into view calibration model data of the view coordinate system, the world coordinate conversion refers to converting the view calibration model data of the view coordinate system into world calibration model data of the world coordinate system, the model midpoint refers to the center position coordinates of the model corresponding to the world calibration model data, and the local coordinate conversion refers to converting the world calibration model data of the world coordinate system into correction calibration model data of a local coordinate system with the model midpoint as the coordinate origin.

详细地,参照图3所示,所述对所述矫正标定模型数据和所述目标次级模型数据进行逐面细节匹配,得到细节偏差值,包括:In detail, as shown in FIG. 3 , performing face-by-face detail matching on the corrected calibration model data and the target secondary model data to obtain a detail deviation value includes:

S31、按照距离坐标原点由近到远的顺序逐个选取所述矫正标定模型数据中的三角面作为目标标定三角面,将所述目标标定三角面的法线作为目标标定法线;S31, selecting triangular faces in the correction calibration model data one by one in order from near to far from the coordinate origin as target calibration triangular faces, and using the normal of the target calibration triangular faces as the target calibration normal;

S32、按照距离坐标原点由近到远的顺序逐个选取所述目标次级模型数据中的三角面作为目标次级三角面,将所述目标次级三角面的法线作为目标次级法线;S32, selecting triangular faces in the target secondary model data one by one in order from near to far from the coordinate origin as target secondary triangular faces, and using normals of the target secondary triangular faces as target secondary normals;

S33、计算出所述目标标定三角面和所述目标次级三角面之间的边比例偏差值;S33, calculating the edge ratio deviation value between the target calibration triangle and the target secondary triangle;

S34、计算出所述目标标定法线和所述目标次级法线之间的法线斜率偏差值;S34, calculating a normal slope deviation value between the target calibration normal line and the target secondary normal line;

S35、根据所有的边比例偏差值和所有的法线斜率偏差值生成细节偏差值。S35. Generate detail deviation values according to all edge ratio deviation values and all normal slope deviation values.

详细地,所述边比例偏差值是指所述目标标定三角面和所述目标次级三角面的对应的三组边之间比例的标准差,例如,可以按照边的长度顺序将所述目标标定三角面的边排序成“AB”、“BC”、“AC”,将所述目标次级三角面的边排序成“DE”、“EF”、“DF”,则三组边之间的比例分别为:In detail, the edge ratio deviation value refers to the standard deviation of the ratio between the three groups of edges corresponding to the target calibration triangle and the target secondary triangle. For example, the edges of the target calibration triangle can be sorted into "AB", "BC", and "AC" according to the length of the edges, and the edges of the target secondary triangle can be sorted into "DE", "EF", and "DF". The ratios between the three groups of edges are:

则所述边比例偏差值是指以及的标准差。Then the side ratio deviation value refers to , as well as The standard deviation of .

具体地,所述法线斜率偏差值是指所述目标标定法线的法线向量与所述目标集法线的法线向量之间的向量距离,所述细节偏差值是所有边比例偏差值和所有法线斜率偏差值的加权平均值。Specifically, the normal slope deviation value refers to the vector distance between the normal vector of the target calibration normal and the normal vector of the target set normal, and the detail deviation value is the weighted average of all edge ratio deviation values and all normal slope deviation values.

本公开实施例中,通过进行逐面细节匹配,能够结合模型数据的各个三角面以及对应的法线的偏差实现更进一步的匹配,提高了模型数据识别匹配的精确度。In the disclosed embodiment, by performing face-by-face detail matching, further matching can be achieved by combining the deviations of the various triangular faces of the model data and the corresponding normals, thereby improving the accuracy of model data recognition and matching.

本公开提供的一种3D模型数据的识别匹配方法,通过获取所述标定模型数据,能够得到待匹配模型的标定模型数据,从而方便进行模型匹配,通过进行模型定位,能够匹配出存储组件中模型数据所在的文件夹,从而实现了初步的模型数据定位,减少了模型数据匹配的查询工作量,提高了模型数据的匹配效率。The present disclosure provides a method for identifying and matching 3D model data. By acquiring the calibration model data, the calibration model data of the model to be matched can be obtained, thereby facilitating model matching. By performing model positioning, the folder where the model data is located in the storage component can be matched, thereby achieving preliminary model data positioning, reducing the query workload of model data matching, and improving the matching efficiency of model data.

通过进行模式模型筛选以及存储特征筛选能够实现针对定位模型文件中数据的初步筛选,将所述定位模型文件中除模型数据之外的数据筛除,从而提高模型数据匹配的效率,通过进行顶点结构特征提取以及结构特征匹配,能够根据标定模型数据的结构特征实现初步的模型数据匹配,从而减少后续需要匹配的模型数据的数量,并进一步提高模型数据匹配的准确性。By performing pattern model screening and storage feature screening, it is possible to perform preliminary screening of the data in the positioning model file, and to filter out data other than model data in the positioning model file, thereby improving the efficiency of model data matching; by performing vertex structure feature extraction and structure feature matching, it is possible to achieve preliminary model data matching based on the structural features of the calibration model data, thereby reducing the amount of model data that needs to be matched subsequently and further improving the accuracy of model data matching.

通过进行逐面细节匹配,能够结合模型数据的各个三角面以及对应的法线的偏差实现更进一步的匹配,提高了模型数据识别匹配的精确度。By performing face-by-face detail matching, further matching can be achieved by combining the deviations of the various triangular faces of the model data and the corresponding normals, thereby improving the accuracy of model data recognition and matching.

实施例二Embodiment 2

在上述实施例的基础上,为了更加清楚地了解本公开,参照图4所示,下面通过一个第二实施例进一步解释本公开实施例一在需要提高匹配效率时的情况。On the basis of the above embodiments, in order to more clearly understand the present disclosure, as shown in FIG. 4 , the following further explains the situation in which the matching efficiency needs to be improved in the first embodiment of the present disclosure through a second embodiment.

S41、将预先渲染的虚拟环境发送至客户端中,获取所述客户端针对所述虚拟环境所返回的标定模型数据。S41, sending the pre-rendered virtual environment to the client, and obtaining calibration model data returned by the client for the virtual environment.

S42、获取所述虚拟环境对应的存储组件,对所述存储组件进行模型定位,得到定位模型文件。S42: Acquire a storage component corresponding to the virtual environment, perform model positioning on the storage component, and obtain a positioning model file.

S43、对所述定位模型文件进行模式模型筛选以及存储特征筛选,得到初级模型数据组。S43, performing pattern model screening and storage feature screening on the positioning model file to obtain a primary model data set.

S44、对所述标定模型数据进行顶点结构特征提取,得到标定模型特征,根据所述标定模型特征对所述初级模型数据组进行结构特征匹配,得到次级模型数据组。S44, extracting vertex structural features from the calibration model data to obtain calibration model features, and performing structural feature matching on the primary model data set according to the calibration model features to obtain a secondary model data set.

S45、根据所述标定模型数据对所述次级模型数据组进行逐面特征匹配,得到匹配模型数据。S45 . Perform face-by-face feature matching on the secondary model data set according to the calibration model data to obtain matching model data.

详细地,所述次级模型数据组中可能存在与待匹配的模型数据顶点数、三角面数以及法线数相近的模型数据,为了实现精准匹配,还需要根据标定模型数据的细节特征进行进一步匹配,所述匹配模型数据是指匹配出的待打印的对象模型的模型数据。In detail, the secondary model data group may contain model data with similar number of vertices, triangles and normals to the model data to be matched. In order to achieve accurate matching, further matching is required based on the detailed features of the calibration model data. The matching model data refers to the matched model data of the object model to be printed.

本公开实施例中,所述根据所述标定模型数据对所述次级模型数据组进行逐面特征匹配,得到匹配模型数据,包括:从所述标定模型数据中提取出标定坐标系,根据所述标定坐标系对所述标定模型数据进行坐标系矫正,得到矫正标定模型数据;逐个选取所述次级模型数据组中的次级模型数据作为目标次级模型数据,对所述矫正标定模型数据和所述目标次级模型数据进行逐面特征匹配,得到标准面特征偏差值;判断所述标准面特征偏差值是否小于预设的面特征偏差阈值;若否,则返回所述逐个选取所述次级模型数据组中的次级模型数据作为目标次级模型数据的步骤;若是,则将所述标准面特征偏差值添加至预设的面特征偏差值组中,直至所述目标次级模型数据是所述次级模型数据组中的最后一个次级模型数据时,将所述面特征偏差值组中数值最小的标准面特征偏差值作为匹配面特征偏差值;将所述匹配面特征偏差值对应的次级模型数据作为匹配模型数据。In the disclosed embodiment, the step of performing face-by-face feature matching on the secondary model data group according to the calibration model data to obtain matching model data includes: extracting a calibration coordinate system from the calibration model data, and performing coordinate system correction on the calibration model data according to the calibration coordinate system to obtain corrected calibration model data; selecting secondary model data in the secondary model data group as target secondary model data one by one, and performing face-by-face feature matching on the corrected calibration model data and the target secondary model data to obtain a standard face feature deviation value; judging whether the standard face feature deviation value is less than a preset face feature deviation threshold; if not, returning to the step of selecting secondary model data in the secondary model data group as target secondary model data one by one; if yes, adding the standard face feature deviation value to a preset face feature deviation value group until the target secondary model data is the last secondary model data in the secondary model data group, and then using the standard face feature deviation value with the smallest value in the face feature deviation value group as the matching face feature deviation value; and using the secondary model data corresponding to the matching face feature deviation value as the matching model data.

详细地,所述对所述矫正标定模型数据和所述目标次级模型数据进行逐面特征匹配,得到标准面特征偏差值,包括:按照距离坐标原点由近到远的顺序逐个选取所述矫正标定模型数据中的三角面作为目标标定三角面;按照距离坐标原点由近到远的顺序逐个选取所述目标次级模型数据中的三角面作为目标次级三角面;对所述目标标定三角面进行降维特征卷积,得到目标标定面特征;对所述目标次级三角面进行降维特征卷积,得到目标次级面特征;计算出所述目标标定面特征和所述目标次级面特征之间的面特征偏差值;根据所有的面特征偏差值生成标准面特征偏差值。In detail, the correction calibration model data and the target secondary model data are matched face by face to obtain a standard face feature deviation value, including: selecting triangular faces in the correction calibration model data as target calibration triangular faces one by one in order from near to far from the coordinate origin; selecting triangular faces in the target secondary model data as target secondary triangular faces one by one in order from near to far from the coordinate origin; performing dimensionality reduction feature convolution on the target calibration triangular faces to obtain target calibration face features; performing dimensionality reduction feature convolution on the target secondary triangular faces to obtain target secondary face features; calculating the face feature deviation value between the target calibration face features and the target secondary face features; and generating a standard face feature deviation value based on all face feature deviation values.

实施例三Embodiment 3

在上述实施例的基础上,图5为本公开实施例提供的一种3D模型数据的识别匹配系统的功能模块图。如图5所示,一种3D模型数据的识别匹配系统,包括:Based on the above embodiments, FIG5 is a functional module diagram of a 3D model data recognition and matching system provided by an embodiment of the present disclosure. As shown in FIG5 , a 3D model data recognition and matching system includes:

本实施例所述的3D模型数据的识别匹配系统500可以安装于电子设备中。根据实现的功能,所述3D模型数据的识别匹配系统500可以包括模型标定模块501、数据定位模块502、初级筛选模块503、次级筛选模块504及细节匹配模块505。本公开所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。The 3D model data recognition and matching system 500 described in this embodiment can be installed in an electronic device. According to the functions implemented, the 3D model data recognition and matching system 500 may include a model calibration module 501, a data positioning module 502, a primary screening module 503, a secondary screening module 504 and a detail matching module 505. The module described in the present disclosure may also be referred to as a unit, which refers to a series of computer program segments that can be executed by an electronic device processor and can complete fixed functions, which are stored in the memory of the electronic device.

在本实施例中,关于各模块/单元的功能如下:In this embodiment, the functions of each module/unit are as follows:

所述模型标定模块501,用于将预先渲染的虚拟环境发送至客户端中,获取所述客户端针对所述虚拟环境所返回的标定模型数据;The model calibration module 501 is used to send the pre-rendered virtual environment to the client and obtain the calibration model data returned by the client for the virtual environment;

所述数据定位模块502,用于获取所述虚拟环境对应的存储组件,对所述存储组件进行模型定位,得到定位模型文件;The data positioning module 502 is used to obtain the storage component corresponding to the virtual environment, perform model positioning on the storage component, and obtain a positioning model file;

所述初级筛选模块503,用于对所述定位模型文件进行模式模型筛选以及存储特征筛选,得到初级模型数据组;The primary screening module 503 is used to perform mode model screening and storage feature screening on the positioning model file to obtain a primary model data group;

所述次级筛选模块504,用于对所述标定模型数据进行顶点结构特征提取,得到标定模型特征,根据所述标定模型特征对所述初级模型数据组进行结构特征匹配,得到次级模型数据组;The secondary screening module 504 is used to extract vertex structural features from the calibration model data to obtain calibration model features, and perform structural feature matching on the primary model data set according to the calibration model features to obtain a secondary model data set;

所述细节匹配模块505,用于根据所述标定模型数据对所述次级模型数据组进行逐面细节匹配,得到匹配模型数据。The detail matching module 505 is used to perform face-by-face detail matching on the secondary model data set according to the calibration model data to obtain matching model data.

详细地,本公开实施例中所述3D模型数据的识别匹配系统500中所述的各模块在使用时采用如实施例一所述的3D模型数据的识别匹配方法一样的技术手段,并能够产生相同的技术效果,这里不再赘述。In detail, each module described in the 3D model data recognition and matching system 500 described in the embodiment of the present disclosure adopts the same technical means as the 3D model data recognition and matching method described in Example 1 when used, and can produce the same technical effects, which will not be repeated here.

实施例四Embodiment 4

在上述实施例的基础上,本实施例提供一种计算机设备,包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现上述实施例所述方法的步骤。On the basis of the above embodiments, this embodiment provides a computer device, including a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the steps of the method described in the above embodiments.

本实施例的一些实施方式中,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例所述方法的步骤。In some implementations of this embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the method described in the above embodiment are implemented.

本实施例的一些实施方式中,提供一种计算机程序产品,包括计算机程序/指令,该计算机程序被处理器执行时实现上述实施例所述方法的步骤。In some implementations of this embodiment, a computer program product is provided, including a computer program/instructions, and when the computer program is executed by a processor, the steps of the method described in the above embodiment are implemented.

处理器可以包括但不限于例如一个或者多个处理器或者或微处理器等。每一处理器可以是专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(Digital Signal Processor,简称DSP)、数字信号处理设备(Digital SignalProcessing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述实施例中的方法。The processor may include, but is not limited to, one or more processors or microprocessors, etc. Each processor may be an application specific integrated circuit (ASIC), a digital signal processor (DSP), a digital signal processing device (DSPD), a programmable logic device (PLD), a field programmable gate array (FPGA), a controller, a microcontroller, a microprocessor or other electronic components to execute the methods in the above embodiments.

计算机可读存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,计算机可读存储介质可以包括但不限于例如,随机存取存储器(RAM)、只读存储器(ROM)、快闪存储器、EPROM存储器、EEPROM存储器、寄存器、计算机存储介质(例如硬碟、软碟、固态硬盘、可移动碟、CD ROM、DVD ROM、蓝光盘等)。The computer-readable storage medium may be implemented by any type of volatile or non-volatile storage device or a combination thereof, and the computer-readable storage medium may include but is not limited to, for example, random access memory (RAM), read-only memory (ROM), flash memory, EPROM memory, EEPROM memory, registers, computer storage media (e.g., hard disk, floppy disk, solid-state drive, removable disk, CD ROM, DVD ROM, Blu-ray disc, etc.).

计算机可读存储介质还可以存储至少一个计算机可执行程序/指令,计算机可执行程序/指令例如是计算机可读指令。计算机可读存储介质包括但不限于例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。计算机可读存储介质例如可以包括只读存储器(ROM)、硬盘、闪存等。例如,非暂时性计算机可读存储介质可以连接于诸如计算机等的计算设备,接着,在计算设备运行计算机可读存储介质上存储的计算机可读指令的情况下,可以进行如上描述的各个方法。The computer-readable storage medium may also store at least one computer executable program/instruction, which may be, for example, a computer-readable instruction. The computer-readable storage medium includes, but is not limited to, for example, a volatile memory and/or a non-volatile memory. The volatile memory may include, for example, a random access memory (RAM) and/or a cache memory (cache), etc. The computer-readable storage medium may include, for example, a read-only memory (ROM), a hard disk, a flash memory, etc. For example, a non-transitory computer-readable storage medium may be connected to a computing device such as a computer, and then, when the computing device runs the computer-readable instructions stored on the computer-readable storage medium, the various methods described above may be performed.

除此之外,该计算机设备还可以包括(但不限于)数据总线、输入/输出(I/O)总线,显示器以及输入/输出设备 (例如,键盘、鼠标、扬声器等)等。In addition, the computer device may also include (but not limited to) a data bus, an input/output (I/O) bus, a display, and input/output devices (e.g., keyboard, mouse, speakers, etc.), etc.

处理器可以通过I/O总线经由有线或无线网络与外部设备通信。The processor may communicate with external devices via an I/O bus via a wired or wireless network.

在一个实施方式中,该至少一个计算机可执行指令也可以被编译为或组成一种软件产品/计算机程序产品,其中一个或多个计算机可执行指令被处理器运行时执行本技术所描述的实施例中的各个功能和/或方法的步骤。In one embodiment, the at least one computer executable instruction may also be compiled into or constitute a software product/computer program product, wherein one or more computer executable instructions are executed by a processor to perform the various functions and/or method steps in the embodiments described in the present technology.

在本公开所提供的实施例中,应该理解到,所揭露的系统和方法,也可以通过其它的方式实现。以上所描述的系统实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,上述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。In the embodiments provided in the present disclosure, it should be understood that the disclosed systems and methods can also be implemented in other ways. The system embodiments described above are merely schematic. For example, the flowcharts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the systems, methods and computer program products according to the multiple embodiments of the present disclosure. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of the code, and the above-mentioned module, program segment or a part of the code contains one or more executable instructions for implementing the specified logical functions. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and/or flowchart, and the combination of boxes in the block diagram and/or flowchart can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions.

需要说明的是,在本公开中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。It should be noted that in the present disclosure, the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element limited by the sentence "includes a ..." does not exclude the existence of other identical elements in the process, method, article or device including the element.

虽然本公开所揭露的实施方式如上,但上述的内容只是为了便于理解本公开而采用的实施方式,并非用以限定本公开。任何本公开所属技术领域内的技术人员,在不脱离本公开所揭露的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本公开的专利保护范围,仍须以所附的权利要求书所界定的范围为准。Although the embodiments disclosed in the present disclosure are as above, the above contents are only embodiments adopted for facilitating the understanding of the present disclosure and are not intended to limit the present disclosure. Any technician in the technical field to which the present disclosure belongs can make any modifications and changes in the form and details of the implementation without departing from the spirit and scope disclosed in the present disclosure, but the scope of patent protection of the present disclosure shall still be subject to the scope defined in the attached claims.

Claims (8)

1.一种3D模型数据的识别匹配方法,其特征在于,包括:1. A method for identifying and matching 3D model data, comprising: 将预先渲染的虚拟环境发送至客户端中,获取所述客户端针对所述虚拟环境所返回的标定模型数据,其中,所述标定模型数据是指客户端的用户对需要进行打印的对象模型进行标定得到的数据,所述标定模型数据标定了所述对象模型的多个顶点、边或者平面的坐标;Sending the pre-rendered virtual environment to the client, and obtaining calibration model data returned by the client for the virtual environment, wherein the calibration model data refers to data obtained by a user of the client calibrating an object model to be printed, and the calibration model data calibrates the coordinates of multiple vertices, edges or planes of the object model; 获取所述虚拟环境对应的存储组件,对所述存储组件进行模型定位,得到定位模型文件;Acquire a storage component corresponding to the virtual environment, perform model positioning on the storage component, and obtain a positioning model file; 对所述定位模型文件进行模式模型筛选以及存储特征筛选,得到初级模型数据组;Performing mode model screening and storage feature screening on the positioning model file to obtain a primary model data group; 对所述标定模型数据进行顶点结构特征提取,得到标定模型特征,根据所述标定模型特征对所述初级模型数据组进行结构特征匹配,得到次级模型数据组;Extracting vertex structural features from the calibration model data to obtain calibration model features, and performing structural feature matching on the primary model data set according to the calibration model features to obtain a secondary model data set; 根据所述标定模型数据对所述次级模型数据组进行逐面细节匹配,得到匹配模型数据;Performing face-by-face detail matching on the secondary model data set according to the calibration model data to obtain matching model data; 其中,所述对所述存储组件进行模型定位,得到定位模型文件,包括:The step of performing model positioning on the storage component to obtain a positioning model file includes: 对所述存储组件进行目录解析,得到存储目录以及所述存储目录对应的目录属性;Performing directory parsing on the storage component to obtain a storage directory and a directory attribute corresponding to the storage directory; 利用模型关键词匹配的方法从所述存储目录中提取出初级模型文件;Extracting the primary model file from the storage directory using a model keyword matching method; 从所述目录属性中提取出文件属性特征集,对所述文件属性特征集进行模型属性筛选,得到模型属性特征组;Extracting a file attribute feature set from the directory attributes, performing model attribute screening on the file attribute feature set to obtain a model attribute feature group; 将所述存储目录中所述模型属性特征组对应的文件汇集成次级模型文件;Gather the files corresponding to the model attribute feature group in the storage directory into a secondary model file; 利用递归遍历的方式对所述存储目录进行树结构映射,得到文件索引树;Mapping the storage directory to a tree structure by recursive traversal to obtain a file index tree; 根据所述初级模型文件和所述次级模型文件对所述文件索引树进行关联文件匹配,得到索引模型文件;Performing associated file matching on the file index tree according to the primary model file and the secondary model file to obtain an index model file; 根据所述初级模型文件、所述次级模型文件以及所述索引模型文件生成定位模型文件;Generate a positioning model file according to the primary model file, the secondary model file and the index model file; 所述对所述定位模型文件进行模式模型筛选以及存储特征筛选,得到初级模型数据组,包括:The method of performing mode model screening and storage feature screening on the positioning model file to obtain a primary model data group includes: 对所述定位模型文件进行标识符模式匹配,得到标识符模型数据组;Performing identifier pattern matching on the positioning model file to obtain an identifier model data group; 对所述定位模型文件进行结构模式匹配,得到结构模型数据组;Performing structural pattern matching on the positioning model file to obtain a structural model data group; 从所述定位模型文件中提取出文件元数据集,将所述文件元数据集特征编码成文件元特征集;Extracting a file metadata set from the positioning model file, and encoding features of the file metadata set into a file metadata feature set; 对所述文件元特征集进行模型特征筛选,得到模型特征组;Performing model feature screening on the file meta-feature set to obtain a model feature group; 根据所述模型特征组从所述定位模型文件中筛选出元数据模型数据组;Filtering out a metadata model data group from the positioning model file according to the model feature group; 根据所述标识符模型数据组、所述结构模型数据组以及所述元数据模型数据组生成初级模型数据组。A primary model data set is generated based on the identifier model data set, the structure model data set and the metadata model data set. 2.根据权利要求1所述的3D模型数据的识别匹配方法,其特征在于,所述对所述标定模型数据进行顶点结构特征提取,得到标定模型特征,包括:2. The 3D model data recognition and matching method according to claim 1, characterized in that the step of extracting vertex structure features from the calibration model data to obtain calibration model features comprises: 从所述标定模型数据中提取出标定类型;Extracting a calibration type from the calibration model data; 根据所述标定类型对所述标定模型数据进行类型解析,得到解析模型数据;Performing type parsing on the calibration model data according to the calibration type to obtain parsed model data; 分别从所述解析模型数据中统计出标定顶点数据、标定法线数据以及标定三角面数据;Counting calibration vertex data, calibration normal data and calibration triangle surface data from the analytical model data respectively; 对所述标定顶点数据、所述标定法线数据以及所述标定三角面数据进行结构特征编码,得到标定模型特征。Structural feature encoding is performed on the calibration vertex data, the calibration normal data, and the calibration triangle surface data to obtain calibration model features. 3.根据权利要求1所述的3D模型数据的识别匹配方法,其特征在于,所述根据所述标定模型数据对所述次级模型数据组进行逐面细节匹配,得到匹配模型数据,包括:3. The 3D model data recognition and matching method according to claim 1, characterized in that the step of performing face-by-face detail matching on the secondary model data set according to the calibration model data to obtain matching model data comprises: 从所述标定模型数据中提取出标定坐标系,根据所述标定坐标系对所述标定模型数据进行坐标系矫正,得到矫正标定模型数据;Extracting a calibration coordinate system from the calibration model data, and performing coordinate system correction on the calibration model data according to the calibration coordinate system to obtain corrected calibration model data; 逐个选取所述次级模型数据组中的次级模型数据作为目标次级模型数据,对所述矫正标定模型数据和所述目标次级模型数据进行逐面细节匹配,得到细节偏差值;Selecting the secondary model data in the secondary model data group one by one as the target secondary model data, performing face-by-face detail matching on the corrected calibration model data and the target secondary model data to obtain a detail deviation value; 判断所述细节偏差值是否小于预设的细节偏差阈值;Determine whether the detail deviation value is less than a preset detail deviation threshold; 若否,则返回所述逐个选取所述次级模型数据组中的次级模型数据作为目标次级模型数据的步骤;If not, returning to the step of selecting the secondary model data in the secondary model data group one by one as the target secondary model data; 若是,则将所述细节偏差值添加至预设的细节偏差值组中,直至所述目标次级模型数据是所述次级模型数据组中的最后一个次级模型数据时,将所述细节偏差值组中数值最小的细节偏差值作为匹配细节偏差值;If yes, then the detail deviation value is added to a preset detail deviation value group, until the target secondary model data is the last secondary model data in the secondary model data group, and the detail deviation value with the smallest value in the detail deviation value group is used as the matching detail deviation value; 将所述匹配细节偏差值对应的次级模型数据作为匹配模型数据。The secondary model data corresponding to the matching detail deviation value is used as matching model data. 4.根据权利要求3所述的3D模型数据的识别匹配方法,其特征在于,所述对所述矫正标定模型数据和所述目标次级模型数据进行逐面细节匹配,得到细节偏差值,包括:4. The 3D model data recognition and matching method according to claim 3, characterized in that the step of performing face-by-face detail matching on the corrected calibration model data and the target secondary model data to obtain a detail deviation value comprises: 按照距离坐标原点由近到远的顺序逐个选取所述矫正标定模型数据中的三角面作为目标标定三角面,将所述目标标定三角面的法线作为目标标定法线;Selecting triangular faces in the correction calibration model data one by one in the order from near to far from the coordinate origin as target calibration triangular faces, and using the normal of the target calibration triangular faces as the target calibration normal; 按照距离坐标原点由近到远的顺序逐个选取所述目标次级模型数据中的三角面作为目标次级三角面,将所述目标次级三角面的法线作为目标次级法线;Selecting triangular faces in the target secondary model data one by one in the order from near to far from the coordinate origin as target secondary triangular faces, and using normals of the target secondary triangular faces as target secondary normals; 计算出所述目标标定三角面和所述目标次级三角面之间的边比例偏差值;Calculating an edge ratio deviation value between the target calibration triangle and the target secondary triangle; 计算出所述目标标定法线和所述目标次级法线之间的法线斜率偏差值;Calculating a normal slope deviation value between the target calibration normal and the target secondary normal; 根据所有的边比例偏差值和所有的法线斜率偏差值生成细节偏差值。Generates a detail bias value based on all edge scale bias values and all normal slope bias values. 5.一种3D模型数据的识别匹配系统,其特征在于,应用权利要求1-4中任一项所述的3D模型数据的识别匹配方法,包括:5. A 3D model data recognition and matching system, characterized in that the 3D model data recognition and matching method according to any one of claims 1 to 4 is applied, comprising: 模型标定模块,用于将预先渲染的虚拟环境发送至客户端中,获取所述客户端针对所述虚拟环境所返回的标定模型数据;A model calibration module, used to send the pre-rendered virtual environment to the client, and obtain calibration model data returned by the client for the virtual environment; 数据定位模块,用于获取所述虚拟环境对应的存储组件,对所述存储组件进行模型定位,得到定位模型文件;A data positioning module, used for acquiring a storage component corresponding to the virtual environment, performing model positioning on the storage component, and obtaining a positioning model file; 初级筛选模块,用于对所述定位模型文件进行模式模型筛选以及存储特征筛选,得到初级模型数据组;A primary screening module, used for performing mode model screening and storage feature screening on the positioning model file to obtain a primary model data group; 次级筛选模块,用于对所述标定模型数据进行顶点结构特征提取,得到标定模型特征,根据所述标定模型特征对所述初级模型数据组进行结构特征匹配,得到次级模型数据组;A secondary screening module is used to extract vertex structural features from the calibration model data to obtain calibration model features, and to perform structural feature matching on the primary model data group according to the calibration model features to obtain a secondary model data group; 细节匹配模块,用于根据所述标定模型数据对所述次级模型数据组进行逐面细节匹配,得到匹配模型数据。The detail matching module is used to perform face-by-face detail matching on the secondary model data set according to the calibration model data to obtain matching model data. 6.一种计算机设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1至4中任一项所述3D模型数据的识别匹配方法的步骤。6. A computer device comprising a memory, a processor and a computer program stored in the memory, wherein the processor executes the computer program to implement the steps of the 3D model data recognition and matching method described in any one of claims 1 to 4. 7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至4中任一项所述3D模型数据的识别匹配方法的步骤。7. A computer-readable storage medium having a computer program stored thereon, characterized in that when the computer program is executed by a processor, the steps of the 3D model data recognition and matching method described in any one of claims 1 to 4 are implemented. 8.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序被处理器执行时实现权利要求1至4中任一项所述3D模型数据的识别匹配方法的步骤。8. A computer program product, comprising a computer program/instructions, characterized in that when the computer program is executed by a processor, the steps of the 3D model data recognition and matching method described in any one of claims 1 to 4 are implemented.
CN202411197563.4A 2024-08-29 2024-08-29 3D model data identification matching method, system, device, medium and program Active CN118710942B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202411197563.4A CN118710942B (en) 2024-08-29 2024-08-29 3D model data identification matching method, system, device, medium and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202411197563.4A CN118710942B (en) 2024-08-29 2024-08-29 3D model data identification matching method, system, device, medium and program

Publications (2)

Publication Number Publication Date
CN118710942A CN118710942A (en) 2024-09-27
CN118710942B true CN118710942B (en) 2024-11-05

Family

ID=92818629

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202411197563.4A Active CN118710942B (en) 2024-08-29 2024-08-29 3D model data identification matching method, system, device, medium and program

Country Status (1)

Country Link
CN (1) CN118710942B (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111046636A (en) * 2019-12-12 2020-04-21 深圳前海环融联易信息科技服务有限公司 Method and device for screening PDF file information, computer equipment and storage medium
CN111444072A (en) * 2020-03-26 2020-07-24 世纪龙信息网络有限责任公司 Abnormal identification method, device, computer equipment and storage medium of client

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7693917B2 (en) * 2001-11-30 2010-04-06 Intelligent Medical Objects, Inc. Method for adaptive data management
US8886669B2 (en) * 2008-03-21 2014-11-11 Trimble Navigation Limited File access via conduit application
US9607004B2 (en) * 2014-06-18 2017-03-28 International Business Machines Corporation Storage device data migration
US10949907B1 (en) * 2020-06-23 2021-03-16 Price Technologies Inc. Systems and methods for deep learning model based product matching using multi modal data
CN115576502B (en) * 2022-12-07 2023-04-28 苏州浪潮智能科技有限公司 Method, device, electronic device and storage medium for data storage
CN117115328A (en) * 2023-09-01 2023-11-24 网易(杭州)网络有限公司 Method and device for migrating hanging point, storage medium and electronic device
CN117171108B (en) * 2023-11-02 2024-02-13 北京友友天宇系统技术有限公司 Virtual model mapping method and system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111046636A (en) * 2019-12-12 2020-04-21 深圳前海环融联易信息科技服务有限公司 Method and device for screening PDF file information, computer equipment and storage medium
CN111444072A (en) * 2020-03-26 2020-07-24 世纪龙信息网络有限责任公司 Abnormal identification method, device, computer equipment and storage medium of client

Also Published As

Publication number Publication date
CN118710942A (en) 2024-09-27

Similar Documents

Publication Publication Date Title
CN110515896B (en) Model resource management method, model file manufacturing method, device and system
WO2019161645A1 (en) Shell-based data table extraction method, terminal, device, and storage medium
CN110569147B (en) Deleted file recovery method based on index, terminal device and storage medium
WO2021139242A1 (en) Presentation file generation method, apparatus, and device and storage medium
CN114638121A (en) Light-weight application method and system based on FBX model
CN110647562A (en) Data query method and device, electronic equipment and storage medium
JP7541184B2 (en) Image grouping method for three-dimensional reconstruction and its device, electronic device, and computer-readable storage medium
CN110945559A (en) Method and system for optimized visual summary of temporal event data sequences
CN114282284A (en) Model data processing method, apparatus, device and storage medium
CN113986828A (en) Method and device for storing mass files, electronic equipment and storage medium
CN107958209B (en) A kind of illegal construction identification method, system and electronic equipment
CN112380174B (en) XFS file system analysis method containing deleted files, terminal device and storage medium
CN118710942B (en) 3D model data identification matching method, system, device, medium and program
CN111178083A (en) Semantic matching method and device for BIM and GIS
CN118733717A (en) File duplication checking method, device, equipment, storage medium and program product
CN115733787A (en) Network identification method, device, server and storage medium
CN109783139B (en) Software interface feature extraction method, device and electronic device
CN116302089B (en) Picture similarity-based code clone detection method, system and storage medium
CN112307070A (en) Mask data query method, device and device
WO2021072776A1 (en) Data merging method and apparatus, electronic device, and storage medium
CN114926596B (en) Oblique photography terrain file loading method, device, equipment and storage medium
JP5867208B2 (en) Data model conversion program, data model conversion method, and data model conversion apparatus
CN116304189A (en) Image extraction method and electronic device in an excel file
CN109977343B (en) Ellipsoid equation drawing method, device, equipment and storage medium
CN110047137B (en) Paraboloid drawing method, device, equipment and storage medium

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