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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

EasyOcr 安装(linux、docker)、使用(gin、python)

發(fā)布時間:2023/12/10 linux 111 豆豆
生活随笔 收集整理的這篇文章主要介紹了 EasyOcr 安装(linux、docker)、使用(gin、python) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

EasyOcr git地址

EasyOCR是一款用python語言編寫的OCR第三方庫,同時支持GPU和CPU,目前已經(jīng)支持超過70種語言.

安裝(CPU)

注意:

  • 本文是在僅在cpu下使用。如要使用CUDA版本,請在pytorch網(wǎng)站上選擇正確的,并關閉此文章。(開玩笑,容器安裝支持)
  • easyocr 不支持32位的python(經(jīng)歷了數(shù)個小時的血淚教訓:python3.8-32)
  • 初次使用時,會自動下載所用到的模型,我們可以先下載easyocr所要用到的模型
  • 模型官網(wǎng)地址:估計你也不可用,我的百度網(wǎng)盤 提取碼:vhsy

Windows

  • 安裝 easyocr: pip3 install easyocr (安裝除了模型文件之外的所有依賴)
  • 如果在安裝Torch、Torchvision時出錯:whl包 可按照自己的版本自行下載安裝

Linux

  • 安裝 easyocr: pip3 install easyocr (安裝除了模型文件之外的所有依賴)
  • 博主在ubuntu:18.04上安裝 西內(nèi)!!!(遇到了本文最后的問題)
  • 直接git clone 源碼,之后: sudo python3 setup.py install。ok!!!

模型存放位置

  • Windows:C:\Users\用戶名.EasyOCR\model
  • Linux:~/ .EasyOCR / model

創(chuàng)建鏡像,啟動容器

  • 下載git中的Dockerfile

  • 創(chuàng)建鏡像:

    mkdir easyocr # 把Dockerfile 放easyocr docker build -t easyocr . # 創(chuàng)建名為easyocr的鏡像
  • 啟動容器:

    docker run -d -p 18888:18888 -v /home/fxm/easyocr/:/home/fxm/easyocr/ --name ocr -it 鏡像id /bin/bash # -d -p 18888:18888: 指定綁定本機端口(如果要啟服務,需要開啟,其他忽略) # -v /home/fxm/easyocr/:/home/fxm/easyocr/ 掛載目錄,存放代碼文件 # --name easyocr 容器名為easyocr

代碼

test.py

import easyocr import sys# 創(chuàng)建reader對象 reader = easyocr.Reader(['en'], gpu=False) # 讀取圖像 file_name = sys.argv[1] result = reader.readtext(file_name, detail=0) # 結果 print(result[0])

main.go

package mainimport ("fmt""github.com/gin-gonic/gin""os""os/exec" )func main() {r := gin.Default()r.POST("/get_pic", func(c *gin.Context) {file, err := c.FormFile("pic")if err != nil {c.String(302, "沒有圖片")return}filename := file.Filename// 判斷圖片存在 刪除if _, err := os.Stat(filename); err == nil {_ = os.Remove(filename)}if err := c.SaveUploadedFile(file, filename); err != nil {c.String(302, "圖片保存異常", err)return}cmd := exec.Command("python3", "test.py", filename)// 執(zhí)行命令,并返回結果output, err := cmd.Output()if err != nil {c.String(302, "圖片異常", err)return}err = os.Remove(filename)if err != nil {fmt.Println("刪除失敗")c.String(302, "未知異常", err)return}_ = cmd.Wait()res := string(output[:len(output) - 1])c.String(200, res)return})_ = r.Run("0.0.0.0:18888") // listen and serve on 0.0.0.0:8080 }
  • 如不需服務 test.py放入easyocr文件夾下 即可
  • 將main.go 編譯后放入easyocr文件夾下,進入容器,執(zhí)行 編譯后的執(zhí)行文件

驗證(python版本)

import requestspath = "1.jpg" url = "http://ip:18888/get_pic" files = {'pic': open(path, 'rb')} r = requests.post(url=url, files=files).content.decode() print(r)

問題

  • ModuleNotFoundError: No module named ‘skbuild’

    pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple scikit-build
  • Problem with the CMake installation, aborting build. CMake executable is cmake

    一:pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple cmake二:1. 下載最近的源git clone https://github.com/scikit-build/scikit-build cd scikit-build2. 開始安裝pip install .# 采用上述方法之后仍然報錯

總結

以上是生活随笔為你收集整理的EasyOcr 安装(linux、docker)、使用(gin、python)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。