《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 機器視覺筆跡識別和Arduino控制機器人的設計
機器視覺筆跡識別和Arduino控制機器人的設計
2017年電子技術應用第11期
王 磊1,張翠霞2
1.北京聯合大學 自動化學院,北京100101;2.北京聯合大學工科綜合實驗教學示范中心,北京100101
摘要: 隨著現代信息技術的高速發展,機器視覺技術已經成為研究應用的一個熱點,并且結合自動化技術的機器人也更加趨向于智能化以及多功能化。由Arduino單片機、液晶顯示屏、NRF2401L無線通信模塊等構成該機器人的基礎下位機硬件系統,具備無線傳輸數據、人機交互等功能;使用Python語言、結合機器視覺算法構建了筆跡識別模型,并將在上位機中識別好的信息通過NRF2401L無線通信傳輸至下位機硬件。
中圖分類號: TP242
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.173409
中文引用格式: 王磊,張翠霞. 機器視覺筆跡識別和Arduino控制機器人的設計[J].電子技術應用,2017,43(11):15-17.
英文引用格式: Wang Lei,Zhang Cuixia. Machine vision handwriting recognition and Arduino control robot design[J].Application of Electronic Technique,2017,43(11):15-17.
Machine vision handwriting recognition and Arduino control robot design
Wang Lei1,Zhang Cuixia2
1.School of Automation,Beijing Union University,Beijng 100101,China; 2.Beijing Union University Integrated Experimental Teaching Demonstration Center,Beijng 100101,China
Abstract: With the rapid development of modern information technology, machine vision technology has become a hot spot for research and application, and robot with automation technology is more and more intelligent and multi-functional. The design of the Arduino single-chip, liquid crystal display, NRF2401L wireless communication module constitute the basis of the robot hardware system, with wireless transmission of data, human-computer interaction and other functions; The use of Python language machine vision algorithm to build a handwriting identify the model, and will identify the information in the host computer through the NRF2401L wireless communication to the next bit machine hardware.
Key words : machine vision;Arduino;support vector machine;wireless communication module

0 引言

    伴隨著現在日益高性能的計算機硬件和完善的理論技術,機器視覺技術已開始得到廣泛的應用。結合機器視覺技術的智能機器人在現今人工智能趨勢下扮演一個重要角色,在智能制造推進、智慧城市建設、家居生活質量提高等方面,都有廣闊的施展空間[1]

1 整體設計思路及方案

    本設計將能勝任機器視覺處理能力的計算機與單片機作主控的機器人相結合,通過無線通信方式構建一個相比其他低成本機器人具備更高自主性和智能性的機器人模型,目的在于:(1)對比評估主流手寫數字識別模型的實際識別表現;(2)探究低成本機器人實現更高智能性的方法[2]

    本設計結合現今熱門的機器視覺技術以及Arduino單片機實現了一個能夠通過上位機識別手寫數字并發送至下位機進行執行的機器人模型,當上位機得到待識別的圖片后,將進行圖片的處理轉化為數據并輸入已經在前期構建好的識別模型,計算后輸出識別的內容并通過無線通信發送到下位機,下位機根據接收到的識別信號執行相應動作。

    本設計總體可分為上位機識別與下位機執行部分。上位機識別部分包含前期輸入信號的處理、手寫字符的識別模型構建、與下位機通信構建等部分;下位機執行部分采用Arduino單片機結合各類電子元器件和電路模塊實現了所期望的執行內容,包括電源供電設計、表盤指示器電路設計、人機交互顯示設計以及無線通信設計[3]

1.1 下位機硬件設計方案

    該下位機硬件使用Arduino單片機作為主控,并結合步進電機以及步進電機驅動模塊構成了指針數字指示盤,OLED與單片機相連構成人機交互顯示界面,NRF2401L無線串口模塊與上位機進行通信,使用LM2596穩壓模塊輸出9 V電源為Arduino單片機供電,并且由單片機供電給各個執行模塊。采用1.3寸OLED顯示屏作為顯示器,輸出經過上位機識別后發送至下位機的信號,采用SSD1306作為驅動的OLED顯示屏顯示出數字[4]

    采用步進電機作為儀表盤指示器執行部件,其需要相應電機驅動模塊進行驅動。設計儀表指示器需要對步進電機進行正轉、反轉控制,從而造成指針的順時針旋轉和逆時針旋轉,以便能夠使其根據輸入的識別信號轉動相應角度(有對應的正向角度和負角度)。電機接收到單片機輸出的特定脈沖時,步進角(步進電機每前進一個步序所轉過的角度)便會進行相應的轉動,當電機接收一個脈沖信號就會轉過一個步進角,二者呈相互的線性關系。通過此線性關系,再根據原有角度與現在應該轉動角度做差值計算,求出相差角度,控制電機轉動相應角度,便可以實現電機的儀表指示功能。

1.2 數據收集以及上位機識別模型

    上位機部分主要負責手寫圖片的識別,其流程包括手寫數字圖像預處理、識別模型訓練、識別模型驗證和測試等。選擇MNIST手寫庫作為模型的數據,并給出了將MNIST數據庫進行圖像處理的方法,通過比對SVM、BP神經網絡、KNN三種識別模型的發展歷程、數學原理以及算法步驟等,最終選用BP神經網絡識別模型。

1.3 BP神經網絡的手寫數字識別模型及驗證

    BP神經網絡是神經網絡的一種,目前大多數神經網絡模型都是由BP神經網絡擴展而來。對于本設計所需手寫數字識別這一應用來說,神經網絡主要用于關于數字0到數字9的分類問題。BP神經網絡算法又稱為反向傳播算法,其連接神經元的權值訓練從最末層(即網絡的輸出層)開始,從輸出到輸入依次更新每一層的權值,所以被稱為反向傳播。

    BP神經網絡的學習算法采用方法為δ學習規則(步長最優化),目標函數為:

    wlw4-gs1.gif

式中:Yk表示真實的值,即期望值,是真實圖片中所代表數字,k為樣本編號;Tk為預測值,即經過模型所計算出來的值;E為真實值與預測值得平方誤差求和。整個式子的目標便是使平方誤差和最小。

    其算法過程的流程描述如圖1所示。

wlw4-t1.gif

    BP神經網絡由于只應用了均分誤差函數對權值和閾值的一階導數(即梯度)的信息,在實際程序中該算法存在收斂速度慢從而計算時間長、容易陷入局部最小(忽略了全局最優解導致不能正確求解)等問題。在實際的應用中,應注意這些問題的解決,可以與LM神經網絡、RBF神經網絡等結合使用來解決[5]

2 使用CV2庫進行圖像預處理

    在設計中使用OpenCV庫的擴展庫CV2庫對圖片進行了圖像預處理,過程主要包括手寫數字圖像的歸一化以及二值化數據形式,并保存為逗號分隔符的csv文件。

    圖像處理時間如表1所示,T1時間為轉化訓練集圖片所用時間,用時352 s;T2時間為轉化測試集圖片所用時間,用時55 s。

wlw4-b1.gif

2.1 PCA降維操作

    本設計使用Python的sklearn庫中的PCA方法,輸入原始數據集,即可完成PCA降維操作,其降維結果如表2所示。

wlw4-b2.gif

    在經過PCA(主成分分析法)降維操作去除影響較小的變量影響后,得到了59 989行、67列的X_pca數據集,手寫數字圖片數量不變,但維數從784列縮小為67列,從而有效地減輕了支持向量機、神經網絡以及KNN模型的計算過程。在后續的模型訓練以及模型識別準確度評估中,也同樣使用了PCA操作對數據簡化計算量[6]

2.2 模型比較以及上位機識別模型的選取

    本測試模型中,經過轉化的訓練集數據大小1.09 GB(59 989張圖片轉化完成的數據),測試集數據大小為186 MB(9989張圖片轉化完成的數據),經過PCA降維操作后,測試集數據大小為97.7 MB(由原來的864列數據降維為67列數據),訓練集數據大小為16.2 MB。模型數據采用PCA降維操作后的數據[7]

    從表3中可知,3種模型中,SVM(支持向量機)模型識別的準確度最高,但訓練時間比其他兩個模型稍長。BP神經網絡模型最小,訓練時間比SVM(支持向量機)稍短,測試時間用時也最短,明顯短于其他兩個模型,說明識別速度是最快的。KNN(K近鄰)模型訓練時間雖然最短,但從測試時間來看用時最長,測試近10 000個數據的時間比其他兩個模型訓練近60 000個數據的時間還長了兩倍多,模型識別速度最慢。準確率上來看,小數據量時準確率只有百分之五六十,只有大數據體量下準確率才有明顯提升,與SVM(支持向量機)和BP神經網絡相比,在手寫數字識別方面遜色很多。

wlw4-b3.gif

    對上面3個模型根據識別時間、準確率進行比較評估后,決定以準確率優先,次而考慮識別時間,最終決定使用SVM(支持向量機)作為本設計的手寫識別模型[8]

