From a37f015faa99e4b6da4664a70c835f6259a03c4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Wed, 28 Mar 2012 17:55:26 +0300 Subject: Convert to Unix linefeeds. --- quantize.h | 146 ++++++++++++++++++++++++++++++------------------------------- 1 file changed, 73 insertions(+), 73 deletions(-) (limited to 'quantize.h') diff --git a/quantize.h b/quantize.h index 4dbffbf..e3585b9 100644 --- a/quantize.h +++ b/quantize.h @@ -1,73 +1,73 @@ -// -*- c++ -*- - -#ifndef VDR_GRAPHTFT_QUANTIZE_H -#define VDR_GRAPHTFT_QUANTIZE_H - -#define MAXCOLOR 256 - -class cQuantize -{ -protected: - unsigned int paletteOutput[MAXCOLOR]; - unsigned char imageOutput[1024*1024]; -public: - cQuantize(){}; - virtual ~cQuantize(){}; - virtual int Quantize(unsigned char * input, int size, int colors) = 0; - unsigned int * OutputPalette() { return paletteOutput; } - unsigned char * OutputImage() { return imageOutput; } -}; - -#define RED 2 -#define GREEN 1 -#define BLUE 0 - -//#define NOINVERT // RGB or BGR - -struct box -{ - int r0; - int r1; - int g0; - int g1; - int b0; - int b1; - int vol; -}; - -// Histogram is in elements 1..HISTSIZE along each axis, -// element 0 is for base or marginal value. -// NB: these must start out 0! -#define BOX 33 - -class cQuantizeWu : public cQuantize -{ -private: - long wt[BOX][BOX][BOX]; - long mr[BOX][BOX][BOX]; - long mg[BOX][BOX][BOX]; - long mb[BOX][BOX][BOX]; - float m2[BOX][BOX][BOX]; - - unsigned short * Qadd; - - unsigned char * imageInput; - int imageSize; - int palSize; - - void Hist3d(long *vwt, long *vmr, long *vmg, long *vmb, float *m_2); - void Momt3d(long *vwt, long *vmr, long *vmg, long *vmb, float *m_2); - int Cut(struct box * set1, struct box * set2); - long Vol(struct box * cube, long mmt[BOX][BOX][BOX]); - float Maximize(struct box * cube, unsigned char dir, int first, int last, int * cut, long whole_r, long whole_g, long whole_b, long whole_w); - float Var(struct box * cube); - long Top(struct box * cube, unsigned char dir, int pos, long mmt[BOX][BOX][BOX]); - long Bottom(struct box * cube, unsigned char dir, long mmt[BOX][BOX][BOX]); - void Mark(struct box * cube, int label, unsigned char * tag); -public: - cQuantizeWu(); - virtual ~cQuantizeWu(); - virtual int Quantize(unsigned char * input, int size, int colors); -}; - -#endif // VDR_GRAPHTFT_QUANTIZE_H +// -*- c++ -*- + +#ifndef VDR_GRAPHTFT_QUANTIZE_H +#define VDR_GRAPHTFT_QUANTIZE_H + +#define MAXCOLOR 256 + +class cQuantize +{ +protected: + unsigned int paletteOutput[MAXCOLOR]; + unsigned char imageOutput[1024*1024]; +public: + cQuantize(){}; + virtual ~cQuantize(){}; + virtual int Quantize(unsigned char * input, int size, int colors) = 0; + unsigned int * OutputPalette() { return paletteOutput; } + unsigned char * OutputImage() { return imageOutput; } +}; + +#define RED 2 +#define GREEN 1 +#define BLUE 0 + +//#define NOINVERT // RGB or BGR + +struct box +{ + int r0; + int r1; + int g0; + int g1; + int b0; + int b1; + int vol; +}; + +// Histogram is in elements 1..HISTSIZE along each axis, +// element 0 is for base or marginal value. +// NB: these must start out 0! +#define BOX 33 + +class cQuantizeWu : public cQuantize +{ +private: + long wt[BOX][BOX][BOX]; + long mr[BOX][BOX][BOX]; + long mg[BOX][BOX][BOX]; + long mb[BOX][BOX][BOX]; + float m2[BOX][BOX][BOX]; + + unsigned short * Qadd; + + unsigned char * imageInput; + int imageSize; + int palSize; + + void Hist3d(long *vwt, long *vmr, long *vmg, long *vmb, float *m_2); + void Momt3d(long *vwt, long *vmr, long *vmg, long *vmb, float *m_2); + int Cut(struct box * set1, struct box * set2); + long Vol(struct box * cube, long mmt[BOX][BOX][BOX]); + float Maximize(struct box * cube, unsigned char dir, int first, int last, int * cut, long whole_r, long whole_g, long whole_b, long whole_w); + float Var(struct box * cube); + long Top(struct box * cube, unsigned char dir, int pos, long mmt[BOX][BOX][BOX]); + long Bottom(struct box * cube, unsigned char dir, long mmt[BOX][BOX][BOX]); + void Mark(struct box * cube, int label, unsigned char * tag); +public: + cQuantizeWu(); + virtual ~cQuantizeWu(); + virtual int Quantize(unsigned char * input, int size, int colors); +}; + +#endif // VDR_GRAPHTFT_QUANTIZE_H -- cgit v1.2.3