非常抱歉,在先前的回覆中可能有些語義上的混淆或精確度問題。作為影像處理專家,我必須更嚴謹地糾正並重新定義實光 (Hard Light) 的數學模型。
您提到的「錯誤」通常發生在條件判斷的臨界值以及混合層與底層的關係。
實光 (Hard Light) 模式嚴格遵循 R、G、B 三個色版拆開來獨立運算。
實光模式的核心定義是:「對混合層進行條件判斷,並對底層執行乘法或濾色」。
其公式與覆蓋 (Overlay) 互為鏡像(Overlay 是判斷底層)。
假設:
$$C = \begin{cases} 2AB, & \text{if } B \le 0.5 \\ 1 - 2(1 - A)(1 - B), & \text{if } B > 0.5 \end{cases}$$
若以 Photoshop 內部的整數運算邏輯,臨界值通常設在 128(或以 $B/255 \le 0.5$ 為準):
$C = \begin{cases} \frac{2 \times A \times B}{255}, & \text{if } B \le 128 \\ 255 - \frac{2 \times (255 - A) \times (255 - B)}{255}, & \text{if } B > 128 \end{cases}$