Intelligent surveying and mapping system of geological information based on multi-source data fusion

The intelligent geological information mapping system, which integrates multi-source data, solves the problems of refined spatial feature representation and topological relationship encoding in the fusion of multi-source geospatial information, and achieves efficient data integration and secure transmission, thereby improving data interoperability and security.

CN121117979BActive Publication Date: 2026-02-13山东海润数聚科技有限公司
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511668015.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-11-14
Publication Date
2026-02-13
Estimated Expiration
2045-11-14

AI Technical Summary

Technical Problem

Existing technologies struggle to directly represent refined spatial features in multi-source geospatial information fusion, resulting in incomplete or limited information accuracy. Furthermore, the lack of encoding of topological relationships between spatial objects leads to decreased efficiency in data retrieval and relationship analysis, and increases the risk of fragmented data storage.

Method used

The intelligent geological information mapping system, which adopts multi-source data fusion, realizes the object-oriented integration, topological relationship encoding and encryption processing of multi-source geological information through a geological element objectification encapsulation module, a three-dimensional topological map construction module, a data hierarchical encryption module and a secure data format generation module, and generates map data files with integrated security mechanisms.

Benefits of technology

It has achieved efficient object-oriented integration and topological relationship storage of geographic data of different types, accuracies, and sources, improved data interoperability and traceability, enhanced data security and transmission capabilities, and formed a closed-loop protection system from data generation to transmission to security verification.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121117979B_ABST
    Figure CN121117979B_ABST
Patent Text Reader

Abstract

The present application relates to the technical field of map data formatting, in particular to a multi-source data fusion geological information intelligent surveying and mapping system, which comprises a geological element objectification encapsulation module, based on input multi-source geological information, point coordinates of a drill hole, a trend path of a prospecting line, a B-Rep boundary representation of a stratum interface and a voxel set of an ore body are extracted, the ID, timestamp and data source metadata of each element are synchronously acquired, and a uniform geological object set with an identifier is generated. The present application integrates multi-source geological data objects, enhances interoperability and traceability, carries topological relationships internally, realizes spatial operation and data retrieval efficiency, controls and encrypts through attribute fields, combines encapsulation and watermarking technology, constructs a tamper-proof, traceable closed-loop security system, improves data credibility and integrity, and forms comprehensive protection from generation to verification.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of map data formatting, and in particular to a geological information intelligent surveying and mapping system based on multi-source data fusion. BACKGROUND

[0002] Map data formatting is an important branch of the intersection field of geographic information science and information engineering, mainly studying how to standardize the description, storage and transmission of geographic spatial information from multiple sources, different accuracies, different coordinate systems and multiple data types through unified data models, coding rules and file specifications, to ensure the compatibility, interoperability and high efficiency of data between different platforms.

[0003] In the prior art, although the description and transmission of multi-source geographic spatial information can be realized through unified data models, coding rules and file specifications in the process of map data formatting, it is difficult to directly represent fine spatial features such as mineral body voxel sets and fault cutting relationships when dealing with different survey methods, different data accuracies and multiple types of geometric data, resulting in incomplete information or limited accuracy in the multi-source fusion scenario. At the same time, due to the lack of coding and additional mechanisms for topological relationships between spatial objects, the prior art often only maintains spatial relationship indexes in external systems. Once the data volume increases or complex spatial operations are involved, the data retrieval and relationship analysis efficiency decreases, and the risk of scattered data storage increases. Therefore, improvement is needed. SUMMARY

[0004] The purpose of the present application is to solve the shortcomings in the prior art and to provide a geological information intelligent surveying and mapping system based on multi-source data fusion.

[0005] In order to achieve the above purpose, the present application adopts the following technical scheme: the geological information intelligent surveying and mapping system based on multi-source data fusion comprises:

[0006] A geological element object encapsulation module extracts the point coordinates of drill holes, the path of exploration lines, the B-Rep boundary representation of stratum interfaces and the voxel set of ore bodies based on input multi-source geological information, synchronously obtains the IDs, timestamps and data source metadata of each element, and generates a set of unified geological objects with identifiers;

[0007] A three-dimensional topological graph construction module traverses the objects and determines the geometric position relationship based on the set of unified geological objects with identifiers, establishes a topological relationship coding list between the objects, and sequentially adds the relationship codes in the topological relationship coding list to the topological adjacency list field of the corresponding objects in the set of unified geological objects with identifiers according to the object identifiers, to obtain a set of geological objects containing topological adjacency lists.

[0008] The data hierarchical encryption module reads metadata information of each object in the geological object set containing the topology adjacency list, classifies geological structure information as a restricted layer, classifies geophysical interpretation attributes as a confidential layer, obtains a hierarchical geological object attribute set, and performs operation on a user attribute set and a security level identifier of each object in the hierarchical geological object attribute set to generate an encrypted geological object data volume;

[0009] The secure data format generation module integrates the encrypted geological object data volume, the access policy metadata, and the file header information, constructs a data block sequence, generates a data structure body to be encapsulated, serializes the data structure body to be encapsulated, embeds verifiable watermark information generated based on user identity information into a file tail or a metadata area, and forms a map data file integrating a security mechanism.

[0010] Preferably, the obtaining step of the uniform geological object set with identifiers is:

[0011] Based on the input multi-source geological information, the drilling information, the exploration line information, the stratigraphic interface information, and the ore body information are analyzed item by item, the point coordinates of the drill hole are extracted from the drilling information, the strike path of the exploration line is extracted from the exploration line information, the B-Rep boundary representation of the stratigraphic interface is extracted from the stratigraphic interface information, and the voxel set of the ore body is extracted from the ore body information to generate a geological element geometric information set;

[0012] Based on the geological element geometric information set, the unique ID of each geological element, the timestamp of data generation, and the data source metadata are synchronously extracted, the corresponding geometric information in the geological element geometric information set is called, and the geometric information and the metadata are structured and combined item by item to form a structured geological element information set;

[0013] Based on the structured geological element information set, the unique ID of each geological element is called, and a unique and unchangeable object identifier is configured for each structured and combined geological element one by one, the object identifier is sequentially attached to the corresponding structured and combined geological element, and a uniform geological object set with identifiers is formed.

[0014] Preferably, the obtaining step of the object-to-object topology relationship coding list is:

[0015] Based on the uniform geological object set with identifiers, the object identifier and the geometric information of the geological object in the uniform geological object set are called one by one, the geometric position relationship between objects is determined by traversing each geological object, the point coordinates of the drill hole object and the B-Rep boundary representation of the stratigraphic interface object are compared one by one, the piercing relationship is determined, and the piercing relationship coding of the drill hole and the stratigraphic interface is generated.

[0016] Based on the identifier-bearing unified geological object set, the object identifiers and geometric information of the fault objects in the unified geological object set are called one by one, the geometric contours of the fault objects are compared with the B-Rep boundary representation of the stratum objects one by one, the cutting relationship of the fault objects to the stratum objects is determined, and the cutting relationship coding of the faults and the strata is generated;

[0017] Based on the identifier-bearing unified geological object set, the object identifiers of the ore body objects and the wall rock objects in the unified geological object set and the voxel set of the ore body objects are called one by one, the spatial topological relationship of the ore body objects and the wall rock objects is determined one by one, if the voxel set of the ore body objects is adjacent to the wall rock object boundary, it is determined as an adjacent relationship, and if the voxel set of the ore body objects is located inside the wall rock object, it is determined as a containing relationship, and the adjacent or containing relationship coding of the ore body objects and the wall rock objects is generated;

[0018] Based on the piercing relationship coding of the drill hole and the stratum interface, the cutting relationship coding of the faults and the strata, and the adjacent or containing relationship coding of the ore body objects and the wall rock objects, the object topological relationship coding list is formed by sequentially summarizing.

[0019] Preferably, the step of obtaining the geological object set containing the topological adjacency list is:

