摘 要:針對超聲波傳感器在機器人定位中存在的測量距離與方向角誤差問題,該文提出采用Hough變換算法與隨機抽樣一致算法對測量數據進行融合處理,降低基于超聲波傳感器的機器人在檢測室內環境時的測量誤差,并在此基礎上對具有墻面與柱體的室內環境進行了建模實驗,實驗結果驗證了該文所述方法能夠對超聲波測量數據完成有效處理,獲得環境輪廓中線狀特征和柱體特征。實驗結果說明該方法對超聲波在機器人室內環境重構中的應用具有一定貢獻。
關鍵詞:超聲波模型 機器人定位 Hough變換 隨機抽樣一致
中圖分類號:TP242 文獻標識碼:A 文章編號:1672-3791(2016)12(a)-0006-02
室內移動機器人已經普遍的應用到生活中,如:室內清潔機器人,小孩兒玩具機器人,地震救災機器人。機器人的關鍵所在是擁有自己的“眼睛”,在具備該設備時機器人才具有“看清”周圍環境輪廓并利用柵格地圖[1]將其重構出來的能力。隨著科技的不斷創新,“眼睛”的種類越發的多,如:超聲波傳感器,激光傳感器,視覺傳感器。
超聲波傳感器在測距過程中存在著:測量距離誤差與測量方向誤差。這種誤差源于其物理特性,超聲波工作時是發射一束錐型波觸碰到物體返回給超聲波傳感器,由于是薄面觸碰到障礙物,測量時并不能精確的計算出是哪一方向上返回的聲波,故設備本身就存在著誤差。
1 超聲波傳感器測量原理
超聲波探測的原理是時間渡越法,即已知超聲波在空氣中傳播速度為v,發射超聲波至物體表面再返回傳感器的時間t與物體的距離成正比,目標距離為:d=1/2×t×v。由于超聲波換能器是發射器也是接收器,傳感器用一段時間發射超聲波束,只有待發送結束后才能啟動接收。此外,實際實驗表明,超聲波探頭有一定慣性,在其發送結束后還留有一定余振,這種余振未消失以前,不能啟動系統進行回波接受。故超聲波觸發后會有一段短暫時間,在這之后才開始接受信號,所以超聲波傳感器存在的盲區。
2 室內環境重構
在大自然環境下,物體都以線、弧形狀存在,故在室內環境重構時,只需重構出線及弧就能將室內環境還原。
2.1 直線的重構
在計算機研究領域,圖像處理時對直線的檢測普遍應用hough變換辦法,其原理為:在x-y坐標系下的一條直線取其中一些坐標點,轉換到ρ-θ坐標系下時可以聚集成一個點,這樣在ρ-θ坐標系下對應的ρ-θ即該直線的參數;這樣做的原因是在x-y坐標系下獲得的坐標點不一定完全在一條直線上,其中存在一定的干擾數據點,利用hough變換將這些干擾點“消除”掉。表達式如下:
ρ=x?cosθ+y?sinθ (1)
式(1)中的ρ為原點到直線的垂直距離,θ為直線法線與x軸夾角。這種參數化方式相當于使用法向量描述直線,如圖1所示。
2.2 圓弧的重構
因Hough變換需要O(n3)的計算復雜度和很大的內存空間,有學者提出隨機Hough變換,該方法同其他Hough變換的方法相比,能有效的減少內存空間和計算時間,但這種方法僅對圖像噪聲點少的情況下適用,對于噪聲點過多的情況并不能達到很好的識別效果。因此Fischer等人提出RANSAC算法,該算法在噪聲點超過50%的情況下仍然能夠求出模型參數,所以RANSAC算法對模型參數估計具有很好的魯棒性。該算法在隨機選取3個像素點時,可能取到邊緣的像素點,使最后檢測出來的圓與實際圓存在偏差,在檢測圓時需要設定與問題相關的多個閾值。
傳統RANSAC算法如下。
(1)隨機選取3個像素點,計算由這3個像素點所確定的圓。
(2)計算所有像素點到這個圓的距離,若像素點到圓的距離在一定誤差范圍內,則這個像素點記為局內點,否則為局外點;如果局內點個數大于等于某一個閾值,說明圓模型合理。
(3)用所有假設的局內點重新估計模型。
為減小檢測圓與真實圓之間的偏差,該算法隨機選取3個像素點,由這3個像素點構成圓模型,稱這個圓模型為“假定圓”。
已知任意3點的坐標(x1,y1)、(x2,y2)、(x3,y3),使用文獻[2]可求出由這3個點對應圓的中心(a,b)和半徑r:
其中(xi, yi)為隨機選取的3個像素點中任意一像素點坐標。
如果將圖像所有像素點存到集合S中,然后從集合S隨機抽取3個像素點,記為si=(xi,yi),i=1,2,3,圓心為(a,b),半徑為r,利用上述公式可求出這3個像素點對應圓的中心和半徑。計算圓上點個數與所有像素點個數比值,若大于等于所設定閾值,則該圓為真實存在的圓。
3 ??驗驗證
為驗證該算法的有效性,在實驗環境中進行輪廓檢測實驗,該環境包括墻面,墻角與柱體。采用該文算法獲得效果如圖2。圖2可以很明顯的辨別出該環境周圍有4個墻面,中間有個圓柱。
超聲波傳感器按照星號“*”位置逆時針方向測量周圍環境,然后進行PCR6融合,在融合后對數據進行處理,首先對全部數據進行融合次數判斷,將融合次數多于兩次的數據點保留在處理環境中,提高數據的可靠性;然后對數據進行閾值判斷,將占用信度閾值m(θ2)在0.9以上的作為環境數據點;再根據環境點的空間位置關系進行分類,分類算法是對全部數據進行Hough變換求得線特征參數,并轉換到x-y參數空間,獲得4條直線,最后對未識別的環境數據點(不屬于直線特征的數據點)采用隨機抽樣算法檢測圓形特征。圖2中可以看到檢測結果,此結果可以說明該算法的有效性與可靠性。
4 結語
該文針對超聲波傳感器在測距時由于測量距離誤差與方向誤差導致的測量不精確問題,提出基于DSmT的超聲波傳感器模型對周圍環境進行輪廓檢測,并利用Hough變換算法與隨機抽樣一致算法檢測環境輪廓中線狀特征和柱體特征。并通過實驗,驗證了該文中算法的有效性,該方法對基于超聲波傳感器的移動機器人環境建模具有一定參考價值。
參考文獻
[1] Lee YC,Lim JH,Cho DW,et al.Sonar map construction for autonomous mobile robots using a data association filter[J].Advanced Robotics,2009,23(1-2):185-201.
[2] 宋曉宇,袁帥,郭寒冰,等.基于自適應閾值區間的廣義Hough變換圖形識別算法[J].儀器儀表學報,2014,35(5):1109-1117.
[3] 楊錦園,黃心漢,李鵬.基于DSmT的移動機器人地圖構建及傳感器管理[J].計算機科學,2010,37(4):227-230.