arcships/light-ocr
Fast, offline OCR for Node.js & C++. PP-OCRv6 with Core ML / WebGPU hardware acceleration — recognize text in images with confidence scores & coordinates. npm: @arcships/light-ocr
解决的问题
light-ocr 为 Node.js 和 C++ 应用程序提供了一种快速、离线的光学字符识别(OCR)解决方案。它无需外部 API 调用或复杂的系统级依赖,允许开发者在本地机器上直接识别图像(JPEG、PNG)和 PDF 中的文本。
工作原理
该项目默认使用 PP-OCRv6 Small 模型,并集成 PDFium 用于文档渲染。它以单个 npm 包形式分发,包含 OCR 运行时、模型和必要的字体,无需安装后下载或编译器。
为优化性能,它会自动检测硬件加速:在 Apple Silicon(macOS 15+)上使用 Core ML,在 Linux 和 Windows 上使用 WebGPU(通过 Vulkan 或 D3D12),否则回退到 CPU。
适用人群
- Node.js 开发者:构建 CLI、桌面软件或需要本地文本识别的服务器端应用的开发者。
- C++ 开发者:需要 OCR 集成的原生静态库的开发者。
- AI 代理:该项目包含一个「代理技能」,帮助 AI 代理在收据提取或验证等任务中,判断何时使用确定性 OCR 而非多模态模型。
主要亮点
- 零配置:一次 npm install 即可获得全部(模型、运行时、PDF 渲染器和字体),无需二次下载。
- 本地化与隐私:所有处理都在设备上完成,确保数据隐私。
- 硬件加速:原生支持 Core ML 和 WebGPU,相比 CPU 执行有显著性能提升。
- 灵活输入:支持 PDF、JPEG、PNG 和原始像素缓冲区(GRAY8、RGB8、BGR8、RGBA8)。
- 多级模型:提供 Small(稳定)、Tiny(超轻量)、Medium(质量导向)三种模型选项。
- 分块模式:可选模式,用于在高分辨率图像中保留小而密集的文本。
相关
- 项目
- 项目
- 项目
- 项目
- 项目