跳至主要内容

第 13 章:曝光

曝光三角:三個旋鈕,一個目標

當你用智慧型手機拍照時,你實際上是在捕捉光線。到達感光元件的光線決定了你的照片是太暗(欠曝)、太亮(過曝)還是恰到好處(曝光正確)。三個基本控制項管理著這一點——它們共同構成了曝光三角

核心思想: 三角形的每個角都控制光線,但每個角也都會引入一種創意權衡。你可以透過三個設定的不同組合實現相同 的總曝光量——但每種組合都會為你的照片帶來不同的觀感

在我們在下一章深入探討 Android Camera2 API 的細節之前,讓我們先為每個元素建立穩固的直觀基礎。


ISO:感光元件靈敏度(增益控制)

在底片時代,ISO 描述的是底片對光線的敏感度——ISO 100 底片較「慢」,需要明亮的光線,而 ISO 800 底片較「快」,可以在室內拍攝。

在數位攝影(包括智慧型手機相機)中,ISO 是感光元件增益 / 電子放大。 當你將 ISO 值加倍時,你實際上是將應用於感光元件類比訊號的放大倍數加倍,然後再將其數位化。

ISO 的工作原理

想像感光元件的像素井正在收集光子(光粒子)。在曝光期結束後:

  1. 每個像素將累積的光子轉換為微小的電荷
  2. 類比增益放大器將該訊號乘以與你的 ISO 設定相對應的係數
  3. 放大後的訊號被轉換為數位訊號 (ADC)
  4. 數位處理隨後進行進一步處理(降噪、色調映射)

ISO 100 = 基礎 / 最低增益。 訊號放大倍數最低,因此:

  • 照片乾淨,數位噪聲(噪點)最少
  • 動態範圍(可記錄的最亮和最暗色調之間的差異)最高
  • 色彩最準確

ISO 3200 = 高增益。 訊號被放大 32 倍:

  • 你可以在更暗的場景中拍攝,而無需增加快門時間
  • 但你會得到可見的噪聲(彩色斑點、亮度噪點)
  • 動態範圍和色彩準確度顯著下降

典型智慧型手機 ISO 範圍

ISO 範圍特徵用例
50–200基礎 ISO,影像最乾淨明亮的日光,影棚照明
200–800中等增益,輕微噪聲陰天,背陰處
800–3200可見噪聲,仍可用室內照明,黃昏
3200–12800+重度噪聲 / 應用重度降噪夜景,暗光活動

智慧型手機現實註記: 旗艦手機通常在較高的 ISO 值下應用重度計算降噪(供應商特定的「夜間模式」處理)。當你稍後在 Camera2 中禁用自動管線時,你將失去許多這些 OEM 優化——這是我們將在第 14 章回歸的一個關鍵警告。


快門速度(曝光時間)

快門速度簡單來說就是感光元件暴露在光線下的時間長短。在傳統相機中,機械快門會物理性地開啟和關閉。在智慧型手機中,它幾乎總是電子快門——感光元件被重置,允許收集光線一段時間(精確時長),然後讀取數據。

快門速度以為單位,通常表示為分數:

快門速度它的作用典型用途
1/2000s – 1/1000s極短曝光,凍結所有動作運動、鳥類、快速行駛的車輛
1/500s – 1/250s凍結典型的人類動作走動的人、玩耍的孩子
1/125s – 1/60s配合防手震的「安全」手持速度穩健手持拍攝的一般攝影
1/30s – 1/15s可見輕微運動模糊,需要三腳架創意動態,弱光
1s – 30s長曝光,重度運動模糊瀑布、星軌、滑順的水面
30s+超長曝光(專業)天文攝影、光繪

運動模糊效果

除了「獲得足夠光線」之外,有兩個理由讓你刻意選擇特定的快門速度:

  1. 凍結動作: 以 1/1000s 拍攝飛行中的鳥,每一根羽毛都清晰可見,因為鳥在曝光期間移動的距離幾乎為零。

  2. 創造運動模糊: 以 2 秒拍攝瀑布,移動的水流會呈現出平滑、滑順的白色痕跡——因為在感光元件曝光期間,每一滴水都經過了感光元件上的許多像素。

把它想像成一種長曝光繪畫:任何在快門開啟期間移動的東西都會變成條紋。

對於影片很重要: 拍攝 30fps 影片時,每一幀的曝光時間最多約為 1/30s。電影製作人遵循 180° 快門法則:將快門速度設定為幀率的兩倍 → 對於 30fps 影片,設定為 1/60s。這能提供自然的、「電影感」的運動模糊,既不會太生硬也不會太模糊。


光圈

光圈是鏡頭內部光線通過的開口大小。它以 f 值 (f-stops) 來衡量 (f/1.4, f/2.0, f/2.8, f/4.0, f/5.6, f/8.0 等) —— 這是一個反直覺的刻度,數字越小 = 開口越寬

