2011-12-22 109 views
2

我工作的一個項目,需要一個更簡單,更精確的OCR工具簡化OCR與不變的字體

我的情景:

  • 週刊圖像都具有相同的結構
  • 我有一個我需要從
  • 需要從
  • 我需要從文本中獲取文本的一個小區域字體總是相同的(這是我可以得到更準確的地方)
  • 沒有其他選項的圖像,但平坦的光柵圖像
  • 核心軟件是在C#中,所以CLI語言將是可取的。
  • 的圖像是300個DPI所以是一個偉大的基地,從

我會用一個正常的OCR程序的工作,但我知道,如果沒有完美的結果,我可以得到更準確的結果,因爲它總是相同的字體。

那麼,什麼是一個好的方法?我不想從頭開始寫這麼多的工作,但我不想要一個經過預先訓練的過度廣義OCR工具。我想在這個字體上訓練它,這樣它會得到非常準確的結果。我也不想做特徵提取分離出的單詞和找到字母等行。

+0

我與[MODI](http://msdn.microsoft.com/en-us/library/aa167607(v = office.11​​).aspx)有過不錯的運氣;它需要客戶端安裝Office,但是YMMV。另一種選擇是[Tessnet2](http:// www。pixel-technology.com/freeware/tessnet2/) – 2011-12-22 17:54:56

+0

如果您正在創建圖像,爲什麼不使用條形碼。這比任何OCR更準確。 – 2011-12-22 20:04:41

+1

如果我正在創建這些圖像,我不需要使用OCR來知道文本所說的內容。我只是在製作圖像之前保存它... – brandon 2011-12-22 20:08:12

回答

1

我可能會使用OpenCV的機器學習(例如使用haar cascades),除非角色的位置是非常完美的靜態 - 在這種情況下,一個簡單的比較可以做到這一點(例如使用絕對差異求和找到最佳匹配)。

字體是固定的嗎?如果沒有,您可以使用其中一種特殊的OCR字體來獲取難以混淆的字符,即使是在較差的圖像上。

雖然考慮到你說過你想要教它,但你最好還是使用機器學習。

+0

字體是固定的。我不需要只知道它不同,但我需要從這兩個特定位置提取文本。如果這是有道理的話,我更喜歡readText(Rect rect,Font字體)。 (使用給定字體提取給定矩形內的文本) – brandon 2011-12-22 18:08:06

+0

使用上面提到的haar級聯,您最終會得到字母和圖像中的位置(基本上包含樣本的矩形),所以您只需要按照定位和解釋。 – Mario 2011-12-22 21:04:11

+0

我會進一步研究,這聽起來像我需要的東西。在我有包含字符的正方形之後逐字讀取將很容易。我從那裏訓練很快。 – brandon 2011-12-23 03:12:19

0

我會使用一個經濟的OCR引擎,如http://www.transym.com的TOCR。許可證費用非常便宜,OCR是快速和非常準確的結果,特別是如果您定義了一個固定的矩形來提取並且沒有背景噪音。您應該下載試用版來測試結果,然後再進行購買。

當你設置一個自定義的OCR引擎並訓練它時,你將花費比許可費少得多的錢,你可能會發現結果會更精確。

如果能夠看到一個或兩個文字,你想要OCR,那麼我們將能夠給出更準確的答案。

+0

圖像包含敏感數據。實際上我需要OCR的兩個點是敏感數據,所以一個例子是不可能的。 – brandon 2011-12-23 03:10:59

0

聽起來像你應該尋找字段級別的識別,你不完整的圖像執行OCR,但只指定一些與座標字段。如果您正在計劃商業軟件並尋求企業準確性 - 請參閱www.ocrsdk.com - 它是ABBYY最近推出的基於雲的OCR SDK。它現在處於測試階段,所以完全免費使用。它有一個很好的方法,適合從文檔中提取文本並C# sample codes