Hugin trunk 0.1
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Private Attributes | Static Private Attributes | List of all members
HuginBase::PanoramaOptions Class Reference

Panorama image options. More...

#include <PanoramaOptions.h>

Public Types

enum  ProjectionFormat {
  RECTILINEAR = 0 , CYLINDRICAL = 1 , EQUIRECTANGULAR = 2 , FULL_FRAME_FISHEYE = 3 ,
  STEREOGRAPHIC = 4 , MERCATOR = 5 , TRANSVERSE_MERCATOR = 6 , SINUSOIDAL = 7 ,
  LAMBERT = 8 , LAMBERT_AZIMUTHAL = 9 , ALBERS_EQUAL_AREA_CONIC = 10 , MILLER_CYLINDRICAL = 11 ,
  PANINI = 12 , ARCHITECTURAL = 13 , ORTHOGRAPHIC = 14 , EQUISOLID = 15 ,
  EQUI_PANINI = 16 , BIPLANE = 17 , TRIPLANE = 18 , GENERAL_PANINI = 19 ,
  THOBY_PROJECTION = 20 , HAMMER_AITOFF = 21
}
 Projection of final panorama. More...
 
enum  PTStitcherAcceleration { NO_SPEEDUP , MAX_SPEEDUP , MEDIUM_SPEEDUP }
 PTStitcher acceleration. More...
 
enum  FileFormat {
  JPEG = 0 , JPEG_m , PNG , PNG_m ,
  TIFF , TIFF_m , TIFF_mask , TIFF_multilayer ,
  TIFF_multilayer_mask , PICT , PSD , PSD_m ,
  PSD_mask , PAN , IVR , IVR_java ,
  VRML , QTVR , HDR , HDR_m ,
  EXR , EXR_m , FILEFORMAT_NULL
}
 Fileformat. More...
 
enum  OutputMode { OUTPUT_LDR =0 , OUTPUT_HDR }
 output mode More...
 
enum  HDRMergeType { HDRMERGE_AVERAGE =0 , HDRMERGE_DEGHOST =1 }
 
enum  BlendingMechanism {
  NO_BLEND =0 , PTBLENDER_BLEND =1 , ENBLEND_BLEND =2 , SMARTBLEND_BLEND =3 ,
  PTMASKER_BLEND =4 , INTERNAL_BLEND =5
}
 blenders More...
 
enum  Remapper { NONA =0 , PTMENDER }
 
enum  EdgeFillMode { NO_EDGE_FILL = 0 , EDGE_FILL_SOLID = 1 }
 edge fill modes More...
 

Public Member Functions

 PanoramaOptions ()
 
virtual ~PanoramaOptions ()
 
virtual void reset ()
 
void printScriptLine (std::ostream &o, bool forPTOptimizer=false) const
 
const std::string & getOutputExtension () const
 return the extension used by the current output format
 
void setWidth (unsigned int w, bool keepView=true)
 set panorama width keep the HFOV, if keepView=true
 
void setHeight (unsigned int h)
 set panorama height
 
unsigned int getWidth () const
 
unsigned int getHeight () const
 get panorama height
 
vigra::Size2D getSize () const
 get size of output image
 
const vigra::Rect2D & getROI () const
 
void setROI (const vigra::Rect2D &val)
 
void setProjection (ProjectionFormat f)
 set the Projection format and adjust the hfov/vfov if nessecary
 
void resetProjectionParameters ()
 sets the optional parameters to their default values
 
PanoramaOptions::ProjectionFormat getProjection () const
 
const std::vector< double > & getProjectionParameters () const
 Get the optional projection parameters.
 
void setProjectionParameters (const std::vector< double > &params)
 set the optional parameters (they need to be of the correct size)
 
bool fovCalcSupported (ProjectionFormat f) const
 true, if FOV calcuations are supported for projection f
 
void setHFOV (double h, bool keepView=true)
 set the horizontal field of view.
 
