Hi, all, Hoping there are still some DSP folks round here despite the evil Google ban. (But I repeat myself.) I'm working on a completely noninvasive sensor for fetal blood oxygen, using optical sensing through the mom's abdomen. It's a very low SNR measurement on account of all the attenuation. The mom's heartbeat modulates her pulse-ox signal, which is much stronger than the fetus's on account of the scattering and absorption in maternal tissue. The data are several time series. The main issue is the variability of both pulses, which smear out the spectra and therefore knock the peak heights way down towards the noise. There are weak multiplicative effects between maternal and fetal signals, as you'd expect. What I'm looking to do is something like: 1. Use a digital PLL to find the time-dependent maternal pulse rate. 2. Resample the data accordingly, and notch out the first 5 or so mom harmonics. 3. Do the PLL thing on the fetal pulse, and signal average to pull out the average fetal pulse ox signal. Extra credit: sometimes the baby's pulse can cross the first or second harmonic of the mom's, and it would be good to preserve both pulse shapes accurately. Resampling a noisy signal isn't necessarily the most well-conditioned operation, so I'd welcome suggestions for just how to do this. Thanks Phil Hobbs
Recovering one irregular signal in the presence of another stronger one--*in utero* pulse ox
Started by ●May 18, 2021
Reply by ●May 18, 20212021-05-18
On Tue, 18 May 2021 18:31:28 -0400, Phil Hobbs <pcdhSpamMeSenseless@electrooptical.net> wrote:>Hi, all, > >Hoping there are still some DSP folks round here despite the evil Google >ban. (But I repeat myself.) > >I'm working on a completely noninvasive sensor for fetal blood oxygen, >using optical sensing through the mom's abdomen. It's a very low SNR >measurement on account of all the attenuation. > >The mom's heartbeat modulates her pulse-ox signal, which is much >stronger than the fetus's on account of the scattering and absorption in >maternal tissue. > >The data are several time series. The main issue is the variability of >both pulses, which smear out the spectra and therefore knock the peak >heights way down towards the noise. There are weak multiplicative >effects between maternal and fetal signals, as you'd expect. > >What I'm looking to do is something like: > >1. Use a digital PLL to find the time-dependent maternal pulse rate. > >2. Resample the data accordingly, and notch out the first 5 or so mom >harmonics. > >3. Do the PLL thing on the fetal pulse, and signal average to pull out >the average fetal pulse ox signal. > >Extra credit: sometimes the baby's pulse can cross the first or second >harmonic of the mom's, and it would be good to preserve both pulse >shapes accurately. > >Resampling a noisy signal isn't necessarily the most well-conditioned >operation, so I'd welcome suggestions for just how to do this. > >Thanks > >Phil HobbsWould an Adaptive Noise Cancelling or Adaptive Noise Reduction technique work? I'd guess that the mom's heartbeat could be isolated reasonably well as the "noise" source with potentially a separate sensor placed to minimize the fetal heartbeat, and use that as the noise to be cancelled by the ANC/ANR? Just a thought. Since the mom's heartbeat has higher SNR it seems like it could be subtracted, and an ANR/ANC would be a pretty well-established way to do that. If the mom's heartbeat needs more SNR, or the fetal heartbeat rejected more for the noise reference signal, a separate sensor or sensors might help with that. Sounds like an interesting problem, regardless. Eric
Reply by ●May 18, 20212021-05-18
Eric Jacobsen wrote:> On Tue, 18 May 2021 18:31:28 -0400, Phil Hobbs > <pcdhSpamMeSenseless@electrooptical.net> wrote: > >> Hi, all, >> >> Hoping there are still some DSP folks round here despite the evil Google >> ban. (But I repeat myself.) >> >> I'm working on a completely noninvasive sensor for fetal blood oxygen, >> using optical sensing through the mom's abdomen. It's a very low SNR >> measurement on account of all the attenuation. >> >> The mom's heartbeat modulates her pulse-ox signal, which is much >> stronger than the fetus's on account of the scattering and absorption in >> maternal tissue. >> >> The data are several time series. The main issue is the variability of >> both pulses, which smear out the spectra and therefore knock the peak >> heights way down towards the noise. There are weak multiplicative >> effects between maternal and fetal signals, as you'd expect. >> >> What I'm looking to do is something like: >> >> 1. Use a digital PLL to find the time-dependent maternal pulse rate. >> >> 2. Resample the data accordingly, and notch out the first 5 or so mom >> harmonics. >> >> 3. Do the PLL thing on the fetal pulse, and signal average to pull out >> the average fetal pulse ox signal. >> >> Extra credit: sometimes the baby's pulse can cross the first or second >> harmonic of the mom's, and it would be good to preserve both pulse >> shapes accurately. >> >> Resampling a noisy signal isn't necessarily the most well-conditioned >> operation, so I'd welcome suggestions for just how to do this. >> >> Thanks >> >> Phil Hobbs > > Would an Adaptive Noise Cancelling or Adaptive Noise Reduction > technique work? I'd guess that the mom's heartbeat could be isolated > reasonably well as the "noise" source with potentially a separate > sensor placed to minimize the fetal heartbeat, and use that as the > noise to be cancelled by the ANC/ANR? > > Just a thought. Since the mom's heartbeat has higher SNR it seems > like it could be subtracted, and an ANR/ANC would be a pretty > well-established way to do that. If the mom's heartbeat needs more > SNR, or the fetal heartbeat rejected more for the noise reference > signal, a separate sensor or sensors might help with that. > > Sounds like an interesting problem, regardless.Thanks. The ANC thing has been tried, and helps a fair amount, but so far not enough on account of the low SNR of both parts of the signal. Folks have been trying to do this for over 20 years--their papers always declare victory, but there are no commercial products despite a widely-recognized need. (This is my first whack at it.) The instantaneous SNRs of both signals are frequently way, way down in the mud, like 2 dB for the baby and 15 dB for the mum. Thus the uncertainty in the maternal pulse signal can make a mess of the remainder. The pulse waveforms themselves are slowly varying, but the pulse rates can change +-20% within 10 beats or so. Thus my hope is to do the DPLL thing to get the phase vs. time for the mom's pulse, do some signal averaging on the resampled signal to recover a decent estimate of the 'true' maternal signal. Thanks again Phil Hobbs -- Dr Philip C D Hobbs Principal Consultant ElectroOptical Innovations LLC / Hobbs ElectroOptics Optics, Electro-optics, Photonics, Analog Electronics Briarcliff Manor NY 10510 http://electrooptical.net http://hobbs-eo.com
Reply by ●May 19, 20212021-05-19
Am 19.05.21 um 00:31 schrieb Phil Hobbs:> I'm working on a completely noninvasive sensor for fetal blood oxygen, > using optical sensing through the mom's abdomen. It's a very low SNR > measurement on account of all the attenuation. > > The mom's heartbeat modulates her pulse-ox signal, which is much > stronger than the fetus's on account of the scattering and absorption in > maternal tissue. > > The data are several time series. The main issue is the variability of > both pulses, which smear out the spectra and therefore knock the peak > heights way down towards the noise. There are weak multiplicative > effects between maternal and fetal signals, as you'd expect.How about using a second channel to detect the mother's heartbeat? For example an ECG channel? It's not perfectly synchronized, though, the delay between ECG and pulse oxymetry is influenced by the blood pressure. So it only works if the blood pressure is constant. Christian
Reply by ●May 19, 20212021-05-19
Christian Gollwitzer wrote:> Am 19.05.21 um 00:31 schrieb Phil Hobbs: >> I'm working on a completely noninvasive sensor for fetal blood oxygen, >> using optical sensing through the mom's abdomen. It's a very low SNR >> measurement on account of all the attenuation. >> >> The mom's heartbeat modulates her pulse-ox signal, which is much >> stronger than the fetus's on account of the scattering and absorption >> in maternal tissue. >> >> The data are several time series. The main issue is the variability >> of both pulses, which smear out the spectra and therefore knock the >> peak heights way down towards the noise. There are weak >> multiplicative effects between maternal and fetal signals, as you'd >> expect. > > How about using a second channel to detect the mother's heartbeat? For > example an ECG channel? It's not perfectly synchronized, though, the > delay between ECG and pulse oxymetry is influenced by the blood > pressure. So it only works if the blood pressure is constant. > > Christian > >Thanks. We can isolate the mom's pulse-ox signal, and as Eric suggested, it's possible to use that for adaptive noise cancellation except that (as far as we gather from the literature) it doesn't work well enough for a technological measurement. We can get the mom's pulse rate vs. time from that, which will be a big help. We really need to resample at the child's pulse rate in order to concentrate its signal into as narrow a bandwidth as possible to improve the SNR. Folks have been trying this sort of thing since the late '90s without producing a commercial instrument. Despite the optimistic tone of all scientific papers, this leads me to suppose that although an expert can make it work once or twice, getting it to work many times in non-expert hands is hard. There's also a lot of physiological variability, including thickness of skin and subcutaneous fat, presentation (normal, breech, reverse, etc.) When you're working with 150-dB path loss, a 2% change will lose you half your signal. :( Cheers Phil Hobbs -- Dr Philip C D Hobbs Principal Consultant ElectroOptical Innovations LLC / Hobbs ElectroOptics Optics, Electro-optics, Photonics, Analog Electronics Briarcliff Manor NY 10510 http://electrooptical.net http://hobbs-eo.com
Reply by ●May 30, 20212021-05-30
Phil Hobbs wrote:> Hi, all, > > Hoping there are still some DSP folks round here despite the evil Google > ban. (But I repeat myself.) > > I'm working on a completely noninvasive sensor for fetal blood oxygen, > using optical sensing through the mom's abdomen. It's a very low SNR > measurement on account of all the attenuation. > > The mom's heartbeat modulates her pulse-ox signal, which is much > stronger than the fetus's on account of the scattering and absorption in > maternal tissue. > > The data are several time series. The main issue is the variability of > both pulses, which smear out the spectra and therefore knock the peak > heights way down towards the noise. There are weak multiplicative > effects between maternal and fetal signals, as you'd expect. > > What I'm looking to do is something like: > > 1. Use a digital PLL to find the time-dependent maternal pulse rate. > > 2. Resample the data accordingly, and notch out the first 5 or so mom > harmonics. > > 3. Do the PLL thing on the fetal pulse, and signal average to pull out > the average fetal pulse ox signal. > > Extra credit: sometimes the baby's pulse can cross the first or second > harmonic of the mom's, and it would be good to preserve both pulse > shapes accurately. > > Resampling a noisy signal isn't necessarily the most well-conditioned > operation, so I'd welcome suggestions for just how to do this. > > Thanks > > Phil HobbsI'd be tempted to take a cuff-style/smartwatch heartrate reading from Ma and use that as the top of a search tree for the other frequencies. "Top of a search tree" isn't really all that much help but it's a start. The thing I'd wonder is whether the fetal ox cycle isn't a harmonic of Ma's respiratory cycle. Actually, if it's not that's kind of an even more interesting question. > There are weak multiplicative > effects between maternal and fetal signals, as you'd expect. This makes me think of an old Stroboconn/Peterson tuner. Obviously, those are solving a much simpler problem. I'd be tempted to play with the aliasing/sidebands. The peterson/Stroboconn had a base model of the frequency under measurement and provided a visual , intentionally aliased display of the difference. It literally wagonwheeled. This probably isn't much help, but it's clearly a profound problem. Seems like a thing more for metaphor than for mechanism. Find the story and the mechanism reveals itself. I'd almost bet that there's a model in the brain of every neonatalist. -- Les Cargill
Reply by ●June 2, 20212021-06-02
Les Cargill wrote:> Phil Hobbs wrote: >> Hi, all, >> >> Hoping there are still some DSP folks round here despite the evil >> Google ban. (But I repeat myself.) >> >> I'm working on a completely noninvasive sensor for fetal blood oxygen, >> using optical sensing through the mom's abdomen. It's a very low SNR >> measurement on account of all the attenuation. >> >> The mom's heartbeat modulates her pulse-ox signal, which is much >> stronger than the fetus's on account of the scattering and absorption >> in maternal tissue. >> >> The data are several time series. The main issue is the variability >> of both pulses, which smear out the spectra and therefore knock the >> peak heights way down towards the noise. There are weak >> multiplicative effects between maternal and fetal signals, as you'd >> expect. >> >> What I'm looking to do is something like: >> >> 1. Use a digital PLL to find the time-dependent maternal pulse rate. >> >> 2. Resample the data accordingly, and notch out the first 5 or so mom >> harmonics. >> >> 3. Do the PLL thing on the fetal pulse, and signal average to pull out >> the average fetal pulse ox signal. >> >> Extra credit: sometimes the baby's pulse can cross the first or second >> harmonic of the mom's, and it would be good to preserve both pulse >> shapes accurately. >> >> Resampling a noisy signal isn't necessarily the most well-conditioned >> operation, so I'd welcome suggestions for just how to do this. >> >> Thanks >> >> Phil Hobbs > > > I'd be tempted to take a cuff-style/smartwatch heartrate reading from Ma > and use that as the top of a search tree for the other frequencies. "Top > of a search tree" isn't really all that much help but it's a start.We get the mum's pulse more or less for free, right on her abdomen. That has the added advantage that it has the right phase and pulse shape, so that we can strobe the signal to increase the SNR. (You win by multiplying the signal by a cleaned-up version of itself.)> The thing I'd wonder is whether the fetal ox cycle isn't a harmonic of > Ma's respiratory cycle. Actually, if it's not that's kind of an even > more interesting question.Nope, they both vary independently, with the child's running about 1.5x and 2d the mum's unless the child is in respiratory distress, when they can cross over. That's obviously an important constraint, because you _really_ need a good measurement then.> > > There are weak multiplicative > > effects between maternal and fetal signals, as you'd expect. > > This makes me think of an old Stroboconn/Peterson tuner. Obviously, > those are solving a much simpler problem. I'd be tempted to play > with the aliasing/sidebands. > > The peterson/Stroboconn had a base model of the frequency under > measurement and provided a visual , intentionally aliased display > of the difference. It literally wagonwheeled. > > This probably isn't much help, but it's clearly a profound problem. > Seems like a thing more for metaphor than for mechanism. Find the story > and the mechanism reveals itself. I'd almost bet that there's a model in > the brain of every neonatalist.So overall it looks like the best-guess algorithm is something like: Use one set of LEDs and several photodetectors at different spacings (corresponding to different depths) Oversample several channels massively Run a digital PLL on the mum and reconstruct a filtered pulse shape. Strobe the data with the reconstructed pulse, and refine the mum's pulse rate vs. time. Resample the noisy data so that the mum's pulse is perfectly periodic Notch her out of the picture, and (possibly) resample back to the original uniform spacing Repeat the two-step DPLL/strobe thing on the child's pulse Resample the data so the child's pulse is periodic Average N periods to improve SNR, possibly using a data window sideways if the noise floor isn't flat (That is, if there are K samples in each of N periods, use a window function W(n), not W(k).) Extract the child's pulse ox signal. There may be some stable iterative way of improving the pulse rate estimates, I don't know. We'll have probably a good 15 minutes' worth of data, and perhaps several hours. Fun problem--tire kicking welcome. Cheers Phil Hobbs -- Dr Philip C D Hobbs Principal Consultant ElectroOptical Innovations LLC / Hobbs ElectroOptics Optics, Electro-optics, Photonics, Analog Electronics Briarcliff Manor NY 10510 http://electrooptical.net http://hobbs-eo.com