Path planning method and apparatus

By entering target graphics and target areas on the interactive interface, and using automated map matching and path planning technology, the problem of user-defined path planning is solved, and efficient and user-friendly path planning applications are achieved.

WO2025060526A1PCT designated stage expired Publication Date: 2025-03-27HUAWEI TECH CO LTD
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/098959
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-09-18
Filing Date
2024-06-13
Publication Date
2025-03-27

AI Technical Summary

Technical Problem

The prior art is difficult to implement user-defined path planning, especially when it is necessary to design travel graphics with specific shapes, and there is a lack of convenient application tools.

Method used

A path planning method and device are provided, and by obtaining the target graphics and target areas entered by the user on the interactive interface, map matching and path planning are automated to ensure that the similarity between the shape of the target path and the target graphics meets preset conditions.

Benefits of technology

It realizes automation of path planning, improves the efficiency of path planning, and improves user experience, allowing users to easily obtain a path that meets expectations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024098959_27032025_PF_FP_ABST
    Figure CN2024098959_27032025_PF_FP_ABST
Patent Text Reader

Abstract

Provided in the present application are a path planning method and apparatus. The path planning method of the present application comprises: acquiring a target graph and a target area, wherein the target graph and the target area are generated on the basis of an operation of a user on an interaction interface; on the basis of the target graph, performing map matching and path planning in the target area, so as to obtain a target path, wherein the similarity between the shape formed by the target path and the shape of the target graph meets a preset condition; and presenting the target path to the user. The present application can improve the efficiency of path planning, and can also improve the user experience.
Need to check novelty before this filing date? Find Prior Art

Description

Path planning method and device Technical Field

[0001] The present application relates to map technology, and in particular to a path planning method and device. Background Art

[0002] With the development of information technology, map matching and path planning services have become important components and common applications of Geographical Information Systems (GIS). Map matching mainly realizes the accurate identification and matching of physical elements (real geographic elements), and applies it to the analysis of spatial resources and the integration and update of geographic information. For example, forestry resources can be counted by identifying landform features, or map stitching and remote sensing image updates can be performed by extracting feature information from remote sensing images; path planning is mainly aimed at scenarios where the goal is to plan the optimal path with factors such as distance or time when the starting point, waypoints, and end point are known. For example, it provides the shortest navigation route, and plans the shortest distance route through multiple waypoints.

[0003] In addition, new application scenarios and demands for map matching and route planning services have emerged. For example, users can use electronic maps and satellite positioning systems such as the Global Positioning System (GPS) to design specific movement patterns based on their personal needs. This can be used for personalized self-expression, interactive collaboration among team members, or for urban landscape design and display. However, there are currently no convenient applications that meet this need.

[0004] Summary of the Invention

[0005] The present application provides a path planning method and device, which can improve the efficiency of path planning and enhance the user experience.

[0006] In a first aspect, the present application provides a path planning method, comprising: obtaining a target graphic and a target area, wherein the target graphic and the target area are generated based on the user's operation on an interactive interface; performing map matching and path planning within the target area according to the target graphic to obtain a target path, wherein the similarity between the shape of the target path and the shape of the target graphic meets a preset condition; and displaying the target path to the user.

[0007] In an embodiment of the present application, map matching and path planning are automatically performed for the user within the target area based on the target graphic input by the user, thereby realizing fully automated path planning. In this way, the user only needs to input requirements (including target graphics, target area, target length, etc.) to obtain a travel path that meets his or her expectations. On the one hand, this greatly improves the efficiency of path planning, and on the other hand, it enhances the user experience.

[0008] The target graphics and target areas are generated based on the user's operations on the interactive interface.

[0009] Acquiring a target graphic may include:

[0010] (1) Displaying a first interactive interface, which may include a blank drawing board or a multi-option menu containing multiple graphics.

[0011] Optionally, the blank drawing board can be used for the user to directly draw the target graphic on it using a mouse, pen, finger, etc.

[0012] Optionally, the multi-option menu may include controls for a variety of graphics, and the user may click a corresponding control to select a desired image as the target graphic.

[0013] In addition, the first interactive interface can also use other methods to collect target graphics input by the user, for example, displaying pictures (such as Gemini, Pisces, etc.), characters (such as "ABC"), etc., and the embodiments of the present application do not specifically limit this.

[0014] (2) Receive a first command, where the first command is generated by a user's operation on a first interactive interface, and the first command includes a graphic drawn by the user or a graphic selected by the user.

[0015] After seeing the first interactive interface, the user uses a corresponding operation to input a target graphic. This operation can trigger the generation of a first command, and the first command can include the target graphic input by the user using any of the above methods.

[0016] (3) In response to the first command, the graphic drawn by the user or the graphic selected by the user is used as the target graphic.

[0017] After receiving the first command, the electronic device obtains the target graphic in response to the first command.

[0018] Acquiring a target area may include:

[0019] (1) Displaying a second interactive interface, which includes an electronic map or a multi-option menu containing multiple areas.

[0020] The second interactive interface can be used to allow the user to select a target area, that is, the user circles a range on the electronic map, so that the electronic device only needs to perform map matching and path planning within this range without paying attention to other uncircled ranges, thereby improving the efficiency of path planning.

[0021] Optionally, the second interactive interface may be an electronic map, and the user may display the desired target area on the screen of the electronic device by zooming in, zooming out, dragging, etc., and then circle the target area by drawing a circle, clicking, etc.

[0022] Optionally, the second section of the interactive interface may include a multi-option menu of multiple administrative area levels from large to small. The user clicks the menu and clicks the name of the administrative area of ​​the corresponding level, and can eventually narrow the scope to the city, district, street, etc., thereby using this as the target area.

[0023] In addition, the second interactive interface can also use other methods to collect the target area input by the user, and the embodiments of the present application do not specifically limit this. It should be noted that the second interactive interface and related operation scenarios are optional, and the second interactive interface can also be absent. For example, based on the current user location, an area within 5km can be automatically selected, and the embodiments of the present application do not specifically limit this.

[0024] In one possible implementation, the second interactive interface may further include a control for setting a target length, where the target length indicates the total length, total kilometers, or total distance that the user expects to travel. For example, if the user expects to run 5 kilometers, 5 kilometers can be entered through the aforementioned control. When the electronic device plans a route, the total length remains within the target length ± a floating length, and the floating length does not exceed a preset threshold or a preset ratio. The control for setting the target length may include a control for directly entering a number, a multi-option menu control, etc., and this embodiment of the application does not specifically limit this.

[0025] Optionally, the electronic device may also pre-set a default target area and target length. For example, the default target area may be the administrative area of ​​the currently located user, and the default target length may be 5 kilometers. If the user does not set a target area and target length, map matching and route planning may be performed using the default target area and default target length.

[0026] (2) Receiving a second command, where the second command is generated by an operation performed by the user on the second interactive interface, and the second command includes an area circled or selected by the user on the electronic map.

[0027] After the user sees the second interactive interface, he or she uses a corresponding operation to input the target area. This operation can trigger the generation of a second command, and the second command can include the target area input by the user using any of the above methods.

[0028] (3) In response to the second command, the area circled or selected by the user on the electronic map is used as the target area.

[0029] After receiving the second command, the electronic device obtains the target area in response to the second command.

[0030] In the embodiment of the present application, map matching can be performed within the target area based on the target graphic to obtain multiple position coordinate points, and the position coordinate points are geographical locations that can be reached within the target area.

[0031] That is, a location coordinate point is a geographical location that exists in the real world and is accessible to users, such as an intersection, a street, a country road, a building, etc. Locations such as lakes, rivers, seas, ravines, and rift valleys, which exist in the real world but are inaccessible to users or require special tools to reach, do not fall within the scope of location coordinate points in this application. It should be noted that in addition to the aforementioned examples, location coordinate points may also include other situations, and the embodiments of this application do not specifically limit this.

[0032] In one possible implementation, multiple key position points on the target graphic can be first obtained, and the multiple key position points are used to describe the shape of the target graphic; then, map road network data of the target area is obtained; then, map matching is performed based on the multiple key position points and the map road network data to obtain multiple position coordinate points, and the multiple position coordinate points correspond to the multiple key position points; and path planning is performed between any two adjacent position coordinate points among the multiple position coordinate points to obtain the target path.

[0033] The key points of the target graphic can describe the shape characteristics of the target graphic. Appropriate key points can be selected from the target graphic using certain rules or methods, such as points corresponding to each star in a constellation, vertices or intersections in a polygon, etc. Alternatively, key points can be determined using certain rules based on geometric information such as connectivity, topological features, and curvature. This is not specifically limited in the present embodiment.

[0034] Optionally, the map road network data can come from a map application, GPS, etc., and different roads can usually be identified according to the road network type. Based on the user's application scenario, such as running, driving navigation, etc., unnecessary roads can be excluded first. For example, if running, highways and viaducts can be excluded first. If driving, pedestrian streets, rivers, lakes and other waterways can be excluded first. Other situations can also serve as a basis for filtering the map road network data, and this embodiment of the application does not specifically limit this. Pre-screening the map road network data can reduce the amount of data in subsequent steps and improve the efficiency of map matching and path planning.

[0035] Map matching is performed based on multiple key location points and map road network data to obtain multiple location coordinate points. There may be multiple matching results. For example, within the target area, multiple paths that meet expectations (i.e., high graphic similarity, path lengths that meet the user-set target length, etc.) can be obtained based on target graphic matching. In this way, the matching results may include multiple paths, and correspondingly, there are multiple sets of location coordinate points.

[0036] The similarity between the shape of the target path and the shape of the target figure satisfies a preset condition. Specifically, when map matching is performed to obtain multiple sets of location coordinate points, the shapes formed by each of the multiple sets of location coordinate points can be compared with the shape of the target figure. A set of location coordinate points from the multiple sets of location coordinate points whose similarity satisfies the preset condition is then determined as the multiple location coordinate points. For example, calculating the similarity between the shape formed by the set of location coordinate points and the shape of the target figure includes comparing distance deviations, angular direction deviations, and other factors between a set of corresponding point pairs on the shape formed by the target path and the shape of the target figure, thereby evaluating the similarity between the shape formed by the target path and the target figure. The preset condition may include the aforementioned similarity being greater than or equal to a preset threshold. Specifically, when the aforementioned similarity is greater than or equal to the preset threshold, the similarity between the two is considered high, meeting the requirements for path planning according to the target figure, and the set of location coordinate points can be retained and used as the multiple location coordinate points described above. When the aforementioned similarity is less than the preset threshold, the similarity between the two is considered low, not meeting the requirements for path planning according to the target figure, and the set of location coordinate points can be discarded. Alternatively, the same evaluation method may be used to sort the similarities of the graphs respectively formed by multiple groups of position coordinate points, and a group of position coordinate points with a higher similarity may be selected and used as the multiple position coordinate points mentioned above.

[0037] It should be noted that, in addition to the above description, the target path may also refer to a path that meets certain characteristics or requirements, and the embodiments of the present application do not specifically limit this.

[0038] In a possible implementation, when an unreachable location point is obtained by performing map matching, a reachable location point closest to the unreachable location point is queried and obtained as a location coordinate point based on map road network data.

