【读点论文】WEAKLY-SUPERVISED TEXT INSTANCE SEGMENTATION 通过文本转录信息就能实现字符实例分割,看示例效果可以,期待源码开放解析

WEAKLY-SUPERVISED TEXT INSTANCE SEGMENTATION

ABSTRACT

  • 文本分割是一项具有挑战性的视觉任务,具有许多下游应用。当前的文本分割方法需要像素级注释,这在人力成本上非常昂贵,并且在应用场景中受到限制。 在本文中,我们首次尝试通过桥接文本识别和文本分割来执行弱监督文本实例分割。洞察力在于,文本识别方法提供了每个文本实例的精确注意位置,并且注意位置可以馈送到文本自适应细化头(TAR)和文本分割头。 具体而言,所提出的TAR通过对注意位置执行两阶段迭代细化操作来生成伪标签,以适应相应文本实例的准确边界。同时,文本分割头采用粗略的注意位置来预测由上述伪标签监督的分割掩码。此外,我们通过将分割结果视为输入文本图像的增强版本来设计掩码增强对比学习,从而改善视觉表示并进一步提高识别和分割的性能。实验结果表明,所提出的方法在 ICDAR13-FST(提高 18.95%)和 TextSeg(提高 17.80%)基准上明显优于弱监督实例分割方法。
  • 论文地址:[2303.10848] Weakly-Supervised Text Instance Segmentation (arxiv.org)
  • 语义分割任务是将标签集中的标签分配给图像中的每个像素。在完全监督设置的情况下,数据集由图像及其相应的 像素级类特定注释(昂贵的像素级注释)。但是,在 weakly-supervised 设置,数据集由图像和相应的注释组成,这些 相对容易获得,例如图像中存在的对象的标签/标签。

INTRODUCTION

  • 近年来,文本分割任务引起了越来越多的研究兴趣,因为它在计算机视觉研究和许多实际应用中发挥着重要作用,例如字体样式转换、场景文本删除和交互式文本图像编辑。因此,文本分割任务可以促进这些下游任务,并减轻手动标记像素级文本区域的大量人力劳动

  • 早期的文本分割工作主要沿用一般物体语义分割的设计,以像素级标注作为监督。尽管现有的文本分割方法在多个基准测试中取得了可观的表现,但这些方法严重依赖于大量带有像素级标注的数据,例如 [Rethinking text segmentation: A novel dataset and a text-specific refinement approach] 中提出的方法使用 196K 像素级标注训练数据取得了文本分割的当前最佳表现,这耗费了数百个工时,但在应用场景中仍然有限(缺乏网页文本或文档文本的文本分割数据)。此外,现有的文本分割方法仅区分文本和背景,即当前方法无法获得实例级的分割结果,通常对下游任务的帮助有限

  • 最近,有人提出了 通用对象分割方法,这些方法由图像中的对象类别而不是像素级注释进行弱监督。然而,文本分割中存在一些具有挑战性的问题,例如不可预测的字体、多样的纹理和非凸轮廓。因此,直接应用弱监督的通用分割方法来解决文本分割任务会取得较差的性能。

  • 因此,我们的目的是提出一种文本分割方法,该方法 1) 不受像素级注释的影响,2) 能够进行文本实例分割。 我们的主要观察结果是,在基于注意机制的文本识别器的解码阶段可以准确预测文本实例的粗略位置。通过向分割头提供足够的初始信息(即文本实例的视觉特征、粗略位置和分类),可以获得文本实例分割结果,这听起来很合理。

  • 以这些先验知识为指导,我们设计了包含三个模块的所提出方法:文本识别模块、文本分割模块和文本自适应细化(TAR)模块。作为预处理步骤,我们使用现成的文本检测器来提取文本行。对于检测器裁剪的每一行文本图像,所提出的识别模块会预测其文本实例并通过注意机制感知它们的粗略位置。我们的见解是通过向分割模块提供足够的信息将无标签注意图锻造成分割蒙版:

    • 1)粗略注意位置作为初始种子,
    • 2)分类结果作为文本实例的感知知识
    • 3)视觉特征作为文本图像的全景。
  • 随后,我们再次使用所提出的 TAR 模块锻造注意图以生成逐像素的伪标签作为分割模块的监督。具体而言,TAR 是一个两阶段细化模块,以迭代方式拟合每个文本实例的有效区域。通过训练,注意力图的形状更加贴近文本实例,从而进一步提高伪标签的质量,正是这种注意力图和伪标签之间的迭代相互增强使得我们的方法有效。此外,在获得分割掩码后,我们自然而然地想到可以在分割结果和输入文本图像之间进行基于掩码增强的对比学习,以丰富特征表示并抑制复杂背景带来的干扰,从而实现更好的识别和分割性能。它还可以作为即插即用的模块,为现有的识别方法带来益处。总而言之,这项工作的贡献如下:

    • 本研究首次尝试提出一种弱监督的文本实例分割方法,该方法将文本分割与文本识别结合起来,从而弥合了这两个领域中孤立的过程之间的差距
    • 我们提出了一个文本自适应细化(TAR)模块,该模块通过两阶段迭代过程提供具有快速推理速度的高质量伪标签。
    • 我们设计了一种基于掩码增强的对比学习策略,以提高文本识别和文本分割的性能。作为一种即插即用的解决方案,它可将现有文本识别方法的性能平均提高 2%。
    • 实验结果表明,所提出的方法在文本分割基准上的表现优于通用弱监督分割方法,具体来说,在 ICDAR13FST 数据集上表现优于 18.95%,在 TextSeg 数据集上表现优于 17.80%。

