#include <aligner.h>
Inheritance diagram for EMAN::RotateTranslateScaleAligner:
Public Member Functions | |
RotateTranslateScaleAligner () | |
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 | |
static Aligner * | NEW () |
Static Public Attributes | |
static const string | NAME = "rotate_translate_scale" |
min | Minimum scaling (default: 0.95) | |
max | aximum scaling (default: 1.05) | |
step | Scaling step (default: 0.01) | |
maxshift | Maximum translation in pixels | |
nozero | Zero translation not permitted (useful for CCD images) | |
rfp_mode | Either 0,1 or 2. A temporary flag for testing the rotational foot print |
Definition at line 463 of file aligner.h.
EMAN::RotateTranslateScaleAligner::RotateTranslateScaleAligner | ( | ) | [inline] |
Definition at line 468 of file aligner.h.
Referenced by NEW().
00468 : ScaleAlignerABS("rotate_translate") 00469 { 00470 }
virtual EMData* EMAN::RotateTranslateScaleAligner::align | ( | EMData * | this_img, | |
EMData * | to_img | |||
) | const [inline, virtual] |
Implements EMAN::Aligner.
Definition at line 475 of file aligner.h.
References align().
00476 { 00477 return align(this_img, to_img, "sqeuclidean", Dict()); 00478 }
EMData * RotateTranslateScaleAligner::align | ( | EMData * | this_img, | |
EMData * | to_img, | |||
const string & | cmp_name = "dot" , |
|||
const Dict & | cmp_params = Dict() | |||
) | const [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.
Definition at line 778 of file aligner.cpp.
References EMAN::ScaleAlignerABS::align_using_base(), EMAN::ScaleAlignerABS::basealigner_params, EMAN::Aligner::params, and EMAN::Dict::set_default().
Referenced by align().
00780 { 00781 00782 //Basically copy params into rotate_translate 00783 basealigner_params["maxshift"] = params.set_default("maxshift", -1); 00784 basealigner_params["rfp_mode"] = params.set_default("rfp_mode",2); 00785 basealigner_params["useflcf"] = params.set_default("useflcf",0); 00786 basealigner_params["zscore"] = params.set_default("zscore",0); 00787 00788 //return the correct results 00789 return align_using_base(this_img, to, cmp_name, cmp_params); 00790 00791 }
virtual string EMAN::RotateTranslateScaleAligner::get_desc | ( | ) | const [inline, virtual] |
Implements EMAN::Aligner.
Definition at line 485 of file aligner.h.
00486 { 00487 return "Performs rotational alignment and follows this with translational and then scaling alignment."; 00488 }
virtual string EMAN::RotateTranslateScaleAligner::get_name | ( | ) | const [inline, virtual] |
virtual TypeDict EMAN::RotateTranslateScaleAligner::get_param_types | ( | ) | const [inline, virtual] |
Implements EMAN::Aligner.
Definition at line 495 of file aligner.h.
References EMAN::EMObject::FLOAT, EMAN::EMObject::INT, and EMAN::TypeDict::put().
00496 { 00497 TypeDict d; 00498 d.put("min", EMObject::FLOAT, "Minimum scaling (default: 0.95)"); 00499 d.put("max", EMObject::FLOAT, "Maximum scaling (default: 1.05)"); 00500 d.put("step", EMObject::FLOAT, "Scaling step (default: 0.01)"); 00501 d.put("maxshift", EMObject::INT, "Maximum translation in pixels"); 00502 d.put("nozero", EMObject::INT,"Zero translation not permitted (useful for CCD images)"); 00503 d.put("rfp_mode", EMObject::INT,"Either 0,1 or 2. A temporary flag for testing the rotational foot print"); 00504 d.put("useflcf", EMObject::INT,"Use Fast Local Correlation Function rather than CCF for translational alignment"); 00505 d.put("zscore", EMObject::INT,"Either 0 or 1. This option is passed directly to the rotational aligner (default=false)"); 00506 return d; 00507 }
static Aligner* EMAN::RotateTranslateScaleAligner::NEW | ( | ) | [inline, static] |
Definition at line 490 of file aligner.h.
References RotateTranslateScaleAligner().
00491 { 00492 return new RotateTranslateScaleAligner(); 00493 }
const string RotateTranslateScaleAligner::NAME = "rotate_translate_scale" [static] |