CN118312688A - WebGL-based seismic wave CT result data visualization method - Google Patents

WebGL-based seismic wave CT result data visualization method Download PDF

Info

Publication number
CN118312688A
CN118312688A CN202410492812.6A CN202410492812A CN118312688A CN 118312688 A CN118312688 A CN 118312688A CN 202410492812 A CN202410492812 A CN 202410492812A CN 118312688 A CN118312688 A CN 118312688A
Authority
CN
China
Prior art keywords
model
world
reference point
reference points
points
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202410492812.6A
Other languages
Chinese (zh)
Inventor
刘源
栗煜
邢洁鋆
庞琦
赵天赋
骆晗
韩娅娜
李海兵
党天宇
刘阳
张佟瑀
徐宇涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PowerChina Northwest Engineering Corp Ltd
Original Assignee
PowerChina Northwest Engineering Corp Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by PowerChina Northwest Engineering Corp Ltd filed Critical PowerChina Northwest Engineering Corp Ltd
Priority to CN202410492812.6A priority Critical patent/CN118312688A/en
Publication of CN118312688A publication Critical patent/CN118312688A/en
Pending legal-status Critical Current

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

The invention discloses a WebGL-based seismic wave CT result data visualization method, which comprises the steps of generating a space reference point set in the range of an integer bounding box of a three-dimensional model; calculating wave velocity values of all reference points in the space reference point set by using a DSI interpolation calculation method; judging whether the spatial reference point set is subjected to fine degeneracy or not, and transmitting the spatial reference point set into a shader; and calculating the wave velocity value of the point to be rendered according to the space reference point set and the wave velocity value of the reference point, determining the color value of the point to be rendered and performing color rendering. The method solves the problems of inconvenient demonstration and poor real-time performance when software such as ItasCAD is used for demonstrating and reporting the result of the three-dimensional model of the seismic wave CT, and the like, and can realize real-time loading and rendering of large-scale data by generating the reference point set for three-dimensional visualization according to the result data of the seismic wave CT at the Web end, and can intuitively and efficiently understand and analyze the result data of the seismic wave CT, thereby improving the communication and decision-making efficiency of engineering projects.

Description