double getHFOV () const
 
void setVFOV (double v)
 
double getVFOV () const
 
double getMaxHFOV () const
 get maximum possible hfov with current projection
 
double getMaxVFOV () const
 get maximum possible vfov with current projection
 

Static Public Member Functions

static const std::string & getFormatName (FileFormat f)
 return string name of output file format
 
static FileFormat getFormatFromName (const std::string &name)
 returns the FileFormat corrosponding to name.
 

Public Attributes

FileFormat outputFormat
 
int quality
 
std::string tiffCompression
 
bool tiff_saveROI
 
unsigned int colorReferenceImage
 
vigra_ext::Interpolator interpolator
 
unsigned int optimizeReferenceImage
 
BlendingMechanism blendMode
 
HDRMergeType hdrMergeMode
 
Remapper remapper
 
bool remapUsingGPU
 
bool saveCoordImgs
 
double huberSigma
 
double photometricHuberSigma
 
OutputMode outputMode
 
bool outputLDRBlended
 save blended panorama (LDR)
 
bool outputLDRLayers
 save remapped layers (LDR)
 
bool outputLDRExposureRemapped
 save remapped layers (no exposure adjustment)
 
bool outputLDRExposureLayers
 save blended exposure layers, do not perform fusion (no exposure adjustment)
 
bool outputLDRExposureLayersFused
 save blended exposure layers which are then fused (no exposure adjustment)
 
bool outputLDRStacks
 
bool outputLDRExposureBlended
 < save exposure fused stacks (no exposure adjustment)
 
bool outputHDRBlended
 save blended panorama (HDR)
 
bool outputHDRLayers
 save remapped layers (HDR)
 
bool outputHDRStacks
 save image stacks (HDR)
 
std::string outputLayersCompression
 
std::string outputImageType
 
std::string outputImageTypeCompression
 
std::string outputImageTypeHDR
 
std::string outputImageTypeHDRCompression
 
std::string enblendOptions
 
std::string enfuseOptions
 
std::string hdrmergeOptions
 
std::string verdandiOptions
 
double outputExposureValue
 
std::vector< floatoutputEMoRParams
 
double outputRangeCompression
 
std::string outputPixelType
 
double outputStacksMinOverlap
 
double outputLayersExposureDiff
 
EdgeFillMode edgeFillMode
 
bool keepEdgeFillInput
 
pano_projection_features m_projFeatures
 

Private Attributes

double m_hfov
 
double m_vfov
 
ProjectionFormat m_projectionFormat
 
std::vector< doublem_projectionParams
 
vigra::Size2D m_size
 
vigra::Rect2D m_roi
 

Static Private Attributes

static const std::string fileformatNames []
 
static const std::string fileformatExt []
 

Detailed Description

Panorama image options.

this holds the settings for the final panorama

Definition at line 79 of file PanoramaOptions.h.

Member Enumeration Documentation

◆ BlendingMechanism

blenders

Enumerator
NO_BLEND 
PTBLENDER_BLEND 
ENBLEND_BLEND 
SMARTBLEND_BLEND 
PTMASKER_BLEND 
INTERNAL_BLEND 

Definition at line 157 of file PanoramaOptions.h.

◆ EdgeFillMode

edge fill modes

Enumerator
NO_EDGE_FILL 
EDGE_FILL_SOLID 

Definition at line 173 of file PanoramaOptions.h.

◆ FileFormat

Fileformat.

Enumerator
JPEG 
JPEG_m 
PNG 
PNG_m 
TIFF 
TIFF_m 
TIFF_mask 
TIFF_multilayer 
TIFF_multilayer_mask 
PICT 
PSD 
PSD_m 
PSD_mask 
PAN 
IVR 
IVR_java 
VRML 
QTVR 
HDR 
HDR_m 
EXR 
EXR_m 
FILEFORMAT_NULL 

Definition at line 119 of file PanoramaOptions.h.

◆ HDRMergeType

