2014-02-24 36 views
0

我完全不熟悉Windows 8.1和光學字符識別,所以我承認這對我來說是一個初學者的領域。我一直在尋找在我的Win8.1應用程序中實現OCR,並發現這個漂亮的​​。不幸的是,與CameraCaptureUI不同,這個OcrControl似乎無法識別我的攝像頭;實際上它的一個hardware requirements是「內置後置攝像頭,支持1280x720或640x480分辨率的照片模式」。適用於Windows 8.1的光學字符識別應用

我的第一個問題是:有什麼辦法可以繞過這個嗎?例如,更改OcrControl的設置或Win8.1仿真器的設置。

如果沒有這種方法(或者如果您以前沒有嘗試過OcrControl),那麼我的第二個問題就是:OCR在本地是更可行還是通過調用Web服務完成?如果我要求列出一些適合我使用的.NET庫,那麼我會多花一分錢 - 我認爲這將是一件容易的事情!

無論如何,我對OCR的要求很簡單:只需從一張紙上讀取文本並將其轉換爲string或其他。非常感謝你!

回答

0

我還沒有使用OcrControl控件,但我有一些評論。首先,如果OcrControl需要「在照片模式下支持1280x720或640x480分辨率的相機」,我可以從我自己在iPhone和Android移動相機上的測試中發現,這兩種分辨率的圖像幾乎不可用於OCR,除非您在非常好的照明下拍攝非常小的照片(名片或更小的照片)。對於典型的頁面大小的圖片來說,這個分​​辨率絕對不夠。也許會工作,如果你的網頁有一個非常大的字體,如20分或更大。我的測試基於720p的「視頻」幀分辨率,與此處的要求相同。如果你絕對必須使用這些決議,我建議圖片後處理和人爲地增加分辨率。

您有豐富的OCR庫選擇。免費圖書館是絕對可用的,並在各種帖子中多次提及,只需看看SO上的其他OCR相關帖子。付費圖書館功能更強大,功能更豐富,可以容忍圖像失真,並可以從低質量的圖像中提供更高質量的文本。如果您需要跨平臺設備的訪問權限,並且您的卷低或不可預知(通常每頁支付),基於Web的API是一個不錯的選擇。如果您不想託管自己的服務器也是不錯的選擇。後端服務器上的許可軟件是一個很好的選擇,如果你的體積更大(每頁更低的成本),但它需要預先軟件許可,服務器維護等。

無論選擇哪種系統,圖像預處理都將是您的最佳選擇朋友,特別是如果您可以對您的特定相機型號或圖像進行微調清理,以適應用戶的風格。準備用於OCR的圖像,爲機器處理做準備,這意味着機器的最佳圖像不一定是最適合您的人眼的圖像。例如,將乾淨的野蠻圖像送入OCR將比預處理之前的一些原始彩色圖像產生更好的結果,即使對你我來說看起來不太好。這得到了「垃圾進出垃圾」概念的支持,今天我們不能依靠移動相機提供足夠好的出色質量,所以儘量讓圖像儘可能好。在移動設備的情況下,每個用戶還將在每張照片中引入人體元素(搖晃,低照度,失真等),這些也可能在後期處理中得到糾正。我共同編寫了一些關於圖像清理和OCR準備的文章:http://www.ocr-it.com/ocr-api-in-the-cloud-blog

免責聲明。我從15年的OCR集成經驗中獲益。我是OCR-IT Cloud API的首席開發人員,主要用於基於移動的圖像處理,因爲設備上的OCR功能較弱,後端服務器上的功能更強大。我還爲客戶實施了大量基於Windows的傳統基於服務器的OCR系統安裝,主要使用基於ABBYY服務器的產品。我還共同開發了一些面向數碼相機圖片的iPhone/Android應用程序。我還沒有在Windows Mobile平臺上開發 - 這是我在時間允許的情況下期待的。

+0

不錯的閱讀:)所有與您的OCR努力最好! – matt