lmrcImageDensityNormalizationByImage(API)

From EosPedia
Jump to: navigation, search

DataManip/mrcImage/src/lmrcImageDensityNormalizationByImage is API for mrcImageDensityNormalizationByImage. It normalizes to mrcImage.

constant

For mode of mrcImageDensityNormalizationByImage

typedef enum lmrcImageDensityNormalizationByImageMode {
  lmrcImageDensityNormalizationByImageModeSigma   = 1,
  lmrcImageDensityNormalizationByImageModeStdout  = 2,
  lmrcImageDensityNormalizationByImageModeReverse = 4,
  lmrcImageDensityNormalizationByImageModeRobust  = 8
} lmrcImageDensityNormalizationByImageMode; 

For fitMode (member of lmrcImageDenstiyNormalizationByImageInfo)

typedef enum lmrcImageDensityNormalizationByImageFitMode {
  lmrcImageDensityNormalizationByImageFitModeSingleLine = 0,
  lmrcImageDensityNormalizationByImageFitModeSingleLineWithBackground = 1 
} lmrcImageDensityNormalizationByImageFitMode;

struct

typedef struct lmrcImageDenstiyNormalizationByImageInfo {
  /* Input */
  double sigma;

  /* Region Information */
  int flagCylinder;	
  float centerx, centery;
  float minr, maxr;
  /* Fitting Mode */
  int fitMode;
  float tstBGMin;
  float tstBGMax;
  float tstBGDelta;

  /* Output */
  float a;
  float b;
  float sigma_a;
  float sigma_b;
  float chi2;
  float q;
  float r;

  float refBG;
  float tstBG;
  float	chi2Signal;
  float chi2BG;
  int nData;
  float* testData;
  float* refData; 
} lmrcImageDensityNormalizationByImageInfo;

API

Normalize

extern void lmrcImageDenstiyNormalizationByImage(mrcImage* out, mrcImage* in2, mrcImage* in1, 
			lmrcImageDensityNormalizationByImageInfo* info,
			lmrcImageDensityNormalizationByImageMode  mode);

Fitting Method

extern void lmrcImageDensityFittingForNormalization(mrcImage* out, mrcImage* in2, mrcImage* in1, 
			lmrcImageDensityNormalizationByImageInfo* info,
			lmrcImageDensityNormalizationByImageMode  mode);

Use info->fitMode as mode setting.

Output API Information

Output mode

extern void lmrcImageDensityNormalizationByImageModePrint(FILE* fpt);

Output Setting data

extern void lmrcImageDensityNormalizationByImageInfoPrint(FILE* fpt, lmrcImageDensityNormalizationByImageInfo info);