System and method for maternal uterine activity detection

CN115802927BActive Publication Date: 2026-09-18NUVO GROUP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202180023476.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-02-05
Filing Date
2021-02-05
Publication Date
2026-09-18
Estimated Expiration
2041-02-05

AI Technical Summary

Technical Problem

然而,这些传感器佩戴起来会不舒服,当肥胖的孕妇佩戴时会产生不可靠的数据

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115802927B_ABST
    Figure CN115802927B_ABST
Patent Text Reader

Abstract

A method comprising receiving an acoustic input; generating signal channels from the acoustic input; pre-processing data in the signal channels; extracting S1-S2 peaks from the pre-processed data; removing artifacts and outliers from the S1-S2 peaks; generating S1-S2 signal channels based on the pre-processed S1-S2 peaks in the signal channels; selecting two or more S1-S2 signal channels; and combining the selected two or more S1-S2 signal channels to produce an acoustic uterine monitoring signal.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Cross-citation of related applications

[0002] This application is an international (PCT) patent application that relates to and claims the benefit of co-owned, co-pending U.S. Provisional Patent Application No. 62 / 970,447, filed February 5, 2020, entitled “SYSTEMS AND METHODS FOR MATERNAL UTERINE ACTIVITY DETECTION”, the contents of which are incorporated herein by reference in their entirety. Technical Field

[0003] This invention generally relates to the monitoring of pregnant women. More specifically, this invention relates to the analysis of sensed acoustic data to generate a computational representation of uterine activity (e.g., uterine contractions). Background Technology

[0004] Uterine contractions are a temporary process in which the uterine muscles shorten and the spacing between muscle cells decreases. These structural changes in the muscles lead to increased pressure within the uterine cavity, allowing the fetus to be pushed down into a lower position towards delivery. During uterine contractions, the structure of the myometrial cells (i.e., uterine cells) changes, and the uterine wall thickens. Figure 1A An illustration of a relaxed uterus is shown, in which the uterine muscle walls are relaxed. Figure 1B An illustration shows a contracting uterus, where the uterine muscle walls contract and push the fetus toward the cervix.

[0005] Uterine contractions are monitored to assess the progress of labor. Typically, this is done using two sensors: a dynamometer, a strain gauge-based sensor located on the pregnant woman's abdomen; and an ultrasound transducer, also located on the abdomen. The dynamometer's signal is used to provide a labor map (“TOCO”), which is analyzed to identify uterine contractions, while the ultrasound transducer's signal is used to detect fetal heart rate, maternal heart rate, and fetal movement. However, these sensors can be uncomfortable to wear and can produce unreliable data when worn by obese pregnant women. Summary of the Invention

[0006] In some embodiments, the present invention provides a specially programmed computer system comprising at least the following components: a non-transitory memory electrically storing computer-executable program code; and at least one computer processor, which, when executing the program code, becomes a specially programmed computational processor configured to perform at least the following operations: receiving multiple bioelectrical potential signals collected at multiple locations on the pregnant woman's abdomen; detecting R-wave peaks in the bioelectrical signals; extracting maternal electrocardiogram (“ECG”) signals from the bioelectrical signals; determining the R-wave amplitude in the maternal ECG signals; creating an R-wave amplitude signal for each maternal ECG signal; calculating an average of all R-wave amplitude signals; and normalizing the average to generate a uterine electrical monitoring (“EUM”) signal. In some embodiments, the operation further includes identifying at least one uterine contraction based on a corresponding peak in the EUM signal.

[0007] In some embodiments, the present invention provides a method comprising: receiving multiple bioelectrical potential signals collected at multiple locations on the abdomen of a pregnant woman; detecting R-wave peaks in the bioelectrical signals; extracting maternal ECG signals from the bioelectrical signals; determining the R-wave amplitude in the maternal ECG signals; creating an R-wave amplitude signal for each maternal ECG signal; calculating an average of all R-wave amplitude signals; and normalizing the average to generate an EUM signal. In some embodiments, the method further includes identifying at least one uterine contraction based on a corresponding peak in the EUM signal.

[0008] In one embodiment, a computer-implemented method includes: receiving a plurality of raw acoustic inputs via at least one computer processor, wherein each raw acoustic input is received from a corresponding acoustic sensor among a plurality of acoustic sensors, wherein each of the plurality of acoustic sensors is positioned to measure a corresponding raw acoustic input of a pregnant human subject; generating a plurality of signal channels from the plurality of raw acoustic inputs via the at least one computer processor, wherein the plurality of signal channels includes at least three signal channels; preprocessing corresponding signal channel data of each signal channel via the at least one computer processor to generate a plurality of preprocessed signal channels, wherein each preprocessed signal channel includes corresponding preprocessed signal channel data; extracting corresponding plurality of R-peaks from the preprocessed signal channel data of each preprocessed signal channel via the at least one computer processor to generate a plurality of R-peak datasets, wherein each R-peak dataset includes corresponding plurality of R-peaks; and removing at least one of the following from the plurality of R-peak datasets via the at least one computer processor: (a) at least one signal artifact and (b) at least one outlier data point, wherein the at least one signal artifact... The image is one of motion-related artifacts and baseline artifacts; the at least one computer processor replaces the at least one signal artifact, the at least one outlier data point, or both with at least one statistical value, the at least one statistical value being determined based on a corresponding R-wave peak dataset from which the at least one signal artifact, the at least one outlier data point, or both have been removed; the at least one computer processor generates a corresponding R-wave signal dataset for the corresponding R-wave signal channel at a predetermined sampling rate based on each corresponding interpolated R-wave peak dataset, to generate multiple R-wave signal channels; the at least one computer processor selects at least one selected first R-wave signal channel and at least one selected second R-wave signal channel from the multiple R-wave signal channels based on at least one correlation between (a) the corresponding R-wave signal dataset of at least one specific first R-wave signal channel and (b) the corresponding R-wave signal dataset of at least one specific second R-wave signal channel; and the at least one computer processor generates acoustic uterine monitoring data representing acoustic uterine monitoring signals based at least on the corresponding R-wave signal dataset of the selected first R-wave signal channel and the corresponding R-wave signal dataset of the selected second R-wave signal channel.

[0009] In one embodiment, the computer-implemented method further includes: sharpening acoustic uterine monitoring data using at least one computer processor to generate a sharpened acoustic uterine monitoring signal. In one embodiment, the sharpening step is omitted if the uterine electrical monitoring data is calculated based on a selected, damaged uterine electrical monitoring signal channel from the uterine electrical monitoring signal channels. In one embodiment, the computer-implemented method further includes post-processing the sharpened electrical monitoring signal data to generate a post-processed uterine electrical monitoring signal. In one embodiment, the sharpening step includes identifying a set of peaks in the uterine electrical monitoring signal data; determining the significance of each peak; removing peaks with significance less than at least one threshold significance value from the set of peaks; calculating a mask based on the remaining peaks in the set of peaks; smoothing the mask based on a moving average window to generate a smoothing mask; and adding the smoothing mask to the uterine electrical monitoring signal data to generate sharpened uterine electrical monitoring signal data. In one embodiment, the at least one threshold significance value includes at least one threshold significance value selected from a group consisting of absolute significance values ​​and relative significance values, the relative significance value being calculated based on the maximum significance of the peaks in the peak set. In one implementation, the mask includes zero values ​​outside the remaining peak region and non-zero values ​​inside the remaining peak region, wherein the non-zero values ​​are calculated based on a Gaussian function.

[0010] In one embodiment, at least one filtering step in the preprocessing step includes applying at least one filter selected from the group consisting of a DC removal filter, a power line filter, and a high-pass filter.

[0011] In one implementation, the extraction step includes receiving a set of maternal ECG peaks from a pregnant human subject; and identifying the R-wave peaks in each preprocessed signal channel within a predetermined time window before and after each maternal ECG peak in the set as the maximum absolute value in each preprocessed signal channel within the predetermined time window.

[0012] In one implementation, the step of removing at least one of signal artifacts or outlier data points includes removing at least one electromyography artifact by a process comprising the following steps: identifying at least one damaged peak in one of a plurality of R-wave peak datasets based on at least one damaged peak having an inter-peak root mean square value greater than a threshold; and replacing the damaged peak with the median, wherein the median is a local median or a global median.

[0013] In one implementation, the step of removing at least one of signal artifacts and outlier data points includes removing at least one baseline artifact by a process comprising the following steps: identifying a point of change in an R-peak in one of a plurality of R-peak datasets; subdividing one of the plurality of R-peak datasets into a first portion preceding the point of change and a second portion following the point of change; determining a first root mean square value for the first portion; determining a second root mean square value for the second portion; determining an equalization factor based on the first and second root mean square values; and modifying the first portion by multiplying the R-peaks in the first portion by the equalization factor.

[0014] In one implementation, the step of removing at least one of signal artifacts or outliers includes removing at least one outlier based on a Grubbs test for outliers.

[0015] In one implementation, the step of generating a corresponding R-wave dataset based on each corresponding R-wave peak dataset includes interpolation between the R-wave peaks of each corresponding R-wave peak dataset, wherein the interpolation between the R-wave peaks includes interpolation using an interpolation algorithm, wherein the interpolation algorithm is selected from a group consisting of a cubic spline interpolation algorithm and a conformal piecewise cubic interpolation algorithm.

[0016] In one embodiment, the step of selecting at least one first R-wave signal channel and at least one second R-wave signal channel includes: selecting candidate R-wave signal channels from the R-wave signal channels based on the percentile of the previous intervals in which each R-wave signal channel experienced contact problems; grouping the selected candidate R-wave signal channels into multiple pairs, wherein each pair includes two selected candidate R-wave signal channels that are independent of each other; calculating the correlation value for each pair; and selecting at least one pair of candidate R-wave signal channels as at least one selected first R-wave signal channel and at least one selected second R-wave signal channel based on at least one pair of correlation values ​​having a correlation value exceeding a threshold.

[0017] In one embodiment, the step of calculating the uterine electrophysiological monitoring signal includes calculating a predetermined percentile of the signal as selected at least one first R-wave signal channel and at least one selected second R-wave signal channel. In one embodiment, the predetermined percentile is the 80th percentile.

[0018] In one implementation, the statistical value is one of the local median, the global median, and the average.

[0019] In some embodiments, a computer-implemented method includes: receiving a plurality of raw acoustic inputs via at least one computer processor, wherein each raw acoustic input is received from a corresponding acoustic sensor among a plurality of acoustic sensors, and wherein each of the plurality of acoustic sensors is positioned to measure a corresponding raw acoustic input of a pregnant human subject; generating a plurality of signal channels from the plurality of raw acoustic inputs via the at least one computer processor, wherein the plurality of signal channels includes at least three signal channels; and preprocessing corresponding signal channel data of each signal channel via the at least one computer processor to generate a plurality of preprocessed signal channels. The signal channels, wherein each preprocessed signal channel includes corresponding preprocessed signal channel data; the at least one computer processor extracts corresponding multiple S1-S2 peaks from the preprocessed signal channel data of each preprocessed signal channel to generate multiple S1-S2 peak datasets, wherein each S1-S2 peak dataset includes corresponding multiple S1-S2 peaks; the at least one computer processor removes at least one of the following from the multiple S1-S2 peak datasets: (a) at least one signal artifact and (b) at least one outlier data point, wherein the at least one signal artifact is one of motion-related artifacts and baseline artifacts; the at least one computer processor extracts corresponding multiple S1-S2 peaks from the multiple S1-S2 peak datasets to generate multiple S1-S2 peak datasets. A computer processor replaces the at least one signal artifact, the at least one outlier data point, or both with at least one statistical value to generate multiple interpolated S1-S2 peak datasets, wherein the at least one statistical value is determined based on a corresponding S1-S2 peak dataset from which the at least one signal artifact, the at least one outlier data point, or both have been removed; the at least one computer processor generates corresponding S1-S2 signal datasets at a predetermined sampling rate based on each corresponding interpolated S1-S2 peak dataset for use in corresponding S1-S2 signal channels to generate multiple S1-S2 signal channels; the at least one computer processor, based on (a) to (a) at least one correlation between a corresponding S1-S2 signal dataset of a specific first S1-S2 signal channel and (b) a corresponding S1-S2 signal dataset of at least one specific second S1-S2 signal channel; selecting at least one selected first S1-S2 signal channel and at least one selected second S1-S2 signal channel from the plurality of S1-S2 signal channels; and generating acoustic uterine monitoring data representing acoustic uterine monitoring signals by the at least one computer processor based at least on the corresponding S1-S2 signal datasets of the selected first S1-S2 signal channel and the corresponding S1-S2 signal datasets of the selected second S1-S2 signal channel.

[0020] In some embodiments, the computer implementation method further includes: sharpening the acoustic uterine monitoring data using the at least one computer processor to generate a sharpened acoustic uterine monitoring signal. In some embodiments, the computer implementation method further includes: determining, using the at least one computer processor, whether the acoustic uterine monitoring data is calculated based on a selected, damaged acoustic uterine monitoring signal channel, wherein if the acoustic uterine monitoring data is calculated based on a selected, damaged acoustic uterine monitoring signal channel, the step of sharpening the acoustic uterine monitoring data using the at least one computer processor is omitted. In some embodiments, the computer implementation method further includes post-processing the sharpened acoustic monitoring signal data to generate a post-processed acoustic uterine monitoring signal. In some embodiments, the step of sharpening the acoustic uterine monitoring data using the at least one computer processor includes: identifying peak sets in the acoustic uterine monitoring signal data;

