Dynamically adjustable frame rate from medical device controller
By dynamically adjusting the image acquisition rate of medical equipment controllers, the information delay problem caused by network congestion and wireless network instability in remote monitoring is solved, efficient and timely information reporting is achieved, and the reliability of remote monitoring is improved.
Patent Information
- Application Number
- CN202411357504.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2019-03-26
- Filing Date
- 2020-03-25
- Publication Date
- 2025-01-07
AI Technical Summary
Existing medical device controllers have delayed or lost image acquisition due to network congestion and wireless network instability during remote monitoring, increasing the cost and delay of information reporting.
The server dynamically adjusts the rate at which images are acquired from the medical device controller, and based on the information of the medical device controller, computer network and server workload, optimizes the frequency of image requests to reduce network load and improves the timeliness of information reporting.
Effectively reduce network load, ensure timely reporting of high-priority information (such as alarms), and provide information at intervals requested by users, improving the efficiency and reliability of remote monitoring.
Smart Images

Figure CN119257555A_ABST
Abstract
Description
[0001] This application is a divisional application of Chinese patent application 202080023900.1, whose filing date is March 25, 2020 and whose name is “Dynamically adjustable frame rate from a medical device controller”.
[0002] CROSS-REFERENCE TO RELATED APPLICATIONS
[0003] This application claims the benefit of U.S. Patent Application No. 16 / 365,293, filed on March 26, 2019, entitled “Dynamically Adjustable Frame Ratefrom Medical Device Controller,” which is hereby incorporated by reference in its entirety for all purposes. Technical Field
[0004] The present invention relates to remote monitoring of medical devices, and more particularly to dynamically adjusting the frame rate at which images of a screen displayed by a medical device controller are requested for optical character recognition (OCR) processing of the images. Background Art
[0005] Many medical devices, such as some intravascular blood pumps, such as those available from Abiomed, Inc. of Danvers, MA, are known in the art. 2.5 heart pump) is connected to an external medical device controller that collects and displays operational data about the medical device, such as cardiac signal levels, battery temperature, blood flow rate, and tubing integrity. An exemplary medical device controller is available from Abiomed, Inc. under the trade name (Automated Impella ) is obtained. When the value of the operating data drops beyond a predetermined value or range (for example, if a leak or loss of suction is detected), the medical device controller triggers an alarm. These medical device controllers include a video display screen as a human-machine interface on which the operating data and / or alarms are displayed.
[0006] To facilitate remote monitoring by medical personnel to ensure efficacy and patient safety, some such medical device controllers can be coupled to a central server via a computer network (usually including a wireless segment), which can be accessed by a monitoring station. The monitoring station can display real-time operating data and / or alarms on a display screen for medical personnel to view.
[0007] The server requests and receives an image of the content displayed on the screen of the medical device controller. Some servers use optical character recognition (OCR) technology to parse the image and extract text information (such as heart pump serial number, blood flow rate, warning information text, etc.).
[0008] However, network congestion and intermittent wireless network connections make it difficult or impossible for the server to obtain images from the medical device controller in a timely manner, which may result in lost or delayed notifications of alarms, etc. In addition, each OCR request issued by the server incurs a cost. This cost creates a tension between low-cost operations (infrequent image analysis, with the risk of delayed information reporting) and low-latency information reporting (frequent image analysis). Summary of the invention
[0009] An embodiment of the present invention provides a medical device monitoring system. The medical device monitoring system includes a server. The server is configured to automatically request and receive images. The server is configured to request and receive images from each of a plurality of medical device controllers via a computer network. Each image includes content displayed on a screen of the medical device controller. The server is further configured to perform optical character recognition on at least a portion of each image. The server is further configured to dynamically adjust the rate at which the server requests images from each medical device controller.
[0010] In any embodiments, the server can be configured to dynamically adjust the rate based on information about the medical device controller.
[0011] In any embodiments, information about the medical device controller may be provided by the medical device controller.
[0012] In any embodiments, the information about the medical device controller may include information about an alarm state of the medical device controller.
[0013] In any embodiments, the information about the medical device controller may include information about operating parameters.
[0014] In any embodiments, the information about the medical device controller may include information about a power source for the medical device controller.
[0015] In any embodiments, the information about the medical device controller may include information about the number of users simultaneously monitoring the medical device controller.
[0016] In any embodiment, the server may be configured to dynamically adjust the rate based on information about the computer network.
[0017] In any embodiment, the information about the computer network may include information about the load on the computer network.
[0018] In any embodiment, the information about the computer network may include historical information about the reliability of the computer network.
[0019] In any embodiments, the information about the computer network may include information about the signal strength of a wireless network connection available to the medical device controller.
[0020] In any embodiments, the information about the computer network may include information about the number of other medical device controllers co-located at the facility with the medical device controller.
[0021] In any embodiments, the server may be configured to dynamically adjust the rate based on information about the workload on the server.
[0022] In any embodiments, the server may be configured to dynamically adjust the rate based on input from a human user.
[0023] In any embodiment, the server may be configured to dynamically adjust the rate based on historical information.
[0024] In any embodiments, the historical information may include historical information regarding the timing of the connection of the medical device to the medical device controller.
[0025] In any embodiment, the historical information may include historical information regarding the accuracy of optical character recognition of at least one earlier image.
[0026] In any embodiment, the server is further configured to dynamically adjust the number of servers requesting optical character recognition of at least the portion of each image.
[0027] Another embodiment of the present invention provides a method for monitoring a medical device. The method includes automatically requesting and receiving images of content displayed on a screen of a medical device controller. The images are requested and received via a computer network. The images are requested and received from each of a plurality of medical device controllers. The method also includes automatically performing optical character recognition on at least a portion of each image, and automatically and dynamically adjusting a rate at which images are requested.
[0028] In any embodiment, information about the medical device controller may be received.Automatically and dynamically adjusting the rate at which images are requested may involve automatically and dynamically adjusting the rate based on the information about the medical device controller.
[0029] In any embodiment, information about the computer network may be received.Automatically dynamically adjusting the rate at which images are requested may involve automatically dynamically adjusting the rate based on the information about the computer network.
[0030] In any embodiment, information about the workload on the server may be received. Automatically dynamically adjusting the rate at which images are requested may involve automatically dynamically adjusting the rate based on the information about the workload on the server.
[0031] In any embodiment, input from a human user may be received.Automatically dynamically adjusting the rate at which images are requested may involve automatically dynamically adjusting the rate based on input from the human user.
[0032] Yet another embodiment of the present invention provides a non-transitory computer readable medium. The medium is encoded with instructions. When executed by a processor, the instructions establish a process for performing a computer-implemented method for monitoring a medical device. The process includes a process configured to automatically request and receive an image of content displayed on a screen of a medical device controller. Images are requested and received from each of a plurality of medical device controllers via a computer network. The process is configured to automatically perform optical character recognition on at least a portion of each image. The process is configured to automatically and dynamically adjust the rate at which images are requested. BRIEF DESCRIPTION OF THE DRAWINGS
[0033] The present invention will be more fully understood by referring to the following detailed description of specific embodiments in conjunction with the accompanying drawings, in which:
[0034] 1 is a perspective view of an exemplary conventional medical device controller and an exemplary conventional medical device (in this example, a heart pump) coupled to the medical device controller according to the prior art.
[0035] FIG. 2 illustrates exemplary hypothetical display screen content that may be displayed on a screen of the medical device controller of FIG. 1 according to the prior art.
[0036] Figure 3 is a schematic block diagram of the major components of a medical device monitoring system for collecting, storing, and retrieving operational data from and about a plurality of medical device controllers, such as the medical device controllers of FIGS. 1 and 2 , according to an embodiment of the present invention.
[0037] Figure 4 is a schematic diagram showing a method for monitoring a medical device according to an embodiment of the present invention (such as by Figure 3 A flowchart of a method executed by a server).
[0038] Figure 5is a schematic diagram showing how to automatically and dynamically adjust the rate of requesting images based on information about a medical device or a controller according to an embodiment of the present invention (which is Figure 4 A flowchart of the steps involved in a sub-process of the method. DETAILED DESCRIPTION
[0039] Embodiments of the present invention provide a medical device monitoring system and method that extracts information from screen images from medical device controllers and intelligently changes the rate at which screen images are acquired from the corresponding medical device controllers in order to reduce computer network load, report high priority information (such as alarms) in a timely manner, and provide information at intervals requested by users. The rate at which screen images are acquired is automatically changed based on information available to a server, such as available network bandwidth, network congestion levels, the number of medical device controllers co-located at a single medical institution or on a given local area network (LAN), alarm states of medical device controllers, and / or historical timing information about the use of medical devices connected to the medical device controllers.
[0040] FIG. 1 is a perspective view of an exemplary conventional medical device controller 100 and an exemplary conventional medical device 102 (in this example, a heart pump) coupled to the medical device controller 100. In the example shown in FIG. 1 , the medical device controller 100 is a conventional medical device 102 from Abiomed, Inc. of Danvers, MA. (Automated Impella ), and the heart pump 102 is also available from Abiomed, Inc. 2.5 Heart pump, although any suitable medical device controller may be used. In some cases, a medical device and its associated medical device controller are combined together. Such a combination is simply referred to herein as a medical device controller.
[0041] The medical device controller 100 includes a display screen 104 on which it displays operational data about the medical device 102, such as cardiac signal levels, battery temperature, blood flow rate, and tubing system integrity. As discussed in more detail herein, the medical device controller 100 can be connected to a computer network and thereby transmit images of what is displayed on the screen 104 to a remote server (not shown).
[0042] FIG2 illustrates exemplary hypothetical display screen content 200 that may be displayed on the screen 104 of the medical device controller 100 of FIG1. For example, the display screen content may include a heart pump type ("Impella 5.0") 202, a heart pump serial number ("120703") 204, a warning / error message 206, a placement signal 207, a current heart pump speed (performance) setting ("P-0") 208, a heart pump motor current value 210, a current or average blood flow rate 212, and minimum and maximum blood flow rates 213. The display screen content 200 is typically pixelated.
[0043] Figure 3 1 is a schematic block diagram of the major components of a medical device monitoring system 300 for collecting, storing, and retrieving operational data from and about a plurality of medical device controllers 100. For simplicity, Figure 3 2 shows a medical device controller 100, and not individual medical devices. Although three medical device controllers 100 are shown, other numbers of medical device controllers 100 may be used. Each medical device controller 100 is connectable to a computer network 302 (optionally via a remote link module 304). Each medical device controller 100 is configured to automatically and repeatedly capture status information about the medical device connected thereto and display the status information on a display screen 104 (FIG. 1). As described above, FIG. 2 shows corresponding hypothetical display screen content 200 that may be displayed on the screen 104 of any given medical device controller 100.
[0044] The server 306 is configured to automatically, periodically, or occasionally request and receive images of the content displayed on the screen 104 of each medical device controller 100 (typically approximately every 20 seconds). The requests and images are sent via the computer network 302. The images may be sent in one or more messages encoded as a video frame or sequence of video frames. For example, the video frame(s) may contain a pixelated copy of the image displayed on the display screen 104 of the medical device controller 100.
[0045] The server 306 is configured to process the received frame (image). As described above, the server 306 parses the image and extracts text information such as a heart pump serial number, blood flow rate, warning message text, etc. through the optical character recognition (OCR) portion of the image. The server 306 can also parse the image and extract graphic information (such as a power icon), and compare the graphic information with a predetermined pixel pattern and / or color. The server 306 can include an OCR engine, or the server 306 can communicate with an external OCR engine 310, such as via the computer network 302. The server 306 can then use the recognized text to automatically detect the serial number or other identifier of the medical device controller 100, the operating parameters of the medical device controller 100, whether one of the medical device controllers 100 has triggered an alarm, and the like.
[0046] The data storage device 308 is configured to store one or more media files, in particular frames (images) such as MP4 videos or other suitable types of media files, and the server 306 is configured to automatically store the received frames (images) in the data storage device 308. The data storage device 308 records the screen images received by the server 306 for later playback, such as in response to a request from one of the number of monitoring stations 312. The monitoring station 312 can use cloud-based technology to securely and remotely display images of the medical device controller 100 screen 104 to doctors and hospital staff anywhere with an Internet connection. An exemplary remote monitoring system is sold under the trade name Impella An online device management system is available from Abiomed, Inc. of Danvers, MA.
[0047] The data storage device 308 is configured to provide the requested portion of the stored media file in response to the request to provide. The data storage device 308 thus supports the playback of the medical device controller 100 state information. For example, the data storage device 308 can provide one or more frames (images) of the video stored in the media file for display to the user. The server 306 can also be configured to provide status information about one or more of the medical device controllers 100 to some of the monitoring stations 312 based on the images received by the server 306 in real time and / or based on the historical information stored in the data storage device 308.
[0048] However, congestion in the computer network 302, such as congestion in computer networks within a medical institution, and unreliable wireless network connections create a challenging environment for the server 306 to request and receive images from the medical device controller 100 in a timely manner. In addition, each image is processed individually by the OCR engine 310, and each OCR request issued by the server 306 incurs a cost.
[0049] Embodiments of the present invention address these issues by automatically and dynamically adjusting the rate at which the server 306 requests images from the medical device controllers 100. Optionally or alternatively, the server 306 sends a (possibly different) rate to each medical device controller 100, and in response, each medical device controller 100 sends its images to the server 306 at the commanded rate, without an explicit request for each image from the server 306. For simplicity of explanation, here and in the claims, dynamically adjusting the rate at which the server 306 "requests images" includes both the following: (a) the server 306 explicitly requests each image, and (b) the server 306 commands the rate at which the medical device controller 100 should send images, without an explicit request for each image.
[0050] The server 306 may request images from different ones of the medical device controllers 100 at different rates, and the server 306 may dynamically adjust the rates individually for different ones of the medical device controllers 100. Exemplary factors for automatically determining by the server 306 the rate of images from a particular medical device controller 100 or group of medical device controllers 100 include: network congestion levels, whether the medical device controller 100 is alarming, alarm severity, whether a heart pump 102 or other medical device is connected to a particular medical device controller 100, patient condition, and user commands.
[0051] The server 306 can automatically and dynamically adjust the rate at which images are requested based on information in various categories, such as: (a) information from the medical device controller 100, (b) information about the computer network 302, (c) information about the server 306 or other servers such as the OCR engine 310, and (d) information from or about human users or patients of the system 300. Some of the information in any category can be historical. Examples of each of these categories are provided below. Different and / or other categories of information can be used as needed to meet or approach operational goals.
[0052] Figure 4 is a flow chart schematically illustrating a method for monitoring the medical device 100. The server 306 ( Figure 3 ) can perform the method. At operation 400, the method requests and receives an image ("received image"). The received image is requested and received via the computer network 302. The received image is requested and received from each medical device controller 100 in a plurality of medical device controllers. Each received image includes content displayed on the screen 104 of the medical device controller 100.
[0053] At 402, for each received image, optical character recognition is performed on at least a portion of the image via a service call to the OCR engine 310 to generate text results. At 404, a first text result is extracted from the text results. The first text result is extracted from a portion of the image that contains information about the medical device controller 100 and / or a medical device (such as a heart pump) connected to the medical device controller 100. At 406, information about the medical device controller 100 is automatically ascertained based on the first text result.
[0054] Optionally or alternatively, one or more portions of the received image may be analyzed, such as by comparing the portions to a set of predetermined pixel patterns and / or predetermined colors on a per-pixel basis, to automatically determine information about the medical device controller 100 and / or a medical device connected to the medical device controller 100. For example, the power icon 222 in the image may be compared to a predetermined pattern to automatically determine whether the medical device controller 100 is currently powered by a battery or by a power line.
[0055] At 408, the rate at which images are requested from the medical device controller 100 is automatically and dynamically adjusted based on information about the medical device controller 100 or the associated medical device 102. "Dynamic" means that the rate changes over time, not just once. The rate can change frequently, or less frequently, as the server 306 detects a reason to change the rate.
[0056] Table 1 lists the first category of information that can be automatically ascertained from the image (i.e., information received from the medical device controller 100) and examples of how this information affects the image request rate. For example, if the OCR of the current image from the medical device controller 100 fails, the server 306 can change the interval to zero to request a new image immediately, at least until the image or a predetermined number (such as three) of consecutive images are successfully OCR processed, after which the interval can return to a default value or a value determined by other information. However, if a predetermined number of consecutive images result in OCR failures, the server 306 should increase the interval and raise an error.
[0057] The server 306 receives information from the medical device controller 100 when important events occur, such as when the medical device controller 100 is powered on and when the heart pump 102 is connected to the medical device controller 100. The server 306 can be configured to store information of these events, such as the time. The server 306 can be further configured to calculate statistical information and store statistical or historical information, such as the calculated average amount of time between the time when the medical device controller 100 is powered on and the time when the heart pump 102 or other medical device is connected to the medical device controller 100. After the server 306 has collected a statistically significant number of samples, upon detecting that the medical device controller 100 has been powered on, the server 306 can set the image request interval to a relatively high value (such as about 1 minute) for up to about 70% of the average time when the heart pump 104 is connected, and thereafter automatically switch to a default interval, such as about 20 seconds or another predetermined value.
[0058] The examples in Table 1 relate to a specific type of medical device controller 100 and a specific type of medical device (heart pump). Other types of medical device controllers and medical devices may provide different types of information and therefore may have different types of triggers and different intervals. Therefore, the contents of Table 1 should not be considered as limiting the breadth of the present disclosure or the appended claims. The same applies to the other tables included herein.
[0059]
[0060] The server 306 is configured to automatically and dynamically adjust the rate at which images are requested from the medical device controller 100 based on information about the medical device controller 100. Each entry in Table 1 includes the name of the information segment, a trigger condition, and an interval. If the server 306 detects a condition in the information that satisfies the trigger condition of an entry in Table 1, the server 306 can change the interval at which the server 306 requests images from the corresponding medical device controller 100 to the interval value in the table entry. The server 306 can use additional rules to control what value the image request interval is changed to and / or change the frequency of the image request interval. If multiple conditions are met, the server 306 can change the image request interval to the shortest interval of the conditions met, or to the longest interval of the conditions met based on the additional rules.
[0061] If the conditions in the table are not met, the server 306 can revert to a default interval, such as approximately 20 seconds. Some conditions can cause the image request interval to be changed to a value greater than the default value. For example, if no blood pump is currently connected to a given medical device controller 100, the image request interval can become relatively large because the medical device controller 100 is currently not substantially in use and therefore it is not currently providing particularly useful information. On the other hand, for example, if the alarm text 206 indicates a problem, the image request interval can become relatively small to cause the display on the (one or more) monitoring stations 312 to be refreshed more frequently so that the personnel observing the (one or more) monitoring stations 312 receive more current information.
[0062] Optionally, the server 306 can perform validation tests on the text results returned by the OCR engine 310. For example, if a field (such as average blood flow rate 212 (Figure 2)) is expected to be numeric, the returned OCR text can be checked and accepted only if it contains only numeric characters and an optional decimal point. Numeric fields can be range checked. For example, if it is known a priori that each placement signal 207 value must be in the range of 0-100, the returned OCR text can be compared to that range. If a field fails its corresponding validation test, the interval can be reduced, for example to 5 seconds, until the image is OCR processed to produce a valid value for the field.
[0063] Although the examples in Table 1 are simple conditions, the server 306 can use a combination of conditions to automatically determine the image request interval. For example, if the average blood flow rate 212 is less than 1 or greater than 8, and the minimum blood flow rate 213 is less than 1, the server 306 can change the image request interval to 1 second, which is less than the interval of either of the two conditions.
[0064] Other examples of the first category of information (i.e., information received from the medical device controller 100) include any information available in the image, such as: pump performance level 208, any specific alarms 206, local time 224, and pump serial number 204. The pump performance level 208 is an indication of an operating parameter (substantially a desired pump speed in this case) set by a user of the medical device controller 100, such as by a user interface implemented using the display screen 104 on the medical device controller 100.
[0065] Figure 5 is a schematic diagram showing operation 408 ( Figure 4), i.e., automatically and dynamically adjusting the rate at which images are requested based on information about the medical device or controller 100. At 500, a table such as Table 1 is scanned to find an entry whose name matches the information about the medical device controller 100. Recall that the information ( Figure 4 ), and / or analyzing one or more portions of the received image (such as a power icon) to determine information about the medical device controller 100.
[0066] At 502, if any matching table entries are found, control passes to 504. In general, entries in Table 1 can be characterized as increasing the interval above a default value or decreasing the interval below a default value. In general, table entries that increase the interval value above a default value can be associated with relatively "relaxed" situations where rapid updates are not needed or desired, such as because no pumps are connected to the medical device controller 100, or network congestion requires less frequent updates. On the other hand, table entries that decrease the interval value below a default value can be associated with relatively "tense" situations where rapid updates are needed, such as because the medical device controller 100 is in alarm.
[0067] If all matching table entries increase the interval above the default value, the overall situation can be considered lenient and the maximum interval value can be selected. In another more conservative embodiment, the minimum interval value can be selected.
[0068] If all matching table entries reduce the interval below the default value, the overall situation may be considered critical, and the smallest interval value may be selected to accommodate the most severe problem represented by the matching table entries.
[0069] If at least one matching table entry increases the interval above the default value, and at least one matching table entry decreases the interval below the default value, one or more additional rules may be used to determine whether to increase or decrease the interval value. In some embodiments, each table entry has a priority value (not shown), and the matching table entry with the highest priority value is selected. Thus, for example, if some information indicates that a short image request interval value is appropriate, but no heart pump is connected to the corresponding medical device controller 100, it does not make sense to quickly acquire images from the medical device controller 100, and a long interval value may be selected. The strategy may be implemented as follows.
[0070] At 504, among all matching table entries, the shortest interval value is temporarily stored. Likewise, at 506, among all matching table entries, the longest interval value is temporarily stored. At 508, the shortest or longest interval value is selected from the temporary storage based on one or more additional rules.
[0071] If any matching table entry reduces the interval below the default value, the additional rule may cause the shortest interval value to be selected, or the additional rule may select the table entry based on a priority value or according to other selection criteria. On the other hand, if no matching table entry reduces the interval below the default value, the additional rule may cause the longest interval value to be selected.
[0072] At 510, the selected interval value is used to set the image request interval for the medical device controller 100. At 512, information about the next medical device controller is analyzed.
[0073] Return to Figure 4 , at 410, information about the computer network 320 is automatically ascertained. For example, the server 306 may query the computer network 306 or use a tool (such as ping) to measure network congestion levels, utilization, and / or available bandwidth. It should be noted that the computer network 320 may include several public and / or private networks (such as wired and / or wireless private networks in a medical institution), public and private wide area networks (such as the Internet), public and private cellular networks, and private networks located within the facilities of a service provider that houses the server 306. Each of these networks or segments may have its own set of characteristics, and different medical device controllers 100 may be coupled to the server 306 via different networks and segments. Therefore, for each medical device controller 100, or a group of co-located medical device controllers 100, the server 306 may choose to use the characteristics of the most restrictive network or segment in routing to the medical device controller 100 or the group.
[0074] The server 306 may store information indicating which wide area network, local area network, and / or segment, etc., each medical device controller 100 is connected to, and / or which network components or segments the computer network traffic travels through. This information may be extracted from header information in network packets received by the server 306 from the medical device controller 100 using a traceroute tool or other well-known tools and techniques.
[0075] Information about which computer network, segment, etc. the individual medical device controllers 100 are connected to enables the server 306 to calculate the number of medical device controllers 100 connected to any given computer network, segment, router, etc. This information, along with information about the bandwidth of the network and segment between the server 306 and the medical device controllers 100, enables the server 306 to calculate the interval that is sustainable on the available infrastructure. Specifically, the server 306 can calculate the aggregate interval that is sustainable on the available infrastructure, and then divide the aggregate interval between the medical device controllers 100 based on the information about the individual medical device controllers 100.
[0076] The server 306 can store historical information about the reliability of computer network connections to various medical device controllers 100, and use relatively short intervals on historically unreliable networks. Each medical device controller (MDC) 100 can report the medical institution in which the medical device controller 100 is installed. This information may have been entered into the memory of the medical device controller 100 by a person, such as through a user interface implemented on the screen 104. The server 306 can use the information about which medical institutions host which medical device controllers 100 to predict information such as network reliability for newly connected medical device controllers 100.
[0077] Table 2 lists examples of the second type of information (ie, information about the computer network 302) that can be automatically ascertained by the server 306 and how this information affects the image request rate (ie, triggers and corresponding intervals).
[0078]
[0079] At 412, based on the information about computer network 302, similar to that described in Tables 1 and Figure 5 The approach discussed above, mutatis mutandis, automatically and dynamically adjusts the rate at which images are requested from the medical device controller 100 .
[0080] Table 3 lists examples of the third type of information that can be automatically ascertained by the server 306 (ie, information about the server 306 or other servers such as the OCR engine 310) and how this information affects the image request rate (ie, triggers and corresponding intervals).
[0081]
[0082] At 414, server 306 automatically ascertains information about server 306 and optionally about related servers (some not shown) such as OCR engine 310. At 416, based on the information about the server(s) (including server 306), similar to that described in Tables 1 and 2 and Figure 5 The discussed approach (with necessary changes) automatically and dynamically adjusts the rate at which images are requested from the medical device controller 100. Optionally, if a server (such as the server 306 or the OCR engine 310) is found to be busy beyond a predetermined threshold (such as about 70%), another copy of the server can be produced, for example, using virtual machine technology, and the workload can be divided among the available servers. Conversely, if a server is found to be busy less than a predetermined threshold (such as about 40%), the server can be terminated, and the workload of the terminated server can be distributed among the remaining servers.
[0083] Table 4 lists an example of the fourth type of information that can be ascertained by the server 306 (i.e., information from or about a user or patient of the system 300) and how this information affects the image request rate (i.e., triggering and corresponding intervals). As described above, each monitoring station (MS) 312 displays information about one or more user-selected medical device controllers (MDCs) 100. It can be assumed that one user accesses each monitoring station 312. Therefore, the number of monitoring stations 312 is equal to the number of monitoring users.
[0084]
[0085] Return to Figure 4 , at 418, input (commands) from a user are received, such as by the server 306 or by one of the monitoring stations 312 and forwarded to the server 306. For example, the user input may designate a particular medical device controller 100 as "important" or "critical." Similarly, the user input may designate a particular patient as "critical." The user input ("monitoring") may include a user-specified interval. Each monitoring station 312 may monitor one or more medical device controllers 312. As described herein, the server 306 may supply information to the monitoring stations 312 so that the monitoring stations 312 may display the information to their respective users, or the server 306 may be informed by the monitoring stations 312 or by another server (not shown) which monitoring stations 312 are monitoring which (or which) medical device controllers 100. In any case, the server 306 stores information indicating the number of monitoring stations 312 that are monitoring each medical device controller 100. In a manner similar to that described with respect to Tables 1-3 and Figure 5 In the manner discussed above (mutatis mutandis), the server 306 may use this information and / or other information to automatically and dynamically adjust the rate at which images are requested from the individual medical device controllers 100, such as Figure 4 As indicated in 420.
[0086] Although the present invention is described by the above exemplary embodiments, modifications and changes may be made to the illustrated embodiments without departing from the inventive concepts disclosed herein. For example, although specific parameter values such as interval time and triggering may be listed with respect to the disclosed embodiments, within the scope of the present invention, the values of all parameters may vary within a wide range to suit different applications. Unless otherwise indicated in the context or understood by a person of ordinary skill in the art, terms such as "about" mean within ±20%.
[0087] As used herein, including in the claims, the term "and / or" (used in connection with a list of items) means one or more of the items in the list, i.e., at least one of the items in the list, but not necessarily all of the items in the list. As used herein, including in the claims, the term "or" (used in connection with a list of items) means one or more of the items in the list, i.e., at least one of the items in the list, but not necessarily all of the items in the list. "Or" does not mean "exclusive or"
[0088] Although various aspects of the embodiments may be described with reference to flowcharts and / or block diagrams, the functions, operations, decisions, etc. of all or a portion of each block or combination of blocks may be combined, separated into separate operations, or performed in other sequences. All or a portion of each block, module, or combination thereof may be implemented as computer program instructions (such as software), hardware (such as combinatorial logic, application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), processors, or other hardware), firmware, or a combination thereof.
[0089] The server 306 or a portion thereof may be implemented by one or more processors executing instructions stored in a memory or controlled by the instructions. Each processor may be a general-purpose processor such as a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor (DSP), a dedicated processor, etc. (as appropriate), or a combination thereof.
[0090] The memory may be a random access memory (RAM), a read-only memory (ROM), a flash memory, or any other memory, or a combination thereof, suitable for storing control software or other instructions and data. The instructions defining the functionality of the present invention may be delivered to the processor in a variety of forms, including but not limited to information permanently stored on a tangible, non-transitory, non-writable storage medium (e.g., a read-only memory device within a computer, such as a ROM, or a device readable by a computer I / O accessory, such as a CD-ROM or DVD disk), information changeably stored on a tangible, non-transitory, writable storage medium (e.g., a floppy disk, a removable flash memory, and a hard drive), or information transmitted to the computer via a communication medium, including a wired or wireless computer network. In addition, while embodiments may be described in conjunction with various schematic data structures, various data structures may be used to embody the system.
[0091] The disclosed aspects or parts thereof may be combined in a manner not listed above and / or not explicitly claimed. In addition, the embodiments disclosed herein may be suitably practiced in the absence of any element not specifically disclosed herein. Therefore, the present invention should not be considered to be limited to the disclosed embodiments.
Claims
1. A medical device monitoring system (300), comprising: A server (306) configured to automatically request and receive images of content (200) displayed on a screen (104) of each of a plurality of medical device controllers (100) via a computer network (302), the server being further configured to perform optical character recognition on at least a portion of each image and dynamically adjust a rate at which the server requests the images.
2. The system of claim 1, wherein the server is configured to dynamically adjust the rate based on information (202, 204, 206, 207, 208, 210, 212, 213) about the medical device controller.
3. The system of claim 2, wherein the information about the medical device controller is provided by the medical device controller. 4 . The system of claim 3 , wherein the information about the medical device controller includes information about an alarm status of the medical device controller.
5. The system of claim 3, wherein the information about the medical device controller includes information about operating parameters (207, 208, 210, 212, 213).
6. The system of claim 3, wherein the information about the medical device controller includes information about a power source for the medical device controller.
7. The system of claim 2, wherein the information about the medical device controller includes information about a number of users simultaneously monitoring the medical device controller.
8. The system of claim 1, wherein the server is configured to dynamically adjust the rate based on information about the computer network.
9. The system of claim 8, wherein the information about the computer network includes information about a load on the computer network.
10. The system of claim 8, wherein the information about the computer network includes historical information about the reliability of the computer network.