Tesseract OCR 教程

NDIS herman 2355浏览 0评论
公告:“业余草”微信公众号提供免费CSDN下载服务(只下Java资源),关注业余草微信公众号,添加作者微信:xttblog,发送下载链接帮助你免费下载!
本博客日IP超过1800,PV 2600 左右,急需赞助商。
极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:xttblog,之前的微信号好友位已满,备注:返现
所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序
视频教程免费领

Tesseract 最近被开源出来了,我发现在 GitHub 上获得了很多的 star。它是一款有 C++ 编写的开源图片文字 OCR 识别软件库。本文将介绍如何使用 C++ 来调用它,从而实现图片上的文字识别。

Tesseract 被称为 OCR 引擎。Tesseract 软件包提供了一个 OCR 引擎:libtesseract 和一个命令行程序:tesseract。首席开发人员是Ray Smith。维护者是Zdenko Podobny。

Tesseract 支持Unicode(UTF-8),可以识别超过100种语言的 “开箱即用”。

Tesseract 支持各种输出格式:纯文本,hocr(html),pdf,tsv,不可见文本pdf。

在图片识别中,Tesseract 的识别率还取决于你提供的图片的质量,质量越高识别率越高!

Tesseract 可以训练识别其他语言。

Tesseract 简介

Tesseract 最初是在1985年至1994年的惠普布里斯托尔实验室和科罗拉多州格里利的惠普公司开发的,在1996年进行了一些更改以便移植到Windows,并在1998年进行了一些C ++化。2005年,Tesseract开放来源于惠普。自2006年以来,它由Google开发。

最新的稳定版本是3.05.01,于2017年6月1日发布。

安装 Tesseract

我们拥有两种方式来安装它。一种是使用它的二进制安装包,还有一种是从 GitHub 上下载它的源码,自己进行编译,然后安装。

不会的网友,可以参考这篇文章:https://github.com/tesseract-ocr/tesseract/wiki

在 Linux 上,我们可以采用 sudo 命令来进行安装。

sudo apt install tesseract-ocr
sudo apt install libtesseract-dev

或者我们也可以使用 yum 命令来进行安装。

yum-config-manager --add-repo https://download.opensuse.org/repositories/home:/Alexander_Pozdnyakov/CentOS_7/
yum update
yum install tesseract 
yum install tesseract-langpack-deu

它提供的还有 rpm 包。可以说支持各种语言,各种系统。Linux、MacOS、Linux、Android 它都能很好的支持。

在 Windows 系统中,我们可以通过这个链接进行下载相关版本的安装包。Windows 上目前有 4.0.0 和 3.5.1 两个版本可选。

Tesseract 支持的编译器是:

  • GCC 4.8及以上
  • Clang 3.4及以上版本
  • MSVC 2015,2017

其他编译器可能会工作,但没有官方支持。

运行 Tesseract

我们可以通过命令行的形式运行 Tesseract。

tesseract imagename outputbase [-l lang] [--oem ocrenginemode] [--psm pagesegmode] [configfiles...]

我们也可以使用 tesseract –help 或 man tesseract 掌握它的命令行的具体用法。

开发人员可以使用libtesseract C或C ++ API来构建自己的应用程序。

下面看一个 C++ 使用 Tesseract 的例子:

#include "gtest/gtest.h"

TEST(TesseractTest, FirstDummyTestForTesseract) {
    ASSERT_TRUE(1);
}

int main(int argc, char **argv) {
  ::testing::InitGoogleTest(&argc, argv);
  return RUN_ALL_TESTS();
}

我们也可以在 tesseract 文件夹中执行以下操作,来进行一些简单的测试。

autoreconf -fiv
git submodule update --init
export TESSDATA_PREFIX=/prefix/to/path/to/tessdata
make check

好了,更多的语言调用和用法,请参考官方文档

业余草公众号

最后,欢迎关注我的个人微信公众号:业余草(yyucao)!可加QQ1群:135430763(2000人群已满),QQ2群:454796847(已满),QQ3群:187424846(已满)。QQ群进群密码:xttblog,想加微信群的朋友,之前的微信号好友已满,请加博主新的微信号:xttblog,备注:“xttblog”,添加博主微信拉你进群。备注错误不会同意好友申请。再次感谢您的关注!后续有精彩内容会第一时间发给您!原创文章投稿请发送至532009913@qq.com邮箱。商务合作可添加助理微信进行沟通!

本文原文出处:业余草: » Tesseract OCR 教程