⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 smthborder.m

📁 contourlet算法作为二阶小波算法的延续
💻 M
字号:
function y = smthborder(x, n)
% SMTHBORDER  Smooth the borders of a signal or image
%       y = smthborder(x, n)
%
% Input:
%   x:      the input signal or image
%   n:      number of samples near the border that will be smoothed
%
% Output:
%   y:      output image
%
% Note: This function provides a simple way to avoid border effect.

% Hamming window of size 2N
w = 0.54 - 0.46*cos(2*pi*(0:2*n-1)/(2*n-1));

if ndims(x) == 1
    W = ones(size(x));
    W(1:n) = w(1:n);
    W(end-n+1:end) = w(end-n+1:end);
    
    y = W .* x;
    
elseif ndims(x) == 2
    [n1, n2] = size(x);
    
    W1 = ones(n1, 1);
    W1(1:n) = w(1:n);
    W1(end-n+1:end) = w(n+1:end);
    
    y = W1(:, ones(1, n2)) .* x;
    
    W2 = ones(1, n2);
    W2(1:n) = w(1:n)';
    W2(end-n+1:end) = w(n+1:end)';
    
    y = W2(ones(n1, 1), :) .* y;
    
else
    error('First input must be a signal or image');
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -