CN111405483A - Travel track generation method and device, electronic equipment and storage medium - Google Patents

Travel track generation method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN111405483A
CN111405483A CN202010163491.7A CN202010163491A CN111405483A CN 111405483 A CN111405483 A CN 111405483A CN 202010163491 A CN202010163491 A CN 202010163491A CN 111405483 A CN111405483 A CN 111405483A
Authority
CN
China
Prior art keywords
point
positioning
points
preset
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010163491.7A
Other languages
Chinese (zh)
Other versions
CN111405483B (en
Inventor
王健
刘天笔
焦尚伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010163491.7A priority Critical patent/CN111405483B/en
Publication of CN111405483A publication Critical patent/CN111405483A/en
Application granted granted Critical
Publication of CN111405483B publication Critical patent/CN111405483B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Navigation (AREA)

Abstract

The application relates to the technical field of positioning analysis, and provides a travel track generation method, a travel track generation device, electronic equipment and a storage medium, wherein the travel track generation method comprises the following steps: based on a preset spatial clustering algorithm, traversing the positioning points ordered in sequence, and executing the stop point identification: taking one traversed positioning point as a central point, determining a neighborhood of the positioning point, determining a target point based on the neighborhood, setting the target point meeting preset stay conditions as a stay point, traversing the next positioning point, and repeatedly executing the stay point identification step until the traversal is finished; and generating a travel track based on the positioning points after the stop points are combined. The implementation of the method is beneficial to reducing the stroke track length corresponding to the stopping point, thereby effectively solving the problem of abnormal stroke charging; furthermore, the travel track generated based on the positioning point after the stop point is merged enables the display effect of the travel track to be smoother, and user experience is improved.

Description

Travel track generation method and device, electronic equipment and storage medium
Technical Field
The present application relates to the field of positioning analysis technologies, and in particular, to a method and an apparatus for generating a travel trajectory, an electronic device, and a storage medium.
Background
The Beidou or GPS positioning equipment can be arranged on a car, a van and a sharing bicycle or worn on a user body, positioning information is reported to the server according to a certain frequency through the wireless data module, and the server can determine the moving track of the positioning equipment according to the collected positioning information. In the network car appointment business, the positioning equipment is a terminal used by a driver to receive orders, the positioning equipment continuously reports positioning points to the server in the process of travel, the server generates a travel track according to the positioning points, and then the order amount is calculated according to the track length and the travel time. In the process of a travel, when traffic jam, construction road repair or slow driving and the like happen, the positioning equipment can report a large number of positioning points with similar positions to the server within a period of time, and due to errors of positioning, the reported positioning points have certain deviation with real positions, so that the reported positioning points are scattered around the real positions. Because the calculation of the order amount is calculated according to the distance between the accumulated adjacent positioning points by mileage, a plurality of scattered positioning points not only can cause the final abnormal charging, but also can cause the poor stroke track display effect.
Disclosure of Invention
The application provides a method and a device for generating a travel track, an electronic device and a storage medium, which can solve at least one technical problem. The technical scheme is as follows:
in a first aspect, a method for generating a travel track is provided, including: based on a preset spatial clustering algorithm, traversing the positioning points ordered in sequence, and executing the stop point identification: taking one traversed positioning point as a central point, determining a neighborhood of the positioning point, determining a target point based on the neighborhood, setting the target point meeting preset stay conditions as a stay point, traversing the next positioning point, and repeatedly executing the stay point identification step until the traversal is finished; and generating a travel track based on the positioning points after the stop points are combined.
With reference to the first aspect, in a first implementation manner of the first aspect, the traversing the sequentially ordered anchor points based on a preset spatial clustering algorithm includes: sequencing the positioning points based on the uploading time of the positioning points; grouping the sequenced positioning points to generate at least one positioning point sequence; and traversing the positioning points based on the positioning point sequence and a preset spatial clustering algorithm.
With reference to the first implementation manner of the first aspect, in a second implementation manner of the first aspect, the generating at least one positioning point sequence for the sorted positioning point packets includes: dividing adjacent positioning points meeting preset grouping conditions into different positioning point sequences to generate at least one positioning point sequence; wherein the preset grouping condition comprises any one of the following: the uploading time difference of adjacent positioning points is greater than a first preset time length, and the distance is greater than a first preset distance; the distance between the adjacent positioning points is greater than a second preset distance; the uploading time difference of the adjacent positioning points is greater than a second preset time length; the first preset time length is less than the second preset time length, and the first preset distance is less than the second preset distance.
With reference to the first implementation manner of the first aspect, in a third implementation manner of the first aspect, the performing the stop point identification: taking a traversed locating point traversed at one time as a central point, determining a neighborhood of the traversed locating point, determining a target point based on the neighborhood, setting the target point meeting a preset stay condition as a stay point, and traversing the next locating point, wherein the method comprises the following steps: taking a traversed locating point traversed at one time as a central point, and determining a neighborhood of the traversed locating point by taking a third preset distance as a scanning radius; determining a target point based on the position relation between the subsequent positioning point sequenced after the traversal positioning point and the neighborhood and the sequencing position of the subsequent positioning point in the current positioning point sequence; wherein, the current positioning point sequence is the positioning point sequence where the traversal positioning point is located; and determining a stopping point and a next traversal positioning point based on the target point and a preset stopping condition, and traversing the next traversal positioning point.
With reference to the third implementation manner of the first aspect, in a fourth implementation manner of the first aspect, the determining a target point based on a position relationship between a subsequent anchor point ordered after the traversed anchor point and the neighborhood and an ordered position of the subsequent anchor point in the current anchor point sequence includes: determining the sequencing positions of a preset number of continuous out-of-domain positioning points outside the neighborhood in the current positioning point sequence; when all the out-of-domain positioning points are sequenced before the last position of the current positioning point sequence, determining the positioning point sequenced before the traversal positioning point reaches the first position of the out-of-domain positioning point as a first target point positioned inside and outside the neighborhood; and when any one of the out-of-domain anchor points is sequenced at the last position or after the current anchor point sequence, determining that the anchor point sequenced from the traversal anchor point to the last position of the current anchor point sequence is a second target point positioned inside and outside the neighborhood.
With reference to the fourth implementation manner of the first aspect, in a fifth implementation manner of the first aspect, the determining a stopping point and a next traversal anchor point based on the target point and a preset stopping condition includes: when the target point comprises a first target point, if the first target point meets a preset stopping condition, setting the first target point as a stopping point, and acquiring a positioning point which is sequenced at the next position behind the first target point as a next traversal positioning point; otherwise, acquiring the positioning point ordered at the position behind the traversal positioning point as the next traversal positioning point; when the target point comprises a second target point, acquiring positioning points which are sequenced at the two last bits of the second target point as a next traversal positioning point; and when the second target point meets the preset stopping condition, setting the second target point as a stopping point.
With reference to the first aspect, in a sixth implementation manner of the first aspect, the setting the target point meeting the preset stop condition as the stop point includes: determining the occupation ratio of the target point in the neighborhood; wherein the target point comprises a center point; setting a target point meeting a preset stay condition as a stay point; wherein the preset residence conditions include any one of: the proportion of the target points in the neighborhood reaches a first preset percentage and the number of the target points is greater than a first preset value; the proportion of the target points in the neighborhood reaches a second preset percentage, and the uploading time difference of the top and the last positioning points in the target points is larger than a preset time threshold; the number of the target points in the neighborhood is larger than a second preset value.
With reference to the sixth implementation manner of the first aspect, in a seventh implementation manner of the first aspect, the merging of the stopover points includes: and deleting the positioning points except the central point in the stop points.
In a second aspect, a travel track generation apparatus is provided, including:
and the traversal module is used for traversing the positioning points which are sequentially ordered based on a preset spatial clustering algorithm and executing the stop point identification: determining a neighborhood of the positioning point by taking the one traversed positioning point as a central point, determining a target point based on the neighborhood, setting the target point meeting a preset stay condition as a stay point, traversing the next positioning point, and repeatedly executing the stay point identification step until the traversal is finished; and the generating module is used for generating a travel track based on the positioning points after the stop points are combined.
With reference to the second aspect, in a first implementation manner of the second aspect, the traversal module includes: the sequencing unit is used for sequencing the positioning points based on the uploading time of the positioning points; the grouping unit is used for grouping the sequenced positioning points to generate at least one positioning point sequence; and the traversal unit is used for traversing the positioning points based on the positioning point sequence and a preset spatial clustering algorithm.
With reference to the first implementation manner of the second aspect, in a second implementation manner of the second aspect, the grouping unit includes: the generating subunit is used for dividing adjacent positioning points meeting the preset grouping condition into different positioning point sequences to generate at least one positioning point sequence; wherein the preset grouping condition comprises any one of the following: the uploading time difference of adjacent positioning points is greater than a first preset time length, and the distance is greater than a first preset distance; the distance between the adjacent positioning points is greater than a second preset distance; the uploading time difference of the adjacent positioning points is greater than a second preset time length; the first preset time length is less than the second preset time length, and the first preset distance is less than the second preset distance.
With reference to the first implementation manner of the second aspect, in a third implementation manner of the second aspect, the traversing module includes: the construction unit is used for determining the neighborhood of the traversal positioning point by taking a third preset distance as a scanning radius and taking one traversal positioning point traversed at one time as a central point; a first determining unit, configured to determine a target point based on a position relationship between a subsequent localization point ordered after the traversed localization point and the neighborhood, and an ordered position of the subsequent localization point in a current localization point sequence; wherein, the current positioning point sequence is the positioning point sequence where the traversal positioning point is located; and the second determining unit is used for determining a stop point and a next traversal positioning point based on the target point and a preset stop condition, and traversing the next traversal positioning point.
With reference to the third implementation manner of the second aspect, in a fourth implementation manner of the second aspect, the first determination unit includes: a determining subunit, configured to determine a sequence position of a preset number of consecutive external-domain positioning points outside the neighborhood in the current positioning point sequence; a determining first target point subunit, configured to determine, when all of the out-of-domain anchor points are ordered before the last bit of the current anchor point sequence, an anchor point ordered before the traversal anchor point reaches the head of the out-of-domain anchor point as a first target point located inside and outside the neighborhood; and a second target point determining subunit, configured to determine, when any of the out-of-domain anchor points is ordered at or after the last anchor point in the current anchor point sequence, an anchor point ordered before the traversal anchor point reaches the last anchor point in the current anchor point sequence as a second target point located inside or outside the neighborhood.
With reference to the fourth implementation manner of the second aspect, in a fifth implementation manner of the second aspect, the second determining unit includes: a first stay point determining subunit, configured to, when the target point includes a first target point, set the first target point as a stay point if the first target point satisfies a preset stay condition, and acquire a positioning point ordered one bit after the first target point as a next traversal positioning point; otherwise, acquiring the positioning point ordered at the position behind the traversal positioning point as the next traversal positioning point; the second determined stopping point subunit is used for acquiring positioning points which are sequenced at the two last bits of the second target point as the next traversal positioning point when the target point comprises the second target point; and when the second target point meets the preset stopping condition, setting the second target point as a stopping point.
With reference to the second aspect, in a sixth implementation manner of the second aspect, the traversal module includes: the proportion unit is used for determining the proportion of the target point in the neighborhood; wherein the target point comprises a center point; the setting unit is used for setting a target point meeting a preset stopping condition as a stopping point; wherein the preset residence conditions include any one of: the proportion of the target points in the neighborhood reaches a first preset percentage and the number of the target points is greater than a first preset value; the proportion of the target points in the neighborhood reaches a second preset percentage, and the uploading time difference of the top and the last positioning points in the target points is larger than a preset time threshold; the number of the target points in the neighborhood is larger than a second preset value.
With reference to the sixth implementation manner of the second aspect, in a seventh implementation manner of the second aspect, the generating module includes: and the deleting unit is used for deleting the positioning points except the central point in the stopping points.
In a third aspect, an electronic device is provided, which includes: one or more processors; a memory; one or more applications, wherein the one or more applications are stored in the memory and configured to be executed by the one or more processors, the one or more programs configured to: the method for generating a travel route according to any one of the embodiments of the first aspect and the first aspect is performed.
In a fourth aspect, a computer-readable storage medium is provided, where at least one instruction, at least one program, a set of codes, or a set of instructions is stored, and the at least one instruction, the at least one program, the set of codes, or the set of instructions is loaded and executed by a processor to implement the method for generating a travel route according to any one of the embodiments of the first aspect and the first aspect.
The beneficial effect that technical scheme that this application provided brought is:
compared with the prior art, the method and the device for generating the travel track, the electronic equipment and the storage medium have the advantages that based on the preset spatial clustering algorithm, the sequentially ordered positioning points are traversed, and the stay point identification is executed: and taking one traversed positioning point as a central point, determining a neighborhood of the positioning point, determining a target point based on the neighborhood, setting the target point meeting a preset stay condition as a stay point, traversing the next positioning point, repeatedly executing the stay point identification step until the traversal is finished, and generating a travel track based on the positioning points after merging the stay points. The target point is determined based on the neighborhood of the positioning point, namely, the target points scattered around the positioning point are identified; further, setting a target point meeting a preset stay condition as a stay point, namely identifying a plurality of scattered stay points uploaded by the user terminal due to positioning errors when the user terminal is at the same position within a period of time; according to the method and the device, a plurality of scattered stop points are effectively identified, and the travel track is generated based on the positioning points after the stop points are combined, so that the length of the travel track corresponding to the stop points is favorably reduced, and the problem of abnormal travel charging is effectively solved; furthermore, the travel track generated based on the positioning point after the stop point is merged enables the display effect of the travel track to be smoother, and user experience is improved.
Additional aspects and advantages of the present application will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the present application.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings used in the description of the embodiments of the present application will be briefly described below.
Fig. 1 is an application environment diagram of a travel track generation method according to an embodiment of the present disclosure;
fig. 2 is a schematic flowchart of a method for generating a travel route according to an embodiment of the present disclosure;
fig. 3 is a schematic flowchart of a method for generating a travel route according to an embodiment of the present application;
fig. 4 is a schematic flowchart of a method for generating a travel track according to an embodiment of the present application;
fig. 5 is a schematic flowchart of a method for generating a travel track according to an embodiment of the present application;
fig. 6 is a schematic flowchart of a method for generating a travel track according to an embodiment of the present application;
fig. 7 is a schematic distribution diagram of neighborhood inside and outside positioning points in a travel track generation method according to an embodiment of the present application;
fig. 8 is a schematic distribution diagram of neighborhood inside and outside positioning points in the travel track generation method according to the embodiment of the present application;
fig. 9 is a schematic flowchart of a method for generating a travel route according to an embodiment of the present application;
fig. 10 is a schematic flowchart of a method for generating a travel route according to an embodiment of the present application;
fig. 11 is a schematic flowchart of a method for generating a travel route according to an embodiment of the present application;
FIG. 12a is a travel path diagram generated without applying the travel path generation method provided by the embodiment of the present application;
FIG. 12b is a travel path diagram generated by applying the travel path generation method according to the embodiment of the present disclosure;
fig. 13 is a schematic structural diagram of a travel track generation apparatus according to an embodiment of the present application;
fig. 14 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
Reference will now be made in detail to the embodiments of the present application, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to the same or similar elements or elements having the same or similar function throughout. The embodiments described below with reference to the drawings are exemplary only for the purpose of explaining the present application and are not to be construed as limiting the present application.
As used herein, the singular forms "a", "an", "the" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprises" and/or "comprising," when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. It will be understood that when an element is referred to as being "connected" or "coupled" to another element, it can be directly connected or coupled to the other element or intervening elements may also be present. Further, "connected" or "coupled" as used herein may include wirelessly connected or wirelessly coupled. As used herein, the term "and/or" includes all or any element and all combinations of one or more of the associated listed items.
To make the objects, technical solutions and advantages of the present application more clear, embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
The terms referred to in this application will first be introduced and explained:
a user side: the system is used for uploading positioning points to a server, and comprises a passenger end and a driver end, wherein the passenger end is a mobile phone APP used by a passenger for taxi taking in network taxi appointment software; the driver terminal is a mobile phone APP used by a driver to receive orders in the network taxi appointment software.
A stroke track: the user end can upload positioning points (track points) to the server without stopping in the process of travel, the positioning points comprise information such as positioning time, longitude and latitude, precision, speed, direction and the like, and the positioning points jointly form the travel track of the user. The data sources of the positioning points comprise base station positioning, WIFI positioning, GPS positioning and the like. In the network car booking software, a server generally generates a travel track according to a positioning point uploaded by a driver end. And the adjacent positioning points are positioning points with adjacent uploading time.
Stopping point: in the process of travel, the problems of traffic jam, road repair and the like can cause that the user terminal is at the same position in a certain time period or the position is not greatly changed, and the positioning point uploaded by the user terminal in the time period is the stop point.
Base station positioning: the principle is that the base station position information is adopted, the electronic equipment is obtained when a sim card is inserted and network signals exist, and the positioning accuracy is generally within the range of hundreds of meters.
GPS positioning: the principle is that the electronic equipment receives satellite broadcasting, and position information of the electronic equipment is obtained by analyzing information such as the position and the distance of a visible satellite and a corresponding algorithm. The positioning precision is generally within the range of 15 meters; wherein the number of satellites will affect the positioning accuracy.
WIFI positioning: the principle is that the electronic equipment is accurately triangulated through a difference algorithm based on the wireless signal intensity of the electronic equipment and three wireless network access points. The positioning accuracy is typically in the range of tens of meters.
DBSCAN algorithm: a density-based spatial clustering algorithm that divides regions of sufficient density into clusters and finds arbitrarily shaped clusters in noisy spatial data and defines the clusters as the largest set of density-connected points. The algorithm utilizes a concept based on density clustering, i.e., requiring that the number of objects (points or other spatial objects) contained within a certain area (e.g., a scan radius) in the clustering space is not less than a certain given threshold (e.g., the minimum contained points, MinPts). The DBSCAN algorithm has the obvious advantages of high clustering speed and capability of effectively processing noise points and finding spatial clusters of any shapes.
The following describes the technical solutions of the present application and how to solve the above technical problems with specific embodiments. The following several specific embodiments may be combined with each other, and details of the same or similar concepts or processes may not be repeated in some embodiments. Embodiments of the present application will be described below with reference to the accompanying drawings.
The travel track generation method provided by the application can be applied to the network appointment operation environment shown in fig. 1. Specifically, the passenger end initiates a vehicle using order to the server, the server distributes the order to the driver end, after the driver receives the passenger, the driver end reports the positioning point to the server according to a certain frequency, the travel ending server generates a travel track according to the positioning point and generates a travel bill according to the travel track, so that the travel track and the travel bill are issued to the driver end and the passenger end, and the passenger end pays the vehicle using cost according to the bill. In an embodiment, the location point may also be reported to the server by the passenger side, and the server generates the travel track by comprehensively analyzing the location points reported by the driver side and the passenger side.
In the method for generating a travel route according to the embodiment of the present application, as shown in fig. 2, the method includes:
step S101: based on a preset spatial clustering algorithm, traversing the positioning points ordered in sequence, and executing the stop point identification: taking one traversed positioning point as a central point, determining a neighborhood of the positioning point, determining a target point based on the neighborhood, setting the target point meeting preset stay conditions as a stay point, traversing the next positioning point, and repeatedly executing the stay point identification step until the traversal is finished;
step S102: and generating a travel track based on the positioning points after the stop points are combined.
Specifically, the method of the embodiment of the present application is described below with the execution subject as a server, but the method is not limited to the scheme of the present application.
In step S101, based on a preset spatial clustering algorithm, the sequentially ordered anchor points are traversed, and a stay point is identified: taking one traversed positioning point as a central point, determining a neighborhood of the positioning point, determining a target point based on the neighborhood, setting the target point meeting a preset stay condition as a stay point, traversing the next positioning point, and repeatedly executing the stay point identification step until the traversal is finished, wherein specifically, the positioning points stored by the server are sequenced according to a certain sequence (in an embodiment, the server is sequenced and stored according to the uploading time of the positioning points), and the sequence of the positioning points stored by the server is performed when the positioning points are traversed based on a preset spatial clustering algorithm; the spatial clustering algorithm in the application builds a neighborhood by taking one positioning point traversed at one time as a central point, wherein the neighborhood is an area which extends outwards by a certain distance X by taking the positioning point as the center. In an embodiment, when determining the target point based on the neighborhood, the target point includes positioning points located inside and outside the neighborhood, i.e. the target point includes positioning points having a distance less than a certain distance X from the central point and also includes positioning points having a distance greater than a certain distance X from the central point. The preset stopping condition may be understood as a condition for dividing the positioning points of a certain area into clusters based on spatial clustering algorithm clustering, for example, the number of objects included in a certain area (for example, radius e, i.e., a certain distance X) in a clustering space is required to be not less than a certain preset threshold (for example, the minimum number of points included, MinPts); in one embodiment, the preset stay condition is an analysis condition set based on a preset spatial clustering algorithm. Setting the target point as the dwell point may be to identify the target point, where if the positioning point D1 is used as the center point, the corresponding dwell point is identified as T1, and if the positioning point D2 is used as the center point, the corresponding dwell point is identified as T2. The stop point is a positioning point uploaded when the position of the driver end is not greatly changed within a certain time range, and can be understood as a positioning point uploaded by the driver end when the driver slowly moves within traffic jam time in application. The traversal of the positioning points is a loop step, and one positioning point is traversed each time until the traversal is finished.
In step S102, in generating the travel track based on the positioning points after merging the stop points, specifically, merging the stop points may be understood as merging a plurality of stop points into one or more positioning points, and when merging into one, the stop points may be taken as an average of positions of the plurality of stop points (for example, a longitude and latitude calculated average of the plurality of stop points, and a position indicated by the longitude and latitude average is taken as the merged stop point), or one or more of the stop points may be taken as the merged positioning point. In one embodiment, when the anchor point is the center point, the dwell points located within its neighborhood include the anchor point as the center point. The positioning points after merging the stop points comprise non-merged positioning points and merged positioning points, wherein the non-merged positioning points comprise positioning points determined to be outside the target point in the step S101 and positioning points corresponding to the target point which does not meet the preset stop condition; the merged anchor points comprise anchor points left after merging the stop points.
The method comprises the following steps of traversing the positioning points ordered in sequence based on a preset spatial clustering algorithm, and executing stay point identification: and taking one traversed locating point as a central point, determining a neighborhood of the locating point, determining a target point based on the neighborhood, setting the target point meeting preset stay conditions as a stay point to traverse the next locating point, repeatedly executing the stay point identification step, and generating a travel track based on the locating points after merging the stay points. The target point is determined based on the neighborhood of the positioning point, namely, the target points scattered around the positioning point are identified; further, setting a target point meeting a preset stay condition as a stay point, namely identifying a plurality of scattered stay points uploaded by the user terminal due to positioning errors when the user terminal is at the same position within a period of time; according to the method and the device, a plurality of scattered stop points are effectively identified, and the travel track is generated based on the positioning points after the stop points are combined, so that the length of the travel track corresponding to the stop points is favorably reduced, and the problem of abnormal travel charging is effectively solved; furthermore, the travel track generated based on the positioning point after the stop point is merged enables the display effect of the travel track to be smoother, and user experience is improved.
In an embodiment, as shown in fig. 3, the step S101 traverses the sequentially ordered anchor points based on a preset spatial clustering algorithm, and includes:
s201, sequencing the positioning points based on the uploading time of the positioning points;
s202, grouping the sequenced positioning points to generate at least one positioning point sequence;
s203, traversing the positioning points based on the positioning point sequence and a preset spatial clustering algorithm.
In the step S201, in the sequencing of the anchor points based on the upload time of the anchor points, the anchor points are sequenced according to the upload time, for example: the uploading time 00:01:26 at the positioning point 1, the uploading time 00:01:27 at the positioning point 2, the uploading time 00:03:31 at the positioning point 3 and the uploading time 00:04:33 at the positioning point 4; the sequence of anchor points is anchor point 1-anchor point 2-anchor point 3-anchor point 4.
In step S202, in grouping the sequenced anchor points to generate at least one anchor point sequence, as illustrated by the example of step S201, the sequenced anchor points, such as anchor point 1-anchor point 2-anchor point 3-anchor point 4, have a plurality of grouping possibilities when grouping the sequenced anchor points, such as dividing the sequence into an anchor point sequence a, anchor point 1-anchor point 2, and an anchor point sequence B, anchor point 3-anchor point 4; or dividing the sequence into a positioning point sequence C positioning point 1-positioning point 2-positioning point 3-positioning point 4. That is, in the grouping, it is not limited that the sequenced anchor points must be grouped, and there may be only one anchor point sequence, which includes all sequenced anchor points.
In step S203, in traversing the anchor points based on the anchor point sequence and the preset spatial clustering algorithm, the method of traversing the anchor points is determined based on the anchor point sequence and the preset spatial clustering algorithm.
In an embodiment, as shown in fig. 4, the step S202 generates at least one positioning point sequence for the sorted positioning point packets, including:
s301, dividing adjacent positioning points meeting preset grouping conditions into different positioning point sequences to generate at least one positioning point sequence; wherein the preset grouping condition comprises any one of the following: the uploading time difference of adjacent positioning points is greater than a first preset time length, and the distance is greater than a first preset distance; the distance between the adjacent positioning points is greater than a second preset distance; and the uploading time difference of the adjacent positioning points is greater than a second preset time length.
Specifically, the adjacent positioning points are positioning points with adjacent uploading time, and the distance between the adjacent positioning points is a linear distance between two points; the above step S301 is exemplified by: the first preset time is 2min, the first preset distance is 200m, the second preset distance is 300m, the second preset time is 7min, and the sequenced positioning points (latitude, longitude, uploading time):
D1(23.110869548,113.26914148,2019-11-18 00:07:37)
D2(23.1108780807,113.269262088,2019-11-18 00:07:39)
D3(23.1108962678,113.269324574,2019-11-18 00:07:40)
D4(23.1092513406,113.270273444,2019-11-18 00:11:40)
D5(23.109152812,113.270268672,2019-11-18 00:11:41)
the distance between D3 and D4 is 207m and is greater than the first preset distance 200m, and the uploading time difference is 4min and is greater than the first preset time length 2 min; in this regard, the adjacent anchor points D3 and D4 are divided into different anchor point sequences, and therefore, the anchor point sequences generated by grouping are as follows: the sequence A D1-D2-D3 and the sequence B D4-D5.
Optionally, in this embodiment of the application, the first preset duration is shorter than the second preset duration, and the first preset distance is shorter than the second preset distance. Specifically, in the preset grouping conditions, a condition is defined by the first preset time and the first preset distance, the first preset time is limited to be shorter than the second preset time, and the first preset distance is shorter than the second preset distance, so that the accuracy of grouping the positioning points is improved.
According to the embodiment of the application, the plurality of positioning point sequences are generated by grouping the sequenced positioning points, so that the state of the vehicle in application can be divided, if the current state of the vehicle is judged to be slow advancing or normal advancing according to the distance and time of the vehicle, the positioning point corresponding to the slow advancing is divided from the positioning point corresponding to the normal advancing, the division can be used for reducing the traversal of the positioning point corresponding to the normal advancing, and the traversal calculation amount of the positioning point is favorably reduced. Further, in practical application, due to the instability of signals, the user terminal may not upload the anchor points according to the set frequency within a period of time, and at this time, the anchor points before and after the period of time are divided, which is beneficial to reducing the traversal calculation amount of the anchor points.
In one embodiment, as shown in fig. 5, the step S101 performs a stop point identification: taking one traversed locating point as a central point, determining a neighborhood of the locating point, determining a target point based on the neighborhood, setting the target point meeting a preset stay condition as a stay point, and traversing the next locating point comprises the following steps:
s401, taking one traversed locating point traversed at one time as a central point, and determining a neighborhood of the traversed locating point by taking a third preset distance as a scanning radius;
s402, determining a target point based on the position relation between the subsequent positioning point sequenced after the traversal positioning point and the neighborhood and the sequencing position of the subsequent positioning point in the current positioning point sequence; wherein, the current positioning point sequence is the positioning point sequence where the traversal positioning point is located;
s403, determining a stop point and a next traversal anchor point based on the target point and a preset stop condition, and traversing the next traversal anchor point.
In step S401, using one traversed location point obtained in one traversal as a central point, and using a third preset distance as a scanning radius to determine a neighborhood of the traversed location point, specifically, when traversing the location point, a first traversed location point obtained by the traversal location point is a location point with the earliest upload time in all the location points, that is, a location point ordered at the first position; and determining the neighborhood of the traversal positioning point by taking the third preset distance as a scanning radius, namely determining the neighborhood of the positioning point by taking the third preset distance as the scanning radius (at this time, the constructed neighborhood is a circular region) when the positioning point is taken as a central point.
Determining a target point based on the position relationship between the subsequent positioning point ordered after the traversal positioning point and the neighborhood and the ordered position of the subsequent positioning point in the current positioning point sequence in step S402; the current localization point sequence is in the localization point sequence where the traversal localization point is located, and specifically, the determination of the target point has two parallel conditions, one of which is: the position relation between the subsequent positioning point and the neighborhood; subsequent anchor points are the anchor points ordered after the traversal anchor point, such as the ordered anchor points D1-D2-D3-D4- … -Dn; when the traversal positioning point D2 is taken as a central point, D3-D4- … -Dn is a subsequent positioning point; the neighborhood is constructed based on the traversal anchor point D2; the positional relationship of the subsequent localization point to the neighborhood includes: within the neighborhood and outside the neighborhood; if the position is located in the vicinity of the traversal positioning point D2, namely the subsequent positioning point is D3, the straight-line distance between D3 and D2 is smaller than the third preset distance; the straight-line distance between the D4 and the D2 is greater than the third preset distance at a position outside the vicinity of the traversal positioning point D2, namely, a subsequent positioning point such as D4. In an embodiment, if the linear distance between the subsequent positioning point and the traversed positioning point is equal to the third predetermined distance, the subsequent positioning point and the traversed positioning point are considered to be in the neighborhood. The second step is as follows: the subsequent positioning point is at the sequencing position of the current positioning point sequence; grouping the sequenced positioning points, wherein the ergodic positioning points only possibly exist in one positioning point sequence, and determining the sequencing position of the subsequent positioning point in the current positioning point sequence by taking the current positioning point sequence where the ergodic positioning points exist as a reference, specifically, the sequencing position of the subsequent positioning point in the current positioning point sequence comprises the following steps: the sequence is ordered in the current anchor point sequence, ordered in the last bit of the current anchor point sequence and ordered outside the current anchor point sequence. For example, the sorted anchor points D1-D2-D3-D4- … -Dn, D1 is a traversal anchor point serving as a central point, the current anchor point sequence D1-D2-D3-D4, the subsequent anchor points comprise D2-D3-D4- … -Dn, namely D2-D3 are sorted in the current anchor point sequence, D4 is sorted at the last bit of the current anchor point sequence, and D5-Dn is sorted after the current anchor point sequence. Wherein the target point is part of the anchor point.
In step S403, a stopping point and a next traversal anchor point are determined based on the target point and the preset stopping condition, and the next traversal anchor point is traversed, specifically, the stopping point is the target point meeting the preset stopping condition, and the next traversal anchor point is determined by the target point and the preset stopping condition. In one embodiment, not all anchor points need to be traversed. After determining the next traversal anchor point, steps S401, S402, and S403 will be repeatedly performed to traverse the next traversal anchor point until the traversal is finished.
In an embodiment, as shown in fig. 6, said step S402 of determining the target point based on the position relationship between the subsequent anchor point ordered after the traversed anchor point and the neighborhood, and the ordered position of the subsequent anchor point in the current anchor point sequence includes:
s501, determining the sequencing positions of a preset number of continuous out-of-domain positioning points outside the neighborhood in the current positioning point sequence;
s502, when all the positioning points outside the domain are sequenced before the last position of the current positioning point sequence, determining the positioning point sequenced before the traversal positioning point reaches the head position of the positioning point outside the domain as a first target point positioned inside and outside the neighborhood;
s503, when any of the anchor points outside the domain is ordered at the last position or after the last position of the current anchor point sequence, determining the anchor point ordered from the traversal anchor point to the last position of the current anchor point sequence as the second target point inside or outside the neighborhood.
Specifically, in step S501, the out-of-domain anchor point has two definitions, one is located outside the neighborhood, and the other includes a preset number of anchor points; namely, the positioning points outside the domain are the positioning points which are continuously preset with a plurality of positioning points outside the adjacent domain in the subsequent positioning points. When the sequencing position of the sequence of the current positioning point is determined, the positioning points outside the domain can be regarded as a whole, and at the moment, the last positioning point in the positioning points outside the domain is sequenced after the sequence of the current positioning point, and then the positioning points outside the domain are regarded as sequenced after the sequence of the current positioning point.
In step S502, when all the out-of-domain anchor points are ordered before the last position of the current anchor point sequence, it is determined that the anchor point ordered before the traversal anchor point to the head of the out-of-domain anchor point is the first target point located inside and outside the neighborhood. Namely, when the whole of the positioning points outside the domain are sequenced in the current positioning point sequence, the first target point is determined. For example, the ordered positioning points D1-D2-D3-D4- … -Dn traverse positioning point D1 as a central point, the current positioning point sequence D1-D2-D3-D4-D5-D6 has a preset number of 3, where D3-D4-D5 are 3 continuous out-of-domain positioning points located outside the neighborhood, and it is determined that positioning point D2 before traversing positioning point D1 to out-of-domain positioning point D3-D4-D5 first position D3 is a first target point inside and outside the neighborhood, that is, the first target point includes D1 and D2.
In step S503, when any of the out-of-domain anchor points is ranked at the last position or after the current anchor point sequence, it is determined that the anchor point ranked before the traversal anchor point reaches the last position in the current anchor point sequence is the second target point located inside or outside the neighborhood. Namely, when the whole of the out-of-domain positioning points are sequenced at the last position or behind the current positioning point sequence, the second target point is determined. Specifically, the background condition implemented in this step is that a preset number of consecutive out-of-domain anchor points are not available before the last bit of the current anchor point sequence and are outside the neighborhood. For example, the sorted anchor points D1-D2-D3-D4- … -Dn are traversed by using the anchor point D1 as a central point, the current anchor point sequence D1-D2-D3-D4-D5-D6 is preset by 3, wherein D5-D6-D7 is that 3 consecutive out-of-domain anchor points in the subsequent anchor points are out of the neighborhood, but D7 is not before the last bit of the current anchor point sequence, it is determined that the anchor point D5 traversing through anchor point D1 to the last bit D6 in the current anchor point sequence D1-D2-D3-D4-D5-D6 is a second target point located inside and outside the neighborhood, that is the second target point, that is, the second target point includes D1, D2, D3, D4 and D5.
In an embodiment, when determining the position relationship between the subsequent positioning point and the neighborhood, a preset number of consecutive positioning points are outside the neighborhood, that is, the subsequent positioning point has a straight-line distance between the preset number of consecutive out-of-domain positioning points and the traversal positioning point as the central point, which is greater than a third preset distance. Specifically, based on steps S501 and S502, the following is illustrated in conjunction with fig. 7: assume that the ordered anchor points are as follows: D1-D2-D3-D4-D5-D6-D7-D8- … -Dn; traversing the positioning point D1 as a central point, wherein the subsequent positioning points comprise D2-D3-D4-D5-D6-D7-D8- … -Dn, the preset number is 3, and the current positioning point sequence is D1-D2-D3-D4-D5-D6-D7-D8; the result of determining the position relationship between the subsequent positioning point and the neighborhood is as follows:
the distance between D2 and D1 is less than a third preset distance and is in the vicinity of D1;
the distance between D3 and D1 is greater than a third preset distance and is outside the D1 neighborhood;
the distance between D4 and D1 is less than a third preset distance and is in the vicinity of D1;
the distance between D5 and D1 is greater than a third preset distance and is outside the D1 neighborhood;
the distance between D6 and D1 is greater than a third preset distance and is outside the D1 neighborhood;
the distance between D7 and D1 is greater than the third predetermined distance, outside the neighborhood of D1.
Because D5-D6-D7 in the subsequent anchor points are all located outside the D1 neighborhood, that is, the condition that a preset number of continuous outside-domain anchor points are located outside the neighborhood is met, and the sequencing positions of the outside-domain anchor points D5-D6-D7 are all in the current anchor point sequence, the anchor points D1-D2-D3-D4 are taken as the first target points. As can be seen from the above examples, in the embodiment of the present application, when there are a preset number of consecutive out-of-domain anchor points outside the neighborhood and the out-of-domain anchor points are ordered in the current anchor point sequence, the position relationship between the anchor points ordered behind the out-of-domain anchor points and the neighborhood is no longer determined, that is, the position relationship between the neighbors D8- … -Dn and D1 is no longer determined; and further, the first target point includes an anchor point D3 located outside the neighborhood.
Based on steps S501 and 503, with reference to fig. 8, the following example is illustrated: assume that the ordered anchor points are as follows: D1-D2-D3-D4-D5-D6-D7-D8- … -Dn; traversing the positioning point D1 as a central point, wherein the subsequent positioning points comprise D2-D3-D4-D5-D6-D7-D8- … -Dn, the preset number is 3, and the current positioning point sequence is D1-D2-D3-D4-D5-D6-D7-D8; the result of determining the position relationship between the subsequent positioning point and the neighborhood is as follows:
the distance between D2 and D1 is less than a third preset distance and is in the vicinity of D1;
the distance between D3 and D1 is greater than a third preset distance and is outside the D1 neighborhood;
the distance between D4 and D1 is less than a third preset distance and is in the vicinity of D1;
the distance between D5 and D1 is greater than a third preset distance and is in the vicinity of D1;
the distance between D6 and D1 is greater than a third preset distance and is in the vicinity of D1;
the distance between D7 and D1 is greater than a third preset distance and is outside the D1 neighborhood;
d8 is located at the last bit of the current anchor point sequence.
Since the condition that a preset number of consecutive out-of-domain anchor points are located outside the neighborhood is not reached before D8 in the subsequent anchor points, since D8 is the last bit of the current anchor point sequence, it will trigger exiting the traversal operation for traversal anchor point D1, i.e. the positional relationship between D8 and the neighborhood of D1 is no longer determined, at this time, the second target points include D1, D2, D3, D4, D5, D6, and D7. Therefore, in one embodiment, when the position relationship between the subsequent positioning point and the neighborhood is determined, whether the subsequent positioning point is sequenced in the current positioning point sequence or not is preferentially judged, if not, the traversal operation of the current traversal positioning point can be directly quitted, and the overall calculation amount of the scheme is reduced.
In an embodiment, as shown in fig. 9, the step S403 determines a stopping point and a next traversal anchor point based on the target point and a preset stopping condition, including:
s601, when the target point comprises a first target point, if the first target point meets a preset stay condition, setting the first target point as a stay point, and acquiring a positioning point ordered one bit behind the first target point as a next traversal positioning point; otherwise, acquiring the positioning point ordered at the position behind the traversal positioning point as the next traversal positioning point;
s602, when the target point comprises a second target point, acquiring positioning points which are sequenced at two last bits of the second target point as a next traversal positioning point; and when the second target point meets the preset stopping condition, setting the second target point as a stopping point.
Step S601 and step S602 respectively correspond to two situations of determining a next traversal anchor point, where the first is that when the current target point is the first target point, the next traversal anchor point can be determined only after determining whether the first target point meets a preset stay condition; when the first target point meets the preset stay condition, the next traversal positioning point is a positioning point one bit behind the first target point, namely a positioning point at the head of the positioning point outside the domain; and when the first target point does not meet the preset stopping condition, the next traversal positioning point is a positioning point one bit behind the current traversal positioning point. Secondly, when the current target point is the second target point, no matter whether the second target point meets the preset stay condition, the positioning point sequenced at the two last bits of the second target point can be directly used as the next traversal positioning point (the last positioning point of the current positioning point sequence, namely the first positioning point of the next positioning point sequence). Therefore, in the second case, the next traversed anchor point is the anchor point ordered at the two last bits of the second target point, and at this time, the analysis process for the anchor point at the one last bit of the second target point (the last anchor point in the current anchor point sequence) is omitted, and the calculation amount is reduced. When the first target point or the second target point meets the preset stopping condition, the corresponding positioning point is set as a stopping point.
In one embodiment, as shown in fig. 10, the step S101 of setting the target point satisfying the preset staying condition as the staying point includes:
s701, determining the occupation ratio of a target point in a neighborhood; wherein the target point comprises a center point;
s702, setting a target point meeting a preset stay condition as a stay point; wherein the preset residence conditions include any one of: the proportion of the target points in the neighborhood reaches a first preset percentage and the number of the target points is greater than a first preset value; the proportion of the target points in the neighborhood reaches a second preset percentage, and the uploading time difference of the top and the last positioning points in the target points is larger than a preset time threshold; the number of the target points in the neighborhood is larger than a second preset value.
For example, assuming that the first preset percentage is 90%, the first preset value is 40, the second preset percentage is 90%, the preset time threshold is 2min, the second preset value is 40, the positioning point D1 is traversed as a central point, the target point includes D1, D2, D3, D4 and D5 … D51, where D3 and D7 are outside the neighborhood, and the others are within the neighborhood; then, the total number of the target points is 51, the number in the neighborhood is 49, and the number outside the neighborhood is 2, so that the percentage of the target points in the neighborhood is 49/51, which is about 96%; at this time, the conditions that the proportion of the target point in the neighborhood reaches a first preset percentage and the number of the target points is greater than a first preset value and the conditions that the number of the target points in the neighborhood is greater than a second preset value are met, and 51 positioning points included by the target point are used as the dwell points. In one embodiment, the stop point may be identified to distinguish it from other anchor points.
In the embodiment of the present application, a dwell point is determined in a target point through a preset dwell condition, and in combination with a spatial clustering algorithm, that is, whether a set of clusters can form a cluster is determined, when the set (target point) meets a preset density or spatial distribution requirement (preset dwell condition), the set (target point) can be defined as a cluster (dwell point), and at this time, since the dwell point may include a positioning point (noise point) located outside a neighborhood, a shape of a region formed by the dwell point has an arbitrary property, which is beneficial to improving accuracy of the identification of the dwell point.
In an embodiment, the merging of the stop points is to delete the anchor points except the center point in the stop points, specifically, to reserve the anchor point as the center point in the stop points, and delete the other anchor points. Because the currently optimized stay point is obtained by taking the positioning point as the central point for identification, when the stay point is optimized, the stay point at the periphery of the central point is deleted by the reserved central point, and the positioning accuracy of the optimized stay point is facilitated.
In the embodiment of the present application, the condition for determining the next traversal anchor point (i.e. the condition for exiting from traversing the traversal anchor point) includes that a preset number of consecutive out-of-domain anchor points in the subsequent anchor points are located outside the neighborhood of the central point, and then the anchor point ordered at the head of the out-of-domain anchor points is used as the next traversal anchor point; therefore, in the implementation of the method, all the positioning points do not need to be traversed, namely, the neighborhood does not need to be built for all the positioning points, and the method is favorable for reducing the calculation amount of positioning point analysis; furthermore, the condition of exiting from the traversal of the traversal positioning points includes that a preset number of continuous positioning points outside the domain are outside the adjacent domain, which is beneficial to identifying the condition that the positioning information acquired by individual stop points has larger error, resulting in being outside the adjacent domain, and improves the accuracy of identifying the stop points.
In an embodiment, with reference to fig. 11, description is made on execution logic of the travel track generation method provided in the embodiment of the present application.
Step S1 sequences the obtained positioning points according to their uploading time, that is, the positioning points can be stored according to the uploading time at the server, and after the positioning points are received, the stored sequence is the positioning points sequenced according to the uploading time.
Step S2 is to divide the adjacent anchor points meeting the preset grouping condition into different anchor point sequences, and after grouping, at least one anchor point sequence can be generated. The preset grouping condition is the same as that in the step S301, and is not described herein again; in fig. 11, when a preset grouping condition is satisfied, the sorted anchor points are grouped into two anchor point sequences, sequence 1: seg1(D1-D2-D3-D4-D5 … D14), SEQ ID NO: seg2 (D15-D16).
In the embodiment of the present application, there are two loops, i.e., loop1 and loop2, in step S3, a loop2 is used to perform a traversal loop for traversing an anchor point, and when analyzing a traversed anchor point, after determining that the traversed anchor point D1 is used as a central point from a first ordered anchor point D1, the loop2 analyzes a subsequent anchor point ordered after the traversed anchor point based on the traversed anchor point, that is, step S4. Wherein the loop1 includes steps S3, S13, S14, S15, S18, S17 and S16; the loop2 includes steps S4, S5, S6, S7, S8, S9, S10, S11, and S12.
Step S5 determines whether the current analysis anchor point is the last anchor point in the current anchor point sequence, where the current anchor point sequence is the anchor point sequence where the traversal anchor point is located, and the current analysis anchor point is the subsequent anchor point sequenced after the traversal anchor point. As seen in step S5, in the embodiment of the present application, before calculating the position relationship between the subsequent anchor point and the neighborhood, the sequence position of the current analysis anchor point in the current anchor point sequence is first determined, and if the current analysis anchor point is the last anchor point in the current anchor point sequence, the loop for the current traversal anchor point is directly exited (since the current analysis anchor point is obtained sequentially, exiting of the current loop1 is triggered when the current analysis anchor point is the last anchor point in the current anchor point sequence, and no more anchor points outside the current anchor point sequence need to be analyzed), and the process proceeds to step S13. Through the setting of step S5, it is beneficial to reduce the amount of analysis computation for each pair of traversal anchor points.
Step S6 is to calculate the linear distance dist between the current traversal positioning point and the current analysis positioning point and the upload time difference interval, that is, to determine the position relationship between the subsequent positioning point and the current neighborhood, and to determine the upload time difference between the subsequent positioning point and the traversal positioning point, where the upload time difference corresponds to the upload time difference between the top and last positioning points in the target point in the preset stay condition in step S702 of the above embodiment.
Step S7 is to determine whether the linear distance between the current analysis positioning point and the traversal positioning point is greater than 200m, where 200m corresponds to the first preset distance in the above embodiment, that is, the first preset distance in the preset grouping condition, and since the preset grouping condition needs to satisfy the condition that the uplink time difference between adjacent positioning points is greater than the first preset time duration for 2min in addition to the requirement that the linear distance between adjacent positioning points is greater than 200m, the adjacent positioning points are divided. Considering that in practical application, when the linear distance between the current analysis positioning point and the traversal positioning point is greater than 200m, the general vehicle is in a normal traveling state, and the probability of the positioning error is very small above 200m, for this reason, step S7 identifies the current analysis positioning point whose dist >200m as a normal positioning point rather than a stop point through the analysis of dist, and directly exits from the loop1 of the current traversal positioning point, and then proceeds to step S13.
Step S8, determining whether a linear distance between the current analysis positioning point and the traversal positioning point is greater than 15m and an upload time difference between the current analysis positioning point and the traversal positioning point is greater than 40S, where 15m corresponds to a scanning radius in the embodiment of the present application, that is, a third preset distance, and a linear distance dist thereof is determined to be 15m < dist <200 m; step S8 is a pre-step of identifying whether the current analysis anchor point is an out-of-neighborhood target point, and further filters the current analysis anchor point by uploading a time difference, which is beneficial to reducing the amount of computation for each traversal of the traversal anchor point.
Step S12 determines whether the current analysis anchor point is inside or outside the neighborhood, and counts. If the linear distance between the current analysis positioning point and the traversal positioning point is less than 15m, the current analysis positioning point is located in the neighborhood, and the count of the inner _ counter is increased by one; and if the distance between the current analysis positioning point and the straight line traversing the positioning point is more than 15m, the current analysis positioning point is positioned outside the neighborhood, and the count of the outer _ counter is increased by one.
Step S11 determines whether there are a preset number of consecutive anchor points outside the neighborhood. When there are N consecutive anchor points (anchor points outside the domain) in the preset number, the process proceeds to step S10, where the index j of the current analysis anchor point is set to be the previous point (an anchor point before the head of the anchor point outside the domain) of the N anchor points, and the loop1 is exited. At this time, the target point includes a first target point, and the first target point includes an anchor point that is located before the first anchor point of the traversal anchor point outside the domain. When it is determined in step S11 that the preset number of consecutive positioning points are still not outside the neighborhood, the process proceeds to step S4, i.e., the process proceeds to the next loop1, and the next positioning point in the subsequent positioning points is analyzed.
Through the loop1 loop, the target point inside and outside the traversal anchor point neighborhood can be determined, after the target point is determined through the loop1, the loop2 is entered to determine whether the target point can be set as a dwell point and determine the next traversal anchor point.
Step S13 is to calculate the occupancy ratio of the positioning point in the neighborhood of the target point, which corresponds to step S701 in the above embodiment to determine the occupancy ratio of the target point in the neighborhood, wherein the target point includes the center point.
Step S14 determines whether the target point satisfies the predetermined stop condition, and if so, sets the target point as the stop point and proceeds to step S17, where the index of the traversal anchor point as the center point is set to j +1, i.e., the next anchor point to be sequenced at the target point is taken as the next traversal anchor point (at this time, the target point is the first target point). If not, the flow proceeds to step S15.
Step S15 determines whether the current analysis anchor point is the last anchor point of the current anchor point sequence, if yes, step S17 is performed, and the subscript of the traversal anchor point as the center point is set to j +1, that is, the next anchor point ordered in the current anchor point sequence is used as the next traversal anchor point (at this time, the target point is the second target point); if not, the process proceeds to step S18.
Step S18 sets the subscript to i +1, and traverses the next traversal anchor point, that is, sets the subscript of the traversal anchor point serving as the center point to i +1, and takes the anchor point ordered one bit after the traversal anchor point serving as the center point as the next traversal anchor point (at this time, the target point is the first target point).
And after the next traversal anchor point is determined, the step S16 is carried out, and the loop2 is continued.
When the loop2 completes traversal of the anchor point, go to step S19; or when the loop2 is completed once, that is, when a stop point corresponding to the traversal positioning point as the central point is determined once, the process proceeds to step S19 once. In step S19, the stay points are merged, and the remaining anchor points after merging are anchor points for eliminating the stay trajectory.
As can be seen from the above execution steps, the large framework in the embodiment of the present application includes four parts, and the first pair of sequenced anchor points group to generate at least one anchor point sequence; secondly, circularly analyzing subsequent positioning points based on the traversal positioning points serving as the central points, and determining target points of the traversal positioning points; thirdly, circularly traversing the positioning points based on the positioning point sequence to determine a stop point; and a fourth merging stop point, wherein the travel track is generated based on the positioning point after the merging stop point.
In an embodiment, an application embodiment of the method for generating a travel route is provided in combination with fig. 12a and 12 b. Fig. 12a is a travel path generated before the method according to the embodiment of the present application is applied, and fig. 12b is a travel path generated after the method according to the embodiment of the present application is applied.
Suppose that in the network car booking service, the location points where the server acquires a certain car order are as follows:
TABLE 1 location point information sorted based on upload time
Figure BDA0002406614670000211
Figure BDA0002406614670000221
Grouping the sorted positioning points based on a preset grouping condition, and dividing D14 and D15 into two positioning point sequences due to the straight-line distance between D14 and D15 being 207m and the uploading time difference being 4min, wherein the division comprises the two positioning point sequences: seg1(D1-D2- … -D14); seg2 (D15-D16).
The linear distance and the uploading time difference of the adjacent positioning points are calculated based on the positioning point information, and the calculation result is shown in table 1. In this embodiment, it is assumed that the third predetermined distance (scanning radius) dist is 15m, the predetermined number is 3, the first predetermined percentage and the second predetermined percentage are 90%, the first predetermined value and the second predetermined value are 40, and the predetermined time threshold is 2 min.
Starting with the traversal anchor point with D1 as the head as the center point, the subsequent anchor point of D1 is analyzed. Analyzing D2, since the straight-line distance 22 of D2 from D1 is greater than dist, it is determined that D2 is outside the neighborhood; analyzing D3, since the straight-line distance 27 of D3 from D1 is greater than dist, it is determined that D3 is outside the neighborhood; analyzing D4, since the straight-line distance of D4 from D1 is greater than dist, determining that D4 is outside the neighborhood; at this time, 3 continuous anchor points (anchor points outside the domain) are located outside the neighborhood, and the sequences all belong to the anchor point sequence seg1, the traversal of the D1 is exited, that is, the loop exits, and the D1 is determined to be the first target point, at this time, the first target point does not meet the preset stopping condition, the D1 does not need to be merged, and the D2 is obtained as the next traversal anchor point.
The next traversal anchor point D2 is analyzed starting with the center point of the subsequent anchor point of D2. Analyzing D3, since the straight-line distance 5 of D3 from D2 is less than dist, it is determined that D3 is within the neighborhood; analyzing D4, since the straight-line distance of D4 from D2 is greater than dist, determining that D4 is outside the neighborhood; analyzing D5, since the straight-line distance of D5 from D2 is greater than dist, determining that D5 is outside the neighborhood; analyzing D6, since the straight-line distance of D6 from D2 is greater than dist, determining that D6 is outside the neighborhood; at this time, 3 continuous positioning points are located outside the neighborhood (the positioning points D4, D5, and D6 outside the neighborhood), and the sequences all belong to the positioning point sequence seg1, the traversal of D2 is exited, that is, the loop exits, and D2-D3 are determined to be the first target points, and at this time, the first target points do not satisfy the preset stopping condition, then the merging process of D2-D3 is not needed, and D3 is obtained to be the next traversal positioning point.
The next traversal anchor point D3 is analyzed starting with the center point of the subsequent anchor point of D3. D4, D5 are in the neighborhood, D6, D7, D8 are out of the neighborhood by analysis; at this time, 3 continuous positioning points (positioning points outside the domain) are located outside the neighborhood, and the sequences all belong to the positioning point sequence seg1, the traversal of the D3 is exited, namely, the loop exits, and the D3-D4-D5 is determined to be the first target point, at this time, the first target point does not meet the preset stopping condition, the combination processing of the D3-D4-D5 is not needed, and the D4 is obtained to be the next traversal positioning point.
The next traversal anchor point D4 is analyzed starting with the center point of the subsequent anchor point of D4. D5, D6 and D7 are analyzed to be in the neighborhood, and D8, D9 and D10 are analyzed to be out of the neighborhood; at this time, 3 continuous positioning points (positioning points outside the domain) are located outside the neighborhood, and the sequences all belong to a positioning point sequence seg1, the traversal of the D4 is exited, namely loop exiting is performed, and D4-D5-D6-D7 is determined as a first target point, at this time, the first target point meets the preset stopping condition (the percentage of the target point in the neighborhood is 100%, and the uploading time difference of D4-D7 is 3min3s), then the D4-D5-D6-D7 is merged (the D5-D6-D7 is deleted), and the obtained D8 is the next traversal positioning point.
The next traversal anchor point D8 is analyzed starting with the center point of the subsequent anchor point of D8. D9, D10 and D11 are analyzed to be in the neighborhood, and D12 and D13 are analyzed to be out of the neighborhood; and analyzing D14, as D14 is the last bit of the anchor point sequence seg1, exiting the traversal of D8, namely exiting the loop, and determining that D8-D9-D10-D11-D12-D13 is the second target point, wherein the second target point does not meet the preset stopping condition, the merging processing of D8-D9-D10-D11-D12-D13 is not needed, and the obtained D15 is the next traversal anchor point. In the traversal of D8, it can be seen that since D14 is the last bit of the current anchor point sequence, it saves the computational effort of D4 analysis.
The next traversal anchor point D15 is analyzed starting with the center point of the subsequent anchor point of D15. And D16 is the last bit of the sequence seg2 of the current anchor point, the traversal of D15 is exited, namely the loop exits, and D15 is determined to be the second target point, at this time, the second target point does not meet the preset stopping condition, the D15 does not need to be merged, and because D16 is the last bit of all anchor points, the next traversal anchor point cannot be obtained, and the traversal is ended.
As can be seen from the above analysis, the travel route generation method provided in the embodiment of the present application finds that D4-D5-D6-D7 are stop points, and deletes D5-D6-D7 by merging the stop points, so that the anchor points generated in the current user order stored in the server finally include: D1-D2-D3-D4-D8-D9-D10-D11-D12-D13-D14-D15-D16, 13 travel tracks are generated on the basis of the 13 positioning points, as shown in FIG. 12b, after the positioning points (merging stop points) are optimized by the server through the method of the embodiment of the application, the generated travel track graph is displayed at the driver end and/or the passenger end, and as can be seen from the display of FIGS. 12a and 12b, the travel track after the positioning points are optimized through the embodiment of the application is smoother.
In one embodiment, as shown in fig. 13, there is provided a travel trajectory generation apparatus 130, including a traversal module 1301, and a generation module 1302, wherein: a traversal module 1301, configured to traverse the sequentially ordered positioning points based on a preset spatial clustering algorithm, and perform the stop point identification: taking one traversed positioning point as a central point, determining a neighborhood of the positioning point, determining a target point based on the neighborhood, setting the target point meeting preset stay conditions as a stay point, traversing the next positioning point, and repeatedly executing the stay point identification step until the traversal is finished; a generating module 1302, configured to generate a travel track based on the positioning point after merging the stop points.
In one embodiment, the traversal module includes: the sequencing unit is used for sequencing the positioning points based on the uploading time of the positioning points; the grouping unit is used for grouping the sequenced positioning points to generate at least one positioning point sequence; and the traversal unit is used for traversing the positioning points based on the positioning point sequence and a preset spatial clustering algorithm.
In one embodiment, the grouping unit includes: the generating subunit is used for dividing adjacent positioning points meeting the preset grouping condition into different positioning point sequences to generate at least one positioning point sequence; wherein the preset grouping condition comprises any one of the following: the uploading time difference of adjacent positioning points is greater than a first preset time length, and the distance is greater than a first preset distance; the distance between the adjacent positioning points is greater than a second preset distance; the uploading time difference of the adjacent positioning points is greater than a second preset time length; the first preset time length is less than the second preset time length, and the first preset distance is less than the second preset distance.
In one embodiment, the traversal module includes: the construction unit is used for determining the neighborhood of the traversal positioning point by taking a third preset distance as a scanning radius and taking one traversal positioning point traversed at one time as a central point; a first determining unit, configured to determine a target point based on a position relationship between a subsequent localization point ordered after the traversed localization point and the neighborhood, and an ordered position of the subsequent localization point in a current localization point sequence; wherein, the current positioning point sequence is the positioning point sequence where the traversal positioning point is located; and the second determining unit is used for determining a stop point and a next traversal positioning point based on the target point and a preset stop condition, and traversing the next traversal positioning point.
In one embodiment, the first determining unit includes: a determining subunit, configured to determine a sequence position of a preset number of consecutive external-domain positioning points outside the neighborhood in the current positioning point sequence; a determining first target point subunit, configured to determine, when all of the out-of-domain anchor points are ordered before the last bit of the current anchor point sequence, an anchor point ordered before the traversal anchor point reaches the head of the out-of-domain anchor point as a first target point located inside and outside the neighborhood; and a second target point determining subunit, configured to determine, when any of the out-of-domain anchor points is ordered at or after the last anchor point in the current anchor point sequence, an anchor point ordered before the traversal anchor point reaches the last anchor point in the current anchor point sequence as a second target point located inside or outside the neighborhood.
In an embodiment, the second determining unit includes: a first stay point determining subunit, configured to, when the target point includes a first target point, set the first target point as a stay point if the first target point satisfies a preset stay condition, and acquire a positioning point ordered one bit after the first target point as a next traversal positioning point; otherwise, acquiring the positioning point ordered at the position behind the traversal positioning point as the next traversal positioning point; the second determined stopping point subunit is used for acquiring positioning points which are sequenced at the two last bits of the second target point as the next traversal positioning point when the target point comprises the second target point; and when the second target point meets the preset stopping condition, setting the second target point as a stopping point.
In one embodiment, the method comprises the following steps: the proportion unit is used for determining the proportion of the target point in the neighborhood; wherein the target point comprises a center point; the setting unit is used for setting a target point meeting a preset stopping condition as a stopping point; wherein the preset residence conditions include any one of: the proportion of the target points in the neighborhood reaches a first preset percentage and the number of the target points is greater than a first preset value; the proportion of the target points in the neighborhood reaches a second preset percentage, and the uploading time difference of the top and the last positioning points in the target points is larger than a preset time threshold; the number of the target points in the neighborhood is larger than a second preset value.
In one embodiment, the generating module includes: and the deleting unit is used for deleting the positioning points except the central point in the stop point.
The stroke track generation device of the embodiment of the present application may execute the stroke track generation method provided in the embodiment of the present application, and the implementation principles thereof are similar, the actions performed by the modules in the stroke track generation device in the embodiments of the present application correspond to the steps in the stroke track generation method in the embodiments of the present application, and for the detailed function description of the modules in the stroke track generation device, reference may be specifically made to the description in the corresponding stroke track generation method shown in the foregoing, and details are not repeated here.
Based on the same principle as the method shown in the embodiments of the present application, there is also provided in the embodiments of the present application an electronic device, which may include but is not limited to: a processor and a memory; a memory for storing computer operating instructions; and the processor is used for executing the travel track generation method shown in the embodiment by calling the computer operation instruction. Compared with the prior art, the implementation of the method reduces the length of the travel track caused by the stop point; furthermore, the travel track generated based on the positioning point after the stop point is merged enables the display effect of the travel track to be smoother, and user experience is improved.
In an alternative embodiment, there is provided an electronic apparatus, as shown in fig. 14, an electronic apparatus 4000 shown in fig. 14 including: a processor 4001 and a memory 4003. Processor 4001 is coupled to memory 4003, such as via bus 4002. Optionally, the electronic device 4000 may further comprise a transceiver 4004. In addition, the transceiver 4004 is not limited to one in practical applications, and the structure of the electronic device 4000 is not limited to the embodiment of the present application.
The Processor 4001 may be a CPU (Central Processing Unit), a general-purpose Processor, a DSP (Digital Signal Processor), an ASIC (Application specific integrated Circuit), an FPGA (Field Programmable Gate Array) or other Programmable logic device, a transistor logic device, a hardware component, or any combination thereof. Which may implement or perform the various illustrative logical blocks, modules, and circuits described in connection with the disclosure. The processor 4001 may also be a combination that performs a computational function, including, for example, a combination of one or more microprocessors, a combination of a DSP and a microprocessor, or the like.
Bus 4002 may include a path that carries information between the aforementioned components. The bus 4002 may be a PCI (Peripheral Component Interconnect) bus, an EISA (extended industry Standard Architecture) bus, or the like. The bus 4002 may be divided into an address bus, a data bus, a control bus, and the like. For ease of illustration, only one thick line is shown in FIG. 14, but this is not intended to represent only one bus or type of bus.
The Memory 4003 may be a ROM (Read Only Memory) or other types of static storage devices that can store static information and instructions, a RAM (Random Access Memory) or other types of dynamic storage devices that can store information and instructions, an EEPROM (Electrically erasable programmable Read Only Memory), a CD-ROM (Compact Read Only Memory) or other optical disk storage, optical disk storage (including Compact disk, laser disk, optical disk, digital versatile disk, blu-ray disk, etc.), a magnetic disk storage medium or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to.
The memory 4003 is used for storing application codes for executing the scheme of the present application, and the execution is controlled by the processor 4001. Processor 4001 is configured to execute application code stored in memory 4003 to implement what is shown in the foregoing method embodiments.
Among them, electronic devices include but are not limited to: mobile terminals such as mobile phones, notebook computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and the like, and fixed terminals such as digital TVs, desktop computers, and the like. The electronic device shown in fig. 14 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present application.
The present application provides a computer-readable storage medium, on which a computer program is stored, which, when running on a computer, enables the computer to execute the corresponding content in the foregoing method embodiments. Compared with the prior art, the implementation of the method reduces the length of the travel track caused by the stop point; furthermore, the travel track generated based on the positioning point after the stop point is merged enables the display effect of the travel track to be smoother, and user experience is improved.
It should be understood that, although the steps in the flowcharts of the figures are shown in order as indicated by the arrows, the steps are not necessarily performed in order as indicated by the arrows. The steps are not performed in the exact order shown and may be performed in other orders unless explicitly stated herein. Moreover, at least a portion of the steps in the flow chart of the figure may include multiple sub-steps or multiple stages, which are not necessarily performed at the same time, but may be performed at different times, which are not necessarily performed in sequence, but may be performed alternately or alternately with other steps or at least a portion of the sub-steps or stages of other steps.
It should be noted that the computer readable medium mentioned above in the present application may be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. 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 diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or 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 foregoing. In the present application, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In this application, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, optical cables, RF (radio frequency), etc., or any suitable combination of the foregoing.
The computer readable medium may be embodied in the electronic device; or may exist separately without being assembled into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to perform the methods shown in the above embodiments.
Computer program code for carrying out operations of the present application may be written in any combination of one or more programming languages, including AN object oriented programming language such as Java, Smalltalk, C + +, and conventional procedural programming languages, such as the "C" programming language or similar programming languages.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The modules described in the embodiments of the present application may be implemented by software or hardware. The name of a module does not in some cases form a limitation of the module itself, and for example, a generation module may also be described as a "module for generating a travel trajectory based on an anchor point after merging a dwell point".
The above description is only a preferred embodiment of the application and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the disclosure herein is not limited to the particular combination of features described above, but also encompasses other arrangements formed by any combination of the above features or their equivalents without departing from the spirit of the disclosure. For example, the above features may be replaced with (but not limited to) features having similar functions disclosed in the present application.

Claims (11)

1. A travel route generation method is characterized by comprising the following steps:
based on a preset spatial clustering algorithm, traversing the positioning points ordered in sequence, and executing the stop point identification: taking one traversed positioning point as a central point, determining a neighborhood of the positioning point, determining a target point based on the neighborhood, setting the target point meeting preset stay conditions as a stay point, traversing the next positioning point, and repeatedly executing the stay point identification step until the traversal is finished;
and generating a travel track based on the positioning points after the stop points are combined.
2. The method according to claim 1, wherein traversing the sequentially ordered anchor points based on a preset spatial clustering algorithm comprises:
sequencing the positioning points based on the uploading time of the positioning points;
grouping the sequenced positioning points to generate at least one positioning point sequence;
and traversing the positioning points based on the positioning point sequence and a preset spatial clustering algorithm.
3. The method according to claim 2, wherein said generating at least one positioning point sequence for the ordered positioning point packets comprises:
dividing adjacent positioning points meeting preset grouping conditions into different positioning point sequences to generate at least one positioning point sequence; wherein the preset grouping condition comprises any one of the following:
the uploading time difference of adjacent positioning points is greater than a first preset time length, and the distance is greater than a first preset distance;
the distance between the adjacent positioning points is greater than a second preset distance;
the uploading time difference of the adjacent positioning points is greater than a second preset time length;
the first preset time length is less than the second preset time length, and the first preset distance is less than the second preset distance.
4. The method of claim 2, wherein the performing a dwell point identification: taking one traversed locating point as a central point, determining a neighborhood of the locating point, determining a target point based on the neighborhood, setting the target point meeting a preset stay condition as a stay point, and traversing the next locating point, wherein the method comprises the following steps:
taking a traversed locating point traversed at one time as a central point, and determining a neighborhood of the traversed locating point by taking a third preset distance as a scanning radius;
determining a target point based on the position relation between the subsequent positioning point sequenced after the traversal positioning point and the neighborhood and the sequencing position of the subsequent positioning point in the current positioning point sequence; wherein, the current positioning point sequence is the positioning point sequence where the traversal positioning point is located;
and determining a stopping point and a next traversal positioning point based on the target point and a preset stopping condition, and traversing the next traversal positioning point.
5. The method of claim 4, wherein determining the target point based on the position relationship of the subsequent anchor point ordered after the traversed anchor point and the neighborhood and the ordered position of the subsequent anchor point in the current anchor point sequence comprises:
determining the sequencing positions of a preset number of continuous out-of-domain positioning points outside the neighborhood in the current positioning point sequence;
when all the out-of-domain positioning points are sequenced before the last position of the current positioning point sequence, determining the positioning point sequenced before the traversal positioning point reaches the first position of the out-of-domain positioning point as a first target point positioned inside and outside the neighborhood;
and when any one of the out-of-domain anchor points is sequenced at the last position or after the current anchor point sequence, determining that the anchor point sequenced from the traversal anchor point to the last position of the current anchor point sequence is a second target point positioned inside and outside the neighborhood.
6. The method of claim 5, wherein the determining a stopping point and a next traversal anchor point based on the target point and a preset stopping condition comprises:
when the target point comprises a first target point, if the first target point meets a preset stopping condition, setting the first target point as a stopping point, and acquiring a positioning point which is sequenced at the next position behind the first target point as a next traversal positioning point; otherwise, acquiring the positioning point ordered at the position behind the traversal positioning point as the next traversal positioning point;
when the target point comprises a second target point, acquiring positioning points which are sequenced at the two last bits of the second target point as a next traversal positioning point; and when the second target point meets the preset stopping condition, setting the second target point as a stopping point.
7. The method according to claim 1, wherein the setting of the target point satisfying the preset stay condition as the stay point comprises:
determining the occupation ratio of the target point in the neighborhood; wherein the target point comprises a center point;
setting a target point meeting a preset stay condition as a stay point; wherein the preset residence conditions include any one of:
the proportion of the target points in the neighborhood reaches a first preset percentage and the number of the target points is greater than a first preset value;
the proportion of the target points in the neighborhood reaches a second preset percentage, and the uploading time difference of the top and the last positioning points in the target points is larger than a preset time threshold;
the number of the target points in the neighborhood is larger than a second preset value.
8. The method of claim 7, wherein the merging of the stopover points comprises:
and deleting the positioning points except the central point in the stop points.
9. A travel locus generating device, characterized by comprising:
and the traversal module is used for traversing the positioning points which are sequentially ordered based on a preset spatial clustering algorithm and executing the stop point identification: determining a neighborhood of the positioning point by taking the one traversed positioning point as a central point, determining a target point based on the neighborhood, setting the target point meeting a preset stay condition as a stay point, traversing the next positioning point, and repeatedly executing the stay point identification step until the traversal is finished; and the generating module is used for generating a travel track based on the positioning points after the stop points are combined.
10. An electronic device, comprising:
one or more processors;
a memory;
one or more applications, wherein the one or more applications are stored in the memory and configured to be executed by the one or more processors, the one or more programs configured to: executing the travel trajectory generation method according to any one of claims 1 to 8.
11. A computer-readable storage medium, characterized in that the storage medium stores at least one instruction, at least one program, a set of codes, or a set of instructions, which is loaded and executed by a processor to implement the travel trajectory generation method according to any one of claims 1 to 8.
CN202010163491.7A 2020-03-10 2020-03-10 Travel track generation method and device, electronic equipment and storage medium Active CN111405483B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010163491.7A CN111405483B (en) 2020-03-10 2020-03-10 Travel track generation method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010163491.7A CN111405483B (en) 2020-03-10 2020-03-10 Travel track generation method and device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN111405483A true CN111405483A (en) 2020-07-10
CN111405483B CN111405483B (en) 2021-07-30

Family

ID=71436144

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010163491.7A Active CN111405483B (en) 2020-03-10 2020-03-10 Travel track generation method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN111405483B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113220811A (en) * 2021-04-19 2021-08-06 珠海德百祺科技有限公司 Position data processing method and device and terminal equipment
CN114449451A (en) * 2020-11-06 2022-05-06 中国联合网络通信集团有限公司 Method and device for determining motion trail of terminal
CN116027367A (en) * 2022-08-31 2023-04-28 荣耀终端有限公司 Stay point identification method, apparatus, device and storage medium

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102096925A (en) * 2010-11-26 2011-06-15 中国科学院上海技术物理研究所 Real-time closed loop predictive tracking method of maneuvering target
CN106197421A (en) * 2016-06-24 2016-12-07 北京工业大学 A kind of forward position impact point for moving robot autonomous exploration generates method
CN106600960A (en) * 2016-12-22 2017-04-26 西南交通大学 Traffic travel origin and destination identification method based on space-time clustering analysis algorithm
CN106650771A (en) * 2016-09-29 2017-05-10 百度在线网络技术(北京)有限公司 Cluster-analysis-based de-noising method and apparatus for trajectory
CN106912015A (en) * 2017-01-10 2017-06-30 上海云砥信息科技有限公司 A kind of personnel's Trip chain recognition methods based on mobile network data
EP3197217A1 (en) * 2014-08-29 2017-07-26 Samsung Electronics Co., Ltd. System for determining location of entrance and area of interest
CN107121690A (en) * 2017-03-31 2017-09-01 景致惠通工程咨询(武汉)有限公司 A kind of dwell point recognition methods and device based on parameter of doing more physical exercises
CN110290467A (en) * 2019-06-21 2019-09-27 清华大学 The acquisition methods and device of dwell point, shopping centre service range, influence factor
CN110443287A (en) * 2019-07-19 2019-11-12 北京航空航天大学 A kind of mobile stream method for drafting of the crowd based on sparse track data

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102096925A (en) * 2010-11-26 2011-06-15 中国科学院上海技术物理研究所 Real-time closed loop predictive tracking method of maneuvering target
EP3197217A1 (en) * 2014-08-29 2017-07-26 Samsung Electronics Co., Ltd. System for determining location of entrance and area of interest
CN106197421A (en) * 2016-06-24 2016-12-07 北京工业大学 A kind of forward position impact point for moving robot autonomous exploration generates method
CN106650771A (en) * 2016-09-29 2017-05-10 百度在线网络技术(北京)有限公司 Cluster-analysis-based de-noising method and apparatus for trajectory
CN106600960A (en) * 2016-12-22 2017-04-26 西南交通大学 Traffic travel origin and destination identification method based on space-time clustering analysis algorithm
CN106912015A (en) * 2017-01-10 2017-06-30 上海云砥信息科技有限公司 A kind of personnel's Trip chain recognition methods based on mobile network data
CN107121690A (en) * 2017-03-31 2017-09-01 景致惠通工程咨询(武汉)有限公司 A kind of dwell point recognition methods and device based on parameter of doing more physical exercises
CN110290467A (en) * 2019-06-21 2019-09-27 清华大学 The acquisition methods and device of dwell point, shopping centre service range, influence factor
CN110443287A (en) * 2019-07-19 2019-11-12 北京航空航天大学 A kind of mobile stream method for drafting of the crowd based on sparse track data

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
EUGIN HYUN,YOUNG-SEOK JIN,JONG-HUN LEE: "Moving and stationary target detection scheme using coherent integration and subtraction for automotive FMCW radar systems", 《2017 IEEE RADAR CONFERENCE (RADARCONF)》 *
高强,张凤荔,王瑞锦,周帆: "轨迹大数据:数据处理关键技术研究综述", 《软件学报》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114449451A (en) * 2020-11-06 2022-05-06 中国联合网络通信集团有限公司 Method and device for determining motion trail of terminal
CN113220811A (en) * 2021-04-19 2021-08-06 珠海德百祺科技有限公司 Position data processing method and device and terminal equipment
CN113220811B (en) * 2021-04-19 2023-08-18 珠海德百祺科技有限公司 Position data processing method and device and terminal equipment
CN116027367A (en) * 2022-08-31 2023-04-28 荣耀终端有限公司 Stay point identification method, apparatus, device and storage medium
CN116027367B (en) * 2022-08-31 2023-10-20 荣耀终端有限公司 Stay point identification method, apparatus, device and storage medium

Also Published As

Publication number Publication date
CN111405483B (en) 2021-07-30

Similar Documents

Publication Publication Date Title
CN111405483B (en) Travel track generation method and device, electronic equipment and storage medium
KR20180013843A (en) Order allocation system and method
CN111737377B (en) Method and device for identifying drift trajectory, computing equipment and storage medium
CN109059952A (en) A kind of stroke duration prediction method and device
CN111091215B (en) Vehicle identification method, device, computer equipment and storage medium
CN111770432A (en) Method and device for identifying stop point, electronic equipment and storage medium
CN107452207B (en) Floating car data source evaluation method, device and system
CN111046895A (en) Method and device for determining target area
CN113239089A (en) Path identification method, path identification device, electronic device, storage medium, and program product
CN113587944A (en) Quasi-real-time vehicle driving route generation method, system and equipment
CN110472000B (en) Road network route determining method and device, electronic equipment and storage medium
CN112650794B (en) Position data processing method, device, electronic equipment and storage medium
CN113066284A (en) Data processing method and data processing device
CN116664025A (en) Loading and unloading position point generation method, device and equipment
CN110017842B (en) Freight vehicle navigation method, terminal device and storage medium
CN107204113A (en) Determine the methods, devices and systems of congestion in road state
CN107270919B (en) Bus route grading method and device and bus route navigation method and device
CN112566025B (en) Bus passenger flow source destination identification method and device, electronic equipment and storage medium
CN114862491A (en) Vehicle position determining method, order dispatching method, device, server and storage medium
CN115206102A (en) Method, apparatus, electronic device, and medium for determining traffic path
CN113008246B (en) Map matching method and device
Lan et al. Inferring alighting bus stops from smart card data combined with cellular signaling data
CN115273449B (en) Method, device, equipment and medium for identifying motorcade set nodes
CN116580583B (en) Vehicle scheduling information generation method, device, equipment and computer readable medium
CN110148225B (en) Traffic station determining method, device, equipment and storage equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40025776

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant