国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

AUV自主巡航與色塊識別的典型方法與應用前景

2020-11-10 06:00李家銳黃棟黃平洋許時鎮(zhèn)孔祥峰李慎德陳春雷
無線互聯(lián)科技 2020年15期
關鍵詞:色塊柵格激光雷達

王 慧,李家銳,黃棟,黃平洋,許時鎮(zhèn),孔祥峰,李慎德,陳春雷

(廣東海洋大學,廣東 湛江 524088)

0 引言

隨著科技的進步,人類在水下開發(fā)與生產(chǎn)相關的產(chǎn)業(yè)中不斷加大投入。由于水下作業(yè)十分復雜,無纜水下機器人(Autonomous Underwater Vehicle,AUV)自主式水下潛器能代替人高效地完成危險的工作,在特定水域下與人配合,改善人員的工作條件,提升水下作業(yè)的效率,因此,AUV的研發(fā)愈漸深入。新技術研發(fā)的核心離不開識別技術和水下自主巡航技術兩大重要領域的發(fā)展,因為識別技術是能夠高效完成水下工作的前提,利用準確的圖像信息,有利于AUV進行快速、準確、穩(wěn)定的響應;自主巡航技術則進一步拓展了水下作業(yè)的活動空間,在沒有纜線的束縛下能夠更加靈活地適應各種環(huán)境。

圍繞水下色塊識別技術和自主巡航技術,結合其他新技術可以滿足如水下探測作業(yè)、深水養(yǎng)殖管家等各種應用需求。但是由于水下環(huán)境異常復雜,識別技術和水下自主巡航技術的發(fā)展顯得迫在眉睫。本研究將從AUV自主巡航要解決的兩大核心技術進行研究,給出3種水下色塊識別常見的典型方法并進行各自的優(yōu)缺點分析。

1 自主巡航的難點

AUV在水下自主巡航的實現(xiàn),離不開3個關鍵問題:(1)AUV如何實現(xiàn)自主定位以及水下復雜環(huán)境建模的問題。(2)預定目標定位和環(huán)境的探索問題。(3)決策規(guī)劃和行動控制問題。因此,將從自主巡航所要面臨的關鍵點展開,探討如何進行自主定位與地圖構建以及如何實現(xiàn)AUV水下路徑規(guī)劃。

1.1 多傳感器融合同步自主定位與地圖構建

因為同步自主定位與地圖構建(Simultaneous Localization and Mapping,SLAM)在實際應用中有關鍵性作用,還有嚴謹邏輯的理論,許多機器人研究者都喜歡將其作為機器人自主導航的重中之重??紤]到AUV在水下SLAM具有局限性,同時視覺會受到水環(huán)境的干擾,本研究著重介紹融合慣性測量單元的三維激光雷達SLAM的方式。

1.1.1 基于三維激光雷達的SLAM

SLAM采用三維激光雷達測距的方法在通過檢測柵格占有率來構建三維柵格地圖的同時不斷進行位置的更新,激光雷達測距原理普遍使用三角測距或飛行時差測距(Time of Flight Measurement,TOF)的方法,三角測距與TOF相比更多地應用于短距離測量,因此也常使用于室內(nèi)。本研究的研究對象是3D激光雷達,基于TOF測距原理獲取探測方向上的點云數(shù)據(jù),實現(xiàn)三維的立體掃描,相比于傳統(tǒng)的視覺傳感器,其優(yōu)點是抗干擾能力強、隱蔽性好、精確度高和測量區(qū)域大。

