Projects
CS538a: Time-Sensitive Distributed Applications
I did a small literature survey and introductory paper on Delay Tolerant Networking. I think this is a very interesting area and have gone on to do my MSc research in this area. See my research page for way more information and links than are in this survey. Good as an introductory read, though. PDF (32KB)
CS550: Machine Learning
Clustering of Typeset Mathematical Symbols Using Spectral Methods and Shape Contexts
This project demonstrates a method for recognising typeset mathematical symbols. The method involves using spectral methods to perform semi-supervised clustering of the symbol images, using shape contexts to measure the similarity between symbols. PDF (85KB)
CS533b: Animation Physics
Draping Cloth
This simulated draping a cloth over an object. Not perfect, since I didn't implement the code that would make the cloth bend correctly, but it's pretty darn close. MPEG (45KB).
Waves
This is a very basic deep-ocean wave simulation using an inverse FFT. I added choppiness by distorting the wave grid as described in Real-time Simulation of Water Surface. I also attached a ball to the distorted grid which gives it suprisingly realistic movement. Sorry for the poor quality, ppmtompeg really sucks. MPEG (1.3MB).
CS414: Computer Graphics
To run any of these on Windows you'll need to download the Glut DLL and put it in the same place as you put the executable.
Particle Systems
A small tutorial program written as the final course project. It demonstrates basic principles of particle
systems in graphics, including force fields that can both attract and repel. The readme contains a lot more info.
Attained an Honourable Mention for Best Tutorial for the class!
To navigate: click and drag. To zoom, right-click and drag.
To select a system or force field, switch to design mode and click the wire sphere.
Download: psys.zip
CS Honours Thesis
My Honours research, done under the supervision of Scott Hazelhurst, investigated the use of compression in separating introns from exons in DNA strands. I considered each region to be a statement in a different language and attempted to separate these two languages using a gzip-based technique. PDF (567KB)
