天天看点

小波变换在图像分割中的应用

1.1  空域图像分割

空域是指图像平面本身,空域图像分割就是直接对图像的像素进行处理分割。研究者经过几十年的研究与努力,研究出了很多种空域图像分割方法。归纳起来大致包括:串行边界分割技术、串行区域分割技术、并行边界分割技术、并行区域分割技术、结合特定理论工具的分割技术等[1]。

1.1.1  串行边界分割技术

串行边界分割技术指通过顺序搜索边缘点,采用串行方式来对感兴趣目标的边界进行检测。主要有以下三个关键步骤:

①首先确定一个顺序搜索的起始边界点;

②然后在确定先前的搜索结果对下一边界点的检测和下一个结果的影响的前提之下,选择某种搜索策略,根据相应原则逐一检测新的边界点;

③最后选定搜索终止的条件,结束整个搜索过程。

串行边界分割技术所采取的策略主要有以下两种:

①首先检测出边界点,然后再连接边界点;

②以交叉结合的方式来进行边界点的检查和连接。

1.1.2  串行区域分割技术

串行区域分割技术指通过对目标区域的直接检测,用串行方式来进行图像分割的技术。它的特点是将整个处理过程分解为的多个步骤依次进行,然后前续步骤的处理结果来决定对后续步骤的处理。结合了特定数学理论工具的一些图像分割方法也经常用串行区域分割的方式。

串行区域分割技术有两种基本形式:

①从单个像素出发,逐渐合并成所需的分割区域;

②从全图出发,逐渐分裂成所要的分割区域。

1.1.3  并行边界分割技术

并行边界分割技术指通过对感兴趣区域的边界进行检测,用并行方式来对图像进行分割技术。其过程主要有以下两个步骤:

①检测感兴趣区域的边界点;

②形成感兴趣区域的边界。

对于步骤①可以采用各种微分算子来直接检测,也可以利用拟合方法与边缘模型进行间接检测。对于步骤②由于其过程较复杂,因此单纯利用微分算子不能形成闭合边界,需要通过一定的准则和数学工具将感兴趣的区域分离出来。

1.1.4  并行区域分割技术

并行区域分割技术指通过对感兴趣区域的检测,用并行方式来进行图像分割的技术。在实际应用中,并行区域分割技术主要包括以下两大类:

①特征空间聚类方法;

②阈值化方法。

1.1.5  结合特定理论工具的分割技术

①基于信息论的分割技术

最近几年,出现了许多借助信息论中熵的概念的图像分割方法。这些方法利用信息论当中求熵的极值的方式来进行图像分割。例如:1D最大熵法、2D最大熵法、最大后验熵法、最小熵相关法、最大香农熵法、条件熵法等等。

②基于小波分析和小波变换的分割技术

小波变换是空间(时间)和频率的局域变换,通过平移、伸缩等运算对函数和信号进行多尺度的细化分析,有效的从信号中提取信息,从而解决了傅立叶变换不能解决的许多问题。近年来,在低频和高频分析时,有“变焦”特性的小波变换在图像分割中得到广泛应用。

1.2  频域图像分割

  频域图像分割法就是傅里叶变换的方法,也是一种最简单的图象分割的方法。

傅里叶变换一直是信号处理领域中最完美、应用最广泛、效果最好的一种分析手段,只是傅里叶变换是一种单纯对频域的分析方法,它在频域的定位性上是最准确的(即频域分辨率是最高),而在时域没有任何分辨能力,也就是表示傅里叶变换所反映的是整个信号在所有时间下的整体频域的特征,无法提供任何一段局部时间段上的频率信息。在现实生活中,经常会出现一些非平稳信号,例如音乐和语音信号等,它们的频域特征都在随着时间的变化而变化,这些信号被称为时变信号。

