从图片中提取元数据而不上传整个图片

Extract metadata from pic without uploading the whole pic

我想弄明白,是否可以从图片中提取元数据,而不必 download/upload 整个图片文件。

我正在通过互联网查看几个库来执行此操作,但到目前为止我发现所有这些库都需要打开整个文件。

我一直在寻找 standards nowadays 的格式,我发现只有 XMP 允许获取与文件本身分开的信息。

有什么方法可以只用文件的一部分获取GPS坐标?

我认为从隐私和性能的角度来看这会很好。

此致,罗伯托

您可以使用 -r 参数下载 curl 的部分文件。因此,让我们获取文件的前 16kB 并将其传递给 jhead 以获取 EXIF/GPS 数据:

curl -r 0-16000 "http://thesetchells.com/a.jpg" | jhead /dev/stdin

示例输出

File name    : /dev/stdin
File size    : 0 bytes
File date    : 2018:01:09 13:39:45
Camera make  : Apple
Camera model : iPhone 4
Date/Time    : 2013:03:09 08:59:50
Resolution   : 2592 x 1936
Flash used   : No
Focal length :  3.8mm  (35mm equivalent: 35mm)
Exposure time: 0.0011 s  (1/914)
Aperture     : f/2.8
ISO equiv.   : 80
Whitebalance : Auto
Metering Mode: pattern
Exposure     : program (auto)
GPS Latitude : N 20d 50.66m  0s
GPS Longitude: E 107d  5.46m  0s
GPS Altitude :  1.13m
JPEG Quality : 96

您需要的大小会有所不同,我发现这张图片至少需要 14kB 左右。完整图像实际上是 2,219,100 字节。