DOC

cr311syllabusdoc - SW 408 _ Visual Programming with Java

By Benjamin Bradley,2014-04-24 12:51
7 views 0
cr311syllabusdoc - SW 408 _ Visual Programming with Java

     Syllabus Page 1

    Syllabus for

    CR311 Image Processing in Java

Course Description:

    A first course in Image Processing; Image algebra,arithmetic operations,boolean

    operations, matrix operations

     Achromatic and Colored Light

     Selecting Intensities, Gamma Correction

     Chromatic Color, psychophysics, Color models

     Color Space Conversion, low-level pattern recognition.

    Students will learn the theory of 2-D Fast Fourier Transform Class, 2D convolution

    and frequency space processing, compression and 2D streaming.

    Students will apply the theory by creating programs that read processing and write

    image streams. They are exposed to the elements of multi-resolution multi-

    media network streaming. They learn about a wide class of transforms,

    including Wavelets, DCT, the PFA FFT and others.

    This course requires substantial programming effort and emphasis is place on good

    software engineering practices.

    Students will learn enough signal processing to write their image processing

    applications.

Prerequisite: ..................................................... CR310, Voice and Signal Processing

Textbook: ................................................ Image Processing, in Java by Douglas Lyon

    Reference Material: ...................... Java Digital Signal Processing, By Lyon and Rao

    E-mail................................................................................................. access is required.

    Computer Usage: ................ Students MUST have access to a computer with Java .

    Course Notes: ................................................. Handouts/diskettes/e-mail, web page

    Contact Information

Phone ................................................................................................... (203)641-6293

    Fax ........................................................................................................ (203)877-4187

    E-mail: ......................................................................................... lyon@DocJava.com

    Web: ..................................................................................... http://www.DocJava.com

    Office Hours Monday, Tuesday ............................................................................ 1:00 pm - 2:00 pm

    Wednesday....................................................................................... 5:00 pm - 6:30 pm

    Course Offerings CR311, Image Processing ......................................................... Mc 203 Mon 2:00-4:30

    CR 325, Computer Graphics.................................................... Mc 203 Tues 2:00-4:30

    SW 409, Java Programming II ................................................. Mc 203 Wed 6:30-9:20

    CR311 -> ECE 430

    CR324 -> ECE 440.

    ECE510, Thesis I ................................................................................. By Appointment

    April 24, 2010 Page 1

     Syllabus Page 2

    ECE420, Readings ............................................................................... By Appointment

Course Objectives:

    This course is designed to support the signal processing and computer systems domain in the Computer Engineering program. When the course is done, Students will have written their own Java applications for doing image processing.

    Course Learning Goals

    G1. The students will learn the principles of Image Processing.

    G2. The students will become proficient in the usage of the Java language and Object Oriented Design. G3. The students will have a basic understanding of image filtering.

    OC1 Students demonstrate the ability to utilize Java in practical image processing problems. OC2 Students have deployed Java applications of their own design, on the web.

    OC3. Students build an image sequence processing application.

    OC4. Students make use of statistical analysis to optimize performance.

    OC5. Students implement convolution on images.

Outcomes:

    When the course is done,.

    Performance Indicators:

    Aside from the basics assessment procedures based on homeworks and tests, Students must obtain 75% or better on all tests. Additionally, students must perform at least 75% on the homeworks.

Student Activities: Learning a new computer language is very much a hands-on activity,

    which cannot be learned from lectures or textbook reading alone. It does require those lectures and textbooks, but the real learning results from the laboratory trials and the homework assignments. To achieve the course objectives, the student must have good class attendance and participation, conduct the computer programming tasks during the laboratory periods as well as the assigned homework. Homework assignments and laboratory trials are due at the beginning of the class following the assignments. They are to be placed in an envelope containing the student’s name. The contents of the envelope

    will be a diskette and a paper copy of the requested Java source code.

