ECE 418 Lab 6: Introduction to Video Processing


This lab introduces you to a few basic methods for processing a video sequence. A video sequence is a set of images shown in a time sequence, and can be considered a three-dimensional signal.

You will also learn how to use MATLAB to display and process video data. This lab and the rest of the labs this semester rely almost solely on MATLAB programming (as opposed to C programming that you did in the previous labs). Similar to the previous labs, you should email your code to the TA, but instead of C source code, you'll send "m-files" containing your MATLAB functions.

You may be familiar with MATLAB since it is also used in other ECE courses. MATLAB has several advantages over C coding, including:
(+) Easy data visualization. Images, video, and plots are easy to generate using built-in functions

(+) Easy data processing. Arrays are easy to allocate, multiply, scale, concatenate, etc.

(+) Segmentation faults are not usually a problem. No more wild pointers to hunt down

(+) Widely used and supported; runs on multiple platforms
An advantage of MATLAB specific to this course is that MATLAB contains an image processing toolbox that provides many image processing functions.

MATLAB does posses a few disadvantages relative to C, including:
(-) Higher memory requirements

(-) Much slower computation, especially when doing loops

(-) Higher cost (the gcc compiler is freeware under GPL)
It may take you some time to learn several MATLAB functions; but once you learn how to use them, the video processing methods become relatively straightforward to implement.

As always, read each web page for this lab carefully.

Lab 6 p.1 - Introduction
Last edit 26-Feb-07