[0020] Based on the object topological relationship coding list, the object identifiers of the geological objects associated with each relationship coding in the object topological relationship coding list are parsed one by one, and a correspondence relationship table of the topological relationship coding and the object identifier of the geological object is generated;

[0021] Based on the correspondence relationship table of the topological relationship coding and the object identifier of the geological object, the geological object corresponding to the topological relationship coding in the identifier-bearing unified geological object set is called one by one, the preset topological adjacency list field in each geological object is extracted, and the topological relationship coding is added one by one in the topological adjacency list field, and the geological object set with the updated topological adjacency list field is generated;

[0022] Based on the geological object set with the updated topological adjacency list field, the geological object with the updated topological adjacency list field and the corresponding object identifier are called one by one, the geological objects are traversed and the matching integrity of the topological relationship coding and the corresponding geological object is verified, and the geological object set containing the topological adjacency list is formed.

[0023] Preferably, the step of obtaining the hierarchical geological object attribute set is:

[0024] Based on the topological adjacency list containing geological object set, the metadata information field in each geological object is called in turn, and the attribute field name, attribute field data value and security level identification recorded by the attribute field are retrieved in turn. It is judged from the matching keyword in the attribute field name whether the attribute field is geological structure information or geophysical interpretation attribute information. If the attribute field name is consistent with the geological structure information keyword, the attribute field is given a restricted layer identification. If the attribute field name is consistent with the geophysical interpretation attribute information keyword, the attribute field is given a confidential layer identification. A layered geological object attribute set is generated.

[0025] Preferably, the obtaining step of the encrypted geological object data body is:

[0026] Based on the layered geological object attribute set, the access risk index of each attribute field is calculated.

[0027] Based on the access risk index, it is compared in turn whether the access risk index of each attribute field is greater than zero. If the access risk index is greater than zero, the attribute field in the corresponding layered geological object attribute set is called, and the data value of the attribute field is encrypted. The attribute field after completing the encryption operation is written back to the corresponding geological object in turn. All processed geological objects are combined to form an encrypted geological object data body.

[0028] Preferably, the obtaining step of the data structure body to be encapsulated is:

[0029] Based on the encrypted geological object data body, the binary data content of the encrypted geological object data body is parsed block by block. The strategy identification, strategy expression and permission level value recorded in the access policy metadata are called, and the field identification, field length and field data type of each binary block in the encrypted geological object data body are compared in turn with the preset information in the access policy metadata. If they are all matched, the access policy metadata is spliced to the encrypted geological object data body, and the file header information is inserted at the front end of the spliced data stream to generate a data structure body to be encapsulated.

[0030] Preferably, the obtaining step of the map data file fused with the security mechanism is:

[0031] Based on the data structure body to be encapsulated, the security integrity score is calculated.

[0032] Based on the safety integrity score, it is judged whether the safety integrity score is lower than the safety threshold preset by the system, if the safety integrity score is lower than the safety threshold, encryption is performed on the data structure body to be encapsulated, and after the encryption is completed, watermark information generated based on the user identity information is written in the metadata area at the end of the data structure body or the file header information, if the safety integrity score is not lower than the safety threshold, regular watermark information is written in the end of the data structure body to be encapsulated or the metadata area, forming a map data file integrated with a safety mechanism.

[0033] Compared with the prior art, the advantages and positive effects of the present application are that:

[0034] In the present application, by extracting the point coordinates of the drill hole, the strike path of the exploration line, the B-Rep boundary representation of the stratigraphic interface and the voxel set of the ore body based on the input multi-source geological information item by item, and synchronously obtaining the ID, timestamp and data source metadata of each element, the objectified integration of geometric and attribute data of different types, different accuracies and different sources can be carried out under the same information framework. This objectified processing not only avoids information fragmentation, but also provides a structured foundation for subsequent three-dimensional spatial logic construction, enhancing data interoperability and traceability. By traversing the geological object set with identifiers, the geometric positional relationship between drill holes and stratigraphic interfaces, faults and rock layers, ore bodies and surrounding rocks is determined, and the obtained topological relationship is attached to the object in a coded manner to form a topological adjacency list that can be queried and calculated. This way of directly carrying topological adjacency information inside the object realizes the cohesion of spatial relationship storage, making spatial operation and data retrieval more efficient. By reading the geological object set containing the topological adjacency list, the metadata information of each object is analyzed, the geological structure information is classified as a restricted layer, and the geophysical interpretation attribute is classified as a confidential layer. Then, the user attribute set is compared with the layered result item by item, and it is decided whether to perform encryption processing. This association of attribute field hierarchical fine-grained control and encryption behavior realizes the principle of least privilege in the field of data security. By integrating encrypted data, access policy metadata and file header information, the data block sequence is spliced and serialized, and at the same time, the verifiable watermark information generated based on the user identity information is embedded into the file tail or the metadata area, so that the finally generated map data file not only has good compatibility and transmission ability, but also has the security features of tamper resistance and traceability. This processing path based on the combination of data encapsulation and watermark technology improves the credibility and integrity of data use process. Compared with traditional data formatting which only completes encoding and storage, a closed-loop security system from data generation to transmission and security verification is formed. BRIEF DESCRIPTION OF DRAWINGS

[0035] Figure 1 The system flowchart of the present application. DETAILED DESCRIPTION

[0036] In order to make the purposes, technical solutions and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific examples described herein are only used to explain the present application and do not limit the present application.

[0037] Please refer to Figure 1 The present application provides a technical solution: a multi-source data fusion geological information intelligent mapping system, comprising:

[0038] A geological element object encapsulation module extracts the point coordinates of the drill hole, the strike path of the exploration line, the B-Rep boundary representation of the stratigraphic interface, and the voxel set of the ore body based on the input multi-source geological information, synchronously obtains the ID, timestamp and data source metadata of each element, and generates a uniform geological object set with identifiers;

[0039] A three-dimensional topological graph construction module traverses the objects and determines the geometric positional relationship based on the uniform geological object set with identifiers, establishes a topological relationship coding list between the objects, and sequentially adds the relationship codes in the topological relationship coding list between the objects to the topological adjacency list field of the corresponding objects in the uniform geological object set with identifiers according to the object identifiers, to obtain a geological object set containing a topological adjacency list;

[0040] A data hierarchical encryption module reads the metadata information of each object in the geological object set containing a topological adjacency list, classifies the geological structure information into a restricted layer and the geophysical interpretation attributes into a confidential layer to obtain a hierarchical geological object attribute set, and operates the user attribute set with the security level identifier of each object in the hierarchical geological object attribute set to generate an encrypted geological object data body;

[0041] A secure data format generation module integrates the encrypted geological object data body, access policy metadata and file header information, constructs a data block sequence, generates a data structure body to be encapsulated, serializes the data structure body to be encapsulated, embeds the verifiable watermark information generated based on the user identity information into the file tail or the metadata area, and forms a map data file integrating a security mechanism.

[0042] The acquisition step of the uniform geological object set with identifiers is as follows:

[0043] Based on the input multi-source geological information, the drill hole information, the exploration line information, the stratigraphic interface information and the ore body information are analyzed item by item, the point coordinates of the drill hole are extracted from the drill hole information, the strike path of the exploration line is extracted from the exploration line information, the B-Rep boundary representation of the stratigraphic interface is extracted from the stratigraphic interface information, and the voxel set of the ore body is extracted from the ore body information, to generate a geological element geometric information set;

[0044] Based on the geological element geometric information set, the unique ID of each geological element, the timestamp of generating data and the data source metadata are extracted synchronously, the corresponding geometric information in the geological element geometric information set is called, and the geometric information and the metadata are structured and combined one by one to form a structured geological element information set;

[0045] Based on the structured geological element information set, the unique ID of each geological element is called, and a unique and unchangeable object identifier is configured for each structured and combined geological element one by one. The object identifier is attached to the corresponding structured and combined geological element one by one to form a unified geological object set with identifiers.

