Apparatus and method for recognizing coordinates

According to one embodiment, a coordinate recognition apparatus includes a plurality of light-emitting devices, a plurality of light-receiving devices, and a controller. The light-emitting devices and the light-receiving devices are arranged in an array along X direction. The controller forms a plurality of groups of light paths each formed by a plurality of light paths parallel to one another in a plane including the light-emitting devices and the light-receiving devices such that an angle of the light paths varies from group to group, identifies positions p and l of each of the groups in the X direction of the light-emitting device and the light-receiving device corresponding to the light path that passes through the center of a light shield region, and calculates coordinates of the center of the light shield region in the plane based on the identified positions p and l of each of the groups.

FIELD

Embodiments described herein relate generally to an apparatus and method for recognizing coordinates of a position at which the user has manipulated.

BACKGROUND

Conventionally, optical coordinate recognition apparatuses are known, such as a touch panel including a plurality of infrared light-emitting devices and a plurality of infrared light-receiving devices provided so as to be opposed to the respective infrared light-emitting devices.

In general, such an optical coordinate recognition apparatus detects whether a light path formed between a pair of light-emitting device and a light-receiving device is shielded or not, and calculates coordinates of a position at which the user has manipulated based on the detected result.

In this scheme, however, the resolution achieved will be as low as the light path formed between an LED and a PTR of each pair. It is thereby difficult to identify the precise manipulation position.

For the sake of improved precision, it is possible to obtain a higher resolution by increasing the number of light-emitting devices and light-receiving devices and narrowing the distance between the light paths such that the light paths are closer to one another. Due to restrictions in size of the light-emitting devices and the light-receiving devices, however, there is a limit to how narrow the distance between the light paths can be made.

Under the circumstances, it has been desired to develop a technique allowing an optical coordinate recognition apparatus to identify the manipulation position with high precision.

DETAILED DESCRIPTION

In general, according to one embodiment, a coordinate recognition apparatus includes a plurality of light-emitting devices, a plurality of light-receiving devices, and a controller.

The light-emitting devices are arranged in an array along an arbitrary X-direction. The light-receiving devices are arranged in an array parallel to the array of the light-emitting devices, and configured to detect light emitted by the light-emitting devices. The controller selectively drives the light-emitting devices and the light-receiving devices, forms a plurality of groups of light paths each formed by a plurality of light paths parallel to one another in a plane including the light-emitting devices and the light-receiving devices such that an angle of the light paths varies from group to group, identifies a position p and a position l of each of the groups of light paths based on an output from each of the light-receiving devices, the position p being in the X direction of the light-receiving device corresponding to the light path that passes through the center of a region shielded by an object, the position l being in the X direction of the light-emitting device forming the same light path, and calculates coordinates of the center of the light shield region in the plane based on the identified positions p and l of each of the groups of light paths.

An embodiment will be described with reference to the accompanying drawings.

The present embodiment describes a coordinate recognition apparatus configured to optically detect a touch manipulation on the display, by way of illustration.

[Hardware Configuration of Coordinate Recognition Apparatus]

FIG. 1is a block diagram illustrating a hardware configuration of a coordinate recognition apparatus, for example, according to the present embodiment. The coordinate recognition apparatus includes an input device1and a controller2.

The input device1includes a plurality of light-emitting devices Lx1to Lxn (where n is an integer and n≧1) arranged in a one-dimensional array, light-receiving devices Px1to Pxn arranged in a one-dimensional array parallel to the array of the light-emitting devices Lx1to Lxn, light-emitting devices Ly1to Lym (where m is an integer and m≧1) arranged in a one-dimensional array along a direction orthogonal to the direction of the array of the light-emitting devices Lx1to Lxn, and light-receiving devices Py1to Pyn arranged in a one-dimensional array parallel to the array of the light-receiving devices Ly1to Lym.

The light-emitting devices Lx1to Lxn, Lx1to Lym are light-emitting diodes (LEDs) configured to emit infrared light when driven by the controller2. The light-receiving devices Px1to Pxn, Py1to Pym are phototransistors (PTrs) configured to receive infrared light and output a signal responsive to the intensity of the received infrared light to the controller2. A region A surrounded by the light-emitting devices Lx1to Lxn, Ly1to Lym and the light-receiving devices Px1to Pxn, Py1to Pym is a region in which a manipulation by an object, such as a finger of a user or a stylus, is detected.

In the present embodiment, the direction of the array of the light-emitting devices Lx1to Lxn and the light-receiving devices Px1to Pxn is defined as X direction, and the direction of the array of the light-emitting devices Ly1to Lym and the light-receiving devices Py1to Pym is defined as Y direction. Assume that n=12 and m=9, for example.

