Method, device and electronic equipment for determining bend data
By calculating the curvature information of shape points in road network data and identifying the center point of curves, the problem of inaccurate curve data in existing technologies is solved, enabling navigation software to provide precise guidance at curves.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- AUTONAVI SOFTWARE CO LTD
- Filing Date
- 2022-08-16
- Publication Date
- 2026-05-15
AI Technical Summary
The lack of accurate curve data in existing road network data prevents navigation software from providing effective curve guidance information.
By acquiring target shape point data from road network data, calculating the curvature information of the shape points, determining the center point of the curve, and identifying the start and end points of the curve based on the curvature information, the curve can be accurately identified in the road network data.
It can accurately identify curves in the road, provide more precise navigation guidance information, and improve the accuracy of navigation software guidance at curves.
Smart Images

Figure CN115330857B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to electronic map technology, and more particularly to a method, apparatus, and electronic device for determining curve data. Background Technology
[0002] Currently, one of the most commonly used applications is those with map navigation functionality, such as map navigation applications, ride-hailing applications, or lifestyle service applications. These applications can provide users with navigation functions, that is, plan travel routes from point A to point B for users, and when users select navigation, the application guides users from point A to point B according to the planned travel route.
[0003] When a user is driving, the guidance information provided by navigation will influence their driving behavior. Take curves as an example: real-world roads generally have curves. If the software is required to provide effective guidance information when a user approaches a curve, such as "Sharp turn ahead, please control your speed," then curve data needs to be created from the road network data of the electronic map. Since existing road network data generally creates shape points of the road, and curve data, being data with a certain degree of subjective perception, needs to be created again based on the shape point data of the road. Therefore, how to create accurate curve data is a problem that needs to be solved by those skilled in the art. Summary of the Invention
[0004] This disclosure provides a method, apparatus, and electronic device for determining curve data, used to identify curves in road network data.
[0005] The first aspect of this disclosure is to provide a method for determining curve data, comprising:
[0006] Obtain target shape point data from road network data;
[0007] Based on the first shape point data in the target shape point data and the adjacent shape point data of the first shape point data, the curvature information of the first shape point data is determined; wherein, the curvature information of the first shape point data is used to characterize the degree of curvature of the road corresponding to the first shape point at the first shape point.
[0008] Based on the curvature information of the first shape point data, determine the curve center point data from the first shape point data;
[0009] Based on the curvature information of the curve center point data and the first shape point data, the start point data and end point data of the curve are determined in the first shape point data.
[0010] Another aspect of this disclosure is an apparatus for determining curve data, comprising:
[0011] The acquisition unit is used to acquire target shape point data from road network data;
[0012] The fitting unit is used to determine the curvature information of the first shape point data based on the first shape point data in the target shape point data and the adjacent shape point data of the first shape point data; wherein, the curvature information of the first shape point data is used to characterize the degree of curvature of the road corresponding to the first shape point at the first shape point.
[0013] The center determination unit is used to determine the curve center point data from the first shape point data based on the curvature information of the first shape point data;
[0014] The start and end point determination unit is used to determine the start point data and end point data of the curve in the first shape point data based on the curve center point data and the curvature information of the first shape point data.
[0015] Another aspect of this disclosure is to provide an electronic device comprising:
[0016] Memory;
[0017] Processor; and
[0018] Computer programs;
[0019] The computer program is stored in the memory and configured to be executed by the processor to implement the method for determining curve data as described in the first aspect above.
[0020] Another aspect of this disclosure is to provide a computer program product, including a computer program that, when executed by a processor, implements the method for determining curve data as described in the first aspect above.
[0021] The technical advantages of the method, apparatus, and electronic equipment for determining curve data provided in this disclosure are:
[0022] The method, apparatus, and electronic device for determining curve data provided in this embodiment include acquiring target shape point data from road network data; determining curvature information of the first shape point data based on first shape point data in the target shape point data and adjacent shape point data of the first shape point data; determining curve center point data from the first shape point data based on the curvature information of each first shape point data; and determining the start-point and end-point data of the curve from the first shape point data based on the curve center point data and the curvature information of the first shape point data. The solution provided by this disclosure can determine the degree of curvature of the road at each shape point location, thereby determining the curve center point in the road. Furthermore, based on the curve center point and the degree of curvature of the road at each shape point location, the start-point and end-point of the curve can be determined, thereby identifying curves in the road network data. Software with navigation functions can provide guidance information based on the curves identified by the solution provided by this disclosure, providing more accurate guidance information. Attached Figure Description
[0023] Figure 1 A schematic diagram of curves in road network data, as shown in an exemplary embodiment;
[0024] Figure 2 This is a flowchart illustrating a method for determining curve data, as shown in an exemplary embodiment of the present disclosure.
[0025] Figure 3 A schematic diagram of shape points shown for a first exemplary embodiment of this disclosure;
[0026] Figure 4 A schematic diagram of shape points shown in a second exemplary embodiment of this disclosure;
[0027] Figure 5 A schematic diagram of shape points shown in a third exemplary embodiment of this disclosure;
[0028] Figure 6 A schematic diagram of the shape points shown in the fourth exemplary embodiment of this disclosure;
[0029] Figure 7 A flowchart illustrating a method for determining curve data, as shown in another exemplary embodiment of this disclosure;
[0030] Figure 8 A schematic diagram of the shape points shown in the fifth exemplary embodiment of this disclosure;
[0031] Figure 9 A schematic diagram of shape points shown in the sixth exemplary embodiment of this disclosure;
[0032] Figure 10 A schematic diagram of the shape points shown in the seventh exemplary embodiment of this disclosure;
[0033] Figure 11A schematic diagram of shape points shown in the eighth exemplary embodiment of this disclosure;
[0034] Figure 12 A schematic diagram of a shape point shown in the ninth exemplary embodiment of this disclosure;
[0035] Figure 13 This is a flowchart illustrating a method for determining curve data, which is yet another exemplary embodiment of this disclosure.
[0036] Figure 14 This is a schematic flowchart illustrating a curve filtering method as an exemplary embodiment of the present disclosure;
[0037] Figure 15 A schematic diagram of the shape points shown in the tenth exemplary embodiment of this disclosure;
[0038] Figure 16 A schematic diagram of the structure of an apparatus for determining curve data, as shown in an exemplary embodiment of the present disclosure;
[0039] Figure 17 A schematic diagram of the structure of an apparatus for determining curve data, as shown in another exemplary embodiment of this disclosure;
[0040] Figure 18 This is a structural diagram of an electronic device illustrated in an exemplary embodiment of the present disclosure. Detailed Implementation
[0041] People often use navigation apps when traveling. These apps typically input the user's origin and destination, and the software plans at least one route. The user can then choose any route, and the software will provide guidance based on the selected route. For example, it can announce the direction of travel, such as "turn left ahead" or "turn right ahead."
[0042] The software can provide guidance information corresponding to the navigation route based on information from road network data. For example, when providing guidance information related to curves, it needs to identify the curves included in the navigation route based on road network data, so as to output the relevant information for the curves in advance. For example, it can announce the guidance information corresponding to the curve before the user is in the curve.
[0043] Typically, curve data is created during the mapping stage so that navigation software can provide curve-related information based on this data. However, since existing road network data generally only generates shape points of roads, and curve data, being somewhat subjective, needs to be re-generated based on these shape point data, accurate curve data is crucial for navigation software to provide correct guidance. How to generate accurate curve data is a technical problem that needs to be solved by those skilled in the art.
[0044] Figure 1 This is a schematic diagram of a curve in road network data, illustrating an exemplary embodiment.
[0045] like Figure 1 As shown, curve 11 and curve 12 exist in the road network data.
[0046] If information about curve 11 is created during the mapping stage, for example, a break mark can be made between curve 11 and the first straight line 13 connecting to it, and between curve 11 and the second straight line 14 connecting to it. When the navigation route includes curve 11, navigation software can determine the existence of curve 11 in the navigation route based on the information about curve 11, and then provide guidance information related to curve 11.
[0047] If information about curve 12 is not created during the mapping stage, the navigation software will not be able to recognize the existence of curve 12 in the navigation route, and the software with navigation function will not be able to provide the corresponding guidance information.
[0048] Therefore, accurately identifying curve data from road network data is a prerequisite for navigation software to accurately provide guidance information.
[0049] To accurately identify curve data within road network data, the solution provided in this disclosure determines the curve center point data based on the shape point data used to generate the road network. Then, based on the curve center point data, the corresponding curve start and end point data are determined from the shape point data, thereby defining the range of curves within the road. This implementation method accurately identifies curve information, enabling navigation software to provide guidance information corresponding to the curves based on the curve identification results.
[0050] Figure 2 This is a flowchart illustrating a method for determining curve data, as shown in an exemplary embodiment of the present disclosure.
[0051] like Figure 2 As shown, the method for determining curve data provided in this disclosure includes:
[0052] Step 201: Obtain target shape point data from the road network data.
[0053] The solution provided in this disclosure can be executed by an electronic device with computing capabilities, such as at least one computer.
[0054] Specifically, when creating electronic maps, road shape data is typically obtained by measuring the points on the map, and then these points are connected sequentially to form roads. The connectivity between multiple roads constitutes the road network topology of the electronic map. Optionally, roads generated based on shape points can be either uphill or downhill roads.
[0055] Furthermore, target shape point data can be obtained from road network data. Target shape point data can be used to generate any road or to generate a portion of a road.
[0056] Figure 3 This is a schematic diagram of a shape point, illustrating a first exemplary embodiment of the present disclosure.
[0057] like Figure 3 As shown, the number of target shape point data can be multiple, with one target shape point data corresponding to one shape point 31. These shape points 31 are used to generate road 32.
[0058] Optionally, shape point 31 can also be a partial shape point used to generate road 32.
[0059] Step 202: Determine the curvature information of the first shape point data based on the first shape point data in the target shape point data and the adjacent shape point data of the first shape point data; wherein, the curvature information of the first shape point data is used to characterize the degree of curvature of the road corresponding to the first shape point at the first shape point.
[0060] Figure 4 This is a schematic diagram of a shape point, illustrating a second exemplary embodiment of the present disclosure.
[0061] like Figure 4 As shown, the target shape point data includes the data of the first shape point 41. The first shape point data has two adjacent shape point data, which are the data of shape points 42 and 43 respectively.
[0062] The shape of a road is related to the relative positions of the points in the road network. For example, if multiple consecutive points are located on the same straight line, the road portion generated by these points will be a straight line. Therefore, the shape of the road at the first point can be determined based on the data of the first point and its adjacent points. This shape specifically refers to the degree of curvature of the road. The road corresponding to the first point refers to the road or a portion of the road where the first point is located, or the road or a portion of the road generated based on the first point.
[0063] Specifically, the curvature information of the first shape point data can be determined based on the first shape point data and its adjacent shape point data. The curvature information is used to characterize the degree to which the curve deviates from a straight line. Therefore, the curvature information can be used to determine the degree of curvature of the road at the first shape point.
[0064] Optionally, the shape point data includes location information, and the curvature information of the first shape point can be determined based on the location information of the first shape point and its adjacent shape points. Optionally, the shape point data can be arranged sequentially, for example, the data of shape point A, shape point B, and shape point C are sequentially sorted to form a data sequence, and the adjacent shape point data of the first shape point data can be determined in the data sequence. This order information is related to the driving direction of the road. For example, when a vehicle collects shape point data sequentially according to the driving direction of the road, the sorting of the shape point data is the same as the collection order.
[0065] In one optional implementation, the curvature information of the first shape point data can be determined based on a spiral curve fitting method; in another optional implementation, the curvature information of the first shape point data can be determined based on a circular arc fitting method, wherein the curvature information may include the radius of curvature.
[0066] Figure 5 This is a schematic diagram of a shape point, illustrating a third exemplary embodiment of the present disclosure.
[0067] like Figure 5 As shown, the first shape point 51 has two adjacent shape points 52 and 53. Correspondingly, the data of shape point 51 is adjacent to the data of shape points 52 and 53. The circle containing the first shape point 51 and its adjacent shape points 52 and 53 can be determined, and thus the radius of curvature R of the first shape point data can be obtained.
[0068] Furthermore, if the curvature information of the first shape point data is determined based on the arc fitting method, then the first shape point data is the data in the target shape point data excluding the endpoint shape point data. For example... Figure 5 As shown, the data of the shape points other than shape points 54 and 55 are the first shape point data.
[0069] Step 203: Determine the curve center point data from the first shape point data based on the curvature information of the first shape point data.
[0070] In practical applications, the curvature information of the first shape point data can characterize the degree of curvature of the road at the first shape point. For example, the road has a greater degree of curvature at shape point A and a smaller degree of curvature at shape point D. Therefore, based on the curvature information of each first shape point data, the location with the greatest degree of curvature in the road can be determined, and thus the curve center point data can be obtained.
[0071] The radius of curvature is equal to the reciprocal of the curvature; the smaller the radius of curvature, the greater the degree of curvature. Therefore, if the curvature information includes the radius of curvature, the data of the first point with the smallest radius of curvature can be determined as the center point data of the curve.
[0072] Specifically, a radius threshold can be set. If the minimum radius of curvature is less than this threshold, the first shape point data corresponding to the minimum radius of curvature can be determined as the curve center point data. This implementation method can avoid determining the curve center point data from these shape point data when the curvature of the road generated based on the target shape point data is very small, thus preventing the determination of curves in roads with very small curvature.
[0073] Step 204: Based on the curvature information of the curve center point data and the first shape point data, determine the start point data and end point data of the curve in the first shape point data.
[0074] Typically, there are curve segments before and after the point of greatest curvature. Therefore, the starting point of the curve can be determined from the first shape point data before the curve center point data, and the ending point data can be determined from the first shape point data after the curve center point data.
[0075] Furthermore, the road exhibits a certain degree of curvature in the curved areas, with less curvature at the junction of the curve and the straight section. Therefore, the curvature information of the first shape point data can be used to determine the shape points belonging to the curve, thereby determining the curve start and end point data.
[0076] Figure 6 This is a schematic diagram of a shape point, illustrating a fourth exemplary embodiment of the present disclosure.
[0077] like Figure 6 As shown, based on the above steps, the center point 61 of the curve can be determined. The first shape point data preceding the center point data can be iterated forward until a shape point data whose curvature does not meet the curve requirements is determined, thus obtaining the curve start point data, such as the curve start point data 62. Alternatively, the first shape point data following the center point data can be iterated backward until a shape point data whose curvature does not meet the curve requirements is determined, thus obtaining the curve end point data, such as the curve end point data 63.
[0078] Specifically, after determining the start and end points of a curve, curve information can be generated based on these data. Navigation software can also acquire curve information and provide guidance based on this information relevant to the navigation route.
[0079] The method for determining curve data provided in this disclosure includes acquiring target shape point data from road network data; determining curvature information of the first shape point data based on first shape point data in the target shape point data and adjacent shape point data of the first shape point data; wherein the curvature information of the first shape point data is used to characterize the degree of curvature of the road corresponding to the first shape point at the first shape point; determining curve center point data from the first shape point data based on the curvature information of the first shape point data; and determining the start-point data and end-point data of the curve from the first shape point data based on the curve center point data and the curvature information of the first shape point data. The method for determining curve data provided in this disclosure can determine the degree of curvature of the road at each first shape point location, thereby determining the curve center point data of the road. Furthermore, based on the curve center point data and combined with the degree of curvature of the road at each first shape point location, the start-point data and end-point data of the curve can be determined, thus accurately identifying curves in road network data. In addition, software with navigation functions can provide more accurate guidance information based on the curves identified by the solution provided in this disclosure.
[0080] Figure 7 This is a flowchart illustrating a method for determining curve data, which is another exemplary embodiment of this disclosure.
[0081] like Figure 7 As shown, the method for determining curve data provided in this disclosure includes:
[0082] Step 701: Obtain the original shape point data from the road network data.
[0083] Among them, the original shape point data refers to all the original shape point data used to generate a road or a part of a road area. Connecting the original shape points in sequence can obtain a road or a part of a road area.
[0084] Specifically, in order to reduce the amount of shape point data to be processed, and at the same time to avoid abnormal calculation accuracy caused by excessively dense shape points in subsequent fitting processing, the solution provided in this disclosure also performs thinning processing on the original shape point data to reduce the number of shape point data.
[0085] Step 702: Remove the removable shape point data from the original shape point data, and the remaining original shape point data is the target shape point data, wherein the curvature of the road at the location of the removable shape point is less than the preset curvature.
[0086] Furthermore, the removal of shape point data has little impact on the road shape, and the remaining target shape point data can accurately determine the range of curves in the road.
[0087] In practical applications, the curvature of the road at the (n+1)th original shape point can be determined based on the nth original shape point data, the (n+1)th original shape point data, and the (n+2)th original shape point data.
[0088] For example, the angle between the line connecting the nth and (n+1)th original shape points and the line connecting the (n+1)th and (n+2)th original shape points can be determined. If the angle is large (e.g., close to 180 degrees), then these three original shape points are approximately collinear. Therefore, the (n+1)th original shape point has a smaller impact on the road shape. In this implementation, the angle between the line connecting the nth and (n+1)th original shape points and the line connecting the (n+1)th and (n+2)th original shape points is used to characterize the curvature of the road at the (n+1)th shape point. The preset curvature can be a preset angle value.
[0089] For example, the line connecting the nth and (n+2)th original shape points can be determined, and the distance between the (n+1)th original shape point and this line can be determined. If the distance is small, it can be determined that the (n+1)th original shape point has a small impact on the road shape. In this implementation, the distance is used to characterize the curvature of the road at the (n+1)th shape point, and the preset curvature can be a preset distance value.
[0090] For example, a first straight line connecting the nth original shape point and the (n+1)th original shape point can be determined, and a second straight line connecting the nth original shape point and the (n+2)th original shape point can be determined. If the angle between the first and second straight lines is less than a preset angle (e.g., 2 degrees), then the (n+1)th original shape point data is determined as removable shape point data. In this implementation, the angle between the first and second straight lines is used to characterize the curvature of the road at the (n+1)th shape point position, and the preset curvature can be a preset angle value.
[0091] Among them, after removing the removable shape point data based on any method, the remaining original shape point data is the target shape point data.
[0092] Specifically, the value of n ranges from 1 to N-2, where N is the total number of original shape point data obtained.
[0093] Figure 8 This is a schematic diagram of a shape point, illustrating a fifth exemplary embodiment of the present disclosure.
[0094] like Figure 8 As shown, data for N original shape points can be obtained, and the nth original shape point 81, the (n+1)th original shape point 82, and the (n+2)th original shape point 83 can be determined from the original shape point sequence.
[0095] Based on the positions of the original shape points, the first straight line L1 connecting the nth original shape point 81 and the (n+1)th original shape point 82 can be determined; the second straight line L2 connecting the nth original shape point 81 and the (n+2)th original shape point 83 can also be determined.
[0096] There is an angle between the first straight line L1 and the second straight line L2. If the angle is less than a preset angle, it can be determined that the curvature of the road at the (n+1)th shape point is very small and close to a straight line. The (n+1)th original shape point 82 has little impact on the shape of the road. Therefore, the data of the (n+1)th original shape point 82 can be removed to reduce the amount of shape point data processing, without affecting the result of determining the curvature of the road at different locations.
[0097] The preset angle value can be set according to requirements, for example, it can be 2 degrees.
[0098] Specifically, if the first line L1 and the second line L2 belong to the same line, then the included angle can be considered to be 0.
[0099] Furthermore, the starting point and ending point data of curves in the road can be determined based on the remaining target point data.
[0100] Step 703: Based on the first shape point data and the data of two adjacent shape points, determine the circles containing the first shape point and the two adjacent shape points.
[0101] Step 704: Determine the radius of the circle as the curvature information of the first shape point data.
[0102] Furthermore, the two adjacent shape point data of each first shape point data can be determined according to the arrangement order of the target shape point data.
[0103] The solution provided in this disclosure can determine the curvature information of the first shape point data based on circular arc fitting. Specifically, it can determine the circle containing the first shape point and two adjacent shape points, and then determine the radius of this circle as the curvature information of the first shape point data. In this implementation, the curvature information is the radius of curvature.
[0104] Step 705: Determine the candidate shape point data with the smallest curvature information from the first shape point data. If the curvature information of the candidate shape point data is less than the preset radius threshold, then the candidate shape point data is determined as the curve center point data.
[0105] When curvature information includes the radius of curvature, the smaller the radius of curvature, the greater the curvature of the road at the first shape point. Therefore, the candidate shape point data with the smallest curvature information can be determined from the first shape point data.
[0106] Specifically, a radius threshold can be set. If the curvature information of the candidate point data is less than the radius threshold, the candidate point data can be determined as the center point data of the road curve. If the curvature information of the candidate point data is greater than the radius threshold, it can be determined that the road does not include the curve area.
[0107] Figure 9 This is a schematic diagram of a shape point, illustrating a sixth exemplary embodiment of the present disclosure.
[0108] Figure 9 The shape points shown are those corresponding to the target shape point data. These shape points are located on roads with relatively low curvature. Therefore, the curvature information of the candidate shape point 91 identified from these points is relatively large. In this case, it can be determined that the road does not include curved areas. By setting a radius threshold, roads with low curvature can be eliminated, thus avoiding the identification of curves on roads with low curvature.
[0109] The radius threshold can be a value set according to requirements, for example, it can be 80.
[0110] If the first shape point and its two adjacent shape points are on the same straight line, then the curvature information of the first shape point data can be considered to be a preset large value, or an infinite value, or a preset sign, etc.
[0111] Step 706: Based on the arrangement order of the target shape point data, determine the two preceding shape point data before any shape point data in the target shape point data, and determine the forward direction of the shape point data based on the preceding shape point data; the forward direction includes clockwise or counterclockwise direction.
[0112] Step 707: Based on the arrangement order of the target shape point data, determine the two backward shape point data following any shape point data in the target shape point data, and determine the backward direction of the shape point data based on the backward shape point data; the backward direction includes clockwise or counterclockwise direction.
[0113] Figure 10 This is a schematic diagram of a shape point, illustrating a seventh exemplary embodiment of the present disclosure.
[0114] like Figure 10 As shown, the two shape points preceding each shape point can be determined based on the order of the shape point data, and the first line connecting the shape points corresponding to these two shape points can be determined. For example, the two shape points 102 and 103 preceding shape point 101 can be determined, and the first line L can be obtained by connecting 102 and 103.
[0115] Optionally, the target shape point data may include the position information of the shape points, and the first connecting line L can be determined based on the position information of shape points 102 and 103.
[0116] Furthermore, the forward direction of shape point 101 can be determined based on its relative position to the first connecting line L; wherein the forward direction includes a clockwise direction or a counterclockwise direction. The clockwise or counterclockwise direction of shape point 101 along the first connecting line L is determined, and the determined direction is taken as the forward direction of shape point 101. For example, the forward direction of shape point 101 is a counterclockwise direction.
[0117] In practical applications, it is also possible to determine the two shape points after shape point 101 and obtain the second line connecting these two shape points. In turn, it is possible to obtain the relative direction of shape point 101 and the second line, which is the backward direction. The backward direction also includes the clockwise direction and the counterclockwise direction.
[0118] Step 708: Determine the set of first curve points based on the curvature information and backward direction of each first shape point data prior to the curve center point data.
[0119] Step 709: Determine the set of second curve points based on the curvature information and forward direction of each first shape point data after the curve center point data.
[0120] Figure 11 This is a schematic diagram of a point shape, illustrating an eighth exemplary embodiment of the present disclosure.
[0121] like Figure 11 As shown, the shape point data before and after the curve center point can be determined according to the arrangement order of the shape point data. For example, the shape points included in rectangle 112 are the shape points before the curve center point 111, and the shape points included in rectangle 113 are the shape points after the curve center point 111.
[0122] Furthermore, based on the concave and convex geometric properties of the curve, the curve center point data can be used as the starting point to traverse the shape point data forward and backward respectively, thus obtaining the first curve point set and the second curve point set.
[0123] Specifically, the curve center point data can be added to the first curve point set, and the first shape point data that is sorted before the curve center point data and has the same backward direction as the curve center point data can be added to the first curve point set in order from the nearest to the farthest distance from the curve center point data, until the average curvature radius of the shape point data included in the first curve point set is the largest and less than the second preset value.
[0124] The curve center point data can be added to the second curve point set. The first shape point data, which is sorted after the curve center point data and has the same forward direction as the curve center point data, can be added to the second curve point set in order from the nearest to the farthest distance from the curve center point data, until the average curvature radius of the shape point data included in the second curve point set is the largest and less than the second preset value.
[0125] Specifically, roads have a certain degree of curvature in curved areas; therefore, the curvature information of the shape points in curved areas should be relatively small. However, the curvature is smaller where the road connects to the straight section, and the curvature information at this location is larger. Therefore, if the average curvature information of multiple consecutive shape points is less than a second preset value, these shape points can be considered to constitute the curve. Conversely, if the average curvature information of multiple consecutive shape points is greater than the second preset value, the shape points that cause the average value to be greater than the second preset value can be considered not to belong to the curved area.
[0126] For example, when the data of shape point F, shape point E, and shape point C are added to the first curve point set in sequence, the average curvature information of these shape point data is less than the second preset value. After adding the data of shape point A to the first curve point set, the average curvature information of these shape point data is greater than the second preset value. Therefore, it can be determined that the data of shape point C, shape point E, and shape point F are shape point data belonging to the curve range, while the data of shape point A does not belong to the curve range.
[0127] The second preset value can be set according to needs, for example, it can be 150.
[0128] Simultaneously, when determining the first and second curve point sets, the direction of each shape point data is also considered. Shape point data with the same direction are placed in the same set, thus allowing shape point data belonging to the same curve to be grouped together. Furthermore, all shape point data before the curve center point data determined in the above manner have a backward direction; therefore, the first curve point set can be determined based on the backward direction of these shape point data. Similarly, all shape point data after the curve center point data determined in the above manner have a forward direction; therefore, the second curve point set can be determined based on the forward direction of these shape point data. In this way, the set of shape point data constituting the same curve region can be determined based on the curve center point data.
[0129] Step 710: Determine the starting point of the curve from the first set of curve points, and determine the ending point of the curve from the second set of curve points.
[0130] To more accurately determine the range of the curve, the starting point data of the curve can be determined from the shape point data included in the first set of curve points, and the ending point data of the curve can be determined from the shape point data included in the second set of curve points.
[0131] Figure 12 This is a schematic diagram of a point shape, illustrating a ninth exemplary embodiment of the present disclosure.
[0132] A straight line can be generated based on the adjacent shape point data in the first curve point set; the straight line corresponding to the first shape point data and the second shape point data is the first basic straight line 121, and the other straight lines are the first reference straight lines 122.
[0133] Based on the first base line 121 and the first reference line 122, determine the first trend change angle of the shape point data that is earlier among the two shape point data corresponding to the first reference line. For example, the angle between the first base line 121 and the first reference line 122 is the first trend change angle of the shape point A data, which is used to characterize the degree of influence of the shape point data on the curvature of the road.
[0134] The starting point data of the curve can be determined from the first trend change angle of the shape point data in the first curve point set. Specifically, the shape point data in the first curve point set can be traversed from front to back, and the first shape point data whose first trend change angle is greater than the first trend angle threshold can be taken as the starting point data of the curve. The first trend angle threshold is, for example, 8 degrees.
[0135] The first shape point data in the first curve point set does not have the first trend change angle, so we can start traversing backwards from the second shape point data.
[0136] Straight lines can also be generated based on adjacent shape point data in the second curve point set; among them, the straight line corresponding to the last shape point data and the second to last shape point data is the second basic straight line 123, and the other straight lines are the second reference straight lines 124.
[0137] Based on the second base line and the second reference line, determine the second trend change angle of the later shape point data among the two shape point data corresponding to the second reference line. For example, the angle between the second base line 123 and the second reference line 124 is the second trend change angle of the shape point B data, which is used to characterize the degree of influence of this shape point data on the road curvature.
[0138] Based on the second trend change angle of the shape point data in the second curve point set, the endpoint data of the curve is determined in the second curve point set. Specifically, the shape point data in the second curve point set can be traversed from back to front, and the first shape point data whose second trend change angle is greater than the second trend angle threshold is taken as the endpoint data of the curve. The second trend angle threshold is, for example, 8 degrees.
[0139] The last shape point data in the second curve point set does not have the second trend change angle, so we can start traversing backward from the second to last shape point data.
[0140] This method allows for a more accurate determination of the starting and ending points of a curve, thus providing the starting and ending positions of the curve.
[0141] Figure 13 This is a flowchart illustrating a method for determining curve data, which is yet another exemplary embodiment of this disclosure.
[0142] like Figure 13 As shown, the method for determining curve data provided in this disclosure includes:
[0143] Step 131: Obtain the target shape point data from the road network data.
[0144] The implementation of step 131 is similar to that of step 201 or steps 701 and 702, and will not be described again.
[0145] Step 132: Determine the shape point group according to the arrangement order of the target shape point data; wherein the road corresponding to the shape point data in the shape point group includes at most one curve.
[0146] The target point data are arranged sequentially, for example, the data of point A, the data of point C, and the data of point E are arranged sequentially.
[0147] Specifically, the shape point data can be divided into groups based on the order of the target shape point data, so that the road generated by the shape point data in each group includes at most one curve. For example, if the entire road generated based on the target shape point data includes two curves, then these shape point data can be divided into two shape point groups: the shape point data used to generate the first curve belongs to the first shape point group, and the shape point data used to generate the second curve belongs to the second shape point group.
[0148] In this way, when the road generated from shape point data includes multiple curves, there will be no problem of missed identification.
[0149] Specifically, the two preceding shape points can be determined based on the arrangement order of the shape point data, and the first connecting line can be determined based on these two shape point data. The relative position of the shape point data and the first connecting line is determined, and the forward direction of the shape point data is determined; the forward direction includes clockwise or counterclockwise direction.
[0150] For details, please refer to [link / reference]. Figure 10 The illustrated embodiment determines the forward direction of the shape point data. Then, based on the forward direction and the arrangement order of the shape point data, the shape point group is determined.
[0151] In practical applications, continuous shape point data with the same forward direction can be grouped into the same shape point group.
[0152] The solution provided in this disclosure determines the direction information based on the two shape point data preceding the shape point data. Therefore, it is impossible to determine the direction information of the first shape point data and the second shape point data, but it is possible to determine a shape point group composed of the second shape point data.
[0153] Step 133: Based on the first shape point data in the target shape point data and the two adjacent shape point data of the first shape point data, determine the circle in which the first shape point and the two adjacent shape points are located.
[0154] Step 134: Determine the radius of the circle as the curvature information of the first shape point data.
[0155] Steps 133 and 134 are implemented in a similar manner to steps 703 and 704, and will not be described in detail here.
[0156] Step 135: In the first set of shape point data included in the shape point group, determine the candidate shape point data with the smallest curvature information. If the curvature information of the candidate shape point data is less than the preset radius threshold, then the candidate shape point data is determined as the curve center point data.
[0157] The specific implementation method for determining the curve center point data in multiple first shape point groups is similar to step 705, and will not be repeated here.
[0158] Step 136: Based on the curvature information and backward direction of each first shape point data preceding the curve center point data, determine the set of first curve points corresponding to any curve center point data.
[0159] Step 137: Based on the curvature information and forward direction of each first shape point data after the curve center point data, determine the set of second curve points corresponding to any curve center point data.
[0160] For each curve center point data, the corresponding first curve point set and second curve point set can be determined.
[0161] Step 138: Determine the starting point data of the curve in the first set of curve points, and determine the ending point data of the curve in the second set of curve points.
[0162] The content of steps 136-138 and Figure 7 The embodiments shown are similar and will not be described again.
[0163] If multiple sets of shape points are determined, multiple curve center point data can be determined, and then the starting point data and ending point data corresponding to each curve center point data can be obtained. In this case, if there are overlapping areas between the determined multiple curve ranges, the curves with overlapping areas can be spliced together to obtain a complete curve.
[0164] Figure 14This is a schematic flowchart illustrating a curve filtering method as an exemplary embodiment of the present disclosure.
[0165] like Figure 14 As shown, the curve filtering method provided in this disclosure includes:
[0166] Step 141: Determine the outer angle and / or height of the curve based on the starting and ending points of the curve.
[0167] Once the starting and ending points of the curve are determined, a sequence of curve shape point data can be obtained. This sequence includes the starting and ending points, as well as other shape point data located between them.
[0168] Specifically, the geometric information of a curve can be determined based on the curve shape point data sequence, thereby determining whether the curve meets preset conditions. This geometric information can specifically include the curve's outer angle and curve height.
[0169] Figure 15 This is a schematic diagram of a point shape, illustrating the tenth exemplary embodiment of this disclosure.
[0170] like Figure 15 As shown, the curve start point data corresponds to start point 151, and the curve end point data corresponds to end point 15m. Based on the curve start point 151 and end point 15m, the curve shape points that make up the curve can be determined. These curve shape points include start point 151 and end point 15m, as well as other shape points located between start point 151 and end point 15m.
[0171] Furthermore, based on the data of each point in the curve, a second connecting line can be determined to connect two adjacent curve points. For example, the second connecting line L3 connecting 151 and 152, and the second connecting line L4 connecting 152 and 153, etc.
[0172] It is also possible to determine the included angle formed by the two second lines that intersect at the bend point. For example, if L3 and L4 intersect at bend point 152, then the included angle between L3 and L4 can be determined.
[0173] The outer angle of the curve can be obtained by superimposing the included angles corresponding to the curve points.
[0174] Please continue to refer to this. Figure 15 Furthermore, based on the starting and ending data of the curve, the third line L connecting the starting point 151 and the ending point 15m can be determined, and the distance h from the center point 154 of the curve to the third line L can be determined as the curve height.
[0175] Step 142: Filter curves that do not meet the preset conditions based on the outer angle and / or height of the curve.
[0176] Both the outer angle and the height of the curve describe the degree of curvature of the curve. Therefore, curves that do not meet the preset conditions can be filtered based on the outer angle and / or the height of the curve.
[0177] Specifically, curves with an outer angle less than an angle threshold can be filtered out; and / or curves with a height less than a height threshold can be filtered out. The angle threshold can be set as needed, for example, 30 degrees, and the height threshold can be set as needed, for example, 2 meters.
[0178] Figure 16 This is a schematic diagram of the structure of an apparatus for determining curve data, which is an exemplary embodiment of the present disclosure.
[0179] like Figure 16 As shown, the apparatus 1600 for determining curve data provided in this disclosure includes:
[0180] Acquisition unit 1610 is used to acquire target shape point data in road network data;
[0181] The fitting unit 1620 is used to determine the curvature information of the first shape point data based on the first shape point data in the target shape point data and the adjacent shape point data of the first shape point data; wherein, the curvature information of the first shape point data is used to characterize the degree of curvature of the road corresponding to the first shape point at the first shape point.
[0182] The center determination unit 1630 is used to determine the curve center point data from the first shape point data based on the curvature information of the first shape point data;
[0183] The start and end point determination unit 1640 is used to determine the start point data and end point data of the curve in the first shape point data based on the curve center point data and the curvature information of the first shape point data.
[0184] Figure 17 This is a schematic diagram of the structure of an apparatus for determining curve data, which is shown as another exemplary embodiment of the present disclosure.
[0185] like Figure 17 As shown, the device 1700 for determining curve data provided in this disclosure, wherein the curvature information is the radius of curvature;
[0186] The device further includes a grouping unit 1650, used after the acquisition unit 1610 acquires the target shape point data included in the road network data:
[0187] The shape point group is determined according to the arrangement order of the target shape point data; wherein, the road corresponding to the shape point data in the shape point group includes at most one curve;
[0188] The center determination unit 1630 is specifically used for:
[0189] In the first set of shape point data, the candidate shape point data with the smallest curvature information is determined. If the curvature information of the candidate shape point data is less than a preset radius threshold, then the candidate shape point data is determined as the curve center point data.
[0190] The grouping unit 1650 includes:
[0191] The connection module 1651 is used to determine two shape point data before each shape point data according to the arrangement order of the target shape point data, and to determine the first connection according to the two shape point data;
[0192] The direction determination module 1652 is used to determine the relative position of the shape point data and the first connecting line, and to determine the forward direction of the shape point data based on the relative position; wherein, the forward direction includes a clockwise direction or a counterclockwise direction;
[0193] Grouping module 1653 is used to determine the shape point group based on the forward direction of the shape point data and the arrangement order of the shape point data.
[0194] The grouping module 1653 is specifically used for:
[0195] Multiple consecutive shape point data points with the same forward direction are identified as a shape point group;
[0196] Determine another set of shape points formed by the second set of shape point data from the shape point data. The apparatus is also used to:
[0197] Based on the arrangement order of the target shape point data, determine the two preceding shape point data before any shape point data in the target shape point data, and determine the forward direction of the shape point data based on the preceding shape point data; the forward direction includes a clockwise direction or a counterclockwise direction;
[0198] Based on the arrangement order of the target shape point data, determine the two backward shape point data following any shape point data in the target shape point data, and determine the backward direction of the shape point data based on the backward shape point data; the backward direction includes a clockwise direction or a counterclockwise direction;
[0199] The start and end point determination unit 1640 includes:
[0200] The set determination module 1641 is used to determine the first curve point set based on the curvature information and backward direction of each first shape point data before the curve center point data;
[0201] The set determination module 1641 is used to determine the second set of curve points based on the curvature information and forward direction of each first shape point data after the curve center point data.
[0202] The start and end point determination module 1642 is used to determine the start point data of the curve in the first set of curve points and the end point data of the curve in the second set of curve points.
[0203] The set determination module 1641 is specifically used for:
[0204] The curve center point data is added to the first curve point set, and the first shape point data, which is sorted before the curve center point data and has the same backward direction as the curve center point data, is added to the first curve point set in order from near to far from the curve center point data, until the average radius of curvature of the shape point data included in the first curve point set is the largest and less than the second preset value.
[0205] And / or,
[0206] The curve center point data is added to the second curve point set, and the first shape point data, which is sorted after the curve center point data and has the same forward direction as the curve center point data, is added to the second curve point set in order from near to far from the curve center point data, until the average radius of curvature of the shape point data included in the second curve point set is the largest and less than the second preset value.
[0207] The start and end point determination module 1642 is specifically used for:
[0208] A straight line is generated based on the adjacent shape point data in the first set of curve points; wherein, the straight line corresponding to the first shape point data and the second shape point data is the first basic straight line, and the other straight lines are the first reference straight lines;
[0209] Based on the first base line and the first reference line, determine the first trend change angle of the shape point data that is earlier in the two shape point data corresponding to the first reference line;
[0210] Based on the first trend change angle of the shape point data in the first set of curve points, determine the starting point data of the curve in the first set of curve points;
[0211] And / or, the start and end point determination module 1642 is specifically used for:
[0212] A straight line is generated based on the adjacent shape point data in the second set of curve points; among them, the straight line corresponding to the last shape point data and the second to last shape point data is the second basic straight line, and the other straight lines are the second reference straight lines;
[0213] Based on the second basic line and the second reference line, determine the second trend change angle of the later shape point data among the two shape point data corresponding to the second reference line;
[0214] Based on the second trend change angle of the shape point data in the second set of curve points, determine the endpoint data of the curve in the second set of curve points.
[0215] Optionally, the first shape point data has two adjacent shape point data;
[0216] The fitting unit 1620 includes:
[0217] The circle fitting module 1621 is used to determine the circle containing the first shape point and the two adjacent shape points based on the first shape point data and the two adjacent shape point data of the first shape point data.
[0218] The information determination module 1622 is used to determine the radius of the circle as the curvature information of the first shape point data.
[0219] The curvature information is the radius of curvature;
[0220] The center determination unit 1630 is specifically used for:
[0221] In the first set of shape point data, a target shape point data with the smallest curvature information is determined. If the curvature information of the target shape point data is less than the radius threshold, then the target shape point data is determined as the center point data of the curve.
[0222] The device further includes a filter unit 1660, used for:
[0223] Based on the start and end point data of the curve, determine the outer angle and / or height of the curve;
[0224] Curves that do not meet the preset conditions are filtered based on the outer angle of the curve and / or the height of the curve.
[0225] The acquisition unit 1610 is specifically used for:
[0226] Obtain the original shape point data from the road network data;
[0227] Remove the removable shape point data from the original shape point data, and the remaining original shape point data is the target shape point data, wherein the curvature of the road at the location of the removable shape point is less than the preset curvature.
[0228] Figure 18 This is a structural diagram of an electronic device illustrated in an exemplary embodiment of the present disclosure.
[0229] like Figure 18As shown, the electronic device provided in this embodiment includes:
[0230] Memory 181;
[0231] Processor 182; and
[0232] Computer programs;
[0233] The computer program is stored in the memory 181 and configured to be executed by the processor 182 to implement any of the methods for determining curve data as described above.
[0234] This embodiment also provides a computer-readable storage medium on which a computer program is stored.
[0235] The computer program is executed by a processor to implement any of the methods for determining curve data as described above.
[0236] This embodiment also provides a computer program, including program code, which, when the computer runs the computer program, executes any of the methods for determining curve data as described above.
[0237] Those skilled in the art will understand that all or part of the steps of the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0238] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this disclosure, and are not intended to limit them. Although this disclosure has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features therein. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this disclosure.
Claims
1. A method for determining curve data, characterized in that, include: Acquire target shape point data from road network data, wherein the number of target shape point data is multiple; Based on the first shape point data in the target shape point data and the adjacent shape point data of the first shape point data, the curvature information of the first shape point data is determined; wherein, the curvature information of the first shape point data is used to characterize the degree of curvature of the road corresponding to the first shape point at the first shape point. Based on the curvature information of the first shape point data, the curve center point data is determined from the first shape point data; wherein, the curve center point data is the first shape point data corresponding to the position of the greatest curvature in the road; Based on the curvature information of the curve center point data and the first shape point data, the start point data and end point data of the curve are determined in the first shape point data.
2. The method according to claim 1, characterized in that, The curvature information is the radius of curvature; After acquiring the target shape point data in the road network data, the method further includes: Based on the arrangement order of the target shape point data, shape point groups are determined; wherein, the road corresponding to the shape point data in the shape point group includes at most one curve; The step of determining the curve center point data from the first shape point data based on the curvature information of the first shape point data includes: In the first set of shape point data, the candidate shape point data with the smallest curvature information is determined. If the curvature information of the candidate shape point data is less than a preset radius threshold, then the candidate shape point data is determined as the curve center point data.
3. The method according to claim 2, characterized in that, The step of determining the shape point group based on the arrangement order of the target shape point data includes: The two shape points preceding each shape point data are determined according to the arrangement order of the target shape point data, and the first connecting line is determined according to the two shape point data. The relative position is determined based on the shape point data and the first connecting line, and the forward direction of the shape point data is determined based on the relative position; wherein, the forward direction includes a clockwise direction or a counterclockwise direction; The shape point group is determined based on the forward direction of the shape point data and the arrangement order of the shape point data.
4. The method according to claim 3, characterized in that, Determining the shape point group based on the forward direction of the shape point data and the arrangement order of the shape point data includes: Multiple consecutive shape point data points with the same forward direction are identified as a shape point group; Determine another set of shape points formed by the second set of shape point data in the shape point data.
5. The method according to any one of claims 1-4, characterized in that, Before determining the start and end points of the curve in the first shape point data based on the curve center point data and the curvature information of the first shape point data, the method further includes: Based on the arrangement order of the target shape point data, determine the two preceding shape point data before any shape point data in the target shape point data, and determine the forward direction of the shape point data based on the preceding shape point data; the forward direction includes a clockwise direction or a counterclockwise direction; Based on the arrangement order of the target shape point data, determine the two backward shape point data following any shape point data in the target shape point data, and determine the backward direction of the shape point data based on the backward shape point data; the backward direction includes a clockwise direction or a counterclockwise direction; The step of determining the start and end points of the curve in the first shape point data based on the curve center point data and the curvature information of the first shape point data includes: The set of first curve points is determined based on the curvature information and backward direction of each first shape point data preceding the curve center point data; The second set of curve points is determined based on the curvature information and forward direction of each first shape point data after the curve center point data; The starting point data of the curve is determined in the first set of curve points, and the ending point data of the curve is determined in the second set of curve points.
6. The method according to claim 5, characterized in that, The step of determining the first curve point set based on the curvature information and backward direction of each first shape point data prior to the curve center point data includes: The curve center point data is added to the first curve point set, and the first shape point data, which is sorted before the curve center point data and has the same backward direction as the curve center point data, is added to the first curve point set in order from near to far from the curve center point data, until the average radius of curvature of the shape point data included in the first curve point set is the largest and less than the second preset value. And / or, determining the second set of curve points based on the curvature information and forward direction of each first shape point data following the curve center point data includes: The curve center point data is added to the second curve point set, and the first shape point data, which is sorted after the curve center point data and has the same forward direction as the curve center point data, is added to the second curve point set in order from near to far from the curve center point data, until the average radius of curvature of the shape point data included in the second curve point set is the largest and less than the second preset value.
7. The method according to claim 5, characterized in that, Determining the starting point data of the curve in the first set of curve points includes: A straight line is generated based on the adjacent shape point data in the first set of curve points; wherein, the straight line corresponding to the first shape point data and the second shape point data is the first basic straight line, and the other straight lines are the first reference straight lines; Based on the first base line and the first reference line, determine the first trend change angle of the shape point data that is earlier in the two shape point data corresponding to the first reference line; Based on the first trend change angle of the shape point data in the first set of curve points, determine the starting point data of the curve in the first set of curve points; And / or, determining the endpoint data of the curve in the second set of curve points includes: A straight line is generated based on the adjacent shape point data in the second set of curve points; among them, the straight line corresponding to the last shape point data and the second to last shape point data is the second basic straight line, and the other straight lines are the second reference straight lines; Based on the second basic line and the second reference line, determine the second trend change angle of the later shape point data among the two shape point data corresponding to the second reference line; Based on the second trend change angle of the shape point data in the second set of curve points, determine the endpoint data of the curve in the second set of curve points.
8. The method according to any one of claims 1-4, 6, and 7, characterized in that, The first shape point data has two adjacent shape point data; The step of determining the curvature information of the first shape point data based on the first shape point data in the target shape point data and the adjacent shape point data of the first shape point data includes: Based on the first shape point data and the two adjacent shape point data, determine the circle containing the first shape point and the two adjacent shape points; The radius of the circle is determined as the curvature information of the first shape point data.
9. The method according to claim 1, characterized in that, The curvature information is the radius of curvature; determining the curve center point data from the first shape point data based on the curvature information of the first shape point data includes: In the first set of shape point data, the candidate shape point data with the smallest curvature information is determined. If the curvature information of the candidate shape point data is less than a preset radius threshold, then the candidate shape point data is determined as the curve center point data.
10. The method according to any one of claims 1-4, 6, and 7, characterized in that, Also includes: Based on the start and end point data of the curve, determine the outer angle and / or height of the curve; Curves that do not meet the preset conditions are filtered based on the outer angle of the curve and / or the height of the curve.
11. The method according to any one of claims 1-4, 6, and 7, characterized in that, The acquisition of target shape point data in the road network data includes: Obtain the original shape point data from the road network data; Remove the removable shape point data from the original shape point data, and the remaining original shape point data is the target shape point data, wherein the curvature of the road at the location of the removable shape point is less than the preset curvature.
12. An apparatus for determining curve data, characterized in that, include: An acquisition unit is used to acquire target shape point data from road network data, wherein the number of target shape point data is multiple; The fitting unit is used to determine the curvature information of the first shape point data based on the first shape point data in the target shape point data and the adjacent shape point data of the first shape point data; wherein, the curvature information of the first shape point data is used to characterize the degree of curvature of the road corresponding to the first shape point at the first shape point. The center determination unit is used to determine the curve center point data from the first shape point data based on the curvature information of the first shape point data; wherein, the curve center point data is the first shape point data corresponding to the position with the greatest curvature in the road; The start and end point determination unit is used to determine the start point data and end point data of the curve in the first shape point data based on the curve center point data and the curvature information of the first shape point data.
13. An electronic device, characterized in that, include: Memory; processor; as well as Computer programs; The computer program is stored in the memory and configured to be executed by the processor to implement the method as described in any one of claims 1-11.
14. A computer program product comprising a computer program that, when executed by a processor, implements the method according to any one of claims 1-11.