以下是实现您要求的 Python 代码:

import os
import SimpleITK as sitk

# 定义文件夹路径
folder_path = 'path/to/folder'

# 获取文件夹下所有.nii.gz文件
file_list = [filename for filename in os.listdir(folder_path) if filename.endswith('.nii.gz')]

# 遍历文件列表
for file_name in file_list:
    # 构建文件路径
    file_path = os.path.join(folder_path, file_name)
    
    # 读取.nii.gz文件
    image = sitk.ReadImage(file_path)
    
    # 可视化CT图像
    sitk.Show(image)
    
    # 询问用户是否继续可视化下一个
    user_input = input('是否继续可视化下一个文件?(y/n): ')
    
    # 如果用户输入不是'y',则退出循环
    if user_input != 'y':
        break

    # 加载mask文件
    mask_file_path = file_path.replace('.nii.gz', '_mask.nii.gz')
    if os.path.exists(mask_file_path):
        mask_image = sitk.ReadImage(mask_file_path)
        # 可视化mask图像
        sitk.Show(mask_image)
        user_input = input('是否继续可视化下一个文件的mask?(y/n): ')
        if user_input != 'y':
            break

请将代码中的 'path/to/folder' 替换为您实际的文件夹路径。代码会读取文件夹下所有的 .nii.gz 文件,并逐个进行可视化。每次可视化后,会询问用户是否继续可视化下一个文件。如果用户输入不是 'y',则程序会退出循环。另外,代码还会尝试加载与每个 CT 文件对应的 mask 文件(假设 mask 文件名为原文件名后加上 _mask.nii.gz),并进行可视化。同样地,用户可以决定是否继续可视化下一个文件的 mask。

Python 读取并可视化文件夹中的 CT 文件 (含 Mask 加载)

原文地址: https://www.cveoy.top/t/topic/fzx3 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录