lmrcImageCommonLine(API)
From EosPedia
DataManip/mrcImage/src/lmrcImageCommonLine is API for Common Line Search. It is ued by mrcImageCommonLineSearch, etc..
Contents
constant
struct
Common Line Mode
It is used as mode for lmrcImageCommonLineInfoOutput.
typedef enum lmrcImageCommonLineMode { lmrcImageCommonLineModeImageCenterIsGC = 1 } lmrcImageCommonLineMode;
Search Mode
Setting data as value of searchMode (lmrcImageCommonLineSearch 's member)
typedef enum lmrcImageCommonLineSearchMode { lmrcImageCommonLineSearchModeFourierSpace = 0, lmrcImageCommonLineSearchModeRealSpace = 1 } lmrcImageCommonLineSearchMode;
Common Line Information
Setting data for lmrcImageCommonLineSearch.
typedef struct lmrcImageCommonLineInfo { /* Input */ double dtheta; lmrcImageCommonLineSearchMode searchMode; /* Output */ double optimumThetaIn; double optimumThetaRef; double optimumCor; } lmrcImageCommonLineInfo;
API
Common Line Search
Output angle of Common Line from 2 image files.
extern void lmrcImageCommonLineSearch(mrcImage* out, mrcImage* in, mrcImage* ref, lmrcImageCommonLineInfo* linfo, int mode);
Input data
mode: In the case of setting lmrcImageCommonLineModeImageCenterIsGC, Move so that origin is center of gravity before correlation.
Select correlation method by linfo->searchMode.
searchMode | Value | Correlation Method |
---|---|---|
lmrcImageCommonLineSearchModeFourierSpace | 0 | Fourier Shell Correlation |
lmrcImageCommonLineSearchModeRealSpace | 1 | Sinogram Correlation |
Output data
Output Correlation Map to out.
In the case of Fourier Shell Correlation(searchMode=0), it stores data at when correlation value is max to linfo 's member.
linfo 's member | Output |
---|---|
optimumThetaIn | in 's Projection Angle |
optimumThetaRef | ref 's Projection Angle |
optimumCor | Correlation value |
Output API Information
Output setting data
extern void lmrcImageCommonLineInfoOutput(FILE* fpt, lmrcImageCommonLineInfo* linfo, int mode);
Output Help message
extern void lmrcImageCommonLineInfoUsage(FILE* fpt);