[go: up one dir, main page]

US11687195B2 - Contactless input device - Google Patents

Contactless input device Download PDF

Info

Publication number
US11687195B2
US11687195B2 US17/886,874 US202217886874A US11687195B2 US 11687195 B2 US11687195 B2 US 11687195B2 US 202217886874 A US202217886874 A US 202217886874A US 11687195 B2 US11687195 B2 US 11687195B2
Authority
US
United States
Prior art keywords
row
determination unit
sharpness
sensor electrodes
location
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
US17/886,874
Other languages
English (en)
Other versions
US20230063584A1 (en
Inventor
Keitaro Uchida
Masaki Ota
Masahiro Takata
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alps Alpine Co Ltd
Original Assignee
Alps Alpine Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alps Alpine Co Ltd filed Critical Alps Alpine Co Ltd
Assigned to ALPS ALPINE CO., LTD. reassignment ALPS ALPINE CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: OTA, MASAKI, TAKATA, MASAHIRO, UCHIDA, KEITARO
Publication of US20230063584A1 publication Critical patent/US20230063584A1/en
Application granted granted Critical
Publication of US11687195B2 publication Critical patent/US11687195B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • G06F3/0418Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment
    • G06F3/04186Touch location disambiguation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/044Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
    • G06F3/0443Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means using a single layer of sensing electrodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/044Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
    • G06F3/0446Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means using a grid-like structure of electrodes in at least two directions, e.g. using row and column electrodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/041Indexing scheme relating to G06F3/041 - G06F3/045
    • G06F2203/04104Multi-touch detection in digitiser, i.e. details about the simultaneous detection of a plurality of touching locations, e.g. multiple fingers or pen and finger
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/041Indexing scheme relating to G06F3/041 - G06F3/045
    • G06F2203/04108Touchless 2D- digitiser, i.e. digitiser detecting the X/Y position of the input means, finger or stylus, also when it does not touch, but is proximate to the digitiser's interaction surface without distance measurement in the Z direction

Definitions

  • the present invention relates to a contactless input device.
  • a touchpad input device including a control unit having a palm rejection function has been developed.
  • the palm rejection function by detecting a change in an electrical variable caused by an object in close contact with an operating surface, a contact region contacted by the object is calculated, and it is determined whether the contact region is contacted by a fingertip or a palm. The determination of whether the operation is performed by a fingertip or a palm is provided based on the area of the contact region (refer to, for example, US2015/0212649A1).
  • Known touch pad input devices have been developed to be used in the condition in which the operating surface is touched by a hand. However, in some cases, it is desired to perform operational input in a contactless manner without touching the operating surface with a hand.
  • the present invention provides a contactless input device that can determine whether a contactless operation is performed and where the operation is performed.
  • a contactless input device includes a plurality of sensor electrodes and a determination unit.
  • the plurality of sensor electrodes are configured to, when a hand performs an operational input over an operating surface of an operating part in a contactless manner, detect individual capacitances correlated to proximity of the hand to the operating surface.
  • the determination unit is configured to calculate sharpnesses of the hand at a plurality of different locations in plan view based on the respective capacitances detected by the plurality of sensor electrodes and determine a location of the operational input based on the sharpnesses.
  • FIG. 1 illustrates an example of a configuration of an electronic apparatus including a contactless input device of an embodiment
  • FIG. 2 illustrates an example of the configuration of the electronic apparatus including the contactless input device of the embodiment
  • FIG. 3 illustrates an example of the configuration of the electronic apparatus including the contactless input device of the embodiment
  • FIG. 4 illustrates an example of a configuration of the contactless input device of the embodiment
  • FIG. 5 illustrates an example of a distribution of a difference value ⁇ AD and a distribution of its reciprocal with respect to the relationships between a hand and electrode surfaces of an electrostatic sensor
  • FIG. 6 illustrates an example of distributions of reciprocal in the length direction and the width direction of the hand
  • FIG. 7 illustrates an example of a second-order coefficient of a quadratic curve fitting a fingertip and a second-order coefficient of a quadratic curve fitting a palm;
  • FIG. 8 is a flowchart illustrating a process of identifying the location of the fingertip
  • FIG. 9 is a flowchart illustrating the process of identifying the location of the fingertip.
  • FIG. 10 is a flowchart illustrating the process of identifying the location of the fingertip
  • FIGS. 11 A and 11 B provide a flowchart illustrating the process of identifying the location of the fingertip
  • FIG. 12 is a flowchart illustrating the process of identifying the location of the fingertip
  • FIG. 13 is a flowchart illustrating the process of identifying the location of the fingertip
  • FIGS. 14 A, 14 B, and 14 C indicate a distribution of the difference value ⁇ AD, a distribution of reciprocal, and columns yielding the minimum reciprocal values Minimum(i), indicated by Column(i);
  • FIGS. 15 A, 15 B, 15 C, and 15 D indicate targets for calculation of sharpness, minimum values Minimum(i), results of calculation of sharpness, and a largest sharpness and coordinates;
  • FIG. 16 is a flowchart illustrating an operation of calculating sharpness, performed according to a subroutine “sub CalculateSharpness” of a first modification
  • FIG. 17 illustrates the fingertip in relation to the xz coordinates
  • FIG. 18 is a flowchart illustrating an operation of calculating sharpness, performed according to a subroutine “sub CalculateSharpness” of a second modification
  • FIG. 19 is a flowchart illustrating an operation of calculating sharpness, performed according to a subroutine “sub CalculateSharpness” of a third modification
  • FIGS. 20 A and 20 B provide a flowchart illustrating an operation of calculating sharpness, performed according to a subroutine “sub IdentifyFingertip” of a fourth modification;
  • FIG. 21 is a flowchart illustrating a process of identifying the location of the fingertip according to a fifth modification
  • FIG. 22 is a flowchart illustrating the process of identifying the location of the fingertip according to the fifth modification
  • FIG. 23 is a flowchart illustrating the process of identifying the location of the fingertip according to the fifth modification
  • FIGS. 24 A, 24 B, and 24 C indicate an order of the difference values ⁇ AD calculated on sensor electrodes with 5 rows and 6 columns, and an absolute value of variance of BigX(i) and an absolute value of covariance of BigX(i) and BigY(i);
  • FIGS. 25 A, 25 B, 25 C, and 25 D indicate determination results obtained in the operation of identifying the fingertip according to the fourth modification illustrated in FIGS. 20 A and 20 B ;
  • FIG. 26 is a flowchart illustrating a process of identifying the location of the fingertip according to a sixth modification
  • FIG. 27 is a flowchart illustrating the process of identifying the location of the fingertip according to the sixth modification
  • FIGS. 28 A and 28 B provide a flowchart illustrating the process of identifying the location of the fingertip according to the sixth modification
  • FIG. 29 is a flowchart illustrating the process of identifying the location of the fingertip according to the sixth modification
  • FIG. 30 is a flowchart illustrating an operation of calculating sharpness, performed according to a subroutine “sub CalculateSharpness” of a seventh modification
  • FIG. 31 is a flowchart illustrating an operation of calculating sharpness, performed according to a subroutine “sub CalculateSharpness” of an eighth modification;
  • FIG. 32 is a flowchart illustrating an operation of calculating sharpness, performed according to a subroutine “sub CalculateSharpness” of a ninth modification.
  • FIG. 33 illustrates a specific configuration of the electrostatic sensor of the contactless input device.
  • FIGS. 1 , 2 , and 3 illustrate an example of a configuration of an electronic apparatus 100 including a contactless input device of an embodiment.
  • FIG. 4 illustrates an example of a configuration of a contactless input device 100 A of the embodiment.
  • FIGS. 2 and 3 illustrate a hand H of a user of the electronic apparatus 100 . More specifically, a fingertip FT and a palm (the inner surface of the hand) P of the hand H are illustrated.
  • the fingertip FT is exemplified by the index finger, but may be a finger other than the index finger.
  • X direction A direction parallel to an X axis (X direction), a direction parallel to a Y axis (Y direction), and a direction parallel to a Z axis (Z direction) are perpendicular to each other.
  • a ⁇ Z direction is a direction toward an electrostatic sensor 120
  • the +Z direction is a direction away from the electrostatic sensor 120 .
  • Plan view means XY plane view.
  • the length, width, and thickness of individual elements may be presented in an exaggerated manner.
  • the electronic apparatus 100 includes a casing 101 , a display device 110 , the electrostatic sensor 120 , and a control device 130 .
  • FIGS. 1 to 3 do not illustrate the control device 130 (refer to FIG. 4 )
  • the control device 130 is provided, for example, under the display device 110 and the electrostatic sensor 120 inside the casing 101 .
  • the contactless input device 100 A includes, as illustrated in FIG. 4 , the electrostatic sensor 120 and the control device 130 .
  • the casing 101 is a case made of a material such as a resin or metal, formed to house the display device 110 , the electrostatic sensor 120 , and the control device 130 .
  • the display device 110 is disposed, for example, under the transparent electrostatic sensor 120 , and the display device 110 is viewable through an operating surface 105 that is the top surface of, for example, a transparent panel provided in an opening at the upper part of the casing 101 .
  • FIGS. 2 and 3 illustrate, as an example, the state in which an operational input is being performed on an operating part 111 with the fingertip FT spaced apart by a distance D from the operating surface 105 (refer to FIG. 2 ).
  • the electronic apparatus 100 detects the location of the fingertip FT not touching the operating surface 105 and accepts the contactless operational input.
  • the contactless operational input means operating the electronic apparatus 100 with the fingertip FT without touching the operating surface 105 with the fingertip FT.
  • the electronic apparatus 100 may be, for example, a tablet computer input device or an input unit of an automatic teller machine (ATM), installed in a retail establishment or a facility for use by the general public.
  • the electronic apparatus 100 may be, for example, a tablet computer, smartphone, or game console that is used by an individual.
  • the display device 110 may be, for example, a liquid crystal display or organic electroluminescent (EL) display.
  • the display device 110 displays images of operating parts 111 with a graphic user interface (GUI).
  • GUI graphic user interface
  • the operating parts 111 are arranged in, for example, a matrix in plan view.
  • FIGS. 1 to 3 illustrate, as an example, 30 pieces of the operating parts 111 in 5 rows ⁇ 6 columns.
  • the 30 pieces of the operating parts 111 are indicated by (row, column) such as (1, 1) to (5, 6).
  • the 5 rows are elongated in the X direction, parallel to the Y direction; the 6 columns are elongated in the Y direction, parallel with the X direction.
  • the electronic apparatus 100 may include operating parts displayed on the operating surface 105 , for example, in a printed manner.
  • the electrostatic sensor 120 is overlaid on the display device 110 .
  • the electrostatic sensor 120 includes 30 pieces of sensor electrodes 121 in total, in an arrangement of 6 pieces in the X direction by 5 pieces in the Y direction.
  • the 30 pieces of the sensor electrodes 121 are individually coupled to the control device 130 with 30 lines of wires 122 .
  • FIG. 4 seems as if a single wire 122 exists, but in practice, the 30 pieces of the sensor electrodes 121 are individually coupled to the control device 130 by the 30 lines of wires 122 .
  • the electrostatic sensor 120 configured as described above may be formed by, for example, patterning the sensor electrodes 121 and the wires 122 at a transparent conductive film made of indium tin oxide (ITO) or other material on a surface of transparent glass.
  • ITO indium tin oxide
  • the capacitance of the electrostatic sensor 120 is inputted to the control device 130 .
  • This description indicates, as an example, a configuration in which the 30 pieces of the operating parts 111 are superposed on the 30 pieces of the sensor electrodes 121 .
  • the relationships of rows and columns of the 30 pieces of the sensor electrodes 121 are the same as the operating parts 111 .
  • the 30 pieces of the sensor electrodes 121 are arranged in a matrix with 5 rows and 6 columns; and in the same manner as the 30 pieces of the operating parts 111 , the 30 pieces of the sensor electrodes 121 are indicated by (row, column) such as (1, 1) to (5, 6).
  • the location of each of the 30 pieces of the sensor electrodes 121 is indicated by a row number and a column number.
  • each sensor electrode 121 is represented by (i, j), in which row is represented by i, and column is represented by j.
  • a row i is indicated by 1 to 5
  • a column j is indicated by 1 to 6.
  • the sensor electrodes 121 in the row 1 are arranged along the front end in the +Y direction
  • the sensor electrodes 121 in the row 5 are arranged along the front end in the ⁇ Y direction
  • the sensor electrodes 121 in the column 1 are arranged along the front end in the ⁇ X direction
  • the sensor electrodes 121 in the column 6 are arranged along the front end in the +X direction.
  • a row next to the row i in the ⁇ Y direction is a row i+1, which is placed one row below the row i.
  • a row next to the row i in the +Y direction is a row i ⁇ 1, which is one row above the row i.
  • the sensor electrodes 121 when the sensor electrodes 121 ( i, j ) are not particularly distinguished from each other, the sensor electrodes are simply referred to as the sensor electrodes 121 .
  • the sensor electrodes 121 and the operating parts 111 are in one-to-one correspondence, but a single operating part 111 may correspond to a plurality of sensor electrodes 121 .
  • the control device 130 is implemented by a computer including, for example, a central processing unit (CPU), a random-access memory (RAM), a read-only memory (ROM), an input/output interface, and an internal bus.
  • CPU central processing unit
  • RAM random-access memory
  • ROM read-only memory
  • input/output interface an internal bus.
  • the control device 130 includes a main control unit 131 , an analog-to-digital (AD) conversion unit 132 , a counter 133 , a determination unit 134 , an operation control unit 135 , a display control unit 136 , and a memory 137 .
  • the main control unit 131 , the AD conversion unit 132 , the counter 133 , the determination unit 134 , the operation control unit 135 , and the display control unit 136 are illustrated as functional blocks that represent functions implemented by the control device 130 running a program.
  • the memory 137 is illustrated as a function implemented by a memory of the control device 130 .
  • the main control unit 131 is a processing unit for providing overall control on operations of the control device 130 ; the main control unit 131 performs operations except the operations performed by the AD conversion unit 132 , the counter 133 , the determination unit 134 , the operation control unit 135 , and the display control unit 136 . For example, the main control unit 131 scans the 30 pieces of the sensor electrodes 121 .
  • the AD conversion unit 132 converts an output of the electrostatic sensor 120 into a digital value.
  • the output of the AD conversion unit 132 is a detected value of the capacitance between each sensor electrode 121 of the electrostatic sensor 120 and a surrounding conductor.
  • the counter 133 counts a difference value between the output of the AD conversion unit 132 and a reference value and outputs the difference value.
  • the difference value is a count value indicating the amount of change from the reference value to the output. In the following description, the difference value is indicated by AAD.
  • the output of the AD conversion unit 132 indicates the capacitance between each sensor electrode 121 of the electrostatic sensor 120 and a surrounding conductor.
  • the reference value indicates the capacitance between each sensor electrode 121 and a surrounding conductor when no finger exists in the vicinity of the sensor electrode 121 .
  • the difference value ⁇ AD indicates the capacitance between each sensor electrode 121 and a finger.
  • the difference value ⁇ AD is detected on each sensor electrode 121 , and thus, 30 kinds of the difference value ⁇ AD are obtained from the output of the electrostatic sensor 120 .
  • the difference value obtained based on the capacitance of the sensor electrode 121 ( i, j ) is referred to as a difference value ⁇ AD(i, j).
  • the AD conversion unit 132 converts the capacitance of the sensor electrode 121 ( i, j ) into a digital value
  • the counter 133 counts the amount of change from the reference value to the output of the AD conversion unit 132 and outputs the difference value ⁇ AD(i, j) of each of the 30 pieces of the sensor electrodes 121 ( i, j ).
  • the difference values ⁇ AD(i, j) are not particularly distinguished from each other, the difference values are simply referred to as the difference values ⁇ AD.
  • the determination unit 134 identifies the location of the fingertip FT, the location of the palm P, and the location at which the fingertip FT and the palm P are not present. In the electronic apparatus 100 and the contactless input device 100 A, the determination unit 134 identifies the location of the top of the fingertip FT as the location of an operational input by the user. The method of determination performed by the determination unit 134 will be described later with reference to a flowchart.
  • the operation control unit 135 controls an operation of the electronic apparatus 100 in accordance with the location of an operational input determined by the determination unit 134 .
  • the display control unit 136 controls a display operation of the display device 110 in accordance with the location of an operational input determined by the determination unit 134 .
  • the memory 137 stores, for example, programs and data that are used by the main control unit 131 , the determination unit 134 , the operation control unit 135 , and the display control unit 136 to perform operations.
  • the memory 137 stores data representing the number of rows and the number of columns of the sensor electrodes 121 .
  • FIG. 5 illustrates an example of a distribution of the difference value ⁇ AD and a distribution of its reciprocal with respect to the relationships between the hand H and electrode surfaces of the electrostatic sensor 120 .
  • the electrode surfaces are surfaces of the 30 pieces of the sensor electrodes 121 .
  • the reciprocal is a multiplicative inverses of the difference value ⁇ AD.
  • the left side of FIG. 5 illustrates the case in which the fingertip FT and the palm P are close to the electrode surfaces
  • the right side of FIG. 5 illustrates the case in which the fingertip FT and the palm P are slightly farther from the electrode surfaces than the case in the left side. Comparison between these cases indicates that the difference values ⁇ AD in the left-side case in which the fingertip FT and the palm P are close to the electrode surfaces are larger than the difference values ⁇ AD in the right-side case in which the fingertip FT and the palm P are slightly far from the electrode surfaces.
  • the difference value ⁇ AD indicates the amount of change in capacitance caused by a hand, detected by the electrostatic sensor 120 , and AAD is inversely proportional to the distance between the electrode surfaces, and the fingertip FT or the palm P. Because AAD is inversely proportional to the distance, even when the hand H is in the same pose, different distances between the electrode surfaces, and the fingertip FT or the palm P draw different waveforms representing the distribution of the difference value ⁇ AD.
  • both the left side and the right side illustrate a pose with the fingertip FT of the index finger pointing forward.
  • the waveform representing the distribution of the difference value ⁇ AD is less affected by the differences in the distance between the electrode surfaces, and the fingertip FT or the palm P, and relatively similar waveforms are drawn. This is because the reciprocal of the difference value ⁇ AD is a function of the distance between the electrode surfaces, and the fingertip FT or the palm P.
  • FIG. 6 illustrates an example of distributions of reciprocal in the length direction and the width direction of the hand H.
  • the length direction of the hand H is the direction from the wrist to the palm P to the fingertip FT.
  • the width direction of the hand H is the direction perpendicular to the length direction of the hand H in plan view, that is, the direction from the thumb to the little finger.
  • the distribution (A) of reciprocal in the length direction of the hand H gently curves in the section in which the hand H is present; by contrast, as indicated by an arrow FT, the reciprocal greatly changes at the boundary between the part including the fingertip FT and the part beyond the fingertip FT, that is, the part not including the hand H.
  • the location of the fingertip FT in the length direction can be determined based on the distribution of reciprocal.
  • the reciprocal draws a V shape with a decrease in the section including the fingertip FT.
  • the location of the fingertip FT in the width direction can be determined based on the distribution of reciprocal.
  • a quadratic curve can be fitted to the curve at which the reciprocal draws a V shape.
  • the reciprocal is smaller in the section including the palm P than in both sides not including the palm P; the reciprocal is maintained at relatively small values throughout a section wider than the fingertip FT in the width direction.
  • the location of the palm P in the width direction can be determined.
  • a quadratic curve or circle gentler than the fingertip FT can be fitted to the curve corresponding to the shape of the palm P. It can be assumed that the second-order coefficient greatly differs between the quadratic curve fitting the fingertip FT and the quadratic curve fitting the palm P.
  • FIG. 7 illustrates an example of a second-order coefficient of a quadratic curve fitting the fingertip FT and a second-order coefficient of a quadratic curve fitting the palm P.
  • the upper part of FIG. 7 provides a front view of the hand H with the index finger pointing forward.
  • a quadratic curve 10 FT indicated by a dashed line fits the fingertip FT.
  • a quadratic curve 101 ) indicated by a solid line fits the palm P.
  • the quadratic curves 10 FT and 10 P respectively fitting the fingertip FT and the palm P can be obtained.
  • the quadratic curves 10 FT and 10 P can be calculated by curve fitting.
  • the second-order coefficient a of the quadratic curve fitted by curve fitting greatly differs between the fingertip FT and the palm P.
  • the second-order coefficient a of the quadratic curve fitting the fingertip FT is 8
  • the second-order coefficient a of the quadratic curve fitting the palm P is 1.
  • the second-order coefficient a of the quadratic curve obtained by performing curve fitting on the distribution of reciprocal of the difference value ⁇ AD is, the sharper the V shape of the quadratic curve is.
  • the second-order coefficient a is calculated as the sharpness of a quadratic curve; based on the sharpness, the location of the fingertip FT is identified. The sharpness indicates the degree to which the V shape of a quadratic curve sharpens.
  • FIGS. 8 to 13 are flowcharts illustrating a process of identifying the location of the fingertip FT. This process is performed by the determination unit 134 .
  • FIG. 8 illustrates a main flow
  • FIGS. 9 to 13 respectively illustrate flows of subroutine operations in steps S 3 to S 7 in FIG. 8 .
  • the following description is based on an exemplary rule in which, as illustrated in FIG. 3 , an operational input is performed with the hand H held over the electronic apparatus 100 above the operating surface 105 in an orientation from the edge extending in the X direction at the ⁇ Y direction side of the electronic apparatus 100 toward the +Y direction side.
  • the determination unit 134 reads the number of rows and the number of columns of the sensor electrodes 121 from the memory 137 (step S 1 ).
  • “AllRows” indicates the number of rows of the sensor electrodes 121
  • “AllColumns” indicates the number of columns of the sensor electrodes 121 .
  • AllRows indicates 5 rows
  • AllColumns indicates 6 columns.
  • the determination unit 134 obtains the difference values ⁇ AD(1, 1) to ⁇ AD(AllRows, AllColumns) of all the sensor electrodes 121 (step S 2 ).
  • the difference values ⁇ AD(1, 1) to ⁇ AD(AllRows, AllColumns) of all the sensor electrodes 121 are obtained.
  • the determination unit 134 calls a subroutine “sub TransformToReciprocal” and transforms all the difference values ⁇ AD(1, 1) to ⁇ AD(AllRows, AllColumns) into reciprocals (step S 3 ).
  • the determination unit 134 calls a subroutine “sub DetermineMinimumValue” and performs an operation of determining a minimum reciprocal value on the respective rows and identifying a column indicating the minimum reciprocal value (step S 4 ).
  • the determination unit 134 calls a subroutine “sub IdentifyRowToExclude” and performs an operation of identifying a row to be excluded (step S 5 ).
  • the row to be excluded is a row in which the hand H is not present. By identifying the row without the hand and excluding the row, the target is narrowed down to rows in which the hand is present.
  • the determination unit 134 calls a subroutine “sub CalculateSharpness” and performs an operation of calculating the sharpness at the row with the hand (step S 6 ).
  • the determination unit 134 calls a subroutine “sub IdentifyFingertip” and performs an operation of identifying a row with the fingertip FT based on the sharpness calculated on the individual rows with the hand in step S 6 (step S 7 ).
  • the determination unit 134 outputs coordinates indicating the location of the top of the fingertip FT based on the row with the fingertip identified in the step S 7 (step S 8 ).
  • row indicates a row number of the row with the fingertip FT
  • column(i) indicates a column number with a smallest reciprocal in a row i
  • columnumn(row) indicates a column number with a smallest reciprocal in a row “row”.
  • the determination unit 134 sequentially selects the column j and calculates a reciprocal “Reciprocal(i, j)” of the difference value ⁇ AD(i, j) in relation to the selected the row i (step S 13 ).
  • the determination unit 134 stores in the memory 137 the calculation result in step S 13 as array data including elements of the row number i and the column number j.
  • the determination unit 134 repeats the loop processing of steps S 12 to S 14 until a reciprocal of the difference value ⁇ AD(i, j) is calculated on all columns j in relation to the selected row i (step S 14 ). By repeatedly performing the operations in steps S 12 to S 14 in relation to the selected row i, the determination unit 134 calculates a reciprocal of the difference value ⁇ AD(i, j) on all the columns j in the selected row i.
  • the determination unit 134 repeats loop processing of steps S 11 to S 15 until a reciprocal of the difference value ⁇ AD(i, j) is calculated on all the columns j in all the rows i. By repeatedly performing the operations in steps S 11 to S 15 , while consecutively selecting a row from all the rows, the determination unit 134 calculate a reciprocal of the difference value ⁇ AD on all the columns in the row.
  • the following describes an operation of determining a minimum reciprocal value among all rows, performed according to the subroutine “sub DetermineMinimumValue” in step S 4 in FIG. 8 , with reference to FIG. 10 .
  • the determination unit 134 sets an initial value of a minimum reciprocal value “Minimum(i)” in the selected row i at a proximity determination threshold (step S 22 ). As the result of repeating the operations in steps S 23 to S 27 , the minimum reciprocal value Minimum(i) in the selected row i indicates a minimum value of the reciprocals calculated on all the columns j in the selected row i.
  • the proximity determination threshold is a threshold for determining whether the fingertip FT is close to the operating surface 105 to perform an operational input.
  • the proximity determination threshold is assigned to the minimum reciprocal value Minimum(i) in the row i.
  • the row i to which the proximity determination threshold is assigned is designated as a row to be excluded as will be described later.
  • the initial value of the minimum reciprocal value Minimum(i) can be set to a value equal to or greater than the proximity determination threshold. For example, due to the limitations of programming language, a largest value assignable to the minimum value Minimum(i) may be set as the initial value of the minimum reciprocal value Minimum(i). In this case, a minimum reciprocal value in the row i is assigned to Minimum(i) in every operation.
  • the determination unit 134 performs loop processing for identifying a minimum reciprocal value among all the columns j in the selected row i and further identifying the sensor electrode 121 ( i, j ) yielding the minimum value (steps S 23 to S 27 ).
  • the determination unit 134 determines whether the reciprocal Reciprocal(i, j) is smaller than the minimum value Minimum(i) (step S 24 ).
  • the determination unit 134 assigns the reciprocal Reciprocal(i, j) to the minimum value Minimum(i) (step S 25 ).
  • the purpose of this operation is to update the minimum value Minimum(i) in the row i.
  • the determination unit 134 stores in the memory 137 the minimum value Minimum(i) updated in step S 25 as array data including an element of the row number i.
  • the determination unit 134 stores the value obtained in step S 26 in the memory 137 .
  • the determination unit 134 performs the loop processing of steps S 23 to S 27 to identify a minimum reciprocal value and the sensor electrode 121 ( i, j ) yielding the minimum value in relation to the selected row i.
  • the determination unit 134 repeats loop processing of steps S 21 to S 28 until a minimum reciprocal value and the sensor electrode 121 ( i, j ) yielding the minimum value are identified on all rows. As a result, a minimum reciprocal value and the sensor electrode 121 ( i, j ) yielding the minimum value are identified on all rows.
  • the row i+1 placed one row below the row i is a row next to the row i in the ⁇ Y direction.
  • the row i is excluded when the minimum reciprocal value in the row i is double or greater than the minimum reciprocal value in the row i+1 placed one row below.
  • the capacitance increases.
  • simply comparing the reciprocal of capacitance to the threshold may result in misrecognition of a space as a finger.
  • the capacitance of the sensor electrode 121 ( i, j ) is greatly different from the capacitance of the adjacent sensor electrode 121 ( i +1, j).
  • the minimum reciprocal value in a row under the top of the fingertip FT is relatively small; in contrast, the minimum reciprocal value in a row placed one row above the row under the top of the fingertip FT is relatively large because the top of the fingertip FT does not overlap the row. As such, the minimum reciprocal value greatly differs between a row under the top of the fingertip FT and one row above.
  • the configuration is made such that the location at which the minimum reciprocal value is double or greater is deemed to be the location of a row placed one row above the top of the fingertip FT; when the minimum reciprocal value in the row i is double or greater than the minimum reciprocal value in the row i+1 placed one row below, the row i is excluded.
  • the top of the fingertip FT overlaps the row i+1 but not the row i, the row i is excluded.
  • the determination unit 134 determines, with respect to the selected row i, whether the minimum reciprocal value Minimum(i) in the row i is double or greater than a minimum reciprocal value Minimum(i+1) in the row i+1 placed one row below (step S 32 ).
  • the determination unit 134 assigns “exclude” to Except1(i) (step S 33 A).
  • the row i of Except1(i) assigned “exclude” is not targeted for the calculation of sharpness described later.
  • the determination unit 134 stores in the memory 137 Except1(i) as array data including an element of the row number i.
  • the determination unit 134 assigns “target” to Except1(i) (step S 33 B).
  • the row i of Except1(i) assigned “target” can be targeted for the calculation of sharpness described later.
  • the determination unit 134 stores in the memory 137 Except1(i) as array data including an element of the row number i.
  • the determination unit 134 repeats the loop processing of steps S 31 to S 34 until all the rows i are subjected to the operations for storing the row i as a row to be excluded when the minimum reciprocal value in the row i is double or greater than the minimum reciprocal value in the row i+1 placed one row below.
  • the row i ⁇ 1 placed one row above the row i is a row next to the row i in the +Y direction.
  • the row i is excluded when the minimum reciprocal value in the row i is double or greater than the minimum reciprocal value in the row i ⁇ 1 placed one row above.
  • the reason for excluding the row i when the minimum reciprocal value in the row i is double or greater than the minimum reciprocal value in the row i ⁇ 1 is that, when the fingertip FT is present across the row i and the row i ⁇ 1 placed one row above, the minimum reciprocal value in the row i cannot be double or greater than the minimum reciprocal value in the row i ⁇ 1 placed one row above, and also for the purpose of matching the configuration with the loop processing of steps S 31 to S 34 .
  • the determination unit 134 determines, with respect to the selected row i, whether the minimum reciprocal value Minimum(i) in the row i is double or greater than a minimum reciprocal value Minimum(i ⁇ 1) in the row i ⁇ 1 placed one row above (step S 37 ).
  • the determination unit 134 When determining that the minimum value Minimum(i) is double or greater than the minimum value Minimum (i ⁇ 1) (Yes in step S 37 ), the determination unit 134 assigns “exclude” to Except2(i) (step S 38 A).
  • the row i of Except2(i) assigned “exclude” is not targeted for the calculation of sharpness described later.
  • the determination unit 134 stores in the memory 137 Except2(i) as array data including an element of the row number i.
  • the determination unit 134 assigns “target” to Except2(i) (step S 38 B).
  • the row i of Except2(i) assigned “target” can be targeted for the calculation of sharpness described later.
  • the determination unit 134 stores in the memory 137 Except2(i) as array data including an element of the row number i.
  • the determination unit 134 repeats the loop processing of steps S 36 to S 39 until all the rows i are subjected to the operations for storing the row i as a row to be excluded when the minimum reciprocal value in the row i is double or greater than the minimum reciprocal value in the row i ⁇ 1 placed one row above.
  • the purpose of excluding the row i when the minimum reciprocal value in the row i is equal to or greater than the proximity determination threshold is to determine whether the fingertip FT is present in the row i.
  • the determination unit 134 determines, with respect to the selected row i, whether the minimum reciprocal value Minimum(i) in the row i is equal to or greater than the proximity determination threshold (step S 42 ).
  • the determination unit 134 assigns “exclude” to Except3(i) (step S 43 A).
  • the determination unit 134 stores in the memory 137 Except3(i) as array data including an element of the row number i.
  • Minimum(i) the proximity determination threshold is set.
  • Except3(i) of the row i with a minimum reciprocal value equal to or greater than the proximity determination threshold is assigned “exclude”.
  • the determination unit 134 assigns “target” to Except3(i) (step S 43 B).
  • the row i of Except3(i) assigned “target” can be targeted for the calculation of sharpness described later.
  • the determination unit 134 stores in the memory 137 Except3(i) as array data including an element of the row number i.
  • the determination unit 134 repeats the loop processing of steps S 41 to S 44 until all the rows i are subjected to the operations for excluding the row i when the minimum reciprocal value in the row i is equal to or greater than the proximity determination threshold.
  • the determination unit 134 assigns “target” to Except(i) (step S 47 A).
  • the row i of Except(i) assigned “target” is targeted for the calculation of sharpness described later.
  • the row i of Except(i) assigned “target” includes the sensor electrode 121 ( i, j ) facing the hand.
  • the determination unit 134 stores in the memory 137 Except(i) as array data including an element of the row number i. After completing the operation in step S 47 A, the determination unit 134 proceeds to step S 48 .
  • the determination unit 134 determines No in step S 46 .
  • the determination unit 134 assigns “exclude” to Except(i) (step S 47 B).
  • the row i of Except(i) assigned “exclude” is not targeted for the calculation of sharpness described later.
  • the row i of Except(i) assigned “exclude” does not include the sensor electrode 121 ( i, j ) facing the hand. This means that the sensor electrode 121 ( i, j ) in the row i of Except(i) assigned “exclude” faces space.
  • the determination unit 134 stores in the memory 137 Except(i) as array data including an element of the row number i.
  • the determination unit 134 repeats the loop processing of steps S 45 to S 48 until all the rows i are subjected to the operations for determining a row to be excluded. In the manner described above, the row i to be excluded is determined among all the rows i.
  • FIG. 12 is a flowchart illustrating an operation of calculating sharpness, performed according to the subroutine “sub CalculateSharpness”.
  • the determination unit 134 assigns Column(i) to j (step S 55 A). This means that when Column(i) is a column other than the end columns, Column(i) is assigned to j. Column(i) indicates a column yielding the minimum value Minimum(i) in the row i (refer to step S 26 ).
  • the determination unit 134 calculates a sharpness Apex(i) (step S 56 ).
  • step S 52 A the determination unit 134 proceeds to step S 57 .
  • the purpose of this operation is that, because the column Column(i) yielding the minimum value Minimum(i) in the row i is a column along the front end in the ⁇ X direction (the column 1), the column 2 is designated as the column j in the middle of three columns used to calculate sharpness; as a result, three values of reciprocal of the columns 1 to 3 are used to calculate sharpness.
  • step S 53 A the determination unit 134 proceeds to step S 56 and calculates sharpness.
  • the purpose of this operation is that, because the column Column(i) yielding the minimum value Minimum(i) in the row i is a column along the front end in the +X direction (the column 6 indicated by AllColumns), AllColumns ⁇ 1 (the column 5) is designated as the column j in the middle of three columns used to calculate sharpness; as a result, three values of reciprocal of the columns 4 to 6 are used to calculate sharpness.
  • step S 55 B the determination unit 134 proceeds to step S 56 and calculates sharpness.
  • the determination unit 134 repeats the loop processing of steps S 51 to S 57 until all the rows i are subjected to the operations for calculating sharpness.
  • the following describes an operation of identifying the location of the fingertip FT, performed according to the subroutine “sub IdentifyFingertip” in step S 7 in FIG. 8 , with reference to FIG. 13 .
  • the location of the column j yielding a maximum sharpness MaxApex that is a maximum value of sharpness, indicated by Column(i) in the row i, is identified as the location of the fingertip FT.
  • Column(i) indicates a column yielding a smallest reciprocal of the reciprocals calculated on the individual rows (refer to step S 26 ).
  • the determination unit 134 sets the initial value of the maximum sharpness MaxApex to 0 (step S 61 ).
  • the determination unit 134 determines whether the sharpness Apex(i) is greater than the maximum sharpness MaxApex with respect to the selected row i (step S 63 ). By repeating the operation in step S 63 , the maximum sharpness MaxApex is updated, and consequently, the row i yielding the maximum sharpness MaxApex is identified.
  • the determination unit 134 updates the maximum sharpness MaxApex to the sharpness Apex(i) (step S 64 ).
  • the determination unit 134 assigns the row i of the sharpness Apex(i) indicating the maximum sharpness MaxApex to a variable “row” (step S 65 ).
  • the determination unit 134 performs the loop processing of steps S 61 to S 66 on all the rows i, and as a result, a row number indicating the maximum sharpness is assigned to “row”.
  • step S 8 in the main loop in FIG. 8 described above is performed.
  • the row number of the row under the top of the finger is assigned to “row”.
  • a column number yielding the minimum reciprocal in each row is assigned to “Column(i)”.
  • “row, column(row)” is outputted as coordinates at the top of the finger (step S 8 ).
  • FIGS. 14 A, 14 B, and 14 C indicate a distribution of the difference value ⁇ AD, a distribution of reciprocal, and the columns j yielding the minimum reciprocal values Minimum(i), indicated by Column(i).
  • FIG. 14 A illustrates a distribution of the difference value ⁇ AD calculated on the sensor electrodes 121 with 5 rows and 6 columns. It is assumed that an operational input is performed on the sensor electrode 121 ( 2 , 3 ) at the row 2 in the column 3 as illustrated in FIGS. 2 and 3 .
  • FIG. 14 B indicates values obtained by multiplying reciprocals of the difference values ⁇ AD indicated in FIG. 14 A by 1000.
  • FIG. 14 C illustrates correspondence between the minimum value Minimum(i) of the values obtained by multiplying reciprocals of the difference values ⁇ AD by 1000 in individual rows and a column number Column(i) including an electrode yielding the minimum value Minimum(i).
  • the proximity determination threshold specifically 5 is assigned to a minimum value Minimum(1). Because the values obtained by multiplying reciprocals of the difference values ⁇ AD in the row 1 by 1000 all exceed the proximity determination threshold, which is 5, the proximity determination threshold (5), which is previously set as an initial value of the minimum value Minimum(1), is assigned as a minimum value.
  • FIGS. 15 A, 15 B, 15 C, and 15 D indicate targets for calculation of sharpness, the minimum values Minimum(i), results of calculation of sharpness, and a largest sharpness and coordinates.
  • FIG. 15 A indicates whether the individual rows are targeted for calculation of sharpness as candidates for the location of the fingertip, determined based on the quantity of the minimum value Minimum(i) and results of comparison with the minimum values Minimum (i ⁇ 1) and Minimum(i+1) of adjacent rows.
  • “equal to or smaller than proximity determination threshold” is not satisfied (FALSE), and thus, the row 1 is not targeted (FALSE is assigned to target).
  • FIG. 15 B indicates values obtained by multiplying by 1000 reciprocals of the minimum value Minimum(i) in the individual rows and the difference values ⁇ AD on its left and right sides. Because the row 1 is not targeted for calculation of sharpness, “-” is indicated in FIG. 15 B .
  • FIG. 15 C indicates results of calculation of sharpness in the individual rows.
  • second-order coefficient of quadratic function is used as sharpness.
  • the row not targeted for calculation of sharpness is assigned 0.
  • FIG. 15 D indicates a maximum sharpness and coordinates indicating the maximum sharpness.
  • second-order coefficient of quadratic function is used as sharpness.
  • the largest value in FIG. 15 C is 0.73, and thus, the maximum second-order coefficient is 0.73.
  • the maximum second-order coefficient (0.73) is indicated in the row 2 in FIG. 15 C , and as a result, the row of maximum second-order coefficient is the row 2.
  • a column Column(2) with a minimum value in the row 2 is, according to FIG. 14 C , the column 3. Therefore, the location of the fingertip is at the row 2 in the column 3.
  • the location of the fingertip FT can be identified. Accordingly, it is possible to provide the contactless input device 100 A that can accurately identify the location of the fingertip FT spaced apart from the sensor electrodes 121 . This means that it is possible to provide the contactless input device 100 A that can determine whether a contactless operation is performed and where the operation is performed.
  • FIG. 16 is a flowchart illustrating an operation of calculating sharpness, performed according to a subroutine “sub CalculateSharpness” of a first modification.
  • the operation in step S 56 is different from the operation in step S 56 illustrated in FIG. 12 .
  • the following describes the difference to the operation illustrated in FIG. 12 .
  • the determination unit 134 calculates the curvature of a circle passing through the following three points as the sharpness Apex(i) (step S 56 ).
  • the three points are indicated by (j ⁇ 1, Reciprocal(i, j ⁇ 1)), (j, Reciprocal(i, j)), and (j+1,Reciprocal(i, j+1)).
  • FIG. 17 illustrates the fingertip FT in relation to the xz coordinates.
  • Coordinates (xp, zp) at the center of a circle passing through the three points are given by the following expressions (1) and (2).
  • FIG. 18 is a flowchart illustrating an operation of calculating sharpness, performed according to a subroutine “sub CalculateSharpness” of a second modification.
  • the operation in step S 56 is different from the operation in step S 56 illustrated in FIG. 12 .
  • the following describes the difference to the operation illustrated in FIG. 12 .
  • the determination unit 134 calculates a quadratic curve that approximates adjacent five points in the row i by curve fitting according to the least-squares method and further calculates a second-order coefficient of the curve as the sharpness Apex(i) (step S 56 ).
  • the adjacent five points in the row i are indicated by (j ⁇ 2, Reciprocal(i, j ⁇ 2)), (j ⁇ 1, Reciprocal(i, j ⁇ 1)), (j, Reciprocal(i, j)), (j+1, Reciprocal(i, j+1)), and (j+2, Reciprocal(i, j+2)).
  • FIG. 19 is a flowchart illustrating an operation of calculating sharpness, performed according to a subroutine “sub CalculateSharpness” of a third modification.
  • the operation in step S 56 is different from the operation in step S 56 illustrated in FIG. 12 .
  • the following describes the difference to the operation illustrated in FIG. 12 .
  • the determination unit 134 calculates a circumference that approximates adjacent five points in the row i by curve fitting with the least-squares method and further calculates a curvature of the curve as the sharpness Apex(i) (step S 56 ).
  • the adjacent five points in the row i are indicated by (j ⁇ 2, Reciprocal(i, j ⁇ 2)), (j ⁇ 1, Reciprocal(i, j ⁇ 1)), (j, Reciprocal(i, j)), (j+1, Reciprocal(i, j+1)), and (j+2, Reciprocal(i, j+2)).
  • FIGS. 20 A and 20 B provide a flowchart illustrating an operation of identifying a fingertip, performed according to a subroutine “sub IdentifyFingertip” of a fourth modification.
  • the flow illustrated in FIG. 13 can be replaced with the operation illustrated in FIGS. 20 A and 20 B .
  • the determination unit 134 determines whether the sharpness Apex(i) calculated in step S 6 is equal to or greater than a palm threshold (step S 72 ).
  • the palm threshold is a value determining whether the sharpness Apex(i) is based on a finger or the palm P and also a minimum value indicated when the sharpness Apex(i) is based on the fingertip FT.
  • the determination unit 134 determines that Palm(i) is a finger (step S 73 A).
  • the determination unit 134 determines whether the sharpness Apex(i) is a positive value (step S 72 A). The purpose of this operation is to determine whether there is the palm P or there is space instead of the palm P.
  • step S 72 A When determining that the sharpness Apex(i) is a positive value (Yes in step S 72 A), the determination unit 134 determines that Palm(i) is a palm (step S 73 B).
  • step S 72 A when determining that the sharpness Apex(i) is not a positive value (No in step S 72 A), the determination unit 134 determines that Palm(i) is space (step S 73 C). In step S 52 A in FIG. 12 , when space is determined, 0 is inputted to Apex(i).
  • the determination unit 134 performs the loop processing of steps S 71 to S 74 on all the rows i, and as a result, a row number indicating the palm P is assigned to Palm(i).
  • the finger extended from the palm P on the lower side denotes the state in which the palm P is positioned on the front side in the ⁇ Y direction with a finger pointing in the +Y direction.
  • the determination unit 134 determines whether Palm(i) is a finger, and Palm(i+1) is the palm P (step S 76 ). This operation determines whether a finger is present over the row i, and the palm P is present over the subsequent row i+1 in the ⁇ Y direction.
  • step S 76 When determining that Palm(i) is a finger, and Palm(i+1) is the palm P (Yes in step S 76 ), the determination unit 134 proceeds to step S 78 .
  • the determination unit 134 ends the loop processing “DETERMINE FINGER EXTENDED FROM PALM ON LOWER SIDE” (steps S 75 to S 77 ) and proceeds to step S 83 .
  • the determination unit 134 determines whether the finger is a finger extended from the palm P on the lower side.
  • the determination unit 134 determines whether Palm(i) is a finger, and Palm(i ⁇ 1) is space (step S 79 ). This operation determines whether a finger is present over the row i, and space is present over the subsequent row i ⁇ 1 in the +Y direction.
  • step S 79 When determining that Palm(i) is a finger, and Palm(i ⁇ 1) is space (Yes in step S 79 ), the determination unit 134 proceeds to step S 82 .
  • the determination unit 134 ends the loop processing “DETERMINE FINGERTIP” (steps S 78 to S 80 ) and proceeds to step S 81 .
  • the determination unit 134 assigns 1 to i (step S 81 ).
  • the fingertip FT is deemed to be present over the end of the electrostatic sensor 120 . This means that when there is no space on the front side in the +Y direction, the fingertip FT is deemed to be present over the row 1.
  • the determination unit 134 proceeds to step S 82 .
  • the determination unit 134 ends the operation of identifying the location of the fingertip according to the subroutine “sub IdentifyFingertip” illustrated in FIGS. 20 A and 20 B (END) and performs the operation in step S 8 of the main loop described above.
  • step S 82 the determination unit 134 assigns the row i satisfying the condition that Palm(i) is a finger, and Palm(i ⁇ 1) is space (Yes in step S 79 ) to the variable “row” (step S 82 ).
  • the fingertip FT is positioned over the row i determined to satisfy the condition that Palm(i) is a finger, and Palm(i ⁇ 1) is space (Yes in step S 79 ).
  • the determination unit 134 ends the operation of identifying the location of the fingertip according to the subroutine “sub IdentifyFingertip” illustrated in FIGS. 20 A and 20 B (END).
  • the finger extended from the palm P on the upper side denotes the state in which the palm P is positioned on the front side in the +Y direction with a finger pointing in the ⁇ Y direction.
  • the determination unit 134 determines whether Palm(i) is a finger, and Palm(i ⁇ 1) is the palm P (step S 84 ). This operation determines whether a finger is present over the row i, and the palm P is present over the subsequent row i ⁇ 1 in the +Y direction.
  • step S 84 When determining that Palm(i) is a finger, and Palm(i ⁇ 1) is the palm P (Yes in step S 84 ), the determination unit 134 proceeds to step S 86 .
  • the determination unit 134 ends the loop processing “DETERMINE FINGER EXTENDED FROM PALM ON UPPER SIDE” (steps S 83 to S 85 ) and proceeds to step S 90 .
  • the determination unit 134 proceeds to step S 90 .
  • the determination unit 134 determines whether the finger is a finger extended from the palm P on the upper side.
  • the determination unit 134 determines whether Palm(i) is a finger, and Palm(i+1) is space (step S 87 ). This operation determines whether a finger is present over the row i, and space is present over the subsequent row i+1 in the ⁇ Y direction.
  • step S 87 When determining that Palm(i) is a finger, and Palm(i+1) is space (Yes in step S 87 ), the determination unit 134 proceeds to step S 82 . In this case, the determination unit 134 assigns the row i satisfying the condition that Palm(i) is a finger, and Palm(i+1) is space (Yes in step S 87 ) to the variable “row” (step S 82 ). The fingertip FT is positioned over the row i determined to satisfy the condition that Palm(i) is a finger, and Palm(i+1) is space (Yes in step S 87 ).
  • the determination unit 134 ends the loop processing “DETERMINE FINGERTIP” and proceeds to step S 89 .
  • the determination unit 134 assigns Allrows to i (step S 89 ).
  • the fingertip FT is deemed to be present over the end of the electrostatic sensor 120 . This means that when there is no space on the front side in the ⁇ Y direction, the fingertip FT is deemed to be present over the row Allrows along an end of the electrostatic sensor 120 .
  • the determination unit 134 sets the initial value of the maximum sharpness MaxApex to 0 (step S 90 ).
  • the determination unit 134 determines whether the sharpness Apex(i) is greater than the maximum sharpness MaxApex with respect to the selected row i (step S 92 ). By repeating the operations in steps S 91 to S 95 , the maximum sharpness MaxApex is updated, and consequently, the row i yielding the maximum sharpness MaxApex is identified.
  • the determination unit 134 updates the maximum sharpness MaxApex to the sharpness Apex(i) (step S 93 ).
  • the determination unit 134 assigns the row i of the sharpness Apex(i) indicating the maximum sharpness MaxApex to a variable “row” (step S 94 ).
  • the determination unit 134 performs the loop processing of steps S 91 to S 95 on all the rows i, and as a result, a row number indicating the maximum sharpness is assigned to “row” (step S 95 ).
  • the determination unit 134 After completing the loop processing of steps S 91 to S 95 , the determination unit 134 performs the operation in step S 8 in the main loop in FIG. 8 described above.
  • FIGS. 21 to 23 are flowcharts illustrating a process of identifying the location of the fingertip FT according to the fifth modification. This process is performed by the determination unit 134 .
  • FIG. 21 illustrates a main flow
  • FIGS. 22 and 23 respectively illustrate flows of subroutine operations in steps S 103 and S 109 in FIG. 21 .
  • the subroutine operations “sub TransformToReciprocal”, “sub DetermineMinimumValue”, “sub IdentifyRowToExclude”, “sub CalculateSharpness”, and “sub IdentifyFingertip” in FIGS.
  • the determination unit 134 reads the number of rows and the number of columns of the sensor electrodes 121 from the memory 137 (step S 101 ).
  • “TemporalAllRows” indicates the number of rows of the sensor electrodes 121
  • “TemporalAllColumns” indicates the number of columns of the sensor electrodes 121 .
  • TemporalAllRows indicates 5 rows
  • TemporalAllColumns indicates 6 columns.
  • the determination unit 134 obtains the difference values ⁇ AD(1, 1) to ⁇ AD(AllRows, AllColumns) of all the sensor electrodes 121 and inputs the difference values to TemporalCapa(1, 1) to TemporalCapa(AllRows, AllColumns) (step S 102 ).
  • the difference values for example, 30 values of the difference values TemporalCapa(1, 1) to TemporalCapa(AllRows, AllColumns) about the 30 pieces of the sensor electrodes 121 are obtained.
  • the determination unit 134 calls a subroutine “sub SwitchVerticalAndHorizontal”; when it is necessary to switch the vertical and the horizontal, the determination unit 134 transposes the row i and the column j and inputs TemporalCapa(i, j) to Capacitance(j, i). When it is unnecessary to switch the vertical and the horizontal, the determination unit 134 inputs TemporalCapa(i, j) to Capacitance (step S 103 ).
  • the determination unit 134 calls the subroutine “sub TransformToReciprocal” and transforms all the difference values ⁇ AD(1, 1) to ⁇ AD(AllRows, AllColumns) into reciprocals (step S 104 ).
  • the determination unit 134 calls the subroutine “sub DetermineMinimumValue” and performs the operation of determining a minimum reciprocal value on the respective rows and identifying a column indicating the minimum reciprocal value (step S 105 ).
  • the determination unit 134 calls the subroutine “sub IdentifyRowToExclude” and performs the operation of identifying a row to be excluded (step S 106 ).
  • the row to be excluded is a row in which the hand H is not present. By identifying the row without the hand and excluding the row, the target is narrowed down to rows in which the hand is present.
  • the determination unit 134 calls the subroutine “sub CalculateSharpness” and performs the operation of calculating the sharpness at the row with the hand (step S 107 ).
  • the determination unit 134 calls a subroutine “sub IdentifyFingertip” and performs an operation of identifying a row with the fingertip FT based on the sharpness calculated on the individual rows with the hand in step S 107 (step S 108 ).
  • the determination unit 134 calls a subroutine “sub RestoreVerticalAndHorizontal” and performs an operation of restoring the vertical and the horizontal (step S 109 ).
  • the determination unit 134 outputs coordinates indicating the location of the top of the fingertip FT (step S 110 ).
  • row indicates a row number of the row with the fingertip FT.
  • column(i) indicates a column number with a smallest reciprocal in a row i, and thus, “column(row)” indicates a column number with a smallest reciprocal in a row “row”.
  • the determination unit 134 calculates an absolute value of covariance of BigX(i) and BigY(i) and an absolute value of variance of BigX(i) based on (BigX(1), BigY(1)), (BigX(2), BigY(2)), (BigX(3), BigY(3)), (BigX(4), BigY(4)), and (BigX(5), BigY(5)) (step S 112 ).
  • the determination unit 134 determines whether the “absolute value of covariance of BigX(i) and BigY(i)” is equal to or smaller than the “absolute value of variance of BigX(i)” (step S 113 ).
  • the determination unit 134 assigns TemporalCapa(i, j) to a capacitance “Capacitance(j, i)” at a location (j, i) (step S 117 A). In this manner, the column and the row are transposed.
  • the determination unit 134 repeats the loop processing of steps S 116 A to S 118 A until all the columns j are rearranged (step S 118 A).
  • the determination unit 134 repeats the loop processing of steps S 115 A to S 119 A until all the rows i are rearranged. Subsequently, the operation according to the subroutine “sub SwitchVerticalAndHorizontal” ends (END).
  • the determination unit 134 assigns TemporalCapa(i, j) to the capacitance Capacitance(i, j) at a location (i, j) (step S 117 B). In the case, the column and the row are not transposed.
  • the determination unit 134 repeats the loop processing of steps S 116 B to S 118 B until all the columns j are copied.
  • the determination unit 134 repeats the loop processing of steps S 115 B to S 119 B until all the rows i are copied. Subsequently, the operation according to the subroutine “sub SwitchVerticalAndHorizontal” ends (END).
  • the determination unit 134 determines whether the “absolute value of covariance of BigX(i) and BigY(i)” is equal to or smaller than the “absolute value of variance of BigX(i)” (step S 121 ).
  • the purpose of this operation is to determine whether to restore the vertical and the horizontal.
  • the branch condition in step S 121 is the same as step S 113 .
  • the determination unit 134 exchanges the value of the variable “row” with the value of a variable “column(row)”. To do this, firstly, the value of the variable “row” is stored in the variable j; secondly, column(row) is assigned to the variable “row”; and finally, the value of the variable j is assigned to the variable column(row) (step S 122 ). After completing the operation in step S 122 , the determination unit 134 ends the operation according to the subroutine “sub RestoreVerticalAndHorizontal” (END).
  • the determination unit 134 ends the operation according to the subroutine “sub RestoreVerticalAndHorizontal” (END).
  • FIGS. 24 A, 24 B, and 24 C indicate an order of the difference values ⁇ AD calculated on the sensor electrodes 121 with 5 rows and 6 columns, and an absolute value of variance of BigX(i) and an absolute value of covariance of BigX(i) and BigY(i).
  • FIG. 24 A indicates an order of the difference values ⁇ AD calculated on the sensor electrodes 121 with 5 rows and 6 columns. Of 30 values of the difference value ⁇ AD, the sensor electrode 121 ( 2 , 3 ) of the largest difference value is in the first place, and the sensor electrode 121 ( 1 , 6 ) of the smallest difference value is in the thirtieth place.
  • FIG. 24 B indicates an X coordinate (the column j) and a Y coordinate (the row i) of the individual sensor electrodes 121 in the first to fifth places of the difference values ⁇ AD presented in FIG. 24 A .
  • the sensor electrodes 121 in the first to fifth places are the sensor electrode 121 having the first largest to fifth largest values of capacitance.
  • FIG. 24 C indicates an “absolute value of variance of BigX(i)” ( 0 . 16 ) calculated based on the X coordinate of the individual sensor electrode 121 having the first largest to fifth largest values of capacitance and an “absolute value of covariance of BigX(i) and BigY(i) calculated based on the X and Y coordinates” ( 0 . 24 ).
  • the condition that “the absolute value of covariance of BigX(i) and BigY(i) calculated based on the X and Y coordinates ( 0 . 24 ) the absolute value of variance of BigX(i) ( 0 . 16 )” is not satisfied.
  • the vertical and the horizontal are not switched.
  • FIGS. 25 A, 25 B, 25 C, and 25 D indicate determination results obtained in the operation of identifying the fingertip according to the fourth modification illustrated in FIGS. 20 A and 20 B .
  • FIG. 25 A indicates determination results of “SPACE”, “FINGER”, or “PALM” obtained in the operation of identifying the fingertip, which is illustrated in FIGS. 20 A and 20 B , based on sharpness indicated in FIG. 15 C ; when sharpness indicates 0.00, 0.73, 0.41, 0.34, and 0.03 as indicated from top to bottom in FIG. 15 C , the determination results are “SPACE, “FINGER”, “FINGER”, “FINGER”, and “PALM”.
  • FIG. 25 B indicates determination results obtained in the loop processing for determining a finger extended from the palm P on the lower side; the determination results are provided as “FALSE” or “TRUE” based on results of combining two entries selected in descending order from the top of the five determination results in FIG. 25 A .
  • the determination is provided from the upper entries.
  • the topmost result is FALSE because the previous results are “SPACE” and “FINGER; the second result is FALSE because the previous results are “FINGER” and “FINGER”; the third result is FALSE because the previous results are “FINGER” and “FINGER”; the fourth (bottommost) result is TRUE because the previous results are “FINGER” and “PALM”. Because TRUE exists, it is determined that a finger is extended toward the upper side from the palm P on the lower side.
  • FIG. 25 C indicates determination results obtained in the loop processing for determining the fingertip FT is present over the row i. Because the finger is determined to be extended from the palm P on the lower side, the determination here is performed from the lower side. Based on the determination results in FIG. 25 A , as indicated in FIG.
  • the fourth (bottommost) result is FALSE because the row i is “FINGER” and the row i ⁇ 1 is “FINGER”; the third result is FALSE because the row i is “FINGER” and the row i ⁇ 1 is also “FINGER”; the second result is TRUE because the row i is “FINGER” and the row i ⁇ 1 is “SPACE”; the topmost result is indicated by “-” because the determination is not provided for the topmost row without the row i ⁇ 1.
  • the fingertip FT is present over the row 2 designated TRUE.
  • FIG. 25 D indicates results of identifying the location of the fingertip.
  • the column Column(2) with the minimum value in the row 2 is, according to FIG. 14 C , the column 3. Therefore, the location of the fingertip is at the row 2 in the column 3.
  • the location of the fingertip FT can be identified. Accordingly, it is possible to provide the contactless input device 100 A that can accurately identify the location of the fingertip FT spaced apart from the sensor electrodes 121 .
  • FIGS. 26 to 29 are flowcharts illustrating a process of identifying the location of the fingertip FT according to the sixth modification. This process is performed by the determination unit 134 .
  • FIG. 26 illustrates a main flow
  • FIGS. 27 to 29 respectively illustrate flows of subroutine operations in steps S 134 to S 136 in FIG. 26 .
  • the subroutine operations “sub SwitchVerticalAndHorizontal”, “sub IdentifyFingertip”, and “sub RestoreVerticalAndHorizontal” in FIGS.
  • the determination unit 134 reads the number of rows and the number of columns of the sensor electrodes 121 from the memory 137 (step S 131 ).
  • “TemporalAllRows” indicates the number of rows of the sensor electrodes 121
  • “TemporalAllColumns” indicates the number of columns of the sensor electrodes 121 .
  • TemporalAllRows indicates 5 rows
  • TemporalAllColumns indicates 6 columns.
  • the determination unit 134 obtains the difference values ⁇ AD(1, 1) to ⁇ AD(AllRows, AllColumns) of all the sensor electrodes 121 and inputs the difference values to TemporalCapa(1, 1) to TemporalCapa(AllRows, AllColumns) (step S 132 ).
  • the difference values for example, 30 values of the difference values TemporalCapa(1, 1) to TemporalCapa(AllRows, AllColumns) about the 30 pieces of the sensor electrodes 121 are obtained.
  • the determination unit 134 calls the subroutine “sub SwitchVerticalAndHorizontal” (refer to FIG. 22 ) (step S 133 ). Because the subroutine “sub SwitchVerticalAndHorizontal” (refer to FIG. 22 ) has been described in another example, the description thereof is not repeated.
  • the determination unit 134 calls a subroutine “sub DetermineMaximumValue” (refer to FIG. 27 ) and determines a maximum value of Capacitance(i, j) in the individual rows (step S 134 ).
  • the determination unit 134 calls the subroutine “sub IdentifyRowToExclude” (refer to FIGS. 28 A and 28 B ) and performs the operation of identifying a row to be excluded (step S 135 ).
  • the row to be excluded is a row in which the hand H is not present. By identifying the row without the hand and excluding the row, the target is narrowed down to rows in which the hand is present.
  • the determination unit 134 calls the subroutine “sub CalculateSharpness” (refer to FIG. 29 ) and performs the operation of calculating the sharpness at the row with the hand (step S 136 ).
  • the determination unit 134 calls the subroutine “sub IdentifyFingertip” (refer to FIG. 13 ) and performs the operation of identifying a row with the fingertip FT based on the sharpness calculated on the individual rows with the hand in step S 136 (step S 137 ).
  • the determination unit 134 calls the subroutine “sub RestoreVerticalAndHorizontal” (refer to FIG. 23 ) and performs the operation of restoring the vertical and the horizontal (step S 138 ).
  • the determination unit 134 outputs coordinates indicating the location of the top of the fingertip FT (step S 139 ).
  • “row” indicates a row number of the row with the fingertip FT.
  • “column(i)” indicates a column number with a maximum capacitance value in the row i, and thus, “column(row)” indicates a column number with a maximum capacitance value in the row “row”.
  • the determination unit 134 determines whether the capacitance Capacitance(i) is greater than the maximum value Maximum(i) (step S 144 ).
  • the determination unit 134 assigns the capacitance value Capacitance(i, j) to the maximum value Maximum(i) (step S 145 ).
  • the purpose of this operation is to update the maximum value Maximum(i) in the row i.
  • the determination unit 134 stores in the memory 137 the maximum value Maximum(i) in the row i updated in step S 145 .
  • the determination unit 134 stores the value obtained in step S 146 in the memory 137 .
  • the determination unit 134 performs the loop processing of steps S 143 to S 147 to identify a maximum capacitance value and the sensor electrode 121 ( i, j ) yielding the maximum value in relation to the selected row i.
  • the determination unit 134 repeats loop processing of steps S 141 to S 148 until a maximum capacitance value and the sensor electrode 121 ( i, j ) yielding the maximum value are identified on all rows. As a result, a maximum capacitance value and the sensor electrode 121 ( i, j ) yielding the maximum value are identified on all rows.
  • the row i+1 placed one row below the row i is a row next to the row i in the ⁇ Y direction.
  • the row i is excluded when the maximum capacitance value in the row i is smaller than 1 ⁇ 2 of the maximum capacitance value in the row i+1 placed one row below.
  • the maximum capacitance value in a row under the top of the fingertip FT is relatively large; in contrast, the maximum capacitance value in a row placed one row above the row under the top of the fingertip FT is relatively small because the top of the fingertip FT does not overlap the row. As such, the maximum capacitance value greatly differs between a row under the top of the fingertip FT and one row above.
  • the configuration is made such that the location at which the maximum capacitance value is smaller than 1 ⁇ 2 is deemed to be the location of a row placed one row above the top of the fingertip FT; when the maximum capacitance value in the row i is smaller than 1 ⁇ 2 of the maximum capacitance value in the row i+1 placed one row below, the row i is excluded.
  • the top of the fingertip FT overlaps the row i+1 but not the row i, the row i is excluded.
  • the determination unit 134 determines, with respect to the selected row i, whether the maximum capacitance value Maximum(i) in the row i is smaller than 1 ⁇ 2 of a maximum capacitance value Maximum(i+1) in the row i+1 placed one row below (step S 152 ).
  • the determination unit 134 When determining that the maximum capacitance value Maximum(i) is smaller than 1 ⁇ 2 (Yes in step S 152 ), the determination unit 134 assigns “exclude” to Except1(i) (step S 153 A).
  • the row i of Except1(i) assigned “exclude” is not targeted for the calculation of sharpness described later.
  • the determination unit 134 stores in the memory 137 Except1(i) as array data including an element of the row number i.
  • the determination unit 134 assigns “target” to Except1(i) (step S 153 B).
  • the row i of Except1(i) assigned “target” can be targeted for the calculation of sharpness described later.
  • the determination unit 134 stores in the memory 137 Except1(i) as array data including an element of the row number i.
  • the determination unit 134 repeats the loop processing of steps S 151 to S 154 until all the rows i are subjected to the operations for excluding the row i when the maximum capacitance value in the row i is smaller than 1 ⁇ 2 of the maximum capacitance value in the row i+1 placed one row below.
  • the row i ⁇ 1 placed one row above the row i is a row next to the row i in the +Y direction.
  • the row i is excluded when the maximum capacitance value in the row i is smaller than 1 ⁇ 2 of the maximum capacitance value in the row i ⁇ 1 placed one row above.
  • the reason for excluding the row i when the minimum reciprocal value in the row i is smaller than 1 ⁇ 2 is that, when the fingertip FT is present across the row i and the row i ⁇ 1 placed one row above, the maximum capacitance value in the row i cannot be smaller than 1 ⁇ 2 of the maximum capacitance value in the row i ⁇ 1 placed one row above, and also for the purpose of matching the configuration with the loop processing of steps S 151 to S 154 .
  • the determination unit 134 determines, with respect to the selected row i, whether the maximum capacitance value Maximum(i) in the row i is smaller than 1 ⁇ 2 of a maximum capacitance value Maximum(i ⁇ 1) in the row i ⁇ 1 placed one row above (step S 157 ).
  • the determination unit 134 assigns “target” to Except2(i) (step S 158 B).
  • the row i of Except2(i) assigned “target” can be targeted for the calculation of sharpness described later.
  • the determination unit 134 stores in the memory 137 Except2(i) of the determination result obtained in step S 158 B as array data including an element of the row number i.
  • the determination unit 134 repeats the loop processing of steps S 156 to S 159 until all the rows i are subjected to the operations for excluding the row i when the maximum capacitance value in the row i is smaller than 1 ⁇ 2 of the maximum capacitance value in the row i ⁇ 1 placed one row above.
  • the purpose of excluding the row i when the maximum capacitance value in the row i is smaller than the proximity determination threshold is to determine whether the fingertip FT is present in the row i.
  • the determination unit 134 determines, with respect to the selected row i, whether the maximum capacitance value Maximum(i) in the row i is smaller than the proximity determination threshold (step S 162 ).
  • the determination unit 134 When determining that the maximum capacitance value Maximum(i) is smaller than the proximity determination threshold (Yes in step S 162 ), the determination unit 134 assigns “exclude” to Except3(i) (step S 163 A).
  • the row i of Except3(i) assigned “exclude” is not targeted for the calculation of sharpness described later.
  • the determination unit 134 stores in the memory 137 Except3(i) as array data including an element of the row number i.
  • the determination unit 134 assigns “target” to Except3(i) (step S 163 B).
  • the row i of Except3(i) assigned “target” can be targeted for the calculation of sharpness described later.
  • the determination unit 134 stores in the memory 137 Except3(i) as array data including an array element of the row number i.
  • the determination unit 134 repeats the loop processing of steps S 161 to S 164 until all the rows i are subjected to the operations for excluding the row i when the maximum capacitance value in the row i is smaller than the proximity determination threshold.
  • the determination unit 134 assigns “target” to Except(i) (step S 167 A).
  • the row i of Except(i) assigned “target” is targeted for the calculation of sharpness described later.
  • the determination unit 134 stores in the memory 137 Except(i) as array data including an element of the row number i.
  • the determination unit 134 determines No in step S 166 .
  • the determination unit 134 assigns “exclude” to Except(i) (step S 167 B).
  • the row i of Except(i) assigned “exclude” is not targeted for the calculation of sharpness described later.
  • the determination unit 134 stores in the memory 137 Except(i) as array data including an element of the row number i.
  • the determination unit 134 repeats the loop processing of steps S 165 to S 168 until all the rows i are subjected to the operations for determining a row to be excluded. In the manner described above, the row i to be excluded is determined among all the rows i.
  • FIG. 29 is a flowchart illustrating an operation of calculating sharpness, performed according to the subroutine “sub CalculateSharpness”.
  • the determination unit 134 assigns Column(i) to j (step S 175 A). This means that when Column(i) is a column other than the end columns, Column(i) is assigned to j. Column(i) indicates a column yielding the maximum value Maximum(i) in the row i (refer to step S 26 ).
  • the determination unit 134 calculates a sharpness Apex(i) (step S 176 ).
  • the sharpness Apex(i) is given by the expression presented below.
  • the determination unit 134 calculates the sharpness Apex(i) and subsequently proceeds to step S 177 .
  • Apex( i ) ⁇ Capacitance( i,j ⁇ 1)+2Capacitance( i,j )+Capacitance( i,j+ 1)
  • the determination unit 134 sets the sharpness Apex(i) to 0 (step S 172 A). This means that the sharpness Apex(i) is assigned 0. Because the row is not targeted for calculation of sharpness, the sharpness Apex(i) is set to 0. As will be described later, the sharpness Apex(i) is used to identify a row under a fingertip. By setting the sharpness Apex(i) of a row not targeted for calculation of sharpness to a particular numerical value (0), rows targeted for calculation of sharpness and rows not targeted for calculation of sharpness can be dealt with in accordance with the same procedure. As will be described later, in this embodiment, calculation of sharpness yields a positive value.
  • a row with a greatest sharpness is identified as a row under a fingertip.
  • setting the sharpness Apex(i) to 0 equals determining that the row i is not a row under a fingertip.
  • the purpose of this operation is that, because the column Column(i) yielding the maximum value Maximum(i) in the row i is a column along the front end in the ⁇ X direction (the column 1), the column 2 is designated as the column j in the middle of three columns used to calculate sharpness; as a result, three values of reciprocal of the columns 1 to 3 are used to calculate sharpness.
  • step S 173 A the determination unit 134 proceeds to step S 176 and calculates sharpness.
  • the purpose of this operation is that, because the column Column(i) yielding the maximum value Maximum(i) in the row i is a column along the front end in the +X direction (the column 6 indicated by AllColumns), AllColumns ⁇ 1 (the column 5) is designated as the column j in the middle of three columns used to calculate sharpness; as a result, three values of reciprocal of the columns 4 to 6 are used to calculate sharpness.
  • step S 175 B the determination unit 134 proceeds to step S 176 and calculates sharpness.
  • the determination unit 134 repeats the loop processing of steps S 171 to S 177 until all the rows i are subjected to the operations for calculating sharpness.
  • FIG. 30 is a flowchart illustrating an operation of calculating sharpness, performed according to a subroutine “sub CalculateSharpness” of a seventh modification.
  • the operation in step S 176 is different from the operation in step S 176 illustrated in FIG. 29 .
  • the following describes the difference to the operation illustrated in FIG. 29 .
  • the determination unit 134 calculates the curvature of a circle passing through the following three points as the sharpness Apex(i) (step S 176 ).
  • the three points are indicated by (j ⁇ 1, Capacitance(i, j ⁇ 1)), (j, Capacitance(i, j)), and (j+1, Capacitance(i, j+1)).
  • the capacitance value Capacitance is designated as the y axis. This example is not illustrated in the drawings.
  • FIG. 31 is a flowchart illustrating an operation of calculating sharpness, performed according to a subroutine “sub CalculateSharpness” of an eighth modification.
  • the operation in step S 176 is different from the operation in step S 176 illustrated in FIG. 29 .
  • the following describes the difference to the operation illustrated in FIG. 29 .
  • the determination unit 134 calculates a quadratic curve that approximates adjacent five points in the row i by curve fitting according to the least-squares method and further calculates a second-order coefficient of the curve as the sharpness Apex(i) (step S 176 ).
  • the adjacent five points in the row i are indicated by (j ⁇ 2, Capacitance(i, j ⁇ 2)), (j ⁇ 1, Capacitance(i, j ⁇ 1)), (j, Capacitance(i, j)), (j+1, Capacitance(i, j+1)), and (j+2, Capacitance(i, j+2)).
  • the determination unit 134 calculates the sharpness Apex(i) and subsequently proceeds to step S 177 .
  • FIG. 32 is a flowchart illustrating an operation of calculating sharpness, performed according to a subroutine “sub CalculateSharpness” of a ninth modification.
  • the operation in step S 176 is different from the operation in step S 176 illustrated in FIG. 29 .
  • the following describes the difference to the operation illustrated in FIG. 29 .
  • the determination unit 134 calculates a circumference that approximates adjacent five points in the row i by curve fitting with the least-squares method and further calculates a curvature of the circumference as the sharpness Apex(i) (step S 176 ).
  • the adjacent five points in the row i are indicated by (j ⁇ 2, Capacitance(i, j ⁇ 2)), (j ⁇ 1, Capacitance(i, j ⁇ 1)), (j, Capacitance(i, j)), (j+1, Capacitance(i, j+1)), and (j+2, Capacitance(i, j+2)).
  • the determination unit 134 calculates the sharpness Apex(i) and subsequently proceeds to step S 177 .
  • FIG. 33 illustrates a specific configuration of the electrostatic sensor 120 of the contactless input device 100 A.
  • the electrostatic sensor 120 which is overlaid on the display device 110 , includes, a plurality of sensor electrodes 121 X elongated in the X direction and a plurality of sensor electrodes 121 Y elongated in the Y direction as illustrated in FIG. 33 .
  • the sensor electrodes 121 X and 121 Y are individually coupled to the control device 130 with wires 122 X and 122 Y.
  • the electrostatic sensor 120 configured as described above may be formed by, for example, patterning the sensor electrodes 121 X and 121 Y and the wires 122 X and 122 Y at a transparent conductive film made of indium tin oxide (ITO) or other material on a surface of transparent glass.
  • ITO indium tin oxide
  • FIG. 33 illustrates, as an example, 12 pieces of the sensor electrodes 121 X and 20 pieces of the sensor electrodes 121 Y.
  • the relationships of rows and columns of the 12 pieces of the sensor electrodes 121 X and the 20 pieces of the sensor electrodes 121 Y are the same as the operating parts 111 . This means that 12 rows of the sensor electrodes 121 X and 20 columns of the sensor electrodes 121 Y are arranged.
  • the number of rows of the sensor electrodes 121 X and the number of columns of the sensor electrodes 121 Y are merely an example.
  • the 12 rows of the sensor electrodes 121 X are scanned one by one, and the 20 columns of the sensor electrodes 121 Y are also scanned one by one; the AD conversion unit 132 converts into a digital value the capacitance at 240 points at which the 12 rows of the sensor electrodes 121 X and the 20 columns of the sensor electrodes 121 Y intersect; the counter 133 counts the amount of change on each output of the AD conversion unit 132 and outputs the difference value ⁇ AD at the 240 points of intersection.
  • coordinates at individual intersection points are represented by (i, j), in this example, the row i is indicated by 1 to 12, and the column j is indicated by 1 to 20.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Position Input By Displaying (AREA)
  • Nonlinear Science (AREA)
  • Electromagnetism (AREA)
  • Mathematical Physics (AREA)
  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Optics & Photonics (AREA)
  • Switches With Compound Operations (AREA)
  • Push-Button Switches (AREA)