[0039] As mentioned above, geographical locations such as lakes, rivers, seas, ravines, and rift valleys exist but are inaccessible to users or require special tools to reach. Such geographical locations can be called non-reachable locations. If the map matches a non-reachable location point, you can further query nearby reachable location points based on the map road network data to ensure that the multiple location coordinate points finally output are all reachable geographical locations. In this way, the target path planned based on multiple location coordinate points not only meets the user's needs but also ensures that the user can achieve it.

[0040] Path planning between any two adjacent location coordinate points among the multiple location coordinate points can utilize the relevant logic of the map application. For example, the path with the shortest distance between the two points is the optimal path, or the path with the shortest travel time between the two points is the optimal path, and so on. The optimal paths between the two adjacent locations among the multiple location coordinate points are ultimately connected to form the target path. It should be noted that the foregoing description only describes the optimal path as an example. The embodiments of the present application may also utilize other logic to determine the optimal path, and this is not specifically limited.

[0041] In one possible implementation, a third interactive interface may be displayed, which includes a target path including multiple location coordinate points and a user's travel trajectory obtained based on positioning. The location coordinate points are reachable geographical locations within the target area.

[0042] This can combine the user's travel trajectory and target path. On the one hand, it can provide navigation for the user. On the other hand, it can allow the user to intuitively see where they have traveled to, how much distance they have completed, how far they are from the destination, etc. This can enhance the user experience and strengthen their trust in the path planning application.

[0043] Optionally, when the user passes by the first location coordinate point, the first location coordinate point may be marked on the third interactive interface to indicate that the user has passed by the first location coordinate point, where the first location coordinate point is one of the multiple location coordinate points.

[0044] Optionally, when the user passes through multiple location coordinate points, a graph consisting of the user's travel trajectory can be displayed on the third interactive interface, and the graph includes the user's actual travel trajectory and / or a graph consisting of straight lines connecting multiple location coordinate points.

[0045] In one possible implementation, a fourth interactive interface may be displayed, the fourth interactive interface including information for prompting the user to store a travel trajectory; a third command is received, the third command being generated by an operation performed by the user on the fourth interactive interface; and a graphic consisting of the user's travel trajectory is stored in response to the third command.

[0046] When the user completes the journey along the target path, the user's movement trajectory can be saved as a picture. The movement trajectory can be the user's actual movement trajectory or a graph formed by connecting position coordinate points.

[0047] In the second aspect, the present application provides a path planning device, comprising: an interactive module for obtaining a target graphic and a target area, wherein the target graphic and the target area are generated based on the user's operation on the interactive interface; a planning module for performing map matching and path planning within the target area according to the target graphic to obtain a target path, and the similarity between the shape of the target path and the shape of the target graphic meets a preset condition; the interactive module is also used to display the target path to the user.

[0048] In one possible implementation, the planning module is specifically used to perform map matching within the target area according to the target graphic to obtain multiple location coordinate points, where the location coordinate points are reachable geographical locations within the target area; and perform path planning between any two adjacent location coordinate points among the multiple location coordinate points to obtain the target path.

[0049] In one possible implementation, the planning module is specifically used to obtain multiple key position points on the target graphic, and the multiple key position points are used to describe the shape of the target graphic; obtain map road network data of the target area; perform map matching based on the multiple key position points and the map road network data to obtain the multiple position coordinate points, and the multiple position coordinate points correspond to the multiple key position points.

[0050] In one possible implementation, the planning module is specifically configured to, when map matching is performed to obtain multiple groups of position coordinate points, obtain the similarity between the shapes formed by each of the multiple groups of position coordinate points and the shape of the target graphic; and determine a group of position coordinate points among the multiple groups of position coordinate points whose similarity meets the preset conditions as the multiple position coordinate points.

[0051] In a possible implementation, the planning module is further used to query and obtain the reachable location point closest to the unreachable location point as the location coordinate point based on the map road network data when a non-reachable location point is obtained through map matching.

[0052] In a possible implementation, the preset condition includes that the similarity is greater than or equal to a preset threshold.

[0053] In one possible implementation, the interaction module is specifically used to display a first interaction interface, which includes a blank drawing board or a multi-option menu containing multiple graphics; receive a first command, which is generated by a user operation on the first interaction interface, and the first command includes a graphic drawn by the user or a selected graphic; in response to the first command, use the graphic drawn by the user or the selected graphic as the target graphic.

[0054] In one possible implementation, the interaction module is specifically used to display a second interaction interface, where the second interaction interface includes an electronic map or a multi-option menu containing multiple areas; receive a second command, where the second command is generated by an operation performed by a user on the second interaction interface, and the second command includes an area circled or selected by the user on the electronic map; and in response to the second command, use the area circled by the user on the electronic map or the selected area as the target area.

[0055] In one possible implementation, the interaction module is also used to display a third interaction interface, which includes the target path, which includes multiple location coordinate points and the user's travel trajectory obtained based on positioning, and the location coordinate points are geographical locations that can be reached within the target area.

[0056] In one possible implementation, the interaction module is further configured to mark a first location coordinate point on the third interaction interface when the user passes through the first location coordinate point to indicate that the user has passed through the first location coordinate point, and the first location coordinate point is one of the multiple location coordinate points.

[0057] In one possible implementation, the interaction module is also used to display a graphic consisting of the user's travel trajectory on the third interaction interface when the user passes through the multiple location coordinate points, and the graphic includes the user's actual travel trajectory and / or a graphic consisting of straight lines connecting the multiple location coordinate points.

[0058] In one possible implementation, the interaction module is also used to display a fourth interaction interface, which includes information for prompting the user to store the travel trajectory; receive a third command, which is generated by the user's operation on the fourth interaction interface; and store a graphic consisting of the user's travel trajectory in response to the third command.

[0059] In a third aspect, the present application provides an electronic device comprising: one or more processors; a memory for storing one or more programs; when the one or more programs are executed by the one or more processors, the one or more processors implement a method as described in any one of the above-mentioned first aspects.

[0060] In a fourth aspect, the present application provides a computer-readable storage medium comprising a computer program, wherein when the computer program is executed on a computer, the computer is enabled to perform any of the methods described in the first aspect.

[0061] In a fifth aspect, the present application provides a computer program product, which includes computer program code. When the computer program code is run on a computer, the computer executes any one of the methods in the first aspect.

[0062] In a sixth aspect, the present application provides a chip comprising a processor and a memory, wherein the memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory to execute a method as described in any one of the above-mentioned first aspects. BRIEF DESCRIPTION OF THE DRAWINGS

[0063] FIG1 is a schematic structural diagram of an electronic device 100 according to an embodiment of the present application;

[0064] FIG2 is a software structure block diagram of the electronic device 100 according to an embodiment of the present application;

[0065] FIG3 is a flow chart of a process 300 of a path planning method according to an embodiment of the present application;

[0066] FIG4 is an exemplary flow chart of a path planning method according to an embodiment of the present application;

[0067] FIG5a is a schematic diagram of an interactive interface according to an embodiment of the present application;

[0068] FIG5 b is a schematic diagram of an interactive interface according to an embodiment of the present application;

[0069] FIG5c is a schematic diagram of an interactive interface according to an embodiment of the present application;

[0070] FIG5 d is a schematic diagram of an interactive interface according to an embodiment of the present application;

[0071] FIG5e is a schematic diagram of an interactive interface according to an embodiment of the present application;

[0072] FIG6 a is a schematic diagram of a set of key position points of a target graphic;

[0073] FIG6 b is a method for representing a set of key position points of a target graphic;

[0074] FIG7 a is a schematic diagram of the projection position;

[0075] Figure 7b shows the projection position.

[0076] Figure 8 is the setting interface of the path planning conditions;

[0077] FIG9a is a schematic diagram of an interactive interface according to an embodiment of the present application;

[0078] FIG9 b is a schematic diagram of an interactive interface according to an embodiment of the present application;

[0079] FIG9c is a schematic diagram of an interactive interface according to an embodiment of the present application;

[0080] Figure 9d is a schematic diagram of the interactive interface of an embodiment of the present application;

[0081] Figure 9e is a schematic diagram of the interactive interface of an embodiment of the present application;

[0082] FIG10 is a schematic structural diagram of a path planning device 1000 according to an embodiment of the present application. DETAILED DESCRIPTION

[0083] To make the objectives, technical solutions, and advantages of this application more clear, the technical solutions of this application will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments of this application, all other embodiments obtained by ordinary technicians in this field without making any creative efforts are within the scope of protection of this application.

[0084] The terms "first," "second," and the like in the description, embodiments, claims, and drawings of this application are used solely for descriptive purposes and are not to be construed as indicating or implying relative importance or order. Furthermore, the terms "including," "having," and any variations thereof are intended to cover non-exclusive inclusions, such as, for example, inclusion of a series of steps or units. A method, system, product, or apparatus is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0085] It should be understood that in this application, "at least one (item)" means one or more, and "plurality" means two or more. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.

[0086] With the rapid development of GIS and the widespread adoption of smart devices, new application scenarios and demands for map matching and route planning services have emerged. For example, users can leverage electronic maps and satellite positioning systems like GPS to design line graphics or point-to-point connected graphics with specific shapes or meanings based on their individual needs. This allows for personalized self-expression, interactive collaboration among team members, and urban landscape design and presentation. Point-to-point connected graphics, compared to line graphics, offer lower requirements for road networks and are easier to design than line graphics, leading to their increasing interest.

[0087] Common map applications provide users with a visual electronic map interface, allowing users to select the required location on the map. The application then connects the locations selected by the user in sequence, and then obtains the planned route between the two points through navigation services.

[0088] In some applications, users input a desired pattern and adjust its location, size, and angle on an electronic map. After confirmation, the pattern is projected onto a map of the area. The user then selects key locations along the edge of the pattern based on the displayed image. The application automatically generates a feasible path based on these key locations. However, this technology only provides a visual tool to assist with path planning. Essentially, users still need to manually select locations or plan paths based on their own needs and subjective experience, and automated implementation remains to be achieved.

[0089] Based on the above technical problems, the present application provides a path planning method that can perform map matching and path planning on a map based on the target graphics input by the user, and automatically provide the user with an implementable target path.

[0090] Before describing the technical solutions of the embodiments of the present application, the electronic device of the embodiments of the present application will be described with reference to the accompanying drawings. During the specific implementation of the embodiments of the present application, the electronic device may be a computer, tablet, smartphone, or other device. It should be noted that in actual applications, the electronic device shown in FIG1 is only an example of adaptability and is not limited to this application.

[0091] FIG1 is a schematic diagram of the structure of an electronic device 100 according to an embodiment of the present application. It should be understood that the electronic device 100 shown in FIG1 is merely an example of an electronic device, and that the electronic device 100 may have more or fewer components than shown, may combine two or more components, or may have a different component configuration. The various components shown in FIG1 may be implemented in hardware, including one or more signal processing and / or application-specific integrated circuits, software, or a combination of hardware and software.

[0092] The electronic device 100 may include: a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, a sensor module 180, a button 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.

[0093] The processor 110 may include one or more processing units. For example, the processor 110 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU). The different processing units may be independent devices or integrated into one or more processors.