The controller2comprises a central processing unit (CPU)3, a read only memory (ROM)4, a random access memory (RAM)5, an interface6, a selector7, a connector8, a selector9, an amplifier10, and an AD converter11, for example.

The ROM4stores fixed data, e.g., a variety of default values and computer programs. The RAM5functions as a main memory, and forms a variety of work memory areas.

The interface6is an RS-232C interface, for example, and is configured to connect a host computer60and the coordinate recognition apparatus for communications therebetween. The host computer60is a personal computer, for example, and is connected to a display61, which is a liquid crystal display (LCD), for example. The input device1is arranged in front of the display61. On the display61, the host computer60displays a variety of graphical user interface (GUI) elements, which can be manipulated via the input device1.

An end of a flexible cable12is connected to the connector8. The other end of the flexible cable12is connected to the input device1.

The CPU3executes computer programs stored in the ROM4, and executes a variety of processes relating to actions of the coordinate recognition apparatus. In particular, in order to recognize coordinates (which will hereinafter be referred to as manipulation coordinates) of the position at which the user has manipulated on a display surface of the display61, the CPU3outputs signals for driving the light-emitting devices Lx1to Lx12, Ly1to Ly9to the selector7.

The selector7selectively supplies the driving signals input from the CPU3to the light-emitting devices Lx1to Lx12, Ly1to Ly9via the connector8and the flexible cable12. The light-emitting devices to which the driving signals are supplied emit infrared light.

When the light-receiving devices Px1to Px12, Py1to Py9receive the infrared light emitted by the light-emitting devices Lx1to Lx12, Ly1to Ly9, a detection signal responsive to the intensity of the received infrared light is output to the selector9via the flexible cable12and the connector8. The selector9selectively captures the input detection signal and output the captured detection signal to the amplifier10.

The amplifier10amplifies the input detection signal to a predetermined level, and outputs the amplified detection signal to the AD converter11. The AD converter11converts the detection signal input from the amplifier10into a digital signal, and outputs the converted digital detection signal to the CPU3.

The CPU3calculates the manipulation coordinates, at which the user has manipulated, using the digital detection signal input from the AD converter11, and outputs the calculated result to the host computer60via the interface6. The host computer60executes a variety of processes using the manipulation coordinates input from the controller2. For example, the host computer60compares the manipulation coordinates with coordinates of the GUI elements displayed on the display61, and when an operable GUI element exists at the manipulation coordinates, the host computer60executes a process corresponding to each of the GUI elements. In another example, the host computer60enlarges or reduces an image displayed on the display61, or slides the image in the length or width direction, as the manipulation coordinates vary in time.

A configuration of the input device1will be described in detail below.FIG. 2is an exploded perspective view of the input device1and an LCD panel62included in the display61.

As shown inFIG. 2, the input device1includes an outer frame13, a printed wiring board15, and a transparent acrylic plate16. The outer frame13is formed of ABS resin, for example. A rectangular opening of the outer frame13corresponds to the region A shown inFIG. 1, from which an manipulation by the user is detected. A cover14is provided along the edges of the opening at a lower part of the outer frame13, so as to cover the light-emitting devices Lx1to Lx12, Ly1to Ly9, and the light-receiving devices Px1to Px12, Py1to Py9. The cover14lets infrared light to pass through, and is formed of black resin that is dark enough to prevent the light-emitting devices Lx1to Lx12, Ly1to Ly9and the light-receiving devices Px1to Px12, Py1to Py9from being visible from the inside of the opening.

The printed wiring board15has the shape of a rectangular frame including an opening of a size approximately equal to that of the opening of the outer frame13. On the longer sides of the printed wiring board15, as indicated by “X direction” inFIG. 2, the light-emitting devices Lx1to Lx12and the light-receiving devices Px1to Px12are arranged at equal intervals so as to be opposed to each another. On the shorter sides of the printed wiring board15as indicated by “Y direction” inFIG. 2, on the other hand, the light-emitting devices Ly1to Ly9and the light-receiving devices Py1to Py9are arranged at equal intervals so as to be opposed to each other.

According to the above-described configuration, both of the light-emitting devices Lx1to Lx12, Ly1to Ly9and the light-receiving devices Px1to Px12, Py1to Py9lie on the same plane. This plane will be defined as XY plane.

The printed wiring board15includes a connector17, to which one end of the flexible cable12is connected.

The acrylic plate16is a rectangular plate of a size greater than the openings of the outer frame13and the printed wiring board15and less than the outer size of the outer frame13.

