erdas正射校正、数据融合、影像镶嵌_erdas imagine制作dtm和dom-程序员宅基地

技术标签: 遥感  

在几个传统影像处理软件中,erdas的处理速度往往是最快的(比起ENVI、argis),而且img格式稳定,不易变化,个人使用首推erdas,当然大规模生产的话还是任务订单式的GXL好,它在批处理的路上走得更远,以web方式提交任务,以集群方式处理数据,高并发的处理能力,估计很多传统做影像处理的人要失业,扯远了。

下面是望神州公司的一个erdas操作教程,本人无意抄袭,只想给正在用ERDAS的人分享一下操作流程,如有侵犯,即刻删除。

一  概述.

二 正射纠正

    1. 相关概念..
    2. RapidEye 影像正射纠正
      1. 使用核心模块.
      2. 使用 AutuSync
    3. SPOT 影像正射纠正..

三 RapidEye 波段合成.

    1. 波段合成..
    2. 利用建模工具

四 SPOT 数据融合.

    1. 相关概念
    2. 基于空间建模的 SPOT 融合

五 影像镶嵌

附录 1    ERDAS IMAGINE 中添加西安 80 坐标系

附录 2    在 ERDAS IMAGINE 中批处理波段合成的详细步骤

附录 3    怎样批处理一个空间模型.

一  概述

 根据“2010 年全国土地利用变更调查监测与核查”项目的需要,为了得到全国的正射影像图(DOM),本文以 RapidEye 和 SPOT5 数据为例,利用 ERDASIMAGINE2010,详细介绍了该操作流程。主要步骤分为:

正射校正

波段合成

数据融合

影像镶嵌

基本流程如下图 1 和图 2:

 
 

图1  使用RapidEye制作DOM的基本流程

图2 使用SPOT制作DOM的基本流程

二 正射纠正

2.1         相关概念

纠正的原因

遥感图像在成像时,由于成像投影方式、传感器外方位元素变化、传感介质的不均匀、地球曲率、地形起伏、地球旋转等因素的影响,使获得的遥感图像相对于地表目标存在一定的几何变形,图像上的几何图形与该物体在所选定的地图投影中的几何图形产生差异,产生了几何形状或位置的失真。主要表现为位移、旋转、缩放、仿射、弯曲和更高阶的歪曲。

消除这种差异的过程称为几何校正。

纠正的目的

借助于地面控制资料及 DEM,将数字图像投影到平面上,使其符合正射投影要求。

IMAGINE AutoSync

由于 IMAGINE AutoSync 支持所有核心模块的纠正模型,并具有自动采点及高精度等特点,可以使正射纠正工作量大大降低,提高工作效率。

本文分别介绍使用核心模块及 AutoSync 模块进行正射纠正。

2.2  RapidEye 影像正射纠正

注:因每个波段操作过程类似,本文仅说明一个波段的纠正过程,其余波段可采用类似方式进行。

2.2.1  使用核心模块

1、启动几何纠正模块

⑴ 打开待纠正的影像如 RapidEye 第一波段数据,,点击

Menu—Open—Raster Layer 或在 Viewer 中点击右键—Open

Raster Layer…,打开 Select Images To Open 对话框,设置 Files of type 为 NITF 2.x,选中 1 个波段文件,点击 OK 打开。

⑵ 点击 Panchromatic 选项卡,在 Transform&Orthocorrect 标签组中点击

Control Points 图标。

⑶ 在打开的选择纠正模型对话框中选择 NITF RPC 模型,点击 OK 继续。

 

 
 

⑷ 在弹出的选择 GCP 来源对话框中选择 Image Layer(New Viewer)

点击 OK 继续。

⑸ 在弹出的文件选择对话框中选中参考影像,点击 OK。

 
 

弹出参考影像的投影信息,查看即可,点击 OK 继续。

⑹ 在弹出的 NITF RPC Model 属性对话框中设置多项式次数为 2, 设置

Elevation Source 为 File,打开 DEM 数据,点击 Apply 应用;

点击 Projection 选项卡,查看输出影像投影,点击 Close 关闭。

 
 


出现了几何纠正界面,工具栏中提供了缩放漫游按钮,可以根据需要使用, 也可使用鼠标滚轮进行缩放漫游。

每个数据视窗都包括主窗口、全图窗口、放大窗口三个窗口,底部的列表显示所采集的 GCPs 的信息。

2、采集地面控制点

注:GCP 一般选择在两幅影像中都易识别的地物,如道路交叉点等,GCP 要尽量均匀分布。

⑴ 在左图中拖放链接框寻找明显的地物点,并缩放到合适大小;

⑵ 点图标,采集 GCP #1;

 

 

 
 


点击完之后,有图会根据模型自动预测并添加一个 GCP,但一般不是非常准确,我们可以用鼠标或者键盘上的光标进行微调,使其放置在正确的位置;

采集完之后,GCP 数据列表中就会出现 GCP #1 的信息,我们可以选中第一行 GCP #1,点击 Color 修改其颜色,以方便我们识别。

⑶ 重复上述操作,采集其他的 GCPs,为了保证精度,一般采集更多的控制点,使其在全图均匀分布。

在采点中,要注意保存操作。在 File 中分别保存 Input 和 Reference,第一次保存使用 Save Input/Reference As,若之前保存过直接点击 Save

Input/Reference 即可。如果之前保存过 GCC 文件,也可通过 Load Input 和 Load

Reference 载入。

⑷ 由于我们在前面设置多项式次数为 2,采集完第 7 个控制点后,点击工具栏的统计图标即可计算误差,GCP 列表中 RMS Error 会显示每个点的误差,

 

在状态栏可以看到控制点的总体误差。

 

 
 

 

 

 

 

 

