Method and device for quickly searching massive geometric points based on two-dimensional non-uniform grid

By adopting a fast search method based on two-dimensional non-uniform grid in the seismic data processing system, the problem of inefficient geometric point search in massive seismic data is solved, and efficient and stable seismic data processing is achieved.

CN120122154APending Publication Date: 2025-06-10CHINA PETROLEUM & CHEMICAL CORP +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311673292.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-12-07
Publication Date
2025-06-10

AI Technical Summary

Technical Problem

When processing massive seismic data, the efficiency of finding and positioning specific geometric points is inefficient, especially in non-uniformly distributed geometric point scenarios, where conventional uniform grid division methods have efficiency bottlenecks.

Method used

A quick search method based on two-dimensional non-uniform grid is adopted. By sorting the geodesic coordinates of geometric points, an ordered two-dimensional non-uniform grid index is established, so that the searches are performed in the X and Y directions are respectively, and the geometric points specified by the user are quickly positioned.

Benefits of technology

It significantly reduces the manual interaction response time, improves the efficiency and stability of the seismic data processing system, and can achieve efficient search at the number of receiving points of billions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120122154A_ABST
    Figure CN120122154A_ABST
Patent Text Reader

Abstract

The invention provides a mass geometric point quick searching method and device based on a two-dimensional non-uniform grid, and belongs to the technical field of seismic data processing software. According to the method, ordered two-dimensional non-uniform grid indexes are established according to the sorting of the X and Y coordinates of all geometric points in the two-dimensional plane scatter diagram, then searching is carried out in the X and Y directions, the positions of the geometric points in the seismic data array can be rapidly positioned, corresponding seismic data information is obtained and processed, and the larger the data size is, the larger the data size is, the larger the data size is. Compared with a conventional searching method, the method has higher efficiency, is very suitable for interactive application scenes such as quickly searching seismic data information on massive two-dimensional plane scatter graphs in a seismic data processing system, and can provide quick and stable interactivity, and a man-machine interface is used for displaying and processing the seismic data information, so that the method is more convenient to use. The interaction response time of the seismic data processing system is greatly reduced, and the efficiency and stability of the seismic data processing system are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to the technical field of seismic data processing software, and in particular to a method and device for quickly searching for massive geometric points based on a two-dimensional non-uniform grid. Background Art

[0002] As the objects of oil and gas exploration become more and more complex, conventional seismic exploration has gradually failed to meet the requirements of exploration tasks. High-density, wide-azimuth seismic exploration technology has emerged. Compared with conventional seismic exploration, it has the advantages of small spatial sampling interval, high coverage, wide azimuth, and uniform distribution of shot offsets. However, the problem that comes with it is that the amount of data collected and processed by seismic data is also increasing. Faced with the increasing amount of data, how to use the high-speed processing capabilities of modern computers to improve and improve the real-time performance and stability of seismic data processing software systems has become a difficult problem that needs to be solved in the current geophysical software development work.

[0003] In the face of massive seismic data collected at a high density, it is crucial for the processing software to provide real-time and efficient interactive functions, such as how to quickly find or locate certain information in massive discrete data. The most common two-dimensional scatter plots in seismic data processing software systems include work area base maps and plane attribute maps, where the X and Y coordinates of the work area base map represent the actual geodetic coordinates of the excitation point or receiving point (hereinafter referred to as the blast point). There is an interactive application scenario where the user moves the mouse on the work area base map and hopes to view a certain attribute of a specified geometric point, such as the elevation, well depth, etc. of the geometric point. In this case, the processing system needs to convert the current device coordinates of the mouse on the screen into the actual geodetic coordinates of the geometric point, and then search in the seismic data array according to the geodetic coordinates of the point to obtain the attribute value corresponding to the current geometric point.

[0004] At present, there are two conventional methods for searching geometric points in two-dimensional space. One is to traverse all geometric points and search for geometric points corresponding to X and Y coordinates. If the number of scattered points is N, then the search time complexity is O(N) in the worst case. When the amount of data is extremely large, this method is obviously very time-consuming and inefficient. Another method is to divide the entire work area into several intervals according to uniform grids, such as Figure 1As shown in the figure, first determine which grid the geometric point to be searched belongs to, then traverse all the geometric points within that grid, and search for the geometric point corresponding to the X and Y coordinates. If the number of divided grids is M, then the time complexity of the search is approximately O(N / M). This method first locates the point to be searched within a certain grid, and then traverses the geometric points within that grid, which reduces the search range to a certain extent and improves the efficiency. However, the drawback of this method is that if the geometric points are not evenly distributed in the work area, then most of the geometric points may be concentrated in certain grids, and it is also very time-consuming to search within these grids. Moreover, how to determine the appropriate grid spacing remains to be studied.

[0005] For the traversal search of conventional two-dimensional space discrete data or the method of dividing into evenly spaced grid blocks for search, if the data volume is huge, these methods will consume a large amount of time, which will bring great inconvenience to the application of the interactive function of the seismic data processing system. Summary of the Invention

[0006] The object of the present invention is to provide a method and device for quickly searching a large number of spatial geometric points based on a two-dimensional non-uniform grid. The method and device construct a non-uniform grid according to the geometric coordinate sorting of discrete points in the two-dimensional space, and can quickly locate a certain geometric point specified by manual interaction to display or process seismic data information, reduce the manual interaction response time, and improve the efficiency of the seismic data processing system.

[0007] To achieve the above object, the present invention provides a method for quickly searching a large number of geometric points based on a two-dimensional non-uniform grid, including the following steps:

