Cheeseman Bayesian Results


Unfortunately the Bayesian method suffers from one significant drawback which affected us quite significantly - computational time.  It is apparently well known that Bayesian (statistical) methods for these sorts of algorithms traditionally take quite a bit of time to perform, but we figured, what the heck, let's give it a shot!

We are able to (slowly) obtain a "first guess" image, which though blurry, clearly is not very far from being correct.

As of the writing of this report, we have attempted one iteration of the entire mixel grid of a 32 x 32 pixel sequence which translates to a 64 x 64 mixel grid (over 5 frames.)  That calculation has currently been running for 48+ hours and has not finished.  Needless to say, we do not expect to obtain any results from this method anytime soon, and so none will be presented.

The main problem is the speed with which Matlab runs iterative loops.  In this code there are 5 nested for loops which we cannot be reduced to matrix multiplications, and that is the big slow down.  The lengths of the loops are as follows:

For the data set above, that is 64 x 64 x 5 x 32 x 32 = 21 million loops.  This is a lot, but perhaps not a daunting task for a C++ program.  We would very much have liked to try to implement this algorithm in C++, however, due to some of the complexities involved with reading in images, etc., at this point, there would not be enough time to get any results.  Our impression at this point is that a C++ would most likely run faster.

We will however present a sample of Dr. Cheeseman's data from his webapge.  THIS IS NOT OUR DATA!

This first image is of part of a dollar bill.  The left half has not been processed, and the right half has....
 
 

Here are two images from Mars, one which has been processed, one which has not....

Clearly this is indeed a method which works well!