# OCR **Repository Path**: litongjava_admin/tr ## Basic Information - **Project Name**: OCR - **Description**: Free Offline OCR 离线的中文文本检测+识别SDK - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://github.com/myhub/tr - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 112 - **Created**: 2020-09-23 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # tr - Text Recognition 一款针对扫描文档的离线文本识别SDK,核心代码全部采用C++开发,并提供Python接口 #### 更新说明 + 添加python2支持 + 去除opencv-python、Pillow依赖,降低部署难度 + 支持多线程 + 支持GPU #### Contact Email: anycode@yahoo.com #### Requirements + python2/python3 + Ubuntu 16.04/Ubuntu 18.04 + numpy #### GPU版本安装说明 如果对速度有要求,推荐安装GPU版本
要使用GPU版本,复制tr_gpu文件夹里面的文件到tr文件夹
注意: 需要先安装CUDA 10.1以及cuDNN 7.6.5

若不想安装CUDA/cuDNN,可以使用docker部署
docker pull mcr.microsoft.com/azureml/onnxruntime:v1.3.0-cuda10.1-cudnn7
sudo nvidia-docker run -v /path/to/tr:/path/to/tr --rm -it mcr.microsoft.com/azureml/onnxruntime:v1.3.0-cuda10.1-cudnn7
#### Install + 安装方法一
git clone https://github.com/myhub/tr.git
cd ./tr
sudo python setup.py install
+ 安装方法二
sudo pip install git+https://github.com/myhub/tr.git@master
#### Test
python2 demo.py               # python2兼容测试     
python3 test.py               # 可视化测试
python3 test-multi-thread.py  # 多线程测试
#### 关联项目 + 若需要Web端调用,推荐参考TrWebOCR #### How To Use?
import tr

# detect text lines, return list of (cx, cy, width, height, angle)
print(tr.detect("imgs/web.png", tr.FLAG_RECT))

# detect text lines with angle, return list of (cx, cy, width, height, angle)
print(tr.detect("imgs/id_card.jpeg", tr.FLAG_ROTATED_RECT))

# recognize text line, return (text, confidence)
print(tr.recognize("imgs/line.png"))

# detect and recognize text lines with angle, return list of ((cx, cy, width, height, angle), text, confidence)
print(tr.run("imgs/id_card.jpeg"))
#### 效果展示