#include <processor.h>
Inheritance diagram for EMAN::DoGFourierProcessor:
Public Member Functions | |
DoGFourierProcessor () | |
string | get_name () const |
Get the processor's name. | |
string | get_desc () const |
Get the descrition of this specific processor. | |
void | set_params (const Dict &new_params) |
Set the processor parameters using a key/value dictionary. | |
TypeDict | get_param_types () const |
Get processor parameter information in a dictionary. | |
Static Public Member Functions | |
Processor * | NEW () |
Static Public Attributes | |
const string | NAME = "filter.DoG" |
Protected Member Functions | |
void | create_radial_func (vector< float > &radial_mask) const |
Private Attributes | |
float | sigma1 |
float | sigma2 |
sigma1 | DoG sigma1 | |
sigma1 | DoG sigma2 |
Definition at line 1073 of file processor.h.
|
Definition at line 1076 of file processor.h.
|
|
Implements EMAN::FourierProcessor. Definition at line 1208 of file processor.cpp. References Assert, norm(), sigma1, sigma2, EMAN::Dict::size(), sqrt(), and x. 01209 { 01210 01211 Assert(radial_mask.size() > 0); 01212 float x = 0.0f , nqstep = 0.5f/radial_mask.size(); 01213 size_t size=radial_mask.size(); 01214 float norm = 1.0f/sqrt(2*M_PI); 01215 for (size_t i = 0; i < size; i++) { 01216 radial_mask[i] = norm*((1.0f/sigma1*exp(-x*x/(2.0f*sigma1*sigma1))) - (1.0f/sigma2*exp(-x*x/(2.0f*sigma2*sigma2)))); 01217 x += nqstep; 01218 } 01219 }
|
|
Get the descrition of this specific processor. This function must be overwritten by a subclass.
Implements EMAN::Processor. Definition at line 1089 of file processor.h. 01090 { 01091 return "processor radial function: f(x) = 1/sqrt(2*pi)*[1/sigma1*exp-(x^2/2*sigma1^2) - 1/sigma2*exp-(x^2/2*sigma2^2)]"; 01092 }
|
|
Get the processor's name. Each processor is identified by a unique name.
Implements EMAN::Processor. Definition at line 1080 of file processor.h. 01081 {
01082 return NAME;
01083 }
|
|
Get processor parameter information in a dictionary. Each parameter has one record in the dictionary. Each record contains its name, data-type, and description.
Reimplemented from EMAN::FourierProcessor. Definition at line 1101 of file processor.h. References EMAN::TypeDict::put(). 01102 { 01103 TypeDict d; 01104 d.put("sigma1", EMObject::FLOAT, "DoG sigma1"); 01105 d.put("sigma2", EMObject::FLOAT, "DoG sigma2"); 01106 return d; 01107 }
|
|
Definition at line 1084 of file processor.h. 01085 { 01086 return new DoGFourierProcessor(); 01087 }
|
|
Set the processor parameters using a key/value dictionary.
Reimplemented from EMAN::Processor. Definition at line 1094 of file processor.h. 01095 { 01096 params = new_params; 01097 sigma1 = params["sigma1"]; 01098 sigma2 = params["sigma2"]; 01099 }
|
|
Definition at line 71 of file processor.cpp. |
|
Definition at line 1115 of file processor.h. Referenced by create_radial_func(). |
|
Definition at line 1116 of file processor.h. Referenced by create_radial_func(). |