摘"要:機(jī)器人檢測(cè)的最優(yōu)路徑規(guī)劃是一個(gè)非常重要的研究課題,尤其是復(fù)雜場(chǎng)景下的路徑優(yōu)化。介紹了一種基于YOLOv3的火電廠化水站巡檢機(jī)器人優(yōu)化路徑規(guī)劃方法。將先進(jìn)的YOLOv3算法應(yīng)用于檢測(cè)目標(biāo)的確定,通過(guò)繪制工作環(huán)境圖和檢測(cè)目標(biāo)位置,該算法成功地找到了機(jī)器人的最佳檢測(cè)路線。該方法的優(yōu)點(diǎn)是檢測(cè)速度快、準(zhǔn)確率高、成本低,可以有效地提高巡邏機(jī)器人的自動(dòng)化水平。
關(guān)鍵詞:路徑規(guī)劃;檢測(cè)機(jī)器人;算法;YOLOv3
YOLOv3"Based"Algorithm"Optimal"Path"Planning"for"Inspection"Robot
Chen"Jianhua"Wang"Meizhan"Zhang"Fei"Gui"Duan"Cheng"Kun
Shaanxi"Shangluo"Power"Generation"Co.,Ltd."ShaanxiShangluo"726000
Abstract:Optimal"path"planning"for"robot"inspection"is"a"very"important"research"topic,especially"the"path"optimization"in"complex"scenes.This"paper"introduced"an"optimal"path"planning"based"on"YOLOv3"for"inspection"robot"working"at"chemical"water"station"in"thermal"power"plant.The"advanced"YOLOv3"algorithm"was"applied"to"the"determination"of"the"inspection"target.By"mapping"the"working"environment"and"detecting"the"location"of"the"target,the"algorithm"was"succeeded"in"finding"the"optimal"inspection"route"of"the"Robot.The"advantages"of"this"approach"are"fast"detection"speed"and"high"accuracy"rate"with"low"cost,which"can"effectively"improve"the"automation"level"of"patrol"Robot.
Keywords:Route"planning;Inspection"Robot;Algorithm;YOLOv3
火力發(fā)電廠輸煤系統(tǒng)作為燃料供應(yīng)的基礎(chǔ)保障,包含了皮帶輸送機(jī)、堆取料機(jī)、碎煤機(jī)、滾軸篩、電子皮帶秤、機(jī)械采樣裝置、除鐵器、犁煤器等多種燃煤輸送作業(yè)設(shè)備,棧橋內(nèi)還集成了水噴淋系統(tǒng)、除塵系統(tǒng)、水清洗系統(tǒng)等配套設(shè)施,作業(yè)環(huán)境差,安全風(fēng)險(xiǎn)高,是設(shè)備運(yùn)維的重點(diǎn)區(qū)域。
輸煤棧橋輸送線路長(zhǎng),運(yùn)行設(shè)備種類多,棧橋內(nèi)環(huán)境質(zhì)量差,巡檢點(diǎn)多,在運(yùn)行前、運(yùn)行中都要定時(shí)、定點(diǎn)巡檢,導(dǎo)致人工巡檢作業(yè)勞動(dòng)強(qiáng)度高、積極性差、安全性低。棧橋內(nèi)現(xiàn)有工業(yè)電視監(jiān)控范圍局限,棧橋內(nèi)現(xiàn)場(chǎng)狀態(tài)監(jiān)測(cè)要素少,難以實(shí)現(xiàn)輸煤棧橋全線路的狀態(tài)實(shí)時(shí)、量化監(jiān)測(cè)與管理,存在環(huán)境起火難預(yù)測(cè)、設(shè)備運(yùn)行故障難監(jiān)測(cè)、惡劣環(huán)境下的人員安全難保障的問(wèn)題。運(yùn)用智能化(機(jī)器人)巡檢的新技術(shù)與新方法,能實(shí)現(xiàn)輸煤棧橋全線路、全方位、全自主的智能化巡檢管理,能實(shí)現(xiàn)無(wú)人化巡檢、可視化管理,提高輸煤系統(tǒng)運(yùn)行的安全性,避免因人工巡檢不全面、不量化、人員素質(zhì)依賴性強(qiáng)引起的各種安全事故與損失。
由于檢測(cè)工作的高要求,檢測(cè)機(jī)器人以其省時(shí)、高效的優(yōu)點(diǎn),取代了傳統(tǒng)的人工檢測(cè)而受到歡迎。在其應(yīng)用過(guò)程中,有必要在完成檢測(cè)任務(wù)的前提下,對(duì)檢測(cè)路線進(jìn)行優(yōu)化規(guī)劃,以提高機(jī)器人的檢測(cè)效率,節(jié)省能源消耗。為此,需要了解工作地圖和地圖上巡邏目標(biāo)的詳細(xì)信息。然而,由于機(jī)器人的巡檢路線長(zhǎng),且相關(guān)設(shè)備復(fù)雜、數(shù)量多,難以繪制機(jī)器人的工作環(huán)境圖和手動(dòng)校準(zhǔn)檢測(cè)目標(biāo)的位置,不可避免地會(huì)出現(xiàn)誤差。
為了克服現(xiàn)有技術(shù)中的上述不足,本研究提供了一種基于YOLOv3的巡邏機(jī)器人最優(yōu)路徑規(guī)劃方法,實(shí)現(xiàn)了巡邏機(jī)器人的自動(dòng)路徑規(guī)劃。
圖1"輸煤棧橋巡檢機(jī)器人實(shí)時(shí)信息展現(xiàn)
1"路線規(guī)劃方法
本文討論了基于YOLOv3的路徑規(guī)劃,主要包括目標(biāo)檢測(cè)方法的建模和訓(xùn)練步驟,以及基于蟻群算法的機(jī)器人最優(yōu)路徑規(guī)劃步驟。方法如下:
(1)采用光柵地圖表示方法,自動(dòng)創(chuàng)建檢測(cè)工作環(huán)境的地圖,并由檢測(cè)機(jī)器人確定檢測(cè)目標(biāo)的位置。光柵的單位尺寸是檢查機(jī)器人的占用面積[1]。
(2)輸入初始化的信息素矩陣T,確定起始點(diǎn)和終止點(diǎn),確保每個(gè)位置的信息素必須相等。
(3)確定下一個(gè)可到達(dá)節(jié)點(diǎn),根據(jù)節(jié)點(diǎn)的信息素濃度確定螞蟻到達(dá)節(jié)點(diǎn)的概率,并使用輪盤算法選擇下一步的起始點(diǎn)。
(4)更新行程的路徑和長(zhǎng)度。
(5)重復(fù)步驟(3)和(4)幾次,直到螞蟻到達(dá)目標(biāo)點(diǎn)或螞蟻穿過(guò)所有可用路徑。
(6)多次重復(fù)步驟(3)至(5),直到螞蟻的迭代計(jì)算完成。
(7)更新信息素矩陣T,未達(dá)到目標(biāo)點(diǎn)的螞蟻不包括在計(jì)算范圍內(nèi)。
(8)重復(fù)步驟(3)至(7),直到NTH代螞蟻的迭代結(jié)束。在循環(huán)中選擇最佳路徑,同時(shí)輸出最佳路徑曲線[2]。
圖2"基于YOLOv3的最優(yōu)路徑規(guī)劃流程圖
下面結(jié)合附圖對(duì)基于YOLOv3的儀器檢測(cè)機(jī)器人的最優(yōu)路徑規(guī)劃方法做進(jìn)一步的說(shuō)明:
本文的方法進(jìn)一步定義為基于YOLOv3算法框架的目標(biāo)檢測(cè)模型的建模和訓(xùn)練步驟,如下所示:
(1)收集輸煤棧橋各種設(shè)備的所有儀表圖片樣本,并根據(jù)圖片中的信息制作標(biāo)簽文件。
(2)將訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)進(jìn)行劃分,從原始樣本中隨機(jī)抽取80%的數(shù)據(jù)作為訓(xùn)練數(shù)據(jù)集,剩余20%的數(shù)據(jù)作為驗(yàn)證數(shù)據(jù)集。
(3)基于YOLOv3算法框架對(duì)目標(biāo)檢測(cè)模型進(jìn)行訓(xùn)練,直到目標(biāo)檢測(cè)模型的損失收斂到預(yù)設(shè)的收斂值。
(4)驗(yàn)證模型是否與驗(yàn)證數(shù)據(jù)集過(guò)度擬合。當(dāng)驗(yàn)證數(shù)據(jù)集的精度接近訓(xùn)練數(shù)據(jù)集的準(zhǔn)確性時(shí),模型訓(xùn)練就完成了。
(5)將訓(xùn)練后的目標(biāo)檢測(cè)模型嵌入檢測(cè)機(jī)器人的控制系統(tǒng)中。
此外,在步驟(1)中創(chuàng)建用于檢查的工作環(huán)境的地圖并確定檢查目標(biāo)的位置的方法中,檢查機(jī)器人具有用于測(cè)量行走方向和距離的內(nèi)置裝置以及紅外避障裝置。工作環(huán)境的映射和檢查目標(biāo)的定位可以通過(guò)三次檢測(cè)來(lái)實(shí)現(xiàn)。算法實(shí)現(xiàn)過(guò)程如下:
第一步,初始化地圖數(shù)據(jù),將數(shù)組中的所有數(shù)據(jù)設(shè)置為1,并認(rèn)為它可以到達(dá)任何位置。
第二步,第一次檢測(cè):機(jī)器人從初始巡邏位置開始檢測(cè)。假設(shè)初始位置位于地圖的左上角,機(jī)器人的右側(cè)始終保持為障礙物。由于環(huán)境封閉,機(jī)器人最終會(huì)回到起點(diǎn),從而建立起工作環(huán)境的輪廓圖。
第三步,第二次檢測(cè):對(duì)輪廓內(nèi)的區(qū)域進(jìn)行遍歷檢測(cè)。采用廣度優(yōu)先遍歷方法確定輪廓內(nèi)區(qū)域內(nèi)所有網(wǎng)格的信息,得到機(jī)器人工作環(huán)境的完整地圖。穿越完成后,機(jī)器人返回起點(diǎn)。
第四步,第三次探測(cè):在工作地圖已知后,開始啟動(dòng)巡邏目標(biāo)定位。啟動(dòng)機(jī)器人的高清攝像頭和目標(biāo)檢測(cè)模型,對(duì)機(jī)器人捕捉到的前方環(huán)境進(jìn)行檢測(cè)。當(dāng)捕捉到的內(nèi)容中檢測(cè)到目標(biāo)儀器圖像時(shí),模型會(huì)為目標(biāo)繪制目標(biāo)框并顯示其儀器編號(hào)。機(jī)器人會(huì)跟蹤目標(biāo),直到屏幕中繪制的目標(biāo)框面積達(dá)到總拍攝面積的50%或更多。此時(shí),機(jī)器人位置被定位為與儀器相對(duì)應(yīng)的檢查坐標(biāo)。檢測(cè)結(jié)束,機(jī)器人返回到初始位置。
2"結(jié)果與分析
2.1"基于YOLOv3算法框架的目標(biāo)檢測(cè)模型建模與訓(xùn)練步驟
在本文中YOLOv3是一種基于回歸卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)識(shí)別模型,該模型采用53層3×3和1×1的卷積。之后,一些殘差網(wǎng)絡(luò)結(jié)構(gòu)也被用于多尺度預(yù)測(cè),具有檢測(cè)速度快、精度高的優(yōu)點(diǎn)。它是目前最優(yōu)秀的目標(biāo)檢測(cè)算法之一,可用于巡邏目標(biāo)的識(shí)別和檢測(cè)。基于YOLOv3算法框架的目標(biāo)檢測(cè)模型的建模和訓(xùn)練步驟如下:
(1)收集輸煤棧橋各種設(shè)備的所有儀表圖片樣本,并根據(jù)圖片中的信息制作標(biāo)簽文件。標(biāo)簽文件中的數(shù)據(jù)包含圖形的類別號(hào)、中心點(diǎn)的標(biāo)準(zhǔn)化坐標(biāo)(XXY)以及目標(biāo)框的標(biāo)準(zhǔn)化寬度和高度(w,h)。計(jì)算公式如等式(1)至(4)所示。
x=X1+X22W(1)
y=y1+y22H(2)
w=x2-x1W(3)
h=y2-y1H(4)
其中(x1,y1)是注釋框體的左下角的坐標(biāo);(x2,y2)是注釋框體的右上角的坐標(biāo);W是圖像的寬度;H是圖像的高度。
(2)將訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)進(jìn)行劃分,從原始樣本中隨機(jī)選擇80%的數(shù)據(jù)作為訓(xùn)練數(shù)據(jù)集,其余20%的數(shù)據(jù)作為驗(yàn)證數(shù)據(jù)集。
(3)更改YOLOv3模型的參數(shù)配置文件。打開“訓(xùn)練”的參數(shù)設(shè)置,關(guān)閉“測(cè)試”的參數(shù)設(shè)定。將類別的數(shù)量修改為Classes,以及最后一個(gè)卷積層中過(guò)濾器的大小。修改規(guī)則,如等式(5)所示。
Filter=N×N×3×(4+1+classes)(5)
其中N是卷積核的數(shù)量,類是類的數(shù)量。
基于YOLOv3算法框架,對(duì)目標(biāo)檢測(cè)模型進(jìn)行訓(xùn)練,直到損失收斂到預(yù)設(shè)的收斂值。
(4)訓(xùn)練后,使用驗(yàn)證數(shù)據(jù)集來(lái)驗(yàn)證模型是否已擬合。當(dāng)驗(yàn)證數(shù)據(jù)集的準(zhǔn)確率接近訓(xùn)練數(shù)據(jù)集的正確率時(shí),模型訓(xùn)練就完成了。
(5)然后將訓(xùn)練后的目標(biāo)檢測(cè)模型嵌入檢測(cè)機(jī)器人的控制系統(tǒng)中[3]。
2.2"基于蟻群算法的機(jī)器人最優(yōu)檢測(cè)路徑規(guī)劃步驟
基于蟻群算法的機(jī)器人最優(yōu)檢測(cè)路徑規(guī)劃步驟如下:
采用光柵地圖表示方法,自動(dòng)創(chuàng)建檢測(cè)工作環(huán)境的地圖,并由檢測(cè)機(jī)器人確定檢測(cè)目標(biāo)的位置。光柵的單位尺寸是檢測(cè)機(jī)器人的占用面積[4]。
假設(shè)化水站內(nèi)部空間為正方形,有二維陣列環(huán)境空間圖。使用二維陣列圖[]來(lái)表示環(huán)境空間圖,并將整個(gè)區(qū)域劃分為m×n個(gè)相同大小的網(wǎng)格。數(shù)組的大小設(shè)置為M和n,是通過(guò)查詢供水站的設(shè)計(jì)圖紙獲得的,數(shù)據(jù)由0和1組成,0表示機(jī)器人不能通過(guò),1可以通過(guò)。
巡邏機(jī)器人內(nèi)置測(cè)量行走方向和距離的裝置,以及紅外避障裝置。通過(guò)三次探測(cè),可以繪制工作環(huán)境地圖,定位巡邏目標(biāo),算法實(shí)現(xiàn)過(guò)程如下:
(1)初始化地圖數(shù)據(jù),將數(shù)組中的所有數(shù)據(jù)設(shè)置為1,并認(rèn)為它可以到達(dá)任何位置。
(2)第一次檢測(cè):機(jī)器人從初始檢測(cè)位置開始檢測(cè)。假設(shè)初始位置位于地圖的左上角,機(jī)器人的右側(cè)始終保持為障礙物。由于環(huán)境封閉,機(jī)器人最終會(huì)回到起點(diǎn),從而建立起工作環(huán)境的輪廓圖。根據(jù)機(jī)器人環(huán)境感知模塊的輸入數(shù)據(jù),判斷機(jī)器人的移動(dòng)方向和距離。然后,將反饋數(shù)據(jù)寫入陣列映射[]中,輪廓外的位置被認(rèn)為是不可通行的,地圖[]中相應(yīng)的位置數(shù)據(jù)為0。
(3)第二次檢測(cè):對(duì)輪廓內(nèi)的區(qū)域進(jìn)行遍歷檢測(cè)。采用廣度優(yōu)先遍歷方法來(lái)確定輪廓區(qū)域內(nèi)所有網(wǎng)格的信息。更新了map[]陣列數(shù)據(jù),以獲得機(jī)器人工作環(huán)境的完整地圖。
(4)第三次探測(cè):在工作地圖已知后,開始巡邏探測(cè)目標(biāo)定位。定義了字典型數(shù)組ToBeDetected[],數(shù)組中的鍵是所有儀器的預(yù)設(shè)編號(hào),所有儀器都有一個(gè)唯一的編號(hào),鍵對(duì)應(yīng)的值是儀器的檢測(cè)狀態(tài),初始值設(shè)置為1,表示所有儀器都是ToBeDetective。
同時(shí),在完成工作環(huán)境映射和檢測(cè)目標(biāo)定位后,對(duì)機(jī)器人的最優(yōu)檢測(cè)路線規(guī)劃進(jìn)行了評(píng)估。機(jī)器人檢測(cè)路徑規(guī)劃問(wèn)題可以看作是經(jīng)典的路徑優(yōu)化問(wèn)題(TSP),并采用蟻群算法求解機(jī)器人檢測(cè)路徑的優(yōu)化規(guī)劃問(wèn)題。
(1)啟動(dòng)機(jī)器人的高清攝像頭和目標(biāo)檢測(cè)模型,檢測(cè)機(jī)器人捕捉到的前方環(huán)境。當(dāng)在捕獲的內(nèi)容中檢測(cè)到目標(biāo)儀器圖像時(shí),模型將為目標(biāo)繪制一個(gè)目標(biāo)框,并顯示其儀器編號(hào)。機(jī)器人跟蹤目標(biāo),直到屏幕中繪制的目標(biāo)框的面積達(dá)到總拍攝面積的50%或更多。此時(shí),機(jī)器人位置被定位為與儀器相對(duì)應(yīng)的檢查坐標(biāo),并且與儀器編號(hào)的鍵相對(duì)應(yīng)的值被更新為0。重復(fù)上述過(guò)程,直到ToBeDetected[]中的所有值都為0,檢測(cè)結(jié)束并返回到原始位置。
在完成工作環(huán)境映射和檢測(cè)目標(biāo)定位后,開始機(jī)器人的最優(yōu)檢測(cè)路線規(guī)劃。機(jī)器人檢測(cè)路徑規(guī)劃問(wèn)題被認(rèn)為是經(jīng)典的路徑優(yōu)化問(wèn)題,即旅行商問(wèn)題。利用蟻群算法求解機(jī)器人最優(yōu)檢測(cè)路徑規(guī)劃問(wèn)題[5]。
(2)導(dǎo)入創(chuàng)建的檢測(cè)機(jī)器人的工作環(huán)境圖。在地圖中識(shí)別出檢查目標(biāo)節(jié)點(diǎn)后,輸入初始化的信息素矩陣T,以確定起始點(diǎn)和終止點(diǎn),并確保每個(gè)位置的信息素必須相等。信息素矩陣T如等式(6)所示:
T=0τ12
τ210…τ1n
τ2n
τn1τn2…τnn(6)
其中n是地圖中必須經(jīng)過(guò)的位置數(shù)。
(3)確定下一個(gè)可達(dá)節(jié)點(diǎn),根據(jù)節(jié)點(diǎn)的信息素濃度確定螞蟻到達(dá)節(jié)點(diǎn)的概率,并使用輪盤算法選擇下一步的起始點(diǎn);計(jì)算公式如等式(7)和(8)所示:
pkij=τij(t)α·ηij(t)β∑s∈Jk(i)τij(t)(t)α·ηij(t)β
0,j∈Jk(i)(7)
ηij=1dij(8)
其中,τij(t)代表時(shí)間t時(shí)位置i和位置j之間的信息素濃度。ηij是與時(shí)間t時(shí)從位置i到位置j的路徑相關(guān)的啟發(fā)式因子,α是信息素的權(quán)重系數(shù),β是啟發(fā)式因子權(quán)重系數(shù)。Jk(i)是螞蟻k在下一步中允許選擇的一組檢測(cè)目標(biāo),是從位置i到位置j的距離。
(4)更新行程的路徑和長(zhǎng)度。
(5)重復(fù)步驟(3)和(4)幾次,直到螞蟻到達(dá)目標(biāo)點(diǎn)或已經(jīng)行進(jìn)了所有可用的路線。
(6)多次重復(fù)步驟(3)至(5),直到螞蟻的迭代計(jì)算完成。
(7)更新信息素矩陣T,未到達(dá)目標(biāo)點(diǎn)的螞蟻不包括在計(jì)算范圍內(nèi)。更新的信息素矩陣的計(jì)算公式如方程(9)和(10)所示。
τij(t+1)=(1-ρ)×τij(t)+△τij(9)
△τij=QLk(t)
0螞蟻k經(jīng)過(guò)i,j
螞蟻k不經(jīng)過(guò)i,j(10)
式中的ρ為控制參數(shù);Q是一個(gè)正態(tài)數(shù);Lk(t)表示螞蟻k經(jīng)過(guò)t時(shí)間后的路徑的總距離。
(8)重復(fù)步驟(3)至(7),直到螞蟻的NTH生成的迭代結(jié)束,在循環(huán)中選擇最佳路徑,同時(shí)輸出最佳路徑曲線。
3"結(jié)論
本文提出了一種基于YOLOv3的儀器檢測(cè)機(jī)器人最優(yōu)路徑規(guī)劃方法。機(jī)器人的最優(yōu)檢測(cè)路徑規(guī)劃具有保證機(jī)器人檢測(cè)目標(biāo)識(shí)別準(zhǔn)確性、提高機(jī)器人智能化水平等優(yōu)點(diǎn),有利于降低機(jī)器人長(zhǎng)期檢測(cè)的能耗、電池充電次數(shù)、延長(zhǎng)機(jī)器人電池的使用壽命和成本,顯示出巨大的應(yīng)用價(jià)值。
參考文獻(xiàn):
[1]Jan"GE,Chang"K"Y,Parberry"I.Optimal"Path"Planning"for"Mobile"Robot"Navigation[J].IEEE/ASME"Transactions"on"Mechatronics,2008,13(4):451460.
[2]LiX,Yu"D.Study"on"an"Optimal"Path"Planning"for"a"Robot"Based"on"an"Improved"ANT"Colony"Algorithm[J].Automatic"Control"and"Computer"Sciences,2019,53(3):236243.
[3]ZhangX,Liu"S,Xiang"Z.Optimal"Inspection"Path"planning"of"substation"Robot"in"the"complex"substation"environment[C]//2019"Chinese"Automation"Congress(CAC).IEEE,2019.
[4]PanZ,Wang"D,Deng"H,et"al.A"Virtual"Spring"Method"for"the"MultiRobot"Path"Planning"and"Formation"Control[J].International"Journal"of"Control,Automation"and"Systems,2019,17(5):111.
[5]LuoX,Li"S,Liu"S,et"al.An"optimal"trajectory"planning"method"for"path"tracking"of"industrial"Robots[J].Robotica,2019,37(3):502520.
作者簡(jiǎn)介:陳劍華(1971—"),男,漢族,上海人,學(xué)士,中級(jí)職稱,研究方向:火力發(fā)電廠智能運(yùn)維。