RELATED WORKS

Generic Weakly-Supervised Segmentation Methods

  • 近几十年来,提出了几种用于实例分割的弱监督方法 ,这些方法通常使用边界框或类激活图 (CAM) 作为每个实例的粗略位置,然后细化粗略位置以获得细粒度的分割掩模。虽然这些弱监督的通用实例分割方法可以实现与使用像素级注释作为监督的方法相当的性能,但这些方法在应用于文本分割任务时无法达到令人满意的性能

Text Segmentation Methods

  • 传统方法直接为灰度设置阈值或使用马尔可夫随机场 (MRF) 分离前景和背景。近年来,出现了一些基于深度神经网络的方法。作者提出了 TextRnet 和一个新的文本分割数据集,其中 TextRnet 利用独特的文本先验(例如纹理多样性和非凸轮廓)在文本分割基准上实现了最佳性能。[Bts: A bi-lingual benchmark for text segmentation in the wild] 的作者主要关注双语文本分割,他们提出了一个双语文本数据集以及 PGTSNet,其中包含一个插件文本突出显示模块和一个文本感知模块,以帮助区分文本语言。最近,Textformer 利用文本组件之间的相似性,提出了一个多级转换器框架来增强不同粒度的文本组件和图像特征之间的交互。然而,上述方法只能将文本与背景区分开来,而提出的文本实例分割对于下游任务将更实用。

METHODOLOGY

  • 概述:如图 1 所示,所提出的方法主要由三个模块组成:1)基于注意机制的文本识别模块。2)文本分割模块。3)所提出的文本自适应细化模块。更多细节如下。
    • 在这里插入图片描述

    • 图 1. 所提方法的总体架构。识别模块、分割模块和细化模块分别位于灰色、米色和紫色背景上。彩色显示效果最佳。

Text Recognition Module

  • 我们按照 SAR 的方式构建了文本识别模块,该模块在具有轻量级框架的同时提供了所需的注意位置。值得注意的是,识别基线可以用其他基于注意的识别器替换,以追求更好的性能。

  • 在现实生活中,文本的尺度各不相同。为了应对这一挑战,设计了一个具有 FPN 特征融合的定制主干 [10],以提取三个级别的特征。给定输入图像 X ∈ R H × W × C X \in \R ^{H×W×C} XRH×W×C ,从下到上,提取的不同级别的视觉特征分别表示为 F 1 ∈ R H 2 × W 2 × C F^1 \in \R ^{\frac H2×\frac W2×C} F1R2H×2W×C F 2 ∈ R H 4 × W 4 × C F^2 \in \R ^{\frac H4×\frac W4×C} F2R4H×4W×C F 1 ∈ R H 8 × W 4 × C F^1 \in \R ^{\frac H8×\frac W4×C} F1R8H×4W×C 。随后,通过几乎免费训练自适应权重,融合的特征设法保持不同级别之间的尺度不变性,表示为:

    • F f u s e l = α l ⋅ F 1 → l + β l ⋅ F 2 → l + γ l ⋅ F 3 → l , ( 1 ) F ^l _{fuse} = α^ l · F ^{1\rightarrow l} + β ^l · F ^{2\rightarrow l}+ γ ^l · F ^{3\rightarrow l} ,(1) Ffusel=αlF1l+βlF2l+γlF3l,(1)
  • 其中 l 表示融合特征的空间层级,α l 、β l 和 γ l 是可训练的自适应权重。 S y m b o l → d e n o t e s Symbol \rightarrow denotes Symboldenotes 调整大小变换。如图 1 所示,这些具有不同尺度的融合特征图将被并行处理,以下统一表示为 F。随后,采用 2 层 BiLSTM 编码器提取整体特征 hw,用于初始化 LSTM 解码器的隐藏状态。基于注意机制的解码器旨在以循环方式对条件分布 P(y|X) 进行建模,表示如下:

    • P ( y ∣ X ) = ∏ t = 0 T P ( y t ∣ g t ; h t ) ( 2 ) P(y|X) =\prod^ T _ {t=0} P(y_t|g_t; h_t) (2) P(yX)=t=0TP(ytgt;ht)(2)

    • 其中 ht 表示 LSTM 解码器的隐藏状态。 gt 称为 glimpse 向量,计算步骤如下:

    • 在这里插入图片描述

    • 其中 Fij 是 F 中位置 (i; j) 处的特征向量,Nij 是位置 (i; j) 附近的八个像素;WF 、Wh 和 ~W 是线性变换的可学习参数;αij 是位置 (i; j) 处的注意权重。利用 glimpse 向量 gt 和隐藏状态 ht,可以通过以下变换预测第 t 个文本实例:

    • y t = s o f t m a x ( W p [ h t ; g t ] ) , ( 6 ) y_t = softmax(W_p[h_t; g_t]), (6) yt=softmax(Wp[ht;gt]),(6)

    • 其中Wp为线性变换。最终文本识别模块的损失如下:

    • L t e x t = − ∑ t = 1 T l o g P ( y ^ t ∣ y t ) L_{text} = −\sum ^T _{t=1} log P(\hat y_t|y_t) Ltext=t=1TlogP(y^tyt)

    • 其中 y^ 是输入图像中文本的真实值。

Segmentation Module

  • 通过一个核大小为 1×1 的卷积层,融合特征 F、注意图 A 和文本实例预测 y 的嵌入被连接成组合特征 F c ,作为分割模块的输入。分割模块旨在为第 i 个文本实例生成粗掩模 Mi ,主要由带有跳过连接的转置卷积层组成。 粗掩模有两个通道(即前景掩模和背景掩模),并由细化模块生成的二值化伪标签进行监督,这将在第 3.3 节中详细介绍。粗掩模的损失计算如下:

    • L s e g = ∑ t = 1 T B C E ( m t ; p t ) L_{seg} =\sum ^T _{t=1} BCE(m_t; p_t) Lseg=t=1TBCE(mt;pt)

    • 其中 pt 表示第 t 个粗掩模的像素级伪标签,BCE 表示二元交叉熵损失。

Refinement Module

  • 通用弱监督分割方法已经开发出基于无参数像素自适应卷积的细化技术 [11],该技术快速而高效。在此基础上,我们提出了一种针对文本分割任务的两阶段细化策略。为了在第 t 个时间步更新伪标签上的每个像素 p t,我们有:
    • 在这里插入图片描述

    • 其中 A 表示核中 pt 所有相邻像素的集合,V 表示实际控制细化外观的视觉特征。k 是一个核函数:

    • 在这里插入图片描述

    • 其中 σ 表示核内视觉强度的标准差。我们对文本分割的关键设计是将细化操作分为两个阶段。请参考图 2 以获得生动的解释:1)在第一阶段,我们使用主干特征作为 TAR 的视觉指导,这实际上改变了文本实例朝向有效感受野的粗略位置,从而使伪标签覆盖了文本实例的更多区域。2)在第二阶段,我们使用图像 RGB 作为 TAR 的视觉指导,以获得文本实例的细粒度伪掩码。由于第一阶段已经覆盖了文本实例的大部分,因此第二阶段的文本片段可以更完整,这是合理的。

    • 在这里插入图片描述

    • 图2. 所提出的两阶段TAR过程的解释。

