  The multiple fundamental frequency detection problem and the source
separation problem from a single-channel signal containing multiple oscillatory
components and a nonstationary noise are both challenging tasks. To extract the
fetal electrocardiogram (ECG) from a single-lead maternal abdominal ECG, we
face both challenges. In this paper, we propose a novel method to extract the
fetal ECG signal from the single channel maternal abdominal ECG signal, without
any additional measurement. The algorithm is composed of three main
ingredients. First, the maternal and fetal heart rates are estimated by the
de-shape short time Fourier transform, which is a recently proposed nonlinear
time-frequency analysis technique; second, the beat tracking technique is
applied to accurately obtain the maternal and fetal R peaks; third, the
maternal and fetal ECG waveforms are established by the nonlocal median. The
algorithm is evaluated on a simulated fetal ECG signal database ({\em fecgsyn}
database), and tested on two real databases with the annotation provided by
experts ({\em adfecgdb} database and {\em CinC2013} database). In general, the
algorithm could be applied to solve other detection and source separation
problems, and reconstruct the time-varying wave-shape function of each
oscillatory component.
