The present invention relates generally to the detection and classification of facial muscle movements, such as facial expressions or other types of muscle activity, in human subjects. The invention is suitable for use in electronic entertainment or other platforms in which electroencephalograph (EEG) data is collected and analysed in order to determine a subject's facial expression in real-time in order to provide control signals to that platform, and it will be convenient to describe the invention in relation to that exemplary, non-limiting application.
Facial expression has long been one of the most important aspects of human to human communication. Humans have become accustomed to consciously and unconsciously showing our feelings and attitudes using facial expressions. Furthermore, we have become highly skilled at reading and interpreting facial expressions of others. Facial expressions form a very powerful part of our everyday life, everyday communications and interactions.
As technology progresses, more of our communication is mediated by machines. People now “congregate” in virtual chat rooms to discuss issues with other people. Text messaging is becoming more popular, resulting in new orthographic systems being developed in order to cope with this unhuman world. Currently, facial expressions have not been used in man machine communication interfaces. Interactions with machines are restricted to the use of cumbersome input devices such as keyboards and joysticks. This limits our communication to only premeditated and conscious actions.
There therefore exists a need to provide technology that simplifies man-machine communications. It would moreover be desirable for this technology to be robust, powerful and adaptable to a number of platforms and environments. It would also be desirable for this technology to optimise the use of natural human to human interaction techniques so that the man-machine interface is as natural as possible for a human user.
With this in mind, one aspect of the invention provides a method of detecting and classifying facial muscle movements including, the steps of:
detecting bio-signals from at least one bio-signal detector; and
applying at least one facial muscle movement-detection algorithm to a portion of the bio-signals affected by a predefined type of facial muscle movement in order to detect facial muscle movements of that predefined type.
The step of applying at least one facial movement-detection algorithm to the bio-signals may include:
comparing the bio-signal portion to a signature defining one or more distinctive signal characteristics of the predefined facial muscle movement type.
In a first embodiment of the invention, the step of applying at least one facial muscle movement-detection algorithm to the bio-signals may include:
directly comparing bio-signals from one or more predetermined bio-signal detectors to the signature.
In another embodiment of the invention, the step of applying at least one facial muscle movement-detection algorithm to the bio-signals may include:
projecting bio-signals from a plurality of bio-signal detectors onto one or more predetermined component vectors; and comparing the projections onto the one or more component vectors to that signature.
The predetermined component vectors may be determined from applying a first component analysis to historically collected bio-signals generated during facial muscle movements of the type corresponding to that first signature. “The first component analysis applied to the historically collected bio-signals may be independent component analysis (ICA). Alternatively, the first component analysis applied to the historically collected bio-signals may be principal component analysis (PCA). ” In this embodiment, the method may further include the steps of:
applying a second component analysis to the detected bio-signals; and
using the results of the second component analysis to update the one or more predetermined component vectors during bio-signal detection.
The second component analysis may be principal component analysis (PCA).
In yet another embodiment of the invention, the step of applying at least one facial muscle movement-detection algorithm to the bio-signals may include:
applying a desired transform to the bio-signals; and
comparing the results of the desired transform to that signature.
The desired transform may be selected from any one or more of a Fourier transform, wavelet transform or other signal transformation method.
The step of applying at least one facial muscle movement-detection algorithm to the bio-signals may further include the step of: separating the bio-signals resulting from the predefined type of facial muscle movement from one or more sources of noise in the bio-signals.
The sources of noise may include any one or more of electromagnetic interference (EMI), bio-signals not resulting from the predefined type of facial muscle movement and other muscle artefacts.
The facial muscle movement types may include facial expressions, such as blinking, winking, frowning, smiling and laughing.
The facial muscle movement may further include other muscle activity, such as eye movements, yawning, chewing and talking.
In one or more embodiments of the invention, the bio-signals may include electroencephalograph (EEG) signals.
The method may further include the step of:
generating a control signal representative of the detected facial muscle movement type for input to an electronic entertainment application or other application.
Another aspect of the invention provides an apparatus for detecting and classifying facial muscle movements including:
a sensor interface for receiving bio-signals from at least one bio-signal detector; and
a processing system for carrying out the step of:
applying at least one facial muscle movement-detection algorithm to a portion of the bio-signals affected by a predefined type of facial muscle movement in order to detect facial muscle movements of that predefined type.
These and other features, aspects and advantages of the present invention will become better understood with regard to the following description, appended claims, and accompanying figures which depict various views and embodiments of the device, and some of the steps in certain embodiments of the method of the present invention, where:
Turning now to
Traditional EEG analysis has focused solely on these signals from the brain. The main applications have been explorative research in which different rhythms (alpha wave, beta wave, etc) have been identified, pathology detection in which onset of dementia or physical injury can be detected, and self improvement devices in which bio-feedback is used to aid in various forms of meditation. Traditional EEG analysis considers signals resulting from facial muscle movement such as eye blinks to be artefacts that mask the real EEG signal desired to be analysed. Various procedures and operations are performed to filter these artefacts out of the EEG signals selected.
The applicants have developed technology that enables the sensing and collecting of electrical signals from the scalp electrodes, and the application signal processing techniques to analyze these signals in order to detect and classify human facial expressions such as blinking, winking, frowning, smiling, laughing, talking etc. The result of this analysis is able to be used by a variety of other applications, including but not being limited to electronic entertainment applications, computer programs and simulators.
Each of signals detected by the headset 102 of electrodes is fed through a sensor interface 104 and then digitized by an analogue-to-digital converter 106. Digitized samples of the signal captured by each of the scalp sensors are stored during operation of the apparatus 100 in a data buffer 108 for subsequent processing.
The apparatus 100 further includes a processing system 109 including a processing device 110 and associated memory device for storing a series of instructions (otherwise known as a computer program or computer control logic) to cause the processing device 110 to perform desired functional steps. Notably, the memory device 112 includes a series of instructions defining at least one algorithm 114 for detecting and classifying a predetermined type of facial muscle movement. Upon detection of each predefined type of facial muscle movement, a corresponding control signal is transmitted to an input/output interface 116 for transmission via a wireless transmission device 118 to a platform 120 for use as a control input by electronic entertainment applications, programs, simulators or the like.
In this embodiment, the invention is implemented in software and the series of instructions is stored in the memory device 112. The series of instructions causes the processing device 110 to perform the functions of the invention as described herein. In another embodiment, the invention is implemented primarily in hardware using, for example, hardware components such as application specific integrated circuits (ASICs). Implementation of the hardware state machine so as to perform the functions described herein will be apparent to persons skilled in the relevant art. In yet another embodiment, the invention is implemented using a combination of software and hardware.
As seen in
In traditional EEG research, many signals resulting from eye blinks and other facial muscle movements have been considered to be artefacts masking the real EEG signal required for analysis.
The apparatus 100 applies at least one facial muscle movement-detection algorithm 114 to a portion of the bio-signals captured by the headset 102 affected by a predefined type of facial muscle movement in order to detect facial muscle movements of that predefined type. In order to do so, a mathematical signature defining one or more distinctive characteristics of the predefined facial muscle movement type is stored in the memory device 112. The relevant portion of the bio-signals affected by the predefined type of facial muscle movement is then compared to that mathematical signature.
In order to generate the mathematical signature for each facial muscle movement, and as shown in
Once the EEG signal recordings are collected, signal processing operations are performed at step 706 in order to identify one or more distinctive signal characteristics of each predefined facial muscle movement type. Identification of these distinctive signal characteristics in each EEG signal recording enables classification of the facial muscle movement in a subject to be classified at step 708 and an output signal representative of the detected type of facial muscle movement output at step 710. Testing and verification of the output signal at step 712 enables a robust data set to be established.
In one of the modes of operation, the portion of the bio-signals affected by a predefined type of facial muscle movement is predominantly found in signals from a limited number of scalp electrodes. For example, eye movement and blinking can be detected by using only two electrodes near the eyes, such as the Fp1 and Fp2 channels shown in
It is also possible to combine the signals from one or more electrodes together, and then to compare that combined bio-signal to a signature defining the distinctive signal characteristics of the predefined facial muscle movement type. A weighting may be applied to each signal prior to the signal combining operation in order to improve the accuracy of the facial muscle movement detection and classification.
In other modes of operation, the apparatus 100 acts to decompose the scalp electrode signals into a series of components and then to compare the projection of the bio-signals from the scalp electrodes onto one or more predetermined component vectors with the mathematical signatures defining the signal characteristics of each type of facial muscle movement. In this regard, independent component analysis (ICA) has been found to be useful for defining the characteristic forms of the potential function across the entire scalp. Independent component analysis maximizes the degree of statistical independence among outputs using a series of contrast functions.
As seen in
Another technique for the decomposition of the bio-signals into components is principal component analysis (PCA) which ensures that output pairs are uncorrelated. In various embodiments of the invention, either or both of independent component analysis and principal component analysis may be used in order to detect and classify facial muscle movements.
In other modes of operation, the apparatus 100 may act to apply a desired Fourier transform to the bio-signals from the scalp electrodes. The transform could alternatively be a wavelet transform or any other suitably signal transformation method. Combinations of one or more different signal transformation methods may also be used. Portions of the bio-signals affected by a predefined type of facial muscle movement may then be identified using a neural network.
Each of the above described techniques for detection and classification of the facial muscle movements may be incorporated into a facial expression algorithm stored in the memory storage device 112. Once a particular facial expression detection algorithm has been fully developed, the algorithm may be implemented as a piece of-real-time software program or transferred into a digital signal processing environment.
As an example of the type of facial muscle movement that can be detected and classified by the apparatus 100, a facial expression algorithm for the detection of an eye blink will now be described. It is to be understood that the general principles described in relation to the algorithm are also applicable to the detection and classification of other types of facial muscle movement.
Eye blinks are present in all interior electrodes but feature most prominently in the two frontal channels Fp1 and Fp2.
In a preferred embodiment of the invention, the predetermined component vectors are identified from historically collected data from a number of subjects and/or across a number of different sessions. As shown in
At step 1002, independent component analysis is performed on the recorded EEG data and the component vectors onto which are projected the perturbations in the EEG signals resulting from the relevant facial muscle movement are determined at step 1004. The relevant component vectors to be used in subsequent real-time data recording and analysis are then recorded in the storage device 112 by facial muscle movement type. In this case, three exemplary types of facial muscle movement are able to be classified, namely vertical eye movement at step 1006, horizontal eye movement at step 1008 and an eye blink at step 1010.
However, independent component analysis is a computationally time consuming activity and in many instances is inappropriate for real-time use. Whilst independent component analysis may be used to generate average component vectors for use in the detection and classification of various types of facial muscle movements, the balance of signals across different electrodes vary slightly across different sessions and users.
Accordingly, the average component vectors defined using independent component analysis of historically gathered data will not be optimal during real-time data detection and classification. During real-time operation of the apparatus 100, principal component analysis can be performed on the real-time data and the resulting component vector can be used to update the component vector generated by independent component analysis throughout each session. In this way, the resulting facial muscle movement-detection algorithms can be made robust against electrodes shifting and variances in the strengths of the contacts.
As can be seen at step 1012, the projection of the historically collected data on the vector component is initially used for the facial muscle movement algorithms 114. However, as data is collected and stored in the data buffer 108 at step 1014, principal component analysis is carried out at step 1016 on the stored data, and the results of the analysis generated at step 1018 are then used to update the component vectors developed during offline independent component analysis.
One or more of the component vectors may be updated during facial muscle movement detection and classification in order to improve the accuracy and viability of the facial muscle movement detection algorithms.
As has been previously described, component vectors can be used in order that a correct weighting is applied to the contribution from the signals of each relevant electrode. An example of an eye-blink component vector is shown in the vector diagram 1100 in
and it represents an infinitesimal change in the function with respect to χ. For eye blink detection, a derivative of the signal with respect to time is taken at step 1204 the result of low pass filtering and the first order derivative operation on the component vector for an eye blink is shown in
Of particular interest are zero-crossing points in the first order derivative signal, which fall into two categories: positive zero-crossing point and negative zero-crossing point. The sign (namely either positive or negative) of the zero-crossing points indicates whether the signal increases or decreases after crossing the axis. For each eye blink, there are two positive zero-crossing points, respectively referenced 1306 and 1308 on
Accordingly, once the zero-crossing points are identified, the algorithm verifies whether there exists a negative zero-crossing point sandwiched between the two positive zero-crossing points, and the eye blink peak passes amplitude threshold. A default value of the amplitude threshold is initially made, but to increase the accuracy of the algorithm, the threshold amplitude is adjusted at step 1218 based upon the strength of an individuals eyes blink peaks.
In this example, the eye blink “signature” defines the distinctive signal characteristics representative of an eye blink, namely a negative zero crossing sandwiched between two positive zero crossings in the first order derivative of the filtered signal, and a signal amplitude greater than a predetermined threshold in the filtered signal. The signature is updated by changing the threshold forming part of the distinctive signal characteristics of the signature during facial muscle movement detection and classification. In other embodiments, the digital signature may define other amplitudes or signal characteristics that exceed one or more predetermined thresholds. The signature may be updated during facial muscle movement detection and classification by changing one or more of those thresholds. More generally, any one or more distinctive signal characteristics of a predetermined facial muscle movement type that form part of a digital signature can be updated during the course of facial muscle movement detection and classification in order to improve the viability and accuracy of the facial muscle movement detection algorithms implemented by the apparatus 100.
The result of applying the above described operations to an EEG signal recorded at, for example, the electrode Fp1 containing eye blinks is shown in
Although the present invention has been discussed in considerable detail with reference to certain preferred embodiments, other embodiments are possible. Therefore, the scope of the appended claims should not be limited to the description of preferred embodiments contained in this disclosure. All references cited herein are incorporated by reference in their entirety.