1

Things are like this:

S

T

I have some graphs like the pictures above and I am trying to classify them to different kinds so the shape of a character can be recognized, and here is what I've done:

I apply a 2-D FFT to the graphs, so I can get the spectral analysis of these graphs. And here are some result:

resultS

S after 2-D FFT

resultT

T after 2-D FFT

I have found that the same letter share the same pattern of magnitude graph after FFT, and I want to use this feature to cluster these letters. But there is a problem: I want the features of interested can be presented in a 2-D plane, i.e in the form of (x,y), but the features here is actually a graph, with about 600*400 element, and I know the only thing I am interested is the shape of the graph(S is a dot in the middle, and T is like a cross). So what can I do to reduce the dimension of the magnitude graph?

I am not sure I am clear about my question here, but thanks in advance.

Community
  • 1
  • 1
Bob Fang
  • 6,963
  • 10
  • 39
  • 72
  • 1
    Eh, I don't think you'll get far with the FFT. The best thing off the top of my head for detecting characters would be to use an ANN. I'd maybe segment the image to separate the letters and then input them to an ANN. – JustinBlaber Apr 08 '13 at 15:32
  • @jucestain can shape context features with a powerful classifier give a decent result? What do you think? – Autonomous Apr 08 '13 at 22:30

1 Answers1

1

You can use dimensionality reduction methods such as

  • k-means clustering
  • SVM
  • PCA
  • MDS

Each of these methods can take 2-dimensional arrays, and work out the best coordinate frame to distinguish / represent etc your letters. One way to start would be reducing your 240000 dimensional space to a 26-dimensional space using any of these methods. This would give you an 'amplitude' for each of the possible letters.

But as @jucestain says, a network classifiers are great for letter recognition.

Sanjay Manohar
  • 6,920
  • 3
  • 35
  • 58