[0008] Step 1: Traverse all geometric points, sort them based on the geodetic coordinates of all geometric points, and establish a two-dimensional space non-uniform grid index;

[0009] Step 2: Obtain the device coordinates, and obtain the geodetic coordinates of the geometric point to be searched through device coordinate conversion;

[0010] Step 3: Based on the two-dimensional space non-uniform grid index and the geodetic coordinates of the geometric point, and according to the index of the geometric point in the seismic data array, obtain the seismic data information of the corresponding geometric point.

[0011] Preferably, in the step 1, the geodetic coordinates of all geometric points are unique, that is, there is only one geometric point on each (X, Y) coordinate.

[0012] Preferably, in the step 1, the associated container Map in the C++ standard template library is used to sort the geodetic coordinates of all geometric points.

[0013] Preferably, in the step 1, establishing a two-dimensional space non-uniform grid index specifically includes: traversing all geometric points, constructing a first-level Map<int, int> YMap with the Y coordinate as the keyword key and the index Index of the geometric point in the one-dimensional array Attribute as the key value, and then constructing a second-level Map<int, YMap> XMap with the X coordinate as the keyword key and the above first-level Map as the key value. After constructing the above second-level Map, a set of two-dimensional non-uniform grids is divided at the positions of the X and Y coordinates corresponding to all geometric points within the entire work area.

[0014] Preferably, in the step 2, the device coordinates of the geometric point to be searched on the screen are obtained by moving the mouse.

[0015] Preferably, in the step 2, when the mouse approaches a certain geometric point, the device coordinates are allowed to have an error range of 3 pixels visually.

[0016] Preferably, the step 3 specifically includes:

[0017] Step 3a: Search in the X direction according to the X coordinate of the geometric point. If the corresponding X grid point is found, all grid points in the Y direction on the corresponding X grid point are obtained, and step 3b is executed. Otherwise, all grid points in the Y direction corresponding to the adjacent X grid points before and after the X coordinate are obtained, and then step 3b is executed;

[0018] Step 3b: Search in the Y direction according to the Y coordinate of the geometric point. If the corresponding Y grid point is found, the index of the seismic data array on the corresponding Y grid point is obtained. Otherwise, the index of the seismic data array corresponding to the nearest grid point is obtained.

[0019] Preferably, after the step 3, it further includes: displaying or processing the seismic data information corresponding to the geometric point.

[0020] The present invention also provides a fast search device for a large number of geometric points based on a two-dimensional non-uniform grid, including:

[0021] A building module, configured to traverse all geometric points, sort based on the geodetic coordinates of all geometric points, and establish a two-dimensional space non-uniform grid index;

[0022] A search module, configured to obtain device coordinates, and obtain the geodetic coordinates of the geometric point to be searched through device coordinate conversion. The search module includes:

[0023] An X-direction search module, configured to search in the X direction according to the X coordinate of the geometric point. If the corresponding X grid point is found, all grid points in the Y direction on the corresponding X grid point are obtained, and step 3b is executed. Otherwise, all grid points in the Y direction corresponding to the adjacent X grid points before and after the X coordinate are obtained, and then step 3b is executed;

[0024] A Y - direction search module, configured to search in the Y - direction according to the Y - coordinate of the geometric point. If the corresponding Y - grid point is found, the index of the seismic data array on the corresponding Y - grid point is obtained; otherwise, the index of the seismic data array corresponding to the nearest grid point is obtained.

[0025] A mapping module, configured to obtain the seismic data information of the corresponding geometric point based on the two - dimensional space non - uniform grid index and the geodetic coordinates of the geometric point, and according to the index of the geometric point in the seismic data array.

[0026] The present invention also provides a fast search device for a large number of geometric points based on a two - dimensional non - uniform grid, including:

[0027] A processor;

[0028] A memory for storing instructions executable by the processor;

[0029] Wherein, the processor is configured to call the instructions stored in the memory to execute the above - mentioned fast search method for a large number of geometric points based on a two - dimensional non - uniform grid.

[0030] The beneficial effects of the present invention at least include:

[0031] The fast search method and device for a large number of spatially discrete points based on a two - dimensional non - uniform grid provided by the present invention sort according to the X and Y coordinates of all geometric points in the observation system, establish an ordered two - dimensional non - uniform grid index, and then search from the X and Y directions respectively, so as to quickly locate the position of the user - specified shot - receiver point in the seismic data array. It enables software users to quickly and efficiently obtain and process comprehensive and rich seismic data information through human - machine interaction on two - dimensional plane scatter point graphics such as the work area base map and plane attributes, which will greatly improve the efficiency and stability of the seismic data processing system and improve the benefits for promoting the oil and gas exploration and development industry.

[0032] The method and device of the present invention have other characteristics and advantages, which will be obvious in the accompanying drawings incorporated herein and the subsequent specific embodiments, or will be described in detail in the accompanying drawings incorporated herein and the subsequent specific embodiments. These accompanying drawings and specific embodiments are jointly used to explain the specific principles of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0033] By describing the exemplary embodiments of the present invention in more detail in conjunction with the accompanying drawings, the above - mentioned and other objects, features, and advantages of the present invention will become more obvious.

[0034] Figure 1 Shows a schematic diagram of the distribution area of geometric points divided by a uniform grid in the prior art;

[0035] Figure 2Shows a schematic diagram of a two-dimensional non-uniform grid based on the X and Y coordinates of geometric points in an embodiment of the present invention;

[0036] Figure 3 Shows a schematic diagram of finding the grid point closest to the geometric point (X, Y) in an embodiment of the present invention;

[0037] Figure 4 Shows a flowchart of fast indexing based on a two-dimensional non-uniform grid in an embodiment of the present invention;

[0038] Figure 5 Shows a block diagram of a device for fast searching of a large number of geometric points based on a two-dimensional non-uniform grid in an embodiment of the present invention;

[0039] Figure 6 Shows a block diagram of an electronic device in an embodiment of the present invention. Detailed implementation manners

[0040] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Apparently, the described embodiments are only some, rather than all, of the embodiments of the present invention. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.

[0041] The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects and do not necessarily need to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged under appropriate circumstances so that the embodiments of the present invention described here can be implemented in an order different from those illustrated or described here.

[0042] It should be understood that in various embodiments of the present invention, the magnitude of the sequence numbers of the various processes does not mean the order of execution, and the order of execution of the various processes should be determined by their functions and internal logics, and should not constitute any limitation to the implementation process of the embodiments of the present invention.

[0043] It should be understood that in the present invention, "including" and "having" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or device that includes a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but may include other steps or units not clearly listed or inherent to these processes, methods, products, or devices.

[0044] It should be understood that in the present invention, "a plurality of" means two or more. "And / or" is merely a description of the association relationship between associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. The character " / " generally indicates that the associated objects before and after are in an "or" relationship. "Including A, B, and C" and "including A, B, C" mean that all of A, B, and C are included. "Including A, B, or C" means including one of A, B, and C. "Including A, B, and / or C" means including any one or any two or all three of A, B, and C.

[0045] It should be understood that in the present invention, "B corresponding to A", "B corresponding to A relatively", "A corresponding to B relatively", or "B corresponding to A relatively" means that B is associated with A, and B can be determined according to A. Determining B according to A does not mean determining B only according to A. B can also be determined according to A and / or other information. The matching of A and B means that the similarity between A and B is greater than or equal to a preset threshold.

[0046] Depending on the context, as used herein, "if" can be interpreted as "when...", "while...", "in response to determining", or "in response to detecting".

[0047] The technical solution of the present invention will be described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments.

[0048] The present invention has developed a fast search technology for massive geometric points in space based on a two-dimensional non-uniform grid, which is very suitable for the interactive application scenario of searching for shot point and receiver point information on the work area base map in seismic data processing software.

[0049] Specifically, the present invention provides a fast search method for massive geometric points based on a two-dimensional non-uniform grid, including the following steps:

[0050] Step 1: Traverse all geometric points, sort them based on the geodetic coordinates of all geometric points, and establish a two-dimensional space non-uniform grid index;

[0051] Step 2: Obtain device coordinates, and obtain the geodetic coordinates of the geometric points to be searched through device coordinate conversion;

[0052] Step 3: Based on the two-dimensional space non-uniform grid index and the geodetic coordinates of the geometric points, and according to the index of the geometric points in the seismic data array, obtain the seismic data information of the corresponding geometric points.

[0053] Preferably, in the step 1, the geodetic coordinates of all geometric points are unique, that is, there is only one geometric point on each (X, Y) coordinate.

[0054] Preferably, in the step 1, an associative container Map in the C++ Standard Template Library is used to sort the geodetic coordinates of all geometric points.

[0055] Preferably, in the step 1, establishing a two-dimensional spatial non-uniform grid index specifically includes: traversing all geometric points, constructing a first-level Map<int, int> YMap with the Y coordinate as the keyword key and the index Index of the geometric point in the one-dimensional array Attribute as the key value, and then constructing a second-level Map<int, YMap> XMap with the X coordinate as the keyword key and the above first-level Map as the key value. After constructing the above second-level Map, a set of two-dimensional non-uniform grids is divided at the positions of the X and Y coordinates corresponding to all geometric points within the entire work area.

[0056] Preferably, in the step 2, the device coordinates of the geometric point to be searched on the screen are obtained by moving the mouse.

[0057] Preferably, in the step 2, when the mouse approaches a certain geometric point, the device coordinates are allowed to have an error range of 3 pixels visually.

[0058] Preferably, the step 3 specifically includes:

[0059] Step 3a: Search in the X direction according to the X coordinate of the geometric point. If the corresponding X grid point is found, obtain all grid points in the Y direction on the corresponding X grid point, and execute step 3b. Otherwise, obtain all Y grid points corresponding to the adjacent X grid points before and after the X coordinate, and then execute step 3b;

[0060] Step 3b: Search in the Y direction according to the Y coordinate of the geometric point. If the corresponding Y grid point is found, obtain the index of the seismic data array on the corresponding Y grid point. Otherwise, obtain the index of the seismic data array corresponding to the nearest grid point.

[0061] Preferably, after the step 3, it further includes: displaying or processing the seismic data information corresponding to the geometric point.

[0062] The present invention also provides a fast search device for a large number of geometric points based on a two-dimensional non-uniform grid, including:

[0063] A building module, configured to traverse all geometric points, sort based on the geodetic coordinates of all geometric points, and establish a two-dimensional spatial non-uniform grid index;

[0064] A search module, configured to obtain device coordinates and obtain the geodetic coordinates of the geometric point to be searched through device coordinate conversion. The search module includes:

[0065] The X - direction search module is used to search in the X - direction according to the X - coordinate of the geometric point. If the corresponding X - grid point is found, all grid points in the Y - direction on the corresponding X - grid point are obtained, and step 3b is executed; otherwise, all Y - grid points corresponding to the adjacent X - grid points before and after the X - coordinate are obtained, and then step 3b is executed;

