Method and device for generating a movement route, storage medium and processor

By receiving route keywords input by users, filtering and sorting from the route database, and using tag detection rules to generate movement routes that meet user needs, this solves the problem of reliance on manpower and mismatch between needs in existing technologies, and achieves efficient and low-cost movement route generation and management.

CN117033419BActive Publication Date: 2026-06-05BEIJING CALORIE INFORMATION TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BEIJING CALORIE INFORMATION TECH CO LTD
Filing Date
2023-08-25
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

Existing technologies rely on manual methods to generate motion routes, and the generated routes do not match user needs, resulting in routes that do not meet specific user requirements and are difficult to operate and manage.

Method used

By receiving route keywords input by users, candidate routes with matching tags are filtered from the route database. The routes are sorted according to their ratings and target routes are pushed. The route database is built using a set of tag detection rules, which contains multiple tag detection rules to detect route attributes. Backup routes are generated and reviewed.

Benefits of technology

It enables the automated generation of motion routes that meet user needs, improving generation efficiency, reducing costs, satisfying user motion requirements, and simplifying operation and management.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117033419B_ABST
    Figure CN117033419B_ABST
Patent Text Reader

Abstract

The application discloses a method and device for generating a movement route, a storage medium and a processor. The method comprises: receiving a route keyword input by a user through a client; filtering routes with route labels matching the route keyword from a route database to obtain candidate routes, wherein the route database stores backup routes with different attributes, each attribute of the backup routes carries a preset route label, and each attribute of the backup routes is a road segment containing the corresponding preset route label extracted from a basic route; in the case that the candidate routes are multiple, sorting the multiple candidate routes according to the order of route scores from large to small, and obtaining a preset number of candidate routes in the front row to obtain target routes; and pushing the target routes to the client. Through the application, the problem that the way of generating a movement route in the related art is too dependent on manpower and the generated route does not match the running demand of a user is solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of route information processing, and more specifically, to a method, apparatus, storage medium, and processor for generating motion routes. Background Technology

[0002] Users need exercise routes when engaging in certain activities, such as running and cycling. In related technologies, this is primarily achieved by users manually submitting routes, which are then manually reviewed by the exercise platform before being generated.

[0003] It's important to note that the number of user-submitted routes is small and inconsistent, and users often struggle to define and verify route attributes, such as gradient. In this case, the submitted route may not be the most suitable for the user; for example, a user might prefer routes with fewer traffic lights or uphill sections, but the submitted route might not meet these criteria. Furthermore, because user-submitted routes lack operational attributes, it's impossible to perform operational, strategy distribution, or management operations on the routes, and the submission review process is cumbersome. In conclusion, this method of generating exercise routes in related technologies relies too heavily on human intervention and has significant limitations.

[0004] There is currently no effective solution to the problem that the methods for generating motion routes in related technologies rely too heavily on human intervention and that the generated routes do not match the user's operational needs. Summary of the Invention

[0005] This application provides a method, apparatus, storage medium, and processor for generating motion routes, in order to solve the problem that the methods for generating motion routes in related technologies rely too much on human labor and that the generated routes do not match the user's operational needs.

[0006] According to one aspect of this application, a method for generating a travel route is provided. The method includes: receiving route keywords input by a user through a client; filtering routes whose route tags match the route keywords from a route database to obtain candidate routes, wherein the route database stores alternative routes with different attributes, each type of alternative route carrying a preset route tag, and each type of alternative route being a road segment containing the corresponding preset route tag extracted from a base route; when there are multiple candidate routes, sorting the multiple candidate routes according to their route scores from largest to smallest, and obtaining a preset number of candidate routes at the top of the sorted list to obtain a target route; and pushing the target route to the client.

[0007] Optionally, the route database is constructed as follows: Multiple user-uploaded initial routes of at least one of the following types are obtained: historical movement trajectories, real-time movement trajectories, and existing routes, wherein existing routes are routes generated from movement trajectories that have undergone route verification; the initial routes are tagged based on a set of tag detection rules to obtain basic routes, wherein the set of tag detection rules contains multiple tag detection rules, each used to detect whether a route contains a preset attribute; multiple preset route tags are determined, and road segments containing the corresponding preset route tags are extracted from the basic routes to obtain multiple sets of backup routes, wherein each set of backup routes carries the same preset route tag; the multiple sets of backup routes are added to the database to obtain the route database.

[0008] Optionally, before labeling the initial route based on the label detection rule set to obtain the basic route, the method further includes: removing offset coordinate points from the initial route if the initial route contains offset coordinate points, wherein an offset coordinate point is a point whose offset distance from the actual coordinates is greater than a preset distance; and / or correcting the accuracy of the anomaly point according to the road network information if the anomaly point is a point with an accuracy lower than a preset accuracy, and correcting the attribute value of the anomaly point according to the attribute threshold if the anomaly point is a point with an associated attribute value exceeding an attribute threshold; and / or retaining the single-lap route corresponding to the loop portion if the initial route is a motion trajectory and the motion trajectory contains a loop portion.

