SYSTEM AND METHOD FOR CAPTURING CARDIOPULMONARY SIGNALS

A method is provided that includes receiving an accelerometer signal from an accelerometer in a headphone configured to be mounted in a user's ear canal and filtering the accelerometer signal to extract a cardiac signal. The method further includes detecting a plurality of peaks in the cardiac signal and determining a cardiac rate of the user based on the detected plurality of peaks.

TECHNICAL FIELD

The present description relates generally to capturing cardiopulmonary signals of a user including, for example, capturing cardiopulmonary signals using a high-speed accelerometer in headphones configured to be mounted in the user's ear canal.

BACKGROUND

Physiological activities in the human body are main indicators of health factors. These activities yield a multitude of mechano-acoustic signatures that are a complex superposition of signals arising from body motions, respiration, cardiac activity, and other sources. Current systems for capturing aspects of these mechano-acoustic signals suffer from susceptibility to environmental noise or low-frequency motion artifacts, and have difficulty capturing both mechanical and acoustic signals simultaneously with high fidelity.

DETAILED DESCRIPTION

The subject technology proposes the use of a high-speed accelerometer that combines the characteristics of an accelerometer and a contact microphone to capture the mechano-acoustic signals in multiple frequency bands while its signal is insusceptible to environmental noise. This coupling is helpful since it allows extracting cardiac features in multiple signals (e.g., ballistocardiogram (BCG) and phonocardiogram (PCG) signals), and therefore may be more effective in identifying cardiac activities.

According to aspects of the subject technology, high-speed accelerometers available in earbuds or headphones configured to mounted in the ear canal of a user may be used to capture the mechano-acoustic signals. These accelerometers benefit from a relatively stable position in the ear canal with respect to vital organs. Thus, robust measurements of cardiac and respiratory functions may be obtained from inside the ear. According to aspects of the subject technology, high-speed accelerometers having high sensitivity in a wide frequency spectrum with high dynamic range are used to capture the mechano-acoustic signals. For example, a high-speed accelerometer may have a 16 KHz sampling frequency and 24-bit resolution. However, the subject technology is not limited to these specifications and may be implemented with different sampling frequencies and sampling resolutions. For example, the sampling frequency may be as low as 2 KHz. Using these high-speed accelerometers allows a single sensor to simultaneously record multiple cardiopulmonary signals, from subtle vibrations produced by respiration and heart beats (e.g., BCG signals from DC to 20 Hz), to those acoustic waves produced by heart and lung sounds (e.g., PCG signals) that cover a wide spectrum ranging over 1 Hz or less, to over 2 KHz. In addition, cardiopulmonary signals may be acquired without user intervention, longitudinally and in different physical activity conditions. For purposes of this description, the term “accelerometer” will reference the high-speed accelerometer described above.

As illustrated inFIG.1, network environment100includes user105wearing headphones110, electronic devices115and120, server125, and network130. Headphones110represent earbuds or headphones configured to be mounted in the ear-canals of user105. Headphones110may be communicatively coupled to either electronic device115and/or electronic device120via a wireless or wired connection. For example, headphones110may be communicatively coupled to electronic device115using a Bluetooth connection.

Network130may communicatively (directly or indirectly) couple electronic devices115and120in a local network environment. Additionally, LAN140may communicatively couple (directly or indirectly) electronic devices115and120to server125. In one or more implementations, network130may include one or more different network devices/network medium and/or may utilize one or more different wireless and/or wired network technologies, such as Ethernet, optical, Wi-Fi, Bluetooth, Zigbee, Powerline over Ethernet, coaxial, Ethernet, Z-Wave, cellular, or generally any wireless and/or wired network technology that may communicatively couple two or more devices. In one or more implementations, network130may be an interconnected network of devices that may include, and/or may be communicatively coupled to, the Internet. For explanatory purposes, network environment100is illustrated inFIG.1as including electronic devices115and120, and server125; however, network environment100may include any number of electronic devices and any number of servers.

FIG.1illustrates electronic device115as a smartphone and electronic device120as a laptop computer. The subject technology is not limited to these types or numbers of electronic devices. For example, any of electronic devices115and120may be a portable computing device such as a laptop computer, a smartphone, a set top box including a digital media player, a tablet device, a wearable device such as a smartwatch or a band, or any other appropriate device that is capable of executing client applications, providing access to the client applications via a graphical user interface, and includes and/or is communicatively coupled to, for example, one or more wired or wireless interfaces, such as WLAN radios, cellular radios, Bluetooth radios, Zigbee radios, near field communication (NFC) radios, and/or other wireless radios.

