WO2020128476A1 - Biometric user recognition - Google Patents
Biometric user recognition Download PDFInfo
- Publication number
- WO2020128476A1 WO2020128476A1 PCT/GB2019/053616 GB2019053616W WO2020128476A1 WO 2020128476 A1 WO2020128476 A1 WO 2020128476A1 GB 2019053616 W GB2019053616 W GB 2019053616W WO 2020128476 A1 WO2020128476 A1 WO 2020128476A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- biometric
- received
- user
- prints
- biometric data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/02—Preprocessing operations, e.g. segment selection; Pattern representation or modelling, e.g. based on linear discriminant analysis [LDA] or principal components; Feature selection or extraction
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/04—Training, enrolment or model building
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/06—Decision making techniques; Pattern matching strategies
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/20—Pattern transformations or operations aimed at increasing system robustness, e.g. against channel noise or different working conditions
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0316—Speech enhancement, e.g. noise reduction or echo cancellation by changing the amplitude
- G10L21/0364—Speech enhancement, e.g. noise reduction or echo cancellation by changing the amplitude for improving intelligibility
- G10L2021/03646—Stress or Lombard effect
Definitions
- Embodiments described herein relate to methods and devices for biometric user recognition.
- biometrics for the purpose of user recognition.
- speaker recognition is used to control access to systems such as smart phone applications and the like.
- Biometric systems typically operate with an initial enrolment stage, in which the enrolling user provides a biometric sample.
- the enrolling user provides one or more speech sample.
- the biometric sample is used to produce a biometric print
- the biometric print is a biometric voice print, which acts as a model of the user's speech.
- this newly received biometric sample can be compared with the biometric print of the enrolled user.
- biometric sample is sufficiently dose to the biometric print to enable a decision that the newly received biometric sample was received from the enrolled user.
- biometric identifiers for example a user’s voice
- biometric sample that is received during the enrolment stage, and is used to form the biometric print is somewhat atypical, this may mean that, in the subsequent verification stage, when a newly received biometric sample is compared with the biometric print of the enrolled user, this may produce misleading results.
- a method of biometric user recognition comprising: in an enrolment stage:
- a system configured for performing the method.
- a device comprising such a system.
- the device may comprise a mobile telephone, an audio player, a video player, a mobile computing platform, a games device, a remote controller device, a toy, a machine, or a home automation controller or a domestic appliance.
- a computer program product comprising a computer-readable tangible medium, and instructions for performing a method according to the first aspect.
- a non-transitory computer readable storage medium having computer-executable instructions stored thereon that, when executed by processor circuitry, cause the processor circuitry to perform a method according to the first aspect.
- Figure 1 illustrates a smartphone
- Figure 2 is a schematic diagram, illustrating the form of the smartphone
- Figure 3 is a flow chart illustrating a methcxi of enrolment of a user into a biometric identification system
- Figure 4 illustrates a stage in the method of Figure 3
- Figure 5 illustrates a stage in the method of Figure 3
- Figure 6 illustrates a stage in the method of Figure 3
- Figure 7 illustrates a stage in the method of Figure 3
- Figure 8 illustrates a stage in the method of Figure 3
- Figure 9 illustrates a stage in the method of Figure 3
- Figure 10 is a flow chart illustrating a method of verification of a user in a biometric identification system
- Figure 11 illustrates a stage in the method of Figure 10.
- the methods described herein can be implemented in a wide range of devices and systems, for example a mobile telephone, an audio player, a video player, a mobile computing platform, a games device, a remote controller device, a toy, a machine, or a home automation controller or a domestic appliance.
- a mobile telephone for example a mobile telephone, an audio player, a video player, a mobile computing platform, a games device, a remote controller device, a toy, a machine, or a home automation controller or a domestic appliance.
- a mobile telephone for example a mobile telephone, an audio player, a video player, a mobile computing platform, a games device, a remote controller device, a toy, a machine, or a home automation controller or a domestic appliance.
- a remote controller device for example a mobile telephone, an audio player, a video player, a mobile computing platform, a games device, a remote controller device, a toy, a machine, or a home automation controller or a domestic appliance.
- FIG. 1 illustrates a smartphone 10, having microphones 12, 12a for detecting ambient sounds.
- Figure 1 shows a headset 14, which can be connected to the smartphone 10 by means of a plug 16 and a socket 18 in the smartphone 10.
- the smartphone 10 also includes two earpieces 20, 22, which each include a respective loudspeaker for playing sounds to be heard by the user.
- each earpiece 20, 22 may include a microphone, for detecting sounds in the region of the user's ears while the earpieces are in use.
- Figure 2 is a schematic diagram, illustrating the form of the smartphone 10.
- Figure 2 shows various interconnected components of the smartphone 10. It will be appreciated that the smartphone 10 will in practice contain many other components, but the following description is sufficient few an understanding of the present invention.
- Figure 2 shows the microphones 12, 12a mentioned above.
- the smartphone 10 is provided with more than two microphones.
- Figure 2 also shows a memory 30, which may in practice be provided as a single component or as multiple components.
- the memory 30 is provided for storing data and program instructions.
- FIG. 2 also shows a processor 32, which again may in practice be provided as a single component or as multiple components.
- a processor 32 may be an applications processor of the smartphone 10.
- FIG. 2 also shows a transceiver 34, which is provided for allowing the smartphone 10 to communicate with external networks.
- the transceiver 34 may include circuitry for establishing an internet connection either over a WiFi local area network or over a cellular network.
- FIG. 2 also shows audio processing circuitry 36, for performing operations on the audio signals detected by the microphones 12, 12a as required.
- the audio processing circuitry 36 may filter the audio signals or perform other signal processing operations.
- the smartphone 10 is provided with voice biometric
- the smartphone 10 is able to perform various functions in response to spoken commands from an enrolled user.
- the biometric functionality is able to distinguish between spoken commands from the enrolled user, and the same commands when spoken by a different person.
- certain embodiments of the invention relate to operation of a smartphone or another portable electronic device with some sort of voice operability, for example a tablet or laptop computer, a games console, a home control system, a home entertainment system, an in-vehicle entertainment system, a domestic appliance, or the like, in which the voice biometric functionality is performed in the device that is intended to carry out the spoken command.
- Certain other embodiments relate to systems in which the voice biometric functionality is performed on a smartphone or other device, which then transmits the commands to a separate device if the voice biometric functionality is able to confirm that the speaker was the enrolled user.
- the spoken commands are transmitted using the transceiver 34 to a remote speech recognition system, which determines the meaning of the spoken commands.
- the speech recognition system may be located on one or more remote server in a cloud computing environment. Signals based on the meaning of the spoken commands are then returned to the smartphone 10 or other local device. In other embodiments, the speech recognition is also performed on the smartphone 10.
- the smartphone 10 is provided with ear biometric functionality. That is, when certain actions or operations of the smartphone 10 are initiated by a user, steps are taken to determine whether the user is an enrolled user. Specifically, the ear biometric system determines whether the person wearing the headset 14 is an enrolled user. More specifically, specific test acoustic signals (for example in the ultrasound region) are played through the loudspeaker in one or more of the earpieces 20, 22. Then, the sounds detected by the microphone in the one or more of the earpieces 20, 22 are analysed. The sounds detected by the microphone in response to the test acoustic signal are influenced by the properties of the wearer's ear, and specifically the wearer's ear canal.
- test acoustic signals for example in the ultrasound region
- the influence is therefore characteristic of the wearer.
- the influence can be measured, and can then be compared with a model of the influence that has previously been obtained during enrolment. If the similarity is sufficiently high, then it can be determined that the person wearing the headset 14 is the enrolled user, and hence it can be determined whether to permit the actions or operations initiated by the user.
- FIG. 3 is a flow chart, illustrating a method of enrolling a user in a biometric system.
- the method begins at step 50, when fee user indicates feat they wish to enrol in fee biometric system.
- first biometric data are received, relating to a biometric identifier of fee user.
- a plurality of biometric prints are generated for fee biometric identifier, based on fee received first biometric data.
- fee user may be enrolled, based on the plurality of biometric prints.
- fee step of receiving the first biometric data may comprise prompting fee user to speak, and recording fee speech generated by the user in response, using one or more of fee microphones 12, 12a.
- the biometric system is a voice biometric system, and the details of the system generally relate to a voice biometric system.
- the biometric system may use any suitable biometric, such as a fingerprint, a palm print, fecial features, or iris features, amongst others.
- fee step of receiving fee first biometric data may comprise checking feat fee user is wearing the headset, and then playing fee test acoustic signals (for example in the ultrasound region) through fee loudspeaker in one or more of the earpieces 20, 22, and recording fee resulting acoustic signal (the ear response signal) using the microphone in fee one or more of fee earpieces 20, 22.
- a plurality of biometric prints are generated for the biometric identifier, based on the received first biometric data.
- Figure 4 illustrates a part of this step, in one embodiment. Specifically, Figure 4 illustrates a situation where, in a voice biometric system, a user is prompted to speak a trigger word or phrase multiple times. Figure 4 then illustrates the signal detected by the microphone 12 in response to the user’s speech. Thus, there are bursts of sound during the time periods t1 , t2, t3, t4, and t5, and the microphone generates signals 60, 62, 64, 66, and 68, respectively during these time periods. Thus, the microphone signal generated during these periods acts as voice biometric data.
- the step of receiving the first biometric data may comprise playing a test acoustic signal multiple times, and detecting a separate ear response signal each time the test acoustic signal is played.
- a voice print is formed from the concatenated signal.
- multiple voice prints are formed from the voice biometric data received during the time periods t1 , t2, t3, t4, t5.
- a first voice print may be formed from the signal 60
- a second voice print may be formed from the signal 62
- a third voice print may be formed from the signal 64
- a fourth voice print may be formed from the signal 66
- a fifth voice print may be formed from the signal 68.
- further voice prints may be formed from pairs of the signals, and/or from groups of three of the signals, and/or from groups of four of the signals.
- a further voice print may be formed from all five of the signals.
- a convenient number of voice prints can then be obtained from different combinations of signals.
- a resampling methodology such as a bootstrapping technique can be used to select groups of the signals that are used to form respective voice prints.
- one, or more, or all of the voice prints may be formed from a combinatorial selection of sections.
- a total of seven voice prints may be obtained, from the three signals separately, the three possible pairs of signals, and the three signals taken together.
- a user may be prompted to repeat the same trigger word or phrase multiple times, it is also possible to use a single utterance of the user, and divide it into multiple sections, and to generate the multiple voice prints using the multiple sections in the same way as described above for the separate utterances.
- Figure 5 illustrates a further part of step 52, in which the plurality of biometric prints are generated for the biometric identifier, based on the received first biometric data.
- Figure 5 shows that the received signal is passed to a pre-processing block 80, which performs pre-processing operations on the received signal.
- the pre- processed signal is then passed to a feature extraction block 82, which extracts specific predetermined features from the pre-processed signal.
- the step of feature extraction may for example comprise extracting Mel Frequency Cepstrai Coefficients (MFCCs) from the pre-processed signal.
- MFCCs Mel Frequency Cepstrai Coefficients
- the step of performing the pre-processing operations on the received signal comprises receiving the signal, and performing pre-processing operations that put the received signal into a form in which the relevant features can be extracted.
- Figure 6 illustrates one possible form of the pre-processing block 80.
- the received signal is passed to a framing block 90, which divides the received signal into frames of a predetermined duration.
- each frame consists of 320 samples of data (and has a duration of 20ms). Further, each frame overlaps the preceding frame by 50%. That is, if the first frame consists of samples numbered 1- 320, the second frame consists of samples numbered 161-480, the third frame consists of samples numbered 321-480, etc.
- the frames generated by the framing block 90 are passed to a voice activity detector (VAD) 92, which attempts to detect the presence of speech in each frame of the received signal.
- VAD voice activity detector
- the output of the framing block 90 is also passed to a frame selection block 94, and the VAD 92 sends a control signal to the frame selection block 94, so that only those frames that contain speech are considered further.
- the data passed to the frame selection block 94 may be passed through a buffer, so that the frame that contains the start of the speech will be recognised as containing speech.
- the received signal may be divided into multiple sections, and these sections may be kept separate or combined as desired to produce respective signal segments. These signal segments are applied to the preprocessing block 80 and feature extraction block 82, such that a respective voice print is formed from each signal segment.
- a received speech signal is divided into sections, and multiple voice prints are formed from these sections.
- multiple voice prints are formed from a received speech signal without dividing it into sections.
- multiple voice prints are formed from differentiy framed versions of a received speech signal.
- multiple ear biometric prints can be formed from differentiy framed versions of an ear response signal that is generated in response to playing a test acoustic signal or tone through the loudspeaker in the vicinity of a wearer's ear.
- Figure 7 illustrates the formation of a plurality of differently framed versions of the received audio signal, each of the framed versions having a respective frame start position.
- the entire received audio signal may be passed to the framing block 90 that is shown in Figure 6.
- each frame consists of 320 samples of data (with a duration of 20ms). Further, each frame overlaps the preceding frame by 50%.
- Figure 7(a) shows a first one of the framed versions of the received audio signal.
- a first frame a1 has a length of 320 samples
- a second frame a2 starts 160 samples after the first frame
- a third frame a3 starts 160 samples after the second (i.e. at the end of the first frame)
- the fourth frame a4 the fifth frame a5, and the sixth frame a6, etc.
- the start of the first frame a1 in this first framed version is at the frame start position
- each frame consists of 320 samples of data (with a duration of 20ms). Further, each frame overlaps the preceding frame by 50%.
- Figure 7(b) shows another of the framed versions of the received audio signal.
- a first frame b1 has a length of 320 samples
- a second frame b2 starts 160 samples after the first frame
- a third frame b3 starts 160 samples after the second (i.e. at the end of the first frame)
- the fourth frame b4 the fifth frame b5, and the sixth frame b6, etc.
- the start of the first frame bl in this second framed version is at the frame start position Ob, and this is offset from the frame start position Oa of the first framed version by 20 sample periods.
- each frame consists of 320 samples of data (with a duration of 20ms). Further, each frame overlaps the preceding frame by 50%.
- Figure 7(c) shows another of the framed versions of the received audio signal.
- a first frame d has a length of 320 samples
- a second frame c2 starts 160 samples after the first frame
- a third frame c3 starts 160 samples after the second (i.e. at the end of the first frame)
- the fourth frame c4 the fifth frame c5, and the sixth frame c6, etc.
- the start of the first frame d in this third framed version is atthe frame start position
- the offset between different framed versions can be any desired value. For example, with an offset of two sample periods between different framed versions, 80 framed versions can be formed; with an offset of four sample periods between different framed versions, 40 framed versions can be formed; with an offset of five sample periods between different framed versions, 32 framed versions can be formed; with an offset of eight sample periods between different framed versions, 20 framed versions can be formed; or with an offset of 10 sample periods between different framed versions, 16 framed versions can be formed.
- the offset between each adjacent pair of different framed versions need not be exactly the same.
- some of the offsets being 26 sample periods and other offsets being 27 sample periods, six framed versions can be formed.
- the different framed versions, generated by the framing block 90, are then passed to the voice activity detector (VAD) 92 and the frame selection block 94, as described with reference to Figure 6.
- VAD voice activity detector
- the VAD 92 attempts to detect the presence of speech in each frame of the current version of the received signal, and sends a control signal to the frame selection block 94, so that only those frames that contain speech are considered further. If necessary, the data passed to the frame selection block 94 may be passed through a buffer, so that the frame that contains the start of the speech will be recognised as containing speech.
- the data making up the frames may be buffered as appropriate, so that the calculations involved in the feature extraction can be performed on each frame of the relevant framed versions, with the minimum of delay.
- a sequence of frames containing speech is generated. These sequences are passed, separately, to the feature extraction block 82 shown in Figure 5, and a separate voice print is generated for each of the differently framed versions.
- multiple voice prints are formed from differently framed versions of a received speech signal.
- multiple voice prints are formed from a received speech signal in a way that takes account of different degrees of vocal effort that may be made by a user when performing speaker verification. That is, it is known that the vocal effort used by a speaker will distort spectral features of the speaker’s voice. This is referred to as the Lombard effect.
- the user will perform the enrolment process under relatively favourable conditions, for example in the presence of low ambient noise, and with the device positioned relatively dose to the user’s mouth.
- the instructions provided to the user at the start of the enrolment process may suggest that the process be carried out under such conditions.
- measurement of metrics such as the signaMo-noise ratio may be used to test that the enrolment was performed under suitable conditions. In such conditions, the vocal effort required will be relatively low.
- the level of vocal effort employed by the user may vary.
- the user may be in the presence of higher ambient noise, or may be speaking into a device that is located at some distance from their mouth, for example.
- These embodiments therefore attempt to generate multiple voice prints from a received speech signal, where the different voice prints may each be appropriate for a certain level of vocal effort on the part of the speaker.
- a signal is detected by the microphone 12, far example when the user is prompted to speak a trigger word or phrase, either once or multiple times, typically after the user has indicated a wish to enrol with the speaker recognition system.
- the speech signal may represent words or phrases chosen by the user.
- the enrolment process may be started on the basis of random speech of the user.
- the received signal is passed to a pre-processing block 80, as shown in Figure 5.
- Figure 8 is a block diagram, showing the form of the pre-processing block 80, in some embodiments. Specifically, a received signal is passed to a framing block 110, which divides the received signal into frames.
- the received signal may be divided into overlapping frames.
- the received signal may be divided into frames of length 20ms, with each frame overlapping the preceding frame by 10ms.
- the received signal may be divided into frames of length 30ms, with each frame overlapping the preceding frame by 15ms.
- a frame is passed to a spectrum estimation block 112.
- the spectrum generation block 112 extractsthe short term spectrum of one frame of the user's speech.
- the spectrum generation block 112 may perform a linear prediction (LP) method. More specifically, the short term spectrum can be found using an L1 -regularised LP model to perform an all-pole analysis. Based on the short term spectrum, it is possible to determine whether the user's speech during that frame is voiced or unvoiced.
- LP linear prediction
- a deep neural network trained against a golden reference, for example using Praat software
- performing an autocorrelation with unit delay on the speech signal because voiced speech has a higher autocorrelation for non-zero lags
- performing a linear predictive coding (LPC) analysis because the initial reflection coefficient is a good indicator of voiced speech
- looking at the zero-crossing rate of the speech signal because unvoiced speech has a higher zero-crossing rate
- looking at the short term energy ofthe signal which tends to be higher for voiced speech
- fracking the first formant frequency F0 because unvoiced speech does not contain the first format frequency
- examining the error in a linear predictive coding (LPC) analysis becausethe LPC prediction error is lower for voiced speech
- using automatic speech recognition to identifythe words being spoken and hencethe division of the speech into voiced and unvoiced speech; or fusing any or all of the above.
- Voiced speech is more characteristic of a particular speaker, and so, in some embodiments, frames that contain little or no voiced speech are discarded, and only frames that contain significant amounts of voiced speech are considered further.
- the extracted short term spectrum for each frame is passed to an output 114.
- the extracted short term spectrum for each frame is passed to a spectrum modification block 116, which generates at least one modified spectrum, by applying effects related to a respective vocal effort.
- the user will perform the enrolment process under relatively favourable conditions, for example in the presence of low ambient noise, and with the device positioned relatively dose to the user's mouth.
- the instructions provided tothe user atthe start of the enrolment process may suggest that the process be carried out under such conditions.
- measurement of metrics such asthe signal-to-noise ratio may be used to test that the enrolment was performed under suitable conditions.
- the vocal effort required will be relatively low.
- the level of vocal effort employed by the user may vary. For example, the user may be in the presence of higher ambient noise, or may be speaking into a device that is located at some distance from their mouth, for example.
- one or more modified spectrum is generated by the spectrum modification block 116.
- the or each modified spectrum corresponds to a particular level of vocal effort, and the modifications correspond tothe distortions that are produced by the Lombard effect.
- the spectrum obtained by the spectrum generation block 112 is characterised by a frequency and a bandwidth of one or more formant components ofthe user's speech.
- the first four formants may be considered.
- only the first formant is considered.
- the spectrum generation block 112 performs an all-pole analysis, as mentioned above, the conjugate poles contributing to those formants may be considered.
- the modified formant component or components may be generated by modifying at least one of the frequency and the bandwidth of the formant component or components.
- the modification may comprise modifying the pole amplitude and/or angle in order to achieve the intended frequency and/or bandwidth modification.
- the frequency of the first formant, F1 may increase, while the frequency of the second formant, F2, may slightly decrease.
- a modified spectrum can then be obtained from each set of modified formant components.
- Figure 3 of the document“Robust formant features for speaker verification in the Lombard effect”, mentioned above, indicates that the frequency of the first formant, F1, will on average increase by about 10% in the presence of babble noise at 65dB SPL, by about 14% in the presence of babble noise at 70dB SPL, by about 17% in the presence of babble noise at 75dB SPL, by about 8% in the presence of pink noise at 65dB SPL, by about 11 % in the presence of pink noise at 70dB SPL, and by about 15% in the presence of pink noise at 75dB SPL.
- Figure 4 indicates that the bandwidth of the first formant, F1, will on average decrease by about 9% in the presence of babble noise at 65dB SPL, by about 9% in the presence of babble noise at 70dB SPL, by about 11% in the presence of babbie noise at 75dB SPL, by about 8% in the presence of pink noise at 65dB SPL, by about 9% in the presence of pink noise at 70dB SPL, and by about
- these variations can be used to form modified spectra from the spectrum obtained by the spectrum generation block 112. For example, if it is desired to form two modified spectra, then the effects of babble noise and pink noise, both at 70dB SPL, can be used to form the modified spectra.
- a modified spectrum representing the effects of babbie noise at 70dB SPL can be formed by taking the spectrum obtained in step 52, and by then increasing the frequency of the first formant, F1 , by 14%, and decreasing the bandwidth of F1 by 9%.
- a modified spectrum representing the effects of pink noise at 70dB SPL can be formed by taking the spectrum obtained in step 52, and by then increasing the frequency of the first formant, F1 , by 11 %, and decreasing the bandwidth of F1 by 9%.
- Figures 3 and 4 of the document mentioned above also indicate the changes that occur in the frequency and bandwidth of other formants, and so these effects can also be taken into consideration when forming the modified spectra, in other examples.
- any desired number of modified spectra may be generated, each corresponding to a particular level of vocal effort, and the modified spectra are output as shown at 118. 120 in Figure 8.
- the extracted short term spectrum for the frame, and the or each modified spectrum are then passed to the feature extraction block 82, which extracts features of the spectra.
- the features that are extracted may be Mel Frequency Cepstral
- MFCCs Perceptual Linear Prediction (PLP) features, Linear Predictive Coding (LPC) features, Linear Frequency Cepstral coefficients (LFCC), features extracted from Wavelets or Gammatone filterbanks, or Deep Neural Network (DNN>based features may be extracted.
- PLP Perceptual Linear Prediction
- LPC Linear Predictive Coding
- LFCC Linear Frequency Cepstral coefficients
- DNN>based features Deep Neural Network
- one voice print may be formed, based on the extracted features of the spectra for the multiple frames of the enrolling speaker’s speech.
- a respective further voice print may then be formed, based on the modified spectrum obtained from the multiple frames, for each of the effort levels used to generate the respective modified spectrum.
- one voice print may be formed, based on the extracted features of the unmodified spectra for the multiple frames of the enrolling speaker’s speech, and two additional voice prints may be formed, with one additional voice print being based on the spectra for the multiple frames of the enrolling speaker’s speech modified according to the first level of additional vocal effort, and the second additional voice print being based on the spectra for the multiple frames of the enrolling speaker’s speech modified according to the second level of additional vocal effort.
- the embodiment described above generate multiple voice prints from a received speech signal, where the different voice prints may each be appropriate far a certain level of vocal effort on the part of the speaker, and does this by extracting a property of the received speech signal, manipulating this property to reflect different levels of vocal effort, and generating the voice prints from the manipulated properties.
- one voice print is generated from the received speech signal, and further voice prints are derived by manipulating the first voice print, such that the further voice prints are each appropriate for a certain level of vocal effort on the part of the speaker.
- the received speech signal is passed to a pre-processing block 80, which performs pre-processing operations on the received signal, for example as described with reference to Figure 6, in which frames containing speech are selected.
- Figure 9 is a block diagram showing the processing of the selected frames.
- Figure 9 shows the pre-processed signal being passed to a feature extraction block 130, which extracts specific predetermined features from the pre- processed signal.
- the step of feature extraction may for example comprise extracting Mel Frequency Cepstral Coefficients (MFCCs) from the pre-processed signal.
- MFCCs Mel Frequency Cepstral Coefficients
- the set of extracted MFCCs then act as a model of the user's speech, or a voice print, and the voice print is output as shown at 132.
- the voice print is also passed to a model modification block 134, which applies transforms to the basic voice print to generate one or more different voice prints, output as shown at 136, .... 138, each of which reflects a respective level of vocal effort on the part of the speaker.
- Figure 3 therefore shows a method, in which multiple voice prints are generated, as part of a process of enrolling a user into a biometric user recognition scheme.
- Figure 10 is a flow chart, illustrating a method performed during a verification stage, once a user has been enrolled.
- the verification stage may for example be initiated when a user of a device performs an action or operation, whose execution depends on the identity of the user. For example, if a home automation system receives a spoken command to "play my favourite music”, the system needs to know which of the enrolled users was speaking. As another example, if a smartphone receives a command to transfer money by means of a banking program, the program may require biometric authentication that the person giving the command is authorised to do so.
- the method involves receiving second biometric data relating to the biometric identifier of the user.
- the second biometric data is of the same type as the first biometric data received during enrolment. That is, the second biometric data may be voice biometric data, for example in the form of signals representing the user’s speech; ear biometric data, or the like.
- the method involves performing a comparison of the received second biometric data with the plurality of biometric prints that were generated during the enrolment stage.
- the process of comparison may be performed using any convenient method. For example, in the case of biometric voice prints, the comparison may be performed by detecting the user’s speech, extracting features from the detected speech signal as described with reference to the enrolment, and forming a model of the user’s speech. This model may then be compared separately with the multiple biometric voice prints.
- the method involves performing user recognition based on the comparison of the received second biometric data with the plurality of biometric prints.
- Figure 11 is a block diagram, illustrating one possible way of performing the comparison of the received second biometric data with the plurality of biometric prints.
- the system is a voice biometric system, and hence that the received second biometric data is speech data, and the plurality of biometric prints are voice prints.
- the plurality of biometric prints are voice prints.
- a number of biometric voice prints (BVP) namely BVP1 , BVP2, ..., BVPn, indicated by reference numerals 170, 172, 174 are stored.
- a speech signal obtained duringthe verification stage is received at 176, and compared separately with each of the voice prints 170, 172, 174. Each comparison gives rise to a respective score S1,
- Voice prints 178 for a cohort of other speakers are also provided, and the received speech signal is also compared separately with each of the cohort voice prints, and each of these comparisons also gives rise to a score. The mean m and standard deviation s of these scores can then be calculated.
- the normalisation process may use modified values of the mean m and/or standard deviation s of the scores obtained from the comparison with the cohort voice prints. More specifically, in one embodiment, the normalisation process uses a modified value 02 of the standard deviation s, where the modified value 02 is calculated using the standard deviation o and a prior tuning factor oo, as: where g may be a constant or a tuneable delay factor.
- the example normalisation process described here uses the mean m and standard deviation s of the scores obtained from the comparison with the cohort voice prints, but it will be noted that other normalisation processes may be used, for example using another measure of dispersion, such as the median absolute deviation or the mean absolute deviation instead of the standard deviation in order to derive normalised values from the respective scores generated by the comparisons with the voice prints.
- the score combination block 190 may operate by calculating a mean of the normalised scores S The resulting mean value can be taken as a
- the score combination block 190 may operate by calculating a trimmed mean of the normalised scores That is, the scores are placed in ascending (or descending order), and the highest and lowest values are discarded, with the trimmed mean being calculated as the mean after the highest and lowest scores have been discarded. As above, the trimmed mean value can be taken as a combined score, which can be compared with an appropriate threshold to determine whether the user who provided the second biometric data (i.e.
- the speech sample acting as voice biometric data in the illustrated example can be assumed to be the enrolled user who provided the first biometric data.
- the score combination block 190 may operate by calculating a median of the normalised scores The resulting median value can be taken as a combined score, which can be compared with an appropriate threshold to determine whether the user who provided the second biometric data (i.e. the speech sample acting as voice biometric data in the illustrated example) can be assumed to be the enrolled user who provided the first biometric data.
- each of the normalised scores S1*. S2* . Sn* can be compared with a suitable threshold value, which has been set such that a score above the threshold value indicates a certain probability that the user who provided the second biometric data was the enrolled user who provided the first biometric data. Then, a combined result can be obtained by examining the results of these
- the normalised score exceeds the threshold value in a majority of the comparisons, this can be taken to indicates that the user who provided the second biometric data was the enrolled user who provided the first biometric data. Conversely, if the normalised score is lower than the threshold value in a majority of the comparisons, this can be taken to indicates that it is not safe to assume that the user who provided the second biometric data was the enrolled user who provided the first biometric data.
- first biometric data is used to generate a plurality of biometric prints for the enrolment of the user, and the verification stage then involves comparing received biometric data with the plurality of biometric prints for the purposes of user recognition, relate to biometric identifiers whose properties vary with time.
- the enrolment stage involves receiving first biometric data relating to a biometric identifier of the user on a plurality of enrolment occasions at at least two different respective points in time. These points in time are noted. Where the biometric identifier varies with a daily cycle, the enrolment occasions may occur at different times of day. For other cycles, appropriate enrolment occasions may be selected.
- the first biometric data may relate to the response ofthe user's ear to an audio test signal, for example a test tone, which may be in the ultrasound range.
- a first sample ofthe first biometric data may be obtained in the morning, and a second sample of the first biometric data may be obtained in the evening.
- a plurality of biometric prints are then generated for the biometric identifier, based on the received first biometric data. For example, separate biometric prints may be generated for the different points in time at which the first biometric data is obtained.
- a first biometric print may be generated from the first biometric data obtained in the morning, and hence may reflect the properties ofthe user's ear in the morning, while a second biometric print may be generated from the first biometric data obtained in the evening, and hence may reflect the properties of the user's ear in the evening.
- the user is then enrolled on the basis of the plurality of biometric prints.
- second biometric data is generated, relating to the same biometric identifier of the user.
- a point in time at which the second biometric data is received is noted.
- the second biometric data may relate tothe response of the user's ear to an audio test signal, at a time when it is required to perform user recognition, for example when the user wishes to instruct a host device to perform a specific action that requires authorisation.
- the verification stage then involves performing a comparison of the received second biometric data withthe plurality of biometric prints.
- the received second biometric data may be separately compared with the plurality of biometric prints to give a respective plurality of scores, and these scores may then be combined in an appropriate way.
- the comparison of the received second biometric data with the plurality of biometric prints may be performed in a manner that depends on the point in time at which the second biometric data was received and the points in respective points in time at which the first biometric data corresponding to the biometric prints was received. For example, a weighted sum of comparison scores may be generated, with the weightings being chosen based on the respective points in time.
- the combination may give a total score S as:
- a is a parameter that varies throughout the day, such that, earlier in the day, the total score gives more weight to the comparison with the first biometric print that reflects the properties of the user’s ear in the morning, and, later in the day, the total score gives more weight to the comparison with the second biometric print that reflects the properties of the user’s ear in the evening.
- the user recognition decision for example the decision as to whether to grant authorisation forthe action requested bythe user, can then be based on the total score. For example, authorisation may be granted if the total score exceeds a threshold, where the threshold value may depend on the nature of the requested action.
- the discovery and configuration methods may be embodied as processor control code, for example on a non-volatile carrier medium such as a disk, CD- or DVD-ROM, programmed memory such as read only memory (Firmware), or on a data carrier such as an optical or electrical signal carrier.
- a non-volatile carrier medium such as a disk, CD- or DVD-ROM
- programmed memory such as read only memory (Firmware)
- a data carrier such as an optical or electrical signal carrier.
- embodiments will be implemented on a DSP (Digital Signal Processor), ASIC (Application Specific Integrated Circuit) or FPGA (Field Programmable Gate Array).
- the code may comprise conventional program code or microcode or, for example code for setting up or controlling an ASIC or FPGA.
- the code may also comprise code for dynamically configuring re-configurable apparatus such as reprogrammable logic gate arrays.
- the code may comprise code for a hardware description language such as Veri!ogTM or VHDL (Very high speed integrated circuit Hardware Description Language).
- Veri!ogTM or VHDL (Very high speed integrated circuit Hardware Description Language).
- VHDL Very high speed integrated circuit Hardware Description Language
- the code may be distributed between a plurality of coupled components in communication with one another.
- the embodiments may also be implemented using code running on a field-(re)programmable analogue array or similar device in order to configure analogue hardware.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Electrically Operated Instructional Devices (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
Claims
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GB2105420.0A GB2593300B (en) | 2018-12-20 | 2019-12-19 | Biometric user recognition |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201862782504P | 2018-12-20 | 2018-12-20 | |
| US62/782,504 | 2018-12-20 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2020128476A1 true WO2020128476A1 (en) | 2020-06-25 |
Family
ID=69104794
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/GB2019/053616 Ceased WO2020128476A1 (en) | 2018-12-20 | 2019-12-19 | Biometric user recognition |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US20200201970A1 (en) |
| GB (1) | GB2593300B (en) |
| WO (1) | WO2020128476A1 (en) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI713016B (en) * | 2019-01-03 | 2020-12-11 | 瑞昱半導體股份有限公司 | Speech detection processing system and speech detection method |
| US10984086B1 (en) | 2019-10-18 | 2021-04-20 | Motorola Mobility Llc | Methods and systems for fingerprint sensor triggered voice interaction in an electronic device |
| US20210201937A1 (en) * | 2019-12-31 | 2021-07-01 | Texas Instruments Incorporated | Adaptive detection threshold for non-stationary signals in noise |
| US12223946B2 (en) * | 2020-09-11 | 2025-02-11 | International Business Machines Corporation | Artificial intelligence voice response system for speech impaired users |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9824692B1 (en) * | 2016-09-12 | 2017-11-21 | Pindrop Security, Inc. | End-to-end speaker recognition using deep neural network |
| EP3327720A1 (en) * | 2015-07-23 | 2018-05-30 | Alibaba Group Holding Limited | User voiceprint model construction method, apparatus, and system |
| WO2019097217A1 (en) * | 2017-11-14 | 2019-05-23 | Cirrus Logic International Semiconductor Limited | Audio processing |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9118488B2 (en) * | 2010-06-17 | 2015-08-25 | Aliphcom | System and method for controlling access to network services using biometric authentication |
| US9530052B1 (en) * | 2013-03-13 | 2016-12-27 | University Of Maryland | System and method for sensor adaptation in iris biometrics |
-
2019
- 2019-12-16 US US16/716,004 patent/US20200201970A1/en not_active Abandoned
- 2019-12-19 GB GB2105420.0A patent/GB2593300B/en active Active
- 2019-12-19 WO PCT/GB2019/053616 patent/WO2020128476A1/en not_active Ceased
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3327720A1 (en) * | 2015-07-23 | 2018-05-30 | Alibaba Group Holding Limited | User voiceprint model construction method, apparatus, and system |
| US9824692B1 (en) * | 2016-09-12 | 2017-11-21 | Pindrop Security, Inc. | End-to-end speaker recognition using deep neural network |
| WO2019097217A1 (en) * | 2017-11-14 | 2019-05-23 | Cirrus Logic International Semiconductor Limited | Audio processing |
Non-Patent Citations (2)
| Title |
|---|
| 1. KWAKH. G. KANG: "Robust formant features for speaker verification in the Lombard effect", 2015 ASIA-PACIFIC SIGNAL AND INFORMATION PROCESSING ASSOCIATION ANNUAL SUMMIT AND CONFERENCE (APSIPA, 2015, pages 114 - 118 |
| RAMIREZ LOPEZ ANA ET AL: "Normal-to-shouted speech spectral mapping for speaker recognition under vocal effort mismatch", 2017 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH AND SIGNAL PROCESSING (ICASSP), IEEE, 5 March 2017 (2017-03-05), pages 4940 - 4944, XP033259350, DOI: 10.1109/ICASSP.2017.7953096 * |
Also Published As
| Publication number | Publication date |
|---|---|
| US20200201970A1 (en) | 2020-06-25 |
| GB2593300B (en) | 2023-06-28 |
| GB202105420D0 (en) | 2021-06-02 |
| GB2593300A (en) | 2021-09-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12380895B2 (en) | Analysing speech signals | |
| US11735191B2 (en) | Speaker recognition with assessment of audio frame contribution | |
| US10950245B2 (en) | Generating prompts for user vocalisation for biometric speaker recognition | |
| EP3590113B1 (en) | Method and apparatus for detecting spoofing conditions | |
| US20200227071A1 (en) | Analysing speech signals | |
| KR102441863B1 (en) | voice user interface | |
| EP3210205B1 (en) | Sound sample verification for generating sound detection model | |
| US20190324719A1 (en) | Combining results from first and second speaker recognition processes | |
| JP4802135B2 (en) | Speaker authentication registration and confirmation method and apparatus | |
| US11056118B2 (en) | Speaker identification | |
| US20200201970A1 (en) | Biometric user recognition | |
| US10839810B2 (en) | Speaker enrollment | |
| CN113241059B (en) | Voice wake-up method, device, equipment and storage medium | |
| US20190130919A1 (en) | Speaker identification | |
| WO2019073233A1 (en) | Analysing speech signals | |
| WO2019097217A1 (en) | Audio processing | |
| US11024318B2 (en) | Speaker verification |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19831817 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 202105420 Country of ref document: GB Kind code of ref document: A Free format text: PCT FILING DATE = 20191219 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2105420.0 Country of ref document: GB |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 19831817 Country of ref document: EP Kind code of ref document: A1 |
|
| WWG | Wipo information: grant in national office |
Ref document number: 2105420.0 Country of ref document: GB |

