如何从EXIF获取相机序列号?

时间:2011-05-02 13:36:43

标签: php exif

如何从EXIF获取相机序列号?


编辑:有些人认为并非所有(甚至很多)相机都存储了序列号,但我尝试过来自不同制造商的4个相机。所以,让我们把它改为“如果有的话,如何从EXIF获取相机序列号?”

4 个答案:

答案 0 :(得分:19)

如前所述,并非所有相机都存储序列号。但是,大多数数码单反相机都可以。

序列号实际存储在EXIF的MakerNotes部分中。这是制造商以他们喜欢的任何格式编写的专有部分。

我通过Jacob Seidelin<编辑:网址是404 )扩展了这项伟大的工作,以便在my Site上使用javascript提取序列号,其中包括Chrome的离线版本没有其他原因,只能看看我能不能!它是开源的,所以如果你正在寻找一个javascript解决方案,欢迎你建立它等。

问题不包括编程语言或任何contsraints,因此目前最好的答案是使用exiftool。它对不同的相机型号和文件格式提供最完整的支持(包括对不同应用程序如何屠宰它的精彩支持!)

获取序列号的简单示例命令是:

exiftool -SerialNumber myImage.jpg

我在写我的网站时,我已经在数百小时内查看了这个主题,所以如果您还有其他问题,请告诉我们!

答案 1 :(得分:4)

几乎所有数码单反相机都将序列号编码到制造商备注部分的EXIF信息中。大多数人在EXIF信息中看不到的原因是Adobe产品几乎忽略了EXIF信息的制造商备注部分。因此,如果您使用Adobe产品查看EXIF信息,则无法看到序列号。但这并不意味着它不存在,只是意味着Adobe没有显示它。

答案 2 :(得分:3)

首先,相机必须将其序列号写入EXIF数据。我不知道有什么用。

但无论如何,您必须查看相关特定相机的文档,看它是否写入此值以及写入的位置。它没有标准的位置,因为它不是标准的东西(例如ManufacturerModel)。

您可以看到很多关于EXIF规范here

答案 3 :(得分:1)

您可以使用exif_read_data访问php中的EXIF信息。有关如何使用此命令的良好代码示例,请参见以下链接中的手册。

http://www.php.net/manual/en/function.exif-read-data.php

但afaik目前没有多少摄像机将序列号编码到EXIF块中。