Live data from Hacker News

Ask HN: OCR for 100 year old (German) handwritten cursive script?

news.ycombinator.com

1–10 of 45 posts

Ask HN: OCR for 100 year old (German) handwritten cursive script?

#1
I'm looking for an OCR solution for about 200 pages of text. It's handwritten German script from about 100 years old and I can barely read the handwriting myself. Google Translate sometimes manages to OCR certain parts, but nothing useful (I don't need the translation part of GT). Which solutions out there would be able to recognize old handwritten script?

Re: Ask HN: OCR for 100 year old (German) handwritten cursive script?

#3
You can train Tesseract to recognize Handwriting[1], but the first and most important step would be the preprocessing of your documents. I would recommend to start with a local adaptive thresholding algorithm[2] like Sauvola for binarization. The preprocessing steps would be[3]

  1) Binarization
  2) Skew Correction
  3) Noise Removal
  4) Thinning and Skeletonization
Probably you are facing "Sütterlin"[4], which differs quite a bit from modern german handwriting.

In your case (only 200 pages) it might be easier to use template matching[5] to identify similar characters and just "transliterate" matches into modern printed letters (like an overlay over the original text). This way you would have a quick solution while still being accurate enough to just read it.

[1]: https://tesseract-ocr.github.io/tessdoc/#training-for-tesser...

[2]: https://brandonmpetty.github.io/Doxa/WebAssembly/

[3]: https://towardsdatascience.com/pre-processing-in-ocr-fc231c6...

[4]: https://de.wikipedia.org/wiki/S%C3%BCtterlinschrift

[5]: https://docs.opencv.org/3.4/d4/dc6/tutorial_py_template_matc...

Re: Ask HN: OCR for 100 year old (German) handwritten cursive script?

#5

You could try something like https://aws.amazon.com/textract/ or https://cloud.google.com/vision/docs/handwriting . Both have support for modern handwriting. I don't know if it will work with a script written a century ago though.

if it's https://en.wikipedia.org/wiki/Sütterlin I doubt anything trained on current script would make any more sense of it than we do
Post reply on HN