[0021] The process involves: determining the significance of each peak; removing peaks from the peak set that have a significance value less than at least one threshold significance value; calculating a mask based on the remaining peaks of the peak set; smoothing the mask based on a moving average window to produce a smoothed mask; and adding the smoothed mask to the acoustic uterine monitoring signal data to produce the sharpened acoustic uterine monitoring signal data. In some embodiments, the at least one threshold significance value includes at least one threshold significance value selected from the group consisting of absolute significance values ​​and relative significance values, the relative significance value being calculated based on the maximum significance of the peaks in the peak set. In some embodiments, the mask includes zero values ​​outside the remaining peak region and non-zero values ​​inside the remaining peak region, wherein the non-zero values ​​are calculated based on a Gaussian function.

[0022] In some embodiments, the at least one filtering step of the preprocessing step includes applying at least one filter selected from the group consisting of a DC removal filter, a power line filter, and a high-pass filter.

[0023] In some implementations, the step of extracting the corresponding plurality of S1-S2 peaks by the at least one computer processor includes: receiving a set of maternal ECG peaks from the pregnant human subject; and identifying the S1-S2 peaks in each preprocessed signal channel within a predetermined time window before and after each maternal ECG peak in the set of maternal ECG peaks as the maximum absolute value in each preprocessed signal channel within the predetermined time window.

[0024] In some implementations, the step of removing at least one of signal artifacts or outlier data points includes removing at least one motion artifact by a process comprising the following steps: identifying at least one damaged peak in one of the plurality of S1-S2 peak datasets based on the at least one damaged peak having an inter-peak root mean square value greater than a threshold; and replacing the damaged peak with a median, wherein the median is a local median or a global median.

[0025] In some implementations, the step of removing at least one of signal artifacts and outlier data points includes removing at least one baseline artifact by a process comprising the following steps: identifying a change point of the S1-S2 peaks in one of the plurality of S1-S2 peak datasets; subdividing one of the plurality of S1-S2 peak datasets into a first portion preceding the change point and a second portion following the change point; determining a first root mean square value of the first portion; determining a second root mean square value of the second portion; determining an equalization factor based on the first root mean square value and the second root mean square value; and modifying the first portion by multiplying the S1-S2 peaks in the first portion by the equalization factor.

[0026] In some implementations, the step of removing at least one of signal artifacts or outliers includes removing at least one outlier based on a Grubbs test for outliers.

[0027] In some implementations, the step of generating a corresponding S1-S2 dataset based on each corresponding S1-S2 peak dataset includes interpolation between the S1-S2 peaks in each corresponding S1-S2 peak dataset, wherein the interpolation between the S1-S2 peaks includes interpolation using an interpolation algorithm selected from the group consisting of a cubic spline interpolation algorithm and a conformal piecewise cubic interpolation algorithm.

[0028] In some implementations, the step of selecting at least one first S1-S2 signal channel and at least one second S1-S2 signal channel from the plurality of S1-S2 signal channels includes: identifying a contact problem in each of the plurality of S1-S2 signal channels; determining the percentile of the previous interval of each of the plurality of S1-S2 signal channels experiencing a contact problem; selecting candidate S1-S2 signal channels from the plurality of S1-S2 signal channels based on the percentile of the previous interval of each of the plurality of S1-S2 signal channels experiencing a contact problem; grouping the selected candidate S1-S2 signal channels into a plurality of pairs, wherein each pair includes two selected candidate S1-S2 channels that are independent of each other; calculating a correlation value for each pair; identifying at least one pair having a correlation value exceeding a threshold correlation value; selecting a first candidate S1-S2 signal channel from each of the identified at least one pair as at least one selected first S1-S2 signal channel; and selecting a second candidate S1-S2 signal channel from each of the identified at least one pair as at least one selected second S1-S2 signal channel.

[0029] In some embodiments, the step of calculating the acoustic uterine monitoring signal includes calculating the acoustic uterine monitoring signal, that is, at each time point, calculating a predetermined percentile for all selected at least one first S1-S2 signal channels and at least one selected second S1-S2 signal channel at that time point. In some embodiments, the predetermined percentile is the 80th percentile.

[0030] In some implementations, the statistical value is one of the local median, the global median, and the average. Attached Figure Description

[0031] Figure 1A A representative uterus in a non-contracted state is shown;

[0032] Figure 1B A representative uterus in a contracted state is shown;

[0033] Figure 2 A flowchart of an exemplary method is shown;

[0034] Figure 3 It shows according to Figure 2 An exemplary garment comprising an exemplary method including a plurality of biopotential sensors, which can be used to sense data to be analyzed;

[0035] Figure 4A A front view showing the location of an electrocardiogram sensor pair on the abdomen of a pregnant woman according to some embodiments of the present invention;

[0036] Figure 4BA side view showing the location of an electrocardiogram sensor pair on the abdomen of a pregnant woman according to some embodiments of the present invention;

[0037] Figure 5 Exemplary biopotential signals before and after pretreatment are shown;

[0038] Figure 6A An exemplary biopotential signal after preprocessing is shown, and the detected R-wave peak is indicated;

[0039] Figure 6B This shows the peak re-detection Figure 6A Exemplary biopotential signals;

[0040] Figure 6C It shows Figure 6B A magnified view of a portion of the signal;

[0041] Figure 6D This shows the results after examining the detected peaks. Figure 6B Exemplary biopotential signals;

[0042] Figure 7A A portion of an exemplary biopotential signal, including the identified R-wave peak, is shown.

[0043] Figure 7B A portion of an exemplary biopotential signal is shown, in which P waves, QRS complexes, and T waves are identified.

[0044] Figure 7C An exemplary biopotential signal including mixed maternal and fetal data is shown;

[0045] Figure 7D It shows Figure 7C A portion of the signal and the initial template;

[0046] Figure 7E It shows Figure 7C A portion of the signals and the corresponding templates;

[0047] Figure 7F It shows Figure 7C A portion of the signal, as well as the current template and the zeroth iteration of the adaptation;

[0048] Figure 7G It shows Figure 7C A portion of the signal, including the current template, the zeroth iteration of the adaptation, and the first iteration of the adaptation;

[0049] Figure 7H It shows Figure 7C A portion of the signal, as well as the current template and the parent ECG signal reconstructed based on the current template;

[0050] Figure 7I The adaptation process is shown as a logarithm of the error signal, plotted relative to the number of iterations;

[0051] Figure 7J The extracted maternal ECG signal is shown;

[0052] Figure 8 An example of filtered parent ECG signal is shown;

[0053] Figure 9 An exemplary parent ECG signal is shown, with the R-wave peak marked;

[0054] Figure 10A An exemplary R-wave amplitude signal is shown;

[0055] Figure 10B An exemplary modulated R-wave amplitude signal is shown;

[0056] Figure 11A An exemplary modulated R-wave amplitude signal and the result of applying a moving average filter to it are shown;

[0057] Figure 11B An exemplary filtered R-wave amplitude signal of multiple channels within the same time window is shown;

[0058] Figure 12A It shows the basis Figure 11B The first exemplary normalized uterine electrical signal generated by the exemplary filtered R-wave amplitude signal shown;

[0059] Figure 12B The first labor map signal recorded during the same time period as the exemplary normalized uterine electrical signal is shown, with self-reported contractions marked;

[0060] Figure 13 A flowchart of the second exemplary method is shown;

[0061] Figure 14A The second labor diagram signal is shown, with self-reported contractions marked;

[0062] Figure 14B It shows from and Figure 14A The second exemplary uterine electrical signal obtained from bioelectrical potential data recorded within the same time period shown;

[0063] Figure 15A The third labor diagram signal is shown, with self-reported contractions marked;

[0064] Figure 15B It shows from and Figure 15A The third exemplary uterine electrical signal is derived from bioelectrical potential data recorded within the same time period shown.

[0065] Figure 16A The fourth labor diagram signal is shown, with self-reported contractions marked;

[0066] Figure 16B It shows from and Figure 16A The fourth exemplary uterine electrical signal is derived from bioelectrical potential data recorded within the same time period shown.

[0067] Figure 17A The fifth labor diagram signal is shown, with self-reported contractions marked;

[0068] Figure 17B It shows from and Figure 17A The fifth exemplary uterine electrical signal is derived from bioelectrical potential data recorded within the same time period shown.

[0069] Figure 18A An exemplary raw bioelectric potential dataset is shown;

[0070] Figure 18B It shows the basis Figure 18A An example of a filtered dataset of an example original dataset;

[0071] Figure 18C An exemplary raw bioelectric potential dataset is shown;

[0072] Figure 18D It shows the basis Figure 18C An example of a filtered dataset of an example original dataset;

[0073] Figure 18E An exemplary raw bioelectric potential dataset is shown;

[0074] Figure 18F It shows the basis Figure 18E An example of a filtered dataset of an example original dataset;

[0075] Figure 18G An exemplary raw bioelectric potential dataset is shown;

[0076] Figure 18H It shows the basis Figure 18G An example of a filtered dataset of an example original dataset;

[0077] Figure 19A An exemplary filtered dataset with input peak positions is shown;

[0078] Figure 19B The extracted peak positions are shown. Figure 19A An example filtered dataset;

[0079] Figure 20AAn example filtered dataset is shown;

[0080] Figure 20B It shows Figure 20A An exemplary filtered dataset, with a corresponding representation of the parent motion envelope and the inter-peak absolute sum;

[0081] Figure 20C It shows how to get from Figure 20A An example corrected dataset is generated by removing electromyography artifacts from a filtered dataset;

[0082] Figure 21A An exemplary correction dataset including baseline artifacts is shown;

[0083] Figure 21B The image shows the result after removing baseline artifacts. Figure 21A An example correction dataset;

[0084] Figure 22A An exemplary corrected dataset including outlier data points is shown;

[0085] Figure 22B The diagram shows the data after removing outlier data points. Figure 22A An example correction dataset;

[0086] Figure 23A An exemplary R-wave peak signal is shown;

[0087] Figure 23B It shows the basis Figure 23A An exemplary R-wave signal generated from an exemplary R-wave peak signal;

[0088] Figure 24A A set of exemplary candidate R-wave signal channels is shown;

[0089] Figure 24B It shows the basis Figure 24A A set of exemplary candidate R-wave signal channels; a set of exemplary selected signal channels.

[0090] Figure 25A It shows the basis Figure 24B The example uterine electrical monitoring signal generated by a set of selected signal channels is shown.

[0091] Figure 25B It shows that by... Figure 25A An exemplary corrected uterine electrical monitoring signal generated by applying drift baseline removal to an exemplary uterine electrical monitoring signal;

[0092] Figure 26 It shows the basis Figure 25B An exemplary normalized uterine electrical monitoring signal generated by an exemplary corrected uterine electrical monitoring signal;

[0093] Figure 27A An exemplary normalized uterine electrophysiological monitoring signal is shown;

[0094] Figure 27B It shows the basis Figure 27A An exemplary sharpening mask generated from an exemplary normalized uterine electrophysiological monitoring signal;

[0095] Figure 27C It shows the basis Figure 27A Exemplary normalized uterine electrophysiological monitoring signals and Figure 27B An exemplary sharpening mask generates an exemplary sharpening of the uterine electrophysiological monitoring signal;

[0096] Figure 28 An exemplary post-processing uterine electrophysiological monitoring signal is shown;

[0097] Figure 29 It shows the corresponding Figure 28 An example of post-processing uterine electrophysiological monitoring signals for labor graph signals;

[0098] Figure 30 A flowchart of the third exemplary method is shown;

[0099] Figure 31A An example preprocessed dataset is shown;

[0100] Figure 31B It shows Figure 31A A magnified view of a portion of an exemplary preprocessed dataset;

[0101] Figure 32A The R-peaks extracted from an exemplary preprocessed dataset are shown;

[0102] Figure 32B A magnified view of the R-peak extracted from an exemplary preprocessed dataset is shown;

[0103] Figure 32C An exemplary R-wave amplitude signal is shown;

[0104] Figure 32D An exemplary R-wave amplitude signal within a large time window is shown;

[0105] Figure 33 An example filtered R-wave amplitude signal is shown;

[0106] Figure 34 Four data channels of exemplary R-wave data are shown;

[0107] Figure 35A The sixth labor diagram signal is shown;

[0108] Figure 35B It shows from and Figure 35AThe first exemplary uterine acoustic signal is derived from acoustic data recorded within the same time period shown.

[0109] Figure 36A The seventh labor diagram signal is shown;

[0110] Figure 36B It shows from and Figure 36A The second exemplary uterine acoustic signal is derived from the acoustic data recorded within the same time period shown.

[0111] Figure 37A The eighth labor diagram signal is shown;

[0112] Figure 37B It shows from and Figure 37A The third exemplary uterine acoustic signal is derived from acoustic data recorded within the same time period shown. Detailed Implementation

[0113] Other objects and advantages of the invention will become apparent from the following description taken in conjunction with the accompanying drawings, amidst the disclosed benefits and improvements. Detailed embodiments of the invention are disclosed herein; however, it should be understood that the disclosed embodiments are merely illustrative and the invention can be practiced in various forms. Furthermore, each example given in connection with the various embodiments of the invention is illustrative and not restrictive.

[0114] Throughout the specification and claims, the following terms take their explicitly associated meanings unless the context clearly specifies otherwise. The phrases “in one embodiment,” “in an embodiment,” and “in some embodiments” as used herein do not necessarily refer to the same embodiment, although they may. Furthermore, the phrases “in another embodiment” and “in some other embodiments” as used herein do not necessarily refer to different embodiments, although they may. Therefore, as described below, various embodiments of the invention can be readily combined without departing from the scope or spirit of the invention.

