Coding result optimization method of geocoding platform based on area constraints

By using a geocoding platform with surface constraints, conditional random fields and planar vector layers are used to filter effective surface units. By combining the coding results from multiple platforms, the problem of inaccurate coding results in existing technologies is solved, and higher-precision positioning is achieved.

CN120832394BActive Publication Date: 2025-12-02HOHAI UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511339395.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-09-18
Publication Date
2025-12-02
Estimated Expiration
2045-09-18

AI Technical Summary

Technical Problem

Existing geocoding platforms fail to effectively consider spatial boundary information when processing text addresses, resulting in encoding results that differ significantly from the actual location.

Method used

Using a geocoding platform based on area constraints, conditional random fields are used to segment text addresses, and area vector layers are combined for matching and judgment to select effective area units. The final encoding result is calculated by fusing the results of multiple encoding platforms.

Benefits of technology

It improves the accuracy of encoding results and reduces encoding errors, especially significantly improving positioning accuracy in the case of complex addresses.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120832394B_ABST
    Figure CN120832394B_ABST
Patent Text Reader

Abstract

This invention proposes a method for optimizing the coding results of a geocoding platform based on surface constraints, belonging to the field of geocoding result data processing technology. The method includes numbering the segments of the input text address after word segmentation according to their level from smallest to largest; and then... i If a sub-segment matches a surface cell, proceed to the next step if successful; otherwise, continue matching; if all matches fail, proceed to the next step; determine if the successfully matched surface cell in S2 is a "valid surface cell"; input the "valid text address" into the input field. n In each encoding platform, surface constraint processing is performed, and the final encoding result is output; the "invalid text address" is simultaneously input into... n In each encoding platform, the final encoded result is output. This method can ensure the accuracy of the encoding result through surface constraints.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of geocoding result data processing technology, specifically relating to a method for optimizing coding results of a geocoding platform based on area constraints. Background Technology

[0002] Geocoding is a technology that converts a textual description of an address into geographic coordinates. Current online geocoding platforms (such as Baidu, Tencent, Gaode, and Sogou) all rely on this geocoding technology to provide geographic coordinate services.

[0003] While existing encoding platforms can provide encoding results based on text addresses, they generally do not consider the spatial boundary information within the text address, leading to encoding results that deviate significantly from the actual location. For example, consider "Building 8, Area A, Yincheng Garden." Yincheng Garden consists of Area A and Area B, separated by internal roads. When a user inputs this text address into an encoding platform, if the platform ignores the spatial boundaries of the buildings, it might encode Building 8 as being within the adjacent Area B unit, resulting in an encoding result that is far from the actual location. Summary of the Invention

[0004] This invention proposes a method for optimizing the coding results of geocoding platforms based on surface constraints. The aim is to optimize the coding results of multiple coding platforms through surface constraints, thereby making the coding results more accurate.

[0005] To achieve the above objectives, the present invention proposes the following technical content:

[0006] The method for optimizing coding results of a geocoding platform based on area constraints includes the following steps:

[0007] S1: Based on the conditional random field, the input text address is segmented into sub-segments; the sub-segments are numbered from smallest to largest according to the level of community, road name, and administrative region.

[0008] S2: In the planar vector layer, the layer numbered as... i Match the sub-segments. i ∈[1, m If a match is found, output the number. i The sub-segment matches the surface unit and proceeds to the next step; if the match fails, the numbered sub-segment is added to the surface vector layer. i+ Match the sub-segment starting with 1, if up to the number... m The sub-segment failed to match in the polygon vector layer, proceed to the next step;

[0009] S3: According to the set judgment rules, determine whether the successfully matched face cells in S2 are "valid face cells". If yes, mark the text address in S1 as "valid text address"; if no, mark the text address in S1 as "invalid text address"; if "matching fails" in S2, no judgment rules are needed, and the text address in S1 is directly marked as "invalid text address".

[0010] S4: If the value in step S1 is "valid text address", then input the "valid text address" into the input field as well. n In each encoding platform, surface constraint processing is performed, and the final encoding result is output.

[0011] S5: If the value in step S1 is "invalid text address", then input the "invalid text address" into the input field as well. n In each encoding platform, the final encoded result is output.

[0012] Furthermore, step S4 includes the following steps:

[0013] S4.1: Enter the "Valid Text Address" simultaneously. n Among the various encoding platforms, the following was obtained: n Output of each encoding platform n Each encoding result, the n Transform the encoded results to planar coordinates;

[0014] S4.2: In a planar vector layer, determine the boundary topology of the planar unit according to the planar unit boundary topology method. n To determine whether each encoded result is located within a "valid face cell", count the number of encoded results located within a "valid face cell" and set it as [value]. s One, will s Each encoded result is numbered;

[0015] S4.3: When s When ≠0, calculate s The geometric mean of each encoding result is used to obtain the fused coordinates, and the fused coordinates are output as the final encoding result.

[0016] The formula is:

[0017]

[0018] In the formula, represents the final encoding result; x v , y v )express s In the encoding result, the first v One encoding result; s This represents the number of encoding results located in the "effective surface cell";

