Ancient course work

Implementing Grabcut

In a class project I reimplemented the Grabcut algorithm. I discovered a few corrections to the original equations and released our source code.


GrabCut is an innovative 2D image segmentation technique developed by Rother et al. [2004]. This paper provides implementation details omitted from the original paper. Details covered in background papers are summarized here so that future implementors can refer to a single paper. Our implementation of GrabCut is described and results are included. Our main contribution is correcting errors in Equations (9) and (11) of the original paper. We also discuss weaknesses of the algorithm that were not discussed in the original paper. We present possible research directions to address these problems.


Source code (C++, public domain)

Over at More than Technical, Roy has extended this implementation to support loading a wider range of image formats.

Workstation Idle Period Duration Prediction for Distributed Computing

2004. This was a class project that used Bayesian methods to predict idle periods in a distributed computing platform.


We consider the problem of predicting idle period duration on workstations used in DOGMA, a distributed computing architecture developed and deployed at Brigham Young University. BYU provides students with open access to nearly 900 workstations throughout the main campus for use in homework and research pursuits. When idle, these computers are used by DOGMA to perform time consuming research computing. Predicting the lengths of future idle periods could improve the performance of DOGMA. We develop a hierarchical Bayesian model for idle period lengths. We then use Markov Chain Monte Carlo (MCMC) computation to create an idle duration predictive distribution for each computer. We demonstrate that a Bayesian approach produces reasonable predictive distributions
for this application.


9 thoughts on “Ancient course work

  1. Dina

    Dear Justin

    I’m actually interested in your implementation of the Grabcut algorithm.
    i’d like to know if there is a user manual for usage instructions for that code?


  2. Justin Talbot Post author

    Being a class project, there’s no user manual; though there is a readme file in the zip that describes the UI. Are you running into problems compiling the code or actually using the application?

  3. Dina

    sorry i’m thinking my question was not clear enough, i could run the application however the loaded image is covered completely with a brown mask. the readme file is clear but after all i can’t see the image to select which part to segment.

    is this a normal behavior of the code or i have some error with my version ?

  4. Jiang Yifeng

    Dear Sir,
    There is some problem when I run the GrabCut.vcproj file. The warning says “unable to start program ‘****.\Debug\GrabCut.exe’ The system cannot find the fie specified “. I run the codes on VS2010, and I have configurated the OpenGL glut and OpenCV. Could you tell me what’s the problem?
    Thanks a lot! Best Wishes!

  5. Justin Talbot Post author

    I haven’t tried to compile the GrabCut code in many years. It looks to me like compilation is failing sometime earlier than the warning you posted. Look back through the compilation log for clues to what went wrong.

Leave a Reply

Your email address will not be published.