智能移動機器人是近年來發(fÄ)展起來的一門綜åˆå¸(xué)科,觸åŠæ©Ÿæ¢°è¨(shè)計ã€å‚³æ„Ÿæª¢é©—ã€äººå·¥æ™ºèƒ½ç‰å¤šæ–¹é¢å¸¸è˜ã€‚類人機器人的控制系統(tÇ’ng)分為三個æ¢ç†ï¼šæœ€ä¸Šå±¤æ˜¯æ©Ÿå™¨äººçš„計謀計劃層,應(yÄ«ng)用種種算法實ç¾(xià n)å„部分的功效;ä¸å¤®ä¸€å±¤é‹è½‰(zhuÇŽn)種種應(yÄ«ng)用程åºçš„嵌入å¼å¯¦æ™‚æ“作系統(tÇ’ng);最底層是硬件平臺,經(jÄ«ng)ç”±éŽç¨‹å¤–åœæŽ¥å£å¾—到種種數(shù)æ“š(jù)ã€ä¿¡æ¯ã€‚
自立機器人應(yÄ«ng)用傳感器ç²å¾—çš„ä¿¡æ¯ç¯€(jié)制機器人的行動。本文按照æ¦è¡“(shù)擂臺機器人的實際需è¦ï¼Œè¨(shè)計了機器人的節(jié)制系統(tÇ’ng),實ç¾(xià n)æ”åƒé 圖象收羅ã€è™•ç½®æ‡²ç½°å’Œèˆµæ©Ÿç¯€(jié)制ç‰åŠŸèƒ½ã€‚
計謀計劃層ä¸ï¼Œå› 為圖象信æ¯å…·æœ‰ä¿¡æ¯è±åŽšã€å°å ´æ™¯æ寫完整的特色,é‡è¦æ ¹æ“š(jù)處置æ”åƒé 收集的圖象信æ¯å¯¦ç¾(xià n)色彩目的定ä½ã€‚這里接ç´Linux嵌入å¼æ“作系統(tÇ’ng)ï¼Œå› ç‚ºåµŒå…¥å¼ç³»çµ±(tÇ’ng)資æºçš„é™å®šï¼Œè«‹æ±‚目的辨èª(rèn)算法é‹è½‰(zhuÇŽn)效率高,å 用內(nèi)å˜ç©ºé–“å°ã€‚硬件平臺é‡å¦‚果節(jié)制舵機實ç¾(xià n)機器人的活動節(jié)制。
1.1機器人團(tuán)體架構(gòu)
由圖ä¸èƒ½å¤ 看得出,機器人é é ‚éƒ¨é‡‡ç´æ”åƒé ï¼Œæ ¹æ“š(jù)USB接å£å–主控æ¿èˆ‰è¡ŒéŠœæŽ¥ï¼Œé©ç”¨äºŽæ”¶ç¾…圖象信æ¯ã€‚機器人腰腹部ã€è…¿éƒ¨ã€èƒ³è†Šå„樞ç´ä½¿ç”¨èˆµæ©Ÿä½¿å…¶å…·æœ‰å¿…定的自由度,用到的舵機為CDS系列數(shù)å—舵機。它內(nèi)部有ATmega8芯片,主控æ¿æ ¹æ“š(jù)串å£å–ATmega8é€šä¿¡ï¼Œå°±èƒ½å¤ ?qÅ«)å´¿F(xià n)舵機的掌æ¡ã€‚é‡å°ä»¥ä¸Šè«‹æ±‚,å–æ¤åŒæ™‚斟酌體系的實時性,采ç´S3C6410作為主控芯片。é (yù)期掌æ¡é«”系整體框圖如圖2所示。
1.2舵機控制系統(tÇ’ng)è¨(shè)計
主控æ¿ç¶“(jÄ«ng)ç”±éŽç¨‹ä¸²å£1完æˆå–舵機之間的數(shù)æ“š(jù)通信,舵機控制電路的原ç†åœ–如圖3所示。
å› ç‚ºåŠé›™å·¥æ•¸(shù)æ“š(jù)ç·šåªæœ‰ä¸€æ ¹ï¼Œæ‰€ä»¥å¿…é ˆåœ¨é›»è·¯ä¸Šå¯¦ç¾(xià n)發(fÄ)é€å’Œé ˜(lÇng)å—上的別離。這里網(wÇŽng)絡(luò)Robotis_UARTä¸€ç«¯ç›´é ˜(lÇng)å—到舵機的旌旗燈號線上,而å¦ä¸€ç«¯ç¶“(jÄ«ng)ç”±74HC126的兩個緩沖器劃分å–主控芯片的TXD1å’ŒRXD1相連,å†ç¶“(jÄ«ng)éŽä¸»æŽ§èŠ¯ç‰‡ä½¿èƒ½çš„é«”å¼æ ¼å±€ä¾†ç¢ºå®šæ˜¯ç™¼(fÄ)é€ä»æ˜¯é ˜(lÇng)å—數(shù)æ“š(jù)ã€‚ä¸»æŽ§èŠ¯ç‰‡èƒ½å¤ ä½¿NLED1為高而NLED2為低,這時候TXD1å°±å–得了線路的控制權(quán)ï¼Œä¸»æŽ§èŠ¯ç‰‡å°±èƒ½å¤ ç™¼(fÄ)é€æ•¸(shù)æ“š(jù)到舵機了。å之,當(dÄng)NLED2為高而NLED1為低時,這時候RXD1å°±å–得了線路的控制權(quán)ï¼Œé€™æ™‚å€™èˆµæ©Ÿèƒ½å¤ è¿”å›žæ•¸(shù)æ“š(jù)。
舵機æ“縱的軟件層é¢ï¼Œéœ€æ±‚完æˆä¸²å£çš„相干è¨(shè)置,關(guÄn)éµåŒ…å«æ³¢ç‰¹çŽ‡ã€è‚‡ç«¯ä½æ•¸(shù)ã€æ•¸(shù)æ“š(jù)ä½æ•¸(shù)ã€æˆªæ¢ä½æ•¸(shù)å’Œæµæ“縱形å¼ã€‚這里將其è¨(shè)置為波特率19200ã€è‚‡ç«¯ä½1ä½ã€æ•¸(shù)æ“š(jù)ä½8ä½ã€æˆªæ¢ä½1ä½å’Œç„¡æµæ“縱形å¼ã€‚串å£çš„è¨(shè)置關(guÄn)éµæ˜¯è¨(shè)ç½®structtermios布局體的å„æˆå“¡å€¼ï¼Œå¦‚下所示:
2圖åƒè˜åˆ¥ç®—法
æ”åƒé 收羅到的圖象關(guÄn)éµä½œå¦‚下處置懲罰:首先å°æ•¸(shù)æ“š(jù)解碼,æ“縱查表法將RGB空間模å數(shù)æ“š(jù)轉(zhuÇŽn)化為HSI空間模å,然åŽé‡‡å–類間方差法將圖象開展兩值化,å†æ“縱連通域?qÅ«)δ康拈_展標(biÄo)定,最終å°åœ–象開展往噪,進(jìn)而實ç¾(xià n)目的的辨èª(rèn)和定ä½ã€‚圖象處置懲罰æ¥ä¼æµç¨‹åœ–如圖4所示。
æ”åƒé 收集的圖象為RGB花樣,但RGB模åä¸Rã€Gã€B值易å—光芒å±å®³ï¼Œä¸é©å®œèˆ‰è¡Œè‰²å½©è¾¨èª(rèn)ï¼›HSI模åä¸ï¼Œå·®åˆ¥çš„色彩å°æ‡‰(yÄ«ng)差別的色調(dià o)åƒæ•¸(shù)H,而且Hå—外界光照å±å®³å°ï¼Œå› 而接ç´HSI模å實ç¾(xià n)色彩辨èª(rèn)ã€‚å› è€Œï¼Œè¦ç¶“(jÄ«ng)éŽæŸç¨®ç®—法,先將RGBè‰²åŸŸç©ºé–“æ˜ å°„åˆ°HSI空間。常用的色彩空間轉(zhuÇŽn)æ›ç®—法如下:
智能物æµçš„智能分æ€æ©Ÿå™¨äººæ’種å¼è‡ªå‹•åˆ†æ€æ©Ÿå™¨äººå¯¦ç¾(xià n)色彩空間轉(zhuÇŽn)æ›ä¹‹åŽå°±è¦æ ¹æ“š(jù)分æ§çš„H值å°åœ–象舉行兩值化處置懲罰。兩值化的本質(zhì)是一分類題目,å³æŠŠä¸€å¹…圖象所å«æœ‰çš„0~255的兩進(jìn)制åƒç´ æ ¹æ“š(jù)æŸå€‹é–¾å€¼åŠƒåˆ†ç´…兩類。若是閾值è¨(shè)得太低,æˆæžœæœƒå¼•å…¥éŽé‡çš„åŽè‡ºä¿¡æ¯ï¼Œä½†å¤ªé«˜å°±æœƒæ‹›è‡´æ–¹é‡ä¿¡æ¯çš„喪失。類間方差法和直方圖å‡è¡¡æ³•ï¼ˆBalancedHistogramThresholding,BHT)是ç¾(xià n)階段使用較廣的主動閾值計算方法。
這里接ç´é¡žé–“方差法,它的焦點æ€ç·’便是經(jÄ«ng)ç”±éŽç¨‹æœ€å¤§åŒ–類間方差來尋覓最好閾值。å‡å®šæŸä¸€é–¾å€¼T將全部兩值圖象分為C0å’ŒC1兩類,則兩類的泛起幾率å¯ä»¥ç”¨ä¸‹å¼ç›¤ç®—:
如上所述,最好閾值的推斷標(biÄo)準(zhÇ”n)æ˜¯ä½¿å¾—é¡žé–“æ–¹å·®æœ€å¤§ã€‚å› è€Œç¶“(jÄ«ng)ç”±éŽç¨‹éæ·æ¯å€‹ç°åº¦å€¼ï¼Œå¹¶è¼ƒé‡çˆè«–其分別帶來的類間方差,總能找到一個é©åˆçš„閾值知足å‰æã€‚å› ç‚ºå¼è¼ƒé‡çˆè«–二階ä¸å¿ƒçŸ©è¼ƒé‡çˆè«–é‡è¼ƒå¤§ï¼Œè€ƒæ…®ï¼š
顯然,å¼åªéœ€è¦è¼ƒé‡çˆè«–é¡žå…§(nèi)å‡å€¼ï¼Œå³ä¸€éšŽçŸ©ã€‚å› è€Œæœ€å¤§åŒ–å°±è½‰(zhuÇŽn)化為最大化å¼ã€‚
接下來的事情便是å°åœ–象開展標(biÄo)定,這里所指的標(biÄo)定便是ä¾æ“š(jù)兩值化åŽçš„圖象,較é‡çˆè«–出方é‡åœ°å€(qÅ«)的外接矩形ä½ç½®ã€‚æ£åœ¨æ–¹é‡çµ„æˆæ¯”較簡單的情æ³ä¸‹ï¼ŒæŠ•å½±æ³•æ˜¯æœå¾žæœ€é«˜çš„è¦é ˜(lÇng),而當(dÄng)å ´æ™¯ä¸å˜æ£åœ¨å¤šå€‹æ–¹é‡æ™‚,大都情æ³ä¸‹é ˆè¦é–‹å±•é€£é€šåŸŸè¼ƒé‡çˆè«–。拓?fù)鋵W(xué)ä¸æŠŠé€£é€šæ€§ç•Œèªªç‚ºï¼Œåœ°å€(qÅ«)å…§(nèi)隨æ„率性兩點之間å˜æ£åœ¨æœ€å°‘一æ¢æ›²ç·šèƒ½å¤ ?qÅ«)â’î’œå²î’¦B。今æœçš„連通域標(biÄo)å¿—è¦é ˜(lÇng)é—œ(guÄn)éµåˆ†å…©é¡žï¼šæŽƒæ法和輪廓跟蹤法。掃æ法的基本æ€è·¯æ˜¯é€ä¸€æœæª¢æ¯ä¸€å€‹åƒç´ 的值和連通性,進(jìn)而å–得所有的連通性æ寫信æ¯ï¼Œç„¶åŽä¾æ“š(jù)æ¯é»žä¹‹é–“的相互干系較é‡çˆè«–出末了的地å€(qÅ«)個數(shù)和組æˆå¹²ç³»?;趻呙璧倪B通標(biÄo)志演示如下:
首先å°å…©å€¼åœ–象進(jìn)行行掃æç²å¾—線段連通符號,如圖5所示。然åŽæŸ¥æŠ„æ¯è¡Œä¹‹é–“線段å–上一行線段之間的連通干系,并變動符號。
京æ±åˆ†æ€æ©Ÿå™¨äººä¾›æ‡‰(yÄ«ng)商第1行:線段1建立符號A。
第2行:線段2ã€1之間連通,線段2標(biÄo)記為A;線段3åŒç†æ¨™(biÄo)記為A。
第3行:線段4ã€2之間連通,線段4標(biÄo)記為A;線段5建立標(biÄo)記為B。
第4行:線段6ã€4之間連通,線段6符號為A;線段6ã€5之間連通,將線段5的符號由B變æˆA。
第5行:線段7創(chuà ng)立符號B;線段8ã€6之間連通,線段8符號為A。åŽæžœå¦‚圖6所示。
將圖象標(biÄo)å®šçµ‚äº†èƒ½å¤ åŽ»æŽ‰åœ–è±¡ä¸çš„噪點,而且找到目標(biÄo)çš„ä¸é–“,實ç¾(xià n)目標(biÄo)的定ä½ã€‚
3實驗å–åŽæžœé—¡æ˜Ž
å°‡æ“縱å¡è£åˆ°æ©Ÿå™¨äººä¸Šï¼Œæ“縱機器人活動,æ£åœ¨æ´»å‹•ä¸æ”åƒé 收集圖象,而且用方框?qÅ«)⒎结橀_展標(biÄo)定。使用以上色彩辨èª(rèn)算法å°åœ–白色繡çƒé–‹å±•æ¨™(biÄo)定,ç²å¾—如圖7所示的åŽæžœã€‚
伴隨著機器人的活動,繡çƒæ£åœ¨åœ–象ä¸çš„ä½ç½®ç™¼(fÄ)生變化,機器人憑據(jù)標(biÄo)定æˆæžœï¼Œå°±èƒ½å¤ ç²å¾—繡çƒçš„ä½ç½®ï¼Œæ†‘æ“š(jù)ä½ç½®èª¿(dià o)劑自身的活動æ£ç¢ºæ‰¾åˆ°ç¹¡çƒã€‚圖象收羅的速度到é”(dá)15å¹€/s,舵機節(jié)制æ£ç¢ºåº¦åˆ°é”(dá)0.32Â°ï¼Œèƒ½å¤ åœ“æ»¿å®Œæˆè§’é€ä½¿å‘½ã€‚
çµ(jié)語
本文以S3C6410作為主控芯片,è¨(shè)計了具有視覺辨èª(rèn)功效的類人機器人節(jié)制系統(tÇ’ng)。é©æ–°çš„色彩辨èª(rèn)算法行使查表法ã€é¡žé–“方差法ã€é€£é€šåŸŸç‰è¾¦æ³•å°åœ–象舉行處置懲罰,å–得了優(yÅu)ç§€çš„è¦–é »è¾¨èª(rèn)çµ(jié)果。實è¸è‰æ˜Žï¼Œç”±è©²ç¯€(jié)制系統(tÇ’ng)çš„è¨(shè)è¨ˆæ–¹æ¡ˆåˆ¶é€ è€Œæˆçš„類人機器人,具有優(yÅu)秀的自立節(jié)制穩(wÄ›n)定性和較好的視覺辨èª(rèn)æœ¬é ˜(lÇng),å¯ä»¥è¼ƒç²¾å½©åœ°å®Œæˆè§’é€ã€‚
å°é»ƒäººåˆ†æ€æ©Ÿå™¨äººå¤šå°‘錢分æ€æ©Ÿå™¨äººæŽ§åˆ¶è¨(shè)備快éžå…¬å¸åˆ†æ€æ©Ÿå™¨äºº