US17/886,874 2021-08-26 2022-08-12 Contactless input device Active US11687195B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2021138377A JP7651803B2 (ja) 2021-08-26 2021-08-26 非接触入力装置
JP2021-138377 2021-08-26
JPJP2021-138377 2021-08-26

Publications (2)

Publication Number Publication Date
US20230063584A1 US20230063584A1 (en) 2023-03-02
US11687195B2 true US11687195B2 (en) 2023-06-27

Family

ID=85287683

Family Applications (1)

Application Number Title Priority Date Filing Date
US17/886,874 Active US11687195B2 (en) 2021-08-26 2022-08-12 Contactless input device

Country Status (5)

Country Link
US (1) US11687195B2 (ja)
JP (1) JP7651803B2 (ja)
KR (1) KR102761055B1 (ja)
CN (1) CN115904120A (ja)
TW (1) TWI839815B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240071462A1 (en) * 2022-08-30 2024-02-29 Micron Technology, Inc. Efficient periodic backend refresh reads for reducing bit error rate in memory devices

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100097329A1 (en) * 2008-10-21 2010-04-22 Martin Simmons Touch Position Finding Method and Apparatus
US20130016045A1 (en) * 2011-07-14 2013-01-17 Weidong Zhao Multi-Finger Detection and Component Resolution
US20150035795A1 (en) 2013-08-05 2015-02-05 Alps Electric Co., Ltd. Touch pad
US20150212649A1 (en) 2014-01-27 2015-07-30 Alps Electric Co., Ltd. Touchpad input device and touchpad control program
US20160224187A1 (en) * 2014-02-26 2016-08-04 Qualcomm Incorporated Optimization for host based touch processing
US20170285848A1 (en) * 2016-03-31 2017-10-05 Sensel Inc. Human-computer interface system
US20170322649A1 (en) * 2013-10-14 2017-11-09 Cypress Semiconductor Corporation Contact Detection Mode Switching in a Touchscreen Device
US20170356812A1 (en) * 2014-12-03 2017-12-14 University Of British Columbia Flexible transparent sensor with ionically-conductive material
US20180052562A1 (en) * 2016-08-18 2018-02-22 Microsoft Technology Licensing, Llc Touch detection using feature-vector dictionary
US20180129335A1 (en) * 2016-11-09 2018-05-10 Dell Products L.P. Information Handling System Variable Capacitance Totem Input Management
US20180164894A1 (en) * 2013-08-01 2018-06-14 Stmicroelectronics S.R.L. Gesture recognition method, apparatus and device, computer program product therefor
US20190346958A1 (en) * 2016-07-29 2019-11-14 Japan Display Inc. Force detection apparatus
US20200257430A1 (en) * 2019-02-12 2020-08-13 Alps Alpine Co., Ltd. Position outputting device
US20210026484A1 (en) * 2018-03-28 2021-01-28 Hideep Inc. Pressure sensors constituting plurality of channels, touch input device comprising same, and pressure detecting method using same
US20220129147A1 (en) * 2020-10-26 2022-04-28 Microsoft Technology Licensing, Llc Touch screen display with virtual trackpad
US20220137780A1 (en) * 2020-11-02 2022-05-05 Lg Display Co., Ltd. Touch display device, touch driving circuit and touch driving method thereof
US20230012245A1 (en) * 2019-12-09 2023-01-12 Huawei Technologies Co., Ltd. Touch Region Adjustment Method and Apparatus
US20230022102A1 (en) * 2021-07-26 2023-01-26 Kabushiki Kaisha Tokai Rika Denki Seisakusho Operation detection device

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3910019B2 (ja) 2000-07-04 2007-04-25 アルプス電気株式会社 入力装置
JP2010244132A (ja) 2009-04-01 2010-10-28 Mitsubishi Electric Corp タッチパネル付きユーザインタフェース装置、ユーザインタフェース制御方法およびユーザインタフェース制御プログラム
JP5703800B2 (ja) 2011-02-04 2015-04-22 三菱電機株式会社 指先タッチ判定装置及び指先タッチ判定方法
JP5978663B2 (ja) 2012-03-12 2016-08-24 株式会社デンソー 表示装置
JP6076866B2 (ja) 2013-09-03 2017-02-08 アルプス電気株式会社 静電容量型の入力装置
KR20150087638A (ko) 2014-01-22 2015-07-30 삼성전자주식회사 전자 장치에서 입력을 획득하기 위한 방법, 전자 장치 및 저장 매체
JP2015194813A (ja) 2014-03-31 2015-11-05 Smk株式会社 静電容量式タッチパネル
JP2017134784A (ja) * 2016-01-29 2017-08-03 シャープ株式会社 タッチパネルコントローラ及びタッチパネルシステム
CN109308113A (zh) * 2017-07-26 2019-02-05 富泰华工业(深圳)有限公司 非接触式输入装置及方法、能进行非接触式输入的显示器

