【ENVI入门系列】06.自定义RPC文件图像正射校正
版权声明:本教程涉及到的数据仅练习使用,禁止用于商业用途。
目录
1.
2.
2.4
1. 概述
航空影像(框幅式和数码)和丢失RPC参数的卫星影像数据可以根据相机参数、传感器参数、外方位元素和地面控制点进行RPC文件的构建,从而实现RPC正射校正。ENVI的自定义RPC工具支持的数据包括扫描的框幅式航空相片、框幅中心投影的航空数码相片(如Vexcel UltraCamD)、线中心投影的航空数码相片(如ADS40)以及推扫式卫星(如ALOS PRISM/AVINIR, ASTER, CARTOSAT-1, FORMOSAT-2, GeoEye-1, IKONOS, IRS-C, KOMPSAT-2, MOMS, QuickBird, WorldView-1, SPOT)。自定义RPC文件正射校正一般步骤为:
(1) 内定向(Interior Orientation,只针对航空相片而言)——内定向将建立相机参数和航空像片之间的关系。它将使用航片间的条状控制点、相机框标点和相机的焦距,来进行内定向。
(2) 外定向(Exterior Orientation)——外定向将把航片或者卫片上的地物点同实际已知的地面位置(地理坐标)和高程联系起来。通过选取地面控制点,输入相应的地理坐标,来进行外定向。
(3) 使用数字高程模型(DEM)进行正射校正——这一步将对航片和卫片进行真正的正射校正。校正过程中将使用定向文件、卫星位置参数,以及共线方程(collinearity equations)。共线方程是由以上两步,并利用数字高程模型(DEM)共同建立生成的。
表1.1 练习数据情况
文件 |
说明 |
spot_pan.tif |
丢失DIM文件的SPOT4全色影像 |
Dem.img(以及.hdr) |
DEM数据 |
NAPP_2m-ortho.tif |
参考DOM图像,2米分辨率的航空影像 |
2. 详细操作步骤
-
ENVI 5.x:
Toolbox/Geometric Correction/Orthorectification/Build RPCs -
ENVI Classic
: Map > Build RPCs
2.1 打开数据
(1) 打开输入文件。菜单File > Open,选择影像文件"06.自定义RPC文件图像正射校正\数据\spot4pan\spot_pan.tif";
(2) 在文件上右键选择View MetaData,可以看到SPOT全色影像的不包含RPC信息,如下图所示;
(3) 打开DEM数据。菜单File > Open,选择影像文件"06.自定义RPC文件图像正射校正\数据\spot4pan\Dem.img";
图2.1 查看SPOT全色影像的元数据
2.2 设置相机参数(内定向)
(1) 选择工具Build RPCs,路径为Toolbox/Geometric Correction/Orthorectification/Build RPCs;
(2) 在弹出对话框中选择输入文件,即spot_pan.tif,点击OK;
(3) 在Build RPCs面板根据需要设置相机参数。在本例中,选择Type为Pushbroom Sensor,其他参数设置如下图所示。参数含义详细介绍如下表所示。
图2.2 相机参数设置结果
表2.1 相机参数介绍
参数 |
含义 |
介绍 |
Type |
相机类型 |
ENVI支持四种相机类型。 |
Focal Length(mm) |
相机或传感器焦距 |
常见相机和传感器焦距参数见下表。 |
Principal Point x0(mm) |
投影中心点x坐标 |
通常情况下设置为[0.0, 0.0],即投影中心点位于图像中心。实验室校准报告一般包含此参数。 |
Principal Point y0(mm) |
投影中心点y坐标 |
|
X Pixel Size(mm) |
CCD的X像素大小 |
常见相机和传感器的像素大小见下表。 |
Y Pixel Size(mm) |
CCD的Y像素大小 |
|
Incidence Angle Along Track |
沿轨道方向入射角 |
只对Pushbroom Sensor设置。可在ENVI帮助中获取常见传感器的参数,如ASTER、Quickbird、SPOT、WorldView等。 |
Incidence Angle Across Track |
垂直轨道方向入射角 |
|
Sensor Line Along Axis |
传感器前进方向轴 |
可选为X或Y轴方向。 |
Polynomial Orders |
多项式系数 |
根据需要选择。0表示整幅图像参数固定;1表示这些参数与y坐标有线性关系;2表示使用二次多项式进行建模。 |
传感器 |
Focal Length (mm) |
Image Pixel Size (mm) |
ADS40 |
62.77 |
(0.0065, 0.0065) |
ALOS AVNIR-2 |
800.0 |
(0.0115, 0.0115) |
ALOS PRISM |
1939.0 |
(0.007 cross-track, 0.0055 along-track) |
ASTER |
329.0 (Bands 1, 2, 3N) 376.3 (Band 3B) |
(0.007, 0.007) Bands 1, 2, 3N, 3B |
EROS-A1 |
3500 |
(0.013, 0.013) |
FORMOSAT-2 |
2896 |
(0.0065, 0.0065) Pan |
IKONOS-2 |
10000 |
(0.012, 0.012) Pan |
IRS-1C |
982 |
(0.007, 0.007) Pan |
IRS-1D |
974.8 |
(0.007, 0.007) Pan |
KOMPSAT-2 |
900 Pan |
(0.013, 0.013) |
Kodak DCS420 |
28 |
(0.009, 0.009) |
MOMS-02 |
660 |
(0.01, 0.01) |
QuickBird |
8836.2 |
(0.013745, 0.013745) |
SPOT-1 ~4 |
1082 |
(0.013, 0.013) Pan |
SPOT-5 HRS |
580 |
(0.0065, 0.0065) Pan |
STARLABO TLS |
60 |
(0.007, 0.007) |
Vexcel UltraCamD |
101.4 |
(0.009, 0.009) Pan |
Z/I Imaging DMC |
120 |
(0.012, 0.012) |
2.3 外定向
注:如果已有现成的ENVI控制点文件(.pts),可选择Restore GCPs from ASCII File…。
(2) 在弹出的Exterior Orientation GCPs对话框中进行控制点的输入。此步骤与图像正射校正中控制点的选择方式一样,这里不再赘述;
图2.3 设置GCPs投影坐标系
(3) 这里我们使用已有的控制点文件。在Exterior Orientation GCPs面板打开菜单File > Restore GCPs from ASCII…,选择文件"\数据\spot4pan\GCP.pts",点击OK将控制点导入到此面板,结果如下图所示。
图2.4 导入的GCPs信息
(4) 在Exterior Orientation GCPs面板,选择Options > Export GCPs to Build RPCs。计算得到外方位元素,如下图所示。
图2.5 计算得到的外方位元素
(5) 在Build RPCs面板中,点击OK,按照默认生成的Minimum Elevation 和Maximum Elevation即可。生成的RPC信息会自动保存在图像的头文件中,在ENVI中可以通过View MetaData查看RPC info,如下图所示。
注:如果构建RPC后没有自动打开数据,需要重新打开即可。
图2.6 构建的RPC信息
2.4 正射校正
(1) 打开正射校正流程工具。Toolbox/Geometric Correction/Orthorectification/RPC Orthorectification Workflow。
(2) 在工具面板选择输入文件,Input File为待校正文件("spot_pan.tif"),DEM File为正射校正用到的DEM数据,这里选择"Dem.img",然后点击Next进入下一步;
(3) 在PRC Refinement页面进行参数的设置和控制点的输入。本次操作不使用控制点,直接切换到Advanced选项卡(如下图所示),设置输出像元大小Output Pixel Size为10.0米,其他参数默认;然后切换到Export选项卡,设置输出路径,点击Finish即可进行正射校正。
注:在参数和控制点设置完毕后,可以点击面板左下角的Preview进行正射校正结果的预览,有助于修改参数和控制点。
图2.7 Advanced选项卡参数设定
(4) 查看最终结果如下图所示。左图为正射校正结果,右图为含有RPC信息的原始图像。
图2.8 正射校正结果
教程下载:http://pan.baidu.com/s/1c0eWvAg
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)