在CT图像上识别小血管的非et化功能

问题描述 投票:1回答:1

我们正在尝试利用CT图像生成3D肺血管树,我们使用VGG-16作为编码器,相同的层(不转移权重)作为解码器。我们使用VGG-16作为编码器,相同的层(不转移权重)作为解码器。由于CT图像与VGG-16训练时使用的图像有很大的不同,所以对整个网络进行了微调。

数据集由超过22000个训练数据和8000个验证数据组成。对于每个纪元,网络随机选择2000个训练数据和800个验证数据。而且,批次大小也选择为3。

我们的问题是网络无法对小船进行分割。举个例子,我们有这样的情况。

原始CT图像为:原始图像

图片的标签。图片标签:

网络的预测。预测图像

到目前为止,我们尝试将网络结构从标准的u-net改变为带有转移学习的u-net。此外,我们还尝试将图像变得更亮,但这些改变并没有解决这个问题。

我也可以提供预处理的代码。

# Pixel intensities we interested in
pixel_range = (-6000, 6000)

# Normalizing the images
image = ((image-pixel_range[0]) / (pixel_range[1]-pixel_range[0]))*255
image[image>255] = 255
image[image<0] = 0

# Histogram equalization
clahe = cv2.createCLAHE(clipLimit=2.0, tileGridSize=(8,8))
histogram_equalized_image = clahe.apply(image)

# Enhancing the image
maxIntensity = 255.0
phi = 1
theta = 1
ratio = 1.5
enhanced_image = (maxIntensity/phi)*(histogram_equalized_image/(maxIntensity/theta))**ratio
enhanced_image = np.array(enhanced_image, dtype=np.uint8)
deep-learning image-segmentation
1个回答
0
投票

对于卷积神经网络来说,分割小血管并不是一个简单的任务。说实话,你可能会有更多的运气分割肺部区域,然后使用简单的算法,如阈值得到肺部血管。

你提供的信息太少了,但如果要我评论你的代码,我会先坚持使用标准的U-Net架构。另外,你的像素范围 "增强 "有点奇怪。试着剪掉一些强度值,以限制你工作的像素范围。试着用图像增强来工作。我不知道为什么你每个纪元只用2000个图像片。确保你的数据是随机分割每个病人,而不是每个图像。

© www.soinside.com 2019 - 2024. All rights reserved.