新闻中心
怎样用python加载dicom图片
最常用、最可靠的方式是用 pydicom.dcmread() 读取 DICOM 文件,获取包含元数据和像素数据的 Dataset 对象;ds.pixel_array 是已解码的 numpy 数组;推荐用 apply_voi_lut() 结合窗宽窗位优化显示;批量加载需按 InstanceNumber 等排序确保切片顺序正确。

用 Python 加载 DICOM 图片,最常用、最可靠的方式是使用 pydicom 库,它专为读取和处理医学影像的 DICOM 格式设计。加载后通常配合 numpy 和 matplotlib 进行数据查看或后续处理。
安装必要库
在命令行中运行:
pip install pydicom numpy matplotlib
如果需要处理带像素数据的增强型 DICOM(如多帧 CT/MR),还可选装:pip install pillow(用于部分解码支持)。
基础加载:读取单个 DICOM 文件
pydicom 的 dcmread() 函数可直接读取文件,返回一个 Dataset 对象,包含元数据和像素信息:
import pydicom
ds = pydicom.dcmread("example.dcm")
print(ds.PatientName) # 查看患者姓名等元数据
print(ds.pixel_array.shape) # 查看图像尺寸,如 (512, 512)
注意:ds.pixel_array 是核心图像数据(numpy 数组),已自动解码,无需手动解析原始字节。
显示 DICOM 图像(灰度+窗宽窗位校正)
DICOM 图像常需应用窗宽(WW)和窗位(WL)才能正确显示软组织或骨骼细节:
奥硕企业网站管理系统终身免费版精简版1.0 build 090625
奥硕企业网站管理系统具有一下特色功能1、双语双模(中英文采用单独模板设计,可制作中英文不同样式的网站)2、在线编辑JS动态菜单支持下拉效果,同时生成中文,英文,静态3个JS菜单3、在线制作并调用FLASH展示动画4、自动生成缩略图,可以自由设置宽高5、图片批量加水印,可以自由设置字体,大小,样式,水印位置(同时支持文字或图片类型水印)6、强大的标签式数据调用,可以调用(新闻,产品,下载,招聘)支持
0
查看详情
- 若 DICOM 中有
WindowWidth和WindowCenter字段,建议用它们调整显示对比度 - 可用
pydicom.pixel_data_handlers.util.apply_voi_lut()自动应用 VOI LUT(推荐) - 简单显示可先用
plt.imshow(ds.pixe,但可能偏亮/偏暗
l_array, cmap="gray")
示例(带窗宽窗位适配):
import matplotlib.pyplot as plt
from pydicom.pixel_data_handlers.util import apply_voi_lut
<h1>尝试应用 VOI LUT(兼容大多数 CT/MR)</h1><p>arr = ds.pixel_array
if hasattr(ds, 'WindowWidth') and hasattr(ds, 'WindowCenter'):
arr = apply_voi_lut(arr, ds)</p><p>plt.imshow(arr, cmap="gray")
plt.axis('off')
plt.show()
批量加载与检查多个 DICOM 文件
实际中常遇到一个病例含多个切片(如一个文件夹下全是 .dcm)。可用 glob 或 os.listdir 批量读取:
import glob
import pydicom
<p>dcm_files = sorted(glob.glob("path/to/dicom/*.dcm"))
datasets = [pydicom.dcmread(f) for f in dcm_files]</p><h1>检查是否为同序列(可选)</h1><p>for ds in datasets[:3]:
print(f"Instance: {ds.InstanceNumber}, Shape: {ds.pixel_array.shape}")
注意:确保文件按切片顺序排列(如按 InstanceNumber 排序),否则重建三维体数据会错乱。
基本上就这些。关键点是:用 pydicom.dcmread 读,用 .pixel_array 取图,用 apply_voi_lut 或手动窗宽窗位优化显示——不复杂但容易忽略。
以上就是怎样用python加载dicom图片的详细内容,更多请关注其它相关文章!
# 如何使用
# 正阳网站推广营销招聘网
# 徐州品牌网站建设平台
# 常州网站建设产品经理招聘
# 黄冈短视频seo
# 韩文翻译网站建设工作
# 佛山seo推广费用
# 时代seo优化口碑
# 网站推广引流公司在哪里
# 网站的建设流程详解
# 兰州网站推广微忻hfqjwl
# 做多
# 最常用
# python
# 可选
# 多个
# 精简版
# 递归
# 企业网站
# 加载
# 管理系统
# 排列
# win
# 字节
# app
# dicom
相关栏目:
【
科技资讯46185 】
【
网络学院92790 】
相关推荐:
PHP高效扁平化嵌套数组:使用array_merge与数组解包操作符
AO3最新入口2025公告_AO3中文官网合集
星露谷物语官网入口 星露谷物语游戏官网入口
必由学官网首页入口 必由学教师网页版登录指南
荣耀Play7TPro怎样在信息App置顶客服对话_iPhone荣耀Play7TPro信息App置顶客服对话【优先查看】
抖音隐秘迷城小游戏入口_ 抖音冒险解谜小游戏秒玩
汽水音乐网页版使用入口_汽水音乐电脑版播放指南
Win11网速慢怎么解决 Win11网络设置优化解除限速
Word2013如何插入视频和音频媒体_Word2013媒体插入的多媒体支持
AO3官网镜像链接 Archive of Our Own同人文在线浏览
sublime如何配置Go语言开发环境_sublime搭建Golang编译运行系统
如何修改开机登录密码_Windows账户安全设置超详细教程【必学】
DLsite中文平台入口 DLsite官网内容在线查看
德邦快递查询平台 德邦快递物流信息查询入口
蛙漫漫画官网在线入口 蛙漫全本漫画免费阅读平台
Win10文件资源管理器“此电脑”分组怎么关 Win10恢复经典视图【技巧】
Gmail邮箱申请注册直达_Gmail邮箱免费注册PC版官网入口2025
PHP中SSG-WSG API的AES加密实践:正确使用初始化向量
怎么在html里运行vbs脚本_html中运行vbs脚本方法【教程】
React/Next.js中实现列表项的动态移动与状态管理:兼论唯一键的重要性
Win11怎么设置开机NumLock亮 Win11修改注册表InitialKeyboardIndicators值
Pandas DataFrame 多条件优先级排序与排名
一加Ace 6T支持全新明眸护眼:通过了最严苛的护眼小金标认证
Golang如何实现微服务鉴权与权限控制_Golang微服务鉴权与权限管理实践
基于动态规划的房屋花卉种植最小成本算法详解
Log4j Console Appender性能瓶颈与高并发优化策略
Yandex免登录官网入口_俄罗斯Yandex搜索引擎直达链接
在J*a中如何使用Stream.map转换元素_Stream映射操作解析
知乎APP怎么管理已购盐选内容_知乎APP盐选内容购买记录与查看方法
微信商城在哪里打开【步骤】
Win10如何清理注册表垃圾 Win10注册表维护与优化指南【慎用】
composer的"require-dev"部分是用来做什么的?
J*aScript类型检查_j*ascript代码规范
Golang如何实现Web接口签名验证_Golang Web接口签名校验开发方法
QQ邮箱官方登录入口_QQ邮箱网页版快捷使用平台
Web Components中自定义开关组件状态同步的常见陷阱与解决方案
Go语言中JSON数据解析与字段访问教程
反效果?《战地6》免费试玩开启后玩家数不升反降
处理Kafka消费者会话超时:深入理解消息处理语义与幂等性
蛙漫2日版入口 WAMAN2(日版)无删减漫画官网链接
J*a应用程序首次运行自动创建文件与目录的最佳实践
中兴Axon42Ultra怎样在文件App筛图_iPhone中兴Axon42Ultra文件App筛图【图片筛选】
Python:递归比较文件夹内容并找出特定类型文件的差异
在J*a项目里如何构建对象之间的契约_接口约束的实际落地
Node.js CSV 数据处理:基于字段值条件过滤整条记录的策略
J*aScript井字棋(Tic-Tac-Toe)核心交互逻辑实现教程
电脑安装程序提示“错误1722”怎么办_Windows Installer服务问题解决【教程】
AI抖音网页版免费视频入口 AI抖音网页端最新视频实时观看
Win10双系统截图高效法 截屏快捷键速记【技巧】
2026春节假期时间安排 2026春节假日查询


2025-12-04
浏览次数:次
返回列表
l_array, cmap="gray")