前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >matlab中wavedec2,wavedec2函数详解[通俗易懂]

matlab中wavedec2,wavedec2函数详解[通俗易懂]

作者头像
全栈程序员站长
发布2022-09-15 11:09:49
2.6K0
发布2022-09-15 11:09:49
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

很多人对小波多级分解的wavedec2总是迷惑,今天就详释她!

wavedec2函数:

1.功能:实现图像(即二维信号)的多层分解,多层,即多尺度.

2.格式:[c,s]=wavedec2(X,N,’wname’)

[c,s]=wavedec2(X,N,Lo_D,Hi_D)(我不讨论它)

3.参数说明:对图像X用wname小波基函数实现N层分解,

这里的小波基函数应该根据实际情况选择,具体选择办法可以搜之或者 help WFILTERS

.输出为c,s.

c为各层分解系数,s为各层分解系数长度,也就是大小.

4.c的结构:c=[A(N)|H(N)|V(N)|D(N)|H(N-1)|V(N-1)|D(N-1)|H(N-2)|V(N-2)|D(N-2)|…|H(1)|V(1)|D(1)]

可见,c是一个行向量,即:1*(size(X)),(e.g,X=256*256,then

c大小为:1*(256*256)=1*65536)

A(N)代表第N层低频系数,H(N)|V(N)|D(N)代表第N层高频系数,分别是水平,垂直,对角高频,以此类推,到H(1)|V(1)|D(1).

每个向量是一个矩阵的每列转置的组合存储。原文:Each vector is the vector

column-wise storage of a matrix. 这是你理解A(N) H(N) | V(N) | D(N)

的关键。

很多人对wavedec2和dwt2的输出差别不可理解,后者因为是单层分解,所以低频系数,水平、垂直、对角高频系数就直接以矩阵输出了,没有像wavedec2那样转换成行向量再输出,我想你应该不再迷惑了。

a4c26d1e5885305701be709a3d33442f.png
a4c26d1e5885305701be709a3d33442f.png

那么S有什么用呢?

s的结构:是储存各层分解系数长度的,即第一行是A(N)的长度(其实是A(N)的原矩阵的行数和列数),

第二行是H(N)|V(N)|D(N)|的长度,

第三行是

H(N-1)|V(N-1)|D(N-1)的长度,

倒数第二行是H(1)|V(1)|D(1)长度,

最后一行是X的长度(大小)

a4c26d1e5885305701be709a3d33442f.png
a4c26d1e5885305701be709a3d33442f.png

从上图可知道:cAn的长度就是32*32,cH1、cV1、cD1的长度都是256*256。

到此为止,你可能要问C的输出为什么是行向量?

1、没有那一种语言能够动态输出参数的个数,更何况C语言写的Matlab

2、各级详细系数矩阵的大小(size)不一样,所以不能组合成一个大的矩阵输出。

因此,把结果作为行向量输出是最好,也是唯一的选择。

另:MATLAB HELP

wavedec2 里面说得非常明白了,呵呵.

wavedec2

Multilevel 2-D

wavelet decomposition Syntax [C,S] =

wavedec2(X,N,’wname’)

[C,S] = wavedec2(X,N,Lo_D,Hi_D)

Description wavedec2 is a two-dimensional wavelet analysis

function.

[C,S] =

wavedec2(X,N,’wname’) returns the wavelet decomposition of the

matrix X at level N, using the wavelet named in string ‘wname’ (see

wfilters for more information).

Outputs are the

decomposition vector C and the corresponding bookkeeping matrix S.

N must be a strictly positive integer (see wmaxlev for more

information).

Instead of giving the

wavelet name, you can give the filters. For [C,S] =

wavedec2(X,N,Lo_D,Hi_D), Lo_D is the decomposition low-pass filter

and Hi_D is the decomposition high-pass filter.

Vector C is organized

as C = [ A(N) | H(N) | V(N) | D(N) | … H(N-1) | V(N-1) | D(N-1) |

… | H(1) | V(1) | D(1) ]. where A, H, V, D, are row vectors such

that A = approximation coefficients H = horizontal detail

coefficients V = vertical detail coefficients D = diagonal detail

coefficients Each vector is the vector column-wise storage of a

matrix.

Matrix S is such that

S(1,:) = size of approximation coefficients(N) S(i,:) = size of

detail coefficients(N-i+2) for i = 2, …N+1 and S(N+2,:) =

size(X)

Examples% The current

extension mode is zero-padding (see dwtmode).

% Load original

image. load woman; % X contains the loaded image.

% Perform

decomposition at level 2 % of X using db1. [c,s] = wavedec2(X,2,’db1′);

% Decomposition

structure organization. sizex = size(X)

sizex =

256

256

sizec = size(c)

sizec =

1

65536

val_s =

s

val_s =

64

64 64

64 128

128 256

256

Algorithm For images, an algorithm similar to the

one-dimensional case is possible for two-dimensional wavelets and

scaling functions obtained from one-dimensional ones by tensor

product. This kind of two-dimensional DWT leads to a decomposition

of approximation coefficients at level j in four components: the

approximation at level j+1, and the details in three orientations

(horizontal, vertical, and diagonal). The following chart describes

the basic decomposition step for images: So, for J=2, the

two-dimensional wavelet tree has the form See Alsodwt, waveinfo,

waverec2, wfilters, wmaxlev ReferencesDaubechies, I. (1992), Ten

lectures on wavelets, CBMS-NSF conference series in applied

mathematics. SIAM Ed. Mallat, S. (1989), “A theory for

multiresolution signal decomposition: the wavelet representation,”

IEEE Pattern Anal. and Machine Intell., vol. 11, no. 7, pp.

674-693. Meyer, Y. (1990), Ondelettes et opérateurs, Tome 1,

Hermann Ed. (English translation: Wavelets and operators, Cambridge

Univ. Press. 1993.

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/163763.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档