「lmrcImageDensity(API)」の版間の差分
提供: Eospedia
(同じ利用者による、間の3版が非表示) | |||
行1: | 行1: | ||
− | DataManip/mrcImage/src/'''lmrcImageDensity'''は[[mrcImage]] | + | DataManip/mrcImage/src/'''lmrcImageDensity'''は[[mrcImage]]に関する統計データ(体積の割合、重心、最大値、標準偏差など)を算出するためのAPI です。[[mrcImageDensityInfo]]、[[mrcImageDensityChangeEstimation]]などで使用しています。 |
== 定数 == | == 定数 == | ||
− | + | lmrcImageDensityInfoのモードとして使用します。 | |
typedef enum lmrcImageDensityInfoMode { | typedef enum lmrcImageDensityInfoMode { | ||
mrcImageDensityInfoPercentageVolume =1, | mrcImageDensityInfoPercentageVolume =1, | ||
行10: | 行10: | ||
mrcImageDensityInfoMaxSD =16 | mrcImageDensityInfoMaxSD =16 | ||
} lmrcImageDensityInfoMode; | } lmrcImageDensityInfoMode; | ||
+ | |||
+ | lmrcImageDensityChangeEstimationのモードとして使用します。 | ||
+ | typedef enum lmrcImageDensityChangeEstimationMode { | ||
+ | mrcImageDensityChangeEstimationCentreOfGravity =2, | ||
+ | mrcImageDensityChangeEstimationMax =4, | ||
+ | mrcImageDensityChangeEstimationCentreOfGravitySD =8, | ||
+ | mrcImageDensityChangeEstimationMaxSD =16 | ||
+ | } lmrcImageDensityChageEstimationMode; | ||
== 構造体 == | == 構造体 == | ||
+ | lmrcImageDensityInfoの設定データとして使用します。 | ||
typedef struct lmrcImageDensityInfoInfo { | typedef struct lmrcImageDensityInfoInfo { | ||
floatVector percentageVolume; | floatVector percentageVolume; | ||
行21: | 行30: | ||
mrcImage in; | mrcImage in; | ||
} lmrcImageDensityInfoInfo; | } lmrcImageDensityInfoInfo; | ||
+ | |||
+ | lmrcImageDensityChangeEstimationの設定データとして使用します。 | ||
+ | typedef struct lmrcImageDensityChangeEsitmationInfo { | ||
+ | lmrcImageDensityChangeEstimationInfo0 CG; | ||
+ | lmrcImageDensityChangeEstimationInfo0 Max; | ||
+ | mrcImage in1; | ||
+ | mrcImage in2; | ||
+ | } lmrcImageDensityChangeEstimationInfo; | ||
typedef struct lmrcImageDensityChangeEsitmationInfo0 { | typedef struct lmrcImageDensityChangeEsitmationInfo0 { | ||
行30: | 行47: | ||
double deltaXYSD; | double deltaXYSD; | ||
} lmrcImageDensityChangeEstimationInfo0; | } lmrcImageDensityChangeEstimationInfo0; | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== API == | == API == | ||
+ | ====mrcImageDensityInfo==== | ||
+ | =====統計データの出力===== | ||
extern void lmrcImageDensityInfoModePrint(FILE* fpt); | extern void lmrcImageDensityInfoModePrint(FILE* fpt); | ||
+ | extern void lmrcImageDensityInfoWrite(FILE* fpt, lmrcImageDensityInfoInfo* linfo, long mode); | ||
− | ===統計データの算出=== | + | =====統計データの算出===== |
extern void lmrcImageDensityInfo(lmrcImageDensityInfoInfo* linfo, mrcImage* in, long mode); | extern void lmrcImageDensityInfo(lmrcImageDensityInfoInfo* linfo, mrcImage* in, long mode); | ||
− | |||
modeによって算出する統計データを選択できます。(複数選択可) | modeによって算出する統計データを選択できます。(複数選択可) | ||
<table border="1"> | <table border="1"> | ||
行61: | 行66: | ||
<td>+1</td> | <td>+1</td> | ||
<td>lmrcImageDensityInfoPercentageVolume</td> | <td>lmrcImageDensityInfoPercentageVolume</td> | ||
− | <td></td> | + | <td>体積比率(百分率)</td> |
</tr> | </tr> | ||
<tr> | <tr> | ||
<td>+2</td> | <td>+2</td> | ||
− | <td></td> | + | <td>lmrcImageDensityInfoCentreOfGravity</td> |
− | <td></td> | + | <td>重心</td> |
</tr> | </tr> | ||
<tr> | <tr> | ||
<td>+4</td> | <td>+4</td> | ||
− | <td></td> | + | <td>lmrcImageDensityInfoMax</td> |
− | <td></td> | + | <td>最大値</td> |
</tr> | </tr> | ||
<tr> | <tr> | ||
<td>+8</td> | <td>+8</td> | ||
− | <td></td> | + | <td>lmrcImageDensityInfoCentreOfGravity</td> |
− | <td></td> | + | <td>重心の周りの標準偏差(重心も算出されます)</td> |
</tr> | </tr> | ||
<tr> | <tr> | ||
<td>+16</td> | <td>+16</td> | ||
− | <td></td> | + | <td>lmrcImageDensityInfoSD</td> |
− | <td></td> | + | <td>最大値の周りの標準偏差(最大値も算出されます)</td> |
</tr> | </tr> | ||
</table> | </table> | ||
<br> | <br> | ||
− | |||
− | |||
extern floatVector lmrcImageDensityInfoPercentageVolume(mrcImage* in, double delta, long mode); | extern floatVector lmrcImageDensityInfoPercentageVolume(mrcImage* in, double delta, long mode); | ||
行93: | 行96: | ||
extern mrcImageParaTypeRealCoord lmrcImageDensityInfoSD(mrcImage* in, mrcImageParaTypeRealCoord centre, long mode); | extern mrcImageParaTypeRealCoord lmrcImageDensityInfoSD(mrcImage* in, mrcImageParaTypeRealCoord centre, long mode); | ||
+ | ====mrcImageDensityChangeEstimation==== | ||
+ | =====統計データの出力===== | ||
extern void lmrcImageDensityChangeEstimationModePrint(FILE* fpt); | extern void lmrcImageDensityChangeEstimationModePrint(FILE* fpt); | ||
− | |||
extern void lmrcImageDensityChangeEstimationWrite(FILE*fpt, lmrcImageDensityChangeEstimationInfo* linfo, long mode); | extern void lmrcImageDensityChangeEstimationWrite(FILE*fpt, lmrcImageDensityChangeEstimationInfo* linfo, long mode); | ||
+ | |||
+ | =====統計データの算出===== | ||
+ | extern void lmrcImageDensityChangeEstimation(lmrcImageDensityChangeEstimationInfo* linfo, mrcImage* in1, mrcImage* in2, long mode); | ||
+ | modeによって算出する統計データを選択できます。(複数選択可) | ||
+ | <table border="1"> | ||
+ | <tr> | ||
+ | <th>モード</th> | ||
+ | <th>関数名</th> | ||
+ | <th>説明</th> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>+2</td> | ||
+ | <td>lmrcImageDensityInfoCentreOfGravity</td> | ||
+ | <td>重心</td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>+4</td> | ||
+ | <td>lmrcImageDensityInfoMax</td> | ||
+ | <td>最大値</td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>+8</td> | ||
+ | <td>lmrcImageDensityInfoCentreOfGravity</td> | ||
+ | <td>重心の周りの標準偏差(重心も算出されます)</td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>+16</td> | ||
+ | <td>lmrcImageDensityInfoSD</td> | ||
+ | <td>最大値の周りの標準偏差(最大値も算出されます)</td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | <br> | ||
+ | |||
extern void lmrcImageDensityChangeEstimationCentreOfGravity(lmrcImageDensityChangeEstimationInfo0* linfo, mrcImage* in, mrcImage* in2, long mode); | extern void lmrcImageDensityChangeEstimationCentreOfGravity(lmrcImageDensityChangeEstimationInfo0* linfo, mrcImage* in, mrcImage* in2, long mode); | ||
extern void lmrcImageDensityChangeEstimationMax(lmrcImageDensityChangeEstimationInfo0* linfo, mrcImage* in, mrcImage* in2, long mode); | extern void lmrcImageDensityChangeEstimationMax(lmrcImageDensityChangeEstimationInfo0* linfo, mrcImage* in, mrcImage* in2, long mode); | ||
− | |||
extern void lmrcImageDensityChangeEstimationSD(lmrcImageDensityChangeEstimationInfo0* linfo, | extern void lmrcImageDensityChangeEstimationSD(lmrcImageDensityChangeEstimationInfo0* linfo, | ||
mrcImage* in1, mrcImage* in2, long mode); | mrcImage* in1, mrcImage* in2, long mode); |
2014年5月16日 (金) 05:17時点における最新版
DataManip/mrcImage/src/lmrcImageDensityはmrcImageに関する統計データ(体積の割合、重心、最大値、標準偏差など)を算出するためのAPI です。mrcImageDensityInfo、mrcImageDensityChangeEstimationなどで使用しています。
目次
定数
lmrcImageDensityInfoのモードとして使用します。
typedef enum lmrcImageDensityInfoMode { mrcImageDensityInfoPercentageVolume =1, mrcImageDensityInfoCentreOfGravity =2, mrcImageDensityInfoMax =4, mrcImageDensityInfoCentreOfGravitySD =8, mrcImageDensityInfoMaxSD =16 } lmrcImageDensityInfoMode;
lmrcImageDensityChangeEstimationのモードとして使用します。
typedef enum lmrcImageDensityChangeEstimationMode { mrcImageDensityChangeEstimationCentreOfGravity =2, mrcImageDensityChangeEstimationMax =4, mrcImageDensityChangeEstimationCentreOfGravitySD =8, mrcImageDensityChangeEstimationMaxSD =16 } lmrcImageDensityChageEstimationMode;
構造体
lmrcImageDensityInfoの設定データとして使用します。
typedef struct lmrcImageDensityInfoInfo { floatVector percentageVolume; mrcImageParaTypeRealCoord centreOfGravity; mrcImageParaTypeRealCoord centreOfGravitySD; mrcImageParaTypeRealCoord max; mrcImageParaTypeRealCoord maxSD; double deltaVolume; mrcImage in; } lmrcImageDensityInfoInfo;
lmrcImageDensityChangeEstimationの設定データとして使用します。
typedef struct lmrcImageDensityChangeEsitmationInfo { lmrcImageDensityChangeEstimationInfo0 CG; lmrcImageDensityChangeEstimationInfo0 Max; mrcImage in1; mrcImage in2; } lmrcImageDensityChangeEstimationInfo;
typedef struct lmrcImageDensityChangeEsitmationInfo0 { mrcImageParaTypeRealCoord change; mrcImageParaTypeRealCoord changeSD; double delta; double deltaSD; double deltaXY; double deltaXYSD; } lmrcImageDensityChangeEstimationInfo0;
API
mrcImageDensityInfo
統計データの出力
extern void lmrcImageDensityInfoModePrint(FILE* fpt); extern void lmrcImageDensityInfoWrite(FILE* fpt, lmrcImageDensityInfoInfo* linfo, long mode);
統計データの算出
extern void lmrcImageDensityInfo(lmrcImageDensityInfoInfo* linfo, mrcImage* in, long mode);
modeによって算出する統計データを選択できます。(複数選択可)
モード | 関数名 | 説明 |
---|---|---|
+1 | lmrcImageDensityInfoPercentageVolume | 体積比率(百分率) |
+2 | lmrcImageDensityInfoCentreOfGravity | 重心 |
+4 | lmrcImageDensityInfoMax | 最大値 |
+8 | lmrcImageDensityInfoCentreOfGravity | 重心の周りの標準偏差(重心も算出されます) |
+16 | lmrcImageDensityInfoSD | 最大値の周りの標準偏差(最大値も算出されます) |
extern floatVector lmrcImageDensityInfoPercentageVolume(mrcImage* in, double delta, long mode); extern mrcImageParaTypeRealCoord lmrcImageDensityInfoCentreOfGravity(mrcImage* in, long mode); extern mrcImageParaTypeRealCoord lmrcImageDensityInfoMax(mrcImage* in, long mode); extern mrcImageParaTypeRealCoord lmrcImageDensityInfoSD(mrcImage* in, mrcImageParaTypeRealCoord centre, long mode);
mrcImageDensityChangeEstimation
統計データの出力
extern void lmrcImageDensityChangeEstimationModePrint(FILE* fpt); extern void lmrcImageDensityChangeEstimationWrite(FILE*fpt, lmrcImageDensityChangeEstimationInfo* linfo, long mode);
統計データの算出
extern void lmrcImageDensityChangeEstimation(lmrcImageDensityChangeEstimationInfo* linfo, mrcImage* in1, mrcImage* in2, long mode);
modeによって算出する統計データを選択できます。(複数選択可)
モード | 関数名 | 説明 |
---|---|---|
+2 | lmrcImageDensityInfoCentreOfGravity | 重心 |
+4 | lmrcImageDensityInfoMax | 最大値 |
+8 | lmrcImageDensityInfoCentreOfGravity | 重心の周りの標準偏差(重心も算出されます) |
+16 | lmrcImageDensityInfoSD | 最大値の周りの標準偏差(最大値も算出されます) |
extern void lmrcImageDensityChangeEstimationCentreOfGravity(lmrcImageDensityChangeEstimationInfo0* linfo, mrcImage* in, mrcImage* in2, long mode); extern void lmrcImageDensityChangeEstimationMax(lmrcImageDensityChangeEstimationInfo0* linfo, mrcImage* in, mrcImage* in2, long mode); extern void lmrcImageDensityChangeEstimationSD(lmrcImageDensityChangeEstimationInfo0* linfo, mrcImage* in1, mrcImage* in2, long mode);