Hallo zusammen,
ich wollte eh für mich selbst dokumentieren, wie man die VIIRS-Daten auswertet, dann kann ich das auch gleich hier machen, dachte ich... vielleicht ist es für den einen oder anderen nützlich oder eine Anregung für eigene Aktivitäten. Das ist erst mal ein Anfang, ich werde ggf. im Lauf der Zeit ergänzen.
Datenquelle
VIIRS (Visible/Infrared Imager Radiometer Suite) ist eine abbildendes Radiometer an Bord des Wetter- und Umweltsatelliten Suomi NPP, der nix mit Finnland zu tun hat, sondern von der NASA und der NOAA betrieben wird und nach einem amerikanischen Meterologen dieses Namens benannt ist. VIIRS nimmt die gesamte Erde täglich in verschiedenen Spektralbereichen auf, teilweise auch nachts, was zur Beurteilung von Lichtverschmutzung sehr hilfreich ist.
Die Daten sind hier frei zugänglich: https://ladsweb.modaps.eosdis.nasa.gov/search/
Dort muss man dann die richtigen Daten finden: bei Sensors "VIIRS:Suomi-NPP" auswählen, dann in der Liste ganz unten VNP46A1 oder VNP46A2 wählen:
VNP46A1: tagesaktuelle Daten "Daily Gridded Day Night Band 500m Linear Lat Lon Grid Night"
VNP46A2: nachbearbeitet inkl. Abzug des reflektierten Mondlichts, für die letzten paar Monate noch nicht verfügbar "Gap-Filled Lunar BRDF-Adjusted Nighttime Lights Daily L3 Global 500m Linear Lat Lon Grid"
(todo: ergänzen, welche Spektralbereiche genau dahinterstecken)
Dann kann man sich Ort und Zeit raussuchen und bekommt eine Liste an Dateien zum Download. Ach ja, registrieren muss man sich auch noch dafür.
Datenformat und Konvertierung
Die VNP46A1/2-Daten sind im HDF5-Format, andere Daten sind teilweise auch in HDF4. Dann sind die Konverter unter https://portal.hdfgroup.org/display/support/h4h5tools+2.2.5 sehr hilfreich.
Auswertung und Darstellung
Das python-Progrämmchen im Anhang stellt die VNP46A1-Daten einmal logarithmisch, einmal linear skaliert dar. Logarithmisch ist gut für die Übersicht und für die Kontrolle, ob Wolken drauf sind, linear ist gut für Auswertungen. DIe Skala muss man ggf. noch so anpassen, dass das sichtbar wird, was man sehen will. Hier ein Screenshot von (überwiegend) Südostfrankreich:
astrotreff.de/index.php?attachment/1181/
Anwendung
Eine quantitative Auswertung der Daten und Umrechnung in SQM-Werte ist sicher möglich - ich hab mich für den Anfang auf Relativvergleiche beschränkt und dokumentiere Veränderungen der lokalen Lichtverschmutzung damit. Hier ein krasses Beispiel basierend auf Daten vom letzten Jahr, mittlerweile sind wir mit dem verursachenden Industriebetrieb im Kontakt und es sieht schon besser aus - die Bauerndörfer in der Umgebung sind der Maßstab...
Viele Grüße und viel Spaß damit
Holger
**
Hier noch das Progrämmchen, .py kann man nicht hochladen...
In der Zeile nach dem with-Statment fehlt die Einrückung, leider geht die hier im Forum verloren.
import h5py
import matplotlib.pyplot as plt
import numpy as np
with h5py.File('test.h5','r') as f:
data=f["HDFEOS"]["GRIDS"]["VNP_Grid_DNB"]["Data Fields"]["DNB_At_Sensor_Radiance_500m"][()] # VNP46A1
# data=f["HDFEOS"]["GRIDS"]["VNP_Grid_DNB"]["Data Fields"]["DNB_BRDF-Corrected_NTL"][()] # VNP46A2
data = data % 65535 # ungültige Werte auf 0 setzen
fig, (ax1, ax2) = plt.subplots(1,2)
ax1.imshow(np.log(data+1)) # logarithmisch skaliert
ax2.imshow(data) # linear skaliert
plt.show()