PCL
|
The scaling function of a wavelet transform. More...
#include <ATrousWaveletTransform.h>
Public Member Functions | |
WaveletScalingFunction ()=default | |
WaveletScalingFunction (const KernelFilter &f) | |
WaveletScalingFunction (const SeparableFilter &f) | |
WaveletScalingFunction (const WaveletScalingFunction &s) | |
WaveletScalingFunction (WaveletScalingFunction &&s) | |
virtual | ~WaveletScalingFunction () |
void | Clear () |
bool | IsNonseparable () const |
bool | IsSeparable () const |
bool | IsValid () const |
WaveletScalingFunction & | operator= (const WaveletScalingFunction &s) |
WaveletScalingFunction & | operator= (WaveletScalingFunction &&)=default |
bool | operator== (const WaveletScalingFunction &other) const |
void | Set (const KernelFilter &f) |
void | Set (const SeparableFilter &f) |
Public Attributes | |
AutoPointer< KernelFilter > | kernelFilter |
Non-separable kernel filter. | |
AutoPointer< SeparableFilter > | separableFilter |
Separable filter. | |
A wavelet scaling function can be either a non-separable kernel filter, implemented as the KernelFilter class, or a separable filter implemented as SeparableFilter.
Separable filters should be better in terms of performance, since separable convolution has O(N) complexity, as opposed to O(N^2) for non-separable convolution. However, in current PCL versions separable convolutions are only faster for relatively large filter sizes as a resut of vectorization with SIMD processor instructions. See the SeparableConvolution class and the HelperFunctions for Selection of Convolution Algorithms" section for more information.
Definition at line 160 of file ATrousWaveletTransform.h.
|
default |
Default constructor. Constructs an uninitialized instance.
|
inline |
Non-separable filter constructor. The scaling function will own a duplicate of the specified kernel filter.
Definition at line 174 of file ATrousWaveletTransform.h.
References pcl::KernelFilter::Clone(), and pcl::AutoPointer< T, D >::IsNull().
|
inline |
Separable filter constructor. The scaling function will own a duplicate of the specified separable filter.
Definition at line 184 of file ATrousWaveletTransform.h.
References pcl::SeparableFilter::Clone(), and pcl::AutoPointer< T, D >::IsNull().
|
inline |
Copy constructor. The scaling function will own a duplicate of the kernel or separable filter in the source object.
Definition at line 194 of file ATrousWaveletTransform.h.
References pcl::AutoPointer< T, D >::IsNull(), kernelFilter, and separableFilter.
|
inline |
Move constructor.
Definition at line 211 of file ATrousWaveletTransform.h.
|
inlinevirtual |
Virtual destructor. Destroys and deallocates an existing kernel or separable filter in this object.
Definition at line 221 of file ATrousWaveletTransform.h.
|
inline |
Destroys the kernel and/or separable filter(s) owned by this object, yielding an invalid instance.
Definition at line 309 of file ATrousWaveletTransform.h.
References pcl::AutoPointer< T, D >::Destroy().
|
inline |
Returns true if this scaling function is a non-separable kernel filter; false if it is an invalid or separable filter.
Definition at line 267 of file ATrousWaveletTransform.h.
References pcl::AutoPointer< T, D >::IsNull().
|
inline |
Returns true if this scaling function is a separable filter; false if it is an invalid or non-separable kernel filter.
Definition at line 258 of file ATrousWaveletTransform.h.
References pcl::AutoPointer< T, D >::IsNull().
|
inline |
Returns true iff this scaling function is valid, that is, if it owns a nonempty filter.
Definition at line 276 of file ATrousWaveletTransform.h.
|
inline |
Copy assignment operator. Returns a reference to this object.
Definition at line 228 of file ATrousWaveletTransform.h.
References pcl::AutoPointer< T, D >::Destroy(), pcl::AutoPointer< T, D >::IsNull(), kernelFilter, and separableFilter.
|
default |
Move assignment operator. Returns a reference to this object.
|
inline |
Equality operator. Returns true only if this scaling function is equal to another instance.
Definition at line 319 of file ATrousWaveletTransform.h.
References pcl::AutoPointer< T, D >::IsNull(), kernelFilter, and separableFilter.
|
inline |
Causes this scaling function to own a duplicate of the specified non-separable kernel filter. A previously existing filter is destroyed and deallocated.
Definition at line 286 of file ATrousWaveletTransform.h.
References pcl::KernelFilter::Clone(), pcl::AutoPointer< T, D >::Destroy(), and pcl::AutoPointer< T, D >::IsNull().
|
inline |
Causes this scaling function to own a duplicate of the specified separable filter. A previously existing filter is destroyed and deallocated.
Definition at line 298 of file ATrousWaveletTransform.h.
References pcl::SeparableFilter::Clone(), pcl::AutoPointer< T, D >::Destroy(), and pcl::AutoPointer< T, D >::IsNull().