Preface

From Python programming good practices to the advanced use of analysis packages, this book teaches how to write applications that will perform complex geoprocessing tasks that can be replicated and reused. The book contains three sample applications. Chapter 1 shows how to prepare a development environment. From Chapter 2 to Chapter 4, the reader goes deep into Python functionality using classes, inheritance, and other resources in order to read, manipulate, combine, and search information in vector data. Chapter 5 to Chapter 7 presents techniques to render beautiful maps, and handle and analyze raster data. In the final three chapters, the book approaches code optimization and presents solutions to handle large datasets common in geoprocessing tasks. All the examples are modular and can be rearranged to achieve countless different results. During the book, the code is deduced step by step until it reaches the final form. The reader is led to edit, change, and improve the code, experimenting with different solutions and organizations, subtly learning the mental process of the development of a geoprocessing application.

What this book covers

Chapter 1, Preparing the Work Environment, shows the processes of installing all the libraries that you will need to go through the examples in the book, as well how to set up an integrated development environment (IDE) that will help organize the code and avoid mistakes. Finally, it will present the first contact with one of the geospatial libraries.

Chapter 2, The Geocaching App, will go through the important steps in geoprocessing applications, such as opening files, reading data, and preparing it for analysis with the tools at hand. Going through these steps, the user will learn how to organize and use the resources provided by the language to write consistent applications.

Chapter 3, Combining Multiple Data Sources, will cover the process of combining sources, and how to use Python classes to create your own representation of geospatial data. Geographic data tends to be heterogeneous, so writing programs that are able to combine multiple sources of data is a fundamental topic in geoprocessing.

Chapter 4, Improving the App Search Capabilities, will add new functionalities to the application. Users will write a code capable of filtering features by geographic boundaries and by any field in the data. In the process, they will see how to work with polygons and how the relations between geometries can be analyzed in a geoprocessing application.

Chapter 5, Making Maps, starts a new application that will be able to produce nice maps from the vectors of the data. Mapnik, one of the most used mapping packages, will be used. The user will understand how it works and how to adapt it to consume the data presented in the previous chapters.

Chapter 6, Working with Remote Sensing Images, will present a process of deduction that will result in a versatile and powerful software structure able to combine, crop, and adjust the values of images to prepare them for presentation.

Chapter 7, Extract Information from Raster Data, will approach the process of extracting information from raster data, which can be analyzed in order to produce valuable information. Going beyond simple numerical values, it will show how to display this information on beautiful color maps.

Chapter 8, Data Miner App, will show how to use databases and how to import data into it in order to minimize processing time and allow huge datasets to be processed. Geospatial data tends to be extensive and its processing demands a lot of computer power. To make the code more efficient, the reader will learn techniques of code profiling and optimization.

Chapter 9, Processing Big Images, will show how to process big satellite images. It will focus on how to perform sustainable image processing and how to open and make calculations with many big images while keeping the memory consumption low with efficient code.

Chapter 10, Parallel Processing, will teach the reader how to use the full available computer power. In order to speed up tasks, it will show how to distribute them among processor cores for parallel processing.

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

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