[0019] S4.4: When s When =0, obtain the sub-segment corresponding to the "effective surface element" in S3, and set the number of this sub-segment as . p Then, the final encoding result is calculated. Specifically, this includes the following steps:

[0020] S4.4.1: Obtain the number in the text address of S1. p + v sub-segment, v A positive integer greater than or equal to 1; in a polygonal vector layer, determine whether there exists a value that matches the number. p + v The face unit corresponding to the sub-segment;

[0021] If the area vector layer contains a number p + v The face element corresponding to the sub-segment will be numbered as p + v The face element corresponding to the sub-segment is denoted as the "updated face element", and the determination is made. n If the number of encoded results located in the "updated face units" is 0, then in the face vector layer, continue to check whether there exists a result matching the number. p + v+ The face element corresponding to the sub-segment of 1; if it is not 0, proceed to the next step;

[0022] If the area vector layer does not have a number p + v If the sub-segment corresponds to a face element, then continue to check if there exists a face element with the number [number]. p + v+ The face element corresponding to segment 1; until mp If no corresponding face unit exists for any of the sub-segments, then the text address in S1 will be updated to "invalid text address";

[0023] S4.4.2: Set the number of encoding results located in "Updated Face Cells" to... c indivual, c ≠0, will c If each encoded result is numbered, then the formula for the final encoded result is:

[0024]

[0025] In the formula, represents the final encoding result, which is output to the user after being converted to the WGS-84 coordinate system; x l , y l )express c In the encoding result, the first l Each encoding result.

[0026] Furthermore, in step S3, the judgment rules are set to two:

[0027] Rule 1: Successfully matched face cells are those below the county level;

[0028] Rule 2: The area of ​​a successfully matched face unit is less than or equal to 6 square kilometers;

[0029] If a successfully matched face cell satisfies both of the above rules, then the text address in S1 is a "valid text address"; if one of them is not satisfied, then the text address in S1 is an "invalid text address".

[0030] Furthermore, step S5 includes the following steps:

[0031] S5.1: Enter "Invalid text address" simultaneously. n Among the various encoding platforms, the following was obtained: n Output of each encoding platform n Each encoding result, the n Each encoded result is converted into planar coordinates;

[0032] S5.2: Calculation n The geometric mean of each encoding result is used to obtain the fused coordinates, which are then output as the final encoding result.

[0033] The formula is:

[0034]

[0035] In the formula, represents the final encoding result; x d , y d )express n In the encoding result, the first d One encoded result; n The number of encoded results output by the encoding platform.

[0036] Furthermore, in steps S4.1 and S5.1, the encoding result is converted into planar coordinates through UTM projection.

[0037] The beneficial effects that can be achieved by adopting the above technologies are:

[0038] This scheme constrains the polygon cells of the text address in the polygon vector layer, filters out the encoding results located in the polygon cells, and merges multiple encoding results located in the polygon cells to obtain the final encoding result, thereby making the final positioning more accurate. Attached Figure Description

[0039] Figure 1 This is a flowchart illustrating the steps of this method;

[0040] Figure 2 This is the flowchart of this solution;

[0041] Figure 3 This is a comparison chart of the number of encoding errors of this scheme compared to other encoding platforms. Detailed Implementation

[0042] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0043] like Figure 1 and Figure 2 As shown, the method for optimizing the coding results of a geocoding platform based on surface constraints includes the following steps:

[0044] S1: Based on Conditional Random Field (CRF), the input text address is segmented to obtain segmented sub-segments; the sub-segments are numbered from smallest to largest according to the level of community, road name, and administrative region.

[0045] For example, if the input text address is: "Building 17, Block A, Yincheng Garden, Focheng West Road, Jiangning District, Nanjing", the segmented text will be: "Nanjing City", "Jiangning District", "Focheng West Road", "Yincheng Garden", "Block A" and "No. 17".

[0046] Among them, "Nanjing City" and "Jiangning District" are administrative regions, namely the city and the district, respectively.

[0047] "Focheng West Road" is a road name.

[0048] "Yincheng Garden" and "Area A" belong to the community.