⑸ 几何精纠正要求 GCP 总体误差一般平坦区域要小于 1,山区小于 2。如果误差较大,需要进行修改,删除点或增加新的控制点降低误差。

3、影像重采样

 
 


我们采集的点的数量、分布、精度都满足要求后,就可以进行影像的重采样工作。在工具栏点击影像重采图标,打开影像重采样对话框。

设置输出文件名和路径,这里设置为 rapideye_band1.img;

选择重采样方法(Resample Method)设为最近邻法(Nearest Neighbor); 可以设置输出像元大小(Output Cell Sizes),比如这里都设置为 5(一般与原

数据像元大小一致) ;

勾选统计时忽略零值。点击 OK 执行重采样。

4、保存几何纠正模型

点击关闭几何纠正界面,会提示是否保存几何纠正模型

点击是(Y)可以将几何纠正模型保存为 gms 文件,以备以后使用。如不需要, 点击否即可。

5、完成后可在视图窗口中打开查看结果。

 
 

 

 

 

 

 

 

 

 

 

也可以进行局部放大,并使用卷帘工查看纠正结果和参考影像匹配 的是否良好。

 

2.2.2        使用 AutuSync

RapidEye 1B 数据格式为 NITF,在 ERDAS IMAGINE 2010 中可以采用NITF RPC 模型进行纠正。由于RapidEye 1B 数据的每个波段均具有单独的RPC, 我们这里采用逐波段纠正的方法进行。

建立新的 IMAGINE AutoSync 工程

1、在 ERDAS IMAGINE 新界面上,点击Toolbox

标签,点击 AutoSync Workstation 下拉菜单。

2、从 IMAGINE AutoSync 下拉菜单中选择 AutoSync

Workstation。打开 IMAGINE AutoSync Workstation Startup 对话框。

 
 

 

 

 

 

 

 

3、在 IMAGINE AutoSync Workstation Startup 对话框中选择 Create a new project,点击 OK。

打开 Create New Project 对话框。

 

这里输入工程名

点击打开

Resample Setting

点击这里选择地理参考

                                       点击这里选择重采样Resample

这里输入摘要报告的名字

4、在 Create New Project 对话框中,选择 Georeference 工作流程。

5、在 Project File (*.lap) 字段中,点击文件选择图,输入工程文件名。

6、在 Create New Project 对话框中,选择 Resample 几何校正方法。

7、点击 Resample Settings...按钮,打开 Resample Settings 对话框。

点击接受Resample settings

 

确定选择Cubic Convolution

8、在 Resample Settings 对话框中,接受默认设置,如果需要设置输出像元大小可以点击 Sepcified Below 进行修改,选择 Cubic Convolution 重采样方法,勾选输出忽略零值。

9、在 Resample Settings 对话框中点击 OK。

10、在 Create New Project 对话框中,在 Default Output Directory:(*)字段中,点击文件选择器图 选择要保存的默认输出目录。

11、在 Default Output File Name Suffix 字段中,键入输出文件名的后缀, 或者保持默认值_output。

12、在 Create New Project 对话框中,确定选择 Generate Summary Report 检查框。在 Project File 字段中,默认的工程的名字作为摘要报告的名字,但是也可以点击文件选择器图去设置一个不同的名字和路径。

AutoSync 界面

菜单条 工程浏览

 

浏览窗口

GCP 工具条

CellArray

状态栏

加载图像

1、在 IMAGINE AutoSync 工具条上,点击打开输入图像图,或者从 菜单条上选择 File -> Add Images -> Input Images...,或者在 Project Explorer

Tree View 中输入影像文件夹上右键,选择 Add Input Image...。

打开 Select Images To Open 对话框,设置 Files of type 为 NITF 2.x,选中

1 个波段文件,点击 OK 将其加载进 AutoSync。

2、在 IMAGINE AutoSync 工具条上,点击打开参考图像图标    ,或者从 菜单条上选择 File -> Add Images ->Set Reference Images...,或者在 Project Explorer Tree View 中参考影像文件夹上右键,选择 Set Reference Image...。

注:一个工程只能包含一个参考影像。

 

 
 


打开 Select Images To Open 对话框,设置 Files of type 为 img,选中参考影像,点击 OK 将其加载进 AutoSync。

这时第一幅待纠正影像会显示在左边窗口,参考影像会显示在右边窗口。

 

 

设置模型及投影参数

 

       
   
 


1、在 IMAGINE AutoSync 工具条上,点击图,打开参数设置对话框, 点击 Geometric Model,在 output geometric model type 中选择 Specific Sensor Model,在弹出的 Set Geometric Model 中选择 NITF RPC,点击 OK。

2、在弹出的 NITF RPC Model 属性对话框中设置多项式次数为 2, 设置

Elevation Source 为 File,打开 DEM 数据,点击 Apply 应用,点击 Close 关闭。

 

 
 

 

 

 

 

 

 

 

3、点击 Projection 选项卡,设置输出影像投影为 Same as Reference Image。

 

 
 

 

 

 

 

 

 

 

4、点击 OK 关闭。

手动采集三个控制点

 

       
   
 


1、在 GCP 工具条上,点击建立 GCP 图,分别在两幅影像中点击, 采集第一个控制点。

2、在 GCP 工具条上,点击自动 GCP 点关,在待纠正影像中点击一下,右边参考影像将自动生成一个接近的点,移动到正确的位置。

采集第二个控制点

 

       
   

 

 

 

 

 

 

采集第三个控制点

 

       
   

 

 

 

 

 

 

运行 APM 及调整参数

在 IMAGINE AutoSync 工具条上,点击运行 APM 图

