@tzmax/ocr-models
v1.4.4
Published
Guten OCR is a high accurate text detection (OCR) Javascript/Typescript library that runs on Node.js, Browser, React Native and C++. Based on PaddleOCR and ONNX runtime
Downloads
14
Readme
Guten OCR
an OCR Javascript library runs on Node.js, Browser, React Native and C++
Based on PaddleOCR and ONNX Runtime, supports PP-OCRv4 model
Getting Started
Node
bun add @gutenye/ocr-node
import Ocr from '@gutenye/ocr-node'
const ocr = await Ocr.create()
const result = await ocr.detect('a.jpg')
Browser
bun add @gutenye/ocr-browser
import Ocr from '@gutenye/ocr-browser'
const ocr = await Ocr.create({
models: {
detectionPath: '/assets/ch_PP-OCRv4_det_infer.onnx',
recognitionPath: '/assets/ch_PP-OCRv4_rec_infer.onnx',
dictionaryPath: '/assets/ppocr_keys_v1.txt'
}
})
const result = await ocr.detect('/a.jpg')
React Native
bun add @gutenye/ocr-react-native
import Ocr from '@guenye/ocr-react-native'
const ocr = await Ocr.create()
const result = await ocr.detect('a.jpg')
C++
#include "native-ocr.h"
NativeOcr* ocr = new NativeOcr(..)
auto result = ocr->detect("a.jpg");
API Reference
Ocr.create({
models?: {
detectionPath: string
recognitionPath: string
dictionaryPath: string
},
isDebug?: boolean
debugOutputDir?: string // Node only
recognitionImageMaxSize?: number // RN only
detectionThreshold?: number // RN only
detectionBoxThreshold?: number // RN only
detectionUnclipRatiop?: number // RN only
detectionUseDilate?: boolean // RN only
detectionUsePolygonScore?: boolean // RN only
useDirectionClassify?: boolean // RN only
onnxOptions?: {} // Node only. Pass to ONNX Runtime
}): Promise<Ocr>
ocr.detect(imagePath, {
onnxOptions?: {} // Node only. Pass to ONNX Runtime
}): Promise<TextLine[]>
TextLine {
text: string
score: number
frame: { top, left, width, height }
}
Development
- Requires Git LFS to clone the repo
brew install git-lfs
git clone [email protected]:gutenye/ocr.git
Related Projects
| Name | Platforms | Note | | -------------------------------------------------------------- | --------- | ------------------------------- | | eSearch-OCR | Electron | | | paddleocr-onnx | Node | Recogination part is incomplete | | ocrjs | Node | Recogination part is incomplete | | Paddle-Lite-Demo | Mobile, C++ | |