Using touch input data to improve fingerprint sensor performance
By combining touch input data and fingerprint data, different parts of the fingerprint are captured and aligned in batches, the inaccurate registration problem caused by the size limitation of fingerprint sensor is solved, and the accuracy of fingerprint registration and the performance of fingerprint authentication is improved.
Patent Information
- Application Number
- CN202280095950.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2022-05-23
- Publication Date
- 2024-12-17
AI Technical Summary
During the fingerprint registration process, existing computing devices cannot accurately and completely capture the user's fingerprint due to the size limitation of the fingerprint sensor, resulting in inaccurate and incomplete fingerprint registration, affecting the performance of fingerprint authentication.
By combining touch input data and fingerprint data, using the presence sensitive display to detect touch input of the finger, different parts of the fingerprint are captured in batches, and their related areas are determined, and at least part of the fingerprint is generated for accurate fingerprint registration.
Improve the accuracy and quality of fingerprint registration, ensure the performance of fingerprint authentication, and can more accurately align and combine various parts of the fingerprint to generate more complete fingerprint data.
Smart Images

Figure CN119156644A_ABST
Abstract
Description
Background Art
[0001] The computing device may include a touch sensor or other presence sensor capable of detecting user input. For example, the computing device may include a presence-sensitive display that can both display graphical objects and receive user input to enable the user to interact with the displayed graphical objects. Some example interactions include the user moving their finger across the presence-sensitive display to drag an object and / or scroll the computing device. The computing device may also include a fingerprint sensor. In some examples, the computing device may require the user to place the user's finger at the fingerprint sensor as part of a fingerprint authentication process. Summary of the invention
[0002] A computing device may generate at least a partial fingerprint of a user's finger using touch input data generated by a touch sensor (e.g., coordinates of the touch input, a set of heat maps associated with the touch input, etc.) and fingerprint data generated by a fingerprint sensor (e.g., one or more images). For example, the computing device may use the touch input data to determine an area (e.g., a location, a point, a region, etc.) of the finger associated with a portion of the fingerprint captured by the fingerprint sensor. Based on the corresponding area of each portion of the fingerprint captured by the fingerprint sensor, the computing device may align (e.g., combine, stitch, etc.) the portions of the user's fingerprint when generating the at least partial fingerprint. Therefore, a fingerprint enrollment operation using at least a partial fingerprint determined according to the techniques of the present disclosure may be better in terms of accuracy, quality, rate, etc.
[0003] In one example, a method includes: detecting, by a presence-sensitive display of a computing device, a first touch input of a finger at a first time; obtaining, by a fingerprint sensor of the computing device, a first portion of a fingerprint of the finger when detecting the first touch input, wherein the fingerprint sensor is configured to obtain the fingerprint through the presence-sensitive display; detecting, by the presence-sensitive display, a second touch input of the finger at a second time; obtaining, by the fingerprint sensor, a second portion of the fingerprint of the finger when detecting the second touch input; determining, by the computing device, a first area of the finger associated with the first portion of the fingerprint and a second area of the finger associated with the second portion of the fingerprint; and generating, by the computing device, at least a partial fingerprint of the finger based on the first portion of the fingerprint, the first area of the finger, the second portion of the fingerprint, and the second area of the finger.
[0004] In another example, a computing device includes: a presence-sensitive display configured to detect touch input; a fingerprint sensor configured to obtain a fingerprint of a finger through the presence-sensitive display; one or more processors; and a memory storing instructions that, when executed by the one or more processors, cause the one or more processors to: receive a first touch input from the finger at a first time from the presence-sensitive display; receive a first portion of the fingerprint of the finger from the fingerprint sensor while the presence-sensitive display is detecting the first touch input; receive a second touch input from the finger at a second time from the presence-sensitive display; receive a second portion of the fingerprint of the finger from the fingerprint sensor while the presence-sensitive display is detecting the second touch input; determine a first area of the finger associated with the first portion of the fingerprint and a second area of the finger associated with the second portion of the fingerprint; and generate at least a partial fingerprint of the finger based on the first portion of the fingerprint, the first area of the finger, the second portion of the fingerprint, and the second area of the finger.
[0005] In another example, a non-transitory computer-readable storage medium is encoded with instructions that, when executed by one or more processors of a computing device, cause the one or more processors to: receive a first touch input from the presence-sensitive display at a first time from the finger; receive a first portion of the fingerprint of the finger from the fingerprint sensor while the presence-sensitive display is detecting the first touch input; receive a second touch input from the finger at a second time from the presence-sensitive display; receive a second portion of the fingerprint of the finger from the fingerprint sensor while the presence-sensitive display is detecting the second touch input; determine a first area of the finger associated with the first area of the fingerprint and a second area of the finger associated with the second area of the fingerprint; and generate at least a partial fingerprint of the finger based on the first area of the fingerprint, the first area of the finger, the second area of the fingerprint, and the second area of the finger.
[0006] In another example, a computing device includes: a component for detecting a first touch input by a finger at a first time; a component for obtaining a first part of a fingerprint of the finger when detecting the first touch input; a component for detecting a second touch input by the finger at a second time; a component for obtaining a second part of the fingerprint of the finger when detecting the second touch input; a component for determining a first area of the finger associated with the first part of the fingerprint and a second area of the finger associated with the second part of the fingerprint; and a component for generating at least a partial fingerprint of the finger based on the first part of the fingerprint, the first area of the finger, the second part of the fingerprint, and the second area of the finger.
[0007] The details of one or more examples of the present disclosure are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the present disclosure will be apparent from the description and drawings, and from the claims. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] Figure 1 is a conceptual diagram illustrating an example computing device including a presence-sensitive display in accordance with one or more aspects of the present disclosure.
[0009] Figure 2 is a block diagram illustrating further details of a computing device that performs fingerprint enrollment in accordance with one or more techniques of this disclosure.
[0010] Figure 3 is a conceptual diagram illustrating example self-capacitance data generated by a presence-sensitive display of a computing device, in accordance with one or more techniques of this disclosure.
[0011] Figure 4 is a conceptual diagram illustrating example mutual capacitance data generated by a presence-sensitive display of a computing device, in accordance with one or more techniques of this disclosure.
[0012] FIG. 5A to FIG. 5B is a conceptual diagram illustrating multiple heat maps in accordance with one or more techniques of this disclosure.
[0013] FIG. 6A to FIG. 6D is a conceptual diagram illustrating an example technique for determining a partial fingerprint in accordance with one or more techniques of this disclosure.
[0014] FIG. 7A to FIG. 7B is a conceptual diagram of an example user interface indicating finger positioning in accordance with one or more techniques of this disclosure.
[0015] Figure 8 is a flow diagram illustrating example operation of an example computing device in accordance with one or more aspects of the present disclosure. DETAILED DESCRIPTION
[0016] Figure 1 is a conceptual diagram illustrating an example computing device 100 . Figure 1 Only one particular example of computing device 100 is illustrated, and in other instances, many other examples of computing device 100 may be used. Figure 1 In the example of , computing device 100 may be a wearable computing device, a mobile computing device, or any other computing device capable of receiving user input. Computing device 100 may include Figure 1 A subset of the components included in the example computing device 100 may include Figure 1 Additional components not shown.
[0017] exist Figure 1 In the example of , computing device 100 may be a mobile phone, such as a smart phone. However, computing device 100 may also be any other type of computing device, such as a camera device, a tablet computer, a personal digital assistant (PDA), a smart speaker, a laptop computer, a desktop computer, a gaming system, a media player, an e-book reader, a television platform, a car navigation system, or a wearable computing device (e.g., a computerized watch). Figure 1 As shown, the computing device 100 includes one or more presence-sensitive displays 102 ("presence-sensitive displays 102"), one or more processors 104 ("processors 104"), one or more touch sensors 106 ("touch sensors 106"), one or more fingerprint sensors 108 ("fingerprint sensors 108"), and one or more storage devices 110 ("storage devices 110").
[0018] The presence-sensitive display 102 may function as a corresponding input and / or output device of the computing device 100. The presence-sensitive display 102 may be implemented using various technologies. For example, the presence-sensitive display 102 may function as an input device using a presence-sensitive input screen such as a capacitive touch screen or a projected capacitive touch screen. The presence-sensitive display 102 may also function as an output (e.g., display) device using any one or more display devices such as a liquid crystal display (LCD), a dot matrix display, a light-emitting diode (LED) display, an organic light-emitting diode (OLED) display, electronic ink, or a similar monochrome or color display capable of outputting visible information to a user of the computing device 100. Figure 1 In the example of , presence-sensitive display 102 may be a presence-sensitive display capable of both receiving user input and displaying graphical data.
[0019] The presence-sensitive display 102 may allow one or more sensors to operate beneath the presence-sensitive display 102. For example, sensor signals and other external signals may pass-through various layers of the presence-sensitive display 102 (making the presence-sensitive display a "pass-through display"). To facilitate the pass-through nature of the presence-sensitive display 102, various backside covering materials on the presence-sensitive display 102 may be omitted during construction of the presence-sensitive display 102 at locations above and / or adjacent to the location of the fingerprint sensor 108 located beneath the presence-sensitive display 102. For example, the presence-sensitive display 102 may include a backside covering formed of foam (or other type of cushioning material) and a copper (Cu) film, with the foam and Cu film being removed in areas of the backside covering located above and / or adjacent to the location of the fingerprint sensor 108. The omission of the backside covering may allow sensor signals and other external signals (e.g., light reflected from a user's finger) to pass-through the presence-sensitive display 102.
[0020] Presence-sensitive display 102 may detect input (e.g., touch input and non-touch input) from a user of respective computing device 100. For example, presence-sensitive display 102 may detect an indication of an input by detecting one or more gestures from a user (e.g., a user touching, pointing, and / or swiping with a finger, stylus, or another user input element at or near one or more locations of presence-sensitive display 102). Presence-sensitive display 102 may output information to a user in the form of a user interface, which may be associated with functionality provided by computing device 100. Such a user interface may be associated with a computing platform, operating system, application, and / or service (e.g., electronic messaging application, chat application, internet browser application, mobile or desktop operating system, social media application, electronic game, menu, and other types of applications) executed at computing device 100 or accessible from the computing device.
[0021] The processor 104 may implement functionality and / or execute instructions within the computing device 100. Examples of the processor 104 include, but are not limited to, one or more digital signal processors (DSPs), general purpose microprocessors, application specific integrated circuits (ASICs), field programmable logic arrays (FPGAs), or other equivalent integrated or discrete logic circuits. Thus, as used herein, the term "processor" may refer to any of the foregoing structures or any other structure suitable for implementing the techniques described herein.
[0022] Computing device 100 may include touch sensor 106 (e.g., a capacitive touch sensor). Touch sensor 106 may be comprised of a matrix of row and column electrodes on either side of a dielectric material. The electrodes of touch sensor 106 may be connected to a touch controller that can both drive the electrodes with a voltage signal and sense the resulting capacitance changes. When the electrodes are driven with a voltage signal, the inherent capacitance of the electrodes to other objects (such as a human finger, another electrode, or ground) may be measured.
[0023] The computing device 100 may detect one or more touch inputs 112 (e.g., taps, presses, slides, swipes, etc.) at the presence sensitive display 102 based on the measured capacitance of the electrodes of the touch sensor 106. For example, the touch sensor 106 may sense the touch input 112 at a plurality of touch sensor cells and may generate a corresponding capacitance value at each touch sensor cell that senses the touch input 112. The touch sensor 106 may generate touch input data based on the location of each of the touch sensor cells that sensed the touch input 112 and the corresponding capacitance value of each of the touch sensor cells. The touch input data may be stored in a touch input data repository 120.
[0024] In general, the capacitance value of each touch sensor cell may change in response to pressure applied by a touch element, such as a finger, on presence-sensitive display 102. For example, higher pressure may be associated with higher capacitance values, and lower pressure may be associated with lower capacitance values.
[0025] In some examples, the touch input data may include a series of indications of capacitance (“capacitance indications”). The capacitance indications may represent capacitances reflecting touch input 112 detected at presence-sensitive display 102 at different times (e.g., a first time, a second time, a third time, etc.). The capacitance indications may define the capacitance of each point of a two-dimensional grid of presence-sensitive display 102 (thereby defining what may be referred to as a “heat map” or “capacitance heat map”). Thus, computing device 100 may determine a plurality of heat maps based on touch input data associated with touch input 112 and generated by touch sensor 106. The heat maps may include indications of capacitances in regions of presence-sensitive display 102.
[0026] The computing device 100 may include a fingerprint sensor 108. The fingerprint sensor 108 may be positioned below one or more layers of the presence-sensitive display 102, such as a touch screen layer of the presence-sensitive display 102 (including the touch sensor 106). In other words, the fingerprint sensor 108 may be positioned within one or more of the layers of the presence-sensitive display 102. The fingerprint sensor 108 may be configured to sense a fingerprint through the presence-sensitive display 102. The fingerprint sensor 108 may sense a fingerprint using light emitted by pixels of the presence-sensitive display 102 overlying the fingerprint sensor 108 (e.g., the sensor may detect light reflected by a user's finger in contact with or in proximity to the presence-sensitive display 102). Examples of the fingerprint sensor 108 include an under-display fingerprint sensor (UDFS) and a through-display sensor.
[0027] By sensing a fingerprint through presence-sensitive display 102, fingerprint sensor 108 may generate fingerprint data representing the portion of a finger positioned at fingerprint sensor 108. For example, fingerprint sensor 108 may be configured to obtain an image of at least a portion of a user's fingerprint. The fingerprint data may be stored in fingerprint data repository 122.
[0028] The fingerprint sensor 108 may be located at a portion of the computing device 100, such as a front portion, a back portion opposite the front portion, and / or one or more side portions. In various examples, the fingerprint sensor 108 may be disposed on a front portion of the computing device 100 (e.g., below the presence-sensitive display 102) and on one or more side portions of the computing device 100 (e.g., as part of a solid-state button). In other examples, the fingerprint sensor 108 is disposed on a back portion of the computing device 100. Figure 1 In the example of FIG. 1 , the fingerprint sensor 108 is disposed on a front portion of the computing device 100 and beneath one or more layers of the presence-sensitive display 102 .
[0029] The storage device 110 may include one or more computer-readable storage media. For example, the storage device 110 may be configured for long-term and short-term storage of information (such as instructions, data, or other information used by the computing device 100). In some examples, the storage device 110 may include a non-volatile storage element. Examples of such non-volatile storage elements include magnetic hard disks, optical disks, solid-state disks, and the like. In other examples, instead of or in addition to non-volatile storage elements, the storage device 110 may include one or more so-called "temporary" memory devices, which means that the primary purpose of these devices may not be long-term data storage. For example, these devices may include volatile memory devices, which means that when these devices are not receiving power, these devices may not be able to maintain the stored content. Examples of volatile memory devices include random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), and the like.
[0030] Storage device 110 may include one or more modules. For example, storage device 110 may include user interface module 114 ("UI module 114"). UI module 114 may manage user interaction with presence-sensitive display 102 and other components of computing device 100. For example, UI module 114 may output a user interface and may cause presence-sensitive display 102 to display a user interface when a user of computing device 100 views output and / or provides input at presence-sensitive display 102. Figure 1 In the example of FIG. 1 , UI module 114 may interact with presence-sensitive display 102 to present user interface 116 (“UI 116”).
[0031] UI module 114 may serve as an intermediary between various components of computing device 100 to make determinations based on touch input 112 detected by presence-sensitive display 102 and to generate output at presence-sensitive display 102 in response to touch input 112. UI module 114 may receive instructions from an application, service, platform, or other module of computing device 100 to cause presence-sensitive display 102 to output a user interface, such as UI 116.
[0032] UI module 114 may process input detected at presence-sensitive display 102, and may relay information about the detected input, such as touch input 112, to one or more associated platforms, operating systems, and / or services executing at computing device 100, e.g., to cause computing device 100 to perform operations. For example, UI module 114 may manage touch input 112 received by computing device 100 when a user views and interacts with UI 116 presented at presence-sensitive display 102, and may update UI 116 in response to receiving additional instructions from an application, service, platform, or other module of computing device 100 that is processing touch input 112.
[0033] Although UI module 114 is shown as separate from presence-sensitive display 102, the UI module may be integrated within presence-sensitive display 102. In other words, presence-sensitive display 102 may implement the functionality described with respect to UI module 114 in hardware or a combination of hardware and software.
[0034] Generally, computing device 100 may require a user to place the user's finger at fingerprint sensor 108 to authenticate the user before allowing the user to unlock or otherwise access an application provided by computing device 100. Before computing device 100 can perform a fingerprint authentication operation, computing device 100 may need to perform a fingerprint enrollment operation, in which computing device 100 obtains and stores one or more reference fingerprints of the user. For example, computing device 100 may enroll a user's fingerprint by capturing one or more images of the user's fingerprint via fingerprint sensor 108 while the user's finger is positioned (and, if required by the procedures of the fingerprint enrollment phase, repositioned) at fingerprint sensor 108. However, in an example, fingerprint sensor 108 may be relatively small (e.g., approximately 1 centimeter (cm) by 1 cm). Therefore, fingerprint sensor 108 may only be able to capture an image of at most a portion of the user's fingerprint at any given time. Therefore, computing device 100 may not be able to accurately and / or completely determine the user's fingerprint based on the fingerprint data generated by fingerprint sensor 108, which may result in inaccurate and / or incomplete fingerprint enrollment. Inaccurate and / or incomplete fingerprint enrollment may adversely affect the performance of fingerprint authentication operations.
[0035] According to the techniques of this disclosure, computing device 100 may use touch input data and fingerprint data to generate at least a partial fingerprint of a finger of a user of computing device 100. By determining a partial fingerprint according to the techniques of this disclosure, computing device 100 may generate a more accurate representation of the fingerprint. For example, the techniques may enable computing device 100 to more accurately align (e.g., combine, stitch, etc.) images of portions of a user's fingerprint when determining at least a partial fingerprint. Thus, a fingerprint enrollment operation that generates at least a partial fingerprint determined according to the techniques of this disclosure may be better in terms of accuracy and quality.
[0036] Fingerprint enrollment module 118 of computing device 100 may perform a fingerprint enrollment operation that generates a partial fingerprint using touch input data generated by touch sensor 106 and fingerprint data generated by fingerprint sensor 108. The touch input data may indicate touch inputs 112 detected at presence-sensitive display 102 at different times. For example, presence-sensitive display 102 may detect (e.g., via touch sensor 106) a first touch input provided by a finger of a user at a first time in touch inputs 112. In response to presence-sensitive display 102 detecting the first touch input, touch sensor 106 may generate an indication and fingerprint enrollment module 118 may obtain (e.g., receive) a first set of touch input data indicating the first touch input.
[0037] In some examples, fingerprint enrollment module 118 may determine a heat map associated with the touch input. For example, fingerprint enrollment module 118 may determine a first set of heat maps associated with the first touch input based on the first set of touch input data. Fingerprint enrollment module 118 may process heat maps (such as the first set of heat maps) to determine parameters of the touch input, such as pressure, speed, etc. of the touch input. The first set of heat maps may include one or more indications of a capacitance value of a first region of presence-sensitive display 102.
[0038] The fingerprint registration module 118 may obtain fingerprint data (e.g., an image) generated by the fingerprint sensor 108. For example, upon detecting a first touch input, the fingerprint sensor 108 (and thus the fingerprint registration module 118) may obtain a first portion of the fingerprint of the finger. The first portion of the fingerprint of the finger may be a first set of fingerprint data (e.g., an image) generated by the fingerprint sensor 108, which represents a portion of the finger positioned at the fingerprint sensor 108 at the first time. The first portion of the fingerprint may be any portion of the fingerprint, such as a center portion, a top portion, a bottom portion, an edge portion, etc.
[0039] In some examples, fingerprint sensor 108 may obtain a first portion of a fingerprint in response to fingerprint enrollment module 118 determining that at least one parameter of a first touch input detected at presence-sensitive display 102 at a first time has stabilized (e.g., remained within a predetermined value range for a predetermined amount of time) based on a first set of heat maps associated with the first touch input. The at least one parameter of the first touch input (and any of touch inputs 112) may include pressure applied by a finger on presence-sensitive display 102, a velocity of the finger, a shape of a contact area of the finger (i.e., an area of the finger contacting presence-sensitive display 102), or a size of the contact area of the finger.
[0040] As noted above, fingerprint sensor 108 may be relatively small compared to the size of the fingerprint of the finger, such that fingerprint sensor 108 is unable to capture an image of the entire fingerprint or otherwise generate fingerprint data representative of the entire fingerprint with only a single touch input. Therefore, in order for fingerprint enrollment module 118 to enroll sufficient fingerprint area for enrollment purposes, the user may need to reposition the finger on presence-sensitive display 102 such that a portion of the finger different from the first portion of the finger is positioned at fingerprint sensor 108, thereby enabling fingerprint sensor 108 to obtain the remaining, uncaptured portion of the fingerprint.
[0041] After providing the first touch input, the user may provide a second touch input in touch input 112 via presence-sensitive display 102. In some examples, the user may provide the second touch input by lifting the finger off presence-sensitive display 102 and touching presence-sensitive display 102 at a second time such that a second portion of the finger is positioned at fingerprint sensor 108. Alternatively, the user may slide the finger on presence-sensitive display 102 such that a second portion of the finger is positioned at fingerprint sensor 108, rather than lifting the finger off presence-sensitive display 102.
[0042] In any case, presence-sensitive display 102 may detect a second touch input provided by a finger of the user at a second time in touch input 112. In response to presence-sensitive display 102 detecting the second touch input, touch sensor 106 may generate and fingerprint enrollment module 118 may obtain a second set of touch input data indicating the second touch input. Fingerprint enrollment module 118 may further determine a second set of heat maps associated with the second touch input based on the second set of touch input data. The second set of heat maps may include one or more indications of capacitance values for a second region of presence-sensitive display 102.
[0043] When detecting the second touch input, the fingerprint sensor 108 (and thus the fingerprint registration module 118) can obtain a second portion of the fingerprint of the finger. The second portion can be a second set of fingerprint data (e.g., an image) that represents the portion of the finger positioned at the fingerprint sensor 108 at the second time. The second portion of the finger can be any portion of the fingerprint, such as a center portion, a top portion, a bottom portion, an edge portion, etc.
[0044] In some examples, fingerprint sensor 108 may obtain a second set of fingerprint data in response to fingerprint enrollment module 118 determining that at least one parameter of a second touch input detected at presence-sensitive display 102 at a second time has stabilized (e.g., remained within a predetermined value range for a predetermined amount of time) based on a second set of heat maps associated with the second touch input. The at least one parameter of the second touch input may include the pressure applied by the finger on presence-sensitive display 102, the velocity of the finger, the shape of the contact area of the finger (i.e., the area of the finger that contacts presence-sensitive display 102), or the size of the contact area of the finger.
[0045] The second portion of the finger is preferably a portion of the finger that is different from the first portion of the finger (e.g., to ensure that the fingerprint enrollment module 118 obtains fingerprint data for the uncaptured portion of the fingerprint). However, when the second portion of the finger is substantially similar to the first portion of the finger, the techniques of the present disclosure are still applicable.
[0046] For each captured portion of the fingerprint, the fingerprint registration module 118 may determine an area (e.g., a location, point, area, coordinates, position, etc.) of the finger associated with the portion. For example, the fingerprint registration module 118 may determine a first area of the finger associated with a first portion of the fingerprint and a second area of the finger associated with a second portion of the fingerprint. In some examples, the fingerprint registration module 118 may determine the first area of the finger associated with the first portion of the fingerprint based on the first set of heat maps. Similarly, the fingerprint registration module 118 may determine the second area of the finger associated with the second portion of the fingerprint based on the second set of heat maps.
[0047] The first set of heat maps may indicate (e.g., based on capacitance values) a first finger location of the finger during the first touch input. As used herein, finger location refers to the location (e.g., [x, y] coordinates) of the area of the finger in contact with the presence-sensitive display 102 relative to the presence-sensitive display 102. Additionally, based on the first set of heat maps, the fingerprint registration module 118 may determine, for example, the centroid of the contact area, the shape of the contact area, an approximation of the shape of the contact area (such as an ellipse), the size of the contact area, etc. In the event that the user presses the finger firmly (and flatly) onto the presence-sensitive display 102, the contact area may include a substantial portion (if not all) of the fingerprint of the finger.
[0048] The fingerprint enrollment module 118 may access information regarding the location (e.g., [x, y] coordinates) of the fingerprint sensor 108 relative to the presence-sensitive display 102. Accordingly, the fingerprint enrollment module 118 may determine a first region of the finger associated with the first portion based on the location of the fingerprint sensor 108 relative to the presence-sensitive display 102 and a first finger location of the finger (which may additionally include information such as a centroid of the contact area, a shape of the contact area, an approximation of the shape of the contact area, a size of the contact area, etc.). For example, if the fingerprint enrollment module 118 determines that the centroid of the contact area is located at the fingerprint sensor 108 based on the first set of heat maps, the fingerprint enrollment module 118 may determine the first region of the finger as the centroid of the fingerprint (e.g., located at a central portion of the fingerprint).
[0049] The fingerprint registration module 118 may determine a second region of the finger associated with the second portion of the fingerprint in a similar manner. That is, the fingerprint registration module 118 may determine the second region of the finger based on a second set of heat maps associated with the second touch input. For example, if the fingerprint registration module 118 determines that the left edge of the contact area is located at the fingerprint sensor 108 based on the second set of heat maps, the fingerprint registration module 118 may determine the second region of the finger as the left edge of the fingerprint (e.g., located at the left portion of the fingerprint).
[0050] The fingerprint enrollment module 118 may generate at least a partial fingerprint based on the first portion of the fingerprint, the first area of the finger, the second portion of the fingerprint, and the second area of the finger. FIG. 6A to FIG. 6D ), the fingerprint registration module 118 may align the first portion of the fingerprint and the second portion of the fingerprint based on the first area of the finger and the second area of the finger. Thus, using the above example, the fingerprint registration module 118 may combine the first portion and the second portion to generate at least a partial fingerprint including a center portion of the fingerprint and a left portion of the fingerprint. In addition, the center portion and the left portion may be positioned relative to each other to accurately correspond to the user's fingerprint. It should be noted that the technology of the present disclosure does not require the first portion and the second portion to be adjacent or connected portions of the fingerprint to align the first set of fingerprint data and the second set of fingerprint data. That is, the first portion and the second portion may be non-connected portions of the finger.
[0051] The fingerprint registration module 118 may register the fingerprint of the user's finger based on at least a partial fingerprint. For example, in response to the partial fingerprint including a sufficient portion of the fingerprint, the fingerprint registration module 118 may complete the fingerprint registration operation. The sufficient portion of the fingerprint may be any percentage of the fingerprint, such as 75%, 85%, 95%, etc. In any case, the fingerprint registration module 118 may store the partial fingerprint (e.g., in the fingerprint data repository 122) for use in (future) fingerprint authentication attempts.
[0052] Although touch input 112 is described as including a first touch input and a second touch input, it should be understood by those skilled in the art that touch input 112 may include one or more additional touch inputs (e.g., a third touch input, a fourth touch input, etc.). In such examples, the techniques of the present disclosure may be similarly applied to the one or more additional touch inputs to ensure that a sufficient portion of the fingerprint has been enrolled (e.g., because only the first portion and the second portion are insufficient to complete the fingerprint enrollment operation). In addition, the techniques of the present disclosure may be applied to one or more fingers, one or more hands, and one or more users.
[0053] Figure 2 is a block diagram illustrating further details of a computing device 200 that performs fingerprint enrollment in accordance with one or more techniques of this disclosure. Figure 2 The computing device 200 is hereinafter referred to as Figure 1 The example of the computing device 100 is illustrated for description. Figure 2 Only one particular example of computing device 200 is illustrated, and in other instances, many other examples of computing device 200 may be used and may include a subset of the components included in the example computing device 200, or may include Figure 2 Additional components not shown.
[0054] like Figure 2 As shown, computing device 200 may include one or more presence-sensitive displays 202 ("presence-sensitive displays 202"), one or more processors 204 ("processors 204"), one or more input components 242 ("input components 242"), one or more communication units 244 ("communication units 244"), one or more output components 246 ("output components 246"), and one or more storage devices 210 ("storage devices 210"). Presence-sensitive display 202 may include one or more touch sensors 206 ("touch sensors 206"), electrodes 224, one or more display panels 228 ("display panels 228"), and one or more display controllers 230 ("display controllers 230"). Similarly, as shown in FIG. Figure 2 As shown, the storage device 210 may include a user interface module 214 ("UI module 214"), a fingerprint registration module 218, a touch input data repository 220, a fingerprint data repository 222, a fingerprint authentication module 236, a touch mapping module 238 and an operating system 240 ("OS 240").
[0055] Communication channel 250 can interconnect each of components 202, 204, 210, 242, 244, and 246 for inter-component communication (physically, communicatively, and / or operationally). In some examples, communication channel 250 can include a system bus, a network connection, an inter-process communication data structure, or any other method for conveying data.
[0056] Input components 242 of computing device 200 may receive input. Examples of input are tactile input, audio input, and video input. In one example, input components 242 of computing device 200 include a presence-sensitive display (such as presence-sensitive display 202), a fingerprint sensor (such as fingerprint sensor 208), a touch-sensitive screen, a mouse, a keyboard, a voice response system, a camera, a microphone, or any other type of device for detecting input from a person or a machine. As discussed above, fingerprint sensor 208 may be a UDFS, a through-display sensor, etc. For example, fingerprint sensor 208 may be positioned below one or more layers of presence-sensitive display 202. Fingerprint sensor 208 may be configured to sense a fingerprint through presence-sensitive display 202.
[0057] Input component 242 may include one or more sensors. There are many examples of sensors, and these examples include any input component configured to obtain environmental information about the environment around computing device 200 and / or physiological information that defines the activity state and / or physical well-being of the user of computing device 200. In some examples, the sensor may be an input component that obtains physical positioning, movement, and / or location information of computing device 200. For example, the sensor may include one or more position sensors (e.g., GNSS components, Wi-Fi components, cellular components), one or more temperature sensors, one or more motion sensors (e.g., multi-axis accelerometers, gyroscopes), one or more pressure sensors (e.g., barometers), one or more ambient light sensors, and one or more other sensors (e.g., microphones, cameras, infrared proximity sensors, hygrometers, etc.). Other sensors may include heart rate sensors, magnetometers, glucose sensors, hygrometer sensors, olfactory sensors, compass sensors, pedometer sensors, to name a few other non-limiting examples.
[0058] The communication unit 244 of the computing device 200 can communicate with one or more external devices via one or more wired and / or wireless networks by sending and / or receiving network signals over the one or more networks. Examples of the communication unit 244 include a network interface card (e.g., such as an Ethernet card), an optical transceiver, a radio frequency transceiver, a GPS receiver, or any other type of device that can send and / or receive information. Other examples of the communication unit 244 may include a shortwave radio component, a cellular data radio component, a wireless network radio component, and a universal serial bus (USB) controller.
[0059] The output components 246 of the computing device 200 may generate one or more outputs. Examples of outputs are tactile outputs, audio outputs, and video outputs. In one example, the output components 246 of the computing device 200 include a presence-sensitive display, a sound card, a video graphics adapter card, a speaker, a liquid crystal display (LCD), or any other type of device for generating output to a person or machine.
[0060] The presence-sensitive display 202 of the computing device 200 may include a touch sensor 206, electrodes 224, a display panel 228, and a display controller 230. The electrodes 224 may form a matrix of row electrodes and column electrodes on either side of a dielectric material. The electrodes 224 may be formed of a transparent conductive material such as indium tin oxide (ITO). Thus, the electrodes 224 may be placed above a display component (e.g., display panel 228) and not visible to a user. The dielectric material may be a glass substrate.
[0061] Touch sensor 206 may include touch controller 226. Touch controller 226 may perform one or more operations to sense user input via electrodes 224. For example, touch controller 226 may output a voltage signal across the electrodes and sense the resulting capacitance change (e.g., as caused by the presence of a finger or other object on or near presence-sensitive display 202). When one of electrodes 224 is driven with a voltage signal, the intrinsic capacitance of the electrode to other objects (such as a human finger, another electrode, or ground) may be measured. Changes in the surrounding environment affect the change in the intrinsic capacitance of the electrode. Touch controller 226 may output an indication of the sensed user input to one or more other components of computing device 200, such as UI module 214.
[0062] Display panel 228 may be a display device capable of rendering a graphical user interface. Examples of display panel 228 include, but are not limited to, a liquid crystal display (LCD), a dot matrix display, a light emitting diode (LED) display, a micro-LED display, an organic light emitting diode (OLED) display, electronic ink, or a similar monochrome or color display capable of outputting visible information to a user of computing device 200.
[0063] Display controller 230 may perform one or more operations to manage the operation of display panel 228. For example, display controller 230 may receive instructions from UI module 214 that cause display controller 230 to control display panel 228 to render a particular graphical user interface.
[0064] The processor 204 may implement functionality and / or execute instructions within the computing device 200. For example, the processor 204 may receive and execute instructions that provide the functionality of the UI module 214, the fingerprint enrollment module 218, the fingerprint authentication module 236, the touch mapping module 238, and the OS 240. These instructions executed by the processor 204 may cause the computing device 200 to store and / or modify information within the storage device 210 of the processor 204 during program execution. The processor 204 may execute the instructions of the UI module 214, the fingerprint enrollment module 218, the fingerprint authentication module 236, the touch mapping module 238, and the OS 240 to perform one or more operations. That is, the UI module 214, the fingerprint enrollment module 218, the fingerprint authentication module 236, the touch mapping module 238, and the OS 240 may be capable of being operated by the processor 204 to perform the various functions described herein.
[0065] The storage device 210 within the computing device 200 may store information for processing during operation of the computing device 200 (e.g., the computing device 200 may store data accessed by the UI module 214, the fingerprint registration module 218, the fingerprint authentication module 236, the touch mapping module 238, and the OS 240 during execution at the computing device 200). In some examples, the storage device 210 may be a temporary memory, meaning that the primary purpose of the storage device 210 is not long-term storage. The storage device 210 located on the computing device 200 may be configured to store information for a short period of time as a volatile memory, and therefore does not retain the stored content in the event of a power outage. Examples of volatile memory include random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), and other forms of volatile memory known in the art.
[0066] The storage device 210 may include one or more computer-readable storage media. The storage device 210 may be configured to store a larger amount of information than volatile memory. The storage device 210 may be further configured to store information for a long term as a non-volatile memory space and retain the information after a power on / off cycle. Examples of non-volatile memory include a magnetic hard disk, an optical disk, a floppy disk, a flash memory, or a form of electrically programmable memory (EPROM) or electrically erasable programmable (EEPROM) memory. The storage device 210 may store program instructions and / or information associated with the UI module 214, the fingerprint registration module 218, the fingerprint authentication module 236, the touch mapping module 238, and the OS 240 (e.g., touch input data repository 220, fingerprint data repository 222, etc.).
[0067] As discussed above, UI module 214 may serve as an intermediary between various components of computing device 200 to make determinations based on user input detected by user interface components and to generate output at user interface components in response to the user input. Figure 2 As shown, UI module 214 may include touch driver 232 and display driver 234. Touch driver 232 may interact with touch controller 226 and OS 240 to process user input sensed via presence-sensitive display 202. Display driver 234 may interact with display controller 230 and OS 240 to process output for display at display panel 228, which may be altered based on user input received via electrodes 224.
[0068] The fingerprint registration module 218 can be used with Figure 1 The fingerprint registration module 118 of is substantially similar. In some examples, the fingerprint registration module 218 may determine whether at least one parameter of the touch input satisfies the corresponding at least one threshold for the touch input. For example, the fingerprint registration module 218 may determine whether at least one parameter of the first touch input (e.g., the pressure applied by the finger on the presence-sensitive display 102, the speed of the finger, the shape of the contact area) satisfies the corresponding at least one threshold for the first touch input based on the first set of heat maps. Similarly, the fingerprint registration module 218 may determine whether at least one parameter of the second touch input satisfies the corresponding at least one threshold for the second touch input based on the second set of heat maps.
[0069] In some examples, a parameter may satisfy a corresponding threshold when the parameter is greater than (or equal to) a threshold value. For example, a pressure parameter may satisfy a corresponding pressure threshold when the pressure (e.g., a moving average of the pressure) applied by a finger on presence-sensitive display 102 (as indicated by the capacitance values of a set of heat maps) is greater than a threshold pressure value. In other examples, a parameter may satisfy a corresponding threshold when the parameter is less than (or equal to) a threshold value. For example, a speed parameter may satisfy a corresponding speed threshold when the speed of the finger (which may be determined from a set of heat maps) is less than a threshold speed value.
[0070] The fingerprint enrollment module 218 may perform an action based on whether the at least one parameter satisfies the corresponding at least one threshold for the touch input. For example, in response to determining that the at least one parameter of the first touch input satisfies the corresponding at least one threshold for the first touch input, the fingerprint enrollment module 218 may store an indication of the first portion in the fingerprint data repository 222. On the other hand, in response to the fingerprint enrollment module 218 determining that the at least one parameter of the first touch input does not satisfy the corresponding at least one threshold for the first touch input, the UI module 214 may output a GUI for display by the presence-sensitive display 202, the GUI including guidance (e.g., graphical elements including instructions, visual aids, etc.) for improving the generation of at least a portion of the fingerprint. For example, the guidance may include instructions requesting the user to press the user's finger harder and more evenly onto the presence-sensitive display 202. The guidance may include instructions related to the parameter that failed to meet the corresponding threshold.
[0071] In a similar manner, in response to determining that at least one parameter of the second touch input satisfies the corresponding at least one threshold for the second touch input, the fingerprint enrollment module 218 can store an indication of the second portion in the fingerprint data repository 222. On the other hand, in response to the fingerprint enrollment module 218 determining that at least one parameter of the second touch input does not satisfy the corresponding at least one threshold for the second touch input, the UI module 214 can output a GUI for display by the presence-sensitive display 202, the GUI including instructions for improving the generation of at least a portion of the fingerprint.
[0072] Fingerprint authentication module 236 may authenticate the user by comparing the currently captured image of the user's fingerprint to the registered fingerprint. In response to fingerprint authentication module 236 authenticating the user based on the captured image of the user's fingerprint, OS 240 may perform an unlock operation or may otherwise allow the user to access applications installed at computing device 200. In some examples, fingerprint authentication module 236 may be considered a component of OS 240.
[0073] In some examples, fingerprint authentication module 236 may use both touch input data and fingerprint data to perform a fingerprint authentication operation. In one example, fingerprint registration module 218 of computing device 200 may have registered a fingerprint of a first finger according to the techniques of this disclosure. In accordance with the fingerprint authentication operation, a user may provide a current touch input to presence-sensitive display 202 and, in turn, touch sensor 206 at a current time with a second finger (which may or may not be different from the first finger having the registered fingerprint). Presence-sensitive display 202 may detect the current touch input provided by the second finger of the second user at the current time. In response to presence-sensitive display 202 detecting the current touch input, touch sensor 206 may generate and fingerprint authentication module 236 may obtain a current set of touch input data indicating the current touch input. Fingerprint authentication module 236 may determine a current set of heat maps associated with the current touch input based on the current set of touch input data.
[0074] While detecting the current touch input, fingerprint sensor 208 (and thus fingerprint authentication module 236) may obtain a current portion of the fingerprint of the second finger. The first portion of the fingerprint of the second finger may be a current set of fingerprint data (e.g., an image) generated by fingerprint sensor 208, which represents the portion of the second finger positioned at fingerprint sensor 208 at the current time. The current portion of the fingerprint may be any portion of the fingerprint, such as a center portion, a top portion, a bottom portion, an edge portion, etc. In some examples, fingerprint sensor 208 may obtain the current set of fingerprint data in response to fingerprint authentication module 236 determining, based on the current set of heat maps, that at least one parameter of the current touch input detected at presence-sensitive display 202 at the current time has stabilized (e.g., remained within a predetermined value range for a predetermined amount of time).
[0075] Fingerprint authentication module 236 may determine a current region of the second finger associated with the current portion of the fingerprint. For example, fingerprint authentication module 236 may determine that the centroid of the region of the second finger contacting presence-sensitive display 202 during the current touch input is located at fingerprint sensor 208 based on the current set of heat maps generated by touch sensor 206. Fingerprint authentication module 236 may determine the current region of the fingerprint to be the centroid of the fingerprint (e.g., located at a center portion of the fingerprint).
[0076] The fingerprint authentication module 236 may determine a reference portion of the registered fingerprint of the first finger (e.g., at least a partial fingerprint generated by the fingerprint registration module 218) that corresponds to the current portion based on the current area of the second finger. For example, in the above example, the fingerprint authentication module 236 may determine the reference portion of the registered fingerprint as the central portion of the registered fingerprint. The fingerprint authentication module 236 may then compare the current portion of the second finger with the reference portion of the at least partial fingerprint of the first finger.
[0077] Fingerprint authentication module 236 may selectively authenticate a user (e.g., a second user) based on the comparison. For example, in response to fingerprint authentication module 236 determining that the current portion of the second finger matches the reference portion of at least a partial fingerprint, fingerprint authentication module 236 may authenticate the user. In response to fingerprint authentication module 236 determining that the current portion of the second finger does not match the reference portion of at least a partial fingerprint, fingerprint authentication module 236 may not authenticate the user.
[0078] In some examples, fingerprint authentication module 236 may use a machine learning algorithm to determine whether the current portion of the second finger matches a reference portion of at least a partial fingerprint. For example, the machine learning algorithm may perform a classification, where the machine learning algorithm provides a numerical value describing the degree to which the current portion is believed to be classified into a "match" category or a "mismatch" category. In some instances, the numerical value provided by the machine learning algorithm may be referred to as a "confidence score," which indicates a corresponding confidence associated with classifying the input into a corresponding category. In some examples, the confidence score may be compared to one or more thresholds to present a discrete classification prediction. In some examples, only a certain number of categories (e.g., one) with relatively maximum confidence scores may be selected to present a discrete classification prediction.
[0079] Note that the fingerprint authentication module 236 may use the current set of heat maps to determine which finger the user used to provide the current touch input (e.g., based on information about the size, shape, etc. of the finger derived from the current set of heat maps). Thus, the fingerprint authentication module 236 may search for a reference portion of a registered fingerprint based on a prediction (e.g., probability) of the finger that the fingerprint authentication module 236 determines has been used to provide the current touch input. In any case, advantages of the techniques of the present disclosure may include reducing delays by, for example, enabling the fingerprint authentication module 236 to more efficiently identify relevant portions of a registered fingerprint for comparison with the current portion of the finger.
[0080] Touch mapping module 238 may map touch input data generated by a touch sensor (e.g., one or more of electrodes 224) of presence-sensitive display 202 to a touch location at presence-sensitive display 202, as described in further detail below. In some examples, fingerprint mapping module 238 may be considered a component of OS 240.
[0081] OS 240 or its components may manage the interaction between applications and a user of computing device 200. Figure 2 As shown in the example of , OS 240 can manage operations between fingerprint enrollment module 218 and a user of computing device 200. In some examples, UI module 214 can be considered a component of OS 240.
[0082] The presence-sensitive display 202 may detect user input using, for example, self-capacitance scanning, mutual-capacitance scanning, etc. For example, the electrodes 224, the touch controller 226, and the touch driver 232 may operate together to generate mutual-capacitance data based on mutual-capacitance scanning and / or to generate self-capacitance data based on self-capacitance scanning. Further details of self-capacitance scanning are provided below with reference to Figure 3 Further details of mutual capacitance scanning are discussed below. Figure 4 be discussed.
[0083] Figure 3 is a conceptual diagram illustrating example self-capacitance data generated by a presence-sensitive display of a computing device, in accordance with one or more techniques of this disclosure. Figure 3 Self-capacitance data 350 reference Figure 2 200 is discussed. However, other computing devices may generate self-capacitance data 350. To perform a self-capacitance scan (also known as a surface capacitance scan), touch controller 226 may drive one of electrodes 224 with a signal and measure the capacitance across the entire electrode (e.g., relative to ground). When another conductive object approaches the electrodes, a capacitor is formed between them, thereby reducing the capacitance between the electrode and ground. Touch controller 226 may measure this capacitance by driving all of electrodes 224 in each direction (e.g., all rows, then all columns) and measuring their capacitance. In the case where electrode 224 includes r row electrodes and c column electrodes, a self-capacitance scan may produce r+c measurements, which are collectively referred to as self-capacitance data 350.
[0084] Figure 3 The self-capacitance data 350 may represent self-capacitance data measured by the presence-sensitive display 202, such as when a user is performing a pinch gesture. Figure 3 As shown, self-capacitance data 350 includes row capacitance values 352 and column capacitance values 354. For row capacitance values 302 and column capacitance values 304, darker cells may indicate higher values or lower values relative to lighter cells. Figure 3 As shown, by placing the user's fingers at locations 356A and 356B, the user may induce a higher capacitance value.
[0085] Figure 4 is a conceptual diagram illustrating example mutual capacitance data generated by a presence-sensitive display of a computing device, in accordance with one or more techniques of this disclosure. Figure 4 Mutual capacitance data 450 reference Figure 2 However, other computing devices may generate mutual capacitance data 450.
[0086] To perform mutual capacitance scanning, touch controller 226 may take advantage of the inherent capacitive coupling that exists between row electrodes and column electrodes of electrodes 224 at locations where they overlap (e.g., touch sensor cells). For example, touch controller 226 may drive a single electrode in electrodes 224 (e.g., a row) and measure the capacitance on intersecting electrodes in electrodes 224 (e.g., several columns). Touch controller 226 may repeat this process until all touch sensor cells have been sensed. Where electrodes 224 include r row electrodes and c column electrodes, the mutual capacitance scan produces r×c measurements, which are collectively referred to as mutual capacitance data 450. For mutual capacitance data 450, darker cells may indicate higher or lower values relative to brighter cells. Therefore, mutual capacitance sensing involves sensing each cell individually to generate a full “image” of the panel, which may allow touch controller 226 to clearly separate each contact. As Figure 4 As shown, by placing the user's fingers at locations 456A and 456B, the user may induce a higher capacitance value.
[0087] FIG. 5A to FIG. 5B is a conceptual diagram illustrating multiple heat maps according to one or more techniques of the present disclosure. Specifically, Figure 5A is a conceptual diagram of heat map 558A, and Figure 5B is a conceptual diagram of a heat map 558B (collectively referred to as a "heat map 558"). The heat map 558 is associated with a finger contact and refers to Figure 2 The computing device 200 is discussed. FIG. 5A to FIG. 5B As shown, by bringing an input object (such as a finger) close to a presence-sensitive display, the capacitance of several cells may be changed. Based on these changes in capacitance, touch controller 226 may use mutual capacitance data to identify touch contacts, as discussed herein.
[0088] For each identified touch contact, touch controller 226 may identify the monomer covered by the contact and determine, based on the covered monomer, an area of display panel 228 that corresponds to the covered monomer, such as a set of coordinates within the resolution of display panel 228. FIG. 5A to FIG. 5B In the example of , the touch controller 226 can identify the covered monomer as a group of connected non-white monomers (e.g., a group of connected monomers whose capacitance values are all greater than the threshold value). In the example of the user pressing the user's finger on the presence-sensitive display 202, the continuous group of non-white monomers can have a shape and size corresponding to the shape and size of the user's finger.
[0089] As discussed above, the fingerprint sensor 208 may be positioned below the touch sensor 206. The fingerprint sensor 208 may be a UDFS or a through-display sensor. FIG. 5A to FIG. 5BIn FIG. 5 , the fingerprint sensor 208 is located below the area 560, which covers the monomer of the touch sensor 206. Figure 5A For example, the fingerprint sensor 208 may generate a set of fingerprint data representing the lower center portion of the finger positioned at the fingerprint sensor 208, because the lower center portion is the portion of the finger positioned at the fingerprint sensor 208 (e.g., covering the fingerprint sensor). Figure 5B For example, the fingerprint sensor 208 may generate a set of fingerprint data representing an upper center portion of a finger positioned at the fingerprint sensor 208 .
[0090] In some examples, one or more settings of fingerprint sensor 208 may be changed based on heat map 558. For example, if the capacitance value of a cell above fingerprint sensor 208 (as indicated by region 560) indicates that relatively little pressure is being applied to the cell, fingerprint sensor 208 may reduce the gain value of fingerprint sensor 208. This may be advantageous because if the user's finger does not completely cover fingerprint sensor 208 (which may be indicated by heat map 558), ambient light may fall on fingerprint sensor 208, resulting in overexposure, thereby adversely affecting fingerprint sensing operations (e.g., fingerprint enrollment operations, fingerprint authentication operations, etc.).
[0091] FIG. 6A to FIG. 6D is a conceptual diagram illustrating example techniques for generating at least a partial fingerprint, such as fingerprints 662A-662D (collectively, “fingerprint 662”). FIG. 6A to FIG. 6D refer to Figure 2 As discussed above, the fingerprint sensor 208 may be a UDFS or a through-display sensor. Thus, the fingerprint sensor 208 may be located below the area 660 that encompasses the monomer of the touch sensor 206.
[0092] The fingerprint enrollment module 218 may determine a first region of the finger associated with a first portion of the finger located at the fingerprint sensor 208 at a first time based on the first set of heat maps 658A. Fig. 6A As shown, region 660 may encompass a cell of touch sensor 206 that corresponds to a slightly lower right portion of first set of heat maps 658A. The shape and size of first set of heat maps 658A may correspond to the shape and size of a user's finger. Therefore, fingerprint enrollment module 218 may determine that the first area is a slightly lower right portion of the user's finger, as indicated by the position of region 660 relative to first set of heat maps 658A.
[0093] The fingerprint enrollment module 218 may process additional touch inputs in a substantially similar manner. For example, the fingerprint enrollment module 218 may determine, based on the second set of heat maps 658B, a second area associated with a second portion of the finger located at the fingerprint sensor 208 at a second time. Figure 6B As shown, region 660 is located in the middle left portion of the second set of heat maps 658B. Therefore, fingerprint enrollment module 218 can determine that the second region is the middle left portion of the user's finger, as indicated by the location of region 660 relative to the second set of heat maps 658B. Figure 6B As further shown, the fingerprint enrollment module 218 may use the first area of the finger and the second area of the finger to align the first portion of the fingerprint and the second portion of the fingerprint to determine the fingerprint 662B.
[0094] In another example, the fingerprint enrollment module 218 may determine a third region of the finger associated with a third portion of the fingerprint located at the fingerprint sensor 208 at a third time based on the third set of heat maps 658C. Figure 6C As shown, region 660 is located in the top right portion of the third set of heat maps 658C. Therefore, fingerprint enrollment module 218 can determine that the third region is the top right portion of the user's finger, as indicated by the location of region 660 relative to the third set of heat maps 658C. Figure 6C As further shown, the fingerprint enrollment module 218 may use the first region, the second region, and the third region of the finger to align the first portion, the second portion, and the third portion of the fingerprint to determine the fingerprint 662C.
[0095] The fingerprint enrollment module 218 may determine any number of regions of a finger and align any number of portions of a fingerprint to generate at least a partial fingerprint. For example, Fig.6D A fingerprint 662D determined by the fingerprint enrollment module 218 is shown, where the fingerprint 662D is a complete fingerprint. Although the fingerprint 662D is a complete fingerprint, it should be understood that only enrolling a portion of the fingerprint may be sufficient for the fingerprint enrollment operation. Therefore, the fingerprint enrollment module 218 may determine the area of the finger multiple times and align the portions of the fingerprint to determine a partial fingerprint or a complete fingerprint.
[0096] The fingerprint enrollment module 218 may perform the operations described in the above example as many times as necessary to generate a partial fingerprint that includes a sufficient portion of the fingerprint being enrolled. For example, the fingerprint enrollment module 218 may perform operations until the fingerprint 662D includes the entire fingerprint.
[0097] FIG. 7A to FIG. 7B is a conceptual diagram of an example UI (eg, graphical user interface) that guides a user during a fingerprint enrollment operation. FIG. 7A to FIG. 7B refer to Figure 1 The computing device 100 is discussed. Fig. 7AAs shown, UI module 114 may cause presence-sensitive display 102 to display UI 716A. UI 716A may indicate first finger position 764A. The user may position the user's finger at first finger position 764A at a first time. Fingerprint enrollment module 118 may obtain a first portion of the fingerprint from fingerprint sensor 108. Fingerprint enrollment module 118 may determine an area of the finger associated with the first portion of the fingerprint based on touch input data from a touch sensor (e.g., touch sensor 106). Next, as Figure 7B As shown, UI module 114 may cause presence-sensitive display 102 to display UI 716B. UI 716B may indicate second finger location 764B. The user may position the user's finger at second finger location 764B at a second time. Fingerprint enrollment module 118 may obtain a second portion of the fingerprint from fingerprint sensor 108. Fingerprint enrollment module 118 may determine an area of the finger associated with the second portion of the fingerprint based on touch input data from a touch sensor (e.g., touch sensor 106).
[0098] Figure 8 is a flow chart illustrating example operations of an example computing device according to one or more aspects of the present disclosure. Figure 8 The example operation is described by Figure 1 The example operations are performed by computing device 100, but in other examples, part or all of the example operations may be performed by another computing device.
[0099] Computing device 100 may execute fingerprint enrollment module 118. During execution of fingerprint enrollment module 118, presence-sensitive display of computing device 100 may detect a first touch input (800). A user of computing device 100 may provide the first touch input with a finger at a first time.
[0100] Upon detecting the first touch input, the fingerprint sensor 108 (and thus the fingerprint enrollment module 118) may obtain a first portion of the fingerprint of the finger (802). The first portion of the fingerprint of the finger may be a first set of fingerprint data generated by the fingerprint sensor 108, which represents a portion of the finger that is located at the fingerprint sensor 108 at the first time. The first portion of the fingerprint may be any portion of the fingerprint, such as a center portion, a top portion, a bottom portion, an edge portion, etc.
[0101] Additionally, in response to presence-sensitive display 102 detecting a first touch input, touch sensor 106 may generate and fingerprint enrollment module 118 may obtain a first set of touch input data indicating the first touch input. Fingerprint enrollment module 118 may determine a first set of heat maps based on the first set of touch input data. Fingerprint enrollment module 118 may process heat maps (such as the first set of heat maps) to determine parameters of the touch input for the touch input. In some examples, fingerprint sensor 108 may obtain a first portion of the fingerprint in response to fingerprint enrollment module 118 determining, based on the first set of heat maps, that at least one parameter of the first touch input detected at presence-sensitive display 102 at a first time has stabilized (e.g., remained within a predetermined range of values for a predetermined amount of time). In general, the parameters of touch input 112 may include pressure and velocity.
[0102] Presence-sensitive display 102 may detect a second touch input (804). A user of computing device 100 may provide a second touch input with a finger (e.g., the same finger or a different finger) at a second time. Upon detecting the second touch input, fingerprint sensor 108 (and, in turn, fingerprint enrollment module 118) may obtain a second portion of the fingerprint of the finger (806). The second portion of the fingerprint of the finger may be a second set of fingerprint data generated by fingerprint sensor 108 that represents a portion of the finger positioned at fingerprint sensor 108 at the second time. The second portion of the fingerprint may be any portion of the fingerprint, such as a center portion, a top portion, a bottom portion, an edge portion, etc.
[0103] Additionally, in response to presence-sensitive display 102 detecting a second touch input, touch sensor 106 may generate and fingerprint enrollment module 118 may obtain a second set of touch input data indicating the second touch input. Fingerprint enrollment module 118 may determine a second set of heat maps based on the second set of touch input data. Fingerprint enrollment module 118 may process heat maps (such as the second set of heat maps) to determine parameters of the touch input. In some examples, fingerprint sensor 108 may obtain a second portion of the fingerprint in response to fingerprint enrollment module 118 determining that at least one parameter of the second touch input detected at presence-sensitive display 102 at a second time has stabilized (e.g., remained within a predetermined range of values for a predetermined amount of time) based on the second set of heat maps associated with the second touch input. In general, the parameters of touch input 112 may include pressure and velocity.
[0104] For each captured portion of the fingerprint, fingerprint registration module 118 may determine an area (e.g., a location, point, region, coordinates, position, etc.) of the finger associated with the portion (808). For example, fingerprint registration module 118 may determine a first area of the finger associated with a first portion of the fingerprint and a second area of the finger associated with a second portion of the fingerprint. In some examples, fingerprint registration module 118 may determine the first area of the finger associated with the first portion of the fingerprint based on a first set of heat maps. Similarly, fingerprint registration module 118 may determine the second area of the finger associated with the second portion of the fingerprint based on a second set of heat maps.
[0105] Fingerprint enrollment module 118 may generate at least a partial fingerprint based on the first portion of the fingerprint, the first area of the finger, the second portion of the fingerprint, and the second area of the finger (810). For example, fingerprint enrollment module 118 may align the first portion of the fingerprint with the second portion of the fingerprint based on the first area of the finger and the second area of the finger.
[0106] Although touch input 112 is described as including a first touch input and a second touch input, it should be understood by those skilled in the art that touch input 112 may include one or more additional touch inputs (e.g., a third touch input, a fourth touch input, etc.). In such examples, the techniques of the present disclosure may be similarly applied to the one or more additional touch inputs to ensure that a sufficient portion of the fingerprint has been enrolled (e.g., because only the first portion and the second portion are insufficient to complete the fingerprint enrollment operation). In addition, the techniques of the present disclosure may be applied to one or more fingers, one or more hands, and one or more users.
[0107] Aspects of the present disclosure include the following examples.
[0108] Example 1: A method, comprising: detecting, by a presence-sensitive display of a computing device, a first touch input of a finger at a first time; obtaining, by a fingerprint sensor of the computing device, a first portion of a fingerprint of the finger when detecting the first touch input, wherein the fingerprint sensor is configured to obtain the fingerprint through the presence-sensitive display; detecting, by the presence-sensitive display, a second touch input of the finger at a second time; obtaining, by the fingerprint sensor, a second portion of the fingerprint of the finger when detecting the second touch input; determining, by the computing device, a first region of the finger associated with the first portion of the fingerprint and a second region of the finger associated with the second portion of the fingerprint; and generating, by the computing device, at least a partial fingerprint of the finger based on the first portion of the fingerprint, the first region of the finger, the second portion of the fingerprint, and the second region of the finger.
[0109] Example 2: The method described in Example 1 includes: determining, by a computing device, a first set of heat maps associated with a first touch input, wherein determining a first area of a finger associated with a first portion of a fingerprint is based on the first set of heat maps; and determining, by the computing device, a second set of heat maps associated with a second touch input, wherein determining a second area of a finger associated with a second portion of the fingerprint is based on, further, the second set of heat maps.
[0110] Example 3: The method of Example 2, wherein the first set of heat maps includes one or more indications of capacitance values for a first region where the sensitive display is present, and wherein the second set of heat maps includes one or more indications of capacitance values for a second region where the sensitive display is present.
[0111] Example 4: The method as described in Example 2 or 3 further includes: determining by the computing device based on the first set of heat maps whether at least one parameter of the first touch input satisfies at least one corresponding threshold for the first touch input; and determining by the computing device based on the second set of heat maps whether at least one parameter of the second touch input satisfies at least one corresponding threshold for the threshold second touch input.
[0112] Example 5: The method as described in Example 4 further includes: in response to determining that at least one parameter of the first touch input satisfies at least one corresponding threshold for the first touch input, the computing device stores an indication of the first part of the fingerprint in a memory of the computing device; and in response to determining that at least one parameter of the second touch input satisfies at least one corresponding threshold for the second touch input, the computing device stores an indication of the second part of the fingerprint in a threshold memory.
[0113] Example 6: The method as described in Example 4 further includes: in response to determining that at least one parameter of the first touch input does not satisfy at least one corresponding threshold for the first touch input, outputting a graphical user interface for display on a presence-sensitive display, the graphical user interface including instructions for improving the generation of at least a portion of the fingerprint; and in response to determining that at least one parameter of the second touch input does not satisfy at least one corresponding threshold for the second touch input, outputting a graphical user interface including instructions by the computing device for display on the threshold presence-sensitive display.
[0114] Example 7: A method as described in any of Examples 4 to 6, wherein obtaining the first portion of the fingerprint is in response to the computing device determining that at least one parameter of the first touch input has stabilized, and wherein obtaining the second portion of the fingerprint is in response to the computing device determining that at least one parameter of the second touch input has stabilized.
[0115] Example 8: A method as described in any of Examples 4 to 7, wherein at least one parameter of the first touch input includes one or more of the following: the pressure applied by the finger on the presence-sensitive display, the speed of the finger, the shape of the contact area of the finger, or the size of the contact area of the finger, and wherein at least one parameter of the second touch input includes one or more of the following: the pressure applied by the finger on the presence-sensitive display, the speed of the finger, the shape of the contact area of the finger, or the size of the contact area of the finger.
[0116] Example 9: The method of any one of Examples 2 to 8 includes: changing a gain value setting of a further fingerprint sensor based on one or more of the first set of heat maps or the second set of heat maps.
[0117] Example 10: The method of any one of Examples 1 to 9, wherein determining at least a portion of the fingerprint comprises aligning a first portion of the fingerprint and a second portion of the fingerprint based on a first area of the finger and a second area of the finger.
[0118] Example 11: A method as described in any of Examples 1 to 10 includes: outputting a graphical user interface by a computing device for display on a presence-sensitive display, the graphical user interface including an indication of a first finger position of a finger at a first time and an indication of a second finger position of the finger at a further second time.
[0119] Example 12: A method as described in any of Examples 1 to 11, wherein the finger is a first finger, the method further comprising: detecting, by a presence-sensitive display, a current touch input of a second finger at a current time; obtaining, by a fingerprint sensor, a current portion of the fingerprint of the second finger when detecting the current touch input; determining, by a computing device, a current area of the second finger associated with the current portion of the fingerprint of the second finger; determining, based on the current area of the second finger, a reference portion of at least a portion of the fingerprint of the first finger corresponding to the current portion of the fingerprint of the second finger; and selectively authenticating the user by comparing, by the computing device, at least the current portion of the fingerprint of the second finger with a reference portion of at least a portion of the fingerprint of the first finger.
[0120] Example 13: A computing device comprising: a presence-sensitive display configured to detect touch input; a fingerprint sensor configured to obtain a fingerprint of a finger through the presence-sensitive display; one or more processors; and a memory storing instructions that, when executed by the one or more processors, cause the one or more processors to: receive a first touch input of the finger at a first time from the presence-sensitive display; receive a first portion of the fingerprint of the finger from the fingerprint sensor while the presence-sensitive display is detecting the first touch input; receive a second touch input of the finger at a second time from the presence-sensitive display; receive a second portion of the fingerprint of the finger from the fingerprint sensor while the presence-sensitive display is detecting the second touch input; determine a first area of the finger associated with the first portion of the fingerprint and a second area of the finger associated with the second portion of the fingerprint; and generate at least a partial fingerprint of the finger based on the first portion of the fingerprint, the first area of the finger, the second portion of the fingerprint, and the second area of the finger.
[0121] Example 14: A computing device as described in Example 13, wherein the instructions further cause the one or more processors to: determine a first set of heat maps associated with a first touch input, wherein the one or more processors determine a first area of the finger associated with a first portion of the fingerprint based on the first set of heat maps; and determine a second set of heat maps associated with a second touch input, wherein the one or more processors determine a second area of the finger associated with a second portion of the fingerprint based on the second set of heat maps.
[0122] Example 15: A computing device as described in Example 14, wherein the first set of heat maps includes one or more indications of capacitance values for a first area where the sensitive display is present, and wherein the second set of heat maps includes one or more indications of capacitance values for a second area where the sensitive display is present.
[0123] Example 16: A computing device as described in Example 14 or 15, wherein the instructions further cause one or more processors to: determine whether at least one parameter of a first touch input satisfies at least one corresponding threshold for the first touch input based on a first set of heat maps; and determine whether at least one parameter of a second touch input satisfies at least one corresponding threshold for a threshold second touch input based on a second set of heat maps.
[0124] Example 17: A computing device as described in Example 16, wherein the instructions further cause one or more processors to: in response to determining that at least one parameter of the first touch input satisfies at least one corresponding threshold for the first touch input, store an indication of the first portion in a memory; and in response to determining that at least one parameter of the second touch input satisfies at least one corresponding threshold for the second touch input, store an indication of the second portion in a threshold memory.
[0125] Example 18: A computing device as described in Example 16, wherein the instructions further cause one or more processors to: in response to determining that at least one parameter of the first touch input does not satisfy at least one corresponding threshold for the first touch input, output a graphical user interface for display on a presence-sensitive display, the graphical user interface including instructions for improving the generation of at least a portion of the fingerprint; and in response to determining that at least one parameter of the second touch input does not satisfy at least one corresponding threshold for the second touch input, output a graphical user interface including instructions for display on a threshold presence-sensitive display.
[0126] Example 19: A computing device as described in any of Examples 16 to 18, wherein the one or more processors receive a first portion of the fingerprint by receiving the first portion of the fingerprint from the fingerprint sensor in response to determining that at least one parameter of the first touch input has stabilized, and wherein the one or more processors receive a second portion of the fingerprint by receiving the second portion of the fingerprint from the fingerprint sensor in response to the computing device determining that at least one parameter of the second touch input has stabilized.
[0127] Example 20: A computing device as described in any of Examples 16 to 19, wherein at least one parameter of the first touch input includes one or more of the following: pressure applied by the finger on the presence-sensitive display, the speed of the finger, the shape of the contact area of the finger, or the size of the contact area of the finger, and wherein at least one parameter of the second touch input includes one or more of the following: pressure applied by the finger on the presence-sensitive display, the speed of the finger, the shape of the contact area of the finger, or the size of the contact area of the finger.
[0128] Example 21 The computing device of any of Examples 14 to 20, wherein the instructions further cause the one or more processors to change a gain value setting of the fingerprint sensor based on one or more of the first set of heat maps or the second set of heat maps.
[0129] Example 22: A computing device as described in any of Examples 13 to 21, wherein the one or more processes determine at least a partial fingerprint by aligning a first portion of the fingerprint and a second portion of the fingerprint based on a first area of the finger and a second area of the finger.
[0130] Example 23: A computing device as described in any of Examples 13 to 22, wherein the instructions further cause one or more processors to: output a graphical user interface for display on a presence-sensitive display, the graphical user interface including an indication of a first finger position of a finger at a first time and an indication of a second finger position of the finger at a second time.
[0131] Example 24: A computing device as described in any of Examples 13 to 23, wherein the finger is a first finger, and wherein the instructions further cause one or more processors to: receive a current touch input from a second finger at a current time from a presence-sensitive display; receive a current portion of the second finger's fingerprint from a fingerprint sensor while the presence-sensitive display is detecting the current touch input; determine a current area of the second finger associated with the current portion of the second finger's fingerprint; determine a reference portion of at least a portion of the first finger's fingerprint corresponding to the current portion of the second finger's fingerprint based on the current area of the second finger; and selectively authenticate the user by comparing at least the current portion of the second finger's fingerprint with the reference portion of at least a portion of the first finger's fingerprint.
[0132] Example 25: A non-transitory computer-readable storage medium encoded with instructions that, when executed by one or more processors of a computing device, cause the one or more processors to: receive a first touch input from the presence-sensitive display of the finger at a first time; receive a first portion of the fingerprint of the finger from the fingerprint sensor while the presence-sensitive display is detecting the first touch input; receive a second touch input from the finger at a second time from the presence-sensitive display; receive a second portion of the fingerprint of the finger from the fingerprint sensor while the presence-sensitive display is detecting the second touch input; determine a first area of the finger associated with the first portion of the fingerprint and a second area of the finger associated with the second portion of the fingerprint; and generate at least a partial fingerprint of the finger based on the first portion of the fingerprint, the first area of the finger, the second portion of the fingerprint, and the second area of the finger.
[0133] Example 26: A non-transitory computer-readable storage medium as described in Example 25, wherein the instructions cause one or more processors to: determine a first set of heat maps associated with a first touch input, wherein the one or more processors determine a first area of the finger associated with a first portion of the fingerprint based on the first set of heat maps; and determine a second set of heat maps associated with a second touch input, wherein the one or more processors determine a second area of the finger associated with a second portion of the fingerprint based on the second set of heat maps.
[0134] Example 27: The non-transitory computer-readable storage medium of Example 26, wherein the first set of heat maps includes one or more indications of capacitance values for a first area where a sensitive display is present, and wherein the second set of heat maps includes one or more indications of capacitance values for a second area where a sensitive display is present.
[0135] Example 28: A non-transitory computer-readable storage medium as described in Example 26 or 27, wherein the instructions further cause one or more processors to: determine whether at least one parameter of a first touch input satisfies at least one corresponding threshold for the first touch input based on a first set of heat maps; and determine whether at least one parameter of a second touch input satisfies at least one corresponding threshold for the second touch input based on a second set of heat maps.
[0136] Example 29: A non-transitory computer-readable storage medium as described in Example 28, wherein the instructions further cause one or more processors to: in response to determining that at least one parameter of a first touch input satisfies at least one corresponding threshold for the first touch input, store an indication of the first portion in a memory; and in response to determining that at least one parameter of a second touch input satisfies at least one corresponding threshold for the second touch input, store an indication of the second portion in a memory.
[0137] Example 30: A non-transitory computer-readable storage medium as described in Example 28, wherein the instructions further cause one or more processors to: in response to determining that at least one parameter of a first touch input does not satisfy at least one corresponding threshold for the first touch input, output a graphical user interface for display on a presence-sensitive display, the graphical user interface including instructions for improving generation of at least a portion of a fingerprint; and in response to determining that at least one parameter of a second touch input does not satisfy at least one corresponding threshold for the second touch input, output a graphical user interface including instructions for display on a presence-sensitive display.
[0138] Example 31: A non-transitory computer-readable storage medium as described in any of Examples 28 to 30, wherein one or more processors receive a first portion of the fingerprint by receiving the first portion of the fingerprint from the fingerprint sensor in response to determining that at least one parameter of the first touch input has stabilized, and wherein the one or more processors receive a second portion of the fingerprint by receiving the second portion of the fingerprint from the fingerprint sensor in response to the computing device determining that at least one parameter of the second touch input has stabilized.
[0139] Example 32: A non-transitory computer-readable storage medium as described in any of Examples 28 to 31, wherein at least one parameter of the first touch input includes one or more of the following: the pressure applied by the finger on the presence-sensitive display, the speed of the finger, the shape of the contact area of the finger, or the size of the contact area of the finger, and wherein at least one parameter of the second touch input includes one or more of the following: the pressure applied by the finger on the presence-sensitive display, the speed of the finger, the shape of the contact area of the finger, or the size of the contact area of the finger.
[0140] Example 33: The non-transitory computer-readable storage medium of any of Examples 26 to 32, wherein the instructions further cause the one or more processors to: change a gain value setting of the fingerprint sensor based on one or more of the first set of heat maps or the second set of heat maps.
[0141] Example 34: A computing device as described in any of Examples 25 to 33, wherein the one or more processes determine at least a partial fingerprint by aligning a first portion of the fingerprint and a second portion of the fingerprint based on a first area of the finger and a second area of the finger.
[0142] Example 35: A computing device as described in any of Examples 25 to 34, wherein the instructions further cause one or more processors to: output a graphical user interface for display on a presence-sensitive display, the graphical user interface including an indication of a first finger position of a finger at a first time and an indication of a second finger position of the finger at a second time.
[0143] Example 36: A computing device as described in any of Examples 25 to 35, wherein the finger is a first finger, and wherein the instructions further cause one or more processors to: receive a current touch input from a second finger at a current time from a presence-sensitive display; receive a current portion of the second finger's fingerprint from a fingerprint sensor while the presence-sensitive display is detecting the current touch input; determine a current area of the second finger associated with the current portion of the second finger's fingerprint; determine a reference portion of at least a portion of the first finger's fingerprint corresponding to the current portion of the second finger's fingerprint based on the current area of the second finger; and selectively authenticate the user by comparing at least the current portion of the second finger's fingerprint with the reference portion of at least a portion of the first finger's fingerprint.
[0144] In one or more examples, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored as one or more instructions or codes on or sent through a computer-readable medium and executed by a hardware-based processing unit. A computer-readable medium may include a computer-readable storage medium corresponding to: a tangible medium, such as a data storage medium; or a communication medium, including, for example, any medium that facilitates the transfer of a computer program from one place to another according to a communication protocol. In this manner, a computer-readable medium may generally correspond to (1) a non-transitory tangible computer-readable storage medium or (2) a communication medium such as a signal or carrier wave. A data storage medium may be any available medium that can be accessed by one or more computers or one or more processors to retrieve instructions, codes, and / or data structures for implementing the techniques described in the present disclosure. A computer program product may include a computer-readable medium.
[0145] By way of example and not limitation, such computer-readable storage media may include RAM, ROM, EEPROM, CD-ROM or other optical disk storage devices, magnetic disk storage devices or other magnetic storage devices, flash memory, or any other medium that can be used to store the desired program code in the form of instructions or data structures and can be accessed by a computer. In addition, any connection is appropriately referred to as a computer-readable medium. For example, if a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwaves are used to send instructions from a website, server, or other remote source, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwaves are included in the definition of the medium. However, it should be understood that computer-readable storage media and data storage media do not include connections, carrier waves, signals, or other temporary media, but rather relate to non-temporary tangible storage media. As used herein, disks and optical disks include compact disks (CDs), laser disks, optical disks, digital versatile disks (DVDs), floppy disks, and blue-ray disks, wherein disks typically reproduce data magnetically, and optical disks reproduce data optically with lasers. The above combination should also be included in the scope of computer-readable media.
[0146] Instructions may be executed by one or more processors such as one or more digital signal processors (DSPs), general purpose microprocessors, application specific integrated circuits (ASICs), field programmable logic arrays (FPGAs), or other equivalent integrated or discrete logic circuits. Thus, as used herein, the term "processor" may refer to any of the foregoing structures or any other structure suitable for implementing the techniques described herein. Furthermore, in some aspects, the functionality described herein may be provided within dedicated hardware and / or software modules. Furthermore, the techniques may be fully implemented in one or more circuits or logic elements.
[0147] The techniques of the present disclosure may be implemented in a wide variety of devices or apparatuses, including wireless telephone handsets, integrated circuits (ICs), or a set of ICs (e.g., chipsets). Various components, modules, or units are described in the present disclosure to emphasize the functional aspects of the devices configured to perform the disclosed techniques, but these components, modules, or units do not necessarily need to be implemented by different hardware units. Instead, as described above, the various units may be combined in hardware units, or provided by a collection of interoperable hardware units including one or more processors as described above in combination with appropriate software and / or firmware.
[0148] Various examples of the present disclosure have been described. Any combination of the described systems, operations, or functions is contemplated. These and other examples are within the scope of the following claims.
Claims
1. A method comprising: detecting, by a presence-sensitive display of a computing device, a first touch input by a finger at a first time; upon detecting the first touch input, obtaining, by a fingerprint sensor of the computing device, a first portion of a fingerprint of the finger, wherein the fingerprint sensor is configured to obtain the fingerprint through the presence-sensitive display; detecting, by the presence-sensitive display, a second touch input by the finger at a second time; When detecting the second touch input, obtaining, by the fingerprint sensor, a second part of the fingerprint of the finger; determining, by the computing device, a first region of the finger associated with the first portion of the fingerprint and a second region of the finger associated with the second portion of the fingerprint; as well as At least a partial fingerprint of the finger is generated by the computing device based on the first portion of the fingerprint, the first area of the finger, the second portion of the fingerprint, and the second area of the finger.
2. The method of claim 1, further comprising: determining, by the computing device, a first set of heat maps associated with the first touch input, wherein determining the first area of the finger associated with the first portion of the fingerprint is based on the first set of heat maps; as well as A second set of heat maps associated with the second touch input is determined, by the computing device, wherein determining the second area of the finger associated with the second portion of the fingerprint is based on the second set of heat maps.
3. The method according to claim 2, wherein the first set of thermal maps includes one or more indications of capacitance values for a first region of the presence sensitive display, and Wherein the second set of thermal maps includes one or more indications of capacitance values for a second region of the presence-sensitive display.
4. The method according to claim 2 or 3, further comprising: determining, by the computing device, whether at least one parameter of the first touch input satisfies corresponding at least one threshold for the first touch input based on the first set of heat maps; as well as A determination is made by the computing device as to whether at least one parameter of the second touch input satisfies a corresponding at least one threshold for the second touch input based on the second set of heat maps.
5. The method of claim 4, further comprising: In response to determining that the at least one parameter of the first touch input satisfies the corresponding at least one threshold for the first touch input, storing, by the computing device, an indication of the first portion of the fingerprint in a memory of the computing device; as well as In response to determining that the at least one parameter of the second touch input satisfies the corresponding at least one threshold for the second touch input, storing, by the computing device, an indication of the second portion of the fingerprint in the memory.
6. The method of claim 4, further comprising: in response to determining that the at least one parameter of the first touch input does not satisfy the corresponding at least one threshold for the first touch input, outputting a graphical user interface for display by the presence-sensitive display, the graphical user interface including instructions for improving generation of the at least partial fingerprint; as well as In response to determining that the at least one parameter of the second touch input does not satisfy the corresponding at least one threshold for the second touch input, outputting, by the computing device, the graphical user interface including the guidance for display by the presence-sensitive display.
7. The method according to any one of claims 4 to 6, wherein obtaining the first portion of the fingerprint is in response to the computing device determining that the at least one parameter of the first touch input has stabilized, and Wherein obtaining the second portion of the fingerprint is in response to the computing device determining that the at least one parameter of the second touch input has stabilized.
8. The method according to any one of claims 4 to 7, wherein the at least one parameter of the first touch input comprises one or more of: pressure applied by the finger on the presence-sensitive display, velocity of the finger, shape of a contact area of the finger, or size of the contact area of the finger, and Wherein the at least one parameter of the second touch input includes one or more of: the pressure applied by the finger on the presence-sensitive display, the speed of the finger, the shape of the contact area of the finger, or the size of the contact area of the finger.
9. The method of any one of claims 2 to 8, further comprising: A gain value setting of the fingerprint sensor is changed based on one or more of the first set of heat maps or the second set of heat maps.
10. The method of any one of claims 1 to 9, wherein determining the at least partial fingerprint comprises: The first portion of the fingerprint and the second portion of the fingerprint are aligned based on the first area of the finger and the second area of the finger.
11. The method of any one of claims 1 to 10, further comprising: A graphical user interface is output by the computing device for display by the presence-sensitive display, the graphical user interface including an indication of a first finger position of the finger at the first time and an indication of a second finger position of the finger at the second time.
12. The method of any one of claims 1 to 11, wherein the finger is a first finger, the method further comprising: detecting, by the presence-sensitive display, a current touch input by a second finger at a current time; When detecting the current touch input, obtaining, by the fingerprint sensor, a current portion of the fingerprint of the second finger; determining, by the computing device, a current region of the second finger associated with the current portion of the fingerprint of the second finger; determining, based on the current area of the second finger, a reference portion of the at least partial fingerprint of the first finger corresponding to the current portion of the fingerprint of the second finger; as well as A user is selectively authenticated by the computing device by comparing at least the current portion of the fingerprint of the second finger to the reference portion of the at least partial fingerprint of the first finger.
13. The method of claim 12, wherein selectively authenticating the user by comparing at least the current portion of the fingerprint of the second finger to the reference portion comprises: A machine learning algorithm is used to determine whether the current portion of the second finger matches the reference portion of the at least partial fingerprint.
14. A computing device comprising: Means configured to perform any of the methods of claims 1 to 13.
15. A computer-readable storage medium, comprising: Instructions which, when executed, cause one or more processors of a computing device to perform any of the methods of claims 1 to 13.
