Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SPOOF PROTECTION IN FACE RECOGNITION SYSTEM
Document Type and Number:
WIPO Patent Application WO/2022/128107
Kind Code:
A1
Abstract:
Provided is an apparatus (100, 200, 300, 500) for identifying a user (212, 312) of a mobile device (214, 314, 512). The apparatus includes a face unlock detector (102, 202, 302, 502, 702), a face recognition module (104, 204, 304, 504, 704), a flow controller (106, 306, 506, 706), a tremor retriever (108, 208, 308, 400, 508, 708) and a spoof blocker (110, 210, 310, 510, 710). The face unlock detector detects a face unlock event when the user commences unlocking the mobile device. The face recognition module captures an image of the user and determines a user's face identifier based on the image. The tremor retriever retrieves a hand tremor pattern of the user holding the mobile device. The spoof blocker verifies the face ID of the user by determining whether the hand tremor pattern of the user matches with hand tremor template associated with the face ID of the user.

Inventors:
POGORELIK OLEG (DE)
Application Number:
PCT/EP2020/086807
Publication Date:
June 23, 2022
Filing Date:
December 17, 2020
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HUAWEI TECH CO LTD (CN)
POGORELIK OLEG (DE)
International Classes:
G06K9/00
Domestic Patent References:
WO2017167518A12017-10-05
Foreign References:
US10824703B12020-11-03
Other References:
SOYUJKUMAR SAHOO ET AL: "Multimodal Biometric Person Authentication : A Review", IETE TECHNICAL REVIEW, vol. 29, no. 1, 31 January 2012 (2012-01-31), pages 54, XP055168757, ISSN: 0256-4602, DOI: 10.4103/0256-4602.93139
Attorney, Agent or Firm:
KREUZ, Georg (DE)
Download PDF:
Claims:
CLAIMS

1. An apparatus (100, 200, 300, 500) for identifying a user (212, 312) of a mobile device

(214, 314, 512), comprising: a face unlock detector (102, 202, 302, 502, 702) configured for detecting a face unlock event when the user (212, 312) commences unlocking the mobile device (214, 314, 512); a face recognition module (104, 204, 304, 504, 704) configured for capturing an image of the user (212, 312) when the face unlock event is detected and determining a face identifier, ID, of the user (212, 312) based on the image, a flow controller (106, 306, 506, 706) configured for initiating a hand tremor retrieval when the face unlock event is detected and initiating a face ID verification upon completion of the hand tremor retrieval, a tremor retriever (108, 208, 308, 400, 508, 708) configured for retrieving a hand tremor pattern of the user (212, 312) holding the mobile device (214, 314, 512), a spoof blocker (110, 210, 310, 510, 710) configured for verifying the face ID of the user (212, 312) by determining whether the hand tremor pattern of the user (212, 312) matches with a hand tremor template associated with the face ID of the user (212, 312).

2. The apparatus (100, 200, 300, 500) of claim 1, wherein the face recognition module (104, 204, 304, 504, 704) is a two-dimensional, 2D, face recognition module configured for capturing a 2D image of the user (212, 312) and determining the face ID of the user (212, 312) based on the 2D image.

3. The apparatus (100, 200, 300, 500) of claim 1 or 2, wherein the tremor retriever (108, 208, 308, 400, 508, 708) is configured for retrieving the hand tremor pattern of the user (212, 312) holding the mobile device (214, 314, 512) stable in a face unlock position.

4. The apparatus (100, 200, 300, 500) of any of claims 1 to 3, wherein the tremor retriever (108, 208, 308, 400, 508, 708) is configured for retrieving the hand tremor pattern within a time interval of less than 3 seconds, or of less than 2 seconds, or of 1 to 1.5 seconds.

5. The apparatus (100, 200, 300, 500) of any of claims 1 to 4, further comprising a tremor database (326) configured for storing hand tremor templates associated with face IDs of users.

6. The apparatus (100, 200, 300, 500) of any of claims 1 to 5, wherein the flow controller (106, 306, 506, 706) is configured for initiating the face ID verification if a high security mode is detected.

7. The apparatus (100, 200, 300, 500) of claim 6, wherein the high security mode is detected by the spoof blocker (110, 210, 310, 510, 710).

8. The apparatus (100, 200, 300, 500) of claim 7, wherein the high security mode is detected based on one or more of a user input, requirements of an application running in the mobile device (214, 314, 512), and an applicable third party policy.

9. The apparatus (100, 200, 300, 500) of any of claims 1 to 8, wherein the face unlock detector (102, 202, 302, 502, 702) is configured for detecting the face unlock event when the user (212, 312) raises a hand to a preset face unlock position.

10. The apparatus (100, 200, 300, 500) of any of claims 1 to 9, wherein the tremor retriever (108, 208, 308, 400, 508, 708) is configured for retrieving the hand tremor pattern of the user (212, 312) holding the mobile device (214, 314, 512) stable in the preset face unlock position based on a sampled signal of an inertia measurements unit, IMU (206, 316, 402), of the mobile device (214, 314, 512).

