AquaCal Documentation

Build Status Coverage PyPI version Python License: MIT

AquaCal is a refractive multi-camera calibration library for underwater arrays. It calibrates air cameras viewing through a flat water surface, modeling Snell’s law refraction for accurate 3D reconstruction.

All values are in meters. This includes camera positions, water surface position, board dimensions, and 3D reconstruction outputs.

📖 Overview

Learn what refractive calibration is and why standard calibration fails for underwater scenarios.

What is Refractive Calibration?
🧭 User Guide

Understand the theory: refractive geometry, coordinate conventions, and optimizer pipeline.

User Guide
📚 API Reference

Detailed API documentation for all public modules and functions.

API Reference
🎓 Tutorials

Interactive Jupyter notebook examples: full pipeline, diagnostics, and synthetic validation.

Tutorials

Quick Start

from aquacal import run_calibration, load_calibration

# Run calibration from YAML config
result = run_calibration("config.yaml")

# Load saved calibration
calib = load_calibration("output/calibration.yaml")