论文详读《SegCTC: Offline Handwritten Chinese Text Recognition via Better Fusion between Explicit and Im》

SegCTC: Offline Handwritten Chinese Text Recognition via Better Fusion between Explicit and Implicit Segmentation
本篇是华南理工大学 金连文教授团队的一篇关于文本识别的论文,发表在ICDAR2023上的一篇文章。
论文:网络上一搜索就能搜到
代码:未开源
(如果你们学校没有购买ICDAR会议论文,可联系金连文教授团队,金教授人非常好,我就是联系的,然后他们团队发我论文全文的。)

在论文中有很多“引用段落”,是我自己在阅读论文时不理解的,非常希望各位能够一起探讨

Abstract

手写中文文本识别(HCTR)仍然是一个具有挑战性且未解决的问题。现有的识别方法主要分为两类:显式与隐式分割方法。显式分割识别方法使用显式的字符位置信息来训练识别器。然而,基于伪标签的常用弱监督训练策略使得对于困难字符样本难以获得有效的监督训练。相比之下,隐式分割识别方法使用所有的文本注释进行监督训练,但由于缺乏字符位置的显式监督信息,容易出现对齐问题。为了充分利用显式和隐式分割方法的互补性,我们提出了一种新的方法,SegCTC,更好地将这两种方法整合到一个统一的、更强大的识别器中。具体来说,我们设计了一个混合的基于分割和不基于分割的特征融合模块(S²FFM),以更好地融合显式和隐式分割方法的特征。此外,还提出了一种共同转录策略,以更好地组合来自不同分支的预测。在包括CASIA-HWDB、ICDAR2013、SCUT-HCCDoc和MTHv2在内的四个广泛使用的基准测试上进行的实验表明,我们的方法在不同情景下都实现了手写中文文本识别任务的最新性能。

1 Introduction

手写中文文本识别(HCTR)仍然被视为一项具有挑战性且尚未解决的问题,主要是由于大量的字符类别、多样化的书写风格以及频繁出现的字符接触或重叠问题。目前主流的识别方法主要分为两类:显式分割和隐式分割。基于隐式分割的识别方法,如基于隐马尔可夫模型(HMM)、连接主义时序分类(CTC)和注意力机制,在场景和文档场景的文本识别中取得了巨大成功。与使用过分割策略的显式分割方法相比,隐式分割方法只需要文本注释进行训练,而不需要昂贵的字符边界框注释。然而,中文字符具有更复杂的二维结构,一些中文字符的组件可以被视为独立的字符,这种情况下隐式分割方法容易出现错位问题。

与拉丁文字母不同,汉字更加独立,因此在识别之前将文本行分割成单独的字符更为直观。显式分割方法更符合这种实践。此外,为了克服显式分割方法对字符边界框注释的依赖,近年来提出了基于伪标签的弱监督训练策略。基于伪标签的现有弱监督训练策略使用具有字符边界框注释的合成数据进行预训练。在训练阶段,首先推断没有字符边界框注释的真实数据样本,然后通过一定规则过滤出的“可靠”结果被用作伪标签来监督训练。对于难以分类的字符,预测结果很可能是“不可靠”的,因此无法为其生成相应的伪标签以进行进一步的训练。这使得进一步提高对于困难样本的识别能力变得困难。

论文讨论点1:

这一段关于弱监督的阐述,我不是很理解。它的意思是:

先使用模型训练,然后推理没有注释的数据,然后根据一定的规则过滤出相对可靠的数据。过滤出来后呢?将相对可靠的数据用来训练吗?
(1)怎样判定可靠的数据?

(2)得到可靠的数据之后,主要用来干什么呢?

为了验证对这两种识别方法优缺点的上述推测是否正确,我们分别基于显式分割([14])和隐式分割(基于CTC)使用相同的骨干结构和数据训练了两个识别模型。使用这两个模型推断ICDAR2013离线手写中文文本行数据集时,三种类型的预测错误(插入、删除和替换)的百分比如下表所示:

对于诸如“插入”和“删除”之类的错位错误,隐式分割模型的分割更频繁,而显式分割模型更容易出现误分类错误“替换”。这验证了我们之前的假设:对于基于隐式分割的模型,错位是更大的问题;而基于伪标签训练的显式分割模型则容易因为伪标签的生成不完整而产生误分类错误。

