当前位置: 首页 > 图灵资讯 > 行业资讯> 怎样用python加载dicom图片

怎样用python加载dicom图片

来源:图灵python
时间: 2025-01-08 14:49:58

用python加载dicom图片的方法:使用pydicom、CV2、numpy、matplotlib等库即可。pydicom库是专门用来处理dicom图像的python专用库。

python读取DICOM图像,需要以下几个库:pydicom、CV2、numpy、matplotlib。pydicom是专门处理dicom图像的python专用包,numpy高效处理科学计算的包,依据数据绘图的库。

(推荐教程:Python入门教程)

安装需要的库

pipinstallmatplotlib
pipinstallopencv-python
pipinstallpydicom
pipinstallnumpy

安装好这些库后就可以对dicom文件操作了。

具体代码如下:

#-*-coding:utf-8-*-
importcv2
importnumpy
importdicom
frommatplotlibimportpyplotasplt

dcm=dicom.read_file("AT0001_100225002.DCM")
dcm.image=dcm.pixel_array*dcm.RescaleSlope+dcm.RescaleIntercept

slices=[]
slices.append(dcm)
img=slices[int(len(slices)/2)].image.copy()
ret,img=cv2.threshold(img,90,3071,cv2.THRESH_BINARY)
img=numpy.uint8(img)

im2,contours,_=cv2.findContours(img,cv2.RETR_LIST,cv2.CHAIN_APPROX_SIMPLE)
mask=numpy.zeros(img.shape,numpy.uint8)
forcontourincontours:
cv2.fillPoly(mask,[contour],255)
img[(mask>0)]=255


kernel=cv2.getStructuringElement(cv2.MORPH_ELLIPSE,(2,2))
img=cv2.morphologyEx(img,cv2.MORPH_OPEN,kernel)


img2=slices[int(len(slices)/2)].image.copy()
img2[(img==0)]=-2000


plt.figure(figsize=(12,12))
plt.subplot(131)
plt.imshow(slices[int(len(slices)/2)].image,'gray')
plt.title('Original')
plt.subplot(132)
plt.imshow(img,'gray')
plt.title('Mask')
plt.subplot(133)
plt.imshow(img2,'gray')
plt.title('Result')
plt.show()

在DICOM图像里,包含了患者的相关信息的字典,我们可以通过dir查看DICOM文件有什么信息,可以通过字典返回相关的值。

importdicom
importjson
defloadFileInformation(filename):
information={}
ds=dicom.read_file(filename)
information['PatientID']=ds.PatientID
information['PatientName']=ds.PatientName
information['PatientBirthDate']=ds.PatientBirthDate
information['PatientSex']=ds.PatientSex
information['StudyID']=ds.StudyID
information['StudyDate']=ds.StudyDate
information['StudyTime']=ds.StudyTime
information['InstitutionName']=ds.InstitutionName
information['Manufacturer']=ds.Manufacturer
printdir(ds)
printtype(information)
returninformation

a=loadFileInformation('AT0001_100225002.DCM')
printa

上一篇:

怎样下载python编译器

下一篇:

返回列表