/upgmpp

Undirected Probailistic Graphical Modes for C++

Primary LanguageC++GNU General Public License v3.0GPL-3.0

UPGM++

Undirected Probabilistic Graphical Models in C++

Copyright (C) 2014-2019 Jose Raul Ruiz Sarmiento

University of Malaga (jotaraul@uma.es)

Personal webpage: http://mapir.isa.uma.es/jotaraul

Project webpage: http://mapir.isa.uma.es/work/upgmpp-library

ROS wrapper repository: https://github.com/MAPIRlab/upgmpp_wrapper

If you use UPGM++, please cite us by:

@INPROCEEDINGS{Ruiz-Sarmiento-REACTS-2015,
author = {Ruiz-Sarmiento, J. R. and Galindo, Cipriano and Gonz{'{a}}lez-Jim{'{e}}nez, Javier},
title = {UPGMpp: a Software Library for Contextual Object Recognition},
booktitle = {3rd. Workshop on Recognition and Action for Scene Understanding (REACTS)},
year = {2015}
}

General information

This is a standalone C++ library for Undirected Probabilistic Graphical Models. Some examples are provided for a better understanding of the library use. NEW! A ROS wrapper is now available here.

I want to thank Prof. Dr. Joachim Hertzberg and Mr. Martin Günther for the motivation and support that they gave me in the first steps of this library, which was started during my stay at the University of Osnabrück, Germany.

In this guide:

Install dependencies:

  • Eigen.

  • Boost.

  • liblbfgs:

      sudo apt-get install liblbfgs-dev
    

    That package is available starting with Ubuntu 12.10 Raring; if you're using Ubuntu Precise, go to http://packages.ubuntu.com and download the Raring package (or later). You also need the dependency liblbfgs0. From the command line:

      cd /tmp
      wget http://de.archive.ubuntu.com/ubuntu/pool/universe/libl/liblbfgs/liblbfgs0_1.10-5_amd64.deb     # replace amd64 by i386 if compiling on a 32 bit Ubuntu
      wget http://de.archive.ubuntu.com/ubuntu/pool/universe/libl/liblbfgs/liblbfgs-dev_1.10-5_amd64.deb  # replace amd64 by i386 if compiling on a 32 bit Ubuntu
      sudo dpkg -i liblbfgs0_1.10-5_amd64.deb liblbfgs-dev_1.10-5_amd64.deb
    
mkdir build && cd build && cmake .. && make
sudo make install

At execution time:

  • If you selected the ENABLE_OPTIMIZATION_FLAG in CMake and your program crashes, it could be due to the -march=native flag. Try chaging its value (e.g. x86-64 check this) or removing it.