Mask-augmented Contrastive Learning

  • 通过得到的分割结果,我们自然而然地想到这些分割掩码可以作为模型进行对比学习的正数据增强。 通过识别基线,可以得到输入图像、相应的分割掩码、整个训练批次的集合以及批次中除输入之外的图像的投影特征,分别表示为 Pi 、Pp、U 和 Pn。我们有 lNCE 作为对比损失:

    • 在这里插入图片描述

    • 其中 τ 是温度参数。sim(a; b) 是测量 a 和 b 之间的特征距离,它是通过 s i m ( a ; b ) = a T b ∣ ∣ a ∣ ∣ ⋅ ∣ ∣ b ∣ ∣ sim(a; b) =\frac {a^ Tb} {||a||·||b||} sim(a;b)=∣∣a∣∣∣∣b∣∣aTb计算得出的余弦相似度。因此,增强掩模对比学习的损失计算如下:

    • 在这里插入图片描述

  • 与主要的识别分割过程不同,掩码增强对比学习有助于提取更好、更稳健的呈现方式,从而抑制野外文本图像复杂背景的影响。

Training Objective

  • 所提出方法的总体损失计算如下:

    • L = L s e g + λ r e c L r e c + λ c L c L = L_{seg} + λ_{rec}L_{rec} + λ_cL_c L=Lseg+λrecLrec+λcLc

    • 其中 λrec 和 λc 是我们方法中平衡三个模块损失的超参数。推理过程在图 1 的左下区域得到演示:在所有三个级别上使用粗掩模,即 M1、M2 和 M3 被二值化并组合以生成细粒度掩模作为最终分割结果。

EXPERIMENTS

Datasets and Implementation Details

  • 数据集 我们网络的训练和验证涉及文本识别数据集和文本分割数据集,其中仅使用文本标签。 为了预热识别模块,我们有几个来自文本识别领域的流行数据集和未标记数据,详细信息在附录中介绍。 联合训练阶段涉及文本分割数据集,例如 ICDAR2013-FST 、TextSeg 、Total-Text 、MLT S 和 COCO TS 。 与以前的方法不同,我们只使用文本标签而不是像素标签。 双语文本相关基准 [Benchmarking chinese text recognition: Datasets, baselines, and an empirical study] 也可用于训练识别模块。

  • 实施细节 输入的大小设置为 48×160,融合特征的通道数设置为 512。请注意,后续模块并行处理三个级别的特征。提出的两阶段 TAR 模块的迭代次数分别设置为 2 和 8。我们的方法是用 PyTorch 实现的,并在具有 24GB 内存的单个 NVIDIA RTX 3090 GPU 上进行训练。批量大小设置为 32,学习率为 1.0。我们单独对识别模块进行热身训练,然后与分割模块联合训练。超参数 λrec 和 λc 根据经验设置为 1 和 0.1。

Comparison with Existing Methods

  • 我们在前面提到的五个公共文本分割基准上进行了实验以评估我们的方法,并列出了以下方法的性能:(a)弱监督通用实例分割方法,包括 [Weakly supervised instance segmentation using class peak response]、[Weakly supervised learning of instance segmentation with inter-pixel relations]、[Object counting and instance segmentation with image-level supervision]、ShapeMask 和 BBAM 。(b)最先进的文本分割方法,包括 DeeplabV3 、HRNetV2-W48 和 TexRNet ,请注意,这些都是全监督方法,充当上限,我们的方法预计不会超过该上限。按照大多数分割手稿的风格,我们采用 fIoU(前景交并比)作为评估指标。如表 1 所示,使用相同的训练数据对具有可用公共资源的通用弱监督实例分割方法进行重新训练。

  • 由于 MLT-S、COCO-TS 和 Total-Text 不包含文本标签,因此不用于评估弱监督方法。而我们的方法可以通过将识别模块转为推理模式在上述三个数据集上训练分割。因此,所提出的方法能够利用文本识别数据集和未标记数据集进一步提高性能并抑制过度拟合。总而言之,我们的方法在所有可用数据集上都明显优于 SOTA 弱监督分割方法:在 ICDAR13FST 上,我们比之前的 SOTA [BBAM ] 领先 18.95%,而在 TextSeg 上,我们领先 17.80%。同时,所提出的方法实现了全监督 SOTA [Rethinking text segmentation: A novel dataset and a text-specific refinement approach] 性能的 82% 以上。我们还评估了伪标签在推理中的性能:如表 1 最后一行所示,利用伪标签生成分割蒙版可以获得与使用分割模块输出相当的性能。

    • 在这里插入图片描述

    • 表 1. 与其他方法的性能比较,其中 Seg2 表示带有文本标签的 ICDAR2013-FST 和 TextSeg,Seg5 表示所有五个文本分割数据集。TR、UT 分别表示文本识别数据集和未标记的文本数据集。T、S、Bc、Bw 分别表示文本标签、像素级分割标签、文本实例级边界框注释和词级边界框注释。“pseudo”表示使用二值化伪标签测试结果。