Server125represents one or more computing devices that are configured to provide services to users via client applications being executed on electronic devices115and/or120. For example, server125may provide healthcare or telemedicine services with which cardiopulmonary signals may be shared with a doctor or other healthcare professional. The subject technology is not limited to this number of services or these types of services.

FIG.2is a block diagram illustrating components of headphones110and electronic device115in accordance with one or more implementations of the subject technology. WhileFIG.2depicts components for electronic device115,FIG.2can correspond to electronic device120inFIG.1as well. Not all of the depicted components may be used in all implementations, however, and one or more implementations may include additional or different components than those shown in the figure. Variations in the arrangement and type of the components may be made without departing from the spirit or scope of the claims as set forth herein. Additional components, different components, or fewer components may be provided.

In the example depicted inFIG.2, headphones110includes processor210, memory215, accelerometer220, and communication module225. Processor210may include suitable logic, circuitry, and/or code that enable processing data and/or controlling operations of headphones110. In this regard, processor210may be enabled to provide control signals to various other components of headphones110. Processor210may also control transfers of data between various portions of headphones110. Additionally, the processor210may enable implementation of an operating system or otherwise execute code to manage operations of headphones110.

Processor210or one or more portions thereof, may be implemented in software (e.g., instructions, subroutines, code), may be implemented in hardware (e.g., an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA), a Programmable Logic Device (PLD), a controller, a state machine, gated logic, discrete hardware components, or any other suitable devices) and/or a combination of both.

Memory215may include suitable logic, circuitry, and/or code that enable storage of various types of information such as received data, generated data, code, and/or configuration information. Memory215may include, for example, random access memory (RAM), read-only memory (ROM), flash memory, and/or magnetic storage. As depicted inFIG.2, memory215contains signal module230, format module235, and transmission module240. The subject technology is not limited to these components both in number and type, and may be implemented using more components or fewer components than are depicted inFIG.2.

According to aspects of the subject technology, signal module230comprises a computer program having one or more sequences of instructions or code together with associated data and settings. Upon executing the instructions or code, one or more processes are initiated to capture cardiac or cardiopulmonary signals using accelerometer220. Accelerometer220may be configured to capture the signals at a sampling frequency of at least 2 kHz (e.g., 16 kHz). Signal module230may be configured to read out the measurements made by accelerometer220at the sampling frequency to detect the cardiac or cardiopulmonary signals.

According to aspects of the subject technology, format module235comprises a computer program having one or more sequences of instructions or code together with associated data and settings. Upon executing the instructions or code, one or more processes are initiated to format the cardiac or cardiopulmonary signals into an audio format. For example, the signals may be formatted into a linear pulse code modulated format. Formatting the signals into an audio format allows headphones115to take advantage of existing communications systems for communicating signals with electronic device115.

According to aspects of the subject technology, transmission module240comprises a computer program having one or more sequences of instructions or code together with associated data and settings. Upon executing the instructions or code, one or more processes are initiated to transmit the formatted cardiac or cardiopulmonary signals to electronic device115via communication module225. Communication module225represents the interface for wireless or wired communications with electronic device115. For example, communications module225may implement the Bluetooth standard for wireless communications between devices.

In the example depicted inFIG.2, electronic device115includes processor245, memory250, accelerometer220, and communication module255. Processor245may include suitable logic, circuitry, and/or code that enable processing data and/or controlling operations of electronic device115. In this regard, processor245may be enabled to provide control signals to various other components of electronic device115. Processor245may also control transfers of data between various portions of electronic device115. Additionally, the processor245may enable implementation of an operating system or otherwise execute code to manage operations of electronic device115.

Processor245or one or more portions thereof, may be implemented in software (e.g., instructions, subroutines, code), may be implemented in hardware (e.g., an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA), a Programmable Logic Device (PLD), a controller, a state machine, gated logic, discrete hardware components, or any other suitable devices) and/or a combination of both.

