图像几何校正

2023-05-16

在这里插入图片描述

几何校正中混淆的概念

名词描述
几何校正几何畸变会给基于遥感图像的定量分析、变化检测、图像融合 、地图测量或更新等处理带来误差(主要指二维平面坐标),所以需要针对图像的几何畸变进行校正,也就是几何校正。
图像配准图像配准与几何校正的原理是完全相同的,即都涉及到空间位置(像元坐标)变换和像元灰度值重采样处理两个过程。图像配准注重的是图和图(数据)之间的一种几何关系 ,其目的是为了和参考数据达成一致,而不考虑参考数据的坐标是否标准、是否正确。
正射校正正射校正不仅能够实现常规的几何校正功能,还能通过测量高程点和DEM来消除地形起伏引起的图像几何畸变,提高图像的几何精度。(个人理解,正射校正是几何校正中精度最高的,需要使用参数PRC(rational polynomial coefficients)或RMS(replacement sensor model)、高程信息,主要指有理函数模型来校正。)
图像校正主要包括辐射校正和几何校正等。
坐标变换几何校正的空间位置变换关系未知,需要利用控制点的坐标来建立空间位置变换关系。
投影转换可以根据两种投影类型及其参数推导出明确的空间位置变换关系,因此投影转换时只需设置输出图像的投影类型及其参数、以及灰度重采样方法。
添加投影指输入图像本身具有某种投影类型,只是投影信息因某种原因暂时丢失了,所以需要重新给图像添加投影信息,它不会引起图像内容的任何变化。

在遥感成像过程中,传感器生成的图像像元相对于地面目标物的实际位置发生了挤压、拉伸、扭曲和偏移等问题,这一现象我们称之为几何畸变。

几何畸变会给基于遥感图像的定量分析、变化检测、图像融合 、地图测量或更新等处理带来误差,所以需要针对图像的几何畸变进行校正,也就是几何校正。

几何畸变原因

  • 传感器内部因素:包括透镜、 探测元件、采样速率、扫描镜等引起的畸变。
  • 遥感平台因素:包括由于平台 的高度、速度、轨道偏移及姿 态变化引起的图像畸变。
  • 地球因素:地球自转、地形起 伏、地球曲率等。
  • 此外,大气折射和投影方式的 选择也会造成图像畸变。

几何畸变类型

按照畸变的性质,可以将几何畸变分为系统性畸变(内部 )和随机性畸变(外部)。

  • 系统性畸变是指遥感系统造成的畸变,这种畸变一般有一 定的规律性,并且其畸变程度事先能够预测,例如扫描镜的结构方式和扫描速度等造成的畸变。
  • 随机性畸变是指大小不能预测,其出现带有随机性质的畸 变,例如地形起伏造成的随地而异的几何偏差。

几何校正类型

遥感图像的几何校正分为两种:几何粗校正和几何精校正。

  • 几何粗校正是根据产生畸变的原因,利用空间位置变化关系 ,采用计算公式和取得的辅助参数进行的校正,又称为系统几何校正。
  • 几何精校正是指利用地面控制点做的精密校正。几何精校正不考虑引起畸变的原因,直接利用地面控制点建立起像元坐标与目标物地理坐标之间的数学模型,实现不同坐标系统中像元位置的变换。

几何校正过程

几何校正涉及两个过程:

  • 一是空间位置(像元坐标)的变换
  • 二是像元灰度值的重新计算(重采样)

