2012-05-17 15 views
2

我有一个应用程序,我需要导入美国国家气象局表面分析,这是分发为grib2文件。我想将这些引入到PostGIS 2.0栅格中,进行一些计算和建模,并在GeoServer中显示数据和模型结果。Grib2到PostGIS栅格 - 任何人得到这个工作?

由于grib2是GDAL支持的格式,因此提供的raster2pgsql实用程序应该能够将grib2直接转换为PostGIS兼容的SQL,一旦它位于那里,GeoServer应该能够处理它。但是,我遇到的问题没有明显的解决方案 - 无论如何,这对我来说并不明显! Raster2pgsql运行,显然没有错误,生成SQL,并运行SQL创建看起来非常像栅格。但GeoServer无法显示它 - 特别是界限看起来很奇怪(0,0 -1,-1),“预览层”只是抛出一个NullPointerException。

有没有人在这条路上呢?我不知道SRID应该是什么数据(4326,也许?)。我不希望任何人为我调试我的问题,但如果有人已经有了这个工具链或者其中的一部分,我可以插入已知好的东西,看看我能发现什么。

TIA,

RW

更新时间:每迈克,这里是从文件中的一个坐标系统的东西;我从“gdalinfo”输出中删除了其他749个乐队。请注意,文件名是不同的 - 我通过在我的原始文件上运行“gdalinfo”发现它出了什么问题,gdalinfo无法读取它。新(35MB!)文件here

Gdalinfo输出:

Driver: GRIB/GRIdded Binary (.grb) 
Files: ruc2.t00z.bgrb13anl.grib2 
Size is 451, 337 
Coordinate System is: 
PROJCS["unnamed", 
    GEOGCS["Coordinate System imported from GRIB file", 
     DATUM["unknown", 
      SPHEROID["Sphere",6371229,0]], 
     PRIMEM["Greenwich",0], 
     UNIT["degree",0.0174532925199433]], 
    PROJECTION["Lambert_Conformal_Conic_2SP"], 
    PARAMETER["standard_parallel_1",25], 
    PARAMETER["standard_parallel_2",25], 
    PARAMETER["latitude_of_origin",0], 
    PARAMETER["central_meridian",265], 
    PARAMETER["false_easting",0], 
    PARAMETER["false_northing",0]] 
Origin = (-3332155.288903323933482,6830293.833488883450627) 
Pixel Size = (13545.000000000000000,-13545.000000000000000) 
Corner Coordinates: 
Upper Left (-3332155.289, 6830293.833) (139d51'22.04"W, 54d10'20.71"N) 
Lower Left (-3332155.289, 2265628.833) (126d 6'34.06"W, 16d 9'49.48"N) 
Upper Right (2776639.711, 6830293.833) (57d12'21.76"W, 55d27'10.73"N) 
Lower Right (2776639.711, 2265628.833) (68d56'16.73"W, 17d11'55.33"N) 
Center  (-277757.789, 4547961.333) (98d 8'30.73"W, 39d54'5.40"N) 
Band 1 Block=451x1 Type=Float64, ColorInterp=Undefined 
    Description = 1[-] HYBL="Hybrid level" 
    Metadata: 
    GRIB_UNIT=[Pa] 
    GRIB_COMMENT=Pressure [Pa] 
    GRIB_ELEMENT=PRES 
[Etc., Etc., for all 750 bands] 
+0

你可以在栅格上运行'gdalinfo your.grb'并更新你的问题吗?您可能希望将此迁移到gis.SE –

+0

迈克,感谢您的回应!我确实也把它放在gis.se上,我脸红地说。但是,我在此宣誓,我将为这两个主题铺平道路,以便没有人回答已经回答的问题! 那么,我的下一步是通过寻找匹配的EPSG列表,以便我可以输入raster2pgsql的SRID?不知道如何“reproject”一个GRIB2文件! TIA^2! –

回答

0

得到了一个很好的回答了我的问题here。把它作为一个单独的答案。

他使用gdalwarp到GRIB2文件拉入一个已知的SRID,从而推荐:

gdalwarp -t_srs EPSG:4326 original_file.grib2 4326_file.grib2 

然后,raster2pgsql工作得很好,例如

raster2pgsql -M -a 4326_file.grib2 some_sql.sql 
1

我希望这可以帮助,至少那些正在添加此主题。请注意,GeoServer虽然能够从PostGIS加载栅格数据,但默认的PostGIS“导入”模块仅适用于矢量数据,这就是为什么您会得到这些奇数边界(-1 -1 0 0)的原因。

您必须将ImageMosaicJDBC插件添加到您的地理服务器安装中,请按照此处的步骤操作!

http://docs.geoserver.org/latest/en/user/tutorials/imagemosaic-jdbc/imagemosaic-jdbc_tutorial.html

相关问题