snaphu-sys 0.1.2

Low-level Rust bindings to the SNAPHU C library
Documentation
# Rust FFI Bindings to SNAPHU

[![crates.io](https://img.shields.io/crates/v/snaphu-sys.svg)](https://crates.io/crates/snaphu-sys) [![docs.rs](https://docs.rs/snaphu-sys/badge.svg)](https://docs.rs/snaphu-sys)

`snaphu-sys` provides low-level Rust bindings to the [SNAPHU](https://web.stanford.edu/group/radar/softwareandlinks/sw/snaphu/) library,
a C implementation of a statistical-cost, network-flow algorithm for two-dimensional phase unwrapping.

From their website:

> Two-dimensional phase unwrapping is the process of recovering unambiguous phase values from data known only modulo $2 \pi$. SNAPHU formulates this problem as a maximum a posteriori (MAP) estimation task and solves it approximately using network-flow optimization techniques. The implementation includes statistical models tailored for topography, deformation, and smooth generic data, and is commonly used in InSAR and related geophysical applications.

This crate exposes the original SNAPHU C API, with slight modifications, via unsafe FFI bindings. It does not provide a safe or idiomatic Rust interface.

The upstream SNAPHU codebase targets Unix-like platforms, and these bindings target the upstream version 2.0.7 (February 2024).

## License

This project includes code derived from SNAPHU and the cs2 minimum-cost
flow solver.

The cs2 component is licensed for **non-commercial / evaluation use only**.
As a result, this crate may not be used for commercial purposes.

See the original SNAPHU and cs2 documentation for full terms.

## References

This library is based on the phase unwrapping algorithms developed by Curtis W. Chen and Howard A. Zebker, as described in the following publications:
1.	C. W. Chen and H. A. Zebker,_Network approaches to two-dimensional phase unwrapping: intractability and two new algorithms_,Journal of the Optical Society of America A, Vol. 17, pp. 401–414 (2000).
2.	C. W. Chen and H. A. Zebker,_Two-dimensional phase unwrapping with use of statistical models for cost functions in nonlinear optimization_,Journal of the Optical Society of America A, Vol. 18, pp. 338–351 (2001).
3.	C. W. Chen and H. A. Zebker,_Phase unwrapping for large SAR interferograms: Statistical segmentation and generalized network models_,IEEE Transactions on Geoscience and Remote Sensing, Vol. 40, pp. 1709–1719 (2002).