本發(fā)明屬于電力技術(shù)領(lǐng)域,具體涉及一種復(fù)雜背景下基于隨機(jī)hough變換和svm的帶電作業(yè)機(jī)器人螺栓識(shí)別方法。
背景技術(shù):
目前,我國(guó)高壓帶電作業(yè)主要采用絕緣手套作業(yè)法,要求操作人員攀爬高壓鐵塔或借助絕緣斗臂車進(jìn)行不停電作業(yè),即要求人工帶電作業(yè)。但人工帶電作業(yè)意味著操作人員要處在高空、高壓、強(qiáng)電磁場(chǎng)的危險(xiǎn)環(huán)境中,勞動(dòng)強(qiáng)度大,且人體姿態(tài)不易控制,即使嚴(yán)格遵守安全操作規(guī)范并增加絕緣防護(hù)措施,也無法完全緩解作業(yè)人員的精神壓力和體力損耗,稍有不慎就容易發(fā)生人身傷亡事故,給家庭和社會(huì)帶來嚴(yán)重的損失。
雖然國(guó)內(nèi)已研發(fā)有帶電作業(yè)機(jī)器人,但仍然需要操作人員在絕緣斗內(nèi)隨機(jī)器人升至線路附近,并沒有從根本上解決操作人員的安全問題。并且,該作業(yè)機(jī)器人完全由操作人員控制,并不能自主完成帶電作業(yè),較傳統(tǒng)的絕緣手套作業(yè)法反而降低了工作效率。
基于圖像處理技術(shù)與機(jī)器視覺技術(shù)的視覺測(cè)量系統(tǒng)是帶電作業(yè)機(jī)器人自主作業(yè)的關(guān)鍵。而實(shí)現(xiàn)帶電作業(yè)機(jī)器人的自主作業(yè)可以將人從高危作業(yè)環(huán)境中解放出來,符合現(xiàn)代社會(huì)發(fā)展的需要。
帶電作業(yè)機(jī)器人工作在室外非結(jié)構(gòu)化環(huán)境下,作業(yè)環(huán)境可能存在霧霾、強(qiáng)光等情況,使得相機(jī)采集到的目標(biāo)圖像邊緣信息不突出,從而給識(shí)別造成困難。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提出一種基于隨機(jī)hough變換和svm的帶電作業(yè)機(jī)器人螺栓識(shí)別方法,能夠在復(fù)雜背景下快速、準(zhǔn)確地識(shí)別出螺栓。
為了解決上述技術(shù)問題,本發(fā)明提供一種復(fù)雜背景下基于隨機(jī)hough變換和svm的帶電作業(yè)機(jī)器人螺栓識(shí)別方法,步驟如下:
步驟1,使用雙目攝像頭采集包括螺栓在內(nèi)的作業(yè)場(chǎng)景雙目圖像;
步驟2,根據(jù)圖像判斷是否有霧霾存在,若存在霧霾,則采用帶顏色恢復(fù)的多尺度retinex方法對(duì)圖像進(jìn)行增強(qiáng)和恢復(fù),然后執(zhí)行步驟3;若不存在霧霾,則進(jìn)一步判斷圖像中是否有高光現(xiàn)象,若存在高光現(xiàn)象,則采用同態(tài)濾波方法對(duì)圖像進(jìn)行增強(qiáng),然后執(zhí)行步驟3,若不存在高光現(xiàn)象否,則直接執(zhí)行步驟3;
步驟3,采用canny算法提取圖像邊緣;
步驟4,采用基于隨機(jī)hough變換的方法對(duì)圖像邊緣信息進(jìn)行橢圓擬合;判斷擬合出的橢圓數(shù)目是否等于1,若等于1,則橢圓所在區(qū)域即為螺栓,完成螺栓識(shí)別;若不等于1,則進(jìn)行步驟5;
步驟5,對(duì)識(shí)別出的多個(gè)橢圓所在區(qū)域進(jìn)行方向梯度直方圖特征提??;采用基于支持向量機(jī)的目標(biāo)識(shí)別方法對(duì)多個(gè)橢圓擬合結(jié)果進(jìn)行分類識(shí)別,正確識(shí)別出螺栓。
進(jìn)一步,步驟2中所述采用帶顏色恢復(fù)的多尺度retinex方法對(duì)圖像進(jìn)行增強(qiáng)和恢復(fù)的步驟為:
步驟2-1,對(duì)雙目圖像i(x,y)的第i個(gè)顏色通道ii(x,y)取對(duì)數(shù),分離出反射分量和入射分量;
lnii(x,y)=ln[ri(x,y)·li(x,y)]=lnri(x,y)+lnli(x,y),i=1,···,n
其中,ii(x,y)=ri(x,y)·li(x,y),ri(x,y)和li(x,y)分別為圖像i(x,y)的第i個(gè)顏色通道的反射分量和入射分量,n是圖像i(x,y)的彩色通道個(gè)數(shù),n=1表示圖像是灰度圖像,n=3表示圖像是彩色圖像,(x,y)為圖像像素點(diǎn)空間域坐標(biāo);
步驟2-2,采用高斯環(huán)繞函數(shù)fk(x,y)作為低通濾波器對(duì)圖像i(x,y)的第i個(gè)顏色通道ii(x,y)進(jìn)行卷積處理得到在尺度k=1,2,3下的低頻圖像dik(x,y);計(jì)算公式如下,
dik(x,y)=ii(x,y)*fk(x,y)i=1,···,nk=1,2,3
其中,尺度k=1,2,3下的高斯環(huán)繞函數(shù)
步驟2-3,計(jì)算圖像i(x,y)的第i個(gè)顏色通道ii(x,y)在尺度k=1,2,3下的中高頻增強(qiáng)圖像gik(x,y);計(jì)算公式如下,
gik(x,y)=lnii(x,y)-lndik(x,y)i=1,···,nk=1,2,3
步驟2-4,計(jì)算圖像i(x,y)的第i個(gè)顏色通道ii(x,y)的未帶顏色恢復(fù)的增強(qiáng)圖像ri'(x,y);計(jì)算公式如下,
其中,wk是k尺度下高斯環(huán)繞函數(shù)fk(x,y)的相關(guān)權(quán)重;
步驟2-5,計(jì)算圖像i(x,y)的第i個(gè)顏色通道ii(x,y)的恢復(fù)系數(shù)ci(x,y);計(jì)算公式如下,
其中,α為非線性強(qiáng)度控制因子;
步驟2-6,計(jì)算圖像i(x,y)的第i個(gè)顏色通道ii(x,y)帶顏色恢復(fù)的增強(qiáng)圖像的第i個(gè)顏色通道
進(jìn)一步,步驟2中所述采用同態(tài)濾波方法對(duì)圖像進(jìn)行增強(qiáng)的過程為:
步驟3-1,對(duì)雙目圖像i(x,y)用對(duì)數(shù)處理,獲得其反射分量和入射分量分離,計(jì)算公式如下,
z(x,y)=lni(x,y)=lnr(x,y)+lnl(x,y)
其中,z(x,y)是i(x,y)的對(duì)數(shù)變換結(jié)果,r(x,y)和l(x,y)分別為圖像i(x,y)的反射分量和入射分量,i(x,y)=r(x,y)·l(x,y);
步驟3-2,對(duì)步驟3-1得到的對(duì)數(shù)變換結(jié)果z(x,y)取傅里葉變換;計(jì)算公式如下,
z(u,v)=r(u,v)+l(u,v)
其中,z(u,v)、r(u,v)、l(u,v)分別表示z(x,y)、lnr(x,y)、lnl(x,y)的傅里葉變換結(jié)果;
步驟3-3,使用一個(gè)阻帶寬可調(diào)的巴特沃斯型帶阻濾波器作為同態(tài)濾波器h(u,v)對(duì)步驟3-2得到的傅里葉變換結(jié)果z(u,v)進(jìn)行濾波處理,表達(dá)式如下:
s(u,v)=h(u,v)z(u,v)=h(u,v)r(u,v)+h(u,v)l(u,v)
其中,s(u,v)為經(jīng)過同態(tài)濾波器h(u,v)濾波處理后得到的圖像i(x,y)的頻譜函數(shù),同態(tài)濾波器
步驟3-4,對(duì)頻譜函數(shù)s(u,v)取傅里葉逆變換;計(jì)算公式如下,
s(x,y)=r′(x,y)+l′(x,y)
其中,s(x,y)、r′(x,y)和l′(x,y)分別是s(u,v)、h(u,v)r(u,v)和h(u,v)l(u,v)的傅里葉逆變換結(jié)果;
步驟3-5,對(duì)步驟3-4傅里葉逆變換結(jié)果取指數(shù)運(yùn)算獲得經(jīng)過同態(tài)濾波增強(qiáng)后的圖像g(x,y);計(jì)算公式如下,
g(x,y)=es(x,y)=er′(x,y)el′(x,y)=r0(x,y)l0(x,y)
其中,r0(x,y)和l0(x,y)分別為r′(x,y)和l′(x,y)取指數(shù)運(yùn)算后的結(jié)果。
進(jìn)一步,步驟3中所述canny算法所使用上限閾值和下限閾值的確定方法為:計(jì)算圖像i(x,y)的梯度直方圖;對(duì)圖像梯度直方圖累加,當(dāng)累加數(shù)目達(dá)到總像素?cái)?shù)目的一定比例hr時(shí),對(duì)應(yīng)的圖像梯度值作為上限閾值;下限閾值通過上限閾值乘以比例因子lr得到,其中,0<hr<1,0<lr<1。
進(jìn)一步,步驟4中采用基于隨機(jī)hough變換的方法對(duì)圖像邊緣信息進(jìn)行橢圓擬合的過程為:
步驟4-1,在圖像i(x,y)中隨機(jī)選擇三個(gè)邊緣點(diǎn),設(shè)為x1、x2和x3;
步驟4-2,對(duì)邊緣點(diǎn)x1、x2和x3相鄰像素的一個(gè)小窗口使用最小二乘法擬合出一條直線來得到三個(gè)邊緣點(diǎn)的切線;
步驟4-3,確定橢圓的中心坐標(biāo)(x0,y0);具體為,記邊緣點(diǎn)x1與x2兩點(diǎn)切線的交點(diǎn)為t12,x2與x3兩點(diǎn)切線的交點(diǎn)為t23,兩條線段x1x2以及x2x3的中點(diǎn)分別為m12和m23,則橢圓的中心坐標(biāo)(x0,y0)為t12m12和t23m23的交點(diǎn);
步驟4-4,將邊緣點(diǎn)x1、x2和x3的坐標(biāo)以及橢圓中心坐標(biāo)(x0,y0)代入到橢圓方程a(x-x0)2+2b(x-x0)(y-y0)+c(y-y0)2=1中求解獲得橢圓參數(shù)a、b和c的值,從而獲得橢圓;
步驟4-5,計(jì)算步驟5-4所獲得橢圓與預(yù)先保存在累加器數(shù)組中的橢圓之間的相似度,當(dāng)相似度超出的閾值時(shí),則用這該兩個(gè)橢圓的平均來替換累加器數(shù)組中的橢圓,同時(shí)將累加器的計(jì)數(shù)值score加1;
步驟4-6,重復(fù)執(zhí)行步驟4-1到4-5一定次數(shù),當(dāng)某個(gè)候選橢圓的計(jì)數(shù)值score超過了閾值,則認(rèn)為該橢圓即為一個(gè)被檢測(cè)出的橢圓,將該橢圓參數(shù)保存在另一個(gè)數(shù)組中,同時(shí)將其從圖像和累加器數(shù)組中刪除;
步驟4-7,當(dāng)隨機(jī)hough變換的循環(huán)數(shù)目達(dá)到預(yù)先設(shè)定的最大值或者所有橢圓均被檢測(cè)出后,停止hough變換算法。
進(jìn)一步,步驟5中,提取橢圓所在區(qū)域的方向梯度直方圖特征的過程為:
步驟5-1,以橢圓的中心點(diǎn)為中心,以橢圓長(zhǎng)軸為邊長(zhǎng)的正方形區(qū)域圖像作為待分類目標(biāo)圖像,對(duì)其進(jìn)行灰度化處理,記為圖像i′(x,y);
步驟5-2,采用gamma校正法對(duì)圖像i′(x,y)進(jìn)行規(guī)范化處理;計(jì)算公式如下,
i″(x,y)=i′(x,y)r
其中,r為gamma值,i″(x,y)為gamma校正后的圖像;
步驟5-3,計(jì)算圖像i″(x,y)中每個(gè)像素的水平和垂直方向的梯度及邊緣強(qiáng)度,并據(jù)此計(jì)算每個(gè)像素的梯度方向值g(x,y);計(jì)算公式如下,
gx(x,y)=i″(x+1,y)-i″(x-1,y)
gy(x,y)=i″(x,y+1)-i″(x,y-1)
gx(x,y)和gy(x,y)分別表示每個(gè)像素在x和y方向上的梯度值;
步驟5-4,將圖像i″(x,y)劃分成若干個(gè)細(xì)胞單元cells,計(jì)算每個(gè)細(xì)胞單元cell的方向梯度直方圖,并對(duì)直方圖進(jìn)行歸一化處理,構(gòu)成每個(gè)細(xì)胞單元cell的特征描述子;
步驟5-5,將若干個(gè)細(xì)胞單元cell組合成一個(gè)塊block,將一個(gè)塊block內(nèi)所有細(xì)胞單元cell的歸一化方向梯度直方圖特征描述子串聯(lián)起來構(gòu)成該塊block的方向梯度直方圖特征描述子;
步驟5-6,將圖像i″(x,y)內(nèi)所有塊block的方向梯度直方圖特征描述子串聯(lián)起來得到該圖像的方向梯度直方圖特征描述子,作為橢圓區(qū)域的特征向量。
作為一個(gè)實(shí)施例,使用上述方法的帶電作業(yè)機(jī)器人包括絕緣斗臂車,搭載在絕緣斗臂車上的機(jī)器人平臺(tái),安裝在機(jī)器人平臺(tái)上的機(jī)械臂,括數(shù)據(jù)采集系統(tǒng)以及數(shù)據(jù)處理和控制系統(tǒng);所述數(shù)據(jù)采集系統(tǒng)包括設(shè)置在機(jī)器人平臺(tái)上的攝像機(jī),攝像機(jī)用于采集機(jī)械臂作業(yè)場(chǎng)景圖像,并將所述作業(yè)場(chǎng)景圖像發(fā)送給數(shù)據(jù)處理和控制系統(tǒng);所述數(shù)據(jù)處理和控制系統(tǒng)根據(jù)所述作業(yè)場(chǎng)景圖像生成3d虛擬作業(yè)場(chǎng)景或者規(guī)劃出機(jī)械臂空間路徑。
進(jìn)一步,所述數(shù)據(jù)處理和控制系統(tǒng)包括第一工控機(jī)、第二工控機(jī),第二工控機(jī)內(nèi)置圖像處理器和帶電作業(yè)動(dòng)作序列庫;所述帶電作業(yè)動(dòng)作序列庫中預(yù)先存儲(chǔ)有各項(xiàng)帶電作業(yè)對(duì)應(yīng)的動(dòng)作序列數(shù)據(jù);所述攝像機(jī)采集的作業(yè)場(chǎng)景圖像發(fā)送給第二工控機(jī),圖像處理器對(duì)作業(yè)場(chǎng)景圖像進(jìn)行處理后獲的機(jī)械臂與作業(yè)對(duì)象之間的相對(duì)位置關(guān)系,第二工控機(jī)所述相對(duì)位置關(guān)系以及具體帶電作業(yè)所對(duì)應(yīng)的動(dòng)作序列規(guī)劃?rùn)C(jī)械臂的空間路徑,并將所述機(jī)械臂的空間路徑數(shù)據(jù)發(fā)送給第一工控機(jī);第一工控機(jī)根據(jù)所述機(jī)械臂的空間路徑控制機(jī)械臂動(dòng)作。
進(jìn)一步,所述絕緣斗臂車上設(shè)置有控制室,所述數(shù)據(jù)處理和控制系統(tǒng)包括第一工控機(jī)、第二工控機(jī)、顯示屏和主操作手,第二工控機(jī)內(nèi)置圖像處理器,顯示屏和主操作手位于控制室內(nèi);主操作手與機(jī)械臂為主從操作關(guān)系,通過改變主操作手的姿態(tài)控制機(jī)械臂運(yùn)動(dòng);所述攝像機(jī)采集的作業(yè)場(chǎng)景圖像發(fā)送給第二工控機(jī),圖像處理器對(duì)作業(yè)場(chǎng)景圖像進(jìn)行處理后獲的3d虛擬作業(yè)場(chǎng)景,并送顯示器顯示。
本發(fā)明與現(xiàn)有技術(shù)相比,其顯著優(yōu)點(diǎn)在于,(1)本發(fā)明在作業(yè)環(huán)境有霧霾或者強(qiáng)光照時(shí),通過分別采用帶顏色恢復(fù)的多尺度retinex算法和同態(tài)濾波方法,可以使相機(jī)采集到的圖像中的作業(yè)目標(biāo)信息更加突出,便于識(shí)別;(2)本發(fā)明采用基于隨機(jī)hough變換和svm目標(biāo)識(shí)別方法,在實(shí)現(xiàn)快速識(shí)別的同時(shí),可以排除螺孔的影響,提高對(duì)目標(biāo)螺栓的識(shí)別準(zhǔn)確度。
附圖說明
圖1為本發(fā)明帶電作業(yè)機(jī)器人的整體結(jié)構(gòu)示意圖;
圖2為本發(fā)明中絕緣斗臂車的系統(tǒng)組成框圖;
圖3為本發(fā)明中機(jī)器人平臺(tái)的結(jié)構(gòu)示意圖;
圖4為本發(fā)明中機(jī)械臂的結(jié)構(gòu)示意圖。
圖5為本發(fā)明在復(fù)雜背景下基于隨機(jī)hough變換和svm的帶電作業(yè)機(jī)器人螺栓識(shí)別方法流程圖。
圖6為發(fā)明中使用隨機(jī)hough變換進(jìn)行橢圓擬合的示意圖。
具體實(shí)施方式
容易理解,依據(jù)本發(fā)明的技術(shù)方案,在不變更本發(fā)明的實(shí)質(zhì)精神的情況下,本領(lǐng)域的一般技術(shù)人員可以想象出本發(fā)明復(fù)雜背景下基于隨機(jī)hough變換和svm的帶電作業(yè)機(jī)器人螺栓識(shí)別方法的多種實(shí)施方式。因此,以下具體實(shí)施方式和附圖僅是對(duì)本發(fā)明的技術(shù)方案的示例性說明,而不應(yīng)當(dāng)視為本發(fā)明的全部或者視為對(duì)本發(fā)明技術(shù)方案的限制或限定。
結(jié)合附圖,帶電作業(yè)機(jī)器人包括絕緣斗臂車1、控制室2、伸縮臂3、機(jī)器人平臺(tái)4。其中,絕緣斗臂車1上架設(shè)控制室2和伸縮臂3,伸縮臂3末端連接機(jī)器人平臺(tái)4,機(jī)器人平臺(tái)4與控制室2之間采用光纖以太網(wǎng)通信或者無線網(wǎng)絡(luò)通信。
絕緣斗臂車1可供操作人員駕駛,從而將機(jī)器人平臺(tái)4運(yùn)輸?shù)阶鳂I(yè)現(xiàn)場(chǎng)。絕緣斗臂車1上裝有支撐腿,支撐腿可以展開,從而將絕緣斗臂車1與地面穩(wěn)固支撐。絕緣斗臂車1上裝有發(fā)電機(jī),從而給控制室2及伸縮臂3供電。
伸縮臂3設(shè)有沿伸縮方向的驅(qū)動(dòng)裝置,操作人員可以通過控制驅(qū)動(dòng)裝置,從而將機(jī)器人平臺(tái)4升降到作業(yè)高度。該伸縮臂3由絕緣材料制成,用于實(shí)現(xiàn)機(jī)器人平臺(tái)4與控制室2的絕緣。在本發(fā)明中,伸縮臂3可有由剪叉式升降機(jī)構(gòu)或其他機(jī)構(gòu)代替。
作為一種實(shí)施方式,控制室2中設(shè)置有第二工控機(jī)、顯示屏、第一主操作手、第二主操作手、輔助主操作手以及通信模塊等。
作為一種實(shí)施方式,機(jī)器人平臺(tái)4包括絕緣子46、第一機(jī)械臂43、第二機(jī)械臂44、輔助機(jī)械臂42、第一工控機(jī)48、雙目攝像頭45、全景攝像頭41、深度攝像頭410、蓄電池49、專用工具箱47、通信模塊。
機(jī)器人平臺(tái)4的絕緣子46用于支撐第一機(jī)械臂43、第二機(jī)械臂44、輔助機(jī)械臂42,將這三個(gè)機(jī)械臂的外殼與機(jī)器人平臺(tái)4絕緣。
蓄電池49為第一工控機(jī)48、第一機(jī)械臂43、第二機(jī)械臂44、輔助機(jī)械臂42、全景攝像頭41、雙目攝像頭45、深度攝像頭410、通信模塊供電。
作為一種實(shí)施方式,雙目攝像頭45一共有三個(gè),分別安裝在第一機(jī)械臂43、第二機(jī)械臂44和輔助機(jī)械臂42的腕關(guān)節(jié)437上,負(fù)責(zé)采集作業(yè)場(chǎng)景的圖像數(shù)據(jù),并將圖像數(shù)據(jù)發(fā)送給第二工控機(jī)。雙目攝像頭45由兩個(gè)光軸平行的工業(yè)相機(jī)組成,平行光軸之間的距離固定。
深度攝像頭410安裝在機(jī)器人平臺(tái)4正對(duì)作業(yè)場(chǎng)景的側(cè)面,負(fù)責(zé)采集作業(yè)場(chǎng)景的景深數(shù)據(jù),將景深數(shù)據(jù)發(fā)送給第二工控機(jī)。
全景攝像頭41通過支架安裝在機(jī)器人平臺(tái)4的上方,負(fù)責(zé)采集作業(yè)場(chǎng)景的全景圖像數(shù)據(jù),將圖像數(shù)據(jù)發(fā)送給第二工控機(jī),并顯示在顯示器上,作業(yè)人員可以通過全景圖像監(jiān)控作業(yè)場(chǎng)景。
專用工具箱47是放置抓具、扳手等作業(yè)工具的場(chǎng)所。機(jī)械臂末端安裝有工具快換裝置。機(jī)械臂根據(jù)作業(yè)任務(wù)的類型到專用工具箱47中使用工具快換裝置獲取作業(yè)工具。
控制室2中第一主操作手、第二主操作手以及輔助主操作手是一種用于人工遠(yuǎn)程操作機(jī)械臂的操作裝置,他們與第一機(jī)械臂43、第二機(jī)械臂44和輔助機(jī)械臂42構(gòu)成主從操作關(guān)系。機(jī)械臂和主操作手具有相同的結(jié)構(gòu),只是主操作手尺寸規(guī)格比機(jī)械臂小,以便于操作人員操作。機(jī)械臂和主操作手擁有六個(gè)關(guān)節(jié),每個(gè)關(guān)節(jié)都有光電編碼器采集角度數(shù)據(jù),各主操作手的微型控制器通過串口將六個(gè)關(guān)節(jié)的角度數(shù)據(jù)發(fā)送給第二工控機(jī)。
作為本發(fā)明一個(gè)實(shí)施例,所述機(jī)械臂為六自由度機(jī)構(gòu),包括基座431,旋轉(zhuǎn)軸方向與基座平面垂直的腰關(guān)節(jié)432,與腰關(guān)節(jié)432連接的肩關(guān)節(jié)433,與肩關(guān)節(jié)433連接的大臂434,與大臂434連接的肘關(guān)節(jié)435,與肘關(guān)節(jié)435連接的小臂436,與小臂436連接的腕關(guān)節(jié)437,腕關(guān)節(jié)437由三個(gè)旋轉(zhuǎn)關(guān)節(jié)組成,分別為腕俯仰關(guān)節(jié)、腕搖擺關(guān)節(jié)和腕旋轉(zhuǎn)關(guān)節(jié);所述六自由度機(jī)構(gòu)中各個(gè)關(guān)節(jié)均具有相應(yīng)的正交旋轉(zhuǎn)編碼器31和伺服驅(qū)動(dòng)電機(jī),正交旋轉(zhuǎn)編碼器31用于采集各個(gè)關(guān)節(jié)的角度數(shù)據(jù),伺服驅(qū)動(dòng)電機(jī)用于控制各關(guān)節(jié)的運(yùn)動(dòng);第一工控機(jī)根據(jù)所述機(jī)械臂的空間路徑解算出各關(guān)節(jié)的運(yùn)動(dòng)角度,控制伺服驅(qū)動(dòng)電機(jī)按照所述運(yùn)動(dòng)角度控制機(jī)械臂各關(guān)節(jié)運(yùn)動(dòng)。
作為一種實(shí)施方式,機(jī)器人平臺(tái)4與控制室2之間的數(shù)據(jù)傳輸通過光纖有線傳輸,或者使用無線網(wǎng)絡(luò)傳輸。機(jī)器人平臺(tái)4上的通信模塊是光纖收發(fā)器,光纖收發(fā)器用于實(shí)現(xiàn)光纖中的光信號(hào)與雙絞線中的電信號(hào)的相互轉(zhuǎn)換,從而在通信上實(shí)現(xiàn)機(jī)器人平臺(tái)4與控制室2的電氣隔離??刂剖?中的通信模塊是光纖收發(fā)器,光纖收發(fā)器用于實(shí)現(xiàn)光纖中的光信號(hào)與雙絞線中的電信號(hào)的相互轉(zhuǎn)換,從而在通信上實(shí)現(xiàn)機(jī)器人平臺(tái)4與控制室2的電氣隔離。
作為一種實(shí)施方式,第二工控機(jī)可以完成以下任務(wù):
建立動(dòng)作序列庫。預(yù)先將各項(xiàng)帶電作業(yè)任務(wù)分解為作用序列,組成動(dòng)作序列庫,存儲(chǔ)在第二工控機(jī)中,用于機(jī)械臂路徑規(guī)劃。
建立作業(yè)對(duì)象模型庫。預(yù)先制作各項(xiàng)帶電作業(yè)任務(wù)所涉及的作業(yè)對(duì)象的三維模型和目標(biāo)識(shí)別模型,例如,根據(jù)電力塔桿、電線、耐張絕緣子、隔離刀閘、避雷器等器件實(shí)物,制作三維模型和目標(biāo)識(shí)別模型,用于帶電作業(yè)機(jī)器人自動(dòng)識(shí)別作業(yè)對(duì)象,構(gòu)建作業(yè)場(chǎng)景三維虛擬場(chǎng)景。
建立機(jī)械臂和專用工具模型庫。預(yù)先制作機(jī)械臂和專用工具的三維模型和目標(biāo)識(shí)別模型,例如,扳手等,用于帶電作業(yè)機(jī)器人自動(dòng)構(gòu)建作業(yè)場(chǎng)景三維虛擬場(chǎng)景,規(guī)劃?rùn)C(jī)械臂空間路徑。
獲取圖像數(shù)據(jù)。獲取全景圖像、深度圖像和雙目圖像的數(shù)據(jù)信息。
根據(jù)圖像數(shù)據(jù)識(shí)別和跟蹤作業(yè)目標(biāo)。
獲取主操作手的角度、角速度和角加速度數(shù)據(jù),獲取機(jī)械臂的角度、角速度和角加速度數(shù)據(jù)。
對(duì)相關(guān)圖像數(shù)據(jù)進(jìn)行處理和計(jì)算,獲取機(jī)械臂位置,獲取作業(yè)對(duì)象的位置,獲取機(jī)械臂與作業(yè)對(duì)象之間的相對(duì)位置,并根據(jù)相對(duì)位置和作業(yè)任務(wù)規(guī)劃?rùn)C(jī)械臂的空間路徑。
根據(jù)圖像數(shù)據(jù)構(gòu)建作業(yè)對(duì)象三維場(chǎng)景,根據(jù)機(jī)械臂角度信息和作業(yè)對(duì)象三維場(chǎng)景獲得機(jī)械臂與作業(yè)對(duì)象的相對(duì)位置,并根據(jù)相對(duì)位置和作業(yè)任務(wù)規(guī)劃?rùn)C(jī)械臂的空間路徑。
對(duì)相關(guān)圖像數(shù)據(jù)進(jìn)行處理和計(jì)算,構(gòu)建3d虛擬作業(yè)場(chǎng)景,送顯示器顯示,操作人員根據(jù)3d虛擬作業(yè)場(chǎng)景監(jiān)控作業(yè)過程。與全景圖像相比,3d虛擬作業(yè)場(chǎng)景綜合和深度圖像信息和雙目圖像信息,對(duì)機(jī)器臂與作業(yè)對(duì)象之間、機(jī)械臂之間、作業(yè)對(duì)象與作業(yè)環(huán)境之間的相對(duì)位置的判斷更精確,且不會(huì)存在視覺死角。因此,操作人員通過3d虛擬作業(yè)場(chǎng)景進(jìn)行作業(yè)監(jiān)控,操作精度更高,可以防止碰撞發(fā)生,提高了安全性。同時(shí),3d虛擬作業(yè)場(chǎng)景顯示在控制室2中的顯示器上,遠(yuǎn)離機(jī)械臂作業(yè)現(xiàn)場(chǎng),提高了人作業(yè)人員的人身安全。
作為一種實(shí)施方式,第一工控機(jī)可以完成以下任務(wù):
根據(jù)第二工控機(jī)發(fā)送的主操作手各關(guān)節(jié)的角度信息,控制機(jī)械臂各關(guān)節(jié)的運(yùn)動(dòng)。
獲取第二工控機(jī)發(fā)送的機(jī)械臂的空間路徑數(shù)據(jù),根據(jù)作業(yè)任務(wù)的動(dòng)作序列,解算出機(jī)械臂各關(guān)節(jié)的角度數(shù)據(jù)運(yùn)動(dòng)量,并控制機(jī)械臂各關(guān)節(jié)運(yùn)動(dòng)。
本發(fā)明中,第一機(jī)械臂和第二機(jī)械臂相互配合,可以模仿人的兩個(gè)手的作業(yè)順序完成帶電作業(yè)。考慮到靈活性,可以再增加一個(gè)強(qiáng)壯的輔助機(jī)械臂,此時(shí),輔助機(jī)械臂專司器件夾持等力道大的動(dòng)作,第一機(jī)械臂和第二機(jī)械臂則進(jìn)行相關(guān)業(yè)務(wù)操作。
根據(jù)第二工控機(jī)和第一工控機(jī)完成的不同任務(wù)的組合,本發(fā)明帶電作業(yè)機(jī)器人既可以由作業(yè)人員進(jìn)行遠(yuǎn)程搖操作以完成帶電作業(yè),又可以進(jìn)行自主帶電作業(yè)。在進(jìn)行帶電作業(yè)之前,作業(yè)人員先通過觀察全景圖像,將機(jī)器人平臺(tái)4移動(dòng)至作業(yè)對(duì)象附近。
如果選擇人工遠(yuǎn)程搖操作,則由第二工控機(jī)根據(jù)數(shù)目圖像和深度圖像構(gòu)建3d虛擬作業(yè)場(chǎng)景并送顯示器顯示,作業(yè)人員通過3d虛擬作業(yè)場(chǎng)景監(jiān)控操作過程,通過主操作手控制機(jī)械臂的動(dòng)作,以完成帶電作業(yè)。在此過程中,作業(yè)人員改變主操作手姿態(tài)后,主操作手中各關(guān)節(jié)的光電編碼器采集各關(guān)節(jié)角度,各主操作手的微型控制器通過串口將各關(guān)節(jié)的角度數(shù)據(jù)發(fā)送給第二工控機(jī)。第二工控機(jī)將主操作手各關(guān)節(jié)的角度數(shù)據(jù)作為機(jī)械臂各關(guān)節(jié)角度的期望值發(fā)送給第一工控機(jī),第一工控機(jī)根據(jù)角度期望值通過伺服電機(jī)控制機(jī)械臂各關(guān)節(jié)的運(yùn)動(dòng),已完成帶電作業(yè)。
如果選擇自主作業(yè),則由第二工控機(jī)根據(jù)數(shù)目圖像和深度圖像計(jì)算獲取作業(yè)對(duì)象和機(jī)械臂之間的相對(duì)位置關(guān)系,然后依據(jù)作業(yè)任務(wù)所對(duì)應(yīng)的動(dòng)作序列進(jìn)行機(jī)械臂空間路徑規(guī)劃,并將空間路徑發(fā)送給第一工控機(jī),第一工控機(jī)解算出機(jī)械臂各關(guān)節(jié)需要轉(zhuǎn)動(dòng)的角度數(shù)據(jù)作為機(jī)械臂各關(guān)節(jié)角度的期望值,通過伺服電機(jī)控制機(jī)械臂各關(guān)節(jié)的運(yùn)動(dòng),已完成帶電作業(yè)。
結(jié)合附圖,帶電作業(yè)機(jī)器人在進(jìn)行各種作業(yè)任務(wù)操作過程中,首先要做的就是對(duì)螺栓的識(shí)別與操作。而實(shí)際中,螺栓的幾何形狀為正六邊形,考慮到在雙目攝像頭采集螺栓圖像時(shí)拍攝角度的因素,拍攝到的圖像中螺栓的幾何形狀并非為正六邊形,所以本發(fā)明采用橢圓模型來進(jìn)行螺栓的識(shí)別。本發(fā)明基于隨機(jī)hough變換和svm的帶電作業(yè)機(jī)器人螺栓識(shí)別方法,包括以下步驟:
步驟1,采集包括螺栓在內(nèi)的第一幀雙目圖像i(x,y);
步驟2,判斷是否有霧霾情況,若是,采用帶顏色恢復(fù)的多尺度retinex算法(msrcr)對(duì)圖像進(jìn)行增強(qiáng)和恢復(fù),獲得去除霧霾影響的圖像,然后執(zhí)行步驟4,若否,則執(zhí)行步驟3;
所述msrcr算法的步驟為:
步驟2-1,對(duì)圖像i(x,y)的第i個(gè)顏色通道ii(x,y)取對(duì)數(shù),分離出反射分量和入射分量;
lnii(x,y)=ln[ri(x,y)·li(x,y)]=lnri(x,y)+lnli(x,y),i=1,···,n
其中,ii(x,y)=ri(x,y)·li(x,y),ri(x,y)和li(x,y)分別為圖像i(x,y)的第i個(gè)顏色通道的反射分量和入射分量,n是圖像i(x,y)的彩色通道個(gè)數(shù),n=1表示圖像是灰度圖像,n=3表示圖像是彩色圖像,(x,y)為圖像像素點(diǎn)空間域坐標(biāo)。
步驟2-2,分別計(jì)算在尺度k=1,2,3下,高斯環(huán)繞函數(shù)fk(x,y)的值;尺度k下高斯環(huán)繞函數(shù)
步驟2-3,采用高斯環(huán)繞函數(shù)fk(x,y)作為低通濾波器對(duì)圖像i(x,y)的第i個(gè)顏色通道ii(x,y)進(jìn)行卷積處理得到在尺度k=1,2,3下的低頻圖像dik(x,y);
dik(x,y)=ii(x,y)*fk(x,y)i=1,···,nk=1,2,3
步驟2-4,計(jì)算圖像i(x,y)的第i個(gè)顏色通道ii(x,y)在尺度k=1,2,3下的中高頻增強(qiáng)圖像gik(x,y);
gik(x,y)=lnii(x,y)-lndik(x,y)i=1,···,nk=1,2,3
步驟2-5,計(jì)算圖像i(x,y)的第i個(gè)顏色通道ii(x,y)的未帶顏色恢復(fù)的增強(qiáng)圖像ri'(x,y);
其中,wk是k尺度下高斯環(huán)繞函數(shù)fk(x,y)的相關(guān)權(quán)重,本實(shí)施例取w1=w2=w3=1/3。
步驟2-6,計(jì)算圖像i(x,y)的第i個(gè)顏色通道ii(x,y)的恢復(fù)系數(shù)ci(x,y);
其中,α為非線性強(qiáng)度控制因子。
步驟2-7,計(jì)算圖像i(x,y)的第i個(gè)顏色通道ii(x,y)經(jīng)過msrcr處理后,帶顏色恢復(fù)的增強(qiáng)圖像的第i個(gè)顏色通道
步驟3,判斷圖像是否是高光圖像,若是,采用同態(tài)濾波方法對(duì)圖像進(jìn)行增強(qiáng),然后執(zhí)行步驟4,若否,直接執(zhí)行步驟4;
所述判斷是否有高光現(xiàn)象的過程為:首先,將獲取的圖像轉(zhuǎn)化為灰度圖像,若灰度圖像中大于高光灰度閾值的像素個(gè)數(shù)所占比例超過設(shè)定的比例,則有高光現(xiàn)象;否則沒有高光現(xiàn)象;
所述采用同態(tài)濾波方法對(duì)圖像進(jìn)行增強(qiáng)的具體過程為:
步驟3-1,對(duì)圖像i(x,y)用對(duì)數(shù)處理,獲得其反射分量和入射分量分離;
z(x,y)=lni(x,y)=lnr(x,y)+lnl(x,y)
其中,z(x,y)是i(x,y)的對(duì)數(shù)變換結(jié)果,r(x,y)和l(x,y)分別為圖像i(x,y)的反射分量和入射分量,i(x,y)=r(x,y)·l(x,y);
步驟3-2,對(duì)步驟3-1得到的對(duì)數(shù)變換結(jié)果z(x,y)取傅里葉變換;
z(u,v)=r(u,v)+l(u,v)
其中,z(u,v)、r(u,v)、l(u,v)分別表示z(x,y)、lnr(x,y)、lnl(x,y)的傅里葉變換結(jié)果;
步驟3-3,使用一個(gè)阻帶寬可調(diào)的巴特沃斯型帶阻濾波器作為同態(tài)濾波器h(u,v)對(duì)步驟3-2得到的傅里葉變換結(jié)果z(u,v)進(jìn)行濾波處理,表達(dá)式如下:
s(u,v)=h(u,v)z(u,v)=h(u,v)r(u,v)+h(u,v)l(u,v)
其中,s(u,v)為經(jīng)過同態(tài)濾波器h(u,v)濾波處理后得到的圖像i(x,y)的頻譜函數(shù),同態(tài)濾波器
步驟3-4,對(duì)步驟3-3得到的頻譜函數(shù)s(u,v)取傅里葉逆變換;
s(x,y)=r′(x,y)+l′(x,y)
其中,s(x,y)、r′(x,y)和l′(x,y)分別是s(u,v)、h(u,v)r(u,v)和h(u,v)l(u,v)的傅里葉逆變換結(jié)果;
步驟3-5,對(duì)步驟3-4傅里葉逆變換結(jié)果取指數(shù)運(yùn)算即可獲得經(jīng)過同態(tài)濾波增強(qiáng)后的圖像g(x,y);
g(x,y)=es(x,y)=er′(x,y)el′(x,y)=r0(x,y)l0(x,y)
其中,r0(x,y)和l0(x,y)分別為r′(x,y)和l′(x,y)取指數(shù)運(yùn)算后的結(jié)果;
步驟4,采用自適應(yīng)閾值選取的canny算法提取經(jīng)過增強(qiáng)處理后的圖像邊緣,具體步驟為:
步驟4-1,計(jì)算圖像的梯度直方圖;
步驟4-2,確定上限閾值和下限閾值;方法為:對(duì)圖像梯度直方圖累加,當(dāng)累加數(shù)目達(dá)到總像素?cái)?shù)目的一定比例hr時(shí),對(duì)應(yīng)的圖像梯度值作為上限閾值,下限閾值通過上限閾值乘以比例因子lr得到,其中,0<hr<1,0<lr<1;因上限閾值和下限閾值隨著梯度直方圖累加而變化,因此是自適應(yīng)閾值;
步驟4-3,使用傳統(tǒng)canny算法進(jìn)行邊緣檢測(cè);
步驟5,采用基于隨機(jī)hough變換的方法對(duì)圖像邊緣信息進(jìn)行橢圓擬合,具體步驟為:
步驟5-1,在圖像i(x,y)中隨機(jī)選擇三個(gè)邊緣點(diǎn),設(shè)為x1、x2和x3;
步驟5-2,對(duì)邊緣點(diǎn)x1、x2和x3相鄰像素的一個(gè)小窗口使用最小二乘法擬合出一條直線來得到三個(gè)邊緣點(diǎn)的切線;
步驟5-3,確定橢圓的中心坐標(biāo)(x0,y0);方法為:如圖2所示,記邊緣點(diǎn)x1與x2兩點(diǎn)切線的交點(diǎn)為t12,x2與x3兩點(diǎn)切線的交點(diǎn)為t23,兩條線段x1x2以及x2x3的中點(diǎn)分別為m12和m23,則橢圓的中心坐標(biāo)(x0,y0)為t12m12和t23m23的交點(diǎn);
步驟5-4,將邊緣點(diǎn)x1、x2和x3坐標(biāo)以及橢圓中心坐標(biāo)(x0,y0)代入到橢圓方程a(x-x0)2+2b(x-x0)(y-y0)+c(y-y0)2=1中求解得到橢圓參數(shù)a、b和c的值;
步驟5-5,計(jì)算利用步驟5-4得到的橢圓與預(yù)先保存在累加器數(shù)組中的橢圓之間的相似度,一旦相似度超出了某個(gè)預(yù)定義的閾值,就用這兩個(gè)橢圓的平均來替換掉累加器數(shù)組中的橢圓,同時(shí)將累加器的score加1;
步驟5-6,重復(fù)執(zhí)行步驟5-1到5-5一定次數(shù),一旦某個(gè)候選橢圓的score超過了某個(gè)閾值,這個(gè)橢圓就是一個(gè)被檢測(cè)出的橢圓,將該橢圓參數(shù)保存在一個(gè)數(shù)組中,同時(shí)將其從圖像和累加器數(shù)組中刪除;
步驟5-7,當(dāng)隨機(jī)hough變換的循環(huán)數(shù)目達(dá)到預(yù)先設(shè)定的最大值或者所有橢圓都被檢測(cè)出時(shí),hough變換算法停止。
步驟6,判斷擬合出的橢圓數(shù)目是否等于1,若是,則橢圓所在區(qū)域即為螺栓,結(jié)束,若否,執(zhí)行步驟7;
步驟7,對(duì)識(shí)別出的多個(gè)橢圓區(qū)域進(jìn)行方向梯度直方圖(histogramoforientedgradient,hog)特征提??;
所述提取橢圓區(qū)域hog特征的具體步驟為:
步驟7-1,以橢圓的中心點(diǎn)為中心,以橢圓長(zhǎng)軸為邊長(zhǎng)的正方形區(qū)域圖像作為待分類目標(biāo)圖像,對(duì)其進(jìn)行灰度化處理,記為圖像i′(x,y);
步驟7-2,采用gamma校正法對(duì)圖像i′(x,y)進(jìn)行規(guī)范化處理;
i″(x,y)=i′(x,y)r
其中,r為gamma值,i″(x,y)為gamma校正后的圖像;
步驟7-3,計(jì)算圖像i″(x,y)中每個(gè)像素的水平和垂直方向的梯度及邊緣強(qiáng)度,并據(jù)此計(jì)算每個(gè)像素的梯度方向值g(x,y);
gx(x,y)=i″(x+1,y)-i″(x-1,y)
gy(x,y)=i″(x,y+1)-i″(x,y-1)
gx(x,y)和gy(x,y)分別表示每個(gè)像素在x和y方向上的梯度值。
步驟7-4,將圖像i″(x,y)劃分成若干個(gè)細(xì)胞單元cells,計(jì)算每個(gè)細(xì)胞單元cell的方向梯度直方圖,并對(duì)直方圖進(jìn)行歸一化處理,構(gòu)成每個(gè)細(xì)胞單元cell的特征描述子;
步驟7-5,將幾個(gè)細(xì)胞單元cell組合成一個(gè)塊block,將一個(gè)塊block內(nèi)所有細(xì)胞單元cell的歸一化方向梯度直方圖特征描述子串聯(lián)起來構(gòu)成該塊block的hog特征描述子;
步驟7-6,將圖像i″(x,y)內(nèi)所有塊block的hog特征描述子串聯(lián)起來得到該圖像的hog特征描述子,作為橢圓區(qū)域的特征向量;
步驟8,采用基于svm的目標(biāo)識(shí)別方法對(duì)擬合結(jié)果進(jìn)行分類識(shí)別,正確識(shí)別螺栓。
所述基于svm目標(biāo)識(shí)別方法為:利用大量包含識(shí)螺栓在內(nèi)的正樣本和不包含螺栓的負(fù)樣本,訓(xùn)練并尋找到一個(gè)能夠滿足分類要求并且具有最大分類間隔的最佳分類超平面;將該最佳分類超平面作為svm分類器;將提取到的hog特征作為svm分類特征,輸入到svm分類器中對(duì)擬合出的橢圓進(jìn)行分類,從而正確識(shí)別出目標(biāo)螺栓。