A region63, indicated by diagonal shading on the LCD panel62inFIG. 2, represents an image of a GUI element, for example, displayed on the LCD panel62.

FIG. 3is a perspective view illustrating a state in which the outer frame13, the printed wiring board15, the acrylic plate16, and the LCD panel62are layered in this order and fixed. The image displayed on the LCD panel62is visible from the outside through the acrylic plate16. When the user touches the acrylic plate16with his or her finger or a stylus, for example, in order to manipulate the screen of the LC panel62, some of the light paths formed in the XY plane by the light-emitting devices Lx1to Lx12, Ly1to Ly9and the light-receiving devices Px1to Px12, Py1to Py9are interrupted. As will be described later, the controller2recognizes coordinates of the manipulation position in the XY plane, based on combinations of light-emitting devices and light-receiving devices corresponding to the interrupted light paths.

The controller2selectively drives the light-emitting devices Lx1to Lx12, Ly1to Ly9and the light-receiving devices Px1to Px12, Py1to Py9, thereby forming a plurality of groups of light paths, each formed of a plurality of light paths in parallel to one another in the XY plane such that the angle of the light paths varies from group to group. The light paths can be selectively formed by causing the selector7to select an anode and cathodes used to supply the light-emitting device with a driving signal, and causing the selector9to select a emitters and collectors used to capture an output from the light-receiving device.

Details about the groups of light paths formed by the light-emitting devices Lx1to Lx12, Ly1to Ly9, and the light-receiving devices Px1to Px12, Py1to Py9will be described below, with reference toFIGS. 5to11.

In each ofFIGS. 5 to 11, a group of light paths formed by the light-emitting devices Lx1to Lx12and the light-receiving devices Px1to Px12arranged in X direction are shown by a schematic diagram at the left, and the results of detecting infrared light of the light-receiving devices Px1to Px12, when the group of light paths shown in the schematic diagram is not shielded, are shown in the diagram at the right. Numbers 1 to 12 are assigned as LED Number (X) to the light-emitting devices Lx1to Lx12, respectively, and numbers 1 to 12 are assigned as PTr Number (X) to the light-receiving devices Px1to Px12, respectively, numbers 1 to 9 are assigned as LED Number (Y) to the light-receiving devices Ly1to Ly9, respectively, and numbers 1 to 9 are assigned as PTr Number (Y) to the light-receiving devices Py1to Py9, respectively. In each ofFIGS. 5 to 11, the results of detecting infrared light are shown in a matrix in which the lateral axis represents PTr Number (X) and the vertical axis represents LED Number (X), such that the detection results of pairs of light-emitting devices and light-receiving devices corresponding to the respective squares are shaded differently according to transmittances. The transmittance is obtained by dividing the output from the light-receiving devices Px1to Px12by a predetermined reference value. The squares other than the squares corresponding to the light paths shown at the left, i.e., the non-detection region, is diagonally shaded.

FIG. 5shows a state in which a group of 12 parallel light paths, each formed by a light-emitting device and a light-receiving device opposite to each another, is formed. In this case, LED Number (X) of the light-emitting device forming one of the light paths and PTr Number (X) of the light-receiving device forming the same light path agree. The light paths are parallel to Y direction. This group of light paths will be referred to as a group of light paths of order r=0.

FIG. 6shows a state in which a group of 11 parallel light paths, each formed by a light-emitting device and a light-receiving device arranged next on the right of the light-receiving device opposite to the light-emitting device, is formed. In this case, PTr Number (X) of the light-receiving device forming each of the light paths is greater by 1 than LED Number (X) of the light-emitting device forming a pair with the light-receiving device. This group of light paths will be referred to as a group of light paths of order r=+1.

FIG. 7shows a state in which a group of 10 parallel light paths, each formed by a light-emitting device and a light-receiving device arranged second to the right of the light-receiving device opposite to the light-emitting device, is formed. In this case, PTr Number (X) of the light-receiving device forming each of the light paths is greater by 2 than LED Number (X) of the light-emitting device forming a pair with the light-receiving device. This group of light paths will be referred to as a group of light paths of order r=+2.

FIG. 8shows a state in which a group of 9 parallel light paths, each formed by a light-emitting device and a light-receiving device arranged third to the right of the light-receiving device opposite to the light-emitting device, is formed. In this case, PTr Number (X) of the light-receiving device forming each of the light paths is greater by 3 than LED Number (X) of the light-emitting device forming a pair with the light-receiving device. This group of light paths will be referred to as a group of light paths of order r=+3.

FIG. 9shows a state in which a group of 11 parallel light paths, each formed by a light-emitting device and a light-receiving device arranged next on the left of the light-receiving device opposite to the light-emitting device, is formed. In this case, PTr Number (X) of the light-receiving device forming each of the light paths is less by 1 than LED Number (X) of the light-emitting device forming a pair with the light-receiving device. This group of light paths will be referred to as a group of light paths of order r=−1.

FIG. 10shows a state in which a group of 10 parallel light paths, each formed by a light-emitting device and a light-receiving device arranged second to the left of the light-receiving device opposite to the light-emitting device, is formed. In this case, PTr Number (X) of the light-receiving device forming each of the light paths is less by 2 than LED Number (X) of the light-emitting device forming a pair with the light-receiving device. This group of light paths will be referred to as a group of light paths of order r=−2.

FIG. 11shows a state in which a group of 9 parallel light paths, each formed by a light-emitting device and a light-receiving device arranged third to the left of the light-receiving device opposite to the light-emitting device, is formed. In this case, PTr Number (X) of the light-receiving device forming each of the light paths is less by 3 than LED Number (X) of the light-emitting device forming a pair with the light-receiving device. This group of light paths will be referred to as a group of light paths of order r=−3.

The order r of each group of light paths and LED Number (X) and PTr Number (X) of the light-receiving device and the light-receiving device, respectively, forming each of the light paths of the group of light paths, satisfy the relationship as expressed by formula (1):
r=PTr Number(X)−LED Number(X)  (1)

While the description given above with reference toFIGS. 5-11relates to the groups of light paths formed by the light-emitting devices Lx1to Lx12and the light-receiving devices Px1to Px12arranged in X direction, the groups of light paths of orders r=0, +1, +2, +3, −1, −2, −3 are similarly formed by the light-emitting devices Ly1to Ly12and the light-receiving devices Py1to Py12arranged in Y direction.

[Actions Relating to Coordinate Recognition]

Actions of the coordinate recognition apparatus will be described.FIG. 13is a flowchart illustrating actions of the coordinate recognition apparatus relating to coordinate recognition.

When the coordinate recognition apparatus starts an action relating to coordinate recognition, the controller2sets parameters necessary for the action at power-up, for example (Act1). The parameters set in this action include a threshold value Tthused for comparison with transmittance and maximum order r max (where r max≧1). The threshold value Tthis determined experimentally, empirically, or theoretically, and stored in advance in the ROM4, for example. The maximum value r max defines the maximum value and the minimum value of order r of the groups of light paths formed for coordinate recognition. That is, the groups of light paths are formed so as to satisfy −r max≦r≦+r max. Assume that the maximum order r max is set to 3 in the present embodiment. In this case, as shown inFIGS. 5 to 11, groups of light paths of orders r=0, +1, +2, +3, −1, −2, −3 are formed.

After setting the parameters, the controller2sets a reference value for each pair of a light-emitting device and a light-receiving device corresponding to one of the light paths included in the groups of light paths of each order r, i.e., all the light paths shown inFIG. 12(Act2).

More specifically, the controller2measures an output from each of the light-receiving devices Px1to Px12, Py1to Py9while the light-emitting devices Lx1to Lx12, Ly1to Ly9are turned off, and stores the measured values in the RAM5as background noise of the light-receiving devices Px1to Px12, Py1to Py9, from which the output has been made. After that, the controller2causes the light-emitting device to emit light and measures an output value from the light-receiving device, and determines a value obtained by subtracting the background noise of the light-receiving device stored in the RAM5from the measured output value, in terms of each of the pairs corresponding to all the light paths shown inFIG. 12. The value thus determined will be a reference value of each of the pairs. The controller2stores the determined reference value of each of the pairs in the RAM5.

Actions Act1,2are preparation processes for coordinate recognition. When actions Act1,2are completed, the controller2executes actions Acts3-12in order to recognize coordinates of the manipulation position, at which the user has manipulated.

That is, the controller2causes the light-emitting devices Lx1to Lx12and the light-receiving devices Px1to Px12arranged in X direction to perform scanning (Act3). More specifically, the controller2forms groups of light paths of orders r=0, +1, +2, +3, −1, −2, −3 shown inFIGS. 5-11in this order. The light paths included in each of the groups of light paths are formed in a time-division manner in ascending order of LED Number (X) of the light-emitting device of each of the pairs, for example. When a light path is formed by a pair of a light-emitting device and a light-receiving device, the controller2measures an output value from the light-emitting device, subtracts background noise of the light-emitting device stored in the RAM5in Act2from the measured value, obtains a transmittance by dividing the subtracted value by the reference value of the pair stored in the RAM5in Act2, and stores the obtained transmittance in the RAM5. Thus, the result of measuring each pair forming a light path as shown inFIGS. 5-11is obtained as a transmittance.

