1
\$\begingroup\$

I'm trying to understand whether it is possible to detect human's heartbeat from a distance.

enter image description here

I'm not a specialist, but it seems to me that the following issues must be addressed:

  1. Very sensitive microphone is required
  2. The signal I want to detect will be weak compared to the noise - I need to figure out how the noise may be filtered (or, maybe there is no need for filtering?). Preliminary information about the signal: I know the overall shape of one "pulse", and the spectra of possible periods (both between "pulses" and inside a single "pulse").
  3. Some algorithm which decides whether heartbeat is heard needs to be implemented.

I read this discussion about UltraHigh sensitive mics, but its too broad for a beginner. It also lacks any mention of algorithmic factors.

I'll be glad to hear your opinions on my intent in general, the segmentation into three stages and any other stuff which you think may be helpfull.

Also, links to any serious papers on the subjects will be appreciated.

EDIT:

I've been reading about lock-in amplifiers for other purpose, but then I though: maybe LIA can also be used for heartbeat detection? The problem is that LIA work on sinusoidal signals, while the heartbeat is non-sinusoidal. Is there a way to use an existing LIAs (or implement a custom one) to be used in such an application?

\$\endgroup\$
2
  • 4
    \$\begingroup\$ It wouldn't be negative SNR. You mean SNR < 1. Also, what exactly are you wanting to be answered? You want to know how to build the system from start to finish? That's a bit much to ask don't you think? \$\endgroup\$ Commented Jul 4, 2013 at 8:46
  • 2
    \$\begingroup\$ I meant negative in dB. I want to get as much references and advices as possible from people who has experience in this kind of systems. \$\endgroup\$
    – Vasiliy
    Commented Jul 4, 2013 at 10:59

5 Answers 5

4
\$\begingroup\$

I do not think that you can detect a heartbeat using audio. Let me explain why I think that:

  1. Detecting a heartbeat from across a room would require a mic with a huge dynamic range. By dynamic range, I am talking about the difference between the quietest sound and the loudest sound the mic can detect. Just having a very sensitive mic won't help if the mic clips when the air conditioning kicks in, or someone clears their throat. A good studio recording mic will have a dynamic range of around 130 dB. My educated guess is that you will need at least 150 dB, or possibly even much higher. I have never seen a mic that works at better than 150 dB.
  2. You need to detect very faint signals. How faint? I regularly listen to digital systems with a noise floor of between -100 dBFS and -140 dBFS, and I frequently amplify the signal so all I am listening to is the noise floor and I've never heard a heartbeat. I have heard basic breath noise from across a room, but never a heart beat. So IF it is possible to hear a heartbeat from across the room then it is certainly way down there. Way below what current professional audio systems are able to do.
  3. Detecting a sine wave that is below the noise floor is possible. Of course the lower down the sine wave is, the harder it is to detect it. Most of the time, if the sine wave is 10 or 20 dB below the noise floor it is moderately difficult to detect. In theory, you can detect sine wave any arbitrary level below the noise floor, but it requires more time to detect (more audio samples). It might take many seconds of audio, possibly minutes, to detect a sine wave that is very low.
  4. A heart beat is not a sine wave, and it does not qualify as a periodic wave because there are huge variations (from an audio processing point of view) in both pulse rate and audio frequency content. While the variations are not huge over the span of several seconds, it can be huge over the many seconds to minutes required to pick out a sine wave-- and since it isn't a sine wave it gets several orders of magnitude harder.
  5. The electronics for this will be amazingly difficult. Designing a simple mic preamplifier that feeds an ADC with better than 130 dB SNR is beyond all but about 10 people in the United States. You'll need a SNR of 150 to 190 dB, which is several orders of magnitude harder than that! And there are no ADC's with that level of performance.

I suggest that you use an alternative method of detecting a pulse.

Here is a video of a system developed by MIT that magnifies motion, and does a very good job of detecting heartbeats.

Also, there are many other visual systems that work more like a pulse oximeter but with a standard camera. The iPhone App store has many of these. There has also been some research into using something like the XBox Kinect, or similar systems, for detecting a pulse. Any of these systems would be much easier (but still not easy) to implement than using an acoustic system.

