A three-dimensional ore body interactive delineation and dynamic terrain constraint estimation method and system

CN122473400BActive Publication Date: 2026-09-29JIANGSU PROVINCIAL GEOLOGICAL BUREAU BIG DATA CENTER
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202610931215.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-06-26
Publication Date
2026-09-29
Estimated Expiration
2046-06-26

AI Technical Summary

Technical Problem

当新增钻孔孔口高程或局部测量数据后,地形约束需同步重构,而传统布尔裁剪或逐块相交判断计算量大,容易造成CPU主线程阻塞,并使近地表块体出现应保留而被剔除、应剔除而残留的掩码失配,进而影响品位场显示、矿石量和剥采比结果

Benefits of technology

[0032]本发明通过动态地形约束、实例化渲染与交互圈定积分的协同处理,提高三维矿体估算的实时性、连续性和可验证性;本发明通过孔口高程驱动的一维动态地形高程数组和可见性掩码,对近地表块体进行动态约束,减少传统静态地形裁剪造成的掩码失配;将存活块体的空间变换数据和颜色映射数据写入图形处理器实例化缓冲域,降低逐块独立渲染带来的数据组织负担;通过正交俯视投影、归一化设备坐标反解和拓扑筛选,将二维人工圈定边界转化为可计算的三维估算域;结合高程区间、截止品位条件和分类积分,形成矿石量、废石量、金属量、剥采比、矿化率及品位—吨量曲线数据,增强交互推演结果的连续输出能力。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122473400B_ABST
    Figure CN122473400B_ABST
Patent Text Reader

Abstract

The application discloses a three-dimensional ore body interactive delineation and dynamic terrain constraint estimation method and system, and the method comprises the following steps: acquiring drilling hole orifice, assay grade, inclinometer and lithology and other multi-source spatial data to generate a discrete geological block set; constructing a one-dimensional dynamic terrain elevation array based on the orifice plane coordinates and the orifice elevation, obtaining the block corresponding ground elevation through bilinear interpolation, and constructing a visibility mask to obtain a surviving block set; writing the spatial transformation data and color mapping data of the surviving block into a graphics processor instantiation buffer domain; responding to the screen picking operation under the orthogonal overhead projection, solving the world coordinate polygon, and combining the elevation interval to screen a target block set; classifying and integrating according to the cutoff grade condition to generate an ore body estimation result. Through the cooperative processing of dynamic terrain constraint, instantiation rendering and interactive delineation integration, the real-time performance, continuity and verifiability of the three-dimensional ore body estimation are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of ore body estimation technology, and in particular to a method and system for three-dimensional ore body interactive delineation and dynamic terrain constraint estimation. Background Technology

[0002] In solid mineral exploration and mine economic evaluation, three-dimensional block models are the foundation for grade interpolation, reserve estimation, and stope simulation. Existing systems typically first construct static surface or orebody entities, and then use inverse distance weighting, kriging, or block statistical methods to calculate resource quantities, which can complete conventional estimations. However, in scenarios with dynamic data updates and interactive simulations, there are still underlying issues that are easily overlooked.

[0003] First, existing methods mostly treat terrain as a fixed boundary, relying on pre-built DEMs or triangulation meshes to perform solid trimming of blocks. When new borehole elevations or local measurement data are added, terrain constraints need to be reconstructed simultaneously. However, traditional Boolean trimming or block-by-block intersection judgment has a large computational load, which can easily cause CPU main thread blocking and result in mask mismatches where near-surface blocks that should be retained are removed, and those that should be removed remain, thus affecting the grade field display, ore quantity, and stripping ratio results.

[0004] Second, existing reserve estimations mostly rely on pre-set three-dimensional entities or fixed mining boundaries, making it difficult to convert engineers' two-dimensional experience-based delineation in a top-down view into a calculable three-dimensional estimation domain in real time. If the screen polygon is not subjected to NDC inverse projection, elevation interval constraints, and topological inclusiveness judgment, the system can only obtain the visual boundary and cannot simultaneously calculate the projected area, target block set, ore quantity, waste rock quantity, and grade-tonnage curve, resulting in a lag in the response of hypothesis extrapolation. Summary of the Invention

[0005] To address the aforementioned problems, embodiments of the present invention provide a method for three-dimensional orebody interactive delineation and dynamic terrain constraint estimation, the method comprising:

[0006] Acquire multi-source spatial datasets, topographic extent, elevation intervals, and cutoff grade conditions. The multi-source spatial datasets include borehole head datasets, chemical grade datasets, and inclinometer and lithology datasets.

[0007] A set of discrete geological blocks with block spatial attributes and grade attributes is generated based on the multi-source spatial dataset;

[0008] Within the terrain area, a terrain grid node is constructed. Based on the orifice plane coordinates and orifice elevation, the terrain grid node is subjected to local sorting of neighboring orifice points and inverse distance weight calculation, and a one-dimensional dynamic terrain elevation array is generated asynchronously.

[0009] Based on the one-dimensional dynamic terrain elevation array, bilinear interpolation is performed on the block center to obtain the corresponding surface elevation of the block, and a visibility mask is constructed based on the corresponding surface elevation of the block and the spatial attributes of the block to obtain a set of surviving blocks;

[0010] Write the spatial transformation data and color mapping data of the surviving block set into the graphics processor instantiation buffer.

[0011] In response to screen picking operations under orthogonal top-view projection, screen points are converted into normalized device coordinates and solved into world coordinate polygons via the view-projection inverse matrix;

[0012] The set of surviving blocks is topologically filtered based on the world coordinate polygon and the elevation interval to obtain the set of target blocks;

[0013] The target block set is classified and integrated based on the cutoff grade conditions to generate ore body estimation results.

[0014] Furthermore, the method for generating the one-dimensional dynamic terrain elevation array includes: establishing a grid node sequence within the terrain area and mapping the grid node sequence to a one-dimensional flat storage structure; calculating the distance relationship between each terrain grid node in the grid node sequence and the borehole plane coordinates in the borehole head dataset; selecting neighboring borehole head points according to the distance relationship, and generating grid node elevations based on the borehole head elevations and inverse distance weights of the neighboring borehole head points; writing the grid node elevations into the one-dimensional flat storage structure to form the one-dimensional dynamic terrain elevation array; wherein, the asynchronous generation schedules the grid node sequence through a segmented task queue.

