Converting a TIFF image to a JPEG image

Image format conversion is a part of nearly every geospatial project. Rasters come in dozens of different specialized formats, making conversion to a more common format a necessity. The GDAL utilities include a tool called gdal_translate specifically for format conversion. Unfortunately, the algorithm in the Processing Toolbox is limited in functionality. For format conversion, it is easier to use the core GDAL API.

Getting ready

We will use the SatImage raster available at https://geospatialpython.googlecode.com/files/SatImage.zip.

Place this raster in your /qgis_data/rasters directory.

How to do it...

In this recipe, we'll open a TIFFimage using GDAL and copy it to a new dataset as a JPEG2000 image, which allows you to use the common JPEG format while maintaining geospatial information. To do this, we need to perform the following steps:

  1. Start QGIS.
  2. From the Plugins menu, select Python Console.
  3. Import the gdal module:
    from osgeo import gdal
    
  4. Get a GDAL driver for our desired format:
    drv = gdal.GetDriverByName("JP2OpenJPEG")
    
  5. Open the source image:
    src = gdal.Open("/qgis_data/rasters/satimage.tif")
    
  6. Copy the source dataset to the new format:
    tgt = drv.CreateCopy("/qgis_data/rasters/satimage.jp2", src)
    

How it works...

For the straight format conversion of an image format, the core GDAL library is extremely fast and simple. GDAL supports the creation of over 60 raster formats and the reading of over 130 raster formats.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset