今天我会继续分享肺结节检测的例子。跟之前分割案例相似,肺结节检测也采用3DVNet网络模型来实现检测。
1、肺结节检测数据
上一篇已经说明了如何准备肺结节检测数据。888例CT数据中有肺结节的共有601例,在601例CT数据上一共取出16475个Patch数据。我们选择80%数据用来训练,20%数据用来测试。
2、肺结节检测网络模型
- 肺结节检测网络结构如下图所示。
- 连接输出层的Conv层采用1x1x1大小的卷积核,剩下的Conv层采用3x3x3大小的卷积核;
- Pooling层采用的是3dMaxPooling层;
- Upsample层采用的是反卷积层来实现的;
- Concate层是将解码网络中的Conv层与Upsample层结果进行拼接;
- 为了防止训练过程中梯度消失现象,还采用了残差连接;
- 参数设置:学习率是0.001,batchsize是6,epoches是10;
- 损失函数:采用dice函数,
3、模型结果分析
- 肺结节检测训练过程——损失函数变化
- 肺结节检测训练过程——精度函数变化
- 红色线是首次训练,蓝色线是接着首次训练结果继续训练。
- 在测试数据上对原始图像进行预测得到预测图像并与金标准图像对比分析。左图是原始图,中间图是金标准图像,右边图是预测图像。