Patent Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100097329A1 (en) * 2008-10-21 2010-04-22 Martin Simmons Touch Position Finding Method and Apparatus
US20130016045A1 (en) * 2011-07-14 2013-01-17 Weidong Zhao Multi-Finger Detection and Component Resolution
US20180164894A1 (en) * 2013-08-01 2018-06-14 Stmicroelectronics S.R.L. Gesture recognition method, apparatus and device, computer program product therefor
US20150035795A1 (en) 2013-08-05 2015-02-05 Alps Electric Co., Ltd. Touch pad
JP2015032177A (ja) 2013-08-05 2015-02-16 アルプス電気株式会社 タッチパッド
US20170322649A1 (en) * 2013-10-14 2017-11-09 Cypress Semiconductor Corporation Contact Detection Mode Switching in a Touchscreen Device
US20150212649A1 (en) 2014-01-27 2015-07-30 Alps Electric Co., Ltd. Touchpad input device and touchpad control program
JP2015141425A (ja) 2014-01-27 2015-08-03 アルプス電気株式会社 タッチパッド入力装置およびタッチパッド制御プログラム
US20160224187A1 (en) * 2014-02-26 2016-08-04 Qualcomm Incorporated Optimization for host based touch processing
US20170356812A1 (en) * 2014-12-03 2017-12-14 University Of British Columbia Flexible transparent sensor with ionically-conductive material
US20170285848A1 (en) * 2016-03-31 2017-10-05 Sensel Inc. Human-computer interface system
US20190346958A1 (en) * 2016-07-29 2019-11-14 Japan Display Inc. Force detection apparatus
US20180052562A1 (en) * 2016-08-18 2018-02-22 Microsoft Technology Licensing, Llc Touch detection using feature-vector dictionary
US20180129335A1 (en) * 2016-11-09 2018-05-10 Dell Products L.P. Information Handling System Variable Capacitance Totem Input Management
US20210026484A1 (en) * 2018-03-28 2021-01-28 Hideep Inc. Pressure sensors constituting plurality of channels, touch input device comprising same, and pressure detecting method using same
US20200257430A1 (en) * 2019-02-12 2020-08-13 Alps Alpine Co., Ltd. Position outputting device
US20230012245A1 (en) * 2019-12-09 2023-01-12 Huawei Technologies Co., Ltd. Touch Region Adjustment Method and Apparatus
US20220129147A1 (en) * 2020-10-26 2022-04-28 Microsoft Technology Licensing, Llc Touch screen display with virtual trackpad
US20220137780A1 (en) * 2020-11-02 2022-05-05 Lg Display Co., Ltd. Touch display device, touch driving circuit and touch driving method thereof
US20230022102A1 (en) * 2021-07-26 2023-01-26 Kabushiki Kaisha Tokai Rika Denki Seisakusho Operation detection device

