您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
这期内容当中小编将会给大家带来有关如何使用python读取DICOM头文件,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
Python是一种跨平台的、具有解释性、编译性、互动性和面向对象的脚本语言,其最初的设计是用于编写自动化脚本,随着版本的不断更新和新功能的添加,常用于用于开发独立的项目和大型项目。
用dicompyler软件打开dicom图像,头文件如图所示:
当然也可以直接读取:
ds = dicom.read_file('H:\Data\data\\21662\\2.16.840.1.113662.2.0.105002416.1489146183.701\CT\\CT#0#21662#E7AB693D.dcm') print ds >> (0008, 0008) Image Type CS: ['ORIGINAL', 'SECONDARY', 'AXIAL'] (0008, 0016) SOP Class UID UI: CT Image Storage (0008, 0018) SOP Instance UID UI: 2.16.840.1.113662.2.0.105002416.1489146183.501.0 (0008, 0020) Study Date DA: '20170310' (0008, 0021) Series Date DA: '20170310' (0008, 0023) Content Date DA: '20060505' (0008, 0030) Study Time TM: '1942' (0008, 0031) Series Time TM: '1942' (0008, 0033) Content Time TM: '' (0008, 0050) Accession Number SH: '63071' (0008, 0060) Modality CS: 'CT' (0008, 0070) Manufacturer LO: 'NOMOS' (0008, 0090) Referring Physician's Name PN: '' (0008, 1010) Station Name SH: '' (0008, 1090) Manufacturer's Model Name LO: 'CORVUS 6.4' (0010, 0010) Patient's Name PN: '*M32-2^CHENJUN^^^' (0010, 0020) Patient ID LO: '21662' (0010, 0030) Patient's Birth Date DA: '' (0010, 0040) Patient's Sex CS: '' (0018, 0050) Slice Thickness DS: '4.75' (0018, 0060) KVP DS: '0' (0018, 1020) Software Version(s) LO: 'CORVUS 6.4' (0018, 5100) Patient Position CS: 'HFS' (0020, 000d) Study Instance UID UI: 2.16.840.1.113662.2.0.105002416.1489146183.701 (0020, 000e) Series Instance UID UI: 2.16.840.1.113662.2.0.105002416.1489146183.501 (0020, 0010) Study ID SH: '63071' (0020, 0011) Series Number IS: '0' (0020, 0012) Acquisition Number IS: '0' (0020, 0013) Instance Number IS: '0' (0020, 0020) Patient Orientation CS: ['L', 'P'] (0020, 0032) Image Position (Patient) DS: ['0.73437356948853', '0', '3.25'] (0020, 0037) Image Orientation (Patient) DS: ['1', '0', '0', '0', '1', '0'] (0020, 0052) Frame of Reference UID UI: 2.16.840.1.113662.2.0.105002416.1489146183.601 (0020, 0060) Laterality CS: '' (0020, 1040) Position Reference Indicator LO: '' (0020, 1041) Slice Location DS: '3.25' (0028, 0002) Samples per Pixel US: 1 (0028, 0004) Photometric Interpretation CS: 'MONOCHROME2' (0028, 0010) Rows US: 330 (0028, 0011) Columns US: 339 (0028, 0030) Pixel Spacing DS: ['0.734375', '0.734375'] (0028, 0100) Bits Allocated US: 16 (0028, 0101) Bits Stored US: 12 (0028, 0102) High Bit US: 11 (0028, 0103) Pixel Representation US: 0 (0028, 1052) Rescale Intercept DS: '-1024' (0028, 1053) Rescale Slope DS: '1' (7fe0, 0010) Pixel Data
发现一套图的第一张和最后一张的Slice Thickness往往和中间层的值是不同的。
Path = 'H:\Data\data\\21662\\2.16.840.1.113662.2.0.105002416.1489146183.701\CT\\a.dcm' slices = dicom.read_file(path) spacing = slices.PixelSpacing
读取头文件信息方法:
Slices.上图头文件中的name列。
这时要注意的是,name大小写不变,去掉空格,去掉符号,比如括号。
举例:
origin = slices.SoftwareVersions print origin >>CORVUS 6.4
spacing = slices[1].PixelSpacing print spacing >>['0.734375', '0.734375']
上述就是小编为大家分享的如何使用python读取DICOM头文件了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。