Case study · Crop phenotyping · 2024

Canopy Height & Temperature

The weekly drone flights that already gave canopy cover were put to work on two more traits per plot: canopy height above the ridge and canopy temperature. Same field experiment, same plot boundaries, no extra flights.

+2 traits from the same flights
4 thermal reference targets
plot-level canopy-only averages

The Situation

The canopy cover pipeline was already running on the soil-heating experiment: weekly flights, twelve plots, cover per plot and date. But cover only says how much of the soil is shaded. It does not say how tall the crop is growing or how warm the canopy runs, and both matter when the question is whether heating the soil changes the crop above it.

The challenge was the reference. Height from a drone is relative to whatever lies underneath, and in a ridged potato field the soil surface itself rises and falls between ridges and furrows. Raw thermal pixel values are instrument readings, not temperatures, until they are anchored to something physical.

The Approach

For height, the RTK-referenced RGB images, tied down with ground control points, are processed photogrammetrically into a digital surface model of the whole field. There was no bare-soil flight before emergence, so the ground is reconstructed instead: points placed on the ridge tops between the plants are sampled from the surface model and interpolated into a “virtual floor”. Subtracting that floor from the surface model gives canopy height above the ridge, with the field's slope removed. The trade-off is that foliage hanging below the ridge top, into the furrows, is not counted.

For temperature, thermal imagery from the same flights is stitched into its own orthomosaic and co-registered to the RGB orthomosaic in QGIS, using metal plates visible in both as control points. Four reference targets in the field (white, grey and black aluminium plates on insulation, plus a water basin, each logging its own temperature) span a range of known temperatures, and a linear fit maps the raw thermal values to degrees Celsius.

A canopy mask then removes soil pixels from both the height and the thermal layer before the per-plot mean and standard deviation are computed, so the numbers describe the canopy rather than a mix of canopy and ground.

The four reference targets that map raw thermal values to degrees.

The Result

Each flight date now yields canopy height and canopy temperature for every plot, alongside the cover percentage from the existing pipeline: three values per plot and date, from imagery that was already being collected.

Because the height and temperature layers use the same plot polygons and coordinate system as the cover data, all three traits join on plot and date in a single table, with no manual alignment between sensor outputs.

Pipeline in pictures

More traits from the same flight?

If you already have drone data and want to extract height, temperature, or other multi-modal traits without adding flights, Haystack Imaging can extend your pipeline.