问题标签 [wavelet-transform]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
435 浏览

matlab - 修改小波系数 - 使用 `wavedec2` 和 `waverec2` MATLAB 的函数

我是小波变换的新手。我正在尝试使用小波变换来分解图像,然后修改系数,这样在最终图像中只保留前 15 个系数,例如用于图像压缩(暂时不考虑质量)。

我需要帮助来进一步处理这个问题。到目前为止,我的代码看起来像这样 -

我有 1 级和 2 级的近似图像,以及 1 级和 2 级的细节分量。如果我需要保留近似和细节的前 15 个系数,然后使用 waverec2() 重新组合它们,我该怎么做关于它?

任何帮助表示赞赏。

提前致谢。

0 投票
1 回答
4140 浏览

wavelet - Python package for maximal overlap discrete wavelet transform(MODWT)

I have to use python to reproduce results from a paper where MODWT is used. I'm currently using pywt and it only has stationary wavelet transform(SWT). I research a little bit and it seems there is currently no package for MODWT and I also find that many say SWT and MODWT are the same thing. But the results from MODWT using MATLAB and SWT from python are different. Is there any package in python that I can use to perform MODWT directly? Or could I achieve the results in MODWT using SWT?

0 投票
0 回答
332 浏览

matlab - 2级小波LeGall 5/3 2D变换的系数范围

如标题所示,如果输入矩阵的值在范围内,我对 Wavelet LeGall 5/3 的系数范围(必须准确地使用这个滤波器)2D 变换(仅适用于 8*8 块)感到困惑从 0 到 255。

对于公式,链接在这里:Wavelet LeGall 5/3

这是我现在所做的:

  1. 所有值减 128(更容易计算低频值,见下文);

  2. 在水平方向进行变换。这将在所有行中生成所有系数:前 4 个是低频,后 4 个是高频。很容易找到高频的范围是-255到+255(输入范围的两倍)。低频范围实际上是-192到+192(1.5*输入范围)。

  3. 在垂直方向进行变换。这将在垂直方向上做同样的事情。并且产生了四个块:LL(lowlow),LH(low high),HL,HH。很容易计算出 HH 的范围最大:-511 到 +511,LL 的范围是 1.5*1.5 = 2.25 倍输入范围(-128 到 +127)。

那么,问题来了。如果我再次为 LL 块做这个小波怎么办?理论上,LL块的HH(第二级系数)的范围应该是LL范围的4倍,即输入范围(-128到+127)的10倍,即-1280到+1270。

但是,我尝试了很多次随机计算,最大值从不超过-511到+511(见最后的代码)。我猜这是因为无法达到理论值,因为所有计算都是基于前一个计算的。但这个看似简单的问题,我很难从理论上证明。那么有人可以帮我出去吗?

我使用的代码(将两个文件放在一个目录中并在任何时候运行测试文件,但最大值不会超过 512...):

  1. waveletlegall53 的功能:

    /li>
  2. 测试 .m 文件:

    /li>
0 投票
0 回答
207 浏览

matlab - 如何从现有信号创建小波变换?

我在时域中有一个超过 4500 个样本的信号。从这个信号中,我提取了以下签名:

在此处输入图像描述

使用(在 matlab 中)可以看到的代码,我已经设法从这个签名中创建了一个小波变换。

创建小波后,我尝试绘制它,它成功了,如下所示:

在此处输入图像描述

现在一切都很好。

当我尝试使用 matlab 中的 wavemenu 工具查看小波时,它给了我以下错误:

我的问题是,我在这个过程中做错了吗?甚至可以在matlab中获取信号并将其转换为小波吗?

预先感谢您的帮助。:)

0 投票
1 回答
230 浏览

matlab - What is the meaning of the parameter coif1 in wavelet decomposition?

I have code for wavelet transform. Here they are using coif1 to decompose the signal. Can anybody explain what is the use of coif1? and what does it mean?

This is the code:

0 投票
0 回答
134 浏览

r - R中haar变换背后的归一化过程

我为(使用小波包)运行 haar 变换,[9,7,3,5]但我不知道如何实现输出系数。我相信未归一化的结果将是:[6,2,1,-1]. 根据我的阅读,归一化是通过将每个系数乘以 来完成的2^(-j/2),但情况并非如此。

0 投票
1 回答
85 浏览

image - 如何仅用小波变换的水平系数重建图像?

我正在尝试仅使用平稳小波变换的水平系数来重建输入图像。

iswt2/reconsLOC(第 153 行) 中的错误
ca(sR,sC), ch(sR,sC,k), cv(sR,sC,k), cd(sR,sC,k), ... (第 122 行)
中的错误iswt2a = reconsLOC(a,h,v,d);

我该如何解决这个问题?

0 投票
1 回答
386 浏览

python - 为小波变换选择*最佳*带宽

转换一维连续信号数据并为给定的带宽/比例生成一系列转换。现在如何自动选择给定范围内的最佳带宽或规模?

示例:图表中,深蓝色线为原始一维连续信号数据。每隔一条曲线是该数据在带宽范围内的转换 [10, 20, 30, 40, 50]。对于这个例子,如何自动选择最能捕捉曲线变化的带宽

Python注意:关于如何计算“最佳”带宽的答案可以是具体的或非常笼统的。

在此处输入图像描述

0 投票
1 回答
716 浏览

matlab - how to develop LeGall 5/3 filter for reversible watermarking?

I want to implement a reversible image watermarking that use IWT transform and filter 5/3. at first I thing this filter is cdf 5.3 that it is in matlab. but after running the code I found out that this is not true and filter 5/3 is different. after search that I had, I found this filter is legall 5/3 that used in JPEG2000. now I should implement filter legall 5/3 at first and then choose subband HL1 to embedding my data for watermarking. I am a little confused how to implement this filter and use of HL.

0 投票
1 回答
6596 浏览

python - 在python中使用小波变换进行图像融合

如何使用小波变换融合 2 张图像。有几种方法可用,例如主成分分析,高通滤波,IHS等。我想知道如何使用小波变换进行融合。我知道背后的理论,并想知道如何在 Python 中实现它。

这是基于小波变换的图像融合的链接https://www.slideshare.net/paliwalumed/wavelet-based-image-fusion-33185100