[0015] Furthermore, the method for constructing the visibility mask includes: projecting the center of each geological block in the discrete geological block set onto the grid coordinate domain corresponding to the one-dimensional dynamic terrain elevation array to determine the grid cell and local offset of the geological block; reading the adjacent elevation nodes corresponding to the grid cell, performing bilinear matrix interpolation based on the local offset to obtain the surface elevation corresponding to the block; generating a mask value using a step judgment based on the surface elevation corresponding to the block, the vertical position in the spatial attributes of the block, and the vertical dimension of the block; and classifying the geological block into the set of live blocks or the set of non-live blocks according to the mask value.

[0016] Further, writing to the graphics processor instantiation buffer includes: extracting the spatial transformation matrix, color vector, and instance index corresponding to each surviving block from the surviving block set; writing the spatial transformation matrix, color vector, and instance index into a continuous floating-point array according to the instance order; binding the continuous floating-point array to the instantiation attribute channel in the graphics processor instantiation buffer, and establishing an index correspondence between the instantiation attribute channel and the surviving block set.

[0017] Furthermore, the method for generating the world coordinate polygon includes: obtaining the boundary position and canvas size of the rendering canvas; converting the screen points generated by the screen picking operation into the normalized device coordinates based on the boundary position and the canvas size; constructing clipping space points from the normalized device coordinates and mapping them into space rays through the inverse view projection matrix; intersecting the space rays with the elevation reference surface to obtain world coordinate vertices; and connecting multiple world coordinate vertices in the order of the screen picking operation to form the world coordinate polygon.

[0018] Further, the topological filtering of the surviving block set includes: vertically filtering the surviving block set according to the elevation interval to obtain a candidate block set; extracting the block center of each candidate block in the candidate block set; constructing a ray from the block center in a preset direction and counting the number of intersections between the ray and the boundary line segment of the world coordinate polygon; determining the containment state of the block center relative to the world coordinate polygon based on the parity of the number of intersections; and including candidate blocks that satisfy the elevation interval and are within the world coordinate polygon into the target block set.

[0019] Further, the classification and integration of the target block set includes: reading the grade, volume, and density attributes of each target block in the target block set; generating a grade indicator value corresponding to each target block based on the cutoff grade condition; dividing the target block set into an economic ore body unit set and an associated rock mass unit set based on the grade indicator value; performing mass accumulation on the economic ore body unit set and the associated rock mass unit set respectively, and accumulating the metal content based on the grade attributes of the economic ore body unit set; wherein, the ore body estimation result includes ore quantity, waste rock quantity, metal content, stripping ratio, mineralization rate, and grade-tonnage curve data.

[0020] Furthermore, after generating the discrete geological block set, the method further includes a spatial interpolation parameter calibration step: extracting spatial sampling points and their grade values ​​from the assay grade dataset to construct spatial sampling point pairs; assigning the spatial sampling point pairs to distance bins according to the distance between them; generating experimental variogram scatter points based on the grade differences of the spatial sampling point pairs within each distance bin; and mapping the experimental variogram scatter points to the theoretical variogram curve to obtain spatial interpolation parameters used to configure grade attributes for the discrete geological block set.

[0021] Furthermore, a three-dimensional orebody interactive delineation and dynamic terrain constraint estimation method further includes: configuring unique identifiers for geological blocks in the discrete geological block set; when the one-dimensional dynamic terrain elevation array is updated, determining the mask verification block set corresponding to the affected grid cell, regenerating the visibility mask of the mask verification block set, and updating the instance index, target block set, and orebody estimation results according to the state change block.

[0022] On the other hand, this application also provides a three-dimensional orebody interactive delineation and dynamic terrain constraint estimation system, the system comprising:

[0023] Data acquisition module: acquires multi-source spatial datasets, topographic range, elevation intervals and cutoff grade conditions. The multi-source spatial datasets include borehole head datasets, laboratory grade datasets, and inclinometer and lithology datasets.

[0024] Block generation module: Generates a set of discrete geological blocks with block spatial attributes and grade attributes based on the multi-source spatial dataset;

[0025] Terrain Reconstruction Module: Constructs terrain grid nodes within the terrain area, performs local sorting of neighboring gate points and inverse distance weighting on the terrain grid nodes based on the gate plane coordinates and gate elevation, and asynchronously generates a one-dimensional dynamic terrain elevation array;

[0026] Mask construction module: Based on the one-dimensional dynamic terrain elevation array, bilinear interpolation is performed on the block center to obtain the surface elevation corresponding to the block, and a visibility mask is constructed based on the surface elevation corresponding to the block and the spatial attributes of the block to obtain a set of surviving blocks;

[0027] Buffer write module: Writes the spatial transformation data and color mapping data of the live block set into the graphics processor instantiation buffer domain;

[0028] Inverse coordinate solution module: In response to screen picking operations under orthogonal top-view projection, it converts screen points into normalized device coordinates and solves them into world coordinate polygons through the view-projection inverse matrix;

[0029] Topology filtering module: Performs topology filtering on the set of surviving blocks based on the world coordinate polygon and the elevation interval to obtain the set of target blocks;

[0030] Classification and integration module: Based on the cutoff grade conditions, classify and integrate the target block set to generate ore body estimation results.

[0031] The technical effects and advantages of the three-dimensional orebody interactive delineation and dynamic terrain constraint estimation method provided by this invention are as follows:

[0032] This invention improves the real-time performance, continuity, and verifiability of 3D orebody estimation through the collaborative processing of dynamic terrain constraints, instantiated rendering, and interactive delineation integration. It dynamically constrains near-surface blocks using a one-dimensional dynamic terrain elevation array driven by orifice elevation and a visibility mask, reducing mask mismatch caused by traditional static terrain clipping. Spatial transformation data and color mapping data of surviving blocks are written into the graphics processor's instantiation buffer, reducing the data organization burden of block-by-block rendering. Two-dimensional manually delineated boundaries are transformed into a computable 3D estimation domain through orthogonal topographic projection, normalized device coordinate inverse solution, and topological filtering. Combining elevation intervals, cutoff grade conditions, and classification integration, it generates ore quantity, waste rock quantity, metal quantity, stripping ratio, mineralization rate, and grade-tonnage curve data, enhancing the continuous output capability of interactive simulation results. Attached Figure Description

