清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架

389次阅读
没有评论

点击下方卡片,关注AI视界引擎」公众号

清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架

城市村庄,被定义为城市中心附近的非正规居住区,其特征是基础设施不完善,生活条件恶劣,这与可持续发展的目标(SDGs)紧密相关,包括减贫、充足住、和可持续城市。传统上,政府主要依赖实地调查方法来监测城市村庄,但这种方法耗时较长,需要大量人力,并且可能出现延误。得益于广泛可用的和及时更新的卫星图像,最近的研究开发了计算机视觉技术来高效地检测城市村庄。然而,现有研究要么关注简单的城市村庄图像分类,要么无法提供准确的边界信息。为了准确识别城市村庄的边界,作者利用视觉基础模型的力量,并适应了分割 Anything 模型(SAM)进行城市村庄分割,称为 UV-SAM。

具体而言,UV-SAM 首先利用一个小型的语义分割模型来为城市村庄生成混合提示,包括Mask、边界框和图像表示,然后将这些提示输入到 SAM 中进行细粒度的边界识别。在中国两个数据集上的大量实验结果显示,UV-SAM 优于现有 Baseline ,并且多年的识别结果表明城市村庄的数量和面积随着时间的推移而减少,为城市村庄的发展趋势提供了更深入的洞察,并揭示了可持续城市的视觉基础模型。

本研究的数据集和代码可在此处找到:https://github.com/tsinghua-fib-lab/UV-SAM。

Introduction

城市村庄是我国非正规住区的典型代表,是主要大城市郊区和市中心密集的人口社区,通常由较老的多层建筑和狭窄的巷道组成。一方面,城市村庄为外来务工行人和低收入居民提供了经济适用房选择,有助于构成城市的社会经济结构。另一方面,城市村庄经常面临基础设施不完善、公共服务获取有限和居住条件恶劣等挑战。因此,准确识别城市村庄与联合国第11个可持续发展目标(SDG 11)相吻合,即“建设包容、安全、抗灾和可持续的人类住区”。在未来的可持续城市中,准确识别城市村庄对城市规划和治理至关重要。

传统上,城市村庄识别主要依赖于实地调查和手工制图,城市规划师会访问不同的区域,收集社会经济数据,并视觉上识别城市村庄边界。虽然这种方法提供了宝贵的洞察,但它们耗时较长,需要大量人力,并且空间和时间覆盖范围有限。近年来,利用卫星图像探索计算机视觉技术以识别城市村庄已经引起了广泛关注。大多数研究构建了图像分类模型,以判断给定的卫星图像是否包含一个城市村庄,而没有识别边界,其他研究则探索了语义分割模型,以在卫星图像中识别城市村庄边界。然而,由于卫星图像中的复杂背景干扰和城市村庄与周围社区之间没有明确的边界,现有研究在提供准确的城市村庄边界方面表现不佳,这进一步阻碍了城市村庄面积和扩张的估计。

此外,城市村庄的有限标注数据也使得分割模型容易过拟合,并且无法泛化到噪声卫星图像,例如遮挡和季节变化等。

与此同时,由于在超过一亿张图像上进行训练,最近Segment Anything Model (SAM)的视觉基础模型在泛化能力和类别无关的分割质量方面表现出显著的性能,对分割边界非常敏感,并在各种领域进行了研究。具体而言,SAM以一种需要伴随输入图像的预先提示的方式运行,例如参考点、边界框或Mask。显然,SAM提供的类别无关分割不能直接应用于语义分割。因此,一些研究探索了特定领域的精细手动提示以进行类别特定的分割,例如为医学图像分割手动标注边界框,显示出令人鼓舞的结果。因此,考虑到现有城市村庄识别研究中模糊边界识别的局限性以及SAM的泛化能力和边界敏感性,一个有趣的研究问题是SAM是否可以帮助从卫星图像中识别城市村庄。

关于上述研究问题,本文提出了一种类似于通才-专家框架的UV-SAM,用于适应SAM进行城市村庄识别。具体而言,适应的关键点在于生成能够鼓励SAM在卫星图像中关注城市村庄的类别特定的提示。因此,作者将具有大量冻结参数的SAM视为通才类别无关分割的通用模型,并开发一个具有有限可学习参数的语义分割模型作为城市村庄识别的专家模型,其中专家模型在通用模型生成提示的同时自动生成专家模型的提示,通用模型反过来更新专家模型的参数。

遵循所提出的框架,UV-SAM使用四种特定于卫星图像的城市村庄提示类别。首先,UV-SAM开发了一个类似于SegFormer的小型语义分割模型,用于为城市村庄生成粗略的分割Mask,基于此,生成城市村庄的Mask提示和框提示。其次,SAM和SegFormer中的图像编码器提取的特征图作为语义提示。此外,设计了一个提示混合模块来将这四种提示类型融合在一起,并将生成的城市村庄提示向量输入到SAM中进行城市村庄特定的分割。

总之,作者的贡献在于三个方面:

  1. 第一个引入视觉基础模型SAM进行城市村庄识别的人,这启发了在人工智能中使用基础模型为可持续城市和SDG应用。

  2. 建立了一个新颖的通用-专家框架UV-SAM,该框架可以自动生成四种独特的提示类型,并无缝地将SAM集成到城市村庄识别应用程序中。

  3. 在中国两个城市北京和西安进行了广泛的实验,结果表明作者的提出框架与最先进的模型相比实现了显著的性能改进。进一步的案例研究揭示了城市村庄在数量和面积上的演变趋势,以及它们的 spatial distribution,这为城市规划和治理提供了有价值的洞察。

Related Works

基于卫星图像的城市村庄识别。城市村庄识别是指识别出一个城市中具有城市村庄特征的区域或地区,这对于了解城市村庄的空间分布和演变至关重要。

许多研究探讨了卫星图像分类问题,以确定相应的图像中是否存在城市村庄。早期的研究应用传统的机器学习算法,如支持向量机,根据手工制作的特征来分类城市和非城市区域。近年来,采用深度学习技术,特别是卷积神经网络(CNN),从卫星图像中自动学习判别特征。例如,一些研究通过在卫星图像和街景图像上构建各种深度学习模型来分类城市村庄。另一项研究使用非常高分辨率的遥感图像和时间序列人口密度数据来分类城市非正规住区。此外,一项最近的工作[15]使用城市区域图并设计了一个上下文主-从框架来有效地检测城市村庄。然而,这些研究仅关注图像分类,而无法识别城市村庄的边界,为可持续城市提供了有限的信息。

另一方面,一些研究将城市村庄识别视为分割问题。例如,Mask R-CNN模型被用于从卫星图像中检测城市村庄并分割城市村庄的边界。另外两项研究分别利用了已建立的语义分割模型,包括全卷积神经网络(FCN)和U-Net,来映射深圳和广州的城市村庄区域。

此外,UVLens利用出租车轨迹将城市卫星图像划分为更小的块,并将其中的自行车共享上下车数据合并到这些图像块中,并使用Mask R-CNN模型来检测城市村庄。总的来说,现有的城市村庄研究要么过于关注分类,要么在语义分割上存在不准确的问题。此外,这些研究通常依赖于额外的数据来源,如街道视图和交通数据,这些数据并不适用于所有城市。

SAM应用。自2023年4月提出以来,SAM已在不同领域广泛应用,如医学图像处理,3D视觉,图像修复,目标跟踪等,可分为两种应用方式:

  1. 在SAM图像编码器上进行微调或添加 Adapter 。例如,SAMed,MedSAM 和3DSAMadopter针对医学图像分割将SAM专门定制,并集成 Adapter ,以在医学图像分割任务上获得性能改进。
  2. 生成特定任务的提示。例如,AutoSAM设计了一个辅助卷积网络,取代了医学图像领域的提示嵌入。RSPrompter 开发了基于 Anchor 点和 Query 的提示,并与SAM一起用于基于卫星图像的实例分割。由于基于SAM的应用,作者将SAM应用到城市村庄识别问题上。

Preliminary

在这一部分中,作者提供了SegFormer和SAM的问题陈述以及用于该方法的重要模型。

问题陈述。城市村庄识别是指在给定的地理区域内识别和划分城市村庄的边界,并将其与周围区域分开。因此,利用卫星图像的城市村庄识别问题可以正式定义为:

问题1:给定任意卫星图像,基于卫星图像的城市村庄识别问题是要设计方法,用于识别该图像中的特定城市村庄边界(如果存在),表示为

SegFormer构建了一个编码器-解码器框架,在语义分割任务中实现了出色的性能。在编码器部分,SegFormer使用了一种分层金字塔视觉Transformer(ViT)将输入图像分解为不同层次的区域,并在不同抽象 Level 上处理它们。在解码器部分,开发了一个多层感知机(MLP)来收集来自各个层的信息,有效地将局部注意力和全局注意力机制合并,以创建强大的表示,最终将它们上采样以生成最终的分割Mask。

SAM 设计了一个灵活的提示启用模型架构,用于类别无关的分割。具体而言,SAM由图像编码器、提示编码器和Mask解码器组成,其中图像编码器使用Mask自编码器技术预训练,提示编码器处理密集和稀疏输入,Mask解码器根据编码嵌入预测Mask。特别是,SAM支持外部提示,如框、点和文本,用于分割目标。

Methodology

通用-专家框架概述。图2呈现了UV-SAM模型的一般-专家风格的框架,以解决城市村庄识别问题。考虑到现有模型在准确定义城市村庄边界方面的局限性,在通用部分,利用SAM的强大边缘检测能力来学习这些更细的边界。此外,在专家部分,为了为SAM提供城市村庄特定的提示,使用轻量级语义分割模型SegFormer进行提示生成。清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架图像编码器。具体而言,给定卫星图像作为输入,将其输入到SAM的图像编码器,该编码器具有大量的预训练参数,并将图像输入到SegFormer的图像编码器,该编码器具有较小的可学习参数,分别输出。由于包含多个尺度的特征,UV-SAM应用了一个MLP的融合层来聚合这些特征。上述过程可以表示为:

接下来, 经过SegFormer的分类层,为其中的城市村庄生成Mask。经过图像处理后,这些Mask被用来推导相应的边界框。这个过程可以表示为:

提示生成。上述Mask和边界框被用作提示,并输入到提示编码器,结果得到稀疏提示嵌入,其中包含关于城市村庄位置细节的显式提示信息,表示为:

此外,由于都聚合了特定于城市村庄的抽象语义信息,UV-SAM还将它们都建模为语义提示。尤其是,设计了一个提示生成模块来将这四种提示类型融合在一起,其两种提示混合变体可以表示为:

其中,涉及直接添加归一化特征,确保直观地融合洞察,而涉及将归一化特征拼接后通过投影头进行维度约减,提供一种更复杂但受控的知识合成方法。两种形式的选择可能取决于要合并的信息的性质和特定任务的要求。

Mask解码器。最后,基于SAM中的混合提示和预训练Mask解码器,UV-SAM通过以下方式在卫星图像中识别城市村庄:

其中,中的元素确定特定像素是否属于城市村庄。

训练损失。与SAM类似,在较大的模型中采用一种涉及1:1:1权重组合Focal Loss, dice损失和均方误差损失的Mask预测策略。此外,SegFormer继续使用简单的交叉熵损失作为其损失函数。因此,整体损失可以表示为:

其中,是一个超参数,用于调整通用模块和专家模块的影响。

Experiments

在这一部分,作者进行实验来回答以下研究问题:

RQ1: 提出的UV-SAM模型与现有的基准方法相比表现如何?

RQ2: 提出的UV-SAM模型中每个设计模块的有效性如何?

RQ3: 提出的UV-SAM模型是否能够识别城市村庄的空间分布?

