python自然场景文字识别_chineseocr
本項(xiàng)目基于yolo3 與crnn 實(shí)現(xiàn)中文自然場(chǎng)景文字檢測(cè)及識(shí)別
master分支將保留一周,后續(xù)app分支將替換為master
實(shí)現(xiàn)功能
文字方向檢測(cè) 0、90、180、270度檢測(cè)(支持dnn/tensorflow)
支持(darknet/opencv dnn /keras)文字檢測(cè),支持darknet/keras訓(xùn)練
不定長(zhǎng)OCR訓(xùn)練(英文、中英文) crnn\dense ocr 識(shí)別及訓(xùn)練 ,新增pytorch轉(zhuǎn)keras模型代碼(tools/pytorch_to_keras.py)
支持darknet 轉(zhuǎn)keras, keras轉(zhuǎn)darknet, pytorch 轉(zhuǎn)keras模型
新增對(duì)身份證/火車票結(jié)構(gòu)化數(shù)據(jù)識(shí)別
新增語音模型修正OCR識(shí)別結(jié)果
新增CNN+ctc模型,支持DNN模塊調(diào)用OCR,單行圖像平均時(shí)間為0.02秒以下
優(yōu)化CPU調(diào)用,識(shí)別速度與GPU接近(近期更新)
環(huán)境部署
GPU部署 參考:setup.md
CPU部署 參考:setup-cpu.md
下載編譯darknet(如果直接運(yùn)用opencv dnn或者keras yolo3 可忽略darknet的編譯)
git clone https://github.com/pjreddie/darknet.git
mv darknet chineseocr/
##編譯對(duì)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)
下載模型文件
模型文件地址:
復(fù)制文件夾中的所有文件到models目錄
模型轉(zhuǎn)換
pytorch ocr 轉(zhuǎn)keras ocr
python tools/pytorch_to_keras.py -weights_path models/ocr-dense.pth -output_path models/ocr-dense-keras.h5
darknet 轉(zhuǎn)keras
python tools/darknet_to_keras.py -cfg_path models/text.cfg -weights_path models/text.weights -output_path models/text.h5
keras 轉(zhuǎn)darknet
python tools/keras_to_darknet.py -cfg_path models/text.cfg -weights_path models/text.h5 -output_path models/text.weights
編譯語言模型
git clone --recursive https://github.com/parlance/ctcdecode.git
cdctcdecode
pip install .
下載語言模型
wget https://deepspeech.bj.bcebos.com/zh_lm/zh_giga.no_cna_cmn.prune01244.klm
mvzh_giga.no_cna_cmn.prune01244.klm chineseocr/models/
web服務(wù)啟動(dòng)
cdchineseocr## 進(jìn)入chineseocr目錄
ipython app.py 8080 ##8080端口號(hào),可以設(shè)置任意端口
構(gòu)建docker鏡像
##下載Anaconda3 python 環(huán)境安裝包(https://repo.anaconda.com/archive/Anaconda3-2019.03-Linux-x86_64.sh) 放置在chineseocr目錄下
##建立鏡像
docker build -t chineseocr .
##啟動(dòng)服務(wù)
docker run -d -p 8080:8080 chineseocr /root/anaconda3/bin/python app.py
識(shí)別結(jié)果展示
訪問服務(wù)
參考
總結(jié)
以上是生活随笔為你收集整理的python自然场景文字识别_chineseocr的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 拼音缩写是啥意思_NMSL?AWSL?这
- 下一篇: python 中求最大值问题_Pytho