[0094] The controller may be the nerve center and command center of the electronic device 100. The controller may generate an operation control signal according to the instruction operation code and the timing signal to complete the control of fetching and executing instructions.

[0095] Processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in processor 110 is a cache memory. This memory can store instructions or data that have just been used or are being recycled by processor 110. If processor 110 needs to use the same instruction or data again, it can directly access the memory. This avoids duplicate accesses, reduces processor 110 latency, and thus improves system efficiency.

[0096] In some embodiments, the processor 110 may include one or more interfaces. The interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface.

[0097] The I2C interface is a bidirectional synchronous serial bus that includes a serial data line (SDA) and a serial clock line (SCL). In some embodiments, the processor 110 may include multiple I2C bus lines. The processor 110 may be coupled to the touch sensor 180K, the charger, the flash, the camera 193, and the like via different I2C bus interfaces. For example, the processor 110 may be coupled to the touch sensor 180K via the I2C interface, enabling communication between the processor 110 and the touch sensor 180K via the I2C bus interface, thereby implementing the touch function of the electronic device 100.

[0098] The I2S interface can be used for audio communication. In some embodiments, the processor 110 can include multiple I2S buses. The processor 110 can be coupled to the audio module 170 via the I2S bus to enable communication between the processor 110 and the audio module 170. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 via the I2S interface, enabling the function of answering calls through a Bluetooth headset.

[0099] The PCM interface can also be used for audio communication, sampling, quantizing, and encoding analog signals. In some embodiments, the audio module 170 and the wireless communication module 160 can be coupled via a PCM bus interface. In some embodiments, the audio module 170 can also transmit audio signals to the wireless communication module 160 via the PCM interface, enabling the function of answering calls via a Bluetooth headset. Both the I2S interface and the PCM interface can be used for audio communication.

[0100] The UART interface is a universal serial data bus used for asynchronous communication. This bus can be a bidirectional communication bus. It converts the data to be transmitted between serial communication and parallel communication. In some embodiments, the UART interface is typically used to connect the processor 110 and the wireless communication module 160. For example, the processor 110 communicates with the Bluetooth module in the wireless communication module 160 via the UART interface to implement Bluetooth functionality. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 via the UART interface, enabling the function of playing music through Bluetooth headphones.

[0101] The MIPI interface can be used to connect the processor 110 to peripheral devices such as the display 194 and the camera 193. MIPI interfaces include the camera serial interface (CSI) and the display serial interface (DSI). In some embodiments, the processor 110 and the camera 193 communicate via the CSI interface to implement the camera function of the electronic device 100. The processor 110 and the display 194 communicate via the DSI interface to implement the display function of the electronic device 100.

[0102] The GPIO interface can be configured via software. The GPIO interface can be configured as either a control signal or a data signal. In some embodiments, the GPIO interface can be used to connect the processor 110 to the camera 193, display 194, wireless communication module 160, audio module 170, sensor module 180, etc. The GPIO interface can also be configured as an I2C interface, an I2S interface, a UART interface, a MIPI interface, etc.

[0103] The USB interface 130 is an interface that complies with USB standards and may be a Mini USB interface, a Micro USB interface, a USB Type-C interface, or the like. The USB interface 130 can be used to connect a charger to charge the electronic device 100, or to transfer data between the electronic device 100 and peripheral devices. It can also be used to connect headphones to play audio. This interface can also be used to connect other electronic devices, such as augmented reality devices.

[0104] It is understood that the interface connection relationship between the modules illustrated in the embodiments of the present application is merely an illustrative illustration and does not constitute a structural limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may also adopt different interface connection methods from the above embodiments, or a combination of multiple interface connection methods.

[0105] The charging management module 140 is configured to receive charging input from a charger. The charger can be either a wireless charger or a wired charger. In some wired charging embodiments, the charging management module 140 can receive charging input from the wired charger via the USB interface 130. In some wireless charging embodiments, the charging management module 140 can receive wireless charging input via the wireless charging coil of the electronic device 100. While charging the battery 142, the charging management module 140 can also provide power to the electronic device via the power management module 141.

[0106] The power management module 141 is used to connect the battery 142, the charging management module 140 and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140, and provides power to the processor 110, the internal memory 121, the external memory, the display 194, the camera 193, and the wireless communication module 160. The power management module 141 can also be used to monitor parameters such as battery capacity, battery cycle count, and battery health status (leakage, impedance). In some other embodiments, the power management module 141 can also be set in the processor 110. In other embodiments, the power management module 141 and the charging management module 140 can also be set in the same device.

[0107] The wireless communication function of the electronic device 100 can be implemented through the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor and the baseband processor.

[0108] Antenna 1 and Antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization. For example, antenna 1 can be reused as a diversity antenna for a wireless local area network. In other embodiments, the antennas can be used in conjunction with a tuning switch.

[0109] The mobile communication module 150 can provide solutions for wireless communications including 2G / 3G / 4G / 5G applied to the electronic device 100. The mobile communication module 150 may include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves from the antenna 1, and filter, amplify, and process the received electromagnetic waves, and transmit them to the modulation and demodulation processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modulation and demodulation processor, and convert it into electromagnetic waves for radiation through the antenna 1. In some embodiments, at least some of the functional modules of the mobile communication module 150 can be set in the processor 110. In some embodiments, at least some of the functional modules of the mobile communication module 150 can be set in the same device as at least some of the modules of the processor 110.

[0110] The modem processor may include a modulator and a demodulator. The modulator is used to modulate the low-frequency baseband signal to be transmitted into a medium-high frequency signal. The demodulator is used to demodulate the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After being processed by the baseband processor, the low-frequency baseband signal is passed to the application processor. The application processor outputs a sound signal through an audio device (not limited to the speaker 170A, the receiver 170B, etc.) or displays an image or video through the display screen 194. In some embodiments, the modem processor may be an independent device. In other embodiments, the modem processor may be independent of the processor 110 and be set in the same device as the mobile communication module 150 or other functional modules.

[0111] The wireless communication module 160 can provide wireless communication solutions including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), etc., which are applied to the electronic device 100. The wireless communication module 160 can be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 110. The wireless communication module 160 can also receive the signal to be sent from the processor 110, frequency modulate it, amplify it, and convert it into electromagnetic waves for radiation through the antenna 2.

