Structural deformable models
|
#include <SensorSet.h>
Public Member Functions | |
CombiSensor (int nchannels=0) | |
virtual | ~CombiSensor () |
int | getNChannels () const |
int | getSkip () const |
void | changeSource (sensor_cptr _source) |
std::ostream & | print (std::ostream &os) const |
std::ostream & | hprint (std::ostream &os, SensorCollection *sc) const |
void | clearSources () |
void | setNSources (int n) |
void | setSource (sensor_ptr _source, float weight, int id) |
void | setSource (sensor_ptr _source, float weight) |
Sensor & | assign (const Sensor &rhs) |
void | normalizeInput (bool doit=true) |
bool | isInputNormalized () 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 () |
void | togglePP (enum PPState state=PP_DO) |
dword | getPPState () const |
Public Member Functions inherited from Sensor | |
virtual | ~Sensor () |
sensor_cptr | getSource () |
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 Point & | getDirection () 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 |
bool | isValid (int x, int y) const |
virtual Image< float > | createSensorImage () const |
const std::string & | getID () const |
void | setID (const std::string &id) |
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 intensities and the cweights vector. More... | |
std::vector< float > | calcMValue (int x, int y) const |
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 Point | calcGradient (int x, int y) const |
virtual void | calcMinMax () |
Protected Attributes | |
std::vector< sensor_ptr > | sources |
bool | m_NormalizeInput |
Protected Attributes inherited from PPSensor | |
Image< float > | values |
caching sheet for sensed values More... | |
Image< Point > | gradients |
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 |
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) |
Multi-Sensor
Definition at line 259 of file SensorSet.h.
CombiSensor::CombiSensor | ( | int | nchannels = 0 | ) |
Definition at line 94 of file SensorSet.cpp.
References Sensor::enableUpdate(), setNSources(), Sensor::UPD_CWEIGHTS, and Sensor::UPD_DATA.
|
virtual |
Reimplemented from PPSensor.
Definition at line 188 of file SensorSet.cpp.
References PPSensor::assign(), Sensor::getCWeights(), setNSources(), setSource(), and sources.
|
inlineprotectedvirtual |
Calculate a multi-valued sensor result. The size of the returned vector is the same as getNChannels().
Reimplemented from Sensor.
Definition at line 306 of file SensorSet.h.
References Sensor::cweights, and Sensor::getNChannels().
|
inlineprotectedvirtual |
Computes a scalar product between the multi-channel intensities and the cweights vector.
Implements Sensor.
Definition at line 291 of file SensorSet.h.
References Sensor::cweights.
|
virtual |
Reimplemented from Sensor.
Definition at line 154 of file SensorSet.cpp.
References Sensor::changeSource(), Sensor::enableUpdate(), print(), Sensor::setModified(), setSource(), Sensor::source, sources, TRACE, and Sensor::UPD_MINMAX.
void CombiSensor::clearSources | ( | ) |
Definition at line 111 of file SensorSet.cpp.
References Sensor::cweights, Sensor::setModified(), sources, Sensor::UPD_CWEIGHTS, and Sensor::UPD_DATA.
|
inlinevirtual |
|
inlinevirtual |
Reimplemented from Sensor.
Definition at line 266 of file SensorSet.h.
References Sensor::changeSource(), Sensor::hprint(), Sensor::m_Skip, and IntensitySensor::print().
|
virtual |
Reimplemented from Sensor.
Definition at line 222 of file SensorSet.cpp.
References SensorCollection::isPrinted(), Sensor::m_ID, print(), SensorCollection::setPrinted(), and sources.
|
inline |
Definition at line 285 of file SensorSet.h.
|
inline |
Definition at line 284 of file SensorSet.h.
|
virtual |
Reimplemented from Sensor.
Definition at line 207 of file SensorSet.cpp.
References Sensor::cweights, Sensor::getID(), m_NormalizeInput, and sources.
Referenced by changeSource(), and hprint().
void CombiSensor::setNSources | ( | int | n | ) |
Definition at line 123 of file SensorSet.cpp.
References Sensor::cweights, getZeroSensor(), Sensor::setModified(), sources, Sensor::UPD_CWEIGHTS, and Sensor::UPD_DATA.
Referenced by assign(), CombiSensor(), and setSource().
void CombiSensor::setSource | ( | sensor_ptr | _source, |
float | weight, | ||
int | id | ||
) |
Definition at line 133 of file SensorSet.cpp.
References Sensor::cweights, Sensor::enableUpdate(), getZeroSensor(), Sensor::isUpdate(), Sensor::setModified(), setNSources(), Sensor::source, sources, Sensor::UPD_CWEIGHTS, Sensor::UPD_DATA, and Sensor::UPD_MINMAX.
Referenced by assign(), and changeSource().
|
inline |
Definition at line 281 of file SensorSet.h.
References Sensor::assign().
|
protected |
Definition at line 288 of file SensorSet.h.
Referenced by print().
|
protected |
Definition at line 287 of file SensorSet.h.
Referenced by assign(), changeSource(), clearSources(), hprint(), print(), setNSources(), setSource(), and ~CombiSensor().