A. D. Wilson (Microsoft), "Optical flow-based manipulation of graphical objects," US20060284874, Dec. 21, 2006.
Abstract: Motion of one or more physical objects relative to a display surface of a display system is detected and an optical flow determined from the motion is used to manipulate a graphical object presented on the display surface. The one or more physical objects are detected in response to light reflected from the object(s) and received by a video camera. The optical flow is determined from the video camera image by identifying flow vectors for points in one or more patches included in the image that correspond to the physical objects. A proximity of a physical object to the display surface can be determined based on an intensity of light reflected from the physical object(s), or using a touch sensor such as a capacitance, pressure, or electromagnetic sensor or the like. Based on the optical flow, the graphical object can be translated, rotated, and/or scaled in size.
Exemplary Claim: A method of manipulating a graphical object presented on a display surface in response to a movement of one or more physical objects that are adjacent to the display surface, comprising the steps of: (a) creating a first image of the display surface in which one or more patches are included that represent one or more portions of the physical object at a first time index; (b) creating a second image of the display surface in which the one or more patches are included and which represent the one or more portions of the physical object at a second time index occurring after the first time index; (c) determining flow vectors describing a two-dimensional motion for at least some points in the one or more patches at the first time index and the second time index, the optical flow vectors defining an optical flow for the one or more portions of the one or more physical objects; and (d) manipulating the graphical object by applying the optical flow to the graphical object presented on the display surface.