Guide arrow generation method, device, equipment and product
By generating and correcting the top and side boundary points of the stereo guide arrows so that they face the camera's viewing direction, the problem of obstruction of the stereo guide arrows in lane-level navigation is solved, improving navigation clarity and user experience.
Patent Information
- Application Number
- CN202310350364.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-28
- Publication Date
- 2025-09-05
- Estimated Expiration
- 2043-03-28
AI Technical Summary
The existing three-dimensional guide arrows cannot adjust their direction according to the viewing direction in lane-level navigation, resulting in the arrows being blocked when viewed from the side at a low angle, affecting the user's navigation experience.
By obtaining the navigation path and the style file of the three-dimensional guide arrow, the top and side boundary points of the three-dimensional guide arrow are generated, and the perspective of the top boundary point is corrected according to the camera perspective so that it faces the direction of the camera perspective, thereby generating a clear and concise three-dimensional guide arrow.
Ensure that the top surface of the three-dimensional guide arrow is always clearly presented, helping users quickly focus on driving actions. This solves the problem of not being able to see the arrow direction when viewing from a low angle from the side, and improves the user experience.
Smart Images

Figure CN116558542B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present disclosure relate to the field of map rendering technology, and in particular to a method, device, equipment, and product for generating a guide arrow. Background Art
[0002] Existing navigation guidance usually includes two methods: one is voice guidance, that is, the guidance information (such as please turn left at the intersection ahead) is broadcast to the navigated object through voice broadcast to guide the navigated object to move along the navigation route; the other is map guidance, that is, in the form of Figure 1 The navigation interface shown here depicts a navigation route and a three-dimensional guidance arrow. The three-dimensional guidance arrow indicates the direction of the navigation object along the navigation route. Navigation guidance scenarios mainly include intersection guidance, lane change guidance, etc.
[0003] As navigation evolves from road-level navigation to lane-level navigation, the inventors discovered that because existing 3D guide arrows are static, once the model is constructed, the direction of the 3D guide arrow cannot be adjusted according to the viewing angle. Therefore, in lane-level navigation scenarios, if the guide arrow is viewed from the side at a low angle, the direction of the 3D guide arrow will be obscured by other parts of the 3D guide arrow. This can cause the navigated person to lose sight of the arrow's direction, miss entrances and exits, or even take the wrong road, affecting the user experience. Therefore, how to provide clear and concise 3D guide arrows to help the navigated person accurately determine driving actions is a technical problem that needs to be solved by those skilled in the art. Summary of the Invention
[0004] In order to solve the above technical problems, the embodiments of the present disclosure provide a method, device, equipment and product for generating a guide arrow.
[0005] A first aspect of an embodiment of the present disclosure provides a method for generating a guide arrow, the method comprising: obtaining the shape points included in a navigation path and a style file of a three-dimensional guide arrow; generating the boundary points of the top surface of the three-dimensional guide arrow based on the shape points included in the navigation path and the arrow width values recorded in the style file of the three-dimensional guide arrow; for the boundary points located in front of the anchor point, correcting the perspective of the boundary points located in front of the anchor point to be toward the direction of the camera perspective according to the distance between the boundary point and the anchor point and the current camera perspective; generating the boundary points of the side surfaces of the three-dimensional guide arrow based on the corrected boundary points of the top surface and the arrow height values recorded in the style file, the angle between the side surfaces and the top surface being equal to a preset angle; obtaining the three-dimensional guide arrow based on the boundary points of the top surface and the boundary points of the side surfaces.
[0006] A second aspect of an embodiment of the present disclosure provides a device for generating a guide arrow, including:
[0007] The first acquisition module is used to obtain a style file of shape points and three-dimensional guide arrows included in the navigation path;
[0008] A first generating module is configured to generate boundary points of a top surface of a 3D guide arrow based on the shape points included in the navigation path and the arrow width value recorded in the style file of the 3D guide arrow;
[0009] a correction module, configured to correct the perspective of the boundary point located in front of the anchor point to be toward the camera perspective according to the distance between the boundary point and the anchor point and the current camera perspective;
[0010] A second generating module is configured to generate boundary points of a side surface of the three-dimensional guide arrow based on the corrected boundary points of the top surface and the arrow height value recorded in the pattern file, wherein the angle between the side surface and the top surface is equal to a preset angle;
[0011] The third generating module is used to obtain the three-dimensional guide arrow based on the boundary points of the top surface and the boundary points of the side surface.
[0012] A third aspect of an embodiment of the present disclosure provides a terminal device, which includes a memory and a processor, wherein the memory is a non-volatile memory, and a computer program is stored in the memory. When the computer program is executed by the processor, the method described in the first aspect above can be implemented.
[0013] A fourth aspect of the embodiments of the present disclosure provides a computer program product, which is stored in a storage medium, which is a non-volatile storage medium. When the program product is executed, the method of the first aspect can be implemented.
[0014] A fifth aspect of an embodiment of the present disclosure provides a computer-readable storage medium, which is a non-volatile storage medium. A computer program is stored in the storage medium. When the computer program is executed, the method described in the first aspect can be implemented.
[0015] The technical solution provided by the embodiments of the present disclosure has the following advantages over the prior art:
[0016] The embodiment of the present disclosure obtains a style file of the shape points and three-dimensional guide arrows included in the navigation path; generates the boundary points of the top surface of the three-dimensional guide arrow based on the arrow width values recorded in the style file of the shape points and three-dimensional guide arrows included in the navigation path; for the boundary points located in front of the anchor point, according to the distance between the boundary point and the anchor point and the current camera angle of view, corrects the perspective of the boundary points located in front of the anchor point to be in the direction of the camera angle of view, and generates the boundary points of the side surfaces of the three-dimensional guide arrow based on the corrected boundary points of the top surface and the arrow height values recorded in the style file, thereby obtaining a three-dimensional guide arrow based on the boundary points of the top surface and the boundary points of the side surfaces. The embodiment of the present disclosure corrects the perspective of the boundary points in front of the anchor point to be in the direction of the camera angle of view, so that the perspective of the boundary points on the twisted top surface is in the direction of the camera angle of view, thereby ensuring that the top surface of the three-dimensional guide arrow can always be clearly presented to the user, helping the user to quickly focus on driving actions, such as turning, U-turning, changing lanes, etc., and solving the problem of the related art that the direction of the three-dimensional guide arrow cannot be seen when viewing the three-dimensional guide arrow from the side at a low angle. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.
[0018] In order to more clearly illustrate the embodiments of the present disclosure or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0019] Figure 1 It is a schematic diagram of a navigation interface provided by related technologies;
[0020] Figure 2 is a schematic diagram of an application scenario provided by an embodiment of the present disclosure;
[0021] Figure 3 This is a flow chart of a method for generating a guide arrow provided by an embodiment of the present disclosure;
[0022] Figure 4 This is a schematic diagram of a method for generating boundary points of the top surface of a three-dimensional guide arrow provided by an embodiment of the present disclosure;
[0023] Figure 5 is a schematic diagram of a method for generating endoskeleton points provided by an embodiment of the present disclosure;
[0024] Figure 6 It is a schematic diagram of an internal skeleton smoothing method;
[0025] Figure 7 is based on Figure 5 Schematic diagram of a method for generating exoskeleton points from endoskeleton points;
[0026] Figure 8 Therefore Figure 7 Schematic diagram of the method of generating a surface using endoskeleton points, exoskeleton points and shape points;
[0027] Figure 9 This is a schematic diagram of the top surface effect of a three-dimensional guide arrow provided by an embodiment of the present disclosure;
[0028] Figure 10 is a schematic diagram of boundary points on the top surface of a three-dimensional guide arrow provided by an embodiment of the present disclosure;
[0029] Figure 11 This is a generation effect diagram of a three-dimensional guide arrow provided by an embodiment of the present disclosure;
[0030] Figure 12 is a flowchart of a texture mapping method provided by an embodiment of the present disclosure;
[0031] Figure 13 This is a structural diagram of a device for generating a guide arrow provided by an embodiment of the present disclosure;
[0032] Figure 14 It is a structural diagram of a terminal device in an embodiment of the present disclosure. DETAILED DESCRIPTION
[0033] In order to more clearly understand the above-mentioned objectives, features and advantages of the present disclosure, the scheme of the present disclosure will be further described below. It should be noted that the embodiments of the present disclosure and the features therein can be combined with each other in the absence of conflict.
[0034] In the following description, many specific details are set forth to facilitate a full understanding of the present disclosure, but the present disclosure may also be implemented in other ways different from those described herein; it is obvious that the embodiments in the specification are only part of the embodiments of the present disclosure, rather than all of the embodiments.
[0035] In order to facilitate understanding of the technical solutions of the embodiments of the present disclosure, some terms involved in the embodiments of the present disclosure are first explained.
[0036] Geometric point: It can be understood as a positioning point included in the navigation path, including information such as the latitude, longitude, and altitude of the positioning point.
[0037] Anchor point: The location where driving actions such as going straight, turning, and U-turn are guided. The driving actions are guided by three-dimensional guide arrows, that is, guide arrows are drawn at the anchor point. The anchor point can generally be understood as the divergence / fork point of the road.
[0038] Texture mapping: In the embodiment of the present disclosure, it refers to applying the texture on the texture image to the three-dimensional guide arrow.
[0039] Subdivision: refers to the process of constructing the skeleton points and faces of the model according to the direction of the shape points, and further dividing the faces into renderable geometric primitives.
[0040] For example, Figure 2 It is a schematic diagram of an application scenario provided by an embodiment of the present disclosure. Figure 2 The terminal device in the text can be understood as a device with navigation function and processing capability, such as a mobile phone, a car computer, or a tablet computer. The server is a server that can provide navigation services. Figure 2 In the scenario shown, the terminal device can send a navigation request to the server through a preset communication protocol. The navigation request includes but is not limited to information such as the starting position and the end position. After receiving the navigation request, the server plans the route based on information such as the starting position and the end position, and sends information of one or more planned routes to the terminal device. The user selects a navigation route from one or more planned routes. The navigation route includes but is not limited to shape points, anchor positions, navigation guidance actions induced at anchor positions, and the style file of the three-dimensional guide arrow corresponding to the navigation guidance action. Among them, the style file may include information such as the style, width value and height value of the three-dimensional guide arrow. The aforementioned style file can also be sent to the terminal device in advance for storage, and is not necessarily sent together with the navigation route.
[0041] After the terminal device obtains the navigation route, it moves according to the navigation route and determines the anchor point position that will be passed in front and the navigation guidance action that will be led by the anchor point position according to its own positioning position and the navigation path in front (the navigation path is the path of the navigation route in a certain section of road), and then obtains the corresponding three-dimensional guide arrow style file and the shape point included in the navigation path according to the navigation guidance action. Then, taking the shape point as the base point, according to the arrow width value recorded in the style file of the three-dimensional guide arrow, the boundary points of the top surface of the three-dimensional guide arrow are divided on the left and right sides of the shape point. Further, for the boundary point located in front of the anchor point, according to the distance between the boundary point and the anchor point and the current camera angle of view, the angle of view of the boundary point located in front of the anchor point is corrected to the direction of the camera angle of view, so that the twisted boundary point can be seen from the camera angle of view. Then, based on the corrected boundary point of the top surface and the arrow height value recorded in the style file, the boundary points of the side surface of the three-dimensional guide arrow are generated, and then based on the boundary points of the top surface and the boundary points of the side surface, the three-dimensional guide arrow can be obtained.
[0042] The disclosed embodiment corrects the viewing angle of the boundary point of the top surface of the stereoscopic guide arrow to face the camera viewing angle, so that the top surface of the stereoscopic guide arrow always faces the viewing angle direction, ensuring that the direction of the stereoscopic guide arrow can always be seen, thereby helping the user to quickly focus on the direction guided by the stereoscopic guide arrow and improving the user experience.
[0043] In order to better understand the technical solutions of the embodiments of the present disclosure, the technical solutions of the embodiments of the present disclosure are described below in conjunction with exemplary embodiments.
[0044] For example, Figure 3 This is a flow chart of a method for generating a guide arrow provided by an embodiment of the present disclosure. The method can be exemplarily Figure 2 The terminal device in the implementation. Figure 3 As shown, in some exemplary implementations, the method provided by the embodiment of the present disclosure may include steps 301 to 305.
[0045] Step 301: Obtain the style file of the shape points and three-dimensional guide arrows included in the navigation path.
[0046] In the embodiments of the present disclosure, a navigation path can be understood as the path of a navigation route on the road ahead. A shape point can be understood as a positioning point on the navigation path. For example, in the embodiments of the present disclosure, a shape point includes an anchor point, which can be understood as a road divergence point.
[0047] 3D guide arrows are three-dimensional signs used to indicate driving actions, such as turn arrows, U-turn arrows, and lane change arrows. The 3D guide arrow style file includes guide arrow style information, such as the direction of the arrow, arrow width, arrow height, and arrow length.
[0048] In some implementations, a guidance action for the road ahead can be determined based on the current positioning position and navigation path; and then, based on the guidance action, a style file of a three-dimensional guidance arrow corresponding to the guidance action is obtained. Figure 2In one implementation of the embodiment of the present disclosure, the terminal device sends information such as the starting point position and the terminal position to the server. The server plans the route based on information such as the starting point position and the end point position, and feeds back the information of the planned route to the terminal device. Among them, the information of the planned route includes the shape points of the navigation guidance of each road section and the navigation guidance actions corresponding to each anchor point in the planned route, as well as the style file of the three-dimensional guidance arrow corresponding to the navigation guidance action. After the user selects a navigation route from the planned route, the terminal device guides the user according to the navigation route. When the distance between the terminal device and the anchor point is less than or equal to the preset distance, the generation operation of the three-dimensional guidance arrow can be started. The terminal device determines the guidance action of the road ahead (such as turning left) based on the current positioning position and the navigation path, and then obtains the shape points and the style file of the three-dimensional guidance arrow included in the navigation path ahead from the navigation route data according to the guidance action.
[0049] It should be noted that the distance between the terminal device and the anchor point is constantly changing. As the distance between the terminal device and the anchor point changes, the style of the three-dimensional guide arrow may also change accordingly. For example, the portion of the three-dimensional guide arrow corresponding to the road that has been traveled disappears. In the embodiment of the present disclosure, the style file of the three-dimensional guide arrow corresponding to the real-time distance can be obtained in real time according to the distance between the terminal device and the anchor point, and the corresponding three-dimensional guide arrow can be generated in real time. By obtaining the style file of the three-dimensional guide arrow in real time according to the distance between the terminal device and the anchor point, and generating the corresponding three-dimensional guide arrow, it can be ensured that the three-dimensional guide arrow changes in real time with the movement of the terminal device, so that the three-dimensional guide arrow can always play a pointing role, ensure the accuracy of the pointing of the three-dimensional guide arrow, and improve the guiding effect of the three-dimensional guide arrow.
[0050] For example, in some embodiments, after obtaining the shape points, a process of pre-processing the shape points may also be included. The pre-processing process includes but is not limited to thinning and smooth fitting. For example, in one example, after obtaining the shape points, the shape points may be traversed to determine the distance between adjacent shape points. If the distance between a certain shape point and the previous shape point and / or the next shape point is less than a preset distance, the shape point is removed, thereby preventing the distance between the shape points from being too close, resulting in the normal vectors between the shape points intersecting inside the stereo guide arrow during segmentation, resulting in model heterogeneity. For another example, the shape points may be traversed to determine the lines connecting the adjacent shape points and the angle between the two adjacent lines (hereinafter referred to as the second angle). If the second angle between the two adjacent lines is less than a second preset threshold, the shape points on the two lines are determined to be collinear. For collinear shape points, the first and last shape points may be retained, and the shape points between the first and last shape points may be deleted, thereby reducing the amount of data and improving computational efficiency. For another example, if the second angle between two adjacent lines is greater than the third preset threshold, and the third preset threshold is greater than the second preset threshold, that is, at a position with a large change in direction such as a turn, at least one shape point can be inserted through an interpolation method such as Catmull-ROM to improve the smoothness of the lines connecting the shape points at a position with a large change in direction such as a turn.
[0051] Step 302: Generate boundary points of the top surface of the 3D guide arrow based on the shape points included in the navigation path and the arrow width values recorded in the style file of the 3D guide arrow.
[0052] For example, Figure 4 Schematic diagram of a method for generating boundary points of the top surface of a three-dimensional guide arrow provided by an embodiment of the present disclosure. Figure 4 As shown, in an exemplary implementation of the embodiment of the present disclosure, the method for generating the boundary points of the top surface of the guide arrow may include steps 401 and 402.
[0053] In step 401, based on the shape points included in the navigation path and the arrow width values recorded in the style file of the 3D guide arrow, the internal skeleton points of the top surface of the 3D guide arrow are segmented on the left and right sides of the shape points.
[0054] In step 402, at least the endoskeleton points are used as boundary points of the top surface.
[0055] For example, Figure 5 FIG is a schematic diagram of a method for generating an internal skeleton point provided by an embodiment of the present disclosure. Figure 5 As shown, in Figure 5 G1 and G2 are two adjacent points in the shape point. G2 is the point in front of G1. Connect G1 and G2 to generate a vector from G1 to G2 (in Figure 5Indicated by arrow L1. At this point, using G1 as the base point, rotate L1 90 degrees clockwise and counterclockwise, respectively, to obtain vectors L11 and L12. Then, based on the arrow width, insert endoskeleton point G11 in the direction of vector L11 at a distance of half the arrow width from G1. Similarly, insert endoskeleton point G12 in the direction of vector L12 at a distance of half the arrow width from G1, thereby obtaining the endoskeleton points on the left and right sides of G1. Similarly, the endoskeleton points on the left and right sides of each shape point can be obtained.
[0056] The boundary points of the top surface of the three-dimensional guide arrow can be obtained quickly and accurately through the subdivision method.
[0057] For example, in some scenarios with large changes in direction, such as turning, U-turn, etc., in order to improve the smoothness of the stereo guide arrow at the turn, some embodiments of the present disclosure may include a step of smoothing the endoskeleton of the stereo guide arrow at the turn. The endoskeleton refers to the curve obtained by connecting the endoskeleton points. For example, in one embodiment, after the endoskeleton points of the top surface of the stereo guide arrow are segmented, the line connecting two adjacent shape points included in the shape points of the navigation path can be determined first, and the normal vector perpendicular to the line connecting the two adjacent shape points can be determined, and the normal vector has the shape point as the foot of the perpendicular. Then determine the first angle between the two normal vectors on the common shape point of the two adjacent lines, and the two normal vectors point to the endoskeleton point on the same side. If the first angle is greater than the first preset threshold, the opening direction of the first angle is determined as the chamfer direction, and at least one endoskeleton point is inserted in the chamfer direction to smooth the endoskeleton of the side pointed by the two normal vectors. For example, Figure 6 is a schematic diagram of an internal skeleton smoothing method, such as Figure 6 As shown in the figure, M1, M2, and M3 are three continuous shape points, and N1, N2, N3, N4, and N5 are internal skeleton points. Among them, N1, N3, and N5 are based on M1, M2, and M3 respectively. Figure 5 The endoskeleton points are obtained by the method shown. X1 is the normal vector of the line connecting M1 and M2, X2 is the normal vector of the line connecting M2 and M3, and the angle O is the angle between X1 and X2, i.e., the first angle. Figure 6 As shown, when the first angle is greater than the first preset threshold, the direction of the angle O opening is determined as the chamfer direction, and the internal skeleton points N2 and N4 are inserted in the chamfer direction, thereby making the curve obtained by connecting N1, N2, N3, N4, and N5 smooth. Figure 6 This is for illustrative purposes only and is not intended to be limiting.
[0058] For example, in some embodiments, after obtaining the endoskeleton points based on any of the above methods, the method may further include a step of dividing the exoskeleton points of the stereoscopic guide arrow in a direction away from the endoskeleton points with the endoskeleton points as base points.
[0059] For example, Figure 7 is based on Figure 5 Schematic diagram of a method for generating exoskeleton points from endoskeleton points in FIG. Taking endoskeleton point G11 as an example, with endoskeleton point G11 as the base point, exoskeleton point G111 can be interpolated at a position at a preset distance from endoskeleton point G11 in the direction of vector L11. Similarly, with endoskeleton point G12 as the base point, exoskeleton point G112 can be interpolated at a position at a preset distance from endoskeleton point G12 in the direction of vector L12. Similarly, each endoskeleton point can be used as a base point to generate a corresponding exoskeleton point.
[0060] In the case of generating exoskeleton points from endoskeleton points, the endoskeleton points and the skeleton points can also be used as the boundary points of the top surface of the stereo guide arrow. In this case, the method of generating the top surface of the stereo guide arrow can refer to Figure 8 For example, Figure 8 Therefore Figure 7 Schematic diagram of the method of generating a surface using endoskeleton points, exoskeleton points and shape points. Figure 8 In the example, G21 and G22 are the endoskeleton points generated based on G2, and G211 and G221 are the exoskeleton points generated based on G21 and G22 respectively. Figure 8 As shown, G21, G2, G11 and G1 can be connected into a quadrilateral, G22, G2, G12 and G1 can be connected into a quadrilateral, G211, G21, G111 and G11 can be used to generate a quadrilateral, G221, G22, G112 and G12 can be used to generate a quadrilateral, and each quadrilateral can be triangulated to obtain a surface composed of G1, G2, G11, G12, G111, G112, G21, G22, G211 and G221. Similarly, the top surface of the three-dimensional guide arrow can be obtained by connecting the endoskeleton points obtained with each shape point as the base point and the exoskeleton points obtained with each endoskeleton point as the base point. For example, Figure 9 The top surface of the stereo guide arrow shown. Of course, Figure 8 and Figure 9 This is for illustrative purposes only and is not intended to be limiting.
[0061] In the disclosed embodiment, endoskeleton points are generated based on the width value of a three-dimensional guide arrow using the shape points as base points, and then exoskeleton points are generated using the endoskeleton points as base points. A top surface is generated based on the exoskeleton points, the endoskeleton points, and the shape points. This improves the accuracy of the generated top surface, and by extending an endoskeleton point and an exoskeleton point on one side of each shape point, the number of endoskeleton points and exoskeleton points can be reduced, thus saving storage space and computing resources and improving the generation efficiency of the guide arrow top surface.
[0062] It should be noted that the above-mentioned method for generating endoskeleton points and exoskeleton points is merely an exemplary method, and not the only method. In fact, in other embodiments, a shape point can be used as a base point, and a preset number of points can be inserted on both sides of the shape point as endoskeleton points and / or exoskeleton points according to a preset step size. Then, a top surface can be generated based on the inserted points and the shape points.
[0063] Step 303: For the boundary point located in front of the anchor point, according to the distance between the boundary point and the anchor point and the current camera viewing angle, correct the viewing angle of the boundary point located in front of the anchor point to be toward the camera viewing angle.
[0064] The camera perspective can be understood as the angle between the line connecting the camera and the anchor point and the vertical direction.
[0065] In some embodiments, a torsion angle for correcting the boundary point in front of the anchor point to be in the direction of the camera view can be generated based on the distance between the boundary point and the anchor point and the current camera view, and then the boundary point in front of the anchor point can be twisted based on the torsion angle so that the view of the boundary point in front of the anchor point on the top surface of the stereoscopic guide arrow is in the direction of the camera view.
[0066] In the embodiment of the present disclosure, there are many methods for generating the torsion angle of the boundary points on the top surface of the 3D guide arrow. An exemplary method is used as an example to illustrate. Figure 10 Schematic diagram of the boundary points on the top surface of the three-dimensional guide arrow provided by the embodiment of the present disclosure. Figure 10 As shown, Z is the anchor point, M 11 、M 12 、M 13 ...M 1N There are N shape points. 21 、M 22 、M 23 ...M 2N M is the N endoskeleton points on the left side of the shape point. 31 、M 32 、M 33 ...M 3S The values of S and N can be the same or different. 41 、M 42 、M 43 ...M 4N are the N exoskeleton points on the left side of the shape point, M 51 、M 52 、M 53 ...M 5S For example, for the N endoskeleton points on the left, we can first calculate the anchor point Z to M 21 The distance, and then calculate M21 With M 22 The distance between 22 With M 23 The distance between them is calculated by analogy, and the distance between all adjacent endoskeleton points is calculated, and then the distance between the anchor point Z and M is calculated. 21 The distance between the left and adjacent endoskeleton points is accumulated to obtain the maximum progressive distance of the left endoskeleton points, that is, M 2N The progressive distance from anchor point Z to M 21 The distance can be used as M 21 Progressive distance from anchor point Z to M 21 The distance and M 21 to M 22 The sum of the distances between can be used as M 22 The progressive distances relative to anchor point Z can be calculated by analogy to the progressive distances of other endoskeleton points on the left relative to the anchor point. Similarly, the maximum progressive distance of the endoskeleton points to the right of the shape point in the navigation direction and the progressive distances of each endoskeleton point on the right relative to anchor point Z can be calculated. The maximum progressive distance of the exoskeleton points to the left of the shape point and the progressive distances of each exoskeleton point on the left relative to anchor point Z can also be calculated. The maximum progressive distance of the exoskeleton points to the right of the shape point and the progressive distances of each exoskeleton point on the right relative to anchor point Z can also be calculated.
[0067] Furthermore, for any endoskeleton point or exoskeleton point, the ratio of the progressive distance of the endoskeleton point or exoskeleton point to the maximum progressive distance on the side where the endoskeleton point or exoskeleton point is located can be used as a weighting coefficient to perform a weighted calculation on the angle of the current camera view (for example, the weighting coefficient can be multiplied by the angle of the current view) to obtain the torsion angle of the endoskeleton point or exoskeleton point. Alternatively, for any endoskeleton point or exoskeleton point, the ratio of the progressive distance of the endoskeleton point or exoskeleton point to the maximum progressive distance of the upper boundary point of the top surface (the endoskeleton point or exoskeleton point on either side) can be used as a weighting coefficient to weight the angle of the camera view to obtain the torsion angle. That is, in one embodiment, for any boundary point in front of an anchor point, the progressive distance of the boundary point relative to the anchor point can be determined based on the position of the anchor point; and the ratio of the progressive distance of the boundary point to the maximum progressive distance of the boundary points on the top surface can be used as a weighting coefficient to weight the angle of the camera view to obtain the torsion angle of any boundary point.
[0068] In some embodiments, after obtaining the rotation angle of each boundary point, quaternion rotation can be performed on the boundary point's perspective toward the camera's perspective based on the rotation angle of each boundary point, so that the perspective of the twisted boundary point is oriented toward the camera's perspective. Quaternion-based rotation methods can be found in related art and will not be further described here.
[0069] In the disclosed embodiment, the quaternion-based twisting method does not require coordinate transformation of vertices and can improve the twisting efficiency of vertices.
[0070] It should be noted that in the above method, the farther the boundary point (such as the endoskeleton point and the exoskeleton point) is from the anchor point, the greater the torsion angle, thereby presenting a linear torsion effect, making the torsion of the three-dimensional guide arrow more linear and smooth, and improving the display effect of the three-dimensional guide arrow.
[0071] Step 304: Based on the corrected boundary points of the top surface and the arrow height value recorded in the style file, the boundary points of the side surface of the three-dimensional guide arrow are generated, and the angle between the side surface and the top surface of the three-dimensional guide arrow is equal to the preset angle.
[0072] A preset angle may be, for example, 90 degrees, or other angles.
[0073] In some embodiments, the side boundary points can be generated by generating a normal vector for each boundary point on the top surface of the 3D guide arrow, pointing in the opposite direction of the camera's viewing angle. The bottom boundary points of the 3D guide arrow are then generated on the normal vectors, with the distance from the bottom boundary point to the corresponding top boundary point being equal to the height of the 3D guide arrow recorded in the style file. Since the bottom boundary points are actually the side boundary points, the bottom boundary points can be used as the side boundary points.
[0074] For example, in other embodiments, the exoskeleton points on the top surface can be traversed. When the exoskeleton point is traversed, any triangle formed by the exoskeleton point and the endoskeleton point is selected as the target triangle, and the direction of the normal vector of the target triangle facing away from the top surface is used as the target direction. Then, according to the height value of the stereo guide arrow, the boundary point of the side is obtained by interpolation in the target direction.
[0075] Step 305: Obtain a three-dimensional guide arrow based on the boundary points of the top surface and the boundary points of the side surface.
[0076] for example Figure 11 This is a generation effect diagram of a three-dimensional guide arrow provided by an embodiment of the present disclosure. Figure 11As shown, by obtaining the shape points and the style file of the three-dimensional guide arrow included in the navigation path; based on the arrow width value recorded in the style file of the shape points and the three-dimensional guide arrow included in the navigation path, the boundary points of the top surface of the three-dimensional guide arrow are generated; for the boundary points located in front of the anchor point, according to the distance between the boundary point and the anchor point and the current camera angle of view, the perspective of the boundary point located in front of the anchor point is corrected to face the direction of the camera angle of view, based on the corrected boundary points of the top surface and the arrow height value recorded in the style file, the boundary points of the side of the three-dimensional guide arrow are generated, thereby obtaining the three-dimensional guide arrow based on the boundary points of the top surface and the boundary points of the side surface. The embodiment of the present disclosure corrects the perspective of the boundary point in front of the anchor point to face the direction of the camera angle of view, so that the perspective of the boundary points on the twisted top surface faces the direction of the camera angle of view, thereby ensuring that the top surface of the three-dimensional guide arrow can always be clearly presented to the user, helping the user to quickly focus on the driving action, such as turning, U-turning, changing lanes, etc., and solving the problem of the related art that the direction of the three-dimensional guide arrow cannot be seen when viewing the three-dimensional guide arrow from the side at a low angle.
[0077] For example, Figure 12 is a flowchart of a texture mapping method provided by an embodiment of the present disclosure, such as Figure 12 As shown, based on Figure 3 After the three-dimensional guide arrow is generated by the method in the embodiment, the texture on the texture image may be mapped onto the guide arrow by the following method.
[0078] Step 1201: For a coordinate point on the 3D guide arrow, determine the ratio of the progressive distance of the coordinate point relative to the anchor point to the maximum progressive distance of the coordinate point on the 3D guide arrow.
[0079] For each coordinate point on the 3D guidance arrow, the calculation method of the progressive distance can refer to the method for determining the progressive distance between the endoskeleton point and the exoskeleton point in the above embodiment, which will not be repeated here.
[0080] Step 1202: Use the ratio as a weighting coefficient to weight the height of the texture image to obtain the vertical coordinate of the texture corresponding to the coordinate point.
[0081] For example, assuming that the ratio of the progressive distance of the coordinate point to the maximum progressive distance is Q, and the height of the texture image is H, the result of multiplying Q by H can be used as the vertical coordinate of the texture corresponding to the coordinate point on the texture image.
[0082] Step 1203: Obtain the horizontal coordinate of the texture corresponding to the coordinate point from a preset texture mapping configuration table.
[0083] In the embodiment of the present disclosure, a texture mapping configuration table can be pre-configured, which pre-configures information about the horizontal coordinates of the texture corresponding to each coordinate point on the texture image. In the embodiment of the present disclosure, the horizontal coordinates of the texture corresponding to the coordinate point on the texture image can be directly obtained from the texture mapping configuration table.
[0084] Step 1204: Map the texture to the coordinate point according to the ordinate and the abscissa.
[0085] After determining the horizontal coordinate and vertical coordinate of the texture on the texture image, the texture corresponding to the horizontal coordinate and vertical coordinate on the texture image is mapped to the coordinate point of the guide arrow, thereby improving the display effect of the three-dimensional guide arrow.
[0086] In some implementations of the embodiments of the present disclosure, after mapping the textures corresponding to the horizontal and vertical coordinates to the coordinate points of the stereoscopic guide arrow, the textures on the coordinate points of the stereoscopic guide arrow can be transformed at preset time intervals. For example, in a feasible implementation, after reaching a preset time interval, the data of the horizontal coordinate and the value of the vertical coordinate of the texture corresponding to the coordinate point can be changed according to a preset change amplitude, such as adding a first value to the horizontal coordinate and a second value to the vertical coordinate, and then re-map the texture mappings corresponding to the changed horizontal and vertical coordinates to the coordinate points of the stereoscopic guide arrow, thereby creating a flowing light display effect on the stereoscopic guide arrow, improving the recognition of the stereoscopic guide arrow, and avoiding the problem of weak auxiliary focusing function caused by the stereoscopic guide arrow not being prominent enough.
[0087] For example, in other embodiments, an additional indicator arrow can be used to point to the guide arrow, thereby helping the user to quickly focus on the three-dimensional guide arrow and improve the recognition of the three-dimensional guide arrow. For example, in one example, the moving speed of the indicator arrow and the closest distance between the indicator arrow and the terminal device and the anchor point can be preset. Initially, along the guide path, the indicator arrow is generated at the closest distance to the terminal device. Then, according to the preset moving speed of the indicator arrow, the position of the indicator arrow at each moment is determined, and the indicator arrow is generated at the position. After the indicator arrow moves to the closest distance from the anchor point, at the next moment, the indicator arrow is re-generated at the closest distance from the terminal device according to the positioning position of the terminal device, thereby achieving the effect of the indicator arrow circulating on the guide path, thereby helping the user to quickly focus on the three-dimensional guide arrow and improving the guiding effect of the three-dimensional guide arrow.
[0088] Figure 13 This is a schematic diagram of the structure of a device for generating a guide arrow provided by an embodiment of the present disclosure. The device can be understood as the terminal device or part of the functional modules in the terminal device in the above embodiment. Figure 13As shown, the generating device 1300 includes:
[0089] The first acquisition module 1301 is used to obtain a style file of shape points and three-dimensional guide arrows included in the navigation path;
[0090] A first generating module 1302 is configured to generate boundary points of the top surface of the 3D guide arrow based on the shape points included in the navigation path and the arrow width value recorded in the style file of the 3D guide arrow;
[0091] a correction module 1303 for correcting the perspective of the boundary point located in front of the anchor point to face the camera perspective according to the distance between the boundary point and the anchor point and the current camera perspective;
[0092] The second generating module 1304 is configured to generate boundary points of the side surface of the 3D guide arrow based on the corrected boundary points of the top surface and the arrow height value recorded in the pattern file, wherein the angle between the side surface and the top surface is equal to a preset angle;
[0093] The third generating module 1305 is configured to obtain the three-dimensional guide arrow based on the boundary points of the top surface and the boundary points of the side surface.
[0094] In one embodiment, the first generating module 1302 is configured to:
[0095] Based on the shape points included in the navigation path and the arrow width values recorded in the style file of the three-dimensional guide arrow, the internal skeleton points of the top surface of the three-dimensional guide arrow are segmented on the left and right sides of the shape points; at least the internal skeleton points are used as boundary points of the top surface.
[0096] In one embodiment, the first generating module 1302 may also be used to:
[0097] Taking the endoskeleton point as a base point, the exoskeleton point of the stereo guide arrow is segmented in a direction away from the endoskeleton point; and the endoskeleton point and the exoskeleton point are used as boundary points of the top surface.
[0098] In one embodiment, the generating device 1300 may further include a first smoothing module configured to:
[0099] Determining a line connecting two adjacent shape points among the shape points included in the navigation path;
[0100] Determine a normal vector perpendicular to a line connecting two adjacent shape points, wherein the normal vector has the shape point as a foot;
[0101] Determine a first angle between two normal vectors on a common point of two adjacent lines, wherein the two normal vectors point to an endoskeleton point on the same side;
[0102] In response to the first angle being greater than a first preset threshold, determining the opening direction of the first angle as a chamfering direction;
[0103] At least one endoskeleton point is inserted in the chamfer direction to smooth the endoskeleton of the side pointed to by the two normal vectors, wherein the endoskeleton refers to a curve obtained by connecting the endoskeleton points.
[0104] In one embodiment, the correction module 1303 is configured to:
[0105] generating a twist angle for correcting a boundary point in front of the anchor point to face the camera viewing angle according to a distance between the boundary point and the anchor point and a current camera viewing angle, wherein the anchor point refers to a shape point included in the navigation path and used to draw a guide arrow;
[0106] The boundary point located in front of the anchor point is twisted based on the twist angle, so that the viewing angle of the boundary point located in front of the anchor point on the top surface is oriented toward the camera viewing angle direction.
[0107] In one embodiment, the correction module 1303 is configured to:
[0108] For any boundary point in front of the anchor point, determine the progressive distance of the any boundary point relative to the anchor point according to the position of the anchor point;
[0109] The ratio of the progressive distance of any boundary point to the maximum progressive distance of the boundary points on the top surface is used as a weighting coefficient to weight the angle of the camera viewing angle to obtain the torsion angle of any boundary point.
[0110] In one embodiment, the generating device 1300 may further include a fourth generating module configured to:
[0111] Based on each boundary point on the top surface, generating a normal vector of the boundary point in a direction opposite to the camera viewing angle;
[0112] The boundary point of the bottom surface of the three-dimensional guide arrow is generated on the normal vector, and the distance between the boundary point of the bottom surface and the corresponding boundary point of the top surface is equal to the height of the three-dimensional guide arrow recorded in the style file.
[0113] In one embodiment, the first acquisition module 1301 is configured to:
[0114] Determine the guidance action for the road ahead based on the current positioning position and navigation path; obtain the style file of the three-dimensional guidance arrow corresponding to the guidance action based on the guidance action
[0115] In one embodiment, the generating device 1300 may further include a data cleaning module for:
[0116] Traversing the shape points and determining the distances between adjacent shape points;
[0117] For any shape point, in response to a distance between the shape point and a previous shape point or a next shape point being less than a preset distance, deleting the shape point;
[0118] and / or
[0119] Traversing the shape points, determining the lines connecting adjacent shape points and the second angle between two adjacent lines;
[0120] In response to the second angle being smaller than a second preset threshold, determining that the shape points on the two adjacent lines are collinear;
[0121] The first and last shape points of the collinear shape points are retained, and the shape points between the first and last shape points are deleted.
[0122] In one embodiment, the generating device 1300 may further include a mapping module configured to:
[0123] For a coordinate point on the 3D guide arrow, determining a ratio of a progressive distance of the coordinate point relative to the anchor point to a maximum progressive distance of the coordinate point on the 3D guide arrow;
[0124] Using the ratio as a weighting coefficient to weight the height of the texture image, to obtain the vertical coordinate of the texture corresponding to the coordinate point;
[0125] Obtaining the horizontal coordinate of the texture corresponding to the coordinate point from a preset texture mapping configuration table;
[0126] The texture is mapped to the coordinate point according to the ordinate and the abscissa.
[0127] In one embodiment, the generating device 1300, the mapping module is further configured to:
[0128] In response to reaching a preset time interval, the values of the horizontal coordinate and the vertical coordinate are changed according to a preset change amplitude; and the texture corresponding to the changed horizontal coordinate and vertical coordinate is mapped to the coordinate point.
[0129] The device provided in the embodiment of the present disclosure can point to the method of any of the above-mentioned method embodiments, and its execution method and beneficial effects are similar, which will not be repeated here.
[0130] An embodiment of the present disclosure also provides a terminal device, which includes a memory and a processor, wherein the memory is a non-volatile memory, and a computer program is stored in the memory. When the computer program is executed by the processor, the method of any of the above-mentioned method embodiments can be implemented, and its execution method and beneficial effects are similar, which will not be repeated here.
[0131] For example, Figure 14 This is a schematic diagram of the structure of a terminal device in the embodiment of the present disclosure. Figure 14 , which shows a schematic diagram of the structure of a terminal device 1400 suitable for implementing the embodiments of the present disclosure. The terminal device 1400 in the embodiments of the present disclosure may include but is not limited to devices with navigation and processing capabilities such as mobile phones, PADs (tablet computers), and car computers. Figure 14 The terminal device shown is merely an example and should not limit the functions and scope of use of the embodiments of the present disclosure.
[0132] like Figure 14 As shown, terminal device 1400 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 1401, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1402 or a program loaded from a storage device 1408 into a random access memory (RAM) 1403. Various programs and data required for the operation of terminal device 1400 are also stored in RAM 1403. Processing device 1401, ROM 1402, and RAM 1403 are connected to each other via a bus 1404. An input / output (I / O) interface 1405 is also connected to bus 1404.
[0133] Typically, the following devices may be connected to the I / O interface 1405: an input device 1406 including, for example, a touch screen, a touchpad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 1407 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 1408 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 1409. The communication device 1409 may allow the terminal device 1400 to communicate with other devices wirelessly or by wire to exchange data. Although Figure 14 The terminal device 1400 is shown as having various devices, but it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed instead.
[0134] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a non-transitory computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication device 1409, or installed from the storage device 1408, or installed from the ROM 1402. When the computer program is executed by the processing device 1401, the above-mentioned functions defined in the method of the embodiment of the present disclosure are performed.
[0135] It should be noted that the computer-readable medium mentioned above in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the two. A computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or component, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present disclosure, a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, device, or component. In the present disclosure, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, which carries computer-readable program code. Such a propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport a program for use by or in conjunction with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium may be transmitted using any suitable medium, including but not limited to wires, optical cables, RF (radio frequency), etc., or any suitable combination thereof.
[0136] The computer-readable medium may be included in the terminal device, or may exist independently without being incorporated into the terminal device.
[0137] The above-mentioned computer-readable medium carries one or more programs. When the above-mentioned one or more programs are executed by the processing device, the processing device is caused to: obtain the shape points and the style file of the three-dimensional guide arrow included in the navigation path; generate the boundary points of the top surface of the three-dimensional guide arrow based on the shape points included in the navigation path and the arrow width values recorded in the style file of the three-dimensional guide arrow; for the boundary points located in front of the anchor point, according to the distance between the boundary point and the anchor point and the current camera perspective, correct the perspective of the boundary points located in front of the anchor point to be in the direction of the camera perspective; based on the corrected boundary points of the top surface and the arrow height values recorded in the style file, generate the boundary points of the side surface of the three-dimensional guide arrow, and the angle between the side surface and the top surface is equal to the preset angle; based on the boundary points of the top surface and the boundary points of the side surface, obtain the three-dimensional guide arrow.
[0138] Computer program code for performing the operations of the present disclosure may be written in one or more programming languages, or a combination thereof, including, but not limited to, object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on the remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., through the Internet using an Internet service provider).
[0139] The flowcharts and block diagrams in the accompanying drawings illustrate the possible implementation architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flowchart or block diagram can represent a module, program segment, or a part of code, and the module, program segment, or a part of code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order than that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of the boxes in the block diagram and / or flowchart, can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0140] The units involved in the embodiments described in this disclosure may be implemented in software or hardware, wherein the name of a unit does not necessarily limit the unit itself.
[0141] The functions described above herein may be performed, at least in part, by one or more hardware logic components. For example, and without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chip (SOCs), complex programmable logic devices (CPLDs), and the like.
[0142] In the context of the present disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in conjunction with an instruction execution system, device or equipment. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium can include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0143] The present disclosure also provides a computer-readable storage medium in which a computer program is stored. When the computer program is executed by a processor, the above-mentioned Figure 2-Figure 9 The method of any embodiment has similar execution methods and beneficial effects, which will not be described in detail here.
[0144] The embodiment of the present disclosure also provides a computer program product, which is stored in a storage medium and can be used to implement Figure 2-Figure 9 The method of any embodiment has similar execution methods and beneficial effects, which will not be described in detail here.
[0145] It should be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or device comprising the element.
[0146] The foregoing description is intended only to provide specific embodiments of the present disclosure, intended to enable those skilled in the art to understand and implement the present disclosure. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present disclosure. Therefore, the present disclosure is not intended to be limited to the embodiments described herein, but rather to be construed in the broadest manner consistent with the principles and novel features disclosed herein.
Claims
1. A method for generating a guide arrow, wherein: include: Get the style file of the shape points and three-dimensional guide arrows included in the navigation path; Based on the shape points included in the navigation path and the arrow width values recorded in the style file of the 3D guide arrow, generating the boundary points of the top surface of the 3D guide arrow; wherein the shape points are the positioning points included in the navigation path; For a boundary point located in front of an anchor point, correcting the perspective of the boundary point located in front of the anchor point to be toward the camera perspective based on the distance between the boundary point and the anchor point and the current camera perspective; wherein the anchor point refers to a point in the navigation path that is used to draw a guide arrow; Based on the corrected boundary points of the top surface and the arrow height value recorded in the pattern file, the boundary points of the side surface of the three-dimensional guide arrow are generated, and the angle between the side surface and the top surface is equal to the preset angle; The three-dimensional guide arrow is obtained based on the boundary points of the top surface and the boundary points of the side surface.
2. The method according to claim 1, wherein The step of generating the boundary points of the top surface of the 3D guide arrow based on the shape points included in the navigation path and the arrow width values recorded in the style file of the 3D guide arrow comprises: Based on the shape points included in the navigation path and the arrow width values recorded in the style file of the 3D guide arrow, segmenting the top surface of the 3D guide arrow to obtain the internal skeleton points on the left and right sides of the shape points; At least the endoskeleton point is used as a boundary point of the top surface.
3. The method according to claim 2, wherein: After segmenting the top surface of the 3D guide arrow to obtain the internal skeleton points on the left and right sides of the shape point based on the shape point included in the navigation path and the arrow width value recorded in the style file of the 3D guide arrow, the method further includes: Taking the endoskeleton point as a base point, subdividing the exoskeleton point of the stereoscopic guide arrow in a direction away from the endoskeleton point; The step of using at least the endoskeleton point as a boundary point of the top surface includes: The endoskeleton points and the exoskeleton points are used as boundary points of the top surface.
4. The method according to claim 2, wherein: After segmenting the top surface of the 3D guide arrow to obtain the internal skeleton points on the left and right sides of the shape point based on the shape point included in the navigation path and the arrow width value recorded in the style file of the 3D guide arrow, the method further includes: Determining a line connecting two adjacent shape points among the shape points included in the navigation path; Determine a normal vector perpendicular to a line connecting two adjacent shape points, wherein the normal vector has the shape point as a foot; Determine a first angle between two normal vectors on a common point of two adjacent lines, wherein the two normal vectors point to an endoskeleton point on the same side; In response to the first angle being greater than a first preset threshold, determining the opening direction of the first angle as a chamfering direction; At least one endoskeleton point is inserted in the chamfer direction to smooth the endoskeleton of the side pointed to by the two normal vectors, wherein the endoskeleton refers to a curve obtained by connecting the endoskeleton points.
5. The method according to claim 3, wherein After segmenting the top surface of the 3D guide arrow to obtain the internal skeleton points on the left and right sides of the shape point based on the shape point included in the navigation path and the arrow width value recorded in the style file of the 3D guide arrow, the method further includes: Determining a line connecting two adjacent shape points among the shape points included in the navigation path; Determine a normal vector perpendicular to a line connecting two adjacent shape points, wherein the normal vector has the shape point as a foot; Determine a first angle between two normal vectors on a common point of two adjacent lines, wherein the two normal vectors point to an endoskeleton point on the same side; In response to the first angle being greater than a first preset threshold, determining the opening direction of the first angle as a chamfering direction; At least one endoskeleton point is inserted in the chamfer direction to smooth the endoskeleton of the side pointed to by the two normal vectors, wherein the endoskeleton refers to a curve obtained by connecting the endoskeleton points.
6. The method according to claim 1, wherein The step of correcting the perspective of the boundary point located in front of the anchor point to face the camera perspective according to the distance between the boundary point and the anchor point and the current camera perspective includes: generating a twist angle for correcting the boundary point in front of the anchor point to face the camera viewing angle according to the distance between the boundary point and the anchor point and the current camera viewing angle; The boundary point located in front of the anchor point is twisted based on the twist angle, so that the viewing angle of the boundary point located in front of the anchor point on the top surface is oriented toward the camera viewing angle direction.
7. The method according to claim 6, wherein: The step of generating a twist angle for correcting the boundary point in front of the anchor point to face the camera viewing angle according to the distance between the boundary point and the anchor point and the current camera viewing angle includes: For any boundary point in front of the anchor point, determine the progressive distance of the any boundary point relative to the anchor point according to the position of the anchor point; The ratio of the progressive distance of any boundary point to the maximum progressive distance of the boundary points on the top surface is used as a weighting coefficient to weight the angle of the camera viewing angle to obtain the torsion angle of any boundary point.
8. The method according to claim 1, wherein The method further comprises: Based on each boundary point on the top surface, generating a normal vector of the boundary point in a direction opposite to the camera viewing angle; The boundary point of the bottom surface of the three-dimensional guide arrow is generated on the normal vector, and the distance between the boundary point of the bottom surface and the corresponding boundary point of the top surface is equal to the height of the three-dimensional guide arrow recorded in the style file.
9. The method according to any one of claims 1 to 8, wherein The method of obtaining the style file of the shape points and the three-dimensional guide arrows included in the navigation path includes: Determine the guidance action on the road ahead based on the current positioning position and navigation path; According to the guiding action, a style file of a three-dimensional guiding arrow corresponding to the guiding action is obtained.
10. The method according to any one of claims 1 to 8, wherein Before generating the boundary points of the top surface of the 3D guide arrow based on the shape points included in the navigation path and the arrow width values recorded in the style file of the 3D guide arrow, the method further includes: Traversing the shape points and determining the distances between adjacent shape points; For any shape point, in response to a distance between the shape point and a previous shape point or a next shape point being less than a preset distance, deleting the shape point; and / or Traversing the shape points, determining the lines connecting adjacent shape points and the second angle between two adjacent lines; In response to the second angle being smaller than a second preset threshold, determining that the shape points on the two adjacent lines are collinear; The first and last shape points of the collinear shape points are retained, and the shape points between the first and last shape points are deleted.
11. The method according to any one of claims 1 to 6, wherein: After obtaining the three-dimensional guide arrow based on the boundary points of the top surface and the boundary points of the side surface, the method further includes: For a coordinate point on the 3D guide arrow, determining a ratio of a progressive distance of the coordinate point relative to the anchor point to a maximum progressive distance of the coordinate point on the 3D guide arrow; Using the ratio as a weighting coefficient to weight the height of the texture image, to obtain the vertical coordinate of the texture corresponding to the coordinate point; Obtaining the horizontal coordinate of the texture corresponding to the coordinate point from a preset texture mapping configuration table; The texture is mapped to the coordinate point according to the ordinate and the abscissa.
12. The method according to claim 11, wherein The method further comprises: In response to reaching a preset time interval, changing the values of the abscissa and the ordinate according to a preset change amplitude; The texture corresponding to the changed horizontal coordinate and vertical coordinate is mapped to the coordinate point.
13. A device for generating a guide arrow, wherein: include: The first acquisition module is used to obtain a style file of shape points and three-dimensional guide arrows included in the navigation path; The first generating module is used to generate the boundary points of the top surface of the 3D guide arrow based on the shape points included in the navigation path and the arrow width value recorded in the style file of the 3D guide arrow; wherein the shape points are the positioning points included in the navigation path a correction module, configured to correct, for a boundary point located in front of an anchor point, the perspective of the boundary point located in front of the anchor point to be toward the camera perspective based on the distance between the boundary point and the anchor point and the current camera perspective; wherein the anchor point is a geometric point included in the navigation path and used to draw a guide arrow; A second generating module is configured to generate boundary points of a side surface of the three-dimensional guide arrow based on the corrected boundary points of the top surface and the arrow height value recorded in the pattern file, wherein the angle between the side surface and the top surface is equal to a preset angle; The third generating module is used to obtain the three-dimensional guide arrow based on the boundary points of the top surface and the boundary points of the side surface.
14. A terminal device, wherein: The system comprises a memory and a processor, wherein a computer program is stored in the memory, and when the computer program is executed by the processor, the method according to any one of claims 1 to 12 is implemented.
15. A computer program product, wherein The program product is stored in a storage medium, and when the program product is run, the method according to any one of claims 1 to 12 is executed.
Citation Information
Patent Citations
Vehicular display device
CN108139223A
Method and device for automatically extracting arrow type marking lines in high-precision map manufacturing
CN109858374A