• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Python的硬幣識(shí)別系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

      2017-11-02 20:05張永付張鵬
      軟件導(dǎo)刊 2017年10期

      張永付++張鵬

      摘要:針對(duì)目前硬幣識(shí)別系統(tǒng)使用成本高、硬件要求高等問(wèn)題,設(shè)計(jì)了一種識(shí)別率高、成本低的硬幣識(shí)別系統(tǒng)。系統(tǒng)通過(guò)Python與OpenCV結(jié)合數(shù)字圖像處理技術(shù)對(duì)1元、5角、1角三種硬幣進(jìn)行識(shí)別。首先通過(guò)顏色通道轉(zhuǎn)換法實(shí)現(xiàn)5角硬幣識(shí)別,然后經(jīng)過(guò)高斯去噪、二值化、自適應(yīng)二值化、均值濾波對(duì)原始圖像進(jìn)行處理,將處理后的圖像通過(guò)提取1角與1元硬幣邊緣輪廓的周長(zhǎng)作為分類特征,利用機(jī)器學(xué)習(xí)方法,對(duì)兩種硬幣15張圖像進(jìn)行訓(xùn)練、5張圖像進(jìn)行測(cè)試。結(jié)果表明,系統(tǒng)對(duì)5角硬幣識(shí)別準(zhǔn)確率高達(dá)100%,對(duì)1元與1角硬幣識(shí)別率達(dá)到80%。經(jīng)測(cè)試證明,該系統(tǒng)既保持了高效的識(shí)別率,又減少了硬件依賴,有一定的實(shí)際應(yīng)用價(jià)值。

      關(guān)鍵詞:硬幣識(shí)別;Python;OpenCV

      DOIDOI:10.11907/rjdk.171783

      中圖分類號(hào):TP319文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):16727800(2017)010012903

      0引言

      硬幣在生活中應(yīng)用非常廣泛,硬幣識(shí)別大致分為面值識(shí)別與真假鑒別。在硬幣清分機(jī)、公交車及自動(dòng)售貨機(jī)的設(shè)計(jì)與實(shí)現(xiàn)中,通過(guò)獲取硬幣圖像對(duì)面值進(jìn)行識(shí)別是研究的關(guān)鍵問(wèn)題。

      目前國(guó)內(nèi)采用的硬幣面值識(shí)別法有圖像法及電渦流傳感器法等[12]。傳統(tǒng)的硬幣識(shí)別主要是機(jī)械識(shí)別,由于選取特征過(guò)程的影響,很難保證識(shí)別準(zhǔn)確率。美國(guó)Mahesh等[3]設(shè)計(jì)了一個(gè)帶旋盤的結(jié)構(gòu),通過(guò)光探測(cè)器檢測(cè)與計(jì)算機(jī)編碼器的編碼脈沖識(shí)別硬幣。付麗等[4]設(shè)計(jì)了一種基于光電開關(guān)的硬幣識(shí)別系統(tǒng),大幅度提高了識(shí)別準(zhǔn)確率。莫磊[5]針對(duì)硬幣準(zhǔn)確識(shí)別與偽幣檢測(cè),利用EDA技術(shù)、電子信息技術(shù)、計(jì)算機(jī)技術(shù)、傳感器技術(shù)、智能控制技術(shù)等對(duì)硬幣識(shí)別進(jìn)行了研究,通過(guò)改善傳統(tǒng)電渦流分析法,加入一定算法研究達(dá)到了提高識(shí)別率的效果。劉藝柱[6]通過(guò)分析電渦流傳感器的基本原理,提出了利用雙路電渦流傳感器對(duì)硬幣材質(zhì)、厚度等參數(shù)進(jìn)行檢測(cè)的思路,硬幣識(shí)別檢測(cè)率改善效果明顯,相比付麗等人的方法技術(shù)更加前沿,準(zhǔn)確高效。這些方法識(shí)別率高,但設(shè)計(jì)復(fù)雜,嚴(yán)重依賴硬件組件、成本較高。人工智能的發(fā)展,使得通過(guò)圖像技術(shù)進(jìn)行物體識(shí)別發(fā)展迅速[7]。本系統(tǒng)通過(guò)利用數(shù)字圖像處理技術(shù)對(duì)圖像進(jìn)行預(yù)處理,使得提取圖像的特征變得簡(jiǎn)單,準(zhǔn)確率得到有效提高。Python是一種面向?qū)ο蟮慕忉屝陀?jì)算機(jī)程序設(shè)計(jì)語(yǔ)言,具有豐富與強(qiáng)大的庫(kù),已經(jīng)成為繼JAVA-C++之后的第三大語(yǔ)言[8]。由于Opencv內(nèi)置強(qiáng)大的數(shù)字圖像處理函數(shù),系統(tǒng)設(shè)計(jì)過(guò)程利用軟件編程思想減少了對(duì)硬件的依賴,做到成本低、識(shí)別率高、復(fù)雜性低。并且通過(guò)機(jī)器學(xué)習(xí)思想,對(duì)1元與1角硬幣分別選用15張?zhí)幚砗蟮膱D像進(jìn)行訓(xùn)練,5張進(jìn)行測(cè)試,檢測(cè)結(jié)果表明該系統(tǒng)識(shí)別準(zhǔn)確率高、穩(wěn)定性好。

      1系統(tǒng)設(shè)計(jì)

      1.1系統(tǒng)總體框架

      圖1為系統(tǒng)框架,系統(tǒng)功能分為5個(gè)部分:圖像采集、顏色通道轉(zhuǎn)換、圖像預(yù)處理、特征提取、訓(xùn)練測(cè)試。

      1.2硬幣識(shí)別工作流程

      先進(jìn)行圖像采集,通過(guò)讀取圖像進(jìn)行顏色通道轉(zhuǎn)換,實(shí)現(xiàn)5角硬幣識(shí)別,再對(duì)1元與5角硬幣圖像進(jìn)行預(yù)處理;接下來(lái)進(jìn)行特征提取,提取輪廓周長(zhǎng)信息;提取15張圖像進(jìn)行訓(xùn)練,最后給定圖像進(jìn)行測(cè)試。系統(tǒng)流程如圖2所示。

      2功能設(shè)計(jì)與實(shí)現(xiàn)

      2.1圖像采集

      首先,在簡(jiǎn)單環(huán)境拍攝得到原始圖像。簡(jiǎn)單環(huán)境是指:拍攝鏡頭距離桌面背景15cm正上方,桌面背景為黑色,室內(nèi)環(huán)境,選擇最佳聚焦效果進(jìn)行拍攝。既保證圖像質(zhì)量,又為系統(tǒng)識(shí)別硬幣的準(zhǔn)確率奠定基礎(chǔ)(見表1)。

      2.2顏色通道轉(zhuǎn)換

      由于顏色提取過(guò)程中RGB模型易受到光照影響,因此將圖像由RGB轉(zhuǎn)換到HSV顏色空間模型,更易提取顏色特征。系統(tǒng)繪制了3種硬幣的顏色空間直方圖(見圖3-圖5,彩圖見封二),王洪建等[911]研究得出H與S分量包含了圖像的彩色信息,本系統(tǒng)采用該思想抽取H與S分量特征值,識(shí)別出5角硬幣。

      圖3-圖5中藍(lán)色與綠色分別代表了H與S分量??梢缘贸?角硬幣在H與S明顯區(qū)別于其它硬幣,因而通過(guò)顏色空間轉(zhuǎn)換方法可以對(duì)5角硬幣進(jìn)行識(shí)別。具體代碼如下:

      defhist(img):

      hsv=cv2.cvtColor(img,cv2.COLOR_BGR2HSV)

      color=('b','g','r')

      fori,col in enumerate(color):

      hist=cv2.calcHist([hsv],[i],None,[256],[0,256])

      plt.plot(hist)

      plt.xlim([0,256])

      plt.show()

      2.3圖像預(yù)處理

      從圖3與圖5可以看出,由于1角硬幣與1元硬幣在HSV顏色曲線的H分量上相似較大,因而無(wú)法進(jìn)行識(shí)別,需要利用數(shù)字圖像處理技術(shù)進(jìn)行進(jìn)一步識(shí)別。首先針對(duì)原始圖像進(jìn)行處理(見圖6),經(jīng)過(guò)高斯去噪、二值化、自適應(yīng)二值化、均值濾波處理方法,得到完整的邊緣輪廓(見圖7、圖8)。

      2.4特征提取

      從圖6-圖7可以清楚看到要提取的特征輪廓,利用OpenCV自帶findContours函數(shù)尋找輪廓,該函數(shù)的第二個(gè)返回值是一個(gè) Python列表,存儲(chǔ)了圖像的所有輪廓。再調(diào)用Perimeter=cv.2arcLength(cnt,true)方法計(jì)算閉合圓形輪廓周長(zhǎng),得到1角、1元周長(zhǎng)分別是364mm、468mm。代碼如下:

      defbianyuan(img):

      equ=cv2.GaussianBlur(img,(5,5),0)

      ret,thresh1=cv2.threshold(equ,130,255,cv2.THRESH_BINARY)endprint

      th3=cv2.adaptiveThreshold(thresh1,255,cv2.ADAPTIVE_THRESH_MEAN_C,\

      cv2.THRESH_BINARY,7,2)

      median = cv2.medianBlur(th3, 3)

      plt.subplot(4,1,1),plt.imshow(img,cmap = 'gray')

      plt.subplot(4,1,2),plt.imshow(th3,cmap = 'gray')

      plt.subplot(4,1,3),plt.imshow(median,cmap='gray')

      plt.show()

      returnmedian.copy()

      2.5訓(xùn)練測(cè)試

      為了保證1角與1元硬幣識(shí)別的準(zhǔn)確性與穩(wěn)定性,將原始圖像經(jīng)過(guò)旋轉(zhuǎn)不同角度,得到15張圖像。這15張圖像作為訓(xùn)練數(shù)據(jù)集,通過(guò)同樣的方法計(jì)算得到輪廓周長(zhǎng)并存儲(chǔ)在數(shù)組中。訓(xùn)練過(guò)程得到了所有圖像的周長(zhǎng)信息,運(yùn)用訓(xùn)練好的模型對(duì)給定任意一張1角或1元硬幣進(jìn)行測(cè)試。系統(tǒng)計(jì)算出該圖像的輪廓周長(zhǎng),通過(guò)傳遞參數(shù)判斷該周長(zhǎng)屬于1角或1元模型中的哪類,給出判斷結(jié)果。系統(tǒng)隨機(jī)選取了5張圖片進(jìn)行測(cè)試,從測(cè)試結(jié)果得出準(zhǔn)確率達(dá)到80%。1張失敗的原因是硬幣邊緣磨損,圖像處理后沒有形成閉合區(qū)域輪廓。具體代碼如下:

      deffindPlateNumberRegion(img):

      contours,hierarchy = cv2.findContours(img,1, 2)

      cnt=contours[0]

      perimeter = cv2.arcLength(cnt,True)

      return round(perimeter)

      def test(result):

      print ('testRating:'result)

      def main():

      record=[]

      fori in range(15):

      img=image_read()

      img=bianyuan(img)

      a=findPlateNumberRegion(img)

      test(a)

      record.append(a)

      print record

      3系統(tǒng)測(cè)試

      系統(tǒng)測(cè)試的目的主要是確保系統(tǒng)運(yùn)行穩(wěn)定,能夠滿足實(shí)際需求。并且對(duì)三種類型硬幣有穩(wěn)定、高效的識(shí)別率。經(jīng)過(guò)對(duì)15張圖像訓(xùn)練,5張進(jìn)行測(cè)試,測(cè)試結(jié)果如表2所示。

      3結(jié)語(yǔ)

      本文基于Python的硬幣識(shí)別系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn),詳細(xì)給出了該系統(tǒng)的結(jié)構(gòu)圖、功能流程圖及各個(gè)功能實(shí)現(xiàn)的核心代碼。通過(guò)Python語(yǔ)言與OpenCV強(qiáng)大的函數(shù)庫(kù)及語(yǔ)言優(yōu)勢(shì),利用數(shù)字圖像處理技術(shù)與機(jī)器學(xué)習(xí)思路完成本系統(tǒng)開發(fā)工作。闡述了系統(tǒng)中使用的關(guān)鍵技術(shù),包括圖像處理技術(shù)與對(duì)象識(shí)別技術(shù),實(shí)現(xiàn)了硬幣面值識(shí)別。機(jī)器視覺發(fā)展為本系統(tǒng)設(shè)計(jì)奠定了一定基礎(chǔ),將此運(yùn)用于解決生活中常見問(wèn)題,是互聯(lián)網(wǎng)時(shí)代背景下的流行趨勢(shì)。

      參考文獻(xiàn)參考文獻(xiàn):

      [1]畢曉君,孫曉霞.基于蟻群算法的硬幣識(shí)別研究[J].哈爾濱工程大學(xué)學(xué)報(bào),2006,27(6):882885.

      [2]傅霖來(lái).基于機(jī)器視覺下的硬幣識(shí)別系統(tǒng)[D].天津:天津大學(xué),2009.

      [3]L CHUGANI MAHESH, R SAMANT ABHAG, MICHAEL CERRA. LabVIEW signal processing[M]. Upper Saddle Rive:Prentice Hall PTR,1998.

      [4]付麗.基于光電開關(guān)的硬幣面值識(shí)別系統(tǒng)[D].西安:西安電子科技大學(xué),2014.

      [5]莫磊.基于FPGA的硬幣識(shí)別器的研究[D].成都:電子科技大學(xué),2008.

      [6]劉藝柱.高準(zhǔn)確率硬幣識(shí)別裝置的設(shè)計(jì)與實(shí)現(xiàn)[D].南京:南京理工大學(xué),2013.

      [7]王陽(yáng)萍,杜曉剛,趙庶旭,等.醫(yī)學(xué)影像圖像處理[M].北京:清華大學(xué)出版社,2012.

      [8]潘俊勇.易度PaaS云平臺(tái)開發(fā)技術(shù)內(nèi)幕[C].上海:中國(guó)PyConChina2011大會(huì),2011.

      [9]王洪建.基于HSV顏色空間的一種車牌識(shí)別定位和分割方法[J].儀器儀表學(xué)報(bào),2005(8):2628.

      [10]郭捷,施鵬飛.基于顏色和紋理分析的車牌定位方法[J].中國(guó)圖像圖形學(xué)報(bào),2002,7A(5):472 475.

      [11]張引,潘云鶴.彩色汽車圖像牌照定位新方法[J].中國(guó)圖像圖形學(xué)報(bào),2002,7A(5):374377.

      責(zé)任編輯(責(zé)任編輯:何麗)endprint

      郸城县| 莱州市| 庆元县| 苏尼特右旗| 青龙| 玛沁县| 拜城县| 钟祥市| 天峨县| 安仁县| 伊春市| 新乡县| 昌邑市| 岐山县| 亳州市| 台北县| 缙云县| 区。| 来宾市| 乐安县| 石城县| 杭锦后旗| 木里| 离岛区| 桂阳县| 绵阳市| 东至县| 酒泉市| 咸阳市| 香港 | 都江堰市| 临泉县| 科技| 屯门区| 鄯善县| 富锦市| 基隆市| 会泽县| 台南县| 桐柏县| 商河县|