[0046] Specifically, based on the input multi-source geological information, the system first starts a parallel analysis process, and allocates independent analysis threads for geological data sources in different formats, for example, for LAS format drilling data, DXF format exploration line data, GOCAD TSurf format stratigraphic interface data and self-defined binary grid format ore body data, the corresponding parser is started. According to the preset configuration rule, the configuration rule defines the positioning method of key information in various data files in advance, such as the X, Y and Z columns of the drilling point coordinates in the LAS file, the AcDbPolyline meta in the DXF file, the B-Rep boundary representation of the stratigraphic interface is located by reading the VRTX, TRGL and other keywords in the header of the TSurf file to locate the vertex and triangular facet data, and the voxel set of the ore body is obtained by parsing the header metadata of the binary file to obtain the grid dimension, origin coordinates and unit size, and reading the subsequent attribute value array, wherein the attribute value is greater than a preset mineralization grade threshold, for example, the voxel greater than 0.5 g / t is identified as part of the ore body. For all extracted geometric information, the system performs a geometric validity verification, which includes checking whether the drilling coordinates are located within the project defined geographic fence, such as a cubic space defined by the minimum / maximum latitude and longitude and elevation, checking whether the exploration line path has self-intersection or zero-length line segments, checking whether the B-Rep representation of the stratigraphic interface is a water-tight model, and checking whether the number of adjacent triangular facets of each edge is equal to two by calculating the number of adjacent triangular facets of each edge. If the number of adjacent facets of an edge is not equal to two, it is marked as a non-manifold topological error, and a preset vertex welding tolerance is used, which is set according to the data accuracy, for example, 0.01% of the exploration scale (if the scale is 1:10000, the tolerance is 0.1 meters), and the vertices with a distance less than the tolerance are merged to repair small gaps. For the voxel set of the ore body, the connectivity is checked, and the six-neighborhood connectivity algorithm is used to separate the discontinuous voxel blocks into independent sets. All the verified geometric information is classified and stored in a temporary memory data structure to form a geological element geometric information set.

[0047] Based on the set of geological element geometric information, the system performs metadata binding and structured packaging process on each geometric element in the set. The process first extracts associated information from the metadata area or file header of the original data file, such as for drilling data, the parser extracts point coordinates at the same time, and finds and extracts BoreholeID as the unique ID from the file header or associated database table, gets SurveyDate as the timestamp of generated data from file attributes or record fields, and records its source, such as "Zk-2023-Final-Report.xlsx". If the original data lacks a unique ID, the system will automatically generate one according to a preset naming rule, which is "data source file name-element type-file index number", and perform SHA-256 hash operation on this string to generate a deterministic unique ID, ensuring that the ID does not change when processing the same input, and if the timestamp is missing, use the last modified date of the data file, if the date is also invalid, use the current system processing time, and the data source metadata is standardized into a structure containing multiple fields, including SourceFile (original file name), SourceFormat (such as LAS 2.0), Collector (data collection unit or personnel) and ProcessingChain (text description of data processing steps), then the system traverses each entry in the set of geological element geometric information, instantiates a standardized data object for each entry, which contains predefined fields such as Geometry, SourceID, CreationTimestamp and SourceMetadata, then fills the geometric information, unique ID, timestamp and source metadata extracted or generated in the previous step into these fields respectively, forming a structured data unit, this combination process is atomic, ensuring that geometric information and its metadata strictly correspond, and there is no mismatch, finally, all these independently packaged structured data units are collected into a new set, forming a structured geological element information set.

[0048] Based on the structured geological element information set, the system traverses the set to generate and assign a globally unique and persistent object identifier for each geological element. This process first calls the unique ID field of each element in the structured geological element information set, which is extracted or generated from the source data in the previous step. Then, the system uses the UUIDv5 (Universal Unique Identifier version 5) algorithm to generate the final object identifier. This algorithm requires a namespace and a name as input. The system predefines a fixed namespace UUID, such as 1.2.840.113556.1.8000.2552, which is unique for the entire geological information intelligent mapping system. Then, the unique ID string of each geological element is input as the name. By using the UUIDv5(namespace, name) function, a 128-bit object identifier is generated for each geological element. Using UUIDv5 ensures that as long as the unique ID in the source data remains unchanged, the corresponding object identifier will remain completely consistent regardless of when and where the data is reprocessed, thereby achieving the uniqueness and invariability of the identifier. After generating the object identifier, the system modifies the structure of each data object in the structured geological element information set by adding a new field called SystemObjectID. The UUID-formatted object identifier generated earlier is written to this field. After completing the identifier configuration for all elements in the set, the system performs a final verification by loading all newly generated object identifiers into a hash set (HashSet) data structure and verifying that the size of the hash set is exactly equal to the total number of elements in the structured geological element information set. This confirms that no unexpected identifier conflicts have occurred. After completing the verification, the set containing the system-level unique and invariant object identifiers is finally established, forming a unified geological object set with identifiers.

[0049] The object topology relationship encoding list acquisition step is:

[0050] Based on the unified geological object set with identifiers, the object identifier and geometric information of each geological object in the unified geological object set are called one by one. The geometric position relationship between objects is determined by traversing each geological object and comparing the point coordinates of the drill hole object with the B-Rep boundary representation of the stratigraphic interface object. The piercing relationship between the drill hole and the stratigraphic interface is determined, and the piercing relationship encoding between the drill hole and the stratigraphic interface is generated.

[0051] Based on the unified geological object set with identifiers, the object identifier and geometric information of each fault object in the unified geological object set are called one by one. The geometric contour of the fault object is compared with the B-Rep boundary representation of the rock object to determine the cutting relationship between the fault object and the rock object. The cutting relationship encoding between the fault and the rock is generated.

[0052] Based on the unified geological object set with identifiers, the object identifiers of the ore body object and the wall rock object in the unified geological object set and the voxel set of the ore body object are called one by one, and the spatial topological relationship between the ore body object and the wall rock object is judged one by one. If the voxel set of the ore body object is adjacent to the boundary of the wall rock object, it is determined as an adjacency relationship. If the voxel set of the ore body object is located inside the wall rock object, it is determined as a containing relationship. An adjacency or containing relationship code of the ore body object and the wall rock object is generated.

[0053] Based on the piercing relationship code of the drill hole and the stratigraphic interface, the cutting relationship code of the fault and the rock layer, and the adjacency or containing relationship code of the ore body object and the wall rock object, the topological relationship code list between objects is formed by sequentially summarizing.

[0054] Specifically, based on the unified geological object set with identifiers, the system first constructs a three-dimensional R-tree spatial index for accelerating subsequent geometric queries. The bounding box of the B-Rep boundary representation of all stratigraphic interface objects in the unified geological object set is inserted into the R-tree. Subsequently, the system starts a parallel processing task to traverse all drill hole objects. For each drill hole object, the system first extracts its strike path, which is composed of a series of three-dimensional point coordinates. The system connects these points into an ordered set of line segments. Then, the system uses the overall bounding box of the drill hole object strike path to perform a range query in the previously constructed R-tree index to quickly filter out the stratigraphic interface objects that may intersect with the drill hole. For each candidate stratigraphic interface object filtered out, the system performs a piercing relationship judgment. This judgment process handles each line segment of the drill hole one by one. The line segment is treated as a directed ray, and the B-Rep triangular mesh data of the stratigraphic interface object is called. The Möller-Trumbore ray-triangle intersection algorithm is applied to detect whether the ray intersects with any triangular patch of the stratigraphic interface. During the detection, the system uses a floating-point precision tolerance. This tolerance value is set according to the average scale of the geological model. For example, for a model with a 10-kilometer exploration area, the tolerance can be set to 1e-6 meters to avoid missed or false judgments due to calculation errors. Whenever an effective intersection point is detected, the system records the three-dimensional coordinates of the intersection point and the object identifier of the intersected stratigraphic interface object. When all line segments of a drill hole object have been processed, the system counts the number of intersection points between the drill hole and each stratigraphic interface object. If the number of intersection points between a drill hole and a stratigraphic interface is two or more, and the order of the intersection points along the drill hole path conforms to an "enter-pierce-out" pattern, it is determined that the piercing relationship is established. The system then generates a structured piercing relationship code, which includes the object identifier of the drill hole, the object identifier of the pierced stratigraphic interface, the relationship type (value "Pierce"), and the list of accurate three-dimensional coordinates of all intersection points, forming the piercing relationship code of the drill hole and the stratigraphic interface.

