color 是做什麼的?
素材到達時通常是混合的:Log 攝影機、手機 HDR、庫存片段、AI 生成、RAW 照片。如果原封不動地使用,每個鏡頭都會帶來自己的光線和色調,導致影片看起來像拼湊而成。這項技能會測量檔案再處理,先轉換後校正,並始終提供前後對比表。
細節在於此檔案旁的 referencias/ 目錄中:
| 檔案 | 內容 |
|---|---|
perfiles.md | 透過測量偵測 S-Log3 和 HLG;轉換至 Rec.709 的曲線、矩陣和 LUT;色彩標籤 |
luts.md | 輔助片段調色、每個鏡頭的 LUT(統一鏡頭)、將人物與背景分離為兩層、.cube 格式 |
lumetri-por-script.md | 透過腳本在 Premiere 中調光:結構、Lumetri 索引、陷阱、測量回應、目標 |
fotos-raw.md | 以膚色為參考解析 RAW,以及照片和片段的朝向 |
流程
- 識別收到的內容,透過測量。 使用
ffprobe標籤(color_transfer、color_primaries、color_space),如果標籤為unknown,則使用亮度百分位數。同時檢查旋轉和實際幀率。 - 將非 Rec.709 的內容轉換為 Rec.709,在任何其他操作之前:HLG → SDR,S-Log3 → Rec.709。強制設定輸出標籤。
- 在使用前為每個輔助片段調色(B-roll、庫存、生成、客戶提供),並附上前後對比表。
- 統一各鏡頭的色調。 提供「中性或用一個參考鏡頭」的選項,讓使用者選擇什麼是「正確的」。
- 將人物與背景分離,當皮膚和背景色調相近時:基於動畫遮罩套用兩個 LUT。
- 在 Premiere 中調光: 在 V1 軌道上為每個鏡頭使用一個 Lumetri 效果進行白平衡,將通用風格放在一個調整圖層上。每次調整後透過導出的影格進行測量。
- 在 Premiere 或測量渲染結果時驗證,從不在 QuickTime 中驗證,並提供對比表。
不可違反的原則
每條規則都源自真實的校正經驗。
- 測量檔案本身,而非其名稱或標籤。
因為 S-Log3 通常帶有
unknown標籤,看起來「缺乏對比度」;而某些 HLG 檔案名稱中並未標明。 - 先轉換,再調色。 因為在未轉換的 Log 或 HLG 上進行校正會導致畫面褪色或帶有橙色色偏。
- 所有輔助片段在使用前都需調色: 良好的曝光、飽和度鮮活但可信、對比強烈、色溫中性。 因為每個來源都帶來自己的光線和色調,影片會顯得拼湊而成。
- 對三個通道進行共同的水平調整;僅使用接近灰色的像素進行白平衡。 因為獨立拉伸每個通道會將主體的顏色誤認為色偏:曾導致紅色鐵鏽變成黃色和紫色,金色粉末帶有藍色光暈。
- 在真正溫暖的場景中,不要按通道調整增益。 溫暖感應透過分段色調和高光/陰影色調來建模。 因為按通道增益會使灰色失去中性(在白色衣物和紙張上尤為明顯)。
- 參考鏡頭由使用者選擇。 因為你選擇的「溫暖」參考可能過於偏黃;這種情況已經發生過。
- 在有色篷布或帳篷下,從第一次調整就測量皮膚,而不是中位數或灰色。 因為篷布主導了畫面,導致臉部變暗、偏黃和偏綠。
- 如果臉部佔比很小,則以鏡頭的對比度為優先。 黑色保持黑色,並保留細節。 因為透過強拉曝光和陰影來提亮小臉,會導致黑色發灰、色彩變淡:「看起來很平」。
- 在最終調整前詢問偏好: 明亮通透或高對比。如果沒有回應,則選擇較亮的風格。 因為一個高對比、暗調的風格,即使測量準確,也曾被嫌棄為「調色太暗」。
- 在 Premiere 中或透過測量渲染結果來判斷,而非在 QuickTime 或 Finder 的快速檢視中。 因為它們應用了 Apple 的 gamma,會使正確的匯出看起來褪色。
- 始終查看前後對比表;對於色彩強烈的主體(金色、鐵鏽、產品),需以 100% 比例與原始鏡頭比對。 因為自動校正可能在縮圖中不易察覺地改變主體的色調。
- 客戶在棚拍背景下的產品,只在必要時才進行調整。 因為其背景已經過調整,任何變動都會破壞它。
- 低解析度素材不要全螢幕檢視。 大特寫需要原生 1080 或更高解析度;縮放僅適用於小卡片。 因為沒有任何顏色能修復模糊的影像。
- 在評判一張「拍壞的」照片或片段前,先檢查其朝向。 因為某些工具會忽略朝向,從而丟棄實際上很好但只是顯示錯誤的素材。
數值
| 項目 | 數值 |
|---|---|
| S-Log3 特徵 (8-bit) | 第 1 百分位數 ≈ 24–30 · 第 99 百分位數 ≈ 148 · 最大值 ≈ 167 |
| HLG | color_transfer = arib-std-b67,primaries bt2020;在 Premiere 中,getColorSpace() trc 18 / prim 9(Rec.709 = 1 / 1) |
| LUT | 33³(35,937 個輸入點),四面體插值 |
| 調色 | 黑色設定在通道最小值第 0.4 百分位數,白色設定在通道最大值第 99.6 百分位數 · 使用飽和度 < 0.14 且亮度 0.18–0.85 的像素進行白平衡,強度 80%,限制在 ±10% · 目標平均亮度 0.44(暗部場景為 0.34) · 飽和度 ×1.15(金色或其他強色時為 ×1.0) |
| 統一鏡頭 | 在 LAB 色彩空間中對主體中央區域進行 Reinhard 色調映射 · 強度 0.6 · 縮放限制在 0.65–1.6 |
| 良好校正的日間鏡頭 | p1 ≈ 7 · p50 ≈ 92–124 · p99 ≈ 243 · 灰色 a* +0.8 / b* +4(自然暖色) |
| 良好曝光的鏡頭 | 亮度第 95 百分位數 ≈ 190–230 |
| 陰暗處的臉部 | L* ≈ 45–52,不超過畫面中位數 (~150) |
| 陰天室外,明亮風格 | 中位數 ≈ 110–125 (out of 255) |
| 風格中的暗角 | −0.25(−0.5 時角落已變暗 17%) |
技術陷阱
- ffmpeg 會保留 HLG 的標籤,即使你傳入
-color_trc bt709,Premiere 或 Remotion 會再次轉換:導致金色變成橙色。在濾鏡鏈結尾強制加上setparams=color_primaries=bt709:color_trc=bt709:colorspace=bt709,並用ffprobe驗證。 - 沒有自動色調映射的序列會原封不動地導入 HLG,導致匯出褪色。而 Premiere 的偏好設定「擴展動態範圍監控」會在螢幕上顯示漂亮的 HDR,但這並非實際匯出的內容:請關閉它。
- 以低解析度學習的 LUT 會使飽和顏色呈現橙色: 請在 1080 或更高解析度下學習。
- 「憑記憶」的色彩矩陣通常在綠色和藍色行有誤: 應從原色推導。
- 透過腳本的 Lumetri: 單一色溫調整會表現得像是色調調整;請連續設定該參數三次(參見
lumetri-por-script.md)。 - 新的 LUT 只有在 Premiere 啟動時才會載入,而透過腳本設定的「輸入 LUT」是一個索引,而非路徑。
- Lumetri 的「自動」功能不是一個好的起點: 它傾向於讓畫面變冷,留下洋紅色調,並過度提升曝光。
- 使用動畫遮罩時,背景模糊應放在完整鏡頭的軌道上,而不是在動畫遮罩的軌道上:否則會模糊人物。
- 透過腳本無法建立調整圖層或移除效果: 調整圖層需由使用者建立;多餘的效果則設為零並發出警告。
- 透過管道將原始影格送入 ffmpeg 時,請使用與輸出相同的色彩空間標記輸入,否則會轉換曲線並使畫面變暗約 3 級。
- 手機的「120 fps」通常是實際的 30 fps: 請檢查
avg_frame_rate或nb_frames。
「在 QuickTime 中看起來褪色」
這幾乎從來都不是匯出的問題。QuickTime 和 Finder 的快速檢視(使用相同的 Apple 引擎)以約 1.96 的 gamma 讀取 Rec.709:這會提亮陰影並使顏色褪色。iPhone 很可能會顯示相同情況;Android 則更接近 Premiere。此外,如果 Premiere 關閉了螢幕的色彩管理,其監視器會顯示原始數值,在 P3 螢幕上看起來會更飽和一些。
在討論之前,請先測量。從匯出檔和 Premiere 中導出相同的影格(使用 QE exportFramePNG 或 export_frame_uxp):
ffmpeg -nostdin -v error -ss 12.0 -i export.mp4 -frames:v 1 export_12s.png
如果平坦區域(如牆壁、天空)的 RGB 值相同,則表示匯出是準確的。也請確認哪個視窗是哪個:顯示「用 QuickTime Player 打開」的是快速檢視;顯示「應用程式:」的是 Premiere。
交付物與驗證方式
| 交付物 | 驗證方式 |
|---|---|
已校正片段,帶有 _c 後綴,與原始檔放在一起(並且合成指向 _c) | ffprobe:標籤為 bt709 / bt709 / bt709,與原始檔具有相同尺寸、幀率和時長 |
| 每個片段或鏡頭的前後對比表 | 皮膚自然,無純黑或純白,無色偏;主體保留其顏色 |
.cube LUT(每個鏡頭,或背景與人物) | 使用 ffmpeg -vf lut3d 套用後,結果應與計算出的轉換相同 |
| Premiere 中的調光 | 每個鏡頭導出一個影格:亮度的 p1、p50 和 p99,灰色的 a*/b* 以及皮膚的 L*,包含調色前和調色後 |
說明任何待辦事項:需要重啟 Premiere 才能載入的新 LUT、需要使用者建立的調整圖層、或無論如何都無法達到目標的鏡頭(例如遮陽帽下的臉部)。將完成的工作記錄在 pieza.md 中。