Hugintrunk  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Public Attributes | Protected Attributes | Private Types | List of all members
HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage > Class Template Reference

struct to hold a image state for stitching More...

#include <RemappedPanoImage.h>

Inheritance diagram for HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >:
Inheritance graph

Public Types

typedef RemapImage::value_type image_value_type
 
typedef RemapImage::traverser image_traverser
 
typedef RemapImage::const_traverser const_image_traverser
 
typedef RemapImage::Accessor ImageAccessor
 
typedef RemapImage::ConstAccessor ConstImageAccessor
 
typedef AlphaImage::value_type mask_value_type
 
typedef AlphaImage::traverser mask_traverser
 
typedef AlphaImage::const_traverser const_mask_traverser
 
typedef AlphaImage::Accessor MaskAccessor
 
typedef AlphaImage::ConstAccessor ConstMaskAccessor
 
typedef
vigra_ext::ValueTypeTraits
< image_value_type >
::value_type 
component_type
 
- Public Types inherited from vigra_ext::ROIImage< RemapImage, AlphaImage >
typedef RemapImage::value_type image_value_type
 
typedef RemapImage::traverser image_traverser
 
typedef RemapImage::const_traverser image_const_traverser
 
typedef RemapImage::Accessor ImageAccessor
 
typedef RemapImage::ConstAccessor ImageConstAccessor
 
typedef AlphaImage::value_type mask_value_type
 
typedef AlphaImage::traverser mask_traverser
 
typedef AlphaImage::const_traverser mask_const_traverser
 
typedef AlphaImage::Accessor MaskAccessor
 
typedef AlphaImage::ConstAccessor MaskConstAccessor
 

Public Member Functions

 RemappedPanoImage ()
 create a remapped pano image More...
 
void setPanoImage (const SrcPanoImage &src, const PanoramaOptions &dest, vigra::Rect2D roi)
 
void setAdvancedOptions (const AdvancedOptions &advancedOptions)
 
template<class DistImgType >
void calcSrcCoordImgs (DistImgType &imgX, DistImgType &imgY)
 calculate distance map. More...
 
void calcAlpha ()
 calculate only the alpha channel. More...
 
template<class ImgIter , class ImgAccessor >
void remapImage (vigra::triple< ImgIter, ImgIter, ImgAccessor > srcImg, vigra_ext::Interpolator interpol, AppBase::ProgressDisplay *progress, bool singleThreaded=false)
 remap a image without alpha channel More...
 
template<class ImgIter , class ImgAccessor , class AlphaIter , class AlphaAccessor >
void remapImage (vigra::triple< ImgIter, ImgIter, ImgAccessor > srcImg, std::pair< AlphaIter, AlphaAccessor > alphaImg, vigra_ext::Interpolator interp, AppBase::ProgressDisplay *progress, bool singleThreaded=false)
 remap a image, with alpha channel More...
 
- Public Member Functions inherited from vigra_ext::ROIImage< RemapImage, AlphaImage >
 ROIImage ()
 ctor. More...
 
virtual ~ROIImage ()
 dtor. More...
 
void resize (const vigra::Rect2D &rect)
 resize the image More...
 
image_traverser upperLeft ()
 returns an traverser to the upper left of the image, this is usually outside of the rectangle. More...
 
image_const_traverser upperLeft () const
 
image_traverser lowerRight ()
 
image_const_traverser lowerRight () const
 
ImageAccessor accessor ()
 return the accessor of this image More...
 
ImageConstAccessor accessor () const
 
mask_traverser maskUpperLeft ()
 returns an traverser to the upper left of the image, this is usually outside of the rectangle. More...
 
mask_const_traverser maskUpperLeft () const
 
mask_traverser maskLowerRight ()
 
mask_const_traverser maskLowerRight () const
 
MaskAccessor maskAccessor ()
 return the accessor of the alpha channel More...
 
MaskConstAccessor maskAccessor () const
 
vigra::Rect2D & boundingBox ()
 
image_value_type operator() (int x, int y)
 
image_value_type operator[] (vigra::Diff2D const &pos)
 
mask_value_type getMask (int x, int y)
 
mask_value_type getMask (const vigra::Diff2D &pos)
 

Public Attributes

vigra::ImageImportInfo::ICCProfile m_ICCProfile
 
- Public Attributes inherited from vigra_ext::ROIImage< RemapImage, AlphaImage >
RemapImage m_image
 remapped image More...
 
AlphaImage m_mask
 corresponding alpha channel More...
 

Protected Attributes

SrcPanoImage m_srcImg
 
PanoramaOptions m_destImg
 
PTools::Transform m_transf
 
AdvancedOptions m_advancedOptions
 
- Protected Attributes inherited from vigra_ext::ROIImage< RemapImage, AlphaImage >
vigra::Rect2D m_region
 bounding rectangle of the image More...
 

Private Types

typedef vigra_ext::ROIImage
< RemapImage, AlphaImage > 
Base
 

Detailed Description

template<class RemapImage, class AlphaImage>
class HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >

struct to hold a image state for stitching

Definition at line 80 of file RemappedPanoImage.h.

Member Typedef Documentation

