"EXIF_GPSAltitude": "(220.279)",
"EXIF_GPSLatitude": "(55) (40.711) (0)",
"EXIF_GPSLatitudeRef": "N",
"EXIF_GPSLongitude": "(8) (30.2282) (0)",
Bagaimana seharusnya saya memahami contoh di atas sebagai derajat, min, dtk?
Beberapa data exif yang saya ekstrak memiliki metadata yang tercantum di atas. Apakah format ini ditentukan di mana saja? atau haruskah saya berharap banyak format posisi gps yang berbeda di EXIF?
Saya perlu menulis metode yang memberikan lat, lng sebagai angka desimal berdasarkan data exif, dan saya tidak yakin tentang berapa banyak format berbeda yang saya harapkan dapat diurai (saya akan mempelajari ini dari waktu ke waktu) dan pertanyaan ini sebagian besar tentang contoh di atas. Saya tahu derajatnya adalah 55 dan 8, tetapi tidak yakin apakah 30 menit dan 0,22 * 60 detik, dan dalam hal ini, mengapa 0 di sana?
Jawaban:
Menurut halaman ini , nilai lintang dan bujur bisa dalam (1) derajat, (2) derajat dan menit desimal, atau (3) derajat, menit, dan detik desimal.
Dalam contoh Anda, (2) adalah nilai desimal dan (3) adalah nol, sehingga Anda memiliki derajat, menit desimal.
Jadi, Anda harus memeriksa beberapa nilai untuk menentukan format mana yang digunakan.
sumber
EXIF menyimpan koordinat GPS sebagai
rational64u
daftar enam bilangan bulat tanpa tanda dengan urutan sebagai berikut:Formatnya konsisten, dan sepertinya alat yang Anda gunakan sudah membagi setiap pasangan menjadi angka desimal, jadi yang Anda miliki adalah:
Jika Anda ingin mengonversi ke satu angka desimal:
sumber
Exiftool akan menampilkan koordinat dalam desimal presisi rendah jika Anda menggunakan sakelar -n. Anda bisa mendapatkan lebih banyak presisi dengan -c switch dan memberikan jumlah digit yang diinginkan di belakang desimal:
Memperlihatkan posisi dengan 6 digit di belakang desimal, yang bagus untuk menemukan tempat dalam 5 inci.
sumber
Saya menggunakan file batch ini untuk mendapatkan nama file, tanggal / waktu dan derajat desimal
posisi.
************** mulai lalo.bat '-n pasukan menandatangani derajat desimal cepat -dan: \ util \ 00ymp * .jpg> strudf' satu string per baris (spasi ok) findstr / G: "strfile" fud >> fum ********** end lalo.bat
menghasilkan output
Nama File: 0104171345.jpg Tanggal / Waktu GPS: 2017: 01: 04 21: 45: 19Z Posisi GPS: 46.9997367777778 -117.3392105 Nama File: 0104171355.jpg Tanggal GPS / Waktu: 2017: 01: 04 21: 55: 52Z Posisi GPS : 46.99622725 -117.307495111111 Nama File: 0104171402.jpg GPS Tanggal / Waktu: 2017: 01: 04 22: 02: 02Z Posisi GPS: 47.0075378333333 -117.284553527778 Nama File: 0104171404.jpg GPS Tanggal / Waktu: 2017: 01: 04 22:04 : Posisi GPS 51Z: 47.0222473055556 -117.275527944444 Nama File: 0104171405.jpg GPS Tanggal / Waktu: 2017: 01: 04 22: 05: 40Z Posisi GPS: 47.0269584444444 -117.269523611111
Nama File: 0112171921.jpg Nama File: 0112171921a.jpg Nama File: 0112171921b.jpg Nama File: 0120171623.jpg Nama File: 0120171623a.jpg Nama File: 0120171624.jpg
Nama File: 0120171626.jpg Tanggal / Waktu GPS: 2017: 01: 21 00: 26: 49Z Posisi GPS: 48.7900199722222 -117.290061944444 Nama File: 0120171628.jpg Tanggal GPS / Waktu: 2017: 01: 21 00: 288 Posisi GPS : 48.7907943611111 -117.292045583333
Nama File: 0122170942.jpg Nama File: 0122170942a.jpg Nama File: 0122170948.jpg Nama File: 0122170948a.jpg
Nama File: 0122170950.jpg GPS Tanggal / Waktu: 2017: 01: 22 17: 50: 12Z Posisi GPS: 48.782829277777778 -117.287322972222 Nama File: 0122170950a.jpg GPS Tanggal / Waktu: 2017: 01: 22 17: 50: 16Z Posisi GPS : 48.7828483333333 -117.287322972222 Nama File: 0122170950b.jpg GPS Tanggal / Waktu: 2017: 01: 22 17: 50: 38Z Posisi GPS: 48.7828178333333 -117.28733825
sumber
Terima kasih Jason atas rumus untuk mengonversi menjadi desimal, dan ke /programming/45136895/extracting-gps-numerical-values-from-byte-array-using-powershell
getGPS D: \ pics \ mypic.jpg
Nama lengkap: P: \ IMG_0014.JPG Latitude: 42; 32.27; 0 Longitude: 82; 52.58; 0 DECLatitude: 42.5378333333333 DECLongitude: 82.8763333333333
sumber