← all repositories
laurentkneip/opengv

Geometry problems for cameras that aren't where you think they are

OpenGV solves pose estimation when your camera might be a non-central catadioptric rig and you still need RANSAC to converge.

1.1k stars C++ Computer Vision
opengv
Not currently ranked — collecting fresh signals.
star history

What it does OpenGV is a C++ library for geometric computer vision: given calibrated cameras, it computes absolute pose, relative pose, triangulation, and point-cloud alignment. It wraps these solvers for use inside RANSAC loops or nonlinear optimizers, and ships with Matlab and Python bindings.

The interesting bit The library explicitly handles non-central cameras—think catadioptric rigs or multi-camera arrays where all rays don’t meet at a single point. Most geometry libraries quietly assume a pinhole model; OpenGV treats that as a special case rather than the only case.

Key highlights

  • Covers absolute pose, relative pose, triangulation, and point-cloud alignment in one library
  • Central and non-central camera models supported throughout
  • Designed for embedding in RANSAC or nonlinear optimization workflows
  • Matlab and Python interfaces included; precompiled Matlab mex files available
  • Maintained by ShanghaiTech’s Mobile Perception Lab

Caveats

  • Documentation lives on external pages; the README itself is minimal
  • No candidate images provided, so visual examples are absent from the repo
  • Star count (1.1k) suggests niche adoption; likely competes with larger ecosystems like OpenCV’s contrib modules

Verdict Worth a look if you’re doing calibrated multi-camera geometry or non-central camera research and need solvers that plug into robust estimation frameworks. Skip if you’re after uncalibrated reconstruction or a batteries-included SLAM system.

Frequently asked

What is laurentkneip/opengv?
OpenGV solves pose estimation when your camera might be a non-central catadioptric rig and you still need RANSAC to converge.
Is opengv open source?
Yes — laurentkneip/opengv is an open-source project tracked on heatdrop.
What language is opengv written in?
laurentkneip/opengv is primarily written in C++.
How popular is opengv?
laurentkneip/opengv has 1.1k stars on GitHub.
Where can I find opengv?
laurentkneip/opengv is on GitHub at https://github.com/laurentkneip/opengv.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.