[0115] As used herein, the term “based on” is not exclusive and allows for consideration based on additional factors not described unless the context explicitly states otherwise. Furthermore, throughout the specification, the meanings of “a,” “an,” and “the” include the plural. The meaning of “in…” includes both “in…” and “on…”. The scope discussed herein includes end values ​​(e.g., the scope of “between 0 and 2” includes 0 and 2 as well as all values ​​in between).

[0116] As used herein, the term “contact area” refers to the contact area between the skin and skin contact points of a pregnant human subject, i.e., the surface area through which an electric current can pass between the skin and skin contact points of a pregnant human subject.

[0117] In some embodiments, the present invention provides a method for extracting signals resembling a labor map from bioelectrical potential data, i.e., data describing the potentials recorded at points on human skin using skin contact (commonly referred to as electrodes). In some embodiments, the present invention provides a method for detecting uterine contractions from bioelectrical potential data. In some embodiments, bioelectrical potential data is obtained using non-contact electrodes located at or near desired points on the human body.

[0118] In some embodiments, the present invention provides a system for detecting, recording, and analyzing cardiac electrical activity data from pregnant human subjects. In some embodiments, multiple electrodes configured to detect fetal electrocardiogram signals are used for recording cardiac activity data. In some embodiments, multiple electrodes and multiple acoustic sensors configured to detect fetal electrocardiogram signals are used for recording cardiac activity data.

[0119] In some embodiments, multiple electrodes configured to detect fetal electrocardiogram (ECG) signals are attached to the abdomen of a pregnant human subject. In some embodiments, the multiple electrodes configured to detect fetal ECG signals are attached directly to the abdomen. In some embodiments, the multiple electrodes configured to detect fetal ECG signals are included in an article, such as a belt, patch, etc., and the article is worn or placed on the body of the pregnant human subject. Figure 3 An exemplary garment 300 is shown, which includes eight electrodes 310 incorporated within the garment 300 such that, when a subject wears the garment 300, the electrodes are located around the abdomen of a pregnant human subject. In some embodiments, the garment 300 includes four acoustic sensors 320 incorporated within the garment 300 such that, when a subject wears the garment 300, the acoustic sensors are located around the abdomen of a pregnant human subject. In some embodiments, each acoustic sensor 320 is one acoustic sensor described in U.S. Patent No. 9,713,430. Figure 4A A front view showing the location of eight electrodes 310 on the abdomen of a pregnant woman according to some embodiments of the present invention is shown. Figure 4B A side view of eight electrodes 310 on the abdomen of a pregnant woman according to some embodiments of the present invention is shown.

[0120] Figure 2A flowchart of an exemplary method 200 of the present invention is shown. In some embodiments, an exemplary computing device of the present invention, programmed / configured according to method 200, is operable to receive raw biopotential data measured by a plurality of electrodes located on the skin of a pregnant human subject as input, and analyze such input to generate a signal resembling a labor map. In some embodiments, the number of electrodes is between 2 and 10. In some embodiments, the number of electrodes is between 2 and 20. In some embodiments, the number of electrodes is between 2 and 30. In some embodiments, the number of electrodes is between 2 and 40. In some embodiments, the number of electrodes is between 4 and 10. In some embodiments, the number of electrodes is between 4 and 20. In some embodiments, the number of electrodes is between 4 and 30. In some embodiments, the number of electrodes is between 4 and 40. In some embodiments, the number of electrodes is between 6 and 10. In some embodiments, the number of electrodes is between 6 and 20. In some embodiments, the number of electrodes is between 6 and 30. In some embodiments, the number of electrodes is between 6 and 40. In some embodiments, the number of electrodes is between 8 and 10. In some embodiments, the number of electrodes is between 8 and 20. In some embodiments, the number of electrodes is between 8 and 30. In some embodiments, the number of electrodes is between 8 and 40. In some embodiments, the number of electrodes is 8. In some embodiments, the exemplary computing device of the present invention, programmed / configured according to method 200, is operable to receive maternal ECG signals (e.g., by separation from fetal ECG signals forming part of the same original bioelectrical potential data) already extracted from raw bioelectrical potential data, as input. In some embodiments, the exemplary computing device of the present invention is programmed / configured according to method 200 via instructions stored in a non-transitory computer-readable medium. In some embodiments, the exemplary computing device of the present invention includes at least one computer processor that, when the instructions are executed, becomes a specially programmed computer processor programmed / configured according to method 200.

[0121] In some embodiments, the exemplary computing device of the present invention is programmed / configured to continuously execute one or more steps of method 200 along a moving time window. In some embodiments, the moving time window has a predefined length. In some embodiments, the predetermined length is sixty seconds. In some embodiments, the exemplary computing device of the present invention is programmed / configured to continuously execute one or more steps of method 200 along a moving time window of length between one second and one hour. In some embodiments, the length of the moving time window is between 30 seconds and 30 minutes. In some embodiments, the length of the moving time window is between 30 seconds and 10 minutes. In some embodiments, the length of the moving time window is between 30 seconds and 5 minutes. In some embodiments, the length of the moving time window is approximately 60 seconds. In some embodiments, the length of the moving time window is 60 seconds.

[0122] In step 210, the exemplary computing device of the present invention is programmed / configured to receive raw biopotential data as input and preprocess it. In some embodiments, the raw biopotential data is recorded using at least two electrodes located near the skin of the pregnant subject. In some embodiments, at least one electrode is a signal electrode. In some embodiments, at least one electrode is a reference electrode. In some embodiments, the reference electrode is located at a point remote from the subject's uterus. In some embodiments, biopotential signals are recorded at each of several points around the pregnant subject's abdomen. In some embodiments, biopotential signals are recorded at each of eight points around the pregnant subject's abdomen. In some embodiments, biopotential data is recorded at a rate of 1000 samples per second. In some embodiments, biopotential data is upsampled at a rate of 1000 samples per second. In some embodiments, biopotential data is recorded at a sampling rate between 100 and 10000 samples per second. In some embodiments, biopotential data is upsampled at a sampling rate between 100 and 10000 samples per second. In some embodiments, preprocessing includes baseline removal (e.g., using a median filter and / or a moving average filter). In some embodiments, preprocessing includes low-pass filtering. In some implementations, preprocessing includes an 85Hz low-pass filter. In some implementations, preprocessing includes power line interference removal. Figure 5 A portion of the raw biopotential data signal is shown before and after preprocessing.

[0123] In step 220, the exemplary computing device of the present invention is programmed / configured to detect parent R-wave peaks in the preprocessed bioelectric potential data generated by performing step 210. In some embodiments, R-wave peaks are detected in 10-second segments of each data signal. In some embodiments, R-wave peak detection begins by analyzing derivatives, thresholds, and distances. In some embodiments, detecting R-wave peaks in each data signal includes calculating the first derivative of the data signal in the 10-second segment, identifying R-wave peaks in the 10-second segment by identifying zero crossovers of the first derivatives, and excluding peaks identified by either: (a) an absolute value less than a predetermined R-wave peak threshold, or (b) a distance less than a predetermined R-wave peak threshold distance between adjacent identified R-wave peaks. In some embodiments, R-wave peak detection is performed in a manner similar to that described in ECG peak detection in U.S. Patent No. 9,392,952, the contents of which are incorporated herein by reference in their entirety. Figure 6A The preprocessed biopotential data signal is shown, with the R-wave peaks detected as described above indicated by asterisks.

[0124] In some embodiments, the detection of the R-wave peak in step 220 continues with a peak re-detection process. In some embodiments, the peak re-detection process includes automatic gain control (“AGC”) analysis to detect windows with significantly different peak numbers. In some embodiments, the peak re-detection process includes cross-correlation analysis. In some embodiments, the peak re-detection process includes both AGC analysis and cross-correlation analysis. In some embodiments, AGC analysis is adapted to overcome false negatives. In some embodiments, cross-correlation analysis is adapted to remove false positives. Figure 6B The data signal after peak redetection is shown, and the redetected R-wave peak is indicated by an asterisk as described above. Figure 6C It shows Figure 6B A magnified view of a portion of the data signal.

[0125] In some implementations, the detection of the R-wave peak in step 220 continues to construct a global peak array. In some implementations, the global peak array is created from multiple data channels (e.g., each channel corresponds to one or more electrodes 310). In some implementations, the signal from each channel is assigned a quality score based on the relative energy of the peak. In some implementations, the relative energy of the peak refers to the energy of the peak relative to the total energy of the signal being processed. In some implementations, the energy of the peak is calculated by calculating the root mean square (“RMS”) of the QRS complex containing the R-wave peak, and the energy of the signal is calculated by calculating the RMS of the signal. In some implementations, the relative energy of the peak is calculated by calculating the signal-to-noise ratio of the signal. In some implementations, the channel with the highest quality score is considered the “best guide.” In some implementations, the global peak array is constructed based on the best guide, and signals from other channels are also considered based on a voting mechanism. In some implementations, after the global peak array has been constructed based on the best guide, each remaining channel “votes” for each peak. For a given peak included in the global peak array built based on the best guide, if such a peak is included (e.g., as detected in the peak detection described above), the channel votes positively for that given peak (e.g., gives a vote value "1"), and if such a peak is not included, it votes negatively (e.g., gives a vote value "0"). Peaks receiving more votes are considered higher quality peaks. In some implementations, if a peak has more votes than a threshold, it is retained in the global peak array. In some implementations, the threshold number of votes is half the total number of channels. In some implementations, if a peak has fewer votes than a threshold, additional tests are performed on the peak. In some implementations, the additional tests include calculating the correlation between the peak in the best guide channel and a template calculated as the average of all peaks. In some implementations, if the correlation is greater than a first threshold correlation value, the peak is retained in the global peak array. In some implementations, the first threshold correlation value is 0.9. In some implementations, if the correlation is less than the first threshold correlation value, further correlations are calculated for all guides that have given positive votes to that peak (i.e., not just the best guide peak). In some implementations, if the further correlation is greater than a second threshold correlation value, the peak is retained in the global peak array, and if the further correlation is less than the second threshold correlation value, the peak is excluded from the global peak array. In some implementations, the second threshold correlation value is 0.85.

[0126] In some embodiments, once created, the global peak array is examined using physiological measurements. In some embodiments, the examination is performed using an exemplary computing device of the present invention described in U.S. Patent No. 9,392,952, the entire contents of which are incorporated herein by reference. In some embodiments, the physiological parameters include RR intervals, mean, and standard deviation; and heart rate and heart rate variability. In some embodiments, the examination includes cross-correlation to overcome false negatives. Figure 6D The data signal after creating and inspecting the global peak array as described above is shown. Figure 6D In the diagram, the peaks indicated by circled asterisks represent previously detected R-wave peaks (e.g., as shown in the diagram). Figure 6A As shown in the figure, the circles without asterisks represent the R-wave peaks detected by cross-correlation to overcome the aforementioned false negatives.

[0127] In some implementations, if the initial step of R-wave detection is unsuccessful (i.e., if no R-wave peak is detected on a given sample), an Independent Component Analysis (“ICA”) algorithm is applied to the data sample, and the preceding part of step 220 is repeated. In some implementations, exemplary ICA algorithms are, for example, but not limited to, the FAST ICA algorithm. In some implementations, for example, the FAST ICA algorithm is utilized according to Hyvarinen et al., “Independent component analysis: Algorithms and applications,” Neural Networks 13(4-5):411-430(2000)).

[0128] Continue to refer to Figure 2 In step 230, the exemplary computing device of the present invention is programmed / configured to extract a maternal ECG signal from a signal including maternal and fetal data. In some embodiments, when the exemplary computing device of the present invention programmed / configured to perform method 200 receives a maternal ECG signal as input after extraction from the mixed maternal-fetal data, the exemplary computing device of the present invention is programmed / configured to skip step 230. Figure 7AA portion of the signal is shown, where the R-wave peak has been identified, and both maternal and fetal signals are included. Not limited to any particular theory, a major challenge involved in extracting maternal ECG signals is that each maternal heartbeat is different from all other maternal heartbeats. In some implementations, this challenge is addressed by identifying each maternal heartbeat using an adaptive reconstruction scheme. In some implementations, the extraction process begins by segmenting the ECG signal into signals from three sources. In some implementations, this segmentation involves using curve length transformation to locate the P wave, QRS complex, and T wave. In some implementations, the curve length transformation is as described in Zong et al., “A QT Interval Detection Algorithm Based On ECG Curve Length Transform,” Computers In Cardiology 33:377-380 (October 2006). Figure 7B An exemplary ECG signal including these components is shown.

[0129] After the curve length transformation, step 230 continues by extracting the parent signal using an adaptive template. In some embodiments, the template adaptation is used to isolate the current heartbeat. In some embodiments, the extraction of the parent signal using an adaptive template is performed as described in U.S. Patent No. 9,392,952, the entire contents of which are incorporated herein by reference. In some embodiments, the process includes starting with the current template and using an iterative process to adjust the current template to reach the current heartbeat. In some embodiments, for each part of the signal (i.e., the P wave, QRS complex, and T wave), a multiplier (referred to as P_mult, QRS_mult, and T_mult, respectively) is defined. In some embodiments, shift parameters are also defined. In some embodiments, the extraction uses the Levenberg-Marquardt nonlinear least mean square algorithm, as follows:

[0130]

