Base class for normalisation algorithms for image texture vectors. More...
#include <mipa_vector_normaliser.h>
Public Member Functions | |
virtual | ~mipa_vector_normaliser () |
virtual void | normalise (vnl_vector< double > &sample) const =0 |
Normalise the sample. | |
virtual void | normalise (vnl_vector< double > &sample, unsigned) const |
Normalise the sample, preserving the direction of each nfeatures-sized sub-vector. | |
virtual vcl_string | is_a () const =0 |
Name of the class. | |
virtual mipa_vector_normaliser * | clone () const =0 |
Create a copy on the heap and return base class pointer. | |
virtual void | print_summary (vcl_ostream &) const =0 |
Print class to os. | |
virtual void | b_write (vsl_b_ostream &) const =0 |
Save class to binary file stream. | |
virtual void | b_read (vsl_b_istream &)=0 |
Load class from binary file stream. | |
virtual void | config_from_stream (vcl_istream &is, const mbl_read_props_type &extra_props) |
Initialise from a text stream. | |
Static Public Member Functions | |
static vcl_auto_ptr < mipa_vector_normaliser > | new_normaliser_from_stream (vcl_istream &is, const mbl_read_props_type &extra_props) |
Create a concrete mipa_vector_normaliser-derived object, from a text specification. |
Base class for normalisation algorithms for image texture vectors.
Initial vector is processed to normalise it in some way.
Definition at line 19 of file mipa_vector_normaliser.h.
virtual mipa_vector_normaliser::~mipa_vector_normaliser | ( | ) | [inline, virtual] |
Definition at line 23 of file mipa_vector_normaliser.h.
virtual void mipa_vector_normaliser::b_read | ( | vsl_b_istream & | ) | [pure virtual] |
Load class from binary file stream.
Implemented in mipa_block_normaliser, mipa_ms_block_normaliser, mipa_l2norm_vector_normaliser, and mipa_identity_normaliser.
virtual void mipa_vector_normaliser::b_write | ( | vsl_b_ostream & | ) | const [pure virtual] |
Save class to binary file stream.
Implemented in mipa_block_normaliser, mipa_ms_block_normaliser, mipa_l2norm_vector_normaliser, and mipa_identity_normaliser.
virtual mipa_vector_normaliser* mipa_vector_normaliser::clone | ( | ) | const [pure virtual] |
Create a copy on the heap and return base class pointer.
Implemented in mipa_block_normaliser, mipa_ms_block_normaliser, mipa_l2norm_vector_normaliser, and mipa_identity_normaliser.
void mipa_vector_normaliser::config_from_stream | ( | vcl_istream & | is, |
const mbl_read_props_type & | extra_props | ||
) | [virtual] |
Initialise from a text stream.
The default implementation is for attribute-less normalisers, and throws if it finds any data in the stream.
Reimplemented in mipa_block_normaliser, and mipa_ms_block_normaliser.
Definition at line 32 of file mipa_vector_normaliser.cxx.
virtual vcl_string mipa_vector_normaliser::is_a | ( | ) | const [pure virtual] |
Name of the class.
Implemented in mipa_block_normaliser, mipa_ms_block_normaliser, mipa_l2norm_vector_normaliser, and mipa_identity_normaliser.
vcl_auto_ptr< mipa_vector_normaliser > mipa_vector_normaliser::new_normaliser_from_stream | ( | vcl_istream & | is, |
const mbl_read_props_type & | extra_props | ||
) | [static] |
Create a concrete mipa_vector_normaliser-derived object, from a text specification.
Definition at line 48 of file mipa_vector_normaliser.cxx.
virtual void mipa_vector_normaliser::normalise | ( | vnl_vector< double > & | sample | ) | const [pure virtual] |
Normalise the sample.
Implemented in mipa_block_normaliser, mipa_ms_block_normaliser, mipa_l2norm_vector_normaliser, and mipa_identity_normaliser.
virtual void mipa_vector_normaliser::normalise | ( | vnl_vector< double > & | sample, |
unsigned | |||
) | const [inline, virtual] |
Normalise the sample, preserving the direction of each nfeatures-sized sub-vector.
The default implementation assumes that this direction would be preserved anyway.
Definition at line 30 of file mipa_vector_normaliser.h.
virtual void mipa_vector_normaliser::print_summary | ( | vcl_ostream & | ) | const [pure virtual] |
Print class to os.
Implemented in mipa_block_normaliser, mipa_ms_block_normaliser, mipa_l2norm_vector_normaliser, and mipa_identity_normaliser.