說明
1、muggle_ocr是一款輕量級(jí)的ocr識(shí)別庫,對(duì)于python來說是識(shí)別率較高的圖片驗(yàn)證碼模塊。
2、主要用于識(shí)別各種類型的驗(yàn)證碼,一般文字提取效果稍差。
安裝命令
實(shí)例
import muggle_ocr
# 初始化sdk;model_type 包含了 ModelType.OCR/ModelType.Captcha 兩種模式,分別對(duì)應(yīng)常規(guī)圖片與驗(yàn)證碼
sdk = muggle_ocr.SDK(model_type=muggle_ocr.ModelType.Captcha)
with open(r"d:\Desktop\四位驗(yàn)證碼.png", "rb") as f:
img = f.read()
text = sdk.predict(image_bytes=img)
print(text)
相關(guān)實(shí)例擴(kuò)展:
import time
# 1. 導(dǎo)入包
import muggle_ocr
"""
使用預(yù)置模型,預(yù)置模型包含了[ModelType.OCR, ModelType.Captcha] 兩種
其中 ModelType.OCR 用于識(shí)別普通印刷文本, ModelType.Captcha 用于識(shí)別4-6位簡單英數(shù)驗(yàn)證碼
"""
# 打開印刷文本圖片
with open(r"test1.png", "rb") as f:
ocr_bytes = f.read()
# 打開驗(yàn)證碼圖片
with open(r"test2.jpg", "rb") as f:
captcha_bytes = f.read()
# 2. 初始化;model_type 可選: [ModelType.OCR, ModelType.Captcha]
sdk = muggle_ocr.SDK(model_type=muggle_ocr.ModelType.OCR)
# ModelType.Captcha 可識(shí)別光學(xué)印刷文本
for i in range(5):
st = time.time()
# 3. 調(diào)用預(yù)測(cè)函數(shù)
text = sdk.predict(image_bytes=ocr_bytes)
print(text, time.time() - st)
# ModelType.Captcha 可識(shí)別4-6位驗(yàn)證碼
sdk = muggle_ocr.SDK(model_type=muggle_ocr.ModelType.Captcha)
for i in range(5):
st = time.time()
# 3. 調(diào)用預(yù)測(cè)函數(shù)
text = sdk.predict(image_bytes=captcha_bytes)
print(text, time.time() - st)
"""
使用自定義模型
支持基于 https://github.com/kerlomz/captcha_trainer 框架訓(xùn)練的模型
訓(xùn)練完成后,進(jìn)入導(dǎo)出編譯模型的[out]路徑下, 把[graph]路徑下的pb模型和[model]下的yaml配置文件放到同一路徑下。
將 conf_path 參數(shù)指定為 yaml配置文件 的絕對(duì)或項(xiàng)目相對(duì)路徑即可,其他步驟一致,如下示例:
"""
with open(r"test3.jpg", "rb") as f:
b = f.read()
sdk = muggle_ocr.SDK(conf_path="./ocr.yaml")
text = sdk.predict(image_bytes=b)
到此這篇關(guān)于python muggle_ocr庫用法及實(shí)例代碼的文章就介紹到這了,更多相關(guān)python muggle_ocr庫的介紹內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- python3使用Pillow、tesseract-ocr與pytesseract模塊的圖片識(shí)別的方法
- python3光學(xué)字符識(shí)別模塊tesserocr與pytesseract的使用詳解
- python PaddleOCR庫用法及知識(shí)點(diǎn)詳解
- python EasyOCR庫實(shí)例用法介紹
- python 如何做一個(gè)識(shí)別率百分百的OCR
- Python 實(shí)現(xiàn)任意區(qū)域文字識(shí)別(OCR)操作
- Python實(shí)現(xiàn)OCR識(shí)別之pytesseract案例詳解