\$\endgroup\$
1
  • \$\begingroup\$ thx for this elaborated answer. I'll try to check out other schemes then. \$\endgroup\$
    – Vasiliy
    Commented Jul 29, 2013 at 14:28
2
\$\begingroup\$

The heartbeat graph that you have is misleading. What you posted is from an EKG, and shows the electrical impulses that drive the heartbeat. If you actually analyse the sound of the heartbeat, you will find it to be quite different.

An acoustic heartbeat consists of short bursts of a low frequency sine wave. For adults and children the frequency lies between 30 and 40 Hz - I don't know what frequency a baby's heart would have. The bursts occur where your drawing shows the big peaks.

You would want to use a long FIR bandpass filter to capture only between 30 and 40 Hz. An analog filter or an IIR that is steep enough to be useful will cause ringing that will mask the signal.

A normal PC soundcard with a cheap microphone can pick up a heart beat over a couple of inches - and this with a typical noisy PC under the desk.

For the microphone you would want something that is primarily sensitive to lower frequencies, and you would want to shield it from louder sounds at higher frequencies. A shotgun microphone would probably help - they tend attenuate high frequencies and the directionality will help to reject other noise sources.

1 Meter range should be possible. You've gotten me curious, now, so I'll have to give this a go sometime.

\$\endgroup\$
1
\$\begingroup\$

I would answer that, yes, it is possible to detect human heart beat from a distance. It is used by special forces and it's not based on sound. But on the Doppler effect of a moving chest applied on a THz radiation.

google for XAVER400.

\$\endgroup\$
1
  • 1
    \$\begingroup\$ Very interesting concept - this Xaver400 is a kind of stuff you expect to see in SciFi movies. However, this is no what I'm looking for. \$\endgroup\$
    – Vasiliy
    Commented Jul 22, 2013 at 13:46
1
\$\begingroup\$

This is essentially a passive sonar signal analysis problem. Yes it is possible to detect a signal that is a number of dB below the ambient noise floor (I won't say how far as I would like to keep my liberty). You can improve your detection by having a number of spatially separated detectors (microphones) and then generating a number of acoustic "beams" from the time delayed signals received by each of the sensors. This allows the acoustic array to "look" in a number of different directions simultaneously.

Your next challenge is to devise an algorithm that can recognise the desired signal in the noise. I can think of a one that might work but in order to detect the signal under the noise it must be present for a reasonably long time and at an essentially constant pulse rate while the signal is integrated sufficiently to allow its detection.

\$\endgroup\$
2
  • \$\begingroup\$ Can you explain the point with number of mics? How exactly does it help me to detect a heartbeat? The pulse rate may be assumed to be at constant rate for a few minutes. \$\endgroup\$
    – Vasiliy
    Commented Jul 22, 2013 at 13:51
  • \$\begingroup\$ If you have a number of microphones then you can, by combining suitably delayed versions of the signals from the sensors, filter out sounds that are not from the desired direction. This additional directionality allows effectively amplifies the desired signal and makes it easier to detect. en.wikipedia.org/wiki/Beamforming \$\endgroup\$
    – uɐɪ
    Commented Jul 23, 2013 at 10:39
0
\$\begingroup\$

How far is "a distance"? You might be able to make it work across a quiet room with a directional ("shotgun" or parabolic) microphone. The electronics side is probably best done with commercial high-grade audio equipment and a DAC with as many bits as you can afford. There's no real way you can filter the noise out in hardware, although some sort of low pass filter in the few hundred Hz range might help. If there are mobile phones around, you will have annoying TDMA noise at 217Hz.

Recovering the signal with autocorrelation etc. is mostly a signal processing problem, for which the software SE would probably be better.

\$\endgroup\$
1
  • \$\begingroup\$ The distances I had in mind are 1-2 meters. Can you suggest any particular mic? \$\endgroup\$
    – Vasiliy
    Commented Jul 22, 2013 at 13:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.