2013-01-02 58 views
2

我正在開發將檢測字母的圖像識別軟件。我想知道如何創建一個字母模型(例如「J」),以便當我使用字母「J」拍攝照片時,軟件會將圖像與模型進行比較,並檢測字母「J 」。 我將如何創建模型?創建圖像模型

+2

你確定要自己開發嗎?可能有一些開源庫可以爲你做到這一點。 – aglassman

+0

@aglassman我自己開始這個,然後我有4或5個人來與我一起工作。他們只是落後於另一個項目。 –

+0

您創建模型的方式完全取決於您計劃如何進行識別。所以,在我們回答你的問題之前,你必須先解釋一下。如果你不知道你打算使用什麼類型的算法,你需要在那之前先決定,甚至在你的問題中找到答案。 – abarnert

回答

0

可以使用OpenCV庫對於Java,這個庫包含模板匹配模型已經實施 但圖像識別用更好的是使用學習機或神經網絡

2

看來你想要做的OCR(光學字符識別)。

如果這只是大型項目的一部分,請嘗試OpenCV。即使您正在製作商業產品,它也擁有寬鬆的BSD許可證。

如果您已經着手創建自己的圖書館,請閱讀通過任何優秀搜索引擎提供的一些論文。有許多機器學習和神經網絡教程,可以生成你想要的圖像模型。

+0

我們正在計劃將其作爲一個商業項目。所以我會尋找一些教程。 –

0

如果我打算這樣做,我會使用標準化的浮點數。

字母A將是: [(0.0,0.0),(0.5,1.0),(1.0,0.0),(0.1,0.5)(0.9,0.5)]

更新(進一步的說明)

所以我的想法是,你應該能夠唯一標識一個帶有標準點數組的字母。這些信件的重要特徵包括一行的開始,結束和中點等。曲線將被分割成多個較小的線段,這也將由點表示。

要使用此模型,將分析源圖像。然後你會分析圖像的文字。您可以使用邊緣檢測和其他方法來查找文本。您還必須分析文本上的任何轉換。在找出文本變換之後,將文本分割爲字符,然後分析重要特徵點的字符。然後,你會寫一個算法來標準化點,並確定哪個模型最準確地代表找到的點。

+0

我不認爲這是怎麼完成的...... – user1354999

+0

@aglassman你可以詳細解釋一下你的意思嗎? –