付 彤,陳興文
(1.大連理工大學城市學院電子與自動化學院,遼寧 大連 116600;2.大連民族大學信息與通信工程學院,遼寧 大連 116600)
移動機器人的目標跟蹤技術(shù)不同于普通的目標跟蹤技術(shù)研究,其跟蹤效果受到目標跟蹤算法和機器人本身硬件設(shè)備的雙重影響[1]。近些年來,基于相關(guān)濾波的跟蹤算法憑借其快速的跟蹤計算方式被廣泛應用,基于相關(guān)濾波與神經(jīng)網(wǎng)絡相結(jié)合的目標跟蹤算法也隨著科技的不斷發(fā)展成為了一個研究方向。目前機器人目標跟蹤技術(shù)在應用過程中依然存在諸如:目標遮擋、丟失、形變、長時間跟蹤以及實時性等問題。隨著機器人技術(shù)的不斷發(fā)展進步,其本身攜帶的多種傳感器,也為準確的找到目標信息提供有力保障。除此之外,單目攝像頭、雙目攝像頭、激光雷達、深度攝像頭等也被廣泛應用在機器人目標跟蹤技術(shù)研究領(lǐng)域。
因此,將相關(guān)濾波的神經(jīng)網(wǎng)絡與移動機器人平臺展開研究,著力提高移動機器人平臺目標跟蹤的準確性和實時性將是一件極為有意義的事情[2]。為此,本課題提出基于寬度學習的目標檢測技術(shù)并與自行設(shè)計的移動機器人平臺結(jié)合,實現(xiàn)對運動目標的實時檢測與跟蹤,實現(xiàn)對目標的跟蹤檢測和實時控制[3]。
基于寬度學習的目標跟蹤檢測技術(shù)流程圖如圖1所示。
圖1 目標跟蹤檢測技術(shù)流程圖
首先需要制作適量比例的正負樣本數(shù)據(jù)集,使用寬度學習網(wǎng)絡對制作的數(shù)據(jù)集進行離線訓練,最終獲得相應權(quán)重;再根據(jù)第一幀給定的中心提取正負樣本,使用粒子濾波對當前幀選取多個候選區(qū)域,并運用BLS進行特征提取,依據(jù)評判機制對結(jié)果進行打分,選取最高的評分值作為最終跟蹤結(jié)果。當評分結(jié)果大于閾值時直接進行下一幀的跟蹤;當小于閾值時,在更新正樣本的同時,重新采集負樣本,重新BLS網(wǎng)絡訓練。
機器人視覺系統(tǒng)整體框架如圖2所示。
首先在PC端配置FTP服務器,使得無線傳輸均在同一網(wǎng)絡下進行,攝像頭將采集到的信息通過無線網(wǎng)絡傳送PC機進行保存。上位機發(fā)送TCP指令信息通過WiFi傳送給下位機,STM32對接收到的信息進行解析,然后調(diào)整電機運動方式。
圖2 整體框架圖
下位機主要由電氣控制和機械執(zhí)行兩部分組成,機械執(zhí)行部分主要指執(zhí)行上位機傳送的控制信號進行機器人的左右前后動作指令。下位機主要由STM32單片機、WiFi模塊、直流電機、直流電機驅(qū)動等模塊構(gòu)成。
PC端的處理結(jié)果通過WiFi模塊進行通信,WiFi模塊使用的型號為HF-LPT120A,實現(xiàn)PC端(TCP協(xié)議)→路由器→WiFi模塊→stm32之間數(shù)據(jù)的傳輸。
直流電機的驅(qū)動方式采用脈沖寬度調(diào)制PWM電機驅(qū)動芯片L298N,單片機輸出PWM調(diào)速信號至L298N,從而實現(xiàn)機器人的前進、后退和左右轉(zhuǎn)向以及轉(zhuǎn)速的調(diào)整。
電機及驅(qū)動模塊采用2路的H橋驅(qū)動方式,因此可以同時驅(qū)動兩個電機,使能ENA ENB之后,分別從IN1 IN2輸入PWM信號驅(qū)動電機1的轉(zhuǎn)速和方向;分別從IN3 IN4輸入PWM信號驅(qū)動電機2的轉(zhuǎn)速和方向。機器人平臺組成如圖3所示。
圖3 機器人平臺組成框圖
首先,視頻信息區(qū)域需要手動輸入視頻幀高、視頻幀寬、點擊開始跟蹤按鈕時中心點的X、Y坐標;界面實時采集區(qū)域顯示的是攝像頭通過無線網(wǎng)絡傳送PC機的圖像信息;目標跟蹤區(qū)域用于顯示經(jīng)過PC機端目標跟蹤算法處理完的結(jié)果圖像,當點擊開始跟蹤按鈕,則調(diào)用基于寬度學習的目標跟蹤算法?;趯挾葘W習的跟蹤算法需要的輸入為兩部分的數(shù)據(jù):一是需要PC機端保存下來的實時圖像信息;二是首幀的圖像信息,即圖像的幀高、圖像的幀寬和首幀圖像的中心點坐標。最終將預測結(jié)果圖像在目標跟蹤區(qū)域顯示。根據(jù)目標跟蹤的預測結(jié)果,即預測的中心點坐標進行運動控制策略最終轉(zhuǎn)變成前進、后退、左轉(zhuǎn)或右轉(zhuǎn)的指令信息,實現(xiàn)自動跟蹤調(diào)整。指令操作區(qū)域能夠?qū)崿F(xiàn)手動對下位機的控制,目的是輔助下位機更好的完成目標跟蹤任務。設(shè)置按鈕則是實現(xiàn)將所有的數(shù)值進行初始化的功能。退出按鈕則是退出該系統(tǒng)。上位機界面和下位機機器人實體如圖4所示。
圖4 上位機運行界面和機器人實體
首先以(960,540)圖像中心點為中心建立直角坐標系,以半徑為四分之一幀高做圓,預測中心點與圖像中心點連線與圖像中心點的y軸的夾角為θ,當0°<θ<30°時,則認定只進行前后位置移動,如果預測中心點的縱坐標大于實際圖像中心點的縱坐標,則需要目標物的位置往圖像上方移動,機器人需要作出后退指令,反之則前進;當30°<θ<45°時,則認定只進行左右位置移動,方向指令還是根據(jù)預測中心點和圖像實際中心點比較坐標大小決定,如果預測中心點的橫坐標大于圖像中心點的橫坐標,則需要目標物的位置往圖像左側(cè)移動,實際下位機需要作出右轉(zhuǎn)指令,反之則左轉(zhuǎn),上位機只發(fā)送方向信息和角度信息,機器人執(zhí)行相應指令信息;當45°<θ<60°時和當60°<θ<90°時,調(diào)整方向都是統(tǒng)一的,調(diào)整速度移動指令將會進行不同程度的速度調(diào)整。速度調(diào)整則是根據(jù)上位機發(fā)送的偏轉(zhuǎn)角度信息,對機器人持續(xù)發(fā)送高低電平控制信號進行調(diào)整。
挑戰(zhàn)因素是人物在相對復雜的背景下進行移動,之后再次進行新的挑戰(zhàn)因素,對跟蹤目標進行部分和全部遮擋以及形變操作。實驗結(jié)果如圖5所示。
圖5 跟蹤目標在屏幕左側(cè)、右側(cè)、形變、部分遮擋情況下的實驗
圖5的圖片組分別是目標在圖片顯示區(qū)域的左側(cè)、右側(cè)、形變、部分遮擋等情況下的執(zhí)行結(jié)果情況。通過UI界面可以看出,4組圖片同樣基本都能夠在誤差允許范圍內(nèi)對目標進行識別,同樣說明了基于寬度學習的目標跟蹤技術(shù)的可行性,且能夠較好地處理形變、遮擋等問題;下位機也能夠根據(jù)預測出的結(jié)果進行相關(guān)指令的操作,可以實現(xiàn)自動跟蹤的效果。
本文對相關(guān)濾波的神經(jīng)網(wǎng)絡與自行搭建的移動機器人平臺展開應用設(shè)計,并進行實際應用測試實驗。在實驗過程中,選取具有形變、遮擋問題等挑戰(zhàn)因素的場景進行實際跟蹤測試;測試結(jié)果表明基于寬度學習的目標跟蹤技術(shù)在移動機器人平臺的移植應用能夠?qū)崿F(xiàn)對運動目標的實時跟蹤檢測與實時控制,驗證了本方案的可行性。