WebGL-based seismic wave CT result data visualization method
Technical Field
The invention belongs to the technical field of building information models and computer graphics, and particularly relates to a seismic wave CT result data visualization method based on WebGL.
Background
In geological exploration, the seismic wave CT detection technology is a common geophysical prospecting method, and can relatively accurately find out distribution conditions of karst, faults and broken rock mass detected among boreholes. The propagation velocity of a seismic wave in the formation rock depends on the physical properties of the material constituting the rock and is related to the structural characteristics of the rock mass. Rock masses of different lithologies, the propagation speeds of seismic waves are different; when the structural characteristics of the same rock mass are changed, the propagation speed of the seismic wave is also changed. Seismic wave CT is to utilize the close relation between the seismic wave velocity and the mechanical property of the medium to obtain the spatial distribution of the seismic wave velocity in the underground medium. However, the result of the seismic wave CT measurement is scattered and independent two-dimensional section data, the relevance and communication condition of the data on each section are not easy to analyze, the distribution, trend, spatial position and form information of the underground abnormal body cannot be intuitively given, the intuitiveness is poor, the three-dimensional spatial spread condition is difficult to understand and difficult to establish by non-geological staff, and the visual display of the detection result is influenced. Although the traditional three-dimensional visualization tool, such as ItasCAD software, can realize the three-dimensional visualization of the seismic wave CT result data, the method has obvious limitations in terms of real-time performance, operation convenience and interactivity, is easy to delay when processing a large amount of data, and has high requirements on computer hardware, so that the method has limited practicability in display and reporting.
With the development of computer graphics and the continuous progress of Web technology, webGL has been widely used as a technology for implementing 3D graphics rendering in a browser. Through WebGL, developers can directly expose complex 3D scenes and models on Web pages without relying on any plug-ins. By combining the seismic wave CT result data with the lightweight model, three-dimensional visualization is realized at the Web end, and a more flexible, lightweight and easily-shared solution can be provided for the seismic wave CT result data three-dimensional visualization by means of the cross-platform property, easy access and real-time updating capability of the Web.
Disclosure of Invention
The invention aims to provide a WebGL-based seismic wave CT result data visualization method, which solves the problem of low efficiency of the existing software in displaying and reporting the result of a seismic wave CT three-dimensional model.
The technical scheme adopted by the invention is as follows: a WebGL-based seismic wave CT result data visualization method comprises the following steps:
step 1, generating a space reference point set in a three-dimensional model integer bounding box range;
Step 2, calculating wave velocity values of all reference points in the space reference point set by using a DSI interpolation calculation method according to the CT result data of the seismic waves;
step 3, judging whether to simplify the space reference point set according to the span size of the model coordinate data input by the user, and transmitting the obtained space reference point set into a shader;
and 4, calculating the wave velocity value of the point to be rendered according to the space reference point set and the wave velocity value of the reference point, determining the color value of the point to be rendered and performing color rendering.
The present invention is also characterized in that,
The step 1 specifically comprises the following steps:
Step 1.1, importing related three-dimensional model data, determining a minimum integer hexahedral bounding box B with axes aligned according to the used three-dimensional model, setting X min、Ymin、Zmin as a minimum value of three-dimensional model coordinate points in the X, Y, Z axis direction respectively, setting X max、Ymax、Zmax as a maximum value of three-dimensional model coordinate points in the X, Y, Z axis direction respectively, setting [ ] as a downward rounding symbol, and setting [ X ] as a maximum integer not exceeding X, wherein the coordinates X, y and z of all points at the boundary and the inside of the bounding box B are as follows:
Step 1.2, if the side lengths of the bounding box B in the X, Y, Z axis direction are L x、Ly、Lz, there are:
Generating reference points at positions where coordinates in the bounding box B and at the boundary are integer points, and finally forming a space reference point set in the whole bounding box range;
Step 1.3, storing each reference point in the reference point set in a three-dimensional array P, enabling the three-dimensional point coordinates of the reference points and the array subscripts to form a corresponding relation, initializing a floating point shape three-dimensional array float P [ L x][Ly][Lz ], and setting:
wherein B xmin、Bymin、Bzmin represents the offset value of the minimum x, y and z coordinate values relative to 0 in the integer bounding box B, if the coordinate of a certain reference point is (x, y, z), P [ x-B xmin][y-Bymin][z-Bzmin ] in the array represents a certain reference point, the value stored in the array element represents the wave velocity value of a certain reference point, and any element in the array P represents one point in the reference point set, thus the generation and storage of the reference point set can be completed.
The simplifying method in the step 3 specifically comprises the following steps:
Step 3.1, for reference points on the surface of the model, if the shape of the model is regular, only the integer reference points around the vertex of the model are reserved, and the coordinates of the reference points and the array subscripts form a new mapping relation; if the model is irregular, sparse reference points or reference points of the largest hexahedral space in the model are eliminated, the rest reference points are continuously stored in the array after the elimination, and the offset of each dimension is set according to the elimination mode, so that a new mapping relation between the array subscript and the reference points is formed;
For the reference points of the model profile, reserving integer reference points with the two sides of the profile nearest to each other for simplifying;
and 3.2, creating a texture buffer and storing the reduced reference point set data into the texture buffer.
Step 4 specifically includes the following steps when performing color rendering on the model surface:
step 4.1, dividing the wave speed value and the color band according to the set parameters of the user;
Step 4.2, the model vertexes, the projection matrix, the observation matrix, the model matrix M model and the texture buffer with the reference point set data are transmitted into a shader;
step 4.3, transmitting the vertex coordinates of the model to a fragment shader in the vertex shader;
Step 4.4, calculating world coordinates V world of a current point to be rendered in the fragment shader, setting local coordinates of the current point to be rendered as V local, and setting a model matrix as M model, wherein the steps are as follows: v world=Mmodel·Vlocal;
Step 4.5, obtaining coordinates of 8 reference points in a cube space where the world coordinates V world are located according to the world coordinates V world, and obtaining wave velocity values of the 8 reference points in texture buffering;
Step 4.6, calculating the wave velocity value of V world according to the wave velocity values of 8 reference points and the distance from the 8 reference points to V world in an interpolation mode;
and 4.7, obtaining the color value of the current point V to be rendered according to the wave speed value range and the color band dividing result, and forming a three-dimensional model representing wave speed information through the surface color after rendering of all the points to be rendered.
The step 4.5 is specifically as follows:
If the spatial reference point set is not simplified, and the world coordinate V world coordinate of the point to be rendered V is (x v,yv,zv), determining 8 reference points in the cube space where the point to be rendered V is located according to the coordinate value of the point to be rendered V, wherein the 8 reference point coordinates are respectively:
P1([xv][yv][zv])
P2([xv][yv][zv+1])
P3([xv][yv+1][zv])
P4([xv][yv+1][zv+1])
P5([xv+1][yv][zv])
P6([xv+1][yv][zv+1])
P7([xv+1][yv+1][zv])
P8([xv+1][yv+1][zv+1])
Acquiring corresponding wave velocity values in the array P according to the coordinate values of 8 reference points P 1~P8
If the space reference point set is simplified, 8 reference points P 1~P8 are found according to the mapping relation between the array subscript and the reference points formed in the simplifying mode in the step 3, and the wave speed values corresponding to the 8 reference points are obtained in the texture buffer.
Step 4 specifically includes the following steps when the model profile is color rendered:
step 4.1, dividing the wave speed value and the color band according to the set parameters of the user;
step 4.2, generating 4 vertexes of the profile according to the profile position information to be checked by the user;
Step 4.3, texture buffering of the profile vertexes, the projection matrix, the observation matrix, the model matrix M model and the data with the reference point set is transmitted into a shader;
Step 4.4, transmitting the vertex coordinates of the section to a fragment shader in the vertex shader;
Step 4.5, calculating the world coordinate V world of the current point to be rendered in the fragment shader, setting the local coordinate of the current point to be rendered as V local and the model matrix as M model, and then: v world=Mmodel·Vlocal;
step 4.6, if the world coordinate V world is not in the range of the space reference point set, directly setting the color of the current point V to be rendered as white semitransparent; if the world coordinate V world is in the range of the space reference point set, obtaining the coordinates of 8 reference points in the cube space where the world coordinate V world is located according to V world, and obtaining the wave velocity values of 8 reference points in texture buffering;
Step 4.7, calculating the wave velocity value of V world according to the wave velocity values of 8 reference points and the distance from the 8 reference points to V world in an interpolation mode;
And 4.8, obtaining the color value of the current point V to be rendered according to the wave speed value and the color band dividing result, and forming a section representing wave speed information through the surface color after rendering of all the points to be rendered.
The beneficial effects of the invention are as follows: the WebGL-based seismic wave CT result data visualization method solves the problems of inconvenient demonstration and poor real-time performance when using ItasCAD and other software to demonstrate and report the result of a seismic wave CT three-dimensional model, and the Web end generates a reference point set according to the seismic wave CT result data for three-dimensional visualization, so that the real-time loading and rendering of large-scale data can be realized, and the seismic wave CT result data can be intuitively and efficiently understood and analyzed, thereby improving the communication and decision-making efficiency of engineering projects.
Drawings
FIG. 1 is a flow chart of a WebGL-based seismic wave CT outcome data visualization method of the invention;
FIG. 2 is a schematic view of a cube space formed by each 8 reference points in the WebGL-based seismic CT outcome data visualization method of the present invention;
FIG. 3 is a schematic diagram of the positional relationship of 8 reference points in a cube space where a point to be rendered is located in the WebGL-based seismic wave CT outcome data visualization method of the present invention;
FIG. 4 is a schematic view of the effect of the WebGL-based seismic wave CT outcome data visualization method of the invention on rendering the surface of the obtained three-dimensional model;
FIG. 5 is an effect schematic diagram of a three-dimensional model section rendered by the WebGL-based seismic wave CT outcome data visualization method.
Detailed Description
The invention will be described in detail with reference to the accompanying drawings and detailed description.
Example 1
The invention provides a WebGL-based seismic wave CT result data visualization method, which is shown in figure 1:
First, data preparation work before visual rendering is performed. And importing the three-dimensional model and the seismic wave CT result data into a system platform, wherein the seismic wave CT result data are in the form of the measured x, y and z three-dimensional coordinate values of each point and the wave velocity value of the point. After the introduction is finished, generating reference points at positions where the coordinate values in the minimum integer bounding box area of the model are integers, and enabling a set formed by the reference points to be called a space reference point set. Each 8 reference points in the reference point set will form a cube space, as shown in the gray part of fig. 2. And storing the space reference point set by using a three-dimensional integer array, and associating the three-dimensional coordinates of the points with the array subscript during storage so as to realize quick search and access of the reference points according to the coordinate values. And then, carrying out interpolation calculation on points in the space reference point set by using a DSI interpolation algorithm according to the wave velocity values of the measured points of the seismic wave CT result data to obtain the wave velocity values of all the points in the space reference point set. Thereafter, the number of reference points within the spatial reference point set is examined, which can be reduced when the number of reference points is very large to meet the limitations of hardware and drivers later in the rendering process.
Then, a model visual rendering work is performed. And determining each wave speed range and the corresponding color according to the maximum value and the minimum value of the wave speed values in the seismic wave CT result data and the color division number set by the user so as to determine the mapping relation between the wave speed values and the color values. When the surface of the model is rendered, world coordinate points (v) of all points to be rendered are calculated in parallel in a fragment shader, 8 reference points of a cube space where the world coordinate points are located are found according to the coordinates, then the wave velocity values of the 8 points and the distances from the wave velocity values to the v points are used for interpolation, the wave velocity values of the v points can be calculated, then the color values of the points to be rendered are obtained according to the mapping relation between the wave velocity values and the color values, and the three-dimensional model with the wave velocity contour cloud picture can be obtained by rendering in the fragment shader. When the model is split to check the wave speed information of the section, four vertexes of the quadrilateral of the section are firstly determined according to the section points and the direction vectors input by a user, the quadrilateral is drawn, then, similar to the surface rendering flow of the model, world coordinates (p) of all points to be rendered on the quadrilateral are calculated in parallel in a fragment shader, the wave speed value of the p point can be obtained by interpolation of the wave speed values of the 8 points and the distance from the p point, the color value of the point to be rendered is obtained according to the mapping relation between the wave speed value and the color value, the section with the wave speed contour cloud image information can be obtained by rendering in the fragment shader, and rapid result response can be realized.
Example 2
The invention provides a WebGL-based seismic wave CT result data visualization method, which is implemented by the following steps:
1. generating a set of spatial reference points within a range of integer bounding boxes of a three-dimensional model
Firstly, aiming at a three-dimensional model, forming a minimum integer bounding box of the three-dimensional model; secondly, generating reference points in the bounding box area at positions where all coordinate values are integers to form a space reference point set, and preparing data for subsequent model rendering, wherein the method mainly comprises the following steps:
1. Relevant three-dimensional model data are imported into the system, and a minimum integer hexahedral bounding box B with the axes aligned with the model is determined according to the used three-dimensional model, namely the minimum hexahedron which completely contains the model and has the edges parallel to the coordinate axes and three-dimensional coordinate values of eight vertexes are integers. Let X min,Ymin,Zmin be the minimum value of the model coordinate point in the X, Y, Z axis directions, X max,Ymax,Zmax be the maximum value of the model coordinate point in the X, Y, Z axis directions, respectively, [ ] be the downward rounding symbol, [ X ] represent the maximum integer not exceeding X, then the coordinates X, Y, Z of all points at the boundary and inside of the bounding box B satisfy:
2. Let the side lengths of the hexagonal bounding box B in the X, Y, and Z directions be L x、Ly、Lz, respectively, then there are:
And generating reference points at positions where the coordinates of the inside and the boundary of the bounding box B are integer points, and finally forming a space reference point set in the whole hexahedral bounding box range.
3. Each reference point is stored in a three-dimensional array P and its three-dimensional point coordinates are allowed to form a correspondence with the array subscript. Initializing a floating point shape three-dimensional array float P [ L x][Ly][Lz ], and setting:
Wherein B xmin、Bymin、Bzmin represents the offset value of the minimum x, y and z coordinate values relative to 0 in the integer bounding box B, respectively, so as to enable the element P [0] [0] [0] in the array P to represent the coordinate point (B xmin,Bymin,Bzmin) in the bounding box B, according to the corresponding relation, if the coordinate of a certain reference point is (x, y and z), P [ x-B xmin][y-Bymin][z-Bzmin ] in the array represents the reference point, the value stored in the array element represents the wave velocity value of the point, and thus any element in the array P represents one point in the spatial reference point set, and meanwhile, because the reference points are regularly arranged in the space, the whole space is divided into a plurality of cube spaces, and each cube space has 8 reference points, as shown in FIG. 2.
2. Calculating wave velocity values of a set of spatial reference points
The seismic wave CT result data is in the form of a three-dimensional coordinate point and a wave velocity value of the point, and in order to obtain the wave velocity values of all the reference points, the wave velocity values of all the reference points are calculated according to the seismic wave CT result data by using a DSI interpolation calculation method.
The DSI interpolation calculation method considers each point in the space reference point set as a grid node, and considers the wave velocity value calculation of each node as a function on the grid nodeAccording to the DSI method, there are the following steps:
1. establishing an objective function for calculating an optimal solution on grid nodes Wherein the method comprises the steps ofAs a function of the global roughness,Is a linear constraint violation function.
2. By making an objective functionTo the minimum, solutions are respectively to makeAndMinimizing.
(1) Enabling global roughness functionTo the minimum, so that the function value on any node is as close as possible to the average of the node values in the neighborhood of the node, i.e. each nodeThe values are as smooth as possible;
(2) Converting the raw sample data into linear constraints defined at nodes such that violation of the linear constraints is a function The minimum, that is, the degree of coincidence of the linear constraint is maximized, so that the value of the correlation node approximates the sampled data as closely as possible.
3. Performing precision degeneracy on a set of spatial reference points into a shader
When the data span of the model coordinate input by the user is very large, the data volume and the calculated volume of the space reference point set generated according to the method are very huge, not only the system performance is affected, but also the array is too large, and the limit of hardware or a driving program is exceeded in the rendering process, so that for complex geology and structural models, proper research objects can be selected according to research purposes, different ranges can be selected for reasonably simplifying the models according to different scenes, and engineering mechanics models containing geology and cavity structural information are abstracted and summarized from actual engineering. And secondly, eliminating the reference points which do not influence the rendering result, and not bringing the reference points into the rendering process. The method can be carried out according to the following steps:
1. When rendering the model surface, if the model is quite regular, only the integer reference points around the model vertexes can be reserved, and the reference point coordinates and the array subscripts form a new mapping relation. If the model is irregular, on one hand, a sparse reference point can be set, for example, every 2 integers, on the other hand, because the cloud image is only rendered on the outer surface of the model, the reference points inside the model cannot be accessed in calculation. In order to facilitate data reduction, reference points of the largest hexahedral space in the model can be removed according to the vertex coordinates of the whole model, the rest reference points are continuously stored in an array after removal, and offset of each dimension is set according to a removal mode. And forming a new mapping relation between the array subscript and the reference points so as to ensure that 8 reference points in the cube space can be quickly found according to the coordinate value of a certain point.
2. When the section is rendered, as the section is a quadrilateral plane, only integer reference points which are closest to two sides of the plane can be reserved for simplification.
3. Creating a texture buffer and storing the spatial reference point set data in the texture buffer, one characteristic of the texture buffer is a relaxed size constraint, the texture buffer being similar to a conventional one-dimensional texture, but larger.
4. Wave velocity value calculation and color rendering of points to be rendered
The following steps are taken in rendering the model surface:
1. and obtaining the maximum wave velocity value and the minimum wave velocity value of the seismic wave CT data, and determining the color value of the seismic wave CT data according to the color segment division number set by a user and the color values corresponding to the wave velocity region segments of the color values set by the lowest point and the highest point.
2. Model vertices, projection matrix, observation matrix, model matrix M model, and texture buffer with spatial reference point set data are passed into the shader.
3. The vertex coordinates of the model are passed to the fragment shader in the vertex shader.
4. Calculating world coordinates V world of each point V to be rendered in the fragment shader, setting local coordinates of the rendering points as V local and model matrix as M model, and then: v world=Mmodel·Vlocal.
5. The coordinates of 8 reference points in the cube space where V world is located are obtained according to the coordinates V world, and the method is as follows: under the condition that the space reference point set is not simplified, that is, the reference point coordinates are consistent with the array subscript, the world coordinates V world of the point to be rendered V are set as (x v,yv,zv), and then 8 reference points in the cube space where the point to be rendered V is located can be quickly determined according to the coordinate values, as shown in FIG. 3. The 8 point coordinates are:
P1([xv][yv][zv])
P2([xv][yv][zv+1])
P3([xv][yv+1][zv])
P4([xv][yv+1][zv+1])
P5([xv+1][yv][zv])
P6([xv+1][yv][zv+1])
P7([xv+1][yv+1][zv])
P8([xv+1][yv+1][zv+1])
according to the coordinate value, the wave velocity value corresponding to the P 1-P8 point The fast acquisition in array P can be achieved:
since the array P is already stored as a texture buffer, the wave velocity values for these 8 reference points can be retrieved from the texture buffer as per the principles described above.
If the space reference point set is simplified, 8 points P 1-P8 are found according to the mapping relation between the array subscript and the reference point formed by the simplifying mode. And the wave velocity values of these 8 reference points are taken in the texture buffer.
6. From the wave velocity values of these 8 reference points and their distances to V world, the wave velocity value of V world is interpolated.
7. And obtaining the color value of the rendering point V according to the wave speed value range and the color band dividing result, and forming a three-dimensional model representing wave speed information through the surface color after all the rendering points are rendered, as shown in fig. 4.
The cross section is actually an internal cross section obtained by splitting a model of a quadrilateral surface patch, and since the cross section has only 4 vertexes, in order to generate a cloud image of wave velocity information on the quadrilateral cross section, the color value of a pixel point on the cross section needs to be determined pixel by pixel when the cross section is rendered. For rendering the profile, the following steps are adopted:
1. and obtaining the maximum wave velocity value and the minimum wave velocity value of the seismic wave CT data, and determining the color value of the seismic wave CT data according to the color segment division number set by a user and the color values corresponding to the wave velocity region segments of the color values set by the lowest point and the highest point.
2.4 Vertices of the profile are generated according to profile position information to be viewed by a user.
3. The profile vertices, projection matrix, observation matrix, model matrix M model, and texture buffer with spatial reference point set data are passed into the shader.
4. The vertex coordinates of the cross-section are passed to the fragment shader in the vertex shader.
5. The world coordinate V world of the current drawing point V is calculated in the fragment shader, and if the local coordinate of the current drawing point is V local and the model matrix is M model, then there are: v world=Mmodel·Vlocal.
6. If V world is not in the range of the spatial reference point set, directly setting the pixel color of the point as white semitransparent; if V world is within the range of the spatial reference point set, the coordinates of 8 reference points in the cube space where V world is located are obtained according to V world, and the wave velocity values of the 8 reference points are obtained in texture buffering.
7. The wave velocity value of V world is interpolated from the wave velocity values of these 8 reference points and their distances to V world.
8. And obtaining the color value of the current drawing point V according to the wave speed value and the color band dividing result, and forming a section which represents wave speed information through the surface color after drawing of all the drawing points is completed, as shown in fig. 5.
Example 3
The WebGL-based seismic wave CT result data visualization method effectively solves the problems of inconvenient demonstration and poor instantaneity when software such as ItasCAD is used for displaying and reporting the result of a seismic wave CT three-dimensional model. The beneficial effects are mainly represented in the following aspects:
(1) According to the invention, a regular space reference point set is generated in a certain range according to the related information of the three-dimensional model, and is stored by using the three-dimensional array, and the index of the three-dimensional array is associated with the three-dimensional coordinates of the reference points during storage, so that 8 reference points in the cube space where the index of the three-dimensional array is located can be quickly found when the wave speed value of a certain rendering point is calculated, a quick data searching basis is provided for cloud image rendering on the surface and the section of the follow-up model, and the color value calculation of the surface and the section of the model can be quickly responded.
(2) The online three-dimensional visualization method for the seismic wave CT achievements based on the WebGL is provided, the geological information is rendered on the surface and the section of a three-dimensional model in the form of an isoline cloud picture at the Web end, and efficient display and analysis sharing of the seismic wave CT data on the Web are conveniently realized.
(3) The invention simplifies the complex operation flow of the traditional ItasCAD software and the like, so that a user can easily process and display the seismic wave CT data without professional software background knowledge, the technical threshold is reduced, and the audience range of technical application is enlarged.

Claims (6)

1. The WebGL-based seismic wave CT result data visualization method is characterized by comprising the following steps of:
step 1, generating a space reference point set in a three-dimensional model integer bounding box range;
Step 2, calculating wave velocity values of all reference points in the space reference point set by using a DSI interpolation calculation method according to the CT result data of the seismic waves;
step 3, judging whether to simplify the space reference point set according to the span size of the model coordinate data input by the user, and transmitting the obtained space reference point set into a shader;
and 4, calculating the wave velocity value of the point to be rendered according to the space reference point set and the wave velocity value of the reference point, determining the color value of the point to be rendered and performing color rendering.
2. The method for visualizing seismic CT outcome data based on WebGL according to claim 1, wherein said step 1 specifically comprises the steps of:
Step 1.1, importing related three-dimensional model data, determining a minimum integer hexahedral bounding box B with axes aligned according to the used three-dimensional model, setting X min、Ymin、Zmin as a minimum value of three-dimensional model coordinate points in the X, Y, Z axis direction respectively, setting X max、Ymax、Zmax as a maximum value of three-dimensional model coordinate points in the X, Y, Z axis direction respectively, setting [ ] as a downward rounding symbol, and setting [ X ] as a maximum integer not exceeding X, wherein the coordinates X, y and z of all points at the boundary and the inside of the bounding box B are as follows:
Step 1.2, if the side lengths of the bounding box B in the X, Y, Z axis direction are L x、Ly、Lz, there are:
Generating reference points at positions where coordinates in the bounding box B and at the boundary are integer points, and finally forming a space reference point set in the whole bounding box range;
Step 1.3, storing each reference point in the reference point set in a three-dimensional array P, enabling the three-dimensional point coordinates of the reference points and the array subscripts to form a corresponding relation, initializing a floating point shape three-dimensional array float P [ L x][Ly][Lz ], and setting:
wherein B xmin、Bymin、Bzmin represents the offset value of the minimum x, y and z coordinate values relative to 0 in the integer bounding box B, if the coordinate of a certain reference point is (x, y, z), P [ x-B xmin][y-Bymin][z-Bzmin ] in the array represents a certain reference point, the value stored in the array element represents the wave velocity value of a certain reference point, and any element in the array P represents one point in the reference point set, thus the generation and storage of the reference point set can be completed.
3. The method for visualizing seismic CT outcome data based on WebGL according to claim 2, wherein the compacting method in step 3 specifically comprises the steps of:
Step 3.1, for reference points on the surface of the model, if the shape of the model is regular, only the integer reference points around the vertex of the model are reserved, and the coordinates of the reference points and the array subscripts form a new mapping relation; if the model is irregular, sparse reference points or reference points of the largest hexahedral space in the model are eliminated, the rest reference points are continuously stored in the array after the elimination, and the offset of each dimension is set according to the elimination mode, so that a new mapping relation between the array subscript and the reference points is formed;
For the reference points of the model profile, reserving integer reference points with the two sides of the profile nearest to each other for simplifying;
and 3.2, creating a texture buffer and storing the reduced reference point set data into the texture buffer.
4. The method for visualizing WebGL-based seismic CT outcome data as recited in claim 3, wherein said step 4 comprises the steps of:
step 4.1, dividing the wave speed value and the color band according to the set parameters of the user;
Step 4.2, the model vertexes, the projection matrix, the observation matrix, the model matrix M model and the texture buffer with the reference point set data are transmitted into a shader;
step 4.3, transmitting the vertex coordinates of the model to a fragment shader in the vertex shader;
Step 4.4, calculating world coordinates V world of a current point to be rendered in the fragment shader, setting local coordinates of the current point to be rendered as V local, and setting a model matrix as M model, wherein the steps are as follows: v world=Mmodel·Vlocal;
Step 4.5, obtaining coordinates of 8 reference points in a cube space where the world coordinates V world are located according to the world coordinates V world, and obtaining wave velocity values of the 8 reference points in texture buffering;
Step 4.6, calculating the wave velocity value of V world according to the wave velocity values of 8 reference points and the distance from the 8 reference points to V world in an interpolation mode;
and 4.7, obtaining the color value of the current point V to be rendered according to the wave speed value range and the color band dividing result, and forming a three-dimensional model representing wave speed information through the surface color after rendering of all the points to be rendered.
5. The method for visualizing seismic CT outcome data based on WebGL according to claim 4, wherein said step 4.5 is specifically:
If the spatial reference point set is not simplified, and the world coordinate V world coordinate of the point to be rendered V is (x v,yv,zv), determining 8 reference points in the cube space where the point to be rendered V is located according to the coordinate value of the point to be rendered V, wherein the 8 reference point coordinates are respectively:
P1([xv][yv][zv])
P2([xv][yv][zv+1])
P3([xv][yv+1][zv])
P4([xv][yv+1][zv+1])
P5([xv+1][yv][zv])
P6([xv+1][yv][zv+1])
P7([xv+1][yv+1][zv])
P8([xv+1][yv+1][zv+1])
Acquiring corresponding wave velocity values in the array P according to the coordinate values of 8 reference points P 1~P8
If the space reference point set is simplified, 8 reference points P 1~P8 are found according to the mapping relation between the array subscript and the reference points formed in the simplifying mode in the step 3, and the wave speed values corresponding to the 8 reference points are obtained in the texture buffer.
6. The method for visualizing seismic CT effort data based on WebGL according to claim 3, wherein said step 4 comprises the steps of:
step 4.1, dividing the wave speed value and the color band according to the set parameters of the user;
step 4.2, generating 4 vertexes of the profile according to the profile position information to be checked by the user;
Step 4.3, texture buffering of the profile vertexes, the projection matrix, the observation matrix, the model matrix M model and the data with the reference point set is transmitted into a shader;
Step 4.4, transmitting the vertex coordinates of the section to a fragment shader in the vertex shader;
Step 4.5, calculating the world coordinate V world of the current point to be rendered in the fragment shader, setting the local coordinate of the current point to be rendered as V local and the model matrix as M model, and then: v world=Mmodel·Vlocal;
step 4.6, if the world coordinate V world is not in the range of the space reference point set, directly setting the color of the current point V to be rendered as white semitransparent; if the world coordinate V world is in the range of the space reference point set, obtaining the coordinates of 8 reference points in the cube space where the world coordinate V world is located according to V world, and obtaining the wave velocity values of 8 reference points in texture buffering;
Step 4.7, calculating the wave velocity value of V world according to the wave velocity values of 8 reference points and the distance from the 8 reference points to V world in an interpolation mode;
And 4.8, obtaining the color value of the current point V to be rendered according to the wave speed value and the color band dividing result, and forming a section representing wave speed information through the surface color after rendering of all the points to be rendered.
CN202410492812.6A 2024-04-23 2024-04-23 WebGL-based seismic wave CT result data visualization method Pending CN118312688A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410492812.6A CN118312688A (en) 2024-04-23 2024-04-23 WebGL-based seismic wave CT result data visualization method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410492812.6A CN118312688A (en) 2024-04-23 2024-04-23 WebGL-based seismic wave CT result data visualization method

