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 libsgmFrom source in dev mode, clone the public repository then :
make install
source venv/bin/activate # Libsgm is installed in virtualenvlibSGM 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 docsPandora - 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.