template<class RemapImage, class AlphaImage>
typedef vigra_ext::ROIImage<RemapImage, AlphaImage> HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::Base
private

Definition at line 83 of file RemappedPanoImage.h.

template<class RemapImage, class AlphaImage>
typedef vigra_ext::ValueTypeTraits<image_value_type>::value_type HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::component_type

Definition at line 99 of file RemappedPanoImage.h.

template<class RemapImage, class AlphaImage>
typedef RemapImage::const_traverser HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::const_image_traverser

Definition at line 89 of file RemappedPanoImage.h.

template<class RemapImage, class AlphaImage>
typedef AlphaImage::const_traverser HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::const_mask_traverser

Definition at line 95 of file RemappedPanoImage.h.

template<class RemapImage, class AlphaImage>
typedef RemapImage::ConstAccessor HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::ConstImageAccessor

Definition at line 91 of file RemappedPanoImage.h.

template<class RemapImage, class AlphaImage>
typedef AlphaImage::ConstAccessor HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::ConstMaskAccessor

Definition at line 97 of file RemappedPanoImage.h.

template<class RemapImage, class AlphaImage>
typedef RemapImage::traverser HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::image_traverser

Definition at line 88 of file RemappedPanoImage.h.

template<class RemapImage, class AlphaImage>
typedef RemapImage::value_type HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::image_value_type

Definition at line 87 of file RemappedPanoImage.h.

template<class RemapImage, class AlphaImage>
typedef RemapImage::Accessor HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::ImageAccessor

Definition at line 90 of file RemappedPanoImage.h.

template<class RemapImage, class AlphaImage>
typedef AlphaImage::traverser HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::mask_traverser

Definition at line 94 of file RemappedPanoImage.h.

template<class RemapImage, class AlphaImage>
typedef AlphaImage::value_type HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::mask_value_type

Definition at line 93 of file RemappedPanoImage.h.

template<class RemapImage, class AlphaImage>
typedef AlphaImage::Accessor HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::MaskAccessor

Definition at line 96 of file RemappedPanoImage.h.

Constructor & Destructor Documentation

template<class RemapImage, class AlphaImage>
HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::RemappedPanoImage ( )
inline

create a remapped pano image

the actual remapping is done by the remapImage() function.

Definition at line 107 of file RemappedPanoImage.h.

Member Function Documentation

template<class RemapImage , class AlphaImage >
void HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::calcAlpha ( )

calculate only the alpha channel.

works for arbitrary transforms, with holes and so on, but is very crude and slow (remapps all image pixels...)

better transform all images, and get the alpha channel for free!

setPanoImage() should be called before.

Definition at line 378 of file RemappedPanoImage.h.

References hugin_utils::roundi().

Referenced by HuginBase::CalculateFOV::calcFOV(), HuginBase::CenterHorizontally::centerHorizontically(), and HuginBase::Nona::detail::saveRemapped().

template<class RemapImage , class AlphaImage >
template<class DistImgType >
void HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::calcSrcCoordImgs ( DistImgType &  imgX,
DistImgType &  imgY 
)

calculate distance map.

pixels contain distance from image center

setPanoImage() has to be called before!

Definition at line 332 of file RemappedPanoImage.h.

References celeste::max(), and hugin_utils::roundi().

Referenced by HuginBase::Nona::MultiImageRemapper< ImageType, AlphaImageType >::saveRemapped().

template<class RemapImage , class AlphaImage >
template<class ImgIter , class ImgAccessor >
void HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::remapImage ( vigra::triple< ImgIter, ImgIter, ImgAccessor >  srcImg,
vigra_ext::Interpolator  interpol,
AppBase::ProgressDisplay progress,
bool  singleThreaded = false 
)
template<class RemapImage , class AlphaImage >
template<class ImgIter , class ImgAccessor , class AlphaIter , class AlphaAccessor >
void HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::remapImage ( vigra::triple< ImgIter, ImgIter, ImgAccessor >  srcImg,
std::pair< AlphaIter, AlphaAccessor >  alphaImg,
vigra_ext::Interpolator  interp,
AppBase::ProgressDisplay progress,
bool  singleThreaded = false 
)
template<class RemapImage, class AlphaImage>
void HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::setAdvancedOptions ( const AdvancedOptions advancedOptions)
inline

Definition at line 116 of file RemappedPanoImage.h.

template<class RemapImage , class AlphaImage >
void HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::setPanoImage ( const SrcPanoImage src,
const PanoramaOptions dest,
vigra::Rect2D  roi 
)

Member Data Documentation

template<class RemapImage, class AlphaImage>
AdvancedOptions HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::m_advancedOptions
protected
template<class RemapImage, class AlphaImage>
PanoramaOptions HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::m_destImg
protected

Definition at line 161 of file RemappedPanoImage.h.

template<class RemapImage, class AlphaImage>
vigra::ImageImportInfo::ICCProfile HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::m_ICCProfile
template<class RemapImage, class AlphaImage>
SrcPanoImage HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::m_srcImg
protected

Definition at line 160 of file RemappedPanoImage.h.

template<class RemapImage, class AlphaImage>
PTools::Transform HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::m_transf
protected

Definition at line 162 of file RemappedPanoImage.h.


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