精华内容
下载资源
问答
  • 图像的双正交插值超分辨率分析与重构,实现图像的放大
  • 小波分解重构

    2013-12-19 20:58:26
    详细的小波分解重构的介绍内容,代码详细,易懂,在图像融合上得到广泛的应用
  • 能够实现图像的三级小波分解重构
  • 一种基于二维二重小波分解和主成分分析重构的可见光与红外光图像融合方法
  • 介绍了一维非均匀B样条小波分解重构的算法,并将其推广到二维离散图像。给出了对图像进行分解和重构时节点矢量的选取方法、分解和重构的公式,并通过实例介绍了它在图像任意大小缩放中的应用。和传统小波相比,利用非...
  • 老师布置的作业,对自己的自拍照进行二级小波重构分解,并且对图像加高斯噪声、去燥
  • 基于DSP 的语音与图像小波分解重构,基于DSP 的语音与图像小波分解重构
  • 鉴于小波多尺度分解重构图像的编码、压缩、去燥、融合等方面的重要作用,介绍了Haar 小波的尺度函数与小波函数,给出了Haar 小波多尺度分解重构的算法,并进行成功验证。结果表明,尺度分解图像分解成一个...
  • 小波分解重构matlab

    2014-04-08 15:03:58
    本matlab代码实现图像处理中一维与二维小波分解重构,模块化设计,有参考价值
  • 二维图像小波分解重构,并画图显示。通过分辨率分析实现。
  • 形态小波分解重构

    2012-09-12 14:25:48
    使用形态小波图像进行尺度分解和完全重构
  • 小波图像分解重构
  • 程序可实现图像小波分解重构,严格按照2:1比例分解和重构,避免了MATLAB软件提供的小波函数不是2:1抽样的缺点。
  • 图像小波分解重构

    万次阅读 2017-05-03 22:57:43
     所谓的小波的小是针对傅里叶波而言,傅里叶波指的是在时域空间无穷震荡的正弦(或余弦波)。  相对而言,小波指的是一种能量在时域非常集中的波,它的能量有限,都集中在某一点附近,而且积分的值为零,这说明它...
    小波变换原理  

      所谓的小波的小是针对傅里叶波而言,傅里叶波指的是在时域空间无穷震荡的正弦(或余弦波)。

      相对而言,小波指的是一种能量在时域非常集中的波,它的能量有限,都集中在某一点附近,而且积分的值为零,这说明它与傅里叶波一样是正交波。举一些小波的例子:


    可以看到,能量集中在x轴0值附近,以y轴的0值为基线,上下两个区域的波形面积相等。


      众所周知,图像的傅里叶变换是将图像信号分解为各种不同频率的正弦波。同样,小波变换是将图像信号分解为由原始小波位移和缩放之后的一组小波。

      小波在图像处理里被称为图像显微镜,原因在于它的多分辨率分解能力可以将图片信息一层一层分解剥离开来。剥离的手段就是通过低通和高通滤波器,

    这里我们以一个图像的横向一维为例,讲讲小波的分解与还原,采用的是Haar小波做分解:

    图像原始像素矩阵:[6 4 8 7 5 9 3 2]

    分解低通滤波器:[ 1  1]/sqrt(2)

    分解高通滤波器:[-1 1]/sqrt(2)

    1.用低通滤波器与原始像素矩阵做卷积得:[8 10 12 15 12 14 12 5]/sqrt(2)

    下采样得:[10 15 14 5]/sqrt(2)    ----->L

    2.用高通滤波器与原始像素矩阵做卷积得:[-4 2 -4 1 2 -4 6 1]/sqrt(2)

    下采样得:[2 1 -4 1]/sqrt(2)    ----->H

    上例为一维情况,二维情况在做完横向滤波之后再进行纵向滤波即可。


    逆变换过程:

    重构低通滤波器:[1  1]/sqrt(2)

    重构高通滤波器:[1 -1]/sqrt(2)

    1.对L数组插值得:[0 10 0 15 0 14 0 5]/sqrt(2)

    再用低通滤波器做卷积得:[10 10 15 15 14 14 5 5]/2

    2.对H数组插值得:[0 2 0 1 0 -4 0 1]/sqrt(2)

    再用高通滤波器做卷积得:[2 -2 1 -1 -4 4 1 -1]/2

    两个数组求和得:[6 4 8 7 5 9 3 2] ,矩阵被还原了。



    二维图像信号

    对于二维图像信号,可以用分别在水平和垂直方向进行滤波的方法实现二维小波多分辨率分解。图2.5为经过二维离散小波变换的分解后子图像的划分。其中:

    (l)LL子带是由两个方向利用低通小波滤波器卷积后产生的小波系数,它是图像的近似表示。

    (2)HL子带是在行方向利用低通小波滤波器卷积后,再用高通小波滤波器在列方向卷积而产生的小波系数,它表示图像的水平方向奇异特性。(水平子带)

    (3)LH子带是在行方向利用高通小波滤波器卷积后,再用低通小波滤波器在列方向卷积而产生的小波系数,它表示图像的垂直方向奇异特性。(垂直子带)

    (4)HH子带是由两个方向利用高通小波滤波器卷积后产生的小波系数,它表示图像的对角边缘特性。(对角子带)

     (第一个字母表示列方向的处理,第二个字母表示行方向的处理,图像的奇异特性通过低通时保留,通过高通时被滤除)

    小波去噪方法也就是寻找从实际信号空间到小波函数空间的最佳映像,以便得到原信号的最佳恢复。

     

    目前,小波去噪的方法大概可以分为三大类:

    第一类方法(小波变换模极大值去噪法)是利用小波变换模极大值原理去噪,即根据信号和噪声在小波变换各尺度上的不同传播特性,剔除由噪声产生的模极大值点,保留信号所对应的模极大值点,然后利用所余模极大值点重构小波系数,进而恢复信号;

    第二类方法(小波系数相关性去噪法)是对含噪信号作小波变换之后,计算相邻尺度间小波系数的相关性,根据相关性的大小区别小波系数的类型,从而进行取舍,然后直接重构信号;

    第三类方法(小波变换阈值去造法)是小波阈值去噪方法,该方法认为信号对应的小波系数包含有信号的重要信息,其幅值较大,但数目较少,而噪声对应的小波系数是一致分布的,个数较多,但幅值小。



    这里主要主要小波阀值收缩去噪法:
        小波阀值去噪的基本思想:Donoho提出的小波阀值去噪的基本思想是将信号通过小波变换(采用Mallat算法)后,信号产生的小波系数含有信号的重要信息,将信号经小波分解后小波系数较大,噪声的小波系数较小,并且噪声的小波系数要小于信号的小波系数,通过选取一个合适的阀值,大于阀值的小波系数被认为是有信号产生的,应予以保留,小于阀值的则认为是噪声产生的,置为零从而达到去噪的目的。其基本步骤为:

    1)分解:选定一种层数为N的小波对信号进行小波分解;

    2)阀值处理过程:分解后通过选取一合适的阀值,用阀值函数对各层系数进行量化;

    3)重构:用处理后的系数重构信号。

    2 小波阀值去噪的基本问题

    小波阀值去噪的基本问题包括三个方面:小波基的选择,阀值的选择,阀值函数的选择

    1)小波基的选择:通常我们希望所选取的小波满足以下条件:正交性、高消失矩、紧支性、对称性或反对称性。但事实上具有上述性质的小波是不可能存在的,因为小波是对称或反对称的只有Haar小波,并且高消失矩与紧支性是一对矛盾,所以在应用的时候一般选取具有紧支的小波以及根据信号的特征来选取较为合适的小波。

    2)阀值的选择:直接影响去噪效果的一个重要因素就是阀值的选取,不同的阀值选取将有不同的去噪效果。目前主要有通用阀值(VisuShrink)、SureShrink阀值、Minimax阀值、BayesShrink阀值等。

    3)阀值函数的选择:阀值函数是修正小波系数的规则,不同的反之函数体现了不同的处理小波系数的策略。最常用的阀值函数有两种:一种是硬阀值函数,另一种是软阀值函数。还有一种介于软、硬阀值函数之间的Garrote函数。

    另外,对于去噪效果好坏的评价,常用信号的信噪比(SNR)与估计信号同原始信号的均方根误差(RMSE)来判断。









    展开全文
  • 一维信号的小波分解重构程序

    万次阅读 热门讨论 2008-09-01 19:22:00
    感谢网友‘李明杨艳’指出了我此前三个版本的小波信号分解重构程序中有关一维信号分解重构的程序mydwt和myidwt都存在的一个大Bug,因为当时编程时都是按照haar小波的特点来写的代码,没有考虑到使用其它小波函数...

    感谢网友‘李明杨艳’指出了我此前三个版本的小波信号分解重构程序中有关一维信号分解重构的程序mydwtmyidwt都存在的一个大Bug,因为当时编程时都是按照haar小波的特点来写的代码,没有考虑到使用其它小波函数滤波器组时卷积运算的输出序列长度变化的问题,后来的版本也只集中于二维图像方面,没有考虑一维信号,现已修正。更新的程序代码如下:

     

     

     

    function [c,l] = mydwt(x,lpd,hpd,dim);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    % 函数 [c,l]=MYDWT(X,LPD,HPD,DIM) 对输入序列x进行一维离散小波分解,输出分解序列c

    % 输入参数:x——输入序列;

    %          lpd——低通滤波器;

    %          hpd——高通滤波器;

    %          dim——小波分解层数。

    % 输出参数:c——小波分解系数序列;

    %           l——各级小波分解系数的长度。

    %

    % Copyright by Zou Yuhua ( chenyusiyuan ), Created: 2007-11-10 ,

    % Modified: 2008-09-01

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

     

    cA=x;      

    c=[];

    l=length(x);

    for i=1:dim

        cvl=conv(cA,lpd);   % 低通滤波

        dnl=downspl(cvl);   % 通过下抽样求出平均部分的分解系数

        cvh=conv(cA,hpd);   % 高通滤波

        dnh=downspl(cvh);   % 通过下抽样求出本层分解后的细节部分系数

        cA=dnl;             % 下抽样后的平均部分系数进入下一层分解

        c=[dnh,c];        % 将本层分解所得的细节部分系数存入序列c   

        lcd=length(dnh);             % 求出细节部分分解系数的长度,存入序列数组 l

        l=[lcd,l];

    end

    c=[cA,c];

    l=[length(cA),l];

     

     

     

    function y = myidwt(c,l,lpr,hpr);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    % 函数 MYIDWT() 对输入的小波分解系数进行逆离散小波变换,重构出信号序列 y

    % 输入参数:c——小波分解系数序列;

    %           l——各级小波分解系数的长度。;

    %           lprhpr —— 重构所用的低通、高通滤波器。

    %

    % Copyright by Zou Yuhua ( chenyusiyuan ), Created: 2007-11-10 ,

    % Modified: 2008-09-01

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

     

    cA=c(1:l(1));

    for i=1:length(l)-2   

        upl=upspl(cA);          % 对平均部分系数进行上抽样

        cvl=conv(upl,lpr);      % 低通卷积

        cvl=wkeep(cvl,l(i+2));   

        st=sum(l(1:i))+1;

        ed=st+l(i+1)-1;

        cD=c(st:ed);             % 取出本层重构所需的细节部分系数

        uph=upspl(cD);       % 对细节部分系数进行上抽样

        cvh=conv(uph,hpr);      % 高通卷积

        cvh=wkeep(cvh,l(i+2));   

        cA=cvl+cvh;             % 用本层重构的序列更新cA,以进行下一层重构

    end  

    y=cA;                  % 输出的重构序列 y 等于重构完成后的平均部分系数序列 cA

     

     

     

    function y=downspl(x);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    % 函数 Y=DOWMSPL(X) 对输入序列进行下抽样,输出序列 Y

    % 下抽样是对输入序列取其偶数位,舍弃奇数位。例如 x=[x1,x2,x3,x4,x5],则 y=[x2,x4].

    %

    % Copyright by Zou Yuhua ( chenyusiyuan ), Version: 1.0, Date: 2007-11-10

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

     

    N=length(x);         % 读取输入序列长度

    M=floor(N/2);        % 输出序列的长度是输入序列长度的一半(带小数时取整数部分)

    i=1:M;

    y(i)=x(2*i);

    % y=x(2:2:end);

     

     

    function y=upspl(x);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    % 函数 Y = UPSPL(X) 对输入的一维序列x进行上抽样,即对序列x每个元素之间

    % 插零,例如 x=[x1,x2,x3,x4],上抽样后为 y=[0,x1,0,x2,0,x3,0,x4,0];

    %

    % Copyright by Zou Yuhua ( chenyusiyuan ), Created: 2007-11-10 , Modified: 2008-07-07

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

     

    N=length(x);        % 读取输入序列长度

    M=2*N+1;            % 输出序列的长度是输入序列长度的2倍再加一       

    y=zeros(1,M);

    k=1:N;

    y(2*k)=x(k); % 输出序列的奇数位为0,偶数位按次序等于相应位置的输入序列元素

     

     

     

    展开全文
  • 616.2利用小波包法将两幅图融合16.3利用小波变换进行图像分解16.4重构系数16.5小波变换提取一个子代直方图16.6利用小波变换对给定图像旋转后,提取一个子代16.7提取小波分解概貌系数
  • 小波图像分解重构

    2018-12-20 13:40:00
    MATLAB2015教程中示例 clc;clear;% 装载图像load woman;% X包含载入的图像% 绘制原始图像figure(1);subplot(2,2,1);image(X);colormap(map);...% 从小波分解结构[c,s]进行尺度为1和2时的低频重构...

    MATLAB2015教程中示例

    clc;
    clear;
    % 装载图像
    load woman;
    % X包含载入的图像
    % 绘制原始图像
    figure(1);
    subplot(2,2,1);
    image(X);
    colormap(map);
    title('原始图像');
    % 使用sym5对X进行尺度为2的分解
    [c,s] = wavedec2(X,1,'sym5');
    % 从小波分解结构[c,s]进行尺度为1和2时的低频重构
    a1 = wrcoef2('a',c,s,'sym5',1); 
    a2 = wrcoef2('a',c,s,'sym5',1); 

    % 绘制尺度为1时的低频图像
    subplot(2,2,3);
    image(a1);colormap(map);
    title('尺度为1时的低频图像');
    % 绘制尺度为2时的低频图像
    subplot(2,2,4);
    image(a2);colormap(map);
    title('尺度为2时的低频图像');
    % 从小波分解结构[c,s]在尺度为2时重构高频
    % 'h' 是水平方向
    % 'v' 是垂直方向
    % 'd' 是对角方向
    hd2 = wrcoef2('h',c,s,'sym5',1); 
    vd2 = wrcoef2('v',c,s,'sym5',1); 
    dd2 = wrcoef2('d',c,s,'sym5',1);
    % 绘制高频图像
    figure(2);
    subplot(2,2,1);
    image(hd2);colormap(map);
    title('尺度为2时的水平高频图像');
    subplot(2,2,2);
    image(vd2);colormap(map);
    title('尺度为2时的垂直高频图像');
    subplot(2,2,3);
    image(dd2);colormap(map);
    title('尺度为2时的对角高频图像');
    subplot(2,2,4);
    image(hd2+dd2+vd2+a1);colormap(map);
    % 验证这些图像的长度都是sX
    sX = size(X)
    sa1 = size(a1)
    shd2 = size(hd2)
    norm(hd2+dd2+vd2+a1-X)

    转载于:https://www.cnblogs.com/Fiona-Y/p/10148842.html

    展开全文
  • 图像尺度小波分解重构,不同的小波基得到的系数矩阵不同
  • 灰度图的小波分解重构: from PIL import Image import matplotlib.pyplot as plt from matplotlib.pyplot import imshow import numpy as np # 小波库 import pywt import cv2 # 读取图像并转化为灰度图 im = cv...

    最近需要做小波分解相关的东西,博客这里做一个简单的记录
    灰度图的小波分解与重构:

    from PIL import Image
    import matplotlib.pyplot as plt
    from matplotlib.pyplot import imshow
    import numpy as np
    # 小波库
    import pywt
    import cv2
    
    # 读取图像并转化为灰度图
    im = cv2.imread('LenaRGB.bmp')
    im = cv2.resize(im, (256, 256))
    img = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY).astype(np.float32)
    
    # 对图像进行小波分解
    coeffs = pywt.dwt2(img, 'bior1.3')
    LL, (LH, HL, HH) = coeffs
    
    # 查看分解结果
    plt.subplot(221), plt.imshow(LL, 'gray'), plt.title("LL")
    plt.subplot(222), plt.imshow(LH, 'gray'), plt.title("LH")
    plt.subplot(223), plt.imshow(HL, 'gray'), plt.title("HL")
    plt.subplot(224), plt.imshow(HH, 'gray'), plt.title("HH")
    plt.show()
    

    结果如下:
    在这里插入图片描述

    对图像进行小波重构

    	# 很简单,直接拿轮子来用
    	img_r = pywt.idwt2(coeffs, "bior1.3")
    	plt.imshow(img_r, 'gray')
    

    结果如下:
    在这里插入图片描述

    灰度图加指定半径噪声

    # 原灰度图除255,调轮子,再乘255就完事了
    # 非灰度图不需要这个操作,直接调random_noise就好
    def imnoise(img, sigma):
        return skimage.util.random_noise(img / 255, mode='gaussian', seed=None, var=(sigma/255.0)**2) * 255
    

    调用后的结果如下,这是半径为25的结果:
    在这里插入图片描述

    展开全文
  • 基于DSP的语音与图像的9/7、5/3小波分解重构,王靖琰,,在小波变换和TI (Texas Instruments) 的浮点数字信号处理器TMS320C6713B的基础上, 对9/7、5/3小波的构造和Mallat 快速算法的分解、重构分别作了详�
  • 小波分解广泛应用于信号处理,在计算机图像信号处理中,图像重构技术较为关键,小波包分解可对图像信号各个频段进行及其细化的划分。文中分别对图像处理小波分解,小波包分解进行阐述,并应用MATLAB对二维小波包...
  • haar小波二维图像分解重构matlab代码

    热门讨论 2012-04-18 09:22:50
    mra_mallat_2D_iterate.m实现二维图像分解,mra_mallat_2D_merge_iterate.m实现二维图像重构。程序针对2^N*2^M像素的图像设计,可以实现任意次数的分解重构。也很很方便改写成针对任意像素的程序。
  • Mallat算法及C语言实现(一维DB小波分解重构
  • 【转】小波图像分解重构

    万次阅读 多人点赞 2018-02-10 16:31:14
    原文地址:【转】小波图像分解重构作者:freedesert小波图像融合综述(1)分类: 小波变换2007-11-14 11:15 4728人阅读 评论(6) 收藏 举报 图像融合是将两幅或图像融合在一起,以获取对同一场景的更为...
  • :提出了一种基于形态小波分解分辨率图像融合。这种融合方法使用了最小形态小波算子,将原始图像分解为4子带图像金字塔并且构造了相应的4 f带方向对比度图像金字塔。然后利用方向对比度和区域标准差进行图像融合...
  • 本文利用哈尔小波分解和哈尔小波重构分别对社交网络中的时间序列进行降维和升维操作,而分解降维和重构升维互为逆过程,这里以哈尔小波分解降维步骤为例进行说明。 1.2)哈尔小波分解重构是其逆过程):可以被
  • 小波与小波包、小波包分解与信号重构、小波包能量特征提取 (Matlab 程序详解) -----暨 小波包分解后解决频率大小分布重新排列问题 本人当前对小波理解不是很深入,通过翻阅网络他人博客,进行汇总总结,重新...
  • 数字图像处理-DFT&DCT&WHT&小波变换分解重构(Matlab)

    万次阅读 多人点赞 2020-10-19 14:42:02
    小波变换分解重构(Matlab)基本的matlab图像处理函数的使用代码块运行效果傅里叶变换(DFT)对图像进行傅里叶正变换去除部分高频分量后对图像进行傅里叶逆变换离散余弦变换(DCT)对图像进行DCT正变换去除部分高频分量后...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,466
精华内容 1,386
关键字:

多小波分解重构处理图像