在工作站下面的状态条查看 RMSE 和 Error Standard Deviation 结果,APM 点在 CellArray 上生成排列,并且在输入和参考影像窗口中显示。

 

 
 


如果点精度、数量或者分布不满足要求,可以点击图 ,打开参数设置 对话框,在 APM Strategy 选项卡中进行调整,可以参考如下策略:

预览输出影像

运行 APM 后,可以预览输出影像,在重采样或者校准之前,确定对结果满

意。在 Project Explorer Tree View 中的输入影像上右键选择 Preview Output。在 Viewer 中,显示输出影像。

改善输出影像结果

如果预览这个输出结果,这个影像扭曲,显示黑色影像或者产生其他不可接受的输出,最可能的原因是由于不正确的 APM 同名点造成的。

如果对这个结果不满意,在重采样之前,应该删除错误同名点。例如要删除误差大于 2.0 的点,在 GCP 工具条上,在 error threshold 文本框中,字段的右边输入或者选择 2,点击 Select GCPs with Error Threshold 图

在 CellArray 中,误差高于 2 的结点被高度显示,点击驱动图,点击

CellArray 中被选择的点,在 Viewers 中的点将会在盒中高亮显示。当发现一个很大误差的点时,点击删除地面控制点图 ,这个选择的点从窗口和 CellArray 中删除。

重复上述步骤改善点误差,当误差满足要求时可再次预览查看。输出影像重采样

重采样是对纠正的影像计算文件值和建立输出文件的过程。

 
 


在 IMAGINE AutoSync 工具条上,点击图,打开参数设置对话框,点 击 Output 选项卡,查看输出参数是否正确,点击 OK 关闭。

在 IMAGINE AutoSync 工具条上,点击运行重采样图

重采样的输出影像在 workstation viewer 中显示,输出影像的名字显示在在

Project Explorer 中输出影像文件夹中显示。

对其余波段纠正

新建工程,按照上述步骤操作,完成其他波段的纠正。

2.3         SPOT 影像正射纠正

SPOT5 1A 级数据格式为 TIFF,在 ERDAS IMAGINE 2010 中可以采用

SPOT5 - Orbital Pushbroom 模型进行纠正。分别对 2.5m 及 10m 数据进行纠正。具体操作步骤与 RapidEye 类似,只是在模型选择时选择 SPOT5 - Orbital

       
   
 


Pushbroom。

三 RapidEye 波段合成

 

RapidEye 正射纠正的结果是单独的波段文件,要通过波段合成使其合并为一个文件,方便后续融合、镶嵌及解译工作使用。同时为了充分显示真实环境信息,一般会采用假彩色合成,我们在波段合成的同时可以将影像中 RGB 顺序直接进行组合,或者通过某些波段间的运算,获得更佳的色彩效果,使后续工作更佳方便。

3.1     波段合成

在 Raster 选项卡中点击 Spectral 图标,在下拉菜单中选择 LayerStack,打开波段合成对话框。

         

按照 band3(红)、band2(绿)、band1(蓝)的顺序逐一选取纠正后的各波段影像,每次打开后点击 Add,添加进来;

输出数据类型一般与输入类型一致,输出选项中选择 union,忽略零值可根据需要选择。

 
 


点击 OK 就可执行波段合成,合成效果如下图:

3.2     利用建模工具

 

直接使用波段合成只能对现有波段进行叠加,有时我们需要对其中某些波段进行运算后在合成,这时可以使用建模工具。

这里采用东方道迩提供的针对 RapidEye 数据的波段合成算法,以获得更符合人类视觉感知的色彩。

 

       
   
 


在 Toolbox 选项卡中点击建模工具图标,选择 Model Maker,打开图形建模窗口。

按照下图所示,添加五个栅格、一个函数,并连接起来构建模型。

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

逐一双击栅格对像模块,输入纠正后的单波段影像(红、绿、蓝、近红色),数据类型选为 Unsigned 16-bit;

 

 

双击函数模块,在对话框中添加如下函数:

STACKLAYERS($n1_2010,( $n2_2010+$n4_2010/3)/2, $n3_2010):代表

 

 
 


了输出 RGB 波段分别为:Band3(红),(Band2(绿)+band5(近红)/3)/2,Band1(蓝),选用这种算法获得的合成效果更加符合地物真实色彩,有利于解译工作。

点击 OK 完成。

在输出栅格模块双击,设置输出参数,点击 OK 完成。

 

 

回到图形建模窗口,点击工具栏中的运行图标   ,执行波段合成。合成效果如下图:

 

四 SPOT 数据融合

 

4.1         相关概念

 

多源遥感影像信息融合是将不同类型传感器获取的同一地区的影像数据进行空间配准,然后采用一定的算法将各影像的优点或互补性有机地结合起来产生新影像的技术。

融合后的影像能更好地解释和描述被感知的对象或环境,能减少或抑制对被感知对象或环境解释中可能存在的多义性、不完全性、不确定性和误差,最大限度地利用各种信息源提供的信息,产生比单一信息源更精确、更完全、更可靠的新影像,突出反映土地利用类型要素信息,提高可判读性,便于综合分析,提高监测精度。

相同季节融合后影像要色调基本一致,不同季节影像色彩应反映当时地类光谱特征;融合影像应无重影、模糊等现象,色彩接近自然;根据波段的光谱范围、地物、地形特征等因素,选择能清晰表现土地利用类型特征和边界的融合算法。

 

4.2         基于空间建模的 SPOT 融合

 

对于 SPOT 数据,可以直接采用 ERDAS IMAGINE 中提供了高通滤波、色彩变换、小波融合或者主成分变换的融合方法。

这里介绍利用视宝公司提供的针对 SPOT 数据的融合算法,在空间建模中实现。

融合算法如下:

 

