Method and apparatus for display image adjustment
First Claim
1. A graphic user interface for reducing distortion in a projected image, comprising:
- handles projected with the projected image, the handles associated with vertices of the projected image, the handles selectable and moveable by a user for adjusting the projected image.
1 Assignment
0 Petitions
Accused Products
Abstract
Method and apparatus for display image adjustment is described. More particularly, handles associated with polygon vertices of a polygon rendered image are provided as a graphical user interface (GUI). These handles may be selected and moved by a user with a cursor pointing device to adjust a displayed image for keystoning, among other types of distortion. This GUI allows a user to adjust a projected image for position of a projector with respect to imaging surface, as well as for imaging surface contour, where such contour may be at least substantially planar, cylindrical, or spherical and where such contour may comprise multiple imaging surfaces. This advantageously may be done without special optics or special equipment. An original image is used as texture for rendering polygons, where the image is applied to the rendered polygons.
-
Citations
61 Claims
-
1. A graphic user interface for reducing distortion in a projected image, comprising:
handles projected with the projected image, the handles associated with vertices of the projected image, the handles selectable and moveable by a user for adjusting the projected image. - View Dependent Claims (2, 3, 4, 5, 6)
-
7. A method for reducing distortion in a displayed image, comprising:
-
obtaining image content;
storing the image content as a texture, the texture having a set of texels;
applying at least one polygon to the image content, the at least one polygon having vertices, the vertices associated with texture coordinates in the texture;
displaying at least one handle with the displayed image, the at least one handle related to a vertex of the vertices;
moving the at least one handle to adjust the displayed image;
updating location of the at least one handle in response to movement of the at least one handle;
changing the vertex in response to the location of the at least one handle update;
changing the texture coordinates in response to the vertex change; and
changing the displayed image in response to change of the texture coordinates for adjustment of the displayed image. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14)
-
-
15. A method of correcting a distortion in a displayed image, comprising:
-
obtaining image content;
storing the image content as a texture;
rendering polygons for the image content, each polygon of the polygons having vertices, wherein at least some of the vertices are associated with texture coordinates within the texture;
displaying handles for the displayed image associated with the image content, the handles associated with the at least some of the vertices; and
receiving locations of the handles, the received locations affecting the at least some of the vertices associated with the handles, wherein the handles are moveable to change the displayed image. - View Dependent Claims (16, 17)
-
-
18. A method for counteracting distortion of a displayed image, comprising:
-
obtaining image content;
writing pixel values for the image content to an off-screen medium;
rendering polygons using the image content written to the off-screen medium as a texture; and
providing moveable vertices associated with the polygons, the vertices associated with texture coordinates within the texture, the moveable vertices moveable for counteracting distortion of the displayed image. - View Dependent Claims (19, 20, 21, 22, 23, 24)
-
-
25. A graphic user interface for reducing distortion in a displayed image, comprising:
objects displayed with the displayed image, the objects associated with vertices of the displayed image, the objects selectable and moveable by a user for adjusting the displayed image. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32)
-
33. A method for associating positions, comprising:
-
providing image content;
displaying the image content as a screen display image;
graphically processing the image content, the graphical processing including, mapping the image content with polygons having vertices;
projecting the image content after graphical processing as a projected display image;
selecting a projected position of the projected display image;
associating the projected position with a polygon of the polygons; and
locating a screen position relative to the polygon and the projected position. - View Dependent Claims (34, 35)
-
-
36. A method for determining associated cursor positions between user interfaces, comprising:
-
providing a first user interface;
providing a second user interface, the second user interface a graphically processed version of the first user interface;
associating map coordinates with first positions in the first user interface;
associating vertex locations with second positions in the second user interface;
obtaining a first cursor position in the second user interface from the second positions; and
processing the map coordinates using the vertex locations and the cursor position to determine from the first positions a second cursor position in the first user interface.
-
-
37. A method for determining associated cursor positions between user interfaces, comprising:
-
providing a screen display user interface;
graphically processing the screen display user interface to provide a projected user interface with vertex locations;
associating map coordinates with screen display positions;
obtaining a projected cursor position of the projected user interface from the vertex locations; and
processing the map coordinates using the vertex locations and the projected cursor position to determine from the map coordinates a screen display cursor position of the screen display user interface. - View Dependent Claims (38, 39, 40, 41, 42)
-
-
43. A method for determining a first cursor position, comprising:
-
associating map coordinates with positions in a first user interface;
associating vertex locations with positions in a second user interface, the second user interface being a graphically processed version of the first user interface;
receiving a second cursor position within the second user interface; and
interpolating the map coordinates using the vertex locations and the second cursor position to determine the first cursor position. - View Dependent Claims (44, 45, 46, 47, 48)
-
-
49. A portable device configured for displaying a graphic user interface for adjusting an image, comprising:
memory, the memory configured for storing the image as a texture and for storing a program product, the program product configured to provide vertices for the image and to provided handles for projection with the image and associated with the vertices, the handles moveable for adjusting the image.
-
50. A portable device configured with a method for displaying a graphic user interface, the method comprising:
-
sending the graphic user interface to a first display;
storing the graphic user interface as a texture;
rendering a plurality of polygons, each polygon comprising vertices, at least some of the vertices associated with texture coordinates within the texture;
rendering a plurality of handles, at least some of the handles associated with some of the vertices;
sending the rendered polygons and rendered handles to a second display device; and
receiving locations of the handles, the received locations affecting the associated vertices, thereby changing the rendered polygons.
-
-
51. A signal-bearing medium containing a program which, when executed by a processor in at least partial response to obtaining image content, causes execution of a method comprising:
-
storing the image content as a texture, the texture having a set of texture coordinates;
applying at least one polygon to the image content, the at least one polygon having vertices, the vertices associated with the set of texture coordinates of the texture;
displaying at least one handle with the displayed image, the at least one handle related to a vertex of the vertices;
moving the at least one handle to adjust the displayed image;
updating location of the at least one handle in response to movement of the at least one handle;
changing the vertex in response to the location of the at least one handle update;
changing texture coordinates of the set of texture coordinates in response to the vertex change; and
changing the displayed image in response to change of the texture coordinates of the set of texture coordinates for adjustment of the displayed image.
-
-
52. A signal-bearing medium containing a program which, when executed by a processor in at least partial response to obtaining image content, causes execution of a method comprising:
-
storing the image content as a texture;
rendering polygons for the image content, each polygon of the polygons having vertices, wherein at least some of the vertices are associated with texture coordinates within the texture;
displaying handles for the displayed image associated with the image content, the handles associated with the at least some of the vertices; and
receiving locations of the handles, the received locations affecting the at least some of the vertices associated with the handles, wherein the handles are moveable to change the displayed image.
-
-
53. A signal-bearing medium containing a program which, when executed by a processor in at least partial response to obtaining image content, causes execution of a method comprising:
-
writing pixel values for the image content to an off-screen medium;
rendering polygons using the image content written to the off-screen medium as a texture; and
providing moveable vertices associated with the polygons, the vertices associated with texture coordinates within the texture, the moveable vertices moveable for counteracting distortion of the displayed image.
-
-
54. A signal-bearing medium containing a program which, when executed by a processor in at least partial response to obtaining image content, causes execution of a method comprising:
-
displaying the image content as a screen display image;
graphically processing the image content, the graphical processing including, mapping the image content with polygons having vertices;
projecting the image content after graphical processing as a projected display image;
selecting a projected position of the projected display image;
associating the projected position with a polygon of the polygons; and
locating a screen position relative to the polygon and the projected position.
-
-
55. A signal-bearing medium containing a program which, when executed by a processor in at least partial response to cursor movement, causes execution of a method comprising:
-
providing a first user interface;
providing a second user interface, the second user interface a graphically processed version of the first user interface;
associating map coordinates with first positions in the first user interface;
associating vertex locations with second positions in the second user interface;
obtaining a first cursor position in the second user interface from the second positions; and
processing the map coordinates using the vertex locations and the cursor position to determine from the first positions a second cursor position in the first user interface.
-
-
56. A signal-bearing medium containing a program which, when executed by a processor in at least partial response to cursor movement, causes execution of a method comprising:
-
providing a screen display user interface;
graphically processing the screen display user interface to provide a projected user interface with vertex locations;
associating map coordinates with screen display positions;
obtaining a projected cursor position of the projected user interface from the vertex locations; and
processing the map coordinates using the vertex locations and the projected cursor position to determine from the map coordinates a screen display cursor position of the screen display user interface.
-
-
57. A signal-bearing medium containing a program which, when executed by a processor in at least partial response to cursor movement, causes execution of a method comprising:
-
associating map coordinates with positions in a first user interface;
associating vertex locations with positions in a second user interface, the second user interface being a graphically processed version of the first user interface;
receiving a second cursor position within the second user interface; and
interpolating the map coordinates using the vertex locations and the second cursor position to determine the first cursor position.
-
-
58. A method of providing a common cursor on different displays, comprising:
-
obtaining screen image coordinates for a first cursor;
determining a polygon mapped to a screen image in which the first cursor is located; and
determining texture coordinates for a second cursor in response to the polygon and the screen image coordinates. - View Dependent Claims (59)
-
-
60. A method for adjusting for anisotropic distortion, comprising:
-
rendering an unadjusted image with polygons;
selecting vertices of the polygons associated with corners of the unadjusted image;
moving at least one vertex of the vertices selected to provide an adjusted image;
calculating a center of the adjusted image in response to the vertices for the adjusted image; and
adjusting the adjusted image for anisotropic distortion in response to the center calculated.
-
-
61. A method for adjusting for anisotropic distortion, comprising:
-
rendering an image with polygons; and
rendering a handle centered to the image, the handle moveable by a user for adjusting the image for anisotropic distortion in response to movement thereof.
-
Specification