RQ4: 提出的UV-SAM模型是否能够识别城市村庄的面积和数量的变化趋势?对于数据集,根据是否标记为真实阳性来计算精确度、召回率和F1分数。

对于分割精度,使用广泛使用的交点与并集(IoU)指标,该指标计算为分割出的城市村庄和对应的真实城市村庄之间的交点面积除以并集面积。

清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架

实现。在实验中,除非另有说明,作者一直使用SAM的ViT-Large Backbone 网络和SegFormer的MiT-B0轻量级编码器。作者选择Adam优化器以促进参数学习,并集成余弦退火调度器以逐渐减小学习率。批量大小固定为4,整个训练过程跨度100个周期。作者进行学习率、权重衰减和的最优值的网格搜索,分别为{0.005, 0.0005, 0.00005}、{0.01, 0.001}和{0.1, 1, 10}。

此外,根据验证性能,作者分别选择用于北京和西安,具体实验细节请参见链接3。

Overall Performance (RQ1)

表2显示了在北京和西安数据集上的整体性能比较。从这些结果中,作者可以得出以下观察:

UV-SAM在两个数据集上都实现了最佳性能。结果表明,作者提出的模型达到了最先进的性能,成功地将SAM应用于城市村庄识别。在分割精度方面,与 Baseline 相比,UV-SAM在两个数据集上IoU方面分别比最佳 Baseline 提高了4%-9%。在检测精度方面,在两个数据集上,UV-SAM在F1-score方面也表现出比最佳 Baseline 更好的性能。值得注意的是,在DeepLabv3+上的性能差异。这是由于DeepLabv3+的结构与北京数据集的特征非常匹配。DeepLabv3+架构将高层语义信息与低层特征捕捉边界细节相结合。北京独特的特征,如密集的传统庭院式建筑和较短的建筑,与西安的高层密集建筑不同。此外,由于通用-专家框架,表2中的所有 Baseline 都可以作为专业模块集成到UV-SAM中,这可以带来城市村庄识别的进一步性能提升。

现有的基于SAM的模型在城市村庄识别方面表现不佳。根据表2中的结果,RSPrompter 在IoU和F1-score方面的表现明显落后于其他基准模型,例如,北京数据集的最差IoU和F1-score分别为0.462和0.687。这些结果表明,RSPrompter中的可学习提示无法捕捉到与城市村庄特别相关的高度复杂和抽象语义特征,因此对SAM没有提供有用的指导。此外,性能下降也强调了SAM在城市村庄识别方面的非易用性。清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架基于Transformer的编码器展示了比其他基于CNN的模型更好的城市村庄语义理解。在Transformer架构的能力下,作者提出的UV-SAM在IoU和F1-score指标方面明显优于其他CNN模型。如前所述,城市村庄包含复杂和高级的语义概念,其卫星图像中的边界划分受到周围环境上下文因素的影响。因此,具有注意力机制的Transformer架构可以更好地捕捉其中的细粒度特征,而CNN模型主要抓住高层次的语义抽象,导致不准确的边界和较差的性能。

此外,为了更好地评估城市村庄的Mask质量,作者引入了人类评估。具体而言,将模型生成的Mask提供给标注者,并要求他们从1到10对每个Mask的质量进行评分。10分表示识别出的城市村庄区域边界没有明显的错误,而1表示Mask与城市村庄无关。作者比较了SAM和SegFormer生成的Mask以及 GT 数据,这些数据如图3所示。

结果表明,UV-SAM在两个数据集上都优于SegFormer,实现了更好的Mask质量。例如,在Beijing数据集上,UV-SAM的平均评分达到7.59,而SegFormer为6.87,与 GT 数据7.67相比。在评分较低的范围内,UV-SAM的表现略低于 Baseline 。相反,在评分较高的范围内,UV-SAM的频率明显增加。这些结果表明SAM对于分割边界的有效性。清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架

Ablation Study (RQ2)

