很难受,由于这两天重装了系统,又得重新配置环境了,而我在安装tesserocr的时候踩了一些坑,于是想写出来分享一下。

一.安装tesseract

要安装tesserocr,首先要下载tesseract,它是给tesserocr提供支持的。下载地址为:https://digi.bib.uni-mannheim.de/tesseract/

打开之后可以看到有很多文件,带dev的为开发版本,不带dev的为稳定版本,我们选择下载不带dev的版本,比如最新的这个:tesseract-ocr-w64-setup-v4.1.0.20190314.exe。下载完成之后运行安装,一直点击next,直到出现如下页面:

在Additional language data中包含了OCR支持识别的各国语言包,可以根据情况选择,我这里就选择了中文的:

之后的过程就不用赘述了,这里因为我只选择了中文语言包,所以下载起来还是很快的。

二.安装tesserocr

使用pip install tesserocr进行安装。我在安装的时候碰到了下面这个问题:

解决办法

1)下载对应版本的whl包进行安装,下载地址:https://github.com/simonflueckiger/tesserocr-windows_build/releases

比如我的Python版本是3.7,电脑是Windows64位,所以我下载的是:tesserocr-2.4.0-cp37-cp37m-win_amd64.whl。下载完之后使用pip进行安装:

2)安装Visual Studio,比如VS2017。这个怎么说呢,虽然它里面包含了很多包,安装起来也很简单,但是如果你想卸载就很蛋疼了,而且这个软件会占用C盘几个G的空间,所以我个人是不推荐使用这个办法的。

三.配置环境变量

首先找到你tesseract安装的目录位置,比如E:\Tesseract-OCR,然后将该路径添加到环境变量path中:

之后新建一个系统变量TESSDATA_PREFIX,对应的值为:E:\Tesseract-OCR\tessdata:

四.运行示例

下面是一个简单的示例,使用的图片为:

代码很简单,如下:

 import tesserocr
from PIL import Image img = Image.open("test.jpg")
print(tesserocr.image_to_text(img))

在第一次运行的时候可能会出现下面这个错误:

RuntimeError: Failed to init API, possibly an invalid tessdata path: E:\Python\/tessdata/

解决办法:将tesseract安装目录下的tessdata文件夹复制到你的Python安装目录下。

最终运行结果为:@ python’

我们可以看到tesserocr在不处理图片直接使用的情况下,识别的效果其实是比较差的,如果我们想要提高OCR识别的准确度,可以进行相应的识别训练。

Windows下安装tesserocr的更多相关文章

  1. 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一)

    相关连接导航 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一) 执行 $Gulp 时发生了什么 —— 基于 Gulp 的前端集成解决方案(二) 常用 Gulp 插件汇总 ...

  2. Windows 下安装 MongoDB

    Windows 下安装 MongoDB 的步骤:1.官网www.mongodb.com下载安装包或zip包2.解压下载的文件到文件夹 D:\mongo .3.使用管理员权限打开CMD,导航到目录 D: ...

  3. Coreseek Windows下安装调试

    由于项目需要全文检索,后面就去网上查了下资料,找到了Sphinx[中文是狮身人面像]这个全文检索引擎,听说挺好用的,不过没有中文分词.后面又去找了一下,找到了Coreseek,一款中文全文检索/搜索软 ...

  4. 从零开始学 Java - Windows 下安装 Tomcat

    谁都想分一杯羹 没有一个人是真正的无私到伟大的,我们试着说着做自己,与人为善,世界和平!殊不知,他们的真实目的当你知道后,你会被恶心到直摇头并下意识地迅速跑开,下辈子都不想见到他.不过,他没错,你也没 ...

  5. 从零开始学 Java - Windows 下安装 JDK

    关于未来 "我要死在火星.在我死去的时候能够想着人类能有一个美好的未来--有可持续的能源,同时能够殖民其他的星球来避免人类灭绝的最坏可能." 官网下载 直接打开官网:http:// ...

  6. windows下安装nginx

    说起开发,自己感到非常惭愧,由于公司让我给<绿电侠>项目写整体架构解决方案,才开始接触nginx这个东东,突然觉得它是一把非常好的利器. 本文主要记录在windows下安装nginx,另参 ...

  7. Redhat/Ubuntu/Windows下安装Docker

    Redhat/Ubuntu/Windows下安装Docker 什么是Docker Docker是Docker.inc公司开源的一个基于LXC技术之上构建的Container容器引擎,基于Go语言并遵从 ...

  8. Windows下安装Redis

    1.首先,Redis官方是支持Linux系统的,我这里不多说,需要的可以参考:http://www.oschina.net/question/12_18065/ 2.Windows 64位下载地址:h ...

  9. 【转】linux和windows下安装python集成开发环境及其python包

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

随机推荐

  1. manifold tangent classifier

    The Manifold Tangent Classifier (MTC) Putting it all together, here is the high level summary of how ...

  2. JS 小技巧整理

    一.javascript中调用函数并不一定严格执行指定的参数个数.(函数定义时的参数个数和调时指定的参数个数并不一定要相等) function showInfo(arg1) { var defindl ...

  3. C#System.Text.RegularExpressions.Regex使用(一) .

    需要引入命名空间 using System.Text.RegularExpressions;(若不引入,则写Regex时要写成 System.Text.RegularExpressions.Regex ...

  4. 微信授权、获取用户openid-纯前端实现——jsonp跨域访问返回json数据会报错的纯前端解决办法

    近来,倒霉的后台跟我说让我拿个openid做微信支付使用,寻思很简单,开始干活. 首先引导用户打开如下链接,只需要将appid修改为自己的就可以,redirect_url写你的重定向url https ...

  5. 杨老师课堂_Java核心技术下之控制台模拟微博用户注册案例

    案例设计背景介绍: 编写一个新浪微博用户注册的程序,要求使用HashSet集合实现.  假设当用户输入用户名.密码.确认密码.生日(输入格式yyyy-mm-dd为正确).手机号码(手机长度为11位,并 ...

  6. MYSQL使用方法

    显示所有数据库:show databases; 创建数据库:create database 数据库名; 删除数据库:drop database 数据库名:   查看表结构: describe(desc ...

  7. resteasy上传文件写法

    resteasy服务器代码 @Path(value = "file") public class UploadFileService { private final String ...

  8. C++之Binary Heap/Max Heap

    #include <iostream> #include <time.h> #include <random> using namespace std; //Bin ...

  9. 你不知道的JavaScript--Item5 全局变量

    1.尽量少用全局对象 全局变量的问题在于,你的JavaScript应用程序和web页面上的所有代码都共享了这些全局变量,他们住在同一个全局命名空间,所以当程序的两个不同部分定义同名但不同作用的全局变量 ...

  10. 剑指offer(javascript实现)

    1.二维数组中的查找 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. funct ...