基於LabVIEW和Matlab混合編程的小波去噪方法

2021-01-10 電子產品世界

信號降噪是信號處理領域的經典問題之一。傳統的降噪方法主要包括線性濾波方法和非線性濾波方法,濾波器在工作時對信號進行篩選,只讓特定頻段的信號通過。當信號中的有用成分和噪聲成分各佔不同頻帶,可以將噪聲成分有效除去。但如果信號和噪聲的頻譜重疊,則經典濾波器將不起作用。這些濾波器按濾波的頻段可分為高通、低通及帶通濾波器,根據設計濾波器的思想可以把濾波器分為巴特沃斯濾波器、貝塞爾濾波器、橢圓濾波器及切比雪夫濾波器等。

此外,傳統的濾波器降噪方法的不足在於使信號變換後熵增加,無法刻畫信號的非平穩性並且無法得到信號的相關性。為了克服上述缺點,採用小波變換來解決信號降噪的方法應用越來越廣泛。但是,由於小波變換數學理論較深,對於初學者而言,使用傳統的C語言等編程方法,編程難度很大。本文採用LabVIEWMatlab 混合編程的方法,將LabVIEW 完美的圖形編程技術和Matlab強大的數學解算功能結合起來,實現了小波降噪的數學建模和信號圖像顯示。

1 小波變換原理

小波變換的理論主要包括連續小波變換、離散小波變換和多分辨分析。

1.1 連續小波變換

按如下方式平移和伸縮而生成的函數族 {ψ a,b } 叫分析小波或連續小波(Continue Wavelet Transform,CWT),ψ 稱為基本小波。

任意函數在某一尺度a 、平移點b 上的小波變換係數,實質上表徵的是在b 位置處,時間段2aΔψ 上包含在中心頻率為ω* a ,帶寬為2Δψ - /a 頻窗內的頻率分量大小,隨著尺度a 的變化,對應窗口中心頻率為ω* a 及窗口寬度2Δψ - /a 也發生變化。

1.2 離散小波變換

在實際應用中,一般分析的信號都是經過離散採樣後得到的離散時間序列,需要把連續小波及其變換離散化,以進行數位訊號處理。具體作法是通過對其伸縮尺度因子a 和平移因子b 的採樣而離散化。

式中:m,n 分別稱為頻率範圍指數和時間步長變化指數。

在連續小波變換Wψ f (a,b) 中,由於a,b 是連續變化的,它是高冗餘的,只要母小波ψ(t) 滿足容許條件,則可由Wψ f (a,b) 完全恢復原信號f (t) .對於離散小波變換,由於對a,b 進行了離散採樣,為了使Wψ f (m,n) 包含足夠的信息以恢復原信號f (t) ,就需要對變換使用的母小波作出更嚴格的限制。

在Hilbert空間H中的一族函數{- }jj ∈ J稱為是一個框架,如果存在A,B ∈(0,∞) 時,對於所有f ∈ H,有:

2 小波降噪原理

小波變換具有低熵性、多解析度特性、去相關性、選基靈活性的特點,因此小波降噪得到更廣泛的應用。其中閾值去噪方法是一種實現簡單、結果較好的小波降噪方法。

閾值去噪方法就是對小波分解後的各層係數中模大於和小於某閾值的係數分別處理,然後對處理完的小波係數進行反變換,重構經去噪的信號。在現實情況下,有用的信號通常是低頻信號,而噪聲信號通常是高頻信號,在去噪的過程中,通常對小波分解的高頻係數進行閾值化後重構信號。閾值的獲取是小波去噪的關鍵,本文中的小波去噪模塊藉助於Matlab小波分析工具箱中的小波分析函數獲取閾值。

Matlab 中實現信號閾值獲取的函數有ddencmp、thselect、wbmpen 和wdcbm,本文採用了wbmpen.小波去噪的部分Matlab代碼如下:

3 LabVIEW 和Matlab 混合編程方法

3.1 LabVIEW簡介

LabVIEW(Laboratory Virtual Instrument Engineer-ing)是NI(National Instruments)公司的產品,是一種圖形化的程式語言,它廣泛地被工業界、學術界和研究實驗室所接受,視為一個標準的數據採集和儀器控制軟體。這是一個功能強大且靈活的軟體,利用它可以方便地建立自己的虛擬儀器,其圖形化的界面使得編程及使用過程都生動有趣。利用LabVIEW,可產生獨立運行的可執行文件。

圖形化的程序語言,又稱為「G」語言。使用這種語言編程時,基本上不寫程序代碼,取而代之的是流程圖。它儘可能利用了技術人員、科學家、工程師所熟悉的術語、圖標和概念,因此,LabVIEW 是一個面向最終用戶的工具,提供了實現儀器編程和數據採集系統的便捷途徑。使用它進行原理研究、設計、測試並實現儀器系統時,可以大大提高工作效率。

3.2 LabVIEW調用外部代碼的方法

LabVIEW 的Functions 模塊內Advanced 中CIN 節點,用戶可將需要調用的外部代碼編譯成LabVIEW 所能識別的格式與此節點相連,當此節點執行時,Lab-VIEW 將自動調用與此節點相連的外部代碼,並向CIN傳遞特定的數據結構。