[0066] The Y - direction search module is used to search in the Y - direction according to the Y - coordinate of the geometric point. If the corresponding Y - grid point is found, the index of the seismic data array on the corresponding Y - grid point is obtained; otherwise, the index of the seismic data array corresponding to the nearest grid point is obtained;

[0067] The mapping module is used to obtain the seismic data information of the corresponding geometric point based on the two - dimensional space non - uniform grid index and the geodetic coordinates of the geometric point, and according to the index of the geometric point in the seismic data array.

[0068] The present invention also provides a fast searching device for a large number of geometric points based on a two - dimensional non - uniform grid, including:

[0069] A processor;

[0070] A memory for storing instructions executable by the processor;

[0071] Wherein, the processor is configured to call the instructions stored in the memory to execute the above - mentioned fast searching method for a large number of geometric points based on a two - dimensional non - uniform grid.

[0072] Example 1

[0073] Figure 4 The flowchart of fast indexing based on a two - dimensional non - uniform grid in an embodiment of the present invention is shown. According to a fast searching method for a large number of geometric points based on a two - dimensional non - uniform grid provided by an embodiment of the present invention, the following steps are included:

[0074] Step 1: Traverse all geometric points, sort them based on the geodetic coordinates of all geometric points, and establish a two - dimensional space non - uniform grid index. Among them, the seismic data information of the shot - receiver points mainly includes geodetic coordinates (X, Y coordinates), elevation and other various attributes, which are uniformly defined as a one - dimensional structure array Attribute here, and it is required that the geodetic coordinates of all geometric points are unique, that is, there is only one geometric point on each (X, Y) coordinate. Traverse all geometric points, sort them according to the X and Y coordinates, and construct an ordered data organizational structure, that is, establish a two - dimensional space non - uniform grid index, such as Figure 2 The schematic diagram of the two - dimensional non - uniform grid based on the X and Y coordinates of geometric points shown.

[0075] Step 2: Obtain the device coordinates and convert the device coordinates to obtain the geodetic coordinates of the geometric point to be searched; wherein, in Step 2, the device coordinates of the geometric point to be searched on the screen are obtained by moving the mouse. On the working area base map, the user obtains the device coordinates of the shot point to be searched on the screen by moving the mouse, and then obtains the actual geodetic coordinates (XCoord’, YCoord’) of the geometric point through the mapping relationship between the device coordinates and the data coordinates. Since the device coordinates are in pixels and the geodetic coordinates are in meters, when the user moves the mouse on the screen, it may not be able to accurately point to a certain geodetic coordinate. Therefore, when the mouse approaches a certain geometric point, a certain error range in vision is allowed for the device coordinates. For example, within an error range of 3 pixels, it is considered to point to this geometric point, that is, when the mouse approaches a certain geometric point, the device coordinates are allowed to have an error range of 3 pixels in vision.

[0076] Step 3: Based on the two-dimensional space non-uniform grid index and the geodetic coordinates of the geometric point, and according to the index of the geometric point in the seismic data array, obtain the seismic data information of the corresponding geometric point.

[0077] Specifically, Step 3 specifically includes:

[0078] Step 3a: Search in the X direction according to the X coordinate of the geometric point. If the corresponding X grid point is found, obtain all the grid points in the Y direction on the corresponding X grid point and execute Step 3b. Otherwise, obtain all the Y grid points corresponding to the adjacent X grid points before and after the X coordinate and then execute Step 3b; specifically, it includes:

[0079] Search for the keyword XCoord’ in the secondary Map XMap.

[0080] ① If the corresponding key value is found, that is, obtain the corresponding primary Map YMap’:

[0081] Map<int,Map<int,int> >::iterator itr=XMap.find(XCoord’);

[0082] if(itr!=XMap.end())

[0083] Map<int,int>YMap’=itr.value();

[0084] ② If the corresponding key value is not found, return the 2 adjacent key values XCoord1 and XCoord2 before and after the keyword XCoord’, and obtain the corresponding primary Maps YMap1 and YMap2 according to the key values XCoord1 and XCoord2:

[0085]

[0086]

[0087] Assume that the dimension of the two-dimensional non-uniform grid in the X direction is N x , then the time complexity of searching in the X direction is O(log 2 N x ).

[0088] Step 3b: Search in the Y direction according to the Y coordinate of the geometric point. If the corresponding Y grid point is found, obtain the seismic data array index on the corresponding Y grid point. Otherwise, obtain the seismic data array index corresponding to the nearest grid point. Specifically, the following steps are included:

[0089] (1) Referring to step ① of step 3a, search for the keyword YCoord' in the first-level Map YMap'. If the corresponding key value is found, the index of the corresponding geometric point in the seismic data array Attribute is obtained:

[0090] Map<int,int> ::iterator itr=YMap'.find(YCoord');