为了充分利用这两类识别方法的互补性,我们设计了SegCTC,这是一个新的HCTR模型,集成了它们的优点并弥补了它们的缺点。我们提出了混合分割和无分割特征融合模块(S²FFM),用于融合显式分割和隐式分割分支。S²FFM使得两种不同类型的监督可以相互反向传播。在推断阶段,显式分割和隐式分割两个分支都可以从另一个分支提取的特征中受益。此外,我们引入了一种共同转录策略(Co-T),以完全结合来自两个不同分支的预测,以获得更准确的结果。我们在包括CASIA-HWDB、ICDAR 2013、SCUT-HCCDoc和MTHv2在内的四个广泛使用的基准测试上进行了实验。我们的方法在这些数据集上实现了最先进的性能。

本文贡献如下:

(1)我们提出了一种新的HCTR模型,SegCTC,将基于显式分割和隐式分割的识别分支的优势结合起来,形成一个更强大的识别器。

(2)我们设计了混合分割和无分割特征融合模块(S²FFM),用于融合两个不同的识别分支,比直接将两个分支并行连接在骨干网络后更充分地融合了两个不同的分支。

(3)我们引入了共同转录策略(Co-T),以获得更准确的预测文本。

(4)大量实验证明,SegCTC在多个离线中文手写文本行基准测试中达到了最先进的性能。

2. Related Work

手写中文文本识别(HCTR)的目标是将中文手写文本行图像转录为相应的文本。目前主流的文本识别方法大致分为两类:显式分割方法和隐式分割方法。

2.1 Explicit Segmentation Methods

大多数以前的显式分割方法[22,21,23]都基于一种过分割策略,首先对文本行图像进行过分割,然后基于分类结果、语言模型和几何背景等信息搜索最佳的分割-识别路径。基于过分割策略的显式分割方法很容易受到字符接触或重叠的影响。除了使用过分割策略的方法外,彭等人 [15] 提出了一种三分支架构,用于端到端的手写中文文本分割和识别。

上述描述的先前方法通常需要字符边界框注释,这更加耗时。为了解决这个问题,王等人 [25] 提出了一种基于过分割的模型,采用弱监督训练,通过最小化字符串级注释上的边际对数似然来实现。**彭等人 [14] 的方法在计算预测文本与注释文本之间的编辑距离时,将匹配的字符视为“相等”,并将其视为伪标签生成的“可靠”预测。**生成伪标签的先决条件是正确的字符分类。对于难以分类的字符,它们的伪标签无法生成,导致它们无法进行进一步的训练。

2.2 Implicit Segmentation Methods

与需要字符边界框注释的显式分割识别方法相比,隐式分割识别方法只需要文本注释。**隐式分割识别方法主要有三类:基于隐马尔可夫模型(HMM)、基于连接主义时序分类(CTC)和基于注意力机制。**基于HMM的方法通常使用滑动窗口方式进行特征提取,并使用级联的HMM进行建模。另一类隐式分割识别方法基于CTC。这类方法通常首先使用CNN将文本行图像提取为帧,然后使用RNN对上下文关系进行建模,最后使用CTC进行对齐。Messina等人[12]将多维LSTM(MDLSTM)和CTC结合起来解决HCTR问题。吴等人[28]引入了可分离的MDLSTM来减少RNN结构的计算消耗。刘等人[7]构建了一个只使用卷积层和CTC损失的快速HCTR模型,以及一个基于Transformer的语言模型,该模型采用上下文束搜索策略,适用于CTC方法。广泛用于场景文本识别的基于注意力机制的方法也可以用于HCTR。修等人[32]使用多级多模态融合网络来改进基于注意力机制的解码器。

2.3 Combination of Explicit and Implicit Segmentation Methods

由于显式分割和隐式分割的识别方法具有不同的优势,一些学者尝试将它们结合起来以提高识别性能。朱等人[36]使用卷积组合策略将基于CTC和基于过分割策略的识别结果结合起来。然而,这种方法仅使用识别器预测的文本而不是概率信息,并且需要额外训练组合网络。为了解决过分割方法难以识别重叠和接触字符的问题,田中等人[19]添加了一个CTC识别网络来辅助字符分割。但是,该方法没有将分割结果反馈给CTC识别网络以提高其识别性能。

3 Proposed Methodology

3.1 Overall Framework

SegCTC的总体结构如图1所示。我们的模型由三部分组成:CNN骨干用于提取特征,混合分割和无分割特征融合模块(S²FFM)用于集成不同类型的特征,以及输出层用于输出预测结果。
在这里插入图片描述
根据ResNet-18 [4] 的结构,我们的骨干网络由八个残差块堆叠而成,如图1所示。给定输入图像 I ∈ C×H×W(其中C、H和W分别是图像的通道数、高度和宽度),骨干网络将通过一个16倍的下采样因子来降低宽度和高度,以获得特征图 F ∈ 512 × H/16 × W/16。

由骨干网络提取的特征图 F ∈ 512× H/16 × W/16 将被送入 S²FFM 模块,以整合不同类型的特征(第3.2小节)。S²FFM 将输出四个一维特征图,其高度已经下采样为1,即:
在这里插入图片描述
其中 P l o c Ploc Ploc P b b o x Pbbox Pbbox P c l s Pcls Pcls 分别表示显式分割识别分支(以下简称 Seg. 分支)的字符位置、字符边界框和字符分类输出,遵循 [14]。这三个输出的示意图如图2所示。其中, P c t c Pctc Pctc 是隐式分割识别分支(以下简称CTC分支)的输出。L 是四个一维特征图的宽度,可以被认为是沿着宽度方向将每个特征图均匀地分成 L 个帧。nclass 表示字符类别的数量。
在这里插入图片描述

讨论点2:关于L的理解

这里我对L的理解是,L表示一行中可能出现的字符数,应该是个超参数,如:L=32,表示一行最多32个字符。

获取字符位置的方法:

Seg分支与一般目标检测相同以获取字符边界框。置信度小于置信度阈值 t c o n f t_{conf} tconf的帧将首先被丢弃。然后,使用具有IoU t I o U t_{IoU} tIoU的非最大抑制(NMS)[13]来去除重复的边界框。其余的边界框根据相应的px从左到右进行排序,得到最终的预测文本和每个字符的边界框。在我们的方法中, t c o n f t_{conf} tconf设置为0.55, t I o U t_{IoU} tIoU设置为0.15

3.2 Hybrid Segmentation-based and Segmentation-free Feature Fusion Module (S²FFM)

正如在第1节中讨论的那样,显式分割识别方法可以利用字符定位信息来应对对齐失败的问题,但受到字符分类错误问题的困扰,而隐式分割识别方法通过全文本监督来解决字符分类错误问题,但受到对齐失败问题的困扰。由于这两种识别方法的互补性,我们在模型中引入了两个不同的分支:Seg. 分支和CTC 分支,并提出了混合分割和无分割特征融合模块(S²FFM)。这个模块使得监督可以从CTC 分支向Seg. 分支进行反向传播,作为基于伪标签的弱监督的补充。同时,Seg. 分支的字符定位监督也可以反向传播到CTC 分支。

如图1所示,由骨干网络提取的特征图 F 首先被划分为四个头部,然后使用三个Conv + BN + LeakyReLU(CBL)块在高度方向上进行8倍下采样,而宽度方向则不进一步下采样。

在CBL之后,引入了一个Transformer编码器 [20] 来融合Seg. 分支和CTC 分支的两个不同识别头部。我们将Seg. 分支和CTC 分支的识别头部的特征图在宽度方向上拼接在一起,并将其输入到Transformer编码器中。换句话说,两个头部中特征图的宽度方向的每个帧被认为是一个单独的标记。在Transformer编码器输出后,我们将按原始顺序组合标记以恢复两个识别头部。这两个恢复的识别头部继续通过通道数转换块(CNC)完成分类预测。Transformer编码器可以通过自注意力机制完全融合每个标记,使得每个头部在输出时能够充分了解相同和不同头部中标记的信息。两种不同类型的损失也可以反向传播到每个识别头部进行互补监督

为了进一步提高模型的语义捕获能力,我们参考了[14]中的方法,在Seg. 分支的字符分类头部中添加了另一条输出路径,通过LSTM [5]。这个带有LSTM的输出路径仅在训练期间保留,在推断期间将被丢弃。在Seg. 分支中,位置头将结合边界框头和字符分类头的特征,以获得更好的字符定位效果。

3.3 Weakly Supervision Strategy

