EMAN2
|
Refine alignment. More...
#include <aligner.h>
Public Member Functions | |
virtual EMData * | align (EMData *this_img, EMData *to_img, const string &cmp_name="sqeuclidean", const Dict &cmp_params=Dict()) const |
To align 'this_img' with another image passed in through its parameters. More... | |
virtual EMData * | align (EMData *this_img, EMData *to_img) const |
virtual string | get_name () const |
Get the Aligner's name. More... | |
virtual string | get_desc () const |
virtual TypeDict | get_param_types () const |
Public Member Functions inherited from EMAN::Aligner | |
virtual | ~Aligner () |
virtual Dict | get_params () const |
Get the Aligner parameters in a key/value dictionary. More... | |
virtual void | set_params (const Dict &new_params) |
Set the Aligner parameters using a key/value dictionary. More... | |
virtual vector< Dict > | xform_align_nbest (EMData *this_img, EMData *to_img, const unsigned int nsoln, const string &cmp_name, const Dict &cmp_params) const |
This function first added in the context of the 3D aligners used by e2tomohunter: which wants the n best solutions, as opposed to just the best. More... | |
Static Public Member Functions | |
static Aligner * | NEW () |
Static Public Attributes | |
static const string | NAME = "refine_3d" |
Additional Inherited Members | |
Protected Attributes inherited from EMAN::Aligner | |
Dict | params |
Refine alignment.
Refines a preliminary 3D alignment using a simplex algorithm. Subpixel precision. Target function for the simplex algorithm is a rotation along an arbitrary axis defined by a quaternion, whose rotation magnitude is defined by the vector length (hence the simplex varies the vecotr component of the quaternion). In addition the simplex varies translation. Using quaternions avoids gimbal lock. The simplex algorithm moves the function downhill in a ameboa like fasion, hence it may get stuck in a local minima if the two 3D models are already roughly aligned.
xform.align3d | The Transform storing the starting guess. If unspecified the identity matrix is used |
stepx | The initial simplex step size in x |
stepy | The initial simplex step size in y |
stepz | The initial simplex step size in z |
stepn0 | The initial simplex step size in the first quaternion vecotr component |
stepn1 | The initial simplex step size in the second quaternion vecotr component |
stepn2 | The initial simplex step size in the third quaternion vecotr component |
spin_coeff | The multiplier appied to the spin (if it is too small or too large the simplex will not converge) |
precision | The precision which, if achieved, can stop the iterative refinement before reaching the maximum iterations |
maxiter | The maximum number of iterations that can be performed by the Simplex minimizer |
maxshift | Maximum translation in pixels in any direction. |
|
inlinevirtual |
Implements EMAN::Aligner.
Definition at line 1552 of file aligner.h.
References align().
|
virtual |
To align 'this_img' with another image passed in through its parameters.
The alignment uses a user-given comparison method to compare the two images. If none is given, a default one is used.
this_img | The image to be compared. |
to_img | 'this_img" is aligned with 'to_img'. |
cmp_name | The comparison method to compare the two images. |
cmp_params | The parameter dictionary for comparison method. |
Implements EMAN::Aligner.
Referenced by align().
|
inlinevirtual |
Implements EMAN::Aligner.
|
inlinevirtual |
|
inlinevirtual |
Implements EMAN::Aligner.
Definition at line 1572 of file aligner.h.
References EMAN::EMObject::FLOAT, EMAN::EMObject::INT, EMAN::TypeDict::put(), and EMAN::EMObject::TRANSFORM.
|
inlinestatic |
|
static |
Definition at line 1589 of file aligner.h.
Referenced by get_name().