dimhold.by
← Writing

From space, July 2012 in Illinois looked better than July 1990

The idea that a satellite can see the harvest before it happens sounds like plain physics to me. More green leaves mean more grain. I have nodded at it many times and never checked it myself. People did check it, of course. Felix Kogan at NOAA, who built the Vegetation Health indices, has published yield models on them for years. David Johnson at USDA compared MODIS greenness and temperature against county corn yields in 2014. What I wanted was smaller. How much does the satellite add over a plain trend line if it is not allowed to look into the future? And how does it stand next to the forecast USDA publishes at the same moment?

The data

NOAA STAR Vegetation Health publishes a weekly series for every US state, averaged over cropland only, since 1982. It has smoothed NDVI, which is the greenness. On top of it there are 3 indices: VCI for the green part, TCI for the thermal part and VHI that mixes both. Until 2012 the series comes from AVHRR satellites, from 2013 from VIIRS.

USDA NASS Quick Stats has the final corn yield for every state and year in bushels per acre. It also keeps the forecasts NASS published during the season. The August forecast is based on conditions on August 1 and comes out around August 10, at the same time as my July satellite data, so this is the forecast to compare with and not the final number that arrives in January.

I took the 12 Corn Belt states, from Illinois and Iowa to the Dakotas and Kansas, years 1982 to 2021. 2022 is not in it, because the final number for this year comes only in January. That is 480 state years. The scripts are about 130 lines of Python with pandas and numpy.

Before counting anything I wrote down what I expected. The raw correlation will be visible, around 0.4 or more. Out of sample the satellite will beat a trend line by 15 to 35%. NASS in August will still be better. And almost all of the gain will come from 2012, the drought year, while in normal years the satellite adds nearly nothing.

The raw correlation is mostly the calendar

If you put July greenness against yield for all 480 state years, the correlation is 0.33. Between the year and the yield it is 0.71. In 11 of the 12 states the corn yield grows by about 2 bushels per acre every year. Kansas is the exception, only 0.26 bushels a year. Any feature that drifts in time gets part of that growth for free. Differences between states add more: Iowa is greener and yields more than North Dakota, which says nothing about a bad July in Iowa.

So the question has to be smaller. Take the yield trend of each state. Does July greenness tell how far this year falls above or below that line?

Every forecast uses only the past. For a year Y the trend and the coefficient are fitted on the years before Y. Then year Y is predicted for all 12 states at once. Features are averages over weeks 27 to 30, which is roughly July, so all of it is known before the NASS August report. Test years are 2000 to 2021, 264 state years.

What it gave

Error is RMSE in bushels per acre, over the same 264 state years.

0 5 10 15 state trend only 16.4 NDVI (greenness) 14.8 VCI (green part) 14.6 TCI (thermal part) 14.0 VHI (green + thermal) 13.0 NASS August forecast 9.5 RMSE, bushels per acre (lower is better)
Satellite features are averages of weeks 27 to 30. The NASS forecast is published around August 10.

A trend alone misses by 16.4. Plain greenness improves it to 14.8, which is 10%. VHI improves it to 13.0, which is 21%. It beats the trend in 19 of the 22 years. With a bootstrap over whole years the gain of VHI is between 13 and 26%, of greenness between 5 and 15%. NASS in August misses by 9.5, so the USDA survey is clearly ahead. But not every year: in 7 of the 22 years VHI was closer than NASS.

The split surprised me more than the total. The green index VCI gives 11% and the thermal TCI gives 15%. Greenness alone was the weakest of the 4 satellite features. VHI got its gain only with the thermal part added.

2012

Over the 12 states the 2012 yield fell 36.9 bushels below the trend on average. VHI predicted 11.5, about a third of the real drop. The RMSE of NASS in August over these 12 states was 10.3. In Illinois the yield was 105, the trend said 173, VHI said 159 and NASS in August said 116.

Then I looked at Illinois week by week. Here I made a mistake that almost became the title of this post. My first comparison said that July 2012 had a greenness of 0.492 and an average July of 2000 to 2011 had 0.490. It looked as green as usual in the worst year. I liked that result a lot. Then I drew the range of the earlier years and it went down to minus 1. NOAA writes minus 1 for a missing week. In Illinois 2004 has 8 of them between May and September. My baseline had averaged them in as real values. The main model dropped them. The quick script I wrote for this chart did not.

July window 0.3 0.4 0.5 0.6 NDVI 18 22 26 30 34 38 40 week of the year 2012 median 2000–2011 range 2000–2011
NOAA STAR VHP, smoothed NDVI averaged over Illinois cropland. The shaded column is the July window used in the forecast.

With the missing weeks removed, the average July is 0.523 and 2012 is 0.492. So it was paler, but not by much. In May the fields were up to 2 weeks ahead of the median and by late June the lead was gone. Then they stopped near 0.49, while a normal year continues to about 0.55. Among 41 Julys since 1982 this one is 10th from the bottom, while the yield was about 40% below the trend. July 1990 was paler, at 0.460. Illinois harvested 2.6 bushels above its trend that year, counting the trend over all 40 years. 1996 and 1989 were also paler and ended near the trend. 1988 was paler too and fell 47 bushels below it.

VHI over the same weeks was 25 against a normal 58. Only 1988, the other big drought, had a lower July VHI in Illinois among the 40 years.

So my expectation was wrong twice. In 2012 greenness improved the trend by only 9%, about as much as in an average year. And the total gain does not depend on 2012. Without it VHI still improves the trend by 19%.

What I did not check

The mask is all cropland of the state, not corn fields. In Kansas and the Dakotas a big part of it is wheat and pasture. County data with a corn mask would probably do better. I did not try it.

VCI and TCI are scaled by the minimum and maximum of a long record. VHI is built from them. Which years go into that record I did not find in the NOAA documentation. If the record includes years after the one I predict, the indices know a bit of the future. Plain NDVI has no such scaling and still gives 10%, but how much of the rest is this leak I did not measure. The smoothing of NDVI itself probably uses neighbouring weeks too, including a few after July.

NOAA serves a reprocessed series now. Its July greenness over the 12 states is 0.487 on average in 2003 to 2012 on AVHRR and 0.490 in 2013 to 2021 on VIIRS. I see no jump at the sensor change, but the values served in older years could differ in details.

I chose the window of weeks before counting. Other windows give from 13% for June to 21% for late July and early August, so the choice did not create the result. Still, July came out the best, by 0.2 points over late July and early August. Each model is one line per feature, without weather data. More features would probably close part of the gap to NASS.

A prediction for 2022 I did not make, because the final yield to check it against comes only in January.