Comments (7)
What if we take it from Physionet? does it detect anything?
from streamsx.health.
The ECG data being used in the Beacon Service originated from Physionet. The QRS complex is very obvious in this data so I would have expected something to be detected.
I will investigate and update this issue with my findings.
from streamsx.health.
The RPeakDetect service expects the input values to have an integer datatype, however the data coming from the BeaconService are floating point values that are mostly in the range of +/- 1.0. This data is being cast to an integer data type, which results in them becoming 0, causing the QRSDetect operator to not detect anything.
The quick "fix" is to simply multiple the value in the RPeakDetectService by 1000 to change from mV to uV, but this is a hack in my opinion. I think the better option here is to modify the operator to use the reading.uom field to determine the unit of measure and act appropriately.
@chanskw your thoughts on this?
from streamsx.health.
How much more work to fix this "properly"?
In the EWSService, I do look at the UOM and convert temperature to expected format. I don't think I have done it for all data types tho.
from streamsx.health.
The challenge with fixing is that since the UOM value in the Observation type is not standardized, it's not possible to know exactly what that value is going to look like when it gets populated by the source. For example, Physionet and the Beacon service are going to use common names for the UOM (i.e. V, mV). However, the Vines service uses the IEEE standard to represent UOMs (i.e. MDC_DIM_MILLI_VOLT).
What did you do in the EWSService when determining UOM?
from streamsx.health.
I see. I suggest we document what the QRSDetector service expects as signal input. And then we create a new component call prepare that will do this conversion. In the beacon service, we also document the unit of measure of the signals that will be generated. The expectation here is that clients need to handle this until we can standardize the UOM in the platform.
from streamsx.health.
I have added a new UOM Conversion service that will convert the ECG values from one unit to another. Using this service up stream from the QRSDetector and converting to uV enables the service to work when ingesting data from the beacon service. Closing this issue as resolved.
from streamsx.health.
Related Issues (20)
- Add Python Library to consume data from ingest services HOT 1
- Consider support Streams v4.1 HOT 1
- "curl: option -LJ0 is unknown" error on fresh QSE HOT 3
- PatientsMonitoringDemo hard code patient- as patient id prefix HOT 1
- Data source for PatientsMonitoringDemo should be more pluggable HOT 1
- HL7 jobs take up excessive CPU cycles when waiting for incoming connection HOT 3
- Create contributor page HOT 1
- samples/HealthcareJupyterDemo should work for any version of bokeh
- ADT and ORU parser running kill Streams console HOT 4
- FHIR: Add support for ADT / Encounter record
- FHIR: Handle security
- FHIR: Upgrade to Hapi v3.0 HOT 1
- Create Example service HOT 2
- RPeak Detect using CEP operator HOT 1
- Infrastructure: Standardize definition of health microservice HOT 1
- Observation Redesign HOT 7
- How do we compile HAPI microservice properly? HOT 4
- Top level gradle build fails with ssl certificate error in downloadJS task
- healthdemo/ecg_streaming.py attempts to use a float as an int, which is not tolerated by later versions of Python or python packages HOT 2
- please remove the master branch
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from streamsx.health.