然而,3D激光雷達建立三維柵格地圖的同時,會產(chǎn)生柵格的不占有準確度低的問題。因為是否占有是根據(jù)每一幀點云在該柵格上是否存在點從而進行更新,會出現(xiàn)激光束穿過柵格的一小部分,比如邊緣部分,而被誤認為該柵格不被占有,事實上該柵格有其他部分被占據(jù),從而產(chǎn)生誤差,往往三維柵格地圖比二維柵格地圖出現(xiàn)這種誤差的可能性更大,影響更嚴重。從另一角度,或許可以嘗試用解決三維柵格地圖柵格不占有準確度低的方法來解決2D中同樣存在的問題,理論上也能起到一定的解決效果。已有的實驗中給出了解決這個問題的方法[1],公式(1)中Np為柵格被占有的次數(shù),Ne為不被占有的次數(shù),當Np=0時,明顯降低柵格被占據(jù)概率的必要條件是:目標柵格不僅不被占有,還要多次不被占有。

(1)

1.1.2 融合慣性測量單元的三維激光雷達SLAM

慣性測量單元(Inertial Measurement Unit,IMU),主要由慣性器件組成(陀螺、加速度計等),用于輸出如加速度、角速度等最原始的數(shù)據(jù)。理論上,可以根據(jù)里程計和IMU或者激光雷達與地圖的匹配,計算出機器人的位姿,但在實際定位過程中,里程計、IMU、激光雷達與地圖都包含噪聲,因而選擇多傳感器的數(shù)據(jù)融合進行取長補短矯正誤差。

里程計雖然能快速估計機器人的位姿,但是估計的誤差會隨著時間逐漸積累;激光在初始化位姿時得到柵格的基礎上直接與地圖進行匹配,會出現(xiàn)匹配效率較低,甚至會出現(xiàn)誤匹配。根據(jù)已有的實驗發(fā)現(xiàn),多傳感器的組合,先利用里程計和IMU的推算作為位姿的先驗估計,激光雷達根據(jù)先驗估計再進行匹配矯正以保證機器人位姿估計的實時性和準確性,將能自主定位并得到更精確的三維柵格地圖[2]。

1.2 基于模糊PID過程控制的局部路徑規(guī)劃

在同步自主定位與構建的三維柵格地圖之上,類比已有航向控制系統(tǒng)的模糊PID調(diào)節(jié)船舶轉向的研究[3]方法進行改進,基于模糊控制系統(tǒng),局部進行過程控制系統(tǒng)典型的自適應比例-積分-微分(Proportion Integral Differential,PID)調(diào)節(jié),對多輸入-多輸出的過程控制耦合系統(tǒng)進行解耦[4],成功解耦為3個單輸入-單輸出的控制系統(tǒng),解決局部路徑規(guī)劃問題。

1.2.1 測量變送器

反復讀取陀螺儀的角度修正前進方向,軟件模擬IIC接口并對陀螺儀3個發(fā)展方向的原始數(shù)據(jù)進行讀取。再將能夠通過算法得到3個方向角度的數(shù)據(jù)管理平臺(Data Management Platform,DMP)無縫移植到STM32上。因為水下機器人的航向在水下會受到洋流、水流速度等因素的干擾,路徑規(guī)劃會存在偏差,基于過程控制系統(tǒng)的常規(guī)思路,可先對采樣值進行程序判斷濾波,再通過算術平均濾波或一階慣性濾波等數(shù)字濾波[5]的方法對當前角度φ′進行處理,使測量值更加真實。

1.2.2 參數(shù)模糊自整定PID控制器

圖1 含模糊PID調(diào)節(jié)的過程控制系統(tǒng)

1.2.3 執(zhí)行器

當前角度與初始角度的不同偏差會產(chǎn)生不同的結果,若結果為0,改變轉向電機的占空比;若結果為1,則機器人直行。在三維柵格地圖上,行駛過程中可通過判別激光雷達等傳感器接收到的信息,躲避前方緊急出現(xiàn)柵格占有率較高的三維柵格,到達新的柵格后此標記點將作為新一輪的起點[7]。

