主要内容

waveletScattering2

小波图像散射

描述

使用waveletScattering2对象创建一个网络的小波图像散射分解使用复值二维Morlet小波。

创建

描述

例子

科幻小说= waveletScattering2利用两个复值二维Morlet滤波器组和各向同性尺度不变性,建立了一个小波图像散射分解网络。两个滤波器组的质量因数都是每八度一个小波。对于每个小波滤波器,在0和π弧度之间有六个线性间隔的旋转。默认情况下,waveletScattering2假设图像输入大小为128 * 128。尺度不变性为64。

科幻小说= waveletScattering2 (名称,值创建具有一个或多个指定属性的小波图像散射网络名称,值对参数。属性可以按任意顺序指定,如Name1, Value1,…,的家.将每个属性名称用单引号括起来(' ')或双引号(”“).

请注意

除了OptimizePathOversamplingFactor时,不能更改现有散射网络的属性值。例如,创建一个网络科幻小说图象尺寸设置为(256 256),你不能分配不同的图象尺寸科幻小说

属性

全部展开

小波图像散射网络的图像大小,指定为二元整数值向量numrowsnumcolumns].图像必须至少为10 × 10。

如果输入的是RGB图像,则不必指定第三维。waveletScattering2仅支持第三金宝app维尺寸为3的彩色图像。

例子:sf = wavetscattering2 ('ImageSize',[100200])创建100 × 200图像和100 × 200 × 3彩色图像的网络。

散射变换不变性尺度,指定为正标量。InvarianceScale指定缩放过滤器的行和列尺寸中的空间支持。金宝appInvarianceScale不能超过图像的行和列尺寸的最小大小。

默认情况下,InvarianceScale是图像的行和列大小的最小值的一半,舍入到最接近的整数。

例子:sf = wavetscattering2 ('ImageSize',[101 200])创建一个框架InvarianceScale等于51。

散射网络中每个滤波器组的每个小波的旋转数,指定为整数值向量。为散射网络中的每个滤波器组指定一个小于或等于12的整数。

对于每个滤波器组中的每个小波,有NumRotations0和π弧度之间的线性间隔角。小波沿顺时针方向旋转。中指定的向量的长度NumRotations必须等于向量的长度QualityFactors

例子:sf = wavetscattering2 (' numrotation ',[75])创建一个网络,在第一个滤波器组中每个小波有七个旋转,在第二个滤波器组中每个小波有五个旋转。

请注意

将二维Morlet小波沿顺时针方向旋转,构建二维小波散射网络。在图像处理工具箱™中使用相反的约定。创建应用于图像的Gabor滤波器组需要以逆时针方向旋转Gabor滤波器。看到偏参数,伽柏(图像处理工具箱)在图像处理工具箱中。

散射滤波器组的质量因子,指定为整数值向量。质量因子是每八度的小波滤波器的数量。散射网络中小波滤波器组的个数等于网络中元素的个数QualityFactors.有效品质因子是小于等于4的整数。如果QualityFactors被指定为一个向量,元素QualityFactors必须是非递增的。

中指定的向量的长度QualityFactors必须等于向量的长度NumRotations

例子:sf = wavetscattering2 ('QualityFactors',[21])

散射系数和滤波器精度:

  • “单一”-单精度

  • “双”-双精度

请注意

  • 所有涉及小波散射网络的计算都在文中进行精度

  • 的输出精度scatteringTransform函数的精度不能超过waveletScattering2对象。

过采样因子,指定为非负整数或.该因子指定了相对于临界下采样值,图像散射系数被过采样的程度。过采样因子是一个对数2规模。例如,如果sf = wavetscattering2 (' overamplingfactor ',1),散射变换返回21——- - - - - -21——- - - - - -P每个散射路径的系数与临界采样数相同。你可以用coefficientSize确定为散射网络所获得的系数数。默认情况下,OversamplingFactor设为0,这对应于对系数进行严格的下采样。

如果您指定的过采样因子会导致输出图像大小大于输入图像大小,则输出大小将被截断为输入图像的大小。也可以指定OversamplingFactor作为,它提供了一个完全未消差的散射变换,其中每个散射路径包含与输入图像大小相等的系数矩阵。

由于散射变换的计算复杂性,建议设置为OversamplingFactor属性为0、1或2。1和2表示a21——- - - - - -21——- - - - - -P和一个22——- - - - - -22——- - - - - -P增加了每条路径的散射系数。

例子:科幻小说。过采样因子= 1设置OversamplingFactor现有网络的属性为1。

优化散射变换逻辑,基于带宽考虑,确定散射变换是否减少了需要计算的散射路径数。

OptimizePath设为真正的,只有当父节点的带宽与子节点的带宽显著重叠时,才计算散射路径。在这种情况下,“显著”的定义如下:对于质量因子1,1 /2,子节点的3db带宽从子节点的小波中心频率中减去。如果该值小于父波段的3db带宽,则计算散射路径。对于大于1的质量因子,显著重叠定义为孩子的中心频率减去孩子的3db带宽之间的重叠。如果与母星的3db带宽重叠,则计算散射路径。