像素坐标变换方法

  • 直接法:从原始图像阵列出发,依次计算每个像元在输出图像 (校正后图像)中的坐标。直接法输出的像元值大小不会发生变化,但输出图像中的像元分布不均匀。

  • 间接法:从输出图像(空白图像)阵列出发,依次计算每个像元在原始图像中的位置,然后计算原始图像该位置的像元值, 再将计算的像元值赋予输出图像像元。此方法能保证校正后图像的像元在空间上均匀分布,但需要进行灰度的重采样,是最常用的几何校正方法。

    • 线性变换:通过平移和各向异性尺度参数化的简单变换。

    • 赫尔默特(仿射变换):二维 helmert 变换,由各向同性比例、旋转角度和平移参数化。

    • 多项式模型:

      这个模型比较简单,回避了遥感影像的成像过程,适用于覆盖面积不大和地形比较平坦的区域。

    • 薄板样条模型

    • 投影变换(单应性变换、透视变换):平面投影变换,由单应性表示。

    • 共线方程模型(卫星传感器模型):

      依据卫星遥感成像的几何关系,利用摄影测量学中成像瞬间的地面点、透视中心以及相应的像素点三点共线建立起来的一种模型,但是此模型需要DEM数据,优点是精度比较高。

    • 有理函数模型(RPM):

      建立像素和地面位置对应关系的简单数学模型。理论上可以达到跟严格卫星传感器模型相当的定位精度。其优点在于多项式包含高程信息,可以提高校正精度。这个模型自带了高程信息,一般需要影像提供RPC文件,或者用户自己选择地面控制点。

    • 局部区域校正模型(局部三角网):

      这个模型的基本思想是利用控制点建立不规则三角网,然后分区域利用几何多项式校正,但是这种模型需要很多的控制点,对于地形起伏很大的区域需要的控制点更多,往往实施难度比较大

    • RBF神经网络校正

    • BP神经网络

    前5种坐标变换方法,参考自QGIS种配准工具的坐标变换方法。卫星传感器模型应该是卫星中心常用的模型;仿射变换、有理函数模型与局部三角网是ENVI中的实现的几何校正方法;后2种神经网络方法,来源于参考文献。

    补充知识:

    线性变换:缩放、旋转
    仿射变换:线性变换 + 平移
    相似变换:是仿射变换的一种特殊(简单)的情况。
    透视变换:仿射变换后平行四边形的各边仍操持平行,透视变换结果允许是梯形等四边形,所以仿射变换是透视变换的子集
    

    个人理解,二维 helmert 变换应该是仿射变换,如有理解错误欢迎指正。

坐标变换:地面控制点的选择

  • 地面控制点需在图像上有明显的、清晰的识别标志,如道路交叉点、建筑边界、农田界线、飞机场、城廓线等。
  • 地面控制点上的地物不随时间而变化,以保证当两幅不同时间的图像或地图几何校正时,可以同时识别出来。
  • 在没有做过地形校正的图像上选择控制点时,应在同一地 形高度上进行。
  • 地面控制点应当均匀地分布在整幅图像内,且要有一定的数量保证(大于多项式校正模型的未知参数个数,n次多项式控制点的最少数目为(n+1)(n+2)/2)。

坐标变换:几何校正精度评估

几何校正一般通过均方根误差RMS来观察控制点的几何校正精度,单位为像元
R M S = ( x r − x i ) 2 + ( y r − y i ) 2 R M S=\sqrt{\left(x_{r}-x_{i}\right)^{2}+\left(y_{r}-y_{i}\right)^{2}} RMS=(xrxi)2+(yryi)2
其中, x r x_r xr y r y_r yr是输入的参考坐标系中的原始坐标, x i x_{i} xi y i {y_i} yi 是变 换后的坐标。

已知几何信息的几何校正

通过输入几何文件(Input Geometry,IGM)和地理位 置查找表文件(Geographic Lookup Table,GLT)来实现。

重采样

图像数据经过坐标变换之后,像元中心位置通常会发生变 化,其在原始图像中的位置不一定是整数的行列号,因此需要根据输出图像每个像元在原始图像中的位置,对原始 图像按一定规则进行重采样,通过对栅格值进行重新计算 ,建立新的栅格矩阵。

重采样就是根据原始图像的像元信息内插为新的像元值。

数字图像灰度值最常用的重采样方法有最近邻法、双线性内插法和三次卷积法。

几何校正步骤