[0033] Figure 1 This is a flowchart of a three-dimensional ore body interactive delineation and dynamic terrain constraint estimation method in Example 1;

[0034] Figure 2 This is a schematic diagram of the generation of a one-dimensional dynamic terrain elevation array and the construction of a block visibility mask in Example 1.

[0035] Figure 3 This is a schematic diagram of the spatial distance binning and variogram curve fitting in Example 1;

[0036] Figure 4 This is a schematic diagram of the connection between a three-dimensional ore body interactive delineation and dynamic terrain constraint estimation system in Example 3. Detailed Implementation

[0037] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0038] Example 1:

[0039] Please see Figure 1 As shown, an embodiment of the present invention provides a method for three-dimensional orebody interactive delineation and dynamic terrain constraint estimation, the method comprising:

[0040] S1. Obtain multi-source spatial datasets, terrain ranges, elevation intervals, and cutoff grade conditions. The multi-source spatial datasets include borehole head datasets, chemical grade datasets, and inclinometer and lithology datasets.

[0041] S2. Generate a set of discrete geological blocks with block spatial attributes and grade attributes based on the multi-source spatial dataset;

[0042] S3. Construct terrain grid nodes within the terrain area, and perform local sorting and inverse distance weighting on the terrain grid nodes based on the plane coordinates and elevation of the orifice, and asynchronously generate a one-dimensional dynamic terrain elevation array.

[0043] S4. Based on the one-dimensional dynamic terrain elevation array, perform bilinear interpolation on the block center to obtain the corresponding surface elevation of the block, and construct a visibility mask based on the corresponding surface elevation of the block and the spatial attributes of the block to obtain a set of surviving blocks.

[0044] S5. Write the spatial transformation data and color mapping data of the surviving block set into the graphics processor instantiation buffer.

[0045] S6. Respond to screen picking operations under orthogonal top-view projection, convert screen points into normalized device coordinates, and solve them into world coordinate polygons through the view-projection inverse matrix;

[0046] S7. Perform topological filtering on the set of surviving blocks based on the world coordinate polygon and the elevation interval to obtain the target block set;

[0047] S8. Based on the cutoff grade conditions, classify and integrate the target block set to generate ore body estimation results.

[0048] In this embodiment, a one-dimensional dynamic terrain elevation array is used to provide a unified data source for subsequent block surface elevation interpolation. The terrain range refers to the planar boundary range covering the mining area to be estimated, which can be determined by the outer range of the borehole opening dataset, the mining area boundary, or a combination of the two. Within the terrain range, terrain grid nodes are established according to a preset grid spacing. Each terrain grid node has planar coordinates to represent the location of the elevation to be obtained.

[0049] To facilitate continuous writing and fast reading, the terrain grid nodes are not saved as scattered objects. Instead, a grid node sequence is first formed according to row and column order, and then the grid node sequence is mapped to a one-dimensional flat storage structure. The one-dimensional flat storage structure refers to converting the row index and column index in the two-dimensional grid into a one-dimensional array position, so that each terrain grid node has a unique write position in the array. Thus, after the grid node elevation is generated, it can be stored in a one-dimensional dynamic terrain elevation array according to the unique write position.

[0050] For any terrain grid node, the borehole plane coordinates and elevation are read from the borehole head dataset. The borehole plane coordinates are used to calculate the plane distance between the borehole head and the terrain grid node, and the borehole head elevation is used to participate in the elevation estimation of the terrain grid node. The distance relationships are locally sorted, and the borehole heads adjacent to the terrain grid node are selected as neighboring borehole heads, instead of forming a whole terrain surface from all borehole heads and then cropping it. Subsequently, inverse distance weights are generated based on the distance between each neighboring borehole head and the terrain grid node; the closer the neighboring borehole head, the greater its weight. The borehole head elevations of each neighboring borehole head are normalized and weighted according to the corresponding inverse distance weights to obtain the grid node elevation of the terrain grid node.

[0051] Methods for asynchronous terrain grid generation include:

[0052] For a non-uniformly distributed set of borehole opening elevation points The system is at the planar boundary. Internally, by step size The data is partitioned to generate a one-dimensional flattened floating-point array.

[0053] For any grid node Calculate the squared distance set The local part sorting algorithm is used to extract the nearest... Anchor point index set Execute with a very small constant smoothing factor Inverse distance weighted functionals are used to obtain nodal elevations. :

[0054] ;

[0055] Among them, smoothing factor Set to 1.0, distance decay power exponent Preferably 1, to eliminate Approaching the anchor point The Lebesgue measure singularity arises when the denominator approaches zero; Indicates the first The elevation of the borehole at a nearby borehole point Show the first The inverse distance weights of neighboring aperture points to terrain grid nodes are used; to prevent the main thread from blocking, asynchronous processing is performed in chunks based on grid row execution time. For anchor point indexes.

[0056] In actual execution, the grid node sequence is divided into multiple continuous node segments, and each continuous node segment is added to the segmented task queue. After each task segment completes the distance calculation of the terrain grid nodes it contains, the selection of neighboring wellhead points, the inverse distance weight calculation, and the array writing, the next task segment is scheduled. If the borehole wellhead dataset is updated, the corresponding node segment can be rescheduled according to the area where the updated wellhead point is located, and the newly generated grid node elevation is written back to the original array position, thereby forming a one-dimensional dynamic terrain elevation array corresponding to the change in wellhead elevation. The elements in this array maintain an index correspondence with the terrain grid nodes, which is used by subsequent steps to read adjacent elevation nodes based on the block center position and perform bilinear interpolation.

[0057] like Figure 2 As shown, when generating a one-dimensional dynamic terrain elevation array, the terrain grid nodes are evaluated using inverse distance weighting based on the elevation of the adjacent orifice points; when constructing the visibility mask, the block center is mapped to the corresponding grid cell, and bilinear interpolation is performed based on adjacent elevation nodes and local offsets to obtain the surface elevation corresponding to the block; this figure is used to illustrate how the terrain elevation array generation results continue to participate in the block-level terrain constraint judgment.

