Patent ID: 7046231

Claim:
A cursor control system for moving a cursor on a screen during a succession of cycles, said succession of cycles being a period during which said cursor is moved in incremental distances from an initial location to a final location, said system comprising: a computer having (a) monitor; (b) a first memory; (c) a second memory; (d) a memory for storing an application program arranged to control a cursor on said monitor screen; a transparent medium forming a part of a surface of said computer; said transparent medium having an outside surface accessible for contact to a surface of an object to form an interface between said transparent medium and said object; a camera enclosed, in said computer, having a field of view and comprising an array of photosensors wherein said array has integer 3n columns and integer 3n rows of photosensors; an LED enclosed in said computer; said LED arranged to illuminate said interface and form an image of said interface on said array of photosensors; each photosensor has a location defined by a row coordinate x, and a column coordinate y; said first and second memories each having an array of addresses wherein each address, i,j corresponds to location x y, in said photosensor array; i and j are integers between 1 and 3n in said first memory for storing image signals of a current cycle; i and j are integers between 1 and n in said second memory for storing image signals of a central cluster of image signals which represent a central region of said interface image determined during a most recent previous cycle; said application program programmed to store current image signals, ΣP′ ij , at respective 9n 2 addresses i,j in the first memory during a current cycle replacing data stored during the previous cycle; said application program programmed to form a plurality of correlation values, N rs , wherein N rs =Σ n i=1 Σ n j=1 ( P ij −P′ i+r,j+s ) 2 for addresses, r,s wherein r,s are integers and r,s are selected in an order according to a selection process; said plurality of correlation numbers formed until integers r′,s′ are determined where N r′s′ =0 wherein r′,s′ represent a new location of said central cluster during the current cycle; said application program programmed to transfer the image signals Σ n j=1 Σ n i=n P i+r′,j+s′ from respective addresses i+r′,j+s′ in said first memory to addresses i,j in said second memory; said process for selecting r,s being: (i) beginning with r=0, and, for each r, (ii) incrementing by 1 each value of s between −r and r; then (iii) decrementing by 1 each value of r between r and −r for s=r; then (iv) decrementing by 1 each value of s between r and −r; then (v) incrementing by 1 each value of r between −r and r.