我有一个很大的shapefile(1 gb),需要对其进行栅格化。我已经尝试了以下方法。
1.)使用v.in.ogr
此失败将其导入GRASS,并显示以下错误消息:错误:G_realloc:无法在break_polygons.c:188上分配498240036字节
2.)我的第二个想法是使用PostGIS。导入shapefile,在网格的x,y位置对其重新采样,然后导出这些点并从xyz创建网格。我成功导入了shapefile(多边形和点),但是将300万个点与100万个多边形相交似乎很慢。我使用了以下PostGIS条件,也许还有改进的余地。
select polygons.land_id,grid.geom from grid,polygons where grid.geom && polygons.geom and within(grid.geom,polygons.geom)
3.)我也曾尝试simplify()
在PostGIS中使用。但是我迷失了许多小多边形(即某些仅由小多边形覆盖的区域变为空)。
任何想法将不胜感激。