新聞中心

EEPW首頁 > 物聯(lián)網(wǎng)與傳感器 > 設(shè)計應(yīng)用 > 數(shù)字形態(tài)學(xué)濾波器與智能車路徑記憶

數(shù)字形態(tài)學(xué)濾波器與智能車路徑記憶

作者:李剛 李蒙 何鎏 天津大學(xué)精密儀器與光電子工程學(xué)院 時間:2009-06-19 來源:電子產(chǎn)品世界 收藏

  數(shù)學(xué)形態(tài)濾波的快速算法

本文引用地址:http://www.2s4d.com/article/95469.htm

  由于數(shù)學(xué)形態(tài)濾波器只由加法、減法和比較運算構(gòu)成,其運算相對簡單,因此,它很適合于在計算功能相對較弱的單片機上應(yīng)用并能取得很好的效果。以往單片機由于受存儲容量、計算速度及字長的限制而使大多數(shù)的數(shù)字濾波器較難實現(xiàn),而形態(tài)濾波器則為單片機應(yīng)用數(shù)字濾波器代替以往的模擬濾波器提供了一條新的途徑。

  為了進一步提高形態(tài)濾波器的處理速度,可采用文獻[5]給出的一種合并計算的方法。以開運算為例,開運算是由一個腐蝕運算后接著一個膨脹運算得到的。一般的方法是首先對一段數(shù)據(jù)先進行腐蝕運算,然后,再回到這段數(shù)據(jù)的起始地址,重新進行膨脹運算,最后得到開運算的結(jié)果。本文提出了只對這段數(shù)據(jù)運算一遍,便可得到最后運算結(jié)果。下面簡要介紹一下它的實現(xiàn)方法。

  由腐蝕的定義可知,欲計算f(n)的腐蝕值,需要知道該點前w(w為結(jié)構(gòu)元素的寬度)點的數(shù)據(jù);而要計算f(n)膨脹后的結(jié)果,則需要知道該點后w點的數(shù)據(jù)。由于運算是一個腐蝕運算接著一個膨脹運算后得到的,在長度為L的數(shù)據(jù)中只有從第w點到第(L-w+1)點,才可以得到開運算的結(jié)果。

  如圖6所示,我們定義一個模板序列,該序列的長度和結(jié)構(gòu)元素的寬度相同。該模板的初始值由前w個點的腐蝕值組成。以第n點為例,沿該點向前的方向?qū)δ0逍蛄械闹颠M行膨脹運算,運算的結(jié)果即為該點的開運算的結(jié)果。同時,沿該點向后的方向繼續(xù)進行腐蝕運算,得到第(n+1)點的腐蝕值。將(n+1)點的腐蝕值作為模板序列的最后一個點,并將模板序列前(w-1)點順次向前移動一個位置。更新后的模板值即可用來做 (n+1)點的膨脹運算,得到在(n+1)點的開運算值。如此繼續(xù)下去,就可完成全部的開運算。在做閉運算也可采用類似的方法來提高計算的速度。

  這樣,對長度為N的一段數(shù)據(jù),用M個零作為其結(jié)構(gòu)元素進行處理時,當采用一般方法進行計算,需要進行2×M×N次的比較運算。而當采用快速算法時,能夠在比較最大值的同時得到最小值,減少(N-M+1)×M次比較運算,使程序的執(zhí)行速度提高了近一倍,而且,由于采用這種快速算法,可以實現(xiàn)信息的實時處理,很大程度上方便了第二圈控制策略的制定,因此,它使得形態(tài)濾波這種方法更加適合應(yīng)用于路徑信息的處理中。

  實驗及結(jié)論

  通過對不同傳感器方案(光電管和CCD)的在不同賽道多次實驗發(fā)現(xiàn),對于光電管方案和CCD方案的,賽道記憶算法都能一定程度上提高第二圈速度。采用算法處理賽道記憶數(shù)據(jù)后,不但行駛的穩(wěn)定性、準確性有了較大的提升,而且沒有大幅增加MCU的資源消耗,同時可以支持復(fù)雜的控制策略。上述方案具有很強的通用性,適用于不同傳感器方案、不同控制算法的智能車。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