deghosting::Khan< PixelType > Class Template Reference

#include <khan.h>

Inheritance diagram for deghosting::Khan< PixelType >:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 Khan (std::vector< std::string > &inputFiles, const uint16_t flags, const uint16_t debugFlags, int iterations, double sigma, int verbosity)
 Khan (std::vector< ImageImportInfo > &inputFiles, const uint16_t flags, const uint16_t debugFlags, int iterations, double sigma, int verbosity)
std::vector< FImagePtrcreateWeightMasks ()
 create weight masks create weight masks for masking out ghosting regions
 ~Khan ()

Protected Types

typedef ImageTypes< PixelType
>::ImageType 
ImageType
typedef ImageTypes< PixelType
>::ProcessImageType 
ProcessImageType
typedef ImageTypes< PixelType
>::ProcessImageType::traverser 
ProcessImageTraverser
typedef ImageTypes< PixelType
>::ProcessImageType::PixelType 
ProcessImagePixelType
typedef ImageTypes< PixelType
>::ProcessImageTypePtr 
ProcessImageTypePtr
typedef NumericTraits< PixelType
>::isScalar 
srcIsScalar

Protected Member Functions

void setSigma (double sigma)
 set sigma sets sigma for gaussian weigting function
float Kh (ProcessImagePixelType x)
 kernel function Standard probability density function
void convertImage (ImageType *in, ProcessImageTypePtr &out, VigraFalseType)
 convert image for internal use if input image is RGB then convert it to L*a*b if input image is grayscale then only copy image
void convertImage (ImageType *in, ProcessImageTypePtr &out, VigraTrueType)
void importRGBImage (ImageImportInfo &info, ImageType *img, VigraFalseType)
 import RGB image
void importRGBImage (ImageImportInfo &info, ImageType *img, VigraTrueType)
void preprocessImage (unsigned int i, FImagePtr &weight, ProcessImageTypePtr &output)
 function to preprocess input image This function loads image, linearize it using EMoR (FIXME), tranform it using logarithm or gamma if input images are HDR

Protected Attributes

double PIPOW
double denom
double sigma
std::vector< ProcessImageTypePtrprocessImages
std::vector< FImagePtrweights

template<class PixelType>
class deghosting::Khan< PixelType >


Member Typedef Documentation

template<class PixelType>
typedef ImageTypes<PixelType>::ImageType deghosting::Khan< PixelType >::ImageType [protected]
 

Reimplemented from deghosting::ImageTypes< PixelType >.

Definition at line 98 of file khan.h.

Referenced by deghosting::Khan< PixelType >::preprocessImage().

template<class PixelType>
typedef ImageTypes<PixelType>::ProcessImageType::PixelType deghosting::Khan< PixelType >::ProcessImagePixelType [protected]
 

Definition at line 101 of file khan.h.

Referenced by deghosting::Khan< PixelType >::createWeightMasks().

template<class PixelType>
typedef ImageTypes<PixelType>::ProcessImageType::traverser deghosting::Khan< PixelType >::ProcessImageTraverser [protected]
 

Definition at line 100 of file khan.h.

Referenced by deghosting::Khan< PixelType >::createWeightMasks().

template<class PixelType>
typedef ImageTypes<PixelType>::ProcessImageType deghosting::Khan< PixelType >::ProcessImageType [protected]
 

Reimplemented from deghosting::ImageTypes< PixelType >.

Definition at line 99 of file khan.h.

Referenced by deghosting::Khan< PixelType >::createWeightMasks(), and deghosting::Khan< PixelType >::preprocessImage().

template<class PixelType>
typedef ImageTypes<PixelType>::ProcessImageTypePtr deghosting::Khan< PixelType >::ProcessImageTypePtr [protected]
 

Reimplemented from deghosting::ImageTypes< PixelType >.

Definition at line 102 of file khan.h.

Referenced by deghosting::Khan< PixelType >::createWeightMasks(), and deghosting::Khan< PixelType >::preprocessImage().

template<class PixelType>
typedef NumericTraits<PixelType>::isScalar deghosting::Khan< PixelType >::srcIsScalar [protected]
 

Definition at line 103 of file khan.h.

Referenced by deghosting::Khan< PixelType >::preprocessImage().


Constructor & Destructor Documentation

template<class PixelType>
deghosting::Khan< PixelType >::Khan std::vector< std::string > &  inputFiles,
const uint16_t  flags,
const uint16_t  debugFlags,
int  iterations,
double  sigma,
int  verbosity
 

Definition at line 153 of file khan.h.

References deghosting::Khan< PixelType >::denom, PI, deghosting::Khan< PixelType >::PIPOW, deghosting::Khan< PixelType >::setSigma(), and deghosting::Khan< PixelType >::sigma.

template<class PixelType>
deghosting::Khan< PixelType >::Khan std::vector< ImageImportInfo > &  inputFiles,
const uint16_t  flags,
const uint16_t  debugFlags,
int  iterations,
double  sigma,
int  verbosity
 

Definition at line 181 of file khan.h.

References deghosting::Khan< PixelType >::denom, PI, deghosting::Khan< PixelType >::PIPOW, deghosting::Khan< PixelType >::setSigma(), and deghosting::Khan< PixelType >::sigma.

template<class PixelType>
deghosting::Khan< PixelType >::~Khan  )  [inline]
 

