.mai visto una BLOB image da QGIS?

…tralasciando il titolo (un periodo caratterizzato da un eccessivo stress per me), in questo articolo voglio condividere un metodo veloce su come può essere visualizzata direttamente da QGIS un’immagine memorizzata all’interno di database SQLite.

In un database possiamo storicizzare diverse informazioni non solo alfanumeriche anche dati raster come le immagini grafiche, per esempio foto, nei più svariati formati. Comunemente per memorizzare un’immagine grafica o una foto all’interno di una tabella presente nel database si usa come datatype il formato BLOB (Binary Large OBject), in quanto quest’ultimo consente di memorizzare oggetti molto grandi anche parecchi gigabyte. Molti database relazionali supportano questo tipo di dato, tra questi SQLite o SpatiaLite se presente l’estensione spaziale per il trattamento dei dati geografici. In questo ultimo caso, si tratta di un formato di database ampiamente utilizzato per memorizzare dati geospaziali (sia vettoriali che raster) soprattutto nella sua variante come standard OGC materializzato nel formato GeoPackage (*.gpkg). E poi si tratta di un prodotto Made in Italy!

Il formato BLOB è però anche un formato binario, non interpretabile direttamente ma solo attraverso l’ausilio di qualche decoder appropriato. In questo brevissimo articolo vedremo come visualizzare foto e immagini memorizzate in un campo di tipo BLOB direttamente da QGIS, facendo uso delle oramai conosciute e mitiche… Actions!

Nello screencast allegato vengono mostrati tutti i passaggi per impostare correttamente l’azione. Nello script python allegato, da usare per creare l’azione in QGIS, è necessario modificare le righe 5, 6 e 7:

UNIQUE_FIELD = 'unique_field_name'
BLOB_FIELD = 'picture_field_name'
FIELD_VALUE = '[%unique_field_name%]'

Alla riga 5 sostituire il valore unique_field_name con il nome di un campo univoco (magari la chiave primaria), la riga 6 deve contenere il nome del campo dove sono state memorizzate le foto ed infine alla riga 7 va messo lo stesso valore come alla riga 5 lasciando in questo caso la stringa ‘[% %]’. Nel mio caso le righe con i valori già impostati sono:

UNIQUE_FIELD = 'pkuid'
BLOB_FIELD = 'picture'
FIELD_VALUE = '[%pkuid%]'

 

.R come l’Inferno di Dante

Quando in un libro leggi frasi del tipo:

The author thanks D. Alighieri for useful comments.

sei costretto a leggerlo fino alla fine (non è una lettura facile, almeno per me). Ero alla ricerca di qualcosa che mi aiutasse a risolvere un dubbio su uno script scritto in R, mi sono tuffato su internet, strumento indispensabile, e sono sprofondato in un mondo infinito di manoscritti che raccontano vita morte e miracoli di questo linguaggio ormai ampiamente riconosciuto dal mondo scientifico a livello internazionale. Continue reading

.downdem script: un modo alternativo per scaricare il DTM (20m) del Geoportale Nazionale

Per lavoro utilizzo abbastanza frequentemente alcuni script (procedure automatizzate e personalizzate) per velocizzare le attività che svolgo quotidianamente, i quali si rivelano molto utili quando il tempo a disposizione è veramente poco. Tra questi ce n’è uno in particolare che mi piacerebbe condividere e riguarda uno script per scaricare il DTM del Geoportale Nazionale. Continue reading

.tutte le schede monografiche dei punti fiduciali in un Bot Telegram

Nell’attesa che l’Agenzia delle Entrate metta a disposizione di chiunque i suoi dati, attraverso dei servizi aperti e liberamente accessibili a tutti, ho creato un Bot Telegram per ricercare e scaricare le schede monografiche dei punti fiduciali per l’intero territorio nazionale. E che sia di buon auspicio per rendere i servizi catastali dell’Agenzia delle Entrate sempre più open. Continue reading

.quanti Sistemi di Riferimento conosci? Io almeno 6000!

Sono incappato in questo sito epsg.io nei giorni scorsi e l’ho trovato molto interessante oltre che utile. Si tratta di un progetto libero e a codice aperto disponibile anche su Github, che consente di recuperare molte informazioni sulla quasi totalità dei sitemi di riferimento spaziali (CRS – Coordinate Reference System) esistenti utilizzati in tutto il mondo, sia globali che locali. Il numero di CRS presenti attualmente è quello dell’archivio EPSG (European Petroleum Survey Group), divenuto ormai uno standard internazionale per la codifica dei sistemi geodetici. Continue reading