Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

EMAN::SNREvalProcessor Class Reference

Evaluate individual particle images using a tenchique similar to that used for CTF evaluation. More...

#include <processor.h>

Inheritance diagram for EMAN::SNREvalProcessor:

Inheritance graph
[legend]
Collaboration diagram for EMAN::SNREvalProcessor:

Collaboration graph
[legend]
List of all members.

Public Member Functions

string get_name () const
 Get the processor's name.
void process_inplace (EMData *image)
 To process an image in-place.
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.
string get_desc () const
 Get the descrition of this specific processor.

Static Public Member Functions

ProcessorNEW ()

Static Public Attributes

const string NAME = "eval.maskedsnr"

Protected Attributes

EMDatasum
int dosqrt

Detailed Description

Evaluate individual particle images using a tenchique similar to that used for CTF evaluation.

Definition at line 420 of file processor.h.


Member Function Documentation

string EMAN::SNREvalProcessor::get_desc  )  const [inline, virtual]
 

Get the descrition of this specific processor.

This function must be overwritten by a subclass.

Returns:
The description of this processor.

Implements EMAN::Processor.

Definition at line 451 of file processor.h.

00452                 {
00453                         return "Evaluates the SNR of the particle using a masking method similar to that used in the CTF analysis process. The image is not changed. The resulting value is placed in the particle dictionary as eval_maskedsnr";
00454                 }

string EMAN::SNREvalProcessor::get_name  )  const [inline, virtual]
 

Get the processor's name.

Each processor is identified by a unique name.

Returns:
The processor's name.

Implements EMAN::Processor.

Definition at line 423 of file processor.h.

00424                 {
00425                         return NAME;
00426                 }

TypeDict EMAN::SNREvalProcessor::get_param_types  )  const [inline, virtual]
 

Get processor parameter information in a dictionary.

Each parameter has one record in the dictionary. Each record contains its name, data-type, and description.

Returns:
A dictionary containing the parameter info.

Reimplemented from EMAN::Processor.

Definition at line 438 of file processor.h.

00439                 {
00440                         TypeDict d;
00441 //                      d.put("sum", EMObject::EMDATA, "Adds the weights to sum for normalization");
00442 //                      d.put("sqrt", EMObject::INT, "Weights using sqrt of the amplitude if set");
00443                         return d;
00444                 }

Processor* EMAN::SNREvalProcessor::NEW  )  [inline, static]
 

Definition at line 446 of file processor.h.

00447                 {
00448                         return new SNREvalProcessor();
00449                 }

void SNREvalProcessor::process_inplace EMData image  )  [virtual]
 

To process an image in-place.

For those processors which can only be processed out-of-place, override this function to just print out some error message to remind user call the out-of-place version.

Parameters:
image The image to be processed.

Implements EMAN::Processor.

Definition at line 686 of file processor.cpp.

References EMAN::EMData::add(), EMAN::EMData::copy(), EMAN::EMData::get_ysize(), EMAN::EMData::mult(), and EMAN::EMData::process_inplace().

00687 {
00688         int ys=image->get_ysize();
00689 
00690         EMData *mask1=new EMData(ys,ys,1);
00691         mask1->process_inplace("mask.gaussian",Dict("outer_radius", ys/2.0));
00692         EMData *mask2=mask1->copy();
00693         mask2->mult(-1.0f);
00694         mask2->add(1.0);
00695         mask2->process_inplace("mask.decayedge2d",Dict("width",4));
00696 
00697 /*
00698 
00699 
00700 
00701 mask1=EMData(ys2,ys2,1)
00702                 mask1.to_one()
00703                 mask1.process_inplace("mask.gaussian",{"outer_radius":radius})
00704                 mask2=mask1.copy()*-1+1
00705 #               mask1.process_inplace("mask.decayedge2d",{"width":4})
00706                 mask2.process_inplace("mask.decayedge2d",{"width":4})
00707                 mask1.clip_inplace(Region(-(ys2*(oversamp-1)/2),-(ys2*(oversamp-1)/2),ys,ys))
00708                 mask2.clip_inplace(Region(-(ys2*(oversamp-1)/2),-(ys2*(oversamp-1)/2),ys,ys))
00709                 ratio1=mask1.get_attr("square_sum")/(ys*ys)     #/1.035
00710                 ratio2=mask2.get_attr("square_sum")/(ys*ys)
00711                 masks[(ys,radius)]=(mask1,ratio1,mask2,ratio2)
00712 
00713 
00714 
00715 */
00716 }

void EMAN::SNREvalProcessor::set_params const Dict new_params  )  [inline, virtual]
 

Set the processor parameters using a key/value dictionary.

Parameters:
new_params A dictionary containing the new parameters.

Reimplemented from EMAN::Processor.

Definition at line 430 of file processor.h.

00431                 {
00432                         params = new_params;
00433 //                      sum = params["sum"];
00434 //                      dosqrt = params["sqrt"];
00435 //                      printf("%s %f\n",params.keys()[0].c_str(),lowpass);
00436                 }


Member Data Documentation

int EMAN::SNREvalProcessor::dosqrt [protected]
 

Definition at line 460 of file processor.h.

const string SNREvalProcessor::NAME = "eval.maskedsnr" [static]
 

Definition at line 60 of file processor.cpp.

EMData* EMAN::SNREvalProcessor::sum [protected]
 

Definition at line 459 of file processor.h.


The documentation for this class was generated from the following files:
Generated on Tue Jun 11 13:42:11 2013 for EMAN2 by  doxygen 1.3.9.1