【多维定向滤波器组和表面波】表面变换:用于高效表示多维 s 的多分辨率变换(Matlab代码实现)

欢迎来到本博客❤️❤️

博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

本文目录如下:

目录

1 概述

2 运行结果

3 参考文献

4 Matlab代码实现


1 概述

文献来源:

【多维定向滤波器组和表面波】表面变换:用于高效表示多维 s 的多分辨率变换(Matlab代码实现)_第1张图片

1992年,班贝格和史密斯提出了定向滤波器组(DFB),用于2D信号的有效定向分解。由于系统的不可分离性,将DFB扩展到更高的维度,同时仍保留其吸引人的功能是一个具有挑战性且以前未解决的问题。我们提出了一个名为NDFB的新滤波器组系列,它可以通过简单高效的树形结构实现任意N维(Nges2)信号的定向分解。在三维中,所提出的NDFB的理想通带是基于矩形的金字塔,从原点向不同方向辐射并平铺整个频率空间。所提出的NDFB通过N-D冗余因子为N的迭代滤波器组实现了完美的重构。所提出的NDFB的角分辨率可以通过简单的展开规则调用更多级别的分解来迭代细化。通过将NDFB与新的多尺度金字塔相结合,我们提出了表面变换,可用于在多维数据中有效地捕获和表示类似表面的奇点 

原文摘要:

Abstract:

In 1992, Bamberger and Smith proposed the directional filter bank (DFB) for an efficient directional decomposition of 2-D signals. Due to the nonseparable nature of the system, extending the DFB to higher dimensions while still retaining its attractive features is a challenging and previously unsolved problem. We propose a new family of filter banks, named NDFB, that can achieve the directional decomposition of arbitrary N-dimensional (Nges2) signals with a simple and efficient tree-structured construction. In 3-D, the ideal passbands of the proposed NDFB are rectangular-based pyramids radiating out from the origin at different orientations and tiling the entire frequency space. The proposed NDFB achieves perfect reconstruction via an iterated filter bank with a redundancy factor of N in N-D. The angular resolution of the proposed NDFB can be iteratively refined by invoking more levels of decomposition through a simple expansion rule. By combining the NDFB with a new multiscale pyramid, we propose the surfacelet transform, which can be used to efficiently capture and represent surface-like singularities in multidimensional data

随着现代计算机和成像设备功能的增长,高分辨率 3D 甚至更高维度的体积数据越来越多地用于广泛的应用,包括生物医学成像、地震成像、河外天文学、计算机视觉以及视频处理和压缩。为了有效地分析和表示如此大量的数据,我们需要创建和使用来自各个工程领域的新工具,包括信号处理。在本文中,我们提出了一套新的工具,即N-维度定向滤波器组 (NDFB) 和表面,可以捕获和表示位于光滑表面上的信号奇异点。这种奇点通常在3D医学图像中观察到,其中图像大多是平滑的,除了在某些边界表面上,以及在视频信号中,移动物体在3-D空间/时间空间中雕刻出光滑的表面。

对于2-D信号,沿着平滑曲线捕获奇点的类似问题已经得到了广泛的研究。在不声称详尽无遗的情况下,我们想举几个例子,包括可操纵金字塔 [1]、定向滤波器组 [2]、二维定向小波 [2]、曲线 [3]、复杂小波 [4]、[5]、轮廓 [6]、带状 [7] 和剪切 [8]。在所有这些二维表示中,我们特别感兴趣的一种方法是定向滤波器组(DFB),它最初由班贝格和史密斯[2]提出,随后由几位作者[2]-[10]改进。德国足协通过l-级树结构分解,导致2l具有楔形频率分区的子带,如图1(a)所示。同时,DFB是一种非冗余变换,并提供完美的重建,即原始信号可以从其抽取的通道中精确重建。DFB的方向选择性和高效结构使其成为许多图像处理应用的有吸引力的候选者。通过将DFB与拉普拉斯金字塔相结合,Do和Vetterli [7]构建了轮廓,为稀疏图像表示提供了定向多分辨率变换。

2 运行结果

【多维定向滤波器组和表面波】表面变换:用于高效表示多维 s 的多分辨率变换(Matlab代码实现)_第2张图片

【多维定向滤波器组和表面波】表面变换:用于高效表示多维 s 的多分辨率变换(Matlab代码实现)_第3张图片

【多维定向滤波器组和表面波】表面变换:用于高效表示多维 s 的多分辨率变换(Matlab代码实现)_第4张图片 【多维定向滤波器组和表面波】表面变换:用于高效表示多维 s 的多分辨率变换(Matlab代码实现)_第5张图片

【多维定向滤波器组和表面波】表面变换:用于高效表示多维 s 的多分辨率变换(Matlab代码实现)_第6张图片

 部分代码:

%% We add Gaussian noise to the video sequence
disp(' ');
disp('Step 2: Add white Gaussian noise to the sequence.');
sigma = 20; % standard deviation
Xn = double(X) + sigma * randn(size(X));
r = input('Press to play the noisy sequence ...');
PlayImageSequence(uint8(Xn));

%% Surfacelet Denoising
disp(' ');
disp('Step 3: Apply surfacelet transform on the noisy sequence and hard-threshold the coefficients');
r = input('Press to continue ...');

disp(' ');
disp('Processing ...');

Pyr_mode = 1.5; % For better performance, choose Pyr_mode = 1. However, this setting requires more RAMs.
Xd = surfacelet_denoising_3D(Xn, Pyr_mode, sigma);
Xd(Xd > 255) = 255;
Xd(Xd < 0) = 0;


disp('Done!');
disp(' ');
r = input('Press to show the denoised sequence ...');
skip = 10; % To exclude the boundary effect
PlayImageSequence(uint8(Xd(:,:, skip+1 : end - skip)));

% Plot the frame-by-frame PSNR values
PSNR_surf = zeros(size(Xd, 3) - 2 * skip, 1);
for n = skip+1 : size(Xd, 3) - skip
   PSNR_surf(n - skip) = PSNR(double(X(:,:, n)), Xd(:,:,n)); 
end

figure
plot([(skip+1) : (size(Xd, 3) - skip)], PSNR_surf);
axis tight;
title(['Average PSNR = ' num2str(mean(PSNR_surf))], 'FontSize', 12);
xlabel('Frame Number', 'FontSize', 12);
ylabel('PSNR (dB)', 'FontSize', 12);

3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

【多维定向滤波器组和表面波】表面变换:用于高效表示多维 s 的多分辨率变换(Matlab代码实现)_第7张图片

 Multidimensional Directional Filter Banks and Surfacelets | IEEE Journals & Magazine | IEEE Xplore

4 Matlab代码实现

你可能感兴趣的:(matlab,开发语言)