A composite channel containing a set of color-band channels. More...
#include <Channels/MultiColorBandChannel.H>
Public Member Functions | |
MultiColorBandChannel (OptionManager &mgr) | |
Construct with standard params. | |
virtual | ~MultiColorBandChannel () |
Destructor. | |
virtual ColorBandChannel & | band (const uint idx) const |
Wraps ComplexChannel's subChan() and casts the result to ColorBandChannel. | |
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) |
ColorBandChannel requires only the color image input. | |
Protected Attributes | |
OModelParam< uint > | itsNumBands |
number of color bands | |
OModelParam< uint > | itsSatBands |
number of saturation bands | |
OModelParam< float > | itsHueSigma |
width of each hue band | |
OModelParam< float > | itsSatSigma |
width of each saturation band |
A composite channel containing a set of color-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 MultiColorBandChannel.H.
MultiColorBandChannel::MultiColorBandChannel | ( | OptionManager & | mgr | ) |
Construct with standard params.
Definition at line 56 of file MultiColorBandChannel.C.
References buildSubChans().
MultiColorBandChannel::~MultiColorBandChannel | ( | ) | [virtual] |
Destructor.
Definition at line 126 of file MultiColorBandChannel.C.
ColorBandChannel & MultiColorBandChannel::band | ( | const uint | idx | ) | const [virtual] |
Wraps ComplexChannel's subChan() and casts the result to ColorBandChannel.
Definition at line 132 of file MultiColorBandChannel.C.
References ComplexChannel::subChan().
void MultiColorBandChannel::buildSubChans | ( | ) | [protected, virtual] |
(re-)build our subchannels
Definition at line 70 of file MultiColorBandChannel.C.
References ComplexChannel::addSubChan(), ModelComponent::getManager(), OModelParam< T >::getVal(), itsNumBands, itsSatBands, makeSharedComp(), MC_RECURSE, and ComplexChannel::removeAllSubChans().
Referenced by MultiColorBandChannel(), and paramChanged().
void MultiColorBandChannel::doInput | ( | const InputFrame & | inframe | ) | [protected, virtual] |
ColorBandChannel requires only the color image input.
Implements ChannelBase.
Definition at line 141 of file MultiColorBandChannel.C.
References ASSERT, Image< T >::begin(), Image< T >::end(), exp(), OModelParam< T >::getVal(), Image< T >::initialized(), itsHueSigma, itsNumBands, itsSatBands, itsSatSigma, mean(), sqrt(), and ComplexChannel::subChan().
void MultiColorBandChannel::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 107 of file MultiColorBandChannel.C.
References buildSubChans(), OModelParam< T >::getVal(), itsNumBands, itsSatBands, and ComplexChannel::numChans().
OModelParam<float> MultiColorBandChannel::itsHueSigma [protected] |
width of each hue band
Definition at line 71 of file MultiColorBandChannel.H.
Referenced by doInput().
OModelParam<uint> MultiColorBandChannel::itsNumBands [protected] |
number of color bands
Definition at line 69 of file MultiColorBandChannel.H.
Referenced by buildSubChans(), doInput(), and paramChanged().
OModelParam<uint> MultiColorBandChannel::itsSatBands [protected] |
number of saturation bands
Definition at line 70 of file MultiColorBandChannel.H.
Referenced by buildSubChans(), doInput(), and paramChanged().
OModelParam<float> MultiColorBandChannel::itsSatSigma [protected] |
width of each saturation band
Definition at line 72 of file MultiColorBandChannel.H.
Referenced by doInput().