【GIS操作】使用ArcGIS Pro进行海图的地理配准(附:墨卡托投影对比解析)
文章目录
- 一、应用场景
- 二、墨卡托投影
- 1、知识点
- 2、Arcgis中的坐标系选择
- 三、操作步骤
- 1、数据转换
- 2、数据加载
- 3、栅格投影
- 4、地理配准
一、应用场景
地理配准是数字化之前必须进行的一项工作。扫描得到的地图数据通常不包含空间参考信息,需要通过具有较高位置精度的控制点将这些数据匹配到用户指定的地理坐标系中,使其具有正确的空间位置信息。


二、墨卡托投影
海图的地理配准需要使用墨卡托投影,这里区分一下几大墨卡托类型。
1、知识点
正轴墨卡托投影
轴向:竖轴等角切圆柱投影,地球的旋转轴与圆柱体平行。
特点:经线和纬线都是平行直线,且相交成直角,经线间隔相等,纬线间隔从基准纬线向两极逐渐增大。
适用场景:常用于航海图和航空图,因为循着正轴墨卡托投影图上两点间的直线航行,方向不变可以一直到达目的地。
<>
横轴墨卡托投影
轴向:横轴等角切圆柱投影,地球的旋转轴与圆柱体垂直。
特点:中央经线为直线且为投影的对称轴,角度无变形,面积变形较小。
适用场景:广泛应用于地形测绘和近海测绘。
<>
通用横轴墨卡托投影(UTM)
轴向:横轴等角割圆柱投影,地球的旋转轴与圆柱体垂直。
特点:中央经线比例因子为0.9996,两条割线就是等高圈,在等高圈以内的长度形变为负值,在等高圈以外的长度形变为正值,等高圈上没有形变。
适用场景:广泛用于地形图、卫星影像和自然资源数据库。
<>
Web墨卡托投影
轴向:伪墨卡托投影
特点:Web墨卡托投影是墨卡托投影的特例,采用了球体进行投影,便于计算机计算,保证了其为正方形。
适用场景:广泛应用于网络地图服务,如谷歌地图、百度地图等。
2、Arcgis中的坐标系选择
(1)正轴墨卡托投影:选择【Mercator(world)】,范围为(-180,180)(-90,90)全球。

(2)横轴墨卡托投影 (TM) :国外通常将***高斯克吕格投影和横轴墨卡托投影等同***, esri文档中,认为二者一致。因此坐标选择【Gauss Kruger】系列即可。


但在定义上,二者略有差别: (知道就行,用的时候没差)
关于高斯克吕格投影与横轴墨卡托投影的区别:
1、球面投影下,虽然公式推导方法不同,但是公式一致,在计算结果层面,可以认为是同一个投影。
2、椭球面投影下,完全不一样,意义不一致,推导过程不一致,公式不一致,计算结果差距很小(几毫米差距1)。不能认为是同一种投影
参考链接:高斯克吕格投影与墨卡托投影(通用横轴墨卡托、web墨卡托等)
(3)通用横轴墨卡托投影(UTM):Arcgis坐标系中选择检索【UTM】,有单独的一个标签列,可以选择区域和带号.

(4)Web墨卡托投影: 很常见,不赘述,【WGS 1984 Web Mercator (auxiliary sphere)】

三、操作步骤
1、数据转换
我的地图的原始格式为 .pdf ,可以使用【格式工厂】or【Adobe Illustrator】将其转换为图片格式(因为Arcgis只能加载图片数据),转换完成后的到 .jpeg格式 的数据。

2、数据加载
新建工程,添加数据,选择需要配准的图片数据加载到地图。

新加载的数据没有空间信息,加载后选择【缩放至图层】,地图会自动定位到经纬度为(0,0)的坐标系原点。首先需要对其进行投影处理。

3、栅格投影
对于栅格数据而言,使用工具为【数据管理工具】-【投影和变换】-【栅格】-【投影栅格】。

输入栅格报错: 因为原图像无坐标系,会报错,这里随便定义一个坐标系就行,定义后报错就消失了,也不影响结果和原数据(不知道是不是个小bug)。

这里顺便修改一下图像格式为 .tif ,一个小细节为:生成tif文件需要储存到文件夹中,如果默认存在地理数据库中是不能保留扩展名的。

输出坐标系我们定义为【墨卡托投影】。由于海图为 竖轴投影 ,因此坐标系选择为【Mercator(world)】。

完成栅格投影后数据格式为tif,也有了对应了空间坐标系,但是此时其位置依然在坐标系原点。下一步进行地理配准。

4、地理配准
点击地理配准工具条,添加控制点,在地图上选择 格网交点 作为控制点的起点,缩放地图到对应的位置,以交点对应的 坐标 作为控制点的终点。


在缩放地图时候,若地图下方坐标系单位为m,则点击箭头,将其转换为度分秒即可。

选择终点时候,在地图上 右击鼠标 ,弹出目标坐标弹框,直接输入目标终点的经纬度,就不需要手动点选位置了!!
(这一点很方便之前我就傻乎乎的用手点QAQ)

重复以上选取控制点的步骤,我这里默认使用【一阶多项式(仿射)】三个控制点即可。不同变换方法要求的控制点数量不一致。
若当你打开【自动应用】按钮,完成一个控制点选择时候,图像就会跟着这个控制点移动。图形上经纬度准确,一般来说选择两个对角的控制点就可以基本配到正确的位置。

完成配准后一定要点击【保存】按钮,再点击【关闭地理配准】,这样才会将正确位置保留到新的图像中。(没保存成功就只能重复再来一遍了。。。)

保存后重新打开tif文件,即发现图像已经到了正确的位置上。就可以进行后续应用啦。

相关文章:
【GIS操作】使用ArcGIS Pro进行海图的地理配准(附:墨卡托投影对比解析)
文章目录 一、应用场景二、墨卡托投影1、知识点2、Arcgis中的坐标系选择 三、操作步骤1、数据转换2、数据加载3、栅格投影4、地理配准 一、应用场景 地理配准是数字化之前必须进行的一项工作。扫描得到的地图数据通常不包含空间参考信息,需要通过具有较高位置精度的…...
flutter在使用gradle时的加速
当我使用了一些过时的插件的时候,遇到了一些问题 比如什么namespace 问题等,因为有些插件库没有更新了,或者最新版本处于测试阶段 于是我就删除这些旧插件(不符合我要求的插件) 于是根据各论坛的解决方法去做了以下的工作 1:项目中删除了这…...
ABP - 缓存模块(1)
ABP - 缓存模块(1) 1. 与 .NET Core 缓存的关系和差异2. Abp 缓存的使用2.1 常规使用2.2 非字符串类型的 Key2.3 批量操作 3. 额外功能 1. 与 .NET Core 缓存的关系和差异 ABP 框架中的缓存系统核心包是 Volo.Abp.Caching ,而对于分布式缓存…...
二、点灯基础实验
嵌入式基础实验第一个就是点灯,地位相当于编程界的hello world。 如下为LED原理图,要让相应LED发光,需要给I/O口设置输出引脚,低电平,二极管才会导通 2.1 打开初始工程,编写代码 以下会实现BLINKY常亮&…...
双端队列实战 实现滑动窗口 用LinkedList的基类双端队列Deque实现 洛谷[P1886]
集合 关系 介绍 Deque 是一个接口 LinkedList 是这个接口的实现类 题目 输入输出 滑动窗口 基于双端队列实现 Deque<Integer> deque new LinkedList<>(); 滑动窗口代码 public static List<Integer> maxSlidingWindow(int[] nums, int k) {List<Int…...
HTML<img>标签
例子 如何插入图片: <img src"img_girl.jpg" alt"Girl in a jacket" width"500" height"600"> 下面有更多“自己尝试”的示例。 定义和用法 该<img>标签用于在 HTML 页面中嵌入图像。 从技术上讲&#x…...
【网络 MAC 学习专栏 -- 如何理解 PHY 的 Link Up】
请阅读【嵌入式开发学习必备专栏 Cache | MMU | AMBA BUS | CoreSight | Trace32 | CoreLink | ARM GCC | CSH】 文章目录 OverviewClause 22/Clause 45Clause 22Clause 45 PHY Link 状态的软件实现 转自: 开心果 Need Car 2022年10月20日 09:50 上海 Overview PHY…...
Linux虚拟机安装与FinalShell使用:探索Linux世界的便捷之旅
文章目录 软件准备安装 VMware 虚拟机下载CentOS 光盘镜像文件选择适合的 CentOS 版本选择合适的镜像文件 本教程工具版本 第一部分:安装 Linux 虚拟机1. 启动 VMware 并创建新虚拟机2. 默认硬件兼容性设置3. 安装操作系统的设置4. 选择操作系统类型与版本5. 为虚拟…...
Mixly米思齐1.0 2.0 3.0 软件windows版本MAC苹果电脑系统安装使用常见问题与解决
Mixly软件应用常见问题 Mixly米思齐编译或上传报错? 1、软件安装与驱动(Mixly1-2) 1-1 Windows版本 软件及驱动可以在Mixly群(QQ群号621937623)的群文件夹中找到,或到Mixly在线软件下载链接中重新下安装…...
vben5 admin ant design vue如何使用时间范围组件RangePicker
本文参考:https://pusdn-dev.feishu.cn/wiki/VF4hwBAUliTE6TkUPKrcBNcZn9f?fromfrom_copylink 由PUSDN整理发行,收录时请保留PUSDN。 前端组件专题 年月日时间范围表单回显RangePicker 推荐使用多个字段存储,不推荐用英文逗号拼接时间&am…...
Kafka 日志存储 — 文件目录及日志格式
日志存储机制是Kafka实现高吞吐量和持久化能力的关键。 1 文件目录布局 图 主题与日志文件的关系 Kafka中的消息持久化为日志文件。一个副本对应一个日志。日志文件在broker上是命名形式为<topic>-<partition>的文件夹。例如,主题par3第3分区在某个副…...
故障诊断 | BWO白鲸算法优化KELM故障诊断(Matlab)
目录 效果一览文章概述BWO白鲸算法优化KELM故障诊断一、引言1.1、研究背景及意义1.2、故障诊断技术的现状1.3、研究目的与内容二、KELM基本理论2.1、KELM模型简介2.2、核函数的选择2.3、KELM在故障诊断中的应用三、BWO白鲸优化算法3.1、BWO算法基本原理3.2、BWO算法的特点3.3、…...
一文读懂AI Agent 智能体
一、什么是智能体Agent? 在计算机科学和人工智能领域,智能体(Agent) 是一个抽象的概念,用于描述能够感知环境、执行行动并以此对环境产生影响的实体。智能体通常被设计成具有自主性和适应性,能够在不确定、…...
《 C++ 点滴漫谈: 二十二 》操作符炼金术:用C++ operator重塑代码美学
摘要 C 的 operator 关键字和操作符重载是语言的核心特性之一,使开发者能够扩展内置操作符以适应自定义类型,从而实现更高效、直观的代码表达。本文全面解析了 operator 关键字的基本概念、支持重载的操作符范围及其使用场景,详细介绍了操作…...
通信协议之多摩川编码器协议
前言 学习永无止境!本篇是通信协议之多摩川编码器协议,主要介绍RS485硬件层以及软件层帧格式。 注:本文章为学习笔记,部分图片与文字来源于网络/应用手册,如侵权请联系!谢谢! 一、多摩川协议概述…...
新星杯-ESP32智能硬件开发--ESP32的I/O组成-系统中断矩阵
本博文内容导读📕🎉🔥 ESP32开发板的中断矩阵、功能描述与实现、相关API和示例程序进行介绍 ESP32中断矩阵将任一外部中断源单独分配到每个CPU的任一外部中断上,提供了强大的灵活性,能适应不同的应用需求。 ESP32中断主…...
4329 树的连边II
通过链式前向星来求树的直径 主要包括:链式前向星的初始化,遍历,使用 #include<bits/stdc.h> using namespace std; using lllong long; const int N1e59; int n,head[N],to[N<<1],nx[N<<1],cnt0; int ans0; int dp[N][2…...
Spring的Bean详解=Bean别名+作用范围+使用场景
目录 Bean的别名:id和name的地位等同 Bean的作用范围:scope单例与非单例 Bean的使用场景:什么时候交给容器?什么时候不交? Bean的别名实践(含代码) 如果看不懂下面的,例如不知道i…...
聊一聊如何适应AI时代
我的工作行业就不提了,处于AI的前沿阵地之一,AI的进步非常惊艳,虽然我对AI持有开放态度,但也恐惧,因为我的进步跟不上它迭代的速度。 AI能涉及的行业:辅助驾驶、医疗诊断、数据分析、文稿生成、工业控制...…...
dl学习笔记:(4)简单神经网络
(1)单层正向回归网络 bx1x2z100-0.2110-0.05101-0.051110.1 接下来我们用代码实现这组线性回归数据 import torch x torch.tensor([[1,0,0],[1,1,0],[1,0,1],[1,1,1]], dtype torch.float32) z torch.tensor([-0.2, -0.05, -0.05, 0.1]) w torch.…...
SpringBoot-17-MyBatis动态SQL标签之常用标签
文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...
【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...
JavaSec-RCE
简介 RCE(Remote Code Execution),可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景:Groovy代码注入 Groovy是一种基于JVM的动态语言,语法简洁,支持闭包、动态类型和Java互操作性,…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...
微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】
微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...
智能在线客服平台:数字化时代企业连接用户的 AI 中枢
随着互联网技术的飞速发展,消费者期望能够随时随地与企业进行交流。在线客服平台作为连接企业与客户的重要桥梁,不仅优化了客户体验,还提升了企业的服务效率和市场竞争力。本文将探讨在线客服平台的重要性、技术进展、实际应用,并…...
MVC 数据库
MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...
使用Matplotlib创建炫酷的3D散点图:数据可视化的新维度
文章目录 基础实现代码代码解析进阶技巧1. 自定义点的大小和颜色2. 添加图例和样式美化3. 真实数据应用示例实用技巧与注意事项完整示例(带样式)应用场景在数据科学和可视化领域,三维图形能为我们提供更丰富的数据洞察。本文将手把手教你如何使用Python的Matplotlib库创建引…...
Java + Spring Boot + Mybatis 实现批量插入
在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法:使用 MyBatis 的 <foreach> 标签和批处理模式(ExecutorType.BATCH)。 方法一:使用 XML 的 <foreach> 标签ÿ…...
