Geolokatsiooni redaktor GerhardKulzer
gerhard at kulzer dot net
KIPI geolokatsiooni plugin võimaldab lisada pildi metaandmetesse GPS-koordinaate ja neid redigeerida. Geoandmed salvestatakse pildi EXIF-siltidesse ning asukohta on võimalik lasta näidata välises brauseris avatud kaardil. KDE Kipi
Sissejuhatus KIPI plugin Geolokatsioon pakub tööriistu piltide geograafiliseks lokaliseerimiseks tavalises sfääriliste koordinaatide süsteemis (mida kasutab GPS/Galileo). Kasutatakse kõrgust, laius- ja pikkuskraadi. Plugin toimib ainult nende pildivormingute puhul, mille korral libkexiv2 pakub EXIF-i toetust. Geolokatsioon Plugin tähistab pilte koordinaatidega kahel viisil: GPS-andmete hulgikorrelatsioon pildiseeriaga. Koordinaatide poolautomaatne omistamine üksikutele piltidele. Korrelaator Piltide korrileerimiseks geoandmetega peab olema saadaval GPS-i trajektoor XML-failina gpx-vormingus (gpsbabel ja gpsman võivad trajektooriandmed GPS-seadmest sinu eest alla laadida ja teisendada). PiltGeolokatsioonKorrelaator. See liides võimaldab vastendada eelnevalt valitud pildiseeria saadaoleva GPS-trajektooriga. Geokorrelatsiooni dialoog EXIF-i kuupäeva/kellaaja ning trajektoori andmete (gpx-vormingus) põhjal Vali rakenduse peaaknas pildid, mida soovid korrileerida, seejärel menüükäsk. Ilmub ülaltoodud dialoog. Aja ja asukoha korrileerimiseks tuleb laadida käsuga Laadi GPX-fail trajektoorifail, mis sisaldab GPS-andmeid samast ajast ja kohast, mil tegid kaameraga pilte. Faili laadimise järel toimub automaatne korrelatsioon, omistatud koordinaate kuvatakse punaselt. GPS-trajektoori andmed on alati salvestatud GMT-ajas, mistõttu tuleb kaamera aeg seada GMT-ajaga vastavusse. Selleks on mõeldud Ajavöönd. Vali seal kaamera ajavöönd! Maks. ajavahe määrab ajalise erinevuse, mille puhul GPS-i ja kaamera aega loetakse veel kokkulangevaks. Maksimaalne väärtus on 2000 sekundit. Kui sul pole trajektooriandmeid samas kohas tehtud piltidele, võid ka GPX-faili käsitsi redigeerida ja rakendada tulemuse piltidele. 2000-sekundiline ajavahe tähendab, et seda rakendatakse piltidele, mis on tehtud nii poole tunni sees. Valikuid Interpoleerimine ja Erinevus minutites saab kasutada juhul, kui sobivaid andmeid pole. Kui tead, et tegelikult on asukoht õige, ehkki kaamera ja GPS-i andmed erinevad, võid siin määrata vajalikud piirangud ja klõpsata andmete interpoleerimiseks nupule Vii korrelatsiooni. Korrelatsioon Kasutada saab maksimaalselt 240-minutilist erinevust. Koordinaatide muutmine Koordinaatide poolautomaatne omistamine kaardil Dialoogis saab koordinaate ka käsitsi määrata. See on abiks juhul, kui sul on terve seeria ühes kohas tehtud pilte. Et dialoogid jätavad koordinaadid meelde, piisab varasemate andmete rakendamisest uuele fotole lihtsast klõpsust nupule OK. Asukohta saab leida ja parandada ka kuvataval kaardil. Vali vajalik piirkond, suurenda, täpsusta asukohta uue klõpsuga, kuni oled lõpuks saavutanud piisava täpsuse. Kõrgus tuleb alati käsitsi sisestada. Kaardil võib kasutada nii kaardi, satelliidipildi kui ka segarežiimi. Sildistamine käsureal Kui korraks jätta täiesti kõrvale KIPI plugina võimalused, siis saab GPS-andmeid piltidele teisitigi lisada. Toome siin ära väikse skripti, mis kasutab programmi exiftool piltide hulgisildistamiseks.
#!/bin/sh # exiftool wrapper script for easy commandline use. It treats regex files or whole directories. # # FMT Output # "%d deg %d' %.2f"\" 54 deg 59' 22.80" # "%d deg %.4f min" 54 deg 59.3800 min # "%.6f degrees" 54.989667 degrees if [ -z $1 ]; then echo "Usage: exiftool-gps-wrapper lat long [alt] file || dir (use signed floating coordinates)" else if [ -z "$4" ]; then foo="$3"; alt=0 else foo="$4"; alt=$3 fi echo $foo if [ -e "$foo" ] ; then latR=$(echo "$1" | awk '{if ($1 < 0) print "S"; else print "N"}') lonR=$(echo "$2" | awk '{if ($1 < 0) print "W"; else print "E"}') lat=$(echo "$1" | awk '{val = $1; if ($1 < 0) sub(/-/, "", val); print val}') # absolute value lon=$(echo "$2" | awk '{val = $1; if ($1 < 0) sub(/-/, "", val); print val}') # absolute value # use the following syntax for easy googlian paste of ll=-1.23456,53.345345 #lonR=$(echo "$2" | awk '{if ($2 < 0) print "W"; else print "E"}') echo $lat, $latR, $lon, $lonR, $3, $4, $foo function setgpsinfo () { exiftool -c "%.6f" -GPSMapDatum="WGS-84" -GPSAltitude=$5 \ -GPSLongitudeRef=$4 -GPSLongitude=$3 -GPSLatitudeRef=$2 -GPSLatitude=$1 "$6" exiftool -GPS:ALL "$6" } if [ -d "$foo" ] ; then for i in "$foo" ; do # the selection of files treated depend on the passed regex echo "i= "$i setgpsinfo $lat $latR $lon $lonR $alt "$i" done else setgpsinfo $lat $latR $lon $lonR $alt "$foo" fi else echo "file or folder is wrong" fi fi