開源免費圖片文字識別 OCR 工具 tesseract v4.1.0 的 Docker 鏡像製作與使用

  • 2019 年 10 月 4 日
  • 筆記

版權聲明:本文為博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。

本文鏈接:https://blog.csdn.net/solaraceboy/article/details/100525225

開源免費圖片文字識別 OCR 工具 tesseract v4.1.0 的 Docker 鏡像製作與使用

一 背景

在日常的一些工作中,偶爾也需要我們把圖片轉換為文字。目前大部分辦公軟件還無法實現類似的功能,因此遇到類似的問題時,我們只能自己動手解決。

Tesseract(識別引擎),一款由HP實驗室開發由Google維護的開源OCR(Optical Character Recognition , 光學字符識別)引擎,與Microsoft Office Document Imaging(MODI)相比,我們可以不斷的訓練的庫,使圖像轉換文本的能力不斷增強;如果團隊深度需要,還可以以它為模板,開發出符合自身需求的OCR引擎。在 GitHub 上我們目前能看到的最新版本為:v4.1.0。 本文以 CentOS7.6.1810 為例對 Tesseract 的安裝及使用進行演示。為了減少大家重複造輪子,本文已將安裝過程整理為 Docker 鏡像,需要的小夥伴直接使用文中的 Dockerfile 即可構建鏡像,進而實現開箱即用。

二 鏡像的構建過程

2.1 準備階段

將 Dockerfile 及相關的資源包放到同一目錄。構建目錄結構:

build/  ├── 4.1.0.tar.gz  ├── Dockerfile  ├── leptonica-1.78.0.tar.gz  └── tesseract_langs.tar.gz

2.2 構建命令

docker build -t tesseract-ocr:0903.1.00 .

2.3 Dockerfile

FROM  centos:7.6.1810  LABEL ANTHOR="IVAN DU" VERSION="0903.0.01" BUILD_DATE="2019-09-03"         RESOURCES="https://github.com/tesseract-ocr/tesserac http://www.leptonica.org/index.html https://github.com/tesseract-ocr/tessdata"  ENV   LD_LIBRARY_PATH="/usr/local/lib"         LIBLEPT_HEADERSDIR="/usr/local/include"         PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"         TESSDATA_PREFIX="/usr/local/share/tessdata"  ADD   4.1.0.tar.gz /  ADD   leptonica-1.78.0.tar.gz /  ADD   tesseract_langs.tar.gz /usr/local/share/tessdata/  RUN   yum -y install file automake libjpeg-devel libpng-devel libtiff-devel zlib-devel libtool gcc-c++ make         && cd /leptonica-1.78.0 && ./configure && make && make install         && cd /tesseract-4.1.0 && ./autogen.sh && ./configure && make && make install         && rm -rf /leptonica-1.78.0 /tesseract-4.1.0

2.4 文章相關資源

本文涉及到的所以資源均已上傳至 CSDN ,如有需要,自行下載即可。

2.5 驗證

docker run --rm -v ${PWD}:/data ace78e7ad3b5 tesseract /data/3.jpg /data/gysl -l chi_sim  Tesseract Open Source OCR Engine v4.1.0 with Leptonica  cat gysl.txt  在 日 常 的 一 些 工 作 中 , 俊 爾 也 霽 妮 我 們 技 圖 片 轉 振 為 文 字 , 目 前 大 鄂 分 力 公 軟 作 廷 無 法 實 現 婁 伯 的 功  解 , 因 止 通 到 羔 佑 的 問 題 時 , 我 們 司 能 自 已 動 手 航    Tesseract (iR8S| 敷 ) , 一 欲 由 HP 實 駕 室 開 發 由 Google 雕 護 的 開 源 0CR (Oplcal Character  Recogniton , 光 學 字 祖 R3J) 引 摸 , 與 Microsoft Ofce DocumentImagmg (MODI) 相 比 , 我 們 可 以 不  斷 的 州 練 的 庫 , 俚 圖 僧 轉 浩 文 本 的 能 力 不 抗 增 強 ; 如 松 團 隊 深 度 靄 要 , 還 可 以 以 它 為 模 松 , 開 發 出 等 合  自 軀 的 OCRS| 敷 , 在 GItHub 上 我 們 目 前 能 睿 刺 的 最 新 版 本 為 : v4 10。 本 文 以 Cent0S7 6 1810  為 偉 Tesseract 的 安 裝 司 儉 用 跡 行 演 示 , 為 了 源 少 大 家 重 夏 迢 子 , 本 文 已 旅 安 裝 程 坪 理 為 Docker  鎬 像 , 霏 要 的 小 仁 伴 眼 接 俠 用 文 中 的 Dockerfie 卵 可 皎 鎬 像 , 進 市 宇 現 開 鍇 卯 用 .

識別內容為本文第一段除了標題部分內容。效果並不佳。試了一下英文資料的識別,比中文要好不少。

三 總結

3.1 Tesseract 目前對中文的識別效果並不好,不推薦使用。如果你不介意多花時間,可以考慮使用它提供的訓練功能自定義你的語言庫,那樣在特定場景下識別率應該能上一個台階。

3.2 純英文內容可以試一下。

3.3 文章的資源包及鏡像在本人CSDN相關賬戶下可以找到,不想耗費時間只想直接使用的小夥伴歡迎直接下載。

3.4 Tesseract 還有 Python 版本和 windows 版本。