Lachlan Hurst

Lachlan Hurst, bike rider, dad, and developer of the ObservedEarth smartphone app.

Aug 23, 2016 • Thanks to a software developer in Australia you can now easily browse through Landsat 8 images on your smartphone. Lachlan Hurst kicked off development of his ObservedEarth app as a personal side-project in early 2016. After six months worth of weekend programming, Version 1.0 was launched in mid-August. ObservedEarth streamlines the process of downloading and visualizing Landsat data, giving the user a focused way to explore the Landsat 8 archive—and it easily hooks into social media. We recently had the opportunity to talk with him about his project:

 
What inspired you to develop ObservedEarth as a “hobby project”?
Landsat data is stunning. Many “development” hours were spent viewing interesting parts of the world, and really when viewed from space most parts of the world are interesting. Watching land change over time is a big part of this too, you can see summer turn to winter, forest regrowth after bushfires, changing dam water levels, the list goes on.

Landsat data is also readily available. There’s a number of excellent web-based portals that support visualization and retrieval of the raw data. It was Amazon’s ‘Landsat on AWS’ public dataset that particularly interested me—200TB of data, growing daily, available directly via the web… more on this later.

Every software developer has a desire to play with the latest technologies, and I’m no exception. This is one of the reasons ObservedEarth forgoes a conventional GIS map-based user interface. The other reason being that I hoped it may attract a broader audience by simplifying the user experience and throwing in some “wow factor,” for lack of a better term.

The idea had been sitting at the back of my mind for several years, but not all great ideas have great business plans so it stagnated. Earlier this year something clicked, and I thought “Hey, let’s just do it for fun.” The data was there, and so were some technologies I was keen to experiment with.

In the end it was part inspiration and part temptation that made ObservedEarth happen.

ObservedEarth

Screenshots of Lachlan’s ObservedEarth app.

 
What do you see as some of the benefits of being able to access Landsat data from a smart phone?
Convenience is one benefit, making things easier opens up new use cases. One Sunday I was reading the morning news on my phone before getting out of bed. There was an article on the death of mangroves in northern Australia, from there it only took a few minutes to find the affected region. Seeing it helped my understanding of the scale of this change, and how it differed from normal seasonal change. I wouldn’t have looked had the data not been at hand.

Smartphone sales have exceeded PC sales for several years now, if this trend continues we’ll likely see smartphone and tablets being people’s primary computing device. This is even more true in developing nations. Targeting mobile devices, either via native apps or mobile-optimized websites, will better support a wider audience.

My children are great for testing new ideas on, they view technology with a different perspective and set of expectations. Their interaction is focused; open app, get answer, move on. This is the type of interaction I wanted to facilitate, and the usage pattern is a fit for users on their mobile.

 
What is your background?
I have degrees in Mechanical Engineering and Computer Science, and initially started my career in the automotive industry. I’m employed by VPAC Innovations, a company that traditionally specialized in High Performance Computing (HPC) but is now largely geospatial. Several years ago we had the opportunity to apply our HPC expertise to the geospatial field for processing and storage of large raster datasets. From that point on our company has moved increasingly towards supporting the geospatial industry.

I see myself as a software developer with some geospatial expertise. Technically quite capable of working with geospatial data, but lacking when it comes to knowing what users really want to do with this data.

 
What was your first introduction to Landsat data?
VPAC Innovations was involved in the Unlocking the Landsat Archive (ULA) project with Geoscience Australia (GA) and the Cooperative Research Center for Spatial Information. ULA focussed on developing a storage and processing platform for a large amount of Landsat 7 data GA had stored. It’s through this project that I gained an appreciation for the size, and value of this dataset.

 
Is having medium resolution satellite data like Landsat freely and openly available important?
I believe so, open data allows people to see things for themselves. Landsat and similar earth observation datasets are some of the more approachable open data, people just seem to “get it.” During development the app was presented to a number of family and friends, often the first question was “so where does the data come from?”, followed by “can it tell me this?”. In my admittedly anecdotal experience, there’s definite interest in this type of data from the general public.

 
What are some of the code mechanics behind ObservedEarth?
I’ll briefly mention the interesting bits but won’t go into much technical detail; even though I’d enjoy doing so. I will however say if you’d like to know more please track me down on Twitter (@lachlanhurst) or via email (lachlan.hurst@gmail.com).

As previously mentioned the app downloads all its data from the ‘Landsat on AWS’ public dataset. As AWS hosts this data, the app has no ongoing hosting costs. This was a key consideration in developing the app initially and then later releasing it for free.

The app attempts to minimize the amount of data downloaded and employs a number of tricks to do so. If you crop a region to access the high resolution (30m) data, it will only download the GeoTIFF data for that region. It does this by first downloading the header information from the GeoTIFF, reading the byte locations of the tif files internal tiles (typically 512×512 pixels in size), and then downloading each tile as required. What this means is that for a small region of interest only a few hundred kilobytes will be downloaded instead of the entire 50MB GeoTIFF per band.

The app is built on a number of Apple-specific technologies. It is written in the Swift programming language, with some c code for integrating LibTIFF. The user interface makes use of SceneKit a high-level 3D graphics framework, in combination with Metal a lower-level API aimed at squeezing maximum performance from the Graphics Processing Unit (GPU).

The Digital Number (DN) based data contained in the GeoTIFF files is loaded straight into the devices GPU as a 16-bit unsigned integer based texture. These textures are passed to the apps fragment shader for processing by the GPU, it is here where all calculations are performed. This includes the Top of Atmosphere (ToA) reflectance, histogram equalization/contrast adjustment, and vegetation index calculations.

 
Have you gotten any user feedback? Would you like user feedback?
I’ve been quite happy with the reception of ObservedEarth, it’s certainly exceeded my expectations. Many thanks to all who helped share the word. What it really needs going forward is detailed user feedback. What did you like, or not like about it? What could be done to make it more relevant to your application?

I’m keen to collect more user feedback, and to sign up testers for beta releases. So please get in touch if you’re interested.
 

Further Information
+ ObservedEarth webpage
+ Mangroves die across Northern Australia

Any use of trade, firm, or product names is for descriptive purposes only and does not imply endorsement by the U.S. Government.