Book Image

Geospatial Development By Example with Python

By : Pablo Carreira
5 (1)
Book Image

Geospatial Development By Example with Python

5 (1)
By: Pablo Carreira

Overview of this book

From Python programming good practices to the advanced use of analysis packages, this book teaches you how to write applications that will perform complex geoprocessing tasks that can be replicated and reused. Much more than simple scripts, you will write functions to import data, create Python classes that represent your features, and learn how to combine and filter them. With pluggable mechanisms, you will learn how to visualize data and the results of analysis in beautiful maps that can be batch-generated and embedded into documents or web pages. Finally, you will learn how to consume and process an enormous amount of data very efficiently by using advanced tools and modern computers’ parallel processing capabilities.
Table of Contents (17 chapters)
Geospatial Development By Example with Python
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Processing images in chunks


We will change the code, so we can open images of any size. The principle is the same as the one we applied in the previous chapter: in order to read and import an arbitrary number of points, we made the program read, import, and release the memory after each small set of points.

Instead of reading points, we will read a small piece from the image, make some calculations, write the output on the disk, and release the memory before repeating the process with the next piece.

Using GDAL to open images

The process of reading selected regions of a given image is no easy task. Many factors are relevant, such as how the data is encoded in the image, the type of data, how to read the data, and so on. Fortunately, GDAL is equipped with great functions and methods that abstract most of the low-level process. Let's experiment with it:

  1. In the images.py file, import GDAL at the beginning of the file:

    import gdal
  2. Now, create a new function to open the Landsat band 8 using GDAL:

    def...