目前,在水下AUV應用的領域模糊PID調(diào)節(jié)運用比較廣泛且多數(shù)應用于無人艇等水下機器人推進器、浮力推進系統(tǒng)等領域的研究?;谶^程控制系統(tǒng)典型的PID調(diào)節(jié),魯棒性高,調(diào)節(jié)速度快,可以有效消除水下洋流等環(huán)境因素的干擾。結合模糊控制系統(tǒng)與過程控制系統(tǒng)的典型PID調(diào)節(jié)應用于水下AUV具有十分明顯的優(yōu)勢,能夠使非線性系統(tǒng)無限逼近于線性系統(tǒng)(基于模糊控制的特性)的處理,但是加入模糊控制器也會存在一些弊端,相比于原來的PID調(diào)節(jié),開始會產(chǎn)生比較明顯的震蕩,可采用模糊滑??刂破鞯姆椒╗8]進行改善。

2 色塊識別的典型方法

AUV的識別技術在海洋領域具有十分廣闊的應用和前景,但是在水下復雜的環(huán)境中,受到水的色散、折射、流速等環(huán)境因素的干擾異常嚴重,色塊識別更是要解決的核心問題。以下將講解3種分別基于樹莓派的OpenCV、基于神經(jīng)網(wǎng)絡的Tensorflow以及基于STM32的OpenMV在水下實現(xiàn)色塊識別的典型方法。

2.1 基于樹莓派的OpenCV色塊識別

無需高昂花費即可輕易完成水下色塊識別的計算機視覺庫工具OpenCV,用高效簡潔的語言進行源代碼的編寫,實時實現(xiàn)計算機視覺。擁有基于BSD許可的API在各平臺得到了廣泛的運用。同時結合樹莓派占用空間不大、運算速度快等優(yōu)勢,可觀的處理速度與優(yōu)越的性能彌補了水下色塊識別的復雜性與計算量的需求短缺并為其帶來了巨大的優(yōu)勢,在水下色塊識別領域得到充分的展現(xiàn)。

OpenCV識別檢測通常采用的兩種模型分別為紅—綠—藍(Red-Green-Blue,RGB)模型和色相-飽和度-明度(Hue-Saturation-Value,HSV)模型,RGB模型在電腦和電視機等屏幕上得到了廣泛應用,但HSV模型更加適用于色塊分析,更加自然且直觀?;贏UV處于較為復雜的水域環(huán)境,要想實現(xiàn)水下色塊識別,離不開以下幾個步驟。

(1)根據(jù)已有的實驗研究,可將讀取的圖片或每一幀圖像轉為HSV模型(見圖2)并進行均衡化處理(見圖3)[9]。(2)用in range(輸入陣列src,輸入陣列l(wèi)owerb,輸入陣列支援dst)函數(shù)檢測顏色,輸入圖像(src)的各像素是否在lowerb(下邊界)和upput(上邊界)之間能夠被有效檢測出來,若在該范圍內(nèi)該像素就被置為255并且保存于輸出圖像(dst)中,不是就置為0。(3)對得到的目標顏色二值圖像進行開操作與閉操作(見圖4),同時連接一些連通域。

圖2 RGB模型轉換為HSV模型

圖3 彩色圖均衡化處理

圖4 二值圖像開操作與閉操作

AUV通過樹莓派調(diào)用OpenCV,雖然計算機視覺在圖像處理方面含有大量函數(shù)且涉及面廣,在色塊識別方面有所成效,但存在許多缺陷,如十分依賴攝像頭等硬件的精度、閾值分割、方式單一、辨識度低等問題,算法處理速度會受到無用信息運行的影響。

根據(jù)已有研究,可以在直方圖分割條中運用微小的輪廓亮度和預處理閾值的方法,選取適當?shù)臈l分割處理,然后運用滑塊得到理想的預處理結果[10]。該方法能有效解決水域環(huán)境中背景顏色與目標物極為相似的難題,減少如藍色金槍魚的顏色與海水極為相似導致色塊區(qū)分不清的情況,極大提高了色塊識別的辨識度和準確度。

2.2 基于神經(jīng)網(wǎng)絡的Tensorflow色塊識別

