#include <aligner.h>
Inheritance diagram for EMAN::RotateTranslateFlipScaleAlignerIterative:
Public Member Functions | |
RotateTranslateFlipScaleAlignerIterative () | |
virtual EMData * | align (EMData *this_img, EMData *to_img, const string &cmp_name="dot", const Dict &cmp_params=Dict()) const |
To align 'this_img' with another image passed in through its parameters. | |
virtual EMData * | align (EMData *this_img, EMData *to_img) const |
virtual string | get_name () const |
Get the Aligner's name. | |
virtual string | get_desc () const |
virtual TypeDict | get_param_types () const |
Static Public Member Functions | |
Aligner * | NEW () |
Static Public Attributes | |
const string | NAME = "rotate_trans_flip_scale_iter" |
Basically, we find the best translation, and move to that pointer then we find the best rotation and rotate to that point. Next we iterate X times. We do this for each scale and flip of the image and return the optimal solution
min | Minimum scaling (default: 0.95) | |
max | aximum scaling (default: 1.05) | |
step | Scaling step (default: 0.01) | |
flip | ||
maxshift | Maximum translation in pixels | |
r1 | inner ring | |
r2 | outer ring | |
maxiter | maximum number of alignment iterations |
Definition at line 975 of file aligner.h.
|
Definition at line 979 of file aligner.h. 00979 : ScaleAlignerABS("rotate_translate_flip_iterative") 00980 { 00981 }
|
|
Implements EMAN::Aligner. Definition at line 986 of file aligner.h. References align(). 00987 { 00988 return align(this_img, to_img, "sqeuclidean", Dict()); 00989 }
|
|
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.
Implements EMAN::Aligner. Definition at line 899 of file aligner.cpp. References EMAN::ScaleAlignerABS::align_using_base(), and EMAN::Dict::set_default(). 00901 { 00902 00903 //Basically copy params into rotate_translate 00904 basealigner_params["flip"] = params.set_default("flip", (EMData *) 0); 00905 basealigner_params["maxshift"] = params.set_default("maxshift", -1); 00906 basealigner_params["r1"] = params.set_default("r1",-1); 00907 basealigner_params["r2"] = params.set_default("r2",-1); 00908 basealigner_params["maxiter"] = params.set_default("maxiter",3); 00909 00910 //return the correct results 00911 return align_using_base(this_img, to, cmp_name, cmp_params); 00912 00913 }
|
|
Implements EMAN::Aligner. Definition at line 996 of file aligner.h. 00997 { 00998 return "Performs rotational alignment and follows this with translational alignment using the iterative method. Does this for each scale and returns the best"; 00999 }
|
|
Get the Aligner's name. Each Aligner is identified by a unique name.
Implements EMAN::Aligner. Definition at line 991 of file aligner.h. 00992 {
00993 return NAME;
00994 }
|
|
Implements EMAN::Aligner. Definition at line 1006 of file aligner.h. References EMAN::TypeDict::put(). 01007 { 01008 TypeDict d; 01009 d.put("min", EMObject::FLOAT, "Minimum scaling (default: 0.95)"); 01010 d.put("max", EMObject::FLOAT, "Maximum scaling (default: 1.05)"); 01011 d.put("step", EMObject::FLOAT, "Scaling step (default: 0.01)"); 01012 d.put("maxshift", EMObject::INT, "Maximum translation in pixels"); 01013 d.put("flip", EMObject::EMDATA); 01014 d.put("r1", EMObject::INT, "Inner ring, pixels"); 01015 d.put("r2", EMObject::INT, "Outer ring, pixels"); 01016 d.put("maxiter", EMObject::INT, "Maximum number of iterations"); 01017 return d; 01018 }
|
|
Definition at line 1001 of file aligner.h. 01002 { 01003 return new RotateTranslateFlipScaleAlignerIterative(); 01004 }
|
|
Definition at line 74 of file aligner.cpp. |