超聲波流量計低功耗高精度設(shè)計的探討 四十六
快速算法的基本想法是:原始數(shù)據(jù)序列上中值濾波的滑窗在移動過程中,只需刪除窗內(nèi)最早的元素,加入窗后的新元素,即成為下一窗的內(nèi)容。下一窗的中值濾波實現(xiàn)可利用上次排序的結(jié)果,用有序序列快速查找算法求得新元素的插入位置,根據(jù)它們之問的關(guān)系,用一定的算法調(diào)整新序列的排序結(jié)果,取出新序列的中間值即可實現(xiàn)中值濾波。新元素插入與最早的元素刪除的實現(xiàn)采用獨特的數(shù)據(jù)結(jié)構(gòu),將是新元素覆蓋最早的元素,即是插入兼并了刪除。
設(shè)中值濾波窗口長度為2N+l,則此算法除了需要(2N+1)×4個Byte的時差信號的存儲空間外,還需要2x(2N+1)個Byte(一般情況2N+I<255,所以1個Byte就可以存儲一個0-255的數(shù)據(jù))的存儲單元。
設(shè)置2N+1個連續(xù)的存儲單元{w(O),w(1),⋯⋯w(2N}組成一個按照先進先出的原則組成一個循環(huán)序列用于循環(huán)存儲窗內(nèi)的數(shù)據(jù)元素,即新來的元素總是替換當(dāng)前隊列中最早存放的元素。
設(shè)置2N+1個連續(xù)的存儲單元b(0),j(1),⋯⋯s(2Ⅳ))存放排好序的元素在w序列中的下標(biāo),即若規(guī)定元素從小到大排序,則wG(0))≤wG(1))莖w(s(2))s⋯⋯sw0。
設(shè)置2N+1個連續(xù)的存儲單元{a(o),a(1),⋯⋯a(2M},依次存儲{w(0),w(1),⋯⋯w(2^D)在j序列中的對應(yīng)的下標(biāo)值,即若s(n)=f,則4(f)邗,亦即廬爺缸(f)),i--O,1,⋯ .2N.
這樣設(shè)置后s序列某一單元指向w序列中一單元,a序列元素又指向J序列單元,例如由小到大排序后w(15)是第30個元素,這三個序列中有關(guān)的元素分別為:s(30)=15,a(15)=30。
詳情請瀏覽公司網(wǎng)站的產(chǎn)品中心 http://m.sol365.cn/ 超聲波流量計