Hugintrunk
0.1
|
Namespaces | |
detail | |
Classes | |
class | SingleImageRemapper |
functor to create a remapped image More... | |
class | FileRemapper |
functor to create a remapped image, loads image from disk More... | |
class | RemappedPanoImage |
struct to hold a image state for stitching More... | |
struct | _FuncParams |
Parameters for transformation calls Can be just one double, two double, 4 double, a matrix, matrix and a double. More... | |
struct | _fDesc |
Function descriptor to be executed by exec_function. More... | |
class | SpaceTransform |
class | Stitcher |
implements a stitching algorithm More... | |
class | MultiImageRemapper |
remap a set of images, and store the individual remapped files. More... | |
class | TiffMultiLayerRemapper |
stitch multilayer More... | |
class | WeightedStitcher |
struct | ReduceToDifferenceFunctor |
Difference reduce functor. More... | |
class | ReduceStitcher |
create a panorama using the reduce operation on all overlapping pixels. More... | |
class | SimpleStitcher |
A stitcher without seaming, just copies the images over each other. More... | |
struct | StackingBlender |
blend images, by simply stacking them, without soft blending or boundary calculation More... | |
Typedefs | |
typedef void(* | trfn )(double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
Transformation function type. More... | |
typedef struct HuginBase::Nona::_fDesc | fDescription |
Function descriptor to be executed by exec_function. More... | |
typedef std::map< std::string, std::string > | AdvancedOptions |
Functions | |
template<class FFType , class SrcIter , class SrcAccessor , class DestIter , class DestAccessor > | |
void | applyFlatfield (vigra::triple< SrcIter, SrcIter, SrcAccessor > srcImg, vigra::pair< DestIter, DestAccessor > destImg, vigra::ImageImportInfo &ffInfo, double gamma, double gammaMaxVal, bool division, typename vigra::NumericTraits< typename SrcAccessor::value_type >::RealPromote a, typename vigra::NumericTraits< typename SrcAccessor::value_type >::RealPromote b, bool dither) |
load a flatfield image and apply the correction More... | |
template<class TRANSFORM > | |
void | estimateImageRect (const SrcPanoImage &src, const PanoramaOptions &dest, TRANSFORM &transf, vigra::Rect2D &imgRect) |
calculate the outline of the image More... | |
template<class TRANSFORM > | |
void | estimateImageAlpha (const SrcPanoImage &src, const PanoramaOptions &dest, TRANSFORM &transf, vigra::Rect2D &imgRect, vigra::BImage &alpha, double &scale) |
template<class SrcImgType , class FlatImgType , class DestImgType , class MaskImgType > | |
void | remapImage (SrcImgType &srcImg, const MaskImgType &srcAlpha, const FlatImgType &srcFlat, const SrcPanoImage &src, const PanoramaOptions &dest, vigra::Rect2D outputRect, RemappedPanoImage< DestImgType, MaskImgType > &remapped, AppBase::ProgressDisplay *progress) |
remap a single image More... | |
template<class ImageType > | |
ImageType | CopyImageNewSize (const ImageType &image, const vigra::Size2D &newSize) |
copies image into new image with changed size More... | |
void | rotate_erect (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | inv_radial (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | resize (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | horiz (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | vert (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | radial (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | persp_sphere (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | persp_rect (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | rect_erect (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | pano_erect (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | erect_pano (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | transpano_erect (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | erect_transpano (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | sphere_tp_erect (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | rect_sphere_tp (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | sphere_tp_rect (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | sphere_tp_pano (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | pano_sphere_tp (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | erect_rect (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | erect_sphere_tp (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
void | mercator_erect (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
convert from erect to mercator More... | |
void | erect_mercator (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
convert from mercator to erect More... | |
void | transmercator_erect (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
convert from erect to transverse mercator More... | |
void | erect_transmercator (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
convert from erect to transverse mercator More... | |
void | sinusoidal_erect (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
convert from erect to sinusoidal More... | |
void | erect_sinusoidal (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
convert from sinusoidal to erect More... | |
void | stereographic_erect (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
convert from erect to stereographic More... | |
void | erect_stereographic (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
convert from stereographic to erect More... | |
static void | cubeZero_copy (double *a, int *n, double *root) |
static void | squareZero_copy (double *a, int *n, double *root) |
static double | cubeRoot_copy (double x) |
static double | smallestRoot_copy (double *p) |
static double | CalcCorrectionRadius_copy (double *coeff) |
static void | radial_shift (double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
Matrix3 | SetMatrix (double a, double b, double c, int cl) |
double | estScaleFactorForFullFrame (const SrcPanoImage &src) |
Calculate effective scaling factor for a given source image. More... | |
double | estRadialScaleCrop (const std::vector< double > &coeff, int width, int height) |
Calculate effective scaling factor. More... | |
template<class VECTOR > | |
void | combinePolynom4 (const VECTOR &p, const VECTOR &q, VECTOR &c) |
combine 4rd degree polynomials More... | |
template<class TRANSFORM > | |
void | traceImageOutline (vigra::Size2D sz, TRANSFORM &transf, vigra::Rect2D &inside, vigra::Rect2D &boundingBox) |
Internal function to estimate the image scaling required to avoid black stripes at the image borders. More... | |
void | stitchPanorama (const PanoramaData &pano, const PanoramaOptions &opt, AppBase::ProgressDisplay *progress, const std::string &basename, const UIntSet &usedImgs, const AdvancedOptions &advOptions) |
The main stitching function. More... | |
template<typename ImageType , typename AlphaType > | |
static void | stitchPanoIntern (const PanoramaData &pano, const PanoramaOptions &opts, AppBase::ProgressDisplay *progress, const std::string &basename, UIntSet imgs, const AdvancedOptions &advOptions) |
void | stitchPanoGray_8_16 (const PanoramaData &pano, const PanoramaOptions &opts, AppBase::ProgressDisplay *progress, const std::string &basename, const UIntSet &usedImgs, const char *pixelType, const AdvancedOptions &advOptions) |
void | stitchPanoGray_32_float (const PanoramaData &pano, const PanoramaOptions &opts, AppBase::ProgressDisplay *progress, const std::string &basename, const UIntSet &usedImgs, const char *pixelType, const AdvancedOptions &advOptions) |
void | stitchPanoRGB_8_16 (const PanoramaData &pano, const PanoramaOptions &opts, AppBase::ProgressDisplay *progress, const std::string &basename, const UIntSet &usedImgs, const char *pixelType, const AdvancedOptions &advOptions) |
void | stitchPanoRGB_32_float (const PanoramaData &pano, const PanoramaOptions &opts, AppBase::ProgressDisplay *progress, const std::string &basename, const UIntSet &usedImgs, const char *pixelType, const AdvancedOptions &advOptions) |
bool | GetAdvancedOption (const AdvancedOptions &opts, const std::string &name, const bool defaultValue) |
check if given option is saved and return its boolean value, otherwise return defaultValue More... | |
std::string | GetAdvancedOption (const AdvancedOptions &opts, const std::string &name, const std::string &defaultValue) |
float | GetAdvancedOption (const AdvancedOptions &opts, const std::string &name, const float defaultValue) |
void | SetAdvancedOption (AdvancedOptions &opts, const std::string &name, const bool value) |
store the option with name in AdvancedOptions More... | |
void | SetAdvancedOption (AdvancedOptions &opts, const std::string &name, const std::string &value) |
void | SetAdvancedOption (AdvancedOptions &opts, const std::string &name, const float value) |
typedef std::map<std::string, std::string> HuginBase::Nona::AdvancedOptions |
Definition at line 37 of file StitcherOptions.h.
typedef struct HuginBase::Nona::_fDesc HuginBase::Nona::fDescription |
Function descriptor to be executed by exec_function.
typedef void(* HuginBase::Nona::trfn)(double x_dest, double y_dest, double *x_src, double *y_src, const _FuncParams ¶ms) |
Transformation function type.
Definition at line 67 of file SpaceTransform.h.
void HuginBase::Nona::applyFlatfield | ( | vigra::triple< SrcIter, SrcIter, SrcAccessor > | srcImg, |
vigra::pair< DestIter, DestAccessor > | destImg, | ||
vigra::ImageImportInfo & | ffInfo, | ||
double | gamma, | ||
double | gammaMaxVal, | ||
bool | division, | ||
typename vigra::NumericTraits< typename SrcAccessor::value_type >::RealPromote | a, | ||
typename vigra::NumericTraits< typename SrcAccessor::value_type >::RealPromote | b, | ||
bool | dither | ||
) |
load a flatfield image and apply the correction
Definition at line 238 of file ImageRemapper.h.
References vigra_ext::destImage(), vigra_ext::flatfieldVigCorrection(), and vigra_ext::srcImage().
|
static |
Definition at line 879 of file SpaceTransform.cpp.
References smallestRoot_copy().
Referenced by HuginBase::Nona::SpaceTransform::Init(), HuginBase::Nona::SpaceTransform::InitInv(), HuginBase::Nona::SpaceTransform::InitInvRadialCorrect(), and HuginBase::Nona::SpaceTransform::InitRadialCorrect().
void HuginBase::Nona::combinePolynom4 | ( | const VECTOR & | p, |
const VECTOR & | q, | ||
VECTOR & | c | ||
) |
combine 4rd degree polynomials
Computes new polynomial so that: c(x) ~= q(p(x)) c is also a 4rd degree polynomial, and the expansion is cut after x^4 constant term is assumed to be 0, and not included in p,q and c
Definition at line 258 of file SpaceTransform.h.
ImageType HuginBase::Nona::CopyImageNewSize | ( | const ImageType & | image, |
const vigra::Size2D & | newSize | ||
) |
copies image into new image with changed size
Definition at line 423 of file RemappedPanoImage.h.
References vigra::omp::copyImage(), vigra_ext::destImage(), and vigra_ext::srcImageRange().
Referenced by HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::remapImage().
|
static |
Definition at line 852 of file SpaceTransform.cpp.
References vigra_ext::pow().
Referenced by cubeZero_copy().
|
static |
Definition at line 808 of file SpaceTransform.cpp.
References cubeRoot_copy(), PI, and squareZero_copy().
Referenced by smallestRoot_copy().
void HuginBase::Nona::erect_mercator | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
convert from mercator to erect
Definition at line 519 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
Referenced by HuginBase::PTools::Transform::emitGLSL(), and HuginBase::Nona::SpaceTransform::Init().
void HuginBase::Nona::erect_pano | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 329 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
Referenced by HuginBase::PTools::Transform::emitGLSL(), and HuginBase::Nona::SpaceTransform::Init().
void HuginBase::Nona::erect_rect | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 483 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
Referenced by HuginBase::PTools::Transform::emitGLSL(), and HuginBase::Nona::SpaceTransform::Init().
void HuginBase::Nona::erect_sinusoidal | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
convert from sinusoidal to erect
Definition at line 558 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
Referenced by HuginBase::PTools::Transform::emitGLSL(), and HuginBase::Nona::SpaceTransform::Init().
void HuginBase::Nona::erect_sphere_tp | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 491 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
Referenced by HuginBase::PTools::Transform::emitGLSL(), HuginBase::Nona::SpaceTransform::Init(), and HuginBase::Nona::SpaceTransform::InitInv().
void HuginBase::Nona::erect_stereographic | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
convert from stereographic to erect
Definition at line 580 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
Referenced by HuginBase::PTools::Transform::emitGLSL(), and HuginBase::Nona::SpaceTransform::Init().
void HuginBase::Nona::erect_transmercator | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
convert from erect to transverse mercator
Definition at line 539 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
Referenced by HuginBase::PTools::Transform::emitGLSL(), and HuginBase::Nona::SpaceTransform::Init().
void HuginBase::Nona::erect_transpano | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 345 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
void HuginBase::Nona::estimateImageAlpha | ( | const SrcPanoImage & | src, |
const PanoramaOptions & | dest, | ||
TRANSFORM & | transf, | ||
vigra::Rect2D & | imgRect, | ||
vigra::BImage & | alpha, | ||
double & | scale | ||
) |
void HuginBase::Nona::estimateImageRect | ( | const SrcPanoImage & | src, |
const PanoramaOptions & | dest, | ||
TRANSFORM & | transf, | ||
vigra::Rect2D & | imgRect | ||
) |
calculate the outline of the image
src | description of source picture |
dest | description of output picture (panorama) |
imgRect | output: position of image in panorama. |
double HuginBase::Nona::estRadialScaleCrop | ( | const std::vector< double > & | coeff, |
int | width, | ||
int | height | ||
) |
Calculate effective scaling factor.
This function returns the smalles scale factor that has been applied
If values < 1 are returned, black borders will occur. In that case the distortion correction parameters might need to be adjusted to avoid the black borders.
coef1 | lens distortion coefficients, including d coefficient. |
width | image width |
height | image height |
Definition at line 964 of file SpaceTransform.cpp.
IMPEX double HuginBase::Nona::estScaleFactorForFullFrame | ( | const SrcPanoImage & | src | ) |
Calculate effective scaling factor for a given source image.
Definition at line 940 of file SpaceTransform.cpp.
References HuginBase::SrcPanoImage::getCorrectTCA(), HuginBase::Nona::SpaceTransform::InitInvRadialCorrect(), celeste::max(), and traceImageOutline().
Referenced by correctImage().
IMPEX bool HuginBase::Nona::GetAdvancedOption | ( | const AdvancedOptions & | opts, |
const std::string & | name, | ||
const bool | defaultValue | ||
) |
check if given option is saved and return its boolean value, otherwise return defaultValue
Definition at line 33 of file StitcherOptions.cpp.
Referenced by main(), HuginBase::Nona::TiffMultiLayerRemapper< ImageType, AlphaImageType >::prepareOutputFile(), HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::remapImage(), HuginBase::Nona::MultiImageRemapper< ImageType, AlphaImageType >::saveRemapped(), HuginBase::Nona::MultiImageRemapper< ImageType, AlphaImageType >::stitch(), HuginBase::Nona::WeightedStitcher< ImageType, AlphaType >::stitch(), and HuginBase::Nona::ReduceStitcher< ImageType, AlphaType >::stitch().
IMPEX std::string HuginBase::Nona::GetAdvancedOption | ( | const AdvancedOptions & | opts, |
const std::string & | name, | ||
const std::string & | defaultValue | ||
) |
Definition at line 52 of file StitcherOptions.cpp.
IMPEX float HuginBase::Nona::GetAdvancedOption | ( | const AdvancedOptions & | opts, |
const std::string & | name, | ||
const float | defaultValue | ||
) |
Definition at line 66 of file StitcherOptions.cpp.
References hugin_utils::stringToDouble().
void HuginBase::Nona::horiz | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 168 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::shift.
Referenced by HuginBase::PTools::Transform::emitGLSL(), HuginBase::Nona::SpaceTransform::Init(), HuginBase::Nona::SpaceTransform::InitInv(), HuginBase::Nona::SpaceTransform::InitInvRadialCorrect(), and HuginBase::Nona::SpaceTransform::InitRadialCorrect().
void HuginBase::Nona::inv_radial | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 95 of file SpaceTransform.cpp.
References MAXITER, R_EPS, HuginBase::Nona::_FuncParams::var0, HuginBase::Nona::_FuncParams::var1, HuginBase::Nona::_FuncParams::var2, HuginBase::Nona::_FuncParams::var3, and HuginBase::Nona::_FuncParams::var4.
Referenced by HuginBase::Nona::SpaceTransform::InitInv(), and HuginBase::Nona::SpaceTransform::InitInvRadialCorrect().
void HuginBase::Nona::mercator_erect | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
convert from erect to mercator
Definition at line 511 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance, and vigra_ext::log().
Referenced by HuginBase::Nona::SpaceTransform::InitInv().
void HuginBase::Nona::pano_erect | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 321 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
Referenced by HuginBase::Nona::SpaceTransform::InitInv().
void HuginBase::Nona::pano_sphere_tp | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 452 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
Referenced by HuginBase::PTools::Transform::emitGLSL(), and HuginBase::Nona::SpaceTransform::Init().
void HuginBase::Nona::persp_rect | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 267 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::mt, Matrix3::TransformVector(), HuginBase::Nona::_FuncParams::var1, HuginBase::Nona::_FuncParams::var2, HuginBase::Nona::_FuncParams::var3, Vector3::x, Vector3::y, and Vector3::z.
void HuginBase::Nona::persp_sphere | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 237 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance, HuginBase::Nona::_FuncParams::mt, Matrix3::TransformVector(), Vector3::x, Vector3::y, and Vector3::z.
Referenced by HuginBase::PTools::Transform::emitGLSL(), HuginBase::Nona::SpaceTransform::Init(), and HuginBase::Nona::SpaceTransform::InitInv().
void HuginBase::Nona::radial | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 184 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::var0, HuginBase::Nona::_FuncParams::var1, HuginBase::Nona::_FuncParams::var2, HuginBase::Nona::_FuncParams::var3, HuginBase::Nona::_FuncParams::var4, and HuginBase::Nona::_FuncParams::var5.
Referenced by HuginBase::PTools::Transform::emitGLSL(), HuginBase::Nona::SpaceTransform::Init(), and HuginBase::Nona::SpaceTransform::InitRadialCorrect().
|
static |
Definition at line 896 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::var0, HuginBase::Nona::_FuncParams::var1, HuginBase::Nona::_FuncParams::var2, HuginBase::Nona::_FuncParams::var3, HuginBase::Nona::_FuncParams::var4, HuginBase::Nona::_FuncParams::var5, HuginBase::Nona::_FuncParams::var6, and HuginBase::Nona::_FuncParams::var7.
Referenced by HuginBase::Nona::SpaceTransform::InitRadialCorrect().
void HuginBase::Nona::rect_erect | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 298 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance, and PI.
Referenced by HuginBase::Nona::SpaceTransform::InitInv().
void HuginBase::Nona::rect_sphere_tp | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 407 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance, and PI.
Referenced by HuginBase::PTools::Transform::emitGLSL(), and HuginBase::Nona::SpaceTransform::Init().
void HuginBase::Nona::remapImage | ( | SrcImgType & | srcImg, |
const MaskImgType & | srcAlpha, | ||
const FlatImgType & | srcFlat, | ||
const SrcPanoImage & | src, | ||
const PanoramaOptions & | dest, | ||
vigra::Rect2D | outputRect, | ||
RemappedPanoImage< DestImgType, MaskImgType > & | remapped, | ||
AppBase::ProgressDisplay * | progress | ||
) |
remap a single image
Definition at line 822 of file RemappedPanoImage.h.
References DEBUG_DEBUG, HuginBase::PanoramaOptions::interpolator, vigra_ext::ROIImage< RemapImage, AlphaImage >::m_image, vigra_ext::ROIImage< RemapImage, AlphaImage >::m_mask, HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::remapImage(), AppBase::ProgressDisplay::setMessage(), HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::setPanoImage(), vigra_ext::srcImage(), vigra_ext::srcImageRange(), and hugin_utils::stripPath().
Referenced by HuginBase::SmallRemappedImageCache::getRemapped(), and HuginBase::Nona::FileRemapper< ImageType, AlphaType >::getRemapped().
void HuginBase::Nona::resize | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 150 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::var0, and HuginBase::Nona::_FuncParams::var1.
Referenced by HuginBase::PTools::Transform::emitGLSL(), HuginBase::Nona::SpaceTransform::Init(), HuginBase::Nona::SpaceTransform::InitInv(), and HuginBase::Nona::RemappedPanoImage< RemapImage, AlphaImage >::setPanoImage().
void HuginBase::Nona::rotate_erect | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 82 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::var0, and HuginBase::Nona::_FuncParams::var1.
Referenced by HuginBase::PTools::Transform::emitGLSL(), HuginBase::Nona::SpaceTransform::Init(), and HuginBase::Nona::SpaceTransform::InitInv().
IMPEX void HuginBase::Nona::SetAdvancedOption | ( | AdvancedOptions & | opts, |
const std::string & | name, | ||
const bool | value | ||
) |
store the option with name in AdvancedOptions
Definition at line 88 of file StitcherOptions.cpp.
Referenced by GenerateThumbnail(), main(), and main2().
IMPEX void HuginBase::Nona::SetAdvancedOption | ( | AdvancedOptions & | opts, |
const std::string & | name, | ||
const std::string & | value | ||
) |
Definition at line 100 of file StitcherOptions.cpp.
IMPEX void HuginBase::Nona::SetAdvancedOption | ( | AdvancedOptions & | opts, |
const std::string & | name, | ||
const float | value | ||
) |
Definition at line 105 of file StitcherOptions.cpp.
References hugin_utils::doubleToString().
Matrix3 HuginBase::Nona::SetMatrix | ( | double | a, |
double | b, | ||
double | c, | ||
int | cl | ||
) |
Definition at line 917 of file SpaceTransform.cpp.
References Matrix3::SetRotationX(), Matrix3::SetRotationY(), and Matrix3::SetRotationZ().
Referenced by HuginBase::Nona::SpaceTransform::Init(), and HuginBase::Nona::SpaceTransform::InitInv().
void HuginBase::Nona::sinusoidal_erect | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
convert from erect to sinusoidal
Definition at line 549 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
|
static |
Definition at line 861 of file SpaceTransform.cpp.
References cubeZero_copy().
Referenced by CalcCorrectionRadius_copy().
void HuginBase::Nona::sphere_tp_erect | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 366 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance, and PI.
Referenced by HuginBase::PTools::Transform::emitGLSL(), HuginBase::Nona::SpaceTransform::Init(), and HuginBase::Nona::SpaceTransform::InitInv().
void HuginBase::Nona::sphere_tp_pano | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 439 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
Referenced by HuginBase::Nona::SpaceTransform::InitInv().
void HuginBase::Nona::sphere_tp_rect | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 425 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
Referenced by HuginBase::Nona::SpaceTransform::InitInv().
|
static |
Definition at line 829 of file SpaceTransform.cpp.
Referenced by cubeZero_copy().
void HuginBase::Nona::stereographic_erect | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
convert from erect to stereographic
Definition at line 567 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
Referenced by HuginBase::PTools::Transform::emitGLSL(), and HuginBase::Nona::SpaceTransform::InitInv().
void HuginBase::Nona::stitchPanoGray_32_float | ( | const PanoramaData & | pano, |
const PanoramaOptions & | opts, | ||
AppBase::ProgressDisplay * | progress, | ||
const std::string & | basename, | ||
const UIntSet & | usedImgs, | ||
const char * | pixelType, | ||
const AdvancedOptions & | advOptions | ||
) |
Referenced by stitchPanorama().
void HuginBase::Nona::stitchPanoGray_8_16 | ( | const PanoramaData & | pano, |
const PanoramaOptions & | opts, | ||
AppBase::ProgressDisplay * | progress, | ||
const std::string & | basename, | ||
const UIntSet & | usedImgs, | ||
const char * | pixelType, | ||
const AdvancedOptions & | advOptions | ||
) |
Referenced by stitchPanorama().
|
static |
Definition at line 994 of file Stitcher.h.
References DEBUG_ERROR, HuginBase::PanoramaOptions::EXR, HuginBase::PanoramaOptions::EXR_m, HuginBase::PanoramaOptions::getFormatName(), HuginBase::PanoramaOptions::HDR, HuginBase::PanoramaOptions::HDR_m, HuginBase::PanoramaOptions::JPEG, HuginBase::PanoramaOptions::JPEG_m, HuginBase::PanoramaOptions::OUTPUT_HDR, HuginBase::PanoramaOptions::outputFormat, HuginBase::PanoramaOptions::outputMode, HuginBase::PanoramaOptions::PNG, HuginBase::PanoramaOptions::PNG_m, HuginBase::Nona::SingleImageRemapper< ImageType, AlphaType >::setAdvancedOptions(), HuginBase::Nona::MultiImageRemapper< ImageType, AlphaType >::stitch(), HuginBase::Nona::MultiImageRemapper< ImageType, AlphaImageType >::stitch(), HuginBase::Nona::WeightedStitcher< ImageType, AlphaType >::stitch(), HuginBase::Nona::ReduceStitcher< ImageType, AlphaType >::stitch(), HuginBase::PanoramaOptions::TIFF, HuginBase::PanoramaOptions::TIFF_m, HuginBase::PanoramaOptions::TIFF_mask, HuginBase::PanoramaOptions::TIFF_multilayer, and HuginBase::PanoramaOptions::TIFF_multilayer_mask.
void HuginBase::Nona::stitchPanorama | ( | const PanoramaData & | pano, |
const PanoramaOptions & | opt, | ||
AppBase::ProgressDisplay * | progress, | ||
const std::string & | basename, | ||
const UIntSet & | usedImgs, | ||
const AdvancedOptions & | advOptions | ||
) |
The main stitching function.
stitch a panorama
This function delegates all the work to the other functions
Due to the compile memory requirements of the instantiated templates ( > 1GB, for all pixel types), the instatiations are divided into 4 separate cpp files
vignetting correction
do not keep complete output image in memory
Definition at line 40 of file Stitcher.cpp.
References DEBUG_ASSERT, DEBUG_DEBUG, DEBUG_ERROR, HuginBase::PanoramaData::getImage(), HuginBase::PanoramaData::getNrOfImages(), HuginBase::PanoramaData::getSrcImage(), celeste::info(), HuginBase::PanoramaOptions::OUTPUT_HDR, HuginBase::PanoramaOptions::outputEMoRParams, HuginBase::PanoramaOptions::outputMode, HuginBase::PanoramaOptions::outputPixelType, HuginBase::BaseSrcPanoImage::RESPONSE_EMOR, stitchPanoGray_32_float(), stitchPanoGray_8_16(), stitchPanoRGB_32_float(), stitchPanoRGB_8_16(), and UTILS_THROW.
Referenced by main2(), and HuginBase::NonaFileOutputStitcher::runStitcher().
void HuginBase::Nona::stitchPanoRGB_32_float | ( | const PanoramaData & | pano, |
const PanoramaOptions & | opts, | ||
AppBase::ProgressDisplay * | progress, | ||
const std::string & | basename, | ||
const UIntSet & | usedImgs, | ||
const char * | pixelType, | ||
const AdvancedOptions & | advOptions | ||
) |
Referenced by stitchPanorama().
void HuginBase::Nona::stitchPanoRGB_8_16 | ( | const PanoramaData & | pano, |
const PanoramaOptions & | opts, | ||
AppBase::ProgressDisplay * | progress, | ||
const std::string & | basename, | ||
const UIntSet & | usedImgs, | ||
const char * | pixelType, | ||
const AdvancedOptions & | advOptions | ||
) |
Referenced by stitchPanorama().
void HuginBase::Nona::traceImageOutline | ( | vigra::Size2D | sz, |
TRANSFORM & | transf, | ||
vigra::Rect2D & | inside, | ||
vigra::Rect2D & | boundingBox | ||
) |
Internal function to estimate the image scaling required to avoid black stripes at the image borders.
Definition at line 281 of file SpaceTransform.h.
References celeste::max(), celeste::min(), and hugin_utils::roundi().
Referenced by estScaleFactorForFullFrame().
void HuginBase::Nona::transmercator_erect | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
convert from erect to transverse mercator
Definition at line 528 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
Referenced by HuginBase::Nona::SpaceTransform::InitInv().
void HuginBase::Nona::transpano_erect | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 337 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::distance.
Referenced by HuginBase::Nona::SpaceTransform::InitInv().
void HuginBase::Nona::vert | ( | double | x_dest, |
double | y_dest, | ||
double * | x_src, | ||
double * | y_src, | ||
const _FuncParams & | params | ||
) |
Definition at line 176 of file SpaceTransform.cpp.
References HuginBase::Nona::_FuncParams::shift.
Referenced by HuginBase::PTools::Transform::emitGLSL(), HuginBase::Nona::SpaceTransform::Init(), HuginBase::Nona::SpaceTransform::InitInv(), HuginBase::Nona::SpaceTransform::InitInvRadialCorrect(), and HuginBase::Nona::SpaceTransform::InitRadialCorrect().