[an error occurred while processing this directive]
Main Page | Modules | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

HuginBase::PointSampler Class Reference

#include <PointSampler.h>

Inheritance diagram for HuginBase::PointSampler:

Inheritance graph
List of all members.

Public Types

typedef std::vector< vigra_ext::PointPairRGBPointPairs

Public Member Functions

virtual ~PointSampler ()
virtual bool modifiesPanoramaData () const
 returns true if the algorithm changes the PanoramaData.
virtual bool runAlgorithm ()
 implementation of the algorithm.
PointSamplerexecute ()
PointPairs getResultPoints ()

Static Public Member Functions

void extractPoints (PanoramaData &pano, std::vector< vigra::FRGBImage * > images, int nPoints, bool randomPoints, AppBase::ProgressReporter &progress, std::vector< vigra_ext::PointPairRGB > &points)
 for compatibility deprecated

Protected Types

typedef vigra_ext::ImageInterpolator<

Protected Member Functions

 PointSampler (PanoramaData &panorama, AppBase::ProgressDisplay *progressDisplay, std::vector< vigra::FRGBImage * > images, int nPoints)
void sampleAndExtractPoints (AppBase::ProgressReporter &progress)
virtual void samplePoints (const std::vector< InterpolImg > &imgs, const std::vector< vigra::FImage * > &voteImgs, const std::vector< SrcPanoImage > &src, const PanoramaOptions &dest, float minI, float maxI, std::vector< std::multimap< double, vigra_ext::PointPairRGB > > &radiusHist, unsigned &nGoodPoints, unsigned &nBadPoints, AppBase::ProgressReporter &progress)=0

Static Protected Member Functions

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

Protected Attributes

std::vector< vigra::FRGBImage * > o_images
int o_numPoints
PointPairs o_resultPoints

Member Typedef Documentation

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

typedef std::vector<vigra_ext::PointPairRGB> HuginBase::PointSampler::PointPairs

Constructor & Destructor Documentation

HuginBase::PointSampler::PointSampler PanoramaData panorama,
AppBase::ProgressDisplay progressDisplay,
std::vector< vigra::FRGBImage * >  images,
int  nPoints
[inline, protected]

virtual HuginBase::PointSampler::~PointSampler  )  [inline, virtual]

Member Function Documentation

PointSampler& HuginBase::PointSampler::execute  )  [inline]

void HuginBase::PointSampler::extractPoints PanoramaData pano,
std::vector< vigra::FRGBImage * >  images,
int  nPoints,
bool  randomPoints,
AppBase::ProgressReporter progress,
std::vector< vigra_ext::PointPairRGB > &  points

for compatibility deprecated

PointPairs HuginBase::PointSampler::getResultPoints  )  [inline]

virtual bool HuginBase::PointSampler::modifiesPanoramaData  )  const [inline, virtual]

returns true if the algorithm changes the PanoramaData.

Implements HuginBase::PanoramaAlgorithm.

bool HuginBase::PointSampler::runAlgorithm  )  [virtual]

implementation of the algorithm.

You should override with your algorithm's implementiation.

Implements HuginBase::PanoramaAlgorithm.

void HuginBase::PointSampler::sampleAndExtractPoints AppBase::ProgressReporter progress  )  [protected]

virtual void HuginBase::PointSampler::samplePoints const std::vector< InterpolImg > &  imgs,
const std::vector< vigra::FImage * > &  voteImgs,
const std::vector< SrcPanoImage > &  src,
const PanoramaOptions dest,
float  minI,
float  maxI,
std::vector< std::multimap< double, vigra_ext::PointPairRGB > > &  radiusHist,
unsigned &  nGoodPoints,
unsigned &  nBadPoints,
AppBase::ProgressReporter progress
[protected, pure virtual]

Implemented in HuginBase::AllPointSampler, and HuginBase::RandomPointSampler.

template<class PointPairClass>
void HuginBase::PointSampler::sampleRadiusUniform const std::vector< std::multimap< double, PointPairClass > > &  radiusHist,
unsigned  nPoints,
std::vector< PointPairClass > &  selectedPoints,
AppBase::ProgressReporter progress
[static, protected]

extract some random points out of the bins.

This should ensure that the radius distribution is roughly uniform

Member Data Documentation

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

int HuginBase::PointSampler::o_numPoints [protected]

PointPairs HuginBase::PointSampler::o_resultPoints [protected]

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

Generated on Mon Sep 20 01:01:35 2010 for Hugintrunk by doxygen