11. The apparatus (100, 200, 300, 500) of any of claims 1 to 10, wherein the spoof blocker (110, 210, 310, 510, 710) is configured for determining that the hand tremor pattern of the user (212, 312) matches with the hand tremor template when a difference between the hand tremor pattern and the hand tremor template do not exceed a predetermined threshold.

12. The apparatus (100, 200, 300, 500) of any of claims 1 to 11, further comprising a training system (324) configured for recording hand tremor patterns of the user (212, 312) at regular time intervals and/or under a predetermined condition.

13. The apparatus (100, 200, 300, 500) of claim 12, wherein the training system (324) is configured for comparing the recorded hand tremor patterns of the user (212, 312) with each other and/or with the hand tremor template associated with the face ID of the user (212, 312) to determine a trend of changing the hand tremor of the user (212, 312) and/or to detect an abnormal change of the hand tremor of the user (212, 312).

14. The apparatus (100, 200, 300, 500) of claim 13, wherein the training system (324) is configured for updating the hand tremor template associated with the face ID of the user (212, 312) based on the recorded hand tremor patterns if the trend of changing the hand tremor of the user (212, 312) exceeds a predetermined trend threshold or if the abnormal change of the hand tremor of the user (212, 312) is detected.

15. A method of verifying a face ID of a user (212, 312) of a mobile device (214, 314, 512), comprising: providing a hand tremor template associated with the face ID of the user (212, 312), detecting a face unlock event when the user (212, 312) unlocks the mobile device (214, 314, 512) by means of the face ID, retrieving a hand tremor pattern of the user (212, 312) holding the mobile device (214, 314, 512) when the face unlock event is detected, and verifying the face ID of the user (212, 312) by determining whether the hand tremor pattern of the user (212, 312) matches with the hand tremor template associated with the face ID of the user (212, 312).

16. A mobile device (214, 314, 512), comprising the apparatus (100, 200, 300, 500) according to any one of claims 1 to 14.

19

Description:
SPOOF PROTECTION IN FACE RECOGNITION SYSTEM

TECHNICAL FIELD

The disclosure relates generally to face recognition systems, and more particularly, the disclosure relates to an apparatus for identifying a user of a mobile device. Moreover, the disclosure also relates to a method of verifying a face ID of a user of a mobile device.

BACKGROUND

A face spoofing attack is an attempt to deceive face recognition, FR, system using a substitute for an authorized person’s face using a photo, a video recording, or a three dimensional, 3D, mask. If the face spoofing attack succeeds, an attacker unlocks a device (e.g. a phone) and acquires proprietary information or performs sensitive operations such as payments, etc. Face spoofing is a well-known problem of face recognition systems. The major face spoofing attacks in FR systems include a print attack, a replay/video attack, and a 3D mask attack. In the print attack, a photo of the authorized person is printed or displayed on the device by the attacker to unlock it. In the replay/video attack, a looped video of the authorized person’s face including the natural behaviour and facial movements is displayed on the device by the attacker to unlock the device. In the 3D mask attack, a 3D mask of the authorized person’s face is worn/used by the attacker to unlock the device. In the 3D mask, in addition to the facial movements, the 3D mask enables to deceive depth sensors. Sometimes, the eyes and mouth areas are cut out from the 3D mask to enable natural eyes and lips motion while unlocking the device. The 3D mask attack also includes a warped photo attack.

Many known solutions have been developed in the past for preventing the face spoofing attacks in the FR systems. In a known solution, a passive face liveness detection technique is employed for detecting natural face movements (e.g. blink, face landmarks relative shifting, etc.). However, the passive face liveness detection technique fails to detect video replay attacks. In another known solution, an active face liveness detection technique is used which enables a user to perform actions on system prompt (e.g. blink, smile, etc.) based on the user interaction. However, this active face liveness detection technique provides a bad user experience, UX, caused by additional annoying operations. The known solution proposes a texture analysis technique for detecting fine details of the skin, paper, plastic, pixels, etc. for spoof cases. However, the texture analysis technique requires high-resolution images for detecting fine details of the skin and is mainly depend on environmental conditions. The known solution proposes a spectral analysis technique that retrieves depth information from a series of pictures taken in various light conditions. However, this spectral analysis technique doesn’t mitigate mask attacks (e.g. 3D mask attacks). Another known solution proposes a light-based virtual 3D technique which is used for flashing the face with light pointers and the reflections from the face due to flashing are used for detecting the face depth and liveness detection. However, this technique is mainly depend on environment conditions and expects a high flash return rate, FRR, in harsh conditions. Another known solution employs an artificial intelligence, Al, fake/true classifier (e.g. a Convolutional Neural Network, CNN, classifier trained using dedicated datasets) to distinguish between true and fake images. However, the applicability of the Al, Fake/true classifier is narrow and it is unreliable in “train miss” cases. Another known solution employs add-on Biometric Factor which enables the cross-correlation of the facial biometric with a voice, a fingerprint, a password. However, this add-on Biometric Factor implementation requires additional hardware components that are expensive and provide cumbersome user experience.

Known face recognition systems have relatively a high Spoof Acceptance Rate, SAR, of up to 5%. The known face recognition systems also have a high Imposter Acceptance Rate, IAR, which is caused by core technology limitations (e.g. training, native algorithm inaccuracies). This high IAR makes these known face recognition systems ineffective in security demanding systems such as remote payment, BitCoin, etc. One such known face recognition system uses factor augmentation (i.e. adding additional factors) to overcome the aforementioned problems. However, adding the additional factors (e.g. voice systems) brings additional costs and provides bad UX to the user. For example, adding voice ID as a factor mandates installation and calibration of the automated speech recognition platform, which is expensive and requires modification to the device unlock mechanism. The automated speech recognition platform typically asks the user to pronounce key phrase which introduces additional user interaction and associated delay in unlocking the device. Further, the voice systems have their own errors which may bring combined error rate to the higher False Reject Rate, FRR, which is not acceptable in frequently used FR systems. Further, these above-known solutions are ineffective, inaccurate, and performance demands, cause a delay in measurements, and provide a bad user experience. Therefore, there arises a need to address the aforementioned technical problem in existing systems or technologies in protecting the face recognition systems from the face spoofing attacks.

SUMMARY

It is an object of the disclosure to provide an apparatus for identifying a user of a mobile device, a mobile device including the apparatus for identifying the user of the mobile device and a method of verifying a face ID of the user of the mobile device for protecting the mobile device from face spoofing attacks.

This object is achieved by the features of the independent claims. Further, implementation forms are apparent from the dependent claims, the description, and the figures.

The disclosure provides an apparatus, a mobile device including the apparatus for identifying a user of a mobile device and a method of verifying a face ID of the user of the mobile device.

According to a first aspect, there is provided an apparatus for identifying a user of a mobile device. The apparatus includes a face unlock detector, a face recognition module, a flow controller, a tremor retriever and a spoof blocker. The face unlock detector is configured for detecting a face unlock event when a user commences unlocking the mobile device. The face recognition module is configured for capturing an image of the user when the face unlock event is detected and determining a face identifier, ID, of the user based on the image. The flow controller is configured for initiating a hand tremor retrieval when the face unlock event is detected and initiating a face ID verification upon completion of the hand tremor retrieval. The tremor retriever is configured for retrieving a hand tremor pattern of the user holding the mobile device. The spoof blocker is configured for verifying the face ID of the user by determining whether the hand tremor pattern of the user matches with a hand tremor template associated with the face ID of the user.

The apparatus verifies the face ID of the user of the mobile device using the hand tremor pattern of the user, thereby improving an accuracy in identifying the user of the mobile device. The apparatus protects the mobile device from the face spoofing attacks. The apparatus improves detection of the face spoofing attacks (i.e. up to 98%) on the mobile device. The apparatus minimizes Spoof Acceptance Rate, SAR, to about 0.2% - 2%, which is relatively very low when compared to the SAR of existing face recognition system which is about 5%. In a first possible implementation form, the face recognition module is a two-dimensional, 2D, face recognition module configured for capturing a 2D image of the user and determining the face ID of the user based on the 2D image.

In a second possible implementation form, the flow controller is configured for initiating the face ID verification if a high security mode is detected.

In a third possible implementation form, the tremor retriever is configured for retrieving the hand tremor pattern of the user holding the mobile device stable in the preset face unlock position based on a sampled signal of an inertia measurements unit, IMU, of the mobile device.

In a fourth possible implementation form, the spoof blocker is configured for determining that the hand tremor pattern of the user matches with the hand tremor template when a difference between the hand tremor pattern and the hand tremor template do not exceed a predetermined threshold.

According to a second aspect, there is provided a method of verifying a face ID of a user of a mobile device. The method includes providing a hand tremor template associated with the face ID of the user. The method includes detecting a face unlock event when the user unlocks the mobile device by means of the face ID. The method includes retrieving a hand tremor pattern of the user holding the mobile device when the face unlock event is detected. The method includes verifying the face ID of the user by determining whether the hand tremor pattern of the user matches with the hand tremor template associated with the face ID of the user.

According to a third aspect, there is provided a mobile device. The mobile device includes the above apparatus.

A technical problem in the prior art is resolved, where the technical problem is that protection of the face recognition systems from face spoofing attacks.

Therefore, in contradistinction to the prior art, according to the apparatus and method of verifying the face ID of the user of the mobile device using the hand tremor pattern of the user, thereby improving the accuracy in identifying the user of the mobile device. The apparatus protects the mobile device from the face spoofing attacks.

These and other aspects of the disclosure will be apparent from and the implementation(s) described below. BRIEF DESCRIPTION OF DRAWINGS

Implementations of the disclosure will now be described, by way of example only, with reference to the accompanying drawings, in which:

