fulla.cpp File Reference

a tool to perform distortion, vignetting and chromatic abberation correction. More...

#include <hugin_config.h>
#include <fstream>
#include <sstream>
#include <vigra/error.hxx>
#include <vigra/impex.hxx>
#include <vigra/codec.hxx>
#include <vigra_ext/impexalpha.hxx>
#include <getopt.h>
#include <unistd.h>
#include <appbase/ProgressDisplay.h>
#include <nona/SpaceTransform.h>
#include <photometric/ResponseTransform.h>
#include <hugin_basic.h>
#include <lensdb/LensDB.h>
#include <tiffio.h>
#include <vigra_ext/ImageTransforms.h>

Include dependency graph for fulla.cpp:

Go to the source code of this file.

Classes

class  NullTransform

Functions

template<class SrcImgType, class AlphaImgType, class FlatImgType, class DestImgType>
void correctImage (SrcImgType &srcImg, const AlphaImgType &srcAlpha, const FlatImgType &srcFlat, SrcPanoImage src, vigra_ext::Interpolator interpolator, double maxValue, DestImgType &destImg, AlphaImgType &destAlpha, bool doCrop, AppBase::ProgressDisplay *progress)
 remap a single image
template<class PIXELTYPE>
void correctRGB (SrcPanoImage &src, ImageImportInfo &info, const char *outfile, bool crop, const std::string &compression, AppBase::ProgressDisplay *progress)
static void usage (const char *name)
int main (int argc, char *argv[])


Detailed Description

a tool to perform distortion, vignetting and chromatic abberation correction.

Author:
Pablo d'Angelo <pablo.dangelo@web.de>
$Id$

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this software. If not, see <http://www.gnu.org/licenses/>.

Definition in file fulla.cpp.


Function Documentation

template<class SrcImgType, class AlphaImgType, class FlatImgType, class DestImgType>
void correctImage ( SrcImgType &  srcImg,
const AlphaImgType &  srcAlpha,
const FlatImgType &  srcFlat,
SrcPanoImage  src,
vigra_ext::Interpolator  interpolator,
double  maxValue,
DestImgType &  destImg,
AlphaImgType &  destAlpha,
bool  doCrop,
AppBase::ProgressDisplay progress 
)

remap a single image

Be careful, might modify srcImg (vignetting and brightness correction)

Definition at line 600 of file fulla.cpp.

References vigra::omp::combineThreeImages(), vigra::omp::copyImage(), vigra_ext::EMoR::createEMoRLUT(), DEBUG_DEBUG, vigra_ext::destImage(), vigra_ext::destImageRange(), HuginBase::Photometric::InvResponseTransform< VTIn, VTOut >::enforceMonotonicity(), vigra_ext::enforceMonotonicity(), HuginBase::Nona::estScaleFactorForFullFrame(), HuginBase::SrcPanoImage::getCorrectTCA(), HuginBase::Nona::SpaceTransform::InitRadialCorrect(), vigra_ext::INTERP_SPLINE_16, HuginBase::Nona::SpaceTransform::isIdentity(), vigra_ext::pow(), hugin_utils::roundi(), HuginBase::Photometric::ResponseTransform< VTIn >::setFlatfield(), AppBase::ProgressDisplay::setMessage(), HuginBase::Photometric::InvResponseTransform< VTIn, VTOut >::setOutput(), HuginBase::BaseSrcPanoImage::setRadialDistortion(), vigra_ext::srcImage(), vigra_ext::srcImageRange(), vigra_ext::transformImage(), and vigra_ext::transformImageAlpha().

Referenced by correctRGB().

template<class PIXELTYPE>
void correctRGB ( SrcPanoImage src,
ImageImportInfo &  info,
const char *  outfile,
bool  crop,
const std::string compression,
AppBase::ProgressDisplay progress 
)

Definition at line 778 of file fulla.cpp.

References correctImage(), cout, vigra_ext::destImage(), vigra::detail::exportImageAlpha(), vigra_ext::getMaxValForPixelType(), vigra::detail::importImageAlpha(), vigra_ext::INTERP_SPLINE_16, vigra_ext::srcImage(), and vigra_ext::srcImageRange().

int main ( int  argc,
char *  argv[] 
)

Definition at line 124 of file fulla.cpp.

References cerr, HuginBase::LensDB::LensDB::Clean(), cout, DEBUG_ERROR, HuginBase::SrcPanoImage::getDBLensName(), hugin_utils::getExtension(), HuginBase::LensDB::LensDB::GetSingleton(), HuginBase::LensDB::LensDB::GetTCA(), celeste::info(), HuginBase::SrcPanoImage::readDistortionFromDB(), HuginBase::SrcPanoImage::readEXIF(), HuginBase::SrcPanoImage::readVignettingFromDB(), HuginBase::BaseSrcPanoImage::setExifAperture(), HuginBase::BaseSrcPanoImage::setExifFocalLength(), HuginBase::BaseSrcPanoImage::setExifLens(), HuginBase::BaseSrcPanoImage::setFilename(), HuginBase::BaseSrcPanoImage::setFlatfieldFilename(), HuginBase::BaseSrcPanoImage::setGamma(), HuginBase::BaseSrcPanoImage::setRadialDistortion(), HuginBase::BaseSrcPanoImage::setRadialDistortionBlue(), HuginBase::BaseSrcPanoImage::setRadialDistortionCenterShift(), HuginBase::BaseSrcPanoImage::setRadialDistortionRed(), HuginBase::BaseSrcPanoImage::setRadialVigCorrCoeff(), HuginBase::BaseSrcPanoImage::setResponseType(), HuginBase::SrcPanoImage::setSize(), HuginBase::BaseSrcPanoImage::setVigCorrMode(), hugin_utils::stripExtension(), hugin_utils::stripPath(), hugin_utils::tolower(), and usage().

static void usage ( const char *  name  )  [static]

Definition at line 73 of file fulla.cpp.

References cerr, and hugin_utils::GetHuginVersion().


Generated on 4 Aug 2015 for Hugintrunk by  doxygen 1.4.7