Determination method and device of mobile equipment, equipment and readable storage medium
By analyzing the user's service records and the distribution of mobile devices, and automatically matching users and devices, the problem of cumbersome manual association operations in the prior art is solved, and efficient and privacy-protected device matching is achieved.
Patent Information
- Application Number
- CN202410122499.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-29
- Publication Date
- 2025-07-29
AI Technical Summary
In the prior art, the matching between users and mobile devices depends on manual association operations, resulting in cumbersome processes and low matching efficiency, and the inability to achieve effective matching when the user does not perform manual association.
By obtaining the service records of users using mobile devices in historical time periods, analyzing the distribution of multiple service points, automatically matching users with mobile devices, reducing real-time positioning dependencies, and protecting user privacy.
No need for users to manually enter device information, which improves matching efficiency, reduces privacy leakage risks, simplifies operational processes, and improves matching accuracy.
Smart Images

Figure CN120390207A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of location matching, and particularly to a method, device, equipment and readable storage medium for determining a movable device. Background Art
[0002] Generally, a user and a vehicle are two independent individuals. When the user uses the vehicle, it is necessary to associate the user with the vehicle, and then further services are provided based on the relationship between the user and the vehicle.
[0003] In the related art, when the user uses the vehicle, the user needs to manually input association information in the in-vehicle application, such as inputting the license plate number of the vehicle into the in-vehicle application to realize the association between the user and the vehicle.
[0004] However, the above technology overly relies on the user's manual association operation. On the one hand, it adds a cumbersome configuration process for the user; on the other hand, if the user does not complete the manual association operation, the purpose of matching the user and the vehicle cannot be achieved, and to a certain extent, the matching efficiency between the user and the vehicle is reduced. Summary of the Invention
[0005] Embodiments of the present application provide a method, device, equipment and readable storage medium for determining a movable device, which can improve the matching efficiency between the user and the movable device to a certain extent on the premise of saving the user's unnecessary association operations. The technical solutions are as follows:
[0006] On the one hand, a method for determining a movable device is provided. The method includes:
[0007] Obtain a service record of the services used by the current object for the movable device within a historical time period. The service record includes a plurality of service points and the service times corresponding to the plurality of service points respectively;
[0008] Obtain at least one candidate movable device around each of the plurality of service points at the service time corresponding to each service point, to obtain a plurality of candidate movable devices. At least one candidate movable device in the plurality of candidate movable devices corresponds to some or all of the plurality of service points;
[0009] Determine the movable device of the current object from the plurality of candidate movable devices according to the distribution of the plurality of candidate movable devices at the plurality of service points.
[0010] On the other hand, a device for determining a movable device is provided. The device includes:
[0011] An acquisition module, configured to acquire a service record of services used by a current object for a movable device within a historical time period, where the service record includes a plurality of service points and service times respectively corresponding to the plurality of service points;
[0012] The acquisition module is further configured to acquire at least one candidate movable device around each service point among the plurality of service points at the respective corresponding service times, to obtain a plurality of candidate movable devices, and at least one candidate movable device in the plurality of candidate movable devices corresponds to some or all of the plurality of service points;
[0013] A determination module, configured to determine the movable device of the current object from the plurality of candidate movable devices according to the distribution of the plurality of candidate movable devices at the plurality of service points.
[0014] On the other hand, a computer-readable storage medium is provided, in which at least one program segment is stored, and the at least one program segment is loaded and executed by a processor to implement the method for determining a movable device as described above.
[0015] On the other hand, a computer program product or a computer program is provided, the computer program product or the computer program includes computer instructions, the computer instructions are stored in a computer-readable storage medium, a processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes to implement the method for determining a movable device as described above.
[0016] The beneficial effects brought by the technical solution provided by the embodiments of the present application at least include:
[0017] Without the need to use the real-time positioning of the current object, through the service record of the services used by the current object for the movable device and the distribution of a plurality of candidate movable devices at a plurality of service points in the service record, the purpose of indirectly matching the movable device of the current object from the plurality of candidate movable devices is realized. On the one hand, there is no need for the current object to manually input the device information of the movable device on the movable device, and the matching of the movable device is realized without the perception of the current object; on the other hand, the distribution of the candidate movable devices at a plurality of service points is directly converted into the probability of matching between the candidate movable devices and the current object, further quantifying the possibility corresponding to each candidate movable device under the service point, and matching with the service points corresponding to the service record of the current object, further improving the efficiency of matching the movable device for the current object; on the other hand, there is no need to obtain the real-time positioning information of the current object in real time, which protects the positioning privacy of the current object to a certain extent and reduces the possibility of the privacy of the current object being leaked. Description of the Drawings
[0018] To more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the accompanying drawings required for the description of the embodiments. Obviously, the accompanying drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other accompanying drawings can be obtained based on these drawings.
[0019] Figure 1 is a flowchart of a method for determining a mobile device provided by an embodiment of the present application;
[0020] Figure 2 is a flowchart of a method for determining a mobile device provided by an exemplary embodiment of the present application;
[0021] Figure 3 is based on Figure 2 a flowchart of another method for determining a mobile device provided by an embodiment;
[0022] Figure 4 is a flowchart of a method for determining a mobile device provided by another exemplary embodiment of the present application;
[0023] Figure 5 is a flowchart of determining the position of a mobile device based on image processing provided by an exemplary embodiment of the present application;
[0024] Figure 6 is a schematic diagram of a position trajectory image determined based on the longitude and latitude of multiple positions provided by an exemplary embodiment of the present application;
[0025] Figure 7 is a schematic diagram of a position trajectory image after assigning values to multiple pixel points in the position trajectory image provided by an exemplary embodiment of the present application;
[0026] Figure 8 is based on Figure 7 a flowchart of image filtering processing;
[0027] Figure 9 is based on Figure 8 a flowchart of calculating the first position;
[0028] Figure 10 is a flowchart of a method for determining a mobile device provided by yet another exemplary embodiment of the present application;
[0029] Figure 11 is a flowchart of a device for determining a mobile device provided by an exemplary embodiment of the present application;
[0030] Figure 12 is a flowchart of a device for determining a mobile device provided by another exemplary embodiment of the present application;
[0031] Figure 13 is a structural block diagram corresponding to a server provided by an exemplary embodiment of the present application;
[0032] Figure 14 is a structural block diagram corresponding to a computer device provided by an exemplary embodiment of the present application. Detailed implementation manners
[0033] To make the objectives, technical solutions and advantages of the present application clearer, the following will further describe the embodiments of the present application in detail with reference to the accompanying drawings.
[0034] First, a brief introduction to the field and related technologies involved in the embodiments of the present application is provided.
[0035] In the present application, obtaining the location information of a movable device is completed based on a positioning and matching technology. Positioning and matching refers to the process of comparing and matching the actually located position data with the map data in a Geographic Information System (GIS for short). Its purpose is to determine the accurate position of the actually located position on the map to achieve precise positioning and matching of the movable device.
[0036] In related technologies, in the process of positioning and matching, a position matching method based on trajectory data is usually used, which requires uploading the trajectory data corresponding to the user and the movable device respectively at the same time, and the coverage rate of the trajectory data in its real journey should be high enough; the trajectory data of both is compared and matched, and the relationship between the user and the movable device is determined. Among them, the trajectory data is obtained based on at least one of the Global Positioning System (GPS for short), the Global Navigation Satellite System (GNSS for short), and the movement information of the user or the movable device. In this trajectory matching method, it is necessary to obtain the positioning information of the user and the positioning information of the movable device at the same time, and there are two situations: 1) When obtaining the positioning information of the movable device, if the movable device is in a state of no network connection, network lag, or not turned on, the difficulty of obtaining the positioning information of the movable device or the difficulty of positioning update increases, resulting in a decrease in the accuracy of obtaining the real-time position of the movable device; 2) It is required that the device held by the user has the ability to continuously and long-term obtain the mobile base station signal for positioning information. Due to the protection of user privacy, it is difficult to obtain the real-time positioning of the user.
[0037] Even after overcoming the above two situations, the user and the movable device respectively generate a large amount of positioning information. The server needs to allocate a large amount of storage space to store the positioning information corresponding to the user and the movable device. When performing position relationship matching subsequently, the server needs to consume a relatively long time cost to call the positioning information of both. During the matching calculation, it also consumes a large amount of computing cost, and the matching efficiency of the user and the movable device is relatively low.
[0038] In another related technology, without obtaining the real-time positioning information of the user, when the user executes or uses services related to the movable device, the user needs to input the relevant information of the movable device or log in to the account information that uniquely identifies the user in the specified application of the movable device (hereinafter referred to as the manual association operation) to achieve the purpose of binding the user and the movable device. In this solution, the manual association operation is an additional operation process for the user. Generally, the user will not actively perform the manual association operation. When the user does not perform the manual association operation, the matching between the user and the movable device cannot be achieved. When the user performs the manual association operation, the user needs to prepare the relevant materials of the movable device and upload the relevant materials to the movable device. The movable device audits the relevant materials, and after the audit is passed, the user and the movable device are matched. The entire process of the manual association operation is cumbersome, which is likely to cause the user to have a fear of difficulties and give up performing the manual association operation, and ultimately the matching between the user and the movable device cannot be achieved; or, when the user inputs the relevant information of the movable device, the information of the movable device is input incorrectly, that is, other movable devices and the user are matched, and the matching between the user and the movable device still cannot be achieved. When the subsequent service provider provides relevant services to the user, the situation where the matching between the user and the movable device is incorrect cannot be detected, thereby affecting the efficiency of the subsequent service provision. For example: The user inputs the license plate number corresponding to in-vehicle terminal b in the application of in-vehicle terminal a. Vehicle terminal a uses the information of in-vehicle terminal b as its own information for application. Subsequently, the server matches the user based on the positioning information of in-vehicle terminal b and makes service recommendations based on the positioning information of in-vehicle terminal b. The entire matching actually needs to achieve the matching between the user and in-vehicle terminal a. For this incorrect matching situation, there is currently no solution to correct the above incorrect matching relationship.
[0039] In the embodiments of the present application, without relying on the real-time location of the user, based on the service records used by the user and the positioning information of the movable device, multiple service points corresponding to the movable device are determined. Based on the multiple service points and the service points corresponding to the service records used by the user, the matching relationship between the movable device and the user is determined, which not only reduces the unnecessary operation process of the user but also further improves the matching efficiency between the user and the movable device.
[0040] Based on the above introduction of related technologies, the following describes the application scenarios of this application.
[0041] 1. Scenarios applied to in-vehicle terminals.
[0042] During the driving of an in-vehicle terminal, the real-time position of the in-vehicle terminal is obtained. By applying the determination method of the movable device provided in the embodiments of this application, the possible staying positions of the in-vehicle terminal at the real-time position can be obtained, that is, the possible staying positions of the in-vehicle terminal are determined according to the real-time position. The service points around the possible staying positions are matched, and service information and / or recommendation information related to the service points are pushed to the in-vehicle terminal.
[0043] In another embodiment, based on the real-time positions corresponding to multiple in-vehicle terminals, multiple possible staying positions corresponding to the multiple in-vehicle terminals are determined. The multiple in-vehicle terminals and the multiple possible staying positions correspond one by one. The multiple possible staying positions are matched. In response to any one of the multiple possible staying positions having an intersection with other possible staying positions, the association relationship between the in-vehicle terminals corresponding to the multiple possible staying positions with intersections is determined, and at the same time, invitation information or companion service information corresponding to other in-vehicle terminals is sent to the multiple in-vehicle terminals.
[0044] In another embodiment, based on the possible staying positions corresponding to the in-vehicle terminal and the service records used by the user, the matching relationship between the in-vehicle terminal and the user is determined.
[0045] 2. Scenarios applied to locating movable devices.
[0046] During the movement of a movable device, due to its own network reasons or external influences, the position of the movable device may not be updated in time. The method provided in the embodiments of this application can be used to determine the position of the movable device at the current moment. Specifically: multiple real-time positions of the movable device within a historical time period are obtained, and multiple possible staying positions corresponding to the multiple real-time positions are calculated. The multiple real-time positions and the multiple possible staying positions correspond one by one. The probability values of the movable device staying at the multiple possible staying positions are calculated, and the possible staying positions whose probability values meet the preset requirements are determined as the position of the movable device at the current moment. It should be noted that the movable device is any movable intelligent terminal that can obtain real-time position information, such as: in-vehicle terminals, smart phone terminals, smart Bluetooth headset devices, etc.
[0047] 3. Scenarios applied to correcting matching relationships.
[0048] During the process of a user using a mobile device, device information corresponding to the mobile device is input into the mobile device. The device information includes at least one of the device number plate of the mobile device and the identity information of the user. During the process of the user inputting the device information, the user fills in the device information incorrectly, resulting in the mobile device saving an incorrect corresponding relationship, and the user is unaware that the input information is incorrect. At this time, it is necessary to remind the user that the information input is incorrect. The method provided by the embodiments of the present application can be used to remind the situation of incorrect input of device information. Specifically: obtain multiple positions corresponding to the mobile device currently used by the user at historical moments and the movement information corresponding to the multiple positions, and respectively determine the possible staying positions corresponding to any one of the multiple positions based on the multiple positions and the multiple movement information to obtain multiple possible staying positions; obtain the service record of the mobile device corresponding to the device number plate filled in by the user in the currently used mobile device, and push a prompt message corresponding to the incorrect filling of the device information to the currently used mobile device by the user based on the fact that the multiple possible staying positions do not match the positions corresponding to the service record.
[0049] The above scenario is only an exemplary example, and the present application does not limit the specific applicable scenarios. That is, the method for determining a mobile device provided by the embodiments of the present application can also be applied to any scenario involving positioning matching.
[0050] Secondly, please refer to Figure 1 , which is used as an example in the vehicle-mounted field, and shows a schematic flowchart of a method for implementing the determination of a mobile device provided by an embodiment of the present application. The flowchart includes a current object 10, a server 11, and multiple candidate mobile devices 12. Among them, communication is carried out between the current object 10 and the server 11, and between the server 11 and the multiple candidate mobile devices 12 through a wired communication network or a wireless communication network.
[0051] With reference to Figure 1 , Figure 1 shows the service record (n service sub-records) uploaded by the current object 10 to the server 11. Optionally, the current object 10 is implemented as a user or as a smart terminal. When the current object 10 is implemented as a user, determine the smart terminal held by the user.
[0052] A user uses multiple services for a movable device on a smart terminal. The multiple services can be provided by the same service provider or different service providers. For a service, when the user uses the service for the movable device, the smart terminal updates the usage status corresponding to the service to the completed status and uploads the service record corresponding to the service to Server 11. By way of illustration, the movable device is a vehicle, and the user uses a taxi coupon in a certain application. The smart terminal uploads the usage time and usage location corresponding to the taxi coupon to the server.
[0053] Each service corresponds to a service point. The smart terminal sends the service point and service time corresponding to the service to Server 11. By way of illustration, the movable device is a vehicle, and the service is a parking service program. The smart terminal sends the parking location and the time when the parking service program is triggered to Server 11. When the user uses multiple services within a historical time period, Server 11 will obtain the service records of the current object's use of the movable device. The service records include multiple service points and the service times corresponding to each of the multiple service points. As Figure 1 shown, the current object 10 uploads n service sub-records. The n service sub-records correspond to their respective service points and service times. The multiple service points in the n service sub-records can be the same service point or different service points. This application does not impose any restrictions on this. In Figure 1 , an exemplary description is given according to n service records corresponding to n service points.
[0054] Combined with reference Figure 1 , Figure 1 shows the process in which all movable devices upload their location information to Server 11. Among them, the location information includes at least one of the location coordinates of the movable device at a specified time, the timestamp information corresponding to the specified time, and the moving speed of the movable device when passing through the location coordinates at the specified time.
[0055] Optionally, after Server 11 obtains the location information corresponding to all movable devices, for any one of all movable devices, based on the location information, it determines the staying location corresponding to the movable device and matches the associated service point based on the staying location. In this way, Server 11 will calculate the movable devices included corresponding to each service point.
[0056] Optionally, after determining the multiple service points in the service records, for any one of the multiple service points, Server 11 obtains at least one candidate movable device corresponding to the service point, and obtains multiple candidate movable devices corresponding to the multiple service points.
[0057] Based on the distribution of multiple candidate movable devices 12 at multiple service points, the server 11 determines the movable device corresponding to the current object 10 from the multiple candidate movable devices. For the specific process of determining the movable device according to the distribution, please refer to the content described in the corresponding embodiments below, and will not be elaborated here.
[0058] As Figure 1 shown, the server 11 obtains the service records of the current object 10 using the movable device within the historical time period. The service records include n service times and n service points, and the n service points correspond one-to-one with the n service points. The server 11 obtains at least one candidate movable device existing at each service point, and counts the multiple candidate movable devices at the n service points (the multiple candidate movable devices here are Figure 1 device 1, device 15, device 20, and device 45 in). Based on the distribution of any one of the multiple candidate movable devices at the n service points, where device 1 corresponds to distribution 1, device 15 corresponds to distribution 15, device 20 corresponds to distribution 20, and device 45 corresponds to distribution 45; the movable device of the current object 10 is determined from the multiple candidate movable devices, Figure 1 and device 15 is determined as the movable device corresponding to the current object 10. Schematically, distribution 1 is used to indicate that device 1 appears at service point 1, distribution 15 is used to indicate that device 15 appears at service point 1 and service point 2, distribution 20 is used to indicate that device 20 appears at service point 2, and distribution 45 is used to indicate that device 45 appears at service point 1 and service point n.
[0059] The above wireless communication network or wired communication network uses standard communication technologies and / or protocols. The network is usually the Internet, but it can also be any other network, including but not limited to any combination of a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a mobile, wired or wireless network, a private network or a virtual private network. In some embodiments, technologies and / or formats including Hyper Text Mark-up Language (HTML), Extensible Markup Language (XML), etc. are used to represent the data exchanged through the network. In addition, conventional encryption technologies such as Secure Socket Layer (SSL), Transport Layer Security (TLS), Virtual Private Network (VPN), Internet Protocol Security (IPsec), etc. can be used to encrypt all or some of the links. In other embodiments, customized and / or proprietary data communication technologies can also be used to replace or supplement the above data communication technologies.
[0060] It should be noted that when the current object 10 is implemented as a smart terminal, the smart terminal can be: a smart phone, a tablet computer, an MP3 player (Moving Picture Experts Group Audio Layer III), an MP4 (Moving Picture Experts Group Audio Layer IV) player, a laptop or a desktop computer. The terminal can also be called by other names such as user equipment, portable terminal, laptop terminal, desktop terminal, etc., and this application does not limit this.
[0061] The server 11 can be an independent physical server, can also be a server cluster or a distributed system composed of multiple physical servers, and can also be a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. Optionally, the server 11 can also be implemented as a node in a blockchain system.
[0062] The determination method of the above-mentioned mobile device can be implemented by the server 11 alone, or by the terminal device alone, or by the server 11 and the terminal device jointly. The terminal device includes the intelligent terminal corresponding to the current object 10 and / or the mobile device.
[0063] It should be noted that the information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data for analysis, stored data, displayed data, etc.) and signals involved in this application are all authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data need to comply with the relevant laws, regulations and standards of relevant countries and regions.
[0064] Based on the above description, the determination method of the mobile device involved in the embodiments of this application will be described. Figure 2 It is a flowchart of the determination method of the mobile device provided by an exemplary embodiment of this application, and this method is described as being applied to the server. As Figure 2 shown, this method includes:
[0065] Step 200, obtaining the service record of the services used by the current object for the mobile device within the historical time period.
[0066] Optionally, the current object is used to indicate the intelligent terminal controlled by the user. Different application programs provided by different service providers are installed in the intelligent terminal, and different application programs provide different services for the user. For example, the taxi-hailing application program provides taxi-hailing coupons for the user, and the shopping application program provides shopping coupons for the user, etc. After the user uses the service in the corresponding application program, the intelligent terminal generates the corresponding service record, and the service record includes at least one of the service type, service point, and service occurrence / completion time.
[0067] Optionally, the intelligent terminal uploads the service types corresponding to the services completed / cancelled / used in each application program to the server for storage. When the server stores the service record of the user, it also needs to obtain the identification code of the intelligent terminal. This identification code is used to uniquely represent the current object, and can be implemented as the account logged in by the user in each application program, or can be implemented as the device code of the intelligent terminal, etc. This application does not limit this.
[0068] Optionally, when the intelligent terminal records the service records corresponding to each application program, it classifies each service record, and the specific classification methods include at least one of the following situations.
[0069] First, classify each service record according to the service type. The service type includes at least one of shopping, taxi-hailing, driving service, gas filling, and car washing. Record at least one service record included under the same service type. There may be multiple different service providers under the same service type, or there may be the same service provider. This application does not limit this, for example: [taxi-hailing, application a, time 1, three-yuan coupon], [taxi-hailing, application b, time 2, four-yuan coupon], where application a and application b both belong to taxi-hailing applications.
[0070] Second, classify each service record according to the service time. Pool multiple service records that occur in the same time period to generate the service record corresponding to that time period. For example: [time period 1, application a, coupon 1], [time period 1, application b, coupon 2], where application a and application b can be applications of the same service type or applications of different service types.
[0071] Third, classify each service record according to the service provider. The same service provider provides multiple applications. Record the services corresponding to the completion / use / cancellation of multiple applications under the same service provider, and generate the service record corresponding to that service provider. For example, the service provider provides application a, application b, application c, and application d, and record the services corresponding to the completion of applications a - d. Applications a - d can be implemented as applications of different service types or as different applications of the same service type.
[0072] Fourth, classify each service record according to the service point. Obtain the service points corresponding to each of the multiple service records, and classify the service records whose service points belong to the same area. The distance between each service point belonging to the same area is less than a preset distance, and the preset distance is set in advance by relevant personnel.
[0073] Fifth, classify each service record according to the service application object. Consider the final user of the service as the service application object. For example, among the service records, there are three-yuan taxi service coupons, five-yuan driving service coupons, and two-fold food category voucher services. Among them, the final users of the three-yuan taxi service coupons and the five-yuan driving service coupons are in-vehicle terminals (in the embodiments of this application, they are collectively referred to as movable devices), and the final user of the two-fold food category voucher is food. Classify the service records according to the category of the service application object. In the embodiments of this application, classify the services for movable devices, and then directly obtain the service records corresponding to the services used for movable devices.
[0074] In another alternative embodiment, taking the application of the embodiment of the present application in the field of in-vehicle navigation as an example, the server receives multiple service records uploaded by the current object, and can screen out the service records corresponding to the services used by the movable device from the multiple service records.
[0075] The above is only an exemplary description of the classification and acquisition method of service records. The present application does not limit the specific classification and the method of obtaining different service records. It should be noted that in the above process of classifying and acquiring service records, the server stores multiple service records in the order of the natural time occurrence sequence.
[0076] Optionally, the application programs provided by the above different service providers can implement mini-programs or application modules in traditional application programs, cloud application programs, and host application programs, such as: fast applications, etc., any one of the web platforms.
[0077] In the embodiment of the present application, the historical time period is used to indicate the time period separated from the current moment by a preset time interval. When determining the movable device of the current object from multiple candidate movable devices, if the service time of the service record of the current object obtained is far from the current moment, the reference of the service record cannot be guaranteed. For example, obtaining the service record of the current object for the service used by the movable device a month ago, the movement trajectory of the movable device a month ago may be at location a, while the movement trajectory of the movable device at the current moment may change from location a to location b, and the distance between location a and location b is relatively far. In this case, the service record for the service used by the movable device a month ago has no reference significance for the current moment. Therefore, only the service records occurring within the historical time period of the preset time interval need to be obtained.
[0078] In the embodiment of the present application, the preset time interval is any one of three days, five days, seven days, or ten days, which can not only ensure that the time interval between the current moment and the historical time period is not too far, but also ensure that the service records within the historical time period have certain constructive reference opinions for the current moment. In another embodiment, the value range of the historical time period can also be determined based on the fourth item in the following introduction to the preset conditions.
[0079] Optionally, the service record includes multiple service sub-records, and each service sub-record corresponds to its own service point, the service type corresponding to the service point, and the service time corresponding to the service point at each time point. That is, the service record includes multiple service points and the service times corresponding to each of the multiple service points.
[0080] Optionally, the service record also includes the service types corresponding to multiple service points.
[0081] Schematically, the service record includes three service sub-records 1-3, [Service sub-record 1: Service point a, Time 1, Service type 1], [Service sub-record 2: Service point a, Time 2, Service type 2], [Service sub-record 3: Service point b, Time 3, Service type 1], where Time 1 < Time 2 < Time 3.
[0082] In an optional embodiment, after obtaining the service record of the current object for the use of the movable device within the historical time period, it is determined whether multiple service sub-records in the service record of the current object meet the preset conditions. If the preset conditions are met, the following step 201 is executed; if the preset conditions are not met, the service sub-records of the current object are continuously accumulated.
[0083] In the embodiments of the present application, the preset conditions include at least one of the following situations.
[0084] I. The number of service sub-records.
[0085] The service sub-records stored by the server for the current object need to exceed the preset number. After meeting the preset number, the subsequent process of matching the movable device can be executed. If only one service sub-record of the current object is stored in the server, it is difficult to match the movable device corresponding to the current object based on one piece of data. Continuing to store the service record of the current object for the use of the movable device can effectively save the computing power executed by the server and improve the matching efficiency for matching the movable device to a certain extent.
[0086] II. The types of service types corresponding to the service sub-records.
[0087] In response to the number of service types corresponding to the service sub-records stored for the current object exceeding the preset number, the subsequent process of matching the movable device is executed. The server records the service sub-records corresponding to multiple services completed / used / cancelled by the current object. In order to further determine that the service sub-records corresponding to the multiple services completed are generated by the current object, a process for judging the types of service types is added. If there are multiple service sub-records corresponding to only one service type for the current object, this situation is judged as the multiple service sub-records not being used by the current object, and it may be that the current object transfers or sells the service to other objects for use.
[0088] III. Whether the location of the service point corresponding to the service sub-record changes.
[0089] In response to a change in the location of the service point corresponding to the service sub-record stored for the current object, perform the subsequent process of matching the movable device. There are multiple candidate movable devices at the same service point. When matching from multiple candidate movable devices, if multiple service points in the service sub-record are all at the same location, it is very likely that other candidate movable devices at the same service point will be determined as the movable device of the current object during the subsequent matching process. For example, taking the service point as a parking lot for illustration, the current object has three service sub-records, and the service points corresponding to the three service sub-records are all in the same parking lot. During the matching, it may be confused with other candidate movable devices that have been parked in the parking lot for a long time. Therefore, adding the process of judging the difference in the location of the service point can effectively improve the accuracy of subsequent matching of the movable device.
[0090] IV. The time span corresponding to each service sub-record.
[0091] Obtain the service time corresponding to each service in the service sub-record within the historical time period. In response to the time interval between the service time of the first service and the service time of the last service within the historical time period being less than the preset time interval, perform the subsequent process of matching the movable device. If the time interval between the first service and the last service is too long, the service sub-records earlier in the historical time period have no reference significance for subsequent matching of the movable device; it is also possible that the service sub-records earlier in the historical time period identify the relationship between the current object and other candidate movable devices. Therefore, adding this condition of the time span corresponding to the service sub-record further filters the valid information in the service record and improves the accuracy of subsequent matching of the movable device.
[0092] V. Whether there is a service sub-record with high distinguishability.
[0093] Optionally, the distinguishability is determined based on at least one of the geographical location uniqueness corresponding to the service point in the service record, the time uniqueness corresponding to the service time in the service record, and the service uniqueness of the service type corresponding to the service point in the service sub-record.
[0094] The distinguishability is determined based on the geographical location uniqueness corresponding to the service point in the service sub-record. In response to the geographical location uniqueness corresponding to multiple service points in the service sub-record of the current object belonging to the preset geographical characteristics, perform the subsequent process of matching the movable device. The preset geographical characteristics can be implemented as any one of suburban locations, mountain locations, etc. The location of the service point in the preset geographical characteristics is more unique than the relatively common geographical location (for example, the geographical location in the city center), and it can better represent that the current object has used the relevant services for the movable device, thereby generating the service sub-record.
[0095] In response to the time uniqueness corresponding to the service time in the service sub-record of the current object belonging to a preset time characteristic, execute the subsequent process of matching the movable device. The preset time characteristic can be implemented as any time point in the early morning. The time point in the preset time characteristic can represent the service occurring at this service time being written off by the current object more than a relatively common time point (for example, any time point in the daytime).
[0096] In response to the service uniqueness of the service type corresponding to the service point in the service sub-record of the current object belonging to a preset service characteristic, execute the subsequent process of matching the movable device. The preset service characteristic can be implemented as a carpooling service, a vehicle maintenance service, etc. When the current object generates a service sub-record corresponding to the service related to the preset service characteristic, it can more represent that the current object has performed relevant services on the movable device.
[0097] In an alternative embodiment, the distinguishability can also be determined based on other decisions, and the specific decisions can be determined according to actual needs, which are not limited in this application.
[0098] Step 201: Obtain at least one candidate movable device around each service point at its corresponding service time among multiple service points, and obtain multiple candidate movable devices.
[0099] Optionally, the server receives the real-time location information corresponding to all movable devices.
[0100] In the embodiment of this application, the real-time location information of the movable device can be obtained based on the GPS positioning technology or the GNSS positioning technology, which is not limited in this application.
[0101] Optionally, obtain the real-time location information of the movable device in units of time periods, and store the corresponding real-time location information according to the identification code of the movable device. The identification code is used to uniquely represent the movable device and can be implemented as the International Mobile Equipment Identity (IMEI) or other identification codes, which are not limited in this application.
[0102] In an optional embodiment, in response to the service provider that provides services for the current object also providing relevant services to the mobile device, the application states of multiple application programs provided by the service provider in the mobile device are maintained in the background running state or the foreground running state, so that the multiple application programs can obtain the GPS real-time location information and / or GNSS real-time location information of the mobile device in the background at a certain frequency for a long time. In the embodiment of the present application, the GNSS real-time location information of the mobile device is obtained, and the GNSS real-time location information at least includes information such as meter-level longitude and latitude, timestamp, and moving speed.
[0103] In another optional embodiment, in response to the service provider that provides services for the current object not providing relevant services to the mobile device, the GNSS real-time location information obtained by using the application program corresponding to the service provider is used, and the association with the service provider corresponding to the current object is implemented through a third-party plugin.
[0104] In an optional embodiment, the application programs in the mobile device collect multiple real-time location information corresponding to multiple time periods, and the multiple real-time location information corresponds to the multiple time periods one by one, and the multiple real-time location information is stored in the mobile device or stored in the corresponding application program.
[0105] In response to the service record in step 200 above meeting the preset conditions, the mobile device uploads the multiple real-time location information and the corresponding identification codes stored in itself to the server, and executes the processes of step 201 and later.
[0106] After obtaining all the real-time location information corresponding to all the mobile devices, all the real-time location information is matched with each service point, and the mobile devices included under each service point are counted.
[0107] Optionally, the service point is an area within a preset radius centered on the current position. Generally speaking, there is only one longitude and latitude coordinate value of the service point in the GIS system. The area within the preset radius centered on the longitude and latitude coordinate value is regarded as the service point in the embodiment of the present application, and the preset radius range is set according to the actual situation.
[0108] The real-time location information includes real-time location coordinates, time information corresponding to the real-time location coordinates, and moving speed information passing through the real-time location coordinates. The real-time location information may also include other location information, which is not limited in the present application. Among them, the current location coordinates include longitude and latitude, the abscissa of the current location coordinates is latitude, and the ordinate is longitude.
[0109] After determining the real-time location information corresponding to each mobile device, the possible staying position area of the mobile device near the real-time location coordinates is calculated according to the real-time location information.
[0110] Update the possible stay location area to the location information corresponding to the mobile device.
[0111] Based on the updated location information, match multiple service points corresponding to the service records, and obtain at least one candidate mobile device around each service point at its respective corresponding service time among the multiple service points, to obtain multiple candidate mobile devices. At least one candidate mobile device among the multiple candidate mobile devices corresponds to some or all of the multiple service points. As Figure 1 shown, determine the devices included in each of the service points 1-n. The devices included in service point 1 are device 1, device 15, and device 45 (at least one candidate mobile device around the corresponding service point at its respective service time), the devices included in service point 2 are device 15 and device 20,..., and service point n includes device 45. Finally, it is determined that service points 1-n correspondingly include devices 1, 15, 20, and 45 (corresponding to multiple candidate mobile devices).
[0112] Optionally, for the specific calculation process of the possible stay location area of the candidate mobile device near the real-time location coordinates, please refer to the content of the following embodiments, and details are not described here.
[0113] Step 202, determine the mobile device of the current object from the multiple candidate mobile devices according to the distribution of the multiple candidate mobile devices among the multiple service points.
[0114] In the above steps, after determining multiple candidate mobile devices from multiple service points, determine the distribution of each candidate mobile device among the multiple service points.
[0115] The distribution is used to indicate any one of the appearance frequency, appearance probability, and score of the candidate mobile device among the multiple service points.
[0116] Optionally, the method for determining the mobile device of the current object from the multiple candidate mobile devices according to the distribution includes but is not limited to at least one of the following situations.
[0117] First, when the distribution is used to indicate the appearance frequency of the candidate mobile device among the multiple service points, for any one candidate mobile device among the multiple candidate mobile devices, obtain the appearance frequency of the candidate mobile device among the multiple service points, sort the appearance frequencies corresponding to the multiple candidate mobile devices respectively, and determine the candidate mobile device with an appearance frequency higher than the preset frequency as the mobile device of the current object.
[0118] Second, the distribution is used to indicate the normal distribution of candidate movable devices among multiple service points. Based on the frequency of occurrence of candidate movable devices among multiple service points and / or the relative distance between service points, a corresponding normal distribution curve is plotted, and the candidate movable device corresponding to the peak in the normal distribution curve is determined as the movable device of the current object. Among them, the relative distance between service points is the relative distance between each service point.
[0119] Third, when the distribution is used to indicate the scores of candidate movable devices among multiple service points, first calculate the scores corresponding to the candidate movable devices under one service point, and then cumulatively calculate the total scores corresponding to the candidate movable devices under multiple service points. The candidate movable devices with total scores meeting the requirements among multiple candidate movable devices are determined as the movable devices of the current object. In this step, in order to more conveniently analyze the distribution of each candidate movable device among multiple service points, first calculate the scores corresponding to the candidate movable device within one service point, and then accumulate the scores corresponding to all service points to obtain the total score of the candidate movable device. For the specific process of determining the scores of movable devices, please refer to the following embodiments.
[0120] In an optional embodiment, the smart terminal corresponding to the current object (here used to indicate the user) includes multiple application programs provided by multiple service providers. When the user uses the application programs, their own created account information is logged in to the corresponding application programs. In this way, when the user uses multiple services within the application programs, the smart terminal will bind and store the service records and the account. Among them, the account information created by the user in different application programs is different. At this time, in order to further improve the recording efficiency of service records, while storing the service records corresponding to multiple application programs, the smart terminal also synchronously obtains the device identification code corresponding to the smart terminal and sends the device identification code when sending the service records to the server. When the server records the service records, it determines that multiple service records belong to the same user through the device identification code.
[0121] When obtaining the rough position of the movable device, it can be achieved through the positioning module set in the movable device or through multiple application programs installed in the movable device. Among them, when obtaining the rough position of the movable device through multiple application programs installed in the movable device, in order to further reduce the operation process of the user on the movable device, in multiple application programs of the movable device, the user does not need to manually log in to the same account as the application program in the smart terminal. It only needs the application program to silently obtain the real-time position in the background, and bind the real-time position and the device identification code of the movable device to form the rough position of the movable device and upload it to the server.
[0122] In an embodiment of the present application, in the case where the real-time positioning of the current object is not required, the service record of the service used by the current object for the movable device and the distribution of multiple candidate movable devices at multiple service points in the service record are used to indirectly match the movable device of the current object from multiple candidate movable devices. On the one hand, it is not necessary for the current object to manually input the device information of the movable device on the movable device, and the matching of the movable device is achieved without the current object's awareness. On the other hand, the distribution of candidate movable devices at multiple service points is directly converted into the probability of matching the candidate movable device with the current object, further quantifying the possibility corresponding to each candidate movable device under the service point, and matching it with the service point corresponding to the service record of the current object, further effectively improving the efficiency of matching the movable device for the current object. On the other hand, it is not necessary to obtain the real-time positioning information of the current object in real time, which protects the positioning privacy of the current object to a certain extent and reduces the possibility of the current object's privacy being leaked.
[0123] Optionally, Figure 3 shows a flowchart for determining the movable device of the current object from multiple candidate movable devices provided by another exemplary embodiment. Based on Figure 2 the optional embodiment shown, step 201 includes Figure 3 the steps 300 to 302 shown.
[0124] Step 300, for any one of the multiple service points, determine the score of at least one candidate movable device corresponding to the service point.
[0125] Optionally, each service point corresponds to a different service type, and the scores of candidate movable devices located at service points under different service types are also different.
[0126] That is, for any one of the multiple service points, obtain the service type corresponding to the service point, and determine the score of at least one candidate movable device corresponding to the service point based on the service type. Optionally, the scores corresponding to at least one candidate movable device included in the service point are also different according to different service types. For example, the service type of the gas station service point is the gas station type. There are three candidate movable devices 1-3 in the gas station service point. The relative distances of the candidate movable devices 1-3 from the service point are different, and the corresponding scores are determined according to the relative distances between at least one candidate movable device and the gas station service point.
[0127] In an optional embodiment, for any one of a plurality of service points, the scores of at least one candidate movable device under the service point are accumulated to obtain a score sum value; the ratios of the scores of each candidate movable device in the at least one candidate movable device to the score sum value are respectively calculated to obtain the updated scores of each candidate movable device. The scores of each candidate movable device calculated in this way are equivalent to the contribution degrees of each movable device to the service point, and the contribution degrees can be understood as the actual application situations of the candidate movable devices at the service point. For example, if the service point is a parking lot, the contribution degree is used to indicate the staying time of the candidate movable device in the parking lot, and so on.
[0128] In the embodiment of the present application, the average value of the sums of a plurality of total scores corresponding to a plurality of candidate movable devices is calculated. For one of the candidate movable devices, based on the ratio of the score corresponding to the candidate movable device to the average value, the score of the candidate movable device is further updated, and a corresponding weight value is assigned to the candidate movable device, further improving the reliability of the score of the candidate movable device under the service point.
[0129] The calculation of the scores of the candidate movable devices is introduced in detail as follows, and the calculation methods include but are not limited to at least one of the following four methods.
[0130] The first calculation method:
[0131] For any one of the at least one candidate movable device among a plurality of service points, according to the service type of the service point, a target score calculation method is determined from a plurality of preset score calculation methods, and according to the target score calculation method, the scores of at least one candidate device corresponding to the service point are calculated. The service type is used to identify the service category of the service point for the movable device, such as: maintenance service point, parking service point, driving service point, car wash service point, and so on.
[0132] The plurality of score calculation methods include at least one of a calculation method based on the distance between the candidate movable device and the service point (score calculation method 1), a calculation method based on the staying time at the service point (score calculation method 2), and a calculation method based on a preset value (score calculation method 3).
[0133] In response to the service type of the service point belonging to the first service category, calculate the scores of at least one candidate movable device corresponding to the service point according to the score calculation method 1. Obtain the distance between the candidate movable device and the service point, transform the distance according to the preset calculation method to obtain the transformed distance, and determine the score corresponding to the candidate movable device based on the transformed distance. The preset calculation method includes at least one of taking the reciprocal of the distance, performing an exponential function processing on the distance, performing a logarithmic function processing on the distance, making the distance negative, making the distance positive, etc. In the application embodiment, the preset calculation method is to take the reciprocal of the distance, so that the distance and the score are in a correlation relationship, that is, the farther the candidate movable device is from the service point, the smaller the possibility that the candidate movable device is the current object. Schematically, the service category is the refueling category, and the transformed distance is the reciprocal of the distance between the candidate movable device and the gas station (service point).
[0134] In response to the service type of the service point belonging to the second service type, calculate the scores of at least one candidate movable device corresponding to the service point according to the score calculation method 2. Obtain the total stay time of the candidate movable device at the service point, divide the total stay time into different gears according to the time length, assign values to different gears, and determine the score corresponding to the candidate movable device according to the value corresponding to the assigned gear. The total stay time is used to indicate the difference between the time when the candidate movable device enters the service point and the time when it leaves the service point. If the candidate movable device does not leave the service point, the total stay time is used to indicate the difference between the time when the candidate movable device enters the service point and the current time. Schematically, the total stay time is divided into three gears. The first gear is that the total stay time is less than 15 minutes, and the value assigned to the first gear is 20; the second gear is that the total stay time is less than 30 minutes and greater than or equal to 15 minutes, and the value assigned to the first gear is 40; the third gear is that the total stay time is greater than or equal to 30 minutes, and the value assigned to the third gear is 80. Optionally, the values assigned to different gears are in a positive or negative correlation with the time length within different gears, and the present application does not limit this. Alternatively, directly calculate the score corresponding to the candidate movable device according to the total stay time.
[0135] In response to the service type of the service point belonging to the third service type, calculate the scores of at least one candidate movable device corresponding to the service point according to the score calculation method 3. Calculate the scores corresponding to at least one candidate movable device under the service point according to the preset value. Schematically, the third service type is the driving service. In the driving scenario, all candidate movable devices under the driving service point may be the movable devices that the current object needs to use. That is, the same value is assigned to each candidate movable device for calculation.
[0136] In the embodiment of the present application, the scores of multiple candidate movable devices included under each service point are calculated separately, and then the multiple scores belonging to the same candidate movable device are accumulated, so as to determine the multiple total scores corresponding to each of the multiple candidate movable devices, and the candidate movable devices that meet the requirements are screened out from the multiple total scores to be matched with the current object. To a certain extent, the accuracy of determining the scores of candidate movable devices is increased, and the situation where the scores of candidate movable devices at other service points are missed is avoided.
[0137] The second calculation method:
[0138] Based on the service type of the service point, determine the service point score corresponding to the service point; based on the service point score, determine the service point score corresponding to the service point. Each service point has different scores according to the distinguishability of the service type. The distinguishability is determined based on the convenience when the service type serves the movable device. This convenience can be determined based on the total service time corresponding to the service type. That is, under the car wash service point, the movable device serves for 15 minutes, and under the maintenance service point, the movable device serves for 45 minutes. The score corresponding to the car wash service point is different from the score corresponding to the maintenance service point. The distinguishability is determined based on the flexibility of the service type to serve the movable device. This flexibility is used to indicate the possibility that the candidate movable device can be freely used relative to the current object. For example, the score of the chauffeur service point is higher than that of the parking service point. When setting, when using the chauffeur service at the chauffeur service point, the probability that the movable device used for service is owned by the current object itself is much greater than the probability that the movable device is leased or borrowed. Therefore, through such differences in distinguishability, the calculation scores corresponding to each service type are determined, further improving the efficiency of subsequent matching of movable devices.
[0139] In the embodiment of the present application, when calculating the score corresponding to the candidate movable device at this service point, considering the differential calculation according to the service type of the service point, the service weights of different service types for the candidate movable device are different. On the premise of different service weights, if calculated according to the same calculation method, it will result in no distinction among multiple service points relative to the candidate movable device, making the obtained scores the same, reducing the reliability of determining the scores of candidate movable devices, and further reducing the efficiency of matching movable devices for the current object.
[0140] The third calculation method:
[0141] Obtain the time difference between the current moment and the service time corresponding to the service point. Based on the time difference, determine the scores of at least one candidate movable device corresponding to the service point, such that the scores have a negative correlation with the time difference. If the time difference is larger, it means that the distance between the service time and the current time is farther. The farther the distance, the less reference significance the service point corresponding to the service time has for the current object. It is very likely that during this time difference, the current object has switched to using other movable devices. That is to say, adding this calculation method of time difference is to screen out service points with no reference significance.
[0142] In the embodiment of the present application, considering the time difference between the time corresponding to the service record and the current moment, the larger the time difference, the more it means that the service record was used by the current object a long time ago, and it has no reference value for the position calculation and score calculation at the current moment. Therefore, screen out the candidate movable devices corresponding to the service records with larger time differences, further improving the accuracy of determining the scores of the candidate movable devices.
[0143] The fourth calculation method:
[0144] Combined with the above three score calculation methods, jointly calculate the scores corresponding to each of the multiple candidate movable devices. For the specific calculation method of the scores, please refer to Formula 1 below.
[0145] Formula 1:
[0146] In Formula 1, Score m is the score corresponding to the m-th candidate movable device among the multiple candidate movable devices, S is the service point score corresponding to the current service point, H m is the score of the m-th candidate movable device under the service point, H m is calculated according to various score calculation methods in the above first score calculation method. There are n candidate movable devices under the current service point, and j is a positive integer less than or equal to n. is used to represent the sum of the scores corresponding to the n candidate movable devices under the current service point, H j is calculated according to various score calculation methods in the above first score calculation method, and t is the first time.
[0147] In an embodiment of the present application, a weighted average process is performed on the total scores corresponding to all candidate movable devices to obtain an average score; and multiple score ratios of the ratio of the score corresponding to the candidate movable device to the average score are sorted, and the movable device of the current object is determined from the multiple score ratios based on the sorting result. In fact, each service has an equal chance of encountering candidate movable devices, that is to say, the score ratio is theoretically close to a certain threshold, but when the score ratio is greater than the threshold, it means that the candidate movable device has sufficient historical service records to support it, further improving the credibility of the score ratio.
[0148] The above four score calculation methods are only exemplary examples, and the scores corresponding to each candidate movable device can also be calculated based on other score calculation methods, which are not limited in this application.
[0149] Step 301, for any one of the multiple candidate movable devices, accumulate the scores obtained by the candidate movable device at multiple service points to obtain a total score.
[0150] Optionally, after calculating the scores corresponding to at least one candidate movable device corresponding to any one of the multiple service points, it is equivalent that each of the multiple candidate movable devices under the multiple service points corresponds to a score. However, it is very likely that a candidate movable device appears in multiple service points at the same time. For example, service point 1 includes device 1 and device 5, and service point 2 includes device 3 and device 2. It can be seen that device 2 appears in both service point 1 and service point 2 at the same time.
[0151] For this situation, accumulate the scores obtained by the candidate movable device at multiple service points to obtain the total score corresponding to the candidate movable device. For example, device 2 appears in both service point 1 and service point 2 at the same time. Device 2 obtains a score of 1 at service point 1 and a score of 2 at service point 2. Add the score 1 and the score 2, and determine the total score of device 2 based on the accumulated score.
[0152] In an embodiment of the present application, the scores of the multiple candidate movable devices included in each service point are calculated separately, and then the multiple scores belonging to the same candidate movable device are accumulated, so as to determine the multiple total scores corresponding to each of the multiple candidate movable devices, and screen out the candidate movable devices that meet the requirements from the multiple total scores to match with the current object. To a certain extent, it increases the accuracy of determining the scores of candidate movable devices and avoids the situation that the scores of candidate movable devices at other service points are missed.
[0153] Step 302, determine the candidate movable device with a total score that meets the requirements among the multiple candidate movable devices as the movable device of the current object.
[0154] Optionally, after determining the total scores corresponding to the multiple movable devices, the candidate movable devices among the multiple candidate movable devices whose total scores meet the requirements are determined as the movable devices of the current object. The candidate movable devices among the multiple candidate movable devices whose total scores are greater than a preset threshold are determined as the movable devices of the current object; or, the candidate movable devices among the multiple candidate movable devices whose total scores are among the top p are determined as the movable devices of the current object, where p is a positive integer.
[0155] In an alternative embodiment, the total scores of the multiple candidate movable devices are obtained, and the total scores of the multiple candidate movable devices are weighted and averaged to obtain an average score; the ratios of the total scores corresponding to the multiple candidate movable devices to the average score are calculated to obtain a plurality of score ratios, and the plurality of score ratios correspond one by one to the multiple candidate movable devices. The calculation methods corresponding to the plurality of score ratios are shown in Formula 2 below.
[0156] Formula 2:
[0157] In Formula 2, Rank m is the score ratio corresponding to the m-th candidate movable device among the multiple candidate movable devices, Score m is the total score corresponding to the m-th candidate movable device among the multiple candidate movable devices, and Score avg is the average score.
[0158] The candidate movable devices among the multiple candidate movable devices whose score ratios are greater than a ratio threshold are determined as the movable devices of the current object; or, the candidate movable devices among the multiple candidate movable devices whose score ratios are among the top k are determined as the movable devices of the current object, where k is a positive integer. Here, p and k can be different values or the same value.
[0159] Through the calculation of Formula 2 above, the score ratios corresponding to the multiple candidate movable devices are sorted, and it is determined whether the score ratios are greater than a certain ratio threshold. The candidate movable devices whose score ratios are greater than the ratio threshold are determined as the movable devices of the current object, that is, the matching relationship between the current object and the movable device is determined. In the embodiments of the present application, most of the score ratios corresponding to the multiple candidate movable devices are close to the value 1. However, if the score ratio is greater than a certain value much larger than the value 1, it means that the frequency and credibility of the candidate movable device appearing in a sufficient number and sufficient variety of service records are high enough. That is, the probability or expectation that the candidate movable device belongs to the current object is much greater than that of other candidate movable devices.
[0160] If the score ratios of multiple candidate movable devices are all greater than the ratio threshold, then all the multiple candidate movable devices are determined as the movable devices of the current object. This solves the situation where a user may have multiple movable devices at the same time, or a movable device may correspond to multiple users, and to a certain extent improves the efficiency of matching movable devices.
[0161] In the embodiment of the present application, without using the real-time positioning of the current object, through the service records of the services used by the current object for the movable device and the distribution of multiple candidate movable devices at multiple service points in the service records, the purpose of indirectly matching the movable device of the current object from multiple candidate movable devices is achieved. On the one hand, it is not necessary for the current object to manually input the device information of the movable device on the movable device, and the matching of the movable device is realized without the current object's perception; on the other hand, the distribution of the candidate movable devices at multiple service points is directly converted into the probability of matching between the candidate movable device and the current object, further quantifying the possibility corresponding to each candidate movable device under the service point, and matching it with the service point corresponding to the service record of the current object, further improving the efficiency of matching the movable device for the current object; on the other hand, it is not necessary to obtain the real-time positioning information of the current object in real time, which protects the positioning privacy of the current object to a certain extent and reduces the possibility of the privacy of the current object being leaked.
[0162] In the embodiment of the present application, the position of the current object is determined according to the position of the service point corresponding to the service record of the current object, which reduces the requirement and difficulty of obtaining user-side data to a certain extent.
[0163] Combined with the content of the above embodiments, the method for determining the position of the movable device involved in the embodiment of the present application is further described. Figure 4 The flowchart showing the determination of the position of the movable device provided by another exemplary embodiment is based on Figure 2 The optional embodiment shown, step 201 includes Figure 4 Steps 400 to 403 shown.
[0164] Step 400, obtain the first position where the first movable device is located at the first time.
[0165] Combined with the above content, it can be seen that in the process of matching the above multiple candidate movable devices and the current object, the service record is used as the basic condition for matching the staying positions of the two. In step 200 above, the position corresponding to the service point in the service record is used as the staying position of the current object. Hereinafter, how to determine the staying position corresponding to the movable device will be described in detail.
[0166] Optionally, the first movable device is any movable device, and the first movable device uploads the position information generated by itself to the server for storage by the server. During the storage process, the server stores the position information of the first movable device in the order of natural time occurrence, and the position information includes at least one of, but is not limited to, position (latitude and longitude), moving speed, and time.
[0167] Calculate the first position (stop position) where the first movable device is located at the first time, and obtain the time range where the first time is located. This time range includes n times, and n is a positive integer.
[0168] Optionally, the n times are time points evenly distributed within this time range, or they can be time points unevenly distributed. This application does not limit this.
[0169] Optionally, this time range can be implemented as a time period between the time point of a preset time interval before the first time and the time point of a preset time interval after the first time. For example: the time range corresponding to the first time t is [t - ts, t + ts], where ts is the preset time interval. If t is 12:15 and ts is 15s, the time range is [12:00, 12:30], that is, the time range obtained for the time 12:15 is the time points within the time from 12:00 to 12:30, and there are n time points evenly distributed within this time range.
[0170] Obtain the rough positions of the first movable device at each of the n times, and obtain n positions. For example: in the time range of the first time a, four times 1 - 4 are evenly distributed. Time 1 corresponds to position 1, time 2 corresponds to position 2, time 3 corresponds to position 3, and time 4 corresponds to position 4. This rough position is used to identify the real-time position information corresponding to the first movable device at each time.
[0171] Exemplarily, obtain the positions and moving speeds of the first movable device at each of the n times. For example: in the time range of the first time a, four times 1 - 4 are evenly distributed. At time 1, the moving speed when the device passes through position 1 is s1, that is: [time 1, position 1, s1]; at time 2, the moving speed when the device passes through position 2 is s2, that is: [time 2, position 2, s2]; at time 3, the moving speed when the device passes through position 3 is s3, that is: [time 3, position 3, s3]; at time 4, the moving speed when the device passes through position 4 is s4, that is: [time 4, position 4, s4].
[0172] Based on the movement data of the first movable device at the n positions, calculate the residence intensity of each of the multiple positions covered within the preset geographical range, where the n positions are positions within the preset geographical range, and the n positions are some or all of the multiple positions.
[0173] Optionally, the mobile data includes the movement time, longitude and latitude, and movement speed corresponding to the first movable device when passing through this location. Among them, the movement time is the time when the movable device passes through this location, the longitude and latitude are the real-time position coordinates corresponding to this location, the movement speed is the speed at which the movable device travels / moves when passing through this location at this movement time, and the real-time position coordinates are longitude and latitude information.
[0174] Optionally, the preset geographical range is used to cover n positions. That is, obtain the longitude and latitude corresponding to each of the n positions, calculate the first value with the largest difference between the longitudes of each of the n positions, and the second value with the largest difference between the latitudes. The length range of the preset geographical range is greater than or equal to the second value, and the width range of the preset geographical range is greater than or equal to the first value.
[0175] Optionally, the staying intensity is used to characterize the probability that the first movable device stays at the current position at the first time. In the above steps, the real-time position of the first movable device is obtained, but the specific staying position of the first movable device is not determined. Therefore, this application needs to analyze the staying possibility of the positions near the obtained real-time position, that is, determine whether the first movable device may stay at this real-time position or calculate the staying probability at this real-time position.
[0176] Specifically, after determining the preset geographical range, calculate the staying intensity corresponding to each of the multiple positions in the preset geographical range. The multiple positions can be all or part of the positions in the preset geographical location. Based on the staying intensity of each of the multiple positions, determine the first position of the first movable device.
[0177] In the embodiment of this application, when determining the possible staying position of the first movable device, obtain multiple pieces of mobile data of the first movable device within the time range when it is at the first time. The mobile data is used to indicate the real-time position information of the first movable device. According to this real-time position information, determine the area where the first movable device may stay at the current position, and use this area as the first position. The purpose of predicting the possible staying position based on one real-time position is realized, and the range for subsequent matching with the service point is further expanded, so as to improve the accuracy of determining the appearance / existence of the candidate movable device in the service point.
[0178] In an optional embodiment, for the j-th position among the multiple positions in the preset geographical range, calculate the i-th intensity component based on at least one of the movement speed, relative time, and relative distance of the first movable device at the i-th position among the n positions. Among them, the relative time is used to indicate the time difference between the time corresponding to the i-th position and the first time, and the relative distance is used to indicate the distance difference between the i-th position and the j-th position. Both i and j are positive integers and i is not greater than n.
[0179] Optionally, the relative distance can be determined according to the longitude and latitude of the i-th position and the longitude and latitude of the j-th position. For example, if the longitude and latitude corresponding to the i-th position are [x1, y1], and the longitude and latitude corresponding to the j-th position are [x2, y2], the relative distance is the sum of the absolute values of the difference between the two longitudes and the absolute value of the difference between the two latitudes, or it can also be the square root of the sum of the square of the difference between the two longitudes and the square of the difference between the two latitudes.
[0180] Accumulate the n intensity components corresponding to the n positions to obtain the stay intensity at the j-th position.
[0181] In the embodiment of the present application, when the current object is moving using the first movable device, if the moving speed through a certain position is very fast, it means that the possibility that the current object makes the first movable device stay at this position is very low; if the time difference between the time when passing through a certain position and the current time is large, it also means that the possibility that the current object makes the first movable device stay at this position is very low; if the distance difference between a certain position passed through and the current position is large, it also means that the possibility that the first movable device stays at this position is very low.
[0182] Therefore, the moving time, relative time, and relative distance are used as influencing factors for determining the stay intensity corresponding to each position, that is, determining the stay intensity corresponding to each position is mainly based on at least one of the moving time, relative time, and relative distance.
[0183] In the embodiment of the present application, when determining the possible stay position of the first movable device, based on factors such as moving speed, relative time, and relative distance, the intensity component of the first movable device is determined, and the consideration that there is an interaction between the current calculation position and all other positions is introduced to further improve the accuracy of determining the possible stay position of the first movable device.
[0184] Optionally, the method for determining the i-th intensity component corresponding to the j-th position at the i-th position includes but is not limited to the following four cases.
[0185] First, on the premise that the moving speed is inversely correlated with the i-th intensity component, based on the moving speed of the first movable device at the i-th position among the n positions, the i-th intensity component is calculated. Optionally, the faster the moving speed, the smaller the i-th intensity component, which means that the probability that the first movable device stays at this position is smaller; the slower the moving speed, the larger the i-th intensity component, which means that the probability that the first movable device stays at this position is larger.
[0186] Second, on the premise that the relative time is inversely correlated with the i-th intensity component, the i-th intensity component is calculated based on the relative time of the first movable device at the i-th position among the n positions. Optionally, the longer the relative time, the smaller the i-th intensity component, which means that the probability of the first movable device staying at this position is relatively small; the shorter the relative time, the larger the i-th intensity component, which means that the probability of the first movable device staying at this position is relatively large.
[0187] Third, on the premise that the relative distance is inversely correlated with the i-th intensity component, the i-th intensity component is calculated based on the relative distance of the first movable device at the i-th position among the n positions. Optionally, the farther the relative distance, the smaller the i-th intensity component, which means that the probability of the first movable device staying at this position is relatively small; the closer the relative distance, the larger the i-th intensity component, which means that the probability of the first movable device staying at this position is relatively large.
[0188] Fourth, the i-th intensity component is calculated based on the relative distance, relative time, and moving speed. The reciprocal of the ratio of the square value of the relative distance to the square value of the moving speed is taken to obtain a first intermediate variable; based on the first intermediate variable minus the relative time difference, a second intermediate variable is obtained; based on the ratio of the second intermediate variable to the moving speed, the i-th intensity component is obtained. The specific process of calculating the i-th intensity component can refer to Formula 3 and Formula 4 below.
[0189] Formula 3:
[0190] In Formula 3, W i is the i-th intensity component corresponding to the j-th position, t i is the time difference between the time corresponding to the j-th position and the first time, d i is the moving speed corresponding to the i-th position, d i is the relative distance between the j-th position and the i-th position. Specifically, the calculation process of d i is determined based on the longitude and latitude of the j-th position and the longitude and latitude of the i-th position. The specific calculation process can refer to Formula 4 below.
[0191] Formula 4: d i =|x j -x i |+|y j -y i |;
[0192] In Formula 4, d i is the relative distance between the j-th position and the i-th position, x j is the latitude in the longitude and latitude of the j-th position, y j is the longitude in the longitude and latitude of the j-th position, x iis the dimension in the longitude and latitude of the i-th position, y i The longitude in the longitude and latitude of the j-th position.
[0193] In the embodiments of the present application, it is also necessary to accumulate n intensity components corresponding to n positions, and then the residence intensity of the j-th position can be obtained. Specifically, the residence intensity of the j-th position is determined based on the following formula 5.
[0194] Formula 5:
[0195] In formula 5, W j is the residence intensity corresponding to the j-th position, i is any one of the n positions, and W i is the i-th intensity component corresponding to the j-th position. Specifically, for the calculation process of W i please refer to the above formula 3.
[0196] In the embodiments of the present application, a method for determining the residence intensity based on image processing is also proposed. Specifically, please refer to the following content.
[0197] In the embodiments of the present application, the intensity component is affected by the moving speed, relative time, and relative distance. Among them, the moving speed, relative time, and relative distance are all negatively correlated with the intensity component. That is, the greater the moving speed, the greater the relative time, and the longer the relative distance, the smaller the corresponding intensity component. In one solution, the intensity component is calculated based on these three influencing factors at the same time, further improving the accuracy of determining the possible staying position of the first movable device.
[0198] According to the above formulas 3 to 5, determine the residence intensity of the first movable device at different positions at the first time. It is not difficult to obtain that the possible staying position corresponding to the first movable device at the first time is a position area, the size of this position area is determined by the moving speed, and the staying probability of each position in this position area is determined by the relative time.
[0199] Step 401: Determine at least one service point according to the distance between the first position and the surrounding service points; store the association relationship between the first movable device and at least one service point at the first time.
[0200] Optionally, after determining the first position of the first movable device, in response to the distance between the service point and the first position being less than the preset distance threshold, determine at least one service point from multiple service points, and store the association relationship between the first movable device and at least one service point at the first time.
[0201] Step 402: Repeat the above steps to obtain a set of association relationships.
[0202] Optionally, based on the same process as determining the association relationship between the first movable device and at least one service point at the first time, determine the association relationship between all movable devices and at least one service point at the specified time, and obtain the movable devices included in all service points at the specified time.
[0203] That is, the association relationship set includes the association relationships between all service points and at least one movable device included therein.
[0204] Step 403: Query the association relationship set. For each of the multiple service points, obtain at least one candidate movable device for each service point at its corresponding service time.
[0205] Optionally, based on the service records of the current object's use of movable devices within the historical time, determine multiple service points, and query at least one candidate movable device included in the multiple service points from the association relationship set.
[0206] Optionally, query the association relationships corresponding to the multiple service points from the association relationship set. For each of the multiple service points, obtain at least one candidate movable device for each service point at its corresponding service time, and then determine the multiple candidate movable devices corresponding to the multiple service points, so as to execute the process of determining the movable device for the current object in the above steps 200 to 202.
[0207] In the embodiments of the present application, without using the real-time positioning of the current object, through the service records of the current object's use of movable devices and the distribution of multiple candidate movable devices at multiple service points in the service records, the purpose of indirectly matching the movable device of the current object from multiple candidate movable devices is achieved. On the one hand, it is not necessary for the current object to manually input the device information of the movable device on the movable device, and the matching of the movable device is achieved without the current object's awareness. On the other hand, the distribution of candidate movable devices at multiple service points is directly converted into the probability of matching between the candidate movable device and the current object, further quantifying the possibility corresponding to each candidate movable device at the service point and matching it with the service point corresponding to the service record of the current object, further improving the efficiency of matching the movable device for the current object. On the other hand, it is not necessary to obtain the real-time positioning information of the current object in real time, which protects the positioning privacy of the current object to a certain extent and reduces the possibility of the current object's privacy being leaked.
[0208] In the embodiments of the present application, based on the location information of the first movable device, the possible staying locations of the first movable device at the first time (when at the first location) are determined, and then at least one service point is determined according to the location relationship between the possible staying locations and the surrounding service points; based on this method, a set of association relationships between the service points and the movable device is determined, and this set of association relationships directly shows the movable devices included in at least one service point at each time. Therefore, when the service points appearing in the service record are known, by directly querying from the set of association relationships, the multiple candidate movable devices corresponding to the multiple service points in the service record can be obtained, which reduces the computing cost of the server to a certain extent and improves the speed of screening the service points corresponding to the service record.
[0209] Combined with the content of the above embodiments, another method for determining the location of a movable device involved in the embodiments of the present application is further described. Figure 5 The flowchart showing the determination of the location of a movable device provided by another exemplary embodiment is based on Figure 4 the optional embodiment shown, step 400 includes Figure 5 steps 500 to 502 shown.
[0210] Step 500, generate a location trajectory image with the horizontal and vertical coordinates being longitude and latitude.
[0211] Optionally, based on the content of the above steps 400 to 403, it can be obtained that the intensity component at the jth location is affected by the moving speed, relative time, and relative distance.
[0212] When introducing image processing technology, based on the influence of moving speed, relative time, and relative distance on the intensity component, it can be analogized to the scenario of dripping ink. Ink is dripped at the longitude and latitude corresponding to the first time. The higher the height of dripping ink means the lighter the shade of the ink on the paper, and vice versa; the greater the force of dripping ink means the larger the spreading range of the ink on the paper, and vice versa. The height of dripping ink is analogized to relative time, and the force of dripping ink is analogized to moving speed. The faster the speed, the wider the coverage range of the ink mark, and the farther the relative time, the lighter the ink mark.
[0213] When designing the image processing method based on this principle, a location trajectory image is generated based on the longitudes and latitudes of n locations of the first movable device within the time range. The normal distribution method is used for processing, and the moving speed is regarded as the standard deviation of the normal distribution. The moving speed and the standard deviation are in a positive correlation relationship, that is, the faster the moving speed, the larger the standard deviation.
[0214] Optionally, the position trajectory image includes multiple pixel points. Based on the above formulas 3 to 5, values are assigned to the multiple pixel points in the position trajectory image, and the position trajectory image is updated based on the pixel value corresponding to each pixel point to obtain an updated position trajectory image. When calculating the pixel value corresponding to a pixel point, each pixel point has the same weight value. That is, before calculating each pixel point, the residence intensity corresponding to each pixel point is regarded as the same. After calculating the pixel value corresponding to each pixel point, the first position corresponding to the first movable device at the first time is determined based on the multiple pixel values. Optionally, the higher the pixel value, the greater the residence intensity, and the higher the probability that the first position meeting the requirements stays near the position corresponding to the pixel point.
[0215] In another optional embodiment, a position trajectory image with longitude and latitude as the horizontal and vertical coordinates is generated. The abscissa of the position trajectory image corresponds to latitude, and the ordinate corresponds to longitude. The position trajectory image includes multiple pixel points, and the multiple pixel points correspond to multiple positions one by one. The pixel values corresponding to the multiple pixel points are calculated using the above formulas 3 to 5. That is, the pixel values of the multiple pixel points correspond to the residence intensities of the multiple positions.
[0216] In the embodiment of the present application, the residence position corresponding to the first movable device is calculated by image processing technology. The intensity component corresponding to the position is converted into the pixel value of the pixel in the image, and the area (the first position) where the first movable device may stay at the first time is presented more clearly from a visual perspective, and improved. And combined with various image filtering technologies, the possible stay area (the first position) is further processed to improve the accuracy of determining the first position.
[0217] Step 501, through image filtering processing, determine the pixel area that meets the requirements in the position trajectory image.
[0218] Through image filtering processing, determine the pixel area that meets the requirements in the position trajectory image. Among them, the image filtering processing includes at least one of binary processing, morphological opening operation, and morphological closing operation. Among them, binary processing is used to indicate that the gray value corresponding to the pixel point on the position trajectory image is set to a preset gray value. For example, the preset gray value is 0 or 255, so that the entire position trajectory image presents a black and / or white visual effect. The morphological opening operation is used to indicate that the position trajectory image is first subjected to an image erosion operation and then a dilation operation to eliminate discrete pixel points in the position trajectory image, remove small noises, and thin boundaries. The morphological closing operation is used to indicate that the position trajectory image is first subjected to a dilation operation and then an image erosion operation to smooth the contour of the position trajectory image and fill the pixel area missing inside the position trajectory image.
[0219] Step 502, determine the first position in the pixel area.
[0220] Determine a first position in the pixel region. The first position is determined based on any one of the following three methods. Optionally, the first position can also be determined from the pixel region based on other methods, which are not limited in this application.
[0221] First, determine the pixel point corresponding to the center of gravity in the pixel region as the pixel point corresponding to the first position.
[0222] Second, perform weighted averaging on the pixel value of the same pixel point in the pixel region and the pixel value in the position trajectory image to obtain the pixel values of each pixel point in the new image; determine the pixel points in the new image whose pixel values meet the conditions as the pixel points corresponding to the first position.
[0223] Third, determine the longitude and latitude corresponding to the pixel point corresponding to the center of gravity in the pixel region as the first position of the mobile device; perform weighted averaging on the pixel value of a pixel point in the pixel region and the pixel value in the position trajectory image to obtain the pixel values of each pixel point in the new image; determine a plurality of pixel points in the new image whose pixel values meet the conditions as the stay range corresponding to the first position.
[0224] In the embodiments of this application, three different methods for calculating the pixel coordinates and pixel range corresponding to the pixel region are shown, achieving the purpose of flexibly calculating the position information corresponding to the first position.
[0225] That is, through the above methods, the possible stay position (first position), stay probability (pixel value), and stay range of the first mobile device at the first time can be obtained.
[0226] As Figure 6 shown, it shows the content of generating a position trajectory image based on the position coordinates of multiple positions. Obtain 8 GNSS coordinates within the time range [t - ts, t + ts] when the first mobile device is at time t. The 8 GNSS coordinates correspond to 8 positions. Among them, time t corresponds to the 5th position. Each GNSS coordinate includes the longitude and latitude corresponding to the position. Consider the latitude as the abscissa of the position trajectory image and the longitude as the ordinate of the position trajectory image to generate a position trajectory image covering 8 positions. The position trajectory image includes multiple pixel points. Use the determination method of the mobile device provided in the embodiments of this application to calculate the pixel value of each pixel point, and update the position trajectory image based on the pixel values of each pixel point to obtain the updated position trajectory image, as Figure 7 shown in the updated position trajectory image 70. Each of the 8 positions has a corresponding stay area. The pixel values of the stay areas corresponding to the 8 positions are different due to the influence of the moving speed, relative time, and relative distance corresponding to the position, as Figure 7As shown, the pixel value of the first vertical line filling area is greater than that of the horizontal line filling area, greater than that of the oblique line filling area, and greater than that of the second vertical line filling area, wherein the density of vertical lines in the first vertical line filling area is greater than that in the second vertical line filling area.
[0227] right Figure 7 The updated position trajectory image 70 shown is subjected to image filtering processing. For the specific image filtering processing process, please refer to Figure 8 . Figure 8 A processing flow for image filtering of an updated position trajectory image is shown. The pixel area corresponding to the pixel points that meet the requirements in the updated position trajectory image 80 is determined, and the pixel area corresponding to the pixel points that meet the requirements is determined as the first position 84. The first position 84 is binarized to obtain a black and white image 81. A morphological opening operation is performed on the black and white image 81 to eliminate the discrete pixel areas in the black and white image 81 to obtain an eliminated image 82. A morphological closing operation is then performed on the eliminated image 82 to eliminate the content space of the eliminated image 82 and restore the pixel area to obtain a first position pixel area 83. After obtaining the first position pixel area 83 corresponding to the first position, it is necessary to calculate the position coordinates and the stay range corresponding to the first position of the first position pixel area 83. For the specific calculation process, please refer to Figure 9 , Figure 9 A schematic flow chart of determining the first position is shown, wherein the center of gravity A of the first position pixel area 90 is obtained, and the center of gravity A is used as the position coordinate corresponding to the first position, wherein the coordinates of the center of gravity A are [q, u]; alternatively, the pixel values of all pixels in the first position pixel area 90 are calculated, and for any pixel point in the first position pixel area 90, the pixel value of the pixel point in the first position pixel area 90 and the pixel value of the updated position trajectory image are weighted averaged to obtain a new pixel value of the pixel point, and the above steps are repeated to obtain the pixel values corresponding to all pixels in the first position pixel area 90; the pixel points whose new pixel values meet the conditions are determined as the coordinates corresponding to the first position and the stay range 01, such as: determining the coordinates [q, u] of the first position and the stay range f corresponding to the first position.
[0228] In the embodiment of the present application, in the case where the real-time positioning of the current object is not required, by using the service record of the service used by the current object for the movable device and the distribution of multiple candidate movable devices at multiple service points in the service record, the purpose of indirectly matching the movable device of the current object from multiple candidate movable devices is achieved. On the one hand, it is not necessary for the current object to manually input the device information of the movable device on the movable device, and the matching of the movable device is achieved without the awareness of the current object. On the other hand, the distribution of the candidate movable devices at multiple service points is directly converted into the probability of matching the candidate movable device with the current object, further quantifying the possibility corresponding to each candidate movable device under the service point, and effectively improving the efficiency of matching the movable device for the current object.
[0229] Combined with the above description, the determination method of the movable device provided in another exemplary embodiment involved in the embodiment of the present application is described. Figure 10 It is a flowchart of the determination method of the movable device provided by an exemplary embodiment of the present application, which is described by applying this method to a server. As Figure 10 shown, this method includes:
[0230] Step 1000, obtain the service record of the current object.
[0231] Optionally, taking the current object implemented as a user as an example, the current object uses the intelligent Zhongdao view terminal to complete the service used for the movable device, and the intelligent terminal stores the service record corresponding to the service.
[0232] Optionally, the service record includes multiple service points and the service time corresponding to each service point.
[0233] Optionally, the service record also includes the service type corresponding to multiple service points.
[0234] The intelligent terminal corresponding to the current object learns through the background that the user used a fuel coupon in application a at a certain time t. Application a determines the corresponding service point according to the service information. For example, the service point corresponding to the fuel coupon is a gas station, and the GNSS coordinates (longitude and latitude) corresponding to the service point are determined according to the GIS system, so as to establish a record that the user performed a fuel service at service point a at time t. This service can also be charging, parking, driving on behalf of others, etc. Finally, a service record including the service time (timestamp), service point, and service type is generated.
[0235] For the specific generation process and acquisition process of the service record, please refer to step 200, which will not be elaborated here.
[0236] Step 1001, obtain the service time and service point corresponding to the service record.
[0237] Optionally, at least one piece of information of the corresponding service time, service type, and service point is obtained from multiple service records generated according to each application program in the smart terminal or application programs serving the removable device.
[0238] Step 1002: Obtain the device stop point of the removable device.
[0239] Optionally, the removable device obtains its own GNSS position information at a certain frequency, and the GNSS position information includes at least one of longitude and latitude, time, and moving speed.
[0240] Optionally, the device stop point of the removable device is determined according to the GNSS position information of the removable device.
[0241] In this embodiment, the device stop point of the removable device is calculated based on the stop point recognition algorithm based on the image processing technology shown in the above step 300, which will not be elaborated here.
[0242] Step 1003: Store the device stop point corresponding to the removable device.
[0243] Optionally, after determining the device stop point of the removable device at the corresponding time, the information included in the device stop point is uploaded and stored in the background of the removable device for use in the subsequent matching process.
[0244] Optionally, a clustering algorithm centered on service points (gas stations, charging piles, parking lot entrances and exits) is used to associate the device stop point with one or more service points. For example, service points less than a certain threshold are associated with the device stop point. Here, the distance refers to the distance between the device stop point and the service point. Optionally, the distance thresholds corresponding to service points of different service types are different. For example, the distance threshold for service points corresponding to parking is greater than the distance threshold for service points corresponding to refueling. Based on the position, time, and moving speed of the service point, it is possible to directly obtain all possible removable devices that may stop near the service point at that moment and the device information corresponding to the removable device (the device information is used to uniquely represent the removable device).
[0245] Optionally, the position information of all service points is pre-stored in the removable device. In response to the distance between the removable device and the service point being less than the threshold, the algorithm process for calculating the device stop point of the removable device is started to further reduce the performance consumption of the removable device.
[0246] Step 1004: Determine whether the service record meets the start condition.
[0247] Optionally, the start condition can be implemented as the preset condition introduced in the above step 200, which will not be elaborated here.
[0248] In response to the service record meeting the start condition, the subsequent steps 1005 to 1009 are executed.
[0249] In response to the service record not meeting the start condition, step 1001 is executed to continue accumulating sufficient service records.
[0250] Step 1005: Screen the stored device stop points and service records layer by layer.
[0251] Optionally, after the above steps, the server has obtained the current corresponding service record set, and the device stop points of movable devices near each service point at different times. The service record set includes multiple service points and the service times corresponding to each service point when providing services.
[0252] In the service record set, each service record is taken out in reverse chronological order. For each service record, query the device codes of the multiple movable devices that stayed near the service point corresponding to this service record at a certain moment of this service record. Calculate the score of each movable device under multiple service points based on the multiple device codes. This score can be calculated based on formulas 3 to 5 in step 400 above, which will not be elaborated here.
[0253] Step 1006: Calculate the contribution degree of each device stop point.
[0254] After obtaining the scores corresponding to each movable device, calculate the contribution degrees corresponding to the multiple scores.
[0255] Optionally, use formulas 1 and 2 in step 300 above to calculate the Rank corresponding to each movable device as the contribution degree of each movable device. The specific calculation process will not be elaborated here.
[0256] Step 1007: Sort the contribution degrees corresponding to each device stop point.
[0257] Optionally, sort the multiple contribution degrees in ascending or descending order.
[0258] Step 1008: Determine whether each contribution degree meets the preset contribution degree threshold.
[0259] Optionally, compare each contribution degree with the preset contribution degree threshold. If there is one contribution degree among the contribution degrees that meets the preset contribution degree threshold, execute the subsequent step 1009. If not, execute step 1002.
[0260] That is to say, if there are movable devices that meet the contribution degree threshold, enter the subsequent service recommendation process. If not, it means that the stop points corresponding to the movable devices are not collected enough, and continue to collect stop points.
[0261] Optionally, determine the movable device of the current object from the candidate movable devices among the multiple movable devices whose contribution degree is greater than a preset contribution degree threshold; or, determine the movable devices among the multiple movable devices whose contribution degrees are among the top k as the movable devices of the current object, where k is a positive integer.
[0262] Step 1009: Perform service recommendation for the current object.
[0263] Optionally, after matching a movable device for the current object, relevant services for the movable device can be recommended for the current object.
[0264] Optionally, obtain the device identification code corresponding to the determined movable device and the object identification code of the current object. Among them, the device identification code is used to uniquely identify the movable device, such as: vehicle identification number; the object identification code is used to uniquely identify the current object, which can be the device identification code corresponding to the smart terminal used by the current object, or the account identification code corresponding to the account logged in by the current object in the smart terminal, etc.
[0265] The movable device continuously obtains the connection between its own operation law and the service usage law.
[0266] Optionally, take obtaining its own operation law as an example for illustration. For example: The service occurrence of the movable device is related to the driving distance of the movable device. Schematically, the movable device needs to be maintained once every time it moves a preset number of kilometers; at this time, obtain the total moving distance recording the current service occurrence time, judge the relationship between the total moving distance and the preset number of kilometers, and in response to the difference between the total moving distance and the preset number of kilometers being less than a preset difference, and when there is a service point of a specified service type within a preset distance of the device stop point of the movable device, push relevant service information to the current object or the movable device. For example: The total moving distance is 900 kilometers, which is 100 kilometers away from the preset number of kilometers of 1000 kilometers, meeting the condition of being less than the preset difference. Then when there is a maintenance service type service point near the stop point corresponding to the movable device, send maintenance-related coupons or maintenance introduction information, etc. to the current object and / or the movable device.
[0267] Optionally, taking obtaining its own operation pattern as an example for illustration. Obtain the service records corresponding to the same type of service for the current object, and generate the service usage pattern corresponding to this service type. For example: After the user has driven 300 km multiple times, they go to the corresponding gas station for refueling service. Based on this service usage pattern, determine whether the next service of the movable device conforms to this service usage pattern. If it conforms, push service recommendation information related to this service type to the current object and / or the movable device. For example: If the user is used to refueling every 300 km, send a fuel coupon to the user after they have driven 290 km again, or if the user is used to washing the car at certain locations, send a car wash-related coupon when the vehicle arrives at this location again. The same applies to other services.
[0268] Optionally, this service recommendation can be sent to the smart terminal used by the current object, or can be sent to the movable device. This application does not limit this.
[0269] In the embodiment of this application, if the movable device is not logged in to any application corresponding to the service, the service recommendation is directly sent to the smart terminal used by the current object. This greatly expands the scope of the recommendation. For example: The user does not always look at the notifications and screen of the movable device, but always carries the smart terminal with them.
[0270] In the embodiment of this application, it is also possible to push the information corresponding to the service points near the device stop point for the user if the stay frequency of the movable device at the corresponding device stop point exceeds the preset frequency. The device stop point can be one or multiple. This application does not limit this. When there are multiple, obtain the distances between the multiple device stop points. Push the information corresponding to the service points in the intersection area of the multiple device stop points to the user. For example: The movable device often passes by shopping mall A and office building B, and recommend the stores near these two locations to the user.
[0271] In another scenario, it is also possible to use the contribution degree calculated above to determine whether the device information filled in by the current object in the movable device is incorrect. For example: filling in the wrong license plate in the parking payment service. It only needs to be that the contribution degree calculated above is much smaller than a certain contribution degree threshold. For example: The user fills in license plate X for vehicle a, but when identifying or recording the parking lot corresponding to license plate X for vehicle b, the stay point given by vehicle a cannot be detected when the user makes a parking payment. At this time, it is determined that the user has filled in the wrong license plate information for vehicle a, and a reminder message for incorrect filling of device information is pushed to the user and / or the vehicle separately or simultaneously.
[0272] This is because as long as the access control gate in the parking lot scans the user's license plate, it can know that the user is in a certain parking lot, and thus know the location of the parking lot. At the same time, through the above algorithm, it can know the location where the vehicle corresponding to the device stays. By matching the relationship between the location of the parking lot and the device stay point, it can be determined whether the user has filled in the wrong license plate. That is, in response to the contribution degree being less than the specified threshold, a reminder message of incorrect information filling is pushed to the current object and the movable device at the same time.
[0273] In the embodiment of the present application, without using the real-time positioning of the current object, through the service record of the service used by the current object for the movable device and the distribution of multiple candidate movable devices at multiple service points in the service record, the purpose of indirectly matching the movable device of the current object from multiple candidate movable devices is achieved. On the one hand, there is no need for the current object to manually input the device information of the movable device on the movable device, and the matching of the movable device is achieved without the current object's awareness. On the other hand, the distribution of multiple candidate movable devices at multiple service points is directly converted into the probability of matching between the candidate movable devices and the current object, further quantifying the possibility corresponding to each candidate movable device under the service point, and effectively improving the efficiency of matching the movable device for the current object.
[0274] Please refer to Figure 11 , which shows a structural block diagram of a determining device for a movable device provided by an exemplary embodiment of the present application. The device includes an acquisition module 1100 and a determination module 1101.
[0275] The acquisition module 1100 is configured to acquire a service record of the service used by the current object for the movable device in a historical time period. The service record includes multiple service points and the service time corresponding to each of the multiple service points.
[0276] The acquisition module 1100 is further configured to acquire at least one candidate movable device around each service point at the corresponding service time among the multiple service points, to obtain multiple candidate movable devices, and at least one candidate movable device among the multiple candidate movable devices corresponds to some or all of the multiple service points.
[0277] The determination module 1101 is configured to determine the movable device of the current object from the multiple candidate movable devices according to the distribution of the multiple candidate movable devices at the multiple service points.
[0278] In an optional embodiment, as Figure 12 shown, the determination module 1101 is further configured to determine a score of at least one candidate movable device corresponding to any one of the multiple service points.
[0279] The cumulative module 1102 is configured to, for any one of the multiple candidate movable devices, accumulate the scores obtained by the candidate movable device at the multiple service points to obtain a total score;
[0280] The determining module 1101 is further configured to determine, as the movable device of the current object, the candidate movable device among the multiple candidate movable devices whose total score meets the requirements.
[0281] In an optional embodiment, as Figure 12 shown, the determining module 1101 is further configured to determine a target score calculation method from a variety of preset score calculation methods according to the service type of the service point;
[0282] The calculation module 1103 is configured to calculate, according to the target score calculation method, the scores of at least one candidate movable device corresponding to the service point.
[0283] In an optional embodiment, as Figure 12 shown, the cumulative module 1102 is further configured to accumulate the scores of the at least one candidate movable device to obtain a score sum value;
[0284] The calculation module 1103 is further configured to calculate, respectively, the ratio of the score of each candidate movable device among the at least one candidate movable device to the score sum value to obtain the updated scores of the respective candidate movable devices.
[0285] In an optional embodiment, as Figure 12 shown, the determining module 1101 is further configured to determine, based on the service type of the service point, the service point score corresponding to the service point;
[0286] The calculation module 1103 is further configured to calculate, based on the service point score, the scores of at least one candidate movable device corresponding to the service point.
[0287] In an optional embodiment, as Figure 12 shown, the obtaining module 1100 is further configured to obtain the time difference between the current moment and the service time corresponding to the service point;
[0288] The determining module 1101 is further configured to determine, based on the time difference, the scores of at least one candidate movable device corresponding to the service point, such that the scores have a negative correlation with the time difference.
[0289] In an optional embodiment, as Figure 12As shown, the calculation module 1103 is further configured to perform weighted average processing on the total scores of the multiple candidate mobile devices respectively to obtain an average score;
[0290] The calculation module 1103 is further configured to calculate the ratio of the total score of each of the multiple candidate mobile devices to the average score to obtain a plurality of score ratios, and the plurality of score ratios correspond to the multiple candidate mobile devices one by one;
[0291] The determination module 1101 is further configured to determine, as the mobile device of the current object, the candidate mobile device among the multiple candidate mobile devices whose score ratio is greater than the ratio threshold; or, determine, as the mobile device of the current object, the candidate mobile devices among the multiple candidate mobile devices whose score ratios are among the top k, where k is a positive integer.
[0292] In an optional embodiment, as Figure 12 shown, the acquisition module 1100 is further configured to acquire a first position where a first mobile device is located at a first time, where the first mobile device is any first mobile device and the first time is any time;
[0293] The determination module 1101 is further configured to determine at least one service point according to the distance between the first position and the surrounding service points; store the association relationship between the first mobile device and the at least one service point at the first time;
[0294] The determination module 1101 is further configured to repeat the above steps to obtain an association relationship set, where the association relationship set includes the mobile devices corresponding to each of the multiple service points at each time;
[0295] The query module 1104 is configured to query the association relationship set, and for each of the multiple service points, acquire the at least one candidate mobile device of each service point at its corresponding service time.
[0296] In an optional embodiment, as Figure 12 shown, the determination module 1101 is further configured to determine a time range in which the first time is located, where the time range includes n times and n is a positive integer;
[0297] The acquisition module 1100 is further configured to acquire the positions of the first mobile device at each of the n times to obtain n positions;
[0298] The calculation module 1103 is further configured to calculate the stay intensity of each of the multiple locations covered by the preset geographical range based on the movement data of the first movable device at the n locations, where the n locations are some or all of the multiple locations, and the stay intensity is used to represent the probability that the first movable device stays at the current location at the first time;
[0299] The determination module 1101 is further configured to determine the first location based on the stay intensity of each of the multiple locations.
[0300] In an alternative embodiment, as Figure 12 shown, for the j-th location among the multiple locations in the preset geographical range, the calculation module 1103 is further configured to calculate the i-th intensity component based on at least one of the movement speed, relative time, and relative distance of the first movable device at the i-th location among the n locations, where the relative time is used to indicate the time difference between the time corresponding to the i-th location and the first time, and the relative distance is used to indicate the distance difference between the i-th location and the j-th location, and both i and j are positive integers and i is not greater than n;
[0301] The accumulation module 1102 is further configured to accumulate the n intensity components corresponding to the n locations to obtain the stay intensity of the j-th location.
[0302] In an alternative embodiment, as Figure 12 shown, the calculation module 1103 is further configured to calculate the i-th intensity component based on the movement speed of the first movable device at the i-th location among the n locations on the premise that the movement speed is inversely correlated with the i-th intensity component.
[0303] In an alternative embodiment, as Figure 12 shown, the calculation module 1103 is further configured to calculate the i-th intensity component based on the relative time of the first movable device at the i-th location among the n locations on the premise that the relative time is inversely correlated with the i-th intensity component.
[0304] In an alternative embodiment, as Figure 12 shown, the calculation module 1103 is further configured to calculate the i-th intensity component based on the relative distance of the first movable device at the i-th location among the n locations on the premise that the relative distance is inversely correlated with the i-th intensity component.
[0305] In an alternative embodiment, as Figure 12As shown, the calculation module 1103 is further configured to invert the ratio of the square value of the relative distance to the square value of the moving speed to obtain a first intermediate variable;
[0306] The calculation module 1103 is further configured to obtain a second intermediate variable based on subtracting the relative time difference from the first intermediate variable;
[0307] The calculation module 1103 is further configured to obtain the i-th intensity component based on the ratio of the second intermediate variable to the moving speed.
[0308] In an alternative embodiment, as Figure 12 shown, the generation module 1105 is configured to generate a position trajectory image with longitude and latitude as the horizontal and vertical coordinates. The position trajectory image includes a plurality of pixel points, and the plurality of pixel points correspond to the plurality of positions one by one. The pixel values of the plurality of pixel points are obtained based on the residence intensities of the plurality of positions;
[0309] The processing module 1106 is configured to determine a pixel region meeting the requirements in the position trajectory image through image filtering processing, and the image filtering processing includes at least one of binary processing, morphological opening operation, and morphological closing operation;
[0310] The determination module 1101 is further configured to determine the first position in the pixel region.
[0311] In an alternative embodiment, as Figure 12 shown, the determination module 1101 is further configured to determine the pixel point corresponding to the center of gravity in the pixel region as the pixel point corresponding to the first position;
[0312] Or,
[0313] The determination module 1101 is further configured to perform weighted averaging on the pixel value of the same pixel point in the pixel region and the pixel value in the position trajectory image to obtain the pixel values of each pixel point in the new image; and determine the pixel points whose pixel values meet the conditions in the new image as the pixel points corresponding to the first position.
[0314] In the device provided in the embodiment of the present application, without using the real-time positioning of the current object, through the service record of the service used by the current object for the movable device and the distribution of multiple candidate movable devices at multiple service points in the service record, the purpose of indirectly matching the movable device of the current object from multiple candidate movable devices is achieved. On the one hand, there is no need for the current object to manually input the device information of the movable device on the movable device, and the matching of the movable device is achieved without the perception of the current object. On the other hand, the distribution of the candidate movable devices at multiple service points is directly converted into the probability of matching the candidate movable devices with the current object, further quantifying the possibilities corresponding to each candidate movable device under the service point, and effectively improving the efficiency of matching the movable device for the current object.
[0315] It should be noted that: the determining device for the movable device provided in the above embodiment is only illustrated by dividing the above functional modules. In practical applications, the above functions can be allocated to different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the determining device for the movable device provided in the above embodiment and the embodiment of the determining method for the movable device belong to the same concept, and the specific implementation process is detailed in the method embodiment, which will not be repeated here.
[0316] Figure 13 It is a schematic structural diagram of a server shown according to an exemplary embodiment. The server 1200 includes a central processing unit (CPU) 1201, a system memory 1204 including a random access memory (RAM) 1202 and a read-only memory (ROM) 1203, and a system bus 1205 connecting the system memory 1204 and the central processing unit 1201. The server 1200 also includes a basic input / output system (I / O system) 1206 for facilitating the transmission of information between various components within the server, and a mass storage device 1207 for storing an operating system 1213, application programs 1214, and other program modules 1215.
[0317] The basic input / output system 1206 includes a display 1208 for displaying information and input devices 1209 such as a mouse and a keyboard for user input of information. Both the display 1208 and the input devices 1209 are connected to the central processing unit 1201 through an input / output controller 1210 connected to the system bus 1205. The basic input / output system 1206 may also include an input / output controller 1210 for receiving and processing inputs from a plurality of other devices such as a keyboard, a mouse, or an electronic stylus. Similarly, the input / output controller 1210 also provides outputs to a display screen, a printer, or other types of output devices.
[0318] The mass storage device 1207 is connected to the central processing unit 1201 through a mass storage controller (not shown) connected to the system bus 1205. The mass storage device 1207 and its associated server-readable medium provide non-volatile storage for the server 1200. That is, the mass storage device 1207 may include server-readable media (not shown) such as a hard disk or a compact disc read-only memory (CD-ROM) drive.
[0319] Without loss of generality, the computer device-readable media may include computer device storage media and communication media. Computer device storage media includes volatile and non-volatile, removable and non-removable media implemented by any method or technology for storing information such as computer device-readable instructions, data structures, program modules, or other data. Computer device storage media includes RAM, ROM, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), CD-ROM, digital video disc (DVD), or other optical storage, magnetic tape cartridges, tapes, disk storage, or other magnetic storage devices. Of course, those skilled in the art will appreciate that the computer device storage media is not limited to the above several types. The above-mentioned system memory 1204 and mass storage device 1207 may be collectively referred to as memory.
[0320] According to various embodiments of the present disclosure, the server 1200 may also run through a network such as the Internet connected to remote computer devices on the network. That is, the server 1200 may be connected to the network 1211 through the network interface unit 1212 connected to the system bus 1205, or in other words, the network interface unit 1212 may also be used to connect to other types of networks or remote computer device systems (not shown).
[0321] The memory further includes one or more programs, and the one or more programs are stored in the memory. The central processing unit 1201 implements all or part of the steps of the above model training method or behavior encoding method by executing the one or more programs.
[0322] Figure 14 The structural block diagram of a computer device 1300 provided by an exemplary embodiment of the present application is shown. The computer device 1300 may be a portable mobile terminal, such as: a smart phone, a tablet computer, an MP3 player (Moving Picture Experts Group Audio Layer III), an MP4 (Moving Picture Experts Group Audio Layer IV) player, a laptop computer or a desktop computer. The computer device 1300 may also be referred to by other names such as a user device, a portable terminal, a laptop terminal, a desktop terminal, etc. Optionally, the computer device 1300 may also be implemented as a mobile device, such as a mobile intelligent terminal like a vehicle-mounted terminal.
[0323] Generally, the computer device 1300 includes: a processor 1301 and a memory 1302.
[0324] The processor 1301 may include one or more processing cores, such as a quad-core processor, an octa-core processor, etc. The processor 1301 may be implemented in at least one hardware form of DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), or PLA (Programmable Logic Array). The processor 1301 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the wake state, also known as the CPU (Central Processing Unit); the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor 1301 may be integrated with a GPU (Graphics Processing Unit), and the GPU is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 1301 may further include an AI (Artificial Intelligence) processor, and the AI processor is used to process computational operations related to machine learning.
[0325] The memory 1302 may include one or more computer-readable storage media, and the computer-readable storage media may be non-transitory. The memory 1302 may further include high-speed random access memory and non-volatile memory, such as one or more disk storage devices and flash storage devices. In some embodiments, the non-transitory computer-readable storage media in the memory 1302 is used to store at least one instruction, and the at least one instruction is used to be executed by the processor 1301 to implement the model training method or behavior encoding method provided in the method embodiments of the present application.
[0326] In some embodiments, the computer device 1300 may further optionally include: a peripheral device interface 1303 and at least one peripheral device. The processor 1301, the memory 1302, and the peripheral device interface 1303 may be connected by a bus or signal lines. Each peripheral device may be connected to the peripheral device interface 1303 through a bus, signal lines, or a circuit board. Exemplarily, the peripheral device may include at least one of a radio frequency circuit 1304, a display screen 1305, a camera assembly 1306, an audio circuit 1307, a positioning assembly 1315, and a power supply 1308.
[0327] The peripheral device interface 1303 can be used to connect at least one I / O (Input / Output) related peripheral device to the processor 1301 and the memory 1302. In some embodiments, the processor 1301, the memory 1302, and the peripheral device interface 1303 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 1301, the memory 1302, and the peripheral device interface 1303 can be implemented on separate chips or circuit boards, and this embodiment does not limit this.
[0328] The radio frequency circuit 1304 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. The radio frequency circuit 1304 communicates with the communication network and other communication devices through electromagnetic signals. The radio frequency circuit 1304 converts an electrical signal into an electromagnetic signal for transmission, or converts the received electromagnetic signal into an electrical signal. Optionally, the radio frequency circuit 1304 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a subscriber identity module card, and so on. The radio frequency circuit 1304 can communicate with other terminals through at least one wireless communication protocol. The wireless communication protocol includes but is not limited to: the World Wide Web, a metropolitan area network, an intranet, each generation of mobile communication networks (2G, 3G, 4G, and 5G), a wireless local area network, and / or a WiFi (Wireless Fidelity) network. In some embodiments, the radio frequency circuit 1304 may further include a circuit related to NFC (Near Field Communication), and this application does not limit this.
[0329] The display screen 1305 is used to display the UI (User Interface). The UI may include graphics, text, icons, videos, and any combination thereof. When the display screen 1305 is a touch display screen, the display screen 1305 also has the ability to collect touch signals on or above the surface of the display screen 1305. The touch signals can be input as control signals to the processor 1301 for processing. At this time, the display screen 1305 can also be used to provide virtual buttons and / or a virtual keyboard, also known as soft buttons and / or a soft keyboard. In some embodiments, there may be one display screen 1305, which is provided on the front panel of the computer device 1300; in other embodiments, there may be at least two display screens 1305, which are respectively provided on different surfaces of the computer device 1300 or are in a foldable design; in other embodiments, the display screen 1305 may be a flexible display screen, which is provided on the curved surface or the folding surface of the computer device 1300. Even further, the display screen 1305 can also be set to an irregular non-rectangular shape, that is, an irregular-shaped screen. The display screen 1305 can be prepared using materials such as LCD (Liquid Crystal Display) and OLED (Organic Light-Emitting Diode).
[0330] The camera module 1306 is used to capture images or videos. Optionally, the camera module 1306 includes a front camera and a rear camera. Generally, the front camera is provided on the front panel of the terminal, and the rear camera is provided on the back of the terminal. In some embodiments, there are at least two rear cameras, which are any one of a main camera, a depth-of-field camera, a wide-angle camera, and a telephoto camera, so as to implement functions such as background blurring by fusing the main camera and the depth-of-field camera, panoramic shooting by fusing the main camera and the wide-angle camera, and VR (Virtual Reality) shooting function or other fused shooting functions. In some embodiments, the camera module 1306 may further include a flash. The flash can be a single-color-temperature flash or a two-color-temperature flash. A two-color-temperature flash refers to a combination of a warm-light flash and a cold-light flash, which can be used for light compensation under different color temperatures.
[0331] The audio circuit 1307 may include a microphone and a speaker. The microphone is used to collect sound waves of the user and the environment, and convert the sound waves into electrical signals for input to the processor 1301 for processing, or input to the radio frequency circuit 1304 to implement voice communication. For the purpose of stereo collection or noise reduction, there may be multiple microphones, which are respectively arranged at different parts of the computer device 1300. The microphone may also be an array microphone or an omnidirectional collection microphone. The speaker is used to convert the electrical signal from the processor 1301 or the radio frequency circuit 1304 into sound waves. The speaker may be a traditional thin film speaker or a piezoelectric ceramic speaker. When the speaker is a piezoelectric ceramic speaker, it can not only convert the electrical signal into sound waves audible to humans, but also convert the electrical signal into sound waves inaudible to humans for uses such as ranging. In some embodiments, the audio circuit 1307 may further include a headphone jack.
[0332] The positioning component 1315 is used to locate the current geographical location of the computing device 1300 to implement navigation or LBS (Location Based Service). The positioning component 908 may be a positioning component based on the US GPS (Global Positioning System) or the Chinese Beidou system.
[0333] The power supply 1308 is used to supply power to each component in the computer device 1300. The power supply 1308 may be alternating current, direct current, a disposable battery or a rechargeable battery. When the power supply 1308 includes a rechargeable battery, the rechargeable battery may be a wired rechargeable battery or a wireless rechargeable battery. A wired rechargeable battery is a battery charged through a wired line, and a wireless rechargeable battery is a battery charged through a wireless coil. The rechargeable battery can also be used to support fast charging technology.
[0334] In some embodiments, the computer device 1300 further includes one or more sensors 1309. The one or more sensors 1309 include but are not limited to: an acceleration sensor 1310, a gyroscope sensor 1311, a pressure sensor 1312, an optical sensor 1313, and a proximity sensor 1314.
[0335] The acceleration sensor 1310 can detect the magnitude of acceleration on the three coordinate axes of the coordinate system established with the computer device 1300. For example, the acceleration sensor 1310 can be used to detect the components of the gravitational acceleration on the three coordinate axes. The processor 1301 can control the display screen 1305 to display the user interface in a landscape view or a portrait view according to the gravitational acceleration signal collected by the acceleration sensor 1310. The acceleration sensor 1310 can also be used for collecting game or user movement data.
[0336] The gyroscope sensor 1311 can detect the body direction and rotation angle of the computer device 1300. The gyroscope sensor 1311 can cooperate with the acceleration sensor 1310 to collect the user's 3D actions on the computer device 1300. Based on the data collected by the gyroscope sensor 1311, the processor 1301 can implement the following functions: motion sensing (such as changing the UI according to the user's tilting operation), image stabilization during shooting, game control, and inertial navigation.
[0337] The pressure sensor 1312 can be disposed on the side frame of the computer device 1300 and / or the lower layer of the display screen 1305. When the pressure sensor 1312 is disposed on the side frame of the computer device 1300, it can detect the holding signal of the user on the computer device 1300, and the processor 1301 can perform left / right hand recognition or quick operation according to the holding signal collected by the pressure sensor 1312. When the pressure sensor 1312 is disposed on the lower layer of the display screen 1305, the processor 1301 can control the operable controls on the UI interface according to the user's pressure operation on the display screen 1305. The operable controls include at least one of button controls, scroll bar controls, icon controls, and menu controls.
[0338] The optical sensor 1313 is used to collect the ambient light intensity. In one embodiment, the processor 1301 can control the display brightness of the display screen 1305 according to the ambient light intensity collected by the optical sensor 1313. For example, when the ambient light intensity is high, the display brightness of the display screen 1305 is increased; when the ambient light intensity is low, the display brightness of the display screen 1305 is decreased. In another embodiment, the processor 1301 can also dynamically adjust the shooting parameters of the camera module 1306 according to the ambient light intensity collected by the optical sensor 1313.
[0339] The proximity sensor 1314, also known as the distance sensor, is usually disposed on the front panel of the computer device 1300. The proximity sensor 1314 is used to collect the distance between the user and the front of the computer device 1300. In one embodiment, when the proximity sensor 1314 detects that the distance between the user and the front of the computer device 1300 is gradually decreasing, the processor 1301 controls the display screen 1305 to switch from the lit state to the off state; when the proximity sensor 1314 detects that the distance between the user and the front of the computer device 1300 is gradually increasing, the processor 1301 controls the display screen 1305 to switch from the off state to the lit state.
[0340] Those skilled in the art can understand that Figure 13 the structure shown in
[0341] The present application also provides a computer-readable storage medium, in which at least one instruction, at least one program, a code set or an instruction set is stored, and the at least one instruction, the at least one program, the code set or the instruction set is loaded and executed by a processor to implement the method for determining a movable device provided in the above method embodiment.
[0342] The present application provides a computer program product or a computer program, the computer program product or the computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the method for determining a movable device provided in the above method embodiment.
[0343] Those of ordinary skill in the art can understand that all or part of the steps for implementing the above embodiments can be completed by hardware, or can be completed by a program instructing relevant hardware. The program mentioned above can be stored in a computer-readable storage medium, and the storage medium mentioned above can be a read-only memory, a magnetic disk or an optical disc, etc.
[0344] The above are only the preferred embodiments of the present application and are not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.
Claims
1. A determination method for a mobile device, characterized in that, The method includes: Obtaining a service record of services used by a current object for a movable device within a historical time period, where the service record includes a plurality of service points and service times respectively corresponding to the plurality of service points; Obtaining at least one candidate movable device around each of the plurality of service points at their respective corresponding service times, to obtain a plurality of candidate movable devices, where at least one candidate movable device in the plurality of candidate movable devices corresponds to some or all of the plurality of service points; Determining the movable device of the current object from the plurality of candidate movable devices according to the distribution of the plurality of candidate movable devices at the plurality of service points.
2. The method according to claim 1, wherein The determining the movable device of the current object from the plurality of candidate movable devices according to the distribution of the plurality of candidate movable devices at the plurality of service points includes: For any one of the plurality of service points, determining the score of at least one candidate movable device corresponding to the service point; For any one of the plurality of candidate movable devices, accumulating the scores obtained by the candidate movable device at the plurality of service points to obtain a total score; Determining the candidate movable device whose total score meets the requirements among the plurality of candidate movable devices as the movable device of the current object.
3. The method according to claim 2, wherein The determining the score of at least one candidate movable device corresponding to the service point includes: Determining a target score calculation method from a plurality of preset score calculation methods according to the service type of the service point; Calculating the score of at least one candidate movable device corresponding to the service point according to the target score calculation method.
4. The method according to claim 3, characterized in that, The method further includes: Accumulating the scores of the at least one candidate movable device to obtain a score sum value; Respectively calculating the ratio of the score of each candidate movable device in the at least one candidate movable device to the score sum value to obtain the updated scores of the respective candidate movable devices.
5. The method according to claim 2, wherein The determining the score of at least one candidate movable device corresponding to the service point includes: Determining a service point score corresponding to the service point based on the service type of the service point; Calculating the score of at least one candidate movable device corresponding to the service point based on the service point score.
6. The method according to claim 2, wherein The determining the score of at least one candidate movable device corresponding to the service point includes: Obtaining the time difference between the current moment and the service time corresponding to the service point; Determining the score of at least one candidate movable device corresponding to the service point based on the time difference, such that the score has a negative correlation with the time difference.
7. The method according to claim 2, characterized in that The determining the candidate movable device whose total score meets the requirements among the plurality of candidate movable devices as the movable device of the current object includes: Performing weighted average processing on the total scores of the plurality of candidate movable devices respectively to obtain an average score; Calculating the ratio of the total score of each of the plurality of candidate movable devices to the average score to obtain a plurality of score ratios, where the plurality of score ratios correspond one by one to the plurality of candidate movable devices; Determine the candidate movable devices among the multiple candidate movable devices whose score ratios are greater than the ratio threshold as the movable devices of the current object; or, determine the candidate movable devices among the multiple candidate movable devices with the top k largest score ratios as the movable devices of the current object, where k is a positive integer.
8. The method according to any one of claims 1 to 7, characterized in that The obtaining of at least one candidate movable device around each service point among the multiple service points at their respective corresponding service times to obtain multiple candidate movable devices includes: Obtain the first position where the first movable device is located at the first time, where the first movable device is any movable device and the first time is any time; Determine at least one service point according to the distance between the first position and the surrounding service points; store the association relationship between the first movable device and the at least one service point at the first time; Repeat the above steps to obtain an association relationship set, where the association relationship set includes the movable devices corresponding to each service point in the preset service point set at each time; Query the association relationship set, and for each service point among the multiple service points, obtain the at least one candidate movable device of each service point at its respective corresponding service time.
9. The method according to claim 8, characterized in that The obtaining of the first position where the first movable device is located at the first time includes: Determine the time range in which the first time is located, where the time range includes n times and n is a positive integer; Obtain the rough positions of the first movable device at each of the n times to obtain n positions; Based on the movement data of the first movable device at the n positions, calculate the residence intensity of each of the multiple positions covered within the preset geographical range, where the n positions are positions within the preset geographical range, the n positions are part or all of the multiple positions, and the residence intensity is used to characterize the probability that the first movable device stays at the current position at the first time; Determine the first position based on the residence intensity of each of the multiple positions.
10. The method according to claim 9, characterized in that, The calculating of the residence intensity of each of the multiple positions covered within the preset geographical range based on the movement data of the first movable device at the n positions includes: For the j-th position among the multiple positions in the preset geographical range, calculate the i-th intensity component based on at least one of the movement speed, relative time, and relative distance of the first movable device at the i-th position among the n positions, where the relative time is used to indicate the time difference between the time corresponding to the i-th position and the first time, the relative distance is used to indicate the distance difference between the i-th position and the j-th position, and both i and j are positive integers and i is not greater than n; Accumulate the n intensity components corresponding to the n positions to obtain the residence intensity of the j-th position.
11. The method according to claim 10, wherein The calculating of the i-th intensity component based on the movement speed of the first movable device at the i-th position among the n positions includes: On the premise that the moving speed is inversely correlated with the i-th intensity component, calculate the i-th intensity component based on the moving speed of the first movable device at the i-th position among the n positions.
12. The method according to claim 10, wherein The calculating the i-th intensity component based on the relative time of the first movable device at the i-th position among the n positions includes: On the premise that the relative time is inversely correlated with the i-th intensity component, calculate the i-th intensity component based on the relative time of the first movable device at the i-th position among the n positions.
13. The method according to claim 10, characterized in that, The calculating the i-th intensity component based on the relative distance of the first movable device at the i-th position among the n positions includes: On the premise that the relative distance is inversely correlated with the i-th intensity component, calculate the i-th intensity component based on the relative distance of the first movable device at the i-th position among the n positions.
14. The method according to claim 10, characterized in that, The calculating the i-th intensity component based on the moving speed, relative time and relative distance of the first movable device at the i-th position among the n positions includes: Take the inverse of the ratio of the square value of the relative distance to the square value of the moving speed to obtain a first intermediate variable; Based on the first intermediate variable minus the relative time difference, obtain a second intermediate variable; Based on the ratio of the second intermediate variable to the moving speed, obtain the i-th intensity component.
15. The method according to claim 9, characterized in that, The determining the first position based on the residence intensity of each of the multiple positions includes: Generate a position trajectory image with longitude and latitude as the horizontal and vertical coordinates. The position trajectory image includes a plurality of pixel points, and the plurality of pixel points correspond to the plurality of positions one by one. The pixel values of the plurality of pixel points are obtained based on the residence intensity of the plurality of positions; Through image filtering processing, determine a pixel region that meets the requirements in the position trajectory image. The image filtering processing includes at least one of binary processing, morphological opening operation, and morphological closing operation; Determine the first position in the pixel region.
16. The method according to claim 15, characterized in that, The determining the first position in the pixel region includes: Determine the pixel point corresponding to the center of gravity in the pixel region as the pixel point corresponding to the first position; Or, Perform weighted averaging on the pixel value of the same pixel point in the pixel region and the pixel value in the position trajectory image to obtain the pixel values of each pixel point in the new image; determine the pixel points whose pixel values meet the conditions in the new image as the pixel points corresponding to the first position.
17. A determining device for a movable device, characterized in that, The device further includes: An acquisition module, configured to acquire a service record of the services used by the current object for the movable device during a historical time period. The service record includes a plurality of service points and the service times corresponding to the plurality of service points respectively; The acquisition module is further configured to acquire at least one candidate movable device around each service point in the plurality of service points at their respective corresponding service times, to obtain a plurality of candidate movable devices. At least one candidate movable device in the plurality of candidate movable devices corresponds to some or all of the service points in the plurality of service points; A determination module, configured to determine, according to the distribution of the multiple candidate movable devices at the multiple service points, a movable device of the current object from the multiple candidate movable devices.
18. A computer device, characterized in that, The computer device includes a processor and a memory. At least one program is stored in the memory, and the at least one program is loaded and executed by the processor to implement the method for determining a movable device according to any one of claims 1 to 16.
19. A computer-readable storage medium, characterized in that, At least one program is stored in the storage medium, and the at least one program is loaded and executed by a processor to implement the method for determining a movable device according to any one of claims 1 to 16.
20. A computer program product, characterized in that, The computer program product stores a computer program, and the computer program is loaded and executed by a processor to implement the method for determining a movable device according to any one of claims 1 to 16.