Memory250may include suitable logic, circuitry, and/or code that enable storage of various types of information such as received data, generated data, code, and/or configuration information. Memory250may include, for example, random access memory (RAM), read-only memory (ROM), flash memory, and/or magnetic storage. As depicted inFIG.2, memory250contains transmission module260, filter module265, and signal processing module270. The subject technology is not limited to these components both in number and type, and may be implemented using more components or fewer components than are depicted inFIG.2.

According to aspects of the subject technology, transmission module260comprises a computer program having one or more sequences of instructions or code together with associated data and settings. Upon executing the instructions or code, one or more processes are initiated to receive the formatted cardiac or cardiopulmonary signals from headphones110via communication module255. Communication module255represents the interface for wireless or wired communications with headphones110. For example, communications module255may implement the Bluetooth standard for wireless communications between devices.

According to aspects of the subject technology, filter module265comprises a computer program having one or more sequences of instructions or code together with associated data and settings. Upon executing the instructions or code, one or more processes are initiated to filter the cardiac or cardiopulmonary signal received from an accelerometer of headphones110to extract specific cardiac and pulmonary signals. The signal received from headphones110is a superposition signal consisting of mechanical vibrations produced by the user's cardiac and respiratory systems, body motions, and other potentially physiological vibrations produced by the body and propagated inside the ear canal. In addition, extra noises such as motion artifacts produced by body and/or device movements are inherent in the superposition signal. According to aspects of the subject technology, the signal received from headphones110is filtered to extract the signal(s) of interest. For example, one or more band-pass filters, such as a finite impulse response Butterworth band-pass filter, may be used to extract the signals of interest. BCG and SCG signals may be extracted in the 0.01 to 25 Hz frequency range, PCG signals may be extracted in the 25 to 240 Hz frequency range, and lung sounds or respiratory signals may be extracted in the 80 to 500 Hz frequency range. The subject technology is not limited to these specific ranges and signals of interest may be extracted using different sub-ranges or ranges than those listed above.

According to aspects of the subject technology, signal process module270comprises a computer program having one or more sequences of instructions or code together with associated data and settings. Upon executing the instructions or code, one or more processes are initiated to process the extracted signals to determine a cardiac or cardiopulmonary rate. Using an extracted PCG signal as an example, a process for detecting peaks and determining a cardiac rate will now be described. According to aspects of the subject technology, a gradient-based algorithm may be used to detect peaks that correspond to S1 and S2 sounds in the PCG signal. The algorithm first normalizes the signal. The algorithm then searches for the local maxima via a moving window in the time series. The time duration of the moving window may be 150 milliseconds, which approximately corresponds to the maximal length of a heart sound. The global maximum within the 150 milliseconds moving window is considered a potential heart sound component, either S1 or S2 sound. To further remove the false detected peaks, the algorithm checks the time interval between consecutive peaks, and ignores the one with intervals shorter than 0.33 seconds (˜180 bpm) and longer than 1.2 s (˜50 bpm). Applying a 6 second, 75% overlapping moving average window to peak-to-peak intervals yields an estimate of cardiac rate. The subject technology is not limited to the specific example described above and may be implemented with different parameters for the algorithm.

The foregoing process for peak detection and cardiac rate determination was described in the context of processing a PCG signal. Low frequency signals like BCG, however, can be difficult to identify peaks as the signals may get combined with motion artifacts. For signals like BCG, template matching may be used to detect the peaks in the signal.

FIG.3illustrates an example process for determining a cardiac rate from an accelerometer signal according to aspects of the subject technology. For explanatory purposes, the blocks of the process300are described herein as occurring in serial, or linearly. However, multiple blocks of the process300may occur in parallel. In addition, the blocks of the process300need not be performed in the order shown and/or one or more blocks of the process300need not be performed and/or can be replaced by other operations.

Example process300may be initiated upon electronic device115receiving an accelerometer signal from headphones110(block310). As noted above, the accelerometer signal received from headphones110is a superposition signal from which cardiac signals of interest are extracted by filtering the accelerometer signal (block320).FIG.4depicts representations of the accelerometer signal (A) along with the extracted signals (B) that were extracted using a 0.01-5 Hz bandpass filter, a 5-25 Hz bandpass filter, a 25-80 Hz bandpass filter, an 80-240 Hz bandpass filter, and a 240-500 Hz bandpass filter. Also shown for reference is an ECG signal (C) captured using another electronic device, such as a smartwatch worn on a user's wrist, for comparison with the other signals.

