NAME

project_matrix - Projects RGB data into a 2-D space

SYNOPSIS

#include "c/c_projection.h"

Example compile flags (system dependent):
  -DLINUX_X86_64 -DLINUX_X86_64_OPTERON  -DGNU_COMPILER 
   -I/home/kobus/include
   -L/home/kobus/misc/load/linux_x86_64_opteron -L/usr/lib/x86_64-linux-gnu
  -lKJB                               -lfftw3  -lgsl -lgslcblas -ljpeg  -lSVM -lstdc++                    -lpthread -lSLATEC -lg2c    -lacml -lacml_mv -lblas -lg2c      -lncursesw 


int project_matrix
(
	Matrix **output_mpp,
	const Matrix *input_mp,
	Projection_method projection_method
);

PARAMETERS

Matrix **output_mpp
Output chromaticity matrix.
const Matrix *input_mp
Input RGB matrix.
Projection_method projection_method
Type of chromaticity.

Possible values for a

Projection_method
are as follows: The first four are set based on backwards compatability. Hopefully all the dependencies on the specific values have been purged, but by using the same numeric values as before, things won't break regardless.

DESCRIPTION

This routine projects RGB data into a 2-D space, normally a chromaticity space specified by the argument "projection_method". "projection method" should be one of DIVIDE_BY_RED, DIVIDE_BY_GREEN, DIVIDE_BY_BLUE, DIVIDE_BY_SUM, ONTO_RG_PLANE, ONTO_GB_PLANE, or ONTO_RB_PLANE. This projection routine is a simpler interface to similar functionality as provided by get_projection_matrix(). If more options are required, then that routine should be used instead. Note, however, that the result of the two routines can differ when the data is small or negative.

RETURNS

NO_ERROR on success and ERROR on failure. The usuall reason for failure is that a projection denominator is less than DBL_EPSILON.

WARNING

I am still working on this library. Be prepared for change!

DISCLAIMER

This software is not adequatedly tested. It is recomended that results are checked independantly where appropriate.

AUTHOR

Kobus Barnard

DOCUMENTER

Kobus Barnard, Lindsay Martin

SEE ALSO

get_projection_matrix , get_divide_by_sum_projection_matrix , divide_by_sum_project_matrix , project_matrix_onto_unit_sphere , get_projection_vector , project_vector , back_project_matrix , back_project_vector