盧浩文,肖曙紅,林耿聰,招子安
(1.廣東工業(yè)大學(xué)機(jī)電工程學(xué)院,廣州 511400;2.佛山智能裝備技術(shù)研究院,佛山 528000)
隨著圖像處理技術(shù)和運(yùn)動(dòng)控制技術(shù)的高速發(fā)展,機(jī)器人與視覺(jué)傳感器結(jié)合的視覺(jué)伺服控制技術(shù)得到了極大提升,視覺(jué)伺服靠著高精度、實(shí)時(shí)性的優(yōu)點(diǎn)在工業(yè)領(lǐng)域得到廣泛應(yīng)用?;趫D像的視覺(jué)伺服(IBVS)誤差信號(hào)反饋在二維圖像平面[1],系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,定位精度高,受到大量學(xué)者青睞。然而,傳統(tǒng)的視覺(jué)伺服技術(shù),深受標(biāo)定精度的影響,往往會(huì)因?yàn)闃?biāo)定精度不足導(dǎo)致工作受限。此外,在一些比較危險(xiǎn)和對(duì)人體有害的特定環(huán)境下,不一定能實(shí)現(xiàn)有效的標(biāo)定。為了克服標(biāo)定的弊端,研究一種有效的、通用的無(wú)標(biāo)定視覺(jué)伺服系統(tǒng)具有重大意義[2]。
隨著各種智能算法、優(yōu)化算法理論的普及,無(wú)標(biāo)定視覺(jué)伺服理論研究已經(jīng)非常成熟,主要有基于非線性優(yōu)化算法和基于狀態(tài)估計(jì)算法求解系統(tǒng)雅可比矩陣[3]。ZHONG等[4]提出一種神經(jīng)網(wǎng)絡(luò)結(jié)合Kalman濾波器估計(jì)雅可比矩陣方法,在隨機(jī)噪聲的環(huán)境下,矩陣估計(jì)誤差很小。ZHONG等[5]提出自適應(yīng)神經(jīng)濾波,能夠自適應(yīng)修正估計(jì)誤差,減小了外界環(huán)境對(duì)雅可比矩陣估計(jì)影響。李建[6]提出了一種粒子群(PSO)優(yōu)化極限學(xué)習(xí)機(jī)(ELM)估計(jì)圖像雅可比矩陣的非線性優(yōu)化算法,完成了無(wú)標(biāo)定視覺(jué)伺服定位任務(wù)。NADI等[7]提出Q學(xué)習(xí)和模糊神經(jīng)網(wǎng)絡(luò)構(gòu)成的IBVS方法,在Q學(xué)習(xí)的強(qiáng)大學(xué)習(xí)能力下,模糊神經(jīng)網(wǎng)絡(luò)使用更少的樣本數(shù)據(jù)和訓(xùn)練時(shí)間也能完成伺服控制,極大的提高了效率。WANG等[8]提出無(wú)跡粒子濾波(UPF)估計(jì)圖像雅可比矩陣方法,用UKF算法完成粒子的傳播與更新。REN等[9]提出最大熵Kalman濾波(MCKF)算法,與Kalman濾波(KF)不同的是MCKF采用不動(dòng)點(diǎn)迭代的方式,并且應(yīng)用了最大相關(guān)準(zhǔn)則進(jìn)行優(yōu)化,使其在非常復(fù)雜的環(huán)境中也能完成視覺(jué)伺服定位。通過(guò)上述文獻(xiàn)不難發(fā)現(xiàn)學(xué)者們對(duì)基于圖像的視覺(jué)伺服的研究關(guān)注點(diǎn)在于圖像雅可比矩陣的求解,忽略了視覺(jué)伺服系統(tǒng)的運(yùn)行效率。
本文以IBVS為研究對(duì)象,提出了一種快速收斂的無(wú)標(biāo)定視覺(jué)伺服控制方法,該方法利用灰狼算法(GWO)優(yōu)化極限學(xué)習(xí)機(jī)(ELM)來(lái)估計(jì)交互作用矩陣偽逆和手眼關(guān)系,預(yù)測(cè)機(jī)械臂末端速度,直接避免了圖像雅可比求解過(guò)程繁瑣且受到標(biāo)定精度的影響,然后將模糊控制(Fuzzy Control)應(yīng)用于GWO-ELM-IBVS進(jìn)行運(yùn)動(dòng)控制,提高視覺(jué)伺服系統(tǒng)收斂效率。
圖像雅可比矩陣是IBVS系統(tǒng)運(yùn)動(dòng)控制的關(guān)鍵點(diǎn),其反映了物體特征點(diǎn)像素變化與末端執(zhí)行器速度的關(guān)系。假設(shè)相機(jī)采用eye-in-hand安裝方式,點(diǎn)P在相機(jī)坐標(biāo)系坐標(biāo)為cP=(Xc,Yc,Zc),圖像坐標(biāo)系坐標(biāo)為(x,y),根據(jù)相機(jī)成像原理可知:
(1)
式中:f為相機(jī)的焦距。
令點(diǎn)P在相機(jī)坐標(biāo)系坐標(biāo)中做平移運(yùn)動(dòng)cT=(vx,vy,vz)和旋轉(zhuǎn)運(yùn)動(dòng)cΩ=(ωx,ωy,ωz),可得相機(jī)的對(duì)點(diǎn)P的運(yùn)動(dòng)速度為:
(2)
將式(2)分解為Xc、Yc、Zc三個(gè)方向速度可得:
(3)
將式(3)轉(zhuǎn)換為圖像坐標(biāo)系速度得:
(4)
聯(lián)合式(1)~式(4)可得:
(5)
式(5)得到的交互作用矩陣Jc只是點(diǎn)P相對(duì)于相機(jī)坐標(biāo)系下的關(guān)系矩陣,當(dāng)相機(jī)坐標(biāo)系與機(jī)械臂末端坐標(biāo)系重合時(shí),交互作用矩陣Jc為圖像雅可比矩陣,但在大多數(shù)eye-in-hand視覺(jué)應(yīng)用中,兩者坐標(biāo)系并不重合,相機(jī)與末端執(zhí)行器是固定相連關(guān)系,此時(shí)圖像雅可比矩陣的求解為:
(6)
(7)
(8)
Ji=JcH+
(9)
極限學(xué)習(xí)機(jī)(ELM)是HUANG[10]提出的一種神經(jīng)網(wǎng)絡(luò)算法。與其它基于梯度方法進(jìn)行訓(xùn)練的單隱層前饋神經(jīng)網(wǎng)絡(luò)相比,ELM沒(méi)有迭代、誤差反向傳播、權(quán)值閾值更新等過(guò)程,簡(jiǎn)化了網(wǎng)絡(luò)模型,降低了計(jì)算復(fù)雜度,極大的提高了網(wǎng)絡(luò)模型的運(yùn)行速度,使其備受研究者喜愛(ài)。極限學(xué)習(xí)機(jī)(ELM)模型如圖1所示。ELM由輸入層x,中間隱藏層h(x),輸出層t三層網(wǎng)絡(luò)結(jié)構(gòu)組成,其節(jié)點(diǎn)數(shù)分別為D、L、M。
圖1 極限學(xué)習(xí)機(jī)模型
ELM模型中隱藏層的輸出H(x)表達(dá)式為:
H(x)=[h1(x),h2(x),…,hL(x)]
(10)
隱藏層h(x)與激活函數(shù)g(ωi,bi,x),隱藏層輸入權(quán)重參數(shù)值ωi,神經(jīng)元的偏置值bi之間的關(guān)系為:
hi(x)=g(ωi,bi,x)=g(ωix+bi),ωi∈RL,bi∈RL
(11)
聯(lián)合H(x)及隱藏層輸出權(quán)重參數(shù)β求得ELM神經(jīng)網(wǎng)絡(luò)的輸出fL(x):
(12)
使用最小化近似平方差的方法將式(12)與訓(xùn)練樣本數(shù)據(jù)的目標(biāo)矩陣T進(jìn)行求解得:
(13)
將式(13)展開(kāi)得:
(14)
最終求得式(13)的最優(yōu)解為:
β*=H+T
(15)
灰狼優(yōu)化算法(GWO)由MIRJALILI等[11]提出,其模擬了狼群的捕食獵物活動(dòng)。灰狼是一種群居動(dòng)物,要想讓整個(gè)狼群有條不紊的生活,就必須按照狼群法規(guī)進(jìn)行各項(xiàng)行為?;依撬惴ò凑?個(gè)步驟進(jìn)行:
步驟1:進(jìn)行社會(huì)等級(jí)分層,模擬金字塔關(guān)系將狼群從上至下進(jìn)行分層,即α、β、δ、ω;
步驟2:包圍獵物,派出能力強(qiáng)的α、β、δ形成一個(gè)大范圍的包圍圈,不斷進(jìn)行位置更新來(lái)地毯式搜索獵物,狼群位置更新公式為:
D=|C·Xp(t)-X(t)|
X(t+1)=Xp(t)-A·D
(16)
A=2a·r1-a
C=2r2
(17)
式中:D為狼群個(gè)體與獵物的距離,Xp和X(t+1)為獵物和灰狼的位置,t為迭代次數(shù),A、C為系數(shù)向量,a為收斂因子,r為隨機(jī)數(shù)。
步驟3:追捕獵物,α、β、δ三匹狼尋找獵物并指揮ω狼向獵物逼近;X1=|Xα(t)-A1·Dα|
X2=|Xβ(t)-A2·Dβ|
X3=|Xδ(t)-A3·Dδ|
(18)
Dα=|C1·Xα(t)-X(t)|
Dβ=|C2·Xβ(t)-X(t)|
Dδ=|C3·Xδ(t)-X(t)|
(19)
(20)
式中:α、β、δ與獵物的相對(duì)位置分別為Xα、Xβ、Xδ,更新公式分別為X1、X2、X3,α、β、δ狼與ω狼的距離為Dα、Dβ、Dδ。
步驟4:攻擊獵物,當(dāng)收斂因子ai從2線性減小到0時(shí),系數(shù)向量Ai的值對(duì)應(yīng)在區(qū)間[-a,a],|Ai|<1時(shí),說(shuō)明α、β、δ三種狼中有狼感應(yīng)到了獵物,指揮狼群對(duì)獵物進(jìn)行集中攻擊;當(dāng)|Ai|>1時(shí),說(shuō)明α、β、δ三種狼還沒(méi)發(fā)現(xiàn)獵物,此時(shí)狼群進(jìn)行全局搜索尋找獵物。
灰狼算法優(yōu)化極限學(xué)習(xí)機(jī)流程如圖2所示。先設(shè)置好ELM的神經(jīng)元個(gè)數(shù)和相應(yīng)的激活函數(shù),然后設(shè)置狼群初始參數(shù)、種群數(shù)量、上下邊界以及迭代次數(shù),找出狼群中適應(yīng)度最好的α、β、δ三狼,在算法尋優(yōu)的過(guò)程中不斷更新灰狼當(dāng)前的參數(shù)和狼群適應(yīng)度,通過(guò)新的α、β、δ三狼對(duì)狼群狩獵進(jìn)行優(yōu)化,當(dāng)達(dá)到狼群最大迭代次數(shù)后輸出優(yōu)化后的ELM最優(yōu)權(quán)值和神經(jīng)元閾值,最后將最優(yōu)權(quán)值和神經(jīng)元閾值經(jīng)過(guò)神經(jīng)網(wǎng)絡(luò)訓(xùn)練得到預(yù)測(cè)結(jié)果。
圖2 GWO-ELM流程圖
采集目標(biāo)物體4個(gè)特征點(diǎn)的誤差作為輸入樣本,機(jī)器人末端速度作為輸出樣本,兩者樣本個(gè)數(shù)均為1290份。隨機(jī)抽取數(shù)據(jù)樣本中的70%,903份數(shù)據(jù)用作訓(xùn)練集,另外387份數(shù)據(jù)用作測(cè)試集。將輸入層節(jié)點(diǎn)個(gè)數(shù)設(shè)置為8,隱藏層節(jié)點(diǎn)個(gè)數(shù)設(shè)置為30,輸出層的節(jié)點(diǎn)個(gè)數(shù)設(shè)置為6[6],選用Sigmoid函數(shù)作為激活函數(shù)。灰狼算法中設(shè)置種群個(gè)數(shù)30,最大迭代次數(shù)60,將樣本數(shù)據(jù)歸一化后,狼群的下邊界為-1,上邊界為1。ELM測(cè)試集均方根誤差為E1,GWO-ELM測(cè)試集均方根誤差為E2。
將ELM神經(jīng)網(wǎng)絡(luò)的訓(xùn)練集的均方根誤差值作為整個(gè)狼群適應(yīng)度,均方根誤差值越小說(shuō)明ELM模型預(yù)測(cè)得到的數(shù)據(jù)與真實(shí)數(shù)據(jù)的誤差越小,即適應(yīng)度越小代表的灰狼算法效果越好。GWO-ELM的適應(yīng)度函數(shù)收斂曲線如圖3所示。
圖3 GWO-ELM流程圖
經(jīng)過(guò)灰狼算法迭代60次之后,狼群適應(yīng)度由2.422 9×10-4下降到6.317 6×10-5,此時(shí)ELM測(cè)試集均方根誤差E1=0.053 5,GWO-ELM測(cè)試集均方根誤差E2=0.010 3,說(shuō)明GWO-ELM預(yù)測(cè)得到的數(shù)據(jù)比ELM好,灰狼算法優(yōu)化極限學(xué)習(xí)機(jī)模型得到較大程度的優(yōu)化。
在測(cè)試集中隨機(jī)挑選Vx的50組數(shù)據(jù)進(jìn)行ELM與GWO-ELM在預(yù)測(cè)輸出速度和預(yù)測(cè)輸出速度誤差方面對(duì)比,其結(jié)果如圖4和圖5所示。從圖4可知,ELM和GWO-ELM總體上能夠較為準(zhǔn)確的預(yù)測(cè)輸出速度,GWO-ELM的預(yù)測(cè)速度值比較靠近期望輸出速度,準(zhǔn)確度高于ELM。從圖5可知,GWO-ELM的測(cè)試集預(yù)測(cè)輸出速度的絕對(duì)誤差比ELM明顯更小,其絕對(duì)誤差大多數(shù)能夠控制在0.25 mm/s以內(nèi)。
圖4 測(cè)試集預(yù)測(cè)輸出速度
對(duì)ELM與GWO-ELM兩種模型進(jìn)行10次實(shí)驗(yàn),兩者的測(cè)試集均方根誤差(RMSE)數(shù)據(jù)對(duì)比結(jié)果如表1所示。從表1中的10組數(shù)據(jù)中不難發(fā)現(xiàn),ELM的測(cè)試集均方根誤差E1在不同實(shí)驗(yàn)次數(shù)中有微小變化,總體上比較穩(wěn)定,GWO-ELM測(cè)試集均方根誤差E2在10組數(shù)據(jù)中均比ELM的小,再次驗(yàn)證了GWO-ELM模型穩(wěn)定性優(yōu)于ELM模型。
表1 ELM與GWO-ELM RMSE的對(duì)比
本文提出模糊控制取代IBVS系統(tǒng)中固定的比例控制方式,使IBVS系統(tǒng)增益系數(shù)λ按照模糊規(guī)則進(jìn)行取值,在特征點(diǎn)像素誤差較大時(shí),λ選取較小的值,此時(shí)機(jī)械臂末端將會(huì)得到一個(gè)穩(wěn)定的速度進(jìn)行運(yùn)動(dòng),隨著特征點(diǎn)像素誤差的減小,λ的值按照模糊控制會(huì)增大,在一定程度上提高機(jī)械臂末端的運(yùn)動(dòng)速度,使其更快的收斂。
表2 模糊規(guī)則
圖6 模糊控制輸出曲面圖
(21)
(22)
聯(lián)合式(9)、式(21)、式(22)可得機(jī)械臂關(guān)節(jié)角速度與特征點(diǎn)像素坐標(biāo)誤差關(guān)系:
(23)
為了驗(yàn)證GWO-ELM-IBVS、Fuzzy Control-GWO-ELM-IBVS控制系統(tǒng)有效性,本文以HSR-JR607機(jī)械臂為實(shí)驗(yàn)主體,采用eye-in-hand相機(jī)安裝方式,搭建無(wú)標(biāo)定視覺(jué)伺服控制系統(tǒng)實(shí)驗(yàn)平臺(tái),如圖7所示。
圖7 無(wú)標(biāo)定視覺(jué)伺服實(shí)驗(yàn)平臺(tái)
實(shí)驗(yàn)平臺(tái)設(shè)備主要包括:HSR-JR607六軸機(jī)器人、華數(shù)驅(qū)控一體六軸控制電柜、海康MV-CA004-10GM工業(yè)相機(jī)、海康6 mm光學(xué)鏡頭、硅萊GA-61A靜音無(wú)油空壓機(jī)、HP計(jì)算機(jī)等。將固連在機(jī)械臂末端的工業(yè)相機(jī)通過(guò)示教操作移動(dòng)到目標(biāo)物體的上方,采集此時(shí)圖片,通過(guò)圖像處理提取目標(biāo)物體最小外接矩形的4個(gè)頂點(diǎn)作為期望位置的像素坐標(biāo),S*=[407.98 169.81 175.16 413.33;431.23 425.86 188.79 194.16],接著將相機(jī)移動(dòng)到目標(biāo)物體右上方,采集起始位置的像素坐標(biāo),S0=[607.80 424.01 427.48 611.26;259.79 256.32 72.67 76.14],起始圖像、期望圖像最小外接矩形特征點(diǎn)的提取如圖8所示。
(a) 起始位置 (b) 期望位置
將GWO-ELM-IBVS系統(tǒng)增益系數(shù)λ設(shè)置為1,Fuzzy Control-GWO-ELM-IBVS系統(tǒng)增益系數(shù)λ由模糊控制在誤差區(qū)間選取,機(jī)械臂運(yùn)動(dòng)的視覺(jué)伺服周期包括圖像采集、圖像處理、機(jī)械臂運(yùn)動(dòng)控制,現(xiàn)將兩者視覺(jué)伺服周期均設(shè)置為0.8 s,特征點(diǎn)像素坐標(biāo)誤差閾值設(shè)置為2個(gè)像素。
圖9a和圖9b為4個(gè)特征點(diǎn)像素坐標(biāo)誤差收斂圖,特征點(diǎn)像素坐標(biāo)誤差總體上呈指數(shù)形式下降,收斂趨勢(shì)由快到慢,當(dāng)系統(tǒng)運(yùn)行至7.2 s時(shí),系統(tǒng)迭代9次,特征點(diǎn)誤差都收斂到5像素以內(nèi),直到系統(tǒng)運(yùn)行至8 s時(shí),特征點(diǎn)誤差收斂到規(guī)定閾值2像素,物體中心點(diǎn)像素坐標(biāo)為(290.30,308.87),收斂結(jié)束時(shí)特征點(diǎn)像素坐標(biāo)S=[406.46 168.98 174.13 411.61;429.86 424.69 187.87 193.04],最終收斂誤差e=[-1.52 -0.83 -1.03 -1.72;-1.37 -1.17 -0.92 -1.12]。
(a) 特征點(diǎn)1、點(diǎn)3誤差收斂 (b) 特征點(diǎn)2、點(diǎn)4誤差收斂
(a) 特征點(diǎn)1、點(diǎn)3誤差收斂 (b) 特征點(diǎn)2、點(diǎn)4誤差收斂
Fuzzy Control-GWO-ELM-IBVS系統(tǒng)靠著模糊控制的優(yōu)勢(shì),在特征點(diǎn)誤差收斂方面明顯更快,不足之處在于系統(tǒng)增益系數(shù)的增大會(huì)使系統(tǒng)剛性下降,導(dǎo)致誤差收斂發(fā)生輕微波動(dòng)。當(dāng)系統(tǒng)運(yùn)行至1.6 s收斂位置時(shí),Fuzzy Control-GWO-ELM-IBVS誤差收斂效率明顯高于GWO-ELM-IBVS,并且在系統(tǒng)運(yùn)行至4.8 s時(shí),誤差收斂就達(dá)到了2像素,此時(shí)特征點(diǎn)像素坐標(biāo)S=[408.51 171.53 176.87 413.82;429.94 424.66 187.54 192.88],最終收斂誤差e=[0.53 1.72 1.71 0.49;-1.29 -1.2 -1.25 -1.28],物體中心點(diǎn)像素坐標(biāo)為(292.68,308.76)。
將相機(jī)隨機(jī)移動(dòng)到物體10個(gè)不同的方位進(jìn)行無(wú)標(biāo)定視覺(jué)伺服實(shí)驗(yàn),并記錄特征點(diǎn)最終收斂誤差結(jié)果的平均值進(jìn)行對(duì)比,其結(jié)果如表3所示。
表3 不同IBVS系統(tǒng)收斂結(jié)果的對(duì)比
由表3可知,Fuzzy Control-GWO-ELM-IBVS系統(tǒng)的定位精度略低于GWO-ELM-IBVS,原因是模糊控制的引入降低了系統(tǒng)的剛性,造成系統(tǒng)輕微波動(dòng),收斂精度略微降低,但其在收斂速度上得到了極大的提升,定位誤差也能達(dá)到規(guī)定閾值。
本文提出了一種GWO-ELM與模糊控制相結(jié)合的無(wú)標(biāo)定視覺(jué)伺服控制系統(tǒng),以HSR-JR607機(jī)械臂為實(shí)驗(yàn)主體,采用eye-in-hand相機(jī)安裝方式,搭建視覺(jué)伺服控制實(shí)驗(yàn)平臺(tái),進(jìn)行上機(jī)實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明Fuzzy Control-GWO-ELM-IBVS無(wú)標(biāo)定視覺(jué)伺服系統(tǒng)的定位誤差能控制在2個(gè)像素以內(nèi),其運(yùn)行效率相對(duì)于GWO-ELM-IBVS提升了40%,驗(yàn)證了本文提出的無(wú)標(biāo)定視覺(jué)伺服控制系統(tǒng)的有效性。