请选择 进入手机版 | 继续访问电脑版

遥感集市论坛

 
登录  立即注册
查看: 2451|回复: 8

[数据预处理] 在ENVI添加了一阶导数和二阶导数功能,供大家分享!

[复制链接]

2

主题

33

帖子

39

积分

RS学酥

Rank: 2

积分
39
发表于 2016-3-26 17:10:38 | 显示全部楼层 |阅读模式

在做光谱曲线分析时常要求光谱的一阶导数和二阶导数,但ENVI中没有现成的功能,需要对ENVI做一个简单的二次开发。

1. 首先需要编写一阶求导和二阶求导的函数,该函数ENVI自带,名称为deriv,在ENVI的文件夹中可以找到,可以不必自己写。然后从论坛上下载两个接口函数:pf_1st_derivative.pro和pf_2nd_derivative.pro。

2. 然后打开ENVI的安装路径...\Exelis\ENVI50\classic\menu,打开文本文件useradd.txt,从第四行开始添加如下代码:{plot} {1st Derivative} {pf_1st_derivative} {type=0}和{plot} {2nd Derivative}{pf_2nd_derivative} {type=0}。作用是在光谱显示窗口的Plot Function菜单下添加两个新的选项。

3. 将两个pro函数添复制到ENVI的安装路径...\Exelis\ENVI50\classic\save_add下。

4. 如要使用这两个函数,必须打开ENVI + IDL 图标。

下面给出接口函数pf_1st_derivative.pro和pf_2nd_derivative.pro的代码:

pf_1st_derivative.pro:

function pf_1st_derivative, x, y, bbl, bbl_list, _extra=_extra
ptr= where (bbl_list eq 1, count)
result = fltarr(n_elements(y))
if (count ge 3) then $
result(ptr) = deriv (x[ptr], y[ptr])
return, result
end

pf_2nd_derivative.pro:

function pf_2nd_derivative, x, y, bbl, bbl_list, _extra=_extra
ptr= where (bbl_list eq 1, count)
result = fltarr(n_elements(y))
if (count ge 3) then $
   result(ptr) = deriv (x[ptr], deriv(x[ptr], y[ptr]))
return, result
end

以上两个pro函数只对光谱窗口内的光谱曲线进行求导,如需对一幅高光谱影像进行求导需要另外写函数,但实际上还是调用deriv 这个内部函数。

以上资源来自:http://hi.baidu.com/jinping_shi/blog/item/aebe674f7393f801b2de05db.html/cmtid/4539e438e2bf57fe3b87cedc


回复

使用道具 举报

0

主题

15

帖子

15

积分

RS学渣

Rank: 1

积分
15
发表于 2017-3-9 15:50:47 | 显示全部楼层
赞一个,有心人啊
回复 支持 反对

使用道具 举报

0

主题

6

帖子

10

积分

RS学渣

Rank: 1

积分
10
发表于 2017-3-14 20:57:40 | 显示全部楼层
希望可以用
回复 支持 反对

使用道具 举报

0

主题

9

帖子

9

积分

RS学渣

Rank: 1

积分
9
发表于 2017-3-16 09:53:22 | 显示全部楼层
看起来很不错的样子
回复 支持 反对

使用道具 举报

0

主题

9

帖子

9

积分

RS学渣

Rank: 1

积分
9
发表于 2017-3-16 10:01:06 | 显示全部楼层
第一步,这个接口函数去哪里下载?需要把代码复制 写出来吗?
回复 支持 反对

使用道具 举报

5

主题

337

帖子

370

积分

RS学魔

Rank: 10Rank: 10Rank: 10

积分
370
发表于 2017-3-16 19:00:22 | 显示全部楼层
看起来很不错,学习了
回复 支持 反对

使用道具 举报

8

主题

14

帖子

38

积分

RS学酥

Rank: 2

积分
38
发表于 2017-7-22 14:24:27 | 显示全部楼层
Mark下~~~谢谢分享
回复 支持 反对

使用道具 举报

0

主题

9

帖子

9

积分

RS学渣

Rank: 1

积分
9
发表于 2017-8-8 10:08:41 | 显示全部楼层
这下对于写论文有帮助了
回复 支持 反对

使用道具 举报

0

主题

34

帖子

34

积分

RS学酥

Rank: 2

积分
34
发表于 2017-12-19 10:11:50 | 显示全部楼层
谢谢楼主分享!
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

27 人签到
将意见发给我们
  • 通过email将您的想法和建议发给我们

    编辑部:bbs@rscloudmart.com

联系我们
  • 论坛官方QQ群:128651389

    论坛客服QQ:2739549450

遥感集市服务热线
  • 400-674-7498

QQ|小黑屋|遥感集市论坛 ( 粤ICP备12003192号-2

GMT+8, 2018-7-19 21:41 , Processed in 0.114379 second(s), 31 queries, Gzip On.

Powered by Discuz! X3.1 Copyright
© 2001-2013 Comsenz Inc.    All Rights Reserved.

快速回复 返回顶部 返回列表