REMOTE MONITORING METHODS AND SYSTEMS FOR MONITORING PATIENTS SUFFERING FROM CHRONICAL INFLAMMATORY DISEASES
20220415462 · 2022-12-29
Assignee
Inventors
- Asmir VODENCAREVIC (Fuerth, DE)
- Melanie HANKE (Fuerth, DE)
- Jan JAKUBCIK (Zilina, SK)
- Volker SCHALLER (Uttenreuth, DE)
- Andre WICHMANN (Fuerth, DE)
- Peter ZIGO (Zilina, SK)
- Marcus ZIMMERMANN-RITTEREISER (Grossenseebach, DE)
Cpc classification
A61B5/0004
HUMAN NECESSITIES
G16H20/00
PHYSICS
G16H50/70
PHYSICS
G16H50/20
PHYSICS
G16H10/60
PHYSICS
G16H70/40
PHYSICS
International classification
G16H20/00
PHYSICS
A61B5/00
HUMAN NECESSITIES
G16H10/60
PHYSICS
G16H50/70
PHYSICS
Abstract
A computer-implemented method for determining a predictive disease status of an inflammatory disease of a patient is compatible with a system including a remote platform and at least one mobile user device, wherein the at least one mobile user device is associated with the patient and is in data communication with the platform. The method comprises: receiving, at the platform, monitoring data indicative of the health state of the patient from the user device associated to the patient; determining, at the platform, a predictive disease state of the inflammatory disease of the patient based on the received monitoring data; evaluating the determined predictive disease status; providing the predictive disease status to a user at the platform and/or the patient at the user device based on the evaluating the determined predictive disease status.
Claims
1. A computer-implemented method for predicting a disease status of an inflammatory disease of a patient, in a system including a remote platform and at least one mobile user device, the at least one mobile user device being associated with the patient and being in data communication with the remote platform, the method comprising: receiving, at the remote platform, monitoring data indicative of a health state of the patient from the at least one mobile user device associated with the patient, determining, at the remote platform, a predictive disease status of the inflammatory disease of the patient based on the monitoring data; evaluating, at the remote platform, the predictive disease status; and providing the predictive disease status to at least one of a user at the remote platform or the at least one mobile user device, based on the evaluating of the predictive disease status.
2. The method according to claim 1, wherein the predictive disease status relates to at least one of: a predictive disease activity of the inflammatory disease of the patient, the predictive disease activity being at least one of an occurrence of a flare or exacerbation of the inflammatory disease of the patient, a predictive treatment response of the patient with respect to a treatment of the inflammatory disease of the patient, or a predictive occurrence of an adverse effect related to a treatment of the inflammatory disease of the patient.
3. The method according to claim 1, wherein: the remote platform is in data communication with a local or cloud-based data base for storing electronic medical records of patients, the method further includes retrieving, by the remote platform, healthcare data associated with the patient from the local or cloud-based data base, and the determining the predictive disease status is additionally based on the healthcare data.
4. The method according to claim 3, wherein the healthcare data comprises at least one of: information about a medication prescribed to treat the inflammatory disease of the patient, information about a medication dose prescribed to treat the inflammatory disease of the patient, demographic information of the patient, medical image data of the patient, laboratory data of the patient, prior monitoring data acquired from the patient, information concerning the patient's lifestyle, information about a disease history of the patient, or information about previous examinations of the patient.
5. The method according to claim 1, wherein: the at least one mobile user device is in data communication with at least one medical information device configured to determine one or more physiological measurement values of the patient, the at least one medical information device including at least one of a weight scale, a pulse oximeter, a blood pressure meter, a heart rate monitor, an activity tracker, a thermometer, an airflow sensor, a galvanic skin response sensor, or a blood glucose meter; and the monitoring data includes one or more physiological measurement values as determined by the at least one medical information device.
6. The method according to claim 1, wherein: the at least one mobile user device is configured to receive an input of the patient indicative of health state information of the patient as perceived by the patient, the health state information includes at least one of an indication of the patient's perceived wellbeing, a number of swollen or tender joints as determined by the patient, a patient's diet, a medication having been taken by the patient, an occurrence or beginning of a flare as perceived by the patient, one or more answers of the patient to a questionnaire, or an adverse effect related to medication prescribed to the patient as perceived by the patient; and the monitoring data includes the health state information.
7. The method according to claim 1, wherein: the at least one mobile user device is configured to gather at least one of current or prospective local environmental information apt to influence the health state of the patient, the at least one of current or prospective local environmental information including at least one of current weather conditions, current air pollution values, current allergen concentrations, prospective weather conditions, prospective air pollution values, or prospective allergen concentrations; and the monitoring data includes the local environmental information.
8. The method according to claim 1, wherein: the remote platform is configured to host at least one prediction model that is at least one of configured or trained to determine the predictive disease status of the inflammatory disease of the patient based on input data; and the determining the predictive disease status includes applying the at least one prediction model to at least the monitoring data.
9. The method according to claim 1, wherein: the remote platform is in wireless data communication with a plurality of secondary mobile user devices, each secondary mobile user device being respectively associated with a further patient that is different from the patient; and the method further includes at least one of searching the further patients for similar patients, the similar patients having a degree of similarity to the patient for which the predictive disease status has been determined and evaluated, providing the predictive disease status to at least one of another user at the remote platform in connection with the similar patients or secondary mobile user devices associated with the similar patients, or respectively determining a secondary predictive disease status for each of the similar patients and comparing each of the secondary predictive disease status with the predictive disease status.
10. The method according to claim 1, wherein: the method further includes providing an association linking different stages of predictive disease status to at least one of (i) actions or recommendations for the patient or (ii) a user of the remote platform; the evaluating includes determining a stage of the predictive disease status and selecting actions or recommendations based on the stage of the predictive disease status and the association; and providing selected actions or recommendations to at least one of the user at the remote platform or the at least one mobile user device.
11. The method according to claim 1, further comprising: providing, to the at least one mobile user device, a prediction model that is at least one of configured or trained to locally determine, at the at least one mobile user device, a predictive disease status of the inflammatory disease of the patient based on the monitoring data; and receiving, at the remote platform, a locally determined predictive disease status.
12. A patient monitoring platform for predicting a disease status for an inflammatory disease of a patient, the patient monitoring platform comprising: an interface unit configured to communicate with at least one mobile user device associated with the patient and arranged at a remote location from the patient monitoring platform for receiving monitoring data indicative of a health state of the patient from the at least one mobile user device; and a computing unit configured to determine a predictive disease status for the patient based on the monitoring data, evaluate the predictive disease status, and provide, based on the evaluation, the predictive disease status to at least one of a user at the patient monitoring platform or the at least one mobile user device.
13. A system for predicting a disease status for an inflammatory disease of a patient, comprising the patient monitoring platform according to claim 12 and the at least one mobile user device, the at least one mobile user device configured to collect the monitoring data indicative of the health state of the patient and to transmit the monitoring data to the patient monitoring platform.
14. A non-transitory computer program product comprising program elements which cause a computing unit of a system for predicting a disease status for an inflammatory disease of a patient to perform the method of claim 1, when the program elements are loaded into a memory of the computing unit.
15. A non-transitory computer-readable medium on which program elements are stored, the program elements being readable and executable by a computing unit of a system for predicting a disease status for an inflammatory disease of a patient, in order to perform the method according to claim 1, when the program elements are executed by the computing unit.
16. A patient monitoring platform for predicting a disease status for an inflammatory disease of a patient, the patient monitoring platform comprising: a memory storing computer executable instructions; and at least one processor configured to execute the computer executable instructions to cause the patient monitoring platform to communicate with at least one mobile user device associated with the patient and arranged at a remote location from the patient monitoring platform to receive monitoring data indicative of a health state of the patient from the at least one mobile user device, determine a predictive disease status for the patient based on the monitoring data, evaluate the predictive disease status, and provide, based on the evaluation, the predictive disease status to at least one of a user at the patient monitoring platform or the at least one mobile user device.
17. The method according to claim 2, wherein: the remote platform is in data communication with a local or cloud-based data base for storing electronic medical records of patients, the method further includes retrieving, by the remote platform, healthcare data associated with the patient from the local or cloud-based data base, and the determining the predictive disease status is additionally based on the healthcare data.
18. The method according to claim 2, wherein: the at least one mobile user device is in data communication with at least one medical information device configured to determine one or more physiological measurement values of the patient, the at least one medical information device including at least one of a weight scale, a pulse oximeter, a blood pressure meter, a heart rate monitor, an activity tracker, a thermometer, an airflow sensor, a galvanic skin response sensor, or a blood glucose meter; and the monitoring data includes one or more physiological measurement values as determined by the at least one medical information device.
19. The method according to claim 3, wherein: the at least one mobile user device is in data communication with at least one medical information device configured to determine one or more physiological measurement values of the patient, the at least one medical information device including at least one of a weight scale, a pulse oximeter, a blood pressure meter, a heart rate monitor, an activity tracker, a thermometer, an airflow sensor, a galvanic skin response sensor, or a blood glucose meter; and the monitoring data includes one or more physiological measurement values as determined by the at least one medical information device.
20. The method according to claim 4, wherein: the at least one mobile user device is in data communication with at least one medical information device configured to determine one or more physiological measurement values of the patient, the at least one medical information device including at least one of a weight scale, a pulse oximeter, a blood pressure meter, a heart rate monitor, an activity tracker, a thermometer, an airflow sensor, a galvanic skin response sensor, or a blood glucose meter; and the monitoring data includes one or more physiological measurement values as determined by the at least one medical information device.
21. The method according to claim 11, further comprising: comparing, at the remote platform, the locally determined predictive disease status with the predictive disease status as determined at the remote platform.
22. The method according to claim 2, wherein: the remote platform is configured to host at least one prediction model that is at least one of configured or trained to determine the predictive disease status of the inflammatory disease of the patient based on input data; and the determining the predictive disease status includes applying the at least one prediction model to at least the monitoring data.
23. The method according to claim 3, wherein: the remote platform is configured to host at least one prediction model that is at least one of configured or trained to determine the predictive disease status of the inflammatory disease of the patient based on input data; and the determining the predictive disease status includes applying the at least one prediction model to at least the monitoring data.
24. The method according to claim 3, wherein: the remote platform is in wireless data communication with a plurality of secondary mobile user devices, each secondary mobile user device being respectively associated with a further patient that is different from the patient; and the method further includes at least one of searching the further patients for similar patients, the similar patients having a degree of similarity to the patient for which the predictive disease status has been determined and evaluated, providing the predictive disease status to at least one of another user at the remote platform in connection with the similar patients or secondary mobile user devices associated with the similar patients, or respectively determining a secondary predictive disease status for each of the similar patients and comparing each of the secondary predictive disease status with the predictive disease status.
25. The method according to claim 3, wherein: the method further includes providing an association linking different stages of predictive disease status to at least one of (i) actions or recommendations for the patient or (ii) a user of the remote platform; the evaluating includes determining a stage of the predictive disease status and selecting actions or recommendations based on the stage of the predictive disease status and the association; and providing selected actions or recommendations to at least one of the user at the remote platform or the at least one mobile user device.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0103] Characteristics, features and advantages, as well as the manner they are achieved, become clearer and more understandable in the light of the following description and embodiments, which will be described in detail with respect to the figures. This following description does not limit the present invention on the contained embodiments. Same components, parts or steps can be labeled with the same reference signs in different figures. In general, the figures are not drawn to scale. In the following:
[0104]
[0105]
[0106]
[0107]
[0108]
[0109]
[0110]
[0111]
[0112]
[0113]
DETAILED DESCRIPTION
[0114]
[0115] As shown in
[0116] In general, system 1 is capable of determining a predictive disease status of a patient P suffering from an inflammatory disease based on locally gathered monitoring data MD and/or healthcare data HD taken from the respective patient's electronic medical records.
[0117] Monitoring data MD may relate to data and values which characterize the respective patient's current or recent health state. According to some examples, monitoring data MD may comprise vitals data of the patient, such as the blood pressure, the weight, the blood glucose level, the oxygen saturation level, the body temperature and the like as locally measured by one or more medical information devices 200. Additionally or alternatively, monitoring data MD may comprise information inputted into mobile user device 100 by patient P, such as various PROs collected via digital symptom questionnaires. Additionally, or alternatively, monitoring data MD may comprise local environmental data relevant for respective patient P such as local weather conditions or the like.
[0118] Healthcare data HD generally relates to data from the electronic medical records of the patients P. As such, healthcare data HD optimally complement the information from the monitoring data MD as the healthcare data HD provide further background information to optimally judge the patient's health state and predict a future disease status. Healthcare data HD preferably comprises data from the group of demographic data (possibly including lifestyle data), medication data, examination data and/or lab data. Additionally, healthcare data HD may comprise information about an intended change of treatment, e.g., information about a drug intended to be applied to the patient or a reduction or increase of a drug dose. Moreover, healthcare data HD may potentially include omics data (e.g., proteomics, genomics, metabolomics) and medical image data acquired using different imaging modalities (e.g., magnetic resonance imaging, ultrasound, computed tomography). Healthcare data HD may also comprise one or more medical reports of past examinations of the patient P. Moreover, healthcare data HD may comprise monitoring data from previous monitoring cycles which have been added to the healthcare data by remote platform 10. In other words, remote platform may be configured to push monitoring data MD to data base 300 (or the corresponding healthcare information system).
[0119] Medical information devices 200 may generally be configured to measure, generate, store, (pre-)process, and/or provide monitoring data MD of patient P. In particular, medical information devices 200 may be configured to provide physiological measurement values acquired from patient P or in relation to patient P.
[0120] Medical information devices 200 each may include one or more sensor devices capable of measuring, generating, and/or providing physiological measurement values of patient P. For example, such sensor devices may include a blood pressure monitor, an oximeter, a glucometer, an airflow sensor, a galvanic skin response sensor, an electrocardiogram sensor, a heart rate monitor, a scale, a pulse oximeter, a thermometer, or a similar type of device. In some implementations, such sensor devices may be implemented within a wearable device or even mobile user device 100 itself (e.g., a smart wristwatch, a pair of smart eyeglasses, an activity band, and/or the like). In some implementations, medical information devices 200 may provide monitoring data MD to mobile user devices 100 after gathering monitoring data MD. Additionally, or alternatively, medical information devices 200 may also be controlled remotely by remote platform 10 and interface directly with remote platform 10.
[0121] According to some examples, a patient P may be associated with multiple medical information devices 200 that are of different types and/or manufactured by different third parties. For example, a patient P may be associated with a blood pressure monitor and a heart rate monitor, which are gathering monitoring data MD of patient P. Further medical information devices 200 may also include sensor devices configured to gather local environmental data of an environment in which patient P is located (e.g., air humidity values, air temperature values, whether particular chemicals are present in the environment, the concentration of allergens in the air and/or the like).
[0122] Mobile user device 100 generally is a device configured to receive, generate, store, process, and/or provide monitoring data MD related to a patient P. For example, mobile user device 100 may include a mobile phone (e.g., a smart phone, a radiotelephone, etc.), a laptop computer, a tablet computer, a handheld computer, a gaming device, or a wearable communication device (e.g., a smart wristwatch, a pair of smart eyeglasses, etc.).
[0123] In some implementations, mobile user device 100 may function as a gateway device between medical information devices 200 and remote platform 10. That is, mobile user device 100 may function as a communication intermediary between medical information devices 200 and remote platform 10.
[0124] As shown in
[0125] As shown in
[0126] According to some examples, interface unit 101 may include a sensor interface 101a which may provide mobile user device 100 with the capabilities needed to communicate with respective medical information devices 200. For instance, sensor interface 101a may provide mobile user device 100 with a capability to use a protocol associated with a particular medical information device 200, e.g., to use particular commands associated with that medical information device 200, and so forth. In some implementations, sensor interface 101a may communicate to discover a medical information device 200, to start and/or pause data collection by a medical information device 200, and/or the like. In some implementations, sensor interface 101a may include one or more wireless adapters, e.g., in the form of a Bluetooth, Wi-Fi, or ZIGBEE adapter. Such wireless adapters may provide mobile user device 100 with a capability to perform bi-directional data communication with medical information devices 200, such as initiating device discovery, querying a list of paired devices, creating a server socket to listen for connection requests, and/or the like. In some implementations, sensor interface 101a may communicate with corresponding wireless adapters at medical information devices 200 so that communications (e.g., instructions, physiological measurement values, etc.) can be exchanged between mobile user device 100 and one of the medical information devices 200.
[0127] In addition, interface unit 101 may comprise a network interface 101b to communicate with remote platform 10 and/or to access external information sources via the internet. For example, network interface 101b may provide mobile client device 100 with a capability to communicate with remote platform 10 via an HTTP or HTTPS connection or to access web pages and/or web services provided via the internet. According to some examples, network interface 101b is implemented as a wireless interface based on a Wi-Fi or WLAN connection. According to other examples, network interface 101b is implemented as a (wireless) interface based on cellular network (e.g., a long-term evolution (LTE) network, a code division multiple access (CDMA) network, a 3G network, a 4G network, a 5G network, another type of next generation network, etc.), a public land mobile network (PLMN), a local area network (LAN), a wide area network (WAN), a telephone network (e.g., the Public Switched Telephone Network (PSTN)), a private network, an ad hoc network, an intranet, the Internet, a fiber optic-based network, a cloud computing network connection and/or a combination of these or other types of network connections.
[0128] As shown in
[0129] In some implementations, mobile user device 100 may include a memory 104 (also denoted as mobile memory) which may receive and/or store physiological measurement values from medical information devices 200 or other monitoring data MD. In particular, memory 104 may serve as an offline data buffer for storing monitoring data MD for later transmission to remote platform 10 when mobile user device 100 is not connected to remote platform 10. Further, memory 104 may store information and/or software related to the operation and use of mobile user device 100. Memory 104 may include a random access memory (RAM), a read only memory (ROM), a hard disk drive, a solid state drive and/or another type of dynamic or static storage device (e.g., a flash memory, a magnetic memory, and/or an optical memory).
[0130] Remote platform 10 is generally configured to request, receive, store, process, monitoring data MD and healthcare data HD related to a patient P in order to determine a predictive disease status of the inflammatory disease of patient P.
[0131] As shown in
[0132] Computing unit 12 may include a group of computing resources which may include one or more personal computers, workstation computers, server devices, or another type of computation and/or communication device. According to some examples, computing unit 12 may communicate with other computing resources via wired connections, wireless connections, or a combination of wired and wireless connections. Further, computing unit 12 may include a group of cloud resources, such as one or more applications or one or more virtual machines. The applications may include one or more software applications that may be provided to or accessed by one or more devices of system 1. According to some examples, the applications may include a software application associated with one or more data bases 300.
[0133] Computing unit 12 may comprise a data retrieval module 12a configured to retrieve healthcare data HD from data base 300 and/or monitoring data MD from the connected mobile user devices 100. Further, computing unit 12 may comprise an analysis or prediction module 12b configured to determine a predictive disease status PDS of a patient P based on monitoring data MD and/or healthcare data HD retrieved for that patient P by retrieval module 12a. According to some examples, prediction module 12b may be configured to host one or more prediction models configured and trained for this task and to apply one or more prediction models to monitoring data MD and/or healthcare data HD. To select an appropriate prediction model from a plurality of available prediction models, computing unit 12 may optionally comprise a selection module 12c. Selection module 12c may be configured to select, from a plurality of prediction models hosted at the prediction module 12b, one prediction model which is suited best for the respective monitoring data MD and/or healthcare data HD or, generally, the respective patient case. Optionally, computing unit 12 may also comprise a similar patient search module or SPS module 12d. SPS module 12d may be configured to search, amongst the patients enrolled with the monitoring program, for patients that are somewhat similar to patient P currently investigated (i.e., the patient P for which the predictive disease status PDS has been determined). Moreover, computing unit 12 may comprise a communication module 12e for initiating communication with the patients P at mobile user devices 100 and/or users U (i.e., healthcare personnel) at the remote platform 10. The designation of the distinct modules 12a-12e is to be construed by way of example and not as limitation. Specifically, modules 12a-12e may be virtual modules. Moreover, modules 12a-12e may be integrated to form one single real or virtual unit or can be embodied by computer code segments configured to execute the corresponding method steps running on computing unit 12.
[0134] Interface unit 11 may be configured to allow remote platform 10 to receive information from and/or transmit information to other devices in system 1 via a network. In particular, interface unit 11 may be configured to interface remote platform 10 with mobile user devices 100 and/or data base 300.
[0135] The network may include one or more wired and/or wireless networks. For example, the network may include a cellular network (e.g., a long-term evolution (LTE) network, a code division multiple access (CDMA) network, a 3G network, a 4G network, a 5G network, another type of next generation network, etc.), a public land mobile network (PLMN), a local area network (LAN), a wide area network (WAN), a telephone network (e.g., the Public Switched Telephone Network (PSTN)), a private network, an ad hoc network, an intranet, the Internet, a fiber optic-based network, a cloud computing network, or the like, and/or a combination of these or other types of networks.
[0136] User interface 13 may comprise a physical interface allowing a user U of remote platform 10 to review monitoring data MD and/or predictive disease states PDS of one or more patients P. User interface 13 may be embodied by a computer workstation comprising a display and input devices such as a keyboard, a mouse, a microphone and so forth. In some implementations, user interface 13 may be configured to generate graphical output for monitoring data MD and/or healthcare data HD and/or for an analysis result as provided by computing unit 12. According to some implementations, user interface 13 may be part of interface unit 11.
[0137] Memory unit 14 may comprise one or more real or virtualized storages. Memory unit 14 may be realized as a cloud storage. Alternatively, memory unit 14 may be realized as a local or spread storage within the premises of remote platform 10. Memory unit 14 may comprise one or more memory devices. A plurality of repositories or data bases may be configured in memory unit 14. One may be a model repository configured to store or archive a plurality of prediction models. Further, data base 300 may be part of memory unit 14. According to other implementations, data base 300 may be part of a healthcare information system. The healthcare information system may be a local system within the premises of a healthcare organization. Moreover, the healthcare information system may be cloud based. The healthcare information system may comprise one or more standardized components such as a picture archiving and communication system (PACS), a radiology information system (RIS), a laboratory information system (LIS), a hospital information system (HIS), or an electronic medical record system (EMR). For communication with the healthcare information system in order to access date base 300, interface unit 11 may be configured according to an appropriate standard compatible with the respective healthcare information system, such as the HL7 FHIR standard.
[0138] It is to be noted that the number and arrangement of devices and/or components shown in
[0139]
[0140] At step SP10, monitoring data MD of patient P is received from mobile user device 100. According to some examples, step SP10 may be preceded by optional step SP5 comprising actively requesting monitoring data MD from mobile user device 100 by remote platform 10. For instance, this may be initiated by manually selecting patient P in a worklist by a user U of remote platform 10. According to some implementations, data transmission of monitoring data MD from mobile user device 100 to remote platform 10 may be (automatically) requested in regular intervals (e.g., once or twice a day) or upon the occurrence of certain events, such as a potential medical issue with a further patient that has a similar medical disposition as patient P (see below). Step SP10 (and step SP5) is optional, as predictive disease status may also be determined based on healthcare data HD, only.
[0141] At step SP20, healthcare data HD of patient P is received from data base 300. Like with step SP10, step SP20 may be preceded by an optional step SP15 which comprises actively requesting healthcare data HD from data base 300. Further, this may involve querying data base 300 for healthcare data HD for patient P. Step SP20 (and step SP15) is optional, as predictive disease status may also be determined based on monitoring data MD, only. Step SP20 may further comprise extracting one or more healthcare attributes from healthcare data HD.
[0142] At step SP30, a predictive disease status PDS for patient P is determined based on monitoring data MD and/or healthcare data HD. According to some implementations, predictive disease status PDS may relate to the occurrence of a flare of patient P and comprise a flare probability. The determination of predictive disease state PDS at step SP30 may be rule-based. For instance, a number of values and/or parameters may be extracted from monitoring data MD and/or healthcare data HD. The extracted values and/or parameters may then be compared to predetermined thresholds or disease patterns to infer predictive disease status PDS. According to other implementations, a prediction model may be employed which is configured to provide predictive disease status PDS based on monitoring data MD and/or healthcare data HD.
[0143] According to some examples, remote platform 10 may host a plurality of different prediction models specialized for different patient cohorts, diseases, disease states, treatment options, medications and so forth. In that case, step SP30 may comprise optional step SP31 directed to automatically select one prediction model from the available prediction models for the current use case based on monitoring data MD and/or healthcare data HD.
[0144] Further, step SP30 may comprise optional step SP32 directed to also provide an indication of how much individual parameters comprised in monitoring data MD and/or healthcare data HD affect predictive disease status PDS. At step SP32 parameters and values may be identified which particularly contribute to a certain disease status PDS. This may provide patient P and users U of remote platform 10 with an idea which of the influencing factors comprised in monitoring data MD and/or healthcare data HD are pertinent and where counter measures are particularly promising. Step SP32 may be denoted as “explainable computation” step.
[0145] At step SP40, predictive disease status PDS is evaluated. This may involve comparing predictive disease status PDS to a threshold. For instance, a flare probability may be compared with a threshold. If the flare probability is below the threshold, no actions will be required whereas further actions will be triggered if the flare probability is above the threshold. According to some examples, step SP40 may comprise optional step SP41 directed to determine a clinical stage of predictive disease status PDS. This may be done by mapping predictive disease status PDS to a clinical guideline for the underlying disease. That followed, in further optional step SP42, a set of actions may be determined based on the stage identified at step SP41. This may again be done based on an appropriate clinical guideline and/or a predetermined association linking stages with appropriate actions. Actions could be, for instance, dispatching an alert to patient P or the responsible user U at remote platform 10 or initiating a call between patient P and user U.
[0146] At step SP50, predictive disease status PDS is provided. This may mean communicating predictive disease status PDS to patient P and/or the responsible user U at remote platform 10. Further, this may involve putting those actions into practice which were determined at previous step SP40, for instance. According to some examples, “providing” may also comprise adding predictive disease status PDS to healthcare data HD of patient P. Further, also monitoring data MD may be added to healthcare data HD at step SP50.
[0147]
[0148] The main difference between the method of
[0149] At sub-step SP61, a data descriptor is generated from monitoring data MD and/or healthcare data HD. The data descriptor may comprise the key features of monitoring data MD and/or healthcare data HD in the form of a feature vector. The feature vector may comprise one or more parameters characterizing the patient P and or the patient's health state relative to the ensemble of patients monitored at remote platform 10. In some examples, the step of generating a data descriptor may be carried out using a trained machine-learning algorithm (also denoted as trained function). Preferably, the trained machine-learning algorithm comprises a neural network, most preferably a convolutional neural network. A first group of neural network layers may be applied to extract features from data. The thus extracted features may be fed as input values to a second group of network layers, also known as classifiers, which serve to further assign objects and/or characteristics to at least one of the extracted features. According to other implementations, the machine-learning algorithm may also comprise a Random Forest algorithm.
[0150] At step SP62, the data descriptor of patient P is compared to corresponding data descriptors of further patients. The data descriptors of the further patients may be generated in the same way as the data descriptor for patient P. Specifically, monitoring data MD and/or healthcare data HD of the further patients may be requested for that purpose, if needed. For easy reference, monitoring data MD and/or healthcare data HD of the further patients may also be denoted as secondary monitoring data MD and/or secondary healthcare data HD.
[0151] At step SP63, a similarity metric representing a similarity between the data descriptor of patient P and the data descriptors of at least a part of the further patients is determined. In some examples, the similarity metric may be a distance in vector space between the data descriptor of patient P and the data descriptors of the further patients. For example, the distance may be the Euclidean distance between the two points in vector space that the respective data descriptors represent. In some examples, the similarity metric may be the L1 norm of the respective data descriptors. In some examples, other similarity metrics may be used, such as a cosine similarity between the data descriptors. For each further patient taken into account, the similarity metric may represent how similar the reference case is to the target patient. In other words, the similarity metric expresses (quantifies) a degree of similarity between the target patient and a respective reference patient.
[0152] Next, at step SP64, the degrees of similarity determined in step SP63 may be used to select those further patients having a certain similarity to patient P. According to some examples, all further patients may be selected the degree of similarity to patient P is greater than a predetermined threshold.
[0153] Due to the similarity between patient P and the selected similar patients, there is a certain likelihood that predictive disease status PDS may also be pertinent for the determined similar patients. In other words, if predictive disease status PDS indicates a problem for patient P there likely will be similar problems for the similar patients. Therefore, at optional step SP70, predictive disease status PDS may be provided to the similar patients and/or the responsible users U at remote platform 10 associated to the similar patients. Apart from that, step SP70 corresponds to step SP50 as explained previously. In addition to that or as an alternative, the knowledge about the similar patients may be used in optional steps SP80 to initiate a check of the health status of the similar patients. To this end, the steps SP5 to SP50 may be carried out for each of the similar patients.
[0154]
[0155] At step SU10, mobile user device 100 collects monitoring data MD. This may comprise optional sub-steps SU11, SU12, SU13.
[0156] Step SU11 is directed to collect monitoring data MD from medical information devices 200. This may involve prompting medical information devices 200 to measure one or more physiological measurement values of patient P and transmit these to mobile user device 100 essentially as explained before.
[0157] Step SU12 is directed to gather monitoring data MD from inputs of patient P into mobile user device 100. For instance, patient P may be provided with an electronic questionnaire in which she or he is supposed to indicate the overall wellbeing, the number of swollen joints, the diet, the medication taken and so forth. Inputs may, for instance, be made by activating checkboxes, clicking on symbols, or filling input fields in an appropriate graphical user interface running at mobile user device 100. Further, inputs may be made by free-text messages or voice commands which may be further processed by computer linguistic algorithms to infer their intended meaning.
[0158] Step SU13 is directed to collect monitoring information MD in the form of local environmental information relevant for the patient's health state essentially as described before. In particular, SU13 is directed to collect monitoring data MD from external data sources 400.
[0159] At step SU20, mobile user device 100 transmits monitoring data MD to remote platform 10 using the data transmitter as herein described.
[0160] At step SU30, mobile user device 100 receives predictive disease status PDS as determined at remote platform 10 for patient P. The message from remote platform 10 forwarding predictive disease status PDS may also comprise instructions for mobile user device 100 and/or patient P which actions are to be taken next. For instance, the message from remote platform 10 may comprise an instruction to display predictive disease status PDS and/or a synopsis of predictive disease status PDS to patient P. Further, the message may comprise instructions to provide patient P with recommendations or instructions for further actions.
[0161] At step SU40, predictive disease status PDS is provided to patient P. This may involve bringing predictive disease status PDS to the attention of patient P, optionally, together with any recommendation and/or instruction as received from remote platform 10.
[0162]
[0163]
[0164]
[0165] At step SP100, a prediction model is provided to mobile user device 100 by remote platform 10. That is, the prediction model may be downloaded to mobile user device 100. The prediction model may be fit for local deployment at mobile user device 100 in the sense that it is capable of locally determining a predicative disease status PDS of patient P based on monitoring data MD.
[0166] At step SU100, the prediction model is received at mobile user device 100. That followed, at step SU110, the received prediction model may be applied to monitoring data MD in order to locally determine a predictive disease status PDS of patient P. Monitoring data MD may be collected essentially as described in connection with step SU10. To locally determine predictive disease status PDS, computing unit 102 may execute or apply the downloaded prediction model.
[0167] At step SU120, the locally determined predictive disease status PDS is provided—either to patient P at mobile user device 100 or to remote platform 10. The latter case may involve data transmission essentially as described before. Together with the locally determined predictive disease status PDS, a log file may be provided indicative of how well the prediction model performed at mobile user device 100. Step SU120 may comprise an optional sub-step of evaluating the locally determined disease status PDS at mobile user device 100 which may be executed essentially as described in connection with step SP40. Dependent on the evaluation it may be decided if and how locally determined predictive disease status PDS is brought to the attention of patient P.
[0168] At step SP110, locally determined disease status PDS is received at remote platform 10. That followed, at step SP120, locally determined disease status is evaluated. In essence, step SP120 may be executed as explained previously in connection with step SP40. In addition to that, the optionally transmitted log file may be read in order to determine how accurate the determination result of the locally operating prediction model is.
[0169] Dependent on the evaluation at step SP120, locally determined predictive disease status PDS may either be provided to the responsible user U at remote platform 10 via step SP50 (
[0170] Wherever meaningful, individual embodiments or their individual aspects and features can be combined or exchanged with one another without limiting or widening the scope of the present invention. Advantages which are described with respect to one embodiment of the present invention are, wherever applicable, also advantageous to other embodiments of the present invention.
[0171] The following points are also part of the disclosure:
[0172] 1. Computer-implemented method for predicting a disease status (PDS) of an inflammatory disease for a patient (p), in a system (1) comprising a remote platform (10) and at least one mobile user device (100), the mobile user device (100) being associated to the patient (P) and being in data communication with the platform (10), [0173] the method comprising the following steps: [0174] receiving (SP10), at the remote platform (10), monitoring data (MD) indicative of the health state of the patient (P) from the mobile user device (100) associated to the patient (P), [0175] determining (SP30), at the remote platform (10), a predictive disease status (PDS) of the inflammatory disease of the patient (P) based on the received monitoring data (MD); [0176] evaluating (SP40), at the remote platform (10), the determined predictive disease status (PDS); and [0177] providing (SP50) the predictive disease status (PDS) to a user (U) at the remote platform (10) and/or to the mobile user device (100) based on the step of evaluating (SP40) the determined predictive disease status (PDS).
[0178] 2. Method according to 1, wherein the predictive disease status (PDS) relates to at least one of: [0179] a predictive disease activity of the inflammatory disease of the patient (P), in particular, to an occurrence of a flare and/or exacerbation of the inflammatory disease of the patient (P), and/or [0180] a predictive treatment response of the patient (P) with respect to a treatment of the inflammatory disease of the patient (P), and/or [0181] a predictive occurrence of an adverse effect related to a treatment of the inflammatory disease of the patient (P).
[0182] 3. Method according to any one of the preceding points, wherein: [0183] the remote platform (10) is in data communication with a local or cloud-based data base (300) for storing electronic medical records of patients, [0184] the method further comprises a step of retrieving (SP20), by the remote platform (10), healthcare data (HD) associated to the patient (P) from the at least one data base (300); and [0185] the step of determining (SP30) the predictive disease status is additionally based on the healthcare data (HD).
[0186] 4. Method according to 3, further comprising: [0187] adding the received monitoring data (MD) to the retrieved healthcare data (HD) of the patient and/or storing the received monitoring data (MD) of the patient (P) in the data base (300) in association with the healthcare data (HD) of the patient (P).
[0188] 6. Method according to any one of the preceding points, wherein: [0189] the mobile user device (100) is configured to receive an input of the patient (P) indicative of a health state information of the patient (P) as perceived by the patient (P), the health state information comprising one or more answers of the patient (P) to a questionnaire; and [0190] the monitoring data (MD) comprises the health state information.
[0191] 7. Method according to 6, further comprising: [0192] configuring the questionnaire based on the healthcare data (HD), the monitoring data (MD) and/or the predictive disease status (PDS); and [0193] forwarding the questionnaire to the mobile user device (100) for providing the questionnaire to the patient (P).
[0194] 8. Method according to 6, further comprising: [0195] selecting the questionnaire from a plurality of preconfigured questionnaires based on the healthcare data (HD), the monitoring data (MD) and/or the predictive disease status (PDS); and [0196] forwarding the selected questionnaire to the mobile user device (100) for providing the questionnaire to the patient (P); [0197] the preconfigured questionnaires preferably comprising at least one of a Health Assessment Questionnaire (HAQ), a Visual Analog Scale (VAS) questionnaire, and/or a Rheumatoid Arthritis Impact of Disease (RAID) questionnaire
[0198] 9. Method according to any one of the preceding points, further comprising the steps: [0199] establishing a bi-directional communication channel between the remote platform (10) and the mobile user device (100) based on the step of evaluating (SP40) the determined predictive disease status (PDS), the communication channel enabling a direct communication between patient and platform user.
[0200] 9. Method according to any one of the preceding points, wherein: [0201] the remote platform (10) is configured to host a plurality of different prediction models each configured and/or trained to determine a predictive disease status (PDS) of an inflammatory disease of a patient (P) based on input data; and [0202] the method further comprises a step of selecting (SP31) one of the hosted prediction models depending on at least the received monitoring data (MD); and [0203] the step of determining (SP30) the predictive disease status (PDS) comprises applying the selected prediction model to at least the received monitoring data (MD).
[0204] 10. Method according to any of the preceding points, further comprising the steps: [0205] deriving (SP32) values of how much individual parameters comprised in the monitoring data (MD) affect the predictive disease status (PDS); and [0206] providing (SP50) at least one of the derived values and/or the corresponding parameters to a user (U) at the remote platform (10) and/or to the mobile user device (100) in conjunction with the determined predictive disease status (PDS).
[0207] 11. Method according to any of the preceding points, wherein: [0208] the remote platform (10) is in wireless data communication with a plurality of secondary mobile user devices (100) each secondary mobile user device (100) being respectively associated to a further patient different from the patient (P); and [0209] the method further comprises the steps: [0210] searching (SP60) the further patients for similar patients, the similar patients having a degree of similarity to the patient (P) for which the predictive disease status has been determined (SP30) and evaluated (SP40); and [0211] providing (SP70) the predictive disease status (PDS) to a user (U) at the remote platform (10) in connection with the similar patients and/or to the mobile user device (100) of the similar patients; and/or [0212] respectively determining (SP30) a secondary predictive disease status for each of the similar patients and comparing (SP80) each of the secondary predictive disease states with the predictive disease status (PDS).
[0213] 12. Method according to 11, wherein: [0214] the method further comprises at least one of the following two steps: [0215] receiving (SP10), at the remote platform (10), secondary monitoring data (MD) indicative of the health states of the further patients from the secondary mobile user devices (100), and/or [0216] retrieving (SP20) healthcare data (HD) associated to the patient (P) and secondary healthcare data (HD) associated to the further patients from a data base (300) for storing electronic medical records of patients, wherein the remote platform (10) is in data communication with the data base (300); and [0217] the step of searching (SP60) is based on a comparison of the secondary healthcare data (HD) with the healthcare data (HD) and/or a comparison of the secondary monitoring data (MD) with the monitoring data (MD).
[0218] 13. Computer-implemented method for predicting a disease status (PDS) for an inflammatory disease of a patient (P), in a system (1) comprising a remote platform (10) and at least one mobile user device (100), the mobile user device (100) being associated to the patient (P) and being in wireless data communication with the remote platform (10), [0219] the method comprising the following steps: [0220] collecting (SU10), at the mobile user device (100), monitoring data (MD) indicative of the health state of the patient (P), [0221] transmitting (SU20) the monitoring data (MD) to the remote platform (10), in order to determine, at the remote platform (10) predictive disease status (PDS) of the inflammatory disease of the patient (P) based on the transmitted monitoring data (MD); [0222] receiving (SU30), at the mobile user device (100), from the remote platform (10), information indicative of the determined predictive disease status (PDS); and [0223] providing (SU40), to the patient (P), an output indicative of the received information.
[0224] 14. Method according to 13, further with the steps: [0225] receiving (SU100), at the mobile user device (100), a prediction model configured and/or trained to locally determine, at the mobile user device (100), a predictive disease status (PDS) of the inflammatory disease of the patient (P) based on the monitoring data (MD); [0226] locally determine (SU110), at the mobile user device (100) a predictive disease status (PDS) for the patient (P) by applying the prediction model to the monitoring data (MD); and [0227] providing (SU120) an information indicative of the locally determined predictive disease status (PDS) to the patient (P) at the mobile user device (100) and/or to the remote platform (10).
[0228] 15. Method according to 14, further comprising: [0229] further training one or more prediction models at the remote platform (10) and/or the mobile user device (100) using the information indicative of the locally determined predictive disease status (PDS) and, optionally, the monitoring data (MD) and/or the healthcare data (HD).
[0230] It will be understood that, although the terms first, second, etc. may be used herein to describe various elements, components, regions, layers, and/or sections, these elements, components, regions, layers, and/or sections, should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and, similarly, a second element could be termed a first element, without departing from the scope of example embodiments. As used herein, the term “and/or,” includes any and all combinations of one or more of the associated listed items. The phrase “at least one of” has the same meaning as “and/or”.
[0231] Spatially relative terms, such as “beneath,” “below,” “lower,” “under,” “above,” “upper,” and the like, may be used herein for ease of description to describe one element or feature's relationship to another element(s) or feature(s) as illustrated in the figures. It will be understood that the spatially relative terms are intended to encompass different orientations of the device in use or operation in addition to the orientation depicted in the figures. For example, if the device in the figures is turned over, elements described as “below,” “beneath,” or “under,” other elements or features would then be oriented “above” the other elements or features. Thus, the example terms “below” and “under” may encompass both an orientation of above and below. The device may be otherwise oriented (rotated 90 degrees or at other orientations) and the spatially relative descriptors used herein interpreted accordingly. In addition, when an element is referred to as being “between” two elements, the element may be the only element between the two elements, or one or more other intervening elements may be present.
[0232] Spatial and functional relationships between elements (for example, between modules) are described using various terms, including “on,” “connected,” “engaged,” “interfaced,” and “coupled.” Unless explicitly described as being “direct,” when a relationship between first and second elements is described in the disclosure, that relationship encompasses a direct relationship where no other intervening elements are present between the first and second elements, and also an indirect relationship where one or more intervening elements are present (either spatially or functionally) between the first and second elements. In contrast, when an element is referred to as being “directly” on, connected, engaged, interfaced, or coupled to another element, there are no intervening elements present. Other words used to describe the relationship between elements should be interpreted in a like fashion (e.g., “between,” versus “directly between,” “adjacent,” versus “directly adjacent,” etc.).
[0233] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of example embodiments. As used herein, the singular forms “a,” “an,” and “the,” are intended to include the plural forms as well, unless the context clearly indicates otherwise. As used herein, the terms “and/or” and “at least one of” include any and all combinations of one or more of the associated listed items. It will be further understood that the terms “comprises,” “comprising,” “includes,” and/or “including,” when used herein, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items. Expressions such as “at least one of,” when preceding a list of elements, modify the entire list of elements and do not modify the individual elements of the list. Also, the term “example” is intended to refer to an example or illustration.
[0234] It should also be noted that in some alternative implementations, the functions/acts noted may occur out of the order noted in the figures. For example, two figures shown in succession may in fact be executed substantially concurrently or may sometimes be executed in the reverse order, depending upon the functionality/acts involved.
[0235] Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which example embodiments belong. It will be further understood that terms, e.g., those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
[0236] It is noted that some example embodiments may be described with reference to acts and symbolic representations of operations (e.g., in the form of flow charts, flow diagrams, data flow diagrams, structure diagrams, block diagrams, etc.) that may be implemented in conjunction with units and/or devices discussed above. Although discussed in a particularly manner, a function or operation specified in a specific block may be performed differently from the flow specified in a flowchart, flow diagram, etc. For example, functions or operations illustrated as being performed serially in two consecutive blocks may actually be performed simultaneously, or in some cases be performed in reverse order. Although the flowcharts describe the operations as sequential processes, many of the operations may be performed in parallel, concurrently or simultaneously. In addition, the order of operations may be re-arranged. The processes may be terminated when their operations are completed, but may also have additional steps not included in the figure. The processes may correspond to methods, functions, procedures, subroutines, subprograms, etc.
[0237] Specific structural and functional details disclosed herein are merely representative for purposes of describing example embodiments. The present invention may, however, be embodied in many alternate forms and should not be construed as limited to only the embodiments set forth herein.
[0238] In addition, or alternative, to that discussed above, units and/or devices according to one or more example embodiments may be implemented using hardware, software, and/or a combination thereof. For example, hardware devices may be implemented using processing circuity such as, but not limited to, a processor, Central Processing Unit (CPU), a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a System-on-Chip (SoC), a programmable logic unit, a microprocessor, or any other device capable of responding to and executing instructions in a defined manner. Portions of the example embodiments and corresponding detailed description may be presented in terms of software, or algorithms and symbolic representations of operation on data bits within a computer memory. These descriptions and representations are the ones by which those of ordinary skill in the art effectively convey the substance of their work to others of ordinary skill in the art. An algorithm, as the term is used here, and as it is used generally, is conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of optical, electrical, or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
[0239] It should be borne in mind that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise, or as is apparent from the discussion, terms such as “processing” or “computing” or “calculating” or “determining” of “displaying” or the like, refer to the action and processes of a computer system, or similar electronic computing device/hardware, that manipulates and transforms data represented as physical, electronic quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
[0240] In this application, including the definitions below, the term ‘module’ or the term ‘controller’ may be replaced with the term ‘circuit.’ The term ‘module’ may refer to, be part of, or include processor hardware (shared, dedicated, or group) that executes code and memory hardware (shared, dedicated, or group) that stores code executed by the processor hardware.
[0241] The module may include one or more interface circuits. In some examples, the interface circuits may include wired or wireless interfaces that are connected to a local area network (LAN), the Internet, a wide area network (WAN), or combinations thereof. The functionality of any given module of the present disclosure may be distributed among multiple modules that are connected via interface circuits. For example, multiple modules may allow load balancing. In a further example, a server (also known as remote, or cloud) module may accomplish some functionality on behalf of a client module.
[0242] Software may include a computer program, program code, instructions, or some combination thereof, for independently or collectively instructing or configuring a hardware device to operate as desired. The computer program and/or program code may include program or computer-readable instructions, software components, software modules, data files, data structures, and/or the like, capable of being implemented by one or more hardware devices, such as one or more of the hardware devices mentioned above. Examples of program code include both machine code produced by a compiler and higher level program code that is executed using an interpreter.
[0243] For example, when a hardware device is a computer processing device (e.g., a processor, Central Processing Unit (CPU), a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a microprocessor, etc.), the computer processing device may be configured to carry out program code by performing arithmetical, logical, and input/output operations, according to the program code. Once the program code is loaded into a computer processing device, the computer processing device may be programmed to perform the program code, thereby transforming the computer processing device into a special purpose computer processing device. In a more specific example, when the program code is loaded into a processor, the processor becomes programmed to perform the program code and operations corresponding thereto, thereby transforming the processor into a special purpose processor.
[0244] Software and/or data may be embodied permanently or temporarily in any type of machine, component, physical or virtual equipment, or computer storage medium or device, capable of providing instructions or data to, or being interpreted by, a hardware device. The software also may be distributed over network coupled computer systems so that the software is stored and executed in a distributed fashion. In particular, for example, software and data may be stored by one or more computer readable recording mediums, including the tangible or non-transitory computer-readable storage media discussed herein.
[0245] Even further, any of the disclosed methods may be embodied in the form of a program or software. The program or software may be stored on a non-transitory computer readable medium and is adapted to perform any one of the aforementioned methods when run on a computer device (a device including a processor). Thus, the non-transitory, tangible computer readable medium, is adapted to store information and is adapted to interact with a data processing facility or computer device to execute the program of any of the above mentioned embodiments and/or to perform the method of any of the above mentioned embodiments.
[0246] Example embodiments may be described with reference to acts and symbolic representations of operations (e.g., in the form of flow charts, flow diagrams, data flow diagrams, structure diagrams, block diagrams, etc.) that may be implemented in conjunction with units and/or devices discussed in more detail below. Although discussed in a particularly manner, a function or operation specified in a specific block may be performed differently from the flow specified in a flowchart, flow diagram, etc. For example, functions or operations illustrated as being performed serially in two consecutive blocks may actually be performed simultaneously, or in some cases be performed in reverse order.
[0247] According to one or more example embodiments, computer processing devices may be described as including various functional units that perform various operations and/or functions to increase the clarity of the description. However, computer processing devices are not intended to be limited to these functional units. For example, in one or more example embodiments, the various operations and/or functions of the functional units may be performed by other ones of the functional units. Further, the computer processing devices may perform the operations and/or functions of the various functional units without sub-dividing the operations and/or functions of the computer processing units into these various functional units.
[0248] Units and/or devices according to one or more example embodiments may also include one or more storage devices. The one or more storage devices may be tangible or non-transitory computer-readable storage media, such as random access memory (RAM), read only memory (ROM), a permanent mass storage device (such as a disk drive), solid state (e.g., NAND flash) device, and/or any other like data storage mechanism capable of storing and recording data. The one or more storage devices may be configured to store computer programs, program code, instructions, or some combination thereof, for one or more operating systems and/or for implementing the example embodiments described herein. The computer programs, program code, instructions, or some combination thereof, may also be loaded from a separate computer readable storage medium into the one or more storage devices and/or one or more computer processing devices using a drive mechanism. Such separate computer readable storage medium may include a Universal Serial Bus (USB) flash drive, a memory stick, a Blu-ray/DVD/CD-ROM drive, a memory card, and/or other like computer readable storage media. The computer programs, program code, instructions, or some combination thereof, may be loaded into the one or more storage devices and/or the one or more computer processing devices from a remote data storage device via a network interface, rather than via a local computer readable storage medium. Additionally, the computer programs, program code, instructions, or some combination thereof, may be loaded into the one or more storage devices and/or the one or more processors from a remote computing system that is configured to transfer and/or distribute the computer programs, program code, instructions, or some combination thereof, over a network. The remote computing system may transfer and/or distribute the computer programs, program code, instructions, or some combination thereof, via a wired interface, an air interface, and/or any other like medium.
[0249] The one or more hardware devices, the one or more storage devices, and/or the computer programs, program code, instructions, or some combination thereof, may be specially designed and constructed for the purposes of the example embodiments, or they may be known devices that are altered and/or modified for the purposes of example embodiments.
[0250] A hardware device, such as a computer processing device, may run an operating system (OS) and one or more software applications that run on the OS. The computer processing device also may access, store, manipulate, process, and create data in response to execution of the software. For simplicity, one or more example embodiments may be exemplified as a computer processing device or processor; however, one skilled in the art will appreciate that a hardware device may include multiple processing elements or processors and multiple types of processing elements or processors. For example, a hardware device may include multiple processors or a processor and a controller. In addition, other processing configurations are possible, such as parallel processors.
[0251] The computer programs include processor-executable instructions that are stored on at least one non-transitory computer-readable medium (memory). The computer programs may also include or rely on stored data. The computer programs may encompass a basic input/output system (BIOS) that interacts with hardware of the special purpose computer, device drivers that interact with particular devices of the special purpose computer, one or more operating systems, user applications, background services, background applications, etc. As such, the one or more processors may be configured to execute the processor executable instructions.
[0252] The computer programs may include: (i) descriptive text to be parsed, such as HTML (hypertext markup language) or XML (extensible markup language), (ii) assembly code, (iii) object code generated from source code by a compiler, (iv) source code for execution by an interpreter, (v) source code for compilation and execution by a just-in-time compiler, etc. As examples only, source code may be written using syntax from languages including C, C++, C#, Objective-C, Haskell, Go, SQL, R, Lisp, Java®, Fortran, Perl, Pascal, Curl, OCaml, Javascript®, HTML5, Ada, ASP (active server pages), PHP, Scala, Eiffel, Smalltalk, Erlang, Ruby, Flash®, Visual Basic®, Lua, and Python®.
[0253] Further, at least one example embodiment relates to the non-transitory computer-readable storage medium including electronically readable control information (processor executable instructions) stored thereon, configured in such that when the storage medium is used in a controller of a device, at least one embodiment of the method may be carried out.
[0254] The computer readable medium or storage medium may be a built-in medium installed inside a computer device main body or a removable medium arranged so that it can be separated from the computer device main body. The term computer-readable medium, as used herein, does not encompass transitory electrical or electromagnetic signals propagating through a medium (such as on a carrier wave); the term computer-readable medium is therefore considered tangible and non-transitory. Non-limiting examples of the non-transitory computer-readable medium include, but are not limited to, rewriteable non-volatile memory devices (including, for example flash memory devices, erasable programmable read-only memory devices, or a mask read-only memory devices); volatile memory devices (including, for example static random access memory devices or a dynamic random access memory devices); magnetic storage media (including, for example an analog or digital magnetic tape or a hard disk drive); and optical storage media (including, for example a CD, a DVD, or a Blu-ray Disc). Examples of the media with a built-in rewriteable non-volatile memory, include but are not limited to memory cards; and media with a built-in ROM, including but not limited to ROM cassettes; etc. Furthermore, various information regarding stored images, for example, property information, may be stored in any other form, or it may be provided in other ways.
[0255] The term code, as used above, may include software, firmware, and/or microcode, and may refer to programs, routines, functions, classes, data structures, and/or objects. Shared processor hardware encompasses a single microprocessor that executes some or all code from multiple modules. Group processor hardware encompasses a microprocessor that, in combination with additional microprocessors, executes some or all code from one or more modules. References to multiple microprocessors encompass multiple microprocessors on discrete dies, multiple microprocessors on a single die, multiple cores of a single microprocessor, multiple threads of a single microprocessor, or a combination of the above.
[0256] Shared memory hardware encompasses a single memory device that stores some or all code from multiple modules. Group memory hardware encompasses a memory device that, in combination with other memory devices, stores some or all code from one or more modules.
[0257] The term memory hardware is a subset of the term computer-readable medium. The term computer-readable medium, as used herein, does not encompass transitory electrical or electromagnetic signals propagating through a medium (such as on a carrier wave); the term computer-readable medium is therefore considered tangible and non-transitory. Non-limiting examples of the non-transitory computer-readable medium include, but are not limited to, rewriteable non-volatile memory devices (including, for example flash memory devices, erasable programmable read-only memory devices, or a mask read-only memory devices); volatile memory devices (including, for example static random access memory devices or a dynamic random access memory devices); magnetic storage media (including, for example an analog or digital magnetic tape or a hard disk drive); and optical storage media (including, for example a CD, a DVD, or a Blu-ray Disc). Examples of the media with a built-in rewriteable non-volatile memory, include but are not limited to memory cards; and media with a built-in ROM, including but not limited to ROM cassettes; etc. Furthermore, various information regarding stored images, for example, property information, may be stored in any other form, or it may be provided in other ways.
[0258] The apparatuses and methods described in this application may be partially or fully implemented by a special purpose computer created by configuring a general purpose computer to execute one or more particular functions embodied in computer programs. The functional blocks and flowchart elements described above serve as software specifications, which can be translated into the computer programs by the routine work of a skilled technician or programmer.
[0259] Although described with reference to specific examples and drawings, modifications, additions and substitutions of example embodiments may be variously made according to the description by those of ordinary skill in the art. For example, the described techniques may be performed in an order different with that of the methods described, and/or components such as the described system, architecture, devices, circuit, and the like, may be connected or combined to be different from the above-described methods, or results may be appropriately achieved by other components or equivalents.
[0260] Although the present invention has been shown and described with respect to certain example embodiments, equivalents and modifications will occur to others skilled in the art upon the reading and understanding of the specification. The present invention includes all such equivalents and modifications and is limited only by the scope of the appended claims.