


作者簡介:李紅霞(1980— ),女,講師,碩士;研究方向:電子信息,計算機通信。
摘要:文章以STM32系列單片機為主控芯片,進行了STM32單片機的內部配置,通過上位機的攝像頭對視頻數據進行采集,之后利用圖像處理技術依據物體的顏色進行匹配,當顏色達到要求則說明有很大的可能性是目標物體,則攝像頭就會對其進行鎖定識別并自動跟蹤。下位機中用串口將數據發送到電腦進行調試,上位機將調試完畢的數據作為控制數據繼而對電機的轉速和轉向進行控制,從而達到對目標識別之后上位機對下位機進行指令發送,實現自動跟蹤的效果。經過實驗,小車能夠根據顏色對目標物體進行識別并跟蹤。
關鍵詞:STM32;圖像處理;模式識別;自動跟蹤
中圖分類號:中圖分類號TP391.41" 文獻標志碼:A文獻標志碼
0" 引言
在AI盛行的當下,智能自動化技術愈演愈烈,在圖像控制領域也迸發出更多解決方案,智能跟蹤亦是這其中一個不可或缺的角色[1],作為自動駕駛潮流的后浪,如何進行更加精確的跟蹤技術研究是值得不斷探索的課題。
如今,各種各樣針對具體目標檢測、識別和跟蹤的不同算法在眾多學者與科研專家的不懈努力下不斷地豐富拓展。因此,對智能小車的研究在理論或現實應用中具有十分重要的價值[2-3]。
1" 系統總體方案
基于STM32圖像識別的跟蹤小車主要采用STM32F103RCT6芯片作為主控制器,包括圖像采集、上位機設計、電源模塊、超聲波模塊、電機驅動模塊以及下位機采用的小車。系統設計如圖1所示。
1.1" 主控制器STM32
主控制器采用STM32F103RCT6單片機為控制核心,輔以外圍設備,如供電模塊、超聲波傳感器、減速電機、圖像采集等模塊。STM32F103RCT6使用高性" 能的ARM CortexTM-M3 32位的RISC內核,工作頻率為72 MHz,內置高速存儲器(高達512 KB的閃存和64 KB的SRAM)、豐富的增強I/O端口和連接到2條APB總線的外設[4],包含3個12位的ADC、4個通用的16位定時器和2個PWM定時器,還包含標準和先進的通信接口:2個I2C、3個SPI、2個I2S、1個SDIO、5個USART、1個USB和1個CAN。
1.2" 圖像采集模塊
由于系統采用的是嵌入式硬件樹莓派,本文采用Pi CSI接口攝像頭,有500萬像素,支持3代b/2代,通過nc命令將攝像頭的輸入數據直接重定向到網絡端口實現輸出。(1)鏡頭:1/4" 5M ;(2)光圈:2.9 ;(3)焦距:3.29 ;(4)視場角:72.4°[5]。
1.3" 藍牙模塊
超聲波模塊部分采用HC-SR04超聲波發射器,可與STM32直接兼容。HC-SR04采用端口部分的IO口進行功能觸發測距,需要給予不低于10 μs的高電信號,可發射8個頻率為40 kHz的方波,并且可以對回波信號進行返回檢測,得出距離參數。
HC-SR04的測量精度已經可以媲美于SRF05和SRF02,盲區在2 cm之內。HC-SR04距離公式:實際距離=高電平時間×聲速/2,聲速為340 m/s。
2" 軟件設計
2.1" 上位機軟件設計
系統采用樹莓派自帶攝像頭,并采用OpenCV和Python實現圖像處理,當圖像被判斷為是紅色物體并且距離在50 cm之內時,上位機發出命令使小車前進實現跟蹤。
系統采用攝像頭調用函數video_demo()采集實時的圖像信息,之后通過屬性的讀取函數access_pixels(image)讀取RGB3通道的參數,為寬度、高度和通道數,用inverse取反像素。系統采用色彩空間轉換函數cvtColor(),可以將任意一張輸入的圖片轉換為不同的色彩空間。
首先,對提取的圖像信息進行二值化處理,可以極大地減少圖像中所包含的各類數據量,一次可以把目標的輪廓凸顯處理。其次,對圖像進行模糊控制,主要用于降低圖像里面所產生的噪聲。最后,進行高斯模糊減少圖像的高頻分量,高斯模糊后對圖像進行膨脹與腐蝕,有助于過濾與消除噪聲。
2.2" 下位機軟件設計
下位機主要接收上位機串口傳輸的數據,對發電機進行處理,并進行系統程序的優化。與此同時,下位機上傳超聲波測距數據至上位機進行判斷。上位機做出相應決策,傳輸啟停、速度信號至下位機控制轉速。下位機執行流程如圖2所示。
當下位機檢測數據到開始發送之后,系統顯示“Slaver has responded the call”,代表上位機與下位機" 聯通成功。當通信聯通,間隔1 s,系統開始正常運行,由于使用串口,需要對串口進行初始化操作,采用封裝函數方式進行初始化,方便編寫,提高程序可讀性。
3" 系統的實現
上位機使用的是安裝在樹莓派上的OpenCV軟件,通過安裝在上位機的攝像頭獲取圖像,再經過對原圖像進行各種運算,選出物體的顏色進行匹配。如果顏色達到一定的要求則說明有很大的可能性是目標物體,則攝像頭就會對其進行鎖定識別與跟蹤。
下位機以STM32系列單片機為主控芯片,進行STM32單片機的內部配置,通過上位機的攝像頭對視頻數據進行采集,之后由上位機利用相關算法對采集的數據進行處理得到指令數據,隨之將上位機與下位機利用串口進行通信,再將下位機中的數據用串口發送到電腦顯示進行調試,將調試完畢的數據作為控制數據繼而對電機的轉速和轉向進行控制,實現自動跟蹤的效果。經過反復實驗,小車能夠實現預期目標,能夠對紅顏色物體進行跟蹤。跟蹤效果如圖3—4所示。
4" 結語
系統主要實現了通過對上位機下發數據與自身采樣數據的比較而對車體進行實際控制的主要功能,完成了對車體啟動與停止條件的控制,優于普通芯片的順序控制,優點在于采用中斷滿足了整體車型運行,可穩定、流暢地運行系統的主要功能。
參考文獻
[1]譚永宏,張輝.智能尋跡小車的研究與設計[J].微計算機信息,2008(8):317-319.
[2]楊國龍,楊沛濤.基于樹莓派智能小車控制系統的設計[J].中國高新科技,2022(23):32-34.
[3]徐琛浩,胡藝軒,丁縱遼,等.無線充電智能小車設計[J].現代計算,2023(10):117-120.
[4]張明嬌.基于深度學習的行人檢測與跟蹤系統的設計與實現[J].長江信息通信,2023(9):19-21.
[5]儲澤楠,王偉,蔡勝宇.基于OpenMV的視覺識別系統在六足機器人中的應用[J].河南科技,2019(34):26-29.
(編輯" 王雪芬)
Design of tracking car based on STM32
Li" Hongxia, Wu" Chao, Jing" Yang
(School of Mechanical and Electrical Engineering and Automation, Nanhang Jincheng College, Nanjing 211156, China)
Abstract:" The main research and design of the system is based on the STM32 series microcontroller as the main control chip. The internal configuration of the STM32 microcontroller is carried out, and video data is collected through the camera of the upper computer. Then, image processing technology is used to match the color of the object. When the color meets the requirements, it is said that there is a high possibility of being the target object, and the camera will lock, recognize, and track it, The data in the lower computer is sent to the computer through a serial port for debugging. The debugged data is used as control data to control the speed and direction of the motor. This achieves automatic tracking by sending instructions from the upper computer to the lower computer after target recognition. Through experiments, the car can recognize and track the target object based on color.
Key words: STM32; image processing; pattern recognition; automatic tracking