2014-03-02 105 views
0

我想使用tesseract OCR在屏幕的矩形區域上使用Visual Studio C#上的c#獲取文本。
使用tesseract分析屏幕上矩形區域的步驟

首先,在Visual Studio C#中獲取tesseract需要什麼?我新來使用Visual Studio並設置包裝。在Google上搜索幾個小時後,我發現我需要:a wrapper(charlesw),這是官方網站的語言包。我是否也需要安裝windows tesseract-ocr?

我已按照charlesw的GitHu上的步驟在我的項目中設置包裝。但是,我仍然不確定如何使用這些功能。

我想這是如何聲明OCR引擎: TesseractEngine engine = new TesseractEngine(@"./tessdata", "eng", EngineMode.Default);

分析屏幕上的矩形區域,我可以捕捉特定區域的屏幕,然後將其保存以.bmp或.TIF。接下來,使用引擎分析圖像。 engine.[unkwonapi](imagepath); //what is the api name going to be? I tried to look it up [here][2]. 或者,有人說可以通過使用tesseract的api來完成,在那裏我們可以輸入矩形區域的協調。

回答

1

包裝器捆綁Tesseract DLL(如libtesseract302.dll)。你不需要安裝windows tesseract-ocr;事實上,你不應該這樣做,因爲它會干擾包裝。

您可以使用下面的圖像上指定的感興趣區域:

engine.Process(Bitmap image, Rect region, PageSegMode? pageSegMode = null) 

engine.Process(Pix image, Rect region, PageSegMode? pageSegMode = null) 
+0

感謝您的答覆。我可以將多少個參數傳遞給Process()?有沒有一個詳細的文件,我可以看看?另外,如何在Process()之後檢索文本? – RoastDuck

+0

'Process'返回一個'Page'對象,它有多種可以調用的方法來返回OCR文本。檢查項目的單元測試的使用情況。 – nguyenq