c++ - 表示小波的数据结构

标签 c++ algorithm wavelet

我正在用 C++ 编写图像的小波表示形式,以便快速访问。小波适合的数据结构是什么?

这是一个典型的小波,由不同尺寸的图像组成。这取决于高度和方向的数量。

1) 高通:512x512

2) 方向子带:256x256 256x256 256x256 256x256

3) 其他子带:128x128 128x128 128x128 128x128

...

4) 低通:8x8

我应该使用递归数据结构吗?或者简单地将所有内容转换为一维数组?

最佳答案

答案是:这取决于情况。从编程抽象的角度来看,为每个子图像创建单独的数组可能是最简单的方法。我会将它们设为一维数组,您可以在抽象中将其作为二维数组进行访问。与之相反的冲动是分配一个大数组并分割其中的各个部分,本质上是进行自己的内存管理。许多 C++ 程序大部分时间都花在 malloc()/free() 上,因此这看起来很有吸引力,但我认为这不值得。把时间花在算法上,而不是工具上。稍后,如果您需要调整它以获得最后一点性能,您可以这样做。

关于c++ - 表示小波的数据结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14609791/

相关文章:

algorithm - 将图节点分布到桶中

c++ - 函数返回的字符串文字的生命周期

algorithm - 考试中的哈希表

algorithm - 从空间优化的 0/1 背包实现中重建项目列表

r - 连续小波变换

python - 我们是将傅里叶/小波变换应用于整个时间序列还是仅应用于预测训练集?

c++ - 修改 C++ unordered_map 中复杂类型的值

C++ 生成器 TtcpClient

C++。 std::condition_variable 和多个等待线程

python - 如何从时间序列信号中解卷积阶跃函数