Live data from Hacker News

Show HN: Interactive, Visual Explanation of the GRAIL Handwriting Recognizer

jackschaedler.github.io

11–20 of 20 posts

Re: Show HN: Interactive, Visual Explanation of the GRAIL Handwriting Recognizer

#11

Nice demo. I've never been able to get it to recognise B, no matter how I draw it.

Same thing for me on O. I tried clockwise, counter clockwise both failed. Then I tried starting from top instead of bottom. Don't people start from bottom? It should be easier to align.

I start many of my letters from the bottom, and everyone tells me I write opposite-handed. This recognizer definitely had problems with the way I would naturally write a lot of the letters...

Re: Show HN: Interactive, Visual Explanation of the GRAIL Handwriting Recognizer

#12
It could be worth mentioning that, for thinning points, ideally you'd use a circle, so that points are thinned equally in all directions. When you use a square, diagonal lines are thinned more (by a factor of sqrt(2)) than horizontal/vertical lines. However, checking inclusion within a axis-aligned square requires only comparisons/subtractions, but checking inclusion within a circle requires square roots and squares... certainly a big deal back then.

Re: Show HN: Interactive, Visual Explanation of the GRAIL Handwriting Recognizer

#14

It could be worth mentioning that, for thinning points, ideally you'd use a circle, so that points are thinned equally in all directions. When you use a square, diagonal lines are thinned more (by a factor of sqrt(2)) than horizontal/vertical lines. However, checking inclusion within a axis-aligned square requires only comparisons/subtractions, but checking inclusion within a circle requires square roots and squares.…

This is a great point. When I first implemented the visualization, I actually used a circle until someone pointed out to me that the formula describes a square region around the datapoint and not a circle. I think you are very right in saying that this decision was made by Groner solely for efficiencies' sake in 1966. I'll probably add a side-note to explain this a bit.

Re: Show HN: Interactive, Visual Explanation of the GRAIL Handwriting Recognizer

#15

Nice demo. I've never been able to get it to recognise B, no matter how I draw it.

Same thing for me on O. I tried clockwise, counter clockwise both failed. Then I tried starting from top instead of bottom. Don't people start from bottom? It should be easier to align.

Oh goodness, haha. Doing this project I've learned that there is a great deal of variety in handwriting style. Single-stroke vs. Multi-stroke 5 for example, seems to be a big point of contention. I'll extend the decision tree to be more friendly about bottom-starting strokes.

Re: Show HN: Interactive, Visual Explanation of the GRAIL Handwriting Recognizer

#16
This looks 99% identical to what Palm developed as Graffiti. Graffiti ran nicely on a 16MHz (later 33MHz) 68030ish microprocessor with 512KB of RAM and a 160x160 LCD display with a resistive touchscreen.

I think that I'm faster on an Android soft-keyboard with prediction and sliding, but not by very much.

Re: Show HN: Interactive, Visual Explanation of the GRAIL Handwriting Recognizer

#17
Thanks for this wonderful essay! I love learning about that period in computing, when a lot of what we use today was first challenged. It's easy to see how those same principles apply to the GRaIL visual programming interface demo[1], where different strokes create different types of elements (boxes, outputs, connections, ...).

[1]: https://www.youtube.com/watch?v=QQhVQ1UG6aM

Re: Show HN: Interactive, Visual Explanation of the GRAIL Handwriting Recognizer

#18
It reminds me of the Palm handwriting recognition system. I liked there was no pretensions of natural handwriting recognition on the Palm. The awkward way you had to draw letters with the stylus was part of the UI, so little stroke order hints were displayed on the screen while you were writing. It made for a fairly efficient input system after a bit of practice, like txting on old phones.

I assume the Palm system worked on similar principles to GRAIL.

Post reply on HN