A method, apparatus, device and storage medium for determining vehicle position

By geocoding the latitude and longitude of the target area, a geocoding standard table is generated, vehicle operation data is obtained, running trajectory is generated, and geocoding matches the starting point and end point of the trajectory, counting the number of stays, the problems of low calculation efficiency of vehicle resident cities and slow translation of physical addresses are solved, and efficient resident cities are realized.

CN115773761BActive Publication Date: 2025-07-04CHONGQING CHANGAN TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202211506222.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-28
Publication Date
2025-07-04
Estimated Expiration
2042-11-28

AI Technical Summary

Technical Problem

In the prior art, the calculation efficiency of vehicles in the city is low, the physical address translation speed is slow, and it is impossible to effectively analyze specific city information.

Method used

By geocoding the latitude and longitude in the target area, a geocoding standard table is generated, vehicle operation data is obtained, running trajectory is generated, and geocoding matches the starting point and end point of the trajectory, count the number of stays, and determine the resident position.

Benefits of technology

It improves the efficiency of vehicle resident city calculation and physical address translation speed, and can accurately analyze the vehicle's resident city information, which is universal.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115773761B_ABST
    Figure CN115773761B_ABST
Patent Text Reader

Abstract

The present application provides a method, apparatus, device, and storage medium for determining a vehicle position. By performing geocoding on the longitude and latitude within a target area, a geocoding standard table is obtained; the running data of the vehicle is acquired, and based on the longitude, latitude, and running status in the running data, a running trajectory of the vehicle is generated; then, geocoding is performed on the longitude and latitude of the starting point and the ending point of the running trajectory to obtain a starting point coding result and an ending point coding result respectively; the starting point coding result of the running trajectory and the ending point coding result of the running trajectory are respectively associated and matched with the geocoding standard table to obtain the starting point position and the ending point position of the running trajectory; the number of stops of the vehicle at the starting point position and the ending point position within a first time period is counted, and the position with the most stops is used as the permanent residence position of the vehicle. The present application analyzes the starting and ending point city information according to the geocoding standard table, and finally performs statistics on the starting and ending point cities of the trajectory to obtain the permanent residence city information.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical fields of big data and vehicle networking, and particularly relates to a method, device, equipment and storage medium for determining a vehicle position. Background Art

[0002] In recent years, with the development of vehicle networking technology, more and more vehicle data has been uploaded to the cloud platform. Extracting data information such as the cities where vehicles are permanently located from the vast amount of vehicle networking data can serve as basic data to support subsequent various business analyses.

[0003] For the calculation of the cities where vehicles are permanently located, the issues of calculation amount and update frequency need to be considered. Since the amount of vehicle networking data is very large, calculating based on all GPS (Global Positioning System) points will greatly affect the calculation efficiency. Therefore, it is necessary to extract effective GPS points for calculation. In addition, vehicle data is generally processed incrementally on a daily basis, and the cities where vehicles are permanently located also need to meet the requirement of being updated daily.

[0004] The calculation of the cities where vehicles are permanently located includes the calculation of the permanent residence and the resolution of the physical address. For the calculation of the permanent residence of a vehicle, the existing literature 1 (CN105843943A) calculates the cumulative residence duration of GPS points and takes the residence points with longer residence time as the permanent residence of the vehicle. However, it does not perform physical address resolution on the permanent residence and cannot obtain specific city-related information. Moreover, it involves the calculation process of all GPS points, and the efficiency will be affected. At the same time, for the resolution of the physical address of GPS points, the usual technical means is to call the API interface provided by the map service provider to achieve it. However, calling the interface for resolution for each GPS point is not applicable to the rapid resolution of a large number of GPS points. For example, the existing literature 2 (CN113138985A) reduces the call to the interface by storing the resolved GPS position data in the database, but still cannot avoid the dependence on the interface.

[0005] Therefore, how to solve the problems of low calculation efficiency of the permanent residence of vehicles and slow physical address translation is an urgent problem to be solved currently. Summary of the Invention

[0006] In view of the above-mentioned disadvantages of the prior art, the present application provides a method, device, equipment and storage medium for determining a vehicle position to solve the above technical problems.

[0007] The present application provides a method for determining a vehicle position, including the following steps:

[0008] Perform geocoding on the longitude and latitude within a target area to obtain a geocoding standard table;

[0009] Obtain the running data of the target vehicle, and generate the running trajectory of the target vehicle based on the longitude and latitude and running status in the running data;

[0010] Perform geocoding on the longitude and latitude of the starting point of the running trajectory to obtain the geocoding result of the starting point of the running trajectory; and perform geocoding on the longitude and latitude of the ending point of the running trajectory to obtain the geocoding result of the ending point of the running trajectory;

[0011] Associate and match the geocoding result of the starting point of the running trajectory and the geocoding result of the ending point of the running trajectory with the geocoding standard table respectively to obtain the starting point location and the ending point location of the running trajectory;

[0012] Count the number of stops of the target vehicle at the starting point location and the ending point location within the first time period, and use the location with the most stops as the resident location of the target vehicle.

[0013] In an embodiment of the present application, the process of performing geocoding on the longitude and latitude in the target area to obtain the geocoding standard table includes:

[0014] Perform geocoding on the longitude and latitude in the target area to obtain a geocoding standard table corresponding to provincial information; wherein, the geocoding standard table corresponding to provincial information includes: province code, province name, and physical address;

[0015] Alternatively, perform geocoding on the longitude and latitude in the target area to obtain a geocoding standard table corresponding to municipal information; wherein, the geocoding standard table corresponding to municipal information includes: province code, province name, city code, city name, and physical address;

[0016] Alternatively, perform geocoding on the longitude and latitude in the target area to obtain a geocoding standard table corresponding to district / county-level information; wherein, the geocoding standard table corresponding to district / county-level information includes: province code, province name, city code, city name, district / county code, district / county name, and physical address.

[0017] In an embodiment of the present application, after performing geocoding on the longitude and latitude in the target area to obtain the geocoding standard table, the method further includes:

[0018] Generate a relationship table between the geocoding length and the coding error based on the accuracy of the geocoding standard table;

[0019] Alternatively, generate a relationship table between the geocoding length and the number of coding digits based on the accuracy of the geocoding standard table;

[0020] Alternatively, generate a relationship table between the geocoding length, the number of coding digits, and the coding error based on the accuracy of the geocoding standard table.

[0021] In one embodiment of the present application, the process of obtaining the operation data of the target vehicle and generating the operation trajectory of the target vehicle based on the longitude and latitude and the operation status in the operation data includes:

[0022] Obtain the operation data of the target vehicle;

[0023] Analyze the operation data, obtain the longitude and latitude and the engine operation status in the operation data, and sort them by time;

[0024] Based on the change of the sorted engine operation status, determine the starting point and the ending point of the operation trajectory of the target vehicle;

[0025] According to the starting point, the ending point and the longitude and latitude in the operation data, splice and generate the operation trajectory of the target vehicle.

[0026] In one embodiment of the present application, when splicing and generating the operation trajectory of the target vehicle, the method further includes:

[0027] Judge whether the time interval between the starting point of the next trajectory to be spliced and the ending point of the currently spliced trajectory is less than a preset duration;

[0028] If the time interval is less than the preset duration, splice the starting point of the next trajectory with a time interval less than the preset duration;

[0029] If the time interval is greater than or equal to the preset duration, end splicing the operation trajectory of the target vehicle.

[0030] In one embodiment of the present application, the process of performing geocoding on the longitude and latitude in the target area to obtain a geocoding standard table includes:

[0031] Determine a part or all of the longitude and latitude ranges from the longitude and latitude range of the target area, and record them as the target longitude and latitude range;

[0032] Randomly select a starting point from the target longitude and latitude range, and record it as the first starting point;

[0033] Perform geocoding on the first starting point to obtain a first geocoding result;

[0034] Put the first geocoding result into the parsed queue, and add the object to be coded to the queue to be parsed;

[0035] Determine whether there are no elements in the parsed queue and all threads in the thread pool are idle; if so, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, obtain a thread from the thread pool and a to-be-coded object from the to-be-parsed queue, and according to the location data of the center point of the to-be-coded object, call the target interface to obtain the parsing information of the location data of the center point;

[0036] Determine whether the parsing information contains normal information; if it does not contain normal information, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, if it contains normal information, store the parsing information and the corresponding geocoding results in the standard table, and obtain K coded objects adjacent to the to-be-coded object;

[0037] Determine whether the center point of the to-be-coded object is within the target longitude and latitude range; if not, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, if it is within the target longitude and latitude range, proceed to the next step;

[0038] Determine whether the geocoding result of the to-be-coded object is in the parsed queue; if so, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, add the geocoding result of the to-be-coded object to the parsed queue, add the next to-be-coded object to the to-be-parsed queue, and continue to determine whether there are no elements in the parsed queue and all threads in the thread pool are idle.

[0039] In an embodiment of the present application, the method for geocoding the longitude and latitude within a target area includes: performing Geohash coding on the longitude and latitude within the target area.

[0040] The present application further provides a vehicle position determination device, which includes:

[0041] A coding standard table module, configured to perform geocoding on the longitude and latitude within a target area to obtain a geocoding standard table;

[0042] A running track module, configured to obtain the running data of a target vehicle and generate the running track of the target vehicle based on the longitude, latitude and running status in the running data;

[0043] A coding module, configured to perform geocoding on the longitude and latitude of the starting point of the running track to obtain a coding result of the starting point of the running track; and perform geocoding on the longitude and latitude of the ending point of the running track to obtain a coding result of the ending point of the running track;

[0044] An encoding association module, configured to respectively associate and match the encoding result of the starting point of the running trajectory and the encoding result of the ending point of the running trajectory with the geographical encoding standard table to obtain the starting point position and the ending point position of the running trajectory;

[0045] A position determination module, configured to count the number of stays of the target vehicle at the starting point position and the ending point position within a first time period, and use the position with the most stays as the permanent residence position of the target vehicle.

[0046] This application also provides a vehicle position determination device, which includes:

[0047] One or more processors;

[0048] A storage device, configured to store one or more programs, and when the one or more programs are executed by the one or more processors, enable the device to implement the vehicle position determination method described in any one of the above.

[0049] This application also provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor of a computer, enable the computer to execute the vehicle position determination method described in any one of the above.

[0050] As described above, this application provides a vehicle position determination method, device, equipment and storage medium, which has the following beneficial effects:

[0051] In this application, the longitude and latitude in the target area are geocoded to obtain a geocoding standard table; then the running data of the target vehicle is acquired, and based on the longitude, latitude, and running status in the running data, the running track of the target vehicle is generated; next, the longitude and latitude of the starting point of the running track are geocoded to obtain the geocoding result of the starting point of the running track; and the longitude and latitude of the ending point of the running track are geocoded to obtain the geocoding result of the ending point of the running track; then the geocoding result of the starting point of the running track and the geocoding result of the ending point of the running track are respectively associated and matched with the geocoding standard table to obtain the starting point position and the ending point position of the running track; finally, the number of stops of the target vehicle at the starting point position and the ending point position within the first time period is counted, and the position with the most stops is used as the permanent residence position of the target vehicle. In this application, the longitude and latitude of the target area are geocoded to form a geocoding standard table with higher precision. Then, the vehicle running data is accessed from the cloud platform every day to calculate the vehicle track data. The starting and ending points of the track are geocoded, and the starting and ending point city information is parsed according to the geocoding standard table. Finally, the starting and ending point cities of the track within a period of time are statistically analyzed to obtain the permanent residence city information. It can be seen that this application solves the technical problems of low calculation efficiency of the vehicle's permanent residence and slow physical address translation in the prior art, improves the work efficiency, and makes it universal.

[0052] It should be understood that the above general description and the following detailed description are only exemplary and explanatory, and cannot limit this application. Brief Description of the Drawings

[0053] The accompanying drawings here are incorporated into the specification and constitute a part of this specification, showing the embodiments consistent with this application, and are used together with the specification to explain the principles of this application. Obviously, the accompanying drawings in the following description are only some embodiments of this application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts. In the drawings:

[0054] Figure 1 It is a schematic diagram of an exemplary system architecture for applying the technical solutions in one or more embodiments of this application;

[0055] Figure 2 It is a schematic flowchart of a vehicle position determination method provided in an embodiment of this application;

[0056] Figure 3 It is a schematic flowchart of generating the running track of the target vehicle provided in an embodiment of this application;

[0057] Figure 4 It is a schematic flowchart of performing geocoding provided in an embodiment of this application;

[0058] Figure 5 It is a schematic flowchart of a method for determining a vehicle's resident city provided in an embodiment of the present application;

[0059] Figure 6 It is a schematic hardware structure diagram of a vehicle position determination device provided in an embodiment of the present application;

[0060] Figure 7 It is a schematic hardware structure diagram of a vehicle resident city determination device provided in an embodiment of the present application;

[0061] Figure 8 It is a schematic hardware structure diagram of a vehicle position determination device suitable for implementing one or more embodiments of the present application. Detailed implementation manners

[0062] The following will describe the implementation manners of the present application with reference to the accompanying drawings and preferred embodiments. Those skilled in the art can easily understand other advantages and effects of the present application from the content disclosed in this specification. The present application can also be implemented or applied through other different specific implementation manners. Various details in this specification can also be modified or changed based on different viewpoints and applications without departing from the spirit of the present application. It should be understood that the preferred embodiments are only for explaining the present application and not for limiting the protection scope of the present application.

[0063] It should be noted that the diagrams provided in the following embodiments only illustrate the basic concept of the present application schematically. Therefore, only the components related to the present application are shown in the diagrams, rather than being drawn according to the number, shape, and size of the components in actual implementation. The type, quantity, and ratio of each component in actual implementation can be arbitrarily changed, and the component layout type may also be more complex.

[0064] "And / or" in the present application describes the association relationship of associated objects, indicating that three relationships can exist. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. The character " / " generally represents an "or" relationship between the associated objects before and after.

[0065] The "multiple" involved in the present application refers to two or more.

[0066] In the description of the present application, terms such as "first" and "second" are only used for the purpose of distinguishing descriptions, and cannot be understood as indicating or implying relative importance, nor can they be understood as indicating or implying an order.

[0067] In addition, in the embodiments of the present application, the term "exemplary" is used to mean serving as an example, illustration, or demonstration. Any embodiment or implementation described as "exemplary" in the present application should not be construed as being more preferred or having more advantages than other embodiments or implementations. Rather, the use of the term "exemplary" is intended to present concepts in a concrete manner.

[0068] In the following description, numerous details are explored to provide a more thorough explanation of the embodiments of the present application. However, it is obvious to those skilled in the art that the embodiments of the present application can be implemented without these specific details. In other embodiments, well-known structures and devices are shown in the form of block diagrams rather than in detail to avoid making the embodiments of the present application difficult to understand.

[0069] Geohash is a type of geocoding used to map two-dimensional longitude and latitude into a one-dimensional code, facilitating computer storage and indexing. The basic principle of Geohash coding is as follows: The longitude and latitude are respectively bisected and approximated for coding, continuously coded according to the regions they belong to, and finally the two sets of codes are mixed and Base32 encoded to generate the Geohash code.

