Sect.6
到目前为止,本文介绍了纹理理解中的一些新问题,以及一些新的、旧的纹理表示方法。本节的目标是通过广泛的实验确定什么表示最适合哪个问题。
表示被标记为对x-y,其中x是池编码器,y是本地描述符。例如,fv-sift表示Fisher矢量编码器应用于密集提取的SIFT描述符,而bovw-cnn表示视觉单词编码器应用于cnn卷积描述符之上。特别要注意的是,根据文献中常见的基于CNN的图像表示,Razavin等人(2014年)和Chatfield等人(2014)隐式使用基于CNN的描述符和fc-pooler,因此此处表示为fc-cnn。
6.1本地图像描述符和编码器评估
本节比较不同的本地图像描述符和池编码器(第6.1.1)在纹理识别、对象识别和场景识别(第6.1.2)。6.1.3比较不同的本地描述符,第6.1.4,不同的池编码器。6.1.5,基于CNN的描述符的其他变体。
6.1.1 实验设置
实验以两种类型的局部描述符为中心。第一种类型是从图像中密集提取的筛选描述符(表示为dsift)。筛选描述符以两个像素的步幅进行采样,并对描述符的支持进行缩放,使筛选空间仓的大小为8×8像素。由于有4×4个空间仓,每个DSIFT描述符的支持或“接收场”为40×40像素(包括由于双线性插值而导致的半个仓的边界)。描述符是128维的(Lowe 1999),但在所有实验中,使用PCA将其维数进一步减少到80。除了提高分类精度外,这还大大减小了Fisher矢量和VLAD编码的大小。
第二类局部图像描述符是从CNN的卷积层中提取的深卷积特征(称为CNN),这些卷积层预先训练在IMAGENET ILSVRC数据上。大多数实验建立在Chatfield等人的vgg-m模型之上。(2014)由于该网络的性能优于标准网络,如CAFFE参考模型(JIA 2013)和Alexnet(Krizhevsky等人。2012)同时具有类似的计算成本。将VGG-M卷积特征直接从线性滤波器(不包括RELU和MAX池)中提取,作为最后一个卷积层的输出,得到512维描述符向量。除了vgg-m之外,实验还考虑了Simonyan和Zisserman(2014)最近的vgg-vd(非常深,有19层)模型。CNN描述符的接收域比SIFT大得多:VGG-M为139×139像素,VGG-VD为252×252像素。
当与池编码器结合时,本地描述符以多个比例提取,通过因子2s、s=−3、−2.5、…、1.5重新缩放图像获得(但为了提高效率,放弃将使图像大于1024平方像素的比例)。
最终表示的维数很大程度上取决于编码器类型和参数。对于k视觉单词,bovw和llc有k维,vlad有kd和fv 2kd,其中d是本地描述符的维。对于fc编码器,维度由cnn体系结构确定;这里的表示是从cnns的倒数第二个fc层(在最终分类层之前)提取的,并且恰好有4096个维度用于所有考虑的cnn。实际上,尺寸差异很大,Bovw,LLC和FC的尺寸相当,VLAD和FV的尺寸要高得多。例如,FV-CNN的尺寸为64*10三次方,k=64高斯混合分量,而fc、bovw和llc的尺寸为4096(与k=4096视觉单词一起使用时)。然而,在实践中,由于VLAD和FV向量通常具有高度可压缩性,因此尺寸几乎无法进行比较。我们通过使用PCA将FV减少到4096维,并观察到Pascal VOC对象识别任务中分类性能的边际降低,如下所述。
除非另有规定,学习使用标准非线性SVM分类器。最初,交叉验证用于在范围{0.1,1,10,100}内选择SVM的参数C;但是,在注意到该范围内的性能几乎相同(可能是由于数据规范化)之后,C被简单地设置为常量1。相反,研究发现,重新校准每个类的SVM分数可以提高分类的准确性(当然不是地图)。通过改变SVM偏差和重新调整SVM权重向量来获得重新校准,这样每个类的负训练样本和正训练样本的中位数分数分别映射到值−1和1。
本文中的所有实验都使用VLFEAT库(Vedaldi和Fulkerson 2010)计算SIFT特性和池嵌入(Bovw、VLAD、FV)。Matconvnet(Vedaldi和Lenc 2014)库用于所有涉及CNN的实验。根据需要,下文给出了每个实验设置的具体细节。
6.1.2 数据集和实验评估
对不同的任务进行评估:DTD和OpenSurfaces中的新可描述属性和材料识别基准、FMD和KTH-T2B中的现有基准、Pascal VOC 2007中的对象识别以及MIT室内的场景识别。所有实验都遵循每个数据集的标准评估协议,如下所述。
DTD(Sect.2)包含47个纹理类,每个视觉属性一个,每个包含120个图像。图像被同样地分解到训练、测试和验证中,包括关于“关键属性”和“联合属性”预测的实验,如第2.1节所定义。并报告数据集提供的10个默认分割的平均精度。
OpenSurfaces(sect.3),包含25357张图片,其中我们选择了10422张图片,横跨21个类别。当提供段时,数据集被称为OS+R,并以每个段为基础报告识别精度。我们还用DTD的属性注释这些段,并将其称为OSA子集(当提供段时,为设置OSA+R)。对于OSA+R上的识别任务,我们报告平均精度,因为这是一个多标签数据集。
FMD(Sharan等人2009)由1000张图片组成,10种材料类别各100张。Sharan等人的标准评估方案。(2009)每节课使用50张图片进行培训,其余50张用于测试,并报告14次分割的平均分类精度。KTH-T2B[65]包含4752幅图像,分为11个材料类别。对于每种材料类别,在不同条件下捕获四个样品的图像,每个样品产生108个图像。遵循标准程序(Caputo等人2005年;Timofte和van Gool 2012年),一个材料样本的图像用于培训模型,其他三个样本用于评估模型,结果导致了四个可能的数据分割,报告了平均每类分类精度。麻省理工学院室内场景(Quattoni和Torralba 2009)包含6700张图像,分为67个场景类别。数据集提供的数据分为列车(80%)和试验(20%)两部分,评估指标为每类分类精度的平均值。Pascal VOC 2007(Everingham等人2007)包含9963个图像,分为20个对象类别。数据集提供了培训、验证和测试数据的标准分割。根据使用trecvid 11点插值方案计算的平均精度(map)报告性能(Everingham等人2007)
6.1.3本地图像描述符和内核比较
本节的目标是确定哪些本地图像描述符在纹理表示中最有效。这个问题是相关的,因为:(i)虽然sift是对象和场景识别中事实上标准的手工制作特征,但大多数作者使用专门的描述符进行纹理识别;(i i)CNN中学习到的卷积特征在用作局部描述符时尚未进行比较(相反,它们与经典的图像表示法相比较,并与它们的fc层结合使用。
对DTD中可描述的纹理属性进行了识别实验。(sect.2)使用BOVW编码器。作为副产品,实验确定了在DTD中识别47种不同感知属性的相对难度。
实验装置比较了以下局部图像描述符:Leung和Malik(lm)(Leung和Malik 2001)(48d描述符)和MR8(8d描述符)(Varma和Zisserman 2005;Geusebroek等人2003),Varma和Zisserman(2003)的3×3和7×7原始图像补丁(分别为9d和49d),Ojala等人的局部二进制模式(lbp)。(2002)(58d),SIFT(128d),以及CNN特征,摘自VGG-M和VGG-VD(512d)。
在提取了bovw表示之后,使用第4.2.3节中讨论的不同内核来训练1-vs-all SVM。线性、海林格、加性-χ2和指数-χ2。如前所述,内核被规范化。指数-χ2核需要选择参数λ;该参数被设置为训练Bovw向量的χ2距离矩阵的平均值的倒数。在计算指数χ2核之前,bovw向量是L1归一化的。BOVW中的一个重要参数是所选视觉单词的数量。K在256、512、1024、2048、4096范围内变化,并在验证集上评估性能。无论局部特征和嵌入情况如何,性能都随着k而增加,并且在k=4096左右饱和(尽管对于sift和cnns等特征,增加k的相对效益更大)。因此,在所有实验中,k都被设置为这个值。
分析表2报告了47个1-vs-all SVM属性分类器的分类精度,计算结果为(1)。正如文献中经常发现的,最好的核是指数-χ2,其次是加性-χ2、海林格核和线性核。在手工制作的描述符中,密集sift在DTD数据上明显优于最好的专门纹理描述符(bovw exp-χ2-sift为52.3%,bovw exp-χ2-lm为44%)。CNN本地描述符的识别准确率比手工特征高出10-15%。有趣的是,内核函数的选择对图像补丁和线性滤波器(例如,精度几乎是从Bovw线性补丁到Bovw exp-χ2-补丁的两倍)有着更强大的影响,而对于更强大的CNN功能几乎可以忽略不计。
图5报告了bovw-sift、bovw-vgg-m和bovw-vgg-vd描述符以及加法-χ2内核的DTD中每个属性的分类精度。正如人们所预期的那样,方格、华夫格、针织、佩斯利等概念几乎达到了完美的分类,而其他概念如污点、污点或染色则要困难得多。
6.1.4 Pooling Encoders
上一节确定了SIFT和CNN本地图像描述符在备选方案中的首要地位。本节的目标是确定哪个池编码器(第4.2)最好使用这些描述符,比较BOVW,LLC,VLAD,FV编码器和顺序敏感的FC编码器。后者,尤其是复制了文献中常见的CNN传输学习设置,CNN特征是根据网络的fc层提取的。
实验设置与之前的实验类似:使用相同的sift和cnn vgg-m描述符;bovw与hellinger内核结合使用(指数变量稍微好一点,但更贵);相同的k=4096码本大小用于LLC。vlad和fv使用更小的码本这些表示形式增加了描述符的维数(第6.1.1)。由于SIFT和CNN功能分别为128和512维,因此K分别设置为256和64。第五节进一步分析了视觉词数变化对FV表示的影响。6.1.5。
在用fv合并局部描述符之前,通常使用PCA美白来消除这些描述符之间的关联。在这里,PCA被应用于SIFT,另外将它的维数减少到80,因为经验表明这可以提高识别性能。第节研究了PCA约简对卷积特征的影响。61.7.所有实验中都使用了改进版的FV(第3),同样,对于VLAD,我们将有符号平方根应用于结果编码,然后将其归一化组件(第4.2.3节)。
分析结果见表3
下表比较了三个网络上的fc-cnn、fv-cnn,分别是在imagenet上训练的vgg-m、vgg-vd和alexnet,以及在密集筛选上训练的ifv。
我们在受控环境下的纹理数据集、B材料数据集(fmd、kth-t2b、os+r)、C纹理属性(dtd、os a+r)和D一般分类数据集(msrc+r、voc07、mit室内)和细粒度分类(cub、cub+r)上评估了这些描述符。对于这个实验,假设区域支持是已知的(并且等于除OS+R和MSRC+R之外的所有数据集的整个图像,对于cub+R,它被设置为鸟的边界框)。
使用没有我们这样零件的型号,性能为62.8%
粗体值表示结果优于现有的最先进水平。
结论这些实验的结论是:(i)IFV和VLAD比其他无序池编码器更好,(i i)像FV这样的无序池编码器至少和具有CNN特征的FC池一样好,而且通常明显优于前者。
6.1.5 CNN 的变体比较
本节对CNN本地描述符进行了额外的实验,以找到最佳的变体。
实验设置使用与前一节相同的设置。我们比较了从vgg-m、vgg-vd以及简单的Alexnet获得的fc-cnn和fv-cnn局部描述符的性能
分析结果详见表4。在该表中,这里的分析主要集中于纹理和材质数据集,但其他数据集的结论相似。一般来说,vgg-m优于alexnet,vgg-vd明显优于vgg-m(如在fmd上,fc-alexnet得到64.8%,fc-vgg-m得到70.3%(+5.5%),fc-vgg-vd得到77.4%(+7.1%)。但是,从fc池切换到fv池比切换到更好的cnn池更能提高性能(例如,在DTD上,从fc-vgg-m切换到fc-vgg-vd可以提高7.1%,而从fc-vgg-m切换到fv-vgg-m可以提高11.3%)。结合fv-cnn和fc-cnn(通过叠加相应的图像表示),vgg-vd的精度提高了1-2%,vgg-m的精度提高了3-5%。添加fv-sift也没有显著的好处,改进最多为1%,在某些情况下(m it,fmd),它会降低性能。
接着,详细分析了深度对卷积特征的影响。图6报告了在深度增加时提取的特征的几个数据集上的vgg-m和vgg-vd的精度。合并方法固定为fv,高斯中心数k的设置使得描述符2kdk的整体维数为常量。对于vgg-m和vgg-vd,随着深度的增加,性能得到了显著的改善,并且通过最深的特性(vgg-m的绝对精度提高了32%,vgg-vd的绝对精度提高了48%)获得了最佳的性能。性能以更快的速度增长,直到第三个卷积层(conv3),然后速度逐渐变慢。vgg-vd中早期的层的性能比vgg-m中相应的层差得多,事实上,vgg-vd的性能与vgg-m中最深(第五)层对应的conv5_1的性能相匹配,conv5_1的深度为13。
结论:这些实验的结论如下:(i)更深层次的模型显著提高了性能;(i i)从fc池切换到fv池有着更大的影响,尤其是对更深层次的模型;(i i i)将fc池和fv池结合在一起有一个适度的好处,在整合sift特性方面没有任何好处;(iv)在非常深的层次上。P模型中,大部分性能增益是在最后几层实现的。
6.1.6 FV Pooling Versus FC Pooling