[0049] "No. 17" is a building number and is not within the scope of level consideration.

[0050] The results, numbered from largest to smallest, are as follows: Area A is number 1, Yincheng Garden is number 2, Focheng West Road is number 3, Jiangning District is number 4, and Nanjing City is number 5.

[0051] S2: In the planar vector layer, the layer numbered as... i Match the sub-segments. i ∈[1, m If a match is found, output the number. i The sub-segment matches the surface unit and proceeds to the next step; if the match fails, the numbered sub-segment is added to the surface vector layer. i+Match the sub-segment starting with 1; if up to the number... m The sub-segment failed to match in the planar vector layer, proceeding to the next step. In this embodiment, m =5.

[0052] For example: In a polygon vector layer, segment number 1 is matched. If the match is successful, proceed to the next step; if the match fails, segment number 2 is matched in the polygon vector layer. If the match is successful, proceed to the next step; if the match fails, segment number 3 is matched in the polygon vector layer, and so on... until segment number... m The sub-segment fails to match the surface unit in the planar vector layer, is marked as "match failed", and proceeds to the next step.

[0053] Example of a successful match:

[0054] If the sub-segment "Area A" has a "surface unit" with the same semantic meaning in the surface vector layer, then the sub-segment "Area A" will be matched successfully; otherwise, the sub-segment "Area A" will fail to be matched.

[0055] S3: According to the set judgment rules, determine whether the successfully matched face cell in S2 is a "valid face cell". If yes, mark the text address in S1 as a "valid text address"; if no, mark the text address in S1 as an "invalid text address". If the match in S2 fails, no judgment is needed, and the text address in S1 is directly marked as an "invalid text address".

[0056] There are two rules for the judgment:

[0057] Rule 1: Successfully matched face cells are those below the county level;

[0058] Rule 2: The area of ​​a successfully matched face unit is less than or equal to 6 square kilometers.

[0059] If a successfully matched face cell satisfies both of the above rules, then the text address in S1 is a "valid text address"; if one of them is not satisfied, then the text address in S1 is an "invalid text address"; the text addresses in S2 that "failed to match" do not need to be judged and are directly marked as "invalid text addresses".

[0060] For example, when the text address entered in S1 is "No. 166, Tongliang Road, Erhe District, Nanliang City, Jiangsu Province", when matching in the polygon vector layer in S2, only the sub-segment "Jiangsu Province" can be successfully matched with the polygon unit in the polygon vector layer, and other sub-segments will fail to match. Since "Jiangsu Province" is a provincial-level city and is larger than 6 square kilometers, it does not meet the requirements of Rule 1 and Rule 2. Therefore, "No. 166, Tongliang Road, Erhe District, Nanliang City, Jiangsu Province" is marked as "invalid text address".

[0061] For example, when the text address entered in S1 is "No. 166, Tongliang Road, Erhe District, Nanliang City, Jiangnan Province", none of the above sub-segments can be matched successfully in the polygon vector layer in S2. Therefore, there is no need to make a judgment, and "No. 166, Tongliang Road, Erhe District, Nanliang City, Jiangnan Province" is directly marked as "invalid text address".

[0062] For example, when the text address entered in S1 is "No. 16, Yincheng Garden, Focheng West Road, Jiangning District, Nanjing City, Jiangsu Province", when matching in the polygon vector layer in S2, "Yincheng Garden" successfully matches the polygon unit in the polygon vector layer. Moreover, "Yincheng Garden" is located below the county level and less than 6 square kilometers, satisfying both rules one and two. Therefore, "No. 16, Yincheng Garden, Focheng West Road, Jiangning District, Nanjing City, Jiangsu Province" is marked as a "valid text address".

[0063] S4: If the value in step S1 is "valid text address", then input the "valid text address" into the input field as well. n In each encoding platform, surface constraint processing is performed, and the final encoding result is output. Specifically, this includes the following steps:

[0064] S4.1: Enter the "Valid Text Address" simultaneously. n Among the various encoding platforms, the following was obtained: n Output of each encoding platform n Each encoding result, the n The encoded result is converted into planar coordinates through UTM projection (Universal Transverse Mercator projection) to eliminate spherical curvature interference.

[0065] S4.2: In the planar vector layer, determine respectively n To determine whether each encoded result is located within a "valid face cell", count the number of encoded results located within a "valid face cell" and set it as [value]. s One, will s Each encoded result is numbered.

[0066] Specifically, in planar vector layers, the planar unit boundary topology method is used to determine whether the encoding result is located in a "valid planar unit". The planar unit boundary topology method is a conventional technique in this field and will not be described in detail here.

[0067] S4.3: Whens When ≠0, calculate s The geometric mean of each encoding result is used to obtain the fused coordinates, which are then output as the final encoding result.

[0068] The formula is:

[0069]

[0070] In equation (1), represents the final encoding result, which is output to the user after being converted to the WGS-84 coordinate system; x v , y v )express s In the encoding result, the first v One encoded result; s This represents the number of encoding results located in the "effective surface cell";

