(湖南工業(yè)大學(xué) 電氣與信息工程學(xué)院,湖南 株洲 412007)
《中國制造2025》的核心內(nèi)容是裝備生產(chǎn)和應(yīng)用的信息化與智能化,雙目視覺機(jī)器人恰是實(shí)現(xiàn)這一目標(biāo)的執(zhí)行者。在實(shí)際工況中,雙目視覺機(jī)器人的目標(biāo)識(shí)別是最重要的組成部分。在目標(biāo)識(shí)別領(lǐng)域,傳統(tǒng)的雙目視覺機(jī)器人采用遺傳算法結(jié)合模式識(shí)別的方法進(jìn)行目標(biāo)識(shí)別,因雙目視覺機(jī)器人在識(shí)別遮擋目標(biāo)的過程中,如遇遮擋目標(biāo)被遮擋的部分過多或者被完全遮擋,在分離處理中變得過小或無法分離,不能作為模式識(shí)別模板,則雙目視覺機(jī)器人的遮擋目標(biāo)識(shí)別過程會(huì)受影響,而以上影響具有非穿透、盲目性等特征[1-3]。針對這種復(fù)雜遮擋目標(biāo)識(shí)別過程,采用傳統(tǒng)的遺傳算法結(jié)合模式識(shí)別的方法很難達(dá)到識(shí)別要求。為此,提出UWB遮擋目標(biāo)識(shí)別算法,在遇到分離處理過程中遮擋目標(biāo)體積過小或無法分離,不能作為模式識(shí)別模板,用UWB遮擋目標(biāo)識(shí)別算法進(jìn)行遮擋目標(biāo)識(shí)別,通過UWB無線波通信技術(shù)[4]獲取遮擋目標(biāo)位置信息,利用UWB遮擋目標(biāo)標(biāo)定縮小誤差和確定偏差范圍,UWB遮擋目標(biāo)識(shí)別判斷結(jié)構(gòu)將偏差范圍作為識(shí)別模板判斷遮擋目標(biāo)位置誤差是否小于UWB遮擋目標(biāo)識(shí)別的最小范圍的最大值。經(jīng)實(shí)物模型運(yùn)行,運(yùn)行結(jié)果驗(yàn)證了UWB遮擋目標(biāo)識(shí)別算法的可行性及有效性。
圖1 遮擋目標(biāo)識(shí)別系統(tǒng)結(jié)構(gòu)圖
A、B、C為UWB遮擋目標(biāo)識(shí)別模塊、D為遮擋目標(biāo)標(biāo)簽?zāi)K,UWB遮擋目標(biāo)識(shí)別模塊A、UWB遮擋目標(biāo)識(shí)別模塊B、UWB遮擋目標(biāo)識(shí)別模塊C、UWB遮擋目標(biāo)標(biāo)簽?zāi)KD與識(shí)別判斷結(jié)構(gòu)構(gòu)成遮擋目標(biāo)識(shí)別系統(tǒng),實(shí)現(xiàn)雙目視覺機(jī)器人對遮擋目標(biāo)的UWB遮擋目標(biāo)識(shí)別。遮擋目標(biāo)識(shí)別系統(tǒng)如圖1所示,其中遮擋目標(biāo)識(shí)別模塊A連接以樹莓派3為核心的雙目視覺機(jī)器人,遮擋目標(biāo)識(shí)別模塊B、遮擋目標(biāo)識(shí)別模塊C接收遮擋目標(biāo)標(biāo)簽?zāi)KD發(fā)送的無線電波并以無線電波的形式傳輸給遮擋目標(biāo)識(shí)別模塊A,遮擋目標(biāo)識(shí)別模塊A通過串口通信將遮擋目標(biāo)識(shí)別模塊B、遮擋目標(biāo)識(shí)別模塊C、遮擋目標(biāo)標(biāo)簽?zāi)KD發(fā)送的無線電波數(shù)據(jù)解析發(fā)送給以樹莓派3為核心的雙目視覺機(jī)器人通過UWB遮擋目標(biāo)識(shí)別標(biāo)定原理對遮擋目標(biāo)標(biāo)簽?zāi)KD的坐標(biāo)位置進(jìn)行標(biāo)定,標(biāo)定后以樹莓派3為核心的雙目視覺機(jī)器人即可得到標(biāo)定后的遮擋目標(biāo)標(biāo)簽?zāi)KD標(biāo)定后的坐標(biāo)位置,從而將遮擋目標(biāo)從遮擋物中識(shí)別出來,實(shí)現(xiàn)對遮擋目標(biāo)的UWB遮擋目標(biāo)識(shí)別。
1.2.1 UWB遮擋目標(biāo)識(shí)別方程
遮擋目標(biāo)標(biāo)簽?zāi)KD處于分別以遮擋目標(biāo)識(shí)別模塊A,遮擋目標(biāo)識(shí)別模塊B,遮擋目標(biāo)識(shí)別模塊C為圓心,di為半徑的3個(gè)圓上,遮擋目標(biāo)標(biāo)簽?zāi)KD的位置(x0,y0),分別與遮擋目標(biāo)識(shí)別模塊A,遮擋目標(biāo)識(shí)別模塊B,遮擋目標(biāo)識(shí)別模塊C之間的位置(xi,yi)、圓的半徑di的關(guān)系:
di2=(xi-x0)2+(yi-y0)2
(1)
通過UWB無線通信技術(shù)得出遮擋目標(biāo)標(biāo)簽?zāi)KD和遮擋目標(biāo)識(shí)別模塊A,遮擋目標(biāo)識(shí)別模塊B,遮擋目標(biāo)識(shí)別模塊C之間的無線電波傳輸時(shí)間t,然后根據(jù)無線電波的傳播速度公式來分別得到得到以遮擋目標(biāo)識(shí)別模塊A,遮擋目標(biāo)識(shí)別模塊B,遮擋目標(biāo)識(shí)別模塊C為圓心,di為半徑的3個(gè)圓的半徑di,式中c為光速:
di=c*t/2
(2)
根據(jù)幾何知識(shí),在二維空間中,當(dāng)存在三個(gè)這樣的遮擋目標(biāo)識(shí)別模塊A、遮擋目標(biāo)識(shí)別模塊B、遮擋目標(biāo)識(shí)別模塊C時(shí),也就是三個(gè)以遮擋目標(biāo)識(shí)別模塊為圓心,三種遮擋目標(biāo)識(shí)別模塊與遮擋目標(biāo)標(biāo)簽?zāi)KD的距離di為圓的半徑的圓,那么可以唯一確定遮擋目標(biāo)標(biāo)簽?zāi)KD。如幾何關(guān)系圖,圖2所示。
圖2 幾何關(guān)系圖
由圖2幾何關(guān)系圖可得:
(3)
式中,遮擋目標(biāo)識(shí)別模塊A、遮擋目標(biāo)識(shí)別模塊B、遮擋目標(biāo)識(shí)別模塊C的坐標(biāo)分別為(xA,xA)、(xB,xB)、(xC,xC),他們和遮擋目標(biāo)標(biāo)簽?zāi)KD的距離分別為dA、dB、dC。解方程組,可得遮擋目標(biāo)標(biāo)簽?zāi)KD的位置(x0,y0),從而為進(jìn)一步進(jìn)行UWB遮擋目標(biāo)識(shí)別標(biāo)定得到標(biāo)定后的坐標(biāo)做準(zhǔn)備[5-7]。
(4)
1.2.2 UWB遮擋目標(biāo)識(shí)別標(biāo)定方程
由于工作環(huán)境及遮擋物的影響, 雙目視覺機(jī)器人的遮擋目標(biāo)識(shí)別方程只能粗略表示雙目視覺機(jī)器人遮擋目標(biāo)識(shí)別模塊與遮擋目標(biāo)標(biāo)簽?zāi)K實(shí)際坐標(biāo)之間的關(guān)系,不能精確描述雙目視覺機(jī)器人遮擋目標(biāo)識(shí)別模塊與遮擋目標(biāo)標(biāo)簽?zāi)K實(shí)際坐標(biāo)之間的關(guān)系。參考UWB遮擋目標(biāo)識(shí)別標(biāo)定原理,設(shè)計(jì)了根據(jù)X方向平均偏差Δx和Y方向平均誤差Δy與給定的遮擋目標(biāo)標(biāo)簽?zāi)KD實(shí)際坐標(biāo)x實(shí)和y實(shí)的UWB遮擋目標(biāo)識(shí)別標(biāo)定方程,多次測量遮擋目標(biāo)X、Y坐標(biāo)得到x1、x2……xn和y1、y2……yn,并與實(shí)際坐標(biāo)x實(shí)和y實(shí)相減:
Δxi=xi-x實(shí)
(5)
Δyi=yi-y實(shí)
(6)
測量每次位置偏差:Δx1、Δx2……Δxn和Δy1、Δy2……Δyn。
各測量的位置偏差相加除以次數(shù):
(7)
(8)
其中: X方向平均偏差Δx、Y方向平均偏差Δy。
D的位置(x0,y0)減去方向平均偏差Δx、Δy:
x標(biāo)=x0-Δx
(9)
y標(biāo)=y0-Δy
(10)
得到標(biāo)定后的遮擋目標(biāo)標(biāo)簽?zāi)K位置(x標(biāo),y標(biāo)),從而為進(jìn)一步對遮擋目標(biāo)是否存在于被遮擋物遮擋的全封閉或半封閉空間里的判斷做準(zhǔn)備[8]。
1.2.3 UWB遮擋目標(biāo)識(shí)別算法
UWB遮擋目標(biāo)識(shí)別即是把一個(gè)特殊目標(biāo)(遮擋目標(biāo))從其它目標(biāo)(遮擋物)中區(qū)分出來的過程,UWB遮擋目標(biāo)識(shí)別采用統(tǒng)計(jì)模式識(shí)別的方法,統(tǒng)計(jì)模式識(shí)別分為UWB遮擋目標(biāo)識(shí)別系統(tǒng)進(jìn)行信息獲取、UWB標(biāo)定進(jìn)行預(yù)處理,以樹莓派3為核心的雙目視覺機(jī)器人進(jìn)行特征提取與選擇、根據(jù)能夠進(jìn)行識(shí)別的最小偏差范圍設(shè)計(jì)成識(shí)別判斷結(jié)構(gòu)和判斷指定目標(biāo)是否存在于被遮擋的封閉空間內(nèi)等組成步驟。雙目視覺機(jī)器人遮擋目標(biāo)識(shí)別采用UWB遮擋目標(biāo)識(shí)別系統(tǒng)進(jìn)行遮擋目標(biāo)標(biāo)簽?zāi)KD位置信息的多次獲取,采用UWB遮擋目標(biāo)識(shí)別標(biāo)定進(jìn)行遮擋目標(biāo)標(biāo)簽?zāi)KD位置信息的預(yù)處理,并通過標(biāo)定后的遮擋目標(biāo)標(biāo)簽?zāi)KD位置信息與遮擋目標(biāo)標(biāo)簽?zāi)KD能將遮擋目標(biāo)從遮擋物中識(shí)別出來的遮擋目標(biāo)最小位置偏差范圍作比較進(jìn)行遮擋目標(biāo)標(biāo)簽?zāi)KD特征的提取與選擇、并通過UWB判斷結(jié)構(gòu)構(gòu)成分類器進(jìn)行判斷遮擋目標(biāo)標(biāo)簽?zāi)KD是否存在于被遮擋物遮擋的封閉空間內(nèi)。即可完成UWB遮擋目標(biāo)識(shí)別。具體UWB遮擋目標(biāo)識(shí)別算法如圖3所示。
圖3 UWB遮擋目標(biāo)識(shí)別算法
1.2.4 UWB遮擋目標(biāo)識(shí)別步驟
1)提取遮擋目標(biāo)位置信息:在遮擋目標(biāo)識(shí)別系統(tǒng)中,遮擋目標(biāo)標(biāo)簽?zāi)KD將自己的位置信息分別傳輸給遮擋目標(biāo)識(shí)別模塊A、遮擋目標(biāo)識(shí)別模塊B、遮擋目標(biāo)識(shí)別模塊C,遮擋目標(biāo)識(shí)別模塊B、遮擋目標(biāo)識(shí)別模塊C再將接收到的遮擋目標(biāo)標(biāo)簽?zāi)KD信息通過無線電波傳輸?shù)姆绞絺鬏斀o遮擋目標(biāo)識(shí)別模塊A進(jìn)行匯總,遮擋目標(biāo)識(shí)別模塊A再通過串口傳輸,將遮擋目標(biāo)標(biāo)簽?zāi)KD的位置信息傳輸給以樹莓派3為核心的雙目視覺機(jī)器人進(jìn)行進(jìn)一步操作,即可完成UWB遮擋目標(biāo)識(shí)別系統(tǒng)提取遮擋目標(biāo)位置信息。基于統(tǒng)計(jì)模式識(shí)別的方法,UWB遮擋目標(biāo)識(shí)別系統(tǒng)提取遮擋目標(biāo)標(biāo)簽?zāi)KD的位置信息要重復(fù)多次。
2)UWB遮擋目標(biāo)識(shí)別標(biāo)定:經(jīng)過UWB遮擋目標(biāo)識(shí)別系統(tǒng)多次提取遮擋目標(biāo)的位置信息后,以樹莓派3為核心的雙目視覺機(jī)器人進(jìn)行多次計(jì)算將測量遮擋目標(biāo)標(biāo)簽?zāi)KD得到的位置數(shù)據(jù)與遮擋目標(biāo)標(biāo)簽?zāi)KD的真實(shí)位置數(shù)據(jù)相減得到平均位置偏差,并將遮擋目標(biāo)標(biāo)簽?zāi)KD位置偏差鎖定在一個(gè)比較小的范圍,該范圍既是進(jìn)行判斷能將遮擋目標(biāo)從遮擋物中識(shí)別出來的遮擋目標(biāo)的最小偏差范圍。然后再在實(shí)際工況中對隨后得到的遮擋目標(biāo)標(biāo)簽?zāi)K位置通過將遮擋目標(biāo)標(biāo)簽位置與標(biāo)定的平均位置誤差相減進(jìn)行遮擋目標(biāo)標(biāo)簽?zāi)KD的標(biāo)定得到標(biāo)定后的遮擋目標(biāo)標(biāo)簽?zāi)K位置信息,然后將標(biāo)定后的遮擋目標(biāo)標(biāo)簽?zāi)K位置信息送入雙目視覺機(jī)器人的UWB判斷結(jié)構(gòu)進(jìn)行分析和判斷,UWB識(shí)別步驟如圖4所示。
圖4 UWB識(shí)別步驟圖
1.2.5 UWB遮擋目標(biāo)識(shí)別分析
當(dāng)雙目視覺機(jī)器人標(biāo)定后的遮擋目標(biāo)標(biāo)簽?zāi)KD位置信息大于最小位置偏差范圍中最大值時(shí),通過識(shí)別判斷結(jié)構(gòu)判斷該遮擋目標(biāo)標(biāo)簽?zāi)KD位置信息為無效信息即遮擋目標(biāo)不在被遮擋物遮擋的封閉空間內(nèi),當(dāng)雙目視覺機(jī)器人標(biāo)定后的遮擋目標(biāo)標(biāo)簽?zāi)KD位置信息小于最小位置偏差范圍中的最大值時(shí)判斷該信該遮擋目標(biāo)標(biāo)簽?zāi)KD位置信息為有效信息即遮擋目標(biāo)存在于被遮擋物遮擋的封閉空間內(nèi),當(dāng)標(biāo)定后的遮擋目標(biāo)標(biāo)簽?zāi)KD位置信息越接近最小位置偏差范圍最小值時(shí),該信息越準(zhǔn)確。UWB遮擋目標(biāo)分析圖如圖5所示。
圖5 UWB遮擋目標(biāo)分析圖
為驗(yàn)證UWB目標(biāo)識(shí)別算法能實(shí)現(xiàn)對遮擋目標(biāo)進(jìn)行識(shí)別,設(shè)計(jì)了遮擋目標(biāo)被遮擋物遮擋,能將遮擋目標(biāo)從遮擋物中識(shí)別出來的遮擋目標(biāo)最小偏差范圍為26.3%。運(yùn)用UWB遮擋目標(biāo)標(biāo)簽?zāi)K、UWB遮擋目標(biāo)識(shí)別模塊、雙目視覺機(jī)器人進(jìn)行了實(shí)物運(yùn)行實(shí)驗(yàn),實(shí)物運(yùn)行如圖6所示,
圖6 實(shí)物運(yùn)行圖
在進(jìn)行實(shí)物運(yùn)行過程中,考慮到UWB遮擋目標(biāo)識(shí)別模塊與遮擋目標(biāo)標(biāo)簽?zāi)K之間的無線傳輸在遇到遮擋物和非視距時(shí)有誤差(位置偏差)的影響[9],在UWB遮擋目標(biāo)識(shí)別標(biāo)定中通過對遮擋目標(biāo)坐標(biāo)位置標(biāo)定即可降低這些影響。給定3個(gè)遮擋目標(biāo)識(shí)別模塊輸入坐標(biāo)分別為(0,0)、(0,150)、(150,150),得出兩次測得的遮擋目標(biāo)標(biāo)簽?zāi)K坐標(biāo)(84.8,103.2)、(95.5,98.6)。從圖6 實(shí)物運(yùn)行圖得到實(shí)物之間的實(shí)際位置關(guān)系、圖7、8實(shí)物運(yùn)行返回的數(shù)據(jù)得到雙目視覺機(jī)器人通過UWB遮擋目標(biāo)識(shí)別系統(tǒng)測得的遮擋目標(biāo)位置信息。
圖7 坐標(biāo)關(guān)系圖1
圖8 坐標(biāo)關(guān)系圖2
結(jié)合UWB遮擋目標(biāo)識(shí)別標(biāo)定即可得實(shí)驗(yàn)數(shù)據(jù),如表1所示。
表1 實(shí)驗(yàn)數(shù)據(jù)表 cm
其中,每次測量得到的X軸的坐標(biāo)偏差分別為:Δx1、Δx2,每次測量得到的Y軸坐標(biāo)偏差分別為:Δy1、Δy2,通過UWB遮擋目標(biāo)識(shí)別標(biāo)定得到的X方向平均偏差Δx、通過UWB遮擋目標(biāo)識(shí)別標(biāo)定得到的Y方向平均偏差Δy,每次標(biāo)定后的遮擋目標(biāo)坐標(biāo)(x標(biāo)1,y標(biāo)1),(x標(biāo)2,y標(biāo)2)。通過UWB遮擋目標(biāo)識(shí)別標(biāo)定得到的標(biāo)定后的遮擋目標(biāo)坐標(biāo)為(70.6,97.3),(79,92.7)。從標(biāo)定后的遮擋目標(biāo)坐標(biāo)經(jīng)過計(jì)算可以看出,通過UWB目標(biāo)識(shí)別算法識(shí)別遮擋目標(biāo)位置與實(shí)際遮擋目標(biāo)位置的偏差范圍最大值小于7.1%,滿足小于26.3%遮擋目標(biāo)被遮擋物遮擋,能將遮擋目標(biāo)從遮擋物中識(shí)別出來的遮擋目標(biāo)最小偏差范圍最大值的設(shè)計(jì)要求。說明UWB目標(biāo)識(shí)別算法可實(shí)現(xiàn)雙目視覺機(jī)器人的遮擋目標(biāo)識(shí)別,滿足遮擋目標(biāo)識(shí)別的準(zhǔn)確性和穩(wěn)定性,滿足雙目視覺機(jī)器人遮擋目標(biāo)識(shí)別要求。但是,雙目視覺機(jī)器人雖然能通過UWB目標(biāo)識(shí)別系統(tǒng)將遮擋目標(biāo)從遮擋物中識(shí)別出來,由于偏差范圍仍然較大,如果要進(jìn)一步操作如抓取等,需要通過調(diào)整雙目視覺攝像機(jī)角度、接近遮擋目標(biāo)、移除遮擋物等方式,使遮擋目標(biāo)從被遮擋的封閉空間或半封閉空間變?yōu)榭赏ㄟ^雙目視覺系統(tǒng)識(shí)別的開放空間或半開放空間,然后通過雙目視覺系統(tǒng)進(jìn)行進(jìn)一步操作,實(shí)現(xiàn)雙目視覺機(jī)器人要完成的任務(wù)。
針對雙目視覺機(jī)器人識(shí)別遮擋目標(biāo)的盲目性特點(diǎn)和雙目視覺機(jī)器人UWB遮擋目標(biāo)識(shí)別系統(tǒng)的各參數(shù)的波動(dòng)性的特點(diǎn),提出了UWB遮擋目標(biāo)識(shí)別算法。并進(jìn)行實(shí)物運(yùn)行,實(shí)物運(yùn)行結(jié)果表明, 采用UWB目標(biāo)識(shí)別算法可使雙目視覺機(jī)器人有效識(shí)別遮擋目標(biāo),雙目視覺機(jī)器人的遮擋目標(biāo)識(shí)別精度滿足雙目視覺機(jī)器人識(shí)別要求, 驗(yàn)證了算法的可行性和有效性。在未來,可以通過進(jìn)一步將UWB遮擋目標(biāo)識(shí)別系統(tǒng)做出3D結(jié)構(gòu)進(jìn)行3D的UWB遮擋目標(biāo)識(shí)別可以更加貼近實(shí)際運(yùn)用。該研究結(jié)果可以運(yùn)用于倉庫整理機(jī)器人、物流機(jī)器人、家庭整理機(jī)器人、迎賓機(jī)器人、電廠檢修機(jī)器人[10-15]方面,倉庫整理機(jī)器人、圖書整理機(jī)器人、家庭整理機(jī)器人都屬于雙目視覺機(jī)器人,在實(shí)際整理過程中,往往會(huì)碰到目標(biāo)因物品的遮擋或物品包圍構(gòu)成的封閉空間或半封閉空間而無法進(jìn)行目標(biāo)識(shí)別,從而無法進(jìn)行緊接著的接近目標(biāo)、抓取目標(biāo)、前往指定位置、將目標(biāo)放到指定位置的步驟,而通過UWB遮擋目標(biāo)識(shí)別算法則能將遮擋目標(biāo)從物品中或物品構(gòu)成的封閉空間或半封閉空間中識(shí)別出來,并進(jìn)一步通過接近目標(biāo)或移去遮擋物等方法使雙目視覺系統(tǒng)能夠繼續(xù)工作,如完成后面的抓取目標(biāo)[16],前往指定位置、將目標(biāo)放到指定位置等步驟,從而完成整理功能。
UWB遮擋目標(biāo)識(shí)別研究對雙目視覺算法結(jié)合其他算法組成復(fù)雜的目標(biāo)識(shí)別算法網(wǎng)絡(luò)是一次有益的嘗試[17],為雙目視覺機(jī)器人解決復(fù)雜的目標(biāo)識(shí)別問題提供了方向。