你可以用路径以确定计算哪些和多少个散射路径。OptimizePath通常只有当每个滤波器组中的质量因子相等时,才会在第二个和随后的滤波器组中节省计算量。

例子:科幻小说。OptimizePath = false设置OptimizePath现有网络的属性

对象的功能

scatteringTransform 小波二维散射变换
featureMatrix 图像散射特征矩阵
日志 二维散射变换的自然对数
filterbank 小波和缩放滤波器
littlewoodPaleySum Littlewood-Paley总和
coefficientSize 图像散射系数的大小
numorders 散射阶数
numfilterbanks 散射滤波器组的数目
路径 散射路径

例子

全部折叠

创建一个小波图像散射网络与默认设置。默认图像大小为128 * 128,默认不变性尺度为64。

sf = wavetscattering2
sf = wavetscattering2 with properties: ImageSize: [128 128] InvarianceScale: 64 numrotation: [6 6] QualityFactors: [11 1] Precision: 'single' overamplingfactor: 0 OptimizePath: 1

使用filterbank函数,得到缩放函数的傅里叶变换,小波滤波器,以及小波滤波器的中心空间频率。

[phif,psif,f] = filterbank(sf);

的宽度x -y-二维高斯尺度函数的方向。为了确定缩放函数具有期望的空间宽度,首先对的进行傅里叶反变换phif.使用helper函数helperPlotPhiSurface用两者的不变性标度的范围绘制标度函数xy指定的。的源代码helperPlotPhiSurface在本示例末尾的附录中提供。

Phi = ifftshift(ifft2(phif));图helperPlotPhiSurface(科幻,φ)

图包含一个轴对象。标题为phi leftParenthesis x, y rightParenthesis的坐标轴对象包含5个类型为surface, line的对象。

缩放函数大于128 * 128,因为它已被填充以避免边缘效果。

提取第二滤波器组中最粗尺度小波的傅里叶变换,并求其傅里叶反变换。使用helperPlotPsiSurface绘制小波的实部和虚部,确定最粗尺度小波的空间范围不超过不变性尺度。与缩放函数类似,小波被填充以避免边缘效应。的源代码helperPlotPsiSurface在本示例末尾的附录中提供。

psiF = psiF {2}(:,:,end);psiL = ifftshift(ifft2(psiF));图helperPlotPsiSurface(科幻,psiL)

图包含一个轴对象。标题为StartFraction 1 / 2 toThePowerOf 2 J baseline的轴对象EndFraction psi左括号x斜杠2 toThePowerOf J baseline, y斜杠2 toThePowerOf J baseline右括号包含6个类型为surface, line的对象。

附录

本例中使用了以下helper函数。

helperPlotPhiSurface

函数help plotphissurface (scatFrame,data) halfscale = scatFrame. invariancescale /2;冲浪(数据)阴影插值函数view(-20,35) Ysize = size(data,1);Xsize = size(data,2);Ycenter = Ysize/2;Xcenter = Xsize/2;持有plot([xcenter -half - scale],[0 Ysize],“r”“线宽”2);plot([Xcenter+半尺Xcenter+半尺],[0 Ysize],“r”“线宽”2);plot([0 Xsize],[ycenter -half - scale],“r”“线宽”2);plot([0 Xsize],[Ycenter+半尺Ycenter+半尺],“r”“线宽”2);标题(“\φ(x, y)的美元“字形大小”14岁的“翻译”“乳胶”);包含(“x美元”“字形大小”14岁的“翻译”“乳胶”) ylabel (“y美元”“字形大小”14岁的“翻译”“乳胶”结束

helperPlotPsiSurface

函数helperplotpsissurface (scatFrame,data) halfscale = scatFrame. invariancescale /2;Ysize = size(data,1);Xsize = size(data,2);Ycenter = Ysize/2;Xcenter = Xsize/2;冲浪(真正的(数据))的阴影插值函数视图(13)冲浪(图像放大(数据))的阴影插值函数plot([xcenter -half - scale],[0 Ysize],“r”“线宽”2);plot([Xcenter+半尺Xcenter+半尺],[0 Ysize],“r”“线宽”2);plot([0 Xsize],[ycenter -half - scale],“r”“线宽”2);plot([0 Xsize],[Ycenter+半尺Ycenter+半尺],“r”“线宽”2);标题(“美元\压裂{1}{2 ^ {2 J}} \ psi (x / 2 ^ J, y / 2 ^ J)美元的“字形大小”14岁的“翻译”“乳胶”);包含(“x美元”“字形大小”14岁的“翻译”“乳胶”) ylabel (“y美元”“字形大小”14岁的“翻译”“乳胶”51)视图(-10)结束

参考文献

J.布鲁纳和S.马拉特。不变散射卷积网络。IEEE模式分析与机器智能汇刊.第35卷第8期,2013年,第1872-1886页。

西弗,L.和S.马拉特。“纹理分类的刚性运动散射”。arXiv预印本。2014,第1-19页。https://arxiv.org/abs/1403.1687。

西弗,L.和S.马拉特。用于纹理识别的旋转、缩放和变形不变散射。2013 IEEE计算机视觉与模式识别会议.2013,第1233-1240页。

版本历史

在R2019a中引入