Tesseract 詳細配置
在進行光學字符識別(OCR)時,擁有選項和靈活性對於如何處理和從文檔中提取文本至關重要。 由於執行 OCR 的成本較高,因此需要能夠控制對特定文件使用的性能和方法,以確保使用 OCR 的應用程序具有可擴展性和高效性。
IronTesseract 提供開發者多種屬性和選項以供調整。 例如,如果您想要列入黑名單的某些字符,或者想要讀取文檔中的條形碼,甚至想指定 OCR 引擎如何掃描頁面來檢測潛在的文本區塊,這一切以及更多功能都可以通過 IronTesseract
類來實現。
使用 IronOCR 與 Tesseract 5 的五步指南
var ocrTesseract = new IronTesseract();
ocrTesseract.Language = OcrLanguage.EnglishBest;
ocrTesseract.Configuration.ReadBarCodes = false;
ocrTesseract.Configuration.BlackListCharacters = "`ë ^";
ocrTesseract.Configuration.TesseractVariables["tessedit_parallelize"] = false;
在初始化 IronTesseract
類別後,有幾個重要的選項我們可能需要立即修改。 第一個要配置的屬性是 Language
。 默認情況下,語言是英語; 然而,IronTesseract
支援多達 125 種語言,甚至可使用 UseMultipleLanguages
方法同時支援多種語言。 如需更多詳細信息,請參閱這裡.
我們要配置的第二個屬性是 TesseractConfiguration
類別。 透過這個類別,我們可以修改 Tesseract 引擎如何掃描文件以尋找潛在的文字區塊。 首先,我們通過將語言分配給 OcrLanguage.EnglishBest
來修改 Tesseract 引擎的語言。 此變體結合了 LTSM 和 OEM,這是使用 OCR 的形狀識別策略; 結合這兩種策略可以使OCR產生更準確的結果。 之後,我們將 ReadBarCodes
設為 false,以避免在 OCR 過程中讀取條碼。
我們也進一步自訂規則,透過將文件中的某些字符加入黑名單來指定我們想要提取的字符; 在此示例中,我們將字符列入黑名單,以避免提取帶有反引號、重音或插入符號的文本。 最後,我們設置 TessreactVariables
["tessedit_parallelize"]to false 以暫時停用平行處理。 最後一個是非常強大的功能,因為它直接與 Tesseract 引擎通信。[這裡](https://ironsoftware.com/csharp/ocr/how-to/iron-tesseract/)是
TesseractVariables`的完整列表,允許開發人員在執行OCR時進一步自訂Tesseract引擎的行為。 點擊此處查看操作指南,包括範例、示例代碼和文件。