关于测光的数学部分

我们用 f 表示光圈值(注意光圈是指通光孔径与焦距的比例,没有单位,但是常意下 F/2.8 实际是指数值为 f = 2.8),s 表示快门速度(单位为秒的倒数),g 表示 ISO 对 100 的增益(比例,如 $g = 1$ 对应 ISO 100)。则 exposure value(EV)与三者之间的关系为

\mathrm{EV} = \log_2 \displaystyle \frac{f^2}{gs} = \log_2 \frac{S}{gF^2}

这样一来所谓的 EV=0 指在 F/1.0 下 ISO 100 曝光为 1s 时的进光量。这里 f = \frac{1}{F}, s = \frac{1}{S}。EV 和实际光照没有任何关系,纯粹是指相机的设置。EV 每增加 1,也就是所谓“一档”表示进光量(这是一个不准确的表述,EV 更像是描述水管的粗细,表示的是能够进光的能力)减半,比如将以上设置中光圈减小到 F/1.4 或者快门速度为 2/s 或者 ISO 为 50。看起来有点 counterintuitive,但是实际上越明亮的地方,如果需要“正确的曝光”,对应的 EV 值就越大。测光的时候,其实是根据当前的照度,推算获得正确曝光时的 EV。给定一个 EV,拍摄者可以根据需求(如 depth of field 或者凝固运动需要的最低快门速度)来决定其他的几个因素。

与 EV 密切相关的算是 luminance(明度)和 illuminance(照度)两个物理概念了(参看之前的 blog),照片其实与光源本身的明度没有任何关系(除非拍摄的主体是发光的),多数照片是对反射光的物体进行的拍摄,更关心的是它们在给定光源下获得的照度。一般的我们有如下关系

\displaystyle\frac{f^2}{gs} = \frac{L}{C} = \frac{E}{K}

这里 L 为场景明度,而 E 为照度,对应的 C 或者 K 为 calibration 常数。通常测光表有一个白色的 dome,测光表通过测量这个 dome 上面照度的大小获得对应的 EV,从而我们可以选择对应的光圈快门。可见,像 sekonic 这些销售测光表的厂家,本质上是销售一个固定的材料和根据这个材料校准过的常数 K。要想通过手机或者 tablet 这些设备为用户提供良好的测光结果,本质上就是需要创造一个 calibration 的流程,方便用户能在不同的环境下获得一个相对准确的测光仪器。选定常数 K 以后我们能获得如下关系:

E = 2.5\times 2^{\mathrm{EV}}

这里 2.5 对应的是某种材料校准后的常数。

在 Android API 里面可以通过 SensorManager 拿到需要的 sensor,这里是一堆可以用的 sensor,我们大概需要那个 STRING_TYPE_LIGHT,或者直接使用 camera?用 camera 的一个重要问题是它会依赖于 sensor 感受的环境光线,如果有高光过曝就会估计不准,有一个类似 dome 的物体可以减轻这个问题,但是也会给 calibration 造成一些问题。

一些现有的产品:

  • kickstarter 上的 luxi 好像自己做了一个 dome 套在手机上,问题是必须去买一个跟手机搭配起来。它使用的是 camera 来计算照度,尽管它声称跟其他使用前置相机
  • 另外几个 app,似乎功能上是或者偏向摄影,或者偏向布光(比如搞照明的人用),没有两者一起来的从搞法上来看,的确是有用 camera + light sensor 的,而且 light sensor 不见得

—————–
And Dishon, and Ezer, and Dishan:these are the dukes of the Horites, the children of Seir in the land of Edom

Advertisements
关于测光的数学部分

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s