[0091] if (itr!=YMap'.end())

[0092] Index = itr.value();

[0093] If the corresponding key value is not found, the two adjacent key values ​​YCoord1 and YCoord2 before and after the corresponding key value YCoord' are returned, and the distance between YCoord' and YCoord1 and YCoord2 is determined. The minimum distance is mapped from the data coordinates back to the device coordinates. If the visual error is less than 3 pixels, the index of the geometric point corresponding to the Y key value with the minimum distance in the seismic data array Attribute is obtained:

[0094]

[0095]

[0096] (2) Referring to step 3a, search for the keyword YCoord' in the first-level Map YMap1, YMap2. If the corresponding key value is found, determine the distance between XCoord' and XCoord1 and XCoord2, and map the minimum distance from the data coordinates back to the device coordinates. If the visual error is less than 3 pixels, obtain the index of the geometric point corresponding to the X key value with the smallest distance in the seismic data array Attribute:

[0097]

[0098] If the corresponding key value is not found, two first-level Maps YMap1 and YMap2 are returned, corresponding to the key value YCoord' and the four adjacent key values ​​YCoord1, YCoord2, YCoord3, and YCoord4 before and after, and the minimum distance between the geometric point (XCoord', YCoord') and the following four grid points (XCoord1, YCoord1), (XCoord1, YCoord2), (XCoord2, YCoord1), and (XCoord2, YCoord2) is determined, and the minimum distance is mapped from the data coordinates back to the device coordinates. If the visual error is less than 3 pixels, the index of the grid point with the minimum distance in the seismic data array Attribute is obtained:

[0099]

[0100] Assume that the dimension of the two-dimensional non-uniform grid in the Y direction is N y , then the time complexity of searching in the Y direction is O(log 2 N y ).like Figure 3 The figure shows a schematic diagram of finding the grid point closest to a geometric point (X, Y).

[0101] Specifically, in step 1, the associative container Map in the C++ standard template library is used to sort the geodetic coordinates of all geometric points; wherein, an associative container Map in the C++ standard template library provides one-to-one (the first one is called the keyword, each keyword can only appear once in the Map, and the second one is called the value of the keyword) data processing functions, including the insertion, deletion, and search of values ​​associated with the key. The elements in the Map are automatically sorted according to the keyword key, and its internal implementation is a red-black tree, that is, a balanced binary search tree, so the search efficiency is relatively high, and the time complexity is O(log 2 N).

[0102] Specifically, in step 1, establishing a two-dimensional non-uniform grid index specifically includes: traversing all geometric points, using the Y coordinate as the key, and the index of the geometric point in the one-dimensional array Attribute as the key value to build a first-level Map<int,int> YMap, then use the X coordinate as the key and the above first-level Map as the key value to build a second-level Map<int,YMap> XMap, that is:

[0103] YCoord=Attribute[Index].YCoord;

[0104] XCoord=Attribute[Index].XCoord;

[0105] Map<int,int> &YMap = XMap[XCoord];

[0106] YMap[YCoord] = Index;

[0107] After constructing the above-mentioned secondary map, a set of two-dimensional non-uniform grids are divided at the positions corresponding to the X and Y coordinates of all geometric points in the entire work area. All geometric points are grid points of this grid, and the subsequent search for a single geometric point is based on this grid.

[0108] Specifically, after step 3, the method further includes: displaying or processing the seismic data information corresponding to the geometric points, and displaying and processing the seismic data information through a human-computer interface, thereby greatly reducing the interactive response time of the seismic data processing system.

[0109] The method for quickly searching for massive geometric points based on a two-dimensional non-uniform grid in an embodiment of the present invention sorts the X and Y coordinates of all geometric points in the observation system, establishes an ordered two-dimensional non-uniform grid index, and then searches from the X and Y directions respectively. It can quickly locate the position of the user-specified shot check point in the seismic data array, and obtain the corresponding seismic data information for related processing, which greatly reduces the interactive response time of the seismic data processing system and improves the efficiency and stability of the seismic data processing system.

[0110] Example 2

[0111] According to an embodiment of the present invention, a device for quickly searching for massive geometric points based on a two-dimensional non-uniform grid is provided, comprising:

[0112] Establish a module for traversing all geometric points, sorting them based on the geodetic coordinates of all geometric points, and establishing a two-dimensional space non-uniform grid index;

[0113] The search module is used to obtain the device coordinates and obtain the geodetic coordinates of the geometric point to be searched through device coordinate conversion;

[0114] The mapping module is used to obtain the seismic data information of the corresponding geometric point based on the non-uniform grid index in two-dimensional space and the geodetic coordinates of the geometric point and according to the index of the geometric point in the seismic data array.

[0115] Specifically, the device for quickly searching for massive geometric points based on two-dimensional non-uniform grids of the present invention further includes a display processing module, which is used to display and process seismic data information through a human-computer interface.

[0116] Specifically, the search module also includes:

[0117] An X-direction search module is used to search in the X direction according to the X coordinate of the geometric point. If the corresponding X grid point is found, all the grid points in the Y direction on the corresponding X grid point are obtained, and step 3b is executed. Otherwise, all the Y grid points corresponding to the adjacent X grid points before and after the X coordinate are obtained, and step 3b is executed again.

[0118] The Y-direction search module is used to search in the Y direction according to the Y coordinate of the geometric point. If the corresponding Y grid point is found, the seismic data array index on the corresponding Y grid point is obtained, otherwise the seismic data array index corresponding to the nearest grid point is obtained.

[0119] Example 3

[0120] According to another aspect of the present invention, a computing device 800 is also provided, comprising: a processor 820; a memory 804 for storing executable instructions of the processor 820; wherein the processor 820 is configured to call the instructions stored in the memory 804 to execute the above-mentioned method for quickly searching for massive geometric points based on a two-dimensional non-uniform grid.

[0121] The method comprises the following steps:

[0122] Step 1: Traverse all geometric points, sort them based on the geodetic coordinates of all geometric points, and establish a two-dimensional non-uniform grid index;

[0123] Step 2: Get the device coordinates, and obtain the geodetic coordinates of the geometric point to be found through device coordinate conversion;

[0124] Step 3: Based on the two-dimensional non-uniform grid index and the geodetic coordinates of the geometric point, and according to the index of the geometric point in the seismic data array, obtain the seismic data information corresponding to the geometric point.

[0125] In some implementations, in step 1, the geodetic coordinates of all geometric points are unique, that is, there is only one geometric point on each (X, Y) coordinate.

[0126] In some implementations, in step 1, the associative container Map in the C++ Standard Template Library is used to sort the geodetic coordinates of all geometric points.

[0127] In some implementations, in step 1, establishing a two-dimensional non-uniform grid index specifically includes: traversing all geometric points, using the Y coordinate as the key and the index of the geometric point in the one-dimensional array Attribute as the key value to construct a first-level Map<int,int> YMap, then use the X coordinate as the key and the above first-level Map as the key value to build a second-level Map<int,YMap> XMap,After constructing the above-mentioned secondary Map, a set of two-dimensional non-uniform grids is divided at the positions corresponding to the X and Y coordinates of all geometric points in the entire work area.

[0128] In some implementations, in step 2, the device coordinates of the geometric point to be found on the screen are obtained by moving the mouse.

[0129] In some implementations, in step 2, when the mouse approaches a certain geometric point, the device coordinates are allowed to have a visual error range of 3 pixels.

[0130] In some embodiments, step 3 specifically includes:

[0131] Step 3a: Search in the X direction according to the X coordinate of the geometric point. If the corresponding X grid point is found, obtain all the grid points in the Y direction on the corresponding X grid point and execute step 3b. Otherwise, obtain all the Y grid points corresponding to the adjacent X grid points before and after the X coordinate and execute step 3b again.

[0132] Step 3b: Search in the Y direction according to the Y coordinate of the geometric point. If the corresponding Y grid point is found, obtain the seismic data array index on the corresponding Y grid point; otherwise, obtain the seismic data array index corresponding to the nearest grid point.

[0133] In some implementations, after step 3, the method further includes: displaying or processing the seismic data information corresponding to the geometric points.

[0134] Figure 5 A block diagram of a device 800 for quickly searching for massive geometric points based on a two-dimensional non-uniform grid according to an embodiment of the present invention is shown. For example, the computing device 800 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, or other terminal devices.

[0135] Reference Figure 5 As shown, computing device 800 may include one or more of the following components: a processing component 802 , a memory 804 , a power component 806 , a multimedia component 808 , an audio component 810 , an input / output interface 812 , a sensor component 814 , and a communication component 816 .

[0136] The processing component 802 generally controls the overall operation of the computing device 800, such as operations associated with display, phone calls, data communications, camera operations, and recording operations. The processing component 802 may include one or more processors 820 to execute instructions to complete all or part of the steps of the above-mentioned method. In addition, the processing component 802 may include one or more modules to facilitate the interaction between the processing component 802 and other components. For example, the processing component 802 may include a multimedia module to facilitate the interaction between the multimedia component 808 and the processing component 802.

[0137] The memory 804 is configured to store various types of data to support operations on the computing device 800. Examples of such data include instructions for any application or method operating on the computing device 800, contact data, phone book data, messages, pictures, videos, etc. The memory 804 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0138] The power supply component 806 provides power to the various components of the computing device 800. The power supply component 806 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the computing device 800.

