#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 1118 of file processor.h.
|
Definition at line 1121 of file processor.h.
|
|
Implements EMAN::FourierProcessor. Definition at line 1282 of file processor.cpp. References Assert, norm(), sigma1, sigma2, EMAN::Dict::size(), sqrt(), and x. 01283 { 01284 01285 Assert(radial_mask.size() > 0); 01286 float x = 0.0f , nqstep = 0.5f/radial_mask.size(); 01287 size_t size=radial_mask.size(); 01288 float norm = 1.0f/sqrt(2*M_PI); 01289 for (size_t i = 0; i < size; i++) { 01290 radial_mask[i] = norm*((1.0f/sigma1*exp(-x*x/(2.0f*sigma1*sigma1))) - (1.0f/sigma2*exp(-x*x/(2.0f*sigma2*sigma2)))); 01291 x += nqstep; 01292 } 01293 }
|
|
Get the descrition of this specific processor. This function must be overwritten by a subclass.
Implements EMAN::Processor. Definition at line 1134 of file processor.h. 01135 { 01136 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)]"; 01137 }
|
|
Get the processor's name. Each processor is identified by a unique name.
Implements EMAN::Processor. Definition at line 1125 of file processor.h. 01126 {
01127 return NAME;
01128 }
|
|
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 1146 of file processor.h. References EMAN::TypeDict::put(). 01147 { 01148 TypeDict d; 01149 d.put("sigma1", EMObject::FLOAT, "DoG sigma1"); 01150 d.put("sigma2", EMObject::FLOAT, "DoG sigma2"); 01151 return d; 01152 }
|
|
Definition at line 1129 of file processor.h. 01130 { 01131 return new DoGFourierProcessor(); 01132 }
|
|
Set the processor parameters using a key/value dictionary.
Reimplemented from EMAN::Processor. Definition at line 1139 of file processor.h. 01140 { 01141 params = new_params; 01142 sigma1 = params["sigma1"]; 01143 sigma2 = params["sigma2"]; 01144 }
|
|
Definition at line 71 of file processor.cpp. |
|
Definition at line 1160 of file processor.h. Referenced by create_radial_func(). |
|
Definition at line 1161 of file processor.h. Referenced by create_radial_func(). |