• 
    

    
    

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

      ?

      基于視覺(jué)識(shí)別的智能跟隨系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)

      2019-11-11 13:14許傳威陳韓陶翔翔陸加響吳雙李秋潔
      電腦知識(shí)與技術(shù) 2019年27期
      關(guān)鍵詞:萬(wàn)向輪

      許傳威 陳韓 陶翔翔 陸加響 吳雙 李秋潔

      摘要:該文主要介紹基于視覺(jué)識(shí)別的智能跟隨系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)方法,文章介紹了如何基于視覺(jué)識(shí)別目標(biāo)并通過(guò)雙目測(cè)距獲取目標(biāo)三維坐標(biāo),以及根據(jù)獲取的三維坐標(biāo)控制三輪萬(wàn)向輪底盤跟隨目標(biāo)的方法。該實(shí)驗(yàn)以兩個(gè)STM32f103為控制核心,以兩個(gè)OV7725攝像頭作為視覺(jué)傳感器采集圖像信息,用裝有三個(gè)直流電機(jī)的萬(wàn)向輪底盤作為設(shè)備移動(dòng)載體。

      關(guān)鍵詞:視覺(jué)識(shí)別;智能跟隨;雙目測(cè)距;萬(wàn)向輪;STM32

      中圖分類號(hào):TP31? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A

      文章編號(hào):1009-3044(2019)27-0204-04

      在人工智能快速發(fā)展的背景下,視覺(jué)傳感器在智能家居、車聯(lián)網(wǎng)等諸多領(lǐng)域得到了廣泛應(yīng)用。但是目前視覺(jué)傳感器還只能識(shí)別一些處于簡(jiǎn)單環(huán)境中的目標(biāo),并且獲取的信息非常有限,很難像人眼那樣獲取豐富的信息。

      本文主要研究利用視覺(jué)傳感器識(shí)別目標(biāo),根據(jù)目標(biāo)在圖像中的二維坐標(biāo)計(jì)算得到三維坐標(biāo),由該三維位置信息產(chǎn)生驅(qū)動(dòng)電機(jī)的方案,控制萬(wàn)向輪底盤實(shí)現(xiàn)目標(biāo)的跟隨。

      本設(shè)計(jì)使用兩個(gè)STM32f103單片機(jī)ARM(A)和ARM(B)作為控制核心,分別驅(qū)動(dòng)兩個(gè)OV7725攝像頭,它們的分辨率是240*320。兩個(gè)攝像頭平行安裝,間距設(shè)置為15cm。每一個(gè)控制器還配有LCD液晶屏,用于顯示攝像頭拍攝到的圖像和系統(tǒng)的狀態(tài)信息。兩個(gè)STM32之間通過(guò)串口進(jìn)行通訊,ARM(B)還負(fù)責(zé)驅(qū)動(dòng)萬(wàn)向輪底盤的直流電機(jī)[1]。系統(tǒng)的硬件結(jié)構(gòu)圖如圖1所示。

      ARM(A)和ARM(B)同步進(jìn)行圖像的采集,用于識(shí)別目標(biāo)和計(jì)算目標(biāo)重心在圖像中的二維坐標(biāo)([x],[y]),兩個(gè)控制器之間利用串口共享目標(biāo)信息。ARM(B)還負(fù)責(zé)根據(jù)兩幅圖像中目標(biāo)的重心位置,利用雙目測(cè)距原理求出目標(biāo)的三維坐標(biāo)([X],[Y],[Z])。

      獲取目標(biāo)的位置信息([X],[Y],[Z])后,控制器ARM(B)會(huì)對(duì)比目標(biāo)相對(duì)底盤的設(shè)定位置與當(dāng)前位置,計(jì)算出全向輪底盤的運(yùn)動(dòng)狀態(tài),包括平移運(yùn)動(dòng)方向、平移運(yùn)動(dòng)速度、旋轉(zhuǎn)運(yùn)動(dòng)方向和旋轉(zhuǎn)運(yùn)動(dòng)速度。確定底盤的運(yùn)動(dòng)狀態(tài)后,根據(jù)萬(wàn)向輪的運(yùn)動(dòng)原理分別計(jì)算出三個(gè)萬(wàn)向輪的運(yùn)動(dòng)方向和運(yùn)動(dòng)速度,再由控制器ARM(B)產(chǎn)生PWM方波驅(qū)動(dòng)直流電機(jī),實(shí)現(xiàn)目標(biāo)跟隨。

      1 基于視覺(jué)識(shí)別目標(biāo)

      在本設(shè)計(jì)中,我們將黃色的乒乓球作為識(shí)別的目標(biāo),因?yàn)辄S色的乒乓球?yàn)閱紊矬w,可以通過(guò)掃描圖像中每一個(gè)像素點(diǎn)的顏色狀態(tài)將目標(biāo)從圖像中分離。

      因?yàn)槟繕?biāo)在不同的光照環(huán)境下會(huì)呈現(xiàn)出不同的顏色狀態(tài),所以在每次識(shí)別目標(biāo)之前,要采集目標(biāo)的顏色信息。由于STM32控制器從OV7725攝像頭中讀取到的圖像信息是RGB565的形式,所以我們采集到R(紅)G(綠)B(藍(lán))形式的目標(biāo)顏色信息。

      獲取目標(biāo)的顏色信息之后,根據(jù)獲取到的顏色信息設(shè)置一個(gè)顏色區(qū)間。通過(guò)掃描圖像中的每一個(gè)像素點(diǎn),判斷像素點(diǎn)是否在該顏色區(qū)間來(lái)識(shí)別目標(biāo)。例如目標(biāo)的顏色信息為R=20、G=30、B=15,設(shè)顏色范圍偏移量為C=3,則目標(biāo)的顏色區(qū)間為R=(17,23)、G=(27,33)、B=(12,18)。只要像素點(diǎn)的RGB值在該區(qū)間范圍內(nèi),則認(rèn)為該像素點(diǎn)屬于目標(biāo),并在液晶屏上顯示成白色,否則則被認(rèn)為是不屬于目標(biāo)的像素點(diǎn)。掃描完一幀圖像后,統(tǒng)計(jì)在顏色區(qū)間內(nèi)像素點(diǎn)的個(gè)數(shù),如果像素點(diǎn)個(gè)數(shù)超過(guò)閾值N=200,則認(rèn)為目標(biāo)存在,否則認(rèn)為目標(biāo)不存在。其中顏色范圍偏移量C和閾值N通過(guò)實(shí)驗(yàn)選取最優(yōu)值,本方案中C選擇3,N選擇200。

      2 計(jì)算目標(biāo)重心在圖像中的二維坐在識(shí)別目標(biāo)的過(guò)程中,控制器會(huì)計(jì)算像素點(diǎn)的坐標(biāo)([xi],[yi]),并統(tǒng)計(jì)在顏色區(qū)間內(nèi)的像素點(diǎn)的個(gè)數(shù)[n]。

      利用公式計(jì)算顏色區(qū)間內(nèi)像素點(diǎn)的二維坐標(biāo)的平均值,得到的([x],[y])即為目標(biāo)重心在圖像中的二維坐標(biāo)。

      如上文中圖2所示,乒乓球圖像中的紅色方塊即為乒乓球的重心。

      3 雙目測(cè)距原理得到三維坐標(biāo)

      下圖3是利用兩個(gè)攝像頭進(jìn)行測(cè)距的原理的示意圖。

      基于雙目測(cè)距原理獲取目標(biāo)三維坐標(biāo)分以下幾個(gè)步驟:

      步驟一:兩個(gè)攝像頭A和B分別采集得到目標(biāo)重心在兩幅圖片中位置([xA],[yA])和([xB],[yB])[2]。

      步驟二:根據(jù)目標(biāo)重心在圖片中的位置,利用公式3到公式7,計(jì)算出目標(biāo)重心在10cm距離的視界上的位置。

      計(jì)算得到的([X1],[Y1])為目標(biāo)在攝像頭A的10cm距離的視界上的坐標(biāo);([X2],[Y2])為目標(biāo)在攝像頭B的10cm距離的視界上的坐標(biāo)。公式3中分子[D]為攝像頭在10cm距離上,視界在[x]方向上的長(zhǎng)度,[D]的值要進(jìn)行實(shí)際測(cè)量得到,本文中[D]取值為6cm,分母240是指用OV7725拍攝的圖像在[x]方向上的像素點(diǎn),[H]的值受目標(biāo)的焦距影響。

      步驟三:列出[X1],[X2]和目標(biāo)深度距離值[Z]以及兩個(gè)攝像頭的橫向距離[L]的關(guān)系式。

      公式中[L]為兩個(gè)攝像頭之間的距離,本文取15cm。

      步驟四:結(jié)合公式3到公式8可以得到目標(biāo)在空間中的深度值[Z]。

      步驟五:根據(jù)目標(biāo)在空間中的深度值[Z]計(jì)算出目標(biāo)在空間中坐標(biāo)的另外兩個(gè)分量[X],[Y]。

      式中[E]為攝像頭在10cm距離上,視界在[y]方向上的長(zhǎng)度,[E]的值要通過(guò)實(shí)際測(cè)量得到,本文中[E]取值為7.92cm。

      通過(guò)上述計(jì)算得到目標(biāo)在空間中的三維坐標(biāo)([X],[Y],[Z])。

      本文以乒乓球?yàn)槟繕?biāo)采用雙目測(cè)距,實(shí)物連接如下圖4所示。

      利用液晶屏顯示兩個(gè)攝像頭識(shí)別目標(biāo)的結(jié)果[3]。其中攝像頭A中目標(biāo)的二維坐標(biāo)為(37,131),攝像頭B中目標(biāo)的二維坐標(biāo)為(179,54),如下圖5所示。

      根據(jù)攝像頭A和攝像頭B的識(shí)別結(jié)果,利用上述公式可以計(jì)算得到目標(biāo)三維坐標(biāo)理論值。

      實(shí)際的測(cè)量結(jié)果為(-1,2,42),兩種方法獲得的結(jié)果基本一致。實(shí)際測(cè)量得到目標(biāo)的三維坐標(biāo)如下圖6所示。

      4 全向輪底盤控制

      4.1 三輪萬(wàn)向輪控制原理

      在底盤運(yùn)動(dòng)中有兩個(gè)速度,分別是平移速度[V]和旋轉(zhuǎn)速度[VR]。三輪萬(wàn)向輪控制原理如圖7所示。

      結(jié)合平移速度在[x]軸和[y]軸方向上的分解速度[Vx]和[Vy]以及底盤的旋轉(zhuǎn)速度[VR],計(jì)算出三個(gè)萬(wàn)向輪的速度[4]。

      根據(jù)計(jì)算得到各個(gè)輪子的速度分量,ARM(B)通過(guò)GPIO口輸出相應(yīng)的方向信息和PWM脈寬信息驅(qū)動(dòng)TB6612控制直流電機(jī)的轉(zhuǎn)動(dòng)方向和轉(zhuǎn)速。

      ARM控制直流電機(jī)的結(jié)構(gòu)圖如圖8所示。

      TB6612驅(qū)動(dòng)直流電機(jī)的電路如圖9所示。

      4.2 萬(wàn)向輪跟隨方案

      在跟隨方案中,當(dāng)前目標(biāo)的位置為([X],[Y],[Z]),我們?cè)O(shè)定目標(biāo)相對(duì)底盤的位置為(0,0,40)。

      底盤旋轉(zhuǎn)的速度范圍為0~50,平移速度范圍為0~100。根據(jù)目標(biāo)實(shí)際位置和設(shè)定位置,計(jì)算出底盤旋轉(zhuǎn)速度[VR]和平移速度[V]。

      5 總結(jié)

      本文主要研究了基于視覺(jué)識(shí)別實(shí)現(xiàn)智能跟隨的方案。通過(guò)設(shè)定顏色區(qū)間,將純色物體從圖像中分離出來(lái),在識(shí)別過(guò)程中同步對(duì)目標(biāo)重心在圖像中的位置進(jìn)行計(jì)算。用兩個(gè)平行安裝的攝像頭獲得目標(biāo)在兩個(gè)圖像中的平面坐標(biāo)后,采用雙目測(cè)距原理得到目標(biāo)的三維坐標(biāo)?;谠撊S坐標(biāo)對(duì)萬(wàn)向輪進(jìn)行控制,便可以實(shí)現(xiàn)跟隨目標(biāo)[5]。

      基于雙目測(cè)距得到目標(biāo)三維坐標(biāo)本文的核心。經(jīng)過(guò)實(shí)驗(yàn)測(cè)量,雙目測(cè)距得到的三維坐標(biāo)在1m距離內(nèi)的精度可以達(dá)到厘米級(jí),并且測(cè)量精度隨距離增加而減小。只要目標(biāo)可以被兩個(gè)攝像頭同時(shí)拍到,便可以進(jìn)行測(cè)量,而且識(shí)別和測(cè)量可以同步進(jìn)行,在大范圍、遠(yuǎn)距離、高速度目標(biāo)的識(shí)別定位以及遠(yuǎn)近目標(biāo)的識(shí)別追蹤上有著很大的應(yīng)用前景。隨著識(shí)別算法的提升,雙目測(cè)距也會(huì)有更多的應(yīng)用。例如場(chǎng)景的三維建模、人臉識(shí)別、VR以及全息投影等。

      參考文獻(xiàn):

      [1] 沈紅衛(wèi). STM32單片機(jī)應(yīng)用與全案例實(shí)踐[M].北京:電子工業(yè)出版社,2005.

      [2] CAD/CAM/CAE技術(shù)聯(lián)盟.Altuim designer電路設(shè)計(jì)和仿真[J].清華社.2015,19.

      [3] 蔣萍花,張楠.數(shù)據(jù)采集系統(tǒng)串口通信的設(shè)計(jì)與實(shí)現(xiàn)[J].電子測(cè)量技術(shù),2015(6).

      [4] 全向輪小車的數(shù)學(xué)原理[EB/OL].百度文庫(kù).2018,7

      [5] 黃暉,柴劍勇,嚴(yán)興,等.串口通信技術(shù)[J].科技創(chuàng)新導(dǎo)報(bào),2010(27).

      【通聯(lián)編輯:代影】

      猜你喜歡
      萬(wàn)向輪
      新型自動(dòng)跟隨點(diǎn)滴架設(shè)計(jì)
      基于萬(wàn)向輪的AGV原地轉(zhuǎn)向阻力研究
      萬(wàn)向輪在扭王塊模板拆裝過(guò)程中的運(yùn)用
      拉桿箱平底萬(wàn)向輪振動(dòng)分析
      四輪式全向移動(dòng)機(jī)器人設(shè)計(jì)
      乌鲁木齐市| 西昌市| 凤阳县| 白银市| 梨树县| 青海省| 青川县| 霍邱县| 清徐县| 柳江县| 尉氏县| 正镶白旗| 班戈县| 金华市| 迭部县| 潼关县| 乐安县| 井冈山市| 乌兰县| 南城县| 乌拉特后旗| 新营市| 福清市| 旺苍县| 黑山县| 宁都县| 广水市| 乌恰县| 东辽县| 墨竹工卡县| 漠河县| 临海市| 桓台县| 怀集县| 忻城县| 华亭县| 潜江市| 奉化市| 安达市| 阿勒泰市| 东明县|