使用exiftool将纬度 - 经度(从文件)添加到4000个图像

时间:2018-05-26 07:36:13

标签: linux exiftool

我使用 .jpeg 对我想要 to add Latitude & Longitude 的4000个 exiftool 图像文件。我有一个文本文件:

  • 第一列=从14000
  • 的序列方式的图像文件名
  • 第二栏=纬度
  • 第三栏=经度

如何使用某些脚本为图像添加经度和纬度?

1 个答案:

答案 0 :(得分:-1)

我没有尝试过这个脚本,因此显然有一些优化空间。暂时你可以试试这个。

考虑到名为coordinates的文件具有问题中描述的列,我已相应地编写了此脚本。

#!/bin/bash

# Loop for every line in the coordinates file
cat coordinates | while IFS= read -r line
do

    # Get Image name from Ist, Latitude from 2nd & Longitude from 3rd column.
    IMAGE=`echo "$line" | awk '{print $1}'` 
      LAT=`echo "$line" | awk '{print $2}'` 
     LONG=`echo "$line" | awk '{print $3}'`

    # Assign variables values into "exiftool" command
    exiftool -exif:gpslatitude="$LAT" -exif:gpslatituderef=S -exif:gpdlongitude="$LONG" -exif:gpslongituderef=E "$IMAGE"

done

需要考虑的一些要点:

  1. 如果 exif 标记不适合您,您可以使用 XMP 标记。在这种情况下,命令行将是这样的:

    exiftool -XMP:GPSLatitude="$LAT" -XMP:GPSLongitude="$LONG"  -GPSLatitudeRef="South" -GPSLongitudeRef="East" "$IMAGE"
    
  2. 如果您没有References valuesGPSLatitudeRef& GPSLongitudeRef个职位,只需使用 -P ,就可以运行良好:

    exiftool -XMP:GPSLatitude="$LAT" -XMP:GPSLongitude="$LONG" -P "$IMAGE"
    

    -P选项会保留并覆盖传递给它的标记的值,忽略其他需要的标记。

  3. 如果您想添加更多或更少的标签,请参阅 GPS Tags

  4. 随意添加更多详细信息。