FIG. l is a block diagram of an apparatus for identifying a user of a mobile device in accordance with an implementation of the disclosure;

FIG. 2 is a block diagram of an apparatus that is connected to an inertia measurements unit, IMU, of a mobile device for identifying a user of the mobile device in accordance with an implementation of the disclosure;

FIG. 3 is a block diagram of an apparatus that is communicatively connected to a training system in accordance with an implementation of the disclosure;

FIG. 4 is a block diagram of a tremor retriever that retrieves a hand tremor pattern of a user based on a sampled signal of an inertia measurements unit, IMU, of a mobile device in accordance with an implementation of the disclosure;

FIG. 5 illustrates a mobile device including an apparatus for identifying a user of the mobile device in accordance with an implementation of the disclosure;

FIG. 6 is a flow chart that illustrates an operational flow of an apparatus for identifying a user of a mobile device in accordance with an implementation of the disclosure;

FIG. 7 is an interaction diagram that illustrates a method of verifying a face ID of a user of a mobile device in accordance with an implementation of the disclosure;

FIG. 8 is a graphical representation that shows an operation of an unlock gesture detector in accordance with an implementation of the disclosure;

FIG. 9 is a flow diagram that illustrates a method of verifying a face ID of a user of a mobile device in accordance with an implementation of the disclosure; and

FIG. 10 is an illustration of an exemplary apparatus, a mobile device, or a computer system (e.g. a training system) in which the various architectures and functionalities of the various previous implementations may be implemented. DETAILED DESCRIPTION OF THE DRAWINGS

Implementations of the disclosure provide an apparatus, a mobile device including the apparatus for identifying a user of a mobile device, and a method of verifying a face ID of a user of a mobile device.

To make solutions of the disclosure more comprehensible for a person skilled in the art, the following implementations of the disclosure are described with reference to the accompanying drawings.

Terms such as "a first", "a second", "a third", and "a fourth" (if any) in the summary, claims, and foregoing accompanying drawings of the disclosure are used to distinguish between similar objects and are not necessarily used to describe a specific sequence or order. It should be understood that the terms so used are interchangeable under appropriate circumstances, so that the implementations of the disclosure described herein are, for example, capable of being implemented in sequences other than the sequences illustrated or described herein. Furthermore, the terms "include" and "have" and any variations thereof, are intended to cover a non-ex elusive inclusion. For example, a process, a method, a system, a product, or a device that includes a series of steps or units, is not necessarily limited to expressly listed steps or units but may include other steps or units that are not expressly listed or that are inherent to such process, method, product, or device.

FIG. 1 is a block diagram of an apparatus 100 for identifying a user of a mobile device in accordance with an implementation of the disclosure. The apparatus 100 includes a face unlock detector 102, a face recognition module 104, a flow controller 106, a tremor retriever 108, and a spoof blocker 110. The face unlock detector 102 is configured for detecting a face unlock event when the user commences unlocking the mobile device. The face recognition module 104 is configured for capturing an image of the user when the face unlock event is detected and determining a face identifier, ID, of the user based on the image. The flow controller 106 is configured for initiating a hand tremor retrieval when the face unlock event is detected and initiating a face ID verification upon completion of the hand tremor retrieval. The tremor retriever 108 is configured for retrieving a hand tremor pattern of the user holding the mobile device. The spoof blocker 110 is configured for verifying the face ID of the user by determining whether the hand tremor pattern of the user matches with a hand tremor template associated with the face ID of the user. The apparatus 100 verifies the face ID of the user of the mobile device using the hand tremor pattern of the user, thereby improving an accuracy in identifying the user of the mobile device. The apparatus 100 protects the mobile device from face spoofing attacks. The apparatus 100 improves detection of the face spoofing attacks (i.e. up to 98%) on the mobile device. The apparatus 100 minimizes Spoof Acceptance Rate, SAR, to about 0.2% - 2%, which is relatively very low when compared to the SAR of existing face recognition system which is about 5%. The apparatus 100 is of low cost and can run on any existing mobile devices. The apparatus 100 provides a good user experience while unlocking the mobile device as the apparatus 100 does not require any user interaction and unlocks the mobile device in less than 3 seconds (i.e. without any additional delay). The apparatus 100 has improved processing power and performance as the apparatus 100 relies on low intense compute algorithms and short sensors activation (e.g. 1 second) period. Optionally, the face recognition module 104 is a two- dimensional, 2D, face recognition module configured for capturing a 2D image of the user and determining the face ID of the user based on the 2D image.

