Often these formats contain some sort of compression to keep the size of the image files manageable.
解答例
For example, JPEG compression or wavelet compression are currently popular compression techniques for image files.
To provide the appearance of animation on a display screen of a computer system, a series of images can be sequentially displayed.
One format for graphical images that supports animation is GIF89a, which pertains to Graphics Interchange Format (GIF), version 89a, by Compuserve Incorporated, Columbus, Ohio.
Since animations typically include a relatively large number of images to be sequentially displayed, the image files storing the animated images often use compression.
The GIF89a format, for example, does utilize compression.
One problem with animated image files is that even with compression the file sizes are still large.
These large files not only require a large amount of storage space, but also make the transmission of these files from one computer to another time consuming.
With the development of the Internet and the frequency with which animated images are provided on World Wide Web (WWW) pages, there is an ever increasing need to improve the transmission time of animated image files.
Prior approaches have tried to re-compress image files to reduce their size.
These require the computationally complex operations of decompression followed by re-compression.
Although improvement in file size can be obtained, the computational requirements are often too burdensome.
Additionally, prior approaches have sacrificed image quality (e.g., number of colors, resolution, size, etc.) in attempting to reduce image file size.
The storage and transmission difficulties associated with animated image files is particularly problematic in the case where a server system operates as a proxy system.
A proxy system stores images relatively local to its requesters so that if the same images are again needed, they are readily available and can be rapidly forwarded to the appropriate requestor without the delay of having to first obtain the images from a content provider.
Hence, in a server system desiring to store (e.g., cache) images for subsequent transmission to requesters, the large size of animated image files makes them difficult to handle.
Thus, there is a need for improved techniques for transmission and storage of animated image files.
The invention pertains to techniques for condensing or reducing animated image data streams to enable the transmission and storage of animated images in a rapid and efficient manner.
Animated images are normally stored as image files that includes a series of images that are sequentially displayed.
These animated image files are often used by Internet sites to provide animation to their web pages.
However, in the case of a proxy server that is required to store large amounts of data for caching purposes, there is a need to reduce the size of the files being stored not only to reduce image storage space but also to accelerate the delivery of these images to an end user that has requested the same.
The invention operates to condense or reduce the file size of these animated image files.
The invention is effective even when the animated images are compressed.
The invention is particularly well suited for use in reducing or condensing animated GIF images.
The invention is also particularly well suited for use in a proxy system for a network (e.g., the Internet).
The invention can be implemented in numerous ways, including as a method, an apparatus, a system, or computer readable medium.
Several embodiments of the invention are summarized below.
As a method for reducing file size of an animated GIF file, one embodiment of the invention includes the operations of: receiving an animated GIF file having a first file size, the received animated GIF file including at least a plurality of control blocks and a plurality of image blocks; selecting at least one of the image blocks to be discarded; discarding the at least one of the selected image blocks and the at least one of the control blocks associated therewith; modifying the control blocks associated with one or more of the image blocks remaining after the discarding operation; and thereafter storing a resultant animated GIF file having a second file size, the second file size being reduced as compared to the first file size.
Optionally, when the animated GIF file includes a least one comment block, the invention can also operate to remove one or more comment blocks from the received animated GIF file prior to storing of the resultant animated GIF file.
As a computer readable media for reducing file size of an animated image file, one embodiment of the invention includes: first computer program code for receiving an animated image file having a first file size, the received animated image file including at least a plurality of control blocks and a plurality of image blocks; second computer program code for selecting at least one of the image blocks to be discarded; third computer program code for discarding the at least one of the selected image blocks and the at least one of the control blocks associated therewith; and fourth computer program code for storing a resultant animated image file having a second file size, the second file size being reduced as compared to the first file size.