Publications (1)

Publication Number Publication Date
CN118312688A true CN118312688A (en) 2024-07-09

Family

ID=91730829

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410492812.6A Pending CN118312688A (en) 2024-04-23 2024-04-23 WebGL-based seismic wave CT result data visualization method

Country Status (1)

Country Link
CN (1) CN118312688A (en)

Similar Documents

Publication Publication Date Title
Park et al. Discrete sibson interpolation
AU2011286432B2 (en) Obtaining data from an earth model using functional decriptors
CN110675496B (en) Grid subdivision and visualization method and system based on three-dimensional urban geological model
CN103903061A (en) Information comprehensive processing device and method in three-dimensional mineral resource prediction evaluation
CN108874932B (en) Ocean water sound field three-dimensional visualization method based on improved ray projection algorithm
CN102750727B (en) Access memory method for realizing shear wave data three-dimensional visualization by aiming at parallel volume rendering
Mady et al. An overview of volume rendering techniques for medical imaging
EP4287134A1 (en) Method and system for generating polygon meshes approximating surfaces using root-finding and iteration for mesh vertex positions
CN102214366A (en) High-performance rendering method of three dimensional (3D) point sampling data
CN102074036A (en) Graphics processing unit (GPU) based accelerated dynamic sectioning method of volume data
CN118312688A (en) WebGL-based seismic wave CT result data visualization method
CN117152334B (en) Three-dimensional simulation method based on electric wave and meteorological cloud image big data
Shakaev et al. View-Dependent Level of Detail for Real-Time Rendering of Large Isosurfaces
Berk et al. Direct volume rendering of unstructured grids
Heinonen Simplification of 3D Computer-aided Design Models to Improve Rendering Performance
Zhao et al. 3D reconstruction and rendering visualization of tunnel point cloud
Rongmao et al. Research on 3D Visualization Technology of Electromagnetic Field Based on OSG
CN117994413A (en) Processing method of factory three-dimensional model
Liu et al. Three-dimensional Acoustic Target Surface Reconstruction Method Based on Marching Cubes
Wang et al. Research on geometric algebra spatial representation of geographical scenes
Leo et al. Spherical Terrains Compared: A Standardized Performance Comparison Between Heightmaps and Marching Cubes
Xie et al. Application of two rendering techniques in the visualization of 3D geospatial data
Xinru et al. Application of Micro Station and Image Station SSK Technology in Landscape Visualization System
Ye et al. 3D Model Occlusion Culling Optimization Method Based on WebGPU Computing Pipeline.
Luo et al. Slice-based ray casting volume shadow of volumetric datasets

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination