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

📄 pyramid_decomposition.m

📁 Matlab基于金字塔结构的图像处理 GUI界面
💻 M
字号:
function imgout = Pyramid_Decomposition(imgin,level)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% imgout = Pyramid_Decomposition(imgin,level)
%
% NOTE:
% Image Multi-resolution Decomposition based on neibourhood average
% Pyramid algorithm.  
% The input image can be RGB or GRAYSCALE.
%
% ARGUMENT:
%    INPUT:   imgin - The input image.
%             level - The number of level to which the image is
%                     decomposited.
%    OUTPUT: imgout - A cell array that contain the original image
%                     and its n-level decomposition images.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
if (nargin == 1)
    error('Please input the level');
    return
end
if isrgb(imgin)
    imgin = rgb2gray(imgin);
end
if isgray(imgin)
    imgin = double(imgin);
end
imgout = cell(level+1,1);
imgout{1} = imgin;
for ii = 1:level
    imgin11 = dyaddown(imgin,1,'m');
    imgin22 = dyaddown(imgin,2,'m');
    imgin12 = dyaddown(imgin,2,'c');
    imgin12 = dyaddown(imgin12,1,'r');
    imgin21 = dyaddown(imgin,1,'c');
    imgin21 = dyaddown(imgin21,2,'r');
    imgin22 = imresize(imgin22,size(imgin11));
    imgin12 = imresize(imgin12,size(imgin11));
    imgin21 = imresize(imgin21,size(imgin11));
    imgin1 = imgin11+imgin12+imgin21+imgin22;
    imgin1 = imgin1/4;
    imgout{ii+1} = imgin1;
    imgin = imgin1;
end
    

⌨️ 快捷键说明

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