The present invention relates to system and methods for the detection of pathologic states in mammals.
Airborne virus and bacterial diseases represent a major hazard to organisms with lungs such as mammals including humans. The spread of airborne disease is rapid in enclosed spaces such as animal cages or pens, transport systems such as aircrafts and trains, prisons, public meeting places such as discos, schools and hospitals.
Farm animals and the general public have little or no protection against airborne disease which is one reason why airborne disease is reported to have created one of the greatest natural disasters that humankind has experienced.
An object of the present invention is provide a system and method for the detection of pathologic states in mammals, especially respiratory diseases. This object is solved by methods, systems, devices and a computer program product as defined in the attached claims.
In particular, the present invention provides a computer based method for monitoring, e.g. the recognition of health, physical states or arousal or respiratory status of a mammal, comprising:
capturing a remote cough event using one or more sensors such as microphones,
analyzing the cough event to determine if it is indicative of a sick or healthy cough, and localizing the cough event.
The present invention provides a computer based system for the monitoring, e.g. recognition of health, physical states or arousal or respiratory status of a mammal, comprising:
one or more sensors such as microphones for capturing a remote cough event,
means for analyzing the cough event to determine if it is indicative of a sick or healthy cough, and
Means for localizing the cough event.
The present invention provides a portable electronic device having a processing engine and a memory, comprising:
one or more sensors such as microphones for capturing a remote cough event,
means for analyzing the cough event to determine if it is indicative of a sick or healthy cough, and
Means for localizing the cough event.
The means for analyzing may be adapted for real time operation and/or to use
Hidden Markov models or Dynamic Time warping.
The means for analyzing may optionally be adapted to use a first model that calculates characteristic parameter of the respiratory status from sound captured by the one or more microphones. The characteristic parameter may be one of spectral content, an autoregressive model parameter or acoustic energy.
The means for analyzing may also be adapted to use a second model to quantify the dynamic variation of the characteristic parameter. In addition the device may include means for classification of the cough event based on dynamic variation of the characteristic parameter.
The device may also comprise means for extraction of sound information from the sound signal captured by the one or more microphones, the means for extracting having:
means for calculating the energy of the sound signal,
means for calculating the Hilbert transform of the energy,
means for calculating the square root of the sum of the energy and its Hilbert transform, and
means for calculating the moving average of the result to get a smoothed estimate of the envelope of the initial signal.
Preferably the means for localizing the cough event comprises: means for estimation of a time difference of arrival of the sound signal captured by the one or more microphones.
Alternatively the means for localizing the cough event may comprise any of:
means for energy thresholding, and
means for detecting simultaneous movements of the mammal. The means for detecting simultaneous movements of the mammal include means for analysing images from a camera or means for comparing the sound signal captured by the one or more microphones with an output of a movement detector. The movement detector may be an accelerometer.
The present invention also provides a computer program product including code segments that when executed on a computing system implement any of the methods or devices of the present invention. The present invention also includes a machine readable storage medium storing the computer program product.
Specific individual embodiments of the present invention are defined in the attached claims and explained in more detail below.
a and b show a human application of monitoring cough with a mobile phone or PDA in accordance with an embodiment of the present invention. Data can be sent wirelessly to a server, where spread of cough events and statistics can be visualized.
The present invention will be described with respect to particular embodiments and with reference to certain drawings but the invention is not limited thereto but only by the claims. The drawings described are only schematic and are non-limiting. In the drawings, the size of some of the elements may be exaggerated and not drawn on scale for illustrative purposes.
Furthermore, the terms first, second, third and the like in the description and in the claims, are used for distinguishing between similar elements and not necessarily for describing a sequential or chronological order. It is to be understood that the terms so used are interchangeable under appropriate circumstances and that the embodiments of the invention described herein are capable of operation in other sequences than described or illustrated herein.
Moreover, the terms top, bottom, over, under and the like in the description and the claims are used for descriptive purposes and not necessarily for describing relative positions. It is to be understood that the terms so used are interchangeable under appropriate circumstances and that the embodiments of the invention described herein are capable of operation in other orientations than described or illustrated herein.
It is to be noticed that the term “comprising”, used in the claims, should not be interpreted as being restricted to the means listed thereafter; it does not exclude other elements or steps. Thus, the scope of the expression “a device comprising means A and B” should not be limited to devices consisting only of components A and B. It means that with respect to the present invention, the only relevant components of the device are A and B.
Similarly, it is to be noticed that the term “coupled”, also used in the claims, should not be interpreted as being restricted to direct connections only. Thus, the scope of the expression “a device A coupled to a device B” should not be limited to devices or systems wherein an output of device A is directly connected to an input of device B. It means that there exists a path between an output of A and an input of B which may be a path including other devices or means.
Referring to
Based on the dimensions of the monitored environment a special representation can be provided showing the location and amount and/or type of cough(s). The method can comprise the use of other localization systems (like GPS, Galileo) for transmitting the amount/type of coughs detected at a specific location.
A cough detection algorithm is implemented on a mobile phone or PDA or laptop or other portable electronic device processing in real time the occurrence of the number of coughs and/or the type of coughs. This information is stored on the electronic device. The information can be stored together with the location of the cough. Optionally the location and the information can be transmitted to a server storing all such information (e.g. ID number, amounts of cough, type of cough, location). For example, using a password, a user can have access to the data, e.g. showing the number of coughs in time in a graph, together with the location of coughing. Governments and national or private health agencies can use this information from several users to gain information about the spread of respiratory disease (
In a particular embodiment of the present invention a cough detection algorithm is used to determine, e.g. by localization of coughs, whether the cough belongs to the carrier of the portable device (e.g. mobile phone, PDA, laptop) or to a third party—see
1. At least one sensor (and/or microphone) is used for data acquisition, of which acoustic characteristics of sound from the animals is calculated (model 1). This first model will estimate or calculate the required parameters for cough recognition. Some characteristic parameters are spectral content, autoregressive model parameters or the shape of the acoustic energy contained in the signal.
2. These characteristic parameters will be calculated or estimated per time window. A sequence of these parameters will give a time series of characteristic parameters.
3. A second model (model 2) is made in which dynamic features of the time series of characteristic parameters are estimated. These dynamics of the features of a bioresponse (like a cough event) will be described by the dynamic model parameters, which will allow classification of the bioresponse (cough events). The performance of the classifier is guaranteed via labelling in which an updated discrimination method is provided when necessary. Several events of coughing might be registered in time. When more microphones are used, the position of the cough event is derived. This can be done by using the time delay of arrival between the microphones, or other techniques in which positioning is possible. This results in a map which shows the 2D distribution of cough events (
The flow chart for the proposed application for cough recognition and localization is shown if
The extraction of individual sounds from a continuous recording is based on the envelope of the energy of the signal and a selected (environment specific) threshold as is presented in
The underlying principle is that low amplitude noise is recorded most of the time and when a sound occurs (any sound within the pig farm) will be recorded as a high energy signal. Whenever the amplitude of the envelope is higher than the threshold it is considered that there is a recording of a sound that needs to be identified. The mean value of the envelope over the complete recording is used for this application and experimentation suggested that it is adequate for extracting most of the signals that are of interest.
The Hilbert transform of a discrete time signal s[k] that is defined as:
where
for
and h[0]=0, and provides a 90° phase shift to the original signals use to automatically extract the envelope according to the following steps:
The result of this procedure is presented in
It is suggested that the mean value of the signal is adequate for the sound extraction procedure, but it should be noted that the noise level and the acoustics of the pig compartment affect the resulting signal, and the threshold should be chosen taking them into account.
a. Preprocessing of Individual Sounds
The sounds that usually occur in a pig compartment are pig movements, pig vocalizations, metal sounds (e.g. clanging of compartment doors) and low frequency noise caused primarily by ventilation fans. After the extraction of individual sounds from a continuous recording, a preprocessing takes place. To make sure that the sound extraction is correct, sounds that are very close to each other are considered as one. To clarify this, consider the case of a scream. It consists of the inhalation phase in which the animal inhales air into its lungs and the exhalation in which the production of the sound occurs. However, multiple repetitions of these phases might create a single scream while the envelope extraction may result in different sounds for each repetition of inhalation and exhalation. By preprocessing, this effect is avoided and results in complete sound signals only. Experimentation suggested that sounds that are closer than 100 ms be considered as a single sound. Furthermore, the length of each sound contains information that can be used in classification. Screams and grunts for example, are longer sounds that can last for up to a few seconds. Coughs on the other hand are sharp sounds that usually last from 200 ms up to 600 ms4. Sounds longer than 600 ms are therefore considered as non-interesting and ignored from the rest of the process. Although it is unlikely for sounds shorter than 200 ms to occur, this case is also considered and short sounds are also eliminated.
b. Auto Regression Analysis and Cough Recognition
Autoregressive (AR) analysis, is a method of estimating a signal s[k] with one of the form:
where the αi, i=1, 2, . . . , p are estimated minimizing an adequate criterion22, e[k] is a white noise signal and p is the order of the AR model
It has been shown that a connection can be made between Data Based Mechanistic (DBM) models and physical models. Although such a connection has not been made in this work, it is clear that such a connection exists and remains to be found. Based on this assumption and the study of the time domain characteristics of pig vocalizations an attempt to form a classifier is made. In this regard, it is observed that the positions of the AR parameters in a 3 dimensional space for the laboratory sounds of the first data set can serve as an adequate and computationally efficient classifier. It is suggested that plotting the AR parameters on the (a1, a2, a3) space they tend to form a cluster of sick pig cough sounds.
To gain an insight of the classification properties of the proposed method, the center (c1, c2, c3) of the sick cough cluster is defined as the mean value of the AR parameters of 5 randomly selected pre-labeled sick coughs. Its boundaries are defined as the vertices of the polyhedron whose edges in any direction ai equals the twice of the standard deviation of the training set in that direction. The length of each edge is based on the Chebyshev inequality according to which at least 75% of the training set values will be within this area.
Although it cannot be considered as a reliable measure since previous knowledge of the dataset can be considered (yet the choice of the training set is random), it provides an indication as to the result that can be achieved.
a. Estimation of the Time Difference of Arrival (TDOA)
The localization algorithm presented in section II.B.3.b requires the estimation of the TDOA of the signal on the 7 microphones in the pig house. Although many methods have been presented in the literature as described in the introduction, in this paper the envelope of the energy of the signal (
After the extraction of the envelope, the envelopes of the signals received in all microphones are normalized and their mean value is taken. The smallest of these values is used as a threshold to define the amplitude at which a sound is considered to begin. This is graphically presented in
b. The Localization Algorithm
If a sound originates from a certain position, the difference in the capturing times of this signal in two microphones, due to their different distance from the sound, results in a time delay between two microphones. By multiplying this time delay by the travelling speed of sound (343.4 m/s at 20° C.), a distance can be calculated. Let us call this the distance of the time delay, d_. Let dpa be the distance from a certain point p in the pig house to microphone a, and dpb the distance between the same point and microphone b. If at this specific point p a sound signal would be released, it would travel the distance dpa to microphone a and distance dpb to microphone b. At this point p, the distance of the time delay d_is equal to the difference dpa−dpb, so in the weight wp for the position p is:
wp=(dpa−dpb)−d—=0 (3)
In order to find the potential location of a sound source, the positions at which w=0 should be found. To compute these weights w, the test field is divided in a 2 dimensional grid with a resolution of 0.1 m. As the pig house is 21 m by 14 m, this implies a grid with a resolution of 210×140. In every point of the grid the weight 3 for every pair of microphones and summed. This is represented in the following equation:
where w(k, l) represents the total weight at position (k, l), (d(k,l),j−d(k,l,),j) the difference in distance between position (k,l) and microphones i and j the distance of the time delay between the signals at microphone i and j, and n the number of microphones, By calculating this weight w(k, l) for every position (k, l), the total area can be visualized in a three dimensional graph. An example of this graph is shown in
The position of the sound source is that point in the grid where the weight w(k, l) is minimal, i.e. the position at which the minimum of the graph is located. It could be argued that knowledge of the pig house geometry and the TDOA between the microphones would simplify the problem to one finding the point at which all equations of the form (3) would be satisfied for every pair of microphones. However, this would require a very accurate estimation of the TDOA leading to increased complexity of that algorithm. On the contrary, the algorithm presented above is more robust to TDOA uncertainty and therefore, the procedure that calculates it (section II.B.3.a) can be very simple. The overall result is shown in
To test the sensitivity of the proposed algorithm, the triangle sounds of the second data set are used. The real (measured values) and estimated values of the sound positions are presented in Table I.
It is noted that the positioning of tests 9 and 14 do not give the desired results. By examining the time domain signals in these cases, it is observed that the algorithm fails to correctly estimate the TDOA. The extracted signals don't correspond to the actual sounds due to high surrounding noise, which results to algorithm failure. However, the overall results suggest that the algorithm is of adequate accuracy for this specific application.
Example Cough Recognition with Camera's
The sensor in accordance with this embodiment is a top-view camera collecting images, in which the change of an individual subject's position and body shape (=the bioresponse) during cough is visible, e.g. for an animal, especially a farm animal such as a pig or for a human.
A model is made (model 1), describing the subject's position, posture or body shape, e.g. for an animal, especially a farm animal such as a pig or for a human. The model is for example a mathematical ellipse shape where position, orientation or shape (length and width) are defined by the model's posture parameters. The ellipse can be extended to a 32 point (or more) body contour model fitted through the image of a mammal or for example a model connecting 52 points on a human face (see
A second model is made (model 2) describing the variation of the posture parameters as a function of time, corresponding to the behavior of the subject, e.g. of an animal, especially a farm animal such as a pig or of a human. The so called dynamic model parameters of the second model are also updated continuously to account for the changing behavior of the subject, e.g. of an animal, especially a farm animal such as a pig or of a human.
Coughs of an individual subject (e.g. of an animal, especially a farm animal such as a pig or of a human) can be classified from the image measurements when the dynamic model parameters fall within limits which are defined by labeling.
Embodiments of the present invention can comprise control software in the form of a computer program product which provides the desired functionality when executed on a computing device, e.g. a laptop, a personal computer, a mobile phone, a PDA. Further, the present invention includes a data carrier such as a CD-ROM or a diskette which stores the computer product in a machine readable form and which executes at least one of the methods of the invention when executed on a computing device. Nowadays, such software is often offered on the Internet or a company Intranet for download, hence the present invention includes transmitting the computer product according to the present invention over a local or wide area network. The computing device may include one of a microprocessor and an FPGA.
The above-described method embodiments of the present invention may be implemented in a processing system 200 such as shown in
The present invention also includes a computer program product, which provides the functionality of any of the methods according to the present invention when executed on a computing device. Such computer program product can be tangibly embodied in a carrier medium carrying machine-readable code for execution by a programmable processor. The present invention thus relates to a carrier medium carrying a computer program product that, when executed on computing means, provides instructions for executing any of the methods as described above. The term “carrier medium” refers to any medium that participates in providing instructions to a processor for execution. Such a medium may take many forms, including but not limited to, non-volatile media, and transmission media. Non volatile media includes, for example, optical or magnetic disks, such as a storage device which is part of mass storage. Common forms of computer readable media include, a CD-ROM, a DVD, a flexible disk or floppy disk, a tape, a memory chip or cartridge or any other medium from which a computer can read. Various forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to a processor for execution. The computer program product can also be transmitted via a carrier wave in a network, such as a LAN, a WAN or the Internet. Transmission media can take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications. Transmission media include coaxial cables, copper wire and fibre optics, including the wires that comprise a bus within a computer.