跳转至正文内容
v5.3.0 正式发布

全球最受推崇的免费开源
OCR 文字识别引擎

Tesseract OCR 是工业界公认的开源光学字符识别标准引擎。 采用先进的 LSTM 循环神经网络,能够以 99% 以上的高准确率从图片与扫描文档中识别提取 100 多种语言的文本。100% 本地离线执行,隐私绝对安全。

bash — 80x24

$ tesseract invoice.png output -l chi_sim+eng --psm 3 pdf hocr

初始化 Tesseract OCR v5.3.0 (LSTM 神经网络引擎)...

加载 Leptonica 图像处理库: invoice.png (300 DPI, 2480x3508)

加载语言模型: chi_sim.traineddata, eng.traineddata

执行页面布局版面分析 (PSM 3: 全自动页面分割)...

执行 LSTM 深度字符识别... 耗时 0.76 秒

✓ 成功生成 output.txt (纯文本提取)

✓ 成功生成 output.pdf (双层可搜索可复制 PDF)

✓ 成功生成 output.hocr (包含边界框坐标与置信度的 XML)

Tesseract 工作原理

从原始图像到可搜索文档的 5 步专业 OCR 识别流水线

01

图像预处理 (Leptonica)

自动执行自适应二值化(Otsu算法)、倾斜校正、噪点去除和分辨率标准化,确保文字特征最清晰。

02

版面布局分析 (PSM)

检测多栏排版、段落结构、表格及非文字区域,智能确定各文本块的自然阅读顺序。

03

基准线检测与切分

追踪每行文本的基线曲率,并将连体字与复杂字符块精准拆分为待识别图元。

04

LSTM 神经网络识别

双向循环神经网络结合上下文语言概率模型,对中英文字符进行高精度解码识别。

05

多格式结构化输出

将识别成果输出为纯文本、双层可搜索 PDF、hOCR (HTML)、ALTO XML、TSV 数据表格等。

安装与快速开始

支持全平台主流操作系统的一键安装指南

Windows 10 / 11 安装

使用 Windows 包管理器 (winget 或 Scoop) 或下载 UB Mannheim 官方编译安装程序:

# 推荐: 使用 winget 安装
winget install UB-Mannheim.TesseractOCR

# 或使用 Scoop:
scoop install tesseract

# 验证安装:
tesseract --version

macOS (Homebrew) 安装

# 使用 Homebrew 安装 Tesseract
brew install tesseract

# 安装全语言包 (推荐):
brew install tesseract-lang

# 验证安装及语言列表:
tesseract --version
tesseract --list-langs

Linux (Ubuntu / Debian / CentOS / Arch)

# Ubuntu / Debian
sudo apt update
sudo apt install tesseract-ocr tesseract-ocr-chi-sim tesseract-ocr-eng

# CentOS / RHEL / Fedora
sudo dnf install tesseract tesseract-langpack-chi_sim

# Arch Linux
sudo pacman -S tesseract tesseract-data-chi_sim tesseract-data-eng

Python 快速集成 (pytesseract)

pip install pytesseract pillow opencv-python

# Python 代码示例:
import pytesseract
from PIL import Image

# 从图片提取中英文文本
image = Image.open('document.jpg')
text = pytesseract.image_to_string(image, lang='chi_sim+eng')
print(text)

# 生成双层可搜索 PDF
pdf = pytesseract.image_to_pdf_or_hocr('document.png', extension='pdf', lang='chi_sim')
with open('output.pdf', 'wb') as f:
    f.write(pdf)

JavaScript / TypeScript (Tesseract.js)

npm install tesseract.js

// Node.js 或浏览器代码:
import { createWorker } from 'tesseract.js';

const worker = await createWorker('chi_sim');
const ret = await worker.recognize('image.png');
console.log(ret.data.text);
await worker.terminate();

核心功能特性

深受全球数百万开发者与科研机构青睐的开源利器

LSTM 深度神经网络引擎

告别传统模板匹配,全面拥抱深度学习。长短期记忆(LSTM)网络结合字符级语义上下文,大幅提高复杂背景与中英文混排识别率。

支持 100+ 种全球语言

原生支持简体中文、繁体中文、英文、日文、韩文、阿拉伯文、俄文等世界各种书写体系,支持多种语言并行识别。

直接生成可检索 PDF

扫描件无需重排,自动在图像底层叠加透明文字层,生成具备完整搜索、高亮和复制特性的标准 PDF 文档。

100% 离线与隐私安全

纯本地运算,无需网络连接,不产生任何第三方云端数据传输,完全满足金融、医疗与企业级合规保密要求。

结构化数据输出 (hOCR / TSV)

提供字符级别的坐标边界框(Bounding Box)及置信度分值,为自动化表格抽取与版面重建提供坚实基础。

支持语言库与模型下载

支持100多种语言。即时搜索并下载经过专业训练的官方语言模型文件(.traineddata)。

100+ 种语言

Tesseract GUI 桌面工具推荐

无需使用命令行,开箱即用的图形界面免费软件

gImageReader

基于 GTK/Qt 的优秀图形化前端。支持 PDF/图片批量处理、OCR 区域手动框选及后处理校对。

查看 gImageReader →

OCRmyPDF

自动化 PDF 双层可搜索化神器。具备自动旋转纠偏、图像去噪及高质量 PDF/A 归档生成功能。

查看 OCRmyPDF →

VietOCR

基于 Java/.NET 打造的跨平台经典 GUI 工具,支持批量 OCR 转换和内置拼写检查功能。

查看 VietOCR →

页面分割模式 (PSM) 详解

根据文档类型选择恰当的 PSM 模式以获得最高识别准确率

PSM 参数 模式描述 最佳适用场景
--psm 3 全自动页面分割 (默认) 标准多段落普通文档、书籍或整页扫描件。
--psm 6 单个统一文本块 发票、小票、收据、单一排版的文本块。
--psm 7 单行文本 车牌号码、条形码下方文本、截取的单行标题。
--psm 8 单个单词或独立词组 验证码、徽标文字、独立商品编码。
--psm 11 无特定顺序的稀疏文本 名片、海报、传单、表格中散落的数据项。

常见问题解答 (FAQ)

关于 Tesseract OCR 的常见疑问解答

Tesseract OCR 支持哪些输入图像格式?

通过底层的 Leptonica 图像库,Tesseract 原生支持 PNG, JPEG, TIFF, BMP, PNM, GIF 以及 WebP 格式。为保证最高 OCR 识别率,推荐使用 300 DPI 或更高清晰度的无损格式(如 TIFF 或 PNG)。

Tesseract OCR 的识别准确率如何?

在清晰的高分辨率印刷文档上,Tesseract v5 的字符准确率通常超过 99%。对于低分辨率或复杂手写体,通过二值化降噪与倾斜校正等图像前处理步骤,可以显著提升最终识别效果。

Tesseract OCR 与商业云端 OCR API 相比如何?

Tesseract 100% 免费开源、无调用次数限制且完全离线运行,是注重成本效益与隐私安全场景的理想选择;商业云端 API(如 Google Vision)在生僻手写体上表现更好,但按次计费且需上传图片至云端。

如何进一步提高中英文识别准确率?

(1) 确保图像缩放至 300 DPI 以上;(2) 转为灰度并应用 Otsu 二值化算法;(3) 进行图像旋转倾斜校正;(4) 根据版面指定正确的 --psm 模式;(5) 使用中英文联合语言包参数 -l chi_sim+eng