[0009] Optionally, before adding multiple sets of backup routes to the database to obtain the route database, the method further includes: determining sample backup routes from the multiple sets of backup routes, and performing route review on the sample backup routes, wherein the route review is used to verify whether the route information of the backup routes matches the route information of the actual routes; if the route review of a sample backup route fails, adjusting the label detection rules in the label detection rule set, and regenerating backup routes based on the adjusted label detection rules and the initial routes, until the route review of all backup data passes.

[0010] Optionally, the method further includes: every preset period, determining backup routes in the route database that have been used less than a preset number of times, and obtaining the route to be corrected; detecting whether the usage of other backup routes in the area where the route to be corrected is located is less than a preset number of times, wherein the other backup routes are routes other than the route to be corrected in the route database; if the usage of other backup routes is less than a preset number of times, detecting whether the route to be corrected carries an incorrect label; if the route to be corrected carries an incorrect label, correcting the label carried by the route to be corrected, or deleting the route to be corrected from the route database.

[0011] Optionally, if the user inputs N route keywords, where N is a positive integer, routes whose route tags match the route keywords are filtered from the route database to obtain candidate routes, including: routes whose route tags match the first route keyword are filtered from the route database to obtain the first backup route; routes whose route tags match the second route keyword are filtered from the first backup route to obtain the second backup route; and so on, until routes whose route tags match the Nth route keyword are filtered from the (N-1)th backup route to obtain candidate routes.

[0012] Optionally, after pushing the target route to the client, the method further includes: upon receiving user feedback on the target route, determining whether the target route meets the user's exercise needs based on the feedback; if the target route does not meet the user's exercise needs, displaying a route submission entry on the client; receiving the exercise trajectory submitted by the user through the route submission entry, and tagging the exercise trajectory based on a set of tag detection rules, wherein the set of tag detection rules contains multiple tag detection rules, each tag detection rule being used to detect whether the route contains preset attributes; extracting the segment containing route keyword indicators from the tagged exercise trajectory to obtain the updated target route, and pushing the updated target route to the client.

[0013] According to another aspect of this application, a route generation apparatus is provided. The apparatus includes: a receiving unit for receiving route keywords input by a user through a client; a filtering unit for filtering routes whose route tags match the route keywords from a route database to obtain candidate routes, wherein the route database stores alternative routes with different attributes, each type of alternative route carrying a preset route tag, and each type of alternative route being a road segment containing the corresponding preset route tag extracted from a basic route; a sorting unit for sorting multiple candidate routes according to their route scores from largest to smallest when there are multiple candidate routes, and obtaining a preset number of candidate routes at the top of the sorted list to obtain a target route; and a first push unit for pushing the target route to the client.

[0014] According to another aspect of the present invention, a computer storage medium is also provided for storing a program, wherein the program, when running, controls the device where the non-volatile storage medium is located to execute a method for generating a motion path.

[0015] According to another aspect of the present invention, an electronic device is also provided, comprising a processor and a memory; the memory stores computer-readable instructions, and the processor is used to execute the computer-readable instructions, wherein the computer-readable instructions execute a method for generating a motion path.

[0016] This application employs the following steps: receiving route keywords input by a user through a client; filtering routes from a route database that match the route tags and route keywords to obtain candidate routes, wherein the route database stores backup routes with different attributes, each backup route carrying a preset route tag, and each backup route containing the corresponding preset route tag is extracted from the basic routes; when there are multiple candidate routes, sorting the multiple candidate routes according to the route score from largest to smallest, and obtaining a preset number of candidate routes at the top of the ranking to obtain the target route; pushing the target route to the client, thus solving the problem that the methods of generating exercise routes in related technologies rely too heavily on human labor and that the generated routes do not match the user's exercise needs. By extracting backup routes containing preset route tags from the basic routes and then recommending the target route to the user from the backup routes in combination with the input route keywords, the efficiency of generating exercise routes is improved, the cost of generating routes is reduced, and the generated routes can meet the user's exercise needs. Attached Figure Description

[0017] The accompanying drawings, which form part of this application, are used to provide a further understanding of this application. The illustrative embodiments and descriptions of this application are used to explain this application and do not constitute an undue limitation of this application. In the drawings:

[0018] Figure 1 This is a flowchart of a method for generating a motion path according to an embodiment of this application;

[0019] Figure 2 This is a flowchart of a method for constructing a route database according to an embodiment of this application;

[0020] Figure 3 This is a schematic diagram of a motion path generation device according to an embodiment of this application;

[0021] Figure 4 This is a schematic diagram of an electronic device provided according to an embodiment of this application. Detailed Implementation

[0022] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. This application will now be described in detail with reference to the accompanying drawings and embodiments.

[0023] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.

[0024] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate for the embodiments of this application described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units 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.

[0025] It should be noted that all information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for display, data used for analysis, etc.) involved in this disclosure are information and data authorized by the user or fully authorized by all parties.

[0026] According to an embodiment of this application, a method for generating a motion path is provided.

[0027] Figure 1 This is a flowchart of a method for generating motion paths according to an embodiment of this application. For example... Figure 1 As shown, the method includes the following steps:

[0028] Step S102: Receive route keywords input by the user through the client.

[0029] The user refers to someone who needs a specific exercise route, such as someone preparing to run or cycle. The client is the app installed on the fitness application. When preparing to exercise, the user can open the fitness application installed on the client and enter words describing the characteristics of the desired exercise route, i.e., route keywords. For example, if a user wants to practice shuttle runs on a straight route, they can enter the route keyword "straight" in the fitness application's search box.

[0030] Step S104: Select routes whose route tags match route keywords from the route database to obtain candidate routes. The route database stores backup routes with different attributes. Each backup route carries a preset route tag. Each backup route is a road segment containing the corresponding preset route tag extracted from the basic route.

[0031] It should be noted that the backup routes in the route database are generated based on the basic routes. The basic routes are obtained by labeling motion trajectories without defined attributes using a set of label detection rules. Different label detection rules can detect different attributes on the motion trajectory, thus assigning different route labels to the trajectory and obtaining the basic route. For example, the attributes that label detection rules can detect include park, marathon, track, flat road, uphill, downhill, high altitude, stroll, slope, running, walking, cycling, number of traffic lights, shops, lighting, etc. Based on the detected attributes, the motion trajectory is labeled, resulting in a basic route carrying at least one route label.

[0032] Furthermore, road segments containing preset route tags can be extracted from the base routes carrying route tags to obtain multiple backup routes with different attributes. The attributes of the backup routes are characterized by their preset route tags. For example, if the preset route tag is "straight line," extracting a road segment longer than 200 meters from the base route that contains the "straight line" tag yields a backup route with the straight line attribute; if the preset route tag is "gradient," extracting a road segment longer than 200 meters from the base route that contains the "gradient" tag yields a backup route with the gradient attribute. It should be noted that there can be multiple base routes, and different backup routes can be extracted from a single base route based on different preset tags.

[0033] After obtaining alternative routes with different attributes, they are stored in a database to create a route database. Routes matching route tags and keywords are then filtered from this database to obtain candidate routes. For example, if a user enters the keyword "straight line" into the search box of a fitness app, at least one alternative route with the "straight line" attribute will be returned, which is the candidate route.

[0034] Step S106: When there are multiple candidate routes, sort the multiple candidate routes in descending order of route score, and obtain a preset number of candidate routes that rank at the top of the list to obtain the target route.

[0035] Specifically, if there is only one candidate route, it can be used as the target route. If there are multiple candidate routes, different scoring indicators can be used to determine route scores, and then a preset number of candidate routes can be selected as target routes in descending order of scores.

[0036] For example, rating metrics can include the distance between the route and the user, the length of the route itself, and the number of participants along the route. Weights are assigned to different rating metric values; a shorter distance between the route and the user corresponds to a higher rating metric value, as does a longer route and a higher number of participants. For each candidate route, different rating metric values ​​are determined, and the weighted sum of each rating metric value and its weight is calculated to obtain the route score. After calculating the route scores for multiple candidate routes, the top 5 candidate routes with the highest scores are selected as the target routes.

[0037] Step S108: Push the target route to the client.

[0038] Specifically, when there are multiple target routes, the target routes are displayed on the interface of the fitness application in descending order of route rating. The user selects a target route and runs according to the selected route.

[0039] During the user's exercise along the target route, the user's performance along that route can be recorded. After the exercise ends, the performance ranking for that route can be matched. This ranking is generated from the exercise data of different users and can include detailed rankings, such as rankings for different regions, ages, and genders, thereby increasing the fun of exercise for users.

[0040] The method for generating exercise routes provided in this application receives route keywords input by a user through a client; filters routes whose route tags match the route keywords from a route database to obtain candidate routes. The route database stores backup routes with different attributes, each carrying a preset route tag. Each backup route is a segment containing the corresponding preset route tag extracted from a base route. When there are multiple candidate routes, they are sorted according to their route scores from highest to lowest, and a preset number of the top-ranked candidate routes are obtained to obtain the target route. The target route is then pushed to the client. This method solves the problems of related technologies where generating exercise routes relies too heavily on manual labor and the generated routes do not match the user's exercise needs. By extracting backup routes containing preset route tags from the base route and then recommending a target route to the user from the backup routes in conjunction with the input route keywords, the efficiency of generating exercise routes is improved, the cost of generating routes is reduced, and the generated routes meet the user's exercise needs.

[0041] Figure 2This is a flowchart of a route database construction method according to an embodiment of this application. Optionally, in the motion route generation method provided in this embodiment, the route database is constructed in the following manner:

[0042] Step S202: Obtain at least one of the following types of initial routes uploaded by multiple users: historical motion trajectories, real-time motion trajectories, and existing routes, wherein existing routes are routes that have completed route review and are generated from motion trajectories.

[0043] Among these users, there may be users who input route keywords, and multiple users may upload multiple initial routes, thus enriching the basic data for building the route database.

[0044] Step S204: Tag the initial route based on the tag detection rule set to obtain the basic route. The tag detection rule set contains multiple tag detection rules, and each tag detection rule is used to detect whether the route contains a preset attribute.

