2004 SPIE/IS&T Symposium on Electronic Imaging An Input-Level Dependent Approach To Color Error Diffusion 1Mr. Vishal Monga, 2Dr. Niranjan Damera-Venkata and 1Prof. Brian L. Evans 1Embedded Signal Processing Laboratory The University of Texas at Austin Austin, TX 78712-1084 USA {bevans,vishal}@ece.utexas.edu 2Hewlett-Packard Laboratories 1501 Page Mill Road Palo Alto, CA 94304 USA damera@exch.hpl.hp.com http://signal.ece.utexas.edu Background Grayscale Error Diffusion Halftoning • 2- D sigma delta modulation [Anastassiou, 1989] – Shape quantization noise into high freq. • Several Enhancements – Variable thresholds, weights and scan paths difference threshold current pixel u(m) x(m) + Error Diffusion b(m) _ _ h(m) 7/16 + 3/16 5/16 1/16 e(m) shape error compute error weights Spectrum 2 Background Direct Binary Search [Analoui, Allebach 1992] - Computationally too expensive for real-time applications e.g. printing - Used in screen design - Practical upper bound for achievable halftone quality 3 Grayscale TDED Tone Dependent Error Diffusion • Train error diffusion weights and threshold modulation Tone dependent threshold modulation x(m) [Li & Allebach, 2002] h x m , Qx m Halftone pattern for graylevel x _ _ Tone dependent error filter Midtone regions DBS pattern for graylevel x + Q x m hx m b(m) + e(m) FFT FFT Highlights and shadows Graylevel patch x FFT h x m , Qx m Halftone pattern for graylevel x FFT HVS 4 Color TDED Input-Level Dependent Color Error Diffusion • Extend TDED to color? – Goal: e.g. for RGB images obtain optimal (in visual quality) error filters with filter weights dependent on input RGB triplet (or 3-tuple) – Applying grayscale TDED independently to the 3 (or 4) color channels ignores the correlation amongst them • Processing: channel-separable or vectorized – Error filters for each color channel (e.g. R, G, B) – Matrix valued error filters [Damera-Venkata, Evans 2001] • Design of error filter key to quality – Take human visual system (HVS) response into account 5 Color TDED Input-Level Dependent Color Error Diffusion • Problem(s): – (256)3 possible input RGB tuples – Criterion for error filter design? • Solution – Design error filters along the diagonal line of the color cube i.e. (R,G,B) = {(0,0,0) ; (1,1,1) …(255,255,255)} – 256 error filters for each of the 3 color planes – Color screens are designed in this manner – Train error filters to minimize the visually weighted squared error between the magnitude spectra of a “constant” RGB image and its halftone pattern 6 Color HVS Model Perceptual Model [Poirson, Wandell 1997] • Separate image into channels/visual pathways – Pixel based transformation of RGB Linearized CIELab – Spatial filtering based on HVS characteristics & color space C1 E C2 C3 Perceptual color space Spatial filtering 7 Color TDED Linearized CIELab Color Space • Linearize CIELab space about D65 white point [Flohr, Kolpatzik, R.Balasubramanian, Carrara, Bouman, Allebach, 1993] Yy = 116 Y/Yn – 116 Cx = 200[X/Xn – Y/Yn] Cz = 500 [Y/Yn – Z/Zn] where f(x) = 7.787x + 16/116 f(x) = x1/3 L = 116 f (Y/Yn) – 116 a* = 200[ f(X/Xn ) – f(Y/Yn ) ] b* = 500 [ f(Y/Yn ) – f(Z/Zn ) ] 0 ≤ x < 0.008856 0.008856 ≤ x ≤ 1 • Color Transformation – sRGB CIEXYZ YyCx Cz – sRGB CIEXYZ obtained from http://white.stanford.edu/~brian/scielab/ 8 Color TDED HVS Filtering • Filter chrominance channels more aggressively – Luminance frequency response [Näsänen and Sullivan, 1984] W(Yy ) ( L ) ~ ~ ( ) K ( L) e L average luminance of display ~ weighted radial spatial frequency – Chrominance frequency response [Kolpatzik and Bouman, 1992] W(Cx ,Cz ) ( ) Ae – Chrominance response allows more low frequency chromatic error not to be perceived vs. luminance response 9 Color TDED Perceptual Error Metric Input RGB Patch FFT Color Transformation sRGB Yy Cx Cz (Linearized CIELab) FFT Halftone Pattern 10 Color TDED Perceptual Error Metric Yy Cx Cz HVS Luminance Frequency Response HVS Chrominance Frequency Response HVS Chrominance Frequency Response Total Squared Error (TSE) • Find error filters that minimize TSE subject to diffusion and non-negativity constraints, m = r, g, b; a (0, 255) h k; a 1 m k h m k; a 0 k S (Floyd-Steinberg) 11 Color TDED Results (a) Original Color Ramp Image (b) Floyd-Steinberg Error Diffusion 12 Color TDED Results … (c) Separable application of grayscale TDED (d) Color TDED 13 Color TDED Results … • Halftone Detail – Blue section of the color ramp Floyd-Steinberg Grayscale TDED Color TDED 14 Original House Image 15 Floyd Steinberg Halftone 16 Color TDED Halftone 17 Color TDED Conclusion & Future Work • Color TDED – – – – Worms and other directional artifacts removed False textures eliminated Visibility of “halftone-pattern” minimized (HVS model) More accurate color rendering (than separable application) • Future Work – Incorporate Color DBS in error filter design to enhance homogenity of halftone textures – Design visually optimum matrix valued filters 18 Back Up Slides Floyd Steinberg Yy component 20 Floyd Steinberg Cx component 21 TDED Yy component 22 TDED Cx component 23 Color TDED HVS Filtering contd… • Role of frequency weighting – weighting by a function of angular spatial frequency [Sullivan, Ray, Miller 1991] v arctan( ) u s ( ) p ~ p s( ) where p = (u2+v2)1/2 and 1 w 1 w cos( 4 ) 2 2 w – symmetry parameter s ( ) reduces contrast sensitivity at odd multiples of 45 degrees equivalent to dumping the luminance error across the diagonals where the eye is least sensitive. 24