裴云成,貝前程,劉海英,張紹杰
(齊魯工業大學(山東省科學院) 電氣工程與自動化學院,山東 濟南 250353)
運用機器視覺模擬人的視覺功能進行視覺檢測已經非常普遍。根據目標物體、應用場景和應用目的等實時條件的不同,選用不同數量和種類的攝像頭,必要時配備相應的光源來提取目標事物的特征,然后根據獲取的圖像信息,經過一系列數字化處理,提取所需的特征信息,最后經過相應的邏輯運算實現工業生產、地質勘探、科學研究等領域所需要的檢測、測量和控制等功能。機器視覺技術具有處理速度快、穩定工作時間長、檢測準確度高等特點[1],能夠很好地適應不同的環境,特別是在復雜環境下,能夠較好地代替人類完成相對危險的工作。
雙目立體視覺是機器視覺的一種重要形式,其基于視差原理并利用兩個攝像機從兩個不同的位置獲取被測物體的兩幅圖像,通過計算圖像中對應點的位置偏差,來獲取物體立體幾何信息[2]。
根據機器視覺的優勢,結合使用場景,提出利用雙目視覺技術和圖像特征提取技術相結合,以代替傳統距離測量方法,在高危復雜環境中檢測兩物體間的距離。利用特征提取技術可以更準確地確定環境中物體的邊緣,然后利用雙目識別技術判斷周圍環境中兩物體邊緣距離是否達到安全范圍。
邊緣提取為了突出圖像中物體的邊緣信息,常用圖像銳化進行處理,而微分運算是圖像銳化處理中常用的處理方式[3]。二階微分算子相較于一階微分算子能夠提取出更多的特征細節,因此,可使用二階拉普拉斯算子對原圖像進行銳化處理,得出邊緣清晰的圖像,最后將拉普拉斯圖像與原始圖像進行卷積運算而產生銳化圖像。由于拉普拉斯算子對圖像中的噪聲比較敏感,增強圖像細節的同時也增加了圖像的噪聲[4]。所以在圖像銳化處理前須進行高斯平滑濾波處理。
對圖像f(x,y)進行高斯平滑,得

式中:σ 為平滑尺度。
圖像f(x,y)的拉普拉斯算子為

將式(1)和式(2)結合得出

式(3)為高斯拉普拉斯算子(Laplacian of Gaussian,LOG)表達式。運算過程即先將圖片進行高斯平滑,而后使用拉普拉斯算法對圖像進行銳化處理。圖1 為LOG 算子的三維立體圖。

圖1 LOG 三維圖像
將LOG 算子與原圖像f(x,y) 進行卷積得

其中常用的卷積模板為5×5 矩陣,即為

經過卷積計算可得到邊緣特征信息較清晰的圖像[5],如圖2 所示。

圖2 LOG 圖像處理算法模型
由圖2 可以看出,模糊圖像經卷積處理后邊緣信息變得更加清晰。
雙目立體視覺系統是通過平行的兩個攝像機同時拍攝同一個目標物體,在獲得兩幅二維圖像后計算出其像素位置偏差[6],然后根據幾何原理計算出被測物體在空間中的立體坐標,雙目立體視覺原理如圖3 所示。

圖3 雙目立體視覺原理
圖3 中,雙目立體視覺系統左右攝像機的光心分別是OA和OB,同時OAZA與OBZB平行;L 為兩光心間距離即基線長度;fA和fB分別為左右攝像機的焦距;P 為目標物體位置;PA(x1,y1)和PB(x2,y2)分別為P 點在左右攝像機成像平面上投影點的坐標[7]。當兩攝像機在同一垂直平面時,其成像平面Y 軸上的坐標值相等,根據幾何原理可得出Z 軸上的坐標為

式中:f 為攝像機的焦距;L 為基線長度;x1、x2為點P在系統中左右攝像機成像平面中X 軸的坐標值。
同理可推導出P 點X 軸和Y 軸的坐標Xc、Yc為

式中:y 為成像平面所在坐標系中Y 軸的坐標值,且y=y1=y2。
根據以上原理和公式可確定兩物體上某一點的三維坐標[8],進而確定物體之間的距離。
攝像機安裝誤差也是影響雙目視覺系統測距精度的原因,所以在雙目立體視覺系統使用時應對攝像機進行標定[9]。
單目攝像機標定時所需坐標系關系如圖4 所示。