Course Requirements: The schedule of activities and topics to be covered each week are

    outlined below. Each week will begin with responses to questions and a brief review on the previous week’s topics. The first week will begin with administrative announcements

    and a review of this syllabus.

Grading Policy:

     Homework and Laboratory Trials: 1/3

     Midterm Exam : 1/3

     Final Exam : 1/3

    April 24, 2010 Page 2

     Syllabus Page 3

    Assignments are due at the beginning of class. Assignments handed in during class lose 5

    points, after class 10 points. Late submittals lose 10 points per day including weekends

    and holidays. Missing a test results in a zero unless a written excuse is presented.

Homework requirements:

    Print out a listing of the program. Print out the program intput and output. You may need to do this at

    various levels of detail. Hand in a labeled disk with a printout. Place the disk in a #10 letter envelope and

    staple the envelope to the printout.

Topics: (coverage paced will be altered to accomodate the class):

Digital Image Processing Fundamentals

     Overview of Image Processing and its application

     Image Storage and Display

     image models

     cameras video and scanners

     Current state of streaming video on the Internet

     Problems and solutions

     Sampling

     Spectra and Spectra

     Preview of Image processing

    Reading and Writing Images

     Reading GIF and JPEG

     Writing GIF

     Reading PPM

     Writing PPM

    Edge Detection

     Roberts, Prewitt, Frei-Chen,

     Kirsch, Sobel,

     boxcar, pyramid, argyle, Macleod,

     derivative of Gaussian, Robinson,

     Canny

     Laplacian generation, Laplacian of Gaussian

     Hat

    Boundary Processing

     XY to Vector Conversion

     vector ordering using Dijkstras' algorithm

     Edge following and Martellis' algorithm

     Divide-and-conquer boundary detection

     Range finding via diffraction

     Range map to boundary representation Image Enhancement Techniques

     Blur

     mean, median, unsharp

     smoothing binary images by association

     local area contrast enhancement

     histogram equalization

     lowpass filtering

     highpass filtering

    April 24, 2010 Page 3

     Syllabus Page 4

     averaging multiple images

    Achromatic and Colored Light

     Selecting Intensities-Gamma Correction in Java

     Chromatic Color

     psychophysics

     Color models (CIE, RGB, YUV, CMY, HSV, YIQ)

     Color coordinate systems

     RGB to L*u*v*, L*u*v* to RGB

     RGB to L*a*b*, L*a*b* to RGB

     RGB to XYZ, XYZ to RGB

     RGB to YIQ, YIQ to RGB

     RGB to YUV, YUV to RGB

     RGB to HSV, HSV to RGB

     RGB to HLS, HLS to RGB Thresholding techniques

     Global thresholding

     multilevel thresholding

     variable thresholding

     thresholding using image statistics

     using mean and standard deviation

     using maximization of between-class variance

    Morphological filtering

     set theory

     arithmetic operations

     boolean operations

     erosion and dilation

     medial axis transform

     skeletonization

    Warping

     scaling

     rotation

     shear

     cutting and pasting

     conformal image mapping

     warping

    The Cosine Transform

     The Discrete Cosine Transform

     The Inverse Discrete Cosine Transform

     The Fast Cosine Transform Class

     Reading and Writing JPEG Images The InLine MPEG CODEC

     Compressed MPEG movies images

     decoding MPEG

     encoding MPEG

     reading MPEG files

     writing MPEG files

     displaying MPEG files

     measuring loss

    April 24, 2010 Page 4

     Syllabus Page 5

     Implementing in-line Java Decoders The Wavelet Transform

     The Discrete Wavelet Transform

     The Inverse Discrete Wavelet Transform

     The Fast Wavelet Transform Class

     Writing a wavelet encoded file

     Decoding the wavelet encoded file

     Incorporating the decoder with the data

     Distribution of wavelet images on the Net.

April 24, 2010 Page 5

Report this document

For any questions or suggestions please email
cust-service@docsford.com