一種視覺(jué)導航機器人的設計
機器視覺(jué)系統是智能機器人的重要標志,機器人視覺(jué)系統模仿了人的視覺(jué)感知能力,允許對環(huán)境做非接觸式的測量。增加了視覺(jué)系統的機器人,其自主和自適應能力可以大大提高。目前,機器視覺(jué)系統在圖像處理方面多采用封裝式圖像處理方法,把圖像傳感與處理分成獨立的兩個(gè)部分。系統通過(guò)圖像傳感器獲取圖像并傳入計算機,由計算機完成圖像處理任務(wù)。
本文所介紹的設計為簡(jiǎn)易機器人(能力風(fēng)暴機器人)添加了視覺(jué)模塊和無(wú)線(xiàn)通信模塊,并研究了相關(guān)算法和策略,實(shí)現了自主路徑跟蹤。為了使系統真正做到穩定快速,在圖像預處理、路徑識別和路徑跟蹤等各個(gè)環(huán)節都充分考慮到算法的實(shí)時(shí)性與魯棒性。
1 系統結構
視覺(jué)導航機器人的整個(gè)系統由兩部分構成:添加了無(wú)線(xiàn)通信模塊和無(wú)線(xiàn)攝像頭的能力風(fēng)暴機器人和遠程計算機。這兩部分之間的通信由無(wú)線(xiàn)通信模塊完成。系統結構如圖1所示。圖1中,機器人包括能力風(fēng)暴機器人、無(wú)線(xiàn)攝像頭和無(wú)線(xiàn)通信模塊三個(gè)部分。在機器人工作時(shí),無(wú)線(xiàn)攝像頭將采集到的視頻信號傳送給無(wú)線(xiàn)視頻接收器,無(wú)線(xiàn)視頻接收器再通過(guò)視頻采集卡(Osprey210)將待處理的視頻信號傳送給計算機,計算機經(jīng)過(guò)處理后,做出相應的決策,并將決策信號通過(guò)無(wú)線(xiàn)通信模塊發(fā)送給機器人,這樣就建立了一個(gè)簡(jiǎn)單的閉環(huán)控制系統。無(wú)線(xiàn)通信模塊由兩個(gè)完全相同的無(wú)線(xiàn)串口通信模塊組成,工作在全雙工狀態(tài)。在機器人中無(wú)線(xiàn)通信模塊與機器人的串口控制器連接,在計算機中無(wú)線(xiàn)通信模塊與計算機的COM口相連。
2 軟件流程
整個(gè)系統的軟件分為機器人接收到遠程計算機指令后的處理軟件和遠程計算機針對到機器人發(fā)來(lái)視頻信號進(jìn)行處理的視覺(jué)導航軟件。
機器人的軟件處理流程如圖2所示。機器人不停地掃描串口,一旦串口接收到遠程計算機的指令信號后,機器人便根據指令做出響應,整個(gè)處理過(guò)程比較簡(jiǎn)單。
計算機的視覺(jué)導航軟件處理流程如圖3所示。機器人視覺(jué)系統的原始輸入圖像是經(jīng)圖像采集卡A/D變換之后得到的連續數字圖像。系統工作時(shí),首先,圖像預處理模塊對原始輸入圖像進(jìn)行平滑濾波,去除噪音點(diǎn),并進(jìn)行閾值分割,挑選出對機器人有用的目標點(diǎn)(即引導線(xiàn));然后,路徑跟蹤模塊根據檢測到的路徑信息,做出策略分析,并對機器人發(fā)送相應的運動(dòng)指令。
3 主要算法描述
3.1 圖像預處理
3.1.1 圖像的平滑處理
在圖像采集系統中實(shí)際獲得的圖像,會(huì )因為各種原因受到干擾和噪聲的污染而引起圖像質(zhì)量的下降,圖像平滑處理就是為了消除圖像中存在的噪聲而對圖像施加的一種處理。本系統中采用中值濾波技術(shù)對原始圖像和二值化后的圖像進(jìn)行濾波,這是一種非線(xiàn)性空間域濾波技術(shù)。這種技術(shù)不僅能有效地抑制圖像中的噪聲,而且能保持圖像中固有的輪廓邊界,不使其變模糊。對平面圖像進(jìn)行中值濾波時(shí)我們一般采用二維中值濾波器。它由下式定義: Yij=MedianXij=Median(Xn)(r,s)∈s
這里,Xij為坐標(i,j)的待處理像素;S為平面窗口;而Yij為處理結果,即平面窗口中各像素值的中值。中值是指大小排序后,中間的數值。本系統中采用的是3X3的正方形窗口,經(jīng)實(shí)驗證明選用該窗口濾波后可以較好地濾除噪音。
3.1.2 彩色圖像二值化
圖像二值化的目的是將圖像一分為二,即將圖像劃分為物體和背景兩個(gè)部分。本系統中原始輸入圖像為(320×240)像素的RGB24格式圖像,采用直接對每個(gè)像素點(diǎn)進(jìn)行閾值分割的方法即可達到對圖像實(shí)現二值化的目的。由于HSL顏色模型中亮度L分量與圖像的顏色信息無(wú)關(guān),而與顏色信息有關(guān)的色調H(表征顏色的種類(lèi))和飽和度S分量(表征顏色的深淺程度)對外界光照條件的變化敏感程度低。機器人在移動(dòng)和旋轉時(shí)會(huì )引起光的亮度變化,RGB顏色模型對光的亮度魯棒性較差,所以在進(jìn)行圖像二值化時(shí)應該先將RGB顏色模型轉換為具有較強光亮不變性的HSL顏色模型。RGB顏色空間變換到HSL顏色空間的變換公式如下:
選取色調H作為路徑識別時(shí)的主參數。同時(shí),考慮到實(shí)際當RGB值較小,即亮度L較小時(shí),H值會(huì )趨向于不確定的情況,選取亮度L作為輔助識別參數。算法為:
其中,Hmin、Hmax為某種顏色色調分量的最小閾值和最大閾值;Lmin為亮度的最小閾值。
3.2 引導線(xiàn)檢測
掃描白線(xiàn)(即引導線(xiàn))的策略是每隔五行掃描,當每行的白色像素點(diǎn)超過(guò)35個(gè),而滿(mǎn)足這個(gè)條件的行超過(guò)16行時(shí),才認為在機器人視野范圍存在白線(xiàn)。因為只有連續的白色區域是可以利用的,所以每隔五行進(jìn)行掃描白線(xiàn)是可行的。這樣做不僅可以節省計算機的處理時(shí)間,加快程序處理速度,提高機器人響應的實(shí)時(shí)性;而且還可以濾除機器人視野范圍內可能出現的噪聲點(diǎn)。
引導線(xiàn)檢測的目的不僅僅是為了確定機器人視野范圍內是否存在引導線(xiàn),還需要確定引導線(xiàn)與距離機器人所在點(diǎn)的距離,以及引導線(xiàn)的角度信息。在本系統中,坐標約定如圖4所示。其中灰色小點(diǎn)代表機器人,很顯然,機器人在坐標系中的坐標應該為(160,240)。L表示白線(xiàn)中線(xiàn)與直線(xiàn)Y=240的交點(diǎn)和機器人所處位置之間的距離。當L>0時(shí),上述交點(diǎn)處于機器人左方;L0時(shí),上述交點(diǎn)處于機器人右方。系統中規定的白線(xiàn)中線(xiàn)的△=△X/△Y,△值可以直接反映出白線(xiàn)角度信息。當△>0時(shí)白線(xiàn)沿/方向;△0白線(xiàn)沿\方向。由此可知,圖4中的白線(xiàn)中線(xiàn)的△應該是大于0的。
pid控制器相關(guān)文章:pid控制器原理
評論