[0055] Based on the uniform geological object set with identifiers, the system adopts a method combining hierarchical bounding box and precise intersection test to determine the cutting relationship between faults and strata. Firstly, the system filters out all objects of type "fault" and "stratum", and constructs their respective three-dimensional bounding boxes using their B-Rep boundary representation. Then, through a one-time spatial division of all fault and stratum bounding boxes, such as using octree or k-d tree, the system quickly identifies all fault-stratum pairs with overlapping bounding boxes. For each object pair that may intersect, the system further performs a triangle face-triangle face intersection test, which traverses each triangle face in the fault B-Rep model and compares it with all spatially adjacent triangle faces in the candidate stratum B-Rep model. The screening of adjacent triangle faces is also based on a localized spatial index to reduce unnecessary calculations. The triangle face-triangle face intersection test uses an improved SAT algorithm, which determines whether two triangle faces intersect by detecting whether there is a separating axis that can separate the two triangle faces. If no separating axis is found, it is determined that the two triangle faces intersect, and the line segment formed by their intersection is calculated. The system collects all detected intersection line segments and connects the line segments that are collinear or have an endpoint distance less than a preset welding threshold through an endpoint connection-based algorithm. The welding threshold is set in reference to the minimum unit size of geological modeling, and is usually set to 1% of the average triangle edge length of the model, for example, if the average edge length is 5 meters, the threshold is 0.05 meters. The connected result forms one or more continuous intersection lines. If there is at least one intersection line between the fault and the stratum that has a length exceeding a preset minimum length threshold, which is set by a geological expert according to the significance standard of actual geological structure, for example, 10 meters, it is determined that the fault cuts the stratum. The system then generates a structured cutting relationship code, which records the object identifier of the fault, the object identifier of the cut stratum, the relationship type (value "Cut"), and the vertex coordinate sequence describing all intersection lines, forming the cutting relationship code of the fault and the stratum.

[0056] Based on the uniform geological object set with identifiers, the system determines the spatial topological relationship between the ore body and the wall rock. First, all ore body objects and wall rock objects are selected from the object set, and their object identifiers, voxel sets of ore body objects, and B-Rep boundary representations of wall rock objects are extracted. The determination process is divided into two serial steps: inclusion relationship test and adjacency relationship test. First, the inclusion relationship test is performed. The system randomly extracts a statistically representative sample subset from the voxel set of the ore body object. The sample size is determined according to the total number of ore body voxels, for example, 5% of the total number or at most 1000 center points, to balance the calculation efficiency and accuracy. For each sampled voxel center point, the system uses the ray casting algorithm to determine whether it is inside the B-Rep model of the wall rock object, that is, a virtual ray is emitted from the point in any fixed direction (such as the +Z axis direction), and the number of intersection points with all triangular facets of the wall rock B-Rep model is calculated. If the number of intersection points is odd, the point is inside the model. The system calculates the proportion of points inside the wall rock in all sample points. If the proportion exceeds a preset inclusion confidence threshold, for example, 98%, it is determined that the ore body is contained by the wall rock. The threshold is obtained by analyzing historical model data and reflects the allowable small error of the model boundary. Once the inclusion relationship is determined, the system generates an inclusion relationship code in the format (ore body object identifier, wall rock object identifier, "Contains") and terminates the subsequent determination of the object pair. If the inclusion relationship does not exist, the system performs the adjacency relationship test. First, all boundary voxels of the ore body voxel set are identified, that is, voxels with at least one face adjacent to non-ore body space. Then, for each boundary voxel, the nearest distance from its center point to the surface of the wall rock B-Rep is calculated. If the average distance of all boundary voxel center points to the wall rock surface is less than a preset adjacency distance threshold, for example, equal to 1.5 times the resolution of the ore body voxel (if the voxel edge length is 2 meters, the threshold is 3 meters), it is determined that the ore body and the wall rock have an adjacency relationship. The system then generates an adjacency relationship code in the format (ore body object identifier, wall rock object identifier, "Adjacent") to form the adjacency or inclusion relationship code of the ore body object and the wall rock object.

[0057] Based on the piercing relationship coding of the drill hole and the stratum interface, the cutting relationship coding of the fault and the rock stratum, and the adjacency or inclusion relationship coding of the ore body object and the surrounding rock object, the system initializes an empty list data structure for storing the final topological relationship, and then sequentially processes each type of relationship coding set generated in the previous step. First, the system traverses the set containing all piercing relationship codings, and for each coding record, the system parses it into a standardized topological relationship entry containing a newly generated unique relationship ID (generated using the UUIDv4 algorithm), the relationship type (“Pierce”), the source object identifier (the object identifier of the drill hole), the target object identifier (the object identifier of the stratum interface), and an optional geometric details field (storing the intersection coordinates), and appends this standardized entry to the final list. After processing all piercing relationship codings, the system continues to process the cutting relationship coding set of the fault and the rock stratum in exactly the same way, converting each cutting relationship coding into a standardized entry containing the relationship type (“Cut”) and intersection line geometric information, and appending it to the same list. Finally, the system processes the adjacency or inclusion relationship coding set of the ore body object and the surrounding rock object, converting each coding into the same standard format with a relationship type of “Adjacent” or “Contains”, and appending it to the list. After all codings have been converted and appended to the list, the system performs a final integrity check, traversing each topological relationship entry in the list to query whether the source object identifier and the target object identifier recorded in the entry exist in the initial set of unified geological objects with identifiers, ensuring that all topological relationships are associated with valid geological objects. Any invalidly associated entries will be marked or removed. After this summarization and verification, the final list obtained is the object topological relationship coding list containing all recognized and verified geometric position relationships.

[0058] The acquisition step of the geological object set containing the topological adjacency list is:

[0059] Based on the object topological relationship coding list, the object identifier of each geological object associated with the topological relationship coding in the object topological relationship coding list is parsed one by one to generate a correspondence table of topological relationship coding and object identifier of geological object;

[0060] Based on the correspondence table of topological relationship coding and object identifier of geological object, the geological object corresponding to the topological relationship coding in the set of unified geological objects with identifiers is called one by one, the preset topological adjacency list field in each geological object is extracted, and the topological relationship coding is appended one by one in the topological adjacency list field to generate a set of geological objects with updated topological adjacency list fields;

[0061] Based on the geological object set whose topology adjacency list field has been updated, the geological object whose topology adjacency list field has been updated is called one by one with the corresponding object identifier, the geological object is traversed and the matching integrity of the topology relationship code and the corresponding geological object is verified, and the geological object set containing the topology adjacency list is formed.

