「lEvaluateCorrelationMapwithCommonLine(API)」の版間の差分
提供: Eospedia
(→ピークサーチ) |
(→マップファイルの評価) |
||
| (同じ利用者による、間の1版が非表示) | |||
| 行38: | 行38: | ||
== API == | == API == | ||
| + | === マップファイルの評価 === | ||
| + | マップファイルリストinfo.Inからピークサーチを行い、評価を標準出力します。 | ||
extern void lEvaluateCorrelationMapwithCommonLine(lEvaluateCorrelationMapwithCommonLineInfo info, int mode); | extern void lEvaluateCorrelationMapwithCommonLine(lEvaluateCorrelationMapwithCommonLineInfo info, int mode); | ||
<br> | <br> | ||
2015年3月24日 (火) 06:03時点における最新版
DataManip/transform/src/lEvaluateCorrelationMapwithCommonLineはEvaluateCorrelationMapwithCommonLineのためのAPI です。
定数
構造体
typedef struct lEvaluateCorrelationMapwithCommonLineInfo{
FILE* In;
int listLength;
FILE* InC;
FILE* Out;
int PA;
int PN;
double PDT;
int mode;
}lEvaluateCorrelationMapwithCommonLineInfo;
typedef struct lmrcSCMEpeakDetectPixelInfo{
int x;
int y;
double distance;
int rank;
}lmrcSCMEpeakDetectPixelInfo;
typedef struct lmrcSCMEpeakDetectInfo{
int flagOut;
mrcImage* Out;
int flagThreshold;
double Threshold;
int flagCount;
int Count;
lmrcSCMEpeakDetectPixelInfo peak[1000];
lmrcSCMEpeakDetectPixelInfo highestPeak[50];
double MaxI;
int PA;
double PDT;
int mode;
}lmrcSCMEpeakDetectInfo;
API
マップファイルの評価
マップファイルリストinfo.Inからピークサーチを行い、評価を標準出力します。
extern void lEvaluateCorrelationMapwithCommonLine(lEvaluateCorrelationMapwithCommonLineInfo info, int mode);
ピークサーチ
シノグラムFETのマップであるinのピークを最大1000個探し、info->peakのリストのメンバx, y, distanceとして格納します。また、このリストからdistanceの小さい順にrankを設定し、rank<50を満たすデータはさらにinfo->highestPeakのリストへ格納されます。但し、rank付けしたデータに近い(閾値: info->PA)場合はrank=1000とします。
extern void lmrcSCMEpeakDetect(mrcImage* in, lmrcSCMEpeakDetectInfo* info, int mode);
info->flagOutがtrueのとき、隣同士で比較してピークの度合いを評価しinfo->Outへ格納します。この評点が1.0の条件のときのみinfo->peakに格納します。
| 評点 | ピークの度合い |
|---|---|
| 1.0 | 縦横斜めで最小 |
| 0.75 | 縦横で最小 |
| 0.5 | 縦または横で最小 |
| 0.25 | 閾値内: (data / info->MaxI) < info->Threshold |
| 0.0 | 閾値外 |