U.S. patent application number 10/629101 was filed with the patent office on 2004-04-15 for method of compressing an image.
Invention is credited to Acharya, Tinku, Bhattacharya, Bhargab Bikram, Kundu, Malay Kumar, Mitra, Suman Kumar, Murthy, Chivukula A..
Application Number | 20040071350 10/629101 |
Document ID | / |
Family ID | 32070134 |
Filed Date | 2004-04-15 |
United States Patent
Application |
20040071350 |
Kind Code |
A1 |
Acharya, Tinku ; et
al. |
April 15, 2004 |
Method of compressing an image
Abstract
Several embodiments in accordance with the invention are
disclosed. An embodiment for compressing a gray scale image is
described and an embodiment for decompressing the codebook produced
by compressing the gray scale image is described. Of course, the
invention is not limited to only gray scale images, however.
Inventors: |
Acharya, Tinku; (Chandler,
AZ) ; Bhattacharya, Bhargab Bikram; (Calcutta,
IN) ; Kundu, Malay Kumar; (Calcutta, IN) ;
Mitra, Suman Kumar; (Howrah, IN) ; Murthy, Chivukula
A.; (Calcutta, IN) |
Correspondence
Address: |
Dr. Russell W. Guenthner
Bull HN Information Systems Inc.
13430 N. Black Canyon Hwy - B55
Phoenix
AZ
85029
US
|
Family ID: |
32070134 |
Appl. No.: |
10/629101 |
Filed: |
July 28, 2003 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10629101 |
Jul 28, 2003 |
|
|
|
09597354 |
Jun 19, 2000 |
|
|
|
Current U.S.
Class: |
382/232 |
Current CPC
Class: |
G06T 9/001 20130101 |
Class at
Publication: |
382/232 |
International
Class: |
G06K 009/36 |
Claims
1. A method of compressing an image, the image being having gray
scale values, comprising: (a) dividing the image into quadrants;
(b) measuring the gray scale variation in each quadrant so that
each quadrant is either a low variation_ quadrant or a high
variation quadrant; (c) replacing any low variation quadrants with
an estimate for the particular quadrant; (d) determining whether
any high-variation quadrants can be estimated using a contractive
map of the image; and if not, applying (a), (b), (c), and (d) to,
the particular one or more high variation quadrants that cannot be
estimated by a contractive map of the image.
2. The method of claim 1, wherein the gray scale values comprise
the intensity image component of a color image.
3. The method of claim 1, wherein the gray scale variation in each
quadrant is measured using the statistical variance of the gray
scale values in the particular quadrant.
4. The method of claim 3, wherein a low variation quadrant has a
statistical variance below a predetermined threshold value and a
high variation quadrant has a statistical variance above or equal
to the predetermined threshold.
5. The method of claim 3, wherein a low variation quadrant has a
statistical variance below or equal to a predetermined threshold
value and a high variation quadrant has a statistical variance
above the predetermined threshold.
6. The method of claim 1, wherein the estimate of the particular
low variation quadrant comprises the statistical mean of the gray
scale values in the particular quadrant.
7. The method of claim 1, wherein the contractive map comprises
applying a two-by-two spatial summing filter.
8. The method of claim 7, wherein the high variation quadrant is
estimated using a scalar multiple of the contractive map of the
image.
9. An article comprising a storage medium having stored thereon
instructions, that, when executed by a computing platform, results
in compression of an image having gray scale values by: (a)
dividing the; image into quadrants; (b) measuring the gray scale
variation in each quadrant so that each quadrant is either a low
variation quadrant or a high variation quadrant; (c) replacing any
low variation quadrants with an estimate for the particular
quadrant; (d) determining whether any high variation quadrants can
be estimated using a contractive map of the image; and if not,
applying (a), (b), (c), and (d) to the particular one or more high
variation quadrants that cannot be estimated by a contractive map
of the image.
10. The article of claim 9, wherein the image having the gray scale
values comprises an intensity image component of a color image.
11. The article of claim 9, wherein the gray scale variation in
each quadrant is measured using the statistical variance of the
gray scale values in the particular quadrant.
12. The article of claim 9, wherein the estimate of the particular
low variation quadrant comprises the statistical mean of the gray
scale values in the particular quadrant.
13. The article of claim 9, wherein the contractive map comprises
applying a two-by-two spatial summing filter.
14. The article of claim 13, wherein the high variation quadrant is
estimated using a scalar multiple of the contractive map of the
image.
15. A method of decompressing a codebook for a compressed gray
scale image comprising: (a) forming a decompression estimate image
from scalar multiples of a contractive map of a previous
decompression estimate image, the scalar multiples being provided
by the codebook; (b) if the decompression estimate image and the
previous decompression estimate image are equal, then dividing the
decompression estimate into quadrants and applying (a), (b), and
(c) by treating the quadrants as the previous decompression
estimate image until the codebook is empty of scalar multiples to
apply; (c) if the decompression estimate image and the previous
decompression estimate image are not equal, apply (a), (b), and (c)
by treating the decompression estimate image as the previous
decompression estimate image.
16. The method of claim 15, wherein the codebook includes at least
one mean gray scale value, and further comprising: after the
codebook is empty of scalar multiples to apply to contractive maps:
scaling the result image based, at least in part, in a mean gray
scale value for the compressed gray scale image, and reconstructing
those quadrants for which a mean gray scale level has been
stored.
17. The method of claim 16, wherein a previous decompression
estimate image comprises an arbitrary image having dimensions of
the image being decompressed and having at least one non-zero pixel
value.
18. The method of claim 16, wherein the contractive map comprises
applying a two-by-two spatial summing filter.
19. An article comprising: a storage medium having stored thereon
instructions, that, when executed by a computing platform, results
in decompression of codebook for a compressed gray scale image by:
(a) forming a decompression estimate image from scalar multiples of
a contractive map of a previous decompression estimate image, the
scalar multiples being provided by the codebook; (b) if the
decompression estimate image and the previous decompression
estimate image are equal, then dividing the decompression estimate
into quadrants and applying (a), (b), and (c) by treating the
quadrants as the previous decompression estimate image until the
codebook is empty of scalar multiples to apply; (c) if the
decompression estimate image and the previous decompression
estimate image are not equal, apply (a), (b), and (c) by treating
the decompression estimate image as the previous decompression
estimate image.
20. The article of claim 19, wherein the codebook includes at least
one mean gray scale value, and wherein the instructions, when
executed, further result in: after the codebook is empty of scalar
multiples to apply to contractive maps: scaling the result image
based, at least in part, in a mean gray scale value for the
compressed gray scale image, and reconstructing those quadrants for
which a mean gray scale level has been stored.
21. The article of claim 19, wherein a previous decompression
estimate image comprises an arbitrary image having dimensions of
the image being decompressed and having at least one non-zero pixel
value.
22. The article of claim 19, wherein the instructions, when
executed, further result in the contractive map comprising applying
a two-by-two spatial summing filter.
23. A method of compressing an image, the image being having gray
scale values, comprising: (a) dividing the image into quadrants;
(b) determining whether any quadrants can be estimated using a
contractive map of the image; and if not, recursively applying (a)
and (b) to the particular one or more quadrants that cannot be
estimated by a contractive map of the image.
24. The method of claim 23, and further comprising: measuring the
gray scale variation in each quadrant so that each quadrant is
either a low variation quadrant or a high variation quadrant;
replacing any low variation quadrants with an estimate for the
particular quadrant.
Description
BACKGROUND
[0001] The present disclosure is related to compressing images.
[0002] As is well-known, image compression techniques are desirable
for a variety of purposes. For example, without limitation, images
are compressed for storage and/or for transmission across a
communications medium. Desirable aspects of image compression
techniques include: occupying less storage space; applicability to
a wide variety of images; and/or computationally efficient or fast
encoding/decoding. Improvements in image compression that include
one or all of these aspects continue to be desirable.
BRIEF DESCRIPTION OF THE DRAWINGS
[0003] The subject matter regarded as the invention is particularly
pointed out and distinctly claimed in the concluding portion of the
specification. The invention, however, both as to organization and
method of operation, together with objects, features, and
advantages thereof, may best be understood by reference to the
following detailed description when read with the accompanying
drawings in which:
[0004] FIG. 1 is a flowchart illustrating an embodiment of a method
of compressing an image in accordance with the present
invention;
[0005] FIG. 2 is a flowchart illustrating an embodiment of a method
of decompressing an image that corresponds to the embodiment of
FIG. 1.
DETAILED DESCRIPTION
[0006] In the following detailed description, numerous specific
details are set forth in order to provide a thorough understanding
of the invention. However, it will be understood by those skilled
in the art that the present invention may be practiced without
these specific details. In other instances, well-known methods,
procedures, components and circuits have not been described in
detail so as not to obscure the present invention.
[0007] As previously discussed, image compression is desirable for
a number of applications. Furthermore, it is desirable if such
compression techniques occupy less storage space, are applicable to
a wide variety of images, and/or have an encoding/decoding process
that is computationally efficient or fast.
[0008] One technique that is sometimes employed in compression,
such as in connection with the wavelet transform, or fractal-based
compression/decompression, as two examples, involves a
multi-resolution decomposition or multi-level division of the
image. An embodiment of the present invention, based at least in
part on fractal image compression, using an Iterative Function
System (IFS), guided by certain probability measures, shall be
described in more detail hereinafter. A basic notion of fractal
image compression lies in the usage of self-similarity embedded in
a given image. Using a set of affine contractive maps, as shall be
explained in more detail hereinafter, for example, portions of an
image may be reproduced, and by taking a collage of these parts,
the entire image may be regenerated. The set of affine contractive
maps is referred to in this context as IFS. For a particular
embodiment in accordance with the invention, although the invention
is not limited in scope in this respect, probabilities are assigned
to the maps, which in turn, affect the iteration process, and
generate, in this embodiment, a close, approximation of the image,
employing a manageable amount of computational complexity or
computational burden. A way to conceptualize the multi-level
division of the image, then, for this particular embodiment, is as
a "divide-and-conquer" approach. Therefore, an image may be
subdivided and then the subdivisions may be further subdivided in a
recursive fashion to determine how to compress the image
efficiently.
[0009] An embodiment of compressing an image in accordance with the
present invention is one such approach. FIG. 1 is a flowchart
illustrating this particular embodiment. It is noted that the
invention is not limited in scope to this particular embodiment and
many variations are possible within the scope of the present
invention.
[0010] In this particular embodiment, the image, in this
embodiment, a gray scale image, I, is divided into quadrants, here
designated I.sub.K, where K is 1, 2, 3, and 4. As shall be
described in more detail below, the mean (m.sub.K), variance
(v.sub.K), and probability (p.sub.K), for each quadrant is
calculated, although the invention is not limited in scope in this
respect. Other measures, other than the mean (m.sub.K), variance
(v.sub.K), and probability (p.sub.K), may alternatively be
employed, as described in more detail hereinafter. The variation in
gray scale values for the pixels in each quadrant is measured so
that each quadrant is classified as a low variation quadrant or a
high variation quadrant in terms of its gray scale levels. A low
variation quadrant indicates that the image in that particular
quadrant is relatively smooth. Therefore, in this particular
embodiment, for a low variation quadrant, the gray scale value at
each pixel location is replaced with a single gray scale value
estimate for the particular quadrant. Of course, in alternative
embodiments, multiple estimates of gray scale values may be
employed, instead. For the quadrants of the image that are high
variation quadrants, these may be estimated using what is referred
to in this context as a contractive map of the image along with the
probability (p.sub.K), as shall be discussed in more detail.
However, if the high variation quadrant may not be accurately
estimated using a contractive map of the image, then that
particular high variation quadrant is further subdivided and the
previous approach is then applied to the subdivisions.
[0011] Although the invention is not limited in scope to a
particular approach to measuring the gray scale variation of a
quadrant of an image, in this particular embodiment, the gray scale
variation is measured using the statistical variance, v.sub.K, of
the gray scale values of a particular quadrant, as indicated above.
Then, whether a quadrant qualifies as a low variation quadrant or a
high variation quadrant, in this particular embodiment, depends
upon the variance of the quadrant measured against a pre-determined
threshold value. It is noted that many different approaches to
determine a threshold level are possible and the invention is not
limited in scope to a particular approach. Likewise, in alternative
embodiments, it may be desirable to adjust the threshold depending,
at least in part, upon the size of the image or image blocks, or,
depending, at least in part, upon the exposure of the particular
image, although the invention is also not limited in scope in these
respects, as well.
[0012] In one embodiment, a high variation quadrant is where the
statistical variance is above or equal to the pre-determined
threshold, and a low variation quadrant is otherwise. In another
embodiment, a low variation quadrant is where the statistical
variance is below or equal to the predetermined threshold, and a
high variation quadrant is otherwise.
[0013] Likewise, when replacing a low variation quadrant with an
estimate of the gray, scale level for the particular quadrant, many
approaches are possible and the invention is not limited in scope
to a single approach. Nonetheless, in this particular embodiment,
the statistical mean (m.sub.K) of the gray scale values in the
particular quadrant are employed, as previously described.
Therefore, if a quadrant is a low variation quadrant, each pixel
location gray scale value in that quadrant is replaced by the
statistically computed mean gray scale value for the quadrant,
again, in this particular embodiment.
[0014] As indicated above, an attempt is made to estimate
particular quadrants using a contractive map of the image along
with the probability (p.sub.K) In this particular embodiment, the
contractive map is formed by considering non-overlapping windows of
size two-by-two contiguous pixels over the entire image and summing
the four pixels within the window for the particular pixel
location. In this context, this is referred to as a spatial summing
filter, here, a two-by-two summing filter. Thus, in this particular
embodiment, the size of the contractive map of the image becomes
the same as the size of a quadrant of the image.
[0015] It is noted, of course, that alternative approaches to
forming a contractive map maybe employed. For example, a window of
size three-by-three or perhaps a window of a shape other than a
square shape may be employed. Nonetheless, in addition to forming a
contractive map, for the particular quadrant, the probability is
calculated for the quadrant. In this embodiment, for a quadrant,
the probability of the quadrant is the ratio of the sum of the
pixel gray scale values over the quadrant to the sum of the pixel
gray scale values over the image. This may be illustrated by the
following equation.
p.sub.K=S.sub.K/S, [1]
[0016] where S.sub.K is the sum of gray scale values for the pixel
locations in quadrant I.sub.K of image I, where K=1 to 4, and S is
the sum of gray scale values for the pixel locations in I; and
.SIGMA.p.sub.K=1, [2]
[0017] where K=1 to 4.
[0018] A particular quadrant is then estimated by multiplying the
probability of that quadrant times the contractive map of the
image, the multiplication being a scalar multiplication of the
contractive map.
[0019] Once this is complete for-the quadrants of an image, an
estimate, I.sup.1, of the image, I, may be formed by combining the
estimates for the quadrants. Another image estimate, I.sup.2, is
formed by iteratively applying the previous approach, quadrants are
estimated using the me an gray scale value and high variation
quadrants are estimated using a contractive map of the estimate
image, I.sup.1, scaled by the probability of the particular
quadrant. If this estimate image, I.sup.2, is equal to the image it
was estimated from, I.sup.1, then this recursive estimation process
is terminated, and the resulting estimate image, I.sup.1, is
divided into quadrants that are compared with corresponding
quadrants of the original image. Alternatively, if the estimates
are not equal, then the new estimate, I.sup.2, is treated as the
image to be estimated and the previously described approach is
recursively repeated until the estimate image, I.sup.N+1, equals
the image from which it is estimated, I.sup.N, after N such
iterations.
[0020] Once an estimate, I.sup.N+1, equals the image from which it
is estimated, I.sup.N, for each quadrant of the estimate image,
I.sup.N, low variation quadrants are estimated using mean gray
scale values. If the particular quadrant is then "close" to the
corresponding quadrant of the original image, I, those quadrants
are stored as either the mean gray scale value of the original
image, if it was a low variation quadrant, or the probability value
for the original image, if it was a high variation quadrant. If all
quadrants of the estimate image are close to the original image,
compression is complete. However, if some quadrants of the estimate
are not close, then those or that quadrant may not be estimated
using a mean gray scale value or a contractive map of the image
along with the probability (p.sub.K) at this particular stage.
Therefore, the previous approach, beginning with subdivision into
quadrants, is now applied to that or those quadrants of the
original image, and that or those quadrants of the original image
are treated as described above. In other words, the quadrant or
quadrants are treated as the original image in the previous
description, divided into four quadrants, and so forth.
[0021] Referring now to FIG. 1 and flowchart 100, at block 110, the
image is received or input. It is noted that while the input image
comprises an image of gray scale levels, this image may comprise a
component of a color image, particularly the intensity component.
At block 120, of FIG. 1, the image is divided into four equal
quadrants, designated here as I.sub.K, where K varies from one to
four, in this particular embodiment. At block 130, as previously
described, for each quadrant I.sub.K, calculate the mean, m.sub.K,
the variance, v.sub.K, and the probability, p.sub.K, for each
quadrant. These may be computed in the manner previously described.
At block 140, compare the variance of each quadrant against a
threshold value. If all quadrants have a variance are below the
threshold value, at blocks 145 and 155, the image compression is
complete by storing the mean gray scale for each respective
quadrant. However, alternatively, at block 160, instead, the
quadrants are estimated using a contractive map, as previously
described.
[0022] Blocks 170 and 180 refer to an approach where the estimate
of the image is formed from the estimate of the quadrants, the
previous calculations are repeated and so forth, until two
successive image estimates are equal. Once two successive image
estimates are equal, low variation quadrants, are estimated using
mean gray scale values at block 185. At block 190, the quadrants of
the estimate are compared with the quadrants of the original image.
At 195, if all of the estimated quadrants are close to the original
quadrants, then the entire image is estimated using mean gray scale
values and/or probability values, depending on whether a particular
quadrant is a low variation quadrant or a high variation quadrant.
It is noted, in this context, that any one of a number of different
measures may be employed to determine whether the estimate of the
quadrant and the corresponding quadrant of the original estimate
are "close," such as mean squared error (MSE) and other approaches.
If on the other hand, not all the quadrant estimates are close to
the corresponding original image quadrants, then for those
quadrants that are close, the estimate of the quadrant is employed,
whether the mean or the probability for the particular quadrant
and, for those quadrants that are not close, the particular
quadrant is treated as an image and is subdivided, at block 120,
and so forth. It is noted in this context that for this particular
embodiment a quadrant which is estimated and not close to the
original image would probably be a high variation quadrant, due to
the presence of block 185.
[0023] FIG. 2 is a flowchart illustrating an embodiment 200 of a
method of decompressing an image, this embodiment corresponding to
the embodiment of FIG. 1. Of course, the decompression process or
method will, in general, correspond with the particular compression
process or method, and, therefore, the invention is not restricted
in scope to the decompression embodiment illustrated.
[0024] This embodiment begins with an arbitrary image, J, having
the same dimensions as the image to be decompressed, this arbitrary
image having at least one zero pixel gray scale value. Therefore,
at block 210, this image is read or input and the "codebook" of the
compressed image is read or input. At block 220, the mean or
average value for the compressed image is read from the codebook.
At 230, the average value of the arbitrary image is computed. At
240, the arbitrary image is divided into quadrants. At 250, 260,
270, and 280, if the code for each quadrant from the codebook is a
mean value, m.sub.K, then the image is decompressed using these
values as indicated in block 270, and decompression is
complete.
[0025] Otherwise, at blocks 290, 310, and 320, the probabilities
from the codebook are employed with a contractive map of the
arbitrary image to form a decompression estimate, J.sup.1. This is
then repeated using the next level of the codebook to form
decompression estimate, J.sup.2. If these estimates are not equal,
this is continued using the codebook until two successive
estimates, J.sup.N, and J.sup.N+!, are equal, at block 320.
[0026] If two successive estimates are equal, then, at block 330,
the estimate, J.sup.N, is divided into quadrants. If probabilities
remain in the codebook, then, at block 340, the corresponding
quadrant of J.sup.N is treated as the arbitrary image, J, and the
process is recursively applied to this image at block 240.
Eventually, once no more codes remain for the probability, at block
350, the resulting image is scaled, and, at block 360, the
quadrants in which the mean gray scale level has been stored are
reconstructed.
[0027] It will, of course, be understood that, although particular
embodiments have just been described, the invention is not limited
in scope to a particular embodiment or implementation. For example,
one embodiment may be in hardware, whereas another embodiment may
be in software. Likewise, an embodiment may be in firmware, or any
combination of hardware, software, or firmware, for example.
Likewise, although the invention is not limited in scope in this
respect, one embodiment may comprise an article, such as a storage
medium. Such a storage medium, such as, for example, a CD-ROM, or a
disk, may have stored thereon instructions, which when executed by
a system, such as a host computer or computing system or platform,
or an imaging system, may result in a method of compressing or
decompressing an image, such as an image of gray scale values, in
accordance with the invention, such as, for example, one of the
embodiments previously described.
[0028] While certain features of the invention have been
illustrated and described herein, many modifications,
substitutions, changes and equivalents will now occur to those
skilled in the art. It is, therefore, to be understood that the
appended claims are intended to cover all such modifications and
changes as fall within the true spirit of the invention.
* * * * *