3 手寫筆跡圖像識別機器人整體設計

    在整體設計中,首先選擇NRF2401L無線通信模塊完成了通信硬件的搭建,并根據其配置表進行命令配置完成了硬件的初始化。上位機方面,使用Python結合win32u庫和serial庫完成上位機讀取識別程序的設計。下位機方面,使用串口結合下位機處理硬件完成數字接收處理的設計。整個系統構成一套上位機對手寫圖像進行識別,通過無線發送至下位機處理的手寫筆跡圖像識別機器人。

4 結論

    通過本設計與研究,取得的主要結果如下:

    (1)選擇了MNIST手寫數字圖片庫作為手寫識別模型的原始數據,設計實際情況完成了MNIST庫圖像的處理和轉化,從而得到了原始的訓練數據集和測試數據集。

    (2)分別對SVM(支持向量機),BP神經網絡,KNN(K近鄰)3種分類模型進行了對比,并使用Python分別對3種模型進行了構建和測試。通過3個模型的訓練時間、測試時間以及準確度等指標,比較了3個模型的優劣性,最終以準確率優先原則選取準確度最高的SVM(支持向量機)作為手寫數字識別模型并進行應用。

    (3)使用NRF2401L無線通信模塊和串口功能構建了上位機和下位機之間無線通信,完成了二者的對接,將單片機在電子硬件方面的處理和計算機對手寫圖片的識別進行了結合[9]

    (4)實現了Python設計上位機應用程序,功能包括圖像讀取、圖像預處理以及轉化、圖像識別、串口發送、異常處理等。完成了整個上位機的功能,構成了一套上位機手寫圖像識別,完成了整個設計。

參考文獻

[1] 周志華.機器學習[M].北京:清華大學出版社,2016.

[2] 麥好.機器學習實踐指南案例應用解析[M].北京:機械工業出版社,2016.

[3] 夏良正.數字圖像處理[M].南京:東南大學出版社,1999.

[4] 楊楠.基于Arduino的智能產品設計研究[D].無錫:江南大學,2014.

[5] 宋飛.基于模板匹配算法的字符識別系統研究與實現[D].合肥:合肥學院,2007.

[6] 吳忠,朱國龍,黃葛峰,等.基于圖像識別技術的手寫數字識別方法[J].計算機技術與發展,2011,21(12):48-51.

[7] 柳回春,馬樹元,吳平東,等.手寫體數字識別技術的研究[J].計算機工程,2003(4):24-61.

[8] 徐勛華,王繼成.支持向量機的多類分類方法[J].微電子學與計算機,2004,21(10):149-152.

[9] 劉建明,唐霞,李龍.基于機器學習的VoIP流量在線識別系統[J].電子技術應用,2016,42(8):133-137.



作者信息:

王  磊1,張翠霞2

