Saint Norbert College

2012 Senior Capstone Project

 


TEXT RECOGNITION

by HanQin(Caesar) Cai
 

Home My Project Journal Documents About Me

 

 

 

 

 

 

Journal

 

 

 

-------------------------------------------------------------------------------------------------

Week Fifteen ( May.6th - May.8th)

Finally, we are done. Just package everything together now, and finishing up the documents. Also, I will burn the CD, and print everything out colorfully. Congratulations to everyone, we are done.

 

 

 

 

-------------------------------------------------------------------------------------------------

Week Fourteen ( Apr.29th - May.5th)

This week, I am finishing up the progress bar, help page, user hints, documents, and fix up many small problems. No more major changes this week. I also got a chance to sit down with Dr. McVey, she helped me solve the screen flashing problem. Thank you, Dr. McVey. I also tried to run my program on Carleton College’s picture, but the pictures they put on the website are low resolution versions, so the result is not perfect, but still good. I included their pictures in my sample pictures.

 

 

 

-------------------------------------------------------------------------------------------------

Week Thirteen ( Apr.22nd - Apr.28th)

The defense goes very well, not as much difficult as I thought. Dr. Pankratz gave me some suggestion on color picker, he suggested use the average color of the block around the point instead of just one point. This is not hard to code; however, I found this method does not work well with slim text fonts. So, I decided to keep my old method.

 

 

-------------------------------------------------------------------------------------------------

Week Twelve ( Apr.15th - Apr.21st)

The presentation goes well, I do appreciate every audience. I got many good suggestions from the classmates and professors after the presentation, so I am going to try to achieve those good suggestions this week. Besides that, I am also preparing the defense. I have never had a defense before, it is nervous and exciting to do something new. By the way, I solved the denoising functions this week by using an online resource.

 

 

-------------------------------------------------------------------------------------------------

Week Eleven ( Apr.8th - Apr.14th)

This week is busy. I am working on the PowerPoint and preparing the presentation. I need to put everything that works together to make a working example, so I can show it in my presentation. It is mess when the different parts are put together, global or local variables, hot to pass the parameters etc. And, I cannot make denoising function work at this moment.

 

 

-------------------------------------------------------------------------------------------------

Week Ten ( Apr.1st - Apr.7th)

Working on color picking and binarization, also try to figure out the screen flashing problem while drawing a box on the picture. The color picking and binarization are not too difficult, just need to be patience. After a couple tries, I got this part near perfect. But, I cannot figure the flashing screen problem.

 

 

-------------------------------------------------------------------------------------------------

Week Nine ( Mar. 25th - Mar. 31st)

I was working on the picture part. I chose to let the user drop a box to tell the program where the text is, and then let the user use the mouse to pick the color of the text. After that, set the text color to be black and all the rest to be white. Now the colorful picture is transferred to a black and white text picture, and I can apply the pervious algorithm on it. Some issues I may get: the picture was took with an angle, so the shape of the text changed; the colors of the text was changed too much because of the sunshine or flashlight; when the text is too tiny, the user can have a difficult time to required operates.

 

 

 

-------------------------------------------------------------------------------------------------

Week Eight ( Mar. 18th - Mar. 24th)

I keep working on the program. I let the text part be what it is right now, and start to build the part for pictures. Now, I am thinking what the design I want to use. As I presented in the walk through, I have three different design schemes, I am trying to figure out which one will work better and easier used.

 

 

-------------------------------------------------------------------------------------------------

Week Seven ( Mar. 11th - Mar. 17th)

I was working on denoising the text pictures this week. I tried a couple common denoising algorithms, but most of them are designed for the text with specific size. When the size of the text does not match the expectation, the algorithms can be awful. It can delete the dot on “i” and “j” by mistake, it can also ignore some bigger noise sometimes. I should talk with my classmates who have denoising experience.

 

 

 

-------------------------------------------------------------------------------------------------

Week Six ( Mar. 4th - Mar. 10th)

Working on the program, try to make the recognition more accurate. Mostly, I am focusing on how to cut the lines, words and chars correct, for identifying the chars, I am using the Tesseract engine, which is open source and maintained by Google, for now because mine is not working so far. I am also preparing the walk through, I am thinking about using a PowerPoint.

 

 

 

 

-------------------------------------------------------------------------------------------------

Week Five ( Feb. 26th - Mar. 3rd)

The OCR engine works good on .NET Framework 3.5; however, I got a big problem when I tried to load the .dll file on .NET Framework 4. An error shows up, "Mixed mode assembly is built against version 'v2.0.50727' of the runtime and cannot be loaded in the 4.0 runtime without additional configuration information." I spent a couple hours on this problem and finally figure it out by adding a configuration file.

 

 

 

 

-------------------------------------------------------------------------------------------------

Week Four ( Feb. 19th - Feb. 25th)

Just programming and preparing the walk through this week. I checked many online resources, but most of them are not very helpful. The algorithm is the most difficult part of this program. The program is still in a very ugly interface so far, and did not work very well by Friday, Feb.24th. I am going to improve it more over the weekend. Hopefully, it will work better by Monday's walk through.

 

 

 

 

-------------------------------------------------------------------------------------------------

Week Three ( Feb. 12th - Feb. 18th)

The week, I tested three algorithms of Text Recognition that I found from internet (http://cs.carleton.edu/cs_comps/1011/text_recognition/index.php). Basically, these algorithms work fine for simple black and white pictures that contain one or a couple words. But, for more complex pictures, in terms of color and font, they may have a hard time sometimes. I want to try out if I can improve a better algorithm based on those three. This job will be difficult; if I cannot make a better one, I may take advantages of the three algorithms to minimize the errors.

 

 

 

-------------------------------------------------------------------------------------------------

Week Two ( Feb. 5th - Feb. 11th)

This week, I fixed some small problems of the website; Figured out the reference problem and the SNC logo problem. I also made the time table for this project, it is put in "My Project" page. I am starting to study the algorithms, they are not easy. My plan for the first step is that using a basic picture loader from previous lab to try out the algorithms.

 

 

 

 

-------------------------------------------------------------------------------------------------

Week One ( Jan. 26th - Feb. 4th)

The biggest thing I done this week was building this website; I spent a couple hours to pick the html up. And, I also did some preliminary online research about the Text Recognition. So far, I just have some general ideas about what I am going to do, but I need study more about the algorithms to get a better understanding. The last thing, for a better user interface, I decided to use C# as my programming language for this project.

 

 

 

 

 

Home   l  My Project   l  Journal   l  Documents   l  About Me

Made by Caesar Cai, Feb. 1st 2012.