利用IDL的REFORM函数给数组降维数

在处理图像的时候,会遇到这么一种情况,假设我有一个三维数组A,A=Array[3,1440,720],这是一个三维数组,相当于3个1440*720的二维数组叠加在一起。

如果我现在只需要其中的某一维的数据,并且转换成一个二维数组,这时候就需要REFORM函数了。

函数声明

Result = REFORM( Array, D1[, ..., D8] [, /OVERWRITE] )

使用举例

; a is a 3-dimensional array:
a = INTARR(10,10,10)

; Extract a "slice" from a:
b = a[5,*,*]

这种情况下,我想很多人认为第二个就是一个二维数组了,其实不然,我们可以help一下

; Use HELP to show what REFORM does:
HELP, b, REFORM(b)

结果是

B            INT = Array[1, 10, 10]

<expression> INT = Array[10, 10]
IDL另外一个采样的函数REBIN IDL遥感应用入门(15):使用IDL生成动画(XINTERANIMATE)

作者:,GIS爱好者。
分享本文,请您带上本文链接
分享到:

发表评论