如何确定 DICOM 系列是 3D 体积还是一系列图像?

2024-03-05

我们正在为 dicom 文件编写一个导入器。

人们通常如何确定一系列图像形成 3D 体积还是只是一系列 2D 图像?

对于大多数供应商来说,是否有通用的方法来决定这一点?我查看了 DICOM 标签,但找不到明显的解决方案。


DICOM 标准定义了用于描述层次结构的 UID。这些是从上到下:

  • 研究 UID - 研究或扫描会话的标识符。
  • 系列 UID - 在一次扫描中获取的系列中相同。
  • 图像 UID - 对于任何图像都应该是唯一的。

由符合标准的实现保存的 DICOM 图像should拥有所有这些 ID。如果多个图像具有相同的SeriesUID,则它们是标准中定义的卷(或时间序列)。当然,有些软件不符合标准,您必须查看其他信息,例如时间戳和患者位置,但通常最好从遵循标准开始。

对于在识别后订购该系列,GDCM(如 malat 建议)或 dcmtkdicom 是相当完善的库。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何确定 DICOM 系列是 3D 体积还是一系列图像? 的相关文章

随机推荐

  • 如何强制 Azure 存储帐户为经典帐户

    我们最近使用 Azure 资源管理器和模板构建了基础设施和应用程序部署框架 为了部署云服务 需要首先设置一个Azure存储帐户 截至最近 这是通过运行来完成的 Switch AzureMode AzureResourceManager Ne
  • 基于视图的 NSOutlineView 中 NSTextField 的委托事件?

    我有一个基于视图的完美功能NSOutlineView在我的项目中使用正确的设置数据源 现在我想允许用户更改某些条目 所以我做了NSTextField在IB中可编辑 对于基于细胞的NSOutlineView你可以使用委托方法outlineVi
  • 如何覆盖 Visual Studio 的菜单加速器快捷方式?

    我是一名基于 Mac 的 Net 开发人员 因此多年来我养成了将某些常用功能重新映射到一组更 Macish 的键盘快捷键的习惯 CUT Ctrl X gt Alt X COPY Ctrl C gt Alt C PASTE Ctrl V gt
  • Android Room SQLite_ERROR 没有这样的表

    我正在尝试使用安卓房间 https developer android com topic libraries architecture room html并在跟随之后本教程 http www vogella com tutorials A
  • 在 persistence.xml 之外定义 jpa 实体类

    有没有办法在 persistence xml 之外定义 jpa 实体类 即在单独的文件中 能够不将 persistence xml 作为外部文件也足够了 提前致谢 史蒂文 编辑 抱歉我没说清楚 这是在 Java SE 环境中 另外 我不想在
  • 调用 AutoFixture 自定义的 Dispose 方法

    我正在使用 AutoFixture 自定义来测试访问 SQL Compact DB 的存储库 测试完成后立即删除该数据库对我非常有帮助 因为数据库是在自定义构造函数中创建的 所以我认为删除它的最佳位置是在 dispose 方法中 我正在想的
  • 如何执行“nslookup主机服务器”

    My C 服务需要定期轮询nslookup host server 目前它产生了一个Process执行批处理脚本 由于性能原因 我正在考虑使用一些进行此检查API 但问题是 例如 使用System Net Dns GetHostAddres
  • g++ __static_initialization_and_destruction_0(int, int) - 它是什么

    编译 c 文件 带有全局静态对象 后 我进入nm输出这个函数 00000000 t Z41 static initialization and destruction 0ii static initialization and destru
  • 如何在 Play! 中将复选框绑定到布尔值!框架

    我正在使用 Play 开发一个应用程序 框架有一个名为gift 的对象 它具有一个名为Taken 的布尔属性 如何在我的视图中将该值的状态显示为复选框 我试过了
  • PyQt - QTableView 不响应 dataChanged 信号?

    QSqlQueryModel是一个很棒的数据库模型 但它是只读的 所以我重写了它setData and flags 方法 现在 我可以编辑我的数据库表QTableView 但是当我发出一个 QTableView 时 它不会刷新自己dataC
  • 在java中为以下数据选择完美的数据结构

    我必须根据我的需要选择一种数据结构 下面我解释一下有以下值的条件 abc def rty ytr dft which all are map to row R1B1 actully key is combination of R1 B1 a
  • 我该如何优化 IE7/IE8 的 ajax 应用程序以避免“停止运行此脚本”?

    我的预订引擎在 IE7 中运行非常缓慢 它是 ajaxified 和基于 hash window onchange 的 总共有 5 个步骤 我遇到的主要问题是第 2 步在 IE 中速度非常慢 当用户到达第 2 步时 系统会发出 ajax 请
  • 用作默认参数的 C#“常量对象”

    有没有办法创建一个常量对象 即它不能编辑并且在编译时创建 我只是在玩 C 语言 注意到可选参数功能 并认为能够使用默认对象作为可选参数可能会很不错 考虑以下 this class has default settings private c
  • 无状态 Apache Wicket 无状态页面/请求

    所以我在读另一个问题 https stackoverflow com questions 2168249在 Wicket 标签下进行比较阿帕奇检票口 http wicket apache org and 阿帕奇点击 http incubat
  • 将电子表格数据显示为 HTML 表格

    我的 HTML 表有问题 我希望我的电子表格数据显示在那里 我不知道我错过了什么 这是我的代码 GS function getTableData var url3 https docs google com spreadsheets d x
  • Vue 3:getCurrentInstance() 是否已弃用?

    我看过参考文献getCurrentInstance 可以在一些旧的 文档和代码上使用 但在当前的 Vue 3 文档中找不到它 Is getCurrentInstance 已弃用 如果有 原因是什么 inject 考虑够了吗 如果没有 为什么
  • Ruby 在哪里跟踪其打开的文件描述符?

    这个问题是什么Not About 这个问题是not关于如何使用 File close 或 File open 块语法自动关闭文件 这是一个关于 Ruby 在运行时将打开的文件描述符列表存储在哪里的问题 实际问题 如果您有一个具有打开描述符的
  • Typeahead.js 在 Knockout 3 foreach 绑定中不起作用

    我将一个 Web 应用程序更新为 Bootstrap 3 和 Knockout 3 因此丢失了 Bootstrap 2 中的内置 typeahead 我添加了 typeahead js 它工作得很好 除非我在 Knockout foreac
  • 如何在C#中快速将二维数组转换为一维数组?

    我有一个多维的double 数组 其大小为 1 N 假设 N 已知 将其转换为一维的最快方法是什么double 长度为 N 的数组 我是 C 新手 我用它与 Matlab 函数交互 我使用的 Matlab 函数返回一个一维行向量 在 C 中
  • 如何确定 DICOM 系列是 3D 体积还是一系列图像?

    我们正在为 dicom 文件编写一个导入器 人们通常如何确定一系列图像形成 3D 体积还是只是一系列 2D 图像 对于大多数供应商来说 是否有通用的方法来决定这一点 我查看了 DICOM 标签 但找不到明显的解决方案 DICOM 标准定义了