「lmrcImageSinogram(API)」の版間の差分

提供: Eospedia
移動: 案内検索
行23: 行23:
  
 
== API ==
 
== API ==
===変換===
+
===シノグラム変換===
 
2D画像からシノグラム画像への変換
 
2D画像からシノグラム画像への変換
 
  extern void lmrcImageSinogramCreate(mrcImage* out, mrcImage* in, lmrcImageSinogramInfo* linfo, int mode);
 
  extern void lmrcImageSinogramCreate(mrcImage* out, mrcImage* in, lmrcImageSinogramInfo* linfo, int mode);
  
===相関===
+
===シノグラム相関===
 +
====メイン====
 
  extern void lmrcImageSinogramCorrelation(mrcImage* out, mrcImage* in, mrcImage* ref, lmrcImageSinogramInfo* linfo, int mode);
 
  extern void lmrcImageSinogramCorrelation(mrcImage* out, mrcImage* in, mrcImage* ref, lmrcImageSinogramInfo* linfo, int mode);
 +
mode及びlinfo->LengthModeを設定することにより、相関方法を選択できます。
 +
 +
<table border="1">
 +
<tr>
 +
<th>mode</th>
 +
<th>相関方法</th>
 +
</tr>
 +
<tr>
 +
<td>0</td>
 +
<td>simple Correlation(lmrcImageSinogramCorrelation0)</td>
 +
</tr>
 +
<tr>
 +
<td>1</td>
 +
<td>weight Correlation(lmrcImageSinogramCorrelation1)</td>
 +
</tr>
 +
<tr>
 +
<td>2</td>
 +
<td>threshold Correlation(lmrcImageSinogramCorrelation2)</td>
 +
</tr>
 +
<tr>
 +
<td>3</td>
 +
<td>power weight Correlation</td>
 +
</tr>
 +
</table>
 +
<br>
 +
 +
====mode毎の相関====
 
  void lmrcImageSinogramCorrelation0(mrcImage* out, mrcImage* in, mrcImage* ref, lmrcImageSinogramInfo* linfo, int mode);
 
  void lmrcImageSinogramCorrelation0(mrcImage* out, mrcImage* in, mrcImage* ref, lmrcImageSinogramInfo* linfo, int mode);
 
  double lmrcImageOneLineSinogramCorrelation0(mrcImage* in, mrcImage* ref, int mode);
 
  double lmrcImageOneLineSinogramCorrelation0(mrcImage* in, mrcImage* ref, int mode);

2014年5月26日 (月) 03:04時点における版

DataManip/mrcImage/src/lmrcImageSinogramはシノグラムのためのAPI です。mrcImageSinogramCreatemrcImageSinogramCorrelationなどで使用されています。

定数

構造体

このAPIで使用する設定データです。

typedef struct lmrcImageSinogramInfo {
	double dphi;
	double Smalldphi;
	int correlationMode;
	int LengthMode;
	int LengthCorrelationMode;
	int LengthThresholdMode;

	double weightOf0thDerivation;
	double weightOf1stDerivation;
	double weightOf2ndDerivation;
	double threshold;
	double LengthCorrelationThreshold;
	double weightOfLength;
	double LengthThresholdRatio;
} lmrcImageSinogramInfo;

API

シノグラム変換

2D画像からシノグラム画像への変換

extern void lmrcImageSinogramCreate(mrcImage* out, mrcImage* in, lmrcImageSinogramInfo* linfo, int mode);

シノグラム相関

メイン

extern void lmrcImageSinogramCorrelation(mrcImage* out, mrcImage* in, mrcImage* ref, lmrcImageSinogramInfo* linfo, int mode);

mode及びlinfo->LengthModeを設定することにより、相関方法を選択できます。

mode 相関方法
0 simple Correlation(lmrcImageSinogramCorrelation0)
1 weight Correlation(lmrcImageSinogramCorrelation1)
2 threshold Correlation(lmrcImageSinogramCorrelation2)
3 power weight Correlation


mode毎の相関

void lmrcImageSinogramCorrelation0(mrcImage* out, mrcImage* in, mrcImage* ref, lmrcImageSinogramInfo* linfo, int mode);
double lmrcImageOneLineSinogramCorrelation0(mrcImage* in, mrcImage* ref, int mode);
void lmrcImageSinogramCorrelation1(mrcImage* out, mrcImage* in, mrcImage* ref, lmrcImageSinogramInfo* linfo, int mode);
void lmrcImageSinogramCorrelation2(mrcImage* out, mrcImage* in, mrcImage* ref, lmrcImageSinogramInfo* linfo, int mode);

Derivation

void lmrcImageDerivationCalculation(mrcImage* out, mrcImage* in, int mode);
void lmrcImageOneLineDerivationCalculation(mrcImage* out, mrcImage* in, int mode);

Length

void lmrcImageSinogramLengthCorrelation(mrcImage* out, mrcImage* in, mrcImage* ref, lmrcImageSinogramInfo* linfo, int mode);