|
Hugintrunk
0.1
|
"wrapper" for efficient interpolation access to an image More...
#include <Interpolators.h>
Public Types | |
| typedef SrcAccessor::value_type | PixelType |
| typedef MaskAccessor::value_type | MaskType |
Public Member Functions | |
| ImageMaskInterpolator (vigra::triple< SrcImageIterator, SrcImageIterator, SrcAccessor > const &src, std::pair< MaskIterator, MaskAccessor > mask, INTERPOLATOR &inter, bool warparound) | |
| Construct interpolator for an given image. More... | |
| ImageMaskInterpolator (SrcImageIterator src_upperleft, SrcImageIterator src_lowerright, SrcAccessor sa, MaskIterator mask_upperleft, MaskAccessor ma, INTERPOLATOR &inter, bool warparound) | |
| Construct interpolator for specific image. More... | |
| bool | operator() (double x, double y, PixelType &result, MaskType &mask) const |
Interpolate the data item at a non-integer position x, y. More... | |
| bool | interpolateInside (int srcx, int srcy, double dx, double dy, PixelType &result, MaskType &mask) const |
| Interpolate without boundary check. More... | |
Private Types | |
| typedef vigra::NumericTraits < PixelType >::RealPromote | RealPixelType |
Private Attributes | |
| SrcImageIterator | m_sIter |
| SrcAccessor | m_sAcc |
| MaskIterator | m_mIter |
| MaskAccessor | m_mAcc |
| int | m_w |
| int | m_h |
| bool | m_warparound |
| INTERPOLATOR | m_inter |
"wrapper" for efficient interpolation access to an image
Tailored for panorama remapping. Supports warparound boundary condition of left and right as well as masks
Definition at line 474 of file Interpolators.h.
| typedef MaskAccessor::value_type vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::MaskType |
Definition at line 478 of file Interpolators.h.
| typedef SrcAccessor::value_type vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::PixelType |
Definition at line 477 of file Interpolators.h.
|
private |
Definition at line 480 of file Interpolators.h.
|
inline |
Construct interpolator for an given image.
Definition at line 495 of file Interpolators.h.
|
inline |
Construct interpolator for specific image.
Definition at line 513 of file Interpolators.h.
|
inline |
Interpolate without boundary check.
Definition at line 749 of file Interpolators.h.
References vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::m_inter, vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::m_mIter, vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::m_sAcc, and vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::m_sIter.
Referenced by vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::operator()().
|
inline |
Interpolate the data item at a non-integer position x, y.
It checks if the interpolation would access a pixel with alpha = 0 and returns false in that case.
be careful, no bounds checking is done here. take INTERPOLATOR::size into accout before iterating over the picture.
the used image pixels are [i-(n/2 -1) .. i+n/2], where n is the size of the interpolator
| x | x position, relative to i and alpha.first |
| y | y position, relative to i and alpha.first |
| result | the interpolation result |
Definition at line 661 of file Interpolators.h.
References vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::interpolateInside(), vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::m_h, vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::m_inter, vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::m_mIter, vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::m_sAcc, vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::m_sIter, vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::m_w, and vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::m_warparound.
|
private |
Definition at line 487 of file Interpolators.h.
Referenced by vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::operator()().
|
private |
Definition at line 490 of file Interpolators.h.
Referenced by vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::interpolateInside(), and vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::operator()().
|
private |
Definition at line 485 of file Interpolators.h.
|
private |
Definition at line 484 of file Interpolators.h.
Referenced by vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::interpolateInside(), and vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::operator()().
|
private |
Definition at line 483 of file Interpolators.h.
Referenced by vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::interpolateInside(), and vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::operator()().
|
private |
Definition at line 482 of file Interpolators.h.
Referenced by vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::interpolateInside(), and vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::operator()().
|
private |
Definition at line 486 of file Interpolators.h.
Referenced by vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::operator()().
|
private |
Definition at line 488 of file Interpolators.h.
Referenced by vigra_ext::ImageMaskInterpolator< SrcImageIterator, SrcAccessor, MaskIterator, MaskAccessor, INTERPOLATOR >::operator()().
1.8.5