继续上次要完成的目标:肝脏肿瘤分离
在上次的工作LiTS 数据集预处理(一) 肝脏肿瘤图像分割,我们对CT图像进行了切片处理,并生成了相应的标签(Label)。需要注意的是,CT图像和标签之间是一一对应的,数量自然也是相同的。
掩膜处理
在原本的代码中,有两行用于处理掩膜的代码被注释掉了:
# mask_array[mask_array == 1] = 0
# mask_array[mask_array == 2] = 1
在我们的数据集中,标签的定义如下:
- 正常肝脏区域的标签为 1
- 肿瘤区域的标签为 2
- 背景区域的标签为 0
如果取消这两行代码的注释,掩膜的处理将会如下:
- 正常肝脏区域(值为1)将被设置为 0,因此在最终的掩膜中不再存在。
- 肿瘤区域(值为2)将被设置为 1,因此在掩膜中只会保留肿瘤区域的信息。
- 背景区域(值为0)将保持不变。
最终的掩膜数组将会是:
- 正常肝脏区域:0
- 肿瘤区域:1
- 背景区域:0
这样处理后,掩膜中所有的正常肝脏区域都将被视为背景,而肿瘤区域将被标记为1。这种处理方式使得我们在后续的分割任务中能够专注于肿瘤区域。
保存处理后的数据
在处理完掩膜后,我们可以将处理后的CT图像和掩膜保存为 .npy
文件。
np.save(imagepath, ctImageArray) # (448, 448, 3) np.float dtype('float64')
np.save(maskpath, maskImg) # (448,448) dtype('uint8') 值为0 1 2
注意之前是包含所有肝脏的路径,需要给新的保存路径比如
outputImg_path = "F:\datesate\datasetnii\date-npy\\tumor_image"
outputMask_path = "F:\datesate\datasetnii\date-npy\\tumor_label"
注意个别几个病人是没有肿瘤的
给出对应编号
32
34
38
41
47
87
89
91
105
106
114
115
总结
通过以上步骤,我们成功地将肝脏和肿瘤区域进行了分离,并为后续的分析和模型训练做好了准备。接下来,我们可以利用这些处理后的数据进行肝脏肿瘤的分割任务。
标签:掩膜,处理,标签,LiTS,区域,肝脏,肿瘤,预处理 From: https://blog.csdn.net/qq_63860529/article/details/143719611