Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

OrientationChannel Class Reference

#include <Channels/OrientationChannel.H>

Inheritance diagram for OrientationChannel:

Inheritance graph
[legend]
Collaboration diagram for OrientationChannel:

Collaboration graph
[legend]
List of all members.

Detailed Description

A composite channel containing a set of orientation-tuned gabor 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 52 of file OrientationChannel.H.

Public Types

enum  InteractType { NONE = 0, SUB_MEAN = 1, CUSTOM = 2 }
 the possible interaction types between orientations More...

Public Member Functions

 OrientationChannel (OptionManager &mgr)
 Construct with standard params.
 OrientationChannel (OptionManager &mgr, const char *tag, const char *desc, const char *gabortag)
 Construct with standard params and tag override.
virtual ~OrientationChannel ()
 Destructor.
virtual GaborChannelgabor (const uint idx) const
 Wraps ComplexChannel's subChan() and casts the result to GaborChannel.
virtual void paramChanged (ModelParamBase *const param, const bool valueChanged, ParamClient::ChangeStatus *status)
 Overload so that we can reconfigure when our params get changed.
InteractType getInteractType ()
 returns the currently set interaction type between the orientation
void setInteractType (InteractType type)
 sets the interaction type between the orientations
std::vector< float > getInteractCoeffs ()
 returns the coefficients vector for interactions between orientations
void setInteractCoeffs (std::vector< float > &coeffs)
 sets the coefficients vector for the interactions between orientations
virtual Image< float > getOutput ()
 compute interactions, then call ComplexChannel::getOutput()

Protected Member Functions

void doInteractions ()
 trigger the interaction computation between the gabor filters
virtual void buildSubChans ()
 (re-)build our subchannels
virtual void parseInteractString (const std::string &value)
 parse the string for the interaction type between orientations
virtual void doInput (const InputFrame &inframe)
 OrientationChannel requires only luminance input.

Protected Attributes

OModelParam< uintitsNumOrients
 number of Gabor subchannels
OModelParam< std::stringitsInteractString
 type of interaction mode between orientations


Member Enumeration Documentation

enum OrientationChannel::InteractType
 

the possible interaction types between orientations

Definition at line 73 of file OrientationChannel.H.


Constructor & Destructor Documentation

OrientationChannel::OrientationChannel OptionManager mgr  ) 
 

Construct with standard params.

Definition at line 58 of file OrientationChannel.C.

References buildSubChans(), and GVX_TRACE.

OrientationChannel::OrientationChannel OptionManager mgr,
const char *  tag,
const char *  desc,
const char *  gabortag
 

Construct with standard params and tag override.

Definition at line 73 of file OrientationChannel.C.

References buildSubChans(), GVX_TRACE, ModelComponent::setDescriptiveName(), ModelComponent::setTagName(), and sformat().

OrientationChannel::~OrientationChannel  )  [virtual]
 

Destructor.

Definition at line 224 of file OrientationChannel.C.

References GVX_TRACE.


Member Function Documentation

void OrientationChannel::buildSubChans  )  [protected, virtual]
 

(re-)build our subchannels

Definition at line 94 of file OrientationChannel.C.

References ComplexChannel::addSubChan(), ModelComponent::getManager(), OModelParam< T >::getVal(), GVX_TRACE, itsNumOrients, LINFO, makeSharedComp(), MC_RECURSE, and ComplexChannel::removeAllSubChans().

Referenced by OrientationChannel(), and paramChanged().

void OrientationChannel::doInput const InputFrame inframe  )  [protected, virtual]
 

OrientationChannel requires only luminance input.

Implements ChannelBase.

Definition at line 239 of file OrientationChannel.C.

References ASSERT, buildPyrLaplacian(), gabor(), rutz::shared_ptr< T >::get(), SingleChannel::getMaxPyrLevel(), SingleChannel::getMinPyrLevel(), InputFrame::grayFloat(), GVX_TRACE, i, Image< T >::initialized(), ChannelBase::input(), LINFO, ComplexChannel::numChans(), and InputFrame::pyrCache().

void OrientationChannel::doInteractions  )  [protected]
 

trigger the interaction computation between the gabor filters

Definition at line 268 of file OrientationChannel.C.

References ASSERT, clampedDiff(), doLowThresh(), gabor(), SingleChannel::getOutput(), OModelParam< T >::getVal(), GVX_TRACE, i, ImageSet< T >::isEmpty(), itsInteractString, LFATAL, LINFO, mean(), and ComplexChannel::numChans().

Referenced by getOutput().

GaborChannel & OrientationChannel::gabor const uint  idx  )  const [virtual]
 

Wraps ComplexChannel's subChan() and casts the result to GaborChannel.

Definition at line 230 of file OrientationChannel.C.

References GVX_TRACE, and ComplexChannel::subChan().

Referenced by doInput(), and doInteractions().

std::vector< float > OrientationChannel::getInteractCoeffs  ) 
 

returns the coefficients vector for interactions between orientations

Definition at line 387 of file OrientationChannel.C.

References GVX_TRACE.

OrientationChannel::InteractType OrientationChannel::getInteractType  ) 
 

returns the currently set interaction type between the orientation

Definition at line 373 of file OrientationChannel.C.

References GVX_TRACE.

Image< float > OrientationChannel::getOutput  )  [virtual]
 

compute interactions, then call ComplexChannel::getOutput()

Reimplemented from ComplexChannel.

Definition at line 361 of file OrientationChannel.C.

References doInteractions(), ComplexChannel::getOutput(), and GVX_TRACE.

void OrientationChannel::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 205 of file OrientationChannel.C.

References buildSubChans(), OModelParam< T >::getVal(), GVX_TRACE, itsInteractString, itsNumOrients, ComplexChannel::numChans(), ModelComponent::paramChanged(), and parseInteractString().

void OrientationChannel::parseInteractString const std::string value  )  [protected, virtual]
 

parse the string for the interaction type between orientations

Definition at line 142 of file OrientationChannel.C.

References coeff, GVX_TRACE, LDEBUG, and LFATAL.

Referenced by paramChanged().

void OrientationChannel::setInteractCoeffs std::vector< float > &  coeffs  ) 
 

sets the coefficients vector for the interactions between orientations

Definition at line 394 of file OrientationChannel.C.

References GVX_TRACE.

void OrientationChannel::setInteractType InteractType  type  ) 
 

sets the interaction type between the orientations

Definition at line 380 of file OrientationChannel.C.

References GVX_TRACE.


Member Data Documentation

OModelParam<std::string> OrientationChannel::itsInteractString [protected]
 

type of interaction mode between orientations

Definition at line 106 of file OrientationChannel.H.

Referenced by doInteractions(), and paramChanged().

OModelParam<uint> OrientationChannel::itsNumOrients [protected]
 

number of Gabor subchannels

Definition at line 94 of file OrientationChannel.H.

Referenced by buildSubChans(), and paramChanged().


The documentation for this class was generated from the following files:
Generated on Mon Nov 23 15:50:42 2009 for iLab Neuromorphic Vision Toolkit by  doxygen 1.4.4