在Windows 10上安装Tesseract并用pytesseract运行OCR任务

诸神缄默不语-个人CSDN博文目录

文章目录

  • [1. Tesseract安装](#1. Tesseract安装)
  • [2. pytesseract的安装与使用](#2. pytesseract的安装与使用)
  • [3. 手动安装其他语种并在pytesseract中调用](#3. 手动安装其他语种并在pytesseract中调用)
  • [4. 本文撰写过程中参考的其他网络资料](#4. 本文撰写过程中参考的其他网络资料)

1. Tesseract安装

Tesseract官方GitHub项目链接:https://github.com/tesseract-ocr/tesseract

官方安装教程(包括各种操作系统上的):https://tesseract-ocr.github.io/tessdoc/Installation.html

本文用的是Windows系统上的安装包:https://github.com/UB-Mannheim/tesseract/wiki

下载软件:https://github.com/UB-Mannheim/tesseract/releases/download/v5.4.0.20240606/tesseract-ocr-w64-setup-5.4.0.20240606.exe

需要注意的是,Tesseract卸载时会删除整个安装目录,所以需要安装在新文件夹(默认路径就可以)

安装过程:

(↑在这一步可以选择想要安装的其他语种,不过我选择根据需要随时安装)

下一步点击Install

2. pytesseract的安装与使用

pytesseract官方pip网站:https://pypi.org/project/pytesseract/

我用的Python版本是3.9.18

下载方式:pip install pytesseract

打印图片中文字的示例代码(test.png是https://github.com/madmaze/pytesseract/blob/master/tests/data/test.png):

python 复制代码
from PIL import Image

import pytesseract

pytesseract.pytesseract.tesseract_cmd=r'D:\allApplications\forTesseract\newFolderForTesseract\tesseract'

print(pytesseract.image_to_string(Image.open('test.png')))

需要注意的是,pytesseract.pytesseract.tesseract_cmd是tesseract.exe的完整路径去掉.exe。如果只写到tesseract.exe所处的文件夹路径,会报PermissionError: [WinError 5] 拒绝访问。

原图:

输出:

复制代码
This is a lot of 12 point text to test the
ocr code and see if it works on all types 
of file format.

The quick brown dog jumped over the
lazy fox. The quick brown dog jumped
over the lazy fox. The quick brown dog
jumped over the lazy fox. The quick
brown dog jumped over the lazy fox.

3. 手动安装其他语种并在pytesseract中调用

参考官方文档:https://github.com/UB-Mannheim/tesseract/wiki/Install-additional-language-and-script-models
https://github.com/tesseract-ocr/tessdoc/blob/main/Data-Files.md

我用的是这个版本的训练数据:https://github.com/tesseract-ocr/tessdata_fast

以法语为例,下载https://github.com/tesseract-ocr/tessdata_fast/blob/main/fra.traineddata到tessdata路径下(如在本文中,就是D:\allApplications\forTesseract\newFolderForTesseract\tessdata)

在pytesseract中检查现在支持哪些语种:

python 复制代码
import pytesseract

pytesseract.pytesseract.tesseract_cmd=r'D:\allApplications\forTesseract\newFolderForTesseract\tesseract'

print(pytesseract.get_languages(config=''))

输出:

复制代码
['eng', 'fra', 'osd']

(其中osd是检测文本方向,比如当文本横或者斜过去的时候就可以检测到正确的文字)

在pytesseract中识别法语图片(图片来源于https://github.com/madmaze/pytesseract/blob/master/tests/data/test-european.jpg):

python 复制代码
from PIL import Image

import pytesseract

pytesseract.pytesseract.tesseract_cmd=r'D:\allApplications\forTesseract\newFolderForTesseract\tesseract'

print(pytesseract.image_to_string(Image.open('test-european.jpg'), lang='fra'))

原图:

输出:

复制代码
The (quick) [brown] {fox} jumps!
Over the $43,456.78 <lazy> #90 dog
& duck/goose, as 12.5% of E-mail
from aspammer@website.com is spam.
Der .schnelle" braune Fuchs springt
über den faulen Hund. Le renard brun
<<rapide>> saute par-dessus le chien
paresseux. La volpe marrone rapida
salta sopra il cane pigro. El zorro
marrôn râpido salta sobre el perro
perezoso. À raposa marrom räâpida
salta sobre o câo preguiçoso.

4. 本文撰写过程中参考的其他网络资料

  1. python - Tesseract installation in windows - Stack Overflow
  2. [WinError 5] 拒绝访问。_pytesseract 拒绝访问-CSDN博客
相关推荐
x-cmd1 小时前
[260429] x-cmd v0.9.1:一键开启 DeepSeek-V4-Pro Max 模式 + 1M 上下文;顺手重构了 uuid 模块
windows·重构·uuid·claude·curl·x-cmd·deepseek-v4-pro
今夕资源网2 小时前
Windows 上安装 Claude Code并且接入DeepSeekV4-Pro的Max模式和激活1M上下文
windows
HLJ洛神千羽2 小时前
电脑右下角显示【周几或星期几】和【上下午】方法
windows
ITHAOGE153 小时前
下载 | Windows Server 2025官方原版ISO映像!(4月更新、标准版、数据中心版、26100.32690)
服务器·windows·科技·微软·电脑
专注VB编程开发20年4 小时前
Windows API 所有老式结构体4字节对齐,但是64位VBA,Twinbasic弄成了8字节对齐,大BUG
windows·bug
东篱把酒黄昏4 小时前
wsl和Windows混合开发高级配置详细指导
windows
helloliyh5 小时前
windows设置定时任务开机执行bat或exe文件
windows
清水白石0085 小时前
从“类型体操”到工程设计:用 Python 解释协变、逆变与不变
网络·windows·python
卷Java7 小时前
上下文压缩
开发语言·windows·python
日取其半万世不竭7 小时前
Minecraft Java版社区服搭建教程(Windows版)
java·开发语言·windows