石鑫华视觉论坛

 找回密码
 注册会员
查看: 3379|回复: 0

[新闻百科] 二维小波分析对图像处理的应用(2)

[复制链接]
  • TA的每日心情
    开心
    2015-3-26 16:24
  • 签到天数: 161 天

    连续签到: 1 天

    [LV.7]700FPS

    发表于 2013-11-27 13:33:04 | 显示全部楼层 |阅读模式 来自:广东省东莞市 联通

    注册登陆后可查看附件和大图,以及购买相关内容

    您需要 登录 才可以下载或查看,没有账号?注册会员

    x
    四:图像消噪图像消噪方法的一般说明

    对二维图像信号的消噪方法同样适用于一维信号,尤其是对于几何图像更适合。二维模型可以表述为

    其中, e 是标准偏差不变得高斯白噪声。二维信号的消噪步骤与一维信号的消噪步骤完全相同,也有三步,只是用二维小波分析工具代替了一维小波分析工具。如果用固定的阀值形式,测选择的阀值用 m^2 代替了一维信号中的n 。着三步是:

    • 二维信号的小波分解 。选择一个小波和小波分解的层次N, 然后计算信号s到第N层的分解。
    • 对高频系数进行阀值量化。对于从一到N的每一层,选择一个阀值,斌对着一层的高频系数进行软阀值化处理。
    • 二维小波的重构。根据小波分解的第N层的低频系数和经过修改的从第1层到第N层的各层高频系数,来计算二维信号的小波重构。

    在这三个步骤中,重点内容就是如何选取阀值和如何进行阀值的量化。请注意,

    了一维信号自动消噪的情况,对于其他的情况,一维信号的消噪和压缩用的是wdencmp, 这对于二维信号也是一样的。

    编程

    给定一个有较大白噪声的图象,利用二维小波分析进行信号消噪处理。

    分析:由于图象所含的噪声主要是白噪声,且集中于高部分,故用第通实现消去噪声。程序如下。

    load tire;
    subplot(221);
    image(X);
    colormap(map);
    title('原图 ');
    axis square; %画出原图象

    init=2055615866;
    randn('seed',init)
    x=X+38*randn(size(X));
    subplot(222);
    image(x);
    colormap(map);
    title('含噪声图象 ');
    axis square; %画出含噪声图象

    [c,s]=wavedec2(x,2,'sym4');
    a1=wrcoef2('a',c,s,'sym4',1); %第一次低通滤波消噪

    subplot(223);
    image(a1);
    title('第一次消噪后图象 ');
    axis square; %画出第一次低通滤波消噪后图象
    a2=wrcoef2('a',c,s,'sym4',2); %第二次低通滤波消噪
    subplot(224);
    image(a2);
    title('第二次消噪后图象 ');
    axis square; %画出第二次低通滤波消噪后图象 

    分析: 第一次消噪滤去了大部分高频噪声,但与原图比较,依然有不少高频噪声,第二次消噪在第一次消噪基础上,再次滤去高频噪声,消噪效果较好,但图像质量比原图稍差。

    五:图象增强说明

    小波变换将一幅图象分解为大小、位置和方向都不同的分量。在做逆变换之前可以改变小波变换域中某些系数的大小,这样就能够洋选择的放大所感兴趣的分量而减小不需要的分量。

    编程:

    给定一个图象信号,用二维小波分析对图象进行增强处理。

    [分析]由于图象经二维小波分解后,图象的轮廓主要体现在低频部分,而细节部分则体现子高频部分,因此,可以通过对低频分解系数进行增强处理,对高频分解系数进行衰减处理,即可以达到图象增强的作用。

    具体处理过程如下程序:

    load woman;
    subplot(121);
    image(X);
    colormap(map);
    title(‘原始图象‘);
    axis square; %画出原图象
    [c,s]=wavedec2(X,2,’sym4’); %进行二层小波分解
    sizec=size(c); %处理分解系数,突出轮廓,弱化细节

    for I =1:sizec(2)
    if(c( I )>350)
    c( I )=2*c( I );
    else
    c( I )=0.5*c( I );
    end
    end

    xx=waverec2(c,s,’sym4’); %分解系数重构
    subplot(122);
    image(xx);
    title(‘增强图象‘)
    axis square; %画出增强图像

    结果分析:

    打到了图像增强的效果,试图像对比更加明显,但由于细节上的弱化,却使得图像产生模糊的感觉。就那妇女托着下腮的手来说,增强后的图像几乎就不能辨认。手指更是消失了。

    六:图象融合说明

    图象融合是将同一对象的两个或更多的图象合成在一幅图象中,以便他比原来的任何一幅更能容易的为人们所理解。真一技术可应用于多频谱图象理解以及医学图象处理等领域,再这些场合,同一物体部件的图象往往是采用不同的成象机理得到的。

    编程:

    用二维小波分析将两幅图象融合在一起。

    处理过程如下:

    load woman; %装入原图像
    X1=X;map1=map;
    subplot(221);
    image(X1);
    colormap(map1);
    title(‘woman’);
    axis square; %画出woman图像

    load wbarb; %装入原图像

    X2=X;map2=map;

    for I =1:256
    for j=1:256
    if(X2(I, j)>100)
    X2(I, j)=1.2*X2(I, j);
    else
    X2(I, j)=0.5*X2(I, j);
    end
    end
    end

    subplot(222);
    image(X2);
    colormap(map2);
    title(‘wbarb’);
    axis square; %画出wbarb图像

    [cl,sl]=wavedec2(X1,2,’sym4’);
    sizec1=size(c1);
    for I=1:sizec1(2)
    c1( I )=1.2*c1( I );
    end

    [c2,s2]=wavedec2(X2,2,’sym4’);
    c=c1+c2;
    c=0.5*c;
    xx=waverec2(c,s,’sym4’);
    subplot(223);image(xx);
    title(‘融合图象‘);
    axis square; %画出融合后的图像 

    结果分析:

    一幅图像和他某一部分放大后的图像融合,融合后的图像给人一种朦朦胧胧梦幻般的感觉,对较深的背景部分则做了淡化处理。

    七:图象平滑处理说明

    图像平滑的主要目的是为了减少噪声,一般情况下,在空间域内可以用于平均来减少噪声。在频率域,因为噪声浦多在高频段,因此可以曹用各种形式的低通滤波的办法来减少噪声。

    编程

    给定一个含噪声的图象,用二维小波分析和图象的中值滤波进行图象的平滑。

    [分析]这是一个图象平滑处理问题。首先,对图象在频域内进行增强,然后在空域内加入较大的白噪声。通过对含噪图象进行平滑处理,即可以使含噪图象具有较好的平滑效果。具体处理过程如下:

    load woman; %装入原图

    X1=X;
    map1=map;
    subplot(221);
    image(X1);
    colormap(map1);
    title('woman');

    axis square; %画出原图             

    [c,s]=wavedec2(X,2,’sym4’); %二层分解小波信号

    sizec=size( c );
    for I= 1:sizec(2) %频域里增强图像

    if(c( I )>350)
    c( I )=1.3*c( I );
    else
    d( I )=0.5*c( I );
    end
    end

    xx=waverec(c,s,’sym4’); %系数重构

    init=2788605826; %加入噪声

    rand(‘seed’,init);
    xx=xx+68*(rand(size(xx)));
    subplot(221);image(xx);
    title(‘增强的含噪图象‘);

    axis square;
    for I=2:1:255 %中值滤波
    for j=2:1:255
    temp=0;
    for m=1:3
    for n=1:3
    temp=temp+xx(I+m-2,j+n-2);
    end
    end

    temp=temp/9;
    xx(I, j)=temp;
    end
    end

    colormap(map);
    subplot(222);
    image(xx);
    axis square;
    title(‘平滑后的图象‘);
    axis square; %画出平滑后图像

    结果分析:

    平滑后的图像没有原图清晰,但边缘轮廓过渡更自然,消噪的效果还是比较明显的,噪声图像中的一些粒状颗粒在平滑后基本消失。

    附录

    函数名
    功能

    dwt2
    单层二维小波分解

    dwtper2
    单层二为离散小波变换

    wavedec2
    多层二维小波分解

    idwt2
    单层二微小波重构

    idwper2
    单层二维小波分解

    waverec2
    多层二维小波重构

    upwiev2
    二维小波分解的单层重构

    wrcoef2
    二维小波分解系数单支重构

    upcoef2
    二维小波分解的直接重构

    detcoef2
    提取二微小波分解高频系数

    appcoef2
    提取二维小波分解低频系数

    wthresh
    进行软阈值或硬阈值处理

    wthcoef2
    二维信号的小波系数阈值处理

    ddencmp
    获取在消噪或压缩过程中的默认值阈值

    wdencmp
    用小波进行信号的消噪和压缩


    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册会员

    本版积分规则

    LabVIEW HALCON图像处理入门教程(第二版)
    石鑫华机器视觉与LabVIEW Vision图像处理PDF+视频教程11种全套
    《LabVIEW Vision函数实例详解》教程-NI Vision所有函数使用方法介绍,基于NI VISION2020,兼容VDM21/22/23/24

    QQ|石鑫华视觉论坛 |网站地图

    GMT+8, 2024-11-20 17:32

    Powered by Discuz! X3.4

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表