Computer Vision Projects

"Every person takes the limits of their own field of vision for the limits of the world."
-Arthur Schopenhauer

This blog is a journal of the computer vision work of Matt Young, grad student in Electrical Engineering at the University of Illinois, Urbana-Champaign.

Friday, December 17, 2004

Final Report Uploaded!

Ok, the Final Report for my project on Occlusion Detection and Ordinal Depth Determination is now officially up. Sorry it took so long, I had more to talk about than I had originally imagined.

Expect to see my other major project go up soon as well, just as soon as I get motivated enough to organize it into some sort of deliverable form. I may also post up some of my other projects through the semester, but I'd hate to give away answers to future students and make them miss all the pain I had to go through. :-P

Tuesday, December 14, 2004

Ordinal Depth Project Uploaded

Ok, I've gone ahead and uploaded my code and final presentation for my Ordinal Depth Detection project (ECE 598). They are available under the heading "ECE598 Project: Ordinal Depth Detection" in the links on the right-hand side of the page.

Hopefully I'll have the final report uploaded by the end of the day. If not, It probably won't be up until Thursday or Friday.

I'm also planning to upload some of my other computer vision projects from throughout the semester as well, when I get the chance.

Saturday, December 04, 2004

The Joys of Recursion

So, in order to detect occlusions in a scene from a few images, first you've got to break up the image into regions. Then you simply determine which regions are not visible in different images, and this tells you what is in front of what.

The problem with this is that it requires you to break up your image into regions... The algorithm I'm using involves the image flow. So I calculate all the flows in the image and then segment by determining which part of the image belongs to which flow.

The basic algorithm is this:
-Get the image flows
-For each image flow, find the regions that match this image flow
-Repeat until all image flows have been run through the image and the whole image is broken into regions.

The problem with this is in finding regions that match a particular image flow. All the image flows were calculated between two frames, so you take the first frame, apply the image flow to it, and then compare it with the second frame. You then record good intensity matches. With this map of intensity matches you try to grow regions.

Well, how do you grow a region out of a bunch of pixels? Clustering. And the most simple clustering algorithm is simply to connect together adjacent pixels. But of course to search out these adjacent pixels, you have to use a recursive algorithm, much like searching a tree.

Well, it turns out MATLAB dies very quickly when performing recursion. When I try to find a region that's more than, say, 500 pixels (which is very likely) MATLAB will simply crash.

So it looks like I'll have to go back and use a different clustering method. Maybe K-means will work.