Definition at line 96 of file khan.h.


Member Function Documentation

template<class PixelType>
void deghosting::Khan< PixelType >::convertImage ImageType in,
ProcessImageTypePtr out,
VigraTrueType 
[protected]
 

Definition at line 261 of file khan.h.

References vigra_ext::destImage(), out, and vigra_ext::srcImageRange().

template<class PixelType>
void deghosting::Khan< PixelType >::convertImage ImageType in,
ProcessImageTypePtr out,
VigraFalseType 
[protected]
 

convert image for internal use if input image is RGB then convert it to L*a*b if input image is grayscale then only copy image

Definition at line 254 of file khan.h.

References vigra_ext::destImage(), out, vigra_ext::srcImageRange(), and vigra_ext::transformImage().

Referenced by deghosting::Khan< PixelType >::preprocessImage().

template<class PixelType>
std::vector< FImagePtr > deghosting::Khan< PixelType >::createWeightMasks  )  [virtual]
 

create weight masks create weight masks for masking out ghosting regions

Implements deghosting::Deghosting.

Definition at line 339 of file khan.h.

References cout, vigra_ext::destImage(), vigra_ext::destImageRange(), deghosting::FImagePtr, deghosting::Khan< PixelType >::Kh(), NEIGHB_DIST, deghosting::Khan< PixelType >::preprocessImage(), deghosting::Khan< PixelType >::ProcessImagePixelType, deghosting::Khan< PixelType >::processImages, deghosting::Khan< PixelType >::ProcessImageTraverser, deghosting::Khan< PixelType >::ProcessImageType, deghosting::Khan< PixelType >::ProcessImageTypePtr, vigra_ext::srcImageRange(), vigra_ext::transformImage(), deghosting::Khan< PixelType >::weights, and X.

template<class PixelType>
void deghosting::Khan< PixelType >::importRGBImage ImageImportInfo &  info,
ImageType img,
VigraTrueType 
[protected]
 

Definition at line 267 of file khan.h.

References vigra_ext::destImage(), vigra::importImageAlpha(), vigra_ext::log(), vigra_ext::srcImageRange(), and vigra_ext::transformImage().

template<class PixelType>
void deghosting::Khan< PixelType >::importRGBImage ImageImportInfo &  info,
ImageType img,
VigraFalseType 
[protected]
 

import RGB image

Definition at line 282 of file khan.h.

References vigra_ext::destImage(), and vigra::importImageAlpha().

Referenced by deghosting::Khan< PixelType >::preprocessImage().

template<class PixelType>
float deghosting::Khan< PixelType >::Kh ProcessImagePixelType  x  )  [inline, protected]
 

kernel function Standard probability density function

Definition at line 214 of file khan.h.

References PI, and deghosting::Khan< PixelType >::sigma.

Referenced by deghosting::Khan< PixelType >::createWeightMasks().

template<class PixelType>
void deghosting::Khan< PixelType >::preprocessImage unsigned int  i,
FImagePtr weight,
ProcessImageTypePtr output
[protected]
 

function to preprocess input image This function loads image, linearize it using EMoR (FIXME), tranform it using logarithm or gamma if input images are HDR

Definition at line 292 of file khan.h.

References deghosting::Khan< PixelType >::convertImage(), vigra_ext::destImage(), deghosting::FImagePtr, deghosting::Khan< PixelType >::ImageType, deghosting::Khan< PixelType >::importRGBImage(), deghosting::Khan< PixelType >::ProcessImageType, deghosting::Khan< PixelType >::ProcessImageTypePtr, vigra_ext::srcImageRange(), deghosting::Khan< PixelType >::srcIsScalar, and vigra_ext::transformImage().

Referenced by deghosting::Khan< PixelType >::createWeightMasks().

template<class PixelType>
void deghosting::Khan< PixelType >::setSigma double  sigma  )  [protected]
 

set sigma sets sigma for gaussian weigting function

Definition at line 209 of file khan.h.

References deghosting::Khan< PixelType >::sigma.

Referenced by deghosting::Khan< PixelType >::Khan().


Member Data Documentation

template<class PixelType>
double deghosting::Khan< PixelType >::denom [protected]
 

Definition at line 109 of file khan.h.

Referenced by deghosting::Khan< PixelType >::Khan().

template<class PixelType>
double deghosting::Khan< PixelType >::PIPOW [protected]
 

Definition at line 107 of file khan.h.

Referenced by deghosting::Khan< PixelType >::Khan().

template<class PixelType>
std::vector<ProcessImageTypePtr> deghosting::Khan< PixelType >::processImages [protected]
 

Definition at line 114 of file khan.h.

Referenced by deghosting::Khan< PixelType >::createWeightMasks().

template<class PixelType>
double deghosting::Khan< PixelType >::sigma [protected]
 

Definition at line 111 of file khan.h.

Referenced by deghosting::Khan< PixelType >::Kh(), deghosting::Khan< PixelType >::Khan(), and deghosting::Khan< PixelType >::setSigma().

template<class PixelType>
std::vector<FImagePtr> deghosting::Khan< PixelType >::weights [protected]
 

Definition at line 115 of file khan.h.

Referenced by deghosting::Khan< PixelType >::createWeightMasks().


The documentation for this class was generated from the following file:
Generated on Tue Sep 2 01:25:52 2014 for Hugintrunk by  doxygen 1.3.9.1