0.介紹
Tesseract是一個開源的OCR引擎盅藻,能識別100多種語言(中,英畅铭,韓,日硕噩,德假残,法...等等)炉擅,但是Tesseract對手寫的識別能力較差辉懒。
1.安裝
//先安裝依賴庫libpng, jpeg, libtiff, leptonica
brew install leptonica
//安裝tesseract的同時安裝訓(xùn)練工具
brew install --with-training-tools tesseract
//安裝tesseract的同時安裝所有語言,語言包比較大谍失,如果安裝的話時間較長耗帕,建議不安裝,按需選擇
brew install --all-languages tesseract
//安裝tesseract袱贮,并安裝訓(xùn)練工具和語言
brew install --all-languages --with-training-tools tesseract
//只安裝tesseract,不安裝訓(xùn)練工具
brew install tesseract
2.下載語言庫
下載地址:https://github.com/tesseract-ocr/tessdata
根據(jù)自己的需求選擇所要的語言庫,在這里我們選擇的是簡體中文所以選擇的庫是:chi_sim.traineddata
攒巍、eng.traineddata
將文件拷貝到到:/usr/local/Cellar/tesseract/3.04.01_2/share/tessdata目錄下嗽仪。
3.Tesseract使用
終端輸入命令:tesseract --help
一般使用:
//默認(rèn)使用eng文字庫, imgName是圖片的地址柒莉,result識別結(jié)果
tesseract imgName result
指定語言:
//指定使用簡體中文
tesseract -l chi_sim imgName result
//查看本地存在的語言庫
tesseract --list-langs
指定多語言:
//指定多語言闻坚,用+號相連
tesseract -l chi_sim+eng imgName result
有個地方需要特別注意,參數(shù)psm
//輸入命令兢孝,查看psm的參數(shù)
tesseract --help-psm
0 Orientation and script detection (OSD) only.
1 Automatic page segmentation with OSD.
2 Automatic page segmentation, but no OSD, or OCR.
3 Fully automatic page segmentation, but no OSD. (Default)
4 Assume a single column of text of variable sizes.
5 Assume a single uniform block of vertically aligned text.
6 Assume a single uniform block of text.
7 Treat the image as a single text line.
8 Treat the image as a single word.
9 Treat the image as a single word in a circle.
10 Treat the image as a single character.
翻譯(可能不是很準(zhǔn),最好看原文):
0 定向腳本監(jiān)測(OSD)
1 使用OSD自動分頁
2 自動分頁窿凤,但是不使用OSD或OCR(Optical Character Recognition,光學(xué)字符識別)
3 全自動分頁跨蟹,但是沒有使用OSD(默認(rèn))
4 假設(shè)可變大小的一個文本列雳殊。
5 假設(shè)垂直對齊文本的單個統(tǒng)一塊。
6 假設(shè)一個統(tǒng)一的文本塊窗轩。
7 將圖像視為單個文本行夯秃。
8 將圖像視為單個詞。
9 將圖像視為圓中的單個詞痢艺。
10 將圖像視為單個字符仓洼。
根據(jù)情況選擇不同的psm值,這很重要堤舒,如果選擇到不恰當(dāng)?shù)闹禃?dǎo)致識別失敗色建。