[0131] In some implementations, the cost function is as follows:

[0132] E=l|φ m -φ c || 2

[0133] In the above expression, φ m The ECG value represents the current heart rate. c The ECG indicates a reconstruction.

[0134] In some implementations, the method provides a local, stable, and repeatable solution. In some implementations, iteration continues until the relative remaining energy reaches a threshold. In some implementations, the threshold is between 0 dB and -40 dB. In some implementations, the threshold is between -10 dB and -40 dB. In some implementations, the threshold is between -20 dB and -40 dB. In some implementations, the threshold is between -30 dB and -40 dB. In some implementations, the threshold is between -10 dB and -30 dB. In some implementations, the threshold is between -10 dB and -20 dB. In some implementations, the threshold is between -20 dB and -40 dB. In some implementations, the threshold is between -20 dB and -30 dB. In some implementations, the threshold is between -30 dB and -40 dB. In some implementations, the threshold is between -25 dB and -35 dB. In some implementations, the threshold is approximately -20 dB. In some implementations, the threshold is approximately -20 dB.

[0135] Figure 7C An exemplary signal including mixed maternal and fetal data is shown. Figure 7D It shows Figure 7C A portion of the signal and an initial template used for comparison. Figure 7E It shows Figure 7C The signal section and the adaptation template used for comparison. Figure 7F It shows Figure 7C A portion of the signal, the current template, and the zeroth iteration of the adaptation. Figure 7G It shows Figure 7C A portion of the signal, the current template, the zeroth adaptive iteration, and the first adaptive iteration. Figure 7H It shows Figure 7C A portion of the signal, the current template, and the ECG signal reconstructed based on the current template (e.g., the parent ECG signal). Figure 7I The adaptive process of the logarithm of the error signal and the number of iterations is shown. Figure 7J The extracted maternal ECG signal is shown.

[0136] Continue to refer to Figure 2In step 240, the exemplary computing device of the present invention is programmed / configured to perform signal purging on the parent signal extracted in step 230. In some embodiments, the purging in step 240 includes filtering. In some embodiments, filtering includes removing the baseline using a moving average filter. In some embodiments, filtering includes low-pass filtering. In some embodiments, low-pass filtering is performed between 25 Hz and 125 Hz. In some embodiments, low-pass filtering is performed between 50 Hz and 100 Hz. In some embodiments, low-pass filtering is performed at 75 Hz. Figure 8 A portion of an exemplary filter matrix ECG is shown after step 240 is executed.

[0137] Continue to refer to Figure 2 In step 250, the exemplary computing device of the present invention is programmed / configured to calculate the R-wave amplitude of the filtered parent ECG signal generated by the execution of step 240. In some embodiments, the R-wave amplitude is calculated based on the parent ECG peak detected in step 220 and the parent ECG signal extracted in step 230. In some embodiments, step 250 includes calculating the amplitude of various R-waves. In some embodiments, the amplitude is calculated as a value of the parent ECG signal (e.g., signal amplitude) at each detected peak location. Figure 9 An exemplary extracted maternal ECG signal is shown, where the R-wave peak is marked with a circle.

[0138] Continue to refer to Figure 2 In step 260, the exemplary computing device of the present invention is programmed / configured to create an R-wave amplitude signal over time based on the R-wave amplitude calculated in step 250. In some embodiments, the calculated R-wave peaks are not sampled uniformly over time. Therefore, in some embodiments, step 260 is performed to resample the R-wave amplitudes in such a way that these amplitudes will be sampled uniformly over time (e.g., such that the time difference between every two adjacent samples is constant). In some embodiments, step 260 is performed by concatenating the R-wave amplitude values ​​calculated in step 250 and resampling the concatenated R-wave amplitude values. In some embodiments, resampling includes interpolation with a defined query time point. In some embodiments, interpolation includes linear interpolation. In some embodiments, interpolation includes spline interpolation. In some embodiments, interpolation includes cubic interpolation. In some embodiments, the query point defines the time point at which interpolation should occur. Figure 10A An exemplary R-wave amplitude signal is shown, based on the R-wave amplitude from step 250, created in step 260. Figure 10A In the middle, the maternal ECG and Figure 8 Similar to the diagram, the detected R-wave peaks are represented by circles, and the R-wave amplitude signal is a curve connecting the circles. Figure 10B The modulation of the R-wave amplitude signal within a larger time window is shown.

[0139] Continue to refer to Figure 2 In step 270, the exemplary computing device of the present invention is programmed / configured to remove the R-wave amplitude signal by applying a moving average filter. In some embodiments, a moving average filter is applied to remove high-frequency variations in the R-wave amplitude signal. In some embodiments, the moving average filter is applied over a predetermined time window. In some embodiments, the length of the time window is between one second and ten minutes. In some embodiments, the length of the time window is between one second and one minute. In some embodiments, the length of the time window is between one second and 30 seconds. In some embodiments, the time window has a length of twenty seconds. Figure 11A It shows Figure 10B The R-wave amplitude signal, generated by the application of a moving average filter, is shown as a thick line along the middle of the R-wave amplitude signal. As described above, in some embodiments, multiple data channels are considered as inputs to method 200. Figure 11B The graph shows the filtered R-wave amplitude signals of multiple channels within the same time window.

[0140] Continue to refer to Figure 2 In step 280, the exemplary computing device of the present invention is programmed / configured to calculate all filtered R-wave signals per unit time (e.g., such as...). Figure 11B The average signal (shown). In some embodiments, a single average signal is calculated at each time point where the sample exists. In some embodiments, the average signal is the 80th percentile of all signals at each time point. In some embodiments, the average signal is the 85th percentile of all signals at each time point. In some embodiments, the average signal is the 90th percentile of all signals at each time point. In some embodiments, the average signal is the 95th percentile of all signals at each time point. In some embodiments, the average signal is the 99th percentile of all signals at each time point. In some embodiments, the result of this averaging is a single signal sampled uniformly over time. In step 290, the exemplary computing device of the present invention is programmed / configured to normalize the signal calculated in step 280. In some embodiments, the signal is normalized by dividing by a constant factor. In some embodiments, the constant factor is between 2 volts and 1000 volts. In some embodiments, the constant factor is 50 volts. Figure 12A An exemplary normalized uterine electrical signal is shown after performing steps 280 and 290. Figure 12BThis shows the labor pattern signals generated within the same time period, with self-reported contractions by the mother represented by vertical lines. (Reference) Figure 12A and 12B It can be seen that Figure 12A The peaks of the exemplary normalized uterine electrical signal in the data are... Figure 12B The self-reported contractions shown are consistent. Therefore, in some embodiments, the normalized uterine electrical monitoring (“EUM”) signal generated by performing exemplary method 200 (e.g., Figure 12A The signal shown is suitable for identifying uterine contractions. In some implementations, contractions are identified by identifying peaks in the EUM signal.

[0141] In some embodiments, the present invention relates to a specially programmed computer system comprising at least the following components: a non-transitory memory electrically storing computer-executable program code; and at least one computer processor, which, when executing the program code, becomes a specially programmed computational processor configured to perform at least the following operations: receiving multiple bioelectrical potential signals collected at multiple locations on the abdomen of a pregnant woman; detecting R-wave peaks in the bioelectrical signals; extracting maternal electrocardiogram (“ECG”) signals from the bioelectrical potential signals; determining the R-wave amplitude in the maternal ECG signals; creating an R-wave amplitude signal for each maternal ECG signal; calculating an average of all R-wave amplitude signals; and normalizing the average to generate a uterine electrical monitoring (“EUM”) signal. In some embodiments, the operation further includes identifying at least one uterine contraction based on a corresponding at least one peak in the EUM signal.

[0142] Figure 13A flowchart of an exemplary method 1300 of the present invention is shown. In some embodiments, an exemplary computing device of the present invention, programmed / configured according to method 1300, is operable to receive raw biopotential data measured by a plurality of electrodes located on the skin of a pregnant human subject as input, and analyze such input to generate a signal resembling a labor map. In some embodiments, the number of electrodes is between 2 and 10. In some embodiments, the number of electrodes is between 2 and 20. In some embodiments, the number of electrodes is between 2 and 30. In some embodiments, the number of electrodes is between 2 and 40. In some embodiments, the number of electrodes is between 4 and 10. In some embodiments, the number of electrodes is between 4 and 20. In some embodiments, the number of electrodes is between 4 and 30. In some embodiments, the number of electrodes is between 4 and 40. In some embodiments, the number of electrodes is between 6 and 10. In some embodiments, the number of electrodes is between 6 and 20. In some embodiments, the number of electrodes is between 6 and 30. In some embodiments, the number of electrodes is between 6 and 40. In some embodiments, the number of electrodes is between 8 and 10. In some embodiments, the number of electrodes is between 8 and 20. In some embodiments, the number of electrodes is between 8 and 30. In some embodiments, the number of electrodes is between 8 and 40. In some embodiments, the number of electrodes is 8. In some embodiments, the exemplary computing device of the present invention, programmed / configured according to method 1300, is operable to receive maternal ECG signals already extracted from raw bioelectrical potential data as input (e.g., by separation from fetal ECG signals forming part of the same raw bioelectrical potential data). In some embodiments, the exemplary computing device of the present invention is programmed / configured according to method 1300 via instructions stored in a non-transitory computer-readable medium. In some embodiments, the exemplary computing device of the present invention includes at least one computer processor that, when executed with instructions, becomes a specially programmed computer processor programmed / configured according to method 1300.

[0143] In some embodiments, the exemplary computing device of the present invention is programmed / configured to continuously execute one or more steps of method 1300 along a moving time window. In some embodiments, the moving time window has a predefined length. In some embodiments, the predetermined length is sixty seconds. In some embodiments, the exemplary computing device of the present invention is programmed / configured to continuously execute one or more steps of method 1300 along a moving time window of length between one second and one hour. In some embodiments, the length of the moving time window is between thirty seconds and 30 minutes. In some embodiments, the length of the moving time window is between 30 seconds and 10 minutes. In some embodiments, the length of the moving time window is between 30 seconds and 5 minutes. In some embodiments, the length of the moving time window is approximately 60 seconds. In some embodiments, the length of the moving time window is 60 seconds.

[0144] In step 1305, the exemplary computing device of the present invention is programmed / configured to receive raw biopotential data as input. Exemplary raw biopotential data includes... Figure 18A , Figure 18C , Figure 18E and Figure 18G As shown. In some embodiments, raw bioelectrical potential data is recorded using at least two electrodes located near the skin of the pregnant subject. In some embodiments, at least one electrode is a signal electrode. In some embodiments, at least one electrode is a reference electrode. In some embodiments, the reference electrode is located at a point remote from the subject's uterus. In some embodiments, bioelectrical potential signals are recorded at each of several points around the pregnant subject's abdomen. In some embodiments, bioelectrical potential signals are recorded at each of eight points around the pregnant subject's abdomen. In some embodiments, bioelectrical potential data is recorded at a rate of 1000 samples per second. In some embodiments, bioelectrical potential data is upsampled at a rate of 1000 samples per second. In some embodiments, bioelectrical potential data is recorded at a sampling rate between 100 and 10000 samples per second. In some embodiments, bioelectrical potential data is upsampled at a sampling rate between 100 and 10000 samples per second. In some embodiments, the steps of method 1300 between receiving raw data and selecting channels (i.e., steps 1310 to 1335) are performed on each of the plurality of signal channels, wherein each signal channel is generated by an exemplary computing device of the present invention as the difference between biopotential signals recorded by a particular electrode pair. In some embodiments, wherein, by using in such Figure 4A and Figure 4B Data recorded at the electrodes shown in the diagram is used to execute method 1300, with the following channels identified:

[0145] • Channel 1: A1-A4

[0146] • Channel 2: A2-A3

[0147] • Channel 3: A2-A4

[0148] • Channel 4: A4-A3

[0149] • Channel 5: B1-B3

[0150] • Channel 6: B1-B2

[0151] • Passage 7: B3-B2

[0152] • Channel 8: A1-A3

[0153] In step 1310, the exemplary computing device of the present invention is programmed / configured to preprocess signal channels determined based on raw bioelectric potential data to generate multiple preprocessed signal channels. In some embodiments, the preprocessing includes one or more filters. In some embodiments, the preprocessing includes more than one filter. In some embodiments, the preprocessing includes a DC removal filter, a power line filter, and a high-pass filter. In some embodiments, the DC removal filter removes the average value of the raw data at a current processing interval. In some embodiments, the power line filter includes a 10th-order band-stop infinite impulse response (“IIR”) filter configured to minimize any noise at a pre-configured frequency in the data. In some embodiments, the pre-configured frequency is 50 Hz, and the power line filter includes cutoff frequencies of 49.5 Hz and 50.5 Hz. In some embodiments, the pre-configured frequency is 60 Hz, and the power line filter includes cutoff frequencies of 59.5 Hz and 60.5 Hz. In some embodiments, high-pass filtering is performed by subtracting a drift baseline from the signal, wherein the baseline is calculated using a moving average window of a predetermined length. In some embodiments, the predetermined length is between 50 milliseconds and 350 milliseconds. In some implementations, the predetermined length is between 100 ms and 300 ms. In some implementations, the predetermined length is between 150 ms and 250 ms. In some implementations, the predetermined length is between 175 ms and 225 ms. In some implementations, the predetermined length is approximately 200 ms. In some implementations, the predetermined length is 201 ms (i.e., 50 samples at a sampling rate of 250 samples per second). In some implementations, the baseline includes data from frequencies below 5 Hz, so the signal is high-pass filtered at approximately 5 Hz. Based on Figure 18A , Figure 18C , Figure 18E and Figure 18G The preprocessed data generated from the raw biopotential data shown are respectively in Figure 18B , Figure 18D , Figure 18F and Figure 18H As shown in the image.

[0154] Continuing with step 1310, in some embodiments, after applying the filter described above, contact problems in each data channel are checked. In some embodiments, contact problems in each data channel are identified based on at least one of (a) the RMS of the data channel, (b) the signal-to-noise ratio (“SNR”) of the data channel, and (c) the time variation of the peak-to-relative energy of the data channel. In some embodiments, a data channel is identified as damaged if it has an RMS value greater than a threshold RMS value. In some embodiments, the threshold RMS value is two local voltage units (e.g., a value of approximately 16.5 millivolts). In some embodiments, the threshold RMS value is between one and three local voltage units. Figure 18A and Figure 18B An exemplary data channel is shown that is identified as damaged based on this. In some embodiments, a data channel is identified as damaged if its SNR value is less than a threshold SNR value. In some embodiments, the threshold SNR value is 50 dB. In some embodiments, the threshold SNR value is between 40 dB and 60 dB. In some embodiments, the threshold SNR value is between 30 dB and 70 dB. Figure 18C and Figure 18D An exemplary data channel identified as damaged based on this is shown. In some embodiments, a data channel is identified as damaged if the change in the relative R-peak energy of the data channel from one interval to another is greater than a threshold change. In some embodiments, the threshold change is 250%. In some embodiments, the threshold change is between 200% and 300%. In some embodiments, the threshold change is between 150% and 350%. Figure 18E and Figure 18F An exemplary data channel identified as damaged based on this is shown. Figure 18G and Figure 18H An exemplary data channel is shown that was not identified as damaged for any of the reasons mentioned above.

[0155] In step 1315, the exemplary computing device of the present invention is programmed / configured to extract R-wave peaks from the preprocessed signal channel to generate an R-wave peak dataset. In some embodiments, step 1315 uses a known parent ECG peak as input. In some embodiments, step 1315 uses a parent ECG peak identified according to the technology described in U.S. Patent No. 9,392,952 as input. In some embodiments, step 1315 includes refining the parent ECG peak position using the preprocessed data (e.g., generated by step 1310) and the known parent ECG peak. In some embodiments, peak position refinement includes searching for the maximum absolute value in a sample window before and after the known parent ECG peak to ensure that the R-wave peak is located at the point of maximum R-wave in each filtered signal. In some embodiments, the window includes a positive or negative predetermined time length. In some embodiments, the predetermined length is between 50 ms and 350 ms. In some embodiments, the predetermined length is between 100 ms and 300 ms. In some embodiments, the predetermined length is between 150 ms and 250 ms. In some implementations, the predetermined length is between 175 milliseconds and 225 milliseconds. In some implementations, the predetermined length is approximately 200 milliseconds. In some implementations, the window includes a positive or negative number of samples ranging from 1 sample to 100 samples. Figure 19A and Figure 19B Illustrations of known parent ECG peaks and extracted R-wave peaks from an exemplary R-wave peak dataset are shown respectively.

[0156] In step 1320, the exemplary computing device of the present invention is programmed / configured to remove electromyography (“EMG”) artifacts from data including preprocessed data generated in step 1310 and R-wave peaks extracted in step 1315. Figure 20A Exemplary preprocessed data used as input to step 1320 is shown. In some embodiments, EMG artifact removal is performed to correct peaks with high amplitude, where high-frequency energy is increased, which typically, but not always, originates from maternal EMG activity. Other sources of this energy are high power line noise and high fetal movement. In some embodiments, EMG artifact removal includes finding damaged peaks and replacing them with median values. In some embodiments, finding damaged peaks includes calculating inter-peak RMS values ​​based on the following formula:

[0157] The first step in correcting this artifact is to locate the damaged peak. This requires calculating the root mean square value between peaks, therefore:

[0158] Interpeak RMS(iPeak) = RMS(Peak signal(Peak position(iPeak)+1:Peak position(iPeak+1)-1))

[0159] In the above formula, the peak signal is a signal with R-peak height (i.e., the amplitude of the R-peak), and the peak position is a signal with R-peak time exponent (i.e., the time exponent of each R-peak) for each channel. In some implementations, there are two peak signal values ​​and two peak position values, one for finding the R-peak using filtered data and one for finding it using the opposite signal (i.e., obtained by multiplying the original signal data by -1 to produce a sign-inverted signal).

[0160] In some implementations, detecting corrupted peaks also includes identifying anomalous peaks in the maternal body activity (“MPA”) dataset. In some implementations, such a signal (hereinafter referred to as the “envelope signal”) is extracted as follows:

[0161] In some implementations, motion sensors are used to collect body activity data. In some implementations, the motion sensors include a three-axis accelerometer and a three-axis gyroscope. In some implementations, the motion sensors sample 50 times per second (50 sps). In some implementations, the sensors are located on the same sensing device (e.g., a wearable device) that includes electrodes for collecting bioelectrical potential data for performing method 1300 as a whole. Figure 3 The clothing shown is 300.

[0162] In some implementations, the raw motion data is converted. In some implementations, the raw motion data is converted to g units in the case of accelerometer raw data and to degrees per second in the case of gyroscope raw data. In some implementations, the converted data is examined to distinguish between valid and invalid signals by determining whether the raw signal is saturated (e.g., has a constant maximum possible value). In some implementations, the signal envelope is extracted as follows. First, in some implementations, positional changes in the data are examined. Since positional changes are characterized by an increase in the accelerometer baseline, in some implementations, a baseline filter is applied whenever a positional change occurs. In some implementations, filtering is performed by employing a high-pass finite impulse response (“FIR”) filter. In some implementations, the high-pass filter has a filter order of 400 and a frequency of 1 Hz. In some implementations, a low-pass FIR filter is also applied to remove any non-physiological motion. In some implementations, the low-pass filter has a filter order of 400 and a frequency of 12 Hz is also applied (400th order, fc = 12 Hz [1]). In some implementations, after filtering, the magnitude of the accelerometer vector is calculated according to the following formula:

[0163]

[0164] In this formula, AccMagnitudeVector(iSample) represents the square root of the sum of the squares of the three accelerometer axes (e.g., x, y, and z) of sample number iSample. In some implementations, the magnitude vector of the gyroscope data is calculated according to the following formula:

[0165]

[0166] In this formula, GyroManitudeVector(iSample) represents the square root of the sum of the squares of the three gyroscope axes (e.g., x, y, and z) of sample number iSample. In some implementations, after calculating the accelerometer amplitude vector and the gyroscope amplitude vector, the envelopes of the gyroscope amplitude vector and the accelerometer amplitude vector are extracted by applying an RMS window to each vector, respectively. In some implementations, the length of the RMS window is 50 samples. In some implementations, after extracting the envelopes of the gyroscope amplitude vector and the accelerometer amplitude vector, the two envelopes are averaged (e.g., mean, median, etc.) to produce the MPA motion envelope.

[0167] In some implementations, peaks in the MPA motion envelope are defined according to the following steps:

[0168] Motion envelope peak = found (motion envelope > P) 95% (Motor envelope)

[0169] Motion envelope peak start = Motion envelope peak - 2·peak width

[0170] Motion envelope peak shift = motion envelope peak + 2 * peak width

[0171] In the above text, the peak width is defined as the distance between the peak and the first point where the envelope reaches 50% of the peak value, and P 95% (x) is the 95th percentile of x. Figure 20B It shows Figure 20A The data signal, as well as the corresponding motion envelope and inter-peak absolute sum calculated above (i.e., the sum of the absolute values ​​of all samples falling between adjacent peaks).

[0172] In some implementations, peaks are identified as damaged if they appear as follows:

[0173] 1) Peaks with inter-peak RMS higher than 20 local voltage units

[0174] 2) If the signal inspection phase determines that a contact problem exists in the current processing interval, the peak-to-peak RMS is higher than 8 local voltage units.

[0175] 3) If the signal inspection phase determines that a contact problem exists in the current processing interval, but more than 50% of the points have an inter-peak RMS higher than 8 local voltage units, then a threshold of 20 local voltage units is used.

[0176] 4) Peaks located around the start and offset of the motion envelope are suspected of being damaged. The inter-peak RMS at these points should exceed 6 to confirm damage.

[0177] In some implementations, if a peak is detected as a damaged peak as described above, the peak amplitude is replaced by the median, wherein the local median around the damaged peak is calculated as follows:

[0178] Local median = median(peak signal(damaged peak - 10 : damaged peak + 10))

[0179] In some implementations, corrupted data points are excluded from the above calculations and replaced with statistical values ​​(e.g., global median, local median, average, etc.). In some implementations, if seven or fewer values ​​are needed after exclusion, the global median is used as the local median, wherein the global median is calculated using standard techniques.

[0180] Local median = Global median = Median (signal)

[0181] In some implementations, if the absolute difference between the local median and the global median exceeds 0.1, the local median is used to replace the amplitude of the damaged data point; otherwise, the global median is used to replace the amplitude of the damaged peak. Figure 20C It shows Figure 20A and Figure 20B An exemplary dataset, in which the damaged peaks are replaced as described above.

[0182] Continue to refer to Figure 13 In step 1325, the exemplary computing device of the present invention is programmed / configured to remove baseline artifacts from the signal formed by the R-wave peaks. In some embodiments, such artifacts are caused by sudden changes in the baseline or RMS. In some embodiments, such changes are typically caused by changes in the parent body position. Figure 21A An exemplary data signal including baseline artifacts is shown.

[0183] In some implementations, such artifacts are detected using a Grubbs' test for outliers, a statistical test based on the absolute deviation from the sample mean. In some implementations, to correct for this artifact, the point of change should first be identified. In some implementations, the point of change is the point where the signal RMS or mean begins to change (e.g., a data point); this point should meet the following criteria:

[0184] 1) Length (peak signal) - change point > 50

[0185] 2) prctile(peak signal(change point:end), 10)>0.01

[0186] 3a) (where P) 10% (x) is the 10th percentile of x)

[0187] or

[0188] 3b)

[0189] In some implementations, if the point of change meets the above criteria, the peak signal up to that point is changed based on the statistical value defined as follows:

[0190]

[0191] Figure 21B The image shows the result after baseline artifact removal according to step 1330. Figure 21A An example data signal.

[0192] Continue to refer to Figure 13 In step 1330, the exemplary computing device of the present invention is programmed / configured to remove outliers from the R-wave peak signal using an iterative process based on a Grubbs test for outliers. Figure 22A An exemplary R-wave peak signal including outlier data points is shown, as illustrated by a diamond shape. In some embodiments, the iterative process of step 1330 stops when either of the following two conditions occurs:

[0193] 1)

[0194] 2) Number of iterations > 4

[0195] In some implementations, the process identifies outliers in each iteration and adjusts the height of these outliers to the median of a local region surrounding the outlier peak. In some implementations, the local region is defined as a time window containing a predetermined number of samples before and after the outlier peak. In some implementations, the predetermined number of samples is between 0 and 20. In some implementations, the predetermined number of samples is 10. Figure 22B The following is shown after step 1330 is executed. Figure 22A An example data signal. It can be seen that... Figure 22A The outlier data points shown no longer appear Figure 22B In some implementations, after signal extraction, further outliers are revealed and removed, which will be described in further detail below.

[0196] Continue to refer to Figure 13In step 1335, the exemplary computing device of the present invention is programmed / configured to interpolate and extract R-wave signal data from each R-wave peak signal dataset to generate an R-wave signal channel. In some embodiments, the peak signal output in step 1330 is time-interpolated to provide a signal of 4 samples per second. Figure 23A An exemplary peak signal output from step 1330 is shown. In some embodiments, cubic spline interpolation is used to perform the interpolation. In some embodiments, in the case of large gaps in the interpolated data, there are erroneous high values, and alternatively, the interpolation method is conformal piecewise cubic interpolation. In some embodiments, conformal piecewise cubic interpolation is piecewise cubic Hermitian interpolation polynomial (“PCHIP”) interpolation. In some embodiments, the process of extracting the R-wave signal after interpolation includes identifying other outliers in the interpolated signal. In some embodiments, in this step, further outliers are identified as one of the following:

[0197] 1) Signal peaks with a height greater than one local voltage unit (i.e., the peaks in the interpolated R-wave signal, not the peaks in the original biopotential signal) and their surroundings

[0198] 2) Points located between two consecutive R peaks that are more than 10 seconds apart.

[0199] 3) The number of minutes during which serious contact problems were discovered during the data inspection phase (e.g., during steps 1320, 1335, and 1330).

[0200] In some implementations, points identified as outliers based on meeting any of the three criteria described above are discarded and replaced with statistical values ​​(e.g., local median or global median), in accordance with the process described above with reference to step 1320.

[0201] Continuing with step 1335, in some implementations, after further outlier detection, signal statistics (e.g., median, minimum, and standard deviation) are calculated, and the signal (e.g., a one-minute signal time window for a given channel) is identified as a damaged signal if any of the following conditions are met:

[0202] 1) After eliminating outliers, the signal still has peaks with amplitudes greater than one local voltage unit and standard deviations greater than 0.1.

[0203] 2) The median of the signal is greater than 0.65, and the minimum value is less than 0.6.

[0204] 3) More than 15% of the points constituting the signal have been removed as outliers.

