A composite channel containing a set of intensity-band channels. More...
#include <Channels/IntensityBandChannel.H>
Public Member Functions | |
IntensityBandChannel (OptionManager &mgr) | |
Construct with standard params. | |
virtual | ~IntensityBandChannel () |
Destructor. | |
virtual IntensityChannel & | band (const uint idx) const |
Wraps ComplexChannel's subChan() and casts the result to IntensityChannel. | |
virtual void | paramChanged (ModelParamBase *const param, const bool valueChanged, ParamClient::ChangeStatus *status) |
Overload so that we can reconfigure when our params get changed. | |
Protected Member Functions | |
virtual void | buildSubChans () |
(re-)build our subchannels | |
virtual void | doInput (const InputFrame &inframe) |
IntensityBandChannel requires only the intensity image input. | |
Protected Attributes | |
OModelParam< uint > | itsNumBands |
number of intensity bands | |
OModelParam< float > | itsSigma |
width of each intensity band |
A composite channel containing a set of intensity-band channels.
This is an example of a homogeneous complex channel. Thus, the JetSpec representation will have an index for the subchannel number, and further indices for the various Jet components (which are identical for all subchannels).
Definition at line 51 of file IntensityBandChannel.H.
IntensityBandChannel::IntensityBandChannel | ( | OptionManager & | mgr | ) |
Construct with standard params.
Definition at line 55 of file IntensityBandChannel.C.
References buildSubChans().
IntensityBandChannel::~IntensityBandChannel | ( | ) | [virtual] |
Destructor.
Definition at line 103 of file IntensityBandChannel.C.
IntensityChannel & IntensityBandChannel::band | ( | const uint | idx | ) | const [virtual] |
Wraps ComplexChannel's subChan() and casts the result to IntensityChannel.
Definition at line 107 of file IntensityBandChannel.C.
References ComplexChannel::subChan().
void IntensityBandChannel::buildSubChans | ( | ) | [protected, virtual] |
(re-)build our subchannels
Definition at line 66 of file IntensityBandChannel.C.
References ComplexChannel::addSubChan(), ModelComponent::getManager(), OModelParam< T >::getVal(), itsNumBands, makeSharedComp(), MC_RECURSE, and ComplexChannel::removeAllSubChans().
Referenced by IntensityBandChannel(), and paramChanged().
void IntensityBandChannel::doInput | ( | const InputFrame & | inframe | ) | [protected, virtual] |
IntensityBandChannel requires only the intensity image input.
Implements ChannelBase.
Definition at line 115 of file IntensityBandChannel.C.
References ASSERT, Image< T >::begin(), Image< T >::end(), exp(), OModelParam< T >::getVal(), Image< T >::initialized(), itsNumBands, itsSigma, sqrt(), and ComplexChannel::subChan().
void IntensityBandChannel::paramChanged | ( | ModelParamBase *const | param, | |
const bool | valueChanged, | |||
ParamClient::ChangeStatus * | status | |||
) | [virtual] |
Overload so that we can reconfigure when our params get changed.
Reimplemented from ModelComponent.
Definition at line 89 of file IntensityBandChannel.C.
References buildSubChans(), OModelParam< T >::getVal(), itsNumBands, and ComplexChannel::numChans().
OModelParam<uint> IntensityBandChannel::itsNumBands [protected] |
number of intensity bands
Definition at line 69 of file IntensityBandChannel.H.
Referenced by buildSubChans(), doInput(), and paramChanged().
OModelParam<float> IntensityBandChannel::itsSigma [protected] |
width of each intensity band
Definition at line 70 of file IntensityBandChannel.H.
Referenced by doInput().