[0070] Figure 1 The figure shows a schematic diagram of an exemplary system architecture to which the technical solutions in one or more embodiments of the present application can be applied. As Figure 1 shown, the system architecture 100 may include a terminal device 110, a network 120, and a server 130. The terminal device 110 may include various electronic devices such as smartphones, tablets, laptops, and desktop computers. The server 130 may be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server providing cloud computing services. The network 120 may be a communication medium of various connection types capable of providing a communication link between the terminal device 110 and the server 130. For example, it may be a wired communication link or a wireless communication link.

[0071] According to the implementation requirements, the system architecture in the embodiments of the present application may have any number of terminal devices, networks, and servers. For example, the server 130 may be a server group composed of multiple server devices. In addition, the technical solutions provided in the embodiments of the present application can be applied to the terminal device 110, or to the server 130, or can be jointly implemented by the terminal device 110 and the server 130. The present application makes no special limitations in this regard.

[0072] In an embodiment of the present application, the terminal device 110 or the server 130 of the present application may perform geocoding on the longitude and latitude within the target area to obtain a geocoding standard table; then obtain the running data of the target vehicle, and generate the running trajectory of the target vehicle based on the longitude, latitude and running status in the running data; then perform geocoding on the longitude and latitude of the starting point of the running trajectory to obtain the running trajectory starting point coding result; and perform geocoding on the longitude and latitude of the ending point of the running trajectory to obtain the running trajectory ending point coding result; then respectively associate and match the running trajectory starting point coding result and the running trajectory ending point coding result with the geocoding standard table to obtain the starting point position and the ending point position of the running trajectory; finally, count the number of stops of the target vehicle at the starting point position and the ending point position within the first time period, and use the position with the most stops as the permanent residence position of the target vehicle. By using the terminal device 110 or the server 130 to execute the vehicle position determination method, through geocoding the longitude and latitude of the target area, a geocoding standard table with higher accuracy is formed, and then the vehicle running data is accessed from the cloud platform every day to calculate the vehicle trajectory data, perform geocoding on the starting and ending points of the trajectory, and parse the starting and ending point city information according to the geocoding standard table. Finally, the starting and ending point cities of the trajectory within a period of time are counted to obtain the permanent residence city information. This solves the technical problems of low calculation efficiency of the vehicle's permanent residence and slow physical address translation in the prior art, improves work efficiency, and makes it universal.

[0073] The above part introduced the content of the exemplary system architecture applying the technical solution of the present application. Next, the vehicle position determination method of the present application will be continued to be introduced.

[0074] Figure 2 The schematic flow chart of the vehicle position determination method provided by an embodiment of the present application is shown. Specifically, in an exemplary embodiment, as Figure 2 shown, this embodiment provides a vehicle position determination method, and the method includes the following steps:

[0075] S210, perform geocoding on the longitude and latitude within the target area to obtain a geocoding standard table;

[0076] S220, obtain the running data of the target vehicle, and generate the running trajectory of the target vehicle based on the longitude, latitude and running status in the running data;

[0077] S230, perform geocoding on the longitude and latitude of the starting point of the running trajectory to obtain the running trajectory starting point coding result; and perform geocoding on the longitude and latitude of the ending point of the running trajectory to obtain the running trajectory ending point coding result;

[0078] S240. Respectively associate and match the encoded result of the starting point of the running track and the encoded result of the ending point of the running track with the geographical coding standard table to obtain the starting point position and the ending point position of the running track;

[0079] S250. Count the number of stops of the target vehicle at the starting point position and the ending point position within the first time period, and use the position with the most stops as the permanent residence position of the target vehicle.

[0080] It can be seen from this that this method performs geographical coding on the longitude and latitude of the target area to form a geographical coding standard table with higher accuracy. Then, it accesses the vehicle operation data from the cloud platform every day to calculate the vehicle trajectory data, performs geographical coding on the starting and ending points of the trajectory, and parses the starting and ending point city information according to the geographical coding standard table. Finally, it counts the starting and ending point cities within a period of time to obtain the permanent residence city information. Therefore, this method solves the technical problems of low calculation efficiency of the vehicle's permanent residence and slow physical address translation in the prior art, improves work efficiency, and makes it universal. As an example, the target vehicle in this embodiment includes but is not limited to: fuel vehicles, new energy vehicles. The first time period in this embodiment can be set according to the actual situation, and no specific numerical limit is set in this embodiment. For example, the first time period can be set to one month.

[0081] In an exemplary embodiment, the process of geocoding the longitude and latitude within a target area to obtain a geocoding standard table includes: geocoding the longitude and latitude within the target area to obtain a geocoding standard table corresponding to provincial information; wherein, the geocoding standard table corresponding to provincial information includes: province code, province name, and physical address. As another example, the process of geocoding the longitude and latitude within the target area to obtain a geocoding standard table includes: geocoding the longitude and latitude within the target area to obtain a geocoding standard table corresponding to municipal information; wherein, the geocoding standard table corresponding to municipal information includes: province code, province name, city code, city name, and physical address. As yet another example, the process of geocoding the longitude and latitude within the target area to obtain a geocoding standard table includes: geocoding the longitude and latitude within the target area to obtain a geocoding standard table corresponding to district / county-level information; wherein, the geocoding standard table corresponding to district / county-level information includes: province code, province name, city code, city name, district / county code, district / county name, and physical address. In this embodiment, the method of geocoding the longitude and latitude within the target area includes: performing Geohash coding on the longitude and latitude within the target area. Specifically, Geohash coding is performed on the longitude and latitude within China to form a Geohash coding standard table accurate to districts, counties, and cities. The Geohash coding standard table contains information such as Geohash coding, province code, province name, city code, city name, district / county code, district / county name, and physical address, covering the information of provinces, cities, districts, and counties corresponding to Geohash coding with a specified coding length within the domestic scope. This step realizes full coverage of domestic Geohash coding by pre-calling the API (Application Program Interface) of the map service provider, avoiding the process of calling the API in daily calculations.

[0082] According to the above description, in an exemplary embodiment, after geocoding the longitude and latitude within a target area to obtain a geocoding standard table, this embodiment may further include: generating a relationship table between the geocoding length and the coding error based on the accuracy of the geocoding standard table. As another example, after geocoding the longitude and latitude within a target area to obtain a geocoding standard table, it may further include: generating a relationship table between the geocoding length and the number of coding digits based on the accuracy of the geocoding standard table. As yet another example, after geocoding the longitude and latitude within a target area to obtain a geocoding standard table, it may further include: generating a relationship table between the geocoding length, the number of coding digits, and the coding error based on the accuracy of the geocoding standard table.