[0062] Specifically, based on the inter-object topology relationship code list, the system initializes a hash mapping data structure with the object identifier of the geological object as the key and the topology relationship code list as the value, as a correspondence table of the topology relationship code and the object identifier of the geological object, then the system processes each relationship code in the inter-object topology relationship code list in a single traversal manner, each relationship code itself is a structured data record containing the source object identifier, the target object identifier, the relationship type (such as “Pierce”, “Cut”, “Adjacent” or “Contains”) and the unique relationship ID, for the first relationship code in the list, the system extracts its source object identifier and target object identifier, first processes the source object identifier, the system queries whether there is an entry with this identifier as the key in the hash mapping, if not, creates a new entry, the key is the source object identifier, the value is an empty list, then adds the current complete relationship code record as an element to the list, then the system processes the target object identifier of the relationship code with the same logic, that is, queries, creates (if necessary) and adds the same relationship code record to its corresponding list, this process ensures that the relationship is indexed on both associated objects, the system continues this operation, sequentially processes all remaining items in the inter-object topology relationship code list, until the end of the list, after the traversal is completed, the hash mapping has constructed the complete correspondence, in which the object identifier of each geological object participating in the topology relationship is mapped to a list containing all its related topology relationship codes, generating the correspondence table of the topology relationship code and the object identifier of the geological object.

[0063] Based on the correspondence table of the object identifier of the geological object and the topological relationship code, the system first creates a complete deep copy of the uniform geological object set with identifier, to modify the copy, then the system traverses all key-value pairs in the correspondence table, where the key is the object identifier of the geological object, and the value is the list of topological relationship codes associated with the object. For each object identifier in the correspondence table, the system quickly locates the geological object with the same object identifier in the copy of the uniform geological object set with identifier. This positioning is achieved through a pre-constructed lookup table indexed by object identifier, achieving a constant-time lookup efficiency. After finding the corresponding geological object, the system accesses a preset field named "topological adjacency list" in the object data structure, which is set to an empty list during object initialization. The system then obtains the entire list of topological relationship codes associated with the object identifier in the current key-value pair, and appends all relationship code records in this list to the end of the "topological adjacency list" field inside the geological object without modification, one by one. For example, if a borehole object (object identifier UUID-ZK-001) penetrates two strata (object identifiers UUID-DC-A and UUID-DC-B), when processing UUID-ZK-001, the system will append two code records describing the penetration relationship with UUID-DC-A and UUID-DC-B to the topological adjacency list in the UUID-ZK-001 object. This process is repeated for all object identifiers appearing in the correspondence table until all entries in the correspondence table are processed. At this time, each related geological object in the copy has been filled with its complete topological adjacency information, generating a geological object set with updated topological adjacency list field.

[0064] Based on the geological object set whose topology adjacency list field has been updated, the system starts a multi-threaded integrity verification process, which evenly distributes the geological object set to multiple worker threads, and each thread independently performs verification on the subset of geological objects assigned to it. For each geological object in the subset, the worker thread first reads its object identifier and its internal topology adjacency list field. Then, the thread iterates through each topology relationship code in the adjacency list. For each code, it performs a bidirectional link verification, which includes two core check steps. The first step is self-identifier checking, in which the thread parses the current topology relationship code, extracts the source object identifier and target object identifier recorded in it, and checks whether one of the two identifiers exactly matches the identifier of the geological object being verified. If not, it records a "relationship ownership error" log entry containing the current geological object identifier and the erroneous topology relationship code. The second step is mutual link checking, in which the thread identifies the identifier of the "opposite" geological object pointed to by the relationship code, and then searches the entire topology adjacency list field updated geological object set for the opposite object. If the object cannot be found, a "dangling relationship error" is recorded. If the opposite object is found, the thread checks whether the topology adjacency list field of the opposite object also contains the same topology relationship code. If not, a "non-symmetric relationship error" is recorded. All worker threads aggregate the error logs found into a central error report. After all threads complete the verification, the system checks the central error report. If the report is empty, it means that all topology relationships match and the verification is successful. The topology adjacency list field updated geological object set is directly recognized as the final result, forming a geological object set with topology adjacency list.

[0065] The hierarchical geological object attribute set acquisition step is:

[0066] Based on the geological object set with topology adjacency list, the metadata information field in each geological object is called one by one to retrieve the attribute field name, attribute field data value, and security level identifier recorded by the attribute field. From the attribute field name, it is determined whether the attribute field is geological structure information or geophysical interpretation attribute information by matching keywords. If the attribute field name matches the geological structure information keyword, the attribute field is assigned a restricted layer identifier. If the attribute field name matches the geophysical interpretation attribute information keyword, the attribute field is assigned a confidential layer identifier. A hierarchical geological object attribute set is generated.

[0067] Specifically, based on a set of geological objects containing a topological adjacency list, the system first loads two keyword lists from a pre-configured rule base jointly maintained by geological experts and data security administrators. The first list is a keyword list for geological structural information, containing professional terms such as "fault attitude," "fold hub," "stratum dip," "stratum thickness," "interface depth," and "joint density." The second list is a keyword list for geophysical interpretation attributes, containing terms such as "apparent resistivity," "magnetic susceptibility," "gravity anomaly," "seismic wave velocity," "Poisson's ratio," and "gamma spectrum." The system then traverses the set of geological objects containing the topological adjacency list, processing the metadata information fields within each geological object one by one. This field is typically a set of key-value pairs containing multiple attributes. For each attribute, the system extracts its attribute field name and uses a case-insensitive full-word matching algorithm to match the name with the two keyword lists. If the attribute field name matches any keyword in the geological structure information keyword list exactly, the system adds a field named "Security Level Identifier" to the metadata structure of that attribute and assigns it a preset integer value of 50, representing "Restricted Layer". If the attribute field name matches a keyword in the geophysical interpretation attribute keyword list, the system assigns a higher integer value of 80, representing "Confidential Layer", to its "Security Level Identifier" field. For all attribute fields that do not match any keyword in either of these lists, such as general descriptive information like "Data Acquisition Date" or "Recorder Name", the system uniformly classifies them as "Public Layer" and assigns a baseline integer value of 20 to their "Security Level Identifier" field. After this process is completed for all attribute fields of all objects in the geological object set, each attribute in the original object set is given a clear digital security level, thus generating a layered geological object attribute set.

[0068] The steps for obtaining encrypted geological object data volumes are as follows:

[0069] Based on the hierarchical geological object attribute set, the access risk index of each attribute field is calculated using the following formula: ;

[0070] in, For the first The access risk index of each attribute field. For the first The security level identifier value of each attribute field For users to the first The permission level value of each attribute field. This is the system's baseline security level identifier value. A risk sensitivity coefficient is preset for the system to adjust the impact of differences between different security levels. The user context risk coefficient is generated from the user's current access environment information, including the user's role, access time, access source IP address, and the security status of the device used.

[0071] Based on the access risk index, the access risk index of each attribute field is compared to see if it is greater than zero. If the access risk index is greater than zero, the attribute field in the corresponding hierarchical geological object attribute set is called, the data value of the attribute field is encrypted, and the encrypted attribute fields are written back to the corresponding geological objects in turn. All the processed geological objects are combined to form an encrypted geological object data body.

[0072] Specifically, the formula: The advantage of the formula lies in the introduction of... This ensures that data is only considered sensitive if its sensitivity level is high. Exceeding the user's permission level ( Risk only arises when [the event occurs], while the exponential amplification factor [is involved]. It will eliminate the permission gap ( ) and real-time access context risks ( Multiplying these values ​​by an exponent and placing them in the exponent position causes the risk value to increase dramatically and non-linearly with the increase in the gap in privileges and the degree of danger in the context. For example, the risk posed by a high-privilege user accessing data slightly beyond their privileges in a secure environment will be far less than the risk posed by a low-privilege user accessing highly sensitive data in a dangerous environment (such as using an insecure public network). This exponential amplification effect can more accurately quantify and distinguish the severity of potential threats in different scenarios.

[0073] For the first The security level identifier value for each attribute field is a dimensionless integer, directly derived from the layered geological object attribute set generated in the previous step. In this step, the system assigns a specific numerical identifier to each attribute field based on the attribute field name and a preset keyword list. For example, for the attribute field "fault dip angle," because it belongs to geological structural information, its security level identifier is... The value is set to 50 for the attribute field "apparent resistivity," as it belongs to the geophysical interpretation attribute. The value is set to 80, while for general information such as "data collection date", its... The value is set to 20. During this step's calculation, the system directly reads the value from the layered geological object attribute set. The integer value of the "security level identifier" recorded in each attribute field is used as... For example, if the currently calculated attribute field is "apparent resistivity", then the security level identifier extracted from the metadata of that attribute is 80. .

