Computer Science
 

Interactive Graphics and Image Processing

Interactive Graphics and Image Processing
Introduces basic concepts of computer graphics and image processing. Includes characteristics of physical cameras and displays; color models; basic image processing algorithms: 2D and 3D homogeneous coordinate transformations; fundamentals of 3D rendering geometry; lighting and shading: image warping and texture mapping; and frequency-domain processing.
C S
355
 Hours3.0 Credit, 3.0 Lecture, 0.0 Lab
 PrerequisitesC S 240 & MATH 313; or C S 240 & MATH 213 & MATH 215
 NoteStudents are allowed 1 repeat of each C S undergraduate course (all 100-, 200-, 300- or 400-level courses). This includes all students who received any grade including those who withdraw (receive a "W" grade) from a C S course. Students must wait 1 semester/term before being allowed to take a course they have failed twice. Petitions for exceptions to the policy can be completed at cs.byu.edu/undergraduate-handbook/retake-policy-cs-courses/.
 TaughtFall, Winter
 ProgramsContaining C S 355
Course Outcomes: 

Mathematics and Geometry

Use and implement the fundamental mathematical concepts underlying these areas, including

  • Points, vectors, and matrices
  • Other basic principles of linear algebra
  • Geometric transformations as matrices
  • Methods for working with numeric data

Graphical User Interfaces

Use and implement concepts of current graphical user interfaces (which you should have seen before), including

  • Model-view-controller architecture
  • Event handling
  • Screen management

2D Drawing, Viewing, and Selection

Use and implement the following concepts for 2D drawing, viewing, and selection:

  • Geometry of simple shapes
  • 2D Transformations
  • Transformation composition

3D Rendering Geometry

Understand and implement the fundamental geometry involved in 3-D perspective rendering, including

  • Use rendering libraries such as OpenGL to do simple rendering
  • Implement the geometric transformations used in 3D rendering
  • Identify basic techniques for shading and their advantages and limitations

Basic Image Processing

Understand and implement fundamental image processing operations, including

  • Point operations (brightness, contrast, etc.)
  • Image-Image operations (differencing, alpha blending, etc.)
  • Neighborhood operations (noise removal, edge detection, etc.)

Geometric Operations on Images

Understand and implement image warping using a backwards-mapping approach

Color

Understandand use the language and principles of common color models