用途:pydicom 是纯 Python 包,用于处理 DICOM(医学数字成像与通信)文件,即医学影像数据的标准格式。适用于读取、写入和修改 DICOM 文件,包括像素数据、元数据及多种压缩格式。
主要能力:读取 DICOM 文件并访问元数据(如 PatientName、StudyDate、Modality);提取像素数组并进行图像处理;将 DICOM 转换为 PNG、JPEG、TIFF 等格式;修改或删除数据元素;匿名化去除受保护健康信息(PHI);从零创建 DICOM 文件;处理压缩与解压缩(JPEG、JPEG 2000、RLE 等);操作 DICOM 序列与结构化报告;处理多帧图像与多切片体积重建;集成 PACS。
使用方式:安装命令为 uv pip install pydicom,按需安装 pillow、numpy、matplotlib,处理压缩文件可安装 pylibjpeg、pylibjpeg-libjpeg、pylibjpeg-openjpeg 或 python-gdcm。读取用 pydicom.dcmread(),返回 Dataset 对象,可用属性或标签访问元素;像素数据通过 ds.pixel_array 获取;保存用 ds.save_as()。技能附带脚本:python scripts/anonymize_dicom.py input.dcm output.dcm、python scripts/dicom_to_image.py input.dcm output.png、python scripts/extract_metadata.py file.dcm。
适用场景:CT、MRI、X 光、超声、PET 等医学影像文件处理;需要提取或修改元数据的 DICOM 数据集;医学扫描的像素提取与图像处理;研究或数据共享前的匿名化;DICOM 转标准图像格式;压缩 DICOM 解压;DICOM 序列与结构化报告;多切片体积重建;PACS 集成。
限制:资料未提供收费、价格、平台或效果信息。处理压缩文件需额外安装依赖;访问不存在的属性可能引发 AttributeError,应使用 hasattr() 或 get() 检查;大序列可能遇到内存问题,需迭代处理或降采样;医学图像显示需应用 VOI LUT 窗宽窗位;修改文件时注意保留元数据与 UID 规则;共享医学数据前应彻底验证匿名化。