[0083] In an exemplary embodiment, the process of obtaining the running data of a target vehicle and generating the running trajectory of the target vehicle based on the longitude, latitude and running status in the running data includes: obtaining the running data of the target vehicle; parsing the running data to obtain the longitude, latitude and engine running status in the running data, and sorting them by time; determining the starting point and ending point of the running trajectory of the target vehicle based on the change of the sorted engine running status; and splicing and generating the running trajectory of the target vehicle according to the starting point, the ending point and the longitude and latitude in the running data. In this embodiment, when splicing and generating the running trajectory of the target vehicle, it further includes: judging whether the time interval between the start point of the next trajectory to be spliced and the end point of the currently spliced trajectory is less than a preset duration; if the time interval is less than the preset duration, splicing the start point of the next trajectory with a time interval less than the preset duration; if the time interval is greater than or equal to the preset duration, ending the splicing of the running trajectory of the target vehicle. As an example, the calculation process of the vehicle running trajectory is as Figure 3 shown: 1) Obtain the vehicle running data of the cloud platform; 2) Parse information such as longitude, latitude and engine running status, and sort them by event time; 3) Determine the start and end points of the trajectory according to the change of the engine running status; 4) Splice the trajectory according to the start and end points; 5) Judge whether the time interval between the start point of the next trajectory and the end point of the previous trajectory is less than the specified duration. If so, execute the next step, otherwise end; 6) Splice the trajectory with a time interval less than the specified duration. It can be seen that in this embodiment, according to the start and stop of the vehicle engine running status, the start and end of the vehicle running trajectory are determined, so as to convert a large number of GPS points into trajectory data with relatively fewer data lines. This processing not only reduces the calculation amount of subsequent permanent city calculation, excludes the intermediate points of the trajectory from the permanent city calculation scope, but also conforms more to the understanding logic of the permanent city. For example, the cities passed by car do not need to be calculated as permanent cities, which is obviously more in line with the actual situation. In addition, the trajectories that meet the specified conditions are merged to reduce the result error caused by situations such as temporary parking.

[0084] In an exemplary embodiment, the process of performing geographic coding on the longitude and latitude in a target area to obtain a geographic coding standard table includes:

[0085] Determining a part or all of the longitude and latitude ranges from the longitude and latitude range of the target area, denoted as the target longitude and latitude range;

[0086] Randomly selecting a starting point from the target longitude and latitude range, denoted as the first starting point;

[0087] Performing geographic coding on the first starting point to obtain a first geographic coding result;

[0088] Putting the first geographic coding result into the parsed queue, and adding the object to be coded to the to-be-parsed queue;

[0089] Judge whether there are no elements in the parsed queue and all threads in the thread pool are idle; if so, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, obtain a thread from the thread pool and an object to be encoded from the to-be-parsed queue, and call the target interface to obtain the parsing information of the central point location data according to the location data of the center point of the object to be encoded.

[0090] Judge whether the parsing information contains normal information; if it does not contain normal information, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, if it contains normal information, store the parsing information and the corresponding geocoding results in the standard table, and obtain K encoded objects adjacent to the object to be encoded.

[0091] Judge whether the center point of the object to be encoded is within the target longitude and latitude range; if not, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, if it is within the target longitude and latitude range, proceed to the next step.

[0092] Judge whether the geocoding result of the object to be encoded is in the parsed queue; if so, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, add the geocoding result of the object to be encoded to the parsed queue, add the next object to be encoded to the to-be-parsed queue, and continue to judge whether there are no elements in the parsed queue and all threads in the thread pool are idle.

[0093] Specifically, as Figure 4 shown, the process of geocoding the longitude and latitude within the target area to obtain the geocoding standard table includes:

[0094] First, determine the longitude and latitude range, randomly select a starting point, and encode the GPS location data through Geohash.

[0095] Put the Geohash encoding into the parsed List and add the Geohash object to the to-be-parsed queue.

[0096] Judge whether there are no elements in the queue and all threads in the thread pool are idle; if there are no elements in the queue and all threads in the thread pool are idle, end the process; otherwise, proceed to the next step.

[0097] Obtain a thread from the thread pool, consume the Geohash object in the queue, and call the interface to obtain the parsing information of the GPS according to the GPS location data of the object center point.

[0098] Determine whether the returned information contains normal information; if not, end the process; otherwise, proceed to the next step;

[0099] Store the parsing information and Geohash code into the standard table, and obtain the eight Geohash objects adjacent to the Geohash object;

[0100] Determine whether the center point of the Geohash object is within the selected longitude and latitude range; if not, end the process; otherwise, proceed to the next step;

[0101] Determine whether the Geohash code is in the parsed List; if so, end the process; otherwise, put the Geohash code into the parsed List, add the Geohash object to the queue to be parsed, and iterate again to execute subsequent steps.

[0102] In another exemplary embodiment of the present application, Figure 5 As shown, this embodiment also provides a method for calculating a vehicle's permanent city based on Geohash, comprising the following steps:

[0103] Step 1, perform Geohash encoding on the longitude and latitude in China to form a Geohash encoding standard table accurate to districts, counties and cities. The Geohash encoding standard table contains information such as Geohash code, province code, province name, city code, city name, district code, district name, physical address, etc., covering the information of provinces, cities, districts and counties corresponding to Geohash codes accurate to the specified coding length within the domestic scope. This step achieves full coverage of domestic Geohash codes by calling the map service provider API in advance, avoiding the API calling process in daily calculations.

[0104] Step 2, obtain the vehicle operation data from the cloud platform, and calculate the vehicle operation trajectory based on the vehicle's longitude and latitude and operation status. The start and end of the vehicle's operation trajectory are determined based on the start and stop of the vehicle's engine operation status, thereby converting a large number of GPS points into trajectory data with a relatively small number of data items. This processing not only reduces the amount of calculation for subsequent permanent city calculations, but also excludes the middle points of the trajectory from the calculation range of the permanent city, which is more in line with the understanding logic of the permanent city. In addition, the trajectories that meet the specified conditions are merged to reduce the result errors caused by temporary parking and other situations.

[0105] Step 3: Perform Geohash coding on the latitude and longitude of the starting point and the ending point of the vehicle trajectory, and associate the starting point and the ending point cities through the Geohash coding standard table.

[0106] Step 4: Count the starting and ending cities of the vehicle's trajectory over a period of time, and take the place with the most stops in the trajectory data as the permanent city.

[0107] According to the above description, the specific process is as follows:

[0108] Step 1: Perform Geohash encoding on the longitude and latitude within China to form a Geohash encoding standard table accurate to districts, counties, and cities.

[0109] Among them, the field information of the Geohash encoding standard table is shown in Table 1 below, including Geohash encoding, province code, province name, city code, city name, district / county code, district / county name, physical address, etc. Information on provinces, cities, and districts / counties corresponding to Geohash encodings with a specified encoding length within the domestic scope is covered.

[0110] Table 1 Field Information of Geohash Encoding Standard Table

[0111]

[0112]

[0113] In Java, use the open-source Geohash package ch.hsr.Geohash to implement the Geohash algorithm. As Figure 4 shown in the flowchart of obtaining the Geohash encoding standard table, use multi-threading and queues to traverse the Geohash encodings within China in a way that spreads from the center point to the surrounding areas, and call the map service provider interface for each Geohash encoding corresponding center point GPS to parse out the physical address information, so as to obtain the relevant information of Geohash encoding and corresponding provinces, cities, and districts / counties.

[0114] As shown in Table 2 below, the relationship between Geohash encoding length and error is given:

[0115] Table 2 Relationship Table of Geohash Encoding Length and Error

[0116]

[0117] According to the actual resource situation and accuracy requirements, the Geohash encoding can be adjusted to the corresponding length. It is recommended that the encoding length does not exceed 7 digits to avoid excessive consumption of computing resources when the accuracy of districts and counties is sufficient for use.

[0118] This step realizes full coverage of domestic Geohash encoding by pre-calling the map service provider API, avoiding the API call process in daily calculations and greatly improving the physical address translation efficiency. The standard table can be updated regularly (for example, once a year) according to the actual situation.

