肖號(hào)迪 吳峰崎 劉 龍 胡佳偉
1 上海海事大學(xué)物流工程學(xué)院 上海 200240 2 上海市特種設(shè)備監(jiān)督檢驗(yàn)技術(shù)研究院 上海 200062
起重機(jī)制動(dòng)環(huán)節(jié)在起重機(jī)起升系統(tǒng)中起著非常重要作用,制動(dòng)性能直接影響著整個(gè)系統(tǒng)的安全運(yùn)作和可靠性,而制動(dòng)下滑量是衡量制動(dòng)性能的重要標(biāo)準(zhǔn),故對(duì)于制動(dòng)下滑量的檢測(cè)非常有必要。
在起重機(jī)啟動(dòng)制動(dòng)后,吊鉤受到自重及載重的影響,在重力和加速度的作用下不能馬上靜止不動(dòng),會(huì)持續(xù)向下滑動(dòng)一段距離,這段距離就是制動(dòng)下滑量[1,2]。目前常見(jiàn)的方法有目測(cè)法、行程開(kāi)關(guān)控制的檢測(cè)方法、加速度傳感器測(cè)量、激光測(cè)量下滑量法等,對(duì)此業(yè)內(nèi)同仁已有研究。
楊陽(yáng)等[3]提出了一種通過(guò)主動(dòng)向控制器提供制動(dòng)信號(hào)來(lái)檢測(cè)起重機(jī)制動(dòng)點(diǎn)的新方法,通過(guò)多次實(shí)驗(yàn)測(cè)試數(shù)據(jù)比較穩(wěn)定,誤差小于1 mm;王鵬飛[4]利用MEMS 技術(shù)和制動(dòng)滑動(dòng)距離檢測(cè)理論設(shè)計(jì)了檢測(cè)系統(tǒng),并通過(guò)動(dòng)態(tài)仿真得出計(jì)算值與激光位移傳感器誤差在0.5 mm 以?xún)?nèi);范麗麗等[5]通過(guò)比較線(xiàn)控開(kāi)關(guān)法和計(jì)算分析法發(fā)現(xiàn)起重機(jī)制動(dòng)器測(cè)試儀的性能更準(zhǔn)確;王小翼[6]設(shè)計(jì)了一個(gè)由霍爾傳感器和數(shù)據(jù)采集軟件組成的制動(dòng)滑動(dòng)距離檢測(cè)系統(tǒng)進(jìn)行反復(fù)測(cè)量,可減少重復(fù)檢測(cè)的工作量,其精度約為1 mm;祝金鳳等[7]利用激光測(cè)距儀檢測(cè)起重機(jī)的制動(dòng)距離,通過(guò)積分?jǐn)M合的方法得到運(yùn)動(dòng)位移和速度曲線(xiàn),通過(guò)多次測(cè)量實(shí)現(xiàn)了結(jié)果的高度一致性,精度可達(dá)1 mm。
上述測(cè)量方法需要特定的機(jī)械結(jié)構(gòu)和控制電路,多數(shù)情況下需要搭建輔助測(cè)量平臺(tái),且進(jìn)行復(fù)雜的安裝準(zhǔn)備工作。即使是理論上可行的測(cè)量方案,在實(shí)際野外作業(yè)中也可能遇到難以預(yù)料的困難和障礙。盡管一些方法可以用來(lái)檢測(cè)特定環(huán)境的性能,但其并不適用于復(fù)雜多變的施工環(huán)境,故需定期進(jìn)行檢測(cè)以確保安全和可靠的結(jié)果。
若使用下滑量檢測(cè)系統(tǒng)進(jìn)行檢測(cè),則只需拍攝制動(dòng)視頻即可完成下滑量測(cè)量,避免了搭建復(fù)雜的測(cè)量平臺(tái),更適用于復(fù)雜多變的施工環(huán)境。因此,本文采用基于YOLOv5 目標(biāo)檢測(cè)方法,設(shè)計(jì)了一種操作簡(jiǎn)單、安全性高、測(cè)量精度高的檢測(cè)系統(tǒng)。
YOLOv5 網(wǎng)絡(luò)結(jié)構(gòu)[8]根據(jù)其功能可分為輸入端、Backbone 網(wǎng)絡(luò)部分、Neck 網(wǎng)絡(luò)部分和輸出端4 部分[9]。在輸入端,使用Mosaic 數(shù)據(jù)增強(qiáng)方式[10]提升模型準(zhǔn)確率,通過(guò)隨機(jī)縮放、裁剪和排布圖像,然后將多張圖像拼接在一起作為輸出;Backbone 層主要由Focus 結(jié)構(gòu)和CSP 結(jié)構(gòu)組成,F(xiàn)ocus 結(jié)構(gòu)是網(wǎng)絡(luò)中的第1 層,其作用是對(duì)輸入特征圖進(jìn)行采樣,將1 個(gè)輸入特征圖劃分為4 個(gè)子圖,并通過(guò)通道對(duì)這4 個(gè)子圖進(jìn)行連接,以此得到1 個(gè)更小的特征圖;CSP 結(jié)構(gòu)用于構(gòu)建骨干網(wǎng)絡(luò)(Backbone),主要作用是將輸入的特征圖分為2 部分,一部分送入小的卷積網(wǎng)絡(luò)進(jìn)行處理,另一部分無(wú)需處理即直接進(jìn)入下一層,最后將這2 部分特征圖拼接起來(lái)作為下一層的輸出;Next 層是在骨干網(wǎng)絡(luò)基礎(chǔ)上加入中間特征提取網(wǎng)絡(luò),再對(duì)不同層次的特征進(jìn)行融合;YOLOv5 輸出端可以輸出圖像中目標(biāo)的位置、大小以及類(lèi)別等信息。
如圖1 所示,起重機(jī)制動(dòng)下滑量測(cè)量原理為:首先在重物上粘貼標(biāo)志點(diǎn),拍攝起重機(jī)制動(dòng)視頻,對(duì)視頻進(jìn)行分幀,通過(guò)目標(biāo)檢測(cè)算法準(zhǔn)確識(shí)別視頻中標(biāo)志點(diǎn),并進(jìn)行輪廓提取及橢圓擬合得到每個(gè)標(biāo)志點(diǎn)坐標(biāo),對(duì)視頻中每個(gè)標(biāo)志點(diǎn)坐標(biāo)變化得到制動(dòng)開(kāi)始幀及制動(dòng)結(jié)束幀,通過(guò)這2 幀標(biāo)志點(diǎn)坐標(biāo)變化得到起重機(jī)制動(dòng)下滑量的數(shù)據(jù)。
圖1 下滑量測(cè)量原理圖
YOLOv5 作為一種目標(biāo)檢測(cè)算法,具有檢測(cè)速度快、準(zhǔn)確率穩(wěn)定等特點(diǎn),方便對(duì)檢測(cè)后標(biāo)志點(diǎn)進(jìn)行輪廓提取及坐標(biāo)顯示,故本實(shí)驗(yàn)使用YOLOv5對(duì)標(biāo)志點(diǎn)進(jìn)行識(shí)別。通過(guò)YOLOv5 對(duì)標(biāo)志點(diǎn)進(jìn)行識(shí)別并對(duì)識(shí)別后的圖像提取其中心坐標(biāo)過(guò)程如圖2 所示。
圖2 標(biāo)志點(diǎn)識(shí)別及中心坐標(biāo)提取流程圖
1)拍攝視頻 通過(guò)相機(jī)拍攝起重機(jī)制動(dòng)過(guò)程中已粘貼標(biāo)志點(diǎn)的吊物的運(yùn)行視頻。
2)視頻分幀處理 通過(guò)YOLOv5 對(duì)拍攝出的視頻進(jìn)行分幀,并保存分幀圖片。
3)自建數(shù)據(jù)集 建立分幀后的視頻進(jìn)行數(shù)據(jù)集,分成訓(xùn)練集和驗(yàn)證集,為機(jī)器學(xué)習(xí)做準(zhǔn)備。
4)數(shù)據(jù)集圖像擴(kuò)充[16]在本次實(shí)驗(yàn)中,分幀后的圖片數(shù)量有限,為了更好地進(jìn)行機(jī)器學(xué)習(xí),有必要對(duì)數(shù)據(jù)集圖片進(jìn)行擴(kuò)充。擴(kuò)充數(shù)據(jù)集的方法是通過(guò)數(shù)據(jù)增強(qiáng)以增加數(shù)據(jù)集樣本空間的多樣性,通過(guò)使用仿射變換和顏色抖動(dòng)等數(shù)據(jù)增強(qiáng)技術(shù),計(jì)算機(jī)可生成大量數(shù)據(jù),有助于神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)更多圖像特征并提高模型性能。
5)數(shù)據(jù)集標(biāo)注與劃分 在目標(biāo)物體檢測(cè)領(lǐng)域,通常訓(xùn)練神經(jīng)網(wǎng)絡(luò)是通過(guò)圖像標(biāo)注識(shí)別已知物體的,LabelImg 軟件被用來(lái)注釋標(biāo)簽的位置,圖像標(biāo)注如圖3所示。
圖3 圖像標(biāo)注
6)使用YOLOv5s 模型對(duì)數(shù)據(jù)集進(jìn)行深度學(xué)習(xí),從而準(zhǔn)確識(shí)別標(biāo)志點(diǎn)。
7)進(jìn)行標(biāo)志點(diǎn)圖像識(shí)別,從圖像中提取特定的標(biāo)志點(diǎn)[17,18],利用擬合技術(shù)準(zhǔn)確定位出該標(biāo)志點(diǎn)的中心位置,以便對(duì)中心坐標(biāo)進(jìn)行匹配。本文使用FindContours函數(shù)提取標(biāo)志點(diǎn)外輪廓,并用橢圓擬合法[19]得到標(biāo)志點(diǎn)圓心坐標(biāo),并得到橢圓擬合的像素半徑,圓心識(shí)別結(jié)果如圖4 所示。
圖4 橢圓擬合圓心坐標(biāo)示意圖
特征點(diǎn)匹配是對(duì)提取到的特征點(diǎn)進(jìn)行一對(duì)一正確匹配,本文通過(guò)YoLov5 目標(biāo)檢測(cè)后提取到的特征點(diǎn),減少環(huán)境的影響能準(zhǔn)確地檢測(cè)出每一幀圖像上的5 個(gè)特征點(diǎn),并計(jì)算其歐氏距離[20],特征點(diǎn)匹配是將特征點(diǎn)一一對(duì)應(yīng)。記模板圖像中特征點(diǎn)集合為A={Si},i=(1,2,3,…,m);目標(biāo)圖像特征點(diǎn)集合記為B={ti},i=(1,2,3,…,n),m、n分別記作模板圖和目標(biāo)圖特征點(diǎn)數(shù),計(jì)算2 集合內(nèi)特征點(diǎn)間的最小距離和次最小距離,設(shè)置比例Q進(jìn)行界定,設(shè)定閾值Tq,使Q低于Tq,則視為配對(duì)正確,其原理如圖5 所示。從圖5 中可以看出,只有一個(gè)距離最短的限制,還是會(huì)出現(xiàn)錯(cuò)誤匹配。
圖5 距離最短匹配示意圖
為了避免此時(shí)出現(xiàn)錯(cuò)誤匹配,需要對(duì)特征點(diǎn)匹配算法進(jìn)行優(yōu)化改進(jìn)。在對(duì)每個(gè)標(biāo)志點(diǎn)使用歐式距離最短方法進(jìn)行匹配的基礎(chǔ)上加入特征點(diǎn)排序,即分別為每幀圖片中的5 個(gè)特征點(diǎn)進(jìn)行排序,具體為通過(guò)算法使左上、右上、右下、左下及左的5 個(gè)方位特征點(diǎn)依次排序,這樣每幀圖像上的5 個(gè)標(biāo)志點(diǎn)相互一一對(duì)應(yīng),可以有效排除錯(cuò)誤匹配,匹配效果如圖6 所示。
圖6 優(yōu)化匹配效果示意圖
本文使用Opencv 庫(kù)中的Offset 函數(shù),得到每個(gè)元素帶有定位父元素的上方偏移。設(shè)定已制動(dòng)后受重力繼續(xù)下降的最遠(yuǎn)距離為制動(dòng)下滑量,記平行于相機(jī)鏡頭方向且垂直于起升運(yùn)動(dòng)方向?yàn)閄軸方向,自重方向?yàn)閅軸方向。
1)開(kāi)始制動(dòng)判定原則 開(kāi)始制動(dòng)可疑位置自重方向坐標(biāo)前后偏移量最大處的后一幀判定為開(kāi)始制動(dòng)位置。
2)結(jié)束制動(dòng)判定原則 目標(biāo)自重方向坐標(biāo)不變即為停止制動(dòng)位置。
起重機(jī)起升機(jī)構(gòu)在起升制動(dòng)過(guò)程中,與理想的起升制動(dòng)狀態(tài)會(huì)有一定偏差,這些偏差對(duì)于最終結(jié)果會(huì)產(chǎn)生一定誤差,需要修正。造成偏差的干擾因素主要有:
1)在起升機(jī)構(gòu)運(yùn)動(dòng)過(guò)程中,不僅會(huì)在起升運(yùn)動(dòng)方向有位移,在平行于相機(jī)鏡頭方向且垂直于起升運(yùn)動(dòng)方向處也會(huì)產(chǎn)生位移,是否會(huì)對(duì)精度存在一定影響需要進(jìn)一步分析。
2)在起升機(jī)構(gòu)運(yùn)動(dòng)過(guò)程中,理想的情況為先勻加速、然后勻速、最后勻減速的過(guò)程,開(kāi)始制動(dòng)幀判定也是運(yùn)用于這種理想情況,但實(shí)際情況并非如此,自重方向坐標(biāo)會(huì)有一定抖動(dòng),此抖動(dòng)也會(huì)產(chǎn)生一定誤差,影響結(jié)果精確度,需要進(jìn)一步處理。
3)在起升機(jī)構(gòu)制動(dòng)過(guò)程中,下降到最低點(diǎn)時(shí)會(huì)有回彈,不僅對(duì)水平方向位移有影響,對(duì)最后階段的勻減速過(guò)程也會(huì)有額外干擾。
1)X軸方向干擾
在起重機(jī)起升機(jī)構(gòu)運(yùn)行過(guò)程中,以相機(jī)距離標(biāo)志點(diǎn)6 m 為例,分別記錄制動(dòng)開(kāi)始幀以及制動(dòng)結(jié)束幀的X坐標(biāo)、Y坐標(biāo)以及偏移角度,具體如表1 所示。
表1 標(biāo)志點(diǎn)數(shù)據(jù)
檢測(cè)目標(biāo)靜止?fàn)顟B(tài)X軸像素坐標(biāo)為1 101.988 px,Y軸像素坐標(biāo)為323.013 px;檢測(cè)目標(biāo)開(kāi)始制動(dòng)274 幀X軸像素坐標(biāo)為1 116.42 px,Y軸像素坐標(biāo)為692.33 px,擺動(dòng)角度為2.23°;結(jié)束制動(dòng)的X軸像素坐標(biāo)為1 114.593 px,Y像素坐標(biāo)為695.281 px,擺動(dòng)角度為1.89°;制動(dòng)幀到結(jié)束幀Y像素坐標(biāo)差值為2.951 px,考慮角度影響,制動(dòng)幀到結(jié)束幀Y坐標(biāo)差值為2.954 px,相差0.003 px。因此,擺動(dòng)對(duì)本系統(tǒng)影響并不是很大,只需要考慮Y坐標(biāo)即可。
2)Y軸方向干擾
在起重機(jī)實(shí)際制動(dòng)過(guò)程中,Y坐標(biāo)差值并非完全規(guī)律,會(huì)有一定輕微抖動(dòng),原始判斷原則為Y坐標(biāo)前后偏移量最大處。因此,在算法判斷時(shí)需要進(jìn)行閾值優(yōu)化,即令A(yù)bs(Offset_y)為當(dāng)前幀與上一幀Y坐標(biāo)偏差絕對(duì)值,令A(yù)bs(Lastoffset_y)為上一幀與再上一幀的Y坐標(biāo)偏差絕對(duì)值。設(shè)置閾值比例為Q,當(dāng)檢測(cè)到Abs(Offset_y)<Q* Abs(Lastoffset_y)時(shí),則當(dāng)前幀為制動(dòng)開(kāi)始幀,此算法優(yōu)化可以解決因制動(dòng)過(guò)程中起重機(jī)抖動(dòng)而產(chǎn)生的誤差。Q的大小與制動(dòng)性能有關(guān),一般起重機(jī)設(shè)置0.6 即可。若滿(mǎn)足判斷要求則確定制動(dòng)開(kāi)始幀位置,開(kāi)始幀判斷程序結(jié)束,這樣可以避免由于制動(dòng)結(jié)束前系統(tǒng)回彈導(dǎo)致的判斷誤差。
在控制界面中,主要效果是為了測(cè)量制動(dòng)下滑量,主要功能包括打開(kāi)視頻、批處理檢測(cè)視頻中各標(biāo)志點(diǎn)坐標(biāo)、輸入標(biāo)志點(diǎn)實(shí)際半徑、計(jì)算標(biāo)志點(diǎn)像素半徑、找出制動(dòng)位置、計(jì)算制動(dòng)距離等。
將相機(jī)放置在待采集目標(biāo)視頻的正前方,本次需要測(cè)試制動(dòng)下滑量數(shù)據(jù)的穩(wěn)定性,將采集相機(jī)與標(biāo)志點(diǎn)距離4 m 正前方拍攝圖像。
以相機(jī)與標(biāo)記點(diǎn)距離4 m 實(shí)驗(yàn)為例,對(duì)開(kāi)始制動(dòng)時(shí)刻、停止制動(dòng)時(shí)刻、系統(tǒng)軟件測(cè)試進(jìn)行實(shí)驗(yàn)分析。
1)開(kāi)始制動(dòng)時(shí)刻分析
Y均值坐標(biāo)變化如圖7 所示,219 幀可疑點(diǎn)前后坐標(biāo)點(diǎn)Y坐標(biāo)前后偏移量變化如圖8 所示。相機(jī)與標(biāo)志點(diǎn)距離4 m 制動(dòng)視頻在第2 次偏移時(shí)Y坐標(biāo)達(dá)到最大,前面偏移量逐漸增大,后面偏移逐漸變小;第2 次偏移由圖8 可知,是216 幀與217 幀的偏移,所以218 幀為開(kāi)始制動(dòng)圖像。
圖7 坐標(biāo)變化圖
圖8 坐標(biāo)偏移量變化
2)停止制動(dòng)時(shí)刻分析
取Y坐標(biāo)停止制動(dòng)為結(jié)束制動(dòng)位置,開(kāi)始制動(dòng)幀圖像和結(jié)束制動(dòng)幀圖像坐標(biāo)數(shù)據(jù)如表2 所示。本系統(tǒng)選擇的標(biāo)記點(diǎn)外圓半徑為15 mm,經(jīng)系統(tǒng)檢測(cè)出,標(biāo)記點(diǎn)像素半徑為19.944 px。
表2 開(kāi)始與結(jié)束制動(dòng)坐標(biāo)數(shù)據(jù)
3)系統(tǒng)軟件測(cè)試
導(dǎo)入拍攝視頻,軟件檢測(cè)結(jié)果如圖9 所示。根據(jù)制動(dòng)下滑量原理,已知標(biāo)記點(diǎn)實(shí)際半徑為15 mm,像素制動(dòng)距離為2.617 px,測(cè)量得出相機(jī)距離標(biāo)記點(diǎn)4 m 位置,測(cè)得制動(dòng)下滑量為1.969 mm。
圖9 系統(tǒng)測(cè)試結(jié)果圖
對(duì)制動(dòng)下滑量檢測(cè)系統(tǒng)提出迫切需求,本文研究工作主要圍繞提高制動(dòng)下滑量檢測(cè)系統(tǒng)實(shí)時(shí)檢測(cè)精度展開(kāi),開(kāi)發(fā)了相應(yīng)的軟件系統(tǒng),優(yōu)化了標(biāo)志點(diǎn)匹配算法,建立了目標(biāo)檢測(cè)模型,重點(diǎn)分析了制動(dòng)位置開(kāi)始幀和結(jié)束幀的尋找,對(duì)于系統(tǒng)產(chǎn)生的誤差進(jìn)行了分析,并對(duì)算法進(jìn)行了優(yōu)化。該系統(tǒng)具有簡(jiǎn)單易操作、高精度、實(shí)時(shí)顯示、穩(wěn)定性好等特點(diǎn),實(shí)驗(yàn)結(jié)果表明,制動(dòng)下滑量檢測(cè)系統(tǒng)的可行性和有效性。
本文基于攝影技術(shù)設(shè)計(jì)了對(duì)起重機(jī)制動(dòng)下滑量檢測(cè)算法,用于自動(dòng)化實(shí)驗(yàn)中的檢測(cè),雖然取得一些成果,但仍存在以下不足:
1)基于YOLOv5 的目標(biāo)檢測(cè)模型訓(xùn)練集數(shù)據(jù)較少,需要通過(guò)不斷擴(kuò)充數(shù)據(jù)集,提高模型的泛化性,收集容易誤判的標(biāo)志點(diǎn)圖像,增強(qiáng)檢測(cè)效果。
2)目前本系統(tǒng)只涉及到二維坐標(biāo)系的一個(gè)分析,在要求更高精度的情況下,可采用2 臺(tái)攝像機(jī),對(duì)三維坐標(biāo)系進(jìn)行分析。
3)對(duì)于系統(tǒng)中因?yàn)橹苿?dòng)而出現(xiàn)的擺動(dòng),也會(huì)因?yàn)榛貜椓?dǎo)致制動(dòng)結(jié)束位置不準(zhǔn)確,后續(xù)可以增加Y方向數(shù)據(jù)量,得出回彈規(guī)律,提高檢測(cè)系統(tǒng)精度。