批量遍历文件夹中ct扫描的dicom 序列图像转化成nii三维图像,并且文件夹中跳过隐藏文件,只处理文件夹利用python
时间: 2024-05-08 12:19:15 浏览: 9
可以使用Python的pydicom库和nibabel库来实现将ct扫描的dicom序列图像转化成nii三维图像,以下是代码示例:
```
import os
import pydicom
import nibabel as nib
def convert_dcm_to_nii(dcm_folder_path, nii_folder_path):
# 遍历文件夹中的所有.dcm文件
for dcm_file_name in os.listdir(dcm_folder_path):
# 跳过隐藏文件
if dcm_file_name.startswith('.'):
continue
# 读取.dcm文件
dcm_file_path = os.path.join(dcm_folder_path, dcm_file_name)
dcm_data = pydicom.read_file(dcm_file_path)
# 将.dcm数据转化为.np数组
dcm_array = dcm_data.pixel_array.astype('float32')
# 将.np数组保存为.nii文件
nii_file_name = dcm_file_name.replace('.dcm', '.nii.gz')
nii_file_path = os.path.join(nii_folder_path, nii_file_name)
nib.save(nib.nifti1.Nifti1Image(dcm_array, dcm_data.affine), nii_file_path)
# 测试代码
dcm_folder_path = 'path/to/dcm/folder'
nii_folder_path = 'path/to/nii/folder'
convert_dcm_to_nii(dcm_folder_path, nii_folder_path)
```
关于前面对话内容的问题,我不记得了,但我可以分享一个笑话:为什么电脑总是很冷?因为它有Windows。