[0045] The set of label detection rules can include detection rules for parks, marathons, playgrounds, flat roads, uphill, downhill, high altitudes, number of traffic lights, running, walking, cycling, etc. After obtaining the set of label detection rules, route labels are added to the movement trajectory and movement route to obtain the basic route.

[0046] The specific rules in the tag detection rule set are as follows: Parks: Can be determined based on existing route names or types. For tracks, the presence of parks near the track can be determined by identifying points. Full Marathon / Half Marathon: Can be determined based on route name and distance, as well as the marathon event's recorded time and city. Track / Field: Can be determined based on existing route types, whether the track passes through a school, and the distance between the track and a school. Flat Road: Can be determined based on whether the slope is less than 1%. Uphill / Downhill: Routes or tracks with a slope exceeding 7% within 0.5km are considered uphill, and those with a slope less than -7% within 0.5km are considered downhill. High Altitude: Can be determined based on whether the altitude is greater than 1500m. Straight Road: Can be determined based on whether the angle of the track is less than 160 degrees. Residential Area: Can be determined based on whether there are residential areas near the track. Traffic Lights: Traffic light data can be obtained through route planning. Walking, Running, Cycling Type: Can be determined based on track distance and user-estimated exercise type.

[0047] It should be noted that the label detection rules in this embodiment are not limited to the above types, and the label detection rules in the label detection rule set can be dynamically expanded, thereby facilitating operational or technical processing of the route.

[0048] Step S206: Determine multiple preset route labels, extract road segments containing the corresponding preset route labels from the basic routes, and obtain multiple sets of backup routes, wherein each set of backup routes carries the same preset route label.

[0049] Step S208: Add multiple sets of backup routes to the database to obtain the route database.

[0050] Among these features, multiple preset route labels can be labels involved in the label detection rule set. Based on the already labeled information of the basic route, road segments corresponding to different preset route labels are extracted to generate new routes. That is, according to the label detection rules, road segments that meet the label conditions are calculated in reverse, and all road segments that meet the conditions are extracted and saved as backup routes. For example, for the "uphill" label, road segments in the basic route that meet the uphill condition are detected.

[0051] It should be noted that, in addition to the preset tags used during the extraction, the backup route can also contain other tags. Other matching tags can be applied to the generated backup route based on tag detection rules, and other tags carried on the original base route for that section can be reused. For example, a backup route carrying an "uphill" tag can also carry a "straight line" tag; that is, the newly generated backup route is also a combination of multiple tags.

[0052] After generating backup routes sequentially based on all preset labels, multiple backup routes are obtained. These multiple backup routes are then added to the database to obtain the route database.

[0053] This embodiment uses a set of tag detection rules to label a user's movement trajectory or approved movement route, obtaining a basic route. Then, based on preset route tags, segments with different attributes are extracted from the basic route to obtain multiple alternative routes. On one hand, users can filter candidate routes with matching attributes from the route database using route keywords, achieving automated route extraction and solving the problem in related technologies where routes lack fine-grained segmentation or combination, failing to meet users' needs for only a suitable segment. On the other hand, while discovering new routes, it also processes the smaller approved route segments that users might need, meeting more refined user needs and enriching the alternative routes in the route database. Furthermore, because routes have tag information extracted according to unified tag detection rules, route approval can refer to a unified standard, reducing manpower and expenses for subsequent route approvals.

[0054] To improve the accuracy of the basic route generated based on the initial route, optionally, in the motion route generation method provided in this application embodiment, before tagging the initial route based on the label detection rule set to obtain the basic route, the method further includes: if the initial route contains offset coordinate points, removing the offset coordinate points from the initial route, wherein the offset coordinate points refer to points whose offset distance from the actual coordinates is greater than a preset distance; and / or if the initial route contains abnormal points, if the abnormal point is a point with an accuracy lower than a preset accuracy, then correcting the accuracy of the abnormal point according to the road network information, and if the abnormal point is a point whose associated attribute value exceeds an attribute threshold, then correcting the attribute value of the abnormal point according to the attribute threshold associated with the route; and / or if the initial route is a motion trajectory, and the motion trajectory contains a cyclic part, retaining the single-lap route corresponding to the cyclic part.

[0055] It should be noted that the initial routes are the historical motion trajectories, real-time motion trajectories, and existing routes uploaded by users. Since there may be errors in the recording process of the routes or trajectories uploaded by users, there may be invalid or abnormal coordinate points in the routes. Therefore, before labeling these initial routes according to the set of label detection rules, the coordinate points on the initial routes need to be preprocessed.

[0056] Invalid points are points with positioning offsets, i.e., offset coordinate points. Removing offset coordinate points from the initial route can make the coordinate points of the initial route smoother.

[0057] Outliers can be coordinate points with low precision. Road network information can be used to correct the precision of these points. If road network information for a point with low precision cannot be found, the point can be deleted. Outliers can also be points whose associated attribute values ​​exceed attribute thresholds. Each point on a route is associated with attributes such as speed, distance, and duration. Speed ​​refers to the speed at which a point passes through it on the route; distance is the distance between the point and the route's starting point; and duration is the time taken to travel from the route's starting point to the point. A route itself also has thresholds for speed, distance, and duration. If the associated attribute values ​​of a point exceed these thresholds, the attribute values ​​can be corrected based on the thresholds. For routes where the associated attribute values ​​cannot be corrected, the route can be identified as a suspicious trajectory and not tagged, thus avoiding the impact of outliers on subsequently generated alternative routes.

[0058] In addition, since users may move back and forth or move in a closed loop, if there are loop parts in the user's uploaded motion trajectory, the duplicates can be removed and the single-lap trajectory can be taken as the initial route.

[0059] This implementation process processes invalid, abnormal, and duplicate coordinate points in the initial routes uploaded by users, and then tags the processed initial routes, thereby improving the accuracy and precision of the generated basic routes and laying a data foundation for generating accurate backup routes.

[0060] Optionally, in the method for generating motion routes provided in this application embodiment, before adding multiple sets of backup routes to the database to obtain a route database, the method further includes: determining sample backup routes from multiple sets of backup routes, and performing route review on the sample backup routes, wherein the route review is used to check whether the route information of the backup routes matches the route information of the actual routes; if the route review of a sample backup route fails, adjusting the label detection rules in the label detection rule set, and regenerating backup routes based on the adjusted label detection rules and the initial routes, until the route review of all backup data passes.

[0061] It should be noted that after generating multiple sets of backup routes, backup routes generated in popular cities can be extracted as sample backup routes. The label information, length, trajectory map, latitude and longitude information of the sample backup routes are obtained and compared with the actual information of the sample backup routes in the road network to check the accuracy of the route information, thereby verifying the correctness of the label detection rules and the logical correctness of the generated routes. For sample backup routes that fail the route review, if the label information is incorrect, the relevant label detection rules can be further optimized. Based on the optimized label detection rules, the initial routes are re-labeled, and road segments containing the correct label are extracted to regenerate backup routes until the regenerated backup routes based on the label detection rules pass the route review. If the "uphill" label of the sample backup route is found to be incorrect, the detection rules for the "uphill" label can be further optimized. For example, the original detection rule for the "uphill" label is: routes or tracks with a gradient of more than 5% within 0.3km. This can be optimized to: routes or tracks with a gradient of more than 7% within 0.5km. Furthermore, based on the optimized "uphill" detection rule, multiple initial routes are re-labeled, and road segments containing the "uphill" label are extracted to regenerate backup routes until the regenerated backup routes pass the route review.

[0062] This embodiment performs a sampling route review on multiple generated backup routes and optimizes the label detection rules for backup routes with incorrect label information that fail the review. This improves the accuracy of subsequent route labeling based on the label detection rules and further enhances the accuracy of backup routes generated based on the tagged routes.

[0063] The accuracy of backup routes can be determined by the usage of routes. Optionally, in the method for generating motion routes provided in this application embodiment, the method further includes: every preset period, determining backup routes in the route database that have been used less than a preset number of times, and obtaining a route to be corrected; detecting whether the usage of other backup routes in the area where the route to be corrected is located is less than a preset number of times, wherein the other backup routes are routes other than the route to be corrected in the route database; if the usage of other backup routes is less than a preset number of times, detecting whether the route to be corrected carries an incorrect label; if the route to be corrected carries an incorrect label, correcting the label carried by the route to be corrected, or deleting the route to be corrected from the route database.

[0064] For example, the usage frequency of newly generated backup routes can be periodically screened, i.e., the number of times users use these backup routes for exercise. A preset interval could be one month. Routes with less than 50 uses in a month are identified as routes to be corrected. The reason for the low usage frequency of these routes can be determined. If other routes in the area also have low usage (i.e., fewer than 50 uses), it indicates low population density in the area, and the low usage frequency of the routes to be corrected is normal. However, if other routes in the area have high usage, but only the backup routes to be corrected have low usage (e.g., all other routes in the area have fewer than 50 uses), it suggests a potential problem with the route information. Furthermore, the routes to be corrected can be checked for incorrect labels. If incorrect labels are present, they are corrected. If the label correction process is complex, the routes to be corrected can be removed from the route database.

[0065] This embodiment allows for the periodic screening of the usage frequency of backup routes. For backup routes with low usage frequency, the reasons can be analyzed and corresponding countermeasures can be taken. This can improve the accuracy of the route information of backup routes in the route database, thereby increasing the user usage rate of the pushed routes.

[0066] When a user's desired exercise route has multiple attributes, the user can input multiple route keywords in a fitness application. Optionally, in the exercise route generation method provided in this application embodiment, when the user inputs N route keywords (N is a positive integer), routes whose route tags match the route keywords are filtered from the route database to obtain candidate routes. This includes: filtering routes whose route tags match the first route keyword from the route database to obtain a first backup route; filtering routes whose route tags match the second route keyword from the first backup route to obtain a second backup route; and so on, until a route whose route tags match the Nth route keyword is filtered from the (N-1)th backup route to obtain a candidate route.