NewB1 = 2P * B1 / (B1+ B2)                            àBlue

 

NewB2 = 2P * B2 / (B1+ B2)                              àGreen

 

NewB3 = 0.3P + 0.7B3                                        àRed

P 代表全色数据,B1 是绿波段,B2 是红波段,B3 是近红外波段。

为了获取更加符合真实地物的色彩效果,对融合后的数据在做一次伪自然色彩变换,算法如下:

RNC = 0.0*NewB1 +  0.9*NewB2  +  0.1*NewB3  à Red GNC = 0.7*NewB1 + 0.0*NewB2 + 0.3*NewB3 à Green BNC =  1.0*NewB1 +  0.0*NewB2 + 0.0*NewB3       à Blue

NewB1、NewB2、NewB3 代表利用上述融合算法获得的数据。

操作步骤:

 

 
 


在 Toolbox 选项卡中点击建模工具图标,选择 Model Maker,打开图形建模窗口。按照下图所示,添加八个栅格、六个函数,并连接起来构建模型。

双击上面第一个栅格模块,添加全色数据,双击第三个栅格模块,添加多光谱数据,双击第二个栅格模块,设置其为临时文件,数据类型为 float 型;双击第 一 个 函 数 , 在 对 话 框 中 添 加 : $n2_right_hb(1)+$n2_right_hb(2) , 即

B1(绿)+B2()

双击第二行的三个函数模块,在对话框中分别添加如下函数,即融合算法中生成 RGB 的结果:

R: 0.3 * $n1_right_nc1 + 0.7 * $n2_right_hb(3)

 

G: EITHER 0 IF ( $n23_temp == 0.0 ) OR (2*$n1_right_nc1*$n2_right_hb(2)/$n23_temp) OTHERWISE

B: EITHER 0 IF ($n23_temp == 0.0 ) OR (2*$n1_right_nc1*$n2_right_hb(1) / $n23_temp) OTHERWISE

式中 Either OR Otherwise 函数是为了避免 B1+ B2 出现零值。

 

 

 

 

 
 


双击 RGB 链接的三个栅格模块,设置融合结果输出文件名及路径,注意数据类型设为 float,也可设置为临时文件,数据类型设为 float 型;

双击第五个函数模块,在对话框中添加如下函数,即波段合成:

 

STACKLAYERS($n3_memory,$n15_memory,$n16_memory)

双击第七个栅格模块,设置融合结果输出文件名及路径,注意数据类型设为

Unsigned 8-bit(为了减小数据量)。

双击第六个函数模块,在对话框中添加如下函数,即伪自然色转换算法

 

STACKLAYERS((0.9*$n4_merge(2)+0.1*$n4_merge(1)),(0.7*$n4_merge(3)+0.3*$n4

 

_merge(1)), $n4_merge(3))

 

 

双击第八个栅格模块,设置伪彩色合成输出文件名及路径,注意数据类型设为 Unsigned 8-bit。

回到图形建模窗口,点击工具栏中的运行图 ,执行数据融合及伪彩色 合成。

对于数据量很大的情况,可能会出现空间或内存不足等提示,可以将整个模型分成几个小模型,一部分一部分来做。

 

融合效果:

 

 

 

 
 

 

 

 

 

 

 

 

 

 

 

 

 

伪自然色变换效果:

 

 

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

说明:伪自然色彩变换后的数据在色调上可能不能满足制图或其他后续分析需要,可以通过借用 Photoshop 或其他软件来做颜色调整。

另:也可先生成多光谱 10 米数据的自然色彩影像,再将其与全色 2.5 米数据融合,自然色生成可使用 ERDAS 的 Spectral 增强中的 Nature Color 功能来完成。

 

五 影像镶嵌

 

影像镶嵌是将两幅或多幅影像拼在一起,构成一幅整体影像的技术过程。由于影像纠正过程中的误差等造成了同一地面特征在不同影像上有不同的

地面测量坐标;同时由于相邻影像呈现出不同的辐射特征,因此,影像镶嵌时除了要满足在拼接线上相邻影像的细节在几何上一一对接,还要求相邻影像的色调保持一致。

1、启动 MosaicPro

点击 Raster 选项卡,在 Geometry 标签组中点击

Mosaic 图标,在下拉菜单中选择 MosaicPro;或者在

Toolbox 选项卡中找到 Mosaic 打开。

2、加载影像数据

在菜单栏中选择Edit-Add Image,或点击工具栏的图标,打开 Add Image 对话框,一次将需要镶嵌的数据全部选中;点击 Image Area Options 选项卡, 点选 Compute Active Area 选项,可以去除影像背景值,使其不参与影像镶嵌过程,点击 OK 继续。在打开的 MosaicPro 窗口的数据列表中对每幅影像都勾选 Vis.,并点击工具栏中图标或 View 菜单下的 Show Rasters 使其显示。

3、生成与编辑拼接线

点击工具栏中图标;

在弹出的自动生成拼接线对话框中选择 Weighted Seamline 或者 Most Nadir Seamline,前者适合重叠区域地物较复杂的情况,后者适合于地物较单一的情况;基于权重的拼接线还提供了细节控制的一些参数,可根据需要进行设置;

设置完成之后,点击 OK 继续。

 

点击工具栏中的   图标,进行拼接线的编辑,主要原则是:

新时相影像覆盖旧时相影像;无云覆盖有云影像;质量好的覆盖质量差的影像;并且镶嵌线尽量沿线状地物采集,在空旷、色调暗处,如山脊山谷尽量在山谷下采集;镶嵌线不能切割完整地物,如房屋、田块等。

4、设置颜色校正

