Calibration Library 1.0.0
A C++ library for camera calibration and vision-related geometric transformations
Loading...
Searching...
No Matches
homography.cpp File Reference
#include "calib/estimation/optim/homography.h"
#include <array>
#include <numbers>
#include <numeric>
#include <thread>
#include <ceres/ceres.h>
#include <ceres/rotation.h>
#include "detail/ceresutils.h"
#include "detail/homographyestimator.h"
Include dependency graph for homography.cpp:

Go to the source code of this file.

Classes

struct  calib::HomographyBlocks
 
struct  calib::HomographyResidual
 

Namespaces

namespace  calib
 Linear multi-camera extrinsics initialisation (DLT)
 

Typedefs

using calib::Vec2 = Eigen::Vector2d
 
using calib::Mat3 = Eigen::Matrix3d
 
using calib::HomographyParams = std::array< double, 8 >
 

Functions

static auto calib::symmetric_rms_px (const Eigen::Matrix3d &hmtx, const std::vector< PlanarObservation > &data, std::span< const int > inliers) -> double
 
static void calib::estimate_homography_dlt (const PlanarView &data, HomographyResult &result)
 
static void calib::estimate_homography_ransac (const PlanarView &data, HomographyResult &result, const RansacOptions &ransac_opts)
 
auto calib::estimate_homography (const PlanarView &data, std::optional< RansacOptions > ransac_opts=std::nullopt) -> HomographyResult
 
static auto calib::params_to_h (const HomographyParams &params) -> Mat3
 
static ceres::Problem calib::build_problem (const PlanarView &data, const OptimOptions &options, HomographyBlocks &blocks)
 
auto calib::optimize_homography (const PlanarView &data, const Eigen::Matrix3d &init_h, const OptimOptions &options={}) -> OptimizeHomographyResult