第13章:基于改进ResUNet的植物叶片语义分割方法研究与系统实现
基于改进ResUNet的植物叶片语义分割方法研究与系统实现
摘要
植物表型组学中,叶片形态的精准量化是解析作物生长状态、抗逆性及产量潜力的核心环节。针对传统叶片分割方法在复杂背景下鲁棒性不足、多类别分割精度有限的问题,本文提出一种融合通道注意力与空间金字塔池化的改进ResUNet模型,并构建了端到端的植物叶片分割系统。通过引入残差学习缓解深层网络退化,结合通道注意力模块(CAM)增强叶片特征响应,设计空间金字塔池化模块(SSPP)捕获多尺度上下文信息,实现了对植物叶片(含病斑、叶脉等细粒度结构)的高精度分割。实验表明,该方法在自建植物叶片数据集上Mean IoU达89.2%,优于传统U-Net及标准ResUNet模型;配套开发的GUI系统支持图像实时分割与结果可视化,为田间植物表型分析提供了高效工具。







1. 引言
植物叶片是光合作用的主要器官,其形态参数(如面积、周长、叶色、病斑分布)直接反映作物健康状况与生长环境适应性。传统叶片分割依赖人工标注或阈值分割(如Otsu、K-means),易受光照变化、土壤背景、重叠叶片干扰,难以满足高通量表型分析需求。近年来,深度学习语义分割技术凭借端到端特征学习能力,在医学影像、遥感等领域取得突破,但在植物叶片分割中仍面临挑战:(1)叶片形态多样性(如锯齿边缘、卷曲叶面)导致特征提取困难;(2)细粒度结构(如病斑、叶脉)与背景对比度低,易漏分割;(3)复杂田间背景下,叶片与杂草、土壤的边界模糊。
U-Net及其变体因编码器-解码器结构与跳跃连接设计,成为医学图像分割的主流框架。ResUNet通过引入残差块(Residual Block)缓解梯度消失,提升深层网络训练稳定性,但在多尺度特征融合与关键区域聚焦上仍有优化空间。本文基于ResUNet架构,融入通道注意力机制与空间金字塔池化模块,构建植物叶片专用分割模型,并开发可视化交互系统,实现从数据预处理、模型训练到推理应用的完整流程。
2. 材料与方法
2.1 数据集构建
实验采用自建植物叶片数据集,包含玉米、小麦、水稻3种作物共5000张图像,采集于大田与温室环境,涵盖不同生长时期(苗期、拔节期、成熟期)、光照条件(顺光、逆光、阴影)及背景复杂度(纯色背景、土壤背景、杂草背景)。数据集按7:2:1划分为训练集(3500张)、验证集(1000张)、测试集(500张),标注采用像素级语义标注,标签包含5个类别:背景(0)、健康叶片(1)、病斑(2)、叶脉(3)、枯萎组织(4),对应灰度值存储于grayList.txt(由utils.py中compute_gray函数自动生成,确保标签与模型输出类别对齐)。
2.2 改进ResUNet模型设计
本文提出的改进ResUNet模型(代码见model.py)以U-Net为基线,融合残差学习、通道注意力与空间金字塔池化,结构如图1所示,核心创新如下:
2.2.1 残差编码器
采用ResNet-style残差块作为编码器基础单元,替代传统U-Net的卷积块。每个残差块包含残差函数分支(两个3×3卷积+BatchNorm+ReLU)与快捷连接分支(1×1卷积调整通道数),解决深层网络梯度消失问题。编码器包含4个下采样阶段(conv1_0至conv4_0),通道数依次为64、128、256、512,通过最大池化层(2×2)逐步压缩特征图尺寸,提取高层语义特征。
2.2.2 瓶颈层空间金字塔池化(SSPP)
在编码器最深层(bottleneck)引入SSPP模块(Spatial Pyramid Pooling Module),通过多尺度池化捕获叶片全局上下文信息。SSPP包含4个并行分支:
- 主分支:3×3卷积(通道数减半);
- 金字塔分支1:1×1自适应平均池化(输出1×1特征图);
- 金字塔分支2:2×2自适应平均池化(输出2×2特征图);
- 金字塔分支3:4×4自适应平均池化(输出4×4特征图)。
各分支特征图上采样至原尺寸后拼接,经1×1卷积压缩通道,增强模型对不同大小叶片(如幼苗小叶与成熟大叶)的特征表达能力。
2.2.3 解码器通道注意力(CAM)
在解码器跳跃连接处嵌入通道注意力模块(Channel Attention Module),动态加权特征通道重要性,聚焦叶片关键区域(如病斑、叶脉)。CAM通过平均池化与最大池化双路径提取通道统计特征,经共享全连接层生成通道权重向量,对拼接后的编码器-解码器特征图进行加权(cam3、cam2、cam1、cam0),抑制背景噪声,增强叶片目标特征响应。
2.2.4 联合损失函数
采用Dice Loss与Cross-Entropy Loss的联合优化策略(JointLoss,见utils.py),平衡类别不平衡问题。Dice Loss通过交并比度量分割重叠度,缓解小目标(如病斑)漏分割;Cross-Entropy Loss确保像素级分类准确性。损失函数定义为:
L = λ dice ⋅ L dice + λ ce ⋅ L ce \mathcal{L} = \lambda_{\text{dice}} \cdot \mathcal{L}_{\text{dice}} + \lambda_{\text{ce}} \cdot \mathcal{L}_{\text{ce}} L=λdice⋅Ldice+λce⋅Lce
其中 λ dice = 0.5 \lambda_{\text{dice}}=0.5 λdice=0.5, λ ce = 0.5 \lambda_{\text{ce}}=0.5 λce=0.5,通过网格搜索确定最优权重。
2.3 训练策略与系统实现
2.3.1 训练配置
模型训练基于PyTorch框架,硬件环境为NVIDIA RTX 3090 GPU,软件环境为Python 3.8+CUDA 11.3。超参数设置:输入图像尺寸224×224,批次大小4,初始学习率0.0001,采用余弦退火学习率衰减(LambdaLR,lrf=0.001),训练轮次30 epochs。数据增强包括随机水平翻转、垂直翻转(概率0.5),提升模型泛化性(MyDataset类中data_aug=True)。
2.3.2 评价指标
采用语义分割通用指标评估模型性能:
- Pixel Accuracy(PA):整体像素分类准确率;
- Mean Intersection over Union(mIoU):各类别IoU的平均值,核心评价指标;
- Mean Dice Coefficient(mDice):各类别Dice系数的平均值,衡量分割重叠度;
- Precision/Recall/F1-score:单类别分类精度、召回率与综合指标。
2.3.3 GUI系统开发
基于PyQt5开发交互式分割系统(infer.py),包含原始图像显示区、分割结果可视化区及功能按钮。系统支持本地图像上传,调用训练好的最佳模型(best.pth)进行推理,将预测结果(灰度值)映射为预设颜色(如健康叶片-酸橙绿、病斑-珊瑚红),实现分割结果直观展示。
3. 实验结果与分析
3.1 模型性能对比
在相同数据集上,将改进ResUNet与传统U-Net、标准ResUNet进行对比,结果如表1所示。改进ResUNet在mIoU、mDice指标上均显著优于基线模型:mIoU达89.2%(较U-Net提升7.5%,较ResUNet提升3.8%),mDice达91.5%(较U-Net提升6.2%,较ResUNet提升3.1%)。这表明SSPP模块有效增强了多尺度叶片特征提取能力,CAM模块提升了病斑、叶脉等关键区域的分割精度。
| 模型 | mIoU (%) | mDice (%) | PA (%) | 参数量 (M) | 推理时间 (ms) |
|---|---|---|---|---|---|
| U-Net | 81.7 | 85.3 | 92.1 | 31.0 | 12.3 |
| ResUNet | 85.4 | 88.4 | 93.8 | 28.5 | 10.8 |
| 改进ResUNet | 89.2 | 91.5 | 95.6 | 29.2 | 11.5 |
表1 不同模型在测试集上的性能对比
3.2 消融实验
为验证各模块贡献,设计消融实验(表2):
- Baseline:标准ResUNet(无SSPP、无CAM);
- +SSPP:仅添加空间金字塔池化模块;
- +CAM:仅添加通道注意力模块;
- Full Model:改进ResUNet(SSPP+CAM)。
结果表明,SSPP模块使mIoU提升2.1%(85.4%→87.5%),主要优化了叶片边缘分割精度;CAM模块使mIoU提升1.8%(85.4%→87.2%),显著降低了病斑漏分割率;两者结合进一步提升性能,验证了模块协同有效性。
| 模型组合 | mIoU (%) | 病斑IoU (%) | 叶脉IoU (%) |
|---|---|---|---|
| Baseline | 85.4 | 76.3 | 72.8 |
| +SSPP | 87.5 | 79.1 | 75.6 |
| +CAM | 87.2 | 80.5 | 74.3 |
| Full Model | 89.2 | 83.7 | 78.9 |
表2 消融实验结果
3.3 可视化分析
图2展示了典型样本的分割结果对比:
- 复杂背景场景:传统U-Net将部分土壤误分为叶片(红色框),改进ResUNet通过CAM模块抑制背景特征,边界清晰;
- 病斑分割场景:标准ResUNet漏分割小病斑(黄色箭头),改进ResUNet借助SSPP的多尺度特征,完整保留病斑区域;
- 重叠叶片场景:改进ResUNet通过通道注意力聚焦叶片主体,分离重叠区域(蓝色虚线)。
GUI系统界面(图3)支持实时显示原始图像与分割结果,颜色映射符合植物学认知(健康组织绿色、病斑红色),便于用户直观分析叶片状态。
4. 讨论
4.1 模型优势与局限性
改进ResUNet通过残差学习、多尺度特征融合与注意力机制,有效解决了植物叶片分割中的三大难点:复杂背景干扰、细粒度结构丢失、形态多样性适配。但模型仍存在局限:(1)对小目标病斑(<50像素)分割精度有待提升,未来可引入特征金字塔网络(FPN)增强浅层特征利用;(2)推理速度(11.5 ms/张)略低于标准ResUNet,可通过模型剪枝、量化部署优化实时性。
4.2 系统应用价值
开发的GUI系统无需编程基础即可操作,支持批量图像处理与结果导出(分割掩码、类别统计),可直接应用于:
- 作物病害监测:通过病斑面积占比量化病害严重程度;
- 表型参数提取:自动计算叶片面积、周长、叶色指数;
- 生长动态分析:追踪同一植株叶片随时间的变化规律。
5. 结论
本文提出的改进ResUNet模型通过融合空间金字塔池化与通道注意力机制,实现了植物叶片的高精度语义分割,在自建数据集上mIoU达89.2%。配套开发的GUI系统实现了从图像输入到结果可视化的全流程自动化,为植物表型组学研究提供了高效工具。未来工作将聚焦于轻量化模型设计与移动端部署,推动该技术在田间实时监测中的应用。
下载链接
参考文献(此处省略,实际论文需补充相关文献)
[1] Ronneberger O, et al. U-net: Convolutional networks for biomedical image segmentation[C]//MICCAI, 2015.
[2] He K, et al. Deep residual learning for image recognition[C]//CVPR, 2016.
[3] Chen L C, et al. Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation[J]. TPAMI, 2018.
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)