Also Published As

Publication number Publication date
KR20230031138A (ko) 2023-03-07
US20230063584A1 (en) 2023-03-02
CN115904120A (zh) 2023-04-04
JP7651803B2 (ja) 2025-03-27
JP2023032324A (ja) 2023-03-09
KR102761055B1 (ko) 2025-01-31
TWI839815B (zh) 2024-04-21
TW202319897A (zh) 2023-05-16

Similar Documents

Publication Publication Date Title
US9195336B2 (en) Touch-type inputting device and method for controlling the same
CN107231814B (zh) 检测错误边界触摸输入的方法和设备
US9430107B2 (en) Determining touch locations and forces thereto on a touch and force sensing surface
US8754911B2 (en) Method of controlling touch panel display device and touch panel display device using the same
US9904417B2 (en) Projected capacitive touch detection with touch force detection using self-capacitance and mutual capacitance detection
US10067611B2 (en) Apparatus and method for detecting a touch
US11435860B2 (en) Touch panel including touch sensor and driving method thereof
US9146648B2 (en) Touch sensing method for touch panel
AU2017203910B2 (en) Glove touch detection
CN110597414B (zh) 触摸屏的触控检测方法及相关设备
EP3132330B1 (en) Determining touch locations and forces thereto on a touch and force sensing surface
US20100141604A1 (en) Resistive multi touch screen
US20180329532A1 (en) Operation detection device
US11687195B2 (en) Contactless input device
WO2004070604A2 (en) Method of selecting objects of a user interface on a display screen
EP3029555B1 (en) Method for processing input from capacitive input pad and related computer program and system
US9342196B2 (en) Hardware accelerator for touchscreen data processing
US20150026626A1 (en) Software keyboard input device, input method and electronic apparatus
KR20130112468A (ko) 펜 방식에 기반한 디스플레이의 좌표 검출 방법 및 장치
CN110362224B (zh) 触控屏的调整系统、控制方法、感应芯片及触控显示装置
CN108845720B (zh) 一种触控基板、其检测方法及触控显示面板、显示装置
US20160092002A1 (en) Touch sensing device
US20240353953A1 (en) Electrostatic Coordinate Input Device
WO2024154400A1 (ja) 座標入力装置
US10747424B2 (en) Information processing apparatus for recognizing multi-touch operation by which object is rotated

Legal Events

Date Code Title Description
AS Assignment

Owner name: ALPS ALPINE CO., LTD., JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:UCHIDA, KEITARO;OTA, MASAKI;TAKATA, MASAHIRO;REEL/FRAME:060795/0872

Effective date: 20220810

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCF Information on status: patent grant

Free format text: PATENTED CASE