CleanCP.cpp File Reference

algorithms for remove control points by statistic method More...

#include "CleanCP.h"
#include <algorithms/optimizer/PTOptimizer.h>
#include "algorithms/basic/CalculateCPStatistics.h"
#include "hugin_base/panotools/PanoToolsUtils.h"

Include dependency graph for CleanCP.cpp:

Include dependency graph

Go to the source code of this file.

Namespaces

namespace  HuginBase

Functions

UIntSet getCPoutsideLimit_pair (Panorama pano, double n)
 optimises images pairwise and removes for every image pair control points with error > mean+n*sigma
UIntSet getCPoutsideLimit (Panorama pano, double n, bool skipOptimisation, bool includeLineCp)
 optimises the whole panorama and removes all control points with error > mean+n*sigma
UIntSet getCPinMasks (HuginBase::Panorama pano)
 returns these control points, which are in masks


Detailed Description

algorithms for remove control points by statistic method

the algorithm is based on ptoclean by Bruno Postle

Author:
Thomas Modes
$Id$

Definition in file CleanCP.cpp.


Function Documentation

IMPEX UIntSet HuginBase::getCPinMasks Panorama  pano  ) 
 

returns these control points, which are in masks

Definition at line 179 of file CleanCP.cpp.

References hugin_utils::FDiff2D, HuginBase::Panorama::getCtrlPoints(), HuginBase::Panorama::getImage(), HuginBase::ControlPoint::image1Nr, HuginBase::ControlPoint::image2Nr, HuginBase::SrcPanoImage::isInside(), HuginBase::ControlPoint::mode, HuginBase::UIntSet, HuginBase::ControlPoint::x1, HuginBase::ControlPoint::x2, HuginBase::ControlPoint::y1, and HuginBase::ControlPoint::y2.

Referenced by MainFrame::OnRemoveCPinMasks().

IMPEX UIntSet HuginBase::getCPoutsideLimit Panorama  pano,
double  n = 2.0,
bool  skipOptimisation = false,
bool  includeLineCp = false
 

optimises the whole panorama and removes all control points with error > mean+n*sigma

Parameters:
pano panorama which should be used
n determines, how big the deviation from mean should be to determine wrong control points, default 2.0
skipOptimisation skips the optimisation step, the current position of the images is used
includeLineCp include also line control points when calculating mean and check them also for limit
Returns:
set which contains control points with error > mean+n*sigma

Definition at line 118 of file CleanCP.cpp.

References HuginBase::PTools::calcCtrlPointErrors(), HuginBase::CPVector, HuginBase::Panorama::getCtrlPoints(), HuginBase::Panorama::setCtrlPoints(), PTools::smartOptimize(), and HuginBase::UIntSet.

Referenced by PanoOperation::CleanControlPointsOperation::GetInternalCommand(), and main().

IMPEX UIntSet HuginBase::getCPoutsideLimit_pair Panorama  pano,
double  n = 2.0
 

optimises images pairwise and removes for every image pair control points with error > mean+n*sigma

Parameters:
pano panorama which should be used
n determines, how big the deviation from mean should be to determine wrong control points, default 2.0
Returns:
set which contains control points with error > mean+n*sigma

Definition at line 38 of file CleanCP.cpp.

References HuginBase::CPVector, HuginBase::Panorama::getCtrlPoints(), HuginBase::Panorama::getImage(), HuginBase::Panorama::getNrOfCtrlPoints(), HuginBase::Panorama::getNrOfImages(), HuginBase::Panorama::getOptions(), HuginBase::PanoramaOptions::getProjection(), HuginBase::Panorama::getSubset(), HuginBase::PTools::optimize(), HuginBase::OptimizeVector, HuginBase::Panorama::setCtrlPoints(), HuginBase::Panorama::setOptimizeVector(), HuginBase::Panorama::setOptions(), HuginBase::PanoramaOptions::setProjection(), HuginBase::UIntSet, and HuginBase::BaseSrcPanoImage::YawisLinkedWith().

Referenced by PanoOperation::CleanControlPointsOperation::GetInternalCommand(), and main().


Generated on Wed Jul 30 01:25:48 2014 for Hugintrunk by  doxygen 1.3.9.1