Transfer info gps exif dari satu gambar ke gambar lain

13

Saya memiliki kamera (bukan ponsel) yang memasukkan info gps exif ke dalam gambar.

Faktanya adalah: menggunakan "gps on" sepanjang waktu menguras baterai. Jadi saya pikir: bagaimana kalau hanya mengambil satu gambar dengan gps aktif, dan mereka di rumah menambahkan info exif ini ke yang lain?

Saya ingin tahu apakah ada aplikasi yang Anda ketahui yang dapat membantu saya dalam skenario ini: memiliki foto dengan informasi exif tentang gps, salin info gps yang sama ini ke banyak gambar lain.

(Saya lebih suka solusi Linux / Mac, tetapi saya menerima windows juga. Saya tidak keberatan jika itu adalah aplikasi baris perintah.)

Seseorang masih menggunakan Anda MS-DOS
sumber

Jawaban:

13

Lihatlah ExifTool . Ini adalah pisau swiss tentara manipulasi info Exif, dapat melakukan apa yang Anda butuhkan, di antara banyak hal lainnya. Ini adalah alat baris perintah yang kompatibel dengan Windows / Linux / Mac dan modul Perl juga. Sumber gratis dan terbuka:

Opsi "-tagsFromFile"

Opsi ExifTool khusus memungkinkan menyalin tag dari satu file ke file lainnya. Sintaks baris perintah untuk melakukan ini adalah "-tagsFromFile SRCFILE". Tag apa pun yang ditentukan setelah opsi ini pada baris perintah diekstraksi dari file sumber dan ditulis ke file tujuan. Jika tidak ada tag yang ditentukan, maka semua tag yang dapat ditulis akan disalin. Opsi ini sangat sederhana, namun sangat kuat. Bergantung pada format file sumber dan tujuan, beberapa tag yang dibaca mungkin tidak valid dalam file tujuan, dalam hal ini mereka tidak ditulis.

Perintah berikut akan mengubah semua file dalam direktori saat ini dan anak-anaknya (secara rekursif), menyalin semua tag terkait GPS dari file SOURCE.JPG:

exiftool −overwrite_original_in_place -r -tagsFromFile SOURCE.JPG -gps: all.

Cara lain untuk melakukan ini adalah dengan memasukkan yang berikut ke dalam skrip. Parameter pertama yang dilewati adalah file untuk menyalin koordinat GPS, dan semua parameter lainnya adalah file target yang akan diperbarui:

#!/usr/bin/env bash
lon=$(exiftool -s3 -GPSLongitude "$1")
lat=$(exiftool -s3 -GPSLatitude "$1")
exiftool -GPSLongitude="$lon" -GPSLatitude="$lat" "${@:2}"
haim
sumber
2
jhead adalah utilitas lain yang sangat berguna yang dapat melengkapi ExifTool.
MikeyB
1
@ SomebodystillusesyouMS-DOS: Semua argumen (item dalam $@array) dimulai dengan ke-2. Juga, sekarang ada empat baris yang saya sadari bahwa saya meletakkan banyak barang yang tidak perlu (dan salah) di sana. (Juga, "terpecahkan".)
user1686
1
Saat Anda menggunakan skrip, saya akan terus menghadapi kenyataan bahwa saya benar-benar merindukan tagsFromFileopsi yang bisa melakukan hal yang sama dalam satu baris ...
user1686
1
@grawity: Saya sedikit terkejut dengan hasil edit Anda :-)
haimg
2
@grawity dan @haimg: exiftool −overwrite_original_in_place -r -tagsFromFile SOURCE.JPG -gps:all .- -ropsi berulang ke direktori ( .), dan -gps:all, yah ... itu hanya apa yang saya cari. Aku mengalahkanmu, grawity! :) Saya pikir Anda dapat mengedit posting ini dan menambahkan potongan ini, tapi ingat untuk memperingatkan orang agar membaca exiftool --helpuntuk memahami opsi lain yang saya berikan ... terima kasih semua!
Seseorang masih menggunakan Anda MS-DOS
0

Anda juga dapat menggunakan exiv2 - jauh lebih cepat dan, misalnya, dapat menulis data exif ke gambar webp (dan lainnya).

exiv2 -PkV --grep GPSL source.jpg | exiv2 -m- destination.webp

Ini adalah contoh dari papan exiv2 .

Adrian Siemieniak
sumber