Digital image processor for image scaling
First Claim
1. A method comprising:
- providing a source of light from an image subject;
said source of light comprising red, blue and green light;
selecting said red light, said blue light and said green light from said source of light;
directing said red light, said blue light, and said green light to a red light sensor, a blue light sensor and a green light sensor respectively;
sensing said selected red light as sensed red light and transforming said sensed red light into a red two-dimensional matrix;
sensing said selected green light as sensed green light and transferring said sensed green light into a green two-dimensional matrix;
sensing said selected blue light as sensed blue light and transforming said sensed blue light into a blue two-dimensional matrix;
each of said red, blue and green two-dimensional matrices are separately treated as a first two-dimensional matrix which are processed by a method for scaling an image contained within said first two-dimensional matrix, which corresponds to a first area into an image contained within a second two-dimensional area, wherein the ratio of said first and second areas is (R/P)-to-1 in a first dimension and (S/Q)-to-1 in a second dimension, comprising;
receiving DCT block data representing said image contained within said first area, said data being subdivided into a plurality of subblocks of transform data, each of said subblocks having P×
Q points;
subdividing each of said subblocks having P×
Q points into subdivided subblocks having K1×
K2 points;
multiplying said K1×
K2 data within each of said subdivided subblocks by √
(K1/P)×
√
(L1/Q);
applying an inverse DCT transform of size K1×
K2 to said subdivided subblocks; and
scaling said subdivided subblocks to a ratio of (K1K2/K3)=R and (L1L2/L3)=S.
0 Assignments
0 Petitions
Accused Products
Abstract
The objects of this invention are accomplished by combinging the inverse DCT of an appropriate size with scaling on the resulting reconstructed image. In particular, if the data is stored as DCT values of blocks of size P×Q and an output image is to be scaled by a factor of R in one dimension and S in the second dimension, then the process is performed in two stages. First a scaling of factor K1/P in the first dimension and a scaling of factor L1/Q in the second dimension are done by inverse transforming with 2-dimensional DCTs of size K1×L1. A factor √(K1/P)×√(L1/Q) is absorbed into a dequantization process prior to the inverse transorm process. Then a scaling of factor K2/K3 in the first dimension and a scaling of factor L2/L3 in the second dimension is done in the spatial domain. The integers K1, K2, K3, L1, L2, L3 are chosen so the (K1K2/K3)=R, (L1L2/L3)=S, (K1/P)≧R, (L1/Q)≧S, and the ratios (K2/K3) and (L1/L2) are close to 1. The inequality constraints guarantees that the inverse DCT process does not remove low-frequency components that should be present in in image scaled down by factors R, S. The conditions that the ratios K2/K3 and L2/L3 be close to 1 are imposed so that the scaling procedure be simple (fast) to implement. Typically, but not necessarily, P=Q, R=S, K1=L1, K2=L2, K3=L3.
-
Citations
30 Claims
-
1. A method comprising:
-
providing a source of light from an image subject;
said source of light comprising red, blue and green light;selecting said red light, said blue light and said green light from said source of light; directing said red light, said blue light, and said green light to a red light sensor, a blue light sensor and a green light sensor respectively; sensing said selected red light as sensed red light and transforming said sensed red light into a red two-dimensional matrix; sensing said selected green light as sensed green light and transferring said sensed green light into a green two-dimensional matrix; sensing said selected blue light as sensed blue light and transforming said sensed blue light into a blue two-dimensional matrix; each of said red, blue and green two-dimensional matrices are separately treated as a first two-dimensional matrix which are processed by a method for scaling an image contained within said first two-dimensional matrix, which corresponds to a first area into an image contained within a second two-dimensional area, wherein the ratio of said first and second areas is (R/P)-to-1 in a first dimension and (S/Q)-to-1 in a second dimension, comprising; receiving DCT block data representing said image contained within said first area, said data being subdivided into a plurality of subblocks of transform data, each of said subblocks having P×
Q points;subdividing each of said subblocks having P×
Q points into subdivided subblocks having K1×
K2 points;multiplying said K1×
K2 data within each of said subdivided subblocks by √
(K1/P)×
√
(L1/Q);applying an inverse DCT transform of size K1×
K2 to said subdivided subblocks; andscaling said subdivided subblocks to a ratio of (K1K2/K3)=R and (L1L2/L3)=S. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method comprising:
-
providing a source of light from an image subject;
said source of light comprising red, blue and green light;selecting said red light, said blue light and said green light from said source of light; directing said red light, said blue light and said green light to a red light sensor, a blue light sensor and a green light sensor respectively; sensing said selected red light as sensed red light and transforming said sensed red light into a red two-dimensional matrix; sensing said selected green light as sensed green light and transferring said sensed green light into a green two-dimensional matrix; each of said red, blue and green two-dimensional arrays are separately treated as a first two-dimensional matrix which are processed by method for displaying an image contained within said first two-dimensional matrix, which corresponds to a first area, onto a display within a second two-dimensional area of said display wherein the ratio of said first to second areas is (R/P)-to-1 in a first dimension and (S/Q)-to-1 in a second dimension, comprising; receiving DCT block data representing said image contained within said first area, said data being subdivided into a plurality of subblocks of transform data, each of said subblocks having P×
Q points;subdividing each of said subblocks having P×
Q points into subdivided subblocks having K1×
K2 points;multiplying said K1×
K2 data within each of said subdivided subblocks by √
(K1/P)×
√
(L1/Q);applying an inverse DCT transform of size K1×
K2 to said subdivided subblocks;scaling said subdivided subblocks to a ratio of (K2/K3)-to-1 in said first dimension and a ratio of (L2/L3)-to-1 in said second dimension, wherein (K1K2/K3)=R and (L1L2/L3)=S; converting said scaled data into RGB form data; transmitting said RGB form data to said display; and converting said RGB data into signals compatible with said display; and applying said signals to said display to form said image on said display. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A method comprising:
-
providing a source of light from an image subject;
said source of light comprising red, blue and green light;selecting said red light, said blue light and said green light from said source of light; directing said red light, said blue light and said green light to a red light sensor, a blue light sensor and a green light sensor respectively; sensing said selected red light as sensed red light and transforming said sensed red light into a red two-dimensional matrix; sensing said selected blue light as sensed blue light and transforming said sensed blue light into a blue two-dimensional matrix; sensing said selected green light as sensed green light and transforming said sensed green light into a green two-dimensional matrix; each of said red, blue and green two-dimensional matrices are separately treated as first two-dimensional matrix which are processed by a method for storing an image, comprising; receiving DCT block data representing said image contained within said first two-dimensional matrix area, said data being subdivided into a plurality of subblocks of transform data, each of said subblocks having P×
Q points;subdividing each of said subblocks having P×
Q points into subdivided subblocks having K1×
K2 points;multiplying said K1×
K2 data within each of said subblocks by √
(K1/P)×
√
(L1/Q);coding said DCT transform data; converting said coded data into signals compatible with a storage means; and applying said signals to said storage means for storing said signals. - View Dependent Claims (12, 13, 14, 15)
-
-
16. An apparatus comprising:
-
a means for providing a source of light from an image subject;
said source of light comprising red, blue and green light;a means for selecting said red light, said blue light and said green light from said source of light; a means for directing said red light, said blue light and said green light to a red light sensor, a blue light sensor and a green light sensor respectively; a means for sensing said selected red light as sensed red light and transforming said sensed red light into a red two-dimensional matrix; a means for sensing said selected blue light as sensed blue light and transforming said sensed blue light into a blue two-dimensional matrix; a means for sensing said selected green light as sensed green light and transforming said sensed green light into a green two-dimensional matrix; each of said red, blue and green two-dimensional matrices are separately treated as a first two-dimensional matrix which are processed by an image processor for scaling an image contained within a first two-dimensional area into an image contained within a second two-dimensional area, wherein the ratio of said first to second areas is (R/P)-to-1 in a first dimension and (S/Q)-to-1 in a second dimension, comprising; a receiver for receiving pixel data representing said image contained within a non-scaled area, said pixel data being subdivided into a plurality of subblocks of pixel data, each of said subblocks having P×
Q pixels;a subdivision means for subdividing each of said subblocks into subdivided subblocks, each of said subdivided subblocks having R×
S pixels;a multiplier for multiplying said pixel data within each of said subdivided subblocks by √
(K1/P)×
√
(L1/Q);an inverse DCT transform means for converting said subdivided subblocks into YUV form data; and a scaling means for scaling said YUV form data in the spatial domain. - View Dependent Claims (17, 18, 19, 20)
-
-
21. An apparatus comprising:
-
a means for providing a source of light from an image subject;
said source of light comprising red, blue and green light;a means for selecting said red light, said blue light and said green light from said source of light; a means for directing said red light, said blue light and said green light to a red light sensor, a blue light sensor and a green light sensor respectively; a means for sensing said selected red light as sensed red light and transforming said sensed red light into a red two-dimensional matrix; a means for sensing said selected blue light as sensed blue light and transforming said sensed blue light into a blue two-dimensional matrix; a means for sensing said selected green light as sensed green light and transforming said sensed green light into a green two-dimensional matrix; each of said red, blue and green two-dimensional matrices are separately treated as a first two-dimensional matrix which are processed by a means for displaying an image contained within said first two-dimensional matrix which corresponds to a first area onto a second two-dimensional area of a display, wherein the ratio of said first to second areas is (R/P)-to-1 in a first dimension and (S/Q)-to-1 in a second dimension, comprising; a received for receiving pixel data representing said image contained within said first area, said pixel data being subdivided into a plurality of subblocks of pixel data, each of said subblocks having P×
Q pixels;a means for subdividing each of said subblocks having P×
Q points into subdivided subblocks by √
(K1/P)×
√
(L1/Q);a multiplier for multiplying said pixel data within each of said subdivided subblocks by √
(K1/P)×
√
(L1/Q);an inverse DCT transform means for converting said subdivided subblocks into YUV form data; a scaling means for scaling said YUV form data in the spatial domain; a RGB transform means for converting said scaled data into RGB form data; a transmitter for transmitting said RGB form data to said display; and a conversion means for converting said RGB data into signals compatible with said display and applying said signals to said display to form said image on said display. - View Dependent Claims (22, 23, 24, 25)
-
-
26. A method comprising:
-
providing a source of light from an image subject;
said source of light comprising red, blue and green light;selecting said red light, said blue light and said green light from said source of light; directing said red light, said blue light and said green light to a red light sensor, a blue light sensor and a green light sensor respectively; sensing said selected red light as sensed red light and transforming said sensed red light into a red two-dimensional matrix; sensing said selected blue light as sensed blue light and transforming said sensed blue light into a blue two-dimensional matrix; sensing said selected green light as sensed green light and transforming said sensed green light into a green two-dimensional matrix; each of said red, blue and green two-dimensional matrices are separately treated as a first two-dimensional matrix which are processed by a storage system, comprising; a storage means for storing signals; a receiver for receiving pixel data representing said image, said image being contained within said first two-dimensional matrix, which corresponds to a first area said pixel data being subdivided into a plurality of subblocks of pixel data, each of said subblocks having P×
Q pixels;a means for subdividing each of said subblocks having P×
Q points into subdivided subblocks having K1×
K2 points;a multiplier for multiplying said pixel data within each of said subdivided subblocks by √
(K1/P)×
√
(L1/Q);an inverse transform means for applying an inverse DCT transform to said subdivided subblocks; a scale means for scaling said subdivided subblocks in the spatial domain, said scaled data representing an image contained within a second two-dimensional area, wherein the ratio for said first and second areas is (K2/K3)-to-1 in a first dimension and a ratio of L2/L3)-to-1 in a second dimension, where (K1K2/K3)=R and (L1L2/L3)=S; a transform means for applying a DCT transform to said scaled data; a conversion means for converting said coded data into signals compatible with said storage means and applying said signals to said storage means for storing said signals. - View Dependent Claims (27, 28, 29, 30)
-
Specification