![]() |
Universidad de Murcia ![]() |
src/qvros/qvssba.hGo to the documentation of this file.00001 /* 00002 * Copyright (C) 2011, 2012. PARP Research Group. 00003 * <http://perception.inf.um.es> 00004 * University of Murcia, Spain. 00005 * 00006 * This file is part of the QVision library. 00007 * 00008 * QVision is free software: you can redistribute it and/or modify 00009 * it under the terms of the GNU Lesser General Public License as 00010 * published by the Free Software Foundation, version 3 of the License. 00011 * 00012 * QVision is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 * GNU Lesser General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU Lesser General Public 00018 * License along with QVision. If not, see <http://www.gnu.org/licenses/>. 00019 */ 00020 00024 00025 #ifndef QVSSBA_H 00026 #define QVSSBA_H 00027 00028 #include <qvprojective.h> 00029 00030 #define SBA_DENSE_CHOLESKY 0 00031 #define SBA_SPARSE_CHOLESKY 1 00032 #define SBA_GRADIENT 2 00033 #define SBA_BLOCK_JACOBIAN_PCG 3 00034 00035 00054 int sSBAOptimization( const QList<QVCameraPose> &cameraPoses, 00055 const QList<QV3DPointF> &points3D, 00056 const QList< QHash<int, QPointF> > &pointsProjections, 00057 QList<QVCameraPose> &refinedCameraPoses, 00058 QList<QV3DPointF> &refinedPoints3D, 00059 int &time_sSBA, 00060 const int numIters = 1, 00061 const double lambda = 1e-3, 00062 const int useCSparse = SBA_SPARSE_CHOLESKY, 00063 const int numFixedCameras = 1, // For incremental operation. 00064 double initTolCG = 1.0e-8, // For conjugate gradient. 00065 const int maxItersCG = 100 // For conjugate gradient. 00066 ); 00067 00068 #endif 00069 |