Downloads GOES (GEOS-16 or GEOS-17 currently) or Zoom Earth satellite data and makes video animation using R.
This script performs the following actions:
- For
NOAAdata:- Downloads GOES (GEOS-16 or GEOS-17 currently) satellite data (https://cdn.star.nesdis.noaa.gov/GOES16/ABI/SECTOR/psw/GEOCOLOR/) into
datafolder. - Crops the image (default is focused on California and the Bay Area).
- Combines the cropped images and associated timestamps into a single image and saves to
data_cropfolder.
- Downloads GOES (GEOS-16 or GEOS-17 currently) satellite data (https://cdn.star.nesdis.noaa.gov/GOES16/ABI/SECTOR/psw/GEOCOLOR/) into
- For
Zoom Earth(which includes fire locations) data:- Downloads a screenshot at 5 min intervals of the zoom.earth website centered on the West Coast of the United States.
- Then saves out a video file (default
mp4) tovideofolder.
The script requires ffmpeg be installed on users systems if
To run:
- Download
R(orRStudio). - Either download a zip of the repository or make a new folder and clone with
git clone https://github.com/bahanonu/geoSatView.git. - Make the working directory in
Rthe repository root directory and type the below. - Alternatively, users can download files to a separate folder by making that folder the active working directory then running
source('path/to/geoSatView.R');geoSatView() - Users can choose between NOAA or zoom.earth sources to create the video. Videos are stored in the
data_noaaordata_zoom_earthsub-directories that are created. - Downloading is parallelized, so output will be stored in
progress.login root directory.
source('geoSatView.R')
geoSatView()Users can alternatively call the script without user input by using the available options.
source('geoSatView.R')
geoSatView(
dataDirList=list(NOAA=file.path(getwd(),'data_noaa/'),zoomEarth=file.path(getwd(),'data_zoom_earth/')),
userChoice=c("NOAA","zoomEarth"),
createVidFlag=c(2)
)Options
dataDirList
list(), format: c(NOAA="PATH_TO_NOAA_DATA",zoomEarth="PATH_TO_zoomEarth_DATA")
userChoice
char vector, options: "NOAA", "zoomEarth". Can input both c("NOAA","zoomEarth").
createVidFlag
vector, options: Binary: 1 = create AVI video, 0 = do not create video, 2 = create using ffmpeg system call (fastest)
Below is an example output. The script is also a useful reference for those looking to manipulate images in R and create videos. The script can also be run from an empty directory, as long as you set that directory as R's working directory.
NOAA
Zoom Earth
Notes:
- Open
geoSatView.Rto edit further from defaults as needed. - ImageJ is a useful tool for adjusting the crop defaults.
- The script will skip existing files during downloading and cropping. For cropping, delete all files in the directory if want to make a fresh video.
Copyright (c) 2018–2020 Biafra Ahanonu
This project is licensed under the terms of the MIT license. See LICENSE file for details.

