NDVI e multispettrale con WebODM per l'agricoltura
In questa pagina
Le mappe di vigore sono uno degli usi più richiesti del drone in agricoltura, e WebODM le produce con software libero. Ma il tema è pieno di equivoci, primo fra tutti l'idea che si possa ottenere un NDVI da una camera normale. Questa guida spiega cosa serve davvero, come impostare l'elaborazione e come leggere i risultati con onestà. Termini nel glossario.
1. Cosa vede una camera multispettrale#
Una camera RGB registra tre bande nel visibile: rosso, verde e blu. Una camera multispettrale aggiunge bande che l'occhio non vede, tipicamente il red edge (il bordo tra rosso e infrarosso) e il NIR (vicino infrarosso). La vegetazione sana assorbe molto rosso per la fotosintesi e riflette molto NIR: è questo contrasto che gli indici di vegetazione misurano.
Sul mercato ci sono due famiglie di prodotti, che citiamo come categorie e non come consigli d'acquisto:
- droni con camera multispettrale integrata (per esempio la serie DJI Mavic 3M), che scattano una foto RGB e alcune bande strette a ogni punto di presa;
- camere multispettrali dedicate da montare su drone (per esempio i sensori MicaSense), con più sensori separati e spesso un sensore di luce incidente sul dorso del drone.
In entrambi i casi il dataset contiene, per ogni posizione, più immagini: una per banda. WebODM le riconosce e le tratta come un unico "scatto multispettrale".
2. Perché la radiometria conta#
Un'ortofoto RGB deve "sembrare giusta". Una mappa di vegetazione deve invece contenere valori fisicamente confrontabili: la riflettanza di una foglia deve dare lo stesso numero alle 10 e alle 14, con il sole coperto o pieno. Senza correzione, il "vigore" che vedi è in parte la nuvola che passava.
Per questo il motore (ODX in WebODM, ODM nella distribuzione OpenDroneMap) offre l'opzione --radiometric-calibration, con tre valori:
| Valore | Cosa fa | Quando usarlo |
|---|---|---|
none (predefinito) |
Nessuna correzione: valori digitali grezzi | Ortofoto RGB; anteprime |
camera |
Corregge usando i parametri della camera scritti nei metadati (vignettatura, esposizione, guadagno, tempo di scatto) e produce valori di radianza normalizzati | Il minimo per confrontare indici tra date diverse |
camera+sun |
Aggiunge la correzione con il sensore di luce incidente (downwelling light sensor), se la camera lo ha e ne scrive i dati nei metadati | Voli con luce variabile, confronti multi-temporali rigorosi |
Se la camera non ha un sensore di luce, camera+sun non ha dati da usare: scegli camera. Se hai fotografato un pannello di calibrazione (target di riflettanza nota) a inizio e fine volo, il flusso per usarlo dipende dal produttore; la documentazione ufficiale sul multispettrale (link in fondo) spiega cosa il motore legge dai metadati e cosa no.
3. Le opzioni del dataset multispettrale#
Oltre alla calibrazione, due opzioni governano l'elaborazione:
--primary-band indica quale banda il motore usa per la ricostruzione geometrica (feature, matching, nuvola). Il predefinito auto sceglie da solo; puoi forzare una banda con buon contrasto (spesso il NIR o il rosso) se la ricostruzione fallisce o è debole. Le altre bande vengono poi allineate e proiettate sulla stessa geometria.
--skip-band-alignment disattiva l'allineamento fine tra le bande. Le lenti di una camera multispettrale sono fisicamente separate di qualche centimetro, quindi le immagini delle bande non coincidono al pixel: l'allineamento corregge questo scostamento. Saltarlo velocizza l'elaborazione ma produce "aloni" colorati sui bordi degli oggetti e indici sbagliati proprio lì. Usalo solo se le tue immagini sono già allineate dal software del produttore.
Il preset "Multispectral" di WebODM imposta un insieme coerente di opzioni per questi dataset (preset e opzioni base); parti da lì e cambia solo la calibrazione.
Il risultato è un'ortofoto GeoTIFF multi-banda: un solo file con tante bande quante ne ha la camera, ciascuna con i valori corretti. Da questo file nascono gli indici.

