• 
    

    
    

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

      基于Arduino的目標(biāo)跟蹤系統(tǒng)設(shè)計(jì)

      2021-06-30 03:07:50楊傳琪楊樹(shù)蔚劉詠梅閆克丁
      關(guān)鍵詞:云臺(tái)舵機(jī)圓形

      楊傳琪, 楊樹(shù)蔚, 劉詠梅, 閆克丁

      (1.國(guó)網(wǎng)陜西省電力公司西咸新區(qū)供電公司, 陜西 西安 712000; 2.上海電力大學(xué), 上海 200090; 3.西安工業(yè)大學(xué), 陜西 西安 710021; 4.西北工業(yè)集團(tuán), 陜西 西安 710043)

      目標(biāo)識(shí)別跟蹤是指通過(guò)攝像頭等視覺(jué)設(shè)備采集圖像,并且通過(guò)目標(biāo)檢測(cè)算法實(shí)現(xiàn)對(duì)圖像中所有目標(biāo)的提取,通過(guò)識(shí)別算法實(shí)現(xiàn)對(duì)特定目標(biāo)的提取,然后再利用跟蹤控制算法實(shí)現(xiàn)對(duì)識(shí)別的特定目標(biāo)的追蹤。

      自20世紀(jì)50年代,越來(lái)越多的的研究人員開(kāi)始鉆研目標(biāo)識(shí)別跟蹤系統(tǒng)。動(dòng)態(tài)目標(biāo)識(shí)別跟蹤系統(tǒng),尤其是二維動(dòng)態(tài)目標(biāo)識(shí)別跟蹤的研究已成為研究焦點(diǎn)。此課題涉及的學(xué)科包括圖像處理技術(shù)、自動(dòng)控制、計(jì)算機(jī)視覺(jué)、機(jī)械設(shè)計(jì)制造等,作為多學(xué)科交叉的產(chǎn)物,目標(biāo)識(shí)別跟蹤具有極大的研究?jī)r(jià)值。隨著計(jì)算機(jī)視覺(jué)、計(jì)算機(jī)硬件的極速發(fā)展和完善,在科學(xué)和工程領(lǐng)域中,目標(biāo)識(shí)別跟蹤技術(shù)的運(yùn)用越來(lái)越普遍。

      在生活中,目標(biāo)識(shí)別跟蹤系統(tǒng)主要應(yīng)用于視頻監(jiān)控、交通管制、公安偵查等領(lǐng)域。視頻監(jiān)控系統(tǒng)能夠?qū)σ曇皟?nèi)的所有目標(biāo)實(shí)時(shí)監(jiān)控,完成提取目標(biāo)的檢測(cè)、識(shí)別與跟蹤,比較先進(jìn)的系統(tǒng)還可以根據(jù)人的行為判斷是否違法,進(jìn)而給出警告,通知工作人員處理。但是目前的視頻監(jiān)控都在系統(tǒng)后臺(tái)完成,需要有人負(fù)責(zé)相關(guān)工作,不僅浪費(fèi)了人力資源,而且還可能由于個(gè)人原因?qū)е屡袛嗍д`。因此,無(wú)人工參加的視頻監(jiān)控系統(tǒng)越來(lái)越受到人們的歡迎。二維目標(biāo)識(shí)別跟蹤系統(tǒng)監(jiān)控范圍大、角度廣,應(yīng)用在視頻監(jiān)控系統(tǒng)中可以有效地解決固定攝像頭帶來(lái)的弊端,更好地實(shí)現(xiàn)多攝像頭接力跟蹤。

      隨著生活中突發(fā)事件發(fā)生概率的增大,對(duì)社會(huì)信息的需求也趨向更加密集復(fù)雜。為提前預(yù)防各種事件,需要加強(qiáng)對(duì)重點(diǎn)區(qū)域運(yùn)動(dòng)目標(biāo)的檢測(cè)跟蹤能力,對(duì)被跟蹤目標(biāo)的當(dāng)前狀態(tài)進(jìn)行行為分析和態(tài)勢(shì)評(píng)估,可以減少意外的發(fā)生[1]。由此,自動(dòng)目標(biāo)識(shí)別作為目標(biāo)跟蹤系統(tǒng)的重要技術(shù),已成為研究熱點(diǎn)[2]。

      目前,對(duì)于圓形目標(biāo)的識(shí)別算法主要有基于Hough變換算法和基于圓度檢測(cè)算法。文獻(xiàn)[3]提出了基于廣義Hough變換的殘缺圓檢測(cè)方法,利用多圓快速隨機(jī)檢測(cè)特性,以提高對(duì)殘缺圓檢測(cè)的適應(yīng)性,但是對(duì)均值收斂的快慢、方差大小這些統(tǒng)計(jì)信息需求增多,導(dǎo)致檢測(cè)速度降低。近年來(lái),由于目標(biāo)的視覺(jué)檢測(cè)技術(shù)逐漸成熟,研究者開(kāi)始圍繞基于視覺(jué)的運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤技術(shù)。文獻(xiàn)[4]針對(duì)道路識(shí)別和避障提出了輕度機(jī)器視覺(jué)方法。同時(shí),清華大學(xué)、西安交大等機(jī)構(gòu)都在視覺(jué)跟蹤方面取得了成果,其研究目標(biāo)包括體育視頻中的運(yùn)動(dòng)目標(biāo)、野外環(huán)境下的目標(biāo)等[5-6]。

      本文設(shè)計(jì)并實(shí)現(xiàn)了一種圖形識(shí)別跟蹤系統(tǒng)。該系統(tǒng)包括圖像處理、基于Arduino云臺(tái)控制器和舵機(jī)云臺(tái)3個(gè)模塊,計(jì)算機(jī)處理相機(jī)采集的圖像,通過(guò)Arduino控制舵機(jī)轉(zhuǎn)動(dòng)角度,精確調(diào)整相機(jī)方位、俯仰姿態(tài),以實(shí)現(xiàn)圖形的追蹤。

      1 圖形識(shí)別跟蹤系統(tǒng)原理

      本文設(shè)計(jì)的識(shí)別跟蹤系統(tǒng)框圖如圖1所示。

      圖1 基于Arduino的目標(biāo)跟蹤系統(tǒng)框圖

      基于Arduino的目標(biāo)跟蹤系統(tǒng)主要包括圖像處理前端和運(yùn)動(dòng)控制端兩個(gè)部分。圖像處理前端實(shí)現(xiàn)圖像預(yù)處理、目標(biāo)檢測(cè)識(shí)別和目標(biāo)跟蹤功能,通過(guò)對(duì)運(yùn)動(dòng)目標(biāo)圖像位置的提取,得到具體的位置數(shù)據(jù),并發(fā)送偏差數(shù)據(jù)。運(yùn)動(dòng)控制端接收?qǐng)D像處理端發(fā)送的位置偏差量,通過(guò)控制算法控制舵機(jī)轉(zhuǎn)動(dòng)。

      2 圖形識(shí)別跟蹤系統(tǒng)總體方案

      基于Arduino的目標(biāo)跟蹤系統(tǒng)主要有相機(jī)、跟蹤云臺(tái)、控制器和上位機(jī)組成框架,如圖2所示。計(jì)算機(jī)將相機(jī)采集的目標(biāo)圖像進(jìn)行處理得到偏離圖像中心的像素差,然后通過(guò)串口給控制器發(fā)送指令,控制器接收?qǐng)D像中心的像素差,以此完成對(duì)舵機(jī)的控制,從而保證目標(biāo)圖像位于視場(chǎng)中心區(qū)域,達(dá)到跟蹤目的。

      圖2 基于Arduino的目標(biāo)跟蹤系統(tǒng)組成框架

      跟蹤系統(tǒng)工作過(guò)程為:當(dāng)運(yùn)動(dòng)目標(biāo)在跟蹤路徑上開(kāi)始運(yùn)動(dòng),此時(shí)上位機(jī)發(fā)送串口指令,相機(jī)獲得該指令信號(hào)后開(kāi)始對(duì)跟蹤路徑上的運(yùn)動(dòng)目標(biāo)進(jìn)行捕獲采集[7],控制二維轉(zhuǎn)臺(tái)在舵機(jī)收到相應(yīng)的控制指令后進(jìn)行相應(yīng)的轉(zhuǎn)動(dòng)調(diào)整。

      跟蹤系統(tǒng)中,當(dāng)相機(jī)光心與目標(biāo)載體的主要運(yùn)動(dòng)平行或重合時(shí),忽略次要因素,將目標(biāo)看作是一維直線運(yùn)動(dòng)。成像視場(chǎng)的擴(kuò)大借助舵機(jī)完成,能夠完成跟蹤路徑上每一位置的變化狀態(tài)的實(shí)時(shí)跟蹤,通過(guò)確定合理的方位軸旋轉(zhuǎn)角度和俯仰軸旋轉(zhuǎn)角度,擴(kuò)大跟蹤視場(chǎng)的范圍,使跟蹤更加準(zhǔn)確。當(dāng)跟蹤算法得到的目標(biāo)圖像的位置與圖像中心位置之間有偏差時(shí),表示運(yùn)動(dòng)目標(biāo)偏離圖像中心一定范圍[8]?;谶@一像素偏差,上位機(jī)軟件首先計(jì)算PID算法的輸出角度,再通過(guò)串口發(fā)送相應(yīng)的轉(zhuǎn)動(dòng)角度,二維跟蹤轉(zhuǎn)臺(tái)得到轉(zhuǎn)動(dòng)角度后向目標(biāo)圖像閾值框方向轉(zhuǎn)動(dòng),以減小運(yùn)動(dòng)目標(biāo)的跟蹤偏差,使運(yùn)動(dòng)目標(biāo)始終在相機(jī)的一定成像視場(chǎng)范圍內(nèi)。上位機(jī)對(duì)目標(biāo)圖像位置偏差信息進(jìn)行處理,通過(guò)上位機(jī)發(fā)送給單片機(jī)相應(yīng)的控制指令,使單片機(jī)控制二維跟蹤轉(zhuǎn)臺(tái)做出相應(yīng)的轉(zhuǎn)動(dòng)調(diào)整,完成在跟蹤路徑上對(duì)運(yùn)動(dòng)目標(biāo)的實(shí)時(shí)跟蹤[9]。

      2.1 云臺(tái)設(shè)計(jì)

      二維轉(zhuǎn)臺(tái)是用于控制相機(jī)運(yùn)動(dòng)的執(zhí)行機(jī)構(gòu),通過(guò)舵機(jī)控制相機(jī)運(yùn)動(dòng)完成對(duì)圖形目標(biāo)的識(shí)別追蹤。下位機(jī)控制方位舵機(jī)和俯仰舵機(jī)轉(zhuǎn)動(dòng),進(jìn)而控制安裝在轉(zhuǎn)臺(tái)上的相機(jī)移動(dòng),以跟蹤目標(biāo)。對(duì)二維轉(zhuǎn)臺(tái)各部件的功能進(jìn)行分析,使用NX12.0完成了三維模型的建立,并搭建了云臺(tái)實(shí)物,如圖3所示。

      圖3 二維轉(zhuǎn)臺(tái)三維模型及實(shí)物示意

      2.2 云臺(tái)控制器設(shè)計(jì)

      2.2.1 云臺(tái)硬件設(shè)計(jì)

      云臺(tái)控制器選擇Arduino開(kāi)發(fā)板來(lái)實(shí)現(xiàn)對(duì)舵機(jī)的控制,圖形跟蹤系統(tǒng)選擇Arduino開(kāi)發(fā)板作為硬件開(kāi)發(fā)平臺(tái),舵機(jī)選用MG996r型。Arduino和舵機(jī)連接圖如圖4所示。

      圖4 Arduino和舵機(jī)連接示意

      單片機(jī)10#管腳輸出脈沖寬度調(diào)制(Pulse Width Modulation,PWM)波控制水平舵機(jī)轉(zhuǎn)動(dòng),單片機(jī)9#管腳輸出PWM波控制俯仰舵機(jī)轉(zhuǎn)動(dòng),通過(guò)發(fā)送周期為20 ms的PWM信號(hào)控制舵機(jī)轉(zhuǎn)動(dòng)。其中,脈沖寬度在0.5~2.5 ms,相對(duì)應(yīng)舵盤(pán)的位置為0~180°,呈線性變化。

      2.2.2 云臺(tái)控制算法設(shè)計(jì)

      基于Arduino的目標(biāo)跟蹤系統(tǒng)云臺(tái)控制采用PID算法,將像素偏差的比例P、積分I和微分D的線性組合作為控制量對(duì)被控對(duì)象進(jìn)行控制。PID控制框圖如圖5所示。

      圖5 PID控制框圖

      PID控制器的比例控制、積分控制和微分控制實(shí)施不同的控制規(guī)律,對(duì)控制系統(tǒng)產(chǎn)生不同的作用[10]。作為一種線性的閉環(huán)控制器,根據(jù)不同的控制策略可以進(jìn)行組合控制或者單獨(dú)控制。PID控制期望給定值yd(t)與系統(tǒng)真實(shí)值yt(t)構(gòu)成偏差,利用此種策略完成控制。

      error(t)=yd(t)-yt(t)

      (1)

      PID的控制規(guī)律和傳遞函數(shù)形式分別為

      (2)

      (3)

      式中:K——比例系數(shù);

      TI——積分時(shí)間常數(shù);

      TD——微分時(shí)間常數(shù);

      U(s),E(s)——系統(tǒng)輸出量和輸入量。

      在計(jì)算機(jī)控制中,需要利用離散化的PID算法將矩形法數(shù)值積分近似代替積分,以一階后向差分近似代替微分可以得到離散PID表達(dá)式[11]。采用數(shù)字PID控制器,采樣時(shí)間為T(mén),進(jìn)行k次采樣,即

      (4)

      式中:k——采樣序列號(hào);

      KP——比例調(diào)節(jié)系數(shù);

      e(k)——k時(shí)的偏差值;

      KI——積分調(diào)節(jié)系數(shù);

      ei——積分誤差;

      T——采樣周期;

      KD——微分調(diào)節(jié)系數(shù);

      e(k-1)——k-1時(shí)的偏差值。

      云臺(tái)跟蹤采用圖5所示的PID控制框圖,則圖形伺服控制框圖如圖6所示。

      圖6 圖形伺服控制框圖

      為了云臺(tái)控制的穩(wěn)定性,本文采用了帶死區(qū)的位置PID控制。由圖6可知,輸入為已知期望,輸出為位置偏差,本文設(shè)計(jì)的基于Arduino的目標(biāo)跟蹤系統(tǒng)采用基于位置偏差的PID算法,設(shè)置了5個(gè)像素的邊界閾值,在解決死區(qū)邊界問(wèn)題時(shí),通過(guò)對(duì)比例、積分、微分系數(shù)的整定,確定各個(gè)環(huán)節(jié)的系數(shù)值分別為KP=0.6,KI=0.003,KD=0.002時(shí)跟蹤效果最理想。

      2.3 圖形跟蹤軟件設(shè)計(jì)

      2.3.1 圖形跟蹤軟件流程

      計(jì)算機(jī)通過(guò)連接相機(jī)實(shí)現(xiàn)目標(biāo)圖像釆集、圖像預(yù)處理、目標(biāo)檢測(cè)提取、目標(biāo)識(shí)別、云臺(tái)控制數(shù)據(jù)發(fā)送等功能。由于PyQt5具有文檔豐富、學(xué)習(xí)時(shí)間短、便于打包發(fā)布軟件等優(yōu)點(diǎn),故本文選用PyQt5開(kāi)發(fā)圖形界面。OpenCV是一個(gè)開(kāi)源的跨平臺(tái)計(jì)算機(jī)視覺(jué)庫(kù),因此本文選擇使用PyQt5+OpenCV庫(kù)來(lái)完成圓形識(shí)別的軟件開(kāi)發(fā)。計(jì)算機(jī)軟件流程如圖7所示。

      圖7 計(jì)算機(jī)軟件流程示意

      2.3.2 基于Hough變換圓形識(shí)別算法

      采用基于Hough變換圓形識(shí)別算法實(shí)現(xiàn)圓形的識(shí)別,其檢測(cè)原理是先進(jìn)行坐標(biāo)轉(zhuǎn)換后根據(jù)圓的3個(gè)維度累加度量結(jié)果進(jìn)行判斷。由于轉(zhuǎn)換到三維空間的計(jì)算量增大,為了增大可靠性,所以本文采用Hough梯度圓形檢測(cè)算法。該方法將三維累加平面轉(zhuǎn)化為二維累加平面,利用各個(gè)點(diǎn)的模向量和所有候選中心的邊緣非零像素來(lái)確定圓心和半徑,具體流程如圖8所示。

      圖8 基于Hough變換圓形識(shí)別算法流程

      首先對(duì)輸入圖像進(jìn)行邊緣檢測(cè),獲取邊界點(diǎn);然后進(jìn)行坐標(biāo)變換,由x-y坐標(biāo)系轉(zhuǎn)換到a-b坐標(biāo)系,寫(xiě)成如下形式(a-x)2+(b-y)2=r2。原圖像中存在多個(gè)圓形,同樣存在多個(gè)圓心,為了獲得對(duì)應(yīng)圓形的圓心坐標(biāo)(a,b),根據(jù)Hough變換圓形識(shí)別算法,需要對(duì)局部交點(diǎn)處圓進(jìn)行統(tǒng)計(jì)與比較,得到每一個(gè)局部最大值。若某一個(gè)r下面檢測(cè)到圓形,則該圓的r值也隨之確定。

      3 實(shí)驗(yàn)驗(yàn)證

      完成上述軟硬件開(kāi)發(fā)后,在實(shí)驗(yàn)室開(kāi)展實(shí)驗(yàn),在黑暗背景照射以一個(gè)圓亮點(diǎn)作為跟蹤對(duì)象,實(shí)驗(yàn)采集圖像如圖9所示。

      圖9 圓點(diǎn)目標(biāo)跟蹤實(shí)驗(yàn)結(jié)果

      以圖9(a)中的點(diǎn)為起始時(shí)刻,目標(biāo)點(diǎn)靠左,不在中心位置,經(jīng)過(guò)圖像處理和云臺(tái)控制后,相機(jī)向左轉(zhuǎn)動(dòng),如圖9(e)中目標(biāo)點(diǎn)基本在相機(jī)視場(chǎng)中心位置,如圖9(g)向左移動(dòng)目標(biāo)點(diǎn)后,圖9(i)又跟蹤至中心位置。經(jīng)過(guò)多次實(shí)驗(yàn)驗(yàn)證本系統(tǒng)能夠完成目標(biāo)點(diǎn)的跟蹤功能。

      4 結(jié) 語(yǔ)

      本文設(shè)計(jì)了圖形識(shí)別跟蹤系統(tǒng),實(shí)現(xiàn)了圓形識(shí)別和二維轉(zhuǎn)臺(tái)的精確控制。給出了圖形跟蹤的云臺(tái)控制器設(shè)計(jì)和軟件設(shè)計(jì)。在計(jì)算機(jī)軟件中,借助Python的圖像處理庫(kù)識(shí)別圖像中的目標(biāo),并根據(jù)預(yù)存特征判斷是否為特定目標(biāo),然后提取出目標(biāo)的位置信息,通過(guò)串口發(fā)送給下位機(jī)控制舵機(jī)轉(zhuǎn)動(dòng),最后實(shí)現(xiàn)了圖形的識(shí)別跟蹤。

      猜你喜歡
      云臺(tái)舵機(jī)圓形
      云上之家——萬(wàn)科·郡西云臺(tái)
      龍門(mén)山·臥云臺(tái)
      幫我買(mǎi)云臺(tái)
      含齒隙彈載舵機(jī)的全局反步模糊自適應(yīng)控制
      基于STM32的無(wú)線FPV云臺(tái)設(shè)計(jì)
      電子制作(2019年23期)2019-02-23 13:21:16
      基于dsPIC單片機(jī)的飛艇舵機(jī)控制實(shí)現(xiàn)
      電子制作(2018年1期)2018-04-04 01:48:14
      為什么窨井蓋大多都是圓形的
      基于高速同步485總線通信的多通道舵機(jī)控制器設(shè)計(jì)
      肥皂泡為什么是圓形?
      圓形題
      甘孜县| 越西县| 木兰县| 桐柏县| 洛阳市| 通榆县| 安国市| 新巴尔虎右旗| 老河口市| 丹巴县| 宜宾县| 镇雄县| 亚东县| 通道| 大余县| 丽水市| 苏尼特左旗| 霞浦县| 奉化市| 大连市| 绵竹市| 奉新县| 交城县| 开远市| 竹山县| 东辽县| 山西省| 洛扎县| 那坡县| 阿拉善右旗| 罗平县| 来安县| 怀柔区| 吴川市| 香港| 友谊县| 陇南市| 武冈市| 西和县| 甘孜| 平顶山市|