Open vince7lf opened 1 year ago
vince@vince-VirtualBox:~$ exiftool -fileOrder gpsdatetime -p ~/Downloads/AIDE+MELCC/gpx.fmt ~/Downloads/AIDE+MELCC/presence_AIDE > ~/Downloads/AIDE+MELCC/presence_AIDE/out.gpx
exiftool -fileOrder gpsdatetime -p ~/Downloads/AIDE+MELCC/gpx.fmt ~/Downloads/AIDE+MELCC/presence_AIDE/2019-Boucherville-13225474-13410695_tile.jpg > ~/Downloads/AIDE+MELCC/presence_AIDE/2019-Boucherville-13225474-13410695_tile.gpx
<?xml version="1.0" encoding="utf-8"?>
<gpx version="1.0"
creator="ExifTool 10.80"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.topografix.com/GPX/1/0"
xsi:schemaLocation="http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xsd">
<trk>
<number>1</number>
<trkseg>
<trkpt lat="45.6261787050444" lon="-73.4666400120111">
<ele>2.4</ele>
<desc>2019-Boucherville-13225474-13410695_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6261898240306" lon="-73.4666252808222">
<ele>2.4</ele>
<desc>2019-Boucherville-13225474-13411674_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6261882428583" lon="-73.4666379797195">
<ele>2.5</ele>
<desc>2019-Boucherville-13225474-13411711_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6262013600194" lon="-73.4666352371083">
<ele>2.5</ele>
<desc>2019-Boucherville-13225474-13411740_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6262036046861" lon="-73.4666231179639">
<ele>2.5</ele>
<desc>2019-Boucherville-13225474-13411769_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6262053361417" lon="-73.4666109777417">
<ele>2.5</ele>
<desc>2019-Boucherville-13225474-13411821_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265679101417" lon="-73.4667029709167">
<ele>2.4</ele>
<desc>2019-Boucherville-13226091-13427708_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265746976306" lon="-73.4667058846984">
<ele>2.6</ele>
<desc>2019-Boucherville-13226091-13427732_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265741156083" lon="-73.4667129708532">
<ele>2.6</ele>
<desc>2019-Boucherville-13226091-13427763_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265734196694" lon="-73.4667244142262">
<ele>2.6</ele>
<desc>2019-Boucherville-13226091-13427791_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265835893889" lon="-73.4667249891032">
<ele>2.6</ele>
<desc>2019-Boucherville-13226091-13427830_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6270834458694" lon="-73.4653648664333">
<ele>3.2</ele>
<desc>2019-Boucherville-13226962-13426671_tile.jpg</desc>
</trkpt>
<trkpt lat="45.627083802775" lon="-73.4653778825917">
<ele>3.2</ele>
<desc>2019-Boucherville-13226962-13426700_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6270829287306" lon="-73.4653873426861">
<ele>3.2</ele>
<desc>2019-Boucherville-13226962-13426720_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6270921766389" lon="-73.4653849251417">
<ele>3.2</ele>
<desc>2019-Boucherville-13226962-13426740_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6270902563361" lon="-73.4653723169444">
<ele>3.2</ele>
<desc>2019-Boucherville-13226962-13426767_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6270874719639" lon="-73.4653604526833">
<ele>3.2</ele>
<desc>2019-Boucherville-13226962-13426795_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6266987078083" lon="-73.4648529325861">
<ele>3.6</ele>
<desc>2019-Boucherville-13228355-13413293_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6266970299806" lon="-73.464839086975">
<ele>3.6</ele>
<desc>2019-Boucherville-13228355-13413330_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6266955244417" lon="-73.4648286077194">
<ele>3.6</ele>
<desc>2019-Boucherville-13228355-13413362_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6267039645833" lon="-73.4648288816555">
<ele>3.6</ele>
<desc>2019-Boucherville-13228355-13413470_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6267064942528" lon="-73.4648398166639">
<ele>3.6</ele>
<desc>2019-Boucherville-13228355-13413503_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6267038739056" lon="-73.464853072825">
<ele>3.6</ele>
<desc>2019-Boucherville-13228355-13413529_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6267160531139" lon="-73.4648567137333">
<ele>3.5</ele>
<desc>2019-Boucherville-13228355-13413555_tile.jpg</desc>
</trkpt>
<trkpt lat="45.626716517025" lon="-73.4648424197694">
<ele>3.5</ele>
<desc>2019-Boucherville-13228355-13413582_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6267186342389" lon="-73.4648305181556">
<ele>3.6</ele>
<desc>2019-Boucherville-13228355-13413609_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265811573444" lon="-73.4647454636667">
<ele>3.2</ele>
<desc>2019-Boucherville-13228844-13413947_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265819448417" lon="-73.4647313870944">
<ele>3.2</ele>
<desc>2019-Boucherville-13228844-13414127_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265910870278" lon="-73.4647481172028">
<ele>3.2</ele>
<desc>2019-Boucherville-13228844-13414258_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265876111306" lon="-73.4647591509167">
<ele>3.4</ele>
<desc>2019-Boucherville-13228844-13414282_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265946217667" lon="-73.4647561864333">
<ele>3.4</ele>
<desc>2019-Boucherville-13228844-13414482_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265954120833" lon="-73.4647419148306">
<ele>3.4</ele>
<desc>2019-Boucherville-13228844-13414511_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6262981170389" lon="-73.4676422014406">
<ele>4</ele>
<desc>2019-Boucherville-13229812-13434270_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6262976521389" lon="-73.4676189192539">
<ele>4.5</ele>
<desc>2019-Boucherville-13229812-13434351_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6263076572583" lon="-73.4676164716706">
<ele>4.5</ele>
<desc>2019-Boucherville-13229812-13434375_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6263069371028" lon="-73.4676301227103">
<ele>4.5</ele>
<desc>2019-Boucherville-13229812-13434721_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6263056702611" lon="-73.4676399715239">
<ele>4</ele>
<desc>2019-Boucherville-13229812-13434748_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6263151642417" lon="-73.4676393026628">
<ele>4</ele>
<desc>2019-Boucherville-13229812-13434769_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6263168290444" lon="-73.4676280675119">
<ele>4</ele>
<desc>2019-Boucherville-13229812-13434792_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6262369997472" lon="-73.4684117933928">
<ele>2.3</ele>
<desc>2019-Boucherville-13230953-13463269_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6262344920389" lon="-73.46838727875">
<ele>2.4</ele>
<desc>2019-Boucherville-13230953-13463306_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6262447191306" lon="-73.468388670365">
<ele>2.3</ele>
<desc>2019-Boucherville-13230953-13463324_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6262445189611" lon="-73.4684128449444">
<ele>2.8</ele>
<desc>2019-Boucherville-13230953-13463369_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6262534584722" lon="-73.468414018385">
<ele>2.8</ele>
<desc>2019-Boucherville-13230953-13463408_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6262528375861" lon="-73.4683974815914">
<ele>2.3</ele>
<desc>2019-Boucherville-13230953-13463426_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6262547970833" lon="-73.4683872729206">
<ele>2.3</ele>
<desc>2019-Boucherville-13230953-13463448_tile.jpg</desc>
</trkpt>
<trkpt lat="45.62616457835" lon="-73.4685953497936">
<ele>1.5</ele>
<desc>2019-Boucherville-13231838-13463953_tile.jpg</desc>
</trkpt>
<trkpt lat="45.626159605675" lon="-73.4685798055794">
<ele>1.5</ele>
<desc>2019-Boucherville-13231838-13463976_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6261664087222" lon="-73.4685824615239">
<ele>1.5</ele>
<desc>2019-Boucherville-13231838-13464020_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6261809824056" lon="-73.4686145844286">
<ele>1.5</ele>
<desc>2019-Boucherville-13231838-13464073_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6261800844639" lon="-73.4685966660397">
<ele>1.7</ele>
<desc>2019-Boucherville-13231838-13464088_tile.jpg</desc>
</trkpt>
<trkpt lat="45.62617786875" lon="-73.4685822383017">
<ele>1.6</ele>
<desc>2019-Boucherville-13231838-13464104_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6261376290667" lon="-73.4690302490594">
<ele>2.9</ele>
<desc>2019-Boucherville-13232283-13462758_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6261451143417" lon="-73.4690285385833">
<ele>2.9</ele>
<desc>2019-Boucherville-13232283-13462781_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6261460134" lon="-73.4690414414642">
<ele>2.9</ele>
<desc>2019-Boucherville-13232283-13462803_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6261459387861" lon="-73.4690540120953">
<ele>2.9</ele>
<desc>2019-Boucherville-13232283-13462821_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6261537084167" lon="-73.4690414548808">
<ele>2.9</ele>
<desc>2019-Boucherville-13232283-13462881_tile.jpg</desc>
</trkpt>
<trkpt lat="45.626157153275" lon="-73.4690270243808">
<ele>2.9</ele>
<desc>2019-Boucherville-13232283-13462903_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6266956292611" lon="-73.4683014274842">
<ele>3.2</ele>
<desc>2019-Boucherville-13310926-13463053_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6266956559361" lon="-73.4682869913531">
<ele>3.1</ele>
<desc>2019-Boucherville-13310926-13463091_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6266974590833" lon="-73.4682737995675">
<ele>3.2</ele>
<desc>2019-Boucherville-13310926-13463110_tile.jpg</desc>
</trkpt>
<trkpt lat="45.626703956425" lon="-73.4682752282064">
<ele>3.2</ele>
<desc>2019-Boucherville-13310926-13463130_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6267036751583" lon="-73.4682873285794">
<ele>3.2</ele>
<desc>2019-Boucherville-13310926-13463148_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6267033586639" lon="-73.4682975047303">
<ele>3.2</ele>
<desc>2019-Boucherville-13310926-13463166_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6267105944417" lon="-73.4682980020753">
<ele>3.6</ele>
<desc>2019-Boucherville-13310926-13463189_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6267091005472" lon="-73.4682842329722">
<ele>3.6</ele>
<desc>2019-Boucherville-13310926-13463211_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6267080657694" lon="-73.4682708650081">
<ele>3.6</ele>
<desc>2019-Boucherville-13310926-13463233_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6268418760278" lon="-73.4674083797936">
<ele>2.9</ele>
<desc>2019-Boucherville-13312057-13428234_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6268395808056" lon="-73.4673961793928">
<ele>2.9</ele>
<desc>2019-Boucherville-13312057-13428263_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6268498428639" lon="-73.4673813919167">
<ele>2.9</ele>
<desc>2019-Boucherville-13312057-13428332_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6268508845361" lon="-73.4673921774564">
<ele>2.9</ele>
<desc>2019-Boucherville-13312057-13428356_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6268441256111" lon="-73.4674088089683">
<ele>2.9</ele>
<desc>2019-Boucherville-13312057-13428377_tile.jpg</desc>
</trkpt>
<trkpt lat="45.62685179065" lon="-73.4674089696944">
<ele>2.9</ele>
<desc>2019-Boucherville-13312057-13428404_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6268539473361" lon="-73.4673949352222">
<ele>2.9</ele>
<desc>2019-Boucherville-13312057-13428426_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6268530869444" lon="-73.4673794174325">
<ele>2.9</ele>
<desc>2019-Boucherville-13312057-13428449_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265828854694" lon="-73.4652348596306">
<ele>3.1</ele>
<desc>2019-Boucherville-13314666-13413013_tile.jpg</desc>
</trkpt>
<trkpt lat="45.626519295675" lon="-73.4669924565953">
<ele>3.7</ele>
<desc>2019-Boucherville-13571792-13572006_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265193852417" lon="-73.466978405">
<ele>3.7</ele>
<desc>2019-Boucherville-13571792-13572063_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265247352333" lon="-73.4669663613731">
<ele>3.7</ele>
<desc>2019-Boucherville-13571792-13572097_tile.jpg</desc>
</trkpt>
<trkpt lat="45.626535484475" lon="-73.4669648549206">
<ele>3.7</ele>
<desc>2019-Boucherville-13571792-13572132_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265342069917" lon="-73.466978577873">
<ele>3.7</ele>
<desc>2019-Boucherville-13571792-13572203_tile.jpg</desc>
</trkpt>
<trkpt lat="45.62653513315" lon="-73.4669905316586">
<ele>3.7</ele>
<desc>2019-Boucherville-13571792-13572334_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265428850306" lon="-73.4669904510081">
<ele>3.7</ele>
<desc>2019-Boucherville-13571792-13572379_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265434585806" lon="-73.4669781745914">
<ele>3.7</ele>
<desc>2019-Boucherville-13571792-13572426_tile.jpg</desc>
</trkpt>
<trkpt lat="45.6265405278694" lon="-73.4669626685992">
<ele>3.7</ele>
<desc>2019-Boucherville-13571792-13572450_tile.jpg</desc>
</trkpt>
</trkseg>
</trk>
</gpx>
#------------------------------------------------------------------------------
# File: gpx.fmt
#
# Description: Example ExifTool print format file to generate a GPX track log
#
# Usage: exiftool -p gpx.fmt -ee3 FILE [...] > out.gpx
#
# Requires: ExifTool version 10.49 or later
#
# Revisions: 2010/02/05 - P. Harvey created
# 2018/01/04 - PH Added IF to be sure position exists
# 2018/01/06 - PH Use DateFmt function instead of -d option
# 2019/10/24 - PH Preserve sub-seconds in GPSDateTime value
#
# Notes: 1) Input file(s) must contain GPSLatitude and GPSLongitude.
# 2) The -ee3 option is to extract the full track from video files.
# 3) The -fileOrder option may be used to control the order of the
# generated track points when processing multiple files.
#------------------------------------------------------------------------------
#[HEAD]<?xml version="1.0" encoding="utf-8"?>
#[HEAD]<gpx version="1.0"
#[HEAD] creator="ExifTool $ExifToolVersion"
#[HEAD] xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
#[HEAD] xmlns="http://www.topografix.com/GPX/1/0"
#[HEAD] xsi:schemaLocation="http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xsd">
#[HEAD]<trk>
#[HEAD]<number>1</number>
#[HEAD]<trkseg>
#[IF] $gpslatitude $gpslongitude
#[BODY]<trkpt lat="$gpslatitude#" lon="$gpslongitude#">
#[BODY] <ele>$gpsaltitude#</ele>
#[BODY] <time>${gpsdatetime#;my ($ss)=/\.\d+/g;DateFmt("%Y-%m-%dT%H:%M:%SZ");s/Z/${ss}Z/ if $ss}</time>
#[BODY] <desc>$filename</desc>
#[BODY]</trkpt>
#[TAIL]</trkseg>
#[TAIL]</trk>
#[TAIL]</gpx>
Refer to gpx xml schema documentation https://www.topografix.com/gpx.asp
refer to gdal gpx driver https://gdal.org/drivers/vector/gpx.html
Create a worldfile jgw/wld with the name than the jpeg file to geolocate the jpeg. The JPEG can then be converted/exported into a geotiff and then tiled.
The distances are not precise. 1e-8m has been measured with QGIS for a specific image with a square of 1m x 1m in the image at an altitude of 2.4.
Ref to https://en.wikipedia.org/wiki/World_file
0.00000001
0
0
-0.00000001
-73.4666400120111
45.6261787050444
script written to extract GPS info from JPEG and convert if to geoTiff with gdal_translate; tested script only, workd. Integrated to the project, not tested; need to support tiff images.
Use exiftoof
https://exiftool.org/geotag.html#Inverse
then use ogr2ogr (to be tested) to generate the geojson. maybe need to translate into shp