[0205] Continuing with step 1335, after identifying the corrupted signal, a sliding RMS window is applied to the signal. In some embodiments, the size of the RMS window ranges between 25 and 200 samples. In some embodiments, the RMS window has a size of 100 samples. In some embodiments, after applying the RMS window, a first-order polynomial function is fitted to the signal and then subtracted from it to produce a clean version of the interpolated signal, which can be used in subsequent steps. Figure 23B An exemplary R-wave signal is shown after interpolation in step 1330.

[0206] Continue to refer to Figure 13 In step 1340, the exemplary computing device of the present invention is programmed / configured to perform channel selection, thereby selecting a subset of exemplary R-wave signal channels for generating uterine electrophysiological monitoring signals. In some embodiments, at the start of channel selection, all channels are considered as qualified candidates, and the possible exclusion of channels is evaluated based on the following:

[0207] 1) Exclude any channels that have had contact issues in more than 10% of the processing intervals so far.

[0208] 2) If more than 50% of the channels have already been excluded based on the above, then instead exclude all channels that have contact issues in more than 15% of the processing intervals.

[0209] If the above results in the exclusion of all channels, then conversely, retain any channel that meets the following two criteria, and exclude the remaining channels:

[0210] 1) The standard deviation of the signal is between 0 and 0.1.

[0211] 2) Signal range is less than 0.2

[0212] If the above still results in excluding all channels, then only the first condition related to standard deviation is used, while the second condition related to range is ignored. Figure 24A An exemplary dataset comprising six data channels is shown, wherein two data channels are excluded.

[0213] In some implementations, after removing some channels as described above, the remaining channels are grouped into pairs. In some implementations where channels are defined as described above, a channel pair is any one of the eight channels mentioned above. In some implementations, only pairs that are independent of each other (i.e., pairs without a common electrode) are considered. In some implementations, possible pairs are as follows:

[0214] 1. Channels 1 and 2 (A1-A4 and A2-A3)

[0215] 2. Channels 1 and 5 (A1-A4 and B1-B3)

[0216] 3. Channels 1 and 6 (A1-A4 and B1-B2)

[0217] 4. Channels 1 and 7 (A1-A4 and B3-B2)

[0218] 5. Channels 2 and 5 (A2-A3 and B1-B3)

[0219] 6. Channels 2 and 6 (A2-A3 and B1-B2)

[0220] 7. Channels 2 and 7 (A2-A3 and B3-B2)

[0221] 8. Channels 3 and 5 (A2-A4 and B1-B3)

[0222] 9. Channels 3 and 6 (A2-A4 and B1-B2)

[0223] 10. Channels 3 and 7 (A2-A4 and B3-B2)

[0224] 11. Channels 3 and 8 (A2-A4 and A1-A3)

[0225] 12. Channels 4 and 5 (A4-A3 and B1-B3)

[0226] 13. Channels 4 and 6 (A4-A3 and B1-B2)

[0227] 14. Channels 4 and 7 (A4-A3 and B3-B2)

[0228] 15. Channels 5 and 8 (B1-B3 and A1-A3)

[0229] 16. Channels 6 and 8 (B1-B2 and A1-A3)

[0230] 17. Channels 7 and 8 (B3-B2 and A1-A3)

[0231] As can be seen, for each channel pair listed above, the two channels forming the pair do not share a common electrode. In some implementations, only valid points within the channels are used to calculate the Kendall-level correlation for each channel pair. In some implementations, the Kendall correlation counts the match-level symbols for each pair of signals to test their statistical correlation.

[0232] In some implementations, channels are then selected using the following selection criteria. First, if the maximum Kendall correlation value is greater than or equal to 0.7, the selected channel is any independent channel with a Kendall correlation value greater than or equal to 0.7. However, if all selected channels were previously identified as corrupted, the output signal is identified as a corrupted signal. Furthermore, if any selected channel was previously identified as corrupted, or if any selected channel has a range greater than 0.3, any such channel is excluded from the selection.

[0233] Second, if no channel is selected according to the first criterion mentioned above, then if the maximum Kendall correlation value is greater than or equal to 0.5 but less than 0.7, the selected channel is any independent channel with a Kendall correlation value within that range. However, if all selected channels were previously identified as corrupt, the output signal is identified as a corrupt signal. Furthermore, if any selected channel was previously identified as corrupt, or if any selected channel has a range greater than 0.3, then any such channel is excluded from the selected channels.

[0234] Third, if no channel is selected according to the first or second criterion mentioned above, then if the maximum Kendall correlation value is greater than zero but less than 0.5, all channels with a Kendall correlation value greater than zero are marked as selected channels. However, if the maximum correlation value is less than 0.3, the output signal is marked as damaged, and all channels with a value greater than 0.3 are excluded.

[0235] Fourth, if no channel is selected based on the first three criteria above, exclude all channels with a range greater than 0.3 and all channels with more than 15% deletion points, select the remaining channels, and mark the output signal as a less sharp signal. This will be discussed below with reference to step 1355.

[0236] Fifth, if no channel is selected according to any of the four criteria mentioned above, then all channels except those with severe contact problems are selected. However, if the number of contact problems in the selected channels exceeds 15, the output signal is marked as damaged. Figure 24B An exemplary dataset is shown after the channel selection in step 1340.

[0237] In some implementations, channels are selected individually rather than in pairs based on their correlation values.

[0238] Continue to refer to Figure 13In step 1345, based on the selected R-wave signal channel selected in step 1340, the exemplary computing device of the present invention is programmed / configured to calculate a uterine activity signal (which may be referred to as "uterine electromonitoring" or "EUM" signal). In some embodiments, for each sample (e.g., for all selected channels, a set of data points at a given sampling time during the above-described sampling interval of four samples per second), the 80th percentile of the signal of the selected channel is calculated according to the following formula:

[0239] Combined signal (iSample)

[0240] =P 80% (Interpolated peak signal (selected channel, iSample))

[0241] Figure 25A It shows the basis Figure 24B The selected data channel is used to calculate the 80th percentile signal. In some embodiments, the drift baseline is then removed from the 80th percentile signal of the combination determined above to produce the EUM signal. In some embodiments, a moving average window is considered to find the baseline. In some embodiments, the moving average window is obtained by subtracting the average value over the window period from the EUM signal. In some embodiments, the window length is between 0 minutes and 20 minutes. In some embodiments, the window length is ten minutes. Figure 25B The baseline was removed. Figure 25A An example signal.

[0242] In step 1350, the exemplary computing system of the present invention is programmed / configured to normalize the EUM signal calculated in step 1345. In some embodiments, normalization includes multiplying the EUM signal from step 1345 by a constant. In some embodiments, the constant is between 200 and 500. In some embodiments, the constant is between 250 and 450. In some embodiments, the constant is between 300 and 400. In some embodiments, the constant is between 325 and 375. In some embodiments, the constant is approximately 350. In some embodiments, the constant is 350. In some embodiments, the constant is 1, that is, preserving the original value of the extracted 80th percentile signal. Figure 26 The following is shown according to step 1350. Figure 25B An example data signal after normalization.

[0243] In step 1355, the exemplary computing system of the present invention is programmed / configured to sharpen the normalized EUM signal generated in step 1350, thereby producing a sharpened EUM signal. In some embodiments, sharpening is performed only on signals that were not marked as damaged in previous steps; if all relevant signals are marked as damaged, the sharpening step is not performed. In some embodiments, the goal of the sharpening step is to enhance all areas with suspected shrinkage. In some embodiments, sharpening is performed as follows: First, if any peak in the EUM signal exceeds a value of 200 local voltage units, the signal is marked as damaged. Second, it is determined whether the signal was previously marked as damaged. Third, the signal baseline is removed. In some embodiments, for baseline removal, if the signal duration exceeds 10 minutes, a 10-minute moving average window is used to estimate the baseline; otherwise, the 10th percentile of the signal is used to estimate the baseline; in either case, the baseline is then subtracted from the EUM signal. Fourth, the signal baseline is defined as 30 visual voltage units. In some implementations, the signal baseline defined in this way after the normalization step provides an EUM signal in the range of 0-100 in a manner similar to the signal provided by a heart rate recorder.

[0244] Fifth, identify the peak according to one of the following:

[0245] • If the signal is identified as needing less sharpening during step 1340, the peak is defined as having a minimum height of 35 visual voltage units and a minimum width of 300 samples.

[0246] • If the signal is not identified, the peak is identified as having a minimum height of 35 visual units and a minimum width of 220 samples.

[0247] In either case, the significance of each peak is calculated using the following formula:

[0248] Peak significance = Peak height - P 10% (EUM signal)

[0249] After calculating the significance of all peaks in the sample, each peak is eliminated if it meets any of the following conditions:

[0250] • The peak significance is less than 12 and the height is less than 40 units of visual voltage.

[0251] • The significance of the peak is less than 65% of the maximum significance of all peaks in the sample.

[0252] In some implementations, additional peaks are identified by identifying any other peak (e.g., local maxima) with a minimum height of 15 visual voltage units and a minimum width of 200 samples, and then eliminating all peaks with a significance greater than 20 visual voltage units.

[0253] As described above, sharpening is performed only if all of the following conditions are met: (a) the signal is not corrupted (as described above, a "corrupted" signal is identified); (b) there are no deleted points in the signal; and (c) at least one peak is identified in the preceding part of this step. If sharpening is to be performed, each peak is eliminated before sharpening if any of the following conditions are met:

[0254] The significance of the peak is less than 10 visual voltage units.

[0255] The peak significance exceeds 35 visual voltage units.

[0256] The peak width exceeds 800 samples (i.e., 4 samples per second for 200 seconds).

[0257] • After eliminating any peaks that satisfy one of the above conditions, calculate the following values ​​for each remaining peak:

[0258] μ = Average value (peak start point, peak end point)

[0259]

[0260] t = peak start point : peak end point

[0261] Once these values ​​are calculated, a mask is created for the zero values ​​outside the peak region and the Gaussian function inside the peak region, according to the following formula:

[0262]

[0263] The mask is then smoothed using a moving average window of a predetermined length. In some embodiments, the predetermined length is between 10 and 50 seconds. In some embodiments, the predetermined length is between 20 and 40 seconds. In some embodiments, the predetermined length is between 25 and 35 seconds. In some embodiments, the predetermined length is approximately 30 seconds. In some embodiments, the predetermined length is 30 seconds. Figure 27A An exemplary EUM signal is shown. Figure 27B The above method is shown as Figure 27A An exemplary mask is created from an exemplary EUM signal. The mask is then added to the existing EUM signal to produce a sharpened EUM signal. In some implementations, simple mathematical addition is used to perform the addition. Figure 27C It shows how to... Figure 27B An example mask added to Figure 27A An exemplary sharpened EUM signal is generated from an exemplary EUM signal.

[0264] Refer again Figure 13In step 1360, post-processing is performed to generate a post-processed EUM signal. In some embodiments, post-processing includes baseline removal. In some embodiments, baseline removal includes removing the signal baseline, as described above with reference to step 1355. In some embodiments, for baseline removal, if the signal duration exceeds 10 minutes, a 10-minute moving average window is used to estimate the baseline; otherwise, the 10th percentile of the signal is used to estimate the baseline. In either case, the baseline is then subtracted from the EUM signal, and the signal baseline is defined as 30 visual voltage units. Finally, all removed values ​​are set to a value of -1 visual voltage unit, and all values ​​higher than 100 visual voltage units are set to a value of 100 visual voltage units. Figure 28 This demonstrates applying the post-processing of step 1360 to... Figure 27B An exemplary post-processing signal generated from an exemplary sharpening signal.

[0265] After step 1360, method 1300 is completed. As described above, Figure 28 An exemplary EUM signal calculated according to method 1300 is shown. Figure 29 This illustrates representative labor pattern signals obtained for the same subject within the same timeframe as bioelectric data collection, using existing techniques, and calculations based on this bioelectric data. Figure 28 The EUM signal. It can be seen that... Figure 28 and Figure 29 They are essentially similar to each other and include the same peaks, which can be interpreted as indicating contractions. Therefore, it can be seen that the result of method 1300 is an EUM signal, which can be used as a signal similar to a labor map to monitor maternal uterine activity, but it can be calculated based on non-invasively recorded bioelectric potential signals.

[0266] The following embodiments, together with the foregoing description, illustrate some implementations of the invention in a non-limiting manner.

[0267] Example