Enumerator
HDRMERGE_AVERAGE 
HDRMERGE_DEGHOST 

Definition at line 151 of file PanoramaOptions.h.

◆ OutputMode

output mode

Enumerator
OUTPUT_LDR 
OUTPUT_HDR 

Definition at line 146 of file PanoramaOptions.h.

◆ ProjectionFormat

Projection of final panorama.

Enumerator
RECTILINEAR 
CYLINDRICAL 
EQUIRECTANGULAR 
FULL_FRAME_FISHEYE 
STEREOGRAPHIC 
MERCATOR 
TRANSVERSE_MERCATOR 
SINUSOIDAL 
LAMBERT 
LAMBERT_AZIMUTHAL 
ALBERS_EQUAL_AREA_CONIC 
MILLER_CYLINDRICAL 
PANINI 
ARCHITECTURAL 
ORTHOGRAPHIC 
EQUISOLID 
EQUI_PANINI 
BIPLANE 
TRIPLANE 
GENERAL_PANINI 
THOBY_PROJECTION 
HAMMER_AITOFF 

Definition at line 85 of file PanoramaOptions.h.

◆ PTStitcherAcceleration

PTStitcher acceleration.

Enumerator
NO_SPEEDUP 
MAX_SPEEDUP 
MEDIUM_SPEEDUP 

Definition at line 111 of file PanoramaOptions.h.

◆ Remapper

Enumerator
NONA 
PTMENDER 

Definition at line 167 of file PanoramaOptions.h.

Constructor & Destructor Documentation

◆ PanoramaOptions()

HuginBase::PanoramaOptions::PanoramaOptions ( )
inline

Definition at line 179 of file PanoramaOptions.h.

◆ ~PanoramaOptions()

virtual HuginBase::PanoramaOptions::~PanoramaOptions ( )
inlinevirtual

Definition at line 184 of file PanoramaOptions.h.

Member Function Documentation

◆ fovCalcSupported()

bool HuginBase::PanoramaOptions::fovCalcSupported ( ProjectionFormat  f) const

◆ getFormatFromName()

PanoramaOptions::FileFormat HuginBase::PanoramaOptions::getFormatFromName ( const std::string &  name)
static

returns the FileFormat corrosponding to name.

if name is not recognized, FileFormat::TIFF is returned

Definition at line 74 of file PanoramaOptions.cpp.

References DEBUG_ERROR, FILEFORMAT_NULL, fileformatNames, threshold(), and TIFF_m.

Referenced by HuginBase::PanoramaMemento::loadPTScript().

◆ getFormatName()

const std::string & HuginBase::PanoramaOptions::getFormatName ( FileFormat  f)
static

return string name of output file format

Definition at line 62 of file PanoramaOptions.cpp.

References FILEFORMAT_NULL, fileformatNames, and threshold().

Referenced by printScriptLine(), and HuginBase::Nona::stitchPanoIntern().

◆ getHeight()

unsigned int HuginBase::PanoramaOptions::getHeight ( ) const
inline

◆ getHFOV()

double HuginBase::PanoramaOptions::getHFOV ( ) const
inline

◆ getMaxHFOV()

double HuginBase::PanoramaOptions::getMaxHFOV ( ) const
inline

get maximum possible hfov with current projection

Definition at line 333 of file PanoramaOptions.h.

Referenced by setHFOV().

◆ getMaxVFOV()

double HuginBase::PanoramaOptions::getMaxVFOV ( ) const
inline

get maximum possible vfov with current projection

Definition at line 337 of file PanoramaOptions.h.

Referenced by getVFOV(), setHFOV(), setVFOV(), and setWidth().

◆ getOutputExtension()

const std::string & HuginBase::PanoramaOptions::getOutputExtension ( ) const

◆ getProjection()

PanoramaOptions::ProjectionFormat HuginBase::PanoramaOptions::getProjection ( ) const
inline

◆ getProjectionParameters()