[0071] S4.4: When s When =0, obtain the sub-segment corresponding to the "effective surface element" in S3, and set the number of this sub-segment as . p Then, the final encoding result is calculated. Specifically, this includes the following steps:

[0072] S4.4.1: Obtain the number in the text address of S1. p + v sub-segment, v A positive integer greater than or equal to 1; in a polygon vector layer, determine whether there exists a value that matches the number. p + v The face unit corresponding to the sub-segment;

[0073] If the area vector layer contains a number p + v The face element corresponding to the sub-segment will be numbered as p + v The face element corresponding to the sub-segment is denoted as the "updated face element", and the determination is made. n If the number of encoded results located in the "updated face units" is 0, then in the face vector layer, continue to check whether there exists a result matching the number. p + v+ The face element corresponding to the sub-segment of 1; if it is not 0, proceed to the next step;

[0074] If the area vector layer does not have a number p + v If the sub-segment corresponds to a face element, then continue to check if there exists a face element with the number [number]. p + v+ The face element corresponding to segment 1; until mpIf no corresponding face unit exists for any of the sub-segments, then the text address in S1 is updated to "invalid text address".

[0075] S4.4.2: Set the number of encoding results located in "Updated Face Cells" to... c indivual( c ≠0), will c If each encoded result is numbered, then the formula for the final encoded result is:

[0076]

[0077] In equation (2), represents the final encoding result; x l , y l )express c In the encoding result, the first l Each encoding result.

[0078] S5: After judging by S3 and S4, if the value in step S1 is "invalid text address", then input the "invalid text address" into the input field. n In each encoding platform, the final encoded result is output. This specifically includes the following steps:

[0079] S5.1: Enter "Invalid text address" simultaneously. n Among the various encoding platforms, the following was obtained: n Output of each encoding platform n Each encoding result, the n Each encoded result is converted into planar coordinates through UTM projection; n Each encoded result is numbered;

[0080] S5.2: Calculation n The geometric mean of each encoding result is calculated, and the fused coordinates are obtained. The fused coordinates are then output as the final encoding result.

[0081] The formula is:

[0082]

[0083] In equation (3), represents the final encoding result, which is output to the user after being converted to the WGS-84 coordinate system; x d , y d ) express n In the encoding result, the first d One encoded result; n The number of encoded results output by the encoding platform.

[0084] Calculation example:

[0085] Experimental verification of the proposed solution is shown in Table 1. Figure 2 The results are as follows:

[0086] Experimental results show that the area constraint group has significantly better accuracy than the map group: the average error of the area constraint group is 107.96 meters, the median is 35.91 meters, and the 90th percentile error is 225.58 meters. All three error indicators are significantly lower than their corresponding indicators in the map group. The proportion of the error range of 0-100 meters is much higher than other groups. In terms of error stability (standard deviation 325.81), it is superior to the three maps. Although the root mean square error (343.23 meters) is close to that of the map group, the overall accuracy is improved (the average error is reduced by more than 30%). This proves that the scheme proposed in this invention can effectively handle the encoding results of mixed addresses.

[0087] Table 1. Statistics of Basic Error Indicators

[0088]

[0089] An experiment was conducted on 2400 address information datasets containing accurate geographic coordinates, and the results are shown in Table 1. A bar chart of the statistical data in Table 1 is shown below. Figure 3 . Figure 3 This is a graph showing the number of errors between the encoding results of this scheme and the encoding results of three encoding platforms and the actual encoding results. Figure 3 As can be seen, the number of errors in this solution is highest within the 0-100m range and lowest within the 500m range. This indicates that the method of this solution can concentrate the error within a 100m range, demonstrating high accuracy. Based on the above-described ideal embodiment of the present invention, and through the above description, those skilled in the art can make various changes and modifications without departing from the technical concept of this invention. The technical scope of this invention is not limited to the contents of the specification but must be determined according to the scope of the claims.

Claims

