This invention relates to image projection and, more specifically, to an improved system and method of correcting keystone distortion of projected images.
Projection systems are commonly used in academic, business, and personal environments to project images on screens or walls. The display of these projected images is dependent upon the orientation of the projection systems relative to the screens or walls. For instance, when a projection system is not oriented perpendicularly to a screen, the shape of the image will often appear stretched, deformed, or otherwise misshapen. This distortion of the projected image is often referred to as keystoning, since the shape of distorted image typically resembles a trapezoid or keystone.
There are several ways to correct keystone distortion. Projection systems might, for example, include optics that compensate for keystone distortion. These optics, however, are costly and prone to dust collection that degrades the quality of the projected images. Projection systems might also include gauges used to manually adjust the projected image to eliminate or minimize keystone distortion. These manual adjustments however tend to move the projected image off of the screen or wall and are typically time consuming, cumbersome, and generally an unwelcome set up complication.
Most projection systems additionally include signal processing circuits, for example, to oppositely distort the image to compensate for keystone distortion prior to projecting the image. These signal processing circuits typically distort the image according to distortion values pre-calculated from 100 or more points of the image. Although this technique may alleviate most, if not all, keystone distortion, it is complicated to set-up or recalibrate the projection system. For example, when the projection system is reoriented or repositioned, the system needs to identify new points of the image and recalculate the distortion values, which often requires floating point processes that exceed real time system capability. These complex pre-calculations result in the lack of real time distortion value calculations, which hinder the incorporation of advance functionality into the projection systems, such as image zoom and lens replacement, and impede projection system mobility. Accordingly, a need remains for a system and method for improved keystone correction.
The foregoing and other objects, features, and advantages of the invention will become more readily apparent from the following detailed description of embodiments that proceed with reference to the following drawings.
The projector 102 manipulates image signals 108 it receives from an image source, i.e., a personal computer 106 or the like. A person of reasonable skill in the art should recognize that the projector 102 might receive different types of image signals, e.g., digital or analog signals, from the personal computer 106. The image signals 108 represent still, partial, or full motion images of the type rendered by the personal computer 106.
The projector 102 casts the image signals 108 onto the projection surface 114. The resulting projected image 118 centers about a projection axis 116. An angle 112 exists between the projection axis 116 and the projection surface 114. The angle 112 changes responsive to changes in the angle 110.
The projected image 118 may be substantially undistorted if the projection axis 116 is perpendicular to the projection surface 114. That is, the image 118 may be undistorted when the angle 112 is 90 degrees. Likewise, the projected image 118 distorts when the projection axis 116 is not perpendicular to the projection surface 114. This distortion is termed keystone distortion (or keystoning) because the image may appear wider at the top than at the bottom as shown in the jagged lined image 122. The projector 102, however, includes keystone correction functionality to pre-distort the image data 108, so that the projected image 118 appears undistorted when projected onto projection surface 114. Embodiments of the projection system 100 and the keystone correction functionality will be discussed below in greater detail.
Likewise, a video receiver or decoder 222 decodes an analog video signal 212 from a video source 204 that reads information stored on a disc 201 such as a CD or a DVD. The video source 204 might be a video camcorder and the like. The decoder 222 converts the analog video signal 212 into digital image data 108 and provides it to the controller 250.
A modem or network interface card (NIC) 224 receives digital data 214 from a global computer network 206 such as the Internet®. The modem 224 provides digital image data 108 to the controller 250.
A Digital Visual Interface (DVI) receiver 226 receives digital RGB signals 216 from a digital RGB source 208. The DVI receiver 226 provides digital image data 108 to the controller 250. A person of reasonable skill in the art should recognize other sources and other converters come within the scope of the present invention, such as a tuner 228 that receives a television broadcast signal 218 from an antenna 219 and provides digital image data 108 to the controller 250, for example.
The controller 250 generates projection data 132 by manipulating the digital image data 108. The controller 250 provides the projection data 132 to projection device 260. The projection device 260 is any device capable of projecting the projection data 132 to a projection surface 114 (
The controller 250 may scale the digital image data 108 for proper projection by the projection device 260 using a variety of techniques including pixel replication, spatial and temporal interpolation, digital signal filtering and processing, and the like. The controller 250 may include a keystone controller 300 to pre-distort the digital image data 108 to correct keystone distortion that would appear when the projection data is displayed by the projection device 260. Embodiments of the keystone controller 300 will be described below in greater detail.
In another embodiment, the controller 250 might additionally change the resolution of the digital image data 108, changing the frame rate and/or pixel rate encoded in the digital image data 108. A person of reasonable skill in the art should recognize that the controller 250 manipulates the digital image data 108 and provides projection data 132 to a projection device 260 for image projection.
Read-only (ROM) and random access (RAM) memories 240 and 242, respectively, are coupled to the display system controller 250 and store bitmaps, FIR filter coefficients, and the like. A person of reasonable skill in the art should recognize that the ROM and RAM memories 240 and 242, respectively, might be of any type or size depending on the application, cost, and other system constraints. A person of reasonable skill in the art should recognize that the ROM and RAM memories 240 and 242 might not be included in the system 200. A person of reasonable skill in the art should recognize that the ROM and RAM memories 240 and 242 might be external or internal to the controller 250. Clock 244 controls timing associated with various operations of the controller 250. A person of reasonable skill in the art should recognize that the projector 102 might house all or part of the projection system 202, e.g., the controller 250, clock 244, RAM 242, ROM 240, projection device 260, as well as the optics and electronics necessary to project the projection data 132.
Referring back to
A keystone corrected image 520 may be a keystone corrected projection of the distorted image 510. The keystone corrected image 520 has a plurality of corners 504 that may be within the projection of the distorted image 510. The input values 322 may include a plurality of the edge-centers 502 associated with the distorted image 510 and a plurality of the corners 504 associated with the keystone corrected image 520. In some embodiments, the keystone tables 320-1 to 320-N (
Referring to
By using the input values 322, the keystone driver 310 may generate the keystone scaling values 312 on-the-fly, or in real time, instead of through complicated pre-calculation as described above. This, in turn, allows the keystone controller 300 to stream keystone scaling values 312 to the keystone corrector 400 and to dynamically switch among the input values 322 within the keystone tables 320-1 to 320-N. Since the keystone controller 300 may store multiple input values 322 in the keystone tables 320-1 to 320-N, the projection system 200 may be reconfigured without undue delay resulting from complicated pre-calculation. The operation of the keystone driver 310 will be described below in greater detail.
The keystone controller 300 may include an interface to provide the keystone driver 310 with the input values 322. The interface 330 may determine the input values 322 automatically, from user input, or both. For instance, the interface 330 may be a graphical user interface (GUI) for receiving user input. In some embodiments, the interface 330 may include automatically receive the input values 322 from a source internal or external to the projection system 200. The keystone driver 310 may store the input values 322 from the interface 330 to at least one of the keystone tables 320-1 to 320-N for use in generating the keystone scaling values 312.
The interface 330 may also provide orientation data 332 to the keystone driver 310. The orientation data 332 may correspond to one or more sets of the input values 322. For instance, the orientation data 332 may identify a set of input values 322 that corresponds to a particular lens or zoom position of the projection system 200. The keystone driver 310 may store or retrieve sets of input values 322 from the keystone tables 320-1 to 320-N responsive the orientation data 332. When the keystone driver 310 is retrieving input values 322 for a particular configuration of the projection system 200 (
The InputHeight and InputCenter are associated with the distorted image 510 (
Similarly, as shown below in Equations 3 and 4, the keystone driver 310 may determine the horizontal scaling value (HorizontalScaler) and horizontal increment value (HorizontalScalingIncrement) from the input values 322.
Since Equations 3 and 4 each have two unknowns, the horizontal scaling value (HorizontalScaler) and horizontal increment value (HorizontalScalingIncrement), the keystone driver 310 may compute the horizontal scaling value (HorizontalScaler) and horizontal increment value (HorizontalScalingIncrement) according to the InputHeight, OutputHeight, InputCenter and OutputCenter derived above.
In a block 630, the keystone driver 310 provides the keystone scaling values 312 to the keystone corrector 400. The keystone corrector 400 generates the projection image data 132 from the keystone scaling values 312. The keystone corrector 400 includes keystone correction functionality to pre-distort the image data 108 according to the keystone scaling values 312 and thus generate the projection image data 132. In some embodiments, the keystone corrector 400 may interpolate the vertical scaling value (VerticalScaler), the vertical increment value (VerticalScalingIncrement), the horizontal scaling value (HorizontalScaler), and the horizontal increment value (HorizontalScalingIncrement) to maintain a correct aspect ratio in the keystone corrected image 520 (
Having illustrated and described the principles of our invention, it should be readily apparent to those skilled in the art that the invention may be modified in arrangement and detail without departing from such principles. We claim all modifications coming within the spirit and scope of the accompanying claims.
This application is a continuation-in-part of U.S. patent application Ser. Nos. 10/723,002, filed Nov. 26, 2003, 10/753,833, filed Jan. 5, 2004, and 10/832,488, filed Apr. 26, 2004. U.S. patent application Ser. Nos. 10/723,002 and 10/753,833 claim priority from U.S. provisional patent application 60/443,422, filed Jan. 28, 2003. U.S. patent application Ser. No. 10/832,488 claims priority from U.S. patent application Ser. No. 10/753,833, which claims priority to U.S. provisional patent application 60/443,422 filed Jan. 28, 2003. We incorporate the all of these applications in their entirety.
| Number | Name | Date | Kind |
|---|---|---|---|
| 5355188 | Biles et al. | Oct 1994 | A |
| 5720539 | Woo | Feb 1998 | A |
| 6056408 | Kobayashi | May 2000 | A |
| 6169535 | Lee | Jan 2001 | B1 |
| 6289735 | Dister | Sep 2001 | B1 |
| 6305805 | Leibenow | Oct 2001 | B1 |
| 6310662 | Sunakawa et al. | Oct 2001 | B1 |
| 6339434 | West et al. | Jan 2002 | B1 |
| 6367933 | Chen et al. | Apr 2002 | B1 |
| 6520547 | Robinson | Feb 2003 | B2 |
| 6520646 | Rodriquez et al. | Feb 2003 | B2 |
| 6520647 | Raskar | Feb 2003 | B2 |
| 6592228 | Kawashima et al. | Jul 2003 | B1 |
| 6611260 | Greenberg et al. | Aug 2003 | B1 |
| 6686973 | Su | Feb 2004 | B2 |
| 6793347 | Morishita | Sep 2004 | B2 |
| 6836298 | Song et al. | Dec 2004 | B2 |
| 6843563 | Richardson | Jan 2005 | B2 |
| 6843569 | Hirao et al. | Jan 2005 | B2 |
| 6846081 | Mochizuki et al. | Jan 2005 | B2 |
| 6867753 | Chinthammit et al. | Mar 2005 | B2 |
| 6877863 | Wood et al. | Apr 2005 | B2 |
| 6962417 | Teng | Nov 2005 | B1 |
| 6963348 | Diamond et al. | Nov 2005 | B2 |
| 6974217 | Kimura et al. | Dec 2005 | B2 |
| 6997563 | Wang | Feb 2006 | B1 |
| 7175286 | Wang et al. | Feb 2007 | B1 |
| 20010000300 | Haile-mariam | Apr 2001 | A1 |
| 20020008697 | Deering | Jan 2002 | A1 |
| 20020060754 | Takeuchi | May 2002 | A1 |
| 20020063726 | Jouppi | May 2002 | A1 |
| 20020089651 | Ejiri et al. | Jul 2002 | A1 |
| 20020109668 | Rosenberg et al. | Aug 2002 | A1 |
| 20030222892 | Diamond et al. | Dec 2003 | A1 |
| 20030234797 | Williams et al. | Dec 2003 | A1 |
| 20040036844 | Wood | Feb 2004 | A1 |
| 20040095317 | Zhang et al. | May 2004 | A1 |
| 20050168705 | Li et al. | Aug 2005 | A1 |
| 20060203207 | Ikeda et al. | Sep 2006 | A1 |
| 20060204125 | Kempf et al. | Sep 2006 | A1 |
| Number | Date | Country | |
|---|---|---|---|
| Parent | 10753833 | Jan 2004 | US |
| Child | 11532358 | US | |
| Parent | 10723002 | Nov 2003 | US |
| Child | 10753833 | US |