light-ocr
快速、離線 OCR 支援 Node.js 與 C++。採用 PP-OCRv6 搭配 Core ML / WebGPU 硬體加速 — 辨識圖片中的文字,並提供信心分數與座標。npm:
light-ocr 是什麼?
快速、離線 OCR 支援 Node.js 與 C++。採用 PP-OCRv6 搭配 Core ML / WebGPU 硬體加速 — 辨識圖片中的文字,並提供信心分數與座標。npm:@arcships/light-ocr
light-ocr 概覽
這是什麼
light-ocr 是一個快速、離線的 OCR 函式庫,支援 Node.js 與 C++。它採用 PP-OCRv6,並透過 Core ML 或 WebGPU 硬體加速來辨識圖片、PDF 或原始像素資料中的文字。npm 套件包含 OCR 模型、PDFium 渲染器以及中文字型後備字型,並為 macOS、Linux 和 Windows 預先建置。安裝或執行時無需後續下載。它會以閱讀順序回傳辨識出的文字行,並附帶信心分數與四邊形座標。
主要功能
- 本地處理:圖片、PDF 與 OCR 結果皆保留在機器上。
- 單一套件安裝:模型、OCR 執行環境、PDF 渲染器與中文字型後備字型皆透過 npm 套件的平台相依性包含在內。
- 無需二次下載:安裝與執行時無需後續擷取、編譯器、模型下載、PDF 引擎下載或字型下載。
- 實用輸出:每一行皆包含辨識文字、信心分數及其在原始圖片中的位置。
- 預設硬體加速:在 macOS 15+ Apple Silicon 上自動優先嘗試 Core ML,在 Linux 與 Windows 版本上優先嘗試 WebGPU。
- 應用程式友善的執行:辨識作業在 JavaScript 主執行緒之外執行,並支援佇列、取消與明確清理。
- 大型圖片中的小文字:可選的 tiled 模式可保留高解析度圖片中的小型與密集文字。
使用情境
適用於 Node.js 應用程式、命令列工具、桌面軟體以及原生 C++ 整合中的本地 OCR。可處理 JPEG、PNG、PDF、編碼位元組或解碼後的像素緩衝區。CLI 提供辨識、偵測、文件 OCR 與系統診斷等指令。
快速開始
支援 Node.js 22 或更新版本。安裝套件:bashnpm install @arcships/light-ocrTypeScript 基本用法:tsimport { createEngine } from '@arcships/light-ocr';import { readFile } from 'node:fs/promises';const engine = await createEngine();try { const result = await engine.recognizeEncoded( await readFile('image.jpg'), ); for (const line of result.lines) { console.log(line.text, line.confidence, line.box); }} finally { await engine.close();}處理 PDF:tsimport { recognizeDocument } from '@arcships/light-ocr';for await (const page of recognizeDocument('report.pdf', { dpi: 200 })) { console.log(page.index, page.lines.map((line) => line.text));}
授權與價格
授權為 Apache-2.0。此專案為開放原始碼。
內容整理自該專案公開的 README 與儲存庫資訊。