Squantize - Methods to Reduce the Number of Unique Colors in an Image9/


NAME



Dquantize - Methods to Reduce the Number of Unique Colors in an Image




(

SYNOPSIS



dQuantizeInfo * CloneQuantizeInfo( const QuantizeInfo *quantize_info );

MGetQuantizeInfo( QuantizeInfo *quantize_info );

eunsigned int MapImage( Image *image, Image *map_image, const unsigned int dither );

gunsigned int MapImages( Image *images, Image *map_image, const unsigned int dither );

Nunsigned int QuantizationError( Image *image );

munsigned int QuantizeImage( const QuantizeInfo *quantize_info, Image *image );

ounsigned int QuantizeImages( const QuantizeInfo *quantize_info, Image *images );




B

FUNCTION DESCRIPTIONS






:

CloneQuantizeInfo



^Method CloneQuantizeInfo makes a duplicate of the given quantize info, or if quantize info is %NULL, a new one.

.The format of the CloneQuantizeInfo method is:`

QuantizeInfo *CloneQuantizeInfo ( const QuantizeInfo *quantize_info );


=A description of each parameter follows:

=

cloned_info:


]Method CloneQuantizeInfo returns a duplicate of the given quantize info, or if image info is $NULL a new one.*

quantize_info:


a structure of type info.






6

GetQuantizeInfo



>Method GetQuantizeInfo initializes the QuantizeInfo structure.

,The format of the GetQuantizeInfo method is:J

GetQuantizeInfo ( QuantizeInfo *quantize_info );


=A description of each parameter follows:

*

quantize_info:


0Specifies a pointer to a QuantizeInfo structure.






(

MapImage



FMapImage replaces the colors of an image with the closest color from areference image.

%The format of the MapImage method is:¬

unsigned int MapImage ( Image *image, Image *map_image, const unsigned int dither );


=A description of each parameter follows:

"

image:


*Specifies a pointer to an Image structure.&

map_image:


ISpecifies a pointer to a Image structure. Reduce image to a set of colorsrepresented by this image.#

dither:


KSet this integer value to something other than zero to dither the quantizedimage.






*

MapImages



FMapImages replaces the colors of a sequence of images with the closestcolor from a reference image.

%The format of the MapImage method is:®

unsigned int MapImages ( Image *images, Image *map_image, const unsigned int dither );


=A description of each parameter follows:

"

image:


1Specifies a pointer to a set of Image structures.&

map_image:


ISpecifies a pointer to a Image structure. Reduce image to a set of colorsrepresented by this image.#

dither:


KSet this integer value to something other than zero to dither the quantizedimage.






:

QuantizationError



âMethod QuantizationError measures the difference between the original and quantized images. This difference is the total quantization error. The error is computed by summing over all pixels in an image the distance squared in uRGB space between each reference pixel value and its quantized value. These values are computed:

1

mean_error_per_pixel:


?This value is the mean error for any single pixel in the image.9

normalized_mean_square_error:


IThis value is the normalized mean quantization error for any single pixelJin the image. This distance measure is normalized to a range between 0 andG1. It is independent of the range of red, green, and blue values in theimage.<

normalized_maximum_square_error:


FThsi value is the normalized maximum quantization error for any singleJpixel in the image. This distance measure is normalized to a range betweenI0 and 1. It is independent of the range of red, green, and blue values in your image.



.The format of the QuantizationError method is:i

unsigned int QuantizationError ( Image *image );


=A description of each parameter follows.

"

image:


HThe address of a byte (8 bits) array of run-length encoded pixel data ofGyour reference image. The sum of the run-length counts in the reference6image must be equal to or exceed the number of pixels.






2

QuantizeImage



EMethod QuantizeImage analyzes the colors within a reference image andHchooses a fixed number of colors to represent the image. The goal of theJalgorithm is to minimize the difference between the input and output image%while minimizing the processing time.

*The format of the QuantizeImage method is:ˆ

unsigned int QuantizeImage ( const QuantizeInfo *quantize_info, Image *image );


=A description of each parameter follows:

*

quantize_info:


1Specifies a pointer to an QuantizeInfo structure."

image:


)Specifies a pointer to a Image structure.






4

QuantizeImages



GQuantizeImages analyzes the colors within a set of reference images andFchooses a fixed number of colors to represent the set. The goal of theKalgorithm is to minimize the difference between the input and output images%while minimizing the processing time.

+The format of the QuantizeImages method is:Š

unsigned int QuantizeImages ( const QuantizeInfo *quantize_info, Image *images );


=A description of each parameter follows:

*

quantize_info:


1Specifies a pointer to an QuantizeInfo structure.#

images:


2Specifies a pointer to a list of Image structures.