日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python图片识别之 easyocr

發布時間:2023/12/20 python 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python图片识别之 easyocr 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、簡介

**easyocr**:

  • EasyOCR 是一個使用 Java 語言實現的 OCR 識別引擎(基于Tesseract)。借助幾個簡單的API,即能使用Java語言完成圖片內容識別工作。并集成了圖片清理、識別 CAPTCHA 驗證碼圖片,票據等內容的一體化工作。
  • EasyOCR不僅可以為消費者提供服務,更主要面向開發,能夠提供本地化的開發SDK集成,與 C/S,B/S 及 Android 移動端項目進行原生集成。
  • EasyOCR 4.X 新架構上線,最新版本 4.2.0。
    主要特點
  • API 極簡,一個方法,一行代碼即可完成
  • 純本地化SDK,JAVA原生支持,可作為引擎嵌入各種項目,支持 Android 移動端集成
  • 支持 API 級別的識別白名單限定,限定識別范圍
  • 支持上百種語言識別,并支持混合語言識別,如:英文+日文+德文
  • 專門針對常用票據、驗證碼圖片的清理、識別一體化實現,內置多種常見類型的驗證碼圖片選項
  • 支持自定義插件,能夠編寫基于EasyOCR一體化識別的圖片清理擴展插件
  • ETD模板支持,提供圖形化ETD模板設計工具(EasyTemplateDesigner),準確可控提高識別率
  • EasyOCR Suite 跨平臺 GUI 套件支持,為開發人員和消費者提供設計和使用工具
  • 標準輸入輸出,支持Socket網絡接口的輸入輸出
  • 支持識別訓練,基于規則的結果修正訓練,讓識別準確合理,提供后天能力增長
  • 性能卓越,默認純內存運算交換
  • 可脫離環境變量運行
  • 跨平臺支持:Window, Linux, Unix, Android

二、安裝

# 安裝穩定版本 pip install easyocr -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com # 安裝最新版本 pip install git+https://github.com/JaidedAI/EasyOCR.git

測試

import easyocr print(easyocr.__version__)

下載模型地址:

https://www.jaided.ai/easyocr/modelhub/

下載后把模型文件解壓后拷貝到用戶目錄:C:\Users\用戶名.EasyOCR\model

三、使用

Reader 方法詳解:

  • lang_list (list):識別語言代碼,比如[‘ch_sim’,’en’]分別表示簡體中文和英文。
  • gpu (bool, string, default = True) :是否使能GPU,只有安裝了GPU版本才有效。
  • model_storage_directory (string, default = None) :模型存儲位置,依次查找系統變量
  • download_enabled (bool, default = True):如果沒有對應模型文件時,自動下載模型。
  • user_network_directory (bool, default = None) :用戶自定義識別網絡的路徑
  • recog_network (string, default = ‘standard’) :替代標準模型,使用自定義的識別網絡。
  • detector (bool, default = True) :是否加載檢測模型。
  • recognizer (bool, default = True) :是否加載識別模型。

readtext 方法詳解

  • image (string, numpy array, byte) : 輸入圖像;
  • decoder (string, default = ‘greedy’):選項有 ‘greedy’、‘beamsearch’ 和 ‘wordbeamsearch’;
  • beamWidth (int, default = 5) : 當解碼器 = ‘beamsearch’ 或 ‘wordbeamsearch’ 時要保留多少光束;
  • batch_size (int, default = 1) : batch_size>1 將使 EasyOCR 更快但使用更多內存;
  • worker (int, default = 0) : 數據加載器中使用的編號線程;
  • allowlist (string) : 強制 EasyOCR 只識別字符的子集。對特定問題有用(例如車牌等);
  • blocklist (string) : 字符的塊子集。如果給定了允許列表,則此參數將被忽略。
  • detail (int, default = 1): 將此設置為 0 以進行簡單輸出;
  • paragraph (bool, default = False):將結果合并到段落中;
  • min_size (int, default = 10) : 過濾文本框小于最小值(以像素為單位);
  • rotation_info (list, default = None) : 允許 EasyOCR 旋轉每個文本框并返回具有最佳置信度分數的文本框。符合條件的值為 90、180 和 270。例如,對所有可能的文本方向嘗試 [90, 180 ,270]。
  • contrast_ths (float, default = 0.1) : 對比度低于此值的文本框將被傳入模型 2 次。首先是原始圖像,其次是對比度調整為“adjust_contrast”值。結果將返回具有更高置信度的那個;
  • adjust_contrast (float, default = 0.5) : 低對比度文本框的目標對比度級別。
  • text_threshold (float, default = 0.7) : 文本置信度閾值
  • low_text (float, default = 0.4) : 文本下限分數
  • link_threshold (float, default = 0.4) : 鏈接置信度閾值
  • canvas_size (int, default = 2560) :最大圖像尺寸。大于此值的圖像將被縮小。
  • mag_ratio (float, default = 1) :圖像放大率
  • slope_ths (float, default = 0.1) - 考慮合并的最大斜率 (delta y/delta x)。低值意味著不會合并平鋪框。
  • ycenter_ths (float, default = 0.5) - y 方向的最大偏移。不應該合并不同級別的框。
  • height_ths (float, default = 0.5) - 盒子高度的最大差異。不應合并文本大小非常不同的框。
  • width_ths (float, default = 0.5) - 合并框的最大水平距離。
  • add_margin (float, default = 0.1) - 將邊界框向所有方向擴展某個值。這對于具有復雜腳本的語言(例如泰語)很重要。
  • x_ths (float, default = 1.0) - 當段落=True 時合并文本框的最大水平距離。
  • y_ths (float, default = 0.5) - 當段落 = True 時合并文本框的最大垂直距離。

調用方式

import easyocrreader = easyocr.Reader(['ch_sim', 'en']) result = reader.readtext('xxxx.png') for res in result:print(res)

總結

以上是生活随笔為你收集整理的python图片识别之 easyocr的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。