How to match a drawn Chinese character to a database of stroke animations?

How to match a drawn Chinese character to a database of stroke animations

  • I have a database of Chinese character stroke animations. Each entry is basically a set of points which shows how and in which order a character should be drawn. To make lookup easier, I would like to allow the user to manually draw a character with the mouse, then my software would propose some possible matches (like it's done on the iPhone). I searched on Google but didn't find anything relevant. I'd like to know what algorithms or research paper I need to look at. I guess it has something to do with shape recognition, except that the order in which the shape (Chinese character) is drawn is also relevant. Any suggestion?

  • Answer:

    You were looking for scholarly articles, I am surprised you did not find anything. Here's what a quick search through Google Scholar with keywords path stroke recognition and handwriting stroke recognition got me: http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=824821: Looks like a good place to start. An explanation of digital handwriting representation, and handwriting recognition techniques (with and without the trajectory data of the stroke) Does not deal specifically with Chinese characters, but I think it might be applicable. http://www.sciencedirect.com/science/article/pii/0031320382900322: It looks quite old, but is dealing with stroke segmentation, or to quote "a way of breaking down a character to a set of consecutive partial strokes". It is the reverse of what you want (you said you already have info about strokes), but maybe understanding the stroke representation might help you get on the right way. http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=479986&tag=1: Again, not Chinese characters, but mathematical (which is still more "exotic" than regular text). Nice because it proposed a technique based on probabilities. http://www.sciencedirect.com/science/article/pii/S0031320300001655: I think the title says it all. Looks like exactly what you want, and promises promising results. One more thing to add: The most recent reference in the above bunch is as old as 2000. That indicates that what you want to do is probably a well-researched area, with tried out state-of-the-art techniques. It should not have been hard to look for reference material. Just to clarify, I did not actually read any of these articles. I just did my usual preliminary research step: go to article databases (google scholar, mendeley, ieeexplore...), type in a few keywords. Open the ones with promising titles, close one with completely uninteresting abstracts. Read the remaining abstracts more carefully, and select the ones that seem relevant. Having said this, not all the articles I proposed might be relevant, but judging from experience, they most probably are. I hope this helps. Also, if you have done any research in the meantime, please edit it in your question and share with the community. It looks like an interesting topic.

this.lau_ at Signal Processing Visit the source

Was this solution helpful to you?

Other answers

You should use a neural network, that's what is used for optical character recognition, I'm sure you can find a lot of ressources about it on Google. To take into account the order of the lines, you can use not just the final image but also the intermediate images after each stroke.

Thomash

Related Q & A:

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.