同濟大學機械與能源工程學院 上海 201804
橋式起重機是現代工業生產和起重運輸中實現生產過程機械化、自動化的重要設備,廣泛應用于室內外工礦作業、鋼鐵化工、鐵路交通、港口碼頭以及車間物流周轉等場所[1]。提高橋式起重機的效率和實現無人化控制的研究是當前熱點,其中閉環防搖控制是實現起重機自動化控制的重要一環。閉環防搖控制需要實時檢測擺角作為防搖算法的反饋量,對于擺角檢測的研究具有重要意義。
目前的擺角檢測方式主要有:直接檢測和間接檢測。直接檢測采用在吊鉤上安裝角度傳感器或者加速度傳感器進行測量,主要缺點是需要對起重機的吊鉤結構進行改造,且在運行過程中容易造成損壞。間接檢測有激光檢測和機器視覺檢測,激光檢測是在小車運行下方安裝一組激光發射裝置和接收裝置,通過三角幾何關系可以測得吊重擺角信息;機器視覺檢測是采用高速的CCD攝像頭,通過面陣攝像機采集吊重偏擺的圖像,然后進行圖像處理,通過線性回歸分析得到直線方程,從而得到吊重的擺動信息[2]。激光檢測的成本較高,而視覺檢測對起重機的機械結構改造較小且成本較低,推廣應用更方便。目前的視覺檢測多采用識別外加標志物的方法實現[3],對于直接識別吊鉤檢測的研究較少。由于機器視覺技術和深度學習技術的發展,直接識別吊鉤的方案有了實現的可能。文中提出了一種使用YOLOv3算法直接識別吊鉤的擺角檢測系統。
擺角檢測系統是通過用YOLOv3算法提前訓練好的模型對吊鉤的實時圖像進行檢測,由計算機根據圖像中吊鉤偏離平衡位置的距離結合吊繩繩長計算出吊繩的擺動角度。系統的前端部分是一個攝像頭和數據采集卡,系統的硬件組成如圖1所示,由攝像頭、圖像采集卡和計算機組成。

圖1 硬件組成
攝像頭垂直固定在起重機小車的吊繩吊點附近,對吊鉤進行攝像,如圖2所示。

圖2 攝像頭安裝位置示意圖
攝像頭完成圖像的獲取,圖像采集卡將圖像信息轉為計算機信號,計算機進行圖像預處理,并運行YOLOv3目標檢測程序,識別吊鉤并輸出位置,通過吊鉤的位置和吊繩的長度計算出擺角,其中吊繩的長度通過安裝在起升電機上的旋轉編碼器測得。圖3為擺角檢測的流程圖。

圖3 視覺擺角檢測流程圖
使用OpenCV攝像頭采集吊鉤在運行過程中的圖像,并制作數據集,根據吊鉤擺動頻率確定,一般吊鉤擺動頻率大于1 Hz,故可采用大于10以上的幀率,本文采用的幀率為20幀,將拍攝的圖像放入文件夾中,主要采集不同光照、不同背景下吊鉤在不同高度的圖像,選取1 100張圖像,1 000張作為訓練圖像,100張作為測試圖像,每張圖片大小為640×480像素。
用開源軟件Labeling手工框選出每幀圖像中的滑輪,標注所需要的數據,包括每幅圖像中目標區域的位置、尺寸和名字,生成相應信息保存在相應的xml文件中[4]。
YOLOv3是一種使用深卷積神經網絡學習的特征來檢測物體的目標檢測算法[5]。如圖4為YOLOv3的網絡結構圖,圖中采用了Darknet-53的網絡結構,由卷積和殘差結構組成,輸出有三個尺度,每個尺度內通過卷積核的方式實現局部特征交互,三個尺度可以對應檢測不同類型的目標,13×13用于檢測大型目標,26×26用于檢測中型目標,52×52用于檢測小型目標。多尺度的輸出可以兼顧檢測不同大小的目標。

圖4 YOLOv3網絡結構圖
YOLOv3相對于目前的其他目標檢測算法,可以兼顧檢測速度和精度,符合擺角檢測的實時性要求,并且該算法可以兼顧不同尺度的目標,吊鉤在不同起升高度時的尺度相差較大,適合于擺角檢測系統。
在Linux系統中先配置Darknet框架,對數據集進行處理,修改保存為YOLOv3的訓練格式,使用訓練圖像進行預訓練和訓練,測試圖像進行模型測試,最后進行預測。
圖5為復雜背景下滑輪的檢測結果,檢測單張圖片的運行時間是0.02 s,IoU可以達到100%。

圖5 滑輪檢測結果
根據YOLOv3檢測到的吊鉤的位置,通過像素坐標系與世界坐標系之間的坐標變換,可計算出實際的吊鉤的擺動量,再根據吊繩的長度可計算出擺角的大小。圖6為像素坐標系與世界坐標系的變換示意圖。圖中Ow-XwYwZw為世界坐標系,O-XcYcZc為相機坐標系,OD-uv,為像素坐標系,O1-XY為圖像坐標系。

圖6 像素坐標系與世界坐標系變換示意圖
世界坐標系通過旋轉和平移變化可以得到相機坐標系,根據透視投影關系可以將三維的相機坐標系轉換為二維的圖像坐標系,像素坐標系與圖像坐標的坐標原點不同,通過平移變換可得,最終像素坐標系和世界坐標系之間的變換關系可用公式表示為

上述是理想線性模型,而實際的鏡頭并非理想的透視成像,而是有徑向畸變和切向畸變[6]。
徑向畸變可以描述為

切向畸變可以表示為

式中:(x, y)為平面畸變點,(x',y')為理想點。
采用張正友標定法獲得內參、外參和畸變系數。綜上所述,通過張正友標定法和吊繩的長度可得到像素坐標系到世界坐標系之間的變換關系。
如圖7為擺角計算示意圖,α為吊繩擺角大小,△x、△y為上述所求,l為吊繩長度,可得

圖7 擺角計算示意圖

式中l和坐標變換中Zc表示的物理值相同,通過數學計算可約掉,最后可計算出擺角。
1)所設計的擺角檢測系統滿足實時性要求。
2)通過YOLOv3算法可實時檢測吊鉤并輸出位置,檢測速度和精度滿足要求。
3)基于視覺的擺角檢測系統可實現擺角的檢測。