[0112] In some embodiments, the antenna 1 of the electronic device 100 is coupled to the mobile communication module 150, and the antenna 2 is coupled to the wireless communication module 160, so that the electronic device 100 can communicate with a network and other devices through wireless communication technologies. The wireless communication technologies may include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), wideband code division multiple access (WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technology. The GNSS may include a global positioning system (GPS), a global navigation satellite system (GLONASS), a Beidou navigation satellite system (BDS), a quasi-zenith satellite system (QZSS) and / or a satellite based augmentation system (SBAS).

[0113] Electronic device 100 implements display functionality through a GPU, display screen 194, and an application processor. A GPU is a microprocessor for image processing that connects display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. Processor 110 may include one or more GPUs that execute program instructions to generate or modify display information.

[0114] Display screen 194 is used to display images, videos, and the like. Display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a MiniLED, a MicroLED, a Micro-oLed, or a quantum dot light-emitting diode (QLED). In some embodiments, electronic device 100 may include one or N display screens 194, where N is a positive integer greater than one.

[0115] The electronic device 100 can implement a shooting function through an ISP, a camera 193, a video codec, a GPU, a display screen 194, and an application processor.

[0116] The ISP processes data fed back by camera 193. For example, when taking a photo, the shutter is opened, and light is transmitted through the lens to the camera's photosensitive element. The light signal is converted into an electrical signal, which is then passed to the ISP for processing and converted into a visible image. The ISP can also perform algorithmic optimization on image noise, brightness, and skin tone. It can also optimize parameters such as exposure and color temperature of the captured scene. In some embodiments, the ISP can be located within camera 193.

[0117] The camera 193 is used to capture still images or videos. The object generates an optical image through the lens and projects it onto the photosensitive element. The photosensitive element can be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the light signal into an electrical signal, and then passes the electrical signal to the ISP for conversion into a digital image signal. The ISP outputs the digital image signal to the DSP for processing. The DSP converts the digital image signal into an image signal in a standard RGB, YUV or other format. In some embodiments, the electronic device 100 may include 1 or N cameras 193, where N is a positive integer greater than 1.

[0118] The digital signal processor is used to process digital signals. In addition to processing digital image signals, it can also process other digital signals. For example, when the electronic device 100 selects a frequency point, the digital signal processor is used to perform Fourier transform on the frequency point energy.

[0119] Video codecs are used to compress or decompress digital video. Electronic device 100 may support one or more video codecs. This allows electronic device 100 to play or record videos in various encoding formats, such as Moving Picture Experts Group (MPEG) 1, MPEG2, MPEG3, and MPEG4.

[0120] The NPU is a neural network (NN) computing processor. Drawing on the structure of biological neural networks, such as the transmission patterns between neurons in the human brain, it rapidly processes input information and can continuously self-learn. The NPU can enable intelligent cognitive applications in electronic device 100, such as image recognition, face recognition, speech recognition, and text comprehension.

[0121] The external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device 100. The external memory card communicates with the processor 110 via the external memory interface 120 to implement data storage functions. For example, files such as music and videos can be stored on the external memory card.

[0122] The internal memory 121 can be used to store computer executable program codes, which include instructions. The processor 110 executes various functional applications and data processing of the electronic device 100 by running the instructions stored in the internal memory 121. The internal memory 121 may include a program storage area and a data storage area. Among them, the program storage area can store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc. The data storage area can store data created during the use of the electronic device 100 (such as audio data, a phone book, etc.), etc. In addition, the internal memory 121 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, a universal flash storage (UFS), etc.

[0123] The electronic device 100 can implement audio functions such as music playback and recording through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the headphone jack 170D, and the application processor.

[0124] The audio module 170 is used to convert digital audio information into analog audio signal output, and is also used to convert analog audio input into digital audio signals. The audio module 170 can also be used to encode and decode audio signals. In some embodiments, the audio module 170 can be provided in the processor 110, or some functional modules of the audio module 170 can be provided in the processor 110.

[0125] The speaker 170A, also called a "speaker", is used to convert audio electrical signals into sound signals. The electronic device 100 can listen to music or listen to hands-free calls through the speaker 170A.

[0126] The receiver 170B, also called a "handset", is used to convert audio electrical signals into sound signals. When the electronic device 100 receives a call or a voice message, the user can place the receiver 170B close to the ear to hear the voice.

[0127] Microphone 170C, also known as "microphone" or "microphone", is used to convert sound signals into electrical signals. When making a call or sending a voice message, the user can speak by putting their mouth close to the microphone 170C to input the sound signal into the microphone 170C. The electronic device 100 can be provided with at least one microphone 170C. In other embodiments, the electronic device 100 can be provided with two microphones 170C, which can not only collect sound signals but also realize noise reduction function. In other embodiments, the electronic device 100 can also be provided with three, four or more microphones 170C to collect sound signals, reduce noise, identify the source of sound, realize directional recording function, etc.

[0128] The headphone jack 170D is used to connect a wired headphone and can be the USB interface 130 or a 3.5mm open mobile terminal platform (OMTP) standard interface or a cellular telecommunications industry association of the USA (CTIA) standard interface.

[0129] Pressure sensor 180A is used to sense pressure signals and convert them into electrical signals. In some embodiments, pressure sensor 180A can be located on display screen 194. There are many types of pressure sensors 180A, such as resistive, inductive, and capacitive. A capacitive pressure sensor can include at least two parallel plates made of conductive material. When force acts on pressure sensor 180A, the capacitance between the electrodes changes. Electronic device 100 determines the intensity of the pressure based on this change in capacitance. When a touch operation is applied to display screen 194, electronic device 100 detects the touch intensity based on pressure sensor 180A. Electronic device 100 can also calculate the touch location based on the detection signal from pressure sensor 180A. In some embodiments, touch operations applied to the same touch location but with different touch intensities can correspond to different operation instructions. For example, when a touch operation with an intensity less than a first pressure threshold is applied to a short message application icon, a command to view short messages is executed. When a touch operation with an intensity greater than or equal to the first pressure threshold is applied to a short message application icon, a command to create a new short message is executed.

[0130] The gyroscope sensor 180B can be used to determine the motion posture of the electronic device 100. In some embodiments, the angular velocity of the electronic device 100 around three axes (i.e., x, y, and z axes) can be determined by the gyroscope sensor 180B. The gyroscope sensor 180B can be used for anti-shake shooting. For example, when the shutter is pressed, the gyroscope sensor 180B detects the angle of the electronic device 100 shaking, calculates the distance that the lens module needs to compensate based on the angle, and allows the lens to offset the shaking of the electronic device 100 through reverse movement to achieve anti-shake. The gyroscope sensor 180B can also be used for navigation and somatosensory game scenes.

[0131] The air pressure sensor 180C is used to measure air pressure. In some embodiments, the electronic device 100 calculates the altitude using the air pressure value measured by the air pressure sensor 180C to assist in positioning and navigation.

[0132] The magnetic sensor 180D includes a Hall sensor. The electronic device 100 can use the magnetic sensor 180D to detect the opening and closing of the flip case. In some embodiments, when the electronic device 100 is a flip phone, the electronic device 100 can detect the opening and closing of the flip cover based on the magnetic sensor 180D. Based on the detected opening and closing status of the case or flip cover, features such as automatic unlocking of the flip cover can be configured.

[0133] Accelerometer 180E can detect the magnitude of acceleration of electronic device 100 in all directions (generally three axes). It can also detect the magnitude and direction of gravity when electronic device 100 is stationary. It can also be used to identify the electronic device's posture, enabling applications such as switching between landscape and portrait modes and pedometers.

[0134] The distance sensor 180F is used to measure distance. The electronic device 100 can measure distance using infrared or laser. In some embodiments, when shooting a scene, the electronic device 100 can use the distance sensor 180F to measure distance to achieve fast focusing.

[0135] The proximity light sensor 180G may include, for example, a light emitting diode (LED) and a light detector, such as a photodiode. The light emitting diode may be an infrared light emitting diode. The electronic device 100 emits infrared light outward through the light emitting diode. The electronic device 100 uses a photodiode to detect infrared reflected light from nearby objects. When sufficient reflected light is detected, it can be determined that there is an object near the electronic device 100. When insufficient reflected light is detected, the electronic device 100 can determine that there is no object near the electronic device 100. The electronic device 100 can use the proximity light sensor 180G to detect that the user is holding the electronic device 100 close to the ear to talk, so as to automatically turn off the screen to save power. The proximity light sensor 180G can also be used in leather case mode and pocket mode to automatically unlock and lock the screen.

[0136] Ambient light sensor 180L is used to sense ambient light brightness. Electronic device 100 can adaptively adjust the brightness of display screen 194 based on the perceived ambient light. Ambient light sensor 180L can also be used to automatically adjust white balance when taking photos. Ambient light sensor 180L can also work with proximity light sensor 180G to detect whether electronic device 100 is in a pocket to prevent accidental touches.

[0137] The fingerprint sensor 180H is used to collect fingerprints. The electronic device 100 can use the collected fingerprint characteristics to implement fingerprint unlocking, access application locks, fingerprint photography, fingerprint call answering, etc.

[0138] The temperature sensor 180J is used to detect temperature. In some embodiments, the electronic device 100 uses the temperature detected by the temperature sensor 180J to execute a temperature processing strategy. For example, when the temperature reported by the temperature sensor 180J exceeds a threshold, the electronic device 100 reduces the performance of the processor located near the temperature sensor 180J to reduce power consumption and implement thermal protection. In other embodiments, when the temperature is lower than another threshold, the electronic device 100 heats the battery 142 to prevent the electronic device 100 from shutting down abnormally due to low temperature. In other embodiments, when the temperature is lower than another threshold, the electronic device 100 boosts the output voltage of the battery 142 to prevent abnormal shutdown due to low temperature.

[0139] The touch sensor 180K is also called a "touch panel." The touch sensor 180K can be disposed on the display screen 194. The touch sensor 180K and the display screen 194 form a touch screen, also called a "touch screen." The touch sensor 180K is used to detect touch operations applied thereto or in the vicinity thereof. The touch sensor can transmit the detected touch operations to the application processor to determine the type of touch event. Visual output related to the touch operations can be provided via the display screen 194. In other embodiments, the touch sensor 180K can also be disposed on the surface of the electronic device 100, in a location different from that of the display screen 194.

[0140] The bone conduction sensor 180M can obtain vibration signals. In some embodiments, the bone conduction sensor 180M can obtain vibration signals from the vibrating bones of the human body. The bone conduction sensor 180M can also contact the human pulse to receive blood pressure pulse signals. In some embodiments, the bone conduction sensor 180M can also be set in headphones to form bone conduction headphones. The audio module 170 can parse out voice signals based on the vibration signals of the vibrating bones of the human body obtained by the bone conduction sensor 180M to implement voice functions. The application processor can parse heart rate information based on the blood pressure pulse signals obtained by the bone conduction sensor 180M to implement heart rate detection functions.

[0141] The buttons 190 include a power button, a volume button, and the like. The buttons 190 may be mechanical buttons or touch buttons. The electronic device 100 may receive key inputs and generate key signal inputs related to user settings and function control of the electronic device 100.

[0142] Motor 191 can generate vibration prompts. Motor 191 can be used for incoming call vibration prompts, and can also be used for touch vibration feedback. For example, touch operations acting on different applications (such as taking pictures, audio playback, etc.) can correspond to different vibration feedback effects. For touch operations acting on different areas of the display screen 194, motor 191 can also correspond to different vibration feedback effects. Different application scenarios (for example: time reminders, receiving messages, alarm clocks, games, etc.) can also correspond to different vibration feedback effects. The touch vibration feedback effect can also support customization.

[0143] The indicator 192 may be an indicator light, which may be used to indicate the charging status, power level changes, messages, missed calls, notifications, etc.

[0144] The SIM card interface 195 is used to connect a SIM card. The SIM card can be connected to or disconnected from the electronic device 100 by inserting it into or removing it from the SIM card interface 195. The electronic device 100 can support 1 or N SIM card interfaces, where N is a positive integer greater than 1. The SIM card interface 195 can support Nano SIM cards, Micro SIM cards, SIM cards, and the like. Multiple cards can be inserted into the same SIM card interface 195 at the same time. The types of the multiple cards can be the same or different. The SIM card interface 195 can also be compatible with different types of SIM cards. The SIM card interface 195 can also be compatible with external memory cards. The electronic device 100 interacts with the network through the SIM card to implement functions such as calls and data communications. In some embodiments, the electronic device 100 uses an eSIM, i.e., an embedded SIM card. The eSIM card can be embedded in the electronic device 100 and cannot be separated from the electronic device 100.

[0145] The software system of the electronic device 100 can adopt a layered architecture, an event-driven architecture, a micro-kernel architecture, a micro-service architecture, or a cloud architecture. In the embodiment of the present application, the Android system with a layered architecture is used as an example to illustrate the software structure of the electronic device 100.

[0146] FIG2 is a software structure block diagram of the electronic device 100 according to an embodiment of the present application.

[0147] The layered architecture of electronic device 100 divides the software into several layers, each with a clear role and division of labor. Layers communicate with each other via software interfaces. In some embodiments, the Android system is divided into four layers: from top to bottom, the application layer, the application framework layer, the Android runtime and system libraries, and the kernel layer.

[0148] The application layer can include a series of application packages.

[0149] As shown in FIG2 , the application package may include applications such as camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, and short message.

[0150] The application framework layer provides an application programming interface (API) and programming framework for applications in the application layer. The application framework layer includes some predefined functions.

[0151] As shown in FIG2 , the application framework layer may include a window manager, a content provider, a view system, a telephony manager, a resource manager, a notification manager, and the like.

[0152] The window manager is used to manage window programs. The window manager can obtain the display size, determine whether there is a status bar, lock the screen, take screenshots, etc.

[0153] Content providers are used to store and retrieve data and make it accessible to applications. The data may include videos, images, audio, calls made and received, browsing history and bookmarks, phone books, etc.

[0154] The view system includes visual controls, such as those for displaying text and images. The view system is used to build applications. A display interface can consist of one or more views. For example, a display interface containing a text notification icon might include a view for displaying text and a view for displaying images.

[0155] The phone manager is used to provide communication functions of the electronic device 100, such as management of call status (including answering, hanging up, etc.).

[0156] The resource manager provides various resources for applications, such as localized strings, icons, images, layout files, video files, and so on.

[0157] The Notification Manager allows applications to display notifications in the status bar. These messages can be displayed briefly and then disappear automatically without user interaction. For example, the Notification Manager is used to notify users of completed downloads and message reminders. The Notification Manager can also display notifications in the top status bar of the system as icons or scrolling text, such as notifications from background applications, or as dialog windows on the screen. Examples include text messages in the status bar, beeps, vibrations on electronic devices, and flashing indicator lights.

[0158] Android Runtime includes core libraries and a virtual machine. Android runtime is responsible for scheduling and management of the Android system.

[0159] The core library consists of two parts: one is the function that needs to be called by the Java language, and the other is the Android core library.

[0160] The application layer and application framework layer run in a virtual machine. The virtual machine executes Java files in the application layer and application framework layer as binary files. The virtual machine manages object lifecycles, stack management, thread management, security and exception management, and garbage collection.

[0161] The system library can include multiple functional modules, such as surface manager, media library, 3D graphics processing library (such as OpenGL ES), 2D graphics engine (such as SGL), etc.

[0162] The surface manager is used to manage the display subsystem and provide fusion of 2D and 3D layers for multiple applications.

[0163] The media library supports playback and recording of a variety of common audio and video formats, as well as static image files. The media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.

[0164] The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.

[0165] A 2D graphics engine is a drawing engine for 2D drawings.

[0166] The kernel layer is the layer between hardware and software. The kernel layer includes at least display driver, camera driver, audio driver, and sensor driver.

[0167] It is understood that the components included in the system framework layer, system library, and runtime layer shown in FIG2 do not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may include more or fewer components than shown, or may combine or split certain components, or arrange the components differently.

[0168] Based on this, FIG3 is a flow chart of process 300 of the path planning method according to an embodiment of the present application. Process 300 may be performed by the electronic device described above. Process 300 is described as a series of steps or operations. It should be understood that process 300 may be performed in various orders and / or occur simultaneously, and is not limited to the execution order shown in FIG3. Process 300 may include:

[0169] Step 301: Acquire target graphics and target areas.

[0170] The target graphics and target areas are generated based on the user's operations on the interactive interface.

[0171] Acquiring a target graphic may include:

[0172] (1) Displaying a first interactive interface, which may include a blank drawing board or a multi-option menu containing multiple graphics.

[0173] Optionally, the blank drawing board can be used for the user to directly draw the target graphic on it using a mouse, pen, finger, etc.

[0174] Optionally, the multi-option menu may include controls for a variety of graphics, and the user may click a corresponding control to select a desired image as the target graphic.

[0175] In addition, the first interactive interface can also use other methods to collect target graphics input by the user, for example, displaying pictures (such as Gemini, Pisces, etc.), characters (such as "ABC"), etc., and the embodiments of the present application do not specifically limit this.

[0176] (2) Receive a first command, where the first command is generated by a user's operation on a first interactive interface, and the first command includes a graphic drawn by the user or a graphic selected by the user.

[0177] After seeing the first interactive interface, the user uses a corresponding operation to input a target graphic. This operation can trigger the generation of a first command, and the first command can include the target graphic input by the user using any of the above methods.

[0178] (3) In response to the first command, the graphic drawn by the user or the graphic selected by the user is used as the target graphic.

[0179] After receiving the first command, the electronic device obtains the target graphic in response to the first command.

[0180] Acquiring a target area may include:

[0181] (1) Displaying a second interactive interface, which includes an electronic map or a multi-option menu containing multiple areas.

[0182] The second interactive interface can be used to allow the user to select a target area, that is, the user circles a range on the electronic map, so that the electronic device only needs to perform map matching and path planning within this range without paying attention to other uncircled ranges, thereby improving the efficiency of path planning.

[0183] Optionally, the second interactive interface may be an electronic map, and the user may display the desired target area on the screen of the electronic device by zooming in, zooming out, dragging, etc., and then circle the target area by drawing a circle, clicking, etc.

[0184] Optionally, the second section of the interactive interface may include a multi-option menu of multiple administrative area levels from large to small. The user clicks the menu and clicks the name of the administrative area of ​​the corresponding level, and can eventually narrow the scope to the city, district, street, etc., thereby using this as the target area.

[0185] In addition, the second interactive interface can also use other methods to collect the target area input by the user, and the embodiments of the present application do not specifically limit this. It should be noted that the second interactive interface and related operation scenarios are optional, and the second interactive interface can also be absent. For example, based on the current user location, an area within 5km can be automatically selected, and the embodiments of the present application do not specifically limit this.

[0186] In one possible implementation, the second interactive interface may further include a control for setting a target length, where the target length indicates the total length, total kilometers, or total distance that the user expects to travel. For example, if the user expects to run 5 kilometers, 5 kilometers can be entered through the aforementioned control. When the electronic device plans a route, the total length remains within the target length ± a floating length, and the floating length does not exceed a preset threshold or a preset ratio. The control for setting the target length may include a control for directly entering a number, a multi-option menu control, etc., and this embodiment of the application does not specifically limit this.

[0187] Optionally, the electronic device may also pre-set a default target area and target length. For example, the default target area may be the administrative area of ​​the currently located user, and the default target length may be 5 kilometers. If the user does not set a target area and target length, map matching and route planning may be performed using the default target area and default target length.

[0188] (2) Receiving a second command, where the second command is generated by an operation performed by the user on the second interactive interface, and the second command includes an area circled or selected by the user on the electronic map.

[0189] After the user sees the second interactive interface, he or she uses a corresponding operation to input the target area. This operation can trigger the generation of a second command, and the second command can include the target area input by the user using any of the above methods.

[0190] (3) In response to the second command, the area circled or selected by the user on the electronic map is used as the target area.

[0191] After receiving the second command, the electronic device obtains the target area in response to the second command.

[0192] Step 302: Perform map matching and path planning in the target area according to the target graphic to obtain the target path.

[0193] In the embodiment of the present application, map matching can be performed within the target area based on the target graphic to obtain multiple position coordinate points, and the position coordinate points are geographical locations that can be reached within the target area.

[0194] That is, a location coordinate point is a geographical location that exists in the real world and is accessible to users, such as an intersection, a street, a country road, a building, etc. Locations such as lakes, rivers, seas, ravines, and rift valleys, which exist in the real world but are inaccessible to users or require special tools to reach, do not fall within the scope of location coordinate points in this application. It should be noted that in addition to the aforementioned examples, location coordinate points may also include other situations, and the embodiments of this application do not specifically limit this.

[0195] In one possible implementation, multiple key position points on the target graphic can be first obtained, and the multiple key position points are used to describe the shape of the target graphic; then, map road network data of the target area is obtained; then, map matching is performed based on the multiple key position points and the map road network data to obtain multiple position coordinate points, and the multiple position coordinate points correspond to the multiple key position points; and path planning is performed between any two adjacent position coordinate points among the multiple position coordinate points to obtain the target path.

[0196] The key points of a target graphic can describe the shape of the target graphic. For example, the five vertices and five inflection points of a five-pointed star can be used as key points of the star; the three vertices of a triangle can be used as key points of the triangle; and the four vertices of a rectangle / square / parallelogram can be used as key points of the rectangle / square / parallelogram. In addition, factors such as the slope of the point and its connection with other points can also be considered to determine which points can be used as key points. This embodiment of the present application does not specifically limit this.

[0197] Optionally, the map road network data can come from a map application, GPS, etc., and different roads can usually be identified according to the road network type. Based on the user's application scenario, such as running, driving navigation, etc., unnecessary roads can be excluded first. For example, if running, highways and viaducts can be excluded first. If driving, pedestrian streets, rivers, lakes and other waterways can be excluded first. Other situations can also serve as a basis for filtering the map road network data, and this embodiment of the application does not specifically limit this. Pre-screening the map road network data can reduce the amount of data in subsequent steps and improve the efficiency of map matching and path planning.

[0198] Map matching is performed based on multiple key location points and map road network data to obtain multiple location coordinate points. The matching results may have multiple groups. For example, within the target area, multiple paths that meet expectations (i.e., high graphic similarity, path lengths that meet the user-set target length, etc.) can be obtained based on the target graphic matching. In this way, the matching results may include multiple paths, and correspondingly, there are multiple groups of location coordinate points.

[0199] The similarity between the shape of the target path and the shape of the target figure satisfies a preset condition. Specifically, when map matching is performed to obtain multiple sets of location coordinate points, the shapes formed by each of the multiple sets of location coordinate points can be compared with the shape of the target figure; then, a set of location coordinate points whose similarity satisfies the preset condition is determined as a plurality of location coordinate points. For example, the similarity between the shape formed by a set of location coordinate points and the shape of the target figure can be calculated, including comparing the slopes of key location points, the slopes and lengths of the lines connecting the key location points, and so on, to obtain the similarity between the two. The preset condition can include the aforementioned similarity being greater than or equal to a preset threshold. Specifically, when the aforementioned similarity is greater than or equal to the preset threshold, the similarity between the two is considered high, meeting the requirements for path planning according to the target figure, and the set of location coordinate points can be retained and used as the plurality of location coordinate points described above. When the aforementioned similarity is less than the preset threshold, the similarity between the two is considered low, not meeting the requirements for path planning according to the target figure, and the set of location coordinate points can be discarded.

[0200] It should be noted that, in addition to the above description, the target path may also refer to a path that meets certain characteristics or requirements, and the embodiments of the present application do not specifically limit this.

[0201] In a possible implementation, when an unreachable location point is obtained by performing map matching, a reachable location point closest to the unreachable location point is queried and obtained as a location coordinate point based on map road network data.

[0202] As mentioned above, geographical locations such as lakes, rivers, seas, ravines, and rift valleys exist but are inaccessible to users or require special tools to reach. Such geographical locations are called non-reachable locations. If the map matches a non-reachable location, you can further query nearby reachable locations based on the map road network data to ensure that the multiple location coordinates ultimately output are all reachable geographical locations. In this way, the target path planned based on multiple location coordinates not only meets the user's needs but also ensures that the user can achieve it.

[0203] Path planning between any two adjacent location coordinate points among the multiple location coordinate points can utilize the relevant logic of the map application. For example, the path with the shortest distance between the two points is the optimal path, or the path with the shortest travel time between the two points is the optimal path, and so on. The optimal paths between the two adjacent locations among the multiple location coordinate points are ultimately connected to form the target path. It should be noted that the foregoing description only describes the optimal path as an example. The embodiments of the present application may also utilize other logic to determine the optimal path, and this is not specifically limited.

[0204] Step 303: Display the target path to the user.

[0205] The target path is displayed to the user through the screen of the electronic device so that the user can finally confirm whether to proceed along the path, or let the user determine whether to start navigation along the path.

[0206] In one possible implementation, a third interactive interface may be displayed, which includes a target path including multiple location coordinate points and a user's travel trajectory obtained based on positioning. The location coordinate points are reachable geographical locations within the target area.

[0207] This can combine the user's travel trajectory and target path. On the one hand, it can provide navigation for the user. On the other hand, it can allow the user to intuitively see where they have traveled to, how much distance they have completed, how far they are from the destination, etc. This can enhance the user experience and strengthen their trust in the path planning application.

[0208] Optionally, when the user passes by the first location coordinate point, the first location coordinate point may be marked on the third interactive interface to indicate that the user has passed by the first location coordinate point, where the first location coordinate point is one of the multiple location coordinate points.

[0209] Optionally, when the user passes through multiple location coordinate points, a graph consisting of the user's travel trajectory can be displayed on the third interactive interface, and the graph includes the user's actual travel trajectory and / or a graph consisting of straight lines connecting multiple location coordinate points.

[0210] In one possible implementation, a fourth interactive interface may be displayed, the fourth interactive interface including information for prompting the user to store a travel trajectory; a third command is received, the third command being generated by an operation performed by the user on the fourth interactive interface; and a graphic consisting of the user's travel trajectory is stored in response to the third command.

[0211] When the user completes the journey along the target path, the user's movement trajectory can be saved as a picture. The movement trajectory can be the user's actual movement trajectory or a graph formed by connecting position coordinate points.

[0212] In an embodiment of the present application, map matching and path planning are automatically performed for the user within the target area based on the target graphic input by the user, thereby realizing fully automated path planning. In this way, the user only needs to input requirements (including target graphics, target area, target length, etc.) to obtain a travel path that meets his or her expectations. On the one hand, this greatly improves the efficiency of path planning, and on the other hand, it enhances the user experience.

[0213] The following uses several specific embodiments to explain in detail the technical solution of the method embodiment shown in FIG3 .

[0214] FIG4 is an exemplary flow chart of a path planning method according to an embodiment of the present application. As shown in FIG4 , based on the method embodiment shown in FIG3 , the method according to this embodiment includes the following steps:

[0215] Corresponding to the above step 301, the following steps may be included:

[0216] 11. Get instructions;

[0217] The above instructions can be input by the user by manipulating an input / output (I / O) device such as a mouse, keyboard, or wearable device, and the electronic device can obtain the instructions through the aforementioned I / O device; the above instructions can also be transmitted by other electronic equipment (for example, a tablet computer, a mobile phone, a remote control, etc.), and the electronic device can parse the received signal through the corresponding communication protocol to obtain the instructions; the above instructions can also come from a voice signal picked up by a microphone, and the electronic device can obtain the instructions by performing voice recognition on the voice signal. It should be noted that instructions can be input and obtained through a variety of methods, and the embodiments of the present application do not specifically limit this.

[0218] The above instructions may include two types of information: target graphics and target areas. The following describes methods for obtaining these two types of information.

[0219] 12. Get the target area;

[0220] 1) Customization

