Overview • Install • Usage • Related • References
libSGM is an implementation of Semi-Global Matching (SGM) algorithm based on [Hirschmuller, 2008], [Ernst, Ines & Hirschmüller, 2008] and [Hirschmüller, Buder & Ernst, 2012].
The main algorithm is written in C++ and is wrapped with cython to provide a libSGM
python module.
An experimental less efficient python only module libsgm_python
is available for study purposes only.
libsgm is available on Pypi and can be installed by:
pip install libsgm
From source in dev mode, clone the public repository then :
make install
source venv/bin/activate # Libsgm is installed in virtualenv
libSGM is a library only and must be used as a package :
import c_libsgm
...
cost_volumes_out = c_libsgm.sgm_api(cost_volume_in, p1, p2, directions, invalid_value, segmentation=optimization_layer, cost_paths=False, overcounting=False)
Let's see pandora_plugin_LibSGM for real life exemple.
To build library documentation, doxygen
must be installed on your system.
After installation from source, dependencies are installed in the virtualenv.
Documentation can be generated by:
source venv/bin/activate
make docs
Pandora - A stereo matching framework
Plugin_LibSGM - Stereo Matching Algorithm plugin for Pandora
Please cite the following paper when using libsgm: Cournet, M., Sarrazin, E., Dumas, L., Michel, J., Guinet, J., Youssefi, D., Defonte, V., Fardet, Q., 2020. Ground-truth generation and disparity estimation for optical satellite imagery. ISPRS - International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences.
[Hirschmuller, 2008] H. Hirschmuller, "Stereo Processing by Semiglobal Matching and Mutual Information," in IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 30, no. 2, pp. 328-341, Feb. 2008. doi: 10.1109/TPAMI.2007.1166
[Ernst, Ines & Hirschmüller, 2008] Ernst, Ines & Hirschmüller, Heiko. (2008). Mutual Information Based Semi-Global Stereo Matching on the GPU. Proceedings of the International Symposium on Visual Computing. 5358. 10.1007/978-3-540-89639-5_22.
[Hirschmüller, Buder & Ernst, 2012] Hirschmüller, Heiko & Buder, Maximilian & Ernst, Ines. (2012). Memory Efficient Semi-Global Matching. ISPRS Annals of Photogrammetry, Remote Sensing and Spatial Information Sciences. I-3. 10.5194/isprsannals-I-3-371-2012.