How accurate are iOS apps that measure heart rate?

There are apps like Instant Heart Rate and Cardiograph which claim to be able to measure heart rate by reading color changes on arterial pressure change. They generally require you to place your finger over the flash led and camera.

From my tests the values don't quite match rates measured traditionally (by feeling arterial pressure changes, counting them over 10 seconds and multiplying by 6) but I'm not a physician so I might be measuring incorrectly.

So, are these apps more precise than I can be or is it the other way around?


Solution 1:

The operative term here is photoplethysmograph. It's the term for what your phone is acting as.

Basically, your blood vessels rhythmically dilate and contract with every heart beat. This is measurable as either a change in reflectance or transmittance (depending on how the photoplethysmograph is configured. In the case of your phone, it's measuring reflectance, as the light is adjacent to the camera.

In medical instruments, it's generally done with infrared light, because blood absorbs shortwave infrared more then red or white light, and your tissue is more transparent to infrared. However, there is no reason it wouldn't work with a phone camera.

If done properly, it should be as or more accurate then manual measurement. However, a phone is not a proper photoplethysmograph, so the realistic achievable accuracy is likely dependent on a number of factors, including camera performance, proximity of the illuminating LED to the camera lens, and the algorithm used to extract the pulse from the video return.

However, you need to be aware that all photoplethysmographs are very sensitive to mechanical movement. It is essential that you hold your finger as still as possible, and avoid moving the phone relative to the finger.

Solution 2:

Very interesting question! I wasn't even aware that these kind of apps exist. In order to answer your question, I decided to put one of them to the test against a chest strap heart rate monitor. (I was using a Garmin brand chest monitor similar to this one.) I was using both heart rate monitors at the same time when I performed my tests and compared their values.

I tried out Instant Heart Rate Monitor, and it turns out that it is remarkably accurate... when it worked.

The main problem was that it only worked about 1 in 30 times. Every other time it would say it could either not detect a finger, or it started detecting the pulse, but then never finished the process.

When it did work, though, the results were surprisingly similar to my other heart rate monitor. After performing 5 (non-scientific) tests, it was off by an average of only 1.26%. Had it worked more consistently, I would have tried it out more than 5 times.

A few notes:

  • While it is beeping and gathering info, the heart rate it shows is usually way off from your actual heart rate. Sometimes it's almost exactly half your real heart rate.
  • The final heart rate it outputs is usually very close to your actual heart rate.

Therefore, you should only trust the last heart rate value it outputs (i.e. the average).

Solution 3:

I suspected that apps which rely on the flashlight and camera weren't more precise than a manual check (assuming you are used to checking your BPM regularly). Event if they rely on a technique used by medical apparatus (photoplethysmography).

But then I did some testing.

Testing

vs myself

Comparing with my own readings the results seem to be consistent with a ~5 BPM margin based on the approximation due to the multiplication. I actually am less precise than these apps.

2 different iPhones models with flash

The results of some testing using 2 different iPhone models, the iPhone 4 and the iPhone 4S shows that on 6 readings (3 per device), I had a difference of 2 to 0 bpm with less than ideal conditions.

vs a Gamin Forerunner

Testing of one of the apps agains a GPS sports watch with BPM Showed very close results on a dozen readings. A 3 BPM difference was be the least precise it would get in when testing in good conditions, most of the time they are off by 1 or 2.

Conclusion

Convenient and precise

If you don't press hard on the camera (to avoid blocking blood flow), remain calm, not moving and there are no strong variations in lighting around you you should get a decent reading without having to concentrate on feeling the blood flow and counting the heart beats.

history

Apart from the convenience, I believe the real advantage of these apps is the tracking and history of your bpm.

If you want to use these apps before and after exercising they will be enough. Based on my tests, the accuracy seems very good (better than I believed) if you make sure to place your finger properly, covering the camera without pressing hard as not to stop the blood flow (again this is important).

I think I will trust the iPhone from now on ;)

How To

To properly monitor your heart rate with the iPhone you must:

  • avoid testing in a place where there are high light variations
  • cover the camera and the flashlight with your finger
  • keep your finger from moving around (to avoid making the camera refocus)
  • press only very lightly to properly cover the camera (if you press too hard you will reduce the blood flow and it will be impossible to read the pulse)

As a side note. If you want a really good way of keeping track of your bpm and blood pressure this product works great on the iPhone/iPad.

Solution 4:

I have just tried an app claiming to do this and compared it to my Garmin HRM and a manual test and the figures shown on the app are in line with the other tests.

As for inanimate having a heart beat what I believe the app does is increase its sensitivity looking for a regular pulse(change in the image). Once the sensitivity goes high enough it appears to pick up background vibrations causing tiny movements in relation to the object being measured. The changes in the finger are much larger and will therefore be picked up more readily and background vibration becomes insignificant. Therefore I conclude that the claim that it is inaccurate because inanimate objects have a pulse is irrelevant.

For a quick check of heart rate such as for resting heart rate in the mornings then these apps seem good enough

Solution 5:

In some senses, the accuracy might be no better than if they had you tap out the pulses with one finger and using your other hand to palpate an easy to find artery like your carotid artery. Also note, for exercise, new low energy bluetooth 4.0 accessories are far superior hardware for detecting and reporting heart rate as well as blood pressure.

There are several technologies for measuring cardiac activity:

  • pulse detection - measures the periods of maximal flow rate from the left ventricle output.
  • blood pressure - measures the volume/flow of fluid in your arteries due to the pumping action of the left ventricle.
  • two lead pulse detection - measures electrical changes at the surface of the skin on the chest
  • 12 lead ECG/EKG - determines actual heard muscle activity in different chambers of the heart by comparing the timing and amplitude of electrical signals from the surface of the skin from multiple measurement sites carefully positioned around your torso.

With the right filtering of the camera input, The motion of your finger (side to side as well as pressing harder or less hard) is pretty easily distinguishable by the camera when all the algorithm needs to do is tell when fresh blood is washing into your fingertips. By the time the blood gets to the extremity - the pulse is less strong so this is one of the worst areas to try to detect pulses (but it's very convenient and the skin is fairly translucent to the LED flash and oxygenated blood does reflect the light so it does work fairly well in some body types).

I like the wahoo fitness blue heart rate belt and especially the Mio Link wrist band, so the market for hardware custom designed for this should overtake any software that runs on iOS directly and uses the camera for measurement. For a quick read on your pulse, these camera apps should be decent enough to get that job done. Apple watch also is a nice alternative to using your iPhone camera to record pulse data.