请写一段python代码使其实现读取一个文件夹下所有的niigz格式的三维CT图像的左视图并进行可视化并在同一个窗口中同时加载mask每可视化一次就暂停由用户决定选择下一张图片使用SimpleITK库
以下是使用SimpleITK库读取文件夹中的所有.nii.gz格式的三维CT图像的左视图并进行可视化,并在同一个窗口中同时加载mask,并暂停等待用户选择下一张图片的Python代码示例:
import os
import SimpleITK as sitk
import matplotlib.pyplot as plt
# 定义文件夹路径和mask文件的后缀
folder_path = 'path_to_folder'
mask_suffix = '_mask.nii.gz'
# 获取文件夹中所有.nii.gz文件的路径
image_paths = [os.path.join(folder_path, file) for file in os.listdir(folder_path) if file.endswith('.nii.gz')]
# 遍历每个图像路径
for image_path in image_paths:
# 读取图像和对应的mask
image = sitk.ReadImage(image_path)
mask_path = image_path.replace('.nii.gz', mask_suffix)
mask = sitk.ReadImage(mask_path)
# 提取左视图
image_array = sitk.GetArrayFromImage(image)
left_view = image_array[:, :, image_array.shape[2] // 2]
# 可视化左视图和mask
plt.subplot(1, 2, 1)
plt.imshow(left_view, cmap='gray')
plt.title('Left View')
mask_array = sitk.GetArrayFromImage(mask)
plt.subplot(1, 2, 2)
plt.imshow(left_view, cmap='gray')
plt.imshow(mask_array[:, :, mask_array.shape[2] // 2], alpha=0.5, cmap='jet')
plt.title('Mask')
# 显示图像并等待用户选择下一张图片
plt.show()
请将path_to_folder替换为包含要处理图像的文件夹的实际路径。此代码将遍历文件夹中的所有.nii.gz文件,读取每个图像和对应的mask,并在同一个窗口中显示左视图和mask。在每次显示图像后,代码将暂停,等待用户选择下一张图片。
原文地址: http://www.cveoy.top/t/topic/iwMj 著作权归作者所有。请勿转载和采集!