[0119] Step 2: Obtain the vehicle operation data on the cloud platform, and calculate the vehicle operation trajectory based on the vehicle's longitude and latitude and operation status. The calculation process of the vehicle operation trajectory is as follows Figure 3 shown: 1) Obtain the vehicle operation data on the cloud platform; 2) Parse information such as longitude, latitude, and engine operation status, and sort them by event time; 3) Determine the start and end points of the trajectory according to the changes in the engine operation status; 4) Stitch the trajectory based on the start and end points; 5) Judge whether the time interval between the next trajectory start point and the previous trajectory end point is less than the specified duration. If so, execute the next step; otherwise, end; 6) Stitch the trajectories with an interval less than the specified duration. Determine the start and end of the vehicle operation trajectory based on the start and stop of the vehicle engine operation status, so as to convert a large number of GPS points into trajectory data with relatively fewer data entries. This processing not only reduces the calculation amount of subsequent permanent city calculations, excludes the trajectory intermediate points from the permanent city calculation scope, but also conforms more to the understanding logic of permanent cities. For example, cities passed by while driving do not need to be calculated as permanent cities, which is obviously more in line with the actual situation. In addition, trajectories that meet the specified conditions are merged to reduce the result error caused by situations such as temporary parking.

[0120] Step 3: Perform Geohash encoding on the longitudes and latitudes of the start and end points of the vehicle trajectory, and associate the start and end point cities through the Geohash encoding standard table. Note that the encoding rule for the longitude and latitude here needs to be consistent with the encoding rule in Step 1. If there is no corresponding encoding function in the database, the corresponding method can be implemented by calling a custom function.

[0121] Step 4: Statistically analyze the start and end point cities of the vehicle trajectory over a period of time, and use the place where the vehicle stops the most times in the trajectory data as the permanent city. For example, take the start and end point cities of the vehicle trajectory in the most recent month, and statistically analyze the city where each vehicle stops the most times as the permanent city of the corresponding vehicle. Due to personnel mobility, the permanent city of the vehicle may also change, so the permanent city of the vehicle is usually statistically updated every day.

[0122] In summary, the present application provides a method for determining a vehicle position. By geocoding the longitude and latitude within a target area, a geocoding standard table is obtained. Then, the running data of the target vehicle is acquired, and based on the longitude, latitude, and running status in the running data, the running trajectory of the target vehicle is generated. Next, the longitude and latitude of the starting point of the running trajectory are geocoded to obtain a geocoding result for the starting point of the running trajectory; and the longitude and latitude of the ending point of the running trajectory are geocoded to obtain a geocoding result for the ending point of the running trajectory. Then, the geocoding result for the starting point of the running trajectory and the geocoding result for the ending point of the running trajectory are respectively associated and matched with the geocoding standard table to obtain the starting point position and the ending point position of the running trajectory. Finally, the number of stops of the target vehicle at the starting point position and the ending point position within the first time period is counted, and the position with the most stops is used as the permanent location of the target vehicle. This method geocodes the longitude and latitude of the target area to form a geocoding standard table with higher accuracy. Then, vehicle running data is accessed from the cloud platform daily to calculate vehicle trajectory data. The starting and ending points of the trajectory are geocoded, and the starting and ending point city information is parsed according to the geocoding standard table. Finally, the starting and ending point cities of the trajectory within a period of time (such as one month) are statistically analyzed to obtain the permanent city information. It can be seen that this method solves the technical problems of low calculation efficiency for the vehicle's permanent residence and slow physical address translation in the prior art, improves work efficiency, and makes it universal.

[0123] As Figure 6 shown, the present application further provides a vehicle position determination device, and the device includes:

[0124] A coding standard table module 610, configured to geocode the longitude and latitude within a target area to obtain a geocoding standard table;

[0125] A running trajectory module 620, configured to acquire the running data of a target vehicle, and based on the longitude, latitude, and running status in the running data, generate the running trajectory of the target vehicle;

[0126] A coding module 630, configured to geocode the longitude and latitude of the starting point of the running trajectory to obtain a geocoding result for the starting point of the running trajectory; and geocode the longitude and latitude of the ending point of the running trajectory to obtain a geocoding result for the ending point of the running trajectory;

[0127] A coding association module 640, configured to respectively associate and match the geocoding result for the starting point of the running trajectory and the geocoding result for the ending point of the running trajectory with the geocoding standard table to obtain the starting point position and the ending point position of the running trajectory;

[0128] A location determination module 650 is configured to count the number of times the target vehicle stays at the starting point location and the ending point location within a first time period, and use the location with the most stay times as the permanent location of the target vehicle.

[0129] It can be seen from this that this device forms a geographical coding standard table with higher precision by performing geographical coding on the longitude and latitude of the target area. Then, it accesses the vehicle operation data from the cloud platform every day to calculate the vehicle trajectory data, performs geographical coding on the starting and ending points of the trajectory, and parses the city information of the starting and ending points according to the geographical coding standard table. Finally, it statistically analyzes the starting and ending point cities of the trajectory within a period of time to obtain the permanent city information. Therefore, this device solves the technical problems of low calculation efficiency of the vehicle's permanent residence and slow physical address translation in the prior art, improves the work efficiency, and makes it universal. As an example, the target vehicle in this embodiment includes, but is not limited to: fuel vehicles and new energy vehicles. The first time period in this embodiment can be set according to the actual situation, and no specific numerical limit is set in this embodiment. For example, the first time period can be set to one month.

[0130] In an exemplary embodiment, the process of geocoding the longitude and latitude within a target area to obtain a geocoding standard table includes: geocoding the longitude and latitude within the target area to obtain a geocoding standard table corresponding to provincial information; wherein, the geocoding standard table corresponding to provincial information includes: province code, province name, and physical address. As another example, the process of geocoding the longitude and latitude within a target area to obtain a geocoding standard table includes: geocoding the longitude and latitude within the target area to obtain a geocoding standard table corresponding to municipal information; wherein, the geocoding standard table corresponding to municipal information includes: province code, province name, city code, city name, and physical address. As yet another example, the process of geocoding the longitude and latitude within a target area to obtain a geocoding standard table includes: geocoding the longitude and latitude within the target area to obtain a geocoding standard table corresponding to district / county-level information; wherein, the geocoding standard table corresponding to district / county-level information includes: province code, province name, city code, city name, district / county code, district / county name, and physical address. In this embodiment, the method of geocoding the longitude and latitude within the target area includes: performing Geohash coding on the longitude and latitude within the target area. Specifically, Geohash coding is performed on the longitude and latitude within China to form a Geohash coding standard table accurate to districts, counties, and cities. The Geohash coding standard table contains information such as Geohash coding, province code, province name, city code, city name, district / county code, district / county name, and physical address, covering the information of provinces, cities, districts, and counties corresponding to Geohash coding with a specified coding length within the domestic scope. This step realizes full coverage of domestic Geohash coding by pre-calling the API (Application Program Interface) of the map service provider, avoiding the process of calling the API in daily calculations.

[0131] According to the above description, in an exemplary embodiment, after geocoding the longitude and latitude within a target area to obtain a geocoding standard table, this embodiment may further include: generating a relationship table between the geocoding length and the coding error based on the accuracy of the geocoding standard table. As another example, after geocoding the longitude and latitude within a target area to obtain a geocoding standard table, it may further include: generating a relationship table between the geocoding length and the number of coding digits based on the accuracy of the geocoding standard table. As yet another example, after geocoding the longitude and latitude within a target area to obtain a geocoding standard table, it may further include: generating a relationship table between the geocoding length, the number of coding digits, and the coding error based on the accuracy of the geocoding standard table.