An example of a distribution of transmittances obtained in Act3is shown inFIG. 14. This example shows a state in which the oval region at the left part ofFIG. 14is manipulated by a finger of the user, for example, and thereby the light paths are partially interrupted. The solid lines indicate light paths that are not shielded and the dashed lines indicate light paths that have been shielded. In the transmittance distribution shown at the right part ofFIG. 14, the regions out of the detection range, i.e., the region other than the region where orders r=0, +1, +2, +3, −1, −2, −3 is diagonally shaded.

As shown in the right part ofFIG. 14, the transmittance of a pair corresponding to a shielded light path becomes low.FIG. 14shows a state in which only one portion on the XY plane is manipulated by the user. When a plurality of portions are manipulated simultaneously, however, a plurality of regions having a low transmittance will appear on the transmittance distribution (seeFIG. 18).

After obtaining transmittances in Act3, the controller2calculates, based on the transmittances, a position p of the light-receiving device in X direction corresponding to the light path that passes through the center of the light shield region and a position l of the light-emitting device in X direction corresponding to the same light path, with respect to the group of light paths of each order r (Act4).

A scheme of calculating the positions p, l will be described with reference toFIG. 15. In the graph shown inFIG. 15, the transmittances of the light paths forming a group of light paths of order r=0 are plotted in the order of PTr Number (X) of the light-receiving device corresponding to each of the light paths, which corresponds to the case where two portions on the XY plane are simultaneously manipulated by the user. The transmittances corresponding to the light paths shielded by the two manipulated portions are lower than a threshold value Tth. The controller2obtains PTr Number (X) corresponding to the center of two intersections of the transmittance and the threshold value Tthexisting in the neighborhood of the region where the transmittance is lower than the threshold voltage Tth. In this case, PTr Number (X) to be obtained is not necessarily an integer but an actual number, which can be a decimal numerical value, and is referred to as pri. It is to be noted that r is the above-described order (0 in the example ofFIG. 15) and i (which is a positive integer) is an identification number used to identify a plurality of light shield regions. In the present embodiment, the identification number i is assigned in ascending order, starting from 1, to PTr Number (X) corresponding to the center of the two intersections.

When priis determined, since order r is known, LED Number (X) corresponding to priis obtained by substituting the obtained value of priinto PTr Number (X) of formula (1). As with LED Number (X), the value of PTr Number (X) to be obtained is not necessarily an integer but an actual number, which can be a decimal numerical value, and is referred to as lri.

After Act4, the controller2determines a regression line (first regression line) for each identification number i, using the position (pri, lri) relating to each of the groups of light paths of each of orders r as a sample, with respect to the PL plane in which a position P of the light-receiving device in X direction and a position L of the light-emitting device in X direction are formed as two axes that are orthogonal to each other (Act5). It is to be noted that the position P of the light-receiving device in X direction is represented by PTr Number (X), and the position L of the light-emitting device in X direction is represented by LED Number (X).

More specifically, in Act5, the controller2calculates a gradient aiand an intercept biof the regression line for each identification number i. The regression line is expressed by formula (2):
P=aiL+bi(1≦i≦Nx)  (2)
where Nxdenotes the number of light shield regions formed simultaneously on the XY plane, i.e., the maximum value of the identification number i.

For example, when the position (pr1, lr1) of the identification number i=1 of each of orders r is calculated in Act4, as shown in the plot ofFIG. 16, the regression line of the position (pri, lri) will be as shown by S ofFIG. 17. Such a regression line can be determined by a known approach, such as least-square approach.

When a plurality of light shield regions are simultaneously formed on the XY plane (Nx≧2), the controller2calculates a gradient aiand an intercept biof each of Nxnumber of regression lines.FIG. 18shows transmittance distribution, a plot of the position (pri, lri), and regression lines when i=2. When two light shield regions exist as in this case, the controller2calculates a gradient a1and an intercept b1of a regression line S1corresponding to i=1, and a gradient a2and an intercept b2of a regression line S2corresponding to i=2.

After Act5, the controller2calculates an X-direction coordinate xXand a Y-direction coordinate yXfor each identification number i, based on the obtained regression line (Act6). Hereinafter, the coordinates (xX, yX) corresponding to the identification number i will be noted as (xXi, yXi).

A scheme of calculating the coordinates (xXi, yXi) will be described with reference toFIG. 19. An XY plane is defined as having the origin at the lower left end of the region A shown inFIG. 1and including X-axis extending along X direction and Y-axis extending along Y direction. The distance (height along Y direction of the region A) between the array of the light-emitting devices Lx1to Lx12and the array of the light-receiving devices Px1to Px12is represented by h, the distance (width along X direction of the region A) between the array of the light-emitting devices Ly1to Ly9and the array of the light-receiving devices Py1to Py9is represented by w, the central coordinates of the light shield region B formed by a finger of the user, for example, are represented by (xt, yt), the X coordinate of the light-emitting device forming the light path passing through the central coordinates (xt, yt) is represented by l, and the X coordinate of the light-receiving device forming the same light path is represented by p. In this case, the relationship between l and p is expressed by the following formula (3):
p={1−h/(h−yt)}l+hxt/(h−yt)  (3)

Hence, the locus of the center of the light shield region B in the PL plane is expressed by the following formula (4):
P={1−h/(h−yt)}L+hxt/(h−yt)  (4)

That is, the gradient a and the intercept b of the straight line expressed by formula (4) are expressed by formulas (5) and (6):
a=1−h/(h−yt)  (5)
b=hxt/(h−yt)  (6)

Based on the formulas (5) and (6), the central coordinates (xt, yt) of the light shield region are expressed by formulas (7) and (8):
xt=b/(1−a)  (7)
yt={−a/(1−a)}h(8)

Since P=xtis given when L=P is assumed in formula (4), the intersection of the locus of the center of the light shield region and the diagonal P=L give the central coordinates xtof the light shield region B.

In the present embodiment, assuming that the regression line expressed by the gradient aiand the intercept biobtained in Act5agrees with the straight line expressed by formula (4), the coordinates (xXi, yXi) are calculated. That is, based on the formulas (7) and (8), the coordinates (xXi, yXi) are obtained from formulas (9) and (10):
xXi=bi/(1−ai)  (9)
yXi={−ai/(1−ai)}h(10)

In Act6, the controller2substitutes the gradient aiand the intercept biobtained in Act5into the formulas (9) and (10), and calculates the central coordinates (xXi, yXi) of the light shield region corresponding to each identification number i.

As described in Acts3-6, after calculating the central coordinates (xXi, yXi) of the light shield region using the light-emitting devices Lx1to Lx12and the light-receiving devices Px1to Px12arranged in X direction, the controller2calculates the central coordinates (xYj, yYj) of the light shield region using the light-emitting devices Ly1to Ly9and the light-receiving devices Py1to Py9arranged in Y direction.

The procedure of calculating the central coordinates (xYj, yYj) is similar to the procedure of calculating the central coordinates (xXi, yXi). That is, the controller2causes the light-emitting devices Ly1to Ly9and the light-receiving devices Py1to Py9arranged in Y direction to perform scanning, as in Act3(Act7).

After obtaining transmittances in Act7, the controller2calculates a position p in Y direction of the light-receiving device corresponding to the light path that passes through the center of the light shield region of each order r, and a position l in Y direction of the light-emitting device corresponding to the same light path, based on the obtained transmittances, as in Act4(Act8). The positions p, l obtained in this action will be referred to as prj, lrj, respectively. In this case, j represents an identification number designed to identify a plurality of light shield regions, and is equivalent to the identification number i.

After Act8, as in Act5, the controller2determines a regression line (second regression line) for each identification number j, using the position (prj, lrj) relating to each of the groups of light paths of orders r as a sample, with respect to the PL plane in which a position P of the light-receiving device in Y direction and a position L of the light-emitting device in Y direction are formed as two axes orthogonal to each other (Act9).

After Act9, as in Act6, the controller2calculates an X-direction coordinate xYand a Y-direction coordinate yYof the center of the light shield region of each identification number j, based on the calculated gradient ajand intercept bj(Act10). Hereinafter, the coordinates (xY, yY) corresponding to the identification number j will be referred to as (xYj, yYj).

Instead of the formulas (9) and (10), the central coordinates (xYj, yYj) can be obtained by the following formulas (11) and (12):
xYj={−aj/(1−aj)}w(11)
yXi=bj/(1−aj)  (12)

After calculating the central coordinates (xXi, yXi) by causing the light-emitting devices Lx1to Lx12and the light-receiving devices Px1to Px12to perform scanning (Act3to Act6), and then calculating the central coordinates (xYj, yYj) by causing the light-emitting devices Ly1to Ly9and the light-receiving devices Py1to Py9to perform scanning (Act7to Act10), the controller2associates the central coordinates (xXi, yXi) and the central coordinates (xYj, yYj) with each other (Act11).

