Analyzing Satellite Image Data Using PyTroll - Episode 193


Every day there are satellites collecting sensor readings and imagery of our Earth. To help make sense of that information, developers at the meteorological institutes of Sweden and Denmark worked together to build a collection of Python packages that simplify the work of downloading and processing satellite image data. In this episode one of the core developers of PyTroll explains how the project got started, how that data is being used by the scientific community, and how citizen scientists like you are getting involved.

Do you want to try out some of the tools and applications that you heard about on Podcast.__init__? Do you have a side project that you want to share with the world? With Linode’s managed Kubernetes platform it’s now even easier to get started with the latest in cloud technologies. With the combined power of the leading container orchestrator and the speed and reliability of Linode’s object storage, node balancers, block storage, and dedicated CPU or GPU instances, you’ve got everything you need to scale up. Go to today and get a $100 credit to launch a new cluster, run a server, upload some data, or… And don’t forget to thank them for being a long time supporter of Podcast.__init__!

Clubhouse LogoThis episode of Podcast.__init__ is brought to you by Clubhouse, the first project management platform for software development that brings everyone together so that teams can focus on what matters – creating products their customers love. Clubhouse provides the perfect balance of simplicity and structure for better cross-functional collaboration. Its fast, intuitive interface makes it easy for people on any team to focus-in on their work on a specific task or project, while also being able to “zoom out” to see how that work is contributing towards the bigger picture. With a simple API and robust set of integrations, Clubhouse also seamlessly integrates with the tools you use everyday, getting out of your way so that you can deliver quality software on time.

Listeners of Podcast.__init__ can sign up for two free months of Clubhouse by visiting


  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so check out Linode. With 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. Go to to get a $20 credit and launch a new server in under a minute.
  • And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. Podcast.__init__ listeners get 2 months free on any plan by going to today and signing up for a trial.
  • Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email
  • To help other people find the show please leave a review on iTunes, or Google Play Music, tell your friends and co-workers, and share it on social media.
  • Join the community in the new Zulip chat workspace at
  • Your host as usual is Tobias Macey and today I’m interviewing Martin Raspaud about PyTroll, a suite of projects for processing earth observing satellite data


  • Introductions
  • How did you get introduced to Python?
  • Can you start by explaining what PyTroll is and how the overall project got started?
  • What is the story behind the name?
  • What are the main use cases for PyTroll? (e.g. types of analysis, research domains, etc.)
  • What are the primary types of data that would be processed and analayzed with PyTroll? (e.g. images, sensor readings, etc.)
  • When retrieving the data, are you communicating directly with the satellites, or are there facilities that fetch the information periodically which you can then interface with?
  • How do you locate and select which satellites you wish to retrieve data from?
  • What are the main components of PyTroll and how do they fit together?
  • For someone processing satellite data with PyTroll, can you describe the workflow?
  • What are some of the main data formats that are used by satellites?
  • What tradeoffs are made between data density/expressiveness and bandwidth optimization?
  • What are some of the common issues with data cleanliness or data integration challenges?
  • Once the data has been retrieved, what are some of the types of analysis that would be performed with PyTroll?
  • Are there other tools that would commonly be used in conjunction with PyTroll?
  • What are some of the unique challenges posed by working with satellite observation data?
  • How has the design and capability of the various PyTroll packages evolved since you first began working on it?
  • What are some of the most interesting or unusual ways that you have seen PyTroll used?
  • What are some of the lessons that you have learned while building PyTroll that you have found to be most useful or unexpected?
  • What do you have planned for the future of PyTroll?

Keep In Touch



The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Liked it? Take a second to support Podcast.__init__ on Patreon!