I was watching a video on how they made Watson (the robot that was on jeopardy), and another one where a person made a simulation where triangles (animals) learned when to get food, and such, and then taught their offsprings, and then they learned more, and then the intelligence developed.

I was wondering how they did this.

I want to currently make a program that recognizes a letter lets say 'y' for example.

How could you do this.

make a program figure out what a general 'y' looks like by analyzing thousands of images and then when you show it a new 'y' it can tell you that it is a 'y'

Thanks for your help.

and how will you 'show' this image to your application? will it be typed, will it be read as a .jpg, will you type a 'y' or use your keyboard to create the form of a 'y' using '-', '/', ..., will you 'show' it using a webcam?

I was going to scan it in, and then store it in a picture type, and then link the program to it. then it can analyze and store the data, and then it wouldn't need to see the picture any more. Then when it analyses, a thousand 'y' then it will be able to figure out what a 'y' looks like, and then if I show it a new 'y' it will be able to recognize it.

I'm not sure about that. unless you're talking about quite a self-learning AI, your code will not learn what an Y looks. it will just check it's database with references whether the image it encounters is exactly the same as one already stored in its memory.

otherwise, you would have to check pixel by pixel, for variation, you would have to keep in mind that size is not the only way a letter can change, the next user might want to use another font, ...

If you provide the user with a number of images he may use as input, that wouldn't be too difficult, but if you create an image your application hasn't come into contact yet, it won't be able to tell you anything, except whether it is a .jpg file or not (for instance)

The video I watched the program created an algorithm for a 'y' and when they gave it another image it changed the algorithm to encompass both 'y' pictures. then as you showed thousands of pictures the 'y' algorithm became more complex, and then when you showed it a new picture it was able to use the algorithm to figure out the letter.

Here is the video if you wish to watch it.

You probably want to look into machine learning. What you want to do isn't easy without a strong background in statistics, so I would also recommend looking into that. Basically one way this algorithm could work is through building a complex Bayesian network that links changes in color and relation between pixels to shapes. That is not easy to do, but with enough research you should be able to do it.

Google OCR -Optical character recognition that is the area of computing that deals with image recognition.

@sirlink99 May be your idea is not to create a captcha identification program , but your requirements remind me the same funtionality .
Till now i dont think there is any program which has 100% success rate in identifying the captcha. Atleast not 50%. But OCR is far different from and easier to build one than captcha.
But i think you cannot meet your requirements with OCR.