[0139] The multimedia component 808 includes a screen that provides an output interface between the computing device 800 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the edge of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 808 includes a front camera and / or a rear camera. When the computing device 800 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.

[0140] The audio component 810 is configured to output and / or input audio signals. For example, the audio component 810 includes a microphone (MIC), and when the computing device 800 is in an operating mode, such as a call mode, a recording mode, and a speech recognition mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in the memory 804 or sent via the communication component 816. In some embodiments, the audio component 810 also includes a speaker for outputting audio signals.

[0141] The input / output interface 812 provides an interface between the processing component 802 and the peripheral interface modules, which may be keyboards, click wheels, buttons, etc. These buttons may include but are not limited to: a home button, a volume button, a start button, and a lock button.

[0142] The sensor assembly 814 includes one or more sensors for providing various aspects of status assessment for the computing device 800. For example, the sensor assembly 814 can detect the open / closed state of the computing device 800, the relative positioning of components, such as the display and keypad of the computing device 800, and the sensor assembly 814 can also detect the position change of the computing device 800 or a component of the computing device 800, the presence or absence of user contact with the computing device 800, the orientation or acceleration / deceleration of the computing device 800, and the temperature change of the computing device 800. The sensor assembly 814 may include a proximity sensor configured to detect the presence of a nearby object without any physical contact. The sensor assembly 814 may also include an optical sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 814 may also include an accelerometer, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.

[0143] The communication component 816 is configured to facilitate wired or wireless communication between the computing device 800 and other devices. The computing device 800 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, or a combination thereof. In an exemplary embodiment, the communication component 816 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 816 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.

[0144] In an exemplary embodiment, the computing device 800 may be implemented by one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the above methods.

[0145] Example 4

[0146] According to another aspect of the present invention, a computer-readable storage medium is provided, which stores a computer program. When the computer program is executed by a processor, a method for quickly searching for massive geometric points based on a two-dimensional non-uniform grid is provided.

[0147] For example, the memory 804 includes computer program instructions that can be executed by the processor 820 of the computing device 800 to perform the above-mentioned methods.

[0148] The method comprises the following steps:

[0149] Step 1: Traverse all geometric points, sort them based on the geodetic coordinates of all geometric points, and establish a two-dimensional non-uniform grid index;

[0150] Step 2: Get the device coordinates, and obtain the geodetic coordinates of the geometric point to be found through device coordinate conversion;

[0151] Step 3: Based on the two-dimensional non-uniform grid index and the geodetic coordinates of the geometric point, and according to the index of the geometric point in the seismic data array, obtain the seismic data information corresponding to the geometric point.

