Tesseractjs 前端OCR识别提取图像文本字符工具 支持 100+ 种语言
2024-11-20
25
Tesseract.js 简介
Tesseract.js 是一个基于 Tesseract OCR 引擎的开源 JavaScript 库,用于在浏览器和 Node.js 环境中执行光学字符识别 (OCR)。它的特点是无需依赖服务器端支持,完全在客户端执行 OCR 操作。
Tesseract.js GitHub地址:https://github.com/naptha/tesseract.js#tesseractjs
Tesseract.js 主要特性
跨平台支持:
可以在浏览器和 Node.js 中运行。 支持现代浏览器,包括 Chrome、Firefox、Safari 等。多语言支持:
默认支持 100 多种语言。 允许加载不同的语言数据(如中文、英文等)。高性能:
使用 WebAssembly (WASM) 技术实现高效的计算。 支持多线程处理,利用 worker 加速 OCR 过程。易用性:
提供简单易懂的 API 接口。 能够提取图片中的文字,支持图片预处理(如旋转、二值化)。Tesseract.js 基本用法
使用 npm 安装
npm install tesseract.js
示例代码
const Tesseract = require('tesseract.js');
// 识别图片中的文本
Tesseract.recognize(
'path/to/image.png', // 图片路径
'eng', // 语言代码
{
logger: info => console.log(info), // 可选:日志输出
}
).then(({ data: { text } }) => {
console.log('识别的文本:', text);
}).catch(error => {
console.error('OCR 失败:', error);
});
Tesseract.js 主要功能
识别图片中的文字
支持从图片中提取文字,可处理多种格式(如 PNG、JPEG、GIF),支持语言模型自定义。可加载自定义语言包(如繁体中文)。自定义训练数据可提升特定场景的识别精度。
进度和日志
提供进度日志,方便开发者监控 OCR 处理状态。
输出格式
返回多种结果形式(纯文本、每个字符的位置信息等)。
Tesseract.js 应用场景
文本提取:扫描文档、图片、名片等。 数据分析:从票据、表格、账单中提取结构化数据。 多语言处理:从多语言图片或文档中识别文字。限制和注意事项
性能消耗:OCR 是一个计算密集型任务,可能会在低性能设备上表现不佳。图片的分辨率和质量会显著影响识别准确性。 依赖的语言数据:使用时需要加载语言包,如果未正确加载会导致识别失败。 复杂场景支持:对于复杂布局或手写文字的识别,可能需要预处理或其他工具配合。Tesseract.js 是前端或 Node.js 环境中执行 OCR 的一种强大解决方案,适合需要无服务端依赖的轻量级应用场景。你可以在 Tesseract.js 官方文档 中找到更多详细信息。
更新于:18天前赞一波!1
文章评论
评论问答