<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?action=history&amp;feed=atom&amp;title=lmrcImageCorrelation%28API%29</id>
		<title>lmrcImageCorrelation(API) - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?action=history&amp;feed=atom&amp;title=lmrcImageCorrelation%28API%29"/>
		<link rel="alternate" type="text/html" href="http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?title=lmrcImageCorrelation(API)&amp;action=history"/>
		<updated>2026-08-30T09:54:30Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.23.6</generator>

	<entry>
		<id>http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?title=lmrcImageCorrelation(API)&amp;diff=3756&amp;oldid=prev</id>
		<title>Kinoshita: Created page with &quot;DataManip/mrcImage/src/'''lmrcImageCorrelation''' is API for correlation between mrcImages. It is used by mrcImageCorrelation, mrcImageAutoRotationCorrelation. In...&quot;</title>
		<link rel="alternate" type="text/html" href="http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?title=lmrcImageCorrelation(API)&amp;diff=3756&amp;oldid=prev"/>
				<updated>2014-09-01T01:53:17Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;DataManip/mrcImage/src/&amp;#039;&amp;#039;&amp;#039;lmrcImageCorrelation&amp;#039;&amp;#039;&amp;#039; is API for correlation between &lt;a href=&quot;/Eos/index.php/mrcImage&quot; title=&quot;mrcImage&quot;&gt;mrcImages&lt;/a&gt;. It is used by &lt;a href=&quot;/Eos/index.php/mrcImageCorrelation&quot; title=&quot;mrcImageCorrelation&quot;&gt;mrcImageCorrelation&lt;/a&gt;, &lt;a href=&quot;/Eos/index.php/mrcImageAutoRotationCorrelation&quot; title=&quot;mrcImageAutoRotationCorrelation&quot;&gt;mrcImageAutoRotationCorrelation&lt;/a&gt;. In...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;DataManip/mrcImage/src/'''lmrcImageCorrelation''' is API for correlation between [[mrcImage]]s. It is used by [[mrcImageCorrelation]], [[mrcImageAutoRotationCorrelation]]. In addition, it is also used for define of relation between images. (e.g. [[Cluster Analysis]])&lt;br /&gt;