[0221] a. Text input: Directly input the address of the target area, such as Beijing's Haidian District, the Summer Palace, or Xi'an's Tang Dynasty City. Based on this, the electronic device can identify the target area through character recognition. Alternatively, directly input the longitude and latitude of the target area, such as longitude: 108.964646, latitude: 34.214892, which is 1500 meters north to south and 480 meters east to west. Based on this, the electronic device can locate the target area through map positioning.

[0222] b. Frame selection on the map, that is, the user zooms and drags a circular box or rectangular box on the electronic map, thereby framing part of the area on the map in the aforementioned circular box or rectangular box, and the area selected by the frame is the target area. For example, as shown in Figure 5a (Figure 5a is a schematic diagram of the interactive interface of an embodiment of the present application), the user selects a circular box, drags the circular box to a certain position on the map, and then scales the size of the circular box so that the circular box frames the desired area. Based on this operation, the electronic device determines the area within the circular box as the target area. It should be noted that in the embodiment of the present application, frames of other shapes (for example, polygonal frames, trapezoidal frames, etc.) can also be used to frame the target area, and there is no specific limitation on this.

[0223] c. Directly draw the boundary of the target area, that is, the user draws multiple line segments forming a closed figure on the electronic map to enclose an area, and the area surrounded by the multiple line segments is the target area.