[0268] Figures 14A-17B Other comparative embodiments between birth chart data and the output of exemplary method 200 are shown. Figure 14A , Figure 15A , Figure 16A and Figure 17A Each of these diagrams shows the labor chart signal relative to time, with maternally reported contractions monitored by the labor chart and represented by vertical lines. Figure 14B , Figure 15B , Figure 16B and Figure 17B In each of these, the filtered R-wave signal from each of the multiple channels is displayed in a different color (e.g., similar to...). Figure 11B The curve shown is represented by a thick black line, indicating the calculated normalized average signal (e.g., similar to...). Figure 12A (The curve shown). For comparison, Figure 14B , Figure 15B , Figure 16B and Figure 17B Each of them is displayed as a match Figure 14A , Figure 15A , Figure 16A and Figure 17A The corresponding adjacent one (e.g., Figure 14A and Figure 14B This shows different data recorded for the same mother within the same time interval, for Figures 15A to 17B (The same applies.) See the reference above. Figure 12A and Figure 12B As discussed, it can be seen that the peaks in the exemplary normalized uterine signal correspond to self-reported contractions.

[0269] A study was conducted to evaluate the effectiveness of the exemplary implementation scheme. This study compared participants aged 18-50 years with a BMI <45 kg / m². 2 EUM and TOCO records were obtained from singleton pregnancies with a gestational age >32+0 weeks and no fetal abnormalities. As described above, EUM was calculated from a data sample of at least 30 minutes. The analysis of the uterine activity index based on maternal cardiac R-wave amplitude, referred to in this paper as EUM, showed promising results as an innovative and reliable method for monitoring maternal uterine activity. EUM data were highly correlated with TOCO data. Therefore, EUM monitoring can provide data as useful as TOCO data while overcoming the shortcomings of traditional labor force measurements, such as discomfort.

[0270] Figures 18A to 27B Exemplary data present at various stages of executing exemplary method 1300 is shown. Specifically, Figure 27A and Figure 27B A comparison is shown between the output signal generated by the exemplary method 1300 and the birth chart signal recorded within the same time interval.

[0271] Figures 18A-18H Exemplary raw data received as input to exemplary method 1300 (e.g., received in step 1305) and exemplary filtered raw data generated in exemplary method 1300 (e.g., generated by step 1310) are shown. Specifically, Figure 18A , Figure 18C , Figure 18E and Figure 18G Exemplary raw data is shown, while Figure 18B , Figure 18D , Figure 18F and Figure 18HExemplary filtered data are shown respectively. It will be apparent to those skilled in the art that... Figures 18A-18H This represents the raw and filtered biopotential data for a single channel, and in a practical implementation of method 1300 as described above, for each data channel, it will be presented with... Figures 18A-18H The dataset shown is a comparable dataset. (Reference) Figure 18A As can be seen, high power line noise exists around sample number 6000. (Reference) Figure 18B As can be seen, power line noise remains high; in some implementations, this may cause an interval to be flagged as having severe contact problems because the change in relative R-wave peak energy from one interval to another exceeds the threshold discussed in step 1310 of the exemplary method 1300 above. (Refer to...) Figure 18C As can be seen, there is high power line noise around sample number 14000. (Reference) Figure 18D As can be seen, power line noise remains high; in some implementations, this may cause the interval to be flagged as having a serious contact problem because the signal RMS exceeds the threshold discussed in step 1310 of the exemplary method 1300 above. (Reference) Figure 18E As can be seen, high power line noise exists throughout the signal. (Reference) Figure 18F As can be seen, the power line noise remains high; in some implementations, this may cause the interval to be flagged as having a serious contact problem because the signal's SNR fails to meet the threshold SNR discussed in step 1310 of the exemplary method 1300 above. (Refer to...) Figure 18G and Figure 18H As can be seen, a clear signal is visible; in some implementations, this may result in the interval not being marked as having a contact problem.

[0272] Now for reference Figure 19A and Figure 19B This illustrates the extraction of the R-wave peak according to step 1315. It will be apparent to those skilled in the art that... Figure 19A and Figure 19B This indicates that the R-wave peak is extracted from a single channel, and in a practical implementation of method 1300 as described above, each data channel will be presented with... Figure 19A and Figure 19B The dataset shown is a similar dataset. Figure 19A The filtered data (e.g., generated by step 1310) is shown before step 1315 is performed. Figure 19A In the diagram, the detected peak positions are indicated by asterisks. Figure 19B The image shows the peak data extracted after performing step 1315. Figure 19B In the diagram, the peak position is indicated by an asterisk. It can be seen that in... Figure 19AIn the text, some peak positions indicated by asterisks are not located at the maximum value of the peaks in the data, and these positions are determined by... Figure 19B The asterisks in the text are correctly represented.

[0273] Now for reference Figures 20A-20C This illustrates the removal of EMG artifacts according to step 1320. It will be apparent to those skilled in the art that... Figures 20A-20C This indicates the removal of EMG artifacts from a single channel, and in a practical implementation of method 1300 as described above, each data channel will be presented with... Figures 20A-20C The dataset shown is a similar dataset. Figure 20A Exemplary filtered data used in step 1320 is shown (e.g., generated by step 1310). Figure 20B It shows the relationship with Figure 20A The same filtered data, and also includes representations of the motion envelope and inter-peak absolute sums. Figure 20B In the diagram, peaks suspected of being damaged are represented by diamonds. Figure 20C The corrected signal after EMG artifact correction generated in step 1320 is shown. Figure 20C In the image, suspicious peaks have been removed, corrected peaks are shown as circles, and original peak values ​​are shown as contrast shadows.

[0274] Now for reference Figure 21A and Figure 21B This illustrates the removal of baseline artifacts according to step 1325. It will be apparent to those skilled in the art that... Figure 21A and 2 Figure 1B This indicates the removal of baseline artifacts from a single channel, and in a practical implementation of method 1300 as described above, each data channel will be presented with... Figure 21A and Figure 21B The dataset shown is a similar dataset. Figure 21A Exemplary data prior to baseline artifact removal, which can be received as input to step 1325, is shown. Figure 21A In the diagram, baseline artifacts are represented by circles. Figure 21A In the data shown, the baseline ratio between the circled area and the rest of the signal is less than 0.8. In some implementations, a correction signal is provided by dividing the remaining portion of the signal by this factor. Figure 21B An exemplary correction signal, for example, that can be generated by step 1325, is shown. Figure 21A In the diagram, baseline artifact regions are represented by circles. By comparison... Figure 21A and Figure 21B As can be seen, baseline artifacts have been removed.

[0275] Now for reference Figure 22A and Figure 22BThis illustrates the trimming of outliers and gaps according to step 1330. It will be apparent to those skilled in the art that... Figure 22A and Figure 22B This represents the correction of outliers and gaps from individual channels, and in an actual implementation of method 1300 as described above, it presents a pattern for each data channel. Figure 22A and Figure 22B The dataset shown is a similar dataset. Figure 22A Exemplary data that can be received as input to step 1330 is shown. It can be seen that the input data includes outliers near sample 450. Figure 22A The middle part is represented by a rhombus. Figure 22B This shows the result after performing step 1330 as described above to remove outliers. Figure 22A The example data shows that the data has been removed. Figure 22A The abnormal value shown.

[0276] Now for reference Figure 23A and 23B This illustrates the interpolation and extraction of the R-wave peak signal based on step 1330. It will be apparent to those skilled in the art that... Figure 23A and Figure 23B This indicates that the R-wave peak signal is extracted from a single channel, and in a practical implementation of method 1300 as described above, each data channel will be presented with... Figure 23A and Figure 23B The dataset shown is a similar dataset. Figure 23A An exemplary R-wave peak signal is shown, which can be provided as the output of step 1330 and received as the input of step 1335. Figure 23B An exemplary clean interpolated R-wave signal can be generated by performing step 1335.

[0277] Now for reference Figure 24A and Figure 24B This illustrates the channel selection based on step 1335. Figure 24A and Figure 24B In the example dataset shown, channels 3 and 8 were found to be ineligible for channel selection due to contact issues occurring in more than 10% of the time intervals. Therefore, in Figure 24A and 24B The image shows only exemplary channels 1, 2, 4, 5, 6, and 7. Figure 24A The independent channel pairs of the data shown below, along with their corresponding Kendall correlation values, are illustrated in the table below:

[0278] 1 5 0.01 1 6 0.49 1 7 0.51 2 5 0.08 2 6 0.39 2 7 0.58 4 5 -0.16 4 6 0.38 4 7 0.58

[0279] As can be seen from the table above, the group consisting of channels 1, 2, 4, and 7 shows moderate correlation (e.g., correlation greater than 0.5 but less than 0.7). Therefore, channels 1, 2, 4, and 7 are selected in step 1340. Figure 24B An exemplary dataset output from step 1340 is shown, including selected channels 1, 2, 4, and 7.

[0280] Now for reference Figure 25A and Figure 25B This illustrates the calculation of the EUM signal based on the selected channel according to step 1345. (Receive) Figure 24B The channel data shown is used as input to step 1345 in order to generate Figures 25A-25B The output data is shown below. (Reference) Figure 25A The figure shows from Figure 24B The signal shown is the 80th percentile signal extracted from the signal. Figure 25B It shows that by... Figure 25A The signal shown is the corrected signal obtained by applying drift baseline removal.

[0281] Now for reference Figure 26 This illustrates the calculation of the normalized EUM signal according to step 1350. The signal generated in step 1345 is received as follows... Figure 25B The correction data shown is used as input to step 1350 to generate a normalized EUM signal, such as... Figure 26 As shown. Figure 26 This shows how normalization is achieved. Figure 25B The signal shown is a normalized signal obtained by setting the baseline value to 30 visual voltage units. From Figure 26 As can be seen, there are three weak peaks in the signal.

[0282] Now for reference Figures 27A-27C This illustrates the sharpening of the EUM signal according to step 1355. An exemplary normalized signal generated in step 1350 is received, for example, Figure 26 The exemplary normalized signal shown is used as input to step 1355 to generate a sharpened EUM signal. Figure 27A An exemplary normalized EUM signal generated by step 1350 is shown. Figure 27B An exemplary enhanced mask generated according to step 1355 is shown. Figure 27C It shows how to... Figure 27A The normalized EUM signal is added to Figure 27B An example of sharpened EUM signal generated on a mask.

[0283] Now for reference Figure 28This illustrates the post-processing of the EUM signal according to step 1360. The sharpened EUM signal generated in step 1355 is received as input to step 1360 to generate the post-processed EUM signal. Figure 28 An exemplary post-processed EUM signal after removing the drift baseline as described above with reference to step 1360 is shown. It can be seen that after the sharpening in step 1355 and the post-processing in step 1360, Figure 26 The three weak peaks shown are in Figure 28 It is more clearly visible in the middle.

[0284] Now for reference Figure 29 , showing the corresponding Figure 28 The exemplary EUM signal is a labor map signal. As previously described, it is generated according to method 1300. Figure 28 An example EUM signal. In conjunction with the signal used to generate... Figure 28 The exemplary EUM signal data was captured for the same subject during the same time interval. Figure 29 The representative labor pattern signals. It can be seen that... Figure 28 and Figure 29 They are basically matched with each other and include three peaks that are the same in each other.

[0285] In some implementations, this is based on the use of one or more acoustic sensors (as referenced above). Figure 3 The acoustic data collected by the acoustic sensor 320 is used for uterine monitoring. In some embodiments, the uterine monitoring process based on acoustic data is substantially similar to that described above. Figure 13 The method 1300 described herein is a uterine monitoring process based on bioelectrical potential data, except as described below. Figure 30 An exemplary method 3000 for uterine monitoring based on acoustic data is illustrated. In some embodiments, the exemplary computing device of the present invention is programmed / configured to perform method 3000. In some embodiments, the exemplary computing device of the present invention is programmed / configured according to method 3000 via instructions stored in a non-transitory computer-readable medium. In some embodiments, the exemplary computing device of the present invention includes at least one computer processor that, when the instructions are executed, becomes a specially programmed computer processor programmed / configured according to method 3000. In some embodiments, the exemplary computing device of the present invention is specifically configured to solve the technical problems discussed below by performing method 3000.

[0286] In step 3005, the exemplary computing device of the present invention is specifically configured to receive raw acoustic data as input. In some embodiments, a set of raw acoustic data (e.g., one raw acoustic input) is received from each of a plurality of acoustic sensors located near the abdomen of a pregnant human subject. In some embodiments, a set of raw acoustic data is received from each of two, three, four, five, six, seven, eight, nine, ten, or more acoustic sensors. In a specific exemplary embodiment, which will be discussed in detail in this specification of method 3000, a set of raw acoustic data is received from each of four acoustic sensors, such as... Figure 3 As shown.

[0287] In step 3010, the exemplary computing device of the present invention is specifically configured to preprocess raw acoustic data to generate multiple channels of preprocessed acoustic data. In some embodiments, preprocessing includes applying at least one filter (e.g., one filter, two filters, three filters, four filters, five filters, six filters, seven filters, eight filters, nine filters, ten filters, or more) to the raw acoustic data, for example, applying each of a number X filters to each of a number Y channels of the raw data to generate a number X multiplied by Y of preprocessed data channels. In some embodiments, the filter includes a bandpass filter. In some embodiments, the filter includes a DC filter. In some embodiments, the filter includes a finite impulse response filter or an infinite impulse response (“IIR”) filter, such as a Butterworth filter or a Chebyshev filter or a combination thereof. In some embodiments, the filter includes a twelfth-order Butterworth HR filter, a third-order Butterworth HR filter, or a fifth-order Butterworth HR filter. In one exemplary embodiment, the filter comprises five twelfth-order Butterworth HR filters with frequencies of 10-50Hz, 15-50Hz, 20-50Hz, 25-50Hz, and 30-50Hz. In some embodiments, the five HR filters are applied to four raw data channels to produce twenty (20) preprocessed data channels. Figure 31A The data in an exemplary preprocessed data channel after step 3010 is shown. Figure 31B It shows Figure 31A A magnified view of the small time windows of the data shown.

[0288] In step 3015, the exemplary computing device of the present invention is specifically configured to extract the peak of the S1-S2 composite wave from the preprocessed data channel. Those skilled in the art will recognize that S1 and S2 refer to the first and second sounds within the cardiac cycle. In some embodiments, the term "S1-S2 peak" refers to the maximum point within a given S1-S2 composite wave. In some embodiments, the S1-S2 peak extraction in step 3015 is performed in a manner substantially similar to the R-wave peak extraction in step 1315 of method 1300 as described above. Figure 32A Data from an exemplary data channel is shown, with annotated S1-S2 peaks illustrated. Figure 32B It shows Figure 32A A magnified view of the small time windows of the data shown. Figure 32C It shows a model based on, for example Figure 32A The S1-S2 peaks shown represent an exemplary S1-S2 amplitude signal. Figure 32D An exemplary S1-S2 amplitude signal is shown within a large time window.

[0289] In steps 3020, 3025, and 3030, the exemplary computing device of the present invention is specifically configured to remove artifacts and outliers from the dataset generated in step 3015 in the same manner as described in steps 1320, 1325, and 1330 of the above-mentioned reference method 1300. It should be noted that the acoustic data analyzed by the exemplary method 3000 does not include the type of electrical noise discussed above with reference to step 1320, but typically includes motion-related noise recorded by acoustic sensors. However, the process for removing such motion-related noise is substantially similar to the process for removing electrical noise described above. Figure 33 An exemplary dataset of an exemplary data channel is shown after performing steps 3020, 3025, and 3030.

[0290] In step 3035, the exemplary computing device of the present invention is specifically configured to centrally interpolate and extract S1-S2 signal data from the dataset generated in step 3030 in a manner substantially similar to that described in step 1335 of the above-mentioned reference method 1300. Figure 34 The extracted S1-S2 dataset, calculated in step 3035, is shown.

[0291] In step 3040, the exemplary computing device of the present invention is specifically configured to perform channel selection in a manner substantially similar to that described in step 1340 of the above-referenced method 1300. However, the channel selection in step 3040 differs from that in step 1340 in one aspect. As stated above, due to the different nature of the biopotential sensors, some of the data channels used in step 1340 are not independent of each other, and as a result, only some of the data channels used in step 1340 can be coupled to each other. In contrast, the acoustic sensors that collect data used in method 3000 are single-ended, i.e., independent of each other. Therefore, in step 3040, any two data channels can be appropriately coupled to each other. Thus, for example, in an embodiment where four raw data channels are processed using five different bandpass filters to produce twenty filtered data channels, there are twenty by nineteen (i.e., 380) possible channel pairs.

[0292] Following channel selection in step 3040, in step 3045, the exemplary computing device of the present invention is specifically configured to calculate the acoustic uterine activity signal in a manner substantially similar to that described in step 1345 of reference method 1300. In step 3050, the exemplary computing device of the present invention is specifically configured to normalize the acoustic uterine activity signal in a manner substantially similar to that described in step 1350 of reference method 1300 above. In step 3055, the exemplary computing device of the present invention is specifically configured to sharpen the normalized acoustic uterine activity signal in a manner substantially similar to that described in step 1355 of reference method 1300 above. In step 3060, the exemplary computing device of the present invention is specifically configured to post-process the sharpened acoustic uterine activity signal in a manner substantially similar to that described in step 1360 of reference method 1300 above.

[0293] In some embodiments, the output of exemplary method 3000 is an acoustic uterine monitoring signal, which is determined non-invasively by analyzing data obtainable from acoustic sensors located around the abdomen of a pregnant human subject. In some embodiments, the acoustic uterine monitoring signal generated by exemplary method 3000 provides uterine monitoring data similar to that generated by a labor dynamometer and an ultrasound transducer, and can be used to monitor uterine activity, such as contractions.

[0294] Figures 35A-37B An example comparison between birth chart data and the output of exemplary method 3000 is shown. Figure 35A , Figure 36A and Figure 37A Each of these shows the labor graph signal relative to time. Figure 35B , Figure 36B and Figure 37BIn each of these examples, the output of a performance example method 3000 using acoustic data recorded during the same time interval is shown. It can be seen that the peaks in the exemplary acoustic-based uterine monitoring signal correspond to the peaks in the labor map data.

[0295] As described herein, a technical problem in the field of maternal / fetal care is that existing solutions for monitoring uterine activity (e.g., contractions) using dynamometers and ultrasound sensors require pregnant women to wear uncomfortable sensors, which may produce unreliable data when worn by obese pregnant women (e.g., the sensors may not have sufficient sensitivity to produce usable data). As further discussed herein, exemplary embodiments provide a technical solution to this problem by using various sensors (e.g., bioelectric sensors and / or acoustic sensors) integrated into a comfortable wearable device and analyzing data obtainable from such sensors (e.g., electrodes and / or acoustic sensors) to generate signals that can be used to monitor uterine activity. Another technical problem in the field of maternal / fetal care is that existing solutions for analyzing signals obtained from sensors (e.g., bioelectric sensors and / or acoustic sensors) that can be integrated into comfortable wearable devices are limited to analyzing such signals to extract cardiac data. As discussed herein, exemplary embodiments provide a technical solution to this problem by analyzing bioelectric data and / or acoustic data to generate signals that can monitor uterine activity (e.g., contractions).

[0296] All publications mentioned herein are incorporated herein by reference in their entirety. Although various aspects of the invention have been illustrated above with reference to examples and embodiments, it should be understood that the scope of the invention is not limited by the foregoing description, but rather by the claims as properly interpreted under the principles of patent law. Furthermore, many modifications will be apparent to those skilled in the art, including the various embodiments of the inventive methods, systems, and apparatus described herein, which can be used in arbitrary combinations with each other. Moreover, the various steps can be performed in any desired order (and in particular embodiments, any desired steps can be added and / or any undesired steps can be eliminated).

Claims

1. A computer implementation method, comprising: Multiple raw acoustic inputs are received via a sampling rate between 100 samples per second and 10,000 samples per second using at least one computer processor. Each of the aforementioned raw acoustic inputs is received from a corresponding one of a plurality of acoustic sensors, and Each of the plurality of acoustic sensors is positioned to measure a corresponding one of the original acoustic inputs of the pregnant human subject; Multiple signal channels are generated from the plurality of original acoustic inputs via the at least one computer processor. The plurality of signal channels includes at least three signal channels; The corresponding signal channel data of each of the at least one signal channel is preprocessed by the computer processor to generate multiple preprocessed signal channels. Each of the preprocessed signal channels includes corresponding preprocessed signal channel data; Using the at least one computer processor, multiple S1-S2 peaks are extracted from the preprocessed signal channel data of each preprocessed signal channel to generate multiple S1-S2 peak datasets. Each of the S1-S2 peak datasets includes multiple corresponding S1-S2 peaks; Using the at least one computer processor, remove at least one of the following from the plurality of S1-S2 peak datasets: (a) at least one signal artifact or (b) at least one outlier data point. The at least one of the signal artifacts is a motion-related artifact and a baseline artifact; The at least one computer processor replaces the at least one signal artifact, the at least one outlier data point, or both with at least one statistical value to generate multiple corrected S1-S2 peak datasets, wherein the at least one statistical value is determined based on a corresponding S1-S2 peak dataset from which the at least one signal artifact, the at least one outlier data point, or both have been removed. At least one interpolation algorithm is executed on each of the plurality of corrected S1-S2 peak datasets by the at least one computer processor in order to generate a corresponding S1-S2 signal dataset for the corresponding S1-S2 signal channel at a predetermined sampling rate, so as to generate a plurality of S1-S2 signal channels. Using the at least one computer processor, based on at least one correlation between (a) a corresponding S1-S2 signal dataset of at least one specific first S1-S2 signal channel and (b) a corresponding S1-S2 signal dataset of at least one specific second S1-S2 signal channel, at least one selected first S1-S2 signal channel and at least one selected second S1-S2 signal channel are selected from the plurality of S1-S2 signal channels; and Acoustic uterine contraction monitoring data, representing acoustic uterine contraction monitoring signals, is generated by the at least one computer processor using the corresponding S1-S2 signal datasets of at least the selected first S1-S2 signal channel and the corresponding S1-S2 signal datasets of the selected second S1-S2 signal channel. The step of extracting the corresponding plurality of S1-S2 peaks through the at least one computer processor includes: Receive the maternal ECG peak set of the pregnant human subject; and The S1-S2 peaks in each of the preprocessed signal channels within a predetermined time window before and after each parent ECG peak in the parent ECG peak set are identified as the maximum absolute values ​​in each of the preprocessed signal channels within the predetermined time window.

2. The computer implementation method according to claim 1 further includes: The acoustic uterine contraction monitoring data is sharpened by the at least one computer processor to generate a sharpened acoustic uterine contraction monitoring signal.

3. The computer implementation method according to claim 2 further includes: The at least one computer processor determines whether the acoustic uterine contraction monitoring data is calculated based on a damaged acoustic uterine contraction monitoring signal channel selected from the acoustic uterine contraction monitoring signal channels. If the acoustic uterine contraction monitoring data is calculated based on a damaged acoustic uterine signal monitoring channel selected from the acoustic uterine contraction monitoring signal channels, then the step of sharpening the acoustic uterine contraction monitoring data by the at least one computer processor is omitted.

4. The computer implementation method according to claim 2 further includes: The sharpened acoustic monitoring signal data is post-processed to generate a post-processed acoustic uterine contraction monitoring signal.

5. The computer implementation method according to claim 2, wherein the step of sharpening the acoustic uterine contraction monitoring data by the at least one computer processor includes: Identify the peak sets in the acoustic uterine contraction monitoring signal data; Determine the significance of each peak; Remove peaks from the peak set whose significance is less than at least one threshold significance value; The mask is calculated based on the remaining peaks of the peak set; The mask is smoothed based on a moving average window to produce a smooth mask; and The smoothing mask is added to the acoustic uterine contraction monitoring signal data to generate the sharpened acoustic uterine contraction monitoring signal data.

6. The computer implementation method of claim 5, wherein the at least one threshold significance value comprises at least one threshold significance value selected from a group consisting of absolute significance values ​​and relative significance values, the relative significance value being calculated based on the maximum significance of the peaks in the peak set.

7. The computer implementation method according to claim 5, wherein the mask includes zero values ​​outside the region of the remaining peak and non-zero values ​​inside the region of the remaining peak. The non-zero values ​​mentioned above are calculated based on the Gaussian function.

8. The computer implementation method of claim 1, wherein at least one filtering step in the preprocessing step includes applying at least one filter selected from the group consisting of a DC removal filter, a power line filter, and a high-pass filter.

9. The computer implementation method of claim 1, wherein the step of removing at least one of signal artifacts or outlier data points includes removing at least one motion artifact by processing, said processing including: Based on at least one damaged peak with an inter-peak root mean square value greater than a threshold, identify at least one damaged peak in one of the plurality of S1-S2 peak datasets; and Replace the damaged peak with the median, where the median is either a local median or a global median.

10. The computer implementation method of claim 1, wherein the step of removing at least one of signal artifacts or outlier data points includes removing at least one baseline artifact by processing, said processing including: Identify the point of change of the S1-S2 peak in one of the multiple S1-S2 peak datasets; One of the multiple S1-S2 peak datasets is subdivided into a first part located before the point of change and a second part located after the point of change; Determine the first root mean square value of the first part; Determine the second root mean square value of the second part; The equilibrium factor is determined based on the first root mean square value and the second root mean square value; and The first part is modified by multiplying the S1-S2 peaks in the first part by the equilibrium factor.

11. The computer implementation method of claim 1, wherein the step of removing at least one of signal artifacts or outlier points includes removing at least one outlier according to a Grubbs test for outliers.

12. The computer implementation method of claim 1, wherein the step of generating a corresponding S1-S2 dataset based on each corresponding S1-S2 peak dataset includes interpolation between the S1-S2 peaks of each corresponding S1-S2 peak dataset, and wherein interpolation between the S1-S2 peaks includes interpolation using an interpolation algorithm selected from a group consisting of a cubic spline interpolation algorithm and a conformal piecewise cubic interpolation algorithm.

13. The computer implementation method according to claim 1, wherein the step of selecting at least one first S1-S2 signal channel and at least one second S1-S2 signal channel from the plurality of S1-S2 signal channels comprises: Identify contact problems in each of the plurality of S1-S2 signal channels; Determine the percentile of the previous interval in each of the plurality of S1-S2 signal channels that experienced the contact problem; Candidate S1-S2 signal channels are selected from the plurality of S1-S2 signal channels based on the percentile of the previous interval in which each of the plurality of S1-S2 signal channels experienced the contact problem. The selected candidate S1-S2 signal channels are grouped into multiple pairs, where each pair includes two independent selected candidate S1-S2 channels. Calculate the correlation value for each pair; Identify at least one pair of correlation values ​​that exceed a threshold correlation value; Select the first candidate S1-S2 signal channel from each of at least one pair of identified signals, as at least one selected first S1-S2 signal channel; and Select the second candidate S1-S2 signal channel of each of at least one pair of identified signals as at least one second S1-S2 signal channel.

14. The computer implementation method of claim 1, wherein the step of calculating the acoustic uterine contraction monitoring signal comprises calculating the acoustic uterine contraction monitoring signal, wherein the acoustic uterine monitoring signal at each time point is a predetermined percentile of all selected at least one first S1-S2 signal channels and at least one selected second S1-S2 signal channels at that time point.

15. The computer implementation method according to claim 14, wherein the predetermined percentile is the 80th percentile.

16. The computer implementation method according to claim 1, wherein the statistical value is one of local median, global median, or average.

Citation Information

Patent Citations

  • Systems, apparatus and methods for sensing fetal activity

    US9392952B1

  • Acoustic sensors for abdominal fetal cardiac activity detection

    US9713430B2

  • Fetal heart monitoring appearance that pregnant woman's physical examination was used

    CN207996202U

  • Multisensor cardiac function monitoring and analytics systems

    US20190059748A1