|
Hugintrunk
0.1
|
program to align a set of well overlapping images (~90%) More...
#include <hugin_config.h>#include <fstream>#include <sstream>#include <iostream>#include <vigra/error.hxx>#include <vigra/cornerdetection.hxx>#include <vigra/localminmax.hxx>#include <hugin_utils/utils.h>#include <vigra_ext/Pyramid.h>#include <vigra_ext/Correlation.h>#include <vigra_ext/InterestPoints.h>#include <vigra_ext/impexalpha.hxx>#include <panodata/Panorama.h>#include <panotools/PanoToolsOptimizerWrapper.h>#include <panodata/StandardImageVariableGroups.h>#include <algorithms/optimizer/PTOptimizer.h>#include <nona/Stitcher.h>#include <algorithms/basic/CalculateOptimalROI.h>#include <lensdb/LensDB.h>#include <getopt.h>#include <hugin_utils/openmp_lock.h>#include <tiff.h>
Go to the source code of this file.
Classes | |
| struct | Parameters |
| struct | SortImageVectorEV |
Namespaces | |
| detail | |
Typedefs | |
| typedef std::multimap< double, vigra::Diff2D > | MapPoints |
Functions | |
| static void | usage (const char *name) |
| template<class ImageType > | |
| vigra_ext::CorrelationResult | detail::FineTunePoint (const ImageType &leftImg, const vigra::Diff2D templPos, const int templSize, const ImageType &rightImg, const vigra::Diff2D searchPos, const int searchWidth, vigra::VigraTrueType) |
| template<class ImageType > | |
| vigra_ext::CorrelationResult | detail::FineTunePoint (const ImageType &leftImg, const vigra::Diff2D templPos, const int templSize, const ImageType &rightImg, const vigra::Diff2D searchPos, const int searchWidth, vigra::VigraFalseType) |
| template<class ImageType > | |
| void | FineTuneInterestPoints (HuginBase::Panorama &pano, int img1, const ImageType &leftImg, const ImageType &leftImgOrig, int img2, const ImageType &rightImg, const ImageType &rightImgOrig, const MapPoints &points, unsigned nPoints, int pyrLevel, int templWidth, int sWidth, double scaleFactor, double corrThresh, bool stereo) |
| template<class ImageType > | |
| void | detail::FindInterestPointsPartial (const ImageType &image, const vigra::Rect2D &rect, double scale, unsigned nPoints, std::multimap< double, vigra::Diff2D > &points, vigra::VigraTrueType) |
| template<class ImageType > | |
| void | detail::FindInterestPointsPartial (const ImageType &image, const vigra::Rect2D &rect, double scale, unsigned nPoints, std::multimap< double, vigra::Diff2D > &points, vigra::VigraFalseType) |
| template<class ImageType > | |
| void | createCtrlPoints (HuginBase::Panorama &pano, int img1, const ImageType &leftImg, const ImageType &leftImgOrig, int img2, const ImageType &rightImg, const ImageType &rightImgOrig, int pyrLevel, double scale, unsigned nPoints, unsigned grid, double corrThresh=0.9, bool stereo=false) |
| void | alignStereoWindow (HuginBase::Panorama &pano, bool pop_out) |
| void | autoCrop (HuginBase::Panorama &pano) |
| static int | ptProgress (int command, char *argument) |
| static int | ptinfoDlg (int command, char *argument) |
| template<class PixelType > | |
| int | main2 (std::vector< std::string > files, Parameters param) |
| int | main (int argc, char *argv[]) |
Variables | |
| int | g_verbose = 0 |
| static hugin_omp::Lock | lock |
program to align a set of well overlapping images (~90%)
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 align_image_stack.cpp.
| typedef std::multimap<double, vigra::Diff2D> MapPoints |
Definition at line 117 of file align_image_stack.cpp.
| void alignStereoWindow | ( | HuginBase::Panorama & | pano, |
| bool | pop_out | ||
| ) |
Definition at line 335 of file align_image_stack.cpp.
References HuginBase::Panorama::getCtrlPoints(), HuginBase::Panorama::getImage(), HuginBase::Panorama::getNrOfImages(), HuginBase::Panorama::getOptions(), HuginBase::Panorama::setCtrlPoints(), HuginBase::ControlPoint::X, and HuginBase::ControlPoint::X_Y.
Referenced by main2().
| void autoCrop | ( | HuginBase::Panorama & | pano | ) |
Definition at line 437 of file align_image_stack.cpp.
References HuginBase::Panorama::getOptions(), HuginBase::CalculateOptimalROI::getResultOptimalROI(), HuginBase::PanoramaAlgorithm::run(), HuginBase::Panorama::setOptions(), and HuginBase::PanoramaOptions::setROI().
Referenced by main2().
| void createCtrlPoints | ( | HuginBase::Panorama & | pano, |
| int | img1, | ||
| const ImageType & | leftImg, | ||
| const ImageType & | leftImgOrig, | ||
| int | img2, | ||
| const ImageType & | rightImg, | ||
| const ImageType & | rightImgOrig, | ||
| int | pyrLevel, | ||
| double | scale, | ||
| unsigned | nPoints, | ||
| unsigned | grid, | ||
| double | corrThresh = 0.9, |
||
| bool | stereo = false |
||
| ) |
Definition at line 238 of file align_image_stack.cpp.
References HuginBase::Panorama::addCtrlPoint(), detail::FindInterestPointsPartial(), FineTuneInterestPoints(), g_verbose, and HuginBase::ControlPoint::X.
Referenced by main2(), and processImg().
| void FineTuneInterestPoints | ( | HuginBase::Panorama & | pano, |
| int | img1, | ||
| const ImageType & | leftImg, | ||
| const ImageType & | leftImgOrig, | ||
| int | img2, | ||
| const ImageType & | rightImg, | ||
| const ImageType & | rightImgOrig, | ||
| const MapPoints & | points, | ||
| unsigned | nPoints, | ||
| int | pyrLevel, | ||
| int | templWidth, | ||
| int | sWidth, | ||
| double | scaleFactor, | ||
| double | corrThresh, | ||
| bool | stereo | ||
| ) |
Definition at line 144 of file align_image_stack.cpp.
References HuginBase::Panorama::addCtrlPoint(), vigra_ext::CorrelationResult::curv, DEBUG_DEBUG, detail::FineTunePoint(), g_verbose, vigra_ext::CorrelationResult::maxi, vigra_ext::CorrelationResult::maxpos, hugin_utils::TDiff2D< T >::x, HuginBase::ControlPoint::X_Y, HuginBase::ControlPoint::Y, and hugin_utils::TDiff2D< T >::y.
Referenced by createCtrlPoints().
| int main | ( | int | argc, |
| char * | argv[] | ||
| ) |
Definition at line 1039 of file align_image_stack.cpp.
References Parameters::alignedPrefix, Parameters::alignToFirst, HuginBase::LensDB::LensDB::Clean(), Parameters::corrThresh, Parameters::cpErrorThreshold, Parameters::crop, Parameters::dontRemapRef, Parameters::fisheye, g_verbose, hugin_utils::getExtension(), Parameters::gpu, Parameters::grid, Parameters::hdrFile, Parameters::hfov, hugin_utils::initGPU(), hugin_utils::IsRawExtension(), Parameters::linear, Parameters::loadDistortion, Parameters::nPoints, Parameters::optCenter, Parameters::optDistortion, Parameters::optHFOV, Parameters::optX, Parameters::optY, Parameters::optZ, Parameters::pop_out, Parameters::ptoFile, Parameters::pyrLevel, Parameters::sortImagesByEv, Parameters::stereo, Parameters::stereo_window, hugin_utils::stripPath(), usage(), and hugin_utils::wrapupGPU().
| int main2 | ( | std::vector< std::string > | files, |
| Parameters | param | ||
| ) |
Definition at line 539 of file align_image_stack.cpp.
References HuginBase::Panorama::activateImage(), HuginBase::Panorama::addImage(), Parameters::alignedPrefix, alignStereoWindow(), Parameters::alignToFirst, HuginBase::SrcPanoImage::applyEXIFValues(), autoCrop(), Parameters::corrThresh, Parameters::cpErrorThreshold, createCtrlPoints(), Parameters::crop, vigra_ext::destImage(), vigra_ext::destImageRange(), Parameters::dontRemapRef, Parameters::fisheye, HuginBase::BaseSrcPanoImage::FULL_FRAME_FISHEYE, HuginBase::PanoramaOptions::FULL_FRAME_FISHEYE, g_verbose, HuginBase::Panorama::getActiveImages(), HuginBase::Panorama::getCtrlPoints(), HuginBase::Panorama::getCtrlPointsForImage(), HuginBase::Panorama::getImage(), HuginBase::getImagesinROI(), HuginBase::StandardImageVariableGroups::getLenses(), HuginBase::Panorama::getNrOfCtrlPoints(), HuginBase::Panorama::getOptimizeVector(), HuginBase::Panorama::getOptions(), HuginBase::Panorama::getSrcImage(), Parameters::gpu, Parameters::grid, HuginBase::PanoramaOptions::HDR, Parameters::hdrFile, Parameters::hfov, HuginBase::PanoramaOptions::huberSigma, vigra::importImageAlpha(), Parameters::linear, Parameters::loadDistortion, Parameters::nPoints, Parameters::optCenter, Parameters::optDistortion, Parameters::optHFOV, HuginBase::PTools::optimize(), Parameters::optX, Parameters::optY, Parameters::optZ, HuginBase::PanoramaOptions::OUTPUT_HDR, HuginBase::PanoramaOptions::OUTPUT_LDR, HuginBase::PanoramaOptions::outputExposureValue, HuginBase::PanoramaOptions::outputFormat, HuginBase::PanoramaOptions::outputMode, HuginBase::PanoramaOptions::outputPixelType, Parameters::pop_out, ptinfoDlg(), Parameters::ptoFile, ptProgress(), Parameters::pyrLevel, HuginBase::SrcPanoImage::readDistortionFromDB(), HuginBase::SrcPanoImage::readEXIF(), HuginBase::PanoramaOptions::RECTILINEAR, vigra_ext::reduceNTimes(), HuginBase::PanoramaOptions::remapUsingGPU, HuginBase::BaseSrcPanoImage::RESPONSE_LINEAR, HuginBase::Nona::SetAdvancedOption(), HuginBase::Panorama::setCtrlPoints(), HuginBase::PanoramaOptions::setHeight(), HuginBase::PanoramaOptions::setHFOV(), HuginBase::Panorama::setOptimizeVector(), HuginBase::Panorama::setOptions(), HuginBase::PanoramaOptions::setProjection(), HuginBase::SrcPanoImage::setSize(), HuginBase::PanoramaOptions::setWidth(), Parameters::sortImagesByEv, Parameters::stereo, Parameters::stereo_window, HuginBase::Nona::stitchPanorama(), HuginBase::ImageVariableGroup::switchParts(), HuginBase::PanoramaOptions::TIFF_m, HuginBase::PanoramaOptions::tiff_saveROI, HuginBase::StandardImageVariableGroups::update(), HuginBase::Panorama::WritePTOFile(), and HuginBase::ControlPoint::X.
Referenced by processImg(), and processPTO().
|
static |
Definition at line 521 of file align_image_stack.cpp.
Referenced by main2().
|
static |
Definition at line 517 of file align_image_stack.cpp.
Referenced by main2().
|
static |
Definition at line 64 of file align_image_stack.cpp.
References hugin_utils::GetHuginVersion().
| int g_verbose = 0 |
Definition at line 62 of file align_image_stack.cpp.
Referenced by createCtrlPoints(), FineTuneInterestPoints(), main(), main2(), mergeWeightedAverage(), and weightedAverageOfImageFiles().
|
static |
Definition at line 118 of file align_image_stack.cpp.
1.8.5