// readme

HomLib

C++ library for computing homographies with support in Python.

Quick start

import numpy as np
import homlib

# Estimate homography with one-sided radial distortion
solver = homlib.Wadenback3DV2026OneSided()
poses = solver.estimate(x, y)  # returns list[PoseData]

# Robust estimation with LOMSAC
lomsac = homlib.LOMSAC(solver, squared_inlier_threshold=0.005)
estimate, stats = lomsac.estimate(x_noisy, y_noisy)

If built with SupeRANSAC support:

sa = homlib.SupeRANSAC(solver, inlier_threshold=0.07)
estimate, stats = sa.estimate(x_noisy, y_noisy)

Solvers

This repository contains the following solvers for computing homographies with simultaneous radial distortion correction and/or incorporating IMU data.

We further support affine-covariant and orientation-covariant solvers, requiring fewer correspondences than their point-based counterparts by leveraging the geometric information of the corresponding descriptors.

| Authors (year) | #Corrs | Minimal | Radial distortion coeff. | IMU data | General homography | Descriptor | | ---------------------------------------- | ------ |โ€ฆ