Hugintrunk
0.1
|
struct to hold a image state for stitching More...
#include <RemappedPanoImage.h>
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 |
struct to hold a image state for stitching
Definition at line 80 of file RemappedPanoImage.h.
|
private |
Definition at line 83 of file RemappedPanoImage.h.
typedef vigra_ext::ValueTypeTraits<image_value_type>::value_type HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::component_type |
Definition at line 99 of file RemappedPanoImage.h.
typedef RemapImage::const_traverser HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::const_image_traverser |
Definition at line 89 of file RemappedPanoImage.h.
typedef AlphaImage::const_traverser HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::const_mask_traverser |
Definition at line 95 of file RemappedPanoImage.h.
typedef RemapImage::ConstAccessor HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::ConstImageAccessor |
Definition at line 91 of file RemappedPanoImage.h.
typedef AlphaImage::ConstAccessor HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::ConstMaskAccessor |
Definition at line 97 of file RemappedPanoImage.h.
typedef RemapImage::traverser HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::image_traverser |
Definition at line 88 of file RemappedPanoImage.h.
typedef RemapImage::value_type HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::image_value_type |
Definition at line 87 of file RemappedPanoImage.h.
typedef RemapImage::Accessor HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::ImageAccessor |
Definition at line 90 of file RemappedPanoImage.h.
typedef AlphaImage::traverser HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::mask_traverser |
Definition at line 94 of file RemappedPanoImage.h.
typedef AlphaImage::value_type HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::mask_value_type |
Definition at line 93 of file RemappedPanoImage.h.
typedef AlphaImage::Accessor HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::MaskAccessor |
Definition at line 96 of file RemappedPanoImage.h.
|
inline |
create a remapped pano image
the actual remapping is done by the remapImage() function.
Definition at line 107 of file RemappedPanoImage.h.
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().
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().
void HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::remapImage | ( | vigra::triple< ImgIter, ImgIter, ImgAccessor > | srcImg, |
vigra_ext::Interpolator | interpol, | ||
AppBase::ProgressDisplay * | progress, | ||
bool | singleThreaded = false |
||
) |
remap a image without alpha channel
Definition at line 433 of file RemappedPanoImage.h.
References vigra_ext::applyExposureClipMask(), vigra_ext::applyMask(), vigra_ext::circularCrop(), HuginBase::Nona::CopyImageNewSize(), vigra_ext::EMoR::createEMoRLUT(), HuginBase::BaseSrcPanoImage::CROP_CIRCLE, HuginBase::BaseSrcPanoImage::CROP_RECTANGLE, DEBUG_DEBUG, vigra_ext::destImage(), vigra_ext::destImageRange(), HuginBase::Photometric::InvResponseTransform< VTIn, VTOut >::enforceMonotonicity(), HuginBase::Nona::GetAdvancedOption(), vigra_ext::getMaxValForPixelType(), celeste::max(), celeste::min(), HuginBase::BaseSrcPanoImage::NO_CROP, NONA_DEFAULT_EXPOSURE_LOWER_CUTOFF, NONA_DEFAULT_EXPOSURE_UPPER_CUTOFF, HuginBase::PanoramaOptions::OUTPUT_LDR, vigra_ext::pow(), HuginBase::Photometric::InvResponseTransform< VTIn, VTOut >::setHDROutput(), HuginBase::Photometric::InvResponseTransform< VTIn, VTOut >::setOutput(), vigra_ext::srcImage(), vigra_ext::transformImage(), vigra_ext::transformImageAlpha(), vigra_ext::transformImageAlphaGPU(), and vigra_ext::transformImageGPU().
Referenced by HuginLines::_getVerticalLines(), LensCalImageCtrl::GenerateRemappedImage(), GLPreviewFrame::OnCreateCP(), and HuginBase::Nona::remapImage().
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 |
||
) |
remap a image, with alpha channel
Definition at line 643 of file RemappedPanoImage.h.
References vigra_ext::applyExposureClipMask(), vigra_ext::applyMask(), vigra_ext::circularCrop(), vigra::omp::copyImage(), HuginBase::Nona::CopyImageNewSize(), vigra_ext::EMoR::createEMoRLUT(), HuginBase::BaseSrcPanoImage::CROP_CIRCLE, HuginBase::BaseSrcPanoImage::CROP_RECTANGLE, vigra_ext::destImage(), vigra_ext::destImageRange(), vigra_ext::enforceMonotonicity(), HuginBase::Nona::GetAdvancedOption(), vigra_ext::getMaxValForPixelType(), celeste::max(), celeste::min(), HuginBase::BaseSrcPanoImage::NO_CROP, NONA_DEFAULT_EXPOSURE_LOWER_CUTOFF, NONA_DEFAULT_EXPOSURE_UPPER_CUTOFF, HuginBase::PanoramaOptions::OUTPUT_LDR, vigra_ext::pow(), HuginBase::Photometric::InvResponseTransform< VTIn, VTOut >::setHDROutput(), AppBase::ProgressDisplay::setMessage(), HuginBase::Photometric::InvResponseTransform< VTIn, VTOut >::setOutput(), vigra_ext::srcImage(), hugin_utils::stripPath(), vigra_ext::transformImageAlpha(), and vigra_ext::transformImageAlphaGPU().
|
inline |
Definition at line 116 of file RemappedPanoImage.h.
void HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::setPanoImage | ( | const SrcPanoImage & | src, |
const PanoramaOptions & | dest, | ||
vigra::Rect2D | roi | ||
) |
Definition at line 212 of file RemappedPanoImage.h.
References DEBUG_DEBUG, and HuginBase::Nona::resize().
Referenced by HuginLines::_getVerticalLines(), HuginBase::CalculateFOV::calcFOV(), HuginBase::CenterHorizontally::centerHorizontically(), LensCalImageCtrl::GenerateRemappedImage(), GLPreviewFrame::OnCreateCP(), and HuginBase::Nona::remapImage().
|
protected |
Definition at line 163 of file RemappedPanoImage.h.
Referenced by HuginBase::Nona::RemappedPanoImage< ImageType, AlphaType >::setAdvancedOptions().
|
protected |
Definition at line 161 of file RemappedPanoImage.h.
vigra::ImageImportInfo::ICCProfile HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::m_ICCProfile |
Definition at line 157 of file RemappedPanoImage.h.
Referenced by HuginBase::SmallRemappedImageCache::getRemapped(), HuginBase::Nona::detail::saveRemapped(), HuginBase::Nona::TiffMultiLayerRemapper< ImageType, AlphaImageType >::saveRemapped(), HuginBase::Nona::WeightedStitcher< ImageType, AlphaType >::stitch(), and HuginBase::Nona::SimpleStitcher< ImageType, AlphaType >::stitch().
|
protected |
Definition at line 160 of file RemappedPanoImage.h.
|
protected |
Definition at line 162 of file RemappedPanoImage.h.