我们在Seg. 分支上使用的基于伪标签的弱监督训练策略遵循[14]。整个训练过程分为两个阶段:预训练阶段和训练阶段。

在预训练阶段,我们需要使用具有字符边界框注释的合成数据进行训练,以便模型具有基本的字符分割能力。字符边界框和分类注释将直接参与损失的计算:
在这里插入图片描述
在这里插入图片描述
其中, P l o c P_{loc} Ploc表示字符中心所在的帧集,而 N l o c N_{loc} Nloc P l o c P_{loc} Ploc的补集。符号 p l o c l 、 p b b o x l 、 p c l s l p^l_{loc}、p^l_{bbox}、p^l_{cls} ploclpbboxlpclsl分别代表第l帧中的字符位置、字符边界框、字符分类输出,它们对应的地面真实值分别为 g b b o x l 、 g c l s l g^l_{bbox}、g^l_{cls} gbboxlgclsl。同时,CTC损失将用于监督CTC分支,如:
在这里插入图片描述
其中, p c t c 和 g c t c p_{ctc}和g_{ctc} pctcgctc分别代表CTC分支的输出和文本内容的地面真值。总损失由以下给出:
在这里插入图片描述
在训练阶段,数据集将包括具有字符边界框注释的合成数据和仅具有文本内容注释的真实数据。对于具有字符边界框注释的样本,监督与预训练阶段的监督保持一致。当遇到仅具有文本内容注释的样本时,我们首先对样本进行推断,获得字符置信度、边界框和分类的预测结果。然后,计算地面真实文本与预测文本之间的编辑距离。匹配为“相等”的字符被视为“可靠”预测,并将其预测边界框存储在缓存中作为伪标签。当一个字符的伪标签未存储在缓存中时,此推断的结果将直接复制到缓存中;否则,此推断的结果将与缓存中的原始结果加权:
在这里插入图片描述
其中, u b b o x i , j 、 c b b o x i , j 和 p b b o x i , j u^{i,j}_{bbox}、c^{i,j}_{bbox}和p^{i,j}_{bbox} ubboxi,jcbboxi,jpbboxi,j分别表示要更新到缓存的边界框、缓存中的原始边界框和通过这次推理得到的边界框。

u c o n f i , j 、 c c o n f i , j 和 p c o n f i , j u^{i,j}_{conf}、c^{i,j}_{conf}和p^{i,j}_{conf} uconfi,jcconfi,jpconfi,j表示置信度符号, i , j i,j i,j表示第 i i i个样本的第 j j j个字符。权重 λ i , j \lambda^{i,j} λi,j可以如下计算:
在这里插入图片描述

这里的问题有很多!很多点都没有搞懂:

(1) P l o c P_{loc} Ploc表示字符中心所在的帧集,那么 ∣ P l o c ∣ |P_{loc}| Ploc又表示的是什么呢?表示集合的数量吗?其他几个符号同理

(2)公式4中的 p c l s l , g c l s l p^{l,g^{l}_{cls}}_{cls} pclsl,gclsl又表示什么呢?表示 l ∈ P l o c 且 p c l s 与 g c l s l \in P_{loc} 且 p_{cls}与g_{cls} lPlocpclsgcls相等的值吗?

(3)公式9中的 c s c o r e i , j 、 p s c o r e i , j c^{i,j}_{score}、p^{i,j}_{score} cscorei,jpscorei,jshi 表示什么?

3.4 Co-transcription(Co-T)

在转录阶段,我们将Seg.分支和CTC分支的输出结合起来,以获得更准确的结果。为了保持两个分支的字符分类输出的概率分布相似,我们通过对其按照下面进行归一化:
在这里插入图片描述
其中,μcls、σcls、μctc 和 σctc 分别表示两个分支的字符分类输出的概率的均值和方差,可以计算为:
在这里插入图片描述
其中,Ploc 表示 Seg. 分支中字符中心所在的帧集,而 Pnob 表示 CTC 分支中非空白帧的帧集。