[0224] 2) Select from existing list

[0225] The embodiment of the present application can provide the user with a selection menu of the target area, so that the user can click the corresponding option in the selection menu to enter the target area. For example, as shown in Figure 5b (Figure 5b is a schematic diagram of the interactive interface of the embodiment of the present application), the menu of the target area includes multiple levels, including provinces, cities, districts, and streets. The user can select the target area within the street range step by step, for example, Qujiang Street, Yanta District, Xi'an City, Shaanxi Province, and based on the user's selection, the electronic device can determine the range covered by the aforementioned Qujiang Street as the target area. In addition, the selection menu of the target area can also include other options, which are not specifically limited.

[0226] 3) Default

[0227] In the embodiment of the present application, the target area can adopt a default input method, that is, the electronic device can locate the user's current location, and then obtain a circular area with the located location as the center and a preset distance (for example, 5 kilometers) as the radius, and then determine the circular area as the target area. It should be noted that the electronic device can pre-set multiple default rules for obtaining the target area, and the embodiment of the present application does not specifically limit this.

[0228] Since the method can obtain the target area in a default manner, the step of obtaining the target area is not necessarily visible to the user. In this case, the electronic device does not need to display an interactive interface for inputting the target area to the user.

[0229] In addition to the above three methods, the embodiments of the present application may also use other methods to obtain the target area, so there is no specific limitation on this.

[0230] 13. Get the target graphics;

[0231] 1) Customization

[0232] a. Text input, that is, directly input the name of the target graphic, such as a square, a five-pointed star, a heart, a circle, a triangle, etc.; or, input characters or phrases, such as Chinese / English words such as China and LOVE. Based on this, the electronic device can perform semantic recognition. If it is the name of the target graphic, the graphic corresponding to the name is determined as the target graphic. If it is a character or a phrase, the graphic composed of the strokes of the character or phrase is determined as the target graphic. For example, as shown in Figure 5c (Figure 5c is a schematic diagram of the interactive interface of an embodiment of the present application), the user inputs a five-pointed star above the horizontal line, or inputs the word LOVE. It should be understood that for the convenience of comparison, the texts of the two aforementioned input methods are both drawn in the diagram, and only the text of one method can be input here.

[0233] b. Directly draw the target graphic, that is, the user draws a graphic on a blank drawing board. The graphic can be composed of a line, such as a circle, a heart, a five-pointed star, etc., or it can be composed of multiple line segments, such as a smiling face including eyes and a mouth. The electronic device can recognize the lines drawn by the user, thereby determining the image composed of the lines as the target graphic. For example, as shown in Figure 5d (Figure 5d is a schematic diagram of the interactive interface of an embodiment of the present application), the user draws a graphic with a single line on the blank drawing board below "Draw". The characteristics of the graphic include being unclosed, having intersections, straight lines, and curves. After the electronic device recognizes the graphic on the drawing board, it determines it as the target graphic.

[0234] 2) Existing graphics selection

[0235] Embodiments of the present application can provide users with a menu for selecting a target graphic. Users can then click on a corresponding option in the menu to enter the target graphic. These options may include, but are not limited to, text (e.g., a square, five-pointed star, heart, circle, triangle, etc.); patterns (e.g., a five-pointed star, a smiley face); and images (e.g., images of the twelve zodiac signs, images of Chinese characters, etc.). For example, as shown in Figure 5d, below "Select" is a menu with four options: a five-pointed star pattern and text, a smiley face pattern and text, an image and text of Gemini, and an image and text of the Chinese character "Hua." The user can click on one of these options. Based on the user's action, the electronic device can determine the graphic corresponding to the selected option as the target graphic. For example, if the user clicks on the five-pointed star, the five-pointed star graphic becomes the target graphic. It should be understood that while the interactive interfaces for both direct drawing and graphic selection methods are shown in the diagram for ease of comparison, this does not constitute a limitation on the interactive interfaces. The interface can include only one method or, as shown, both methods, and this is not a specific limitation. For another example, as shown in Figure 5e (Figure 5e is a schematic diagram of the interactive interface of an embodiment of the present application), the user draws a five-pointed star on the blank canvas below "Draw", or, below "Select", the user selects the option of a five-pointed star graphic, and the electronic device can determine the five-pointed star as the target graphic. Optionally, the illustrated interactive interface can display a location (used to indicate the target area), and according to the prompt in the brackets, the location can be a default, as described above; the interactive interface can also display an expected length (used to indicate the target distance), and the user can enter the numerical value of the expected length here, or use other methods to enter the expected length, for example, enter the expected length on other interactive interfaces provided by the electronic device, which is not specifically limited. The aforementioned expected length can also use a default value (for example, a default of 5 kilometers). At this time, the input of the expected length is invisible to the user.

[0236] In addition to the above two methods, the embodiments of the present application may also use other methods to obtain the target graphics, so there is no specific limitation on this.

[0237] Corresponding to the above step 302, it may include:

[0238] 21. Obtain map road network data of the target area;

[0239] 22. Map road network data preprocessing;

[0240] Map road network data can come from map applications, GPS, etc. In order to reduce the amount of calculation in subsequent steps and improve the efficiency of map matching and path planning, electronic devices can filter map road network data according to the target area and retain the road network data within the target area.

[0241] In addition, the electronic device can further filter the map road network data of the target area according to the user's application scenario. For example, in a running scenario, highways, overpasses, etc. are excluded according to road signs; or in a driving scenario, pedestrian streets, rivers, lakes and other waterways are excluded according to road signs.

[0242] In addition to the above scenarios, the electronic device may also refer to other factors to pre-process the map road network data of the target area, and the embodiments of this application do not specifically limit this. It should be noted that the map road network data pre-processing may be an optional step, and the electronic device may also directly use the map road network data of the target area to perform subsequent steps, and this is also not specifically limited.

[0243] 23. Target graphics preprocessing;

[0244] The preprocessing of the target graph can output a set of key position points, which can describe the shape of the target graph. For example, the five vertices and five inflection points of a pentagram can be used as a set of key position points of the pentagram; the three vertices of a triangle can be used as a set of key position points of the triangle; the four vertices of a rectangle / square / parallelogram can be used as a set of key position points of the rectangle / square / parallelogram. In addition, factors such as slope and connection relationship can also be considered to determine a set of key position points on the target graph, and the embodiments of this application do not make specific limitations in this regard. For example, as shown in FIG. 6a (FIG. 6a is a schematic diagram of a set of key position points of the target graph), for the target graph of a pentagram shape, after preprocessing, 10 key position points are output, which can be labeled 1-10. The directions between the 10 points are also marked in the figure. Therefore, the foregoing 10 key position points can be expressed as 1→2→3→4→5→6→7→8→9→10→1. Another example, as shown in FIG. 6b (FIG. 6b is a representation method of a set of key position points of the target graph), the foregoing 10 key position points can also be expressed as a set of coordinate point pairs, and this set of coordinate point pairs includes (point1), (point2)(point2), (point3)(point3), (point4)(point4), (point5)(point5), (point6)(point6), (point7)(point7), (point8)(point8), (point9)(point9), (point10)(point10), (point1). It should be noted that the target graph can be a graph with a direction. For example, for the character "Hua" above, according to the writing stroke order of this character, there is also a sequence for its key position points. Therefore, when representing a set of key position points of this character, the method shown in FIG. 6a can be adopted; the target graph can also be an image without a direction, such as a circle, a rectangle, etc. These graphs have no clear starting point and ending point. Therefore, when representing a set of key position points of this graph, the method shown in FIG. 6b can be adopted.

[0245] In addition to the above two methods, a list can also be used. For example, as shown in Table 1, the 10 key position points are labeled with serial numbers 1-10. On the one hand, Table 1 reflects that the pentagram has 10 key position points, and on the other hand, the serial numbers reflect the sequence of the 10 key position points.

[0246] Table 1

[0247] It should be understood that Table 1 exemplarily describes the representation of the key position points of the target graph in the form of a list, but this does not constitute a limitation on the list, and the embodiments of this application do not make specific limitations on the form of the list either.

[0248] The embodiment of the present application may also use other methods to represent the key position points of the target graphic, and this is also not specifically limited.

[0249] Step 23 may be an optional step, that is, the electronic device may directly perform map matching based on the acquired target graphic.

[0250] 24. Map matching outputs at least one set of location coordinate points;

[0251] The projection positions of the key points of the target graphic in the target area's map road network data can be determined by setting certain rules or by determining the positions in the map. Optionally, in determining the projection positions, the scale of the graphic formed by the projection positions (similar in shape to the target graphic) can be calculated with reference to a user-set or default desired length.

[0252] In one possible implementation, assuming the user sets a desired length A and the target shape is a five-pointed star, the straight-line distance between each two projected positions can be determined to be A / 10. Then, considering the deviation between the actual planned road network path and the straight-line distance between the projected positions, a tolerance scaling factor β can be set. This results in the length of each side of the five-pointed star being Aβ / 10 at the actual projection scale. Based on this length, the projected position of each key point can be calculated using the relationship between azimuth and length.

