USGS-ISIS处理LROC-NAC(EDR)数据,添加地理投影,转换为.tif格式

目录

1.LROC-NAC数据下载

2.利用ISIS处理LROC-NAC(EDR)数据

2.1 将NAC-EDR转换为ISIS的cube格式

2.2 附加相机位置信息

2.3 辐射校正

2.4 回波校正

2.5 光度校正(可选)

2.6 创建一个地图文件mosaic.map

2.7 地图投影

2.8 镶嵌

2.9 配准(可选)

3.利用GDAL转换为地理参考格式(.tif)

参考资料


1.LROC-NAC数据下载

数据介绍:Lunar Reconnaissance Orbiter Camera (LROC) Narrow Angle Cameras (NACs)——月球轨道窄角相机,是月球勘测轨道器(LRO)上的一对高分辨率推扫式(pushbroom)相机。两台相机(NAC-Left,NAC-Right)略有重叠地平行扫描月面,并同时获取图像。典型的LROC NAC图像的像素分辨率在0.5-2.0 m/px之间,部分图像的空间分辨率可达0.25-0.3 m/px,是目前分辨率最高的月球影像数据集。一个典型的NAC成对图像大约有10,000个像素宽(东西向)和52,000个像素长(南北向),对应的正常覆盖范围大小为5x26公里到20x100公里左右。NAC数据集由NASA's Planetary Data System(PDS)提供,可供公众下载。

数据下载网址

注意:获取的数据为.IMG格式,为了读取和提取图像的地理信息,需要将其转换为(.geotiff or .gtif)格式,该数据一般包括:EDR/CDR/RDR,我们下载EDR数据,CDR数据的处理比EDR更复杂。

  1. EDR:未经过处理的原始NAC数据;
  2. CDR:经过光度校正但无地理投影的NAC数据;
  3. RDR:经过几何校正和地理投影的NAC数据

打开第一个网址后如图所示,可根据NAC的(轨道号、相机角度、入射角和发射角、分辨率和图像ID)查询数据,Product ID(eg.M1172873803LE,M1172873803RE)下载对应的EDR数据。

2.利用ISIS处理LROC-NAC(EDR)数据

我们使用美国地质调查局United States Geological Survey (USGS)开发的成像仪和光谱仪集成软件Integrated Software for Imagers and Spectrometers (ISIS)处理数据。

ISIS的下载安装参考:深空探测处理软件USGS-ISIS的下载安装_qq_31721595的博客-CSDN博客

2.1 将NAC-EDR转换为ISIS的cube格式

(1)首先找到你所下载的数据文件的位置,然后打开终端,利用conda进入ISIS,如图:

(2)将M1172873803LE.IMG,M1172873803RE.IMG转换为ISIS的cube格式,命令如下:

lronac2isis from=M1172873803LE.IMG to=M1172873803L.raw.cub

2.2 附加相机位置信息

ISIS使用Navigation and Ancillary Information Facility SPICE system在观测过程中确定相机位置,以便将图像正确投影到地面上。该步只要在光度校正前执行即可,开始时执行此步骤便于立即查询图像的几何信息,或在进行额外处理前确定是否有所需要的kernels可用。命令如下:

spiceinit from=M1172873803L.raw.cub spksmithed=true web=true
spiceinit from=M1172873803R.raw.cub spksmithed=true web=true

对M1172873803R做同样处理,如图:

2.3 辐射校正

lronaccal from=M1172873803L.raw.cub to=M1172873803L.cal.cub
lronaccal from=M1172873803R.raw.cub to=M1172873803R.cal.cub

2.4 回波校正

lronacecho from=M1172873803L.cal.cub to=M1172873803L.echo.cub
lronacecho from=M1172873803R.cal.cub to=M1172873803R.echo.cub

注:回波校正后会生成伪影,利用trim去除。

如果对图像求和(在EDR标签中,查找“CROSSTRACK_SUMMING = 2”,或者检查图像宽度是否为2532像素),将这些数字除以2:修剪量应该是23和13 :

NAC-L:

trim from=M1172873803L.echo.cub to=M1172873803L.tr.cub left=46 right=26

NAC-R:

trim from=M1172873803R.echo.cub to=M1172873803R.tr.cub left=26 right=46

2.5 光度校正(可选)

这一步不是必须的

photomet from=M1172873803L.tr.cub to=M1172873803L.pho.cub frompvl=basicpho.pvl
photomet from=M1172873803R.tr.cub to=M1172873803R.pho.cub frompvl=basicpho.pvl

不过,若要进行光度校正首先需要新建一个basicpho.pvl文件,该文件内容为:

Object = NormalizationModel
	Group = Algorithm
 		Name = Mixed
 		Incmat=87.0
 		Albedo=0.05
 		Incref=0.0
 		Thresh=10E30
 	EndGroup