f/1.4 f/2.0 f/2.8 f/4.0 f/5.6 f/8.0
█████████████████████████████████████████████████████████
█████████████████ █████████
███████████████ ███████
█████████████ ██████
████████████ █████
███████████ ██████

每檔光線減半: 從 f/1.4 → f/2.0 → f/2.8 → f/4.0 移動,每一步都會使開口面積減半,因此通過的總光線減少一半。這就是每步減暗一「檔」。

光圈權衡(創意與實踐)

  1. 景深 (DoF): 大光圈 (f/1.8) = 景深 —— 只有窄窄的一層平面在焦點內;之前/之後的任何東西都會模糊(虛化/焦外)。小光圈 (f/8) = 景深 —— 從前景到背景的一切都是清晰的。

  2. 集光能力: f/1.4 比 f/2.8 多收集 4 倍的光線。這就是為什麼「大光圈鏡頭」(寬最大光圈)在弱光拍攝中備受青睞的原因。

  3. 繞射: 在極小的光圈 (f/11+) 下,光波會繞過光圈葉片彎曲,使影像略微變軟。這在智慧型手機上通常無關緊要。

智慧型手機現狀檢查

大多數智慧型手機擁有固定光圈鏡頭 —— 你無法更改 f 值。廉價手機可能是 f/2.4–f/2.8;旗艦機通常達到 f/1.4–f/1.8。Android Camera Parameters 應用讓你可以在 CameraCharacteristics 中檢查鏡頭的固定光圈。

少數高階手機(例如三星 Galaxy S23 Ultra、索尼 Xperia 系列)提供雙光圈機制,可以在兩個檔位(例如 f/1.5 和 f/2.4)之間機械切換。在 Camera2 中,查詢 LENS_INFO_AVAILABLE_APERTURES 看看你的設備是否支援多種光圈。

實踐啟示: 對於大多數 Android Camera2 開發,光圈是固定的,因此你僅透過 ISO + 快門速度控制曝光。兩個旋鈕而不是三個 —— 這實際上簡化了事情!


EV:曝光值(對數刻度)

當攝影師說「調整一檔」時,他們的意思是將總光量加倍或減半。為了使基於「檔」的思維更加精確,行業標準化了曝光值 (EV)

EV 0 被定義為產生標準參考亮度的曝光組合:1 秒曝光,f/1.0 光圈,ISO 100

+1 EV 將光量加倍(更亮)。每 −1 EV 將光量減半(更暗):

EV 變化含義
+3 EV8 倍光量 (2³)
+2 EV4 倍光量
+1 EV2 倍光量
0 EV參考:1s @ f/1.0 ISO 100
−1 EV½ 光量
−2 EV¼ 光量
−3 EV⅛ 光量

美妙之處在於:任何總和為相同 EV 值的 ISO + 快門 + 光圈組合,都會產生相同的總曝光量。這就是連接三角形三個角的等效曝光原則。

EV 與 ISO/快門組合

在固定光圈的情況下,EV 方程式大大簡化。對於光圈為 f/1.8 的智慧型手機:

場景典型 EVISO 100 快門ISO 400 快門ISO 1600 快門
明亮的陽光沙灘151/4000s1/1000s1/250s
陰天 / 多雲121/500s1/125s1/30s
明亮的室內辦公室81/30s1/8s1/2s
夜間的起居室42s0.5s1/8s
星空夜景−230s8s2s

著名的陽光 16 法則

在矩陣測光和複雜的自動曝光演算法出現之前,攝影師依靠一種經驗法則,在沒有測光錶的情況下鎖定日光下的曝光:

在晴天,將光圈設定為 f/16,快門速度設定為 1/ISO 秒。

陽光 16 (f/16)f/1.8 等效 (智慧型手機)
ISO 100, 1/100s, f/16 → EV 15ISO 100, 1/4000s, f/1.8 → EV 15 ✓
ISO 200, 1/200s, f/16 → EV 15ISO 200, 1/8000s, f/1.8 → EV 15 ✓

計算結果吻合:f/1.8 比 f/16 寬約 6⅓ 檔。每一檔加倍?不 —— 每一檔光線面積加倍。2^(6.33) ≈ 80 倍光量。因此快門速度必須快 80 倍來補償:1/100s ÷ 80 ≈ 1/8000s (在 ISO 200 下)。對於實地拍攝來說足夠接近了。


欠曝 / 正確 / 過曝的觀感

讓我們心理對比一下同一場景(例如,一個人在戶外,身後是天空)的三種拍攝效果:

欠曝 (−2 EV): 主體太暗。陰影被壓死成純黑,沒有細節。在直方圖中,所有數據都堆積在左側(暗部)。天空看起來可能不錯,但人看起來像個剪影。你可以嘗試在後期處理中「提亮」欠曝的原始數據,但陰影會露出嚴重的噪聲,因為你在放大一個微弱的訊號。

曝光正確 (0 EV): 中間調顯示出正常的質感。人的臉上有可見的皮膚細節、衣服褶皺、眼睛高光。直方圖數據分佈在整個範圍內,兩端沒有硬剪裁。在動態範圍有限的手機上,這可能意味著一些明亮的天空高光會剪裁成白色(沒有藍色細節) —— 這是一個相對於讓主體欠曝的經典權衡。