Normally, the maximum value NXof the identification number i and the maximum value NYof the identification number j agree. However, when the user simultaneously operates a plurality of points that are very close to one another, for example, the light shield regions may be overlapped with one another and the maximum values NX, NYmay not agree. In view of the above, in the present embodiment, the central coordinates (xXi, yYi) and the central coordinates (xYj, yYj) are associated based on the premise that the maximum values NX, NYdo not necessarily agree.

More specifically, the controller2calculates a distance dijbetween the central coordinates (xXi, yXi) and the central coordinates (xYj, yYj) of all the combinations of the identification numbers i, j. The relationship between the obtained distance dijand the identification numbers i, j are shown inFIG. 20.

After calculating the distance dij, the controller2compares the maximum values NX, NY. When NX≧NYas a result of this comparison, the controller2retrieves the minimum distance dijof each identification number i. That is, the minimum number is retrieved from each of the columns of the table shown inFIG. 20. After that, the controller2associates the central coordinates (xXi, yXi) and the central coordinates (xYj, yYj) of the identification numbers i, j, corresponding to the retrieved minimum value. In this case, NXnumber of association results are obtained. For example, in the example ofFIG. 20, since 5.13, 0.22, 3.4, . . . 5.25 are the minimum values in the columns where i=1, 2, 3, . . . NX, respectively, the central coordinates (xXi, yXi) and (xYj, yYj) are associated for each of the pairs of (i, j)=(1, 2), (2, 2), (3, 1), . . . (NX, NY).

On the other hand, when the result of the comparison is NX<NY, the controller2retrieves the smallest distance dijof each identification number j. That is, the controller2retrieves the minimum value in each of the lines of the table shown inFIG. 20. After that, the controller2associates the central coordinates (xXi, yXi) and the central coordinates (xYj, yYj) of the identification numbers i, j, corresponding to the retrieved minimum value. In this case, NYnumber of association results are obtained. In the example ofFIG. 20, for example, since 3.4, 0.22, . . . 5.25 are the minimum values of the lines where j=1, 2, 3, . . . NY, respectively, the central coordinates (xXi, yXi) and (xYj, yYj) of each of the pairs of (i, j)=(3, 1), (2, 2), . . . (NX, NY) are associated.

After Act11, the controller2determines k number of conclusive X-direction coordinates x and conclusive Y-direction coordinates y of the center of the light shield position, based on the result of associations between the central coordinates (xXi, yXi) and (xYj, yYj), where is the number of the association results. In this case, k is an integer, and the relation 1≦k (=i)≦NXis satisfied when NX≧NYand the relation 1≦k (=j)≦NYis satisfied when NX<NY. Hereinafter, k number of coordinates (x, y) determined in Act12will be referred to as (xk, yk).

After Act12, the controller2outputs the determined coordinates (xk, yk) into the host computer60as manipulation coordinates, at which the user has manipulated. By thus using the manipulation coordinates thus input from the coordinate recognition apparatus1, the host computer60executes a variety of processes.

After Act12, the controller2performs the actions from Act3again.

When the user region A is not manipulated by the user, since the light paths of each order r in X direction and Y direction are not shielded, the light shield center (pri, lri) is not determined in Act4to Act8. In this case, the controller2skips actions Act12and Act13, for example, and returns to action Act3. When the coordinates (xk, yk) cannot be determined appropriately, which is regarded as an error, the manipulation coordinates are not output to the host computer and the procedure is returned to Act3.

Actions from Act3to Act13are continuously executed until an instruction to stop operation of the coordinate recognition apparatus is given, or the power is interrupted, for example.

As described above, the coordinate recognition apparatus of the present embodiment forms a group of light paths (−r max to r max) by selectively driving the light-emitting devices Lx1to Lxn and the light-receiving devices Px1to Pxn arranged in parallel to each other, such that the angle of the light paths varies from group to group, identifies the position pX, lXfor each group of light paths, and calculates the central coordinates (xX, yX) of the region in which light is shielded by an object such as a finger of the user, based on the identified positions pX, lX.

Further, the coordinate recognition apparatus forms a group of light paths (−r max to r max) having different light path angles by selectively driving the light-emitting devices Ly1to Lym and the light-receiving devices Py1to Pym arranged in parallel to each other, identifies the positions pY, lYof each of the groups of light paths, and calculates the central coordinates (xY, yY) of the region in which light is shielded by an object such as a finger of the user, based on the identified positions pY, lY.

