The present invention generally relates to the field of preventative medicine and medical analysis, monitoring, and/or diagnosis. For example, systems and methods are provided herein for performing automated medical diagnoses and/or detecting various medical conditions and/or events based on physiological data and related medical information.
As the world becomes more connected and access to the Internet continues to grow, individuals from locations across the globe have access to information and services through the use of connected devices such as mobile phones, tablets, laptops, smart devices, wearable devices and the like. The Internet and connected devices has provided a platform for web-based services such as telemedicine—health related services offered remotely via a connected device (e.g., over the Internet or cellular connection). Telemedicine is a convenient alternative for those seeking health services outside of the traditional doctor's office or hospital setting. In the age of Covid-19, telemedicine has become commonplace as such services permit individuals to speak with healthcare providers without leaving their home.
Telemedicine and similar services are limited in several respects. For example, such telemedicine visits are often accompanied by the same fees as traditional doctor's office visits. Accordingly, if traditional medical care is cost prohibitive to an individual, it is likely that telemedicine will be equally cost prohibitive. Further, while a camera may permit a doctor or other healthcare provider to see the patient, telemedicine visits are devoid of any additional input for the doctor to consider such as tactile input, high resolution and/or magnified viewing, and/or sensor input (e.g., thermometers, blood pressure, oxygen saturation, etc.). For example, auscultation and/or orifice examination and other clinical examination may be difficult or impossible via telemedicine. Telemedicine also can be a time consuming and may require a long wait. Similar to scheduling in-person doctor's visits, telemedicine appointments depend on the healthcare provider's schedule.
In addition to telemedicine, connected devices such as wearable devices, also known as “wearables” may provide health related information. For example, certain smart watches may determine a user's heart rate using various sensors (e.g., using light emitting diodes (LEDs) and photoplethysmography). However, such devices may be limited with respect to input (e.g., may only consider one type of sensor data) and may consider such data isolated from other relevant information about a user such as medical history and/or family history. Further such devices often require a healthcare provider's input to determine a diagnosis or recommend treatment. Also, while medical records and knowledge are well-documented and voluminous, it is difficult to leverage this information to generate meaningful inferences from such information.
Accordingly, there is a need for improved methods and systems for systematically collecting various inputs relevant to an individual's health and further for analyzing the inputs and generating one or more medical diagnoses.
Provided herein are systems and methods for automated medical monitoring and/or diagnosis. The systems and methods may include one or more user devices and/or sensor devices for determining physiological data of a user which may be processed to determine the presence of a medical condition, event, and/or emergency corresponding to the patient. The user devices and/or sensor devices may alert the user of a detected medical condition, event, and/or emergency. Additionally, the emergency services and/or an emergency contact may be alerted and informed of the medical condition, event and/or emergency. The methods and systems may further include encrypting the physiological data and or information regarding a medical condition, event and/or emergency (e.g., using block chain technology). The methods and systems may also process payments for related services.
A method for determining a medical diagnosis may, in one example, include determining a user profile associated with a user device, a first device, and a second device, requesting first data from the first device, receiving the first data from first device, the first data indicative of first visual data corresponding to a user, requesting second data from the second device, receiving the second data from the second device, the second data indicative of audio data corresponding to the user, determining a first medical diagnosis corresponding to the user based on the first data and the second data using at least one first algorithm trained to determine at least one medical diagnosis, causing the user device to present a message indicating the determined medical diagnosis, and causing one or more of the first device and second device to present instructions corresponding to a user action based on the medical diagnosis.
The method may further include determining that there is a medical emergency corresponding to the medical diagnosis. Determining that there is a medical emergency may include processing the first data and the second data using at least one second algorithm trained to detect a medical emergency. The method may further include sending a second message regarding the medical emergency to one or more of emergency services. The message sent to one or more emergency services may include a location corresponding to the user. The method may further include determining an emergency contact based on the user profile and/or sending a third message regarding the first medical diagnosis to the emergency contact. The method may further include encrypting the third message using blockchain prior to sending the third message to the emergency contact. The method may further include requesting third data from a third device associated with the user profile, and receiving the third data from the third device, the third data indicative of physiological data corresponding to the user. The first medical diagnosis may further be based on the third data.
A computing device for guided medical examination, in one example, may include a memory configured to store computer-executable instructions, and at least one computer processor configured to access the memory and execute the computer-executable instructions to establish a connection with a user device and a sensor device, the user device including a display and a first sensor and the sensor device including a second sensor, cause the user device to present a request to generate visual data using the first sensor, receive first visual data from the first device, the first visual data generated using the first sensor and corresponding to a user, determine a second data type based on the first visual data, determine an action corresponding to the second data type, cause the user device to present instructions for the user to perform the action, send, after causing the user device to present instructions for the user to perform an action, a request for sensor data to the sensor device, the sensor data associated with the second data type, receive first sensor data from the sensor device, the first sensor data generated using the second sensor and corresponding to the action, and determine a medical diagnosis based on the first visual data and first sensor data using one or more algorithms trained to determine medical diagnoses.
The at least one computer processor may further access the memory and execute the computer-executable instructions to send a message to one or more of the user device or the sensor device indicating the medical diagnosis. The first sensor may be a camera and the first visual data may correspond to at least a portion of a face of the user. The second sensor may be a heart rate sensor and the first sensor data may be heart rate data corresponding to the user. The at least one computer processor may be further configured to access the memory and execute the computer-executable instructions to determine a user profile associated with at least the user device. The at least one computer processor may be further configured to access the memory and execute the computer-executable instructions to determine medical history data associated with the user profile, wherein the medical diagnosis is further based on the medical history data.
The computing device, may in one example, include establishing a connection with a user device and a sensor device, the user device including a display and a first sensor and the sensor device including a second sensor, causing the user device to present a request to generate visual data using the first sensor, receiving first visual data from the first device, the first visual data generated using the first sensor and corresponding to a user, determining a second data type based on the first visual data, determining an action corresponding to the second data type, causing the user device to present instructions for the user to perform an action, sending, after causing the user device to present instructions for the user to perform an action, a request for sensor data to the sensor device, the sensor data associated with the second data type, receiving first sensor data from the sensor device, the first sensor data generated using the second sensor and corresponding to the action, and determining a medical diagnosis based on the first visual data and first sensor data using one or more algorithms trained to determine medical diagnoses.
The computing device may further send a message to one or more of the user device or the sensor device indicating the medical diagnosis. The first sensor may be a camera and the first visual data may correspond to at least a portion of a face of the user. The second sensor is a heart rate sensor and the first sensor data is heart rate data corresponding to the user. The computing device may further determine a user profile associated with at least the user device. The computing device may further determine medical history data associated with the user profile, wherein the medical diagnosis is further based on the medical history data.
A computing device, in one example, may cause a user device to present a request for symptom information, receive first symptom information from the user device, the first symptom information indicative of symptoms experienced by the user, determine a first data type associated with a first device and a second data type associated with a second device based on the first symptom information, the first data type different from the second data type, request first data from the first device, the first data corresponding to the first data type, receive the first data generated by the first device, requesting second data from the second device, the second data corresponding to the second data type, receive the second data generated by the second device, and determine a first medical diagnosis corresponding to the user based on the first data and the second data using at least one first algorithm trained to determine at least one medical diagnosis.
The first data and the second data may be encrypted by the user device. The method may further include decrypting the first data and second data. The computing device may further cause the user device to present a display indicating the first medical diagnosis. The first symptom information may include audio data generated by the user device. The computing device may further transcribe the audio data. The computing device may further transcribe the audio data of the first symptom information. The first data and the second data may be received from the user device. The first medical diagnosis may also be based on the first symptom information. The first data and the second data may be selected from the group consisting of physiological data, blood data, image data, tissue data, body secretion data, breath analyzer data and motion data. The computing device may further determine, after receiving the first symptom information, to request second symptom information, causing the user device to present a request for the second symptom information, and receiving the second symptom information from the user device. The computing device may further include requesting payment information from the user device, and receiving payment information from the user device. The payment information may be secured using at least one blockchain algorithm.
The computing device of claim 20, wherein the at least one computer processor is further configured to execute the computer-executable instructions to perform sending payment information to a payment system and the payment information is associated with a cryptocurrency. The at least one computer processor may further generate a three-dimensional (3D) virtual avatar within a virtual reality environment to communicate with the user. The virtual reality environment may be the metaverse.
A method for determining a medical diagnosis may, in one example, include receiving first data from a first device associated with a user account, the first data indicative of first physiological data corresponding to a user, processing the first data using at least one first algorithm trained to determine at least one medical condition, the medical condition based on at least the first data, determining a first medical condition based on the first data using the at least one first algorithm, determining a medication corresponding to the medical condition, causing the medication to be sent to a medical facility associated with the user account and/or to a location of the user, creating an appointment at the medical facility corresponding to the user and the medication, and sending medical data indicative of one or more of the user account, the medical condition and the medication to a remote computing device. The medication may be sent to the medical facility or directly to the location of the user using a drone. The medical data may be sent to the remote computing device to perform a health service declaration. The remote computing device may maintain a database of administered pharmaceutical medication.
A method for determining a medical diagnosis of a first user in virtual reality may, in one example, include generating a healthcare environment on a virtual reality platform running on at least one server, presenting a healthcare virtual avatar in the healthcare environment; determining a user virtual avatar in the healthcare environment, the user virtual avatar corresponding to a user profile associated with the first user and a first device; causing the healthcare virtual avatar to present a request for symptom data from the user virtual avatar, receiving symptom data generated on the first device and associated with the user virtual avatar, the symptom data indicative of physiological data corresponding to the first user, and determining a first medical determination corresponding to the first user using at least one algorithm trained to determine at least one medical determination, the medical determination based on at least the symptom data.
The method may further include determining, based on the medical determination, a medical assessment corresponding to second data, sending instructions to a secondary medical system to perform the medical assessment, the secondary medical system adapted to perform the medical assessment, receiving a medical output from the secondary medical system, the medical output corresponding to the first user and based on the medical assessment, and determining a medical diagnosis corresponding to the first user using at least one second algorithm trained to determine at least one medical diagnosis.
The first device may be a virtual reality or augmented reality headset. The first device may include a brain-computer interface. The symptom data may include electrical signals from a brain of the first user. The method may further include sending instructions to present a hologram of a second user. The symptom data may include at least one of: audio data indicative of speech, physiological data, body examination data, a body structure evaluation, body secretion data, data indicative of biological or cell structure, and/or intelligent marker data indicative of a cancerous cell, bacteria, or a virus. The method may further include sending instructions to present a first symptom of the first user through the user virtual avatar. The method may further include sending instructions to present the healthcare environment through a second device associated with a second user, wherein the healthcare virtual avatar is associated with the second user. The first user may be a medical patient and the second user is a medical professional. The method may further include receiving second data from the first device or the second device presenting the second data within the healthcare environment, receiving, from the second user, an indication of a second medical determination corresponding to the first user, and presenting the indication of the second medical determination within the healthcare environment.
The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the following drawings and the detailed description.
The foregoing and other features of the present invention will become apparent from the following description and appended claims, taken in conjunction with the accompanying drawings. Understanding that these drawings depict only several embodiments in accordance with the disclosure and are, therefore, not to be considered limiting of its scope, the disclosure will be described with additional specificity and detail through use of the accompanying drawings.
The present invention is directed to various medical diagnostic systems for determining one or more medical diagnosis, condition and/or event based on physiological input provided from one or more device. For example a user may use one or more connected devices that may be connected to one or more other computing devices. A connected device may be a mobile phone, smart device, smart sensor, wearable device, tablet, smart television, laptop or desktop computer, or the like. The connected device may collect information about the user's health or body such as image data, video data, voice data, motion data, biological data, body secretion data, breath analyzer data, fingerprint scan, eye (e.g., iris or retina) scan, urine data, feces data, genetic data (e.g., sequencing from tissue or body liquid), skin data, nail data, hair data, and/or saliva data, and/or any other bio-related information about the user, which is referred to as physiological data.
The connected devices may send the physiological data corresponding to the user to a remote computing device (e.g., via the Internet) to be analyzed by the remote computing device, which may be one or more computing devices. The remote computing device may run one or more trained algorithms to analyze the data received from the connected devices, as well as other information such user medical history and/or family medical history, as well as local medical history such as pandemic or environmental data (for example, pollution data), and/or any other types of information, to determine a medical diagnosis or otherwise detect a medical condition or event. The one or more algorithms may be trained models or networks using data corresponding to users associated with a particular diagnosis, condition or event. For example, the one or more algorithms may be one or more trained neural networks.
If the remote computing device processes the data received by the connected devices and determines the presence of one or more medical diagnoses, conditions or events, the computing device may send a message to a connected device associated with the user indicating that a medical diagnosis, condition and/or event was detected. Other devices related to the user (e.g., emergency contacts) and/or medical or emergency services may also receive a message regarding the medical diagnosis, condition or event.
The methods and systems described herein may be automated in that they do not require human intervention. In this manner such systems may provide critical medical information to those individuals who cannot afford traditional healthcare services. Further, such automated systems may inform an individual of a medical diagnosis, condition and/or event in real time or near real time, which may in some cases be the difference between receiving time sensitive emergency services and permanent bodily injury or even death. Such systems and methods may be beneficial for regularly monitoring health parameters and/or prevention or early detection of future diseases.
The methods and systems described herein may enhance the knowledge and/or capabilities of a single physician. For example, the algorithms and machine learning systems described herein may leverage the knowledge and capabilities of multiple physicians as such knowledge and capabilities (e.g., medical knowledge, diagnostic knowledge, and/or therapeutic knowledge) may be used to design, train and/or improve the algorithms and machine learning systems.
Referring now to
Computing device 102 may be any computing device that may communicate with sensor device 104, visual device 106 and audio device 108, one or more servers and/or other computing devices or connected devices, via any well-known wired or wireless system (e.g., Wi-Fi, cellular network, Bluetooth, Bluetooth Low Energy (BLE), near field communication protocol, etc.). Computing device 102 may be any computing device with one or more processor. In the example illustrated in
Sensor device 104 may be any computing device that may communicate with at least computing device 102, either directly or indirectly, via any well-known wired or wireless system. Sensor device 104 may be any well-known smart sensor and/or computing device incorporating or coupled to one or more sensors and may further include one or more processor. For example, sensor device 104 may be a smart watch or any other wearable-type device, that may include one or more camera, microphone, optical sensor (e.g., photodiode), accelerometer, heart rate sensor, thermometer, blood glucose sensor, biometric sensor (e.g., face, fingerprint, eye, iris or retina, DNA scanner or analyzer), keystroke sensor, humidity sensor, breath analyzer, ECG sensor, voice analyzer, pressure sensor, and/or any other well-known sensor. Further, sensor device 104 may include one or more display (touch-screen display), speaker, or any other well-known output device. Sensor device 104 may be a sensor available from LifeLens Technologies, LLC of Ivyland, Pa. such as a sensor described in U.S. Patent Application Pub. No. 2019/0134396 to Toth et al, the entire contents of which are incorporated herein by reference.
Visual device 106 may be any computing device that may communicate with at least computing device 102, either directly or indirectly, via any well-known wired or wireless system. Visual device 106 may be any well-known computing device that may incorporate a camera or other visual detection technology (e.g., infrared sensor and/or ultrasound) and may further include one or more processor. Visual device 106 may optionally include one or more inputs (e.g., buttons) and/or one or more output (e.g., display). For example, visual device 106 may be smart television that may include a camera.
Audio device 108 may be any computing device that may communicate with at least computing device 102, either directly or indirectly, via any well-known wired or wireless system. Visual device 108 may be any well-known computing device that may incorporate a microphone or other audio detection technology and may further include one or more processor. For example, visual device 108 may be smart speaker that may include a microphone. Visual device 108 may include one or more inputs (e.g., buttons) and/or one or more outputs (e.g., speaker).
It is understood that additional or fewer devices (e.g., connected devices) than those shown in
As shown in setting 120 of
Sensor device 104 may also capture and/or obtain sensor data corresponding to the user 101. For example, sensor 104 may include a heart rate sensor and a temperature sensor and heart rate data and temperature data may be continuously and/or periodically sent to computing device 102. It is understood, however, the sensor device 104 may send any other sensor data to computing device 102. In this manner, computing device 102 may receive sensor data from sensor device 104, visual data including images of user 101 from visual device 106 and audio data including audible sounds from user 101 from audio device 108.
Computing device 102 may receive the sensor data, visual data, and/or audio data and may process the data received from the connected device using one or more algorithms designed and/or trained to determine a medical diagnosis, condition and/or event. For example, the one or more algorithms may employ, form and/or incorporate one or more models and/or neural networks to make this determination. Neural networks may learn from raw or preprocessed data and may be trained using known inputs (e.g., inputs with known medical diagnoses, conditions and/or events). It is further understood that data and determined medical diagnoses, conditions and/or events may be used to improve and/or further train the one or more algorithms.
As shown in setting 122, if computing device 102 determines the presence and/or a risk (e.g., above a predefined threshold) of a medical diagnosis, condition, or event, computing device 102 may inform one or more devices of such medical diagnosis, condition, or event and/or may cause one or more connected device to present such information. For example, computing device 102 may send an alert to device 142 which may be known to computing device 102 to be an emergency contact of user 101.
Additionally, or alternatively, computing device 102 may send an alert or similar message to emergency services 144. Such alert or message may include the location of user 101, information about the medical diagnosis, condition, or event, information about the position of the patient (e.g., whether the patient is sitting, lying down, crouching, etc.), location of user (e.g., address and/or GPS coordinates) and/or any other relevant information. Also, computing device 102 may optionally cause one or more connected device (e.g., visual device 106 and audio device 108) to present information about the medical diagnosis, condition, or event and/or or other relevant information (e.g., emergency medical advice and/or treatment instructions). In one example, computing device 102 may cause visual device 106 and/or audio device 108 to present a message that “help is on the way” and/or instructions to perform an action (e.g., lay down). In yet another example, computing device 102 may permit emergency services 144 to control connected devices (e.g., visual device 106 and audio device 108) and cause such devices to present information and/or view the user using such devices.
Referring now to
At block 202, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine a user profile associated with one or more connected device (e.g., a user device, a visual device and optionally an audio device and/or sensor device). At block 204, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to establish a connection with a visual device (e.g., smart television) associated with the user profile and/or request visual data from the visual device. At block 206, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive physiological data from the visual device. The physiological data may include images of an area, which may include images of a user or other individual. Blocks 204 and 206 may be continuously and/or periodically initiated to continuously and/or periodically send physiological data to the computing device.
At optional block 208, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to establish a connection with an audio device (e.g., smart speaker) associated with the user profile and/or request audio data from the audio device. At optional block 210, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive physiological data from the audio device. The physiological data may include sounds from an area, which may include sounds of a user or other individual. Blocks 208 and 210 may be continuously and/or periodically initiated to continuously and/or periodically send physiological data to the computing device.
At optional block 212, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to establish a connection with a sensor device (e.g., smart watch) associated with the user profile and/or request physiological data from the smart device. At optional block 214, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive physiological data from the sensor device. The physiological data may include sensor data corresponding to the user (e.g., heart rate data). Blocks 212 and 214 may be continuously and/or periodically initiated to continuously and/or periodically send sensor data to the computing device.
At block 216, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to analyze the physiological data (e.g., visual, audio and/or sensor data) using one or more algorithms designed and/or trained to detect one or more medical diagnosis, condition, and/or event. The physiological data may be optionally decrypted at block 216. For example, the data received at blocks 206, 210 and/or 214 may be encrypted using any well-known encryption techniques (e.g., well-known asymmetric and/or symmetric encryption techniques). In one example, asymmetric cryptography and/or digital signatures generated using blockchain may be employed to decrypt the data received at blocks 206, 210 and/or 214 and to decrypt the data at block 216. Asymmetric cryptography uses key pairs (e.g., public key and/or private key) which may be required to secure and/or access data. Blockchain algorithms and/or technology may be used to secure data and/or create digital signatures that must be present to decrypt the data. In one example, blockchain technology may be used to permit access to and/or decrypt data if a certain number of keys of a predefined number of keys are provided (e.g., 2 out of 3 total keys).
As explained above, the trained algorithms may be one or more models and/or neural networks. At decision 218, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine if a medical diagnosis, condition and/or event has been detected or the presence of one of the following has satisfied a predetermined threshold. While this determination may be automated without any human assistance or input, the system may optionally request input and/or confirmation from a healthcare provider. Additionally, or alternatively, the system may optionally request that a healthcare provider confirm the medical diagnosis, condition and/or event.
If a medical diagnosis, condition and/or event has not been detected or the presence of one of the following has not satisfied a predetermined threshold, no further action may be taken. Alternatively, if a medical diagnosis, condition and/or event has been detected or the presence of one of the following has satisfied a predetermined threshold, at decision 222 computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine if there is a current medical emergency (e.g., does the user need immediate medical attention). The one or more algorithms may be trained to make this determination.
If a medical emergency is detected, at optional block 224 computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to contact emergency services. Additionally, or alternatively, at optional block 226 computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to alert an emergency contact associated with the use profile of the medical emergency. Further, whether or not a medical emergency is detected, at block 228, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to cause the user device, visual device, audio device, and/or sensor device to present information about the medical diagnosis, condition, and/or emergency. Information about the medical diagnosis, condition, and/or emergency may be optionally encrypted at block 224, 226 and/or 228 using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques).
Referring now to
User device 302 may be any computing device with one or more processor and/or one or more sensor (e.g., a camera). In the example illustrated in
Each of user device 302, sensor device 304, and computing device 306 may communicate either directly or indirectly with one another. It is understood that additional or fewer devices (e.g., connected devices) than those shown in
As shown in setting 310 of
As shown in setting 312 of
Computing device 306 may analyze the data received from the user device, sensor device, and/or any other connected devices. For example, computing device 306 may execute one or more algorithms trained and/or designed to determine a medical diagnosis, condition or event based on the received data. It is further understood that data and determined medical diagnoses, conditions and/or events may be used to improve and/or further train the one or more algorithms. As shown in setting 314 of
Referring now to
At block 402, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to establish a connection with a user device (e.g., smart phone) and/or sensor device (e.g., smart watch) associated with a user profile. At optional block 404, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine a user profile associated with the user device and/or sensor device. At optional block 406, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine medical history data associated with the user profile (e.g., medical information about the individual that is the subject of the user profile). The medical history data may be optionally decrypted at block 406. For example, the medical history data received may be encrypted using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques).
At block 408, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to cause the user device and/or sensor device to present instructions to obtain first physiological data (e.g., any physiological or other data or information relating to a user's body, body function, body characteristics, body measurements, body properties, and the like). At block 410, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive first physiological data (e.g., image of face) from the user device. The first physiological data may be optionally decrypted at block 406. For example, the first physiological data received may be encrypted using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques).
At optional block 412, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine, based on the first physiological data, a second type of physiological data that would be helpful for determining a medical diagnosis, condition, and/or event. This determination may be based on and/or informed by devices associated with the user profile determined at block 404. At optional block 413, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to cause the user device and/or sensor device to present instructions for the user to perform an action (e.g., exercise, take a deep breath, lie down, etc.).
At block 414, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send instructions to the user device and/or sensor device to obtain second physiological data corresponding to the action. The second physiological data may be associated with the second type of physiological data and/or a device known to generate the second type of physiological data. Alternatively, the user device and/or sensor device may automatically obtain such data.
At block 416, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive second physiological data (e.g., heart rate data) from the user device and/or sensor device. The second physiological data may be optionally decrypted at block 406. For example, the second physiological data received may be encrypted using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques). At block 418, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to analyze first and second physiological data and optionally medical history data) using one or more algorithms trained and/or designed to detect a medical diagnosis, condition or event based on the received data. Detecting a medical diagnosis, condition or event may include determining the likelihood or risk of a medical diagnosis, condition or event.
At decision 420, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine if a medical diagnosis, condition, or event has been detected. If no diagnosis, condition, or event was detected, at block 422, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send a message to the user device and/or sensor device indicating that there has been no diagnosis, condition, or event detected. Alternatively, if a diagnosis, condition, or event was detected, at block 424 computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send a message to the user device regarding the detected medical diagnosis, condition or event. Information about the medical diagnosis, condition, and/or emergency may be optionally encrypted at block 424 using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques).
Referring now to
As shown in
As shown in setting 512, computing device 506 may analyze the biometric and/or physiological data received from sensor device 504 and/or any other biometric, physiological, or other relevant data received from other connected devices and/or computing devices (e.g., medical history) and may determine if a medical diagnosis, condition or event is detected (e.g., using one or more algorithms trained to detect a diagnosis, condition or event). It is further understood that data and determined medical diagnoses, conditions and/or events may be used to improve and/or further train the one or more algorithms. Biometric authentication and monitoring system 500 may cause user device 502 to present a message that such diagnosis, condition or event was detected (e.g., atrial fibrillation detected) and may include additional information about the medical diagnosis, condition or event. For example, user device 502 may present treatment recommendations.
Referring now to
At block 602, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to establish a connection with a user device associated with a user profile. At block 604, computer-executable instructions stored on a memory of a device, may be executed to request biometric data for authentication from the user device. At block 606, computer-executable instructions stored on a memory of a device, may be executed to receive biometric data form the user device, or optionally an associated sensor device, in response to request for biometric data. The biometric data may be optionally decrypted at block 606. For example, the biometric data received may be encrypted using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques).
At block 608, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine a user profile corresponding to the biometric data. For example, the user may send credentials (e.g., username and passcode) to computing device and computing device may use this information to determine a corresponding user profile. Alternatively, or additionally, an identification value associated with the user device may be communicated to the computing device and associated with a user profile.
At block 610, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to authenticate the biometric data received from the user device. For example, one or more algorithms on computing device may analyze the biometric data and determine that it matches biometric data associated with the user profile. A match may be an exact match or a likelihood or similarity (e.g., that satisfies a threshold value). At block 612, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to request sensor data from the sensor device and/or user device (e.g., physiological data). Alternatively, the sensor device and/or user device may be preprogrammed to continuously or periodically send sensor data to the computing device once the user has been authenticated.
At block 614, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive sensor data from the user device and/or sensor device. The sensor data may be optionally decrypted at block 614. For example, the sensor data received may be encrypted using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques). At optional block 616, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine medical history corresponding to the user profile. At optional block 618, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine medical history corresponding to the user profile.
At block 620, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to analyze sensor data and, optionally medical history data, using one or more algorithms trained and/or designed to determine a medical diagnosis, condition or event based on the received data. At decision 622, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine if a medical diagnosis, condition, or event has been detected.
If no diagnosis, condition, or event was detected, at block 624, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send a message to the user device and/or sensor device indicating that there has been no diagnosis, condition, or event was detected. Alternatively, if a diagnosis, condition, or event was detected, at block 626 computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send a message to the user device regarding the detected medical diagnosis, condition or event. This message may include a recommended treatment (e.g., elevate legs). Information about the medical diagnosis, condition, and/or emergency may be optionally encrypted at block 626 using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques).
Referring now to
Each of the sensor device 714, sensor device 724, sensor device 734, and sensor device 744 may be the same as or similar to sensor device 104 and computing device 706 may be the same as or similar to computing device 102 described above with respect to
As shown in setting 715, computing device 706 may analyze (e.g., using one or more algorithms) the sensor data (e.g., physiological data) received from sensor device sensor device 714, sensor device 724, sensor device 734, and sensor device 744 and/or any other physiological or other relevant data received from other connected devices and/or computing devices (e.g., medical history of each user associated with the family user profile) and a medical diagnosis or condition may be detected from such data. It is further understood that data and determined medical diagnoses, conditions and/or events may be used to improve and/or further train the one or more algorithms. Computing device 706 may cause one or more user device associated with the family user profile (e.g., user device 702) to present a message that such diagnosis or condition was detected (e.g., hereditary abnormality detected) and may include additional information about the medical diagnosis or condition. While four sensor devices and users are illustrated, it is understood that any number of users and/or any type of connected devices may be used in hereditary monitoring system 700.
Referring now to
At block 802, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to establish a connection with user devices and/or sensor devices, or other connected devices, associated with a family user profile associated with individuals that are related to one another by blood. At optional block 804, computer-executable instructions stored on a memory of a device, may be executed to determine medical history data relevant to one or more individuals in the family user profile. The medical history data may be optionally decrypted at block 804. For example, the medical history data received may be encrypted using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques). At block 806, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send instructions to user and/or sensor devices corresponding to family user profile to obtain and send physiological data.
At block 808, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive the physiological data from the user and/or sensor devices corresponding to the family user profile. The physiological data may be optionally decrypted at block 808. For example, the physiological data received may be encrypted using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques). At block 810, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to analyze the physiological data, and optionally the medical history data, of each individual in the family user profile using one or more algorithms trained and/or designed to determine hereditary diagnoses or conditions.
At decision 812, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine if a medical diagnosis or condition has been detected. If no hereditary diagnosis or condition was detected, at optional block 814, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send a message to one or more user device and/or sensor device in the family user profile, indicating that there has been no hereditary diagnosis or condition detected. The system may continue to receive biometric data and/or medical history data (e.g., regarding treatments) and if data subsequently collected is indicative of a hereditary diagnosis or condition, block 816 may be initiated.
If a hereditary diagnosis or condition was detected, at block 816 computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send a message to one or more user device and/or sensor device regarding the detected hereditary diagnosis or condition, which may include information about the diagnosis or condition. Information about the medical diagnosis, condition, and/or emergency may be optionally encrypted at block 816 using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques).
Referring now to
As shown in setting 910 of
As shown in setting 912, if computing device 906 determines a high rate or risk of a medical diagnosis or condition in one area as compared to other areas, computing device 906 may send a connected device, such as user device 902, a message regarding the medical diagnosis or condition. The device may present the message including a button or link for more information.
Referring now to
At block 1002, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to establish a connection with a plurality of connected devices (e.g., user device and/or sensor device). At block 1004, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine the location of the connected devices (e.g., geolocation). At block 1006, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send instructions to the connected devices to obtain and send physiological data. Alternatively, or additionally, the connected devices may be programmed to continuously or periodically send physiological data to the computing device.
At block 1006, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive the physiological data from the plurality of connected devices. The physiological data may be optionally decrypted at block 1007. For example, the physiological data received may be encrypted using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques).
At block 1008, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine an area of interest (e.g., within a certain radius). For example, computing device may group devices within a certain radius (e.g., 50 miles) into a single “area.” At block 1010, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine connected devices present in the area of interest (e.g., based on geolocation).
At block 1012, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine analyze the physiological data from devices in area of interest and outside the area of interest to determine increased presence or risk of a medical diagnosis or condition in the area of interest. For example, one or more algorithms designed and/or trained to determine the presence or risk of a medical diagnosis or condition may be employed.
At decision 1014, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine if an increased presence or risk of a medical diagnosis or condition has been detected in the area of interest, as compared to the presence or risk outside of the area of interest. If no increased presence or risk of a diagnosis or condition is detected, at block 1016, no action may be performed. Alternatively, if an increased presence or risk of a diagnosis or condition is detected, at block 1018 computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send a message to the user device regarding the increased presence or risk of a medical diagnosis or condition. Information about the risk of a diagnosis or condition may be optionally encrypted at block 1018 using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques).
Referring now to
Patch device 1036 may be a device worn by a user that may detect blood pressure, heart rate, ECG, and/or any other physiological information. In one example, patch device 1036 may be an adhesive or elastic band with a one or more sensors designed to detect blood pressure, heart rate, ECG, and/or any other related information, a microprocessor, a transceiver and a power unit. Tissue device 1040 may be a device that may collect a tissue sample (e.g., superficial skin sample) and may analyze the tissue sample using one or more sensors. In one example, tissue device 1040 may be a standalone device or alternatively may be incorporated into another device (e.g., patch 1036). The tissue device 1040 may include one or more sensors designed to generate data and/or a signal corresponding to the tissue sample, a microprocessor, a transceiver and a power unit. Blood device 1042 may be a device that may collect blood and may analyze the blood sample using one or more sensors. In one example, blood device 1042 may be standalone device or alternatively may be incorporated into another device (e.g., patch 1036). The blood device 1042 may include one or more sensors designed to generate data and/or a signal corresponding to the blood sample, a microprocessor, a transceiver and a power unit. Saliva device 1038 may be a device that may collect saliva and may analyze the saliva sample using one or more sensors. In one example, saliva device 1038 may be standalone device. Saliva device 1038 may include one or more sensors designed to generate data and/or a signal corresponding to the saliva sample, a microprocessor, a transceiver and a power unit. Alternatively, or in addition, a similar device designed to generate data and/or a signal corresponding to a bodily secretion sample (e.g., sweat) may be employed.
User device 1032 may communicate with computing device 1044 via any well-known wired or wireless system (e.g., Wi-Fi, cellular network, Bluetooth, Bluetooth Low Energy (BLE), near field communication protocol, etc.). Additionally, user device may communicate with sensor device 1034, patch device 1036, saliva device 1038, tissue device 1040, blood device 1042 and/or computing device 1044 via any well-known wired or wireless system. It is understood that sensor device 1034, patch device 1036, saliva device 1038, tissue device 1040, and/or blood device 1042 may communicate with computer device 1044 via user device 1032 and/or may communicate with computing device 1044 directly (e.g., via any well-known wireless system). Data may also be obtained from analysis or genetic sequencing of tissue, blood, urine, bodily secretion, and/or any other bodily material.
As shown in
As shown in
Computing device 1044 may analyze the spoken words to determine one or more types of data that would be relevant determining a medical condition, diagnosis, and/or event relevant to the spoken words (i.e., symptoms information). For example, computing device 1044 may analyze the spoken words using one or more trained algorithms (e.g. neural networks) to make this determination. Computing device 1044 may send instructions to user device 1032 to request more information from user 1031 based on the symptoms input already analyzed. Alternatively, or additionally, user device 1032 may ask user 1031 to type out the symptoms and/or medical information on the phone and the typed information may be sent to computing device 1044 for processing in the same manner.
Based on the symptoms and/or other information collected by user device 1032 and communicated to computing device 1044, computing device 1044 may determine that certain types of data and/or medical information must be collected about the user. For example, sensor device 1034, patch device 1036, saliva device 1038, tissue device 1040, and/or blood device 1042 may be in communication with user device 1032 and/or computing device 1044 and/or computing device 1044 may know which devices are available to collect information.
Computing device 1044 may determine that data from sensor device 1034 and/or patch device 1036, saliva device 1038, tissue device 1040, and blood device 1042 is desirable for making a determination regarding the medical diagnosis, condition and/or event. Computing device may request data from sensor device 1034 and/or patch device 1036, such as blood pressure data, heart rate data and/or other circulatory related information. It is understood that one or more of sensor device 1034 and patch device 1036 may be used. Sensor device 1034 and/or patch device 1036 may send the data determined and/or generated by sensor device 1034 and/or patch device 1036 (e.g., blood pressure, heart rate and/or ECG data) to computing device 1044 and/or user device 1032.
Computing device 1044 may additionally, or alternatively, request data from user device 1032. For example, user device 1032 may include a high definition and/or high resolution camera for capturing high definition images of the user's body. In one example the user device 1032 may be coupled to a scope or other imaging component for capturing images in or around a body orifice (e.g., mouth, ear, etc.). A user may position the user device 1032 such that an image may be captured at the appropriate location of the user's body. User device 1032 may send the data determined and/or generated by user device 1032 (e.g., high definition and/or high resolution image data) to computing device 1044. The image may be processed by the computing device 1044 and/or user device 1032 for diagnostic purposes and/or to track changes of a body part over time (e.g., modification of a nevus into a melanoma).
Computing device 1044 may additionally, or alternatively, request data from saliva device 1038. For example, the user may position saliva device 1038 in the user's mouth to collect a sample of saliva that may be detected and/or processed by saliva device 1038. Saliva device 1038 may send the data determined and/or generated by saliva device 1038 (e.g., saliva data) to computing device 1044 and/or user device 1032. It is understood that this data may be used by computing device 1044 for genetic testing, for example.
Computing device 1044 may additionally, or alternatively, request data from tissue device 1040. For example, the user may position tissue device 1040 at a certain location on the user's body (e.g., on the user's arm) to study, or collect for study, a sample of tissue (e.g., a superficial skin sample) that may be detected and/or processed by tissue device 1040. Tissue device 1040 may send the data (e.g., tissue data) determined and/or generated by tissue device 1040 to computing device 1044 and/or user device 1032.
Computing device 1044 may additionally, or alternatively, request data from blood device 1042. For example, the user may position blood device 1042 at a certain location on the user's body (e.g., on the tip of the user's finger) to collect a sample of blood that may be detected and/or processed by blood device 1042. Blood device 1042 may send the data (e.g., blood data) determined and/or generated by blood device 1042 to computing device 1044 and/or user device 1032. The blood data may be used for biological dosage purposes, for example.
Computing device 1044 may additionally, or alternatively, request data motion data from sensor device 1034. For example, the sensor device may determine motion data using one or more accelerometers. Sensor device 1034 may send the data (e.g., motion data) determined and/or generated by sensor device 1034 to computing device 1044 and/or user device 1032. The motion data may be indicative of a position of the user (e.g., supine) and/or a gait of a user, for example.
Computing device 1044 may analyze the data determined and/or generated by sensor device 1034, patch device 1036, saliva device 1038, tissue device 1040, blood device 1042, and/or user device 1032 and may analyze the data and the symptoms using one or more algorithms trained and/or designed to detect a medical diagnosis, condition or event based on the received data. For example, the computing device 1044 may determine the likelihood or risk of a medical diagnosis, condition or event. It is further understood that data and determined medical diagnoses, conditions and/or events may be used to improve and/or further train the one or more algorithms. It is understood that a fewer or greater number of devices than those illustrated in
If a diagnosis, condition, or event was detected, or a high risk of the foregoing is detected (e.g., above a threshold) a message may be sent to the user device to be presented by the user device to inform the user of the detected medical diagnosis, condition or event or risk thereof. Such information may be optionally using any well-known encryption techniques. It is understood that one or more of the operations of computing device 1044 described above with respect to
Referring now to
At block 1050, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to establish a connection with a user device (e.g., smart phone or kiosk) and optionally one or more sensor device (e.g., smart watch), patch device, tissue device, saliva device, blood device, and/or any other device. At block 1052, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed cause the user device to present a request for symptoms and/or other relevant medical information. For example, the user device may audibly ask the user to explain the symptoms and/or medical issue. Alternatively, or additionally, the user device may present this request on a display of the user device and the user may type in their response or speak their response.
At block 1054, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive the symptom input (e.g., from spoken words and/or text) which may be indicative of the symptoms the patient is experiencing. The user device may include well-known voice recognition and processing software to transcribe and/or determine the meaning of the spoken words. The information and/or data received at block 1054 may be optionally decrypted at block 1054. For example, the data received may be encrypted (e.g., by the user device) using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques).
At block 1056, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to process the symptom input (e.g., using one or more algorithms and/or neural networks). The computing device may determine that more information is required about the symptoms and/or other relevant information is needed and thus block 1052 may be reinitiated. Additionally, or alternatively, the computing device may use the information received at block 1054 to determine request one or more types of data from one or more devices. The devices and data types may depend on the symptoms input received at block 1054.
The computing device may send request for data corresponding to the user either to the user device, which may relay such request to the appropriate device, or may send such request directly to the appropriate device. It is understood that one or more of blocks 1058, 1062, 1066, 1070 and/or 1074 may be optional and/or that data other than the data illustrated in
At block 1058, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to request physiological data (e.g., blood pressure data, heart rate data and/or ECG data) from one or more devices and/or the user device may present instructions to the user to obtain such data using the appropriate device. For example, such data may be requested from a sensor device and/or a patch device (e.g., via the user device). At block 1060, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive physiological data (e.g., from the user device and/or from other devices). The physiological data may be optionally decrypted at block 1060. For example, the physiological data received may be encrypted (e.g., by the user device) using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques) and may need to be decrypted.
At block 1062, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to request image data from one or more devices and/or the user device may present instructions to the user to obtain such data using the appropriate device. For example, such data may be requested from a user device and/or a camera device. At block 1064, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive image data (e.g., indicative of a portion of the user's body and/or an orifice). The image data may be optionally decrypted at block 1064. For example, the image data received may be encrypted (e.g., by the user device) using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques) and may need to be decrypted.
At block 1066, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to request tissue data (e.g., based on a skin tissue sample) from one or more devices and/or the user device may present instructions to the user to obtain such data using the appropriate device. For example, such data may be requested from a tissue analyzer device. At block 1068, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive tissue data. The tissue data may be optionally decrypted at block 1068. For example, the tissue data received may be encrypted (e.g., by the user device) using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques) and may need to be decrypted.
At block 1070, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to request position and/or motion data from one or more devices and/or the user device may present instructions to the user to obtain such data using the appropriate device. The position and/or motion data may be indicative of a user's position and/or gait, for example. In one example, such data may be requested from a sensor device having one or more accelerometers. At block 1072, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive motion and/or position data. The motion and/or position data may be optionally decrypted at block 1072. For example, the motion data received may be encrypted (e.g., by the user device) using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques) and may need to be decrypted.
At block 1074, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to request saliva data from one or more devices and/or the user device may present instructions to the user to obtain such data using the appropriate device. In one example, such data may be requested from a saliva device. At block 1076, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive saliva data. The saliva data may be optionally decrypted at block 1076. For example, the saliva data received may be encrypted (e.g., by the user device) using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques) and may need to be decrypted.
At block 1078, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to analyze the physiologic data, image data, tissue data, position and/or motion data, and/or saliva data, and optionally the symptom input received at block 1054, using one or more algorithms trained and/or designed to detect a medical diagnosis, condition or event based on such data. Detecting a medical diagnosis, condition or event may include determining the likelihood or risk of a medical diagnosis, condition or event.
At decision 1080, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine if a medical diagnosis, condition, or event has been detected. If no diagnosis, condition, or event was detected, at block 1082, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send a message to the user device indicating that there has been no diagnosis, condition, or event detected. This message may cause the user device to present (e.g., visually and/or audibly) that no diagnosis, condition or event was detected. Alternatively, if a diagnosis, condition, or event was detected, at block 1084 computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send a message to the user device regarding the detected medical diagnosis, condition or event. This message may cause the user device to present (e.g., visually and/or audibly) the diagnosis, condition or event that was detected. Information about the medical diagnosis, condition, and/or emergency may be optionally encrypted at block 1084 using any well-known encryption techniques (e.g., well-known asymmetric, symmetric and/or blockchain encryption techniques).
At optional block 1086, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to request payment information from the user device. At optional block 1088, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive payment information from the user device. It is understood that blockchain technology may be used to facilitate and/or secure the payment transaction using well-known blockchain techniques. For example, cryptocurrencies may be used for any transactions, such as pay-per-use (e.g., for diagnosis), payment for treatments, payment for medication, and any other payment transaction.
Referring now to
As shown in
In one or more embodiments, the avatar may also be generated as a three-dimensional (3D) virtual object within a virtual reality environment, such as the Metaverse. It is understood that the medical diagnostic system contemplated herein may be incorporated in the Metaverse such that aspects of the systems and methods as described herein may be implemented within the Metaverse (and/or any other type of virtual reality environment). For example, a visit to the doctor's office may take place in the Metaverse. In yet another example, an avatar in the Metaverse may be programmed to develop symptoms and conditions and the methods and systems described herein may be employed in the Metaverse to diagnosis certain conditions or medical events experienced by the avatar. In yet another example, a doctor may be represented by an avatar in the Metaverse (and/or any other health personnel, such as nurses, etc.). This may permit the avatar patient to receive more time and/or attention from the healthcare provided. It is understood that the interaction may benefit from the psychological effects of interacting with a doctor or healthcare provider for such longer time. It is further understood that the 3D virtual object may additionally and/or alternatively be a hologram.
Avatar 1093 may be used to interact with the user to cause the user to provide user input with respect to symptoms and other health related information. The input received from the user (e.g., audio data) may be processed and/or transcribed by the user device and/or the server (e.g., such input may be sent from user device 1090 to the server). User device 1090 may present the spoken words of the avatar on speaker 1096 and/or may cause corresponding text to be presented on display 1092 (e.g., using text bubble 1094).
The user device and/or server may include logic (e.g., software algorithms and/or trained machine learning models) that analyze the user input and generate follow-up questions to elicit additional information that may be more accurate and/or more in-depth. For example, avatar 1093 may say “hello, how are you feeling today” and the user may say “not well, my head hurts.” Upon processing this user input, the avatar and user device 1090 may be caused to ask the user where their head hurts. For example, Avatar 1093 may be used to request symptom and/or other relevant information at steps 1052 and 1056 described above with respect to
It is understood that the more human-like interaction for the user as compared to solely audio instructions presented by user device 1090 may be less stressful and/or more comfortable for the user. As a result, a user may be more likely to disclose information in this fashion and thus may provide more accurate and in depth responses. As an added benefit, the human-like interaction with the avatar may be therapeutic for some users as it may be reassuring that their concerns and ailments are being listened to and addressed.
Referring now to
Computing device 1402 may be any computing device that may communicate with sensor device 1404, one or more servers and/or other computing devices or connected devices, via any well-known wired or wireless system (e.g., Wi-Fi, cellular network, Bluetooth, Bluetooth Low Energy (BLE), near field communication protocol, etc.). Computing device 1402 may be any computing device with one or more processor. In the example illustrated in
Sensor device 1404 may be any computing device that may communicate with at least computing device 1402, either directly or indirectly, via any well-known wired or wireless system. Sensor device 1404 may be any well-known smart sensor, monitor and/or computing device incorporating or coupled to one or more sensors and/or monitoring hardware and may further include one or more processor. For example, sensor device 1404 may be a smart watch or any other wearable-type device, that may include one or more camera, microphone, optical sensor (e.g., photodiode), accelerometer, heart rate sensor, thermometer, blood glucose sensor, biometric sensor (e.g., face, fingerprint, eye, iris or retina, DNA scanner or analyzer), keystroke sensor, humidity sensor, breath analyzer, ECG sensor, voice analyzer, pressure sensor, and/or any other well-known sensor. Further, sensor device 1404 may include one or more display (touch-screen display), speaker, or any other well-known output device. In one or more embodiments, sensor device 1404 may be similar to sensor device 104 and/or any other sensor device described herein or otherwise.
It is understood that additional or fewer devices (e.g., connected devices) than those shown in
As shown in setting 1400 of
Computing device 1402 may receive the sensor data and/or any other types of data, and may process the data received from sensor device 1404. For example, computing device 1402 may process the data using one or more algorithms designed and/or trained to determine a medical determination (e.g., diagnosis, condition, event, conclusion, inference, prediction, etc.). For example, the one or more algorithms may employ, form and/or incorporate one or more models and/or neural networks to make this determination. Artificial intelligence, machine learning, neural networks, or the like may be used to learn from raw or preprocessed data and train a module using known inputs (e.g., inputs with known medical diagnoses, conditions and/or events). It is further understood that data and medical determination may be used to improve and/or further train the one or more algorithms. The computing device 1402 may produce output 1403 based on the sensor data. The output may be the medical determination and/or an inference or conclusion based on the medical determination.
As shown in setting 1410 of
As shown in setting 1420 of
As shown in setting 1430 of
Referring now to
At optional block 1502, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine a user profile and/or user identification. At block 1504, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to establish a connection with one or more user devices and/or sensor devices. Such devices may be associated with the user profile and/or user identification. At block 1506, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to instruct the one or more user device and/or sensor device to obtain physiological data.
At block 1508, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive physiological data from one or more user device, monitoring device and/or sensor device. At block 1510, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to analyze the physiological data (and optionally medical history data associated with the user profile and/or user identification) using algorithm(s) trained/designed to determine a medical determination (e.g., diagnosis, condition, event, conclusion, inference, prediction, etc.). At block 1512, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine one or more relevant medical assessments based on the medical determination.
At block 1514, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine one or more application, platform, system and/or device for performing the relevant medical assessment. At block 1516, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send instructions to a secondary medical system associated with the relevant medical assessment to perform the one or more relevant medical assessment. The relevant medical assessment may be based on additional physiological data corresponding to the user. At block 1518, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive one or more output(s) from relevant medical assessment performed by the secondary medical system.
At optional block 1520, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to analyze the one or more output(s) from the medical analysis performed by the secondary medical system as well as the medical determination using algorithm(s) trained/designed to determine a medical diagnosis, condition, event, or the like. At optional block 1522, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine a medical diagnosis, condition, event or the like based on the one or more output(s) of the medical analysis and, optionally, the medical determination. At optional block 1524, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send data indicative of a medical diagnosis, condition, event, or the like, to a user device (e.g., to a user device). At optional block 1526, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to cause user device to present a medical diagnosis, condition and/or event, for example. At block 1528, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to cause user device to present an instruction to consult a specific type of medical specialist. For example, block 1528 may be performed alternatively to blocks 1520, 1522, 1524, and/or 1526 if a medical diagnosis is not performed or otherwise inconclusive. Alternatively, block 1528 may also be performed in addition to blocks 1520, 1522, 1524, and/or 1526 as well.
Referring now to
Any of the computing devices and/or databases may communicate over via any well-known wired or wireless system (e.g., Wi-Fi, cellular network, Bluetooth, Bluetooth Low Energy (BLE), near field communication protocol, etc.). Additionally, even though the figure depicts communications between a specific system (for example, between computing device 1606 and computing device 1608), the illustrations of these communications is not intended to be limiting. For example, computing device 1610 and database 1612 may also communicate, in some instances.
Computing device 1602 may include a platform (for example, a centralized management device). Computing device 1602 may facilitate interactions between the various other computing devices and/or databases illustrated in
Computing device 1604 may be a second medical system that performs medical diagnostics. For example, the secondary medical system may be utilized to allow additional information to be captured by user 1620 and/or may be employed to analyze information captured by any devices in system 1600 using one or more algorithms and/or models on computing device 1604 (e.g., machine learning models). Computing device 1604 may also allow user 1620 to perform additional self-administered medical examinations. For example, if computing device 1602 determines a breath analysis is required or beneficial to making a diagnosis, then an application that is capable of obtaining such information and/or any associated algorithms used to obtain one or more diagnoses may be utilized. In some cases, the secondary medical system may also be used to analyze data that has already been obtained. That is, the secondary medical system may not necessarily be required to obtain additional data.
Computing device 1604 may include multiple different models (for example, machine learning models and/or any other type of model) that may be trained to perform analyses associated with specific types of medical conditions. Given this, a particular model may be determined that corresponds to user 1620 and that model may be used to analyze data associated with user 1620. Any other computing device associated with system 1600 may also include these multiple different models as well (for example, computing device 1616 and/or any other computing device).
Computing device 1606 may include a payment system. The payment system may facilitate any monetary transactions that occur with respect to any of the other elements of the system 1600. For example, the payment system may facilitate payment for any medication prescribed to user, any medical treatments provided to the user 1620, and/or any other such transactions. The payment system may also store payment information associated with the user. For example, the payment system may store credit card information and bank information, among other types of payment information. This may allow for more efficient transaction processing rather than relying on the user to manually input payment information for every transaction that is performed. The payment system may involve the use of traditional payments systems or cryptocurrencies as well.
Computing device 1608 may include an insurance system. The insurance system facilitate any insurance payments associated with any of the monetary transactions facilitated by computing device 1606. The payment system may also store insurance information associated with the user. For example, the insurance system may have a policy number and/or policy information, such as deductible amount, etc. Certain information associated with a user that may be helpful for determining an insurance premium (e.g., age, weight, other medical conditions, etc.) may be also sent to the insurance system. This information may be used by the insurance system (computing device 1608) to determine the correct medical premium by an insurance company. The insurance system may also calculate the premium in relation to any patient information in a patient dossier. Given that the insurance system may be involved some or all monetary transactions processed by computing device 1606, computing device 1608 may be in communication with computing device 1606 in some instances.
Computing device 1610 may include a medication system. The medication system may facilitate management of any medication associated with the user. For example, the medication system may manage any preventative medication that is prescribed to the user. In this manner, the medication system may track information relating to medication associated with the user, such as the types and dosages of the medication that is associated with the user, an amount of time since the user last re-filled any of the medication prescriptions, and/or any other types of relevant information. In some instances, the medication system may also manage user requests for medication shipment and/or refills. The medication system may also automatically facilitate shipments of medication re-fills and/or perform any other automated processes with respect to user medication. In some cases, medication efficacy may be monitored for medical follow-ups and/or by the medical provider and/or by the pharmaceutical company making the medication.
Computing device 1614 may include a medical examination system. The medical examination system may facilitate biological, radiological, and/or any other types of examinations, labs, imaging, and/or testing that may be self-administered by user or otherwise administered by the user. The medical examination system may provide instructions to the user as to how to perform the examinations, for example. Alternatively, or additionally, the medical examination system may coordinate with and provide instructions to a medical facility for performing the medical examination.
Computing device 1616 may include a medical provider system. The computing device 1614 may be associated with a medical facility (or multiple medical facilities), such as a hospital, physician's office, and/or any other type of medical facility. The medical provider system may facilitate management of any actions taken with respect to the medical facility. For example, the medical provider system may facilitate actions taken during a medical emergency associated with the user, such as requesting emergency services to be deployed to a location of the user, notifying a medical facility that the user is experiencing an emergency and may be transported to the medical facility, and/or any other actions. The medical provider system may facilitate a connection between a medical provider and the user when the computing device is unable to resolve a medical condition of the user. For example, the medication system may also manage physician check-ups with the user, treatment follow-ups, postoperative surveillance, etc. In this manner, the medication system may manage scheduling of such check-ups, follow-ups, postoperative surveillance, etc. The medical provider system may provide reminders to the user 1620 regarding any of such physician visits that have been scheduled or have not yet been scheduled. Additionally, in some scenarios (for example, when a medical diagnosis is not able to be determined by platform 1602), medical provider system (and/or any personal associated with medical provider system) may be utilized to analyze data relating to user 1620 and perform a medical diagnosis. Furthermore, a specific type of personnel may be involved depending on the data relating to user 1620. For example, a first type of physician may be involved if platform 1602 is unable to make a medical diagnosis relating to an eye condition of user 1620, and a second type of physician may be involved if platform 1602 is unable to make a medical diagnosis relating to a heart condition of user 1620.
Database 1612 may store anonymous encrypted data. This anonymous encrypted data, for example, may be utilized for evaluations of the effectiveness of a medication, clinical trials, research, epidemic surveillance, etc. The anonymous data may be used in the aggregate to detect trends and/or train models, for example. The data may be shared with third parties, such as pharmaceutical companies for medication impact assessment, government health bodies for population health surveys (for example, surveys relating to pandemics or diabetes rates in children), and/or for preventative medicine implementation. It is understood that database 1612 and/or other databases in system 1600 may analyze treatment efficiency for certain health services, treatments, research centers or any other organizations or companies (e.g., pharmaceutical companies). It is further understood that database 1612 and/or other databases in system 1600 may analyze and/or determine trends with respect to preventative medicine assessments, provide insurance coverage analysis and/or feedback, and/or detect diseases and/or health conditions (e.g., in specific areas or with respect to certain related individuals. Databases 1618 may store information associated with the user 1620. For example, the information may include medical records, including at least any medical dossiers, prescribed medications, medical facility visits, and/or treatments performed. The medical records may also include any user-specific information, such as medication allergies, medical conditions, etc. Any of this information may also be encrypted as well. The database 1618 may be a universal medical dossier that may be encrypted and accessible by secured access systems. In this manner, database 1618 may be a centralized database that may be accessed across the world by various unrelated entities and organizations and may provide a cloud based hub for accessing patient medical information from anywhere. The medical dossier may include (as non-limiting examples) a patient's medical history, previous medical diseases, medical interactions, medical examinations, medical diagnoses, medical treatments, medical preventative actions, medical family diseases, information relating to past and future consultations, and any other types of information. The patient dossier may be viewable through any computing system associated with any number of different types of entities. The patient dossier may also be encrypted using any suitable method. The patient dossier may also be secured such that only certain users may view the information included within the patient dossier, such as the patient or any relevant medical personnel with authorization to view the information.
Referring now to
At block 1702, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine a diagnosis. For example, the systems and methods described herein may be employed for determining a medical diagnosis, condition and/or event. At block 1704, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine a treatment and/or medication corresponding to and based on the medical diagnosis, condition and/or event determined. Treatment may be an activity, procedures, diet, and/or device implantation, for example. It is understood that the medication may be an over-the-counter medication and/or a prescription medication.
At block 1706, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to deliver the medication and/or cause the delivery of the medication and/or any other medical related supplies. For example, the medication determined at block 1704 may be determined to be available for delivery and the delivery of such medication to the user's address or local health care provider may be arranged. In one example, the medication may be delivered via traditional delivery services or even a drone. A drone may be used for any other purposes as well. For example, a drone may be part of a delivery service and the platform 1602 may arrange for the delivery service to deliver the medication via the drone. Alternatively, or additionally, at block 1708, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to arrange for the administration of such medication and/or treatment. For example, the system may schedule an appointment at a local medical clinic for the administration of the medication and/or treatment by a healthcare professional.
At block 1710, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine data relating to treatment of patients, administered medications, follow-up information (e.g., user's health in follow-up visits), and similar information and share such information with one or more entities, third parties, and/or databases. For example, such information may be shared with government entities, pharmaceutical and/or medical companies, and/or research centers. It is understood that this information may be anonymized and encrypted to protect the user's privacy. At optional block 1712, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to perform a health service declaration. This may include sharing information about the diagnosis, condition and/or event with a government entity. It is understood that this may also or alternatively include sharing information about medication, treatments and follow-up information.
Referring now to
As shown in
Virtual reality device 1805 may include a machine readable medium on which is stored one or more sets of data structures or instructions (e.g., software) embodying or utilized by any one or more of the techniques or functions described herein. The instructions may also reside, completely or at least partially, within a main memory, within a static memory, or within the hardware processor during execution thereof. In an example, one or any combination of the hardware processor, the main memory, the static memory, or the storage device may constitute machine-readable media. In yet another example, to access a virtual reality examination, user 1802 may wear a partial, full suit and/or any garment or wearable device that may be capable of capturing sensor data from the body of user 1802.
It is understood that virtual reality device 1805 may be any well-known virtual reality device and/or the headset or computing device described in more detail in U.S. Pat. No. 9,063,330 assigned to Facebook Technologies, LLC, the entire contents of which are incorporated herein by reference. It is understood that virtual reality device 1805 may support virtual reality and/or augmented reality.
Virtual reality device 1805 may be in communication with server 1804, which may be one or more servers. It is understood that server 1804 may be the same as or similar to computing device 1602 described above with respect to
One or more sensors 1810 may be worn, coupled to, in physical and/or electrical communication with, or may be in the vicinity of user 1802. It is understood that sensor 1810 may be one or more sensors or devices described above with respect to
View 1811 may be digitally rendered and displayed on virtual reality device 1805 and may present healthcare virtual environment 1803. Healthcare virtual environment 1811 may be designed to look like a doctor's office or other healthcare type facility. Healthcare virtual avatar 1812 may be generated in healthcare virtual environment 1811 and may visually resemble a healthcare provider. Healthcare virtual avatar 1812 may, for example, be an avatar of a doctor and may be human-like and communicate visually and orally (e.g., via spoken words). User virtual avatar 1814 may also appear in healthcare virtual environment 1803 and may correspond to user 1802. For example, movements of user 1802 may be sensed and track by virtual reality device 1805 and user virtual avatar 1814 may move within healthcare virtual environment 1803 based on the sensed and track movements of virtual reality device 1805. It is understood that virtual reality device 1805 may include a microphone and/or speaker and user 1802 may communicate audibily with healthcare virtual environment 1803 and/or healthcare virtual avatar 1812 using such a speaker and/or microphone.
As shown in
User 1802 may use virtual reality device 1805 to access healthcare virtual environment 1803 when user 1802 is experiencing one or more medical conditions, events, symptoms, or the like. For example, if user 1802 has a a fever and a cough, user 1802 may access virtual healthcare environment 1803 to obtain a medical diagnosis as explained in greater detail below with respect to
The medical diagnosis system (e.g., diagnostic system 1030) may also be performed within virtual environment 1803. For example, user 1802 (e.g., the patient or user) may use headset 1805 (and/or any other device) to interact with virtual environment 1803 and describe symptoms. Server 1804 may cause healthcare virtual avatar 1812 to request more symptom information and/or may cause sensors 1810 to generate sensor data. Based on the symptom information and/or sensor data, a medical diagnosis may be generated by server 1804 which may run a medical diagnosis system. This may be accomplished by employing one or more algorithm(s) (for example, artificial intelligence, machine learning, and/or the like) in association with virtual environment 1803 that may be used to perform the medical diagnosis for user 1802. In such embodiments, healthcare virtual avatar 1812 may still be present within virtual environment 1803 to interact with user 1801.
The virtual interactions between user 1802 and the virtual healthcare avatar may also or alternatively be facilitated through any other methods as well. For example, user 1802 may communicate with a hologram (for example, a virtual projection of the virtual healthcare avatar), which may be presented within physical location 1807. The hologram may be presented using an external device used for the purpose of generating the hologram. However, in some cases, a device, such as virtual reality device 1805 may be used to present the hologram within physical location 1807. For example, virtual reality headset 1807 may be an augmented reality headset and may present a virtual representation of the healthcare virtual avatar within physical location 1807.
Sensor(s) 1810 and/or other types of devices or systems may be used to capture data relating to user 1802 that may be used in association with any medical diagnoses (and/or any other processes) performed in virtual environment 1803. As a first example, a device (such as virtual reality device 1805 and/or any other device or system) may use voice recognition to capture speech of the patient (for example, the patient describing symptoms). Virtual reality device 1805 may also capture any other types of data, such as motion data associated with user 1802, for example. As another example, sensor(s) 1810 may capture physiological data associated with user 1802. Sensor 1810 may further include, advanced imaging devices using ultrasound, magnetic resonance, X-rays, etc., biological, cell structure, body secretion, biological or cellular analysis (for example, biological dosage, PCR, gene sequencing, etc.), device, a device to determine intelligent markers may be used that may, for instance, target a cancerous cell and emit a signal or target a foreign body such as a virus, bacteria, etc., a device that facilitates direct interaction with a brain of user 1805. These are just non-limiting examples of different manners in which sensors, devices and/or systems may be used to capture data relating to user 1802 and are not intended to be limiting in any way.
In one example, sensors 1810 and/or virtual reality device 1805 may include a brain-machine interface that may be employed to capture data relating to user 1802. The brain-machine interface may assist with capturing data for identifying symptoms of user 1802, and may also assist with the treatment. For example, the brain-machine interface may enhance a treatment by creating a feeling such as relaxation. The virtual reality platform may also facilitate any monetary transactions. For example, the virtual reality platform may facilitate payment for any medication prescribed to user 1802, any medical treatments provided to user 1802, and/or any other such transactions. The virtual reality platform may also store payment information associated with the user 1802. For example, the virtual reality platform may store credit card information and bank information, among other types of payment information. This may allow for more efficient transaction processing rather than relying on the user 1802 to manually input payment information for every transaction that is performed. The virtual reality platform may involve the use of traditional payments systems or cryptocurrencies as well.
Referring now to
Similar to user virtual avatar 1814, user virtual avatar 1901 may be associated with user 1802, virtual device 1805 and/or a user profile. Unlike user virtual avatar 1901, user virtual avatar 1901 may be programmed to become sick and/or to have one or more symptoms corresponding to a medical condition, event and/or abnormality. For example, user virtual avatar 1901 may have a cough and a fever. In one example, user virtual avatar 1901 may exhibit such symptoms in the virtual reality platform. For example, user virtual avatar 1901 may be programmed to cough, have a runny nose, to sweat due to a fever, to be lethargic, to move slowly, and/or exhibit any other symptom that a human may experience. Healthcare virtual avatar 1812 may be able observe such exhibited symptoms in healthcare virtual environment 1904. Additionally, or alternatively, healthcare virtual avatar 1812 may ask user virtual avatar what symptoms user virtual avatar 1812 is experiencing. The symptoms may be audibly provided by user virtual avatar 1901. Healthcare virtual environment 1904 may include virtual representations of typical medical equipment, such as a blood pressure device, for example, and healthcare virtual avatar 1812 may use this medical equipment to gain additional medical information about user virtual avatar. For example, healthcare virtual avatar 1812 may take a blood pressure reading and/or may take the temperature of virtual avatar 1901. This is just one example and is not intended to be limiting.
The medical diagnosis system (e.g., diagnostic system 1030) may be performed within virtual environment 1904. For example, based on the symptom information and/or sensor data, a medical diagnosis may be generated by server 1804 which may run the medical diagnosis system. This may be accomplished by employing one or more algorithm(s) (for example, artificial intelligence, machine learning, and/or the like). Healthcare virtual avatar 1812 and/or healthcare virtual environment 1904 may audibly and/or visually present the medical diagnosis (e.g., medical condition, event, abnormality, or the like). Healthcare virtual avatar 1812 and/or healthcare virtual environment 1904 may further recommend virtual medications and/or virtual treatments to user virtual avatar 1901 based on the medical diagnosis. For example, user 1901 may provide virtual medication, perform a virtual medical procedure, and/or may provide any other treatment. It is understood that virtual medication and/or virtual treatment may cost real and/or virtual money.
Virtual environment 1904 and/or the virtual reality platform running on server 1804 may present a reaction of user virtual avatar 1901 to the medical treatment and/or medication. For example, if the treatment and/or medication cured the symptoms of virtual avatar 1901, then the cough and fever may no longer be presented. It is understood that this may take time and/or improve over a set period of time (e.g., minutes, days, months).
Referring now to
At block 2002, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to generate a healthcare virtual environment on a virtual reality platform. For example, the healthcare virtual environment may be a virtual reality environment that may be viewable by a user through a device such as a virtual reality headset. In this manner, one or more users may wear virtual reality headsets that may allow the users to view the healthcare virtual environment. For example, a patient and a medical professional may each wear a virtual reality headset that may allow the patient and medical professional to interact through the virtual reality. These interactions may allow the medical professional to perform remote medical diagnoses (and/or any other type of process, interaction, treatment, etc.) for the patient through the virtual environment. However, in some situations, the diagnoses may also be performed by one or more algorithms (for example, artificial intelligence, machine learning, or the like) instead of the medical professional as well. Additionally, the diagnoses may be performed using the medical professional and the one or more algorithms in conjunction. For example, the one or more algorithms may produce a medical diagnosis and the medical professional may verify the diagnosis and provide the diagnosis to the patient.
At block 2004, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to present a healthcare virtual avatar in the healthcare virtual environment. For example, the healthcare virtual avatar may be a virtual representations of the medical professional that may allow the patient and medical professional to interact within the virtual environment. In situations where the one or more algorithms perform the diagnoses without use of a medical professional, the healthcare virtual avatar may still be presented within the virtual environment, but may be controlled by the one or more algorithms instead of the medical professional.
At optional block 2006, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send instructions to determine the presence of a user virtual avatar in the healthcare environment. For example, in addition to the healthcare virtual avatar, a user virtual avatar representing the patient may also be presented within the healthcare virtual environment. The patient may view the healthcare virtual environment from the perspective of the user virtual avatar, and the medical professional may interact with the user through the user virtual avatar.
At optional block 2008, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine user data corresponding to a user profile of the user virtual avatar. The data may be received from any number of different types of sources. For example, data may be received from one or more sensors and/or devices associated with the patient. Some or all of the data may also be received from the virtual headset itself. The data may also include a medical history of the user and/or any other information about the user that may be relevant to perform a medical diagnosis. Such data may be provided by the patient and/or may be stored within a database that may be accessible to the virtual reality platform.
At block 2010, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send instructions to cause the healthcare virtual avatar to present a request for symptom data, physiological data, and/or other healthcare related data. The request may be presented in any format, such a text, audio, etc. For example, the request may be in the form of audio emitted by the healthcare virtual avatar. The audio may be based on speech produced by the medical professional that is detected by the virtual reality headset (or another device) that is reproduced within the healthcare virtual environment through the healthcare virtual avatar. This audio may also be generated using one or more algorithms as well. As another example, the request may be presented in text form as a speech bubble presented above healthcare virtual avatar. The request may also be presented in any other form.
At block 2012, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to receive the symptom data, physiological data, and/or other healthcare related data generated by a user device and/or sensor device associated with the user virtual avatar. For example, the data may be presented within the virtual environment such that the medical professional may view the data associated with the patient in order to make a medical diagnosis. The data may be presented in any format, such a text, audio, etc. For example, speech produced by the patient at their real-world location may be detected by the headset (and/or any other device) and may be reproduced within the virtual environment for the medical professional to hear. In situations where the one or more algorithms are used to perform the diagnosis, the data may be provided to the one or more algorithms as well (or data may only be provided to the one or more algorithms and not presented in the virtual environment). Additionally, any of the data may also be presented visually through the user virtual avatar as well. For example, if it is determined through the data that the patient has a rash, then the rash may be reproduced on the avatar associated with the patient. In this manner, the medical professional may be able to view symptoms of the patient through the patient's avatar. This may provide for the appearance of an in-person visit at a physical medical facility.
At block 2014, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to analyze one or more of the user data, symptom data, physiological data, and/or other healthcare related data using one or more algorithm(s) trained/designed to determine a medical diagnosis, condition, or event. For example, the analysis may involve determining a medical diagnosis based on the user data, symptom data, physiological data, and/or other healthcare related data. The analysis may be performed by a medical professional or one or more algorithms, or a combination of the two.
At block 2016, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send instructions to cause the healthcare virtual avatar and/or healthcare environment to present the medical diagnosis, condition, or event. For example, the medical diagnosis may be presented to the patient through the second avatar representing the medical professional. The indication of the medical diagnosis may be presented in any format, such as text, audio, etc. For example, similar to the request for symptom data, physiological data, and/or other healthcare related data, the medical diagnosis may be in the form of audio emitted by the healthcare virtual avatar. The audio may be based on speech produced by the medical professional that is detected by the virtual reality headset (or another device) that is reproduced within the healthcare virtual environment through the healthcare virtual avatar. This audio may also be generated using one or more algorithms as well. As another example, the medical diagnosis may be presented in text form as a speech bubble presented above healthcare virtual avatar. The medical diagnosis may also be presented in any other form.
At block 2018, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send instructions to provide treatment to first virtual avatar within virtual environment. At optional block 2020, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to send medication and/or treatment information to a healthcare provider and/or a healthcare entity. For example, the healthcare entity may be a pharmacy, a doctor's office, etc. At optional block 2022, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine an outcome of the medication and/or treatment. At optional block 2024, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to share an outcome of the medication and/or treatment with a third party system.
Referring now to
Computing device 1100 may be configured to communicate via one or more networks with one or more connected devices or the like. Example network(s) may include, but are not limited to, any one or more different types of communications networks such as, for example, cable networks, public networks (e.g., the Internet), private networks (e.g., frame-relay networks), wireless networks, cellular networks, telephone networks (e.g., a public switched telephone network), or any other suitable private or public packet-switched or circuit-switched networks. Further, such network(s) may have any suitable communication range associated therewith and may include, for example, global networks (e.g., the Internet), metropolitan area networks (MANs), wide area networks (WANs), local area networks (LANs), or personal area networks (PANs). In addition, such network(s) may include communication links and associated networking devices (e.g., link-layer switches, routers, etc.) for transmitting network traffic over any suitable type of medium including, but not limited to, coaxial cable, twisted-pair wire (e.g., twisted-pair copper wire), optical fiber, a hybrid fiber-coaxial (HFC) medium, a microwave medium, a radio frequency communication medium, a satellite communication medium, or any combination thereof.
In an illustrative configuration, the computing device 1100 may include one or more processors (processor(s)) 1102, one or more memory devices 1104 (generically referred to herein as memory 1104), one or more of the optional input/output (I/O) interface(s) 1106, one or more network interface(s) 1108, one or more transceivers 1112, and one or more antenna(s) 1134. The computing device 1100 may further include one or more buses 1118 that functionally couple various components of the computing device 1100. The computing device 1100 may further include one or more antenna(e) 1134 that may include, without limitation, a cellular antenna for transmitting or receiving signals to/from a cellular network infrastructure, an antenna for transmitting or receiving Wi-Fi signals to/from an access point (AP), a Global Navigation Satellite System (GNSS) antenna for receiving GNSS signals from a GNSS satellite, a Bluetooth antenna for transmitting or receiving Bluetooth signals including BLE signals, a Near Field Communication (NFC) antenna for transmitting or receiving NFC signals, a 900 MHz antenna, and so forth. These various components will be described in more detail hereinafter. The computing device 1100 may also be or may be associated with quantum processor computing and/or quantum communication systems as part of quantum networks in the form of quantum bits intra connected into a quantum Internet.
The bus(es) 1118 may include at least one of a system bus, a memory bus, an address bus, or a message bus, and may permit exchange of information (e.g., data (including computer-executable code), signaling, etc.) between various components of the computing device 1100. The bus(es) 1118 may include, without limitation, a memory bus or a memory controller, a peripheral bus, an accelerated graphics port, and so forth. The bus(es) 1118 may be associated with any suitable bus architecture including, without limitation, an Industry Standard Architecture (ISA), a Micro Channel Architecture (MCA), an Enhanced ISA (EISA), a Video Electronics Standards Association (VESA) architecture, an Accelerated Graphics Port (AGP) architecture, a Peripheral Component Interconnects (PCI) architecture, a PCI-Express architecture, a Personal Computer Memory Card International Association (PCMCIA) architecture, a Universal Serial Bus (USB) architecture, and so forth.
The memory 1104 of the computing device 1100 may include volatile memory (memory that maintains its state when supplied with power) such as random access memory (RAM) and/or non-volatile memory (memory that maintains its state even when not supplied with power) such as read-only memory (ROM), flash memory, ferroelectric RAM (FRAM), and so forth. Persistent data storage, as that term is used herein, may include non-volatile memory. In certain example embodiments, volatile memory may enable faster read/write access than non-volatile memory. However, in certain other example embodiments, certain types of non-volatile memory (e.g., FRAM) may enable faster read/write access than certain types of volatile memory.
In various implementations, the memory 1104 may include multiple different types of memory such as various types of static random access memory (SRAM), various types of dynamic random access memory (DRAM), various types of unalterable ROM, and/or writeable variants of ROM such as electrically erasable programmable read-only memory (EEPROM), flash memory, and so forth. The memory 904 may include main memory as well as various forms of cache memory such as instruction cache(s), data cache(s), translation lookaside buffer(s) (TLBs), and so forth. Further, cache memory such as a data cache may be a multi-level cache organized as a hierarchy of one or more cache levels (L1, L2, etc.).
The data storage 1120 may include removable storage and/or non-removable storage including, but not limited to, magnetic storage, optical disk storage, and/or tape storage. The data storage 1120 may provide non-volatile storage of computer-executable instructions and other data. The memory 1104 and the data storage 1120, removable and/or non-removable, are examples of computer-readable storage media (CRSM) as that term is used herein.
The data storage 1120 may store computer-executable code, instructions, or the like that may be loadable into the memory 904 and executable by the processor(s) 1102 to cause the processor(s) 1102 to perform or initiate various operations. The data storage 1120 may additionally store data that may be copied to memory 1104 for use by the processor(s) 1102 during the execution of the computer-executable instructions. Moreover, output data generated as a result of execution of the computer-executable instructions by the processor(s) 1102 may be stored initially in memory 1104, and may ultimately be copied to data storage 1120 for non-volatile storage.
More specifically, the data storage 1120 may store one or more operating systems (O/S) 1122; one or more database management systems (DBMS) 1124; and one or more program module(s), applications, engines, computer-executable code, scripts, or the like such as, for example, one or more implementation module(s) 1126, one or more diagnostic module(s) 1127, one or more communication module(s) 1128, and/or one or more medical history modules(s) 1129. Some or all of these module(s) may be sub-module(s). Sub or all of these module(s) may be part of the product platform and some or all of these modules may be part of the synthetic platform. Any of the components depicted as being stored in data storage 1120 may include any combination of software, firmware, and/or hardware. The software and/or firmware may include computer-executable code, instructions, or the like that may be loaded into the memory 904 for execution by one or more of the processor(s) 1102. Any of the components depicted as being stored in data storage 1120 may support functionality described in reference to correspondingly named components earlier in this disclosure.
The data storage 1120 may further store various types of data utilized by components of the computing device 1100. Any data stored in the data storage 1120 may be loaded into the memory 1104 for use by the processor(s) 1102 in executing computer-executable code. In addition, any data depicted as being stored in the data storage 1120 may potentially be stored in one or more datastore(s) and may be accessed via the DBMS 1124 and loaded in the memory 1104 for use by the processor(s) 1102 in executing computer-executable code. The datastore(s) may include, but are not limited to, databases (e.g., relational, object-oriented, etc.), file systems, flat files, distributed datastores in which data is stored on more than one node of a computer network, peer-to-peer network datastores, or the like. In
The processor(s) 1102 may be configured to access the memory 1104 and execute computer-executable instructions loaded therein. For example, the processor(s) 1102 may be configured to execute computer-executable instructions of the various program module(s), applications, engines, or the like of the computing device 1100 to cause or facilitate various operations to be performed in accordance with one or more embodiments of the disclosure. The processor(s) 1102 may include any suitable processing unit capable of accepting data as input, processing the input data in accordance with stored computer-executable instructions, and generating output data. The processor(s) 1102 may include any type of suitable processing unit including, but not limited to, a central processing unit, a microprocessor, a Reduced Instruction Set Computer (RISC) microprocessor, a Complex Instruction Set Computer (CISC) microprocessor, a microcontroller, an Application Specific Integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA), a System-on-a-Chip (SoC), an application-specific integrated circuit, a digital signal processor (DSP), and so forth. Further, the processor(s) 1102 may have any suitable microarchitecture design that includes any number of constituent components such as, for example, registers, multiplexers, arithmetic logic units, cache controllers for controlling read/write operations to cache memory, branch predictors, or the like. The microarchitecture design of the processor(s) 1102 may be capable of supporting any of a variety of instruction sets.
Referring now to functionality supported by the various program module(s) depicted in
The diagnostic module(s) 1128 may include computer-executable instructions, code, or the like that responsive to execution by one or more of the processor(s) 1102 may perform functions including, but not limited to, analyzing data received from connected devices such a visual data, audio data, physiological data, and any other type of data. Diagnostic module 1128 may further analyze other information such as medical device history. Diagnostic module 1128 may run one or more algorithms that may be train models or neural networks designed to determine a medical diagnosis, condition and/or event.
The communication module(s) 1128 may include computer-executable instructions, code, or the like that responsive to execution by one or more of the processor(s) 1102 may perform functions including, but not limited to, communicating with one or more computing devices, for example, via wired or wireless communication, communicating with connected devices, communicating with one or more servers (e.g., remote servers), communicating with remote datastores and/or databases, sending or receiving notifications or commands/directives, communicating with cache memory data, and the like.
The medical history module(s) 1129 may include computer-executable instructions, code, or the like that responsive to execution by one or more of the processor(s) 802 may perform functions including, but not limited to storing and/or maintaining data and/or information corresponding to medical history data and any other user related data.
Referring now to other illustrative components depicted as being stored in the data storage 1120, the O/S 1122 may be loaded from the data storage 1120 into the memory 1104 and may provide an interface between other application software executing on the computing device 1100 and hardware resources of the computing device 1100. More specifically, the O/S 1122 may include a set of computer-executable instructions for managing hardware resources of the computing device 1100 and for providing common services to other application programs (e.g., managing memory allocation among various application programs). In certain example embodiments, the O/S 1122 may control execution of the other program module(s) to for content rendering. The O/S 1122 may include any operating system now known or which may be developed in the future including, but not limited to, any server operating system, any mainframe operating system, or any other proprietary or non-proprietary operating system.
The DBMS 1124 may be loaded into the memory 1104 and may support functionality for accessing, retrieving, storing, and/or manipulating data stored in the memory 1104 and/or data stored in the data storage 1120. The DBMS 1124 may use any of a variety of database models (e.g., relational model, object model, etc.) and may support any of a variety of query languages. The DBMS 1124 may access data represented in one or more data schemas and stored in any suitable data repository including, but not limited to, databases (e.g., relational, object-oriented, etc.), file systems, flat files, distributed datastores in which data is stored on more than one node of a computer network, peer-to-peer network datastores, or the like.
Referring now to other illustrative components of the computing device 1100, the optional input/output (I/O) interface(s) 1106 may facilitate the receipt of input information by the computing device 1100 from one or more I/O devices as well as the output of information from the computing device 1100 to the one or more I/O devices. The I/O devices may include any of a variety of components such as a display or display screen having a touch surface or touchscreen; an audio output device for producing sound, such as a speaker; an audio capture device, such as a microphone; an image and/or video capture device, such as a camera; a haptic unit; a local blood or any other body element analyzer; a gene sequence apparatus; a histological analyzer; and so forth. Any of these components may be integrated into the computing device 1100 or may be separate. The I/O devices may further include, for example, any number of peripheral devices such as data storage devices, printing devices, and so forth.
The optional I/O interface(s) 1106 may also include an interface for an external peripheral device connection such as universal serial bus (USB), FireWire, Thunderbolt, Ethernet port or other connection protocol that may connect to one or more networks. The optional I/O interface(s) 1106 may also include a connection to one or more of the antenna(e) 1134 to connect to one or more networks via a wireless local area network (WLAN) (such as Wi-Fi®) radio, Bluetooth, ZigBee, and/or a wireless network radio, such as a radio capable of communication with a wireless communication network such as a Long Term Evolution (LTE) network, WiMAX network, 3G network, ZigBee network, etc.
The computing device 1100 may further include one or more network interface(s) 1108 via which the computing device 1100 may communicate with any of a variety of other systems, platforms, networks, devices, and so forth. The network interface(s) 1108 may enable communication, for example, with one or more wireless routers, one or more host servers, one or more web servers, and the like via one or more of networks.
The antenna(e) 1134 may include any suitable type of antenna depending, for example, on the communications protocols used to transmit or receive signals via the antenna(e) 1134. Non-limiting examples of suitable antennas may include directional antennas, non-directional antennas, dipole antennas, folded dipole antennas, patch antennas, multiple-input multiple-output (MIMO) antennas, or the like. The antenna(e) 1134 may be communicatively coupled to one or more transceivers 1112 or radio components to which or from which signals may be transmitted or received.
As previously described, the antenna(e) 1134 may include a Bluetooth antenna configured to transmit or receive signals in accordance with established standards and protocols, such as Bluetooth and/or BLE. Alternatively, or in addition to, antenna(e) 1134 may include cellular antenna configured to transmit or receive signals in accordance with established standards and protocols, such as or cellular antenna configured to transmit or receive signals in accordance with established standards and protocols, such as Global System for Mobile Communications (GSM), 3G standards (e.g., Universal Mobile Telecommunications System (UMTS), Wideband Code Division Multiple Access (W-CDMA), CDMA2000, etc.), 4G standards (e.g., Long-Term Evolution (LTE), WiMax, etc.), direct satellite communications, or the like. The antenna(e) 1134 may additionally, or alternatively, include a Wi-Fi® antenna configured to transmit or receive signals in accordance with established standards and protocols, such as the IEEE 802.11 family of standards, including via 2.4 GHz channels (e.g., 802.11b, 802.11g, 802.11n), 5 GHz channels (e.g., 802.11n, 802.11ac), or 60 GHz channels (e.g., 802.11ad). In alternative example embodiments, the antenna(e) 1134 may be configured to transmit or receive radio frequency signals within any suitable frequency range forming part of the unlicensed portion of the radio spectrum (e.g., 900 MHz).
The antenna(e) 1134 may additionally, or alternatively, include a GNSS antenna configured to receive GNSS signals from three or more GNSS satellites carrying time-position information to triangulate a position therefrom. Such a GNSS antenna may be configured to receive GNSS signals from any current or planned GNSS such as, for example, the Global Positioning System (GPS), the GLONASS System, the Compass Navigation System, the Galileo System, or the Indian Regional Navigational System.
The transceiver(s) 1112 may include any suitable radio component(s) for—in cooperation with the antenna(e) 1134—transmitting or receiving radio frequency (RF) signals in the bandwidth and/or channels corresponding to the communications protocols utilized by the computing device 1100 to communicate with other devices. The transceiver(s) 1112 may include hardware, software, and/or firmware for modulating, transmitting, or receiving—potentially in cooperation with any of antenna(e) 1134—communications signals according to any of the communications protocols discussed above including, but not limited to, one or more Wi-Fi® and/or Wi-Fi® direct protocols, as standardized by the IEEE 802.11 standards, one or more non-Wi-Fi® protocols, or one or more cellular communications protocols or standards. The transceiver(s) 1112 may further include hardware, firmware, or software for receiving GNSS signals. The transceiver(s) 1112 may include any known receiver and baseband suitable for communicating via the communications protocols utilized by the computing device 1100. The transceiver(s) 1112 may further include a low noise amplifier (LNA), additional signal amplifiers, an analog-to-digital (A/D) converter, one or more buffers, a digital baseband, or the like.
It should be appreciated that the program module(s), applications, computer-executable instructions, code, or the like depicted in
It should further be appreciated that the computing device 1100 may include alternate and/or additional hardware, software, or firmware components beyond those described or depicted without departing from the scope of the disclosure. More particularly, it should be appreciated that software, firmware, or hardware components depicted as forming part of the computing device 1100 are merely illustrative and that some components may not be present or additional components may be provided in various embodiments. While various illustrative program module(s) have been depicted and described as software module(s) stored in data storage 1120 and/or data storage 1120, it should be appreciated that functionality described as being supported by the program module(s) may be enabled by any combination of hardware, software, and/or firmware. It should further be appreciated that each of the above-mentioned module(s) may, in various embodiments, represent a logical partitioning of supported functionality. This logical partitioning is depicted for ease of explanation of the functionality and may not be representative of the structure of software, hardware, and/or firmware for implementing the functionality. Accordingly, it should be appreciated that functionality described as being provided by a particular module may, in various embodiments, be provided at least in part by one or more other module(s). Further, one or more depicted module(s) may not be present in certain embodiments, while in other embodiments, additional module(s) not depicted may be present and may support at least a portion of the described functionality and/or additional functionality. Moreover, while certain module(s) may be depicted and described as sub-module(s) of another module, in certain embodiments, such module(s) may be provided as independent module(s) or as sub-module(s) of other module(s).
Program module(s), applications, or the like disclosed herein may include one or more software components including, for example, software objects, methods, data structures, or the like. Each such software component may include computer-executable instructions that, responsive to execution, cause at least a portion of the functionality described herein (e.g., one or more operations of the illustrative methods described herein) to be performed.
A software component may be coded in any of a variety of programming languages. An illustrative programming language may be a lower-level programming language such as an assembly language associated with a particular hardware architecture and/or operating system platform. A software component including assembly language instructions may require conversion into executable machine code by an assembler prior to execution by the hardware architecture and/or platform.
Another example programming language may be a higher-level programming language that may be portable across multiple architectures. A software component including higher-level programming language instructions may require conversion to an intermediate representation by an interpreter or a compiler prior to execution.
Other examples of programming languages include, but are not limited to, a macro language, a shell or command language, a job control language, a script language, a database query or search language, or a report writing language. In one or more example embodiments, a software component including instructions in one of the foregoing examples of programming languages may be executed directly by an operating system or other software component without having to be first transformed into another form.
A software component may be stored as a file or other data storage construct. Software components of a similar type or functionally related may be stored together such as, for example, in a particular directory, folder, or library. Software components may be static (e.g., pre-established or fixed) or dynamic (e.g., created or modified at the time of execution).
Software components may invoke or be invoked by other software components through any of a wide variety of mechanisms. Invoked or invoking software components may include other custom-developed application software, operating system functionality (e.g., device drivers, data storage (e.g., file management) routines, other common routines and services, etc.), or third party software components (e.g., middleware, encryption, or other security software, database management software, file transfer or other network communication software, mathematical or statistical software, image processing software, and format translation software).
Software components associated with a particular solution or system may reside and be executed on a single platform or may be distributed across multiple platforms. The multiple platforms may be associated with more than one hardware vendor, underlying chip technology, or operating system. Furthermore, software components associated with a particular solution or system may be initially written in one or more programming languages, but may invoke software components written in another programming language.
Computer-executable program instructions may be loaded onto a special-purpose computer or other particular machine, a processor, or other programmable data processing apparatus to produce a particular machine, such that execution of the instructions on the computer, processor, or other programmable data processing apparatus causes one or more functions or operations specified in the flow diagrams to be performed. These computer program instructions may also be stored in a computer-readable storage medium (CRSM) that upon execution may direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means that implement one or more functions or operations specified in the flow diagrams. The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational elements or steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process.
Additional types of CRSM that may be present in any of the devices described herein may include, but are not limited to, programmable random access memory (PRAM), SRAM, DRAM, RAM, ROM, electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the information and which can be accessed. Combinations of any of the above are also included within the scope of CRSM. Alternatively, computer-readable communication media (CRCM) may include computer-readable instructions, program module(s), or other data transmitted within a data signal, such as a carrier wave, or other transmission. However, as used herein, CRSM does not include CRCM.
It should be understood that any of the computer operations described herein above may be implemented at least in part as computer-readable instructions stored on a computer-readable memory. It will of course be understood that the embodiments described herein are illustrative, and components may be arranged, substituted, combined, and designed in a wide variety of different configurations, all of which are contemplated and fall within the scope of this disclosure.
The foregoing description of illustrative embodiments has been presented for purposes of illustration and of description. It is not intended to be exhaustive or limiting with respect to the precise form disclosed, and modifications and variations are possible in light of the above teachings or may be acquired from practice of the disclosed embodiments. It is intended that the scope of the invention be defined by the claims appended hereto and their equivalents.
This application is a continuation-in-part of U.S. patent application Ser. No. 17/466,956, filed Sep. 3, 2021, the entire contents of which are incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
Parent | 17466956 | Sep 2021 | US |
Child | 17656206 | US |