几何精校正不需要空间位置变化数据,回避了成像的空间几何过程,主要借助地面控制点实现校正。其主要校正步骤为:

  1. 对畸变图像和基准图像建立统一的坐标系和地图投影。
  2. 选择地面控制点(GCP),按照GCP选择原则,在畸变图像和基准图像上寻找相同位置的地面控制点对。
  3. 选择校正模型,利用选择的GCP数据求取校正模型的参数 ,然后利用校正模型实现畸变图像和基准图像之间的像元坐标变换。
  4. 选择合适的重采样方法对畸变图像的输出图像像元进行灰度赋值。
  5. 几何校正的精度分析。

正射校正

正射校正不仅能够实现常规的几何校正功能,还能通过测量高程点和DEM来消除地形起伏引起的图像几何畸变,提高图像的几何精度。正射校正的图像具有精确的空间位置,全幅图像具有统一的比例尺,称为数字正射影像。

正射校正方法

常用的正射校正方法很多,主要包括严格物理模型和通用经验模型两种。

  • 严格物理模型是通过利用图像与地面之间的严格几何成像关系而建立的,其参数具有明确的物理意义,如传感器的轨道参数和姿态参数。
  • 用经验模型不考虑图像成像的物理过程,不需要传感器的内外方位元素数据,直接采用数学函数建立地面控制点和对应像元之间的几何关系。

参考文献:

[1] 杨高攀. 遥感影像几何校正方法研究与应用[D].西安建筑科技大学,2010.

[2] 栾庆祖,刘慧平,肖志强.遥感影像的正射校正方法比较[J].遥感技术与应用,2007(06):743-747+674.

[3] Bannari A, Morin D, Bénié G B, et al. A theoretical review of different mathematical models of geometric corrections applied to remote sensing images[J]. Remote sensing reviews, 1995, 13(1-2): 27-47.

GDAL 几何矫正-爱代码爱编程 (icode.best)

遥感数字图像处理_中国大学MOOC(慕课) (icourse163.org)

OpenCV仿射变换+投射变换+单应性矩阵 - CodeAntenna

(119条消息) halcon中相似变换、仿射变换、投影变换的区别以及应用方式和例程_zsffuture的博客-CSDN博客_halcon投影变换

理解单应性(又名透视变换)| 通过 Socret 李 | 迈向数据科学 (towardsdatascience.com)

赫尔默特变换 (bahasa.wiki)

【ENVI入门系列】04.图像几何校正 - GIS知乎-新一代GIS问答社区 (geoscene.cn)

几何校正、正射校正以及几何配准之间的区别和联系???_百度知道 (baidu.com)

https://blog.csdn.net/webor2006/article/details/120160023

QGIS/qgsgcptransformer.cpp at 32c2cea54cb92bbb2243b222816c8154c2b9adf9 · qgis/QGIS (github.com)

来自输入几何的地理参考 (l3harrisgeospatial.com)

GLT and Bowtie Correction Background (l3harrisgeospatial.com)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

图像几何校正 的相关文章

