亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于圖像處理的自動(dòng)跟隨智能小車(chē)設(shè)計(jì)

        2024-01-24 14:36:59黃琳晴趙天翔何金枝
        電腦知識(shí)與技術(shù) 2023年34期
        關(guān)鍵詞:智能小車(chē)目標(biāo)識(shí)別圖像識(shí)別

        黃琳晴 趙天翔 何金枝

        摘要:文章設(shè)計(jì)了一款基于OpenMV圖像處理技術(shù)的自動(dòng)跟隨智能小車(chē)。小車(chē)通過(guò)OpenMV攝像頭采集圖像并進(jìn)行圖像識(shí)別處理,確定跟蹤目標(biāo),然后通過(guò)Arduino控制器控制小車(chē)自動(dòng)跟隨目標(biāo)運(yùn)動(dòng)。小車(chē)同時(shí)具備避障功能,可以在跟隨過(guò)程中自動(dòng)避開(kāi)障礙物。設(shè)計(jì)主要由OpenMV圖像處理模塊和基于Arduino的智能小車(chē)兩部分組成。OpenMV圖像處理模塊實(shí)現(xiàn)圖像的采集,目標(biāo)的識(shí)別和跟蹤算法的生成?;贏rduino 的智能小車(chē)按照算法控制兩臺(tái)直流電機(jī)運(yùn)轉(zhuǎn),以及通過(guò)紅外傳感器和超聲波傳感器感知障礙物實(shí)現(xiàn)自動(dòng)避障。設(shè)計(jì)可用于幫助工作人員攜帶更多更重的工具或者戶(hù)外活動(dòng)時(shí)幫助人們攜帶物品等功能。

        關(guān)鍵詞:圖像識(shí)別; 自動(dòng)跟隨; 智能小車(chē); 目標(biāo)識(shí)別; 自動(dòng)避障;圖像處理

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

        文章編號(hào):1009-3044(2023)34-0020-03

        開(kāi)放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID)

        0 引言

        智能車(chē)具有自主行駛、自動(dòng)巡航、自動(dòng)駕駛等功能,可以廣泛運(yùn)用在物流、交通和軍事等領(lǐng)域[1]。智能車(chē)系統(tǒng)以快速發(fā)展的汽車(chē)電子技術(shù)為背景,涵蓋了電子、計(jì)算機(jī)、機(jī)械、傳感技術(shù)等多個(gè)學(xué)科[2]。智能車(chē)設(shè)計(jì)中圖像處理技術(shù)屬于十分重要的組成部分。圖像處理技術(shù)能夠?qū)崿F(xiàn)對(duì)圖像的分析與處理并提取出目標(biāo)物體的位置、顏色等有用信息[3]。設(shè)計(jì)時(shí)可利用圖像處理技術(shù)自動(dòng)追隨目標(biāo)物體,增強(qiáng)智能車(chē)自主性及智能化程度[4]。

        1 硬件設(shè)計(jì)

        通過(guò)自動(dòng)跟隨小車(chē)的研究分析,了解到自動(dòng)跟隨智能小車(chē)設(shè)計(jì)的必要性,自動(dòng)跟隨技術(shù)是智能化技術(shù)的重要應(yīng)用之一,可在物流、交通和軍事等行業(yè)中得到廣泛應(yīng)用。自動(dòng)跟隨小車(chē)可以自主行駛,實(shí)現(xiàn)對(duì)目標(biāo)物體的自動(dòng)跟隨,提高小車(chē)的自主性和智能化程度。該設(shè)計(jì)的自動(dòng)跟隨智能小車(chē),采用了開(kāi)源的圖像處理庫(kù)OpenMV及Arduino控制器,具有良好的擴(kuò)展性和可編程性。小車(chē)主體部分由Arduino控制器、電機(jī)驅(qū)動(dòng)器、電源、傳感器組成,使用車(chē)架用于支撐和保護(hù)小車(chē)的所有組件[5],其總體結(jié)構(gòu)設(shè)計(jì)框圖如圖1所示。

        設(shè)計(jì)中,Arduino控制器作為系統(tǒng)核心,實(shí)現(xiàn)對(duì)小車(chē)的控制、傳感數(shù)據(jù)采集以及處理傳輸?shù)剿膱D像數(shù)據(jù);OpenMV主要用于圖像采集識(shí)別并處理;超聲波傳感器用于實(shí)現(xiàn)小車(chē)避障功能;電源模塊用于給小車(chē)供電;電機(jī)驅(qū)動(dòng)模塊直接控制兩個(gè)電機(jī);兩個(gè)電機(jī)控制小車(chē)行進(jìn)方向。

        使用OpenMV的Color Tracking顏色追蹤。OpenMV與Arduino控制器之間的通信采用串口通信,以實(shí)現(xiàn)自動(dòng)跟隨小車(chē)的功能[6]。OpenMV是一個(gè)開(kāi)源的、搭載了一個(gè)強(qiáng)大的32位處理器的攝像頭,達(dá)到了設(shè)計(jì)的技術(shù)要求水平,并且使用SD卡可以更方便地將圖像流數(shù)據(jù)提取出來(lái),是一個(gè)較為完整的開(kāi)發(fā)系統(tǒng)[7]。

        2 軟件設(shè)計(jì)

        設(shè)計(jì)采用OpenMV的圖像傳感器進(jìn)行識(shí)別檢測(cè)目標(biāo)紅色物體,識(shí)別成功后通過(guò)串口通信將坐標(biāo)信息發(fā)送至Arduino控制器,控制器接收到OpenMV傳來(lái)的指令后,根據(jù)接收到的指令控制小車(chē)的電機(jī)驅(qū)動(dòng)模塊,實(shí)現(xiàn)小車(chē)的運(yùn)動(dòng)。設(shè)計(jì)采用PWM控制進(jìn)行位置跟隨,電機(jī)調(diào)速通過(guò)PWM控制,占空比不同,輸出模擬電壓的平均值不同,由此來(lái)控制電機(jī),實(shí)現(xiàn)調(diào)速。

        2.1 圖像處理程序設(shè)計(jì)

        首先,使用OpenMV板的攝像頭捕捉圖像,并將其存儲(chǔ)在內(nèi)存中。然后對(duì)圖像進(jìn)行處理以減少噪聲,提高圖像質(zhì)量。再?gòu)膱D像中提取目標(biāo)特征,設(shè)計(jì)中選擇提取紅色的顏色特征,以便進(jìn)行后續(xù)的目標(biāo)檢測(cè)或跟蹤。在圖像中使用目標(biāo)檢測(cè)算法檢測(cè)目標(biāo)物體,以便后續(xù)跟蹤或控制。在圖像中使用目標(biāo)跟蹤算法跟隨目標(biāo)的位置和運(yùn)動(dòng)軌跡,以便后續(xù)控制或決策[8]。根據(jù)目標(biāo)的位置和運(yùn)動(dòng)軌跡,生成相應(yīng)的控制指令,如速度、方向等,以便控制小車(chē)的移動(dòng)。使用串口通信將圖像處理結(jié)果發(fā)送給Arduino控制器,控制器接收指令實(shí)現(xiàn)自動(dòng)跟隨小車(chē)的功能。

        過(guò)程可以描述為:初始化攝像頭傳感器;設(shè)置像素格式和幀大?。惶^(guò)前10幀以使新設(shè)置生效;關(guān)閉自動(dòng)白平衡;定義一個(gè)計(jì)時(shí)器以跟蹤FPS;定義一個(gè)函數(shù)來(lái)查找最大的斑點(diǎn);定義一個(gè)PID函數(shù),用于計(jì)算偏差并返回控制量;在主循環(huán)中獲取攝像頭圖像,查找紅色斑點(diǎn),計(jì)算偏差并發(fā)送控制量到串口。同時(shí),在圖像上繪制矩形和十字線以指示檢測(cè)到的斑點(diǎn)。使用循環(huán)語(yǔ)句不斷執(zhí)行以下操作:

        1) 從攝像頭獲取一張圖像,進(jìn)行校正。

        2) 識(shí)別紅色物體,找到最大的一個(gè)色塊。

        3) 如果最大的色塊像素?cái)?shù)大于100,則計(jì)算物體在圖像中的位置,并根據(jù)位置輸出控制信號(hào)。

        4) 輸出控制信號(hào)后,LED燈亮起50毫秒。

        5) 最終將位置信息轉(zhuǎn)化為字符串,通過(guò)串口輸出給Arduino控制器。

        2.2 小車(chē)控制程序設(shè)計(jì)

        Arduino控制器接收到串口發(fā)送的信號(hào)后根據(jù)信號(hào)指令控制小車(chē)運(yùn)動(dòng),在調(diào)節(jié)參數(shù)(PID參數(shù)、速度等)后,自動(dòng)啟動(dòng)小車(chē)。小車(chē)運(yùn)動(dòng)的主程序流程圖如圖2所示。

        首先,在OpenMV獲取到跟隨目標(biāo)物體的中心橫坐標(biāo)和距離后,進(jìn)行條件判斷,Arduino控制器接收到通過(guò)串口發(fā)送的信息后,控制器根據(jù)獲取的中心橫坐標(biāo)運(yùn)用PID算法計(jì)算并控制舵機(jī)轉(zhuǎn)向,與此同時(shí),Arduino控制器會(huì)將從串口獲取的距離與程序中設(shè)定的最大跟隨距離比較,如果距離過(guò)大無(wú)法獲取圖像信息,則小車(chē)原地轉(zhuǎn)圈尋找目標(biāo)物體。

        PID算法如公式(1):

        PID輸出值=Kp×e(t) + Ki×∫e(t)dt + Kd×de(t)/dt? (1)

        其中,e(t)表示誤差,即目標(biāo)值和測(cè)量值的差值;∫e(t)dt表示誤差的積分,即誤差隨時(shí)間的累積;de(t)/dt表示誤差隨時(shí)間的變化速率。Kp、Ki和Kd分別表示比例、積分和微分系數(shù)。

        設(shè)計(jì)首先根據(jù)偏差值計(jì)算出左右輪的PWM輸出,然后進(jìn)行一些限制處理,確保PWM輸出在合理的范圍內(nèi)。最后,通過(guò)將PWM輸出寫(xiě)入左右輪的控制引腳中,控制小車(chē)的運(yùn)動(dòng)。原理如下:

        假設(shè)B為后輪兩輪的輪距,L為前后輪的間距,假如最優(yōu)路徑為左前方與車(chē)正前方夾角為a的直線(a有正有負(fù)),拐彎半徑在左邊和后輪齊平,轉(zhuǎn)彎半徑為R,那么后兩個(gè)輪子的角速度相等[9]。也就是:

        v_left/R_in = v_right/R_out = v/R? ? ? ? (2)

        其中,v_left為左輪速度,v_right為右輪速度,R_in為內(nèi)圈轉(zhuǎn)彎半徑,R_out為外圈轉(zhuǎn)彎半徑,假設(shè)輪子的中間速度為v(即速度設(shè)定值),而且滿足:

        R = L/tan a? ? ? ? ? ? ? ? ?(3)

        R_in = R - B/2? ? ? ? ? ? ? ? (4)

        R_out = R + B/2? ? ? ? ? ? ? (5)

        可以推出:

        v_left = v-v*B*tan a /2L? ? ? ? ? ?(6)

        v_right = v+v*B*tan a /2L? ? ? ? ?(7)

        2.3 超聲波避障程序設(shè)計(jì)

        設(shè)計(jì)超聲波避障程序的第一步是對(duì)超聲波模塊和Arduino控制器的引腳進(jìn)行初始化,包括設(shè)置超聲波發(fā)送和接收引腳的模式和狀態(tài)。通過(guò)超聲波發(fā)送引腳向外發(fā)送超聲波信號(hào),等待一段時(shí)間后關(guān)閉發(fā)送引腳,通過(guò)超聲波接收引腳接收回波信號(hào),計(jì)算回波信號(hào)的時(shí)間差,進(jìn)而計(jì)算出距離。根據(jù)距離判斷小車(chē)前方是否存在障礙物,如果距離小于設(shè)定值,則認(rèn)為有障礙物,否則認(rèn)為沒(méi)有障礙物并通過(guò)串口向Arduino控制器發(fā)送相應(yīng)串口信息,根據(jù)距離判斷結(jié)果,控制輸出信號(hào),通過(guò)Arduino的數(shù)字輸出口控制電機(jī)驅(qū)動(dòng)模塊。最后循環(huán)執(zhí)行以上步驟,實(shí)現(xiàn)實(shí)時(shí)檢測(cè)和避障。

        3 測(cè)試及分析

        基于圖像處理的自動(dòng)跟隨智能小車(chē)是由圖像識(shí)別處理和小車(chē)驅(qū)動(dòng)控制模塊兩大模塊組成的。主要對(duì)由OpenMV進(jìn)行的圖像識(shí)別追蹤、OpenMV與Arduino控制器的串口通信、小車(chē)自動(dòng)跟隨、超聲波避障4個(gè)部分進(jìn)行測(cè)試及分析。

        首先,測(cè)試OpenMV對(duì)圖像能否正確識(shí)別并將數(shù)據(jù)通過(guò)串口通信發(fā)送給Arduino控制器,由于設(shè)計(jì)只需要單片機(jī)接收視覺(jué)模塊和超聲波模塊的數(shù)據(jù),所以采用串行單工傳輸[10]。通過(guò)查看串口監(jiān)視器,檢查Arduino是否能夠成功接收到從OpenMV發(fā)送的數(shù)據(jù)信息,測(cè)試能夠接收到后,繼續(xù)測(cè)試下一步。將小車(chē)安裝并下載好程序后,將小車(chē)放置于光線較好位置,將目標(biāo)物體放置在小車(chē)前方,檢測(cè)OpenMV是否成功捕捉圖像識(shí)別色塊,即觀察OpenMV的綠色LED燈是否點(diǎn)亮,檢查識(shí)別成功后,測(cè)試小車(chē)是否能成功接收控制信號(hào)前進(jìn)。移動(dòng)目標(biāo)物體,檢查小車(chē)是否根據(jù)目標(biāo)物體的移動(dòng)而移動(dòng)跟隨,向左向右移動(dòng)目標(biāo)物體檢測(cè)小車(chē)是否能根據(jù)目標(biāo)物體的移動(dòng)改變左右輪轉(zhuǎn)速以實(shí)現(xiàn)轉(zhuǎn)彎跟隨。由測(cè)試結(jié)果顯示,小車(chē)能夠自動(dòng)跟隨目標(biāo)物體移動(dòng)。最后測(cè)試超聲波避障模塊,將目標(biāo)物體靜止放置小車(chē)前方距離50 cm,令小車(chē)識(shí)別并前進(jìn),測(cè)試結(jié)果顯示,當(dāng)小車(chē)與目標(biāo)物體距離接近30 cm時(shí),小車(chē)能夠停止運(yùn)動(dòng),避免碰撞。

        4 結(jié)束語(yǔ)

        基于圖像處理的自動(dòng)跟隨智能小車(chē)設(shè)計(jì)具有自動(dòng)跟隨、實(shí)時(shí)反饋等特點(diǎn),可以廣泛應(yīng)用于各種需要自動(dòng)跟隨的場(chǎng)景,如物流、倉(cāng)儲(chǔ)、醫(yī)療、安防等領(lǐng)域。設(shè)計(jì)過(guò)程主要完成了整體框架設(shè)計(jì)、實(shí)物調(diào)試、對(duì)OpenMV軟件部分代碼的設(shè)計(jì)編寫(xiě)、Arduino控制程序設(shè)計(jì)、串口通信程序、PID控制算法、電機(jī)配置PWM脈沖程序、超聲波避障程序、對(duì)該智能小車(chē)硬件部分的搭建組裝以及系統(tǒng)測(cè)試分析和調(diào)優(yōu)。盡管設(shè)計(jì)要求已實(shí)現(xiàn),但仍存在不足,設(shè)計(jì)需要有較好光線的環(huán)境以供攝像頭捕捉識(shí)別目標(biāo)物體。

        參考文獻(xiàn):

        [1] 歐冰,楊晶晶.數(shù)字圖像處理技術(shù)現(xiàn)狀與展望[J].中國(guó)新通信,2023,25(1):76-78.

        [2] GUO Y,YIN J,WANG Y,et al.Research and implementation of an OpenMV-based target edge detection and tracking system[J].Journal of Physics:Conference Series,2022,2173(1):012083.

        [3] 陳維剛,朱天航,吝毅.基于Arduino的智能小車(chē)控制系統(tǒng)設(shè)計(jì)[J].南方農(nóng)機(jī),2022,53(16):145-148.

        [4] 仝夢(mèng)豪,丁學(xué)文,普靖雯,等.基于Arduino的智能小車(chē)遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)與網(wǎng)絡(luò),2020,46(20):59-62.

        [5] 呂開(kāi)旺,王明睿,劉振國(guó),等.視覺(jué)引導(dǎo)機(jī)器人協(xié)作AGV上下料系統(tǒng)研究[J].制造業(yè)自動(dòng)化,2022,44(1):123-126.

        [6] 金清嵩,丁一,張勇,等.一種基于OpenMV的自動(dòng)跟隨小車(chē)設(shè)計(jì)[J].電子制作,2020(13):16-18,55.

        [7] 唐孟雪,邢曉燕.基于Open MV的人臉識(shí)別智能門(mén)鎖設(shè)計(jì)[J].電腦知識(shí)與技術(shù),2020,16(25):5-8,18.

        [8] 儲(chǔ)澤楠,王偉,蔡勝宇.基于OpenMV的視覺(jué)識(shí)別系統(tǒng)在六足機(jī)器人中的應(yīng)用[J].河南科技,2019(34):26-29.

        [9] 張敏杰,盧倩,崔治.轉(zhuǎn)彎差速在智能車(chē)上的運(yùn)用[J].企業(yè)技術(shù)開(kāi)發(fā),2011,30(19):32-33,59.

        [10] 田渠,羅淦,尹海濤.基于OpenMV的智能跟蹤小車(chē)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2019,27(8):167-170,176.

        【通聯(lián)編輯:唐一東】

        猜你喜歡
        智能小車(chē)目標(biāo)識(shí)別圖像識(shí)別
        基于Resnet-50的貓狗圖像識(shí)別
        電子制作(2019年16期)2019-09-27 09:34:50
        高速公路圖像識(shí)別技術(shù)應(yīng)用探討
        圖像識(shí)別在物聯(lián)網(wǎng)上的應(yīng)用
        電子制作(2018年19期)2018-11-14 02:37:04
        圖像識(shí)別在水質(zhì)檢測(cè)中的應(yīng)用
        電子制作(2018年14期)2018-08-21 01:38:16
        基于STC89C51智能小車(chē)的移動(dòng)家居平臺(tái)的設(shè)計(jì)
        基于HC—SR04超聲波傳感器的智能避障小車(chē)設(shè)計(jì)
        全自動(dòng)模擬目標(biāo)搜救系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
        動(dòng)態(tài)場(chǎng)景中的視覺(jué)目標(biāo)識(shí)別方法分析
        基于PC的視覺(jué)解決方案在 Delta機(jī)器人抓放中的應(yīng)用
        智能安全防盜探測(cè)小車(chē)
        久久久久久无中无码| 久久精品国产99国产精偷| 亚洲日韩国产一区二区三区| 女性女同性aⅴ免费观女性恋| 久久波多野结衣av| 精品粉嫩国产一区二区三区| 精品高清一区二区三区人妖| 久久精品国产亚洲夜色av网站| 欧美成人在线视频| 97精品伊人久久大香线蕉app| 亚洲日韩精品AⅤ片无码富二代| 亚洲成人av一区二区| 国产精品偷窥熟女精品视频| 欧美寡妇xxxx黑人猛交| 暖暖免费 高清 日本社区在线观看| 精品久久久无码不卡| 午夜免费观看一区二区三区| 极品美女扒开粉嫩小泬图片| 精品深夜av无码一区二区| 亚洲AV成人无码国产一区二区| 韩国免费一级a一片在线| 久久久国产精品黄毛片| 欧洲熟妇色| 越南女子杂交内射bbwbbw| 国产三级视频在线观看视主播| 中文字幕乱码人妻在线| 2018天天躁夜夜躁狠狠躁| 国产97色在线 | 亚洲| 日本人妻高清免费v片| 亚洲国产系列一区二区| 日本女同视频一区二区三区| 国产黑丝美腿在线观看| 激情影院内射美女| 国产成人精品日本亚洲专区6| 精品午夜中文字幕熟女| 国产高清一区二区三区四区色| 我爱我色成人网| 国产偷国产偷高清精品| 成年人视频在线播放麻豆| 日本一区二区三区高清在线视频| 黑色丝袜秘书夹住巨龙摩擦|