← Back to Patent Explorer
US6298166B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Image transformations in the compressed domain

Assignee: Seiko Epson Corp
•
Filing: 1998-03-30
•
Granted: 2001-10-02
•
Expires: 2018-03-30
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Image processing techniques which involve direct manipulation of the compressed domain representation of an image to achieve the desired spatial domain processing without having to go through a complete decompression and compression process. The techniques include processing approaches for performing the eight operations in D4 (the dihedral group of symmetries of a square) on JPEG images using the discrete cosine transform (DCT) domain representation of the images directly. For a task such as image rotation by 90° (an operation in D4), DCT-domain based methods can yield nearly a five-fold increase in speed over a spatial-domain based technique. These simple compressed-domain based processing techniques are well suited to the imaging tasks that are needed in a JPEG-based digital still-camera system.

Inventors

  • 👤 Viresh Ratnakar
  • 👤 Victor Ivashin
  • 👤 Vasudev Bhaskaran

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 12:15
CPC Classifications
H; H04; H04N; H04N19/00; H04N19/48; G; G06; G06T; G06T3/00; G06T3/60; H04N19/90

Claims Analysis

Total Claims: 40
Claim 1
Independent Claim 170 words
A method for performing a dihedral symmetry operation on a spatial domain representation of a digital image by manipulating a linear transform domain representation of the digital image, said method comprising the steps of: parsing compressed image data of the digital image to extract an offset value and a DC value for each of a plurality of linear-transform-based coded data blocks, wherein elements of the data blocks were previously coded as a sequence of symbol trios so that the steps of said method are performed without de-zigzagging and zigzagging the elements of each data block; accessing each of the plurality of linear-transform-based coded data blocks by using the corresponding offset value; extracting a sequence of non-zero elements from each of the plurality of linear-transform-based coded data blocks; transposing the sequence of non-zero elements within each data block without expanding into a full data block; and coding the transposed sequence of non-zero elements of each data block; wherein the spatial domain representation of the digital image undergoes a dihedral symmetry operation.
Claim 2
Independent Claim 170 words
A method for performing a dihedral symmetry operation on a spatial domain representation of a digital image by manipulating a linear transform domain representation of the digital image, said method comprising the steps of: parsing compressed image data of the digital image to extract an offset value and a DC value for each of a plurality of linear-transform-based coded data blocks, wherein elements of the data blocks were previously coded as a sequence of symbol trios so that the steps of said method are performed without de-zigzagging and zigzagging the elements of each data block; accessing each of the plurality of linear-transform-based coded data blocks by using the corresponding offset value; extracting a sequence of non-zero elements from each of the plurality of linear-transform-based coded data blocks; transposing the sequence of non-zero elements within each data block without expanding into a full data block; and coding the transposed sequence of non-zero elements of each data block; wherein the spatial domain representation of the digital image undergoes a dihedral symmetry operation.
Claim 3
Dependent Claim 76 words
The method as recited in claim 1 , wherein the step of transposing the sequence of non-zero elements within each of the data blocks further comprises the steps of: sequentially examining the sequence of non-zero elements of each of the plurality of data blocks; determining the non-zero elements that are positioned within a same one of a plurality of cross-diagonals of each data block; and reversing the order of non-zero elements positioned within the same cross-diagonal.
Claim 4
Dependent Claim 22 words
The method as recited in claim 1 , wherein the dihedral symmetry operation comprises flipping the digital image over its main diagonal.
Claim 5
Dependent Claim 40 words
The method as recited in claim 1 , further comprising the step of applying sign-changes to the sequence of non-zero elements within each data block wherein the dihedral symmetry operation comprises flipping the digital image over its main cross-diagonal axis.
Claim 6
Dependent Claim 37 words
The method as recited in claim 1 , further comprising the step of applying sign-changes to the sequence of non-zero elements within each data block wherein the dihedral symmetry operation comprises rotating the digital image 90° clockwise.
Claim 7
Dependent Claim 37 words
The method as recited in claim 1 , further comprising the step of applying sign-changes to the sequence of non-zero elements within each data block wherein the dihedral symmetry operation comprises rotating the digital image 90° counterclockwise.
Claim 8
Dependent Claim 36 words
The method as recited in claim 4 , wherein, after transposing the sequence of non-zero elements within each data block, sign-reversing every other non-zero element within each data block without expanding into a full data block.
Claim 9
Dependent Claim 36 words
The method as recited in claim 5 , wherein, after transposing the sequence of non-zero elements within each data block, sign-reversing the odd-column non-zero elements within each data block without expanding into a full data block.
Claim 10
Dependent Claim 36 words
The method as recited in claim 6 , wherein, after transposing the sequence of non-zero elements within each data block, sign-reversing the odd-row non-zero elements within each data block without expanding into a full data block.
Claim 11
Dependent Claim 216 words
A digital camera, comprising: a sensor for capturing light and converting the light into an analog image signal; an analog-to-digital converter for converting the analog image signal to a digital image in spatial domain; and a digital image processor for compressing the digital image from a spatial domain representation of the digital image to a linear transform domain representation of the digital image defined by a plurality of linear-transform-based coded data blocks, wherein elements of the data blocks are coded as a sequence of symbol trios during the compressing, wherein said digital image processor parses compressed image data of the digital image to extract an offset value and a DC value for each of the plurality of linear-transform-based coded data blocks, accesses each of the plurality of linear-transform-based coded data blocks by using the corresponding offset value, extracts a sequence of non-zero elements of each of the plurality of linear-transform-based coded data blocks, transposes the sequence of non-zero elements within each data block without expanding into a full data block, applies sign change to non-zero elements within each data block and codes the sequence of non-zero elements of each data block, without de-zigzagging and zigzagging the elements of each data block, to perform a dihedral symmetry operation on the spatial domain representation of the digital image.
Claim 12
Dependent Claim 216 words
A digital camera, comprising: a sensor for capturing light and converting the light into an analog image signal; an analog-to-digital converter for converting the analog image signal to a digital image in spatial domain; and a digital image processor for compressing the digital image from a spatial domain representation of the digital image to a linear transform domain representation of the digital image defined by a plurality of linear-transform-based coded data blocks, wherein elements of the data blocks are coded as a sequence of symbol trios during the compressing, wherein said digital image processor parses compressed image data of the digital image to extract an offset value and a DC value for each of the plurality of linear-transform-based coded data blocks, accesses each of the plurality of linear-transform-based coded data blocks by using the corresponding offset value, extracts a sequence of non-zero elements of each of the plurality of linear-transform-based coded data blocks, transposes the sequence of non-zero elements within each data block without expanding into a full data block, applies sign change to non-zero elements within each data block and codes the sequence of non-zero elements of each data block, without de-zigzagging and zigzagging the elements of each data block, to perform a dihedral symmetry operation on the spatial domain representation of the digital image.
Claim 13
Dependent Claim 21 words
The digital camera as recited in claim 10 , wherein the dihedral symmetry operation comprises rotating the digital image 90° clockwise.
Claim 14
Dependent Claim 24 words
The digital camera as recited in claim 10 , wherein the dihedral symmetry operation comprises flipping the digital image over its main cross diagonal.
Claim 15
Dependent Claim 21 words
The digital camera as recited in claim 10 , wherein the dihedral symmetry operation comprises rotating the digital image 90° counterclockwise.
Claim 16
Dependent Claim 45 words
The digital camera as recited in claim 11 , wherein, after said digital image processor transposes the sequence of non-zero elements within each data block, said digital image processor sign-reverses the odd-column non-zero elements within each data block without expanding into a full data block.
Claim 17
Dependent Claim 45 words
The digital camera as recited in claim 12 , wherein, after said digital image processor transposes the sequence of non-zero elements within each data block, said digital image processor sign-reverses every other non-zero element within each data block without expanding into a full data block.
Claim 18
Dependent Claim 45 words
The digital camera as recited in claim 13 , wherein, after said digital image processor transposes the sequence of non-zero elements within each data block, said digital image processor sign-reverses the odd-row non-zero elements within each data block without expanding into a full data block.
Claim 19
Dependent Claim 182 words
A computer system having a computer-readable program code embodied therein for causing the computer system to geometrically transform a digital image in spatial domain by performing the steps of: processing the digital image to obtain a linear transform domain representation of the digital image defined by a plurality of linear-transform-based coded data blocks, wherein elements of the data blocks are coded as a sequence of symbol trios so that the steps are performed without de-zigzagging and zigzagging the elements of each data block; parsing the compressed image data to extract an offset value and a DC value for each of the plurality of linear-transform-based coded data blocks; accessing each of the plurality of linear-transform-based coded data blocks by using the corresponding offset value; extracting a sequence of non-zero elements from each of the plurality of linear-transform-based coded data blocks; transposing the sequence of non-zero elements within each data block without expanding into a full data block; and coding the transposed sequence of non-zero elements of each data block; wherein the spatial domain representation of the digital image undergoes a dihedral symmetry operation.
Claim 20
Dependent Claim 182 words
A computer system having a computer-readable program code embodied therein for causing the computer system to geometrically transform a digital image in spatial domain by performing the steps of: processing the digital image to obtain a linear transform domain representation of the digital image defined by a plurality of linear-transform-based coded data blocks, wherein elements of the data blocks are coded as a sequence of symbol trios so that the steps are performed without de-zigzagging and zigzagging the elements of each data block; parsing the compressed image data to extract an offset value and a DC value for each of the plurality of linear-transform-based coded data blocks; accessing each of the plurality of linear-transform-based coded data blocks by using the corresponding offset value; extracting a sequence of non-zero elements from each of the plurality of linear-transform-based coded data blocks; transposing the sequence of non-zero elements within each data block without expanding into a full data block; and coding the transposed sequence of non-zero elements of each data block; wherein the spatial domain representation of the digital image undergoes a dihedral symmetry operation.
Claim 21
Dependent Claim 77 words
The computer system as recited in claim 17 , wherein the step of transposing the sequence of non-zero elements within each of the data blocks further comprises the steps of: sequentially examining the sequence of non-zero elements of each of the plurality of data blocks; determining the non-zero elements that are positioned within a same one of a plurality of cross-diagonals of each data block; and reversing the order of non-zero elements positioned within the same cross-diagonal.
Claim 22
Dependent Claim 23 words
The computer system as recited in claim 17 , wherein the dihedral symmetry operation comprises flipping the digital image over its main diagonal.
Claim 23
Dependent Claim 36 words
The computer system as recited in claim 17 , further comprising the step of applying a sign change to non-zero elements wherein the dihedral symmetry operation comprises rotating the digital image over its main cross-diagonal axis.
Claim 24
Dependent Claim 33 words
The computer system as recited in claim 17 , further comprising the step of applying a sign change to non-zero elements wherein the dihedral symmetry operation comprises rotating the digital image 90° clockwise.
Claim 25
Dependent Claim 33 words
The computer system as recited in claim 17 , further comprising the step of applying a sign change to non-zero elements wherein the dihedral symmetry operation comprises rotating the digital image 90° counterclockwise.
Claim 26
Dependent Claim 37 words
The computer system as recited in claim 20 , wherein, after transposing the sequence of non-zero elements within each data block, sign-reversing every other non-zero element within each data block without expanding into a full data block.
Claim 27
Dependent Claim 37 words
The computer system as recited in claim 21 , wherein, after transposing the sequence of non-zero elements within each data block, sign-reversing the odd-column non-zero elements within each data block without expanding into a full data block.
Claim 28
Dependent Claim 37 words
The computer system as recited in claim 22 , wherein, after transposing the sequence of non-zero elements within each data block, sign-reversing the odd-row non-zero elements within each data block without expanding into a full data block.
Claim 29
Independent Claim 172 words
A method for performing a dihedral symmetry operation on a spatial domain representation of a digital image by manipulating a linear transform domain representation of the digital image, said method comprising the steps of: parsing compressed image data of the digital image to extract an offset value and a DC value for each of a plurality of linear-transform-based coded data blocks, wherein elements of the data block were previously coded as a sequence of symbol trios so that the steps of said method are performed without de-zigzagging and zigzagging the elements of each data block; accessing each of the plurality of linear-transform-based coded data blocks by using the corresponding offset value; extracting a sequence of non-zero elements from each of the plurality of linear-transform-based coded data blocks; applying sign-changes to the sequence of non-zero elements within each data block without expanding into a full data block; and coding the resulting sequence of non-zero elements of each data block; wherein the spatial domain representation of the digital image undergoes a dihedral symmetry operation.
Claim 30
Independent Claim 172 words
A method for performing a dihedral symmetry operation on a spatial domain representation of a digital image by manipulating a linear transform domain representation of the digital image, said method comprising the steps of: parsing compressed image data of the digital image to extract an offset value and a DC value for each of a plurality of linear-transform-based coded data blocks, wherein elements of the data block were previously coded as a sequence of symbol trios so that the steps of said method are performed without de-zigzagging and zigzagging the elements of each data block; accessing each of the plurality of linear-transform-based coded data blocks by using the corresponding offset value; extracting a sequence of non-zero elements from each of the plurality of linear-transform-based coded data blocks; applying sign-changes to the sequence of non-zero elements within each data block without expanding into a full data block; and coding the resulting sequence of non-zero elements of each data block; wherein the spatial domain representation of the digital image undergoes a dihedral symmetry operation.
Claim 31
Dependent Claim 22 words
The method as recited in claim 26 , wherein the dihedral symmetry operation comprises rotating the digital image over its middle-horizontal axis.
Claim 32
Dependent Claim 22 words
The method as recited in claim 26 , wherein the dihedral symmetry operation comprises rotating the digital image over its middle-vertical axis.
Claim 33
Dependent Claim 19 words
The method as recited in claim 26 , wherein the dihedral symmetry operation comprises rotating the digital image 180°.
Claim 34
Dependent Claim 32 words
The method as recited in claim 27 , wherein the step of applying sign-changes is applied to sign-reverse the odd-column elements within each data block without expanding into a full data block.
Claim 35
Dependent Claim 32 words
The method as recited in claim 28 , wherein the step of applying sign-changes is applied to sign-reverse the odd-row elements within each data block without expanding into a full data block.
Claim 36
Dependent Claim 32 words
The method as recited in claim 29 , wherein the step of applying sign-changes is applied to sign-reverse every other element within each data block without expanding into a full data block.
Claim 37
Dependent Claim 100 words
The method as recited in claim 1 , wherein the symbol trio comprises first, second and third symbols, the first symbol representing the number of consecutive zeros in a zigzag ordering of the corresponding data block, and the next non-zero element has a value x such that: S=┌log 2 (|x|+1)┐, V = S   least    significant    bits    of   { x when   x > 0 x - 1 when   x < 0.  wherein S represents the second symbol and V represents the third symbol.
Claim 38
Dependent Claim 101 words
The digital camera as recited in claim 10 , wherein the symbol trio comprises first, second and third symbols, the first symbol representing the number of consecutive zeros in a zigzag ordering of the corresponding data block, and the next non-zero element has a value x such that: S=┌log 2 (|x|+1)┐, V = S   least    significant    bits    of   { x when   x > 0 x - 1 when   x < 0.  wherein S represents the second symbol and V represents the third symbol.
Claim 39
Dependent Claim 101 words
The computer system as recited in claim 17 , wherein the symbol trio comprises first, second and third symbols, the first symbol representing the number of consecutive zeros in a zigzag ordering of the corresponding data block, and the next non-zero element has a value x such that: S=┌log 2 (|x|+1), V = S   least    significant    bits    of   { x when   x > 0 x - 1 when   x < 0.  wherein S represents the second symbol and V represents the third symbol.
Claim 40
Dependent Claim 100 words
The method as recited in claim 26 , wherein the symbol trio comprises first, second and third symbols, the first symbol representing the number of consecutive zeros in a zigzag ordering of the corresponding data block, and the next non-zero element has a value x such that: S=┌log 2 (|x|+1), V = S   least    significant    bits    of   { x when   x > 0 x - 1 when   x < 0.  wherein S represents the second symbol and V represents the third symbol.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-10-01 2005-04-02 2005-10-02 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-10-01 2009-04-02 2009-10-02 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-10-01 2013-04-02 2013-10-02 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag