Map data fusion method, device, storage medium and electronic device
By dividing the target map into multiple target sub-maps and only fusing the data blocks that match the target sub-maps, the problem of low data merging efficiency in geographic information surveying and mapping is solved, and fast and efficient data merging is achieved.
Patent Information
- Application Number
- CN202210729816.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-24
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2042-06-24
AI Technical Summary
In the prior art, repeated mapping of the same area or intersecting mapping of multiple plots in geographic information mapping leads to low data merging efficiency and high computational complexity.
The target map is divided into multiple target sub-maps, and only the data blocks that match the target sub-maps are merged. The overlapping areas are determined by boundary information, which reduces the number of overlapping judgments and improves the merging efficiency.
By dividing and merging target sub-maps, the number of data block overlap judgments can be significantly reduced, the amount of calculation can be reduced, the efficiency of data merging can be improved, and massive geographic area information can be quickly merged.
Smart Images

Figure CN114996385B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data processing, and more specifically, to a map data fusion method, device, storage medium, and electronic device. Background Art
[0002] Geographic information surveying and mapping is currently an important means of obtaining map information. In geographic information surveying and mapping scenarios, plots in the same area may be surveyed repeatedly or multiple plots may intersect. With each survey and mapping plan, geographic boundary information is stored in each row of database data. Existing requirements necessitate organizing this geographic area information in the database, merging intersecting areas to form a new region, and calculating the final survey and mapping planning boundary.
[0003] How to quickly and accurately complete the data block merging has become a difficult problem that technical personnel in this field are concerned about. Summary of the Invention
[0004] The purpose of this application is to provide a map data fusion method, device, storage medium and electronic device to at least partially improve the above-mentioned problems.
[0005] In order to achieve the above objectives, the technical solutions adopted in the embodiments of the present application are as follows:
[0006] In a first aspect, an embodiment of the present application provides a map data fusion method, the method comprising:
[0007] Fuse the data blocks matched by the target submap to combine any data blocks with overlapping areas;
[0008] The matching indicates that the target submap at least partially overlaps with the data plot, the target submap is any partition in the target map, and the target map covers all data plots;
[0009] The fused independent data blocks in the target sub-map are saved as fusion results, wherein the independent data blocks are fused data blocks that are completely contained in the target sub-map.
[0010] In a second aspect, an embodiment of the present application provides a map data fusion device, the device comprising:
[0011] a processing unit for fusing the data blocks matched by the target submap to combine any data blocks with overlapping areas;
[0012] The matching indicates that the target submap at least partially overlaps with the data plot, the target submap is any partition in the target map, and the target map covers all data plots;
[0013] The storage unit is used to save the fused independent data blocks in the target sub-map as fusion results, wherein the independent data blocks are fused data blocks that are completely contained in the target sub-map.
[0014] In a third aspect, an embodiment of the present application provides a storage medium on which a computer program is stored, and the computer program implements the above method when executed by a processor.
[0015] In a fourth aspect, an embodiment of the present application provides an electronic device, comprising: a processor and a memory, wherein the memory is used to store one or more programs; when the one or more programs are executed by the processor, the above-mentioned method is implemented.
[0016] Compared to the prior art, the map data fusion method, device, storage medium, and electronic device provided in the embodiments of the present application include: fusing the data blocks matched by the target submap to combine any data blocks with overlapping areas; wherein the matching represents the target submap as at least partially overlapping with the data block, the target submap is any partition in the target map, and the target map covers all data blocks; saving the fused independent data blocks in the target submap as the fusion result, wherein the independent data block is the fused data block that is completely contained in the target submap. By dividing the target map into multiple target submaps and fusing only the data blocks matched by the target submap, the number of data block overlap judgments is greatly reduced, the amount of calculation is reduced, and the merging efficiency is improved.
[0017] In order to make the above-mentioned objects, features and advantages of the present application more obvious and easy to understand, preferred embodiments are given below and described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments. It should be understood that the following drawings only illustrate certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other relevant drawings can be obtained based on these drawings without creative work.
[0019] Figure 1 This is one of the schematic diagrams of the overlapping state between the data block and the target map provided in the embodiment of the present application;
[0020] Figure 2A schematic diagram of the connection of an electronic device provided in an embodiment of the present application;
[0021] Figure 3 A flowchart of a map data fusion method provided in an embodiment of the present application;
[0022] Figure 4 This is one of the schematic diagrams of the overlapping state between the data block and the target map provided in the embodiment of the present application;
[0023] Figure 5 This is one of the schematic diagrams of the overlapping state between the data block and the target map provided in the embodiment of the present application;
[0024] Figure 6 This is a flowchart of a map data fusion method according to an embodiment of the present application;
[0025] Figure 7 A schematic diagram of the sub-steps of S103 provided in an embodiment of the present application;
[0026] Figure 8 A schematic diagram of the sub-steps of S103-1 provided in an embodiment of the present application;
[0027] Figure 9 This is one of the sub-step schematic diagrams of S103-1 provided in an embodiment of the present application;
[0028] Figure 10 This is one of the schematic diagrams of the overlapping state between the data block and the target map provided in the embodiment of the present application;
[0029] Figure 11 This is a flowchart of a map data fusion method according to an embodiment of the present application;
[0030] Figure 12 This is a flowchart of a map data fusion method according to an embodiment of the present application;
[0031] Figure 13 This is one of the schematic diagrams of the distribution of boundary data plots provided in the embodiment of the present application;
[0032] Figure 14 A unit schematic diagram of a map data fusion device provided in an embodiment of the present application.
[0033] In the figure: 10 - processor; 11 - memory; 12 - bus; 13 - communication interface; 201 - processing unit; 202 - storage unit. DETAILED DESCRIPTION
[0034] To make the objectives, technical solutions, and advantages of the embodiments of the present application more clear, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the accompanying drawings of the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Generally, the components of the embodiments of the present application described and shown in the drawings herein can be arranged and designed in various different configurations.
[0035] Therefore, the following detailed description of the embodiments of the present application provided in the accompanying drawings is not intended to limit the scope of the present application for protection, but merely represents selected embodiments of the present application. All other embodiments obtained by persons of ordinary skill in the art based on the embodiments in the present application without creative work are within the scope of protection of the present application.
[0036] It should be noted that similar reference numerals and letters represent similar items in the following drawings. Therefore, once an item is defined in one drawing, it does not need to be further defined or explained in subsequent drawings. At the same time, in the description of this application, the terms "first", "second", etc. are only used to distinguish the description and should not be understood as indicating or implying relative importance.
[0037] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply the existence of any such actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or device comprising the element.
[0038] In the description of this application, it should be noted that the terms "upper", "lower", "inside", "outside", etc. indicate orientations or positional relationships based on the orientations or positional relationships shown in the accompanying drawings, or are the orientations or positional relationships in which the product of the application is usually placed when in use. They are only for the convenience of describing this application and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation. Therefore, they should not be understood as limitations on this application.
[0039] It should also be noted that, in the description of this application, unless otherwise expressly specified or limited, the terms "disposed" and "connected" should be understood in a broad sense. For example, they can refer to fixed connections, detachable connections, or integral connections; mechanical connections, or electrical connections; direct connections, indirect connections through an intermediate medium, or internal connections between two components. Those skilled in the art will understand the specific meanings of the above terms in this application based on the specific circumstances.
[0040] The following describes some embodiments of the present application in detail with reference to the accompanying drawings. In the absence of conflict, the following embodiments and features therein may be combined with each other.
[0041] In one possible implementation, all geographic data blocks in the database can be taken out and divided into two arrays, A and B. Array A serves as the outermost layer of the loop, and continuously performs intersection judgment and merging with the geographic data in array B.
[0042] When geographical data is widely distributed and there are hundreds of thousands or even millions of geographical data blocks, the time complexity of the above merging method is very high and the efficiency is very low. Figure 1 As shown, Figure 1 This is one of the schematic diagrams of the overlap between the data plots and the target map provided in this embodiment. Plot A clearly does not intersect with Plots B, C, and D. However, because the aforementioned merging method requires a recursive traversal intersection check, this results in redundant traversal checks between A, B, C, and D. With massive amounts of data, these redundant checks could amount to hundreds of thousands to millions of times, significantly reducing merging efficiency.
[0043] In order to overcome the problems of low merging efficiency and complex calculation, the embodiment of the present application provides an electronic device, which can be a PC terminal device, a server device, a smart phone terminal, or other processing terminal with computing capabilities. Figure 2 , a schematic diagram of the structure of an electronic device. The electronic device includes a processor 10, a memory 11, and a bus 12. The processor 10 and the memory 11 are connected via the bus 12. The processor 10 is used to execute executable modules stored in the memory 11, such as computer programs.
[0044] The processor 10 can be an integrated circuit chip with signal processing capabilities. During implementation, each step of the map data fusion method can be completed by the hardware integrated logic circuit in the processor 10 or by software instructions. The above-mentioned processor 10 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components.
[0045] The memory 11 may include a high-speed random access memory (RAM), and may also include a non-volatile memory, such as at least one disk memory.
[0046] The bus 12 may be an ISA (Industry Standard Architecture) bus, a PCI (Peripheral Component Interconnect) bus, or an EISA (Extended Industry Standard Architecture) bus. Figure 2 Only one bidirectional arrow is used in the figure, but it does not mean that there is only one bus 12 or one type of bus 12.
[0047] The memory 11 is used to store programs, such as a program corresponding to a map data fusion device. The map data fusion device includes at least one software functional module, which can be stored in the memory 11 in the form of software or firmware, or embedded in the operating system (OS) of the electronic device. Upon receiving an execution instruction, the processor 10 executes the program to implement the map data fusion method.
[0048] Possibly, the electronic device provided in the embodiment of the present application further includes a communication interface 13. The communication interface 13 is connected to the processor 10 via a bus.
[0049] It should be understood that Figure 2 The structure shown is only a schematic diagram of a portion of the electronic device. The electronic device may also include Figure 2More or fewer components than shown, or with Figure 2 Different configurations shown. Figure 2 Each component shown in the figure can be implemented by hardware, software or a combination thereof.
[0050] The map data fusion method provided in the embodiment of the present application can be applied to, but not limited to, Figure 2 For detailed procedures, please refer to the electronic equipment shown in Figure 3 ,The map data fusion method includes : S104 and S105 , which are described in detail as follows.
[0051] S104: Fusing the data blocks matched by the target sub-map to combine any data blocks with overlapping areas.
[0052] The matching representation target submap is at least partially overlapped with the data plot, the target submap is any partition in the target map, and the target map covers all data plots.
[0053] Optionally, the target map is the minimum bounding rectangle area covering all the data blocks to be merged, thereby ensuring that any data block to be merged matches at least one target sub-map, thereby ensuring that it will not be missed.
[0054] It should be understood that the boundary information of the data block to be merged and the boundary information of the target sub-map can be used to determine the overlap between the two and further determine whether they match. In one possible implementation, the boundary information includes coordinate information of the boundary points.
[0055] Optionally, the target map is divided into at least two target sub-maps, and there is no overlapping area between the target sub-maps.
[0056] S105: Save the fused independent data blocks in the target sub-map as fusion results.
[0057] Among them, the independent data block is the fused data block that is completely contained in the target sub-map.
[0058] Optionally, the fused data block does not cross the sub-map boundary and only belongs to a certain target sub-map, and can be used as an independent data block. Figure 4 As shown, Figure 4This is one of the schematic diagrams of the overlapping state between the data plots and the target map provided in the embodiment of the present application. Data plot A and data plot B in the first target sub-map overlap. Data plot A and data plot B can be fused to obtain fused data plot AB. The fused data plot AB is completely inside the first target sub-map. The fused data plot AB is an independent data block and is saved as the fusion result. Similarly, data plot D and data plot H do not have any overlapping plots and are not on the boundary. They are not fused and are also saved as independent data blocks as the fusion result.
[0059] It should be understood that by dividing the target map into multiple target sub-maps, multiple rounds of dividing the blocks (sub-maps) are internally fused, that is, when traversing whether the data blocks overlap, it is only necessary to traverse whether the data blocks matched by one target sub-map overlap, which greatly reduces the number of traversals. Figure 4 As shown, data block A in the first target submap only needs to be judged for overlap with data block B in the first target submap. It does not need to be judged for overlap with data block D in the second target submap or data block H in the fourth target submap. This greatly reduces the number of overlap judgments, reduces the amount of calculation, and improves the merging efficiency.
[0060] In summary, the map data fusion method provided by the embodiment of the present application includes: fusing the data blocks matched by the target submap to combine any data blocks with overlapping areas; wherein the matching represents the target submap as at least partially overlapping with the data block, the target submap is any partition in the target map, and the target map covers all data blocks; and saving the fused independent data blocks in the target submap as the fusion result, wherein the independent data block is the fused data block that is completely contained in the target submap. By dividing the target map into multiple target submaps and fusing only the data blocks matched by the target submap, the number of data block overlap judgments is greatly reduced, the amount of calculation is reduced, and the merging efficiency is improved.
[0061] It should be noted that, in one possible implementation, after the current round of fusion is completed, there may still be boundary data blocks. Figure 5 , Figure 5One of the schematic diagrams of the overlapping state between the data blocks and the target map provided in the embodiment of the present application. Data block C is on the boundary and does not belong to an independent data block. The data block F matched by the third target submap and the fused data block EF corresponding to the data block E are on the boundary between the third target submap and the fourth target submap. The data block G matched by the fourth target submap and the fused data block EG corresponding to the data block E are on the boundary between the third target submap and the fourth target submap. Therefore, the fused data block EG and the fused data block EF do not belong to independent data blocks and can be determined as boundary data blocks. Regarding how to further complete the fusion of boundary data blocks and avoid the situation where the fused data block EG and the fused data block EF are stored separately, please refer to the following.
[0062] exist Figure 3 On the basis of how to determine the matching relationship between the data block and the target sub-map, the embodiment of this application also provides a possible implementation method, please refer to Figure 6 Before S104, the map data fusion method further includes: S102 and S103, which are specifically described as follows.
[0063] S102: Divide the target map into a preset number of target sub-maps.
[0064] It should be understood that Figure 4 and Figure 5 The target submaps shown are all of the same size and shape, but this is not a limitation, and the target submaps may also have different sizes and shapes.
[0065] S103 : Determine the target sub-map that matches each data block based on the boundary information of the data block and the boundary information of the target sub-map.
[0066] Optionally, the target sub-map that matches each data block is determined by traversing and overlapping the boundary information of the data block with the boundary information of each target sub-map.
[0067] It should be understood that a data block can be matched with one target sub-map or with multiple sub-maps at the same time. Figure 5 As shown, data plot C matches both the first target submap and the second target submap, and data plot E matches both the third target submap and the fourth target submap.
[0068] exist Figure 6 On the basis of how to determine the target sub-map that the data block matches through boundary information, the embodiment of this application also provides a possible implementation method, please refer to Figure 7 , S103 includes: S103-1 and S103-2, which are described in detail as follows.
[0069] S103-1, determining the overlapping status between the data block and each target sub-map in sequence according to the boundary information.
[0070] It should be understood that S103-1 is executed after S102. Figure 4 and Figure 5 Taking data block A in the example, the boundary information of data block A can be judged to intersect or overlap with the boundary information of each target submap respectively, so that it can be determined that only the first target submap overlaps with data block A, and the same applies to other data blocks.
[0071] Optionally, multi-threading can be enabled to traverse the overlapping state between the data block and the target sub-map to determine whether the data block and the target sub-map overlap.
[0072] S103-2, determining the target sub-map that each data block matches based on the overlapping status.
[0073] It should be understood that after determining that the data block overlaps with the target submap, the corresponding matching relationship can be determined. The matching relationship indicates that the target submap at least partially overlaps with the data block, which can be complete overlap or partial overlap.
[0074] It should be understood that after S103 - 2 , S104 may be executed to fuse the data blocks matched by the target sub-map, so as to combine any data blocks with overlapping areas.
[0075] It should be noted that in Figure 7 In the provided method, it is necessary to determine the overlap between the data block and each target sub-map, and the amount of calculation is still large. Figure 7 On the basis of how to further reduce the amount of calculation and improve the merging efficiency, the embodiment of this application also provides a possible implementation method, please refer to Figure 8 , S103-1 includes: S103-1A, S103-1B, S103-1F, S103-1G and S103-1H, which are described in detail as follows.
[0076] S103-1A: Determine the overlapping state between the data block and the i-th target submap based on the boundary information.
[0077] Wherein, 1≤i≤N, N represents the preset number.
[0078] It should be understood that the overlapping state includes complete overlap, partial overlap and no overlap, for example Figure 4 and Figure 5Data plot A in the figure completely overlaps with the first target submap, data plot C partially overlaps with the first target submap and the second target submap respectively, and data plot A does not overlap with the second target submap, the third target submap, and the fourth target submap at all.
[0079] S103-1B, determine whether the data block completely overlaps with the i-th target submap. If so, execute S103-1H; if not, execute S103-1F.
[0080] It should be understood that when the data parcel completely overlaps with the i-th target submap, for example, data parcel A completely overlaps with the first target submap, and the submaps do not overlap, data parcel A does not overlap with any other target submaps. Therefore, there is no need to confirm the overlap status of data parcel A, and S103-1H is executed. Conversely, if the data parcel does not completely overlap with the i-th target submap, it is necessary to further determine the overlap relationship between the data parcel and the other target submaps, and S103-1F is executed.
[0081] For example, when it is determined that data plot D does not overlap with the first target sub-plot, the overlapping status between data plot D and the second target sub-plot is then determined; or, when it is determined that data plot C partially overlaps with the first target sub-plot, the overlapping status between data plot C and the second target sub-plot is then determined.
[0082] S103-1F, let i=i+1.
[0083] S103-1G, determine whether i is greater than N. If so, execute S103-1H; if not, execute S103-1A.
[0084] It should be understood that when i is greater than N, the traversal is complete, for example, the overlap between data block E and all target submaps has been determined. At this point, confirming the overlap status of the data blocks can be stopped; otherwise, further determination is required, and S103-1A is executed.
[0085] S103-1H, stop confirming the overlapping status of the data blocks.
[0086] It should be noted that the data block completely overlaps with the i-th target submap, and the submaps do not overlap with each other, so the data block will not overlap with other target submaps. At this time, stopping to confirm the overlapping status of the data block can reduce unnecessary calculations and thus improve the merging efficiency.
[0087] It should be understood that after S103 - 1H, S103 - 2 may be executed.
[0088] If the side lengths of all target submaps are the same, that is, the shapes and sizes are the same, then Figure 8 On the basis of how to further reduce the amount of calculation, the embodiment of the present application also provides a possible implementation method, please refer to Figure 9 , S103-1 also includes: S103-1C, S103-1D and S103-1E, which are described in detail as follows.
[0089] S103-1C: Determine whether the data block and the i-th target submap do not overlap at all. If so, execute S103-1F; if not, execute S103-1D.
[0090] It should be understood that if S103-1B is negative, it indicates that the data block does not completely overlap with the i-th target submap. S103-1C is then executed. If the data block does not completely overlap with the i-th target submap, the overlap between the data block and the (i+1)-th target submap needs to be determined, and S103-1F is executed. If the data block partially overlaps with the i-th target submap, it is possible that the data block only overlaps with part of the target submap. Traversing the data block and all target submaps once may result in invalid calculations, increasing the amount of invalid calculations and affecting merging efficiency. Therefore, if the data block partially overlaps with the i-th target submap, S103-1D can be executed.
[0091] S103-1D, determining an estimated overlap amount based on the first length and the second length.
[0092] The first length is the diagonal length of the minimum circumscribed rectangle of the data block, the second length is equal to the shortest side length of the target submap, and the estimated overlap number is the estimated number of target submaps that at least partially overlap with the data block.
[0093] Alternatively, refer to Figure 10 , Figure 10 This is one of the schematic diagrams of the overlapping state between the data block and the target map provided in the embodiment of this application. Figure 10 As shown, data block A overlaps with multiple target submaps. Get the length m of the minimum circumscribed rectangle of data block A and the shortest side length n of the target submap, calculate the value d of m / n rounded down, and use the formula d*2+4 to get the maximum number of sub-blocks that data block A can be included in. Figure 10 As shown on the left, A is the minimum enclosing rectangle. In this case, the diagonal length of the enclosing rectangle is less than the minimum side length of the target submap. The value of m / n is rounded down to 0, which means the estimated overlap number = 0*2+4=4, that is, data block A overlaps with at most 4 target submaps. Figure 10As shown on the right, the diagonal length of the minimum enclosing rectangle A is greater than the minimum length of the two target submaps and less than the minimum length of the three target submaps. The value of m / n is rounded down to 2, which means the estimated number of overlaps = 2*2+4=8, that is, data block A overlaps with at most 8 target submaps.
[0094] After obtaining the estimated overlap number, in the subsequent traversal matching, if it is determined that the data block partially overlaps with the target submap with the estimated overlap number, the overlap status between the data block and other target submaps is determined, which reduces the amount of calculation.
[0095] S103-1E: Determine whether the number of target submaps partially overlapping with the data block is less than the estimated overlap number. If so, execute S103-1F; if not, execute S103-1H.
[0096] It should be understood that if the number of target submaps partially overlapping with the data block is greater than or equal to the estimated overlap number, it indicates that the data block no longer overlaps with other target submaps, and S103-1H can be executed. Conversely, if the number of target submaps partially overlapping with the data block is less than the estimated overlap number, further determination is required, and S103-1F is executed.
[0097] In one possible implementation, to avoid repeated determination of the estimated overlap amount, S103-1D may be executed only when the first target submap that partially overlaps with the data block is determined, and the estimated overlap amount may be determined based on the first length and the second length. Alternatively, when it is determined that the data block partially overlaps with the i-th target submap, a determination is made as to whether a corresponding estimated overlap amount exists for the data block. If so, S103-1E is executed directly; if not, S103-1D is executed.
[0098] In order to facilitate the merging of target submaps in subsequent rounds, the present application embodiment also provides a possible implementation method for the value of the preset number N, where N=2 k , k is greater than or equal to 1.
[0099] The value of the preset number will affect the efficiency of grouping and merging data plots on the map. If the initial value of the preset number is too small when the data plots are dense, a large number of data plots may exist on a target submap, reducing the merging efficiency. If the initial value of the preset number is too large when the data plots are sparse, a large number of useless target submaps will appear, which will also reduce the efficiency of intersection and merging.
[0100] exist Figure 6 On the basis of how to determine the preset number, the embodiment of the present application also provides a possible implementation method, such as Figure 11 As shown, before S102, the map data fusion method further includes: S101, which is described in detail as follows.
[0101] S101 , determining a preset number according to the size of the target map, the number of data blocks, and the distribution status of the data blocks.
[0102] Optionally, the size of the target map, the number of data plots, and the distribution status of the data plots are used as inputs to a pre-trained neural network model to output a preset number.
[0103] In one possible implementation, the preset number may be manually set by a staff member based on past experience.
[0104] As Figure 5 As shown in , after the current round of fusion is completed, there may still be boundary data blocks, such as fused data block EG and fused data block EF. Figure 5 It can be seen that there are still overlapping and intersecting parts between the fused data blocks EG and the fused data blocks EF, and the fused data blocks EG and the fused data blocks EF should be further fused.
[0105] Therefore, in Figure 3 On the basis of, in order to avoid the situation of incomplete fusion, the embodiment of the present application also provides a possible implementation method, please refer to Figure 12 After S105 , the map data fusion method further includes: S106 , S107 and S108 , which are described in detail as follows.
[0106] S106: Determine whether there is a matching boundary data block in the target sub-map. If not, end; if so, execute S107.
[0107] The boundary data blocks are data blocks that partially overlap with the target submap.
[0108] Please refer to Figure 5 The boundary data blocks are, for example, data block C, fused data block EG, and fused data block EF.
[0109] After S105, all target sub-maps do not have matching boundary data blocks, such as Figure 4 When it is shown, it means that all overlapping data blocks have been merged and the fusion is complete, and you can exit. Figure 5 As shown, when any target sub-map has a matching boundary data block, further fusion is required, and S107 is executed.
[0110] S107: Delete the independent data block from the target sub-map.
[0111] For example, Figure 5 The fused data blocks AB, D, and H are deleted, and the target submap only contains boundary data blocks or is empty. It should be noted that the fused data blocks AB, D, and H have been saved in S105.
[0112] S108: Merge two adjacent target submaps in the current fusion round as the target submap in the next fusion round.
[0113] For example, Figure 5 The third target submap and the fourth target submap in are merged as a new target submap, and the fused data block EG and the fused data block EF completely overlap with the new target submap.
[0114] Specifically, please refer to Figure 13 , Figure 13 This is one of the boundary data plot distribution diagrams provided in the embodiment of this application. Figure 13 As shown on the left, there are 8 target submaps in the current fusion round, among which the data block F is the boundary data block of the 3rd target submap and the 4th target submap. The two adjacent target submaps in the current fusion round are merged as the target submap in the next fusion round, as shown in Figure 13 As shown on the right, the boundary data block F completely overlaps with the second target submap and is an independent data block.
[0115] After S108 , S104 is repeatedly executed to merge the data blocks matched by the target sub-map until there are no matching boundary data blocks in all target sub-maps.
[0116] It should be understood that in the subsequent rounds of fusion, the matching relationship can still be determined based on the boundary information, or the matching relationship of the boundary blocks in the previous fusion round can be used for deduction. Figure 5 Taking data plot C in as an example, data plot C matches the first target submap and the second target submap. In the new fusion round, data plot C matches the new target submap obtained by fusing with the first target submap and / or the second target submap.
[0117] In the map data fusion method provided in the embodiments of the present application, the user selects the range of plots to be statistically merged on the map. The electronic device queries the database for information on all plot areas within the range and quickly merges the data plots using the map data fusion method, splicing the originally discrete plot area information to obtain a complete plot area, allowing the operator to quickly determine the total contiguous area of the survey. Rapidly merging massive amounts of geographic area information and outputting new merged plots reduces the time complexity of merging massive amounts of geographic area information, improves the efficiency of merging massive data, and ultimately improves the efficiency of calculating the total boundary of the geographic area.
[0118] See also Figure 14 , Figure 14 A map data fusion device is provided in an embodiment of the present application. Optionally, the map data fusion device is applied to the electronic device described above.
[0119] The map data fusion device includes a processing unit 201 and a storage unit 202 .
[0120] The processing unit 201 is configured to fuse the data blocks matched by the target sub-map to combine any data blocks with overlapping areas;
[0121] The matching indicates that the target submap at least partially overlaps with the data plot, the target submap is any partition in the target map, and the target map covers all data plots;
[0122] The storage unit 202 is configured to store the fused independent data blocks in the target sub-map as fusion results, wherein the independent data blocks are fused data blocks that are completely contained in the target sub-map.
[0123] Optionally, the processing unit 201 may execute the above-mentioned S101-S104 and S106-S108, and the storage unit 202 may execute the above-mentioned S105.
[0124] It should be noted that the map data fusion device provided in this embodiment can execute the method flow shown in the above method flow embodiment to achieve the corresponding technical effects. For the sake of brevity, for parts not mentioned in this embodiment, please refer to the corresponding content in the above embodiment.
[0125] The present application also provides a storage medium storing computer instructions and programs that, when read and executed, execute the map data fusion method of the above embodiment. The storage medium may include memory, flash memory, registers, or a combination thereof.
[0126] The following provides an electronic device, which can be a PC terminal device, a server device, a smart phone terminal or other processing terminal with computing capabilities, such as Figure 2 As shown, the above-mentioned map data fusion method can be implemented. Specifically, the electronic device includes: a processor 10, a memory 11, and a bus 12. The processor 10 may be a CPU. The memory 11 is used to store one or more programs. When the one or more programs are executed by the processor 10, the map data fusion method of the above-mentioned embodiment is executed.
[0127] In the embodiments provided in this application, it should be understood that the disclosed devices and methods can also be implemented in other ways. The device embodiments described above are merely schematic. For example, the flowcharts and block diagrams in the accompanying drawings show the possible architectures, functions and operations of the devices, methods and computer program products according to multiple embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of the code, and the module, program segment or a part of the code contains one or more executable instructions for implementing the specified logical functions. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in an order different from that marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of boxes in the block diagram and / or flowchart, can be implemented using a dedicated hardware-based system that performs the specified function or action, or can be implemented using a combination of dedicated hardware and computer instructions.
[0128] In addition, the functional modules in each embodiment of the present application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.
[0129] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0130] The above description is merely a preferred embodiment of the present application and is not intended to limit the present application. Various modifications and variations are possible for those skilled in the art. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of the present application shall be included within the scope of protection of the present application.
[0131] It will be apparent to those skilled in the art that the present application is not limited to the details of the exemplary embodiments described above and that the present application can be implemented in other specific forms without departing from the spirit or essential characteristics of the present application. Therefore, the embodiments should be considered in all respects as illustrative and non-restrictive, and the scope of the present application is defined by the appended claims, not the foregoing description, and all variations within the meaning and range of equivalents of the claims are intended to be included therein. Any reference sign in a claim should not be construed as limiting the claim to which it relates.
Claims
1. A map data fusion method, characterized in that: The method comprises: Fuse the data blocks matched by the target submap to combine any data blocks with overlapping areas; The matching indicates that the target submap and the data plot at least partially overlap, the target submap is any partition in the target map, and the target map covers all data plots; Saving the fused independent data blocks in the target sub-map as fusion results, wherein the independent data blocks are fused data blocks that are completely contained in the target sub-map; When any target sub-map has a matching boundary data block, the independent data block is deleted from the target sub-map; The boundary data block is a data block partially overlapping with the target submap; Merge the two adjacent target submaps in the current fusion round as the target submap in the next fusion round; Repeat the fusion of the data blocks matched by the target submap until there are no matching boundary data blocks in all target submaps.
2. The map data fusion method according to claim 1, wherein: Before fusing the data blocks matched by the target sub-map, the method further includes: Dividing the target map into a preset number of target sub-maps; The target sub-map that matches each data block is determined according to the boundary information of the data block and the boundary information of the target sub-map.
3. The map data fusion method according to claim 2, wherein: The step of determining the target submap that matches each data block based on the boundary information of the data block and the boundary information of the target submap includes: determining the overlapping state between the data block and each of the target submaps in sequence according to the boundary information; The target sub-map that each data block matches is determined according to the overlapping status.
4. The map data fusion method according to claim 3, wherein: The step of sequentially determining the overlapping state between the data block and each of the target submaps based on the boundary information includes: Determine an overlapping state between the data block and the i-th target submap based on the boundary information, where 1≤i≤N, and N represents the preset number; When the data block completely overlaps with the i-th target submap, stopping confirming the overlapping status of the data block; When the data block does not completely overlap with the i-th target submap, let i=i+1, and repeatedly determine the overlapping state between the data block and the i-th target submap according to the boundary information.
5. The map data fusion method according to claim 4, wherein: The side lengths of all target submaps are consistent, and the step of sequentially determining the overlapping state between the data block and each target submap based on the boundary information further includes: When the data block partially overlaps with the i-th target submap, an estimated overlap amount is determined based on the first length and the second length; The first length is the diagonal length of the minimum circumscribed rectangle of the data block, the second length is equal to the shortest side length of the target submap, and the estimated overlap number is the estimated number of target submaps that at least partially overlap with the data block; When the number of target submaps partially overlapping with the data block is greater than or equal to the estimated overlap number, confirming the overlap status of the data block is stopped.
6. The map data fusion method according to claim 2, wherein: The preset number is N, N=2 k , k is greater than or equal to 1.
7. The map data fusion method according to claim 2, wherein: Before dividing the target map into a preset number of target sub-maps, the method further includes: The preset number is determined according to the size of the target map, the number of the data blocks, and the distribution status of the data blocks.
8. A map data fusion device, characterized in that: The device comprises: a processing unit for fusing the data blocks matched by the target submap to combine any data blocks with overlapping areas; The matching indicates that the target submap and the data plot at least partially overlap, the target submap is any partition in the target map, and the target map covers all data plots; a storage unit, configured to store the fused independent data blocks in the target sub-map as fusion results, wherein the independent data blocks are fused data blocks that are completely contained in the target sub-map; After saving the fused independent data blocks in the target submap as fusion results, the processing unit is further configured to delete the independent data blocks from the target submap when any target submap has a matching boundary data block; wherein the boundary data block is a data block that partially overlaps with the target submap; merge two adjacent target submaps in a current fusion round as the target submap in a next fusion round; and repeatedly fuse the data blocks matched by the target submaps until all target submaps have no matching boundary data blocks.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.
10. An electronic device, characterized in that: include: a processor and a memory, the memory being configured to store one or more programs; When the one or more programs are executed by the processor, the method according to any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Building block data merging method, device and equipment and storage medium
CN111737392A