在打开的直方图匹配设置对话框中将 Matching Method 设为 Overlap Areas, 点击 OK 回到 Color Corrections 对话框,点击 OK 完成颜色校正设置。
点击工具栏中图标,或 Edit 菜单下的 Color Corrections…,弹出颜色校正算法选择对话框中,有五种方法可供选择,要视具体情况进行选用、设置。我们这里选用 Use Histogram Matching,并点击 Set…

5、设置输出参数

点击工具栏中 图标,或 Edit 菜单下的Output Options,弹出输出影像设置对话框,可以根据需要设置输出范围:

可以按照所有输入影像范围输出;按照用户指定 AOI 区域;指定矢量文件范围;Map Series 生

成的文件;USGS 标准分幅数据库;用户自行编辑的分幅 ASCII 文件。通过这些设置能够实现镶嵌、分幅裁切一步到位。

6、预览镶嵌效果
还可以设置输出影像分辨率、数据类型、影像波段,可以根据情况进行更改; 点击 OK 完成设置。

点击工具栏中 图标,在三景影像重叠区域勾绘一个较小的预览区域

(下图白色方框)。

 

                                       

 

点击 Process 菜单中的 Preview Mosaic for Window…运行以预览镶嵌效果, 如果认为结果较好,则可进行下一步,否则需要调整拼接线和颜色校正参数。

7、运行镶嵌

点击工具栏中图标,或 Process 菜单中的 Run Mosaic…,运行镶嵌处理。在弹出的对话框中定义输出文件路径和文件名。

完成后点击关闭 MosaicPro 窗口,提示是否保存 Mosaic File,可以选是将其保存为镶嵌工程文件,以备以后使用。如不需要,选否即可。

 

镶嵌之前:

 

 

镶嵌之后:

 


 

 

附录 1   ERDAS IMAGINE 中添加西安 80 坐标系

 

"IAG 75" {

86 6378140 6356755.2881575

"xian 80" 0 0 0 0 0 0 0

}

如果能得到西安807参数,可以将7

在ERDAS安装目录<IMAGINE_HOME>\etc\中找到spheroid.tab文件,里面保存了椭球体和基准面参数。

注:以2010版为例,一般位于C:\Program Files\ERDAS\ERDAS Desktop 2010\etc,如果安装过补丁,还应修改C:\Program Files\ERDAS\ERDAS Desktop 2010\Fixes\etc下的spheroid.tab。

用文本编辑器进行编辑,依照它的语法就可以任意添加自定义的椭球体和基准面参数。

基本语法为:

“椭球体名称”{

“椭球序号”椭球体长半轴 椭球体短半轴

“基准面名称1” dx1 dy1 dz1 rx1 rz1 ds1

“基准面名称2” dx2 dy2 dz2 rx2 rz2 ds2

……….

}

其中:“基准面名称” dx dy dz rx rz ds中,dx、dy、dz是x、y、z 3个轴相对于WGS84基准点的平移参数,单位为m。rx、ry、rz是x、y、z                                                                                              3个轴相对于

WGS84基准点的旋转参数,单位为rad,Ds是对于WGS84基准点的比例因子。大部分情况下椭球的基准面是基于它本身的,这时假定椭球的中心点是与没

有经过任何平移或旋转的WGS84的基准面相重合,即这时椭球基准面的7个参数均为0。

在spheroid.tab文件末尾加入如下语句即可,假设最后一个椭球体序号为85, 则加入:

参数加入。

保存文件,启动ERDAS。

经过以上的操作IAG75椭球就会出现在ERDAS的椭球体选择列表中。

 


然后在设置投影的时候选择 Custom 标签,根据需要设置中央经线、原点纬度、北偏和东偏。

 

附录 2    在 ERDAS IMAGINE 中批处理波段合成的详细步骤

 

以 CBERS 02B 为例,实现将 5 个波段文件数据合并为一个数据的批处理过程。

 

 
 

 

 

 

       
 
   
 


1.先手动添加一次,将 5 个波段都加进去,并设置好输出文件、数据类型、输出统计是否忽略零值等;点击 Batch 进入批处理设置,选择 Modify commands Manually,点击 Next;

2.在对话框中选择 Variables 选项卡,点击 New 创建 6 个变量(代表 5 个波段文件,1  个输出文件),并修改变量名(可按图示修改,或自己改为易识别的名称),确保五个波段变量的 Type 为 User,点击输出文件变量(这里为 output), 修改 Type 为 Auto,并点击 Set 修改输出文件名。

 

在弹出窗口可以看到,右边有很多关于变量的函数,比较常用的有:

Ø  Name:返回包含后缀名的变量名,如 abc.img

Ø  Root:返回去掉后缀名的变量名,如 abc

 

 
 

 

这里文件名的定义需要包含路径及文件名。

路径:可以自己添加在文件名前,如 D:/Output/,注意使用左斜杠 /

文件名:这里可以使用前面定义的输入变量 band1、band2 、band3、band4 、

band5 中任意一个的 root 或者 name 来定义输出文件名,并可在后面添加字符, 如$(band1.name)$(band1.Root)_layerstack.img

例:比如这里进行波段合成,输入的五个波段文件如下: d:\Data\CBERS\360-49-L20000201954-1.TIF d:\Data\CBERS\360-49-L20000201954-2.TIF d:\Data\CBERS\360-49-L20000201954-3A.TIF d:\Data\CBERS\360-49-L20000201954-4.TIF d:\Data\CBERS\360-49-L20000201954-5.TIF

列举定义的一些 Pattern 及对应结果

d:/output/$(band1.root).img        d:\output\360-49-L20000201954-1.img d:/output/$(band1.name)  d:\output\360-49-L20000201954-1.tif d:/output/$(band1.Root)_test.img d:\output\360-49-L20000201954-1_test.img

设置完之后,点击 OK 返回。

