An image processing apparatus for reducing a load of processing of an interpolation operation at the time of a correction of keystone distorted image is provided. The image processing apparatus has an interpolating unit (11, 12) for receiving as input original image data, executing a first interpolation operation a plurality of times with respect to a plurality of original pixel data arranged in one direction of a vertical direction or a horizontal direction in the original image data, executing a second interpolation operation in the other direction, and generating new image data and a storing unit (13) for storing the interpolated data (Va to Vd) obtained by the first interpolation operations, wherein, where a combination of a plurality of original pixel data is the same as a combination used when the interpolated data (Va= to Vd=) already stored in the storing unit (13) were calculated, the interpolating unit (12) reads out that interpolated data from the storing unit (13) and uses the same for the second interpolation operation.
|
1. An image conversion apparatus comprising:
an interpolating means for executing a first interpolation operation by a plurality of original pixel data arranged in one of a vertical or horizontal direction in an input original image, executing a second interpolation operation in the other direction different from said one direction using the plurality of interpolated data obtained by said first interpolation operation, and generating new image data at the interpolation points, and
a storing means for storing said interpolated data obtained by said first interpolation operation, wherein,
if a combination of said plurality of original pixel data is the same as a combination previously used when calculating said interpolated data already stored in said storing means, said interpolating means reads out that interpolated data from said storing means and uses the same for said second interpolation operation.
19. An image conversion method including:
an address generation step of generating first interpolation addresses by a first relationship equation with a coefficient of a coordinate parameter of a first direction among horizontal and vertical directions set as “1” and generating second interpolation addresses by a second relationship equation with a coefficient of the coordinate parameter of the second direction different from said first direction set as “1”;
a first interpolation step of selecting a plurality of original pixel data arranged in said second direction of the input original image by using said first interpolation addresses and repeatedly executing a first interpolation operation a plurality of times; and
a second interpolation step of selecting a plurality of interpolated data arranged in said first direction generated by said first interpolation operation by using said second interpolation addresses and executing a second interpolation operation at the interpolation points to generate new pixel data.
17. An image conversion method comprising:
a first interpolation step of repeatedly executing a first interpolation operation for a plurality of original pixel data arranged in either of a vertical or horizontal direction of an input original image;
a data storage step of temporarily storing a plurality of interpolated data generated by the first interpolation operations in a storing means;
a second interpolation step of generating new pixel data by executing a second interpolation operation with respect to the plurality of interpolated data in the other direction different from said one direction; and
a step of generating new pixel data by repeating the first interpolation step, the data storage step, and the second interpolation step, wherein,
in the step of generating new pixel data, if a combination of a plurality of original pixel data is the same as a combination previously used when calculating the interpolated data and already stored in the storing means, that interpolated data is read out from the storing means and used for the second interpolation operation.
18. An image conversion method which, when projecting an image to a projection surface by utilizing light, converts an input original image to an image having distortion corrected in accordance with the angle of said projection on a projection surface by interpolation processing and outputs the same to a display means, comprising:
a step of generating addresses of an image suffering from distortion;
a step of mapping for linking positional information of a distortion-free original image with addresses of the image suffering from distortion;
a step of selecting a plurality of original image data for every intersecting point based on the intersecting points between an address line of an image suffering from distortion generated by said address generating means corresponding to display positions of said display means in a first direction among horizontal and vertical directions and a plurality of lines connecting the original pixels in a second direction different from said first direction;
a step of executing a first interpolation operation at said intersecting points used as the reference at the time of selection for each set of the selected original image data; and
a step of executing a second interpolation operation in the horizontal direction with respect to a plurality of interpolated data obtained by the first interpolation operation and generating new pixel data to be output to the display means based on the correspondences of the addresses obtained by the mapping.
15. An image projection apparatus having a display means having display pixels arranged in a matrix in first and second directions intersecting each other orthogonally and a projecting means for projecting an image displayed at the display means to a projection surface utilizing light from a light source and having a function of, when projecting an image to said projection surface, converting an input original image to an image having distortion corrected in accordance with the angle of said projection to a normal line of said projection surface by interpolation processing, comprising
an address generating means for generating addresses of an image suffering from distortion corresponding to positions displayed on said display means;
a mapping means for linking positional information of a distortion-free original image with said addresses of the image suffering from distortion;
a selecting means for selecting a plurality of original image data of said second direction for every intersecting point based on the intersecting points between an address line of said image suffering from distortion generated by said address generating means corresponding to said display pixels arranged in said first direction and the plurality of lines connecting said pixels in said second direction; and
an interpolating means for executing a first interpolation operation at said intersecting points used as the reference at the time of the selection for each set of selected original pixel data, executing a second interpolation operation in said first direction with respect to the obtained plurality of interpolated data, and generating new pixel data to be output to the display means based on the correspondences between the addresses and said positional information obtained from said mapping means.
16. An image projection apparatus having a display means having display pixels arranged in a matrix in first and second directions intersecting each other orthogonally and a projecting means for projecting an image displayed at the display means to a projection surface utilizing light from a light source and having a function of, when projecting an image to said projection surface, converting an input original image to an image having distortion corrected in accordance with the angle of said projection to a normal line of said projection surface by interpolation processing, comprising
an address generating means for finding first interpolation addresses by a first relationship equation with a coefficient of a coordinate parameter of said first direction in coordinates based on the pixel position of the original image set as “1” and finding second interpolation addresses by a second relationship equation with a coefficient of a coordinate parameter of said second direction set as “1”;
a mapping means for linking positional information of a distortion-free original image with said addresses of the image suffering from distortion; and
an interpolating means for finding the positions of the intersecting points between an address line of said image suffering from distortion generated by said address generating means corresponding to the display pixels of said first direction and a plurality of lines connecting the original pixels in said second direction by using said first interpolation addresses, executing the first interpolation operation at these intersecting points, executing the second interpolation operation at the interpolation points found by using the second interpolation addresses for the obtained interpolated data, and generating new pixel data to be displayed on the display means based on the correspondences of addresses obtained from the mapping means.
2. An image conversion apparatus as set forth in
3. An image conversion apparatus as set forth in
4. An image conversion apparatus as set forth in
5. An image conversion apparatus as set forth in
said storing means comprises a memory for storing at least one line's worth of said plurality of interpolated data to be used for interpolation of said interpolation points arranged in said inclined line, and
said interpolating means repeatedly executes said first interpolation operation for each line and repeatedly executes said second interpolation operation while changing the combination of interpolated data selected from said one line's worth of interpolated data obtained.
6. An image conversion apparatus as set forth in
7. An image conversion apparatus as set forth in
said image conversion apparatus comprises an image conversion apparatus which, when projecting an image onto a projection surface by utilizing light, converts said original image to an image having distortion corrected in accordance with an angle of said projection with respect to a normal line of said projection surface by interpolation processing and outputs the result to a display means,
which image conversion apparatus comprises:
an address generating means for generating addresses of the image suffering from said distortion corresponding to display positions of said display means and
a mapping means for linking positional information of the distortion-free original image with said addresses of the image suffering from distortion, wherein
said interpolating means generates the new pixel data to be output to said display means based on the correspondences between said addresses and said positional information obtained from said mapping means by the execution of a plurality of said first interpolation operations using said storing means and said second interpolation operation.
8. An image conversion apparatus as set forth in
9. An image conversion apparatus as set forth in
10. An image conversion apparatus as set forth in
11. An image conversion apparatus as set forth in
12. An image conversion apparatus as set forth in
13. An image conversion apparatus as set forth in
14. An image conversion apparatus as set forth in
|
The present invention relates to an image conversion apparatus and an image conversion method for converting an input original image to a new image by an interpolation operation and to an image projection apparatus for generating data of an image having distortion corrected on a substantially vertical projection surface by an interpolation operation.
An image projection apparatus referred to as a “projector” has a display means, for example, an LCD (liquid crystal display). The display means is made to display the image and project the image onto a projection surface such as an external screen. At this time, if a projection angle of the image from the liquid crystal projector with respect to the projection surface is inclined, the image which should inherently be rectangular becomes distorted in a trapezoidal state on the screen.
For this reason, a liquid crystal projector provided with a so-called keystone correction function for reversely distorting the image on the liquid crystal panel to correct the trapezoidal distortion of the image on the screen has been known.
Usually, a projector is provided with a pixel number conversion function in accordance with the type or resolution of various input images or for realizing a PinP (Picture in Picture) function. As the function for pixel number conversion of a projector, there are a function for generating addresses after conversion and an interpolation operation function for generating one pixel data from among a plurality of pixel data selected from an input image by an interpolation operation for every generated address.
In the image conversion, generally, as shown in
In order to generate interpolated pixel data corresponding to the interpolation addresses by the interpolation operation, for example, for each address, a plurality of peripheral original pixel data around the corresponding location of the original image are selected by a predetermined rule and added weighted by a predetermined rule. The data is generated repeatedly to generate all interpolated pixel data, then, as shown in
In trapezoidal distortion correction in the horizontal direction, the interpolation addresses are not given in parallel with respect to the scanning line direction as in
While correction of distortion in the horizontal direction was explained above, distortion in the vertical direction can also be corrected by the same method. At the time of correction of distortion in the vertical direction, a group of addresses representing the trapezoidal distorted image flaring out upward or downward is generated, and an interpolation operation is carried out at each of the address points.
On the other hand, in the case of projection from a slant having any angles horizontally and vertically with respect to the projection surface, the distortions in the horizontal direction and the vertical direction are combined and the image becomes complicatedly distorted, so generation of a group of addresses representing the distortion is complicated. Note if it were only possible to efficiently generate the group of addresses, the interpolation operation itself could be carried out in the same way as the other case mentioned above.
When including a distortion component in the horizontal direction as mentioned above, as shown in FIG. 28B-1, a line connecting the interpolation addresses will obliquely cross a plurality of horizontal lines (a plurality of horizontal scanning lines) of the original image. For this reason, in the interpolation of a pixel, it is necessary to use the plurality of pixel data of the original image existing around the interpolation address point horizontally and vertically, so a two-dimensional interpolation operation becomes necessary. For this operation, a two-dimensional interpolation filter can be used. Note, generally, use is made of two one-dimensional interpolation filters independent vertically and horizontally for reasons of operation scale, restriction of the bit size of the memory, degree of freedom of setup, etc. For example, by passing the original image data through the vertical one-dimensional interpolation filter first and then further passing the interpolated data generated by this through the horizontal one-dimensional interpolation filter, new pixel data is generated.
An interpolation coefficient is determined by the distance between the interpolation position and the pixel data, therefore an interpolation coefficient (filter coefficient) with respect to each phase can be represented by a function h(x) of the distance in an x-axis direction at this time. Accordingly, pixel data g of the illustrated interpolation point Q at this time can be represented by the convolution operation shown in equation (1) using original pixel data A, B, C, and D.
q=Axh(−6/5)+Bxh(−1/5)+Cxh(4/5)+Dxh(9/5) (1)
In actuality, a variety of values can be considered for the interpolation function h(x). Also, the image quality can be changed by changing the characteristics of the interpolation filter.
A filter unit 200 has a vertical interpolation filter (VIF) 201, a horizontal interpolation filter (HIF) 202, a selector (SEL) 203, and a storing means 204. The original pixel data and a set of filter coefficients are input to the vertical interpolation filter 201 first. By passing the original pixel data through the vertical interpolation filter 201, the filter operation shown in equation (1) is executed and interpolated data generated by using for example four vertical direction pixel data is output. This is repeated at for example four columns of pixels around the interpolation point, whereby four vertical direction interpolated data Va, Vb, Vc, and Vd are sequentially output from the vertical interpolation filter 201 to the selector 203. The selector 203 sequentially distributes the four vertical direction interpolated data Va, Vb, Vc, and Vd to predetermined storage portions (or predetermined addresses) in the storing means 204 while switching the output. When the four interpolated data Va, Vb, Vc, and Vd are assembled, the storing means 204 outputs them to the horizontal interpolation filter 202. The horizontal interpolation filter 202 executes a one-dimensional (horizontal direction) filter operation in accordance with the input set of filter coefficients and outputs the result as new pixel data.
In this way, in order to generate one new pixel data, horizontal and vertical (N×M) number of data of the original image, i.e., 4×4=16 data in the above example, are used. In order to generate one new pixel data, the interpolation operation by the N-tap vertical interpolation filter is carried out M number of times (N=M=4 in the above example). For the M number of one-dimensional interpolated data V1, V2, . . . , VM generated by this, an interpolation operation by the M-tap horizontal interpolation filter is executed only one time.
In the interpolation operation processing of a pixel carried out in the image conversion unit of the image projection apparatus mentioned above, the number of the original pixel data extracted is set to N in the vertical direction and M in the horizontal direction (N and M: natural numbers of 2 or more). In general, the higher the order of the interpolation function h(x) of equation (1) used for realizing high precision interpolation, the larger the numbers N and M of this original pixel data extracted and the larger the number of taps of the filter too. Further, in order to perform the distortion correction in the horizontal direction with a high precision, a certain number of original pixel data becomes necessary in not only the horizontal direction, but also the vertical direction. In this case, in order to raise the degree of freedom of placement of the projector, it is important that large distortion of an image can be corrected. From this viewpoint, the numbers N and M of the original pixel data extracted are set large in advance.
In the filter unit 200 having the configuration shown in
In the filter unit 200 illustrated in
In the image projection apparatus mentioned above, wasted repetition of the same operations frequently occurred due to the above reason or the improvement of the overall operation speed was unnecessarily limited due to the complicated address computations. For this reason, various restrictions arose, for example, the clock frequency etc. of the portions communicating with the memory had to be raised or the bit size of the memory had to be increased.
A first object of the present invention is to provide an image conversion apparatus and an image conversion method improving a processing speed of an interpolation operation and reducing a load on a required memory.
A second object of the present invention is to provide an image projection apparatus for generating data of an image able to correct distortion on a projection surface by using a method of an interpolation operation able to improve the processing speed of the interpolation operation and reduce the load on the memory.
According to a first aspect of the present invention, there is provided an image conversion apparatus comprising an interpolating means for executing a first interpolation operation by a plurality of original pixel data arranged in one direction of either a vertical or horizontal direction of the input original image, executing a second interpolation operation in the other direction different from the one direction by using a plurality of interpolated data obtained by the first interpolation operation, and generating new image data at an interpolation point, and a storing means for storing the interpolated data obtained by the first interpolation operation, wherein the interpolating means reads out the interpolated data from the storing means if a combination of the plurality of original pixel data is the same as a combination used when calculating the interpolated data already stored in the storing means and uses the same for the second interpolation operation.
According to a second aspect of the present invention, there is provided an image projection apparatus having a display means having display pixels arranged in a matrix in first and second directions orthogonal to each other and a projecting means for projecting an image displayed on the display means to a projection surface by utilizing light from a light source and having a function of converting an input original image to an image having distortion corrected in accordance with an angle of the projection with respect to a normal line of the projection surface when projecting the image to the projection surface, comprising an address generating means for generating addresses of an image suffering from distortion linked with positions of the display on the display means; a mapping means for linking pixel positions of the original image without distortion with the addresses of the image suffering from distortion; a selecting means for selecting a plurality of original image data in the second direction for every intersecting point based on intersecting points between an address line of the image suffering from distortion generated by the address generating means corresponding to the displayed pixels arranged in the first direction and a plurality of lines connecting the pixels in the second direction; and an interpolating means for executing a first interpolation operation at the intersecting points used as the reference at the time of the selection with respect to each set of selected original pixel data, executing a second interpolation operation in the first direction with respect to the obtained plurality of interpolated data, and generating new pixel data to be displayed on the display means based on a correspondence between the address and the position information obtained from the mapping means.
According to a third aspect of the present invention, there is provided an image projection apparatus having a display means having display pixels arranged in a matrix in first and second directions orthogonal to each other and a projecting means for projecting an image displayed on the display means to a projection surface by utilizing light from a light source and having a function of converting an input original image to an image having distortion corrected in accordance with an angle of the projection with respect to a normal line of the projection surface when projecting the image to the projection surface, comprising an address generating means for finding first interpolation addresses by a first relationship equation with a coefficient of a coordinate parameter of the first direction in coordinates based on the pixel position of the original image set as “1”, finding second interpolation addresses by a second relationship equation with a coefficient of a coordinate parameter in the second direction set as “1” and generating addresses of the image suffering from distortion; a mapping means for linking positional information of the original image without distortion with the addresses of the image suffering from distortion; and an interpolating means for finding positions of intersecting points between an address line of the image suffering from distortion generated by the address generating means corresponding to the displayed pixels in the first direction and a plurality of lines connecting the original pixels in the second direction by using the first interpolation addresses, executing the first interpolation operation at the intersecting points, executing the second interpolation operation at the interpolation points found by using the second interpolation addresses with respect to the obtained plurality of interpolated data, and generating new pixel data to be displayed on the display means based on correspondences of the addresses obtained from the mapping means.
According to a fourth aspect of the present invention, there is provided an image conversion method comprising a first interpolation step of repeatedly executing a first interpolation operation by a plurality of original pixel data arranged in one direction of either the vertical or horizontal direction of an input original image; a data storage step of temporarily storing a plurality of interpolated data generated by the first interpolation operation in a storing means; a second interpolation step of generating new pixel data by executing a second interpolation operation with respect to a plurality of the interpolated data in the other direction different from the one direction; and a step of generating new pixel data by repeating the first interpolation step, the data storage step, and the second interpolation step, wherein, in the step of generating the new pixel data, if the combination of plurality of the original pixel data is the same as a combination used when calculating the interpolated data already stored in the storing means, the interpolated data is read out from the storing means and used for the second interpolation operation.
According to a fifth aspect of the present invention, there is provided an image conversion method for converting an input original image projected onto a projection surface by utilizing light to an image having distortion corresponding to an angle of the projection corrected on the projection surface by using interpolation processing and outputting the same to a display means, comprising a step of generating addresses of the image suffering from distortion; a step of mapping linking pixel positions of the original image without distortion with the addresses of the image suffering from distortion; a step of selecting a plurality of original image data for every intersecting point based on intersecting points between an address line of the image suffering from distortion generated by the address generating means corresponding to the display position of the display means in a first direction between the horizontal and vertical directions and a plurality of lines connecting the pixels in a second direction different from the first direction; a step of executing a first interpolation operation at the intersecting points used as the reference at the time of selection for each set of selected original image data; and a step of executing a second interpolation operation in the horizontal direction with respect to a plurality of interpolated data obtained by the first interpolation operation and generating new pixel data to be displayed on the display means based on a correspondence of addresses obtained by the mapping.
According to a sixth aspect of the present invention, there is provided an image conversion method comprising an address generation step of generating first interpolation addresses by a first relationship equation with a coefficient of a coordinate parameter of a first direction between the horizontal and vertical directions set as “1” and generating a second interpolation address by a second relationship equation with a coefficient of a coordinate parameter of a second direction different from the first direction set as “1”; a first interpolation step of selecting a plurality of original pixel data arranged in the second direction of the input original image by using the first interpolation addresses and repeatedly executing the first interpolation operation a plurality of times; and a second interpolation step of selecting a plurality of interpolated data arranged in the first direction generated by the first interpolation operation by using the second interpolation addresses, executing a second interpolation operation at the interpolation points, and generating new pixel data.
Embodiments of an image projection apparatus (projector) and an image conversion method and apparatus of the present invention will be explained next by referring to the drawings.
In
A projector 1 and a screen 101 are arranged so that the center axis of the projection light indicated by the long broken line and the projection surface on which the video is projected, for example, the screen 101, are orthogonal when seen from above. The video projected by the projector 1 is a television video signal or signal of a computer screen. The shape of the display region of the video superimposed on these signals is a square having a ratio of the length of the sides (aspect ratio) of 4:3 or 16:9 as the overall video, although there is a difference in the number of pixels according to the signal, as can be understood also from a television receiver and a computer display. If the square video displayed on the LCD panel of the projector 1 is not straightly projected, the projected video will also not become square and consequently the original shape of the video will be distorted.
The projector 1 can be arranged in a horizontal plane Ph including the front position P0 and can be arranged in a vertical plane Pv including the front position P0. Further, the projector 1 can be freely arranged in any of a first quadrant ZONE1, a second quadrant ZONE2, a third quadrant ZONE3, and a fourth quadrant ZONE4 defined by the two planes Ph and Pv.
The projector 1 can project the image of the LCD panel inside it from any position so far as the position is within the above mentioned range. The projector 1 has a function of correcting the distortion of the image in accordance with the projection position. Accordingly, when it is made to function in this way, the image of a regular square having the same aspect ratio as that when projected from exactly the front surface can be projected onto the screen 101. This correction will be referred to as “keystone distortion correction”.
As shown in
In order to project an image from the projector 1 placed at side in this way and project the video on the screen 101 as if it was projected from the front, it is necessary to calculate in advance how the image would be distorted according to the projection position of the projector 1. At this time, by forming the image artificially distorted in the reverse direction with respect to the shape of distortion when the video is projected from the side and projecting it, even if the video is projected from the lateral direction, it can be made to appear the same way as that at the time when the image is projected from the front. In order to obtain the projected video as in
The horizontal keystone distortion of
In both of the cases of
Below, embodiments of the image projection apparatus and the image projection method able to perform such correction by converting the input image to the image of the LCD panel will be explained in more detail. In this image conversion, the general formula of the address generation able to simultaneously correct horizontal and vertical distortions is found taking as an example the case of projection from the third quadrant ZONE3 as shown in
The projector 1 has a circuit portion 2 including a circuit for applying various signal processing to a video signal (input video signal) VIDEO and circuits of various driving systems. The circuit portion 2 includes, in part of the signal processing circuit, a central processing unit (CPU) 2a as the control means and the processing means of the present invention, an address generation unit (ADG) 2b as the address generating means of the present invention, and a data interpolating means (INT) 2c. The projector 1 has a display means 3b for displaying an image 3a obtained by converting an original image indicated by a signal obtained by applying various signal processing to the input video signal VIDEO, for example, an LCD panel. Further, the projector 1 has a projecting unit 4 including a light source for illuminating the display means 3b and an optical unit 5 including various lenses for projecting the image 3a of the display means 3b illuminated by the projecting unit 4. The LCD panel 3 may be any of a transmission type or a reflection type. In either case, the image 3a is projected on a substantially perpendicular projection surface, for example, the screen 101, through the optical unit 5 as a projected image 101a. Three LCD panels 3 are provided for the RGB colors. The images of the different colors are combined in the optical unit 5.
The CPU 2a is one of the interpolating means in the broad sense since it controls the data interpolation. The CPU 2a and the data interpolating means 2c constitute one embodiment of the “interpolating means” in the present invention. The CPU 2a acts also as a selecting means for selecting the original pixel data and a mapping means for mapping for finding the relative relationship between addresses. The CPU 2a also has a role of controlling the rest of the configuration. Details of the computation and the mapping of the representative point address will be explained later. Further, the “storing means” in the present invention is provided inside the data interpolating means 2c, though not illustrated in the example illustrated in
The projector 1 has a means 6 for getting the relative relationship data indicating the relative relationship of images between the LCD panel 3 and the screen 101 (hereinafter referred to as the “relative relationship getting means”). The relative relationship getting (RRG) means 6 may take various forms, for example, an input unit for receiving as input the relative relationship data from the outside, an external operating means (button etc.), a storing means (for example, a ROM) storing the envisioned relative relationship data in advance, or a means for detecting the relative relationship by itself. The relative relationship getting means 6 gets for example at least a distance of the image up to the screen 101 and the angle formed by the optical axis of the optical unit 5 and the screen surface.
In a projector using a liquid crystal panel or other panel with fixed pixels, sometimes the number of pixels of the input original image and the number of pixels of the output image will be different. For this reason, the projector is provided with a signal processing function for converting the number of pixels. This will be referred to as a “scaling function”. In this processing, data at a position where the pixel data originally does not exist becomes necessary, so pixels are interpolated. In the interpolation operation, the pixel data of a target position is formed by using the data of the peripheral pixels. This function is realized by building in for example a circuit block referred to as a “scaler” in an image processing circuit referred to as an “image processor”.
The illustrated image processing circuit has a comb filter 21, a chroma decoder 22, a select switch (SW) 23, an analog-digital converter (A/DC) 24, an image processor 25, an image memory 26 made of an SDRAM, etc., and a CPU 2a. Among these, the image processor 25 and the CPU 2a are concrete examples of the configuration for realizing the function of image conversion. Note that it is also possible to integrally form the functions of these image memory 26 and the CPU 2a in the image processor 25.
The illustrated image processing circuit can handle a video signal of any of a composite video signal, a Y/C signal, and an RGB signal. The composite video signal is input to the comb filter 21, the Y/C signal is input to the chroma decoder 22, and the RGB signal is input to the select switch 23. When considering the case where a composite video signal is input, it is converted to the Y/C signal at the comb filter 21 and converted to a YUV signal at the subsequent chroma decoder 22. The signal selected by the select switch 23 is converted by the A/DC 24 and becomes a digital signal. This signal is input to the image processor 25, where the desired signal processing is carried out. At this time, the processing of the image processor 25 is controlled by the CPU 2a to which the relative relationship information RRI is input. The image memory 26 is appropriately used during the processing. After the desired signal processing is carried out, the processed signal is sent to the display means, for example, the LCD panel 3. The image to be projected is displayed on the LCD panel 3 based on this signal.
The image processor 25 has an IP (interlace-progressive) conversion unit 251, a scaler 252, a CPU interface 253, a memory control unit 254, and a read only memory (ROM) 255. The scaler 252 has an address generation unit 256 as an embodiment of the address generating means 2b shown in
The video signal input to the image processor 25 is sent to the IP conversion unit 251, where an interlace signal is converted to a progressive one. In this processing, the image memory 26 is used. By the connection of the IP conversion unit 251 to the memory control unit 254 as the memory interface, the IP conversion unit 251 transfers the image data with the image memory 26. The signal made progressive is sent to the scaler 252 for the scaling. Inside the scaler 252, addresses necessary for distortion correction are generated at the address generation unit 256. The coefficient generation unit 257 is made to generate filter coefficients and supply the generated filter coefficients to the filter unit 258. The filter unit 258 performs the interpolation operation using the given filter coefficients to convert the original image indicated by the input video signal to an image of the LCD panel having the predetermined size and shape. The signal of the converted image is output and sent to the LCD panel 3. The ROM 255 for holding the data such as the filter coefficients used in this interpolation operation is connected to the scaler 252. The interface 253 of the CPU 2a for controlling the image processing including this series of processing is connected to the IP conversion unit 251, the scaler 252, and the ROM 255.
The filter unit 258 includes a vertical direction interpolation filter (VIF) 11, a horizontal direction interpolation filter (HIF) 12, a storing means 13, and two selectors (SEL) 14 and 15. The storing means 13 includes a first register 13a and a second register 13b.
The original data and the vertical direction set of filter coefficients are input to the vertical direction interpolation filter 11. The output of the vertical direction interpolation filter 11 is connected to the input of the selector 14, while the output of the selector 14 is connected to the first register 13a. The output of the first register 13a is connected to the input of the second register 13b and the input of the selector 15. The output of the selector 15 is connected to the horizontal direction interpolation filter 12. The horizontal direction set of filter coefficients is input to the horizontal direction interpolation filter 12. New pixel data is output from the horizontal direction interpolation filter 12.
When the original pixel data and the set of filter coefficient are first input to the vertical direction interpolation filter 11, the required original pixel data is selected by the CPU 2a and the selected original pixel data is passed through the vertical direction interpolation filter 11, whereby a one-dimensional (vertical direction) filter operation is executed. The interpolation filter 11 outputs interpolated data generated by using for example four pixel data in the vertical direction. This is repeated at for example four pixel trains at the periphery of an interpolation point, whereby four interpolated data Va, Vb, Vc, and Vd in the vertical direction are sequentially output from the vertical direction interpolation filter 11 to the selector 14. The selector 14 distributes the four vertical direction interpolated data Va, Vb, Vc, and Vd to predetermined storage portions (or predetermined addresses) in the first register 13a while switching the output. When four interpolated data Va, Vb, Vc, and Vd are gathered, the first register 13a outputs them to the second register 13b and the selector 15. The four interpolated data Va, Vb, Vc, and Vd pass through the selector 15 and are input to the horizontal interpolation filter 12. The horizontal direction interpolation filter 12 executes a one-dimensional (horizontal direction) filter operation in accordance with the input set of filter coefficients and outputs the result as new pixel data.
In the same way as above, new pixel data are generated one after another. In order to generate one new bit of pixel data, four filter operations in the vertical direction and one filter operation in the horizontal direction are carried out. The second register 13b has a function of shifting the interpolated data. For this reason, the data transfer is possible, for example, the interpolated data Vc and Vd are shifted up to the position where the interpolated data Va= and Vb= are stored in
The CPU 2a controls the entire filter unit 258 including these registers 13a and 13b and selectors 14 and 15. Further, the CPU 2a controls the filter unit 258 and the coefficient generation unit 257 so as to control the vertical direction interpolation filter 11 so as not to continuously perform processing using the same filter coefficients by the same combination of original images. Instead of this, the vertical interpolation operation result (interpolated data) calculated the previous time is shifted to the required position in the second register 13b and given via the selector 15 to the horizontal direction interpolation filter 12 under the control of the CPU 2a.
Next, an explanation will be given of the address generation of a distorted image.
The relative relationship data from the relative relationship getting (RRG) means 6 is input to the CPU 2a (
Below, an explanation will be mainly given of the case where the image of the front projector is obliquely projected from a position oriented upward by α degrees in the vertical direction and rotated to the left by β degrees from the screen front surface in the horizontal direction based on the position of the front surface with respect to the screen.
When the angles α and β are positive, the projection position falls in the third quadrant ZONE3 of
As shown in
Here, the change of the relative viewpoint for facilitating understanding of the keystone distortion correction will be considered. In
Below, as shown in
The light projected by the projector 1 passes through the zx plane in which the screen 101 was located in
When considering a straight line connecting the position of the projector 1 and the point on the zx plane where the screen 101 is located and finding the intersecting point between this straight line and a plane having the normal vector of the matrix formula (1), the coordinate point projected on the plane of the inclined screen 101t is found. When viewing this inclined coordinate point focusing at the front of the screen as shown in
The (Kx, Ky, Kz) represented by these equations are coordinates deformed by keystone distortion when projecting an image by orienting the projector 1 upward by α degrees vertically as shown in
In this way,the above three equations (3-1), (3-2), and (3-3) give deformed coordinates resulting from keystone distortion caused by projection from any direction.
Next, the deformed coordinates resulting from equations (3-1), (3-2), and (3-3) of the coordinates matched with the resolution of the output signal (video) to the LCD panel 3 serving as the display means are found. That is, in the case of SVGA output, the x-coordinate Sx of the image before the distortion changes from 0 to 799, and the z-coordinate Sz changes from 0 to 599. The x-coordinate Kx and the z-coordinate Kz after the keystone distortion at this time are found. Note that the y-coordinates Sy and Ky are zero since the image is located in the zx plane.
Next, as shown in
In such mapping (linking addresses), the address distribution of the distorted image PIK is already found from the above equations (3-1), (3-2), and (3-3). Therefore, even if an actual physical memory (storage resources) is not used, for example the mapping can be executed assuming a virtual memory space in the CPU 2a. For this reason, the mapping itself becomes high speed and there is no transfer of data with a physical memory, therefore even if redone several times, the ratio of the total time of the processing in the entire time of the image conversion is extremely small.
The correspondence of the addresses obtained by the mapping is address correspondence between the distorted image and the desired projected image which becomes a regular square on the screen without distortion, but the distorted image is a result of projection of the image on the LCD panel of a regular square originally without distortion. Accordingly, by utilizing the above correspondence of addresses, the image of the LCD panel 3 for obtaining the projected image on the screen without distortion can be generated.
In more detail, in the case of SVGA output, the number of the coordinates of the effective display region of the LCD panel 3 becomes 800×600. For all of these points, the interpolation is carried out at the mapped addresses of the image. Among the interpolations at the 800×600 points at this time, in the interpolations at all addresses of the region in which the distorted image. PIK and the projected image PI overlap shown in
In the above explanation of
In
While distortion correction at the time of projection from the bottom left position (third quadrant ZONE3) toward the screen was explained above, in the case of projection from another position, only the equations for finding the distortion coordinates are different. The procedure of the correction method explained above is the same.
The equations for finding the keystone distortion coordinates projected on the inclined screen 101t are shown in equations (4-1), (4-2), and (4-3):
The equations for finding the keystone distortion coordinates projected on the inclined screen 101t are shown in equations (5-1), (5-2), and (5-3).
The equations for finding the keystone distortion coordinates projected on the inclined screen 101t are shown in equations (5-1), (5-2), and (5-3).
Next, a detailed explanation will be given of the interpolation operation in the present embodiment.
For convenience, as shown in
Below, an explanation will be given of the case of performing an interpolation operation (first interpolation operation) on pixel data in the vertical direction several times and performing an interpolation operation (second interpolation operation) in the horizontal direction for several interpolated data resulting from this.
In the present embodiment, whenever generating one new pixel data D1 by an interpolation operation, the combination of the original pixel data used is selected. The selection is carried out based the intersecting points between the oblique address line AL1 and the vertical lines VLa, VLb, VLc, and VLd connecting the original pixels in the vertical direction. Each of the vertical lines VLa, VLb, VLc, and VLd is a line connecting a constant position of the original pixel determined in advance, for example, the pixel center. In
The intersecting point PVa lies between the center of the original pixel data A3 and the center of the original pixel data A4, therefore the original pixel data A2, A3, A4, and A5 are selected based on the intersecting point PVa. In the same way as above, the original pixel data B2, B3, B4, and B5 are selected in the B column, the original pixel data C1, C2, C3, and C4 are selected in the C column, and the original pixel data D1, D2, D3, and D4 are selected in the D column.
The original pixel data is selected by the CPU 2a shown in
In the vertical direction interpolation filter 11, the first interpolation operation is sequentially executed. The first interpolation operation in the present example is a four-tap convolution operation. Accordingly, the vertical direction interpolated data Va, Vb, Vc, and Vd at the intersecting points PVa, PVb, PVc, and PVd are calculated by using the computation equations shown in equations (7-1), (7-2), (7-3), and (7-4).
Here, ineEquation (7-1), the phase difference za1 is the phase difference between the original pixel center of the data A3 and the intersecting point PVa, while the phase difference za2 is the phase difference between the original pixel center of the data A4 and the intersecting point PVa. In the same way, in equation (7-2), the phase difference zb1 is the phase difference between the original pixel center of the data B3 and the intersecting point PVb, and the phase difference zb2 is the phase difference between the original pixel center of the data B4 and the intersecting point PVb. These phase differences are shown in
Due to this, the vertical direction interpolated data Va, Vb, Vc, and Vd are generated at the positions of the intersecting points PVa, PVb, PVc, and PVd. The vertical direction interpolated data Va, Vb, Vc, and Vd are stored at predetermined addresses of the first register 13a while being switched by the selector 14 shown in
Next, the interpolated data Va, Vb, Vc, and Vd pass through the selector 15 and are supplied to the horizontal direction interpolation filter 12. The horizontal direction interpolation filter 12 executes a horizontal direction interpolation operation (second interpolation operation) on the interpolated data Va, Vb, Vc, and Vd.
In the second interpolation operation, the phase difference between the two vertical lines VLb and VLc nearest in the horizontal direction and the interpolation position P1 are defined by x1 and x2. At this time, the pixel data D1 generated by the horizontal interpolation at the interpolation position P1 is calculated by the four-tap interpolation operation shown in equation (8).
Note that, the horizontal direction set of filter coefficients is generated at the coefficient generation unit 257 based on the phase differences x1 and x2 and supplied from the coefficient generation unit 257 to the horizontal direction interpolation filter 12 directly or after passing through the ROM 255 etc.
As described above, new pixel data D1 was generated at the interpolation position P1 by the plurality of (four in the present example) first interpolation operations and one second interpolation operation. In the same way as the above, pixel data D2 is generated at the next interpolation position P2.
When generating data at the position P2 by interpolation processing, from the periphery thereof, four bits of data in four columns, i.e., 16 bits of original image data in total, are selected. In the same way as the case of generating the position P1, the original image data is selected using the intersecting points between the oblique address line AL1 and the vertical direction lines of the four columns as the reference. For example, when selecting the set of the original pixel data so that two pixel centers are located at one side and the other side of each intersecting point in the vertical direction, in the example shown in
In
Originally, four interpolation operations in the vertical direction are executed for calculating new pixel data, but in the present embodiment, operations on interpolated data which can be reused are omitted. In more detail, under the control of the CPU 2a, the interpolation operations of the C column and the D column are omitted, and the interpolation operations of the E column and the F column are executed by the vertical direction interpolation filter 11. The interpolated data Ve and Vf obtained as a result are stored as illustrated in the first register 13a under the control of the selector 14.
Next, under the control of the selector 15, the interpolated data Vc′ and Vd′ corresponding to the C column and the D column are read from the second register 13b, and the interpolated data Ve and Vf corresponding to the E column and the F column are read from the first register 13a. When the horizontal direction interpolation filter 12 performs the second interpolation operation by using these interpolated data, the new pixel data D2 is generated at the position P2.
In the present embodiment, in the generation of the pixels of the second and subsequent times in this way, the first interpolation operation result used for the generation of the pixel data immediately before this can be reused. This becomes possible since the original pixel data used for the first interpolation operation is selected based on the intersecting points between the oblique address line and the vertical lines.
That is, in the usual method of uniformly deciding the range of the original pixel data as to for example 4×4 centered around the interpolation position, one new pixel data is indeed generated, but the vertical interpolation operation ends up being performed four times. Accordingly, even when there is almost no horizontal distortion component, the same computation is uselessly repeated in many cases. Further, even if trying to reuse the calculation result, if the range of the original pixel data is uniformly determined, no sets of overlapping original pixel data will be generated if there is even a little inclination of the address line and therefore reuse becomes substantially impossible.
In the present embodiment, the selection range of the original pixel data flexibly changes in accordance with the inclination of the address line, therefore a higher efficiency of the first interpolation operation having a computation time several times that of the second interpolation operation can be achieved. The reduction of the number of times of the computation of the first interpolation operation is directly connected to the improvement of the computation efficiency of the whole, therefore the efficiency of generation of the image for correcting distortion can be effectively improved.
Due to the above, the processing time can be reduced in the signal processing necessary when a projector projects an image from an oblique direction. Further, since the overlapped vertical direction interpolated data is not recomputed, the pixel data fetched from the memory necessary overlappingly in the vertical direction operation unit becomes unnecessary. For this reason, without greatly changing the interpolation technique, the load of the processing of the memory is reduced and the bit size of the memory may be made small.
Note that the number of pixels in the vertical direction and the number of pixels in the horizontal direction used for the interpolation operation are not limited to four and can be arbitrarily set. Further, it is also possible to change the method of the selection of the original image data in accordance with the inclination of the address line. For example, when the inclination of the address line AL1 shown in
In the second embodiment, conversely to the first embodiment, the first interpolation operation is carried out in the horizontal direction, and the second interpolation operation is carried out in the vertical direction. As the filter unit, in
The address line AL1 of the image suffering from distortion overlaps the original image as illustrated. New pixel data is found at the point P1 on the address line. In this case, based on the intersecting points between the address line AL1 and the lines connecting constant positions determined in advance of the original image, for example, the centers of the pixels, that is, the horizontal lines HL2, HL3, HL4, and HL5, a set of a plurality of, i.e., four, original image data arranged in the horizontal direction is selected. When based on the intersecting point PH2, the set of the original image data (C2, D2, E2, F2) is selected. When based on the intersecting point PH3, the set of the original image data (B3, C3, D3, E3) is selected, when based on the intersecting point PH4, the set of the original image data (A4, B4, C4, D4) is selected, and when based on the intersecting point PH5, the set of the original image data (A5, B5, C5, D5) is selected.
The interpolated data H2, H3, H4, and H5 in the horizontal direction at the intersecting points PH2, PH3, PH4, and PH5 are calculated by using the computation equations shown in equations (9-1), (9-2), (9-3), and (9-4):
Here, in equation (9-1), the phase difference x21 is the phase difference between the original pixel center of the data D2 and the intersecting point PH2, while the phase difference x22 is the phase difference between the original pixel center of the data E2 and the intersecting point PH2. In the same way, in equation (9-4), the phase difference x51 is the phase difference between the original pixel center of the data B5 and the intersecting point PH5, while the phase difference x52 is the phase difference between the original pixel center of the data C5 and the intersecting point PH5. These phase differences are shown in
Due to this, the interpolated data H2, H3, H4, and H5 in the horizontal direction are generated at the positions of the intersecting points PH2, PH3, PH4, and PH5.
The interpolated data H2, H3, H4, and H5 in the horizontal direction are held once in the first register 13a.
Thereafter, the vertical direction interpolation filter executes a vertical direction interpolation operation (second interpolation operation) on the interpolated data H2, H3, H4, and H5.
In the second interpolation operation, the phase differences between two horizontal lines HL3 and HL4 nearest in the vertical direction and the interpolation position P1 are defined as z1 and z2. At this time, the pixel data D1 generated by the vertical interpolation at the interpolation position P1 is calculated by the four-tap interpolation operation equation shown in equation (10).
As described above, even if performing the horizontal direction interpolation operation first and performing the vertical direction interpolation operation on the results, the new pixel data D1 can be generated in the same way as above. Note that the generation of the subsequent pixel data and the control of the register at that time (reuse of the interpolated data) are carried out in the same way as the first embodiment.
In the above first and second embodiments, each time calculating one new pixel data, a plurality of first interpolation operation and second interpolation operation were repeated.
In the third embodiment, first all of the first interpolation operations corresponding to for example an address line are ended and then the second interpolation operations are repeatedly executed.
The filter unit 258 illustrated in
The deformation coordinates (Kx, Ky, Kz) due to the keystone distortion found by equations (3-1) to (3-3) shown in the first embodiment are for simultaneously finding the addresses of the interpolation points of the x-coordinates and the z-coordinates. Accordingly, this mode is not required for finding new pixel data with a high efficiency by the interpolation method of repeating the first interpolation operation in one direction of the vertical direction or the horizontal direction as in the interpolation method of the present embodiment and performing the second interpolation operation in the other direction of the vertical direction or the horizontal direction with respect to a plurality of interpolated data obtained as the result of this.
For this reason, below, the addresses of the distorted image shown in equation (3-1) and equation (3-3) are converted to the formats of addresses which can be independently interpolated in the vertical direction or the horizontal direction. That is, each of the keystone deformation addresses in the x-direction indicated by equation (3-1) and each of the keystone deformation addresses in the z-direction indicated by (3-3) is converted to two addresses, that is, an address of the interpolation position used in the vertical interpolation and an address of the interpolation position used in the horizontal interpolation. As a result, any address (x, z) of the keystone deformation coordinates is divided to the two sets of vertical direction elements (VX, VZ) and a horizontal direction elements (HX, HZ). However, the horizontal direction elements are at equal intervals at the time of vertical interpolation, while the vertical direction elements become equal in interval at the time of horizontal interpolation. Therefore, the equal interval elements can be used as they are. Accordingly, in practice, one set of addresses of a combination of (VX, HZ) or (HX, VZ) is calculated at a time. It is possible to calculate the addresses at the CPU 2a or calculate them by the CPU 2a in advance and store them in the ROM 255 or the like as a table.
First, the vertical direction interpolation will be explained as the first interpolation operation. In the present embodiment, the vertical direction interpolation operation is continuously carried out by exactly the required number of times corresponding to the number of pixels in the horizontal direction.
The address line AL1 is the path of the positions at which a series of one line=s worth of original pixels in the horizontal direction is converted in address by keystone distortion in the same way as the cases of the first and second embodiments. In the case of the projection from the bottom left side when facing the screen, it forms a straight line inclined in the oblique direction. Each intersecting point between the oblique address line AL1 and the vertical lines connecting the original pixels in the vertical direction is indicated by a mark “x” in
In the third embodiment, these interpolation addresses are calculated without using complex calculation equations such as equations (3-1) to (3-3).
First, in the present embodiment, in order to simply find the interpolation addresses, as shown in
In the present embodiment, as shown in
In more detail, when expressing the coordinates of an address in vertical interpolation by (VX, VZ), in one line=s worth of interpolation operations, the x-coordinates VX of the interpolation addresses change in discrete values in units of constant values for every pixel in the horizontal direction. Further, the z-coordinates VZ at that time are on the oblique address line AL1 to which the interpolation pixels belong on the address map of the keystone deformation, therefore can be calculated by finding the inclination. The inclination of the address line AL1 becomes (KzeBKzs)/(KxeBKxs) using the address coordinates (Kxs, Kzs) at which the start point pixel of the line of the original image is located after the keystone deformation and the address coordinates (Kxe, Kze) at which the end point pixel is located after the keystone deformation as shown in
Accordingly, a vertical interpolation address (VX, VZ) of a pixel arranged at the position (x, z) after the interpolation in the xz coordinate system of
In equation (12), as shown in
Based on the vertical direction interpolation address indicated by equation (12), a plurality of original pixel data arranged in the vertical direction are selected for every column. In this selection, in the same way as the first embodiment, for example the CPU 2a selects two upper and lower pixel data each, i.e., four original image data in total, for every interpolation address. The selected basic pixel data are sequentially input to the vertical interpolation filter 11 of
Due to this, the interpolated image as in
As shown in equation (13), one interpolated data Vf is generated by using two original pixel data F2 and F3 above the interpolation position and two original pixel data F4 and F5 below it. At the other interpolation positions PVa to PVe, PVh, . . . , the interpolated data is found by the same interpolation operation. As a result, the same number of the interpolated data as the horizontal resolution of the original image are output from the vertical interpolation filter 11 of
Horizontal direction interpolation processing (second interpolation operation) is carried out on the image of
Here, the value of the horizontal element HX of an interpolation address is the x-coordinate Kx of the keystone deformation shown in equation (3-1) and designates the interpolation address in the x-direction used in the mapping as shown in
In this way, the horizontal direction interpolation address (HX, HZ) is found. The horizontal direction interpolation address (HX, HZ) is input to the horizontal direction interpolation filter 12 from the address generation unit or the ROM etc. The horizontal direction interpolation filter executes the horizontal direction interpolation operation at each point of the interpolation address in the corresponding address line by using the vertical direction interpolated data held in the line memory 16.
As shown in
The new pixel data D1 generated by this is generated, whereby the interpolation processing of one pixel is completed. By performing this interpolation processing in the horizontal direction with respect to all horizontal direction pixels while appropriately changing the interpolated data selected, one line's worth of the image subjected to keystone correction can be generated. Further, by performing the same processing on the other lines and performing all of the processing including the interpolation processing in the vertical direction and the horizontal direction in one frame, one frame of the corrected image is generated.
In the explanation of the third embodiment, the order of the interpolation operations was described as performing vertical interpolation as the first interpolation processing, then performing horizontal interpolation as the second interpolation processing, but it is also possible to perform horizontal interpolation as the first interpolation processing for exactly at least one line=s worth of the frame first, then perform the vertical interpolation as the second interpolation processing. Further, it is also possible to sequentially perform the first interpolation processing and the second interpolation processing in units of several lines or sequentially perform the first interpolation processing and the second interpolation processing in units of a frame.
In the above explanation, in the work of mapping the image with the addresses of the keystone distortion for the keystone correction, the position of the finally prepared keystone corrected image was adjusted by adjusting the size and the position of the image without changing the addresses. In the present embodiment, it is also possible to make adjustments by relatively changing the values of the addresses while fixing the size and the position of the image. In this case, the interpolation addresses found by equation (12) and equation (14) may be expressed by equations changing according to the change of the size and the position of the image.
In the third embodiment, after performing the first interpolation operation for at least one line=s worth of a frame, the second interpolation operation is repeated for at least the same number of times as the horizontal resolution. At this time, the coefficients of either the vertical direction or the horizontal direction coordinate parameters of the interpolation addresses used for the first interpolation operation are made “1”, while the other of the vertical direction or the horizontal direction coordinate parameters of the interpolation addresses used for the second interpolation operation are made “1”. By this, in the vertical direction interpolation operation, processing maintaining the intervals of the pixels in the horizontal direction as they are for the positions of the pixels after the mapping and interpolating in only the vertical direction in accordance with the mapping of the keystone distortion becomes possible. Conversely, in the horizontal direction interpolation operation, processing maintaining the intervals of the pixels in the vertical direction as they are for the positions of the pixels after the mapping and interpolating in only the horizontal direction in accordance with the mapping of the keystone distortion becomes possible.
As an effect common to the first to third embodiments, the range of selection of the original image data flexibly changes in accordance with the inclination of the address line, so the number of times of overlapping useless operations is reduced. For this reason, the processing efficiency of the frequently performed first interpolation operation can be improved.
Particularly, in the third embodiment, in addition to the reduction of the number of times of useless operations, as mentioned above, one set of addresses between each two sets of addresses originally generated for the vertical interpolation and for the horizontal interpolation is easily found by making the coefficients of the coordinate parameters “1”. For this reason, substantially the generation of one set of the addresses is sufficient, and the efficiency of the address generation is improved. Further, the interpolation address element not having the coefficient of the coordinate parameter of “1” in an interpolation address used in the first interpolation operation performed previously is generated by a simple computation equation using the inclination of the address line. As a result, the efficiency of the first interpolation operation performed several times more frequently than the second interpolation operation can be further advanced.
The reduction of the number of computations of the first interpolation operation is directly linked with the improvement of the computation efficiency as a whole, so it becomes possible to effectively improve the efficiency of generation of an image for correcting the distortion.
From the above, the processing time can be reduced by the signal processing which becomes necessary when the projector projects an image from the oblique direction. Further, not by recomputing the overlapping vertical interpolated data, the pixel data fetched from the memory, which had been necessary overlappingly in the vertical operation unit, becomes unnecessary. For this reason, the load of the processing of the memory is reduced without greatly changing the interpolation technique and also the bit size of the memory may be made smaller.
Note that, in the above embodiments, the explanation was given taking as an example use of the LCD panel 3 as the display means, but the present invention is not limited to this and can be widely applied so far as the device is a fixed pixel device in which display pixels are arranged in a matrix such as a DMD (digital micromirror device).
Further, in the above embodiments, the explanation was given of an example wherein the projector 1 had the function of the image conversion processing for correcting the projection distortion, but the present invention is not limited to this and can be configured so as to correct the projection distortion by outputting an image converted signal from an apparatus performing this image conversion processing to the projector 1 too.
Further, in the above embodiments, the explanation was given of an example in which the projection surface was substantially vertically arranged, but the present invention is not limited to this. If the projection distortion is corrected based on the angle of the projection from the projector 1 with respect to the normal line of the projection surface, that is, the angle formed by the normal line of the projection surface and the optical axis of the optical unit 5, the projection surface may be arranged while being inclined with respect to the vertical line too. In this case, the coordinate conversion may be carried out for the arrangement of the screen 101 and the projector 1 by the inclination angle thereof.
As explained above, the image conversion apparatus of the first aspect of the present invention comprises an interpolating means for receiving as input the original image data, executing a first interpolation operation a plurality of times with respect to a plurality of original pixel data arranged in one of a vertical or horizontal direction in the original image, executing the second interpolation operation in the other direction, and generating new image data at the interpolation points and a storing means for storing the interpolated data obtained by the first interpolation operation, wherein, where a combination of the plurality of original pixel data is the same as a combination previously used when calculating interpolated data already stored in the storing means, the interpolating means reads out that interpolated data from the storing means and uses the same for the second interpolation operation.
Preferably, the image conversion apparatus is an image conversion apparatus which, when projecting an image onto a projection surface by utilizing light, converts an input original image to an image having distortion corrected in accordance with an angle of projection on the projection surface by interpolation processing, which image conversion apparatus comprises an address generating means for generating addresses of the image suffering from the distortion and a mapping means for linking positional information of the distortion-free original image with the addresses of the image suffering from distortion, wherein the interpolating means generates the new pixel data to be output to the display means based on the correspondences between the addresses and the positional information obtained from the mapping means by the execution of a plurality of first interpolation operations and a second interpolation operation.
The image conversion method of the first aspect of the present invention is for achieving the first object and comprises a first interpolation step of repeatedly executing a first interpolation operation for a plurality of original pixel data arranged in either of a vertical or horizontal direction of an input original image; a data storage step of temporarily storing a plurality of interpolated data generated by the first interpolation operations in a storing means; a second interpolation step of generating new pixel data by executing a second interpolation operation with respect to the plurality of interpolated data in the other direction different from the one direction; and a step of generating new pixel data by repeating the first interpolation step, the data storage step, and the second interpolation step, wherein, in the step of generating new pixel data, when a combination of a plurality of original pixel data is the same as a combination previously used when calculating the interpolated data and already stored in the storing means, that interpolated data is read out from the storing means and used for the second interpolation operation.
In the above image conversion apparatus, the address generating means generates the addresses of the distorted image, and the addresses of the distortion-free desired image are mapped on them. By this, the correspondences between the addresses of the interpolation points of the screen of the display means and the pixel positions of the original image corresponding to the addresses are determined. Accordingly, the pixel data of the original image used for generating the new pixel data at the interpolation points is also understood.
In the interpolation of the first aspect, the first interpolation operation is carried out on a plurality of original pixel data arranged vertically or horizontally, and the results thereof (interpolated data) are temporarily stored in the storing means. The second interpolation operation is executed in a different direction with respect to the plurality of interpolated data. As a result, a new pixel data is generated by the interpolating means and output. The interpolated data in the storing means is held delayed until at least the time when it can be utilized for the generation of other pixel data. After this, interpolated data having the same combination of the original image data as interpolated data already generated and held is not newly generated, but is read out from the storing means and utilized for the second interpolation operation.
The image projection apparatus of the second aspect of the present invention is an image projection apparatus having a display means having display pixels and a projecting means for projecting an image of the display means to a projection surface utilizing light from a light source and having a function of, when projecting an image, converting an input original image to an image having distortion corrected in accordance with the angle of projection on this projection surface by interpolation processing, comprising an address generating means for generating addresses of an image suffering from distortion; a mapping means for linking positional information of a distortion-free original image with the addresses of the image suffering from distortion; a selecting means for selecting a plurality of original image data for every intersecting point based on the intersecting points between an address line of the image suffering from distortion generated corresponding to the display pixels in the horizontal (vertical) direction and the plurality of lines connecting the original pixels in the vertical (horizontal) direction; and an interpolating means for executing a first interpolation operation at the intersecting points used as the reference at the time of the selection for each set of selected original pixel data, executing a second interpolation operation in a horizontal (vertical) direction with respect to the obtained plurality of interpolated data, and generating new pixel data to be output to the display means based on the correspondences between the addresses and the positional information obtained from the mapping means.
The image conversion method of the present invention is an image conversion method which, when projecting an image to a projection surface by utilizing light, converts an input original image to an image having distortion corrected in accordance with the angle of the projection on a projection surface by interpolation processing and outputs the same to a display means, comprising a step of generating addresses of an image suffering from distortion; a step of the mapping for linking positional information of a distortion-free original image with addresses of the image suffering from distortion; a step of selecting a plurality of original image data for every intersecting point based on the intersecting points between an address line on the image suffering from distortion corresponding to the display position of the display means in the horizontal (vertical) direction and a plurality of lines connecting the original pixels in the vertical (horizontal) direction; a step of executing a first interpolation operation at the intersecting points used as the reference at the time of selection for each set of the selected original image data; and a step of executing a second interpolation operation in the horizontal (vertical) direction with respect to a plurality of interpolated data obtained by the first interpolation operation and generating new pixel data to be output to the display means based on the correspondences of the addresses obtained by the mapping.
In the above invention, the addresses of the image suffering from distortion are generated, mapping is performed between these addresses and positional information of an original image, then a plurality of original pixel data arranged side in the vertical direction are selected to be used for a first interpolation operation. At this time, based on the intersecting points between an address line of the image suffering from distortion and a plurality of lines connecting the original pixels in the vertical direction, a plurality of original image data are selected for every intersecting point. Accordingly, when the address line is oblique, a set of a plurality of original pixel data shifted in the vertical direction in accordance with that can be selected. Even when the inclination of the address line is particularly large, original image data suitable for maintaining the precision of the interpolation operation is selected.
Next, a second interpolation operation is carried out on the plurality of interpolated data obtained by the first interpolation operation, whereby new pixel data is generated.
The image projection apparatus of the third aspect of the present invention is an image projection apparatus having a display means having display pixels and a projecting means for projecting an image of the display means to a projection surface by utilizing light from a light source and having a function of converting an input original image data to an image having distortion corrected in accordance with the angle of the on this projection surface when projecting by interpolation processing, comprising an address generating means for generating first interpolation addresses by a first relationship equation with a coefficient of a horizontal coordinate parameter in coordinates based on the pixel position of the original image set as “1” and generating second interpolation addresses by the second relationship equation with a coefficient of a vertical coordinate parameter set as “1”; a mapping means for linking positional information of a distortion-free original image with the addresses of the image suffering from distortion; and an interpolating means for finding the positions of the intersecting points between an address line of the image suffering from distortion generated corresponding to the display pixels in the horizontal (vertical) direction and a plurality of lines connecting the original pixels in the vertical (horizontal) direction by using the first interpolation addresses, executing the first interpolation operation at these intersecting points, executing the second interpolation operation at the interpolation points found by using the second interpolation addresses, and generating new pixel data to be displayed on the display means based on the correspondences of addresses obtained from the mapping means.
The image conversion method of the present invention has an address generation step of generating first interpolation addresses by a first relationship equation with a coefficient of a coordinate parameter of a first direction among horizontal and vertical directions set as “1” and generating second interpolation addresses by a second relationship equation with a coefficient of the coordinate parameter of the second direction different from the first direction set as “1”; a first interpolation step of selecting a plurality of original pixel data arranged in the second direction of the input original image by using the first interpolation addresses and repeatedly executing a first interpolation operation a plurality of times; and a second interpolation step of selecting a plurality of interpolated data arranged in the first direction generated by the first interpolation operation by using the second interpolation addresses and executing a second interpolation operation at the interpolation points to generate new pixel data.
In the third aspect, an addresses found by the computation at the time of the generation of addresses is only a combination of the other of the vertical and horizontal address of a first interpolation address in which the coefficient of the coordinate parameter is not “1” and one vertical or horizontal address of a second interpolation address. An address at which the coefficient of the coordinate parameter is 1 is not computed, or even when it is computed, almost no load is placed on the address generating means. By using this simple address, when the first interpolation operation is repeatedly executed and the second interpolation operation is executed for a plurality of interpolated data obtained as a result of this, a new pixel is generated in a short time.
According to the image conversion apparatus and image conversion method according to the present invention, the load of the address computation and the load of the interpolation operation increasing due to an increase of the address computation points or the complication of the computation equations are reduced and high speed processing becomes possible.
According to the image projection apparatus according to the present invention, the distortion of an image on a projection surface can be corrected at a high speed while effectively reducing the load on the means for performing the address computation and the interpolation operation and the load on the memory.
Patent | Priority | Assignee | Title |
7821160, | Jan 05 2010 | Inncom International Inc. | Modular wall box system |
7906873, | Jan 05 2010 | Inncom International Inc. | Modular wall box system |
8577178, | Jul 22 2008 | Seiko Epson Corporation | Image processing device, image display device, and image data producing method |
Patent | Priority | Assignee | Title |
5125042, | Jun 16 1989 | Eastman Kodak Company | Digital image interpolator using a plurality of interpolation kernals |
6064444, | Jul 02 1996 | Sony Corporation | Picture processing apparatus and processing method |
6367933, | Oct 01 1999 | MAGIC PIXEL, INC | Method and apparatus for preventing keystone distortion |
6757026, | Aug 07 1997 | Samsung Electronics Co., Ltd. | Image format converting apparatus and methods in video signal processing system |
7129987, | Jul 02 2003 | ZPEG, INC | Method for converting the resolution and frame rate of video data using Discrete Cosine Transforms |
20020060754, | |||
JP2002135690, | |||
JP2002158946, | |||
JP2002185888, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Oct 08 2003 | Sony Corporation | (assignment on the face of the patent) | / | |||
Jun 07 2004 | OHTA, AKIHIRO | Sony Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 016230 | /0343 | |
Jun 08 2004 | MORITA, HIDEO | Sony Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 016230 | /0343 |
Date | Maintenance Fee Events |
Dec 05 2011 | REM: Maintenance Fee Reminder Mailed. |
Apr 22 2012 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Apr 22 2011 | 4 years fee payment window open |
Oct 22 2011 | 6 months grace period start (w surcharge) |
Apr 22 2012 | patent expiry (for year 4) |
Apr 22 2014 | 2 years to revive unintentionally abandoned end. (for year 4) |
Apr 22 2015 | 8 years fee payment window open |
Oct 22 2015 | 6 months grace period start (w surcharge) |
Apr 22 2016 | patent expiry (for year 8) |
Apr 22 2018 | 2 years to revive unintentionally abandoned end. (for year 8) |
Apr 22 2019 | 12 years fee payment window open |
Oct 22 2019 | 6 months grace period start (w surcharge) |
Apr 22 2020 | patent expiry (for year 12) |
Apr 22 2022 | 2 years to revive unintentionally abandoned end. (for year 12) |