Image Processing

Image Processing is an extremely interesting subject as I am sure you will agree when you start to write software to perform image processing techinques on images that you have taken or obtained from other sources. I think that one of its appeals is that it appears to be very difficult so it gives a great sense of achievement when you translate an image processing technique into software. Another appeal is that it is visual and immediate - you can soon see the fruits of your labour.

This website contains tutorials for creating image processing software using C#. C# was chosen because it is popular, free to download, well documented and easy to use. If you are familiar with another language, you will be able to modify the code examples given in the tutorials.

I have written the tutorials with a emphasis on the practical. You will receive maximum benefit if you create the programs described (or at least carefully examine the source code). The examples are given for Microsoft C# Express which is available for free download from Microsoft. You will see that image processing is not as hard as it appears (at least for the foundation material). With the examples, you will soon be writing software to process greyscale images. After you have finished them you will be in a position to obtain a book on image processing and one on a programming language and take yourself further into this immensely interesting and vast subject.

Image affected by noise.

Noisy image cleaned with 3x3 median filter.

Image of some coins.

Edge detection by gradient filter and threshold.