2010-04-08 85 views
2

我製作的圖案:帶有不同大小(從12到72:12,14,...,72)的「A」字母的圖像 我測試了模式匹配的方法,好的結果。 從圖像中選擇文本區域的一種方法是針對所有大小不一的字母和數字運行該算法。和字體! 我不喜歡它。取而代之的是我想要的東西像一個通用模式或 更好地說:掃描圖像以不同的窗口大小,選擇這些地區,其中一些功能(的存在,在該窗口中字符的概率)是比一些固定值以上。 你知道任何方法或想法來實現該功能嗎? 它必須使用原始圖像(灰度)。灰度圖像中的字符匹配

回答

2

我想你正在開發的OCR,對不對?

你決定去相當不尋常的道路,因爲每個人都在黑白圖像進行匹配。這使得一切變得更簡單。一旦你正確降解它(這本身就是非常困難的任務),你不必處理不同的亮度級別,照顧不均勻的背景等。當然,需要更少的計算資源。然而,做灰度級事情實際上是您的目標,您想向其他OCR科學家展示它實際上是可行的 - 那麼,祝您好運。你描述的字母位置的

做法是極極極計算intesive。你必須掃描整個圖像(image_size^2),然後匹配模式(* pattern_size^2),然後爲每個模式(* pattern_num)執行。這將非常慢。

而是儘量簡化你的算法來打破它分爲兩個階段。首先應該在圖片上尋找一些特徵(例如連接的黑暗區域,或者在大方塊上分割圖像並丟棄所有亮塊),然後才能在少量找到的區域上執行圖案匹配。這至少是N^2,並且您可以嘗試降低複雜性,以便首先處理圖像的行或列(通過創建直方圖)。所以有很多不同的簡化方法可供您嘗試。

在圖片上找到這些對象並匹配它們上的圖案之後,您確實知道它們的大小,因此您不必在所有尺寸中存儲字母A,只需將對象的原始圖像重新縮放到大小說72,並匹配它。

至於字體 - 在這裏你沒有太多的選擇,你需要匹配A的所有可能的形狀,以確保你找到答案。但是,一旦你匹配A的一個尺寸 - 你有更多的計算能力來嘗試不同的A。