由于这里不具有对文件名更细节操作的函数如提取某些字符等,所以生成的结果只能以某个波段文件的名字为主文件名,这时候对于结果数据可以采用一些重命名软件来进行修改。

3.点击 Commands,我们可以看到一行代码:

modeler -nq $IMAGINE_HOME/etc/models/layermerge.pmdl -meter -state  Union  None 'FLOAT RASTER n1 FILE OLD NEAREST NEIGHBOR AOI NONE EDGE FILL"d:/data/cbers/360-49-l20000201954-1.tif"; FLOAT RASTER n2 FILE OLD NEAREST NEIGHBOR AOI NONE EDGE FILL"d:/data/cbers/360-49-l20000201954-2.tif"; FLOAT RASTER n3 FILE OLD NEAREST NEIGHBOR AOI NONE EDGE FILL"d:/data/cbers/360-49-l20000201954-3a.tif";  FLOAT  RASTER   n4   FILE   OLD NEAREST NEIGHBOR AOI NONE EDGE FILL"d:/data/cbers/360-49-l20000201954-4.tif"; FLOAT     RASTER    n5    FILE    OLD    NEAREST    NEIGHBOR    AOI    NONE   EDGE

FILL"d:/data/cbers/360-49-l20000201954-5.tif"; ' useall Unsigned_8_bit "d:/temp/1.img" 'n1(1),n2(1),n3(1),n4(1),n5(1)'

我们只要将上述加红的部分修改为变量即可, 如下图, 选中引号中的

d:/data/cbers/360-49-l20000201954-1.tif,确定左下角变量为 band1,点击图中所示图标,将其替换为变量 band1。

 

按同样的方法,将上述红色部分全部替换,结果如下:

modeler -nq $IMAGINE_HOME/etc/models/layermerge.pmdl -meter  -state  Union  None 'FLOAT RASTER n1 FILE OLD NEAREST NEIGHBOR AOI NONE EDGE FILL"$(band1)";

 

FLOAT RASTER n2 FILE OLD NEAREST NEIGHBOR AOI NONE EDGE FILL"$(band2)"; FLOAT RASTER n3 FILE OLD NEAREST NEIGHBOR AOI NONE EDGE FILL"$(band3)"; FLOAT RASTER n4 FILE OLD NEAREST NEIGHBOR AOI NONE EDGE FILL"$(band4)"; FLOAT RASTER n5 FILE OLD NEAREST NEIGHBOR AOI NONE EDGE FILL"$(band5)";

' useall Unsigned_8_bit "$(output)" 'n1(1),n2(1),n3(1),n4(1),n5(1)'

点击保存图标,将设置好的批处理参数,保存为 bcf 文件,以备以后调用。

 

 
 


4.点击 Next,设置五个输入波段文件,由于不具备自动检索各文件夹中文件的功能,这里输入数据需手动设置,可以将需要批处理的所有数据分成五个文件夹,分别存放五个波段文件,这样我们就可以通过下图的打开文件图标选择全部需要处理的数据,依次设置 band1、band2、band3、band4、band5 的输入文件。

点击 finish 执行批处理即可

附录 3    怎样批处理一个空间模型

 

Step1 :

创建模型并运行,确定使它能产生一个输出的文件。如果模型产生了一个输出文件,那么就可以产生一个模型脚本。在 Model Maker 里,使用 <Ctrl G> 或选择 Process/Generate Script ,保存到自己指定的路径,并命名,文件的后缀名是“ *.mdl ”。

Step2

在 IMAGINE 文本编辑器 (Tools/Edit Text File) 里或用打开*.mdl 文件。在打开的 .mdl 文件中,看起来是跟下面相似的:

COMMENT "Generated from graphical model: New_Model";

 

#

 

# set cell size for the model

 

#

 

SET CELLSIZE MIN;

 

#

 

# set window for the model

 

#

 

SET WINDOW INTERSECTION;

 

#

 

# set area of interest for the model

 

#

 

SET AOI NONE;

 

#

 

# declarations

 

#

 

Integer RASTER  n1_b1 FILE  OLD  PUBINPUT NEAREST NEIGHBOR AOI NONE

 

"d:/temp/b1.img";

 

Integer RASTER  n2_b2 FILE  OLD  PUBINPUT NEAREST NEIGHBOR AOI NONE

"d:/temp/b2.img";

 

Integer  RASTER  n3_b3 FILE  OLD  PUBINPUT NEAREST NEIGHBOR  AOI NONE

 

"d:/temp/b3.img";

 

Integer  RASTER  n4_b4 FILE  OLD  PUBINPUT NEAREST NEIGHBOR AOI NONE

 

"d:/temp/b4.img";

 

Integer RASTER n6_layerstack FILE NEW PUBOUT USEALL ATHEMATIC 8 BIT UNSIGNED INTEGER "d:/temp/layerstack.img";

#

 

# function definitions

 

#

 

n6_layerstack = STACKLAYERS ( $n1_b1 , ($n2_b2 + $n4_b4 / 3) / 2 , $n3_b3) ; QUIT;

Step3

所引用的目录和文件需要替换。连接所有的字符窜包括引号也将被替换。对于那些整数值只需要用 argument 替换数字部分就可以了。替换如下:

COMMENT "Generated from graphical model: New_Model";

 

#

 

# set cell size for the model

 

#

 

SET CELLSIZE MIN;

 

#

 

# set window for the model

 

#

 

SET WINDOW INTERSECTION;

 

#

 

# set area of interest for the model

 

#

 

SET AOI NONE;

#

# declarations

 

#

 

Integer RASTER  n1_b1 FILE  OLD  PUBINPUT NEAREST NEIGHBOR AOI NONE

 

arg1;

 

