SGSeg
Enabling Text-free Inference in Language-guided Segmentation of Chest X-rays via Self-guidance
MICCAI 2024
SGSeg:通过自引导机制实现胸部X光片语言引导分割的无文本推理
LViT、LanGuideMedSeg等视觉---语言分割模型同时输入:
-
胸部X光图像;
-
对应的医学文本描述。
文本可以告诉模型病灶大致位于左肺、右肺、上部、中部或下部,因此能够帮助模型定位感染区域。
但是存在一个临床流程问题:
患者拍摄X光片
↓
医生观察图像
↓
医生撰写报告
当医生还没有完成诊断报告时,模型就没有文本可以使用。因此,要求测试阶段输入报告,会限制模型在临床辅助诊断中的应用。
SGSeg提出的解决办法是:
训练阶段:图像+真实文本 → 学习图文引导分割
测试阶段:只有图像 → 自动生成文本 → 文本再引导分割
所以它称为"Self-Guidance",即模型用自己生成的报告指导自己进行分割。
SGSeg的整体流程:
SGSeg由两个主要部分组成:
-
Language-guided U-Net:语言引导的分割网络;
-
LERG:位置增强报告生成模块。
训练阶段
训练时输入胸片和真实文本,例如:双侧肺部感染,共有4个感染区域,位于左肺上、中、下部以及右肺下部。
真实文本有两个用途:
-
输入BERT,生成文本特征,指导病灶分割;
-
从文本中提取病灶位置伪标签,监督报告生成模块。
此时模型同时学习:
-
如何根据图像和文本分割病灶;
-
如何仅根据图像预测病灶位置并生成报告。
推理阶段
测试时不输入真实报告,只有图像:
胸片
↓
LERG预测病灶位置
↓
自动生成结构化报告
↓
BERT提取生成文本的特征
↓
语言引导分割网络
↓
病灶分割结果
因此,"无文本推理"的准确含义是:不需要从外部提供真实文本,但模型内部仍然会生成文本,并使用生成文本完成分割。
Language-guided U-Net 这个部分负责最终的病灶分割:
-
图像编码器
作者使用预训练的ConvNeXt-T,把输入的(224x224)胸片逐层编码成多尺度视觉特征
-
文本编码器
使用医学领域预训练的BERT,将报告转化为文本特征。
-
语言引导解码器
作者采用LanGuideMedSeg中的Guided Decoder,通过跨模态注意力将文本特征与视觉特征融合。
作者对词语注意力进行了可视化,发现位置词获得了很高的注意力。因此,他们认为:在QaTa-COV19上,文本帮助分割的主要原因之一,是文本提供了明确的病灶位置。
LERG:位置增强报告生成模块
它不是生成完整、自由形式的放射学报告,而是重点生成病灶位置描述。
-
六个位置区域
作者把两侧肺部划分成六个区域:左肺上部;左肺中部;左肺下部;右肺上部;右肺中部;右肺下部。
模型对每个区域输出True或False,判断该区域是否存在感染。然后将预测结果转换成固定格式的文本,例如:双侧肺部感染,共有4个感染区域,位于左肺上、中、下部和右肺下部。
-
位置伪标签提取
QaTa-COV19没有为每个肺区提供单独的位置分类标签,只有文本报告。
因此,作者使用:
-
医学BERT编码报告;
-
HDBSCAN聚类;
-
从报告中提取位置相关的伪标签。
这些伪标签作为弱监督信号,训练LERG判断六个肺区是否存在感染。
-
-
目标解码器
LERG参考RT-DETR结构,包含:
-
ResNet-50视觉骨干;
-
跨尺度特征融合模块;
-
Object Decoder。
它从图像中产生一组目标查询,尝试定位感染区域。
-
-
位置注意力聚合器
目标解码器会生成很多预测,但其中大部分可能是"无目标",只有少量预测真正包含病灶位置。
因此,作者设计位置注意力聚合器:
-
为每个位置建立一个查询向量;
-
计算该位置与所有目标预测的相关性;
-
对相关预测进行加权聚合;
-
得到六个位置的预测结果。
这一步的作用是从大量稀疏目标查询中,提取真正有用的病灶位置特征。
-
论文只使用了QaTa-COV19数据集:
-
训练集:5716张;
-
验证集:1429张;
-
测试集:2113张。
作者还修正了约4%的错误文本、拼写错误和模糊描述。
| 方法 | 推理输入 | Accuracy | Dice | Jaccard |
|---|---|---|---|---|
| U-Net | 图像 | 0.945 | 0.819 | 0.692 |
| U-Net++ | 图像 | 0.947 | 0.823 | 0.706 |
| Swin U-Net | 图像 | 0.950 | 0.832 | 0.724 |
| SGSeg | 只需图像 | 0.971 | 0.874 | 0.778 |
| LViT | 图像+真实文本 | 0.962 | 0.837 | 0.751 |
| LanGuideMedSeg | 图像+真实文本 | 0.975 | 0.898 | 0.815 |
| 设置 | Dice | Jaccard |
|---|---|---|
| 不使用文本 | 0.846 | 0.725 |
| CLIP视觉---语言预训练 | 0.850 | 0.740 |
| 简单报告生成 | 0.861 | 0.759 |
| 弱监督LERG | 0.874 | 0.778 |
| 使用真实文本 | 0.890 | 0.797 |
摘要
胸部X光图像中的感染区域分割,对于准确勾画肺部结构和病理异常区域具有重要意义。近年来,多模态语言引导 的图像分割方法逐渐成为胸部X光图像分析中一种具有潜力的解决方案。这类方法将描述图像诊断结果的临床文本报告作为辅助信息,用于指导图像分割。
然而,现有的语言引导方法要求在推理时同时输入图像和对应的临床报告。因此,它们并不适合应用于临床决策支持场景下的图像分割,而主要局限于医生完成临床报告后的回顾性图像分析。
在本研究中,我们提出了一种自引导分割框架SGSeg。该框架在训练阶段利用语言信息进行多模态训练,同时在推理阶段实现不需要外部文本输入的单模态推理。据作者所述,这是首个能够在语言引导分割中实现无文本推理的方法。
我们利用文本报告中包含的肺部结构和病理区域的重要位置信息,提出了一种新的位置增强报告生成模块,即LERG,用于自动生成临床报告,并以生成的报告作为模型的自引导信息。
LERG由以下部分组成:
-
目标检测器;
-
基于位置的注意力聚合器;
-
位置感知伪标签提取模块。
其中,位置感知伪标签提取模块为LERG提供弱监督信号。
在具有代表性的QaTa-COV19数据集上进行的大量实验表明,SGSeg的性能优于现有的单模态分割方法,并且接近当前先进的多模态语言引导分割方法。
图一
图1. 所提出的SGSeg框架的神经网络架构:蓝色部分代表语言引导型U-Net,粉色部分表示增强定位功能的报告生成流程。

