Structural deformable models
Public Member Functions | Protected Member Functions | List of all members
MCIntensitySensor Class Reference

#include <SensorSet.h>

Inheritance diagram for MCIntensitySensor:
Inheritance graph
[legend]
Collaboration diagram for MCIntensitySensor:
Collaboration graph
[legend]

Public Member Functions

int getNChannels () const
 
std::ostream & print (std::ostream &os) const
 
- Public Member Functions inherited from PPSensor
 PPSensor ()
 
virtual float getValue (int x, int y) const
 
virtual Point getGradient (int x, int y) const
 
virtual bool performUpdate ()
 
Sensorassign (const Sensor &rhs)
 
void togglePP (enum PPState state=PP_DO)
 
dword getPPState () const
 
- Public Member Functions inherited from Sensor
virtual ~Sensor ()
 
sensor_cptr getSource ()
 
virtual void changeSource (sensor_cptr _source)
 
void replaceBy (sensor_ptr target)
 
bool assignRef (sensor_cptr rhs)
 
float getValue (const Point &p) const
 get value at position p using nearest neighbour interpolation More...
 
virtual std::vector< float > getMValue (int x, int y) const
 get multi-channel value More...
 
Point2D getGradient (const Point2D &p) const
 get gradient at position p using nearest neighbor interpolation More...
 
float getMax () const
 
float getMin () const
 
float getMinMaxRange () const
 
float getWeightedValue (int x, int y) const
 get max normalized value at discrete position range [0,1] More...
 
Point2D getWeightedGradient (int x, int y) const
 get range weighted gradient at discrete position More...
 
void setCWeights (const std::vector< float > &weights)
 
const std::vector< float > & getCWeights () const
 
void setDirection (const Point &dir)
 
const PointgetDirection () const
 
void setScale (float _scale)
 
float getScale () const
 
bool isModified (dword mask=UPD_ALL) const
 
void setModified (dword mask=UPD_ALL)
 
void unsetModified (dword mask=UPD_ALL)
 
bool isUpdate (dword udMask) const
 
void enableUpdate (dword udMask)
 
void disableUpdate (dword udMask)
 
virtual int getDim1Size () const
 
virtual int getDim2Size () const
 
virtual int getDim3Size () const
 
virtual int getSkip () const
 
bool isValid (int x, int y) const
 
virtual Image< float > createSensorImage () const
 
const std::string & getID () const
 
void setID (const std::string &id)
 
virtual std::ostream & hprint (std::ostream &os, SensorCollection *sc) const
 
void refSuperSensor (sensor_ptr super)
 
void unrefSuperSensor (sensor_ptr super)
 
void invalidateSource ()
 
template<typename Derived >
std::shared_ptr< Derived > shared_from_base ()
 

Protected Member Functions

float calcValue (int x, int y) const
 Computes a scalar product between the multi-channel intensitis and the cweights vector. More...
 
- Protected Member Functions inherited from PPSensor
void fitSheets ()
 
virtual void calcAllValues ()
 
virtual void calcAllGradients ()
 
- Protected Member Functions inherited from Sensor
 Sensor (dword updateMask)
 
 Sensor ()
 
virtual std::vector< float > calcMValue (int x, int y) const
 
virtual Point calcGradient (int x, int y) const
 
virtual void calcMinMax ()
 

Additional Inherited Members

- Public Types inherited from PPSensor
enum  PPState { PP_DONT =0, PP_DO, PP_FORCE }
 
- Public Types inherited from Sensor
enum  UpdateParam {
  UPD_NOTHING =0, UPD_DATA =1, UPD_SCALE =2, UPD_CWEIGHTS =4,
  UPD_DIR =8, UPD_MINMAX =16, UPD_LAST =32, UPD_ALL =0xffffffff
}
 
- Static Public Member Functions inherited from Sensor
static dword getStringNumber (const char *sid)
 
static void getNumberString (char sid[5], dword id)
 
- Protected Attributes inherited from PPSensor
Image< float > values
 caching sheet for sensed values More...
 
Image< Pointgradients
 caching sheet for gradients More...
 
dword doPP
 do preprocessing? More...
 
- Protected Attributes inherited from Sensor
sensor_cptr source
 
float scale
 
std::vector< float > cweights
 multi-channel weights ('color') More...
 
Point dir
 direction parameter More...
 
float maxval
 
float minval
 overall minimum and maximum More...
 
float mean
 
float stdev
 overall mean and stdev More...
 
dword toupdate
 bitflag for updates More...
 
dword updateMask
 bitflag to mask unimportant updates More...
 
std::string m_ID
 
int m_Skip
 
int m_AddSkip
 

Detailed Description

Multi-channel intensity Sensor

Definition at line 37 of file SensorSet.h.

Member Function Documentation

float MCIntensitySensor::calcValue ( int  x,
int  y 
) const
inlineprotectedvirtual

Computes a scalar product between the multi-channel intensitis and the cweights vector.

Implements Sensor.

Definition at line 50 of file SensorSet.h.

References Sensor::cweights, and Sensor::source.

50  {
51  float result = 0.0f;
52  const std::vector<float> mv = source->getMValue(x,y);
53  assert(mv.size() == cweights.size());
54  for(dword i=0; i<mv.size(); i++) { //source->getNChannels()
55  float weight = cweights[i];
56  if(weight!=0.0f) result += mv[i]*weight;
57  }
58  return result;
59  }
std::vector< float > cweights
multi-channel weights (&#39;color&#39;)
Definition: Sensor.h:174
unsigned long dword
Definition: simpletypes.h:6
sensor_cptr source
Definition: Sensor.h:170
int MCIntensitySensor::getNChannels ( ) const
inlinevirtual

Reimplemented from Sensor.

Definition at line 39 of file SensorSet.h.

39 { return 1; }
std::ostream& MCIntensitySensor::print ( std::ostream &  os) const
inlinevirtual

Reimplemented from Sensor.

Definition at line 40 of file SensorSet.h.

References Sensor::cweights, and Sensor::print().

40  {
41  Sensor::print(os) << "m ";
42  for(dword i=0; i<cweights.size(); i++) { //source->getNChannels()
43  if(i) os << " ";
44  os << cweights[i];
45  }
46  return os;
47  }
std::vector< float > cweights
multi-channel weights (&#39;color&#39;)
Definition: Sensor.h:174
unsigned long dword
Definition: simpletypes.h:6
virtual std::ostream & print(std::ostream &os) const
Definition: Sensor.cpp:213

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