[0132] In an exemplary embodiment, the process of obtaining the running data of a target vehicle and generating the running trajectory of the target vehicle based on the longitude, latitude and running status in the running data includes: obtaining the running data of the target vehicle; parsing the running data to obtain the longitude, latitude and engine running status in the running data, and sorting them by time; determining the starting point and ending point of the running trajectory of the target vehicle based on the change of the sorted engine running status; and splicing and generating the running trajectory of the target vehicle according to the starting point, the ending point and the longitude and latitude in the running data. In this embodiment, when splicing and generating the running trajectory of the target vehicle, it further includes: judging whether the time interval between the next trajectory start point to be spliced and the current spliced trajectory end point is less than a preset duration; if the time interval is less than the preset duration, splicing the next trajectory start point with a time interval less than the preset duration; if the time interval is greater than or equal to the preset duration, ending the splicing of the running trajectory of the target vehicle. As an example, the calculation process of the vehicle running trajectory is as Figure 3 shown: 1) Obtain the vehicle running data of the cloud platform; 2) Parse information such as longitude, latitude and engine running status, and sort them by event time; 3) Determine the start and end points of the trajectory according to the change of the engine running status; 4) Splice the trajectory according to the start and end points; 5) Judge whether the time interval between the next trajectory start point and the previous trajectory end point is less than the specified duration. If so, execute the next step; otherwise, end; 6) Splice the trajectory with a time interval less than the specified duration. It can be seen that in this embodiment, according to the start and stop of the vehicle engine running status, the start and end of the vehicle running trajectory are determined, so as to convert a large number of GPS points into trajectory data with relatively fewer data lines. This processing not only reduces the calculation amount of subsequent permanent city calculation, excludes the trajectory intermediate points from the permanent city calculation range, but also conforms more to the understanding logic of permanent cities. For example, cities passed by while driving do not need to be calculated as permanent cities, which is obviously more in line with the actual situation. In addition, trajectories that meet specified conditions are merged to reduce the result error caused by situations such as temporary parking.

[0133] In an exemplary embodiment, the process of performing geocoding on the longitude and latitude in a target area to obtain a geocoding standard table includes:

[0134] Determining some or all of the longitude and latitude ranges from the longitude and latitude range of the target area, denoted as the target longitude and latitude range;

[0135] Randomly selecting a starting point from the target longitude and latitude range, denoted as the first starting point;

[0136] Performing geocoding on the first starting point to obtain a first geocoding result;

[0137] Putting the first geocoding result into the parsed queue, and adding the object to be coded to the to-be-parsed queue;

[0138] Determine whether there are no elements in the parsed queue and all threads in the thread pool are idle; if so, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, obtain a thread from the thread pool and an object to be encoded from the to-be-parsed queue, and according to the location data of the center point of the object to be encoded, call the target interface to obtain the parsing information of the location data of the center point;

[0139] Determine whether the parsing information contains normal information; if it does not contain normal information, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, if it contains normal information, store the parsing information and the corresponding geocoding results in the standard table, and obtain K encoded objects adjacent to the object to be encoded;

[0140] Determine whether the center point of the object to be encoded is within the target longitude and latitude range; if not, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, if it is within the target longitude and latitude range, proceed to the next step;

[0141] Determine whether the geocoding result of the object to be encoded is in the parsed queue; if so, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, add the geocoding result of the object to be encoded to the parsed queue, add the next object to be encoded to the to-be-parsed queue, and continue to determine whether there are no elements in the parsed queue and all threads in the thread pool are idle.

[0142] Specifically, as Figure 4 shown, the process of geocoding the longitude and latitude within the target area to obtain the geocoding standard table includes:

[0143] First, determine the longitude and latitude range, randomly select a starting point, and encode the GPS location data through Geohash;

[0144] Put the Geohash encoding into the parsed List, and add the Geohash object to the to-be-parsed queue;

[0145] Determine whether there are no elements in the queue and all threads in the thread pool are idle; if there are no elements in the queue and all threads in the thread pool are idle, end the process; otherwise, proceed to the next step;

[0146] Obtain a thread from the thread pool, consume the Geohash object in the queue, and according to the GPS location data of the center point of the object, call the interface to obtain the parsing information of the GPS;

[0147] Determine whether the returned information contains normal information; if not, end the process; otherwise, proceed to the next step;

[0148] Store the parsing information and Geohash code into the standard table, and obtain the eight Geohash objects adjacent to the Geohash object;

[0149] Determine whether the center point of the Geohash object is within the selected longitude and latitude range; if not, end the process; otherwise, proceed to the next step;

[0150] Determine whether the Geohash code is in the parsed List; if so, end the process; otherwise, put the Geohash code into the parsed List, add the Geohash object to the queue to be parsed, and iterate again to execute subsequent steps.

[0151] In another exemplary embodiment of the present application, Figure 5 As shown, this embodiment also provides a vehicle resident city calculation device based on Geohash, comprising the following steps:

[0152] Step 1, perform Geohash encoding on the longitude and latitude in China to form a Geohash encoding standard table accurate to districts, counties and cities. The Geohash encoding standard table contains information such as Geohash code, province code, province name, city code, city name, district code, district name, physical address, etc., covering the information of provinces, cities, districts and counties corresponding to Geohash codes accurate to the specified coding length within the domestic scope. This step achieves full coverage of domestic Geohash codes by calling the map service provider API in advance, avoiding the API calling process in daily calculations.

[0153] Step 2, obtain the vehicle operation data from the cloud platform, and calculate the vehicle operation trajectory based on the vehicle's longitude and latitude and operation status. The start and end of the vehicle's operation trajectory are determined based on the start and stop of the vehicle's engine operation status, thereby converting a large number of GPS points into trajectory data with a relatively small number of data items. This processing not only reduces the amount of calculation for subsequent permanent city calculations, but also excludes the middle points of the trajectory from the calculation range of the permanent city, which is more in line with the understanding logic of the permanent city. In addition, the trajectories that meet the specified conditions are merged to reduce the result errors caused by temporary parking and other situations.

[0154] Step 3: Perform Geohash coding on the latitude and longitude of the starting point and the ending point of the vehicle trajectory, and associate the starting point and the ending point cities through the Geohash coding standard table.

[0155] Step 4: Count the starting and ending cities of the vehicle's trajectory over a period of time, and take the place with the most stops in the trajectory data as the permanent city.

[0156] According to the above description, the specific process is as follows:

[0157] Step 1: Perform Geohash encoding on the longitude and latitude within China to form a Geohash encoding standard table accurate to districts, counties, and cities.

[0158] Among them, the field information of the Geohash encoding standard table is shown in Table 3 below, including Geohash encoding, province code, province name, city code, city name, district / county code, district / county name, physical address, etc. Information covering the Geohash encoding corresponding to provinces, cities, districts, and counties within the country accurate to the specified encoding length.

[0159] Table 3 Field Information of Geohash Encoding Standard Table

[0160] Field Identifier Data Type Meaning Geohash string Geohash Encoding province_code string Province Code province_name string Province Name city_code string City Code city_name string City Name district_code string District Code district_name string District Name addr string Physical Address

[0161] In Java, use the open-source Geohash package ch.hsr.Geohash to implement the Geohash algorithm. As Figure 4 shown in the flowchart of obtaining the Geohash encoding standard table, use multi-threading and queues to traverse the Geohash encoding within China in a way that diverges from the center point to the surrounding areas, and call the map service provider interface to parse the physical address information for the GPS corresponding to each Geohash encoding center point, so as to obtain the relevant information of the Geohash encoding and the corresponding provinces, cities, districts, and counties.

[0162] As shown in Table 4 below, the relationship between Geohash encoding length and error is given:

[0163] Table 4 Relationship Table of Geohash Encoding Length and Error

[0164]

[0165] According to the actual resource situation and accuracy requirements, the Geohash encoding can be adjusted to the corresponding length. It is recommended that the encoding length does not exceed 7 bits to avoid excessive consumption of computing resources when the accuracy of calculating to the district / county level cities is sufficient.

[0166] This step realizes full coverage of domestic Geohash encoding by pre-calling the map service provider API, avoiding the API call process in daily calculations, and greatly improving the physical address translation efficiency. The standard table can be updated regularly (for example, once a year) according to the actual situation.

[0167] Step 2: Obtain the vehicle operation data on the cloud platform, and calculate the vehicle operation trajectory based on the vehicle's longitude and latitude and operation status. The calculation process of the vehicle operation trajectory is as Figure 3As shown in the figure: 1) Obtain the vehicle operation data of the cloud platform; 2) Analyze information such as longitude, latitude, and engine operation status, and sort them according to the event time; 3) Determine the start and end points of the trajectory based on the change in the engine operation status; 4) Stitch the trajectory according to the start and end points; 5) Determine whether the time interval between the next trajectory start point and the previous trajectory end point is less than the specified duration. If so, execute the next step; otherwise, end; 6) Stitch the trajectories with an interval less than the specified duration. According to the start and stop of the vehicle engine operation status, determine the start and end of the vehicle operation trajectory, so as to convert a large number of GPS points into trajectory data with a relatively small number of data entries. This processing not only reduces the computational workload of subsequent permanent city calculations, excludes the trajectory intermediate points from the scope of permanent city calculations, but also conforms more to the understanding logic of permanent cities. For example, cities passed by while driving do not need to be calculated as permanent cities, which is obviously more in line with the actual situation. In addition, trajectories that meet the specified conditions are merged to reduce the result error caused by situations such as temporary parking.

[0168] Step 3: Perform Geohash encoding on the longitude and latitude of the vehicle trajectory start and end points, and associate the start and end point cities through the Geohash encoding standard table. Note that the encoding rule for longitude and latitude here needs to be consistent with the encoding rule in Step 1. If there is no corresponding encoding function in the database, the corresponding method can be implemented by calling a custom function.

[0169] Step 4: Statistically analyze the start and end point cities of the vehicle trajectory within a period of time, and take the place with the most stay times in the trajectory data as the permanent city. For example, take the start and end point cities of the vehicle trajectory in the recent month, and statistically analyze the city with the most stay times for each vehicle as the permanent city of the corresponding vehicle. Due to personnel mobility, the permanent city of the vehicle may also change, so the permanent city of the vehicle is usually statistically updated every day.

[0170] In another exemplary embodiment of the present application, as Figure 7 shown, this embodiment further provides a Geohash-based vehicle permanent city calculation device, including:

[0171] A Geohash encoding unit for performing Geohash encoding on the longitude and latitude within the territory of China to form a standard table of Geohash encoding corresponding to provincial, municipal, district, and county information with a specified encoding length, and the standard table can be updated regularly according to actual needs.

[0172] A trajectory calculation unit for processing the vehicle trajectory data according to data such as the vehicle engine status and GPS points.

[0173] A resident city calculation unit is used to perform Geohash encoding on the longitude and latitude of the starting point and ending point of a vehicle trajectory, associate with a standard table to obtain the starting point and ending point cities, and calculate the resident city of the vehicle.

[0174] A storage unit is used to store a Geohash encoding standard table, vehicle trajectory data, and the calculation result of the vehicle resident city.

[0175] In summary, the present application provides a vehicle position determination device. By performing geographical encoding on the longitude and latitude within a target area, a geographical encoding standard table is obtained; then, the operation data of a target vehicle is acquired, and based on the longitude, latitude, and operation status in the operation data, the operation trajectory of the target vehicle is generated; then, geographical encoding is performed on the longitude and latitude of the starting point of the operation trajectory to obtain a coding result of the starting point of the operation trajectory; and geographical encoding is performed on the longitude and latitude of the ending point of the operation trajectory to obtain a coding result of the ending point of the operation trajectory; then, the coding result of the starting point of the operation trajectory and the coding result of the ending point of the operation trajectory are respectively associated and matched with the geographical encoding standard table to obtain the starting point position and the ending point position of the operation trajectory; finally, the number of stops of the target vehicle at the starting point position and the ending point position within a first time period is counted, and the position with the most stops is used as the resident position of the target vehicle. This device forms a geographical encoding standard table with higher precision by performing geographical encoding on the longitude and latitude of the target area, then accesses the vehicle operation data from the cloud platform daily to calculate the vehicle trajectory data, performs geographical encoding on the starting and ending points of the trajectory, and parses the starting and ending point city information according to the geographical encoding standard table. Finally, the starting and ending point cities of the trajectory within a period of time (such as one month) are statistically analyzed to obtain the resident city information. It can be seen that this device solves the technical problems of low calculation efficiency of the vehicle's permanent residence and slow physical address translation in the prior art, improves work efficiency, and makes it universal.

[0176] It should be noted that the vehicle position determination device provided in the above embodiment and the vehicle position determination method provided in the above embodiment belong to the same concept. The specific ways in which each module and unit perform operations have been described in detail in the method embodiment, and will not be elaborated here. In actual application, the vehicle position determination device provided in the above embodiment can, according to needs, allocate the above functions to different functional modules, that is, divide the internal structure of the device into different functional modules to complete all or part of the functions described above. This is not limited here either.

[0177] Embodiments of the present application further provide a vehicle position determination device, including: one or more processors; a storage device for storing one or more programs, which, when executed by the one or more processors, cause the vehicle position determination device to implement the vehicle position determination methods provided in the above various embodiments.

[0178] Figure 8 The structural schematic diagram of a computer device suitable for implementing the vehicle position determination device of the embodiments of the present application is shown. It should be noted that Figure 8 The computer system 1000 of the vehicle position determination device shown is only an example and should not bring any restrictions to the functions and usage scope of the embodiments of the present application.

[0179] As Figure 8 shown, the computer system 1000 includes a central processing unit (CPU) 1001, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 1002 or the program loaded from the storage section 1008 into the random access memory (RAM) 1003, such as executing the method described in the above embodiments. In the RAM 1003, various programs and data required for system operation are also stored. The CPU 1001, ROM 1002, and RAM 1003 are connected to each other via a bus 1004. The input / output (I / O) interface 1005 is also connected to the bus 1004.

[0180] The following components are connected to the I / O interface 1005: an input section 1006 including a keyboard, a mouse, etc.; an output section 1007 including, for example, a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 1008 including a hard disk, etc.; and a communication section 1009 including a network interface card such as a LAN (Local Area Network) card, a modem, etc. The communication section 1009 performs communication processing via a network such as the Internet. A driver 1010 is also connected to the I / O interface 1005 as required. A removable medium 1011, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the driver 1010 as required, so that the computer program read from it can be installed into the storage section 1008 as required.

[0181] In particular, according to an embodiment of the present application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, an embodiment of the present application includes a computer program product that includes a computer program carried on a computer-readable medium, and the computer program includes a computer program for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication section 1009, and / or installed from the removable medium 1011. When the computer program is executed by the central processing unit (CPU) 1001, various functions defined in the device of the present application are executed.

[0182] It should be noted that the computer-readable medium shown in the embodiments of the present application can be a computer-readable signal medium, a computer-readable storage medium, or any combination of the two. The computer-readable storage medium can be, for example, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples of the computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present application, the computer-readable signal medium can include a data signal propagated in a baseband or as part of a carrier wave, which carries a computer-readable computer program. Such a propagated data signal can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The computer-readable signal medium can also be any computer-readable medium other than the computer-readable storage medium, which can send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device. The computer program contained on the computer-readable medium can be transmitted by any suitable medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0183] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architectures, functions, and operations of apparatuses, methods, and computer program products according to various embodiments of the present application. In this context, each box in the flowchart or block diagram may represent a module, a program segment, or a portion of code that contains one or more executable instructions for implementing a specified logical function. It should also be noted that, in some alternative implementations, the functions marked in the boxes may occur in a different order than that marked in the accompanying drawings. For example, two consecutive boxes shown may actually be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, as well as combinations of boxes in the block diagram or flowchart, can be implemented by a dedicated hardware-based system that performs the specified functions or operations, or can be implemented by a combination of dedicated hardware and computer instructions.

