Awesome
A MATLAB wrapper for solving DenseCRF problems [1,2]. The code uses the c++ library provided with [2].
Getting started
- Setup a C++ compiler in MATLAB using
mex -setup
, you will need to have a supported compiler installed, see https://www.mathworks.com/support/compilers.html for a list - To solve a general problem see examples/example.m
- To perform segmentation on the MSRC-21 database using the unary potentials from http://graphics.stanford.edu/projects/densecrf/unary/ see examples/example_MSRC.m
Included solvers
- Mean field approximation, using approximate filtering [2]
- Mean field approximation, performing all summations explicitly (slow)
- TRW-S [3]
- Graph cuts [4] (only works for 2 label problems)
References
-
Efficient Inference in Fully Connected CRFs with Gaussian Edge Potentials. <br /> Conference on Neural Information Processing Systems (NIPS), 2011. <br /> Philipp Krähenbühl and Vladlen Koltun.
-
Parameter Learning and Convergent Inference for Dense Random Fields. <br /> International Conference on Machine Learning (ICML), 2013. <br /> Philipp Krähenbühl and Vladlen Koltun.
-
Convergent Tree-reweighted Message Passing for Energy Minimization. <br /> IEEE Transactions on Pattern Analysis and Machine Intelligence (PAMI), 2006. <br /> Vladimir Kolmogorov.
-
An Experimental Comparison of Min-Cut/Max-Flow Algorithms for Energy Minimization in Computer Vision. <br /> IEEE Transactions on Pattern Analysis and Machine Intelligence (PAMI), 2004 <br /> Yuri Boykov and Vladimir Kolmogorov.