離散小波變換(DWT)的原理介紹和說明請(qǐng)參考文章: 【DWT筆記】傅里葉變換與小波變換 這篇文章寫的通俗易懂,小白也能看懂。
一、小波變換的原理
1.1 小波變換簡(jiǎn)介
離散小波變換(DWT)的原理介紹和說明請(qǐng)參考文章:【DWT筆記】傅里葉變換與小波變換 這篇文章寫的通俗易懂,小白也能看懂。簡(jiǎn)單從上面的參考文章中提取關(guān)鍵信息:
1、圖像信號(hào)的低頻部分(低通帶)表示圖像的基本信息(平滑信息),而高頻部分(高通帶)表示圖像的細(xì)節(jié)信息。
2、圖像中的高頻部分一般持續(xù)的時(shí)間是比較短的,一般是以短時(shí)突變或者尖峰的形式出現(xiàn),如圖像的邊緣信息和一些噪點(diǎn)信息。而低頻信息在大部分地方存在,反應(yīng)在一些背景或內(nèi)容信息。這樣我們?cè)诜治鲂盘?hào)的低頻部分的時(shí)候,只需要較大的頻率分辨率和較小的時(shí)域分辨率就能夠很好的體現(xiàn)低頻的信息,而在高頻部分,就需要較大的時(shí)間分辨率和較小的頻率分辨率就能夠很好的體現(xiàn)高頻的信息。
3、在離散小波變換中,濾波器將在不同的尺度條件下截?cái)嘈盘?hào)的某些頻率成分:信號(hào)通過不同的高通濾波器得到一系列的信號(hào)高頻成分,通過不同的低通濾波器得到一系列的低頻成分,這樣便能分析信號(hào)的不同頻率成分。
1.2 CWT和DWT的原理
小波變換利用一個(gè)具有快速衰減性和震蕩性的函數(shù)作為母函數(shù),通過尺度因子a(也稱為伸縮因子)和平移因子t對(duì)母函數(shù)進(jìn)行伸縮和平移得到一個(gè)函數(shù)族(稱為小波基函數(shù))。尺度因子和平移因子是小波基最重要的兩個(gè)參數(shù),也代表了小波變換的基本思想。
在一定條件下,任意能量有限的信號(hào)可以按照其函數(shù)族進(jìn)行時(shí)–頻分解,基函數(shù)在時(shí)–頻相平面上具有可變的時(shí)間–頻率窗口,可以適應(yīng)不同分辨率的需求。
連續(xù)小波變換(CWT)是通過不斷改變窗口的尺度計(jì)算完成的:在時(shí)域移動(dòng)窗口函數(shù),然后與信號(hào)做卷積運(yùn)算。
在離散小波變換(DWT)中,濾波器將在不同的尺度條件下截?cái)嘈盘?hào)的某些頻率成分:信號(hào)通過不同的高通和低通濾波器得到一系列的高頻和低頻成分,這樣便可以分析不同的頻率成分。
二、傅里葉變換與DWT的比較
基本的傅里葉變換不存在分辨率的問題,因?yàn)楦道锶~變換在時(shí)域里面頻域的分辨率為0,同樣在頻域里面,時(shí)域的分辨率也為0,所以說,傅里葉變換其實(shí)沒有分辨率。
短時(shí)傅里葉變換是通過加窗的方式對(duì)時(shí)域不同時(shí)間段的信號(hào)進(jìn)行分析,但是由于窗長(zhǎng)是固定的,所以,分辨率是固定的,并且根據(jù)窗長(zhǎng)的選擇在時(shí)域和頻域的分辨率上是一個(gè)矛盾。
小波變換可以根據(jù)尺度的變換和偏移在不同的頻段上給出不同的分辨率,這在實(shí)際中是非常有用的。
三、Matlab實(shí)現(xiàn)圖像的二維小波變換
3.1 dwt2()函數(shù)介紹
參考博客:小波學(xué)習(xí)筆記(圖像的分解與重構(gòu))——MATLAB
Matlab實(shí)現(xiàn)二維小波變換的函數(shù)為:
[CA,CH,CV,CD] = dwt2(X,'wname')
其中X為輸入的圖像,'wname’是小波名字。如常用的 ‘wname’='db1’小波濾波器,db1表示小波的消失矩為1,小波濾波器的長(zhǎng)度為2*1=2。
輸出變量為:
CA:圖像的低頻信息,刻畫原始圖像的逼近信息。
CH:圖像水平方向的高頻信息,刻畫原始圖像的橫向細(xì)節(jié)。
CV:圖像豎直方向的高頻信息,刻畫原始圖像的垂直細(xì)節(jié)。
CD:圖像在對(duì)角線方向的高頻信息,刻畫原始圖像的對(duì)角線上的細(xì)節(jié)。
DWT中的采樣間隔需要滿足Nyquist定理,一般默認(rèn)采用二倍隔點(diǎn)采用,因此經(jīng)過DWT的圖像的長(zhǎng)和寬均變?yōu)樵瓉淼?1/2
圖像小波分解示意圖(三層) :

3.2 dwt2()的使用
3.2.1 輸入和輸出圖像
輸入圖像(521*521):
低頻 CA(261*261):
水平方向的高頻 CH(261*261):
垂直方向的高頻 CV(261*261):
垂直方向的高頻 CD(261*261):
文章來源:http://www.zghlxwxcb.cn/news/detail-442623.html
3.2.2 Matlab代碼
clear all;
close all;
clc;
imagePath='source_images\3.jpg';
image_color=imread(imagePath);
image_gray=rgb2gray(image_color);
image_double=double(image_gray);
[CA,CH,CV,CD]=dwt2(image_double,'db1');
imwrite(uint8(CA),'Results/CA.jpg');
imwrite(uint8(CH),'Results/CH.jpg');
imwrite(uint8(CV),'Results/CV.jpg');
imwrite(uint8(CD),'Results/CD.jpg');
3.2.3 實(shí)驗(yàn)總結(jié)
輸入的圖像經(jīng)過DWT分解為4個(gè)尺寸變?yōu)樵瓐D1/4的圖像,其中包含一個(gè)低頻圖像,3個(gè)高頻圖像。根據(jù)這2張圖像可以做后續(xù)的處理。文章來源地址http://www.zghlxwxcb.cn/news/detail-442623.html
到了這里,關(guān)于Matlab 離散小波變換函數(shù) dwt2() 原理介紹與實(shí)驗(yàn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!