EndObject
Object = PhotometricModel
 	Group = Algorithm
 		Name = HapkeHen
 		Wh=0.278906221
 		Hh=0.0438
 		B0=1.0
 		Theta=10.0
 		HG1=-0.229315607
 		HG2=0.0
 	EndGroup
EndObject

2.6 创建一个地图文件mosaic.map

首先将所有想要组合成一个mosaic的图像的路径放入自建的文本文件"mosaic_level_1.lis"中,如图:

然后,利用mosrange命令 生成地图文件。此外,如果知道感兴趣区域的确切边界或中心点,还可用maptemplate,但这里用的mosrange命令,使用的是等矩形投影equirectangular,若纬度在70°以上或靠近极点的区域,利用polar stereographic。

注:因为所有发布的LRO产品使用的都是0-360的经度值,而ESRI程序(如ArcMap)经度值在-180-180,所以若要在ArcMap中使用地图投影产品,还需在后面添加命令,londom=180。

mosrange fromlist=mosaic_level_1.lis to=mosaic.map projection=equirectangular londom=180

2.7 地图投影

cam2map from=M1172873803L.pho.cub to=M1172873803L.map.cub map=mosaic.map warpalgorithm=forwardpatch patchsize=50
cam2map from=M1172873803R.pho.cub to=M1172873803R.map.cub map=mosaic.map warpalgorithm=forwardpatch patchsize=50

2.8 镶嵌

ls M1172873803?.map.cub > M1172873803.lis

automos fromlist=M1172873803.lis mos=M1172873803.mosaic.cub

运行完第一句命令后,生成M1172873803.lis文件,如图:

然后运行第二条命令,但是报错了,目前还不清楚是什么原因,如图: 

但我们可以将得到的 M1172873803L.map.cub 和 M1172873803R.map.cub 放在ArcMap中进行镶嵌,见第3节。

2.9 配准(可选)

有时一对NAC图像可能存在明显的偏移,需要使用corge来对齐两个图像。

map2map from=M1172873803R.map.cub to=M1172873803R.Lbounds.cub map=M1172873803L.map.cub matchmap=true

下一步,首先需要创建nac_pair_align.def文件,内容如下:

Object = AutoRegistration
 	Group = Algorithm
		Name = MaximumCorrelation
 		Tolerance = 0.7
 		SubpixelAccuracy = True
 	End_Group
 	
	Group = PatternChip
 		Samples = 20
 		Lines = 20
 	End_Group

# If you determine that the vertical or horizontal offset is >50 pixels, adjust the SearchChip 
# size to be at least `20+offset*2`, where 20 is the PatternChip size.
 
	Group = SearchChip
 		Samples = 120
 		Lines = 120
 	End_Group
 
	Group = SurfaceModel
 		DistanceTolerance = 1.5
 		WindowSize = 5
 	End_Group
End_Object
End

然后,运行如下命令,会得到 SampleAverage 和 LineAverage,用于下一步translate命令 : 

coreg from=M1172873803R.Lbounds.cub match=M1172873803L.map.cub deffile=nac_pair_align.def

利用translate命令纠正偏移, 将$sampleaverage 和 $lineaverage换为上图corge输出的值,-0.58和-1.13.

translate from=M1172873803R.map.cub to=M1172873803R.map.shifted.cub strans=$sampleaverage ltrans=$lineaverage

然后再对M1172873803L.map.cub、M1172873803R.map.shifted.cub运行2.8中的镶嵌命令,但依然报错,所以我直接跳过2.8、2.9的命令,利用ArcMap拼接影像。

 最后需要的就是这两个数据文件:

3.利用GDAL转换为地理参考格式(.tif)

因为未在虚拟机中安装GDAL,我在本机电脑的Pycharm中利用Python进行转换,前提是也需要安装gdal包,或从osgeo中导入gdal包。

from osgeo import gdal

cubdata = r"D:\Moon_Data\processedData\M1096293859L.map.cub"   # 经上面步骤得到的.cub文件路径
tifdata = r"D:\Moon_Data\processedData\M1096293859L.tif"       # .tif文件路径

gdal.Translate(tifdata, cubdata)

最终得到下图的.tif文件,并在ArcMap中打开它们,可以看到这些.tif图像带有投影信息了: 

  

参考资料

为ISIS处理LROC-NAC的官方资料,上述过程均参考这些资料,详细步骤请参考如下资料!

  1. 链接:https://pan.baidu.com/s/1EwGj3xdbeES6-9LQVmh-2g 
    提取码:6e8i
  2. 链接:https://pan.baidu.com/s/1cyIBdrzbh4wBuKh15gHP9A 
    提取码:o7fz
  • 4
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值