Seeing eye mouse for a computer system
First Claim
1. An optical motion detector circuit for use in a hand held pointing device for a computer system, said device being movable across an illuminated work surface having surface height irregularities, said illumination producing highlights upon surface height irregularities that extend out of the desktop surface and that intercept the illumination and shadows upon surface height irregularities that extend into the desktop surface and whose illumination is blocked by adjacent surface height irregularities that are illuminated, the highlights and shadows forming a pattern that varies as a function of rotations and translations of the device relative to the work surface, the circuit comprising:
- an array of photo detectors, each photo detector having an output on which an output value is provided;
a memory containing a reference frame of digitized photo detector output values that is stored in a reference array of memory locations corresponding to the array of photo detectors and a sample frame of digitized photo detector output values obtained subsequent to the reference frame and that is stored in a sample array of memory locations corresponding to the array of photo detectors;
arithmetic comparison circuits coupled to the reference and sample frames in the memory of the optical motion detector circuit for measuring an amount of correlation between the reference frame and the sample frame;
wherein a plurality of comparison frames, each being a shifted version of one of the reference frame or the sample frame, is correlated with the other of the reference frame or the sample frame to ascertain motion in directions along first and second axes, the correlation producing motion signals indicative of motion of the device across the work surface in directions along first and second axes and relative to the surface height irregularities of the illuminated portion of the surface; and
a circuit for inhibiting production of motion signals when the arithmetic comparison circuits measure an amount of correlation between the reference frame and the sample frame that is less than an amount of correlation corresponding to a predetermined distance from the work surface.
8 Assignments
0 Petitions
Accused Products
Abstract
An optical mouse images as an array of pixels the spatial features of generally any micro textured or micro detailed work surface below the mouse. The photo detector responses are digitized and stored as a frame into memory. Motion produces successive frames of translated patterns of pixel information, which are compared by autocorrelation to ascertain the direction and amount of movement. A hold feature suspends the production of movement signals to the computer, allowing the mouse to be physically relocated on the work surface without disturbing the position on the screen of the pointer. This may be needed if the operator runs out of room to physically move the mouse further, but the screen pointer still needs to go further. The hold feature may be implemented with an actual button, a separate proximity detector or by detecting the presence of a characteristic condition in the digitized data, such as loss of correlation or velocity in excess of a selected limit. A convenient place for an actual hold button is along the sides of the mouse near the bottom, where the thumb and the opposing ring finger grip the mouse. The gripping force used to lift the mouse engages the hold function. Hold may incorporate a brief delay upon either the release of the hold button, detection of proper proximity or the return of reasonable digitized values. During that delay any illumination control or AGC servo loops stabilize. A new reference frame is taken prior to the resumption of motion detection.
148 Citations
8 Claims
-
1. An optical motion detector circuit for use in a hand held pointing device for a computer system, said device being movable across an illuminated work surface having surface height irregularities, said illumination producing highlights upon surface height irregularities that extend out of the desktop surface and that intercept the illumination and shadows upon surface height irregularities that extend into the desktop surface and whose illumination is blocked by adjacent surface height irregularities that are illuminated, the highlights and shadows forming a pattern that varies as a function of rotations and translations of the device relative to the work surface, the circuit comprising:
-
an array of photo detectors, each photo detector having an output on which an output value is provided;
a memory containing a reference frame of digitized photo detector output values that is stored in a reference array of memory locations corresponding to the array of photo detectors and a sample frame of digitized photo detector output values obtained subsequent to the reference frame and that is stored in a sample array of memory locations corresponding to the array of photo detectors;
arithmetic comparison circuits coupled to the reference and sample frames in the memory of the optical motion detector circuit for measuring an amount of correlation between the reference frame and the sample frame;
wherein a plurality of comparison frames, each being a shifted version of one of the reference frame or the sample frame, is correlated with the other of the reference frame or the sample frame to ascertain motion in directions along first and second axes, the correlation producing motion signals indicative of motion of the device across the work surface in directions along first and second axes and relative to the surface height irregularities of the illuminated portion of the surface; and
a circuit for inhibiting production of motion signals when the arithmetic comparison circuits measure an amount of correlation between the reference frame and the sample frame that is less than an amount of correlation corresponding to a predetermined distance from the work surface.
-
-
2. An optical motion detector circuit for use in a hand held pointing device for a computer system, said device being movable across an illuminated work surface having surface height irregularities, said illumination producing highlight upon surface height irregularities that extend out of the desktop surface and that intercept the illumination and shadows upon surface height irregularities that extend into the desktop surface and whose illumination is blocked by adjacent surface height irregularities that are illuminated, the highlights and shadows forming a pattern that varies as a function of rotations and translations of the device relative to work surface, the circuit comprising:
-
an array of photo detectors, each photo detector having an output on which an output value is provided;
a memory containing a reference frame of digitized photo detector output values that is stored in a reference array of memory locations corresponding to the array of photo detectors and a sample frame of digitized photo detector output values obtained subsequent to the reference frame and that is stored in a sample array of memory locations corresponding to the array of photo detectors;
arithmetic comparison circuits coupled to the reference and sample frames in the memory of the optical motion detector circuit for measuring an amount of correlation between the reference frame and the sample frame;
wherein a plurality of comparison frames, each being a shifted version of one of the reference frame or the sample frame, is correlated with the other of the reference frame or the sample frame to ascertain motion in directions along first and second axes, the correlation producing motion signals indicative of motion of the device across the work surface in directions along first and second axes and relative to the surface height irregularities of the illuminated portion of the surface; and
a circuit for inhibiting production of motion signals when the arithmetic comparison circuits measure an amount of correlation between the reference frame and the sample frame that fails to exhibit a selected curvature.
-
-
3. An optical motion detector circuit for use in a hand held pointing device for a computer system, said device being movable across au illuminated work surface having surface height irregularities, said illumination producing highlight upon surface height irregularities that extend out of the desktop surface and that intercept the illumination and shadows upon surface height irregularities that extend into the desktop surface and whose illumination is block by adjacent surface height irregularities that are illuminated, the highlights and shadows forming a pattern that varies as a function of rotations and translations of the device relative to the work surface, the circuit comprising:
-
an array of photo detectors, each photo detector having an output on which an output value is provided;
a memory containing a reference frame of digitized photo detector output value that is stored in a reference array of memory locations corresponding to the array of photo detectors and a sample frame of digitized photo detector output values obtained subsequent to the reference frame and that is stored in a sample array of memory locations corresponding to the array of the photo detectors;
arithmetic comparisons circuits coupled to the reference and sample frames in the memory of the optical motion detector circuit for measuring an amount of correlation between the reference frame and the sample frame;
wherein a plurality of comparison frames, each being a shifted version of one of the reference frame or the sample frame, is correlated with the other of the reference frame or the sample frame to ascertain motion in directions along first and second axes, the correlation producing motion signals indicative of motion of the device across the work surface in directions along first and second axes and relative to the surface height irregularities of the illuminated portion of the surface; and
a circuit for inhibiting production of motion signals when the arithmetic comparison circuits measure an amount of correlation between the reference frame and the sample frame indicative of a velocity of the device that exceeds a predetermined limit.
-
-
4. An optical motion detector circuit for use in a hand held pointing device for a computer system, said device being movable cross an illuminated work surface having surface height extend out of the desktop surface and that intercept the illumination and shadows upon surface height irregularities that extend into the desktop surface and whose illumination is blocked by adjacent surface height irregularities that are illuminated, the highlights and shadows forming a pattern that varies as a function of rotations and translations of the device relative to the work surface, the circuit comprising:
-
an array of photo detectors, each photo detector having an output on which an output value is provided;
a memory containing a reference frame of digitized photo detector output values that is stored in a reference array of memory locations corresponding to the array of photo detectors and a sample frame of digitized photo detector output values obtained subsequent to the reference frame and that is stored in a sample array of memory locations corresponding to the array of photo detectors;
arithmetic comparison circuits coupled to the reference and sample frames in the memory of the optical motion detector circuit for measuring an amount of correlation between the reference frame and the sample frame;
wherein a plurality of comparison frames, each being a shifted version of one of the reference frame of the sample frame, is correlated with the other of the reference frame or the sample frame to ascertain motion in directions along first and second axes, the correlation production motion signals indicative of motion of the device across the work surface in directions along first and second axes and relative to the surface height irregularities of the illuminated portion of the surface; and
a circuit for inhibiting production of motion signals when the arithmetic comparison circuits measure an amount of correlation between the reference frame and the sample frame indicative of motion of the device in a time interval that exceeds a predetermined limit.
-
-
5. An optical motion detector circuit for use in a hand held pointing device that generates motion signals for a computer system, said device being movable across an illuminated work surface having surface height irregularities, said illumination producing highlights upon surface height irregularities that extend out of the desktop surface and that intercept the illumination and shadows upon surface height irregularities that extend into the desktop surface and whose illumination is blocked by adjacent surface height irregularities that are illuminated, the highlights and shadows forming a pattern that varies as a function of rotations and translations of the device relative to the work surface, the circuit comprising:
-
an array of photo detectors, each photo detector having an output on which an output value is provided;
a memory containing a reference frame of digitized photo detector output value that is stored in a reference array of memory locations corresponding to the array of photo detectors end a sample frame of digitized photo detector output values obtained subsequent to the reference frame and that is stored in a sample array of memory locations corresponding to the array of photo detectors;
wherein a plurality of comparison frames, each being a shifted version of one of the sample frame to produce correlation values from which can be determined motion of the device in directions along first and second axes, and an arithmetic comparison mechanism coupled to the plurality of correlation values, and wherein the motion signals are not output to the computer system whenever a correlation surface described by the plurality of correlation values fails to exhibit a selected curvature.
-
-
6. An optical motion detector circuit for use in a hand held pointing device that generates motion signals for a computer system, said device being movable across an illuminated work surface having surface height irregularities, said illumination producing highlights upon surface height irregularities that extend out of the desktop surface and that intercept the illumination and shadows upon surface height irregularities that extend into the desktop surface and whose illumination is blocked by adjacent surface height irregularities that are illuminated, the highlights and shadows forming a pattern that varies as a function of rotations and translations of the device relative to the work surface, the circuit comprising:
-
an array of photo detectors, each photo detector having an output on which an output value is provided;
a memory containing a reference frame of digitized photo detector output values that is stored in a reference array of memory locations corresponding to the array of photo detectors and a sample frame of digitized photo detector output values obtained subsequent to the reference frame and that is stored in a sample array of memory locations corresponding to the array of photo detectors;
wherein a plurality of comparison frames, each being a shifted version of one of the reference frame or the sample frame, is correlated with the other of the reference frame or the sample frame to produce correlation values from which can be determined motion of the device in directions along first and second axes, and an arithmetic comparison mechanism coupled to the plurality of correlation values, and wherein the motion signals are not output to the computer system whenever the amount of correlation is less than an amount of correlation corresponding to a predetermined distance between the device and the work surface.
-
-
7. An optical motion detector circuit for use in a hand held pointing device for a computer system, said device being movable across an illuminated work surface having surface height irregularities, said illumination producing highlights upon surface height irregularities that extend out of the desktop surface and that intercept the illumination and shadows upon surface height irregularities that extend into the desktop surface and whose illumination is blocked by adjacent surface height irregularities that are illuminated, the highlights and shadows forming a pattern that varies as a function of rotations and translations of the device relative to the work surface, the circuit comprising:
-
an array of photo detectors, each photo detector having an output on which an output value is provided;
a memory containing a reference frame of digitized photo detector output values that is stored in a reference array of memory locations corresponding to the array of photo detectors and a sample frame of digitized photo detector output values obtained subsequent to the reference frame and that is stored in a sample array of memory locations corresponding to the array of photo detectors;
wherein a plurality of comparison frames, each being a shifted version of one of the reference frame or the sample frame, is correlated with the other of the reference frame or the sample frame to produce correlation values from which can be generated motion signals indicative of motion of the device in directions along first and second axes; and
an arithmetic comparison mechanism for inhibiting output of the motion signals to the computer systems whenever the motion signals indicate a velocity that exceeds a preselected limit.
-
-
8. An optical motion detector circuit for use in a hand held pointing device for a computer system, said device being movable across an illuminated work surface having surface height irregularities, said illumination producing highlights upon surface height irregularities that extends out of the desktop surface and that intercept the illumination and shadows upon surface height irregularities that extend into the desktop surface and whose illumination is blocked by adjacent surface height irregularities that are illuminated, the highlights and shadows forming a pattern that varies as a function of rotations and translations of the device relative to the work surface, the circuit comprising:
-
an array of photo detectors, each photo detector having an output on which an output value is provided;
a memory containing a reference frame of digitized photo detector output values that is stored in a reference array of memory locations corresponding to the array of photo detectors and a sample frame of digitized photo detector output values obtained subsequent to the reference frame and that is stored in a sample array of memory locations corresponding to the array of photo detectors;
wherein a plurality of comparison frames, each being a shifted version of one of the reference frame or the sample frame, is correlated with the other of the reference frame or the sample frame to generate motion signals indicative of motion of the device in directions along first and second axes;
a proximity detector that detects when the device is away from the work surface by more than a selected distance including arithmetic comparison circuits coupled to the reference and sample frames in the memory of the optical motion detection circuit, the proximity detector detecting an amount of correlation between the reference frame and sample frames that is less than an amount of correlation corresponding to the selected distance; and
a signal input from a proximity detector that detects when the device is away from the work surface by more than a selected distance, said signal input inhibiting production of the motion signals when the device is away from the work surface by more than the selected distance.
-
Specification