Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
vil_pyramid_image_view< T > Class Template Reference

#include <vil_pyramid_image_view.h>

List of all members.

Public Types

typedef T pixel_type
 The pixel type of the images.
typedef vil_image_view_base_sptr iterator

Public Member Functions

 vil_pyramid_image_view ()
 Default constructor, creates an empty list of pyramid.
 vil_pyramid_image_view (vil_image_view_base_sptr image)
 Creates a pyramid with one image only and its scale is set to 1.0 (biggest).
 vil_pyramid_image_view (const vil_image_view< T > &image)
 Creates a pyramid with one image only and its scale is set to 1.0 (biggest).
 vil_pyramid_image_view (vil_image_view_base_sptr image, unsigned nlevels)
 Creates a pyramid of nlevels and sets the image at the scale 1.0.
 vil_pyramid_image_view (unsigned levels, unsigned ni, unsigned nj, unsigned n_planes=1)
 creates a pyramid of empty image views.
 vil_pyramid_image_view (vcl_vector< vil_image_view_base_sptr > const &images, vcl_vector< double > const &scales)
 Creates a pyramid of given image views with associated scales.
 vil_pyramid_image_view (const vil_pyramid_image_view< T > &rhs)
 Copy constructor.
virtual ~vil_pyramid_image_view ()
void add_view (vil_image_view_base_sptr &image, double scale)
 adds a view to the list of view sorted in the right place based on the scale in descending order.
vil_image_view_base_sptr get_view (unsigned level, double &scale)
double scale (unsigned level)
void set_max_level (unsigned l)
unsigned max_levels () const
unsigned nlevels () const
 Number of pyramid levels.
const vil_pyramid_image_view< T > & operator= (const vil_pyramid_image_view< T > &rhs)
vil_image_view< T > & operator() (unsigned l)
iterator begin ()
iterator end ()

Protected Member Functions

bool limit_reached (unsigned i, unsigned j)
 returns true if the image size is < 4x4 or the max_level is reached.
void scale_down (const vil_image_view< T > &, vil_image_view_base_sptr &image_out)
 generates an image half the size of the given image and takes the averages.

Protected Attributes

vcl_vector
< vil_image_view_base_sptr
images_
 the list of image vieas.
vcl_vector< double > scales_
 the associated scales of images, scales_.size() is always equals to images_.size().
unsigned nlevels_
unsigned max_levels_

Detailed Description

template<class T>
class vil_pyramid_image_view< T >

Definition at line 25 of file vil_pyramid_image_view.h.


Member Typedef Documentation

template<class T>
typedef vil_image_view_base_sptr vil_pyramid_image_view< T >::iterator

Definition at line 80 of file vil_pyramid_image_view.h.

template<class T>
typedef T vil_pyramid_image_view< T >::pixel_type

The pixel type of the images.

Definition at line 66 of file vil_pyramid_image_view.h.


Constructor & Destructor Documentation

template<class T>
vil_pyramid_image_view< T >::vil_pyramid_image_view ( ) [inline]

Default constructor, creates an empty list of pyramid.

Definition at line 29 of file vil_pyramid_image_view.h.

template<class T>
vil_pyramid_image_view< T >::vil_pyramid_image_view ( vil_image_view_base_sptr  image) [inline]

Creates a pyramid with one image only and its scale is set to 1.0 (biggest).

Definition at line 32 of file vil_pyramid_image_view.h.

template<class T>
vil_pyramid_image_view< T >::vil_pyramid_image_view ( const vil_image_view< T > &  image) [inline]

Creates a pyramid with one image only and its scale is set to 1.0 (biggest).

Definition at line 36 of file vil_pyramid_image_view.h.

template<class T >
vil_pyramid_image_view< T >::vil_pyramid_image_view ( vil_image_view_base_sptr  image,
unsigned  nlevels 
)

Creates a pyramid of nlevels and sets the image at the scale 1.0.

It creates smaller images for the smaller scales. Each image is half the size of the previous image

Definition at line 26 of file vil_pyramid_image_view.txx.

template<class T >
vil_pyramid_image_view< T >::vil_pyramid_image_view ( unsigned  levels,
unsigned  ni,
unsigned  nj,
unsigned  n_planes = 1 
)