Gabor为了研究信号在局部时间范围内的频域特征,而提出了非常著名的Gabor变换,后来随着不断研究发展为短时傅里叶变换(又称加窗傅里叶变换,简称STFT)。如今短时傅里叶变换在许多领域已经得到了广泛的应用,但是它的定义决定了其窗函数的形状和大小都与频率和时间没有关系而保持固定不变,这样在分析时变信号时是不方便的[2]。高频信号持续时间一般都比较短,相反低频信号的持续时间则相对较长,所以我们希望在分析高频信号时能够用小时间窗,同时在分析低频信号时能够用大时间窗。从中我们会发现分析信号时,变时间窗的要求与短时傅里叶变换的固定时窗中窗不能随着频率变化而变化的特性相矛盾,因此这表明短时傅里叶变换无法处理这些问题;此外当人们在进行数值计算时,都希望能够将基函数离散化,从而节约存储量和计算时间,而Gabor变换则不能实现这种期望,原因是无论如何都无法构成一组正交基,所以在计算数值使很不方便,但是小波变换恰恰能实现[3]。

小波变换继承并且发展了短时傅里叶变换的局部思想的优点,同时还克服了其窗口大小不能随着频率变化而变化,且缺少离散正交基的缺点,是一种比较理想的用来处理信号的数学工具。因此目前小波变换在图象分割中获得了广泛的应用。

1.3  小波域图像分割

1.3.1  图像分割的描述

图像分割(image segmentation)是一种非常重要的图像技术,它是图像分析与识别过程中的重要环节,其分割的结果直接关系到图像处理后期其他工作的质量,例如图像的测量、图像的识别等。一方面它是图像表达的基础,对于特征测量有着至关重要的作用;另一方面,由于图像分割及其基于分割的特征提取、目标表达和参数测量等将原始的图像形式转化为更加抽象紧凑的形式,从而使得更高层的图像分析和理解成为可能[4]。图像分割在不同的领域中都有重要的应用,所以有时会用不同的名称,比如目标识别(target identification)技术,阈值化(threshold)技术,目标检测(target detection)技术,目标轮廓(object delineate)技术,图像区分或求差(image discrimination)技术等,虽然这些名称看起来是不同的技术,但其实它们本身或核心都是图像分割技术,由此可以看出图像分割技术的重要性[5]。

[1]  LI Yue-e, LIU Qing-fang. The Application of Wavelet Transform to the Image Segmentation[J]. College of Physics and Electronics Engineering, Shanxi  University, Taiyuan030006, China, 2009, 32(4): 566~571.

[2]  章毓晋著. 图像分割[M]. 北京: 科学出版社, 2001, 78-90.

[3]  李世雄编著. 小波理论及其应用[M]. 南开大学数学研究所计算教学年印, 1992.

[4]  彭玉华著. 小波变换与工程应用[M]. 科学出版社, 2000.

[5]  崔屹. 图象处理与分析-数学形态学方法及其应用[M]. 北京: 科学出版社, 2000.

对于图像分割的研究已经有几十年的历史,人们对此一直都高度重视。早在50年代中期即计算机视觉理论体系形成以前,人们就已经开始了对图像分割的研究。能够找到一种通用的、普适的图像分割方法是人们几十年来不断追求的梦想,人们为此付出了许多艰辛的努力,但也取得了不少研究成果,提出了很多图像分割算法。然而随着研究的不断深入,人们逐渐意识到,在将三维景物投影为二维图像的过程中,丢失了深度以及不可见部分的信息,不同的视角下的同一物体的图像会有很大的不同,还有会因为前后物体的遮挡而丢失信息等;另外,在场景中的很多比如物体表面几何、光源、物理特性以及成像设备与物体之间的空间特性等不同的因素,都被综合成为单一的图像中像元的灰度值;还有在成像过程中会或多或少地引入一些噪声和畸变。这些问题都直接或间接地导致了图像分割问题是一种信息不足的不确定性问题,所以不可能存在一种通用的对任何图像都适用的、统一的图像分割方法[7]。

在过去的四十多年里, 人们一直在高度重视图像分割的研究,至今为止,研究者提出了上千种不同类型的分割算法,如:小波分析法、水线法、匹配法、马尔可夫随机场模型法等,并且近年来每年都有上百篇相关研究成果的发表。但是,如今的方法大多是为了特定应用而设计的,具有很大的局限性和针对性,对图像分割的研究还是缺乏一个统一的理论体系。