過曝 (+2 EV): 高光溢出成純白,無法恢復。天空是一個均勻的白色平面;明亮的襯衫鈕扣和鏡面反射被剪裁。人的皮膚看起來可能很討喜(很亮),但你永久失去了所有高光細節。不像欠曝的陰影(你通常可以用噪聲來部分恢復),溢出的高光永遠消失了 —— 那些像素中根本沒有數據。

攝影師的信條: 寧欠勿過 (Expose for the highlights, recover the shadows)。 在 RAW 拍攝中(我們稍後會介紹),這一點尤為強大,因為 14 位 RAW 儲存了足夠的陰影細節,可以拉升 +2 EV 或更多而不會產生毀滅性的噪聲。


現實世界 EV 參考表

記住幾個里程碑式的 EV 值可以讓你在任何地方估算曝光:

場景典型 EV (在 ISO 100 下)大致快門 @ f/1.8, ISO 400
直射陽光下的雪景161/4000s
陽光沙灘,晴朗的一天151/2000s
典型的晴天141/1000s
陰天 / 多雲121/250s
濃雲 / 下雨111/125s
開闊陰影處(人在陰影中,背景被日光照亮)91/30s
日落 / 黃金時段71/8s
明亮的室內辦公室81/15s
家中起居室,僅靠燈光41/2s
昏暗的餐廳內部22s
夜間的城市街道(霓虹燈)14s
夜間風景,遠處的城市燈光−230s
月光下的風景(滿月)−31 分鐘
星空,無月亮−68 分鐘

你可以針對你手機自動曝光實際選擇的數值來驗證這些近似值。啟動 Android Camera Parameters 應用,進入即時預覽,並觀察當你從陽光明媚處走到暗室時 SENSOR_EXPOSURE_TIMESENSOR_SENSITIVITY 的變化 —— 你會看到映射到此表的真實數值。


綜合:等效曝光

假設你想要相同的總曝光量 (EV 12 = 陰天,f/1.8 智慧型手機)。以下是產生相同感光元件亮度的三個有效組合:

組合ISO快門速度觀感與質感
乾淨且銳利1001/500s噪聲最少,對動作的凍結最清晰
折衷方案4001/125s輕微噪聲,良好的平衡
平滑運動16001/30s可見噪聲;移動主體會有輕微模糊

三者都落在相同的 EV。三者看起來同樣亮。但質感(噪聲噪點)和運動刻畫是完全不同的。這就是曝光的藝術。

如果我兩者都需要呢?

這就是計算攝影大放異彩的地方。手機處於「夜間模式」時不是拍攝一張 2 秒的照片 —— 它擷取了幾十張 1/60s 的幀(在每一張中凍結動作),然後透過計算進行對齊和平均。結果在大約獲得長曝光集光能力的同時,沒有運動模糊的懲罰。

一旦你理解了 Camera2 層級的手動曝光,你就可以自己實現類似的技术。


小結

在本章中,我們涵蓋了攝影基礎知識,而沒有觸及任何一行 Android 程式碼:

  • 曝光三角: 快門速度(時間)、ISO(感光元件增益)和光圈(開口大小)結合起來控制總光量。每一個都有創意權衡。
  • 數位攝影中的 ISO = 類比感光元件增益。低 ISO = 乾淨,高 ISO = 噪點。智慧型手機通常支援帶有 OEM 降噪的 ISO 100–6400+。
  • 快門速度 是曝光時間(秒)。快速快門 (1/1000s) 凍結動作;慢速快門 (1s+) 創造運動模糊。180° 快門法則適用於影片。
  • 光圈 是由 f 值控制的鏡頭開口。大多數智慧型手機光圈固定,因此我們僅依靠 ISO + 快門。
  • EV (曝光值) 是對數檔位刻度,每個 ±1 步長使光量加倍/減半。EV 0 = 1s @ f/1.0 ISO 100。
  • 陽光 16 法則 和 EV 參考表讓你無需測光即可估算曝光。
  • 正確曝光 平衡了中間調細節,避免壓死陰影和溢出高光。RAW 保留了恢復空間。

下一章

第 14 章:Camera2 中的手動曝光中,我們將把這套概念模型轉換為具體的 Camera2 API 呼叫。你將學習:

  • 如何禁用自動曝光管線 (CONTROL_MODE = OFF, CONTROL_AE_MODE = OFF)
  • 如何將 ISO 值映射到 SENSOR_SENSITIVITY
  • 如何在人類可讀的秒 ↔ 納秒之間轉換 SENSOR_EXPOSURE_TIME
  • 完整的 Kotlin 程式碼,用於固定間隔拍攝曝光、夜間長曝光和 3 張連拍的曝光包圍序列
  • 關於關閉 3A 時 OEM 降噪會被禁用的關鍵警告

準備好你的思考帽 —— 程式碼部分馬上開始。