[0067] For example, if a user enters two route keywords, "straight" and "uphill", the system can first filter routes from the route database that match the route tag "straight" to obtain a first backup route with the straight attribute. Then, it can filter routes from the first backup route that match the route tag "uphill" to obtain a second backup route, which is a backup route that has both the straight and uphill attributes.

[0068] Furthermore, users' route requirements can be diverse. For example, if a user enters two route keywords, "flat road first" and "uphill then", the system can first filter routes from the route database that match the "flat road" tag to obtain multiple alternative routes with the flat road attribute. Then, it can filter routes from the route database that match the "uphill" tag to obtain multiple alternative routes with the uphill attribute. Finally, it can combine the alternative routes with the flat road attribute and the uphill attribute that are close in distance to obtain the route required by the user.

[0069] In this embodiment, when a user inputs multiple route keywords, alternative routes with multiple route attributes can be selected from the route database according to the user's needs. Alternatively, alternative routes with different route attributes can be selected from the route database and then spliced ​​and combined to meet the user's different route requirements.

[0070] If the target route pushed from the route database still cannot meet the user's needs, optionally, in the method for generating a movement route provided in this application embodiment, after pushing the target route to the client, the method further includes: upon receiving feedback from the user on the target route, determining whether the target route meets the user's movement needs based on the feedback; if the target route does not meet the user's movement needs, displaying a route submission entry on the client; receiving the movement trajectory submitted by the user through the route submission entry, and tagging the movement trajectory based on a set of tag detection rules, wherein the set of tag detection rules contains multiple tag detection rules, each tag detection rule is used to detect whether the route contains a preset attribute; extracting the segment containing the route keyword indication from the tagged movement trajectory to obtain the updated target route, and pushing the updated target route to the client.

[0071] It should be noted that if users report that the recommended route is inaccurate, an entry point can be provided for users to submit routes. A target route can be generated based on the user's uploaded trajectory. After submission, the route undergoes review. Once approved, the route is tagged with a match to the searched route keywords, and the generated target route is recommended to the user. Through this embodiment, even when the target route searched from the route database based on route keywords does not meet the user's needs, a matching target route is generated based on the user's own movement trajectory, further satisfying the user's exercise needs and improving the user experience.

[0072] It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions, and although a logical order is shown in the flowchart, in some cases the steps shown or described may be executed in a different order than that shown here.

[0073] This application also provides a motion path generation apparatus. It should be noted that the motion path generation apparatus of this application can be used to execute the motion path generation method provided in this application. The motion path generation apparatus provided in this application will be described below.

[0074] Figure 3 This is a schematic diagram of a motion path generation device according to an embodiment of this application. Figure 3 As shown, the device includes: a receiving unit 301, a filtering unit 302, a sorting unit 303, and a first pushing unit 304.

[0075] The receiving unit 301 is used to receive route keywords input by the user through the client.

[0076] The filtering unit 302 is used to filter routes that match route tags and route keywords from the route database to obtain candidate routes. The route database stores backup routes with different attributes. Each backup route carries a preset route tag. Each backup route is a road segment containing the corresponding preset route tag extracted from the basic route.

[0077] The sorting unit 303 is used to sort multiple candidate routes in descending order of route score when there are multiple candidate routes, and obtain a preset number of candidate routes that rank at the top of the sort to obtain the target route.

[0078] The first push unit 304 is used to push the target route to the client.

[0079] The motion route generation device provided in this application embodiment receives route keywords input by a user through a client via a receiving unit 301; a filtering unit 302 filters routes whose route tags match the route keywords from a route database to obtain candidate routes, wherein the route database stores backup routes with different attributes, each backup route carrying a preset route tag, and each backup route containing the corresponding preset route tag is extracted from the basic routes; a sorting unit 303 sorts the multiple candidate routes according to the route score from largest to smallest when there are multiple candidate routes, and obtains a preset number of candidate routes at the top of the sort to obtain the target route; a first push unit 304 pushes the target route to the client, which solves the problem that the method of generating motion routes in related technologies relies too much on human labor and the generated routes do not match the user's running needs. By extracting backup routes containing preset route tags from the basic routes and then recommending the target route to the user from the backup routes in combination with the input route keywords, the device achieves the effect of improving the efficiency of motion generation, reducing the cost of generating routes, and ensuring that the generated routes can meet the user's exercise needs.

[0080] Optionally, in the motion route generation apparatus provided in this application embodiment, the apparatus further includes a construction unit for constructing a route database. The construction unit includes: an acquisition module for acquiring multiple user-uploaded initial routes of at least one of the following types: historical motion trajectories, real-time motion trajectories, and existing routes, wherein the existing routes are routes generated from motion trajectories that have completed route review; a tagging module for tagging the initial routes based on a tag detection rule set to obtain basic routes, wherein the tag detection rule set contains multiple tag detection rules, each tag detection rule being used to detect whether a route contains a preset attribute; and a segmentation module for determining multiple preset route tags, and segmenting road segments containing the corresponding preset route tags from the basic routes to obtain multiple sets of backup routes, wherein each set of backup routes carries the same preset route tag; and adding the multiple sets of backup routes to the database to obtain a route database.

