CSS 457 -- Multimedia and Signal Computing

Fall 2016

Prof. Michael Stiber
stiber@u.washington.edu

As computers become ubiquitous, they become more and more embedded not only in the devices we own and use but in our lives. As a result, computers become embedded in the physical world, with their primary purpose being to detect and analyze happenings in our world and to produce responses that affect that world. As computing professionals, we need to understand how computers can process information from the physical world as digital signals: multimedia (sound, images, video) and other measurements (in medical instruments, cars, cell phones, eyeglasses, etc). This is "Signal Computing". Digital signals place great demands on processing power, network bandwidth, storage capacity, I/O speed, and software design. As a result, signal computing is a great laboratory for exercising the full range of knowledge of computer science.

While there certainly may be many opportunities for you to work in signal computing, the value of this study extends far beyond. Studying signal computing and its underlying mathematics directly exercises key computer science abilities in areas like abstraction and algorithmics. As this course progresses, we take a familiar representation of digital signals or operations, reach a concept in which it is awkward or difficult to use, and then develop an alternative representation that simplifies matters. This is exactly what computing professionals do in their careers -- identify that a problem at hand can be represented by some abstraction with known properties that can be manipulated by well-understood algorithms.

The specific topics we will cover include: physical properties of multimedia source information (sound, images), devices for information capture (microphones, cameras), digitization, compression, digital media representation (JPEG, MPEG), digital signal processing, and network communication. By the end of this course, you will understand the problems and solutions facing multi/hypermedia systems development in the areas of user interfaces, information retrieval, data structures and algorithms, and communications. As a result, you should be well-prepared to work with electrical engineers in the design of advanced signal processing systems (for example, wireless communication devices or biomedical instrumentation) and multimedia computing systems.


Announcements

May 2016: We will be using Canvas for this class; I'll set up the Canvas site in late summer. Meanwhile, you can find the link to our textbook in the navigation list on the left.