训练时使用真实医学文本,测试时只输入胸片,由模型自己生成文本,再指导病灶分割。
整个框架分为两部分:
-
蓝色:语言引导型U-Net,负责输出病灶分割掩码;
-
粉色:位置增强报告生成模块LERG,负责根据图像生成位置描述。
训练阶段 训练时同时输入:
-
胸部X光图像;
-
真实文本报告。
真实文本在训练阶段有两个用途。
用途1:指导病灶分割
真实文本经过Text Embedding文本编码器,转换成文本特征。
与此同时,图像进入蓝色图像编码器,提取从L1到L5的多尺度视觉特征:
-
L1、L2:较浅层的边缘和纹理;
-
L3、L4:病灶形状和局部结构;
-
L5:高级病理语义。
解码器逐层恢复图像分辨率,并通过跳跃连接使用L1---L4视觉特征。文本特征则为解码过程提供病灶位置指导,最后输出Predicted Mask,即预测的感染区域掩码。
蓝色分支可以概括为:
胸片 → 图像编码器 → 多尺度视觉特征
↓
真实文本 → 文本编码器 → 语言引导解码器
↓
病灶掩码
用途2:监督报告生成模块
真实文本还会进入Pseudo Label Extraction,即伪标签提取模块。
作者利用HDBSCAN从报告中提取六个位置标签:
| 肺部区域 | 是否存在感染 |
|---|---|
| 左肺上部 | True/False |
| 左肺中部 | True/False |
| 左肺下部 | True/False |
| 右肺上部 | True/False |
| 右肺中部 | True/False |
| 右肺下部 | True/False |
这些标签并不是人工单独标注的,而是从文本报告中自动提取的,所以称为"伪标签"。
伪标签用来弱监督粉色报告生成分支学习:如何仅根据胸片判断病灶位于哪些肺部区域。
粉色部分从右向左处理。
-
Image Encoder:输入胸片首先经过独立的图像编码器,提取视觉特征。
-
Object Decoder:参考目标检测模型,从视觉特征中产生一组Object Queries。
每个小方框可以理解为一个候选目标特征,但其中:一部分可能对应真实病灶;大部分可能是背景或无效候选
-
Attention Aggregator:注意力聚合器从大量候选目标中筛选和汇总与肺部位置相关的特征。
它针对左、右肺的上、中、下六个区域,分别聚合最相关的目标信息,避免无效候选影响位置判断。
-
六个位置预测:
聚合后的特征用于预测六个区域的True/False:
左肺:上部、中部、下部 右肺:上部、中部、下部训练时,这些预测由前面从真实报告中提取的伪标签监督。因此图中用"Weakly Supervise"表示弱监督。
-
Text Generation:
-
把六个位置预测转换成固定格式的报告。
例如预测结果为:
左肺上部:True 左肺中部:True 左肺下部:True 右肺下部:True就可以生成:双侧肺部感染,共有4个感染区域,分别位于左肺上、中、下部和右肺下部。
推理阶段
测试时没有真实医学报告,只有胸片。
处理过程变成:
胸片
↓
粉色LERG模块
↓
预测六个肺部区域是否感染
↓
自动生成位置文本
↓
文本编码器
↓
生成的文本指导蓝色U-Net
↓
病灶分割掩码
因此,推理阶段蓝色分割网络接收的不是医生写的真实报告,而是粉色模块生成的Predicted Text。
图二
图 2. 词语重要性示意图,展示了报告中每个词元的注意力权重分布

