综合 34.4K Star 最牛 OCR !!! 不要服务器, 浏览器识别 100+ 语言文本

2024-11-19 07:16:38 +0800 CST views 1301

34.4K Star 最牛 OCR !!! 不要服务器, 浏览器识别 100+ 语言文本

项目简介

Tesseract.js 是一款纯 JavaScript 的 OCR(光学字符识别)库,支持超过 100 种语言的文本识别。无论是自动检测文本方向和脚本类型,还是简单直观地获取段落、单词和字符的边界框,Tesseract.js 都能为开发者提供强大的工具。这款库不仅可以在浏览器中运行,还能在服务器端使用 Node.js 运行,适用于多种应用场景。


特点

  • 多语言 OCR:支持超过 100 种语言,用户可以根据需要下载不同的语言包来识别文本。
  • 纯前端实现:可以直接在浏览器中进行 OCR 处理,无需服务器支持,确保数据安全且响应迅速。
  • 自动文本检测:能够自动检测图像中的文本方向和脚本类型,减少人为干预。
  • 简单易用的 API:提供用户友好的 API 设计,让开发者快速上手。

开源成就

  • Star 数:34.4K
  • **Fork 数:**持高社区参与度
  • 应用场景广泛:用于图像文本提取、文档分析、自动化处理等多个领域。

主要功能

  1. 多语言支持:可以识别超过 100 种语言文本。
  2. 前端独立运行:无需后端服务器支持,直接在浏览器中进行 OCR 识别。
  3. 自动文本检测:智能识别文本方向、脚本类型,无需额外配置。
  4. 灵活的 API:易于集成到任何项目中,适合前后端的多场景使用。

安装指南

Node.js 环境下安装

在 Node.js 项目中,可以通过 npm 或 yarn 安装 Tesseract.js

npm install tesseract.js
# 或者
yarn add tesseract.js

浏览器使用

在 HTML 文件中,可以通过添加脚本标签并指定 CDN 链接来使用 Tesseract.js

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Tesseract.js OCR Demo</title>
    <!-- 引入 Tesseract.js -->
    <script src="https://cdn.jsdelivr.net/npm/tesseract.js@latest/dist/tesseract.min.js"></script>
</head>
<body>
    <button id="ocrButton">开始 OCR</button>
    <div id="result"></div>

    <script>
        document.getElementById('ocrButton').addEventListener('click', async () => {
            try {
                const result = await Tesseract.recognize(
                    'path/to/image.jpg', // 图像文件路径
                    'eng', // 语言代码
                    { logger: m => console.log(m) } // 可选日志记录
                );

                document.getElementById('result').innerText = result.text;
            } catch (error) {
                console.error('OCR failed:', error);
            }
        });
    </script>
</body>
</html>

使用示例

在 Node.js 环境下,编写 JavaScript 文件并引入 Tesseract.js 进行 OCR 文本识别:

const Tesseract = require('tesseract.js');

Tesseract.recognize(
  'path/to/image.jpg', // 指定图片路径
  'eng' // 指定语言代码
).then(({ data: { text } }) => {
  console.log('Recognized Text:', text);
});

总结

Tesseract.js 是一款简单易用、功能强大的 OCR 解决方案。无论你是初学者还是有经验的开发者,都可以轻松上手。其强大的多语言支持、前端独立运行的特性以及自动文本检测功能,极大地方便了文本识别应用的开发。如果你正在寻找一款无需服务器的浏览器 OCR 工具,Tesseract.js 绝对是你的不二之选。

https://github.com/naptha/tesseract.js
images

复制全文 生成海报 光学字符识别 JavaScript库 前端开发

推荐文章

JS中 `sleep` 方法的实现
2024-11-19 08:10:32 +0800 CST
PHP 压缩包脚本功能说明
2024-11-19 03:35:29 +0800 CST
Go语言中的mysql数据库操作指南
2024-11-19 03:00:22 +0800 CST
使用xshell上传和下载文件
2024-11-18 12:55:11 +0800 CST
# 解决 MySQL 经常断开重连的问题
2024-11-19 04:50:20 +0800 CST
2024年微信小程序开发价格概览
2024-11-19 06:40:52 +0800 CST
CSS Grid 和 Flexbox 的主要区别
2024-11-18 23:09:50 +0800 CST
Python 微软邮箱 OAuth2 认证 Demo
2024-11-20 15:42:09 +0800 CST
PHP 的生成器,用过的都说好!
2024-11-18 04:43:02 +0800 CST
Vue3中怎样处理组件引用?
2024-11-18 23:17:15 +0800 CST
虚拟DOM渲染器的内部机制
2024-11-19 06:49:23 +0800 CST
禁止调试前端页面代码
2024-11-19 02:17:33 +0800 CST
CSS 特效与资源推荐
2024-11-19 00:43:31 +0800 CST
go错误处理
2024-11-18 18:17:38 +0800 CST
程序员茄子在线接单