建筑风格是建筑本身自带的属性,它通常代表着在某段时期的历史文化,反映着当时的时代背景和人文艺术。建筑作为人类创造的艺术,包含一定的人文因素,宗教建筑更能体现这个特点。佛教建筑包括佛寺、佛塔和石窟,一般都是由主房、配房等组成的严格对称的多院落结构。基督教的建筑主要有罗马式、拜占庭式和哥特式3种风格。而伊斯兰教的建筑恢宏精致,具有比较明显的特征,包括:圆形的穹顶、墙壁上的纹样等。所以对建筑风格进行分类,有助于帮助人们了解当地的人文背景。建筑风格也反映着时代背景。世界七大奇迹之一的埃及金字塔,不仅要耗费大量的人力、物力,还要花费非常久的时间设计建造,但却作为了古埃及最高统治者法老的坟墓,这就反映了当时统治阶级对奴隶阶级的剥削。因此,对建筑风格进行准确的分类,不仅有助于人们了解建筑文明,也能更好地反映当时的历史文化信息。
近年来,建筑风格分类的研究多借助机器学习和计算机视觉技术。在早期,学者们主要利用机器学习技术来实现分类任务。Zhang等[1]将基本的建筑构件以块的形式表示,通过对块采用分层稀疏编码进行建模来表示空间关系。然而,一些外观看起来完全不同的块可能具有相近的特征空间,这导致了拥有丰富细节构件的建筑分类不准确的问题。Xu等[2]提出了一种基于可变形的组件模型(deformable part-based model,DPM),对全局和局部特征进行建模,将建筑构件草图化,从而捕捉到了更多的细节特征,实现了更精细的分类。赵佩佩等[3]在DPM算法的基础上,采用基于集成投影的二次分类算法并结合支持向量机( support vector machine,SVM ),对建筑风格进行分类,降低了非建筑元素对分类结果的影响。
随着深度学习的发展,建筑风格分类领域广泛采用了卷积神经网络。郭昆等[4]使用卷积神经对建筑图像进行风格分类,并确定了卷积神经网络的最佳层数,但是分类效果较为粗糙。Wang等[5]设计了一个双分支的网络结构,不仅可以判断输入的图片是否为哥特式建筑,还可以得出哥特式建筑来自哪个国家。但是该方法只能区分是不是哥特式这一种建筑风格。Yi等[6]通过重新定义不同房屋风格的特征元素,然后使用深度学习方法进行分类,区分出了8种难以区分的房屋风格,满足了更细致的分类要求。
由于注意力机制在自然语言处理任务中表现突出,计算机视觉任务中也引入了注意力机制。这类工作主要分为两类。一类是网络只有注意力模块组成。例如,Zhao等[7]提出了含有两种注意力机制的SAN网络,Ramachandran等[8]将ResNet的空间卷积全部替换成自注意力机制等。这类模型虽然获取了局部和全局的联系,具有低复杂度的优点,但是通常需要庞大的数据量和强大的计算力作为支撑。另一类是同时使用注意力模块和卷积神经网络。Wang等[9]将空间注意力机制与通道注意力机制结合并加入到卷积神经网络(convolutional neural networks, CNN)骨干网络中,以提高网络对建筑图像纹理特征的提取能力,使网络拥有关注不同建筑特征的空间位置信息的能力,从而提高分类准确率。
近年来,CNN和Transformer[10]结合的方法也成为了计算机视觉领域关注的重点问题。Peng等[11]提出了Conformer,通过设计特征耦合单元(feature coupling unit,FCU),将CNN和Transformer并行连接起来,使得模型能够融合不同分辨率下的全局特征和局部特征。虽然Conformer在许多任务上有不错的表现,但是存在模型大,参数量多等缺点。Chen等[12]提出了Mobile-Former,在MobileNet[13]和Trasnformer两个并行结构之间设计了一个双向连接桥,实现局部特征和全局特征双向融合,从而融合了CNN和Transformer。该方法继承了轻量级网络MobileNet的优点,节省了一定的计算量,但是仍然属于双网络分支结构,依然存在模型大,参数量多的缺点。
对建筑风格分类是一项复杂且困难的工作。一方面,建筑风格的形成是一个渐进的过程,当某个风格传播到其他地方时,都会融合当地特色。另一方面,由于设计师设计建筑时并不是与世隔绝的,他们或多或少会受到已经存在的风格特点的影响,所以建筑风格之间存在相似之处是很常见的。例如,爱德华式建筑(图1)包含巴克洛式穹顶和希腊复兴式门窗立柱。因此,在不同建筑图像中找出属于相同风格的建筑特征,以及突出单个建筑的风格特征都是很有挑战性的工作。
|
图 1 具有不同风格元素的爱德华式建筑 Figure 1 Edwardian architecture with different stylistic elements |
针对以上问题,本文提出一种融合CNN和Transformer的网络,使其具有CNN良好的提取局部特征的能力和Transformer联系全局特征的能力。它能够应对不同场景下建筑风格分类的任务,并且同时缓解了由两个网络分支带来的网络模型大、参数量多的问题。
本文的主要创新点包括3个方面:(1)通过研究一种CNN和Transformer的融合方式,使得融合后的网络兼具良好的提取特征的能力和聚焦重要区域的能力;(2)设计了融合模块CT-Block,该模块能使CNN提取的特征平缓地过渡到Transformer结构中去,增加分类准确率;(3)将三元组损失运用到建筑风格分类上,让网络能够区分不同建筑风格之间微小的差别,增强其分辨能力。
1 建筑风格分类网络设计自从深度学习网络相比传统机器学习技术在图像分类任务比赛中以巨大的优势获胜之后,大量深度学习技术被开发利用。以CNN为骨干的网络在分类任务上都有着突出的表现。但是随着研究的不断深入,Transformer从自然语言处理领域被引入到计算机视觉领域。作为一种新的模型结构,Transformer在一些分类任务中的表现比以CNN为骨干的网络要好。许多研究[14-16]也表明,以CNN为骨干的网络在数据集规模不大,数据集不复杂的时候分类表现较好,而以Transformer为骨干的网络在数据量很大且数据复杂的情况下分类表现更好。这是因为CNN是用多层卷积提取特征,卷积有强大的局部特征提取能力;而Transformer的核心组件则是注意力机制,注意力机制不仅能提取全局特征而且能聚焦重点,能够使网络对分类结果中贡献较大的特征分配更大的权重。因此,本文研究如何融合两种网络框架,使新的网络同时具备以上两种优点,即在小规模数据集下表现出良好的特征提取能力和重要区域特征得到关注。
1.1 网络总体结构本文所提出的FCT-Net的总体框架如图2所示。输入的建筑风格图片先通过分块(Stem Cell)操作,实现降采样。通常Transformer在这一步会使用Patch Embedding,等效于和卷积核大小相同步幅的卷积,但是这种操作会丢失位置信息。所以本文使用了Stem Cell,即大小为
|
图 2 建筑风格分类网络(FCT-Net)结构图 Figure 2 Structure of architectural style classification network(FCT-Net) |
注意力机制是一种模拟人类注意力行为的方法。在CNN中,特征是以固定权重进行传递和处理的,但是在现实中,人们处理信息时往往会根据不同情形赋予不同的注意力,这就是注意力机制的灵感来源。在神经网络中,注意力机制使模型动态地针对不同特征分配不同权重。注意力机制模块为Transformer网络的核心组件,也是本文网络结构的重要组成部分。使用注意力机制不仅可以提取建筑的全局特征,而且还能让模型对建筑结构中贡献较大部分赋予更大的权重。注意力机制分为加性注意力机制和乘性注意力机制,本文使用后者,其具体表达式为
| $ \begin{array}{c}\left(\boldsymbol{Q},\;\boldsymbol{K},\;\boldsymbol{V}\right)=Conv\left(\boldsymbol{F}\right)\end{array} $ | (1) |
| $ \begin{array}{c}{\boldsymbol{A}}=\dfrac{\boldsymbol{Q}{\boldsymbol{K}}^{\mathrm{T}}}{\sqrt{d}}\end{array} $ | (2) |
| $ \begin{array}{c}{\boldsymbol{\alpha}} =so ftmax\left(\boldsymbol{A}\right){\boldsymbol{V}}\end{array} $ | (3) |
式中:Q,K,V分别代表query,key,value;
CT-Block为本文模型的主体部分,结合了CNN和Transformer两者的优点。Conformer和Mobile-Former都是双分支的融合网络,CNN部分的特征和Transformer部分的特征经过特定的模块进行交互。但是,通常这种网络结构模型大、参数多,对于小数据集来说并不友好,会导致训练时间变长,而且还有可能出现过拟合。CT-Block则很好地解决了这个问题。图3为CT-Block的结构图,输入的特征经过卷积之后,在通道维度被分为两组。两组特征分别经过卷积操作和注意力机制之后在通道维度进行拼接。这种在通道维度对特征进行处理的方法不仅实现了两个网络的融合,而且还节省了网络参数,提前将少部分特征送入到MHSA中,使得特征由CNN结构更加平滑地过渡到Transformer结构中。
|
图 3 CT-Block结构图 Figure 3 Structure diagram of CT-Block |
M为MHSA的通道数,为模型超参数。为突出本文模型与纯CNN或者纯Transformer的不同,将图3中第一个Block中的M设置为0,即第一个Block为纯CNN。并且将最后一个Block中的M设置为4N,N为通道数,即最后一个Block为纯Transformer。第2个和第3个Block中的M在面对不同数据集、不同训练方法时会不同。
1.4 损失函数针对部分不同建筑风格之间差距过小导致分类准确率较低的问题,本文采用了三元组损失函数[18]。三元组损失函数相比一般的损失函数可以通过增大类类之间的距离来增加网络的判别能力。对建筑风格特征
| $ \begin{array}{c}{Loss}_{\mathrm{t}}=max\left({D}_{{\mathrm{ap}}}-{D}_{{\mathrm{an}}}+\beta ,0\right)\end{array} $ | (4) |
式中,
同时,为了辅助网络训练,本文也使用了交叉熵损失函数,即
| $ \begin{array}{c}{Loss}_{\mathrm{e}}=\displaystyle\sum_{i=1}^{m}{y}_{i}\mathrm{log}\widehat{{y}_{i}}+\left(1-\widehat{{y}_{i}}\right)\mathrm{log}\left(1-\widehat{{y}_{i}}\right)\end{array} $ | (5) |
式中:
最终,损失函数由上述两部分组成
| $ \begin{array}{c}Loss={\lambda Loss}_{\mathrm{t}}+(1-\lambda ){Loss}_{\mathrm{e}}\end{array} $ | (6) |
式中,
本实验使用的GPU为NVIDIA RTX
本实验采用2个数据集来验证FCT-Net的有效性。数据集A为公开数据集Architectural Style Dataset。该数据集是Xu等[2]于2014年从维基百科上收集到的关于建筑风格的图像,有25个建筑风格分类,共包含4 794张图像。这也是建筑分格分类领域使用最多的数据集。数据集B为WikiChurches,是Barz等[19]于2021年制作的教堂建筑风格的数据集,由9 485张教堂建筑图像组成。图片和样式标签都来自维基百科。由于图像尺寸大小不一,所以在实验前将图像大小统一调整为
在Architectural Style Dataset上,设计两种实验:一种是使用数据集的全部数据;另一种在该数据集中随机选出40%的类别作为实验的数据集。同时,由于建筑分类领域可参考的模型较少,为了确保对比实验的充分性,对比的模型也都来自不同的领域。在传统CNN中,选择ResNet-50和Inception-v3[21]作为参考对象;在Transformer模型中,选择Vision Transformer(ViT)和Swin-Transformer[22]作为参考对象;在CNN和Transformer结合的模型中选择Visformer[23]作为参考对象。同时也对比了建筑风格分类相关领域的模型。
由表1可知,本文模型FCT-Net在整个Architectural Style Dataset数据集和含有40%类别的数据集上的准确率分别是79.83%和83.09%。在含有40%类别的数据集上,FCT-Net比DCNN[6],MonuNet[24],ResNet-50,Inception-v3,ViT,Swin-Transformer,Visformer分别高出10.67%,11.89%,2.90%,15.94%,13.08%,7.73%和6.76%。
|
|
表 1 不同模型在Architectural Style Dataset数据集上的准确率对比 Table 1 Comparison of accuracy of different models on Architectural Style Dataset |
在含有100%类别的数据集上,FCT-Net比DCNN,MonuNet,ResNet-50,Inception-v3,ViT,Swin-Transformer,Visformer分别高出13.23%、17.90%、12.42%、19.77%、22.69%、14.55%、9.34%。而在小规模数据集上,卷积操作提取特征的能力更强,因此,ResNet-50在含有40%类别的数据集上的结果优于除本文模型外的其他模型。
WikiChurches数据集为长尾分布,为避免不同建筑风格类别的图像数量差距过大出现极端情况,去掉了2个图像数量最多和数量最少的种类。由于该数据集较新,所以选取常见的模型作为对比模型。由表2可知,FCT-Net在WikiChurches数据集上的表现优于同类其他模型,验证了FCT-Net的泛化性能。
|
|
表 2 不同模型在WikiChurches数据集的准确率对比 Table 2 Comparison of accuracy of different models on WikiChurches |
图4为FCT-Net在实验数据集Architectural Style Dataset上部分结果的混淆矩阵,本文提出的模型在个别类上的分类准确率高达100%,证明了本文模型在该实验数据集上的有效性。但是在一些类别上,FCT-Net的分类结果却低于平均分类准确率。经过仔细对比发现,分类准确率较低的类别中的部分图片与其它某些类别中的一些图片,在视觉观感上十分相似,从而难以区分,而模型缺少对图像的细粒度分类能力,导致分类准确率不高。
|
图 4 Architectural Style Dataset上部分结果的混淆矩阵 Figure 4 Confusion matrix of partial results on Architectural Style Dataset |
为进一步验证融合CNN和Transformer的方法的有效性,在2个数据集上做了对比实验,分别对比了ResNet-50和MobileNet-V2(代表CNN模型)与ViT和Swin-Transformer(代表Transformer模型)。由表3可知,FCT-Net的表现优于纯CNN或者纯Transformer的模型。
|
|
表 3 不同类型模型在公共数据集上的准确率对比 Table 3 Comparison of accuracy of different types of models on public datasets |
表4为在Architectural Style Dataset数据集上验证CT-Block有效性的实验结果。Net1的网络结构设置为前3个Block是CNN结构,第4个Block是MHSA结构。Net2的网络结构设置为第1个Block是CNN结构,后3个Block是MHSA结构。由实验结果可知,含有过渡模块CT-Block的网络结构的效果要比没有过渡模块的网络结构的效果好。
|
|
表 4 CT-Block模块在Architectural Style Dataset数据集上的准确率对比 Table 4 Comparison of accuracy of CT-Block modules on the Architectural Style Dataset |
本文针对建筑风格分类数据集小、建筑风格特征相互融合难以分类等问题,提出融合了CNN和Transformer的FCT-Net。该网络以CNN作为网络的浅层部分,充分发挥卷积操作提取特征的能力;以注意力机制模块作为网络的深层部分,在提取特征的同时,让网络关注重要区域,更好地解决含有相同特征的不同建筑风格分类问题。并且,该网络含有过渡模块CT-Block,兼顾融合特征的同时,减小模型大小,降低模型参数量,加快网络训练,适应小型建筑风格分类数据集。同时,为了进一步提高网络的区分能力,使用了三元组损失函数。实验结果表明,提出的FCT-Net模型在Architectural Style Dataset和WikiChurches数据集上达到了很好效果,但是在相似的建筑风格图片之间的分类准确率仍有待改进提高。
| [1] | ZHANG L M, SONG M L, LIU X, et al. Recognizing architecture styles by hierarchical sparse coding of blocklets[J]. Information Sciences, 2014, 254: 141–154. DOI:10.1016/j.ins.2013.08.020 |
| [2] | XU Z, TAO D C, ZHANG Y, et al. Architectural style classification using multinomial latent logistic regression[C]//13th European Conference on Computer Vision–ECCV 2014. Zurich, Switzerland: Springer, 2014: 600 – 615. |
| [3] | 赵佩佩. 基于集成投影及卷积神经网络的建筑风格分类算法研究[D]. 西安: 西安电子科技大学, 2015. |
| [4] | 郭昆. 基于卷积神经网络的建筑风格图像分类的研究[D]. 武汉: 武汉理工大学, 2017. |
| [5] | WANG R, GU D H, WEN Z J, et al. Intra-class classification of architectural styles using visualization of CNN[C]//5th International Conference on Artificial Intelligence and Security. New York: Springer, 2019: 205 – 216. |
| [6] | YI Y K, ZHANG Y H, MYUNG J. House style recognition using deep convolutional neural network[J]. Automation in Construction, 2020, 118: 103307. DOI:10.1016/j.autcon.2020.103307 |
| [7] | ZHAO H S, JIA J Y, KOLTUN V. Exploring self-attention for image recognition[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. Seattle: IEEE, 2020: 10073 – 10082. |
| [8] | RAMACHANDRAN P, PARMAR N, VASWANI A, et al. Stand-alone self-attention in vision models[C]//Proceedings of the 33rd International Conference on Neural Information Processing Systems. Vancouver: ACM, 2019: 7. |
| [9] | WANG B, ZHANG S L, ZHANG J F, et al. Architectural style classification based on CNN and channel–spatial attention[J]. Signal, Image and Video Processing, 2023, 17(1): 99–107. DOI:10.1007/s11760-022-02208-0 |
| [10] | ASHISH V, NOAM S, NIKI P, et al. Attention is all you need[C]//Annual Conference on Neural Information Processing Systems 2017. Long Beach: NIPS, 2017: 5998 – 6008. |
| [11] | PENG Z L, HUANG W, GU S Z, et al. Conformer: Local features coupling global representations for visual recognition[C]//Proceedings of the 2021 IEEE/CVF International Conference on Computer Vision. Montreal: IEEE, 2021: 357 – 366. |
| [12] | CHEN Y P, DAI X Y, CHEN D D, et al. Mobile-former: bridging mobilenet and transformer[C]// Proceedings of the 2022 IEEE/CVF Conference on Computer Vision and Pattern Recognition. New Orleans: IEEE, 2022: 5260 – 5269. |
| [13] | SANDLER M, HOWARD A, ZHU M L, et al. MobileNetV2: Inverted residuals and linear bottlenecks[C]//2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City: IEEE, 2018: 4510 – 4520. |
| [14] | CORDONNIER J B, LOUKAS A, JAGGI M. On the relationship between self-attention and convolutional layers[C]//8th International Conference on Learning Representations. Addis Ababa: ICLR, 2019. |
| [15] | SRINIVAS A, LIN T Y, PARMAR N, et al. Bottleneck transformers for visual recognition[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. Nashville: IEEE, 2021: 16514 – 16524. |
| [16] | TOUVRON H, CORD M, DOUZE M, et al. Training data-efficient image transformers & distillation through attention[C]//International conference on machine learning. PMLR, 2021: 10347 – 10357. |
| [17] | HE K M, ZHANG X Y, REN S Q, et al. Deep residual learning for image recognition[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Las Vegas: IEEE, 2016: 770 – 778. |
| [18] | SCHROFF F, KALENICHENKO D, PHILBIN J. FaceNet: a unified embedding for face recognition and clustering[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Boston: IEEE, 2015: 815 – 823. |
| [19] | BARZ B, DENZLER J. Wikichurches: A fine-grained dataset of architectural styles with real-world challenges[J]. arXiv preprint arXiv:, 2108, 06959: 2021. |
| [20] | ZHANG H Y, CISSÉ M, DAUPHIN Y N, et al. mixup: Beyond empirical risk minimization[C]//6th International Conference on Learning Representations. Vancouver: ICLR, 2018. |
| [21] | SZEGEDY C, VANHOUCKE V, IOFFE S, et al. Rethinking the inception architecture for computer vision[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016: 2818 – 2826. |
| [22] | LIU Z, LIN Y T, CAO Y, et al. Swin transformer: Hierarchical vision transformer using shifted windows[C]//Proceedings of the IEEE/CVF International Conference on Computer Vision. Montreal: IEEE, 2021: 9992 – 10002. |
| [23] | CHEN Z S, XIE L X, NIU J W, et al. Visformer: The vision-friendly transformer[C]//Proceedings of the IEEE/CVF International Conference on Computer Vision. Montreal: IEEE, 2021: 569 – 578. |
| [24] | LAMAS A, TABIK S, CRUZ P, et al. MonuMAI: Dataset, deep learning pipeline and citizen science based app for monumental heritage taxonomy and classification[J]. Neurocomputing, 2021, 420: 266–280. DOI:10.1016/j.neucom.2020.09.041 |
2024, Vol. 46
Issue (5): 1-8


