Announcements
- WELCOME: Welcome to this module. Below is short introduction about the content, mode of presentation and evaluation. I do hope that you will enjoy it and find it useful.
- MATLAB APP FOR DESIGNING A BAND-REJECT FILTER: Under the [DOWNLOAD] tab, you will find the MATLAB code for an app that helps you to design a band-reject filter. Its name is DIGIFILTER.
- MATHEMATICA NOTEBOOK FILES: The class demos using MATHEMATICA are stored in 'notebook' files (extension is .nb). I will convert them to PDF's and post them on this web site. Click on the tab [DEMO FILES] above.
Introduction
This module is an introduction to digital image processing. The techniques that will be covered are: intensity transformation, image enhancement (both in the spacial and in the frequency domain), image restoration, color models, and morphological image filters.
The mathematical aspects of Fourier analysis will also be revised before frequency based image enhancement is done.
TO TOP
Handbook
The handbook is
Digitial Image Processing, 4th Edition R.C. Gonzalez & R.E. Woods, Pearson Publishing.
The second edition or the third edition will also be fine (page numbers may differ, but otherwise the contents are essentially the same).
You may buy a copy (paper copy or e-version, your choice) at
https://www.pearson.com/us/higher-education/program/Gonzalez-Digital-Image-Processing-4th-Edition/PGM241219.html? or at any other online bookseller that has it in stock.
TO TOP
Assessment
This module is evaluated according to the flexible evaluation model.
There are no tests.
You will be required to do six assignments and hand them in. The marks obtained for these assignments will contribute 100% to your final pass mark. Assignments will be weighted differently (according to the volume of work contained in the assignment). The assignments on Color processing and Restoration count 10% each. The other four assignments count 20% each.
TO TOP
Contents
The table below lists the sections from Gonzalez and Woods (Edition 3) that will be covered. However, for your own background, you should also read Chapters 1 and 2.
Content (Section numbers in GONZALES and WOODS) |
|
|
|
|
|
|
|
TO TOP
What you must do
This module requires a fair amount of self study.
It is required of you to read the relevant sections in GONZALES and WOODS thoroughly, and to make sure you understand it. There are problems at the end of each chapter. I will in due course suggest some problems for you to do. (It is unnecessary to attempt to do all the problems - that is probably too much.)
There will be two in-person lectures per week. I will also post some previously recorded screen-casts on this web site highlighting the most important aspects of each chapter or explaining some of the more difficult concepts. Please watch these screen-casts if you find them useful. Neither class attendance nor screen-cast watching is compulsory --- you decide.
Do the assignments and submit them by the due date.
Assignments
The assignments will consist of image related problems that must be solved by programming algorithms and/or procedures. You may use any programming language of your choice, though the two platforms that have been used mostly by past students were MATLAB and PYTHON. (I will use only MATLAB in all demonstrations.)
Each assignment must be handed in as a printable report that discusses the problem and its solution and that shows the results (as figures) inside the report. It must use full sentences and good linguistic style. The code that was used to generate the solution, must also be appended.
The list of assignments and their due dates are here.
TO TOP
Demo Files
MATHEMATICA notebook files of demonstrations done in class are available here.
Date | |
Notebook file as PDF |
Wed 9 Mar 2022 | PMathNotebook01.pdf | |
TO TOP
Additional Notes to download
- IP: An Introduction
- IP: Fourier Analysis, Fourier Series
- IP: Fourier Analysis, Continuous Transforms
- OLD NOTES ON Discrete FT (For those who understand Afrikaans, here are some old notes on the DFT.)
TO TOP
Download
- MATLAB code for colour cube: CUBEprint.txt CUBEface.txt
Paste both MATLAB script files to the same dir., and execute CUBEprint. Print out on a colour printer, fold and glue.
- MATLAB code for DIGIFILTER: DIGIFILTER.m
DIGIFILTER_circ
DIGIFILTER_circR
DIGIFILTER_clear
DIGIFILTER_display
DIGIFILTER_invert
DIGIFILTER_patch
DIGIFILTER_showtoggle
DIGIFILTER_sym
Paste these nine MATLAB script files to the same dir., make sure that your Fourier-transformed image is in the matrix 'At', and execute DIGIFILTER. Use the buttons to select various modes of drawing for making patches or circles on the FT. At any stage, the filter you have designed will be in the matrix 'MASK'.
PAGES FROM WIKIPEDIA
- From WIKI: Wiener Deconvolution
- From WIKI: The Hit-Miss Transform