36k Star 的 OCR 前端 SDK 轻松上手图像识别

什么是图像 OCR 技术

大家平时在处理图片的时候,有没有遇到过需要把图片里的文字提取出来的情况?比如一些扫描的文档、拍下来的菜单或者街上的广告牌照片。要是能直接把这些文字"读"出来,是不是方便很多?这就是图像 OCR(光学字符识别)技术能干的事儿。

它就像给程序装上了一双能看懂文字的"眼睛",不管文字在图片里还是文档扫描件里,都能被识别出来,然后转化成我们可以编辑、搜索的文本格式。听起来是不是很神奇?

基于图像 OCR 的开源方案分享

今天就给大家分享一个超厉害的开源项目------Tesseract.js。

它是什么

Tesseract.js 是一个用 JavaScript 写的库,能从图片里提取出各种语言的文字。不管是浏览器环境还是服务器环境,它都能轻松应对。是不是很厉害?

怎么用

如果你要在网页里用,最简单的方法就是用 CDN 引入:

xml 复制代码
<!-- v5 版本 -->
<script src='<https://cdn.jsdelivr.net/npm/tesseract.js@5/dist/tesseract.min.js>'></script>

然后,你就能用 Tesseract.createWorker 来创建一个工作线程,开始你的文字识别之旅啦。

或者,如果你喜欢用 import 语法,可以去 https://cdn.jsdelivr.net/npm/tesseract.js@5/dist/tesseract.esm.min.js 拿到 ESM 构建。

如果你想在 Node.js 项目里用,得先安装它。用 npm 或 yarn 都行:

csharp 复制代码
# 最新版本
npm install tesseract.js
yarn add tesseract.js

# 旧版本
npm install tesseract.js@3.0.3
yarn add tesseract.js@3.0.3

使用方法

安装好之后,用起来也很简单。比如,你想从一张图片里提取英文文字,可以这样写:

ini 复制代码
import { createWorker } from 'tesseract.js';

(async () => {
  const worker = await createWorker('eng');
  const ret = await worker.recognize('<https://tesseract.projectnaptha.com/img/eng_bw.png>');
  console.log(ret.data.text);
  await worker.terminate();
})();

要是你有很多图片要处理,记得先创建一个工作线程,然后对每个图片都运行 worker.recognize,最后再运行 worker.terminate(),这样效率更高。

它能干啥

Tesseract.js 的目标是把 Tesseract OCR 引擎(一个很厉害的独立项目)带到浏览器和 Node.js 里。它通过包装 Tesseract 的 WebAssembly 端口来实现。注意哦,它不修改 Tesseract 的核心功能,所以有些限制,比如 不支持 PDF 文件,也不会去改 Tesseract 的识别模型来提高准确率。

如果你的项目需要一些超出它能力的功能,比如从 PDF 里提取文字,可以看看 Scribe.js,它是个替代方案,专门用来满足这些额外需求。

官方Demo

图像识别:

视频实时识别:

最后

交个朋友 撇嘴 ,私发9 。获取 Tesseract.js 链接

相关推荐
NiceCloud喜云8 小时前
Opus 4.8 的 Effort Control 怎么选:Low 到 Max 五档策略
android·java·大数据·前端·c++·python·spring
wordbaby8 小时前
React Native + RNOH:跨页面数据回传的最佳实践与避坑指南
前端·react native
GISer_Jing8 小时前
Three.js着色器编译机制深度解析
javascript·webgl·着色器
丷丩8 小时前
MapLibre GL JS第22课:查看本地GeoJSON
前端·javascript·map·mapbox·maplibre gl js
油炸自行车8 小时前
Claude Code 错误:API Error: 400 Failed to deserialize the JSON body into the
开发语言·javascript·json·trae·claude code·api error 400
Front思9 小时前
AI前端工程师需要具备能力+
前端·人工智能·ai
ZC跨境爬虫11 小时前
跟着 MDN 学CSS day_29:(掌握文本与字体样式的核心艺术)
前端·css·ui·html·tensorflow
李子琪。12 小时前
网络空间安全深度实战:CSRF 漏洞原理剖析与基于 Token 的纵深防御体系构建(全栈实验报告)
前端·安全·csrf
冰暮流星12 小时前
javascript之history对象介绍
前端·笔记
lauo12 小时前
从FunloomAI到ibbot:当你的手机不再是“手机”,而是你的AI副脑和生产节点
人工智能·智能手机·架构·开源·github