This is an attempt to re-create the web page for CS559 from 2007.

The original course web was created in PMWIKI, which has been hard to maintain.

This site automatically converted the pages - the formatting is very different, but most of the content has copied over. Many links are broken.

The “Home Page” was Main.Main. You might also check out Site.AllPages.

The best way to find things is probably to search for it…


main-p1

This is a preliminary version - things are subject to change (but I expect the only things will be the additions of details that aren’t here yet). Major modifications will be announced at the top (i.e. here). Update 9/17/2007 - adding link to Stage 3 (written homework assignment) Project 1 - A Picture Processing System 1.@ Overview and Objectives The goal of this project is to give you experience writing programs that manipulate digital pictures. Read more…

main-p1-stage1

The purpose of this phase of the project is to make sure that you have gotten the mechanics issues dealt with, have gotten the necessary tools to write programs in the class, and have actually started working on things. By the due date (Monday, Sept 17), you should turn in (that is copy to your handin directory P1-Stage1 - part of the goal here is to make sure that you can turn stuff in and that we have the directories made correctly): Read more…

main-p1-stage2

The purpose of this phase is to make sure that you are actually started writing image processing code. By the due date, you should turn in a program (or 2 programs if you prefer) that perform 2 image processing operations: desaturate and blur. The blur should be able to do (at least) a 3x3 and a 5x5 convolution with a blur kernel (like a BSpline), and desaturation should be able to desaturate the colors by 30% (or an arbitrary amount specified by the user, providing the user can input 30%). Read more…

main-p1-testimagesandscripts

update (10/7 2:00 am) there are now three scripts up. check back tomorrow for more! update (10/6 11:00 pm) there are now two scripts up. check back later for a few more! a note on sample scripts: put all of the images in a folder called “testimages”. i preferred to put my scripts in a folder called “testscripts”, so i could run the program by typing in the command “PictureProcessor.exe testscripts/SCRIPTNAME. Read more…

main-p1commands

In all cases, it is important that your program is robust in the face of bad inputs. It should never crash. Some operations are required of all programs. Other operations are optional, but doing more optional parts is what gets you a better grade. The point values will be given later. It is important to describe all optional things that you’ve done in your documentation! Basic Operations These provide the basic mechanics for working with images. Read more…

main-p1help-bsplines

The B-Spline Kernels for Blurring For the project, I suggest you use the B-Spline kernels for blurring. The B-Spline kernels were mentioned quickly in class, and the discussion in the book is actually for the continuous cubic case (and its not obvious how to connect this to the discrete case). The discussion of B-Splines in the book for curves (in Chapter 15) also is hard to connect to the discrete filters (although, the actually are the same things). Read more…

main-p1sample

The Picture Processor Sample Solution We have built an example solution for the project. The binary is available (coming soon) so you can play with it and see what your project should do. The example doesn’t implement all of the optional features, and doesn’t necessarily provide exemplary implementations of all the functions. But it should be good enough for you to figure out what is going on. We also are providing you with some of the source code. Read more…

main-p2

Project 2 - Trains and Roller Coasters Update 10/22/2007 - Phase 4 and 5 Assigned Update 10/22/2007 - Phase 3 Assigned - here it is Update 10/19/2007 - New (later) due date for Phase 3 1.@ Overview In this project, you will create a train that will ride around on a track. When the track leaves the ground, the train becomes more like a roller coaster. The two main purposes of this project are to give you experience in working with curves (e. Read more…

main-p2-1

CS559 - Project 2, Phase 1 Transformations Homework Turn your answers in by placing a file in your handin directory underP2-Written. Please provide either a plain text file (.txt) or anacrobat file (.pdf). We will use the AFS file modification date todetermine when the assignment was turned in. If you choose to work in pencil and paper, please either type youranswers in (preferred), or scan your pages in. This assignment is due on Monday, October 15th at 11:59pm, with late assignments accepted according to the class late policy. Read more…

main-p2-1-key

For questions 1-5, we consider a 2D graphics system that works like OpenGL. It uses 3x3 homogeneous matrices and a post-multiply convention. It has a matrix stack, and supports the following commands: PUSH @ makes a copy of the top element of the matrix stack POP @ removes the top element of the matrix stack TRANS(x,y) - translates by x,y ROT(t) - rotates counter clockwise by t degrees SCALE(x,y) - scales by x,y SQUARE - draws a unit square between (0,0) and (1,1) Here is an example program and its output: Read more…