[0253] In one possible implementation, the projection position of one or several key position points may be unreachable. In this case, the reachable position corresponding to the unreachable projection position can be obtained by using rules such as minimum distance, and this position can be used as the projection position of the corresponding key position point. For example, as shown in Figure 7a (Figure 7a is a schematic diagram of the projection position), the target graphic is a five-pointed star, and the 10 circular points represent the projection positions of the 10 key position points obtained after map matching. Point 5 is unreachable, so by using the minimum rule, the reachable position closest to point 5 is found (a triangle point is used to represent the reachable position that satisfies the rule after calculation). Point 2, point 9, and point 10 are similar to point 5, so the circular points and triangle points at these positions do not overlap.

[0254] After the above processing, the projection positions of all key position points of the target graphic on the map can be obtained. Optionally, the projection position can also be represented by the same method as the key position point, and the projection position is a geographical location in the real world, such as a road, intersection, scenic spot, landmark, etc. For example, as shown in Figure 7b (Figure 7b is a method for representing the projection position), the 10 key position points of the five-pointed star are matched on the map to obtain 10 projection positions 1'-10', and the 10 projection positions are represented by coordinate point pairs. In addition, after obtaining the 10 projection positions, the similarity between the graphic formed by the 10 projection positions and the target graphic can also be calculated, which is expressed as Similar. Based on this similarity, the accuracy of the result of map matching can be assisted in evaluating. It should be noted that the above-mentioned set of projection positions can also be referred to as a set of position coordinate points.

[0255] In one possible implementation, when an electronic device directly uses a target graphic for map matching, it can match the graphic to a geographic location through the characteristics of the graphic, and then obtain the coordinate points of multiple positions of each projection area based on one or more projection areas obtained by matching, thereby obtaining one or more groups of position coordinate points.

[0256] After map matching, the electronic device may find multiple sets of location coordinate points within the target area that match a set of key location points of the target graphic. For example, a set of location coordinate points matching a set of key location points of the target graphic may be found in the north and west of the target area, respectively. When this happens, the electronic device may execute step 25 below. Therefore, step 25 is optional and is used to evaluate the similarity of the multiple sets of location coordinate points obtained after map matching, thereby outputting an optimal set of target location coordinate points.

[0257] 25. Based on the target graphics, perform similarity evaluation on multiple sets of position coordinate points and output a set of target position coordinate points;

[0258] When multiple sets of position coordinate points are obtained, due to the constraints of actual road network conditions, there is a deviation in geometric similarity as shown in Figure 7a. Excessive deviation will lead to a decrease in user subjective experience and inconsistency. Therefore, a reasonable similarity evaluation method can be used to evaluate the similarity between the graph composed of multiple sets of position coordinate points and the target graph.

[0259] Similarity evaluation can be performed using a variety of methods. For example, the Euclidean distance between each location coordinate point (i.e., the final geographic location obtained after adjustment) and the corresponding projected location (i.e., the initial geographic location obtained through map matching) can be calculated, and the sum of the Euclidean distances of a group of location coordinate points can be used as the similarity of the group of location coordinate points. It should be understood that other methods can also be used to obtain the above-mentioned similarity. The key is to select a group of location coordinate points with a high similarity through an evaluation method. Therefore, the similarity can be expressed as a numerical value, percentage, etc., and the method for obtaining and expressing the similarity in the embodiments of the present application is not specifically limited.

[0260] After obtaining the similarities of each group, the similarities may be sorted, and a group of position coordinate points corresponding to the group with the highest similarity may be selected as the target position coordinate points.

[0261] 26. Path planning is performed based on the target location coordinates to output the target path;

[0262] Path planning can determine the path between any two adjacent target coordinate points, provided that pre-defined conditions are met. This path is based on map road network data, meaning it represents the actual geographic locations that users have passed by, whether walking, driving, or cycling. After planning a path from any one of a set of target coordinate points to the other target coordinate points, the resulting path is the target path.

[0263] The graph formed by the target path has a certain similarity with the target graph, which is somewhat different from the similarity in step 25. In step 25, the graph formed by a set of position coordinate points can be formed by a straight line between two adjacent points. The straight line does not yet take into account the real road network. Therefore, the similarity here is the similarity between the graph formed by a set of straight lines and the target graph; while in step 26, the target path includes the real road network between two adjacent target coordinate points, and the path is not necessarily a straight line. Therefore, the similarity here is the similarity between the graph formed by a set of straight lines and / or broken lines and the target graph.

[0264] The above-mentioned preset conditions may include at least one of the factors such as the shortest time, the shortest distance, the least traffic lights, bus / subway / high-speed rail routes, etc., and may also include other factors, which are not specifically limited.

[0265] Optionally, the preset conditions may also include at least one of the following factors: the number of people completing the target path, the mode of transportation, the starting point / end point, etc. For example, if multiple people are running to complete a target graphic, each person's starting point is based on their initial location, and the end point is a designated point on the target graphic. When planning the path, the electronic device can divide the target path based on each person's location. Each person completes a portion of the target path, and ultimately ends at the geographical location corresponding to the designated point. For another example, the target graphic is a smiling face, which includes multiple independent parts, including the outline of the face, the outlines of the two eyes, and the outline of the mouth. Based on this, the target path includes four sections. If it is completed by four people, then a section can be planned for each person. If it is completed by one person, then based on their location, they can start from the closest place and complete the four sections one by one. For another example, if the mode of transportation includes public transportation, such as buses, subways, and high-speed trains, the electronic device can obtain public transportation data when planning a route, so that the target route includes sections of roads accessible by public transportation. For example, there are three roads between two location coordinate points A and B. Path 1 is the most convenient driving route with the shortest travel time. Path 2 is a cycling route that includes many narrow alleys. Path 3 is the most convenient public transportation route, allowing for seamless transfers. If the mode of transportation includes public transportation, the target route determined by the electronic device is Path 3. It can be seen that by integrating multiple factors, the electronic device can adopt multiple methods for route planning to meet the needs of the user.

[0266] For example, as shown in FIG8 (FIG8 is a setting interface for path planning conditions), the user can enter the setting interface and select the number of people (1), transportation mode (running), priority factor (shortest distance), and other (none) in the drop-down menu. Other factors can be entered in text form, that is, in addition to the given setting factors, the user can enter other factors. It should be understood that FIG8 is an example of the setting interface and is not a limitation. The embodiments of the present application do not specifically limit the factors included in the setting interface, the setting method, etc.

[0267] Corresponding to the above step 303, the following steps may be included:

[0268] 31. Display the target location coordinates;

[0269] The embodiment of the present application can display the obtained set of target location coordinate points to the user after step 24 or step 25 so that the user can see the passed location. For example, as shown in Figure 9a (Figure 9a is a schematic diagram of the interactive interface of the embodiment of the present application), the map displayed to the user is an area containing a set of target location coordinate points. The dots marked with numbers in the figure are the target location coordinate points, and the dotted line between the two points is the straight line connecting the two points. When the set of target location coordinate points is dotted, the figure formed is a five-pointed star, which is similar to the target figure set by the user.

[0270] 32. Display target path;

[0271] The embodiment of the present application can display the planned target path to the user after step 26. For example, as shown in Figure 9b (Figure 9b is a schematic diagram of the interactive interface of the embodiment of the present application), on the basis of Figure 9a, in addition to the straight line (solid line representation) between the target position coordinate point and the target position coordinate point, the target path (dashed line representation) is added. It can be seen that due to the real road network, the two target position coordinate points cannot move completely in a straight line, but have straight, turning, curve and other travel modes. In addition, the interface can also include some data related to the target path, for example, the graphic is a five-pointed star, the number of position points is 10, the position of the target path (the position can adopt the street, district, city, etc. to which the target path belongs, which can represent a rough range and is not limited to a specific position point), the length of the target path, the similarity of the target path (refer to step 26), the angle of the target path (the angle can be used for the deflection direction of the five-pointed star).

[0272] 33. Display navigation information;

[0273] The embodiment of the present application can turn on the positioning function after step 26 to display the user's current location, as well as all future paths or parts of the road to the user. For example, as shown in Figure 9c (Figure 9c is a schematic diagram of the interactive interface of the embodiment of the present application), on the basis of Figure 9a, in addition to the straight line (solid line) between the target position coordinate point and the target position coordinate point, the user's positioning (black dot), the path between the user's positioning and point1, and the planned road section between point1 and point2 are added. This embodiment takes the display of a part of the road section as an example. Optionally, on the basis of Figure 9b, the user's positioning and the path between the user's positioning and point1 can also be added, so that the entire target path is displayed.

[0274] 34. Display punch-in information;

