首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Tensorflow入门教程(二十)——基于VNet3D的前列腺分割案例

在之前的篇章中我分享过用2D版本的VNet来进行MR图像的前列腺分割,但是2D版本的VNet是存在错误分割问题的,所以今天我将分享如何用Tensorflow实现3D版本的VNet来进行前列腺分割,以此来解决2D版本的VNet中的问题。

1、网络实现

基于Tensorflow实现了3D版本的VNet来进行分割实验(我用的是NVIDA显卡:GTX1080)。

具体实现我已经分享到github上:

https://github.com/junqiangchen/VNet3D。

2、数据集下载和处理

我们使用MICCAI Grand Challenge:Prostate MR Image Segmentation 2012的横向T2加权MR前列腺图像来做为我们的数据。下载地址:https://promise12.grand-challenge.org/download/。

下载完成后,我们需要对图像进行一些预处理操作,首先需要对图像进行线性插值,将图像都插值到相同的尺寸大小,由于计算机硬件限制,我们还需要对图像进行取patch操作(原始图像大小:512x512x64,取完patch后图像大小:128x128x64)。为了方便大家学习,我已经将处理完成的图像分享到百度云盘上。

3、训练结果

下面是模型训练时损失函数变化的情况。

为了更直观看到模型训练时的变化的情况,我们每隔一定次数将预测图像和GroundTruth图像进行显示对比。

0-epoch:GroundTruth图像

0-epoch:预测图像

1000-epoch:GroundTruth图像

1000-epoch:预测图像

10000-epoch:GroundTruth图像

10000-epoch:预测图像

4、结果

训练完模型后,在测试集上进行测试,部分结果如下。

2D版本的VNet容易在MR图像末尾几张中出现错误分割,我们从上面可以看到3D版本的VNet不仅整体分割效果不错,而且没有出现错误分割。感兴趣的朋友可以在github上看到详细的过程,如果大家觉得这个项目还不错,希望大家给个Star并Fork,可以让更多的人学习。如果碰到任何问题,随时留言,我会尽量去回答的。

下一篇
举报
领券