圖4 坐標系關系
圖4 中攝像機坐標系的ZC軸與攝像機光軸重合,XC軸與成像平面的水平方向平行,YC軸與成像平面的垂直方向平行,原點OC為攝像機的光學中心[10]。物理坐標系的原點為攝像機的光軸與成像平面的交點,X 軸平行于XC軸,Y 軸平行于YC軸。像素坐標系是和成像平面邊緣重合的坐標系,其坐標原點OU為其左上角,XU軸與XC軸平行,YU軸與YC軸平行[11]。世界坐標系的坐標軸為任意選取。設P 點的世界坐標為(Xw,Yw,Zw),攝像機坐標為(Xc,Yc,Zc)。由于像平面坐標系是二維平面,所以P 點的像平面坐標為(X,Y),像素坐標為(u,v)。根據像素坐標系與像平面坐標系之間的幾何位置關系可得

式中:dx、dy為像素尺寸;u0、v0是圖像的中心點。結合攝像機坐標系和世界坐標系,利用其幾何關系可得

式中:R 為3×3 階正交旋轉矩陣;T 為3×1 的平移向量;E=[0 0 0]。根據式(5)—式(8)可得

式中:fx=L/dx,fy=L/dy;zc為點P 在攝像機坐標系中Z軸的坐標值。
單目攝像機的標定是根據已知的像素坐標系和實際坐標系間關系計算出攝像機的內部參數,其結果與攝像機的種類規格有關,與使用的外部環境無關[12]。雙目攝像機標定在已知單目攝像機標定結果的基礎上進行,使兩個單目攝像機的焦距相似[13]。雙目標定需要確定每個攝像機對應的旋轉矩陣和平移矩陣,假設左右攝像機標定的旋轉矩陣為RA、RB,平移矩陣為TA、TB,可計算出雙目視覺系統對應的旋轉矩陣R 和平移矩陣T,結果為

通過對圖像邊緣提取與雙目立體視覺系統測距原理的分析,搭建完整的雙目立體視覺測距系統,經過一系列處理與運算得到所需要的距離。
利用MATLAB(2019b)中的stereo camera calibrator 雙目攝像機標定程序進行標定。首先利用MATLAB(2019b)繪制標準棋盤格,如圖5 所示,并將繪制好的棋盤格打印并制成棋盤格標定板。利用雙目立體視覺系統中的兩個攝像機同時拍攝9 張不同角度的標定板圖片,如圖6 所示。

圖5 棋盤格

圖6 雙目標定
圖6 中綠色標記為系統檢測到的點,紅色標記為重投點,黃色標記為棋盤格原點。
然后利用采集的9 對標定板信息使用stereo camera calibrator 雙目攝像機標定程序對攝像機進行標定,標定結果如圖7 所示。

圖7 每幅圖像的平均重投影誤差
由圖7 可看出,除第5 對圖像信息外,兩攝像機采集的每對圖像的像素誤差之間的差值非常小。圖8 清晰地展示出標定時像和相機之間的相對位置關系。

圖8 外部參數可視化
在進行距離測量之前,將采集的輸電線路周圍環境的單幀圖片經過LOG 邊緣提取使得圖片邊緣信息更加清晰,處理結果如圖9 所示。

圖9 LOG 邊緣提取
極線矯正是將預處理后的圖片中的物體進行對準,根據對極條件使左右視圖中相同位置的點處于同一條水平線上,在提高系統的匹配搜索效率的同時提高系統的精確度[14]。
圖像經過預處理后,根據雙目立體視覺原理隨機建立世界坐標系并得出圖像中物體邊緣的世界坐標,然后利用空間點距離公式,計算出圖片中物體邊緣間的最短距離,此距離為兩物體間的距離。
為了驗證此方法的可行性與準確性,實驗首先測量兩方盒之間的距離,然后對比測量值與實際值之間的誤差來判斷系統的準確性,其結果如表1所示。

表1 測量距離與誤差值
由表1 中的數據可得出,雙目立體視覺測量值的最小絕對誤差為0.3 cm,最大絕對誤差為1.1 cm,最小相對誤差為1.1%,最大相對誤差為2.0%,測量結果的誤差值都在可接受范圍內,符合輸電線路周圍物體安全距離測量的誤差標準[15]。
將雙目視覺技術與圖像處理技術相結合,應用LOG 算法對采集的圖像先進行平滑處理,然后進行銳化處理,獲得清晰的邊緣信息,根據雙目立體視覺標定原理,獲取圖像邊緣點的世界坐標,最后根據空間點的距離公式可獲得兩物體間距離集合。篩選出其中的最短距離,即可作為安全距離的判斷依據。此方法的檢測速度快,準確度能夠滿足輸電網絡周圍障礙物安全距離檢測的要求,應用此方法可以減少電力工作者的工作強度,但其是否能適應更為惡劣的天氣環境,還需要進一步研究。