主要内容

检测不连续点和击穿点

具有非常快速的演变的信号,例如动态系统中的瞬态信号可能经历突然的变化,例如跳跃,或者在第一或第二导数中的急剧变化。傅立叶分析通常无法检测到这些事件。该示例的目的是示出当信号发生变化时的小波和变化的类型(信号的破裂或其第一或第二导数的突然变化)和变化的幅度的类型,对小波的分析可以检测到精确的瞬间。在图像处理中,主要应用中的一个是边缘检测,这也涉及检测突然的变化。

频率崩溃

短小波通常比检测信号破裂的长度更有效。因此,要识别信号不连续,我们将使用Haar小波。不连续信号由较慢的慢正弦波组成,然后是媒体正弦波。

负载freqbrkx = freqbrk;

计算1级的多层一维小波分解。

水平= 1;[c、l] = wavedec (x,水平,“哈雾”);

从小波分解中提取级别1的细节系数,并显示结果。内插细节系数,使它们和信号具有相同的长度。

d1 = detcoef (c、l、水平);subplot(2,1,1) plot(x) subplot(2,1,2) plot(interpft(d1,2*length(d1))) ylabel('d1')

第一级详情(d1)最清楚地显示不连续,因为破裂包含高频部分。不连续点非常精确地限定在时间= 500左右。

噪声的存在使得不连续点的识别更加复杂。如果可以使用较细的分解级别来消除大部分的噪声,那么破裂有时在较粗的分解级别上是可见的。

其次推导崩溃

这个例子的目的是展示如何用小波分析来检测信号的一个导数的不连续。这个信号表面上是一条平滑的曲线,实际上是由两个单独的指数组成的。

负载scddvbrk;x = scddvbrk;水平= 2;[c、l] = wavedec (x,水平,“db4”);(d1, d2) = detcoef (c、l、1:水平);d1up = dyadup (d1 0);d2up = dyadup (dyadup (d2, 0), 0);subplot(3,1,1) plot(x) xlim([400 600]) subplot(3,1,2) plot(d1up) ylabel('d1') xlim([400 600]) subplot(3,1,3) plot(d2up) ylabel(“d2”)XLIM([400 600])

我们放大了信号的中间部分,以便更清楚地显示时间= 500时发生的情况。这些细节只在信号的中间部分很高,在其他地方可以忽略不计。这表明,在时间= 500左右出现了高频信息——突然的变化或不连续。

注意,为了检测奇点,所选小波必须足够规则,这意味着更长的滤波脉冲响应。规律性可以是选择小波的重要标准。我们选择使用db4,这对于这个分析来说是足够规则的。如果我们选择Haar小波,就不会检测到不连续。如果您尝试在第2级使用Haar小波重复此分析,您将注意到,在time = 500时,详细信息等于零。

边缘检测

对于图像,二维离散小波变换导致在水平上对近似系数进行分解j分为四个部分:水平近似j+1和三个方向的细节(水平,垂直,和对角线)。

负载格子呢;水平= 1;[c, s] = wavedec2 (X,水平,“coif2”);[chd1, cvd1 cdd1] = detcoef2 (“所有”、c、s、水平);
subplot(1,2,1) image(X) colormap(map) title(原始图像的)子plot(1,2,2) image(chd1) colormap(map) title('水平边缘')

subplot(1,2,1) image(cvd1) colormap(map) title(“垂直边缘”)子图(1,2,2)图像(CDD1)Colormap(Map)标题(“对角线边缘”)

另请参阅

|