This package contains Matlab programs for computing
fidelity metrics using the YCxCz color coordinate system.

This is a preliminary version, SO IT MAY HAVE BUGES!!!!!!!!!!!!!!!!!

Linearized Lab Fidelity Metric:
  This fidelity metric is described in the following three papers:
    T. J. Flohr, B. W. Kolpatzik, R. Balasubramanian, D. A. Carrara, C. A. 
    Bouman, and J. P. Allebach, ``Model Based Color Image Quantization,'' 
    {\em Proc. of SPIE/IS\&T Conf. on Human Vision, Visual Processing, and 
    Digital Display}, vol. 1993, pp. 270-281, San Jose, CA, January 31-Feb. 
    4, 1993.
  and
    B. Kolpatzik and C. Bouman, ``Optimized Error Diffusion for Image Display,''
    {\em Journal of Electronic Imaging}, vol. 1, no. 3, pp. 277-292, July 1992.
  and
    Vishal Monga, Wilson S. Geisler, III, and Brian L. Evans, ``Linear Color-
    Separable Human Visual System Models for Vector Error Diffusion 
    Halftoning,'' {\em IEEE Signal Processing Letters}, vol. 10, no. 4, 
    April 2003.

The YCxCzLab Fidelity Metric:
  This fidelity metric is described in the following paper:
    B. Kolpatzik and C. Bouman, ``Optimal Universal Color Palette Design 
    for Error Diffusion,'' {\em Journal of Electronic Imaging}, vol. 4, 
    no. 2, pp. 131-143, April 1995.

"matlab-src"
  This subdirectory contains Matlab source code that implements
  the two fidelity metrics. All input is assumed to be in sRGB 
  coordinates.

"matlab-src/RUN.m"
  Matlab program that runs and example using both of the fidelity meterics.

"matlab-src/LinLabMetric.m"
  This matlab program computes the Linearized Lab fidelity metric.
  The Linearized Lab fidelity metric is well suited for halftoning since
  it allows the use of quadratic optimization methods, and it has been
  directly used for DBS or least squares halftoning.

"matlab-src/YCxCzLabMetric.m"
  This matlab program computes the YCxCzLab fidelity metric.
  The YCxCzLab fidelity metric is an adaptation of the Lab coordinate system
  that accounts for the spatial contrast sensitivity function i.e. modulation
  transfer function. However, it is a nonlinear transformation, so it is not
  so well suited for direct incorporation in halftoning algorithms, 
  but it is well suited for the evaluation of halftone image quality.
  The original paper contained an error in which the order of two coefficients
  where swapped*, but this code properly implements the correction.


*Thanks to Stephen Hardy of Cannon for identifying this error.

