在研究新相机时,我认为对照片中过去使用的最常用设置进行概述会很有趣。我主要对检索图片中使用的焦距感兴趣。虽然光圈/ ISO /快门速度也将受到欢迎。
在过去的10年中使用了不同的相机后,我需要将其转换为等效的35mm格式进行比较。我知道这是传感器尺寸的函数,特别是传感器裁剪系数乘以焦距。
我一直没有找到jpeg文件格式的 header 。我了解到您可以在名为wotsit.org的站点上找到大多数此类文件,但显然我无法从那里下载任何内容。我几乎对jpeg文件一无所知,但是我可以肯定它们使用exif格式来保存我正在寻找的图像元数据。
http://www.exif.org/Exif2-1.PDF(第49页)显示焦距存储为某个地方的有理数。但是我很难掌握结构并将其应用到代码中。此外,要计算等效的35mm比例,我必须知道相机的传感器尺寸,而该尺寸在该文档中找不到。
有人可以给我一个提示/指向jpeg / exif文件实际结构的方向吗?我将为此项目使用C++。我知道这一定是可能的,Windows显示35mm eqv。我的照片。
*这似乎是两个ulong,它们代表一个分数,当除以后就得出焦距?
TL; DR:如何从jpeg文件中提取焦距和传感器尺寸,以计算35mm等效焦距?
谢谢!
最佳答案
除非您的目的是学习如何阅读这些图像,否则建议使用libexif之类的库。
关于c++ - JPEG-从文件读取焦距,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12664647/