Construir GDAL 2.1 con OpenJPEG
Construir PostGIS con la construcción anterior de GDAL
Creado el archivo VRT con los archivos SENTINEL2 Driver / JP2.
gdal_translate SENTINEL2_L2A:S2A_USER_MTD_SAFL2A_PDMC_20160520T042556_R030_V20160520T000224_20160520T000224.xml:10m:EPSG_32756 10m.vrt -of vrt
raster2posgresql el VRT en PostGIS con la bandera -R (fuera de la db raster usando la ruta completa del archivo)
raster2pgsql -R /home/ben/S2A_USER_PRD_MSIL2A_PDMC_20160520T042556_R030_V20160520T000224_20160520T000224.SAFE/10m.vrt -b 2 -C -t 128x128 -P test.T56JKN_20160520_A_10m_b02 | psql -d giddb
Cuando hago la consulta:
select
ST_Value(rast, ST_Transform(ST_PointFromText('POINT(149.9878 -29.3507)', 4326),32756))
from
test.T56JKN_20160520_A_10m_b02
where
ST_Intersects(rast,ST_Transform(ST_PointFromText('POINT(149.9878 -29.3507)', 4326),32756))
Me da error:
ERROR: rt_raster_from_gdal_dataset: No se han podido obtener los datos de GDAL raster Estado SQL: XX000 Contexto: Función PL/pgSQL st_value(raster,integer,geometry,boolean) línea 18 en RETURN
Otras notas:
Out of db funciona perfectamente con un VRT que contenga un archivo tif y también con un archivo tif por sí solo.
Cualquier consejo o comentario es bienvenido. No estoy seguro de que esto sea posible.
Edición: ¿Ayudaría el uso del controlador Kakadu JPEG2000?
ACTUALIZACIÓN:
Bien, he vuelto a construir todo desde cero y puedo confirmarlo:
JP2OpenJPEG aparece en la consulta de PostGIS: "SELECT short_name FROM ST_GDALDrivers();"
JP2OpenJPEG está disponible en GDAL ejecutando "gdal_translate --formats"
Puedo gdal_translate un controlador SENTINEL2 creado VRT que contiene .jp2 a GTiff
Información sobre la versión de PostGIS: POSTGIS="2.2.2 r14797" GEOS="3.5.0-CAPI-1.9.0 r4084" PROJ="Rel. 4.8.0, 6 de marzo de 2012" GDAL="GDAL 2.1.0, publicado el 25/04/2016" LIBXML="2.9.1" LIBJSON="0.11.99" TOPOLOGÍA RASTER
Al intentar consultar el raster ahora me da error: ERROR: rt_raster_from_gdal_dataset: No se han podido obtener los datos de la trama GDAL CONTEXTO: Función PL/pgSQL st_value(raster,integer,geometry,boolean) línea 18 en RETURN
Otras notas: Cuando ejecuto raster2pgdsql con -s [dataset epsg] me da error: ERROR: rt_raster_from_gdal_dataset: No se han podido obtener los datos del raster GDAL CONTEXTO: Función SQL "st_transform" declaración 1
Cuando lo ejecuto sin la bandera -s se completa bien con y sin mosaico.