Comparing compression in different formats

From Maria GDK Wiki
Jump to navigation Jump to search

This is a comparison of a small selection of compression methods used in georeferenced raster imagery. We compare the formats

  • ECW
  • WEBP (as tile format in GeoPackage)
  • JPEG (as tile format in GeoPackage)

The intention is to find which method gives the best percieved quality for the smallest file size. The measure for quality is SSIM - structural similarity index , which is a perception-based model to calculate the difference between two images.

Method

Baseline image contains naked rock, scattered forests and built-up areas

We compare a lossless baseline image to a compressed dataset, and measure the SSIM using Python package scikit-image. This is repeated with a range of quality values for the compressed images. This should give an indication of which method is most efficient. In addition, it will indicate the quality value which will achieve the same SSIM across the compression methods.

Note that each of the file formats use a different scale for the input "quality" parameter. We include a wide range of the legal values from each of the formats, so this difference should not matter.

The baseline image has the following attributes:

Attribute Value
File size 273 MB
Format GeoTIFF
Compression LZW
Dimensions 10000 x 10000 px
Pixel size 0.25 meters

The compressed ECW images were created with FME 2021.2. Note that FME and GeoCompressor uses slightly different parameter for compression rate: FME uses percentage of uncompressed size, while GeoCompressor uses the denominator in a fraction. For example :

Compress by % (FME) Target rate (GeoCompressor)
93 15
95 20
97.2 35
98 50
98.6 70
98.8 80
99 100

JPEG and WEBP were used as tile formats in GeoPackage datasets, with overviews. These were created with gdal_translate and gdaladdo version 3.4.1

Plots

The results are plotted with file size on the x-axis and SSIM on the y-axis. Each data point is a file with the input quality parameter labelled.

The graph shows that at high compression/low SSIM, the ECW format is easily the most effective. However, as SSIM increases, the three formats converge, and at around SSIM=0.9 the formats produce equally sized files. As can be seen in the image comparison, even though the SSIM is equal, the images does not look the same. The different compression techniques results in different visual distortions, but in total, it amounts to the same difference from the baseline image.

Comparing formats at all compression levels

File size against SSIM. Quality parameter is labeled on each data point.


Comparing formats at very high compression levels

Detailed comparison of the formats at their maximum compression values.

Image comparisons

Comparing ECW q89 to q90

The ECW format has an interesting rise in SSIM from q90 to q89. Comparing the two images, it seems that significant noise is introduced at q90. File size does not change much.