[FIXED] Wie Alpha -Mischung mit einem transparenten Hintergrund in Photoshop funktioniert

Ausgabe

Ich habe zwei Quadrate: rot mit Farbe (255, 0, 0) 50 % Deckkraft, blau mit Farbe (0, 0, 255) 50 % Deckkraft und schwarzer undurchsichtiger Hintergrund. Am Schnittpunkt dieser Farben zeigt Photoshop die Farbe (128, 0, 64) (
Photoshp-Screenshot
).

Und dem stimme ich zu. Blaue Farbe mischt sich zuerst mit schwarzem Hintergrund:

(0, 0, 255) * 0,5 + (0, 0, 0) * ( 1 – 0,5) = (0, 0, 127,5) Alpha = 0,5 + 1 * (1 – 0,5) = 1

Dann wird das Ergebnis mit Rot gemischt:

(255, 0, 0) * 0,5 + (0, 0, 127,5) * (1 – 0,5) = (127,5, 0, 63,75) Alpha = 0,5 + 1 * (1 – 0,5) = 1

Aber wenn der Hintergrund transparent ist, gibt Photoshop Farbe (170, 0, 85) mit 75% Deckkraft (
Photoshp-Screenshot
).

Wie kommt es zu dieser Farbe? Ich habe (127,5, 0, 127,5) mit 75 % Deckkraft erwartet, weil es nichts im Hintergrund gibt, mit dem ich mischen könnte.

Lösung

Nach der in diesem Artikel beschriebenen Mathematik führt das Alpha-Mischen eines blauen Quadrats mit 50 % Deckkraft auf den schwarzen Hintergrund mit 0 % Deckkraft zu folgendem Ergebnis:

alpha_bg = 0
alpha_fg = 0.5
alpha_blended = alpha_fg + alpha_bg * (1 - alpha_fg) = 0.5
color_blended = ({0, 0, 255} * alpha_fg + {0, 0, 0} * (alpha_bg * (1 - alpha_fg))) / alpha_blended =
    ({0, 0, 255} * 0.5 + {0, 0, 0} * 0) / 0.5 = {0, 0, 255}

Wiederholen Sie dann diese Berechnungen, um das rote Quadrat mit 50 % Deckkraft über der oben berechneten Farbe zu mischen:

alpha_bg = 0.5
alpha_fg = 0.5
alpha_blended = alpha_fg + alpha_bg * (1 - alpha_fg) = 0.5 + 0.5 * (1 - 0.5) = 0.75
color_blended = ({255, 0, 0} * alpha_fg + {0, 0, 255} * (alpha_bg * (1 - alpha_fg))) / alpha_blended =
    ({255, 0, 0} * 0.5 + {0, 0, 255} * (0.5 * (1 - 0.5))) / 0.75 = {170, 0, 85}


Beantwortet von –
Andrej Semaschew


Antwort geprüft von –
Robin (FixError Admin)

0 Shares:
Leave a Reply

Your email address will not be published. Required fields are marked *

You May Also Like