期刊VIP學術指導 符合學術規范和道德
保障品質 保證專業,沒有后顧之憂
摘要:科技的高速發展使工業生產實現自動化功能的要求愈來愈高,工業機器人行業的計算機視覺技術應用愈發廣泛。定位引導是自主移動機器人解決各種復雜任務的關鍵,對于提高機器人自動化水平具有重要的理論意義和應用價值。基于計算機視覺的定位引導機器人能使用計算機視覺去精確獲取目標并定位,利用視覺系統獲取外部信息,用單攝像頭或多攝像頭采用第一視角或者第三視角對環境進行成像處理,根據對目標識別匹配或跟蹤,實時得到目標的位姿信息,將目標位置的圖像坐標轉換為機器人能夠識別的機器人坐標并對機器人進行修正引導。
關鍵詞:定位引導 計算機視覺 圖像識別
基于視覺的定位引導機器人是在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。
推薦閱讀:如何檢索計算機專業論文文獻