How does PaddleOCR performance compare to Tesseract?

Viewed 3968

I recently came across PaddleOCR and am wondering, how this OCR system compares to Tesseract. Is there any data or benchmarks available?

5 Answers

I have been using both in some research for almost a year. I can say that each has its own perfect use.

PaddleOCR PROs:

  1. If the text is rotated in non-90-degree rotations, PaddleOCR can still detect some text correctly, but Tesseract cannot do this even if OSD is used.
  2. You can use the detection results to fix the rotation, but Tesseract is likely to retrieve non-sense results.
  3. PaddleOCR works better than Tesseract when images in RGB/BGR if you can't binarize your image.

Tesseract PROs:

  1. PaddleOCR has serious problems with detecting spaces even after manipulating the parameters, but they are working on fixing this in the next upgrade. Tesseract doesn't have significant spaces problems.
  2. Tesseract is better in terms of processing scanned documents.
  3. Image segmentation modes are to the rescue and help a lot with improving the results.
  4. Tesseract results on binarized images with long text are usually better than PaddleOCR.
  5. Tesseract is far better at detecting symbols.
  6. Tesseract is faster on CPU.

In short, using Tesseract would be perfect for scanned documents and PaddleOCR for general computer vision projects.

I found a comparison between PaddleOCR 2 and Tesseract 4, but only for English texts. Briefly summarized:

  1. PaddleOCR is slightly slower than Tesseract on CPUs, but with GPU support it beats Tesseract by 46% on a standard-GPU.
  2. Without post-processing, PaddleOCR mainly makes mistakes with missing white spaces between words and punctuation symbols. However, these errors can be easily corrected. After postprocessing the accuracy is comparable to Tesseract (1% less).
  3. The pre-trained model for English has only 10% of the file size of Tesseracts English train data (2MB vs 23MB).

For Chinese texts, which seem to be the main priortiy of PaddleOCR at the moment, the situation could be different.

I tested English and Japanese with them but interestingly PaddleOCR seems to recognize both of them better than Tesseract. PaddleOCR's text detection also seems better. However according to their posts, PaddleOCR cannot handle spaces very well and there are complaints from non Chinese (or Japanese) users. PaddleOCR is very eager in incorporating the latest recognition/detection algorithms published as research papers, for which I have decided to use PaddleOCR.

I have used Tesseract for a moment, but it suffers from accuracy, for example the number 4 is recognized as A, 1 as ], 8 as & and so on,

Now i switch to paddleOCR, it has a great recognizing level when using the good detection/classification and recognition models.

the same images passed to Tesseract are used with paddleOCR, they are recognized correctly 100% by paddleOCR.

using boxes make very simple the information processing, we can use boxes also with Tesseract, but the are by word basis, not by phrase basis as in paddleOCR, so PaddleOCR is very simple in this point

I'm very happy about paddleOCR results, but still some little issues with spaces management, sometimes a line is splited in two lines because of an additional space. but i think this could be fixed in the post processing stage.

Recently PaddleOCR updated the v3 version, and the English space problem has been significantly improved. I tried the English model, it works very well.

In document scenarios, PaddleOCR can achieve 95%+ accuracy. But Tesseract may be confused on some rhythmic characters.

In particular, PaddleOCR's performance in some non-Latin languages ​​is beyond my imagination. For example Arabic, the effect is far better than EasyOCR and Tesseract

Highly recommend PaddleOCR!!!

Related