[0058] In this embodiment, the visibility mask is used to determine whether each geological block in the discrete geological block set should enter the subsequent rendering and estimation process under terrain constraints. The block center is the center point of the geological block in the spatial coordinate system. The spatial attributes of the block include at least the planar position, vertical position and vertical dimension of the geological block. The one-dimensional dynamic terrain elevation array has an index correspondence with the terrain grid nodes. Therefore, before performing the visibility judgment, the planar coordinates of the block center are first converted to the grid coordinate domain corresponding to the one-dimensional dynamic terrain elevation array.

[0059] Specifically, based on the planar offset of the block center relative to the starting position of the terrain range, the grid cell into which the block center falls is determined. The grid cell is a local calculation area enclosed by adjacent terrain grid nodes. The local offset of the block center within the grid cell relative to the horizontal and vertical directions is further calculated. The local offset is used to represent the degree to which the block center is close to each adjacent elevation node. Subsequently, based on the row and column positions of the grid cell, the corresponding adjacent elevation nodes are read from the one-dimensional dynamic terrain elevation array, and bilinear matrix interpolation is performed on the adjacent elevation nodes according to the local offset to obtain the surface elevation corresponding to the block.

[0060] Bilinear matrix interpolation and Heaviside visibility mask:

[0061] For The time complexity of the center coordinates is Geological blocks are subjected to terrain visibility removal and projected onto a floating-point grid coordinate domain to obtain local biases. Accurate surface elevation is calculated using compact matrix multiplication. :

[0062] ;

[0063] In the formula, , , , These represent the elevation values ​​of the four adjacent elevation nodes of the grid cell containing the center of the block; and These represent the reverse offset ratios of the block center relative to adjacent elevation nodes.

[0064] Define geometric visibility mask indicator variable Introducing the Heaviside step function :

[0065] ;

[0066] In the formula, This represents the vertical dimension of the geological block. This indicates the vertical position of the center of the geological block. If the comparison result corresponds to the survival status, then... Take the mask value representing survival and assign the geological block to the set of survival blocks; if the comparison result corresponds to a non-survival state, then... Take the mask value representing non-living, and classify the geological block into the non-living block set or exclude it from the subsequent instantiation rendering data preparation process.

[0067] Will block space transformation matrix The color vectors mapped from the geochromatic color spectrum are packaged into contiguous memory and pushed to the rendering pipeline in a single DrawCall.

[0068] For example: When the center of a block is located inside a grid cell, the elevation nodes corresponding to the four corners of the grid cell are read, and the participation ratio of each elevation node is determined according to the lateral and longitudinal offset of the block center within the grid cell. Then, the surface elevation at the center of the block is calculated. This process does not change the elevation values ​​of the original terrain grid nodes, but only forms an interpolated elevation at the center of the block for comparison and judgment.

[0069] After obtaining the surface elevation corresponding to the block, the surface elevation is compared with the vertical position and vertical dimensions of the block in the spatial attributes of the block. The vertical position is used to characterize the position of the block center in the elevation direction, and the vertical dimensions of the block are used to limit the area occupied by the block in the elevation direction. Based on the comparison results, a step judgment is performed. Geological blocks that meet the terrain constraints are assigned a mask value representing the survival state, and geological blocks that do not meet the terrain constraints are assigned a mask value representing the non-survival state. The step judgment is the judgment process of converting the continuous elevation comparison results into binary mask values.

[0070] After completing the above judgment, the geological blocks are grouped according to the mask value: geological blocks in the living state corresponding to the mask value are written into the living block set, and geological blocks in the non-living state corresponding to the mask value are written into the non-living block set or excluded from the subsequent instantiation rendering data preparation process. Thus, the living block set maintains a correspondence with the one-dimensional dynamic terrain elevation array in terms of terrain constraints, and serves as the input data for subsequent writing into the graphics processor instantiation buffer and interactive topology filtering.

[0071] In this embodiment, after obtaining the set of surviving blocks, an instance index is first assigned to each surviving block according to the order of arrangement in the set. The instance index is used to identify the write position of a surviving block in the subsequent consecutive floating-point array and to maintain the correspondence between the surviving block and its rendering attributes.

[0072] For any surviving block, its spatial attributes are read, and a spatial transformation matrix is ​​generated from these attributes. The spatial transformation matrix is ​​used to express the position, scale, and orientation of the surviving block in three-dimensional space, so that the geometry of the same basic block can be called according to different spatial states. The quality attributes of the surviving block are further read, and a color vector is generated according to a preset color mapping relationship. The color vector is used to express the quality color or category color of the surviving block when it is displayed.

[0073] After the above data extraction is completed, the spatial transformation matrix, color vector and instance index corresponding to the same surviving block are treated as a set of instantiated rendering data and written into a continuous floating-point array in the order corresponding to the instance index. The continuous floating-point array does not store independent block geometry objects, but stores the instance attributes that differ between each surviving block. The basic block geometry data is kept shared, and the continuous floating-point array only records the differences between each instance in spatial position, display color and index.

[0074] Subsequently, the continuous floating-point array is bound to the instantiation attribute channel in the graphics processor instantiation buffer. The instantiation attribute channel refers to the attribute input channel read by instance during instantiation drawing, and its reading order is consistent with the instance index. Thus, during subsequent drawing processes, when the basic block geometry is repeatedly called, each instance call reads the corresponding spatial transformation matrix and color vector from the continuous floating-point array. At the same time, the correspondence between the instance and the original surviving blocks in the surviving block set is preserved through the instance index, so that the same surviving block data can continue to be referenced in subsequent interactive delimitation and topology filtering.

[0075] In this embodiment, the world coordinate polygon is used to represent the planar boundary formed by manual delineation under orthogonal top-view projection. The screen picking operation refers to the interactive operation of selecting boundary points in sequence in the rendering canvas. The rendering canvas is the projection area of ​​the three-dimensional scene in the display interface. In order to avoid directly mistaking the screen pixel position as the three-dimensional spatial position, the boundary position of the rendering canvas in the display interface and the canvas size are obtained before generating the world coordinate polygon.

[0076] When a screen point is generated, it is converted into normalized device coordinates based on the offset of the screen point relative to the top-left corner of the rendering canvas and the canvas size.

