爬蟲遇到了驗證碼無法識別?
PDF 裏的掃描文檔讓你無從下手?
公司的有 OCR 需求但又不想花錢?
寫論文就想 抄參考 一段,但文庫下載都要收費?
不用擔心這些了!
來吧朋友,這款適合人類食用的離線中文 OCR 項目解決你所有的煩惱!
今天的主角就是這款在 github 上開源的項目:TrWebOCR
介紹
項目是基於開源離線 OCR 項目 Tr構建的,
解決了 Tr 不支持併發的問題,
並且提供了 web 頁面和 web 接口可使用,
因此無論是日常的使用還是其他項目調用也都十分的方便。
效果
明人不說暗話,是騾子是馬拉出來遛遛就知道了!
下面是可能比較常用的兩個場景:文檔和驗證碼的識別。
文檔識別的置信度基本在 99%,驗證碼識別出的置信度也在 72%以上。
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-J7faMyZQ-1588778904711)(https://images.alisen39.com/20200501171943.png ‘文檔識別’)]
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-XWIFesw1-1588778904713)(https://images.alisen39.com/20200501172533.png ‘驗證碼識別’)]
這極簡的界面,
超高的識別率,
強大的功能,
你心動了嗎?
如何安裝
再優秀的東西,
如果安裝就得花上半天,
那也足以勸退很多人,
因此,
它的部署起來是極其容易的。
即使你想在自己的 Windows 或 MacOS 上部署也沒有問題,
通過 Docker 就可以完美解決~
在 Linux 服務器部署
在服務器上部署只需要 3 步:
- 安裝 python3.7
推薦使用 [miniconda](https://docs.conda.io/en/latest/miniconda.html )
- 執行 install.py
python install.py
- 安裝依賴包
pip install -r requirements.txt
搞定!
運行 main.py後,
web 服務默認運行在 8089 端口,
看到以下輸出就代表運行成功了:
$ python backend/main.py
> tr 1.5.0 https://github.com/myhub/tr
> server is running: 0.0.0.0:8089
如果有報錯,可以參考項目的 wiki 來解決
在 Docker 部署
在 Docker 上部署就更加簡單了,
該方法適合非 Linux 的用戶,
或者對環境有潔癖的用戶。
項目提供了 Dockerfile
,
只需要簡單的build
, run
就可以運行了!
- 編譯 Dockerfile
$ docker build -t TrWebOCR:latest .
- 運行一個容器
$ docker run -itd -p 8089:8089 --name trweb trweb-ocr:latest /bin/bash
這裏把容器的 8089 端口映射到了物理機的 8089 上,
但如果你不喜歡映射,
去掉 run 後面的 -p 8089:8089
,
就可以通過 Docker 容器的 ip 來訪問了。
配置的要求
最後一點,也是最重要的一點。
該項目不需要太高的配置!!!
一個 1 核 2G的機器就能夠跑得起來了!
但如果你的項目對併發的要求比較高的話,
還是得上高配置一點的機器~