免费 Node.js API,为 JS 项目添加 OCR 功能。
开源 Node.js OCR 库,允许程序员免费识别并提取各种文件格式(包括图像(JPEG、PNG)、PDF 和文档)的文本,支持多语言。
Node-Tesseract-OCR 是什么?
在当今的数字时代,从图像和文档中提取文本已成为各行业的关键任务,包括文档管理、数据处理和人工智能等领域。光学字符识别(OCR)技术使得将扫描的文档、图像和 PDF 转换为可编辑的文本格式成为可能。Node-Tesseract-OCR 是一个开源 API,融合了 Tesseract OCR 引擎的强大功能,为在 Node.js 应用程序中执行 OCR 任务提供了无缝且高效的方式。
Node-Tesseract-OCR 是 Tesseract OCR 引擎的 Node.js 包装器,允许软件开发者在 Node.js 环境中利用 Tesseract 强大的文本识别功能。该 API 在此 GitHub 仓库维护,提供了一系列功能,适用于从简单文本提取到更复杂的文档处理任务的各种使用场景。软件开发者可以使用多语言从图像和文档中提取文本,使其成为多种应用的多功能工具。
Node-Tesseract-OCR API 提供了高级图像处理能力,包括图像过滤、调整大小和裁剪,以确保提取的文本准确可靠。它支持超过 100 种语言,成为在多样化环境中执行 OCR 任务的通用解决方案。软件开发者可以从图像、PDF 和文档中提取文本,并以 JSON、XML 或纯文本等多种格式返回。该 API 设计轻量、灵活且易于使用,是希望在项目中添加 OCR 功能的开发者的理想选择。凭借其先进的图像处理功能、语言支持和错误处理机制,它是开发者添加 OCR 功能的理想选择。
开始使用 Node-Tesseract-OCR
推荐的安装 Node-Tesseract-OCR 的方式是使用 npm。请使用以下命令进行顺利安装
在 Node.js API 中从图像提取文本
开源的 Node-Tesseract-OCR 库让软件开发者能够轻松创建能够在 Node.js 应用程序中自动从图像提取文本的应用。它支持从扫描文档、PDF、相机拍摄的照片或收据照片中提取文本。这对于创建可搜索的档案、自动化数据录入或在金融、医疗等行业处理大量文档非常有用。下面是一个简单示例,展示如何在 Node.js 应用程序中以编程方式从图像提取文本。
如何在 Node.js 环境中从图像提取文本?
const tesseract = require("node-tesseract-ocr");
tesseract.recognize("path/to/image.jpg")
.then(text => {
console.log("Recognized Text:", text);
})
.catch(error => {
console.error("Error:", error.message);
});
在 Node.js 中的更好图像预处理
在应用 OCR 之前对图像进行预处理可以显著提升文本识别的准确性。开源的 Node-Tesseract-OCR 库支持基本的预处理技术,如调整大小、二值化和去倾斜。这些预处理步骤可以结合使用 sharp 或 jimp 等额外的 Node.js 库与 Node-Tesseract-OCR 实现。下面的示例展示了软件开发者如何使用预处理步骤来提升识别,尤其是对质量较低的图像。
如何通过 Node.js API 应用预处理步骤以提升识别?
const sharp = require("sharp");
const tesseract = require("node-tesseract-ocr");
sharp("path/to/input.jpg")
.resize(800, 600) // Resize the image
.greyscale() // Convert to greyscale
.toBuffer()
.then(data => {
return tesseract.recognize(data, { lang: "eng" });
})
.then(text => {
console.log("Preprocessed Image Text:", text);
})
.catch(error => {
console.error("Error:", error.message);
});
多语言识别文本
Node-Tesseract-OCR 的一大亮点是其广泛的多语言支持。Tesseract OCR 库支持超过 100 种语言,使其成为需要处理多语言文档的应用的理想选择。软件开发者可以指定希望 Tesseract 使用的语言,从而提升非英文文本的识别准确性。下面的示例展示了软件开发者如何在 Node.js 应用程序中识别法语文本。
如何通过 JavaScript API 从图像中识别法语文本?
const config = {
lang: "fra", // French language support
oem: 1,
psm: 3
};
tesseract.recognize("path/to/french-text-image.jpg", config)
.then(text => {
console.log("Recognized Text in French:", text);
})
.catch(error => {
console.error("Error:", error.message);
});