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

提供: Eospedia
移動: 案内検索
(API)
 
行16: 行16:
 
  int mode;
 
  int mode;
 
  }lFETmapOrientationSearchBySimultaneousFittingInfo;
 
  }lFETmapOrientationSearchBySimultaneousFittingInfo;
 +
<table border=1>
 +
<tr>
 +
<th>メンバ</th>
 +
<th>説明</th>
 +
</tr>
 +
<tr>
 +
<td>InML</td>
 +
<td>マップファイルリスト</td>
 +
</tr>
 +
<tr>
 +
<td>InNL</td>
 +
<td>FETファイルリスト</td>
 +
</tr>
 +
<tr>
 +
<td>InCL</td>
 +
<td>コモンラインリスト</td>
 +
</tr>
 +
<tr>
 +
<td>PM</td>
 +
<td>PeakDetectAreaMode(0-10)</td>
 +
</tr>
 +
<tr>
 +
<td>PN</td>
 +
<td>PeakNumber(1-50)</td>
 +
</tr>
 +
<tr>
 +
<td>FileN</td>
 +
<td>FETファイル数</td>
 +
</tr>
 +
<tr>
 +
<td>FileM</td>
 +
<td>マップファイル数</td>
 +
</tr>
 +
<tr>
 +
<td>PDT</td>
 +
<td>PeakDetectThreshold_ForMode0(0.02-1.00)</td>
 +
</tr>
 +
<tr>
 +
<td>ChkPtOut</td>
 +
<td>出力ファイル(未対応)</td>
 +
</tr>
 +
<tr>
 +
<td>Out</td>
 +
<td>出力ファイル(未対応)</td>
 +
</tr>
 +
<tr>
 +
<td>mode</td>
 +
<td>モード(特になし)</td>
 +
</tr>
 +
</table>
 +
<br>
  
 
  typedef struct FETmapPeakTable{
 
  typedef struct FETmapPeakTable{
行71: 行122:
  
 
== API ==
 
== API ==
=== オリエンテーションサーチ ===
+
=== FET ===
 +
==== 角度探索 ====
 +
infoを入力として画像の角度探索を行います。
 
  extern void lFETmapOrientationSearchBySimultaneousFitting(lFETmapOrientationSearchBySimultaneousFittingInfo info, int mode);  
 
  extern void lFETmapOrientationSearchBySimultaneousFitting(lFETmapOrientationSearchBySimultaneousFittingInfo info, int mode);  
 
<br>
 
<br>
行95: 行148:
 
<br>
 
<br>
  
 +
=== ラドン空間 ===
 +
==== 角度探索 ====
 +
メイン
 
  extern void lRadonSpaceSimultaneousFitting(lRadonSpaceSimultaneousFittingInfo* info, int mode);
 
  extern void lRadonSpaceSimultaneousFitting(lRadonSpaceSimultaneousFittingInfo* info, int mode);
 +
 +
未実装
 
  extern void lRadonSpaceSimultaneousFittingC(FETmapPeakTable* tableP,RadonSpaceSimultaneousFittingParameters* paras, int* sortN, int mode);
 
  extern void lRadonSpaceSimultaneousFittingC(FETmapPeakTable* tableP,RadonSpaceSimultaneousFittingParameters* paras, int* sortN, int mode);
 +
 +
未実装
 
  extern int lRadonSpaceSimultaneousFittingCoreSearch(FETmapPeakTable* tableP,RadonSpaceSimultaneousFittingParameters* paras, int* rS[10], int mode);
 
  extern int lRadonSpaceSimultaneousFittingCoreSearch(FETmapPeakTable* tableP,RadonSpaceSimultaneousFittingParameters* paras, int* rS[10], int mode);

2015年3月24日 (火) 05:40時点における最新版

DataManip/transform/src/lFETmapOrientationSearchBySimultaneousFittingFETmapOrientationSearchBySimultaneousFittingのためのAPI です。

定数

構造体

typedef struct lFETmapOrientationSearchBySimultaneousFittingInfo{
	FILE* InML;
	FILE* InNL;
	FILE* InCL;
	int PM;
	int PN;
	int filesN,filesM;
	double PDT;
	FILE* ChkPtOut;
	FILE* Out;
	int mode;
}lFETmapOrientationSearchBySimultaneousFittingInfo;
メンバ 説明
InML マップファイルリスト
InNL FETファイルリスト
InCL コモンラインリスト
PM PeakDetectAreaMode(0-10)
PN PeakNumber(1-50)
FileN FETファイル数
FileM マップファイル数
PDT PeakDetectThreshold_ForMode0(0.02-1.00)
ChkPtOut 出力ファイル(未対応)
Out 出力ファイル(未対応)
mode モード(特になし)


typedef struct FETmapPeakTable{
    int*** table;
	int filesN,filesM;
	int PN;
	int PM;
    int mode;
}FETmapPeakTable;
typedef struct lFETmapPeakDetectAndTableMakeInfo{
	FILE* InML;
	FILE* InNL;
	int PM;
	int PN;
	int filesN,filesM;
	double PDT;
	FETmapPeakTable* tableP; 
	int mode;
}lFETmapPeakDetectAndTableMakeInfo;
typedef struct FETCoreTriad{
	int triad[6];
	int matchPosi[3][2];
	double angles[3][2][3];
	double* anglesOf4th;
	double matchingLevel;
	int matchFlag;
	int filesN;
	int mode;
}FETCoreTriad;
typedef struct lFETmapCoreTriadGenerateInfo{
	FILE* InCL;
	int filesN;
	//FETmapPeakTable* tableP;
	FETCoreTriad* CList;
	int mode;
}lFETmapCoreTriadGenerateInfo;
typedef struct RadonSpaceSimultaneousFittingParameters{
	double** table;
	int mode;
}RadonSpaceSimultaneousFittingParameters;
typedef struct lRadonSpaceSimultaneousFittingInfo{
	RadonSpaceSimultaneousFittingParameters* paras;
	FETmapPeakTable* tableP;
	int cycleMaxR;
	int cycleMax;
	int cycleMaxS;
	int coreNum;
	int mode;
}lRadonSpaceSimultaneousFittingInfo;

API

FET

角度探索

infoを入力として画像の角度探索を行います。

extern void lFETmapOrientationSearchBySimultaneousFitting(lFETmapOrientationSearchBySimultaneousFittingInfo info, int mode); 


マップリストinfo->InMLからそれぞれピークサーチを行いテーブルinfo->tableP->tableへ格納します。

extern void lFETmapPeakDetectAndTableMake(lFETmapPeakDetectAndTableMakeInfo* info, int mode);


ピークテーブルTableから3つの角度の組み合わせリストinfo->InCLからマッチングの頻度が最大のデータをリストとしてinfo->CListへ格納します。

extern void lFETmapCoreTriadGenerate(FETmapPeakTable* Table, lFETmapCoreTriadGenerateInfo* info, int mode);


ピークテーブルTableから3つの角度の組み合わせcoreTからマッチングの頻度が最大のデータをcoreT->triadへ格納します。近いパターンが見つかった場合はその総数をcoreT->matchFlagに、それに対する評点をcoreT->matchingLevelにそれぞれ格納します。

extern int lFETBestCoreSearch(FETmapPeakTable* Table, FETCoreTriad* coreT, int PN, int mode);


1点の座標pointを軸axisに対し、theta[°]だけ回転した座標をandへ格納します。

extern void lFETpointRotation(double axis[3], double point[3], double theta, double* ans, int mode);


マッチングの評点を返します。(現実装では0.3を返すのみ)

extern double lFET4thMatching(FETmapPeakTable* , FETCoreTriad* , int , int , int , int , int );


ラドン空間

角度探索

メイン

extern void lRadonSpaceSimultaneousFitting(lRadonSpaceSimultaneousFittingInfo* info, int mode);

未実装

extern void lRadonSpaceSimultaneousFittingC(FETmapPeakTable* tableP,RadonSpaceSimultaneousFittingParameters* paras, int* sortN, int mode);

未実装

extern int lRadonSpaceSimultaneousFittingCoreSearch(FETmapPeakTable* tableP,RadonSpaceSimultaneousFittingParameters* paras, int* rS[10], int mode);