近年来,随着计算机技术的不断发展和成熟,现在的图像分割已经得到了广泛的应用,几乎出现在所有有关图像处理的领域,例如在文档处理,工业自动化,生产过程控制,在线产品检验,遥感和生物医学图像分析,保安监视,以及军事,农业工程,体育等诸多领域。然而在缺乏足够先验信息的前提下进行图像分割是一项很困难的任务,如医学上人脑组织的细微变化、监控系统的随机性等,人们为了克服这一困难,建立了大量的图像模型来完成分割的任务,如利用概率分布函数刻画图像的纹理特征而建立起来的统计图像模型等。相应地也研究出了各种分割算法,如基于区域的分割、合并分割算法等。基于图像模型的分割在易于实现的同时,准确的图像模型还可以提高分割的质量,因此对图像模型的研究,不仅是各种应用的需要,而且也是分割取得突破性进展的关键问题[8]。在国内,每年《计算机辅助设计与图形学学报》、《中国图像图形学报》等报刊都会刊登很多有关图像分割的研究成果。近几年,北京大学周蜀林主持的国家自然科学基金项目-图像分割的变分方法和应用,说明了国家对图像分割研究的重视。但目前国内外对图像分割结果的评价和准则系统的研究仍然很缺乏。

[7]  Donoho DL. Wavelet Shrinkage and W.V.D.A Ten-minute Tour. Progress in Wavelet[J]. Analysis and Application. 1993: 109-128.

[8]  陈武凡, 小波分析及其在图像处理中的应用[M]. 北京: 科学出版社, 2002.

1. 小波阈值程序:

    x=imread(‘lena.jpg'); % 读取原图像

    figure(1);

imshow(x);title(‘原始图像’);% 显示原图像

    s=rgb2gray(x);

    imhist(s);title('直方图');

    [Row,COL]=size(x);

     T=90; % 设置阈值

      s=double(x);

      for i=1: Row

           for j=1: COL

                if (x(i,j)>T)

                    x(i,j)=255;

                else

                    x(i,j)=0;

                 end    end     end

       figure(2);imshow(x); % 显示经小波阈值分割的图像

       title('小波阈值分割图像');

2. 本文方法分割程序:

%这个是2D-DWT的函数,是haar小波

%c是图像像素矩阵 steps是变换的阶数

function  dwtc = dwt_haar(c, steps)

% DWTC = CWT_HARR(C) - Discrete Wavelet Transform using Haar filter

% M D Plumbley Nov 2003

N = length(c)-1; % Max index for filter: N

% If no steps to do, or the sequence is a single sample, the DW is itself

if (0==N | steps == 0)

       dwtc = c;

        return

end

% Check that N+1 is divisible by 2

if (mod(N+1,2)~=0)

       disp(['Not divisible 2: ' num2str(N+1)]);

       return

end

% Set the Haar analysis filter

h0 = [1/2  1/2];  % Haar Low-pass filter

h1 = [-1/2 1/2];  % Haar High-pass filter

% Filter the signal

lowpass_c = conv(h0, c);

hipass_c  = conv(h1, c);

% Subsample by factor of 2 and scale

c1 = sqrt(2)*lowpass_c(2:2:end);

d1 = sqrt(2)*hipass_c(2:2:end);

% Recursively call dwt_haar on the low-pass part, with 1 fewer steps

dwtc1 = dwt_haar(c1, steps-1);

% Construct the DWT from c1 and d1

dwtc = [dwtc1 d1];

% Done

return

im = imreadreal('lena.bmp');    %read image data

% Plot

figure

dwt2_step0=dwt2_haar(im, 0);    %2D DWT step=0

imagesc(dwt2_step0);

colormap gray;

axis image;

figure

dwt2_step1=dwt2_haar(im, 1);    %2D DWT step=1

imagesc(dwt2_step1);

colormap gray;

继续阅读