SimpleITK学习(二)图像读取 - wuzeyuan - 博客园

通常我会用simpleitk来读取dicom文件,主要是为了将dicom文件转换为numpy矩阵,便于输入神经网络,读取dicom文件可分为两种情况,一.单独的dicom文件 二.一系列dicom文件,前者只是一张切片,通常是X光片,后者是很多张切片,合在一起通常代表CT图像。

一.

读取dicom文件

file = sitk.ReadImage(filepath)

获取基本信息,大小,像素间距,坐标原点,方向

file.GetSize()file.GetOrigin()file.GetSpacing()file.GetDirection()

输出信息类似下面这样

还可以获取很多其它信息,这些信息以字典的形式存储,称为元数据

上面是字典的键,具体为什么是这种形式,还不太清楚

字典的值形式如下

上面输出的只是一小部分信息,利用microDicom软件打开一个dicom文件,可以看到详细的元信息

当然,最最重要的还是像素矩阵,这是我们用来训练模型的原料啊

pixel_array = sitk.GetArrayFromImage(file)#这个file是之前读取出来的文件

二.

读取dicom序列

reader = sitk.ImageSeriesReader()reader.MetaDataDictionaryArrayUpdateOn()#这一步是加载公开的元信息reader.LoadPrivateTagsOn()#这一步是加载私有的元信息series_IDs = sitk.ImageSeriesReader.GetGDCMSeriesIDs(directorypath)#根据文件夹获取序列ID,一个文件夹里面通常是一个病人的所有切片,会分为好几个序列dicom_names = reader.GetGDCMSeriesFileNames( directorypath,series_ID)#选取其中一个序列ID,获得该序列的若干文件名reader.SetFileNames(dicom_names)#设置文件名image3D = reader.Execute()#读取dicom序列

image3D是一个三维矩阵,也就是说是一个三维的立体的数据,可以像读取一张切片一样,读取它的原点,像素间隔,方向,等基本信息

但是元信息的读取,不能通过image3D本身,要通过reader

reader.GetMetaDataKeys(slice_index)reader.GetMetaData(slice_index,key)

通过切片的索引来读取属于该切片的键,然后通过切片索引与键获取相应的值,这里的键值对与单张切片的形式一样

(0)

相关推荐

  • 医院影像系统内影像DICOM文件拷出方法

    医院影像系统内影像DICOM文件拷出方法 首先双击桌面上的技师工作站图标,然后会弹出如下登录界面, 在用户名处输入"dr",密码不用输入,点击回车键,或点击登录按钮登入系统. 出现 ...

  • 如何将DICOM格式类型显示出来,利用MATLAB时

    今天准备用MATLAB处理一下核磁图像,按照MATLAB对图像的读取,必须要正确描述图像的名称和文件类型.之前也处理过,图像从西门子磁共振上导出来的,传到自己的电脑上可以正常显示图像的文件类型,但这次 ...

  • SimpleITK学习(一)基本概念 - wuzeyuan - 博客园

    SimpleITK学习(一)基本概念 断断续续使用simpleitk处理CT和X光图片有些时间了,但是学的知识都比较零散,没有形成系统的概念,于是对着SimpleITK的英文文档https://sim ...

  • [转载]陈氏太极拳老架一路拳谱详解(二)_fjp6990_新浪博客

    转载]陈氏太极拳老架一路拳谱详解(二)(2011-09-06 11:23:29) 转载▼标签: 转载好原文地址:陈氏太极拳老架一路拳谱详解(二)作者:宁波尚武者第三十八势 小擒打(一名小擒拿)势名考释 ...

  • SimpleITK中的图像分割_weixin_42834523的博客-CSDN博客

    SimpleITK中的图像分割 weixin_42834523 2020-04-22 15:49:52 522 收藏 4 分类专栏: SimpleITK 版权 图像分割filters对图像进行处理,将 ...

  • [Nginx] 博客园出现了502错误该怎么追查原因

    博客园从今天上午就开始报502错误 , 他的原因还不知道 , 暂时先说下我们遇到502的排查情况 最大的可能性就是后端的服务不能支撑前端过来的tcp请求连接,包括连接数据库服务时的连接数问题 1. p ...

  • 如何使用VSCode发布博客到博客园

    摘要 写博客是许多开发人员的习惯,大家把自己平时学习和工作中学到的知识和遇到问题的解决方法记录在博客中,既能对自己学习的知识进行巩固,还能方便以后对知识进行复习,最最重要的是,能将自己的所学所感分享给 ...

  • 博客园贴边打赏

    目录 前言 贴边打赏 美化二维码 合并二维码 压缩二维码 贴边代码 加到博客园 博客园效果 总结 前言 玩博客园到网上找各种美化博客和主题啥的,找到一些好玩的东西,比如打赏插件.我一开始也是用的别人现 ...

  • 博客园开篇,自己开发的双色球小助手

    很早就知道"博客园"这个程序员之家,但是一直没有注册,一是因为没有什么好的代码分享的,而是自己虽然系统的学过编程,但是毕业后没有干这行,现在也是自己兴趣爱好,以及工作所需,写写小程 ...

  • YUV图像格式介绍-银行卡OCR里的图像处理 - 普惠产品技术 - 博客园

    作者:杨科 近期我们开发了一个银行卡 OCR 项目.需求是用手机对着银行卡拍摄以后,通过推理,可以识别出卡片上的卡号. 工程开发过程中,我们发现手机拍摄以后的图像,并不能满足模型的输入要求.以 And ...

  • 博客园页面美化源代码

    看别人的博客总是花里胡哨,早已羡慕不已,花了点时间整理了下自己博客园的背景 参考原博主链接:https://www.cnblogs.com/Penn000/p/6947472.html,https:/ ...