「lmrcImageCommonLine(API)」の版間の差分
提供: Eospedia
(ページの作成:「DataManip/mrcImage/src/'''lmrcImageCommonLine'''はコモンライン探索のためのAPI です。 == 定数 == == 構造体 == ===コモンラインのモード=...」) |
|||
| (同じ利用者による、間の5版が非表示) | |||
| 行1: | 行1: | ||
| − | DataManip/mrcImage/src/'''lmrcImageCommonLine'''は[[コモンライン探索]]のためのAPI です。 | + | DataManip/mrcImage/src/'''lmrcImageCommonLine'''は[[コモンライン探索]]のためのAPI です。[[mrcImageCommonLineSearch]]などで使用しています。 |
== 定数 == | == 定数 == | ||
| 行5: | 行5: | ||
== 構造体 == | == 構造体 == | ||
===コモンラインのモード=== | ===コモンラインのモード=== | ||
| + | lmrcImageCommonLineInfoOutputのモードとして使用します。 | ||
typedef enum lmrcImageCommonLineMode { | typedef enum lmrcImageCommonLineMode { | ||
lmrcImageCommonLineModeImageCenterIsGC = 1 | lmrcImageCommonLineModeImageCenterIsGC = 1 | ||
| 行10: | 行11: | ||
===探索モード=== | ===探索モード=== | ||
| + | lmrcImageCommonLineSearchのメンバーsearchModeの値として使用します。 | ||
typedef enum lmrcImageCommonLineSearchMode { | typedef enum lmrcImageCommonLineSearchMode { | ||
lmrcImageCommonLineSearchModeFourierSpace = 0, | lmrcImageCommonLineSearchModeFourierSpace = 0, | ||
| 行16: | 行18: | ||
===コモンライン情報=== | ===コモンライン情報=== | ||
| + | lmrcImageCommonLineSearchの設定データとして使用します。 | ||
typedef struct lmrcImageCommonLineInfo { | typedef struct lmrcImageCommonLineInfo { | ||
/* Input */ | /* Input */ | ||
| 行25: | 行28: | ||
double optimumCor; | double optimumCor; | ||
} lmrcImageCommonLineInfo; | } lmrcImageCommonLineInfo; | ||
| + | <br> | ||
== API == | == API == | ||
| + | ===コモンライン探索=== | ||
| + | 2つの画像ファイルからコモンラインの角度を出力します。 | ||
extern void lmrcImageCommonLineSearch(mrcImage* out, mrcImage* in, mrcImage* ref, lmrcImageCommonLineInfo* linfo, int mode); | extern void lmrcImageCommonLineSearch(mrcImage* out, mrcImage* in, mrcImage* ref, lmrcImageCommonLineInfo* linfo, int mode); | ||
| + | <br> | ||
| + | |||
| + | ====入力データ==== | ||
| + | mode: lmrcImageCommonLineModeImageCenterIsGCに設定すると、画像の重心を原点に移動してから相関を行います。<br> | ||
| + | |||
| + | linfo->searchMode: により相関方法を選択できます。 | ||
| + | |||
| + | <table border="1"> | ||
| + | <tr> | ||
| + | <th>searchMode</th> | ||
| + | <th>値</th> | ||
| + | <th>相関方法</th> | ||
| + | </tr> | ||
| + | <tr> | ||
| + | <td>lmrcImageCommonLineSearchModeFourierSpace</td> | ||
| + | <td>0</td> | ||
| + | <td>フーリエシェル相関</td> | ||
| + | </tr> | ||
| + | <tr> | ||
| + | <td>lmrcImageCommonLineSearchModeRealSpace</td> | ||
| + | <td>1</td> | ||
| + | <td>シノグラム相関</td> | ||
| + | </tr> | ||
| + | </table> | ||
| + | <br> | ||
| + | |||
| + | ====出力データ==== | ||
| + | 相関マップがoutへ出力されます。<br> | ||
| + | フーリエシェル相関(searchMode=0)の場合はlinfoのメンバーに相関値が最大のときのデータを格納します。 | ||
| + | <table border="1"> | ||
| + | <tr> | ||
| + | <th>linfoのメンバー</th> | ||
| + | <th>出力内容</th> | ||
| + | </tr> | ||
| + | <tr> | ||
| + | <td>optimumThetaIn</td> | ||
| + | <td>inの投影角</td> | ||
| + | </tr> | ||
| + | |||
| + | <tr> | ||
| + | <td>optimumThetaRef</td> | ||
| + | <td>refの投影角</td> | ||
| + | </tr> | ||
| + | |||
| + | <tr> | ||
| + | <td>optimumCor</td> | ||
| + | <td>相関値</td> | ||
| + | </tr> | ||
| + | </table> | ||
| + | <br> | ||
| + | |||
| + | ===API情報の出力=== | ||
| + | ===設定データの出力=== | ||
extern void lmrcImageCommonLineInfoOutput(FILE* fpt, lmrcImageCommonLineInfo* linfo, int mode); | extern void lmrcImageCommonLineInfoOutput(FILE* fpt, lmrcImageCommonLineInfo* linfo, int mode); | ||
| + | ===ヘルプメッセージの出力=== | ||
extern void lmrcImageCommonLineInfoUsage(FILE* fpt); | extern void lmrcImageCommonLineInfoUsage(FILE* fpt); | ||
2014年5月23日 (金) 00:24時点における最新版
DataManip/mrcImage/src/lmrcImageCommonLineはコモンライン探索のためのAPI です。mrcImageCommonLineSearchなどで使用しています。
目次
定数
構造体
コモンラインのモード
lmrcImageCommonLineInfoOutputのモードとして使用します。
typedef enum lmrcImageCommonLineMode {
lmrcImageCommonLineModeImageCenterIsGC = 1
} lmrcImageCommonLineMode;
探索モード
lmrcImageCommonLineSearchのメンバーsearchModeの値として使用します。
typedef enum lmrcImageCommonLineSearchMode {
lmrcImageCommonLineSearchModeFourierSpace = 0,
lmrcImageCommonLineSearchModeRealSpace = 1
} lmrcImageCommonLineSearchMode;
コモンライン情報
lmrcImageCommonLineSearchの設定データとして使用します。
typedef struct lmrcImageCommonLineInfo {
/* Input */
double dtheta;
lmrcImageCommonLineSearchMode searchMode;
/* Output */
double optimumThetaIn;
double optimumThetaRef;
double optimumCor;
} lmrcImageCommonLineInfo;
API
コモンライン探索
2つの画像ファイルからコモンラインの角度を出力します。
extern void lmrcImageCommonLineSearch(mrcImage* out, mrcImage* in, mrcImage* ref, lmrcImageCommonLineInfo* linfo, int mode);
入力データ
mode: lmrcImageCommonLineModeImageCenterIsGCに設定すると、画像の重心を原点に移動してから相関を行います。
linfo->searchMode: により相関方法を選択できます。
| searchMode | 値 | 相関方法 |
|---|---|---|
| lmrcImageCommonLineSearchModeFourierSpace | 0 | フーリエシェル相関 |
| lmrcImageCommonLineSearchModeRealSpace | 1 | シノグラム相関 |
出力データ
相関マップがoutへ出力されます。
フーリエシェル相関(searchMode=0)の場合はlinfoのメンバーに相関値が最大のときのデータを格納します。
| linfoのメンバー | 出力内容 |
|---|---|
| optimumThetaIn | inの投影角 |
| optimumThetaRef | refの投影角 |
| optimumCor | 相関値 |
API情報の出力
設定データの出力
extern void lmrcImageCommonLineInfoOutput(FILE* fpt, lmrcImageCommonLineInfo* linfo, int mode);
ヘルプメッセージの出力
extern void lmrcImageCommonLineInfoUsage(FILE* fpt);