Optionally, the face unlock detector 102 is configured for detecting the face unlock event when the user raises a hand to a preset face unlock position. The face unlock detector 102 may detect the face unlock event when the user commences unlocking the mobile device using his/her face ID. Optionally, the face unlock detector 102 detects the face unlock event when the user commences unlocking the mobile device by pushing a camera button and say “face unlock”. Optionally, the face unlock detector 102, which is external to the tremor retriever 108, triggers the tremor retriever 108 for measuring the hand tremor pattern of the user during the face ID verification. Optionally, the tremor retriever 108 includes a face unlock detection unit that detects the face unlock event and simultaneously starts retrieving the hand tremor pattern of the user by analyzing movement data (e.g. hand movement or a gesture) received from an inertia measurements unit, IMU, of the mobile device. Optionally, the flow controller 106 is configured for initiating the face ID verification if a high security mode is detected. Optionally, the high security mode is detected by the spoof blocker 110. Optionally, the high security mode is detected based on one or more of a user input, requirements of an application running in the mobile device, and an applicable third party policy. The flow controller 106 is triggered when the face unlock event is commenced. The flow controller 106 may synchronize a process of initiating the face ID verification when the hand tremor retrieval is completed. The flow controller 106 optionally releases a buffered face ID for further verification when the tremor hand pattern is created and communicated to the spoof blocker 110. The flow controller 106 is optionally used for synchronizing the face recognition module 104 and the tremor retriever 108.

The apparatus 100 minimizes a measurement time of the hand tremor pattern by accurate timing and use of algorithms. The apparatus 100 effectively measures the hand tremor pattern within about 1.1 seconds after the user raises the hand in a required and stable position. The flow controller 106 may manage an appropriate timing of the measurement of the hand tremor pattern. The apparatus 100 improves the protection of the mobile device from the face spoofing attacks as the hand tremor pattern cannot be easily measured or reproduced by attackers using any existing tools and systems. The hand tremor pattern of the apparatus 100 is an add-on factor that protects the mobile device from the face spoofing attacks.

FIG. 2 is a block diagram of an apparatus 200 that is connected to an inertia measurements unit, IMU, 206 of a mobile device 214 for identifying a user 212 of the mobile device 214 in accordance with an implementation of the disclosure. The apparatus 200 includes a face unlock detector 202, a face recognition module 204, a tremor retriever 208, and a spoof blocker 210. Optionally, the tremor retriever 208 is configured for retrieving a hand tremor pattern of the user 212 holding the mobile device 214 stable in a face unlock position. Optionally, the tremor retriever 208 is configured for retrieving the hand tremor pattern within a time interval of less than 3 seconds, or of less than 2 seconds, or of 1 to 1.5 seconds. Optionally, the tremor retriever 208 is configured for retrieving the hand tremor pattern of the user 212 holding the mobile device 214 stable in the preset face unlock position based on a sampled signal of the inertia measurements unit, IMU, 206 of the mobile device 214.

Optionally, the tremor retriever 208 is configured for retrieving the hand tremor pattern using vibration filtering of the sampled signal and a tremor characteristic extraction from a filtered signal. The tremor retriever 208 may be configured for filtering the vibration of the sampled signal using a selective Fourier filter. The tremor retriever 208 may be configured for extracting a plurality of tremor characteristics from the filtered signal in time and frequency domains.

The tremor retriever 208 optionally measures the hand tremor pattern of the user 212 when the user 212 holds the mobile device 214 for a predefined time (e.g. 1 second) in the face unlock position, thereby minimizing an unlock delay and providing a good user experience while unlocking the mobile device 214. The tremor retriever 208 measures the hand tremor pattern of the user 212 with the good user experience as the tremor retriever 208 does not require any user interaction and enables the unlocking of the mobile device 214 in less than 3 seconds (i.e. without any additional delay) during face ID verification.

The hand tremor pattern may act as an add-on factor for the face ID verification. The hand tremor pattern optionally acts as an independent verification factor for unlocking the mobile device 214. The hand tremor pattern reduces Spoof Acceptance Rate, SAR, or Impostor Acceptance Rate, IAR, in two dimensional, 2D, face unlock thereby improving an accuracy in the face ID verification while unlocking the mobile device 214. The apparatus 200 selectively applies a hand tremor pattern-based verification for preventing the mobile device 214 from face spoofing attacks.

The mobile device 214 optionally includes the inertia measurements unit, IMU, 206 to measure the sampled signal associated with the hand tremor (e.g. a hand movement or vibration) of the user 212 while holding the mobile device 214. The apparatus 200 may include a gyro sensor or an accelerometer sensor that measures a signal associated with the hand tremor pattern of the user 212, optionally in combination with the IMU 206. A hand tremor may be a handshake, a hand movement, or a vibration in hands of the user 212. The tremor retriever 208 optionally retrieves the hand tremor pattern of the user 212 when the face unlock event is commenced or the hand movement that is appropriate to the face unlock position is recognized by an unlock gesture detector. The spoof blocker 210 verifies the face ID of the user 212 by comparing the hand tremor pattern of the user 212 received from the tremor retriever 208 with a hand tremor template associated with the face ID of the user 212. The spoof blocker 210 optionally receives the hand tremor template associated with the face ID of the user 212 from a tremor database. Optionally, the spoof blocker 210 is configured for determining that the hand tremor pattern of the user 212 matches with the hand tremor template when a difference between the hand tremor pattern and the hand tremor template do not exceed a predetermined threshold. Optionally, the spoof blocker 210 compares the hand tremor pattern of the user 212 with the hand tremor template associated with the face ID of the user 212 using known techniques (e.g. a Mean Square Error, MSE, technique). If the difference between the hand tremor pattern of the user 212 and the hand tremor template exceeds the predetermined threshold, the spoof blocker 210 may invalidate the face ID verification and may generate a spoof notification or a report. If the hand tremor pattern of the user 212 matches with the hand tremor template, the spoof blocker 210 may validate the face ID verification of the user 212 and the mobile device 214 is unlocked. The face ID of the user 212 with original confidence may be provided to decision making systems (e.g. Intelligent Decision System, IDS, User Interface, UI, Logger, etc.) for triggering spoof mitigation and repudiation flows. Optionally, any known algorithms of factor fusion may be employed by the apparatus 200 for factor fusion and confidence improvement of the face ID.

FIG. 3 is a block diagram of an apparatus 300 that is communicatively connected to a training system 324 in accordance with an implementation of the disclosure. The apparatus 300 includes a face unlock detector 302, a face recognition module 304, a flow controller 306, a tremor retriever 308, and a spoof blocker 310. Optionally, the training system 324 is configured for recording hand tremor patterns of a user 312 at regular time intervals and/or under a predetermined condition. Optionally, the training system 324 is configured for comparing the recorded hand tremor patterns of the user 312 with each other and/or with a hand tremor template associated with a face ID of the user 312 to determine a trend of changing the hand tremor of the user 312 and/or to detect an abnormal change of the hand tremor of the user 312. Optionally, the training system 324 is configured for updating the hand tremor template associated with the face ID of the user 312 based on the recorded hand tremor patterns if the trend of changing the hand tremor of the user 312 exceeds a predetermined trend threshold or if the abnormal change of the hand tremor of the user 312 is detected.

The training system 324 is optionally configured for creating the hand tremor template associated with the face ID of the user 312. The training system 324 may be configured to recognize an enrolment of the hand tremor template of the user 312. The training system 324 may record the hand tremor pattern when the user 312 performs the face unlock event at the mobile device 314.

The training system 324 optionally includes a tremor database 326 that stores the hand tremor patterns and a corresponding face IDs of the user 312 . Optionally, the tremor database 326 is configured to store the hand tremor templates associated with face IDs of users for further enrolment of the hand tremor templates of the user 312. The hand tremor templates may include a representative number for each of the hand tremor patterns of the user 312 recorded by the training system 324. The training system 324 may create the hand tremor template when the user 312 repetitively commences the face unlock event. Optionally, the training system 324 updates the tremor database 326 with a newly created hand tremor template. The hand tremor pattern of the user 312 may vary with time as a result of physical training, thickness, aging, etc. The training system 324 optionally maintains a history of the hand tremor pattern of the user 312 captured during a time period (e.g. weekly or monthly) at the tremor database 326 and performs retraining of the training system 324 using a history of the hand tremor pattern captured over the time period (e.g. monthly or weekly). The training system 324 may update the hand tremor pattern of the user 312 every week or month to identify changes in the hand tremor pattern of the user 312.

The tremor retriever 308 includes an unlock gesture detector 318. The unlock gesture detector 318 may identify a hand movement or agesture of the user 312 while detecting the face unlock event and enable the tremor retriever 308 to retrieve the hand tremor pattern of the user 312 immediately to reduce a recognition delay. The face unlock event optionally has specific requirements for the face and the face recognition module 304 positioning that significantly differs from reading, and playing. For unlocking the mobile device 314, the user 312 may take the mobile device 314 in an appropriate position by vertically moving the hand to a face unlock position. This appropriate position of the mobile device 314 has distinguishable acceleration, stable movement and deceleration phases corresponding to the face unlock position or an unlock movement.

The spoof blocker 310 optionally includes a buffer 320 and a verifier 322. The spoof blocker 310 may use a recently generated face ID of the user 312 for verifying the user 312 of the mobile device 314. The spoof blocker 310 may receive both the face ID and the hand tremor pattern of the user 312 at different times (e.g. when the tremor retriever 308 is activated independently using the face unlock detector 302). The buffer 320 is configured for buffering the face ID and the hand tremor pattern of the user 312 for proper flow enforcement. For example, in case of an inertia measurements unit, IMU, 316 based hand gesture or movement detection, the flow controller 306 may buffer the hand tremor pattern and release the hand tremor pattern for verification after the face ID is generated. Optionally, the verifier 322 receives the face ID and the hand tremor pattern of the user 312 from the buffer 320 and receives the hand tremor template associated with the face ID of the user 312 from the tremor database 326. Optionally, the verifier 322 verifies the face ID of the user 312 by comparing the hand tremor pattern of the user 312 with the hand tremor template associated with the face ID of the user 312 using known techniques (e.g. a Mean Square Error, MSE, technique). If a difference between the hand tremor pattern and the hand tremor template exceeds the predetermined threshold, the verifier 322 may invalidate the face ID verification, and generate a spoof notification or a report. If the hand tremor pattern of the user 312 is matched with the hand tremor template associated with the face ID of the user, the verifier 322 may validate the face ID verification and the mobile device 314 is unlocked. The apparatus 300 optionally includes a gyro sensor, or an accelerometer sensor, which are low-cost hardware components, for detecting the face unlock position. Optionally, the apparatus 300 includes an add-on component which includes the tremor retriever 308, the unlock gesture detector 318, and the IMU 316 for retrieving the hand tremor pattern of the user 312.