&lt;br /&gt;
== constant ==&lt;br /&gt;
&lt;br /&gt;
== struct ==&lt;br /&gt;
===Correlation Method===&lt;br /&gt;
It is used as value of Method. (lmrcImageAutoRotationCorrelationInfo 's member)&lt;br /&gt;
 typedef enum lmrcImageAutoRotationCorrelationMethod {&lt;br /&gt;
 	lmrcImageAutoRotationCorrelationMethodRotationAndCorrelation     = 0,&lt;br /&gt;
 	lmrcImageAutoRotationCorrelationMethodRotationAndCorrelationSSDA = 1,&lt;br /&gt;
 	lmrcImageAutoRotationCorrelationMethodRotationalFunction         = 2&lt;br /&gt;
 } lmrcImageAutoRotationCorrelationMethod;&lt;br /&gt;
&lt;br /&gt;
===Correlation Information===&lt;br /&gt;
lmrcImageAutoRotationCorrelationSetting data for .&lt;br /&gt;
 typedef struct lmrcImageAutoRotationCorrelationInfo {&lt;br /&gt;
 	int iter; /* iteration */&lt;br /&gt;
 	int nRot; /* Rotation */  &lt;br /&gt;
 	lmrcImageAutoRotationCorrelationMethod Method;&lt;br /&gt;
 	float max;&lt;br /&gt;
 	float maxTheta;&lt;br /&gt;
 	mrcImageParaTypeRealCoord maxP;&lt;br /&gt;
 	mrcImageInformation corInfo;&lt;br /&gt;
 	lmrcImageSSDAInfo SSDAInfo;&lt;br /&gt;
 	float EuclidDistance; &lt;br /&gt;
 	float LinearCorrelation;&lt;br /&gt;
 &lt;br /&gt;
 	/* Restriction Rotation Area */&lt;br /&gt;
 	int   flagRestrictionArea;&lt;br /&gt;
 	float thetaMin;&lt;br /&gt;
 	float thetaMax;&lt;br /&gt;
 &lt;br /&gt;
 	int flagShiftRange;&lt;br /&gt;
 	float shiftMinX;&lt;br /&gt;
 	float shiftMinY;&lt;br /&gt;
 	float shiftMaxX;&lt;br /&gt;
 	float shiftMaxY;&lt;br /&gt;
 &lt;br /&gt;
 	int   flagXshiftOnly;&lt;br /&gt;
 	int   flagNoShift;&lt;br /&gt;
 } lmrcImageAutoRotationCorrelationInfo;&lt;br /&gt;
&lt;br /&gt;
lmrcImageCorrelationRefinementSetting data for .&lt;br /&gt;
 typedef struct lmrcImageCorrelationRefinementInfo {&lt;br /&gt;
 	mrcImageParaTypeRealCoord shift; &lt;br /&gt;
 	mrcImageParaTypeRealCoord step; &lt;br /&gt;
 	mrcImageParaTypeRealCoord range; &lt;br /&gt;
 	mrcImageInformation corInfo;&lt;br /&gt;
 	int mode;&lt;br /&gt;
 } lmrcImageCorrelationRefinementInfo;&lt;br /&gt;
&lt;br /&gt;
===Rotation Mode===&lt;br /&gt;
 typedef enum lmrcImageAutoRotationCorrelationForManyReferencesRotationOrder {&lt;br /&gt;
 	 lmrcImageAutoRotationCorrelationForManyReferencesStackOrderRot1Rot2Rot3=0,&lt;br /&gt;
 	 lmrcImageAutoRotationCorrelationForManyReferencesStackOrderRot3Rot2Rot1=1&lt;br /&gt;
 }  lmrcImageAutoRotationCorrelationForManyReferencesStackOrder;&lt;br /&gt;
&lt;br /&gt;
 typedef enum lmrcImageAutoRotationCorrelationForManyReferencesRefinementMode {&lt;br /&gt;
 	 lmrcImageAutoRotationCorrelationForManyReferencesRefinementModeLinear  =0,&lt;br /&gt;
 	 lmrcImageAutoRotationCorrelationForManyReferencesRefinementModeSetMode =1&lt;br /&gt;
 }  lmrcImageAutoRotationCorrelationForManyReferencesRefinementMode;&lt;br /&gt;
&lt;br /&gt;
 typedef struct lmrcImageAutoRotationCorrelationForManyReferencesInfo {&lt;br /&gt;
 	int    nRot1;           /* Image Number in Ref*/&lt;br /&gt;
 	int    nRot1Step;       /* Coarse Step in Fitting */&lt;br /&gt;
 	double nRot1AreaMin;    /* Min: Rotation Area in Fitting */&lt;br /&gt;
 	double nRot1AreaMax;    /* Max: Rotation Area in Fitting */&lt;br /&gt;
 	double nRot1AreaStep;   /* Step: Rotation Area in Fitting */&lt;br /&gt;
 	double nRot1Delta;      /* Delta: Rotation Interval of Ref */&lt;br /&gt;
 	double nRot1Start;      /* Start: Rotation Interval of Ref */&lt;br /&gt;
 &lt;br /&gt;
 	int    nRot2;&lt;br /&gt;
 	int    nRot2Step;&lt;br /&gt;
 	double nRot2AreaMin;&lt;br /&gt;
 	double nRot2AreaMax;&lt;br /&gt;
 	double nRot2AreaStep;&lt;br /&gt;
 	double nRot2Delta;&lt;br /&gt;
 	double nRot2Start;&lt;br /&gt;
 &lt;br /&gt;
 	int    nRot3;&lt;br /&gt;
 	int    nRot3Step;&lt;br /&gt;
 	double nRot3AreaMin;&lt;br /&gt;
 	double nRot3AreaMax;&lt;br /&gt;
 	double nRot3AreaStep;&lt;br /&gt;
 	double nRot3Delta;&lt;br /&gt;
 	double nRot3Start;&lt;br /&gt;
 &lt;br /&gt;
 	int mode;&lt;br /&gt;
 &lt;br /&gt;
 	lmrcImageAutoRotationCorrelationForManyReferencesStackOrder StackOrder;&lt;br /&gt;
 	lmrcImageAutoRotationCorrelationForManyReferencesRefinementMode RefinementMode;&lt;br /&gt;
 &lt;br /&gt;
 	char* In;&lt;br /&gt;
 	FILE* fptOutASC; /* a file pointer for logging */&lt;br /&gt;
 	char* Out;&lt;br /&gt;
 	mrcImage out;&lt;br /&gt;
 &lt;br /&gt;
 	/* for Linear Correlation */	&lt;br /&gt;
 	char* corFile;&lt;br /&gt;
 	mrcImage cor;&lt;br /&gt;
 	char* fitFile;&lt;br /&gt;
 	mrcImage fittedMap;&lt;br /&gt;
 &lt;br /&gt;
 	/* for Set mode correlation */ &lt;br /&gt;
 	char* corFile2;&lt;br /&gt;
 	mrcImage cor2;&lt;br /&gt;
 	char* fitFile2;&lt;br /&gt;
 	mrcImage fittedMap2;&lt;br /&gt;
 &lt;br /&gt;
 } lmrcImageAutoRotationCorrelationForManyReferencesInfo;&lt;br /&gt;
&lt;br /&gt;
===Only when installed PVM===&lt;br /&gt;
 #ifdef PVM&lt;br /&gt;
 typedef struct lmrcImageCorrelationPVMInfo {&lt;br /&gt;
 	int* tids;&lt;br /&gt;
 	int  numTask;&lt;br /&gt;
 } lmrcImageCorrelationPVMInfo;&lt;br /&gt;
 #endif&lt;br /&gt;
&lt;br /&gt;
== API ==&lt;br /&gt;
AutoRotationCorrelation&lt;br /&gt;
 extern void lmrcImageAutoRotationCorrelation(mrcImage* out, mrcImage* cor, mrcImage* in, mrcImage* ref, lmrcImageAutoRotationCorrelationInfo* linfo, int mode);&lt;br /&gt;
 extern void lmrcImageAutoRotationCorrelationRotationalCrossCorrelationFunction(mrcImage* out, mrcImage* cor, mrcImage* in, mrcImage* ref, lmrcImageAutoRotationCorrelationInfo* linfo, int mode);&lt;br /&gt;
 extern double lmrcImageLinearCorrelation(mrcImage* in1, mrcImage* in2, long mode);&lt;br /&gt;
 extern void lmrcImageCorrelation(mrcImage* cor, mrcImage* in, mrcImage* ref, long mode);&lt;br /&gt;
 extern double lmrcImageEuclidDistanceCalc(mrcImage* in1, mrcImage* in2, int mode); &lt;br /&gt;
 extern void lmrcImageCorrelationRefinement(mrcImage* cor, mrcImage* shift, mrcImage* in, mrcImage* ref, lmrcImageCorrelationRefinementInfo* info, long mode);&lt;br /&gt;
&lt;br /&gt;
When using multiple Reference files&lt;br /&gt;
 extern void lmrcImageAutoRotationCorretionForManyReferences(mrcImage* in, mrcImage* ref,&lt;br /&gt;
    lmrcImageAutoRotationCorrelationForManyReferencesInfo* info,&lt;br /&gt;
    lmrcImageAutoRotationCorrelationInfo* linfo,&lt;br /&gt;
    int mode);&lt;br /&gt;
&lt;br /&gt;
===Only when installed PVM===&lt;br /&gt;
 #ifdef PVM&lt;br /&gt;
 extern void lmrcImageCorrelationServerStart(lmrcImageCorrelationPVMInfo* linfo, FILE* fpt, int numTask);&lt;br /&gt;
 extern void lmrcImageCorrelationServerEnd(lmrcImageCorrelationPVMInfo linfo);&lt;br /&gt;
 &lt;br /&gt;
 extern void lmrcImageCorrelationPVMStart(mrcImage* in, mrcImage* ref, lmrcImageAutoRotationCorrelationInfo* linfo, int tid, long mode);&lt;br /&gt;
 extern void lmrcImageCorrelationPVMEnd(mrcImage* out, mrcImage* cor, lmrcImageAutoRotationCorrelationInfo* linfo, int tid, long mode);&lt;br /&gt;
 &lt;br /&gt;
 extern void lmrcImageCorrelationServer();&lt;br /&gt;
 &lt;br /&gt;
 extern void lmrcImageAutoRotationCorrelationInfoSendByPVM(lmrcImageAutoRotationCorrelationInfo* linfo, int tid, long mode);&lt;br /&gt;
 extern void lmrcImageAutoRotationCorrelationInfoRecieveByPVM(lmrcImageAutoRotationCorrelationInfo* linfo, int tid, long mode);&lt;br /&gt;
 #endif&lt;/div&gt;</summary>
		<author><name>Kinoshita</name></author>	</entry>

	</feed>