资源简介

由于导师要求自己编写calibrate函数,锻炼自己编写带啊能力和理解论文能力,上传至此,供大家学习交流,张正友相机标定(自己编写calibratie函数,不用OpenCV库函数)

资源截图

代码片段和文件信息

// Ceres Solver - A fast non-linear least squares minimizer
// Copyright 2015 Google Inc. All rights reserved.
// http://ceres-solver.org/
//
// Redistribution and use in source and binary forms with or without
// modification are permitted provided that the following conditions are met:
//
// * Redistributions of source code must retain the above copyright notice
//   this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above copyright notice
//   this list of conditions and the following disclaimer in the documentation
//   and/or other materials provided with the distribution.
// * Neither the name of Google Inc. nor the names of its contributors may be
//   used to endorse or promote products derived from this software without
//   specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS“
// AND ANY EXPRESS OR IMPLIED WARRANTIES INCLUDING BUT NOT LIMITED TO THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
// LIABLE FOR ANY DIRECT INDIRECT INCIDENTAL SPECIAL EXEMPLARY OR
// CONSEQUENTIAL DAMAGES (INCLUDING BUT NOT LIMITED TO PROCUREMENT OF
// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE DATA OR PROFITS; OR BUSINESS
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY WHETHER IN
// CONTRACT STRICT LIABILITY OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE EVEN IF ADVISED OF THE
// POSSIBILITY OF SUCH DAMAGE.
//
// Author: sameeragarwal@google.com (Sameer Agarwal)
#include “bal_problem.h“
#include 
#include 
#include 
#include 
#include 
#include “Eigen/Core“
#include “ceres/rotation.h“
#include “glog/logging.h“
#include “random.h“
namespace ceres {
namespace examples {
namespace {
typedef Eigen::Map VectorRef;
typedef Eigen::Map ConstVectorRef;
template
void FscanfOrDie(FILE* fptr const char* format T* value) {
  int num_scanned = fscanf(fptr format value);
  if (num_scanned != 1) {
    LOG(FATAL) << “Invalid UW data file.“;
  }
}
void PerturbPoint3(const double sigma double* point) {
  for (int i = 0; i < 3; ++i) {
    point[i] += RandNormal() * sigma;
  }
}
double Median(std::vector* data) {
  int n = data->size();
  std::vector::iterator mid_point = data->begin() + n / 2;
  std::nth_element(data->begin() mid_point data->end());
  return *mid_point;
}
}  // namespace
BALProblem::BALProblem(const std::string& filename bool use_quaternions) {
  FILE* fptr = fopen(filename.c_str() “r“);
  if (fptr == NULL) {
    LOG(FATAL) << “Error: unable to open file “ << filename;
    return;
  };
  // This wil die horribly on invalid files. Them‘s the breaks.
  FscanfOrDie(fptr “%d“ &num_cameras_);
  FscanfOrDie(fptr “%d“ &num_points_);
  Fsc

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-01-21 20:01  cameraCalibration\
     目录           0  2019-01-21 20:01  cameraCalibration\bin\
     文件       78756  2019-01-09 14:58  cameraCalibration\bin\10_d.jpg
     文件       72077  2019-01-09 14:58  cameraCalibration\bin\11_d.jpg
     文件       79549  2019-01-09 14:58  cameraCalibration\bin\12_d.jpg
     文件       79197  2019-01-09 14:58  cameraCalibration\bin\13_d.jpg
     文件       79147  2019-01-09 14:58  cameraCalibration\bin\1_d.jpg
     文件       81192  2019-01-09 14:58  cameraCalibration\bin\2_d.jpg
     文件       82674  2019-01-09 14:58  cameraCalibration\bin\3_d.jpg
     文件       71511  2019-01-09 14:58  cameraCalibration\bin\4_d.jpg
     文件       80449  2019-01-09 14:58  cameraCalibration\bin\5_d.jpg
     文件       80894  2019-01-09 14:58  cameraCalibration\bin\6_d.jpg
     文件       84393  2019-01-09 14:58  cameraCalibration\bin\7_d.jpg
     文件       81200  2019-01-09 14:58  cameraCalibration\bin\8_d.jpg
     文件       78034  2019-01-09 14:58  cameraCalibration\bin\9_d.jpg
     文件       11063  2019-01-06 07:32  cameraCalibration\bin\a.cpp
     文件     6029096  2019-01-09 14:58  cameraCalibration\bin\calibration
     文件         598  2018-11-12 11:44  cameraCalibration\bin\calibration.txt
     文件        4711  2019-01-09 14:58  cameraCalibration\bin\calibration_result.txt
     目录           0  2019-01-21 20:01  cameraCalibration\build\
     文件       13308  2019-01-06 08:56  cameraCalibration\build\CMakeCache.txt
     目录           0  2019-01-21 20:01  cameraCalibration\build\CMakeFiles\
     目录           0  2019-01-21 20:01  cameraCalibration\build\CMakeFiles\3.5.1\
     文件        2002  2019-01-06 08:56  cameraCalibration\build\CMakeFiles\3.5.1\CMakeCCompiler.cmake
     文件        4556  2019-01-06 08:56  cameraCalibration\build\CMakeFiles\3.5.1\CMakeCXXCompiler.cmake
     文件        8640  2019-01-06 08:56  cameraCalibration\build\CMakeFiles\3.5.1\CMakeDetermineCompilerABI_C.bin
     文件        8656  2019-01-06 08:56  cameraCalibration\build\CMakeFiles\3.5.1\CMakeDetermineCompilerABI_CXX.bin
     文件         402  2019-01-06 08:56  cameraCalibration\build\CMakeFiles\3.5.1\CMakeSystem.cmake
     目录           0  2019-01-21 20:01  cameraCalibration\build\CMakeFiles\3.5.1\CompilerIdC\
     文件        8800  2019-01-06 08:56  cameraCalibration\build\CMakeFiles\3.5.1\CompilerIdC\a.out
     文件       16423  2019-01-06 08:56  cameraCalibration\build\CMakeFiles\3.5.1\CompilerIdC\CMakeCCompilerId.c
............此处省略56个文件信息

评论

共有 条评论