Integer  RASTER  n2_b2 FILE  OLD  PUBINPUT NEAREST NEIGHBOR AOI NONE

 

arg2;

 

Integer  RASTER  n3_b3 FILE  OLD  PUBINPUT NEAREST NEIGHBOR  AOI NONE

 

arg3;

 

Integer  RASTER  n4_b4 FILE  OLD  PUBINPUT NEAREST NEIGHBOR AOI NONE

 

arg4;

 

Integer RASTER n6_layerstack FILE NEW PUBOUT USEALL ATHEMATIC 8 BIT UNSIGNED  INTEGER  arg5;

#

 

# function definitions

 

#

 

n6_layerstack = STACKLAYERS ( $n1_b1 , ($n2_b2 + $n4_b4 / 3) / 2 , $n3_b3) ; QUIT;

 

把上述文件修改后进行保存。

Step4

现 在 你 可 以 在    ERDAS   的 主 模 板 上 运 行 这 些 命 令 行 了 :

Session/Commands…。为输出文件指定文件名和路径。

job modeler "d:/layerstack.mdl" -s -m "d:/temp/b1.img" "d:/temp/b2.img" "d:/temp/b3.img" "d:/temp/b4.img" "d:/output.img";

Step5

一旦输入完命令,点击Enter 键,就应该运行模型并产生一个能在 viewer 窗口中打开的文件。这样保证了输入的命令行是正确的,并能得到一个输出文件。如果模型运行正确并能产生输出文件,那么,把命令行粘贴到 IMAGINE 文本编辑器上: Tools/Edit Text Files 。

输入:

modeler "d:/layerstack.mdl" -s -m "d:/temp/b1.img" "d:/temp/b2.img" "d:/temp/b3.img" "d:/temp/b4.img" "d:/output.img"

为了在批处理中使用这些命令行,其实就是删掉了命令行开头的 job,指定

一个路径并另存为后缀名为*.bcf 的文件。

Step6

 

 
 


从 Session  的下拉菜单中载入*.bcf  文件:Session/Open Batch Command File…

Step7

点击“  <back  ” 按钮一次, 回到下面的界面, 选择 Modify  commands

automatically 。这样可以自动产生输出文件,曾加一个文件跟到你输入的文件中,所以你可不必提供所有的输出文件名。

 

 

Step8

点击“ Next> ”按钮两次以察看输入文件的选择。

虽然刚开始只出现一个文件,但是你可以通过下拉增加你所需要增加的文件。从窗口文件目录中选择或通过选择 Select files to add 图标,选定第一个文件并按 shif 键选择最后一个文件(所选择的文件为高亮度显示),把所选的文件加载入到批处理的画板中。

 

 
 

 

Step9

 

 
 

 

选择 Finish 开始运行或选择 Next> 推后运行。运行完后,你可以看到所有输出的文件开头都你指定输出的那部分并随同新的根文件名一起输出。

 

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/lijie45655/article/details/90410503

智能推荐

C#连接OPC C#上位机链接PLC程序源码 1.该程序是通讯方式是CSharp通过OPC方式连接PLC_c#opc通信-程序员宅基地

文章浏览阅读565次。本文主要介绍如何使用C#通过OPC方式连接PLC,并提供了相应的程序和学习资料,以便读者学习和使用。OPC服务器是一种软件,可以将PLC的数据转换为标准的OPC格式,允许其他软件通过标准接口读取或控制PLC的数据。此外,本文还提供了一些学习资料,包括OPC和PLC的基础知识,C#编程语言的教程和实例代码。这些资料可以帮助读者更好地理解和应用本文介绍的程序。1.该程序是通讯方式是CSharp通过OPC方式连接PLC,用这种方式连PLC不用考虑什么种类PLC,只要OPC服务器里有的PLC都可以连。_c#opc通信

Hyper-V内的虚拟机复制粘贴_win10 hyper-v ubuntu18.04 文件拷贝-程序员宅基地

文章浏览阅读1.6w次,点赞3次,收藏10次。实践环境物理机:Windows10教育版,操作系统版本 17763.914虚拟机:Ubuntu18.04.3桌面版在Hyper-V中的刚安装好Ubuntu虚拟机之后,会发现鼠标滑动很不顺畅,也不能向虚拟机中拖拽文件或者复制内容。在VMware中,可以通过安装VMware tools来使物理机和虚拟机之间达到更好的交互。在Hyper-V中,也有这样的工具。这款工具可以完成更好的鼠标交互,我的..._win10 hyper-v ubuntu18.04 文件拷贝

java静态变量初始化多线程,持续更新中_类初始化一个静态属性 为线程池-程序员宅基地

文章浏览阅读156次。前言互联网时代,瞬息万变。一个小小的走错,就有可能落后于别人。我们没办法去预测任何行业、任何职业未来十年会怎么样,因为未来谁都不能确定。只能说只要有互联网存在,程序员依然是个高薪热门行业。只要跟随着时代的脚步,学习新的知识。程序员是不可能会消失的,或者说不可能会没钱赚的。我们经常可以听到很多人说,程序员是一个吃青春饭的行当。因为大多数人认为这是一个需要高强度脑力劳动的工种,而30岁、40岁,甚至50岁的程序员身体机能逐渐弱化,家庭琐事缠身,已经不能再进行这样高强度的工作了。那么,这样的说法是对的么?_类初始化一个静态属性 为线程池

idea 配置maven,其实不用单独下载Maven的。以及设置新项目配置,省略每次创建新项目都要配置一次Maven_安装idea后是不是不需要安装maven了?-程序员宅基地

