腹腔器官分割2021——FLARE21

2022-08-20 11:32:00 浏览数 (1)

今天将分享腹部器官分割的完整实现过程,为了方便大家学习理解整个流程,将整个流程步骤进行了整理,并给出详细的步骤结果。感兴趣的朋友赶紧动手试一试吧。

一、比赛介绍

腹部器官分割在临床实践中起着重要作用,该比赛是快速和低GPU内存腹部器官分割挑战赛,该挑战赛具有两个主要特征:(1)数据集庞大而多样, 包括来自12个医疗中心的511例病例。(2)不仅关注分割的准确性,而且关注分割的效率,这与实际的临床实践和要求是一致的。

要求参与者开发可同时对肝脏,肾脏,脾脏和胰腺进行分割的分割方法,在此将对准确性和效率进行排名评估

二、数据介绍

在其许可许可下,部分数据集改编自MSD(肝脏,脾脏,胰腺),NIH胰腺和KiTS。我们还提供了一个包含50例来自南京大学的腹部CT病例的隐藏测试仪。注释包括四个器官:肝脏(标签= 1),肾脏(标签= 2),脾脏(标签= 3)和胰腺(标签= 4)。可以看到训练数据与验证数据和测试数据的来源是不同的。

三、技术方案

baseline方案首先采用粗分割网络将腹部四个器官大致分割出来,然后再采用细分割网络再对腹部器官再进行不同组织分割,这样可以减少因为降采样导致的分割误差。

3.1、粗分割

A、数据处理与分析

分析361例训练数据的图像大小,spacing大小,maskROI范围大小,平均大小如下:512,512,126;0.8,0.8,2.47;343,227,99。

B、训练数据生成,将图像和Mask都统一缩放到128x128x96大小,采用窗宽窗位截断(0-200)归一化采用均值方差方式归一化,由于Mask数据中又存在异常值,所以重新生成一个只有0,1,2,3,4标签的Mask。

C、数据扩增:为了增加模型泛化性,数据扩充了10倍,随机旋转30度,x,y,z随机平移0.1大小,水平,垂直随机翻转等。

D、搭建二类分割网络结构

网络主体采用的是VNet的网络,损失函数采用的是多类的focalloss,学习率是0.001,droupout是0.5,迭代次数是10epochs,batchsize是1。训练数据一共有3960例,优化器是AdamOptimizer。

E、网络训练和预测

训练损失结果和精度结果

3.2、精分割

A、数据处理与分析

分析361例训练数据的图像大小,spacing大小,maskROI范围大小,平均大小如下:512,512,126;0.8,0.8,2.47;343,227,99。

D、训练数据生成:首先获取其有效ROI范围,然后根据ROI从原图和原始Mask中裁切出图像和Mask区域,再将裁切后的图像和Mask缩放到160x112x96大小,采用窗宽窗位截断(0-200)归一化采用均值方差方式归一化,由于Mask数据中又存在异常值,所以重新生成一个只有0,1,2,3,4标签的Mask。

E、数据扩增:为了增加模型泛化性,数据扩充了10倍,随机旋转30度,x,y,z随机平移0.1大小,水平,垂直随机翻转等。

D、搭建二类分割网络结构

网络主体采用的是VNet的网络,损失函数采用的是多类的focalloss,学习率是0.001,droupout是0.5,迭代次数是10epochs,batchsize是1。训练数据一共有3960例,优化器是AdamOptimizer。

E、网络训练和预测

训练损失结果和精度结果

3.3、级联网络测试结果

首先输入原始图像,缩放到128x128x96大小,采用窗宽窗位截断(0-200)归一化采用均值方差方式归一化,输入到粗分割网络中去,分割得到第一步Mask,再获取Mask的ROI区域范围,从原始图像中裁切出ROI图像,再缩放到160x112x96大小,再采用窗宽窗位截断(0-200)归一化采用均值方差方式归一化,输入到第二个网络中去分割,最后将分割的结果恢复到原始图像大小。后处理算法是以第一步结果膨胀2个像素后的mask做为限定第二步结果mask区域,将第二步结果中不在此区域的图像置零处理,进一步降低假阳性。

在361例数据中使用360个来训练,1例用来验证测试。

验证数据上分割结果,可以看到有错误分割和漏分割。

0 人点赞