随机推荐

  • ProxmoxVE折腾记录(二)--版本升级

    PVE6 0升级 官方F amp Q https pve proxmox com wiki FAQ faq support table 升级说明 F amp Q10条 11条系统版本说明及升级参考 xff0c 这次准备升级到6 0 5 4的
  • casbin学习笔记

    安装 go get github com casbin casbin v2 span class token keyword import span span class token string 34 github com casbin
  • Linux用户和组管理

    Linux用户和组管理 一 实验目的 1 掌握添加用户 修改用户和删除用户信息的方法 2 掌握添加组 修改组户和删除组的方法 3 掌握修改用户权限的方法 二 实验内容 在字符界面下 xff0c 使用常用的Linux操作命令 xff0c 完成
  • 【Docker环境部署】kong网关搭建,konga安装(参考官网)

    一 下载镜像 docker pull postgres 9 6 docker pull kong docker pull pantsel konga 二 docker安装kong 1 创建网桥 docker network create k
  • 【VBA编程】VBA基础语法(二)

    一 VBA中的内置函数 合理使用函数不但可以节省处理数据的时间 xff0c 提高工作效率还可以降低编程的难度 xff0c 减少编写代码的工作量 例如想知道当前系统时间 xff1a Sub NowTime MsgBox 34 现在的时间是 x
  • 【VBA编程】Sub过程

    过程就是做一件事的经过 xff0c 由不同的操作按先后顺序排列 组合起来 VBA的基本过程有Function过程和Sub过程 过程保存在模块里 Excel对象 xff08 或窗体对象 xff09 也能保存过程 为了避免发生错误 xff0c
  • 【VBA编程】自定义函数,Function过程

    Function过程也称为函数过程 编写一个Function过程 xff0c 就是编写了一个函数 函数可以完成很多复杂的计算 xff0c 如想求A列的和 xff0c 可以使用SUM函数 xff1b Function过程同Sub过程一样 xf
  • 查看网站的技术架构

    想要快速查看网站使用的架构 xff0c 可以在浏览器中添加Wappalyzer插件 以火狐浏览器为例 火狐浏览器 更多工具 61 gt 面向开发者扩展 61 gt 查找Wappalyzer 61 添加 xff0c 即可 红框中即 Wappa
  • Linux服务器查看日志的几种方法

    1 进入日志文件所在的文件目录 xff0c 比如 xff1a cd opt tomcat7 logs 2 通过命令打开日志 xff0c 分析需求场景打开需要的日志 比如 xff1a tail f catalina out 3 常用命令一 x
  • Postman设置网络代理

    1 什么是网络代理 xff1f 在一个基本的网络会话中 xff0c 一个客户端发送一个请求到服务器 xff0c 服务器返回一个响应 xff1b 一个代理服务是一个应用程序或者系统 作为一个中介在你的电脑和互联网之间 客户端和服务器 xff0
  • Postman中的authorization

    1 概述 Authorization是验证是否拥有从服务器访问所需数据的权限 当发送请求时 xff0c 通常必须包含参数 xff0c 以确保请求具有访问和返回所需数据的权限 Postman提供了授权类型 xff0c 可以轻松地在Postma
  • 无法将非静态数据成员声明为 inline

    示例代码 xff1a span class token macro property span class token directive hash span span class token directive keyword inclu
  • C++中类的成员函数(方法)

    文章目录 成员函数 xff08 方法 xff09 示例1 xff1a 在结构体中引入成员函数示例2 xff1a 类示例3 xff1a 类内定义成员函数示例4 xff1a 类内声明 43 类外定义显示内敛的成员函数示例5 xff1a 类内声明
  • visual studio 2019 安装卸载问题

    1 visual studio 2019 安装 问题1 xff1a 如何安装visual studio 2019 企业版 可参考 xff1a http www winwin7 com soft 9019 html xiazai 问题2 xf
  • GDAL图像重采样

    span class token macro property span class token directive hash span span class token directive keyword include span spa
  • C#入门基础教程

    文章目录 C 基础入门基本用法 xff08 理解面向对象编程 xff09 示例1 xff1a 创建线类 关键字数据类型数值类型布尔与文本类型引用类型指针类型示例2 xff1a 数值类型示例3 xff1a 文本类型示例4 xff1a Obje
  • 1. 在VS2019上配置PIE.NET-SDK插件式环境(c#)

    1 开发环境部署 确保Win10系统安装Visual Studio2019安装PIESDK Net V6 3 Windows X64 exe 2 创建工程 1 选Windows窗口应用 xff0c 不然后面找不到 Net framwork
  • std::string、const char*、QString之间相互转换

    字符串转换 std string 转 const char std string str 61 34 string 34 const char cstr 61 str c str const char 转 std string span c
  • Cannot convert a symbolic Tensor (simple_rnn/strided_slice:0) to a numpy array. 报错 (解决方法)

    1 报错 问题 xff1a xff08 来自 Python深度学习 P164 165 xff09 在运行以下代码的时候 xff0c 报错 xff1a Cannot convert a symbolic Tensor simple rnn s
  • 图像几何校正

    几何校正中混淆的概念 名词描述几何校正几何畸变会给基于遥感图像的定量分析 变化检测 图像融合 地图测量或更新等处理带来误差 xff08 主要指二维平面坐标 xff09 xff0c 所以需要针对图像的几何畸变进行校正 xff0c 也就是几何校