4. Gli indici di vegetazione#
Un indice è una combinazione aritmetica di bande che riduce l'effetto della luce e mette in evidenza una proprietà. I quattro più usati:
| Indice | Formula | Bande richieste | Cosa evidenzia |
|---|---|---|---|
| NDVI | (NIR − R) / (NIR + R) | NIR, rosso | Vigore e copertura fogliare; satura su colture molto dense |
| NDRE | (NIR − RE) / (NIR + RE) | NIR, red edge | Contenuto di clorofilla e azoto in colture mature, dove l'NDVI satura |
| GNDVI | (NIR − G) / (NIR + G) | NIR, verde | Simile all'NDVI, più sensibile alla clorofilla |
| VARI | (G − R) / (G + R − B) | Solo visibile (RGB) | Verdezza percepita; approssima la copertura vegetale |
La riga che conta è la colonna "bande richieste". NDVI, NDRE e GNDVI hanno bisogno del NIR: non si calcolano da una camera RGB. VARI e indici simili basati sul solo visibile (ad esempio quelli detti "ExG" o "TGI") sono gli unici che una camera normale permette, e misurano quanto è verde la scena, non la sua risposta fotosintetica.
I valori di NDVI vanno da −1 a +1: suolo nudo e acqua stanno vicino allo zero o sotto, vegetazione sana su valori alti. Non riportiamo soglie fisse: dipendono da coltura, stadio e sensore, e vanno tarate con osservazioni a terra.
5. Il plugin Plant Health#
WebODM calcola gli indici direttamente sulla mappa 2D con il plugin Plant Health. Dal pannello del plugin:
- Scegli l'algoritmo (NDVI, NDRE, GNDVI, VARI e altri; l'elenco disponibile dipende dalle bande presenti nel task).
- Scegli la rampa di colori e, se disponibile, il numero di classi e l'intervallo dei valori; per confrontare due date usa la stessa scala fissa, non quella automatica.
- Osserva la mappa; la legenda riporta i valori corrispondenti ai colori.
- Esporta il risultato come GeoTIFF (e negli altri formati che il pannello offre) per usarlo in QGIS.
I dettagli dell'interfaccia (nomi degli algoritmi, opzioni di esportazione, filtri) cambiano tra le versioni: verifica nel pannello del plugin e nella documentazione di WebODM.
Su un task RGB il plugin propone comunque gli indici calcolabili dal visibile, come VARI. Se ti offre "NDVI" su un dataset senza banda NIR, sta usando una banda del visibile al posto del NIR: il risultato è una mappa colorata che non è un NDVI. La sezione seguente spiega perché il punto è importante.
6. I limiti: l'NDVI "finto" e il caso RGB#
Sul mercato circolano mappe chiamate NDVI ottenute da camere RGB, spesso con filtri modificati o semplici ricolorazioni. Vanno considerate con cautela:
- Camera RGB standard. Non ha il NIR. Qualsiasi "NDVI" che ne deriva è un altro indice con un nome sbagliato. Puoi legittimamente produrre mappe VARI, chiamandole con il loro nome, utili per individuare fallanze, zone infestate o differenze di copertura.
- Camera RGB modificata (filtro NIR). Alcune camere vengono modificate per far passare l'infrarosso su un canale. Ottieni una banda "NIR-ish" contaminata dal visibile, senza calibrazione radiometrica: buona per confronti relativi dentro lo stesso volo, non per valori assoluti né per confronti tra date.
- Camera multispettrale senza calibrazione. Anche con il NIR vero, senza
--radiometric-calibrationi valori dipendono dalla luce del momento. Dentro un singolo volo la mappa è leggibile; tra date diverse serve la calibrazione.
Per un cliente agricolo la distinzione conta: una mappa di vigore relativa (dove il campo è più o meno verde oggi) è un prodotto utile e onesto; una serie temporale di NDVI per decidere concimazioni richiede sensore, calibrazione e verifiche a terra.
Un cenno al termico#
Le camere termiche producono immagini a banda singola nell'infrarosso termico. WebODM può ricostruire un'ortofoto termica da dataset radiometrici, con le stesse logiche di banda primaria e allineamento; la bassa risoluzione e il basso contrasto dei sensori termici rendono però la ricostruzione più fragile e spesso serve abbinare le immagini RGB dello stesso volo. È un tema a sé, rimandato alla documentazione ufficiale sul multispettrale.
7. Dal plugin a QGIS#
Il GeoTIFF multi-banda si apre in QGIS come qualunque raster. Con il Calcolatore raster puoi calcolare tu stesso gli indici, controllando la formula, oppure caricare il GeoTIFF dell'indice esportato dal plugin e classificarlo con una rampa fissa. Da lì puoi tracciare le zone omogenee (poligoni di gestione), calcolare statistiche per parcella (Statistiche zonali) e stampare la mappa con legenda e scala: il flusso è nella guida esportare in QGIS. Ricorda che il raster è nell'EPSG del task: per sovrapporlo al catasto o alla CTR consulta la guida ai sistemi di riferimento italiani.
Come verificare
Il flusso multispettrale ha funzionato se:
- l'ortofoto del task ha tutte le bande della camera (controlla il numero di bande nelle proprietà del layer in QGIS);
- i bordi di strade e filari non mostrano aloni colorati (allineamento delle bande corretto);
- il suolo nudo e l'acqua hanno NDVI vicino a zero o negativo, la vegetazione sana valori alti e coerenti tra zone simili;
- su due voli calibrati della stessa area in condizioni stabili, gli stessi punti danno valori simili.
Problemi frequenti#
La ricostruzione fallisce o trova poche feature. Le bande strette hanno poco contrasto: prova a forzare --primary-band sulla banda più contrastata, o alza la qualità delle feature.
Aloni colorati sui bordi. Allineamento delle bande insufficiente: assicurati che --skip-band-alignment sia disattivato.
La mappa NDVI cambia tra due voli della stessa giornata. Manca la calibrazione radiometrica o la luce è cambiata: usa --radiometric-calibration camera (o camera+sun se il sensore c'è).
Il plugin mostra pochi algoritmi. Il task non ha le bande necessarie: da un dataset RGB otterrai solo indici del visibile.
Prossimi passi#
- Esportare in QGIS: statistiche per parcella e stampa della mappa di vigore.
- Sistemi di riferimento italiani: sovrapporre gli indici a catasto e CTR.
- Acquisire le immagini: pianificare un volo adatto al multispettrale.
Fonti
- Elaborazione multispettrale e termica in ODM: https://docs.opendronemap.org/multispectral/(link esterno)
- Opzioni di elaborazione (radiometric-calibration, primary-band, skip-band-alignment): https://docs.opendronemap.org/arguments/(link esterno)
- Documentazione WebODM e plugin Plant Health: https://docs.webodm.org/(link esterno)
- QGIS, Calcolatore raster e statistiche zonali: https://docs.qgis.org/(link esterno)
Guide correlate
Esportare e aprire gli output di WebODM in QGIS
Output e utilizzo · Intermedio · Entrambe le linee
Sistemi di riferimento in Italia: EPSG per WebODM e QGIS
Output e utilizzo · Avanzato · Entrambe le linee
Ortofoto da WebODM: GeoTIFF, COG, PNG e KMZ spiegati
Output e utilizzo · Base · Entrambe le linee
I preset di WebODM e le opzioni base spiegate
Primo progetto · Base · Entrambe le linee
Acquisire le immagini: pianificare il volo per la fotogrammetria
Primo progetto · Base · Entrambe le linee