How Omniris turns a multispectral drone flight into calibrated crop-health maps, lets you build and save your own vegetation indices, measures every zone of a field, and shows how each one changes from flight to flight.
A multispectral camera photographs a field in several narrow bands of light at once, including light the eye cannot see, such as near-infrared (just beyond red). Healthy leaves reflect near-infrared strongly and absorb red, so comparing the bands shows how a crop is doing, often before a problem is visible in an ordinary photo. The comparison is made with a vegetation index: a short formula that turns the bands into one number per spot on the ground.
Omniris takes a multispectral flight from upload to answers. It recognises the camera's files, corrects them for the light on the day, stitches them into maps, computes the standard indices, and lets you add your own. On an agricultural site it then measures every zone you draw, flight after flight, so you can see which parts of a field are improving and which are falling behind.
Multispectral sets from DJI, MicaSense and Sentera cameras are detected when you start a map, and the colour photos taken alongside can be mapped at the same time.
A sunlight sensor or reflectance panel is found and used automatically. A badge says which correction each flight received.
Each band as its own map, the full multispectral map, and NDVI and NDRE crop-health maps in fixed colour classes with a plain-language legend.
Standard indices for greenness, soil, chlorophyll, ripening and water, plus formulas you write, preview live and save for your team.
Average, spread, cover and trend for each zone, ranked against the rest of the field, with alerts for zones that are falling behind.
Every map and index you save is a file in the vault, with its own custody history, shared and delivered like every other file.
Upload the flight's images into a folder and start a map from it. Before anything is charged, the map dialog looks at the files and says what it found: Detected: Multispectral Files, or Detected: Multispectral + RGB Files when the drone also carried an ordinary colour (RGB) camera.
| Camera family | How its files are recognised |
|---|---|
| DJI multispectral (Phantom 4 Multispectral, Mavic 3 Multispectral, Agras) | The band files DJI writes as TIFFs, alongside the JPEG colour photos |
| MicaSense (including Altum and Altum-PT) | One TIFF per band for each capture, numbered by band |
| Sentera single-band sensors | Band files named for red, green and near-infrared |
| Sentera dual-sensor payloads | Each photo lists the bands it holds; a sensor that records near-infrared or red edge counts as multispectral, a colour-only sensor does not |
A set is treated as multispectral once at least three band files are found. If a camera names its files differently, you can still tick Multispectral yourself.
Two checkboxes decide what is made. Each is ticked automatically when that kind of imagery is found, and hidden when it is not.
| Multispectral | RGB | What you get |
|---|---|---|
| On | Off | The multispectral map, its bands and its crop-health maps |
| On | On | All of the above, plus a separate colour map made from the RGB photos at the same time |
| Off | On | RGB only: the colour map, with the multispectral files left out |
Next to each box the dialog shows how many images it will use and what it costs, so you can see the price of each choice before you start. Thermal frames from the same flight never mix into these maps; they have their own option, described in the companion paper Temperatures you can measure. How a map is made, what it costs and how accurate it is are covered in Maps you can measure.
The brightness a camera records depends on the sun as much as on the crop. A cloud passing over halfway through a flight, or a flight at noon one week and late afternoon the next, changes every pixel. Radiometric calibration removes that effect, turning raw brightness into reflectance: the share of the light reaching the ground that the surface reflects, on a scale from 0 to 1. Reflectance is what makes one flight comparable with another.
When you start a multispectral map, the dialog reads the image tags and shows a Radiometric calibration card saying which correction the flight will get. Nothing needs to be set: a sunlight sensor, or a panel the camera has marked, is applied automatically when it is found.
| Badge | What was found | What it means for your results |
|---|---|---|
| Camera-only | No sunlight sensor and no reflectance panel | Corrected for the camera itself (exposure, darkening towards the edges of each photo). Reliable within this flight, but not comparable across flights. |
| Sunlight sensor | The images carry readings from a sunlight sensor (a small light meter on top of the drone) | Changing light during the flight is corrected, which also reduces banding. Good for comparing flights with each other, but not on an absolute scale. |
| Reflectance panel | Photos of a reflectance panel (a target of known brightness, photographed on the ground before or after the flight) | Absolute reflectance: consistent values you can compare across flights, cameras and seasons. |
When you select several flights at once, calibration is shown and applied per flight, one line per date. One flight with a panel never makes the others look panel-calibrated.
Every reflectance map made from a calibrated flight carries a label saying which calibration it had: sunlight sensor or panel. Indices you compute from those maps inherit the same label. Zonal analytics and flight comparisons also know each flight's calibration, so results from flights with weaker calibration are treated with the care they need (see Tracking change across flights).
Reflectance cannot be negative, and real surfaces rarely reflect more than all the light that reaches them. On a reflectance map, before the bands and indices are made from it, any spot whose value is far outside that range (below −0.5 or above 2.0) is marked as no data, so a processing artefact can never pass for a measurement.
A finished multispectral map arrives in the vault as a folder of results beside your images. Each result is a GeoTIFF (the standard map-aligned image format) and opens on the Omniris map.
| Result | What it is | What it is for |
|---|---|---|
| Multispectral map | The whole field with every band stacked in one file | Viewing on the map; download for any mapping (GIS) or agronomy software |
| Band maps | One reflectance map per band, named for its band: blue, green, red, red edge, near-infrared, and on cameras that have them a second near-infrared, panchromatic (a sharp all-light band) and thermal | The raw material for every index, built-in or your own |
| Colour picture | A natural-colour image made from the camera's red, green and blue bands, when it has them | A familiar view of the same flight |
| NDVI | The classic crop-health index, as a measurement map and as a coloured display map | General greenness and vigour |
| NDRE | The red-edge crop-health index, in the same two forms; made only when the camera has a red-edge band | Chlorophyll and nitrogen in dense canopy |
| Colour map | Only when you also ticked RGB: an ordinary colour map from the RGB camera | Detail and context in ordinary colour |
Every index, whether made with the map or by you later, is saved twice. The measurement map holds the exact index value at every spot, for analysis and for other software. The display map is the same thing already coloured, which is what you see on the map. Keeping both means a picture is never mistaken for the numbers behind it.
NDVI and NDRE display maps use five fixed classes tuned for agriculture. Because the class edges never move, the same colour means the same value on every flight of the field, so two dates can be compared by eye.
| Colour | NDVI | NDRE |
|---|---|---|
| Red | Below −0.074: bare soil, water or dead material | Below 0.15: not vegetation |
| Orange | −0.074 to 0.109: very sparse vegetation | 0.15 to 0.30: sparse or stressed canopy |
| Yellow | 0.109 to 0.276: sparse vegetation | 0.30 to 0.45: moderate canopy |
| Yellow-green | 0.276 to 0.451: moderate vegetation | 0.45 to 0.60: good canopy |
| Green | Above 0.451: dense, healthy vegetation | Above 0.60: dense, vigorous canopy |
The map's processing report, on screen and as a PDF, shows the NDVI and NDRE maps with this legend in the same words, so a printed report matches what your client sees in the app.
Results are labelled automatically with the site, the customer, the flight date and the layer type (NDVI, NDRE, multispectral, red edge, near-infrared). The Site Navigator, the Omniris map for working with one site across all its flight dates, uses those labels to list each layer under its date, ready to switch on, fade and compare. The Site Navigator is described in the companion paper on Site Manager and Site Navigator.
When a flight produces both a colour map and a multispectral map, the two are made separately and can disagree slightly about where things are. After both arrive, Omniris measures the offset between them and shows it as a small marker beside the flight date: grey when under 1.6 ft (0.5 m), amber from 1.6 to 3.3 ft (0.5 to 1 m), and red above that. Selecting it opens the detail. The offset is measured and reported; neither map is moved.
Beyond the NDVI and NDRE maps made with every flight, Omniris includes eighteen standard indices. Open Band Analytics from the menu of any folder that holds a multispectral flight's band maps; the item appears only when at least two recognised bands are found. Band Analytics is available on the web and in the desktop application.
Each index is offered only when your camera recorded the bands it needs. On a four-band camera with no blue band, for example, the indices that need blue are simply not in the list, rather than shown and then failing. Values assume the bands are on the 0-to-1 reflectance scale.
| Index | What it tells you | Best for |
|---|---|---|
| Greenness and biomass | ||
| NDVI | General greenness and canopy vigour; the classic plant-health index | Most crops, early to mid season. It flattens out in very dense canopy. |
| GNDVI | Chlorophyll and nitrogen, using the green band; stays responsive in dense canopy | Nutrient status, mid season |
| SR (Simple Ratio) | Near-infrared divided by red: basic biomass and vigour, with no upper limit | Vigour; very sensitive at high biomass |
| DVI | Near-infrared minus red: simple vigour | A quick look at low canopy |
| EVI2 | Enhanced greenness that resists flattening, without needing a blue band | Dense canopy where NDVI flattens |
| EVI (needs blue) | Enhanced greenness, corrected for soil and haze | Dense canopy |
| Soil-adjusted (sparse cover, exposed soil) | ||
| SAVI (L=0.5) | Greenness with the influence of bare soil reduced | Exposed soil, early season |
| OSAVI | An optimised soil-adjusted greenness, widely used in agriculture | Partial canopy with soil showing |
| MSAVI2 | A self-adjusting soil-adjusted greenness with no fixed factor | Very sparse cover, bare soil |
| Red edge (chlorophyll and nitrogen, best for mature crops) | ||
| NDRE (needs red edge) | Chlorophyll and nitrogen; sees into dense canopy where NDVI flattens | Mid to late season, dense canopy, stress |
| CI-RedEdge (needs red edge) | Chlorophyll index from the red edge; a strong nitrogen indicator | Chlorophyll and nitrogen in dense canopy |
| CI-Green | Chlorophyll index from the green band | Tracking chlorophyll and nitrogen |
| MTCI (needs red edge) | Chlorophyll content, from the red edge | Chlorophyll and nitrogen |
| PSRI (needs red edge) | Senescence, ripening and stress: highlights ageing or stressed plants | Spotting decline, senescence, ripening |
| Visible bands only (canopy cover) | ||
| NGRDI | Greenness from green against red | Quick greenness from visible bands |
| VARI (needs blue) | Greenness from visible bands that resists haze | Visible bands under haze |
| GLI (needs blue) | Green Leaf Index: leaf cover from visible bands | Early canopy |
| Water | ||
| NDWI (water) | Water and moisture: open water, flooding, irrigation | Crop water status, ponding, water bodies |
The Built-ins Help link in Band Analytics opens this reference, with each index's formula, and the same reference is linked from zonal analytics. A good rule of thumb: NDVI early in the season, NDRE once the canopy fills in.
Every built-in index carries a value range: the values it can sensibly produce. Flight comparisons leave out any spot whose value falls outside the range on either date, so one freak spot cannot swamp the result. Band Analytics says plainly what kind of range each one is:
Agronomists often have an index of their own, or a variant tuned to a crop. Band Analytics lets you write it, see it on the map straight away, and keep it.
The dialog lists the flight's bands. Each band has a short label (B1, B2 and so on, in order of wavelength) and, where the band is known, a name you can type instead: BLUE, GREEN, RED, REDEDGE, NIR, NIR2, THERMAL or PAN. Insert beside a band drops it into the formula for you.
| You can use | Example |
|---|---|
| Band names or labels | (NIR-RED)/(NIR+RED) |
| Numbers and + − × ÷, with ^ for powers | B1*1.5+B3 |
| Square root, absolute value, exponential, logarithm | sqrt(NIR/RED) |
| Smaller or larger of two values | max(NIR-RED, 0) |
| Keep a value within limits | clamp((NIR-RED)/(NIR+RED), 0, 1) |
A formula can be up to 500 characters and must use at least one band. It is checked as you type: unsupported characters, missing bands and unbalanced brackets are flagged before you run it. Formulas are checked against a strict list of what is allowed, so nothing in a formula can do anything except arithmetic on the bands.
A saved index is a full vault file: its custody history starts the moment it is created, with a record of the formula that made it, and it inherits the flight's site, customer, date and calibration labels. The display map is also labelled with the index name, so it appears in the Site Navigator under its flight date like NDVI and NDRE, even for a formula of your own.
A formula you use more than once can be saved by name, with its colour scheme and, if you like, its value range. Saved formulas appear in the Band Analytics list next to the built-ins, and in the index list of zonal analytics.
An index is a number; a colour scheme decides how it looks. In Band Analytics a colour scheme is a short list of value ranges, each with its own colour: every spot from the lower value up to (but not including) the upper value gets that colour. Because the list is the scheme, it doubles as the legend: it shows exactly which colour stands for which values.
| Built-in scheme | Classes | Used by default for |
|---|---|---|
| NDVI (Vegetation) | 5, the agriculture classes above | NDVI |
| NDRE (Vegetation) | 5, the agriculture classes above | NDRE |
| NDVI (Red→Green) | 8 steps from red at the bottom to deep green at the top | Most other indices |
| Diverging Blue–Red | 5, from deep blue through white to deep red, centred on zero | NDWI (water) |
| Grayscale (0–1) | 5 shades of grey | Any 0-to-1 value |
Picking a built-in index selects its scheme for you, and you can switch to any other. To make your own, add, edit or remove ranges and pick each colour, then save the scheme by name, personally or for your organization, exactly like a formula. A preview with no scheme at all is drawn in grey from −1 to 1. The NDVI and NDRE schemes are the same classes the map makes, so an NDVI you compute yourself looks exactly like the one delivered with the flight.
On an agricultural site, the numbers behind the colours are one click away in the Site Navigator, for any zone you have drawn:
Zone values are averages over the whole zone. To read a smaller spot, draw a smaller zone around it.
One number for a whole field hides most of what matters. Zonal analytics measures each part of the field separately: every management zone, trial strip, irrigation block or problem patch you draw. It answers two questions for each zone: how is it doing now, and how is it changing?
Open Zonal Analytics from the site in Site Manager, or from the Site Navigator. Pick an Index (only indices your camera's bands can produce are offered, including your saved formulas, plus crop water stress once it has been run on a flight of the site), a Mask and a Year, then select Compute. Any flight that does not yet have that index is computed for you first, at no charge. Later, Update new flights measures only the flights not yet done, and a new flight is measured automatically when its map finishes on a site you have already computed. Anyone who can see the site can view the results; people who can edit the site can compute and change settings. Zonal analytics works on the web and in the desktop application.
Every zone holds a mix of crop, soil and shadow. The Mask decides what is measured:
Veg. threshold sets a site-wide cutoff anywhere from −1 to 1, with an optional override for any zone, and a Preview mask that paints the vegetation green and the rest grey over any flight before you save. Saving re-measures every tracked index on every flight, in the background. A thin strip just inside each zone's boundary is also left out, 6 in (0.15 m) or one pixel wide, whichever is wider (narrower only when a zone is too small to spare it), so spots that straddle the boundary and mix in the neighbouring ground are not counted.
| Measure | In plain words |
|---|---|
| Mean | The zone's average value: the headline number |
| Uniformity | How even the zone is, compared with the rest of the field on the same flight: even when its spread is at most three-quarters of the field's typical spread, patchy when it is more than 1.4 times it, otherwise typical |
| Cover | The share of the zone that counts as vegetation |
| vs field | How far the zone sits above or below the field average, in standard deviations (for example "+0.8σ above"). The field average is weighted by area, so a small scouting zone cannot pull it around |
| Trend | Whether the zone is rising or falling, per week, measured against real dates with a robust line fit that one odd flight cannot swing |
| Season total | The area under the zone's curve across the season (for NDVI, often called iNDVI): one number for the season's vigour |
| Green-up and peak | The first flight on which the zone passed halfway between its lowest and highest value of the season, and when it peaked |
Behind these, each zone's median, 10th and 90th percentile and spread are kept for every flight. Before any of them is calculated, freak values far outside the zone's own spread are set aside, so a handful of broken spots cannot drag the average.
A Site Navigator share link shows the zones and the results already computed; the person you share it with can read them but cannot run new ones.
Zones are the polygons of your site, so they can be your management zones, trial plots or anything else you farm by. Their boundaries can be exported from Site Manager as a shapefile, GeoJSON, KML or KMZ for use in other farm and mapping software.
A single flight is a snapshot. A season of flights is a story, and Omniris keeps every flight of a site lined up so you can read it.
The Site Navigator's Compare tool takes any index, built-in or saved, and two flight dates, and works out the change at every spot. Any flight missing that index has it computed first.
"Rose" and "fell" describe the number, not the crop. For PSRI (senescence) or NDWI (water), a rise can be the bad direction.
A thirsty plant closes its pores and warms up. The Crop Water Stress Index (CWSI) uses a thermal map of the canopy, with the air temperature and humidity at 1 pm local time on the day of the flight, to put a number on that: 0 is well watered, 1 is maximum stress. In the Site Navigator, open a thermal layer, pick the crop and select Run CWSI.
Thermal maps, temperatures and CWSI are covered in full in the companion paper Temperatures you can measure.
Every site in Site Manager has a Type, set when the site is created or edited. The type decides which tools the site shows.
| Type | What it changes |
|---|---|
| Agricultural (the default) | Shows the full zonal analytics tools: the Zonal Analytics button in Site Manager and the zonal section of the Site Navigator |
| Solar (PV plant) | Hides the farm tools; sets the thermal hot-spot presets and report wording for solar inspections |
| Roof / building envelope | Hides the farm tools; sets the thermal presets and report wording for roof moisture surveys |
| Other | Hides the farm tools |
Band Analytics, the NDVI and NDRE maps and flight comparisons work on any multispectral flight, whatever the site type. Flights join a site through the site name given when the map is made, so use the same name for every flight of the same field.
Orion, the Omniris AI assistant, can answer crop questions about the multispectral flights in a folder, in plain language:
The answers are worked out from your index maps, flight by flight. The companion paper on Orion, the AI assistant, describes what else it can do.
The maps Omniris makes from a multispectral flight are in open, standard formats that farm-management, agronomy and mapping (GIS) software can read.
| What | Format | How |
|---|---|---|
| Multispectral map, band maps, colour picture | GeoTIFF | Download from the vault, one file or a whole folder |
| NDVI, NDRE and every index you save: measurement map and display map | GeoTIFF or Cloud Optimized GeoTIFF, your choice | Download from the vault |
| Index change maps between two flights | GeoTIFF | Saved beside the later flight; download from the vault |
| Zone boundaries | Shapefile, GeoJSON, KML, KMZ | Export from the site in Site Manager |
| Flight comparison numbers | Report, CSV | From the Compare tool, on the web |
| Processing report with NDVI and NDRE figures | On-screen page and PDF | From the finished map |
| Any map as a plain picture | JPG or PNG | Export a GeoTIFF as an image |
| GeoTIFF imagery to an ArcGIS portal or ArcGIS Online | Hosted imagery layer | Publish to ArcGIS from the folder |
Results can also be shared with a colleague or client, or by link, like any other vault file. Sharing, delivery and integrations are covered in the companion paper on sharing, delivery and integrations.
Crop-health maps are powerful because they are simple. That also makes it important to know what they do not say.