OSSIM - Open Source Software Image Map
Version 1.9.0 (20180803)
|
#include <ossimKMeansFilter.h>
Public Types | |
enum | ThresholdMode { NONE =0, MEAN =1, SIGMA_WEIGHTED =2, VARIANCE_WEIGHTED =3 } |
![]() | |
enum | ossimConnectableObjectDirectionType { CONNECTABLE_DIRECTION_NONE = 0, CONNECTABLE_DIRECTION_INPUT = 1, CONNECTABLE_DIRECTION_OUTPUT = 2 } |
typedef std::vector< ossimRefPtr< ossimConnectableObject > > | ConnectableObjectList |
Public Member Functions | |
ossimKMeansFilter () | |
ossimKMeansFilter (ossimImageSource *input_source, ossimMultiBandHistogram *histogram=0) | |
Quicker constructor handles connections to source and optional histogram. More... | |
~ossimKMeansFilter () | |
virtual ossimRefPtr< ossimImageData > | getTile (const ossimIrect &origin, ossim_uint32 resLevel=0) |
virtual ossimScalarType | getOutputScalarType () const |
This will be used to query the output pixel type of the tile source. More... | |
void | setInputHistogram (ossimMultiBandHistogram *histo) |
Sets the input source's histogram for quicker K-means analysis. More... | |
void | setNumClusters (ossim_uint32 K) |
Defines how many classification clusters will be resolved. More... | |
void | setClusterPixelValues (const ossim_uint32 *dns, ossim_uint32 K) |
Optionally define the output digital numbers for each cluster to be used for remapping the input pixels. More... | |
void | setThresholdMode (ThresholdMode mode) |
Special use case is to use K-means for thresholding an image into two values based on the histogram's clustering. More... | |
const ossimKMeansClustering * | getBandClassifier (ossim_uint32 band=0) const |
Callers may be interested in reporting the cluster statistics computed by this class. More... | |
virtual double | getMinPixelValue (ossim_uint32 band=0) const |
Returns the min pixel of the band. More... | |
virtual double | getMaxPixelValue (ossim_uint32 band=0) const |
Returns the max pixel of the band. More... | |
virtual void | initialize () |
virtual bool | saveState (ossimKeywordlist &kwl, const char *prefix=NULL) const |
Method to save the state of an object to a keyword list. More... | |
virtual bool | loadState (const ossimKeywordlist &kwl, const char *prefix=NULL) |
Method to the load (recreate) the state of an object from a keyword list. More... | |
![]() | |
ossimImageSourceFilter (ossimObject *owner=NULL) | |
ossimImageSourceFilter (ossimImageSource *inputSource) | |
ossimImageSourceFilter (ossimObject *owner, ossimImageSource *inputSource) | |
virtual void | getOutputBandList (std::vector< ossim_uint32 > &bandList) const |
virtual ossim_uint32 | getNumberOfInputBands () const |
bool | canConnectMyInputTo (ossim_int32 inputIndex, const ossimConnectableObject *object) const |
required to be overriden by derived classes More... | |
virtual void | connectInputEvent (ossimConnectionEvent &event) |
virtual void | disconnectInputEvent (ossimConnectionEvent &event) |
virtual void | propertyEvent (ossimPropertyEvent &event) |
virtual void | refreshEvent (ossimRefreshEvent &event) |
virtual void | setProperty (ossimRefPtr< ossimProperty > property) |
virtual ossimRefPtr< ossimProperty > | getProperty (const ossimString &name) const |
virtual void | getPropertyNames (std::vector< ossimString > &propertyNames) const |
![]() | |
ossimImageSource (ossimObject *owner=0) | |
ossimImageSource (ossimObject *owner, ossim_uint32 inputListSize, ossim_uint32 outputListSize, bool inputListIsFixedFlag=true, bool outputListIsFixedFlag=true) | |
virtual | ~ossimImageSource () |
virtual ossimRefPtr< ossimImageData > | getTile (const ossimIpt &origin, ossim_uint32 resLevel=0) |
virtual bool | getTile (ossimImageData *result, ossim_uint32 resLevel=0) |
Method to get a tile. More... | |
virtual ossimObject * | getObject () |
For RTTI support. More... | |
virtual const ossimObject * | getObject () const |
For RTTI support. More... | |
virtual void | getDecimationFactor (ossim_uint32 resLevel, ossimDpt &result) const |
Will return the decimation factor for the given resolution level. More... | |
virtual void | getDecimationFactors (std::vector< ossimDpt > &decimations) const |
Will return an array of all decimations for each resolution level. More... | |
virtual ossim_uint32 | getNumberOfDecimationLevels () const |
Will return the number of resolution levels. More... | |
virtual ossim_uint32 | getNumberOfOutputBands () const |
Returns the number of bands in a tile returned from this TileSource. More... | |
virtual ossim_uint32 | getTileWidth () const |
Returns the default processing tile width. More... | |
virtual ossim_uint32 | getTileHeight () const |
Returns the default processing tile height. More... | |
virtual double | getNullPixelValue (ossim_uint32 band=0) const |
Each band has a null pixel associated with it. More... | |
virtual ossimIrect | getBoundingRect (ossim_uint32 resLevel=0) const |
This will return the bounding rect of the source. More... | |
virtual void | getBoundingRect (ossimIrect &rect, ossim_uint32 resLevel=0) const |
Gets the bounding rectangle of the source. More... | |
virtual void | getValidImageVertices (std::vector< ossimIpt > &validVertices, ossimVertexOrdering ordering=OSSIM_CLOCKWISE_ORDER, ossim_uint32 resLevel=0) const |
ordering specifies how the vertices should be arranged. More... | |
virtual ossimRefPtr< ossimImageGeometry > | getImageGeometry () |
Returns the image geometry object associated with this tile source or NULL if not defined. More... | |
virtual void | setImageGeometry (const ossimImageGeometry *geom) |
Default implementation sets geometry of the first input to the geometry specified. More... | |
virtual void | saveImageGeometry () const |
Default method to call input's saveImageGeometry. More... | |
virtual void | saveImageGeometry (const ossimFilename &geometry_file) const |
Default method to call input's saveImageGeometry. More... | |
virtual bool | isIndexedData () const |
![]() | |
ossimSource (ossimObject *owner=0) | |
ossimSource (ossimObject *owner, ossim_uint32 inputListSize, ossim_uint32 outputListSize, bool inputListIsFixedFlag=true, bool outputListIsFixedFlag=true) | |
virtual | ~ossimSource () |
virtual bool | isSourceEnabled () const |
virtual void | enableSource () |
virtual void | disableSource () |
virtual bool | getEnableFlag () const |
virtual void | setEnableFlag (bool flag) |
virtual bool | isInitialized () const |
virtual void | setInitializedFlag (bool flag) |
virtual std::ostream & | print (std::ostream &out) const |
Outputs theErrorStatus as an ossimErrorCode and an ossimString. More... | |
![]() | |
ossimConnectableObject (ossimObject *owner=0) | |
Base constructor of this object. More... | |
ossimConnectableObject (ossimObject *owner, ossim_int32 inputListSize, ossim_int32 outputListSize, bool inputListIsFixedFlag=true, bool outputListIsFixedFlag=true) | |
virtual | ~ossimConnectableObject () |
void | setId (const ossimId &id) |
All connectable objects will have id's. More... | |
const ossimId & | getId () const |
Will allow us to get this object's id. More... | |
const ossimObject * | getOwner () const |
Fetches the current owner, most likely a container but not limited to one. More... | |
virtual void | changeOwner (ossimObject *owner) |
Permits changing the object's owner. More... | |
virtual void | setDescription (const ossimString &description) |
virtual ossimString | getDescription () const |
virtual bool | isConnected (ossimConnectableObjectDirectionType direction=CONNECTABLE_DIRECTION_INPUT) const |
will check the direction specified to see if all slots are full. More... | |
OSSIM_DEPRECATE_METHOD (virtual ossimConnectableObject *findConnectableObject(const ossimId &id)) | |
OSSIM_DEPRECATE_METHOD (virtual ossimConnectableObject *findObjectOfType(RTTItypeid typeId, ossimConnectableObjectDirectionType directionType, bool recurse=true)) | |
OSSIM_DEPRECATE_METHOD (virtual ossimConnectableObject *findObjectOfType(const ossimString &obj, ossimConnectableObjectDirectionType directionType, bool recurse=true)) | |
OSSIM_DEPRECATE_METHOD (virtual ossimConnectableObject *findInputObjectOfType(const ossimString &className)) | |
virtual ossim_int32 | findInputIndex (const ossimConnectableObject *object) |
Return a valid index of the input list if the passed in object is found else return -1. More... | |
virtual ossim_int32 | findInputIndex (const ossimId &id) |
Return a valid index of the input list if the passed id is found else return -1. More... | |
virtual ossim_int32 | findOutputIndex (const ossimConnectableObject *object) |
Return a valid index of the output list if the passed in object is found else return -1. More... | |
virtual ossim_int32 | findOutputIndex (const ossimId &id) |
Return a valid index of the output list if the passed in object is found else return -1. More... | |
virtual ossim_int32 | getMyInputIndexToConnectTo (ossimConnectableObject *object) const |
Should return the first available index to connect to. More... | |
virtual ossim_int32 | getMyOutputIndexToConnectTo (ossimConnectableObject *object) const |
Should return the first available index to connect to. More... | |
virtual bool | canConnectMyOutputTo (ossim_int32 myOutputIndex, const ossimConnectableObject *object) const |
default implementation is to allow anyone to connect to us. More... | |
virtual void | disconnect (ossimConnectableObject *object=0) |
Will disconnect the object passed in. More... | |
virtual void | disconnect (const ossimId &id) |
Will disconnect the object passed in. More... | |
virtual ossimRefPtr< ossimConnectableObject > | disconnectMyInput (ossim_int32 inputIndex, bool disconnectOutputFlag=true, bool createEventFlag=true) |
Will disconnect the object at the given input index and generate a connection event. More... | |
virtual void | disconnectMyInput (ossimConnectableObject *input, bool disconnectOutputFlag=true, bool createEventFlag=true) |
Finds the index of the passed in input and calls disconnectMyInput(inputIndex, disconnectOutputFlag, createEventFlag);. More... | |
virtual void | disconnectMyInputs (ConnectableObjectList &inputList, bool disconnectOutputFlag=true, bool createEventFlag=true) |
virtual ossimRefPtr< ossimConnectableObject > | disconnectMyOutput (ossim_int32 outputIndex, bool disconnectInputFlag=true, bool createEventFlag=true) |
Will disconnect the object at the given output index and generate a connection event. More... | |
virtual void | disconnectMyOutput (ossimConnectableObject *output, bool disconnectInputFlag=true, bool createEventFlag=true) |
Will disconnect the output object. More... | |
virtual void | disconnectMyOutputs (ConnectableObjectList &outputList, bool disconnectOutputFlag=true, bool createEventFlag=true) |
virtual void | disconnectAllInputs () |
Will disconnect all of the input objects. More... | |
virtual void | disconnectAllOutputs () |
Will disconnect all of the output objects. More... | |
virtual ossim_int32 | connectMyInputTo (ossimConnectableObject *inputObject, bool makeOutputConnection=true, bool createEventFlag=true) |
Will try to connect this objects input to the passed in object. More... | |
virtual ossim_int32 | connectMyInputTo (ossim_int32 inputIndex, ossimConnectableObject *inputObject, bool makeOutputConnection=true, bool createEventFlag=true) |
Will connect the specified input to the passed in object. More... | |
virtual bool | connectMyInputTo (ConnectableObjectList &inputList, bool makeOutputConnection=true, bool createEventFlag=true) |
virtual ossim_int32 | connectMyOutputTo (ossimConnectableObject *outputObject, bool makeInputConnection=true, bool createEventFlag=true) |
Will try to connect this objects output to the passed in object. More... | |
virtual bool | connectMyOutputTo (ConnectableObjectList &outputList, bool makeInputConnection=true, bool createEventFlag=true) |
virtual bool | connectInputList (ConnectableObjectList &inputList) |
Will disconnect itself from all inputs and reset to the passed in input list. More... | |
virtual bool | connectOutputList (ConnectableObjectList &outputList) |
Will disconnect itself from all outputs and reset to the passed in output list. More... | |
virtual ossim_uint32 | getNumberOfInputs () const |
Returns the number of input objects. More... | |
virtual ossim_uint32 | getNumberOfOutputs () const |
Return the number of output objects. More... | |
ossimConnectableObject * | getInput (ossim_uint32 index=0) |
returns the object at the specified index. More... | |
const ossimConnectableObject * | getInput (ossim_uint32 index=0) const |
returns the object at the specified index. More... | |
ossimConnectableObject * | getOutput (ossim_uint32 index=0) |
returns the object at the specified index. More... | |
const ossimConnectableObject * | getOutput (ossim_uint32 index=0) const |
returns the object at the specified index. More... | |
virtual void | setNumberOfInputs (ossim_int32 numberOfInputs) |
Will set the number of inputs. More... | |
virtual bool | getInputListIsFixedFlag () const |
virtual bool | getOutputListIsFixedFlag () const |
virtual void | setNumberOfOutputs (ossim_int32 numberOfInputs) |
Will set the number of outputs. More... | |
const ConnectableObjectList & | getInputList () const |
const ConnectableObjectList & | getOutputList () const |
ConnectableObjectList & | getInputList () |
ConnectableObjectList & | getOutputList () |
OSSIM_DEPRECATE_METHOD (virtual void findAllObjectsOfType(ConnectableObjectList &result, const RTTItypeid &typeInfo, bool recurse=true)) | |
OSSIM_DEPRECATE_METHOD (virtual void findAllObjectsOfType(ConnectableObjectList &result, const ossimString &className, bool recurse=true)) | |
virtual void | propagateEventToOutputs (ossimEvent &event) |
virtual void | propagateEventToInputs (ossimEvent &event) |
virtual void | setProperty (const ossimString &name, const ossimString &value) |
virtual ossim_uint32 | saveStateOfAllInputs (ossimKeywordlist &kwl, bool saveThisStateFlag=true, ossim_uint32 objectIndex=1, const char *prefix=0) const |
Save the state of all inputs to a keyword list. More... | |
virtual bool | fillContainer (ossimConnectableContainer &container) |
Inserts this object and all of its children and inputs into the container provided. More... | |
bool | moveInputUp (const ossimId &id) |
Moves the input connection matching id up one in the connection list. More... | |
bool | moveInputDown (const ossimId &id) |
Moves the input connection matching id down one in the connection list. More... | |
bool | moveInputToTop (const ossimId &id) |
Moves the input connection matching id to the top of the connection list. More... | |
bool | moveInputToBottom (const ossimId &id) |
Moves the input connection matching id to the bottom of the connection list. More... | |
virtual void | accept (ossimVisitor &visitor) |
We will add a visitor interface for all connectable objects. More... | |
![]() | |
ossimObject () | |
virtual | ~ossimObject () |
virtual ossimObject * | dup () const |
virtual ossimString | getShortName () const |
virtual ossimString | getLongName () const |
virtual ossimString | getClassName () const |
virtual RTTItypeid | getType () const |
virtual bool | canCastTo (ossimObject *obj) const |
virtual bool | canCastTo (const RTTItypeid &id) const |
virtual bool | canCastTo (const ossimString &parentClassName) const |
virtual bool | isEqualTo (const ossimObject &obj, ossimCompareType compareType=OSSIM_COMPARE_FULL) const |
![]() | |
ossimReferenced () | |
ossimReferenced (const ossimReferenced &) | |
ossimReferenced & | operator= (const ossimReferenced &) |
void | ref () const |
increment the reference count by one, indicating that this object has another pointer which is referencing it. More... | |
void | unref () const |
decrement the reference count by one, indicating that a pointer to this object is referencing it. More... | |
void | unref_nodelete () const |
decrement the reference count by one, indicating that a pointer to this object is referencing it. More... | |
int | referenceCount () const |
![]() | |
ossimListenerManager () | |
virtual | ~ossimListenerManager () |
virtual void | fireEvent (ossimEvent &event) |
virtual bool | addListener (ossimListener *listener) |
virtual bool | removeListener (ossimListener *listener) |
virtual bool | findListener (ossimListener *listener) |
![]() | |
ossimPropertyInterface () | |
virtual | ~ossimPropertyInterface () |
virtual ossimString | getPropertyValueAsString (const ossimString &name) const |
void | getPropertyList (std::vector< ossimRefPtr< ossimProperty > > &propertyList) const |
void | setProperties (std::vector< ossimRefPtr< ossimProperty > > &propertyList) |
![]() | |
ossimErrorStatusInterface () | |
virtual | ~ossimErrorStatusInterface () |
virtual ossimErrorCode | getErrorStatus () const |
virtual ossimString | getErrorStatusString () const |
virtual void | setErrorStatus (ossimErrorCode error_status) const |
virtual void | setErrorStatus () const |
virtual void | clearErrorStatus () const |
bool | hasError () const |
![]() | |
ossimConnectableObjectListener () | |
virtual | ~ossimConnectableObjectListener () |
virtual void | processEvent (ossimEvent &event) |
ProcessEvent. More... | |
virtual void | objectDestructingEvent (ossimObjectDestructingEvent &) |
virtual void | connectionEvent (ossimConnectionEvent &) |
virtual void | disconnectOutputEvent (ossimConnectionEvent &) |
virtual void | connectOutputEvent (ossimConnectionEvent &) |
virtual void | addObjectEvent (ossimContainerEvent &) |
virtual void | removeObjectEvent (ossimContainerEvent &) |
virtual void | containerEvent (ossimContainerEvent &) |
![]() | |
ossimListener () | |
virtual | ~ossimListener () |
void | enableListener () |
void | disableListener () |
void | setListenerEnableFlag (bool flag) |
bool | isListenerEnabled () const |
bool | getListenerEnableFlag () const |
Protected Member Functions | |
bool | computeKMeans () |
void | allocate () |
Called on first getTile, will initialize all data needed. More... | |
void | clear () |
![]() | |
virtual | ~ossimImageSourceFilter () |
![]() | |
ossimImageSource (const ossimImageSource &rhs) | |
const ossimImageSource & | operator= (const ossimImageSource &) |
![]() | |
ossimSource (const ossimSource &rhs) | |
const ossimSource & | operator= (const ossimSource &rhs) |
![]() | |
ossimConnectableObject * | findObjectOfType (ConnectableObjectList *connectableList, ossimVisitor &visitor) |
![]() | |
virtual | ~ossimReferenced () |
![]() | |
ossimListenerManager (const ossimListenerManager &rhs) | |
Definition at line 50 of file ossimKMeansFilter.h.
Enumerator | |
---|---|
NONE | |
MEAN | |
SIGMA_WEIGHTED | |
VARIANCE_WEIGHTED |
Definition at line 53 of file ossimKMeansFilter.h.
ossimKMeansFilter::ossimKMeansFilter | ( | ) |
Definition at line 23 of file ossimKMeansFilter.cpp.
References ossimConnectableObject::setDescription().
ossimKMeansFilter::ossimKMeansFilter | ( | ossimImageSource * | input_source, |
ossimMultiBandHistogram * | histogram = 0 |
||
) |
Quicker constructor handles connections to source and optional histogram.
Definition at line 34 of file ossimKMeansFilter.cpp.
References ossimConnectableObject::setDescription().
ossimKMeansFilter::~ossimKMeansFilter | ( | ) |
Definition at line 47 of file ossimKMeansFilter.cpp.
|
protected |
Called on first getTile, will initialize all data needed.
Definition at line 146 of file ossimKMeansFilter.cpp.
References ossimImageDataFactory::create(), ossimImageSourceFilter::getNumberOfInputBands(), initialize(), ossimImageData::initialize(), ossimImageDataFactory::instance(), m_classifiers, m_initialized, m_numClusters, m_tile, max, min, ossimImageData::setMaxPix(), ossimImageData::setMinPix(), and ossimRefPtr< T >::valid().
Referenced by getTile().
|
protected |
Definition at line 286 of file ossimKMeansFilter.cpp.
References m_classifiers, m_initialized, and m_numClusters.
Referenced by setNumClusters().
|
protected |
Definition at line 220 of file ossimKMeansFilter.cpp.
References ossimKMeansClustering::computeKmeans(), ossimHistogram::GetCounts(), ossimMultiBandHistogram::getHistogram(), ossimKMeansClustering::getMean(), ossimImageSourceFilter::getNumberOfInputBands(), ossimKMeansClustering::getNumClusters(), ossimHistogram::GetRes(), ossimKMeansClustering::getSigma(), ossimHistogram::GetVals(), initialize(), m_classifiers, m_histogram, m_initialized, m_numClusters, m_thresholdMode, m_thresholds, MEAN, NONE, ossimKMeansClustering::setNumClusters(), ossimKMeansClustering::setPopulations(), ossimKMeansClustering::setSamples(), ossimKMeansClustering::setVerbose(), SIGMA_WEIGHTED, ossimRefPtr< T >::valid(), and VARIANCE_WEIGHTED.
Referenced by getTile().
const ossimKMeansClustering * ossimKMeansFilter::getBandClassifier | ( | ossim_uint32 | band = 0 | ) | const |
Callers may be interested in reporting the cluster statistics computed by this class.
Returns the clusters (of size K) for the band index specified.
Definition at line 331 of file ossimKMeansFilter.cpp.
References m_classifiers.
|
virtual |
Returns the max pixel of the band.
Reimplemented from ossimImageSource.
Definition at line 414 of file ossimKMeansFilter.cpp.
References m_maxPixelValue.
|
virtual |
Returns the min pixel of the band.
Reimplemented from ossimImageSource.
Definition at line 407 of file ossimKMeansFilter.cpp.
References m_minPixelValue.
|
virtual |
This will be used to query the output pixel type of the tile source.
Please ignore the argument. It will soon be removed.
Reimplemented from ossimImageSource.
Definition at line 395 of file ossimKMeansFilter.cpp.
References m_numClusters, OSSIM_SCALAR_UNKNOWN, OSSIM_UINT16, and OSSIM_UINT8.
|
virtual |
Reimplemented from ossimImageSource.
Definition at line 58 of file ossimKMeansFilter.cpp.
References allocate(), computeKMeans(), ossimImageData::getBuf(), ossimKMeansClustering::getCluster(), ossimDataObject::getDataObjectStatus(), ossimMultiBandHistogram::getHistogram(), ossimImageSource::getNullPixelValue(), ossimImageSourceFilter::getNumberOfInputBands(), ossimImageData::getPix(), ossimImageSource::getTile(), initialize(), ossimIrect::lr(), m_classifiers, m_histogram, m_initialized, m_numClusters, m_pixelValues, m_thresholds, m_tile, ossimImageData::makeBlank(), ossimKMeansClustering::Cluster::max, ossimKMeansClustering::Cluster::min, OSSIM_EMPTY, ossimImageData::setImageRectangle(), ossimImageSourceFilter::theInputConnection, ossimIrect::ul(), ossimImageData::validate(), ossimIpt::x, and ossimIpt::y.
|
virtual |
Reimplemented from ossimImageSourceFilter.
Definition at line 181 of file ossimKMeansFilter.cpp.
References ossimConnectableObject::connectMyInputTo(), ossimImageHistogramSource::execute(), ossimMultiBandHistogram::getHistogram(), ossimImageHistogramSource::getHistogram(), ossimMultiResLevelHistogram::getMultiBandHistogram(), ossimImageSourceFilter::getNumberOfInputBands(), ossimHistogram::GetRangeMax(), ossimHistogram::GetRangeMin(), ossimImageSourceFilter::initialize(), m_histogram, m_initialized, m_maxPixelValue, m_minPixelValue, m_tile, OSSIM_HISTO_MODE_FAST, ossimImageHistogramSource::setComputationMode(), ossimImageHistogramSource::setMaxNumberOfRLevels(), ossimImageSourceFilter::theInputConnection, and ossimRefPtr< T >::valid().
Referenced by allocate(), computeKMeans(), and getTile().
|
virtual |
Method to the load (recreate) the state of an object from a keyword list.
Return true if ok or false on error.
Reimplemented from ossimImageSourceFilter.
Definition at line 383 of file ossimKMeansFilter.cpp.
References ossimImageSourceFilter::loadState().
|
virtual |
Method to save the state of an object to a keyword list.
Return true if ok or false on error.
Reimplemented from ossimImageSourceFilter.
Definition at line 338 of file ossimKMeansFilter.cpp.
References ossimKeywordlist::add(), ossimString::chars(), ossimKMeansClustering::getCluster(), ossimImageSourceFilter::getNumberOfInputBands(), m_classifiers, m_numClusters, ossimKMeansClustering::Cluster::max, ossimKMeansClustering::Cluster::mean, ossimKMeansClustering::Cluster::min, ossimImageSourceFilter::saveState(), ossimKMeansClustering::Cluster::sigma, and ossimString::toString().
void ossimKMeansFilter::setClusterPixelValues | ( | const ossim_uint32 * | dns, |
ossim_uint32 | K | ||
) |
Optionally define the output digital numbers for each cluster to be used for remapping the input pixels.
K is the size of the array, resetting any previously set K value. If thresholding enabled (see setThreshold()), then only the first two values are referenced. LIMITATION: Curently, only UInt8 supported, so dns and K values must be 0-255.
Definition at line 318 of file ossimKMeansFilter.cpp.
References m_numClusters, m_pixelValues, and setNumClusters().
void ossimKMeansFilter::setInputHistogram | ( | ossimMultiBandHistogram * | histo | ) |
Sets the input source's histogram for quicker K-means analysis.
Definition at line 51 of file ossimKMeansFilter.cpp.
References m_histogram, m_initialized, and m_thresholds.
void ossimKMeansFilter::setNumClusters | ( | ossim_uint32 | K | ) |
Defines how many classification clusters will be resolved.
The input connection should be made prior so that the number of bands is known. LIMITATION: Curently, only K values < 256 are supported.
Definition at line 298 of file ossimKMeansFilter.cpp.
References clear(), m_numClusters, and m_pixelValues.
Referenced by setClusterPixelValues().
void ossimKMeansFilter::setThresholdMode | ( | ThresholdMode | mode | ) |
Special use case is to use K-means for thresholding an image into two values based on the histogram's clustering.
The threshold point can be left at the default boundary between clusters, or alternatively, can be computed according to predefined modes. Currently support the following modes (where mn and sn is the mean and sigma of nth cluster, respectively):
NONE Implies MEAN for multiple clusters. MEAN (m0 + m1)/2 SIGMA_WEIGHTED (s1*m0 + s0*m1)/(s0 + s1) VARIANCE_WEIGHTED (s1*s1*m0 + s0*s0*m1)/(s0*s0 + s1*s1)
Definition at line 293 of file ossimKMeansFilter.cpp.
References m_thresholdMode.
|
protected |
Definition at line 124 of file ossimKMeansFilter.h.
Referenced by allocate(), clear(), computeKMeans(), getBandClassifier(), getTile(), and saveState().
|
protected |
Have num_bands entries.
Definition at line 125 of file ossimKMeansFilter.h.
Referenced by computeKMeans(), getTile(), initialize(), and setInputHistogram().
|
protected |
Definition at line 132 of file ossimKMeansFilter.h.
Referenced by allocate(), clear(), computeKMeans(), getTile(), initialize(), and setInputHistogram().
|
protected |
Definition at line 129 of file ossimKMeansFilter.h.
Referenced by getMaxPixelValue(), and initialize().
|
protected |
Definition at line 128 of file ossimKMeansFilter.h.
Referenced by getMinPixelValue(), and initialize().
|
protected |
Definition at line 126 of file ossimKMeansFilter.h.
Referenced by allocate(), clear(), computeKMeans(), getOutputScalarType(), getTile(), saveState(), setClusterPixelValues(), and setNumClusters().
|
protected |
Definition at line 131 of file ossimKMeansFilter.h.
|
protected |
Definition at line 127 of file ossimKMeansFilter.h.
Referenced by getTile(), setClusterPixelValues(), and setNumClusters().
|
protected |
Definition at line 133 of file ossimKMeansFilter.h.
Referenced by computeKMeans(), and setThresholdMode().
|
protected |
Definition at line 134 of file ossimKMeansFilter.h.
Referenced by computeKMeans(), getTile(), and setInputHistogram().
|
protected |
Definition at line 130 of file ossimKMeansFilter.h.
Referenced by allocate(), getTile(), and initialize().