JP-7856400-B2 - 3D clustering navigation
Inventors
- アルノー ノンクレルク
- アントワーヌ ヴィルデュードゥトルシー
- ポール バードン
Assignees
- ダッソー システムズ
Dates
- Publication Date
- 20260511
- Application Date
- 20211015
- Priority Date
- 20201015
Claims (15)
- A computer implementation method for classifying three-dimensional (3D) objects, which is: - Step (S10) of providing a set of 3D objects, wherein each 3D object in the set has a signature representing the form of the 3D object; - A step (S20) of calculating a multilevel clustering of the set of 3D objects, wherein the multilevel clustering is a hierarchical tree structure having N hierarchical levels of clusters of the set of 3D objects, The calculation step (S20) is: --Step (S200) of calculating a first cluster from the set of 3D objects such that each of the 3D objects in the set has a similar signature, wherein the first cluster forms a first level of multilevel clustering and becomes a node of the first level of a hierarchical tree structure; --Step (S210) of calculating one or more second clusters from the first clusters such that each second cluster collects one or more first clusters having similar medoid signatures, wherein the one or more second clusters form a second level of multilevel clustering and become nodes of the second level of a hierarchical tree structure, and each node of the second level becomes the parent node of one or more nodes of the first level; --A calculation step (S20) comprising the calculation step (S220) which calculates one or more k-th clusters from the (k-1) clusters such that for each consecutive hierarchical level k of multilevel clustering after the second hierarchical level until the last hierarchical level N is reached, each cluster of the k-th clusters collects one or more (k-1) clusters having a nearby medoid signature, wherein the one or more k-th clusters become nodes of the k-th level in the hierarchical tree structure, and each node of the k-th level becomes the parent node of one or more nodes of the (k-1) level ; The computer implementation method has, - A selection step (S30) which, either automatically or in response to user interaction, selects one of the computed clusters at a certain level of multilevel clustering, thereby defining the current level; - A step (S40) of displaying 3D objects of selected clusters to the user in a first portion of the display, wherein the medoid 3D objects of the selected clusters are displayed in a substantially central area of the first portion, and the position of the displayed 3D objects is determined as a function of the distance between their signatures ; - Step (S80) of classifying the displayed 3D object during user interaction. Computer implementation methods including
- Before the step of classifying the displayed 3D objects: - During user interaction, select a new hierarchical level for multilevel clustering that is different from the current level, thereby defining the new current level; - The steps of automatically or in response to user interaction, selecting a new cluster at the new current level that corresponds to a parent or child node of a previously selected cluster in a hierarchical tree structure; and - The steps of displaying the 3D object of the selected new cluster to the user in a first portion of the display. The computer implementation method according to claim 1, further comprising:
- Before the steps of displaying 3D objects and classifying the displayed objects: - Further including the step of displaying a first set of icons representing each level of multilevel clustering in a second portion of the display; The step of selecting a new hierarchical level for multilevel clustering during user interaction is performed by selecting one of the displayed icons from the first set, and the selected new hierarchical level is represented by the selected icon. The computer implementation method according to claim 2.
- Before the steps of displaying 3D objects and classifying the displayed objects: - The process includes the step of displaying a second set of icons on a third portion of the display, each representing one of the clusters in the new current level; The step of selecting the current level cluster during user interaction is performed by selecting one of the displayed icons from a second set, and the selected cluster is represented by the selected icon. The computer implementation method according to claim 2 or 3.
- The following steps are taken: - A step of selecting one of the computed clusters at the current level of multilevel clustering, wherein the selected cluster is different from a previously selected cluster; - The steps of displaying the 3D objects of the selected cluster in a first part of the display; - Further including the step of classifying the displayed 3D objects, and repeating that step, A computer implementation method according to any one of claims 1 to 4.
- The following steps are taken: - The step of selecting the technical domain to which the set of 3D objects belongs; - A machine learning algorithm predicts the appropriate level of multilevel clustering based on the selected technology domain; - A step of defining the predicted appropriate level as the current level, It further includes, The machine learning algorithm is configured to take the multilevel clustering and the selected technology domain as input and output an appropriate level . The computer implementation method according to any one of claims 1 to 5.
- For each cluster, the following steps are taken: - A step of determining a medoid 3D object from among the 3D objects of the cluster, wherein the medoid 3D object is a 3D object having a signature S medoid that is closest to the centroid signature of the cluster, according to the following formula: In the formula, Si is the signature of each object i in the cluster, S-Medoid is the signature of the cluster's Medoid 3D object. The S centroid is the centroid signature of the cluster. Here, the cluster's centroid signature S is calculated using the average of the cluster's 3D object signatures according to the following formula: In the formula, M is the number of 3D objects gathered in the cluster. Si is the signature of each 3D object i included in the cluster. Further including the step of determining the aforementioned steps; and, The steps to display the 3D objects of the selected cluster in the first part of the display are: - A step of calculating the distance between the pair of 3D objects on a display for each pair of 3D objects in a set of 3D objects gathered in a cluster, wherein the distance is proportional to the distance between the signatures of the pair of 3D objects; - A step of positioning a 3D object on a first portion of a display using a calculated distance between a pair of 3D objects on the display, wherein the determined medoid 3D object of the selected cluster is displayed in the center of the first portion. A computer implementation method according to any one of claims 1 to 6, further comprising:
- The steps to display the 3D objects of the selected cluster in the first part of the display are as follows: - Includes the step of displaying and automatically selecting all 3D objects of the selected cluster in a first part of the display, The aforementioned computer implementation method further, - The steps include: deselecting at least one of the displayed 3D objects during user interaction, thereby obtaining one or more displayed 3D objects that remain selected; - A step of classifying one or more displayed 3D objects that remain selected during user interaction, Further including, A computer implementation method according to any one of claims 1 to 7.
- The steps to classify the displayed 3D objects are: - A step of displaying tag inputs relating to the displayed 3D object on a fourth part of the display; - During user interaction in the fourth part, the steps include editing and/or verifying the tag input, A computer implementation method according to any one of claims 1 to 8, including the following:
- - Further includes the step of predicting the tags of a displayed 3D object using a machine learning algorithm and proposing the predicted tags to a tag input, wherein the machine learning algorithm further includes the step of predicting tags based on the signature of the displayed 3D object. The computer implementation method according to claim 9.
- Each level k of N consecutive hierarchical levels is associated with a predefined parameter εk such that each k from 2 to N is εk-1 <εk; - The step of calculating a first cluster of the set of 3D objects includes the step of calculating a first cluster of the set of 3D objects such that the first cluster consists of 3D objects from the set that have similar signatures as follows: In the formula, Si and Sj are the signatures of any pair i, j of 3D objects gathered in the first cluster. Therefore, the first cluster forms the first level of multilevel clustering and becomes a node of the first level of the hierarchical tree structure; - The step of computing one or more second clusters further includes the step of computing one or more second clusters from the first clusters such that the second clusters comprise one or more first clusters each having similar medoid signatures as follows: In the formula, S-medoid(i) and S-medoid(j) are medoid signatures of any pair i,j of the first clusters gathered into a second cluster, one or more second clusters thus form a second level of multilevel clustering and become nodes of the second level of the hierarchical tree structure, and each node of the second level is the parent node of one or more nodes of the first level; - After the second hierarchical level, and until the final hierarchical level N is reached, the step of iteratively computing one or more k-th clusters from the (k-1)-th clusters for each consecutive hierarchical level k of multilevel clustering further includes the step of computing one or more k-th clusters such that each cluster of one or more k-th clusters collects one or more (k-1)-th clusters having similar medoid signatures as follows: In the formula, S-medoid(i) and S-medoid(j) are medoid signatures of any pair i and j of the (k-1) clusters gathered into the k-th cluster. One or more k-th clusters are k-th level nodes in a hierarchical tree structure, and each k-th level node is the parent node of one or more (k-1)-th level nodes. A computer implementation method according to any one of claims 1 to 10.
- The distance between the signatures is the Manhattan distance between them. A computer implementation method according to any one of claims 1 to 11.
- A computer program comprising instructions for causing a computer to perform the method according to any one of claims 1 to 12.
- A computer-readable storage medium recording the computer program described in claim 13.
- A computer comprising a processor coupled to a memory storing the computer program described in claim 13.
Description
This invention relates to the field of computer programs and systems, more specifically to methods, systems, and programs for classifying sets of three-dimensional (3D) objects. Numerous systems and programs are available on the market for the design, engineering, and manufacturing of objects. CAD is an acronym for Computer-Aided Design, and relates, for example, to software solutions for designing objects. CAE is an acronym for Computer-Aided Engineering, and relates, for example, to software solutions for simulating the physical behavior of future products. CAM is an acronym for Computer-Aided Manufacturing, and relates, for example, to software solutions for defining manufacturing processes and operations. In such computer-aided design systems, graphical user interfaces play a crucial role in terms of technical efficiency. These technologies can be incorporated into product lifecycle management (PLM) systems. Product Life Management (PLM) is a business strategy that helps companies share product data, apply common processes, and leverage enterprise knowledge to develop products from concept to lifecycle, across the concept of an extended enterprise. Dassault Systèmes' PLM solutions (under the trademarks CATIA, ENOVIA, and DELMIA) provide an engineering hub for organizing product engineering knowledge, a manufacturing hub for managing manufacturing engineering knowledge, and an enterprise hub that enables enterprise integration and connection of the enterprise to the engineering and manufacturing hubs. Combined, these systems provide an open object model that links products, processes, and resources to enable dynamic, knowledge-based product creation and decision support, accelerating product definition, manufacturing readiness, production, and service optimization. Products based on artificial intelligence are increasing rapidly. Therefore, for learning purposes, it's necessary to set up standard classifications (systematically grouping observed values into categories) and collect as much information as possible. However, in many industries, parts are not classified, and even standard classification methods haven't been applied. In particular, industries (such as the automotive and aerospace industries) generally rely on computer-aided design software to digitally design products before mass production. CAD users create numerous digital 3D parts or objects. Generally, these 3D parts or objects are not properly named; that is, the names given by users are inconsistent or not standardized. Thus, a large set of 3D objects is created, but they are not properly classified. Against this backdrop, a method for classifying 3D objects on a large scale is needed. Because the human brain is more efficient at processing small amounts of information simultaneously, these large sets of 3D objects need to be "structured" for classification verification. Currently, there are three methods for classifying and annotating parts. The first method is performed by humans. To classify and annotate images toward creating a massive library of clean, annotated images (ImageNet), Google and Standard University use the Canical Turk approach, available on Amazon. The principle is simple: three different people are asked to annotate the same image, and the results are adjusted to augment the image dataset. Thanks to this approach, they have successfully tagged over 14 million images. However, the main drawback of this first method is that it doesn't work in industrial settings, primarily for two reasons. First, it involves potentially sensitive data. Second, the terminology used in industry is specialized: everyone knows what a "cat" is, but nobody knows what a "blind rivet" is. The second method is to use attributes. This is a classic method of classifying parts using an SQL database or indexing engine. This method supports huge tables (see Google's BigTables). By combining query operators (e.g., SQL) such as "AND" and "OR," it is very easy to define how to classify parts with related attributes. However, the main drawback of this second method is that it is very difficult to handle similar parts on a large scale because there are relatively few attributes that interrelate with shape. The third method is to use 3D specifications or 3D signatures. Since these attributes may not be visible on the 3D shape, the goal is to find a way to describe the 3D shape with a single vector (which may be high-dimensional). This vector can be created from two approaches. The first approach is 3D specifications (2.a). This is an explicit definition of the part, which can be extracted by geometric algorithms, for example, the number and location/direction of holes, the number of regular forms and their equations, etc. Once this information is extracted computationally, there is a way to convert that information into a single vector. The second approach is 3D signatures (2.b). This is a way to implicitly describe the shape. This method mainly uses tran