为了评估UV-SAM中每个模块的有效性,表3显示了不同模型变体在两个数据集上的检测和分割性能。根据结果,如果没有框提示,UV-SAM性能分别下降了1.8%和75.9%。因此,框提示在性能保证中起着重要作用,它引导SAM的Mask解码器专注于感兴趣的区域。此外,西安数据集上的性能下降可以很大程度上归因于提示添加的简单方式。此外,Mask提示提供了密集的嵌入,特别强调图像中的物体边界,为两个数据集的IoU分别贡献了11.9%和0.4%。

此外,具有城市村庄特有的抽象语义信息,来自图像编码器(大型)的SAM嵌入进一步在两个数据集上实现了3%-4%的改进。最后,UV-SAM在从图像编码器(小)获得的分割嵌入的帮助下,可以获得2%-3%的改进,捕获了专业像元分割模型提供的高级语义信息。因此,所有四种类型的提示都是有效城市村庄识别的必要条件。此外,如果没有SAM,UV-SAM性能会下降4.6%和2.1%。因此,像SAM这样的通用模型为城市村庄识别提供了更准确的信息。清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架

Spatial Distribution Analysis (RQ3)

为了减轻城市村庄对城市发展的潜在风险以及改善公民的生活条件,政府通常会逐步拆除并迁移其中的居民。因此,识别城市村庄的空间分布对于城市规划至关重要。在图4中,作者可视化了2020年北京六环路内城市村庄的空间分布。清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架如图所示,在北京的第二环路内,有许多历史保护区,通常由庭院式住房组成,可以容纳几户人家。尽管这些地区具有历史和文化保护价值,但通常人均居住面积较小,卫生条件差,绿化覆盖率低,这与城市村庄的定义相符。相反,城市村庄在第三和第六环路之间的分布更为稀疏。特别是,北京著名的城市村庄集群石坝村附近明显集中了城市村庄。此外,该地区的南部和东部城市村庄的密度高于西部和北部。这种分布差异可能归因于历史人口迁移模式和当地经济水平的差异。

为了量化空间分布,作者在图5中进一步绘制了与北京环路相关的城市村庄分布曲线,以面积和数量为横坐标。作者通过使用卫星影像结果中的预测Mask数量和累积像素值来粗略确定城市村庄的数量和范围。根据结果,第五和第六环路之间的城市村庄面积和数量显著增加,这是因为距离市中心足够远,并且保留了原有村庄的建筑。清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架

Evolving Trend (RQ4)

为了理解城市村庄的形成、扩张和收缩,作者在图7中使用北京和西安的卫星图像在不同时间点捕获的图像,展示了不同年份城市村庄面积和数量的变化。

根据结果,北京在2011年估计有1000个城市村庄,西安在2013年约有360个城市村庄。到2016年或2018年,城市村庄的面积只减少了不到10平方公里。然而,到了2020年,城市村庄的空间范围和数量都发生了显著的收缩,与之前的水平相比减少了50%。这种明显的趋势可能归因于政府当局推广的《北京城市总体规划(2016-2035年)》。

尤其是,吉家庙村的例子是目前正在经历转型的一个案例。如图7所示,吉家庙村被高楼环绕,它们陈旧的结构与现代景观不再协调。在2011年初,政策出台,逐步改造这些老旧建筑。因此,到2016年,它们的存在已经比2011年减少了。到2020年,它们几乎完全消失了。周围的绿色空间和高楼也在缓慢但稳定地发展。清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架

Conclusion

在本文中提出UV-SAM,一种基于视觉基础模型的城市村庄识别框架。UV-SAM框架引入了一个类似专家的语义分割模型,用于生成四种城市村庄特定的提示,然后将其输入到类似于通才的SAM模型中,以从卫星图像中识别城市村庄边界。通过全面的实验,作者在各种数据集上验证了UV-SAM的有效性,同时也为城市村庄的空间分布和时间趋势提供了深入的洞察。此外,作者的研究证明了视觉基础模型对于可持续发展目标和可持续城市的重要性。

