EMAN2
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
EMAN::CollapseProcessor Class Reference

f(x): if v-r<x<v+r -> v; if x>v+r -> x-r; if x<v-r -> x+r More...

#include <processor.h>

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

Public Member Functions

string get_name () const
 Get the processor's name. More...
 
void set_params (const Dict &new_params)
 Set the processor parameters using a key/value dictionary. More...
 
TypeDict get_param_types () const
 Get processor parameter information in a dictionary. More...
 
string get_desc () const
 Get the descrition of this specific processor. More...
 
- Public Member Functions inherited from EMAN::RealPixelProcessor
 RealPixelProcessor ()
 
void process_inplace (EMData *image)
 To process an image in-place. More...
 
- Public Member Functions inherited from EMAN::Processor
virtual ~Processor ()
 
virtual EMDataprocess (const EMData *const image)
 To proccess an image out-of-place. More...
 
virtual void process_list_inplace (vector< EMData * > &images)
 To process multiple images using the same algorithm. More...
 
virtual Dict get_params () const
 Get the processor parameters in a key/value dictionary. More...
 

Static Public Member Functions

static ProcessorNEW ()
 
- Static Public Member Functions inherited from EMAN::RealPixelProcessor
static string get_group_desc ()
 
- Static Public Member Functions inherited from EMAN::Processor
static string get_group_desc ()
 Get the description of this group of processors. More...
 
static void EMFourierFilterInPlace (EMData *fimage, Dict params)
 Compute a Fourier-filter processed image in place. More...
 
static EMDataEMFourierFilter (EMData *fimage, Dict params)
 Compute a Fourier-processor processed image without altering the original image. More...
 

Static Public Attributes

static const string NAME = "threshold.compress"
 

Protected Member Functions

void process_pixel (float *x) const
 
- Protected Member Functions inherited from EMAN::RealPixelProcessor
virtual void calc_locals (EMData *)
 
virtual void normalize (EMData *) const
 

Protected Attributes

float range
 
- Protected Attributes inherited from EMAN::RealPixelProcessor
float value
 
float maxval
 
float mean
 
float sigma
 
- Protected Attributes inherited from EMAN::Processor
Dict params
 

Additional Inherited Members

- Public Types inherited from EMAN::Processor
enum  fourier_filter_types {
  TOP_HAT_LOW_PASS , TOP_HAT_HIGH_PASS , TOP_HAT_BAND_PASS , TOP_HOMOMORPHIC ,
  GAUSS_LOW_PASS , GAUSS_HIGH_PASS , GAUSS_BAND_PASS , GAUSS_INVERSE ,
  GAUSS_HOMOMORPHIC , BUTTERWORTH_LOW_PASS , BUTTERWORTH_HIGH_PASS , BUTTERWORTH_HOMOMORPHIC ,
  KAISER_I0 , KAISER_SINH , KAISER_I0_INVERSE , KAISER_SINH_INVERSE ,
  SHIFT , TANH_LOW_PASS , TANH_HIGH_PASS , TANH_HOMOMORPHIC ,
  TANH_BAND_PASS , RADIAL_TABLE , CTF_
}
 Fourier filter Processor type enum. More...
 

Detailed Description

f(x): if v-r<x<v+r -> v; if x>v+r -> x-r; if x<v-r -> x+r

Parameters
rangeThe range about 'value' which will be collapsed to 'value'
valueThe pixel value where the focus of the collapse operation is

Definition at line 3273 of file processor.h.

Member Function Documentation

◆ get_desc()

string EMAN::CollapseProcessor::get_desc ( ) const
inlinevirtual

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 3301 of file processor.h.

3302 {
3303 return "f(x): if v-r<x<v+r -> v; if x>v+r -> x-r; if x<v-r -> x+r";
3304 }

◆ get_name()

string EMAN::CollapseProcessor::get_name ( ) const
inlinevirtual

Get the processor's name.

Each processor is identified by a unique name.

Returns
The processor's name.

Implements EMAN::Processor.

Definition at line 3276 of file processor.h.

3277 {
3278 return NAME;
3279 }
static const string NAME
Definition: processor.h:3306

References NAME.

◆ get_param_types()

TypeDict EMAN::CollapseProcessor::get_param_types ( ) const
inlinevirtual

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 3292 of file processor.h.

3293 {
3294 TypeDict d;
3295 d.put("range", EMObject::FLOAT, "The range about 'value' which will be collapsed to 'value'");
3296 d.put("value", EMObject::FLOAT, "The pixel value where the focus of the collapse operation is");
3297 d.put("clamponly", EMObject::BOOL, "Leaves values outside the collapse range at their original value, setting pixels in the range to 'value'");
3298 return d;
3299 }
TypeDict is a dictionary to store <string, EMObject::ObjectType> pair.
Definition: emobject.h:305
void put(const string &key, EMObject::ObjectType o, const string &desc="")
Definition: emobject.h:330

References EMAN::EMObject::BOOL, EMAN::EMObject::FLOAT, and EMAN::TypeDict::put().

◆ NEW()

static Processor * EMAN::CollapseProcessor::NEW ( )
inlinestatic

Definition at line 3280 of file processor.h.

3281 {
3282 return new CollapseProcessor();
3283 }
f(x): if v-r<x<v+r -> v; if x>v+r -> x-r; if x<v-r -> x+r
Definition: processor.h:3274

◆ process_pixel()

void EMAN::CollapseProcessor::process_pixel ( float *  x) const
inlineprotectedvirtual

Implements EMAN::RealPixelProcessor.

Definition at line 3309 of file processor.h.

3310 {
3311 if (*x>value+range) *x-=range;
3312 else if (*x<value-range) *x+=range;
3313 else *x=value;
3314 }
#define x(i)
Definition: projector.cpp:1517

References range, EMAN::RealPixelProcessor::value, and x.

◆ set_params()

void EMAN::CollapseProcessor::set_params ( const Dict new_params)
inlinevirtual

Set the processor parameters using a key/value dictionary.

Parameters
new_paramsA dictionary containing the new parameters.

Reimplemented from EMAN::RealPixelProcessor.

Definition at line 3285 of file processor.h.

3286 {
3287 params = new_params;
3288 range = params["range"];
3289 value = params["value"];
3290 }

References EMAN::Processor::params, range, and EMAN::RealPixelProcessor::value.

Member Data Documentation

◆ NAME

const string CollapseProcessor::NAME = "threshold.compress"
static

Definition at line 3306 of file processor.h.

Referenced by get_name().

◆ range

float EMAN::CollapseProcessor::range
protected

Definition at line 3315 of file processor.h.

Referenced by process_pixel(), and set_params().


The documentation for this class was generated from the following files: