darknet-ocr中文自然场景文字检测及识别
darknet-ocr 是基于 darknet 框架,实现 CTPN 版本自然场景文字检测与 CNN+CTCOCR 文字识别的项目。目前支持系统:mac/ubuntu python=3.6
实现功能
- [x] 文字方向检测 0、90、180、270度检测(支持dnn/tensorflow)
- [x] 支持(darknet/opencv dnn /keras)文字检测,支持darknet/keras训练
- [x] 不定长OCR训练(英文、中英文) crnn\dense ocr 识别及训练 ,新增pytorch转keras模型代码(tools/pytorch_to_keras.py)
- [x] 支持darknet 转keras, keras转darknet, pytorch 转keras模型
- [x] 身份证/火车票结构化数据识别
- [x] 新增CNN+ctc模型,支持DNN模块调用OCR,单行图像平均时间为0.02秒以下
- [ ] CPU版本加速
- [ ] 支持基于用户字典OCR识别
- [ ] 新增语言模型修正OCR识别结果
- [ ] 支持树莓派实时识别方案
ocr 训练数据集(压缩包解码:chineseocr)
百度网盘链接:https://pan.baidu.com/s/1UcUKUUELLwdM29zfbztzdw 提取码: atwn
gofile 地址:http://gofile.me/4Nlqh/uT32hAjbx 密码 https://github.com/chineseocr/chineseocr
环境部署
GPU部署 参考:setup.md
CPU部署 参考:setup-cpu.md
下载编译 darknet
git clone https://github.com/pjreddie/darknet.git
mv darknet chineseocr/
##编译对GPU、cudnn的支持 修改 Makefile
#GPU=1
#CUDNN=1
#OPENCV=0
#OPENMP=0
make
修改 darknet/python/darknet.py line 48
root = '/root/'##chineseocr所在目录
lib = CDLL(root+"chineseocr/darknet/libdarknet.so", RTLD_GLOBAL)
下载模型文件
模型文件地址:
- 百度网盘:https://pan.baidu.com/s/1gTW9gwJR6hlwTuyB6nCkzQ
other-links:http://gofile.me/4Nlqh/fNHlWzVWo
复制文件夹中的所有文件到models目录
模型转换(非必须)
pytorch ocr 转 keras ocr
python tools/pytorch_to_keras.py -weights_path models/ocr-dense.pth -output_path models/ocr-dense-keras.h5
darknet 转 keras
python tools/darknet_to_keras.py -cfg_path models/text.cfg -weights_path models/text.weights -output_path models/text.h5
keras 转 darknet
python tools/keras_to_darknet.py -cfg_path models/text.cfg -weights_path models/text.h5 -output_path models/text.weights
模型选择
参考config.py文件
构建 Docker 镜像
##下载Anaconda3 python 环境安装包(https://repo.anaconda.com/archive/Anaconda3-2019.03-Linux-x86_64.sh) 放置在chineseocr目录下
##建立镜像
docker build -t chineseocr .
##启动服务
docker run -d -p 8080:8080 chineseocr /root/anaconda3/bin/python app.py
Web 服务启动
cd chineseocr## 进入chineseocr目录
python app.py 8080 ##8080端口号,可以设置任意端口
访问服务
评论
场景文字识别模型梳理
STR pipeline
场景文字识别(scene text recognition),简称为STR。最近对STR做了一下调研,相关论文可以记录在scene text recognition papers中。当前流行的各种方法经过抽象和模块化,可以得到文章开头的pipeline图和文章末尾的framework。
具体而言,STR可以分为三个模块Image Rectifier、Image To Feature Sequence、Seq2seq。
IMAGE RECTIFIER
这个模块隐式地学习如何把文字图像进行矫正,使得模型对于弯曲和视角具备一定的鲁棒性。该模块输入和输出均为图像。该模块是可选项,可要可不要。
IMAG
mileistone
0
chineseocr中文自然场景 OCR 工具
chineseocr是一款 OCR工具,基于yolo3与crnn实现中文自然场景文字检测及识别。实现功能文字方向检测0、90、180、270度检测(支持dnn/tensorflow)支持(darkne
chineseocr中文自然场景 OCR 工具
0
文字识别
[cp]所谓的移动警务通,移动端证件识别信息采集是指,使用成熟的OCR文字识别技术,通过手机或者带有摄像头的终端设备对身份证在做视频流扫描识别,提取证件的照片做OCR文字识别,实现提取身份证信息,裁剪头像,并且存入证件信息数据库,不仅集合了身份证识别还包括驾驶证识别,行驶证识别,护照识别、港澳台胞证识别等。优点是:方案成本低,用于智能移动设备,使用环境方便,功能容易扩展。
可提供SDK做二次开发(现在可以提供安卓、iOS、私有云、公有云等的证件识别SDK)
证件识别应用场景:
出租屋证件识别:入住旅客登记
流动人口管理:入户普查
特种行业:开锁业、家政、中介等行业证件识别登记
展会、访
十七岁的权志龙
0