Assignments: Sensory Motor Systems, CSC 449 (Fall 2002)

Science is a game --- but a game with reality, a game played with sharpened knives... if a man cuts a picture carefully into 1,000 pieces, you solve the puzzle when you reassemble the pieces into a picture; in the succcess or failure, both your intelligences compete. In the presentation of a scientific problem, the other player is the good Lord. He has not only set the problem but also devised the rules of the game --- but they are not completely known, half of them are left for you to discover or to determine. The experiment is the temmpered blade which you wield with success against the spirits of darkness -- or which defeats you shamefully. The uncertainty is how much of the rules God himself has permanently ordained, and how much appears to be caused by your mental inertia, while the solution generally becomes possible only through freedom from this limitation. This is perhaps the most exciting thing in the game. For here you strive against the imaginary boundary between yourrself and the Godhead -- a boundary that perhaps does not exist.

--Erwin Schrödinger

Programming Assignments

Making Digital Images

Camera Characteristics

Hough Transform

Simulation and Calibration

Color Segmentation

Shape Measures

Clustering and Classification

Term Projects

The subject is up to you. First you should write and turn in a proposal justifying why the topic is interesting and doable, and describing what you propose to accomplish. PLEASE feel free to bring your ideas to the Prof or TA (just a few words after class can be very valuable) before writing your proposal. It can be strictly a written (scholarly, researchy) paper -- my guideline would be "20 references (at least half from books and refereed papers) connected by a good story". You can do your own research (mathematical, psychophysical, programming), you can write a critical review of the state of some area that interests you (The Turing Test: its relevance and how close have we come?; The Promise and Disappointments of Neural Nets, The Possibilities and Difficulties of Understanding Video, Successes and Failures of Automatic Planning), like that.
  • Or it can be a programming project. Several quite good ones appear in the problem sections of your text, with little keyboards next to them. Or make up your own. Here's last year's third programming problem, a Telling O's from X's Last year I was not terribly impressed by what people did, in general: The key is that it's just not interesting to solve a simple case of character recognition. But it is nice when you can make up your own data. So the key is to create challenging problems within a simple format. NOT hard given the various text fonts out there, including handwriting. So here is a large Database of digitized digits to play with.

  • One other partially-field-tested project is the Robotic Control Assignment from the undergraduate robotics course.
  • A local project currently running: Grad student Matt Boutell is working on scene classification for Kodak. Issues of high-level scene interpretation down to low-level features, from strategy to tactics, from learning systems to expert systems.
  • Another local project currently running: UG Jon Schmid is doing mobile robot obstacle detection and navigation using optical flow. We have had some success and have written things up more or less, but there is more to do.
  • Yet another local project currently running: UG Jon Schmid has pursued stereo input for obstacle detection but it is challenging given the tools he had. You could implement a good stereo algorithm and make it run on the mobile robot with his collaboration.
  • Some inspiration: how about this... a Virtual phonograph . More background and possible links to related sites at this Longwinded thread of typical geeky maunderings .
  • Or this famous project in Flow Control?

    Mostly non-Programming Assignments

    The keys EX1, EX2... correspond to the entries in the syllabus. Some exercises may have their own links, others appear here directly. Ch4 means Chapter 4 of Text, Sonka et al.

    In general it's a good idea to go through all the exercises for the current chapter to make sure you feel comfortable with them.

    In particular, you should make sure you can answer all the "short answer" questions for each chapter you read. Some of them actually involve a little work (e.g. find the Fourier tranform of the Dirac delta function), but most just give you a chance to restate concepts defined in the text.

    The Text's "Problems" are often of the form: Write code to implement X and apply it to a range of images for a range of parameters. This habit of methodically exploring the multidimensional space of variables in a vision problem is a good one to cultivate! But it's not too much of an exaggeration that several of these problems from any chapter could easily assume the scale of a term project! Thus we won't be doing many of the book's problems.

    Instead, I'll post some problems every week or so depending on what seems fun and relevant at the time. They'll be more mathematical or geometric, not programming.