[0184] The units described in the embodiments of the present application can be implemented in software or in hardware, and the described units can also be provided in a processor. In this context, the names of these units do not, in some cases, constitute a limitation on the units themselves.

[0185] On the other hand, the present application also provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor of a computer, the computer is caused to perform the vehicle position determination method as described above. The computer-readable storage medium may be included in the vehicle position determination device described in the above embodiments, or may exist separately without being assembled into the vehicle position determination device.

[0186] On the other hand, the present application also provides a computer program product or a computer program that includes computer instructions 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, causing the computer device to perform the vehicle position determination method provided in the above various embodiments.

[0187] The above embodiments are merely illustrative of the principles and effects of the present application and are not intended to limit the present application. Any person familiar with this technology can modify or change the above embodiments without departing from the spirit and scope of the present application. Therefore, all equivalent modifications or changes made by those with ordinary knowledge in the relevant technical field without departing from the spirit and technical ideas disclosed in the present application should still be covered by the claims of the present application.

Claims

1. A vehicle position determination method, characterized in that, The method includes the following steps: Perform geocoding on the longitude and latitude within the target area to obtain a geocoding standard table; Obtain the operation data of the target vehicle, and generate the operation trajectory of the target vehicle based on the longitude, latitude, and operation status in the operation data; Perform geocoding on the longitude and latitude of the starting point of the operation trajectory to obtain the coding result of the starting point of the operation trajectory; and perform geocoding on the longitude and latitude of the ending point of the operation trajectory to obtain the coding result of the ending point of the operation trajectory; Associate and match the coding result of the starting point of the operation trajectory and the coding result of the ending point of the operation trajectory with the geocoding standard table respectively to obtain the starting point location and the ending point location of the operation trajectory; Count the number of stops of the target vehicle at the starting point location and the ending point location within the first time period, and use the location with the most stops as the resident location of the target vehicle.

2. The vehicle position determination method according to claim 1, wherein The process of performing geocoding on the longitude and latitude within the target area to obtain a geocoding standard table includes: Perform geocoding on the longitude and latitude within the target area to obtain a geocoding standard table corresponding to provincial information; wherein, the geocoding standard table corresponding to provincial information includes: province code, province name, and physical address; Alternatively, perform geocoding on the longitude and latitude within the target area to obtain a geocoding standard table corresponding to municipal information; wherein, the geocoding standard table corresponding to municipal information includes: province code, province name, city code, city name, and physical address; Alternatively, perform geocoding on the longitude and latitude within the target area to obtain a geocoding standard table corresponding to district / county-level information; wherein, the geocoding standard table corresponding to district / county-level information includes: province code, province name, city code, city name, district / county code, district / county name, and physical address.

3. The vehicle position determination method according to claim 1 or 2, characterized in that, After performing geocoding on the longitude and latitude within the target area to obtain a geocoding standard table, the method further includes: Generate a relationship table between geocoding length and coding error based on the accuracy of the geocoding standard table; Alternatively, generate a relationship table between geocoding length and coding digits based on the accuracy of the geocoding standard table; Alternatively, generate a relationship table between geocoding length, coding digits, and coding error based on the accuracy of the geocoding standard table.

4. The vehicle position determination method according to claim 1, wherein The process of obtaining the operation data of the target vehicle and generating the operation trajectory of the target vehicle based on the longitude, latitude, and operation status in the operation data includes: Obtain the operation data of the target vehicle; Parse the operation data, obtain the longitude, latitude, and engine operation status in the operation data, and sort by time; Based on the change in the engine operation status after sorting, determine the starting point and the ending point of the operation trajectory of the target vehicle; According to the starting point, the ending point, and the longitude and latitude in the operation data, splice and generate the operation trajectory of the target vehicle.

5. The vehicle position determination method according to claim 4, characterized in that When splicing and generating the operation trajectory of the target vehicle, the method further includes: Judge whether the time interval between the next trajectory start point to be spliced and the current spliced trajectory end point is less than a preset duration; If the time interval is less than the preset duration, splice the next trajectory start point with a time interval less than the preset duration; If the time interval is greater than or equal to the preset duration, then stop splicing the running track of the target vehicle.

6. The vehicle position determination method according to claim 1, wherein The process of performing geocoding on the longitude and latitude within the target area to obtain a geocoding standard table includes: Determine part or all of the longitude and latitude ranges from the longitude and latitude ranges of the target area, and denote them as the target longitude and latitude ranges; Randomly select a starting point from within the target longitude and latitude ranges, and denote it as the first starting point; Perform geocoding on the first starting point to obtain a first geocoding result; Put the first geocoding result into the parsed queue, and add the object to be coded to the queue to be parsed; Judge whether there are no elements in the parsed queue and all threads in the thread pool are idle; if so, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, obtain a thread from the thread pool and an object to be coded from the queue to be parsed, and call the target interface to obtain the parsing information of the position data of the center point according to the position data of the center point of the object to be coded; Judge whether the parsing information contains normal information; if it does not contain normal information, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, if it contains normal information, store the parsing information and the corresponding geocoding results in the standard table, and obtain K coded objects adjacent to the object to be coded; Judge whether the center point of the object to be coded is within the target longitude and latitude ranges; if not, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, if it is within the target longitude and latitude ranges, proceed to the next step; Judge whether the geocoding result of the object to be coded is in the parsed queue; if so, end the current process and generate a geocoding standard table based on the geocoding results at the current moment; otherwise, add the geocoding result of the object to be coded to the parsed queue, add the next object to be coded to the queue to be parsed, and continue to judge whether there are no elements in the parsed queue and all threads in the thread pool are idle.

7. The vehicle position determination method according to claim 1, 2 or 6, characterized in that The method of performing geocoding on the longitude and latitude within the target area includes: performing Geohash coding on the longitude and latitude within the target area.

8. A vehicle position determination device, characterized in that, The device includes: A coding standard table module, which is used to perform geocoding on the longitude and latitude within the target area to obtain a geocoding standard table; A running track module, which is used to obtain the running data of the target vehicle, and generate the running track of the target vehicle based on the longitude, latitude and running status in the running data; A coding module, which is used to perform geocoding on the longitude and latitude of the starting point of the running track to obtain a coding result of the starting point of the running track; And perform geocoding on the longitude and latitude of the ending point of the running track to obtain a coding result of the ending point of the running track; A coding association module, which is used to respectively associate and match the coding result of the starting point of the running track and the coding result of the ending point of the running track with the geocoding standard table to obtain the starting point position and the ending point position of the running track; A location determination module, configured to count the number of times the target vehicle stays at the starting point location and the ending point location within a first time period, and use the location with the most stay times as the resident location of the target vehicle.

9. A vehicle position determination device, characterized in that, The device includes: One or more processors; A storage device, configured to store one or more programs, which, when executed by the one or more processors, cause the device to implement the vehicle location determination method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, A computer program is stored thereon, which, when executed by a processor of a computer, causes the computer to execute the vehicle location determination method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Analysis method for usual parking place of vehicle

    CN105843943A

  • GPS data analysis method and system

    CN113138985A

  • Service station site selection method based on GEOHASH algorithm

    CN111178577A

  • Interest point determination method and device, computer equipment and storage medium

    CN111380541A