鄭越 羅雅涵 張馨元
摘要:科技的高速發展使工業生產實現自動化功能的要求愈來愈高,工業機器人行業的計算機視覺技術應用愈發廣泛。定位引導是自主移動機器人解決各種復雜任務的關鍵,對于提高機器人自動化水平具有重要的理論意義和應用價值。基于計算機視覺的定位引導機器人能使用計算機視覺去精確獲取目標并定位,利用視覺系統獲取外部信息,用單攝像頭或多攝像頭采用第一視角或者第三視角對環境進行成像處理,根據對目標識別匹配或跟蹤,實時得到目標的位姿信息,將目標位置的圖像坐標轉換為機器人能夠識別的機器人坐標并對機器人進行修正引導。
關鍵詞:定位引導 計算機視覺 圖像識別
基于視覺的定位引導機器人是在OpenCV技術之上利用計算機視覺系統來模擬人眼,使用圖像處理來獲取有用信息,通過定位技術與定位引導技術,將經信息處理與理解后的圖像信息進行檢測并控制完成機器人的引導。通過攝像頭獲得的實時畫面,可在整個引導過程中實時檢測與修正導航設置,能夠確保導引的高精準性。且在實施時僅需在機器人上方架設攝像頭,從而能夠極大地降低建設的成本。
1視覺技術
1.1.視覺系統
視覺系統的主要任務是實時采集、處理以及識別平臺圖像,得到平臺上目標的相關數據信息,供定位系統以及決策系統使用。圖像分割是視覺系統的基礎和關鍵,分割方法的選擇對系統整體起決定性作用。顏色作為物體表面的基本特征,是進行物體識別和認知必不可少的信息。目前顏色信息豐富且易于應用,所以本文基于顏色進行圖像分割,得到兩個色塊的坐標信息,從而獲知機器人的位姿信息,實現定位。
1.2.openCV
OpenCV 包含了大量視覺相關函數,OpenCV 主體由 5 個模塊組成,CV 模塊主要包括圖像處理的各種基本函數以及計算機視覺的高級處理算法。HighGUI 模塊則包括視頻圖像輸入、輸出及圖像界面函數。ML(Machine Learning)模塊包含了機器學習的函數類庫,由一些聚類算法、數據分析函數及分類組成。CxCore 模塊指基礎結構、數組操作、繪圖函數錯誤處理等數據結構及相關函數。第五個模塊是 CvAux 模塊,包含許多面臨淘汰的函數以及算法,還包括許多實驗性的函數、算法,諸如前景檢測、背景剔除等。
1.3.目標識別
通過攝像頭獲取的原始圖像大都不盡人意,會存在很多干擾信息,諸如復雜的背景、噪聲以及光照因素,需要對圖像進行預處理,從而降低對目標提取的干擾,以便快速準確得到目標信息。
HSV 顏色模型是按照顏色的直觀特征建立的顏色空間模型。該模型三個參數分別為色調(H,hue)、飽和度(S,saturation)和亮度(V,value),由于在目標的識別提取中常常會受到各種光線的影響,這就需要一種在不同亮度條件下而基本沒什么變化的顏色模型。通過調用cvtColor(frame,cv2.COLOR_BGR2HSV)方法即可完成顏色空間轉換。
在圖像的分析與處理中,圖像二值化可以說是最常見最基礎也特別關鍵的一種處理手段,有助于對圖像進行進一步的分析,可以大大消減圖像中的數據量,以便盡早顯現出感興趣的目標輪廓。調用cv2.inRange(hsv,lower_red,upper_red)方法即可實現圖像二值化。
為更好地識別我們的核心目標(兩個圓球),將原圖像和二值化圖像進行與操作,去除干擾背景,接著將對圖像進行灰度處理,去除檢測算法對目標檢測的資源耗費,將灰度處理后的結果,傳遞給檢測模塊,循環調用霍夫曼檢測模塊,對目標進行識別標記。
2.定位技術
2.1.推算定位
在導航系統中,推算定位(DR)是一個借助于先前已知位置,以及估計出的速度隨時間的變化量來推導出當前位置的過程。本文中推算定位算法是只根據左右兩側車輪行走過的距離實現定位的一種方法,左右兩輪都安裝有驅動電機,將光電碼盤固定在電機輪軸上,隨輪子同步轉動。設機器人車輪的直徑為D,所使用的光電碼盤的線數為P ,在Δt時間內光電編碼器的輸出脈沖個數ΔN,則機器人走過的距離。
2.2.視覺里程計
視覺里程計是一種利用連續的圖像序列來估計機器人移動距離的方法。視覺里程計增強了機器人在任何表面以任何方式移動時的導航精度。本文中視覺里程計算主要包含以下幾個步驟:
(1)圖像獲取,通過單目照相機、雙目照相機或者全向照相機獲得機器人的運動畫面。
(2)圖像校正,利用圖像處理技術,將獲取的圖像中的干擾因素去掉,然后對圖像進行一系列的初始化處理。
(3)特征檢測,在獲得預處理后的圖像數據后,根據需要檢測的特征,在幀與幀之間匹配特征并構建光流場;
(4)檢查光流場向量是否存在潛在的跟蹤誤差,移除外點;
(5)使用由光流場估計照相機的運動;
(6)周期性的重定位跟蹤點;
3.導航系統
3.1.目標位置設定
通過攝像頭獲得場域地圖后將地圖信息通過GUI反饋給用戶,用戶通過鼠標等操作確定目標位置,再通過cv2.EVENT_ LBUTTO NDOWN事件獲得目標像素坐標,從而確定目標位置
3.2.關鍵點的像素坐標轉化為世界坐標
上面文中的視覺處理一共捕獲兩個圓,一個小圓,一個大圓,其中大圓圓心表示機器人所在點A(x1,y1),小圓圓心表示機器人朝向點B(x2,y2);用戶通過鼠標點擊事件輸入了目的地C(x3,y3)。但這些坐標都是圖像中的像素坐標,為此我們要做的第一步是要將攝像頭捕獲的圖像中的距離轉化為實際距離。單目測距思想借鑒小孔成像原理,已知物體A到圖像中心o’的距離x’,相機焦距f,鏡頭到地面的高度h,更具三角形相似可得:物體到相機視野區域的中心o的距離問題x=(x’h)/f。如下圖1。
小孔生成的像與視覺生成的像相反,而最終我們觀察到的圖像與現實一致,這可能是相機通過軟件或是硬件調生成的。但我們得到的圖像與現實世界可以看作等比縮放,而這個縮放比又由相機高度h和相機焦距f所確定。相機成像數學模型圖如下圖2所示:
已知小車高度d,AB距離l,相機高度h,相機焦距f,A點在相機成像中的坐標A’(x1,y1),B點在相機所成像中的坐標B’(x2,y2),C點在相機成像所成像中的坐標C(x3,y3),建立圖示圖像坐標系x’-o’-y’,世界坐標系x-o-y。有如下關系:
因此可看出h為多余條件,即在我們的模型中相機高度h可以未知,但能夠正確地將圖像里的像素坐標轉化為世界坐標。
3.3 定位引導
搭建視覺全局定位平臺,是利用攝像頭對平臺進行圖像采集,通過先對圖像進行減色處理,方便色標位置更好更快地識別,再將圖像從通常用于顯示器顏色的 RGB 顏色空間轉換為不受亮度影響的 HSV 顏色空間,使得平臺更穩定可靠,接著在 HSV 空間進行直方圖均衡化,使得色標顏色和背景色對比度變大,增加下一步的識別效率。在預處理的圖像中進行識別,得到二值圖像,此時,二值圖會有一些噪點,色標也不一定就是現實中的形狀,由此我們提出了運用腐蝕和膨脹交替進行的開運算、閉運算方式,刪除一些孤立零星的噪點,補上一些目標區域的白洞,得到輪廓清晰、噪點很少的二值圖,再計算就能得到兩個色標的圖像坐標。結合參考點及數學建模就能得到機器人的位置信息和到達目的地的運動路徑。得到機器人運動路徑后,可通過無線傳輸的方式發送給機器人。機器人在運動過程中,引導系統實時檢測機器人位置信息,若發現機器人偏離預定軌道,引導系統即發送指令修正機器人的行駛路線,如此以來便能做到精準引導。
4.結束語
定位是自主移動機器人解決各種復雜任務的關鍵,對于提高機器人自動化水平具有重要的理論意義和應用價值。本文中通過搭建全局視覺定位平臺,及固定在平臺正上方的一個第三視角攝像頭對實驗平臺定期采樣,經一系列圖像處理,得到移動機器人頂部兩個色標的圖像坐標,再根據圖像坐標和世界坐標已知的兩個參考點,計算出機器人在實驗平臺上的世界坐標,得到機器人的位姿信息,從而完成定位引導。結果表明,視覺全局定位精度可達厘米級別,符合室內移動機器人對定位精度的要求。
參考文獻
[1]吳曉明.基于計算機視覺的機器人導航綜述[J].實驗科學與技術,2007(05):25-28.
[2]周艷芳.基于計算機視覺的機器人路徑識別與目標跟蹤系統[J].信息技術與信息化,2021(04):246-248.
[3]劉康.室內視覺定位與導航綜述[J].黑龍江科技信息,2017(08):7.
[4]溫倩雯,蘇毅輝,李庚.基于單目相機與里程計的室內機器人定位研究[J].電視技術,2021,45(03):100-105+125.
作者簡介:
鄭越(1999—),男,四川省什邡市,本科,研究方向:內江師范學院物聯網工程專業2018級在讀本科生;羅雅涵(1998—),女,四川省自貢市,本科,研究方向:內江師范學院物聯網工程專業2018級在讀本科生;張馨元(1999—),女,四川省成都市,本科,研究方向:內江師范學院物聯網工程專業2018級在讀本科生。
項目名稱:基于計算機視覺的工業機器人,項目編號:X202044