Using one of the extracted cardiac signals, such as a PCG signal, peaks are detected in the extracted signal using one of the processes described above (block330).FIG.5depicts representations of peak detection process according to aspects of the subject technology.FIG.5includes a PCG cardiac signal (a.) extracted from an accelerometer signal using a bandpass filter with a frequency range of 25-80 Hz. As discussed above, an envelope of the PCG cardiac signal (b.) is extracted and peaks are detected (c.). Also shown for reference is an ECG signal (d.) captured using another electronic device, such as a smartwatch worn on a user's wrist.

FIG.6depicts representations of signals extracted from a received accelerometer signal according to aspects of the subject technology.FIG.6includes signals extracted using 0.01-5 Hz bandpass filter, 5-25 Hz bandpass filter, 25-80 Hz bandpass filter, 80-300 Hz bandpass filter, and 500-999 Hz bandpass filter. As evidenced by the extracted signals, pulmonary signals can be extracted in the 80-300 Hz frequency range and the 300-500 Hz frequency range. From these signals, pulmonary or respiratory rates may be determined using peak detection and a moving average window as described above with respect to the PCG signal.

As described above, the accelerometer signal being processed may be obtained while headphones are mounted in a user's ear canal. According to aspects of the subject technology, cardiopulmonary signals may be extracted from an accelerometer signal obtained by placing one of the headphones on a cardiopulmonary landmark on the user's body, such as the user's chest.FIG.4illustrates an accelerometer signal obtained while headphones are mounted in the user's ear canal.FIGS.5,6, and7depict representations of cardiopulmonary signals extracted from an accelerometer signal obtained by placing the portion of a headphone containing the accelerometer on the user's chest before and after exercising. As evidenced by the depicted signals inFIG.7, pulmonary or respiratory rates may be determined using peak detection and moving average window for both the signal extracted using the 0.01-5 Hz bandpass filter and the 5-25 Hz bandpass filter. The subject technology is not limited to the chest as the only cardiopulmonary landmark to obtain an accelerometer signal for processing the in the manner described above.

FIG.8illustrates an electronic system800with which one or more implementations of the subject technology may be implemented. Electronic system800can be, and/or can be a part of, one or more of electronic devices115and120, or server125shown inFIG.1. The electronic system800may include various types of computer readable media and interfaces for various other types of computer readable media. The electronic system800includes a bus808, one or more processing unit(s)812, a system memory804(and/or buffer), a ROM810, a permanent storage device802, an input device interface814, an output device interface806, and one or more network interfaces816, or subsets and variations thereof.

The bus808collectively represents all system, peripheral, and chipset buses that communicatively connect the numerous internal devices of the electronic system800. In one or more implementations, the bus808communicatively connects the one or more processing unit(s)812with the ROM810, the system memory804, and the permanent storage device802. From these various memory units, the one or more processing unit(s)812retrieves instructions to execute and data to process in order to execute the processes of the subject disclosure. The one or more processing unit(s)812can be a single processor or a multi-core processor in different implementations.

The ROM810stores static data and instructions that are needed by the one or more processing unit(s)812and other modules of the electronic system800. The permanent storage device802, on the other hand, may be a read-and-write memory device. The permanent storage device802may be a non-volatile memory unit that stores instructions and data even when the electronic system800is off. In one or more implementations, a mass-storage device (such as a magnetic or optical disk and its corresponding disk drive) may be used as the permanent storage device802.

In one or more implementations, a removable storage device (such as a floppy disk, flash drive, and its corresponding disk drive) may be used as the permanent storage device802. Like the permanent storage device802, the system memory804may be a read-and-write memory device. However, unlike the permanent storage device802, the system memory804may be a volatile read-and-write memory, such as random access memory. The system memory804may store any of the instructions and data that one or more processing unit(s)812may need at runtime. In one or more implementations, the processes of the subject disclosure are stored in the system memory804, the permanent storage device802, and/or the ROM810. From these various memory units, the one or more processing unit(s)812retrieves instructions to execute and data to process in order to execute the processes of one or more implementations.

The bus808also connects to the input and output device interfaces814and806. The input device interface814enables a user to communicate information and select commands to the electronic system800. Input devices that may be used with the input device interface814may include, for example, alphanumeric keyboards and pointing devices (also called “cursor control devices”). The output device interface806may enable, for example, the display of images generated by electronic system800. Output devices that may be used with the output device interface806may include, for example, printers and display devices, such as a liquid crystal display (LCD), a light emitting diode (LED) display, an organic light emitting diode (OLED) display, a flexible display, a flat panel display, a solid state display, a projector, or any other device for outputting information. One or more implementations may include devices that function as both input and output devices, such as a touchscreen. In these implementations, feedback provided to the user can be any form of sensory feedback, such as visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, or tactile input.

Finally, as shown inFIG.8, the bus808also couples the electronic system800to one or more networks and/or to one or more network nodes through the one or more network interface(s)816. In this manner, the electronic system800can be a part of a network of computers (such as a LAN, a wide area network (“WAN”), or an Intranet, or a network of networks, such as the Internet. Any or all components of the electronic system800can be used in conjunction with the subject disclosure.

In accordance with the subject disclosure, a method is provided that includes receiving an accelerometer signal from an accelerometer in a headphone configured to be mounted in a user's ear canal and filtering the accelerometer signal to extract a cardiac signal. The method further includes detecting a plurality of peaks in the cardiac signal and determining a cardiac rate of the user based on the detected plurality of peaks.

The accelerometer signal may be parsed into an audio format. The audio format is may be a linear pulse code modulated format. Filtering the accelerometer signal may include applying a bandpass filter to the accelerometer signal. The bandpass filter may be a finite impulse response Butterworth bandpass filter. Detecting the plurality of peaks in the cardiac signal may include performing template matching on the cardiac signal. The method may further include extracting an envelope of the cardiac signal, where the plurality of peaks are detected in the extracted envelope of the cardiac signal.

In accordance with the subject disclosure, a non-transitory computer-readable medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform operations is provided. The operations include receiving an accelerometer signal from an accelerometer in a headphone configured to be mounted in a user's ear canal and filtering the accelerometer signal to extract a first cardiac signal and a second cardiac signal. The operations further include detecting a first plurality of peaks in the first cardiac signal and a second plurality of peaks in the second cardiac signal and determining a first cardiac rate of the user based on the detected first plurality of peaks and a second cardiac rate of the user based on the detected second plurality of peaks.

The accelerometer signal may be parsed into an audio format. The audio format may be a linear pulse code modulated format. Filtering the accelerometer signal may include applying a first bandpass filter to the accelerometer signal to extract the first cardiac signal and a second bandpass filter to the accelerometer signal to extract the second cardiac signal. Detecting the plurality of peaks in the cardiac signal may include performing template matching on the first cardiac signal. The operations may further include extracting an envelope of the second cardiac signal, where the plurality of peaks are detected in the extracted envelope of the second cardiac signal.

In accordance with the subject disclosure, an electronic device is provided that includes a memory storing one or more computer programs and one or more processors configured to execute instructions of the one or more computer programs. Upon executing the instructions, the one or more processors receive an accelerometer signal from an accelerometer in a headphone configured to be mounted in a user's ear canal and filter the accelerometer signal to extract a cardiopulmonary signal. The one or more processors further detect a plurality of peaks in the cardiopulmonary signal and determine a cardiopulmonary rate of the user based on the detected plurality of peaks.

The accelerometer signal may be parsed into an audio format. Filtering the accelerometer signal may include applying a bandpass filter to the accelerometer signal. The cardiopulmonary rate of the user may be a respiratory rate of the user. The headphone may be positioned on the chest of the user.

In accordance with the subject disclosure, a headphone is provided that includes an accelerometer, a communication module, a memory storing one or more computer programs, and a processor configured to execute instructions in the one or more computer programs. Upon executing the instructions, the processor captures an accelerometer signal from the accelerometer, parses the accelerometer signal into an audio format, and transmits the accelerometer signal in the audio format to an electronic device using the communication module.

The audio format may be a linear pulse code modulated format. The communication module may be a wireless communication module.

As described herein, aspects of the subject technology may include the collection and transfer of data from an application to other computing devices. The present disclosure contemplates that in some instances, this collected data may include personal information data that uniquely identifies or can be used to identify a specific person. Such personal information data can include demographic data, location-based data, online identifiers, telephone numbers, email addresses, home addresses, images, data or records relating to a user's health or level of fitness (e.g., vital signs measurements, medication information, exercise information), date of birth, or any other personal information.