You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Colab中使用Python批量加载DICOM图像?

批量导入并加载DICOM图像到Google Colab

1. 将DICOM文件上传至Colab环境

方式一:从本地批量上传

先创建专门的文件夹存放DICOM文件,再批量上传:

from google.colab import files
import os

# 创建DICOM存储文件夹
dicom_dir = '/content/dicom_files'
os.makedirs(dicom_dir, exist_ok=True)

# 批量上传文件并移动到目标文件夹
uploaded = files.upload()
for filename in uploaded.keys():
    os.rename(filename, os.path.join(dicom_dir, filename))

方式二:从Google Drive挂载(适合大量文件)

如果DICOM文件已存在Google Drive,直接挂载即可访问:

from google.colab import drive
drive.mount('/content/drive')

# 替换为你Drive中的DICOM文件夹路径
dicom_dir = '/content/drive/MyDrive/your_dicom_folder'

2. 批量加载DICOM图像

使用pydicom库处理DICOM文件,先安装依赖:

!pip install pydicom

批量加载并验证的代码示例:

import pydicom
import os
import matplotlib.pyplot as plt

# 获取文件夹中所有DICOM文件(兼容有无.dcm后缀的情况)
dicom_file_list = []
for filename in os.listdir(dicom_dir):
    file_path = os.path.join(dicom_dir, filename)
    if os.path.isfile(file_path):
        # 判断是否为DICOM格式
        if pydicom.misc.is_dicom(file_path):
            dicom_file_list.append(filename)

dicom_datasets = []
for filename in dicom_file_list:
    file_path = os.path.join(dicom_dir, filename)
    try:
        ds = pydicom.dcmread(file_path)
        dicom_datasets.append(ds)
        # 打印关键信息验证加载结果
        print(f"Loaded {filename}: Patient ID = {ds.PatientID}, Study Date = {ds.StudyDate}")
    except Exception as e:
        print(f"Failed to load {filename}: {str(e)}")

# 示例:显示第一张DICOM图像
if dicom_datasets:
    plt.imshow(dicom_datasets[0].pixel_array, cmap='gray')
    plt.axis('off')
    plt.show()

3. 常见问题解决

  • 非标准DICOM文件:尝试添加force=True参数强制读取:pydicom.dcmread(file_path, force=True)
  • 权限问题:挂载Drive时确保授权Colab访问对应文件夹
  • 加载失败:检查文件是否损坏,或尝试更新pydicom版本:!pip install --upgrade pydicom

内容的提问来源于stack exchange,提问作者alibabei2000

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 22:12:18