Image Processing : Basics

Technovanza ’09 ( my college technical festival) has an event on image processing.

What is image processing ??

Well, imagine this : There are two dice. You roll one. The webcam reads it. You write a program that reads what you’ve thrown, then a robotic arm controlled by that program turns the other die so that the sum of numbers on both of themis 7 (Why 7 ?? Try to figure it out yourself)
Well, that would be very,very tough indeed. The event I am talking about does not need all that (sigh of relief !!)

All we have to do is read the numbers on two dice and print their sum on the computer screen. Simple ? Think again.

This would encompass the following skills:
1. Knowledge of how images as perceived by a camera and a computer
2. A manipulative brain 😉
3. Programming skills

Its not easy, and its definitely not short. Too much to explain in one go.I’ll try and explain all that I learn along the way.

Images are perceived by a computer in units of pixels. The image processing software (MATLAB) stores information about these pixels as a multi-dimensional array. The array is represented as (a X b X c) where a is the x-co-ordinate of the pixel on the screen, b is the y-co-ordinate and c is usually 3.

Why 3 ? Because the coloured image is broken up into three constituent colours : Red Green and Blue. Every colour is a mixture of these three in different proportions. So the ‘3’ in the array consists of three numbers for each pixel, which signify the amount of Red,Green and Blue.
The amount of each colour component is signified by a number between 0 and 255, 0 signifying absence of that colour and 255 signifying the maximum possible. For white the RGB value will be (255,255,255) and for black will be (0,0,0). One useful piece of information is that there are only 8 colours possible if the values of the components are either 0 or 255. Also, a very basic approach when analysing images would be to change the colour of the part we are interested in to black and the rest into white, or vice versa.

Here’s an image I worked upon :

Here’s the finished image :

The patchy red part on the right is because the white tiles whould have become black along with the white dots on the die, leading to undesired results.

I think this is all one needs to know before starting programming. However, I will edit this post if and when there is need.

I will discuss the further part, mostly programming, in further posts. Programming and processing will be done using MATLAB.

For theory on colours in digital systems, visit Wiki. Read up the terms chroma and luma.

Links :

1. TUDelft Website

2. Image processing tutorial by Nex Robotics

Jaago Re !!

Elections are scheduled to be held early next year and the voter registration drive has already begun. But as is the case with most of government affairs, we get stuck into a lot of red tape and keep running from pillar to post for forms,documents,formalities, etc..

Well, NO MORE !!

Jaago Re ! is an awareness drive for facilitating easy registration of voters. Its very easy to use. You just fill up a form and you get a PDF file to print out. You sign the printed form at the designated places and submit it to the ERO of your area. Its that easy !! They help you with everything from the documents required to the office where you have to go and submit the forms. Once you have submitted the form, you can simply send an sms as directed and they will even track the status of the application for you. Voting registrattion has never been this easy !
Besides, the entire process and all other questions are addressed there.

So, I hope all of you who are above 18 years of age please visit this website and go and register to vote.

This is our chance to make a difference !!