DICOM CT\MR片子免费在线查看工具;python pydicom包加载查看;mayavi 3d查看
DICOM CT\MR片子免费在线查看工具
参考:
https://zhuanlan.zhihu.com/p/668804209
dicom格式:
DICOM(Digital Imaging and Communications in Medicine)是医学数字成像和通信的标准。它定义了医学图像(如CT、MRI、X光等)的格式以及如何在不同的医疗设备之间传输这些图像。DICOM标准由美国放射学院(ACR)和国家电气制造商协会(NEMA)共同开发,旨在促进医学图像的互操作性和数据交换。 DICOM的主要特点 图像格式:DICOM定义了一种标准的图像文件格式,包含了图像数据以及相关的元数据(如患者信息、扫描参数等)。 通信协议:DICOM标准还包括了用于在医疗设备之间传输图像和相关数据的通信协议。 互操作性:DICOM确保了不同制造商的医疗设备能够相互通信和交换数据,从而提高了医疗图像的可用性和可访问性。 安全性:DICOM标准也考虑了数据的安全性,包括用户认证、数据加密和完整性检查等。
片子下载的zip压缩包里面文件大概格式:
1)imaios
https://www.imaios.com/cn/imaios-dicom-viewer
2)小赛看看
https://xiaosaiviewer.com/
python pydicom加载查看
安装软件:
pip install pydicom ##图像压缩工具 pip install gdcm pip install pylibjpeg pylibjpeg-libjpeg pylibjpeg-openjpeg
import pydicom
import matplotlib.pyplot as plt
import numpy as np
# 加载DICOM文件
dcm_file = pydicom.dcmread(r"C:\Users\loong\Downloads\***593708.311059.dcm")
# 获取像素数据
pixel_array = dcm_file.pixel_array
# 显示图像
plt.imshow(pixel_array, cmap=plt.cm.bone)
plt.axis('off')
plt.show()
# 打印一些DICOM标签信息
print(f"Patient's Name: {dcm_file.PatientName}")
print(f"Modality: {dcm_file.Modality}")
print(f"Study Date: {dcm_file.StudyDate}")
其他方法:
SimpleITK
import SimpleITK as sitk
import matplotlib.pyplot as plt
# 读取DICOM文件
reader = sitk.ImageSeriesReader()
dicom_names = reader.GetGDCMSeriesFileNames("path/to/dicom/directory")
reader.SetFileNames(dicom_names)
image = reader.Execute()
# 转换为numpy数组
array = sitk.GetArrayFromImage(image)
# 显示中间切片
middle_slice = array[array.shape[0]//2]
plt.imshow(middle_slice, cmap='gray')
plt.axis('off')
plt.show()
mayavi 3d查看
pip install mayavi configobj
import pydicom
import numpy as np
from mayavi import mlab
import os
# 读取DICOM系列
dicom_folder = r"C:\Users\loong\Downloads\unknown"
slices = [pydicom.dcmread(os.path.join(dicom_folder, s)) for s in os.listdir(dicom_folder)]
slices.sort(key = lambda x: float(x.ImagePositionPatient[2]))
# 创建3D numpy数组
img_shape = list(slices[0].pixel_array.shape)
img_shape.append(len(slices))
img3d = np.zeros(img_shape)
for i, s in enumerate(slices):
img2d = s.pixel_array
img3d[:,:,i] = img2d
# 使用mayavi显示3D图像
mlab.contour3d(img3d, contours=10, transparent=True)
mlab.show()
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!