[0081] Optionally, in the motion route generation apparatus provided in this application embodiment, the construction unit includes: a removal module, used to remove offset coordinate points from the initial route before labeling the initial route based on the label detection rule set to obtain the basic route, if the initial route contains offset coordinate points, wherein the offset coordinate point refers to a point whose offset distance from the actual coordinate is greater than a preset distance; and / or a correction module, used to correct the accuracy of abnormal points according to road network information if the abnormal point is a point with an accuracy lower than a preset accuracy, and correct the attribute value of the abnormal point according to the attribute threshold associated with the route if the abnormal point is a point with an associated attribute value exceeding an attribute threshold; and / or a retention module, used to retain the single-lap route corresponding to the loop portion if the initial route is a motion trajectory and the motion trajectory contains a loop portion.

[0082] Optionally, in the motion route generation apparatus provided in this application embodiment, the construction unit further includes: an audit module, used to determine sample backup routes from multiple sets of backup routes and audit the sample backup routes before adding multiple sets of backup routes to the database to obtain a route database, wherein the route audit is used to audit whether the route information of the backup routes matches the route information of the actual routes; and an adjustment module, used to adjust the label detection rules in the label detection rule set if the route audit of a sample backup route fails, and regenerate backup routes based on the adjusted label detection rules and the initial routes until the route audit of all backup data passes.

[0083] Optionally, in the motion route generation apparatus provided in this application embodiment, the apparatus further includes: a determining unit, configured to determine, at preset intervals, backup routes in the route database that have been used less than a preset number of times, to obtain a route to be corrected; a first detecting unit, configured to detect whether the number of times other backup routes in the area where the route to be corrected is located is less than a preset number of times, wherein the other backup routes are routes other than the route to be corrected in the route database; a second detecting unit, configured to detect whether the route to be corrected carries an erroneous label if the number of times other backup routes have been used less than a preset number of times; and a correcting unit, configured to correct the label carried by the route to be corrected or delete the route to be corrected from the route database if the route to be corrected carries an erroneous label.

[0084] Optionally, in the motion route generation device provided in this application embodiment, when the user inputs N route keywords, where N is a positive integer, the filtering unit 302 includes: a first filtering module, used to filter routes whose route tags match the first route keywords from the route database to obtain a first backup route; a second filtering module, used to filter routes whose route tags match the second route keywords from the first backup routes to obtain a second backup route; and a third filtering module, used to filter routes whose route tags match the Nth route keyword from the (N-1)th backup routes to obtain a candidate route.

[0085] Optionally, in the motion route generation apparatus provided in this application embodiment, the apparatus further includes: a judgment unit, configured to, after pushing the target route to the client, determine whether the target route meets the user's motion needs based on the user's feedback on the target route; a submission unit, configured to, if the target route does not meet the user's motion needs, display a route submission entry on the client; a receiving unit 301, configured to receive the motion trajectory submitted by the user through the route submission entry, and tag the motion trajectory based on a tag detection rule set, wherein the tag detection rule set includes multiple tag detection rules, each tag detection rule being used to detect whether the route contains a preset attribute; and a second push unit, configured to, from the tagged motion trajectory, extract the segment containing the route tag indicating the route keyword, obtain the updated target route, and push the updated target route to the client.

[0086] The aforementioned motion path generation device includes a processor and a memory. The aforementioned receiving unit 301, filtering unit 302, sorting unit 303, and first pushing unit 304 are all stored in the memory as program units. The processor executes the aforementioned program units stored in the memory to realize the corresponding functions.

[0087] The processor contains a kernel, which retrieves the corresponding program units from memory. One or more kernels can be configured. By adjusting kernel parameters, the problems in related technologies regarding motion path generation—such as reliance on manual intervention and mismatches between generated paths and user requirements—can be addressed.

[0088] The memory may include non-permanent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.

[0089] This application also provides a computer storage medium for storing a program, wherein the program, when running, controls the device where the non-volatile storage medium is located to execute a method for generating a motion path.

[0090] This application also provides an electronic device. Figure 4 This is a schematic diagram of an electronic device provided according to an embodiment of this application, such as... Figure 4 As shown, electronic device 401 includes a processor and a memory; the memory stores computer-readable instructions, and the processor executes the computer-readable instructions, wherein the computer-readable instructions, when executed, perform a method for generating a motion path. The electronic device in this document can be a server, PC, PAD, mobile phone, etc.

[0091] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0092] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0093] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0094] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0095] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0096] Memory may include non-persistent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.

[0097] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0098] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0099] The above are merely embodiments of this application and are not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.

Claims

