2012-10-19 30 views
9

我正在使用tesseract-ocr-3.01掃描許多表單。這些表格都遵循一個模板,所以我已經知道文字的區域/矩形在哪裏。Tesseract:指定文本的區域

當使用命令行工具時,有沒有辦法將這些區域傳遞給tesseract?

回答

11

我找到了答案,這要歸功於this thread

看來tesseract支持uzn格式(用於unvl測試)。

從螺紋:

調用帶有參數的Tesseract「-psm 4」,並與圖像同名重命名文件uzn似乎 作品。

例子:如果我們有C:\input.tifC:\input.uzn,我們這樣做:

tesseract -psm 4 C:\input.tif C:\output 
3

這可能不是一個最佳答案,但這裏有雲:

我不知道的命令行工具是否有選項來指定文本區域。

你可以做的是在另一個平臺上使用Tesseract包裝(EmguCV內置Tesseract)。因此,您可以獲得掃描圖像,剪出文本區域,並一次性將它們提供給Tesseract。這樣你也可以避免Tesseract頁面佈局分析中的任何不準確。

例如。

Image<Gray,Byte> scannedImage = new Image<Gray,Byte>(path_to_scanned_image); 
//assuming you know a text region 
Image<Gray,Byte> textRegion = new Image(100,20); 
scannedImage.ROI = new Rectangle(0,0,100,20); 
scannedImage.copyTo(textRegion); 
ocr.recognize(textRegion); 
+1

呵呵,那是我的備用計劃,如果正方體不接受區:) – sashoalm