[0077] In response to human-computer interaction trigger commands, the system's underlying layer takes over the rendering pipeline, forcibly locking the 3D perspective camera into an orthogonal top-down view to establish a 2D simulation working surface and capture the vertex pixel coordinates of the polygons drawn on the screen by the user based on geological experience. Transform it into normalized device coordinates using an affine transformation:

[0078] ;

[0079] in, , , and These are the absolute offset and physical width and height of the front-end canvas container in the browser viewport, respectively.

[0080] Normalized device coordinates are used to represent the standardized planar position of a screen point in the camera clipping space. Its horizontal and vertical components no longer use pixel units, but instead use standard coordinates that can be recognized by camera projection calculation. Through this transformation, the same manually drawn point can be decoupled from the influence of different display resolutions and canvas sizes and enter the subsequent reverse projection process.

[0081] After obtaining the normalized device coordinates, a clipping space point is constructed using these coordinates. Then, an inverse mapping is performed using the view-projection inverse matrix corresponding to the current orthogonal top-view projection to obtain a spatial ray passing through the spatial position corresponding to that screen point. This is achieved by introducing the camera view-projection inverse matrix. The system itself A virtual ray is emitted into space and solved in conjunction with the preset equation of the Z-axis elevation center horizontal plane to accurately calculate the vertex sequence of the two-dimensional control polygon in the world coordinate system. The view-projection inverse matrix is ​​the inverse matrix of the current camera view matrix and the projection matrix. It is used to restore points in the clipping space to the world coordinate system. Since this embodiment uses orthogonal top-view projection, the direction of the spatial ray corresponds to the top-view observation direction, and the ray position is determined by the normalized device coordinates of the screen point.

[0082] Subsequently, the spatial ray is intersected with the elevation reference surface, which is a horizontal reference surface used to support the artificially delineated boundary. It can be determined based on the elevation benchmark during the interactive delineation process of the 3D ore body. The intersection point of the spatial ray and the elevation reference surface is the world coordinate vertex. The above transformation, reverse mapping and intersection process are performed on multiple screen points generated consecutively to obtain multiple world coordinate vertices. Finally, multiple world coordinate vertices are connected according to the order of screen picking operations to form a world coordinate polygon. This world coordinate polygon and the subsequent elevation interval are used together to define the 3D simulated mining area.

[0083] In this embodiment, topology filtering is used to further determine the blocks that will enter the manually delineated estimation range from the set of surviving blocks that already meet the terrain constraints. Since the world coordinate polygon represents the planar boundary under orthogonal top-view projection, while the elevation interval represents the vertically defined range, the set of surviving blocks is first vertically filtered based on the elevation interval.

[0084] Specifically, the spatial attributes of each surviving block are read. The spatial attributes include the vertical position of the block center and the vertical dimensions of the block. Based on the vertical position of the block center and the vertical dimensions of the block, it is determined whether the surviving block meets the elevation interval in the vertical direction. Surviving blocks that meet the elevation interval are written into the candidate block set, while surviving blocks that do not meet the elevation interval are not included in the subsequent planar containment judgment. Thus, the candidate block set has completed the vertical constraint in the three-dimensional simulated mining field.

[0085] Subsequently, the center of each candidate block in the candidate block set is extracted, and the planar coordinates of the center of the block in the plane of the world coordinate polygon are taken as the point to be judged. Starting from the point to be judged, a ray is constructed along a preset direction. The preset direction is a direction that remains consistent in the plane of the world coordinate polygon, which is used to ensure that different candidate blocks adopt the same intersection point statistics rules.

[0086] Each boundary segment of the world coordinate polygon is evaluated. A boundary segment is formed by connecting two adjacent world coordinate vertices. The line connecting the last world coordinate vertex and the first world coordinate vertex is considered a closed boundary segment. If a ray intersects a boundary segment, the number of intersection points is counted. If a ray passes through a polygon vertex or coincides with a boundary segment, it is processed according to the same boundary assignment rule to avoid the same vertex being counted repeatedly. The boundary assignment rule can be to classify boundary points into a defined range, so that candidate blocks located on the boundary have a definite assignment status.

[0087] After completing the intersection statistics of all boundary line segments, the containment status of the point to be judged relative to the world coordinate polygon is determined according to the parity of the number of intersections. When the number of intersections is odd, the candidate block is determined to be inside the world coordinate polygon; when the number of intersections is even, the candidate block is determined to be outside the world coordinate polygon. Finally, the candidate blocks that simultaneously meet the elevation interval and are inside the world coordinate polygon are included in the target block set. The target block set serves as the data basis for subsequent classification and integration based on the cutoff grade conditions.

[0088] In this embodiment, classification integration is performed after the target block set is determined. The target block set has been constrained by terrain, world coordinate polygon, and elevation interval constraints. Therefore, classification integration is only performed on the target blocks within this set. For any target block, its grade attribute, volume attribute, and density attribute are read. The grade attribute is used to represent the content of mineralized components corresponding to the target block, the volume attribute is used to represent the space occupied by the target block in the three-dimensional block model, and the density attribute is used to convert the volume into mass.

[0089] The cutoff grade condition is a threshold condition for distinguishing between economic ore body units and associated rock mass units. For each target block, its grade attribute is compared with the cutoff grade condition, and a corresponding grade indicator value is generated. The grade indicator value is used to record the comparison result: target blocks that meet the cutoff grade condition are classified into the economic ore body unit set, and target blocks that do not meet the cutoff grade condition are classified into the associated rock mass unit set. For example, in one embodiment, if the grade of a target block is not lower than a given cutoff grade, it is regarded as an economic ore body unit; if it is lower than the cutoff grade, it is regarded as an associated rock mass unit.

[0090] After the division is completed, the mass of each economic ore body unit in the economic ore body unit set is converted according to its volume and density attributes, and the masses of each unit are accumulated to obtain the ore quantity. At the same time, the metal content of each economic ore body unit is accumulated according to its grade attributes to obtain the metal quantity. Similarly, the mass of each associated rock mass unit in the associated rock mass unit set is converted according to its volume and density attributes, and the masses of each unit are accumulated to obtain the waste rock quantity. The stripping ratio is determined by the ratio between the waste rock quantity and the ore quantity. When the ore quantity is involved in the division calculation, a preset safety amount can be used in the denominator to ensure that the calculation process has a definite output. The mineralization rate is determined by the ratio between the number of economic ore body units and the number of target blocks in the target block set.

[0091] The grade-tonnage curve data is obtained by continuously taking values ​​for the cutoff grade condition and repeating the above classification and integration process. Each value corresponds to a set of ore quantity, average grade or metal quantity data. Multiple sets of data are arranged in order of cutoff grade to form the grade-tonnage curve data for subsequent display. The above ore quantity, waste rock quantity, metal quantity, stripping ratio, mineralization rate and grade-tonnage curve data together constitute the ore body estimation result.

[0092] like Figure 3 As shown, spatial sampling points are divided into bins of different distances according to spatial distance, and experimental variogram scatter points are formed based on the grade differences within each bin. After the theoretical variogram curve is correlated with the experimental variogram scatter points, spatial interpolation parameters for configuring grade attributes for discrete geological block sets are obtained.

[0093] In this embodiment, the spatial interpolation parameter calibration step is used to organize the spatial correlation reflected in the test grade dataset before obtaining the grade attributes of the discrete geological block set. The test grade dataset includes sampling locations and their corresponding grade values. Spatial sampling points refer to sampling records with spatial coordinates and grade values. During execution, spatial sampling points are first extracted from the test grade dataset, and spatial sampling point pairs are constructed according to the combination relationship between sampling points. Each spatial sampling point pair includes the spatial coordinates of two sampling points and their grade values.

[0094] For any pair of spatial sampling points, the spatial distance between the two sampling points is calculated, and the difference between their grade values ​​is also calculated. The spatial distance is used to represent the interval between the point pairs in the ore body space, and the grade difference is used to represent the degree of grade change within that interval. Subsequently, according to the distance range to which the spatial distance belongs, each pair of spatial sampling points is assigned to the corresponding distance bin. The distance bin is a set of point pairs divided according to the distance size. Spatial sampling point pairs within the same distance bin have similar spatial intervals.

[0095] For each distance bin, the spatial sampling point pairs contained therein are read, and the semivariogram statistic corresponding to that distance bin is generated based on the grade difference of each spatial sampling point pair. The semivariogram statistic is used to represent the average degree of grade change within that distance range. The representative distance of each distance bin is combined with the corresponding semivariogram statistic to obtain the experimental variogram scatter plot. The experimental variogram scatter plot is not directly used to assign the block grade, but is used to reflect the correspondence between "distance change - grade difference change" in the sampling data.

[0096] Subsequently, the experimental variogram scatter points are correlated with the theoretical variogram curve, which can be in spherical, exponential, or Gaussian form. Its parameters include a nugget term representing short-range random variation, a range term representing the distance of spatial correlation influence, and a sill term representing the overall variation amplitude. By establishing a correspondence between the theoretical variogram curve and the experimental variogram scatter points in the distance and semivariogram directions, a parameter combination for spatial interpolation is obtained. This parameter combination is used as spatial interpolation parameters to assign grade attributes to each geological block when subsequently estimating the grade of discrete geological block sets.

[0097] Example 2:

[0098] This embodiment further improves upon the design of Embodiment 1. The difference lies in the fact that, in the actual operation of Embodiment 1, it was found that when the borehole aperture dataset is updated and triggers a local reconstruction of the one-dimensional dynamic terrain elevation array, the visibility mask of some geological blocks changes with the corresponding surface elevation of the blocks. This causes additions, deletions, or rearrangements in the surviving block set, resulting in asynchrony between the instance index in the graphics processor's instantiation buffer, the block reference relationships already defined by the world coordinate polygon, and the target block set. Consequently, the ore body estimation results cannot be stably maintained while preserving the original manually defined boundaries. Based on this, a three-dimensional ore body interactive delineation and dynamic terrain constraint estimation method further includes surviving block index fidelity and incremental topology backfilling steps.

[0099] In this embodiment, the live block index fidelity and incremental topology backfilling steps are executed after the one-dimensional dynamic terrain elevation array is locally updated. First, a unique block identifier is configured for each geological block in the discrete geological block set. The unique block identifier remains unchanged after the geological block is generated and is used to distinguish it from the instance index. The instance index is used to represent the current position of the live block in the continuous floating-point array and the instantiated attribute channel, and it changes with the addition or deletion of the live block set. The unique block identifier is used to represent the original geological block identity and does not change with the rendering order.

[0100] When the one-dimensional dynamic terrain elevation array is updated, the affected grid cells are first determined based on the updated terrain grid nodes. Then, the geological blocks that intersect or are adjacent to the affected grid cells are looked up to form a mask verification block set. For each geological block in the mask verification block set, the surface elevation interpolation and visibility mask judgment corresponding to the block are re-executed, and the new mask value is compared with the mask value before the update. If the mask value has not changed, the geological block is retained in the original set of living blocks or non-living blocks. If the mask value has changed, the geological block is marked as a state change block.

[0101] For a state-change block that changes from a non-living state to a living state, its spatial and quality attributes are read based on its unique block identifier. The corresponding spatial transformation matrix and color vector are generated and appended or inserted into the writable position of the continuous floating-point array. At the same time, a new correspondence between the instance index and the unique block identifier is established. For a state-change block that changes from a living state to a non-living state, its unique block identifier record is retained, and its corresponding instance index is marked as invalid. Alternatively, a subsequent living block is moved forward to fill the instance index position, and the correspondence between the instance index and the unique block identifier is updated synchronously.

[0102] After the instance index relationship is updated, if a world coordinate polygon has already been generated, the screen picking operation will not be re-acquired, nor will the world coordinate polygon be regenerated. Instead, only the elevation interval judgment and topology filtering based on the world coordinate polygon will be performed on the state change blocks. For state change blocks that have newly entered the living state and meet the elevation interval and are within the world coordinate polygon, they will be added to the target block set according to the block's unique identifier. For state change blocks that have exited the living state or no longer meet the topology filtering conditions, they will be removed from the target block set according to the block's unique identifier.

