如何将包含栅格的 RDD 重新投影到不同的 crs (WGS84)?
How to reproject an RDD containing raster to different crs (WGS84)?
我创建了一个 RDD,其中包含特定区域的 DGM 栅格并具有 crs : EPSG 32632
。我想将此数据覆盖在图像上以进行进一步分析,该图像具有 crs:EPSG 4326
这也是一个 RDD。
虽然两个图像在 QGIS 中彼此重叠,但投影系统和范围不同,这就是为什么后来当我尝试将两个 RDD 重新投影到 webmercator
时,它给了我一个黑色图像。
val (_,inputrdd) : (Int, MultibandTileLayerRDD[SpatialKey]) = biggis.landuse.spark.s3.layerFromS3(bucket, name, Some(tileSize))
val store = new S3AttributeStore(bucket,name){
override def s3Client = s3ClientURL()
}
val writer = S3COGLayerWriter(store)
val (_,rasterrdd) : (Int, MultibandTileLayerRDD[SpatialKey]) = biggis.landuse.spark.s3.layerFromS3(bucket1, name1, Some(tileSize))
val raster_store = new S3AttributeStore(bucket1,name1){
override def s3Client = s3ClientURL()
}
val raster_writer = S3COGLayerWriter(raster_store)
inputrdd
与 4326
.
如何将 rasterrdd 重新投影到 inputrdd 投影系统?
由于 rasterrdd
属于 MultibandTileLayerRDD[K]
类型,您可以使用所有 geotrellis 函数来执行重投影;它会像这样:
rasterrdd.reproject(LatLng, ZoomedLayoutScheme)
欢迎您在 docs and to join our gitter channel 中查找更详细的信息,以进行任何进一步的问题和讨论。
我创建了一个 RDD,其中包含特定区域的 DGM 栅格并具有 crs : EPSG 32632
。我想将此数据覆盖在图像上以进行进一步分析,该图像具有 crs:EPSG 4326
这也是一个 RDD。
虽然两个图像在 QGIS 中彼此重叠,但投影系统和范围不同,这就是为什么后来当我尝试将两个 RDD 重新投影到 webmercator
时,它给了我一个黑色图像。
val (_,inputrdd) : (Int, MultibandTileLayerRDD[SpatialKey]) = biggis.landuse.spark.s3.layerFromS3(bucket, name, Some(tileSize))
val store = new S3AttributeStore(bucket,name){
override def s3Client = s3ClientURL()
}
val writer = S3COGLayerWriter(store)
val (_,rasterrdd) : (Int, MultibandTileLayerRDD[SpatialKey]) = biggis.landuse.spark.s3.layerFromS3(bucket1, name1, Some(tileSize))
val raster_store = new S3AttributeStore(bucket1,name1){
override def s3Client = s3ClientURL()
}
val raster_writer = S3COGLayerWriter(raster_store)
inputrdd
与 4326
.
如何将 rasterrdd 重新投影到 inputrdd 投影系统?
由于 rasterrdd
属于 MultibandTileLayerRDD[K]
类型,您可以使用所有 geotrellis 函数来执行重投影;它会像这样:
rasterrdd.reproject(LatLng, ZoomedLayoutScheme)
欢迎您在 docs and to join our gitter channel 中查找更详细的信息,以进行任何进一步的问题和讨论。