gdal获取像元的灰度值java_GDAL利用地理坐标读取图像像元值

最近的一个项目需要在电子海图中下载已知水深点,导出点的地理坐标(经纬度)。然后在arcgis中打开这些地理坐标输出为shp,利用GDAL读取不同波段的点对应的像元值,从而构建水深和像元值的对应关系。

其实想要根据经纬度得到像元值有两种方法。

1.通过arcpy选择点输出像元值,这个方法简单快捷,依赖于arcgis。

2.通过GDAL读取经纬度(度分秒),转换成小数形式。使用GDAL的CoordinateTransformation方法将经纬度转换成投影坐标,再转换成行列坐标,最后读取像元值。这里给出官方文档里面的代码以供参考。

补充一点:这里之所以把经纬度先转成投影坐标是因为遥感影像的坐标系是投影坐标系,而仿射六参的转换方法要求待转换点坐标和影像的投影坐标系一致,所以需要先转换成投影坐标。

如果遥感影像的坐标系是地理坐标系(即没有投影坐标系),那么这里直接对经纬度坐标进行仿射六参转换即可得到行列号。

而按下面的代码此时srs为none,srs与geocs的转换器仍然是对应的,那么经纬度转换后仍然是对应的格式,经过仿射变换最终得到行列号,也同样成立(该步骤可省略)。

a4a18a880c77c5f26bd2bc21424c6ea7.png

其中GetGeoTransform获取获取图像的地理空间范围、分辨率信息。第1、4个值是左上角第一个像元中心的坐标。2、6是xy方向的空间分辨率。3、5是旋转系数和平移系数。

SpatialReference()建立空间参考,GetProjection返回投影信息,以wkt格式输出,最后用ImportFromWkt方法读取字符串并创建地理坐标系、基准面、投影方法、分辨率等。

CloneGeoCS方法创建地理坐标(经纬度),CoordinateTransformation方法建立投影坐标系和地理坐标系的转换关系,TranformPoint方法将地理坐标带入转换关系式,得到投影坐标,最后再计算得到行列数。

Tips

1.list out of range 应该是输入的列表格式有问题。

2.此外注意经度和纬度的输入位置。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/560093.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

kibana java script_Elasticsearch:创建 Runtime field 并在 Kibana 中使用它 - 7.11 发布 - TGCode...

在之前的文章 “Elasticsearch:使用 Runtime fields 对索引字段进行阴影处理以修复错误 – 7.11 发布”,我展示了如何使用 runtime field 来 shadow 一个已有的在 mapping 中的字段,比如 duration。在今天的练习中,我将展示如何创…

java根据uml图写出实现代码,根据java代码生成UML图

根据java代码生成UML图根据java代码生成UML图这里介绍一个简单易用的eclipse插件ModelGoon,用来对已有代码生成UML图,下面以之前文章中的spring mvc工程为例如何安装和使用这个插件;这个spring mvc工程的代码在githbu上,地址是&am…

highcharts php 动态数据,php动态传数据到highcharts的方法

本文主要介绍了通过php动态传数据到highcharts的相关知识。具有很好的参考价值。1:在平时工作中,在对数据进行展示的时候,是直接通过后台提供的接口来获取json串,用来展示。今天别人问怎么在本地演示一下请求的动态数据。2&#x…

php tar.gz文件,PHP解压tar.gz格式文件的方法,_PHP教程

PHP解压tar.gz格式文件的方法,本文实例讲述了PHP解压tar.gz格式文件的方法。分享给大家供大家参考,具体如下:1、运用php自带压缩与归档扩展(phar)$phar new PharData(song.tar.gz);//路径 要解压的文件 是否覆盖$phar->extractTo(c:/tmp,…

创建数组表格PHP苹果价格,如何从PHP数组创建HTML表?

Cats萌萌这是我的&#xff1a;<?php function build_table($array){ // start table $html . htmlspecialchars($key) . . htmlspecialchars($value2) .

python打包exe报错编码问题,使用Python打包含有pymssql成exe所躺的坑