文章浏览阅读1w次,点赞13次,收藏43次。说来也是惭愧,一直以来,在装环境的时候都会从官网下载Maven。然后再在idea里配置Maven。以为从官网下载的Maven是必须的步骤,直到今天才得知,idea有捆绑的 Maven 我们只需要搞一个配置文件就行了无需再官网下载Maven包以后再在新电脑装环境的时候,只需要下载idea ,网上找一个Maven的配置文件 放到 默认的 包下面就可以了!也省得每次创建项目都要重新配一次Maven了。如果不想每次新建项目都要重新配置Maven,一种方法就是使用默认的配置,另一种方法就是配置 .._安装idea后是不是不需要安装maven了?

奶爸奶妈必看给宝宝摄影大全-程序员宅基地

文章浏览阅读45次。家是我们一生中最重要的地方,小时候,我们在这里哭、在这里笑、在这里学习走路,在这里有我们最真实的时光,用相机把它记下吧。  很多家庭在拍摄孩子时有一个看法,认为儿童摄影团购必须是在风景秀丽的户外,即便是室内那也是像大酒店一样...

构建Docker镜像指南,含实战案例_rocker/r-base镜像-程序员宅基地

文章浏览阅读429次。Dockerfile介绍Dockerfile是构建镜像的指令文件,由一组指令组成,文件中每条指令对应linux中一条命令,在执行构建Docker镜像时,将读取Dockerfile中的指令,根据指令来操作生成指定Docker镜像。Dockerfile结构:主要由基础镜像信息、维护者信息、镜像操作指令、容器启动时执行指令。每行支持一条指令,每条指令可以携带多个参数。注释可以使用#开头。指令说明FROM 镜像 : 指定新的镜像所基于的镜像MAINTAINER 名字 : 说明新镜像的维护(制作)人,留下_rocker/r-base镜像

随便推点

毕设基于微信小程序的小区管理系统的设计ssm毕业设计_ssm基于微信小程序的公寓生活管理系统-程序员宅基地

文章浏览阅读223次。该系统将提供便捷的信息发布、物业报修、社区互动等功能,为小区居民提供更加便利、高效的服务。引言: 随着城市化进程的加速,小区管理成为一个日益重要的任务。因此,设计一个基于微信小程序的小区管理系统成为了一项具有挑战性和重要性的毕设课题。本文将介绍该小区管理系统的设计思路和功能,以期为小区提供更便捷、高效的管理手段。四、总结与展望: 通过本次毕设项目,我们实现了一个基于微信小程序的小区管理系统,为小区居民提供了更加便捷、高效的服务。通过该系统的设计与实现,能够提高小区管理水平,提供更好的居住环境和服务。_ssm基于微信小程序的公寓生活管理系统

如何正确的使用Ubuntu以及安装常用的渗透工具集.-程序员宅基地

文章浏览阅读635次。文章来源i春秋入坑Ubuntu半年多了记得一开始学的时候基本一星期重装三四次=-= 尴尬了 觉得自己差不多可以的时候 就吧Windows10干掉了 c盘装Ubuntu 专心学习. 这里主要来说一下使用Ubuntu的正确姿势Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的开源GNU/Linux操作系统,Ubuntu 是基于DebianGNU/Linux,支..._ubuntu安装攻击工具包

JNI参数传递引用_jni引用byte[]-程序员宅基地

文章浏览阅读335次。需求:C++中将BYTE型数组传递给Java中,考虑到内存释放问题,未采用通过返回值进行数据传递。public class demoClass{public native boolean getData(byte[] tempData);}JNIEXPORT jboolean JNICALL Java_com_core_getData(JNIEnv *env, jobject thisObj, jbyteArray tempData){ //resultsize为s..._jni引用byte[]

三维重建工具——pclpy教程之点云分割_pclpy.pcl.pointcloud.pointxyzi转为numpy-程序员宅基地

文章浏览阅读2.1k次,点赞5次,收藏30次。本教程代码开源:GitHub 欢迎star文章目录一、平面模型分割1. 代码2. 说明3. 运行二、圆柱模型分割1. 代码2. 说明3. 运行三、欧几里得聚类提取1. 代码2. 说明3. 运行四、区域生长分割1. 代码2. 说明3. 运行五、基于最小切割的分割1. 代码2. 说明3. 运行六、使用 ProgressiveMorphologicalFilter 分割地面1. 代码2. 说明3. 运行一、平面模型分割在本教程中,我们将学习如何对一组点进行简单的平面分割,即找到支持平面模型的点云中的所有._pclpy.pcl.pointcloud.pointxyzi转为numpy

以NFS启动方式构建arm-linux仿真运行环境-程序员宅基地

文章浏览阅读141次。一 其实在 skyeye 上移植 arm-linux 并非难事,网上也有不少资料, 只是大都遗漏细节, 以致细微之处卡壳,所以本文力求详实清析, 希望能对大家有点用处。本文旨在将 arm-linux 在 skyeye 上搭建起来,并在 arm-linux 上能成功 mount NFS 为目标, 最终我们能在 arm-linux 里运行我们自己的应用程序. 二 安装 Sky..._nfs启动 arm

攻防世界 Pwn 进阶 第二页_pwn snprintf-程序员宅基地

文章浏览阅读598次,点赞2次,收藏5次。00为了形成一个体系,想将前面学过的一些东西都拉来放在一起总结总结,方便学习,方便记忆。攻防世界 Pwn 新手攻防世界 Pwn 进阶 第一页01 4-ReeHY-main-100超详细的wp1超详细的wp203 format2栈迁移的两种作用之一:栈溢出太小,进行栈迁移从而能够写入更多shellcode,进行更多操作。栈迁移一篇搞定有个陌生的函数。C 库函数 void *memcpy(void *str1, const void *str2, size_t n) 从存储区 str2 _pwn snprintf

推荐文章

热门文章

相关标签