lmrcImageBinarization(API)

From EosPedia
Jump to: navigation, search

DataManip/mrcImage/src/lmrcImageBinarization is API for Binalization.It is used by mrcImageBinalization.

constant

struct

Setting for lmrcImageBinarization

typedef struct lmrcImageBinarizationInfo {
	double thresHold;	
	double value;	
	int flagNear;
	double near; /* pixel unit */	
	int  nLevel;
	double p;
}lmrcImageBinarizationInfo;

API

Binalization

Main

extern void    lmrcImageBinarization(mrcImage* out, mrcImage* in, lmrcImageBinarizationInfo linfo, int mode);

If higher bit in 1 byte(&0xf0) is 1 or more, perform special process before usual binalization process.

mode used function
0x00 no process
0x10 lmrcImageDeterminationOfThresholdForBinarizationByKittlerMethod
0x20 lmrcImageDeterminationOfThresholdForBinarizationByOhtsuMethod
0x30 lmrcImageDeterminationOfThresholdForBinarizationByptileMethod
0x40 lmrcImageDeterminationOfThresholdForBinarizationByDifferentialHistogramMethod
0x50 lmrcImageDeterminationOfThresholdForBinarizationByLaplacianHistogramMethod


Usual process

extern void    lmrcImageBinarization0(mrcImage* out, mrcImage* in, lmrcImageBinarizationInfo linfo, int mode);

Special process

Kittler Method

extern double  lmrcImageDeterminationOfThresholdForBinarizationByKittlerMethod(mrcImage* mrc, int L, int mode);

Ohtsu Method

extern double  lmrcImageDeterminationOfThresholdForBinarizationByOhtsuMethod(mrcImage* mrc, int L, int mode);

p-tile Method

extern double  lmrcImageDeterminationOfThresholdForBinarizationByptileMethod(mrcImage* mrc, int L, double p, int mode);

Differential-Histogram Method

extern double  lmrcImageDeterminationOfThresholdForBinarizationByDifferentialHistogramMethod(mrcImage* mrc, int L, int mode);

Laplacian-Histogram Method

extern double  lmrcImageDeterminationOfThresholdForBinarizationByLaplacianHistogramMethod(mrcImage* mrc, int L, int mode);

Calculating threshold by Ohtsu Method

extern double  determinationThresholdFromGraylevelHistogramByOhtsuMethod(int* tile, int L);

Help

extern void    lmrcImageBinarizationUsage(FILE* fpt);