A kind of ore body three-dimensional modeling method, system and equipment considering profile line geometric feature matching
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- FUJIAN MAKENG MINING CO LTD
- Filing Date
- 2026-03-30
- Publication Date
- 2026-06-30
AI Technical Summary
Traditional 3D modeling methods for ore bodies struggle to accurately establish corresponding contour lines in complex geological environments, leading to unreasonable stretching, folding, or self-intersection of triangular meshes, which affects the accuracy of reserve calculations and the reliability of engineering designs.
By combining affine transformation, multidimensional feature extraction, cyclic expansion and dynamic programming, the optimal matching path is found by constructing local distance matrix and cumulative distance matrix, and a triangular mesh is constructed based on this to generate a three-dimensional ore body model that conforms to geological understanding.
Generating 3D orebody models with smooth surface transitions under complex geological conditions improves modeling accuracy and robustness, and ensures the topological correctness and automation of triangular meshes.
Smart Images

Figure CN122312902A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of three-dimensional geological modeling in geological information technology, specifically to a method, system, and equipment for three-dimensional modeling of ore bodies that takes into account the matching of geometric features of contour lines. Background Technology
[0002] In the field of mineral resource exploration and mining, 3D geological modeling technology is a core tool for reserve estimation, mining design, and resource assessment. Traditional 3D modeling methods for ore bodies are usually based on a set of approximately parallel profile contour lines, and the solid representation of the ore body is achieved by constructing surface triangulation meshes between adjacent contour lines. The core and difficulty of this process lies in how to accurately establish the correspondence between sampling points on two contour lines, i.e., the "contour line correspondence problem." Early solutions, such as the minimum distance method and the synchronous forward method, are computationally simple, but in actual geological environments, the morphology of ore bodies is often affected by multiple factors such as mineralization, tectonic movement, and subsequent modification, exhibiting complex non-uniform deformation characteristics such as local expansion, contraction, distortion, or fault displacement. If the simple minimum distance method or synchronous forward method is used to establish point-to-point mapping, it often leads to unreasonable stretching, folding, or even self-intersection of the generated triangular mesh, seriously distorting the true spatial morphology of the ore body, and thus affecting the accuracy of reserve calculation and the reliability of engineering design.
[0003] With the development of computer graphics and digital geology, researchers have gradually realized that the correspondence between ore body contours is essentially a non-rigid matching problem of point sequences. However, existing elastic matching methods, when applied to closed ore body contours, often face challenges such as sensitivity to starting point selection and insufficient feature utilization: improper starting point selection can lead to the entire matching path shift, and relying solely on geometric coordinate distance makes it difficult to distinguish similar local features on the contour, easily resulting in incorrect matching. Especially when the ore body contour has significant concavity and convexity variations and complex local features, how to robustly and accurately establish elastic correspondences between point sequences, and construct high-quality, non-intersecting triangular meshes based on this, remains a pressing technical challenge in 3D ore body modeling. Summary of the Invention
[0004] To address the problems existing in the prior art, the present invention aims to provide a method, system, and device for 3D modeling of ore bodies that takes into account the matching of the geometric features of the contour lines. This method can effectively integrate the global geometric features and local morphological attributes of the contour lines, overcome the starting point dependency problem, and simulate the flexible deformation mechanism of geological bodies. Thus, even under complex geological conditions, it can generate 3D ore body models that conform to geological understanding and have smooth surface transitions, providing reliable technical support for precise digital management of mineral resources.
[0005] To achieve the above objectives, the technical solution adopted by the present invention is as follows: A 3D modeling method for ore bodies that takes into account both contour line geometric feature matching and includes the following steps: Step 1: Perform an affine transformation on the outlines of two adjacent ore bodies, and sample them in a fixed direction to obtain point sequence A and point sequence B; Step 2: Calculate the feature vectors of each point in point sequence A and point sequence B. The feature vectors include spatial coordinates, curvature, uniform arc length of normal, and cumulative arc length ratio. Step 3: Construct the local distance matrix D, the elements of which are... In the point sequence A, the first... The nth point and the nth point sequence B Weighted spatial similarity of points; Step 4: Expand the point sequence A in a loop to obtain an expanded point sequence. Construct a cumulative distance matrix for each possible starting offset and calculate the cumulative distance recursively using dynamic programming. The dynamic programming recursion allows for one-to-one, one-to-many, and many-to-one matching paths. Step 5: Compare the endpoint values of the cumulative distance matrix corresponding to each starting offset, select the starting offset corresponding to the global minimum cost, and backtrack from this endpoint to obtain the optimal matching path; Step 6: Based on the optimal matching path, construct a triangular mesh between adjacent point pairs to form a surface between adjacent contour lines; Step 7: Piece together the surfaces between adjacent contour lines in cross-sectional order to output a three-dimensional ore body model.
[0006] The affine transformation described in step 1 specifically includes: Calculate the convex hulls of the two contour lines respectively, and obtain the line connecting the maximum width of the convex hulls and its center point; Scaling one of the contour lines by a scaling ratio equal to the ratio of the length of the line connecting the maximum widths of the other contour line to the length of the line connecting the maximum widths of this contour line. The scaled contour lines are translated so that the projections of the center point of the line connecting the two contour lines with their maximum widths on the plane containing the contour lines coincide.
[0007] In step 2, for any point in point sequence A and point sequence B, the curvature is calculated by taking the point and its left and right neighbors as a total of 2 +1 points are fitted to a spline curve for calculation; the normal uniform arc length is obtained by the normal uniform region extraction algorithm to obtain the length of the open or closed line segment centered at the point; the cumulative arc length ratio is the proportion of the cumulative arc length from the point to the start of the sequence to the total arc length of the contour line.
[0008] In step 3, the element Representing a point sequence The Middle Points with point sequence The Middle Points The spatial similarity is as follows:
[0009]
[0010] In the formula, 、 and These represent the weights of the eigenvector curvature, the directional uniformity arc length, and the cumulative arc length ratio, respectively.
[0011] Step 4 is described in detail below: Copy point sequence A and concatenate the copies with the beginning and end of point sequence A to obtain the extended sequence. ,in, ; For each possible starting offset =0,1,…,m 1. Perform the following processing: Initialize the cumulative distance matrix Its size is and order ; Fill the cumulative distance matrix according to the dynamic programming recursive formula. Cumulative distance matrix The elements in are as follows:
[0012]
[0013] in, Corresponding to a many-to-one matching relationship, Corresponding to a one-to-many matching relationship, This corresponds to a one-to-one matching relationship; Record the cumulative distance matrix endpoint value .
[0014] Step 5 is described in detail below: Compare the endpoint values of m cumulative distance matrices. Select the starting offset corresponding to the minimum value. ,Right now ; After determining the optimal starting offset, from the endpoint Start backtracking: In each step, the coordinates corresponding to the minimum value are selected from the three candidate paths as the predecessor point. If there are multiple minimum values, the corresponding one-to-one matching path is selected first. Repeat the backtracking until you return to the starting point. The reversed path obtained by backtracking is then reversed to obtain the optimal matching path.
[0015] Step 6 is as follows: Traverse adjacent pairs in the optimal matching path and ; when ,and At that time, and Connect to form a triangular network; when ,and At that time, and Connect to form a triangular network; when ,and When, then compare and The smaller of the two values is used to construct a triangular mesh, where... Indicates the origin of the point 、 and The area of the constructed triangle; After traversal is complete, connect the last pair of points to the first pair of points according to the same rules to form a closed triangular mesh.
[0016] A 3D modeling system for ore bodies that takes into account both contour line geometric feature matching, comprising: The preprocessing module is used to obtain the outlines of two adjacent ore bodies, calculate their convex hulls respectively, and obtain the line connecting the maximum width of the convex hulls. By scaling and translating one of the outlines, an affine transformation is achieved to eliminate the global scale and positional differences between adjacent profiles. Point sequence A and point sequence B are generated by sampling in a fixed direction. The feature vector calculation module is used to calculate the multidimensional feature vector of each point in the point sequence. The feature vector includes spatial coordinates, curvature, normal uniform arc length, and cumulative arc length ratio. The curvature is obtained by fitting a point and its neighboring points into a spline curve. The normal uniform arc length is obtained by a normal uniform region extraction algorithm. The cumulative arc length ratio is the proportion of the cumulative arc length from the point to the start of the sequence to the total arc length of the contour line. The local distance matrix construction module is used to construct a local distance matrix D of size m×n, whose elements... In the point sequence A, the first... The nth point and the nth point sequence B The weighted spatial similarity of each point is a weighted sum of spatial Euclidean distance and differences in each feature; The cumulative distance matrix calculation module is used to copy the point sequence A and connect the ends to obtain an extended point sequence. It constructs a cumulative distance matrix for each possible starting offset and fills the matrix using a dynamic programming recursive formula, where the dynamic programming recursion allows one-to-one, one-to-many, and many-to-one matching paths. The optimal matching path backtracking module is used to compare the cumulative distance matrix endpoint values corresponding to each starting offset, select the starting offset corresponding to the global minimum cost, and backtrack from this endpoint to obtain the optimal matching path. If there are multiple minimum values during the backtracking process, the corresponding one-to-one matching path is selected first. The triangulation module is used to construct triangular meshes based on the index relationship of adjacent point pairs in the optimal matching path. When adjacent point pairs satisfy the conditions of many-to-one, one-to-many, or one-to-one, the corresponding triangulation rules are adopted respectively. In the case of one-to-one, the diagonal division method with a smaller area is selected. At the same time, the last point pair is connected to the first point pair according to the same rules, and finally a closed triangular surface is formed between adjacent contour lines. The model output module is used to stitch together the triangular surfaces between adjacent contour lines in the order of cross sections to output a complete three-dimensional solid model of the ore body.
[0017] The processing of the cumulative distance matrix calculation module is as follows: Copy point sequence A and concatenate the copies with the beginning and end of point sequence A to obtain the extended sequence. ,in, ; For each possible starting offset =0,1,…,m 1. Perform the following processing: Initialize the cumulative distance matrix Its size is and order ; Fill the cumulative distance matrix according to the dynamic programming recursive formula. Cumulative distance matrix The elements in are as follows:
[0018]
[0019] in, Corresponding to a many-to-one matching relationship, Corresponding to a one-to-many matching relationship, This corresponds to a one-to-one matching relationship; Record the cumulative distance matrix endpoint value ; The processing of the optimal matching path backtracking module is as follows: Compare the endpoint values of m cumulative distance matrices. Select the starting offset corresponding to the minimum value. ,Right now ; After determining the optimal starting offset, from the endpoint Start backtracking: In each step, the coordinates corresponding to the minimum value are selected from the three candidate paths as the predecessor point. If there are multiple minimum values, the corresponding one-to-one matching path is selected first. Repeat the backtracking until you return to the starting point. The reversed path obtained by backtracking is then reversed to obtain the optimal matching path; The specific processing of the triangular network construction module is as follows: Traverse adjacent pairs in the optimal matching path and ; when ,and At that time, and Connect to form a triangular network; when ,and At that time, and Connect to form a triangular network; when ,and When, then compare and The smaller of the two values is used to construct a triangular mesh, where... Indicates the origin of the point 、 and The area of the constructed triangle; After traversal is complete, connect the last pair of points to the first pair of points according to the same rules to form a closed triangular mesh.
[0020] An electronic device for 3D modeling of ore bodies that also considers matching the geometric features of the contour lines, comprising: At least one processor; A memory that is communicatively connected to the at least one processor; The user interface is used to receive ore body contour data or modeling parameters input by the user. A network interface is used to obtain ore body contour data from an external database or output a 3D ore body model. The memory stores a computer program that can be executed by the at least one processor. When the computer program is executed by the at least one processor, it causes the at least one processor to perform a 3D modeling method for ore bodies that takes into account the matching of contour geometric features as described above.
[0021] By adopting the above scheme, this invention effectively integrates the global geometric features and local morphological attributes of the contour line, overcoming the sensitivity of starting point selection in traditional methods, and realistically simulating the flexible deformation mechanism of geological bodies. Specifically, this invention organically combines affine transformation, multidimensional feature extraction, cyclic expansion dynamic programming, elastic matching path backtracking, and matching path-driven triangulation construction to form a complete 3D ore body modeling process. Among them, affine transformation preprocessing eliminates global scale and positional differences between adjacent profiles, providing a normalized benchmark for fine matching; multidimensional feature vectors enable the matching process to deeply understand the morphological semantics of the contour line; the combination of cyclic expansion and dynamic programming completely solves the starting point dependency problem of closed contour line matching; elastic path constraints allow the contour line to undergo non-uniform deformation in the corresponding region, realistically simulating the complex deformation characteristics of geological bodies such as local expansion, contraction, or twisting; and matching path-driven triangulation construction fundamentally avoids topological errors such as mesh self-intersection and folding. Thus, this invention can generate 3D ore body models that conform to geological understanding and have smooth surface transitions under complex geological conditions, significantly improving modeling accuracy, algorithm robustness, and automation.
[0022] Furthermore, this invention eliminates global differences between profiles through a preprocessing mechanism of affine transformation and multidimensional feature extraction, and constructs a feature representation of "global localization + local identification," enabling the matching process to effectively distinguish feature segments with similar shapes but different spatial locations. Simultaneously, through an elastic matching strategy of cyclic expansion and multi-starting-point dynamic programming, the starting-point dependency problem is completely eliminated, and local stretching and compression between contour lines are allowed, realistically simulating the non-uniform deformation of geological bodies. The matching path-driven triangular mesh construction and area minimization strategy ensure the mesh quality and correct topology of the 3D surface model. Attached Figure Description
[0023] Figure 1 This is a flowchart of the method of the present invention; Figure 2 This is a system block diagram of the present invention; Figure 3 This is a block diagram of an electronic device. Detailed Implementation
[0024] like Figure 1 As shown, this invention discloses a 3D modeling method for ore bodies that takes into account both contour line geometric feature matching and other methods, which includes the following steps: Step 1: Affine transformation of the contour line and point serialization.
[0025] Obtain the outline of adjacent ore bodies and the outline of the ore body .
[0026] To eliminate potential scale differences and spatial offsets between adjacent profiles, the ore body outline was calculated separately. and the outline of the ore body The convex hull is then determined, and its maximum width is obtained using methods such as the rotational caliper method or the sampling direction method. Connecting the two points at the maximum width yields a line... and lines And record the line and lines The midpoints are respectively and .
[0027] Outline of the ore body Perform affine transformation: transform the ore body outline Scaling is performed, with the scaling factor being the line length. With lines The ratio; for the scaled ore body outline Perform a translation so that the translated point With point The projections of the ore body contour lines on the plane coincide. This preprocessing effectively eliminates global differences between profiles caused by inconsistencies in measurement scales and coordinate systems, providing a normalized benchmark for subsequent fine matching.
[0028] Points on the affine transformation contour line are sampled in a fixed direction (clockwise or counterclockwise) to obtain two sets of point sequences. and Discretizing the continuous contour line into an ordered set of points facilitates subsequent numerical calculations and feature extraction.
[0029] Step 2: Calculate the feature vector of each point in the point sequence.
[0030] To enhance the recognizability of points on the contour line and enable the matching process to distinguish feature segments that are similar in shape but different in spatial location, a multi-dimensional feature vector is calculated for each point in the point sequence.
[0031] For point sequences A Points in Its feature vectors include: Spatial coordinates are . curvature : point and its left and right adjacent There are 2 points in total. Add 1 point, fit it to a quadratic spline curve, cubic spline curve, or Bézier curve, and then obtain the point. curvature at ; Normal uniform arc length The algorithm for extracting regions with normal consistency is used to extract points. The point is obtained by taking the length of an open or closed line segment with normal consistency centered on the ore body (an open line segment is obtained when the ore body outline is non-convex, and a closed line segment is obtained when the ore body outline is convex). Normal uniform arc length .
[0032] Cumulative arc length ratio From point sequence A From the starting point to the end point The ratio of the cumulative arc length at a given point to the total length of the ore body outline after affine transformation is called the cumulative arc length ratio. .
[0033] For point sequences B Points in Its feature vectors include: Spatial coordinates are . curvature : point and its left and right adjacent There are 10 points, totaling 100 points. 2 +1 These points are fitted to a quadratic spline curve, cubic spline curve, or Bézier curve, etc., to obtain the points. curvature at ; Normal uniform arc length The algorithm for extracting regions with normal consistency is used to extract points. A point is obtained by taking the length of an open or closed line segment centered on the point and having uniform normal direction. Normal uniform arc length .
[0034] Cumulative arc length ratio From sequence B From the starting point to the end point The ratio of the cumulative arc length at a given point to the total length of the ore body outline after affine transformation is called the cumulative arc length ratio. .
[0035] For multidimensional characterization of geological deformation, this invention innovatively defines a composite feature vector (spatial coordinates + local curvature + normal uniform arc length + cumulative arc length ratio) for sampling points on the contour line. This not only increases the data dimension, but its key technology lies in: Local curvature: Captures the local curvature of the contour line and identifies feature points such as bulges and depressions.
[0036] Normal uniformity arc length: reflects the degree of "flatness" or "uniformity" of the local area where the point is located, and can effectively distinguish between straight segments and complex segments. It is a regionalized measure of local geometric features.
[0037] Cumulative arc length ratio: Provides normalized position information of a point on the global contour line, which, combined with local features, achieves "global localization + local identification".
[0038] The combination of the above four features forms a multi-dimensional feature expression of "global localization + local identification", which enables subsequent matching to have a deeper understanding of the morphological semantics of the contour line.
[0039] Step 3: Construct the local distance matrix.
[0040] Build size is The local distance matrix is , among which, element Representing a point sequence The Middle Points with point sequence The Middle Points Spatial similarity.
[0041]
[0042]
[0043] In the formula, 、 and These represent the weights of the eigenvector curvature, directional consistency arc length, and cumulative arc length ratio, respectively, and can be adjusted according to the actual ore body morphology. This local distance matrix unifies geometric spatial distance and morphological feature differences into a single similarity metric, providing a basic cost for subsequent dynamic programming.
[0044] Step 4: Cyclic expansion and cumulative distance matrix calculation.
[0045] A classic challenge in closed contour matching is the sensitivity of starting point selection; that is, the appropriateness of the starting point selection directly affects the matching result. To solve this problem, this invention copies point sequence A and then concatenates it end-to-end to obtain an extended sequence. ,in, In this way, each possible starting offset =0,1,…,m 1 corresponds to a... The matching scheme with the starting point is used to systematically enumerate all possible starting point positions.
[0046] For each possible starting offset =0,1,…,m 1. Perform the following processing: Initialize the cumulative distance matrix Its size is and order .
[0047] Fill the cumulative distance matrix according to the dynamic programming recursive formula. Cumulative distance matrix The elements in are as follows:
[0048]
[0049] Wherein, let from the extended sequence The Middle Points To the Points Subsequences ( , Let the sequence of points be... The Middle Points To the Points Subsequences B ( , ), Representing a subsequence ( , ) and subsequence B ( , Minimum cumulative distance, , .
[0050] In the dynamic programming recursive process, the cumulative distance matrix The calculation depends on the following three candidate paths, each corresponding to a different matching relationship: Represents an extended sequence The previous point and point sequence The current point matching corresponds to a many-to-one matching relationship, that is, multiple points in the extended point sequence correspond to the same point in the point sequence B, which reflects local compression.
[0051] Represents an extended sequence The current point and The previous point matching corresponds to a one-to-many matching relationship, that is, the same point in the extended point sequence corresponds to multiple points in the point sequence B, which reflects local stretching.
[0052] express The previous point and The previous point match corresponds to a one-to-one matching relationship, that is, the normal correspondence of points in two point sequences.
[0053] The constraints of the three paths mentioned above ensure that the matching process follows the direction of the contour lines, allowing for local stretching or compression, thereby achieving elastic matching between contour lines.
[0054] Record the cumulative distance matrix endpoint value .
[0055] Step 5: Backtrack to find the optimal matching path.
[0056] After calculating the cumulative distance matrix, the globally optimal matching scheme needs to be selected from multiple candidate starting points. To do this, the endpoint values of m cumulative distance matrices are compared. Select the starting offset corresponding to the minimum value. ,Right now This minimum value represents the minimum value. When the starting point is a contour line, the global matching cost between the two contour lines is minimized.
[0057] After determining the optimal starting offset, from the endpoint Start backtracking: Each step from The coordinates corresponding to the minimum value are selected as the predecessor point. If multiple minimum values exist, the one corresponding to the minimum value is selected first. This is done to maintain the naturalness of a one-to-one match as much as possible while allowing for elastic deformation. Repeat this process until you return to the starting point. Since backtracking proceeds from the endpoint to the starting point, the resulting paths are in reverse order. Therefore, it is necessary to reverse these paths to obtain the optimal matching path in the forward direction. The optimal matching path The correspondence between points is completely recorded in the form of an ordered list of points, that is... This provides a precise matching basis for the subsequent construction of the triangulation network.
[0058] The core engine of this invention is the globally optimal elastic matching that eliminates starting point dependence, and its innovation is reflected in the following aspects: The cyclic expansion strategy involves copying the point sequence and concatenating the first and last parts to construct an expanded sequence twice the length of the original. This strategy systematically simulates all possible starting point offsets, with each offset corresponding to a matching scheme that uses a different point in the expanded sequence as its starting point.
[0059] Multiple cumulative distance matrix calculation: For each possible starting offset, a corresponding cumulative distance matrix is constructed. Through loop variables, multiple different cumulative distance matrices are actually calculated, starting from the first few points in the extended sequence, providing a basis for the global optimal selection.
[0060] Global minimum cost search: By comparing the endpoint values of these multiple cumulative distance matrices, the matching starting point with the minimum global cost is automatically determined, completely eliminating the uncertainty brought about by manually specifying or simply heuristically selecting the starting point.
[0061] Elastic path constraint: In the dynamic programming recursive process, three candidate paths correspond to many-to-one, one-to-many, and one-to-one matching relationships, respectively. Many-to-one reflects the local compression of multiple points in the extended point sequence corresponding to the same point in the point sequence; one-to-many reflects the local stretching of the same point in the extended point sequence corresponding to multiple points in the point sequence; and one-to-one corresponds to the normal correspondence of points. This constraint explicitly allows one-to-many and many-to-one matching relationships, which is the mathematical embodiment of "elasticity," capable of accommodating the compression and stretching of the contour line in the corresponding region, realistically simulating the non-uniform deformation of geological bodies.
[0062] Step 6: Construct a triangular network based on the optimal matching path.
[0063] The optimal matching path implies the correspondence and topological order between point sequences, and is the core basis for constructing triangular meshes.
[0064] Let the optimal matching path be... The number of midpoint pairs is P, and the optimal matching path is traversed sequentially. The adjacent point pairs in the data are triangulated as follows: Let the two currently adjacent point pairs be and .
[0065] when ,and When this occurs, it indicates that two adjacent points on contour line A correspond to the same point on contour line B. At this time, [the following will occur]. and Connect to form a triangular network.
[0066] when ,and This indicates that the same point on contour line A corresponds to two adjacent points on contour line B. At this time, [the following will occur]. and Connect to form a triangular network.
[0067] when ,and When, then compare and The smaller of the two values is used to construct the triangular mesh; that is, the shorter connecting line is chosen as the diagonal to optimize the triangle shape and avoid generating long, narrow triangles. Indicates the origin of the point 、 and The area of the constructed triangle.
[0068] For the optimal matching path After performing the above operations on all adjacent point pairs in sequence, the problem of head-to-tail closure still needs to be addressed: connect the last point pair to the first point pair according to the same rules to form a closed triangular mesh. At this point, the surface triangular mesh between adjacent contour lines is completed.
[0069] This invention uses the optimal matching path as the sole basis for constructing the triangulation network and formulates clear triangulation rules (processing and area minimization decisions in "one-to-many", "many-to-one", and "one-to-one" cases), ensuring the consistency between the triangulation network and the matching logic, and fundamentally avoiding problems such as grid intersection and distortion caused by unreasonable point correspondence.
[0070] Step 7: Output the three-dimensional ore body model.
[0071] Using the triangular mesh generated in step 6 as the surface between adjacent contour lines, and stitching them together sequentially according to the cross-sectional order, a complete three-dimensional solid model of the ore body can be obtained. This model has a smooth surface and correct topology, and can be directly used for practical engineering applications such as reserve estimation, mining design, and resource assessment.
[0072] By organically combining the above steps, this invention constructs a complete three-dimensional modeling technology solution for ore bodies. Affine transformation preprocessing effectively eliminates global scale and positional differences between profiles, providing a normalized benchmark for fine matching. The introduction of multi-dimensional feature vectors enables the matching process to deeply understand the morphological semantics of contour lines, significantly improving matching accuracy. The combination of cyclic expansion and dynamic programming thoroughly solves the starting point dependency problem in closed contour line matching and realistically simulates the non-uniform deformation of geological bodies by allowing one-to-many and many-to-one elastic matching. The matching path-driven triangular mesh construction ensures the quality and topological correctness of the surface model. Therefore, this invention can generate three-dimensional ore body models with smooth surface transitions that conform to geological understanding under complex geological conditions, providing reliable technical support for precise digital management of mineral resources.
[0073] like Figure 2 As shown, based on the same inventive concept, this invention also discloses a 3D modeling system for ore bodies that takes into account the matching of contour geometric features, which includes a preprocessing module, a feature vector calculation module, a local distance matrix construction module, a cumulative distance matrix calculation module, an optimal matching path backtracking module, a triangulation construction module, and a model output module.
[0074] The preprocessing module is used to perform affine transformation and point serialization on the contour lines of adjacent ore bodies. Specifically, it obtains the contour lines of adjacent ore bodies. and the outline of the ore body Then calculate the outline of the ore body separately. and the outline of the ore body The convex hull is obtained by using methods such as the rotation caliper method or the sampling direction method to find its maximum width. Connecting the two points at the maximum width yields a line. and lines And record the line and lines The midpoints are respectively and Next, the outline of the ore body was... Perform affine transformation: transform the ore body outline Scaling is performed, with the scaling factor being the line length. With lines The ratio; for the scaled ore body outline Perform a translation so that the translated point With point The projections of the points onto the plane containing the ore body outline coincide. Finally, points on the affine-transformed ore body outline are sampled in a fixed direction (clockwise or counterclockwise) to obtain two sets of point sequences. and Discretizing the continuous contour line into an ordered set of points facilitates subsequent numerical calculations and feature extraction.
[0075] The feature vector calculation module is used to calculate point sequences. and The multidimensional feature vector of each point. Specifically, for a point sequence... A Points in Calculate its spatial coordinates as curvature Normal uniform arc length Ratio of cumulative arc length For point sequences B Points in Calculate its spatial coordinates as curvature Normal uniform arc length Ratio of cumulative arc length .
[0076] Curvature is achieved by combining the point and its left and right neighbors. 2 +1 The points are fitted to spline curves to obtain the arc length of the open or closed line segment centered at the point by the normal uniformity region extraction algorithm; the cumulative arc length ratio is the proportion of the cumulative arc length from the point to the start of the sequence to the total arc length of the contour line.
[0077] The local distance matrix construction module is used to construct a matrix of size . The local distance matrix is , among which, element Representing a point sequence The Middle Points with point sequence The Middle Points Spatial similarity.
[0078]
[0079]
[0080] In the formula, 、 and These represent the weights of the eigenvector curvature, the arc length of the directional consistency, and the cumulative arc length ratio, respectively, and can be adjusted according to the actual ore body morphology.
[0081] The cumulative distance matrix calculation module is used to iteratively expand the point sequence to enumerate all possible starting point positions, and calculates the corresponding cumulative distance matrix through dynamic programming, thereby eliminating the starting point dependency problem in closed contour matching. The specific processing is as follows: Copy point sequence A and concatenate the copies with the beginning and end of point sequence A to obtain the extended sequence. ,in, .
[0082] For each possible starting offset =0,1,…,m 1. Perform the following processing: Initialize the cumulative distance matrix Its size is and order .
[0083] Fill the cumulative distance matrix according to the dynamic programming recursive formula. Cumulative distance matrix The elements in are as follows:
[0084]
[0085] in, Represents an extended sequence The Middle Points and point sequence The Middle Points arrive , The minimum cumulative distance, , .
[0086] Record the cumulative distance matrix endpoint value .
[0087] The optimal matching path backtracking module is used to select the globally optimal matching scheme from multiple candidate starting points and backtrack to obtain the optimal matching path. The specific processing of the optimal matching path backtracking is as follows: Compare the endpoint values of m cumulative distance matrices. Select the starting offset corresponding to the minimum value. ,Right now This minimum value represents the minimum value. When the starting point is a contour line, the global matching cost between the two contour lines is minimized.
[0088] After determining the optimal starting offset, from the endpoint Start backtracking: Each step from The coordinates corresponding to the minimum value are selected as the predecessor point. If multiple minimum values exist, the one corresponding to the minimum value is selected first. This is done to maintain the naturalness of a one-to-one match as much as possible while allowing for elastic deformation. Repeat this process until you return to the starting point. Since backtracking proceeds from the endpoint to the starting point, the resulting paths are in reverse order. Therefore, it is necessary to reverse these paths to obtain the optimal matching path in the forward direction. The optimal matching path The correspondence between points is completely recorded in the form of an ordered list of points, that is... .
[0089] The triangulation construction module is used to construct triangular meshes between adjacent contour lines based on the optimal matching path. Let the optimal matching path be... The number of midpoint pairs is P, and the optimal matching path is traversed sequentially. The adjacent point pairs in the data are triangulated as follows: Let the two currently adjacent point pairs be and .
[0090] when ,and At that time, and Connect to form a triangular network.
[0091] when ,and At that time, and Connect to form a triangular network.
[0092] when ,and When, then compare and The smaller of the two values is used to construct a triangular mesh, where... Indicates the origin of the point 、 and The area of the constructed triangle.
[0093] For the optimal matching path After performing the above operations on all adjacent point pairs in sequence, the problem of head-to-tail closure still needs to be addressed: connect the last point pair to the first point pair according to the same rules to form a closed triangular mesh. At this point, the surface triangular mesh between adjacent contour lines is complete.
[0094] The model output module uses the triangular meshes generated by the triangular mesh construction module as surfaces between adjacent contour lines, sequentially stitching them together in profile order to output a complete 3D solid model of the ore body. This model can be directly used for practical engineering applications such as reserve estimation, mining design, and resource assessment.
[0095] like Figure 3 As shown, the present invention also discloses an electronic device for 3D modeling of ore bodies that takes into account the matching of contour geometric features, which includes at least one processor, a memory communicatively connected to the at least one processor, a user interface and a network interface.
[0096] The user interface is used to receive ore body contour data or modeling parameters input by the user; the network interface is used to obtain ore body contour data from an external database or output a three-dimensional ore body model; the memory stores a computer program that can be executed by the at least one processor, and when the computer program is executed by the processor, it causes the processor to execute a three-dimensional ore body modeling method that takes into account the matching of contour geometric features as described above.
[0097] In summary, the present invention has the following technical effects: First, by using multi-dimensional feature vectors that integrate spatial coordinates, local curvature, uniform arc length of the normal direction, and cumulative arc length ratio for elastic matching, the morphological essence of the contour line can be captured more profoundly, rather than relying solely on geometric position. This allows point-to-point matching to accurately reflect the actual non-uniform deformations of the ore body, such as local expansion, contraction, and twisting. As a result, the generated three-dimensional mesh surface more closely matches the real geological morphology, significantly improving the geometric accuracy of the model and the credibility of its geological interpretation.
[0098] Secondly, the affine transformation preprocessing of the contour lines (based on convex hull width scaling and center projection alignment) effectively eliminates global scale and positional differences between adjacent profiles, providing a good normalized starting point for subsequent fine matching. Simultaneously, the innovative cyclic expansion and multi-starting-point global search strategy completely solves the sensitivity problem of starting point selection in closed contour line matching, ensuring that the globally optimal matching path can be stably found regardless of where the contour line sampling begins, greatly enhancing the robustness of the algorithm under different data conditions.
[0099] Third, based on flexible matching path search, supplemented by a one-to-one matching backtracking priority rule, the system can maximize the naturalness and sequential consistency of point correspondences while allowing flexible deformation. Combined with a triangulation construction method guided by matching paths and based on minimizing triangle area, common defects such as generating elongated triangles, mesh self-intersections, or facet distortion can be effectively avoided, ensuring the mesh quality and correct topology of the final 3D surface model.
[0100] Fourth, a complete automated processing workflow is formed, from feature calculation and optimal path search to triangulation network construction. This method reduces reliance on manual intervention or empirical parameters, can efficiently process large amounts of complex ore body profile data, improves the overall efficiency of 3D modeling, and is more suitable for practical engineering applications of large-scale digital modeling of mineral resources.
[0101] The above description is merely an embodiment of the present invention and does not constitute any limitation on the technical scope of the present invention. Therefore, any minor modifications, equivalent changes, and alterations made to the above embodiments based on the technical essence of the present invention shall still fall within the scope of the technical solution of the present invention.
Claims
1. A method for three-dimensional modeling of ore bodies that takes into account both contour line geometric feature matching, characterized in that, Includes the following steps: Step 1: Perform an affine transformation on the outlines of two adjacent ore bodies, and sample them in a fixed direction to obtain point sequence A and point sequence B; Step 2: Calculate the feature vectors of each point in point sequence A and point sequence B. The feature vectors include spatial coordinates, curvature, uniform arc length of normal, and cumulative arc length ratio. Step 3: Construct the local distance matrix D, the elements of which are... In the point sequence A, the first... The nth point and the nth point sequence B Weighted spatial similarity of points; Step 4: Expand the point sequence A in a loop to obtain an expanded point sequence. Construct a cumulative distance matrix for each possible starting offset and calculate the cumulative distance recursively using dynamic programming. The dynamic programming recursion allows for one-to-one, one-to-many, and many-to-one matching paths. Step 5: Compare the endpoint values of the cumulative distance matrix corresponding to each starting offset, select the starting offset corresponding to the global minimum cost, and backtrack from this endpoint to obtain the optimal matching path; Step 6: Based on the optimal matching path, construct a triangular mesh between adjacent point pairs to form a surface between adjacent contour lines; Step 7: Piece together the surfaces between adjacent contour lines in cross-sectional order to output a three-dimensional ore body model.
2. The 3D modeling method for ore bodies that takes into account both contour line geometric feature matching, as described in claim 1, is characterized in that... The affine transformation described in step 1 specifically includes: Calculate the convex hulls of the two contour lines respectively, and obtain the line connecting the maximum width of the convex hulls and its center point; Scaling one of the contour lines by a scaling ratio equal to the ratio of the length of the line connecting the maximum widths of the other contour line to the length of the line connecting the maximum widths of this contour line. The scaled contour lines are translated so that the projections of the center point of the line connecting the two contour lines with their maximum widths on the plane containing the contour lines coincide.
3. The 3D modeling method for ore bodies that takes into account both contour line geometric feature matching, as described in claim 1, is characterized in that... In step 2, for any point in point sequence A and point sequence B, the curvature is calculated by taking the point and its left and right neighbors as a total of 2 The curve is calculated by fitting one point to a spline curve; the normal uniform arc length is obtained by the normal uniform region extraction algorithm to obtain the length of the open or closed line segment centered at the point; the cumulative arc length ratio is the proportion of the cumulative arc length from the point to the start of the sequence to the total arc length of the contour line.
4. The 3D modeling method for ore bodies that takes into account both contour line geometric feature matching, as described in claim 1, is characterized in that... In step 3, element Representing a point sequence The Middle Points with point sequence The Middle Points The spatial similarity is as follows: In the formula, 、 and These represent the weights of the eigenvector curvature, the directional uniformity arc length, and the cumulative arc length ratio, respectively.
5. A three-dimensional modeling method for ore bodies that takes into account the matching of contour geometric features, as described in claim 1, is characterized in that... Step 4 is as follows: Copy point sequence A and concatenate the copies with the beginning and end of point sequence A to obtain the extended sequence. ,in, ; For each possible starting offset =0,1,…,m 1. Perform the following processing: Initialize the cumulative distance matrix Its size is and order ; Fill the cumulative distance matrix according to the dynamic programming recursive formula. Cumulative distance matrix The elements in are as follows: in, Corresponding to a many-to-one matching relationship, Corresponding to a one-to-many matching relationship, This corresponds to a one-to-one matching relationship; Record the cumulative distance matrix endpoint value .
6. A three-dimensional modeling method for ore bodies that takes into account both contour line geometric feature matching, as described in claim 5, is characterized in that... Step 5 is described in detail below: Compare the endpoint values of m cumulative distance matrices Select the starting offset corresponding to the minimum value. ,Right now ; After determining the optimal starting offset, from the endpoint Start backtracking: In each step, the coordinates corresponding to the minimum value are selected from the three candidate paths as the predecessor point. If there are multiple minimum values, the corresponding one-to-one matching path is selected first. Repeat the backtracking until you return to the starting point. The reversed path obtained by backtracking is then reversed to obtain the optimal matching path.
7. A three-dimensional modeling method for ore bodies that takes into account both contour line geometric feature matching, as described in claim 1, is characterized in that... Step 6 is as follows: Traverse adjacent pairs in the optimal matching path and ; when ,and At that time, and Connect to form a triangular network; when ,and At that time, and Connect to form a triangular network; when ,and When, then compare and The smaller of the two values is used to construct a triangular mesh, where... Indicates the origin of the point 、 and The area of the constructed triangle; After traversal is complete, connect the last pair of points to the first pair of points according to the same rules to form a closed triangular mesh.
8. A 3D modeling system for ore bodies that takes into account both contour line geometric feature matching, characterized in that, include: The preprocessing module is used to obtain the outlines of two adjacent ore bodies, calculate their convex hulls respectively, and obtain the line connecting the maximum width of the convex hulls. By scaling and translating one of the outlines, an affine transformation is achieved to eliminate the global scale and positional differences between adjacent profiles. Point sequence A and point sequence B are generated by sampling in a fixed direction. The feature vector calculation module is used to calculate the multidimensional feature vector of each point in the point sequence. The feature vector includes spatial coordinates, curvature, normal uniform arc length, and cumulative arc length ratio. The curvature is obtained by fitting a point and its neighboring points into a spline curve. The normal uniform arc length is obtained by a normal uniform region extraction algorithm. The cumulative arc length ratio is the proportion of the cumulative arc length from the point to the start of the sequence to the total arc length of the contour line. The local distance matrix construction module is used to construct a local distance matrix D of size m×n, whose elements... In the point sequence A, the first... The nth point and the nth point sequence B The weighted spatial similarity of each point is a weighted sum of spatial Euclidean distance and differences in each feature; The cumulative distance matrix calculation module is used to copy the point sequence A and connect the ends to obtain an extended point sequence. It constructs a cumulative distance matrix for each possible starting offset and fills the matrix using a dynamic programming recursive formula, where the dynamic programming recursion allows one-to-one, one-to-many, and many-to-one matching paths. The optimal matching path backtracking module is used to compare the cumulative distance matrix endpoint values corresponding to each starting offset, select the starting offset corresponding to the global minimum cost, and backtrack from this endpoint to obtain the optimal matching path. If there are multiple minimum values during the backtracking process, the corresponding one-to-one matching path is selected first. The triangulation module is used to construct triangular meshes based on the index relationship of adjacent point pairs in the optimal matching path. When adjacent point pairs satisfy the conditions of many-to-one, one-to-many, or one-to-one, the corresponding triangulation rules are adopted respectively. In the case of one-to-one, the diagonal division method with a smaller area is selected. At the same time, the last point pair is connected to the first point pair according to the same rules, and finally a closed triangular surface is formed between adjacent contour lines. The model output module is used to stitch together the triangular surfaces between adjacent contour lines in the order of cross sections to output a complete three-dimensional solid model of the ore body.
9. A 3D modeling system for ore bodies that considers both contour line geometric feature matching, as described in claim 8, is characterized in that... The processing of the cumulative distance matrix calculation module is as follows: Copy point sequence A and concatenate the copies with the beginning and end of point sequence A to obtain the extended sequence. ,in, ; For each possible starting offset =0,1,…,m 1. Perform the following processing: Initialize the cumulative distance matrix Its size is and order ; Fill the cumulative distance matrix according to the dynamic programming recursive formula. Cumulative distance matrix The elements in are as follows: in, Corresponding to a many-to-one matching relationship, Corresponding to a one-to-many matching relationship, This corresponds to a one-to-one matching relationship; Record the cumulative distance matrix endpoint value ; The processing of the optimal matching path backtracking module is as follows: Compare the endpoint values of m cumulative distance matrices. Select the starting offset corresponding to the minimum value. ,Right now ; After determining the optimal starting offset, from the endpoint Start backtracking: In each step, the coordinates corresponding to the minimum value are selected from the three candidate paths as the predecessor point. If there are multiple minimum values, the corresponding one-to-one matching path is selected first. Repeat the backtracking until you return to the starting point. The reversed path obtained by backtracking is then reversed to obtain the optimal matching path; The specific processing of the triangular network construction module is as follows: Traverse adjacent pairs in the optimal matching path and ; when ,and At that time, and Connect to form a triangular network; when ,and At that time, and Connect to form a triangular network; when ,and When, then compare and The smaller of the two values is used to construct a triangular mesh, where... Indicates the origin of the point 、 and The area of the constructed triangle; After traversal is complete, connect the last pair of points to the first pair of points according to the same rules to form a closed triangular mesh.
10. An electronic device for 3D modeling of ore bodies that takes into account both contour line geometric feature matching, characterized in that, include: At least one processor; A memory that is communicatively connected to the at least one processor; The user interface is used to receive ore body contour data or modeling parameters input by the user. A network interface is used to obtain ore body contour data from an external database or output a 3D ore body model. The memory stores a computer program that can be executed by the at least one processor. When the computer program is executed by the at least one processor, it causes the at least one processor to perform a three-dimensional modeling method for ore bodies that takes into account the matching of contour geometric features as described in any one of claims 1 to 7.