const std::vector< double > & HuginBase::PanoramaOptions::getProjectionParameters ( ) const
inline

◆ getROI()

const vigra::Rect2D & HuginBase::PanoramaOptions::getROI ( ) const
inline

◆ getSize()

vigra::Size2D HuginBase::PanoramaOptions::getSize ( ) const
inline

◆ getVFOV()

double HuginBase::PanoramaOptions::getVFOV ( ) const

◆ getWidth()

unsigned int HuginBase::PanoramaOptions::getWidth ( ) const
inline

Definition at line 275 of file PanoramaOptions.h.

Referenced by AddGeometricControlPoint(), PreviewIdentifyTool::AfterDrawImagesEvent(), PreviewCameraTool::ChangeZoomLevel(), BrowsePTOFilesDialog::FillPanoInfo(), HuginQueue::detail::GenerateFinalArgfile(), LensCalImageCtrl::GenerateRemappedImage(), PerspectiveImageCtrl::GenerateRemappedImage(), GenerateThumbnail(), ProjectListBox::GetAttributeString(), MeshManager::PanosphereOverviewMeshInfo::GetCoord3D(), MeshManager::PlaneOverviewMeshInfo::GetCoord3D(), MeshManager::PanosphereOverviewMeshInfo::GetMeshCoords3D(), MeshManager::PlaneOverviewMeshInfo::GetMeshCoords3D(), PerspectivePanel::GetPanorama(), HuginBase::SmallRemappedImageCache::getRemapped(), HuginBase::Nona::FileRemapper< ImageType, AlphaType >::getRemapped(), HuginQueue::GetStitchingCommandQueue(), HuginQueue::GetStitchingCommandQueueUserOutput(), GreatCircleArc::GreatCircleArc(), main(), PanoDetector::matchMultiRow(), PlaneOverviewToolHelper::MouseMoved(), GLPreviewFrame::OnCreateCP(), PanoOutputDialog::OnOk(), PanoOutputDialog::PanoOutputDialog(), PointFineTuneProjectionAware(), printScriptLine(), GLPreviewRenderer::Resize(), GLPanosphereOverviewRenderer::Resize(), GLPlaneOverviewRenderer::Resize(), HuginBase::Nona::MultiImageRemapper< ImageType, AlphaType >::saveRemapped(), HuginBase::Nona::detail::saveRemapped(), SetCanvas(), SetCrop(), HuginBase::Nona::WeightedStitcher< ImageType, AlphaType >::stitch(), HuginBase::Nona::SimpleStitcher< ImageType, AlphaType >::stitch(), HuginBase::Nona::WeightedStitcher< ImageType, AlphaType >::stitch(), HuginBase::Nona::ReduceStitcher< ImageType, AlphaType >::stitch(), VertexCoordRemapper::UpdateAndResetIndex(), PreviewCameraTool::UpdateCenter(), and PreviewPanel::updatePreview().

◆ printScriptLine()

void HuginBase::PanoramaOptions::printScriptLine ( std::ostream &  o,
bool  forPTOptimizer = false 
) const

◆ reset()

virtual void HuginBase::PanoramaOptions::reset ( )
inlinevirtual

◆ resetProjectionParameters()

void HuginBase::PanoramaOptions::resetProjectionParameters ( )

sets the optional parameters to their default values

Definition at line 193 of file PanoramaOptions.cpp.

References m_projFeatures, setProjectionParameters(), and threshold().

Referenced by GLPreviewFrame::OnProjParameterReset(), PreviewFrame::OnProjParameterReset(), and setProjection().

◆ setHeight()

void HuginBase::PanoramaOptions::setHeight ( unsigned int  h)

◆ setHFOV()

void HuginBase::PanoramaOptions::setHFOV ( double  h,
bool  keepView = true 
)

◆ setProjection()

void HuginBase::PanoramaOptions::setProjection ( ProjectionFormat  f)

◆ setProjectionParameters()

void HuginBase::PanoramaOptions::setProjectionParameters ( const std::vector< double > &  params)

◆ setROI()

void HuginBase::PanoramaOptions::setROI ( const vigra::Rect2D &  val)
inline

◆ setVFOV()

void HuginBase::PanoramaOptions::setVFOV ( double  v)

◆ setWidth()

void HuginBase::PanoramaOptions::setWidth ( unsigned int  w,
bool  keepView = true 
)

Member Data Documentation

◆ blendMode

BlendingMechanism HuginBase::PanoramaOptions::blendMode

◆ colorReferenceImage

unsigned int HuginBase::PanoramaOptions::colorReferenceImage

◆ edgeFillMode

EdgeFillMode HuginBase::PanoramaOptions::edgeFillMode

◆ enblendOptions

std::string HuginBase::PanoramaOptions::enblendOptions

◆ enfuseOptions

std::string HuginBase::PanoramaOptions::enfuseOptions

◆ fileformatExt

const std::string HuginBase::PanoramaOptions::fileformatExt
staticprivate
Initial value:
=
{
"jpg",
"jpg",
"png",
"png",
"tif",
"tif",
"tif",
"tif",
"tif",
"pict",
"psd",
"psd",
"psd",
"pan",
"ivr",
"IVR_java",
"wrl",
"mov",
"hdr",
"hdr",
"exr",
"exr"
}

Definition at line 416 of file PanoramaOptions.h.

Referenced by getOutputExtension().

◆ fileformatNames

const std::string HuginBase::PanoramaOptions::fileformatNames
staticprivate
Initial value:
=
{
"JPEG",
"JPEG_m",
"PNG",
"PNG_m",
"TIFF",
"TIFF_m",
"TIFF_mask",
"TIFF_multilayer",
"TIFF_multilayer_mask",
"PICT",
"PSD",
"PSD_m",
"PSD_mask",
"PAN",
"IVR",
"IVR_java",
"VRML",
"QTVR",
"HDR",
"HDR_m",
"EXR",
"EXR_m"
}

Definition at line 415 of file PanoramaOptions.h.

Referenced by getFormatFromName(), and getFormatName().

◆ hdrMergeMode

HDRMergeType HuginBase::PanoramaOptions::hdrMergeMode

◆ hdrmergeOptions

std::string HuginBase::PanoramaOptions::hdrmergeOptions

◆ huberSigma

double HuginBase::PanoramaOptions::huberSigma

Definition at line 367 of file PanoramaOptions.h.

Referenced by main2(), processImg(), and HuginBase::SmartOptimise::smartOptimize().

◆ interpolator

vigra_ext::Interpolator HuginBase::PanoramaOptions::interpolator

◆ keepEdgeFillInput

bool HuginBase::PanoramaOptions::keepEdgeFillInput

◆ m_hfov

double HuginBase::PanoramaOptions::m_hfov
private

◆ m_projectionFormat

ProjectionFormat HuginBase::PanoramaOptions::m_projectionFormat
private

◆ m_projectionParams

std::vector<double> HuginBase::PanoramaOptions::m_projectionParams
private

Definition at line 423 of file PanoramaOptions.h.

Referenced by printScriptLine(), setProjection(), and setProjectionParameters().

◆ m_projFeatures

pano_projection_features HuginBase::PanoramaOptions::m_projFeatures

◆ m_roi

vigra::Rect2D HuginBase::PanoramaOptions::m_roi
private

Definition at line 425 of file PanoramaOptions.h.

Referenced by getVFOV(), printScriptLine(), setHeight(), setVFOV(), and setWidth().

◆ m_size

vigra::Size2D HuginBase::PanoramaOptions::m_size
private

Definition at line 424 of file PanoramaOptions.h.

Referenced by getVFOV(), printScriptLine(), setHeight(), setVFOV(), and setWidth().

◆ m_vfov

double HuginBase::PanoramaOptions::m_vfov
private

