Thumbnail manipulation using fast and aspect ratio zooming, compressing and scaling
First Claim
1. A method of zooming an image on a display device, said method comprising the successive steps of:
- displaying a first image at a first predetermined size;
stretching or shrinking the first image to one or more predetermined image sizes;
successively displaying at least one modified image, each one of said modified image being related to a respective one of said stretched or shrunken images; and
thereafter displaying a second image related to a zoomed version of said first image at a second predetermined image size different from said first predetermined image size.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus manipulates thumbnail images as used in image-based browsing file management systems. Zooming in and out of thumbnail images can be performed without a continued need to decompress a true image thus providing for faster operation. Pixel interpolation and/or replication are used to generate intermediate images that are displayed to deliver to the user a perception of a transitory zoom yet are of sufficient detail to maintain user orientation. Aspect ratio zooming of thumbnail containment areas is also disclosed which facilitates ease of browsing. The compression of thumbnail type images using a discrete wavelet transform facilitates the fast zoom of thumbnails and their associated containment areas.
228 Citations
96 Claims
-
1. A method of zooming an image on a display device, said method comprising the successive steps of:
-
displaying a first image at a first predetermined size;
stretching or shrinking the first image to one or more predetermined image sizes;
successively displaying at least one modified image, each one of said modified image being related to a respective one of said stretched or shrunken images; and
thereafter displaying a second image related to a zoomed version of said first image at a second predetermined image size different from said first predetermined image size. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
transforming said digital image to derive a plurality of coefficients, each coefficient represented by a predefined bit sequence;
selecting a portion of said plurality of coefficients as a region;
(a) scanning the significance of each bitplane of said selected region from a most significant bitplane towards a least significant bitplane and providing a first token in said coded representation for each insignificant bitplane until a significant bitplane is determined, wherein a second token is provided in said coded representation for said significant bitplane;
(b) partitioning said selected region into two or more subregions having a predetermined form, and setting each of said subregions as said selected region;
(c) repeating steps (a) and (b) commencing from said significant bitplane until said selected region has a predetermined size, wherein said coefficients of said selected region are coded and provided in said coded representation.
-
-
10. A method according to claim 9, wherein said transforming step comprises applying a discrete wavelet transform to said digital image.
-
11. A method according to claim 10, wherein said portion comprises a subband of said plurality of coefficients.
-
12. A method according to claim 9, wherein said region comprises said entire plurality of coefficients.
-
13. A method according to claim 9, wherein said first and second tokens comprise bit values of 0 and 1, respectively.
-
14. A method according to claim 9, wherein said subregions are equally sized.
-
15. A method according to claim 14, wherein said subregions are square.
-
16. A method according to claim 9, wherein said predetermined size of said subregion is a 1×
- 1 coefficient.
-
17. A method according to claim 16, wherein said 1×
- 1 coefficient is encoded by outputting bits of said corresponding bit sequence beginning with the respective significant bitplane.
-
18. A method according to claim 17, wherein only bits of said corresponding bit sequence above a predetermined minimum bit level are output in said coded representation.
-
19. A method according to claim 9, wherein, in step (c), steps (a) and (b) are repeated otherwise until each bitplane of said selected region has been scanned.
-
20. A method according to claim 19, wherein each bitplane of said selected region above a minimum bit level has been scanned.
-
21. A method according to claim 1, wherein the first and second image are different resolutions of a single image.
-
22. A method according to claim 1, wherein said stretching or shrinking comprises adjusting the size of the first image by manipulating pixels of the first image.
-
23. A method according to claim 22, wherein said stretching comprises mathematically manipulating values of groups of pixels to provide at least one pixel value, and replicating said at least one pixel value.
-
24. A method according to claim 22, wherein said shrinking comprises mathematically manipulating groups of pixels to provide at least one pixel value, and assigning said one pixel value to a limited number of pixels smaller than that contained in said groups.
-
25. A method according to claim 24 wherein said assigning comprises discarding pixels from said image.
-
26. A method of zooming an image on a display device, said method comprising the successive steps of:
-
(a) decompressing a compressed true image to a first representation of said image at a predetermined size, and displaying said first representation;
(b) if the predetermined size is smaller than a desired image size then (i) stretching the representation to a larger image size and displaying said stretched representation; and
(ii) repeating step (b)(i) until said desired image size is reached;
(c) if the predetermined size is larger than a desired image size then (i) shrinking the representation to a smaller image size and displaying said shrunk representation; and
(ii) repeating step (c)(i) until said desired image size is reached, and (d) decompressing the compressed true image to a further zoomed representation at said desired image size being different from the predetermined size and displaying said further representation. - View Dependent Claims (27)
-
-
28. Apparatus for zooming an image for display on a display device, said apparatus comprising:
-
means for displaying a first representation of said image at a first predetermined size;
means for stretching or shrinking said first representation to at least one further predetermined size;
means for successively displaying said stretched or shrunken representation at each said further predetermined size, and means for displaying a second representation of said image related to a zoomed version of said first image, at a second predetermined size being different from said first predetermined image size. - View Dependent Claims (29)
-
-
30. A computer program product comprising a computer readable medium having a computer program recorded thereon for zooming images for display on a display device, said computer program product comprising:
-
means for displaying a first representation of said image at a first predetermined size;
means for stretching or shrinking said first representation to at least one further predetermined size;
means for successively displaying said stretched or shrunken representation at each said further predetermined size, and means for displaying a second representation of said image related to a zoomed version of said first image at a second predetermined size being different from said first predetermined image size.
-
-
31. A method of zooming thumbnails of digital images for use in image browsing, said method comprising the steps of:
-
laying out said thumbnails in at least one containment area having the same aspect ratio as an available display area of a display means; and
scaling said thumbnails contained in said at least one containment area to fit within the available area of said containment area. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38)
displaying a first representation of said image at a first predetermined size, said first representation having a first predetermined resolution;
stretching or shrinking the first representation to provide one or more modified representations;
successively displaying said one or more modified representations; and
thereafter displaying a further representation of said image at a second predetermined size, said further representation having a further predetermined resolution;
wherein said further predetermined size and resolution are different to said first predetermined size and resolution.
-
-
39. Apparatus for zooming thumbnails of digital images for use in image browsing, said thumbnails being displayable on a display means, said apparatus comprising:
-
means for laying out said thumbnails in at least one containment area having the same aspect ratio as an available display area of a display means; and
means for scaling said thumbnails contained in said at least one containment area to fit within the available area of said containment area. - View Dependent Claims (40)
a computer;
a computer readable medium having recorded thereon a computer program for zooming said digital images, said computer program carrying out the steps of;
laying out said thumbnails in at least one containment area having the same aspect ratio as an available display area of a display means; and
scaling said thumbnails contained in said at least one containment area to fit within the available area of said containment area, wherein said computer program can be loaded into and run by said computer to implement said apparatus.
-
-
41. A computer program product having a computer readable medium having a computer program recorded thereon for zooming thumbnails of digital images for use in image browsing, said computer program product comprising:
-
means for laying out said thumbnails in at least one containment area having the same aspect ratio as an available display area of a display means; and
means for scaling said thumbnails contained in said at least one containment area to fit within the available area of said containment area.
-
-
42. A method of scaling thumbnails representing digital images, said method comprising the step of:
-
encoding a digital image using a hierarchical representation to provide a thumbnail. - View Dependent Claims (43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68)
transforming said digital image to derive a plurality of coefficients, each coefficient represented by a predefined bit sequence;
selecting a portion of said plurality of coefficients as a region;
(a) scanning the significance of each bitplane of said selected region from a most significant bitplane towards a least significant bitplane and providing a first token in said coded representation for each insignificant bitplane until a significant bitplane is determined, wherein a second token is provided in said coded representation for said significant bitplane;
(b) partitioning said selected region into two or more subregions having a predetermined form, and setting each of said subregions as said selected region;
(c) repeating steps (a) and (b) commencing from said significant bitplane until said selected region has a predetermined size, wherein said coefficients of said selected region are coded and provided in said coded representation.
-
-
54. A method according to claim 53, wherein said transforming step comprises applying a discrete wavelet transform to said digital image.
-
55. A method according to claim 54, wherein said portion comprises a subband of said plurality of coefficients.
-
56. A method according to claim 53, wherein said region comprises said entire plurality of coefficients.
-
57. A method according to claim 53, wherein said first and second tokens comprise bit values of 0 and 1, respectively.
-
58. A method according to claim 53, wherein said subregions are equally sized.
-
59. A method according to claim 58, wherein said subregions are square.
-
60. A method according to claim 53, wherein said predetermined size of said subregion is a 1×
- 1 coefficient.
-
61. A method according to claim 60, wherein said 1×
- 1 coefficient is encoded by outputting bits of said corresponding bit sequence beginning with the respective significant bitplane.
-
62. A method according to claim 61, wherein only bits of said corresponding bit sequence above a predetermined minimum bit level are output in said coded representation.
-
63. A method according to claim 53, wherein, in step (c), steps (a) and (b) are repeated otherwise until each bitplane of said selected region has been scanned.
-
64. A method according to claim 63, wherein each bitplane of said selected region above a minimum bit level has been scanned.
-
65. A method according to claim 52, wherein said encoding comprises the steps of:
-
decomposing said image using a subband transform to provide a number of subbands;
for each subband, selecting said subband as an initial region and performing the following sub-steps;
(a) checking if a current bit level of the selected region is significant;
(b) if said current bit level is significant, outputting a first token in a coded representation and partitioning said selected region into a number of equally sized sub-regions, wherein each sub-region is processed as said selected region in turn;
(c) if said current bit level is insignificant, outputting a second token in said coded representation and selecting the next lower bit level of said selected region as said current bit level;
(d) repeating steps (a) to (c) until said current bit level is less than a specified minimum bit level, or said selected region has a predetermined size and coefficients of said selected region are coded in said coded representation.
-
-
66. A method according to claim 65, wherein said coefficients of said selected region are coded by representing each coefficient by the bits between the corresponding current bit level and the minimum bit level.
-
67. A method according to claim 65, wherein said subband transform comprises a discrete wavelet transform.
-
68. A method according to claim 52, wherein said encoding comprises the steps of:
-
a) dividing the digital image into a plurality of blocks;
b) applying a subband transform to each of said blocks to provide a plurality of AC subband regions, at one or more resolutions, and a DC subband region for each block;
c) selecting said DC subband region as a selected region and performing the following sub-steps;
ca) checking if a current bitplane of the selected region is significant;
cb) if said current bitplane is significant, outputting a first token in a coded representation and partitioning said selected region into a number of sub-regions, wherein each sub-region is processed as the selected region in turn;
cc) if said current bitplane is insignificant, outputting a second token in the coded representation and selecting the next lower bitplane of the selected region as the current bitplane;
cd) repeating sub-steps ca) to cc) until said current bitplane is less than a specified minimum bitplane, or said selected region has a predetermined size and coefficients of said selected region are coded in said coded representation;
d) selecting substantially all uncoded AC subband regions as a remaining region of each block and scanning the significance of each bitplane of the remaining region from a most significant bitplane towards a least significant bitplane, and outputting the second token for each insignificant bitplane until a significant bitplane is determined;
e) setting one or more AC subband regions, of a current resolution level, as a selected region and performing the sub-steps ca) to cd);
f) repeating step e) until substantially all AC subbands of the current resolution level have been encoded; and
g) repeating steps d) to f) until all AC subbands of each block have been encoded.
-
-
69. Apparatus for scaling thumbnails representing digital images, said apparatus comprising:
-
means for storing a thumbnail, said thumbnail comprising a hierarchically encoded representation of a digital image; and
means for decoding said hierarchical representation of said digital image at at least a predetermined one of a plurality of scales to provide said thumbnail having a desired size. - View Dependent Claims (70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80)
-
-
81. A computer program product comprising a computer readable medium having a computer program recorded thereon for scaling thumbnails representing digital images, said computer program product comprising:
-
means for storing a thumbnail, said thumbnail comprising a hierarchically encoded representation of a digital image; and
means for decoding said hierarchical representation of said digital image at at least a predetermined one of a plurality of scales to provide said thumbnail having a desired size. - View Dependent Claims (82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92)
-
-
93. An image-based computerized file browsing system comprising:
-
a storage device for retaining a plurality of images, at least a group of which are stored in an encoded format;
a processor for running an operating system incorporating a file management arrangement wherein true images retained in said storage device are depicted as thumbnail representations when viewed via said file management arrangement; and
image manipulation means for manipulating said thumbnail representations so as to be alterable in size and such that only a limited number of size alterations result from decoding from said encoded format, the remainder arising from pixel manipulation of intermediate sized images sized between a starting size and an ending size. - View Dependent Claims (94, 95, 96)
-
Specification