使用CIN技術,用戶可向CIN傳遞任意複合的數據結構。由於LabVIEW 中數據的存儲格式遵循了C語言中數據的存儲格式,所以通常情況下,使用CIN 可獲得較高的程序效率。

3.3 利用LabVIEW的圖形界面編程方法

為了更直觀地顯示信號波形,採用LabVIEW 開發了圖形顯示界面,用以顯示原始信號波形和消噪後信號波形。圖1是圖形顯示界面的LabVIEW編程代碼。圖2是採用LabVIEW和Matlab混合編程的代碼。

4 應用實例

本文採用小波去噪方法對兩種不同的振動衝擊信號進行了分析處理,如圖3和圖4所示。

從圖形顯示結果可以看出,經小波降噪後,濾除了噪聲幹擾信號,各激勵響應信號更加明顯,這對於後期的信號分析處理奠定了良好基礎。

5 結語

小波去噪方法相比於傳統的濾波器方法,在處理非平穩信號時具有獨特的優勢,有助於提高信號分析處理精度。而採用LabVIEW 和Matlab 混合編程的方法,則降低了編程難度,可以大大提高工作效率,是一種實現儀器編程的便捷途徑。

相關焦點

  • 基於LabVIEW和Matlab混合編程的小波降噪方法
    本文分析了傳統濾波器方法在處理非平穩信號時的缺點,研究了小波去噪的原理和方法,研究了利用LabVIEW 和Matlab混合編程的方法,將LabVIEW完美的圖形編程技術和Matlab強大的的數學解算功能結合起來,實現了小波降噪的數學建模和信號圖像顯示。通過對振動衝擊信號的濾波處理,表明了小波降噪方法在處理非平穩信號時的有效性。
  • 小波去噪方法及步驟_小波去噪方法的比較
    本文主要介紹小波分解與重構法、非線性小波變換閾值法、平移不變量小波法以及小波變換模極大值法這4種常用的小波去噪方法。將它們分別用於仿真算例的去噪處理,並對這幾種方法的應用場合、去噪性能、計算速度和影響因素等方面進行比較。 選擇了Matlab軟體中的仿真信號Blocks作為原始信號,信號長度(即採樣點數)N=2048,如圖1a所示。
  • 基於新閾值函數的小波閾值去噪算法
    小波變換以其多解析度分析的特性,在時頻域內良好的表徵信號的能力以及大小固定形狀可變的窗口等特點,廣泛應用於圖像去噪中,並得到了很好的去噪效果。而小波閾值去噪法是小波分析法在圖像去噪眾多應用中最常用的一種方法,利用閾值處理後的小波係數進行小波反變換重構出去噪後的結果圖像。
  • 小波閾值去噪的基本原理_小波去噪閾值如何選取
    小波閾值去噪的基本原理 小波閾值去噪的基本思想是先設置一個臨界閾值λ,若小波係數小於λ,認為該係數主要由噪聲引起,去除這部分係數;若小波係數大於λ,則認為此係數主要是由信號引起,保留這部分係數,然後對處理後的小波係數進行小波逆變換得到去噪後的信號。
  • 電弧信號小波去噪分析
    利用小波去噪方法分析電弧信號是小波分析應用於實際工程的重要方面。波變換具有多解析度的特點,在時域和頻域都具有表徵信號局部特徵的能力,適合分析非平穩信號,可以由粗及精地逐步觀察信號。例如:①在信號分析方面,通過對信號的分解和重構提取特徵信號、對原始信號進行濾波、去噪、壓縮和傳遞等;②在圖像處理領域,小波分析展示出獨特的優勢,尤其在圖像壓縮、診斷、識別和分類等方面取得巨大成效;③在數學領域,小波分析可以快速有效地求解微積分方程、構造曲線曲面等;④在醫學成像方面,小波分析的應用極大地縮短了B超、核磁共振以及CT的成像時間,並提高了解析度。
  • 小波閾值去噪的改進_改進的小波閾值函數
    1、小波閾值去噪的改進 傳統的小波閾值圖像去噪方法可以去除圖像的部分噪聲,有較好的效果,但是由於閾值函數和閾值選取方式自身存在的問題,設置的閾值並不能完全去除圖像噪聲,還會由於閾值函數的問題而使去噪後的圖像視覺效果不佳,這就需要對目前的閾值函數和閾值選取方式進行改進,得到可以更好地去除圖像噪聲的小波閾值去噪方法。
  • 一種基於小波變換的圖像壓縮方法與實現
    小波理論在近三十年發展迅速,成為圖像處理的核心理論。圖像壓縮的國際新標準JPEG2000就是採用基於小波理論的新一代壓縮技術。2 小波變換2.1 小波及相關概念小波是一類在有限區間內快速衰減到0的函數。小波分析就是將信號分解為原小波(也叫小波基)函數不同位移和膨脹的小波。而小波變換就是採用小波理論,將原始信號進行處理,使其具有某些更適合後續處理的時頻特性。
  • 圖像去噪算法的優點和缺點
    3、PCA 降噪 4、K-SVD 降噪 5、非局部均值降噪 6、WNNM 降噪 7、基於主成分分析和雙邊濾波的圖像降噪算法 8、小波變換 9、小波閾值降噪 10、Contourlet 變換 11、基於平移不變 Contourlet 變換的 SAR 圖像降噪**
  • 幾種小波濾波方法比較
    簡介:小波的多解析度特性是小波去噪能夠實現的基礎。通過Mallat算法我們可以將信號中各種不同的頻率成分分解開來,從而實現信號的按頻帶處理方式。
  • 基於小波包變換和壓縮感知的人臉識別算法
    1 基本理論  1.1 小波變換的基本理論  小波變換是一種變換分析方法,它將原始圖像與小波基函數進行內積運算,圖像經小波分解後可得到一個近似分量和三個方向的細節分量,三個細節分量分別具有高度的局部相關性,而整體相關性能最大限度地消除。
  • 基於矢量空間投影的深層語音去噪
    1.簡介一個多世紀以來,信號去噪一直是多媒體中的一個問題,其應用範圍包括聲學語音處理、圖像處理、地震數據分析和其他模態。對於每種應用的方法已經發展了幾十年,包括傳統的統計信號處理,如Wiener和卡爾曼濾波,小波理論以及矩陣分解的特定實例。 雖然對於局部和廣義靜止信號都有效,即使歷史悠久,但由於其算法容量,這些努力在更動態和更野性的噪聲集中取得了較少的成功。
  • 基於改進閾值的小波分解和經驗模態分解的人體脈搏信號濾波算法研究
    而且,受到不同的人體內生理狀況、外在環境條件和數據採集方法的影響,脈搏信號通常都有很大差異。一般地,影響脈搏信號的噪聲可分為50Hz工頻幹擾、高頻隨機幹擾、人體微小動作引起的幹擾(例如人體呼吸、肌肉收縮等)。而脈搏信號的頻率主要集中分布在0.5~5Hz[2],因此,脈搏信號中的有用信號經常和低頻噪聲混雜在一起。
  • 基於自適應提升小波變換的電能質量檢測節點
    系統總體設計思路是將數據採集單元採集到的數據進行自適應提升小波去噪處理,提取PQD信號的特徵矢量,再通過支持向量機進行電能質量擾動類型的識別,最後通過無線收發模塊將擾動類型、擾動波形發送給WSN網關,如圖1所示。
  • 基於FPGA 的二維提升小波變換IP核設計
    提出了一種高效並行的二維離散提升小波(DWT)變換結構,該結構只需要7 行數據緩存,即可實現行和列方向同時進行濾波變換。採用一種基於CSD 編碼和優化的移位加操作實現常係數乘法器,整個小波變換插入多級流水線寄存器,加快了處理速度。
  • 基於FPGA實現多種小波變換
    引 言 基於提升框架的小波變換方法,利用FPGA 可編程特性可實現多種小波變換。在結構設計中採用由下至上的設計方法,每個提升步驟都由一些可編程的參數來表示,保證了每個步驟均可重構。這些參數包括用於表示數據的位數和每個內部數學模塊的通道深度。在邏輯綜合時按不同小波的要求,改變參數可得到不同的結果。以圖像處理中常用的(5 ,3)濾波器為例說明依靠FPGA 的重組特性實現濾波器的小波變換核方法。實驗結果表明,利用FPGA 設計的提升小波變換核能滿足不同場合和不同運行的要求。
  • 小波變換進行圖像壓縮matlab原始碼源程序
    小波變換進行圖像壓縮matlab原始碼源程序
  • 基於FPGA 的多用途提升小波變換核
    引 言本文引用地址:http://www.eepw.com.cn/article/189802.htm基於提升框架的小波變換方法,利用FPGA 可編程特性可實現多種小波變換。
  • 基於LabVIEW與Matlab混合編程的雷達回波起伏特性模
    l引 言本文引用地址:http://www.eepw.com.cn/article/186975.htm  近年來隨著電子技術和計算機數字模擬技術的飛速發展
  • 小波變換在差動熱分析儀信號處理中的應用
    由於小波分析方法是在傅立葉變換基礎上發展起來的,具有多解析度的特點,在去噪方面有明顯的優勢,既能有效地去除噪聲,又能較好地保留信號的突變部分,因此,在LabVIEW環境下,結合MATLAB小波工具箱提供的小波分析功能函數,將5種可用於噪聲處理的小波函數對熱分析信號DSC曲線進行了預處理,並對處理結果進行了分析。
  • MATLAB應用在基於噪聲檢測的圖像均值去噪法
    、表達信息和傳遞信息的重要手段。在高度信息化條件下的今天,數字圖像越來越得到普及和應用。  然而,人們在獲取和傳輸數字圖像的同時,難免於圖像數據被外界噪聲所汙染,妨礙了人們對圖像信息的理解。由此,圖像去噪技術應運而生。圖像去噪,即在儘可能地不損失原圖像細節的前提下,去除圖像中無關的噪點。