Route recommendation method, electronic equipment and system
By allowing users to select and combine road sections to generate running routes, the problem of dissatisfaction with route fixing and personalized needs in the existing technology is solved, and the user experience and functional usability is improved.
Patent Information
- Application Number
- CN202311103132.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-29
- Publication Date
- 2025-02-28
AI Technical Summary
In the prior art, the route recommendation for outdoor running functions has problems such as fixed, single, small number and limited area range, which cannot meet the personalized needs of users and low functional availability.
Provide a route recommendation method, allowing users to select, combine and splice multiple sections by themselves to generate a running route that suits their own needs. This method generates and displays running routes by displaying different attributes of multiple road segments and receiving user operations.
Through user-defined routes, personalized needs are met, and the problems of fixed routes, single, small number and limited regional scope are solved, improving user experience and functional usability.
Smart Images

Figure CN119537713A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a route recommendation method, electronic device and system. Background Art
[0002] At present, the "outdoor running" function provided by the application can recommend a single route or a composite route composed of multiple routes for users. These recommended routes are generally routes around popular places or popular check-in spots. Therefore, there are problems such as the recommended routes are fixed, single, small in number, and limited in running area. It cannot meet the personalized needs of users and has low function availability. Summary of the invention
[0003] The present application discloses a route recommendation method, electronic device and system, which enable a user to select / combine / join at least one road section to generate a running route suitable for the user, thereby meeting the user's personalized needs, solving the problems of existing routes being fixed, single, small in number, and limited in area, improving user experience, and effectively improving functional availability.
[0004] In a first aspect, the present application provides a route recommendation method, which is applied to a first device, and the method includes: displaying a first interface of a first application, the first interface including multiple road sections, the multiple road sections including a first road section and a second road section, the first road section and the second road section in the first interface are displayed in different ways, the attributes of the first road section and the attributes of the second road section are different, and the attributes of the road section include road section difficulty and / or road section popularity; receiving a first operation for at least one road section among the multiple road sections; in response to the first operation, generating a first route according to the at least one road section; and displaying a second interface, the second interface including the first route.
[0005] In the above method, the electronic device can display multiple road sections on the first interface of the first application, and use different display methods to display road sections with different attributes. The user can obtain information such as the attributes of the road section through the first interface, and use it as a reference to determine whether to add it as a running route. The electronic device can receive a first operation of selecting at least one road section, and generate a running route (i.e., the above-mentioned first route) based on the at least one road section, and the user can use the running route. In this way, the user can intuitively view the information of the road section in the area where the user wants to run, and select / combine / splice at least one of the road sections to generate a running route suitable for him / her, which can meet the personalized needs of the user, solve the problems of existing fixed, single, small number, and limited regional scope, improve user experience, and have high functional availability.
[0006] In a possible implementation, the display mode of the road segment includes at least one of the following: the filling color of the road segment, the filling pattern of the road segment, whether to display a border, the color of the border, the virtuality or reality of the border, and the thickness of the road segment.
[0007] In the above method, the road sections are displayed in various ways, which can facilitate users to distinguish road sections with different attributes and improve the efficiency of users in obtaining the attribute information of the road sections.
[0008] In one possible implementation, before displaying the first interface, the method also includes: acquiring first location information; sending a first message to a network device, the first message being used to request obtaining road section information related to the first location information, the first message including the first location information; receiving a second message sent by the network device, the second message including attributes of the multiple road sections, the multiple road sections being related to the first location information; displaying the first interface includes: displaying the first interface according to the second message.
[0009] In the above method, the electronic device can send the acquired first location information to the network device to obtain the properties of multiple road sections within the first preset range obtained by the network device according to the first location information, and then the electronic device can display the multiple road sections on the first interface of the first application. The cloud has stronger computing power, and the rate of acquiring the property information of multiple road sections through the cloud is faster, which improves the efficiency of obtaining information.
[0010] In a possible implementation, obtaining the first location information includes: obtaining the first location information where the first device is located; or, receiving the first location information input by a user; or, receiving the first location information sent by a wearable device, where the first location information is located by the wearable device.
[0011] In the above method, the first location information may be the location of the first device directly obtained, may be input by the user, or may be sent by the wearable device. In other words, the first location information is in line with the user's intention and improves the functional availability.
[0012] In a possible implementation, generating the first route based on the at least one road segment includes: when the at least one road segment can be combined into a continuous route, generating the first route based on the at least one road segment; the method also includes: when the at least one road segment cannot be combined into a continuous route, displaying a prompt message, the prompt message instructing the user to reselect a road segment.
[0013] In the above method, the user can select a suitable route according to his or her own needs. When at least one route selected by the user cannot be combined into a continuous route, the electronic device will prompt the user to reselect the route. This completely customized route generation method can meet the user's personalized needs, avoid the problem that the route selected by the electronic device does not meet the user's needs, and improve the user experience.
[0014] In a possible implementation, generating the first route based on the at least one road segment includes: when the at least one road segment can be combined into a closed-loop route, generating the first route based on the at least one road segment; when the at least one road segment cannot be combined into a closed-loop route, obtaining the starting position and the end position input by the user; and generating the first road segment based on the at least one road segment, the starting position, and the end position.
[0015] In the above method, if at least one road section can be combined into a closed-loop route, any point on the closed-loop route can be the starting point and / or the end point, that is, the closed-loop route has no endpoints, and the user does not need to specifically set the starting point and the end point; conversely, if at least one road section cannot be combined into a closed-loop route, the road section has two endpoints, and the user is required to set the starting point and the end point to meet the user's personalized needs.
[0016] In a possible implementation, the first route includes a starting point location and an end point location, and the method further includes: receiving the starting point location and the end point location input by the user; or, acquiring the starting point location and the end point location according to the at least one road section.
[0017] In the above method, the starting position and the ending position can be input by the user or determined by the electronic device itself. For example, the electronic device can use a geographical location closest to the user's current location (the geographical location is located on at least one selected road segment) as the starting position, which can save the user's time to reach the starting position from the current location, further improving the user experience.
[0018] In a possible implementation, the method further includes: obtaining first motion data corresponding to a second route completed by running, the second route includes at least one segment, the first motion data includes motion data corresponding to the second segment, and the second segment is any segment in the second route; sending a third message to the network device, the third message includes the first motion data, and the third message is used by the network device to obtain attributes of the second segment.
[0019] In a possible implementation, the method also includes: obtaining first evaluation information, characteristic information and historical data of the user, the first evaluation information including evaluation information corresponding to the second road section, and the historical data including information of the route that the user has run in the past; the third message includes the first evaluation information, the characteristic information of the user and the historical data.
[0020] In the above method, the electronic device can send the user's actual running route (i.e. the above-mentioned second route), the user's motion data when running on the route (i.e. the above-mentioned first motion data), the user's basic data (i.e. the above-mentioned user's characteristic information), the user's evaluation information for the running route (i.e. the above-mentioned first evaluation information), historical running data (i.e. the above-mentioned historical data), etc. to the network device. The network device can determine (such as update) the attributes of the sections in the user's actual running route based on these data and information. The attributes of the sections obtained this time can provide a reference for the user to select a section next time. It can be understood that the network device can obtain real data of the same section provided by multiple users in real time, such as motion data when running on the section, and subjective evaluation information, and update the attributes of each section in the road network in real time in combination with these real data, so as to provide users with more accurate and refined section attributes as a reference, thereby further improving the user experience.
[0021] In a second aspect, the present application provides a route recommendation method, which is applied to a network device, and the method includes: receiving a first message sent by a first device, the first message including first location information; determining attributes of multiple road sections based on the first location information, and the multiple road sections are related to the first location information; sending the attributes of the multiple road sections to the first device, and the multiple road sections are used for the first device to display on a first interface, the multiple road sections include a first section and a second section, the first section and the second section in the first interface are displayed differently, the attributes of the first section and the attributes of the second section are different, and the multiple road sections are used to provide for user selection.
[0022] In a possible implementation, the method also includes: receiving a first message sent by the first device, the first message including first motion data; the first motion data is motion data corresponding to a first route completed by running acquired by the first device, the first route including at least one segment, the first motion data including motion data corresponding to a second segment, and the second segment is any segment in the first route; and obtaining attributes of the second segment according to the first motion data.
[0023] In a possible implementation, the first message includes: first evaluation information, characteristic information and historical data of the user, the first evaluation information includes evaluation information corresponding to the second road section, and the historical data includes information about routes that the user has run in the past.
[0024] In a third aspect, the present application provides an electronic device, including a transceiver, a processor and a memory, wherein the memory is used to store a computer program, and the processor calls the computer program to execute the route recommendation method in any possible implementation of the first aspect.
[0025] In a fourth aspect, the present application provides an electronic device, comprising one or more processors and one or more memories. The one or more memories are coupled to the one or more processors, and the one or more memories are used to store computer program codes, and the computer program codes include computer instructions, and when the one or more processors execute the computer instructions, the electronic device executes the route recommendation method in any possible implementation of the first aspect.
[0026] In a fifth aspect, the present application provides a network device, including a transceiver, a processor and a memory, wherein the memory is used to store a computer program, and the processor calls the computer program to execute the route recommendation method in any possible implementation of the second aspect.
[0027] In a sixth aspect, the present application provides a computer storage medium storing a computer program, which, when executed by a processor, implements a route recommendation method in any possible implementation of any of the above aspects.
[0028] In a seventh aspect, the present application provides a computer program product, which, when executed on an electronic device, enables the electronic device to execute the route recommendation method in any possible implementation of the first aspect.
[0029] In an eighth aspect, the present application provides an electronic device, the electronic device comprising a method or device for executing any one of the implementations of the first aspect of the present application. The electronic device is, for example, a chip.
[0030] It should be understood that the description of technical features, technical solutions, beneficial effects or similar language in this application does not imply that all features and advantages can be realized in any single embodiment. On the contrary, it is understood that the description of features or beneficial effects means that specific technical features, technical solutions or beneficial effects are included in at least one embodiment. Therefore, the description of technical features, technical solutions or beneficial effects in this specification does not necessarily refer to the same embodiment. Furthermore, the technical features, technical solutions and beneficial effects described in this embodiment can also be combined in any appropriate manner. Those skilled in the art will understand that the embodiment can be implemented without one or more specific technical features, technical solutions or beneficial effects of a specific embodiment. In other embodiments, additional technical features and beneficial effects can also be identified in a specific embodiment that does not embody all embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] The following is an introduction to the drawings used in this application.
[0032] Figure 1A is a schematic diagram of the architecture of a route recommendation system 10 provided by the present application;
[0033] Figure 1B is an interactive schematic diagram of a route recommendation system 10 provided by the present application;
[0034] Figure 2 is a hardware structure diagram of an electronic device 100 provided in this application;
[0035] Figure 3 is a schematic diagram of a software architecture of an electronic device 100 provided in this application;
[0036] Figure 4-Figure 5 is a schematic diagram of some user interfaces provided by this application;
[0037] Figure 6 It is a flowchart of a route recommendation method provided by this application;
[0038] Figure 7 This is a flowchart of another route recommendation method provided by the present application. DETAILED DESCRIPTION
[0039] The technical solution in the embodiment of the present application will be described below in conjunction with the accompanying drawings. In the description of the embodiment of the present application, unless otherwise specified, " / " means or, for example, A / B can mean A or B; "and / or" in the text is only a description of the association relationship of associated objects, indicating that there can be three relationships, for example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, in the description of the embodiment of the present application, "multiple" means two or more than two.
[0040] In the following, the terms "first" and "second" are used for descriptive purposes only and are not to be understood as suggesting or implying relative importance or implicitly indicating the number of the indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features, and in the description of the embodiments of the present application, unless otherwise specified, "plurality" means two or more.
[0041] The terminal's sports applications, fitness applications, map applications and other applications can provide an "outdoor running" function, specifically recommending a single route or a composite route composed of multiple routes to the user. These recommended routes are generally screened out by the cloud from multiple preset routes and returned to the terminal. For example, the cloud screens out multiple routes in areas such as popular places or Internet celebrity check-in spots, or the cloud screens out multiple routes in an area related to the user's location. The granularity of cloud-based route screening is relatively large. For example, relevant routes are screened from multiple preset routes based on the granularity of route length, area range and other granularities in the user's running goals. The routes screened out in the above manner have problems such as fixed routes, single routes, small numbers, and limited running area ranges.
[0042] Furthermore, users can only select routes from those provided by the terminal, and cannot select / combine / join each section of the route by themselves. The efficiency of user route selection is very low, and it is even possible that none of the routes provided by the terminal meet the user's needs, resulting in a poor user experience. For example, the recommended route includes two sections: Section A and Section B, where Section A is difficult and Section B is average, but the user hopes to run sections of average difficulty. Understandably, Section A in the recommended route does not meet the user's actual needs. At this time, the user can only choose to reselect another route, which will take up a lot of the user's time, and it is likely that other routes will not meet the user's needs, so the user can only "settle for the next best thing." Therefore, this method cannot recommend running routes that meet the user's personalized needs, and the user experience is poor and the functional availability is low.
[0043] The present application provides a route recommendation method, which is applied to a route recommendation system. The route recommendation system may include an electronic device and a network device. The electronic device may send the acquired location information to the network device to obtain the attributes of multiple road sections within a preset range obtained by the network device according to the location information (also referred to as road section attributes). The electronic device may display the multiple road sections on a map and identify the attributes of the multiple road sections, wherein the display methods of road sections with different attributes are different, such as different filling colors of the road sections. The user may obtain information such as the attributes of the road section through the map, and use it as a reference to determine whether to add it as a running route. The electronic device may receive a user operation of selecting at least one road section, generate a running route based on the at least one road section, and the user may use the running route. In this way, the user can intuitively view the information of the road section in the area where he wants to run, and select / combine / join at least one of the road sections to generate a running route suitable for him, which can meet the personalized needs of the user, solve the problems of the existing fixed, single, small number, and limited regional range of the route, improve the user experience, and have high functional availability.
[0044] Furthermore, during the user's running process, the electronic device can send the user's actual running route, the user's motion data when running on the route, and the user's personal information to the network device. After the user finishes running, the electronic device can also send the user's evaluation information on the running route to the network device, and the network device can determine the attributes of the road section in the running route based on the relevant data of the running route sent by the electronic device. It can be understood that the network device can obtain real data of the same road section provided by multiple users in real time, such as motion data when running on the road section, and subjective evaluation information, and update the attributes of each road section in the road network in real time in combination with these real data, so as to provide users with more accurate and refined road section attributes as a reference, and further improve the user experience.
[0045] The display method of the road section may include but is not limited to: fill color, fill pattern, whether to add a border, border color, border reality, thickness, etc.
[0046] In the present application, a road network refers to a road system composed of various roads that are interconnected and interwoven into a network distribution within a certain area. A route refers to a road (including at least one road section) passed from one geographical location to another geographical location. A road section refers to a traffic road between two adjacent nodes / intersections on the road network. A node / intersection may include but is not limited to a crossroad, a T-shaped intersection, and an L-shaped intersection. A road section is a vector and may include a starting point and an end point. Both the starting point and the end point are nodes / intersections. When the end point of section C and the starting point of section D are the same node / intersection, section C and section D are in an intersecting relationship. The electronic device 100 can maintain a road network, and the electronic device 100 can display the road network on a map.
[0047] In the present application, the segment attributes may include, but are not limited to, the segment's heat attribute (also referred to as segment heat or heat) and the segment's difficulty attribute (also referred to as segment difficulty or difficulty). The segment heat refers to the degree of exposure of the segment to the public, such as the segment's popularity. For example, the more times a segment is run by users in a periodic time period, the higher the heat of the segment. The segment difficulty refers to the complexity of the segment, such as the user's control over the segment. For example, the longer it takes for a user to run a segment completely, the more physical strength the user consumes, and the higher the difficulty of the segment.
[0048] A route recommendation system 10 involved in an embodiment of the present application is introduced below.
[0049] Figure 1A The schematic diagram of the architecture of a route recommendation system 10 is exemplarily shown.
[0050] like Figure 1A As shown, the route recommendation system 10 may include an electronic device 100, a wearable device 200 and a network device 300. The electronic device 100 may communicate with the wearable device 200 and the network device 300 via wired (e.g., universal serial bus (USB), twisted pair, coaxial cable and optical fiber, etc.) and / or wireless (e.g., wireless local area networks (WLAN), Bluetooth and cellular communication networks, etc.). Among them:
[0051] The electronic device 100 may be a mobile phone, a tablet computer, a handheld computer, a desktop computer, a laptop computer, an ultra-mobile personal computer (UMPC), a netbook, a cellular phone, a personal digital assistant (PDA), as well as smart home devices such as smart TVs and projectors, extended reality (XR) devices such as augmented reality (AR), virtual reality (VR), and mixed reality (MR), or vehicle-mounted devices. The embodiments of the present application do not impose any special restrictions on the specific types of electronic devices.
[0052] The wearable device 200 can be a wearable device such as a smart bracelet, a smart watch, or smart glasses. The embodiment of the present application does not impose any special restrictions on the specific type of the wearable device.
[0053] The network device 300 may include at least one server. In one embodiment, any one of the servers may be a hardware server. In one embodiment, any one of the servers may be a cloud server. In one embodiment, the network device 300 may be a Linux server, a Windows server, or other server devices that can provide simultaneous access to multiple devices. In one embodiment, the network device 300 may be a server cluster consisting of multiple regions, multiple computer rooms, and multiple servers.
[0054] In one embodiment, the electronic device 100 can communicate with the network device 300 based on a browser / server (B / S) architecture, or based on a client / server (C / S) architecture. In some examples, the electronic device 100 can send a request message to the network device 300, and the request message includes location information, which can be location information input by a user on the electronic device 100, or location information located by the electronic device 100 itself, or location information located by the wearable device 200. The network device 300 can obtain the attributes of multiple road sections within a preset range based on the location information and return it to the electronic device 100, and the electronic device 100 can display the multiple road sections returned by the network device 300 and identify the attributes of the multiple road sections.
[0055] Understandably, Figure 1A The number and form of electronic devices, wearable devices, and network devices in the route recommendation system 10 shown are only examples. In a specific implementation, the number may be more or less. For example, the route recommendation system 10 may not include the wearable device 200. For another example, the route recommendation system 10 may include multiple wearable devices. This application does not limit this.
[0056] Figure 1B An interactive schematic diagram of a route recommendation system 10 is exemplarily shown.
[0057] like Figure 1B As shown, the electronic device 100 in the route recommendation system 10 may include a map module 101, a display module 102, an interaction module 103, a route generation module 104, a road segment attribute collection module 105, a user feedback module 106 and a communication module 107. The wearable device 200 in the route recommendation system 10 may include a detection module 201 and a communication module 202. The network device 300 in the route recommendation system 10 may include a communication module 301, an algorithm evaluation module 302 and a storage module 303, wherein:
[0058] The map module 101 in the electronic device 100 can be used to obtain location information, specifically, can be used to obtain location information input by the user on the electronic device 100, and / or location information located by the electronic device 100 itself, and / or location information located by the wearable device 200. The map module 101 can send the acquired location information to the communication module 301 of the network device 300 through the communication module 107, and the communication module 301 can send the location information to the algorithm evaluation module 302. The algorithm evaluation module 302 can obtain the attributes of multiple road sections within a preset range according to the location information, and send the attributes of the multiple road sections to the communication module 107 of the electronic device 100 through the communication module 301, and the communication module 107 can send the attributes of the multiple road sections to the map module 101, and the map module 101 can determine the above multiple road sections in the road network, and determine to display the road sections with different attributes using different display modes on the road network, and obtain the display mode of the road sections. The map module 101 can send the display mode of the obtained road segment to the display module 102, and the display module 102 can display multiple road segments on the map according to the display mode of the received road segment, for example, using different display modes to display road segments with different attributes on the map. The interactive module 103 can be used to receive instructions input by the user, such as receiving a request for selecting a road segment, and for example, receiving a request for generating a running route. The interactive module 103 can send at least one selected road segment to the display module 102, and the display module 102 can mark the at least one selected road segment on the map. The interactive module 103 can send at least one selected road segment and a request to generate a running route to the route generation module 104, and the route generation module 104 can generate the user's running route based on the at least one road segment, and send the user's running route to the display module 102, and the display module 102 can output the running route. Optionally, when the route generation module 104 cannot generate a route based on the selected road segment, for example, the selected road segment cannot form a continuous route, the route generation module 104 can send a prompt message to the display module 102, and the display module 102 can output the prompt message to prompt the user to reselect the road segment. Optionally, the route generation module 104 can send the user's running route to the communication module 202 of the wearable device 200 through the communication module 107, and the wearable device 200 can output the user's running route.
[0059] The detection module 201 in the wearable device 200 can be used to obtain the motion data of the user's running, such as heart rate, cadence, blood pressure, location information, etc. The detection module 201 can send the acquired motion data to the communication module 107 of the electronic device 100 through the communication module 202, and the communication module 107 can send the motion data to the road segment attribute collection module 105. The map module 101 can send the road network information to the road segment attribute collection module 105, and the road segment attribute collection module 105 can determine the road segment that the user has run according to the road network information and the motion data of this running. The user feedback module 106 can be used to obtain the evaluation information of the user. The user feedback module 106 can send the obtained evaluation information to the communication module 301 of the network device 300 through the communication module 107. The road segment attribute acquisition module 105 can send the determined run road segment to the communication module 301 of the network device 300 through the communication module 107. The electronic device 100 can also send the user's personal information (such as height, weight, age, which can also be called the user's basic data) and historical running data to the communication module 301 of the network device 300 through the communication module 107. The communication module 301 can send the run road segment, basic data, evaluation information and historical running data to the algorithm evaluation module 302. Optionally, the communication module 301 can also store these data and information in the storage module 303. The algorithm evaluation module 302 can determine the attributes of the run road segment, and optionally the user's running level according to these data and information, and store the attributes of the run road segment, and optionally the user's running level in the storage module 303.
[0060] Understandably, Figure 1B The route recommendation system 10 shown may include more or fewer modules. Any module in the route recommendation system 10 may be a hardware module or a software module. Any of the above modules may be a separate module, and at least one of the above modules may be integrated together. For example, the interaction module 103, the road segment attribute collection module 105 and the user feedback module 106 may be integrated in the input module. The present application does not limit the specific modules of the route recommendation system 10.
[0061] Next, the structure of an exemplary electronic device provided by an embodiment of the present application is introduced.
[0062] Figure 2 A schematic diagram of the hardware structure of an electronic device 100 is exemplarily shown.
[0063] like Figure 2As shown, 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.
[0064] It is to be understood that the structure illustrated in the embodiment of the present invention does 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 in the figure, or combine some components, or separate some components, or arrange the components differently. The components shown in the figure may be implemented in hardware, software, or a combination of software and hardware.
[0065] 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 processor (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Different processing units may be independent devices or integrated into one or more processors.
[0066] The controller can generate operation control signals according to the instruction operation code and timing signal to complete the control of instruction fetching and execution.
[0067] The processor 110 may also be provided with a memory for storing instructions and data. In one embodiment, the memory in the processor 110 is a cache memory. The memory may store instructions or data that the processor 110 has just used or cyclically used. If the processor 110 needs to use the instruction or data again, it may be directly called from the memory. This avoids repeated access, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.
[0068] The charging management module 140 is used to receive charging input from the charger. 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 display screen 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 number, battery health status (leakage, impedance), etc. In another embodiment, the power management module 141 can also be set in the processor 110. In another embodiment, the power management module 141 and the charging management module 140 can also be set in the same device.
[0069] 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.
[0070] 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 the utilization of the antennas. For example, antenna 1 can be reused as a diversity antenna for a wireless local area network. In another embodiment, the antenna can be used in combination with a tuning switch.
[0071] The mobile communication module 150 can provide wireless communication solutions including second generation (2G) / third generation (3G) / fourth generation (4G) / fifth generation (5G) / sixth generation (6G) applied to the electronic device 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, 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 one embodiment, at least some of the functional modules of the mobile communication module 150 can be set in the processor 110. In one embodiment, 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.
[0072] The modem processor may include a modulator and a demodulator. Among them, the modulator is used to modulate the low-frequency baseband signal to be sent 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 the low-frequency baseband signal is processed by the baseband processor, it is passed to the application processor. The application processor outputs a sound signal through an audio device (not limited to a speaker 170A, a receiver 170B, etc.), or displays an image or video through a display screen 194. In one embodiment, the modem processor may be an independent device. In another embodiment, 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.
[0073] 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 integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, modulates the frequency of the electromagnetic wave signal and performs filtering, and sends the processed signal to the processor 110. The wireless communication module 160 can also receive the signal to be sent from the processor 110, modulate the frequency of it, amplify it, and convert it into electromagnetic waves for radiation through the antenna 2.
[0074] In one embodiment, 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 the network and other devices through wireless communication technology. The wireless communication technology 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).
[0075] The electronic device 100 implements the display function through a GPU, a display screen 194, and an application processor. The GPU is a microprocessor for image processing, which connects the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 110 may include one or more GPUs that execute program instructions to generate or change display information.
[0076] The display screen 194 is used to display images, videos, etc. The 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 or an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), Miniled, MicroLed, Micro-oLed, a quantum dot light-emitting diode (QLED), etc. In one embodiment, the electronic device 100 may include 1 or N display screens 194, where N is a positive integer greater than 1.
[0077] The electronic device 100 can realize the shooting function through ISP, camera 193, video codec, GPU, display screen 194 and application processor.
[0078] ISP is used to process the data fed back by camera 193. For example, when taking a photo, the shutter is opened, and the light is transmitted to the camera photosensitive element through the lens. The light signal is converted into an electrical signal, and the camera photosensitive element transmits the electrical signal to ISP for processing and converts it into an image visible to the naked eye. ISP can also perform algorithm optimization on the noise, brightness, and color of the image. ISP can also optimize the exposure, color temperature and other parameters of the shooting scene. In one embodiment, ISP can be set in camera 193.
[0079] 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 optical signal into an electrical signal, and then passes the electrical signal to the ISP to be converted 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 one embodiment, the electronic device 100 may include 1 or N cameras 193, where N is a positive integer greater than 1.
[0080] 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 through the external memory interface 120 to implement a data storage function, such as storing music, video and other files in the external memory card.
[0081] The internal memory 121 can be used to store computer executable program codes, which include instructions. The internal memory 121 may include a program storage area and a data storage area. Among them, the program storage area may 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 may 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. The processor 110 executes various functional applications and data processing of the electronic device 100 by running instructions stored in the internal memory 121, and / or instructions stored in a memory provided in the processor.
[0082] The electronic device 100 can implement audio functions through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the headphone jack 170D, and the application processor.
[0083] The audio module 170 is used to convert digital audio information into analog audio signal output, and also used to convert analog audio input into digital audio signal. The audio module 170 can also be used to encode and decode audio signals.
[0084] The speaker 170A, also called a "horn", is used to convert audio electrical signals into sound signals.
[0085] The receiver 170B, also called a "handset", is used to convert audio electrical signals into sound signals.
[0086] Microphone 170C, also called "microphone" or "microphone", is used to convert sound signals into electrical signals.
[0087] The earphone jack 170D is used to connect a wired earphone.
[0088] The pressure sensor 180A is used to sense the pressure signal and can convert the pressure signal into an electrical signal. In one embodiment, the pressure sensor 180A can be set on the display screen 194. There are many types of pressure sensors 180A, such as resistive pressure sensors, inductive pressure sensors, capacitive pressure sensors, etc. A capacitive pressure sensor can be a parallel plate including at least two conductive materials. When a force acts on the pressure sensor 180A, the capacitance between the electrodes changes. The electronic device 100 determines the intensity of the pressure based on the change in capacitance. When a touch operation acts on the display screen 194, the electronic device 100 detects the intensity of the touch operation based on the pressure sensor 180A. The electronic device 100 can also calculate the touch position based on the detection signal of the pressure sensor 180A. In one embodiment, touch operations acting on the same touch position but with different touch operation intensities can correspond to different operation instructions.
[0089] The gyro sensor 180B may be used to determine the motion posture of the electronic device 100. In one embodiment, the angular velocity of the electronic device 100 around three axes (ie, x, y, and z axes) may be determined by the gyro sensor 180B.
[0090] The air pressure sensor 180C is used to measure air pressure.
[0091] The magnetic sensor 180D includes a Hall sensor, and the electronic device 100 can detect the opening and closing of the flip leather case by using the magnetic sensor 180D.
[0092] The acceleration sensor 180E can detect the magnitude of the acceleration of the electronic device 100 in various directions (generally three axes).
[0093] The distance sensor 180F is used to measure the distance.
[0094] 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 the 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.
[0095] The ambient light sensor 180L is used to sense the brightness of ambient light.
[0096] 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.
[0097] The temperature sensor 180J is used to detect the temperature.
[0098] The touch sensor 180K is also called a "touch control device". The touch sensor 180K can be set on the display screen 194. The touch sensor 180K and the display screen 194 form a touch screen, also called a "touch control screen". The touch sensor 180K is used to detect touch operations acting on or near it. The touch sensor can pass the detected touch operation to the application processor to determine the type of touch event. Visual output related to the touch operation can be provided through the display screen 194. In other embodiments, the touch sensor 180K can also be set on the surface of the electronic device 100, which is different from the position of the display screen 194.
[0099] Bone conduction sensor 180M can obtain vibration signals.
[0100] The key 190 includes a power key, a volume key, etc. The key 190 may be a mechanical key or a touch key. The electronic device 100 may receive key input and generate key signal input related to user settings and function control of the electronic device 100.
[0101] The motor 191 can generate a vibration prompt. The indicator 192 can be an indicator light, which can be used to indicate the charging status, power change, and can also be used to indicate messages, missed calls, notifications, etc. The SIM card interface 195 is used to connect a SIM card.
[0102] The software system of the electronic device 100 may adopt a layered architecture, an event-driven architecture, a micro-core architecture, a micro-service architecture, or a cloud architecture. For example, the software system of the layered architecture may be an Android system, or a Harmony operating system (OS), or other software systems. The embodiment of the present application takes the Android system of the layered architecture as an example to exemplify the software structure of the electronic device 100.
[0103] Figure 3 A schematic diagram of a software architecture of an electronic device 100 is exemplarily shown.
[0104] The layered architecture divides the software into several layers, each with clear roles and division of labor. The layers communicate with each other through software interfaces. In one embodiment, the Android system is divided into four layers, from top to bottom: the application layer, the application framework layer, the Android runtime and system library, and the kernel layer.
[0105] The application layer can include a series of application packages.
[0106] like Figure 3As shown, the application layer may include applications such as camera, gallery, music, calendar, short message, call, navigation, Bluetooth, browser, and screen projection.
[0107] The application framework layer provides an application programming interface (API) and a programming framework for the applications in the application layer. The application framework layer includes some predefined functions.
[0108] like Figure 3 As shown, the application framework layer may include a window manager, a content provider, a view system, a phone manager, a resource manager, a notification manager, and the like.
[0109] The window manager is used to manage window programs. The window manager can obtain the display screen size, determine whether there is a status bar, lock the screen, capture the screen, etc.
[0110] 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.
[0111] The view system includes visual controls, such as controls for displaying text, controls for displaying images, etc. The view system can be used to build applications. A display interface can be composed of one or more views. For example, a display interface including a text notification icon can include a view for displaying text and a view for displaying images.
[0112] The phone manager is used to provide communication functions of the electronic device 100, such as management of call status (including connecting, hanging up, etc.).
[0113] The resource manager provides various resources for applications, such as localized strings, icons, images, layout files, video files, and so on.
[0114] The notification manager enables applications to display notification information in the status bar. It can be used to convey notification-type messages and can disappear automatically after a short stay without user interaction. For example, the notification manager is used to notify download completion, message reminders, etc. The notification manager can also be a notification that appears in the system top status bar in the form of a chart or scroll bar text, such as notifications of applications running in the background, or a notification that appears on the screen in the form of a dialog window. For example, a text message is displayed in the status bar, a prompt sound is emitted, an electronic device vibrates, an indicator light flashes, etc.
[0115] Android Runtime includes core libraries and virtual machines. Android runtime is responsible for scheduling and management of the Android system.
[0116] The core library consists of two parts: one part is the function that needs to be called by the Java language, and the other part is the Android core library.
[0117] The application layer and the application framework layer run in a virtual machine. The virtual machine executes the Java files of the application layer and the application framework layer as binary files. The virtual machine is used to perform functions such as object life cycle management, stack management, thread management, security and exception management, and garbage collection.
[0118] The system library may 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.
[0119] The surface manager is used to manage the display subsystem and provide the fusion of 2D and 3D layers for multiple applications.
[0120] The media library supports playback and recording of a variety of commonly used audio and video formats, as well as static image files, etc. The media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.
[0121] The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.
[0122] A 2D graphics engine is a drawing engine for 2D drawings.
[0123] The kernel layer is the layer between hardware and software. The kernel layer contains at least display driver, camera driver, audio driver, and sensor driver.
[0124] The following is an example of the workflow of the software and hardware of the electronic device 100 in conjunction with a running scenario.
[0125] When the touch sensor 180K receives a touch operation, the corresponding hardware interrupt is sent to the kernel layer. The kernel layer processes the touch operation into an original input event (including touch coordinates, timestamp of the touch operation, and other information). The original input event is stored in the kernel layer. The application framework layer obtains the original input event from the kernel layer and identifies the control corresponding to the input event. For example, if the touch operation is a touch single-click operation and the control corresponding to the single-click operation is a control of a map application, the map application calls the interface of the application framework layer, and then controls the display driver by calling the kernel layer, and displays the main interface of the map application through the display screen 194.
[0126] The following describes an application scenario involved in an embodiment of the present application and a user interface diagram in the scenario.
[0127] Figure 4 A schematic diagram exemplarily shows a user interface.
[0128] like Figure 4 As shown in (A), the electronic device 100 can display a user interface 400 of a map application. The user interface 400 includes a search box 401, a map 402, and a control 403. The search box 401 can be used to input location information. The map 402 displays a location identifier 402A, which can be used to identify the location of the electronic device 100 in the map 402. The map 402 displays multiple intersections, such as intersection 404, intersection 405, intersection 407, and other intersections. The map 402 also displays multiple road sections, such as road section 406, road section 408, and other road sections. The control 403 displays the characters "Road Section Attributes", which can be used to select / switch the display of the road section attributes of multiple road sections in the map 402. In one embodiment, the electronic device 100 may respond to a user operation on the control 403 (for example, the user operation is a touch operation) to display a menu, where the menu may include multiple options, such as a "segment heat" option and a "segment difficulty" option. Then, the electronic device 100 may respond to a user operation on the "segment heat" option (for example, the user operation is a touch operation) to select to display the map 402 with the attribute of the segment heat. At this time, the electronic device 100 may display Figure 4 The user interface 410 is shown in (B).
[0129] like Figure 4 As shown in (B), the user interface 410 and Figure 4 The user interface 410 is similar to the user interface 400 shown in (A), except that the control 412 displays the characters "segment heat", which can represent multiple segments in the map 411 and use different colors to identify different segment heats. The user interface 410 also includes an icon 413 (including the title "heat level"), which can indicate the level of segment heat represented by different colors, for example, light gray represents a low level of segment heat, gray represents a medium level of segment heat, and dark gray represents a high level of segment heat. Exemplarily, in the map 411, segment 416 is displayed in dark gray, which can represent that the heat level of segment 416 is high, and segment 418 is displayed in light gray, which can represent that the heat level of segment 418 is low. In one embodiment, the electronic device 100 can display information about segment 416 in response to a user operation on segment 416 (for example, the user operation is a touch operation). For specific examples, see Figure 4 The user interface 420 shown in (C).
[0130] like Figure 4As shown in (C), the user interface 420 may include a window 421, and the window 421 may include a title 422, text content 423, text content 424, text content 425, text content 426, text content 427, text content 428 and a control 429, wherein the title 422 includes the characters “section A”, which may indicate the name of the section 416, the text content 423 displays the characters “section length 0.8 km”, which may indicate the length of the section 416, the text content 424 displays the characters “section heat level high”, which may indicate that the heat level of the section 416 is high, and the text content 425 displays the characters “section difficulty low”, which may indicate that the difficulty level of the section 425 is low. The text content 426 displays the characters “The total length of the currently selected segment is 0 kilometers”, which can indicate that the total length of the selected segment is 0 kilometers (that is, the electronic device 100 has not selected a segment), the text content 427 displays the characters “Comprehensive segment heat: none”, which can indicate that the comprehensive heat level of the selected segment is none, and the text content 428 displays the characters “Comprehensive segment difficulty: none”, which can indicate that the comprehensive difficulty level of the selected segment is none. The control 429 displays the characters “Select segment A”, which can be used to select / select segment 416 to generate the user's running route. In one embodiment, the electronic device 100 can select / select segment 416 in response to a user operation on the control 429 (for example, the user operation is a touch operation), and the electronic device 100 can display Figure 4 The user interface 430 shown in (D).
[0131] like Figure 4 As shown in (D), the user interface 430 and Figure 4 The user interface 430 is similar to the user interface 420 shown in (C), except that the road segment 416 in the user interface 430 is in a selected state, which can indicate that the road segment 416 has been selected. User interface 430 may include window 431, which may include text content 432, text content 433, text content 434, control 435 and control 436, wherein text content 432 displays the characters “the total length of the currently selected section is 0.8 kilometers”, which may indicate that the total length of the selected section (currently section 416) is 0.8 kilometers, text content 433 displays the characters “comprehensive section heat: advanced”, which may indicate that the comprehensive heat level of the selected section (currently section 416) is advanced, text content 434 displays the characters “comprehensive section difficulty: low”, which may indicate that the comprehensive difficulty level of the selected section (currently section 416) is low, control 435 displays the characters “set start and end points”, which may be used to set the starting and end points of the user's running, and control 436 displays the characters “start exercise”, which may be used to generate the user's running route based on the selected section to enable the running function.
[0132] In one embodiment, Figure 4 After the implementation shown in (D), the electronic device 100 may respond to user operations, such as Figure 4 The touch operation of the road segment 418 in the user interface 430 shown in (D) selects / selects the road segment 418. At this time, the selected road segments include the road segment 416 and the road segment 418.
[0133] In one embodiment, the electronic device 100 may respond to a user operation, such as a touch operation on a setting control, such as a Figure 4 The control 435 in the user interface 430 shown in (D) sets the starting position and the end position of the user's running, for example, Figure 4 The touch operation of the intersection 414 and the intersection 417 in the user interface 430 shown in (D) sets the intersection 414 as the starting point of the user's running and the intersection 417 as the end point of the user's running. At this time, the electronic device 100 can display Figure 5 The user interface 500 shown in (A) (assuming that the selected segments include the segment 416 and the segment 418).
[0134] like Figure 5 As shown in (A), the user interface 500 and Figure 4500 is similar to user interface 430 shown in (D), except that segment 418 in user interface 500 is in a selected state, which can indicate that segment 418 has been selected. User interface 500 can include location identifier 501A, location identifier 501B, and window 502. Location identifier 501A can be used to identify the starting point of the user's run, and location identifier 501B can be used to identify the end point of the user's run. Window 502 can include text content 503, text content 504, text content 505, text content 506, control 507, and control 508. Text content 503 displays the characters "The total length of the currently selected segment is 2.2 kilometers", which can indicate that the total length of the selected segments (currently segments 416 and 418) is 2.2 kilometers, and text content 504 displays the characters "Comprehensive segment popularity: intermediate", which can indicate that the selected segments (currently segments 416 and 418) are 18) is medium, text content 505 displays the characters "Comprehensive section difficulty: low", which indicates that the comprehensive difficulty level of the selected section (currently section 416 and section 418) is low, and text content 506 displays the characters "Starting point: intersection A Ending point: intersection B", which indicates that the starting point of the user's run is intersection A (i.e., the geographical location identified by location identifier 501A), and the ending point of the user's run is intersection B (i.e., the geographical location identified by location identifier 501B). Control 507 displays the characters "Change starting and ending point", which can be used to change the set starting and ending points of the user's run, and controls 508 and Figure 4 436 in the user interface 430 shown in (D) is similar and will not be described in detail. In one embodiment, the electronic device 100 can generate the user's running route according to the selected road segment 416 and road segment 418, the set starting position (corresponding to the position mark 501A) and the end position (corresponding to the position mark 501B) in response to the user operation on the control 508 (for example, the user operation is a touch operation), and display the generated running route. Optionally, the electronic device 100 can send the running route to the wearable device 200.
[0135] This is not limited to the above-mentioned case where the starting point and the end point of the running are set before starting the running. In other examples, Figure 4 After the implementation shown in (D), the electronic device 100 may respond to the Figure 4 The user operates the control 436 in the user interface 430 shown in (D) (used to trigger the start of running), and displays prompt information to prompt the user to set the starting position and the end position of the running.
[0136] The above-mentioned setting of the starting point and the end point is not limited to the case where both the starting point and the end point are at the intersection of the selected section. In other examples, the starting point and / or the end point may not be at the intersection of the selected section. In this case, when the electronic device 100 receives a user operation for turning on the control of the running function, the electronic device 100 may display a prompt message to prompt the user to continue / reselect the section. For example, the selected section is Figure 5 The starting position of the road segment 416 and the road segment 418 in the user interface 500 shown in (A) is set to be the position mark 501A in the user interface 500, and the end position is set to be the position mark 501A in the user interface 500. Figure 5 As for the location identifier 521B in the user interface 520 shown in (C), it can be understood that the starting point is at the intersection of the selected section 416, and the end point is not at the intersection of the selected sections 416 and 418. At this time, the electronic device 100 can respond to the user operation on the control 508 in the user interface 500 (for example, the user operation is a touch operation) and display a prompt message to prompt the user to continue / reselect the section so that the set starting point and end point are on the selected section.
[0137] Without being limited to the above implementation, in another implementation, when the selected multiple road segments can be combined into a closed-loop route, the electronic device 100 can directly generate the user's running route based on the multiple road segments without receiving the starting position and the ending position of the running input by the user, and determine the starting position and the ending position of the running by itself. For specific examples, see Figure 5 (B).
[0138] like Figure 5 As shown in (B), the user interface 510 and Figure 4510 is similar to the user interface 430 shown in (D), except that the segments 418, 511 and 513 in the user interface 510 are all in the selected state, which can indicate that the segments 418, 511 and 513 have been selected. The selected segments 416, 418, 511 and 513 in the user interface 510 can be combined into a closed-loop route, so when the electronic device 100 responds to the user operation on the control 514 (for example, the user operation is a touch operation), the electronic device 100 can directly generate the user's running route according to the segments 416, 418, 511 and 513, and determine the starting position and the end position of the running route. In one embodiment, when the generated running route is a closed-loop route, the electronic device 100 can determine that the starting position and the end position are the same geographical location. In some examples, the starting position and the end position can be the geographical location of any intersection on the running route. For example, the electronic device 100 can determine that intersection 414 / intersection 415 / intersection 417 / intersection 512 are the starting position and the end position. In other examples, the starting position and the end position can be any geographical location on the running route. For example, the electronic device 100 can determine that position A on section 416 is the starting position and the end position, and position A is the geographical location closest to position identifier 402A.
[0139] In another embodiment, when the selected multiple road segments can be combined into a closed-loop route, the electronic device 100 can also determine the starting position and the end position of the run in response to the user operation, for example, in response to the touch operation on the intersection 414 in the user interface 510, the intersection 414 is set as the starting position and the end position. The starting position and the end position set by the user can be the same or different.
[0140] Not limited to the above-mentioned implementation method in which the electronic device 100 determines the starting position and the end position of the run by itself, in another implementation method, the starting position and the end position of the run can be determined according to the actual situation of the user's running. In some examples, the electronic device 100 can generate the user's running route (the running route is a closed-loop route) based on the selected multiple road sections, and send the user's running route to the wearable device 200. When the wearable device 200 detects that the user starts running, the position B when the user starts running is sent to the electronic device 100, and the electronic device 100 determines that the position B is the starting position of the run. When the wearable device 200 detects that the user ends running, the position C when the user ends running is sent to the electronic device 100, and the electronic device 100 determines that the position C is the end position of the run. Optionally, the above-mentioned position B and position C can be any geographical location on the user's running route.
[0141] Not limited to Figure 4 In another embodiment, when the selected multiple road segments cannot be combined into a continuous route, the electronic device 100 may display a prompt message when receiving a user operation for turning on the control of the running function, for prompting the user to continue / reselect the road segments so that the selected multiple road segments can be combined into a continuous route. For specific examples, see Figure 5 (C).
[0142] like Figure 5 As shown in (C), the user interface 520 and Figure 5 The user interface 520 is similar to the user interface 500 shown in (A), except that the segment 418 in the user interface 520 is in an unselected state, which can indicate that the segment 418 is not selected, and the segment 511 in the user interface 520 is in a selected state, which can indicate that the segment 511 has been selected. The user interface 520 may include a location identifier 521A and a location identifier 521B. The location identifier 521A can be used to identify the starting position of the user's run, and the location identifier 521B can be used to identify the end position of the user's run. The selected segments 416 and 511 in the user interface 520 cannot be combined into a continuous route. When the electronic device 100 responds to a user operation on the control 522 (for example, the user operation is a touch operation), the electronic device 100 can display a prompt message to prompt the user to continue / reselect the segment.
[0143] The electronic device 100 is not limited to the above-mentioned embodiment of automatically locating and acquiring location information. In another embodiment, the electronic device 100 may respond to user operations, such as Figure 4 The touch operation of the search box 401 in the user interface 410 shown in (B) obtains the location information input by the user and displays the road section information within the preset range of the location information. For specific examples, see Figure 5 (D).
[0144] like Figure 5 As shown in (D), the user interface 530 and Figure 4 The user interface 530 is similar to the user interface 410 shown in (B), except that the search box 531 in the user interface 530 is different from the search box 401 in the user interface 410, the characters 531A included in the search box 531 are the location information "Xinhua Building" currently input by the user, and the location identifier 532 in the user interface 530 is different from the icon of the location identifier 402A in the user interface 410.
[0145] Not limited to the case where the above-mentioned road segment attribute is the road segment heat, in other examples, the electronic device 100 may respond to the Figure 4A user operation (for example, the user operation is a touch operation) on a control 412 in the user interface 410 shown in (B) displays a menu, which may include a "road section difficulty" option. Then, the electronic device 100 may respond to the user operation (for example, the user operation is a touch operation) on the "road section difficulty" option and choose to display the map 411 with the attribute of the road section difficulty. At this time, the user interface displayed by the electronic device 100 is similar to the user interface 410, with the difference that the characters "road section heat" are not displayed in the control 412, but the characters "road section difficulty" are displayed, and the icon 413 includes the title "Difficulty Level". At this time, multiple sections in the map 411 are marked with different road section difficulties in different colors.
[0146] Not limited to the above example, in other examples, when the electronic device 100 starts the map application, multiple road segments in the map can be directly displayed with a certain road segment attribute. For example, after the electronic device 100 starts the map application, Figure 4 The user interface 400 shown in (A) instead directly displays Figure 4 The user interface 410 is shown in (B).
[0147] Next, the route recommendation method provided by the embodiment of the present application is introduced.
[0148] See also Figure 6 , Figure 6 is a flowchart of a route recommendation method provided in an embodiment of the present application. The method can be applied to Figure 1A The route recommendation system 10 shown. The method may include but is not limited to the following steps:
[0149] S101: The electronic device 100 displays a first interface (including multiple road segments) of a first application.
[0150] In one embodiment, the first interface may include multiple road segments, which may be provided to the user for selection, wherein the attributes of the road segment may include but are not limited to the road segment heat and the road segment difficulty. In some examples, the first application may be a sports application, a fitness application, a map application, etc. that provides an "outdoor running" function.
[0151] In one implementation, the electronic device 100 can display the multiple road segments on a display screen, and use different display modes to display road segments with different attributes, wherein the display modes of road segments may include but are not limited to fill color, fill pattern, whether to add a border, border color, border virtuality, thickness, etc. In some examples, under the heat attribute of a road segment, different levels of heat can be represented by different fill colors, for example, color 1 represents a high level of heat, color 2 represents a medium level of heat, and color 3 represents a low level of heat. For specific examples, see Figure 4 (B).
[0152] In one embodiment, before S101, the electronic device 100 can obtain the first location information and send a first message (including the above-mentioned first location information) to the network device 300 to obtain the attributes of the above-mentioned multiple road sections, wherein the attributes of each road section can be calculated by the network device 300 after receiving the first location information, which can be understood as being calculated in real time at the current moment (first moment).
[0153] In one implementation, the first location information may be location information input by a user on the electronic device 100 , or may be location information located by the electronic device 100 itself, or may be location information located by the wearable device 200 .
[0154] In one embodiment, the network device 300 can store / maintain road network information. After receiving the first message, the network device 300 can determine the corresponding location from the road network information based on the first location information, and determine a first preset range related to the location (for example, a range with the first location information as the center and a preset distance as the radius), and then determine multiple road sections within the first preset range, as well as the attributes of each road section, and return these multiple road sections and the attributes of each road section to the electronic device 100.
[0155] In some examples, the first location information acquired by the electronic device 100 is, for example, Figure 4 The network device 300 obtains and returns to the electronic device 100 a plurality of road segments, for example, Figure 4 The map 411 in the user interface 410 shown in (B) includes multiple road segments.
[0156] S102: The electronic device 100 receives a first user operation on at least one of the multiple road segments.
[0157] S103: The electronic device 100 generates a first route according to at least one road segment in response to a first user operation.
[0158] In one embodiment, the electronic device 100 may respond to a first user operation on at least one of the multiple sections, select the at least one section, and generate a first route based on the at least one section. Optionally, a comprehensive section attribute corresponding to the first route may also be generated based on the at least one section, and the user may set the first route as a running route. The comprehensive section attribute is determined based on the attribute of each section in the first route, such as taking the average of the attributes of at least one section, weighted calculation of the attributes of at least one section, etc. The comprehensive section attribute may include, but is not limited to, comprehensive section heat and comprehensive section difficulty.
[0159] In one embodiment, when at least one road segment can be combined into a continuous route, the electronic device 100 can generate a first route based on the at least one road segment, wherein the continuous route means that any one road segment of the at least one road segment and another road segment are in an intersecting relationship. For specific examples, see Figure 5 (A). Not limited to this, in another embodiment, when at least one road segment cannot be combined into a continuous route, the electronic device 100 can display a prompt message to prompt the user to reselect the road segment so that the selected road segment can be combined into a continuous route. For specific examples, see Figure 5 (C).
[0160] In one embodiment, the first route may include a starting point and an end point of the run. In some examples, the electronic device 100 may receive the starting point and the end point input by the user, and generate the first route according to the starting point, the end point and the at least one road segment, for example, when the at least one selected road segment cannot be combined into a closed loop route, wherein the closed loop route means that the route formed by combining at least one road segment is a closed curve. For specific examples, see Figure 5 (A). Not limited to this, in other examples, the electronic device 100 can generate a first route based on at least one road segment and determine the starting position and the end position of the run by itself, for example, the selected at least one road segment can be combined into a closed-loop route. For specific examples, see Figure 5 (B).
[0161] S104: The electronic device 100 displays the second interface (including the first route).
[0162] In one implementation, the second interface may include a generated first route, and the electronic device 100 may display the first route through a display screen.
[0163] In one implementation, the electronic device 100 may send a first route to the wearable device 200. After receiving the first route, the wearable device 200 may display the first route so that the user can run along the first route.
[0164] Not limited to the above-mentioned implementation, in another implementation, the electronic device 100 may store / maintain road network information. After the electronic device 100 obtains the first location information, it may determine multiple road sections within a first preset range from the road network information based on the first location information, and send the multiple road sections to the network device 300. After receiving the multiple road sections, the network device 300 directly obtains the road section attributes corresponding to the multiple road sections.
[0165] exist Figure 6In the method shown, the electronic device can send the acquired first location information to the network device to obtain the attributes of multiple road sections within the first preset range obtained by the network device based on the first location information. The electronic device can display the multiple road sections on the map and use different display methods to display road sections with different attributes. The user can obtain information such as the attributes of the road section through the map and use it as a reference to determine whether to add it as a running route. The electronic device can receive a user operation to select at least one road section, generate a running route based on the at least one road section, and the user can use the running route. In this way, the user can intuitively view the information of the road section in the area where the user wants to run, and select / combine / splice at least one of the road sections to generate a running route suitable for him / her, which can meet the personalized needs of the user, solve the problems of existing fixed routes, single routes, small numbers, and limited regional ranges, improve user experience, and have high functional availability.
[0166] See also Figure 7 , Figure 7 is a flowchart of another route recommendation method provided in an embodiment of the present application. This method can be applied to Figure 1A The route recommendation system 10 shown. The method may include but is not limited to the following steps:
[0167] S201: The wearable device 200 obtains first motion data.
[0168] In one implementation, S201 is an optional step.
[0169] In one embodiment, Figure 7 Before S201, it also included Figure 6 S101-S104.
[0170] In one embodiment, the first motion data may be data measured by the wearable device 200 during the user's running process, such as but not limited to heart rate, cadence, blood pressure, location information, etc. In some examples, the first motion data may be motion data corresponding to the user's actual running route.
[0171] S202: The wearable device 200 sends a third message (including the first motion data) to the electronic device 100.
[0172] In one implementation, S202 is an optional step.
[0173] S203: The electronic device 100 determines a second road section according to the road network information and the first motion data.
[0174] In one embodiment, the electronic device 100 can determine the actual running route of the user based on the road network information and the location information in the first motion data, and the second section can include at least one section in the actual running route of the user. In one embodiment, the electronic device 100 can decompose the actual running route of the user to obtain each section therein. The electronic device 100 can obtain from the first motion data: the motion data corresponding to each section in the actual running route of the user.
[0175] S204: The electronic device 100 obtains first evaluation information.
[0176] In one implementation, S204 is an optional step.
[0177] In one embodiment, the first evaluation information may include the evaluation information of the user corresponding to each road section in the second road section, such as but not limited to the heat feedback evaluation (Road Heat Evaluation, RHE) of the road section and the difficulty feedback evaluation (Road Difficulty Evaluation, RDE) of the road section. Optionally, the first evaluation information may include other information of the road section, such as whether the road section is passable normally. In some examples, when the user finishes running, the electronic device 100 may prompt the user to evaluate the running route and receive the first evaluation information input by the user.
[0178] S205: The electronic device 100 sends a fourth message (including the second road segment and the corresponding motion data, and the first evaluation information) to the network device 300.
[0179] In one embodiment, the fourth message may include the second section, motion data corresponding to each section in the second section, the first evaluation information, and optionally the user's basic data, historical running data, and sports scene data, wherein the basic data may include but is not limited to height, weight, age, etc., the historical running data may include but is not limited to historical routes / sections that the user has run, etc., and the sports scene data may include but is not limited to environmental data such as terrain, topography, geology, etc. corresponding to the historical routes / sections that the user has run.
[0180] S206: The network device 300 obtains the segment attribute corresponding to the second segment.
[0181] In one embodiment, after receiving the fourth message, the network device 300 can determine the attributes of each segment in the second segment based on the relevant information of the second segment in the fourth message (the second segment and the corresponding motion data, the first evaluation information), and optionally the user's basic data, historical running data, and motion scene data. In some examples, the segment attributes may include, but are not limited to, segment heat and segment difficulty.
[0182] Next, any third section in the second section is taken as an example to illustrate the implementation process of the network device 300 determining the section heat corresponding to the third section.
[0183] In one implementation, the network device 300 may obtain the number of times (Run Times, RT) that the user has run on the third road segment at the current moment (second moment), the user's running rating (Running Ratings, RR) and the heat feedback evaluation RHE corresponding to the third road segment, and calculate the road heat value (Road Heat, RH) corresponding to the third road segment. The calculation example of RH can be found in the following formulas (1) and (2):
[0184] α1×RT+α2×RR+α3×RHE=RH(1)
[0185] α1+α2+α3=1 (2)
[0186] Among them, α1, α2, and α3 are weight factors corresponding to RT, RR, and RHE, respectively, and α1, α2, and α3 are dynamically allocated and determined according to statistical experience values.
[0187] In some examples, assuming that the current moment (second moment) is 8:00 a.m. on July 17, 2023, and the periodic time period is a one-hour time period, the network device 300 can cumulatively calculate the number of times the third road section is run by the user in the time period from 8:00 to 9:00 a.m. every day before July 17, 2023 in combination with the road network information. The more times the user runs, the greater the corresponding RT value when calculating the above RH. In some examples, the more positive feedback the user has on the third road section, for example, the user evaluates that the scenery of the third road section is very good, and the corresponding RHE value is greater when calculating the above RH.
[0188] In one implementation, the network device 300 may determine the user's running level RR based on the motion data corresponding to the second road segment, the user's basic data, historical running data, and motion scene data, wherein the user's running level may include, for example but not limited to, elementary, intermediate, and advanced. Factors involved in the matching rule of the running level may include, but not limited to, at least one of the following:
[0189] 1. The number of running times in the historical running data. For example, the more times a user runs, the higher the user's running level is, and the larger the corresponding RR value is when calculating the above RH.
[0190] 2. The completeness of the motion scene data and the historical running data in the interval corresponding to the basic data of the user. In some examples, assuming that the basic data of user 1 is 180 cm tall, 75 kg in weight, and 28 years old, the interval corresponding to the basic data of user 1 is 175-180 cm tall, 73-78 kg in weight, and 26-30 years old in age. There are 1200 users in this interval. The network device 300 can evaluate the completeness of the motion scene data of user 1 among the 1200 users. For example, the types of environments (such as those involving and terrain, topography, geology) in the percentage of environment types included in the sports scene data of 1200 users. The higher the percentage, the higher the completeness, which indicates a higher running level of the user. For another example, the network device 300 can evaluate the percentage of the historical complete running score of the user 1 among the above 1200 users (for example, the user has run 10 times in history, has completed the course 10 times in history, and the score of user 1 is 100 points) in the average score of the historical complete running of the 1200 users. The higher the percentage, the higher the completeness, which indicates a higher running level of the user, and the larger the corresponding RR value when calculating the above RH.
[0191] 3. The complexity of the environment involved in the motion scene data. For example, the steeper the terrain in the motion scene data, the more complex the environment is, the higher the running level of the user is, and the larger the corresponding RR value is when calculating the above RH.
[0192] In some examples, RH can be divided into different levels according to the size of the numerical value. For example, when RH is less than a first threshold, it corresponds to a low level of heat; when RH is greater than or equal to the first threshold and less than a second threshold, it corresponds to a medium level of heat; when RH is greater than or equal to the second threshold, it corresponds to a high level of heat.
[0193] Next, any third road section in the second road section is taken as an example to illustrate the implementation process of the network device 300 determining the road section difficulty corresponding to the third road section.
[0194] In one implementation, the network device 300 may obtain the slope (Section Slope, SS) of the third road section, the curvature (RoadBend, RB) of the third road section, and the difficulty feedback evaluation RDE corresponding to the third road section, and calculate the road difficulty value (Road Difficulty, RD) corresponding to the third road section. The calculation example of RD can be found in the following formulas (3) and (4):
[0195] β1×SS+β2×RB+β3×RDE=RD (3)
[0196] β1+β2+β3=1 (4)
[0197] Among them, β1, β2, and β3 are the weight factors corresponding to SS, RB, and RDE, respectively, and β1, β2, and β3 are dynamically allocated and determined based on statistical experience values.
[0198] In one embodiment, the motion scene data may include information such as the slope of the third section, the curvature of the third section, etc. In some examples, the slope of the third section refers to the increase in altitude of the end point of the third section compared to the starting point (also referred to as a single altitude change degree). For example, assuming that the altitude of the end point of the third section is 800 meters, the altitude of the starting point of the third section is 850 meters, and the slope of the third section is -50 meters. The larger the slope value of the third section, the more work the user needs to do to overcome gravity in this section, the longer the time it takes for the user to run through the section, the more physical strength the user consumes, and the larger the corresponding SS value when calculating the above RD. Optionally, the slope SS of the third section may be related to the cumulative altitude change degree, which may be obtained by cumulatively adding the altitude change degrees of each section in the second section. In some examples, the curvature of the third road section refers to the number of turns and turning angles of the third road section. The more corners there are, the larger the turning angle of the section is (the higher the complexity of the section is), which requires the user to expend more physical energy, and the larger the corresponding RB value is when calculating the above RD.
[0199] In some examples, the network device 300 can obtain the motion data corresponding to the third section, and analyze the motion data to adjust the value of the above RDE. For example, user 2 evaluates the difficulty of the third section as medium (for example, the corresponding RDE value is 60), and the network device 300 obtains that the motion data corresponding to the third section run by user 2 is higher than the standard value, and the standard value can be the average value of the motion data corresponding to the third section run by all users within the interval corresponding to the basic data of user 2, wherein the interval corresponding to the basic data of user 2 can refer to the factor 2 involved in the matching rule of the above running level, which will not be repeated. Therefore, the network device 300 can adjust the value of the above RDE from 60 to 80. It can be understood that the motion data corresponding to the third section of user 2 is higher than the standard value, indicating that the sports quality of user 2 exceeds the average level. Therefore, the third section evaluated by user 2 as medium difficulty may actually be difficult, and the value of RDE corresponding to the third section increases.
[0200] In some examples, RD can be divided into different levels according to the size of the numerical value. For example, when RD is less than the third threshold, it corresponds to a low level of difficulty; when RD is greater than or equal to the third threshold and less than the fourth threshold, it corresponds to a medium level of difficulty; when RD is greater than or equal to the fourth threshold, it corresponds to a high level of difficulty.
[0201] In one implementation, after S206, the network device 300 stores the latest road segment attributes. When the electronic device 100 subsequently requests the network device 300 to obtain the road segment attributes, the network device 300 may send the latest road segment attributes to the electronic device 100. The specific implementation process is as follows: Figure 6 Similar, no further elaboration.
[0202] exist Figure 7 In the method shown, the electronic device can send the user's actual running route, the user's motion data when running on the route, the user's basic data, the user's evaluation information for the running route, historical running data, etc. to the network device. The network device can determine (such as update) the attributes of the sections in the user's actual running route based on these data and information. The attributes of the sections obtained this time can provide a reference for the user to select a section next time. It can be understood that the network device can obtain real data of the same section provided by multiple users in real time, such as motion data when running on the section, and subjective evaluation information, and update the attributes of each section in the road network in real time in combination with these real data, so as to provide users with more accurate and refined section attributes as a reference, thereby further improving the user experience.
[0203] The above embodiments are described by taking the example that the wearable device 200 obtains the motion data of the user during running and sends it to the electronic device 100. In other embodiments, the electronic device 100 may obtain the motion data of the user during running by itself.
[0204] The above embodiments are described by taking the network device 300 calculating and updating the attributes of each road segment in the road network in real time as an example. In other embodiments, the process of calculating the road segment attributes may be implemented by the electronic device 100 .
[0205] The above embodiments are described using the example that the segment attributes include segment popularity and segment difficulty, wherein segment popularity and segment difficulty each belong to a different dimension. In other embodiments, the segment attributes may also be attributes of other dimensions, such as attributes combining segment popularity and segment difficulty.
[0206] The methods provided in the embodiments of the present application may be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiments of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, a network device, a user device or other programmable device. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from one website, computer, server or data center to another website, computer, server or data center via wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server or data center that includes one or more available media integrated therein. The available medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a magnetic tape), an optical medium (e.g., a digital video disc (DWD), or a semiconductor medium (e.g., a solid state drive (SSD)). As mentioned above, the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them; although the present application is described in detail with reference to the above embodiments, a person skilled in the art should understand that the technical solutions described in the above embodiments can still be modified, or some of the technical features can be replaced by equivalents; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the scope of the technical solutions of the embodiments of the present application.
Claims
1. A route recommendation method, characterized in that: Applied to a first device, the method includes: Displaying a first interface of a first application, the first interface including multiple sections, the multiple sections including a first section and a second section, the first section and the second section in the first interface are displayed in different ways, the attributes of the first section and the attributes of the second section are different, and the attributes of the section include section difficulty and / or section popularity; receiving a first operation for at least one of the plurality of road segments; In response to the first operation, generating a first route according to the at least one road segment; A second interface is displayed, wherein the second interface includes the first route.
2. The method according to claim 1, characterized in that The display mode of the road section includes at least one of the following: the filling color of the road section, the filling pattern of the road section, whether to display a border, the color of the border, the virtuality or reality of the border, and the thickness of the road section.
3. The method according to claim 1 or 2, characterized in that Before displaying the first interface, the method further includes: Obtaining first location information; Sending a first message to a network device, where the first message is used to request obtaining road section information related to the first location information, and the first message includes the first location information; receiving a second message sent by the network device, wherein the second message includes attributes of the plurality of road segments, and the plurality of road segments are related to the first location information; The displaying the first interface includes: Display the first interface according to the second message.
4. The method according to claim 3, characterized in that The obtaining of the first location information includes: Acquire the first location information of the first device; or, receiving the first location information input by a user; or, The first location information sent by the wearable device is received, where the first location information is located by the wearable device.
5. The method according to any one of claims 1 to 4, characterized in that: The generating a first route according to the at least one road segment comprises: When the at least one road segment can be combined into a continuous route, generating the first route according to the at least one road segment; The method further comprises: When the at least one road segment cannot be combined into a continuous route, a prompt message is displayed, wherein the prompt message instructs the user to reselect a road segment.
6. The method according to any one of claims 1 to 5, characterized in that: The generating a first route according to the at least one road segment comprises: When the at least one road segment can be combined into a closed-loop route, generating the first route according to the at least one road segment; When the at least one road section cannot be combined into a closed-loop route, the starting point position and the end point position input by the user are obtained; and the first road section is generated according to the at least one road section, the starting point position and the end point position.
7. The method according to any one of claims 1 to 6, characterized in that: The first route includes a starting point and an end point, and the method further includes: receiving the starting position and the ending position input by the user; or, The starting point position and the ending point position are acquired according to the at least one road segment.
8. The method according to any one of claims 1 to 7, characterized in that: The method further comprises: Acquire first motion data corresponding to a second route completed by running, the second route includes at least one section, the first motion data includes motion data corresponding to the second section, and the second section is any section in the second route; A third message is sent to the network device, where the third message includes the first motion data, and the third message is used by the network device to obtain attributes of the second road segment.
9. The method according to claim 8, characterized in that The method further comprises: Acquire first evaluation information, characteristic information of the user, and historical data, wherein the first evaluation information includes evaluation information corresponding to the second road section, and the historical data includes information of routes that the user has run in the past; The third message includes the first evaluation information, the characteristic information of the user and the historical data.
10. An electronic device, characterized in that: The method comprises a transceiver, a processor and a memory, wherein the memory is used to store a computer program, and the processor calls the computer program to execute the method according to any one of claims 1 to 9.
11. A computer storage medium, characterized in that: The computer storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 9 is implemented.