由两个分支预测的文本长度可能不同,因此需要使用联合转录算法来合并两种不同长度的预测文本。
在这里插入图片描述
如图3所示,我们首先计算两个预测文本之间的编辑距离,并将所有匹配的字符标记为“相等”(如图3所示,“达到国家”和“级环境空气质量”在两个分支中均为相等)。对于无法匹配的字符,如果它们在原始预测文本中是连续的,我们将它们合并成一个“块”(如Seg.分支中的“三”,“示淮”和CTC分支中的“标准”)。后续处理将以文本块为单位进行。对于两个分支中的文本块,我们基于位置进行一一匹配(例如Seg.分支中的“示淮”匹配到CTC分支中的“标准”)。有些块可能无法与另一个分支中的相应块匹配(如Seg.分支中的“三”)。我们计算每个文本块的平均归一化概率(文本块中每个字符的归一化概率的平均值)。在一组一一匹配的文本块中,我们选择具有较高平均归一化概率的文本块,并将其添加到最终预测文本的相应位置。对于无法一一匹配的文本块,如果它们的平均归一化概率大于Seg.分支中的μmaxcls或CTC分支中的μmaxctc,则它们也包含在最终预测文本的相应位置。μmaxcls和μmaxctc可以计算为:
在这里插入图片描述
其中,yclsmax和yctcmax分别表示ycls和yctc中每个帧的最大值。

4. Experiments

4.1 Datasets

(1) CASIA-HWDB [8]是一个由1020位作者撰写的广泛使用的离线手写中文文本行数据库。该数据库包括CASIA-HWDB 1.0-1.2,其中包含3,895,135个孤立字符,以及CASIA-HWDB 2.0-2.2,其中包含52,230行文本。值得注意的是,CASIA-HWDB 1.0-1.2的字符样本并非从CASIA-HWDB 2.0-2.2的文本行中裁剪而来。

(2)ICDAR2013-Offline [33]是一个竞赛数据集,包含由60位作者撰写的3,432个离线手写中文文本行。

(3)SCUT-HCCDoc [35]包含由相机拍摄的12,253张离线手写中文文档图像,其中包含116,629行文本。

(4)MTHv2 [11]是一个包含汉文大藏经和多版本汉文大藏经的中国历史文献数据库。它包含105,579行文本,带有字符边界框注释

4.2 Evaluation Metrics

我们采用了在HCTR中常用的两个评估指标,称为准确率(AR)和正确率(CR),可以计算如下:
在这里插入图片描述
其中,Nt表示注释中的字符总数,De、Se和Ie分别表示删除、替换和插入错误的总数。

4.3 Implementation Details

输入的文本行图像被调整大小为高度128,同时保持原始图像的纵横比,并且RGB值被归一化到[0, 1]。对于合成图像,我们采用均值为0、方差为0.01的高斯噪声作为数据增强,而对于真实数据则不采用任何数据增强策略。 批量大小被设置为32。在预训练阶段,我们仅对合成数据进行了37,500次迭代的训练。采用Adadelta [34]来优化模型的非Transformer编码器部分,初始学习率为0.33,在10,000次迭代后降至0.1。在训练阶段,同时使用合成数据和真实数据。模型的非Transformer编码器部分采用随机梯度下降(SGD)进行300,000次迭代的优化,初始学习率为0.02。学习率在75,000、150,000和225,000次迭代时乘以0.08。Transformer编码器部分使用AdamW [9]进行优化,学习率保持在1e-5。

4.4 Language Model

最近,语言模型已经成为提升HCTR识别器性能的关键。我们采用了一个基于Transformer的语言模型,该模型遵循[7]的方法来提升SegCTC的性能。这个基于Transformer的语言模型是使用与[14]相同来源的语料库进行训练的。由于语言模型[7]需要CTC风格预测作为输入,因此我们只将CTC分支的输出输入到语言模型中。

4.5 Experiments on ICDAR2013-Offline Dataset

在这里插入图片描述
数据合成:孤立字符样本来自CASIA-HWDB1.0-1.2。在合成过程中,我们简单地将孤立字符样本粘贴到白色背景上,并记录字符的边界框(演示见图4a)。文本行的内容是通过从字符集或第4.4小节描述的语料库中随机抽样字符获得的。在预训练阶段,语料库的使用率为0.5,而在训练阶段,语料库则独占使用。数据在训练期间在线合成。

