2008年4月12日 星期六

你知道相機上的光圈值怎麼來的嗎?

有玩相機的人,大多都會知道,相機的光圈值,常見的有:
 F1.4 / F2 / F2.8 / F4 / F5.6 / F8 / F11 / F16 / F22 / F32
這些光圈數值幾乎是被學攝影者所直接背下來的,但是,很少人知道它們之間真正的關係。

當然,稍微懂的人都知道,每組鄰近一個光圈值之間,都有一格(或一級)的進光量差異。
即,每差一格,在固定時間內的進光量就差一倍。
光圈數值越小,代表光圈開得越大,進光量也就比下一格多一倍。
那麼,這些數字間究竟是什麼關係,為什麼數值越小光圈開越大,又為什麼進光量會每一格差一倍呢?

原來,這些數值的計算法,是由下面公式得出來的:

光圈值(F Number) = 鏡頭焦距(mm) / 光圈口徑(mm)

所以,我們若以標準鏡頭焦距50mm當標準來計算,
這樣,當光圈口徑也等於50mm時,光圈值就等於F1了。
那麼,下一個一半進光量的光圈值該是多少呢?
很簡單,會數學或會程式的人一定知道,就是用面積比例下去算了:
 1. 半徑:50 / 2=25
 2. 面積:25^2 * 3.14159...
 3. 面積一半:25^2 * 3.14159... / 2
 4. 還原回一半面積的半徑值:sqr(25^2 * 3.14159... / 2 / 3.14159...) = sqr(25^2 / 2)
 5. 再轉成直徑:sqr(25^2 /2) *2 = sqr(50^2 / 8) *2 = sqr(50^2 /2)
好啦,所以,下一個一半進光量的光圈口徑就是sqr(50^2 / 2)了,
那麼,其光圈值就是:50 / sqr(50^2 / 2)

我們用VB6簡單寫個程式,把所有一系列的光圈值列出來:


Private Sub Command1_Click()
  a = 50: b = 50
  Debug.Print "光圈口徑(mm)", "光圈值(F)"
  For i = 1 To 11
    Debug.Print Format(b, "#0.00"), Format(a / b, "#0.00")
    b = Sqr(b ^ 2 / 2)
  Next
End Sub

這樣,得到的答案是:

光圈口徑(mm) 光圈值(F)
50.00    1.00
35.36    1.41
25.00    2.00
17.68    2.83
12.50    4.00
8.84     5.66
6.25     8.00
4.42     11.31
3.13     16.00
2.21     22.63
1.56     32.00

當然,光圈值的標示只是個大略值,方便攝影者記憶而已!
將上面答案的小數第二位或連同小數第一位去掉,是不是就跟最上面提到的那排光圈值一樣了!

以後,再看到這些光圈值時,心中疑惑應該就會降到最低了吧!

0 意見: