首页 / 同时显示表示实时数据及非实时数据的相应图像的方法及设备

同时显示表示实时数据及非实时数据的相应图像的方法及设备无效专利 发明

技术内容

发明领域 本发明涉及一种显示系统,用于显示表示实时数据的图像以及 同时显示表示非实时数据的图像。 发明背景 显示表示实时数据的图像的系统具有悠久历史。例如,用于显 示表示实时生理学数据、如心电图(ECG)数据的波形图像的系统已经 存在了很长时间。最近已经研制出同时显示表示相应实时数据的多 个图像的系统。例如,目前的ECG系统能够同时显示完整的12导 联线(lead)ECG的全部12个波形。2000年8月15日颁发给Bogart 等人的美国专利6104948公开了一种系统,它用于从不同源接收多 个生理学实时数据,例如ECG、脑电图(EEG)、皮肤传导信息、眼睛 测量仪衍生视点数据以及皮肤温度等。该系统还接收其它实时数据, 例如心血管循环影像(cardiac cine-loop video)。然后,该系统同时且 同步地显示包含表示全部所接收实时数据的相应图像的合成图像。 合成图像可采用录像机上的扫描变换器进行记录以便将来研究。 还存在同时显示表示相应非实时数据的图像的系统。例如,诸 如UNIX X-windows、Apple Macintosh以及Microsoft Windows之类 的计算机窗口操作系统允许编写程序,以便显示表示相应非实时数 据的多个图像。例如,1999年9月21日颁发给Raj等人的美国专利 5956013公开了基于Microsoft Windows的系统,它用于从例如霍尔 特心脏监护仪接收预先记录的ECG数据,并显示表示若干秒ECG 数据的波形的第一图像,同时显示在相互在顶部以其R波对齐的所 选数量(如一至五个)心跳波形的第二图像。 还存在用于同时显示表示实时数据的图像以及表示非实时数据 的图像的其它系统。例如,在上述窗口操作系统控制下工作的计算 机系统的设计已包含实时数据收集装置,并且表示所收集的实时数 据的图像与表示非实时数据的图像同时显示。1989年7月4日颁发 给Conrad等人的美国专利4845653公开了一种系统,在其中同时显 示多个二参数数据字段,表示相同的多参数数据的各个方面。这种 数据可以在接收时实时显示。用户可定义包含在这些数据字段之一 中的一个区域的轮廓,在其它数据字段中高亮显示该区域中与其对 应的数据点。从所包含的数据点生成的其它非实时信息也可显示。 本领域的技术人员知道,上述计算机窗口操作系统使设计并实 现同时显示实时和非实时数据的程序较为简便。因此,为这些操作 系统编写了许多程序来执行各种各样非常合乎需要的任务。本领域 的技术人员还知道,这类操作系统是不可靠的,经常需要重启、复 位或重新引导,尤其是在执行包含多个任务或线程的某个程序或多 个程序的情况下。然而,我们始终希望系统以极高的可靠性进行工 作。在某些应用、如医疗监护设备中,系统以可能实现的最高可靠 性进行工作是必要的。例如,对于ECG监护仪,表示ECG数据的 波形图像的显示绝不可以中断,并且必需在接收实时ECG数据和显 示数据之间以最小的等待时间进行工作。 本领域的技术人员会知道,与实时(如ECG)数据的显示同时的非 实时数据的显示是有用的。例如,分析患者的实时ECG显示的医生 可能希望同时显示该患者的实验室文本结果、或X光图像、或来自 患者图表的数据、或者甚至是来自医药公司万维网网站的信息。专 业人员还了解通过采用窗口操作系统作为这种系统的基础所提供的 优点,例如熟悉用法、易于编程以及有各种各样的程序可供使用等。 最后,专业人员会了解,在非实时信息的显示是重要且合乎需要时, 在任何情况下,都不应当允许非实时数据显示程序中的故障(例如在 使用这种窗口操作系统时必需预计到的)中断实时ECG数据的显示。 因此需要一种系统,它允许利用现有的窗口操作系统同时显示实时 和非实时数据,但不允许非实时数据的显示中的故障中断实时数据 的显示。 发明概述 根据本发明的原理,同时显示表示实时数据和非实时数据的相 应图像的方法及设备通过首先接收非实时数据并且接收实时数据进 行工作。运行窗口操作系统来控制响应非实时数据的应用程序的操 作,以及调节显示装置来显示表示非实时数据的相应图像。实时显 示进程与窗口操作系统同时但独立地运行,用于调节显示装置来与 非实时数据的显示同时地显示表示实时数据的相应图像。 附图概述 图中: 图1是根据本发明的原理的一种计算机系统的框图;以及 图2是软件体系结构图,说明根据本发明的原理、运行于处理 器上以控制该系统的一种体系结构; 图3、图4及图5是屏幕示意图,说明通过根据本发明的系统所 显示的图像。 本发明的详细描述 图1是根据本发明的原理的计算机系统10的框图。图1中,处 理器102具有:第一双向端子,与数据存储装置104连接;以及一 个或多个其它双向端子,与相应的网络接口电路(NIC)106连接。各 NIC 106连接相应网络114。网络114可包括具有从患者传感器到显 示器之间小于200ms的所需等待时间的诸如患者区域网络之类的实 时网络、具有大约数秒等待时间的病房区域网络和/或没有实时等待 时间要求的医院网络。与医院网络极为相似的一个或多个网络114 还可包括与诸如因特网之类的广域网相连的桥接器(未标出)。用户输 入信号源108连接处理器102的第一输入端子,实时输入信号源110 连接处理器102的第二输入端子。处理器102的输出端子连接显示 装置112的输入端子。 在操作中,处理器102从数据存储装置104接收程序代码和数 据。处理器102在所接收程序代码的指导下控制系统10的操作。下 面详细说明这个程序代码的体系结构。一般来说,处理器102从实 时数据源110和/或实时网络114接收实时数据,并调节显示装置112 显示表示实时数据的图像。例如,实时信号源110和/或实时网络114 可包括具有用于连接患者的电极的ECG模块。来自电极的信号由处 理器102进行处理,随后,处理器102又调节显示装置112显示表 示实时12导联线ECG的图像。根据医疗监护系统的要求,这个实 时显示具有从接收来自ECG模块的数据到该数据在显示装置112上 显示之间的最大等待时间200毫秒,并且必须具有最大的应用可靠 性。 处理器102还监测来自用户输入信号源108的用户输入信号。 用户输入信号可以从例如键盘和/或鼠标(未标出)或其它任何输入装置 中产生。处理器102则响应用户输入信号来对系统10进行控制。这 些用户输入信号能够控制诸如12导联线ECG图像等实时图像的显 示的大小、位置和/或非实时数据的选择和显示之类的各个方面。例 如,响应经用户输入信号源108从用户接收的标识信息,执行非实 时应用程序,使非实时数据可从数据存储装置104中的指定文件进 行检索,或者经NIC 106从网络114上的指定位置进行检索,例如 来自医院LAN服务器的患者图表数据、实验室结果或X光图像或来 自因特网的其它数据。控制器102调节显示装置112在显示装置112 上与表示来自实时数据源110和/或实时网络114的实时数据的图像 同时显示表示所检索的非实时数据和/或从用户输入信号源108接收 的其它数据的图像。处理器102还响应来自用户输入信号源108的 用户输入信号,以下面将详细说明的方式在整体上控制系统10的操 作。 在一个最佳实施例中,处理器102在窗口操作系统的控制下进 行工作,在所述实施例中,窗口操作系统是Microsoft NT操作系统。 图2是示意图,说明由处理器102执行以控制系统10的程序代码的 体系结构。操作系统(OS)202为由在系统20上执行的其它所有软件 模块共用的功能及数据构成的软件系统20的其余部分提供服务。例 如,多重处理所需的消息传送系统以及图形显示界面在OS 202中进 行管理。另外,在OS 202中,可以启动及结束进程和线程,并且存 储器可以分配给进程和/或线程或者从其中解除分配。 与软件系统20的操作有关的参数也在OS 202中维护。例如, 与整个处理器使用有关的数据、各进程及线程的消息队列长度、可 用存储器、虚拟存储页面存取故障、工作集大小及分页速率、分配 给进程及线程的句柄计数、各进程或线程所用处理器时间的比例、 网络114中数据传输的速率以及各进程及线程对用户输入信号的响 应性均可由OS 202来确定并存储在其中。硬件系统10的物理参数 由OS 202控制下的电路接收以及与这些参数相关的数据存储在OS 202中也是可行的。例如,诸如中央处理器(CPU)芯片温度、电源电 压、硬盘使用历时以及硬盘存储器自由空间之类的数据可在OS 202 中维护。 一般来说,程序20是三层体系结构。第一层是公共软件体系结 构204,它提供应用程序包(206和208)与OS 202之间的软件接口。 公共软件体系结构204为应用程序提供应用程序接口(API)。通过提 供API,操作系统简化了编制应用程序的任务。诸如请求开始某个线 程或分配存储器之类的功能均以已知方式通过简单的函数调用来提 供给应用程序设计人员。 公共及专用应用程序包206和208形成第二层。公共应用程序 包206表示由操作系统提供商所提供的应用程序。它们一般是由操 作系统的大多数或全部用户所使用的应用程序。公共应用程序包208 可包括文本编辑器、图像阅读器、HTML阅读器(万维网浏览器)等。 此外,这些公共应用程序包的一部分可由专用应用程序包208使用。 专用应用程序包208是提供系统所需的特殊功能的应用程序。一般 来说,单一的专用程序包208提供所需的特殊处理。公共及专用应 用程序包206和208经公共软件体系结构204中的API接收操作系 统服务,并产生将通过公共人界面210在显示装置112上显示的图 像。人界面210形成第三层。人界面210是作为操作系统的组成部 分而提供的,并提供另一个API,以便允许公共及专用应用程序206、 208以已知方式在显示装置112上产生图像。 到此为止所描述的软件体系结构20的部分是用于在Windows NT 操作系统上实现的非实时程序的标准体系结构。软件体系结构的这 个部分作为单一的可执行程序来执行,通过上述各种API调用函数, 产生任务和线程,并根据需要请求及返回内存。 在所述实施例中,附加进程212从实时信号源110和/或实时LAN 114接收实时ECG信号,并对所接收的实时ECG信号进行处理,以 稍后详细说明的方式为显示装置112生成表示对应于所接收信号的12 导联线ECG的图像。实时显示进程212仅从OS 202接收操作系统 服务。它不使用公共软件体系结构204或公共人界面210中的服务。 这个进程作为第二可执行程序来执行,与上述非实时可执行程序无 关但与其协调。另外,实时进程212以单线程来实现,它处理自从 数据源的接收到显示图像的生成的数据,确保最少等待时间。 下列工作参数均与Windows NT环境有关。其它窗口操作系统具 有类似的参数。在所述实施例中,所有非实时应用程序以及这些应 用程序所产生的所有进程、线程均被指定13或以下的优先级,实时 进程212被指定高于非实时进程中的任何进程或线程的优先级 (>13),为实时应用程序提供较高的执行优先级。因此,实时显示进 程212以速率确定方式处理来自OS 202的消息。本领域的技术人员 知道,它保证发送给实时显示进程212的所有消息都会被正确地处 理,因为实时进程具有较高优先级,并且不会被非实时线程中断。 另外,非实时进程及线程的“应用程序提升”参数设置为“无”。 实时网络114必须使用LAN交换机而不是集线器。在网络114中不 允许使用路由器。计算环境被进一步控制,以便使“中断服务例程” 和“延期过程调用”的调用减至最少。非实时进程212的工作集(用 于将存储器页面包含在虚拟存储器环境中的页帧)采用OS 202中的设 备驱动程序进行锁定,使工作集在虚拟存储器对换过程中不会被换 出到存储装置104中。最后,OS 202的GDI探针锁定GDI引擎及其 相关资源的示例,以供实时进程212专用。 因此,图2所示的体系结构20包括两种可执行程序,一个用于 处理非实时数据,另一个则用于处理实时数据。这种体系结构提供 以下优点。第一,可执行程序的分离提供了健壮性。有两种由OS 202 维护的分离消息队列。如果一个队列被封锁,则另一个仍然在工作。 第二,显示装置112通过两个分离且独立的图形显示界面来驱动。 公共人界面210仅提供单一窗口显示界面,其中,把不同的窗口安 排成父-子关系,要求消息和/或事件传播从子到父并返回。通过提供 实时显示进程的分离图形界面,与其它窗口不存在任何父-子关系, 从而改善可靠性并减少消息和/或事件传播。这又减少了从来自实时 信号源110的实时数据的接收到表示该数据的图像在显示装置112 上的显示之间的等待时间。 本领域的技术人员知道,为了改善用户的可读性和可控性,希 望使实时显示进程212的图形“外观”与公共人界面210控制下所 生成的非实时显示的“外观”相同或极为相似。在所述实施例中, 实时显示进程212所生成的图形界面设计为在图形上与公共人界面 210所生成的图形界面相结合。更具体地说,在所述实施例中,实时 显示进程212以及公共人界面210的图形界面都采用标记卡片样式。 下面更详细说明生成组合显示的进程。本领域的技术人员知道,“外 观”的细节与本发明没有密切关系,只是它们对于非实时以及实时 处理是相同或相似的。 通过使用内置于OS 202的图形设备接口(GDI)引擎,将实时进 程212所生成的图像与非实时进程204、206、208、210所生成的图 像相结合。本领域的技术人员知道,GDI引擎从应用程序接收图像 描述指令。响应这些指令,GDI更新存储在硬件视频适配器(未标出) 的视频存储器中的值,以表示应用程序的组合图像。视频适配器又 响应视频存储器的内容而生成显示装置112所用的视频信号。 实时进程212以普通方式从OS 202请求并接收标识图形句柄。 单线程实时进程212则从实时信号源110接收实时信号,并由所指 定的图形句柄标识,生成GDI引擎的指令以显示所需实时图像。实 时进程212则对专门分配给实时进程212的GDI示例进行调用,以 提供这些指令。这个GDI引擎被指定与实时进程212同样高的优先 级,使其执行不会被非实时应用程序中断。GDI引擎又调节显示装 置112,通过显示装置驱动程序来显示组合的实时及非实时图像。 更具体地说,在所述实施例中,实时信号是ECG信号,实时显 示进程线程从实时信号源110或实时LAN 114接收ECG电极信号, 并生成表示12个ECG导联线信号的瞬间波形图像的位图。实时进 程线程212则直接调用OS 202中的GDI,并为它提供指令(位块传输 指令),将位图传送到显示装置112中的视频存储器。GDI引擎将位 图传送到视频适配器的视频存储器中的适当位置。 采用这种技术,实时图像可以与例如由OS 202的GDI所提供的、 采用相同“外观”的非实时图像相结合。本领域的技术人员知道, 直接与显示装置适配器接口也是可行的,但它会带来许多安全性及 可靠性问题。本领域的技术人员还知道,其它接口方法、如DirectX 也可用来向视频适配器提供图像表示信号。 图3是屏幕示意图,说明根据本发明的系统在实时显示进程212 控制下显示的实时图像。图3说明一个示范的12个导联线ECG图 像。图3中,显示装置112包括显示屏幕113,例如CRT表面,它 显示12个实时波形(I、II、III、aVR、aVL、aVF、V1、V2、V3、V4、 V5及V6)的相应图像302。这些波形在上述等待时间限制(200ms)以 内被实时更新。所显示的波形好象是包含在具有相关标记306的标 记页面304中一样,其中包括标识相关页面内容的标志(“患者视图”)。 稍后详细说明附加标记312。 图4说明一个显示屏幕113,其中,胸腔X光的非实时显示图 像308显示在标记页面310中。标记页面310包括相关标记312,其 中包含标识相关页面内容的标志(“定制视图”)。这个标记页面310 覆盖与标记306相关的实时数据标记页面,使它完全隐藏。本领域 的技术人员知道,图4所示图像仅表示单一标记页面,但一个以上 的这种标记页面也是能够同时可用的,其中每一个表示不同的非实 时数据。此外,各标记页面可同时显示一个以上的窗口,其中的每 一个显示表示相应非实时数据的图像。例如,如上所述,实验室文 本结果或万维网页面可同时按照Windows NT操作系统所控制的方式 显示在不同的标记页面上或者显示在单一标记页面的重叠窗口上。 如上所述以及正如本领域的技术人员所熟知的那样,非实时处 理软件发生故障是有可能的。如果出现故障,实时(ECG)信息则可能 被显示在显示装置212上的非实时信息的图像阻挡而无法看见。例 如,如果程序体系结构20的非实时部分(204、206、208、210)在显 示图4所示图像时出现故障,表示实时ECG数据302的图像将被隐 藏。为了解决这个问题,OS 202被调节为对来自用户输入信号源108 的数据进行响应,以激活显示表示来自实时信号源110的实时信息 的图像302的标记页面304,如图3所示。例如,键盘上的特定键或 键组合、例如专门由OS 202识别,并且在识别时,实时 显示进程212所生成的实时显示302显示在冻结的非实时图像308 之上。这个键或键组合称作“热键”,实现它所需的函数是Windows NT操作系统的组成部分。 在另一种情况下,表示实时信息的图像可以部分被表示非实时 信息的图像所掩盖。图5是一个屏幕示意图,说明实时图像302,在 它的上面显示了包含实验室文本结果的窗口314。由软件体系结构20 的非实时部分(204、206、208、210)生成的窗口314部分掩盖了实时 图像302。保持可见的实时图像302的部分继续显示从实时信号源110 接收的实时数据。但窗口314背后的实时部分则是不可见的。如果 程序体系结构20的非实时部分(204、206、208、210)在显示图5所 示图像时出现故障,窗口314所掩盖的表示实时ECG数据的图像302 的部分将被隐藏。在这种情况下,OS 202识别来自用户输入信号源 108、表示在窗口314之外的显示屏幕113的区域中鼠标点击的信号, 并激活实时图像302,使其完全可见。或者也可使用上述热键组合来 激活实时图像302,使其可见。 本发明人已认识到,能够监测软件(20)的非实时部分(204、206、 208、210)的操作,以识别非实时部分出现故障或者有出现故障的危 险的指示。对这种指示作出响应,能够以自动纠正或避免故障的方 式对非实时部分进行控制。 本领域的技术人员知道,不应当允许非实时进程干扰实时进程 的操作。如上所述,一般来说,OS 202维护与应用程序、操作系统 以及计算机系统的操作有关的信息。但在标准操作过程中,操作系 统不监测这种信息或者根据该信息的值来执行任何功能。 图2所示的体系结构20还包括软件及硬件监测器214。监测器 214监测OS 202中维护的信息(如上所述)。监测器214则根据OS 202 中的信息的值执行动作。监测进程214设计得非常简单,以便确保 最大的可靠性,并且被指定最高或极高的优先级,以便保证它始终 能够执行。 一般来说,OS 202维护各种资源使用的指示。监测进程214从 OS 202中检索使用值,并监测可用资源的数量。如果这个数量减少 到较危险的低水平,则采取纠正动作。例如,在适当的情况下,非 实时进程被终止,以便释放被这些进程占用的资源,供实时进程使 用。也就是说,如果非实时进程之一出现故障,则终止该进程。被 终止的进程可自动重新启动。另一种备选方案是,可以向用户发送 通知,作为存在问题的告警。对这种告警作出响应,用户可采取纠 正动作。 更具体地说,有若干组资源受到进程监测器214的监测。通用 资源的可用性;系统资源的可用性;计算机资源的可用性;以及非 实时进程、任务及线程的操作。以下四个表描述由监测进程214所 监测的各资源分组。在各表中,第一列给出所监测的资源。第二列 给出检验说明,例如:它为什么是重要的,它可能具有的作用,以 及它是如何被监测的,等等。第三列给出表示该资源故障的参数。 除专门说明之外,这些参数都是可变的,并且任何阈值均可由用户 在任何时间进行更改。本领域的技术人员还知道,即使是由特定数 值所表示的参数也只是与所述实施例有关,并且许多可允许数值对 这些参数都是可用的。第四列给出表明出现故障时所采取的动作。 表1说明存储器资源检验。表2说明系统资源检验。表3说明计算 机资源检验。表4说明进程检验。 具体检验 检验说明 故障参数 故障动作 缺页故障 计数。 如果“缺页故障计数” 增长,则系统存储器严 重过载, “缺页故障 计数”超过 预定阈值 进行尝试以增 大实时进程的 “工作集大 小”并减小所 有非实时进程 的“工作集大 小”。 实时进程的 “缺页故障 计数”仍然 高于该阈 值。 依次终止所有 非实时应用程 序,直到“缺 页故障计数” 返回到正常状 态或者没有任 何非实时应用 程序。 表1--存储器资源检验 具体检验 检验说明 故障参数 故障动作 处理器总 使用量 太高的使用量会导致整个系 统无响应。如果使用多处理 器计算机,则可分别监测整 个系统的“系统:处理器总 时间”以及各处理器的“处 理器:处理器时间”。 超过80% 依次终止所有 非实时应用程 序。 处理器队 列长度 队列中持续出现两个或更多 任务表示处理器拥塞 2或更大 的持续计 数持续超 过5分钟 依次终止所有 非实时应用程 序。 可用存储 器 “可用存储器”计数器表示 多少字节存储器目前可用于 进程。“可用字节”计数器 的低值可表示计算机中的存 储器全面短缺或者某个应用 程序没有释放内存。 可用存储 器低于预 定数量。 尝试迫使所有 非实时进程进 行页面调出。 如果无效,则 依次终止所有 非实时应用程 序。 分页速率 “页面数/每秒”计数器表 示因硬页面故障而从磁盘检 索的或者因页面故障而写入 磁盘以释放工作集中的空间 的页面数量。“页面数/每 秒”计数器的高速率可表示 过度分页。监测“存储器: 页面故障/每秒”计数器以 确定分页未引起磁盘活动。 硬盘分页 速率过 高。 尝试迫使所有 非实时进程进 行页面调出。 如果无效,则 依次终止所有 非实时应用程 序。 表2-系统资源检验 具体检验 检验说明 故障参数 故障动作 网络状 态 态。 强制回应时间表明网 络上数据交换的速 率。如果强制回应超 时,则表示连接中断 或者异常缓慢, 强制回应时间 大于预定间隔 时间, 高优先级通知 发送给整个系 统的“通知” 组件。 CPU芯 片温度。 CPU芯片温度提升过 高表示CPU冷却系统 中的故障,并且可能 导致处理器损坏及进 程故障。 温度超过预定 阈值。 中等优先级通 知发送给整个 系统的“通知” 组件。 来自电源 的输入电 压。 标准范围之外的电压 会导致部分或整个系 统停机。剧烈的功率 波动可能表示电源故 障。 电压超出预定 限制, 中等优先级通 知发送给整个 系统的“通知” 组件。 硬盘旋转 时间 硬盘具有厂家提供的 使用时间限制。当硬 盘旋转时间接近指定 期限时,可能需要硬 盘维护或更换以防止 故障。 硬盘旋转时间 超过指定间隔 时间。 单一低优先级 通知发送给整 个系统的“通 知”组件。 某个重要 的硬盘逻 辑分区缺 少空间 硬盘的窗口操作系统 分区或实时系统分区 (如果不是安装在操作 系统分区上)接近其容 量。必须从该分区中 删去一些数据, 分区超过总容 量的80%。 高优先级通知 发送给整个系 统的“通知” 组件。 表3-计算机资源监测器检验 具体检验 检验说明 故障参数 故障动作 句柄计数 如果某个进程 的“句柄计数” 增加,该进程 则可能泄漏句 柄。 “句柄计数” 达到阈值水 平,并在此后 保持稳定增 加。 该进程将被终 止。 工作集大小 如果进程的“工 作集大小”增 加,该进程则 可能泄漏存储 器或分配过量 存储器。 “工作集大 小”达到阈值 水平 尝试清空“工 作集”。如果 “工作集”无 法被清空或者 仍然高于阈 值,该进程则 将被终止。 通过GUI校验 进程的响应性 响应性表示进 程从其最近消 息队列中检索 了消息。如果 不是,则可能 被挂起。 该进程在前10 秒内没有从其 消息队列中检 索消息。 该进程将被终 止。 CPU负载 如果某个进程 始终花费较大 百分比的进程 时间执行处理 器指令,则可 能正在运行忙 循环。 该进程始终耗 用超过90%的 进程时间来执 行处理器指 令。 该进程将被终 止。 表4-进程检验 以上述方式工作的系统将能够与表示非实时数据的图像同时显 示表示实时数据的图像,同时具有高度可靠性及最小的等待时间。 这是Ortlam等人2000年11月13日提交的序列号为60/248101 的临时申请的非临时申请。