FIG. 4 illustrates a block diagram of a tremor retriever 400 that retrieves a hand tremor pattern of a user based on a sampled signal of an inertia measurements unit, IMU, 402 of a mobile device in accordance with an implementation of the disclosure. The IMU 402 optionally measures a sampled signal associated with a hand tremor of the user. The tremor retriever 400 includes a pre-filtering module 404, a feature extraction module 406, a hand tremor pattern generation module 408, and a classification module 410. The pre-filtering module 404 prefilters the sampled signal received from the IMU 402. The pre-filtering module 404 is optionally configured for filtering vibration from the sampled signal using a selective Fourier filter (e.g. 7-12 Fourier filters). The selective Fourier filter is a type of filtering function that is based on manipulation of specific frequency components of the sampled signal. The selective Fourier filter may obtain Fourier transform of the sampled signal, attenuate or amplify specific frequencies of the sampled signal, and inverse transform a result. The feature extraction module 406 extracts features (e.g. tremor characteristic) from the sampled signal that is pre-filtered (e.g. 176-64 features from time, and frequency domains of the sampled signal). The feature extraction module 406 optionally extracts the feature from an initial set of the sampled signal and generates derived values intended to be informative and non-redundant. The hand tremor pattern generation module 408 generates the hand tremor pattern based on the extracted features. The classification module 410 classifies the hand tremor pattern using a random forest training and a random tree, RT, classification.

FIG. 5 illustrates a mobile device 512 including an apparatus 500 for identifying a user of the mobile device 512 in accordance with an implementation of the disclosure. The apparatus 500 includes a face unlock detector 502, a face recognition module 504, a flow controller 506, a tremor retriever 508, and a spoof blocker 510. Optionally, the mobile device 512 comprises a camera and a proper software and/or hardware face recognition modules instead of the face recognition module 504.

FIG. 6 is a flow chart that illustrates an operational flow of an apparatus for identifying a user of a mobile device in accordance with an implementation of the disclosure. At a step 602, the apparatus is started a process of identifying the user of the mobile device. At a step 604, the apparatus is in an idle state. At a step 606, it is determined whether a face unlock event is detected when the user commences unlocking the mobile device. If YES, an image of the user is captured and a face identifier, ID, of the user is determined based on the image at a step 608. Else, it goes to the step 604. At a step 610, it is determined whether a spoof verification is required (e.g. if a high accuracy mode is selected). If YES, a hand tremor pattern, TP, is retrieved by a tremor retriever at a step 612. Else, it goes to a step 618 to unlock the mobile device. At a step 614, a hand tremor template, TP*, associated with the face ID of the user is retrieved from a tremor database using a spoof blocker. At a step 616, it is determined whether a difference between the hand tremor pattern, TP, of the user and the hand tremor template, TP*, associated with the face ID exceeds a predetermined threshold by comparing the hand tremor pattern, TP, of the user with the hand tremor template, TP*, using a Mean Square Error, MSE, technique. If the difference between the hand tremor pattern, TP, of the user and the hand tremor template, TP*, associated with the face ID does not exceed a predetermined threshold, the mobile device is unlocked at a step 618. Else, a spoof notification or a report is generated by the spoof blocker and the spoof blocker invalidates the face ID verification at a step 620. At step 622, the apparatus prompts the user to retry the face unlock or enter a password. At step 624, the process of identifying the user of the mobile device is ended.

FIG. 7 is an interaction diagram that illustrates a method of verifying a face ID of a user of a mobile device in accordance with an implementation of the disclosure. At a step 714, a face unlock event is detected by a face unlock detector 702 when the user commences unlocking the mobile device. At a step 716, an image of the user is captured using a face recognition module 704 when the face unlock event is detected in the step 714 and a face identifier, ID, of the user is determined based on the image. The face ID of the user is communicated to a flow controller 706 by the face recognition module 704. At a step 718, a face ID verification is initiated by the flow controller 706. At a step 720, the face ID of the user is verified by a spoof blocker 710. At a step 722, a high accuracy mode to the flow controller 706 is indicated by the spoof blocker 710. At a step 724, a hand tremor retrieval is initiated by the flow controller 706 to retrieve the hand tremor pattern of the user from a tremor retriever 708 when the face unlock event is detected. At a step 726, the hand tremor pattern of the user holding the mobile device is provided by the tremor retriever 708 to the spoof blocker 710. At a step 728, a hand tremor template associated with the face ID of the user is retrieved by the spoof blocker 710 and the face ID of the user is verified by the spoof blocker 710 by determining whether the hand tremor pattern of the user matches with the hand tremor template associated with the face ID of the user.