Ablation Studies

  • 我们进行了广泛的消融研究,以评估所提出的模块和训练策略的有效性。为了评估所提出的 TAR 的优越性,我们比较了其他细化方法,即在弱监督分割方法中非常流行的 FC-CRF 和 PRM 。如表 2 所示,所提出的 TAR 与 FC-CRF 相比实现了 30 倍以上的加速,与 PRM 相比实现了 2 倍的加速,并且 TAR 在准确率上显著优于 PRM 和 FC-CRF,分别高出 25.03% 和 6.29%。

    • 在这里插入图片描述
  • 我们还进行了消融研究,以评估 mask 增强对比学习、热身和联合训练的有效性。如表 3 所示,如果我们的模型配备了对比学习策略,我们模型中的识别器准确率将提高 1.94%,fIoU 将提高 0.80%。此外,实验结果表明,热身和联合训练策略对我们的模型是必要的,详细信息在附录中讨论。

    • 在这里插入图片描述

Further Discussions and Analysis

  • 分割结果可视化如图 3 所示,在所采用的五个文本分割数据集中存在几个挑战:1)所有选定的图像都是在野外拍摄的,背景复杂。2)TextSeg 的样本展示了具有挑战性的美学字体类型。3)在 ICDAR2013-FST 的示例中出现了意外的光照情况。尽管存在上述三个挑战,但我们方法的可视化结果仍然令人满意。

    • 在这里插入图片描述

    • 图 3. 文本分割结果的可视化。

  • 文本分割有助于文本识别 理论上,原始输入和分割掩码之间的对比学习策略可以用于使所有现有的文本识别方法受益。我们选择了一些近年来非常流行的文本识别器 [An end-to-end trainable neural network for image-based sequence recognition and its application to scene text recognition, Show, attend and read: A simple and strong baseline for irregular text recognition, Autostr, Read like humans],以观察采用我们的策略时的性能提升。这些方法都经过了相当程度的重新训练,并在我们的数据集(任何带有文本标签的数据集)上进行了测试。根据表 4 中的实验结果,所有选定的方法都实现了准确率的略微提升(平均 2%)。

    • 在这里插入图片描述
  • 下游应用有趣的下游应用(例如,图像文本删除和文本实例样式转换)在附录中展示。

CONCLUSION

  • 本文首次尝试提出一种弱监督文本实例分割方法。此外,我们提出了一个两阶段文本自适应细化模块 TAR 来生成高质量的伪标签。此外,我们开发了一种掩模增强对比学习策略并使其可插入,从而提高了我们的方法和现有文本识别方法的性能。实验结果表明,所提出的方法在 ICDAR13-FST 上的表现明显优于弱监督分割方法 18.95%,在 TextSeg 上的表现明显优于弱监督分割方法 17.80%,并且达到了全监督 SOTA 性能的 82%。 最后但同样重要的是,所提出的方法在实际场景中驱动了多个下游应用。