(1.北京聯合大學 自動化學院,北京100101;2.北京聯合大學工科綜合實驗教學示范中心,北京100101)

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品99久久久久久www| 夜夜嗨av一区二区三区四区| 久久久美女艺术照精彩视频福利播放| 91久久久亚洲精品| 亚洲女ⅴideoshd黑人| 亚洲国产另类久久精品| 国产日韩欧美黄色| 免费影视亚洲| 久久精品在线观看| 亚洲免费在线观看视频| 亚洲黄页视频免费观看| 欧美一级淫片播放口| 亚洲精品乱码久久久久久日本蜜臀| 国产一区欧美| 国产精品美女在线观看| 欧美精品成人一区二区在线观看| 久久久青草青青国产亚洲免观| 99国产精品久久久久老师| 欧美一区二区视频在线观看2020| 夜夜爽夜夜爽精品视频| 亚洲激情校园春色| 国产在线拍偷自揄拍精品| 国产精品毛片va一区二区三区| 欧美日韩国产首页在线观看| 蜜桃精品久久久久久久免费影院| 久久精品视频一| 欧美一区二区三区啪啪| 销魂美女一区二区三区视频在线| 亚洲深夜福利| 日韩午夜激情av| 亚洲精品资源| 亚洲精品视频免费观看| 亚洲国产美国国产综合一区二区| 欧美制服丝袜| 欧美中文在线观看| 久久精品视频在线播放| 久久爱91午夜羞羞| 欧美一区深夜视频| 亚洲一区二区av电影| 亚洲色在线视频| 正在播放日韩| 9色国产精品| 日韩视频一区二区在线观看 | 欧美成人a视频| 老妇喷水一区二区三区| 免费视频久久| 欧美激情视频免费观看| 欧美激情综合色| 欧美一区二区三区播放老司机| 香蕉久久一区二区不卡无毒影院| 性欧美暴力猛交另类hd| 久久成人18免费网站| 久久久噜噜噜久噜久久| 欧美成人精品1314www| 欧美国产日韩精品| 欧美日韩亚洲高清| 国产精品社区| 国产日韩一区二区三区| 国产自产2019最新不卡| 永久免费视频成人| 国模 一区 二区 三区| 国产午夜精品视频| 伊人夜夜躁av伊人久久| 亚洲激情啪啪| 亚洲天堂黄色| 欧美在线视频二区| 最新中文字幕一区二区三区| 在线一区日本视频| 亚洲丝袜av一区| 欧美在现视频| 欧美成人精品影院| 国产精品盗摄一区二区三区| 国产日韩高清一区二区三区在线| 国产欧美一区二区精品婷婷| 1000部精品久久久久久久久| 日韩一级精品| 欧美在线播放视频| 日韩系列欧美系列| 在线一区亚洲| 久久久999精品免费| 欧美精品久久久久久久久老牛影院 | 亚洲一区二区在线看| 国产日产欧产精品推荐色| 国产精品久久久久久久久久三级| 一区二区三区中文在线观看 | 亚洲高清在线精品| 亚洲欧美日韩国产中文| 欧美激情一区二区在线| 国产在线精品一区二区中文| 亚洲婷婷综合色高清在线| 亚洲人成亚洲人成在线观看| 欧美淫片网站| 国产精品xxx在线观看www| 亚洲日本激情| 亚洲人成网在线播放| 久久九九电影| 国产日韩精品久久久| 中文日韩欧美| 一区二区三区高清视频在线观看| 快she精品国产999| 国内精品久久久久久久影视麻豆| 亚洲一区二区黄| 亚洲一区精彩视频| 欧美日韩视频在线| 日韩亚洲欧美高清| 99精品99| 欧美全黄视频| 亚洲裸体俱乐部裸体舞表演av| 亚洲精品久久久久久下一站| 麻豆成人av| 亚洲成色www久久网站| 亚洲国产第一| 久热爱精品视频线路一| 国内精品一区二区三区| 欧美一区二区免费观在线| 欧美在线黄色| 国产日韩av高清| 午夜亚洲福利| 久久久久久香蕉网| 国产揄拍国内精品对白| 欧美呦呦网站| 看欧美日韩国产| 亚洲二区视频| 日韩天堂在线视频| 欧美区在线播放| 亚洲狼人精品一区二区三区| 99re8这里有精品热视频免费 | 亚洲乱码精品一二三四区日韩在线| 亚洲毛片一区| 欧美日本高清| 夜夜爽99久久国产综合精品女不卡| 亚洲私人黄色宅男| 国产精品国色综合久久| 亚洲一区bb| 久久激情综合网| 韩国亚洲精品| 亚洲激情黄色| 欧美日韩国产一区二区三区| 妖精成人www高清在线观看| 亚洲综合三区| 国产午夜久久久久| 亚洲成人在线网| 欧美激情一区二区三区在线视频观看 | 亚洲主播在线播放| 国产人妖伪娘一区91| 欧美一区二区在线| 欧美va亚洲va国产综合| 亚洲免费av观看| 亚欧成人精品| 精品动漫一区二区| 这里只有精品视频在线| 国产欧美精品一区| 亚洲高清不卡av| 欧美久久久久久久| 亚洲欧美另类在线| 蜜桃av噜噜一区二区三区| 日韩视频一区二区三区在线播放| 亚洲欧美日韩在线高清直播| 国产午夜精品久久久久久久| 亚洲精品视频在线观看免费| 国产精品扒开腿做爽爽爽软件| 欧美一级淫片播放口| 欧美国产视频日韩| 亚洲女性裸体视频| 美玉足脚交一区二区三区图片| 亚洲日本无吗高清不卡| 午夜久久资源| 亚洲国产乱码最新视频| 欧美亚洲自偷自偷| 亚洲福利专区| 亚洲欧美综合一区| 在线看欧美日韩| 午夜精品影院在线观看| 在线观看成人一级片| 亚洲午夜精品久久| 国产曰批免费观看久久久| av成人天堂| 国产三级精品在线不卡| 一区二区欧美日韩| 国产日产欧产精品推荐色| 99精品国产在热久久| 国产婷婷色一区二区三区在线| 亚洲黄一区二区| 国产麻豆日韩欧美久久| 亚洲乱码国产乱码精品精天堂| 国产精品入口麻豆原神| 亚洲精品在线观看免费| 国产视频一区二区在线观看| 中文欧美日韩| 亚洲国产第一| 久久精品男女| 亚洲午夜电影在线观看| 欧美福利专区| 欧美在线视频免费观看| 国产精品久久久久一区二区| 99精品热视频| 精品粉嫩aⅴ一区二区三区四区| 亚洲在线观看视频网站| 亚洲激情网站免费观看| 久久免费高清视频|