I'm still quite confused by difference between pre and post-multiplied alpha. What does it mean by 50% blue pixels in this slide? Where did they come from?
RakTheCroc
When we composite onto the yellow background, why does the alpha over not pick up the yellow pixels?
supernova
My understanding is that after interpolating color and alpha seperately in non-premultiplied alpha, the final step should still be multiplying the interpolated color and alpha. For example, let's say the interpolated color is 0.5 red and the interpolated alpha is 0.5, then the final color will be 0.25 red which is just like blending with 0.75 black that makes fringes. Is that make sense?
KrystalTea
I'm also confused with "e.g. 50% blue pixels using 50% alpha, rather than, say, 100% blue pixels with 50% alpha". Could someone please help me further explain this? Thanks very much!
wdc
Is the black fringe a result of the black background on the blue circle image? Or is the blending artifact always black when it happens?
tiffany2
How severe can the issue of fringing get? I guess I could barely notice it in the previous slide.
jasonx
I'm still confused too. Is it due to the black background?
qiqinl
In this slide, you are interpolating between an opaque blue and a transparent black(background).
Without pre multiplication: (0, 0, 1)(blue) with alpha = 1 interpolates (0, 0, 0)(black) with alpha = 0. You get (0, 0, 0.5)(deep blue) with alpha = 0.5. Black fringe occured!
With pre multiplication: (0, 0, 1, 1) interpolates (0, 0, 0, 0), and you get (0, 0, 0.5, 0.5). But (0, 0, 0.5, 0.5) is not (0, 0, 0.5) with alpha = 0.5(what you get above)! Instead, because premultiplied color has the form (ar, ag, ab, a), (0, 0, 0.5, 0.5) is actually (0, 0, 1)(blue) with alpha = 0.5! Therefore, the fringe disappeared!
Lavender
Thanks for the clarification, @qiqinl
jasonx
Ok the fringe occurred because both the color and alpha is reduced?
I'm still quite confused by difference between pre and post-multiplied alpha. What does it mean by 50% blue pixels in this slide? Where did they come from?
When we composite onto the yellow background, why does the alpha over not pick up the yellow pixels?
My understanding is that after interpolating color and alpha seperately in non-premultiplied alpha, the final step should still be multiplying the interpolated color and alpha. For example, let's say the interpolated color is 0.5 red and the interpolated alpha is 0.5, then the final color will be 0.25 red which is just like blending with 0.75 black that makes fringes. Is that make sense?
I'm also confused with "e.g. 50% blue pixels using 50% alpha, rather than, say, 100% blue pixels with 50% alpha". Could someone please help me further explain this? Thanks very much!
Is the black fringe a result of the black background on the blue circle image? Or is the blending artifact always black when it happens?
How severe can the issue of fringing get? I guess I could barely notice it in the previous slide.
I'm still confused too. Is it due to the black background?
In this slide, you are interpolating between an opaque blue and a transparent black(background).
Without pre multiplication: (0, 0, 1)(blue) with alpha = 1 interpolates (0, 0, 0)(black) with alpha = 0. You get (0, 0, 0.5)(deep blue) with alpha = 0.5. Black fringe occured!
With pre multiplication: (0, 0, 1, 1) interpolates (0, 0, 0, 0), and you get (0, 0, 0.5, 0.5). But (0, 0, 0.5, 0.5) is not (0, 0, 0.5) with alpha = 0.5(what you get above)! Instead, because premultiplied color has the form (ar, ag, ab, a), (0, 0, 0.5, 0.5) is actually (0, 0, 1)(blue) with alpha = 0.5! Therefore, the fringe disappeared!
Thanks for the clarification, @qiqinl
Ok the fringe occurred because both the color and alpha is reduced?
http://amindforeverprogramming.blogspot.com/2013/07/why-alpha-premultiplied-colour-blending.html