DICOM MPPS详细介绍

文章目录

  • 前言
  • 一、常规检查业务流程
  • 二、MPPS的作用
  • 三、MPPS的原理
    • 1、MPPS与MWL
    • 2、MPPS服务过程
  • 四、MPPS的实现步骤
    • 1、创建实例
    • 2、传递状态
  • 五、总结


前言

  医院中现有的DICOM MWL(Modality Worklist)已开始逐渐得到应用,借助它可以实现病人信息的自动录入,减少了技师在设备控制台上再次输入病人信息的环节,从而大大降低了信息重复录入的工作量和输人错误的几率。然而,成像设备何时开始进行检查、何时完成检查.及检查操作过程中发生的一些事件,如何将这些与日常业务流程管理密切相关的信息通知相应的工作流管理者,通常是PACS和RIS(放射信息系统),使得PACS/RIS系统能够及时 准确地知道当前正在做什幺检查、哪些检查在什么时间已经完成、哪些图像已经采集可以去查询和获取了,这是PACS/RIS系统业务管理流程的一个素要环节.

  DICOM协议中定义了MPPS服务(设备操作过程步骤Modality Performing Procedure Step)。应用MPPS服务,成像设备就可以向PACS/RIS系统传递检查执行过程中的各种状态信息.从而改善和加强工作流程的管理。

一、常规检查业务流程

  在一个完整的常规检查流程中,病人进入医院后先进行登记预约.然后到相应的科室进行检查.完成到诊、检查采集图像 检查完成等业务,随后图像传输到PACS系统里,据此进行阅片、诊断,接着出一份报告,有时还打印胶片.检查完成后病人离开。

在这里插入图片描述

二、MPPS的作用

  以上讲述了整个患者检查的业务流程。在该流程中,MPPS起什么作用。在已有的系统中,患者去影像科检查时,设备可以通过MWL从Pacs/Ris中获取到患者数据,从而免去了重新登记的流程,这是信息从Pacs/Ris到检查设备。
  但检查设备的信息(包含检查状态),如何返回给Pacs/Ris,这就要用到MPPS:
在这里插入图片描述
流程图如下:
在这里插入图片描述

三、MPPS的原理

1、MPPS与MWL

  MWL和MPPS是DICOM 定义的设备与信息系统之间进行业务管理信息交互的主要手段,在实际应用中,常将MWL与MPPS融合起来,也有称MPPS为对MWL的扩展。MWL是将信息从信息系统传递到设备上去,而MPPS是将设备检查的状态信息传递到信息系统中。在医生选中worklist 项获得将要进行检查的病人信息后进行图像采集(它包含Scheduled Procedure Step,SPS),以及到采图结束这一段时间, 可以用MPPS服务来传递设备执行任务的各种当前状态。

  MPPS是真正执行的一个操作过程(Performed),跟预约(Scheduled)的操作步骤并不完全相同,并且常常是不同的,在实际情况中,则可能关系到若干实际执行的操作。

  对于任务管理者来说,如RIS,处于管理和监控的需要,它们需要知道当前的任务的状态,这就需要执行设备能够有效地提供任务的状态值。应用MPPS,就是在图像开始采集时,成像设备向任务管理者发送一个消息,表明某个任务开始,即对某个病人采集图像,如果操作过程中出现了意外而终止时,也要通过消息通知流程管理者。如果没有异常的完成了正常采集流程,就通知流程管理者此项任务完成。此时,有关系统可以向设备查询、请求图像了。

2、MPPS服务过程

在DICOM标准中,用两个原语来完成此项服务:N—Create,N—Set。其服务过程如下:

  • 设备从worklist中选中安排的任务,开始图像采集,用N—Create原语通知工作流管理者创建MPPS实例,并且进入开始状态。

  • 工作流管理者收到请求后,创建该实例,并设置相应的状态,成功后返回正确的响应;如果失败则返回失败原因,设备将关联此服务。

  • 设备收到工作流管理者的确认信息。当图像采集结束用N—Set原语通知工作流管理者此MPPS结束。

  • 工作流管理者收到更改通知,进行相应的操作,返回响应。

  • 关闭设备与工作流间的联系。

  这样RIS可以及时得到执行的状态, 提供了工作流管理的必要条件,有效地加强了管理力度。例如,当通过MPPS通知图像已采集完成时,RIS就可进行相关的查询操作。同时管理者(或技师)也可以利用这些状态信息来进行检查完整性验证,例如确认检查完成后PACS系统能得到有关的图像。

四、MPPS的实现步骤

MPPS分为客户端SCU和服务端SCP两种角色,服务端SCP一般是工作流管理端(Pacs/Ris)。客户端SCU一般是检查设备。
MPPS与其他的存储,查询等网络通讯服务一样也是在TCP协议基础上建立连接来完成消息的交互的;其服务框架如下:
在这里插入图片描述

其中,MPPS实例的创建,以及其状态的更新,可以在两个不同的关联Association中进行。

1、创建实例

当设备在获取任务后,开始采集图像时, 它通知RIS此事件,而在通知时,需要确定一个MPPS实例。在DICOM协议中,用N—Create原语来提供此服务。

在此请求中,既有新创建的MPPS实例UID,又包含MPPS实例的状态,即IN PROGRESS。

RIS在收到此请求后,将创建一个实例,并将其状态设置为IN PROGRESS。成功后返回一个确认的响应

2、传递状态

  在图像采集开始后,要么采集过程出现异常,要么正常的完成。分别用DISCONTINUED,COMPLETE两个状态来表示。

  设备用N-Set服务原语来通知RIS端。此请求所设置的对象用创建的MPPS实例UID来标记。作为MPPS SCP的RIS端收到请求后,更新指定的实例的状态值。正常则返回成功的响应以确认此服务完成。

  MPPS管理状态信息在MPPS IOD中用属性(0040,0252)来描述。所有的状态均由设备初始化。有3个状态:

  • IN PROGRE SS: 设备开始执行任务。

  • DISCONTINUED: 说明取消或者非成功的终止:在MPPS开始后,却不能被设备完成。设备通知Is以重新安排或取消有关过程。

  • COMPLETE: 说明对复合SOP实例的获取已经成功地完成,SCU已提供MPPS所需的所有的值。

五、总结

  MPPS通俗来讲,就是将设备检查状态实时返回给管理端,以备管理端进行其他操作,例如查询,存储等操作。有助于对检查流程的管控和分析。


下一篇:MPPS服务的具体代码实现

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/62974.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【笔记2-3】ESP32 bug:PSRAM chip not found or not supported 没有外部PSRAM问题解决

主要参考b站宸芯IOT老师的视频,记录自己的笔记,老师讲的主要是linux环境,但配置过程实在太多问题,就直接用windows环境了,老师也有讲一些windows的操作,只要代码会写,操作都还好,开发…

【0x3D】HCI_Remote_Host_Supported_Features_Notification事件详解

目录 一、事件概述 二、事件格式及参数说明 2.1. HCI_Remote_Host_Supported_Features_Notification事件格式 2.2. BD_ADDR 2.3. Remote_Host_Supported_Features 三、事件作用 3.1. 设备特性沟通与理解 3.2. 功能协商与性能优化 3.3. 设备管理与配置更新 四、应用场…

深入理解AVL树:结构、旋转及C++实现

1. AVL树的概念 什么是AVL树? AVL树是一种自平衡的二叉搜索树,其发明者是Adelson-Velsky和Landis,因此得名“AVL”。AVL树是首个自平衡二叉搜索树,通过对树的平衡因子进行控制,确保任何节点的左右子树高度差最多为1&…

Css动画:旋转相册动画效果实现

​🌈个人主页:前端青山 🔥系列专栏:Css篇 🔖人终将被年少不可得之物困其一生 依旧青山,本期给大家带来Css篇专栏内容:Css动画:旋转相册动画效果实现 前言 随着Web技术的发展,网页不再局限于静态展示&#…

ElasticSearch 与向量数据库的结合实践:突破亿级大表查询瓶颈20241204

💡 ElasticSearch 与向量数据库的结合实践:突破亿级大表查询瓶颈 📚 引言 随着业务规模的不断扩大,传统关系型数据库在处理 亿级大表 时,性能瓶颈愈加凸显。关键词检索、模糊查询、多条件筛选等需求逐步升级&#xff…

解决stable-diffusion-webui时的问题:No module ‘xformers‘. Proceeding without it

p.s 被另一篇文章坑了,装个xformers把我原先的pytorch降智了&%$^# 注意:!!!xformers非强制安装;可优化显存,提高性能和出图速率,对于GPU能力有限的用户很有用;安装过…

如何加强游戏安全,防止定制外挂影响游戏公平性

在现如今的游戏环境中,外挂始终是一个困扰玩家和开发者的问题。尤其是定制挂(Customized Cheats),它不仅复杂且隐蔽,更能针对性地绕过传统的反作弊系统,对游戏安全带来极大威胁。定制挂通常是根据玩家的需求…

【Python系列】使用 `psycopg2` 连接 PostgreSQL 数据库

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

Linux 权限管理:用户分类、权限解读与常见问题剖析

🌟 快来参与讨论💬,点赞👍、收藏⭐、分享📤,共创活力社区。🌟 🚩用通俗易懂且不失专业性的文字,讲解计算机领域那些看似枯燥的知识点🚩 目录 💯L…

LeetCode 力扣 热题 100道(十四)二叉树的中序遍历(C++)

给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。 如下为代码: /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullpt…

运费微服务和redis存热点数据

目录 运费模板微服务 接收前端发送的模板实体类 插入数据时使用的entity类对象 BaseEntity类 查询运费模板服务 新增和修改运费模块 整体流程 代码实现 运费计算 整体流程 总的代码 查找运费模板方法 计算重量方法 Redis存入热点数据 1.从nacos导入共享redis配置…

【C++】—— set 与 multiset

【C】—— map 与 set 1 序列式容器和关联式容器2 set 系列的使用2.1 set 和 multiset 参考文档2.2 set 类的介绍2.3 set 的迭代器和构造2.4 set的增删查2.4.1 insert2.4.2 find 与 erase2.4.3 count 2.5 lower_bound 与 upper_bound2.6 multiset 与 set 的差异2.6.1 不再去重2…

Jupyter Notebook认识、安装和启动以及使用

Jupyter Notebook认识、安装和启动以及使用 Jupyter Notebook认识、安装和启动以及使用 Jupyter Notebook认识、安装和启动以及使用一、认识Jupyter Notebook1.1 Jupyter Notebook概述1.2 Jupyter Notebook 重要特性(1)交互式代码执行(2)支持多种编程语言(3)富文本编辑(4)代码高…

算法第一弹-----双指针

目录 1.移动零 2.复写零 3.快乐数 4.盛水最多的容器 5.有效三角形的个数 6.查找总价值为目标值的两个商品 7.三数之和 8.四数之和 双指针通常是指在解决问题时,同时使用两个指针(变量,常用来指向数组、链表等数据结构中的元素位置&am…

【后端面试总结】golang channel深入理解

在Go语言中,Channel是一种用于在goroutine之间进行通信和同步的重要机制。它提供了一种安全、类型安全的方式来传递数据,使得并发编程变得更加直观和简单。本文将详细介绍Golang中Channel的基本概念、创建与关闭、发送与接收操作,以及相关的使…

华为、华三交换机纯Web下如何创关键VLANIF、操作STP参数

华为交换机WEB操作 使用的是真机S5735,目前主流的版本都适用(V1R5~V2R1的就不在列了,版本太老了,界面完全不一样,这里调试线接的console口,电脑的网络接在ETH口) 「模拟器、工具合集」复制整段内…

详解Java数据库编程之JDBC

目录 首先创建一个Java项目 在Maven中央仓库下载mysql connector的jar包 针对MySQL版本5 针对MySQL版本8 下载之后,在IDEA中创建的项目中建立一个lib目录,然后把刚刚下载好的jar包拷贝进去,然后右键刚刚添加的jar包,点击‘添…

网络(TCP)

目录 TCP socket API 详解 套接字有哪些类型?socket有哪些类型? 图解TCP四次握手断开连接 图解TCP数据报结构以及三次握手(非常详细) socket缓冲区以及阻塞模式详解 再谈UDP和TCP bind(): 我们的程序中对myaddr参数是这样…

【笔记】离散数学 1-3 章

1. 数理逻辑 1.1 命题逻辑的基本概念 1.1.1 命题的概念 命题(Proposition):是一个陈述句,它要么是真的(true),要么是假的(false),但不能同时为真和假。例如…

【Linux篇】权限管理 - 用户与组权限详解

一. 什么是权限? 首先权限是限制人的。人 真实的人 身份角色 权限 角色 事物属性 二. 认识人–用户 Linux下的用户分为超级用户和普通用户 root :超级管理员,几乎不受权限的约束普通用户 :受权限的约束超级用户的命令提示符是#,普通用…