[0275] In the embodiment of the present application, the user's distance traveled and the completed check-in points can be calculated based on the user's location during the user's movement, and part of the road section can be drawn on the map with a bold solid line to indicate that the road section has been completed. For example, as shown in Figure 9d (Figure 9d is a schematic diagram of the interactive interface of the embodiment of the present application), when the user moves to point3, the road section from the user's initial location to point1, then to point2, and then to point3 is displayed as a bold solid line, indicating that the road section has been completed. In addition, the distance (the distance traveled), speed (the speed of the user's movement), heart rate (the heart rate value of the user's movement), and calories (the calories that can be consumed by the user's completed road section) can also be displayed.

[0276] When the user completes all the target paths, all the check-in points can be connected to form the final trajectory graph and displayed to the user. For example, as shown in Figure 9e (Figure 9e is a schematic diagram of the interactive interface of an embodiment of the present application), based on Figure 9d, the completed distance and the completed check-in points have increased, corresponding to the complete target path. Optionally, a switch can be set to display / not display the trajectory graph. When it is displayed, the trajectory that the user actually passed by can be displayed in the form of a dotted line; when it is not displayed, the trajectory that the user actually passed by can be hidden, and only the straight line connecting the target position coordinate points is displayed.

[0277] In one possible implementation, if the target path includes multiple independent road segments, when the user crosses between the multiple road segments, a passing track may also be generated between the multiple road segments. If this track is also displayed, it may destroy the beauty of the final track graph. For example, a smiling face graphic may have a track between the outline of the face and the outline of the eyes. Therefore, the electronic device can filter this and not display similar tracks (such as tracks connecting multiple road segments), thereby keeping the final track graph intact.

[0278] It should be noted that the illustrations in the above embodiments are exemplary only and do not limit the interactive interface, and the embodiments of the present application do not make any specific limitations on this.

[0279] FIG10 is a schematic diagram of the structure of the path planning device 1000 according to an embodiment of the present application. As shown in FIG10 , the path planning device 1000 according to the present embodiment can be applied to the above-mentioned electronic device. The path planning device 1000 may include: an interaction module 1001 and a planning module 1002.

[0280] The interactive module 1001 is used to obtain a target graphic and a target area, where the target graphic and the target area are generated based on the user's operation on the interactive interface; the planning module 1002 is used to perform map matching and path planning within the target area according to the target graphic to obtain a target path, and the similarity between the shape of the target path and the shape of the target graphic meets a preset condition; the interactive module 1001 is also used to display the target path to the user.

[0281] In one possible implementation, the planning module 1002 is specifically used to perform map matching within the target area according to the target graphic to obtain multiple location coordinate points, where the location coordinate points are reachable geographical locations within the target area; and perform path planning between any two adjacent location coordinate points among the multiple location coordinate points to obtain the target path.

[0282] In one possible implementation, the planning module 1002 is specifically used to obtain multiple key position points on the target graphic, and the multiple key position points are used to describe the shape of the target graphic; obtain map road network data of the target area; perform map matching based on the multiple key position points and the map road network data to obtain the multiple position coordinate points, and the multiple position coordinate points correspond to the multiple key position points.

[0283] In one possible implementation, the planning module 1002 is specifically used to obtain the similarity between the shapes formed by each of the multiple groups of position coordinate points and the shape of the target graphic when map matching is performed to obtain multiple groups of position coordinate points; and determine a group of position coordinate points in the multiple groups of position coordinate points whose similarity meets the preset conditions as the multiple position coordinate points.

[0284] In one possible implementation, the planning module 1002 is further used to query and obtain the reachable location point closest to the unreachable location point as the location coordinate point based on the map road network data when a non-reachable location point is obtained through map matching.

[0285] In a possible implementation, the preset condition includes that the similarity is greater than or equal to a preset threshold.

[0286] In one possible implementation, the interaction module 1001 is specifically used to display a first interaction interface, which includes a blank drawing board or a multi-option menu containing multiple graphics; receive a first command, which is generated by an operation performed by a user on the first interaction interface, and the first command includes a graphic drawn by the user or a selected graphic; in response to the first command, use the graphic drawn by the user or the selected graphic as the target graphic.

[0287] In one possible implementation, the interaction module 1001 is specifically used to display a second interaction interface, where the second interaction interface includes an electronic map or a multi-option menu containing multiple areas; receive a second command, where the second command is generated by an operation performed by a user on the second interaction interface, and the second command includes an area circled or selected by the user on the electronic map; and in response to the second command, use the area circled by the user on the electronic map or the selected area as the target area.

[0288] In one possible implementation, the interaction module 1001 is also used to display a third interaction interface, which includes the target path, which includes multiple location coordinate points and the user's travel trajectory obtained based on positioning, and the location coordinate points are reachable geographical locations within the target area.

[0289] In one possible implementation, the interaction module 1001 is further used to mark the first location coordinate point on the third interaction interface when the user passes through the first location coordinate point to indicate that the user has passed through the first location coordinate point, and the first location coordinate point is one of the multiple location coordinate points.

[0290] In one possible implementation, the interaction module 1001 is also used to display a graphic consisting of the user's travel trajectory on the third interaction interface when the user passes through the multiple location coordinate points, and the graphic includes the user's actual travel trajectory and / or a graphic consisting of straight lines connecting the multiple location coordinate points.

[0291] In one possible implementation, the interaction module 1001 is also used to display a fourth interaction interface, which includes information for prompting the user to store the travel trajectory; receive a third command, which is generated by the user's operation on the fourth interaction interface; and store a graphic consisting of the user's travel trajectory in response to the third command.

[0292] The device of this embodiment can be used to execute the technical solution of the method embodiment shown in Figure 3. Its implementation principle and technical effects are similar and will not be repeated here.

[0293] During implementation, each step of the above method embodiment can be completed by an integrated logic circuit of hardware in a processor or by instructions in the form of software. The processor can be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the method disclosed in the embodiment of the present application can be directly embodied as being executed by a hardware coding processor, or can be executed by a combination of hardware and software modules in the coding processor. The software module can be located in a mature storage medium in the art such as random access memory, flash memory, read-only memory, programmable read-only memory or electrically erasable programmable memory, registers, etc. The storage medium is located in the memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.

[0294] The memory mentioned in the above embodiments may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), and direct RAM bus RAM (DR RAM). It should be noted that the memory of the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0295] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0296] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0297] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0298] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0299] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0300] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0301] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.

Claims

1. A path planning method, characterized in that: include: Acquire a target graphic and a target area, wherein the target graphic and the target area are generated based on a user operation on an interactive interface; Performing map matching and path planning in the target area according to the target graphic to obtain a target path, wherein the similarity between the shape of the target path and the shape of the target graphic meets a preset condition; The target path is presented to the user.

2. The method according to claim 1, characterized in that The performing map matching and path planning in the target area according to the target graphic to obtain the target path includes: Performing map matching in the target area according to the target graphic to obtain a plurality of position coordinate points, wherein the position coordinate points are geographical locations that can be reached in the target area; Path planning is performed between any two adjacent position coordinate points among the plurality of position coordinate points to obtain the target path.

3. The method according to claim 2, characterized in that The performing map matching in the target area according to the target graphic to obtain a plurality of position coordinate points comprises: Acquire a plurality of key position points on the target graphic, wherein the plurality of key position points are used to describe the shape of the target graphic; Acquire map road network data of the target area; Map matching is performed based on the multiple key location points and the map road network data to obtain the multiple location coordinate points, and the multiple location coordinate points correspond to the multiple key location points.

4. The method according to claim 3, characterized in that The performing map matching according to the plurality of key location points and the map road network data to obtain the plurality of location coordinate points includes: When multiple groups of position coordinate points are obtained through map matching, shapes formed by the multiple groups of position coordinate points are obtained and similarity is measured with the shape of the target graphic respectively; A group of position coordinate points whose similarity meets the preset condition among the multiple groups of position coordinate points is determined as the multiple position coordinate points.

5. The method according to any one of claims 1 to 4, characterized in that Get the target graphics, including: Displaying a first interactive interface, wherein the first interactive interface includes a blank drawing board or a multi-option menu including multiple graphics; receiving a first command, where the first command is generated by an operation performed by a user on the first interactive interface, and the first command includes a graphic drawn by the user or a graphic selected by the user; In response to the first command, the graphic drawn by the user or the selected graphic is used as the target graphic.

6. The method according to any one of claims 1 to 5, characterized in that Get the target area, including: Displaying a second interactive interface, wherein the second interactive interface includes an electronic map or a multi-option menu including multiple areas; receiving a second command, where the second command is generated by an operation performed by a user on the second interactive interface, and the second command includes an area circled or selected by the user on the electronic map; In response to the second command, the area circled by the user on the electronic map or the selected area is used as the target area.

7. The method according to any one of claims 1 to 6, characterized in that Also includes: A third interaction interface is displayed, wherein the third interaction interface includes the target path, the target path includes a plurality of position coordinate points, and a user's travel trajectory obtained based on positioning, wherein the position coordinate points are geographical locations that can be reached within the target area.

8. The method according to claim 7, characterized in that Also includes: When the user passes by the first position coordinate point, the first position coordinate point is marked on the third interaction interface to indicate that the user has passed by the first position coordinate point, and the first position coordinate point is one of the multiple position coordinate points.

9. The method according to claim 7 or 8, characterized in that: Also includes: When the user passes through the multiple position coordinate points, a graph consisting of the user's travel trajectory is displayed on the third interactive interface, and the graph includes the user's real travel trajectory and / or a graph consisting of straight lines connecting the multiple position coordinate points.

10. The method according to any one of claims 7 to 9, characterized in that: Also includes: displaying a fourth interaction interface, wherein the fourth interaction interface includes information for prompting the user to store the travel trajectory; receiving a third command, where the third command is generated by an operation performed by a user on the fourth interaction interface; In response to the third command, a graph formed by the user's travel trajectory is stored.

11. A path planning device, characterized in that: include: An interactive module, used to obtain a target graphic and a target area, wherein the target graphic and the target area are generated based on the user's operation on the interactive interface; A planning module, configured to perform map matching and path planning in the target area according to the target graphic to obtain a target path, wherein the similarity between the shape of the target path and the shape of the target graphic satisfies a preset condition; The interaction module is also used to display the target path to the user.

12. The device according to claim 11, characterized in that The planning module is specifically used to perform map matching in the target area according to the target graphic to obtain a plurality of position coordinate points, wherein the position coordinate points are geographical locations that can be reached in the target area; Path planning is performed between any two adjacent position coordinate points among the plurality of position coordinate points to obtain the target path.

13. The device according to claim 12, characterized in that The planning module is specifically used to obtain a plurality of key position points on the target graphic, wherein the plurality of key position points are used to describe the shape of the target graphic; and obtain map road network data of the target area; Map matching is performed based on the multiple key location points and the map road network data to obtain the multiple location coordinate points, and the multiple location coordinate points correspond to the multiple key location points.

14. The device according to claim 13, characterized in that The planning module is specifically used to obtain the similarity between the shapes formed by the multiple groups of position coordinate points and the shape of the target graphic when multiple groups of position coordinate points are obtained through map matching; and determine a group of position coordinate points among the multiple groups of position coordinate points whose similarity meets the preset conditions as the multiple position coordinate points.

15. The device according to any one of claims 11 to 14, characterized in that The interaction module is specifically used to display a first interaction interface, which includes a blank drawing board or a multi-option menu containing multiple graphics; receive a first command, which is generated by an operation performed by a user on the first interaction interface, and the first command includes a graphic drawn by the user or a selected graphic; in response to the first command, use the graphic drawn by the user or the selected graphic as the target graphic.

16. The device according to any one of claims 11 to 15, characterized in that The interaction module is specifically used to display a second interaction interface, which includes an electronic map or a multi-option menu containing multiple areas; receive a second command, which is generated by an operation performed by a user on the second interaction interface, and the second command includes an area circled by the user on the electronic map or an area selected; in response to the second command, use the area circled by the user on the electronic map or the selected area as the target area.

17. The device according to any one of claims 11 to 16, characterized in that The interaction module is also used to display a third interaction interface, which includes the target path, which includes multiple position coordinate points and a user's travel trajectory obtained based on positioning, and the position coordinate points are geographical locations that can be reached in the target area.

18. The device according to claim 17, characterized in that The interaction module is further used to mark a first position coordinate point on the third interaction interface when the user passes by the first position coordinate point to indicate that the user has passed by the first position coordinate point, and the first position coordinate point is one of the multiple position coordinate points.

19. The device according to claim 17 or 18, characterized in that The interaction module is also used to display a graph consisting of the user's travel trajectory on the third interaction interface when the user passes through the multiple position coordinate points, and the graph includes the user's actual travel trajectory and / or a graph consisting of straight lines connecting the multiple position coordinate points.

20. The device according to any one of claims 17 to 19, characterized in that The interaction module is also used to display a fourth interaction interface, which includes information for prompting the user to store a travel trajectory; receive a third command, which is generated by an operation performed by the user on the fourth interaction interface; and store a graphic consisting of the user's travel trajectory in response to the third command.

21. An electronic device, characterized in that: include: one or more processors; A memory for storing one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 10.

22. A computer-readable storage medium, characterized in that: The invention comprises a computer program, which, when executed on a computer, causes the computer to execute the method according to any one of claims 1 to 10.

23. A computer program product, characterized in that The computer program product comprises a computer program code, and when the computer program code is run on a computer, the computer is caused to execute the method according to any one of claims 1 to 10.

Citation Information

Patent Citations

  • Method and device for acquiring exercise route

    CN107560611A

  • Movement route recommendation method and device and storage medium

    CN107729367A

  • Motion route recommendation method and device and storage medium

    CN110633346A

  • Route determination method, device, equipment and computer storage medium

    CN110926486A

  • Motion path planning method and device, motion path generation method and device, equipment and storage medium

    CN114322992A