如何从 EXIF 标签了解或计算照片的景深?
-
22-07-2019 - |
题
我想知道照片的景深,最好以厘米或米为单位。
我知道我们可以通过读取EXIF标签来了解相机设置,但是有没有一个标签直接告诉我们景深呢?或者我们如何根据一些 EXIF 标签来计算它?
示例将不胜感激。谢谢!
解决方案
字段的计算深度:
T = A *(S / 1440)*(d - F)/ F ^ 2
在近焦点距离= d /(1 + T)
在远焦点距离= d /(1-t)的
和字段的全部深度是它们之间的差。
的变量是:
A =透镜孔径(F数)
在毫米S =相机传感器或胶片平面对角线尺寸
d =以毫米焦距
在毫米F =镜头焦距
当然,焦点的清晰度是主观的,并且通过改变常数在混乱(COC)的圆的计算调整。这里,我使用的CoC = S / 1440,其是通常使用的值。
其他提示
我猜在这里,所以我会很感激,如果任何人都可以证实这一点:
我相信你不能确定编程从可用的EXIF数据景深 - 你必须知道的f值,焦距,这是至关重要的:被摄物距离
。字段FNumber
和Focal Length
会给你的第2位。第三个通常不能够确定与相机。你会需要一些机制来进行测距 - 一些额外的设备,为相机或三角测量一些已知值
此网页 http://www.dofmaster.com/dofjs.html 具有的什么是参与场计算的深度的简单说明:
我在寻找自由度计算时遇到了上述公式并找到了这些。
仅几点:
需要在程序中检查 t 的值。如果
t = 1
, ,那么焦距为D/2
和无穷大,在这种情况下 D 实际上是超焦距(hfd)
. 。这很容易证明,并将 hfd 给出为(f**2)/(coc*Fnumber)
大约。如果 t 大于 1,您的答案将为否定,这是一个毫无意义的结果
不隶属于 StackOverflow