【问题标题】:HOW to get the same ENVI result in IDL using CONVOL function?如何使用 CONVOL 函数在 IDL 中获得相同的 ENVI 结果?
【发布时间】:2015-02-19 05:42:17
【问题描述】:

我正在使用 ENVI 进行卷积,

设置中位数,内核大小为 5,图像加回值为 0%

在ENVI中的效果真的很好,

当我尝试在 IDL 中使用 CONVOL 做同样的事情时,我无法让它以同样的方式工作,

这是我的代码:

fsize = 5
ext = [fsize, fsize]
kernel = REPLICATE(1, ext[0], ext[1])
B = BYTE(CONVOL(B, kernel, INVALID=255, MISSING=255, /CENTER, /EDGE_WRAP))

谁能告诉我怎么了?

【问题讨论】:

  • 你试过反转你的内核吗? IDL 在计算卷积之前不会这样做。因此,如果您查看他们的documentation,您会注意到他们建议在输入时使用内核的反向。

标签: idl-programming-language envi


【解决方案1】:

我认为您不想使用 CONVOL。你实际上是在做一个中值过滤,所以你应该使用 MEDIAN 函数:

result = MEDIAN(array, 5)

【讨论】:

    猜你喜欢
    • 2021-02-27
    • 1970-01-01
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 2015-04-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多