Embodiment
Below, describe more fully with reference to the accompanying drawings exemplary embodiment of the present invention, exemplary embodiment is shown in the drawings.But, exemplifying embodiment embodiment in many different forms, and should not be construed as limited to exemplary embodiment set forth herein.On the contrary, thereby provide these embodiment disclosure will be thoroughly and complete, and will fully the scope of exemplary embodiment be conveyed to those skilled in the art.
Fig. 1 shows the process flow diagram of geological data caching method according to an exemplary embodiment of the present invention.
With reference to Fig. 1, at step S101, read the first seismic data block, the first seismic data block is the seismic data block generating based on the extraction to original earthquake data.
Specifically, the first seismic data block comprises the breviary information of original earthquake data, can reflect the profile information of original earthquake data.For example, in the time detecting that user checks geologic structure, the data volume that loads original earthquake data is excessive, therefore can not show in real time, and the first seismic data block is through extracting, data scale diminishes, can reside in random access memory, for example, fast overall geological information is processed,, show the 3-D view of geology profile information, and receive the angle of mouse drag change 3-D view.
At step S102, the first seismic data block is carried out to inverting, and generate inversion result.
Specifically, to the first seismic data block carry out inverting can be based on the first seismic data block to geologic structure carry out three-dimensional (3D) show or to geologic structure cut into slices demonstration etc.Inversion result can be slice view or the 3-D view of geologic structure.
As an example, because the first seismic data block comprises the breviary information of original earthquake data, can the first seismic data block reading be cut into slices and be shown or 3-D display.Can show to user the profile information of geologic structure by the first seismic data block being carried out to inverting, with total body display geologic structure overview, the inversion result of generation can be the slice information of geological data or the 3-D view of underground structure.
At step S103, receive the operation of user to inversion result.
As an example, can receive user to section drag, convert the operation such as viewing angle or convergent-divergent, to show the geologic structure information of all angles to user.
At step S104, based on user, the operation of inversion result is generated to the needed the second geological data of further inverting block message.The second seismic data block is to format length and width and the high direction of dividing and generate respectively with line direction, road direction or time/depth direction is parallel and respectively comprise the regular hexahedron data block of the geological data sampled point of predetermined number based on original earthquake data being carried out to three dimensional network.
As an example, when detect user need to some positions of section observe in detail time (for example, demonstration is amplified in some positions), or in the time that user's mouse stops dragging, record the corresponding geological data coordinate of required detailed display position, determine required the second geological data block message based on described coordinate.
At step S105, the needed the second geological data of the further inverting block message based on generating reads corresponding the second seismic data block.
For example, can from the Circular buffer queue of second memory, read the second seismic data block.The second seismic data block comprises the not original earthquake data information through oversampling, the reaction geological data detailed information that original earthquake data information can be detailed.Volume ratio the first data block of the second seismic data block is large, so load as required the second seismic data block.
At step S106, the second seismic data block is carried out to inverting.
Can carry out 3-D display or section demonstration to geologic structure based on the second seismic data block, because the second seismic data block carries detailed geological information, the therefore clearer reflection geological information of the comparable inverting based on the first seismic data block.
Fig. 2 is the process flow diagram that is shown specifically the process of geological data caching method.
With reference to Fig. 2, at step S201, generate the first seismic data block based on original earthquake data.
For example, can carry out extracted at equal intervals geological data sampled point based on line direction, road direction and time/depth direction to original earthquake data, and can generate the first seismic data block that line direction, road direction and time/depth direction respectively comprise predetermined number geological data sampled point.As an example, extraction mode can be taked equidistant extraction.
As another example, can extract original earthquake data as follows:
Sampling number N as required and the scope M of data determine sampling interval, and extracting interval can draw by M/N.For example, online direction has 100 sampled points, need to extract 10 sampled points, and sampling interval is 100/10 so, and every 10 sampled points extract one, can extract the 1st, the 11st, the 21st sampled point etc.At the abstracting method of road direction and time/depth direction similarly, repeat no more.
In the present invention, can extract 256 points in each direction, therefore it is larger to work as data, the precision of the first seismic data block is lower.
As another example, the method that generates the first seismic data block based on the sampled point extracting can comprise, generates the first seismic data block along the length and width of the first seismic data block and high direction successively store sample point.For example, Fig. 3 shows the schematic diagram that generates the first seismic data block based on the sampled point extracting.
With reference to Fig. 3, first, sampled point that can storage line direction (Xline), the sampled point of storing successively many line directions forms by line direction and the determined sampled point plane of road direction (Inline), then forms the first seismic data block by the multiple described sampled point plane of time/depth direction (Time/Depth).
At step S202, generate the second seismic data block based on original earthquake data.
Specifically, by original earthquake data being carried out to the three dimensional network division of formatting, can generate the second seismic data block that line direction, road direction or time/depth direction respectively comprise the geological data sampled point of predetermined number.The method and the step S201 that generate the second seismic data block based on original earthquake data are similar, difference is that generating the second seismic data block based on original earthquake data does not need original earthquake data to extract, and the second seismic data block has retained the details of original earthquake data.
At step S203, generate the index information of the second seismic data block based on original earthquake data.
Described index information comprises: the stored position information of the second seismic data block, the coordinate range information that the second seismic data block comprises geological data sampled point, the second seismic data block memory location, memory location or side-play amount and the second seismic data block corresponding terrestrial coordinate of the second seismic data block in seismic data volume in Circular buffer queue.Index information can record the coordinate information of the each earthquake data sampling point comprising in the second seismic data block, the stored position information of the second seismic data block, and for example, memory location is first memory or second memory.Can judge the memory location of the second seismic data block and the coordinate range of the geological data sampled point that definite the second seismic data block comprises according to index information.
At step S204, the first seismic data block is read to second memory from first memory.
Second memory access speed is greater than first memory, and the first seismic data block is read to second memory with to the first seismic data block fast processing from first memory.As an example, first memory can be hard disk, and second memory can be random access memory.
At step S205, read the first seismic data block from second memory.
As mentioned above, the first seismic data block is the seismic data block generating based on the extraction to original earthquake data.Because the first seismic data block comprises the breviary information of original earthquake data, therefore can reflect the profile information of original earthquake data.For example, in the time detecting that user checks geologic structure, the data volume that loads original earthquake data is excessive, can not show in real time, and the first seismic data block is through extracting, data scale diminishes, can reside in random access memory, for example, fast overall geological information is processed,, show the 3-D view of geology profile information, and receive the angle of mouse drag change 3-D view.
At step S206, in second memory, set up Circular buffer queue.Circular buffer queue is the circulation storage queue take the second seismic data block as storage cell of first in first out file layout.
As an example, can be at second memory (for example, random access memory) in (for example open up a continuous space, can store the space of 40000 the second seismic data blocks), the position of the current Circular buffer queue up-to-date element adding is recorded as to position A, because this buffer queue is a circle queue, capable of circulation depositing, the position that therefore new fragment of brick is deposited is (position A+1) %40000.
At step S207, the first seismic data block reading is carried out inverting and generates inversion result.
As an example, because the first seismic data block comprises the breviary information of original earthquake data, can the first seismic data block reading be cut into slices and be shown or 3-D display, with total body display geologic structure overview, the inversion result of generation can be the slice information of geological data or the 3-D view of underground structure.
At step S208, receive the operation of user to inversion result.
As an example, can receive user to section drag, convert the operation such as viewing angle or convergent-divergent, to show the geological data section of all angles to user.
At step S209, based on user, the operation of inversion result is generated to required the second geological data block message.
As an example, when detect user need to some positions of section observe in detail time (for example, demonstration is amplified in some positions), or in the time that user's mouse stops dragging, record the corresponding geological data coordinate of required detailed display position, determine required the second geological data block message based on described coordinate.
At step S210, obtain the index information of the second seismic data block.
Index information can be read to second memory from first memory, read index information from second memory.
At step S211, judge based on index information whether the second seismic data block is stored in second memory.
The second seismic data block stored position information comprising based on index information judges whether the second seismic data block is stored in second memory.
When in the time that step S211 judges that the second seismic data block is not stored in second memory, execution step S212, reads the second seismic data block the Circular buffer queue of second memory from first memory.
Specifically, when Circular buffer queue is not stored when full, the second seismic data block is stored in to the next close position of tail of the queue element position, in the time that Circular buffer queue stores is full, the stored position information of the second seismic data block that the next close position of tail of the queue element position is stored is revised as first memory, and the second seismic data block is stored in to the next close position of tail of the queue element position.After this, revise the index information of corresponding the second seismic data block.
At step S213, read the second seismic data block from second memory.
For example, can from the Circular buffer queue of second memory, read the second seismic data block.The second seismic data block comprises the not original earthquake data information through oversampling, reaction geological data detailed information that can be detailed.Volume ratio the first data block of the second seismic data block is large, so load as required the second seismic data block.
At step S214, the second seismic data block is carried out to inverting.
Because the second seismic data block carries detailed geological information, therefore can more clearly reflect geological information.
As an example, can be to the demonstration of cutting into slices of the second seismic data block.While demonstration when the first seismic data block is cut into slices, only show profile information, in the time detecting that user stops mouse drag, load the details of current visual angle.
Fig. 4 shows the schematic diagram of the relation of seismic data volume and the second seismic data block.
With reference to Fig. 4, the second seismic data block is arranged and generated seismic data volume according to the order of line direction, road direction and time/depth direction.Multiple the second seismic data blocks are stored as to a seismic data volume, seismic data volume can with original earthquake data correspondence, the data message comprising can be consistent with original earthquake data.As an example, can generate the second seismic data block based on original earthquake data, generate seismic data volume based on the second seismic data block, and add seismic data volume identification information to seismic data volume, can seismic data block is into a line according to line direction row, along road direction, many lines are deposited and lined up a face, multiple faces are stored as to seismic data volume.
Fig. 5 shows the process flow diagram that according to an exemplary embodiment of the present invention the second seismic data block is stored in to the method for Circular buffer queue.
With reference to Fig. 5, at step S501, record the position of the second seismic data block of up-to-date storage in Circular buffer queue.
Circular buffer queue comprises queue heads and rear of queue and the element between them, in the present embodiment, the position of the second seismic data block of up-to-date storage in Circular buffer queue can be recorded as to position A.
At step S502, in the time of storage the second seismic data block, judge whether Circular buffer queue reaches max cap..
For example, whether the quantity that relatively judges the second seismic data block that Circular buffer queue stores of position-based A and Circular buffer capacity of queue reaches max cap..
At step S503, upgrade the index information of the second seismic data block of the next position storage of the position of the second seismic data block of the up-to-date storage in Circular buffer queue of recording.
When the judged result of step S502 is while reaching the max cap. of Circular buffer queue,, the next close position non-NULL of position A, can be revised as first memory by second memory by the index information of the second seismic data block of the next position storage of position A.
At step S504, the second seismic data block is stored in to the next position of the position of the second seismic data block of recorded up-to-date storage.
When the judged result of step S502 is while not reaching the max cap. of Circular buffer queue or when execution of step S503, the second seismic data block is stored in to the next position of position A.
At step S505, current location is recorded as to the position of the second seismic data block of up-to-date storage.
The value of renewable position A, that is, the value of position A is corresponding with the position of tail of the queue element, for example, the value of position A can be increased to 1.
At step S506, upgrade the index information of the second seismic data block of up-to-date storage.
After the second seismic data block is stored in Circular buffer queue, upgrade the index information of described the second seismic data block, the index information of the second seismic data block can be revised as to second memory by first memory.
Although specifically shown with reference to its exemplary embodiment and described the present invention, but it should be appreciated by those skilled in the art, in the case of not departing from the spirit and scope of the present invention that claim limits, can carry out the various changes in form and details to it.