[0074] For the user's permission level value for the first attribute field, which is a dimensionless integer, is dynamically determined by the system's user permission management center according to the current access user's identity role and the predefined permission policy. The system maintains a role-permission mapping table, which is set by the system administrator according to the organization's security policy and job responsibilities. The table defines in detail the access permissions of different roles (for example: visitor, junior geologist, senior project manager, system administrator) to different data categories (for example: public information, geological structure information, geophysical interpretation information). For example, the permission policy stipulates that the "junior geologist" has a permission level value of 60 for "geological structure information", but only 40 for "geophysical interpretation information". When a user with the role of "junior geologist" attempts to access, the system will query and return the corresponding permission level value from the mapping table according to the category of the attribute field (the first field) that the user requests to access. For example, the user's role is "junior geologist", and the attribute field requested to access is "apparent resistivity", which belongs to the "geophysical interpretation information" category. The system queries the mapping table and gets the permission level value of 40, so .

[0075] The system reference security level identifier value is a system-level global constant, representing the lowest level of data sensitivity in the system. It usually corresponds to completely public data. The value is determined by the system security architect during system initialization according to the overall data security classification strategy. Its main role is as an anchor or starting point for risk calculation. In the formula, This calculates the sensitivity gap of specific data relative to the system's lowest security reference, rather than an absolute value, making the risk increase more relative. The value needs to be set in reference to the lowest security level defined when generating the hierarchical geological object attribute set. For example, in the previous step, the attribute field that does not match any sensitive keywords is assigned to the "public layer", with a corresponding security level identifier value of 20. To maintain consistency, the system reference security level identifier value should also be set to the same value to ensure that the access risk of public layer data starts from a reasonable base point in any case. Therefore, in this example, .

[0076] A risk sensitivity coefficient preset for the system, which is a dimensionless floating-point constant, is used to regulate the rate at which the risk index grows with the authority gap and the contextual risk, that is, the steepness of the exponential curve. The coefficient is not arbitrarily set, but is determined through data mining and risk modeling analysis of historical access logs. Specifically, the security team collects all access records, including successful and rejected accesses, over a period of time (e.g., 6 months), and marks some of them as high-risk events (such as data leakage attempts). Then, by simulating different values, the risk indices of these historical events are calculated, and the distribution of the risk indices is evaluated. The goal is to find a value that makes the risk indices of normal access behaviors concentrate in a lower interval, while the risk indices of marked high-risk events are significantly distinguished and fall into a higher interval, forming a clear separation. For example, it is found through testing that when is set to 0.05, more than 99% of the risk indices of normal access behaviors are below 50, while the risk indices of all known high-risk events are higher than 200, achieving good discrimination. Therefore, the system finally selects 0.05 as the risk sensitivity coefficient, that is, .

[0077] A user contextual risk coefficient, which is a comprehensive floating-point number ranging from 0 to 1, quantifies the environmental risk of a single access behavior. Its value is dynamically generated by the user's current access environment information, and the calculation formula is: where each sub-risk score is mapped to the 0-1 interval by the max-min normalization method, and each weight is determined by the security policy and the sum is 1. For example, the weights are set to , , , In a specific scenario: the user's role is "external consultant" (scored 8 in the role risk table, score range 0-10, normalized to ), the access time is 3 a.m. (scored 9 in the working hours risk table, score range 0-10, normalized to ), the access source IP address belongs to a known proxy server address pool (scored 95 in the IP reputation library, score range 0-100, normalized to ), and the device used is not installed with enterprise device management software (scored 7 in the device compliance check, score range 0-10, normalized to ), then the user's contextual risk coefficient is calculated as: .

[0078] The calculation process is as follows:

[0079] For a user with a role of "junior geologist", the risk index of the access attribute field "apparent resistivity" is calculated in an access session, according to the foregoing parameter acquisition steps:

[0080] The security level identification value of the first attribute field (apparent resistivity) . .

[0081] The permission level value of the user (junior geologist) for the attribute .

[0082] The system benchmark security level identification value .

[0083] The system preset risk sensitivity coefficient .

[0084] The context risk coefficient calculated according to the real-time access environment of the user .

[0085] Substitute the above parameter values into the access risk index calculation formula: ; ; ; ; ;

[0086] ;

[0087] The result shows that the risk index of this access operation is 543.948, which is a very high risk value, much greater than zero. This value itself quantifies the danger of this access. The value greater than zero indicates that the user's permission is insufficient to directly access the data, and security processing is required. The size of the value (543.948) reflects the severity of the risk. This high score is the result of the high sensitivity of the data (80), the insufficient user permission (40), and the access context (0.87) acting together and being amplified by the index.

[0088] Based on the access risk index, the system processes each geological object in the hierarchical geological object attribute set, specifically, the system traverses all attribute fields within the object and obtains the access risk index calculated in the previous step for each attribute field, and then compares the index with a fixed zero value. If the access risk index calculation result of a certain attribute field is strictly greater than zero, the system determines that the data value of the attribute needs to be encrypted. Then, the system calls a built-in encryption service to perform encryption operation on the data value of the attribute field using the CBC mode of the Advanced Encryption Standard AES-256 algorithm. Before encryption, the system generates a unique 128-bit initialization vector (IV) for this encryption operation, and inputs the original data value of the attribute (whether it is a numerical value, a string, or a more complex data structure, it is first serialized into a byte stream) and the initialization vector into the AES-256 encryption function as inputs. The key used for encryption is a 256-bit session key generated for the entire encrypted geological object data body at a time. The session key is generated by the system's password service module by calling the operating system's secure random number generator. After encryption, the system replaces the original plaintext data value with the generated ciphertext (usually stored in Base64 string format), and stores the used initialization vector in a new field of the attribute metadata, for example, the field name is "EncryptionIV". For attribute fields with access risk index equal to or less than zero, the system skips the encryption step and keeps the data value unchanged. After traversing and processing all attribute fields of a geological object, the object becomes a processed object that may contain partially encrypted data. The system recombines all such processed geological objects to form an encrypted geological object data body.

[0089] The acquisition step of the data structure body to be encapsulated is:

[0090] Based on the encrypted geological object data body, the binary data content of the encrypted geological object data body is parsed block by block, the policy identifier, policy expression and permission level value recorded in the access policy metadata are called, and the field identifier, field length and field data type of each binary block in the encrypted geological object data body are compared with the preset information in the access policy metadata in turn. If they all match, the access policy metadata is spliced to the encrypted geological object data body, and the file header information is inserted at the front end of the spliced data stream to generate the data structure body to be encapsulated.

[0091] Specifically, based on the encrypted geological object data body, the system starts a data structure encapsulation process. First, the encrypted geological object data body is parsed in a streaming manner according to an internally predefined binary data layout schema. The schema specifies that the data body is composed of a sequence of continuous data blocks, and each data block has a fixed-length block header containing a 16-byte field identifier, a 4-byte field data length, and a 2-byte field data type code. The system reads these block header information block by block. At the same time, the system loads the access policy metadata associated with the current data encapsulation task. The metadata is an XML or JSON format document containing policy identifier, policy expression for decryption and access control, and corresponding permission level values. The system traverses each parsed binary data block and uses its block header field identifier as a query key to find a matching policy entry in the access policy metadata. After finding the matching entry, it compares the field length and field data type code recorded in the binary block header with the expected length and type defined in the access policy metadata for the policy identifier. For example, a binary block with a field identifier of "Resistivity_Data" should have a type of "float_array" and a length that matches the number of array elements multiplied by 4 bytes. If any comparison does not match, the system will interrupt the encapsulation process and record a structure mismatch error. When all binary blocks pass the verification, the system serializes the complete access policy metadata and concatenates it as an independent data block to the tail of the encrypted geological object data body binary stream. Finally, the system constructs a file header information block containing an 8-byte magic number (e.g., 0x47454F5345433031) to identify the file type, file version number, total byte length of the entire file (including the file header itself), starting offset of the encrypted geological object data body in the file, and starting offset of the access policy metadata block. This file header information block is inserted at the front of the concatenated data stream to generate the data structure body to be encapsulated.

[0092] The acquisition step of the map data file with the fusion security mechanism is:

[0093] Based on the data structure body to be encapsulated, the security integrity score is calculated, and the calculation formula is: ;

[0094] wherein, is the security integrity score, is the security strength level of the encryption algorithm used by the encrypted geological object data body, and the value is the key bit number of the encryption algorithm, for example, AES-256 corresponds to , is used to smooth the difference between different encryption strengths, a complexity score of the access policy metadata, representing a total number of access rules contained in the access policy metadata, an average value of the access risk indexes of all the geological object attribute fields, the access risk index of the i-th attribute field, the access risk index of the i-th attribute field, a total number of attribute fields participating in the calculation, respectively, preset weight coefficients of the encryption strength, the policy complexity and the average risk value;

[0095] Based on the security integrity score, it is determined whether the security integrity score is lower than a system preset security threshold value. If the security integrity score is lower than the security threshold value, encryption is performed on the data structure body to be encapsulated, and after the encryption is completed, watermark information generated based on user identity information is written in a metadata area at the end of the data structure body or file header information. If the security integrity score is not lower than the security threshold value, regular watermark information is written in the metadata area at the end of the data structure body to be encapsulated, forming a map data file integrating a security mechanism.

[0096] Specifically, the formula is: The formula has the beneficial effect of integrating static security configuration (encryption strength, policy complexity) and dynamic access risk (actual risk index of data access) into one, providing a comprehensive and quantitative data packet security situation assessment. The logarithmic function ln is used to process the encryption strength, which can effectively smooth the huge numerical difference between different key lengths, so that the score will not fluctuate dramatically due to changes in the encryption algorithm, and is more comparable. At the same time, the hyperbolic tangent function tanh is used to process the average risk index, which maps the possibly infinite risk value to a limited interval of -1 to 1, which not only retains the trend of high and low risk, but also prevents a few extremely high-risk data items from dominating the overall score, ensuring the stability and robustness of the score.

[0097] ​​​​The preset weight coefficients of encryption strength, policy complexity and average risk value, which are not directly set, are determined by analytic hierarchy process (AHP) combined with expert experience to reflect the relative importance of different security dimensions in the overall evaluation. First, an evaluation group composed of at least 5 experts in the fields of information security and geological data compares the encryption strength (e), the policy complexity (p) and the average risk value (r) two by two, constructs a judgment matrix, for example, experts generally consider that the encryption strength is "slightly stronger important" (assigned a value of 3) than the policy complexity, "extremely important" (assigned a value of 9) than the average risk value, and the policy complexity is "obviously important" (assigned a value of 5) than the average risk value, thereby constructing a judgment matrix . Then the maximum eigenvalue of the matrix and the corresponding eigenvector are calculated, and the eigenvector is normalized to obtain the weight coefficients of each dimension. After calculation, the normalized weight vector is about (0.65, 0.28, 0.07), so the final weight coefficients are determined as follows: , , .

[0098] The security strength level of the encryption algorithm used for the encrypted geological object data volume, which is directly read from the configuration of the system encryption module, specifies the algorithm and key length used when encrypting the attribute field data. According to the foregoing steps, the system uses the AES-256 algorithm, and the industry standard security strength of the algorithm is defined by the key length, which is 256 bits. Therefore, the value of the security strength level is the key length, which reflects the computational complexity required to crack the encryption and is the core indicator for measuring the strength of the password system. In this example, the system queries the encryption algorithm currently used from the encryption configuration and extracts the key length parameter to obtain .

[0099] The complexity score of the access policy metadata, which quantifies the fineness and strength of the access control rules attached to the data, is calculated by weighted sum of all independent access rules contained in the metadata, and the calculation formula is: where m is the total number of rules, ci is the individual complexity score of the ith rule, which is obtained by looking up the rule type and the number of conditions in a pre-defined scoring table, for example, a single role rule ("allow 'geologist' to access") has a complexity score ci of 2, while a composite, attribute-based access control (ABAC) rule ("allow when user role is 'project manager' and project number matches and access time is between 9am and 5pm") has a complexity score ci of 8 due to the multiple logical conditions it contains, for example, an access policy metadata contains 10 single role rules and 4 composite ABAC rules, then its complexity score is: .

[0100] is the average value of the access risk indices of all the geological object attribute fields, which reflects the average risk level of the data that is not fully covered by the user's permissions when the user accesses the data body, which is calculated based on the access risk indices of the attribute fields generated in the previous step , the system traverses all n attribute fields in the encrypted geological object data body, accumulates the value of each field, and then divides by the total number of fields n, according to the example of the previous step, the access risk index of a "resistivity" field is calculated as 543.948, in this encapsulation task, for example, the entire encrypted geological object data body contains n = 200 attribute fields, of which 15 fields (all geophysical interpretation attributes) have a calculated access risk index of 543.948 due to insufficient user permissions and high-risk access context, the remaining 185 fields have sufficient user permissions, and their access risk indices are all 0, therefore, the average risk index is calculated as: .

[0101] Calculation process:

[0102] According to the aforementioned parameter acquisition steps, the following parameter values are obtained:

[0103] Weight coefficient: , , .

[0104] Security strength level of encryption algorithm: .

[0105] Complexity score of access policy metadata: .

[0106] Average access risk index: .

[0107] Substitute these values into the security integrity score formula: ; ;

[0108] Since the tanh(x) function is very close to 1 when x is large (e.g., greater than 5), the result of tanh(40.7961) can be approximated as 1.

[0109] ; ; ;

[0110] This result shows that the security integrity score of the current data structure to be encapsulated is 18.2344, which is a comprehensive security measurement value. A lower score (such as 18.2344 in this example) usually means that although strong encryption and complex strategies are used, the overall security situation is pulled down due to the high average access risk, indicating that the data package poses a significant security risk to the current user and additional security reinforcement measures need to be taken during the encapsulation phase.

[0111] Based on the security integrity score, the system compares it with a preset security threshold, which is not fixed but dynamically generated by the system security policy. The generation is based on scoring a series of benchmark security template files and taking 80% of their average score as the threshold. For example, the system administrator predefines three security level templates: "standard", "enhanced" and "highest", and configures the corresponding encryption algorithm, policy complexity and preset average risk value for each template. The system calculates the security integrity scores of the three templates as 60, 75 and 90 respectively. The security threshold under the current policy is set to (60+75+90) / 3 * 80% = 75 * 0.8 = 60. The system compares the security integrity score 18.2344 calculated in the previous step with the threshold 60. Since 18.2344 is lower than 60, the system determines that the security level of the data structure body to be encapsulated is insufficient and needs to be enhanced. Therefore, the system performs an additional container-level encryption on the entire data structure body (which now contains the file header, encrypted data body and access policy) using the asymmetric encryption algorithm RSA-4096 and the user's public key. After encryption, the system generates a verifiable watermark information based on the user's identity information. This information is a JSON string containing the user's unique identifier, current timestamp and SHA-256 hash value of the encrypted file content. The system signs this JSON string using the server's private key to generate a digital signature. Finally, the JSON string and digital signature are used as watermark information and attached to the metadata area of the encrypted data structure body. If the security integrity score is not less than 60, the system skips the container-level encryption step and only writes a regular watermark information containing the user ID and timestamp at the end of the data structure body, finally forming a map data file with integrated security mechanisms.

Claims

1. A multi-source data fusion-based intelligent geological information mapping system, characterized in that, The system includes: The geological element objectification encapsulation module extracts the borehole coordinates, exploration line direction, B-Rep boundary representation of stratigraphic interfaces, and voxel set of ore bodies based on the input multi-source geological information. It simultaneously obtains the ID, timestamp, and data source metadata of each element and generates a unified geological object set with identifiers. The three-dimensional topology map construction module, based on the unified geological object set with identifiers, traverses the objects and determines their geometric positional relationships, establishes a topological relationship coding list between objects, and appends the relationship codes in the topological relationship coding list between objects one by one to the topological adjacency list field of the corresponding object in the unified geological object set with identifiers, thereby obtaining a geological object set containing the topological adjacency list. The data hierarchical encryption module reads the metadata information of each object in the geological object set containing the topological adjacency list, classifies the geological structure information into the restricted layer, classifies the geophysical interpretation attributes into the confidential layer, obtains the hierarchical geological object attribute set, and performs calculations on the user attribute set and the security level identifier of each object in the hierarchical geological object attribute set to generate an encrypted geological object data body. The secure data format generation module integrates the encrypted geological object data body, access policy metadata, and file header information to construct a data block sequence, generate a data structure to be encapsulated, serialize the data structure to be encapsulated, and embed verifiable watermark information generated based on user identity information into the end of the file or metadata area to form a map data file with integrated security mechanisms.

2. The intelligent geological information mapping system based on multi-source data fusion according to claim 1, characterized in that, The steps for obtaining the unified geological object set with identifiers are as follows: Based on the input multi-source geological information, borehole information, exploration line information, stratigraphic interface information and ore body information are analyzed item by item. The borehole coordinates are extracted from the borehole information, the exploration line direction path is extracted from the exploration line information, the B-Rep boundary representation of the stratigraphic interface is extracted from the stratigraphic interface information, and the voxel set of the ore body is extracted from the ore body information to generate a set of geometric information of geological elements. Based on the set of geometric information of geological elements, the unique ID, the timestamp of the generated data and the metadata of the data source of each geological element are extracted simultaneously. The corresponding geometric information in the set of geometric information of geological elements is called, and the geometric information and metadata are combined in a structured manner to form a set of structured geological element information. Based on the structured geological element information set, the unique ID of each geological element is called, and a unique and unchanging object identifier is configured for each structured geological element. The object identifier is then attached to the corresponding structured geological element to form a unified geological object set with identifiers.

3. The intelligent geological information mapping system based on multi-source data fusion according to claim 1, characterized in that, The steps for obtaining the topological relationship encoding list between objects are as follows: Based on the unified geological object set with identifiers, the object identifiers and geometric information of the geological objects in the unified geological object set are called one by one. Each geological object is traversed and the geometric positional relationship between the objects is determined. The point coordinates of the borehole objects are compared with the B-Rep boundary representation of the formation interface objects to determine the puncture relationship and generate the puncture relationship code between the borehole and the formation interface. Based on the unified geological object set with identifiers, the object identifiers and geometric information of the fault objects in the unified geological object set are called one by one, and the geometric contours of the fault objects are compared with the B-Rep boundary representations of the rock strata objects one by one to determine the cutting relationship between the fault objects and the rock strata objects and generate the cutting relationship code between the faults and the rock strata. Based on the unified geological object set with identifiers, the object identifiers of ore bodies and surrounding rock objects in the unified geological object set, as well as the voxel set of the ore body object, are called one by one. The spatial topological relationship between the ore body object and the surrounding rock object is determined one by one. If the voxel set of the ore body object is adjacent to the boundary of the surrounding rock object, it is determined to be an adjacency relationship. If the voxel set of the ore body object is located inside the surrounding rock object, it is determined to be an inclusion relationship. The adjacency or inclusion relationship code between the ore body object and the surrounding rock object is generated. Based on the puncture relationship coding of the borehole and stratum interface, the cutting relationship coding of the fault and rock stratum, and the adjacency or inclusion relationship coding of the ore body object and the surrounding rock object, the topological relationship coding list between objects is formed by summarizing them in sequence.

4. The intelligent geological information mapping system based on multi-source data fusion according to claim 1, characterized in that, The steps for obtaining the set of geological objects containing the topological adjacency list are as follows: Based on the list of topological relationships between objects, the object identifier of the geological object associated with each relationship code in the list of topological relationships between objects is parsed one by one, and a correspondence table between the topological relationship code and the object identifier of the geological object is generated. Based on the correspondence table between the topological relationship code and the object identifier of the geological object, the geological objects corresponding to the topological relationship code in the unified geological object set with identifiers are called one by one. The preset topological adjacency list field in each geological object is extracted, and the topological relationship code is added to the topological adjacency list field one by one to generate a set of geological objects with the updated topological adjacency list field. Based on the set of geological objects whose topological adjacency list field has been updated, the geological objects whose topological adjacency list field has been updated and their corresponding object identifiers are called one by one. The geological objects are traversed and the completeness of the matching between the topological relationship code and the corresponding geological object is verified, thus forming a set of geological objects containing the topological adjacency list.

5. The intelligent geological information mapping system based on multi-source data fusion according to claim 1, characterized in that, The steps for obtaining the attribute set of the layered geological object are as follows: Based on the geological object set containing the topological adjacency list, the metadata information fields within each geological object are called one by one. The attribute field name, attribute field data value, and security level identifier recorded in the attribute field are retrieved sequentially. Keywords are matched from the attribute field name to determine whether the attribute field is geological structural information or geophysical interpretation attribute information. If the attribute field name matches the keywords of geological structural information, the attribute field is assigned a restricted layer identifier. If the attribute field name matches the keywords of geophysical interpretation attribute information, the attribute field is assigned a confidential layer identifier, thus generating a layered geological object attribute set.

6. The intelligent geological information mapping system based on multi-source data fusion according to claim 1, characterized in that, The steps for obtaining the encrypted geological object data volume are as follows: Based on the hierarchical geological object attribute set, the access risk index of each attribute field is calculated; Based on the access risk index, the access risk index of each attribute field is compared to see if it is greater than zero. If the access risk index is greater than zero, the attribute field in the corresponding hierarchical geological object attribute set is called, the data value of the attribute field is encrypted, and the attribute field that has completed the encryption operation is written back to the corresponding geological object in sequence. All the processed geological objects are combined to form an encrypted geological object data body.

7. The intelligent geological information mapping system based on multi-source data fusion according to claim 1, characterized in that, The steps for obtaining the data structure to be encapsulated are as follows: Based on the encrypted geological object data body, the binary data content of the encrypted geological object data body is parsed block by block. The policy identifier, policy expression and permission level value recorded in the access policy metadata are called. The field identifier, field length and field data type of each binary block in the encrypted geological object data body are compared with the preset information in the access policy metadata. If they all match, the access policy metadata is concatenated to the encrypted geological object data body, and file header information is inserted at the beginning of the concatenated data stream to generate a data structure to be encapsulated.

8. The intelligent geological information mapping system based on multi-source data fusion according to claim 1, characterized in that, The steps for obtaining the map data file for the fusion security mechanism are as follows: Based on the data structure to be encapsulated, calculate the security integrity score; Based on the security integrity score, it is determined whether the security integrity score is lower than the system's preset security threshold. If the security integrity score is lower than the security threshold, encryption is performed on the data structure to be encapsulated, and after encryption, watermark information generated based on user identity information is written to the end of the data structure or the metadata area attached to the file header. If the security integrity score is not lower than the security threshold, regular watermark information is written to the end of the data structure to be encapsulated or the metadata area, forming a map data file with integrated security mechanisms.

Citation Information

Patent Citations

  • Geological data interaction method and system based on Ovi interaction map

    CN120216609A

  • Intelligent surveying and mapping data analysis and management method and system based on Internet of Things

    CN120541786A