2 利用ITK实现多帧Dicom读取,VTK实现数据显示

ITK和VTK比较 阅读详情

vtk中也有dicom读写类,但是只能完成单帧DICOM数据读取,这对于实际应用是非常不利的。
而ITK可以实现dicom多帧读取,通常情况ITK与VTK也会结合使用(ITK处理,VTK显示),所以就一起学习下吧!

一、编译ITK

因为之后要将ITK与VTK混合编程,所以先编译生成VTK之后再进行ITK编译。
详情参考以下博文,这里不再赘述。
ITK 5.0.1 在Windows10+VS2017+CMake 环境下编译安装
ITK-001-5.2.0版本源码-编译
不过我在这里陷入了一个错误,给大家提个醒:最好不要随意改动生成好的VTK,因为ITK cmake时读取VTK中的cmake文件,会调取一些路径,如果路径被改变则会报错,不好找到原因。

另外需要注意的,在CMAKE_DEBUG_POSTFIX后面添加d这样进行Debug版本编译时会在库文件名后面多个d。

二、利用ITK实现多帧DICOM读取

先贴一下这段的代码:

itk::ImageBase<3>::Pointer DicomReadWrite::DicomReadSeries(const QString &path)
{
   
   
    itk::ImageBase<3>::Pointer outImage;
    // 检查路径是否有效,检查文件是否存在
    if (path.isEmpty() || !QFile::exists(path)) {
   
   
        return outImage;
    }

    std::string DirectPath = path.toStdString();
    // 图像类型
    using PixelType = unsigned char; // dicom图像常见像素类型
    constexpr unsigned int Dimension = 3; //维度为3
    using ImageType = itk::Image<PixelType, Dimension>;
    // 创建dicom图像读取器
    using ReaderType = itk::ImageSeriesReader<ImageType>;
    ReaderType::Pointer reader = ReaderType::New();
    reader->SetFileName(DirectPath);
    //创建GDCMImageIO对象与reader相连
    using ImageIOType = itk::GDCMImageIO;
    ImageIOType::Pointer gdcmImageIO = ImageIOType::New
ITK、VTK 读取 DiCOM 文件信息,并实现交互预览 DICOM 文件介绍 DICOM 全名叫 Digital Imaging and Communications in Medicine(医学数字图像与通信),是医学图像和相关信息的过节标准,也定义了临床所需数据医学图像格式; DICOM 数据格式包含大量属性,例如病人名字、ID、年龄等基本信息,这些信息从储存在 “头文件” 中,这种储存方式避免了病人与图像误配; 一个病人样本 包含多个 DICOM 子文件,单个 DICOM 对象只包含具有一帧像素数据,帧与帧之间以序列形式存在,可以来回切换形成类似于电影放映 阅读详情

相关推荐

【ITK类学习】使用itk读取DICOM数据序列

然后,在编写代码时,可以通过包含 “itkGDCMImageIO.h” 头文件来使用 itkGDCMImageIO 类,使用它的成员函数来读取和写入 DICOM 格式的图像数据。总的来说,GetInputFileNames() 函数用于获取单个文件的名称,而 GetFileNames() 函数用于获取整个 DICOM 系列的所有文件的名称。该类支持读取多种格式的图像文件,例如 DICOM、TIFF、NIFTI 等,读取的文件之间的格式可能有所不同,但图像数据的size必须相同。读取成功后,可以通过。

weixin_41804847的博客 2034

ITK/VTK对DICOM文件的读取

在ITK中,对dicom的读取使用的是GDCM库,而在VTK库中使用的是直接是DicomFileReader库。 在ITK中,读取DICOM文件的程序示例如下:

menjiawan的专栏 6880

【VTK库学习】使用VTK读取DICOM数据及其与DCMTK/ITK数据的转换

使用vtkDICOMImageReader读取dicom数据。

weixin_41804847的博客 3226

ITK&&VTK读取DICOM数据并渲染

1.新建项目 附加包含目录,附加库目录添加ITK和VTK的include以及lib文件夹路径,附加依赖项添加Visual Studio 2013编译ITK4.10.1以及Visual Studio 2013编译VTK7.1.0中列出的.lib文件,由于ITK和VTK都是x64编译的,因此项目需改成Debug/x64配置。 属性中的C/C++下的代码生成中的运行库需要修改成多线程调试,否则I

cuihaolong的专栏 8806

医学图像(DICOM数据)读取及显示(横断面、冠状面、矢状面、3D显示)为什么用ITK+VTK,单独用ITK或者VTK能实一样功能吗?

在医学图像处理中,结合使用和是常见的做法,因为它们各自专注于不同的核心功能。

weixin_45805339的博客 1413

ITK、VTK、Qt读取与显示DICOM文件------代码部分

使用具体的代码实现DICOM文件的读取与显示,为ITK、VTK、Qt集成环境下的开发奠定基础。

huangsuzhen520的博客 5626

itk.js读取dicom文件,vtk.js进行渲染

itk.js读取dicom文件时,我们只需要用到 readImageDICOMFileSeries即可 其余的均为vtk.js中调用 let files_paths = []; //path为dicom文件 files_paths.push(path); const fetchFiles = files_paths.map((file_path, index) => { const path = file_path; return axios.get(path, { resp

qq_39966730的博客 2777

itk 读取dicom,用vtk重建显示

using PixelType = float; constexpr unsigned int Dimension = 3; using ImageType = itk::Image< PixelType, Dimension >; using ReaderType = itk::ImageSeriesReader< ImageType >; using ImageIOType = itk::GDCMImageIO; using NamesGeneratorType = .

simple的博客 865

itk、vtk、qt 显示dicom 数据

以下代码实现了itk读取dicom数据,转换为vtkData,然后用Qt显示。 1、Qt Designer 搭建界面,QVTKOpenGLNativeWidget 是vtk的一个类,连接qt与vtk的桥梁,一个可以显示dicom数据的widget,可以当做一个普通的widget去布局。但是为vtk 与qt 的版本都比较高,注意一下。 2、因为使用itk较多,直接用itk读的dicom数据,然后使用 itk::ImageToVTKImageFilter转成vtkData,便于显示。 3、QVTKOpen

Summer的博客 2195

VTK/ITK文章列表

医学图像处理 三种截面 常用工具 图象处理工具介绍 DICOM公开资源文件下载 几个概念 计算机图形学、数字图像处理、计算机视觉之间的区别与联系 VTK系统概述 1 VTK框架接口关系图 VTK交互框架图 VTK基础数据类型 4 vtkPoints点:表示,几何结构 Geometry 5 vtkPoints保存到文件vtkPDataSetWrite...

C++ 爱好者 make_it_simple888 7970

MIPS-5级流水线CPU

一、流水线CPU 流水线CPU就是指将一条分解为多步,在同一周期内进行多条指令的同时执行。MIPS五级流水线就是将指令分为:取指(IF),译码(ID),执行(EX),访存(MEM),写回(WB)五个阶段。举个例子: 比如第二条指令lui $t2,0x2100 在流水线CPU中执行的就是 可以看到在200-300ns的周期里,IF阶段取到0x00400004处的指令,300-400ns,这条指令到了ID阶段,而IF阶段执行下一条指令。400-500ns,执行这条指令,ALU的结果为0x2100

weixin_43877853的博客 2万+

JESD204B Subclass 1的SYSREF机制

SYSREF 是一个系统级同步脉冲信号,用于对齐 JESD204B 中的 LMFC(Local Multi-Frame Clock),从而实现每次建链的延迟一致性。核心点内容说明是系统参考跨多个芯片、多通道实现精确同步控制 LMFC决定所有设备的 LMFC 对齐点仅用于 Subclass 1是 JESD204B 实现确定性延迟的前提条件一般通过时钟芯片生成推荐使用 AD9528、LMK04828,支持 JESD204 专用输出建链过程中关键作用。

weixin_41230430的博客 1780

VHDL实战:基于EDA的数字频率计(FREQ)设计与优化

本文详细介绍了使用VHDL语言和EDA工具设计并优化数字频率计(FREQ)的全过程。从核心原理与模块划分入手,深入讲解了时钟分频、测频控制、计数锁存及显示驱动等关键模块的VHDL实现,并提供了从代码编写、功能仿真到综合布局布线的完整EDA实战指南。文章还探讨了测量精度优化、资源权衡及跨时钟域处理等进阶话题,是掌握FPGA数字系统设计的经典案例。

milk8的博客 556

炉石传说游戏系统拆解和部分系统分析

一.游戏综述 《炉石传说:魔兽英雄传》是一款由暴雪娱乐公司出品的策略类卡牌游戏。中国大陆地区的独家运营由网易公司代理。2014年3月13日全球同步正式运营。游戏背景设定于暴雪的魔兽系列,共十位魔兽中的角色作为十种不同的职业。而玩家要做的,就是根据己方现有的卡牌组建合适的卡组,指挥英雄,驱动随从,施展法术,与游戏好友或素不相识的对手一决高下。 二.游戏系统拆解图 三.游戏系统部分分析 1. 对战系统 (1)战斗准备 炉石传说开始前都需要配置至少30张卡牌作为出战卡组 .....

Jimmy72236的博客 4893

粒子群算法实战:用Matlab解决旅行商问题(TSP)的完整代码解析

本文提供了使用粒子群算法解决旅行商问题的完整Matlab实战指南。通过将连续空间的粒子群算法进行离散化改造,采用基于交换序的策略来更新粒子位置与速度,并给出了从问题定义、数据结构设计、核心函数实现到主迭代循环的详细代码解析。文章还探讨了参数调优、性能优化及处理复杂TSP变体的进阶思路,为物流规划、路径优化等领域的工程应用提供了可直接复用的解决方案。

m2n3o4p5的博客 331

SPAD 单光子雪崩二极管

SPAD,全称为,是一种高灵敏度的光电探测器件,能够在非常低的光照水平下检测单个光子。SPAD在工作时,当一个光子被探测器吸收后,能够触发一个雪崩效应,产生一个可以被检测到的电信号。

qq_42786033的博客 1万+

对MixPad精灵(触屏语音开关)进行解剖分析

概述 最近有点忙,已经很久没有更新文章了,对不起各位网友啦~ 这次对ORVIBO的新产品:MixPad精灵款的来个剖析,希望对大家有所帮助! 首先,我买了一台对应的设备,直接去官网采购,价格吗还算OK,400多的价格。 拆箱的过程我就不写了,简单的上个图就行了。 一、拆包: 主屏板包装盒(顶部): 主屏板包装盒(底部): 后盖电源部分无内容,我就不拍了,给CSDN空间省点存储位置。 二、设备剖析开始 接下来,我们开始对设备进行剖析,步骤如下: 1、拆掉主屏板后盖板,...

LeeKwen的专栏 3909

佳能102种相片风格+富士胶片效果风格+佳能的萤石镜头色彩

让照片瞬间变靓丽--佳能102种相片风格+富士胶片效果风格+佳能的萤石镜头色彩Picture Style风格文件目录:Eyer_Paint画风_EyerPaintEyer_淡彩风格_EyerTingeEyer_半红外风格_EyerFakeHalfIR2Eyer_仿红外风格_FakeIREyer_黑白风格_EyerBW99Eyer_怀旧照片风格_EyerReminiscenceHong Kong_尼康色彩_nikonKevin_JPkN-STUDIO-3Kevin_电影人像Kevin_电影人像-STUDIO-1Kevin_和风风格_YamatoStyleKevin

云顶数模2024数学华为杯研究生建模赛c题原图,云顶数模,数据驱动下磁性元件的磁芯损耗建模

【秒发云顶数模】2024数学华为杯研究生建模赛c题,云顶数模,数据驱动下磁性元件的磁芯损耗建模参考思路和代码,成品论文 BZD数模社进阶版原价50和云顶数模限量版原价450一共两套,打骨折价出售[灯泡]拍下自动发货[黄圆]网盘自动更新[灯泡]限量版加高阶版一起全部,目前quan网蕞便宜(进阶版的也发给你)!#国赛c题华为杯研赛C题BZD(进阶版数模社超详细解题思路以及数据代码(含MATLAB,Py)所有bzd(进阶版)论纹_代码_数据已几乎更新完是C题 C题 C题 略带其他福利性价比拉满(•̀ᴗ•́)و̑̑还要啥自行车(及时更新)首家首发,平台最具性价比,价格微变化(倒卖者材料不一定全)同根生,不欺人,标价即实价借鉴后修改,代码注释拉满,提高获奖率祝大家稳操胜券有图有真相,图内容即所得,介意勿拍

PDF Password Remover 软件及其密钥.zip

PDF Password Remover 软件及其密钥.zip

可行性研究报告模板(带格式).docx

个人整理的可行性研究报告模板,比较全面,带格式,可以直接使用,有需要的小伙伴可以下载

上一篇: 1 VTK编译及添加QVTKWidget插件到QT designer
下一篇: 虚拟机设置桥接模式+GitLab更改IP地址
buerbuhuitou
博客等级 码龄7年 44粉丝 9原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值