US5125042A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Digital image interpolator using a plurality of interpolation kernals
Assignee: Eastman Kodak Co
•
Filing: 1991-05-14
•
Granted: 1992-06-23
•
Expires: 2011-05-14
Abstract
Abstract An interpolator for enlarging or reducing a digital image includes an interpolation coefficient memory containing interpolation coefficients representing a one dimension interpolation kernel. A row interpolator receives image pixel values, retrieves interpolation coefficients from the memory, and produces interpolated pixel values by interpolating in a row direction. A column interpolator receives multiple rows of interpolated pixel values from the row interpolator, retrieves interpolation coefficients from the memory, and produces rows of interpolated pixel values by interpolating in a column direction.
Inventors
- 👤 Richard Kerr
- 👤 Robert Krogstad
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-30 05:53
CPC Classifications
G; G06; G06T; G06T3/00; G06T3/40; G06T3/4007; G06F; G06F17/00; G06F17/10; G06F17/17; G06F17/175; G06T3/10
Claims Analysis
Total Claims: 12
Claim 1
Independent Claim
203 words
Digital image processing apparatus for performing two dimensional interpolation on a digital image expressed as rows and columns of pixel values, comprising: (a) an interpolation coefficient memory containing a plurality of one dimensional interpolation kernels for performing a plurality of interpolation types including cubic convolution, linear, and replication interpolation; (b) row interpolator means connected to said memory for receiving successive image pixel values along a row, retrieving interpolation coefficients from said memory, and producing interpolated pixel values by multiplying and summing the pixel values and interpolation coefficients; (c) column interpolator means connected to said row interpolator means and said memory for receiving rows of interpolated and noninterpolated pixel values from said row interpolator means, retrieving interpolation coefficients from said memory, and producing rows of interpolated pixel values by interpolating between groups of interpolated and noninterpolated pixel values in a column direction; (d) logic and control means for selecting one of said kernels in response to an operator input; and wherein said row interpolator means includes means for replicating the first and last pixel value in a row in an image, and said column interpolator means includes means for replicating the first and last rows of interpolated and noninterpolated pixel values in an image.
Claim 2
Dependent Claim
203 words
Digital image processing apparatus for performing two dimensional interpolation on a digital image expressed as rows and columns of pixel values, comprising: (a) an interpolation coefficient memory containing a plurality of one dimensional interpolation kernels for performing a plurality of interpolation types including cubic convolution, linear, and replication interpolation; (b) row interpolator means connected to said memory for receiving successive image pixel values along a row, retrieving interpolation coefficients from said memory, and producing interpolated pixel values by multiplying and summing the pixel values and interpolation coefficients; (c) column interpolator means connected to said row interpolator means and said memory for receiving rows of interpolated and noninterpolated pixel values from said row interpolator means, retrieving interpolation coefficients from said memory, and producing rows of interpolated pixel values by interpolating between groups of interpolated and noninterpolated pixel values in a column direction; (d) logic and control means for selecting one of said kernels in response to an operator input; and wherein said row interpolator means includes means for replicating the first and last pixel value in a row in an image, and said column interpolator means includes means for replicating the first and last rows of interpolated and noninterpolated pixel values in an image.
Claim 3
Independent Claim
224 words
A method of processing a digital image comprising the steps of: selecting a format of an output digital image comprising at least first and second image bands, each of said bands having at least one digital image; determining first and second different interpolation parameters for said respective first and second image bands; processing a first digital image to be incorporated in said first image band of an output digital image with said first interpolation parameters; processing a second digital image to be incorporated in said second image band of said output digital image with said second interpolation parameters; and wherein said steps of processing said first and second digital images are effected by means of two-dimensional interpolation including: storing a plurality of one dimensional interpolation kernels for performing a plurality of interpolation types including cubic convolution, linear, and replication interpolation in an interpolation coefficient memory; performing row interpolation by receiving successive image pixel values along a row, retrieving interpolation coefficients from said memory, and producing interpolated pixel values by multiplying and summing the pixel values and interpolation coefficients; performing column interpolation by retrieving interpolation coefficients from said memory, and producing rows of interpolated pixel values by interpolating between groups of interpolated and noninterpolated pixel values in a column direction; and controlling the selection of one of said kernels in response to an operator input.
Claim 4
Independent Claim
224 words
A method of processing a digital image comprising the steps of: selecting a format of an output digital image comprising at least first and second image bands, each of said bands having at least one digital image; determining first and second different interpolation parameters for said respective first and second image bands; processing a first digital image to be incorporated in said first image band of an output digital image with said first interpolation parameters; processing a second digital image to be incorporated in said second image band of said output digital image with said second interpolation parameters; and wherein said steps of processing said first and second digital images are effected by means of two-dimensional interpolation including: storing a plurality of one dimensional interpolation kernels for performing a plurality of interpolation types including cubic convolution, linear, and replication interpolation in an interpolation coefficient memory; performing row interpolation by receiving successive image pixel values along a row, retrieving interpolation coefficients from said memory, and producing interpolated pixel values by multiplying and summing the pixel values and interpolation coefficients; performing column interpolation by retrieving interpolation coefficients from said memory, and producing rows of interpolated pixel values by interpolating between groups of interpolated and noninterpolated pixel values in a column direction; and controlling the selection of one of said kernels in response to an operator input.
Claim 5
Dependent Claim
58 words
The method of claim 2 wherein said determining steps includes determining first and second different horizontal and vertical interpolation sampling increments for said respective first and second image bands and wherein said respective steps of processing said first and second digital images are effected with said determined first and second different horizontal and vertical interpolation and sampling increments.
Claim 6
Dependent Claim
44 words
The method of claim 2 wherein said selecting step includes selecting an output digital image formed which further includes a text band having text and including the step of processing said text to be incorporated in said text band by means of replication interpolation.
Claim 7
Dependent Claim
38 words
the apparatus claimed in claim 1, wherein said interpolation coefficient memory is divided into a plurality of banks adapted to be addressed simultaneously to return a plurality of interpolation coefficients, one such coefficient from each of said banks.
Claim 8
Dependent Claim
94 words
The apparatus claimed in claim 1, wherein said row interpolator means further comprises row controller means for requesting pixel values from a frame store memory and interpolation coefficient values from the coefficient memory, and row arithmetic and logic unit (ALU) means for receiving the pixel values and the coefficient values, and performing multiplication summation according to the formula P'=(P 1 ×C 1 )+(P 2 ×C 2 )+(P 3 ×C 3 )+(P 4 ×C 4 ) where P' is an interpolated value, P i are the pixel values and C i are the coefficient values.
Claim 9
Dependent Claim
91 words
The apparatus claimed in claim 6, wherein said row ALU means comprises a four element input register for receiving said pixel values serially, a four element working register coupled to said input register for receiving said pixel values in parallel from said input register, a four element coefficient register for receiving interpolation coefficients in parallel from said coefficient memory, and multiply accumulation means coupled to said working register and said coefficient register for receiving said pixel values and coefficient values in pairs, multiplying them, and accumulating the sum of their products.
Claim 10
Dependent Claim
73 words
The apparatus claimed in claim 1, wherein said column interpolator means further comprises line store means for receiving rows of interpolated and noninterpolated pixel values from said row interpolator, line store control means for controlling the addressing of said line stores, ALU means for retrieving interpolated and noninterpolated pixel values from said line stores, and interpolating between the rows in a column direction, and column controller means for controlling the column interpolator means.
Claim 11
Dependent Claim
128 words
The apparatus claimed in claim 8, wherein said column ALU means comprises a 4 element coefficient register for receiving, in parallel, four interpolation coefficients from the coefficient memory and delivering them serially, and column multiply and accumulation means connected to said coefficient register and having inputs for receiving successive pixel values and coefficient values, and for performing a multiplication and summing the products to produce an interpolated pixel value according to the equation P"=(P' 1 ,1 ·C 1 )+(P' 1 ,2 ·C 2 )+(P' 1 ,3 ·C 3 )+(P' 1 ,4 ·C 4 ) where P" is the interpolated pixel value between rows of pixels, P' ij is the i th pixel value from the j th row of interpolated values, and C k are the interpolation coefficients.
Claim 12
Dependent Claim
54 words
The apparatus claimed in claim 8, wherein said line store means comprises five first-in first-out line memories, multiplexing means for coupling the outputs of said memories in groups of 4 to the ALU means, and read/write select means for controlling said multiplexing means and for controlling the data written into said line store means.
References Cited (Backward Citations)
EP0070677A2
Cited
US4468693A
Cited
US4578812A
Cited
US4682300A
Cited
US4595958A
Cited
EP0183201A2
Cited
US4661987A
Cited
US4725892A
Cited
US4703353A
Cited
US4819190A
Cited
US4790028A
Cited
US4700232A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1995-06-23 | 1995-12-23 | 1996-06-23 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1999-06-23 | 1999-12-23 | 2000-06-23 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2003-06-23 | 2003-12-23 | 2004-06-23 | $7700.00 | Window Closed / Lapsed |