mercoledì 17 maggio 2023

Plugin OrfeoToolbox in QGis Windows

 Per utilizzare Orfeo Toolbox direttamente dentro QGis si spacchetta lo zip di Orfeo Toolbox in una directory (con il nome senza caratteri speciali). Poi si seleziona strumenti di processing/Options /Programmi e si popolano i campi 

Cartella OTBC:/OTB-7.4.1-Win64/OTB-7.4.1-Win64

Cartella delle applicazioni OTB C:/OTB-7.4.1-Win64/OTB-7.4.1-Win64/bin;C:/OTB-7.4.1-Win64/OTB-7.4.1-Win64/lib/otb/applications




Pansharpening Landsat con Qgis

 

Si caricano i raster delle bande 2,3,4 (BGR) e la banda 8 pancromatica

Si apre il menu Raster/Miscellanea/Crea Raster Virtuale selezionando come input le bande ottiche e spuntando il flag Place each input file in a separate band

A questo punto dal toolbox si seleziona pansharpening indicando come Dataset spettrale il raster virtuale creato in precedenza e come dataset pancromatico la banda 8




Snap e Landsat

 Per utilizzare le immagini Landsat all'interno del software Snap di Esa e' sufficiente spacchettare il file tar ed aprire il file txt con contiene nel nome la sigla MTL




sabato 6 maggio 2023

RGB change detection con RasterIO

 Un semplice metodo per avere il change detection da una immagine RGB e' la formula seguente

 


 che non e' altro che la distanza euclidea tra i due punti rappresentativi delle immagini nello spazio delle bande (quindi puo' essere scalato anche su n-bande)

 


 utilizzando la libreria RasterIO si puo' scrivere il codice seguente

 

import numpy as np
import rasterio
from rasterio.plot import show_hist,show

immagine1 = "cd1.tif"
immagine2 = "cd2.tif"


im1 = rasterio.open(immagine1)
im2 = rasterio.open(immagine2)

im1_b2 = im1.read(1).astype(float)
im1_b3 = im1.read(2).astype(float)
im1_b4 = im1.read(3).astype(float)


im2_b2 = im2.read(1).astype(float)
im2_b3 = im2.read(2).astype(float)
im2_b4 = im2.read(3).astype(float)

np.seterr(divide = "ignore", invalid = "ignore")

change_det = np.zeros(im1_b2.shape, dtype=rasterio.float32)


change_det = np.sqrt(np.power(im1_b2-im2_b2,2)+np.power(im1_b3-im2_b3,2)+np.power(im1_b4-im2_b4,2))


#print("Change Det Max " + str(np.max(change_det)))
#print("Change Det Min " + str(np.min(change_det)))

#show(change_det)

#show_hist(change_det)
kwargs = im1.meta
kwargs.update(driver='GTiff',dtype=rasterio.float32,count=1)

cd_image = rasterio.open('CD.tiff','w',**kwargs )
cd_image.write(change_det,1)
cd_image.close()

 

mercoledì 26 aprile 2023

L'importanza di una antenna UV-5118

 Mi sono comprato su Aliexpress questa radio UV-5118 che era venduta con Air Band...una volta arrivata non solo non riceveva in air band ma praticamente a nessuna frequenza 



Dopo aver ottenuto il rimborso ho sostituito l'antenna con una presa da un Baofeng...la air band non si riceve ma in UHF e VHF ha iniziato a funzionare in modo decisamente buono


lunedì 24 aprile 2023

Satellite Derived Bathymetry Mapping

Una applicazione dello script a questo link applicato direttamente in EO Browser


Versilia

Booca L'Arno

Lago di massaciuccoli

Golfo di Spezia Foce del Magra

in linea di principio lo script puo' essere semplificato dato che la batimetria puo' essere stimata in modo relativa con il rapporto log10(B3/B4) di Sentinel 2 (attenzione...Rrs non e' la Surface Reflectance che si trova nel prodotto L2 di Sentinel ma e' la Remote Sensing Reflectance)




in ogni caso si vede che l'influenza del carico di sedimenti influenza la stima della batimetria (vedi immagine successiva. Batimetria ripresa da progetto Camp Italy)





venerdì 21 aprile 2023

Correlazione tra Sentinel 5P e stazioni a terra

In questo post, usando gli script di Earth Engine visti in precedenza, ho provato a mettere in correlazione il dato telerilevato di Sentinel 5P con alcune stazioni di monitoraggio aria Arpat (dati pubblici sul sito www.arpat.toscana.it) 


Parametro NO2
Vi e' un ottimo accordo tra i dati medi mensili delle concentrazioni di NO2 da satellite ed a terra

la curva di correlazione non e' incoraggiante



Parametro CH4
I dati da satellite mostrano il gradiente di aumento del metano che e' coerente con il valore di crescita mondiale 




Parametro S02
Per il parametro S02 non si possono fare correlazioni perche' quando le concentrazioni aumentano (nel periodo autunnale) il satellite non riporta dati
Stazione Arpat via Bassi Firenze

Mappa SO2 Piana Fiorentina Giugno 2019
Sentinel 5P





Parametro O3
Per l'ozono ho molti dubbi...comunque esporti i dati si vede che c'e' un offset di circa 3 mesi tra i dati telerilevati e quelli a terra

Parametro CO
Questo parametro e' critico per la correlazione con la stazione a terra perche' a Firenze la stazione di misura non e' in posizione di fondo ma a bordo di una viabilita' principale



Parametro PM10
Il parametro PM10 puo' essere derivato da UV Aerosol nel dataset di Sentinel 5P
Qui il  confronto delle medie mensili tra i dati satellitari ed una stazione a terra




Aerosol marzo 2022



qui un riferimento bibliografico della correlazione tra dati satellitari ed a terra


Debugger integrato ESP32S3

Aggiornamento In realta' il Jtag USB funziona anche sui moduli cinesi Il problema risiede  nell'ID USB della porta Jtag. Nel modulo...