Tristan-cs488-tasks

From Earlham CS Department
Revision as of 20:39, 9 December 2012 by Twright09 (talk | contribs) (Restructured page, edited last entry)
Jump to navigation Jump to search

Set of discrete tasks for Schrift (the name of the proposed handwriting recognizer). These notes and more are are kept on paper. Strikethrough tasks are done or no longer necessary, hopefully dated entries will make it clear which. This page might get a little messy.

I have a digital note page which I access and edit relatively frequently, it can be viewed here.

  • 11-26-12: I tried an openCV example that makes and highlights bounding box and bounding polygon regions, it gave me this image. Suddenly I'm on the recognition step??
  • 11-27-12: The vector that the contours are in are stored in an unusual order, if I sort them by the rectangles bottom left coordinate, a count of lines could be established and I could get the letters into their correct order. Once in order I can detect spaces easily by looking at changes between characters in the x direction. line and word segmentation are basically kaput, instead I have line and word detection.
  • 12-2-12: Messed around with line organization yesterday, didn't make much progress. Read about neural networks a lot too, I will focus on the paper more tonight and the coming days for the next draft.
  • 12-8-12: I'm finally segmenting lines. Now that the letters are in order, I am beginning work on the NN now, I found a small openCV ANN that takes the mean of two numbers, and have been playing around with that. I am uncertain the size of the neural network or how to structure the tests.
  • 12-9-12: I have a working neural network. However it does not give correct output. A lot of tweaking will need to be done, e.g. more input neurons (right now just 2, # of rows and # of cols of the letter), more training samples (<20 right now due to how I accidentally structured it from the sample OpenCV ANN code mentioned in the last post).
  • File structuring
    • just doing it, will restructure later.
  • Image importing
    • Read in jpg image
  • Text Scan
    • OpenCV image import, test threshold filter
    • Algorithm for figuring out correct threshold value. Take a mean of the page color and adjust for that value. Usually 110±10?
    • Draw box around where dark is detected, extract that selection.
  • Line segmentation
    • Decided it was not necessary to find beginning and end of line
    • General Algorithm
      • Scan from top line by line
      • Stop when line of nothing
      • create selection between line1 and line2
      • push to dynamic array as line[0]
  • Word segmentation
    • Detect Spaces
  • Character segmentation
    • openCV historgram test
  • Character recognition
    • Better character recognition, tweak the NN a lot.
    • Figure out a basic neural network
      • look atOpenCV neural network type
      • I've found some NN tutorials, the implementation of one is what's bothering me.