According to the above-described configuration, since the light paths are formed close to one another in the XY plane, compared to the case where the light paths are formed only by opposite pairs of light-emitting devices and light-receiving devices, the manipulation position, at which the user has manipulated, can be specified with high precision.

Further, according to the above-described configuration, two-dimensional central coordinates (xX, yX) and (xY, yY) can be recognized using light-receiving devices and light-receiving devices arranged in a one-dimensional array. While the conclusive coordinates (x, y) are determined using the central coordinates (xX, yX), (xY, yY) in the present embodiment, one of the central coordinates (xX, yX), (xY, yY) may be configured to be output to the host computer60. In that case, the configuration of the coordinate recognition device can be simplified, since the light-emitting devices Lx1to Lxn and the light-receiving devices Px1to Pxn, or the light-emitting devices Ly1to Lym and the light-receiving devices Py1to Pym are not provided.

Of the obtained central coordinates (xX, yX), (xY, yY), the coordinate recognition apparatus determines the coordinate xXas the conclusive X-direction coordinate x of the center of the light shield region, and the coordinate yYas the conclusive Y-direction coordinate y of the center of the light shield region.

According to the configuration of the coordinate recognition apparatus of the present embodiment, the coordinate xXmeasured using the light-emitting devices Lx1to Lxn and the light-receiving devices Px1to Pxn arranged in X direction has a smaller error than the coordinate xYmeasured using the light-emitting devices Ly1to Lym and the light-receiving devices Py1to Pym arranged in Y direction. It is thereby estimated that the coordinate yYmeasured using the light-emitting devices Ly1to Lym and the light-receiving devices Py1to Pym arranged in Y direction has a smaller error than the coordinate yXmeasured using the light-emitting devices Lx1to Lxn and the light-receiving devices Px1to Pxn arranged in X direction. Hence, precision in coordinate recognition is further improved by setting xX, yYas the conclusive coordinates of the center of the light shield region.

Further, according to the coordinate recognition apparatus of the present embodiment, even when a plurality of light shield regions are simultaneously formed, the central coordinates (xX, yX), (xY, yY) of each of the light shield regions or the conclusive central coordinates (xX, yY) of each of the light shield regions can be calculated.

MODIFICATION EXAMPLE

While the groups of light path are formed in the order of orders r=0, +1, +2, +3, −1, −2, −3 in Act3and Act7in the above-described embodiments, the groups of light paths of orders r may be formed in another order. Further, while the light paths included in each of the groups of light paths are formed in a time-division manner in ascending order of LED Number (X) of the light-emitting device of each pair in the above-described embodiment, the light paths may be formed in another order. Moreover, an action of forming a light path in a time-division manner between a light-emitting device and a light-receiving device forming a pair with the light-receiving device in each of the groups of light paths of orders r may be performed in terms of all the light-emitting devices. Even in that case, the groups of light paths as shown inFIGS. 5 to 11are similarly obtained.

In the above-described embodiment, of the central coordinates (xX, yX), (xY, yY) obtained in Act6and Act10, the coordinate xXis determined as the conclusive X-direction coordinate x of the center of the light shield region, and the coordinate yYis determined as the conclusive Y-direction of the center of the light shield region. The coordinate (x, y), however, may be determined by another method, e.g., by determining an intermediate point between the coordinates xXand xYas the coordinate x and determining an intermediate point between the coordinate yXand yYas the coordinate y, for example.

In the above-described embodiment, a case is described where PTr Number (X) corresponding to the center of two intersections of the transmittance and the threshold voltage Tthis obtained with respect to each of the regions where the transmittance is lower than the threshold voltage Tth, and the identification number i is assigned thereto, starting from 1, in ascending order of PTr Number (X), and a regression line is obtained by using the position (pri, lri) to which the same identification number i is assigned as a sample group. However, the above-described sample of one group may be determined by another method. For example, the sample group may be obtained by obtaining one or more positions (pr, lr) for each order r without assigning the identification number i thereto, dividing the positions (pr, lr) into groups using a pattern recognition algorithm based on the distribution of the positions (pr, lr) on the PL plane, and assigning identification numbers i which are different from one another. In the PL plane, the positions (pr, lr) of the same light shield region have a linear correlation as shown inFIG. 16. Accordingly, in the above-described pattern recognition, positions (pr, lr) having such a linear relation should be categorized into one group. The identification number j may also be assigned using pattern recognition, as with the identification number i.

Further, the execution order of the actions shown in the flowchart ofFIG. 13may be varied as appropriate. For example, actions Act3to Act6may be replaced with actions Act7to Act10.