[0103] Subsequently, based on the addition or removal status of the state-changed blocks in the target block set, incremental corrections are performed on the ore body estimation results. For state-changed blocks added to the target block set, the corresponding increments of ore quantity, waste rock quantity, or metal quantity are calculated based on their grade attributes, volume attributes, density attributes, and cutoff grade conditions, and then added to the original ore body estimation results. For state-changed blocks removed from the target block set, the corresponding increments are deducted from the original ore body estimation results according to the same calculation relationship. The grade-tonnage curve data retains the original cutoff grade value sequence during incremental correction, and only the value nodes involving state-changed blocks are updated with their mass or metal quantity data.

[0104] Through the above processing, a correspondence is established between the dynamic terrain elevation array update, visibility mask change, instantiated buffer data rewriting, and target block set adjustment, with the unique block identifier as the core. This allows the manually delineated boundaries, elevation intervals, and cutoff grade conditions to continue to act on the same estimation logic chain after changes in the surviving block set.

[0105] Example 3:

[0106] like Figure 4 As shown, based on the same inventive concept as the three-dimensional orebody interactive delineation and dynamic terrain constraint estimation method in the foregoing embodiments, this application provides a three-dimensional orebody interactive delineation and dynamic terrain constraint estimation system. The system and method embodiments in this application are based on the same inventive concept. The system includes:

[0107] Data acquisition module: acquires multi-source spatial datasets, topographic range, elevation intervals and cutoff grade conditions. The multi-source spatial datasets include borehole head datasets, laboratory grade datasets, and inclinometer and lithology datasets.

[0108] Block generation module: Generates a set of discrete geological blocks with block spatial attributes and grade attributes based on the multi-source spatial dataset;

[0109] Terrain Reconstruction Module: Constructs terrain grid nodes within the terrain area, performs local sorting of neighboring gate points and inverse distance weighting on the terrain grid nodes based on the gate plane coordinates and gate elevation, and asynchronously generates a one-dimensional dynamic terrain elevation array;

[0110] Mask construction module: Based on the one-dimensional dynamic terrain elevation array, bilinear interpolation is performed on the block center to obtain the surface elevation corresponding to the block, and a visibility mask is constructed based on the surface elevation corresponding to the block and the spatial attributes of the block to obtain a set of surviving blocks;

[0111] Buffer write module: Writes the spatial transformation data and color mapping data of the live block set into the graphics processor instantiation buffer domain;

[0112] Inverse coordinate solution module: In response to screen picking operations under orthogonal top-view projection, it converts screen points into normalized device coordinates and solves them into world coordinate polygons through the view-projection inverse matrix;

[0113] Topology filtering module: Performs topology filtering on the set of surviving blocks based on the world coordinate polygon and the elevation interval to obtain the set of target blocks;

[0114] Classification and integration module: Based on the cutoff grade conditions, classify and integrate the target block set to generate ore body estimation results.

[0115] Obviously, those skilled in the art can make various modifications and variations to this invention without departing from its spirit and scope. Therefore, if these modifications and variations fall within the scope of the claims of this invention and their equivalents, this invention also intends to include these modifications and variations.

[0116] The above description is merely a preferred embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any equivalent substitutions or modifications made by those skilled in the art within the scope of the technology disclosed in the present application, based on the technical solution and concept of the present application, should be covered within the scope of protection of the present application.

Claims

1. A method for interactive delineation of three-dimensional ore bodies and dynamic terrain constraint estimation, characterized in that, The methods include: Acquire multi-source spatial datasets, topographic extent, elevation intervals, and cutoff grade conditions. The multi-source spatial datasets include borehole head datasets, chemical grade datasets, and inclinometer and lithology datasets. A set of discrete geological blocks with block spatial attributes and grade attributes is generated based on the multi-source spatial dataset; Within the terrain area, a terrain grid node is constructed. Based on the orifice plane coordinates and orifice elevation, the terrain grid node is subjected to local sorting of neighboring orifice points and inverse distance weight calculation, and a one-dimensional dynamic terrain elevation array is generated asynchronously. The method for generating the one-dimensional dynamic terrain elevation array includes: establishing a grid node sequence within the terrain area and mapping the grid node sequence to a one-dimensional flat storage structure; calculating the distance relationship between each terrain grid node in the grid node sequence and the borehole plane coordinates in the borehole opening dataset; selecting neighboring borehole opening points according to the distance relationship, and generating grid node elevations based on the borehole opening elevations and inverse distance weights of the neighboring borehole opening points; and writing the grid node elevations into the one-dimensional flat storage structure to form the one-dimensional dynamic terrain elevation array; wherein, the asynchronous generation is scheduled by a segmented task queue for the grid node sequence. Based on the one-dimensional dynamic terrain elevation array, bilinear interpolation is performed on the block center to obtain the corresponding surface elevation of the block, and a visibility mask is constructed based on the corresponding surface elevation of the block and the spatial attributes of the block to obtain a set of surviving blocks; The method for constructing the visibility mask includes: projecting the center of each geological block in the discrete geological block set onto the grid coordinate domain corresponding to the one-dimensional dynamic terrain elevation array to determine the grid cell and local offset of the geological block; reading the adjacent elevation nodes corresponding to the grid cell, performing bilinear matrix interpolation based on the local offset to obtain the surface elevation corresponding to the block; generating a mask value using a step judgment based on the surface elevation corresponding to the block, the vertical position in the spatial attributes of the block, and the vertical dimension of the block; and classifying the geological block into the set of live blocks or the set of non-live blocks according to the mask value. Write the spatial transformation data and color mapping data of the surviving block set into the graphics processor instantiation buffer. In response to screen picking operations under orthogonal top-view projection, screen points are converted into normalized device coordinates and solved into world coordinate polygons via the view-projection inverse matrix; The set of surviving blocks is topologically filtered based on the world coordinate polygon and the elevation interval to obtain the set of target blocks; The target block set is classified and integrated based on the cutoff grade conditions to generate ore body estimation results.

2. The method for interactive delineation of three-dimensional ore bodies and dynamic terrain constraint estimation according to claim 1, characterized in that, Writing to the graphics processor instantiation buffer includes: extracting the spatial transformation matrix, color vector, and instance index corresponding to each surviving block from the surviving block set; writing the spatial transformation matrix, color vector, and instance index into a continuous floating-point array according to the instance order; binding the continuous floating-point array to the instantiation attribute channel in the graphics processor instantiation buffer, and establishing an index correspondence between the instantiation attribute channel and the surviving block set.

