現(xiàn)在數(shù)字無處不在,無論是鬧鐘、健身追蹤器、條形碼還是包裝好了的送貨包裹。利用MNIST數(shù)據(jù)集,機(jī)器學(xué)習(xí)可用來讀取單個(gè)手寫數(shù)字?,F(xiàn)在,我們可以將其擴(kuò)展為讀取多個(gè)數(shù)字,如下所示。底層的神經(jīng)網(wǎng)絡(luò)同時(shí)進(jìn)行數(shù)字定位和數(shù)字檢測(cè)。這在很多實(shí)際環(huán)境中是非常有用的,例如讀取商店中的標(biāo)簽,車牌,廣告等。
讀取多個(gè)數(shù)字
但是,為什么不直接使用OCR呢?OCR雖然可以自動(dòng)檢測(cè)數(shù)字,但是效果并不總是很好,有時(shí)我們需要為特定任務(wù)訓(xùn)練特定的神經(jīng)網(wǎng)絡(luò)。
0.1數(shù)字檢測(cè)
數(shù)字檢測(cè)問題可分為2部分
數(shù)字查找
數(shù)字識(shí)別
數(shù)字查找:
數(shù)字可能出現(xiàn)在圖像的任何位置,要檢測(cè)到這些數(shù)字,我們首先需要查找包含這些數(shù)字的區(qū)域。這些數(shù)字可以有不同的大小和背景。
有多種檢測(cè)數(shù)字位置的方法。比如可以利用簡單的圖像形態(tài)學(xué)操作(例如二值化,腐蝕,膨脹)來提取圖像中的數(shù)字區(qū)域。但是,由于存在諸如閾值,內(nèi)核大小等調(diào)整參數(shù),因此這些處理方式不具有普遍性。此外我們還可以使用無監(jiān)督特征檢測(cè)器,深度模型等。
數(shù)字識(shí)別:
確定好區(qū)域的數(shù)字即可進(jìn)入數(shù)字識(shí)別的過程。MNIST數(shù)據(jù)集是用于手寫數(shù)字識(shí)別的規(guī)范數(shù)據(jù)集。大多數(shù)數(shù)據(jù)科學(xué)家已經(jīng)對(duì)該數(shù)據(jù)集進(jìn)行了實(shí)驗(yàn)。它包含約60,000個(gè)用于培訓(xùn)的手寫數(shù)字和10,000個(gè)用于測(cè)試的手寫數(shù)字。一些示例如下所示:
MNIST圖片
但是,現(xiàn)實(shí)生活中的數(shù)字通常大不相同。它們具有不同的顏色,通常按照以下情況打印。
日常數(shù)字圖像
另一個(gè)公共數(shù)據(jù)集SVHN-街景房數(shù)數(shù)據(jù)集。數(shù)據(jù)集包含從Google的街景中收集并帶有注釋的門牌號(hào)圖像。以下是SVHN的示例圖片:
SVHN圖片
該數(shù)據(jù)集在許多背景下都有各種數(shù)字組合,對(duì)于通用模型更合適。
02. Keras建模
我們選擇此基于SVHN位數(shù)檢測(cè)器來實(shí)現(xiàn)多位數(shù)檢測(cè)器。它寫得很好并且易于遵循。數(shù)字定位使用最大穩(wěn)定的外部區(qū)域(MSER)方法完成,該方法用作穩(wěn)定的特征檢測(cè)器。MSER主要用于圖像內(nèi)的斑點(diǎn)檢測(cè)。斑點(diǎn)是像素的連續(xù)集合,其外邊界像素強(qiáng)度高于內(nèi)邊界像素強(qiáng)度(給定閾值)。如果這些區(qū)域在強(qiáng)度變化量上變化不大,則可以說是最大穩(wěn)定的。MSER的運(yùn)行時(shí)復(fù)雜度較低,為O(nlog(log(n))),其中n是圖像上像素的總數(shù)。該算法對(duì)于模糊和縮放也很魯棒。這使其非常適合提取文本/數(shù)字。
使用具有卷積,maxpool和FC層的CNN來完成數(shù)字識(shí)別,這些層將每個(gè)檢測(cè)到的區(qū)域分類為10個(gè)不同的數(shù)字。分類器在測(cè)試集上的準(zhǔn)確性達(dá)到95%。
我們通過各種示例對(duì)存儲(chǔ)庫進(jìn)行了測(cè)試,發(fā)現(xiàn)它運(yùn)行良好。請(qǐng)參閱上面共享的示例。
在某些間隙中,要么本地化器無法正常工作(未檢測(cè)到數(shù)字1的位置),要么檢測(cè)器發(fā)生故障($被檢測(cè)為5)。
結(jié)論
我們希望該博客被證明是了解多位數(shù)檢測(cè)管道如何工作的良好起點(diǎn)。我們共享了一個(gè)github鏈接,該鏈接可用于在SVHN數(shù)據(jù)集上構(gòu)建模型。如果此模型無法正常運(yùn)行。大家可以收集自己的數(shù)據(jù)并微調(diào)已訓(xùn)練的模型。
SVHN鏈接:https://github.com/penny4860/SVHN-deep-digit-detector
審核編輯 :李倩
-
檢測(cè)器
+關(guān)注
關(guān)注
1文章
894瀏覽量
48681 -
OpenCV
+關(guān)注
關(guān)注
32文章
642瀏覽量
42885 -
數(shù)據(jù)集
+關(guān)注
關(guān)注
4文章
1224瀏覽量
25446
原文標(biāo)題:基于OpenCV的多位數(shù)檢測(cè)器
文章出處:【微信號(hào):CVSCHOOL,微信公眾號(hào):OpenCV學(xué)堂】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
帶功率檢測(cè)器的 5 GHz 前端模塊 skyworksinc

快速部署!米爾全志T527開發(fā)板的OpenCV行人檢測(cè)方案指南

汽車行業(yè)專用雙張檢測(cè)器防雙張檢測(cè)-阿童木金屬雙張檢測(cè)器# 汽車#雙料

小家電部件沖壓疊料檢測(cè)應(yīng)用案例-阿童木金屬雙張檢測(cè)器# 家電# 沖壓# 傳感器# 金屬雙張檢測(cè)器
壓力檢測(cè)器有哪些優(yōu)勢(shì)

評(píng)論