2015-05-09 96 views
0

我想爲信德做OCR,在Android應用程序中,這個想法是讓人在屏幕上書寫,然後捕捉框架,然後將其與預先保存的單詞的圖像進行比較手機,以及與該框架匹配最多的圖像(使用FLANN?)將會有一些文字反對它,而我只是想要發音。所以請告訴我,如果我的方法是錯誤的,因爲我是Android和OpenCV的新手,或者告訴我如何開始?Opencv與Android- OCR

回答

2

如果我理解你的目標,你想比較手機屏幕上寫的文字和文字出現的圖像,對不對?

我在Android上做了一些OCR,並且使用了OpenCV和Tesseract。

Tesseract是一款真正的OCR引擎,但您需要擁有儘可能「乾淨」的圖像。這就是爲什麼在使用Tesseract之前需要OpenCV清理它們的原因。

所以給你我的工作流程的主線進行的類似應用程序:

  1. 獲取用戶寫入的字符串或ar中的文本一串串。

  2. 經過OpenCV的獲取您預先保存的圖像

  3. 處理它們,OpenCV的主要用於這裏由擺脫噪聲尤其是清潔圖像。您應該嘗試使用Glaussian Blur,然後使用Adaptive Threshold和Bitwise-NOT(OCR引擎更好地處理您使用Bitwise-NOT獲得的黑白圖像)

  4. 使用OpenCV獲得一些乾淨的圖像後,通過Tesseract處理這些圖像。這會爲每個包含圖像上檢測到的文字的圖像提供一個字符串。

  5. 將您在Tesseract上收集的不同字符串與用戶的文本進行比較,解析每個單詞以找出與最佳匹配的文本。

對於您的應用的音頻部分,我不知道如何繼續,他們必須是一些可能有所幫助的圖書館。

你必須知道,在Android上使用所有這些庫是一個相當掙扎,你可能有與該項目的建設問題,請清楚,提供在其官方網站不同的文檔。