1. A method for generating a motion path, characterized in that, include: Receive route keywords input by the user through the client; Candidate routes are obtained by filtering routes whose route tags match the route keywords from the route database. The route database stores backup routes with different attributes. Each backup route carries a preset route tag. Each backup route is a road segment containing the corresponding preset route tag extracted from the basic route. When there are multiple candidate routes, the multiple candidate routes are sorted in descending order of route score, and a preset number of candidate routes at the top of the sort are obtained to obtain the target route. The target route is pushed to the client; Upon receiving feedback from the user regarding the target route, determine whether the target route meets the user's exercise needs based on the feedback. If the target route does not meet the user's exercise needs, a route submission entry will be displayed on the client. The system receives the motion trajectory submitted by the user through the route submission entry, and tags the motion trajectory based on a set of tag detection rules. The set of tag detection rules contains multiple tag detection rules, and each tag detection rule is used to detect whether the route contains a preset attribute. The updated target route is obtained by extracting the route segments containing the route keywords from the tagged motion trajectory and pushing the updated target route to the client.

2. The method according to claim 1, characterized in that, The route database is constructed in the following manner: Obtain at least one of the following types of initial routes uploaded by multiple users: historical movement trajectories, real-time movement trajectories, and existing routes, wherein the existing routes are routes that have completed route review and are generated from the movement trajectories; The initial route is tagged based on the tag detection rule set to obtain the basic route. The tag detection rule set contains multiple tag detection rules, and each tag detection rule is used to detect whether the route contains a preset attribute. Multiple preset route labels are determined, and road segments containing the corresponding preset route labels are extracted from the basic routes to obtain multiple sets of backup routes, wherein each set of backup routes carries the same preset route label. The multiple sets of backup routes are added to the database to obtain the route database.

3. The method according to claim 2, characterized in that, Before labeling the initial route based on the label detection rule set to obtain the basic route, the method further includes: If the initial route includes offset coordinate points, remove the offset coordinate points from the initial route, wherein the offset coordinate points are points whose offset distance from the actual coordinates is greater than a preset distance; and / or If the initial route contains outliers, and if the outlier's accuracy is lower than a preset accuracy, the accuracy of the outlier is corrected based on road network information; if the outlier's associated attribute value exceeds an attribute threshold, the attribute value of the outlier is corrected based on the attribute threshold associated with the route; and / or If the initial route is a motion trajectory, and the motion trajectory contains a cyclical portion, then the single-lap route corresponding to the cyclical portion is retained.

4. The method according to claim 2, characterized in that, Before adding the multiple sets of backup routes to the database to obtain the route database, the method further includes: A sample backup route is determined from the multiple sets of backup routes, and the sample backup route is reviewed, wherein the route review is used to check whether the route information of the backup route matches the route information of the actual route. If the route review of the sample backup route fails, the label detection rules in the label detection rule set are adjusted, and the backup route is regenerated based on the adjusted label detection rules and the initial route, until the route review of all backup data passes.

5. The method according to claim 1, characterized in that, The method further includes: Every preset period, backup routes in the route database that have been used less than a preset number of times are identified, and routes to be corrected are obtained. The system checks whether the number of times other backup routes in the area where the route to be corrected is located is less than a preset number. The other backup routes are routes other than the route to be corrected in the route database. If the number of times the other backup routes are used is less than the preset number, it is detected whether the route to be corrected carries an error label; If the route to be corrected carries an incorrect label, either correct the label carried by the route to be corrected, or delete the route to be corrected from the route database.

6. The method according to claim 1, characterized in that, Given that the user has entered N route keywords (N being a positive integer), routes whose route tags match the route keywords are filtered from the route database, resulting in candidate routes including: The first backup route is obtained by filtering routes whose route tags match the first route keywords from the route database. The second backup route is obtained by filtering out routes whose route tags match the keywords of the second route from the first backup route; The process continues until a route whose route tag matches the keyword of the Nth route is selected from the (N-1)th alternative routes, thus obtaining the candidate routes.

7. A device for generating a motion path, characterized in that, include: The receiving unit is used to receive route keywords input by the user through the client; The filtering unit is used to filter routes whose route tags match the route keywords from the route database to obtain candidate routes. The route database stores backup routes with different attributes. Each backup route with different attributes carries a preset route tag. Each backup route with different attributes is a road segment containing the corresponding preset route tag extracted from the basic route. The sorting unit is used to sort the multiple candidate routes according to the route score from largest to smallest when there are multiple candidate routes, and obtain a preset number of candidate routes that rank at the top of the sorting to obtain the target route. The first push unit is used to push the target route to the client; The judgment unit is used to determine whether the target route meets the user's exercise needs based on the feedback received from the user regarding the target route. The submission unit is used to display a route submission entry on the client when the target route does not meet the user's exercise needs. The receiving unit is used to receive the motion trajectory submitted by the user through the route submission entry, and to tag the motion trajectory based on the tag detection rule set, wherein the tag detection rule set contains multiple tag detection rules, and each tag detection rule is used to detect whether the route contains a preset attribute; The second push unit is used to extract road segments containing route tags indicating the route keywords from the tagged motion trajectory, obtain the updated target route, and push the updated target route to the client.

8. A computer storage medium, characterized in that, The computer storage medium is used to store a program, wherein the program, when running, controls the device where the computer storage medium is located to execute the motion path generation method according to any one of claims 1 to 6.

9. An electronic device comprising a memory and a processor, characterized in that, The memory stores a computer program, and the processor is configured to execute the method for generating a motion path according to any one of claims 1 to 6 through the computer program.