FIG. 8 is a graphical representation 800 that shows an operation of a unlock gesture detector in accordance with an implementation of the disclosure. The graphical representation 800 shows various positioning phases of a mobile device hold by a user. The positioning phases include a start movement phase, a movement phase, a stop in position phase, and a sampling period phase. The positioning phases are represented by a unique pattern of the factors such as maximum amplitude, amplitude deviation, and add-on harmonics. The sampling period phase of the graphical representation 800 shows that a hand tremor pattern of the user is detected and a sampling period for the face unlock event as time in seconds. The sampling period for the face unlock event may vary according to the user and to a specific implementation of an apparatus.

FIG. 9 is a flow diagram that illustrates a method of verifying a face ID of a user of a mobile device in accordance with an implementation of the disclosure. At a step 902, a hand tremor template associated with the face ID of the user is provided. At a step 904, a face unlock event is detected when the user unlocks the mobile device by means of the face ID. At a step 906, a hand tremor pattern of the user holding the mobile device is retrieved when the face unlock event is detected. At a step 908, the face ID of the user is verified by determining whether the hand tremor pattern of the user matches with the hand tremor template associated with the face ID of the user.

FIG. 10 is an illustration of an exemplary apparatus, a mobile device, or a computer system (e.g. a training system) 1000 in which the various architectures and functionalities of the various previous implementations may be implemented. As shown, the computer system 1000 includes at least one processor 1004 that is connected to a bus 1002, wherein the computer system 1000 may be implemented using any suitable protocol, such as PCI (Peripheral Component Interconnect), PCI-Express, AGP (Accelerated Graphics Port), Hyper Transport, or any other bus or point-to-point communication protocol (s). The computer system 1000 also includes a memory 1006. Control logic (software) and data are stored in the memory 1006 which may take a form of random-access memory (RAM). In the disclosure, a single semiconductor platform may refer to a sole unitary semiconductor-based integrated circuit or chip. It should be noted that the term single semiconductor platform may also refer to multi-chip modules with increased connectivity which simulate on-chip modules with increased connectivity which simulate on- chip operation, and make substantial improvements over utilizing a conventional central processing unit (CPU) and bus implementation. Of course, the various modules may also be situated separately or in various combinations of semiconductor platforms per the desires of the user.

The computer system 1000 may also include a secondary storage 1010. The secondary storage 1010 includes, for example, a hard disk drive and a removable storage drive, representing a floppy disk drive, a magnetic tape drive, a compact disk drive, digital versatile disk (DVD) drive, recording device, universal serial bus (USB) flash memory. The removable storage drive at least one of reads from and writes to a removable storage unit in a well-known manner.

Computer programs, or computer control logic algorithms, may be stored in at least one of the memory 1006 and the secondary storage 1010. Such computer programs, when executed, enable the computer system 1000 to perform various functions as described in the foregoing. The memory 1006, the secondary storage 1010, and any other storage are possible examples of computer-readable media.

In an implementation, the architectures and functionalities depicted in the various previous figures may be implemented in the context of the processor 1004, a graphics processor coupled to a communication interface 1012, an integrated circuit (not shown) that is capable of at least a portion of the capabilities of both the processor 1004 and a graphics processor, a chipset (namely, a group of integrated circuits designed to work and sold as a unit for performing related functions, and so forth).

Furthermore, the architectures and functionalities depicted in the various previous-described figures may be implemented in a context of a general computer system, a circuit board system, a game console system dedicated for entertainment purposes, an application-specific system. For example, the computer system 1000 may take the form of a desktop computer, a laptop computer, a server, a workstation, a game console, an embedded system. Furthermore, the computer system 1000 may take the form of various other devices including, but not limited to a personal digital assistant (PDA) device, a mobile phone device, a smart phone, a television, and so forth. Additionally, although not shown, the computer system 1000 may be coupled to a network (for example, a telecommunications network, a local area network (LAN), a wireless network, a wide area network (WAN) such as the Internet, a peer-to-peer network, a cable network, or the like) for communication purposes through an I/O interface 1008

It should be understood that the arrangement of components illustrated in the figures described are exemplary and that other arrangement may be possible. It should also be understood that the various system components (and means) defined by the claims, described below, and illustrated in the various block diagrams represent components in some systems configured according to the subject matter disclosed herein. For example, one or more of these system components (and means) may be realized, in whole or in part, by at least some of the components illustrated in the arrangements illustrated in the described figures.

In addition, while at least one of these components are implemented at least partially as an electronic hardware component, and therefore constitutes a machine, the other components may be implemented in software that when included in an execution environment constitutes a machine, hardware, or a combination of software and hardware.

Although the disclosure and its advantages have been described in detail, it should be understood that various changes, substitutions, and alterations can be made herein without departing from the spirit and scope of the disclosure as defined by the appended claims.