Patentable/Patents/US-8582869
US-8582869

Finite dataset interpolation method

PublishedNovember 12, 2013
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

The invention provides a fast method for a high-quality interpolation of a finite multidimensional dataset. It has particular application in digital image processing, including, but not limited to, processing of both still images and real-time image/data processing. The method uses discrete cosine and sine transforms of appropriate types to covert, in blocks of desired size, the initial dataset to the frequency domain. Proposed interpolators calculate a chain of inverse transforms of non-square sizes that perform the interpolation. The larger transform is broken into smaller transforms of non-square size using a recursive size reduction process of FFT-type, and the smaller transforms are calculated directly exploiting the symmetry properties of smaller interpolator functions involved. An output dataset is then assembled using the calculated transforms. The method avoids computationally costly process of inflating the coefficient space by padding zeros exploited for DCT-based interpolations previously.

Patent Claims
13 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method of processing in a data processor an input multidimensional dataset represented by one dimensional subsets each comprising a block of data of size N stored in a digital memory so as to provide an interpolation of the data stored therein to produce a dataset of size M, the method comprising: providing a data processor; transforming in the data processor, for each of said subsets, the block of data into the frequency domain to obtain a set of direct transform coefficients C={a k } k=0 N for a desired interpolator type; determining in the data processor an appropriate inverse discrete trigonometric transform for using said set of coefficients to calculate an interpolated dataset F n = ∑ k = 0 N ⁢ A ⁡ ( n , k ) ⁢ α k , where n=0, 1, M, and A(n,k) is a non-square matrix of size ˜M×N, said determining including: reducing recursively the calculation of the transform to a chain of smaller transforms of size (M/2)×(N/2) until a size (qm×q) is reached, where m=M/N and q is one of the integers 2, 3 and 4; and calculating each of the smaller transforms directly using a family of interpolators corresponding to the symmetry properties of smaller, non-square transform matrices that result from the recursive reduction process; and computing and assembling in the data processor an output dataset of size M from the results of the calculated smaller transforms to store in a digital memory the interpolated output dataset.

2

2. A method according to claim 1 wherein the step of reducing recursively the calculation of the transform comprises radix-2 splitting of the initial set {a k } k=0 N into even and odd k-index subsets, and {e k ≡a 2k } k=0 N 1 and {o k ≡a 2k+1 } k=0 N 1 where N 1 =N/2.

3

3. A method according to claim 2 further comprising combining the index-shifted subsets to provide short-cuts in the recursion loops from type-II transforms directly back to type-I transforms.

4

4. A method according to claim 1 wherein the step of calculating each of the smaller transforms comprises applying a chain of at least one of the interpolators: C m I ⁡ ( p ; a k ) = ∑ k = 0 N ⁢ a k ⁢ cos ⁢ π ⁢ ⁢ pk M C m II ⁡ ( p ; a k ) = ∑ k = 0 N - 1 ⁢ a k ⁢ cos ⁢ π ⁢ ⁢ ( 2 ⁢ k + 1 ) ⁢ p 2 ⁢ M S m , N I ⁡ ( p ; a k ) = ∑ k = 1 N - 1 ⁢ a k ⁢ sin ⁢ π ⁢ ⁢ kp M ⁢ ⁢ and S m , N II ⁡ ( p ; a k ) = ∑ k = 0 N - 1 ⁢ a k ⁢ sin ⁢ π ⁡ ( 2 ⁢ k + 1 ) ⁢ p 2 ⁢ M where p=0, 1, . . . M.

6

6. A method according to claim 1 , wherein the input dataset is fast filtered by modifying the transform coefficients in the frequency domain before applying the inverse transform performing the interpolation.

7

7. A method according to claim 1 wherein the interpolation of a dataset of dimension larger than one is done by applying the interpolators of a one-dimensional case successively for each of the dimensions of the multidimensional dataset.

8

8. An image interpolator comprising a computer configured to process an input multidimensional dataset comprising a block of data of size N stored in a digital memory of the computer so as to provide an interpolation of the data stored therein to produce and store in said digital memory of the computer a dataset of M points, where M=m·N or m·(N−1)+1, in accordance with the method defined in claim 1 .

9

9. An image interpolator comprising a computer configured to process an input multidimensional dataset comprising a block of data of size N stored in a digital memory of the computer so as to provide an interpolation of the data stored therein to produce and store in said digital memory of the computer a dataset of M points, where M=m·N or m·(N−1)+1, in accordance with the method defined in claim 2 .

10

10. An image interpolator comprising a computer configured to process an input multidimensional dataset comprising a block of data of size N stored in a digital memory of the computer so as to provide an interpolation of the data stored therein to produce and store in said digital memory of the computer a dataset of M points, where M=m·N or m·(N−1)+1, in accordance with the method defined in claim 3 .

11

11. An image interpolator comprising a computer configured to process an input multidimensional dataset comprising a block of data of size N stored in a digital memory of the computer so as to provide an interpolation of the data stored therein to produce and store in said digital memory of the computer a dataset of M points, where M=m·N or m·(N−1)+1, in accordance with the method defined in claim 4 .

12

12. An image interpolator comprising a computer configured to process an input multidimensional dataset comprising a block of data of size N stored in a digital memory of the computer so as to provide an interpolation of the data stored therein to produce and store in said digital memory of the computer a dataset of M points, where M=m·N or m·(N−1)+1, in accordance with the method defined in claim 5 .

13

13. An image interpolator comprising a computer configured to process an input multidimensional dataset comprising a block of data of size N stored in a digital memory of the computer so as to provide an interpolation of the data stored therein to produce and store in said digital memory of the computer a dataset of M points, where M=m·N or m·(N−1)+1, in accordance with the method defined in claim 6 .

14

14. An image interpolator comprising a computer configured to process an input multidimensional dataset comprising a block of data of size N stored in a digital memory of the computer so as to provide an interpolation of the data stored therein to produce and store in said digital memory of the computer a dataset of M points, where M=m·N or m·(N−1)+1, in accordance with the method defined in claim 7 .

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

January 19, 2012

Publication Date

November 12, 2013

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Finite dataset interpolation method” (US-8582869). https://patentable.app/patents/US-8582869

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.