数据准备:在预训练阶段,我们仅使用合成数据进行训练。在训练阶段,我们同时使用CASIA-HWDB 2.0-2.2数据集和合成数据进行训练,其中合成数据的比例为0.5。模型的评估使用ICDAR2013-Offline数据集。我们根据[15]的方法校正CASIA-HWDB 2.0-2.2的文本行图像的角度,使文本水平。
在这里插入图片描述
结果与分析:在ICDAR2013-Offline数据集上,SegCTC与先前的方法进行了比较,结果见表2。SegCTC在没有语言模型的情况下实现了最先进的性能,略低于彭等人[14]使用语言模型的方法。即使在真实数据中没有字符边界框注释,SegCTC也可以通过Seg.分支输出来预测字符的边界框。部分样本的识别和分割结果如图5所示。
在这里插入图片描述

4.6 Experiments on SCUT-HCCDoc Dataset

数据准备和合成:在预训练阶段,我们仅使用合成数据,而在训练阶段,我们使用SCUT-HCCDoc数据和合成数据以3:7的比例进行训练。合成数据的字符样本来自101个字体文件,将字符样本简单粘贴在白色背景上形成文本行图像。合成数据的示例如图4b所示。

结果与分析:由于CTC分支的性能要比Seg.分支的性能好得多,因此在本实验中使用Co-T策略进行预测输出的性能不如使用CTC分支的性能。我们提供了使用Co-T策略的输出结果和使用CTC分支的输出结果,将它们与先前的方法进行比较,并在表3中列出。SegCTC在AR指标和CR指标上均实现了最先进的性能。部分样本的识别和分割结果如图5所示
在这里插入图片描述

4.7 Experiments on MTHv2 Dataset

数据准备和合成:在预训练阶段,仅使用合成数据。在训练阶段,MTHv2数据和合成数据的比例为1:1。由于MTHv2数据集具有字符边界框注释,因此我们使用该注释从图像中裁剪出字符样本。裁剪出的字符样本带有背景,因此我们在拼接文本行图像时使用同一图像中的字符样本以确保背景的相似性。合成数据的示例如图4c所示。

结果与分析:MTHv2数据集具有字符边界框注释。为验证弱监督训练的有效性,我们在训练阶段移除了字符边界框注释。表4展示了SegCTC与先前方法在MTHv2数据集上的比较结果。我们的方法仅略低于彭等人[14]的方法,并优于其他方法。部分样本的识别和分割结果如图5所示。
在这里插入图片描述

4.8 Ablation Studies

在本节中,我们验证了融合显式分割和隐式分割识别的识别方法是否能有效提高识别器的性能,以及我们提出的S²FFM和Co-T对识别性能改进的影响通过消融实验。ICDAR2013-Offline的消融结果如表5所示。实验表明,通过直接连接两个分支(而不使用Transformer编码器来融合两个识别分支)可以提高识别器的性能。同时添加S²FFM和Co-T策略可以显著提高识别器的性能。
在这里插入图片描述
为进一步验证融合Seg.分支和CTC分支的SegCTC是否比单独使用一个分支更有效,我们进一步在ICDAR2013-Offline、SCUT-HCCDoc和MTHv2数据集上进行了实验。我们使用相同的骨干网络和相同的训练策略,唯一的区别是保留或不保留两个分支。实验结果如表6所示。在ICDAR2013-Offline和SCUT-HCCDoc数据集上,SegCTC优于仅使用其中一个分支的识别模型,而在MTHv2数据集上,其性能略低于仅使用Seg.分支的识别器。
在这里插入图片描述

4.9 Limitation

根据当前的研究,当使用Co-T策略时,SegCTC无法保证每个字符的输出都来自Seg.分支,因此也无法保证每个字符都有边界框的输出。此外,如果Seg.和CTC分支之间存在较大的性能差距,那么Co-T策略可能无法超越任何一个分支。因此,是否使用Co-T策略应该基于实际需求来决定。

5. Conclusion

本文探讨了显式和隐式分割识别模型在HCTR问题中的优势和劣势。基于显式和隐式分割识别方法的互补性,我们提出了一种新颖的识别模型SegCTC,以更充分地融合这两种不同的识别方法。我们提出的S²FFM利用基于自注意力机制的Transformer编码器更有效地融合了来自两个分支的识别头。为了更准确的预测,提出了一种联合转录策略,将来自两个不同分支的预测结合起来。对ICDAR2013-Offline、SCUT-HCCDoc和MTHv2数据集的实验表明,SegCTC在HCTR任务中可以实现最先进的性能。

  • 22
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值