尽管作者的结果超过了基准性能,但值得注意的是,作者的结果可能表现出一定程度的降低可解释性。因此,在未来的工作中,作者计划深入研究导致城市村庄出现和消失的复杂特征交互作用。作者还计划将所提出的框架转移到城市的贫民窟识别,以帮助理解全球非正规住区。

Experiment Details

Experiment Details for Spatial Distributions and Evolving Trends

在这里介绍了空间分布和演变趋势的预分类模块的详细信息。由于数据集的大小有限,作者引入了一个专门用于区分城市和非城市区域的二分类模型,在语义分割之前进行。该模块仅在特定城市的空间分析中应用,与作者的UV-SAM框架无关。

数据集。对于训练分类模型,为每个特定城市构建一个数据集。城市村庄区域被用作正样本,非城市村庄区域被随机选择作为负样本,以确保训练、验证和测试集上的正负样本比例接近1:1。

实现。使用ResNet50实现分类模型。作者选择Adam优化器以促进参数学习,并集成余弦退火调度器以逐渐减小学习率。学习率设置为0.0001,批量大小固定为32。为了定量衡量分类模型的性能,作者采用AUC、召回率、精确度和F1-score作为评估指标。

性能。表4显示了北京和西安数据集的性能。作者注意到,北京数据集在精确度方面取得了相当高的水平,而西安数据集的精确度明显较低。这种结果的巨大差异可以归因于多种因素的组合,尤其是西安数据集的范围有限以及可用卫星图像质量的固有差异。清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架

Spatial Distribution Analysis with Street View Images in Beijing

由于收集街景图像的成本很高,作者只能将街景图像作为辅助工具来帮助观察城市村庄的演变。如图8所示,作者从石坝村的的历史保护区和城市村庄集群中分别选择了三个街景图像。这些图像旨在展示三种截然不同的城市村庄环境风格。清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架

Evolving Trend with Street View Images in Beijing

如图9所示,作者在同一地点展示了不同年份的三个街景图像。与2013年城市村庄的混乱状况相比,该村庄在2015年被拆除。而在2019年,为了改善城市的外观,新墙被建成。清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架

Spatial Distribution Analysis with Street View Images in Xi’an

在图10中,作者可视化了西安城市区域内城市村庄的空间分布,包括莲湖区、新城区、柏林区、雁塔区、八里坊区和渭阳区。在西安,历史保护区较少。如图所示,西安主要城市区域内的城市村庄呈现出明显的横向分布模式。值得注意的是,在西安的东部,靠近石狮子村附近有明显的城市村庄聚集。至于西安的中心区域,有几个城市村庄被识别出来,这可能是由于卫星图像质量较低导致的潜在误识别。

清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架

此外,作者绘制了分布曲线以直观地描绘空间分布模式。在图11中,展示了2022年西安城市区域内城市村庄的面积和数量与其距离市中心的关系。当距离市中心在7到11公里之间时,城市村庄的数量和面积呈现出急剧的线性增长。但是,在更大的距离上,增长速率变得不那么明显。这可以归因于城市扩张的快速过程所创建的”城市-郊区-农村”结构,其中大量城市村庄集中在郊区。

Evolving Trend in Xi’an

杨家村,位于明德门的遗址,由于其负担得起的租赁选项,成为了临时居民的受欢迎选择。2013年,政府计划拆除并改造该村庄。如图12所示,2018年杨家村的大部分地区被拆除。到2022年,杨家村的一部分被改造成高层建筑,而大部分则被开发成历史公园。

清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架

从图13中展示的杨家村的街景图像可以看出,该村庄早在2014年就开始进行改造。到2019年,高层建筑的出现变得明显。

清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架

参考

[1]. UV-SAM: Adapting Segment Anything Model for Urban Village Identification.

清华大学提出UV-SAM | 巧妙结合SAM和SegFormer=新通才-专家框架

点击上方卡片,关注「AI视界引擎」公众号

 

Read More 

正文完
可以使用微信扫码关注公众号(ID:xzluomor)
post-qrcode
 
评论(没有评论)
Generated by Feedzy