首頁  >  文章  >  後端開發  >  Python怎麼能使用EasyOCR工具來辨識圖片文本

Python怎麼能使用EasyOCR工具來辨識圖片文本

WBOY
WBOY轉載
2023-04-30 09:40:062351瀏覽

什麼是EasyOCR ?

描述: EasyOCR 是一個用於從圖像中提取文本的python 模組, 它是一種通用的OCR,既可以讀取自然場景文本,也可以讀取文檔中的密集文本。目前支援 80 多種語言和所有流行的書寫腳本,包括:拉丁文、中文、阿拉伯文、梵文、西里爾文等。

EasyOCR 是 PyTorch 實現的一個光學字元辨識 (OCR) 工具。

Q: 使用EasyOCR 可以做什麼?

描述: EasyOCR 支援兩種方式運行一種是常用的CPU,而另外一種是需要GPU支援並且需安裝CUDA環境, 我們使用其可進行圖片中語言文字辨識, 例如小程式裡圖片辨識、車輛車牌辨識(即車債管理系統)。

安裝 EasyOCR

在命令視窗中,使用 pip 安裝 EasyOCR 穩定版本。

pip install easyocr

使用 EasyOCR

import easyocr

reader = easyocr.Reader(
    ['ch_sim', 'en'],
    gpu=False,
    model_storage_directory='model/.',
    user_network_directory='model/.',
)
result = reader.readtext('examples/chinese.jpg')

執行上面的程式碼時,會自動透過網路下載偵測與識別模型到指定目錄下。

  • ['ch_sim', 'en'],: 指定識別的語言

  • gpu=False,: 設定是否使用GPU (EasyOCR在GPU上運行效率更高, 沒有GPU或GPU記憶體不足時設定False)

  • model_storage_directory='model/.',: 偵測與識別模型的儲存路徑(沒有設定時預設儲存在~/.EasyOCR/model目錄)

識別結果result 是一個列表,列表中的每一項都是一個長度為 3 的辨識結果,例如([[189, 75], [469, 75], [469, 165], [189, 165]], '愚園路', 0.3754989504814148) ,它們分別是邊界框偵測到的文字置信度 值。

easyocr-server

EasyOCR 伺服器是一個用於從映像中提取文字。它是一種通用的 OCR,既可以讀取自然場景文本,也可以讀取文件中的密集文本。目前支援 80 種語言,並且還在擴展中。

安裝步驟

步驟 0. 從 GitHub 下載 easyocr-server 並安裝。

git clone https://github.com/hekaiyou/easyocr-server.git

步驟 1. 使用 PyPI 安裝 easyocr、 bottle 和 gevent 模組。

cd easyocr-server
pip install -r requirements.txt

驗證安裝

python main.py
  • Browser: http://localhost:8080/ocr/

  • #CMD: curl http://localhost:8080/ocr/ -F "language=en" -F "img_file=@examples/english.png"

#驗證成功後,您應該能夠在瀏覽器中看到列印的推理結果。

Python怎麼能使用EasyOCR工具來辨識圖片文本

透過 Docker 部署服務

我們提供了一個 Dockerfile 來建構映像。

docker build -t easyocr-server:latest .

運行它。

docker run -it -v {DATA_DIR}:/workspace/model -p 8083:8080 easyocr-server:latest
Language Code Name
Abaza abq
Adyghe ady
Afrikaans af
Angika ang
Arabic ar
Assamese as
Avar ava
Azerbaijani az
Belarusian be
Bulgarian bg
Bihari bh
Bhojpuri bho
Bengali bn
Bosnian bs
Simplified Chinese ch_sim
Traditional Chinese ch_tra
Chechen che
Czech cs
Welsh cy
Danish da
Dargwa dar
German de
English en
Spanish es
Estonian et
Persian (Farsi) fa
French fr
Irish ga
Goan Konkani gom
Hindi hi
Croatian hr
Hungarian hu
Indonesian id
Ingush inh
Icelandic is
Italian it
Japanese ja
Kabardian kbd
Kannada kn
Korean ko
Kurdish ku
Latin la
Lak lbe
Lezghian lez
Lithuanian lt
Latvian lv
Magahi mah
Maithili mai
Maori mi
Mongolian mn
Marathi mr
Malay ms
Maltese mt
Nepali ne
Newari new
Dutch nl
Norwegian no
Occitan oc
Pali pi
Polish pl
Portuguese pt
Romanian ro
Russian ru
Serbian (cyrillic) rs_cyrillic
Serbian (latin) rs_latin
Nagpuri sck
Slovak sk
Slovenian sl
Albanian sq
Swedish sv
Swahili sw
Tamil ta
Tabassaran tab
Telugu te
Thai th
Tajik tjk
Tagalog tl
Turkish tr
Uyghur ug
Ukranian uk
Urdu ur
Uzbek uz
Vietnamese vi

以上是Python怎麼能使用EasyOCR工具來辨識圖片文本的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除