... | ... | @@ -52,4 +52,26 @@ Get information from database and return it... |
|
|
|
|
|
## gpxpod.py
|
|
|
|
|
|
## gpxvcomp.py |
|
|
\ No newline at end of file |
|
|
This script is used to get track statistics/markers and to produce geojson data which will be loaded by the GUI to display the tracks.
|
|
|
|
|
|
It uses gpxpy module to parse gpx files. A naive process is done to compute global track statistics.
|
|
|
|
|
|
It uses geojson module to produce a geojson file for each gpx file.
|
|
|
|
|
|
## gpxvcomp.py
|
|
|
|
|
|
This script takes several gpx tracks in input and computes pair comparisons of all tracks.
|
|
|
|
|
|
By "comparison" i mean comparison of divergent parts of similar tracks. This is done with two algorithms :
|
|
|
* findNextConvergence
|
|
|
* findNextDivergence
|
|
|
Basically, to compare a pair of tracks, the script scans them simultaneously and first looks for a convergence point, which means a point where the two tracks start to follow the same path, where they are closer than a threshold. From that convergence point, it looks for a divergence point, which means a point where the two tracks are less close than a threshold. From this divergence point, it looks again for a convergence point and stores the zone between the divergence point and the following convergence point as a "divergence zone". It also stores stats for the divergence zone. Then it starts the same process again to find all divergence zones.
|
|
|
|
|
|
Once the zones have been identified, it produces a geojson file for each track of the pair.
|
|
|
|
|
|
It produces two geojson files for each track pair. For two tracks A and B, it produces AB.geojson and BA.geojson.
|
|
|
|
|
|
AB.geojson is the track A including information of comparison with B.
|
|
|
BA.geojson is the track B including information of comparison with A.
|
|
|
|
|
|
More precisely, a result geojson file is composed by several features. One feature is either a convergent (similar) zone or a divergence zone. |
|
|
\ No newline at end of file |