神經(jīng)網(wǎng)絡是實現(xiàn)深度學習的有用工具(神經(jīng)網(wǎng)絡可以良好地實現(xiàn)深度學習功能),而且神經(jīng)網(wǎng)絡在圖片識別中具有良好的作用。神經(jīng)網(wǎng)絡中的神經(jīng)元可以通過已知屬性特征的不同權值計算出所需的目標,因此使得整個神經(jīng)網(wǎng)絡可以通過深度學習算法提取圖片中的圖像特征,從而完成圖像的識別。神經(jīng)網(wǎng)絡的基本神經(jīng)元如圖5所示[11]。卷積神經(jīng)系統(tǒng)可以在TensorFlow上進行構建并能夠隨時被修改,增加神經(jīng)網(wǎng)絡深度,使模型的抽象能力更強,提高圖片識別的準確率。

圖5 神經(jīng)網(wǎng)絡的基本神經(jīng)元

卷積神經(jīng)系統(tǒng)網(wǎng)絡的基本結構設計主要有輸入層、卷積層、池化層、激勵層等[12],如圖6所示。輸入層直接輸入圖片;卷積層和池化層對圖片進行全局感知,然后對特征進行降維,卷積層通過卷積核讀取圖片特征的像素點;池化層壓縮輸入圖片,使輸出圖片的像素等于卷積核的大小。激勵層則把各層的運算結果加入非線性因素提高模型的表達能力;分類器則是直接對圖片中的物體進行分類[12]。

圖6 卷積神經(jīng)網(wǎng)絡的基本結構

總的來說,水下機器人簡單運行的過程如下:(1)通過機器學習建立一個水下物體的庫。(2)水下機器人通過攝像頭捕抓物體的圖像信息并將其傳輸?shù)竭_上位機分析處理圖像,處理時通過卷積和池化,對圖像特征進行感知、降維等操作,傳遞給分類器進行分類。(3)最后對提取的圖像與TensorFlow搭建的訓練庫進行特征比較,從而實現(xiàn)對水下物體的識別。

TensorFlow在水下進行色塊識別時由于其具有十分適用的API,尤其像由谷歌開發(fā)的圖像檢測器object detection API,有利于機器人對圖像進行分類以及特征的提取,容易實現(xiàn)對目標的識別??梢岳肁PI收集到的數(shù)據(jù)使水下機器人通過深度學習建立物體識別模型,從而識別物體的功能。

基于Tensorflow進行深度學習的水下圖像識別具有顯著的優(yōu)勢,可隨時填充機器人的數(shù)據(jù)庫,根據(jù)需求識別不同的物體。但是也存在一定的缺陷,圖像識別需要大量數(shù)據(jù),而水下圖像數(shù)據(jù)太少。由于水下拍攝難度大,且網(wǎng)上關于水下物品的圖片太少,很難使機器人形成自己的庫[13]。此外,水下亮度不夠,很容易導致機器人“色盲”,影響機器人的顏色識別,只能通過物體形狀去識別。

2.3 基于STM32的OpenMV色塊識別

憑借C語言可完成核心算法的機器視覺模塊OpenMV,具有低成本、靈活且易使用的優(yōu)點。OpenMV基于STM32提供了用python語言的編譯接口,并且能通過I2C、ADC、UART、GPIO等接口進行硬件擴展,硬件資源十分豐富。

色塊識別更完整地描述應該是顏色識別與追蹤,具體流程如下:(1)首先,要使用圖像分割的一種最簡單的方法——二值化處理圖像顏色;其次,把最小灰度值以及最大灰度值遍歷并用類間方差原理[14]得出最佳閾值,實現(xiàn)目標和背景分離。把灰度圖像轉換成二值圖像后主體像素能有效凸顯,輪廓分明,有助于進行圖像識別。(2)明確了二值化處理,需要選擇顏色空間來實現(xiàn)閾值處理的進行二值化。采用并不常用Lab顏色空間,但在眾多設計圖像計算中應用廣泛。(3)運用聯(lián)通域檢索,把輸入圖像逐行掃描找出對象的個數(shù),同時計算出所有區(qū)域像素的個數(shù),換算成要測算區(qū)域的面積大小,最后進行聯(lián)通閾檢索,就可以把目標凸顯出來,實現(xiàn)識別。

用Camshift算法可以使AUV在水下消除捕捉目標運動所帶來的影響,Camshift的特點是能根據(jù)目標像素塊的面積自動調(diào)節(jié)搜索窗的大小,從而得到連續(xù)的追蹤效果,且搜索時間相對較短。捕捉運動物體時(注意物體運動不能過快,有可能會導致捕捉失敗)該算法擁有優(yōu)秀的魯棒性,十分適用于水下機器人。算法流程如圖7所示,根據(jù)HSV顏色空間對光線亮度的不敏感性,將攝像頭獲取的圖像轉換為HSV圖像后作出色調(diào)H的直方圖后作反向投影,直方圖的值就是顏色分布概率,最后,以Meanshift原理不斷重復搜索水下AUV想要尋找捕捉的色塊。

圖7 Camshift算法流程

由于OpenMV本質(zhì)上是擁有圖像識別功能的STM32單片機,利用其豐富的接口資源可以操控外部硬件單元,甚至能通過串口通信受其他單片機模塊控制,如樹莓派等,也可以增加擴展版進一步增強擴展能力。因此,OpenMV簡單易用,在嵌入式系統(tǒng)僅需要增加一個小小的模塊就可以擁有機器視覺能力,從而實現(xiàn)更加復雜的功能。

盡管OpenMV結構簡單、體積小巧,但受限于其物理分辨率,有的只有500萬,其成像質(zhì)量并不如人意,加上模塊體積限制,CMOS面積較小,進光量不足,例如在水下光線不充足的工作環(huán)境中,有時也導致識別率失準。模塊本身沒有防抖結構,水下作業(yè)時機器人一般處于不穩(wěn)定狀態(tài),可能會導致色塊捕捉丟失,可考慮利用類似微云臺等器件保持畫面平滑穩(wěn)定。

3 歸納與展望

自主定位與地圖構建、路線規(guī)劃以及色塊識別是AUV能夠在水下高效完成水下作業(yè)的重難點,許多文獻都對此進行了探討與研究,并優(yōu)化與升級方法。經(jīng)過整理,將從以下3個角度進行歸納并展望。

3.1 激光SLAM點云的精度優(yōu)化

AUV由于在水域環(huán)境遇到障礙物,視線被遮擋,點云采集路線受限嚴重,在激光SLAM點云采集過程中不同位置之間難以通視,只能形成少量閉合環(huán)。在這種情況下,無論是實時的SLAM點云精度,還是優(yōu)化后的點云精度,都會受到一定影響。因此,除了制定合理的數(shù)據(jù)采集路線外,讀者可以研究一種在少量閉合環(huán)情況下更高效地提高點云精度優(yōu)化方法,目前針對這種特殊情況的研究還有待挖掘。

3.2 模糊PID的過程控制系統(tǒng)優(yōu)化

利用模糊PID調(diào)節(jié)的優(yōu)勢,結合工業(yè)生產(chǎn)中的過程控制系統(tǒng)的思維,對整個系統(tǒng)進行優(yōu)化,就如AUV在路線規(guī)劃的過程中,極易受到水流因素的干擾,讀者可以嘗試是否可以加入前饋控制器(見圖8),根據(jù)進入過程的擾動量進行控制,可以有效減少被控量的偏差。又或者當對AUV轉動電機方向的控制存在時間滯后問題時,系統(tǒng)受到的干擾作用無法根據(jù)所要控制的3個方向的角度而及時判別出來,使得超調(diào)穩(wěn)定性大大降低,是否可以加入Smith預估補償器[15],從而消除純滯后特性在閉環(huán)的影響。

圖8 前饋-反饋控制系統(tǒng)

3.3 色塊識別3種典型方法的比較

(1)OpenCV庫在圖像處理方面含有大量已有的函數(shù)且涉及面廣,但閾值分割、方式單一的情況嚴重,無用的函數(shù)內(nèi)部宏定義等信息嚴重影響了水下的圖像處理速度。(2)Tensorflow可根據(jù)需求填充數(shù)據(jù)庫識別不同的物體,可以良好地優(yōu)化訓練模型,通過神經(jīng)網(wǎng)絡進行重建和訓練對圖像識別有較高的精度要求,但需要大量數(shù)據(jù),水下亮度不夠還易導致“色盲”。(3)OpenMV體積小,簡單易用,易于控制其他硬件,也易被其他硬件模塊控制,但受限于其物理分辨率與模塊體積,無防抖結構,AUV不穩(wěn)定狀態(tài)易導致色塊捕捉丟失,需要輔助器件保持畫面平滑穩(wěn)定。

使用者需要根據(jù)AUV作業(yè)環(huán)境的需求來選擇不同的色塊識別方式,達到在復雜水域環(huán)境中實現(xiàn)不同色塊的識別的目的,尤其是在養(yǎng)殖環(huán)境中,如綠色塊圍欄養(yǎng)殖網(wǎng)衣生物的辨別與清理、不同顏色養(yǎng)殖種類如魚群的辨識、養(yǎng)殖生物發(fā)生病變產(chǎn)生的色塊異常的及時發(fā)現(xiàn)與清理、及時發(fā)現(xiàn)水中微量元素異常導致的浮游生物異常增殖如紅海等,這3種色塊識別的方法均具有十分可期的應用前景,將帶來巨大的經(jīng)濟價值與社會利益。

4 結語

文章圍繞AUV在水下復雜的環(huán)境中,一是探討如何實現(xiàn)自主巡航的問題,從同步自主定位與地圖構建和路徑規(guī)劃兩個難點展開。采用融合慣性測量單元的三維激光雷達SLAM的方式進行AUV的定位與環(huán)境建模,在得到較為精確的三維柵格地圖之上,提出基于模糊控制系統(tǒng),局部進行過程控制系統(tǒng)典型的自適應PID調(diào)節(jié)解決路徑規(guī)劃的問題,同時能夠在穩(wěn)定性、抗干擾性及響應快速等方面進行良好的優(yōu)化。二是對基于樹莓派的Opencv色塊識別、神經(jīng)網(wǎng)絡的Tensorflow色塊識別以及STM32的Openmv色塊識別3種典型的色塊識別方法,進行了各自的優(yōu)劣勢的分析并加以比較,進行歸納和總結,并給出了今后這3種典型方法的應用前景與改進方向。

猜你喜歡
色塊柵格激光雷達
足球色塊
手持激光雷達應用解決方案
基于鄰域柵格篩選的點云邊緣點提取方法*
法雷奧第二代SCALA?激光雷達
基于校驗信息隱藏的彩碼抗篡改攻擊技術*
基于激光雷達通信的地面特征識別技術
基于激光雷達的多旋翼無人機室內(nèi)定位與避障研究
閻先公和他的瓷板色塊潑彩畫
三個色塊
不同剖面形狀的柵格壁對柵格翼氣動特性的影響
大冶市| 蚌埠市| 南丹县| 桑植县| 大石桥市| 左云县| 应城市| 黄浦区| 昌吉市| 蓬莱市| 囊谦县| 抚松县| 隆安县| 读书| 靖州| 门头沟区| 奈曼旗| 昆山市| 建湖县| 稷山县| 黔东| 九寨沟县| 金阳县| 公安县| 象州县| 宁乡县| 沂南县| 五台县| 凭祥市| 横山县| 景德镇市| 陇西县| 栾川县| 富平县| 九江县| 柳州市| 彭阳县| 和静县| 河东区| 巴彦县| 和龙市|