PostGIS Raster
´ ska 6 Pˇrednaˇ
PostGIS Raster
´ Uvod
´ rastrov´ych dat v geodatabazi ´ PostGIS Sprava
PostGIS Raster Charakteristika
´ ´ ı prostorovych 155UZPD Uvod do zpracovan´ ´ dat, zimn´ı semestr 2016-2017
Import/export a konverze dat Funkcionalita ´ Prakticka´ ukazka
Martin Landa
[email protected] ˇ Fakulta stavebn´ı CVUT v Praze Katedra geomatiky http://geo.fsv.cvut.cz/gwiki/155UZPD 1/13
PostGIS Raster
´ Uvod PostGIS Raster Charakteristika Import/export a konverze dat Funkcionalita ´ Prakticka´ ukazka
c 2009-2016 Martin Landa Copyright Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation Licence, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. 2/13
ˇ Obsah pˇredna´ sky
PostGIS Raster
´ Uvod PostGIS Raster Charakteristika
´ 1 Uvod
Import/export a konverze dat Funkcionalita ´ Prakticka´ ukazka
2 PostGIS Raster
Charakteristika Import/export a konverze dat Funkcionalita ´ Prakticka´ ukazka
3/13
´ Uvod
PostGIS Raster
Projekty 1
PGRaster
´ Uvod
2
PostGIS Raster (dˇr´ıve WKTRaster)
PostGIS Raster Charakteristika Import/export a konverze dat Funkcionalita ´ Prakticka´ ukazka
4/13
´ Uvod
PostGIS Raster
Projekty 1
PGRaster
´ Uvod
2
PostGIS Raster (dˇr´ıve WKTRaster)
PostGIS Raster Charakteristika Import/export a konverze dat Funkcionalita
PGRaster
´ Prakticka´ ukazka
→ http://trac.osgeo.org/postgis/wiki/ UsersWikiPgRasterSqlInterface • PGRaster jako dvoudimenzionaln´ ´ ı pole numerick´ych hodnot • LO – PostgreSQL large object • TOAST – PostgreSQL bytea
• Datov´y typ bunky ˇ rastrove´ vrstvy – PGRasterCell • Podporovane´ extern´ı formaty ´ – knihovna GDAL • Vyvoj ˇ ´ ukoncen, viz PostGIS Raster (2009)
4/13
´ Uvod
PostGIS Raster
Projekty 1
PGRaster
´ Uvod
2
PostGIS Raster (dˇr´ıve WKTRaster)
PostGIS Raster Charakteristika Import/export a konverze dat Funkcionalita
PostGIS Raster (dˇr´ıve WKTRaster)
´ Prakticka´ ukazka
→ http://trac.osgeo.org/postgis/wiki/WKTRaster • Vyv´ıjen od roku 2009 (viz roadmap) – souˇcast´ ´ ı PostGIS 2.0 • Odliˇsn´y pˇr´ıstup od PGRaster a Oracle Spatial GeoRaster • C´ılem je implementovat datov´y typ pro rastrova´ data
podobneˇ jako GEOMETRY pro vektorova´ data • Navrhnout funkce typu ST Intersects(), ktere´ by
operovaly souˇcasneˇ nad vektorov´ymi a rastrov´ymi daty
http://freegis.fsv.cvut.cz/gwiki/PostGIS_Raster 4/13
ˇ Obsah pˇredna´ sky
PostGIS Raster
´ Uvod PostGIS Raster Charakteristika
´ 1 Uvod
Import/export a konverze dat Funkcionalita ´ Prakticka´ ukazka
2 PostGIS Raster
Charakteristika Import/export a konverze dat Funkcionalita ´ Prakticka´ ukazka
5/13
PostGIS Raster
PostGIS Raster
´ Zakladn´ ı vlastnosti • Tabulka (relace) ∼ rastrova´ vrstva (raster coverage) • Zaznam ´ ∼ dlaˇzdice cˇ i rastrov´y objekt
´ Uvod PostGIS Raster Charakteristika
• Nov´y datov´y typ RASTER (analogie pro GEOMETRY
Import/export a konverze dat
vektorov´ych dat) • Rastrova´ dlaˇzdice je definovana ´
Funkcionalita
• • • •
´ Prakticka´ ukazka
ˇ (pixelu) – prostorov´ym rozliˇsen´ım Velikost´ı bunky ˇ Rozmerem (ˇs´ıˇrka, v´ysˇ ka) dlaˇzdice ´ u˚ Poˇctem kanal ´ datov´y typ bunky ˇ a hodnota no-data Pro kaˇzd´y kanal
Uloˇzen´ı dat 1 2
´ (obdoba WKB) Uloˇzen´ı rastrov´ych dat v intern´ım formatu Uloˇzen´ı dat externeˇ (jako JPEG, TIFF, . . . ) s moˇznost´ı pouˇz´ıt rastrove´ SQL funkce 6/13
PostGIS Raster
PostGIS Raster
´ Zakladn´ ı vlastnosti • Tabulka (relace) ∼ rastrova´ vrstva (raster coverage) • Zaznam ´ ∼ dlaˇzdice cˇ i rastrov´y objekt
´ Uvod PostGIS Raster Charakteristika
• Nov´y datov´y typ RASTER (analogie pro GEOMETRY
Import/export a konverze dat
vektorov´ych dat) • Rastrova´ dlaˇzdice je definovana ´
Funkcionalita
• • • •
´ Prakticka´ ukazka
ˇ (pixelu) – prostorov´ym rozliˇsen´ım Velikost´ı bunky ˇ Rozmerem (ˇs´ıˇrka, v´ysˇ ka) dlaˇzdice ´ u˚ Poˇctem kanal ´ datov´y typ bunky ˇ a hodnota no-data Pro kaˇzd´y kanal
Uloˇzen´ı dat 1 2
´ (obdoba WKB) Uloˇzen´ı rastrov´ych dat v intern´ım formatu Uloˇzen´ı dat externeˇ (jako JPEG, TIFF, . . . ) s moˇznost´ı pouˇz´ıt rastrove´ SQL funkce 6/13
PostGIS Raster
PostGIS Raster
´ Zakladn´ ı vlastnosti • Tabulka (relace) ∼ rastrova´ vrstva (raster coverage) • Zaznam ´ ∼ dlaˇzdice cˇ i rastrov´y objekt
´ Uvod PostGIS Raster Charakteristika
• Nov´y datov´y typ RASTER (analogie pro GEOMETRY
Import/export a konverze dat
vektorov´ych dat) • Rastrova´ dlaˇzdice je definovana ´
Funkcionalita
• • • •
´ Prakticka´ ukazka
ˇ (pixelu) – prostorov´ym rozliˇsen´ım Velikost´ı bunky ˇ Rozmerem (ˇs´ıˇrka, v´ysˇ ka) dlaˇzdice ´ u˚ Poˇctem kanal ´ datov´y typ bunky ˇ a hodnota no-data Pro kaˇzd´y kanal
Uloˇzen´ı dat 1 2
´ (obdoba WKB) Uloˇzen´ı rastrov´ych dat v intern´ım formatu Uloˇzen´ı dat externeˇ (jako JPEG, TIFF, . . . ) s moˇznost´ı pouˇz´ıt rastrove´ SQL funkce 6/13
PostGIS Raster
PostGIS Raster
Hlavn´ı c´ıle 1
2
3
4
ˇ ırˇitelnost, funkcionalita – Jednoduchost, rozs´ zapouzdˇren´y datov´y typ pro rastrova´ data srovnateln´y s GEOMETRY (vektorova´ data/Simple Features). Obdobne´ ´ operatory a funkce, ktere´ PostGIS nab´ız´ı pro vektorova´ data. ˇ a´ integrace s datovym Bezesv ´ typem GEOMETRY – operace pˇrekryt´ı nad rastrov´ymi a vektorov´ymi daty bez ˇ nutnosti explicitn´ı konverze mezi temito reprezentacemi ´ Flexibilita uloˇzen´ı dat – uloˇzen´ı rastrov´ych dat v databazi ´ × registrace extern´ıho zdroje rastrov´ych dat v databazi
´ Uvod PostGIS Raster Charakteristika Import/export a konverze dat Funkcionalita ´ Prakticka´ ukazka
Interoperabilita – extern´ı datove´ zdroje lze registrovat pomoc´ı knihovny GDAL (podpora pro v´ıce neˇz 140 ´ u) rastrov´ych GIS format ˚
7/13
Import, export dat & konstruktory
PostGIS Raster
Import/Export
´ Nastroje pro import/export dat • raster2pgsql • pgsql2raster
Knihovna GDAL podporuje PostGIS Raster od verze 1.6
´ Uvod PostGIS Raster Charakteristika Import/export a konverze dat Funkcionalita ´ Prakticka´ ukazka
Konverze dat
Konverze geometry/raster (geograficke´ objekty jako vektorove´ polygony nebo rastrove´ dlaˇzdice) • ST AsPolygon(raster) → geometry • ST AsRaster(geometry) → raster
8/13
Import, export dat & konstruktory
PostGIS Raster
Import/Export
´ Nastroje pro import/export dat • raster2pgsql • pgsql2raster
Knihovna GDAL podporuje PostGIS Raster od verze 1.6
´ Uvod PostGIS Raster Charakteristika Import/export a konverze dat Funkcionalita ´ Prakticka´ ukazka
Konverze dat
Konverze geometry/raster (geograficke´ objekty jako vektorove´ polygony nebo rastrove´ dlaˇzdice) • ST AsPolygon(raster) → geometry • ST AsRaster(geometry) → raster
8/13
Pˇrehled funkc´ı
PostGIS Raster
´ Zakladn´ ı funkce • ST Resample(raster, pixelsize, method)
→ raster
´ Uvod PostGIS Raster
• ST Clip(raster|geometry, geometry)
→ typ prvn´ıho argumentu • ST Reclass(raster|geometry, string)
Charakteristika Import/export a konverze dat Funkcionalita ´ Prakticka´ ukazka
→ typ prvn´ıho argumentu • ST MapAlgebra(raster|geometry, raster),
v´ yraz, "raster"|"geometry") → raster/geometry • ...
http://postgis.net/docs/manual-2.3/RT_reference.html
9/13
Pˇrehled funkc´ı
PostGIS Raster
Konstruktory • ST Intersection(raster|geometry,
raster|geometry, "raster"|"geometry") → raster/geometry • ST Union(raster|geometry, raster|geometry,
"raster"|"geometry") → raster/geometry
´ Uvod PostGIS Raster Charakteristika Import/export a konverze dat Funkcionalita ´ Prakticka´ ukazka
• ST Accum(raster set|geometry set,
"raster"|"geometry") → raster/geometry • ST Transform(raster|geometry, SRID)
→ typ prvn´ıho argumentu • ...
9/13
´ Ukazka PostGIS Raster | Import 1
´ ´ GeoTIFF Import rastroveho souboru ve formatu raster2pgsql -r -C -I -s 5514 dem.tif | \ psql pgis_student
2
PostGIS Raster
´ ˇ Poznamka: Pˇrep´ınaˇc -R umoˇznuje data pˇripojit jako extern´ı zdroj dat ´ Zakladn´ ı metadata rastrove´ vrstvy
´ Uvod PostGIS Raster Charakteristika Import/export a konverze dat Funkcionalita ´ Prakticka´ ukazka
SELECT ST_SRID(rast), ST_NumBands(rast), ST_BandPixelType(rast, 1), ST_Width(rast), ST_Height(rast), ST_PixelWidth(rast), ST_PixelHeight(rast), ST_GeoReference(rast) FROM dem; 1 2 3 4 5 6 7 8 9 10 11 12 13
st_srid st_numbands st_bandpixeltype st_width st_height st_pixelwidth st_pixelheight st_georeference
| | | | | | | | : : : : :
2065 1 16BUI 7881 3246 59.9999373525213 89.991627410955 59.9999373525 0.0000000000 0.0000000000 -89.9916274109 -904259.0558398400 -935192.9920546100 10/13
Metadatova´ tabulka RASTER COLUMNS
PostGIS Raster
´ Uvod
\d raster_columns
PostGIS Raster Charakteristika Import/export a konverze dat
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Column | Type | Modifiers ------------------+--------------------+----------r_table_catalog | name | r_table_schema | name | r_table_name | name | r_raster_column | name | srid | integer | scale_x | double precision | scale_y | double precision | blocksize_x | integer | blocksize_y | integer | same_alignment | boolean | regular_blocking | boolean | num_bands | integer | pixel_types | text[] | nodata_values | double precision[] | out_db | boolean[] | extent | geometry |
Funkcionalita ´ Prakticka´ ukazka
11/13
Metadatova´ tabulka RASTER COLUMNS
PostGIS Raster
´ Uvod
SELECT * FROM raster_columns;
PostGIS Raster Charakteristika Import/export a konverze dat
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
r_table_catalog r_table_schema r_table_name r_raster_column srid scale_x scale_y blocksize_x blocksize_y same_alignment regular_blocking num_bands pixel_types nodata_values out_db extent
| | | | | | | | | | | | | | | |
pgis_student public dem rast 2065 59.9999373525213 -89.991627410955 7881 3246 t t 1 {16BUI} {65535} {f} ...
Funkcionalita ´ Prakticka´ ukazka
12/13
´ Ukazka PostGIS Raster | Operace s daty
PostGIS Raster
´ Vytvoˇren´ı konvexn´ı obalky rastrove´ vrstvy CREATE TABLE dem_extent AS SELECT ST_ConvexHull(rast) AS geom FROM dem;
´ Uvod PostGIS Raster Charakteristika Import/export a konverze dat Funkcionalita ´ Prakticka´ ukazka
13/13