3. The method for interactive delineation of three-dimensional ore bodies and dynamic terrain constraint estimation according to claim 1, characterized in that, The method for generating the world coordinate polygon includes: obtaining the boundary position and canvas size of the rendering canvas; converting the screen points generated by the screen picking operation into the normalized device coordinates based on the boundary position and the canvas size; constructing clipping space points from the normalized device coordinates and mapping them into space rays through the inverse view projection matrix; intersecting the space rays with the elevation reference surface to obtain world coordinate vertices; and connecting multiple world coordinate vertices in the order of the screen picking operation to form the world coordinate polygon.

4. The method for interactive delineation of three-dimensional ore bodies and dynamic terrain constraint estimation according to claim 1, characterized in that, The topological filtering of the surviving block set includes: vertically filtering the surviving block set according to the elevation interval to obtain a candidate block set; extracting the block center of each candidate block in the candidate block set; constructing a ray from the block center in a preset direction and counting the number of intersections between the ray and the boundary line segment of the world coordinate polygon; determining the containment state of the block center relative to the world coordinate polygon based on the parity of the number of intersections; and including candidate blocks that satisfy the elevation interval and are within the world coordinate polygon into the target block set.

5. The method for interactive delineation of three-dimensional ore bodies and dynamic terrain constraint estimation according to claim 1, characterized in that, The classification and integration of the target block set includes: reading the grade, volume, and density attributes of each target block in the target block set; generating a grade indicator value corresponding to each target block based on the cutoff grade condition; dividing the target block set into an economic ore body unit set and an associated rock mass unit set based on the grade indicator value; accumulating the mass of the economic ore body unit set and the associated rock mass unit set respectively, and accumulating the metal content based on the grade attributes of the economic ore body unit set; wherein, the ore body estimation result includes ore quantity, waste rock quantity, metal content, stripping ratio, mineralization rate, and grade-tonnage curve data.

6. The method for interactive delineation of three-dimensional ore bodies and dynamic terrain constraint estimation according to claim 1, characterized in that, After generating the discrete geological block set, the method also includes a spatial interpolation parameter calibration step: extracting spatial sampling points and their grade values ​​from the test grade dataset to construct spatial sampling point pairs; The spatial sampling point pairs are assigned to distance bins according to the distance between them; experimental variogram scatter points are generated based on the grade differences of the spatial sampling point pairs in each distance bin; the experimental variogram scatter points are correlated with the theoretical variogram curve to obtain spatial interpolation parameters for configuring grade attributes for the discrete geological block set.

7. The method for interactive delineation of three-dimensional ore bodies and dynamic terrain constraint estimation according to claim 1, characterized in that, Also includes: Configure a unique identifier for each geological block in the discrete geological block set; when the one-dimensional dynamic terrain elevation array is updated, determine the mask verification block set corresponding to the affected grid cell, regenerate the visibility mask of the mask verification block set, and update the instance index, target block set, and ore body estimation results according to the state change block update.

8. A three-dimensional orebody interactive delineation and dynamic terrain constraint estimation system, characterized in that, The system includes: Data acquisition module: acquires multi-source spatial datasets, topographic range, elevation intervals and cutoff grade conditions. The multi-source spatial datasets include borehole head datasets, laboratory grade datasets, and inclinometer and lithology datasets. Block generation module: Generates a set of discrete geological blocks with block spatial attributes and grade attributes based on the multi-source spatial dataset; The terrain reconstruction module constructs terrain grid nodes within the terrain area. Based on the borehole plane coordinates and borehole elevation, it performs local sorting of neighboring borehole points and inverse distance weighting on the terrain grid nodes, asynchronously generating a one-dimensional dynamic terrain elevation array. The generation method of the one-dimensional dynamic terrain elevation array includes: establishing a grid node sequence within the terrain area and mapping the grid node sequence to a one-dimensional flat storage structure; calculating the distance relationship between each terrain grid node in the grid node sequence and the borehole plane coordinates in the borehole dataset; selecting neighboring borehole points according to the distance relationship, and generating grid node elevations based on the borehole elevations and inverse distance weights of the neighboring borehole points; and writing the grid node elevations into the one-dimensional flat storage structure to form the one-dimensional dynamic terrain elevation array. The asynchronous generation is scheduled through a segmented task queue. Mask construction module: Based on the one-dimensional dynamic terrain elevation array, bilinear interpolation is performed on the block center to obtain the corresponding surface elevation of the block, and a visibility mask is constructed based on the corresponding surface elevation of the block and the spatial attributes of the block to obtain a set of surviving blocks; Based on the one-dimensional dynamic terrain elevation array, bilinear interpolation is performed on the block center to obtain the corresponding surface elevation of the block, and a visibility mask is constructed based on the corresponding surface elevation of the block and the spatial attributes of the block to obtain a set of surviving blocks; The method for constructing the visibility mask includes: dividing the discrete geological blocks The center of each geological block in the set is projected onto the grid coordinate domain corresponding to the one-dimensional dynamic terrain elevation array to determine the grid cell and local offset of the geological block; the adjacent elevation nodes corresponding to the grid cell are read, and bilinear matrix interpolation is performed according to the local offset to obtain the surface elevation corresponding to the block; a mask value is generated by step judgment based on the surface elevation corresponding to the block, the vertical position in the spatial attributes of the block, and the vertical dimension of the block; the geological block is classified into the set of live blocks or the set of non-live blocks according to the mask value; Buffer write module: Writes the spatial transformation data and color mapping data of the live block set into the graphics processor instantiation buffer domain; Inverse coordinate solution module: In response to screen picking operations under orthogonal top-view projection, it converts screen points into normalized device coordinates and solves them into world coordinate polygons through the view-projection inverse matrix; Topology filtering module: Performs topology filtering on the set of surviving blocks based on the world coordinate polygon and the elevation interval to obtain the set of target blocks; Classification and integration module: Based on the cutoff grade conditions, classify and integrate the target block set to generate ore body estimation results.

Citation Information

Patent Citations

  • Underground mine measurement and resource reserve estimation method and system

    CN121120968A

  • Geological structure electromagnetic exploration three-dimensional modeling method and system, electronic equipment and medium

    CN121634301A