基于改进YOLOX-S的玉米病害识别
2024-04-08李名博任东悦郭俊旺卫勇
李名博 任东悦 郭俊旺 卫勇
摘要:在玉米病害的影响下,玉米产量下降,其中大部分病害症状均反映在玉米的叶片上。针对人工识别叶片费时、费力、准确率低的问题提出了一种基于改进YOLOX-S网络的玉米病害识别模型,并将该模型部署到Atlas 200DK开发板中。该研究在YOLOX-S的基础上添加了4个CBAM注意力机制模块,其中3个注意力机制模块添加到网络的Backbone与Neck之间,第4个注意力机制模块添加到SPPBottleneck的2次上采样结果后,通过使用不同的权重来调整不同病害特征细节的重要程度,能够提高模型收敛速度,有效提升模型的识别精度,并基于Atlas 200DK开发板的特性及相关属性,将改进后的模型部署到开发板当中,实现了算法的移植。结果表明,改进后的YOLOX-S网络模型与YOLO v3、YOLO v4、Faster R-CNN 模型相比,在识别率与精确性方面有着显著的优势,与原模型相比,识别准确率(mAP值)提高0.2百分点,改进后的YOLOX-S网络模型对玉米病害的识别准确率高达98.75%,并且部署到Atlas 200DK开发板的模型仍然发挥良好的检测性能,可以为识别玉米病害提供参考。
关键词:病害识别;深度学习;改进型YOLOX-S;数据增强;模型部署
中图分类号:TP391.41 文献标志码:A
文章编号:1002-1302(2024)03-0237-10
进入21世纪,深度学习与人工智能技术迅速发展,许多学科都与人工智能有了交叉,由于深度学习在许多方面的成功运用,目前已有许多学者把目光转向了深度学习与农业的融合。我国的玉米种植面积极其广泛,因其具有极高的营养价值,更是农民收入的重要来源。然而,玉米在生长的过程中也会产生各种病害:大斑病、小斑病、锈病、玉米纹枯病、玉米弯孢叶斑病等[1]。因此,利用深度学习技术对病害的不同类型进行有效分类,帮助农民解决了大问题,为这一问题的求解打下了良好的基础。目前,在农业生产中使用深度学习的方法日益增多。经过对CaffeNet模型的微调,Hasan等对15种不同类型的植物进行了分类,其中包括13种病害、1种背景和1种正常叶子,每一种类型的识别准确率都超过91%[2]。Chen等将空间注意力理论与 DenseNet相结合,将玉米病害分类的精度提高到98.96%,并将其与其他3种病叶进行了比较[3]。另外,有些学者将多种深度学习模式与分类方法相结合,或利用不同的技术,将人工制造的特性与自动特征相结合,从而提高了综合结果。毕春光等根据BP神经网络容易陷入局部极小的缺点,在此基础上,利用贝叶斯神经网络,提出了一种新的预测模型,并与传统BP神经网络进行比较,试验证明,该方法具有较高的精确度,可达94.04%[4]。毛彦栋等针对玉米叶部病害图像的颜色、纹理、形状特征对病害影响的差异性,提出一种结合单特征下的SVM识别准确率和识别结果的融合多特征玉米病害识别方法[5]。本研究在YOLOX-S的基础上进行改进,加入了4个CBAM注意力机制模块,用来提高目标检测算法的识别率,采用Mosaic、MixUp、CutOut等数据增强方法,完成玉米病害的识别,并将改进型YOLOX-S算法模型部署到Atlas 200DK中,对其效果进行测试,发现GPU算法移植到Atlas 200DK上仍然拥有良好的检测性能。
1 数据集的构建
1.1 数据来源
试验时间为2022年9—12月,试验地点位于天津市西青区津静公路22号天津农学院工程技术学院。
本研究的试验数据主要来自于PlantVillage公共数据集,采用数据集中的3种玉米病害叶片与玉米健康叶片数据作为本研究的试验数据。病害种类包括玉米叶斑病、玉米灰斑病和玉米锈病,这3类病害叶片加上健康叶片的数据共计3 852张。试验数据集中的图像示例如图1所示。
1.2 数据标注
本次试验的标注工作均由6名有标识经验的专家完成,每一块玉米叶片都被一个绿色长方形的框架所包围。同时,对标注好的文件进行重新校对,以防止出现漏标误标。用XML格式存储标记过的玉米叶片,图2显示了标记过的玉米叶片和相应的 XML文档文件,该文档包括了由长方形的边框构成的玉米叶子的位置信息。在此文件中,boundingbox作为4元组(xmin,ymin,xmax,ymax),(xmin,ymin)代表boundingbox的左上方,而xmax则是bounding box的宽度和高度,并与标记的玉米叶片进行一一对应,从而将玉米的位置信息全部记录下来[6]。
1.3 数据增强
根据原始数据集,利用Mosaic、MixUp、CutOut等数据增强方法,对原始数据集进行了扩充,同时对不同像素和XML文件进行增强处理,大大缩短了重复标注的时间和人力成本[7]。原始玉米病害图像如图3所示,增强后的部分图像如图4所示。
本试验所用的玉米病害图像原始分辨率均为256像素×256像素,为了达到更好的训练效果,对原始数据集进行了预处理,统一调整了分辨率,将数据增强后的7 023张玉米病害图像统一缩小到224像素×224像素。其中,玉米健康叶片、玉米叶斑病、玉米灰斑病、玉米锈病的图像数分别为1 982、1 360、1 560、2 121张,具体如图5所示。
本次数据增强对玉米病害图像及玉米的健康叶片图像进行了重新划分,按照8 ∶1 ∶1的比例将玉米病害数据分为训练集、测试集和验证集。加强后的训练集、测试集、验证集样本总数分别为 5 617、703、703张,数据增强后的训练集测试集图像数量详情如表1所示。
2 改进的YOLOX-S算法
2.1 YOLOX-S目标检测算法
2021年,旷视科技基于YOLO系列,结合近几年国内外研究成果,对其进行了优化和完善,并推出了YOLOX算法。YOLO v5在目标检测方面掀起了一股网络结构分解、剖析的热潮,YOLOX算法正是基于YOLOX的思想,將YOLOX模式转化成了多种可选择的网络。例如,在YOLO v3_spp中加入几个常见的改进方法,增加YOLO v3 baseline基准模型,增加不同的trick,其中不局限于Decoupled、SimOTA,从而获得YOLOX-Darknet53网络;针对YOLO v5的4种不同的网络,分别使用高效的trick进行优化,最终获得YOLOX-S、YOLOX-M、YOLOX-L、YOLOX-X这4种不同的网络模式,还对YOLOX-Nano、YOLOX-Tiny等轻量级网络进行了设计,并对其适应性进行了试验[8]。
2.2 注意力机制
注意力机制源于人脑特殊的信号加工机理。在卷积神经网络中,注意力机制被广泛用于自然语言处理、机器视觉等领域,通过使用不同的权重来调整信息的重要性,将重点信息乘以较高的权重,强调其重要性,同时对非关键信息进行加权滤波,从而实现对复杂任务的快速筛选[9]。
2.2.1 通道注意力
通道注意力主要集中在图像的语义信息上,使网络对所给的图像进行更多的详细分析。在检测网络中,每一个卷积层都含有大量的滤波器,用于学习代表所有通道的局部空间连通方式。通道关注的是各个通道间的关联,并对各个通道赋予不同的权值以确定它们的重要性。其主要原理为将输入的特征图F进行最大池化和平均池化处理,获得1×1×C的特征图,然后将其送至共享网(Shared MLP),逐个单元相加,由Sigmoid激活函数进行最后的详细计算,最终形成信道注意力MC[10]。SENet是“通道关注”的经典作品,曾经获得2017 ImageNetworks和Image类目任务的冠军。它的模块结构在图6中显示,输入的特征是X,C1是特性通道,经过一系列的卷积转换,输出的是C2的特性通道。首先,在空间维度上对各特征进行压缩,将各二维特性通道变成一个真实C,从而得到先前的整体感知范围,再进行激发运算,通过对信道重要性的预测,采用W参数并根据信道大小对信道进行加权,最终对通道维度的初始特征进行重新校正。SENet的运算量非常小,可以在任意的网络中任意插入,提高了性能。
2.2.2 空間注意力
空间注意力集中于图像的空间位置信息,使得网络对图像的有效特征进行了详细分析。它的主要功能是利用大卷积核进行卷积操作,在扩展感知范围的同时,对物体的空间位置信息进行优化,从而实现对目标的精确定位。空间注意力的模式结构如图7中所显示,首先,在输入的特征曲线F上,沿信道轴线对同一位置的像素进行最大的池化并平均,从而获得两幅H×W×1的特征图,再用7×7的卷积运算和Sigmoid激活功能,从而生成空间注意力MS[11]。
2.3 改进的YOLOX-S网络结构
YOLOX-S算法的网络结构较为复杂,大致分为3个部分,包括主干特征提取网络CSPDarknet,它在特征提取上有重要的作用,然后是加强特征提取网络FPN,特征提取后进行加强,最后是分类器与回归器YOLO head。首先会对输入进来的图片进行resize的处理,采用Focus网络结构进行特征抽取,在抽取图像时,会对图像进行高、宽的压缩,同时增加通道数量。然后,使用Resblock body的结构进行特征提取。这里一共使用4次Resblock body的结构。先选取一个3×3的滤波器,通过滤波器对输入的层进行宽和高不同通道的压缩,对通道进行调整。在第4次的结构中加入了SPP结构,即使用不同池化和的不同池化进行特征提取,如图6中的3个池化和分别为5、9、13。在使用卷积方法来减少通道数目之前,进行池化后得到了一个结果,然后将这个结果进行迭代。主干特征提取网络CSPDarknet起到重要作用,经过它可以得到3个有效特征层,对玉米病害的RGB三色图进行3、4、5次压缩,结果的shape分别为(80×80×256)、(40×40×512)、(20×20×1 024)。然后会利用这3个有效特征层进行加强特征提取网络的构建[12]。在加强特征提取网络中,本质上是进行特征融合,在融合的过程中,会出现上下取样的特征融合。采用CSPDarknet和 FPN技术,在卷积学习过程中得到3种不同的有效特征层。将各特征点视为一系列有通道数的特征点,用YOLO-s头判定所述特征点,并判定所述特征点是否存在对象与所述特征点相对应。所以,YOLOX-S网络的整体工作是提取特征点,强化特征点,并对特征点所对应的目标状态进行预测。改进YOLOX-S目标检测算法模型融合了4个注意力机制模块,在骨干网络提取出来3个有效特征层,然后分别加入了注意力机制,同时在采样后的结果加入注意力机制,加入的注意力机制均为CBAM模块。改进后的YOLOX-S网络结构如图8所示。
2.4 特征提取与特征融合
首先,利用CSPDarknet对玉米病害图像进行一次特征提取,提取的图像特征命名为“特征层”,即图像的特征集合。在骨干中,获取了3个特征层,用于下一步网络的构建,这3个特征层称之为“有效特征层”;还使用了Focus网络结构,具体的操作:在一幅图像中,每个像素获取1个数值,得到4个单独的特征层,再叠加4个特征层,宽、高信息就会聚集在通道信息上,而输入通道则扩大了4倍。然后进行卷积和一系列剩余结构的计算。残差分为主干和侧枝,主干枝为1×1的卷积,再进行3×3的卷积,其余的残差不用任何加工,直接相加。BN层就像是Resnet上的残差值,有效地解决了由于深度加深而导致的梯度消失、梯度爆炸等问题[13]。
在YOLOX-S的网络模型中 加强特征提取网
络是FPN,在网络主要部分中采集到的3个有效的特征层会在该区域中进行特征的融合,从而达到对各种特征的综合。在 FPN部分,利用已有的特征层来进行后续的特征抽取,然后将不同类型的特征层进行特征融合,由上到下将上层的特征信息进行上取样,然后进行下取样,输出3个 YOLO Head。
2.5 结果预测
该方法利用神经网络的head部分对图像结果进行预测,将神经网络中的每一幅图像分成S×S网格,然后根据这些S×S网格来检测网络中的各个节点。如果目标的中心在网格中,那么每个网格就会有B个矩形的边界(x,y,w,h)和它们的可信度,并进行分类。置信度是由网格中被检测物体的结果[0,1]的公式(1)限定。0表示最小置信值,1表示最大置信值。
Confidence=Pr(Object)×IoUtruthpred,Pr(Object)∈[0,1]。(1)
3 环境配置
本研究的所有试验都是在Windows 10的操作系统下进行的,采用Intel Xeon CPU E5-2650v4的处理器,使用2张NVIDIA GeForce RTX 2080Ti的GPU进行交火,效果大于1张GPU的效率,并配备64 GB的运行内存。环境配置时会通过使用CUDA 10.2和cuDNN 7.6.4来加速模型训练。本研究以Python 3.7为主要语言,并在此基础上安装了诸如Numpy 1.20.1、PyQt5等的深度学习运算程序,建立了一套基于Pytorch的深度學习网络模型,并对其进行了相应的优化。
4 评价标准
YOLOX-S算法可以利用精准率(P)、召回率(R)与F1值来评估评价模型的性能。其中,精确率、召回率和F1值越高,说明模型的性能越好,具体计算公式如下。
P=TPTP+FP×100%;(2)
R=TPTP+FN×100%;(3)
F1=2×P×RP+R。(4)
式中:TP表示玉米病害样本正确识别图片数量;FP表示玉米病害样本错误识别图片数量;FN表示未检测到的玉米病害样本图片数量,张。平均精度(AP)衡量模型在玉米病害图像4个类别上训练的好坏,类平均精度(mAP)衡量训练出来的模型在玉米病害图像4个类别上的好坏。AP和mAP计算公式如下:
AP=∫10P(R)dR;(5)
mAP=∑ki=1APik。(6)
利用AP公式求出mAP,AP代表精确率、召回率与坐标轴所围绕图像的面积,所有类别的AP就是mAP。图9为YOLOX-S算法中玉米病害叶片的mAP曲线图,本次试验目标检测算法模型对玉米病害识别的类平均精度可达98.54%,一般有精确率和召回率作为评价指标,其中玉米病害的P-R曲线如图10所示。
4.1 基于通道和空间注意力机制的改进网络
改进后的YOLOX-S模型进行如下的操作:首先将玉米病害叶片图像进行不同规模的卷积操作,这里包括卷积和池化,在CSPDarknet后面生成3个有效特征层,并将3个注意力机制模块分别添加到下采样的结果中,同时在SPPBottleneck上采样后的结果中加入一个注意力机制模块,加入的4个注意力机制模块均为CBAM,且加入的位置也不一样,CBAM是一种特殊的注意力机制,将通道注意力和空间注意力机制相结合,通过使用不同的权重来调整信息的重要性,将重点信息乘以较高的权重,强调其重要性,这是一种加强版的注意力机制。在此基础上,采用了基于最大平均和最大池化的计算方法,将所得到的2种结果进行相加,得到各通道的权重(0~1)。在得到该权重后,将该权重乘以原来的特征层,从而实现了对通道注意力机制的分离。CBAM的下半部分是空间注意力机制,在每个特征点的通道中,对每个特征点的通道进行最大值和平均。然后将这2种方法叠加在一起,先通过一次通道1的卷积来调节通道数目,再得到一个Sigmoid,得到每个特征点的权重(0~1)。在得到该权重之后,将该权重与原始的输入特征层相乘[14]。图11显示了添加注意力机制前后的例子的比较检测图,图12是添加了注意力机制的 mAP图。
4.2 与经典算法的比较
为探究实时检测的检测方法,本研究还训练了YOLO v3、YOLO v4、Faster R-CNN网络与该模型性能进行对比,每种模型都训练了150个以上的epoch,并且都达到了最大程度的收敛。本研究改进的模型为YOLOX-S-C,图13展示了4种模型的P-R曲线,可以看出,在同一精确率下改进后的YOLOX-S-C召回率要高于其他3种网络模型。同样,在同一召回率下,改进后的YOLOX-S-C的精度要高于其他网络模型。
在测试集上4种不同网络的检测性能结果如表2所示,可以看出,在训练性能方面,YOLOX-S-C比其他3种模型的损失值都要低,这表明了YOLOX-S网络模型的收敛效果更好,性能有了明显提高。在检测性能方面,不论是F1值,还是交并比(IoU)、mAP,改进后的YOLOX-S-C的值都要高于其他3种网络模型。充分说明了该模型的召回率、精确率以及模型的识别效果都更优。
为检验该模型的有效性和局限性,采用同一张图片对不同的模型进行试验测试,检测结果如图14所示。从图14可以很明显看出,改进后的模型YOLOX-S-C的置信度为0.97,YOLO v4的置信度为0.95,Faster R-CNN的置信度为0.92,YOLO v3的置信度为0.90,加入注意力机制之后的网络模型识别效果最佳,该模型具有较高的识别准确率,并且具有较好的泛化性能。
5 华为开发板Atlas 200DK及其应用
Atlas 200DK开发者套件 Atlas 200 Developer Kit(以下简称Atlas 200DK)是一个开发者板形态产品,它以昇腾310 AI处理器为核心,为开发者提供一站式开发套件,并帮助开发者进行AI应用程序的快速开发[15]。
5.1 开发平台介绍
Atlas 200DK的实物如图15所示。
Atlas 200DK的系统框图如图16所示。
Atlas 200DK的加速模块具有较强的 AI智能运算能力,能够对图像、视频等进行各种数据的处理和推理。其中,Hi3559 Camera模块为图像/音频接口模块,用于进行图像和音频的采集和处理。Atlas 200DK提供了USB网卡与NIC网卡,开发者可通过USB网卡与用户PC机进行直连通信,可通过NIC网卡将Atlas 200DK接入互联网。其中,192.168.0.2这个IP地址是Atlas 200DK中USB网卡默认的,而192.168.1.2这个IP地址是NIC网卡的默认,二者有一定的不同。
5.2 运行环境搭建
5.2.1 制作Atlas 200DK开发板启动盘
通过SD卡制作功能可以自行制作Atlas 200DK开发者板的系统启动盘,完成Atlas 200DK操作系统及驱动固件的安装。将 SD卡插入读卡器,并将其与使用者 PC的 USB接口相连接,再利用制卡脚本来完成SD卡的制作。 制卡之前需要进行硬件和软件包的准备,硬件需要准备1张SD卡,容量为64 G,制作过程中将会对SD卡做格式化处理。
在官网下载Ubuntu操作系统的镜像程序包与开发者板驱动包,首先在Ubuntu操作系统的根目录安装软件运行的交叉编译器,配置好相应的环境,然后再创建好制卡工作目录,接下来将获取的Ubuntu操作系统镜像包、开发者板驱动包上传到刚才的制卡工作目录中,然后下载“make_sd_card.py”的制卡口脚本,执行制卡指令,python3 make_sd_card.py local /dev/sda为执行命令,其中“local”是以本地的方法生成 SD卡;“/dev/sda”是在终端上显示“Make SD Card successfully!”时,SD卡所在 USB装置的名字。SD卡制卡成功时终端回显信息如图17所示。
完成制卡后,将SD卡插入 Atlas 200 DK开发板卡槽,进行通电,上电过程中要注意指示灯陆续全部点亮,在第1次开机时会进行固件的升级,升级完成后会自动进行重启的操作。
5.2.2 配置网络连接
使用USB连线将Atlas 200DK与主机Ubuntu系统进行连接,数据线进行传输数据信息,二者互相通信的前提是必须将USB网卡的IP 地址配置在同一网段,从而可以在PC机上SSH登录到Atlas 200DK;然后开发板通过网线接入路由器插口,并配置开发板的获取方式为DHCP,使其可以接入互联网。
5.3 开发环境搭建
5.3.1 配置Ubuntu X86系统
开发套件包安装前需要下载相关依赖软件,必须用root用户执行以下操作,为非root用户赋权,以root用户执行apt-get install sudo命令安装sudo,然后打开“/etc/sudoers”文件,添加最后1行为“includedir /etc/sudoers.d”,添加完成后进行保存,然后安装python依赖以及gcc等软件。
5.3.2 MindStudio与Atlas 200DK的连接
首先需要配置好MindStudio的运行环境,配置好以后需进行试运行,接着需要打开路由器,将开发板通过网线与路由器相连接,并把USB数据线与主机连接,实现数据通讯,然后给开发板上电,等指示燈陆续亮起以后,可实现整体与MindStudio通讯,开发板的IP地址是192.168.1.2,MindStudio的端口号表示默认即可,本次试验的端口号默认为22,在第1次登录时候需要设置密码PASSWORD,统一密码为Mind123456,到现在整个环境搭建连接成功。图18为华为开发板与MindStudio连接成功界面。
5.4 玉米病害识别在Atlas 200DK上的实现
第1步,登录Ubuntu系统,进入根目录,然后用 scp 命令将待检测的玉米病害图像上传至华为开发板中对应的工程文件目录;
第2步,打开MobaXterm远程登录软件,然后使用ssh 命令访问华为开发板;
第3步,进入到开发板内部,找到所对应的工程文件,执行运行程序的源文件;
第4步,通过 scp 命令将最终的检测结果拷贝至主机,完成对图片标注结果的查看。
下面是对玉米病害识别做的对比试验,把玉米病害叶片待检测图片先放到GPU目标检测算法中,运行程序,查看识别效果,查看标记框位置,查看置信度,然后原图像上传到Atlas 200DK开发板中,运行检测目标,生成检测结果,再次使用scp命令将检测结果传送到Ubuntu主机上,与之前的GPU检测后的图像做对比,发现识别效果相同,置信度完全一样,说明此次试验效果很好,试验成功,完成了玉米叶片病害识别在Atlas 200DK上的总体设计开发与应用,玉米叶片病害的原图像、GPU目标检测算法的检测结果、Atlas 200DK上的检测结果如图19所示。
6 结论
本研究提出了一种改进型YOLOX-S目标检测模型,实现了对玉米病害叶片的目标检测,通过对多种注意力机制的对比,选择了CBAM注意力机制,将其融合到YOLOX-S中,增大了感受野,对应的权重也会有所增加,提高了检测效果,并与其他几种目标检测算法做了对比试验,使得mAP上升到较高的水平,改进后的YOLOX-S模型的mAP提升了约0.2百分点。
将改进后的YOLOX-S目标检测算法移植到Atlas 200DK中,基于开发板的特性以及相关的计算属性,完成了玉米叶片病害的检测,并对其效果进行了测试,与GPU开发测试效果完全一样,实现了目标检测算法的移植,可以发现GPU算法移植到Atlas 200DK上依然发挥良好的检测性能。
参考文献:
[1]边柯橙. 基于深度学习的玉米常见病害图像识别研究及应用[D]. 兰州:兰州财经大学,2021.
[2]Hasan M M,Chopin J P,Laga H,et al. Detection and analysis of wheat spikes using convolutional neural networks[J]. Plant Methods,2018,14(1):1-13.
[3]Chen R C. Automatic license plate recognition via sliding-window darknet-YOLO deep learning[J]. Image and Vision Computing,2019,87:47-56.
[4]毕春光,王金龙,胡 楠,等. 基于贝叶斯神经网络的玉米病害预警模型[J]. 吉林农业大学学报,202 3(2):189-195.
[5]毛彦栋,宫 鹤. 基于SVM和DS证据理论融合多特征的玉米病害识别研究[J]. 中国农机化学报,2020,41(4):152-157.
[6]Atila ,Uar M,Akyol K,et al. Plant leaf disease classification using EfficientNet deep learning model[J]. Ecological Informatics,2021,61:101182.
[7]Cao S H,Xu D A,Hanif M,et al. Genetic architecture underpinning yield component traits in wheat[J]. Theoretical and Applied Genetics,2020,133(6):1811-1823.
[8]Ferentinos K P. Deep learning models for plant disease detection and diagnosis[J]. Computers and Electronics in Agriculture,2018,145:311-318.
[9]胡志偉,杨 华,黄济民,等. 基于注意力残差机制的细粒度番茄病害识别[J]. 华南农业大学学报,2019,40(6):124-132.
[10]赵 越. 基于深度学习田间麦穗检测计数方法研究[D]. 天津:天津农学院,2021.
[11]洪敏杰,吴 刚,刘星辰,等. 基于注意力机制的肺结节检测算法[J]. 计算机工程与设计,202 2(1):83-88.
[12]Militante S V,Gerardo B D,Dionisio N V. Plant leaf detection and disease recognition using deep learning[C]//2019 IEEE Eurasia Conference on IOT,Communication and Engineering (ECICE). Yunlin,Taiwan,China:IEEE,2019:579-582.
[13]张开兴,吕高龙,贾 浩,等. 基于图像处理和BP神经网络的玉米叶部病害识别[J]. 中国农机化学报,2019,40(8):122-126.
[14]杨蜀秦,王 帅,王鹏飞,等. 改进YOLOX检测单位面积麦穗[J]. 农业工程学报,2022,38(15):143-149.
[15]汪苏平. 基于华为芯片的人脸属性识别[D]. 南京:东南大学,2021.