1. A method for optimizing coding results in a geocoding platform based on surface constraints, characterized in that, Includes the following steps: S1: Based on the conditional random field, the input text address is segmented into sub-segments; the sub-segments are numbered from smallest to largest according to the level of community, road name, and administrative region. S2: In the planar vector layer, the layer numbered as... i Match the sub-segments. i ∈[1, m If a match is found, output the number. i The sub-segment matches the surface element, and proceeds to the next step; If the match fails, then in the polygon vector layer, the number will be... i+ Match the sub-segment starting with 1, if up to the number... m The sub-segment failed to match in the polygon vector layer, proceed to the next step; S3: According to the set judgment rules, determine whether the successfully matched face cell in S2 is a "valid face cell". If yes, mark the text address in S1 as a "valid text address"; if no, mark the text address in S1 as an "invalid text address". If the match in S2 fails, no judgment is needed, and the text address in S1 is directly marked as an "invalid text address". S4: If the value in step S1 is "valid text address", then input the "valid text address" into the input field as well. n In each encoding platform, surface constraint processing is performed, and the final encoding result is output. S5: If the value in step S1 is "invalid text address", then input the "invalid text address" into the input field as well. n In each encoding platform, the final encoded result is output; Step S4 includes the following steps: S4.1: Enter the "valid text address" simultaneously. n Among the various encoding platforms, the following was obtained: n Output of each encoding platform n Each encoding result, the n Transform the encoded results to planar coordinates; S4.2: In a planar vector layer, determine the boundary topology of the planar unit according to the planar unit boundary topology method. n Whether each encoding result is located in a "valid face cell", count the number of encoding results located in "valid face cells", and set it as . s One, will s Each encoded result is numbered; S4.3: When s When ≠0, calculate s The geometric mean of each encoding result is used to obtain the fused coordinates, and the fused coordinates are output as the final encoding result. The formula is: ; In the formula, represents the final encoding result; x v , y v )express s In the encoding result, the first v One encoded result; s This represents the number of encoding results located in the "effective surface cell"; S4.4: When s When =0, obtain the sub-segment corresponding to the "effective surface element" in S3, and set the number of this sub-segment as . p And calculate the final encoding result; specifically including the following steps: S4.4.1: Obtain the number in the text address of S1. p + v sub-segments, v A positive integer greater than or equal to 1; in a polygonal vector layer, determine whether there exists a value that matches the number. p + v The face unit corresponding to the sub-segment; If the area vector layer contains a number p + v The face element corresponding to the sub-segment will be numbered as p + v The face element corresponding to the sub-segment is denoted as "updated face element", and the determination is made. n If the number of encoded results located in the "updated face units" is 0, then in the face vector layer, continue to check whether there exists a result matching the number. p + v+ The face element corresponding to the sub-segment of 1; if it is not 0, proceed to the next step; If the area vector layer does not have a number p + v If the sub-segment corresponds to a face element, then continue to check if there exists a face element with the number [number]. p + v+ The face element corresponding to segment 1; until mp If no corresponding face unit exists for any of the sub-segments, then the text address in S1 is updated to "invalid text address"; S4.4.2: Set the number of encoding results located in "Updated Face Cells" to... c indivual, c ≠0, will c If each encoded result is numbered, then the formula for the final encoded result is: ; In the formula, represents the final encoding result, which is output to the user after being converted to the WGS-84 coordinate system; x l , y l )express c In the encoding result, the first l Each encoding result.

2. The method for optimizing coding results of a geocoding platform based on surface constraints according to claim 1, characterized in that, In step S3, two judgment rules are set: Rule 1: Successfully matched face cells are those below the county level; Rule 2: The area of ​​a successfully matched face unit is less than or equal to 6 square kilometers; If a successfully matched face cell satisfies both of the above rules, then the text address in S1 is a "valid text address"; if one of them is not satisfied, then the text address in S1 is an "invalid text address".

3. The method for optimizing coding results of a geocoding platform based on surface constraints according to claim 2, characterized in that, Step S5 includes the following steps: S5.1: Enter "Invalid text address" simultaneously n Among the various encoding platforms, the following was obtained: n Output of each encoding platform n Each encoding result, the n Each encoded result is converted into planar coordinates; S5.2: Calculation n The geometric mean of each encoding result is used to obtain the fused coordinates, which are then output as the final encoding result. The formula is: ; In the formula, represents the final encoding result; x d , y d )express n In the encoding result, the first d One encoded result; n The number of encoded results output by the encoding platform.

4. The method for optimizing coding results of a geocoding platform based on surface constraints according to claim 3, characterized in that, In steps S4.1 and S5.1, the encoding result is converted into planar coordinates through UTM projection.

Citation Information

Patent Citations

  • An address matching method based on statistical word segmentation

    CN109145169A

  • Real-scene three-dimensional scene model updating management method based on geographic space boundary constraint

    CN119006737A