[0152] In some implementations, in step 1, the geodetic coordinates of all geometric points are unique, that is, there is only one geometric point on each (X, Y) coordinate.

[0153] In some implementations, in step 1, the associative container Map in the C++ Standard Template Library is used to sort the geodetic coordinates of all geometric points.

[0154] In some implementations, in step 1, establishing a two-dimensional non-uniform grid index specifically includes: traversing all geometric points, using the Y coordinate as the key and the index of the geometric point in the one-dimensional array Attribute as the key value to construct a first-level Map<int,int> YMap, then use the X coordinate as the key and the above first-level Map as the key value to build a second-level Map<int,YMap> XMap,After constructing the above-mentioned secondary Map, a set of two-dimensional non-uniform grids is divided at the positions corresponding to the X and Y coordinates of all geometric points in the entire work area.

[0155] In some implementations, in step 2, the device coordinates of the geometric point to be found on the screen are obtained by moving the mouse.

[0156] In some implementations, in step 2, when the mouse approaches a certain geometric point, the device coordinates are allowed to have a visual error range of 3 pixels.

[0157] In some embodiments, step 3 specifically includes:

[0158] Step 3a: Search in the X direction according to the X coordinate of the geometric point. If the corresponding X grid point is found, obtain all the grid points in the Y direction on the corresponding X grid point and execute step 3b. Otherwise, obtain all the Y grid points corresponding to the adjacent X grid points before and after the X coordinate and execute step 3b again.

[0159] Step 3b: Search in the Y direction according to the Y coordinate of the geometric point. If the corresponding Y grid point is found, obtain the seismic data array index on the corresponding Y grid point; otherwise, obtain the seismic data array index corresponding to the nearest grid point.

[0160] In some implementations, after step 3, the method further includes: displaying or processing the seismic data information corresponding to the geometric points.

[0161] Figure 6 1 shows a block diagram of an electronic device 1900 according to an embodiment of the present invention. For example, the electronic device 1900 may be provided as a server or a terminal. Figure 6 , the electronic device 1900 includes a processing unit 1922, which further includes one or more processors, and a memory resource represented by a storage unit 1932 for storing instructions executable by the processing unit 1922, such as an application. The application stored in the storage unit 1932 may include one or more modules, each corresponding to a set of instructions. In addition, the processing unit 1922 is configured to execute the instructions to perform the above method.

[0162] The electronic device 1900 may further include a power supply unit 1926 configured to perform power management of the electronic device 1900, a wired or wireless network interface 1950 configured to connect the electronic device 1900 to a network, and an input / output interface 1958. The electronic device 1900 may operate based on an operating system stored in the storage unit 1932, such as Windows Server™, Mac OS X™, Unix™, Linux™, FreeBSD™ or the like.

[0163] In an exemplary embodiment, a non-volatile computer-readable storage medium is also provided, such as a storage unit 1932 including computer program instructions, which can be executed by the processing unit 1922 of the electronic device 1900 to perform the above method.

[0164] The present invention may be a system, a method and / or a computer program product. The computer program product may include a computer-readable storage medium carrying computer-readable program instructions for causing a processor to implement various aspects of the present invention.

[0165] A computer-readable storage medium may be a tangible device that can hold and store instructions used by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples of computer-readable storage media (a non-exhaustive list) include: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanical encoding device, such as a punch card or a raised structure in a groove on which instructions are stored, and any suitable combination of the foregoing. As used herein, a computer-readable storage medium is not to be interpreted as a transient signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., a light pulse through a fiber optic cable), or an electrical signal transmitted through a wire.

[0166] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium in each computing / processing device.

[0167] The computer program instructions for performing the operation of the present invention may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages, such as Smalltalk, C++, etc., and conventional procedural programming languages, such as "C" language or similar programming languages. Computer-readable program instructions may be executed entirely on a user's computer, partially on a user's computer, as an independent software package, partially on a user's computer, partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., using an Internet service provider to connect via the Internet). In some embodiments, an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), may be personalized by utilizing the state information of the computer-readable program instructions, and the electronic circuit may execute the computer-readable program instructions, thereby realizing various aspects of the present invention.

[0168] Various aspects of the present invention are described herein with reference to the flow charts and / or block diagrams of the methods, devices (systems) and computer program products according to embodiments of the present invention. It should be understood that each box of the flow chart and / or block diagram and the combination of each box in the flow chart and / or block diagram can be implemented by computer-readable program instructions.

[0169] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processor of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0170] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operating steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0171] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple embodiments of the present invention. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of the module, program segment or instruction includes one or more executable instructions for realizing the specified logical function. In some alternative implementations, the function marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs the specified function or action, or can be implemented with a combination of special hardware and computer instructions.

[0172] The computer program product may be implemented in hardware, software or a combination thereof. In one optional embodiment, the computer program product is embodied as a computer storage medium, and in another optional embodiment, the computer program product is embodied as a software product, such as a software development kit (SDK) and the like.

[0173] Example 5

[0174] The method and device for quickly searching for massive geometric points based on a two-dimensional non-uniform grid in the embodiment of the present invention enable software users to quickly and efficiently obtain and process comprehensive and rich seismic data information on two-dimensional plane scattered point graphics such as work area base maps and plane attributes through human-computer interaction. According to the above description, when the number of geometric points is N x ×N y = N, the search time complexity of this method is approximately O(log 2 N x +log 2 N y ), or much less than 2log 2N. To verify the technical effects of the present invention, seismic data collected in the field were selected for testing. When the number of receiving points reaches the billion level, the search efficiency of the search method and device in the embodiments of the present invention is about 100 times higher than that of the geometric point fast indexing method based on a two-dimensional uniform grid. This will greatly improve the efficiency and stability of the seismic data processing system and increase the benefits for promoting the oil and gas exploration and development industry.