creates a pyramid of empty image views.

Definition at line 9 of file vil_pyramid_image_view.txx.

template<class T >
vil_pyramid_image_view< T >::vil_pyramid_image_view ( vcl_vector< vil_image_view_base_sptr > const &  images,
vcl_vector< double > const &  scales 
)

Creates a pyramid of given image views with associated scales.

post: sorted in the descending order of the scales

Definition at line 57 of file vil_pyramid_image_view.txx.

template<class T >
vil_pyramid_image_view< T >::vil_pyramid_image_view ( const vil_pyramid_image_view< T > &  rhs)

Copy constructor.

The new object will point to the same underlying image as the rhs.

Definition at line 70 of file vil_pyramid_image_view.txx.

template<class T>
virtual vil_pyramid_image_view< T >::~vil_pyramid_image_view ( ) [inline, virtual]

Definition at line 56 of file vil_pyramid_image_view.h.


Member Function Documentation

template<class T >
void vil_pyramid_image_view< T >::add_view ( vil_image_view_base_sptr image,
double  scale 
)

adds a view to the list of view sorted in the right place based on the scale in descending order.

Definition at line 79 of file vil_pyramid_image_view.txx.

template<class T>
iterator vil_pyramid_image_view< T >::begin ( ) [inline]

Definition at line 81 of file vil_pyramid_image_view.h.

template<class T>
iterator vil_pyramid_image_view< T >::end ( ) [inline]

Definition at line 82 of file vil_pyramid_image_view.h.

template<class T>
vil_image_view_base_sptr vil_pyramid_image_view< T >::get_view ( unsigned  level,
double &  scale 
) [inline]

Definition at line 61 of file vil_pyramid_image_view.h.

template<class T>
bool vil_pyramid_image_view< T >::limit_reached ( unsigned  i,
unsigned  j 
) [inline, protected]

returns true if the image size is < 4x4 or the max_level is reached.

Definition at line 98 of file vil_pyramid_image_view.h.

template<class T>
unsigned vil_pyramid_image_view< T >::max_levels ( ) const [inline]

Definition at line 70 of file vil_pyramid_image_view.h.

template<class T>
unsigned vil_pyramid_image_view< T >::nlevels ( ) const [inline]

Number of pyramid levels.

Definition at line 73 of file vil_pyramid_image_view.h.

template<class T>
vil_image_view<T>& vil_pyramid_image_view< T >::operator() ( unsigned  l) [inline]

Definition at line 77 of file vil_pyramid_image_view.h.

template<class T >
const vil_pyramid_image_view< T > & vil_pyramid_image_view< T >::operator= ( const vil_pyramid_image_view< T > &  rhs)

Definition at line 99 of file vil_pyramid_image_view.txx.

template<class T>
double vil_pyramid_image_view< T >::scale ( unsigned  level) [inline]

Definition at line 63 of file vil_pyramid_image_view.h.

template<class T >
void vil_pyramid_image_view< T >::scale_down ( const vil_image_view< T > &  image_in,
vil_image_view_base_sptr image_out 
) [protected]

generates an image half the size of the given image and takes the averages.

of pixel values in 4x4 neighborhoods

Definition at line 110 of file vil_pyramid_image_view.txx.

template<class T>
void vil_pyramid_image_view< T >::set_max_level ( unsigned  l) [inline]

Definition at line 68 of file vil_pyramid_image_view.h.


Member Data Documentation

template<class T>
vcl_vector<vil_image_view_base_sptr> vil_pyramid_image_view< T >::images_ [protected]

the list of image vieas.

Definition at line 86 of file vil_pyramid_image_view.h.

template<class T>
unsigned vil_pyramid_image_view< T >::max_levels_ [protected]

Definition at line 95 of file vil_pyramid_image_view.h.

template<class T>
unsigned vil_pyramid_image_view< T >::nlevels_ [protected]

Definition at line 92 of file vil_pyramid_image_view.h.

template<class T>
vcl_vector<double> vil_pyramid_image_view< T >::scales_ [protected]

the associated scales of images, scales_.size() is always equals to images_.size().

Definition at line 89 of file vil_pyramid_image_view.h.


The documentation for this class was generated from the following files: