BlendPoisson.h File Reference

solve poisson equation for blending images More...

#include <iostream>
#include <vigra/stdimage.hxx>
#include <vigra/convolution.hxx>
#include <vigra/stdconvolution.hxx>
#include <vigra/basicgeometry.hxx>
#include "openmp_vigra.h"

Include dependency graph for BlendPoisson.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  vigra_ext
namespace  vigra_ext::poisson
namespace  vigra_ext::poisson::detail

Classes

struct  vigra_ext::poisson::detail::FilterEdges
class  vigra_ext::poisson::MaskGreaterAccessor< PixelType >
class  vigra_ext::poisson::MaskSmallerAccessor< PixelType >

Defines

#define DEBUG_TIMING

Functions

template<class Image, class Mask>
vigra::NumericTraits< typename
Image::PixelType >::RealPromote 
vigra_ext::poisson::detail::ProcessNeighborPixels (const int x, const int y, const int dx, const int dy, const Image &image, const Mask &mask)
template<class Image, class Mask, class SeamMask>
vigra::NumericTraits< typename
Image::PixelType >::RealPromote 
vigra_ext::poisson::detail::ProcessBorderPixel (const int x, const int y, const int dx, const int dy, const Image &image, const Mask &mask, const SeamMask &seam)
template<class Image, class SeamMask>
Image::PixelType vigra_ext::poisson::detail::GetBorderGradient (const int x, const int y, const int dx, const int dy, const SeamMask &seams, const Image &image1, const vigra::Point2D &offset)
template<class Image, class SeamMask>
vigra::NumericTraits< typename
Image::PixelType >::RealPromote 
vigra_ext::poisson::detail::GetBorderValues (const int x, const int y, int dx, int dy, const Image &image, const SeamMask &seams)
template<class Image>
void vigra_ext::poisson::detail::RestrictErrorToNextLevel (const Image &in, Image &out)
template<class Image1, class Image2>
void vigra_ext::poisson::detail::SimpleConvolveImage4 (const Image1 &image1, Image2 &image2, const double factor1, const double factor2)
template<class Image>
vigra::Int8Image vigra_ext::poisson::detail::FindEdgesForPoisson (const Image &input)
 mark edges in input image for poisson blending * input: expected an image with following meanings labels has now the following values: 0: no image here 1: use information from image 1 5: use information from image 2 output: contains the following pixel values 0: no information available 1: at boundary between image 1 and 2: here we use Dirichlet boundary condition 2: at boundary between image 2 and empty pixels: here Neumann boundary condition applies 3: inside image 2
template<class ComponentType>
double vigra_ext::poisson::detail::GetRealValue (const ComponentType &val)
template<class ComponentType>
double vigra_ext::poisson::detail::GetRealValue (const vigra::RGBValue< ComponentType > &val)
template<class Image, class SeamMask>
void vigra_ext::poisson::detail::SOR (Image &target, const Image &gradient, const SeamMask &seams, const float omega, const float errorThreshold, const int maxIter, const bool doWrap)
template<class Image, class SeamMask>
void vigra_ext::poisson::detail::CalcResidualError (Image &error, const Image &target, const Image &gradient, const SeamMask &seam, const bool doWrap)
template<class Image, class PyramidImage>
void vigra_ext::poisson::BuildSeamPyramid (const Image &input, vigra::ImagePyramid< PyramidImage > &seams, const int minLength)
template<class Image, class Mask, class SeamMask, class GradientType>
void vigra_ext::poisson::BuildGradientMap (const Image &image1, const Image &image2, const Mask &mask2, const SeamMask &seam, GradientType &gradient, const vigra::Point2D &offset, const bool doWrap)
template<class Image, class SeamMask>
void vigra_ext::poisson::Multigrid (Image &out, const Image &gradient, const vigra::ImagePyramid< SeamMask > &seamMaskPyramid, int minLen, const float errorThreshold, const int maxIter, const bool doWrap)


Detailed Description

solve poisson equation for blending images

Author:
T. Modes

Definition in file BlendPoisson.h.


Define Documentation

#define DEBUG_TIMING

Definition at line 38 of file BlendPoisson.h.


Generated on 21 Jan 2018 for Hugintrunk by  doxygen 1.4.7