一、如何打包Python打包exe文件简单运用pyinstaller库就行了1)安装pyinstaller库(自行安装)2)winR打开运行窗口输入“powershell”3)输入pyinstaller -F 路径\文件名.py(打包py文件的路径&#xff0c;py不能省略)看到successfully即为打包成功&#xff0c;但不一定能运用的&…

php超大树形分页,PHP+MySql千万级数据limit分页优化方案

PHPMySql千万级数据limit分页优化方案1年前阅读 2750评论 0喜欢 0### 原因徒弟突然有个需求&#xff0c;就是他发现limit分页&#xff0c;页数越大之后&#xff0c;mysql的消耗越大&#xff0c;查询时间越长&#xff0c;当突破百万级数据之后&#xff0c;一个简单的翻页都需要5…

linux自启动配置文件,Linux中如何设置服务自启动?

有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统服务&#xff0c;主要用三种方式进行这一操作&#xff1a;ln -s 在/etc/rc.d/rc*.d目录中建立/etc/init.d/服务的软链接(*代表0&#xff5e;6七个运行级别之一)chkonfig 命令行运行级别设置nts…

linux系统下升级node,linux下安装指定版本的nodejs(升级到指定版本)

原因最近需要全栈开发但是服务器是linux系统&#xff0c;服务本身通过yum安装软件包&#xff0c;不过yum安装的nodejs版本太低。所以需要自己安装。方案下载编译好的文件解压后直接运行即可&#xff0c;不过我们需要全局运行node命令。只需要把目录设置为全局即可(建立软链接 l…

Linux bash卸载软件,Ubuntu卸载软件的4种方法

前言本文重点介绍Ubuntu卸载软件的4种方法。他们分别是图形化界面的synaptic、自动解决依赖关系的apt-get&#xff0c;处理依赖关系更强大的aptitude&#xff0c;还有安装本地deb包的dpkg。方法一: Ubuntu使用synaptic图形化界面管理软件oucanrongzcwyou:~$ sudo apt-get insta…

linux系统atom安装教程,Ubuntu/Linux Mint上安装Atom文本编辑器

Atom是一款由Github开发的开源文本编辑器&#xff0c;虽然目前该软件依然在Beta阶段&#xff0c;但我们依然可以在你的Ubuntu/Linux Mint上使用它。据Atom官方博客介绍&#xff0c;与Atom类似的编辑器Sublime和TextMate都深受开发者欢迎&#xff0c;但在扩展性上都有所限制&…

labview 远程连接linux,SSH交互式通信总结:expect、plink、putty、sshpass、ALAB SSH

关于在linux脚本中远程执行命令的问题&#xff0c;笔者在以前文章中可以使用expect工具来完成交互式通信。在windows平台下可以使用plink或者putty工具。免密也可以设置SSH秘钥&#xff0c;参考文章-Linux怎么远程执行指令呢-SSH秘钥。但是在linux下需要一一对应设置&#xff0…

tcping在linux用法,tcping的安装和使用

Tcping 网上比较少资料是关于linux对tcp端口ping测试的方法&#xff0c;我这里简单介绍2种方法&#xff1a; 1.yum安装&#xff0c;编译安装方法 1-1.wget http://linuxco.de/tcping/tcping-1.3.5.tar.gz ###下载tcping1-2 tar zxvf tcping-1.3.5.tar.gz ####解压缩tcping-1.3.…

linux子系统安装gromacs,科学网—Windows下GROMACS程序的编译 - 李继存的博文

2015-12-07 22:12:05总的来说, Windows下的GROMACS程序用于模拟意义不大, 对于长时间的模拟, 我都是放在Linux服务器上进行的. 但将Windows下的GROMACS程序作为一个辅助工具来使用还是有意义的. 因为大多数时候, 我都是在Windows下准备输入文件的, 然后测试一下准备好的输入文件…

林锐 高质量c语言编程下载,新年献礼:Go语言深度入门手册

(文末的阅读原文&#xff0c;效果最佳&#xff01;)作者&#xff1a;李佶澳 微信&#xff1a;lijiaocnGo 语言深度入门手册&#xff0c;帮你更好的理解 Go 语言&#xff0c;写出更高效、更规范、更不易出错的代码。Go 在 2012 年发布 1.0 版本&#xff0c;距今已经 8 年了。和历…

永洪报表工具_2020年最值得推荐的五大BI工具

现在很多公司和业务部门都十分注重数据分析&#xff0c;并为企业信息化建设做准备。以前收集、处理、分析数据可能是IT部门和数据库员的专属&#xff0c;现在很多业务部门都急切的开始用数据分析的思维分析业务问题。在过去&#xff0c;大多数数据人员的工作模式都是自己使用ex…

容量耦合系数模型_期刊在线 | 基于ALE流固耦合方法的刷式密封泄漏特性理论与实验研究...

01引言刷式密封是一种广泛应用于航空发动机等透平机械的优良接触式动密封[]。近年来&#xff0c;随着透平机械逐渐向高参数方向发展&#xff0c;由刷式密封引起的泄漏损失越来越大&#xff0c;直接影响透平机械的工作效率。因此开展刷式密封的泄漏流动特性研究具有重要理论和实…

设备管理器android感叹号,设备管理器其他设备感叹号

设备管理器其他设备感叹号客观地讲&#xff0c;常规的设备管理器问题与设备管理器在哪&#xff0c;设备管理其怎么打开以及设备管理其其他设备感叹号是什么问题等。本文重点介绍设备设备管理器其他设备感叹号相关问题&#xff0c;希望能够为对此有需求的朋友提供参考或帮助。设…

android studio 集成 第三方sdk,Android FrameWork集成第三方SDK的jar包和so庫

本文講解的如何在Android FrameWork如何集成XXXsdk的jar包和so庫首先在framework/opt/建立XXSDK的文件夾講jar包和so庫拷貝進去1:framework/opt/xxsdk/然后直接看Android.mk就行# Copyright (C) 2009 The Android Open Source Project## Licensed under the Apache License, Ve…

unity要学ecs吗_ECS的泛泛之谈

这篇文章将带着你从设计出发重新发现ECS。注意:此篇为泛泛之谈&#xff0c;不涉及具体实现。从Abstract说起从”是”到”能”再到”有”对对象的抽象是整理代码的要点&#xff0c;继承是一种比较古老并常见的抽象&#xff0c;其描述了一个对象"是"什么&#xff0c;其…