The Weizmann Institute of Science
Faculty of Mathematics and Computer Science
Computer Vision Lab



Shai Bagon's Matlab Code


  • Unified Discrete Multiscale Optimization
    Matlab code implementing discrete multiscale optimization presented in:
    Shai Bagon and Meirav Galun A Unified Multiscale Framework for Discrete Energy Minimization (arXiv'2012),
    and Shai Bagon and Meirav Galun A Multiscale Framework for Challenging Discrete Optimization (NIPS Workshop on Optimization for Machine Learning 2012).
  • Correlation Clustering optimization
    Matlab code implementing optimization algorithms presented in:
    Shai Bagon and Meirav Galun Large Scale Correlation Clustering Optimization (arXiv'2011).
    May be applicable to other graph partitioning problems as well.
  • Sketching the Common
    Matlab implementing the sketching part of Shai Bagon, Or Brostovsky, Meirav Galun and Michal Irani's Detecting and Sketching the Common (CVPR 2010).
  • Multilabel Submodular Global Minimization
    Matlab code implementing the method of Schlesinger and Flach to obtain global minimum for multilabel submodular pair-wise energies.
  • Matlab Wrapper for Graph Cuts
    Matlab wrapper to Veksler, Boykov, Zabih and Kolmogorov's implementation of Graph Cut algorithm. Use the following citation if you use this software.
    There is a simple example of image segmentation using GraphCuts.
    An extended implementation of alpha-expansion move for more general energies (including non-submodular) can be found here.
  • Matlab Wrapper for Robust Higher Order Potentials
    Matlab wrapper to Lubor Ladicky, Pushmeet Kohli and Philip Torr's Minimizing Robust Higher Order Potentials using Move Making Algorithms. This software is for research purposes only. Use the following citations in any resulting publication.
    Note: This wrapper provides an additional functionality of varying weights for the nodes participating in a higher order potential as described in the tech. report.
  • Matlab class for computing Approximate Nearest Nieghbor (ANN)
    Matlab class providing interface to ANN library of David Mount and Sunil Arya.
    Use the following citations in any resulting publication.
    A patch for supporting latest g++ libraries provided by Brendt Wohlberg.
  • 3D Reconstruction of a Moving Object
    A Matlab implementation of dense 3D reconstruction method of Simakov, Frolova and Basri (ICCV, 2003).
  • Adjacency matrix
    Constructing adjacency matrix for regular grids of arbitrary size and dimenssion.
  • Algebraic Multi Grid (AMG)
    Coarsening a graph using AMG.
  • Weighted Histogram
    Compute weighted histogram (i.e., each entry does not have weight 1 but may have different weights).
    MEX implementation compiled for Windows and Linux (Matlab 7).
    If you use a recent Matlab version you should try accumarray instead.
  • Look Up Table
    Performing look up table operation on an N-dimensional array.
    Supports all data types. MEX implementation.
  • Matlab interface for EDISON
    EDISON is an open source mean-shift image segmentation by RIUL. This interface enables to run EDISON from Matlab.
    MEX implementation - requires compilation.
  • Random Sampling
    Sample randomly from weighted data, without replacements.
    MEX implementation.
  • Mosaic
    Create mosaic image out of a video (submited with Tal Kramer).