BU CAS CS 585

Image and Video Computing

Fall 1996

Programming Assignment 3

Due before class on Tuesday, November 12


Implement snakes using either the formulation discussed in class, or using the formulation in the paper by Williams and Shah. Some useful hints on the Williams and Shah paper from Chuck Dyer's computer vision class at U. Wisconsin.

For comparison, an alternative implementation (based on dynamic programming techniques) is provided in ~cs585/courseware/snakes on the CGL cluster. You are welcome to use only the graphics modules provided in these source files as part of your implementation.

Test your program to find contours in four monochrome images of your choice. To make testing easier, one of your test images should probably be an artificial image (e.g., a white disk or square on a black background). Be sure to save "before" and "after" shots that show the snake in its initial and rest position.

For extra credit, use your snake module to track a moving object over a number of frames in an image sequence. The user should only need to place a "template" on the first image. All subsequent images in the sequence should use the previous frame's snake as an initial model.

Create an HTML document that gives the matlab program source and output for your example cases. Include both the before and after shots. Include a one page description of how your program works. Be sure to discuss the assumptions and weaknesses of the particular technique employed. How sensitive is the algorithm to setting the parameters alpha and beta? Why? How stable is the algorithm with respect to initial placement of the snake in the image? Why? How stable is the algorithm with respect to the time step? Why?

Submit your complete HTML document using the submit program on CGL or on CSA.


Page Created: Sep 2, 1996 Last Modified: Oct 21, 1996 Maintained by: Stan Sclaroff