Definition at line 418 of file PanoramaOptions.h.

◆ optimizeReferenceImage

unsigned int HuginBase::PanoramaOptions::optimizeReferenceImage

◆ outputEMoRParams

std::vector<float> HuginBase::PanoramaOptions::outputEMoRParams

Definition at line 398 of file PanoramaOptions.h.

Referenced by GenerateThumbnail(), and HuginBase::Nona::stitchPanorama().

◆ outputExposureValue

double HuginBase::PanoramaOptions::outputExposureValue

◆ outputFormat

FileFormat HuginBase::PanoramaOptions::outputFormat

◆ outputHDRBlended

bool HuginBase::PanoramaOptions::outputHDRBlended

◆ outputHDRLayers

bool HuginBase::PanoramaOptions::outputHDRLayers

◆ outputHDRStacks

bool HuginBase::PanoramaOptions::outputHDRStacks

◆ outputImageType

std::string HuginBase::PanoramaOptions::outputImageType

◆ outputImageTypeCompression

std::string HuginBase::PanoramaOptions::outputImageTypeCompression

◆ outputImageTypeHDR

std::string HuginBase::PanoramaOptions::outputImageTypeHDR

◆ outputImageTypeHDRCompression

std::string HuginBase::PanoramaOptions::outputImageTypeHDRCompression

◆ outputLayersCompression

std::string HuginBase::PanoramaOptions::outputLayersCompression

◆ outputLayersExposureDiff

double HuginBase::PanoramaOptions::outputLayersExposureDiff

◆ outputLDRBlended

bool HuginBase::PanoramaOptions::outputLDRBlended

◆ outputLDRExposureBlended

bool HuginBase::PanoramaOptions::outputLDRExposureBlended

< save exposure fused stacks (no exposure adjustment)

save blended exposure layers created from fused image stacks (no exposure adjustment)

Definition at line 380 of file PanoramaOptions.h.

Referenced by PanoPanel::CheckGoodSize(), HuginQueue::GetStitchingCommandQueue(), HuginBase::PanoramaMemento::loadPTScript(), PanoOutputDialog::OnOk(), PanoPanel::OnOutputFilesChanged(), HuginQueue::detail::PrintDetailInfo(), and SetOutputType().

◆ outputLDRExposureLayers

bool HuginBase::PanoramaOptions::outputLDRExposureLayers

◆ outputLDRExposureLayersFused

bool HuginBase::PanoramaOptions::outputLDRExposureLayersFused

◆ outputLDRExposureRemapped

bool HuginBase::PanoramaOptions::outputLDRExposureRemapped

◆ outputLDRLayers

bool HuginBase::PanoramaOptions::outputLDRLayers

◆ outputLDRStacks

bool HuginBase::PanoramaOptions::outputLDRStacks

◆ outputMode

OutputMode HuginBase::PanoramaOptions::outputMode

◆ outputPixelType

std::string HuginBase::PanoramaOptions::outputPixelType

◆ outputRangeCompression

double HuginBase::PanoramaOptions::outputRangeCompression

◆ outputStacksMinOverlap

double HuginBase::PanoramaOptions::outputStacksMinOverlap

◆ photometricHuberSigma

double HuginBase::PanoramaOptions::photometricHuberSigma

Definition at line 369 of file PanoramaOptions.h.

◆ quality

int HuginBase::PanoramaOptions::quality

◆ remapper

Remapper HuginBase::PanoramaOptions::remapper

◆ remapUsingGPU

bool HuginBase::PanoramaOptions::remapUsingGPU

◆ saveCoordImgs

bool HuginBase::PanoramaOptions::saveCoordImgs

◆ tiff_saveROI

bool HuginBase::PanoramaOptions::tiff_saveROI

◆ tiffCompression

std::string HuginBase::PanoramaOptions::tiffCompression

◆ verdandiOptions

std::string HuginBase::PanoramaOptions::verdandiOptions

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