ARPA-SIMC / arkimaps

generazione mappe meteorologiche da modelli previsionali
GNU General Public License v2.0
0 stars 1 forks source link

Risoluzione png di output #150

Closed gantolini closed 11 months ago

gantolini commented 1 year ago

I png in output da arkimaps hanno una risoluzione relativamente bassa, e le eventuali label sono poco leggibili (v. figura sotto). Sarebbe possibile aumentarne la risoluzione? Grazie

test_local

spanezz commented 1 year ago

In teoria non c'è niente definito in arkimaps che determina la risoluzione, ed è tutto deciso da come i flavour configurano la generazione con Magics.

Non è proprio il mio campo fare messe a punto lato magics, però possiamo provare a circoscrivere meglio il problema. Emanuele/Gabriele, c'è modo di risalire a che tipo di ricetta e flavour sono stati usati per l'immagine sopra?

gantolini commented 1 year ago

Sì certo, il flavour usato è emro, la ricetta è tclim.yaml (modificata dalla pull request #151 , ma non credo cambi niente rispetto alla risoluzione).-*

edigiacomo commented 1 year ago

Il flavour emro mi pare definisca una risoluzione di 1000px per la larghezza (https://github.com/ARPA-SIMC/arkimaps/blob/v1.4-2/recipes/flavours/emro.yaml#L9) e l'altezza dovrebbe essere proporzionale: puoi provare ad aumentare il parametro output_width, facendo però attenzione alla dimensione finale del PNG.

Inoltre, penso sia possibile calibrare nella ricetta (nel tuo caso tclim.yaml) anche la dimensione (contour_label_height) e la qualità (contour_label_quality) dei font, oltre che altri parametri (vedi https://confluence.ecmwf.int/display/MAGP/Contouring).

Proverei prima a migliorare la visibilità dell'etichetta nella ricetta e poi ad aumentare la risoluzione.

gantolini commented 1 year ago

Avevo già fatto le prove con tutti parametri di contouring diposnibili, compresi contour_label_height e contour_label_quality. Per il primo ho usato un valore che corrispondesse più o meno a quello che abbiamo attualmente operativo, prodotto da altro software (v. per es. https://www.arpae.it/it/temi-ambientali/meteo/dati-e-osservazioni/mappe-giornaliere/mappe-giornaliere). Dimensioni superiori mi sembrano eccessive per la leggibilità della mappa. Per il secondo parametro, ho fatto alcune prove ma sembra che passando da low a high non cambi niente in termini di qualità finale.

Aumentando la risoluzione del png nel flavour aumenterebbe comunque anche la resa delle polilinee (v. immagine precedente), non solo delle label.

Per quanto riguarda i flavour, mi sembra di capire che non si possano utilizzare dei flavour locali e non ho i diritti per modificare quelli di sistema, o aggiungerne di nuovi.

edigiacomo commented 1 year ago

Per quanto riguarda i flavour, mi sembra di capire che non si possano utilizzare dei flavour locali e non ho i diritti per modificare quelli di sistema, o aggiungerne di nuovi.

È possibile avere una directory di ricette locali e modificare i flavour (che sono dentro la stessa directory recipes, come le ricette), vedi opzione --recipes di arkimaps process:

$ arkimaps process --help
usage: arkimaps process [-h] [-v] [--debug] [--filter {arkimet|eccodes}] [--grib] [--styles dir] [--output file.tar] [--flavours FLAVOURS] [--recipes dir] [--workdir dir]

options:
  -h, --help            show this help message and exit
  -v, --verbose         verbose output
  --debug               debugging output
  --filter {arkimet|eccodes}
                        backend to use to organise data into recipe inputs. Default: arkimet
  --grib                read input as GRIB data instead of arkimet output. Implies --filter=eccodes
  --styles dir          styles directory. Default: ./styles (if existing) or /usr/share/magics/styles/ecmwf
  --output file.tar, -o file.tar
                        write rendered output to the given file. Default: write to stdout
  --flavours FLAVOURS   comma-separated list of flavours to render. Default: "default"
  --recipes dir         directory with the YAML recipes (default: ./recipes (if existing) or /usr/share/arkimaps/recipes
  --workdir dir         working directory. Default: a temporary one

Se fai un clone del repository, modifichi il contenuto del flavour ed esegui arkimaps da lì, il comando userà le tue ricette/flavours locali, perché il comportamento di default prevede di usare la directory ./recipes.

gantolini commented 1 year ago

Grazie dei suggerimenti Emanuele. Sono alla fine riuscito cambiando il parametro output_width per il flavour emro_web e ho ridimensionato di conseguenza le label per le nostre recipes. Per avere una qualità simile rispetto a quanto provato per emro, ho dovuto inoltre cambiare dimensioni di superpage, page e subpage (v. pull request #152).

edigiacomo commented 11 months ago

Chiudo la issue. @gantolini se per caso ci sono altre cose da approfondire, riaprila pure oppure aprire una nuova.