Calibration Library 1.0.0
A C++ library for camera calibration and vision-related geometric transformations
Loading...
Searching...
No Matches
ransac.h File Reference
#include <algorithm>
#include <cmath>
#include <concepts>
#include <cstddef>
#include <iostream>
#include <limits>
#include <numeric>
#include <optional>
#include <random>
#include <span>
#include <stdexcept>
#include <type_traits>
#include <unordered_map>
#include <vector>
#include "calib/io/serialization.h"
Include dependency graph for ransac.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  calib::RansacOptions
 
struct  calib::RansacResult< ModelT >
 

Namespaces

namespace  calib
 Linear multi-camera extrinsics initialisation (DLT)
 
namespace  calib::detail
 

Concepts

concept  calib::detail::HasRefit
 
concept  calib::detail::HasDegeneracyCheck
 

Functions

auto calib::detail::rms (const std::vector< double > &vals) -> double
 
int calib::detail::calculate_iterations (double confidence, double inlier_ratio, int min_samples, int iters_so_far, int max_iters)
 
template<typename Estimator , typename Model >
void calib::detail::find_inliers (const std::vector< typename Estimator::Datum > &data, const Model &model, double threshold, std::vector< int > &inliers, std::vector< double > &inlier_residuals)
 
template<typename Estimator , typename Model >
auto calib::detail::refit_model (const std::vector< typename Estimator::Datum > &data, const Model &model, const std::vector< int > &inliers, double threshold, std::vector< int > &updated_inliers, std::vector< double > &updated_residuals) -> Model
 
auto calib::detail::is_better_model (bool has_current_best, size_t new_inlier_count, double new_inlier_rms, size_t best_inlier_count, double best_inlier_rms) -> bool
 
template<class Estimator >
auto calib::ransac (const std::vector< typename Estimator::Datum > &data, const RansacOptions &opts={}) -> RansacResult< typename Estimator::Model >