Re: MMX speedup for Floyd Steinberg error diffusion
- From: Terje Mathisen <spamtrap@xxxxxxxxxx>
- Date: Fri, 09 May 2008 21:03:09 +0200
Phil Carmody wrote:
It doesn't "mess up the distance calculations" at all, it
simply selects a different metric, namely the L_1 metric
rather than the L_2 metric. However, both are "wrong" in
the strict sense, as a metric which models human vision with
any attempt at fidelity would weight the three different chroma components differently, giving more weight to the green component, and less to the red component. (Or even take place in a different colour-space entirely.) The
Phil, you're absolutely right, and that's why "doing it right" is even harder than you're showing here:
The color space should probably be gamma-adjusted, and the error terms should be calculated in a linear space, otherwise the error diffusion terms won't add up properly.
OTOH, at the time we start to worry about stuff like this, 8-bit GIF images with palettized colors shouldn't be considered for the job, right? :-)
Terje
PS. I have designed/written a parallel SSE algorithm which handles DX10-compliant gamma scaling (which follows a modified log curve), with the required ~10 fractional bits of accuracy.
--
- <Terje.Mathisen@xxxxxxxxxxxxx>
"almost all programming can be viewed as an exercise in caching"
.
- Follow-Ups:
- Re: MMX speedup for Floyd Steinberg error diffusion
- From: rep_movsd
- Re: MMX speedup for Floyd Steinberg error diffusion
- References:
- MMX speedup for Floyd Steinberg error diffusion
- From: rep_movsd
- Re: MMX speedup for Floyd Steinberg error diffusion
- From: Maarten Kronenburg
- Re: MMX speedup for Floyd Steinberg error diffusion
- From: Maarten Kronenburg
- Re: MMX speedup for Floyd Steinberg error diffusion
- From: rep_movsd
- Re: MMX speedup for Floyd Steinberg error diffusion
- From: Terje Mathisen
- Re: MMX speedup for Floyd Steinberg error diffusion
- From: rep_movsd
- Re: MMX speedup for Floyd Steinberg error diffusion
- From: Terje Mathisen
- Re: MMX speedup for Floyd Steinberg error diffusion
- From: Phil Carmody
- MMX speedup for Floyd Steinberg error diffusion
- Prev by Date: Re: MMX speedup for Floyd Steinberg error diffusion
- Next by Date: Re: MMX speedup for Floyd Steinberg error diffusion
- Previous by thread: Re: MMX speedup for Floyd Steinberg error diffusion
- Next by thread: Re: MMX speedup for Floyd Steinberg error diffusion
- Index(es):