geotif 添加坐标_利用Geotools来转换影像的坐标系[转]

本文介绍了如何使用Geotools库来转换GeoTIFF影像的坐标系,从EPSG:4326到EPSG:3857。同时展示了计算DEM数据坡度的方法,并给出了具体的测试用例。此外,还讨论了如何通过图像相减与二值化操作来提取变化部分,并使用geoTools进行矢量化处理,最后将结果转换为GeoJSON格式。
摘要由CSDN通过智能技术生成

使用Operations类下的resample方法(重采样)可以解决这个问题,它的方法定义如下:

Coverage org.geotools.coverage.processing.Operations.resample(Coverage source, CoordinateReferenceSystem crs) throws CoverageProcessingException

File file = new File("xxxx.tif");

if(file.exists()){

Reader br = new Reader();

GridCoverage2D old2D = br.getGridCoverage2D(file);

final CoordinateReferenceSystem WGS = CRS.decode("EPSG:3857");

final CoordinateReferenceSystem sourceCRS = old2D.getCoordinateReferenceSystem();

System.out.println(String.format("源坐标系为: %s", sourceCRS.getName()));

GridCoverage2D new2D = (GridCoverage2D) Operations.DEFAULT.resample(old2D, WGS);

System.err.println(String.format("目标坐标系为: %s", new2D.getCoordinateReferenceSystem().getName()));

}

---------------------

作者:WilsonOnIsland

来源:CSDN

原文:https://blog.csdn.net/u013323965/article/details/79453383

1.计算指定像素坐标点的坡度

public float calcSlope(int cellX, int cellY, PlanarImage image) throws IOException {

DecimalFormat df = new DecimalFormat("#.0000");

final int[] dest = null;

int e = image.getTile(image.XToTileX(cellX), image.YToTileY(cellY)).getPixel(cellX, cellY, dest)[0];

int e1 = image.getTile(image.XToTileX(cellX - 1), image.YToTileY(cellY)).getPixel(cellX - 1, cellY, dest)[0];

int e2 = image.getTile(image.XToTileX(cellX), image.YToTileY(cellY - 1)).getPixel(cellX, cellY - 1, dest)[0];

int e3 = image.getTile(image.XToTileX(cellX + 1), image.YToTileY(cellY)).getPixel(cellX + 1, cellY, dest)[0];

int e4 = image.getTile(image.XToTileX(cellX), image.YToTileY(cellY + 1)).getPixel(cellX, cellY + 1, dest)[0];

int e5 = image.getTile(image.XToTileX(cellX - 1), image.YToTileY(cellY - 1)).getPixel(cellX - 1, cellY - 1,

dest)[0];

int e6 = image.getTile(image.XToTileX(cellX + 1), image.YToTileY(cellY - 1)).getPixel(cellX + 1, cellY - 1,

dest)[0];

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值