Image Compression and its Algorithm

image compression

Image compression

  • Image compression is the process of minimizing the size in bytes of a graphics file without degrading the quality of the image to an unacceptable level.
  • The reduction in file size allows more images to be stored in a given amount of disk or memory space.
  • It also reduces the time required for images to be sends over the Internet or download from Web pages.
  • There are several different ways in which image files can be compress. For Internet use, the two most common compressed graphic image formats are the JPEG format and the GIF format. The JPEG method is used for photographs, while the GIF method is used for line art and other images in which geometric shapes are relatively simple.
  • Other techniques for image compression include the use of fractals and wavelets. These methods have not gained widespread acceptance for use on the Internet.

    Here, we will study more about Image compression and its algorithm.

Image Compression Algorithm

Following are different image compression algorithm:

1. Entropy coding:

  1. The logic behind entropy coding is that if pixels are not uniformly distributed, then an appropriate coding scheme can be selected that can encode the information so that the average number of bits is less than the entropy.
  2. Entropy specifies the minimum number of bits used to encode information.
  3. Hence, the coding is based on the entropy of the source and on the possibility of occurrence of the symbols.
  4. This leads to the idea of variable length coding.
  5. Some examples of this type of coding are Huffman coding, arithmetic coding, and dictionary-based coding.

2. Predictive coding:

  1. The idea behind predictive coding is to remove the mutual dependency between the successive pixels and then perform the encoding.
  2. Normally the samples would be very large, but the differences would be small.
  3. Examples of this category include Differential Pulse Code Modulation (DPCM) and delta modulation techniques.

3. Transform coding:

  1. The idea behind transform coding is to exploit the information packing capability of the transform.
  2. The energy is packed into fewer components and only these components are encoded and transmitted.
  3. The human eye is more sensitive to the lower spatial frequencies than the higher spatial frequencies.
  4. The idea is to remove the redundant high-frequency components to create compression.
  5. The removal of these frequency components leads to the loss of information.
  6. However, this loss of information, if tolerable, can be use for imaging and video applications.
  7. Thus the basis of transform coding is frequency selection, information packing, and the concept of basis images

4. Layered coding

  1. Layered coding is useful in the case of layered images.
  2. Sometimes the image is represents in the form of layers.
  3. Data structures such as pyramids are useful to represent an image in this multi-resolution form.
  4. The layers of a pyramid will be send depending on the application.
  5. At times, these images are segmenting as foreground and background. Based on the needs of the application, encoding is performing.
  6. This is also in the form of selected frequency coefficients or selected bits of pixels of an image.

Read more about Software requirement specification (SRS)