Hugintrunk  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
HuginBase::PointSampler Class Referenceabstract

#include <PointSampler.h>

Inheritance diagram for HuginBase::PointSampler:
Inheritance graph

Public Types

typedef std::vector
< vigra_ext::PointPairRGB
PointPairs
 

Public Member Functions

virtual ~PointSampler ()
 
virtual bool modifiesPanoramaData () const
 returns true if the algorithm changes the PanoramaData. More...
 
virtual bool runAlgorithm ()
 implementation of the algorithm. More...
 
PointSamplerexecute ()
 
PointPairs getResultPoints ()
 
- Public Member Functions inherited from HuginBase::TimeConsumingPanoramaAlgorithm
virtual ~TimeConsumingPanoramaAlgorithm ()
 
virtual bool wasCancelled () const
 
- Public Member Functions inherited from HuginBase::PanoramaAlgorithm
virtual ~PanoramaAlgorithm ()
 
virtual bool hasRunSuccessfully ()
 
virtual void run ()
 runs the algorithm. More...
 

Protected Types

typedef
vigra_ext::ImageInterpolator
< vigra::FRGBImage::const_traverser,
vigra::FRGBImage::ConstAccessor,
vigra_ext::interp_cubic
InterpolImg
 

Protected Member Functions

 PointSampler (PanoramaData &panorama, AppBase::ProgressDisplay *progressDisplay, std::vector< vigra::FRGBImage * > images, LimitIntensityVector limits, int nPoints)
 
void sampleAndExtractPoints (AppBase::ProgressDisplay *progress)
 
virtual void samplePoints (const std::vector< InterpolImg > &imgs, const std::vector< vigra::FImage * > &voteImgs, const PanoramaData &pano, const LimitIntensityVector limitI, std::vector< std::multimap< double, vigra_ext::PointPairRGB > > &radiusHist, unsigned &nGoodPoints, unsigned &nBadPoints, AppBase::ProgressDisplay *)=0
 
- Protected Member Functions inherited from HuginBase::TimeConsumingPanoramaAlgorithm
 TimeConsumingPanoramaAlgorithm (PanoramaData &panorama, AppBase::ProgressDisplay *progressDisplay=NULL)
 [Warning! it keeps the reference to the panorama data!] More...
 
virtual AppBase::ProgressDisplaygetProgressDisplay () const
 
virtual bool hasProgressDisplay () const
 
virtual void cancelAlgorithm ()
 Call this when the algorithm is cancelled. More...
 
virtual void algorithmCancelled ()
 Called when the algorithm got cancelled; override with cleaning up process etc. More...
 
- Protected Member Functions inherited from HuginBase::PanoramaAlgorithm
 PanoramaAlgorithm (PanoramaData &panorama)
 

Static Protected Member Functions

template<class PointPairClass >
static void sampleRadiusUniform (const std::vector< std::multimap< double, PointPairClass > > &radiusHist, unsigned nPoints, std::vector< PointPairClass > &selectedPoints, AppBase::ProgressDisplay *)
 extract some random points out of the bins. More...
 

Protected Attributes

std::vector< vigra::FRGBImage * > o_images
 
int o_numPoints
 
PointPairs o_resultPoints
 
LimitIntensityVector m_limits
 
- Protected Attributes inherited from HuginBase::PanoramaAlgorithm
PanoramaDatao_panorama
 
bool o_successful
 

Detailed Description

Definition at line 67 of file PointSampler.h.

Member Typedef Documentation

typedef vigra_ext::ImageInterpolator<vigra::FRGBImage::const_traverser, vigra::FRGBImage::ConstAccessor, vigra_ext::interp_cubic > HuginBase::PointSampler::InterpolImg
protected

Definition at line 80 of file PointSampler.h.

Definition at line 127 of file PointSampler.h.

Constructor & Destructor Documentation

HuginBase::PointSampler::PointSampler ( PanoramaData panorama,
AppBase::ProgressDisplay progressDisplay,
std::vector< vigra::FRGBImage * >  images,
LimitIntensityVector  limits,
int  nPoints 
)
inlineprotected

Definition at line 71 of file PointSampler.h.

virtual HuginBase::PointSampler::~PointSampler ( )
inlinevirtual

Definition at line 80 of file PointSampler.h.

Member Function Documentation

PointSampler& HuginBase::PointSampler::execute ( )
inline
PointPairs HuginBase::PointSampler::getResultPoints ( )
inline
virtual bool HuginBase::PointSampler::modifiesPanoramaData ( ) const
inlinevirtual

returns true if the algorithm changes the PanoramaData.

Implements HuginBase::PanoramaAlgorithm.

Definition at line 113 of file PointSampler.h.

bool HuginBase::PointSampler::runAlgorithm ( )
virtual
void HuginBase::PointSampler::sampleAndExtractPoints ( AppBase::ProgressDisplay progress)
protected
virtual void HuginBase::PointSampler::samplePoints ( const std::vector< InterpolImg > &  imgs,
const std::vector< vigra::FImage * > &  voteImgs,
const PanoramaData pano,
const LimitIntensityVector  limitI,
std::vector< std::multimap< double, vigra_ext::PointPairRGB > > &  radiusHist,
unsigned &  nGoodPoints,
unsigned &  nBadPoints,
AppBase::ProgressDisplay  
)
protectedpure virtual
template<class PointPairClass >
void HuginBase::PointSampler::sampleRadiusUniform ( const std::vector< std::multimap< double, PointPairClass > > &  radiusHist,
unsigned  nPoints,
std::vector< PointPairClass > &  selectedPoints,
AppBase::ProgressDisplay progress 
)
staticprotected

extract some random points out of the bins.

This should ensure that the radius distribution is roughly uniform

Definition at line 270 of file PointSampler.h.

Referenced by sampleAndExtractPoints().

Member Data Documentation

LimitIntensityVector HuginBase::PointSampler::m_limits
protected

Definition at line 142 of file PointSampler.h.

Referenced by sampleAndExtractPoints().

std::vector<vigra::FRGBImage*> HuginBase::PointSampler::o_images
protected

Definition at line 139 of file PointSampler.h.

Referenced by sampleAndExtractPoints().

int HuginBase::PointSampler::o_numPoints
protected
PointPairs HuginBase::PointSampler::o_resultPoints
protected

Definition at line 141 of file PointSampler.h.

Referenced by sampleAndExtractPoints().


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