基于机器学习中KNN算法的车牌字符识别
? 小編的畢業(yè)設(shè)計做的就是車牌識別系統(tǒng),主要包含車牌定位、字符分割、車牌識別模塊。先附上做的系統(tǒng)界面圖。
? 關(guān)于實現(xiàn)車牌定位和字符分割的算法,大家可以去網(wǎng)上找相關(guān)的論文,本文的重點是介紹利用機(jī)器學(xué)習(xí)的KNN算法實現(xiàn)簡單的字符識別。
? KNN算法全稱k-NearestNeighbor,是機(jī)器學(xué)習(xí)分類領(lǐng)域最簡單的算法之一。它的主要思想是將待預(yù)測的樣本和已知分類的樣本集中每一個樣本進(jìn)行“距離計算”,選擇前K個“距離”最短的樣本,在這K個樣本中,分類次數(shù)出現(xiàn)最多的那個分類就被視為待預(yù)測樣本的所屬分類。
? “距離計算”因樣本而不同,車牌字符識別中的樣本當(dāng)然是字符圖像。每一張字符圖像都是長寬相同的二值圖像,本文是16*32的二值圖像。這樣每一張字符圖像都和16*32的二維數(shù)組一一對應(yīng),并且數(shù)組的取值只能為0或1。為了方便比較,我們將16*32的二維數(shù)組排成長度為512的一維數(shù)組,則“距離計算”的公式如下。
? ? ? ? ? ? ? ? ? ? ? ? ?
? 其中xi為待識別字符圖像對應(yīng)的一維數(shù)組的第i個值,xki為字符樣本集第k個樣本對應(yīng)的一維數(shù)組的第i個值。
? 本文的字符集包含了省份簡稱、英文字母、數(shù)字,一共有3500張圖像。其中英文字符“A”的所有圖像如下。
? KNN算法有一個很明顯的缺點就是要想預(yù)測樣本的分類,就要把樣本和已知分類的樣本集中的所有樣本進(jìn)行比較,這樣算法的時間復(fù)雜度就比較高。還有算法的實際效果很大程度上也取決于已知分類的樣本集質(zhì)量。本文系統(tǒng)的字符識別的正確率只有80%左右,并且每次都要等待大約6、7秒才出結(jié)果。
? 車牌字符識別算法目前已經(jīng)很成熟了,大家如果有興趣,可以在網(wǎng)上找一找大牛做的,小編只是拋磚引玉。
總結(jié)
以上是生活随笔為你收集整理的基于机器学习中KNN算法的车牌字符识别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab函数句柄介绍
- 下一篇: 解决wget下载过慢的问题