A. DOWN-STREAM APPLICATIONS

  • 与[Rethinking text segmentation: A novel dataset and a text-specific refinement approach]相比,所提出的方法可以生成文本实例分割掩码,为下游应用提供更强大、更可控的操作。

  • 文本实例删除 一些行业(例如广告、电影、电视等)迫切需要场景文本删除。在这些场景中,在保持其他内容不变的情况下删除视频或图像中不需要的文本是一项具有挑战性的任务。尽管 实现了看似令人满意的文本删除效果,但由于其语义分割性质,其应用场景受到限制,即该方法会删除图像中的所有文本,无论是否需要。与以前的方法不同,我们的方法使用户能够删除特定的不需要的文本实例,同时保持其他文本不变。此应用程序的可视化如图 4 所示。

    • 在这里插入图片描述

    • 图 4. 文本实例删除的示例。

  • 文本实例风格迁移 文本分割可以帮助将字体风格迁移到给定的文本图像,这通常需要准确的文本掩码。在这项工作中,我们将字体风格迁移升级到文本实例级别,这意味着用户可以将不同的风格迁移到不同的文本实例。图 5 显示了文本实例风格迁移的示例。通过结合可控风格迁移和文本实例移除,人们可以轻松地在野外对文本图像进行数据增强,从而为文本相关研究生成具有复杂真实世界背景的高价值合成数据集。

    • 在这里插入图片描述

    • 图 5.文本实例风格转换的示例。

B. WARM-UP AND JOINT TRAINING

  • 热身对识别器的重要性 如上所述,所提出的方法应提前热身识别器。由于分割模块的伪标签来自识别器生成的注意力图,如果识别器对文本实例位置的认识有错误,细化模块将不会产生有效的伪标签,如图 6 所示。下面一行显示细化模块基于未对齐的注意力图生成不精确的伪标签,这将进一步误导分割模块。因此,热身策略对于所提出的方法产生准确的注意力定位至关重要。此外,正如中间一行所示,一个有趣的观察是,对于像“C”、“O”和“D”这样的文本实例,它们初始注意力的细化有时会被它们自己的空心结构误导(这是不可避免的),并且模型需要长时间的联合训练才能摆脱这种空心陷阱。

    • 在这里插入图片描述

    • 图 6. 粗略注意定位生成的伪标签具有不同质量的案例研究。标题为“正常”和“空心陷阱”的行显示正常情况,“错位”表示失败情况。请注意,可视化结果是在联合训练阶段开始时捕获的。

  • 联合训练的必要性 在识别模块热身之后,分割模块将进行联合训练以实现更好的性能。在热身阶段,识别器可以为每个文本实例生成一个粗略的位置(图 7(b))。然而,与 CAM 不同,文本识别器的注意机制倾向于关注文本实例的中心。将这种集中注意力细化为初始种子无法完全感知实例边界。因此,当识别模块和分割模块进行联合训练时,识别器生成的注意图逐渐学会更接近相应文本实例的形状(如图 7(c)和图 7(d)所示),从而为分割模块提供质量更好的伪标签。简而言之,我们方法的有效性基于注意力图和伪标签之间的这种相互增强。此外,消融实验也验证了联合训练的必要性

    • 在这里插入图片描述

    • 图 7. 联合训练期间注意力位置的可视化。为了便于理解,注意力被二值化。

    • 还需要指出的是,我们观察到在联合训练开始时识别损失波动很大。这种现象很可能是由注意力图的重塑引起的,随着训练时间的延长,这种现象将消失。

  • 用于热身训练的文本识别数据对于文本识别数据集的热身,我们使用 Syn90K 、SynthText 、IC13 等,这遵循了最近文本识别方法的流行趋势。此外,通过半监督训练策略使用未标记的数据集,即 BOOK32 、TextVQA 和 ST-VQA 。要启用半监督训练,我们只需将文本识别模块切换到评估模式。

C. ADDITIONAL EXPERIMENTS

  • 我们将加权平衡与推理时间的经验配置的实验结果放在表6和表5中。
    • 在这里插入图片描述

    • [2] : Weakly supervised instance segmentation using class peak response

    • [3] : Weakly supervised learning of instance segmentation with inter-pixel relations

    • [4] : Object counting and instance segmentation with image-level supervision

    • [5] : Shapemask: Learning to segment novel objects by refining shape priors

    • [6] : Bbam: Bounding box attribution map for weakly supervised semantic and instance segmentation

    • 在这里插入图片描述

  • 13
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

羞儿

写作是兴趣,打赏看心情

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值