在图像与文本进行跨模态融合时,模型对报告中每个词元分配了多大的注意力。
这说明在QaTa-COV19的语言引导分割中,模型重点利用的是文本中的病灶位置描述,而不是"肺部感染"等一般诊断词。
作者通过这张图得出:医学报告对分割的主要帮助之一,是提供了病灶的位置语义。
因此,SGSeg没有尝试生成复杂完整的临床报告,而是设计LERG模块,重点预测六个位置:
-
左肺上、中、下部;
-
右肺上、中、下部。
再将位置预测组合成结构化文本,用它指导分割。
位置词具有较高注意力
↓
位置描述对分割很重要
↓
根据图像预测六个肺区是否感染
↓
生成位置型报告
↓
用生成报告指导病灶分割
表一
表1. 我们的SGSeg与现有单模态及多模态分割方法在QaTa-COV19数据集上的性能比较。单模态与多模态方法的最佳结果已用下划线标出;我们的SGSeg结果以粗体显示。

比较了三种不同使用方式的分割模型:
-
训练和测试都只使用图像;
-
训练使用图像+文本,测试只使用图像;
-
训练和测试都使用图像+文本。
| 类型 | 训练阶段 | 推理阶段 |
|---|---|---|
| Uni-Modal | 图像 | 图像 |
| SGSeg | 图像+真实文本 | 只有图像 |
| Multi-Modal | 图像+真实文本 | 图像+真实文本 |
SGSeg在不需要外部文本输入的条件下,明显优于所有纯图像模型,并接近使用真实文本的最佳多模态模型。
图三
图 3. 分割结果的比较分析:单模态方法与多模态方法

表二
表2. 关于SGSeg中各组件影响的消融研究:无文本------单模态分割;视觉-语言预训练------使用CLIP进行预训练并通过单模态分割微调;自引导------在推理过程中使用生成文本作为输入;全文------在推理过程中使用真实文本作为输入。

图四
图 4. 生成文本与分割结果之间关系的对比分析

SGSeg生成的文本是否准确,会直接影响最终的病灶分割结果。
上方病例:生成文本错误
下方病例:生成文本正确
证明两个观点:
-
LERG生成的位置文本确实能够指导分割;
-
生成文本的错误会传递到最终分割结果。
图五
图5. 模型注意力分布在输入图像上的可视化结果,按以下顺序排列:图像、真实分割结果、注意力图以及投影到图像上的注意力图。