[0175] It can be understood that the above-mentioned embodiments mentioned in the present invention can be combined with each other to form a combined embodiment without violating the principle logic. Due to space limitations, the present invention will not elaborate further. Those skilled in the art can understand that in the above method of the specific implementation manner, the specific execution order of each step should be determined according to its function and possible internal logic.

[0176] Note that unless otherwise directly stated, all features disclosed in this specification (including any appended claims, abstract, and drawings) can be replaced by alternative features for achieving the same, equivalent, or similar purposes. Therefore, unless otherwise clearly stated, each disclosed feature is only an example of a group of equivalent or similar features. When used, further, preferably, furthermore, and more preferably are simple beginnings for elaborating another embodiment based on the foregoing embodiment. The content following the further, preferably, furthermore, or more preferably in combination with the foregoing embodiment constitutes a complete composition of another embodiment. The several further, preferably, furthermore, or more preferably settings following the same embodiment can be arbitrarily combined to form another embodiment.

[0177] Those skilled in the art should understand that the embodiments of the present invention described above and shown in the drawings are only examples and do not limit the present invention. The object of the present invention has been fully and effectively achieved. The function and structural principle of the present invention have been demonstrated and explained in the embodiments. Without departing from the said principle, the embodiments of the present invention can have any deformation or modification.

[0178] Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present invention, not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or perform equivalent replacements for some or all of the technical features; and these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.

Claims

1. A fast searching method for a large number of geometric points based on a two-dimensional non-uniform grid, characterized in that, it includes the following steps: Step 1: Traverse all geometric points, sort them based on the geodetic coordinates of all geometric points, and establish a two-dimensional space non-uniform grid index; Step 2: Obtain the device coordinates, and obtain the geodetic coordinates of the geometric points to be searched through device coordinate conversion; Step 3: Based on the two-dimensional space non-uniform grid index and the geodetic coordinates of the geometric points, and according to the index of the geometric points in the seismic data array, obtain the seismic data information of the corresponding geometric points.

2. The fast searching method for a large number of geometric points based on a two-dimensional non-uniform grid according to claim 1, characterized in that, in the step 1, the geodetic coordinates of all geometric points are unique, that is, there is only one geometric point on each (X, Y) coordinate.

3. The fast searching method for a large number of geometric points based on a two-dimensional non-uniform grid according to claim 1, characterized in that, in the step 1, the associated container Map in the C++ standard template library is used to sort the geodetic coordinates of all geometric points.

4. The fast searching method for a large number of geometric points based on a two-dimensional non-uniform grid according to claim 3, characterized in that, in the step 1, establishing the two-dimensional space non-uniform grid index specifically includes: traversing all geometric points, constructing a first-level Map<int, int> YMap with the Y coordinate as the keyword key and the index Index of the geometric point in the one-dimensional array Attribute as the key value value, and then constructing a second-level Map<int, YMap> XMap with the X coordinate as the keyword key and the above first-level Map as the key value value. After constructing the above second-level Map, within the entire work area, a set of two-dimensional non-uniform grids are divided at the positions of the X and Y coordinates corresponding to all geometric points.

5. The fast searching method for a large number of geometric points based on a two-dimensional non-uniform grid according to claim 1, characterized in that, in the step 2, the device coordinates of any geometric point to be searched on the screen are obtained by moving the mouse.

6. The fast searching method for a large number of geometric points based on a two-dimensional non-uniform grid according to claim 5, characterized in that, in the step 2, when the mouse approaches a certain geometric point, the device coordinates are allowed to have an error range of 3 pixels visually.

7. The fast searching method for a large number of geometric points based on a two-dimensional non-uniform grid according to claim 1, characterized in that, the step 3 specifically includes: Step 3a: Search in the X direction according to the X coordinate of the geometric point. If the corresponding X grid point is found, obtain all grid points in the Y direction on the corresponding X grid point, and execute step 3b. Otherwise, obtain all Y grid points corresponding to the adjacent X grid points before and after the X coordinate, and then execute step 3b; Step 3b: Search in the Y direction according to the Y coordinate of the geometric point. If the corresponding Y grid point is found, obtain the index of the seismic data array on the corresponding Y grid point. Otherwise, obtain the index of the seismic data array corresponding to the nearest grid point.

8. The fast searching method for a large number of geometric points based on a two-dimensional non-uniform grid according to claim 1, characterized in that, After the step 3, it further includes: displaying or processing the seismic data information corresponding to the geometric points.

9. A fast searching device for a large number of geometric points based on a two-dimensional non-uniform grid, characterized in that it includes: a building module, configured to traverse all geometric points, sort them based on the geodetic coordinates of all geometric points, and build a two-dimensional space non-uniform grid index; a searching module, configured to obtain device coordinates and obtain the geodetic coordinates of the geometric points to be searched through device coordinate conversion; a mapping module, configured to obtain the seismic data information corresponding to the geometric points based on the two-dimensional space non-uniform grid index and the geodetic coordinates of the geometric points, and according to the index of the geometric points in the seismic data array.

10. A fast searching device for a large number of geometric points based on a two-dimensional non-uniform grid, characterized in that it includes: a processor; a memory for storing instructions executable by the processor; wherein, the processor is configured to call the instructions stored in the memory to execute the fast searching method for a large number of geometric points based on a two-dimensional non-uniform grid according to any one of claims 1 to 8.